n8n-nodes-smart-memory 1.0.39 → 1.0.40
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 +217 -3
- package/dist/SmartMemory.node.d.ts.map +1 -1
- package/dist/SmartMemory.node.js +180 -12
- package/dist/SmartMemory.node.js.map +1 -1
- package/dist/constants.d.ts +2 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +2 -0
- package/dist/constants.js.map +1 -1
- package/dist/credentials/PostgresApi.credentials.d.ts +10 -0
- package/dist/credentials/PostgresApi.credentials.d.ts.map +1 -0
- package/dist/credentials/PostgresApi.credentials.js +106 -0
- package/dist/credentials/PostgresApi.credentials.js.map +1 -0
- package/dist/credentials/RedisApi.credentials.d.ts +10 -0
- package/dist/credentials/RedisApi.credentials.d.ts.map +1 -0
- package/dist/credentials/RedisApi.credentials.js +78 -0
- package/dist/credentials/RedisApi.credentials.js.map +1 -0
- package/package.json +5 -1
package/README.md
CHANGED
|
@@ -302,11 +302,124 @@ The system defines a storage interface that any backend can implement:
|
|
|
302
302
|
- Delete memory for chat identifier
|
|
303
303
|
|
|
304
304
|
**Supported Backends**:
|
|
305
|
-
- In-
|
|
306
|
-
-
|
|
305
|
+
- **In-Memory Storage** (volatile, for development/testing)
|
|
306
|
+
- **Redis Storage** (high-performance, optional persistence)
|
|
307
|
+
- **PostgreSQL Storage** (persistent, ACID-compliant)
|
|
307
308
|
|
|
308
309
|
The core logic is entirely independent of storage implementation, enabling deployment flexibility.
|
|
309
310
|
|
|
311
|
+
### Redis Backend
|
|
312
|
+
Redis provides high-performance, in-memory caching with optional persistence:
|
|
313
|
+
|
|
314
|
+
**Features**:
|
|
315
|
+
- Lightning-fast read/write operations (1-5ms)
|
|
316
|
+
- Automatic expiration via TTL (Time To Live)
|
|
317
|
+
- Connection pooling for efficiency
|
|
318
|
+
- Supports both `redis` and `ioredis` clients
|
|
319
|
+
- Key prefixing for namespace isolation
|
|
320
|
+
|
|
321
|
+
**Use Cases**:
|
|
322
|
+
- High-traffic chatbots requiring fast response times
|
|
323
|
+
- Session management with automatic cleanup
|
|
324
|
+
- Temporary conversations that don't need long-term storage
|
|
325
|
+
- Caching layer for active conversations
|
|
326
|
+
|
|
327
|
+
**Configuration**:
|
|
328
|
+
- Host, port, and authentication credentials
|
|
329
|
+
- Optional TTL for automatic memory expiration (default: 7 days)
|
|
330
|
+
- Key prefix for organizing data
|
|
331
|
+
- TLS/SSL support for secure connections
|
|
332
|
+
|
|
333
|
+
**Installation Requirements**:
|
|
334
|
+
```bash
|
|
335
|
+
npm install redis
|
|
336
|
+
# OR
|
|
337
|
+
npm install ioredis
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
### PostgreSQL Backend
|
|
341
|
+
PostgreSQL provides reliable, persistent storage with full ACID guarantees:
|
|
342
|
+
|
|
343
|
+
**Features**:
|
|
344
|
+
- Persistent storage (data survives restarts)
|
|
345
|
+
- JSONB support for flexible schema
|
|
346
|
+
- Indexed queries for fast retrieval
|
|
347
|
+
- Advanced analytics and reporting capabilities
|
|
348
|
+
- Connection pooling for scalability
|
|
349
|
+
|
|
350
|
+
**Use Cases**:
|
|
351
|
+
- Production deployments requiring data durability
|
|
352
|
+
- Long-term conversation storage
|
|
353
|
+
- Analytics and reporting on conversation history
|
|
354
|
+
- Compliance scenarios requiring audit trails
|
|
355
|
+
|
|
356
|
+
**Configuration**:
|
|
357
|
+
- Host, port, database name, and credentials
|
|
358
|
+
- SSL/TLS connection modes
|
|
359
|
+
- Connection pool size and timeout settings
|
|
360
|
+
- Custom table name (default: `smart_memory`)
|
|
361
|
+
|
|
362
|
+
**Installation Requirements**:
|
|
363
|
+
```bash
|
|
364
|
+
npm install pg
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
**Database Schema**:
|
|
368
|
+
PostgreSQL automatically creates the following table structure:
|
|
369
|
+
```sql
|
|
370
|
+
CREATE TABLE smart_memory (
|
|
371
|
+
chat_id VARCHAR(255) PRIMARY KEY,
|
|
372
|
+
memory_data JSONB NOT NULL,
|
|
373
|
+
updated_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
|
|
374
|
+
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
|
|
375
|
+
);
|
|
376
|
+
```
|
|
377
|
+
|
|
378
|
+
### Backend Comparison
|
|
379
|
+
|
|
380
|
+
| Feature | In-Memory | Redis | PostgreSQL |
|
|
381
|
+
|---------|-----------|-------|------------|
|
|
382
|
+
| **Speed** | ⚡ Fastest (<1ms) | ⚡ Very Fast (1-5ms) | 🐢 Moderate (5-20ms) |
|
|
383
|
+
| **Persistence** | ❌ None | 🟡 Optional (RDB/AOF) | ✅ Always |
|
|
384
|
+
| **Scalability** | ❌ Single instance | ✅ Horizontal (cluster) | ✅ Vertical (replication) |
|
|
385
|
+
| **Memory Usage** | 🔴 High (RAM only) | 🔴 High (RAM only) | 🟢 Low (disk-based) |
|
|
386
|
+
| **TTL Support** | ❌ No | ✅ Built-in | ❌ Manual |
|
|
387
|
+
| **Query Flexibility** | ❌ None | 🟡 Limited | ✅ Full SQL |
|
|
388
|
+
| **Best For** | Development/testing | High-traffic, temporary | Production, long-term |
|
|
389
|
+
|
|
390
|
+
### Choosing a Backend
|
|
391
|
+
|
|
392
|
+
**Use In-Memory when**:
|
|
393
|
+
- Developing or testing workflows
|
|
394
|
+
- Running short-lived workflows
|
|
395
|
+
- Memory loss on restart is acceptable
|
|
396
|
+
- Simplicity is paramount
|
|
397
|
+
|
|
398
|
+
**Use Redis when**:
|
|
399
|
+
- Building high-traffic chatbots (>1000 messages/minute)
|
|
400
|
+
- Conversations are temporary (hours to days)
|
|
401
|
+
- Automatic cleanup via TTL is desired
|
|
402
|
+
- Ultra-fast response time is critical
|
|
403
|
+
- You want optional persistence without full database overhead
|
|
404
|
+
|
|
405
|
+
**Use PostgreSQL when**:
|
|
406
|
+
- Building production applications
|
|
407
|
+
- Long-term storage is required (weeks, months, years)
|
|
408
|
+
- Data loss is unacceptable
|
|
409
|
+
- You need to query/analyze conversation history
|
|
410
|
+
- Compliance or audit requirements exist
|
|
411
|
+
- You want full ACID guarantees
|
|
412
|
+
|
|
413
|
+
### Migration Between Backends
|
|
414
|
+
|
|
415
|
+
When switching storage backends, note that existing data does not automatically migrate:
|
|
416
|
+
|
|
417
|
+
- **From In-Memory**: Data is lost when changing backends (in-memory is volatile)
|
|
418
|
+
- **From Redis to PostgreSQL**: Export data using Redis commands, then import into PostgreSQL
|
|
419
|
+
- **From PostgreSQL to Redis**: Query PostgreSQL data and save to Redis
|
|
420
|
+
|
|
421
|
+
For production deployments, consider implementing a data export/import strategy before switching backends.
|
|
422
|
+
|
|
310
423
|
### Validation Strategy
|
|
311
424
|
Input validation occurs at boundaries:
|
|
312
425
|
- Validates chat identifiers are non-empty
|
|
@@ -356,6 +469,100 @@ Not all use cases need all features:
|
|
|
356
469
|
|
|
357
470
|
Optional fields allow tuning the system to specific requirements.
|
|
358
471
|
|
|
472
|
+
## Setup and Installation
|
|
473
|
+
|
|
474
|
+
### Basic Installation
|
|
475
|
+
|
|
476
|
+
Install the node package in your n8n instance:
|
|
477
|
+
|
|
478
|
+
```bash
|
|
479
|
+
# For n8n community nodes
|
|
480
|
+
npm install n8n-nodes-smart-memory
|
|
481
|
+
|
|
482
|
+
# For local development
|
|
483
|
+
cd ~/.n8n/custom
|
|
484
|
+
npm install n8n-nodes-smart-memory
|
|
485
|
+
```
|
|
486
|
+
|
|
487
|
+
### Storage Backend Setup
|
|
488
|
+
|
|
489
|
+
#### In-Memory (Default)
|
|
490
|
+
No additional setup required. Works out of the box but data is lost on restart.
|
|
491
|
+
|
|
492
|
+
#### Redis Setup
|
|
493
|
+
|
|
494
|
+
1. Install Redis client library:
|
|
495
|
+
```bash
|
|
496
|
+
npm install redis
|
|
497
|
+
# OR for ioredis
|
|
498
|
+
npm install ioredis
|
|
499
|
+
```
|
|
500
|
+
|
|
501
|
+
2. Set up Redis server:
|
|
502
|
+
```bash
|
|
503
|
+
# Using Docker
|
|
504
|
+
docker run -d -p 6379:6379 redis:latest
|
|
505
|
+
|
|
506
|
+
# Or install locally (Ubuntu/Debian)
|
|
507
|
+
sudo apt-get install redis-server
|
|
508
|
+
sudo systemctl start redis
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
3. In n8n, create Redis credentials:
|
|
512
|
+
- Navigate to **Credentials** → **New Credential**
|
|
513
|
+
- Select **Redis API**
|
|
514
|
+
- Enter host, port, password (if applicable)
|
|
515
|
+
- Configure TTL and key prefix in node settings
|
|
516
|
+
|
|
517
|
+
For detailed Redis configuration, see [REDIS_SETUP.md](REDIS_SETUP.md)
|
|
518
|
+
|
|
519
|
+
#### PostgreSQL Setup
|
|
520
|
+
|
|
521
|
+
1. Install PostgreSQL client library:
|
|
522
|
+
```bash
|
|
523
|
+
npm install pg
|
|
524
|
+
```
|
|
525
|
+
|
|
526
|
+
2. Set up PostgreSQL database:
|
|
527
|
+
```bash
|
|
528
|
+
# Create database
|
|
529
|
+
createdb smart_memory
|
|
530
|
+
|
|
531
|
+
# Or using SQL
|
|
532
|
+
psql -U postgres -c "CREATE DATABASE smart_memory;"
|
|
533
|
+
```
|
|
534
|
+
|
|
535
|
+
3. In n8n, create PostgreSQL credentials:
|
|
536
|
+
- Navigate to **Credentials** → **New Credential**
|
|
537
|
+
- Select **PostgreSQL API**
|
|
538
|
+
- Enter host, port, database, user, password
|
|
539
|
+
- Configure SSL settings for production
|
|
540
|
+
|
|
541
|
+
The node automatically creates necessary tables and indexes on first use.
|
|
542
|
+
|
|
543
|
+
For detailed PostgreSQL configuration, see [POSTGRES_SETUP.md](POSTGRES_SETUP.md)
|
|
544
|
+
|
|
545
|
+
### Security Considerations
|
|
546
|
+
|
|
547
|
+
**Redis**:
|
|
548
|
+
- Enable authentication with strong passwords
|
|
549
|
+
- Use TLS for production deployments
|
|
550
|
+
- Bind to localhost unless clustering
|
|
551
|
+
- Disable dangerous commands (FLUSHALL, FLUSHDB)
|
|
552
|
+
|
|
553
|
+
**PostgreSQL**:
|
|
554
|
+
- Use SSL/TLS in production
|
|
555
|
+
- Create dedicated database user with minimal permissions
|
|
556
|
+
- Enable connection encryption
|
|
557
|
+
- Set up regular backups
|
|
558
|
+
- Use strong passwords
|
|
559
|
+
|
|
560
|
+
**General**:
|
|
561
|
+
- Never commit credentials to version control
|
|
562
|
+
- Use environment variables or n8n's credential system
|
|
563
|
+
- Rotate credentials regularly
|
|
564
|
+
- Monitor for unauthorized access
|
|
565
|
+
|
|
359
566
|
## Summary
|
|
360
567
|
|
|
361
568
|
Smart Memory transforms the challenge of conversational context management into a solved problem through:
|
|
@@ -363,7 +570,14 @@ Smart Memory transforms the challenge of conversational context management into
|
|
|
363
570
|
1. **Structured Memory**: Organizing conversations into LLM-ready formats
|
|
364
571
|
2. **Intelligent Windowing**: Balancing context retention with resource constraints
|
|
365
572
|
3. **Adaptive Architecture**: Optimizing structure based on conversation type
|
|
366
|
-
4. **Storage
|
|
573
|
+
4. **Flexible Storage**: Support for in-memory, Redis, and PostgreSQL backends
|
|
367
574
|
5. **Configuration-Driven**: Adapting to diverse use cases without code changes
|
|
368
575
|
|
|
369
576
|
The system serves as an intermediary layer between raw conversational data and language model consumption, handling the complexity of context management so that developers can focus on building conversational experiences rather than managing conversation state.
|
|
577
|
+
|
|
578
|
+
## Additional Resources
|
|
579
|
+
|
|
580
|
+
- **[BACKEND_INTEGRATION.md](BACKEND_INTEGRATION.md)**: Technical details on backend integration
|
|
581
|
+
- **[REDIS_SETUP.md](REDIS_SETUP.md)**: Complete Redis configuration guide
|
|
582
|
+
- **[POSTGRES_SETUP.md](POSTGRES_SETUP.md)**: Complete PostgreSQL configuration guide
|
|
583
|
+
- **[Smart Memory Example Workflow.json](Smart%20Memory%20Example%20Workflow.json)**: Example n8n workflow demonstrating usage
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SmartMemory.node.d.ts","sourceRoot":"","sources":["../src/SmartMemory.node.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"SmartMemory.node.d.ts","sourceRoot":"","sources":["../src/SmartMemory.node.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EAAE,oBAAoB,EAAuB,MAAM,+BAA+B,CAAC;AAK1F,qBAAa,WAAY,YAAW,SAAS;IAC3C,WAAW,EAAE,oBAAoB,CAyZ/B;IAEI,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;mBAgGlD,aAAa;IA8FlC,OAAO,CAAC,MAAM,CAAC,WAAW;IAuF1B,OAAO,CAAC,MAAM,CAAC,cAAc;IAsF7B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAuBhC,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM;CAIhE"}
|
package/dist/SmartMemory.node.js
CHANGED
|
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SmartMemory = void 0;
|
|
4
4
|
const SmartMemory_1 = require("./SmartMemory");
|
|
5
5
|
const InMemoryStorage_1 = require("./storage/InMemoryStorage");
|
|
6
|
+
const RedisStorage_1 = require("./storage/RedisStorage");
|
|
7
|
+
const PostgresStorage_1 = require("./storage/PostgresStorage");
|
|
6
8
|
const OutputCleaner_1 = require("./utils/OutputCleaner");
|
|
7
9
|
const constants_1 = require("./constants");
|
|
8
10
|
const NormalizationUtils_1 = require("./utils/NormalizationUtils");
|
|
@@ -15,7 +17,7 @@ class SmartMemory {
|
|
|
15
17
|
iconColor: 'black',
|
|
16
18
|
group: ['transform'],
|
|
17
19
|
version: 1,
|
|
18
|
-
description: '
|
|
20
|
+
description: 'Manage conversation memory for AI chatbots',
|
|
19
21
|
defaults: {
|
|
20
22
|
name: 'Smart Memory',
|
|
21
23
|
},
|
|
@@ -40,6 +42,7 @@ class SmartMemory {
|
|
|
40
42
|
type: 'string',
|
|
41
43
|
default: '',
|
|
42
44
|
description: 'Unique identifier for the session',
|
|
45
|
+
placeholder: 'user123_chat456',
|
|
43
46
|
required: true,
|
|
44
47
|
},
|
|
45
48
|
{
|
|
@@ -53,6 +56,7 @@ class SmartMemory {
|
|
|
53
56
|
},
|
|
54
57
|
default: '',
|
|
55
58
|
description: 'Text content of the message',
|
|
59
|
+
placeholder: 'Hello, how can I help you today?',
|
|
56
60
|
required: true,
|
|
57
61
|
},
|
|
58
62
|
{
|
|
@@ -75,10 +79,100 @@ class SmartMemory {
|
|
|
75
79
|
displayName: 'Storage Backend',
|
|
76
80
|
name: 'storageBackend',
|
|
77
81
|
type: 'options',
|
|
78
|
-
options: [
|
|
82
|
+
options: [
|
|
83
|
+
{ name: 'In-Memory', value: 'memory' },
|
|
84
|
+
{ name: 'Redis', value: 'redis' },
|
|
85
|
+
{ name: 'PostgreSQL', value: 'postgres' },
|
|
86
|
+
],
|
|
79
87
|
default: 'memory',
|
|
80
88
|
description: 'Where to store the memory',
|
|
81
89
|
},
|
|
90
|
+
{
|
|
91
|
+
displayName: 'Redis Credentials',
|
|
92
|
+
name: 'redisCredentials',
|
|
93
|
+
type: 'credentials',
|
|
94
|
+
displayOptions: {
|
|
95
|
+
show: {
|
|
96
|
+
storageBackend: ['redis'],
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
default: '',
|
|
100
|
+
required: true,
|
|
101
|
+
credentialTypes: [
|
|
102
|
+
{
|
|
103
|
+
name: 'redisApi',
|
|
104
|
+
required: true,
|
|
105
|
+
},
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
displayName: 'PostgreSQL Credentials',
|
|
110
|
+
name: 'postgresCredentials',
|
|
111
|
+
type: 'credentials',
|
|
112
|
+
displayOptions: {
|
|
113
|
+
show: {
|
|
114
|
+
storageBackend: ['postgres'],
|
|
115
|
+
},
|
|
116
|
+
},
|
|
117
|
+
default: '',
|
|
118
|
+
required: true,
|
|
119
|
+
credentialTypes: [
|
|
120
|
+
{
|
|
121
|
+
name: 'postgresApi',
|
|
122
|
+
required: true,
|
|
123
|
+
},
|
|
124
|
+
],
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
displayName: 'Storage Settings',
|
|
128
|
+
name: 'storageSettings',
|
|
129
|
+
type: 'collection',
|
|
130
|
+
placeholder: 'Add Storage Setting',
|
|
131
|
+
displayOptions: {
|
|
132
|
+
show: {
|
|
133
|
+
storageBackend: ['redis', 'postgres'],
|
|
134
|
+
},
|
|
135
|
+
},
|
|
136
|
+
default: {},
|
|
137
|
+
options: [
|
|
138
|
+
{
|
|
139
|
+
displayName: 'TTL (Redis Only)',
|
|
140
|
+
name: 'ttl',
|
|
141
|
+
type: 'number',
|
|
142
|
+
displayOptions: {
|
|
143
|
+
show: {
|
|
144
|
+
'/storageBackend': ['redis'],
|
|
145
|
+
},
|
|
146
|
+
},
|
|
147
|
+
default: 604800,
|
|
148
|
+
description: 'Time to live in seconds (0 for no expiration)',
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
displayName: 'Table Name (Postgres Only)',
|
|
152
|
+
name: 'tableName',
|
|
153
|
+
type: 'string',
|
|
154
|
+
displayOptions: {
|
|
155
|
+
show: {
|
|
156
|
+
'/storageBackend': ['postgres'],
|
|
157
|
+
},
|
|
158
|
+
},
|
|
159
|
+
default: 'smart_memory',
|
|
160
|
+
description: 'Database table name',
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
displayName: 'Use IoRedis (Redis Only)',
|
|
164
|
+
name: 'useIoRedis',
|
|
165
|
+
type: 'boolean',
|
|
166
|
+
displayOptions: {
|
|
167
|
+
show: {
|
|
168
|
+
'/storageBackend': ['redis'],
|
|
169
|
+
},
|
|
170
|
+
},
|
|
171
|
+
default: false,
|
|
172
|
+
description: 'Use ioredis library instead of redis',
|
|
173
|
+
},
|
|
174
|
+
],
|
|
175
|
+
},
|
|
82
176
|
{
|
|
83
177
|
displayName: 'Insert Mode',
|
|
84
178
|
name: 'insertMode',
|
|
@@ -112,7 +206,8 @@ class SmartMemory {
|
|
|
112
206
|
name: 'chatId',
|
|
113
207
|
type: 'string',
|
|
114
208
|
default: '',
|
|
115
|
-
description: '
|
|
209
|
+
description: 'Chat ID (defaults to Session ID)',
|
|
210
|
+
placeholder: 'chat_001',
|
|
116
211
|
},
|
|
117
212
|
{
|
|
118
213
|
displayName: 'Chat Type',
|
|
@@ -127,6 +222,7 @@ class SmartMemory {
|
|
|
127
222
|
type: 'string',
|
|
128
223
|
default: '',
|
|
129
224
|
description: 'Name of the chat',
|
|
225
|
+
placeholder: 'General Support',
|
|
130
226
|
},
|
|
131
227
|
{
|
|
132
228
|
displayName: 'Message ID',
|
|
@@ -134,6 +230,7 @@ class SmartMemory {
|
|
|
134
230
|
type: 'string',
|
|
135
231
|
default: '',
|
|
136
232
|
description: 'Optional unique identifier for the message',
|
|
233
|
+
placeholder: 'msg_12345',
|
|
137
234
|
},
|
|
138
235
|
{
|
|
139
236
|
displayName: 'Reply To Message',
|
|
@@ -141,20 +238,21 @@ class SmartMemory {
|
|
|
141
238
|
type: 'string',
|
|
142
239
|
default: '',
|
|
143
240
|
description: 'The message being replied to',
|
|
241
|
+
placeholder: 'Original message content...',
|
|
144
242
|
},
|
|
145
243
|
{
|
|
146
244
|
displayName: 'Include Reply Context',
|
|
147
245
|
name: 'includeReplyContext',
|
|
148
246
|
type: 'boolean',
|
|
149
247
|
default: false,
|
|
150
|
-
description: 'Include
|
|
248
|
+
description: 'Include reply context',
|
|
151
249
|
},
|
|
152
250
|
{
|
|
153
251
|
displayName: 'Include Reply Display Name',
|
|
154
252
|
name: 'includeReplyDisplayName',
|
|
155
253
|
type: 'boolean',
|
|
156
254
|
default: true,
|
|
157
|
-
description: 'Include reply sender display name
|
|
255
|
+
description: 'Include reply sender display name',
|
|
158
256
|
displayOptions: {
|
|
159
257
|
show: {
|
|
160
258
|
includeReplyContext: [true],
|
|
@@ -166,7 +264,7 @@ class SmartMemory {
|
|
|
166
264
|
name: 'includeReplyUsername',
|
|
167
265
|
type: 'boolean',
|
|
168
266
|
default: true,
|
|
169
|
-
description: 'Include reply sender username
|
|
267
|
+
description: 'Include reply sender username',
|
|
170
268
|
displayOptions: {
|
|
171
269
|
show: {
|
|
172
270
|
includeReplyContext: [true],
|
|
@@ -178,7 +276,7 @@ class SmartMemory {
|
|
|
178
276
|
name: 'includeReplyMessage',
|
|
179
277
|
type: 'boolean',
|
|
180
278
|
default: true,
|
|
181
|
-
description: 'Include reply message content
|
|
279
|
+
description: 'Include reply message content',
|
|
182
280
|
displayOptions: {
|
|
183
281
|
show: {
|
|
184
282
|
includeReplyContext: [true],
|
|
@@ -190,7 +288,7 @@ class SmartMemory {
|
|
|
190
288
|
name: 'includeReplyMessageId',
|
|
191
289
|
type: 'boolean',
|
|
192
290
|
default: false,
|
|
193
|
-
description: 'Include reply message ID
|
|
291
|
+
description: 'Include reply message ID',
|
|
194
292
|
displayOptions: {
|
|
195
293
|
show: {
|
|
196
294
|
includeReplyContext: [true],
|
|
@@ -209,7 +307,11 @@ class SmartMemory {
|
|
|
209
307
|
operation: ['insert'],
|
|
210
308
|
},
|
|
211
309
|
},
|
|
212
|
-
default: {
|
|
310
|
+
default: {
|
|
311
|
+
isBotResponse: false,
|
|
312
|
+
userRole: constants_1.DEFAULT_VALUES.USER_ROLE,
|
|
313
|
+
assistantRole: constants_1.DEFAULT_VALUES.ASSISTANT_ROLE,
|
|
314
|
+
},
|
|
213
315
|
options: [
|
|
214
316
|
{
|
|
215
317
|
displayName: 'Is Bot Response',
|
|
@@ -224,6 +326,7 @@ class SmartMemory {
|
|
|
224
326
|
type: 'string',
|
|
225
327
|
default: 'user',
|
|
226
328
|
description: 'Role for user messages',
|
|
329
|
+
placeholder: 'user',
|
|
227
330
|
displayOptions: {
|
|
228
331
|
show: {
|
|
229
332
|
isBotResponse: [false],
|
|
@@ -236,6 +339,7 @@ class SmartMemory {
|
|
|
236
339
|
type: 'string',
|
|
237
340
|
default: 'assistant',
|
|
238
341
|
description: 'Role for assistant/bot messages',
|
|
342
|
+
placeholder: 'assistant',
|
|
239
343
|
displayOptions: {
|
|
240
344
|
show: {
|
|
241
345
|
isBotResponse: [true],
|
|
@@ -248,6 +352,7 @@ class SmartMemory {
|
|
|
248
352
|
type: 'string',
|
|
249
353
|
default: '',
|
|
250
354
|
description: 'Unique identifier for the identity',
|
|
355
|
+
placeholder: 'user_123',
|
|
251
356
|
displayOptions: {
|
|
252
357
|
show: {
|
|
253
358
|
isBotResponse: [true, false],
|
|
@@ -260,6 +365,7 @@ class SmartMemory {
|
|
|
260
365
|
type: 'string',
|
|
261
366
|
default: '',
|
|
262
367
|
description: 'Display name for the identity',
|
|
368
|
+
placeholder: 'John Doe',
|
|
263
369
|
displayOptions: {
|
|
264
370
|
show: {
|
|
265
371
|
isBotResponse: [true, false],
|
|
@@ -272,6 +378,7 @@ class SmartMemory {
|
|
|
272
378
|
type: 'string',
|
|
273
379
|
default: '',
|
|
274
380
|
description: 'Username for the identity',
|
|
381
|
+
placeholder: '@johndoe',
|
|
275
382
|
displayOptions: {
|
|
276
383
|
show: {
|
|
277
384
|
isBotResponse: [true, false],
|
|
@@ -335,7 +442,8 @@ class SmartMemory {
|
|
|
335
442
|
if (isInsert || isGet) {
|
|
336
443
|
memoryWindowSizeParam = this.getNodeParameter('memoryWindowSize', i);
|
|
337
444
|
storageBackendParam = this.getNodeParameter('storageBackend', i);
|
|
338
|
-
rawMemorySettings =
|
|
445
|
+
rawMemorySettings =
|
|
446
|
+
this.getNodeParameter('memorySettings', i) ?? {};
|
|
339
447
|
}
|
|
340
448
|
const messageSettings = isInsert
|
|
341
449
|
? (this.getNodeParameter('messageSettings', i) ?? {})
|
|
@@ -367,7 +475,7 @@ class SmartMemory {
|
|
|
367
475
|
storageBackend,
|
|
368
476
|
};
|
|
369
477
|
if (!storage) {
|
|
370
|
-
storage = SmartMemory.createStorage(storageBackend);
|
|
478
|
+
storage = await SmartMemory.createStorage(storageBackend, this, i);
|
|
371
479
|
}
|
|
372
480
|
const config = SmartMemory.buildConfig(operation, memorySettings, this, i);
|
|
373
481
|
const memoryManager = new SmartMemory_1.PureMemoryManager(config, storage);
|
|
@@ -395,12 +503,72 @@ class SmartMemory {
|
|
|
395
503
|
}
|
|
396
504
|
return [returnData];
|
|
397
505
|
}
|
|
398
|
-
static createStorage(storageBackend) {
|
|
506
|
+
static async createStorage(storageBackend, context, itemIndex) {
|
|
399
507
|
// Validate storage backend early
|
|
400
508
|
const normalized = NormalizationUtils_1.NormalizationUtils.toString(storageBackend, constants_1.STORAGE_BACKENDS.MEMORY);
|
|
401
509
|
if (normalized === constants_1.STORAGE_BACKENDS.MEMORY) {
|
|
402
510
|
return new InMemoryStorage_1.InMemoryStorage();
|
|
403
511
|
}
|
|
512
|
+
if (normalized === constants_1.STORAGE_BACKENDS.REDIS) {
|
|
513
|
+
const credentials = await context.getCredentials('redisApi');
|
|
514
|
+
const storageSettings = context.getNodeParameter('storageSettings', itemIndex) ?? {};
|
|
515
|
+
const redisConfig = {
|
|
516
|
+
host: credentials.host,
|
|
517
|
+
port: credentials.port,
|
|
518
|
+
ttl: NormalizationUtils_1.NormalizationUtils.extractNumber(storageSettings, 'ttl', 604800, 0, Number.MAX_SAFE_INTEGER),
|
|
519
|
+
useIoRedis: NormalizationUtils_1.NormalizationUtils.extractBoolean(storageSettings, 'useIoRedis', false),
|
|
520
|
+
};
|
|
521
|
+
// Only add optional properties if they have values
|
|
522
|
+
if (credentials.password) {
|
|
523
|
+
redisConfig.password = credentials.password;
|
|
524
|
+
}
|
|
525
|
+
if (credentials.database !== undefined) {
|
|
526
|
+
redisConfig.database = credentials.database;
|
|
527
|
+
}
|
|
528
|
+
if (credentials.tls !== undefined) {
|
|
529
|
+
redisConfig.tls = credentials.tls;
|
|
530
|
+
}
|
|
531
|
+
if (credentials.connectionTimeout !== undefined) {
|
|
532
|
+
redisConfig.connectionTimeout = credentials.connectionTimeout;
|
|
533
|
+
}
|
|
534
|
+
if (credentials.keyPrefix) {
|
|
535
|
+
redisConfig.keyPrefix = credentials.keyPrefix;
|
|
536
|
+
}
|
|
537
|
+
const storage = new RedisStorage_1.RedisStorage(redisConfig);
|
|
538
|
+
await storage.initialize();
|
|
539
|
+
return storage;
|
|
540
|
+
}
|
|
541
|
+
if (normalized === constants_1.STORAGE_BACKENDS.POSTGRES) {
|
|
542
|
+
const credentials = await context.getCredentials('postgresApi');
|
|
543
|
+
const storageSettings = context.getNodeParameter('storageSettings', itemIndex) ?? {};
|
|
544
|
+
const sslMode = credentials.ssl;
|
|
545
|
+
let sslConfig = false;
|
|
546
|
+
if (sslMode === 'require' || sslMode === 'allow') {
|
|
547
|
+
sslConfig = true;
|
|
548
|
+
}
|
|
549
|
+
else if (sslMode === 'verify-ca') {
|
|
550
|
+
sslConfig = { rejectUnauthorized: true };
|
|
551
|
+
}
|
|
552
|
+
const postgresConfig = {
|
|
553
|
+
host: credentials.host,
|
|
554
|
+
port: credentials.port,
|
|
555
|
+
database: credentials.database,
|
|
556
|
+
user: credentials.user,
|
|
557
|
+
password: credentials.password,
|
|
558
|
+
ssl: sslConfig,
|
|
559
|
+
tableName: NormalizationUtils_1.NormalizationUtils.extractString(storageSettings, 'tableName', 'smart_memory'),
|
|
560
|
+
};
|
|
561
|
+
// Only add optional properties if they have values
|
|
562
|
+
if (credentials.connectionTimeout !== undefined) {
|
|
563
|
+
postgresConfig.connectionTimeout = credentials.connectionTimeout;
|
|
564
|
+
}
|
|
565
|
+
if (credentials.maxConnections !== undefined) {
|
|
566
|
+
postgresConfig.maxConnections = credentials.maxConnections;
|
|
567
|
+
}
|
|
568
|
+
const storage = new PostgresStorage_1.PostgresStorage(postgresConfig);
|
|
569
|
+
await storage.initialize();
|
|
570
|
+
return storage;
|
|
571
|
+
}
|
|
404
572
|
throw new Error(`Unsupported storage backend: '${normalized}'. Supported backends: ${Object.values(constants_1.STORAGE_BACKENDS).join(', ')}`);
|
|
405
573
|
}
|
|
406
574
|
static buildConfig(operation, memorySettings, context, itemIndex) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SmartMemory.node.js","sourceRoot":"","sources":["../src/SmartMemory.node.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SmartMemory.node.js","sourceRoot":"","sources":["../src/SmartMemory.node.ts"],"names":[],"mappings":"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"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -20,6 +20,8 @@ export declare const FIELD_MAPPINGS: {
|
|
|
20
20
|
export declare const MEDIA_PLACEHOLDER = "[Media/Other content]";
|
|
21
21
|
export declare const STORAGE_BACKENDS: {
|
|
22
22
|
readonly MEMORY: "memory";
|
|
23
|
+
readonly REDIS: "redis";
|
|
24
|
+
readonly POSTGRES: "postgres";
|
|
23
25
|
};
|
|
24
26
|
export declare const CHAT_TYPES: {
|
|
25
27
|
readonly PRIVATE: "private";
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;CAUjB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AAEX,eAAO,MAAM,iBAAiB,0BAA0B,CAAC;AAEzD,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;CAUjB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AAEX,eAAO,MAAM,iBAAiB,0BAA0B,CAAC;AAEzD,eAAO,MAAM,gBAAgB;;;;CAInB,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,OAAO,UAAU,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,OAAO,gBAAgB,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC"}
|
package/dist/constants.js
CHANGED
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEU,QAAA,cAAc,GAAG;IAC5B,cAAc,EAAE,WAAW;IAC3B,YAAY,EAAE,KAAK;IACnB,SAAS,EAAE,MAAM;IACjB,kBAAkB,EAAE,EAAE;IACtB,iBAAiB,EAAE,CAAC;IACpB,iBAAiB,EAAE,EAAE;IACrB,eAAe,EAAE,QAAiB;IAClC,SAAS,EAAE,SAAkB;IAC7B,kBAAkB,EAAE,cAAc;CAC1B,CAAC;AAEE,QAAA,cAAc,GAAG;IAC5B,YAAY,EAAE,aAAa;IAC3B,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,QAAQ;CACT,CAAC;AAEE,QAAA,iBAAiB,GAAG,uBAAuB,CAAC;AAE5C,QAAA,gBAAgB,GAAG;IAC9B,MAAM,EAAE,QAAQ;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEU,QAAA,cAAc,GAAG;IAC5B,cAAc,EAAE,WAAW;IAC3B,YAAY,EAAE,KAAK;IACnB,SAAS,EAAE,MAAM;IACjB,kBAAkB,EAAE,EAAE;IACtB,iBAAiB,EAAE,CAAC;IACpB,iBAAiB,EAAE,EAAE;IACrB,eAAe,EAAE,QAAiB;IAClC,SAAS,EAAE,SAAkB;IAC7B,kBAAkB,EAAE,cAAc;CAC1B,CAAC;AAEE,QAAA,cAAc,GAAG;IAC5B,YAAY,EAAE,aAAa;IAC3B,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,QAAQ;CACT,CAAC;AAEE,QAAA,iBAAiB,GAAG,uBAAuB,CAAC;AAE5C,QAAA,gBAAgB,GAAG;IAC9B,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;CACZ,CAAC;AAEE,QAAA,UAAU,GAAG;IACxB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,SAAS;CACV,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
|
|
2
|
+
export declare class PostgresApi implements ICredentialType {
|
|
3
|
+
name: string;
|
|
4
|
+
displayName: string;
|
|
5
|
+
documentationUrl: string;
|
|
6
|
+
properties: INodeProperties[];
|
|
7
|
+
authenticate: IAuthenticateGeneric;
|
|
8
|
+
test: ICredentialTestRequest;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=PostgresApi.credentials.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostgresApi.credentials.d.ts","sourceRoot":"","sources":["../../src/credentials/PostgresApi.credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,eAAe,EAChB,MAAM,cAAc,CAAC;AAEtB,qBAAa,WAAY,YAAW,eAAe;IACjD,IAAI,SAAiB;IACrB,WAAW,SAAoB;IAC/B,gBAAgB,SAAc;IAC9B,UAAU,EAAE,eAAe,EAAE,CAmF3B;IAEF,YAAY,EAAE,oBAAoB,CAGhC;IAEF,IAAI,EAAE,sBAAsB,CAK1B;CACH"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PostgresApi = void 0;
|
|
4
|
+
class PostgresApi {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.name = 'postgresApi';
|
|
7
|
+
this.displayName = 'PostgreSQL API';
|
|
8
|
+
this.documentationUrl = 'postgres';
|
|
9
|
+
this.properties = [
|
|
10
|
+
{
|
|
11
|
+
displayName: 'Host',
|
|
12
|
+
name: 'host',
|
|
13
|
+
type: 'string',
|
|
14
|
+
default: 'localhost',
|
|
15
|
+
required: true,
|
|
16
|
+
description: 'PostgreSQL server hostname or IP address',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
displayName: 'Port',
|
|
20
|
+
name: 'port',
|
|
21
|
+
type: 'number',
|
|
22
|
+
default: 5432,
|
|
23
|
+
required: true,
|
|
24
|
+
description: 'PostgreSQL server port',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
displayName: 'Database',
|
|
28
|
+
name: 'database',
|
|
29
|
+
type: 'string',
|
|
30
|
+
default: '',
|
|
31
|
+
required: true,
|
|
32
|
+
description: 'Database name',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
displayName: 'User',
|
|
36
|
+
name: 'user',
|
|
37
|
+
type: 'string',
|
|
38
|
+
default: '',
|
|
39
|
+
required: true,
|
|
40
|
+
description: 'Database user',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
displayName: 'Password',
|
|
44
|
+
name: 'password',
|
|
45
|
+
type: 'string',
|
|
46
|
+
typeOptions: {
|
|
47
|
+
password: true,
|
|
48
|
+
},
|
|
49
|
+
default: '',
|
|
50
|
+
required: true,
|
|
51
|
+
description: 'Database password',
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
displayName: 'SSL',
|
|
55
|
+
name: 'ssl',
|
|
56
|
+
type: 'options',
|
|
57
|
+
options: [
|
|
58
|
+
{
|
|
59
|
+
name: 'Disable',
|
|
60
|
+
value: 'disable',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
name: 'Allow',
|
|
64
|
+
value: 'allow',
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
name: 'Require',
|
|
68
|
+
value: 'require',
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
name: 'Verify CA',
|
|
72
|
+
value: 'verify-ca',
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
default: 'disable',
|
|
76
|
+
description: 'SSL connection mode',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
displayName: 'Connection Timeout',
|
|
80
|
+
name: 'connectionTimeout',
|
|
81
|
+
type: 'number',
|
|
82
|
+
default: 5000,
|
|
83
|
+
description: 'Connection timeout in milliseconds',
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
displayName: 'Max Connections',
|
|
87
|
+
name: 'maxConnections',
|
|
88
|
+
type: 'number',
|
|
89
|
+
default: 10,
|
|
90
|
+
description: 'Maximum number of connections in the pool',
|
|
91
|
+
},
|
|
92
|
+
];
|
|
93
|
+
this.authenticate = {
|
|
94
|
+
type: 'generic',
|
|
95
|
+
properties: {},
|
|
96
|
+
};
|
|
97
|
+
this.test = {
|
|
98
|
+
request: {
|
|
99
|
+
baseURL: '={{$credentials.host}}:{{$credentials.port}}',
|
|
100
|
+
url: '',
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
exports.PostgresApi = PostgresApi;
|
|
106
|
+
//# sourceMappingURL=PostgresApi.credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostgresApi.credentials.js","sourceRoot":"","sources":["../../src/credentials/PostgresApi.credentials.ts"],"names":[],"mappings":";;;AAOA,MAAa,WAAW;IAAxB;QACE,SAAI,GAAG,aAAa,CAAC;QACrB,gBAAW,GAAG,gBAAgB,CAAC;QAC/B,qBAAgB,GAAG,UAAU,CAAC;QAC9B,eAAU,GAAsB;YAC9B;gBACE,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,WAAW;gBACpB,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,0CAA0C;aACxD;YACD;gBACE,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,wBAAwB;aACtC;YACD;gBACE,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,eAAe;aAC7B;YACD;gBACE,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,eAAe;aAC7B;YACD;gBACE,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACX,QAAQ,EAAE,IAAI;iBACf;gBACD,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,mBAAmB;aACjC;YACD;gBACE,WAAW,EAAE,KAAK;gBAClB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,SAAS;qBACjB;oBACD;wBACE,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,OAAO;qBACf;oBACD;wBACE,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,SAAS;qBACjB;oBACD;wBACE,IAAI,EAAE,WAAW;wBACjB,KAAK,EAAE,WAAW;qBACnB;iBACF;gBACD,OAAO,EAAE,SAAS;gBAClB,WAAW,EAAE,qBAAqB;aACnC;YACD;gBACE,WAAW,EAAE,oBAAoB;gBACjC,IAAI,EAAE,mBAAmB;gBACzB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,oCAAoC;aAClD;YACD;gBACE,WAAW,EAAE,iBAAiB;gBAC9B,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,2CAA2C;aACzD;SACF,CAAC;QAEF,iBAAY,GAAyB;YACnC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,EAAE;SACf,CAAC;QAEF,SAAI,GAA2B;YAC7B,OAAO,EAAE;gBACP,OAAO,EAAE,8CAA8C;gBACvD,GAAG,EAAE,EAAE;aACR;SACF,CAAC;IACJ,CAAC;CAAA;AApGD,kCAoGC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
|
|
2
|
+
export declare class RedisApi implements ICredentialType {
|
|
3
|
+
name: string;
|
|
4
|
+
displayName: string;
|
|
5
|
+
documentationUrl: string;
|
|
6
|
+
properties: INodeProperties[];
|
|
7
|
+
authenticate: IAuthenticateGeneric;
|
|
8
|
+
test: ICredentialTestRequest;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=RedisApi.credentials.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RedisApi.credentials.d.ts","sourceRoot":"","sources":["../../src/credentials/RedisApi.credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,eAAe,EAChB,MAAM,cAAc,CAAC;AAEtB,qBAAa,QAAS,YAAW,eAAe;IAC9C,IAAI,SAAc;IAClB,WAAW,SAAe;IAC1B,gBAAgB,SAAW;IAC3B,UAAU,EAAE,eAAe,EAAE,CAuD3B;IAEF,YAAY,EAAE,oBAAoB,CAGhC;IAEF,IAAI,EAAE,sBAAsB,CAK1B;CACH"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RedisApi = void 0;
|
|
4
|
+
class RedisApi {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.name = 'redisApi';
|
|
7
|
+
this.displayName = 'Redis API';
|
|
8
|
+
this.documentationUrl = 'redis';
|
|
9
|
+
this.properties = [
|
|
10
|
+
{
|
|
11
|
+
displayName: 'Host',
|
|
12
|
+
name: 'host',
|
|
13
|
+
type: 'string',
|
|
14
|
+
default: 'localhost',
|
|
15
|
+
required: true,
|
|
16
|
+
description: 'Redis server hostname or IP address',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
displayName: 'Port',
|
|
20
|
+
name: 'port',
|
|
21
|
+
type: 'number',
|
|
22
|
+
default: 6379,
|
|
23
|
+
required: true,
|
|
24
|
+
description: 'Redis server port',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
displayName: 'Password',
|
|
28
|
+
name: 'password',
|
|
29
|
+
type: 'string',
|
|
30
|
+
typeOptions: {
|
|
31
|
+
password: true,
|
|
32
|
+
},
|
|
33
|
+
default: '',
|
|
34
|
+
description: 'Redis password (leave empty if no authentication)',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
displayName: 'Database',
|
|
38
|
+
name: 'database',
|
|
39
|
+
type: 'number',
|
|
40
|
+
default: 0,
|
|
41
|
+
description: 'Redis database number (0-15)',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
displayName: 'TLS',
|
|
45
|
+
name: 'tls',
|
|
46
|
+
type: 'boolean',
|
|
47
|
+
default: false,
|
|
48
|
+
description: 'Whether to use TLS/SSL connection',
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
displayName: 'Connection Timeout',
|
|
52
|
+
name: 'connectionTimeout',
|
|
53
|
+
type: 'number',
|
|
54
|
+
default: 5000,
|
|
55
|
+
description: 'Connection timeout in milliseconds',
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
displayName: 'Key Prefix',
|
|
59
|
+
name: 'keyPrefix',
|
|
60
|
+
type: 'string',
|
|
61
|
+
default: 'smart_memory:',
|
|
62
|
+
description: 'Prefix for all Redis keys',
|
|
63
|
+
},
|
|
64
|
+
];
|
|
65
|
+
this.authenticate = {
|
|
66
|
+
type: 'generic',
|
|
67
|
+
properties: {},
|
|
68
|
+
};
|
|
69
|
+
this.test = {
|
|
70
|
+
request: {
|
|
71
|
+
baseURL: '={{$credentials.host}}:{{$credentials.port}}',
|
|
72
|
+
url: '',
|
|
73
|
+
},
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
exports.RedisApi = RedisApi;
|
|
78
|
+
//# sourceMappingURL=RedisApi.credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RedisApi.credentials.js","sourceRoot":"","sources":["../../src/credentials/RedisApi.credentials.ts"],"names":[],"mappings":";;;AAOA,MAAa,QAAQ;IAArB;QACE,SAAI,GAAG,UAAU,CAAC;QAClB,gBAAW,GAAG,WAAW,CAAC;QAC1B,qBAAgB,GAAG,OAAO,CAAC;QAC3B,eAAU,GAAsB;YAC9B;gBACE,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,WAAW;gBACpB,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,qCAAqC;aACnD;YACD;gBACE,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,mBAAmB;aACjC;YACD;gBACE,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACX,QAAQ,EAAE,IAAI;iBACf;gBACD,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,mDAAmD;aACjE;YACD;gBACE,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,8BAA8B;aAC5C;YACD;gBACE,WAAW,EAAE,KAAK;gBAClB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,mCAAmC;aACjD;YACD;gBACE,WAAW,EAAE,oBAAoB;gBACjC,IAAI,EAAE,mBAAmB;gBACzB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,oCAAoC;aAClD;YACD;gBACE,WAAW,EAAE,YAAY;gBACzB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,eAAe;gBACxB,WAAW,EAAE,2BAA2B;aACzC;SACF,CAAC;QAEF,iBAAY,GAAyB;YACnC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,EAAE;SACf,CAAC;QAEF,SAAI,GAA2B;YAC7B,OAAO,EAAE;gBACP,OAAO,EAAE,8CAA8C;gBACvD,GAAG,EAAE,EAAE;aACR;SACF,CAAC;IACJ,CAAC;CAAA;AAxED,4BAwEC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "n8n-nodes-smart-memory",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.40",
|
|
4
4
|
"description": "Flexible memory management node for n8n with support for multiple storage backends",
|
|
5
5
|
"main": "dist/SmartMemory.node.js",
|
|
6
6
|
"scripts": {
|
|
@@ -17,6 +17,10 @@
|
|
|
17
17
|
"n8nNodesApiVersion": 1,
|
|
18
18
|
"nodes": [
|
|
19
19
|
"dist/SmartMemory.node.js"
|
|
20
|
+
],
|
|
21
|
+
"credentials": [
|
|
22
|
+
"dist/credentials/RedisApi.credentials.js",
|
|
23
|
+
"dist/credentials/PostgresApi.credentials.js"
|
|
20
24
|
]
|
|
21
25
|
},
|
|
22
26
|
"keywords": [
|