mindcache 0.2.0 → 0.4.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.
- package/lib/index.d.ts +37 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +647 -41
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
package/lib/index.d.ts
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
interface KeyAttributes {
|
|
2
2
|
readonly: boolean;
|
|
3
3
|
visible: boolean;
|
|
4
|
-
default: string;
|
|
5
4
|
hardcoded: boolean;
|
|
6
5
|
template: boolean;
|
|
6
|
+
type: 'text' | 'image' | 'file' | 'json';
|
|
7
|
+
contentType?: string;
|
|
8
|
+
tags?: string[];
|
|
7
9
|
}
|
|
8
10
|
interface STMEntry {
|
|
9
11
|
value: any;
|
|
@@ -17,6 +19,9 @@ declare class MindCache {
|
|
|
17
19
|
private stm;
|
|
18
20
|
private listeners;
|
|
19
21
|
private globalListeners;
|
|
22
|
+
private encodeFileToBase64;
|
|
23
|
+
private createDataUrl;
|
|
24
|
+
private validateContentType;
|
|
20
25
|
/** @deprecated Use get_value instead */
|
|
21
26
|
get(key: string): any;
|
|
22
27
|
get_value(key: string, _processingStack?: Set<string>): any;
|
|
@@ -24,6 +29,11 @@ declare class MindCache {
|
|
|
24
29
|
set_value(key: string, value: any, attributes?: Partial<KeyAttributes>): void;
|
|
25
30
|
set_attributes(key: string, attributes: Partial<KeyAttributes>): boolean;
|
|
26
31
|
set(key: string, value: any): void;
|
|
32
|
+
set_file(key: string, file: File, attributes?: Partial<KeyAttributes>): Promise<void>;
|
|
33
|
+
set_base64(key: string, base64Data: string, contentType: string, type?: 'image' | 'file', attributes?: Partial<KeyAttributes>): void;
|
|
34
|
+
add_image(key: string, base64Data: string, contentType?: string, attributes?: Partial<KeyAttributes>): void;
|
|
35
|
+
get_data_url(key: string): string | undefined;
|
|
36
|
+
get_base64(key: string): string | undefined;
|
|
27
37
|
has(key: string): boolean;
|
|
28
38
|
delete(key: string): boolean;
|
|
29
39
|
clear(): void;
|
|
@@ -41,12 +51,38 @@ declare class MindCache {
|
|
|
41
51
|
injectSTM(template: string, _processingStack?: Set<string>): string;
|
|
42
52
|
getSTM(): string;
|
|
43
53
|
getSTMObject(): Record<string, any>;
|
|
54
|
+
getSTMForAPI(): Array<{
|
|
55
|
+
key: string;
|
|
56
|
+
value: any;
|
|
57
|
+
type: string;
|
|
58
|
+
contentType?: string;
|
|
59
|
+
}>;
|
|
60
|
+
getVisibleImages(): Array<{
|
|
61
|
+
type: 'file';
|
|
62
|
+
mediaType: string;
|
|
63
|
+
url: string;
|
|
64
|
+
filename?: string;
|
|
65
|
+
}>;
|
|
44
66
|
toJSON(): string;
|
|
45
67
|
fromJSON(jsonString: string): void;
|
|
46
68
|
serialize(): Record<string, STMEntry>;
|
|
47
69
|
deserialize(data: Record<string, STMEntry>): void;
|
|
48
70
|
get_system_prompt(): string;
|
|
71
|
+
private findKeyFromToolName;
|
|
49
72
|
get_aisdk_tools(): Record<string, any>;
|
|
73
|
+
executeToolCall(toolName: string, value: any): {
|
|
74
|
+
result: string;
|
|
75
|
+
key: string;
|
|
76
|
+
value: any;
|
|
77
|
+
} | null;
|
|
78
|
+
addTag(key: string, tag: string): boolean;
|
|
79
|
+
removeTag(key: string, tag: string): boolean;
|
|
80
|
+
getTags(key: string): string[];
|
|
81
|
+
getAllTags(): string[];
|
|
82
|
+
hasTag(key: string, tag: string): boolean;
|
|
83
|
+
getTagged(tag: string): string;
|
|
84
|
+
toMarkdown(): string;
|
|
85
|
+
fromMarkdown(markdown: string): void;
|
|
50
86
|
}
|
|
51
87
|
export declare const mindcache: MindCache;
|
|
52
88
|
export { MindCache };
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/index.js
CHANGED
|
@@ -9,6 +9,47 @@ class MindCache {
|
|
|
9
9
|
this.listeners = {};
|
|
10
10
|
this.globalListeners = [];
|
|
11
11
|
}
|
|
12
|
+
// Helper method to encode file to base64
|
|
13
|
+
encodeFileToBase64(file) {
|
|
14
|
+
return new Promise((resolve, reject) => {
|
|
15
|
+
// Check if we're in a browser environment
|
|
16
|
+
if (typeof FileReader !== 'undefined') {
|
|
17
|
+
const reader = new FileReader();
|
|
18
|
+
reader.onload = () => {
|
|
19
|
+
const result = reader.result;
|
|
20
|
+
// Remove data URL prefix to get just the base64 data
|
|
21
|
+
const base64Data = result.split(',')[1];
|
|
22
|
+
resolve(base64Data);
|
|
23
|
+
};
|
|
24
|
+
reader.onerror = reject;
|
|
25
|
+
reader.readAsDataURL(file);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
// Node.js environment - reject with helpful error
|
|
29
|
+
reject(new Error('FileReader not available in Node.js environment. Use set_base64() method instead.'));
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
// Helper method to create data URL from base64 and content type
|
|
34
|
+
createDataUrl(base64Data, contentType) {
|
|
35
|
+
return `data:${contentType};base64,${base64Data}`;
|
|
36
|
+
}
|
|
37
|
+
// Helper method to validate content type for different STM types
|
|
38
|
+
validateContentType(type, contentType) {
|
|
39
|
+
if (type === 'text' || type === 'json') {
|
|
40
|
+
return true; // No content type validation needed for text/json
|
|
41
|
+
}
|
|
42
|
+
if (!contentType) {
|
|
43
|
+
return false; // Files and images require content type
|
|
44
|
+
}
|
|
45
|
+
if (type === 'image') {
|
|
46
|
+
return contentType.startsWith('image/');
|
|
47
|
+
}
|
|
48
|
+
if (type === 'file') {
|
|
49
|
+
return true; // Any content type is valid for generic files
|
|
50
|
+
}
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
12
53
|
// Get a value from the STM (deprecated - use get_value instead)
|
|
13
54
|
/** @deprecated Use get_value instead */
|
|
14
55
|
get(key) {
|
|
@@ -48,9 +89,10 @@ class MindCache {
|
|
|
48
89
|
return {
|
|
49
90
|
readonly: true,
|
|
50
91
|
visible: true,
|
|
51
|
-
default: '',
|
|
52
92
|
hardcoded: true,
|
|
53
|
-
template: false
|
|
93
|
+
template: false,
|
|
94
|
+
type: 'text',
|
|
95
|
+
tags: []
|
|
54
96
|
};
|
|
55
97
|
}
|
|
56
98
|
const entry = this.stm[key];
|
|
@@ -65,9 +107,10 @@ class MindCache {
|
|
|
65
107
|
const defaultAttributes = {
|
|
66
108
|
readonly: false,
|
|
67
109
|
visible: true,
|
|
68
|
-
default: '',
|
|
69
110
|
hardcoded: false,
|
|
70
|
-
template: false
|
|
111
|
+
template: false,
|
|
112
|
+
type: 'text',
|
|
113
|
+
tags: []
|
|
71
114
|
};
|
|
72
115
|
// If key exists, preserve existing attributes unless explicitly overridden
|
|
73
116
|
const existingEntry = this.stm[key];
|
|
@@ -114,6 +157,60 @@ class MindCache {
|
|
|
114
157
|
set(key, value) {
|
|
115
158
|
this.set_value(key, value);
|
|
116
159
|
}
|
|
160
|
+
// Set a file value in the STM with base64 encoding
|
|
161
|
+
async set_file(key, file, attributes) {
|
|
162
|
+
const base64Data = await this.encodeFileToBase64(file);
|
|
163
|
+
const contentType = file.type;
|
|
164
|
+
const fileAttributes = {
|
|
165
|
+
type: contentType.startsWith('image/') ? 'image' : 'file',
|
|
166
|
+
contentType,
|
|
167
|
+
...attributes
|
|
168
|
+
};
|
|
169
|
+
this.set_value(key, base64Data, fileAttributes);
|
|
170
|
+
}
|
|
171
|
+
// Set a base64 encoded value with content type
|
|
172
|
+
set_base64(key, base64Data, contentType, type = 'file', attributes) {
|
|
173
|
+
if (!this.validateContentType(type, contentType)) {
|
|
174
|
+
throw new Error(`Invalid content type ${contentType} for type ${type}`);
|
|
175
|
+
}
|
|
176
|
+
const fileAttributes = {
|
|
177
|
+
type,
|
|
178
|
+
contentType,
|
|
179
|
+
...attributes
|
|
180
|
+
};
|
|
181
|
+
this.set_value(key, base64Data, fileAttributes);
|
|
182
|
+
}
|
|
183
|
+
// Convenience method to add an image to STM with proper attributes
|
|
184
|
+
add_image(key, base64Data, contentType = 'image/jpeg', attributes) {
|
|
185
|
+
if (!contentType.startsWith('image/')) {
|
|
186
|
+
throw new Error(`Invalid image content type: ${contentType}. Must start with 'image/'`);
|
|
187
|
+
}
|
|
188
|
+
this.set_base64(key, base64Data, contentType, 'image', attributes);
|
|
189
|
+
// Explicitly ensure the type is set to 'image' after setting the value
|
|
190
|
+
this.set_attributes(key, {
|
|
191
|
+
type: 'image',
|
|
192
|
+
contentType: contentType
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
// Get a value as data URL (for files/images)
|
|
196
|
+
get_data_url(key) {
|
|
197
|
+
const entry = this.stm[key];
|
|
198
|
+
if (!entry || (entry.attributes.type !== 'image' && entry.attributes.type !== 'file')) {
|
|
199
|
+
return undefined;
|
|
200
|
+
}
|
|
201
|
+
if (!entry.attributes.contentType) {
|
|
202
|
+
return undefined;
|
|
203
|
+
}
|
|
204
|
+
return this.createDataUrl(entry.value, entry.attributes.contentType);
|
|
205
|
+
}
|
|
206
|
+
// Get raw base64 data
|
|
207
|
+
get_base64(key) {
|
|
208
|
+
const entry = this.stm[key];
|
|
209
|
+
if (!entry || (entry.attributes.type !== 'image' && entry.attributes.type !== 'file')) {
|
|
210
|
+
return undefined;
|
|
211
|
+
}
|
|
212
|
+
return entry.value;
|
|
213
|
+
}
|
|
117
214
|
// Check if a key exists in the STM
|
|
118
215
|
has(key) {
|
|
119
216
|
if (key === '$date' || key === '$time') {
|
|
@@ -138,28 +235,10 @@ class MindCache {
|
|
|
138
235
|
}
|
|
139
236
|
return deleted;
|
|
140
237
|
}
|
|
141
|
-
// Clear the entire STM
|
|
238
|
+
// Clear the entire STM
|
|
142
239
|
clear() {
|
|
143
|
-
// Store keys that have default values
|
|
144
|
-
const keysWithDefaults = [];
|
|
145
|
-
Object.entries(this.stm).forEach(([key, entry]) => {
|
|
146
|
-
if (entry.attributes.default !== '') {
|
|
147
|
-
keysWithDefaults.push({
|
|
148
|
-
key,
|
|
149
|
-
defaultValue: entry.attributes.default,
|
|
150
|
-
attributes: entry.attributes
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
});
|
|
154
240
|
// Clear the STM
|
|
155
241
|
this.stm = {};
|
|
156
|
-
// Restore default values
|
|
157
|
-
keysWithDefaults.forEach(({ key, defaultValue, attributes }) => {
|
|
158
|
-
this.stm[key] = {
|
|
159
|
-
value: defaultValue,
|
|
160
|
-
attributes
|
|
161
|
-
};
|
|
162
|
-
});
|
|
163
242
|
this.notifyGlobalListeners();
|
|
164
243
|
}
|
|
165
244
|
// Get all keys in the STM
|
|
@@ -211,9 +290,10 @@ class MindCache {
|
|
|
211
290
|
const defaultAttributes = {
|
|
212
291
|
readonly: false,
|
|
213
292
|
visible: true,
|
|
214
|
-
default: '',
|
|
215
293
|
hardcoded: false,
|
|
216
|
-
template: false
|
|
294
|
+
template: false,
|
|
295
|
+
type: 'text',
|
|
296
|
+
tags: []
|
|
217
297
|
};
|
|
218
298
|
this.stm[key] = {
|
|
219
299
|
value,
|
|
@@ -254,6 +334,7 @@ class MindCache {
|
|
|
254
334
|
this.globalListeners.forEach(listener => listener());
|
|
255
335
|
}
|
|
256
336
|
// Replace placeholders in a string with STM values (only uses visible keys for public injectSTM calls)
|
|
337
|
+
// Note: Image and file type placeholders are NOT replaced - they remain as {{key}} for tools to process
|
|
257
338
|
injectSTM(template, _processingStack) {
|
|
258
339
|
// Handle null/undefined templates
|
|
259
340
|
if (template === null || template === undefined) {
|
|
@@ -261,12 +342,12 @@ class MindCache {
|
|
|
261
342
|
}
|
|
262
343
|
// Convert to string if not already
|
|
263
344
|
const templateStr = String(template);
|
|
264
|
-
// find all the keys in the template
|
|
265
|
-
const keys = templateStr.match(/\{([$\w]+)\}/g);
|
|
345
|
+
// find all the keys in the template using double brackets
|
|
346
|
+
const keys = templateStr.match(/\{\{([$\w]+)\}\}/g);
|
|
266
347
|
if (!keys) {
|
|
267
348
|
return templateStr;
|
|
268
349
|
}
|
|
269
|
-
// Extract the actual key names without the curly braces
|
|
350
|
+
// Extract the actual key names without the double curly braces
|
|
270
351
|
const cleanKeys = keys.map(key => key.replace(/[{}]/g, ''));
|
|
271
352
|
// Build inputValues with the clean keys
|
|
272
353
|
const inputValues = cleanKeys.reduce((acc, key) => {
|
|
@@ -281,6 +362,10 @@ class MindCache {
|
|
|
281
362
|
// If this is external call, only allow visible keys
|
|
282
363
|
const attributes = this.get_attributes(key);
|
|
283
364
|
if (_processingStack || (attributes && attributes.visible)) {
|
|
365
|
+
// Skip replacement for image and file types - keep the placeholder
|
|
366
|
+
if (attributes && (attributes.type === 'image' || attributes.type === 'file')) {
|
|
367
|
+
return acc; // Don't add to inputValues, placeholder will remain
|
|
368
|
+
}
|
|
284
369
|
return {
|
|
285
370
|
...acc,
|
|
286
371
|
[key]: this.get_value(key, _processingStack)
|
|
@@ -289,8 +374,21 @@ class MindCache {
|
|
|
289
374
|
// If key doesn't exist or is not visible (for external calls), don't include it
|
|
290
375
|
return acc;
|
|
291
376
|
}, {});
|
|
292
|
-
// Replace the placeholders with actual values
|
|
293
|
-
|
|
377
|
+
// Replace the placeholders with actual values using double brackets
|
|
378
|
+
// Image/file placeholders will remain as {{key}} since they're not in inputValues
|
|
379
|
+
return templateStr.replace(/\{\{([$\w]+)\}\}/g, (match, key) => {
|
|
380
|
+
// If value is in inputValues, use it
|
|
381
|
+
if (inputValues[key] !== undefined) {
|
|
382
|
+
return inputValues[key];
|
|
383
|
+
}
|
|
384
|
+
// Check if this is an image/file placeholder that should be preserved
|
|
385
|
+
const attributes = this.get_attributes(key);
|
|
386
|
+
if (attributes && (attributes.type === 'image' || attributes.type === 'file')) {
|
|
387
|
+
return match; // Keep the placeholder for images/files
|
|
388
|
+
}
|
|
389
|
+
// For missing or invisible keys, replace with empty string (original behavior)
|
|
390
|
+
return '';
|
|
391
|
+
});
|
|
294
392
|
}
|
|
295
393
|
// Get a formatted string of all visible STM key-value pairs
|
|
296
394
|
getSTM() {
|
|
@@ -314,6 +412,52 @@ class MindCache {
|
|
|
314
412
|
getSTMObject() {
|
|
315
413
|
return this.getAll();
|
|
316
414
|
}
|
|
415
|
+
// Get STM data formatted for API calls (multipart form data style)
|
|
416
|
+
getSTMForAPI() {
|
|
417
|
+
const now = new Date();
|
|
418
|
+
const apiData = [];
|
|
419
|
+
// Add visible regular STM entries
|
|
420
|
+
Object.entries(this.stm).forEach(([key, entry]) => {
|
|
421
|
+
if (entry.attributes.visible) {
|
|
422
|
+
const processedValue = entry.attributes.template ? this.get_value(key) : entry.value;
|
|
423
|
+
apiData.push({
|
|
424
|
+
key,
|
|
425
|
+
value: processedValue,
|
|
426
|
+
type: entry.attributes.type,
|
|
427
|
+
contentType: entry.attributes.contentType
|
|
428
|
+
});
|
|
429
|
+
}
|
|
430
|
+
});
|
|
431
|
+
// Add system keys (always visible)
|
|
432
|
+
apiData.push({
|
|
433
|
+
key: '$date',
|
|
434
|
+
value: now.toISOString().split('T')[0],
|
|
435
|
+
type: 'text'
|
|
436
|
+
});
|
|
437
|
+
apiData.push({
|
|
438
|
+
key: '$time',
|
|
439
|
+
value: now.toTimeString().split(' ')[0],
|
|
440
|
+
type: 'text'
|
|
441
|
+
});
|
|
442
|
+
return apiData;
|
|
443
|
+
}
|
|
444
|
+
// Get visible images formatted for AI SDK UIMessage file parts
|
|
445
|
+
getVisibleImages() {
|
|
446
|
+
const imageParts = [];
|
|
447
|
+
Object.entries(this.stm).forEach(([key, entry]) => {
|
|
448
|
+
if (entry.attributes.visible && entry.attributes.type === 'image' && entry.attributes.contentType) {
|
|
449
|
+
// Create data URL from base64 data
|
|
450
|
+
const dataUrl = this.createDataUrl(entry.value, entry.attributes.contentType);
|
|
451
|
+
imageParts.push({
|
|
452
|
+
type: 'file',
|
|
453
|
+
mediaType: entry.attributes.contentType,
|
|
454
|
+
url: dataUrl,
|
|
455
|
+
filename: key // Use the STM key as filename
|
|
456
|
+
});
|
|
457
|
+
}
|
|
458
|
+
});
|
|
459
|
+
return imageParts;
|
|
460
|
+
}
|
|
317
461
|
// Serialize STM to JSON string (complete state)
|
|
318
462
|
toJSON() {
|
|
319
463
|
return JSON.stringify(this.serialize());
|
|
@@ -353,7 +497,10 @@ class MindCache {
|
|
|
353
497
|
if (entry && typeof entry === 'object' && 'value' in entry && 'attributes' in entry) {
|
|
354
498
|
this.stm[key] = {
|
|
355
499
|
value: entry.value,
|
|
356
|
-
attributes: {
|
|
500
|
+
attributes: {
|
|
501
|
+
...entry.attributes,
|
|
502
|
+
tags: entry.attributes.tags || [] // Ensure tags array exists
|
|
503
|
+
}
|
|
357
504
|
};
|
|
358
505
|
}
|
|
359
506
|
});
|
|
@@ -367,6 +514,21 @@ class MindCache {
|
|
|
367
514
|
// Add visible regular STM entries
|
|
368
515
|
Object.entries(this.stm).forEach(([key, entry]) => {
|
|
369
516
|
if (entry.attributes.visible) {
|
|
517
|
+
// Skip images and large files in system prompt to save context
|
|
518
|
+
if (entry.attributes.type === 'image') {
|
|
519
|
+
promptLines.push(`image ${key} available`);
|
|
520
|
+
return;
|
|
521
|
+
}
|
|
522
|
+
if (entry.attributes.type === 'file') {
|
|
523
|
+
if (entry.attributes.readonly) {
|
|
524
|
+
promptLines.push(`${key}: [${entry.attributes.type.toUpperCase()}] - ${entry.attributes.contentType || 'unknown format'}`);
|
|
525
|
+
}
|
|
526
|
+
else {
|
|
527
|
+
const sanitizedKey = key.replace(/[^a-zA-Z0-9_-]/g, '_');
|
|
528
|
+
promptLines.push(`${key}: [${entry.attributes.type.toUpperCase()}] - ${entry.attributes.contentType || 'unknown format'}. You can update this ${entry.attributes.type} using the write_${sanitizedKey} tool.`);
|
|
529
|
+
}
|
|
530
|
+
return;
|
|
531
|
+
}
|
|
370
532
|
const value = this.get_value(key);
|
|
371
533
|
const formattedValue = typeof value === 'object' && value !== null
|
|
372
534
|
? JSON.stringify(value)
|
|
@@ -376,8 +538,12 @@ class MindCache {
|
|
|
376
538
|
promptLines.push(`${key}: ${formattedValue}`);
|
|
377
539
|
}
|
|
378
540
|
else {
|
|
379
|
-
// Writable keys: show value and mention the tool
|
|
380
|
-
|
|
541
|
+
// Writable keys: show value and mention the tool (with sanitized tool name)
|
|
542
|
+
const sanitizedKey = key.replace(/[^a-zA-Z0-9_-]/g, '_');
|
|
543
|
+
const toolInstruction = `You can rewrite "${key}" by using the write_${sanitizedKey} tool. ` +
|
|
544
|
+
'This tool DOES NOT append — start your response with the old value ' +
|
|
545
|
+
`(${formattedValue})`;
|
|
546
|
+
promptLines.push(`${key}: ${formattedValue}. ${toolInstruction}`);
|
|
381
547
|
}
|
|
382
548
|
}
|
|
383
549
|
});
|
|
@@ -386,6 +552,16 @@ class MindCache {
|
|
|
386
552
|
promptLines.push(`$time: ${now.toTimeString().split(' ')[0]}`);
|
|
387
553
|
return promptLines.join('\n');
|
|
388
554
|
}
|
|
555
|
+
// Helper method to find original key from sanitized tool name
|
|
556
|
+
findKeyFromToolName(toolName) {
|
|
557
|
+
if (!toolName.startsWith('write_')) {
|
|
558
|
+
return undefined;
|
|
559
|
+
}
|
|
560
|
+
const sanitizedKey = toolName.replace('write_', '');
|
|
561
|
+
// Find the original key by checking all keys and their sanitized versions
|
|
562
|
+
const allKeys = Object.keys(this.stm);
|
|
563
|
+
return allKeys.find(k => k.replace(/[^a-zA-Z0-9_-]/g, '_') === sanitizedKey);
|
|
564
|
+
}
|
|
389
565
|
// Generate tools for Vercel AI SDK to write STM values (excludes readonly keys)
|
|
390
566
|
get_aisdk_tools() {
|
|
391
567
|
const tools = {};
|
|
@@ -395,18 +571,78 @@ class MindCache {
|
|
|
395
571
|
.map(([key]) => key);
|
|
396
572
|
// Create a write tool for each writable key
|
|
397
573
|
writableKeys.forEach(key => {
|
|
398
|
-
|
|
574
|
+
// Sanitize tool name to match OpenAI's pattern: ^[a-zA-Z0-9_-]+$
|
|
575
|
+
const sanitizedKey = key.replace(/[^a-zA-Z0-9_-]/g, '_');
|
|
576
|
+
const toolName = `write_${sanitizedKey}`;
|
|
577
|
+
const entry = this.stm[key];
|
|
578
|
+
const keyType = entry?.attributes.type || 'text';
|
|
579
|
+
// Create appropriate schema based on the key's type
|
|
580
|
+
let inputSchema;
|
|
581
|
+
let description = `Write a value to the STM key: ${key}`;
|
|
582
|
+
if (keyType === 'image' || keyType === 'file') {
|
|
583
|
+
description += ' (expects base64 encoded data)';
|
|
584
|
+
inputSchema = zod_1.z.object({
|
|
585
|
+
value: zod_1.z.string().describe(`Base64 encoded data for ${key}`),
|
|
586
|
+
contentType: zod_1.z.string().optional().describe(`MIME type for the ${keyType}`)
|
|
587
|
+
});
|
|
588
|
+
}
|
|
589
|
+
else if (keyType === 'json') {
|
|
590
|
+
description += ' (expects JSON string)';
|
|
591
|
+
inputSchema = zod_1.z.object({
|
|
592
|
+
value: zod_1.z.string().describe(`JSON string value for ${key}`)
|
|
593
|
+
});
|
|
594
|
+
}
|
|
595
|
+
else {
|
|
596
|
+
inputSchema = zod_1.z.object({
|
|
597
|
+
value: zod_1.z.string().describe(`The text value to write to ${key}`)
|
|
598
|
+
});
|
|
599
|
+
}
|
|
399
600
|
tools[toolName] = {
|
|
400
|
-
description
|
|
401
|
-
inputSchema
|
|
402
|
-
value: zod_1.z.string().describe(`The value to write to ${key}`)
|
|
403
|
-
}),
|
|
601
|
+
description,
|
|
602
|
+
inputSchema,
|
|
404
603
|
execute: async (input) => {
|
|
405
|
-
|
|
604
|
+
// Handle different types appropriately
|
|
605
|
+
if (keyType === 'image' || keyType === 'file') {
|
|
606
|
+
if (input.contentType) {
|
|
607
|
+
this.set_base64(key, input.value, input.contentType, keyType);
|
|
608
|
+
}
|
|
609
|
+
else {
|
|
610
|
+
// Use existing content type if available
|
|
611
|
+
const existingContentType = entry?.attributes.contentType;
|
|
612
|
+
if (existingContentType) {
|
|
613
|
+
this.set_base64(key, input.value, existingContentType, keyType);
|
|
614
|
+
}
|
|
615
|
+
else {
|
|
616
|
+
throw new Error(`Content type required for ${keyType} data`);
|
|
617
|
+
}
|
|
618
|
+
}
|
|
619
|
+
}
|
|
620
|
+
else {
|
|
621
|
+
// For text and json, use regular set_value
|
|
622
|
+
this.set_value(key, input.value);
|
|
623
|
+
}
|
|
624
|
+
// Create specialized success message based on type
|
|
625
|
+
let resultMessage;
|
|
626
|
+
if (keyType === 'image') {
|
|
627
|
+
resultMessage = `Successfully saved image to ${key}`;
|
|
628
|
+
}
|
|
629
|
+
else if (keyType === 'file') {
|
|
630
|
+
resultMessage = `Successfully saved file to ${key}`;
|
|
631
|
+
}
|
|
632
|
+
else if (keyType === 'json') {
|
|
633
|
+
resultMessage = `Successfully saved JSON data to ${key}`;
|
|
634
|
+
}
|
|
635
|
+
else {
|
|
636
|
+
// For text type, include the actual value
|
|
637
|
+
resultMessage = `Successfully wrote "${input.value}" to ${key}`;
|
|
638
|
+
}
|
|
406
639
|
return {
|
|
407
|
-
result:
|
|
640
|
+
result: resultMessage,
|
|
408
641
|
key: key,
|
|
409
|
-
value: input.value
|
|
642
|
+
value: input.value,
|
|
643
|
+
type: keyType,
|
|
644
|
+
contentType: input.contentType,
|
|
645
|
+
sanitizedKey: sanitizedKey
|
|
410
646
|
};
|
|
411
647
|
}
|
|
412
648
|
};
|
|
@@ -417,6 +653,376 @@ class MindCache {
|
|
|
417
653
|
}
|
|
418
654
|
return tools;
|
|
419
655
|
}
|
|
656
|
+
// Public method for client-side tool execution
|
|
657
|
+
executeToolCall(toolName, value) {
|
|
658
|
+
const originalKey = this.findKeyFromToolName(toolName);
|
|
659
|
+
if (!originalKey) {
|
|
660
|
+
return null;
|
|
661
|
+
}
|
|
662
|
+
// Check if key is readonly
|
|
663
|
+
const entry = this.stm[originalKey];
|
|
664
|
+
if (entry && entry.attributes.readonly) {
|
|
665
|
+
return null;
|
|
666
|
+
}
|
|
667
|
+
this.set_value(originalKey, value);
|
|
668
|
+
return {
|
|
669
|
+
result: `Successfully wrote "${value}" to ${originalKey}`,
|
|
670
|
+
key: originalKey,
|
|
671
|
+
value: value
|
|
672
|
+
};
|
|
673
|
+
}
|
|
674
|
+
// Add a tag to a key
|
|
675
|
+
addTag(key, tag) {
|
|
676
|
+
// Don't allow tagging hardcoded system keys
|
|
677
|
+
if (key === '$date' || key === '$time') {
|
|
678
|
+
return false;
|
|
679
|
+
}
|
|
680
|
+
const entry = this.stm[key];
|
|
681
|
+
if (!entry) {
|
|
682
|
+
return false;
|
|
683
|
+
}
|
|
684
|
+
// Initialize tags array if it doesn't exist
|
|
685
|
+
if (!entry.attributes.tags) {
|
|
686
|
+
entry.attributes.tags = [];
|
|
687
|
+
}
|
|
688
|
+
// Add tag if it doesn't already exist
|
|
689
|
+
if (!entry.attributes.tags.includes(tag)) {
|
|
690
|
+
entry.attributes.tags.push(tag);
|
|
691
|
+
this.notifyGlobalListeners();
|
|
692
|
+
return true;
|
|
693
|
+
}
|
|
694
|
+
return false; // Tag already exists
|
|
695
|
+
}
|
|
696
|
+
// Remove a tag from a key
|
|
697
|
+
removeTag(key, tag) {
|
|
698
|
+
// Don't allow modifying hardcoded system keys
|
|
699
|
+
if (key === '$date' || key === '$time') {
|
|
700
|
+
return false;
|
|
701
|
+
}
|
|
702
|
+
const entry = this.stm[key];
|
|
703
|
+
if (!entry || !entry.attributes.tags) {
|
|
704
|
+
return false;
|
|
705
|
+
}
|
|
706
|
+
const tagIndex = entry.attributes.tags.indexOf(tag);
|
|
707
|
+
if (tagIndex > -1) {
|
|
708
|
+
entry.attributes.tags.splice(tagIndex, 1);
|
|
709
|
+
this.notifyGlobalListeners();
|
|
710
|
+
return true;
|
|
711
|
+
}
|
|
712
|
+
return false; // Tag not found
|
|
713
|
+
}
|
|
714
|
+
// Get all tags for a key
|
|
715
|
+
getTags(key) {
|
|
716
|
+
if (key === '$date' || key === '$time') {
|
|
717
|
+
return []; // System keys have no tags
|
|
718
|
+
}
|
|
719
|
+
const entry = this.stm[key];
|
|
720
|
+
return entry?.attributes.tags || [];
|
|
721
|
+
}
|
|
722
|
+
// Get all unique tags across all entries
|
|
723
|
+
getAllTags() {
|
|
724
|
+
const allTags = new Set();
|
|
725
|
+
Object.values(this.stm).forEach(entry => {
|
|
726
|
+
if (entry.attributes.tags) {
|
|
727
|
+
entry.attributes.tags.forEach(tag => allTags.add(tag));
|
|
728
|
+
}
|
|
729
|
+
});
|
|
730
|
+
return Array.from(allTags);
|
|
731
|
+
}
|
|
732
|
+
// Check if a key has a specific tag
|
|
733
|
+
hasTag(key, tag) {
|
|
734
|
+
if (key === '$date' || key === '$time') {
|
|
735
|
+
return false; // System keys have no tags
|
|
736
|
+
}
|
|
737
|
+
const entry = this.stm[key];
|
|
738
|
+
return entry?.attributes.tags?.includes(tag) || false;
|
|
739
|
+
}
|
|
740
|
+
// Get a formatted string of all entries with a specific tag (ignores visible attribute)
|
|
741
|
+
getTagged(tag) {
|
|
742
|
+
const entries = [];
|
|
743
|
+
// Add regular STM entries that have the specified tag
|
|
744
|
+
Object.entries(this.stm).forEach(([key, entry]) => {
|
|
745
|
+
if (entry.attributes.tags?.includes(tag)) {
|
|
746
|
+
// Use get_value to handle template processing
|
|
747
|
+
entries.push([key, this.get_value(key)]);
|
|
748
|
+
}
|
|
749
|
+
});
|
|
750
|
+
return entries
|
|
751
|
+
.map(([key, value]) => `${key}: ${value}`)
|
|
752
|
+
.join(', ');
|
|
753
|
+
}
|
|
754
|
+
// Export STM to Markdown format
|
|
755
|
+
toMarkdown() {
|
|
756
|
+
const now = new Date();
|
|
757
|
+
const lines = [];
|
|
758
|
+
const appendixEntries = [];
|
|
759
|
+
let appendixCounter = 0;
|
|
760
|
+
const appendixLabels = {};
|
|
761
|
+
// Header
|
|
762
|
+
lines.push('# MindCache STM Export');
|
|
763
|
+
lines.push('');
|
|
764
|
+
lines.push(`Export Date: ${now.toISOString().split('T')[0]}`);
|
|
765
|
+
lines.push('');
|
|
766
|
+
lines.push('---');
|
|
767
|
+
lines.push('');
|
|
768
|
+
lines.push('## STM Entries');
|
|
769
|
+
lines.push('');
|
|
770
|
+
// Process each entry
|
|
771
|
+
Object.entries(this.stm).forEach(([key, entry]) => {
|
|
772
|
+
// Skip hardcoded keys - they won't be serialized
|
|
773
|
+
if (entry.attributes.hardcoded) {
|
|
774
|
+
return;
|
|
775
|
+
}
|
|
776
|
+
lines.push(`### ${key}`);
|
|
777
|
+
// Bug fix #1: Ensure type is always 'text' if undefined or the string "undefined"
|
|
778
|
+
const entryType = (entry.attributes.type && entry.attributes.type !== 'undefined') ? entry.attributes.type : 'text';
|
|
779
|
+
lines.push(`- **Type**: \`${entryType}\``);
|
|
780
|
+
// Flatten attributes at the same level as Type
|
|
781
|
+
lines.push(`- **Readonly**: \`${entry.attributes.readonly}\``);
|
|
782
|
+
lines.push(`- **Visible**: \`${entry.attributes.visible}\``);
|
|
783
|
+
lines.push(`- **Template**: \`${entry.attributes.template}\``);
|
|
784
|
+
if (entry.attributes.tags && entry.attributes.tags.length > 0) {
|
|
785
|
+
lines.push(`- **Tags**: \`${entry.attributes.tags.join('`, `')}\``);
|
|
786
|
+
}
|
|
787
|
+
// Handle content type for files/images
|
|
788
|
+
if (entry.attributes.contentType) {
|
|
789
|
+
lines.push(`- **Content Type**: \`${entry.attributes.contentType}\``);
|
|
790
|
+
}
|
|
791
|
+
// Handle value based on type - always use code blocks for text
|
|
792
|
+
if (entryType === 'image' || entryType === 'file') {
|
|
793
|
+
// Create appendix reference
|
|
794
|
+
const label = String.fromCharCode(65 + appendixCounter); // A, B, C, etc.
|
|
795
|
+
appendixLabels[key] = label;
|
|
796
|
+
appendixCounter++;
|
|
797
|
+
lines.push(`- **Value**: [See Appendix ${label}]`);
|
|
798
|
+
// Store for appendix section
|
|
799
|
+
appendixEntries.push({
|
|
800
|
+
key,
|
|
801
|
+
type: entryType,
|
|
802
|
+
contentType: entry.attributes.contentType || 'application/octet-stream',
|
|
803
|
+
base64: entry.value,
|
|
804
|
+
label
|
|
805
|
+
});
|
|
806
|
+
}
|
|
807
|
+
else if (entryType === 'json') {
|
|
808
|
+
// Format JSON with proper indentation
|
|
809
|
+
lines.push('- **Value**:');
|
|
810
|
+
lines.push('```json');
|
|
811
|
+
try {
|
|
812
|
+
const jsonValue = typeof entry.value === 'string' ? entry.value : JSON.stringify(entry.value, null, 2);
|
|
813
|
+
lines.push(jsonValue);
|
|
814
|
+
}
|
|
815
|
+
catch {
|
|
816
|
+
lines.push(String(entry.value));
|
|
817
|
+
}
|
|
818
|
+
lines.push('```');
|
|
819
|
+
}
|
|
820
|
+
else {
|
|
821
|
+
// Text type - always use code blocks
|
|
822
|
+
const valueStr = String(entry.value);
|
|
823
|
+
lines.push('- **Value**:');
|
|
824
|
+
lines.push('```');
|
|
825
|
+
lines.push(valueStr);
|
|
826
|
+
lines.push('```');
|
|
827
|
+
}
|
|
828
|
+
lines.push('');
|
|
829
|
+
lines.push('---');
|
|
830
|
+
lines.push('');
|
|
831
|
+
});
|
|
832
|
+
// Add appendix section if there are binary entries
|
|
833
|
+
if (appendixEntries.length > 0) {
|
|
834
|
+
lines.push('## Appendix: Binary Data');
|
|
835
|
+
lines.push('');
|
|
836
|
+
appendixEntries.forEach(({ key, contentType, base64, label }) => {
|
|
837
|
+
lines.push(`### Appendix ${label}: ${key}`);
|
|
838
|
+
lines.push(`**Type**: ${contentType}`);
|
|
839
|
+
lines.push('');
|
|
840
|
+
lines.push('```');
|
|
841
|
+
lines.push(base64);
|
|
842
|
+
lines.push('```');
|
|
843
|
+
lines.push('');
|
|
844
|
+
lines.push('---');
|
|
845
|
+
lines.push('');
|
|
846
|
+
});
|
|
847
|
+
}
|
|
848
|
+
lines.push('*End of MindCache Export*');
|
|
849
|
+
return lines.join('\n');
|
|
850
|
+
}
|
|
851
|
+
// Import STM from Markdown format
|
|
852
|
+
fromMarkdown(markdown) {
|
|
853
|
+
const lines = markdown.split('\n');
|
|
854
|
+
let currentSection = 'header';
|
|
855
|
+
let currentKey = null;
|
|
856
|
+
let currentEntry = null;
|
|
857
|
+
let inCodeBlock = false;
|
|
858
|
+
let codeBlockContent = [];
|
|
859
|
+
let codeBlockType = null;
|
|
860
|
+
const appendixData = {};
|
|
861
|
+
let currentAppendixKey = null;
|
|
862
|
+
const pendingEntries = {};
|
|
863
|
+
// Clear existing STM first
|
|
864
|
+
this.clear();
|
|
865
|
+
for (let i = 0; i < lines.length; i++) {
|
|
866
|
+
const line = lines[i];
|
|
867
|
+
const trimmed = line.trim();
|
|
868
|
+
// Detect sections
|
|
869
|
+
if (trimmed === '## STM Entries') {
|
|
870
|
+
currentSection = 'entries';
|
|
871
|
+
continue;
|
|
872
|
+
}
|
|
873
|
+
if (trimmed === '## Appendix: Binary Data') {
|
|
874
|
+
currentSection = 'appendix';
|
|
875
|
+
continue;
|
|
876
|
+
}
|
|
877
|
+
// Handle code blocks
|
|
878
|
+
if (trimmed === '```' || trimmed === '```json') {
|
|
879
|
+
if (!inCodeBlock) {
|
|
880
|
+
inCodeBlock = true;
|
|
881
|
+
codeBlockContent = [];
|
|
882
|
+
codeBlockType = currentSection === 'appendix' ? 'base64' : (trimmed === '```json' ? 'json' : 'value');
|
|
883
|
+
}
|
|
884
|
+
else {
|
|
885
|
+
inCodeBlock = false;
|
|
886
|
+
const content = codeBlockContent.join('\n');
|
|
887
|
+
if (currentSection === 'appendix' && currentAppendixKey) {
|
|
888
|
+
// Store appendix base64 data
|
|
889
|
+
appendixData[currentAppendixKey].base64 = content;
|
|
890
|
+
}
|
|
891
|
+
else if (currentEntry && codeBlockType === 'json') {
|
|
892
|
+
currentEntry.value = content;
|
|
893
|
+
}
|
|
894
|
+
else if (currentEntry && codeBlockType === 'value') {
|
|
895
|
+
currentEntry.value = content;
|
|
896
|
+
}
|
|
897
|
+
codeBlockContent = [];
|
|
898
|
+
codeBlockType = null;
|
|
899
|
+
}
|
|
900
|
+
continue;
|
|
901
|
+
}
|
|
902
|
+
if (inCodeBlock) {
|
|
903
|
+
codeBlockContent.push(line);
|
|
904
|
+
continue;
|
|
905
|
+
}
|
|
906
|
+
// Parse entries section
|
|
907
|
+
if (currentSection === 'entries') {
|
|
908
|
+
if (trimmed.startsWith('### ')) {
|
|
909
|
+
// Save previous entry if exists
|
|
910
|
+
if (currentKey && currentEntry && currentEntry.attributes) {
|
|
911
|
+
pendingEntries[currentKey] = currentEntry;
|
|
912
|
+
}
|
|
913
|
+
// Start new entry
|
|
914
|
+
currentKey = trimmed.substring(4);
|
|
915
|
+
currentEntry = {
|
|
916
|
+
value: undefined,
|
|
917
|
+
attributes: {
|
|
918
|
+
readonly: false,
|
|
919
|
+
visible: true,
|
|
920
|
+
hardcoded: false,
|
|
921
|
+
template: false,
|
|
922
|
+
type: 'text',
|
|
923
|
+
tags: []
|
|
924
|
+
}
|
|
925
|
+
};
|
|
926
|
+
}
|
|
927
|
+
else if (trimmed.startsWith('- **Type**: `')) {
|
|
928
|
+
const type = trimmed.match(/`([^`]+)`/)?.[1];
|
|
929
|
+
// Don't store "undefined" string - treat it as missing and keep default 'text'
|
|
930
|
+
if (currentEntry && type && type !== 'undefined') {
|
|
931
|
+
currentEntry.attributes.type = type;
|
|
932
|
+
}
|
|
933
|
+
}
|
|
934
|
+
else if (trimmed.startsWith('- **Readonly**: `')) {
|
|
935
|
+
const value = trimmed.match(/`([^`]+)`/)?.[1] === 'true';
|
|
936
|
+
if (currentEntry) {
|
|
937
|
+
currentEntry.attributes.readonly = value;
|
|
938
|
+
}
|
|
939
|
+
}
|
|
940
|
+
else if (trimmed.startsWith('- **Visible**: `')) {
|
|
941
|
+
const value = trimmed.match(/`([^`]+)`/)?.[1] === 'true';
|
|
942
|
+
if (currentEntry) {
|
|
943
|
+
currentEntry.attributes.visible = value;
|
|
944
|
+
}
|
|
945
|
+
}
|
|
946
|
+
else if (trimmed.startsWith('- **Template**: `')) {
|
|
947
|
+
const value = trimmed.match(/`([^`]+)`/)?.[1] === 'true';
|
|
948
|
+
if (currentEntry) {
|
|
949
|
+
currentEntry.attributes.template = value;
|
|
950
|
+
}
|
|
951
|
+
}
|
|
952
|
+
else if (trimmed.startsWith('- **Tags**: `')) {
|
|
953
|
+
const tagsStr = trimmed.substring(13, trimmed.length - 1);
|
|
954
|
+
if (currentEntry) {
|
|
955
|
+
currentEntry.attributes.tags = tagsStr.split('`, `');
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
else if (trimmed.startsWith('- **Content Type**: `')) {
|
|
959
|
+
const contentType = trimmed.match(/`([^`]+)`/)?.[1];
|
|
960
|
+
if (currentEntry && contentType) {
|
|
961
|
+
currentEntry.attributes.contentType = contentType;
|
|
962
|
+
}
|
|
963
|
+
}
|
|
964
|
+
else if (trimmed.startsWith('- **Value**: `')) {
|
|
965
|
+
const value = trimmed.substring(14, trimmed.length - 1);
|
|
966
|
+
if (currentEntry) {
|
|
967
|
+
currentEntry.value = value;
|
|
968
|
+
}
|
|
969
|
+
}
|
|
970
|
+
else if (trimmed.startsWith('- **Value**: [See Appendix ')) {
|
|
971
|
+
const labelMatch = trimmed.match(/Appendix ([A-Z])\]/);
|
|
972
|
+
if (currentEntry && labelMatch && currentKey) {
|
|
973
|
+
currentEntry.appendixLabel = labelMatch[1];
|
|
974
|
+
// Set a placeholder value so the entry is saved
|
|
975
|
+
currentEntry.value = '';
|
|
976
|
+
}
|
|
977
|
+
}
|
|
978
|
+
}
|
|
979
|
+
// Parse appendix section
|
|
980
|
+
if (currentSection === 'appendix') {
|
|
981
|
+
if (trimmed.startsWith('### Appendix ')) {
|
|
982
|
+
const match = trimmed.match(/### Appendix ([A-Z]): (.+)/);
|
|
983
|
+
if (match) {
|
|
984
|
+
const label = match[1];
|
|
985
|
+
const key = match[2];
|
|
986
|
+
currentAppendixKey = `${label}:${key}`;
|
|
987
|
+
appendixData[currentAppendixKey] = { contentType: '', base64: '' };
|
|
988
|
+
}
|
|
989
|
+
}
|
|
990
|
+
else if (trimmed.startsWith('**Type**: ')) {
|
|
991
|
+
const contentType = trimmed.substring(10);
|
|
992
|
+
if (currentAppendixKey) {
|
|
993
|
+
appendixData[currentAppendixKey].contentType = contentType;
|
|
994
|
+
}
|
|
995
|
+
}
|
|
996
|
+
}
|
|
997
|
+
}
|
|
998
|
+
// Save last entry
|
|
999
|
+
if (currentKey && currentEntry && currentEntry.attributes) {
|
|
1000
|
+
pendingEntries[currentKey] = currentEntry;
|
|
1001
|
+
}
|
|
1002
|
+
// Now combine entries with appendix data and populate STM
|
|
1003
|
+
Object.entries(pendingEntries).forEach(([key, entry]) => {
|
|
1004
|
+
const appendixLabel = entry.appendixLabel;
|
|
1005
|
+
if (appendixLabel) {
|
|
1006
|
+
// Find matching appendix data
|
|
1007
|
+
const appendixKey = `${appendixLabel}:${key}`;
|
|
1008
|
+
const appendixInfo = appendixData[appendixKey];
|
|
1009
|
+
if (appendixInfo && appendixInfo.base64) {
|
|
1010
|
+
entry.value = appendixInfo.base64;
|
|
1011
|
+
if (!entry.attributes.contentType && appendixInfo.contentType) {
|
|
1012
|
+
entry.attributes.contentType = appendixInfo.contentType;
|
|
1013
|
+
}
|
|
1014
|
+
}
|
|
1015
|
+
}
|
|
1016
|
+
// Set the entry in STM (value can be undefined for entries without value line)
|
|
1017
|
+
if (entry.value !== undefined && entry.attributes) {
|
|
1018
|
+
this.stm[key] = {
|
|
1019
|
+
value: entry.value,
|
|
1020
|
+
attributes: entry.attributes
|
|
1021
|
+
};
|
|
1022
|
+
}
|
|
1023
|
+
});
|
|
1024
|
+
this.notifyGlobalListeners();
|
|
1025
|
+
}
|
|
420
1026
|
}
|
|
421
1027
|
exports.MindCache = MindCache;
|
|
422
1028
|
// Create and export a single instance of MindCache
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED