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.
Files changed (582) hide show
  1. package/CHANGELOG.md +501 -0
  2. package/LICENSE +21 -0
  3. package/README.md +59 -0
  4. package/custom-renderers/index.ts +4 -0
  5. package/custom-renderers/markdocRenderers/markdocReact-components/MarkDocReactRenderer.tsx +8 -0
  6. package/custom-renderers/markdocRenderers/markdocReact-components/MarkDocReactWrapper.astro +13 -0
  7. package/custom-renderers/markdocRenderers/markdocReact.ts +56 -0
  8. package/dist/auth.d.js +0 -0
  9. package/dist/auth.d.ts +397 -0
  10. package/dist/cli/cmds/get-turso.d.ts +1 -0
  11. package/dist/cli/cmds/get-turso.js +10 -0
  12. package/dist/cli/cmds/init/index.d.ts +4 -0
  13. package/dist/cli/cmds/init/index.js +52 -0
  14. package/dist/cli/cmds/init/steps/data/studiocmsEnv.d.ts +3 -0
  15. package/dist/cli/cmds/init/steps/data/studiocmsEnv.js +71 -0
  16. package/dist/cli/cmds/init/steps/envBuilder.d.ts +21 -0
  17. package/dist/cli/cmds/init/steps/envBuilder.js +368 -0
  18. package/dist/cli/cmds/init/steps/nextSteps.d.ts +2 -0
  19. package/dist/cli/cmds/init/steps/nextSteps.js +38 -0
  20. package/dist/cli/cmds/init.d.ts +1 -0
  21. package/dist/cli/cmds/init.js +4 -0
  22. package/dist/cli/index.d.ts +1 -0
  23. package/dist/cli/index.js +9 -0
  24. package/dist/cli/lib/commander.d.ts +39 -0
  25. package/dist/cli/lib/commander.js +87 -0
  26. package/dist/cli/lib/context.d.ts +28 -0
  27. package/dist/cli/lib/context.js +55 -0
  28. package/dist/cli/lib/pathUtil.d.ts +5 -0
  29. package/dist/cli/lib/pathUtil.js +14 -0
  30. package/dist/cli/lib/runExternal.d.ts +20 -0
  31. package/dist/cli/lib/runExternal.js +40 -0
  32. package/dist/cli/lib/seasonal.d.ts +5 -0
  33. package/dist/cli/lib/seasonal.js +88 -0
  34. package/dist/cli/lib/utils.d.ts +55 -0
  35. package/dist/cli/lib/utils.js +310 -0
  36. package/dist/cli/shared/intro.d.ts +2 -0
  37. package/dist/cli/shared/intro.js +24 -0
  38. package/dist/components/DefaultEditor.astro +138 -0
  39. package/dist/components/FormattedDate.astro +12 -0
  40. package/dist/components/Generator.astro +7 -0
  41. package/dist/components/Renderer.astro +13 -0
  42. package/dist/components/auth/OAuthButton.astro +21 -0
  43. package/dist/components/auth/OAuthButtonStack.astro +36 -0
  44. package/dist/components/auth/StaticAuthCheck.astro +20 -0
  45. package/dist/components/auth/StudioCMSLogoSVG.astro +13 -0
  46. package/dist/components/auth/oAuthButtonProviders.d.ts +8 -0
  47. package/dist/components/auth/oAuthButtonProviders.js +35 -0
  48. package/dist/components/dashboard/AstroCodeDiffsScript.astro +25 -0
  49. package/dist/components/dashboard/BaseHead.astro +41 -0
  50. package/dist/components/dashboard/Code.astro +23 -0
  51. package/dist/components/dashboard/DashboardPageHeader.astro +77 -0
  52. package/dist/components/dashboard/DoubleSidebar.astro +26 -0
  53. package/dist/components/dashboard/Footer.astro +16 -0
  54. package/dist/components/dashboard/MainSidebarContent.astro +317 -0
  55. package/dist/components/dashboard/PageHeader.astro +52 -0
  56. package/dist/components/dashboard/SidebarLink.astro +61 -0
  57. package/dist/components/dashboard/SidebarModals.astro +6 -0
  58. package/dist/components/dashboard/SidebarPluginLink.astro +45 -0
  59. package/dist/components/dashboard/SingleSidebar.astro +23 -0
  60. package/dist/components/dashboard/StudioCMSLogo.astro +12 -0
  61. package/dist/components/dashboard/ThemeManager.astro +53 -0
  62. package/dist/components/dashboard/component-scripts/TinyMDE.astro +6 -0
  63. package/dist/components/dashboard/component-scripts/dateTimeListener.d.ts +1 -0
  64. package/dist/components/dashboard/component-scripts/dateTimeListener.js +14 -0
  65. package/dist/components/dashboard/component-scripts/dateWithTimeAndZone.d.ts +1 -0
  66. package/dist/components/dashboard/component-scripts/dateWithTimeAndZone.js +12 -0
  67. package/dist/components/dashboard/component-scripts/makeClientRoutable.d.ts +1 -0
  68. package/dist/components/dashboard/component-scripts/makeClientRoutable.js +9 -0
  69. package/dist/components/dashboard/component-scripts/timeAgo.d.ts +1 -0
  70. package/dist/components/dashboard/component-scripts/timeAgo.js +21 -0
  71. package/dist/components/dashboard/islands/LoginChecker.astro +52 -0
  72. package/dist/components/dashboard/islands/configuration/ConfigForm.astro +317 -0
  73. package/dist/components/dashboard/islands/configuration/LightVsDark.astro +67 -0
  74. package/dist/components/dashboard/islands/content-mgmt/CreateFolder.astro +118 -0
  75. package/dist/components/dashboard/islands/content-mgmt/CreatePage.astro +380 -0
  76. package/dist/components/dashboard/islands/content-mgmt/EditFolder.astro +138 -0
  77. package/dist/components/dashboard/islands/content-mgmt/EditPage.astro +432 -0
  78. package/dist/components/dashboard/islands/content-mgmt/InnerSidebarElement.astro +299 -0
  79. package/dist/components/dashboard/islands/content-mgmt/PageHeader.astro +455 -0
  80. package/dist/components/dashboard/islands/content-mgmt/PageList.astro +49 -0
  81. package/dist/components/dashboard/islands/content-mgmt/PluginFields.astro +29 -0
  82. package/dist/components/dashboard/islands/content-mgmt/TreeRenderer.astro +75 -0
  83. package/dist/components/dashboard/islands/content-mgmt/TreeSidebarFolder.astro +53 -0
  84. package/dist/components/dashboard/islands/content-mgmt/TreeSidebarLink.astro +51 -0
  85. package/dist/components/dashboard/islands/content-mgmt/runtime.d.ts +10 -0
  86. package/dist/components/dashboard/islands/content-mgmt/runtime.js +33 -0
  87. package/dist/components/dashboard/islands/content-mgmt/shared.d.ts +27 -0
  88. package/dist/components/dashboard/islands/content-mgmt/shared.js +31 -0
  89. package/dist/components/dashboard/islands/dashboard/DashboardGrid.astro +39 -0
  90. package/dist/components/dashboard/islands/dashboard/DashboardGridItem.astro +34 -0
  91. package/dist/components/dashboard/islands/dashboard/Test.astro +5 -0
  92. package/dist/components/dashboard/islands/dashboard/UserName.astro +6 -0
  93. package/dist/components/dashboard/islands/dashboard/shared.d.ts +2 -0
  94. package/dist/components/dashboard/islands/dashboard/shared.js +0 -0
  95. package/dist/components/dashboard/islands/plugins/SettingsRenderer.astro +29 -0
  96. package/dist/components/dashboard/islands/profile/APITokens.astro +306 -0
  97. package/dist/components/dashboard/islands/profile/BasicInfo.astro +140 -0
  98. package/dist/components/dashboard/islands/profile/BasicInfoFallback.astro +43 -0
  99. package/dist/components/dashboard/islands/profile/SocialSignin.astro +181 -0
  100. package/dist/components/dashboard/islands/profile/SocialSigninFallback.astro +83 -0
  101. package/dist/components/dashboard/islands/profile/UpdatePassword.astro +166 -0
  102. package/dist/components/dashboard/islands/profile/UpdatePasswordFallback.astro +47 -0
  103. package/dist/components/dashboard/islands/profile/oAuthButtonProviders.d.ts +8 -0
  104. package/dist/components/dashboard/islands/profile/oAuthButtonProviders.js +35 -0
  105. package/dist/components/dashboard/islands/sidebar/UserAccount.astro +23 -0
  106. package/dist/components/dashboard/islands/sidebar/VersionCheck.astro +127 -0
  107. package/dist/components/dashboard/islands/sidebar/VersionCheckChangelog.astro +107 -0
  108. package/dist/components/dashboard/islands/user-mgmt/InnerSidebarElement.astro +348 -0
  109. package/dist/components/dashboard/islands/user-mgmt/RankCheck.astro +49 -0
  110. package/dist/components/dashboard/islands/user-mgmt/SocialSignin.astro +109 -0
  111. package/dist/components/dashboard/islands/user-mgmt/UserListItem.astro +60 -0
  112. package/dist/components/dashboard/sidebar-modals/UserManagementModals.astro +103 -0
  113. package/dist/components/dashboard/sidebar-modals/VersionModal.astro +267 -0
  114. package/dist/components/dashboard/sidebarConfig.d.ts +32 -0
  115. package/dist/components/dashboard/sidebarConfig.js +88 -0
  116. package/dist/components/default-grid-items/Recently-created-pages.astro +91 -0
  117. package/dist/components/default-grid-items/Recently-signed-up.astro +71 -0
  118. package/dist/components/default-grid-items/Recently-updated-pages.astro +96 -0
  119. package/dist/components/default-grid-items/Totals.astro +107 -0
  120. package/dist/components/default-grid-items/utils.d.ts +17 -0
  121. package/dist/components/default-grid-items/utils.js +26 -0
  122. package/dist/components/image/CustomImage.astro +90 -0
  123. package/dist/components/user-quick-tools.d.ts +42 -0
  124. package/dist/components/user-quick-tools.js +312 -0
  125. package/dist/config.d.ts +3 -0
  126. package/dist/config.js +4 -0
  127. package/dist/consts.d.ts +61 -0
  128. package/dist/consts.js +39 -0
  129. package/dist/core.d.js +0 -0
  130. package/dist/core.d.ts +226 -0
  131. package/dist/db/config.d.ts +4 -0
  132. package/dist/db/config.js +6 -0
  133. package/dist/db/tables.js +168 -0
  134. package/dist/errors.d.ts +19 -0
  135. package/dist/errors.js +11 -0
  136. package/dist/index.d.ts +152 -0
  137. package/dist/index.js +1179 -0
  138. package/dist/layouts/auth/AuthLayout.astro +74 -0
  139. package/dist/layouts/auth/FallbackCanvas.astro +123 -0
  140. package/dist/layouts/auth/ThemeManager.astro +53 -0
  141. package/dist/layouts/auth/ThreeCanvasLoader.astro +18 -0
  142. package/dist/layouts/dashboard/Layout.astro +64 -0
  143. package/dist/lib/auth/encryption.d.ts +30 -0
  144. package/dist/lib/auth/encryption.js +39 -0
  145. package/dist/lib/auth/password.d.ts +27 -0
  146. package/dist/lib/auth/password.js +42 -0
  147. package/dist/lib/auth/rate-limit.d.ts +136 -0
  148. package/dist/lib/auth/rate-limit.js +214 -0
  149. package/dist/lib/auth/session.d.ts +85 -0
  150. package/dist/lib/auth/session.js +93 -0
  151. package/dist/lib/auth/types.d.ts +83 -0
  152. package/dist/lib/auth/types.js +0 -0
  153. package/dist/lib/auth/user.d.ts +148 -0
  154. package/dist/lib/auth/user.js +133 -0
  155. package/dist/lib/dashboardGrid.d.ts +119 -0
  156. package/dist/lib/dashboardGrid.js +0 -0
  157. package/dist/lib/dynamic-sitemap/index.d.ts +42 -0
  158. package/dist/lib/dynamic-sitemap/index.js +45 -0
  159. package/dist/lib/dynamic-sitemap/sitemap-index.xml.d.ts +8 -0
  160. package/dist/lib/dynamic-sitemap/sitemap-index.xml.js +20 -0
  161. package/dist/lib/dynamic-sitemap/sitemap-index.xml.ts +45 -0
  162. package/dist/lib/head.d.ts +9 -0
  163. package/dist/lib/head.js +65 -0
  164. package/dist/lib/headDefaults.d.ts +18 -0
  165. package/dist/lib/headDefaults.js +75 -0
  166. package/dist/lib/i18n/LanguageSelector.astro +114 -0
  167. package/dist/lib/i18n/client.d.ts +591 -0
  168. package/dist/lib/i18n/client.js +83 -0
  169. package/dist/lib/i18n/config.d.ts +16 -0
  170. package/dist/lib/i18n/config.js +8 -0
  171. package/dist/lib/i18n/index.d.ts +578 -0
  172. package/dist/lib/i18n/index.js +63 -0
  173. package/dist/lib/i18n/translations/de.json +64 -0
  174. package/dist/lib/i18n/translations/en-us.json +238 -0
  175. package/dist/lib/i18n/translations/es.json +64 -0
  176. package/dist/lib/i18n/translations/fr.json +64 -0
  177. package/dist/lib/index.d.ts +7 -0
  178. package/dist/lib/index.js +7 -0
  179. package/dist/lib/jsonUtils.d.ts +2 -0
  180. package/dist/lib/jsonUtils.js +11 -0
  181. package/dist/lib/makeAPIRoute.d.ts +45 -0
  182. package/dist/lib/makeAPIRoute.js +16 -0
  183. package/dist/lib/makePublicRoute.d.ts +7 -0
  184. package/dist/lib/makePublicRoute.js +6 -0
  185. package/dist/lib/pathGenerators.d.ts +20 -0
  186. package/dist/lib/pathGenerators.js +66 -0
  187. package/dist/lib/plugins/dashboard-pages.d.ts +71 -0
  188. package/dist/lib/plugins/dashboard-pages.js +11 -0
  189. package/dist/lib/plugins/frontend-navigation.d.ts +18 -0
  190. package/dist/lib/plugins/frontend-navigation.js +39 -0
  191. package/dist/lib/plugins/index.d.ts +2 -0
  192. package/dist/lib/plugins/index.js +2 -0
  193. package/dist/lib/removeLeadingTrailingSlashes.d.ts +7 -0
  194. package/dist/lib/removeLeadingTrailingSlashes.js +13 -0
  195. package/dist/lib/renderer/astro-remark.d.ts +13 -0
  196. package/dist/lib/renderer/astro-remark.js +11 -0
  197. package/dist/lib/renderer/contentRenderer.d.ts +13 -0
  198. package/dist/lib/renderer/contentRenderer.js +31 -0
  199. package/dist/lib/renderer/errors.d.ts +5 -0
  200. package/dist/lib/renderer/errors.js +25 -0
  201. package/dist/lib/renderer/markdoc-renderers/markdocHTML.d.ts +3 -0
  202. package/dist/lib/renderer/markdoc-renderers/markdocHTML.js +14 -0
  203. package/dist/lib/renderer/markdoc-renderers/markdocReactStatic.d.ts +3 -0
  204. package/dist/lib/renderer/markdoc-renderers/markdocReactStatic.js +14 -0
  205. package/dist/lib/renderer/markdoc.d.ts +11 -0
  206. package/dist/lib/renderer/markdoc.js +28 -0
  207. package/dist/lib/renderer/mdx.d.ts +10 -0
  208. package/dist/lib/renderer/mdx.js +37 -0
  209. package/dist/lib/renderer/runtime.d.ts +8 -0
  210. package/dist/lib/renderer/runtime.js +30 -0
  211. package/dist/lib/renderer/shared.d.ts +15 -0
  212. package/dist/lib/renderer/shared.js +13 -0
  213. package/dist/lib/renderer/studiocms.d.ts +11 -0
  214. package/dist/lib/renderer/studiocms.js +22 -0
  215. package/dist/lib/renderer/types.d.ts +12 -0
  216. package/dist/lib/renderer/types.js +0 -0
  217. package/dist/lib/robots/core.d.ts +24 -0
  218. package/dist/lib/robots/core.js +187 -0
  219. package/dist/lib/robots/index.d.ts +11 -0
  220. package/dist/lib/robots/index.js +47 -0
  221. package/dist/lib/robots/types.d.ts +185 -0
  222. package/dist/lib/robots/types.js +0 -0
  223. package/dist/lib/robots/utils.d.ts +22 -0
  224. package/dist/lib/robots/utils.js +22 -0
  225. package/dist/lib/routeMap.d.ts +257 -0
  226. package/dist/lib/routeMap.js +249 -0
  227. package/dist/lib/urlGen.d.ts +11 -0
  228. package/dist/lib/urlGen.js +26 -0
  229. package/dist/lib/webVitals/checkForWebVitalsPlugin.d.ts +18 -0
  230. package/dist/lib/webVitals/checkForWebVitalsPlugin.js +82 -0
  231. package/dist/lib/webVitals/consts.d.ts +240 -0
  232. package/dist/lib/webVitals/consts.js +40 -0
  233. package/dist/lib/webVitals/dashboard-grid-items/CoreVitals.astro +66 -0
  234. package/dist/lib/webVitals/dashboard-grid-items/MetricCard.astro +24 -0
  235. package/dist/lib/webVitals/dashboard-grid-items/SummaryCard.astro +56 -0
  236. package/dist/lib/webVitals/dashboard-grid-items/metric.css +103 -0
  237. package/dist/lib/webVitals/dashboard-grid-items/shared.d.ts +29 -0
  238. package/dist/lib/webVitals/dashboard-grid-items/shared.js +35 -0
  239. package/dist/lib/webVitals/pages/analytics/body.astro +186 -0
  240. package/dist/lib/webVitals/pages/analytics/header.astro +42 -0
  241. package/dist/lib/webVitals/schemas.d.ts +78 -0
  242. package/dist/lib/webVitals/schemas.js +37 -0
  243. package/dist/lib/webVitals/types.d.ts +156 -0
  244. package/dist/lib/webVitals/types.js +0 -0
  245. package/dist/lib/webVitals/utils/buildDataObject.d.ts +8 -0
  246. package/dist/lib/webVitals/utils/buildDataObject.js +28 -0
  247. package/dist/lib/webVitals/utils/buildPageRouteDataObject.d.ts +15 -0
  248. package/dist/lib/webVitals/utils/buildPageRouteDataObject.js +70 -0
  249. package/dist/lib/webVitals/utils/buildPerPageDataObject.d.ts +23 -0
  250. package/dist/lib/webVitals/utils/buildPerPageDataObject.js +209 -0
  251. package/dist/lib/webVitals/utils/checkDate.d.ts +5 -0
  252. package/dist/lib/webVitals/utils/checkDate.js +19 -0
  253. package/dist/lib/webVitals/utils/webVitalsUtils.d.ts +24 -0
  254. package/dist/lib/webVitals/utils/webVitalsUtils.js +234 -0
  255. package/dist/lib/webVitals/webVital.d.ts +20 -0
  256. package/dist/lib/webVitals/webVital.js +40 -0
  257. package/dist/lib/webVitals/webVitalsRouteSummary.d.ts +19 -0
  258. package/dist/lib/webVitals/webVitalsRouteSummary.js +59 -0
  259. package/dist/lib/webVitals/webVitalsSummary.d.ts +19 -0
  260. package/dist/lib/webVitals/webVitalsSummary.js +49 -0
  261. package/dist/plugins.d.ts +2 -0
  262. package/dist/plugins.js +6 -0
  263. package/dist/renderer.d.js +0 -0
  264. package/dist/renderer.d.ts +23 -0
  265. package/dist/routes/api/render.astro +25 -0
  266. package/dist/routes/auth/api/auth0/callback.d.ts +4 -0
  267. package/dist/routes/auth/api/auth0/callback.js +117 -0
  268. package/dist/routes/auth/api/auth0/index.d.ts +4 -0
  269. package/dist/routes/auth/api/auth0/index.js +36 -0
  270. package/dist/routes/auth/api/auth0/shared.d.ts +13 -0
  271. package/dist/routes/auth/api/auth0/shared.js +24 -0
  272. package/dist/routes/auth/api/discord/callback.d.ts +4 -0
  273. package/dist/routes/auth/api/discord/callback.js +112 -0
  274. package/dist/routes/auth/api/discord/index.d.ts +4 -0
  275. package/dist/routes/auth/api/discord/index.js +36 -0
  276. package/dist/routes/auth/api/discord/shared.d.ts +12 -0
  277. package/dist/routes/auth/api/discord/shared.js +17 -0
  278. package/dist/routes/auth/api/github/callback.d.ts +4 -0
  279. package/dist/routes/auth/api/github/callback.js +112 -0
  280. package/dist/routes/auth/api/github/index.d.ts +4 -0
  281. package/dist/routes/auth/api/github/index.js +36 -0
  282. package/dist/routes/auth/api/github/shared.d.ts +13 -0
  283. package/dist/routes/auth/api/github/shared.js +14 -0
  284. package/dist/routes/auth/api/google/callback.d.ts +4 -0
  285. package/dist/routes/auth/api/google/callback.js +115 -0
  286. package/dist/routes/auth/api/google/index.d.ts +4 -0
  287. package/dist/routes/auth/api/google/index.js +38 -0
  288. package/dist/routes/auth/api/google/shared.d.ts +12 -0
  289. package/dist/routes/auth/api/google/shared.js +19 -0
  290. package/dist/routes/auth/api/login.d.ts +4 -0
  291. package/dist/routes/auth/api/login.js +46 -0
  292. package/dist/routes/auth/api/logout.d.ts +5 -0
  293. package/dist/routes/auth/api/logout.js +55 -0
  294. package/dist/routes/auth/api/register.d.ts +4 -0
  295. package/dist/routes/auth/api/register.js +64 -0
  296. package/dist/routes/auth/api/shared.d.ts +2 -0
  297. package/dist/routes/auth/api/shared.js +21 -0
  298. package/dist/routes/auth/login.astro +118 -0
  299. package/dist/routes/auth/logout.astro +28 -0
  300. package/dist/routes/auth/signup.astro +124 -0
  301. package/dist/routes/dashboard/[...pluginPage].astro +88 -0
  302. package/dist/routes/dashboard/configuration.astro +61 -0
  303. package/dist/routes/dashboard/content-management/createfolder.astro +83 -0
  304. package/dist/routes/dashboard/content-management/createpage.astro +86 -0
  305. package/dist/routes/dashboard/content-management/diff.astro +135 -0
  306. package/dist/routes/dashboard/content-management/editfolder.astro +67 -0
  307. package/dist/routes/dashboard/content-management/editpage.astro +71 -0
  308. package/dist/routes/dashboard/content-management/index.astro +91 -0
  309. package/dist/routes/dashboard/index.astro +56 -0
  310. package/dist/routes/dashboard/password-reset.astro +206 -0
  311. package/dist/routes/dashboard/plugins/[plugin].astro +104 -0
  312. package/dist/routes/dashboard/profile.astro +87 -0
  313. package/dist/routes/dashboard/studiocms_api/dashboard/api-tokens.d.ts +5 -0
  314. package/dist/routes/dashboard/studiocms_api/dashboard/api-tokens.js +90 -0
  315. package/dist/routes/dashboard/studiocms_api/dashboard/config.d.ts +4 -0
  316. package/dist/routes/dashboard/studiocms_api/dashboard/config.js +63 -0
  317. package/dist/routes/dashboard/studiocms_api/dashboard/content/folder.d.ts +6 -0
  318. package/dist/routes/dashboard/studiocms_api/dashboard/content/folder.js +121 -0
  319. package/dist/routes/dashboard/studiocms_api/dashboard/content/page.d.ts +6 -0
  320. package/dist/routes/dashboard/studiocms_api/dashboard/content/page.js +258 -0
  321. package/dist/routes/dashboard/studiocms_api/dashboard/create-reset-link.d.ts +4 -0
  322. package/dist/routes/dashboard/studiocms_api/dashboard/create-reset-link.js +59 -0
  323. package/dist/routes/dashboard/studiocms_api/dashboard/create-user-invite.d.ts +4 -0
  324. package/dist/routes/dashboard/studiocms_api/dashboard/create-user-invite.js +105 -0
  325. package/dist/routes/dashboard/studiocms_api/dashboard/create-user.d.ts +4 -0
  326. package/dist/routes/dashboard/studiocms_api/dashboard/create-user.js +100 -0
  327. package/dist/routes/dashboard/studiocms_api/dashboard/partials/Editor.astro +61 -0
  328. package/dist/routes/dashboard/studiocms_api/dashboard/partials/LiveRender.astro +30 -0
  329. package/dist/routes/dashboard/studiocms_api/dashboard/partials/UserListItems.astro +39 -0
  330. package/dist/routes/dashboard/studiocms_api/dashboard/plugins/[plugin].d.ts +2 -0
  331. package/dist/routes/dashboard/studiocms_api/dashboard/plugins/[plugin].js +32 -0
  332. package/dist/routes/dashboard/studiocms_api/dashboard/profile.d.ts +4 -0
  333. package/dist/routes/dashboard/studiocms_api/dashboard/profile.js +130 -0
  334. package/dist/routes/dashboard/studiocms_api/dashboard/reset-password.d.ts +4 -0
  335. package/dist/routes/dashboard/studiocms_api/dashboard/reset-password.js +105 -0
  336. package/dist/routes/dashboard/studiocms_api/dashboard/search-list.d.ts +4 -0
  337. package/dist/routes/dashboard/studiocms_api/dashboard/search-list.js +55 -0
  338. package/dist/routes/dashboard/studiocms_api/dashboard/users.d.ts +5 -0
  339. package/dist/routes/dashboard/studiocms_api/dashboard/users.js +92 -0
  340. package/dist/routes/dashboard/studiocms_api/dashboard/verify-session.d.ts +2 -0
  341. package/dist/routes/dashboard/studiocms_api/dashboard/verify-session.js +72 -0
  342. package/dist/routes/dashboard/user-management/edit.astro +631 -0
  343. package/dist/routes/dashboard/user-management/index.astro +103 -0
  344. package/dist/routes/error-pages/404.astro +66 -0
  345. package/dist/routes/firstTimeSetupRoutes/1-start.astro +253 -0
  346. package/dist/routes/firstTimeSetupRoutes/2-next.astro +208 -0
  347. package/dist/routes/firstTimeSetupRoutes/3-done.astro +95 -0
  348. package/dist/routes/firstTimeSetupRoutes/api/step-1.d.ts +2 -0
  349. package/dist/routes/firstTimeSetupRoutes/api/step-1.js +126 -0
  350. package/dist/routes/firstTimeSetupRoutes/api/step-2.d.ts +2 -0
  351. package/dist/routes/firstTimeSetupRoutes/api/step-2.js +110 -0
  352. package/dist/routes/firstTimeSetupRoutes/components/Layout.astro +41 -0
  353. package/dist/routes/firstTimeSetupRoutes/components/PageHeader.astro +60 -0
  354. package/dist/routes/firstTimeSetupRoutes/components/TabItem.astro +44 -0
  355. package/dist/routes/firstTimeSetupRoutes/components/Tabs.astro +170 -0
  356. package/dist/routes/firstTimeSetupRoutes/snippets/opt1-astro.config.diff +14 -0
  357. package/dist/routes/firstTimeSetupRoutes/snippets/opt2-astro.config.diff +9 -0
  358. package/dist/routes/firstTimeSetupRoutes/snippets/opt2-studiocms.config.diff +5 -0
  359. package/dist/routes/rest/utils/auth-token.d.ts +17 -0
  360. package/dist/routes/rest/utils/auth-token.js +31 -0
  361. package/dist/routes/rest/v1/folders/[id].d.ts +6 -0
  362. package/dist/routes/rest/v1/folders/[id].js +106 -0
  363. package/dist/routes/rest/v1/folders/index.d.ts +5 -0
  364. package/dist/routes/rest/v1/folders/index.js +88 -0
  365. package/dist/routes/rest/v1/pages/[id]/history/[diffid].d.ts +4 -0
  366. package/dist/routes/rest/v1/pages/[id]/history/[diffid].js +55 -0
  367. package/dist/routes/rest/v1/pages/[id]/history/index.d.ts +4 -0
  368. package/dist/routes/rest/v1/pages/[id]/history/index.js +61 -0
  369. package/dist/routes/rest/v1/pages/[id]/index.d.ts +6 -0
  370. package/dist/routes/rest/v1/pages/[id]/index.js +165 -0
  371. package/dist/routes/rest/v1/pages/index.d.ts +5 -0
  372. package/dist/routes/rest/v1/pages/index.js +113 -0
  373. package/dist/routes/rest/v1/public/folders/[id].d.ts +4 -0
  374. package/dist/routes/rest/v1/public/folders/[id].js +43 -0
  375. package/dist/routes/rest/v1/public/folders/index.d.ts +4 -0
  376. package/dist/routes/rest/v1/public/folders/index.js +49 -0
  377. package/dist/routes/rest/v1/public/pages/[id].d.ts +4 -0
  378. package/dist/routes/rest/v1/public/pages/[id].js +46 -0
  379. package/dist/routes/rest/v1/public/pages/index.d.ts +4 -0
  380. package/dist/routes/rest/v1/public/pages/index.js +61 -0
  381. package/dist/routes/rest/v1/settings/index.d.ts +5 -0
  382. package/dist/routes/rest/v1/settings/index.js +75 -0
  383. package/dist/routes/rest/v1/users/[id].d.ts +6 -0
  384. package/dist/routes/rest/v1/users/[id].js +212 -0
  385. package/dist/routes/rest/v1/users/index.d.ts +5 -0
  386. package/dist/routes/rest/v1/users/index.js +138 -0
  387. package/dist/routes/sdk/fallback-list-pages.json.d.ts +2 -0
  388. package/dist/routes/sdk/fallback-list-pages.json.js +19 -0
  389. package/dist/routes/sdk/fallback-list-pages.json.ts +22 -0
  390. package/dist/routes/sdk/full-changelog.json.d.ts +16 -0
  391. package/dist/routes/sdk/full-changelog.json.js +170 -0
  392. package/dist/routes/sdk/full-changelog.json.ts +224 -0
  393. package/dist/routes/sdk/list-pages.d.ts +4 -0
  394. package/dist/routes/sdk/list-pages.js +34 -0
  395. package/dist/routes/sdk/update-latest-version-cache.d.ts +4 -0
  396. package/dist/routes/sdk/update-latest-version-cache.js +41 -0
  397. package/dist/runtime/AstroComponentProxy.d.ts +29 -0
  398. package/dist/runtime/AstroComponentProxy.js +47 -0
  399. package/dist/runtime/decoder/decode-codepoint.d.ts +18 -0
  400. package/dist/runtime/decoder/decode-codepoint.js +58 -0
  401. package/dist/runtime/decoder/decode-data-html.d.ts +1 -0
  402. package/dist/runtime/decoder/decode-data-html.js +7 -0
  403. package/dist/runtime/decoder/decode-data-xml.d.ts +1 -0
  404. package/dist/runtime/decoder/decode-data-xml.js +7 -0
  405. package/dist/runtime/decoder/index.d.ts +34 -0
  406. package/dist/runtime/decoder/index.js +18 -0
  407. package/dist/runtime/decoder/util.d.ts +208 -0
  408. package/dist/runtime/decoder/util.js +415 -0
  409. package/dist/schemas/config/auth.d.ts +175 -0
  410. package/dist/schemas/config/auth.js +65 -0
  411. package/dist/schemas/config/componentoverrides.d.ts +17 -0
  412. package/dist/schemas/config/componentoverrides.js +14 -0
  413. package/dist/schemas/config/dashboard.d.ts +154 -0
  414. package/dist/schemas/config/dashboard.js +59 -0
  415. package/dist/schemas/config/defaultFrontend.d.ts +125 -0
  416. package/dist/schemas/config/defaultFrontend.js +57 -0
  417. package/dist/schemas/config/developer.d.ts +15 -0
  418. package/dist/schemas/config/developer.js +14 -0
  419. package/dist/schemas/config/imageService.d.ts +13 -0
  420. package/dist/schemas/config/imageService.js +12 -0
  421. package/dist/schemas/config/index.d.ts +1153 -0
  422. package/dist/schemas/config/index.js +95 -0
  423. package/dist/schemas/config/integrations.d.ts +14 -0
  424. package/dist/schemas/config/integrations.js +12 -0
  425. package/dist/schemas/config/markdoc.d.ts +172 -0
  426. package/dist/schemas/config/markdoc.js +68 -0
  427. package/dist/schemas/config/mdx.d.ts +455 -0
  428. package/dist/schemas/config/mdx.js +71 -0
  429. package/dist/schemas/config/rendererConfig.d.ts +659 -0
  430. package/dist/schemas/config/rendererConfig.js +51 -0
  431. package/dist/schemas/config/sdk.d.ts +167 -0
  432. package/dist/schemas/config/sdk.js +85 -0
  433. package/dist/schemas/config/studiocms-markdown-remark.d.ts +292 -0
  434. package/dist/schemas/config/studiocms-markdown-remark.js +63 -0
  435. package/dist/schemas/index.d.ts +2 -0
  436. package/dist/schemas/index.js +2 -0
  437. package/dist/schemas/plugins/index.d.ts +7373 -0
  438. package/dist/schemas/plugins/index.js +192 -0
  439. package/dist/schemas/plugins/shared.d.ts +1752 -0
  440. package/dist/schemas/plugins/shared.js +221 -0
  441. package/dist/scripts/formListener.d.ts +16 -0
  442. package/dist/scripts/formListener.js +46 -0
  443. package/dist/scripts/three.d.ts +1 -0
  444. package/dist/scripts/three.js +278 -0
  445. package/dist/scripts/utils/fitModelToViewport.d.ts +8 -0
  446. package/dist/scripts/utils/fitModelToViewport.js +19 -0
  447. package/dist/sdk/StudioCMSVirtualCache.d.ts +283 -0
  448. package/dist/sdk/StudioCMSVirtualCache.js +685 -0
  449. package/dist/sdk/cache.d.ts +11 -0
  450. package/dist/sdk/cache.js +12 -0
  451. package/dist/sdk/core.d.ts +865 -0
  452. package/dist/sdk/core.js +1966 -0
  453. package/dist/sdk/errors.d.ts +21 -0
  454. package/dist/sdk/errors.js +11 -0
  455. package/dist/sdk/index.d.ts +371 -0
  456. package/dist/sdk/index.js +8 -0
  457. package/dist/sdk/lib/foldertree.d.ts +50 -0
  458. package/dist/sdk/lib/foldertree.js +123 -0
  459. package/dist/sdk/lib/generators.d.ts +30 -0
  460. package/dist/sdk/lib/generators.js +25 -0
  461. package/dist/sdk/lib/packages.d.ts +8 -0
  462. package/dist/sdk/lib/packages.js +14 -0
  463. package/dist/sdk/lib/parsers.d.ts +14 -0
  464. package/dist/sdk/lib/parsers.js +10 -0
  465. package/dist/sdk/lib/users.d.ts +19 -0
  466. package/dist/sdk/lib/users.js +26 -0
  467. package/dist/sdk/tables.d.ts +1198 -0
  468. package/dist/sdk/tables.js +55 -0
  469. package/dist/sdk/types/index.d.ts +175 -0
  470. package/dist/sdk/types/index.js +0 -0
  471. package/dist/sdk/types/tableDefs.d.ts +75 -0
  472. package/dist/sdk/types/tableDefs.js +0 -0
  473. package/dist/sdk/types/tsAlias.d.ts +155 -0
  474. package/dist/sdk/types/tsAlias.js +0 -0
  475. package/dist/sdk/utils/db.d.ts +5 -0
  476. package/dist/sdk/utils/db.js +15 -0
  477. package/dist/stubs/auth-lib.d.ts +2 -0
  478. package/dist/stubs/auth-lib.js +519 -0
  479. package/dist/stubs/auth-scripts.d.ts +2 -0
  480. package/dist/stubs/auth-scripts.js +29 -0
  481. package/dist/stubs/auth-utils.d.ts +2 -0
  482. package/dist/stubs/auth-utils.js +36 -0
  483. package/dist/stubs/changelog.d.ts +2 -0
  484. package/dist/stubs/changelog.js +16 -0
  485. package/dist/stubs/components.d.ts +2 -0
  486. package/dist/stubs/components.js +67 -0
  487. package/dist/stubs/core.d.ts +2 -0
  488. package/dist/stubs/core.js +49 -0
  489. package/dist/stubs/i18n-dts.d.ts +2 -0
  490. package/dist/stubs/i18n-dts.js +117 -0
  491. package/dist/stubs/images.d.ts +1 -0
  492. package/dist/stubs/images.js +30 -0
  493. package/dist/stubs/index.d.ts +1 -0
  494. package/dist/stubs/index.js +40 -0
  495. package/dist/stubs/lib.d.ts +2 -0
  496. package/dist/stubs/lib.js +123 -0
  497. package/dist/stubs/plugins.d.ts +2 -0
  498. package/dist/stubs/plugins.js +60 -0
  499. package/dist/stubs/proxy.d.ts +2 -0
  500. package/dist/stubs/proxy.js +40 -0
  501. package/dist/stubs/renderer-config.d.ts +2 -0
  502. package/dist/stubs/renderer-config.js +18 -0
  503. package/dist/stubs/renderer-markdownConfig.d.ts +2 -0
  504. package/dist/stubs/renderer-markdownConfig.js +17 -0
  505. package/dist/stubs/renderer.d.ts +2 -0
  506. package/dist/stubs/renderer.js +44 -0
  507. package/dist/stubs/sdk.d.ts +2 -0
  508. package/dist/stubs/sdk.js +202 -0
  509. package/dist/stubs/webVitals.d.ts +2 -0
  510. package/dist/stubs/webVitals.js +40 -0
  511. package/dist/styles/404.css +47 -0
  512. package/dist/styles/SyntaxFont.woff2 +0 -0
  513. package/dist/styles/authlayout.css +138 -0
  514. package/dist/styles/dashboard-base.css +493 -0
  515. package/dist/styles/dashboard-code.css +33 -0
  516. package/dist/styles/dashboard-diff.css +389 -0
  517. package/dist/styles/dashboard-tiny-mde.css +224 -0
  518. package/dist/styles/md-remark-callouts/github.css +56 -0
  519. package/dist/styles/md-remark-callouts/obsidian.css +66 -0
  520. package/dist/styles/md-remark-callouts/vitepress.css +58 -0
  521. package/dist/styles/md-remark-headings.css +48 -0
  522. package/dist/types.d.ts +43 -0
  523. package/dist/types.js +0 -0
  524. package/dist/utils/addAPIRoutes.d.ts +9 -0
  525. package/dist/utils/addAPIRoutes.js +33 -0
  526. package/dist/utils/addIntegrationArray.d.ts +24 -0
  527. package/dist/utils/addIntegrationArray.js +11 -0
  528. package/dist/utils/addIntegrationArrayWithCheck.d.ts +11 -0
  529. package/dist/utils/addIntegrationArrayWithCheck.js +24 -0
  530. package/dist/utils/astroConfigCheck.d.ts +8 -0
  531. package/dist/utils/astroConfigCheck.js +31 -0
  532. package/dist/utils/astroEnvConfig.d.ts +45 -0
  533. package/dist/utils/astroEnvConfig.js +9 -0
  534. package/dist/utils/authEnvCheck.d.ts +38 -0
  535. package/dist/utils/authEnvCheck.js +82 -0
  536. package/dist/utils/changelog.d.ts +1 -0
  537. package/dist/utils/changelog.js +53 -0
  538. package/dist/utils/changelogLoader.d.ts +15 -0
  539. package/dist/utils/changelogLoader.js +104 -0
  540. package/dist/utils/checkENV.d.ts +27 -0
  541. package/dist/utils/checkENV.js +115 -0
  542. package/dist/utils/configManager.d.ts +22 -0
  543. package/dist/utils/configManager.js +98 -0
  544. package/dist/utils/configResolver.d.ts +283 -0
  545. package/dist/utils/configResolver.js +105 -0
  546. package/dist/utils/defineStudioCMSConfig.d.ts +165 -0
  547. package/dist/utils/defineStudioCMSConfig.js +6 -0
  548. package/dist/utils/getLabelForPermissionLevel.d.ts +2 -0
  549. package/dist/utils/getLabelForPermissionLevel.js +17 -0
  550. package/dist/utils/injectRouteArray.d.ts +19 -0
  551. package/dist/utils/injectRouteArray.js +75 -0
  552. package/dist/utils/integrationLogger.d.ts +7 -0
  553. package/dist/utils/integrationLogger.js +18 -0
  554. package/dist/utils/integrations.d.ts +4 -0
  555. package/dist/utils/integrations.js +32 -0
  556. package/dist/utils/isDashboardRoute.d.ts +7 -0
  557. package/dist/utils/isDashboardRoute.js +10 -0
  558. package/dist/utils/loginBackgrounds/studiocms-blobs-dark.png +0 -0
  559. package/dist/utils/loginBackgrounds/studiocms-blobs-light.png +0 -0
  560. package/dist/utils/loginBackgrounds/studiocms-blocks-dark.png +0 -0
  561. package/dist/utils/loginBackgrounds/studiocms-blocks-light.png +0 -0
  562. package/dist/utils/loginBackgrounds/studiocms-curves-dark.png +0 -0
  563. package/dist/utils/loginBackgrounds/studiocms-curves-light.png +0 -0
  564. package/dist/utils/makePageTitle.d.ts +3 -0
  565. package/dist/utils/makePageTitle.js +7 -0
  566. package/dist/utils/pageListPackageLabel.d.ts +4 -0
  567. package/dist/utils/pageListPackageLabel.js +12 -0
  568. package/dist/utils/readJson.d.ts +1 -0
  569. package/dist/utils/readJson.js +7 -0
  570. package/dist/utils/routeBuilder.d.ts +18 -0
  571. package/dist/utils/routeBuilder.js +96 -0
  572. package/dist/utils/safeString.d.ts +1 -0
  573. package/dist/utils/safeString.js +6 -0
  574. package/dist/utils/simpleResponse.d.ts +1 -0
  575. package/dist/utils/simpleResponse.js +29 -0
  576. package/dist/utils/validImages.d.ts +13 -0
  577. package/dist/utils/validImages.js +39 -0
  578. package/dist/virtual.d.js +0 -0
  579. package/dist/virtual.d.ts +9 -0
  580. package/package.json +219 -0
  581. package/studiocms-cli.mjs +13 -0
  582. package/ui.d.ts +291 -0
