litecms 0.1.2 → 0.2.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 (40) hide show
  1. package/README.md +746 -7
  2. package/dist/admin/CmsAdminLanding.d.ts +89 -0
  3. package/dist/admin/CmsAdminLanding.d.ts.map +1 -0
  4. package/dist/admin/CmsAdminLayout.d.ts +26 -3
  5. package/dist/admin/CmsAdminLayout.d.ts.map +1 -1
  6. package/dist/admin/CmsAdminPage.d.ts.map +1 -1
  7. package/dist/admin/CmsBlogAdmin.d.ts +37 -0
  8. package/dist/admin/CmsBlogAdmin.d.ts.map +1 -0
  9. package/dist/admin/config.d.ts +32 -0
  10. package/dist/admin/config.d.ts.map +1 -1
  11. package/dist/admin/config.js +16 -0
  12. package/dist/admin/exports.d.ts +5 -2
  13. package/dist/admin/exports.d.ts.map +1 -1
  14. package/dist/admin/exports.js +1467 -30
  15. package/dist/admin/language.d.ts +53 -0
  16. package/dist/admin/language.d.ts.map +1 -0
  17. package/dist/components/CmsAutoForm.d.ts.map +1 -1
  18. package/dist/components/CmsForm.d.ts.map +1 -1
  19. package/dist/components/CmsImageField.d.ts +2 -1
  20. package/dist/components/CmsImageField.d.ts.map +1 -1
  21. package/dist/components/CmsImagePickerModal.d.ts +21 -0
  22. package/dist/components/CmsImagePickerModal.d.ts.map +1 -0
  23. package/dist/components/CmsSimpleForm.d.ts.map +1 -1
  24. package/dist/components/index.d.ts +1 -0
  25. package/dist/components/index.d.ts.map +1 -1
  26. package/dist/components/index.js +51 -190
  27. package/dist/index-c9btr14k.js +4422 -0
  28. package/dist/index-szreq4v9.js +12 -0
  29. package/dist/index-wmd953zf.js +11423 -0
  30. package/dist/index.js +6 -2
  31. package/dist/schema/index.js +2 -0
  32. package/dist/server/index.d.ts +301 -0
  33. package/dist/server/index.d.ts.map +1 -1
  34. package/dist/server/index.js +2585 -1
  35. package/dist/storage/index.js +2 -0
  36. package/package.json +14 -7
  37. package/dist/domain/index.d.ts +0 -1
  38. package/dist/domain/index.d.ts.map +0 -1
  39. package/dist/stores/index.d.ts +0 -1
  40. package/dist/stores/index.d.ts.map +0 -1
