@luzzle/core 0.0.47 → 0.0.49

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.
@@ -6,7 +6,7 @@ import { Readable } from 'stream';
6
6
  import { databaseValueToPieceFrontmatterValue, getPieceFrontmatterSchemaFields, initializePieceFrontMatter, } from './utils/frontmatter.js';
7
7
  import { findFrontmatterField, setFrontmatterValue, unsetFrontmatterValue, getFrontmatterValue, } from './utils/frontmatter.path.js';
8
8
  import { makePieceMarkdown, makePieceMarkdownString } from './utils/markdown.js';
9
- import { calculateHashFromFile, makePieceAttachment, makePieceValue, } from './utils/piece.js';
9
+ import { isAttachableStream, calculateHashFromFile, makePieceAttachment, makePieceValue, } from './utils/piece.js';
10
10
  import compile from '../lib/ajv.js';
11
11
  import { getValidatePieceItemErrors, makePieceItemInsertable, makePieceItemUpdatable, validatePieceItem, } from './item.js';
12
12
  import { extractFullMarkdown } from '../lib/markdown.js';
@@ -217,7 +217,7 @@ class Piece {
217
217
  }
218
218
  for (const one of values) {
219
219
  const pieceValue = await makePieceValue(itemField, one);
220
- const val = pieceValue instanceof Readable
220
+ const val = isAttachableStream(pieceValue)
221
221
  ? await makePieceAttachment(markdown.filePath, itemField, pieceValue, this._storage)
222
222
  : pieceValue;
223
223
  setFrontmatterValue(updatedFrontmatter, fieldPath, val);
@@ -245,7 +245,7 @@ class Piece {
245
245
  else {
246
246
  const pieceValue = await makePieceValue(pieceField, value);
247
247
  const current = getFrontmatterValue(updatedFrontmatter, fieldPath);
248
- if (Array.isArray(current) && !(pieceValue instanceof Readable)) {
248
+ if (Array.isArray(current) && !isAttachableStream(pieceValue)) {
249
249
  const index = current.indexOf(pieceValue);
250
250
  if (index !== -1) {
251
251
  unsetFrontmatterValue(updatedFrontmatter, `${fieldPath}.${index}`);
@@ -1 +1 @@
1
- {"version":3,"file":"Piece.js","sourceRoot":"","sources":["../../../src/pieces/Piece.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Piece.js","sourceRoot":"","sources":["../../../src/pieces/Piece.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,6 @@ import slugify from '@sindresorhus/slugify';
9
9
  import { PassThrough } from 'stream';
10
10
  import { cpus } from 'os';
11
11
  import { makeCache } from './cache.fixtures.js';
12
- // Only mock external boundaries and environment
13
12
  vi.mock('./cache.js');
14
13
  vi.mock('./item.js');
15
14
  vi.mock('./items.js');
@@ -82,7 +81,8 @@ describe('pieces/Piece.ts', () => {
82
81
  const piece = new PieceType('table', storage);
83
82
  const db = mockKysely().db;
84
83
  mocks.cache.getCache.mockResolvedValue(makeCache({
85
- date_updated: 1000, date_added: 1000
84
+ date_updated: 1000,
85
+ date_added: 1000,
86
86
  }));
87
87
  vi.spyOn(storage, 'stat').mockResolvedValue({ last_modified: new Date(2000) });
88
88
  expect(await piece.isOutdated('file.md', db)).toBe(true);
@@ -96,7 +96,11 @@ describe('pieces/Piece.ts', () => {
96
96
  const storage = makeStorage();
97
97
  const pieceTest = new PieceType('table', storage);
98
98
  mocks.cache.getCache.mockResolvedValue(makeCache({
99
- date_added: cacheDate, date_updated: null, id: '1', file_path: filename, content_hash: 'h'
99
+ date_added: cacheDate,
100
+ date_updated: null,
101
+ id: '1',
102
+ file_path: filename,
103
+ content_hash: 'h',
100
104
  }));
101
105
  vi.spyOn(storage, 'stat').mockResolvedValue({ last_modified: fileDate });
102
106
  const isOutdated = await pieceTest.isOutdated(filename, db);
@@ -108,7 +112,8 @@ describe('pieces/Piece.ts', () => {
108
112
  const piece = new PieceType('table', storage);
109
113
  const db = mockKysely().db;
110
114
  mocks.cache.getCache.mockResolvedValue(makeCache({
111
- date_updated: 3000, date_added: 3000
115
+ date_updated: 3000,
116
+ date_added: 3000,
112
117
  }));
113
118
  vi.spyOn(storage, 'stat').mockResolvedValue({ last_modified: new Date(2000) });
114
119
  expect(await piece.isOutdated('file.md', db)).toBe(false);
@@ -182,7 +187,9 @@ describe('pieces/Piece.ts', () => {
182
187
  const piece = new PieceType('table');
183
188
  const db = mockKysely().db;
184
189
  mocks.cpus.mockReturnValue([{}]);
185
- mocks.items.selectItems.mockResolvedValue([makePieceItemSelectable({ file_path: 'missing.md' })]);
190
+ mocks.items.selectItems.mockResolvedValue([
191
+ makePieceItemSelectable({ file_path: 'missing.md' }),
192
+ ]);
186
193
  mocks.items.deleteItem.mockResolvedValue(undefined);
187
194
  const stream = await piece.prune(db, ['exists.md']);
188
195
  for await (const result of stream) {
@@ -197,7 +204,9 @@ describe('pieces/Piece.ts', () => {
197
204
  const piece = new PieceType('table');
198
205
  const db = mockKysely().db;
199
206
  mocks.cpus.mockReturnValue([{}]);
200
- mocks.items.selectItems.mockResolvedValue([makePieceItemSelectable({ file_path: 'missing.md' })]);
207
+ mocks.items.selectItems.mockResolvedValue([
208
+ makePieceItemSelectable({ file_path: 'missing.md' }),
209
+ ]);
201
210
  const stream = await piece.prune(db, [], { dryRun: true });
202
211
  for await (const result of stream) {
203
212
  if (!result.error) {
@@ -389,7 +398,7 @@ describe('pieces/Piece.ts', () => {
389
398
  const PieceType = makePieceMock();
390
399
  const piece = new PieceType('table');
391
400
  const dbPiece = makePieceItemSelectable({
392
- frontmatter_json: JSON.stringify({ title: 'db-title', keywords: ['a', 'b'] })
401
+ frontmatter_json: JSON.stringify({ title: 'db-title', keywords: ['a', 'b'] }),
393
402
  });
394
403
  const result = piece.toMarkdown(dbPiece);
395
404
  expect(result.frontmatter.title).toBe('db-title');
@@ -399,7 +408,7 @@ describe('pieces/Piece.ts', () => {
399
408
  const PieceType = makePieceMock();
400
409
  const schema = makeSchema({
401
410
  title: { type: 'string' },
402
- subtitle: { type: 'string', nullable: true }
411
+ subtitle: { type: 'string', nullable: true },
403
412
  });
404
413
  const piece = new PieceType('table', makeStorage(), schema);
405
414
  const markdown = makeMarkdownSample({ frontmatter: { title: 'old', subtitle: 'old' } });
@@ -411,7 +420,7 @@ describe('pieces/Piece.ts', () => {
411
420
  const PieceType = makePieceMock();
412
421
  const schema = makeSchema({
413
422
  title: { type: 'string' },
414
- subtitle: { type: 'string', nullable: true }
423
+ subtitle: { type: 'string', nullable: true },
415
424
  });
416
425
  const piece = new PieceType('table', makeStorage(), schema);
417
426
  const markdown = makeMarkdownSample({ frontmatter: { title: 'old', subtitle: 'old' } });
@@ -425,8 +434,8 @@ describe('pieces/Piece.ts', () => {
425
434
  const schema = makeSchema({
426
435
  meta: {
427
436
  type: 'object',
428
- properties: { author: { type: 'string' } }
429
- }
437
+ properties: { author: { type: 'string' } },
438
+ },
430
439
  });
431
440
  const piece = new PieceType('table', makeStorage(), schema);
432
441
  const markdown = makeMarkdownSample({ frontmatter: { title: 't' } });
@@ -440,8 +449,8 @@ describe('pieces/Piece.ts', () => {
440
449
  const schema = makeSchema({
441
450
  meta: {
442
451
  type: 'object',
443
- properties: { tags: { type: 'array', items: { type: 'string' } } }
444
- }
452
+ properties: { tags: { type: 'array', items: { type: 'string' } } },
453
+ },
445
454
  });
446
455
  const piece = new PieceType('table', makeStorage(), schema);
447
456
  const markdown = makeMarkdownSample({ frontmatter: { title: 'title', meta: { tags: ['a'] } } });
@@ -463,7 +472,7 @@ describe('pieces/Piece.ts', () => {
463
472
  test('setField handles an array of values', async () => {
464
473
  const PieceType = makePieceMock();
465
474
  const schema = makeSchema({
466
- tags: { type: 'array', items: { type: 'string' } }
475
+ tags: { type: 'array', items: { type: 'string' } },
467
476
  });
468
477
  const piece = new PieceType('table', makeStorage(), schema);
469
478
  const markdown = makeMarkdownSample({ frontmatter: { title: 't', tags: ['a'] } });
@@ -477,13 +486,16 @@ describe('pieces/Piece.ts', () => {
477
486
  const schema = makeSchema({
478
487
  meta: {
479
488
  type: 'object',
480
- properties: { cover: { type: 'string', format: 'asset' } }
481
- }
489
+ properties: { cover: { type: 'string', format: 'asset' } },
490
+ },
482
491
  });
483
492
  const storage = makeStorage();
484
493
  const piece = new PieceType('table', storage, schema);
485
494
  const markdown = makeMarkdownSample();
486
- mocks.pieceUtils.makePieceValue.mockResolvedValue(new PassThrough());
495
+ mocks.pieceUtils.makePieceValue.mockResolvedValue({
496
+ stream: new PassThrough(),
497
+ });
498
+ mocks.pieceUtils.isAttachableStream.mockReturnValueOnce(true);
487
499
  mocks.pieceUtils.makePieceAttachment.mockResolvedValue('assets/cover.jpg');
488
500
  const updated = await piece.setField(markdown, 'meta.cover', 'upload-me');
489
501
  const fm = updated.frontmatter;
@@ -511,8 +523,8 @@ describe('pieces/Piece.ts', () => {
511
523
  meta: {
512
524
  type: 'object',
513
525
  nullable: true,
514
- properties: { author: { type: 'string', nullable: true } }
515
- }
526
+ properties: { author: { type: 'string', nullable: true } },
527
+ },
516
528
  });
517
529
  const piece = new PieceType('table', makeStorage(), schema);
518
530
  const markdown = makeMarkdownSample({ frontmatter: { title: 't', meta: { author: 'Alice' } } });
@@ -523,7 +535,7 @@ describe('pieces/Piece.ts', () => {
523
535
  test('removeField removes specific array index', async () => {
524
536
  const PieceType = makePieceMock();
525
537
  const schema = makeSchema({
526
- tags: { type: 'array', nullable: true, items: { type: 'string', nullable: true } }
538
+ tags: { type: 'array', nullable: true, items: { type: 'string', nullable: true } },
527
539
  });
528
540
  const piece = new PieceType('table', makeStorage(), schema);
529
541
  const markdown = makeMarkdownSample({ frontmatter: { title: 't', tags: ['a', 'b', 'c'] } });
@@ -534,7 +546,7 @@ describe('pieces/Piece.ts', () => {
534
546
  test('removeField removes by value from array', async () => {
535
547
  const PieceType = makePieceMock();
536
548
  const schema = makeSchema({
537
- tags: { type: 'array', nullable: true, items: { type: 'string', nullable: true } }
549
+ tags: { type: 'array', nullable: true, items: { type: 'string', nullable: true } },
538
550
  });
539
551
  const piece = new PieceType('table', makeStorage(), schema);
540
552
  const markdown = makeMarkdownSample({ frontmatter: { title: 't', tags: ['a', 'b'] } });
@@ -546,7 +558,7 @@ describe('pieces/Piece.ts', () => {
546
558
  test('removeField returns markdown if array value missing', async () => {
547
559
  const PieceType = makePieceMock();
548
560
  const schema = makeSchema({
549
- tags: { type: 'array', nullable: true, items: { type: 'string', nullable: true } }
561
+ tags: { type: 'array', nullable: true, items: { type: 'string', nullable: true } },
550
562
  });
551
563
  const piece = new PieceType('table', makeStorage(), schema);
552
564
  const markdown = makeMarkdownSample({ frontmatter: { title: 't', tags: ['a'] } });
@@ -577,7 +589,7 @@ describe('pieces/Piece.ts', () => {
577
589
  test('removeField throws on required field', async () => {
578
590
  const PieceType = makePieceMock();
579
591
  const schema = makeSchema({
580
- title: { type: 'string', nullable: false }
592
+ title: { type: 'string', nullable: false },
581
593
  });
582
594
  const piece = new PieceType('table', makeStorage(), schema);
583
595
  const markdown = makeMarkdownSample({ frontmatter: { title: 't' } });
@@ -586,7 +598,7 @@ describe('pieces/Piece.ts', () => {
586
598
  test('removeField throws on bad field', async () => {
587
599
  const PieceType = makePieceMock();
588
600
  const schema = makeSchema({
589
- title: { type: 'string', nullable: false }
601
+ title: { type: 'string', nullable: false },
590
602
  });
591
603
  const piece = new PieceType('table', makeStorage(), schema);
592
604
  const markdown = makeMarkdownSample({ frontmatter: { title: 't' } });
@@ -596,7 +608,7 @@ describe('pieces/Piece.ts', () => {
596
608
  const PieceType = makePieceMock();
597
609
  const schema = makeSchema({
598
610
  s1: { type: 'string', nullable: true },
599
- s2: { type: 'string', nullable: true }
611
+ s2: { type: 'string', nullable: true },
600
612
  });
601
613
  const piece = new PieceType('table', makeStorage(), schema);
602
614
  const markdown = makeMarkdownSample({ frontmatter: { title: 't', s1: 'v', s2: 'v' } });
@@ -1 +1 @@
1
- {"version":3,"file":"Piece.test.js","sourceRoot":"","sources":["../../../src/pieces/Piece.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Piece.test.js","sourceRoot":"","sources":["../../../src/pieces/Piece.test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { Readable } from 'stream';
2
2
  import { PieceFrontmatterSchemaField, PieceFrontMatterValue } from './frontmatter.js';
3
3
  import LuzzleStorage from '../../storage/abstract.js';
4
- type AttachableStream = Readable & {
4
+ type AttachableStream = {
5
+ stream: Readable;
5
6
  filename?: string;
6
7
  };
7
8
  declare function calculateHashFromFile(stream: Readable): Promise<string>;
@@ -10,5 +11,6 @@ declare function detectStreamFileType(stream: Readable, maxBytes?: number): Prom
10
11
  stream: Readable;
11
12
  }>;
12
13
  declare function makePieceAttachment(file: string, field: PieceFrontmatterSchemaField, stream: AttachableStream, storage: LuzzleStorage): Promise<string>;
14
+ declare function isAttachableStream(value: unknown): value is AttachableStream;
13
15
  declare function makePieceValue(field: PieceFrontmatterSchemaField, value: PieceFrontMatterValue | AttachableStream): Promise<PieceFrontMatterValue | AttachableStream>;
14
- export { calculateHashFromFile, makePieceAttachment, makePieceValue, detectStreamFileType, type AttachableStream };
16
+ export { calculateHashFromFile, isAttachableStream, makePieceAttachment, makePieceValue, detectStreamFileType, type AttachableStream, };
@@ -33,8 +33,8 @@ async function downloadToStream(fileOrUrl) {
33
33
  reject(new Error(`HTTP Error: ${response.statusCode}`));
34
34
  }
35
35
  else {
36
- download.filename = path.basename(new URL(fileOrUrl).pathname);
37
- resolve(download);
36
+ const filename = path.basename(new URL(fileOrUrl).pathname);
37
+ resolve({ stream: download, filename });
38
38
  }
39
39
  });
40
40
  });
@@ -49,8 +49,8 @@ async function downloadToStream(fileOrUrl) {
49
49
  reject(err);
50
50
  });
51
51
  stream.on('open', () => {
52
- stream.filename = path.basename(file);
53
- resolve(stream);
52
+ const filename = path.basename(file);
53
+ resolve({ stream, filename });
54
54
  });
55
55
  });
56
56
  }
@@ -113,7 +113,7 @@ async function makePieceAttachment(file, field, stream, storage) {
113
113
  if (!exists) {
114
114
  await storage.makeDirectory(attachDir);
115
115
  }
116
- const { type: detectedType, stream: finalStream } = await detectStreamFileType(stream);
116
+ const { type: detectedType, stream: finalStream } = await detectStreamFileType(stream.stream);
117
117
  const sourceBasename = sourceInfo
118
118
  ? path.basename(sourceInfo, path.extname(sourceInfo))
119
119
  : field.name;
@@ -131,6 +131,12 @@ async function makePieceAttachment(file, field, stream, storage) {
131
131
  await pipeline(finalStream, storage.createWriteStream(relPath));
132
132
  return relPath;
133
133
  }
134
+ function isAttachableStream(value) {
135
+ return (typeof value === 'object' &&
136
+ value !== null &&
137
+ 'stream' in value &&
138
+ typeof value.stream?.pipe === 'function');
139
+ }
134
140
  async function makePieceValue(field, value) {
135
141
  const isArray = field.type === 'array';
136
142
  const format = isArray ? field.items.format : field.format;
@@ -142,11 +148,11 @@ async function makePieceValue(field, value) {
142
148
  }
143
149
  return downloadToStream(value);
144
150
  }
145
- else if (value instanceof Readable) {
146
- return value;
151
+ else if (typeof value === 'number' || typeof value === 'boolean' || Array.isArray(value)) {
152
+ throw new Error(`${field} must be a string or stream`);
147
153
  }
148
154
  else {
149
- throw new Error(`${field} must be a string or stream`);
155
+ return value;
150
156
  }
151
157
  }
152
158
  else if (type === 'boolean') {
@@ -157,5 +163,5 @@ async function makePieceValue(field, value) {
157
163
  }
158
164
  return value;
159
165
  }
160
- export { calculateHashFromFile, makePieceAttachment, makePieceValue, detectStreamFileType };
166
+ export { calculateHashFromFile, isAttachableStream, makePieceAttachment, makePieceValue, detectStreamFileType, };
161
167
  //# sourceMappingURL=piece.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"piece.js","sourceRoot":"","sources":["../../../../src/pieces/utils/piece.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"piece.js","sourceRoot":"","sources":["../../../../src/pieces/utils/piece.ts"],"names":[],"mappings":"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"}