(dirName, kvName)
| 375 | * @param {string} kvName |
| 376 | */ |
| 377 | export async function getLocalKeyValueStoreItems(dirName, kvName) { |
| 378 | const dir = getStorage(dirName); |
| 379 | const storePath = join(dir, 'key_value_stores', kvName); |
| 380 | |
| 381 | if (!existsSync(storePath)) { |
| 382 | return undefined; |
| 383 | } |
| 384 | |
| 385 | const dirents = await readdir(storePath, { withFileTypes: true }); |
| 386 | const fileNames = dirents.filter((dirent) => dirent.isFile()); |
| 387 | const keyValueStoreRecords = []; |
| 388 | |
| 389 | for (const fileName of fileNames) { |
| 390 | if (fileName.name.includes('__metadata__')) continue; |
| 391 | |
| 392 | const filePath = join(storePath, fileName.name); |
| 393 | const buffer = await readFile(filePath); |
| 394 | |
| 395 | const name = fileName.name.split('.').slice(0, -1).join('.'); |
| 396 | |
| 397 | if (isPrivateEntry(name)) { |
| 398 | continue; |
| 399 | } |
| 400 | |
| 401 | keyValueStoreRecords.push({ name, raw: buffer }); |
| 402 | } |
| 403 | |
| 404 | return keyValueStoreRecords; |
| 405 | } |
| 406 | |
| 407 | /** |
| 408 | * @param {string} dirName |
no test coverage detected
searching dependent graphs…