@llm-newsletter-kit/core 1.3.7 → 1.3.8

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/index.cjs CHANGED
@@ -173,7 +173,7 @@ class AnalyzeImages extends LLMQuery {
173
173
  schema = zod.z.object({
174
174
  imageContext: zod.z
175
175
  .string()
176
- .describe('A comprehensive description of all information extracted from the images'),
176
+ .describe('A high-level overview of the general theme, mood, and context conveyed by the images (without specific names, titles, or exact figures from text within images)'),
177
177
  });
178
178
  constructor(config) {
179
179
  super(config);
@@ -211,29 +211,36 @@ You are a specialized image analysis expert in: ${this.expertFields.join(', ')}
211
211
  ## Core Responsibilities
212
212
  1. Extract visual information unavailable from text alone
213
213
  2. Identify industry-specific elements, facilities, and stakeholders
214
- 3. Accurately read and transcribe text, charts, and data visualizations
214
+ 3. Summarize the general theme and context of charts, data visualizations, and text within images at a high level
215
215
  4. Synthesize visual information with article context
216
216
 
217
+ ## Critical Rule: NO Detailed Text Transcription
218
+ - Do NOT transcribe specific names, titles, numbers, dates, or exact phrases from text within images
219
+ - Instead, describe WHAT KIND of information is present (e.g., "a conference poster listing multiple speaker sessions" instead of transcribing each speaker's name and talk title)
220
+ - Specific text in images is prone to misreading — only describe the general nature and purpose of such text
221
+ - Focus on the overall theme, mood, and context that the images convey
222
+
217
223
  ## Analysis Framework
218
224
 
219
225
  ### Information Categories to Extract
220
226
  - Industry-relevant visual elements
221
- - Text and numerical data within images
222
- - Key subjects (people, places, objects, infrastructure)
227
+ - General theme and purpose of text/data shown in images (without exact transcription)
228
+ - Key subjects (people, places, objects, infrastructure) described at a general level
223
229
  - Contextual relationships to ${this.expertFields.join(', ')}
224
230
  - Information gaps filled by visual analysis
225
231
 
226
232
  ### Quality Standards
227
- - Accuracy and specificity in descriptions
233
+ - High-level accuracy in describing the overall context
228
234
  - Professional relevance for industry practitioners
229
235
  - Integration with accompanying text content
230
- - Completeness in covering all visual information
236
+ - Preference for general descriptions over specific details from image text
231
237
 
232
238
  ## Output Specifications
233
239
  - Language: ${this.options.content.outputLanguage}
234
240
  - Format: Single cohesive explanation (not numbered list)
235
- - Focus: Practical insights for industry professionals
236
- - Integration: Seamlessly merge all extracted information`;
241
+ - Focus: High-level context and practical insights for industry professionals
242
+ - Integration: Seamlessly merge all extracted information
243
+ - Granularity: Describe the general nature of visual content — avoid quoting specific names, titles, figures, or exact text from images`;
237
244
  }
238
245
  get imageUrls() {
239
246
  // Markdown image pattern: ![alt text](url) or ![](url)
@@ -280,9 +287,9 @@ Analyze the provided images and synthesize your findings into a single comprehen
280
287
 
281
288
  1. **Identifies Visual Content**: Extract industry-specific elements, infrastructure, and stakeholders relevant to ${this.expertFields.join(', ')}
282
289
 
283
- 2. **Captures Text & Data**: Accurately read and include all visible text, numerical data, charts, and graphs
290
+ 2. **Summarizes Visual Text & Data**: Describe the general theme and purpose of any text, numerical data, charts, or graphs shown in images — do NOT transcribe specific names, titles, exact numbers, or quoted phrases
284
291
 
285
- 3. **Describes Visual Elements**: Detail important subjects (people, places, objects) and their significance
292
+ 3. **Describes Visual Elements**: Detail important subjects (people, places, objects) and their significance at a general level
286
293
 
287
294
  4. **Establishes Connections**: Link visual information to ${this.expertFields.join(', ')} context and article content
288
295
 
@@ -290,6 +297,8 @@ Analyze the provided images and synthesize your findings into a single comprehen
290
297
 
291
298
  6. **Complements Text**: Add visual insights not covered in the article text
292
299
 
300
+ **Important**: Do NOT attempt to exactly transcribe text within images (names, titles, numbers, dates). Instead, describe what kind of information is shown. Exact text from images is unreliable and may contain errors.
301
+
293
302
  **Format**: Present all findings as one flowing narrative without enumeration.`,
294
303
  };
295
304
  }
@@ -977,6 +986,7 @@ Important rule for displaying date ranges: When displaying date ranges, you must
977
986
  4. **Verifiable Information**: All information must be directly verifiable from the provided sources.
978
987
  5. **No Speculation**: Do not use speculative expressions like "appears to be" or "is expected to".
979
988
  6. **No Fictional Standards/Policies**: Do not mention non-existent standards/policies or systems incorrectly reported as planned for future implementation.
989
+ 7. **Image Analysis as Supplementary Context Only**: Image analysis results are provided solely for understanding the general visual context of articles. Do NOT quote specific names, titles, numbers, or detailed facts from image analysis in the newsletter body — these may contain inaccuracies. Only use image analysis to understand the broad theme or mood of the article's visual content.
980
990
 
981
991
  Roles:
982
992
  - Friendly Guide: Deliver information like a trusted colleague rather than a rigid expert. Use appropriate emoticons in titles and section headings to improve readability.
@@ -1099,7 +1109,7 @@ ${this.targetArticles
1099
1109
  **Tags:** ${[post.tag1, post.tag2, post.tag3].filter(Boolean).join(', ')}
1100
1110
  **Content Type:** ${post.contentType}
1101
1111
  **URL:** ${post.url}
1102
- ${post.imageContextByLlm ? `**Image Analysis:** ${post.imageContextByLlm}` : ''}
1112
+ ${post.imageContextByLlm ? `**Image Analysis (supplementary context only — do not cite specific details from this in the newsletter):** ${post.imageContextByLlm}` : ''}
1103
1113
  `)
1104
1114
  .join('\n\n')}
1105
1115
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index.js CHANGED
@@ -171,7 +171,7 @@ class AnalyzeImages extends LLMQuery {
171
171
  schema = z.object({
172
172
  imageContext: z
173
173
  .string()
174
- .describe('A comprehensive description of all information extracted from the images'),
174
+ .describe('A high-level overview of the general theme, mood, and context conveyed by the images (without specific names, titles, or exact figures from text within images)'),
175
175
  });
176
176
  constructor(config) {
177
177
  super(config);
@@ -209,29 +209,36 @@ You are a specialized image analysis expert in: ${this.expertFields.join(', ')}
209
209
  ## Core Responsibilities
210
210
  1. Extract visual information unavailable from text alone
211
211
  2. Identify industry-specific elements, facilities, and stakeholders
212
- 3. Accurately read and transcribe text, charts, and data visualizations
212
+ 3. Summarize the general theme and context of charts, data visualizations, and text within images at a high level
213
213
  4. Synthesize visual information with article context
214
214
 
215
+ ## Critical Rule: NO Detailed Text Transcription
216
+ - Do NOT transcribe specific names, titles, numbers, dates, or exact phrases from text within images
217
+ - Instead, describe WHAT KIND of information is present (e.g., "a conference poster listing multiple speaker sessions" instead of transcribing each speaker's name and talk title)
218
+ - Specific text in images is prone to misreading — only describe the general nature and purpose of such text
219
+ - Focus on the overall theme, mood, and context that the images convey
220
+
215
221
  ## Analysis Framework
216
222
 
217
223
  ### Information Categories to Extract
218
224
  - Industry-relevant visual elements
219
- - Text and numerical data within images
220
- - Key subjects (people, places, objects, infrastructure)
225
+ - General theme and purpose of text/data shown in images (without exact transcription)
226
+ - Key subjects (people, places, objects, infrastructure) described at a general level
221
227
  - Contextual relationships to ${this.expertFields.join(', ')}
222
228
  - Information gaps filled by visual analysis
223
229
 
224
230
  ### Quality Standards
225
- - Accuracy and specificity in descriptions
231
+ - High-level accuracy in describing the overall context
226
232
  - Professional relevance for industry practitioners
227
233
  - Integration with accompanying text content
228
- - Completeness in covering all visual information
234
+ - Preference for general descriptions over specific details from image text
229
235
 
230
236
  ## Output Specifications
231
237
  - Language: ${this.options.content.outputLanguage}
232
238
  - Format: Single cohesive explanation (not numbered list)
233
- - Focus: Practical insights for industry professionals
234
- - Integration: Seamlessly merge all extracted information`;
239
+ - Focus: High-level context and practical insights for industry professionals
240
+ - Integration: Seamlessly merge all extracted information
241
+ - Granularity: Describe the general nature of visual content — avoid quoting specific names, titles, figures, or exact text from images`;
235
242
  }
236
243
  get imageUrls() {
237
244
  // Markdown image pattern: ![alt text](url) or ![](url)
@@ -278,9 +285,9 @@ Analyze the provided images and synthesize your findings into a single comprehen
278
285
 
279
286
  1. **Identifies Visual Content**: Extract industry-specific elements, infrastructure, and stakeholders relevant to ${this.expertFields.join(', ')}
280
287
 
281
- 2. **Captures Text & Data**: Accurately read and include all visible text, numerical data, charts, and graphs
288
+ 2. **Summarizes Visual Text & Data**: Describe the general theme and purpose of any text, numerical data, charts, or graphs shown in images — do NOT transcribe specific names, titles, exact numbers, or quoted phrases
282
289
 
283
- 3. **Describes Visual Elements**: Detail important subjects (people, places, objects) and their significance
290
+ 3. **Describes Visual Elements**: Detail important subjects (people, places, objects) and their significance at a general level
284
291
 
285
292
  4. **Establishes Connections**: Link visual information to ${this.expertFields.join(', ')} context and article content
286
293
 
@@ -288,6 +295,8 @@ Analyze the provided images and synthesize your findings into a single comprehen
288
295
 
289
296
  6. **Complements Text**: Add visual insights not covered in the article text
290
297
 
298
+ **Important**: Do NOT attempt to exactly transcribe text within images (names, titles, numbers, dates). Instead, describe what kind of information is shown. Exact text from images is unreliable and may contain errors.
299
+
291
300
  **Format**: Present all findings as one flowing narrative without enumeration.`,
292
301
  };
293
302
  }
@@ -975,6 +984,7 @@ Important rule for displaying date ranges: When displaying date ranges, you must
975
984
  4. **Verifiable Information**: All information must be directly verifiable from the provided sources.
976
985
  5. **No Speculation**: Do not use speculative expressions like "appears to be" or "is expected to".
977
986
  6. **No Fictional Standards/Policies**: Do not mention non-existent standards/policies or systems incorrectly reported as planned for future implementation.
987
+ 7. **Image Analysis as Supplementary Context Only**: Image analysis results are provided solely for understanding the general visual context of articles. Do NOT quote specific names, titles, numbers, or detailed facts from image analysis in the newsletter body — these may contain inaccuracies. Only use image analysis to understand the broad theme or mood of the article's visual content.
978
988
 
979
989
  Roles:
980
990
  - Friendly Guide: Deliver information like a trusted colleague rather than a rigid expert. Use appropriate emoticons in titles and section headings to improve readability.
@@ -1097,7 +1107,7 @@ ${this.targetArticles
1097
1107
  **Tags:** ${[post.tag1, post.tag2, post.tag3].filter(Boolean).join(', ')}
1098
1108
  **Content Type:** ${post.contentType}
1099
1109
  **URL:** ${post.url}
1100
- ${post.imageContextByLlm ? `**Image Analysis:** ${post.imageContextByLlm}` : ''}
1110
+ ${post.imageContextByLlm ? `**Image Analysis (supplementary context only — do not cite specific details from this in the newsletter):** ${post.imageContextByLlm}` : ''}
1101
1111
  `)
1102
1112
  .join('\n\n')}
1103
1113
 
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@llm-newsletter-kit/core",
3
3
  "private": false,
4
4
  "type": "module",
5
- "version": "1.3.7",
5
+ "version": "1.3.8",
6
6
  "description": "An extensible framework to automate your entire newsletter workflow. Handles data collection, LLM-based content analysis, and email generation, letting you focus on your unique domain logic.",
7
7
  "main": "dist/index.cjs",
8
8
  "module": "dist/index.js",
@@ -48,35 +48,35 @@
48
48
  "author": "kimhongyeon",
49
49
  "license": "Apache-2.0",
50
50
  "dependencies": {
51
- "@langchain/core": "^1.1.32",
52
- "ai": "^6.0.116",
51
+ "@langchain/core": "^1.1.35",
52
+ "ai": "^6.0.134",
53
53
  "es-toolkit": "^1.45.1",
54
- "jsdom": "^29.0.0",
54
+ "jsdom": "^29.0.1",
55
55
  "juice": "^11.1.1",
56
56
  "safe-markdown2html": "^1.0.1",
57
57
  "zod": "^4.3.6"
58
58
  },
59
59
  "devDependencies": {
60
- "@ai-sdk/anthropic": "^3.0.58",
61
- "@ai-sdk/google": "^3.0.43",
62
- "@ai-sdk/openai": "^3.0.41",
63
- "@ai-sdk/togetherai": "^2.0.39",
60
+ "@ai-sdk/anthropic": "^3.0.63",
61
+ "@ai-sdk/google": "^3.0.52",
62
+ "@ai-sdk/openai": "^3.0.47",
63
+ "@ai-sdk/togetherai": "^2.0.41",
64
64
  "@eslint/js": "^10.0.1",
65
65
  "@trivago/prettier-plugin-sort-imports": "^6.0.2",
66
- "@types/jsdom": "^28.0.0",
66
+ "@types/jsdom": "^28.0.1",
67
67
  "@types/node": "^25.5.0",
68
68
  "@vitest/coverage-v8": "^4.1.0",
69
69
  "@vitest/expect": "^4.1.0",
70
- "eslint": "^10.0.3",
70
+ "eslint": "^10.1.0",
71
71
  "eslint-plugin-unused-imports": "^4.4.1",
72
72
  "prettier": "^3.8.1",
73
73
  "rimraf": "^6.1.3",
74
- "rollup": "^4.59.0",
75
- "rollup-plugin-dts": "^6.4.0",
74
+ "rollup": "^4.60.0",
75
+ "rollup-plugin-dts": "^6.4.1",
76
76
  "rollup-plugin-typescript2": "^0.36.0",
77
77
  "tsx": "^4.21.0",
78
78
  "typescript": "^5.9.3",
79
- "typescript-eslint": "^8.57.0",
79
+ "typescript-eslint": "^8.57.1",
80
80
  "vitest": "^4.1.0"
81
81
  },
82
82
  "repository": {