@luzzle/core 0.0.62 → 0.0.63

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/README.md +38 -8
  2. package/dist/src/index.d.ts +2 -2
  3. package/dist/src/index.js +2 -2
  4. package/dist/src/index.js.map +1 -1
  5. package/dist/src/pieces/Piece.js +2 -2
  6. package/dist/src/pieces/Piece.js.map +1 -1
  7. package/dist/src/pieces/index.d.ts +1 -0
  8. package/dist/src/pieces/index.js +1 -0
  9. package/dist/src/pieces/index.js.map +1 -1
  10. package/dist/src/pieces/utils/piece.d.ts +3 -2
  11. package/dist/src/pieces/utils/piece.js +17 -14
  12. package/dist/src/pieces/utils/piece.js.map +1 -1
  13. package/dist/tsconfig.build.tsbuildinfo +1 -0
  14. package/package.json +3 -3
  15. package/dist/src/database/NodeSqliteDialect.test.d.ts +0 -1
  16. package/dist/src/database/NodeSqliteDialect.test.js +0 -104
  17. package/dist/src/database/NodeSqliteDialect.test.js.map +0 -1
  18. package/dist/src/database/client.test.d.ts +0 -1
  19. package/dist/src/database/client.test.js +0 -36
  20. package/dist/src/database/client.test.js.map +0 -1
  21. package/dist/src/database/migrations.test.d.ts +0 -1
  22. package/dist/src/database/migrations.test.js +0 -19
  23. package/dist/src/database/migrations.test.js.map +0 -1
  24. package/dist/src/database/utils.test.d.ts +0 -1
  25. package/dist/src/database/utils.test.js +0 -9
  26. package/dist/src/database/utils.test.js.map +0 -1
  27. package/dist/src/index.test.d.ts +0 -1
  28. package/dist/src/index.test.js +0 -9
  29. package/dist/src/index.test.js.map +0 -1
  30. package/dist/src/lib/ajv.test.d.ts +0 -1
  31. package/dist/src/lib/ajv.test.js +0 -49
  32. package/dist/src/lib/ajv.test.js.map +0 -1
  33. package/dist/src/lib/frontmatter.test.d.ts +0 -1
  34. package/dist/src/lib/frontmatter.test.js +0 -37
  35. package/dist/src/lib/frontmatter.test.js.map +0 -1
  36. package/dist/src/lib/markdown.test.d.ts +0 -1
  37. package/dist/src/lib/markdown.test.js +0 -34
  38. package/dist/src/lib/markdown.test.js.map +0 -1
  39. package/dist/src/llm/google.test.d.ts +0 -1
  40. package/dist/src/llm/google.test.js +0 -253
  41. package/dist/src/llm/google.test.js.map +0 -1
  42. package/dist/src/pieces/Piece.test.d.ts +0 -1
  43. package/dist/src/pieces/Piece.test.js +0 -628
  44. package/dist/src/pieces/Piece.test.js.map +0 -1
  45. package/dist/src/pieces/Pieces.test.d.ts +0 -1
  46. package/dist/src/pieces/Pieces.test.js +0 -325
  47. package/dist/src/pieces/Pieces.test.js.map +0 -1
  48. package/dist/src/pieces/cache.test.d.ts +0 -1
  49. package/dist/src/pieces/cache.test.js +0 -72
  50. package/dist/src/pieces/cache.test.js.map +0 -1
  51. package/dist/src/pieces/item.test.d.ts +0 -1
  52. package/dist/src/pieces/item.test.js +0 -243
  53. package/dist/src/pieces/item.test.js.map +0 -1
  54. package/dist/src/pieces/items.test.d.ts +0 -1
  55. package/dist/src/pieces/items.test.js +0 -103
  56. package/dist/src/pieces/items.test.js.map +0 -1
  57. package/dist/src/pieces/json.schema.test.d.ts +0 -1
  58. package/dist/src/pieces/json.schema.test.js +0 -27
  59. package/dist/src/pieces/json.schema.test.js.map +0 -1
  60. package/dist/src/pieces/manager.test.d.ts +0 -1
  61. package/dist/src/pieces/manager.test.js +0 -55
  62. package/dist/src/pieces/manager.test.js.map +0 -1
  63. package/dist/src/pieces/utils/frontmatter.path.test.d.ts +0 -1
  64. package/dist/src/pieces/utils/frontmatter.path.test.js +0 -319
  65. package/dist/src/pieces/utils/frontmatter.path.test.js.map +0 -1
  66. package/dist/src/pieces/utils/frontmatter.test.d.ts +0 -1
  67. package/dist/src/pieces/utils/frontmatter.test.js +0 -335
  68. package/dist/src/pieces/utils/frontmatter.test.js.map +0 -1
  69. package/dist/src/pieces/utils/markdown.test.d.ts +0 -1
  70. package/dist/src/pieces/utils/markdown.test.js +0 -38
  71. package/dist/src/pieces/utils/markdown.test.js.map +0 -1
  72. package/dist/src/pieces/utils/piece.test.d.ts +0 -1
  73. package/dist/src/pieces/utils/piece.test.js +0 -348
  74. package/dist/src/pieces/utils/piece.test.js.map +0 -1
  75. package/dist/src/storage/fs.test.d.ts +0 -1
  76. package/dist/src/storage/fs.test.js +0 -212
  77. package/dist/src/storage/fs.test.js.map +0 -1
  78. package/dist/test/db.d.ts +0 -3
  79. package/dist/test/db.js +0 -19
  80. package/dist/test/db.js.map +0 -1
  81. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs.test.js","sourceRoot":"","sources":["../../../src/storage/fs.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { describe, expect, test, vi, afterEach, MockInstance } from 'vitest'\nimport { readFile, writeFile, stat, unlink, mkdir, readdir } from 'fs/promises'\nimport { fdir } from 'fdir'\nimport {\n\tcreateReadStream,\n\tcreateWriteStream,\n\tDirent,\n\texistsSync,\n\tReadStream,\n\tStats,\n\tWriteStream,\n} from 'fs'\nimport StorageFileSystem from './fs.js'\nimport { resolve } from 'path'\nimport { PassThrough } from 'stream'\n\nvi.mock('fs')\n// vi.mock('path') // Use real path module\nvi.mock('fs/promises')\nvi.mock('fdir', () => {\n\tconst fdir = vi.fn()\n\tfdir.prototype = {\n\t\twithRelativePaths: vi.fn().mockReturnThis(),\n\t\twithDirs: vi.fn().mockReturnThis(),\n\t\tcrawl: vi.fn().mockImplementation(() => ({\n\t\t\tsync: vi.fn().mockReturnValue([]),\n\t\t})),\n\t}\n\treturn { fdir }\n})\n\nconst spies: { [key: string]: MockInstance } = {}\nconst mocks = {\n\tstat: vi.mocked(stat),\n\treadFile: vi.mocked(readFile),\n\twriteFile: vi.mocked(writeFile),\n\tunlink: vi.mocked(unlink),\n\tmkdir: vi.mocked(mkdir),\n\tfdir: vi.mocked(fdir),\n\treaddir: vi.mocked(readdir),\n\tcreateReadStream: vi.mocked(createReadStream),\n\tcreateWriteStream: vi.mocked(createWriteStream),\n\texistsSync: vi.mocked(existsSync),\n\t// relative: vi.mocked(relative),\n\t// resolve: vi.mocked(resolve),\n}\n\ndescribe('lib/storage/fs.ts', () => {\n\tafterEach(() => {\n\t\tObject.values(mocks).forEach((mock) => {\n\t\t\tmock.mockReset()\n\t\t})\n\n\t\tObject.keys(spies).forEach((key) => {\n\t\t\tspies[key].mockRestore()\n\t\t\tdelete spies[key]\n\t\t})\n\t})\n\n\ttest('constructor', async () => {\n\t\tconst root = '/root/dir'\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\n\t\tconst storage = new StorageFileSystem(root)\n\n\t\texpect(storage.root).toEqual(root)\n\t})\n\n\ttest('constructor throws', async () => {\n\t\tconst root = '/root/dir'\n\n\t\tmocks.existsSync.mockReturnValueOnce(false)\n\n\t\texpect(() => new StorageFileSystem(root)).toThrowError()\n\t})\n\n\ttest('parseArgPath', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst expectedRelative = 'relative/path'\n const inputPath = resolve(root, expectedRelative)\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\t// mocks.relative.mockReturnValueOnce(relative)\n\t\tconst storage = new StorageFileSystem(root)\n\n\t\tconst parsedPath = storage.parseArgPath(inputPath)\n\n\t\texpect(parsedPath).toEqual(expectedRelative)\n\t})\n\n\ttest('readFile as utf8', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst expectedPath = resolve(root, './path')\n\t\tconst contents = 'file contents'\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.readFile.mockResolvedValueOnce(contents)\n\t\tconst storage = new StorageFileSystem(root)\n\n\t\tconst file = await storage.readFile('./path', 'text')\n\n\t\texpect(mocks.readFile).toHaveBeenCalledWith(expectedPath, 'utf-8')\n\t\texpect(file).toEqual(contents)\n\t})\n\n\ttest('readFile as binary', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst expectedPath = resolve(root, './path')\n\t\tconst contents = 'file contents'\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.readFile.mockResolvedValueOnce(contents)\n\t\tconst storage = new StorageFileSystem(root)\n\n\t\tconst file = await storage.readFile('./path')\n\n\t\texpect(mocks.readFile).toHaveBeenCalledWith(expectedPath)\n\t\texpect(file).toEqual(contents)\n\t})\n\n\ttest('writeFile buffer', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst expectedPath = resolve(root, './path')\n\t\tconst buffer = Buffer.from('file contents')\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.writeFile.mockResolvedValueOnce(undefined)\n\t\tconst storage = new StorageFileSystem(root)\n\n\t\tawait storage.writeFile('./path', buffer)\n\n\t\texpect(mocks.writeFile).toHaveBeenCalledWith(expectedPath, buffer, 'binary')\n\t})\n\n\ttest('writeFile text', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst expectedPath = resolve(root, './path')\n\t\tconst contents = 'file contents'\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.writeFile.mockResolvedValueOnce(undefined)\n\t\tconst storage = new StorageFileSystem(root)\n\n\t\tawait storage.writeFile('./path', contents)\n\n\t\texpect(mocks.writeFile).toHaveBeenCalledWith(expectedPath, contents, 'utf8')\n\t})\n\n\ttest('getFilesIn recursive', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst dirs = ['dir1', 'dir2']\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tspies.fdirSync = vi.spyOn(fdir.prototype, 'crawl').mockImplementation(\n\t\t\t() =>\n\t\t\t\t({\n\t\t\t\t\twithPromise: vi.fn().mockResolvedValueOnce(dirs),\n\t\t\t\t\twithRelativePaths: vi.fn().mockReturnThis(),\n\t\t\t\t}) as unknown as ReturnType<fdir['crawl']>,\n\t\t)\n\n\t\tconst storage = new StorageFileSystem(root)\n\t\tconst results = await storage.getFilesIn('./path', { deep: true })\n\n\t\texpect(spies.fdirSync).toHaveBeenCalled()\n\t\texpect(results).toEqual(dirs)\n\t})\n\n\ttest('getFilesIn', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst dirs = [\n\t\t\t{ name: 'dir1', isFile: () => false },\n\t\t\t{ name: 'file1', isFile: () => true },\n\t\t] as unknown as Dirent[]\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.readdir.mockResolvedValueOnce(dirs)\n\n\t\tconst storage = new StorageFileSystem(root)\n\t\tconst results = await storage.getFilesIn('./path')\n\n\t\texpect(mocks.readdir).toHaveBeenCalled()\n\t\texpect(results).toEqual(['dir1/', 'file1'])\n\t})\n\n\ttest('exists', async () => {\n\t\tconst root = '/root/dir'\n\t\t\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.stat.mockResolvedValueOnce({} as Stats)\n\n\t\tconst storage = new StorageFileSystem(root)\n\t\tconst result = await storage.exists('./path')\n\n\t\texpect(result).toEqual(true)\n\t})\n\n\ttest('delete', async () => {\n\t\tconst root = '/root/dir'\n\t\t\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.unlink.mockResolvedValueOnce(undefined)\n\n\t\tconst storage = new StorageFileSystem(root)\n\t\tawait storage.delete('./path')\n\n\t\texpect(mocks.unlink).toHaveBeenCalledOnce()\n\t})\n\n\ttest('stat', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst stats = { size: 123, isFile: () => true, mtime: new Date() } as unknown as Stats\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.stat.mockResolvedValueOnce(stats)\n\n\t\tconst storage = new StorageFileSystem(root)\n\t\tconst results = await storage.stat('./path')\n\n\t\texpect(results).toEqual({\n\t\t\tsize: stats.size,\n\t\t\ttype: 'file',\n\t\t\tlast_modified: stats.mtime,\n\t\t})\n\t})\n\n\ttest('stat on dir', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst stats = { size: 123, isFile: () => false, mtime: new Date() } as unknown as Stats\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.stat.mockResolvedValueOnce(stats)\n\n\t\tconst storage = new StorageFileSystem(root)\n\t\tconst results = await storage.stat('./path')\n\n\t\texpect(results).toEqual({\n\t\t\tsize: stats.size,\n\t\t\ttype: 'directory',\n\t\t\tlast_modified: stats.mtime,\n\t\t})\n\t})\n\n\ttest('createReadStream', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst stream = new PassThrough() as unknown as ReadStream\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.createReadStream.mockReturnValueOnce(stream)\n\n\t\tconst storage = new StorageFileSystem(root)\n\t\tconst results = storage.createReadStream('./path')\n\n\t\texpect(results).toEqual(stream)\n\t})\n\n\ttest('createWritestream', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst stream = new PassThrough() as unknown as WriteStream\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.createWriteStream.mockReturnValueOnce(stream)\n\n\t\tconst storage = new StorageFileSystem(root)\n\t\tconst results = storage.createWriteStream('./path')\n\n\t\texpect(results).toEqual(stream)\n\t})\n\n\ttest('makeDirectory', async () => {\n\t\tconst root = '/root/dir'\n\t\tconst expectedPath = resolve(root, './path')\n\n\t\tmocks.existsSync.mockReturnValueOnce(true)\n\t\tmocks.mkdir.mockResolvedValueOnce('')\n\n\t\tconst storage = new StorageFileSystem(root)\n\t\tawait storage.makeDirectory('./path')\n\n\t\texpect(mocks.mkdir).toHaveBeenCalledWith(expectedPath, { recursive: true })\n\t})\n\n test('prevents traversal', async () => {\n const root = '/root/dir'\n mocks.existsSync.mockReturnValueOnce(true)\n const storage = new StorageFileSystem(root)\n \n await expect(() => storage.readFile('../outside', 'text')).rejects.toThrow('Path traversal attempt detected')\n })\n})\n"]}
