@vigilkids/cms-nuxt 0.2.3 → 0.4.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 (76) hide show
  1. package/CHANGELOG.md +99 -0
  2. package/README.md +239 -22
  3. package/dist/module.d.mts +37 -2
  4. package/dist/module.d.ts +5 -44
  5. package/dist/module.d.ts.map +1 -0
  6. package/dist/module.json +1 -1
  7. package/dist/module.mjs +91 -5
  8. package/dist/runtime/composables/useArticle.d.ts +16 -0
  9. package/dist/runtime/composables/useArticle.d.ts.map +1 -0
  10. package/dist/runtime/composables/useArticle.js +1 -25
  11. package/dist/runtime/composables/useArticleList.d.ts +11 -0
  12. package/dist/runtime/composables/useArticleList.d.ts.map +1 -0
  13. package/dist/runtime/composables/useAuthor.d.ts +10 -0
  14. package/dist/runtime/composables/useAuthor.d.ts.map +1 -0
  15. package/dist/runtime/composables/useBlogSeo.d.ts +9 -0
  16. package/dist/runtime/composables/useBlogSeo.d.ts.map +1 -0
  17. package/dist/runtime/composables/useCategories.d.ts +10 -0
  18. package/dist/runtime/composables/useCategories.d.ts.map +1 -0
  19. package/dist/runtime/composables/useCmsArticleCollection.d.ts +14 -0
  20. package/dist/runtime/composables/useCmsArticleCollection.d.ts.map +1 -0
  21. package/dist/runtime/composables/useCmsArticleCollection.js +16 -0
  22. package/dist/runtime/composables/useCmsCategories.d.ts +78 -0
  23. package/dist/runtime/composables/useCmsCategories.d.ts.map +1 -0
  24. package/dist/runtime/composables/useCmsCategories.js +60 -0
  25. package/dist/runtime/composables/useCmsClient.d.ts +4 -0
  26. package/dist/runtime/composables/useCmsClient.d.ts.map +1 -0
  27. package/dist/runtime/composables/useCmsFetch.d.ts +19 -0
  28. package/dist/runtime/composables/useCmsFetch.d.ts.map +1 -0
  29. package/dist/runtime/composables/useCmsFetch.js +20 -0
  30. package/dist/runtime/composables/useCmsPreview.d.ts +16 -0
  31. package/dist/runtime/composables/useCmsPreview.d.ts.map +1 -0
  32. package/dist/runtime/composables/useCmsRoutes.d.ts +7 -0
  33. package/dist/runtime/composables/useCmsRoutes.d.ts.map +1 -0
  34. package/dist/runtime/composables/useCmsRoutes.js +10 -0
  35. package/dist/runtime/composables/useHreflangLinks.d.ts +34 -0
  36. package/dist/runtime/composables/useHreflangLinks.d.ts.map +1 -0
  37. package/dist/runtime/composables/useHreflangLinks.js +31 -0
  38. package/dist/runtime/plugins/preview-init.client.d.ts +4 -0
  39. package/dist/runtime/plugins/preview-init.client.d.ts.map +1 -0
  40. package/dist/runtime/server/api/_revalidate.post.d.ts +9 -0
  41. package/dist/runtime/server/api/_revalidate.post.d.ts.map +1 -0
  42. package/dist/runtime/server/api/_revalidate.post.js +30 -10
  43. package/dist/runtime/server/api/articles.get.d.ts +4 -0
  44. package/dist/runtime/server/api/articles.get.d.ts.map +1 -0
  45. package/dist/runtime/server/api/articles.get.js +92 -0
  46. package/dist/runtime/server/api/preview.get.d.ts +4 -0
  47. package/dist/runtime/server/api/preview.get.d.ts.map +1 -0
  48. package/dist/runtime/server/api/preview.get.js +47 -12
  49. package/dist/runtime/server/api/sitemap-urls.get.d.ts +16 -0
  50. package/dist/runtime/server/api/sitemap-urls.get.d.ts.map +1 -0
  51. package/dist/runtime/server/api/sitemap-urls.get.js +20 -0
  52. package/dist/runtime/server/middleware/preview-context.d.ts +14 -0
  53. package/dist/runtime/server/middleware/preview-context.d.ts.map +1 -0
  54. package/dist/runtime/server/middleware/redirects.d.ts +4 -0
  55. package/dist/runtime/server/middleware/redirects.d.ts.map +1 -0
  56. package/dist/runtime/server/middleware/redirects.js +27 -10
  57. package/dist/runtime/server/routes/cms-proxy.d.ts +3 -0
  58. package/dist/runtime/server/routes/cms-proxy.d.ts.map +1 -0
  59. package/dist/runtime/server/routes/cms-proxy.js +55 -0
  60. package/dist/runtime/server/utils/cms-client.d.ts +4 -0
  61. package/dist/runtime/server/utils/cms-client.d.ts.map +1 -0
  62. package/dist/runtime/server/utils/cms-client.js +14 -7
  63. package/dist/runtime/sitemap/provider.d.ts +17 -0
  64. package/dist/runtime/sitemap/provider.d.ts.map +1 -0
  65. package/dist/runtime/sitemap/provider.js +9 -11
  66. package/dist/runtime/utils/list.d.ts +2 -0
  67. package/dist/runtime/utils/list.d.ts.map +1 -0
  68. package/dist/runtime/utils/routes.d.ts +19 -0
  69. package/dist/runtime/utils/routes.d.ts.map +1 -0
  70. package/dist/runtime/utils/routes.js +119 -0
  71. package/dist/runtime/utils/sitemap.d.ts +20 -0
  72. package/dist/runtime/utils/sitemap.d.ts.map +1 -0
  73. package/dist/runtime/utils/sitemap.js +44 -0
  74. package/dist/types.d.ts +76 -7
  75. package/dist/types.d.ts.map +1 -0
  76. package/package.json +7 -6
