n8n-nodes-engram 0.2.0

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.
Files changed (154) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +334 -0
  3. package/dist/community/CommunityDetector.d.ts +11 -0
  4. package/dist/community/CommunityDetector.js +126 -0
  5. package/dist/community/CommunityDetector.js.map +1 -0
  6. package/dist/community/CommunitySummarizer.d.ts +8 -0
  7. package/dist/community/CommunitySummarizer.js +56 -0
  8. package/dist/community/CommunitySummarizer.js.map +1 -0
  9. package/dist/community/index.d.ts +2 -0
  10. package/dist/community/index.js +8 -0
  11. package/dist/community/index.js.map +1 -0
  12. package/dist/credentials/EngramExtractionApi.credentials.d.ts +8 -0
  13. package/dist/credentials/EngramExtractionApi.credentials.js +41 -0
  14. package/dist/credentials/EngramExtractionApi.credentials.js.map +1 -0
  15. package/dist/credentials/EngramNeo4jApi.credentials.d.ts +8 -0
  16. package/dist/credentials/EngramNeo4jApi.credentials.js +59 -0
  17. package/dist/credentials/EngramNeo4jApi.credentials.js.map +1 -0
  18. package/dist/descriptions.d.ts +4 -0
  19. package/dist/descriptions.js +41 -0
  20. package/dist/descriptions.js.map +1 -0
  21. package/dist/embeddings/EmbeddingService.d.ts +24 -0
  22. package/dist/embeddings/EmbeddingService.js +64 -0
  23. package/dist/embeddings/EmbeddingService.js.map +1 -0
  24. package/dist/embeddings/cosine.d.ts +1 -0
  25. package/dist/embeddings/cosine.js +21 -0
  26. package/dist/embeddings/cosine.js.map +1 -0
  27. package/dist/embeddings/index.d.ts +2 -0
  28. package/dist/embeddings/index.js +8 -0
  29. package/dist/embeddings/index.js.map +1 -0
  30. package/dist/extraction/ContradictionDetector.d.ts +11 -0
  31. package/dist/extraction/ContradictionDetector.js +35 -0
  32. package/dist/extraction/ContradictionDetector.js.map +1 -0
  33. package/dist/extraction/EntityDeduplicator.d.ts +17 -0
  34. package/dist/extraction/EntityDeduplicator.js +39 -0
  35. package/dist/extraction/EntityDeduplicator.js.map +1 -0
  36. package/dist/extraction/EntityExtractor.d.ts +11 -0
  37. package/dist/extraction/EntityExtractor.js +33 -0
  38. package/dist/extraction/EntityExtractor.js.map +1 -0
  39. package/dist/extraction/ExtractionPipeline.d.ts +24 -0
  40. package/dist/extraction/ExtractionPipeline.js +126 -0
  41. package/dist/extraction/ExtractionPipeline.js.map +1 -0
  42. package/dist/extraction/LlmClient.d.ts +36 -0
  43. package/dist/extraction/LlmClient.js +73 -0
  44. package/dist/extraction/LlmClient.js.map +1 -0
  45. package/dist/extraction/RelationshipExtractor.d.ts +12 -0
  46. package/dist/extraction/RelationshipExtractor.js +38 -0
  47. package/dist/extraction/RelationshipExtractor.js.map +1 -0
  48. package/dist/extraction/index.d.ts +6 -0
  49. package/dist/extraction/index.js +16 -0
  50. package/dist/extraction/index.js.map +1 -0
  51. package/dist/extraction/prompts.d.ts +16 -0
  52. package/dist/extraction/prompts.js +101 -0
  53. package/dist/extraction/prompts.js.map +1 -0
  54. package/dist/memory/EngramChatMemory.d.ts +42 -0
  55. package/dist/memory/EngramChatMemory.js +162 -0
  56. package/dist/memory/EngramChatMemory.js.map +1 -0
  57. package/dist/memory/EngramChatMessageHistory.d.ts +22 -0
  58. package/dist/memory/EngramChatMessageHistory.js +72 -0
  59. package/dist/memory/EngramChatMessageHistory.js.map +1 -0
  60. package/dist/memory/index.d.ts +2 -0
  61. package/dist/memory/index.js +8 -0
  62. package/dist/memory/index.js.map +1 -0
  63. package/dist/nodes/EngramAdmin/EngramAdmin.node.d.ts +5 -0
  64. package/dist/nodes/EngramAdmin/EngramAdmin.node.js +798 -0
  65. package/dist/nodes/EngramAdmin/EngramAdmin.node.js.map +1 -0
  66. package/dist/nodes/EngramAdmin/engram-admin.png +0 -0
  67. package/dist/nodes/EngramExplorer/EngramExplorer.node.d.ts +5 -0
  68. package/dist/nodes/EngramExplorer/EngramExplorer.node.js +932 -0
  69. package/dist/nodes/EngramExplorer/EngramExplorer.node.js.map +1 -0
  70. package/dist/nodes/EngramExplorer/engram-explorer.png +0 -0
  71. package/dist/nodes/EngramMemory/EngramMemory.node.d.ts +10 -0
  72. package/dist/nodes/EngramMemory/EngramMemory.node.js +462 -0
  73. package/dist/nodes/EngramMemory/EngramMemory.node.js.map +1 -0
  74. package/dist/nodes/EngramMemory/engram.png +0 -0
  75. package/dist/nodes/EngramTrigger/EngramTrigger.node.d.ts +5 -0
  76. package/dist/nodes/EngramTrigger/EngramTrigger.node.js +146 -0
  77. package/dist/nodes/EngramTrigger/EngramTrigger.node.js.map +1 -0
  78. package/dist/nodes/EngramTrigger/engram-trigger.png +0 -0
  79. package/dist/schemas/Community.schema.d.ts +656 -0
  80. package/dist/schemas/Community.schema.js +26 -0
  81. package/dist/schemas/Community.schema.js.map +1 -0
  82. package/dist/schemas/EntityEdge.schema.d.ts +86 -0
  83. package/dist/schemas/EntityEdge.schema.js +34 -0
  84. package/dist/schemas/EntityEdge.schema.js.map +1 -0
  85. package/dist/schemas/EntityNode.schema.d.ts +56 -0
  86. package/dist/schemas/EntityNode.schema.js +24 -0
  87. package/dist/schemas/EntityNode.schema.js.map +1 -0
  88. package/dist/schemas/EpisodicNode.schema.d.ts +53 -0
  89. package/dist/schemas/EpisodicNode.schema.js +23 -0
  90. package/dist/schemas/EpisodicNode.schema.js.map +1 -0
  91. package/dist/schemas/GraphData.schema.d.ts +220 -0
  92. package/dist/schemas/GraphData.schema.js +25 -0
  93. package/dist/schemas/GraphData.schema.js.map +1 -0
  94. package/dist/schemas/index.d.ts +5 -0
  95. package/dist/schemas/index.js +20 -0
  96. package/dist/schemas/index.js.map +1 -0
  97. package/dist/search/HybridSearchEngine.d.ts +31 -0
  98. package/dist/search/HybridSearchEngine.js +140 -0
  99. package/dist/search/HybridSearchEngine.js.map +1 -0
  100. package/dist/search/MinisearchProvider.d.ts +20 -0
  101. package/dist/search/MinisearchProvider.js +77 -0
  102. package/dist/search/MinisearchProvider.js.map +1 -0
  103. package/dist/search/TextSearchProvider.d.ts +20 -0
  104. package/dist/search/TextSearchProvider.js +3 -0
  105. package/dist/search/TextSearchProvider.js.map +1 -0
  106. package/dist/search/index.d.ts +3 -0
  107. package/dist/search/index.js +8 -0
  108. package/dist/search/index.js.map +1 -0
  109. package/dist/storage/GraphologyStorage.d.ts +42 -0
  110. package/dist/storage/GraphologyStorage.js +665 -0
  111. package/dist/storage/GraphologyStorage.js.map +1 -0
  112. package/dist/storage/IGraphStorage.d.ts +64 -0
  113. package/dist/storage/IGraphStorage.js +3 -0
  114. package/dist/storage/IGraphStorage.js.map +1 -0
  115. package/dist/storage/Neo4jStorage.d.ts +45 -0
  116. package/dist/storage/Neo4jStorage.js +949 -0
  117. package/dist/storage/Neo4jStorage.js.map +1 -0
  118. package/dist/storage/StorageFactory.d.ts +14 -0
  119. package/dist/storage/StorageFactory.js +26 -0
  120. package/dist/storage/StorageFactory.js.map +1 -0
  121. package/dist/storage/index.d.ts +3 -0
  122. package/dist/storage/index.js +8 -0
  123. package/dist/storage/index.js.map +1 -0
  124. package/dist/traversal/EpisodeTraverser.d.ts +10 -0
  125. package/dist/traversal/EpisodeTraverser.js +46 -0
  126. package/dist/traversal/EpisodeTraverser.js.map +1 -0
  127. package/dist/traversal/GraphTraverser.d.ts +24 -0
  128. package/dist/traversal/GraphTraverser.js +89 -0
  129. package/dist/traversal/GraphTraverser.js.map +1 -0
  130. package/dist/traversal/index.d.ts +2 -0
  131. package/dist/traversal/index.js +8 -0
  132. package/dist/traversal/index.js.map +1 -0
  133. package/dist/utils/descriptions.d.ts +6 -0
  134. package/dist/utils/descriptions.js +95 -0
  135. package/dist/utils/descriptions.js.map +1 -0
  136. package/dist/utils/helpers.d.ts +23 -0
  137. package/dist/utils/helpers.js +146 -0
  138. package/dist/utils/helpers.js.map +1 -0
  139. package/dist/utils/logWrapper.d.ts +26 -0
  140. package/dist/utils/logWrapper.js +300 -0
  141. package/dist/utils/logWrapper.js.map +1 -0
  142. package/dist/utils/sharedFields.d.ts +6 -0
  143. package/dist/utils/sharedFields.js +121 -0
  144. package/dist/utils/sharedFields.js.map +1 -0
  145. package/dist/utils/temporal.d.ts +22 -0
  146. package/dist/utils/temporal.js +44 -0
  147. package/dist/utils/temporal.js.map +1 -0
  148. package/dist/utils/tracing.d.ts +7 -0
  149. package/dist/utils/tracing.js +20 -0
  150. package/dist/utils/tracing.js.map +1 -0
  151. package/dist/utils/uuid.d.ts +2 -0
  152. package/dist/utils/uuid.js +13 -0
  153. package/dist/utils/uuid.js.map +1 -0
  154. package/package.json +108 -0
