studiocms 0.1.0-beta.10
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/CHANGELOG.md +501 -0
- package/LICENSE +21 -0
- package/README.md +59 -0
- package/custom-renderers/index.ts +4 -0
- package/custom-renderers/markdocRenderers/markdocReact-components/MarkDocReactRenderer.tsx +8 -0
- package/custom-renderers/markdocRenderers/markdocReact-components/MarkDocReactWrapper.astro +13 -0
- package/custom-renderers/markdocRenderers/markdocReact.ts +56 -0
- package/dist/auth.d.js +0 -0
- package/dist/auth.d.ts +397 -0
- package/dist/cli/cmds/get-turso.d.ts +1 -0
- package/dist/cli/cmds/get-turso.js +10 -0
- package/dist/cli/cmds/init/index.d.ts +4 -0
- package/dist/cli/cmds/init/index.js +52 -0
- package/dist/cli/cmds/init/steps/data/studiocmsEnv.d.ts +3 -0
- package/dist/cli/cmds/init/steps/data/studiocmsEnv.js +71 -0
- package/dist/cli/cmds/init/steps/envBuilder.d.ts +21 -0
- package/dist/cli/cmds/init/steps/envBuilder.js +368 -0
- package/dist/cli/cmds/init/steps/nextSteps.d.ts +2 -0
- package/dist/cli/cmds/init/steps/nextSteps.js +38 -0
- package/dist/cli/cmds/init.d.ts +1 -0
- package/dist/cli/cmds/init.js +4 -0
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.js +9 -0
- package/dist/cli/lib/commander.d.ts +39 -0
- package/dist/cli/lib/commander.js +87 -0
- package/dist/cli/lib/context.d.ts +28 -0
- package/dist/cli/lib/context.js +55 -0
- package/dist/cli/lib/pathUtil.d.ts +5 -0
- package/dist/cli/lib/pathUtil.js +14 -0
- package/dist/cli/lib/runExternal.d.ts +20 -0
- package/dist/cli/lib/runExternal.js +40 -0
- package/dist/cli/lib/seasonal.d.ts +5 -0
- package/dist/cli/lib/seasonal.js +88 -0
- package/dist/cli/lib/utils.d.ts +55 -0
- package/dist/cli/lib/utils.js +310 -0
- package/dist/cli/shared/intro.d.ts +2 -0
- package/dist/cli/shared/intro.js +24 -0
- package/dist/components/DefaultEditor.astro +138 -0
- package/dist/components/FormattedDate.astro +12 -0
- package/dist/components/Generator.astro +7 -0
- package/dist/components/Renderer.astro +13 -0
- package/dist/components/auth/OAuthButton.astro +21 -0
- package/dist/components/auth/OAuthButtonStack.astro +36 -0
- package/dist/components/auth/StaticAuthCheck.astro +20 -0
- package/dist/components/auth/StudioCMSLogoSVG.astro +13 -0
- package/dist/components/auth/oAuthButtonProviders.d.ts +8 -0
- package/dist/components/auth/oAuthButtonProviders.js +35 -0
- package/dist/components/dashboard/AstroCodeDiffsScript.astro +25 -0
- package/dist/components/dashboard/BaseHead.astro +41 -0
- package/dist/components/dashboard/Code.astro +23 -0
- package/dist/components/dashboard/DashboardPageHeader.astro +77 -0
- package/dist/components/dashboard/DoubleSidebar.astro +26 -0
- package/dist/components/dashboard/Footer.astro +16 -0
- package/dist/components/dashboard/MainSidebarContent.astro +317 -0
- package/dist/components/dashboard/PageHeader.astro +52 -0
- package/dist/components/dashboard/SidebarLink.astro +61 -0
- package/dist/components/dashboard/SidebarModals.astro +6 -0
- package/dist/components/dashboard/SidebarPluginLink.astro +45 -0
- package/dist/components/dashboard/SingleSidebar.astro +23 -0
- package/dist/components/dashboard/StudioCMSLogo.astro +12 -0
- package/dist/components/dashboard/ThemeManager.astro +53 -0
- package/dist/components/dashboard/component-scripts/TinyMDE.astro +6 -0
- package/dist/components/dashboard/component-scripts/dateTimeListener.d.ts +1 -0
- package/dist/components/dashboard/component-scripts/dateTimeListener.js +14 -0
- package/dist/components/dashboard/component-scripts/dateWithTimeAndZone.d.ts +1 -0
- package/dist/components/dashboard/component-scripts/dateWithTimeAndZone.js +12 -0
- package/dist/components/dashboard/component-scripts/makeClientRoutable.d.ts +1 -0
- package/dist/components/dashboard/component-scripts/makeClientRoutable.js +9 -0
- package/dist/components/dashboard/component-scripts/timeAgo.d.ts +1 -0
- package/dist/components/dashboard/component-scripts/timeAgo.js +21 -0
- package/dist/components/dashboard/islands/LoginChecker.astro +52 -0
- package/dist/components/dashboard/islands/configuration/ConfigForm.astro +317 -0
- package/dist/components/dashboard/islands/configuration/LightVsDark.astro +67 -0
- package/dist/components/dashboard/islands/content-mgmt/CreateFolder.astro +118 -0
- package/dist/components/dashboard/islands/content-mgmt/CreatePage.astro +380 -0
- package/dist/components/dashboard/islands/content-mgmt/EditFolder.astro +138 -0
- package/dist/components/dashboard/islands/content-mgmt/EditPage.astro +432 -0
- package/dist/components/dashboard/islands/content-mgmt/InnerSidebarElement.astro +299 -0
- package/dist/components/dashboard/islands/content-mgmt/PageHeader.astro +455 -0
- package/dist/components/dashboard/islands/content-mgmt/PageList.astro +49 -0
- package/dist/components/dashboard/islands/content-mgmt/PluginFields.astro +29 -0
- package/dist/components/dashboard/islands/content-mgmt/TreeRenderer.astro +75 -0
- package/dist/components/dashboard/islands/content-mgmt/TreeSidebarFolder.astro +53 -0
- package/dist/components/dashboard/islands/content-mgmt/TreeSidebarLink.astro +51 -0
- package/dist/components/dashboard/islands/content-mgmt/runtime.d.ts +10 -0
- package/dist/components/dashboard/islands/content-mgmt/runtime.js +33 -0
- package/dist/components/dashboard/islands/content-mgmt/shared.d.ts +27 -0
- package/dist/components/dashboard/islands/content-mgmt/shared.js +31 -0
- package/dist/components/dashboard/islands/dashboard/DashboardGrid.astro +39 -0
- package/dist/components/dashboard/islands/dashboard/DashboardGridItem.astro +34 -0
- package/dist/components/dashboard/islands/dashboard/Test.astro +5 -0
- package/dist/components/dashboard/islands/dashboard/UserName.astro +6 -0
- package/dist/components/dashboard/islands/dashboard/shared.d.ts +2 -0
- package/dist/components/dashboard/islands/dashboard/shared.js +0 -0
- package/dist/components/dashboard/islands/plugins/SettingsRenderer.astro +29 -0
- package/dist/components/dashboard/islands/profile/APITokens.astro +306 -0
- package/dist/components/dashboard/islands/profile/BasicInfo.astro +140 -0
- package/dist/components/dashboard/islands/profile/BasicInfoFallback.astro +43 -0
- package/dist/components/dashboard/islands/profile/SocialSignin.astro +181 -0
- package/dist/components/dashboard/islands/profile/SocialSigninFallback.astro +83 -0
- package/dist/components/dashboard/islands/profile/UpdatePassword.astro +166 -0
- package/dist/components/dashboard/islands/profile/UpdatePasswordFallback.astro +47 -0
- package/dist/components/dashboard/islands/profile/oAuthButtonProviders.d.ts +8 -0
- package/dist/components/dashboard/islands/profile/oAuthButtonProviders.js +35 -0
- package/dist/components/dashboard/islands/sidebar/UserAccount.astro +23 -0
- package/dist/components/dashboard/islands/sidebar/VersionCheck.astro +127 -0
- package/dist/components/dashboard/islands/sidebar/VersionCheckChangelog.astro +107 -0
- package/dist/components/dashboard/islands/user-mgmt/InnerSidebarElement.astro +348 -0
- package/dist/components/dashboard/islands/user-mgmt/RankCheck.astro +49 -0
- package/dist/components/dashboard/islands/user-mgmt/SocialSignin.astro +109 -0
- package/dist/components/dashboard/islands/user-mgmt/UserListItem.astro +60 -0
- package/dist/components/dashboard/sidebar-modals/UserManagementModals.astro +103 -0
- package/dist/components/dashboard/sidebar-modals/VersionModal.astro +267 -0
- package/dist/components/dashboard/sidebarConfig.d.ts +32 -0
- package/dist/components/dashboard/sidebarConfig.js +88 -0
- package/dist/components/default-grid-items/Recently-created-pages.astro +91 -0
- package/dist/components/default-grid-items/Recently-signed-up.astro +71 -0
- package/dist/components/default-grid-items/Recently-updated-pages.astro +96 -0
- package/dist/components/default-grid-items/Totals.astro +107 -0
- package/dist/components/default-grid-items/utils.d.ts +17 -0
- package/dist/components/default-grid-items/utils.js +26 -0
- package/dist/components/image/CustomImage.astro +90 -0
- package/dist/components/user-quick-tools.d.ts +42 -0
- package/dist/components/user-quick-tools.js +312 -0
- package/dist/config.d.ts +3 -0
- package/dist/config.js +4 -0
- package/dist/consts.d.ts +61 -0
- package/dist/consts.js +39 -0
- package/dist/core.d.js +0 -0
- package/dist/core.d.ts +226 -0
- package/dist/db/config.d.ts +4 -0
- package/dist/db/config.js +6 -0
- package/dist/db/tables.js +168 -0
- package/dist/errors.d.ts +19 -0
- package/dist/errors.js +11 -0
- package/dist/index.d.ts +152 -0
- package/dist/index.js +1179 -0
- package/dist/layouts/auth/AuthLayout.astro +74 -0
- package/dist/layouts/auth/FallbackCanvas.astro +123 -0
- package/dist/layouts/auth/ThemeManager.astro +53 -0
- package/dist/layouts/auth/ThreeCanvasLoader.astro +18 -0
- package/dist/layouts/dashboard/Layout.astro +64 -0
- package/dist/lib/auth/encryption.d.ts +30 -0
- package/dist/lib/auth/encryption.js +39 -0
- package/dist/lib/auth/password.d.ts +27 -0
- package/dist/lib/auth/password.js +42 -0
- package/dist/lib/auth/rate-limit.d.ts +136 -0
- package/dist/lib/auth/rate-limit.js +214 -0
- package/dist/lib/auth/session.d.ts +85 -0
- package/dist/lib/auth/session.js +93 -0
- package/dist/lib/auth/types.d.ts +83 -0
- package/dist/lib/auth/types.js +0 -0
- package/dist/lib/auth/user.d.ts +148 -0
- package/dist/lib/auth/user.js +133 -0
- package/dist/lib/dashboardGrid.d.ts +119 -0
- package/dist/lib/dashboardGrid.js +0 -0
- package/dist/lib/dynamic-sitemap/index.d.ts +42 -0
- package/dist/lib/dynamic-sitemap/index.js +45 -0
- package/dist/lib/dynamic-sitemap/sitemap-index.xml.d.ts +8 -0
- package/dist/lib/dynamic-sitemap/sitemap-index.xml.js +20 -0
- package/dist/lib/dynamic-sitemap/sitemap-index.xml.ts +45 -0
- package/dist/lib/head.d.ts +9 -0
- package/dist/lib/head.js +65 -0
- package/dist/lib/headDefaults.d.ts +18 -0
- package/dist/lib/headDefaults.js +75 -0
- package/dist/lib/i18n/LanguageSelector.astro +114 -0
- package/dist/lib/i18n/client.d.ts +591 -0
- package/dist/lib/i18n/client.js +83 -0
- package/dist/lib/i18n/config.d.ts +16 -0
- package/dist/lib/i18n/config.js +8 -0
- package/dist/lib/i18n/index.d.ts +578 -0
- package/dist/lib/i18n/index.js +63 -0
- package/dist/lib/i18n/translations/de.json +64 -0
- package/dist/lib/i18n/translations/en-us.json +238 -0
- package/dist/lib/i18n/translations/es.json +64 -0
- package/dist/lib/i18n/translations/fr.json +64 -0
- package/dist/lib/index.d.ts +7 -0
- package/dist/lib/index.js +7 -0
- package/dist/lib/jsonUtils.d.ts +2 -0
- package/dist/lib/jsonUtils.js +11 -0
- package/dist/lib/makeAPIRoute.d.ts +45 -0
- package/dist/lib/makeAPIRoute.js +16 -0
- package/dist/lib/makePublicRoute.d.ts +7 -0
- package/dist/lib/makePublicRoute.js +6 -0
- package/dist/lib/pathGenerators.d.ts +20 -0
- package/dist/lib/pathGenerators.js +66 -0
- package/dist/lib/plugins/dashboard-pages.d.ts +71 -0
- package/dist/lib/plugins/dashboard-pages.js +11 -0
- package/dist/lib/plugins/frontend-navigation.d.ts +18 -0
- package/dist/lib/plugins/frontend-navigation.js +39 -0
- package/dist/lib/plugins/index.d.ts +2 -0
- package/dist/lib/plugins/index.js +2 -0
- package/dist/lib/removeLeadingTrailingSlashes.d.ts +7 -0
- package/dist/lib/removeLeadingTrailingSlashes.js +13 -0
- package/dist/lib/renderer/astro-remark.d.ts +13 -0
- package/dist/lib/renderer/astro-remark.js +11 -0
- package/dist/lib/renderer/contentRenderer.d.ts +13 -0
- package/dist/lib/renderer/contentRenderer.js +31 -0
- package/dist/lib/renderer/errors.d.ts +5 -0
- package/dist/lib/renderer/errors.js +25 -0
- package/dist/lib/renderer/markdoc-renderers/markdocHTML.d.ts +3 -0
- package/dist/lib/renderer/markdoc-renderers/markdocHTML.js +14 -0
- package/dist/lib/renderer/markdoc-renderers/markdocReactStatic.d.ts +3 -0
- package/dist/lib/renderer/markdoc-renderers/markdocReactStatic.js +14 -0
- package/dist/lib/renderer/markdoc.d.ts +11 -0
- package/dist/lib/renderer/markdoc.js +28 -0
- package/dist/lib/renderer/mdx.d.ts +10 -0
- package/dist/lib/renderer/mdx.js +37 -0
- package/dist/lib/renderer/runtime.d.ts +8 -0
- package/dist/lib/renderer/runtime.js +30 -0
- package/dist/lib/renderer/shared.d.ts +15 -0
- package/dist/lib/renderer/shared.js +13 -0
- package/dist/lib/renderer/studiocms.d.ts +11 -0
- package/dist/lib/renderer/studiocms.js +22 -0
- package/dist/lib/renderer/types.d.ts +12 -0
- package/dist/lib/renderer/types.js +0 -0
- package/dist/lib/robots/core.d.ts +24 -0
- package/dist/lib/robots/core.js +187 -0
- package/dist/lib/robots/index.d.ts +11 -0
- package/dist/lib/robots/index.js +47 -0
- package/dist/lib/robots/types.d.ts +185 -0
- package/dist/lib/robots/types.js +0 -0
- package/dist/lib/robots/utils.d.ts +22 -0
- package/dist/lib/robots/utils.js +22 -0
- package/dist/lib/routeMap.d.ts +257 -0
- package/dist/lib/routeMap.js +249 -0
- package/dist/lib/urlGen.d.ts +11 -0
- package/dist/lib/urlGen.js +26 -0
- package/dist/lib/webVitals/checkForWebVitalsPlugin.d.ts +18 -0
- package/dist/lib/webVitals/checkForWebVitalsPlugin.js +82 -0
- package/dist/lib/webVitals/consts.d.ts +240 -0
- package/dist/lib/webVitals/consts.js +40 -0
- package/dist/lib/webVitals/dashboard-grid-items/CoreVitals.astro +66 -0
- package/dist/lib/webVitals/dashboard-grid-items/MetricCard.astro +24 -0
- package/dist/lib/webVitals/dashboard-grid-items/SummaryCard.astro +56 -0
- package/dist/lib/webVitals/dashboard-grid-items/metric.css +103 -0
- package/dist/lib/webVitals/dashboard-grid-items/shared.d.ts +29 -0
- package/dist/lib/webVitals/dashboard-grid-items/shared.js +35 -0
- package/dist/lib/webVitals/pages/analytics/body.astro +186 -0
- package/dist/lib/webVitals/pages/analytics/header.astro +42 -0
- package/dist/lib/webVitals/schemas.d.ts +78 -0
- package/dist/lib/webVitals/schemas.js +37 -0
- package/dist/lib/webVitals/types.d.ts +156 -0
- package/dist/lib/webVitals/types.js +0 -0
- package/dist/lib/webVitals/utils/buildDataObject.d.ts +8 -0
- package/dist/lib/webVitals/utils/buildDataObject.js +28 -0
- package/dist/lib/webVitals/utils/buildPageRouteDataObject.d.ts +15 -0
- package/dist/lib/webVitals/utils/buildPageRouteDataObject.js +70 -0
- package/dist/lib/webVitals/utils/buildPerPageDataObject.d.ts +23 -0
- package/dist/lib/webVitals/utils/buildPerPageDataObject.js +209 -0
- package/dist/lib/webVitals/utils/checkDate.d.ts +5 -0
- package/dist/lib/webVitals/utils/checkDate.js +19 -0
- package/dist/lib/webVitals/utils/webVitalsUtils.d.ts +24 -0
- package/dist/lib/webVitals/utils/webVitalsUtils.js +234 -0
- package/dist/lib/webVitals/webVital.d.ts +20 -0
- package/dist/lib/webVitals/webVital.js +40 -0
- package/dist/lib/webVitals/webVitalsRouteSummary.d.ts +19 -0
- package/dist/lib/webVitals/webVitalsRouteSummary.js +59 -0
- package/dist/lib/webVitals/webVitalsSummary.d.ts +19 -0
- package/dist/lib/webVitals/webVitalsSummary.js +49 -0
- package/dist/plugins.d.ts +2 -0
- package/dist/plugins.js +6 -0
- package/dist/renderer.d.js +0 -0
- package/dist/renderer.d.ts +23 -0
- package/dist/routes/api/render.astro +25 -0
- package/dist/routes/auth/api/auth0/callback.d.ts +4 -0
- package/dist/routes/auth/api/auth0/callback.js +117 -0
- package/dist/routes/auth/api/auth0/index.d.ts +4 -0
- package/dist/routes/auth/api/auth0/index.js +36 -0
- package/dist/routes/auth/api/auth0/shared.d.ts +13 -0
- package/dist/routes/auth/api/auth0/shared.js +24 -0
- package/dist/routes/auth/api/discord/callback.d.ts +4 -0
- package/dist/routes/auth/api/discord/callback.js +112 -0
- package/dist/routes/auth/api/discord/index.d.ts +4 -0
- package/dist/routes/auth/api/discord/index.js +36 -0
- package/dist/routes/auth/api/discord/shared.d.ts +12 -0
- package/dist/routes/auth/api/discord/shared.js +17 -0
- package/dist/routes/auth/api/github/callback.d.ts +4 -0
- package/dist/routes/auth/api/github/callback.js +112 -0
- package/dist/routes/auth/api/github/index.d.ts +4 -0
- package/dist/routes/auth/api/github/index.js +36 -0
- package/dist/routes/auth/api/github/shared.d.ts +13 -0
- package/dist/routes/auth/api/github/shared.js +14 -0
- package/dist/routes/auth/api/google/callback.d.ts +4 -0
- package/dist/routes/auth/api/google/callback.js +115 -0
- package/dist/routes/auth/api/google/index.d.ts +4 -0
- package/dist/routes/auth/api/google/index.js +38 -0
- package/dist/routes/auth/api/google/shared.d.ts +12 -0
- package/dist/routes/auth/api/google/shared.js +19 -0
- package/dist/routes/auth/api/login.d.ts +4 -0
- package/dist/routes/auth/api/login.js +46 -0
- package/dist/routes/auth/api/logout.d.ts +5 -0
- package/dist/routes/auth/api/logout.js +55 -0
- package/dist/routes/auth/api/register.d.ts +4 -0
- package/dist/routes/auth/api/register.js +64 -0
- package/dist/routes/auth/api/shared.d.ts +2 -0
- package/dist/routes/auth/api/shared.js +21 -0
- package/dist/routes/auth/login.astro +118 -0
- package/dist/routes/auth/logout.astro +28 -0
- package/dist/routes/auth/signup.astro +124 -0
- package/dist/routes/dashboard/[...pluginPage].astro +88 -0
- package/dist/routes/dashboard/configuration.astro +61 -0
- package/dist/routes/dashboard/content-management/createfolder.astro +83 -0
- package/dist/routes/dashboard/content-management/createpage.astro +86 -0
- package/dist/routes/dashboard/content-management/diff.astro +135 -0
- package/dist/routes/dashboard/content-management/editfolder.astro +67 -0
- package/dist/routes/dashboard/content-management/editpage.astro +71 -0
- package/dist/routes/dashboard/content-management/index.astro +91 -0
- package/dist/routes/dashboard/index.astro +56 -0
- package/dist/routes/dashboard/password-reset.astro +206 -0
- package/dist/routes/dashboard/plugins/[plugin].astro +104 -0
- package/dist/routes/dashboard/profile.astro +87 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/api-tokens.d.ts +5 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/api-tokens.js +90 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/config.d.ts +4 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/config.js +63 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/content/folder.d.ts +6 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/content/folder.js +121 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/content/page.d.ts +6 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/content/page.js +258 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/create-reset-link.d.ts +4 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/create-reset-link.js +59 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/create-user-invite.d.ts +4 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/create-user-invite.js +105 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/create-user.d.ts +4 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/create-user.js +100 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/partials/Editor.astro +61 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/partials/LiveRender.astro +30 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/partials/UserListItems.astro +39 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/plugins/[plugin].d.ts +2 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/plugins/[plugin].js +32 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/profile.d.ts +4 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/profile.js +130 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/reset-password.d.ts +4 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/reset-password.js +105 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/search-list.d.ts +4 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/search-list.js +55 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/users.d.ts +5 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/users.js +92 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/verify-session.d.ts +2 -0
- package/dist/routes/dashboard/studiocms_api/dashboard/verify-session.js +72 -0
- package/dist/routes/dashboard/user-management/edit.astro +631 -0
- package/dist/routes/dashboard/user-management/index.astro +103 -0
- package/dist/routes/error-pages/404.astro +66 -0
- package/dist/routes/firstTimeSetupRoutes/1-start.astro +253 -0
- package/dist/routes/firstTimeSetupRoutes/2-next.astro +208 -0
- package/dist/routes/firstTimeSetupRoutes/3-done.astro +95 -0
- package/dist/routes/firstTimeSetupRoutes/api/step-1.d.ts +2 -0
- package/dist/routes/firstTimeSetupRoutes/api/step-1.js +126 -0
- package/dist/routes/firstTimeSetupRoutes/api/step-2.d.ts +2 -0
- package/dist/routes/firstTimeSetupRoutes/api/step-2.js +110 -0
- package/dist/routes/firstTimeSetupRoutes/components/Layout.astro +41 -0
- package/dist/routes/firstTimeSetupRoutes/components/PageHeader.astro +60 -0
- package/dist/routes/firstTimeSetupRoutes/components/TabItem.astro +44 -0
- package/dist/routes/firstTimeSetupRoutes/components/Tabs.astro +170 -0
- package/dist/routes/firstTimeSetupRoutes/snippets/opt1-astro.config.diff +14 -0
- package/dist/routes/firstTimeSetupRoutes/snippets/opt2-astro.config.diff +9 -0
- package/dist/routes/firstTimeSetupRoutes/snippets/opt2-studiocms.config.diff +5 -0
- package/dist/routes/rest/utils/auth-token.d.ts +17 -0
- package/dist/routes/rest/utils/auth-token.js +31 -0
- package/dist/routes/rest/v1/folders/[id].d.ts +6 -0
- package/dist/routes/rest/v1/folders/[id].js +106 -0
- package/dist/routes/rest/v1/folders/index.d.ts +5 -0
- package/dist/routes/rest/v1/folders/index.js +88 -0
- package/dist/routes/rest/v1/pages/[id]/history/[diffid].d.ts +4 -0
- package/dist/routes/rest/v1/pages/[id]/history/[diffid].js +55 -0
- package/dist/routes/rest/v1/pages/[id]/history/index.d.ts +4 -0
- package/dist/routes/rest/v1/pages/[id]/history/index.js +61 -0
- package/dist/routes/rest/v1/pages/[id]/index.d.ts +6 -0
- package/dist/routes/rest/v1/pages/[id]/index.js +165 -0
- package/dist/routes/rest/v1/pages/index.d.ts +5 -0
- package/dist/routes/rest/v1/pages/index.js +113 -0
- package/dist/routes/rest/v1/public/folders/[id].d.ts +4 -0
- package/dist/routes/rest/v1/public/folders/[id].js +43 -0
- package/dist/routes/rest/v1/public/folders/index.d.ts +4 -0
- package/dist/routes/rest/v1/public/folders/index.js +49 -0
- package/dist/routes/rest/v1/public/pages/[id].d.ts +4 -0
- package/dist/routes/rest/v1/public/pages/[id].js +46 -0
- package/dist/routes/rest/v1/public/pages/index.d.ts +4 -0
- package/dist/routes/rest/v1/public/pages/index.js +61 -0
- package/dist/routes/rest/v1/settings/index.d.ts +5 -0
- package/dist/routes/rest/v1/settings/index.js +75 -0
- package/dist/routes/rest/v1/users/[id].d.ts +6 -0
- package/dist/routes/rest/v1/users/[id].js +212 -0
- package/dist/routes/rest/v1/users/index.d.ts +5 -0
- package/dist/routes/rest/v1/users/index.js +138 -0
- package/dist/routes/sdk/fallback-list-pages.json.d.ts +2 -0
- package/dist/routes/sdk/fallback-list-pages.json.js +19 -0
- package/dist/routes/sdk/fallback-list-pages.json.ts +22 -0
- package/dist/routes/sdk/full-changelog.json.d.ts +16 -0
- package/dist/routes/sdk/full-changelog.json.js +170 -0
- package/dist/routes/sdk/full-changelog.json.ts +224 -0
- package/dist/routes/sdk/list-pages.d.ts +4 -0
- package/dist/routes/sdk/list-pages.js +34 -0
- package/dist/routes/sdk/update-latest-version-cache.d.ts +4 -0
- package/dist/routes/sdk/update-latest-version-cache.js +41 -0
- package/dist/runtime/AstroComponentProxy.d.ts +29 -0
- package/dist/runtime/AstroComponentProxy.js +47 -0
- package/dist/runtime/decoder/decode-codepoint.d.ts +18 -0
- package/dist/runtime/decoder/decode-codepoint.js +58 -0
- package/dist/runtime/decoder/decode-data-html.d.ts +1 -0
- package/dist/runtime/decoder/decode-data-html.js +7 -0
- package/dist/runtime/decoder/decode-data-xml.d.ts +1 -0
- package/dist/runtime/decoder/decode-data-xml.js +7 -0
- package/dist/runtime/decoder/index.d.ts +34 -0
- package/dist/runtime/decoder/index.js +18 -0
- package/dist/runtime/decoder/util.d.ts +208 -0
- package/dist/runtime/decoder/util.js +415 -0
- package/dist/schemas/config/auth.d.ts +175 -0
- package/dist/schemas/config/auth.js +65 -0
- package/dist/schemas/config/componentoverrides.d.ts +17 -0
- package/dist/schemas/config/componentoverrides.js +14 -0
- package/dist/schemas/config/dashboard.d.ts +154 -0
- package/dist/schemas/config/dashboard.js +59 -0
- package/dist/schemas/config/defaultFrontend.d.ts +125 -0
- package/dist/schemas/config/defaultFrontend.js +57 -0
- package/dist/schemas/config/developer.d.ts +15 -0
- package/dist/schemas/config/developer.js +14 -0
- package/dist/schemas/config/imageService.d.ts +13 -0
- package/dist/schemas/config/imageService.js +12 -0
- package/dist/schemas/config/index.d.ts +1153 -0
- package/dist/schemas/config/index.js +95 -0
- package/dist/schemas/config/integrations.d.ts +14 -0
- package/dist/schemas/config/integrations.js +12 -0
- package/dist/schemas/config/markdoc.d.ts +172 -0
- package/dist/schemas/config/markdoc.js +68 -0
- package/dist/schemas/config/mdx.d.ts +455 -0
- package/dist/schemas/config/mdx.js +71 -0
- package/dist/schemas/config/rendererConfig.d.ts +659 -0
- package/dist/schemas/config/rendererConfig.js +51 -0
- package/dist/schemas/config/sdk.d.ts +167 -0
- package/dist/schemas/config/sdk.js +85 -0
- package/dist/schemas/config/studiocms-markdown-remark.d.ts +292 -0
- package/dist/schemas/config/studiocms-markdown-remark.js +63 -0
- package/dist/schemas/index.d.ts +2 -0
- package/dist/schemas/index.js +2 -0
- package/dist/schemas/plugins/index.d.ts +7373 -0
- package/dist/schemas/plugins/index.js +192 -0
- package/dist/schemas/plugins/shared.d.ts +1752 -0
- package/dist/schemas/plugins/shared.js +221 -0
- package/dist/scripts/formListener.d.ts +16 -0
- package/dist/scripts/formListener.js +46 -0
- package/dist/scripts/three.d.ts +1 -0
- package/dist/scripts/three.js +278 -0
- package/dist/scripts/utils/fitModelToViewport.d.ts +8 -0
- package/dist/scripts/utils/fitModelToViewport.js +19 -0
- package/dist/sdk/StudioCMSVirtualCache.d.ts +283 -0
- package/dist/sdk/StudioCMSVirtualCache.js +685 -0
- package/dist/sdk/cache.d.ts +11 -0
- package/dist/sdk/cache.js +12 -0
- package/dist/sdk/core.d.ts +865 -0
- package/dist/sdk/core.js +1966 -0
- package/dist/sdk/errors.d.ts +21 -0
- package/dist/sdk/errors.js +11 -0
- package/dist/sdk/index.d.ts +371 -0
- package/dist/sdk/index.js +8 -0
- package/dist/sdk/lib/foldertree.d.ts +50 -0
- package/dist/sdk/lib/foldertree.js +123 -0
- package/dist/sdk/lib/generators.d.ts +30 -0
- package/dist/sdk/lib/generators.js +25 -0
- package/dist/sdk/lib/packages.d.ts +8 -0
- package/dist/sdk/lib/packages.js +14 -0
- package/dist/sdk/lib/parsers.d.ts +14 -0
- package/dist/sdk/lib/parsers.js +10 -0
- package/dist/sdk/lib/users.d.ts +19 -0
- package/dist/sdk/lib/users.js +26 -0
- package/dist/sdk/tables.d.ts +1198 -0
- package/dist/sdk/tables.js +55 -0
- package/dist/sdk/types/index.d.ts +175 -0
- package/dist/sdk/types/index.js +0 -0
- package/dist/sdk/types/tableDefs.d.ts +75 -0
- package/dist/sdk/types/tableDefs.js +0 -0
- package/dist/sdk/types/tsAlias.d.ts +155 -0
- package/dist/sdk/types/tsAlias.js +0 -0
- package/dist/sdk/utils/db.d.ts +5 -0
- package/dist/sdk/utils/db.js +15 -0
- package/dist/stubs/auth-lib.d.ts +2 -0
- package/dist/stubs/auth-lib.js +519 -0
- package/dist/stubs/auth-scripts.d.ts +2 -0
- package/dist/stubs/auth-scripts.js +29 -0
- package/dist/stubs/auth-utils.d.ts +2 -0
- package/dist/stubs/auth-utils.js +36 -0
- package/dist/stubs/changelog.d.ts +2 -0
- package/dist/stubs/changelog.js +16 -0
- package/dist/stubs/components.d.ts +2 -0
- package/dist/stubs/components.js +67 -0
- package/dist/stubs/core.d.ts +2 -0
- package/dist/stubs/core.js +49 -0
- package/dist/stubs/i18n-dts.d.ts +2 -0
- package/dist/stubs/i18n-dts.js +117 -0
- package/dist/stubs/images.d.ts +1 -0
- package/dist/stubs/images.js +30 -0
- package/dist/stubs/index.d.ts +1 -0
- package/dist/stubs/index.js +40 -0
- package/dist/stubs/lib.d.ts +2 -0
- package/dist/stubs/lib.js +123 -0
- package/dist/stubs/plugins.d.ts +2 -0
- package/dist/stubs/plugins.js +60 -0
- package/dist/stubs/proxy.d.ts +2 -0
- package/dist/stubs/proxy.js +40 -0
- package/dist/stubs/renderer-config.d.ts +2 -0
- package/dist/stubs/renderer-config.js +18 -0
- package/dist/stubs/renderer-markdownConfig.d.ts +2 -0
- package/dist/stubs/renderer-markdownConfig.js +17 -0
- package/dist/stubs/renderer.d.ts +2 -0
- package/dist/stubs/renderer.js +44 -0
- package/dist/stubs/sdk.d.ts +2 -0
- package/dist/stubs/sdk.js +202 -0
- package/dist/stubs/webVitals.d.ts +2 -0
- package/dist/stubs/webVitals.js +40 -0
- package/dist/styles/404.css +47 -0
- package/dist/styles/SyntaxFont.woff2 +0 -0
- package/dist/styles/authlayout.css +138 -0
- package/dist/styles/dashboard-base.css +493 -0
- package/dist/styles/dashboard-code.css +33 -0
- package/dist/styles/dashboard-diff.css +389 -0
- package/dist/styles/dashboard-tiny-mde.css +224 -0
- package/dist/styles/md-remark-callouts/github.css +56 -0
- package/dist/styles/md-remark-callouts/obsidian.css +66 -0
- package/dist/styles/md-remark-callouts/vitepress.css +58 -0
- package/dist/styles/md-remark-headings.css +48 -0
- package/dist/types.d.ts +43 -0
- package/dist/types.js +0 -0
- package/dist/utils/addAPIRoutes.d.ts +9 -0
- package/dist/utils/addAPIRoutes.js +33 -0
- package/dist/utils/addIntegrationArray.d.ts +24 -0
- package/dist/utils/addIntegrationArray.js +11 -0
- package/dist/utils/addIntegrationArrayWithCheck.d.ts +11 -0
- package/dist/utils/addIntegrationArrayWithCheck.js +24 -0
- package/dist/utils/astroConfigCheck.d.ts +8 -0
- package/dist/utils/astroConfigCheck.js +31 -0
- package/dist/utils/astroEnvConfig.d.ts +45 -0
- package/dist/utils/astroEnvConfig.js +9 -0
- package/dist/utils/authEnvCheck.d.ts +38 -0
- package/dist/utils/authEnvCheck.js +82 -0
- package/dist/utils/changelog.d.ts +1 -0
- package/dist/utils/changelog.js +53 -0
- package/dist/utils/changelogLoader.d.ts +15 -0
- package/dist/utils/changelogLoader.js +104 -0
- package/dist/utils/checkENV.d.ts +27 -0
- package/dist/utils/checkENV.js +115 -0
- package/dist/utils/configManager.d.ts +22 -0
- package/dist/utils/configManager.js +98 -0
- package/dist/utils/configResolver.d.ts +283 -0
- package/dist/utils/configResolver.js +105 -0
- package/dist/utils/defineStudioCMSConfig.d.ts +165 -0
- package/dist/utils/defineStudioCMSConfig.js +6 -0
- package/dist/utils/getLabelForPermissionLevel.d.ts +2 -0
- package/dist/utils/getLabelForPermissionLevel.js +17 -0
- package/dist/utils/injectRouteArray.d.ts +19 -0
- package/dist/utils/injectRouteArray.js +75 -0
- package/dist/utils/integrationLogger.d.ts +7 -0
- package/dist/utils/integrationLogger.js +18 -0
- package/dist/utils/integrations.d.ts +4 -0
- package/dist/utils/integrations.js +32 -0
- package/dist/utils/isDashboardRoute.d.ts +7 -0
- package/dist/utils/isDashboardRoute.js +10 -0
- package/dist/utils/loginBackgrounds/studiocms-blobs-dark.png +0 -0
- package/dist/utils/loginBackgrounds/studiocms-blobs-light.png +0 -0
- package/dist/utils/loginBackgrounds/studiocms-blocks-dark.png +0 -0
- package/dist/utils/loginBackgrounds/studiocms-blocks-light.png +0 -0
- package/dist/utils/loginBackgrounds/studiocms-curves-dark.png +0 -0
- package/dist/utils/loginBackgrounds/studiocms-curves-light.png +0 -0
- package/dist/utils/makePageTitle.d.ts +3 -0
- package/dist/utils/makePageTitle.js +7 -0
- package/dist/utils/pageListPackageLabel.d.ts +4 -0
- package/dist/utils/pageListPackageLabel.js +12 -0
- package/dist/utils/readJson.d.ts +1 -0
- package/dist/utils/readJson.js +7 -0
- package/dist/utils/routeBuilder.d.ts +18 -0
- package/dist/utils/routeBuilder.js +96 -0
- package/dist/utils/safeString.d.ts +1 -0
- package/dist/utils/safeString.js +6 -0
- package/dist/utils/simpleResponse.d.ts +1 -0
- package/dist/utils/simpleResponse.js +29 -0
- package/dist/utils/validImages.d.ts +13 -0
- package/dist/utils/validImages.js +39 -0
- package/dist/virtual.d.js +0 -0
- package/dist/virtual.d.ts +9 -0
- package/package.json +219 -0
- package/studiocms-cli.mjs +13 -0
- package/ui.d.ts +291 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { z } from "astro/zod";
|
|
2
|
+
import { markdocConfigSchema } from "./markdoc.js";
|
|
3
|
+
import { mdxConfigSchema } from "./mdx.js";
|
|
4
|
+
import {
|
|
5
|
+
StudioCMSMarkdownExtendedSchema,
|
|
6
|
+
TransformToProcessor
|
|
7
|
+
} from "./studiocms-markdown-remark.js";
|
|
8
|
+
const StudioCMSRendererConfigSchema = z.object({
|
|
9
|
+
/**
|
|
10
|
+
* The Markdown Content Renderer to use for rendering pages and posts
|
|
11
|
+
*
|
|
12
|
+
* Astro is the built-in Astro remark-markdown plugin.
|
|
13
|
+
* @see https://www.npmjs.com/package/@astrojs/markdown-remark
|
|
14
|
+
*
|
|
15
|
+
* Markdoc is a powerful, flexible, Markdown-based authoring framework. Built by Stripe.
|
|
16
|
+
* @see https://markdoc.dev/ for more info about markdoc.
|
|
17
|
+
*
|
|
18
|
+
*/
|
|
19
|
+
renderer: z.union([
|
|
20
|
+
z.literal("studiocms"),
|
|
21
|
+
z.literal("astro"),
|
|
22
|
+
z.literal("markdoc"),
|
|
23
|
+
z.literal("mdx"),
|
|
24
|
+
z.custom()
|
|
25
|
+
]).optional().default("studiocms"),
|
|
26
|
+
/**
|
|
27
|
+
* Allows customization of the Markdoc Configuration
|
|
28
|
+
*
|
|
29
|
+
* Markdoc is a powerful, flexible, Markdown-based authoring framework. Built by Stripe.
|
|
30
|
+
* @see https://markdoc.dev/ for more info about markdoc.
|
|
31
|
+
*/
|
|
32
|
+
markdocConfig: markdocConfigSchema,
|
|
33
|
+
/**
|
|
34
|
+
* Allows customization of the MDX Configuration
|
|
35
|
+
*
|
|
36
|
+
* MDX is a JSX in Markdown loader, parser, and renderer for ambitious projects.
|
|
37
|
+
* @see https://mdxjs.com/ for more info about MDX.
|
|
38
|
+
*/
|
|
39
|
+
mdxConfig: mdxConfigSchema,
|
|
40
|
+
/**
|
|
41
|
+
* Allows customization of the StudioCMS Markdown Extended Configuration
|
|
42
|
+
*
|
|
43
|
+
* StudioCMS Markdown Extended is a collection of custom markdown features for StudioCMS.
|
|
44
|
+
* @see https://github.com/withstudiocms/markdown-remark/tree/main for more info about StudioCMS Markdown Extended.
|
|
45
|
+
*/
|
|
46
|
+
studiocms: StudioCMSMarkdownExtendedSchema
|
|
47
|
+
}).optional().default({});
|
|
48
|
+
export {
|
|
49
|
+
StudioCMSRendererConfigSchema,
|
|
50
|
+
TransformToProcessor
|
|
51
|
+
};
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
import { z } from 'astro/zod';
|
|
2
|
+
declare const TimeStringSchema: z.ZodEffects<z.ZodString, number, string>;
|
|
3
|
+
export type TimeString = typeof TimeStringSchema._input;
|
|
4
|
+
/**
|
|
5
|
+
* Schema for cache configuration.
|
|
6
|
+
*/
|
|
7
|
+
declare const CacheConfigSchema: z.ZodObject<{
|
|
8
|
+
/**
|
|
9
|
+
* Cache Lifetime
|
|
10
|
+
*
|
|
11
|
+
* `{number}{unit}` - e.g. '5m' for 5 minutes or '1h' for 1 hour
|
|
12
|
+
* @default '5m'
|
|
13
|
+
*/
|
|
14
|
+
lifetime: z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodString, number, string>>>;
|
|
15
|
+
}, "strip", z.ZodTypeAny, {
|
|
16
|
+
lifetime: number;
|
|
17
|
+
}, {
|
|
18
|
+
lifetime?: string | undefined;
|
|
19
|
+
}>;
|
|
20
|
+
/**
|
|
21
|
+
* Schema for processed cache configuration.
|
|
22
|
+
*
|
|
23
|
+
* Extends the base CacheConfigSchema with additional properties.
|
|
24
|
+
*
|
|
25
|
+
* Properties:
|
|
26
|
+
* - `enabled` (boolean): Indicates if the cache is enabled.
|
|
27
|
+
* - @default true
|
|
28
|
+
*/
|
|
29
|
+
declare const ProcessedCacheConfigSchema: z.ZodObject<{
|
|
30
|
+
/**
|
|
31
|
+
* Cache Enabled
|
|
32
|
+
*
|
|
33
|
+
* @default true
|
|
34
|
+
*/
|
|
35
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
36
|
+
/**
|
|
37
|
+
* Cache Lifetime
|
|
38
|
+
*
|
|
39
|
+
* `{number}{unit}` - e.g. '5m' for 5 minutes or '1h' for 1 hour
|
|
40
|
+
* @default '5m'
|
|
41
|
+
*/
|
|
42
|
+
lifetime: z.ZodDefault<z.ZodEffects<z.ZodString, number, string>>;
|
|
43
|
+
}, "strip", z.ZodTypeAny, {
|
|
44
|
+
enabled: boolean;
|
|
45
|
+
lifetime: number;
|
|
46
|
+
}, {
|
|
47
|
+
enabled?: boolean | undefined;
|
|
48
|
+
lifetime?: string | undefined;
|
|
49
|
+
}>;
|
|
50
|
+
/**
|
|
51
|
+
* Represents the configuration for the cache.
|
|
52
|
+
*
|
|
53
|
+
* This type is inferred from the `CacheConfigSchema` using Zod's `infer` method.
|
|
54
|
+
* It ensures that the cache configuration adheres to the schema defined in `CacheConfigSchema`.
|
|
55
|
+
*/
|
|
56
|
+
export type CacheConfig = z.infer<typeof CacheConfigSchema>;
|
|
57
|
+
/**
|
|
58
|
+
* Represents the processed cache configuration inferred from the ProcessedCacheConfigSchema.
|
|
59
|
+
*
|
|
60
|
+
* This type is used to define the structure of the cache configuration after it has been
|
|
61
|
+
* processed and validated by the schema.
|
|
62
|
+
*/
|
|
63
|
+
export type ProcessedCacheConfig = z.infer<typeof ProcessedCacheConfigSchema>;
|
|
64
|
+
/**
|
|
65
|
+
* Schema for processing SDK configuration.
|
|
66
|
+
*/
|
|
67
|
+
declare const ProcessedSDKSchema: z.ZodObject<{
|
|
68
|
+
/**
|
|
69
|
+
* Cache Configuration
|
|
70
|
+
*
|
|
71
|
+
* @default cacheConfig: { lifetime: '5m' }
|
|
72
|
+
*/
|
|
73
|
+
cacheConfig: z.ZodObject<{
|
|
74
|
+
/**
|
|
75
|
+
* Cache Enabled
|
|
76
|
+
*
|
|
77
|
+
* @default true
|
|
78
|
+
*/
|
|
79
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
80
|
+
/**
|
|
81
|
+
* Cache Lifetime
|
|
82
|
+
*
|
|
83
|
+
* `{number}{unit}` - e.g. '5m' for 5 minutes or '1h' for 1 hour
|
|
84
|
+
* @default '5m'
|
|
85
|
+
*/
|
|
86
|
+
lifetime: z.ZodDefault<z.ZodEffects<z.ZodString, number, string>>;
|
|
87
|
+
}, "strip", z.ZodTypeAny, {
|
|
88
|
+
enabled: boolean;
|
|
89
|
+
lifetime: number;
|
|
90
|
+
}, {
|
|
91
|
+
enabled?: boolean | undefined;
|
|
92
|
+
lifetime?: string | undefined;
|
|
93
|
+
}>;
|
|
94
|
+
}, "strip", z.ZodTypeAny, {
|
|
95
|
+
cacheConfig: {
|
|
96
|
+
enabled: boolean;
|
|
97
|
+
lifetime: number;
|
|
98
|
+
};
|
|
99
|
+
}, {
|
|
100
|
+
cacheConfig: {
|
|
101
|
+
enabled?: boolean | undefined;
|
|
102
|
+
lifetime?: string | undefined;
|
|
103
|
+
};
|
|
104
|
+
}>;
|
|
105
|
+
/**
|
|
106
|
+
* Type definition for the processed SDK configuration.
|
|
107
|
+
*
|
|
108
|
+
* This type is inferred from the `ProcessedSDKSchema` using Zod's `infer` method.
|
|
109
|
+
* It represents the structure of the SDK configuration after it has been processed.
|
|
110
|
+
*/
|
|
111
|
+
export type ProcessedSDKConfig = z.infer<typeof ProcessedSDKSchema>;
|
|
112
|
+
/**
|
|
113
|
+
* SDKSchema is a Zod schema that validates the SDK configuration.
|
|
114
|
+
* It can either be a boolean or an object containing cache configuration.
|
|
115
|
+
*
|
|
116
|
+
* If it is a boolean, it defaults to `true` and transforms into an object
|
|
117
|
+
* with default cache configuration.
|
|
118
|
+
*
|
|
119
|
+
* If it is an object, it must contain the `cacheConfig` property which is
|
|
120
|
+
* validated by the `SDKCacheSchema`.
|
|
121
|
+
*/
|
|
122
|
+
export declare const SDKSchema: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
|
|
123
|
+
/**
|
|
124
|
+
* Cache Configuration
|
|
125
|
+
*
|
|
126
|
+
* @default cacheConfig: { lifetime: '5m' }
|
|
127
|
+
*/
|
|
128
|
+
cacheConfig: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
|
|
129
|
+
/**
|
|
130
|
+
* Cache Lifetime
|
|
131
|
+
*
|
|
132
|
+
* `{number}{unit}` - e.g. '5m' for 5 minutes or '1h' for 1 hour
|
|
133
|
+
* @default '5m'
|
|
134
|
+
*/
|
|
135
|
+
lifetime: z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodString, number, string>>>;
|
|
136
|
+
}, "strip", z.ZodTypeAny, {
|
|
137
|
+
lifetime: number;
|
|
138
|
+
}, {
|
|
139
|
+
lifetime?: string | undefined;
|
|
140
|
+
}>]>>>, {
|
|
141
|
+
enabled: boolean;
|
|
142
|
+
lifetime: number;
|
|
143
|
+
}, boolean | {
|
|
144
|
+
lifetime?: string | undefined;
|
|
145
|
+
} | undefined>;
|
|
146
|
+
}, "strip", z.ZodTypeAny, {
|
|
147
|
+
cacheConfig: {
|
|
148
|
+
enabled: boolean;
|
|
149
|
+
lifetime: number;
|
|
150
|
+
};
|
|
151
|
+
}, {
|
|
152
|
+
cacheConfig?: boolean | {
|
|
153
|
+
lifetime?: string | undefined;
|
|
154
|
+
} | undefined;
|
|
155
|
+
}>]>>>, {
|
|
156
|
+
cacheConfig: {
|
|
157
|
+
enabled: boolean;
|
|
158
|
+
lifetime: number;
|
|
159
|
+
};
|
|
160
|
+
}, boolean | {
|
|
161
|
+
cacheConfig?: boolean | {
|
|
162
|
+
lifetime?: string | undefined;
|
|
163
|
+
} | undefined;
|
|
164
|
+
} | undefined>;
|
|
165
|
+
export type StudioCMS_SDKOptions = typeof SDKSchema._input;
|
|
166
|
+
export type StudioCMS_SDKConfig = typeof SDKSchema._output;
|
|
167
|
+
export {};
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { z } from "astro/zod";
|
|
2
|
+
import { defaultCacheLifeTime } from "../../consts.js";
|
|
3
|
+
const TimeUnitSchema = z.union([z.literal("m"), z.literal("h")]);
|
|
4
|
+
const TimeStringSchema = z.string().regex(/^\d+(m|h)$/, {
|
|
5
|
+
message: "Invalid time string format. Must be a number followed by 'm' or 'h'."
|
|
6
|
+
}).transform((value) => {
|
|
7
|
+
const timeUnits = {
|
|
8
|
+
m: 60 * 1e3,
|
|
9
|
+
// Minutes to milliseconds
|
|
10
|
+
h: 60 * 60 * 1e3
|
|
11
|
+
// Hours to milliseconds
|
|
12
|
+
};
|
|
13
|
+
const match = value.match(/^(\d+)([mh])$/);
|
|
14
|
+
if (!match) {
|
|
15
|
+
throw new Error("Invalid time format. Use values like '5m', '1h', etc.");
|
|
16
|
+
}
|
|
17
|
+
const val = Number.parseInt(match[1], 10);
|
|
18
|
+
const unit = match[2];
|
|
19
|
+
return val * timeUnits[unit];
|
|
20
|
+
});
|
|
21
|
+
const CacheConfigSchema = z.object({
|
|
22
|
+
/**
|
|
23
|
+
* Cache Lifetime
|
|
24
|
+
*
|
|
25
|
+
* `{number}{unit}` - e.g. '5m' for 5 minutes or '1h' for 1 hour
|
|
26
|
+
* @default '5m'
|
|
27
|
+
*/
|
|
28
|
+
lifetime: TimeStringSchema.optional().default(defaultCacheLifeTime)
|
|
29
|
+
});
|
|
30
|
+
const ProcessedCacheConfigSchema = z.object({
|
|
31
|
+
/**
|
|
32
|
+
* Cache Enabled
|
|
33
|
+
*
|
|
34
|
+
* @default true
|
|
35
|
+
*/
|
|
36
|
+
enabled: z.boolean().default(true),
|
|
37
|
+
/**
|
|
38
|
+
* Cache Lifetime
|
|
39
|
+
*
|
|
40
|
+
* `{number}{unit}` - e.g. '5m' for 5 minutes or '1h' for 1 hour
|
|
41
|
+
* @default '5m'
|
|
42
|
+
*/
|
|
43
|
+
lifetime: TimeStringSchema.default(defaultCacheLifeTime)
|
|
44
|
+
});
|
|
45
|
+
const SDKCacheSchema = z.union([z.boolean(), CacheConfigSchema]).optional().default(true).transform((cacheConfig) => {
|
|
46
|
+
if (typeof cacheConfig === "boolean") {
|
|
47
|
+
return {
|
|
48
|
+
enabled: cacheConfig,
|
|
49
|
+
lifetime: TimeStringSchema.parse(defaultCacheLifeTime)
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
return { enabled: true, lifetime: cacheConfig.lifetime };
|
|
53
|
+
});
|
|
54
|
+
const ProcessedSDKSchema = z.object({
|
|
55
|
+
/**
|
|
56
|
+
* Cache Configuration
|
|
57
|
+
*
|
|
58
|
+
* @default cacheConfig: { lifetime: '5m' }
|
|
59
|
+
*/
|
|
60
|
+
cacheConfig: ProcessedCacheConfigSchema
|
|
61
|
+
});
|
|
62
|
+
const SDKSchema = z.union([
|
|
63
|
+
z.boolean(),
|
|
64
|
+
z.object({
|
|
65
|
+
/**
|
|
66
|
+
* Cache Configuration
|
|
67
|
+
*
|
|
68
|
+
* @default cacheConfig: { lifetime: '5m' }
|
|
69
|
+
*/
|
|
70
|
+
cacheConfig: SDKCacheSchema
|
|
71
|
+
})
|
|
72
|
+
]).optional().default(true).transform((sdkConfig) => {
|
|
73
|
+
if (typeof sdkConfig === "boolean") {
|
|
74
|
+
return {
|
|
75
|
+
cacheConfig: {
|
|
76
|
+
enabled: sdkConfig,
|
|
77
|
+
lifetime: TimeStringSchema.parse(defaultCacheLifeTime)
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
return sdkConfig;
|
|
82
|
+
});
|
|
83
|
+
export {
|
|
84
|
+
SDKSchema
|
|
85
|
+
};
|
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
import type { StudioCMSConfigOptions } from '@studiocms/markdown-remark-processor';
|
|
2
|
+
import { z } from 'astro/zod';
|
|
3
|
+
export declare const StudioCMSSanitizeOptionsSchema: z.ZodOptional<z.ZodObject<{
|
|
4
|
+
/** An Array of strings indicating elements that the sanitizer should not remove. All elements not in the array will be dropped. */
|
|
5
|
+
allowElements: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
6
|
+
/** An Array of strings indicating elements that the sanitizer should remove. Children will be kept. */
|
|
7
|
+
blockElements: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
8
|
+
/** An Array of strings indicating elements (including nested elements) that the sanitizer should remove. */
|
|
9
|
+
dropElements: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
10
|
+
/** An object where each key is the attribute name and the value is an array of allowed tag names. Matching attributes will not be removed. All attributes that are not in the array will be dropped. */
|
|
11
|
+
allowAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
|
|
12
|
+
/** An object where each key is the attribute name and the value is an array of dropped tag names. Matching attributes will be removed. */
|
|
13
|
+
dropAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
|
|
14
|
+
/** A boolean value to remove components and their children. If set to true, components will be subject to built-in and custom configuration checks (and will be retained or dropped based on those checks). Default is `false`. */
|
|
15
|
+
allowComponents: z.ZodOptional<z.ZodBoolean>;
|
|
16
|
+
/** A boolean value to remove custom elements and their children. If set to true, custom elements will be subject to built-in and custom configuration checks (and will be retained or dropped based on those checks). Default is `false` */
|
|
17
|
+
allowCustomElements: z.ZodOptional<z.ZodBoolean>;
|
|
18
|
+
/** A boolean value to remove HTML comments. Set to true in order to keep comments. Default is `false`. */
|
|
19
|
+
allowComments: z.ZodOptional<z.ZodBoolean>;
|
|
20
|
+
}, "strip", z.ZodTypeAny, {
|
|
21
|
+
allowElements?: string[] | undefined;
|
|
22
|
+
blockElements?: string[] | undefined;
|
|
23
|
+
dropElements?: string[] | undefined;
|
|
24
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
25
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
26
|
+
allowComponents?: boolean | undefined;
|
|
27
|
+
allowCustomElements?: boolean | undefined;
|
|
28
|
+
allowComments?: boolean | undefined;
|
|
29
|
+
}, {
|
|
30
|
+
allowElements?: string[] | undefined;
|
|
31
|
+
blockElements?: string[] | undefined;
|
|
32
|
+
dropElements?: string[] | undefined;
|
|
33
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
34
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
35
|
+
allowComponents?: boolean | undefined;
|
|
36
|
+
allowCustomElements?: boolean | undefined;
|
|
37
|
+
allowComments?: boolean | undefined;
|
|
38
|
+
}>>;
|
|
39
|
+
export declare const StudioCMSMarkdownExtendedSchema: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
|
|
40
|
+
callouts: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
|
|
41
|
+
theme: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"github">, z.ZodLiteral<"obsidian">, z.ZodLiteral<"vitepress">]>>>;
|
|
42
|
+
}, "strip", z.ZodTypeAny, {
|
|
43
|
+
theme: "github" | "obsidian" | "vitepress";
|
|
44
|
+
}, {
|
|
45
|
+
theme?: "github" | "obsidian" | "vitepress" | undefined;
|
|
46
|
+
}>]>>>, {
|
|
47
|
+
enabled: boolean;
|
|
48
|
+
theme: "github" | "obsidian" | "vitepress";
|
|
49
|
+
}, false | {
|
|
50
|
+
theme?: "github" | "obsidian" | "vitepress" | undefined;
|
|
51
|
+
} | undefined>;
|
|
52
|
+
autoLinkHeadings: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
53
|
+
discordSubtext: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
54
|
+
sanitize: z.ZodOptional<z.ZodObject<{
|
|
55
|
+
/** An Array of strings indicating elements that the sanitizer should not remove. All elements not in the array will be dropped. */
|
|
56
|
+
allowElements: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
57
|
+
/** An Array of strings indicating elements that the sanitizer should remove. Children will be kept. */
|
|
58
|
+
blockElements: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
59
|
+
/** An Array of strings indicating elements (including nested elements) that the sanitizer should remove. */
|
|
60
|
+
dropElements: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
61
|
+
/** An object where each key is the attribute name and the value is an array of allowed tag names. Matching attributes will not be removed. All attributes that are not in the array will be dropped. */
|
|
62
|
+
allowAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
|
|
63
|
+
/** An object where each key is the attribute name and the value is an array of dropped tag names. Matching attributes will be removed. */
|
|
64
|
+
dropAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
|
|
65
|
+
/** A boolean value to remove components and their children. If set to true, components will be subject to built-in and custom configuration checks (and will be retained or dropped based on those checks). Default is `false`. */
|
|
66
|
+
allowComponents: z.ZodOptional<z.ZodBoolean>;
|
|
67
|
+
/** A boolean value to remove custom elements and their children. If set to true, custom elements will be subject to built-in and custom configuration checks (and will be retained or dropped based on those checks). Default is `false` */
|
|
68
|
+
allowCustomElements: z.ZodOptional<z.ZodBoolean>;
|
|
69
|
+
/** A boolean value to remove HTML comments. Set to true in order to keep comments. Default is `false`. */
|
|
70
|
+
allowComments: z.ZodOptional<z.ZodBoolean>;
|
|
71
|
+
}, "strip", z.ZodTypeAny, {
|
|
72
|
+
allowElements?: string[] | undefined;
|
|
73
|
+
blockElements?: string[] | undefined;
|
|
74
|
+
dropElements?: string[] | undefined;
|
|
75
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
76
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
77
|
+
allowComponents?: boolean | undefined;
|
|
78
|
+
allowCustomElements?: boolean | undefined;
|
|
79
|
+
allowComments?: boolean | undefined;
|
|
80
|
+
}, {
|
|
81
|
+
allowElements?: string[] | undefined;
|
|
82
|
+
blockElements?: string[] | undefined;
|
|
83
|
+
dropElements?: string[] | undefined;
|
|
84
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
85
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
86
|
+
allowComponents?: boolean | undefined;
|
|
87
|
+
allowCustomElements?: boolean | undefined;
|
|
88
|
+
allowComments?: boolean | undefined;
|
|
89
|
+
}>>;
|
|
90
|
+
}, "strip", z.ZodTypeAny, {
|
|
91
|
+
callouts: {
|
|
92
|
+
enabled: boolean;
|
|
93
|
+
theme: "github" | "obsidian" | "vitepress";
|
|
94
|
+
};
|
|
95
|
+
autoLinkHeadings: boolean;
|
|
96
|
+
discordSubtext: boolean;
|
|
97
|
+
sanitize?: {
|
|
98
|
+
allowElements?: string[] | undefined;
|
|
99
|
+
blockElements?: string[] | undefined;
|
|
100
|
+
dropElements?: string[] | undefined;
|
|
101
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
102
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
103
|
+
allowComponents?: boolean | undefined;
|
|
104
|
+
allowCustomElements?: boolean | undefined;
|
|
105
|
+
allowComments?: boolean | undefined;
|
|
106
|
+
} | undefined;
|
|
107
|
+
}, {
|
|
108
|
+
callouts?: false | {
|
|
109
|
+
theme?: "github" | "obsidian" | "vitepress" | undefined;
|
|
110
|
+
} | undefined;
|
|
111
|
+
autoLinkHeadings?: boolean | undefined;
|
|
112
|
+
discordSubtext?: boolean | undefined;
|
|
113
|
+
sanitize?: {
|
|
114
|
+
allowElements?: string[] | undefined;
|
|
115
|
+
blockElements?: string[] | undefined;
|
|
116
|
+
dropElements?: string[] | undefined;
|
|
117
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
118
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
119
|
+
allowComponents?: boolean | undefined;
|
|
120
|
+
allowCustomElements?: boolean | undefined;
|
|
121
|
+
allowComments?: boolean | undefined;
|
|
122
|
+
} | undefined;
|
|
123
|
+
}>]>>>, {
|
|
124
|
+
callouts: {
|
|
125
|
+
enabled: boolean;
|
|
126
|
+
theme: "github" | "obsidian" | "vitepress";
|
|
127
|
+
};
|
|
128
|
+
autoLinkHeadings: boolean;
|
|
129
|
+
discordSubtext: boolean;
|
|
130
|
+
sanitize?: {
|
|
131
|
+
allowElements?: string[] | undefined;
|
|
132
|
+
blockElements?: string[] | undefined;
|
|
133
|
+
dropElements?: string[] | undefined;
|
|
134
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
135
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
136
|
+
allowComponents?: boolean | undefined;
|
|
137
|
+
allowCustomElements?: boolean | undefined;
|
|
138
|
+
allowComments?: boolean | undefined;
|
|
139
|
+
} | undefined;
|
|
140
|
+
}, false | {
|
|
141
|
+
callouts?: false | {
|
|
142
|
+
theme?: "github" | "obsidian" | "vitepress" | undefined;
|
|
143
|
+
} | undefined;
|
|
144
|
+
autoLinkHeadings?: boolean | undefined;
|
|
145
|
+
discordSubtext?: boolean | undefined;
|
|
146
|
+
sanitize?: {
|
|
147
|
+
allowElements?: string[] | undefined;
|
|
148
|
+
blockElements?: string[] | undefined;
|
|
149
|
+
dropElements?: string[] | undefined;
|
|
150
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
151
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
152
|
+
allowComponents?: boolean | undefined;
|
|
153
|
+
allowCustomElements?: boolean | undefined;
|
|
154
|
+
allowComments?: boolean | undefined;
|
|
155
|
+
} | undefined;
|
|
156
|
+
} | undefined>;
|
|
157
|
+
export declare const TransformToProcessor: z.ZodEffects<z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
|
|
158
|
+
callouts: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
|
|
159
|
+
theme: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"github">, z.ZodLiteral<"obsidian">, z.ZodLiteral<"vitepress">]>>>;
|
|
160
|
+
}, "strip", z.ZodTypeAny, {
|
|
161
|
+
theme: "github" | "obsidian" | "vitepress";
|
|
162
|
+
}, {
|
|
163
|
+
theme?: "github" | "obsidian" | "vitepress" | undefined;
|
|
164
|
+
}>]>>>, {
|
|
165
|
+
enabled: boolean;
|
|
166
|
+
theme: "github" | "obsidian" | "vitepress";
|
|
167
|
+
}, false | {
|
|
168
|
+
theme?: "github" | "obsidian" | "vitepress" | undefined;
|
|
169
|
+
} | undefined>;
|
|
170
|
+
autoLinkHeadings: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
171
|
+
discordSubtext: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
172
|
+
sanitize: z.ZodOptional<z.ZodObject<{
|
|
173
|
+
/** An Array of strings indicating elements that the sanitizer should not remove. All elements not in the array will be dropped. */
|
|
174
|
+
allowElements: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
175
|
+
/** An Array of strings indicating elements that the sanitizer should remove. Children will be kept. */
|
|
176
|
+
blockElements: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
177
|
+
/** An Array of strings indicating elements (including nested elements) that the sanitizer should remove. */
|
|
178
|
+
dropElements: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
179
|
+
/** An object where each key is the attribute name and the value is an array of allowed tag names. Matching attributes will not be removed. All attributes that are not in the array will be dropped. */
|
|
180
|
+
allowAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
|
|
181
|
+
/** An object where each key is the attribute name and the value is an array of dropped tag names. Matching attributes will be removed. */
|
|
182
|
+
dropAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
|
|
183
|
+
/** A boolean value to remove components and their children. If set to true, components will be subject to built-in and custom configuration checks (and will be retained or dropped based on those checks). Default is `false`. */
|
|
184
|
+
allowComponents: z.ZodOptional<z.ZodBoolean>;
|
|
185
|
+
/** A boolean value to remove custom elements and their children. If set to true, custom elements will be subject to built-in and custom configuration checks (and will be retained or dropped based on those checks). Default is `false` */
|
|
186
|
+
allowCustomElements: z.ZodOptional<z.ZodBoolean>;
|
|
187
|
+
/** A boolean value to remove HTML comments. Set to true in order to keep comments. Default is `false`. */
|
|
188
|
+
allowComments: z.ZodOptional<z.ZodBoolean>;
|
|
189
|
+
}, "strip", z.ZodTypeAny, {
|
|
190
|
+
allowElements?: string[] | undefined;
|
|
191
|
+
blockElements?: string[] | undefined;
|
|
192
|
+
dropElements?: string[] | undefined;
|
|
193
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
194
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
195
|
+
allowComponents?: boolean | undefined;
|
|
196
|
+
allowCustomElements?: boolean | undefined;
|
|
197
|
+
allowComments?: boolean | undefined;
|
|
198
|
+
}, {
|
|
199
|
+
allowElements?: string[] | undefined;
|
|
200
|
+
blockElements?: string[] | undefined;
|
|
201
|
+
dropElements?: string[] | undefined;
|
|
202
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
203
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
204
|
+
allowComponents?: boolean | undefined;
|
|
205
|
+
allowCustomElements?: boolean | undefined;
|
|
206
|
+
allowComments?: boolean | undefined;
|
|
207
|
+
}>>;
|
|
208
|
+
}, "strip", z.ZodTypeAny, {
|
|
209
|
+
callouts: {
|
|
210
|
+
enabled: boolean;
|
|
211
|
+
theme: "github" | "obsidian" | "vitepress";
|
|
212
|
+
};
|
|
213
|
+
autoLinkHeadings: boolean;
|
|
214
|
+
discordSubtext: boolean;
|
|
215
|
+
sanitize?: {
|
|
216
|
+
allowElements?: string[] | undefined;
|
|
217
|
+
blockElements?: string[] | undefined;
|
|
218
|
+
dropElements?: string[] | undefined;
|
|
219
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
220
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
221
|
+
allowComponents?: boolean | undefined;
|
|
222
|
+
allowCustomElements?: boolean | undefined;
|
|
223
|
+
allowComments?: boolean | undefined;
|
|
224
|
+
} | undefined;
|
|
225
|
+
}, {
|
|
226
|
+
callouts?: false | {
|
|
227
|
+
theme?: "github" | "obsidian" | "vitepress" | undefined;
|
|
228
|
+
} | undefined;
|
|
229
|
+
autoLinkHeadings?: boolean | undefined;
|
|
230
|
+
discordSubtext?: boolean | undefined;
|
|
231
|
+
sanitize?: {
|
|
232
|
+
allowElements?: string[] | undefined;
|
|
233
|
+
blockElements?: string[] | undefined;
|
|
234
|
+
dropElements?: string[] | undefined;
|
|
235
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
236
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
237
|
+
allowComponents?: boolean | undefined;
|
|
238
|
+
allowCustomElements?: boolean | undefined;
|
|
239
|
+
allowComments?: boolean | undefined;
|
|
240
|
+
} | undefined;
|
|
241
|
+
}>]>>>, {
|
|
242
|
+
callouts: {
|
|
243
|
+
enabled: boolean;
|
|
244
|
+
theme: "github" | "obsidian" | "vitepress";
|
|
245
|
+
};
|
|
246
|
+
autoLinkHeadings: boolean;
|
|
247
|
+
discordSubtext: boolean;
|
|
248
|
+
sanitize?: {
|
|
249
|
+
allowElements?: string[] | undefined;
|
|
250
|
+
blockElements?: string[] | undefined;
|
|
251
|
+
dropElements?: string[] | undefined;
|
|
252
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
253
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
254
|
+
allowComponents?: boolean | undefined;
|
|
255
|
+
allowCustomElements?: boolean | undefined;
|
|
256
|
+
allowComments?: boolean | undefined;
|
|
257
|
+
} | undefined;
|
|
258
|
+
}, false | {
|
|
259
|
+
callouts?: false | {
|
|
260
|
+
theme?: "github" | "obsidian" | "vitepress" | undefined;
|
|
261
|
+
} | undefined;
|
|
262
|
+
autoLinkHeadings?: boolean | undefined;
|
|
263
|
+
discordSubtext?: boolean | undefined;
|
|
264
|
+
sanitize?: {
|
|
265
|
+
allowElements?: string[] | undefined;
|
|
266
|
+
blockElements?: string[] | undefined;
|
|
267
|
+
dropElements?: string[] | undefined;
|
|
268
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
269
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
270
|
+
allowComponents?: boolean | undefined;
|
|
271
|
+
allowCustomElements?: boolean | undefined;
|
|
272
|
+
allowComments?: boolean | undefined;
|
|
273
|
+
} | undefined;
|
|
274
|
+
} | undefined>, {
|
|
275
|
+
studiocms: StudioCMSConfigOptions;
|
|
276
|
+
}, false | {
|
|
277
|
+
callouts?: false | {
|
|
278
|
+
theme?: "github" | "obsidian" | "vitepress" | undefined;
|
|
279
|
+
} | undefined;
|
|
280
|
+
autoLinkHeadings?: boolean | undefined;
|
|
281
|
+
discordSubtext?: boolean | undefined;
|
|
282
|
+
sanitize?: {
|
|
283
|
+
allowElements?: string[] | undefined;
|
|
284
|
+
blockElements?: string[] | undefined;
|
|
285
|
+
dropElements?: string[] | undefined;
|
|
286
|
+
allowAttributes?: Record<string, string[]> | undefined;
|
|
287
|
+
dropAttributes?: Record<string, string[]> | undefined;
|
|
288
|
+
allowComponents?: boolean | undefined;
|
|
289
|
+
allowCustomElements?: boolean | undefined;
|
|
290
|
+
allowComments?: boolean | undefined;
|
|
291
|
+
} | undefined;
|
|
292
|
+
} | undefined>;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { z } from "astro/zod";
|
|
2
|
+
const StudioCMSSanitizeOptionsSchema = z.object({
|
|
3
|
+
/** An Array of strings indicating elements that the sanitizer should not remove. All elements not in the array will be dropped. */
|
|
4
|
+
allowElements: z.array(z.string()).optional(),
|
|
5
|
+
/** An Array of strings indicating elements that the sanitizer should remove. Children will be kept. */
|
|
6
|
+
blockElements: z.array(z.string()).optional(),
|
|
7
|
+
/** An Array of strings indicating elements (including nested elements) that the sanitizer should remove. */
|
|
8
|
+
dropElements: z.array(z.string()).optional(),
|
|
9
|
+
/** An object where each key is the attribute name and the value is an array of allowed tag names. Matching attributes will not be removed. All attributes that are not in the array will be dropped. */
|
|
10
|
+
allowAttributes: z.record(z.array(z.string())).optional(),
|
|
11
|
+
/** An object where each key is the attribute name and the value is an array of dropped tag names. Matching attributes will be removed. */
|
|
12
|
+
dropAttributes: z.record(z.array(z.string())).optional(),
|
|
13
|
+
/** A boolean value to remove components and their children. If set to true, components will be subject to built-in and custom configuration checks (and will be retained or dropped based on those checks). Default is `false`. */
|
|
14
|
+
allowComponents: z.boolean().optional(),
|
|
15
|
+
/** A boolean value to remove custom elements and their children. If set to true, custom elements will be subject to built-in and custom configuration checks (and will be retained or dropped based on those checks). Default is `false` */
|
|
16
|
+
allowCustomElements: z.boolean().optional(),
|
|
17
|
+
/** A boolean value to remove HTML comments. Set to true in order to keep comments. Default is `false`. */
|
|
18
|
+
allowComments: z.boolean().optional()
|
|
19
|
+
}).optional();
|
|
20
|
+
const StudioCMSMarkdownExtendedSchema = z.union([
|
|
21
|
+
z.literal(false),
|
|
22
|
+
z.object({
|
|
23
|
+
callouts: z.union([
|
|
24
|
+
z.literal(false),
|
|
25
|
+
z.object({
|
|
26
|
+
theme: z.union([z.literal("github"), z.literal("obsidian"), z.literal("vitepress")]).optional().default("obsidian")
|
|
27
|
+
})
|
|
28
|
+
]).optional().default({}).transform((value) => {
|
|
29
|
+
if (value === false) {
|
|
30
|
+
return { theme: "obsidian", enabled: false };
|
|
31
|
+
}
|
|
32
|
+
return { ...value, enabled: true };
|
|
33
|
+
}),
|
|
34
|
+
autoLinkHeadings: z.boolean().optional().default(true),
|
|
35
|
+
discordSubtext: z.boolean().optional().default(true),
|
|
36
|
+
sanitize: StudioCMSSanitizeOptionsSchema
|
|
37
|
+
})
|
|
38
|
+
]).optional().default({}).transform((value) => {
|
|
39
|
+
if (value === false) {
|
|
40
|
+
return {
|
|
41
|
+
callouts: { enabled: false, theme: "obsidian" },
|
|
42
|
+
autoLinkHeadings: false,
|
|
43
|
+
discordSubtext: false
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
return value;
|
|
47
|
+
});
|
|
48
|
+
const TransformToProcessor = StudioCMSMarkdownExtendedSchema.transform(
|
|
49
|
+
({ autoLinkHeadings, callouts, discordSubtext, sanitize }) => {
|
|
50
|
+
return {
|
|
51
|
+
studiocms: {
|
|
52
|
+
callouts: callouts.enabled ? { theme: callouts.theme } : false,
|
|
53
|
+
autolink: autoLinkHeadings,
|
|
54
|
+
discordSubtext
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
);
|
|
59
|
+
export {
|
|
60
|
+
StudioCMSMarkdownExtendedSchema,
|
|
61
|
+
StudioCMSSanitizeOptionsSchema,
|
|
62
|
+
TransformToProcessor
|
|
63
|
+
};
|