package/dist/types.d.ts CHANGED
@@ -1,7 +1,76 @@
1
- import type { NuxtModule } from '@nuxt/schema'
2
-
3
- import type { default as Module } from './module'
4
-
5
- export type ModuleOptions = typeof Module extends NuxtModule<infer O> ? Partial<O> : Record<string, any>
6
-
7
- export { default } from './module'
1
+ /** CMS 资源路由参数 */
2
+ export type CmsRouteParams = Record<string, string | number | boolean | null | undefined>;
3
+ /** CMS 资源路由模式 */
4
+ export interface CmsRouteResources {
5
+ index?: string;
6
+ category?: string;
7
+ article?: string;
8
+ author?: string;
9
+ [resource: string]: string | undefined;
10
+ }
11
+ /** CMS 语言路径策略 */
12
+ export interface CmsRouteLocalePolicy {
13
+ defaultLocale?: string;
14
+ prefixes?: Record<string, string>;
15
+ includeDefaultLocale?: boolean;
16
+ }
17
+ /** CMS 资源路由策略 */
18
+ export interface CmsRoutePolicy {
19
+ /** 站点公开 URL 模式 */
20
+ resources?: CmsRouteResources;
21
+ /** CMS API 返回的资源 URL 模式,用于 preview/sitemap 输入解析 */
22
+ sourceResources?: CmsRouteResources;
23
+ /** 语言路径策略 */
24
+ locale?: CmsRouteLocalePolicy;
25
+ }
26
+ /** CMS Nuxt Module 配置 */
27
+ export interface CmsNuxtModuleOptions {
28
+ /** CMS API 基础 URL */
29
+ apiUrl: string;
30
+ /** 产品编码 */
31
+ productCode: string;
32
+ /** 默认语言 */
33
+ defaultLocale?: string;
34
+ /** Webhook HMAC-SHA256 密钥(服务端专用) */
35
+ webhookSecret: string;
36
+ /** 预览模式配置 */
37
+ preview?: {
38
+ enabled?: boolean;
39
+ path?: string;
40
+ cookieName?: string;
41
+ cookieMaxAge?: number;
42
+ };
43
+ /** CMS 资源路由策略 */
44
+ routes?: CmsRoutePolicy;
45
+ /** 内容 API 集成 */
46
+ content?: {
47
+ articleCollectionPath?: string;
48
+ cmsProxyPath?: string;
49
+ };
50
+ /** 分类预加载配置 */
51
+ categories?: {
52
+ preload?: boolean;
53
+ locales?: string[];
54
+ };
55
+ /** ISR 重验证配置 */
56
+ revalidate?: {
57
+ enabled?: boolean;
58
+ path?: string;
59
+ };
60
+ /** 重定向中间件配置 */
61
+ redirects?: {
62
+ enabled?: boolean;
63
+ cacheTtl?: number;
64
+ };
65
+ /** Sitemap 集成 */
66
+ sitemap?: {
67
+ enabled?: boolean;
68
+ locales?: string[];
69
+ sourcePath?: string;
70
+ };
71
+ /** 语言代码映射 (前端 locale → CMS API locale) */
72
+ localeMap?: Record<string, string>;
73
+ /** URL 路径前缀映射 (CMS locale → URL prefix),默认语言无需配置 */
74
+ localePrefixes?: Record<string, string>;
75
+ }
76
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;AAEzF,iBAAiB;AACjB,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CACvC;AAED,iBAAiB;AACjB,MAAM,WAAW,oBAAoB;IACnC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC/B;AAED,iBAAiB;AACjB,MAAM,WAAW,cAAc;IAC7B,kBAAkB;IAClB,SAAS,CAAC,EAAE,iBAAiB,CAAA;IAC7B,mDAAmD;IACnD,eAAe,CAAC,EAAE,iBAAiB,CAAA;IACnC,aAAa;IACb,MAAM,CAAC,EAAE,oBAAoB,CAAA;CAC9B;AAED,yBAAyB;AACzB,MAAM,WAAW,oBAAoB;IACnC,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,WAAW;IACX,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW;IACX,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,oCAAoC;IACpC,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa;IACb,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,OAAO,CAAA;QACjB,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,CAAA;IACD,iBAAiB;IACjB,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,gBAAgB;IAChB,OAAO,CAAC,EAAE;QACR,qBAAqB,CAAC,EAAE,MAAM,CAAA;QAC9B,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,CAAA;IACD,cAAc;IACd,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,OAAO,CAAA;QACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;KACnB,CAAA;IACD,gBAAgB;IAChB,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,OAAO,CAAA;QACjB,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,eAAe;IACf,SAAS,CAAC,EAAE;QACV,OAAO,CAAC,EAAE,OAAO,CAAA;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;IACD,iBAAiB;IACjB,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,OAAO,CAAA;QACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;QAClB,UAAU,CAAC,EAAE,MAAM,CAAA;KACpB,CAAA;IACD,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAClC,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACxC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vigilkids/cms-nuxt",
3
- "version": "0.2.3",
3
+ "version": "0.4.0",
4
4
  "description": "Nuxt 3 module for OnEx CMS — composables, server routes, middleware, sitemap",