@@ -0,0 +1,89 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * Page info for landing page cards
4
+ */
5
+ export type LandingPageInfo = {
6
+ slug: string;
7
+ title: string;
8
+ description?: string;
9
+ group?: string;
10
+ icon?: string;
11
+ };
12
+ /**
13
+ * Module definition for the admin landing page.
14
+ * Use this to add custom modules (like Blog) to the dashboard.
15
+ */
16
+ export type CmsAdminModule = {
17
+ /** Unique module identifier */
18
+ id: string;
19
+ /** Module title (or translation key if using i18n) */
20
+ title: string;
21
+ /** Module description (or translation key) */
22
+ description: string;
23
+ /** Icon element to display */
24
+ icon: React.ReactNode;
25
+ /** Link to the module's admin page */
26
+ href?: string;
27
+ /** Whether the module is disabled/coming soon */
28
+ disabled?: boolean;
29
+ /** Badge text (e.g., "Coming soon") */
30
+ badge?: string;
31
+ };
32
+ /**
33
+ * Props for the admin landing page
34
+ */
35
+ export type CmsAdminLandingProps = {
36
+ /** Admin panel title */
37
+ adminTitle?: string;
38
+ /** Site name */
39
+ siteName?: string;
40
+ /** Base path for admin routes */
41
+ basePath?: string;
42
+ /** Pages to display (used for Website Content module) */
43
+ pages: LandingPageInfo[];
44
+ /**
45
+ * Additional modules to display on the landing page.
46
+ * By default, only "Website Content" is shown.
47
+ * Pass additional modules (e.g., Blog) to extend the dashboard.
48
+ */
49
+ modules?: CmsAdminModule[];
50
+ };
51
+ /**
52
+ * Pre-built icon components for common modules.
53
+ * Export these so apps can use them when defining custom modules.
54
+ */
55
+ export declare const CmsModuleIcons: {
56
+ pages: import("react/jsx-runtime").JSX.Element;
57
+ blog: import("react/jsx-runtime").JSX.Element;
58
+ email: import("react/jsx-runtime").JSX.Element;
59
+ analytics: import("react/jsx-runtime").JSX.Element;
60
+ };
61
+ /**
62
+ * Admin landing page / dashboard component.
63
+ * Displays module cards for different admin sections.
64
+ *
65
+ * By default, only the "Website Content" module is shown.
66
+ * Pass additional modules via the `modules` prop to extend the dashboard.
67
+ *
68
+ * @example
69
+ * ```tsx
70
+ * // Default: only Website Content
71
+ * <CmsAdminLanding {...extractLandingProps(cmsConfig)} />
72
+ *
73
+ * // With custom modules (e.g., Blog)
74
+ * <CmsAdminLanding
75
+ * {...extractLandingProps(cmsConfig)}
76
+ * modules={[
77
+ * {
78
+ * id: 'blog',
79
+ * title: 'Blog',
80
+ * description: 'Write and manage blog posts',
81
+ * icon: CmsModuleIcons.blog,
82
+ * href: '/admin/blog',
83
+ * },
84
+ * ]}
85
+ * />
86
+ * ```
87
+ */
88
+ export declare function CmsAdminLanding({ basePath, pages, modules, }: CmsAdminLandingProps): import("react/jsx-runtime").JSX.Element;
89
+ //# sourceMappingURL=CmsAdminLanding.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CmsAdminLanding.d.ts","sourceRoot":"","sources":["../../src/admin/CmsAdminLanding.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IACzB,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,sDAAsD;IACtD,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,sCAAsC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAC/B,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;CAC9B,CAAC;AAiCF;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;CA6D1B,CAAC;AAiGF;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,eAAe,CAAC,EAC5B,QAAmB,EACnB,KAAK,EACL,OAAY,GACf,EAAE,oBAAoB,2CAmEtB"}
@@ -1,4 +1,19 @@
1
+ import * as React from 'react';
1
2
  import type { NavPageInfo } from './index';
3
+ /**
4
+ * Module definition for sidebar navigation.
5
+ * Compatible with CmsAdminModule from CmsAdminLanding.
6
+ */
7
+ export type CmsLayoutModule = {
8
+ /** Unique module identifier */
9
+ id: string;
10
+ /** Module title */
11
+ title: string;
12
+ /** Link to the module's admin page */
13
+ href: string;
14
+ /** Icon element to display */
15
+ icon?: React.ReactNode;
16
+ };
2
17
  /**
3
18
  * Serializable layout props
4
19
  */
@@ -11,17 +26,25 @@ export type CmsAdminLayoutProps = {
11
26
  basePath?: string;
12
27
  /** Link to public site */
13
28
  publicSiteUrl?: string;
14
- /** Navigation pages (serializable) */
15
- pages: NavPageInfo[];
29
+ /**
30
+ * Top-level modules for navigation.
31
+ * If provided, these are shown as the main nav items.
32
+ * If not provided, falls back to showing pages directly.
33
+ */
34
+ modules?: CmsLayoutModule[];
35
+ /** Navigation pages (serializable). Shown as sub-items under the current module. */
36
+ pages?: NavPageInfo[];
16
37
  /** Current page slug. Auto-detected if not provided. */
17
38
  currentSlug?: string;
18
39
  /** Logout handler */
19
40
  onLogout?: () => void;
41
+ /** API endpoint for language preference (default: /api/admin/language) */
42
+ languageEndpoint?: string;
20
43
  /** Child content */
21
44
  children?: any;
22
45
  };
