@fecommunity/reactpress-toolkit 3.0.4 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (527) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +194 -309
  3. package/dist/.source-fingerprint-toolkit +1 -0
  4. package/dist/admin/index.d.ts +2 -0
  5. package/dist/admin/index.js +18 -0
  6. package/dist/admin/permissions.d.ts +5 -0
  7. package/dist/admin/permissions.js +33 -0
  8. package/dist/admin/registry.d.ts +62 -0
  9. package/dist/admin/registry.js +79 -0
  10. package/dist/api/HttpClient.d.ts +2 -2
  11. package/dist/api/HttpClient.js +1 -1
  12. package/dist/api/Smtp.d.ts +17 -0
  13. package/dist/api/Smtp.js +15 -0
  14. package/dist/api/instance.d.ts +1 -1
  15. package/dist/api/instance.js +3 -3
  16. package/dist/app/createReactPressApp.d.ts +8 -0
  17. package/dist/app/createReactPressApp.js +265 -0
  18. package/dist/app/createThemeApp.d.ts +8 -0
  19. package/dist/app/createThemeApp.js +51 -0
  20. package/dist/app/devChunkRecovery.d.ts +2 -0
  21. package/dist/app/devChunkRecovery.js +68 -0
  22. package/dist/app/index.d.ts +39 -0
  23. package/dist/app/index.js +11 -0
  24. package/dist/config/env.js +29 -15
  25. package/dist/config/global.d.ts +7 -1
  26. package/dist/config/global.js +9 -3
  27. package/dist/config/i18n.js +27 -11
  28. package/dist/config/index.d.ts +3 -3
  29. package/dist/config/index.js +6 -5
  30. package/dist/{locales → config/locales}/en.json +31 -3
  31. package/dist/{locales → config/locales}/zh.json +31 -3
  32. package/dist/dev/index.d.ts +3 -0
  33. package/dist/dev/index.js +12 -0
  34. package/dist/dev/portRedirect.d.ts +20 -0
  35. package/dist/dev/portRedirect.js +93 -0
  36. package/dist/dev/vitePortRedirectPlugin.d.ts +24 -0
  37. package/dist/dev/vitePortRedirectPlugin.js +40 -0
  38. package/dist/extension/branding-mods.d.ts +10 -0
  39. package/dist/extension/branding-mods.js +65 -0
  40. package/dist/extension/configuration/defaults.d.ts +3 -0
  41. package/dist/extension/configuration/defaults.js +32 -0
  42. package/dist/extension/configuration/formily.d.ts +10 -0
  43. package/dist/extension/configuration/formily.js +170 -0
  44. package/dist/extension/configuration/index.d.ts +7 -0
  45. package/dist/extension/configuration/index.js +28 -0
  46. package/dist/extension/configuration/paths.d.ts +4 -0
  47. package/dist/extension/configuration/paths.js +50 -0
  48. package/dist/extension/configuration/presets/twentytwentyfive.d.ts +7 -0
  49. package/dist/extension/configuration/presets/twentytwentyfive.js +94 -0
  50. package/dist/extension/configuration/resolve.d.ts +24 -0
  51. package/dist/extension/configuration/resolve.js +98 -0
  52. package/dist/extension/configuration/types.d.ts +68 -0
  53. package/dist/extension/configuration/types.js +3 -0
  54. package/dist/extension/configuration/validate.d.ts +8 -0
  55. package/dist/extension/configuration/validate.js +21 -0
  56. package/dist/extension/index.d.ts +9 -0
  57. package/dist/extension/index.js +35 -0
  58. package/dist/extension/manifest-normalize.d.ts +5 -0
  59. package/dist/extension/manifest-normalize.js +75 -0
  60. package/dist/extension/node.d.ts +2 -0
  61. package/dist/extension/node.js +6 -0
  62. package/dist/extension/presets/twentytwentyfive-appearance.d.ts +10 -0
  63. package/dist/extension/presets/twentytwentyfive-appearance.js +193 -0
  64. package/dist/extension/presets/twentytwentyfive-customizer.d.ts +19 -0
  65. package/dist/extension/presets/twentytwentyfive-customizer.js +199 -0
  66. package/dist/extension/preview.d.ts +46 -0
  67. package/dist/extension/preview.js +92 -0
  68. package/dist/extension/site-notices.d.ts +19 -0
  69. package/dist/extension/site-notices.js +88 -0
  70. package/dist/extension/site-settings.d.ts +37 -0
  71. package/dist/extension/site-settings.js +144 -0
  72. package/dist/extension/theme-admin-locale.d.ts +11 -0
  73. package/dist/extension/theme-admin-locale.io.d.ts +2 -0
  74. package/dist/extension/theme-admin-locale.io.js +54 -0
  75. package/dist/extension/theme-admin-locale.js +81 -0
  76. package/dist/extension/theme.d.ts +89 -0
  77. package/dist/extension/theme.js +93 -0
  78. package/dist/extension/twentytwentyfive-vars.d.ts +7 -0
  79. package/dist/extension/twentytwentyfive-vars.js +100 -0
  80. package/dist/index.d.ts +15 -7
  81. package/dist/index.js +44 -22
  82. package/dist/plugin/admin/index.d.ts +2 -0
  83. package/dist/plugin/admin/index.js +18 -0
  84. package/dist/plugin/admin/permissions.d.ts +5 -0
  85. package/dist/plugin/admin/permissions.js +33 -0
  86. package/dist/plugin/admin/plugin-admin.d.ts +37 -0
  87. package/dist/plugin/admin/plugin-admin.js +41 -0
  88. package/dist/plugin/admin/registry.d.ts +62 -0
  89. package/dist/plugin/admin/registry.js +79 -0
  90. package/dist/plugin/admin/slots.d.ts +36 -0
  91. package/dist/plugin/admin/slots.js +16 -0
  92. package/dist/plugin/client/client.d.ts +14 -0
  93. package/dist/plugin/client/client.js +95 -0
  94. package/dist/plugin/client/index.d.ts +4 -0
  95. package/dist/plugin/client/index.js +11 -0
  96. package/dist/plugin/client/runtime.d.ts +18 -0
  97. package/dist/plugin/client/runtime.js +30 -0
  98. package/dist/plugin/dev/index.d.ts +4 -0
  99. package/dist/plugin/dev/index.js +16 -0
  100. package/dist/plugin/dev/portRedirect.d.ts +26 -0
  101. package/dist/plugin/dev/portRedirect.js +111 -0
  102. package/dist/plugin/dev/vitePortRedirectPlugin.d.ts +24 -0
  103. package/dist/plugin/dev/vitePortRedirectPlugin.js +40 -0
  104. package/dist/plugin/extension/index.d.ts +4 -0
  105. package/dist/plugin/extension/index.js +20 -0
  106. package/dist/plugin/extension/plugin-admin-locale.d.ts +21 -0
  107. package/dist/plugin/extension/plugin-admin-locale.io.d.ts +2 -0
  108. package/dist/plugin/extension/plugin-admin-locale.io.js +54 -0
  109. package/dist/plugin/extension/plugin-admin-locale.js +60 -0
  110. package/dist/plugin/extension/plugin.d.ts +82 -0
  111. package/dist/plugin/extension/plugin.js +146 -0
  112. package/dist/plugin/extension/security.d.ts +7 -0
  113. package/dist/plugin/extension/security.js +74 -0
  114. package/dist/plugin/extension/validate.d.ts +8 -0
  115. package/dist/plugin/extension/validate.js +55 -0
  116. package/dist/plugin/index.d.ts +9 -0
  117. package/dist/plugin/index.js +48 -0
  118. package/dist/plugin/node.d.ts +2 -0
  119. package/dist/plugin/node.js +6 -0
  120. package/dist/plugin/react/client.d.ts +14 -0
  121. package/dist/plugin/react/client.js +95 -0
  122. package/dist/plugin/react/index.d.ts +2 -0
  123. package/dist/plugin/react/index.js +18 -0
  124. package/dist/plugin/react/plugin-admin-ui.d.ts +23 -0
  125. package/dist/plugin/react/plugin-admin-ui.js +38 -0
  126. package/dist/plugin/react/runtime.d.ts +18 -0
  127. package/dist/plugin/react/runtime.js +30 -0
  128. package/dist/plugin/server/hook-reject.d.ts +12 -0
  129. package/dist/plugin/server/hook-reject.js +39 -0
  130. package/dist/plugin/server/index.d.ts +2 -0
  131. package/dist/plugin/server/index.js +18 -0
  132. package/dist/plugin/server/types.d.ts +34 -0
  133. package/dist/plugin/server/types.js +3 -0
  134. package/dist/primitives/AntdStyleTransitionFix.d.ts +2 -0
  135. package/dist/primitives/AntdStyleTransitionFix.js +16 -0
  136. package/dist/primitives/Badge.d.ts +7 -0
  137. package/dist/primitives/Badge.js +9 -0
  138. package/dist/primitives/Button.d.ts +10 -0
  139. package/dist/primitives/Button.js +38 -0
  140. package/dist/primitives/ColorModeToggle.d.ts +8 -0
  141. package/dist/primitives/ColorModeToggle.js +13 -0
  142. package/dist/primitives/IconButton.d.ts +7 -0
  143. package/dist/primitives/IconButton.js +13 -0
  144. package/dist/primitives/ScrollToTarget.d.ts +9 -0
  145. package/dist/primitives/ScrollToTarget.js +48 -0
  146. package/dist/primitives/Separator.d.ts +7 -0
  147. package/dist/primitives/Separator.js +9 -0
  148. package/dist/primitives/Skeleton.d.ts +7 -0
  149. package/dist/primitives/Skeleton.js +9 -0
  150. package/dist/primitives/Slot.d.ts +10 -0
  151. package/dist/primitives/Slot.js +25 -0
  152. package/dist/primitives/Spinner.d.ts +6 -0
  153. package/dist/primitives/Spinner.js +9 -0
  154. package/dist/primitives/animation/ConditionTransition.d.ts +8 -0
  155. package/dist/primitives/animation/ConditionTransition.js +13 -0
  156. package/dist/primitives/animation/ListTrail.d.ts +10 -0
  157. package/dist/primitives/animation/ListTrail.js +14 -0
  158. package/dist/primitives/animation/Opacity.d.ts +3 -0
  159. package/dist/primitives/animation/Opacity.js +10 -0
  160. package/dist/primitives/animation/Spring.d.ts +9 -0
  161. package/dist/primitives/animation/Spring.js +29 -0
  162. package/dist/primitives/animation/index.d.ts +7 -0
  163. package/dist/primitives/animation/index.js +11 -0
  164. package/dist/primitives/cn.d.ts +4 -0
  165. package/dist/primitives/cn.js +7 -0
  166. package/dist/primitives/icons.d.ts +4 -0
  167. package/dist/primitives/icons.js +15 -0
  168. package/dist/primitives/index.d.ts +22 -0
  169. package/dist/primitives/index.js +44 -0
  170. package/dist/react/client.d.ts +14 -0
  171. package/dist/react/client.js +95 -0
  172. package/dist/react/index.d.ts +4 -0
  173. package/dist/react/index.js +11 -0
  174. package/dist/react/runtime.d.ts +18 -0
  175. package/dist/react/runtime.js +30 -0
  176. package/dist/theme/antdDocument.d.ts +18 -0
  177. package/dist/theme/antdDocument.js +59 -0
  178. package/dist/theme/api/api-data.d.ts +2 -0
  179. package/dist/theme/api/api-data.js +8 -0
  180. package/dist/theme/api/api.d.ts +28 -0
  181. package/dist/theme/api/api.js +27 -0
  182. package/dist/theme/api/httpClient.d.ts +24 -0
  183. package/dist/theme/api/httpClient.js +83 -0
  184. package/dist/theme/api/json.d.ts +1 -0
  185. package/dist/theme/api/json.js +5 -0
  186. package/dist/theme/api/jsonp.d.ts +1 -0
  187. package/dist/theme/api/jsonp.js +5 -0
  188. package/dist/theme/api-data.d.ts +12 -0
  189. package/dist/theme/api-data.js +22 -0
  190. package/dist/theme/api.d.ts +28 -0
  191. package/dist/theme/api.js +27 -0
  192. package/dist/theme/appearance.d.ts +4 -0
  193. package/dist/theme/appearance.js +16 -0
  194. package/dist/theme/assets.d.ts +2 -0
  195. package/dist/theme/assets.js +27 -0
  196. package/dist/theme/authSession.d.ts +16 -0
  197. package/dist/theme/authSession.js +92 -0
  198. package/dist/theme/build/antdDocument.d.ts +145 -0
  199. package/dist/theme/build/antdDocument.js +70 -0
  200. package/dist/theme/build/next-config.d.ts +15 -0
  201. package/dist/theme/build/next-config.js +63 -0
  202. package/dist/theme/build/node.d.ts +2 -0
  203. package/dist/theme/build/node.js +6 -0
  204. package/dist/theme/colorMode.d.ts +12 -0
  205. package/dist/theme/colorMode.js +45 -0
  206. package/dist/theme/commentAuthor.d.ts +17 -0
  207. package/dist/theme/commentAuthor.js +48 -0
  208. package/dist/theme/content/archiveSlim.d.ts +7 -0
  209. package/dist/theme/content/archiveSlim.js +38 -0
  210. package/dist/theme/content/articleSlim.d.ts +10 -0
  211. package/dist/theme/content/articleSlim.js +35 -0
  212. package/dist/theme/content/assets.d.ts +8 -0
  213. package/dist/theme/content/assets.js +74 -0
  214. package/dist/theme/content/carouselArticles.d.ts +10 -0
  215. package/dist/theme/content/carouselArticles.js +39 -0
  216. package/dist/theme/content/excerpt.d.ts +15 -0
  217. package/dist/theme/content/excerpt.js +42 -0
  218. package/dist/theme/content/nav.d.ts +10 -0
  219. package/dist/theme/content/nav.js +30 -0
  220. package/dist/theme/content/seo.d.ts +6 -0
  221. package/dist/theme/content/seo.js +12 -0
  222. package/dist/theme/createAntdApp.d.ts +106 -0
  223. package/dist/theme/createAntdApp.js +175 -0
  224. package/dist/theme/createApp.d.ts +10 -0
  225. package/dist/theme/createApp.js +141 -0
  226. package/dist/theme/createCatalogApp.d.ts +108 -0
  227. package/dist/theme/createCatalogApp.js +168 -0
  228. package/dist/theme/customizer.d.ts +1 -0
  229. package/dist/theme/customizer.js +5 -0
  230. package/dist/theme/excerpt.d.ts +16 -0
  231. package/dist/theme/excerpt.js +31 -0
  232. package/dist/theme/extension/branding-mods.d.ts +10 -0
  233. package/dist/theme/extension/branding-mods.js +65 -0
  234. package/dist/theme/extension/configuration/defaults.d.ts +3 -0
  235. package/dist/theme/extension/configuration/defaults.js +32 -0
  236. package/dist/theme/extension/configuration/formily.d.ts +10 -0
  237. package/dist/theme/extension/configuration/formily.js +170 -0
  238. package/dist/theme/extension/configuration/index.d.ts +7 -0
  239. package/dist/theme/extension/configuration/index.js +28 -0
  240. package/dist/theme/extension/configuration/paths.d.ts +1 -0
  241. package/dist/theme/extension/configuration/paths.js +7 -0
  242. package/dist/theme/extension/configuration/presets/twentytwentyfive.d.ts +7 -0
  243. package/dist/theme/extension/configuration/presets/twentytwentyfive.js +94 -0
  244. package/dist/theme/extension/configuration/resolve.d.ts +24 -0
  245. package/dist/theme/extension/configuration/resolve.js +98 -0
  246. package/dist/theme/extension/configuration/types.d.ts +68 -0
  247. package/dist/theme/extension/configuration/types.js +3 -0
  248. package/dist/theme/extension/configuration/validate.d.ts +8 -0
  249. package/dist/theme/extension/configuration/validate.js +21 -0
  250. package/dist/theme/extension/index.d.ts +11 -0
  251. package/dist/theme/extension/index.js +38 -0
  252. package/dist/theme/extension/manifest-normalize.d.ts +5 -0
  253. package/dist/theme/extension/manifest-normalize.js +75 -0
  254. package/dist/theme/extension/presets/twentytwentyfive-appearance.d.ts +10 -0
  255. package/dist/theme/extension/presets/twentytwentyfive-appearance.js +193 -0
  256. package/dist/theme/extension/preview.d.ts +46 -0
  257. package/dist/theme/extension/preview.js +92 -0
  258. package/dist/theme/extension/site-notices.d.ts +19 -0
  259. package/dist/theme/extension/site-notices.js +88 -0
  260. package/dist/theme/extension/site-settings.d.ts +37 -0
  261. package/dist/theme/extension/site-settings.js +144 -0
  262. package/dist/theme/extension/siteNav.d.ts +18 -0
  263. package/dist/theme/extension/siteNav.js +17 -0
  264. package/dist/theme/extension/theme-admin-locale.d.ts +11 -0
  265. package/dist/theme/extension/theme-admin-locale.io.d.ts +2 -0
  266. package/dist/theme/extension/theme-admin-locale.io.js +54 -0
  267. package/dist/theme/extension/theme-admin-locale.js +68 -0
  268. package/dist/theme/extension/theme.d.ts +89 -0
  269. package/dist/theme/extension/theme.js +93 -0
  270. package/dist/theme/extension/twentytwentyfive-vars.d.ts +9 -0
  271. package/dist/theme/extension/twentytwentyfive-vars.js +103 -0
  272. package/dist/theme/fetch.d.ts +134 -0
  273. package/dist/theme/fetch.js +241 -0
  274. package/dist/theme/format.d.ts +16 -0
  275. package/dist/theme/format.js +48 -0
  276. package/dist/theme/httpClient.d.ts +20 -0
  277. package/dist/theme/httpClient.js +89 -0
  278. package/dist/theme/index.d.ts +63 -0
  279. package/dist/theme/index.js +226 -0
  280. package/dist/theme/json.d.ts +1 -0
  281. package/dist/theme/json.js +17 -0
  282. package/dist/theme/jsonp.d.ts +8 -0
  283. package/dist/theme/jsonp.js +27 -0
  284. package/dist/theme/locale.d.ts +23 -0
  285. package/dist/theme/locale.js +55 -0
  286. package/dist/theme/nav.d.ts +10 -0
  287. package/dist/theme/nav.js +30 -0
  288. package/dist/theme/next-config.d.ts +2 -0
  289. package/dist/theme/next-config.js +18 -0
  290. package/dist/theme/node.d.ts +2 -0
  291. package/dist/theme/node.js +18 -0
  292. package/dist/theme/preview/preview-config.d.ts +13 -0
  293. package/dist/theme/preview/preview-config.js +65 -0
  294. package/dist/theme/preview/preview-draft.d.ts +19 -0
  295. package/dist/theme/preview/preview-draft.js +51 -0
  296. package/dist/theme/preview/preview-mods.d.ts +16 -0
  297. package/dist/theme/preview/preview-mods.js +78 -0
  298. package/dist/theme/preview-config.d.ts +13 -0
  299. package/dist/theme/preview-config.js +65 -0
  300. package/dist/theme/preview-draft.d.ts +19 -0
  301. package/dist/theme/preview-draft.js +51 -0
  302. package/dist/theme/preview-mods.d.ts +16 -0
  303. package/dist/theme/preview-mods.js +78 -0
  304. package/dist/theme/providers/index.d.ts +118 -0
  305. package/dist/theme/providers/index.js +251 -0
  306. package/dist/theme/providers/setup.d.ts +124 -0
  307. package/dist/theme/providers/setup.js +29 -0
  308. package/dist/theme/runtime.d.ts +18 -0
  309. package/dist/theme/runtime.js +19 -0
  310. package/dist/theme/seo.d.ts +6 -0
  311. package/dist/theme/seo.js +12 -0
  312. package/dist/theme/server.d.ts +65 -0
  313. package/dist/theme/server.js +177 -0
  314. package/dist/theme/setting.d.ts +12 -0
  315. package/dist/theme/setting.js +42 -0
  316. package/dist/theme/ssr/bootstrap.d.ts +48 -0
  317. package/dist/theme/ssr/bootstrap.js +112 -0
  318. package/dist/theme/ssr/fetch.d.ts +134 -0
  319. package/dist/theme/ssr/fetch.js +264 -0
  320. package/dist/theme/ssr/format.d.ts +3 -0
  321. package/dist/theme/ssr/format.js +8 -0
  322. package/dist/theme/ssr/pageProps.d.ts +62 -0
  323. package/dist/theme/ssr/pageProps.js +138 -0
  324. package/dist/theme/ssr/setting.d.ts +12 -0
  325. package/dist/theme/ssr/setting.js +42 -0
  326. package/dist/theme/ssr/slimBootstrap.d.ts +11 -0
  327. package/dist/theme/ssr/slimBootstrap.js +75 -0
  328. package/dist/theme/ssr/static.d.ts +10 -0
  329. package/dist/theme/ssr/static.js +17 -0
  330. package/dist/theme/ssr/templates.d.ts +35 -0
  331. package/dist/theme/ssr/templates.js +50 -0
  332. package/dist/theme/static.d.ts +10 -0
  333. package/dist/theme/static.js +17 -0
  334. package/dist/theme/templates.d.ts +27 -0
  335. package/dist/theme/templates.js +38 -0
  336. package/dist/theme/ui-optional.d.ts +1 -0
  337. package/dist/theme/ui-optional.js +21 -0
  338. package/dist/theme/visitor/appearance.d.ts +4 -0
  339. package/dist/theme/visitor/appearance.js +16 -0
  340. package/dist/theme/visitor/authSession.d.ts +16 -0
  341. package/dist/theme/visitor/authSession.js +92 -0
  342. package/dist/theme/visitor/colorMode.d.ts +17 -0
  343. package/dist/theme/visitor/colorMode.js +59 -0
  344. package/dist/theme/visitor/commentAuthor.d.ts +16 -0
  345. package/dist/theme/visitor/commentAuthor.js +45 -0
  346. package/dist/theme/visitor/i18n.d.ts +4 -0
  347. package/dist/theme/visitor/i18n.js +28 -0
  348. package/dist/theme/visitor/locale.d.ts +23 -0
  349. package/dist/theme/visitor/locale.js +72 -0
  350. package/dist/theme/visitor/runtime.d.ts +18 -0
  351. package/dist/theme/visitor/runtime.js +19 -0
  352. package/dist/theme/visitor/visitorLocale.d.ts +11 -0
  353. package/dist/theme/visitor/visitorLocale.js +56 -0
  354. package/dist/theme/visitorLocale.d.ts +6 -0
  355. package/dist/theme/visitorLocale.js +39 -0
  356. package/dist/types/index.d.ts +79 -68
  357. package/dist/ui/AntdStyleTransitionFix.d.ts +5 -0
  358. package/dist/ui/AntdStyleTransitionFix.js +16 -0
  359. package/dist/ui/ArchiveEmptyState.d.ts +13 -0
  360. package/dist/ui/ArchiveEmptyState.js +8 -0
  361. package/dist/ui/ArchivePageLayout.d.ts +10 -0
  362. package/dist/ui/ArchivePageLayout.js +8 -0
  363. package/dist/ui/ArticleCard.d.ts +27 -0
  364. package/dist/ui/ArticleCard.js +16 -0
  365. package/dist/ui/ArticleList.d.ts +14 -0
  366. package/dist/ui/ArticleList.js +16 -0
  367. package/dist/ui/BaseGlobalStyles.d.ts +5 -0
  368. package/dist/ui/BaseGlobalStyles.js +18 -0
  369. package/dist/ui/LocaleSwitcher.d.ts +7 -0
  370. package/dist/ui/LocaleSwitcher.js +15 -0
  371. package/dist/ui/NavMenu.d.ts +16 -0
  372. package/dist/ui/NavMenu.js +8 -0
  373. package/dist/ui/NotFoundPanel.d.ts +11 -0
  374. package/dist/ui/NotFoundPanel.js +8 -0
  375. package/dist/ui/PageHeader.d.ts +10 -0
  376. package/dist/ui/PageHeader.js +8 -0
  377. package/dist/ui/SiteBranding.d.ts +10 -0
  378. package/dist/ui/SiteBranding.js +14 -0
  379. package/dist/ui/SiteDocument.d.ts +20 -0
  380. package/dist/ui/SiteDocument.js +13 -0
  381. package/dist/ui/SiteDocumentFallback.d.ts +8 -0
  382. package/dist/ui/SiteDocumentFallback.js +9 -0
  383. package/dist/ui/SiteLogo.d.ts +6 -0
  384. package/dist/ui/SiteLogo.js +16 -0
  385. package/dist/ui/SiteTagline.d.ts +7 -0
  386. package/dist/ui/SiteTagline.js +15 -0
  387. package/dist/ui/TaxonomyList.d.ts +25 -0
  388. package/dist/ui/TaxonomyList.js +30 -0
  389. package/dist/ui/ThemeCssVars.d.ts +2 -0
  390. package/dist/ui/ThemeCssVars.js +85 -0
  391. package/dist/ui/ThemeLayout.d.ts +13 -0
  392. package/dist/ui/ThemeLayout.js +11 -0
  393. package/dist/ui/components/AntdStyleTransitionFix.d.ts +5 -0
  394. package/dist/ui/components/AntdStyleTransitionFix.js +16 -0
  395. package/dist/ui/components/ArchiveEmptyState.d.ts +13 -0
  396. package/dist/ui/components/ArchiveEmptyState.js +8 -0
  397. package/dist/ui/components/ArchivePageLayout.d.ts +10 -0
  398. package/dist/ui/components/ArchivePageLayout.js +8 -0
  399. package/dist/ui/components/ArticleCard.d.ts +27 -0
  400. package/dist/ui/components/ArticleCard.js +16 -0
  401. package/dist/ui/components/ArticleList.d.ts +14 -0
  402. package/dist/ui/components/ArticleList.js +16 -0
  403. package/dist/ui/components/BaseGlobalStyles.d.ts +6 -0
  404. package/dist/ui/components/BaseGlobalStyles.js +18 -0
  405. package/dist/ui/components/LocaleSwitcher.d.ts +10 -0
  406. package/dist/ui/components/LocaleSwitcher.js +11 -0
  407. package/dist/ui/components/NavMenu.d.ts +16 -0
  408. package/dist/ui/components/NavMenu.js +8 -0
  409. package/dist/ui/components/NotFoundPanel.d.ts +11 -0
  410. package/dist/ui/components/NotFoundPanel.js +8 -0
  411. package/dist/ui/components/PageHeader.d.ts +10 -0
  412. package/dist/ui/components/PageHeader.js +8 -0
  413. package/dist/ui/components/RouteProgress.d.ts +9 -0
  414. package/dist/ui/components/RouteProgress.js +40 -0
  415. package/dist/ui/components/SiteAnalytics.d.ts +5 -0
  416. package/dist/ui/components/SiteAnalytics.js +42 -0
  417. package/dist/ui/components/SiteBranding.d.ts +11 -0
  418. package/dist/ui/components/SiteBranding.js +14 -0
  419. package/dist/ui/components/SiteDocument.d.ts +20 -0
  420. package/dist/ui/components/SiteDocument.js +13 -0
  421. package/dist/ui/components/SiteDocumentFallback.d.ts +8 -0
  422. package/dist/ui/components/SiteDocumentFallback.js +9 -0
  423. package/dist/ui/components/SiteLogo.d.ts +9 -0
  424. package/dist/ui/components/SiteLogo.js +23 -0
  425. package/dist/ui/components/SiteSeo.d.ts +13 -0
  426. package/dist/ui/components/SiteSeo.js +19 -0
  427. package/dist/ui/components/SiteTagline.d.ts +8 -0
  428. package/dist/ui/components/SiteTagline.js +15 -0
  429. package/dist/ui/components/TaxonomyList.d.ts +25 -0
  430. package/dist/ui/components/TaxonomyList.js +30 -0
  431. package/dist/ui/components/ThemeCssVars.d.ts +3 -0
  432. package/dist/ui/components/ThemeCssVars.js +85 -0
  433. package/dist/ui/components/ThemeLayout.d.ts +13 -0
  434. package/dist/ui/components/ThemeLayout.js +11 -0
  435. package/dist/ui/components/content/ArticleReader.d.ts +45 -0
  436. package/dist/ui/components/content/ArticleReader.js +23 -0
  437. package/dist/ui/components/content/ArticleToc.d.ts +21 -0
  438. package/dist/ui/components/content/ArticleToc.js +75 -0
  439. package/dist/ui/components/content/HtmlContent.d.ts +16 -0
  440. package/dist/ui/components/content/HtmlContent.js +237 -0
  441. package/dist/ui/components/content/Image.d.ts +9 -0
  442. package/dist/ui/components/content/Image.js +13 -0
  443. package/dist/ui/components/content/ImageViewer.d.ts +8 -0
  444. package/dist/ui/components/content/ImageViewer.js +33 -0
  445. package/dist/ui/components/content/LocaleTime.d.ts +10 -0
  446. package/dist/ui/components/content/LocaleTime.js +63 -0
  447. package/dist/ui/components/content/index.d.ts +14 -0
  448. package/dist/ui/components/content/index.js +18 -0
  449. package/dist/ui/components/toolbar/LocaleToggleButton.d.ts +8 -0
  450. package/dist/ui/components/toolbar/LocaleToggleButton.js +18 -0
  451. package/dist/ui/components/toolbar/ThemeToggleButton.d.ts +7 -0
  452. package/dist/ui/components/toolbar/ThemeToggleButton.js +10 -0
  453. package/dist/ui/components/toolbar/ToolbarIconButton.d.ts +7 -0
  454. package/dist/ui/components/toolbar/ToolbarIconButton.js +22 -0
  455. package/dist/ui/components/toolbar/constants.d.ts +5 -0
  456. package/dist/ui/components/toolbar/constants.js +8 -0
  457. package/dist/ui/components/toolbar/icons.d.ts +17 -0
  458. package/dist/ui/components/toolbar/icons.js +44 -0
  459. package/dist/ui/components/toolbar/index.d.ts +9 -0
  460. package/dist/ui/components/toolbar/index.js +25 -0
  461. package/dist/ui/components/toolbar/locale-label.d.ts +3 -0
  462. package/dist/ui/components/toolbar/locale-label.js +19 -0
  463. package/dist/ui/context/LocaleContext.d.ts +15 -0
  464. package/dist/ui/context/LocaleContext.js +59 -0
  465. package/dist/ui/context/ReactPressProvider.d.ts +4 -0
  466. package/dist/ui/context/ReactPressProvider.js +10 -0
  467. package/dist/ui/context/SiteCatalogContext.d.ts +41 -0
  468. package/dist/ui/context/SiteCatalogContext.js +60 -0
  469. package/dist/ui/context/ThemeRuntimeContext.d.ts +21 -0
  470. package/dist/ui/context/ThemeRuntimeContext.js +59 -0
  471. package/dist/ui/context/index.d.ts +8 -0
  472. package/dist/ui/context/index.js +26 -0
  473. package/dist/ui/context/siteCatalogTypes.d.ts +64 -0
  474. package/dist/ui/context/siteCatalogTypes.js +20 -0
  475. package/dist/ui/context/types.d.ts +34 -0
  476. package/dist/ui/context/types.js +2 -0
  477. package/dist/ui/hooks/index.d.ts +12 -0
  478. package/dist/ui/hooks/index.js +29 -0
  479. package/dist/ui/hooks/useAsyncLoading.d.ts +4 -0
  480. package/dist/ui/hooks/useAsyncLoading.js +31 -0
  481. package/dist/ui/hooks/useForceUpdate.d.ts +2 -0
  482. package/dist/ui/hooks/useForceUpdate.js +11 -0
  483. package/dist/ui/hooks/useNavActive.d.ts +5 -0
  484. package/dist/ui/hooks/useNavActive.js +11 -0
  485. package/dist/ui/hooks/usePagination.d.ts +34 -0
  486. package/dist/ui/hooks/usePagination.js +55 -0
  487. package/dist/ui/hooks/useReportArticleView.d.ts +4 -0
  488. package/dist/ui/hooks/useReportArticleView.js +40 -0
  489. package/dist/ui/hooks/useReportPageView.d.ts +11 -0
  490. package/dist/ui/hooks/useReportPageView.js +28 -0
  491. package/dist/ui/hooks/useRouteParam.d.ts +5 -0
  492. package/dist/ui/hooks/useRouteParam.js +15 -0
  493. package/dist/ui/hooks/useToggle.d.ts +2 -0
  494. package/dist/ui/hooks/useToggle.js +17 -0
  495. package/dist/ui/hooks/useWarningOnExit.d.ts +5 -0
  496. package/dist/ui/hooks/useWarningOnExit.js +59 -0
  497. package/dist/ui/index.d.ts +43 -0
  498. package/dist/ui/index.js +87 -0
  499. package/dist/utils/api-envelope.d.ts +14 -0
  500. package/dist/utils/api-envelope.js +31 -0
  501. package/dist/utils/clipboard.d.ts +2 -0
  502. package/dist/utils/clipboard.js +24 -0
  503. package/dist/utils/cookie.d.ts +2 -0
  504. package/dist/utils/cookie.js +15 -0
  505. package/dist/utils/date.d.ts +4 -0
  506. package/dist/utils/date.js +45 -0
  507. package/dist/utils/email.d.ts +3 -0
  508. package/dist/utils/email.js +9 -0
  509. package/dist/utils/error.d.ts +7 -0
  510. package/dist/utils/error.js +26 -0
  511. package/dist/utils/image.d.ts +7 -0
  512. package/dist/utils/image.js +34 -0
  513. package/dist/utils/index.d.ts +15 -33
  514. package/dist/utils/index.js +37 -57
  515. package/dist/utils/json.d.ts +2 -0
  516. package/dist/utils/json.js +18 -0
  517. package/dist/utils/jsonp.d.ts +8 -0
  518. package/dist/utils/jsonp.js +27 -0
  519. package/dist/utils/object.d.ts +7 -0
  520. package/dist/utils/object.js +63 -0
  521. package/dist/utils/setting.d.ts +12 -0
  522. package/dist/utils/setting.js +13 -0
  523. package/dist/utils/string.d.ts +4 -0
  524. package/dist/utils/string.js +15 -0
  525. package/dist/utils/viewport.d.ts +3 -0
  526. package/dist/utils/viewport.js +14 -0
  527. package/package.json +141 -12
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ /** JSON Schema–driven theme/site configuration (VS Code `contributes.configuration` style). */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,8 @@
1
+ import { type ErrorObject } from 'ajv';
2
+ import type { ThemeConfigurationSchema } from './types';
3
+ export interface ConfigurationValidationResult {
4
+ valid: boolean;
5
+ errors: ErrorObject[] | null;
6
+ message?: string;
7
+ }
8
+ export declare function validateThemeConfiguration(schema: ThemeConfigurationSchema | null | undefined, data: unknown): ConfigurationValidationResult;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.validateThemeConfiguration = validateThemeConfiguration;
7
+ const ajv_1 = __importDefault(require("ajv"));
8
+ const ajv = new ajv_1.default({ allErrors: true, strict: false, coerceTypes: false });
9
+ function validateThemeConfiguration(schema, data) {
10
+ if (!schema) {
11
+ return { valid: true, errors: null };
12
+ }
13
+ const validate = ajv.compile(schema);
14
+ const valid = validate(data) === true;
15
+ if (valid) {
16
+ return { valid: true, errors: null };
17
+ }
18
+ const errors = validate.errors ?? [];
19
+ const message = errors.map((e) => `${e.instancePath || '/'} ${e.message ?? ''}`.trim()).join('; ');
20
+ return { valid: false, errors, message: message || 'Invalid configuration' };
21
+ }
@@ -0,0 +1,9 @@
1
+ export { systemGlobalSettingDefaults } from '../config/global';
2
+ export * from './configuration';
3
+ export { TWENTYTWENTYFIVE_APPEARANCE, TWENTYTWENTYFIVE_APPEARANCE_PANELS, TWENTYTWENTYFIVE_APPEARANCE_SECTIONS, } from './presets/twentytwentyfive-appearance';
4
+ export * from './preview';
5
+ export * from './site-notices';
6
+ export * from './site-settings';
7
+ export * from './theme';
8
+ export * from './theme-admin-locale';
9
+ export { appearanceBackgroundColor, appearanceLinkColor, appearancePrimaryColorForMode, appearanceSecondaryBackgroundColor, buildTwentyTwentyFiveAppearanceCss, } from './twentytwentyfive-vars';
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.buildTwentyTwentyFiveAppearanceCss = exports.appearanceSecondaryBackgroundColor = exports.appearancePrimaryColorForMode = exports.appearanceLinkColor = exports.appearanceBackgroundColor = exports.TWENTYTWENTYFIVE_APPEARANCE_SECTIONS = exports.TWENTYTWENTYFIVE_APPEARANCE_PANELS = exports.TWENTYTWENTYFIVE_APPEARANCE = exports.systemGlobalSettingDefaults = void 0;
18
+ var global_1 = require("../config/global");
19
+ Object.defineProperty(exports, "systemGlobalSettingDefaults", { enumerable: true, get: function () { return global_1.systemGlobalSettingDefaults; } });
20
+ __exportStar(require("./configuration"), exports);
21
+ var twentytwentyfive_appearance_1 = require("./presets/twentytwentyfive-appearance");
22
+ Object.defineProperty(exports, "TWENTYTWENTYFIVE_APPEARANCE", { enumerable: true, get: function () { return twentytwentyfive_appearance_1.TWENTYTWENTYFIVE_APPEARANCE; } });
23
+ Object.defineProperty(exports, "TWENTYTWENTYFIVE_APPEARANCE_PANELS", { enumerable: true, get: function () { return twentytwentyfive_appearance_1.TWENTYTWENTYFIVE_APPEARANCE_PANELS; } });
24
+ Object.defineProperty(exports, "TWENTYTWENTYFIVE_APPEARANCE_SECTIONS", { enumerable: true, get: function () { return twentytwentyfive_appearance_1.TWENTYTWENTYFIVE_APPEARANCE_SECTIONS; } });
25
+ __exportStar(require("./preview"), exports);
26
+ __exportStar(require("./site-notices"), exports);
27
+ __exportStar(require("./site-settings"), exports);
28
+ __exportStar(require("./theme"), exports);
29
+ __exportStar(require("./theme-admin-locale"), exports);
30
+ var twentytwentyfive_vars_1 = require("./twentytwentyfive-vars");
31
+ Object.defineProperty(exports, "appearanceBackgroundColor", { enumerable: true, get: function () { return twentytwentyfive_vars_1.appearanceBackgroundColor; } });
32
+ Object.defineProperty(exports, "appearanceLinkColor", { enumerable: true, get: function () { return twentytwentyfive_vars_1.appearanceLinkColor; } });
33
+ Object.defineProperty(exports, "appearancePrimaryColorForMode", { enumerable: true, get: function () { return twentytwentyfive_vars_1.appearancePrimaryColorForMode; } });
34
+ Object.defineProperty(exports, "appearanceSecondaryBackgroundColor", { enumerable: true, get: function () { return twentytwentyfive_vars_1.appearanceSecondaryBackgroundColor; } });
35
+ Object.defineProperty(exports, "buildTwentyTwentyFiveAppearanceCss", { enumerable: true, get: function () { return twentytwentyfive_vars_1.buildTwentyTwentyFiveAppearanceCss; } });
@@ -0,0 +1,5 @@
1
+ import type { ThemeAppearanceManifest, ThemeManifest } from './theme';
2
+ type RawRecord = Record<string, unknown>;
3
+ export declare function normalizeAppearance(raw: unknown): ThemeAppearanceManifest | undefined;
4
+ export declare function normalizePlatformFields(o: RawRecord): Pick<ThemeManifest, 'requires' | 'supports' | 'templates' | 'options'>;
5
+ export {};
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeAppearance = normalizeAppearance;
4
+ exports.normalizePlatformFields = normalizePlatformFields;
5
+ function asRecord(value) {
6
+ return value && typeof value === 'object' && !Array.isArray(value) ? value : undefined;
7
+ }
8
+ function normalizeSetting(raw) {
9
+ return {
10
+ id: String(raw.id),
11
+ type: raw.type,
12
+ label: String(raw.label),
13
+ default: typeof raw.default === 'string' ? raw.default : undefined,
14
+ description: typeof raw.description === 'string' ? raw.description : undefined,
15
+ choices: Array.isArray(raw.choices)
16
+ ? raw.choices
17
+ : undefined,
18
+ group: typeof raw.group === 'string' ? raw.group : undefined,
19
+ };
20
+ }
21
+ function normalizeGroup(raw) {
22
+ return {
23
+ id: String(raw.id),
24
+ title: String(raw.title),
25
+ description: typeof raw.description === 'string' ? raw.description : undefined,
26
+ };
27
+ }
28
+ function normalizePanel(raw) {
29
+ return {
30
+ id: String(raw.id),
31
+ title: String(raw.title),
32
+ description: typeof raw.description === 'string' ? raw.description : undefined,
33
+ };
34
+ }
35
+ function normalizeSection(raw) {
36
+ return {
37
+ id: String(raw.id),
38
+ title: String(raw.title),
39
+ panel: typeof raw.panel === 'string' ? raw.panel : undefined,
40
+ embed: raw.embed === 'options' ? 'options' : undefined,
41
+ description: typeof raw.description === 'string' ? raw.description : undefined,
42
+ groups: Array.isArray(raw.groups)
43
+ ? raw.groups.map((item) => normalizeGroup(asRecord(item) ?? {}))
44
+ : undefined,
45
+ settings: Array.isArray(raw.settings)
46
+ ? raw.settings.map((item) => normalizeSetting(asRecord(item) ?? {}))
47
+ : undefined,
48
+ };
49
+ }
50
+ function normalizeAppearance(raw) {
51
+ const source = asRecord(raw);
52
+ if (!source)
53
+ return undefined;
54
+ const panels = Array.isArray(source.panels)
55
+ ? source.panels.map((item) => normalizePanel(asRecord(item) ?? {}))
56
+ : undefined;
57
+ const sections = Array.isArray(source.sections)
58
+ ? source.sections.map((item) => normalizeSection(asRecord(item) ?? {}))
59
+ : [];
60
+ if (panels === undefined && sections.length === 0)
61
+ return undefined;
62
+ return { panels, sections };
63
+ }
64
+ function normalizePlatformFields(o) {
65
+ const requires = typeof o.requires === 'string' ? o.requires : undefined;
66
+ const supports = o.supports;
67
+ const templates = o.templates;
68
+ const options = o.options;
69
+ return {
70
+ requires,
71
+ supports: supports && typeof supports === 'object' ? supports : undefined,
72
+ templates: templates && typeof templates === 'object' ? templates : undefined,
73
+ options: options?.type === 'object' ? options : undefined,
74
+ };
75
+ }
@@ -0,0 +1,2 @@
1
+ /** Node-only extension helpers (filesystem, etc.). Do not import from browser bundles. */
2
+ export { readThemeAdminLocaleFile } from './theme-admin-locale.io';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.readThemeAdminLocaleFile = void 0;
4
+ /** Node-only extension helpers (filesystem, etc.). Do not import from browser bundles. */
5
+ var theme_admin_locale_io_1 = require("./theme-admin-locale.io");
6
+ Object.defineProperty(exports, "readThemeAdminLocaleFile", { enumerable: true, get: function () { return theme_admin_locale_io_1.readThemeAdminLocaleFile; } });
@@ -0,0 +1,10 @@
1
+ import type { ThemeAppearancePanel, ThemeAppearanceSection } from '../theme';
2
+ /** Sidebar nav panels for Twenty Twenty-Five appearance editor. */
3
+ export declare const TWENTYTWENTYFIVE_APPEARANCE_PANELS: ThemeAppearancePanel[];
4
+ /** Default appearance sections for Twenty Twenty-Five (also in `themes/.../theme.json`). */
5
+ export declare const TWENTYTWENTYFIVE_APPEARANCE_SECTIONS: ThemeAppearanceSection[];
6
+ /** Full `theme.json` → `appearance` block for Twenty Twenty-Five. */
7
+ export declare const TWENTYTWENTYFIVE_APPEARANCE: {
8
+ panels: ThemeAppearancePanel[];
9
+ sections: ThemeAppearanceSection[];
10
+ };
@@ -0,0 +1,193 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TWENTYTWENTYFIVE_APPEARANCE = exports.TWENTYTWENTYFIVE_APPEARANCE_SECTIONS = exports.TWENTYTWENTYFIVE_APPEARANCE_PANELS = void 0;
4
+ /** Sidebar nav panels for Twenty Twenty-Five appearance editor. */
5
+ exports.TWENTYTWENTYFIVE_APPEARANCE_PANELS = [
6
+ {
7
+ id: 'basic',
8
+ title: '基础配置',
9
+ description: '站点信息与页脚',
10
+ },
11
+ {
12
+ id: 'style',
13
+ title: '样式配置',
14
+ description: '颜色与背景',
15
+ },
16
+ {
17
+ id: 'layout',
18
+ title: '布局配置',
19
+ description: '导航与页面结构',
20
+ },
21
+ ];
22
+ /** Default appearance sections for Twenty Twenty-Five (also in `themes/.../theme.json`). */
23
+ exports.TWENTYTWENTYFIVE_APPEARANCE_SECTIONS = [
24
+ {
25
+ id: 'identity',
26
+ panel: 'basic',
27
+ title: '站点身份',
28
+ settings: [
29
+ {
30
+ id: 'displayTitle',
31
+ type: 'text',
32
+ label: '站点标题',
33
+ description: '留空则继承「设置 → 常规」中的站点标题',
34
+ },
35
+ {
36
+ id: 'displayTagline',
37
+ type: 'text',
38
+ label: '站点副标题',
39
+ description: '留空则继承「设置 → 常规」中的副标题',
40
+ },
41
+ {
42
+ id: 'siteLogo',
43
+ type: 'image',
44
+ label: '站点 Logo',
45
+ description: '留空则继承「设置 → 常规」中的站点 Logo',
46
+ },
47
+ {
48
+ id: 'siteFavicon',
49
+ type: 'image',
50
+ label: '站点图标',
51
+ description: '留空则继承「设置 → 常规」中的站点图标',
52
+ },
53
+ {
54
+ id: 'siteNotice',
55
+ type: 'noticeList',
56
+ label: '站点公告',
57
+ description: '未自定义时继承「设置 → 常规」;可为本主题单独配置多条公告与顺序',
58
+ },
59
+ ],
60
+ },
61
+ {
62
+ id: 'about',
63
+ panel: 'basic',
64
+ title: '关于我们与页脚',
65
+ settings: [
66
+ {
67
+ id: 'systemFooterInfo',
68
+ type: 'textarea',
69
+ label: '页脚说明',
70
+ description: '支持 HTML;仅本主题生效',
71
+ },
72
+ {
73
+ id: 'aboutUsGithubUrl',
74
+ type: 'text',
75
+ label: 'GitHub 链接',
76
+ description: '页头与页脚 GitHub 图标;留空不显示',
77
+ },
78
+ {
79
+ id: 'aboutUsCommentQr',
80
+ type: 'image',
81
+ label: '社群/评论二维码',
82
+ description: '悬停展示的图片地址',
83
+ },
84
+ {
85
+ id: 'aboutUsWechatQr',
86
+ type: 'image',
87
+ label: '微信二维码',
88
+ description: '悬停展示的图片地址',
89
+ },
90
+ ],
91
+ },
92
+ {
93
+ id: 'colors',
94
+ panel: 'style',
95
+ title: '颜色',
96
+ description: '与访客站顶栏「日 / 夜」切换对应,可分别配置浅色与深色模式',
97
+ groups: [
98
+ {
99
+ id: 'light',
100
+ title: '浅色模式',
101
+ description: '访客关闭深色模式时生效',
102
+ },
103
+ {
104
+ id: 'dark',
105
+ title: '深色模式',
106
+ description: '访客开启深色模式时生效',
107
+ },
108
+ ],
109
+ settings: [
110
+ { id: 'primaryColor', group: 'light', type: 'color', label: '主色', default: '#f44336' },
111
+ {
112
+ id: 'backgroundColor',
113
+ group: 'light',
114
+ type: 'color',
115
+ label: '背景色',
116
+ default: '#ffffff',
117
+ description: '页面与内容区背景;设置背景图后主区域会透明以露出图片',
118
+ },
119
+ {
120
+ id: 'secondaryBackgroundColor',
121
+ group: 'light',
122
+ type: 'color',
123
+ label: '次要背景色',
124
+ default: '#f3f5f7',
125
+ description: '卡片间隔、侧栏等次要区域',
126
+ },
127
+ {
128
+ id: 'linkColor',
129
+ group: 'light',
130
+ type: 'color',
131
+ label: '链接色',
132
+ default: '#4299e1',
133
+ description: '正文 Markdown 中的链接颜色',
134
+ },
135
+ {
136
+ id: 'darkPrimaryColor',
137
+ group: 'dark',
138
+ type: 'color',
139
+ label: '主色',
140
+ default: '#f44336',
141
+ },
142
+ {
143
+ id: 'darkBackgroundColor',
144
+ group: 'dark',
145
+ type: 'color',
146
+ label: '背景色',
147
+ default: '#1e2a36',
148
+ description: '页面与主内容区背景',
149
+ },
150
+ {
151
+ id: 'darkSecondaryBackgroundColor',
152
+ group: 'dark',
153
+ type: 'color',
154
+ label: '次要背景色',
155
+ default: '#1a242f',
156
+ description: '卡片、顶栏、侧栏等次要区域',
157
+ },
158
+ {
159
+ id: 'darkLinkColor',
160
+ group: 'dark',
161
+ type: 'color',
162
+ label: '链接色',
163
+ default: '#4299e1',
164
+ description: '正文 Markdown 中的链接颜色',
165
+ },
166
+ ],
167
+ },
168
+ {
169
+ id: 'background',
170
+ panel: 'style',
171
+ title: '背景图片',
172
+ settings: [
173
+ {
174
+ id: 'backgroundImage',
175
+ type: 'image',
176
+ label: '背景图',
177
+ description: '设置后将覆盖纯色背景(宽屏可见);仅本主题生效',
178
+ },
179
+ ],
180
+ },
181
+ {
182
+ id: 'themeConfiguration',
183
+ panel: 'layout',
184
+ title: '顶栏与网址导航',
185
+ embed: 'options',
186
+ description: '固定导航、/nav 卡片与聚合搜索',
187
+ },
188
+ ];
189
+ /** Full `theme.json` → `appearance` block for Twenty Twenty-Five. */
190
+ exports.TWENTYTWENTYFIVE_APPEARANCE = {
191
+ panels: exports.TWENTYTWENTYFIVE_APPEARANCE_PANELS,
192
+ sections: exports.TWENTYTWENTYFIVE_APPEARANCE_SECTIONS,
193
+ };
@@ -0,0 +1,19 @@
1
+ import type { ThemeAppearancePanel, ThemeAppearanceSection } from '../theme';
2
+ /** Sidebar nav panels for Twenty Twenty-Five appearance editor. */
3
+ export declare const TWENTYTWENTYFIVE_APPEARANCE_PANELS: ThemeAppearancePanel[];
4
+ /** Default appearance sections for Twenty Twenty-Five (also in `themes/.../theme.json`). */
5
+ export declare const TWENTYTWENTYFIVE_APPEARANCE_SECTIONS: ThemeAppearanceSection[];
6
+ /** Full `theme.json` → `appearance` block for Twenty Twenty-Five. */
7
+ export declare const TWENTYTWENTYFIVE_APPEARANCE: {
8
+ panels: ThemeAppearancePanel[];
9
+ sections: ThemeAppearanceSection[];
10
+ };
11
+ /** @deprecated Use `TWENTYTWENTYFIVE_APPEARANCE_PANELS` */
12
+ export declare const TWENTYTWENTYFIVE_CUSTOMIZER_GROUPS: ThemeAppearancePanel[];
13
+ /** @deprecated Use `TWENTYTWENTYFIVE_APPEARANCE_SECTIONS` */
14
+ export declare const TWENTYTWENTYFIVE_CUSTOMIZER_SECTIONS: ThemeAppearanceSection[];
15
+ /** @deprecated Use `TWENTYTWENTYFIVE_APPEARANCE` */
16
+ export declare const TWENTYTWENTYFIVE_CUSTOMIZER: {
17
+ panels: ThemeAppearancePanel[];
18
+ sections: ThemeAppearanceSection[];
19
+ };
@@ -0,0 +1,199 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TWENTYTWENTYFIVE_CUSTOMIZER = exports.TWENTYTWENTYFIVE_CUSTOMIZER_SECTIONS = exports.TWENTYTWENTYFIVE_CUSTOMIZER_GROUPS = exports.TWENTYTWENTYFIVE_APPEARANCE = exports.TWENTYTWENTYFIVE_APPEARANCE_SECTIONS = exports.TWENTYTWENTYFIVE_APPEARANCE_PANELS = void 0;
4
+ /** Sidebar nav panels for Twenty Twenty-Five appearance editor. */
5
+ exports.TWENTYTWENTYFIVE_APPEARANCE_PANELS = [
6
+ {
7
+ id: 'basic',
8
+ title: '基础配置',
9
+ description: '站点信息与页脚',
10
+ },
11
+ {
12
+ id: 'style',
13
+ title: '样式配置',
14
+ description: '颜色与背景',
15
+ },
16
+ {
17
+ id: 'layout',
18
+ title: '布局配置',
19
+ description: '导航与页面结构',
20
+ },
21
+ ];
22
+ /** Default appearance sections for Twenty Twenty-Five (also in `themes/.../theme.json`). */
23
+ exports.TWENTYTWENTYFIVE_APPEARANCE_SECTIONS = [
24
+ {
25
+ id: 'identity',
26
+ panel: 'basic',
27
+ title: '站点身份',
28
+ settings: [
29
+ {
30
+ id: 'displayTitle',
31
+ type: 'text',
32
+ label: '站点标题',
33
+ description: '留空则继承「设置 → 常规」中的站点标题',
34
+ },
35
+ {
36
+ id: 'displayTagline',
37
+ type: 'text',
38
+ label: '站点副标题',
39
+ description: '留空则继承「设置 → 常规」中的副标题',
40
+ },
41
+ {
42
+ id: 'siteLogo',
43
+ type: 'image',
44
+ label: '站点 Logo',
45
+ description: '留空则继承「设置 → 常规」中的站点 Logo',
46
+ },
47
+ {
48
+ id: 'siteFavicon',
49
+ type: 'image',
50
+ label: '站点图标',
51
+ description: '留空则继承「设置 → 常规」中的站点图标',
52
+ },
53
+ {
54
+ id: 'siteNotice',
55
+ type: 'noticeList',
56
+ label: '站点公告',
57
+ description: '未自定义时继承「设置 → 常规」;可为本主题单独配置多条公告与顺序',
58
+ },
59
+ ],
60
+ },
61
+ {
62
+ id: 'about',
63
+ panel: 'basic',
64
+ title: '关于我们与页脚',
65
+ settings: [
66
+ {
67
+ id: 'systemFooterInfo',
68
+ type: 'textarea',
69
+ label: '页脚说明',
70
+ description: '支持 HTML;仅本主题生效',
71
+ },
72
+ {
73
+ id: 'aboutUsGithubUrl',
74
+ type: 'text',
75
+ label: 'GitHub 链接',
76
+ description: '页头与页脚 GitHub 图标;留空不显示',
77
+ },
78
+ {
79
+ id: 'aboutUsCommentQr',
80
+ type: 'image',
81
+ label: '社群/评论二维码',
82
+ description: '悬停展示的图片地址',
83
+ },
84
+ {
85
+ id: 'aboutUsWechatQr',
86
+ type: 'image',
87
+ label: '微信二维码',
88
+ description: '悬停展示的图片地址',
89
+ },
90
+ ],
91
+ },
92
+ {
93
+ id: 'colors',
94
+ panel: 'style',
95
+ title: '颜色',
96
+ description: '与访客站顶栏「日 / 夜」切换对应,可分别配置浅色与深色模式',
97
+ groups: [
98
+ {
99
+ id: 'light',
100
+ title: '浅色模式',
101
+ description: '访客关闭深色模式时生效',
102
+ },
103
+ {
104
+ id: 'dark',
105
+ title: '深色模式',
106
+ description: '访客开启深色模式时生效',
107
+ },
108
+ ],
109
+ settings: [
110
+ { id: 'primaryColor', group: 'light', type: 'color', label: '主色', default: '#f44336' },
111
+ {
112
+ id: 'backgroundColor',
113
+ group: 'light',
114
+ type: 'color',
115
+ label: '背景色',
116
+ default: '#ffffff',
117
+ description: '页面与内容区背景;设置背景图后主区域会透明以露出图片',
118
+ },
119
+ {
120
+ id: 'secondaryBackgroundColor',
121
+ group: 'light',
122
+ type: 'color',
123
+ label: '次要背景色',
124
+ default: '#f3f5f7',
125
+ description: '卡片间隔、侧栏等次要区域',
126
+ },
127
+ {
128
+ id: 'linkColor',
129
+ group: 'light',
130
+ type: 'color',
131
+ label: '链接色',
132
+ default: '#4299e1',
133
+ description: '正文 Markdown 中的链接颜色',
134
+ },
135
+ {
136
+ id: 'darkPrimaryColor',
137
+ group: 'dark',
138
+ type: 'color',
139
+ label: '主色',
140
+ default: '#f44336',
141
+ },
142
+ {
143
+ id: 'darkBackgroundColor',
144
+ group: 'dark',
145
+ type: 'color',
146
+ label: '背景色',
147
+ default: '#1e2a36',
148
+ description: '页面与主内容区背景',
149
+ },
150
+ {
151
+ id: 'darkSecondaryBackgroundColor',
152
+ group: 'dark',
153
+ type: 'color',
154
+ label: '次要背景色',
155
+ default: '#1a242f',
156
+ description: '卡片、顶栏、侧栏等次要区域',
157
+ },
158
+ {
159
+ id: 'darkLinkColor',
160
+ group: 'dark',
161
+ type: 'color',
162
+ label: '链接色',
163
+ default: '#4299e1',
164
+ description: '正文 Markdown 中的链接颜色',
165
+ },
166
+ ],
167
+ },
168
+ {
169
+ id: 'background',
170
+ panel: 'style',
171
+ title: '背景图片',
172
+ settings: [
173
+ {
174
+ id: 'backgroundImage',
175
+ type: 'image',
176
+ label: '背景图',
177
+ description: '设置后将覆盖纯色背景(宽屏可见);仅本主题生效',
178
+ },
179
+ ],
180
+ },
181
+ {
182
+ id: 'themeConfiguration',
183
+ panel: 'layout',
184
+ title: '顶栏与网址导航',
185
+ embed: 'options',
186
+ description: '固定导航、/nav 卡片与聚合搜索',
187
+ },
188
+ ];
189
+ /** Full `theme.json` → `appearance` block for Twenty Twenty-Five. */
190
+ exports.TWENTYTWENTYFIVE_APPEARANCE = {
191
+ panels: exports.TWENTYTWENTYFIVE_APPEARANCE_PANELS,
192
+ sections: exports.TWENTYTWENTYFIVE_APPEARANCE_SECTIONS,
193
+ };
194
+ /** @deprecated Use `TWENTYTWENTYFIVE_APPEARANCE_PANELS` */
195
+ exports.TWENTYTWENTYFIVE_CUSTOMIZER_GROUPS = exports.TWENTYTWENTYFIVE_APPEARANCE_PANELS;
196
+ /** @deprecated Use `TWENTYTWENTYFIVE_APPEARANCE_SECTIONS` */
197
+ exports.TWENTYTWENTYFIVE_CUSTOMIZER_SECTIONS = exports.TWENTYTWENTYFIVE_APPEARANCE_SECTIONS;
198
+ /** @deprecated Use `TWENTYTWENTYFIVE_APPEARANCE` */
199
+ exports.TWENTYTWENTYFIVE_CUSTOMIZER = exports.TWENTYTWENTYFIVE_APPEARANCE;
@@ -0,0 +1,46 @@
1
+ import { parsePreviewTokenFromNextCtx, type PreviewDraftPayload } from '../theme/preview-draft';
2
+ import type { ResolvedSiteConfig, ThemeConfigurationSchema } from './configuration/types';
3
+ import { type ThemeMods } from './theme';
4
+ /** Draft payload returned by `GET /extension/themes/preview-draft/:token`. */
5
+ export type PreviewDraftResponse = PreviewDraftPayload;
6
+ export type NextPreviewCtx = Parameters<typeof parsePreviewTokenFromNextCtx>[0];
7
+ export type PreviewDraftFetcher = (token: string) => Promise<PreviewDraftResponse>;
8
+ /** Relative API path for a preview draft token. */
9
+ export declare function previewDraftApiPath(token: string): string;
10
+ /**
11
+ * Normalize API or axios-interceptor output into a preview draft.
12
+ * Accepts either `{ success, data }` envelopes or plain draft objects.
13
+ */
14
+ export declare function normalizePreviewDraftData(raw: unknown): PreviewDraftResponse;
15
+ /** Load short-lived customizer preview payload (public GET by token). */
16
+ export declare function fetchPreviewDraft(token: string, options?: {
17
+ baseURL?: string;
18
+ fetcher?: PreviewDraftFetcher;
19
+ }): Promise<PreviewDraftResponse>;
20
+ export type ResolveThemePreviewContextInput = {
21
+ globalSettingRaw: unknown;
22
+ setting: Record<string, unknown>;
23
+ locale?: string;
24
+ ctx?: NextPreviewCtx;
25
+ manifest?: {
26
+ options?: ThemeConfigurationSchema;
27
+ };
28
+ /** Override draft loader (e.g. theme-local axios with auth interceptors). */
29
+ fetchDraft?: PreviewDraftFetcher;
30
+ apiBaseURL?: string;
31
+ };
32
+ /** Fully resolved visitor runtime after applying optional preview draft. */
33
+ export type ResolvedThemePreviewContext = {
34
+ siteConfig: ResolvedSiteConfig;
35
+ setting: Record<string, unknown>;
36
+ colorPrimary: string;
37
+ effectiveMods: ThemeMods;
38
+ configThemeId: string;
39
+ isPreview: boolean;
40
+ draft: PreviewDraftResponse | null;
41
+ };
42
+ /**
43
+ * Resolve site config, setting overlays, and customizer mods for a Next.js `_app` request.
44
+ * Themes should call this once in `getInitialProps` and pass results into their context/provider.
45
+ */
46
+ export declare function resolveThemePreviewContext(input: ResolveThemePreviewContextInput): Promise<ResolvedThemePreviewContext>;