@@ -0,0 +1,26 @@
1
+ import { NodeConnectionType } from 'n8n-workflow';
2
+ import type { IExecuteFunctions } from 'n8n-workflow';
3
+ import type { Tool } from '@langchain/core/tools';
4
+ import type { BaseChatMessageHistory } from '@langchain/core/chat_history';
5
+ import { Embeddings } from '@langchain/core/embeddings';
6
+ import { VectorStore } from '@langchain/core/vectorstores';
7
+ import type { Document } from '@langchain/core/documents';
8
+ import { TextSplitter } from '@langchain/textsplitters';
9
+ import type { BaseChatMemory } from '@langchain/community/memory/chat_memory';
10
+ import { BaseRetriever } from '@langchain/core/retrievers';
11
+ import { BaseOutputParser } from '@langchain/core/output_parsers';
12
+ export declare function callMethodAsync<T>(this: T, parameters: {
13
+ executeFunctions: IExecuteFunctions;
14
+ connectionType: NodeConnectionType;
15
+ currentNodeRunIndex: number;
16
+ method: (...args: any[]) => Promise<unknown>;
17
+ arguments: unknown[];
18
+ }): Promise<unknown>;
19
+ export declare function callMethodSync<T>(this: T, parameters: {
20
+ executeFunctions: IExecuteFunctions;
21
+ connectionType: NodeConnectionType;
22
+ currentNodeRunIndex: number;
23
+ method: (...args: any[]) => T;
24
+ arguments: unknown[];
25
+ }): unknown;
26
+ export declare function logWrapper(originalInstance: Tool | BaseChatMemory | BaseChatMessageHistory | BaseOutputParser | BaseRetriever | Embeddings | Document[] | Document | TextSplitter | VectorStore, executeFunctions: IExecuteFunctions): BaseChatMessageHistory | BaseChatMemory | Tool | BaseOutputParser<unknown> | BaseRetriever<Record<string, any>> | Embeddings | Document<Record<string, any>> | TextSplitter | VectorStore | Document<Record<string, any>>[];
@@ -0,0 +1,300 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.callMethodAsync = callMethodAsync;
4
+ exports.callMethodSync = callMethodSync;
5
+ exports.logWrapper = logWrapper;
6
+ const n8n_workflow_1 = require("n8n-workflow");
7
+ const embeddings_1 = require("@langchain/core/embeddings");
8
+ const vectorstores_1 = require("@langchain/core/vectorstores");
9
+ const textsplitters_1 = require("@langchain/textsplitters");
10
+ const retrievers_1 = require("@langchain/core/retrievers");
11
+ const output_parsers_1 = require("@langchain/core/output_parsers");
12
+ const lodash_1 = require("lodash");
13
+ const helpers_1 = require("./helpers");
14
+ const errorsMap = {
15
+ 'You exceeded your current quota, please check your plan and billing details.': {
16
+ message: 'OpenAI quota exceeded',
17
+ description: 'You exceeded your current quota, please check your plan and billing details.',
18
+ },
19
+ };
20
+ async function callMethodAsync(parameters) {
21
+ try {
22
+ return await parameters.method.call(this, ...parameters.arguments);
23
+ }
24
+ catch (e) {
25
+ if (e instanceof output_parsers_1.OutputParserException)
26
+ throw e;
27
+ if (e.functionality === 'configuration-node')
28
+ throw e;
29
+ const connectedNode = parameters.executeFunctions.getNode();
30
+ const error = new n8n_workflow_1.NodeOperationError(connectedNode, e, {
31
+ functionality: 'configuration-node',
32
+ });
33
+ if (errorsMap[error.message]) {
34
+ error.description = errorsMap[error.message].description;
35
+ error.message = errorsMap[error.message].message;
36
+ }
37
+ parameters.executeFunctions.addOutputData(parameters.connectionType, parameters.currentNodeRunIndex, error);
38
+ if (error.message) {
39
+ error.description = error.message;
40
+ throw error;
41
+ }
42
+ throw new n8n_workflow_1.NodeOperationError(connectedNode, `Error on node "${connectedNode.name}" which is connected via input "${parameters.connectionType}"`, { functionality: 'configuration-node' });
43
+ }
44
+ }
45
+ function callMethodSync(parameters) {
46
+ try {
47
+ return parameters.method.call(this, ...parameters.arguments);
48
+ }
49
+ catch (e) {
50
+ if (e.functionality === 'configuration-node')
51
+ throw e;
52
+ const connectedNode = parameters.executeFunctions.getNode();
53
+ const error = new n8n_workflow_1.NodeOperationError(connectedNode, e);
54
+ parameters.executeFunctions.addOutputData(parameters.connectionType, parameters.currentNodeRunIndex, error);
55
+ throw new n8n_workflow_1.NodeOperationError(connectedNode, `Error on node "${connectedNode.name}" which is connected via input "${parameters.connectionType}"`, { functionality: 'configuration-node' });
56
+ }
57
+ }
58
+ function logWrapper(originalInstance, executeFunctions) {
59
+ return new Proxy(originalInstance, {
60
+ get: (target, prop) => {
61
+ let connectionType;
62
+ if ((0, helpers_1.isBaseChatMemory)(originalInstance)) {
63
+ if (prop === 'loadMemoryVariables' && 'loadMemoryVariables' in target) {
64
+ return async (values) => {
65
+ var _a;
66
+ connectionType = "ai_memory";
67
+ const { index } = executeFunctions.addInputData(connectionType, [
68
+ [{ json: { action: 'loadMemoryVariables', values } }],
69
+ ]);
70
+ const response = (await callMethodAsync.call(target, {
71
+ executeFunctions,
72
+ connectionType,
73
+ currentNodeRunIndex: index,
74
+ method: target[prop],
75
+ arguments: [values],
76
+ }));
77
+ const chatHistory = (_a = response === null || response === void 0 ? void 0 : response.chat_history) !== null && _a !== void 0 ? _a : response;
78
+ executeFunctions.addOutputData(connectionType, index, [
79
+ [{ json: { action: 'loadMemoryVariables', chatHistory } }],
80
+ ]);
81
+ return response;
82
+ };
83
+ }
84
+ else if (prop === 'saveContext' && 'saveContext' in target) {
85
+ return async (input, output) => {
86
+ connectionType = "ai_memory";
87
+ const { index } = executeFunctions.addInputData(connectionType, [
88
+ [{ json: { action: 'saveContext', input, output } }],
89
+ ]);
90
+ const response = (await callMethodAsync.call(target, {
91
+ executeFunctions,
92
+ connectionType,
93
+ currentNodeRunIndex: index,
94
+ method: target[prop],
95
+ arguments: [input, output],
96
+ }));
97
+ const chatHistory = await target.chatHistory.getMessages();
98
+ executeFunctions.addOutputData(connectionType, index, [
99
+ [{ json: { action: 'saveContext', chatHistory } }],
100
+ ]);
101
+ return response;
102
+ };
103
+ }
104
+ }
105
+ if ((0, helpers_1.isBaseChatMessageHistory)(originalInstance)) {
106
+ if (prop === 'getMessages' && 'getMessages' in target) {
107
+ return async () => {
108
+ connectionType = "ai_memory";
109
+ const { index } = executeFunctions.addInputData(connectionType, [
110
+ [{ json: { action: 'getMessages' } }],
111
+ ]);
112
+ const response = (await callMethodAsync.call(target, {
113
+ executeFunctions,
114
+ connectionType,
115
+ currentNodeRunIndex: index,
116
+ method: target[prop],
117
+ arguments: [],
118
+ }));
119
+ const payload = { action: 'getMessages', response };
120
+ executeFunctions.addOutputData(connectionType, index, [[{ json: payload }]]);
121
+ void (0, helpers_1.logAiEvent)(executeFunctions, 'n8n.ai.memory.get.messages', { response });
122
+ return response;
123
+ };
124
+ }
125
+ else if (prop === 'addMessage' && 'addMessage' in target) {
126
+ return async (message) => {
127
+ connectionType = "ai_memory";
128
+ const payload = { action: 'addMessage', message };
129
+ const { index } = executeFunctions.addInputData(connectionType, [[{ json: payload }]]);
130
+ await callMethodAsync.call(target, {
131
+ executeFunctions,
132
+ connectionType,
133
+ currentNodeRunIndex: index,
134
+ method: target[prop],
135
+ arguments: [message],
136
+ });
137
+ void (0, helpers_1.logAiEvent)(executeFunctions, 'n8n.ai.memory.added.message', { message });
138
+ executeFunctions.addOutputData(connectionType, index, [[{ json: payload }]]);
139
+ };
140
+ }
141
+ }
142
+ if (originalInstance instanceof output_parsers_1.BaseOutputParser) {
143
+ if (prop === 'parse' && 'parse' in target) {
144
+ return async (text) => {
145
+ var _a, _b;
146
+ connectionType = "ai_outputParser";
147
+ const stringifiedText = (0, lodash_1.isObject)(text) ? JSON.stringify(text) : text;
148
+ const { index } = executeFunctions.addInputData(connectionType, [
149
+ [{ json: { action: 'parse', text: stringifiedText } }],
150
+ ]);
151
+ try {
152
+ const response = (await callMethodAsync.call(target, {
153
+ executeFunctions,
154
+ connectionType,
155
+ currentNodeRunIndex: index,
156
+ method: target[prop],
157
+ arguments: [stringifiedText],
158
+ }));
159
+ void (0, helpers_1.logAiEvent)(executeFunctions, 'n8n.ai.output.parser.parsed', { text, response });
160
+ executeFunctions.addOutputData(connectionType, index, [
161
+ [{ json: { action: 'parse', response } }],
162
+ ]);
163
+ return response;
164
+ }
165
+ catch (error) {
166
+ void (0, helpers_1.logAiEvent)(executeFunctions, 'n8n.ai.output.parser.parsed', {
167
+ text,
168
+ response: (_a = error.message) !== null && _a !== void 0 ? _a : error,
169
+ });
170
+ executeFunctions.addOutputData(connectionType, index, [
171
+ [{ json: { action: 'parse', response: (_b = error.message) !== null && _b !== void 0 ? _b : error } }],
172
+ ]);
173
+ throw error;
174
+ }
175
+ };
176
+ }
177
+ }
178
+ if (originalInstance instanceof retrievers_1.BaseRetriever) {
179
+ if (prop === 'getRelevantDocuments' && 'getRelevantDocuments' in target) {
180
+ return async (query, config) => {
181
+ connectionType = "ai_retriever";
182
+ const { index } = executeFunctions.addInputData(connectionType, [
183
+ [{ json: { query, config } }],
184
+ ]);
185
+ const response = (await callMethodAsync.call(target, {
186
+ executeFunctions,
187
+ connectionType,
188
+ currentNodeRunIndex: index,
189
+ method: target[prop],
190
+ arguments: [query, config],
191
+ }));
192
+ void (0, helpers_1.logAiEvent)(executeFunctions, 'n8n.ai.retriever.get.relevant.documents', { query });
193
+ executeFunctions.addOutputData(connectionType, index, [[{ json: { response } }]]);
194
+ return response;
195
+ };
196
+ }
197
+ }
198
+ if (originalInstance instanceof embeddings_1.Embeddings) {
199
+ if (prop === 'embedDocuments' && 'embedDocuments' in target) {
200
+ return async (documents) => {
201
+ connectionType = "ai_embedding";
202
+ const { index } = executeFunctions.addInputData(connectionType, [
203
+ [{ json: { documents } }],
204
+ ]);
205
+ const response = (await callMethodAsync.call(target, {
206
+ executeFunctions,
207
+ connectionType,
208
+ currentNodeRunIndex: index,
209
+ method: target[prop],
210
+ arguments: [documents],
211
+ }));
212
+ void (0, helpers_1.logAiEvent)(executeFunctions, 'n8n.ai.embeddings.embedded.document');
213
+ executeFunctions.addOutputData(connectionType, index, [[{ json: { response } }]]);
214
+ return response;
215
+ };
216
+ }
217
+ if (prop === 'embedQuery' && 'embedQuery' in target) {
218
+ return async (query) => {
219
+ connectionType = "ai_embedding";
220
+ const { index } = executeFunctions.addInputData(connectionType, [
221
+ [{ json: { query } }],
222
+ ]);
223
+ const response = (await callMethodAsync.call(target, {
224
+ executeFunctions,
225
+ connectionType,
226
+ currentNodeRunIndex: index,
227
+ method: target[prop],
228
+ arguments: [query],
229
+ }));
230
+ void (0, helpers_1.logAiEvent)(executeFunctions, 'n8n.ai.embeddings.embedded.query');
231
+ executeFunctions.addOutputData(connectionType, index, [[{ json: { response } }]]);
232
+ return response;
233
+ };
234
+ }
235
+ }
236
+ if (originalInstance instanceof textsplitters_1.TextSplitter) {
237
+ if (prop === 'splitText' && 'splitText' in target) {
238
+ return async (text) => {
239
+ connectionType = "ai_textSplitter";
240
+ const { index } = executeFunctions.addInputData(connectionType, [
241
+ [{ json: { textSplitter: text } }],
242
+ ]);
243
+ const response = (await callMethodAsync.call(target, {
244
+ executeFunctions,
245
+ connectionType,
246
+ currentNodeRunIndex: index,
247
+ method: target[prop],
248
+ arguments: [text],
249
+ }));
250
+ void (0, helpers_1.logAiEvent)(executeFunctions, 'n8n.ai.text.splitter.split');
251
+ executeFunctions.addOutputData(connectionType, index, [[{ json: { response } }]]);
252
+ return response;
253
+ };
254
+ }
255
+ }
256
+ if ((0, helpers_1.isToolsInstance)(originalInstance)) {
257
+ if (prop === '_call' && '_call' in target) {
258
+ return async (query) => {
259
+ connectionType = "ai_tool";
260
+ const { index } = executeFunctions.addInputData(connectionType, [
261
+ [{ json: { query } }],
262
+ ]);
263
+ const response = (await callMethodAsync.call(target, {
264
+ executeFunctions,
265
+ connectionType,
266
+ currentNodeRunIndex: index,
267
+ method: target[prop],
268
+ arguments: [query],
269
+ }));
270
+ void (0, helpers_1.logAiEvent)(executeFunctions, 'n8n.ai.tool.called', { query, response });
271
+ executeFunctions.addOutputData(connectionType, index, [[{ json: { response } }]]);
272
+ return response;
273
+ };
274
+ }
275
+ }
276
+ if (originalInstance instanceof vectorstores_1.VectorStore) {
277
+ if (prop === 'similaritySearch' && 'similaritySearch' in target) {
278
+ return async (query, k, filter, _callbacks) => {
279
+ connectionType = "ai_vectorStore";
280
+ const { index } = executeFunctions.addInputData(connectionType, [
281
+ [{ json: { query, k, filter } }],
282
+ ]);
283
+ const response = (await callMethodAsync.call(target, {
284
+ executeFunctions,
285
+ connectionType,
286
+ currentNodeRunIndex: index,
287
+ method: target[prop],
288
+ arguments: [query, k, filter, _callbacks],
289
+ }));
290
+ void (0, helpers_1.logAiEvent)(executeFunctions, 'n8n.ai.vector.store.searched', { query });
291
+ executeFunctions.addOutputData(connectionType, index, [[{ json: { response } }]]);
292
+ return response;
293
+ };
294
+ }
295
+ }
296
+ return target[prop];
297
+ },
298
+ });
299
+ }
300
+ //# sourceMappingURL=logWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logWrapper.js","sourceRoot":"","sources":["../../src/utils/logWrapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { NodeConnectionType, type INodeProperties } from 'n8n-workflow';
2
+ export declare const metadataFilterField: INodeProperties;
3
+ export declare function getTemplateNoticeField(templateId: number): INodeProperties;
4
+ type AllowedConnectionTypes = NodeConnectionType.AiAgent | NodeConnectionType.AiChain | NodeConnectionType.AiDocument | NodeConnectionType.AiVectorStore | NodeConnectionType.AiRetriever;
5
+ export declare function getConnectionHintNoticeField(connectionTypes: AllowedConnectionTypes[]): INodeProperties;
6
+ export {};
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.metadataFilterField = void 0;
4
+ exports.getTemplateNoticeField = getTemplateNoticeField;
5
+ exports.getConnectionHintNoticeField = getConnectionHintNoticeField;
6
+ exports.metadataFilterField = {
7
+ displayName: 'Metadata Filter',
8
+ name: 'metadata',
9
+ type: 'fixedCollection',
10
+ description: 'Metadata to filter the document by',
11
+ typeOptions: {
12
+ multipleValues: true,
13
+ },
14
+ default: {},
15
+ placeholder: 'Add filter field',
16
+ options: [
17
+ {
18
+ name: 'metadataValues',
19
+ displayName: 'Fields to Set',
20
+ values: [
21
+ {
22
+ displayName: 'Name',
23
+ name: 'name',
24
+ type: 'string',
25
+ default: '',
26
+ required: true,
27
+ },
28
+ {
29
+ displayName: 'Value',
30
+ name: 'value',
31
+ type: 'string',
32
+ default: '',
33
+ },
34
+ ],
35
+ },
36
+ ],
37
+ };
38
+ function getTemplateNoticeField(templateId) {
39
+ return {
40
+ displayName: `Save time with an <a href="/templates/${templateId}" target="_blank">example</a> of how this node works`,
41
+ name: 'notice',
42
+ type: 'notice',
43
+ default: '',
44
+ };
45
+ }
46
+ const connectionsString = {
47
+ ["ai_agent"]: {
48
+ connection: '',
49
+ locale: 'AI Agent',
50
+ },
51
+ ["ai_chain"]: {
52
+ connection: '',
53
+ locale: 'AI Chain',
54
+ },
55
+ ["ai_document"]: {
56
+ connection: "ai_document",
57
+ locale: 'Document Loader',
58
+ },
59
+ ["ai_vectorStore"]: {
60
+ connection: "ai_vectorStore",
61
+ locale: 'Vector Store',
62
+ },
63
+ ["ai_retriever"]: {
64
+ connection: "ai_retriever",
65
+ locale: 'Vector Store Retriever',
66
+ },
67
+ };
68
+ function determineArticle(nextWord) {
69
+ const vowels = /^[aeiouAEIOU]/;
70
+ return vowels.test(nextWord) ? 'an' : 'a';
71
+ }
72
+ const getConnectionParameterString = (connectionType) => {
73
+ if (connectionType === '')
74
+ return "data-action-parameter-creatorview='AI'";
75
+ return `data-action-parameter-connectiontype='${connectionType}'`;
76
+ };
77
+ const getAhref = (connectionType) => `<a class="test" data-action='openSelectiveNodeCreator'${getConnectionParameterString(connectionType.connection)}'>${connectionType.locale}</a>`;
78
+ function getConnectionHintNoticeField(connectionTypes) {
79
+ const groupedConnections = new Map();
80
+ connectionTypes.forEach((connectionType) => {
81
+ var _a;
82
+ const connectionString = connectionsString[connectionType].connection;
83
+ const localeString = connectionsString[connectionType].locale;
84
+ if (!groupedConnections.has(connectionString)) {
85
+ groupedConnections.set(connectionString, [localeString]);
86
+ return;
87
+ }
88
+ (_a = groupedConnections.get(connectionString)) === null || _a === void 0 ? void 0 : _a.push(localeString);
89
+ });
90
+ let displayName;
91
+ if (groupedConnections.size === 1) {
92
+ const [[connection, locales]] = Array.from(groupedConnections);
93
+ displayName = `This node must be connected to ${determineArticle(locales[0])} ${locales[0]
94
+ .toLowerCase()
95
+ .replace(/^ai /, 'AI ')}. <a data-action='openSelectiveNodeCreator' ${getConnectionParameterString(connection)}>Insert one</a>`;
96
+ }
97
+ else {
98
+ const ahrefs = Array.from(groupedConnections, ([connection, locales]) => {
99
+ const locale = locales.length > 1
100
+ ? locales
101
+ .map((localeString, index, { length }) => {
102
+ return ((index === 0 ? `${determineArticle(localeString)} ` : '') +
103
+ (index < length - 1 ? `${localeString} or ` : localeString));
104
+ })
105
+ .join('')
106
+ : `${determineArticle(locales[0])} ${locales[0]}`;
107
+ return getAhref({ connection, locale });
108
+ });
109
+ displayName = `This node needs to be connected to ${ahrefs.join(' or ')}.`;
110
+ }
111
+ return {
112
+ displayName,
113
+ name: 'notice',
114
+ type: 'notice',
115
+ default: '',
116
+ typeOptions: {
117
+ containerClass: 'ndv-connection-hint-notice',
118
+ },
119
+ };
120
+ }
121
+ //# sourceMappingURL=sharedFields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharedFields.js","sourceRoot":"","sources":["../../src/utils/sharedFields.ts"],"names":[],"mappings":";;;AAmCA,wDAOC;AAiDD,oEA8DC;AAvJY,QAAA,mBAAmB,GAAoB;IAClD,WAAW,EAAE,iBAAiB;IAC9B,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,oCAAoC;IACjD,WAAW,EAAE;QACX,cAAc,EAAE,IAAI;KACrB;IACD,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,kBAAkB;IAC/B,OAAO,EAAE;QACP;YACE,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,eAAe;YAC5B,MAAM,EAAE;gBACN;oBACE,WAAW,EAAE,MAAM;oBACnB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,EAAE;oBACX,QAAQ,EAAE,IAAI;iBACf;gBACD;oBACE,WAAW,EAAE,OAAO;oBACpB,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,EAAE;iBACZ;aACF;SACF;KACF;CACF,CAAC;AAEF,SAAgB,sBAAsB,CAAC,UAAkB;IACvD,OAAO;QACL,WAAW,EAAE,yCAAyC,UAAU,sDAAsD;QACtH,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;KACZ,CAAC;AACJ,CAAC;AAED,MAAM,iBAAiB,GAAG;IACxB,YAA4B,EAAE;QAE5B,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,UAAU;KACnB;IACD,YAA4B,EAAE;QAE5B,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,UAAU;KACnB;IACD,eAA+B,EAAE;QAC/B,UAAU,eAA+B;QACzC,MAAM,EAAE,iBAAiB;KAC1B;IACD,kBAAkC,EAAE;QAClC,UAAU,kBAAkC;QAC5C,MAAM,EAAE,cAAc;KACvB;IACD,gBAAgC,EAAE;QAChC,UAAU,gBAAgC;QAC1C,MAAM,EAAE,wBAAwB;KACjC;CACF,CAAC;AASF,SAAS,gBAAgB,CAAC,QAAgB;IAExC,MAAM,MAAM,GAAG,eAAe,CAAC;IAC/B,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;AAC5C,CAAC;AACD,MAAM,4BAA4B,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC9D,IAAI,cAAc,KAAK,EAAE;QAAE,OAAO,wCAAwC,CAAC;IAE3E,OAAO,yCAAyC,cAAc,GAAG,CAAC;AACpE,CAAC,CAAC;AACF,MAAM,QAAQ,GAAG,CAAC,cAAsD,EAAE,EAAE,CAC1E,yDAAyD,4BAA4B,CACnF,cAAc,CAAC,UAAU,CAC1B,KAAK,cAAc,CAAC,MAAM,MAAM,CAAC;AAEpC,SAAgB,4BAA4B,CAC1C,eAAyC;IAEzC,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAoB,CAAC;IAIvD,eAAe,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE;;QACzC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC,UAAU,CAAC;QACtE,MAAM,YAAY,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC;QAE9D,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC9C,kBAAkB,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,MAAA,kBAAkB,CAAC,GAAG,CAAC,gBAAgB,CAAC,0CAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAI,WAAW,CAAC;IAEhB,IAAI,kBAAkB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE/D,WAAW,GAAG,kCAAkC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC;aACvF,WAAW,EAAE;aACb,OAAO,CACN,MAAM,EACN,KAAK,CACN,+CAA+C,4BAA4B,CAC5E,UAAU,CACX,iBAAiB,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE;YAGtE,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,GAAG,CAAC;gBAChB,CAAC,CAAC,OAAO;qBACJ,GAAG,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;oBACvC,OAAO,CACL,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzD,CAAC,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAC5D,CAAC;gBACJ,CAAC,CAAC;qBACD,IAAI,CAAC,EAAE,CAAC;gBACb,CAAC,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,OAAO,QAAQ,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,WAAW,GAAG,sCAAsC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;IAC7E,CAAC;IAED,OAAO;QACL,WAAW;QACX,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EAAE;YACX,cAAc,EAAE,4BAA4B;SAC7C;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,22 @@
1
+ export declare function nowIso(): string;
2
+ export declare function isFactCurrent(edge: {
3
+ expired_at: string | null;
4
+ invalid_at: string | null;
5
+ }): boolean;
6
+ export declare function temporalRangesOverlap(a: {
7
+ valid_at: string | null;
8
+ invalid_at: string | null;
9
+ }, b: {
10
+ valid_at: string | null;
11
+ invalid_at: string | null;
12
+ }): boolean;
13
+ export declare function resolveContradiction(existingEdge: {
14
+ valid_at: string | null;
15
+ invalid_at: string | null;
16
+ }, newEdge: {
17
+ valid_at: string | null;
18
+ }): {
19
+ invalid_at: string;
20
+ expired_at: string;
21
+ } | null;
22
+ export declare function isOlderThanDays(createdAt: string, days: number): boolean;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.nowIso = nowIso;
4
+ exports.isFactCurrent = isFactCurrent;
5
+ exports.temporalRangesOverlap = temporalRangesOverlap;
6
+ exports.resolveContradiction = resolveContradiction;
7
+ exports.isOlderThanDays = isOlderThanDays;
8
+ function nowIso() {
9
+ return new Date().toISOString();
10
+ }
11
+ function isFactCurrent(edge) {
12
+ if (edge.expired_at !== null)
13
+ return false;
14
+ if (edge.invalid_at !== null) {
15
+ const invalidDate = new Date(edge.invalid_at);
16
+ return invalidDate > new Date();
17
+ }
18
+ return true;
19
+ }
20
+ function temporalRangesOverlap(a, b) {
21
+ const aStart = a.valid_at ? new Date(a.valid_at).getTime() : 0;
22
+ const aEnd = a.invalid_at ? new Date(a.invalid_at).getTime() : Infinity;
23
+ const bStart = b.valid_at ? new Date(b.valid_at).getTime() : 0;
24
+ const bEnd = b.invalid_at ? new Date(b.invalid_at).getTime() : Infinity;
25
+ return aStart < bEnd && bStart < aEnd;
26
+ }
27
+ function resolveContradiction(existingEdge, newEdge) {
28
+ var _a;
29
+ const existingStart = existingEdge.valid_at ? new Date(existingEdge.valid_at).getTime() : 0;
30
+ const newStart = newEdge.valid_at ? new Date(newEdge.valid_at).getTime() : Date.now();
31
+ if (existingStart < newStart) {
32
+ return {
33
+ invalid_at: (_a = newEdge.valid_at) !== null && _a !== void 0 ? _a : nowIso(),
34
+ expired_at: nowIso(),
35
+ };
36
+ }
37
+ return null;
38
+ }
39
+ function isOlderThanDays(createdAt, days) {
40
+ const cutoff = new Date();
41
+ cutoff.setDate(cutoff.getDate() - days);
42
+ return new Date(createdAt) < cutoff;
43
+ }
44
+ //# sourceMappingURL=temporal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temporal.js","sourceRoot":"","sources":["../../src/utils/temporal.ts"],"names":[],"mappings":";;AASA,wBAEC;AAKD,sCAUC;AAMD,sDAUC;AAUD,oDAkBC;AAKD,0CAIC;AAtED,SAAgB,MAAM;IACpB,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAKD,SAAgB,aAAa,CAAC,IAG7B;IACC,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC3C,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9C,OAAO,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAMD,SAAgB,qBAAqB,CACnC,CAAyD,EACzD,CAAyD;IAEzD,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IACxE,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IAExE,OAAO,MAAM,GAAG,IAAI,IAAI,MAAM,GAAG,IAAI,CAAC;AACxC,CAAC;AAUD,SAAgB,oBAAoB,CAClC,YAAoE,EACpE,OAAoC;;IAEpC,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IAGtF,IAAI,aAAa,GAAG,QAAQ,EAAE,CAAC;QAC7B,OAAO;YACL,UAAU,EAAE,MAAA,OAAO,CAAC,QAAQ,mCAAI,MAAM,EAAE;YACxC,UAAU,EAAE,MAAM,EAAE;SACrB,CAAC;IACJ,CAAC;IAID,OAAO,IAAI,CAAC;AACd,CAAC;AAKD,SAAgB,eAAe,CAAC,SAAiB,EAAE,IAAY;IAC7D,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;IAC1B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACxC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;AACtC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { BaseCallbackConfig } from '@langchain/core/callbacks/manager';
2
+ import type { IExecuteFunctions } from 'n8n-workflow';
3
+ interface TracingConfig {
4
+ additionalMetadata?: Record<string, unknown>;
5
+ }
6
+ export declare function getTracingConfig(context: IExecuteFunctions, config?: TracingConfig): BaseCallbackConfig;
7
+ export {};
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTracingConfig = getTracingConfig;
4
+ function getTracingConfig(context, config = {}) {
5
+ var _a;
6
+ const parentRunManager = context.getParentCallbackManager
7
+ ? context.getParentCallbackManager()
8
+ : undefined;
9
+ return {
10
+ runName: `[${context.getWorkflow().name}] ${context.getNode().name}`,
11
+ metadata: {
12
+ execution_id: context.getExecutionId(),
13
+ workflow: context.getWorkflow(),
14
+ node: context.getNode().name,
15
+ ...((_a = config.additionalMetadata) !== null && _a !== void 0 ? _a : {}),
16
+ },
17
+ callbacks: parentRunManager,
18
+ };
19
+ }
20
+ //# sourceMappingURL=tracing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../src/utils/tracing.ts"],"names":[],"mappings":";;AAOA,4CAkBC;AAlBD,SAAgB,gBAAgB,CAC9B,OAA0B,EAC1B,SAAwB,EAAE;;IAE1B,MAAM,gBAAgB,GAAG,OAAO,CAAC,wBAAwB;QACvD,CAAC,CAAC,OAAO,CAAC,wBAAwB,EAAE;QACpC,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO;QACL,OAAO,EAAE,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE;QACpE,QAAQ,EAAE;YACR,YAAY,EAAE,OAAO,CAAC,cAAc,EAAE;YACtC,QAAQ,EAAE,OAAO,CAAC,WAAW,EAAE;YAC/B,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI;YAC5B,GAAG,CAAC,MAAA,MAAM,CAAC,kBAAkB,mCAAI,EAAE,CAAC;SACrC;QACD,SAAS,EAAE,gBAAgB;KAC5B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function generateUuid(): string;
2
+ export declare function isValidUuid(value: string): boolean;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateUuid = generateUuid;
4
+ exports.isValidUuid = isValidUuid;
5
+ const uuid_1 = require("uuid");
6
+ function generateUuid() {
7
+ return (0, uuid_1.v4)();
8
+ }
9
+ function isValidUuid(value) {
10
+ const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
11
+ return uuidRegex.test(value);
12
+ }
13
+ //# sourceMappingURL=uuid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../src/utils/uuid.ts"],"names":[],"mappings":";;AAEA,oCAEC;AAKD,kCAGC;AAZD,+BAAoC;AAEpC,SAAgB,YAAY;IAC1B,OAAO,IAAA,SAAM,GAAE,CAAC;AAClB,CAAC;AAKD,SAAgB,WAAW,CAAC,KAAa;IACvC,MAAM,SAAS,GAAG,wEAAwE,CAAC;IAC3F,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC"}