23
46
  /**
24
47
  * General admin layout with navigation and content.
25
48
  */
26
- export declare function CmsAdminLayout({ adminTitle, siteName, basePath, publicSiteUrl, pages, currentSlug: currentSlugProp, onLogout, children, }: CmsAdminLayoutProps): import("react/jsx-runtime").JSX.Element;
49
+ export declare function CmsAdminLayout({ languageEndpoint, ...props }: CmsAdminLayoutProps): import("react/jsx-runtime").JSX.Element;
27
50
  //# sourceMappingURL=CmsAdminLayout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CmsAdminLayout.d.ts","sourceRoot":"","sources":["../../src/admin/CmsAdminLayout.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,SAAS,CAAC;AAMtD;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAC9B,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sCAAsC;IACtC,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,oBAAoB;IAEpB,QAAQ,CAAC,EAAE,GAAG,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAC3B,UAAsB,EACtB,QAAQ,EACR,QAAmB,EACnB,aAAa,EACb,KAAK,EACL,WAAW,EAAE,eAAe,EAC5B,QAAQ,EACR,QAAQ,GACX,EAAE,mBAAmB,2CAyGrB"}
1
+ {"version":3,"file":"CmsAdminLayout.d.ts","sourceRoot":"","sources":["../../src/admin/CmsAdminLayout.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,SAAS,CAAC;AAWtD;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC1B,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAC9B,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,oFAAoF;IACpF,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IACtB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB;IAEpB,QAAQ,CAAC,EAAE,GAAG,CAAC;CAClB,CAAC;AA+PF;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAC3B,gBAAgB,EAChB,GAAG,KAAK,EACX,EAAE,mBAAmB,2CAMrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"CmsAdminPage.d.ts","sourceRoot":"","sources":["../../src/admin/CmsAdminPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAG3C,OAAO,EAEH,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACzB,MAAM,6BAA6B,CAAC;AAErC;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC5B,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,iCAAiC;IAEjC,MAAM,EAAE,CACJ,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,EAC3B,QAAQ,EAAE,QAAQ,KACjB,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,yBAAyB;IACzB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,6BAA6B;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC/B,CAAC;AAEF;;GAEG;AACH,wBAAgB,YAAY,CAAC,EACzB,KAAK,EACL,WAAW,EACX,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,cAAc,EACd,UAAU,EACV,OAAO,GACV,EAAE,iBAAiB,2CAgCnB"}
1
+ {"version":3,"file":"CmsAdminPage.d.ts","sourceRoot":"","sources":["../../src/admin/CmsAdminPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAI3C,OAAO,EAEH,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACzB,MAAM,6BAA6B,CAAC;AAErC;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC5B,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,iCAAiC;IAEjC,MAAM,EAAE,CACJ,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,EAC3B,QAAQ,EAAE,QAAQ,KACjB,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,yBAAyB;IACzB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,6BAA6B;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC/B,CAAC;AAEF;;GAEG;AACH,wBAAgB,YAAY,CAAC,EACzB,KAAK,EACL,WAAW,EACX,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,cAAc,EACd,UAAU,EACV,OAAO,GACV,EAAE,iBAAiB,2CA6BnB"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Blog post data structure
3
+ */
4
+ export type BlogPost = {
5
+ id: string;
6
+ slug: string;
7
+ title: string;
8
+ excerpt?: string;
9
+ coverImage?: string;
10
+ content: string;
11
+ tags: string[];
12
+ authorName: string;
13
+ status: 'draft' | 'published';
14
+ publishedAt?: string;
15
+ createdAt: string;
16
+ updatedAt: string;
17
+ };
18
+ /**
19
+ * Props for CmsBlogAdmin component
20
+ */
21
+ export type CmsBlogAdminProps = {
22
+ /** API endpoint for listing/creating posts (default: /api/admin/blog/posts) */
23
+ postsEndpoint?: string;
24
+ /** Default author name for new posts */
25
+ defaultAuthorName?: string;
26
+ /** Storage config for image uploads */
27
+ storage?: {
28
+ uploadEndpoint: string;
29
+ listEndpoint?: string;
30
+ };
31
+ };
32
+ /**
33
+ * Blog admin component with list/detail view pattern.
34
+ * Shows post list first, then editor when a post is selected.
35
+ */
36
+ export declare function CmsBlogAdmin({ postsEndpoint, defaultAuthorName, storage, }: CmsBlogAdminProps): import("react/jsx-runtime").JSX.Element;
37
+ //# sourceMappingURL=CmsBlogAdmin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CmsBlogAdmin.d.ts","sourceRoot":"","sources":["../../src/admin/CmsBlogAdmin.tsx"],"names":[],"mappings":"AAYA;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,GAAG,WAAW,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC5B,+EAA+E;IAC/E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uCAAuC;IACvC,OAAO,CAAC,EAAE;QACN,cAAc,EAAE,MAAM,CAAC;QACvB,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACL,CAAC;AAkiCF;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EACzB,aAAuC,EACvC,iBAA2B,EAC3B,OAAO,GACV,EAAE,iBAAiB,2CA0MnB"}
@@ -1,6 +1,7 @@
1
1
  import { type FieldInfo } from '../schema';
2
2
  import type { ActionState } from '../server';
3
3
  import type { CmsAdminLayoutProps } from './CmsAdminLayout';
4
+ import type { CmsAdminLandingProps } from './CmsAdminLanding';
4
5
  import type { ImageUploadConfig } from '../index';
5
6
  export { createCmsConfig, getCmsConfig, getPageBySlug, getNavPages, definePage, type CmsConfig, type CmsPageConfig, type TypedCmsPageConfig, } from './index';
6
7
  export type { FieldInfo } from '../schema';
@@ -80,4 +81,35 @@ export declare function extractLayoutProps(config: {
80
81
  icon?: string;
81
82
  }>;
82
83
  }): LayoutProps;
84
+ /**
85
+ * Serializable props for CmsAdminLanding
86
+ */
87
+ export type LandingProps = CmsAdminLandingProps;
88
+ /**
89
+ * Extract serializable props for the admin landing page.
90
+ * Use this to pass only serializable data to CmsAdminLanding.
91
+ *
92
+ * @example
93
+ * ```tsx
94
+ * import { extractLandingProps } from 'litecms/admin/config';
95
+ * import { CmsAdminLanding } from 'litecms/admin';
96
+ * import { cmsConfig } from '@/cms/config';
97
+ *
98
+ * export default function AdminIndexPage() {
99
+ * return <CmsAdminLanding {...extractLandingProps(cmsConfig)} />;
100
+ * }
101
+ * ```
102
+ */
103
+ export declare function extractLandingProps(config: {
104
+ adminTitle?: string;
105
+ siteName?: string;
106
+ basePath?: string;
107
+ pages: Array<{
108
+ slug: string;
109
+ title: string;
110
+ description?: string;
111
+ group?: string;
112
+ icon?: string;
113
+ }>;
114
+ }): LandingProps;
83
115
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/admin/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,EACH,eAAe,EACf,YAAY,EACZ,aAAa,EACb,WAAW,EACX,UAAU,EACV,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,kBAAkB,GAC1B,MAAM,SAAS,CAAC;AAEjB,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEhC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACvF,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC/B,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,gBAAgB,CAClC,MAAM,EAAE;IACJ,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAC3I,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC/B,EACD,IAAI,EAAE,MAAM,GACb,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAuBhC;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,EAAE,UAAU,GAAG,aAAa,CAAC,CAAC;AAEhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAC9B,MAAM,EAAE;IACJ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChF,GACF,WAAW,CAab"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/admin/config.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import {
8
8
  getNavPages,
9
9
  getPageBySlug
10
10
  } from "../index-8zcd33mx.js";
11
+ import"../index-szreq4v9.js";
11
12
 
12
13
  // src/admin/config.ts
13
14
  async function extractPageProps(config, slug) {
@@ -42,12 +43,27 @@ function extractLayoutProps(config) {
42
43
  }))
43
44
  };