package/dist/test/db.d.ts DELETED
@@ -1,3 +0,0 @@
1
- import { type LuzzleDatabase } from '../src/database/tables/index.js';
2
- export declare function setupDatabase(): Promise<LuzzleDatabase>;
3
- export declare function teardownDatabase(db: LuzzleDatabase): Promise<void>;
package/dist/test/db.js DELETED
@@ -1,19 +0,0 @@
1
- import { getDatabaseClient } from '../src/database/client.js';
2
- import { sql } from 'kysely';
3
- import migrate from '../src/database/migrations.js';
4
- let cachedDb = null;
5
- export async function setupDatabase() {
6
- if (!cachedDb) {
7
- cachedDb = getDatabaseClient(':memory:');
8
- const result = await migrate(cachedDb);
9
- if (result.error) {
10
- throw new Error(`Core migration failed: ${result.error}`);
11
- }
12
- }
13
- await sql `BEGIN`.execute(cachedDb);
14
- return cachedDb;
15
- }
16
- export async function teardownDatabase(db) {
17
- await sql `ROLLBACK`.execute(db);
18
- }
19
- //# sourceMappingURL=db.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../test/db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAE7D,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAC5B,OAAO,OAAO,MAAM,+BAA+B,CAAA;AAEnD,IAAI,QAAQ,GAA0B,IAAI,CAAA;AAE1C,MAAM,CAAC,KAAK,UAAU,aAAa;IAClC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,QAAQ,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;QACtC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;QAC1D,CAAC;IACF,CAAC;IACD,MAAM,GAAG,CAAA,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAClC,OAAO,QAAQ,CAAA;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,EAAkB;IACxD,MAAM,GAAG,CAAA,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AAChC,CAAC","sourcesContent":["import { getDatabaseClient } from '../src/database/client.js'\nimport { type LuzzleDatabase } from '../src/database/tables/index.js'\nimport { sql } from 'kysely'\nimport migrate from '../src/database/migrations.js'\n\nlet cachedDb: LuzzleDatabase | null = null\n\nexport async function setupDatabase() {\n\tif (!cachedDb) {\n\t\tcachedDb = getDatabaseClient(':memory:')\n\t\tconst result = await migrate(cachedDb)\n\t\tif (result.error) {\n\t\t\tthrow new Error(`Core migration failed: ${result.error}`)\n\t\t}\n\t}\n\tawait sql`BEGIN`.execute(cachedDb)\n\treturn cachedDb\n}\n\nexport async function teardownDatabase(db: LuzzleDatabase) {\n\tawait sql`ROLLBACK`.execute(db)\n}\n"]}