seshat-scribe 0.7.0 → 0.7.1
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/README.md +26 -5
- package/dist/commands/generate.d.ts.map +1 -1
- package/dist/commands/generate.js +46 -41
- package/dist/commands/generate.js.map +1 -1
- package/dist/config.d.ts +10 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +1 -0
- package/dist/config.js.map +1 -1
- package/dist/core/artist.d.ts.map +1 -1
- package/dist/core/artist.js +2 -30
- package/dist/core/artist.js.map +1 -1
- package/dist/core/sanity.d.ts +2 -2
- package/dist/core/sanity.d.ts.map +1 -1
- package/dist/core/sanity.js +10 -4
- package/dist/core/sanity.js.map +1 -1
- package/dist/core/writer.d.ts +1 -1
- package/dist/core/writer.d.ts.map +1 -1
- package/dist/core/writer.js +2 -2
- package/dist/core/writer.js.map +1 -1
- package/dist/lib/frontmatter.d.ts +1 -1
- package/dist/lib/frontmatter.d.ts.map +1 -1
- package/dist/lib/frontmatter.js +5 -3
- package/dist/lib/frontmatter.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,10 +4,11 @@ AI-powered automatic content generation for blogs and headless CMS platforms. Se
|
|
|
4
4
|
|
|
5
5
|
## Features
|
|
6
6
|
|
|
7
|
+
- **Free to Use**: Works with Google's free Gemini API tier for text generation, use paid tier for image generation
|
|
7
8
|
- **AI-Powered Planning**: Analyzes existing content to generate unique, non-duplicate topics
|
|
8
9
|
- **BYOK** - Bring Your Own Key, it will use your Gemini key to generate posts
|
|
9
10
|
- **Flexible Output**: Commit local MDX files or publish to Sanity CMS automatically
|
|
10
|
-
- **Smart Generation**: Creates complete articles with frontmatter and hero images
|
|
11
|
+
- **Smart Generation**: Creates complete articles with frontmatter and optional hero images
|
|
11
12
|
- **Framework Support**: Optional presets for Remix, Next.js, and Astro (or custom configuration)
|
|
12
13
|
- **Flexible Configuration**: Customizable frontmatter, file naming, and content generation options
|
|
13
14
|
- **GitHub Actions Integration**: Automate content creation on a schedule
|
|
@@ -42,12 +43,18 @@ The interactive wizard will guide you through setup:
|
|
|
42
43
|
|
|
43
44
|
### 2. Configure API Keys
|
|
44
45
|
|
|
45
|
-
Get a [Google Gemini API key](https://aistudio.google.com/app/apikey) and add to your environment:
|
|
46
|
+
**Get a free [Google Gemini API key](https://aistudio.google.com/app/apikey)** and add to your environment:
|
|
46
47
|
|
|
47
48
|
```bash
|
|
48
49
|
export GEMINI_API_KEY="your_api_key_here"
|
|
49
50
|
```
|
|
50
51
|
|
|
52
|
+
**Free vs Paid API Keys:**
|
|
53
|
+
- **Free tier**: Generates text-only blog posts (no images)
|
|
54
|
+
- **Paid tier**: Generates blog posts with AI-generated hero images
|
|
55
|
+
|
|
56
|
+
By default, Seshat will attempt to generate images. To create text-only posts (for free tier), set `enableImageGeneration: false` in your config (see [Configuration](#content-generation) below).
|
|
57
|
+
|
|
51
58
|
For Sanity CMS, also set:
|
|
52
59
|
|
|
53
60
|
```bash
|
|
@@ -128,11 +135,23 @@ Required when `outputMode` is `sanity`:
|
|
|
128
135
|
- `frontmatter.additionalFields`: Custom metadata as key-value pairs
|
|
129
136
|
|
|
130
137
|
**Content Generation**
|
|
138
|
+
- `generation.enableImageGeneration`: Enable/disable AI image generation (default: `true`). Set to `false` for text-only posts if using free Gemini API tier
|
|
131
139
|
- `generation.targetWordCount`: Target word count (optional)
|
|
132
140
|
- `generation.includeCodeExamples`: Emphasize code examples
|
|
133
141
|
- `generation.seoOptimized`: Generate SEO-optimized content
|
|
134
142
|
- `generation.customInstructions`: Additional instructions for AI
|
|
135
143
|
|
|
144
|
+
Example for free tier (text-only):
|
|
145
|
+
```json
|
|
146
|
+
{
|
|
147
|
+
"generation": {
|
|
148
|
+
"enableImageGeneration": false,
|
|
149
|
+
"targetWordCount": 1500,
|
|
150
|
+
"includeCodeExamples": true
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
```
|
|
154
|
+
|
|
136
155
|
|
|
137
156
|
## GitHub Actions Automation
|
|
138
157
|
|
|
@@ -199,11 +218,13 @@ seshat setup-workflow
|
|
|
199
218
|
1. **Analysis**: Scans existing content (local MDX files or Sanity CMS) to understand what you've written
|
|
200
219
|
2. **Planning**: Uses Google Gemini to propose a new, non-duplicate topic
|
|
201
220
|
3. **Writing**: Generates complete article with frontmatter (or Portable Text for Sanity)
|
|
202
|
-
4. **Illustration
|
|
221
|
+
4. **Illustration** (optional): Creates a hero image using Gemini's image generation (if enabled and API supports it)
|
|
203
222
|
5. **Publishing**: Saves to local files, uploads to Sanity CMS, or both
|
|
204
223
|
|
|
205
224
|
## Requirements
|
|
206
225
|
|
|
207
226
|
- Node.js v20+
|
|
208
|
-
- Google Gemini API key ([Get one here](https://aistudio.google.com/app/apikey))
|
|
209
|
-
-
|
|
227
|
+
- **Free** Google Gemini API key ([Get one here](https://aistudio.google.com/app/apikey) - no credit card required)
|
|
228
|
+
- Free tier: Text generation only
|
|
229
|
+
- Paid tier: Text + AI image generation
|
|
230
|
+
- Sanity write token (if using Sanity CMS)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2M3E"}
|
|
@@ -63,56 +63,67 @@ export async function generate(options = {}) {
|
|
|
63
63
|
error(err instanceof Error ? err.message : 'Unknown error');
|
|
64
64
|
process.exit(1);
|
|
65
65
|
}
|
|
66
|
-
// Step 3: Write the content
|
|
67
|
-
const writeSpinner = ora({
|
|
68
|
-
text: cyan('Seshat is writing...'),
|
|
69
|
-
color: 'cyan',
|
|
70
|
-
}).start();
|
|
71
66
|
const postDate = new Date();
|
|
72
67
|
const outputMode = config.outputMode || 'local';
|
|
73
68
|
let mdxContent;
|
|
74
69
|
let portableTextBody;
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
70
|
+
// Step 3: Generate the image (if enabled)
|
|
71
|
+
const enableImageGeneration = config.generation?.enableImageGeneration ?? true;
|
|
72
|
+
let imagePath = null;
|
|
73
|
+
let isTemporaryImage = false;
|
|
74
|
+
if (enableImageGeneration) {
|
|
75
|
+
const imageSpinner = ora({
|
|
76
|
+
text: cyan('Seshat is painting...'),
|
|
77
|
+
color: 'cyan',
|
|
78
|
+
}).start();
|
|
79
|
+
try {
|
|
80
|
+
// For Sanity-only mode, save to temp directory
|
|
81
|
+
if (outputMode === 'sanity') {
|
|
82
|
+
const tempDir = os.tmpdir();
|
|
83
|
+
const imageExtension = config.imageFormat === 'jpg' ? 'jpg' : (config.imageFormat === 'svg' ? 'svg' : 'png');
|
|
84
|
+
const tempImagePath = path.join(tempDir, `seshat-${plan.slug}.${imageExtension}`);
|
|
85
|
+
// Temporarily override config to save to temp
|
|
86
|
+
const tempConfig = { ...config, assetsDir: tempDir };
|
|
87
|
+
imagePath = await generateImage(tempConfig, plan.imagePrompt, plan.slug);
|
|
88
|
+
isTemporaryImage = true;
|
|
89
|
+
imageSpinner.succeed('Image created (temporary)');
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
imagePath = await generateImage(config, plan.imagePrompt, plan.slug);
|
|
93
|
+
const relativeImagePath = path.relative(process.cwd(), imagePath);
|
|
94
|
+
imageSpinner.succeed(`Image created: ${relativeImagePath}`);
|
|
95
|
+
}
|
|
78
96
|
}
|
|
79
|
-
|
|
80
|
-
|
|
97
|
+
catch (err) {
|
|
98
|
+
imageSpinner.fail('Image generation failed');
|
|
99
|
+
console.warn('Continuing without image...');
|
|
100
|
+
imagePath = null;
|
|
81
101
|
}
|
|
82
|
-
writeSpinner.succeed('Content written');
|
|
83
102
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
error(err instanceof Error ? err.message : 'Unknown error');
|
|
87
|
-
process.exit(1);
|
|
103
|
+
else {
|
|
104
|
+
info('Image generation disabled - creating text-only post');
|
|
88
105
|
}
|
|
89
|
-
// Step 4:
|
|
90
|
-
const
|
|
91
|
-
text: cyan('Seshat is
|
|
106
|
+
// Step 4: Write content (after we know if we have an image)
|
|
107
|
+
const writeSpinner = ora({
|
|
108
|
+
text: cyan('Seshat is writing...'),
|
|
92
109
|
color: 'cyan',
|
|
93
110
|
}).start();
|
|
94
|
-
let imagePath;
|
|
95
|
-
let isTemporaryImage = false;
|
|
96
111
|
try {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
const tempDir = os.tmpdir();
|
|
112
|
+
if (outputMode === 'local') {
|
|
113
|
+
// Determine public image path for frontmatter
|
|
100
114
|
const imageExtension = config.imageFormat === 'jpg' ? 'jpg' : (config.imageFormat === 'svg' ? 'svg' : 'png');
|
|
101
|
-
const
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
isTemporaryImage = true;
|
|
106
|
-
imageSpinner.succeed('Image created (temporary)');
|
|
115
|
+
const publicImagePath = imagePath && config.publicAssetPath
|
|
116
|
+
? `${config.publicAssetPath}/${plan.slug}.${imageExtension}`
|
|
117
|
+
: null;
|
|
118
|
+
mdxContent = await writeBlogPost(config, plan, postDate, publicImagePath);
|
|
107
119
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
const relativeImagePath = path.relative(process.cwd(), imagePath);
|
|
111
|
-
imageSpinner.succeed(`Image created: ${relativeImagePath}`);
|
|
120
|
+
if (outputMode === 'sanity') {
|
|
121
|
+
portableTextBody = await writePortableTextContent(config, plan);
|
|
112
122
|
}
|
|
123
|
+
writeSpinner.succeed('Content written');
|
|
113
124
|
}
|
|
114
125
|
catch (err) {
|
|
115
|
-
|
|
126
|
+
writeSpinner.fail('Failed to write content');
|
|
116
127
|
error(err instanceof Error ? err.message : 'Unknown error');
|
|
117
128
|
process.exit(1);
|
|
118
129
|
}
|
|
@@ -133,7 +144,7 @@ export async function generate(options = {}) {
|
|
|
133
144
|
saveSpinner.succeed(`Uploaded to Sanity: ${result.documentId}`);
|
|
134
145
|
info(` View in studio: /studio/intent/edit/id=${result.documentId};type=post`);
|
|
135
146
|
// Clean up temporary image if in Sanity-only mode
|
|
136
|
-
if (isTemporaryImage) {
|
|
147
|
+
if (isTemporaryImage && imagePath) {
|
|
137
148
|
try {
|
|
138
149
|
await fs.unlink(imagePath);
|
|
139
150
|
}
|
|
@@ -149,12 +160,6 @@ export async function generate(options = {}) {
|
|
|
149
160
|
const fileExtension = config.fileExtension || 'mdx';
|
|
150
161
|
const fileNameTemplate = config.fileNameTemplate || '{{slug}}';
|
|
151
162
|
const fileName = buildFileName(fileNameTemplate, plan.slug, postDate, fileExtension);
|
|
152
|
-
// Replace the placeholder image path with the actual path
|
|
153
|
-
if (!config.publicAssetPath) {
|
|
154
|
-
throw new Error('publicAssetPath is required for local output mode');
|
|
155
|
-
}
|
|
156
|
-
const publicImagePath = `${config.publicAssetPath}/${plan.slug}.${imageExtension}`;
|
|
157
|
-
mdxContent = mdxContent.replace(/PLACEHOLDER_IMAGE/g, publicImagePath);
|
|
158
163
|
if (options.dryRun) {
|
|
159
164
|
saveSpinner.info('Dry run: skipping file write');
|
|
160
165
|
console.log('');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -33,16 +33,19 @@ export declare const GenerationConfigSchema: z.ZodObject<{
|
|
|
33
33
|
includeCodeExamples: z.ZodOptional<z.ZodBoolean>;
|
|
34
34
|
seoOptimized: z.ZodOptional<z.ZodBoolean>;
|
|
35
35
|
customInstructions: z.ZodOptional<z.ZodString>;
|
|
36
|
+
enableImageGeneration: z.ZodOptional<z.ZodBoolean>;
|
|
36
37
|
}, "strip", z.ZodTypeAny, {
|
|
37
38
|
targetWordCount?: number | undefined;
|
|
38
39
|
includeCodeExamples?: boolean | undefined;
|
|
39
40
|
seoOptimized?: boolean | undefined;
|
|
40
41
|
customInstructions?: string | undefined;
|
|
42
|
+
enableImageGeneration?: boolean | undefined;
|
|
41
43
|
}, {
|
|
42
44
|
targetWordCount?: number | undefined;
|
|
43
45
|
includeCodeExamples?: boolean | undefined;
|
|
44
46
|
seoOptimized?: boolean | undefined;
|
|
45
47
|
customInstructions?: string | undefined;
|
|
48
|
+
enableImageGeneration?: boolean | undefined;
|
|
46
49
|
}>;
|
|
47
50
|
export type GenerationConfig = z.infer<typeof GenerationConfigSchema>;
|
|
48
51
|
/**
|
|
@@ -110,16 +113,19 @@ export declare const SeshatConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
110
113
|
includeCodeExamples: z.ZodOptional<z.ZodBoolean>;
|
|
111
114
|
seoOptimized: z.ZodOptional<z.ZodBoolean>;
|
|
112
115
|
customInstructions: z.ZodOptional<z.ZodString>;
|
|
116
|
+
enableImageGeneration: z.ZodOptional<z.ZodBoolean>;
|
|
113
117
|
}, "strip", z.ZodTypeAny, {
|
|
114
118
|
targetWordCount?: number | undefined;
|
|
115
119
|
includeCodeExamples?: boolean | undefined;
|
|
116
120
|
seoOptimized?: boolean | undefined;
|
|
117
121
|
customInstructions?: string | undefined;
|
|
122
|
+
enableImageGeneration?: boolean | undefined;
|
|
118
123
|
}, {
|
|
119
124
|
targetWordCount?: number | undefined;
|
|
120
125
|
includeCodeExamples?: boolean | undefined;
|
|
121
126
|
seoOptimized?: boolean | undefined;
|
|
122
127
|
customInstructions?: string | undefined;
|
|
128
|
+
enableImageGeneration?: boolean | undefined;
|
|
123
129
|
}>>;
|
|
124
130
|
outputMode: z.ZodOptional<z.ZodEnum<["local", "sanity"]>>;
|
|
125
131
|
sanity: z.ZodOptional<z.ZodObject<{
|
|
@@ -166,6 +172,7 @@ export declare const SeshatConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
166
172
|
includeCodeExamples?: boolean | undefined;
|
|
167
173
|
seoOptimized?: boolean | undefined;
|
|
168
174
|
customInstructions?: string | undefined;
|
|
175
|
+
enableImageGeneration?: boolean | undefined;
|
|
169
176
|
} | undefined;
|
|
170
177
|
sanity?: {
|
|
171
178
|
projectId: string;
|
|
@@ -200,6 +207,7 @@ export declare const SeshatConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
200
207
|
includeCodeExamples?: boolean | undefined;
|
|
201
208
|
seoOptimized?: boolean | undefined;
|
|
202
209
|
customInstructions?: string | undefined;
|
|
210
|
+
enableImageGeneration?: boolean | undefined;
|
|
203
211
|
} | undefined;
|
|
204
212
|
sanity?: {
|
|
205
213
|
projectId: string;
|
|
@@ -234,6 +242,7 @@ export declare const SeshatConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
234
242
|
includeCodeExamples?: boolean | undefined;
|
|
235
243
|
seoOptimized?: boolean | undefined;
|
|
236
244
|
customInstructions?: string | undefined;
|
|
245
|
+
enableImageGeneration?: boolean | undefined;
|
|
237
246
|
} | undefined;
|
|
238
247
|
sanity?: {
|
|
239
248
|
projectId: string;
|
|
@@ -268,6 +277,7 @@ export declare const SeshatConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
268
277
|
includeCodeExamples?: boolean | undefined;
|
|
269
278
|
seoOptimized?: boolean | undefined;
|
|
270
279
|
customInstructions?: string | undefined;
|
|
280
|
+
enableImageGeneration?: boolean | undefined;
|
|
271
281
|
} | undefined;
|
|
272
282
|
sanity?: {
|
|
273
283
|
projectId: string;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;EAOlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,sBAAsB
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;EAOlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;EAMjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;EAM7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuC9B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,GAAG,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CA+BvF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;CAY1B,CAAC;AAEF;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CA8BhE;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAM1E"}
|
package/dist/config.js
CHANGED
|
@@ -18,6 +18,7 @@ export const GenerationConfigSchema = z.object({
|
|
|
18
18
|
includeCodeExamples: z.boolean().optional().describe('Emphasize code examples in content'),
|
|
19
19
|
seoOptimized: z.boolean().optional().describe('Generate SEO-optimized content'),
|
|
20
20
|
customInstructions: z.string().optional().describe('Additional custom instructions for content generation'),
|
|
21
|
+
enableImageGeneration: z.boolean().optional().describe('Enable AI image generation (default: true). Set to false for text-only posts if your API key doesn\'t support image generation.'),
|
|
21
22
|
});
|
|
22
23
|
/**
|
|
23
24
|
* Sanity CMS configuration schema
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IACzG,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;IACzG,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;IAC7G,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAClF,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2DAA2D,CAAC;IAC1G,gBAAgB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;CAChG,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IACrG,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IAC1F,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC/E,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IACzG,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;IACzG,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;IAC7G,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAClF,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2DAA2D,CAAC;IAC1G,gBAAgB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;CAChG,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IACrG,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IAC1F,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC/E,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IAC3G,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iIAAiI,CAAC;CAC1L,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IACnD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;IAC1F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IACtF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;CAC/F,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4EAA4E,CAAC;IACxH,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;IAClH,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mEAAmE,CAAC;IACpH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IAC5E,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;IAC1E,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qFAAqF,CAAC;IAClK,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,0EAA0E,CAAC;IAEvF,yBAAyB;IACzB,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACpF,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IACnG,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;IACpH,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAExG,4BAA4B;IAC5B,WAAW,EAAE,uBAAuB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAE5F,6BAA6B;IAC7B,UAAU,EAAE,sBAAsB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAEpF,yCAAyC;IACzC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;IACtH,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;CAClH,CAAC,CAAC,MAAM,CACP,CAAC,IAAI,EAAE,EAAE;IACP,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC;IACxC,+EAA+E;IAC/E,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,EACD;IACE,OAAO,EAAE,oFAAoF;CAC9F,CACF,CAAC;AAIF;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA8D;IAC1F,KAAK,EAAE;QACL,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE;YACX,SAAS,EAAE,MAAM;YACjB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,OAAO;YACnB,gBAAgB,EAAE,IAAI;YACtB,aAAa,EAAE,KAAK;SACrB;KACF;IACD,IAAI,EAAE;QACJ,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE;YACX,SAAS,EAAE,MAAM;YACjB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,YAAY;YACxB,gBAAgB,EAAE,IAAI;YACtB,aAAa,EAAE,KAAK;SACrB;KACF;IACD,KAAK,EAAE;QACL,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE;YACX,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,WAAW;YACvB,gBAAgB,EAAE,IAAI;YACtB,aAAa,EAAE,KAAK;SACrB;KACF;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,iBAAiB;IAC7B,SAAS,EAAE,yBAAyB;IACpC,eAAe,EAAE,mBAAmB;IACpC,KAAK,EAAE,qCAAqC;IAC5C,IAAI,EAAE,wBAAwB;IAC9B,SAAS,EAAE,OAAgB;IAC3B,aAAa,EAAE,KAAc;IAC7B,WAAW,EAAE,KAAc;IAC3B,gBAAgB,EAAE,UAAU;IAC5B,iBAAiB,EAAE,KAAK;IACxB,UAAU,EAAE,OAAgB;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,MAAoB;IAChD,gEAAgE;IAChE,IAAI,QAAQ,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;IAE7B,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,KAAK,QAAQ,IAAI,iBAAiB,CAAC,MAAM,CAAC,SAAuC,CAAC,EAAE,CAAC;QAC3H,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,SAAuC,CAAC,CAAC;QACjF,iDAAiD;QACjD,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,QAAQ,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;QACzE,IAAI,CAAC,MAAM,CAAC,WAAW;YAAE,QAAQ,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACrE,CAAC;IAED,2BAA2B;IAC3B,QAAQ,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,IAAI,cAAc,CAAC,aAAa,CAAC;IAChF,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,IAAI,cAAc,CAAC,WAAW,CAAC;IAC1E,QAAQ,CAAC,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,IAAI,cAAc,CAAC,gBAAgB,CAAC;IACzF,QAAQ,CAAC,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,IAAI,cAAc,CAAC,iBAAiB,CAAC;IAC5F,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,IAAI,OAAO,CAAC;IAErD,8CAA8C;IAC9C,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC1B,QAAQ,CAAC,WAAW,GAAG;YACrB,SAAS,EAAE,MAAM;YACjB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,OAAO;YACnB,gBAAgB,EAAE,IAAI;YACtB,aAAa,EAAE,KAAK;SACrB,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAAkB;IACjD,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9C,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artist.d.ts","sourceRoot":"","sources":["../../src/core/artist.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAiBjD;;GAEG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"artist.d.ts","sourceRoot":"","sources":["../../src/core/artist.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAiBjD;;GAEG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,CA2DjB"}
|
package/dist/core/artist.js
CHANGED
|
@@ -60,36 +60,8 @@ ${overlay}`;
|
|
|
60
60
|
return imagePath;
|
|
61
61
|
}
|
|
62
62
|
catch (error) {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
// Fallback to placeholder if Imagen fails
|
|
66
|
-
const placeholderSVG = createPlaceholderImage(slug);
|
|
67
|
-
await fs.writeFile(imagePath, placeholderSVG, 'utf-8');
|
|
68
|
-
return imagePath;
|
|
63
|
+
// Let the error propagate to the caller
|
|
64
|
+
throw error;
|
|
69
65
|
}
|
|
70
66
|
}
|
|
71
|
-
/**
|
|
72
|
-
* Create a placeholder SVG image
|
|
73
|
-
* Fallback if Imagen generation fails
|
|
74
|
-
*/
|
|
75
|
-
function createPlaceholderImage(slug) {
|
|
76
|
-
// Generate a consistent color based on the slug
|
|
77
|
-
const hash = slug.split('').reduce((acc, char) => acc + char.charCodeAt(0), 0);
|
|
78
|
-
const hue = hash % 360;
|
|
79
|
-
return `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 630">
|
|
80
|
-
<defs>
|
|
81
|
-
<linearGradient id="grad" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
82
|
-
<stop offset="0%" style="stop-color:hsl(${hue}, 70%, 50%);stop-opacity:1" />
|
|
83
|
-
<stop offset="100%" style="stop-color:hsl(${(hue + 60) % 360}, 70%, 30%);stop-opacity:1" />
|
|
84
|
-
</linearGradient>
|
|
85
|
-
</defs>
|
|
86
|
-
<rect width="1200" height="630" fill="url(#grad)"/>
|
|
87
|
-
<text x="50%" y="50%" font-family="Arial, sans-serif" font-size="48" fill="white" text-anchor="middle" dominant-baseline="middle" opacity="0.9">
|
|
88
|
-
${slug.replace(/-/g, ' ').toUpperCase()}
|
|
89
|
-
</text>
|
|
90
|
-
<text x="50%" y="60%" font-family="Arial, sans-serif" font-size="24" fill="white" text-anchor="middle" dominant-baseline="middle" opacity="0.7">
|
|
91
|
-
Image generation placeholder
|
|
92
|
-
</text>
|
|
93
|
-
</svg>`;
|
|
94
|
-
}
|
|
95
67
|
//# sourceMappingURL=artist.js.map
|
package/dist/core/artist.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artist.js","sourceRoot":"","sources":["../../src/core/artist.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"artist.js","sourceRoot":"","sources":["../../src/core/artist.ts"],"names":[],"mappings":"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"}
|
package/dist/core/sanity.d.ts
CHANGED
|
@@ -26,11 +26,11 @@ export declare function createSanityPost(client: SanityClient, plan: BlogPlan, p
|
|
|
26
26
|
_type: 'reference';
|
|
27
27
|
_ref: string;
|
|
28
28
|
};
|
|
29
|
-
}, postDate: Date, documentType?: string): Promise<any>;
|
|
29
|
+
} | null, postDate: Date, documentType?: string): Promise<any>;
|
|
30
30
|
/**
|
|
31
31
|
* Upload a complete blog post with image to Sanity
|
|
32
32
|
*/
|
|
33
|
-
export declare function uploadToSanity(config: SeshatConfig, plan: BlogPlan, portableTextBody: any[], imagePath: string, postDate: Date): Promise<{
|
|
33
|
+
export declare function uploadToSanity(config: SeshatConfig, plan: BlogPlan, portableTextBody: any[], imagePath: string | null, postDate: Date): Promise<{
|
|
34
34
|
documentId: string;
|
|
35
35
|
slug: string;
|
|
36
36
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sanity.d.ts","sourceRoot":"","sources":["../../src/core/sanity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,YAAY,CAoBxG;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,CAe1E;AAGD;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,QAAQ,EACd,gBAAgB,EAAE,GAAG,EAAE,EACvB,QAAQ,EAAE;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"sanity.d.ts","sourceRoot":"","sources":["../../src/core/sanity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,YAAY,CAoBxG;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,CAe1E;AAGD;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,QAAQ,EACd,gBAAgB,EAAE,GAAG,EAAE,EACvB,QAAQ,EAAE;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAAG,IAAI,EAChF,QAAQ,EAAE,IAAI,EACd,YAAY,GAAE,MAAe,GAC5B,OAAO,CAAC,GAAG,CAAC,CAsBd;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,QAAQ,EACd,gBAAgB,EAAE,GAAG,EAAE,EACvB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,QAAQ,EAAE,IAAI,GACb,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CA4B/C"}
|
package/dist/core/sanity.js
CHANGED
|
@@ -53,10 +53,13 @@ export async function createSanityPost(client, plan, portableTextBody, imageRef,
|
|
|
53
53
|
date: postDate.toISOString().split('T')[0], // YYYY-MM-DD format
|
|
54
54
|
tag: plan.tags[0] || 'general',
|
|
55
55
|
published: false, // Default to unpublished for review
|
|
56
|
-
image: imageRef,
|
|
57
|
-
imageAlt: `Header image for ${plan.title}`,
|
|
58
56
|
body: portableTextBody,
|
|
59
57
|
};
|
|
58
|
+
// Only add image fields if image is provided
|
|
59
|
+
if (imageRef) {
|
|
60
|
+
doc.image = imageRef;
|
|
61
|
+
doc.imageAlt = `Header image for ${plan.title}`;
|
|
62
|
+
}
|
|
60
63
|
return await client.create(doc);
|
|
61
64
|
}
|
|
62
65
|
/**
|
|
@@ -64,8 +67,11 @@ export async function createSanityPost(client, plan, portableTextBody, imageRef,
|
|
|
64
67
|
*/
|
|
65
68
|
export async function uploadToSanity(config, plan, portableTextBody, imagePath, postDate) {
|
|
66
69
|
const client = getSanityClient(config);
|
|
67
|
-
// Upload the image
|
|
68
|
-
|
|
70
|
+
// Upload the image if provided
|
|
71
|
+
let imageRef = null;
|
|
72
|
+
if (imagePath) {
|
|
73
|
+
imageRef = await uploadImageToSanity(client, imagePath, `Header image for ${plan.title}`);
|
|
74
|
+
}
|
|
69
75
|
// Create the post document
|
|
70
76
|
const documentType = config.sanity?.documentType || 'post';
|
|
71
77
|
const result = await createSanityPost(client, plan, portableTextBody, imageRef, postDate, documentType);
|
package/dist/core/sanity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sanity.js","sourceRoot":"","sources":["../../src/core/sanity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,MAAM,aAAa,CAAC;AAI7B;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB,EAAE,UAAkC,EAAE;IACxF,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IAED,4DAA4D;IAC5D,0CAA0C;IAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAE7C,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC5F,CAAC;IAED,OAAO,YAAY,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS;QAClC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;QAC9B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,YAAY;QACpD,KAAK,EAAE,KAAK,IAAI,SAAS;QACzB,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,8BAA8B;KACzD,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAoB,EACpB,SAAiB,EACjB,QAAgB;IAEhB,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAEjD,0BAA0B;IAC1B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE;QAC7D,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,WAAW;KACpD,CAAC,CAAC;IAEH,OAAO;QACL,KAAK,EAAE,OAAO;QACd,KAAK,EAAE;YACL,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,KAAK,CAAC,GAAG;SAChB;KACF,CAAC;AACJ,CAAC;AAGD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAoB,EACpB,IAAc,EACd,gBAAuB,EACvB,
|
|
1
|
+
{"version":3,"file":"sanity.js","sourceRoot":"","sources":["../../src/core/sanity.ts"],"names":[],"mappings":"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"}
|
package/dist/core/writer.d.ts
CHANGED
|
@@ -3,5 +3,5 @@ import type { SeshatConfig } from '../config.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* Use Gemini to write a complete MDX blog post
|
|
5
5
|
*/
|
|
6
|
-
export declare function writeBlogPost(config: SeshatConfig, plan: BlogPlan, postDate?: Date): Promise<string>;
|
|
6
|
+
export declare function writeBlogPost(config: SeshatConfig, plan: BlogPlan, postDate?: Date, imagePath?: string | null): Promise<string>;
|
|
7
7
|
//# sourceMappingURL=writer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/core/writer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAmBjD;;GAEG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,QAAQ,EACd,QAAQ,GAAE,IAAiB,
|
|
1
|
+
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/core/writer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAmBjD;;GAEG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,QAAQ,EACd,QAAQ,GAAE,IAAiB,EAC3B,SAAS,GAAE,MAAM,GAAG,IAA0B,GAC7C,OAAO,CAAC,MAAM,CAAC,CAmHjB"}
|
package/dist/core/writer.js
CHANGED
|
@@ -18,7 +18,7 @@ const OPENING_STYLES = [
|
|
|
18
18
|
/**
|
|
19
19
|
* Use Gemini to write a complete MDX blog post
|
|
20
20
|
*/
|
|
21
|
-
export async function writeBlogPost(config, plan, postDate = new Date()) {
|
|
21
|
+
export async function writeBlogPost(config, plan, postDate = new Date(), imagePath = 'PLACEHOLDER_IMAGE') {
|
|
22
22
|
const ai = createGenAIClient();
|
|
23
23
|
// Pick the first tag from the plan
|
|
24
24
|
const primaryTag = plan.tags[0] || 'general';
|
|
@@ -32,7 +32,7 @@ export async function writeBlogPost(config, plan, postDate = new Date()) {
|
|
|
32
32
|
description: plan.description,
|
|
33
33
|
date: postDate,
|
|
34
34
|
tag: primaryTag,
|
|
35
|
-
imagePath
|
|
35
|
+
imagePath,
|
|
36
36
|
});
|
|
37
37
|
const opening = pickOne(OPENING_STYLES);
|
|
38
38
|
// Build generation instructions
|
package/dist/core/writer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writer.js","sourceRoot":"","sources":["../../src/core/writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAIzD,MAAM,WAAW,GAAG,wBAAwB,CAAC;AAE7C,SAAS,OAAO,CAAI,GAAQ;IAC1B,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,cAAc,GAA8B;IAChD,EAAE,WAAW,EAAE,6DAA6D,EAAE;IAC9E,EAAE,WAAW,EAAE,iDAAiD,EAAE;IAClE,EAAE,WAAW,EAAE,wDAAwD,EAAE;IACzE,EAAE,WAAW,EAAE,sFAAsF,EAAE;IACvG,EAAE,WAAW,EAAE,qGAAqG,EAAE;IACtH,EAAE,WAAW,EAAE,gFAAgF,EAAE;IACjG,EAAE,WAAW,EAAE,mEAAmE,EAAE;IACpF,EAAE,WAAW,EAAE,qFAAqF,EAAE;CACvG,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAoB,EACpB,IAAc,EACd,WAAiB,IAAI,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"writer.js","sourceRoot":"","sources":["../../src/core/writer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../../src/lib/frontmatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CA2B9D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMxD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE;IACN,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../../src/lib/frontmatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CA2B9D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMxD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE;IACN,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,GACA,MAAM,CAgDR;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,MAAM,GAChB,MAAM,CAyBR;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAKnE"}
|
package/dist/lib/frontmatter.js
CHANGED
|
@@ -56,9 +56,11 @@ export function buildFrontmatter(config, values) {
|
|
|
56
56
|
// Taxonomy field (tag/category)
|
|
57
57
|
const taxonomyField = config.taxonomyField || 'tag';
|
|
58
58
|
lines.push(`${taxonomyField}: ${values.tag}`);
|
|
59
|
-
// Image field (with custom field name)
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
// Image field (with custom field name) - only if image exists
|
|
60
|
+
if (values.imagePath) {
|
|
61
|
+
const imageField = config.imageField || 'image';
|
|
62
|
+
lines.push(`${imageField}: "${values.imagePath}"`);
|
|
63
|
+
}
|
|
62
64
|
// Additional custom fields
|
|
63
65
|
if (config.additionalFields) {
|
|
64
66
|
for (const [key, value] of Object.entries(config.additionalFields)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../src/lib/frontmatter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../src/lib/frontmatter.ts"],"names":[],"mappings":"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"}
|