44
45
  }
46
+ function extractLandingProps(config) {
47
+ return {
48
+ adminTitle: config.adminTitle,
49
+ siteName: config.siteName,
50
+ basePath: config.basePath,
51
+ pages: config.pages.map((p) => ({
52
+ slug: p.slug,
53
+ title: p.title,
54
+ description: p.description,
55
+ group: p.group,
56
+ icon: p.icon
57
+ }))
58
+ };
59
+ }
45
60
  export {
46
61
  getPageBySlug,
47
62
  getNavPages,
48
63
  getCmsConfig,
49
64
  extractPageProps,
50
65
  extractLayoutProps,
66
+ extractLandingProps,
51
67
  definePage,
52
68
  createCmsConfig
53
69
  };
@@ -1,7 +1,10 @@
1
- export { CmsAdminLayout, type CmsAdminLayoutProps, } from './CmsAdminLayout';
1
+ export { CmsAdminLayout, type CmsAdminLayoutProps, type CmsLayoutModule, } from './CmsAdminLayout';
2
2
  export { CmsAdminPage, type CmsAdminPageProps, } from './CmsAdminPage';
3
+ export { CmsAdminLanding, CmsModuleIcons, type CmsAdminLandingProps, type CmsAdminModule, type LandingPageInfo, } from './CmsAdminLanding';
4
+ export { CmsBlogAdmin, type CmsBlogAdminProps, type BlogPost, } from './CmsBlogAdmin';
3
5
  export { createCmsConfig, getCmsConfig, getPageBySlug, getNavPages, definePage, type CmsConfig, type CmsPageConfig, type TypedCmsPageConfig, } from './index';