5
5
  "type": "module",
6
6
  "main": "./dist/module.mjs",
@@ -12,12 +12,13 @@
12
12
  }
13
13
  },
14
14
  "files": [
15
- "dist"
15
+ "dist",
16
+ "CHANGELOG.md"
16
17
  ],
17
18
  "sideEffects": false,
18
19
  "scripts": {
19
- "build": "nuxt-module-build build",
20
- "prepack": "nuxt-module-build build",
20
+ "build": "nuxt-module-build build && tsc --emitDeclarationOnly --declaration --outDir dist",
21
+ "prepack": "pnpm build",
21
22
  "lint": "eslint .",
22
23
  "lint:fix": "eslint . --fix",
23
24
  "format": "prettier --write src/"
@@ -27,7 +28,7 @@
27
28
  },
28
29
  "repository": {
29
30
  "type": "git",
30
- "url": "git+https://github.com/1yhy/onex.git",
31
+ "url": "git+https://github.com/vigikids/onex.git",
31
32
  "directory": "packages/cms-nuxt"
32
33
  },
33
34
  "devDependencies": {
@@ -43,7 +44,7 @@
43
44
  "vue": "^3.4.0"
44
45
  },
45
46
  "peerDependencies": {
46
- "@vigilkids/cms-client": "^0.1.4",
47
+ "@vigilkids/cms-client": "^0.2.0",
47
48
  "nuxt": ">=3.15.0"
48
49
  },
49
50
  "peerDependenciesMeta": {