@10up/block-renderer-prompt-generator 0.1.4

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.
@@ -0,0 +1,8 @@
1
+ export { generateBlockDocumentation, generateBlockList, generateBlocksPrompt, generateNestingRulesPrompt, } from './blocks-prompt.js';
2
+ export { generateColorsPrompt, generateGradientsPrompt, generateTypographyPrompt, generateSpacingPrompt, generateShadowsPrompt, generateLayoutPrompt, generateTokensPrompt, type TokenPromptOptions, } from './tokens-prompt.js';
3
+ export { generatePatternDocumentation, generatePatternList, generatePatternsPrompt, generateCompactPatternList, } from './patterns-prompt.js';
4
+ export { generateSectionStyleDocumentation, generateSectionStyleList, generateSectionStylesPrompt, generateCompactSectionStyleList, } from './section-styles-prompt.js';
5
+ export { generateIgnitePrompt, generateCompactIgnitePrompt, } from './ignite-prompt.js';
6
+ export { generateSystemPrompt, generateMinimalPrompt, generateCriticalStylingRules, } from './system-prompt.js';
7
+ export type { GeneratePromptOptions } from './system-prompt.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,iCAAiC,EACjC,wBAAwB,EACxB,2BAA2B,EAC3B,+BAA+B,GAChC,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,13 @@
1
+ // Block documentation
2
+ export { generateBlockDocumentation, generateBlockList, generateBlocksPrompt, generateNestingRulesPrompt, } from './blocks-prompt.js';
3
+ // Token documentation
4
+ export { generateColorsPrompt, generateGradientsPrompt, generateTypographyPrompt, generateSpacingPrompt, generateShadowsPrompt, generateLayoutPrompt, generateTokensPrompt, } from './tokens-prompt.js';
5
+ // Pattern documentation
6
+ export { generatePatternDocumentation, generatePatternList, generatePatternsPrompt, generateCompactPatternList, } from './patterns-prompt.js';
7
+ // Section styles documentation
8
+ export { generateSectionStyleDocumentation, generateSectionStyleList, generateSectionStylesPrompt, generateCompactSectionStyleList, } from './section-styles-prompt.js';
9
+ // Ignite WP documentation
10
+ export { generateIgnitePrompt, generateCompactIgnitePrompt, } from './ignite-prompt.js';
11
+ // System prompt
12
+ export { generateSystemPrompt, generateMinimalPrompt, generateCriticalStylingRules, } from './system-prompt.js';
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sBAAsB;AACtB,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAE5B,sBAAsB;AACtB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,GAErB,MAAM,oBAAoB,CAAC;AAE5B,wBAAwB;AACxB,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAE9B,+BAA+B;AAC/B,OAAO,EACL,iCAAiC,EACjC,wBAAwB,EACxB,2BAA2B,EAC3B,+BAA+B,GAChC,MAAM,4BAA4B,CAAC;AAEpC,0BAA0B;AAC1B,OAAO,EACL,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAE5B,gBAAgB;AAChB,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { PatternRegistry, PatternDefinition } from '@10up/block-renderer-patterns';
2
+ /**
3
+ * Generates documentation for a single pattern.
4
+ */
5
+ export declare function generatePatternDocumentation(pattern: PatternDefinition): string;
6
+ /**
7
+ * Generates a simple pattern list.
8
+ */
9
+ export declare function generatePatternList(registry: PatternRegistry): string;
10
+ /**
11
+ * Generates full pattern documentation grouped by category.
12
+ */
13
+ export declare function generatePatternsPrompt(registry: PatternRegistry): string;
14
+ /**
15
+ * Generates a compact pattern list suitable for embedding.
16
+ */
17
+ export declare function generateCompactPatternList(registry: PatternRegistry): string;
18
+ //# sourceMappingURL=patterns-prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patterns-prompt.d.ts","sourceRoot":"","sources":["../src/patterns-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAExF;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAc/E;AAqBD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAkBrE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAkCxE;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAO5E"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Generates documentation for a single pattern.
3
+ */
4
+ export function generatePatternDocumentation(pattern) {
5
+ const lines = [];
6
+ lines.push(`- **${pattern.title}** (\`${pattern.slug}\`)`);
7
+ if (pattern.description) {
8
+ lines.push(` ${pattern.description}`);
9
+ }
10
+ if (pattern.categories && pattern.categories.length > 0) {
11
+ lines.push(` Categories: ${pattern.categories.join(', ')}`);
12
+ }
13
+ return lines.join('\n');
14
+ }
15
+ /**
16
+ * Groups patterns by category.
17
+ */
18
+ function groupByCategory(registry) {
19
+ const groups = new Map();
20
+ for (const pattern of registry.values()) {
21
+ const categories = pattern.categories || ['uncategorized'];
22
+ for (const category of categories) {
23
+ const existing = groups.get(category) || [];
24
+ existing.push(pattern);
25
+ groups.set(category, existing);
26
+ }
27
+ }
28
+ return groups;
29
+ }
30
+ /**
31
+ * Generates a simple pattern list.
32
+ */
33
+ export function generatePatternList(registry) {
34
+ const lines = [
35
+ '## Available Patterns',
36
+ '',
37
+ 'You can reference these patterns by slug:',
38
+ '',
39
+ ];
40
+ if (registry.size === 0) {
41
+ lines.push('*No patterns available*');
42
+ return lines.join('\n');
43
+ }
44
+ for (const pattern of registry.values()) {
45
+ lines.push(`- \`${pattern.slug}\`: ${pattern.title}`);
46
+ }
47
+ return lines.join('\n');
48
+ }
49
+ /**
50
+ * Generates full pattern documentation grouped by category.
51
+ */
52
+ export function generatePatternsPrompt(registry) {
53
+ const lines = [
54
+ '## Available Patterns',
55
+ '',
56
+ 'Use patterns when they match the design need. Reference by slug:',
57
+ '',
58
+ '```json',
59
+ '{ "type": "core/pattern", "props": { "slug": "theme/pattern-name" } }',
60
+ '```',
61
+ '',
62
+ ];
63
+ if (registry.size === 0) {
64
+ lines.push('*No patterns available*');
65
+ return lines.join('\n');
66
+ }
67
+ const grouped = groupByCategory(registry);
68
+ const sortedCategories = Array.from(grouped.keys()).sort();
69
+ for (const category of sortedCategories) {
70
+ const patterns = grouped.get(category) || [];
71
+ const categoryName = category.charAt(0).toUpperCase() + category.slice(1);
72
+ lines.push(`### ${categoryName}`, '');
73
+ for (const pattern of patterns) {
74
+ lines.push(generatePatternDocumentation(pattern));
75
+ }
76
+ lines.push('');
77
+ }
78
+ return lines.join('\n');
79
+ }
80
+ /**
81
+ * Generates a compact pattern list suitable for embedding.
82
+ */
83
+ export function generateCompactPatternList(registry) {
84
+ if (registry.size === 0) {
85
+ return 'No patterns available.';
86
+ }
87
+ const slugs = Array.from(registry.keys());
88
+ return `Available patterns: ${slugs.join(', ')}`;
89
+ }
90
+ //# sourceMappingURL=patterns-prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patterns-prompt.js","sourceRoot":"","sources":["../src/patterns-prompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { SectionStyle } from '@10up/block-renderer-theme-json';
2
+ /**
3
+ * Generates documentation for a single section style.
4
+ */
5
+ export declare function generateSectionStyleDocumentation(style: SectionStyle): string;
6
+ /**
7
+ * Generates a simple list of section styles.
8
+ */
9
+ export declare function generateSectionStyleList(sectionStyles: SectionStyle[]): string;
10
+ /**
11
+ * Generates full section styles documentation.
12
+ */
13
+ export declare function generateSectionStylesPrompt(sectionStyles: SectionStyle[]): string;
14
+ /**
15
+ * Generates a compact section styles list for smaller context.
16
+ */
17
+ export declare function generateCompactSectionStyleList(sectionStyles: SectionStyle[]): string;
18
+ //# sourceMappingURL=section-styles-prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"section-styles-prompt.d.ts","sourceRoot":"","sources":["../src/section-styles-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE;;GAEG;AACH,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAc7E;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,YAAY,EAAE,GAAG,MAAM,CAkB9E;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,aAAa,EAAE,YAAY,EAAE,GAAG,MAAM,CA4CjF;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,aAAa,EAAE,YAAY,EAAE,GAAG,MAAM,CAOrF"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Generates documentation for a single section style.
3
+ */
4
+ export function generateSectionStyleDocumentation(style) {
5
+ const lines = [];
6
+ lines.push(`### ${style.title}`);
7
+ lines.push('');
8
+ lines.push(`- **Slug:** \`${style.slug}\``);
9
+ lines.push(`- **Applies to:** ${style.blockTypes.join(', ')}`);
10
+ lines.push(`- **Usage:** Add \`"className": "is-style-${style.slug}"\` to block props`);
11
+ if (style.customSettings) {
12
+ lines.push('- **Custom properties:** Yes (scoped CSS variables)');
13
+ }
14
+ return lines.join('\n');
15
+ }
16
+ /**
17
+ * Generates a simple list of section styles.
18
+ */
19
+ export function generateSectionStyleList(sectionStyles) {
20
+ const lines = [
21
+ '## Section Styles',
22
+ '',
23
+ 'Section styles can be applied to container blocks for different visual treatments:',
24
+ '',
25
+ ];
26
+ if (sectionStyles.length === 0) {
27
+ lines.push('*No section styles available*');
28
+ return lines.join('\n');
29
+ }
30
+ for (const style of sectionStyles) {
31
+ lines.push(`- \`${style.slug}\`: ${style.title} (${style.blockTypes.join(', ')})`);
32
+ }
33
+ return lines.join('\n');
34
+ }
35
+ /**
36
+ * Generates full section styles documentation.
37
+ */
38
+ export function generateSectionStylesPrompt(sectionStyles) {
39
+ const lines = [
40
+ '## Section Styles',
41
+ '',
42
+ 'Section styles are pre-defined visual treatments for container blocks.',
43
+ 'Apply them using the `className` prop:',
44
+ '',
45
+ '```json',
46
+ '{',
47
+ ' "type": "core/group",',
48
+ ' "props": {',
49
+ ' "className": "is-style-surface-inverted",',
50
+ ' "layout": { "type": "constrained" }',
51
+ ' }',
52
+ '}',
53
+ '```',
54
+ '',
55
+ ];
56
+ if (sectionStyles.length === 0) {
57
+ lines.push('*No section styles available*');
58
+ return lines.join('\n');
59
+ }
60
+ // Group by block types
61
+ const byBlockType = new Map();
62
+ for (const style of sectionStyles) {
63
+ const key = style.blockTypes.sort().join(', ');
64
+ const existing = byBlockType.get(key) || [];
65
+ existing.push(style);
66
+ byBlockType.set(key, existing);
67
+ }
68
+ for (const [blockTypes, styles] of byBlockType) {
69
+ lines.push(`### For ${blockTypes}`, '');
70
+ for (const style of styles) {
71
+ lines.push(`- **${style.title}** (\`is-style-${style.slug}\`)`);
72
+ }
73
+ lines.push('');
74
+ }
75
+ return lines.join('\n');
76
+ }
77
+ /**
78
+ * Generates a compact section styles list for smaller context.
79
+ */
80
+ export function generateCompactSectionStyleList(sectionStyles) {
81
+ if (sectionStyles.length === 0) {
82
+ return 'No section styles available.';
83
+ }
84
+ const items = sectionStyles.map(s => `${s.slug} (${s.blockTypes.join('/')})`);
85
+ return `Section styles: ${items.join(', ')}`;
86
+ }
87
+ //# sourceMappingURL=section-styles-prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"section-styles-prompt.js","sourceRoot":"","sources":["../src/section-styles-prompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import type { BlockCatalog } from '@10up/block-renderer-core';
2
+ import type { ThemeTokens, SectionStyle, IgniteTokens } from '@10up/block-renderer-theme-json';
3
+ import type { PatternRegistry } from '@10up/block-renderer-patterns';
4
+ import type { BlockPreferencesConfig } from '@10up/block-renderer-preferences';
5
+ /**
6
+ * Options for generating system prompts.
7
+ */
8
+ export interface GeneratePromptOptions {
9
+ /** Block catalog */
10
+ catalog?: BlockCatalog;
11
+ /** Theme tokens */
12
+ tokens?: ThemeTokens;
13
+ /** Pattern registry */
14
+ patterns?: PatternRegistry;
15
+ /** Section styles from /styles directory */
16
+ sectionStyles?: SectionStyle[];
17
+ /** Ignite WP tokens (fluid typography, spacing, presets) */
18
+ igniteTokens?: IgniteTokens;
19
+ /** User preferences */
20
+ preferences?: BlockPreferencesConfig;
21
+ /** Include JSON structure documentation */
22
+ includeStructure?: boolean;
23
+ /** Include example output */
24
+ includeExample?: boolean;
25
+ /** Use compact format (less detailed) */
26
+ compact?: boolean;
27
+ }
28
+ /**
29
+ * Generates critical styling rules for Ignite mode.
30
+ * This appears at the very top to ensure AI follows these rules.
31
+ */
32
+ export declare function generateCriticalStylingRules(igniteTokens: IgniteTokens, sectionStyles?: SectionStyle[]): string;
33
+ /**
34
+ * Generates a complete system prompt for AI block generation.
35
+ */
36
+ export declare function generateSystemPrompt(options?: GeneratePromptOptions): string;
37
+ /**
38
+ * Generates a minimal prompt for quick use.
39
+ */
40
+ export declare function generateMinimalPrompt(options?: GeneratePromptOptions): string;
41
+ //# sourceMappingURL=system-prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAQ/E;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,oBAAoB;IACpB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,mBAAmB;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,uBAAuB;IACvB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,4CAA4C;IAC5C,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,4DAA4D;IAC5D,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,uBAAuB;IACvB,WAAW,CAAC,EAAE,sBAAsB,CAAC;IACrC,2CAA2C;IAC3C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,6BAA6B;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yCAAyC;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,YAAY,EAAE,YAAY,EAC1B,aAAa,CAAC,EAAE,YAAY,EAAE,GAC7B,MAAM,CAmER;AAyED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,qBAA0B,GAAG,MAAM,CAgFhF;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,qBAA0B,GAAG,MAAM,CAOjF"}
@@ -0,0 +1,230 @@
1
+ import { formatPreferencesForPrompt } from '@10up/block-renderer-preferences';
2
+ import { generateBlocksPrompt, generateNestingRulesPrompt, generateBlockList } from './blocks-prompt.js';
3
+ import { generateTokensPrompt } from './tokens-prompt.js';
4
+ import { generatePatternsPrompt, generatePatternList } from './patterns-prompt.js';
5
+ import { generateSectionStylesPrompt, generateSectionStyleList } from './section-styles-prompt.js';
6
+ import { generateIgnitePrompt, generateCompactIgnitePrompt } from './ignite-prompt.js';
7
+ /**
8
+ * Generates critical styling rules for Ignite mode.
9
+ * This appears at the very top to ensure AI follows these rules.
10
+ */
11
+ export function generateCriticalStylingRules(igniteTokens, sectionStyles) {
12
+ const lines = [
13
+ '## ⚠️ Critical Styling Rules',
14
+ '',
15
+ '**You MUST follow these rules when generating blocks:**',
16
+ '',
17
+ '### 1. Container Colors: Use Section Styles',
18
+ '',
19
+ 'For `core/group` and `core/columns` blocks, **NEVER** set `backgroundColor` or `textColor` directly.',
20
+ 'Instead, apply a section style via className:',
21
+ '',
22
+ '```json',
23
+ '{',
24
+ ' "type": "core/group",',
25
+ ' "props": {',
26
+ ' "className": "is-style-surface-contrast",',
27
+ ' "layout": { "type": "constrained" }',
28
+ ' }',
29
+ '}',
30
+ '```',
31
+ '',
32
+ ];
33
+ // List available section styles
34
+ if (sectionStyles && sectionStyles.length > 0) {
35
+ lines.push('**Available section styles:**');
36
+ for (const style of sectionStyles) {
37
+ lines.push(`- \`is-style-${style.slug}\` - ${style.title}`);
38
+ }
39
+ lines.push('');
40
+ }
41
+ lines.push('### 2. Typography: Use Typography Presets');
42
+ lines.push('');
43
+ lines.push('For headings and text blocks, **NEVER** set `fontSize` directly.');
44
+ lines.push('Instead, use BOTH the `typographyPreset` attribute AND the `className`:');
45
+ lines.push('');
46
+ lines.push('```json');
47
+ lines.push('{');
48
+ lines.push(' "type": "core/heading",');
49
+ lines.push(' "props": {');
50
+ lines.push(' "content": "Welcome",');
51
+ lines.push(' "level": 1,');
52
+ lines.push(' "typographyPreset": "display-lg",');
53
+ lines.push(' "className": "is-typography-preset-display-lg"');
54
+ lines.push(' }');
55
+ lines.push('}');
56
+ lines.push('```');
57
+ lines.push('');
58
+ // List available typography presets
59
+ if (igniteTokens.typographyPresets.length > 0) {
60
+ lines.push('**Available typography presets:**');
61
+ for (const preset of igniteTokens.typographyPresets) {
62
+ lines.push(`- \`${preset.slug}\` - ${preset.name}`);
63
+ }
64
+ lines.push('');
65
+ }
66
+ lines.push('### 3. Why This Matters');
67
+ lines.push('');
68
+ lines.push('- Section styles ensure child elements inherit proper colors automatically');
69
+ lines.push('- Typography presets apply font-size, weight, line-height, and letter-spacing together');
70
+ lines.push('- Direct token usage breaks the design system inheritance');
71
+ lines.push('');
72
+ return lines.join('\n');
73
+ }
74
+ /**
75
+ * Generates the JSON structure documentation.
76
+ */
77
+ function generateStructurePrompt() {
78
+ return `
79
+ ## JSON Structure
80
+
81
+ You are generating WordPress block content. Output valid JSON matching this structure:
82
+
83
+ \`\`\`typescript
84
+ interface BlockTree {
85
+ root: string; // Key of the root element
86
+ elements: Record<string, BlockElement>;
87
+ }
88
+
89
+ interface BlockElement {
90
+ key: string; // Unique identifier
91
+ type: string; // Block name e.g. "core/paragraph"
92
+ props: Record<string, unknown>; // Block attributes
93
+ children?: string[]; // Keys of child elements (for InnerBlocks)
94
+ parentKey?: string; // Key of parent element
95
+ }
96
+ \`\`\`
97
+ `;
98
+ }
99
+ /**
100
+ * Generates an example output.
101
+ */
102
+ function generateExamplePrompt() {
103
+ return `
104
+ ## Example Output
105
+
106
+ Input: "Create a hero section with a heading and a call-to-action button"
107
+
108
+ Output:
109
+ \`\`\`json
110
+ {
111
+ "root": "group-1",
112
+ "elements": {
113
+ "group-1": {
114
+ "key": "group-1",
115
+ "type": "core/group",
116
+ "props": { "align": "full", "layout": { "type": "constrained" } },
117
+ "children": ["heading-1", "buttons-1"]
118
+ },
119
+ "heading-1": {
120
+ "key": "heading-1",
121
+ "type": "core/heading",
122
+ "props": { "content": "Welcome to Our Site", "level": 1 },
123
+ "parentKey": "group-1"
124
+ },
125
+ "buttons-1": {
126
+ "key": "buttons-1",
127
+ "type": "core/buttons",
128
+ "props": { "layout": { "type": "flex", "justifyContent": "center" } },
129
+ "children": ["button-1"],
130
+ "parentKey": "group-1"
131
+ },
132
+ "button-1": {
133
+ "key": "button-1",
134
+ "type": "core/button",
135
+ "props": { "text": "Get Started", "url": "/contact" },
136
+ "parentKey": "buttons-1"
137
+ }
138
+ }
139
+ }
140
+ \`\`\`
141
+ `;
142
+ }
143
+ /**
144
+ * Generates a complete system prompt for AI block generation.
145
+ */
146
+ export function generateSystemPrompt(options = {}) {
147
+ const sections = [];
148
+ const isIgniteMode = Boolean(options.igniteTokens);
149
+ // Header
150
+ sections.push('# WordPress Block Generation');
151
+ sections.push('');
152
+ // CRITICAL: Add styling rules at the very top for Ignite mode
153
+ if (isIgniteMode && options.igniteTokens) {
154
+ sections.push(generateCriticalStylingRules(options.igniteTokens, options.sectionStyles));
155
+ }
156
+ // Structure documentation
157
+ if (options.includeStructure !== false) {
158
+ sections.push(generateStructurePrompt());
159
+ }
160
+ // Blocks documentation
161
+ if (options.catalog) {
162
+ if (options.compact) {
163
+ sections.push(generateBlockList(options.catalog));
164
+ }
165
+ else {
166
+ sections.push(generateBlocksPrompt(options.catalog));
167
+ }
168
+ // Nesting rules
169
+ if (!options.compact) {
170
+ sections.push(generateNestingRulesPrompt(options.catalog));
171
+ }
172
+ }
173
+ // Tokens documentation
174
+ if (options.tokens) {
175
+ const tokenOptions = {
176
+ igniteMode: isIgniteMode,
177
+ igniteTokens: options.igniteTokens,
178
+ };
179
+ sections.push(generateTokensPrompt(options.tokens, tokenOptions));
180
+ }
181
+ // Patterns documentation
182
+ if (options.patterns) {
183
+ if (options.compact) {
184
+ sections.push(generatePatternList(options.patterns));
185
+ }
186
+ else {
187
+ sections.push(generatePatternsPrompt(options.patterns));
188
+ }
189
+ }
190
+ // Section styles documentation (when not using Ignite mode)
191
+ // Note: When igniteTokens is provided, section styles are included in the Ignite prompt
192
+ if (options.sectionStyles && options.sectionStyles.length > 0 && !options.igniteTokens) {
193
+ if (options.compact) {
194
+ sections.push(generateSectionStyleList(options.sectionStyles));
195
+ }
196
+ else {
197
+ sections.push(generateSectionStylesPrompt(options.sectionStyles));
198
+ }
199
+ }
200
+ // Ignite WP documentation (includes section styles, typography presets, fluid tokens)
201
+ if (options.igniteTokens) {
202
+ if (options.compact) {
203
+ sections.push(generateCompactIgnitePrompt(options.igniteTokens, options.sectionStyles));
204
+ }
205
+ else {
206
+ sections.push(generateIgnitePrompt(options.igniteTokens, options.sectionStyles));
207
+ }
208
+ }
209
+ // User preferences
210
+ if (options.preferences) {
211
+ sections.push(formatPreferencesForPrompt(options.preferences));
212
+ }
213
+ // Example
214
+ if (options.includeExample !== false) {
215
+ sections.push(generateExamplePrompt());
216
+ }
217
+ return sections.join('\n\n');
218
+ }
219
+ /**
220
+ * Generates a minimal prompt for quick use.
221
+ */
222
+ export function generateMinimalPrompt(options = {}) {
223
+ return generateSystemPrompt({
224
+ ...options,
225
+ compact: true,
226
+ includeStructure: true,
227
+ includeExample: true,
228
+ });
229
+ }
230
+ //# sourceMappingURL=system-prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import type { ThemeTokens, IgniteTokens } from '@10up/block-renderer-theme-json';
2
+ /**
3
+ * Options for token prompt generation
4
+ */
5
+ export interface TokenPromptOptions {
6
+ /** When true, adds warnings to prefer section styles and typography presets */
7
+ igniteMode?: boolean;
8
+ /** Ignite tokens for reference */
9
+ igniteTokens?: IgniteTokens;
10
+ }
11
+ /**
12
+ * Generates color tokens documentation.
13
+ */
14
+ export declare function generateColorsPrompt(tokens: ThemeTokens, options?: TokenPromptOptions): string;
15
+ /**
16
+ * Generates gradient tokens documentation.
17
+ */
18
+ export declare function generateGradientsPrompt(tokens: ThemeTokens): string;
19
+ /**
20
+ * Generates typography tokens documentation.
21
+ */
22
+ export declare function generateTypographyPrompt(tokens: ThemeTokens, options?: TokenPromptOptions): string;
23
+ /**
24
+ * Generates spacing tokens documentation.
25
+ */
26
+ export declare function generateSpacingPrompt(tokens: ThemeTokens): string;
27
+ /**
28
+ * Generates shadow tokens documentation.
29
+ */
30
+ export declare function generateShadowsPrompt(tokens: ThemeTokens): string;
31
+ /**
32
+ * Generates layout documentation.
33
+ */
34
+ export declare function generateLayoutPrompt(tokens: ThemeTokens): string;
35
+ /**
36
+ * Generates complete design tokens documentation.
37
+ */
38
+ export declare function generateTokensPrompt(tokens: ThemeTokens, options?: TokenPromptOptions): string;
39
+ //# sourceMappingURL=tokens-prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens-prompt.d.ts","sourceRoot":"","sources":["../src/tokens-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEjF;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kCAAkC;IAClC,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,MAAM,CA2B9F;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAiBnE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAmClG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAiBjE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAiBjE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAgBhE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAoF9F"}