dineway 0.2.20 → 0.2.21
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/{activity-Dq9zDvAK.mjs → activity-Bm5x0dik.mjs} +2 -2
- package/dist/{activity-events-iGYnf7TK.mjs → activity-events-DpvhcjTP.mjs} +1 -1
- package/dist/{allowed-origins-VLgv2PL1.mjs → allowed-origins-M5Rcl6XL.mjs} +1 -1
- package/dist/api/route-utils.d.mts +10 -9
- package/dist/api/route-utils.mjs +13 -13
- package/dist/api/schemas/index.d.mts +1 -1
- package/dist/api/schemas/index.mjs +3 -3
- package/dist/{api-DIdotXfH.mjs → api-Bbtpvq2-.mjs} +15 -15
- package/dist/{api-tokens-C4K9eocv.mjs → api-tokens-BFgXg0l2.mjs} +1 -1
- package/dist/{apply-CPcb8oiS.mjs → apply-Hodkn7PL.mjs} +20 -18
- package/dist/astro/index.d.mts +11 -10
- package/dist/astro/index.mjs +3 -3
- package/dist/astro/middleware/auth.d.mts +9 -8
- package/dist/astro/middleware/auth.mjs +6 -6
- package/dist/astro/middleware/redirect.mjs +5 -5
- package/dist/astro/middleware/request-context.mjs +2 -2
- package/dist/astro/middleware/seed.d.mts +1 -1
- package/dist/astro/middleware/seed.mjs +1 -1
- package/dist/astro/middleware/setup.mjs +1 -1
- package/dist/astro/middleware.mjs +111 -98
- package/dist/astro/routes/api/admin/allowed-domains/_domain_.mjs +5 -5
- package/dist/astro/routes/api/admin/allowed-domains/index.mjs +5 -5
- package/dist/astro/routes/api/admin/api-tokens/_id_.mjs +4 -4
- package/dist/astro/routes/api/admin/api-tokens/index.mjs +6 -6
- package/dist/astro/routes/api/admin/briefing.mjs +16 -16
- package/dist/astro/routes/api/admin/byline-fields/_slug_/usage.mjs +3 -3
- package/dist/astro/routes/api/admin/byline-fields/_slug_.mjs +7 -7
- package/dist/astro/routes/api/admin/byline-fields/index.mjs +7 -7
- package/dist/astro/routes/api/admin/byline-fields/reorder.mjs +7 -7
- package/dist/astro/routes/api/admin/bylines/_id_/index.mjs +13 -13
- package/dist/astro/routes/api/admin/bylines/_id_/translations.mjs +13 -13
- package/dist/astro/routes/api/admin/bylines/index.mjs +13 -13
- package/dist/astro/routes/api/admin/comments/_id_/status.mjs +11 -11
- package/dist/astro/routes/api/admin/comments/_id_.mjs +5 -5
- package/dist/astro/routes/api/admin/comments/bulk.mjs +9 -9
- package/dist/astro/routes/api/admin/comments/counts.mjs +5 -5
- package/dist/astro/routes/api/admin/comments/index.mjs +9 -9
- package/dist/astro/routes/api/admin/context/_id_/history.mjs +23 -23
- package/dist/astro/routes/api/admin/context/_id_/index.mjs +23 -23
- package/dist/astro/routes/api/admin/context/_id_/review.mjs +28 -28
- package/dist/astro/routes/api/admin/context/_id_/supersede.mjs +28 -28
- package/dist/astro/routes/api/admin/context/diff.mjs +27 -27
- package/dist/astro/routes/api/admin/context/index.mjs +28 -28
- package/dist/astro/routes/api/admin/context/stale.mjs +27 -27
- package/dist/astro/routes/api/admin/hitl-requests/_id_/index.mjs +23 -23
- package/dist/astro/routes/api/admin/hitl-requests/_id_/resolve.mjs +27 -27
- package/dist/astro/routes/api/admin/hitl-requests/index.mjs +27 -27
- package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.mjs +24 -24
- package/dist/astro/routes/api/admin/hooks/exclusive/index.mjs +2 -2
- package/dist/astro/routes/api/admin/oauth-clients/_id_.mjs +6 -6
- package/dist/astro/routes/api/admin/oauth-clients/index.mjs +6 -6
- package/dist/astro/routes/api/admin/plugins/_id_/disable.mjs +53 -52
- package/dist/astro/routes/api/admin/plugins/_id_/enable.mjs +53 -52
- package/dist/astro/routes/api/admin/plugins/_id_/index.mjs +45 -44
- package/dist/astro/routes/api/admin/plugins/_id_/uninstall.mjs +52 -51
- package/dist/astro/routes/api/admin/plugins/_id_/update.mjs +52 -51
- package/dist/astro/routes/api/admin/plugins/index.mjs +45 -44
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.mjs +2 -2
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.mjs +45 -44
- package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.mjs +52 -51
- package/dist/astro/routes/api/admin/plugins/marketplace/index.mjs +45 -44
- package/dist/astro/routes/api/admin/plugins/updates.mjs +45 -44
- package/dist/astro/routes/api/admin/review-requests/_id_/index.mjs +5 -5
- package/dist/astro/routes/api/admin/review-requests/_id_/resolve.mjs +28 -28
- package/dist/astro/routes/api/admin/review-requests/index.mjs +28 -28
- package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.mjs +45 -44
- package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.mjs +2 -2
- package/dist/astro/routes/api/admin/themes/marketplace/index.mjs +45 -44
- 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 +5 -5
- package/dist/astro/routes/api/admin/users/_id_/send-recovery.mjs +2 -2
- package/dist/astro/routes/api/admin/users/index.mjs +5 -5
- package/dist/astro/routes/api/auth/dev-bypass.mjs +4 -4
- package/dist/astro/routes/api/auth/invite/accept.mjs +1 -1
- package/dist/astro/routes/api/auth/invite/complete.mjs +9 -9
- package/dist/astro/routes/api/auth/invite/index.mjs +6 -6
- package/dist/astro/routes/api/auth/invite/register-options.mjs +8 -8
- package/dist/astro/routes/api/auth/logout.mjs +2 -2
- package/dist/astro/routes/api/auth/magic-link/send.mjs +8 -8
- 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 +1 -1
- package/dist/astro/routes/api/auth/oauth/_provider_/callback.mjs +2 -2
- package/dist/astro/routes/api/auth/oauth/_provider_.mjs +2 -2
- package/dist/astro/routes/api/auth/passkey/_id_.mjs +5 -5
- package/dist/astro/routes/api/auth/passkey/index.mjs +1 -1
- package/dist/astro/routes/api/auth/passkey/options.mjs +10 -10
- package/dist/astro/routes/api/auth/passkey/register/options.mjs +8 -8
- package/dist/astro/routes/api/auth/passkey/register/verify.mjs +9 -9
- package/dist/astro/routes/api/auth/passkey/verify.mjs +9 -9
- package/dist/astro/routes/api/auth/setup-token/index.mjs +5 -5
- package/dist/astro/routes/api/auth/setup-token/verify.mjs +2 -2
- package/dist/astro/routes/api/auth/signup/complete.mjs +9 -9
- package/dist/astro/routes/api/auth/signup/request.mjs +8 -8
- package/dist/astro/routes/api/auth/signup/verify.mjs +1 -1
- package/dist/astro/routes/api/comments/_collection_/_contentId_/index.mjs +12 -12
- package/dist/astro/routes/api/comments/_collection_/_contentId_/reactions.mjs +11 -11
- package/dist/astro/routes/api/content/_collection_/_id_/compare.mjs +2 -2
- package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.mjs +6 -6
- package/dist/astro/routes/api/content/_collection_/_id_/duplicate.mjs +6 -6
- package/dist/astro/routes/api/content/_collection_/_id_/permanent.mjs +6 -6
- package/dist/astro/routes/api/content/_collection_/_id_/preview-url.mjs +9 -9
- package/dist/astro/routes/api/content/_collection_/_id_/publish.mjs +15 -15
- package/dist/astro/routes/api/content/_collection_/_id_/release-readiness.mjs +7 -7
- package/dist/astro/routes/api/content/_collection_/_id_/restore.mjs +6 -6
- package/dist/astro/routes/api/content/_collection_/_id_/revisions.mjs +2 -2
- package/dist/astro/routes/api/content/_collection_/_id_/schedule.mjs +15 -15
- package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.mjs +12 -12
- package/dist/astro/routes/api/content/_collection_/_id_/translations.mjs +2 -2
- package/dist/astro/routes/api/content/_collection_/_id_/unpublish.mjs +6 -6
- package/dist/astro/routes/api/content/_collection_/_id_.mjs +10 -10
- package/dist/astro/routes/api/content/_collection_/authors.mjs +2 -2
- package/dist/astro/routes/api/content/_collection_/index.mjs +10 -10
- package/dist/astro/routes/api/content/_collection_/trash.mjs +6 -6
- package/dist/astro/routes/api/dashboard.mjs +8 -8
- package/dist/astro/routes/api/dev/emails.mjs +2 -2
- package/dist/astro/routes/api/health.mjs +1 -1
- package/dist/astro/routes/api/import/probe.d.mts +3 -3
- package/dist/astro/routes/api/import/probe.mjs +17 -17
- package/dist/astro/routes/api/import/wordpress/analyze.mjs +8 -8
- package/dist/astro/routes/api/import/wordpress/execute.d.mts +9 -8
- package/dist/astro/routes/api/import/wordpress/execute.mjs +32 -32
- package/dist/astro/routes/api/import/wordpress/media.d.mts +9 -8
- package/dist/astro/routes/api/import/wordpress/media.mjs +9 -9
- package/dist/astro/routes/api/import/wordpress/prepare.mjs +31 -31
- package/dist/astro/routes/api/import/wordpress/rewrite-urls.d.mts +10 -9
- package/dist/astro/routes/api/import/wordpress/rewrite-urls.mjs +28 -28
- package/dist/astro/routes/api/import/wordpress-plugin/analyze.d.mts +1 -1
- package/dist/astro/routes/api/import/wordpress-plugin/analyze.mjs +20 -20
- package/dist/astro/routes/api/import/wordpress-plugin/execute.d.mts +9 -8
- package/dist/astro/routes/api/import/wordpress-plugin/execute.mjs +36 -36
- package/dist/astro/routes/api/integrations/_provider_.mjs +6 -6
- package/dist/astro/routes/api/integrations/index.mjs +5 -5
- package/dist/astro/routes/api/manifest.mjs +4 -4
- package/dist/astro/routes/api/mcp.mjs +64 -64
- package/dist/astro/routes/api/media/_id_/confirm.mjs +8 -8
- package/dist/astro/routes/api/media/_id_.mjs +6 -6
- package/dist/astro/routes/api/media/file/_...key_.mjs +1 -1
- 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 +9 -9
- package/dist/astro/routes/api/media.mjs +9 -9
- package/dist/astro/routes/api/menus/_name_/items/_id_.mjs +28 -28
- package/dist/astro/routes/api/menus/_name_/items.mjs +28 -28
- package/dist/astro/routes/api/menus/_name_/reorder.mjs +28 -28
- package/dist/astro/routes/api/menus/_name_/translations.mjs +28 -28
- package/dist/astro/routes/api/menus/_name_.mjs +28 -28
- package/dist/astro/routes/api/menus/index.mjs +28 -28
- package/dist/astro/routes/api/oauth/authorize.mjs +7 -7
- package/dist/astro/routes/api/oauth/device/authorize.mjs +6 -6
- package/dist/astro/routes/api/oauth/device/code.mjs +9 -9
- package/dist/astro/routes/api/oauth/device/token.mjs +8 -8
- package/dist/astro/routes/api/oauth/register.mjs +4 -4
- package/dist/astro/routes/api/oauth/token/refresh.mjs +6 -6
- package/dist/astro/routes/api/oauth/token/revoke.mjs +6 -6
- package/dist/astro/routes/api/oauth/token.mjs +6 -6
- package/dist/astro/routes/api/openapi.json.mjs +4 -4
- package/dist/astro/routes/api/plugins/_pluginId_/_...path_.mjs +4 -4
- package/dist/astro/routes/api/redirects/404s/index.mjs +9 -9
- package/dist/astro/routes/api/redirects/404s/summary.mjs +9 -9
- package/dist/astro/routes/api/redirects/_id_.mjs +29 -29
- package/dist/astro/routes/api/redirects/index.mjs +29 -29
- package/dist/astro/routes/api/revisions/_revisionId_/index.mjs +2 -2
- package/dist/astro/routes/api/revisions/_revisionId_/restore.mjs +2 -2
- package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.mjs +47 -46
- package/dist/astro/routes/api/schema/collections/_slug_/fields/index.mjs +47 -46
- package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.mjs +47 -46
- package/dist/astro/routes/api/schema/collections/_slug_/index.mjs +47 -46
- package/dist/astro/routes/api/schema/collections/index.mjs +47 -46
- package/dist/astro/routes/api/schema/index.mjs +7 -7
- package/dist/astro/routes/api/schema/orphans/_slug_.mjs +45 -44
- package/dist/astro/routes/api/schema/orphans/index.mjs +45 -44
- package/dist/astro/routes/api/search/enable.mjs +10 -10
- package/dist/astro/routes/api/search/index.mjs +9 -9
- package/dist/astro/routes/api/search/rebuild.mjs +10 -10
- package/dist/astro/routes/api/search/stats.mjs +6 -6
- package/dist/astro/routes/api/search/suggest.mjs +9 -9
- package/dist/astro/routes/api/sections/_slug_.mjs +28 -28
- package/dist/astro/routes/api/sections/index.mjs +28 -28
- package/dist/astro/routes/api/settings/email.mjs +3 -3
- package/dist/astro/routes/api/settings.mjs +28 -28
- package/dist/astro/routes/api/setup/admin-verify.mjs +11 -11
- package/dist/astro/routes/api/setup/admin.mjs +9 -9
- package/dist/astro/routes/api/setup/dev-bypass.mjs +23 -23
- package/dist/astro/routes/api/setup/dev-reset.mjs +1 -1
- package/dist/astro/routes/api/setup/index.mjs +24 -24
- package/dist/astro/routes/api/setup/status.mjs +3 -3
- package/dist/astro/routes/api/snapshot.mjs +6 -6
- package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_/translations.mjs +31 -31
- package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.mjs +31 -31
- package/dist/astro/routes/api/taxonomies/_name_/terms/index.mjs +31 -31
- package/dist/astro/routes/api/taxonomies/index.mjs +31 -31
- package/dist/astro/routes/api/themes/preview.mjs +4 -4
- 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 +3 -3
- package/dist/astro/routes/api/well-known/oauth-protected-resource.mjs +3 -3
- package/dist/astro/routes/api/widget-areas/_name_/reorder.mjs +27 -27
- package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.mjs +28 -28
- package/dist/astro/routes/api/widget-areas/_name_/widgets.mjs +28 -28
- package/dist/astro/routes/api/widget-areas/_name_.mjs +25 -25
- package/dist/astro/routes/api/widget-areas/index.mjs +28 -28
- package/dist/astro/routes/api/widget-components.mjs +2 -2
- package/dist/astro/routes/robots.txt.mjs +5 -5
- package/dist/astro/routes/sitemap-_collection_.xml.mjs +34 -41
- package/dist/astro/routes/sitemap.xml.mjs +29 -17
- package/dist/astro/session-driver.d.mts +1 -1
- package/dist/astro/session-driver.mjs +2 -2
- package/dist/astro/types.d.mts +14 -11
- package/dist/{audit-DeBteyL4.mjs → audit-nenmMR-2.mjs} +1 -1
- package/dist/auth/providers/github.d.mts +1 -1
- package/dist/auth/providers/google.d.mts +1 -1
- package/dist/{auth-control-guard-B_Dx-epW.mjs → auth-control-guard-B7PdECn6.mjs} +1 -1
- package/dist/{authorize-D6MkRtPw.mjs → authorize-DTvHe9bm.mjs} +1 -1
- package/dist/{briefing-BTA39bRc.mjs → briefing-CpU_z8qH.mjs} +5 -5
- package/dist/{briefing-BfUOJfCy.mjs → briefing-PxagUoJJ.mjs} +1 -1
- package/dist/{bundle-C-eQG8un.mjs → bundle-dsO2-7eh.mjs} +2 -2
- package/dist/{byline-CB0OLcK1.mjs → byline-DEBDPF8R.mjs} +4 -4
- package/dist/{byline-fields-BRUB-Vla.mjs → byline-fields-BQRx17y_.mjs} +1 -1
- package/dist/{byline-fields-urVGl6bz.d.mts → byline-fields-BXg94LXd.d.mts} +50 -44
- package/dist/{bylines-BDp4-cpl.mjs → bylines-C7hm1-iI.mjs} +3 -3
- package/dist/{bylines-CiSL5IrP.mjs → bylines-YK6eGHvV.mjs} +5 -5
- package/dist/{cache-CtXIOJKw.mjs → cache-BuVpjvBc.mjs} +1 -1
- package/dist/{chunks-BdkWx1oD.mjs → chunks-B-1_U3oF.mjs} +1 -1
- package/dist/cli/index.mjs +28 -27
- package/dist/cli/plugin-kit.d.mts +9 -8
- package/dist/cli/plugin-kit.mjs +2 -2
- package/dist/client/external-auth-headers.d.mts +1 -1
- package/dist/client/index.d.mts +11 -10
- package/dist/client/index.mjs +2 -2
- package/dist/{client-factory-Dll61uB1.mjs → client-factory-Nyp2sznG.mjs} +1 -1
- package/dist/{comment-3JihGSh6.mjs → comment-BX6H4NF-.mjs} +1 -1
- package/dist/{comment-reaction-BNXm1YHa.mjs → comment-reaction-QSENU_3S.mjs} +1 -1
- package/dist/{comments-DJZXQi0j.mjs → comments-BHSYG53k.mjs} +1 -1
- package/dist/{content-Bturdi4b.mjs → content-Bg_hMt4Q.mjs} +2 -2
- package/dist/{content-refresh-C4YoqoNs.mjs → content-refresh-CHBBZGwf.mjs} +2 -2
- package/dist/{context-CB4PwkM_.mjs → context-BGt7zfQ-.mjs} +8 -8
- package/dist/{context-DH-YFjZr.mjs → context-BHXgPEPC.mjs} +2 -2
- package/dist/{context-route-helpers-CLoNF0pp.mjs → context-route-helpers-SwM-_GT4.mjs} +2 -2
- package/dist/{dashboard-DP4dxA1S.mjs → dashboard-DPUW4hBR.mjs} +4 -4
- package/dist/db/index.d.mts +3 -3
- package/dist/db/index.mjs +1 -1
- package/dist/db/libsql.d.mts +1 -1
- package/dist/db/postgres.d.mts +1 -1
- package/dist/db/sqlite.d.mts +1 -1
- package/dist/{device-flow-BWV1ZxXW.mjs → device-flow-XqdFNsv_.mjs} +4 -4
- package/dist/discovery-DvuRcbP-.mjs +178 -0
- package/dist/{field-defs-cache-BGhsaYGT.mjs → field-defs-cache-sSdDeJXP.mjs} +1 -1
- package/dist/{fts-manager-6KClQEs0.mjs → fts-manager-C7pxxk6B.mjs} +1 -1
- package/dist/{hitl-requests-DDYRgSeH.mjs → hitl-requests-D7pfIM6q.mjs} +2 -2
- package/dist/{hitl-route-helpers-BI3qTO75.mjs → hitl-route-helpers-Br9uvIQs.mjs} +5 -5
- package/dist/{import-CoaAe-mc.mjs → import-CrsquhXj.mjs} +7 -7
- package/dist/{index-DybFmYtZ.d.mts → index-NdJMMO48.d.mts} +3 -3
- package/dist/index.d.mts +16 -15
- package/dist/index.mjs +75 -74
- package/dist/{integration-credentials-D3ZneN0L.mjs → integration-credentials-B7Pj6YCv.mjs} +2 -2
- package/dist/{jsonld-DfR5LVWQ.d.mts → jsonld-TsDIJx5A.d.mts} +19 -7
- package/dist/{load-CfFRVQkS.mjs → load-Bul8Tk6e.mjs} +1 -1
- package/dist/{loader-CqKPLiKx.mjs → loader-BCr2VSzt.mjs} +2 -2
- package/dist/{manifest-schema-DKa3ZaJL.mjs → manifest-schema-U5qGq-iB.mjs} +1 -1
- package/dist/{mcp-reviewed-executor-ANVt5edE.mjs → mcp-reviewed-executor-C1lIimd0.mjs} +4 -4
- package/dist/media/index.d.mts +1 -1
- package/dist/media/local-runtime.d.mts +11 -10
- package/dist/media/local-runtime.mjs +2 -2
- package/dist/{media-BXbOL8xv.mjs → media-D8pQJSug.mjs} +1 -1
- package/dist/{menus-DCjNW2e4.mjs → menus-3B-PGTX3.mjs} +1 -1
- package/dist/{menus-Cu8lQOFw.mjs → menus-DSWeEWXl.mjs} +5 -5
- package/dist/{oauth-authorization-fiXxn7FY.mjs → oauth-authorization-CMU5kREy.mjs} +4 -4
- package/dist/{oauth-clients-D9Gg0WjF.mjs → oauth-clients-CLdR0WyA.mjs} +2 -2
- package/dist/object-cache/memory.d.mts +1 -1
- package/dist/page/index.d.mts +11 -10
- package/dist/page/index.mjs +2 -2
- package/dist/{parse-B-Y84oJl.mjs → parse-DEG06jjr.mjs} +1 -1
- package/dist/plugin-utils.d.mts +9 -8
- package/dist/plugins/adapt-sandbox-entry.d.mts +9 -8
- package/dist/plugins/adapt-sandbox-entry.mjs +1 -1
- package/dist/{plugins-BVSrX4gZ.mjs → plugins-D8YxTh9q.mjs} +26 -23
- package/dist/{preview-BMIReQGc.mjs → preview-Bn59ztjn.mjs} +2 -2
- package/dist/{provider-loader-Db-pJFu3.d.mts → provider-loader-jdkZM6xZ.d.mts} +1 -1
- package/dist/public-url-DFX2c_20.d.mts +99 -0
- package/dist/{public-url-ClXQnxy1.d.mts → public-url-NkNXl8OU.d.mts} +1 -1
- package/dist/{publication-authorization-DrqQCW3R.mjs → publication-authorization-BmazS4K0.mjs} +6 -6
- package/dist/{query-B0rPTc7J.mjs → query-CrUftarl.mjs} +12 -12
- package/dist/{query-D5Wvb06i.mjs → query-DPC5GT6e.mjs} +2 -2
- package/dist/{rate-limit-oUGexQO1.mjs → rate-limit-DvGL45wH.mjs} +2 -2
- package/dist/{redirect-3Zzd0xIN.mjs → redirect-8B-gorhg.mjs} +1 -1
- package/dist/{redirects-lCeytkeq.mjs → redirects-D2SVS1zo.mjs} +3 -3
- package/dist/{redirects-CWGZMRsj.mjs → redirects-DdPaQiWQ.mjs} +6 -2
- package/dist/{registry-c51Wf_AZ.mjs → registry-D3n4-yUl.mjs} +13 -6
- package/dist/{request-meta-DHFIzWcf.mjs → request-meta-DZTiCIQR.mjs} +1 -1
- package/dist/resolve-CThKf9_X.mjs +27 -0
- package/dist/{review-requests-eQbhj62T.mjs → review-requests-BQbmYLnz.mjs} +1 -1
- package/dist/{review-requests-B9NfBTCJ.mjs → review-requests-D5CJ4JCy.mjs} +1 -1
- package/dist/{review-route-helpers-4KBg7Hi3.mjs → review-route-helpers-DYiujAPM.mjs} +2 -2
- package/dist/{runner-Bcy5w0vj.d.mts → runner-BITx7yBF.d.mts} +1 -1
- package/dist/{runner-BE1taNgj.mjs → runner-BWZ87FK-.mjs} +482 -457
- package/dist/runtime.d.mts +10 -9
- package/dist/runtime.mjs +3 -3
- package/dist/schema-kk9-6bUd.mjs +8 -0
- package/dist/{search-NcUUIJOw.mjs → search-B_ir6H6m.mjs} +3 -3
- package/dist/{sections-D_imfMlM.mjs → sections-pRy07N5I.mjs} +2 -2
- package/dist/seed/index.d.mts +2 -2
- package/dist/seed/index.mjs +17 -17
- package/dist/seo/index.d.mts +4 -2
- package/dist/seo/index.mjs +10 -11
- package/dist/{seo-BasNtS3J.mjs → seo-C4nlxiaY.mjs} +1 -1
- package/dist/seo-DdNntVj-.mjs +52 -0
- package/dist/{seo-contributions-Ci8_12_r.mjs → seo-contributions-BGBehNCN.mjs} +260 -76
- package/dist/{service-BTYluCDf.mjs → service-D6fJX7D7.mjs} +2 -2
- package/dist/{settings-BUZ7b4Bn.mjs → settings-C4OMR0zf.mjs} +2 -2
- package/dist/{settings-Cs-ST1tU.mjs → settings-D-a7uy2z.mjs} +2 -2
- package/dist/{site-activity-QPC-7Vnq.mjs → site-activity-CnrmnFRy.mjs} +1 -1
- package/dist/{site-context-BDEjOzOk.mjs → site-context-Bdsobbh9.mjs} +13 -13
- package/dist/storage/local.d.mts +1 -1
- package/dist/storage/local.mjs +1 -1
- package/dist/storage/s3.d.mts +1 -1
- package/dist/storage/s3.mjs +1 -1
- package/dist/{store-CCfMD6nw.mjs → store-DerEE3jG.mjs} +1 -1
- package/dist/{taxonomies-DoyE8B41.mjs → taxonomies-6bWkaa_G.mjs} +3 -3
- package/dist/{taxonomies-CpYwz_sN.mjs → taxonomies-FKTevd14.mjs} +5 -5
- package/dist/{taxonomy-C-Aqi1cF.mjs → taxonomy-BU0eCfij.mjs} +2 -2
- package/dist/{types-ywmuDETA.d.mts → types-B2kbOwSj.d.mts} +6 -0
- package/dist/{types-GtwhHAg8.d.mts → types-B6r_SMeR.d.mts} +1 -1
- package/dist/{types-BFeoAIHl.d.mts → types-C8cUW9dh.d.mts} +1 -0
- package/dist/{types-al8YMHdF.mjs → types-C9F2TLQV.mjs} +1 -1
- package/dist/{types-C4ZrBtdu.d.mts → types-Cty2_HVR.d.mts} +50 -52
- package/dist/ui/server-runtime.d.mts +13 -12
- package/dist/ui/server-runtime.mjs +19 -60
- package/dist/{user-Ldseid1x.mjs → user-BV02bsWz.mjs} +2 -2
- package/dist/{validate-YiX3rly5.d.mts → validate-Bc9gaua6.d.mts} +5 -3
- package/dist/{validate-hHdBXn4U.mjs → validate-Drps_jbV.mjs} +9 -1
- package/dist/version-Cg-aQHxG.mjs +6 -0
- package/dist/{widgets-cBtEykx0.mjs → widgets-BFqy7PYs.mjs} +2 -2
- package/dist/{zod-generator-BGSszwCw.mjs → zod-generator-BlY_vGgR.mjs} +1 -1
- package/package.json +4 -4
- package/src/components/DinewayHead.astro +6 -6
- package/dist/resolve-B6BpqwAR.mjs +0 -100
- package/dist/schema-dGCjdAx9.mjs +0 -8
- package/dist/seo-BLszyJxd.mjs +0 -105
- package/dist/version-CZX1tQmH.mjs +0 -6
- /package/dist/{actor-DA7yL9Yp.mjs → actor-D3A5PNkH.mjs} +0 -0
- /package/dist/{adapters-DnMDRQ4e.d.mts → adapters-DUVI3Mpc.d.mts} +0 -0
- /package/dist/{api-tokens-D4tcY8R6.mjs → api-tokens-CbMAy6xF.mjs} +0 -0
- /package/dist/{byline-fields-sE9SQsDR.mjs → byline-fields-DPi4Ri_5.mjs} +0 -0
- /package/dist/{challenge-store-BMkL2kmt.mjs → challenge-store-DtdQHXf5.mjs} +0 -0
- /package/dist/{components-D0w9MzQe.mjs → components-DGu-rih7.mjs} +0 -0
- /package/dist/{cron-D_c3WUPN.mjs → cron-BjKHo0QD.mjs} +0 -0
- /package/dist/{default-BxoI3SoK.mjs → default-CO47mlSA.mjs} +0 -0
- /package/dist/{email-console-BEMwuxhV.mjs → email-console-CFE1ay18.mjs} +0 -0
- /package/dist/{error-BW9f_ynq.mjs → error-Jz0EtEwI.mjs} +0 -0
- /package/dist/{escape-smSUOb7u.mjs → escape-HmHTC1Is.mjs} +0 -0
- /package/dist/{experimental-workflows-CgO73K4e.mjs → experimental-workflows-EYZRNkRR.mjs} +0 -0
- /package/dist/{media-allowlist-BQyIBPzd.mjs → media-allowlist-9u_gxMG2.mjs} +0 -0
- /package/dist/{media-url-B6d-yVI6.mjs → media-url-DVoOhf4X.mjs} +0 -0
- /package/dist/{mode-DPC7segX.mjs → mode-DqpBaEOy.mjs} +0 -0
- /package/dist/{oauth-state-store-DPVzeoyY.mjs → oauth-state-store-HdGg_nSm.mjs} +0 -0
- /package/dist/{oauth-user-lookup-3E5jlXrr.mjs → oauth-user-lookup-CP16vyFW.mjs} +0 -0
- /package/dist/{output-13u4dvu-.mjs → output-CXOC3BFr.mjs} +0 -0
- /package/dist/{parser-DX_c5iG3.mjs → parser-buoH2frr.mjs} +0 -0
- /package/dist/{passkey-config-DE_0EGEP.mjs → passkey-config-T47FwLtS.mjs} +0 -0
- /package/dist/{placeholder-C6ZjZcmJ.d.mts → placeholder-BsYSFPjY.d.mts} +0 -0
- /package/dist/{portable-text-BASHceim.mjs → portable-text-DQHE3b5v.mjs} +0 -0
- /package/dist/{portable-text-BYUu-wtj.d.mts → portable-text-Dm0bgrdZ.d.mts} +0 -0
- /package/dist/{provider-loader-BeQcnPN1.mjs → provider-loader-Dxka0BDp.mjs} +0 -0
- /package/dist/{public-url-BA-7LKvQ.mjs → public-url-CIAtNGEg.mjs} +0 -0
- /package/dist/{redirect-CZFAqHLr.mjs → redirect-CzqnLxK-.mjs} +0 -0
- /package/dist/{secrets-CpGpyGcO.mjs → secrets-Dw3lXI42.mjs} +0 -0
- /package/dist/{service-CY0aH6eI.mjs → service-DOdvCW-9.mjs} +0 -0
- /package/dist/{session-user-BwliEFp0.mjs → session-user-CYjNeJoD.mjs} +0 -0
- /package/dist/{setup-complete-PvF8I7Oh.mjs → setup-complete-Blqo_adb.mjs} +0 -0
- /package/dist/{setup-nonce-DkpYROqg.mjs → setup-nonce-CGUTFWgQ.mjs} +0 -0
- /package/dist/{sidecar-client-dt5fv23q.mjs → sidecar-client-C6ylL-0S.mjs} +0 -0
- /package/dist/{site-url-DfYDZyWl.mjs → site-url-CK5vBdFu.mjs} +0 -0
- /package/dist/{ssrf-BZHvtFEv.mjs → ssrf-Dz2hqAiG.mjs} +0 -0
- /package/dist/{status-BN40hMpr.mjs → status-xz9JACSX.mjs} +0 -0
- /package/dist/{tokens-DIzhPT80.mjs → tokens-DiodRT2y.mjs} +0 -0
- /package/dist/{transport-CXkC1F2Z.d.mts → transport-DKy93p6V.d.mts} +0 -0
- /package/dist/{transport-C46KHLMP.mjs → transport-zquJ7Bzm.mjs} +0 -0
- /package/dist/{trusted-proxy-czZuby6G.mjs → trusted-proxy-NySPw95m.mjs} +0 -0
- /package/dist/{types-BsTXSvKG.d.mts → types-BaKec6bx.d.mts} +0 -0
- /package/dist/{types-gvNBqijt.mjs → types-C1LdZbQb.mjs} +0 -0
- /package/dist/{types-S9VIopdY.d.mts → types-C2LBO0t8.d.mts} +0 -0
- /package/dist/{types-CDcuRd4z.d.mts → types-DY9lJRpo.d.mts} +0 -0
- /package/dist/{types-YxFz4lDr.d.mts → types-Gd4kXLsa.d.mts} +0 -0
- /package/dist/{types-CK0r-Xq4.mjs → types-ftxcMx5-.mjs} +0 -0
- /package/dist/{url-D282S1Zw.mjs → url-C05Zz4pW.mjs} +0 -0
- /package/dist/{utils-B7gemXz5.mjs → utils-BPzpVHqR.mjs} +0 -0
- /package/dist/{wordpress-slugs-D_LfQCan.mjs → wordpress-slugs-fMvfO22_.mjs} +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { r as validatePluginIdentifier, t as validateIdentifier } from "./validate-VPnKoIzW.mjs";
|
|
2
2
|
import { i as encodeBase64url, n as decodeBase64url } from "./base64-F8-DUraK.mjs";
|
|
3
|
-
import { n as chunks, t as SQL_BATCH_SIZE } from "./chunks-
|
|
3
|
+
import { n as chunks, t as SQL_BATCH_SIZE } from "./chunks-B-1_U3oF.mjs";
|
|
4
4
|
import { t as OptionsRepository } from "./options-DQPTH5n0.mjs";
|
|
5
|
-
import { n as createPluginContext, t as PluginContextFactory } from "./context-
|
|
6
|
-
import { i as parseEncryptionKeys, t as DinewaySecretsError } from "./secrets-
|
|
7
|
-
import { t as extractRequestMeta } from "./request-meta-
|
|
8
|
-
import { r as setCronTasksEnabled } from "./cron-
|
|
5
|
+
import { n as createPluginContext, t as PluginContextFactory } from "./context-BGt7zfQ-.mjs";
|
|
6
|
+
import { i as parseEncryptionKeys, t as DinewaySecretsError } from "./secrets-Dw3lXI42.mjs";
|
|
7
|
+
import { t as extractRequestMeta } from "./request-meta-DZTiCIQR.mjs";
|
|
8
|
+
import { r as setCronTasksEnabled } from "./cron-BjKHo0QD.mjs";
|
|
9
9
|
import { Migrator, sql } from "kysely";
|
|
10
10
|
import { AsyncLocalStorage } from "node:async_hooks";
|
|
11
11
|
import { ulid } from "ulidx";
|
|
@@ -1816,7 +1816,7 @@ var HookPipeline = class HookPipeline {
|
|
|
1816
1816
|
/**
|
|
1817
1817
|
* Run content:afterSave hooks
|
|
1818
1818
|
*/
|
|
1819
|
-
async runContentAfterSave(content, collection, isNew) {
|
|
1819
|
+
async runContentAfterSave(content, collection, isNew, previousContent) {
|
|
1820
1820
|
const hooks = this.getTypedHooks("content:afterSave");
|
|
1821
1821
|
const results = [];
|
|
1822
1822
|
for (const hook of hooks) {
|
|
@@ -1824,7 +1824,8 @@ var HookPipeline = class HookPipeline {
|
|
|
1824
1824
|
const event = {
|
|
1825
1825
|
content,
|
|
1826
1826
|
collection,
|
|
1827
|
-
isNew
|
|
1827
|
+
isNew,
|
|
1828
|
+
...previousContent ? { previousContent } : {}
|
|
1828
1829
|
};
|
|
1829
1830
|
const ctx = this.getContext(hook.pluginId);
|
|
1830
1831
|
const start = Date.now();
|
|
@@ -1891,7 +1892,7 @@ var HookPipeline = class HookPipeline {
|
|
|
1891
1892
|
/**
|
|
1892
1893
|
* Run content:afterDelete hooks
|
|
1893
1894
|
*/
|
|
1894
|
-
async runContentAfterDelete(id, collection, permanent) {
|
|
1895
|
+
async runContentAfterDelete(id, collection, permanent, previousContent) {
|
|
1895
1896
|
const hooks = this.getTypedHooks("content:afterDelete");
|
|
1896
1897
|
const results = [];
|
|
1897
1898
|
for (const hook of hooks) {
|
|
@@ -1899,7 +1900,8 @@ var HookPipeline = class HookPipeline {
|
|
|
1899
1900
|
const event = {
|
|
1900
1901
|
id,
|
|
1901
1902
|
collection,
|
|
1902
|
-
permanent
|
|
1903
|
+
permanent,
|
|
1904
|
+
...previousContent ? { previousContent } : {}
|
|
1903
1905
|
};
|
|
1904
1906
|
const ctx = this.getContext(hook.pluginId);
|
|
1905
1907
|
const start = Date.now();
|
|
@@ -1925,14 +1927,14 @@ var HookPipeline = class HookPipeline {
|
|
|
1925
1927
|
/**
|
|
1926
1928
|
* Run content:afterPublish hooks (fire-and-forget).
|
|
1927
1929
|
*/
|
|
1928
|
-
async runContentAfterPublish(content, collection) {
|
|
1929
|
-
return this.runContentStateChangeHook("content:afterPublish", content, collection);
|
|
1930
|
+
async runContentAfterPublish(content, collection, previousContent) {
|
|
1931
|
+
return this.runContentStateChangeHook("content:afterPublish", content, collection, previousContent);
|
|
1930
1932
|
}
|
|
1931
1933
|
/**
|
|
1932
1934
|
* Run content:afterUnpublish hooks (fire-and-forget).
|
|
1933
1935
|
*/
|
|
1934
|
-
async runContentAfterUnpublish(content, collection) {
|
|
1935
|
-
return this.runContentStateChangeHook("content:afterUnpublish", content, collection);
|
|
1936
|
+
async runContentAfterUnpublish(content, collection, previousContent) {
|
|
1937
|
+
return this.runContentStateChangeHook("content:afterUnpublish", content, collection, previousContent);
|
|
1936
1938
|
}
|
|
1937
1939
|
/**
|
|
1938
1940
|
* Run content:afterRestore hooks (fire-and-forget).
|
|
@@ -1952,14 +1954,15 @@ var HookPipeline = class HookPipeline {
|
|
|
1952
1954
|
async runContentAfterUnschedule(content, collection) {
|
|
1953
1955
|
return this.runContentStateChangeHook("content:afterUnschedule", content, collection);
|
|
1954
1956
|
}
|
|
1955
|
-
async runContentStateChangeHook(name, content, collection) {
|
|
1957
|
+
async runContentStateChangeHook(name, content, collection, previousContent) {
|
|
1956
1958
|
const hooks = this.getTypedHooks(name);
|
|
1957
1959
|
const results = [];
|
|
1958
1960
|
for (const hook of hooks) {
|
|
1959
1961
|
const { handler } = hook;
|
|
1960
1962
|
const event = {
|
|
1961
1963
|
content,
|
|
1962
|
-
collection
|
|
1964
|
+
collection,
|
|
1965
|
+
...previousContent ? { previousContent } : {}
|
|
1963
1966
|
};
|
|
1964
1967
|
const ctx = this.getContext(hook.pluginId);
|
|
1965
1968
|
const start = Date.now();
|
|
@@ -3193,9 +3196,9 @@ var PluginManager = class {
|
|
|
3193
3196
|
/**
|
|
3194
3197
|
* Run content:afterSave hooks across all active plugins
|
|
3195
3198
|
*/
|
|
3196
|
-
async runContentAfterSave(content, collection, isNew) {
|
|
3199
|
+
async runContentAfterSave(content, collection, isNew, previousContent) {
|
|
3197
3200
|
this.ensureInitialized();
|
|
3198
|
-
return this.hookPipeline.runContentAfterSave(content, collection, isNew);
|
|
3201
|
+
return this.hookPipeline.runContentAfterSave(content, collection, isNew, previousContent);
|
|
3199
3202
|
}
|
|
3200
3203
|
/**
|
|
3201
3204
|
* Run content:beforeDelete hooks across all active plugins
|
|
@@ -3207,23 +3210,23 @@ var PluginManager = class {
|
|
|
3207
3210
|
/**
|
|
3208
3211
|
* Run content:afterDelete hooks across all active plugins
|
|
3209
3212
|
*/
|
|
3210
|
-
async runContentAfterDelete(id, collection, permanent) {
|
|
3213
|
+
async runContentAfterDelete(id, collection, permanent, previousContent) {
|
|
3211
3214
|
this.ensureInitialized();
|
|
3212
|
-
return this.hookPipeline.runContentAfterDelete(id, collection, permanent);
|
|
3215
|
+
return this.hookPipeline.runContentAfterDelete(id, collection, permanent, previousContent);
|
|
3213
3216
|
}
|
|
3214
3217
|
/**
|
|
3215
3218
|
* Run content:afterPublish hooks across all active plugins
|
|
3216
3219
|
*/
|
|
3217
|
-
async runContentAfterPublish(content, collection) {
|
|
3220
|
+
async runContentAfterPublish(content, collection, previousContent) {
|
|
3218
3221
|
this.ensureInitialized();
|
|
3219
|
-
return this.hookPipeline.runContentAfterPublish(content, collection);
|
|
3222
|
+
return this.hookPipeline.runContentAfterPublish(content, collection, previousContent);
|
|
3220
3223
|
}
|
|
3221
3224
|
/**
|
|
3222
3225
|
* Run content:afterUnpublish hooks across all active plugins
|
|
3223
3226
|
*/
|
|
3224
|
-
async runContentAfterUnpublish(content, collection) {
|
|
3227
|
+
async runContentAfterUnpublish(content, collection, previousContent) {
|
|
3225
3228
|
this.ensureInitialized();
|
|
3226
|
-
return this.hookPipeline.runContentAfterUnpublish(content, collection);
|
|
3229
|
+
return this.hookPipeline.runContentAfterUnpublish(content, collection, previousContent);
|
|
3227
3230
|
}
|
|
3228
3231
|
/**
|
|
3229
3232
|
* Run content:afterRestore hooks across all active plugins
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { n as loadBetterSqlite3, t as createDatabase } from "./connection-CiJWiWya.mjs";
|
|
2
2
|
import { runWithContext } from "./request-context.mjs";
|
|
3
|
-
import { a as verifyPreviewSignature, t as buildPreviewSignatureHeader } from "./sidecar-client-
|
|
4
|
-
import { t as generatePreviewToken } from "./tokens-
|
|
3
|
+
import { a as verifyPreviewSignature, t as buildPreviewSignatureHeader } from "./sidecar-client-C6ylL-0S.mjs";
|
|
4
|
+
import { t as generatePreviewToken } from "./tokens-DiodRT2y.mjs";
|
|
5
5
|
import { createHash } from "node:crypto";
|
|
6
6
|
import { sql } from "kysely";
|
|
7
7
|
import { ulid } from "ulidx";
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { t as Database } from "./types-C8cUW9dh.mjs";
|
|
2
|
+
import { Kysely } from "kysely";
|
|
3
|
+
|
|
4
|
+
//#region src/i18n/config.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* Dineway i18n Configuration
|
|
7
|
+
*
|
|
8
|
+
* Reads locale configuration from the virtual module (sourced from Astro config).
|
|
9
|
+
* Initialized during runtime startup, then available via getI18nConfig().
|
|
10
|
+
*/
|
|
11
|
+
interface I18nConfig {
|
|
12
|
+
defaultLocale: string;
|
|
13
|
+
locales: string[];
|
|
14
|
+
fallback?: Record<string, string>;
|
|
15
|
+
prefixDefaultLocale?: boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Get the current i18n config.
|
|
19
|
+
* Returns null if i18n is not configured.
|
|
20
|
+
*/
|
|
21
|
+
declare function getI18nConfig(): I18nConfig | null;
|
|
22
|
+
/**
|
|
23
|
+
* Check if i18n is enabled.
|
|
24
|
+
* Returns true when multiple locales are configured.
|
|
25
|
+
*/
|
|
26
|
+
declare function isI18nEnabled(): boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Resolve fallback locale chain for a given locale.
|
|
29
|
+
* Returns array of locales to try, from most preferred to least.
|
|
30
|
+
* Always ends with defaultLocale.
|
|
31
|
+
*/
|
|
32
|
+
declare function getFallbackChain(locale: string): string[];
|
|
33
|
+
//#endregion
|
|
34
|
+
//#region src/seo/discovery.d.ts
|
|
35
|
+
/** A public projection, never an arbitrary CMS record or draft snapshot. */
|
|
36
|
+
interface PublicContentEntry {
|
|
37
|
+
id: string;
|
|
38
|
+
collection: string;
|
|
39
|
+
collectionLabel: string;
|
|
40
|
+
slug: string;
|
|
41
|
+
url: string;
|
|
42
|
+
title: string;
|
|
43
|
+
description?: string;
|
|
44
|
+
updatedAt: string;
|
|
45
|
+
locale: string;
|
|
46
|
+
translationGroup: string | null;
|
|
47
|
+
image: string | null;
|
|
48
|
+
}
|
|
49
|
+
interface PublicContentOptions {
|
|
50
|
+
siteUrl: string;
|
|
51
|
+
cfg?: I18nConfig | null;
|
|
52
|
+
collection?: string;
|
|
53
|
+
/** Exact public path for checking a selected redirect target. */
|
|
54
|
+
path?: string;
|
|
55
|
+
/** Candidate search scope, retaining city and language path segments. */
|
|
56
|
+
pathPrefix?: string;
|
|
57
|
+
locale?: string;
|
|
58
|
+
searchTerms?: readonly string[];
|
|
59
|
+
limit?: number;
|
|
60
|
+
cursor?: string;
|
|
61
|
+
/** Optional identity filter for translation and individual-page lookups. */
|
|
62
|
+
ids?: readonly string[];
|
|
63
|
+
translationGroup?: string;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Keyset pagination over collection slug + entry ID. At most limit + 1 content
|
|
67
|
+
* rows are read per collection, with a total scan budget of limit rows. An empty
|
|
68
|
+
* page can have a nextCursor when invalid stored paths used the scan budget.
|
|
69
|
+
* Content columns contain the live version; draft revisions are never loaded.
|
|
70
|
+
*/
|
|
71
|
+
declare function listPublicContent(db: Kysely<Database>, options: PublicContentOptions): Promise<{
|
|
72
|
+
items: PublicContentEntry[];
|
|
73
|
+
nextCursor?: string;
|
|
74
|
+
}>;
|
|
75
|
+
//#endregion
|
|
76
|
+
//#region src/seo/canonical-url.d.ts
|
|
77
|
+
/** Resolve an explicit canonical without inventing path case or slash rules. */
|
|
78
|
+
declare function resolveCanonicalUrl(value: string, siteUrl?: string): string | null;
|
|
79
|
+
//#endregion
|
|
80
|
+
//#region src/seo/public-url.d.ts
|
|
81
|
+
/** Collection routing accepts a complete stored path or a conventional slug pattern. */
|
|
82
|
+
interface ResolveContentUrlInput {
|
|
83
|
+
siteUrl: string;
|
|
84
|
+
slug: string;
|
|
85
|
+
locale?: string | null;
|
|
86
|
+
urlField?: string | null;
|
|
87
|
+
urlPattern?: string | null;
|
|
88
|
+
data?: Record<string, unknown>;
|
|
89
|
+
cfg?: I18nConfig | null;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Returns a same-origin public URL, or null when the collection has no usable route.
|
|
93
|
+
* urlField paths are authoritative, including case, trailing slash and locale prefix.
|
|
94
|
+
* Pattern routes add locale prefixes and preserve the declared slash convention. Never infer a route from
|
|
95
|
+
* a collection name when the site has not declared one.
|
|
96
|
+
*/
|
|
97
|
+
declare function resolveContentUrl(input: ResolveContentUrlInput): string | null;
|
|
98
|
+
//#endregion
|
|
99
|
+
export { PublicContentOptions as a, getFallbackChain as c, PublicContentEntry as i, getI18nConfig as l, resolveContentUrl as n, listPublicContent as o, resolveCanonicalUrl as r, I18nConfig as s, ResolveContentUrlInput as t, isI18nEnabled as u };
|
package/dist/{publication-authorization-DrqQCW3R.mjs → publication-authorization-BmazS4K0.mjs}
RENAMED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { i as encodeCursor, r as decodeCursor } from "./types-
|
|
2
|
-
import { t as SiteActivityRepository } from "./site-activity-
|
|
3
|
-
import { t as ReviewRequestRepository } from "./review-requests-
|
|
4
|
-
import { a as getSiteSettingsWithDb } from "./settings-
|
|
1
|
+
import { i as encodeCursor, r as decodeCursor } from "./types-C9F2TLQV.mjs";
|
|
2
|
+
import { t as SiteActivityRepository } from "./site-activity-CnrmnFRy.mjs";
|
|
3
|
+
import { t as ReviewRequestRepository } from "./review-requests-D5CJ4JCy.mjs";
|
|
4
|
+
import { a as getSiteSettingsWithDb } from "./settings-D-a7uy2z.mjs";
|
|
5
5
|
import { n as buildStableActionHash, t as ReviewPayloadBuilder } from "./review-payload-BysRWpxS.mjs";
|
|
6
|
-
import { t as SYSTEM_ACTOR_ID } from "./actor-
|
|
7
|
-
import { n as redactActivityRecord } from "./activity-
|
|
6
|
+
import { t as SYSTEM_ACTOR_ID } from "./actor-D3A5PNkH.mjs";
|
|
7
|
+
import { n as redactActivityRecord } from "./activity-Bm5x0dik.mjs";
|
|
8
8
|
import { ulid } from "ulidx";
|
|
9
9
|
|
|
10
10
|
//#region src/database/repositories/content-release-grants.ts
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as __exportAll } from "./runner-
|
|
1
|
+
import { a as __exportAll } from "./runner-BWZ87FK-.mjs";
|
|
2
2
|
import { n as getI18nConfig, r as isI18nEnabled, t as getFallbackChain } from "./config-CVssduLe.mjs";
|
|
3
3
|
import { getRequestContext } from "./request-context.mjs";
|
|
4
|
-
import { i as encodeCursor } from "./types-
|
|
5
|
-
import { o as isMissingTableError, s as takeLiveCollectionMeta, t as CURSOR_RAW_VALUES } from "./loader-
|
|
4
|
+
import { i as encodeCursor } from "./types-C9F2TLQV.mjs";
|
|
5
|
+
import { o as isMissingTableError, s as takeLiveCollectionMeta, t as CURSOR_RAW_VALUES } from "./loader-BCr2VSzt.mjs";
|
|
6
6
|
import { i as contentNamespaces, n as cachedQuery, u as invalidateSchemaObjectCache } from "./object-cache-D51qOseS.mjs";
|
|
7
7
|
import { r as requestCached } from "./request-cache-CBFjCwSt.mjs";
|
|
8
8
|
|
|
@@ -596,9 +596,9 @@ async function hydrateEntryBylines(type, entries) {
|
|
|
596
596
|
let needsQueryPath = parsed.some((item) => item.credits.length === 0 && (dataStr(item.data, "authorId") !== "" || dataStr(item.data, "primaryBylineId") !== ""));
|
|
597
597
|
let hasCustomFields = false;
|
|
598
598
|
if (!needsQueryPath) try {
|
|
599
|
-
const { getDb } = await import("./loader-
|
|
599
|
+
const { getDb } = await import("./loader-BCr2VSzt.mjs").then((n) => n.i);
|
|
600
600
|
const db = await getDb();
|
|
601
|
-
const { getBylineFieldDefs } = await import("./field-defs-cache-
|
|
601
|
+
const { getBylineFieldDefs } = await import("./field-defs-cache-sSdDeJXP.mjs").then((n) => n.t);
|
|
602
602
|
hasCustomFields = (await getBylineFieldDefs(db)).length > 0;
|
|
603
603
|
} catch (error) {
|
|
604
604
|
if (!isMissingTableError(error)) needsQueryPath = true;
|
|
@@ -612,7 +612,7 @@ async function hydrateEntryBylines(type, entries) {
|
|
|
612
612
|
}
|
|
613
613
|
}
|
|
614
614
|
try {
|
|
615
|
-
const { getBylinesForEntries } = await import("./bylines-
|
|
615
|
+
const { getBylinesForEntries } = await import("./bylines-YK6eGHvV.mjs").then((n) => n.t);
|
|
616
616
|
const refs = entries.map((entry) => {
|
|
617
617
|
const data = entryData(entry);
|
|
618
618
|
const id = dataStr(data, "id");
|
|
@@ -670,12 +670,12 @@ async function hydrateEntryTerms(type, entries, locale) {
|
|
|
670
670
|
byTaxonomy: grouped
|
|
671
671
|
});
|
|
672
672
|
}
|
|
673
|
-
const { primeFoldedEntryTerms } = await import("./taxonomies-
|
|
673
|
+
const { primeFoldedEntryTerms } = await import("./taxonomies-FKTevd14.mjs").then((n) => n.u);
|
|
674
674
|
primeFoldedEntryTerms(type, perEntry, { locale });
|
|
675
675
|
return;
|
|
676
676
|
}
|
|
677
677
|
try {
|
|
678
|
-
const { getAllTermsForEntries } = await import("./taxonomies-
|
|
678
|
+
const { getAllTermsForEntries } = await import("./taxonomies-FKTevd14.mjs").then((n) => n.u);
|
|
679
679
|
const ids = entries.map((entry) => dataStr(entryData(entry), "id")).filter(Boolean);
|
|
680
680
|
if (ids.length === 0) return;
|
|
681
681
|
const termsMap = await getAllTermsForEntries(type, ids, { locale });
|
|
@@ -709,9 +709,9 @@ async function hydrateEntryTerms(type, entries, locale) {
|
|
|
709
709
|
*/
|
|
710
710
|
async function getTranslations(type, id) {
|
|
711
711
|
try {
|
|
712
|
-
const db = (await import("./loader-
|
|
712
|
+
const db = (await import("./loader-BCr2VSzt.mjs").then((n) => n.i)).getDb;
|
|
713
713
|
const dbInstance = await db();
|
|
714
|
-
const { ContentRepository } = await import("./content-
|
|
714
|
+
const { ContentRepository } = await import("./content-Bg_hMt4Q.mjs").then((n) => n.n);
|
|
715
715
|
const repo = new ContentRepository(dbInstance);
|
|
716
716
|
const item = await repo.findByIdOrSlug(type, id);
|
|
717
717
|
if (!item) return {
|
|
@@ -779,8 +779,8 @@ async function resolveDinewayPath(path) {
|
|
|
779
779
|
const hasDbOverride = !!getRequestContext()?.db;
|
|
780
780
|
let patterns = !hasDbOverride ? cachedUrlPatterns : null;
|
|
781
781
|
if (!patterns) {
|
|
782
|
-
const { getDb } = await import("./loader-
|
|
783
|
-
const { SchemaRegistry } = await import("./registry-
|
|
782
|
+
const { getDb } = await import("./loader-BCr2VSzt.mjs").then((n) => n.i);
|
|
783
|
+
const { SchemaRegistry } = await import("./registry-D3n4-yUl.mjs").then((n) => n.r);
|
|
784
784
|
patterns = (await new SchemaRegistry(await getDb()).listCollections()).filter((collection) => collection.urlPattern).map((collection) => {
|
|
785
785
|
const { regex, paramNames } = patternToRegex(collection.urlPattern);
|
|
786
786
|
return {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { r as getDb } from "./loader-
|
|
1
|
+
import { r as getDb } from "./loader-BCr2VSzt.mjs";
|
|
2
2
|
import { n as cachedQuery, t as CacheNamespace } from "./object-cache-D51qOseS.mjs";
|
|
3
3
|
import { r as requestCached } from "./request-cache-CBFjCwSt.mjs";
|
|
4
|
-
import { n as SchemaRegistry } from "./registry-
|
|
4
|
+
import { n as SchemaRegistry } from "./registry-D3n4-yUl.mjs";
|
|
5
5
|
|
|
6
6
|
//#region src/schema/query.ts
|
|
7
7
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as apiError } from "./error-
|
|
2
|
-
import { n as normalizeTrustedHeaders } from "./trusted-proxy-
|
|
1
|
+
import { t as apiError } from "./error-Jz0EtEwI.mjs";
|
|
2
|
+
import { n as normalizeTrustedHeaders } from "./trusted-proxy-NySPw95m.mjs";
|
|
3
3
|
import { sql } from "kysely";
|
|
4
4
|
|
|
5
5
|
//#region src/auth/rate-limit.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as currentTimestampValue } from "./dialect-helpers-fk43GbDb.mjs";
|
|
2
|
-
import { i as encodeCursor, r as decodeCursor } from "./types-
|
|
2
|
+
import { i as encodeCursor, r as decodeCursor } from "./types-C9F2TLQV.mjs";
|
|
3
3
|
import { i as matchPattern, n as interpolateDestination, r as isPattern, t as compilePattern } from "./patterns-CoqlXUvk.mjs";
|
|
4
4
|
import { sql } from "kysely";
|
|
5
5
|
import { ulid } from "ulidx";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as OptionsRepository } from "./options-DQPTH5n0.mjs";
|
|
2
|
-
import { t as RedirectRepository } from "./redirect-
|
|
2
|
+
import { t as RedirectRepository } from "./redirect-8B-gorhg.mjs";
|
|
3
3
|
import { a as validateDestinationParams, i as matchPattern, n as interpolateDestination, o as validatePattern, r as isPattern, t as compilePattern } from "./patterns-CoqlXUvk.mjs";
|
|
4
|
-
import { i as invalidateRedirectCache } from "./cache-
|
|
5
|
-
import { n as isTerminalStatus } from "./status-
|
|
4
|
+
import { i as invalidateRedirectCache } from "./cache-BuVpjvBc.mjs";
|
|
5
|
+
import { n as isTerminalStatus } from "./status-xz9JACSX.mjs";
|
|
6
6
|
|
|
7
7
|
//#region src/redirects/loops.ts
|
|
8
8
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as isSafeHref } from "./url-
|
|
2
|
-
import { n as isTerminalStatus, t as REDIRECT_RULE_STATUSES } from "./status-
|
|
1
|
+
import { t as isSafeHref } from "./url-C05Zz4pW.mjs";
|
|
2
|
+
import { n as isTerminalStatus, t as REDIRECT_RULE_STATUSES } from "./status-xz9JACSX.mjs";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
|
|
5
5
|
//#region src/api/schemas/common.ts
|
|
@@ -478,6 +478,7 @@ const collectionSupportValues = z.enum([
|
|
|
478
478
|
"search"
|
|
479
479
|
]);
|
|
480
480
|
const collectionSourcePattern = /^(template:.+|import:.+|manual|discovered|seed)$/;
|
|
481
|
+
const urlFieldSchema = z.string().min(1).max(63).regex(slugPattern, "Invalid URL field identifier");
|
|
481
482
|
const urlPatternSchema = z.string().refine((value) => !value || value.includes("{slug}"), "URL pattern must include a {slug} placeholder");
|
|
482
483
|
const fieldTypeValues = z.enum([
|
|
483
484
|
"string",
|
|
@@ -537,6 +538,7 @@ const createCollectionBody = z.object({
|
|
|
537
538
|
supports: z.array(collectionSupportValues).optional(),
|
|
538
539
|
source: z.string().regex(collectionSourcePattern).optional(),
|
|
539
540
|
urlPattern: urlPatternSchema.optional(),
|
|
541
|
+
urlField: urlFieldSchema.optional(),
|
|
540
542
|
hasSeo: z.boolean().optional()
|
|
541
543
|
}).meta({ id: "CreateCollectionBody" });
|
|
542
544
|
const updateCollectionBody = z.object({
|
|
@@ -546,6 +548,7 @@ const updateCollectionBody = z.object({
|
|
|
546
548
|
icon: z.string().optional(),
|
|
547
549
|
supports: z.array(collectionSupportValues).optional(),
|
|
548
550
|
urlPattern: urlPatternSchema.nullish(),
|
|
551
|
+
urlField: urlFieldSchema.nullish(),
|
|
549
552
|
hasSeo: z.boolean().optional(),
|
|
550
553
|
commentsEnabled: z.boolean().optional(),
|
|
551
554
|
commentsModeration: z.enum([
|
|
@@ -601,6 +604,7 @@ const collectionSchema = z.object({
|
|
|
601
604
|
supports: z.array(z.string()),
|
|
602
605
|
source: z.string().nullable(),
|
|
603
606
|
urlPattern: z.string().nullable(),
|
|
607
|
+
urlField: z.string().nullish(),
|
|
604
608
|
hasSeo: z.boolean(),
|
|
605
609
|
createdAt: z.string(),
|
|
606
610
|
updatedAt: z.string()
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { a as __exportAll } from "./runner-
|
|
1
|
+
import { a as __exportAll } from "./runner-BWZ87FK-.mjs";
|
|
2
2
|
import { t as validateIdentifier } from "./validate-VPnKoIzW.mjs";
|
|
3
3
|
import { i as currentTimestamp, l as listTablesLike, n as columnExists, u as tableExists } from "./dialect-helpers-fk43GbDb.mjs";
|
|
4
4
|
import { n as contentLocaleUpdatedIndexName, t as contentLocaleCreatedIndexName } from "./content-index-names-Bbu1FY1r.mjs";
|
|
5
|
-
import { n as chunks, t as SQL_BATCH_SIZE } from "./chunks-
|
|
5
|
+
import { n as chunks, t as SQL_BATCH_SIZE } from "./chunks-B-1_U3oF.mjs";
|
|
6
6
|
import { t as withTransaction } from "./transaction-Chz7SBGr.mjs";
|
|
7
7
|
import { a as RESERVED_COLLECTION_SLUGS, o as RESERVED_FIELD_SLUGS, r as FIELD_TYPE_TO_COLUMN } from "./types-B7TDDFMG.mjs";
|
|
8
|
-
import { a as markContentMediaUsageCollectionStaleSafely, n as deleteContentMediaUsageCollection } from "./content-refresh-
|
|
9
|
-
import { t as FTSManager } from "./fts-manager-
|
|
8
|
+
import { a as markContentMediaUsageCollectionStaleSafely, n as deleteContentMediaUsageCollection } from "./content-refresh-CHBBZGwf.mjs";
|
|
9
|
+
import { t as FTSManager } from "./fts-manager-C7pxxk6B.mjs";
|
|
10
10
|
import { t as buildStableHash } from "./stable-hash-DshcXvRE.mjs";
|
|
11
11
|
import { sql } from "kysely";
|
|
12
12
|
import { ulid } from "ulidx";
|
|
@@ -140,6 +140,7 @@ var SchemaRegistry = class {
|
|
|
140
140
|
if (RESERVED_COLLECTION_SLUGS.includes(input.slug)) throw new SchemaError(`Collection slug "${input.slug}" is reserved`, "RESERVED_SLUG");
|
|
141
141
|
if (await this.getCollection(input.slug)) throw new SchemaError(`Collection "${input.slug}" already exists`, "COLLECTION_EXISTS");
|
|
142
142
|
await this.validateUrlPattern(input.urlPattern);
|
|
143
|
+
if (input.urlField) this.validateSlug(input.urlField, "field");
|
|
143
144
|
await this.checkLabelUniqueness(input.label, input.labelSingular);
|
|
144
145
|
await this.checkUrlPatternUniqueness(input.urlPattern);
|
|
145
146
|
const id = ulid();
|
|
@@ -156,7 +157,8 @@ var SchemaRegistry = class {
|
|
|
156
157
|
source: input.source ?? "manual",
|
|
157
158
|
has_seo: hasSeo ? 1 : 0,
|
|
158
159
|
comments_enabled: input.commentsEnabled ? 1 : 0,
|
|
159
|
-
url_pattern: input.urlPattern ?? null
|
|
160
|
+
url_pattern: input.urlPattern ?? null,
|
|
161
|
+
url_field: input.urlField || null
|
|
160
162
|
}).execute();
|
|
161
163
|
await this.createContentTable(input.slug, trx);
|
|
162
164
|
});
|
|
@@ -173,7 +175,9 @@ var SchemaRegistry = class {
|
|
|
173
175
|
const labelChanged = input.label !== void 0 && input.label !== existing.label;
|
|
174
176
|
const labelSingularChanged = input.labelSingular !== void 0 && input.labelSingular !== (existing.labelSingular ?? void 0);
|
|
175
177
|
if (labelChanged || labelSingularChanged) await this.checkLabelUniqueness(labelChanged ? input.label : void 0, labelSingularChanged ? input.labelSingular : void 0, slug);
|
|
176
|
-
|
|
178
|
+
const urlPatternChanged = input.urlPattern !== void 0 && input.urlPattern !== (existing.urlPattern ?? null);
|
|
179
|
+
if (input.urlField) this.validateSlug(input.urlField, "field");
|
|
180
|
+
if (urlPatternChanged) {
|
|
177
181
|
await this.validateUrlPattern(input.urlPattern);
|
|
178
182
|
await this.checkUrlPatternUniqueness(input.urlPattern, slug);
|
|
179
183
|
}
|
|
@@ -188,6 +192,7 @@ var SchemaRegistry = class {
|
|
|
188
192
|
icon: input.icon ?? existing.icon ?? null,
|
|
189
193
|
supports: input.supports ? JSON.stringify(input.supports) : JSON.stringify(existing.supports),
|
|
190
194
|
url_pattern: input.urlPattern !== void 0 ? input.urlPattern ?? null : existing.urlPattern ?? null,
|
|
195
|
+
url_field: input.urlField !== void 0 ? input.urlField || null : existing.urlField ?? null,
|
|
191
196
|
has_seo: hasSeo ? 1 : 0,
|
|
192
197
|
comments_enabled: input.commentsEnabled !== void 0 ? input.commentsEnabled ? 1 : 0 : existing.commentsEnabled ? 1 : 0,
|
|
193
198
|
comments_moderation: input.commentsModeration ?? existing.commentsModeration,
|
|
@@ -484,6 +489,7 @@ var SchemaRegistry = class {
|
|
|
484
489
|
CREATE INDEX ${sql.ref(`idx_${tableName}_translation_group`)}
|
|
485
490
|
ON ${sql.ref(tableName)} (translation_group)
|
|
486
491
|
`.execute(conn);
|
|
492
|
+
await sql`CREATE INDEX ${sql.ref(`idx_${tableName}_public_id`)} ON ${sql.ref(tableName)} (deleted_at, status, id)`.execute(conn);
|
|
487
493
|
await sql`
|
|
488
494
|
CREATE INDEX ${sql.ref(`idx_${tableName}_deleted_updated_id`)}
|
|
489
495
|
ON ${sql.ref(tableName)} (deleted_at, updated_at DESC, id DESC)
|
|
@@ -648,6 +654,7 @@ var SchemaRegistry = class {
|
|
|
648
654
|
source: row.source && isCollectionSource(row.source) ? row.source : void 0,
|
|
649
655
|
hasSeo: row.has_seo === 1,
|
|
650
656
|
urlPattern: row.url_pattern ?? void 0,
|
|
657
|
+
urlField: row.url_field ?? void 0,
|
|
651
658
|
commentsEnabled: row.comments_enabled === 1,
|
|
652
659
|
commentsModeration: moderation === "all" || moderation === "first_time" || moderation === "none" ? moderation : "first_time",
|
|
653
660
|
commentsClosedAfterDays: row.comments_closed_after_days ?? 90,
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { n as getI18nConfig, r as isI18nEnabled, t as getFallbackChain } from "./config-CVssduLe.mjs";
|
|
2
|
+
import { getRequestContext } from "./request-context.mjs";
|
|
3
|
+
|
|
4
|
+
//#region src/i18n/resolve.ts
|
|
5
|
+
/**
|
|
6
|
+
* Shared locale-resolution helpers.
|
|
7
|
+
*
|
|
8
|
+
* An explicit locale wins, then the request-context locale, then the configured
|
|
9
|
+
* defaultLocale when i18n is enabled. If none of those exist, callers should
|
|
10
|
+
* treat the result as "do not filter by locale" for legacy single-locale sites.
|
|
11
|
+
*/
|
|
12
|
+
function resolveLocale(explicit) {
|
|
13
|
+
if (explicit !== void 0) return explicit;
|
|
14
|
+
const ctxLocale = getRequestContext()?.locale;
|
|
15
|
+
if (ctxLocale !== void 0) return ctxLocale;
|
|
16
|
+
const config = getI18nConfig();
|
|
17
|
+
if (config && isI18nEnabled()) return config.defaultLocale;
|
|
18
|
+
}
|
|
19
|
+
function resolveLocaleChain(explicit) {
|
|
20
|
+
const locale = resolveLocale(explicit);
|
|
21
|
+
if (locale === void 0) return [];
|
|
22
|
+
if (!isI18nEnabled()) return [locale];
|
|
23
|
+
return getFallbackChain(locale);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
//#endregion
|
|
27
|
+
export { resolveLocaleChain as n, resolveLocale as t };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as ReviewRequestRepository } from "./review-requests-
|
|
1
|
+
import { t as ReviewRequestRepository } from "./review-requests-D5CJ4JCy.mjs";
|
|
2
2
|
import { t as ReviewPayloadBuilder } from "./review-payload-BysRWpxS.mjs";
|
|
3
3
|
|
|
4
4
|
//#region src/api/handlers/review-requests.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { n as resolveActorIdentity } from "./actor-
|
|
2
|
-
import { p as logSiteActivitySafely } from "./activity-events-
|
|
1
|
+
import { n as resolveActorIdentity } from "./actor-D3A5PNkH.mjs";
|
|
2
|
+
import { p as logSiteActivitySafely } from "./activity-events-DpvhcjTP.mjs";
|
|
3
3
|
|
|
4
4
|
//#region src/api/review-route-helpers.ts
|
|
5
5
|
function resolveReviewRouteActor(locals) {
|