emdash 0.36.0 → 0.38.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{activation-K0kGBWuJ.mjs → activation-DyNTe_Tl.mjs} +3 -3
- package/dist/{activation-K0kGBWuJ.mjs.map → activation-DyNTe_Tl.mjs.map} +1 -1
- package/dist/{adapters-CzL3H752.d.mts → adapters-DCEgOBXi.d.mts} +4 -2
- package/dist/{adapters-CzL3H752.d.mts.map → adapters-DCEgOBXi.d.mts.map} +1 -1
- package/dist/{allowed-origins-maylGaHv.mjs → allowed-origins-GFUVavRj.mjs} +2 -2
- package/dist/{allowed-origins-maylGaHv.mjs.map → allowed-origins-GFUVavRj.mjs.map} +1 -1
- package/dist/api/route-utils.d.mts +3 -3
- package/dist/api/route-utils.mjs +25 -24
- package/dist/api/route-utils.mjs.map +1 -1
- package/dist/api/schemas/index.d.mts +2 -2
- package/dist/api/schemas/index.mjs +5 -5
- package/dist/api-BvxJmnFY.mjs +10094 -0
- package/dist/api-BvxJmnFY.mjs.map +1 -0
- package/dist/{api-tokens-9YrrCoE6.mjs → api-tokens-xpGqMHrC.mjs} +2 -2
- package/dist/{api-tokens-9YrrCoE6.mjs.map → api-tokens-xpGqMHrC.mjs.map} +1 -1
- package/dist/{apply-B_VMpJ2P.mjs → apply-DLmM3R7f.mjs} +26 -22
- package/dist/apply-DLmM3R7f.mjs.map +1 -0
- package/dist/artifact-fetch-P2JXVwOq.mjs +972 -0
- package/dist/artifact-fetch-P2JXVwOq.mjs.map +1 -0
- package/dist/astro/image-endpoint.mjs +2 -2
- package/dist/astro/image-endpoint.mjs.map +1 -1
- package/dist/astro/index.d.mts +12 -12
- package/dist/astro/index.d.mts.map +1 -1
- package/dist/astro/index.mjs +138 -39
- package/dist/astro/index.mjs.map +1 -1
- package/dist/astro/middleware/auth.d.mts +10 -10
- package/dist/astro/middleware/auth.mjs +6 -6
- package/dist/astro/middleware/media-usage-write-fence.mjs +3 -3
- package/dist/astro/middleware/redirect.mjs +7 -5
- package/dist/astro/middleware/redirect.mjs.map +1 -1
- package/dist/astro/middleware/request-context.mjs +3 -3
- package/dist/astro/middleware/setup.mjs +1 -1
- package/dist/astro/middleware.d.mts +10 -10
- package/dist/astro/middleware.d.mts.map +1 -1
- package/dist/astro/middleware.mjs +223 -232
- package/dist/astro/middleware.mjs.map +1 -1
- package/dist/astro/routes/api/admin/allowed-domains/_domain_.mjs +6 -6
- package/dist/astro/routes/api/admin/allowed-domains/index.mjs +6 -6
- package/dist/astro/routes/api/admin/api-tokens/_id_.mjs +3 -3
- package/dist/astro/routes/api/admin/api-tokens/index.d.mts.map +1 -1
- package/dist/astro/routes/api/admin/api-tokens/index.mjs +5 -5
- package/dist/astro/routes/api/admin/api-tokens/index.mjs.map +1 -1
- package/dist/astro/routes/api/admin/byline-fields/_slug_/usage.mjs +4 -4
- package/dist/astro/routes/api/admin/byline-fields/_slug_.mjs +9 -9
- package/dist/astro/routes/api/admin/byline-fields/index.mjs +9 -9
- package/dist/astro/routes/api/admin/byline-fields/reorder.mjs +9 -9
- package/dist/astro/routes/api/admin/bylines/_id_/index.mjs +17 -17
- package/dist/astro/routes/api/admin/bylines/_id_/translations.mjs +17 -17
- package/dist/astro/routes/api/admin/bylines/index.mjs +17 -17
- package/dist/astro/routes/api/admin/comments/_id_/status.mjs +13 -13
- package/dist/astro/routes/api/admin/comments/_id_.mjs +5 -5
- package/dist/astro/routes/api/admin/comments/bulk.mjs +10 -10
- package/dist/astro/routes/api/admin/comments/counts.mjs +5 -5
- package/dist/astro/routes/api/admin/comments/index.mjs +10 -10
- package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.mjs +4 -4
- package/dist/astro/routes/api/admin/hooks/exclusive/index.mjs +3 -3
- package/dist/astro/routes/api/admin/media-usage/activation.mjs +13 -13
- package/dist/astro/routes/api/admin/media-usage/collection-deletions/index.mjs +15 -15
- package/dist/astro/routes/api/admin/media-usage/collection-deletions/retry.mjs +15 -15
- package/dist/astro/routes/api/admin/media-usage/progress.mjs +14 -14
- package/dist/astro/routes/api/admin/media-usage/repair.mjs +17 -17
- package/dist/astro/routes/api/admin/media-usage/work/index.mjs +15 -15
- package/dist/astro/routes/api/admin/media-usage/work/retry.mjs +15 -15
- package/dist/astro/routes/api/admin/oauth-clients/_id_.mjs +4 -4
- package/dist/astro/routes/api/admin/oauth-clients/_id_.mjs.map +1 -1
- package/dist/astro/routes/api/admin/oauth-clients/index.mjs +4 -4
- package/dist/astro/routes/api/admin/oauth-clients/index.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/_id_/disable.mjs +59 -56
- package/dist/astro/routes/api/admin/plugins/_id_/disable.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/_id_/enable.mjs +59 -56
- package/dist/astro/routes/api/admin/plugins/_id_/enable.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/_id_/index.mjs +57 -54
- package/dist/astro/routes/api/admin/plugins/_id_/index.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/_id_/mcp.mjs +4 -4
- package/dist/astro/routes/api/admin/plugins/_id_/settings.mjs +57 -54
- package/dist/astro/routes/api/admin/plugins/_id_/settings.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/_id_/uninstall.mjs +58 -55
- package/dist/astro/routes/api/admin/plugins/_id_/uninstall.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/_id_/update.mjs +58 -55
- package/dist/astro/routes/api/admin/plugins/_id_/update.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/index.mjs +57 -54
- package/dist/astro/routes/api/admin/plugins/index.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.mjs +2 -2
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.mjs +57 -54
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.mjs +58 -55
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/marketplace/index.mjs +57 -54
- package/dist/astro/routes/api/admin/plugins/marketplace/index.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/registry/_id_/uninstall.mjs +58 -55
- package/dist/astro/routes/api/admin/plugins/registry/_id_/uninstall.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/registry/_id_/update.d.mts.map +1 -1
- package/dist/astro/routes/api/admin/plugins/registry/_id_/update.mjs +64 -57
- package/dist/astro/routes/api/admin/plugins/registry/_id_/update.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/registry/artifact.mjs +18 -16
- package/dist/astro/routes/api/admin/plugins/registry/artifact.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/registry/install.d.mts.map +1 -1
- package/dist/astro/routes/api/admin/plugins/registry/install.mjs +65 -58
- package/dist/astro/routes/api/admin/plugins/registry/install.mjs.map +1 -1
- package/dist/astro/routes/api/admin/plugins/registry/verify.d.mts +8 -0
- package/dist/astro/routes/api/admin/plugins/registry/verify.d.mts.map +1 -0
- package/dist/astro/routes/api/admin/plugins/registry/verify.mjs +96 -0
- package/dist/astro/routes/api/admin/plugins/registry/verify.mjs.map +1 -0
- package/dist/astro/routes/api/admin/plugins/updates.mjs +57 -54
- package/dist/astro/routes/api/admin/plugins/updates.mjs.map +1 -1
- package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.mjs +57 -54
- package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.mjs.map +1 -1
- package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.mjs +2 -2
- package/dist/astro/routes/api/admin/themes/marketplace/index.mjs +57 -54
- package/dist/astro/routes/api/admin/themes/marketplace/index.mjs.map +1 -1
- package/dist/astro/routes/api/admin/users/_id_/disable.mjs +1 -1
- package/dist/astro/routes/api/admin/users/_id_/enable.mjs +1 -1
- package/dist/astro/routes/api/admin/users/_id_/index.mjs +6 -6
- package/dist/astro/routes/api/admin/users/_id_/send-recovery.mjs +3 -3
- package/dist/astro/routes/api/admin/users/index.mjs +6 -6
- package/dist/astro/routes/api/auth/dev-bypass.mjs +3 -3
- package/dist/astro/routes/api/auth/invite/accept.mjs +1 -1
- package/dist/astro/routes/api/auth/invite/complete.mjs +11 -11
- package/dist/astro/routes/api/auth/invite/index.mjs +8 -8
- package/dist/astro/routes/api/auth/invite/register-options.mjs +10 -10
- package/dist/astro/routes/api/auth/logout.mjs +2 -2
- package/dist/astro/routes/api/auth/magic-link/send.mjs +10 -10
- package/dist/astro/routes/api/auth/magic-link/verify.mjs +2 -2
- package/dist/astro/routes/api/auth/me.mjs +7 -7
- package/dist/astro/routes/api/auth/mode.mjs +2 -2
- package/dist/astro/routes/api/auth/oauth/_provider_/callback.mjs +4 -4
- package/dist/astro/routes/api/auth/oauth/_provider_.mjs +2 -2
- package/dist/astro/routes/api/auth/passkey/_id_.mjs +6 -6
- package/dist/astro/routes/api/auth/passkey/index.mjs +1 -1
- package/dist/astro/routes/api/auth/passkey/options.mjs +12 -12
- package/dist/astro/routes/api/auth/passkey/register/options.mjs +10 -10
- package/dist/astro/routes/api/auth/passkey/register/verify.mjs +11 -11
- package/dist/astro/routes/api/auth/passkey/verify.mjs +11 -11
- package/dist/astro/routes/api/auth/signup/complete.mjs +11 -11
- package/dist/astro/routes/api/auth/signup/request.mjs +10 -10
- package/dist/astro/routes/api/auth/signup/verify.mjs +1 -1
- package/dist/astro/routes/api/comments/_collection_/_contentId_/index.mjs +14 -14
- package/dist/astro/routes/api/comments/_collection_/_contentId_/reactions.mjs +13 -13
- package/dist/astro/routes/api/content/_collection_/_id_/compare.mjs +2 -2
- package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.d.mts.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.mjs +19 -5
- package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.mjs.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_/duplicate.mjs +3 -3
- package/dist/astro/routes/api/content/_collection_/_id_/lock.d.mts +10 -0
- package/dist/astro/routes/api/content/_collection_/_id_/lock.d.mts.map +1 -0
- package/dist/astro/routes/api/content/_collection_/_id_/lock.mjs +66 -0
- package/dist/astro/routes/api/content/_collection_/_id_/lock.mjs.map +1 -0
- package/dist/astro/routes/api/content/_collection_/_id_/permanent.mjs +2 -2
- package/dist/astro/routes/api/content/_collection_/_id_/preview-url.mjs +11 -11
- package/dist/astro/routes/api/content/_collection_/_id_/publish.d.mts.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_/publish.mjs +18 -10
- package/dist/astro/routes/api/content/_collection_/_id_/publish.mjs.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_/references/_relation_/children.mjs +20 -18
- package/dist/astro/routes/api/content/_collection_/_id_/references/_relation_/children.mjs.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_/references/_relation_/parents.mjs +20 -18
- package/dist/astro/routes/api/content/_collection_/_id_/references/_relation_/parents.mjs.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_/restore.mjs +3 -3
- package/dist/astro/routes/api/content/_collection_/_id_/revisions.mjs +2 -2
- package/dist/astro/routes/api/content/_collection_/_id_/schedule.d.mts.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_/schedule.mjs +15 -8
- package/dist/astro/routes/api/content/_collection_/_id_/schedule.mjs.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.mjs +16 -15
- package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.mjs.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_/translations.mjs +2 -2
- package/dist/astro/routes/api/content/_collection_/_id_/unpublish.d.mts.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_/unpublish.mjs +19 -5
- package/dist/astro/routes/api/content/_collection_/_id_/unpublish.mjs.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_.d.mts.map +1 -1
- package/dist/astro/routes/api/content/_collection_/_id_.mjs +23 -11
- package/dist/astro/routes/api/content/_collection_/_id_.mjs.map +1 -1
- package/dist/astro/routes/api/content/_collection_/authors.mjs +2 -2
- package/dist/astro/routes/api/content/_collection_/index.mjs +14 -9
- package/dist/astro/routes/api/content/_collection_/index.mjs.map +1 -1
- package/dist/astro/routes/api/content/_collection_/trash.mjs +7 -7
- package/dist/astro/routes/api/dashboard.mjs +8 -8
- package/dist/astro/routes/api/dev/emails.mjs +2 -2
- package/dist/astro/routes/api/import/probe.d.mts +3 -3
- package/dist/astro/routes/api/import/probe.mjs +18 -18
- package/dist/astro/routes/api/import/wordpress/analyze.mjs +3 -3
- package/dist/astro/routes/api/import/wordpress/execute.d.mts +11 -11
- package/dist/astro/routes/api/import/wordpress/execute.mjs +15 -14
- package/dist/astro/routes/api/import/wordpress/execute.mjs.map +1 -1
- package/dist/astro/routes/api/import/wordpress/media.d.mts +10 -10
- package/dist/astro/routes/api/import/wordpress/media.mjs +11 -11
- package/dist/astro/routes/api/import/wordpress/prepare.mjs +10 -10
- package/dist/astro/routes/api/import/wordpress/rewrite-urls.d.mts +11 -11
- package/dist/astro/routes/api/import/wordpress/rewrite-urls.mjs +13 -13
- package/dist/astro/routes/api/import/wordpress-plugin/analyze.d.mts +1 -1
- package/dist/astro/routes/api/import/wordpress-plugin/analyze.mjs +18 -18
- package/dist/astro/routes/api/import/wordpress-plugin/execute.d.mts +11 -11
- package/dist/astro/routes/api/import/wordpress-plugin/execute.mjs +29 -28
- package/dist/astro/routes/api/import/wordpress-plugin/execute.mjs.map +1 -1
- package/dist/astro/routes/api/manifest.mjs +4 -4
- package/dist/astro/routes/api/manifest.mjs.map +1 -1
- package/dist/astro/routes/api/mcp.mjs +213 -74
- package/dist/astro/routes/api/mcp.mjs.map +1 -1
- package/dist/astro/routes/api/media/_id_/confirm.mjs +11 -11
- package/dist/astro/routes/api/media/_id_/replace.d.mts +8 -0
- package/dist/astro/routes/api/media/_id_/replace.d.mts.map +1 -0
- package/dist/astro/routes/api/media/_id_/replace.mjs +91 -0
- package/dist/astro/routes/api/media/_id_/replace.mjs.map +1 -0
- package/dist/astro/routes/api/media/_id_/upload.mjs +6 -6
- package/dist/astro/routes/api/media/_id_/usage.mjs +19 -19
- package/dist/astro/routes/api/media/_id_.mjs +18 -18
- package/dist/astro/routes/api/media/file/_...key_.d.mts.map +1 -1
- package/dist/astro/routes/api/media/file/_...key_.mjs +3 -2
- package/dist/astro/routes/api/media/file/_...key_.mjs.map +1 -1
- package/dist/astro/routes/api/media/folders/_id_.mjs +8 -8
- package/dist/astro/routes/api/media/folders/index.mjs +8 -8
- package/dist/astro/routes/api/media/providers/_providerId_/_itemId_.mjs +2 -2
- package/dist/astro/routes/api/media/providers/_providerId_/index.mjs +2 -2
- package/dist/astro/routes/api/media/providers/index.mjs +2 -2
- package/dist/astro/routes/api/media/upload-url.mjs +16 -14
- package/dist/astro/routes/api/media/upload-url.mjs.map +1 -1
- package/dist/astro/routes/api/media.d.mts.map +1 -1
- package/dist/astro/routes/api/media.mjs +53 -30
- package/dist/astro/routes/api/media.mjs.map +1 -1
- package/dist/astro/routes/api/menus/_name_/items/_id_.d.mts.map +1 -1
- package/dist/astro/routes/api/menus/_name_/items/_id_.mjs +20 -13
- package/dist/astro/routes/api/menus/_name_/items/_id_.mjs.map +1 -1
- package/dist/astro/routes/api/menus/_name_/items.d.mts.map +1 -1
- package/dist/astro/routes/api/menus/_name_/items.mjs +15 -11
- package/dist/astro/routes/api/menus/_name_/items.mjs.map +1 -1
- package/dist/astro/routes/api/menus/_name_/reorder.d.mts.map +1 -1
- package/dist/astro/routes/api/menus/_name_/reorder.mjs +15 -11
- package/dist/astro/routes/api/menus/_name_/reorder.mjs.map +1 -1
- package/dist/astro/routes/api/menus/_name_/translations.d.mts.map +1 -1
- package/dist/astro/routes/api/menus/_name_/translations.mjs +16 -12
- package/dist/astro/routes/api/menus/_name_/translations.mjs.map +1 -1
- package/dist/astro/routes/api/menus/_name_.d.mts.map +1 -1
- package/dist/astro/routes/api/menus/_name_.mjs +21 -14
- package/dist/astro/routes/api/menus/_name_.mjs.map +1 -1
- package/dist/astro/routes/api/menus/index.d.mts.map +1 -1
- package/dist/astro/routes/api/menus/index.mjs +15 -11
- package/dist/astro/routes/api/menus/index.mjs.map +1 -1
- package/dist/astro/routes/api/oauth/authorize.mjs +6 -6
- package/dist/astro/routes/api/oauth/device/authorize.mjs +5 -5
- package/dist/astro/routes/api/oauth/device/code.mjs +8 -8
- package/dist/astro/routes/api/oauth/device/token.mjs +7 -7
- package/dist/astro/routes/api/oauth/register.mjs +2 -2
- package/dist/astro/routes/api/oauth/token/refresh.mjs +5 -5
- package/dist/astro/routes/api/oauth/token/revoke.mjs +5 -5
- package/dist/astro/routes/api/oauth/token.mjs +5 -5
- package/dist/astro/routes/api/openapi.json.mjs +184 -52
- package/dist/astro/routes/api/openapi.json.mjs.map +1 -1
- package/dist/astro/routes/api/plugins/_pluginId_/_...path_.mjs +4 -4
- package/dist/astro/routes/api/redirects/404s/index.mjs +12 -11
- package/dist/astro/routes/api/redirects/404s/index.mjs.map +1 -1
- package/dist/astro/routes/api/redirects/404s/summary.mjs +12 -11
- package/dist/astro/routes/api/redirects/404s/summary.mjs.map +1 -1
- package/dist/astro/routes/api/redirects/_id_.mjs +13 -12
- package/dist/astro/routes/api/redirects/_id_.mjs.map +1 -1
- package/dist/astro/routes/api/redirects/index.mjs +13 -12
- package/dist/astro/routes/api/redirects/index.mjs.map +1 -1
- package/dist/astro/routes/api/relations/_id_/index.mjs +20 -18
- package/dist/astro/routes/api/relations/_id_/index.mjs.map +1 -1
- package/dist/astro/routes/api/relations/_id_/translations.mjs +15 -13
- package/dist/astro/routes/api/relations/_id_/translations.mjs.map +1 -1
- package/dist/astro/routes/api/relations/index.mjs +20 -18
- package/dist/astro/routes/api/relations/index.mjs.map +1 -1
- package/dist/astro/routes/api/revisions/_revisionId_/index.mjs +2 -2
- package/dist/astro/routes/api/revisions/_revisionId_/restore.mjs +3 -3
- package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.mjs +57 -54
- package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.mjs.map +1 -1
- package/dist/astro/routes/api/schema/collections/_slug_/fields/index.mjs +57 -54
- package/dist/astro/routes/api/schema/collections/_slug_/fields/index.mjs.map +1 -1
- package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.mjs +57 -54
- package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.mjs.map +1 -1
- package/dist/astro/routes/api/schema/collections/_slug_/index.mjs +57 -54
- package/dist/astro/routes/api/schema/collections/_slug_/index.mjs.map +1 -1
- package/dist/astro/routes/api/schema/collections/index.mjs +57 -54
- package/dist/astro/routes/api/schema/collections/index.mjs.map +1 -1
- package/dist/astro/routes/api/schema/collections/reorder.mjs +57 -54
- package/dist/astro/routes/api/schema/collections/reorder.mjs.map +1 -1
- package/dist/astro/routes/api/schema/index.mjs +13 -11
- package/dist/astro/routes/api/schema/index.mjs.map +1 -1
- package/dist/astro/routes/api/schema/orphans/_slug_.mjs +57 -54
- package/dist/astro/routes/api/schema/orphans/_slug_.mjs.map +1 -1
- package/dist/astro/routes/api/schema/orphans/index.mjs +57 -54
- package/dist/astro/routes/api/schema/orphans/index.mjs.map +1 -1
- package/dist/astro/routes/api/search/enable.mjs +12 -11
- package/dist/astro/routes/api/search/enable.mjs.map +1 -1
- package/dist/astro/routes/api/search/index.mjs +11 -10
- package/dist/astro/routes/api/search/index.mjs.map +1 -1
- package/dist/astro/routes/api/search/rebuild.mjs +12 -11
- package/dist/astro/routes/api/search/rebuild.mjs.map +1 -1
- package/dist/astro/routes/api/search/stats.mjs +7 -6
- package/dist/astro/routes/api/search/stats.mjs.map +1 -1
- package/dist/astro/routes/api/search/suggest.mjs +11 -10
- package/dist/astro/routes/api/search/suggest.mjs.map +1 -1
- package/dist/astro/routes/api/sections/_slug_.mjs +11 -10
- package/dist/astro/routes/api/sections/_slug_.mjs.map +1 -1
- package/dist/astro/routes/api/sections/index.mjs +11 -10
- package/dist/astro/routes/api/sections/index.mjs.map +1 -1
- package/dist/astro/routes/api/settings/backups/archives/_name_.mjs +7 -6
- package/dist/astro/routes/api/settings/backups/archives/_name_.mjs.map +1 -1
- package/dist/astro/routes/api/settings/backups/archives/index.mjs +6 -5
- package/dist/astro/routes/api/settings/backups/archives/index.mjs.map +1 -1
- package/dist/astro/routes/api/settings/backups/export.mjs +7 -6
- package/dist/astro/routes/api/settings/backups/export.mjs.map +1 -1
- package/dist/astro/routes/api/settings/backups/index.mjs +8 -7
- package/dist/astro/routes/api/settings/backups/index.mjs.map +1 -1
- package/dist/astro/routes/api/settings/email.mjs +5 -5
- package/dist/astro/routes/api/settings/email.mjs.map +1 -1
- package/dist/astro/routes/api/settings.d.mts.map +1 -1
- package/dist/astro/routes/api/settings.mjs +21 -17
- package/dist/astro/routes/api/settings.mjs.map +1 -1
- package/dist/astro/routes/api/setup/admin-verify.mjs +12 -12
- package/dist/astro/routes/api/setup/admin.mjs +11 -11
- package/dist/astro/routes/api/setup/dev-bypass.mjs +35 -33
- package/dist/astro/routes/api/setup/dev-bypass.mjs.map +1 -1
- package/dist/astro/routes/api/setup/dev-reset.mjs +2 -2
- package/dist/astro/routes/api/setup/index.mjs +35 -33
- package/dist/astro/routes/api/setup/index.mjs.map +1 -1
- package/dist/astro/routes/api/setup/status.mjs +3 -3
- package/dist/astro/routes/api/snapshot.mjs +8 -7
- package/dist/astro/routes/api/snapshot.mjs.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_/reorder.d.mts.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_/reorder.mjs +22 -17
- package/dist/astro/routes/api/taxonomies/_name_/reorder.mjs.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_/translations.d.mts.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_/translations.mjs +23 -18
- package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_/translations.mjs.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.d.mts.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.mjs +27 -19
- package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.mjs.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_/terms/index.d.mts.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_/terms/index.mjs +22 -17
- package/dist/astro/routes/api/taxonomies/_name_/terms/index.mjs.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_/translations.mjs +16 -15
- package/dist/astro/routes/api/taxonomies/_name_/translations.mjs.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_.d.mts.map +1 -1
- package/dist/astro/routes/api/taxonomies/_name_.mjs +28 -20
- package/dist/astro/routes/api/taxonomies/_name_.mjs.map +1 -1
- package/dist/astro/routes/api/taxonomies/index.d.mts.map +1 -1
- package/dist/astro/routes/api/taxonomies/index.mjs +22 -17
- package/dist/astro/routes/api/taxonomies/index.mjs.map +1 -1
- package/dist/astro/routes/api/themes/preview.mjs +5 -5
- package/dist/astro/routes/api/typegen.mjs +4 -4
- package/dist/astro/routes/api/well-known/auth.mjs +2 -2
- package/dist/astro/routes/api/well-known/oauth-authorization-server.mjs +2 -2
- package/dist/astro/routes/api/well-known/oauth-protected-resource.mjs +2 -2
- package/dist/astro/routes/api/widget-areas/_name_/reorder.d.mts.map +1 -1
- package/dist/astro/routes/api/widget-areas/_name_/reorder.mjs +10 -8
- package/dist/astro/routes/api/widget-areas/_name_/reorder.mjs.map +1 -1
- package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.d.mts.map +1 -1
- package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.mjs +18 -14
- package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.mjs.map +1 -1
- package/dist/astro/routes/api/widget-areas/_name_/widgets.d.mts.map +1 -1
- package/dist/astro/routes/api/widget-areas/_name_/widgets.mjs +16 -13
- package/dist/astro/routes/api/widget-areas/_name_/widgets.mjs.map +1 -1
- package/dist/astro/routes/api/widget-areas/_name_.d.mts.map +1 -1
- package/dist/astro/routes/api/widget-areas/_name_.mjs +9 -7
- package/dist/astro/routes/api/widget-areas/_name_.mjs.map +1 -1
- package/dist/astro/routes/api/widget-areas/index.d.mts.map +1 -1
- package/dist/astro/routes/api/widget-areas/index.mjs +16 -13
- package/dist/astro/routes/api/widget-areas/index.mjs.map +1 -1
- package/dist/astro/routes/api/widget-components.mjs +2 -2
- package/dist/astro/routes/robots.txt.mjs +8 -8
- package/dist/astro/routes/sitemap-_collection_.xml.mjs +13 -12
- package/dist/astro/routes/sitemap-_collection_.xml.mjs.map +1 -1
- package/dist/astro/routes/sitemap.xml.mjs +9 -9
- package/dist/astro/types.d.mts +50 -20
- package/dist/astro/types.d.mts.map +1 -1
- package/dist/auth/providers/github.d.mts +1 -1
- package/dist/auth/providers/google.d.mts +1 -1
- package/dist/{authorize-ByYs-Uxs.mjs → authorize-C2QHlWSS.mjs} +2 -2
- package/dist/{authorize-ByYs-Uxs.mjs.map → authorize-C2QHlWSS.mjs.map} +1 -1
- package/dist/{backup-ChyHfIoX.mjs → backup-oS8ft5Cm.mjs} +5 -5
- package/dist/{backup-ChyHfIoX.mjs.map → backup-oS8ft5Cm.mjs.map} +1 -1
- package/dist/{bundle-DZFhFurR.mjs → bundle-CL0JjIPx.mjs} +4 -4
- package/dist/{bundle-DZFhFurR.mjs.map → bundle-CL0JjIPx.mjs.map} +1 -1
- package/dist/{byline-Cpnwrje1.mjs → byline-Vdi85CsZ.mjs} +27 -14
- package/dist/byline-Vdi85CsZ.mjs.map +1 -0
- package/dist/{byline-fields-CAyA_Umd.mjs → byline-fields-DPVRFMz2.mjs} +2 -2
- package/dist/{byline-fields-CAyA_Umd.mjs.map → byline-fields-DPVRFMz2.mjs.map} +1 -1
- package/dist/{byline-registry-Bpu9-MVs.mjs → byline-registry-BxDGIO0I.mjs} +2 -2
- package/dist/{byline-registry-Bpu9-MVs.mjs.map → byline-registry-BxDGIO0I.mjs.map} +1 -1
- package/dist/{bylines-BSo9B9RX.mjs → bylines-BX8QhcTk.mjs} +7 -7
- package/dist/{bylines-BSo9B9RX.mjs.map → bylines-BX8QhcTk.mjs.map} +1 -1
- package/dist/{bylines-CHjvehVX.mjs → bylines-w-E1IEQd.mjs} +3 -3
- package/dist/{bylines-CHjvehVX.mjs.map → bylines-w-E1IEQd.mjs.map} +1 -1
- package/dist/{cache-5VirJ2Cn.mjs → cache--7HKu5Xm.mjs} +4 -4
- package/dist/{cache-5VirJ2Cn.mjs.map → cache--7HKu5Xm.mjs.map} +1 -1
- package/dist/{capture-triggers-CNW1q3HK.mjs → capture-triggers-CeAsC76Z.mjs} +2 -2
- package/dist/{capture-triggers-CNW1q3HK.mjs.map → capture-triggers-CeAsC76Z.mjs.map} +1 -1
- package/dist/{challenge-store-D5pSY2S1.mjs → challenge-store-BIOak-tp.mjs} +5 -3
- package/dist/challenge-store-BIOak-tp.mjs.map +1 -0
- package/dist/chrome-tags-DzDQBCjX.mjs +24 -0
- package/dist/chrome-tags-DzDQBCjX.mjs.map +1 -0
- package/dist/{chunks-bNiX6_DR.mjs → chunks-VG_tyqnP.mjs} +2 -2
- package/dist/{chunks-bNiX6_DR.mjs.map → chunks-VG_tyqnP.mjs.map} +1 -1
- package/dist/cli/index.mjs +68 -40
- package/dist/cli/index.mjs.map +1 -1
- package/dist/client/cf-access.d.mts +1 -1
- package/dist/client/index.d.mts +17 -7
- package/dist/client/index.d.mts.map +1 -1
- package/dist/client/index.mjs +17 -12
- package/dist/client/index.mjs.map +1 -1
- package/dist/{collection-deletion-m_oi2c0N.mjs → collection-deletion-BCwaWTDw.mjs} +4 -4
- package/dist/{collection-deletion-m_oi2c0N.mjs.map → collection-deletion-BCwaWTDw.mjs.map} +1 -1
- package/dist/collection-slugs-cache-7lTmNzeA.mjs +85 -0
- package/dist/collection-slugs-cache-7lTmNzeA.mjs.map +1 -0
- package/dist/{comment-reaction-CRuItEjt.mjs → comment-reaction-CDyvPQRj.mjs} +2 -2
- package/dist/{comment-reaction-CRuItEjt.mjs.map → comment-reaction-CDyvPQRj.mjs.map} +1 -1
- package/dist/{comment-DhvLEdhQ.mjs → comment-vxOzWbZN.mjs} +2 -2
- package/dist/{comment-DhvLEdhQ.mjs.map → comment-vxOzWbZN.mjs.map} +1 -1
- package/dist/{comments-CLj4bi8I.mjs → comments-VzmVLyaC.mjs} +2 -2
- package/dist/{comments-CLj4bi8I.mjs.map → comments-VzmVLyaC.mjs.map} +1 -1
- package/dist/{components-v4U4DT2y.mjs → components-CL6Wkdk-.mjs} +1 -1
- package/dist/{components-v4U4DT2y.mjs.map → components-CL6Wkdk-.mjs.map} +1 -1
- package/dist/config--eWjQJE5.mjs +217 -0
- package/dist/config--eWjQJE5.mjs.map +1 -0
- package/dist/{index-DWbJrsAg.d.mts → config-CGAhyOjP.d.mts} +276 -76
- package/dist/config-CGAhyOjP.d.mts.map +1 -0
- package/dist/{config-DrfghTPe.d.mts → config-ChFzshGd.d.mts} +1 -1
- package/dist/{config-DrfghTPe.d.mts.map → config-ChFzshGd.d.mts.map} +1 -1
- package/dist/{content-CP-SeXNa.mjs → content-CNfMWuhY.mjs} +202 -46
- package/dist/content-CNfMWuhY.mjs.map +1 -0
- package/dist/{content-list-query-BhejKVqb.d.mts → content-list-query-B8d4UQp9.d.mts} +1 -1
- package/dist/{content-list-query-BhejKVqb.d.mts.map → content-list-query-B8d4UQp9.d.mts.map} +1 -1
- package/dist/{content-refresh-DLOfIhYc.mjs → content-refresh-GTMyi2Xy.mjs} +53 -26
- package/dist/content-refresh-GTMyi2Xy.mjs.map +1 -0
- package/dist/{content-repair-BCxzy0r4.mjs → content-repair-CIMt5C0U.mjs} +4 -4
- package/dist/{content-repair-BCxzy0r4.mjs.map → content-repair-CIMt5C0U.mjs.map} +1 -1
- package/dist/{context-BR5hRWiK.mjs → context-C9PB8vGd.mjs} +308 -33
- package/dist/context-C9PB8vGd.mjs.map +1 -0
- package/dist/{cron-CWfWrWKG.mjs → cron-DHAy9oyq.mjs} +1 -1
- package/dist/{cron-CWfWrWKG.mjs.map → cron-DHAy9oyq.mjs.map} +1 -1
- package/dist/{dashboard-CkIV2rnQ.mjs → dashboard-BNSvAN8A.mjs} +5 -5
- package/dist/{dashboard-CkIV2rnQ.mjs.map → dashboard-BNSvAN8A.mjs.map} +1 -1
- package/dist/db/index.d.mts +3 -3
- package/dist/db/index.mjs +2 -2
- package/dist/db/index.mjs.map +1 -1
- package/dist/db/libsql-migrations.d.mts +1 -1
- package/dist/db/libsql-migrations.mjs +5 -5
- package/dist/db/libsql.d.mts +1 -1
- package/dist/db/postgres-migrations.d.mts +1 -1
- package/dist/db/postgres-migrations.mjs +5 -5
- package/dist/db/postgres.d.mts +1 -1
- package/dist/db/postgres.d.mts.map +1 -1
- package/dist/db/postgres.mjs +19 -3
- package/dist/db/postgres.mjs.map +1 -1
- package/dist/db/sqlite-migrations.d.mts +1 -1
- package/dist/db/sqlite-migrations.mjs +5 -5
- package/dist/db/sqlite.d.mts +1 -1
- package/dist/db/sqlite.mjs +1 -1
- package/dist/{default-YMEfcQUx.mjs → default-ByZ0JqZo.mjs} +1 -1
- package/dist/{default-YMEfcQUx.mjs.map → default-ByZ0JqZo.mjs.map} +1 -1
- package/dist/{deferred-tasks-DfqxH5Xf.d.mts → deferred-tasks-Cu4NSJpa.d.mts} +1 -1
- package/dist/{deferred-tasks-DfqxH5Xf.d.mts.map → deferred-tasks-Cu4NSJpa.d.mts.map} +1 -1
- package/dist/dev-typegen-DHT7lcMU.mjs +29 -0
- package/dist/dev-typegen-DHT7lcMU.mjs.map +1 -0
- package/dist/{device-flow-CojjSBwb.mjs → device-flow-Cf6bhCCT.mjs} +4 -4
- package/dist/{device-flow-CojjSBwb.mjs.map → device-flow-Cf6bhCCT.mjs.map} +1 -1
- package/dist/{dialect-helpers-BSbfaO3F.mjs → dialect-helpers-BcQvkHgn.mjs} +83 -2
- package/dist/dialect-helpers-BcQvkHgn.mjs.map +1 -0
- package/dist/{direct-executor-BWeWiRYB.mjs → direct-executor-yAyUGSqB.mjs} +3 -3
- package/dist/{direct-executor-BWeWiRYB.mjs.map → direct-executor-yAyUGSqB.mjs.map} +1 -1
- package/dist/{dist-89xCrGqi.mjs → dist-BAsh8dbf.mjs} +1 -1
- package/dist/{dist-89xCrGqi.mjs.map → dist-BAsh8dbf.mjs.map} +1 -1
- package/dist/{email-console-CEJgR_LB.mjs → email-console-DNup1Fku.mjs} +1 -1
- package/dist/{email-console-CEJgR_LB.mjs.map → email-console-DNup1Fku.mjs.map} +1 -1
- package/dist/{enrich-BX0IDp4z.mjs → enrich-t2Xvjdqa.mjs} +3 -3
- package/dist/{enrich-BX0IDp4z.mjs.map → enrich-t2Xvjdqa.mjs.map} +1 -1
- package/dist/entry-lock-BEr8gDkG.mjs +163 -0
- package/dist/entry-lock-BEr8gDkG.mjs.map +1 -0
- package/dist/{relations-C7B46bcU.d.mts → entry-lock-CGAtrwAR.d.mts} +265 -76
- package/dist/entry-lock-CGAtrwAR.d.mts.map +1 -0
- package/dist/{redirects-CRIM55KH.mjs → entry-lock-DIYHAaSw.mjs} +112 -34
- package/dist/entry-lock-DIYHAaSw.mjs.map +1 -0
- package/dist/entry-locks-BEcX7ET0.mjs +167 -0
- package/dist/entry-locks-BEcX7ET0.mjs.map +1 -0
- package/dist/{error-D9w94fjV.mjs → error-BDcFyoRt.mjs} +2 -2
- package/dist/{error-D9w94fjV.mjs.map → error-BDcFyoRt.mjs.map} +1 -1
- package/dist/{errors-n2j49uNf.mjs → errors-DvMdNrgf.mjs} +10 -1
- package/dist/errors-DvMdNrgf.mjs.map +1 -0
- package/dist/{escape-DN4Qmjsl.mjs → escape-B3asJC6W.mjs} +1 -1
- package/dist/{escape-DN4Qmjsl.mjs.map → escape-B3asJC6W.mjs.map} +1 -1
- package/dist/{field-defs-cache-Bh4q6oar.mjs → field-defs-cache-Cf5FHK0M.mjs} +5 -5
- package/dist/{field-defs-cache-Bh4q6oar.mjs.map → field-defs-cache-Cf5FHK0M.mjs.map} +1 -1
- package/dist/{fts-manager-BhOdW0bi.mjs → fts-manager-iddym8cd.mjs} +4 -4
- package/dist/{fts-manager-BhOdW0bi.mjs.map → fts-manager-iddym8cd.mjs.map} +1 -1
- package/dist/{hash-CTcngWvj.mjs → hash-BRweX6jz.mjs} +1 -1
- package/dist/{hash-CTcngWvj.mjs.map → hash-BRweX6jz.mjs.map} +1 -1
- package/dist/hook-result-BrshYHLx.d.mts +31 -0
- package/dist/hook-result-BrshYHLx.d.mts.map +1 -0
- package/dist/{hreflang-7pTHsLZJ.d.mts → hreflang-CQpu5bMy.d.mts} +2 -2
- package/dist/{hreflang-7pTHsLZJ.d.mts.map → hreflang-CQpu5bMy.d.mts.map} +1 -1
- package/dist/{hreflang-Huc6O5wa.mjs → hreflang-DshnweTC.mjs} +9 -8
- package/dist/{hreflang-Huc6O5wa.mjs.map → hreflang-DshnweTC.mjs.map} +1 -1
- package/dist/{identity-DXmb4aVp.mjs → identity-CjGKDq8J.mjs} +3 -3
- package/dist/{identity-DXmb4aVp.mjs.map → identity-CjGKDq8J.mjs.map} +1 -1
- package/dist/{import-C4_O3KXU.mjs → import-D96g2otw.mjs} +6 -6
- package/dist/{import-C4_O3KXU.mjs.map → import-D96g2otw.mjs.map} +1 -1
- package/dist/{index-6bRee8zb.d.mts → index-1ECYpfiF.d.mts} +3 -3
- package/dist/{index-6bRee8zb.d.mts.map → index-1ECYpfiF.d.mts.map} +1 -1
- package/dist/index.d.mts +22 -21
- package/dist/index.mjs +84 -81
- package/dist/{init-lock-DJkX6Hto.mjs → init-lock-CFNBe_iH.mjs} +1 -1
- package/dist/{init-lock-DJkX6Hto.mjs.map → init-lock-CFNBe_iH.mjs.map} +1 -1
- package/dist/{load-Bo7fZAbg.mjs → load-DPtY9cZo.mjs} +2 -2
- package/dist/{load-Bo7fZAbg.mjs.map → load-DPtY9cZo.mjs.map} +1 -1
- package/dist/{loader-ZsjE4paL.mjs → loader-WJi6GFRn.mjs} +90 -17
- package/dist/loader-WJi6GFRn.mjs.map +1 -0
- package/dist/{manifest-builder-QXuqvVMP.mjs → manifest-builder-BfNlGQIA.mjs} +2 -2
- package/dist/{manifest-builder-QXuqvVMP.mjs.map → manifest-builder-BfNlGQIA.mjs.map} +1 -1
- package/dist/{manifest-schema-CUYPfCEH.mjs → manifest-schema-CILooI5J.mjs} +5 -5
- package/dist/manifest-schema-CILooI5J.mjs.map +1 -0
- package/dist/media/image-endpoint.d.mts +4 -2
- package/dist/media/image-endpoint.d.mts.map +1 -1
- package/dist/media/image-endpoint.mjs +6 -4
- package/dist/media/image-endpoint.mjs.map +1 -1
- package/dist/media/index.d.mts +1 -1
- package/dist/media/index.mjs +3 -3
- package/dist/media/local-runtime.d.mts +12 -12
- package/dist/media/local-runtime.mjs +7 -7
- package/dist/{media-D6SeAfBl.mjs → media-BBm8Wg3f.mjs} +30 -2
- package/dist/media-BBm8Wg3f.mjs.map +1 -0
- package/dist/{media-BjwNuLEu.mjs → media-C1EIZKh1.mjs} +35 -5
- package/dist/media-C1EIZKh1.mjs.map +1 -0
- package/dist/{media-allowlist-D35v7bmL.mjs → media-allowlist-elXJgb_K.mjs} +2 -2
- package/dist/{media-allowlist-D35v7bmL.mjs.map → media-allowlist-elXJgb_K.mjs.map} +1 -1
- package/dist/{media-folders-D-0CmRZj.mjs → media-folders-DASfX_DH.mjs} +1 -1
- package/dist/{media-folders-D-0CmRZj.mjs.map → media-folders-DASfX_DH.mjs.map} +1 -1
- package/dist/{media-upload-C7bLXGcI.mjs → media-upload-C7_AQJ5v.mjs} +9 -9
- package/dist/{media-upload-C7bLXGcI.mjs.map → media-upload-C7_AQJ5v.mjs.map} +1 -1
- package/dist/{media-url-DH7giMx_.mjs → media-url-8dVl1loq.mjs} +19 -2
- package/dist/media-url-8dVl1loq.mjs.map +1 -0
- package/dist/{media-usage-BTRJvS6V.mjs → media-usage-C1EswMTq.mjs} +10 -10
- package/dist/{media-usage-BTRJvS6V.mjs.map → media-usage-C1EswMTq.mjs.map} +1 -1
- package/dist/{media-usage-activation-Dx0kPV6b.mjs → media-usage-activation-CrHNltlL.mjs} +3 -3
- package/dist/{media-usage-activation-Dx0kPV6b.mjs.map → media-usage-activation-CrHNltlL.mjs.map} +1 -1
- package/dist/{media-usage-work-C-fhM30c.mjs → media-usage-work-C5B1zT1c.mjs} +2 -2
- package/dist/{media-usage-work-C-fhM30c.mjs.map → media-usage-work-C5B1zT1c.mjs.map} +1 -1
- package/dist/{media-usage-work-DWb2XPMI.mjs → media-usage-work-IkQx_Yz6.mjs} +4 -4
- package/dist/{media-usage-work-DWb2XPMI.mjs.map → media-usage-work-IkQx_Yz6.mjs.map} +1 -1
- package/dist/{media-usage-write-fence-BwoJVRDC.mjs → media-usage-write-fence-B9anjOSg.mjs} +3 -3
- package/dist/{media-usage-write-fence-BwoJVRDC.mjs.map → media-usage-write-fence-B9anjOSg.mjs.map} +1 -1
- package/dist/{menus-CNg0QlDt.mjs → menus-D8mC4eaN.mjs} +406 -175
- package/dist/menus-D8mC4eaN.mjs.map +1 -0
- package/dist/{menus-CD7EFLwz.mjs → menus-UdwjHZJC.mjs} +12 -4
- package/dist/{menus-CD7EFLwz.mjs.map → menus-UdwjHZJC.mjs.map} +1 -1
- package/dist/migrations/index.d.mts +1 -1
- package/dist/migrations/index.mjs +4 -4
- package/dist/{mime-CUIG6x84.mjs → mime-DYpsOAny.mjs} +1 -1
- package/dist/{mime-CUIG6x84.mjs.map → mime-DYpsOAny.mjs.map} +1 -1
- package/dist/{mode-DaUM_MB2.mjs → mode-Dm4BHhRH.mjs} +1 -1
- package/dist/{mode-DaUM_MB2.mjs.map → mode-Dm4BHhRH.mjs.map} +1 -1
- package/dist/{node-sqlite-compat-Udb4Y-rs.mjs → node-sqlite-compat-2sezm-Zd.mjs} +1 -1
- package/dist/{node-sqlite-compat-Udb4Y-rs.mjs.map → node-sqlite-compat-2sezm-Zd.mjs.map} +1 -1
- package/dist/{normalize-CSxdKBVa.mjs → normalize-4nkKGsuW.mjs} +15 -5
- package/dist/normalize-4nkKGsuW.mjs.map +1 -0
- package/dist/{oauth-authorization-Dpsb-fMJ.mjs → oauth-authorization-BxE_lURD.mjs} +4 -4
- package/dist/{oauth-authorization-Dpsb-fMJ.mjs.map → oauth-authorization-BxE_lURD.mjs.map} +1 -1
- package/dist/{oauth-clients-Bxnoe_67.mjs → oauth-clients-DJIdOdq0.mjs} +1 -1
- package/dist/{oauth-clients-Bxnoe_67.mjs.map → oauth-clients-DJIdOdq0.mjs.map} +1 -1
- package/dist/{oauth-state-store-0C4s0K6w.mjs → oauth-state-store-CsdxP57n.mjs} +1 -1
- package/dist/{oauth-state-store-0C4s0K6w.mjs.map → oauth-state-store-CsdxP57n.mjs.map} +1 -1
- package/dist/{oauth-user-lookup-wlGYSeqX.mjs → oauth-user-lookup-HzzW-dkF.mjs} +1 -1
- package/dist/{oauth-user-lookup-wlGYSeqX.mjs.map → oauth-user-lookup-HzzW-dkF.mjs.map} +1 -1
- package/dist/object-cache/memory.d.mts +1 -1
- package/dist/{object-cache-71tPfV4A.mjs → object-cache-DVKnyOfy.mjs} +19 -3
- package/dist/object-cache-DVKnyOfy.mjs.map +1 -0
- package/dist/{options-BHPeIbBd.mjs → options-D1FBiAv1.mjs} +60 -5
- package/dist/options-D1FBiAv1.mjs.map +1 -0
- package/dist/{options-BhZIeFY1.d.mts → options-D8Y0VHc7.d.mts} +30 -11
- package/dist/options-D8Y0VHc7.d.mts.map +1 -0
- package/dist/page/index.d.mts +2 -2
- package/dist/page/index.d.mts.map +1 -1
- package/dist/page/index.mjs +12 -0
- package/dist/page/index.mjs.map +1 -1
- package/dist/{parse-BRJg1kz8.mjs → parse-WRg5C3NX.mjs} +2 -2
- package/dist/{parse-BRJg1kz8.mjs.map → parse-WRg5C3NX.mjs.map} +1 -1
- package/dist/{passkey-config-B3P0nHRR.mjs → passkey-config-qIdO-wF6.mjs} +1 -1
- package/dist/{passkey-config-B3P0nHRR.mjs.map → passkey-config-qIdO-wF6.mjs.map} +1 -1
- package/dist/{patterns-D9iDO3j8.mjs → patterns-DC8CLptu.mjs} +1 -1
- package/dist/{patterns-D9iDO3j8.mjs.map → patterns-DC8CLptu.mjs.map} +1 -1
- package/dist/{placeholder-BR4ZhVJl.d.mts → placeholder-COrvARyD.d.mts} +1 -1
- package/dist/{placeholder-BR4ZhVJl.d.mts.map → placeholder-COrvARyD.d.mts.map} +1 -1
- package/dist/plugin-types.d.mts +8 -3
- package/dist/plugin-types.d.mts.map +1 -1
- package/dist/plugin-utils.d.mts +10 -10
- package/dist/plugins/adapt-sandbox-entry.d.mts +10 -10
- package/dist/plugins/adapt-sandbox-entry.mjs +2 -2
- package/dist/{policy-BVRganJQ.mjs → policy-XCfb-IE9.mjs} +2 -2
- package/dist/{policy-BVRganJQ.mjs.map → policy-XCfb-IE9.mjs.map} +1 -1
- package/dist/{portable-text-C8Tvp4_g.mjs → portable-text-BS3d5n-0.mjs} +1 -1
- package/dist/{portable-text-C8Tvp4_g.mjs.map → portable-text-BS3d5n-0.mjs.map} +1 -1
- package/dist/{preview-dn2dUyM0.mjs → preview-BxwsGgGp.mjs} +2 -2
- package/dist/{preview-dn2dUyM0.mjs.map → preview-BxwsGgGp.mjs.map} +1 -1
- package/dist/{protocol-CuBEsqgE.d.mts → protocol-CLn58-nw.d.mts} +2 -2
- package/dist/{protocol-CuBEsqgE.d.mts.map → protocol-CLn58-nw.d.mts.map} +1 -1
- package/dist/{public-url-DRz_AinV.mjs → public-url-FWWAvnre.mjs} +1 -1
- package/dist/{public-url-DRz_AinV.mjs.map → public-url-FWWAvnre.mjs.map} +1 -1
- package/dist/{query-D18vTdha.mjs → query-DygOte9M.mjs} +26 -17
- package/dist/query-DygOte9M.mjs.map +1 -0
- package/dist/{query-tZDEdtCN.mjs → query-gtXT03Wc.mjs} +5 -5
- package/dist/{query-tZDEdtCN.mjs.map → query-gtXT03Wc.mjs.map} +1 -1
- package/dist/{rate-limit-on7KPo-v.mjs → rate-limit-CQUPm0dh.mjs} +2 -2
- package/dist/{rate-limit-on7KPo-v.mjs.map → rate-limit-CQUPm0dh.mjs.map} +1 -1
- package/dist/{redirect-DrbEmU9a.mjs → redirect-D1cWafi6.mjs} +1 -1
- package/dist/{redirect-DrbEmU9a.mjs.map → redirect-D1cWafi6.mjs.map} +1 -1
- package/dist/{redirect-CZkbozu9.mjs → redirect-DId44BS1.mjs} +19 -6
- package/dist/redirect-DId44BS1.mjs.map +1 -0
- package/dist/{redirects-BahWiu8Z.mjs → redirects-DN-ZE33W.mjs} +5 -5
- package/dist/{redirects-BahWiu8Z.mjs.map → redirects-DN-ZE33W.mjs.map} +1 -1
- package/dist/{registry-Cx-jEJOS.mjs → registry-DTqaqxed.mjs} +46 -12
- package/dist/registry-DTqaqxed.mjs.map +1 -0
- package/dist/{relation-A6wLF_DS.mjs → relation-DxgCHOBw.mjs} +2 -2
- package/dist/{relation-A6wLF_DS.mjs.map → relation-DxgCHOBw.mjs.map} +1 -1
- package/dist/{relations-Cj5hZ6Zg.mjs → relations-KKDSLUwS.mjs} +4 -4
- package/dist/{relations-Cj5hZ6Zg.mjs.map → relations-KKDSLUwS.mjs.map} +1 -1
- package/dist/{relations-BTPM2saV.mjs → relations-rOmbndUJ.mjs} +8 -8
- package/dist/relations-rOmbndUJ.mjs.map +1 -0
- package/dist/{request-cache-DH9zdCOD.mjs → request-cache-DAZZmesc.mjs} +1 -1
- package/dist/{request-cache-DH9zdCOD.mjs.map → request-cache-DAZZmesc.mjs.map} +1 -1
- package/dist/request-context.d.mts +1 -1
- package/dist/{request-meta-DRp5ENd_.mjs → request-meta-BgjUQLQ-.mjs} +2 -2
- package/dist/{request-meta-DRp5ENd_.mjs.map → request-meta-BgjUQLQ-.mjs.map} +1 -1
- package/dist/{resolve-DxUpTMmE.mjs → resolve-Cy0aWSRj.mjs} +37 -4
- package/dist/resolve-Cy0aWSRj.mjs.map +1 -0
- package/dist/{runner-zgqA_CqP.d.mts → runner-CfwysRM0.d.mts} +3 -2
- package/dist/runner-CfwysRM0.d.mts.map +1 -0
- package/dist/{runner-77GOZCnH.mjs → runner-nEzvnogG.mjs} +476 -295
- package/dist/runner-nEzvnogG.mjs.map +1 -0
- package/dist/runtime.d.mts +11 -11
- package/dist/runtime.mjs +3 -2
- package/dist/runtime.mjs.map +1 -1
- package/dist/{schema-BY-oVntF.mjs → schema-CRu38Pr5.mjs} +3 -3
- package/dist/{schema-BY-oVntF.mjs.map → schema-CRu38Pr5.mjs.map} +1 -1
- package/dist/{schema-Cw9kVK0I.mjs → schema-DifxndJx.mjs} +5 -5
- package/dist/{schema-Cw9kVK0I.mjs.map → schema-DifxndJx.mjs.map} +1 -1
- package/dist/{scopes-vMR1uIbt.mjs → scopes-D5A1OZbq.mjs} +3 -3
- package/dist/{scopes-vMR1uIbt.mjs.map → scopes-D5A1OZbq.mjs.map} +1 -1
- package/dist/{search-CfT3KxO5.mjs → search-DEPFSBFq.mjs} +4 -4
- package/dist/{search-CfT3KxO5.mjs.map → search-DEPFSBFq.mjs.map} +1 -1
- package/dist/{secrets-BH2Qow1-.mjs → secrets-CdfzLdoO.mjs} +3 -3
- package/dist/{secrets-BH2Qow1-.mjs.map → secrets-CdfzLdoO.mjs.map} +1 -1
- package/dist/{sections-DTfjyf1z.mjs → sections-3X52kmIR.mjs} +2 -2
- package/dist/{sections-DTfjyf1z.mjs.map → sections-3X52kmIR.mjs.map} +1 -1
- package/dist/seed/index.d.mts +2 -2
- package/dist/seed/index.mjs +28 -26
- package/dist/seo/index.d.mts +3 -3
- package/dist/seo/index.d.mts.map +1 -1
- package/dist/seo/index.mjs +20 -21
- package/dist/seo/index.mjs.map +1 -1
- package/dist/{seo-Cm-dtvgk.mjs → seo-Bw68KxRc.mjs} +3 -3
- package/dist/{seo-Cm-dtvgk.mjs.map → seo-Bw68KxRc.mjs.map} +1 -1
- package/dist/{seo-BSiTIXzd.mjs → seo-C4AmbsMU.mjs} +3 -2
- package/dist/seo-C4AmbsMU.mjs.map +1 -0
- package/dist/{service-DYsDHEKe.mjs → service-J_-Vgo7R.mjs} +3 -3
- package/dist/{service-DYsDHEKe.mjs.map → service-J_-Vgo7R.mjs.map} +1 -1
- package/dist/{session-user-CNAfvsdw.mjs → session-user-CbnMMwk6.mjs} +1 -1
- package/dist/{session-user-CNAfvsdw.mjs.map → session-user-CbnMMwk6.mjs.map} +1 -1
- package/dist/{settings-DjtkUo__.mjs → settings-AnEFYICn.mjs} +3 -3
- package/dist/{settings-DjtkUo__.mjs.map → settings-AnEFYICn.mjs.map} +1 -1
- package/dist/{settings-BgN-0DT-.mjs → settings-DcMjREe5.mjs} +21 -8
- package/dist/settings-DcMjREe5.mjs.map +1 -0
- package/dist/{setup-complete-CcpXaPU7.mjs → setup-complete-BClXXTvr.mjs} +2 -2
- package/dist/{setup-complete-CcpXaPU7.mjs.map → setup-complete-BClXXTvr.mjs.map} +1 -1
- package/dist/{setup-nonce-Reyw30jg.mjs → setup-nonce-BheRa4RG.mjs} +1 -1
- package/dist/{setup-nonce-Reyw30jg.mjs.map → setup-nonce-BheRa4RG.mjs.map} +1 -1
- package/dist/{single-flight-cache-BPuGPdcN.mjs → single-flight-cache-jaswDzmQ.mjs} +2 -2
- package/dist/{single-flight-cache-BPuGPdcN.mjs.map → single-flight-cache-jaswDzmQ.mjs.map} +1 -1
- package/dist/{site-url-Cs_V9n3V.mjs → site-url-Bqf-ea3N.mjs} +3 -3
- package/dist/{site-url-Cs_V9n3V.mjs.map → site-url-Bqf-ea3N.mjs.map} +1 -1
- package/dist/{snapshot-DSB8P7Lm.mjs → snapshot-C4CtXntb.mjs} +51 -35
- package/dist/snapshot-C4CtXntb.mjs.map +1 -0
- package/dist/{ssrf-DqebVE34.mjs → ssrf-gl4gFNhw.mjs} +151 -93
- package/dist/ssrf-gl4gFNhw.mjs.map +1 -0
- package/dist/{state-BJfU9Uzw.mjs → state-1F6IOhdQ.mjs} +1 -1
- package/dist/{state-BJfU9Uzw.mjs.map → state-1F6IOhdQ.mjs.map} +1 -1
- package/dist/{status-DDu8HIQl.mjs → status-Cenfk_r5.mjs} +1 -1
- package/dist/{status-DDu8HIQl.mjs.map → status-Cenfk_r5.mjs.map} +1 -1
- package/dist/storage/local.d.mts +2 -1
- package/dist/storage/local.d.mts.map +1 -1
- package/dist/storage/local.mjs +1 -1
- package/dist/storage/local.mjs.map +1 -1
- package/dist/storage/s3.d.mts +2 -1
- package/dist/storage/s3.d.mts.map +1 -1
- package/dist/storage/s3.mjs +3 -2
- package/dist/storage/s3.mjs.map +1 -1
- package/dist/{target-D0o26Azo.mjs → target-CRzeTs8G.mjs} +1 -1
- package/dist/{target-D0o26Azo.mjs.map → target-CRzeTs8G.mjs.map} +1 -1
- package/dist/{taxonomies-CPGxo-bn.mjs → taxonomies-BOdxuZpV.mjs} +23 -13
- package/dist/taxonomies-BOdxuZpV.mjs.map +1 -0
- package/dist/{taxonomies-kmyudNGP.mjs → taxonomies-NcFDq5Gg.mjs} +58 -23
- package/dist/taxonomies-NcFDq5Gg.mjs.map +1 -0
- package/dist/{taxonomy-8X09dLN5.mjs → taxonomy-DP1vny4K.mjs} +12 -4
- package/dist/{taxonomy-8X09dLN5.mjs.map → taxonomy-DP1vny4K.mjs.map} +1 -1
- package/dist/{tokens-gTS-IVUp.mjs → tokens-CDk8ox9p.mjs} +1 -1
- package/dist/{tokens-gTS-IVUp.mjs.map → tokens-CDk8ox9p.mjs.map} +1 -1
- package/dist/{transport-_6R1ub7t.d.mts → transport-BVn4tVb9.d.mts} +1 -1
- package/dist/{transport-_6R1ub7t.d.mts.map → transport-BVn4tVb9.d.mts.map} +1 -1
- package/dist/{transport-fX59xaJz.mjs → transport-DP0JI-8i.mjs} +1 -1
- package/dist/{transport-fX59xaJz.mjs.map → transport-DP0JI-8i.mjs.map} +1 -1
- package/dist/{trusted-proxy-fe6nEgR4.mjs → trusted-proxy-BTM6UxqD.mjs} +1 -1
- package/dist/{trusted-proxy-fe6nEgR4.mjs.map → trusted-proxy-BTM6UxqD.mjs.map} +1 -1
- package/dist/{types-D_DWe7k9.d.mts → types-2n848aVW.d.mts} +3 -2
- package/dist/types-2n848aVW.d.mts.map +1 -0
- package/dist/types-A2cN6a4a.mjs +3 -0
- package/dist/{types-75KIqzL9.mjs → types-BMXnRIrX.mjs} +4 -2
- package/dist/types-BMXnRIrX.mjs.map +1 -0
- package/dist/{types-Vg6f5i3s.d.mts → types-BouXpOsa.d.mts} +121 -4
- package/dist/types-BouXpOsa.d.mts.map +1 -0
- package/dist/{types-BXUmsINL.mjs → types-ByG2coLw.mjs} +1 -1
- package/dist/{types-BXUmsINL.mjs.map → types-ByG2coLw.mjs.map} +1 -1
- package/dist/types-CQPWhPxE.mjs.map +1 -1
- package/dist/{types-Blb-MRC3.d.mts → types-DEfNJ__A.d.mts} +1 -1
- package/dist/{types-Blb-MRC3.d.mts.map → types-DEfNJ__A.d.mts.map} +1 -1
- package/dist/{types-Br-ERaxh.d.mts → types-DKcKSbtB.d.mts} +23 -7
- package/dist/types-DKcKSbtB.d.mts.map +1 -0
- package/dist/{types-BzBd3PeX.d.mts → types-DRYs7uTL.d.mts} +1 -1
- package/dist/{types-BzBd3PeX.d.mts.map → types-DRYs7uTL.d.mts.map} +1 -1
- package/dist/{types-CLqvnd05.d.mts → types-DaEg7KX2.d.mts} +1 -1
- package/dist/{types-CLqvnd05.d.mts.map → types-DaEg7KX2.d.mts.map} +1 -1
- package/dist/{types-DJQxln7q.d.mts → types-LU8utpP_.d.mts} +14 -10
- package/dist/types-LU8utpP_.d.mts.map +1 -0
- package/dist/{types-D5VVLr7J.d.mts → types-VpYfPUxN.d.mts} +1 -1
- package/dist/{types-D5VVLr7J.d.mts.map → types-VpYfPUxN.d.mts.map} +1 -1
- package/dist/{types-DM3vioBY.mjs → types-c9GP7Dj5.mjs} +1 -1
- package/dist/{types-DM3vioBY.mjs.map → types-c9GP7Dj5.mjs.map} +1 -1
- package/dist/{types-DHxzBjbD.d.mts → types-tJWDK__M.d.mts} +14 -1
- package/dist/types-tJWDK__M.d.mts.map +1 -0
- package/dist/{upload-attempts-CNyGSepg.mjs → upload-attempts-C6S2y-lp.mjs} +1 -1
- package/dist/{upload-attempts-CNyGSepg.mjs.map → upload-attempts-C6S2y-lp.mjs.map} +1 -1
- package/dist/{url-pattern-K-KdXcSe.mjs → url-pattern-UYtxVTuj.mjs} +1 -1
- package/dist/{url-pattern-K-KdXcSe.mjs.map → url-pattern-UYtxVTuj.mjs.map} +1 -1
- package/dist/{user-CtYY0tp2.mjs → user-DIsIXogT.mjs} +2 -2
- package/dist/{user-CtYY0tp2.mjs.map → user-DIsIXogT.mjs.map} +1 -1
- package/dist/{utils-HztC73hq.mjs → utils-BicP5Qbg.mjs} +2 -2
- package/dist/{utils-HztC73hq.mjs.map → utils-BicP5Qbg.mjs.map} +1 -1
- package/dist/{validate-Dd-IUjnZ.mjs → validate-D8VPn4Hv.mjs} +8 -3
- package/dist/validate-D8VPn4Hv.mjs.map +1 -0
- package/dist/{validate-DlqdOZXB.d.mts → validate-Df6Dvwbw.d.mts} +12 -7
- package/dist/validate-Df6Dvwbw.d.mts.map +1 -0
- package/dist/{validation-D83n7Npi.mjs → validation-CzMJn9Ku.mjs} +13 -11
- package/dist/{validation-D83n7Npi.mjs.map → validation-CzMJn9Ku.mjs.map} +1 -1
- package/dist/version-CK67_SXX.mjs +7 -0
- package/dist/{version-ri-sCyAp.mjs.map → version-CK67_SXX.mjs.map} +1 -1
- package/dist/{widgets-CpmZd9Q-.mjs → widgets-RFVAxQl3.mjs} +18 -5
- package/dist/widgets-RFVAxQl3.mjs.map +1 -0
- package/dist/{wxr-taxonomies-BFd0y72_.d.mts → wxr-taxonomies-BX4yQL9s.d.mts} +1 -1
- package/dist/{wxr-taxonomies-BFd0y72_.d.mts.map → wxr-taxonomies-BX4yQL9s.d.mts.map} +1 -1
- package/dist/{wxr-taxonomies-Df4vxWcU.mjs → wxr-taxonomies-Csdp7yde.mjs} +4 -4
- package/dist/{wxr-taxonomies-Df4vxWcU.mjs.map → wxr-taxonomies-Csdp7yde.mjs.map} +1 -1
- package/dist/{zod-generator-DylzusHh.mjs → zod-generator-CNRGdnBY.mjs} +11 -7
- package/dist/zod-generator-CNRGdnBY.mjs.map +1 -0
- package/package.json +16 -11
- package/src/api/errors.ts +9 -0
- package/src/api/handlers/content.ts +115 -90
- package/src/api/handlers/entry-lock.ts +206 -0
- package/src/api/handlers/index.ts +1 -0
- package/src/api/handlers/manifest.ts +162 -12
- package/src/api/handlers/marketplace.ts +28 -20
- package/src/api/handlers/media.ts +30 -0
- package/src/api/handlers/menus.ts +9 -0
- package/src/api/handlers/registry.ts +406 -297
- package/src/api/handlers/revision.ts +2 -1
- package/src/api/handlers/seo.ts +10 -1
- package/src/api/handlers/snapshot.ts +84 -72
- package/src/api/handlers/taxonomies.ts +25 -9
- package/src/api/openapi/document.ts +196 -11
- package/src/api/parse.ts +1 -1
- package/src/api/schemas/auth.ts +4 -4
- package/src/api/schemas/bylines.ts +3 -3
- package/src/api/schemas/comments.ts +1 -1
- package/src/api/schemas/common.ts +3 -2
- package/src/api/schemas/content.ts +86 -22
- package/src/api/schemas/entry-lock.ts +48 -0
- package/src/api/schemas/index.ts +1 -0
- package/src/api/schemas/media.ts +52 -0
- package/src/api/schemas/redirects.ts +6 -1
- package/src/api/schemas/schema.ts +14 -1
- package/src/api/schemas/setup.ts +1 -1
- package/src/api/schemas/taxonomies.ts +2 -2
- package/src/api/schemas/users.ts +1 -1
- package/src/api/types.ts +25 -10
- package/src/astro/dev-typegen.ts +35 -0
- package/src/astro/image-endpoint.ts +2 -2
- package/src/astro/integration/dev-typegen.ts +91 -0
- package/src/astro/integration/index.ts +18 -50
- package/src/astro/integration/routes.ts +10 -0
- package/src/astro/integration/runtime.ts +13 -5
- package/src/astro/integration/vite-config.ts +51 -2
- package/src/astro/middleware.ts +21 -0
- package/src/astro/routes/api/admin/api-tokens/index.ts +4 -1
- package/src/astro/routes/api/admin/oauth-clients/[id].ts +1 -1
- package/src/astro/routes/api/admin/oauth-clients/index.ts +1 -1
- package/src/astro/routes/api/admin/plugins/registry/[id]/update.ts +4 -0
- package/src/astro/routes/api/admin/plugins/registry/artifact.ts +3 -7
- package/src/astro/routes/api/admin/plugins/registry/install.ts +4 -0
- package/src/astro/routes/api/admin/plugins/registry/verify.ts +60 -0
- package/src/astro/routes/api/content/[collection]/[id]/discard-draft.ts +18 -2
- package/src/astro/routes/api/content/[collection]/[id]/lock.ts +133 -0
- package/src/astro/routes/api/content/[collection]/[id]/publish.ts +12 -1
- package/src/astro/routes/api/content/[collection]/[id]/schedule.ts +20 -0
- package/src/astro/routes/api/content/[collection]/[id]/unpublish.ts +16 -2
- package/src/astro/routes/api/content/[collection]/[id].ts +27 -2
- package/src/astro/routes/api/content/[collection]/index.ts +3 -0
- package/src/astro/routes/api/manifest.ts +1 -1
- package/src/astro/routes/api/media/[id]/replace.ts +114 -0
- package/src/astro/routes/api/media/file/[...key].ts +4 -1
- package/src/astro/routes/api/media/upload-url.ts +8 -4
- package/src/astro/routes/api/media.ts +54 -8
- package/src/astro/routes/api/menus/[name]/items/[id].ts +7 -2
- package/src/astro/routes/api/menus/[name]/items.ts +4 -1
- package/src/astro/routes/api/menus/[name]/reorder.ts +4 -1
- package/src/astro/routes/api/menus/[name]/translations.ts +4 -1
- package/src/astro/routes/api/menus/[name].ts +7 -2
- package/src/astro/routes/api/menus/index.ts +4 -1
- package/src/astro/routes/api/settings/email.ts +1 -1
- package/src/astro/routes/api/settings.ts +4 -1
- package/src/astro/routes/api/taxonomies/[name]/reorder.ts +4 -1
- package/src/astro/routes/api/taxonomies/[name]/terms/[slug]/translations.ts +4 -1
- package/src/astro/routes/api/taxonomies/[name]/terms/[slug].ts +7 -2
- package/src/astro/routes/api/taxonomies/[name]/terms/index.ts +4 -1
- package/src/astro/routes/api/taxonomies/[name].ts +7 -2
- package/src/astro/routes/api/taxonomies/index.ts +4 -1
- package/src/astro/routes/api/widget-areas/[name]/reorder.ts +3 -1
- package/src/astro/routes/api/widget-areas/[name]/widgets/[id].ts +5 -2
- package/src/astro/routes/api/widget-areas/[name]/widgets.ts +3 -1
- package/src/astro/routes/api/widget-areas/[name].ts +3 -1
- package/src/astro/routes/api/widget-areas/index.ts +3 -1
- package/src/astro/routes/sitemap-[collection].xml.ts +4 -0
- package/src/astro/types.ts +36 -8
- package/src/auth/challenge-store.ts +3 -1
- package/src/aws-sdk.d.ts +1 -0
- package/src/cache/chrome-tags.ts +24 -0
- package/src/cli/commands/content.ts +31 -5
- package/src/cli/commands/export-seed.ts +2 -0
- package/src/client/index.ts +34 -7
- package/src/components/EmDashBodyEnd.astro +4 -1
- package/src/components/EmDashBodyStart.astro +4 -1
- package/src/components/EmDashHead.astro +35 -16
- package/src/components/EmDashImage.astro +2 -1
- package/src/components/EmDashMedia.astro +2 -1
- package/src/components/Gallery.astro +18 -4
- package/src/components/InlineEditor.astro +3 -1
- package/src/components/InlinePortableTextEditor.tsx +112 -12
- package/src/components/PortableText.astro +4 -0
- package/src/components/Table.astro +147 -62
- package/src/components/widgets/Archives.astro +2 -37
- package/src/config/errors.ts +13 -0
- package/src/content/converters/index.ts +2 -0
- package/src/content/converters/mark-safety.ts +1 -0
- package/src/content/converters/portable-text-identity.ts +139 -0
- package/src/content/converters/portable-text-to-prosemirror.ts +226 -69
- package/src/content/converters/prosemirror-to-portable-text.ts +128 -28
- package/src/content/converters/types.ts +11 -0
- package/src/database/dialect-helpers.ts +125 -0
- package/src/database/migrations/017_authorization_codes.ts +14 -4
- package/src/database/migrations/074_content_deleted_scheduled_index.ts +55 -0
- package/src/database/migrations/075_entry_edit_locks.ts +44 -0
- package/src/database/migrations/076_collection_nav_group.ts +22 -0
- package/src/database/migrations/077_plugin_storage_revisions.ts +89 -0
- package/src/database/migrations/runner.ts +9 -1
- package/src/database/repositories/byline.ts +32 -16
- package/src/database/repositories/content.ts +284 -48
- package/src/database/repositories/entry-locks.ts +257 -0
- package/src/database/repositories/media-usage.ts +66 -37
- package/src/database/repositories/media.ts +60 -1
- package/src/database/repositories/options.ts +69 -5
- package/src/database/repositories/plugin-storage.ts +233 -9
- package/src/database/repositories/redirect.ts +17 -6
- package/src/database/repositories/taxonomy.ts +8 -0
- package/src/database/repositories/types.ts +11 -7
- package/src/database/types.ts +15 -1
- package/src/db/adapters.ts +8 -1
- package/src/db/postgres.ts +23 -0
- package/src/emdash-runtime.ts +196 -199
- package/src/fields/boolean.ts +1 -1
- package/src/fields/datetime.ts +1 -1
- package/src/fields/file.ts +1 -1
- package/src/fields/integer.ts +1 -1
- package/src/fields/json.ts +1 -1
- package/src/fields/multiselect.ts +1 -1
- package/src/fields/number.ts +1 -1
- package/src/fields/portable-text.ts +1 -1
- package/src/fields/richtext.ts +1 -1
- package/src/fields/select.ts +1 -1
- package/src/fields/slug.ts +1 -1
- package/src/fields/text.ts +1 -1
- package/src/fields/textarea.ts +1 -1
- package/src/fields/types.ts +2 -2
- package/src/i18n/resolve.ts +44 -4
- package/src/index.ts +39 -3
- package/src/loader.ts +96 -12
- package/src/mcp/server.ts +251 -29
- package/src/media/image-endpoint.ts +5 -2
- package/src/media/normalize.ts +15 -4
- package/src/media/responsive.ts +23 -0
- package/src/media/usage/cleanup.ts +9 -8
- package/src/media/usage/content-refresh.ts +2 -1
- package/src/menus/index.ts +33 -21
- package/src/object-cache/index.ts +44 -2
- package/src/page/seo-contributions.ts +78 -1
- package/src/page/seo-panel.ts +47 -0
- package/src/plugin-types.ts +27 -1
- package/src/plugins/conditional-storage.ts +30 -0
- package/src/plugins/context.ts +49 -17
- package/src/plugins/hooks.ts +10 -1
- package/src/plugins/index.ts +15 -0
- package/src/plugins/manager.ts +6 -2
- package/src/plugins/manifest-schema.ts +1 -1
- package/src/plugins/routes.ts +3 -1
- package/src/plugins/sandbox/hook-result.ts +52 -0
- package/src/plugins/sandbox/index.ts +10 -0
- package/src/plugins/sandbox/types.ts +16 -2
- package/src/plugins/storage-query.ts +45 -0
- package/src/plugins/storage-update.ts +96 -0
- package/src/plugins/types.ts +120 -0
- package/src/query.ts +29 -3
- package/src/registry/artifact-checksum.ts +15 -0
- package/src/registry/artifact-verification.ts +85 -0
- package/src/registry/authoritative-records.ts +180 -0
- package/src/registry/config.ts +130 -27
- package/src/registry/record-labels.ts +28 -0
- package/src/registry/types.ts +5 -6
- package/src/schema/collection-slugs-cache.ts +157 -0
- package/src/schema/registry.ts +45 -3
- package/src/schema/types.ts +25 -6
- package/src/schema/zod-generator.ts +16 -13
- package/src/security/ssrf.ts +172 -143
- package/src/seed/apply.ts +4 -0
- package/src/seed/types.ts +7 -2
- package/src/seed/validate.ts +18 -1
- package/src/seo/hreflang.ts +1 -0
- package/src/seo/index.ts +5 -10
- package/src/seo/media-url.ts +26 -0
- package/src/settings/index.ts +16 -0
- package/src/storage/local.ts +1 -0
- package/src/storage/s3.ts +2 -0
- package/src/storage/types.ts +2 -0
- package/src/taxonomies/index.ts +40 -20
- package/src/taxonomies/term-counts.ts +22 -5
- package/src/widgets/archives.ts +67 -0
- package/src/widgets/index.ts +16 -0
- package/dist/api-B0w3uBiG.mjs +0 -2269
- package/dist/api-B0w3uBiG.mjs.map +0 -1
- package/dist/apply-B_VMpJ2P.mjs.map +0 -1
- package/dist/byline-Cpnwrje1.mjs.map +0 -1
- package/dist/challenge-store-D5pSY2S1.mjs.map +0 -1
- package/dist/content-CP-SeXNa.mjs.map +0 -1
- package/dist/content-refresh-DLOfIhYc.mjs.map +0 -1
- package/dist/context-BR5hRWiK.mjs.map +0 -1
- package/dist/dialect-helpers-BSbfaO3F.mjs.map +0 -1
- package/dist/errors-n2j49uNf.mjs.map +0 -1
- package/dist/index-DWbJrsAg.d.mts.map +0 -1
- package/dist/loader-ZsjE4paL.mjs.map +0 -1
- package/dist/manifest-schema-CUYPfCEH.mjs.map +0 -1
- package/dist/media-BjwNuLEu.mjs.map +0 -1
- package/dist/media-D6SeAfBl.mjs.map +0 -1
- package/dist/media-url-DH7giMx_.mjs.map +0 -1
- package/dist/menus-CNg0QlDt.mjs.map +0 -1
- package/dist/normalize-CSxdKBVa.mjs.map +0 -1
- package/dist/object-cache-71tPfV4A.mjs.map +0 -1
- package/dist/options-BHPeIbBd.mjs.map +0 -1
- package/dist/options-BhZIeFY1.d.mts.map +0 -1
- package/dist/query-D18vTdha.mjs.map +0 -1
- package/dist/redirect-CZkbozu9.mjs.map +0 -1
- package/dist/redirects-CRIM55KH.mjs.map +0 -1
- package/dist/registry-BiO5WwPq.mjs +0 -2716
- package/dist/registry-BiO5WwPq.mjs.map +0 -1
- package/dist/registry-Cx-jEJOS.mjs.map +0 -1
- package/dist/relations-BTPM2saV.mjs.map +0 -1
- package/dist/relations-C7B46bcU.d.mts.map +0 -1
- package/dist/resolve-DxUpTMmE.mjs.map +0 -1
- package/dist/runner-77GOZCnH.mjs.map +0 -1
- package/dist/runner-zgqA_CqP.d.mts.map +0 -1
- package/dist/seo-BSiTIXzd.mjs.map +0 -1
- package/dist/settings-BgN-0DT-.mjs.map +0 -1
- package/dist/snapshot-DSB8P7Lm.mjs.map +0 -1
- package/dist/ssrf-DqebVE34.mjs.map +0 -1
- package/dist/taxonomies-CPGxo-bn.mjs.map +0 -1
- package/dist/taxonomies-kmyudNGP.mjs.map +0 -1
- package/dist/types-75KIqzL9.mjs.map +0 -1
- package/dist/types-Br-ERaxh.d.mts.map +0 -1
- package/dist/types-D6OcIp2P.mjs +0 -3
- package/dist/types-DHxzBjbD.d.mts.map +0 -1
- package/dist/types-DJQxln7q.d.mts.map +0 -1
- package/dist/types-D_DWe7k9.d.mts.map +0 -1
- package/dist/types-Vg6f5i3s.d.mts.map +0 -1
- package/dist/validate-Dd-IUjnZ.mjs.map +0 -1
- package/dist/validate-DlqdOZXB.d.mts.map +0 -1
- package/dist/version-ri-sCyAp.mjs +0 -7
- package/dist/widgets-CpmZd9Q-.mjs.map +0 -1
- package/dist/zod-generator-DylzusHh.mjs.map +0 -1
- /package/dist/{api-tokens-B5NHLNUN.mjs → api-tokens-B_lfpmH3.mjs} +0 -0
- /package/dist/{ssrf-BPKzkm6O.mjs → ssrf-TQhaljuI.mjs} +0 -0
|
@@ -1,23 +1,26 @@
|
|
|
1
|
-
import { r as ContentFieldFilters } from "./content-list-query-
|
|
2
|
-
import { _ as UpdateCollectionInput, a as CollectionWithFields, c as CreateFieldInput, d as Field, p as FieldValidation, s as CreateCollectionInput, t as Collection, v as UpdateFieldInput } from "./types-
|
|
3
|
-
import { f as UpdateContentInput, i as ContentItem, l as FindManyOptions, o as ContentSeoInput, r as ContentDateField, s as CreateContentInput, t as BylineSummary, u as FindManyResult } from "./types-
|
|
4
|
-
import { d as ContentListResponse, f as ContentResponse,
|
|
5
|
-
import { t as Database } from "./types-
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { _ as MediaValue, f as MediaProvider, m as MediaProviderDescriptor, p as MediaProviderCapabilities } from "./placeholder-
|
|
9
|
-
import { T as ContentBylineInput } from "./index-
|
|
10
|
-
import { r as DatabaseDescriptor } from "./adapters-
|
|
11
|
-
import { r as AuthProviderDescriptor, t as AuthDescriptor } from "./types-
|
|
12
|
-
import { r as ObjectCacheDescriptor } from "./types-
|
|
13
|
-
import { d as Storage } from "./types-
|
|
14
|
-
import { i as SiteSettings, r as SiteSettingKey } from "./types-
|
|
1
|
+
import { r as ContentFieldFilters } from "./content-list-query-B8d4UQp9.mjs";
|
|
2
|
+
import { _ as UpdateCollectionInput, a as CollectionWithFields, c as CreateFieldInput, d as Field, p as FieldValidation, s as CreateCollectionInput, t as Collection, v as UpdateFieldInput } from "./types-DKcKSbtB.mjs";
|
|
3
|
+
import { f as UpdateContentInput, i as ContentItem, l as FindManyOptions, o as ContentSeoInput, r as ContentDateField, s as CreateContentInput, t as BylineSummary, u as FindManyResult } from "./types-LU8utpP_.mjs";
|
|
4
|
+
import { d as ContentListResponse, f as ContentResponse, u as ApiResult, v as ManifestResponse } from "./options-D8Y0VHc7.mjs";
|
|
5
|
+
import { t as Database } from "./types-tJWDK__M.mjs";
|
|
6
|
+
import { Dt as PublicPageContext, Ft as StorageCollection, Gt as UpdateIfResult, H as EmailMessage, Jt as WhereClause, K as HttpAccess, Kt as UserInfo, M as CronEvent, Ot as QueryOptions, Pt as SettingField, St as PluginMcpManifestConfig, Tt as PortableTextBlockConfig, U as FieldWidgetConfig, _t as PluginCapability, a as CommentAfterCreateEvent, at as PageFragmentContribution, ct as PageMetadataContribution, jt as ResolvedPlugin, kt as RequestMeta, l as CommentBeforeCreateEvent, lt as PageMetadataEvent, m as ConditionalWriteResult, ot as PageFragmentEvent, p as ConditionalDeleteResult, pt as PaginatedResult, qt as VersionedValue, s as CommentAfterModerateEvent, t as ActorInfo, tt as MediaItem$1, wt as PluginStorageConfig, xt as PluginManifest, yt as PluginDefinition } from "./types-BouXpOsa.mjs";
|
|
7
|
+
import { Gn as MediaUsageActivationAdvanceResponse, Wn as MediaUsageActivationAdvanceRequest, ar as MediaUsageRepairResponse, ir as MediaUsageRepairRequest, nr as MediaUsageProgress } from "./entry-lock-CGAtrwAR.mjs";
|
|
8
|
+
import { _ as MediaValue, f as MediaProvider, m as MediaProviderDescriptor, p as MediaProviderCapabilities } from "./placeholder-COrvARyD.mjs";
|
|
9
|
+
import { T as ContentBylineInput } from "./index-1ECYpfiF.mjs";
|
|
10
|
+
import { r as DatabaseDescriptor } from "./adapters-DCEgOBXi.mjs";
|
|
11
|
+
import { r as AuthProviderDescriptor, t as AuthDescriptor } from "./types-DRYs7uTL.mjs";
|
|
12
|
+
import { r as ObjectCacheDescriptor } from "./types-VpYfPUxN.mjs";
|
|
13
|
+
import { d as Storage } from "./types-2n848aVW.mjs";
|
|
14
|
+
import { i as SiteSettings, r as SiteSettingKey } from "./types-DEfNJ__A.mjs";
|
|
15
15
|
import { EmDashManifest } from "./astro/types.mjs";
|
|
16
16
|
import { Dialect, Kysely, sql } from "kysely";
|
|
17
17
|
import { z } from "astro/zod";
|
|
18
|
-
import { z as z$1 } from "zod";
|
|
18
|
+
import { ZodType, z as z$1 } from "zod";
|
|
19
19
|
import { ManifestHookEntry, ManifestRouteEntry } from "@emdash-cms/plugin-types";
|
|
20
20
|
import "@emdash-cms/registry-client/env";
|
|
21
|
+
import "@emdash-cms/registry-client/direct-pds";
|
|
22
|
+
import { PortableTextTableAlignment, PortableTextTableBlock, PortableTextTableBlock as PortableTextTableBlock$1, PortableTextTableCell, PortableTextTableRow } from "@emdash-cms/admin/portable-text-table";
|
|
23
|
+
import { Extension, Extensions, Mark, Node } from "@tiptap/core";
|
|
21
24
|
import { LiveLoader } from "astro/loaders";
|
|
22
25
|
|
|
23
26
|
//#region src/database/errors.d.ts
|
|
@@ -37,7 +40,17 @@ interface DatabaseConfig {
|
|
|
37
40
|
authToken?: string;
|
|
38
41
|
}
|
|
39
42
|
//#endregion
|
|
43
|
+
//#region src/config/errors.d.ts
|
|
44
|
+
type EmDashConfigurationErrorCode = "BINDING_NOT_FOUND" | "CONFIGURATION_ERROR";
|
|
45
|
+
/** A configuration failure whose message is safe to return from the API. */
|
|
46
|
+
declare class EmDashConfigurationError extends Error {
|
|
47
|
+
readonly code: EmDashConfigurationErrorCode;
|
|
48
|
+
cause?: unknown | undefined;
|
|
49
|
+
constructor(message: string, code: EmDashConfigurationErrorCode, cause?: unknown | undefined);
|
|
50
|
+
}
|
|
51
|
+
//#endregion
|
|
40
52
|
//#region src/database/repositories/content.d.ts
|
|
53
|
+
type ContentRevisionPrecondition = Pick<ContentItem, "version" | "updatedAt">;
|
|
41
54
|
/**
|
|
42
55
|
* Repository for content CRUD operations
|
|
43
56
|
*
|
|
@@ -100,6 +113,7 @@ declare class ContentRepository {
|
|
|
100
113
|
* Find many content items with filtering and pagination
|
|
101
114
|
*/
|
|
102
115
|
findMany(type: string, options?: FindManyOptions): Promise<FindManyResult<ContentItem>>;
|
|
116
|
+
private normalizeScheduledAt;
|
|
103
117
|
/**
|
|
104
118
|
* Update content
|
|
105
119
|
*/
|
|
@@ -111,6 +125,25 @@ declare class ContentRepository {
|
|
|
111
125
|
updateDraftAware(type: string, id: string, input: UpdateContentInput): Promise<ContentItem>;
|
|
112
126
|
private deleteUnstagedRevision;
|
|
113
127
|
private replaceDraftRevisionForUpdate;
|
|
128
|
+
/**
|
|
129
|
+
* Copy non-translatable field values to every other entry in the
|
|
130
|
+
* translation group, trashed entries included.
|
|
131
|
+
*
|
|
132
|
+
* Only the fields present in `data` are copied. With `previous`, `data` is
|
|
133
|
+
* the entry's complete new state and only the fields whose value differs
|
|
134
|
+
* from `previous` are copied, an absent field as null. An entry that already
|
|
135
|
+
* holds every copied value is left untouched, so its `updated_at` does not
|
|
136
|
+
* move.
|
|
137
|
+
*
|
|
138
|
+
* On collections with revisions a changed entry also gets a new live
|
|
139
|
+
* revision, because republishing and unpublishing read that revision rather
|
|
140
|
+
* than the columns. A pending draft takes a value only where it still holds
|
|
141
|
+
* the entry's previous value, so an unpublished edit to the field survives.
|
|
142
|
+
*/
|
|
143
|
+
syncNonTranslatableFields(type: string, sourceId: string, translationGroup: string, data: Record<string, unknown>, options?: {
|
|
144
|
+
previous?: Record<string, unknown>;
|
|
145
|
+
}): Promise<void>;
|
|
146
|
+
private syncSiblingValues;
|
|
114
147
|
/**
|
|
115
148
|
* Delete content (soft delete - moves to trash)
|
|
116
149
|
*/
|
|
@@ -136,13 +169,19 @@ declare class ContentRepository {
|
|
|
136
169
|
/**
|
|
137
170
|
* Find trashed content items
|
|
138
171
|
*/
|
|
139
|
-
findTrashed(type: string, options?: Omit<FindManyOptions, "where">
|
|
172
|
+
findTrashed(type: string, options?: Omit<FindManyOptions, "where"> & {
|
|
173
|
+
where?: {
|
|
174
|
+
locale?: string;
|
|
175
|
+
};
|
|
176
|
+
}): Promise<FindManyResult<ContentItem & {
|
|
140
177
|
deletedAt: string;
|
|
141
178
|
}>>;
|
|
142
179
|
/**
|
|
143
180
|
* Count trashed content items
|
|
144
181
|
*/
|
|
145
|
-
countTrashed(type: string
|
|
182
|
+
countTrashed(type: string, options?: {
|
|
183
|
+
locale?: string;
|
|
184
|
+
}): Promise<number>;
|
|
146
185
|
/**
|
|
147
186
|
* Apply the optional `q` filter.
|
|
148
187
|
*
|
|
@@ -231,6 +270,8 @@ declare class ContentRepository {
|
|
|
231
270
|
* Find all translations in a translation group
|
|
232
271
|
*/
|
|
233
272
|
findTranslations(type: string, translationGroup: string): Promise<ContentItem[]>;
|
|
273
|
+
/** Whether any row of `translationGroup` exists, trashed rows included. */
|
|
274
|
+
hasTranslationsIncludingTrashed(type: string, translationGroup: string): Promise<boolean>;
|
|
234
275
|
/**
|
|
235
276
|
* Batch variant of {@link findTranslations}: every (non-deleted) locale
|
|
236
277
|
* variant for any of `translationGroups`, in one `WHERE translation_group IN
|
|
@@ -288,14 +329,14 @@ declare class ContentRepository {
|
|
|
288
329
|
* `expectedScheduledAt` additionally fences changes made after a sweep
|
|
289
330
|
* selected the row but before publication preparation began.
|
|
290
331
|
*/
|
|
291
|
-
publish(type: string, id: string, publishedAt?: string, requireDue?: boolean, expectedScheduledAt?: string, promoteRevision?: boolean, requireSlug?: boolean): Promise<ContentItem>;
|
|
332
|
+
publish(type: string, id: string, publishedAt?: string, requireDue?: boolean, expectedScheduledAt?: string, promoteRevision?: boolean, requireSlug?: boolean, expectedRevision?: ContentRevisionPrecondition): Promise<ContentItem>;
|
|
292
333
|
/**
|
|
293
334
|
* Unpublish content
|
|
294
335
|
*
|
|
295
|
-
* Removes live pointer but preserves draft. If no
|
|
296
|
-
* creates one from the live version so the content isn't lost.
|
|
336
|
+
* Removes live pointer but preserves the draft and publication date. If no
|
|
337
|
+
* draft exists, creates one from the live version so the content isn't lost.
|
|
297
338
|
*/
|
|
298
|
-
unpublish(type: string, id: string): Promise<ContentItem>;
|
|
339
|
+
unpublish(type: string, id: string, expectedRevision?: ContentRevisionPrecondition): Promise<ContentItem>;
|
|
299
340
|
/**
|
|
300
341
|
* Set the draft revision pointer for a content item.
|
|
301
342
|
*
|
|
@@ -315,7 +356,7 @@ declare class ContentRepository {
|
|
|
315
356
|
* Clears draft_revision_id. The content table columns already hold the
|
|
316
357
|
* published version, so no data sync is needed.
|
|
317
358
|
*/
|
|
318
|
-
discardDraft(type: string, id: string): Promise<ContentItem>;
|
|
359
|
+
discardDraft(type: string, id: string, expectedRevision?: ContentRevisionPrecondition): Promise<ContentItem>;
|
|
319
360
|
/**
|
|
320
361
|
* Count content items with a pending schedule.
|
|
321
362
|
* Includes both draft-scheduled (status='scheduled') and published
|
|
@@ -383,6 +424,7 @@ interface CreateMediaInput {
|
|
|
383
424
|
dominantColor?: string;
|
|
384
425
|
status?: MediaStatus;
|
|
385
426
|
authorId?: string;
|
|
427
|
+
folderId?: string | null;
|
|
386
428
|
}
|
|
387
429
|
interface FindManyMediaOptions {
|
|
388
430
|
limit?: number;
|
|
@@ -402,6 +444,12 @@ interface UpdateMediaInput extends FocalPointUpdate {
|
|
|
402
444
|
height?: number;
|
|
403
445
|
folderId?: string | null;
|
|
404
446
|
}
|
|
447
|
+
interface ReplaceReadyMediaInput {
|
|
448
|
+
size: number;
|
|
449
|
+
width: number;
|
|
450
|
+
height: number;
|
|
451
|
+
contentHash: string;
|
|
452
|
+
}
|
|
405
453
|
interface FindMediaPageOptions extends Omit<FindManyMediaOptions, "cursor"> {
|
|
406
454
|
page: number;
|
|
407
455
|
}
|
|
@@ -429,6 +477,7 @@ declare class MediaRepository {
|
|
|
429
477
|
storageKey: string;
|
|
430
478
|
contentHash?: string;
|
|
431
479
|
authorId?: string;
|
|
480
|
+
folderId?: string | null;
|
|
432
481
|
}): Promise<MediaItem>;
|
|
433
482
|
createUploadAttempt(mediaId: string, storageKey: string): Promise<void>;
|
|
434
483
|
hasUploadAttempt(storageKey: string): Promise<boolean>;
|
|
@@ -461,6 +510,7 @@ declare class MediaRepository {
|
|
|
461
510
|
* Useful for idempotent imports
|
|
462
511
|
*/
|
|
463
512
|
findByFilename(filename: string): Promise<MediaItem | null>;
|
|
513
|
+
findAvailableFilename(filename: string): Promise<string>;
|
|
464
514
|
/**
|
|
465
515
|
* Find media by content hash
|
|
466
516
|
* Used for deduplication - same content = same hash
|
|
@@ -478,6 +528,7 @@ declare class MediaRepository {
|
|
|
478
528
|
* Update media metadata
|
|
479
529
|
*/
|
|
480
530
|
update(id: string, input: UpdateMediaInput): Promise<MediaItem | null>;
|
|
531
|
+
replaceReadyFile(id: string, expectedStorageKey: string, input: ReplaceReadyMediaInput): Promise<MediaItem | null>;
|
|
481
532
|
/**
|
|
482
533
|
* Delete media item
|
|
483
534
|
*/
|
|
@@ -626,11 +677,6 @@ interface PublicComment {
|
|
|
626
677
|
}
|
|
627
678
|
//#endregion
|
|
628
679
|
//#region src/database/repositories/plugin-storage.d.ts
|
|
629
|
-
/**
|
|
630
|
-
* Plugin Storage Repository
|
|
631
|
-
*
|
|
632
|
-
* Implements the StorageCollection interface for a specific plugin and collection.
|
|
633
|
-
*/
|
|
634
680
|
declare class PluginStorageRepository<T = unknown> implements StorageCollection<T> {
|
|
635
681
|
private db;
|
|
636
682
|
private pluginId;
|
|
@@ -645,6 +691,9 @@ declare class PluginStorageRepository<T = unknown> implements StorageCollection<
|
|
|
645
691
|
* Store a document
|
|
646
692
|
*/
|
|
647
693
|
put(id: string, data: T): Promise<void>;
|
|
694
|
+
getVersioned(id: string): Promise<VersionedValue<T> | null>;
|
|
695
|
+
compareAndSet(id: string, expectedRevision: string | null, data: T): Promise<ConditionalWriteResult>;
|
|
696
|
+
compareAndDelete(id: string, expectedRevision: string): Promise<ConditionalDeleteResult>;
|
|
648
697
|
/**
|
|
649
698
|
* Delete a document
|
|
650
699
|
*/
|
|
@@ -679,6 +728,7 @@ declare class PluginStorageRepository<T = unknown> implements StorageCollection<
|
|
|
679
728
|
* Count documents matching a filter
|
|
680
729
|
*/
|
|
681
730
|
count(where?: WhereClause): Promise<number>;
|
|
731
|
+
updateIf(id: string, args: unknown): Promise<UpdateIfResult<T>>;
|
|
682
732
|
}
|
|
683
733
|
//#endregion
|
|
684
734
|
//#region src/database/dialect-helpers.d.ts
|
|
@@ -702,7 +752,7 @@ type ColumnType = "TEXT" | "REAL" | "INTEGER" | "JSON";
|
|
|
702
752
|
/**
|
|
703
753
|
* Base field definition
|
|
704
754
|
*
|
|
705
|
-
* Note: schema uses z.
|
|
755
|
+
* Note: schema uses z.ZodType to accommodate optional/default wrappers
|
|
706
756
|
*/
|
|
707
757
|
interface FieldDefinition<_T = unknown> {
|
|
708
758
|
type: string;
|
|
@@ -710,7 +760,7 @@ interface FieldDefinition<_T = unknown> {
|
|
|
710
760
|
* The SQLite column type to use when storing this field
|
|
711
761
|
*/
|
|
712
762
|
columnType: ColumnType;
|
|
713
|
-
schema: z.
|
|
763
|
+
schema: z.ZodType;
|
|
714
764
|
options?: unknown;
|
|
715
765
|
ui?: FieldUIHints;
|
|
716
766
|
validation?: FieldValidation;
|
|
@@ -813,6 +863,8 @@ interface TrashedContentItem {
|
|
|
813
863
|
type: string;
|
|
814
864
|
slug: string | null;
|
|
815
865
|
status: string;
|
|
866
|
+
locale: string | null;
|
|
867
|
+
translationGroup: string | null;
|
|
816
868
|
data: Record<string, unknown>;
|
|
817
869
|
authorId: string | null;
|
|
818
870
|
createdAt: string;
|
|
@@ -943,6 +995,7 @@ declare function handleContentPermanentDelete(db: Kysely<Database>, collection:
|
|
|
943
995
|
declare function handleContentListTrashed(db: Kysely<Database>, collection: string, options?: {
|
|
944
996
|
limit?: number;
|
|
945
997
|
cursor?: string;
|
|
998
|
+
locale?: string;
|
|
946
999
|
}): Promise<ApiResult<{
|
|
947
1000
|
items: TrashedContentItem[];
|
|
948
1001
|
nextCursor?: string;
|
|
@@ -950,7 +1003,9 @@ declare function handleContentListTrashed(db: Kysely<Database>, collection: stri
|
|
|
950
1003
|
/**
|
|
951
1004
|
* Count trashed content items
|
|
952
1005
|
*/
|
|
953
|
-
declare function handleContentCountTrashed(db: Kysely<Database>, collection: string
|
|
1006
|
+
declare function handleContentCountTrashed(db: Kysely<Database>, collection: string, options?: {
|
|
1007
|
+
locale?: string;
|
|
1008
|
+
}): Promise<ApiResult<{
|
|
954
1009
|
count: number;
|
|
955
1010
|
}>>;
|
|
956
1011
|
/**
|
|
@@ -965,12 +1020,13 @@ declare function handleContentUnschedule(db: Kysely<Database>, collection: strin
|
|
|
965
1020
|
* Publish content immediately.
|
|
966
1021
|
*
|
|
967
1022
|
* Publication is one atomic content-row statement. On databases that support
|
|
968
|
-
* transactions, the
|
|
1023
|
+
* transactions, the slug redirect and the locale sync stay grouped with it.
|
|
969
1024
|
*/
|
|
970
1025
|
declare function handleContentPublish(db: Kysely<Database>, collection: string, id: string, options?: {
|
|
971
1026
|
publishedAt?: string;
|
|
972
1027
|
requireScheduledDue?: boolean;
|
|
973
1028
|
expectedScheduledAt?: string;
|
|
1029
|
+
_rev?: string;
|
|
974
1030
|
}): Promise<ApiResult<ContentResponse>>;
|
|
975
1031
|
/**
|
|
976
1032
|
* Unpublish content (revert to draft).
|
|
@@ -978,7 +1034,9 @@ declare function handleContentPublish(db: Kysely<Database>, collection: string,
|
|
|
978
1034
|
* Wrapped in a transaction — unpublish may create a draft revision
|
|
979
1035
|
* from the live version then update the status, which is multi-step.
|
|
980
1036
|
*/
|
|
981
|
-
declare function handleContentUnpublish(db: Kysely<Database>, collection: string, id: string
|
|
1037
|
+
declare function handleContentUnpublish(db: Kysely<Database>, collection: string, id: string, options?: {
|
|
1038
|
+
_rev?: string;
|
|
1039
|
+
}): Promise<ApiResult<ContentResponse>>;
|
|
982
1040
|
/**
|
|
983
1041
|
* Count scheduled content items
|
|
984
1042
|
*/
|
|
@@ -988,7 +1046,9 @@ declare function handleContentCountScheduled(db: Kysely<Database>, collection: s
|
|
|
988
1046
|
/**
|
|
989
1047
|
* Discard draft changes (revert to live version)
|
|
990
1048
|
*/
|
|
991
|
-
declare function handleContentDiscardDraft(db: Kysely<Database>, collection: string, id: string
|
|
1049
|
+
declare function handleContentDiscardDraft(db: Kysely<Database>, collection: string, id: string, options?: {
|
|
1050
|
+
_rev?: string;
|
|
1051
|
+
}): Promise<ApiResult<ContentResponse>>;
|
|
992
1052
|
/**
|
|
993
1053
|
* Compare live and draft revisions
|
|
994
1054
|
*/
|
|
@@ -1028,6 +1088,9 @@ interface CollectionDefinition {
|
|
|
1028
1088
|
};
|
|
1029
1089
|
}
|
|
1030
1090
|
type CollectionMap = Record<string, CollectionDefinition>;
|
|
1091
|
+
interface GenerateManifestOptions {
|
|
1092
|
+
db?: Kysely<Database> | null;
|
|
1093
|
+
}
|
|
1031
1094
|
/**
|
|
1032
1095
|
* Generate admin manifest from collections
|
|
1033
1096
|
*/
|
|
@@ -1037,7 +1100,7 @@ declare function generateManifest(collections: CollectionMap, plugins?: Record<s
|
|
|
1037
1100
|
component: string;
|
|
1038
1101
|
}>;
|
|
1039
1102
|
widgets?: string[];
|
|
1040
|
-
}
|
|
1103
|
+
}>, options?: GenerateManifestOptions): Promise<ManifestResponse>;
|
|
1041
1104
|
//#endregion
|
|
1042
1105
|
//#region src/api/handlers/revision.d.ts
|
|
1043
1106
|
interface RevisionListResponse {
|
|
@@ -1101,6 +1164,7 @@ declare function handleMediaCreate(db: Kysely<Database>, input: {
|
|
|
1101
1164
|
blurhash?: string;
|
|
1102
1165
|
dominantColor?: string;
|
|
1103
1166
|
authorId?: string;
|
|
1167
|
+
folderId?: string | null;
|
|
1104
1168
|
}): Promise<ApiResult<MediaResponse>>;
|
|
1105
1169
|
/**
|
|
1106
1170
|
* Update media metadata
|
|
@@ -1112,6 +1176,12 @@ declare function handleMediaUpdate(db: Kysely<Database>, id: string, input: {
|
|
|
1112
1176
|
height?: number;
|
|
1113
1177
|
folderId?: string | null;
|
|
1114
1178
|
} & FocalPointUpdate): Promise<ApiResult<MediaResponse>>;
|
|
1179
|
+
declare function handleMediaReplaceMetadata(db: Kysely<Database>, id: string, expectedStorageKey: string, input: {
|
|
1180
|
+
size: number;
|
|
1181
|
+
width: number;
|
|
1182
|
+
height: number;
|
|
1183
|
+
contentHash: string;
|
|
1184
|
+
}): Promise<ApiResult<MediaResponse>>;
|
|
1115
1185
|
/**
|
|
1116
1186
|
* Delete media item
|
|
1117
1187
|
*/
|
|
@@ -1149,6 +1219,10 @@ declare class SchemaError extends Error {
|
|
|
1149
1219
|
declare class SchemaRegistry {
|
|
1150
1220
|
private db;
|
|
1151
1221
|
constructor(db: Kysely<Database>);
|
|
1222
|
+
/**
|
|
1223
|
+
* Notify the dev typegen hook that the schema has changed.
|
|
1224
|
+
*/
|
|
1225
|
+
private notifyTypegen;
|
|
1152
1226
|
/**
|
|
1153
1227
|
* List all collections
|
|
1154
1228
|
*/
|
|
@@ -1420,12 +1494,11 @@ interface RegistryConfig {
|
|
|
1420
1494
|
* Accepts a duration string (`"24h"`, `"48h"`, `"72h"`, `"7d"`) or a
|
|
1421
1495
|
* number of seconds.
|
|
1422
1496
|
*
|
|
1423
|
-
*
|
|
1424
|
-
*
|
|
1425
|
-
* history
|
|
1426
|
-
*
|
|
1427
|
-
*
|
|
1428
|
-
* whose packages should install immediately.
|
|
1497
|
+
* A package's first release is exempt only when the aggregator
|
|
1498
|
+
* reports one release and confirms that its retained history is
|
|
1499
|
+
* complete. Missing or incomplete history keeps the holdback in
|
|
1500
|
+
* force. Use {@link minimumReleaseAgeExclude} to allowlist trusted
|
|
1501
|
+
* publishers whose packages should always install immediately.
|
|
1429
1502
|
*
|
|
1430
1503
|
* Defaults to `undefined` (no holdback). A future trust/moderation
|
|
1431
1504
|
* RFC will specify the recommended default.
|
|
@@ -1829,12 +1902,13 @@ interface EmDashConfig {
|
|
|
1829
1902
|
*
|
|
1830
1903
|
* @example
|
|
1831
1904
|
* ```ts
|
|
1905
|
+
* import { sandbox } from "@emdash-cms/cloudflare";
|
|
1832
1906
|
* import { untrustedPlugin } from "some-third-party-plugin";
|
|
1833
1907
|
*
|
|
1834
1908
|
* emdash({
|
|
1835
1909
|
* plugins: [trustedPlugin()], // runs in host
|
|
1836
1910
|
* sandboxed: [untrustedPlugin()], // runs in isolate
|
|
1837
|
-
* sandboxRunner:
|
|
1911
|
+
* sandboxRunner: sandbox(),
|
|
1838
1912
|
* })
|
|
1839
1913
|
* ```
|
|
1840
1914
|
*/
|
|
@@ -1845,8 +1919,10 @@ interface EmDashConfig {
|
|
|
1845
1919
|
*
|
|
1846
1920
|
* @example
|
|
1847
1921
|
* ```ts
|
|
1922
|
+
* import { sandbox } from "@emdash-cms/cloudflare";
|
|
1923
|
+
*
|
|
1848
1924
|
* emdash({
|
|
1849
|
-
* sandboxRunner:
|
|
1925
|
+
* sandboxRunner: sandbox(),
|
|
1850
1926
|
* })
|
|
1851
1927
|
* ```
|
|
1852
1928
|
*/
|
|
@@ -1924,7 +2000,8 @@ interface EmDashConfig {
|
|
|
1924
2000
|
* and uninstall plugins from a remote marketplace.
|
|
1925
2001
|
*
|
|
1926
2002
|
* Must be an HTTPS URL in production, or localhost/127.0.0.1 in dev.
|
|
1927
|
-
*
|
|
2003
|
+
* Installing or updating plugins requires an available `sandboxRunner`.
|
|
2004
|
+
* Browsing remains available when no runner is configured.
|
|
1928
2005
|
*
|
|
1929
2006
|
* When `registry` is also configured, the registry replaces the marketplace
|
|
1930
2007
|
* for the admin UI's browse and install flows. Existing marketplace-installed
|
|
@@ -1932,9 +2009,11 @@ interface EmDashConfig {
|
|
|
1932
2009
|
*
|
|
1933
2010
|
* @example
|
|
1934
2011
|
* ```ts
|
|
2012
|
+
* import { sandbox } from "@emdash-cms/cloudflare";
|
|
2013
|
+
*
|
|
1935
2014
|
* emdash({
|
|
1936
2015
|
* marketplace: "https://marketplace.emdashcms.com",
|
|
1937
|
-
* sandboxRunner:
|
|
2016
|
+
* sandboxRunner: sandbox(),
|
|
1938
2017
|
* })
|
|
1939
2018
|
* ```
|
|
1940
2019
|
*/
|
|
@@ -1949,13 +2028,15 @@ interface EmDashConfig {
|
|
|
1949
2028
|
*
|
|
1950
2029
|
* @example
|
|
1951
2030
|
* ```ts
|
|
2031
|
+
* import { sandbox } from "@emdash-cms/cloudflare";
|
|
2032
|
+
*
|
|
1952
2033
|
* emdash({
|
|
1953
2034
|
* experimental: {
|
|
1954
2035
|
* registry: {
|
|
1955
2036
|
* aggregatorUrl: "https://registry.emdashcms.com",
|
|
1956
2037
|
* },
|
|
1957
2038
|
* },
|
|
1958
|
-
* sandboxRunner:
|
|
2039
|
+
* sandboxRunner: sandbox(),
|
|
1959
2040
|
* })
|
|
1960
2041
|
* ```
|
|
1961
2042
|
*/
|
|
@@ -2355,6 +2436,14 @@ interface SandboxRunner {
|
|
|
2355
2436
|
* child process has crashed and hasn't been restarted yet.
|
|
2356
2437
|
*/
|
|
2357
2438
|
isHealthy(): boolean;
|
|
2439
|
+
/**
|
|
2440
|
+
* Why the runner cannot run plugins, once isAvailable() or isHealthy()
|
|
2441
|
+
* has returned false. A lowercase clause without a final period: callers
|
|
2442
|
+
* append it to their own message after a colon.
|
|
2443
|
+
*
|
|
2444
|
+
* Making this required breaks runners implemented outside this repository.
|
|
2445
|
+
*/
|
|
2446
|
+
unavailableReason?(): string;
|
|
2358
2447
|
/**
|
|
2359
2448
|
* Load a sandboxed plugin from code.
|
|
2360
2449
|
*
|
|
@@ -2385,11 +2474,11 @@ declare class SandboxUnavailableError extends Error {
|
|
|
2385
2474
|
}
|
|
2386
2475
|
/**
|
|
2387
2476
|
* Factory function type for creating sandbox runners.
|
|
2388
|
-
* Exported by platform adapters (e.g., @emdash-cms/
|
|
2477
|
+
* Exported by platform adapters (e.g., @emdash-cms/cloudflare/sandbox).
|
|
2389
2478
|
*
|
|
2390
2479
|
* @example
|
|
2391
2480
|
* ```typescript
|
|
2392
|
-
* // In @emdash-cms/
|
|
2481
|
+
* // In @emdash-cms/cloudflare/sandbox
|
|
2393
2482
|
* export const createSandboxRunner: SandboxRunnerFactory = (options) => {
|
|
2394
2483
|
* return new CloudflareSandboxRunner(options);
|
|
2395
2484
|
* };
|
|
@@ -2446,10 +2535,9 @@ declare class CronExecutor {
|
|
|
2446
2535
|
//#endregion
|
|
2447
2536
|
//#region src/plugins/context.d.ts
|
|
2448
2537
|
/**
|
|
2449
|
-
* Create HTTP access with host validation.
|
|
2538
|
+
* Create HTTP access with host validation and SSRF protection.
|
|
2450
2539
|
*
|
|
2451
|
-
* Uses redirect: "manual" to re-validate each redirect target
|
|
2452
|
-
* the allowedHosts list, preventing redirects to unauthorized hosts.
|
|
2540
|
+
* Uses redirect: "manual" to re-validate each redirect target before dispatch.
|
|
2453
2541
|
*/
|
|
2454
2542
|
declare function createHttpAccess(pluginId: string, allowedHosts: string[]): HttpAccess;
|
|
2455
2543
|
/**
|
|
@@ -2625,16 +2713,18 @@ declare class HookPipeline {
|
|
|
2625
2713
|
private runLifecycleHook;
|
|
2626
2714
|
/**
|
|
2627
2715
|
* Run content:beforeSave hooks
|
|
2628
|
-
* Returns modified content from the pipeline
|
|
2716
|
+
* Returns modified content from the pipeline. `id` is the existing item's
|
|
2717
|
+
* ID when updating. `actor` is the authenticated user that triggered the
|
|
2718
|
+
* save, when one is available.
|
|
2629
2719
|
*/
|
|
2630
|
-
runContentBeforeSave(content: Record<string, unknown>, collection: string, isNew: boolean): Promise<{
|
|
2720
|
+
runContentBeforeSave(content: Record<string, unknown>, collection: string, isNew: boolean, id?: string, actor?: ActorInfo): Promise<{
|
|
2631
2721
|
content: Record<string, unknown>;
|
|
2632
2722
|
results: HookResult<Record<string, unknown>>[];
|
|
2633
2723
|
}>;
|
|
2634
2724
|
/**
|
|
2635
2725
|
* Run content:afterSave hooks
|
|
2636
2726
|
*/
|
|
2637
|
-
runContentAfterSave(content: Record<string, unknown>, collection: string, isNew: boolean): Promise<HookResult<void>[]>;
|
|
2727
|
+
runContentAfterSave(content: Record<string, unknown>, collection: string, isNew: boolean, actor?: ActorInfo): Promise<HookResult<void>[]>;
|
|
2638
2728
|
/**
|
|
2639
2729
|
* Run content:beforeDelete hooks
|
|
2640
2730
|
* Returns whether deletion is allowed
|
|
@@ -3525,6 +3615,7 @@ declare class EmDashRuntime {
|
|
|
3525
3615
|
locale?: string;
|
|
3526
3616
|
translationOf?: string;
|
|
3527
3617
|
taxonomies?: Record<string, string[]>;
|
|
3618
|
+
actor?: ActorInfo;
|
|
3528
3619
|
}): Promise<{
|
|
3529
3620
|
success: false;
|
|
3530
3621
|
error: {
|
|
@@ -3575,6 +3666,11 @@ declare class EmDashRuntime {
|
|
|
3575
3666
|
locale?: string; /** Replace the previous autosave revision after staging this save. */
|
|
3576
3667
|
skipRevision?: boolean;
|
|
3577
3668
|
_rev?: string;
|
|
3669
|
+
/**
|
|
3670
|
+
* Acting user for this save. Used for revision attribution and
|
|
3671
|
+
* passed to content hooks; never changes entry ownership.
|
|
3672
|
+
*/
|
|
3673
|
+
actor?: ActorInfo;
|
|
3578
3674
|
}): Promise<{
|
|
3579
3675
|
success: false;
|
|
3580
3676
|
error: {
|
|
@@ -3622,6 +3718,7 @@ declare class EmDashRuntime {
|
|
|
3622
3718
|
handleContentListTrashed(collection: string, params?: {
|
|
3623
3719
|
cursor?: string;
|
|
3624
3720
|
limit?: number;
|
|
3721
|
+
locale?: string;
|
|
3625
3722
|
}): Promise<ApiResult<{
|
|
3626
3723
|
items: TrashedContentItem[];
|
|
3627
3724
|
nextCursor?: string;
|
|
@@ -3634,7 +3731,9 @@ declare class EmDashRuntime {
|
|
|
3634
3731
|
deleted: true;
|
|
3635
3732
|
id: string;
|
|
3636
3733
|
}>>;
|
|
3637
|
-
handleContentCountTrashed(collection: string
|
|
3734
|
+
handleContentCountTrashed(collection: string, params?: {
|
|
3735
|
+
locale?: string;
|
|
3736
|
+
}): Promise<ApiResult<{
|
|
3638
3737
|
count: number;
|
|
3639
3738
|
}>>;
|
|
3640
3739
|
handleContentDuplicate(collection: string, id: string, authorId?: string): Promise<ApiResult<{
|
|
@@ -3644,14 +3743,19 @@ declare class EmDashRuntime {
|
|
|
3644
3743
|
publishedAt?: string;
|
|
3645
3744
|
requireScheduledDue?: boolean;
|
|
3646
3745
|
expectedScheduledAt?: string;
|
|
3746
|
+
_rev?: string;
|
|
3747
|
+
}): Promise<ApiResult<ContentResponse>>;
|
|
3748
|
+
handleContentUnpublish(collection: string, id: string, options?: {
|
|
3749
|
+
_rev?: string;
|
|
3647
3750
|
}): Promise<ApiResult<ContentResponse>>;
|
|
3648
|
-
handleContentUnpublish(collection: string, id: string): Promise<ApiResult<ContentResponse>>;
|
|
3649
3751
|
handleContentSchedule(collection: string, id: string, scheduledAt: string): Promise<ApiResult<ContentResponse>>;
|
|
3650
3752
|
handleContentUnschedule(collection: string, id: string): Promise<ApiResult<ContentResponse>>;
|
|
3651
3753
|
handleContentCountScheduled(collection: string): Promise<ApiResult<{
|
|
3652
3754
|
count: number;
|
|
3653
3755
|
}>>;
|
|
3654
|
-
handleContentDiscardDraft(collection: string, id: string
|
|
3756
|
+
handleContentDiscardDraft(collection: string, id: string, options?: {
|
|
3757
|
+
_rev?: string;
|
|
3758
|
+
}): Promise<ApiResult<ContentResponse>>;
|
|
3655
3759
|
handleContentCompare(collection: string, id: string): Promise<ApiResult<{
|
|
3656
3760
|
hasChanges: boolean;
|
|
3657
3761
|
live: Record<string, unknown> | null;
|
|
@@ -3687,6 +3791,7 @@ declare class EmDashRuntime {
|
|
|
3687
3791
|
blurhash?: string;
|
|
3688
3792
|
dominantColor?: string;
|
|
3689
3793
|
authorId?: string;
|
|
3794
|
+
folderId?: string | null;
|
|
3690
3795
|
}): Promise<ApiResult<MediaResponse>>;
|
|
3691
3796
|
handleMediaUpdate(id: string, input: {
|
|
3692
3797
|
alt?: string;
|
|
@@ -3697,6 +3802,12 @@ declare class EmDashRuntime {
|
|
|
3697
3802
|
focalX?: number | null;
|
|
3698
3803
|
focalY?: number | null;
|
|
3699
3804
|
}): Promise<ApiResult<MediaResponse>>;
|
|
3805
|
+
handleMediaReplaceMetadata(id: string, expectedStorageKey: string, input: {
|
|
3806
|
+
size: number;
|
|
3807
|
+
width: number;
|
|
3808
|
+
height: number;
|
|
3809
|
+
contentHash: string;
|
|
3810
|
+
}): Promise<ApiResult<MediaResponse>>;
|
|
3700
3811
|
handleMediaDelete(id: string): Promise<ApiResult<{
|
|
3701
3812
|
deleted: true;
|
|
3702
3813
|
storageKey: string;
|
|
@@ -3706,6 +3817,7 @@ declare class EmDashRuntime {
|
|
|
3706
3817
|
}): Promise<ApiResult<RevisionListResponse>>;
|
|
3707
3818
|
handleRevisionGet(revisionId: string): Promise<ApiResult<RevisionResponse>>;
|
|
3708
3819
|
handleRevisionRestore(revisionId: string, callerUserId: string): Promise<ApiResult<ContentResponse>>;
|
|
3820
|
+
private findSyncedSiblingsForUsageRefresh;
|
|
3709
3821
|
private refreshContentUsageAfterSuccessfulWrite;
|
|
3710
3822
|
private deleteContentUsageAfterSuccessfulPermanentDelete;
|
|
3711
3823
|
/**
|
|
@@ -3895,11 +4007,6 @@ declare function getSection(slug: string): Promise<Section | null>;
|
|
|
3895
4007
|
declare function getSections(options?: GetSectionsOptions): Promise<FindManyResult<Section>>;
|
|
3896
4008
|
//#endregion
|
|
3897
4009
|
//#region src/content/converters/types.d.ts
|
|
3898
|
-
/**
|
|
3899
|
-
* Portable Text Types
|
|
3900
|
-
*
|
|
3901
|
-
* Defines the structure of Portable Text blocks used in EmDash.
|
|
3902
|
-
*/
|
|
3903
4010
|
/**
|
|
3904
4011
|
* Base span (inline text)
|
|
3905
4012
|
*/
|
|
@@ -3961,6 +4068,7 @@ interface PortableTextImageBlock {
|
|
|
3961
4068
|
displayWidth?: number;
|
|
3962
4069
|
/** Display height for this instance (overrides original) */
|
|
3963
4070
|
displayHeight?: number;
|
|
4071
|
+
alignment?: "left" | "center" | "right" | "wide" | "full";
|
|
3964
4072
|
}
|
|
3965
4073
|
/**
|
|
3966
4074
|
* A single image inside a gallery block. Mirrors the shape produced by
|
|
@@ -4024,7 +4132,7 @@ interface PortableTextUnknownBlock {
|
|
|
4024
4132
|
/**
|
|
4025
4133
|
* Any Portable Text block
|
|
4026
4134
|
*/
|
|
4027
|
-
type PortableTextBlock = PortableTextTextBlock | PortableTextImageBlock | PortableTextGalleryBlock | PortableTextCodeBlock | PortableTextHtmlBlock | PortableTextUnknownBlock;
|
|
4135
|
+
type PortableTextBlock = PortableTextTextBlock | PortableTextImageBlock | PortableTextGalleryBlock | PortableTextCodeBlock | PortableTextHtmlBlock | PortableTextTableBlock | PortableTextUnknownBlock;
|
|
4028
4136
|
/**
|
|
4029
4137
|
* ProseMirror JSON types (simplified for TipTap)
|
|
4030
4138
|
*/
|
|
@@ -4051,10 +4159,18 @@ interface ProseMirrorDocument {
|
|
|
4051
4159
|
declare function prosemirrorToPortableText(doc: ProseMirrorDocument): PortableTextBlock[];
|
|
4052
4160
|
//#endregion
|
|
4053
4161
|
//#region src/content/converters/portable-text-to-prosemirror.d.ts
|
|
4054
|
-
|
|
4055
|
-
|
|
4056
|
-
|
|
4057
|
-
|
|
4162
|
+
interface PortableTextToProsemirrorOptions {
|
|
4163
|
+
/**
|
|
4164
|
+
* Preserve custom blocks and Portable Text keys through a ProseMirror round trip.
|
|
4165
|
+
* Add `portableTextIdentityExtensions` to the TipTap schema when this is enabled.
|
|
4166
|
+
*/
|
|
4167
|
+
preserveIdentity?: boolean;
|
|
4168
|
+
}
|
|
4169
|
+
/** Convert Portable Text to a ProseMirror document. */
|
|
4170
|
+
declare function portableTextToProsemirror(blocks: PortableTextBlock[], options?: PortableTextToProsemirrorOptions): ProseMirrorDocument;
|
|
4171
|
+
//#endregion
|
|
4172
|
+
//#region src/content/converters/portable-text-identity.d.ts
|
|
4173
|
+
declare const portableTextIdentityExtensions: Extensions;
|
|
4058
4174
|
//#endregion
|
|
4059
4175
|
//#region src/utils/hash.d.ts
|
|
4060
4176
|
/**
|
|
@@ -4782,7 +4898,7 @@ declare function definePlugin<TStorage extends PluginStorageConfig>(definition:
|
|
|
4782
4898
|
* to make them consistent (declaredAccess authoritative when present). Kept a
|
|
4783
4899
|
* plain object (no `.transform`) because callers `.pick()`/`.extend()` it.
|
|
4784
4900
|
*/
|
|
4785
|
-
declare const pluginManifestSchema: z$1.ZodObject<{
|
|
4901
|
+
declare const pluginManifestSchema$1: z$1.ZodObject<{
|
|
4786
4902
|
id: z$1.ZodString;
|
|
4787
4903
|
version: z$1.ZodString;
|
|
4788
4904
|
declaredAccess: z$1.ZodOptional<z$1.ZodObject<{
|
|
@@ -4985,13 +5101,13 @@ declare const pluginManifestSchema: z$1.ZodObject<{
|
|
|
4985
5101
|
string: "string";
|
|
4986
5102
|
number: "number";
|
|
4987
5103
|
boolean: "boolean";
|
|
4988
|
-
slug: "slug";
|
|
4989
5104
|
file: "file";
|
|
4990
|
-
image: "image";
|
|
4991
5105
|
datetime: "datetime";
|
|
5106
|
+
slug: "slug";
|
|
4992
5107
|
text: "text";
|
|
4993
|
-
integer: "integer";
|
|
4994
5108
|
select: "select";
|
|
5109
|
+
image: "image";
|
|
5110
|
+
integer: "integer";
|
|
4995
5111
|
multiSelect: "multiSelect";
|
|
4996
5112
|
portableText: "portableText";
|
|
4997
5113
|
reference: "reference";
|
|
@@ -5006,7 +5122,7 @@ declare const pluginManifestSchema: z$1.ZodObject<{
|
|
|
5006
5122
|
}, z$1.core.$strip>>>;
|
|
5007
5123
|
}, z$1.core.$strip>;
|
|
5008
5124
|
}, z$1.core.$strip>;
|
|
5009
|
-
type ValidatedPluginManifest = z$1.infer<typeof pluginManifestSchema>;
|
|
5125
|
+
type ValidatedPluginManifest = z$1.infer<typeof pluginManifestSchema$1>;
|
|
5010
5126
|
//#endregion
|
|
5011
5127
|
//#region src/plugins/save-rejection.d.ts
|
|
5012
5128
|
/**
|
|
@@ -5101,14 +5217,14 @@ declare class PluginManager {
|
|
|
5101
5217
|
/**
|
|
5102
5218
|
* Run content:beforeSave hooks across all active plugins
|
|
5103
5219
|
*/
|
|
5104
|
-
runContentBeforeSave(content: Record<string, unknown>, collection: string, isNew: boolean): Promise<{
|
|
5220
|
+
runContentBeforeSave(content: Record<string, unknown>, collection: string, isNew: boolean, id?: string, actor?: ActorInfo): Promise<{
|
|
5105
5221
|
content: Record<string, unknown>;
|
|
5106
5222
|
results: HookResult<Record<string, unknown>>[];
|
|
5107
5223
|
}>;
|
|
5108
5224
|
/**
|
|
5109
5225
|
* Run content:afterSave hooks across all active plugins
|
|
5110
5226
|
*/
|
|
5111
|
-
runContentAfterSave(content: Record<string, unknown>, collection: string, isNew: boolean): Promise<HookResult<void>[]>;
|
|
5227
|
+
runContentAfterSave(content: Record<string, unknown>, collection: string, isNew: boolean, actor?: ActorInfo): Promise<HookResult<void>[]>;
|
|
5112
5228
|
/**
|
|
5113
5229
|
* Run content:beforeDelete hooks across all active plugins
|
|
5114
5230
|
*/
|
|
@@ -5315,6 +5431,37 @@ declare class NoopSandboxRunner implements SandboxRunner {
|
|
|
5315
5431
|
*/
|
|
5316
5432
|
declare function createNoopSandboxRunner(_options?: SandboxOptions): SandboxRunner;
|
|
5317
5433
|
//#endregion
|
|
5434
|
+
//#region src/plugins/storage-query.d.ts
|
|
5435
|
+
/**
|
|
5436
|
+
* Error thrown when a guarded `updateIf` loses a concurrent race by aborting
|
|
5437
|
+
* rather than resolving to `{ applied: false }`.
|
|
5438
|
+
*
|
|
5439
|
+
* `updateIf`'s `{ applied: false }` contract (row absent OR guard failed)
|
|
5440
|
+
* assumes READ COMMITTED — the default. There, a losing concurrent writer
|
|
5441
|
+
* re-evaluates the guard against the winner's freshly committed row and
|
|
5442
|
+
* cleanly resolves to `{ applied: false }`. Two aborts escape that contract:
|
|
5443
|
+
*
|
|
5444
|
+
* - `40001` (serialization_failure), only above READ COMMITTED, where the
|
|
5445
|
+
* loser cannot re-read against a newer snapshot.
|
|
5446
|
+
* - `40P01` (deadlock_detected), at any isolation level, when transactions
|
|
5447
|
+
* take row locks in opposite order.
|
|
5448
|
+
*
|
|
5449
|
+
* This error surfaces either abort so the caller can retry the write.
|
|
5450
|
+
*
|
|
5451
|
+
* The no-oversell SAFETY invariant holds either way: a losing writer NEVER
|
|
5452
|
+
* applies its update — it either sees `{ applied: false }` or throws here.
|
|
5453
|
+
*/
|
|
5454
|
+
declare class StorageSerializationError extends Error {
|
|
5455
|
+
readonly code = "STORAGE_SERIALIZATION_FAILURE";
|
|
5456
|
+
readonly retryable = true;
|
|
5457
|
+
/** The Postgres SQLSTATE that triggered this error (`40001` / `40P01`). */
|
|
5458
|
+
readonly sqlState?: string;
|
|
5459
|
+
constructor(message: string, options?: {
|
|
5460
|
+
cause?: unknown;
|
|
5461
|
+
sqlState?: string;
|
|
5462
|
+
});
|
|
5463
|
+
}
|
|
5464
|
+
//#endregion
|
|
5318
5465
|
//#region src/preview/tokens.d.ts
|
|
5319
5466
|
/**
|
|
5320
5467
|
* Preview token generation and verification
|
|
@@ -5553,6 +5700,16 @@ declare function getSiteSetting<K extends SiteSettingKey>(key: K): Promise<SiteS
|
|
|
5553
5700
|
* ```
|
|
5554
5701
|
*/
|
|
5555
5702
|
declare function getSiteSettings(): Promise<Partial<SiteSettings>>;
|
|
5703
|
+
/**
|
|
5704
|
+
* Get all site settings with a Workers edge-cache hint.
|
|
5705
|
+
*
|
|
5706
|
+
* Use the returned `cacheHint` with `Astro.cache.set()` so pages that render
|
|
5707
|
+
* settings can be purged automatically when site settings change.
|
|
5708
|
+
*/
|
|
5709
|
+
declare function getSiteSettingsWithCacheHint(): Promise<{
|
|
5710
|
+
data: Partial<SiteSettings>;
|
|
5711
|
+
cacheHint: CacheHint;
|
|
5712
|
+
}>;
|
|
5556
5713
|
/**
|
|
5557
5714
|
* Set site settings (internal function used by admin API)
|
|
5558
5715
|
*
|
|
@@ -5749,6 +5906,16 @@ declare function getMenus(options?: MenuQueryOptions): Promise<Array<{
|
|
|
5749
5906
|
label: string;
|
|
5750
5907
|
locale: string;
|
|
5751
5908
|
}>>;
|
|
5909
|
+
/**
|
|
5910
|
+
* Get a menu by name with a Workers edge-cache hint.
|
|
5911
|
+
*
|
|
5912
|
+
* Use the returned `cacheHint` with `Astro.cache.set()` so pages that render
|
|
5913
|
+
* this menu can be purged automatically when the menu is edited.
|
|
5914
|
+
*/
|
|
5915
|
+
declare function getMenuWithCacheHint(name: string, options?: MenuQueryOptions): Promise<{
|
|
5916
|
+
data: Menu | null;
|
|
5917
|
+
cacheHint: CacheHint;
|
|
5918
|
+
}>;
|
|
5752
5919
|
//#endregion
|
|
5753
5920
|
//#region src/bylines/index.d.ts
|
|
5754
5921
|
/**
|
|
@@ -5951,12 +6118,27 @@ declare function getTaxonomyDef(name: string, options?: TaxonomyQueryOptions): P
|
|
|
5951
6118
|
* the term list with callers that do.
|
|
5952
6119
|
*/
|
|
5953
6120
|
declare function getTaxonomyTerms(taxonomyName: string, options?: TaxonomyTermsOptions): Promise<TaxonomyTerm[]>;
|
|
6121
|
+
/**
|
|
6122
|
+
* Get all terms of a taxonomy with a Workers edge-cache hint.
|
|
6123
|
+
*
|
|
6124
|
+
* Use the returned `cacheHint` with `Astro.cache.set()` so pages that render
|
|
6125
|
+
* a taxonomy facet can be purged automatically when taxonomy terms change.
|
|
6126
|
+
*/
|
|
6127
|
+
declare function getTaxonomyTermsWithCacheHint(taxonomyName: string, options?: TaxonomyTermsOptions): Promise<{
|
|
6128
|
+
data: TaxonomyTerm[];
|
|
6129
|
+
cacheHint: CacheHint;
|
|
6130
|
+
}>;
|
|
5954
6131
|
/**
|
|
5955
6132
|
* Get a single term by (taxonomy, slug). Honours the fallback chain — if the
|
|
5956
6133
|
* slug exists in a fallback locale, we return that row (useful for deep-linking
|
|
5957
6134
|
* to a term page when the translation is missing).
|
|
6135
|
+
*
|
|
6136
|
+
* The term row and its visible-entry count are loaded and cached separately: the
|
|
6137
|
+
* row depends only on the taxonomy epoch, while the count adds an aggregate over
|
|
6138
|
+
* the whole assignment pivot and every counted collection's content epoch. A
|
|
6139
|
+
* caller that renders no count passes `includeCounts: false` and skips it.
|
|
5958
6140
|
*/
|
|
5959
|
-
declare function getTerm(taxonomyName: string, slug: string, options?:
|
|
6141
|
+
declare function getTerm(taxonomyName: string, slug: string, options?: TaxonomyTermsOptions): Promise<TaxonomyTerm | null>;
|
|
5960
6142
|
/**
|
|
5961
6143
|
* Terms assigned to a content entry, resolved into the active locale and then
|
|
5962
6144
|
* the configured default locale.
|
|
@@ -6040,6 +6222,16 @@ interface ReorderWidgetsInput {
|
|
|
6040
6222
|
* row with null widget columns, which we skip when mapping.
|
|
6041
6223
|
*/
|
|
6042
6224
|
declare function getWidgetArea(name: string): Promise<WidgetArea | null>;
|
|
6225
|
+
/**
|
|
6226
|
+
* Get a widget area by name with a Workers edge-cache hint.
|
|
6227
|
+
*
|
|
6228
|
+
* Use the returned `cacheHint` with `Astro.cache.set()` so pages that render
|
|
6229
|
+
* this widget area can be purged automatically when its widgets change.
|
|
6230
|
+
*/
|
|
6231
|
+
declare function getWidgetAreaWithCacheHint(name: string): Promise<{
|
|
6232
|
+
data: WidgetArea | null;
|
|
6233
|
+
cacheHint: CacheHint;
|
|
6234
|
+
}>;
|
|
6043
6235
|
/**
|
|
6044
6236
|
* Get all widget areas with their widgets
|
|
6045
6237
|
*/
|
|
@@ -6449,5 +6641,13 @@ declare function extractPlainText(blocks: PortableTextBlock[] | string | null |
|
|
|
6449
6641
|
*/
|
|
6450
6642
|
declare function extractSearchableFields(entry: Record<string, unknown>, fields: string[]): Record<string, string>;
|
|
6451
6643
|
//#endregion
|
|
6452
|
-
|
|
6453
|
-
|
|
6644
|
+
//#region src/registry/config.d.ts
|
|
6645
|
+
type RegistryConfigurationErrorCode = "REGISTRY_AGGREGATOR_URL_REQUIRED" | "REGISTRY_AGGREGATOR_URL_INVALID" | "REGISTRY_AGGREGATOR_URL_FORBIDDEN" | "REGISTRY_MINIMUM_RELEASE_AGE_INVALID" | "REGISTRY_MINIMUM_RELEASE_AGE_EXCLUDE_INVALID";
|
|
6646
|
+
type RegistryConfigurationField = "experimental.registry.aggregatorUrl" | "experimental.registry.policy.minimumReleaseAge" | "experimental.registry.policy.minimumReleaseAgeExclude";
|
|
6647
|
+
interface ManifestRegistryConfigurationError {
|
|
6648
|
+
code: RegistryConfigurationErrorCode;
|
|
6649
|
+
field: RegistryConfigurationField;
|
|
6650
|
+
}
|
|
6651
|
+
//#endregion
|
|
6652
|
+
export { getMenus as $, getSection as $n, handleMediaList as $r, invalidateTaxonomyObjectCache as $t, WidgetArea as A, file as Ai, isSafeHref as An, SerializedRequest as Ar, StorageSerializationError as At, getTerm as B, CreateMediaInput as Bi, PortableTextImageBlock as Bn, StorageDescriptor as Br, pluginManifestSchema$1 as Bt, getWidgetComponents as C, handleContentSchedule as Ci, CollectionFilter$1 as Cn, SandboxRouteErrorCode as Cr, GeneratePreviewTokenOptions as Ct, ReorderWidgetsInput as D, handleContentUpdate as Di, WhereValue as Dn, SandboxRunnerFactory as Dr, generatePreviewToken as Dt, PropDef as E, handleContentUnschedule as Ei, WhereRange as En, SandboxRunner as Er, VerifyPreviewTokenResult as Et, getEntryTerms as F, ImageValue as Fi, PortableTextToProsemirrorOptions as Fn, EmDashConfig as Fr, PluginManager as Ft, TaxonomyTerm as G, EmDashConfigurationErrorCode as Gi, PortableTextTableBlock$1 as Gn, handleMediaUsageProgress as Gr, contentNamespace as Gt, invalidateTermCache as H, MediaRepository as Hi, PortableTextMarkDef as Hn, SchemaError as Hr, CacheNamespace as Ht, getTaxonomyDef as I, PortableTextBlock$1 as Ii, portableTextToProsemirror as In, PluginDescriptor as Ir, createPluginManager as It, getByline as J, PortableTextTextBlock as Jn, MediaListResponse as Jr, invalidateCollectionCache as Jt, TaxonomyTermRow as K, DatabaseConfig as Ki, PortableTextTableCell as Kn, handleMediaUsageRepair as Kr, contentNamespaces as Kt, getTaxonomyDefs as L, CompoundSelectLimitedAdapter as Li, prosemirrorToPortableText as Ln, getStoredConfig as Lr, ContentSaveRejectedError as Lt, WidgetType as M, FieldDefinition as Mi, computeContentHash as Mn, createSandboxRouteErrorEnvelope as Mr, SandboxNotAvailableError as Mt, getAllTermsForEntries as N, FieldUIHints as Ni, hashString as Nn, getSandboxRouteErrorDetails as Nr, createNoopSandboxRunner as Nt, UpdateWidgetInput as O, portableText as Oi, emdashLoader as On, SandboxUnavailableError as Or, parseContentId as Ot, getEntriesByTerm as P, FileValue as Pi, portableTextIdentityExtensions as Pn, getSandboxRouteErrorEnvelope as Pr, NodeCronScheduler as Pt, getMenuWithCacheHint as Q, ProseMirrorNode as Qn, handleMediaGet as Qr, invalidateSchemaObjectCache as Qt, getTaxonomyTerms as R, PluginStorageRepository as Ri, PortableTextCodeBlock as Rn, LocalStorageConfig as Rr, isContentSaveRejection as Rt, getWidgetAreas as S, handleContentRestore as Si, createNoop as Sn, SandboxOptions as Sr, getPreviewUrl as St, CreateWidgetInput as T, handleContentUnpublish as Ti, EntryFilter as Tn, SandboxRouteErrorEnvelope as Tr, VerifyPreviewTokenOptions as Tt, CreateTermInput as U, ContentRepository as Ui, PortableTextSpan as Un, SchemaRegistry as Ur, CachedQueryOptions as Ut, getTermsForEntries as V, MediaItem as Vi, PortableTextLinkMark as Vn, getCollectionInfo as Vr, definePlugin as Vt, TaxonomyDef as W, EmDashConfigurationError as Wi, PortableTextTableAlignment as Wn, handleMediaUsageActivationAdvance as Wr, cachedQuery as Wt, getEntriesByByline as X, ProseMirrorDocument as Xn, handleMediaCreate as Xr, invalidateMenuObjectCache as Xt, getBylineBySlug as Y, PortableTextUnknownBlock as Yn, MediaResponse as Yr, invalidateCommentObjectCache as Yt, getMenu as Z, ProseMirrorMark as Zn, handleMediaDelete as Zr, invalidateObjectCache as Zt, SearchTokenizer as _, handleContentGetIncludingTrashed as _i, resolveEmDashPath as _n, createHookPipeline as _r, setSiteSettings as _t, getSuggestions as a, handleRevisionList as ai, ContentEntry as an, UpdateSectionInput as ar, ReorderMenuItemsInput as at, getWidgetArea as b, handleContentPermanentDelete as bi, FieldAnnotation as bn, SandboxEmailMessage as br, GetPreviewUrlOptions as bt, searchWithDb as c, handleContentAuthors as ci, EntryResult as cn, PublishedRef as cr, GetCommentsOptions as ct, SEARCH_TOKENIZERS as d, handleContentCountTrashed as di, TranslationSummary as dn, PluginRouteError as dr, getComments as dt, handleMediaReplaceMetadata as ei, WaitUntilFn as en, getSections as er, CreateMenuInput as et, SearchConfig as f, handleContentCreate as fi, TranslationsResult as fn, RouteCallerInput as fr, getPluginSetting as ft, SearchStats as g, handleContentGet as gi, getTranslations as gn, HookResult as gr, getSiteSettingsWithCacheHint as gt, SearchResult as h, handleContentDuplicate as hi, getEmDashEntry as hn, HookPipeline as hr, getSiteSettings as ht, getSearchStats as i, handleRevisionGet as ii, CollectionResult as in, SectionSource as ir, MenuItemType as it, WidgetComponentDef as j, image as ji, sanitizeHref as jn, createSandboxRouteError as jr, NoopSandboxRunner as jt, Widget as k, reference as ki, getDb as kn, SandboxedPluginInstance as kr, verifyPreviewToken as kt, FTSManager as l, handleContentCompare as li, InferCollectionData as ln, CronScheduler as lr, GetCommentsResult as lt, SearchResponse as m, handleContentDiscardDraft as mi, getEmDashCollection as mn, EmailPipeline as mr, getSiteSetting as mt, extractPlainText as n, RevisionListResponse as ni, CacheHint as nn, GetSectionsOptions as nr, Menu as nt, search as o, handleRevisionRestore as oi, EditFieldMeta as on, EmDashRuntime as or, UpdateMenuInput as ot, SearchOptions as p, handleContentDelete as pi, getEditMeta as pn, RouteMeta as pr, getPluginSettings as pt, UpdateTermInput as q, EmDashDatabaseError as qi, PortableTextTableRow as qn, markContentMediaUsageCollectionStaleSafely as qr, invalidateBylineObjectCache as qt, extractSearchableFields as r, RevisionResponse as ri, CollectionFilter as rn, Section as rr, MenuItem as rt, searchCollection as s, generateManifest as si, EmDashCollections as sn, SandboxedPluginEntry as sr, UpdateMenuItemInput as st, ManifestRegistryConfigurationError as t, handleMediaUpdate as ti, after as tn, CreateSectionInput as tr, CreateMenuItemInput as tt, CollectionSearchOptions as u, handleContentCountScheduled as ui, ResolvePathResult as un, SystemCleanupFn as ur, getCommentCount as ut, SuggestOptions as v, handleContentList as vi, CMSAnnotation as vn, createHttpAccess as vr, getPreviewToken as vt, CreateWidgetAreaInput as w, handleContentTranslations as wi, EntryData as wn, SandboxRouteErrorDetails as wr, PreviewTokenPayload as wt, getWidgetAreaWithCacheHint as x, handleContentPublish as xi, createEditable as xn, SandboxEmailSendCallback as xr, buildPreviewUrl as xt, Suggestion as y, handleContentListTrashed as yi, EditProxy as yn, createUnrestrictedHttpAccess as yr, isPreviewRequest as yt, getTaxonomyTermsWithCacheHint as z, UserRepository as zi, PortableTextHtmlBlock as zn, S3StorageConfig as zr, ValidatedPluginManifest as zt };
|
|
6653
|
+
//# sourceMappingURL=config-CGAhyOjP.d.mts.map
|