n8n-nodes-adeu 1.7.1 → 1.7.3
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 +72 -72
- package/dist/nodes/Adeu/Adeu.node.json +13 -13
- package/dist/nodes/Adeu/adeu.svg +4 -4
- package/package.json +63 -60
package/README.md
CHANGED
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
# n8n-nodes-adeu
|
|
2
|
-
|
|
3
|
-
[](https://www.npmjs.com/package/n8n-nodes-adeu)
|
|
4
|
-
[](https://opensource.org/licenses/MIT)
|
|
5
|
-
|
|
6
|
-
An [n8n](https://n8n.io) community node for **[Adeu](https://adeu.ai)** — the Virtual DOM for Microsoft Word.
|
|
7
|
-
|
|
8
|
-
This node lets your n8n workflows apply AI-driven tracked changes, extract LLM-friendly Markdown, generate diffs, and sanitize `.docx` documents — all without leaving the n8n canvas.
|
|
9
|
-
|
|
10
|
-
It is a thin wrapper around the [`@adeu/core`](https://www.npmjs.com/package/@adeu/core) TypeScript engine, which executes entirely in-process. Your documents never leave the n8n runtime.
|
|
11
|
-
|
|
12
|
-
## Installation
|
|
13
|
-
|
|
14
|
-
Follow n8n's [community nodes installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) and install `n8n-nodes-adeu`.
|
|
15
|
-
|
|
16
|
-
## Operations
|
|
17
|
-
|
|
18
|
-
The node exposes one resource (**Document**) with four operations:
|
|
19
|
-
|
|
20
|
-
### Extract Markdown
|
|
21
|
-
Project a `.docx` into LLM-friendly CriticMarkup (with a Semantic Appendix of defined terms, cross-references, and likely typos).
|
|
22
|
-
- **Input**: `.docx` binary
|
|
23
|
-
- **Output**: JSON `{ markdown, fileName, cleanView }`
|
|
24
|
-
- Use `Clean View = true` to simulate "Accept All Changes" before extraction.
|
|
25
|
-
|
|
26
|
-
### Apply Edits
|
|
27
|
-
Apply a batch of `DocumentChange` operations as native Word tracked changes and comments.
|
|
28
|
-
- **Input**: `.docx` binary + a `changes` array (from upstream JSON or defined inline)
|
|
29
|
-
- **Output**: redlined `.docx` binary + JSON stats
|
|
30
|
-
- Supported change types: `modify`, `accept`, `reject`, `reply`, `insert_row`, `delete_row`
|
|
31
|
-
|
|
32
|
-
The typical pipeline is: **Read DOCX → LLM Node → Adeu (Apply Edits) → Send Email**, where the LLM outputs a JSON array of edits matching the `DocumentChange` schema from [`@adeu/core`](https://github.com/dealfluence/adeu/tree/main/node/packages/core).
|
|
33
|
-
|
|
34
|
-
### Generate Diff
|
|
35
|
-
Produce a sub-word level `@@ Word Patch @@` diff between two `.docx` documents.
|
|
36
|
-
- **Input**: two `.docx` binaries on the same item (defaults: `data` and `data2`)
|
|
37
|
-
- **Output**: JSON `{ diff, originalFileName, modifiedFileName }`
|
|
38
|
-
|
|
39
|
-
### Finalize Document
|
|
40
|
-
Strip metadata (author names, internal IDs, RSIDs, custom XML), optionally accept all tracked changes, and optionally lock the document read-only.
|
|
41
|
-
- **Input**: `.docx` binary
|
|
42
|
-
- **Output**: finalized `.docx` binary + a human-readable sanitization report
|
|
43
|
-
|
|
44
|
-
## Example Workflow
|
|
45
|
-
|
|
46
|
-
```
|
|
47
|
-
[ Read Binary File ]
|
|
48
|
-
│
|
|
49
|
-
▼
|
|
50
|
-
[ AI Agent / OpenAI ] ← outputs { changes: [...] }
|
|
51
|
-
│
|
|
52
|
-
▼
|
|
53
|
-
[ Adeu — Apply Edits ] ← reads changes from input JSON
|
|
54
|
-
│
|
|
55
|
-
▼
|
|
56
|
-
[ Adeu — Finalize Document ]
|
|
57
|
-
│
|
|
58
|
-
▼
|
|
59
|
-
[ Send Email (with attachment) ]
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
## Error Handling
|
|
63
|
-
|
|
64
|
-
When `@adeu/core` rejects an edit, this node surfaces a structured `NodeApiError` with both *what happened* and *how to fix it* — e.g.:
|
|
65
|
-
- "An edit could not be applied: target text not found." → verify exact punctuation/whitespace
|
|
66
|
-
- "An edit matched multiple locations in the document." → add surrounding context to `target_text`
|
|
67
|
-
- "The document could not be opened." → verify the binary is `.docx`, not `.doc`/`.pdf`
|
|
68
|
-
|
|
69
|
-
Enable n8n's **Continue On Fail** to keep batch workflows running through partial errors.
|
|
70
|
-
|
|
71
|
-
## License
|
|
72
|
-
|
|
1
|
+
# n8n-nodes-adeu
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/n8n-nodes-adeu)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
|
|
6
|
+
An [n8n](https://n8n.io) community node for **[Adeu](https://adeu.ai)** — the Virtual DOM for Microsoft Word.
|
|
7
|
+
|
|
8
|
+
This node lets your n8n workflows apply AI-driven tracked changes, extract LLM-friendly Markdown, generate diffs, and sanitize `.docx` documents — all without leaving the n8n canvas.
|
|
9
|
+
|
|
10
|
+
It is a thin wrapper around the [`@adeu/core`](https://www.npmjs.com/package/@adeu/core) TypeScript engine, which executes entirely in-process. Your documents never leave the n8n runtime.
|
|
11
|
+
|
|
12
|
+
## Installation
|
|
13
|
+
|
|
14
|
+
Follow n8n's [community nodes installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) and install `n8n-nodes-adeu`.
|
|
15
|
+
|
|
16
|
+
## Operations
|
|
17
|
+
|
|
18
|
+
The node exposes one resource (**Document**) with four operations:
|
|
19
|
+
|
|
20
|
+
### Extract Markdown
|
|
21
|
+
Project a `.docx` into LLM-friendly CriticMarkup (with a Semantic Appendix of defined terms, cross-references, and likely typos).
|
|
22
|
+
- **Input**: `.docx` binary
|
|
23
|
+
- **Output**: JSON `{ markdown, fileName, cleanView }`
|
|
24
|
+
- Use `Clean View = true` to simulate "Accept All Changes" before extraction.
|
|
25
|
+
|
|
26
|
+
### Apply Edits
|
|
27
|
+
Apply a batch of `DocumentChange` operations as native Word tracked changes and comments.
|
|
28
|
+
- **Input**: `.docx` binary + a `changes` array (from upstream JSON or defined inline)
|
|
29
|
+
- **Output**: redlined `.docx` binary + JSON stats
|
|
30
|
+
- Supported change types: `modify`, `accept`, `reject`, `reply`, `insert_row`, `delete_row`
|
|
31
|
+
|
|
32
|
+
The typical pipeline is: **Read DOCX → LLM Node → Adeu (Apply Edits) → Send Email**, where the LLM outputs a JSON array of edits matching the `DocumentChange` schema from [`@adeu/core`](https://github.com/dealfluence/adeu/tree/main/node/packages/core).
|
|
33
|
+
|
|
34
|
+
### Generate Diff
|
|
35
|
+
Produce a sub-word level `@@ Word Patch @@` diff between two `.docx` documents.
|
|
36
|
+
- **Input**: two `.docx` binaries on the same item (defaults: `data` and `data2`)
|
|
37
|
+
- **Output**: JSON `{ diff, originalFileName, modifiedFileName }`
|
|
38
|
+
|
|
39
|
+
### Finalize Document
|
|
40
|
+
Strip metadata (author names, internal IDs, RSIDs, custom XML), optionally accept all tracked changes, and optionally lock the document read-only.
|
|
41
|
+
- **Input**: `.docx` binary
|
|
42
|
+
- **Output**: finalized `.docx` binary + a human-readable sanitization report
|
|
43
|
+
|
|
44
|
+
## Example Workflow
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
[ Read Binary File ]
|
|
48
|
+
│
|
|
49
|
+
▼
|
|
50
|
+
[ AI Agent / OpenAI ] ← outputs { changes: [...] }
|
|
51
|
+
│
|
|
52
|
+
▼
|
|
53
|
+
[ Adeu — Apply Edits ] ← reads changes from input JSON
|
|
54
|
+
│
|
|
55
|
+
▼
|
|
56
|
+
[ Adeu — Finalize Document ]
|
|
57
|
+
│
|
|
58
|
+
▼
|
|
59
|
+
[ Send Email (with attachment) ]
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Error Handling
|
|
63
|
+
|
|
64
|
+
When `@adeu/core` rejects an edit, this node surfaces a structured `NodeApiError` with both *what happened* and *how to fix it* — e.g.:
|
|
65
|
+
- "An edit could not be applied: target text not found." → verify exact punctuation/whitespace
|
|
66
|
+
- "An edit matched multiple locations in the document." → add surrounding context to `target_text`
|
|
67
|
+
- "The document could not be opened." → verify the binary is `.docx`, not `.doc`/`.pdf`
|
|
68
|
+
|
|
69
|
+
Enable n8n's **Continue On Fail** to keep batch workflows running through partial errors.
|
|
70
|
+
|
|
71
|
+
## License
|
|
72
|
+
|
|
73
73
|
MIT — see [LICENSE](../../../LICENSE).
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
{
|
|
2
|
-
"node": "n8n-nodes-adeu.adeu",
|
|
3
|
-
"nodeVersion": "1.0",
|
|
4
|
-
"codexVersion": "1.0",
|
|
5
|
-
"categories": ["Productivity", "Utility"],
|
|
6
|
-
"resources": {
|
|
7
|
-
"primaryDocumentation": [
|
|
8
|
-
{
|
|
9
|
-
"url": "https://github.com/dealfluence/adeu#readme"
|
|
10
|
-
}
|
|
11
|
-
]
|
|
12
|
-
}
|
|
13
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"node": "n8n-nodes-adeu.adeu",
|
|
3
|
+
"nodeVersion": "1.0",
|
|
4
|
+
"codexVersion": "1.0",
|
|
5
|
+
"categories": ["Productivity", "Utility"],
|
|
6
|
+
"resources": {
|
|
7
|
+
"primaryDocumentation": [
|
|
8
|
+
{
|
|
9
|
+
"url": "https://github.com/dealfluence/adeu#readme"
|
|
10
|
+
}
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
}
|
package/dist/nodes/Adeu/adeu.svg
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<svg width="241" height="241" viewBox="0 0 241 241" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
-
<rect width="241" height="241" fill="#1E2028"/>
|
|
3
|
-
<path d="M173.505 155.679C175.621 155.674 177.531 154.795 178.894 153.384C180.257 151.974 181 150.195 181 148.169V93.9063C181 91.8323 180.16 89.9548 178.802 88.5966C177.444 87.2369 175.566 86.3964 173.492 86.3964C171.764 86.3964 168.079 86.3964 164.644 86.3964C162.569 86.3964 160.692 85.5543 159.332 84.1946C157.972 82.8348 157.134 80.9557 157.135 78.8801L157.143 67.4971C157.14 65.4263 156.298 63.552 154.938 62.1954C153.58 60.8389 151.705 60 149.634 60H72.97V86.3916H143.115C145.186 86.3916 145.791 89.215 143.905 90.065L81.7717 116.337C70.1324 121.265 61 132.732 61 147.369C61 166.563 76.5025 181 94.5932 181H149.632C151.888 181 153.911 180.006 155.287 178.432C156.442 177.112 157.142 175.384 157.142 173.492V163.187C157.142 161.113 157.984 159.237 159.342 157.878C160.701 156.518 162.58 155.677 164.656 155.677H173.507L173.505 155.679ZM99.757 154.546C94.4159 154.546 91.1662 150.246 91.1662 146.105C91.1662 142.227 93.6298 139.4 96.2021 138.29L149.112 115.349C150.262 114.833 151.487 115.017 152.408 115.651C153.272 116.247 153.865 117.243 153.866 118.428L153.869 147.036C153.869 149.11 153.029 150.988 151.671 152.347C150.313 153.707 148.434 154.548 146.36 154.548H99.757V154.546Z" fill="#F0F0F0"/>
|
|
4
|
-
</svg>
|
|
1
|
+
<svg width="241" height="241" viewBox="0 0 241 241" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<rect width="241" height="241" fill="#1E2028"/>
|
|
3
|
+
<path d="M173.505 155.679C175.621 155.674 177.531 154.795 178.894 153.384C180.257 151.974 181 150.195 181 148.169V93.9063C181 91.8323 180.16 89.9548 178.802 88.5966C177.444 87.2369 175.566 86.3964 173.492 86.3964C171.764 86.3964 168.079 86.3964 164.644 86.3964C162.569 86.3964 160.692 85.5543 159.332 84.1946C157.972 82.8348 157.134 80.9557 157.135 78.8801L157.143 67.4971C157.14 65.4263 156.298 63.552 154.938 62.1954C153.58 60.8389 151.705 60 149.634 60H72.97V86.3916H143.115C145.186 86.3916 145.791 89.215 143.905 90.065L81.7717 116.337C70.1324 121.265 61 132.732 61 147.369C61 166.563 76.5025 181 94.5932 181H149.632C151.888 181 153.911 180.006 155.287 178.432C156.442 177.112 157.142 175.384 157.142 173.492V163.187C157.142 161.113 157.984 159.237 159.342 157.878C160.701 156.518 162.58 155.677 164.656 155.677H173.507L173.505 155.679ZM99.757 154.546C94.4159 154.546 91.1662 150.246 91.1662 146.105C91.1662 142.227 93.6298 139.4 96.2021 138.29L149.112 115.349C150.262 114.833 151.487 115.017 152.408 115.651C153.272 116.247 153.865 117.243 153.866 118.428L153.869 147.036C153.869 149.11 153.029 150.988 151.671 152.347C150.313 153.707 148.434 154.548 146.36 154.548H99.757V154.546Z" fill="#F0F0F0"/>
|
|
4
|
+
</svg>
|
package/package.json
CHANGED
|
@@ -1,60 +1,63 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "n8n-nodes-adeu",
|
|
3
|
-
"version": "1.7.
|
|
4
|
-
"description": "n8n community node for Adeu — apply AI-driven tracked changes, generate diffs, and sanitize Microsoft Word (.docx) documents.",
|
|
5
|
-
"keywords": [
|
|
6
|
-
"n8n-community-node-package",
|
|
7
|
-
"n8n",
|
|
8
|
-
"adeu",
|
|
9
|
-
"docx",
|
|
10
|
-
"word",
|
|
11
|
-
"redline",
|
|
12
|
-
"track-changes",
|
|
13
|
-
"diff",
|
|
14
|
-
"openxml"
|
|
15
|
-
],
|
|
16
|
-
"license": "MIT",
|
|
17
|
-
"homepage": "https://adeu.ai",
|
|
18
|
-
"author": {
|
|
19
|
-
"name": "Mikko Korpela",
|
|
20
|
-
"email": "mikko@adeu.ai"
|
|
21
|
-
},
|
|
22
|
-
"repository": {
|
|
23
|
-
"type": "git",
|
|
24
|
-
"url": "git+https://github.com/dealfluence/adeu.git",
|
|
25
|
-
"directory": "node/packages/n8n-nodes-adeu"
|
|
26
|
-
},
|
|
27
|
-
"
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
"
|
|
38
|
-
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
},
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
"@
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
|
|
60
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "n8n-nodes-adeu",
|
|
3
|
+
"version": "1.7.3",
|
|
4
|
+
"description": "n8n community node for Adeu — apply AI-driven tracked changes, generate diffs, and sanitize Microsoft Word (.docx) documents.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"n8n-community-node-package",
|
|
7
|
+
"n8n",
|
|
8
|
+
"adeu",
|
|
9
|
+
"docx",
|
|
10
|
+
"word",
|
|
11
|
+
"redline",
|
|
12
|
+
"track-changes",
|
|
13
|
+
"diff",
|
|
14
|
+
"openxml"
|
|
15
|
+
],
|
|
16
|
+
"license": "MIT",
|
|
17
|
+
"homepage": "https://adeu.ai",
|
|
18
|
+
"author": {
|
|
19
|
+
"name": "Mikko Korpela",
|
|
20
|
+
"email": "mikko@adeu.ai"
|
|
21
|
+
},
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "git+https://github.com/dealfluence/adeu.git",
|
|
25
|
+
"directory": "node/packages/n8n-nodes-adeu"
|
|
26
|
+
},
|
|
27
|
+
"engines": {
|
|
28
|
+
"node": ">=22.0.0"
|
|
29
|
+
},
|
|
30
|
+
"main": "dist/nodes/Adeu/Adeu.node.js",
|
|
31
|
+
"scripts": {
|
|
32
|
+
"build": "tsup && npm run copy-assets",
|
|
33
|
+
"copy-assets": "copyfiles -u 1 \"nodes/**/*.svg\" \"nodes/**/*.json\" dist/nodes/",
|
|
34
|
+
"dev": "tsup --watch",
|
|
35
|
+
"lint": "eslint nodes/**/*.ts",
|
|
36
|
+
"lintfix": "eslint nodes/**/*.ts --fix",
|
|
37
|
+
"test": "vitest run"
|
|
38
|
+
},
|
|
39
|
+
"files": [
|
|
40
|
+
"dist"
|
|
41
|
+
],
|
|
42
|
+
"n8n": {
|
|
43
|
+
"n8nNodesApiVersion": 1,
|
|
44
|
+
"nodes": [
|
|
45
|
+
"dist/nodes/Adeu/Adeu.node.js"
|
|
46
|
+
]
|
|
47
|
+
},
|
|
48
|
+
"peerDependencies": {
|
|
49
|
+
"n8n-workflow": "*"
|
|
50
|
+
},
|
|
51
|
+
"devDependencies": {
|
|
52
|
+
"@adeu/core": "^1.7.1",
|
|
53
|
+
"@n8n/eslint-plugin-community-nodes": "^0.15.0",
|
|
54
|
+
"@types/node": "^25.6.2",
|
|
55
|
+
"@typescript-eslint/parser": "^8.35.0",
|
|
56
|
+
"copyfiles": "^2.4.1",
|
|
57
|
+
"eslint": "^9.0.0",
|
|
58
|
+
"n8n-workflow": "^1.0.0",
|
|
59
|
+
"tsup": "^8.0.2",
|
|
60
|
+
"typescript": "^6.0.3",
|
|
61
|
+
"vitest": "^4.1.5"
|
|
62
|
+
}
|
|
63
|
+
}
|