@aigne/doc-smith 0.9.9-beta → 0.9.9-beta.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/CHANGELOG.md +12 -0
- package/agents/create/aggregate-document-structure.mjs +21 -0
- package/agents/create/analyze-diagram-type-llm.yaml +1 -2
- package/agents/create/analyze-diagram-type.mjs +160 -2
- package/agents/create/generate-diagram-image.yaml +31 -0
- package/agents/create/generate-structure.yaml +1 -12
- package/agents/create/replace-d2-with-image.mjs +12 -27
- package/agents/create/utils/merge-document-structures.mjs +9 -3
- package/agents/localize/index.yaml +4 -0
- package/agents/localize/save-doc-translation-or-skip.mjs +18 -0
- package/agents/localize/set-review-content.mjs +58 -0
- package/agents/localize/translate-diagram.yaml +62 -0
- package/agents/localize/translate-document-wrapper.mjs +34 -0
- package/agents/localize/translate-multilingual.yaml +15 -9
- package/agents/localize/translate-or-skip-diagram.mjs +52 -0
- package/agents/publish/translate-meta.mjs +58 -6
- package/agents/update/generate-diagram.yaml +25 -8
- package/agents/update/index.yaml +1 -8
- package/agents/update/save-and-translate-document.mjs +5 -1
- package/agents/update/update-single/update-single-document-detail.mjs +52 -10
- package/agents/utils/analyze-feedback-intent.mjs +197 -80
- package/agents/utils/check-detail-result.mjs +14 -1
- package/agents/utils/choose-docs.mjs +3 -43
- package/agents/utils/save-doc-translation.mjs +2 -33
- package/agents/utils/save-doc.mjs +3 -37
- package/aigne.yaml +2 -2
- package/package.json +1 -1
- package/prompts/detail/diagram/generate-image-user.md +49 -0
- package/utils/d2-utils.mjs +10 -3
- package/utils/delete-diagram-images.mjs +3 -3
- package/utils/diagram-version-utils.mjs +14 -0
- package/utils/image-compress.mjs +1 -1
- package/utils/sync-diagram-to-translations.mjs +3 -3
- package/utils/translate-diagram-images.mjs +790 -0
- package/agents/update/check-sync-image-flag.mjs +0 -55
- package/agents/update/sync-images-and-exit.mjs +0 -148
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import fs from "fs-extra";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Calculate timestamp for diagram image
|
|
5
|
+
* Uses file modification time (mtime) as the version identifier
|
|
6
|
+
* @param {string} imagePath - Absolute path to the image file
|
|
7
|
+
* @returns {Promise<string>} Unix timestamp in seconds (as string)
|
|
8
|
+
*/
|
|
9
|
+
export async function calculateImageTimestamp(imagePath) {
|
|
10
|
+
const stats = await fs.stat(imagePath);
|
|
11
|
+
// Use modification time, convert to Unix timestamp (seconds)
|
|
12
|
+
const timestamp = Math.floor(stats.mtimeMs / 1000);
|
|
13
|
+
return timestamp.toString();
|
|
14
|
+
}
|
package/utils/image-compress.mjs
CHANGED
|
@@ -68,7 +68,7 @@ export async function compressImage(inputPath, options = {}) {
|
|
|
68
68
|
|
|
69
69
|
return finalOutputPath;
|
|
70
70
|
} catch (error) {
|
|
71
|
-
debug(
|
|
71
|
+
debug(`❌ Failed to compress image ${inputPath}`, error);
|
|
72
72
|
// Return original path if compression fails
|
|
73
73
|
return inputPath;
|
|
74
74
|
}
|
|
@@ -61,12 +61,12 @@ async function findTranslationFiles(docPath, docsDir, locale) {
|
|
|
61
61
|
*/
|
|
62
62
|
function extractDiagramImagePaths(content) {
|
|
63
63
|
const images = [];
|
|
64
|
-
const matches = Array.from(content.matchAll(diagramImageWithPathRegex));
|
|
64
|
+
const matches = Array.from((content || "").matchAll(diagramImageWithPathRegex));
|
|
65
65
|
|
|
66
66
|
for (const match of matches) {
|
|
67
67
|
images.push({
|
|
68
|
-
path: match[
|
|
69
|
-
fullMatch: match[0],
|
|
68
|
+
path: match[4] || "",
|
|
69
|
+
fullMatch: match[0] || "",
|
|
70
70
|
index: match.index,
|
|
71
71
|
});
|
|
72
72
|
}
|