4
- export { NavPageInfo, PageGroup } from './index';
6
+ export type { NavPageInfo, PageGroup } from './index';
5
7
  export { type StorageConfig, } from '../storage';
6
8
  export { type ImageUploadConfig, } from '../components';
9
+ export { CmsLanguageProvider, CmsLanguageSelector, useCmsLanguage, useCmsLanguageOptional, detectBrowserLanguage, translate, type CmsLanguage, type CmsLanguageProviderProps, } from './language';
7
10
  //# sourceMappingURL=exports.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"exports.d.ts","sourceRoot":"","sources":["../../src/admin/exports.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,cAAc,EACd,KAAK,mBAAmB,GAC3B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACH,YAAY,EACZ,KAAK,iBAAiB,GACzB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACH,eAAe,EACf,YAAY,EACZ,aAAa,EACb,WAAW,EACX,UAAU,EACV,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,kBAAkB,GAC1B,MAAM,SAAS,CAAC;AAEjB,OAAO,EACH,WAAW,EACX,SAAS,EACZ,MAAM,SAAS,CAAC;AAEjB,OAAO,EACH,KAAK,aAAa,GACrB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACH,KAAK,iBAAiB,GACzB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"exports.d.ts","sourceRoot":"","sources":["../../src/admin/exports.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,eAAe,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACH,YAAY,EACZ,KAAK,iBAAiB,GACzB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACH,eAAe,EACf,cAAc,EACd,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,eAAe,GACvB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACH,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,QAAQ,GAChB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACH,eAAe,EACf,YAAY,EACZ,aAAa,EACb,WAAW,EACX,UAAU,EACV,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,kBAAkB,GAC1B,MAAM,SAAS,CAAC;AAEjB,YAAY,EACR,WAAW,EACX,SAAS,EACZ,MAAM,SAAS,CAAC;AAEjB,OAAO,EACH,KAAK,aAAa,GACrB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACH,KAAK,iBAAiB,GACzB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACH,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,SAAS,EACT,KAAK,WAAW,EAChB,KAAK,wBAAwB,GAChC,MAAM,YAAY,CAAC"}