@actuate-media/cms-core 0.5.0 → 0.9.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.
- package/dist/api/handlers.d.ts.map +1 -1
- package/dist/api/handlers.js +797 -0
- package/dist/api/handlers.js.map +1 -1
- package/dist/auth/index.d.ts +2 -0
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +1 -0
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/reset-email.d.ts +10 -0
- package/dist/auth/reset-email.d.ts.map +1 -0
- package/dist/auth/reset-email.js +30 -0
- package/dist/auth/reset-email.js.map +1 -0
- package/dist/auth/reset.d.ts +35 -0
- package/dist/auth/reset.d.ts.map +1 -0
- package/dist/auth/reset.js +83 -0
- package/dist/auth/reset.js.map +1 -0
- package/dist/config/types.d.ts +3 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +0 -1
- package/dist/config/types.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/page-builder/__tests__/a11y-fix.test.d.ts +2 -0
- package/dist/page-builder/__tests__/a11y-fix.test.d.ts.map +1 -0
- package/dist/page-builder/__tests__/a11y-fix.test.js +246 -0
- package/dist/page-builder/__tests__/a11y-fix.test.js.map +1 -0
- package/dist/page-builder/__tests__/blocks.test.d.ts +2 -0
- package/dist/page-builder/__tests__/blocks.test.d.ts.map +1 -0
- package/dist/page-builder/__tests__/blocks.test.js +87 -0
- package/dist/page-builder/__tests__/blocks.test.js.map +1 -0
- package/dist/page-builder/__tests__/design-scorer.test.d.ts +2 -0
- package/dist/page-builder/__tests__/design-scorer.test.d.ts.map +1 -0
- package/dist/page-builder/__tests__/design-scorer.test.js +268 -0
- package/dist/page-builder/__tests__/design-scorer.test.js.map +1 -0
- package/dist/page-builder/__tests__/schema.test.d.ts +2 -0
- package/dist/page-builder/__tests__/schema.test.d.ts.map +1 -0
- package/dist/page-builder/__tests__/schema.test.js +191 -0
- package/dist/page-builder/__tests__/schema.test.js.map +1 -0
- package/dist/page-builder/__tests__/seo-analyzer.test.d.ts +2 -0
- package/dist/page-builder/__tests__/seo-analyzer.test.d.ts.map +1 -0
- package/dist/page-builder/__tests__/seo-analyzer.test.js +332 -0
- package/dist/page-builder/__tests__/seo-analyzer.test.js.map +1 -0
- package/dist/page-builder/__tests__/tree.test.d.ts +2 -0
- package/dist/page-builder/__tests__/tree.test.d.ts.map +1 -0
- package/dist/page-builder/__tests__/tree.test.js +257 -0
- package/dist/page-builder/__tests__/tree.test.js.map +1 -0
- package/dist/page-builder/a11y-fix.d.ts +20 -0
- package/dist/page-builder/a11y-fix.d.ts.map +1 -0
- package/dist/page-builder/a11y-fix.js +182 -0
- package/dist/page-builder/a11y-fix.js.map +1 -0
- package/dist/page-builder/ai-pipeline.d.ts +43 -0
- package/dist/page-builder/ai-pipeline.d.ts.map +1 -0
- package/dist/page-builder/ai-pipeline.js +167 -0
- package/dist/page-builder/ai-pipeline.js.map +1 -0
- package/dist/page-builder/blocks.d.ts +10 -0
- package/dist/page-builder/blocks.d.ts.map +1 -0
- package/dist/page-builder/blocks.js +252 -0
- package/dist/page-builder/blocks.js.map +1 -0
- package/dist/page-builder/design-scorer.d.ts +27 -0
- package/dist/page-builder/design-scorer.d.ts.map +1 -0
- package/dist/page-builder/design-scorer.js +404 -0
- package/dist/page-builder/design-scorer.js.map +1 -0
- package/dist/page-builder/index.d.ts +18 -0
- package/dist/page-builder/index.d.ts.map +1 -0
- package/dist/page-builder/index.js +20 -0
- package/dist/page-builder/index.js.map +1 -0
- package/dist/page-builder/schema.d.ts +107 -0
- package/dist/page-builder/schema.d.ts.map +1 -0
- package/dist/page-builder/schema.js +90 -0
- package/dist/page-builder/schema.js.map +1 -0
- package/dist/page-builder/seo-analyzer.d.ts +61 -0
- package/dist/page-builder/seo-analyzer.d.ts.map +1 -0
- package/dist/page-builder/seo-analyzer.js +582 -0
- package/dist/page-builder/seo-analyzer.js.map +1 -0
- package/dist/page-builder/templates.d.ts +9 -0
- package/dist/page-builder/templates.d.ts.map +1 -0
- package/dist/page-builder/templates.js +401 -0
- package/dist/page-builder/templates.js.map +1 -0
- package/dist/page-builder/tree.d.ts +17 -0
- package/dist/page-builder/tree.d.ts.map +1 -0
- package/dist/page-builder/tree.js +160 -0
- package/dist/page-builder/tree.js.map +1 -0
- package/dist/page-builder/types.d.ts +112 -0
- package/dist/page-builder/types.d.ts.map +1 -0
- package/dist/page-builder/types.js +4 -0
- package/dist/page-builder/types.js.map +1 -0
- package/dist/page-builder/validate.d.ts +6 -0
- package/dist/page-builder/validate.d.ts.map +1 -0
- package/dist/page-builder/validate.js +87 -0
- package/dist/page-builder/validate.js.map +1 -0
- package/package.json +6 -1
- package/prisma/migrations/0004_script_tags/migration.sql +21 -0
- package/prisma/migrations/0005_password_reset_tokens/migration.sql +20 -0
- package/prisma/migrations/0006_page_builder/migration.sql +38 -0
- package/prisma/schema.prisma +75 -11
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
// ─── Base Schema ─────────────────────────────────────────────────────
|
|
3
|
+
const responsiveOverridesSchema = z
|
|
4
|
+
.object({
|
|
5
|
+
mobile: z.record(z.unknown()).optional(),
|
|
6
|
+
tablet: z.record(z.unknown()).optional(),
|
|
7
|
+
})
|
|
8
|
+
.optional();
|
|
9
|
+
const baseNodeSchema = z.object({
|
|
10
|
+
id: z.string().min(1),
|
|
11
|
+
responsive: responsiveOverridesSchema,
|
|
12
|
+
});
|
|
13
|
+
// ─── Leaf Nodes ──────────────────────────────────────────────────────
|
|
14
|
+
export const blockNodeSchema = baseNodeSchema.extend({
|
|
15
|
+
type: z.literal('block'),
|
|
16
|
+
settings: z
|
|
17
|
+
.object({
|
|
18
|
+
blockType: z.string().min(1),
|
|
19
|
+
variant: z.string().optional(),
|
|
20
|
+
})
|
|
21
|
+
.passthrough(),
|
|
22
|
+
data: z.record(z.unknown()),
|
|
23
|
+
});
|
|
24
|
+
export const savedSectionRefSchema = baseNodeSchema.extend({
|
|
25
|
+
type: z.literal('savedSectionRef'),
|
|
26
|
+
settings: z
|
|
27
|
+
.object({
|
|
28
|
+
refId: z.string().min(1),
|
|
29
|
+
})
|
|
30
|
+
.passthrough(),
|
|
31
|
+
});
|
|
32
|
+
// ─── Recursive Nodes (lazy) ──────────────────────────────────────────
|
|
33
|
+
export const columnNodeSchema = z.lazy(() => baseNodeSchema.extend({
|
|
34
|
+
type: z.literal('column'),
|
|
35
|
+
settings: z
|
|
36
|
+
.object({
|
|
37
|
+
width: z.number().int().min(1).max(12),
|
|
38
|
+
verticalAlign: z.enum(['top', 'center', 'bottom']).optional(),
|
|
39
|
+
padding: z.string().optional(),
|
|
40
|
+
background: z.string().optional(),
|
|
41
|
+
})
|
|
42
|
+
.passthrough(),
|
|
43
|
+
children: z.array(z.union([blockNodeSchema, containerNodeSchema])),
|
|
44
|
+
}));
|
|
45
|
+
export const rowNodeSchema = z.lazy(() => baseNodeSchema.extend({
|
|
46
|
+
type: z.literal('row'),
|
|
47
|
+
settings: z
|
|
48
|
+
.object({
|
|
49
|
+
gap: z.string().optional(),
|
|
50
|
+
verticalAlign: z.enum(['top', 'center', 'bottom', 'stretch']).optional(),
|
|
51
|
+
reverseOnMobile: z.boolean().optional(),
|
|
52
|
+
wrapOnMobile: z.boolean().optional(),
|
|
53
|
+
})
|
|
54
|
+
.passthrough(),
|
|
55
|
+
children: z.array(columnNodeSchema).min(1),
|
|
56
|
+
}));
|
|
57
|
+
export const containerNodeSchema = z.lazy(() => baseNodeSchema.extend({
|
|
58
|
+
type: z.literal('container'),
|
|
59
|
+
settings: z
|
|
60
|
+
.object({
|
|
61
|
+
maxWidth: z.string().optional(),
|
|
62
|
+
alignment: z.enum(['left', 'center', 'right']).optional(),
|
|
63
|
+
padding: z.string().optional(),
|
|
64
|
+
})
|
|
65
|
+
.passthrough(),
|
|
66
|
+
children: z.array(rowNodeSchema),
|
|
67
|
+
}));
|
|
68
|
+
export const sectionNodeSchema = z.lazy(() => baseNodeSchema.extend({
|
|
69
|
+
type: z.literal('section'),
|
|
70
|
+
settings: z
|
|
71
|
+
.object({
|
|
72
|
+
background: z.string().optional(),
|
|
73
|
+
backgroundImage: z.string().optional(),
|
|
74
|
+
backgroundGradient: z.string().optional(),
|
|
75
|
+
paddingTop: z.string().optional(),
|
|
76
|
+
paddingBottom: z.string().optional(),
|
|
77
|
+
marginTop: z.string().optional(),
|
|
78
|
+
marginBottom: z.string().optional(),
|
|
79
|
+
visibility: z.enum(['visible', 'hidden']).optional(),
|
|
80
|
+
htmlId: z.string().optional(),
|
|
81
|
+
htmlClass: z.string().optional(),
|
|
82
|
+
})
|
|
83
|
+
.passthrough(),
|
|
84
|
+
children: z.array(z.union([containerNodeSchema, rowNodeSchema])),
|
|
85
|
+
}));
|
|
86
|
+
export const pageNodeSchema = z.lazy(() => baseNodeSchema.extend({
|
|
87
|
+
type: z.literal('page'),
|
|
88
|
+
children: z.array(z.union([sectionNodeSchema, savedSectionRefSchema])),
|
|
89
|
+
}));
|
|
90
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/page-builder/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { PageNode } from './types.js';
|
|
2
|
+
export interface ExtractedContent {
|
|
3
|
+
plainText: string;
|
|
4
|
+
wordCount: number;
|
|
5
|
+
headings: {
|
|
6
|
+
level: number;
|
|
7
|
+
text: string;
|
|
8
|
+
blockId: string;
|
|
9
|
+
}[];
|
|
10
|
+
images: {
|
|
11
|
+
src: string;
|
|
12
|
+
alt: string;
|
|
13
|
+
blockId: string;
|
|
14
|
+
}[];
|
|
15
|
+
links: {
|
|
16
|
+
url: string;
|
|
17
|
+
text: string;
|
|
18
|
+
internal: boolean;
|
|
19
|
+
blockId: string;
|
|
20
|
+
}[];
|
|
21
|
+
blockTexts: Map<string, string>;
|
|
22
|
+
}
|
|
23
|
+
export interface ReadabilityResult {
|
|
24
|
+
fleschScore: number;
|
|
25
|
+
avgSentenceLength: number;
|
|
26
|
+
wordCount: number;
|
|
27
|
+
readingTime: number;
|
|
28
|
+
passiveEstimate: number;
|
|
29
|
+
}
|
|
30
|
+
export interface SEOCheck {
|
|
31
|
+
id: string;
|
|
32
|
+
label: string;
|
|
33
|
+
status: 'good' | 'warning' | 'error';
|
|
34
|
+
detail: string;
|
|
35
|
+
blockId?: string;
|
|
36
|
+
}
|
|
37
|
+
export interface SEOAnalysis {
|
|
38
|
+
score: number;
|
|
39
|
+
checks: SEOCheck[];
|
|
40
|
+
readability: ReadabilityResult;
|
|
41
|
+
content: ExtractedContent;
|
|
42
|
+
perBlockHints: Map<string, SEOCheck[]>;
|
|
43
|
+
}
|
|
44
|
+
export interface PageSettings {
|
|
45
|
+
title: string;
|
|
46
|
+
slug: string;
|
|
47
|
+
metaTitle?: string;
|
|
48
|
+
metaDescription?: string;
|
|
49
|
+
focusKeyphrase?: string;
|
|
50
|
+
ogImage?: string;
|
|
51
|
+
schemaType?: string;
|
|
52
|
+
template?: string;
|
|
53
|
+
}
|
|
54
|
+
export declare function stripHtml(html: string): string;
|
|
55
|
+
export declare function countWords(text: string): number;
|
|
56
|
+
export declare function countSentences(text: string): number;
|
|
57
|
+
export declare function countSyllables(word: string): number;
|
|
58
|
+
export declare function extractContent(tree: PageNode): ExtractedContent;
|
|
59
|
+
export declare function analyzeReadability(text: string): ReadabilityResult;
|
|
60
|
+
export declare function analyzeSEO(tree: PageNode, pageSettings: PageSettings): SEOAnalysis;
|
|
61
|
+
//# sourceMappingURL=seo-analyzer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seo-analyzer.d.ts","sourceRoot":"","sources":["../../src/page-builder/seo-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA0B,MAAM,YAAY,CAAA;AAKlE,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC5D,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACvD,KAAK,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC1E,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAA;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,QAAQ,EAAE,CAAA;IAClB,WAAW,EAAE,iBAAiB,CAAA;IAC9B,OAAO,EAAE,gBAAgB,CAAA;IACzB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;CACvC;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAID,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI/C;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAiBnD;AAyND,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,gBAAgB,CAoB/D;AAID,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CA8ClE;AA2BD,wBAAgB,UAAU,CACxB,IAAI,EAAE,QAAQ,EACd,YAAY,EAAE,YAAY,GACzB,WAAW,CAyNb"}
|