@@ -0,0 +1,21 @@
1
+ import { StudioCMSError } from '../errors.js';
2
+ /**
3
+ * Represents an error specific to the StudioCMS SDK.
4
+ * This class extends the `StudioCMSError` class to provide additional context
5
+ * and functionality for errors occurring within the StudioCMS SDK.
6
+ *
7
+ * @extends {AstroError}
8
+ */
9
+ export declare class StudioCMS_SDK_Error extends StudioCMSError {
10
+ name: string;
11
+ }
12
+ /**
13
+ * Represents an error specific to the StudioCMS cache operations.
14
+ * This class extends the `StudioCMS_SDK_Error` to provide more context
15
+ * about errors that occur within the caching mechanism of the StudioCMS.
16
+ *
17
+ * @extends StudioCMS_SDK_Error
18
+ */
19
+ export declare class StudioCMSCacheError extends StudioCMS_SDK_Error {
20
+ name: string;
21
+ }
@@ -0,0 +1,11 @@
1
+ import { StudioCMSError } from "../errors.js";
2
+ class StudioCMS_SDK_Error extends StudioCMSError {
3
+ name = "StudioCMS SDK Error";
4
+ }
5
+ class StudioCMSCacheError extends StudioCMS_SDK_Error {
6
+ name = "StudioCMS Cache Error";
7
+ }
8
+ export {
9
+ StudioCMSCacheError,
10
+ StudioCMS_SDK_Error
11
+ };
@@ -0,0 +1,371 @@
1
+ /**
2
+ * The main SDK export for StudioCMS.
3
+ *
4
+ * This constant provides access to the core functionality of the StudioCMS SDK.
5
+ */
6
+ export declare const studioCMS_SDK: {
7
+ addPageToFolderTree: typeof import("./lib/foldertree.js").addPageToFolderTree;
8
+ findNodeById: typeof import("./lib/foldertree.js").findNodeById;
9
+ findNodeByPath: typeof import("./lib/foldertree.js").findNodeByPath;
10
+ findNodesAlongPath: typeof import("./lib/foldertree.js").findNodesAlongPath;
11
+ getFullPath: typeof import("./lib/foldertree.js").getFullPath;
12
+ parseIdNumberArray: typeof import("./lib/parsers.js").parseIdNumberArray;
13
+ parseIdStringArray: typeof import("./lib/parsers.js").parseIdStringArray;
14
+ generateRandomIDNumber: typeof import("./lib/generators.js").generateRandomIDNumber;
15
+ generateToken: typeof import("./lib/generators.js").generateToken;
16
+ testToken: typeof import("./lib/generators.js").testToken;
17
+ combineRanks: typeof import("./lib/users.js").combineRanks;
18
+ verifyRank: typeof import("./lib/users.js").verifyRank;
19
+ buildFolderTree: () => Promise<import("./types/index.js").FolderNode[]>;
20
+ getAvailableFolders: () => Promise<import("./types/index.js").FolderListItem[]>;
21
+ clearUserReferences: (userId: string) => Promise<boolean>;
22
+ collectCategories: (categoryIds: number[]) => Promise<import("./types/index.js").CombinedPageData["categories"]>;
23
+ collectTags: (tagIds: number[]) => Promise<import("./types/index.js").CombinedPageData["tags"]>;
24
+ collectPageData: (page: import("./types/tsAlias.js").tsPageDataSelect, tree: import("./types/index.js").FolderNode[]) => Promise<import("./types/index.js").CombinedPageData>;
25
+ collectUserData: (user: import("./types/tsAlias.js").tsUsersSelect) => Promise<import("./types/index.js").CombinedUserData>;
26
+ generateRandomPassword: typeof import("./lib/generators.js").generateRandomPassword;
27
+ resetTokenBucket: {
28
+ new: (userId: string) => Promise<{
29
+ userId: string;
30
+ id: string;
31
+ token: string;
32
+ }>;
33
+ delete: (userId: string) => Promise<void>;
34
+ check: (token: string) => Promise<boolean>;
35
+ };
36
+ diffTracking: {
37
+ insert: (userId: string, pageId: string, data: {
38
+ content: {
39
+ start: string;
40
+ end: string;
41
+ };
42
+ metaData: {
43
+ start: Partial<import("./types/tsAlias.js").tsPageDataSelect>;
44
+ end: Partial<import("./types/tsAlias.js").tsPageDataSelect>;
45
+ };
46
+ }, diffLength: number) => Promise<{
47
+ userId: string;
48
+ id: string;
49
+ pageId: string;
50
+ timestamp: Date | null;
51
+ pageMetaData: unknown;
52
+ pageContentStart: string;
53
+ diff: string | null;
54
+ }>;
55
+ clear: (pageId: string) => Promise<void>;
56
+ get: {
57
+ byPageId: {
58
+ all: (pageId: string) => Promise<{
59
+ userId: string;
60
+ id: string;
61
+ pageId: string;
62
+ timestamp: Date | null;
63
+ pageMetaData: unknown;
64
+ pageContentStart: string;
65
+ diff: string | null;
66
+ }[]>;
67
+ latest: (pageId: string, count: number) => Promise<{
68
+ userId: string;
69
+ id: string;
70
+ pageId: string;
71
+ timestamp: Date | null;
72
+ pageMetaData: unknown;
73
+ pageContentStart: string;
74
+ diff: string | null;
75
+ }[]>;
76
+ };
77
+ byUserId: {
78
+ all: (userId: string) => Promise<{
79
+ userId: string;
80
+ id: string;
81
+ pageId: string;
82
+ timestamp: Date | null;
83
+ pageMetaData: unknown;
84
+ pageContentStart: string;
85
+ diff: string | null;
86
+ }[]>;
87
+ latest: (userId: string, count: number) => Promise<{
88
+ userId: string;
89
+ id: string;
90
+ pageId: string;
91
+ timestamp: Date | null;
92
+ pageMetaData: unknown;
93
+ pageContentStart: string;
94
+ diff: string | null;
95
+ }[]>;
96
+ };
97
+ single: (id: string) => Promise<{
98
+ userId: string;
99
+ id: string;
100
+ pageId: string;
101
+ timestamp: Date | null;
102
+ pageMetaData: unknown;
103
+ pageContentStart: string;
104
+ diff: string | null;
105
+ } | undefined>;
106
+ withHtml: (id: string, options?: import("diff2html").Diff2HtmlConfig) => Promise<{
107
+ metadataDiffHtml: string;
108
+ contentDiffHtml: string;
109
+ userId: string;
110
+ id: string;
111
+ pageId: string;
112
+ timestamp: Date | null;
113
+ pageMetaData: unknown;
114
+ pageContentStart: string;
115
+ diff: string | null;
116
+ }>;
117
+ };
118
+ revertToDiff: (id: string, type: "content" | "data" | "both") => Promise<{
119
+ userId: string;
120
+ id: string;
121
+ pageId: string;
122
+ timestamp: Date | null;
123
+ pageMetaData: unknown;
124
+ pageContentStart: string;
125
+ diff: string | null;
126
+ }>;
127
+ };
128
+ AUTH: {
129
+ oAuth: {
130
+ create: (data: import("./types/tsAlias.js").tsOAuthAccountsSelect) => Promise<import("./types/tsAlias.js").tsOAuthAccountsSelect>;
131
+ delete: (userId: string, provider: string) => Promise<import("./types/index.js").DeletionResponse>;
132
+ searchProvidersForId: (providerId: string, userId: string) => Promise<import("./types/tsAlias.js").tsOAuthAccountsSelect | undefined>;
133
+ };
134
+ permission: {
135
+ currentStatus: (userId: string) => Promise<import("./types/tsAlias.js").tsPermissionsSelect | undefined>;
136
+ };
137
+ session: {
138
+ create: (data: import("./types/tsAlias.js").tsSessionTableInsert) => Promise<import("./types/tsAlias.js").tsSessionTableSelect>;
139
+ sessionWithUser: (sessionId: string) => Promise<{
140
+ user: import("./types/tsAlias.js").tsUsersSelect;
141
+ session: import("./types/tsAlias.js").tsSessionTableSelect;
142
+ }[]>;
143
+ delete: (sessionId: string) => Promise<import("./types/index.js").DeletionResponse>;
144
+ update: (sessionId: string, newDate: Date) => Promise<import("./types/tsAlias.js").tsSessionTableSelect[]>;
145
+ };
146
+ user: {
147
+ create: (newUserData: import("./types/tsAlias.js").tsUsersInsert, rank?: "visitor" | "editor" | "admin" | "owner") => Promise<import("./types/tsAlias.js").tsUsersSelect>;
148
+ update: (userId: string, userData: import("./types/tsAlias.js").tsUsersUpdate) => Promise<import("./types/tsAlias.js").tsUsersSelect>;
149
+ searchUsersForUsernameOrEmail: (username: string, email: string) => Promise<{
150
+ usernameSearch: import("./types/tsAlias.js").tsUsersSelect[];
151
+ emailSearch: import("./types/tsAlias.js").tsUsersSelect[];
152
+ }>;
153
+ ghost: {
154
+ verifyExists: () => Promise<boolean>;
155
+ create: () => Promise<{
156
+ name: string;
157
+ username: string;
158
+ email: string | null;
159
+ id: string;
160
+ url: string | null;
161
+ avatar: string | null;
162
+ password: string | null;
163
+ updatedAt: Date | null;
164
+ createdAt: Date | null;
165
+ }>;
166
+ get: () => Promise<{
167
+ name: string;
168
+ username: string;
169
+ email: string | null;
170
+ id: string;
171
+ url: string | null;
172
+ avatar: string | null;
173
+ password: string | null;
174
+ updatedAt: Date | null;
175
+ createdAt: Date | null;
176
+ } | undefined>;
177
+ };
178
+ };
179
+ };
180
+ INIT: {
181
+ siteConfig: (config: import("./types/tsAlias.js").tsSiteConfigInsert) => Promise<import("./types/tsAlias.js").tsSiteConfigSelect>;
182
+ ghostUser: () => Promise<import("./types/tsAlias.js").tsUsersSelect>;
183
+ };
184
+ GET: {
185
+ database: {
186
+ users: () => Promise<import("./types/index.js").CombinedUserData[]>;
187
+ pages: (includeDrafts?: boolean, tree?: import("./types/index.js").FolderNode[]) => Promise<import("./types/index.js").CombinedPageData[]>;
188
+ config: () => Promise<import("./types/tsAlias.js").tsSiteConfigSelect | undefined>;
189
+ folders: () => Promise<import("./types/tsAlias.js").tsPageFolderSelect[]>;
190
+ };
191
+ databaseEntry: {
192
+ users: {
193
+ byId: (id: string) => Promise<import("./types/index.js").CombinedUserData | undefined>;
194
+ byUsername: (username: string) => Promise<import("./types/index.js").CombinedUserData | undefined>;
195
+ byEmail: (email: string) => Promise<import("./types/index.js").CombinedUserData | undefined>;
196
+ };
197
+ pages: {
198
+ byId: (id: string, tree?: import("./types/index.js").FolderNode[]) => Promise<import("./types/index.js").CombinedPageData | undefined>;
199
+ bySlug: (slug: string, tree?: import("./types/index.js").FolderNode[]) => Promise<import("./types/index.js").CombinedPageData | undefined>;
200
+ };
201
+ folder: (id: string) => Promise<import("./types/tsAlias.js").tsPageFolderSelect | undefined>;
202
+ };
203
+ databaseTable: {
204
+ users: () => Promise<{
205
+ name: string;
206
+ username: string;
207
+ email: string | null;
208
+ id: string;
209
+ url: string | null;
210
+ avatar: string | null;
211
+ password: string | null;
212
+ updatedAt: Date | null;
213
+ createdAt: Date | null;
214
+ }[]>;
215
+ oAuthAccounts: () => Promise<{
216
+ provider: string;
217
+ providerUserId: string;
218
+ userId: string;
219
+ }[]>;
220
+ sessionTable: () => Promise<{
221
+ userId: string;
222
+ id: string;
223
+ expiresAt: Date;
224
+ }[]>;
225
+ permissions: () => Promise<{
226
+ user: string;
227
+ rank: string;
228
+ }[]>;
229
+ pageData: () => Promise<{
230
+ title: string;
231
+ description: string;
232
+ id: string;
233
+ updatedAt: Date | null;
234
+ package: string;
235
+ showOnNav: boolean;
236
+ publishedAt: Date;
237
+ slug: string;
238
+ contentLang: string;
239
+ heroImage: string;
240
+ categories: unknown;
241
+ tags: unknown;
242
+ authorId: string | null;
243
+ contributorIds: unknown;
244
+ showAuthor: boolean | null;
245
+ showContributors: boolean | null;
246
+ parentFolder: string | null;
247
+ draft: boolean | null;
248
+ }[]>;
249
+ pageDataTags: () => Promise<{
250
+ meta: unknown;
251
+ name: string;
252
+ description: string;
253
+ id: number;
254
+ slug: string;
255
+ }[]>;
256
+ pageDataCategories: () => Promise<{
257
+ meta: unknown;
258
+ name: string;
259
+ description: string;
260
+ id: number;
261
+ slug: string;
262
+ parent: number | null;
263
+ }[]>;
264
+ pageContent: () => Promise<{
265
+ id: string;
266
+ contentLang: string;
267
+ content: string | null;
268
+ contentId: string;
269
+ }[]>;
270
+ siteConfig: () => Promise<{
271
+ title: string;
272
+ description: string;
273
+ id: number;
274
+ defaultOgImage: string | null;
275
+ siteIcon: string | null;
276
+ loginPageBackground: string;
277
+ loginPageCustomImage: string | null;
278
+ enableDiffs: boolean;
279
+ diffPerPage: number;
280
+ gridItems: unknown;
281
+ } | undefined>;
282
+ diffTracking: () => Promise<{
283
+ userId: string;
284
+ id: string;
285
+ pageId: string;
286
+ timestamp: Date | null;
287
+ pageMetaData: unknown;
288
+ pageContentStart: string;
289
+ diff: string | null;
290
+ }[]>;
291
+ pageFolderStructure: () => Promise<{
292
+ name: string;
293
+ id: string;
294
+ parent: string | null;
295
+ }[]>;
296
+ };
297
+ permissionsLists: {
298
+ all: () => Promise<import("./types/tableDefs.js").CombinedRank[]>;
299
+ owners: () => Promise<import("./types/tableDefs.js").SingleRank[]>;
300
+ admins: () => Promise<import("./types/tableDefs.js").SingleRank[]>;
301
+ editors: () => Promise<import("./types/tableDefs.js").SingleRank[]>;
302
+ visitors: () => Promise<import("./types/tableDefs.js").SingleRank[]>;
303
+ };
304
+ packagePages: (packageName: string, tree?: import("./types/index.js").FolderNode[]) => Promise<import("./types/index.js").CombinedPageData[]>;
305
+ };
306
+ POST: {
307
+ databaseEntry: {
308
+ pages: (pageData: import("./types/tsAlias.js").tsPageDataInsert, pageContent: import("./types/tsAlias.js").CombinedInsertContent) => Promise<import("./types/index.js").addDatabaseEntryInsertPage>;
309
+ pageContent: (pageContent: import("./types/tsAlias.js").tsPageContentInsert) => Promise<import("./types/tableDefs.js").PageContentReturnId[]>;
310
+ tags: (tag: import("./types/tsAlias.js").tsPageDataTagsInsert) => Promise<import("./types/tableDefs.js").PageDataTagsInsertResponse[]>;
311
+ categories: (category: import("./types/tsAlias.js").tsPageDataCategoriesInsert) => Promise<{
312
+ id: number;
313
+ }[]>;
314
+ permissions: (userId: string, rank: string) => Promise<import("./types/tsAlias.js").tsPermissionsSelect[]>;
315
+ diffTracking: (diff: import("./types/tsAlias.js").tsDiffTrackingInsert) => Promise<import("./types/tsAlias.js").tsDiffTrackingSelect[]>;
316
+ folder: (folder: import("./types/tsAlias.js").tsPageFolderInsert) => Promise<import("./types/tsAlias.js").tsPageFolderSelect[]>;
317
+ };
318
+ databaseEntries: {
319
+ tags: (data: import("./types/tsAlias.js").tsPageDataTagsInsert[]) => Promise<import("./types/tableDefs.js").PageDataTagsInsertResponse[]>;
320
+ categories: (data: import("./types/tsAlias.js").tsPageDataCategoriesInsert[]) => Promise<import("./types/tableDefs.js").PageDataCategoriesInsertResponse[]>;
321
+ permissions: (data: import("./types/tsAlias.js").tsPermissionsInsert[]) => Promise<import("./types/tsAlias.js").tsPermissionsSelect[]>;
322
+ pages: (pages: import("./types/index.js").MultiPageInsert) => Promise<void>;
323
+ };
324
+ };
325
+ UPDATE: {
326
+ page: (data: import("./types/tsAlias.js").tsPageDataSelect) => Promise<import("./types/tsAlias.js").tsPageDataSelect>;
327
+ pageContent: (data: import("./types/tsAlias.js").tsPageContentSelect) => Promise<import("./types/tsAlias.js").tsPageContentSelect>;
328
+ tags: (data: import("./types/tsAlias.js").tsPageDataTagsSelect) => Promise<import("./types/tsAlias.js").tsPageDataTagsSelect>;
329
+ categories: (data: import("./types/tsAlias.js").tsPageDataCategoriesSelect) => Promise<import("./types/tsAlias.js").tsPageDataCategoriesSelect>;
330
+ permissions: (data: import("./types/tsAlias.js").tsPermissionsSelect) => Promise<import("./types/tsAlias.js").tsPermissionsSelect>;
331
+ siteConfig: (data: import("./types/tsAlias.js").tsSiteConfigSelect) => Promise<import("./types/tsAlias.js").tsSiteConfigSelect>;
332
+ folder: (data: import("./types/tsAlias.js").tsPageFolderSelect) => Promise<import("./types/tsAlias.js").tsPageFolderSelect>;
333
+ };
334
+ DELETE: {
335
+ page: (id: string) => Promise<import("./types/index.js").DeletionResponse>;
336
+ pageContent: (id: string) => Promise<import("./types/index.js").DeletionResponse>;
337
+ pageContentLang: (id: string, lang: string) => Promise<import("./types/index.js").DeletionResponse>;
338
+ tags: (id: number) => Promise<import("./types/index.js").DeletionResponse>;
339
+ categories: (id: number) => Promise<import("./types/index.js").DeletionResponse>;
340
+ permissions: (userId: string) => Promise<import("./types/index.js").DeletionResponse>;
341
+ diffTracking: (id: string) => Promise<import("./types/index.js").DeletionResponse>;
342
+ folder: (id: string) => Promise<import("./types/index.js").DeletionResponse>;
343
+ user: (id: string) => Promise<import("./types/index.js").DeletionResponse>;
344
+ };
345
+ db: import("drizzle-orm/libsql").LibSQLDatabase<typeof import("./tables.js")>;
346
+ REST_API: {
347
+ tokens: {
348
+ get: (userId: string) => Promise<{
349
+ description: string | null;
350
+ userId: string;
351
+ id: string;
352
+ key: string;
353
+ creationDate: Date;
354
+ }[]>;
355
+ new: (userId: string, description: string) => Promise<{
356
+ description: string | null;
357
+ userId: string;
358
+ id: string;
359
+ key: string;
360
+ creationDate: Date;
361
+ }>;
362
+ delete: (userId: string, tokenId: string) => Promise<void>;
363
+ verify: (key: string) => Promise<false | {
364
+ userId: string;
365
+ key: string;
366
+ rank: string;
367
+ }>;
368
+ };
369
+ };
370
+ };
371
+ export default studioCMS_SDK;
@@ -0,0 +1,8 @@
1
+ import { studiocmsSDKCore } from "./core.js";
2
+ const sdkCore = studiocmsSDKCore();
3
+ const studioCMS_SDK = sdkCore;
4
+ var sdk_default = studioCMS_SDK;
5
+ export {
6
+ sdk_default as default,
7
+ studioCMS_SDK
8
+ };
@@ -0,0 +1,50 @@
1
+ import type { FolderNode, tsPageFolderSelect } from '../types/index.js';
2
+ /**
3
+ * Builds a folder structure from the provided folder data.
4
+ *
5
+ * @param folders - An array of folder data to build the folder structure from.
6
+ * @returns An array of folder nodes representing the folder structure.
7
+ */
8
+ export declare function generateFolderTree(folders: tsPageFolderSelect[]): FolderNode[];
9
+ /**
10
+ * Finds a node in the tree that matches the given URL path.
11
+ * @param tree - The root of the folder tree.
12
+ * @param path - The URL path to locate.
13
+ * @returns The matching node or null if not found.
14
+ */
15
+ export declare function findNodeByPath(tree: FolderNode[], path: string[]): FolderNode | null;
16
+ /**
17
+ * Finds all nodes along the path to a specific node by its ID.
18
+ * @param tree - The root of the folder tree.
19
+ * @param id - The ID of the target node.
20
+ * @returns An array of nodes along the path or an empty array if the node is not found.
21
+ */
22
+ export declare function findNodesAlongPathToId(tree: FolderNode[], id: string): FolderNode[];
23
+ /**
24
+ * Finds the full path to a node based on its URL.
25
+ * @param tree - The root of the folder tree.
26
+ * @param path - The URL path to locate.
27
+ * @returns The full path as an array of node names.
28
+ */
29
+ export declare function getFullPath(tree: FolderNode[], path: string[]): string[];
30
+ /**
31
+ * Finds all nodes along the path to a given URL.
32
+ * @param tree - The root of the folder tree.
33
+ * @param path - The URL path to locate.
34
+ * @returns The nodes along the path.
35
+ */
36
+ export declare function findNodesAlongPath(tree: FolderNode[], path: string[]): FolderNode[];
37
+ /**
38
+ * Finds a node by its ID in the tree.
39
+ * @param id - The ID of the node to find.
40
+ * @returns The node or null if not found.
41
+ */
42
+ export declare function findNodeById(tree: FolderNode[], id: string): FolderNode | null;
43
+ /**
44
+ * Adds a new page to the folder tree.
45
+ * @param tree - The root of the folder tree.
46
+ * @param folderId - The ID of the parent folder.
47
+ * @param newPage - The new page to add.
48
+ * @returns The updated folder tree
49
+ */
50
+ export declare function addPageToFolderTree(tree: FolderNode[], folderId: string, newPage: FolderNode): FolderNode[];
@@ -0,0 +1,123 @@
1
+ function generateFolderTree(folders) {
2
+ const folderMap = {};
3
+ for (const folder of folders) {
4
+ folderMap[folder.id] = {
5
+ id: folder.id,
6
+ name: folder.name,
7
+ pageData: null,
8
+ page: false,
9
+ children: []
10
+ };
11
+ }
12
+ const rootFolders = [];
13
+ for (const folder of folders) {
14
+ const childFolder = folderMap[folder.id];
15
+ if (!childFolder) continue;
16
+ if (folder.parent === null) {
17
+ rootFolders.push(childFolder);
18
+ } else {
19
+ const parentFolder = folderMap[folder.parent];
20
+ if (parentFolder) {
21
+ parentFolder.children.push(childFolder);
22
+ }
23
+ }
24
+ }
25
+ return rootFolders;
26
+ }
27
+ function findNodeByPath(tree, path) {
28
+ if (path.length === 0) return null;
29
+ const [current, ...rest] = path;
30
+ for (const node of tree) {
31
+ if (node.name === current) {
32
+ if (rest.length === 0) return node;
33
+ return findNodeByPath(node.children, rest);
34
+ }
35
+ }
36
+ return null;
37
+ }
38
+ function findNodesAlongPathToId(tree, id) {
39
+ const path = [];
40
+ function helper(nodes, targetId) {
41
+ for (const node of nodes) {
42
+ path.push(node);
43
+ if (node.id === targetId) {
44
+ return true;
45
+ }
46
+ if (helper(node.children, targetId)) {
47
+ return true;
48
+ }
49
+ path.pop();
50
+ }
51
+ return false;
52
+ }
53
+ helper(tree, id);
54
+ return path;
55
+ }
56
+ function getFullPath(tree, path) {
57
+ const result = [];
58
+ function helper(nodes, pathParts) {
59
+ if (pathParts.length === 0) return false;
60
+ const [current, ...rest] = pathParts;
61
+ for (const node of nodes) {
62
+ if (node.name === current) {
63
+ result.push(node.name);
64
+ if (rest.length === 0 || helper(node.children, rest)) {
65
+ return true;
66
+ }
67
+ result.pop();
68
+ }
69
+ }
70
+ return false;
71
+ }
72
+ helper(tree, path);
73
+ return result;
74
+ }
75
+ function findNodesAlongPath(tree, path) {
76
+ const result = [];
77
+ function helper(nodes, pathParts) {
78
+ if (pathParts.length === 0) return false;
79
+ const [current, ...rest] = pathParts;
80
+ for (const node of nodes) {
81
+ if (node.name === current) {
82
+ result.push(node);
83
+ if (rest.length === 0 || helper(node.children, rest)) {
84
+ return true;
85
+ }
86
+ result.pop();
87
+ }
88
+ }
89
+ return false;
90
+ }
91
+ helper(tree, path);
92
+ return result;
93
+ }
94
+ function findNodeById(tree, id) {
95
+ for (const node of tree) {
96
+ if (node.id === id) {
97
+ return node;
98
+ }
99
+ const found = findNodeById(node.children, id);
100
+ if (found) {
101
+ return found;
102
+ }
103
+ }
104
+ return null;
105
+ }
106
+ function addPageToFolderTree(tree, folderId, newPage) {
107
+ const parentFolder = findNodeById(tree, folderId);
108
+ if (!parentFolder) {
109
+ tree.push(newPage);
110
+ return tree;
111
+ }
112
+ parentFolder.children.push(newPage);
113
+ return tree;
114
+ }
115
+ export {
116
+ addPageToFolderTree,
117
+ findNodeById,
118
+ findNodeByPath,
119
+ findNodesAlongPath,
120
+ findNodesAlongPathToId,
121
+ generateFolderTree,
122
+ getFullPath
123
+ };
@@ -0,0 +1,30 @@
1
+ import jwt from 'jsonwebtoken';
2
+ /**
3
+ * Generates a random ID number with the specified length.
4
+ *
5
+ * @param length - The length of the random ID number to generate.
6
+ * @returns A random ID number with the specified length.
7
+ */
8
+ export declare function generateRandomIDNumber(length: number): number;
9
+ /**
10
+ * Generates a JSON Web Token (JWT) for a given user ID.
11
+ *
12
+ * @param userId - The unique identifier of the user for whom the token is being generated.
13
+ * @returns A signed JWT string that expires in 3 hours.
14
+ */
15
+ export declare function generateToken(userId: string): string;
16
+ /**
17
+ * Verifies the provided JWT token using the CMS encryption key.
18
+ *
19
+ * @param token - The JWT token to be verified.
20
+ * @returns The decoded token if verification is successful.
21
+ * @throws Will throw an error if the token is invalid or verification fails.
22
+ */
23
+ export declare function testToken(token: string): string | jwt.JwtPayload;
24
+ /**
25
+ * Generates a random password of the specified length.
26
+ *
27
+ * @param length - The length of the password to generate.
28
+ * @returns A randomly generated password string containing uppercase letters, lowercase letters, and digits.
29
+ */
30
+ export declare function generateRandomPassword(length: number): string;
@@ -0,0 +1,25 @@
1
+ import { cmsEncryptionKey } from "virtual:studiocms/sdk/env";
2
+ import jwt from "jsonwebtoken";
3
+ function generateRandomIDNumber(length) {
4
+ return Math.floor(Math.random() * 10 ** length);
5
+ }
6
+ function generateToken(userId) {
7
+ return jwt.sign({ userId }, cmsEncryptionKey, { expiresIn: "3h" });
8
+ }
9
+ function testToken(token) {
10
+ return jwt.verify(token, cmsEncryptionKey);
11
+ }
12
+ function generateRandomPassword(length) {
13
+ const characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
14
+ let password = "";
15
+ for (let i = 0; i < length; i++) {
16
+ password += characters.charAt(Math.floor(Math.random() * characters.length));
17
+ }
18
+ return password;
19
+ }
20
+ export {
21
+ generateRandomIDNumber,
22
+ generateRandomPassword,
23
+ generateToken,
24
+ testToken
25
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * List of all page types available in the StudioCMS instance.
3
+ */
4
+ export declare const pageTypeList: string[];
5
+ /**
6
+ * Type of a page in the StudioCMS instance.
7
+ */
8
+ export type PageType = (typeof pageTypeList)[number];
@@ -0,0 +1,14 @@
1
+ import pluginsList from "studiocms:plugins";
2
+ const pageTypeList = pluginsList.flatMap(({ pageTypes }) => {
3
+ const pageTypeOutput = [];
4
+ if (!pageTypes) {
5
+ return pageTypeOutput;
6
+ }
7
+ for (const { identifier } of pageTypes) {
8
+ pageTypeOutput.push(identifier);
9
+ }
10
+ return pageTypeOutput;
11
+ });
12
+ export {
13
+ pageTypeList
14
+ };