@webiny/stdlib 0.0.1
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/LICENSE +21 -0
- package/README.md +60 -0
- package/dist/LICENSE +21 -0
- package/dist/README.md +60 -0
- package/dist/browser/features/LocalStorageCache/LocalStorageCache.d.ts +26 -0
- package/dist/browser/features/LocalStorageCache/LocalStorageCache.d.ts.map +1 -0
- package/dist/browser/features/LocalStorageCache/LocalStorageCache.js +159 -0
- package/dist/browser/features/LocalStorageCache/LocalStorageCache.js.map +1 -0
- package/dist/browser/features/LocalStorageCache/errors.d.ts +26 -0
- package/dist/browser/features/LocalStorageCache/errors.d.ts.map +1 -0
- package/dist/browser/features/LocalStorageCache/errors.js +23 -0
- package/dist/browser/features/LocalStorageCache/errors.js.map +1 -0
- package/dist/browser/features/LocalStorageCache/feature.d.ts +6 -0
- package/dist/browser/features/LocalStorageCache/feature.d.ts.map +1 -0
- package/dist/browser/features/LocalStorageCache/feature.js +10 -0
- package/dist/browser/features/LocalStorageCache/feature.js.map +1 -0
- package/dist/browser/features/LocalStorageCache/index.d.ts +4 -0
- package/dist/browser/features/LocalStorageCache/index.d.ts.map +1 -0
- package/dist/browser/features/LocalStorageCache/index.js +4 -0
- package/dist/browser/features/LocalStorageCache/index.js.map +1 -0
- package/dist/browser/index.d.ts +2 -0
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.js +2 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/common/core/BaseError.d.ts +13 -0
- package/dist/common/core/BaseError.d.ts.map +1 -0
- package/dist/common/core/BaseError.js +8 -0
- package/dist/common/core/BaseError.js.map +1 -0
- package/dist/common/core/Result.d.ts +103 -0
- package/dist/common/core/Result.d.ts.map +1 -0
- package/dist/common/core/Result.js +127 -0
- package/dist/common/core/Result.js.map +1 -0
- package/dist/common/core/ResultAsync.d.ts +17 -0
- package/dist/common/core/ResultAsync.d.ts.map +1 -0
- package/dist/common/core/ResultAsync.js +62 -0
- package/dist/common/core/ResultAsync.js.map +1 -0
- package/dist/common/core/createAbstraction.d.ts +4 -0
- package/dist/common/core/createAbstraction.d.ts.map +1 -0
- package/dist/common/core/createAbstraction.js +5 -0
- package/dist/common/core/createAbstraction.js.map +1 -0
- package/dist/common/core/createFeature.d.ts +10 -0
- package/dist/common/core/createFeature.d.ts.map +1 -0
- package/dist/common/core/createFeature.js +9 -0
- package/dist/common/core/createFeature.js.map +1 -0
- package/dist/common/core/index.d.ts +7 -0
- package/dist/common/core/index.d.ts.map +1 -0
- package/dist/common/core/index.js +6 -0
- package/dist/common/core/index.js.map +1 -0
- package/dist/common/features/Cache/AsyncMemoryCache.d.ts +23 -0
- package/dist/common/features/Cache/AsyncMemoryCache.d.ts.map +1 -0
- package/dist/common/features/Cache/AsyncMemoryCache.js +90 -0
- package/dist/common/features/Cache/AsyncMemoryCache.js.map +1 -0
- package/dist/common/features/Cache/AsyncMemoryCacheFeature.d.ts +6 -0
- package/dist/common/features/Cache/AsyncMemoryCacheFeature.d.ts.map +1 -0
- package/dist/common/features/Cache/AsyncMemoryCacheFeature.js +10 -0
- package/dist/common/features/Cache/AsyncMemoryCacheFeature.js.map +1 -0
- package/dist/common/features/Cache/MemoryCache.d.ts +23 -0
- package/dist/common/features/Cache/MemoryCache.d.ts.map +1 -0
- package/dist/common/features/Cache/MemoryCache.js +75 -0
- package/dist/common/features/Cache/MemoryCache.js.map +1 -0
- package/dist/common/features/Cache/MemoryCacheFeature.d.ts +6 -0
- package/dist/common/features/Cache/MemoryCacheFeature.d.ts.map +1 -0
- package/dist/common/features/Cache/MemoryCacheFeature.js +10 -0
- package/dist/common/features/Cache/MemoryCacheFeature.js.map +1 -0
- package/dist/common/features/Cache/abstractions/AsyncCache.d.ts +39 -0
- package/dist/common/features/Cache/abstractions/AsyncCache.d.ts.map +1 -0
- package/dist/common/features/Cache/abstractions/AsyncCache.js +3 -0
- package/dist/common/features/Cache/abstractions/AsyncCache.js.map +1 -0
- package/dist/common/features/Cache/abstractions/Cache.d.ts +39 -0
- package/dist/common/features/Cache/abstractions/Cache.d.ts.map +1 -0
- package/dist/common/features/Cache/abstractions/Cache.js +3 -0
- package/dist/common/features/Cache/abstractions/Cache.js.map +1 -0
- package/dist/common/features/Cache/abstractions/CacheError.d.ts +5 -0
- package/dist/common/features/Cache/abstractions/CacheError.d.ts.map +1 -0
- package/dist/common/features/Cache/abstractions/CacheError.js +5 -0
- package/dist/common/features/Cache/abstractions/CacheError.js.map +1 -0
- package/dist/common/features/Cache/abstractions/index.d.ts +4 -0
- package/dist/common/features/Cache/abstractions/index.d.ts.map +1 -0
- package/dist/common/features/Cache/abstractions/index.js +4 -0
- package/dist/common/features/Cache/abstractions/index.js.map +1 -0
- package/dist/common/features/Cache/index.d.ts +8 -0
- package/dist/common/features/Cache/index.d.ts.map +1 -0
- package/dist/common/features/Cache/index.js +6 -0
- package/dist/common/features/Cache/index.js.map +1 -0
- package/dist/common/features/Logger/ConsoleLogger.d.ts +28 -0
- package/dist/common/features/Logger/ConsoleLogger.d.ts.map +1 -0
- package/dist/common/features/Logger/ConsoleLogger.js +84 -0
- package/dist/common/features/Logger/ConsoleLogger.js.map +1 -0
- package/dist/common/features/Logger/abstractions/ConsoleLoggerConfig.d.ts +27 -0
- package/dist/common/features/Logger/abstractions/ConsoleLoggerConfig.d.ts.map +1 -0
- package/dist/common/features/Logger/abstractions/ConsoleLoggerConfig.js +3 -0
- package/dist/common/features/Logger/abstractions/ConsoleLoggerConfig.js.map +1 -0
- package/dist/common/features/Logger/abstractions/Logger.d.ts +20 -0
- package/dist/common/features/Logger/abstractions/Logger.d.ts.map +1 -0
- package/dist/common/features/Logger/abstractions/Logger.js +3 -0
- package/dist/common/features/Logger/abstractions/Logger.js.map +1 -0
- package/dist/common/features/Logger/abstractions/index.d.ts +3 -0
- package/dist/common/features/Logger/abstractions/index.d.ts.map +1 -0
- package/dist/common/features/Logger/abstractions/index.js +3 -0
- package/dist/common/features/Logger/abstractions/index.js.map +1 -0
- package/dist/common/features/Logger/feature.d.ts +9 -0
- package/dist/common/features/Logger/feature.d.ts.map +1 -0
- package/dist/common/features/Logger/feature.js +13 -0
- package/dist/common/features/Logger/feature.js.map +1 -0
- package/dist/common/features/Logger/index.d.ts +5 -0
- package/dist/common/features/Logger/index.d.ts.map +1 -0
- package/dist/common/features/Logger/index.js +5 -0
- package/dist/common/features/Logger/index.js.map +1 -0
- package/dist/common/index.d.ts +11 -0
- package/dist/common/index.d.ts.map +1 -0
- package/dist/common/index.js +9 -0
- package/dist/common/index.js.map +1 -0
- package/dist/common/utils/boolean.d.ts +7 -0
- package/dist/common/utils/boolean.d.ts.map +1 -0
- package/dist/common/utils/boolean.js +22 -0
- package/dist/common/utils/boolean.js.map +1 -0
- package/dist/common/utils/dotProp.d.ts +23 -0
- package/dist/common/utils/dotProp.d.ts.map +1 -0
- package/dist/common/utils/dotProp.js +45 -0
- package/dist/common/utils/dotProp.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/node/features/DirectoryTool/DirectoryTool.d.ts +24 -0
- package/dist/node/features/DirectoryTool/DirectoryTool.d.ts.map +1 -0
- package/dist/node/features/DirectoryTool/DirectoryTool.js +83 -0
- package/dist/node/features/DirectoryTool/DirectoryTool.js.map +1 -0
- package/dist/node/features/DirectoryTool/abstractions/DirectoryTool.d.ts +32 -0
- package/dist/node/features/DirectoryTool/abstractions/DirectoryTool.d.ts.map +1 -0
- package/dist/node/features/DirectoryTool/abstractions/DirectoryTool.js +3 -0
- package/dist/node/features/DirectoryTool/abstractions/DirectoryTool.js.map +1 -0
- package/dist/node/features/DirectoryTool/abstractions/index.d.ts +2 -0
- package/dist/node/features/DirectoryTool/abstractions/index.d.ts.map +1 -0
- package/dist/node/features/DirectoryTool/abstractions/index.js +2 -0
- package/dist/node/features/DirectoryTool/abstractions/index.js.map +1 -0
- package/dist/node/features/DirectoryTool/feature.d.ts +5 -0
- package/dist/node/features/DirectoryTool/feature.d.ts.map +1 -0
- package/dist/node/features/DirectoryTool/feature.js +9 -0
- package/dist/node/features/DirectoryTool/feature.js.map +1 -0
- package/dist/node/features/DirectoryTool/index.d.ts +4 -0
- package/dist/node/features/DirectoryTool/index.d.ts.map +1 -0
- package/dist/node/features/DirectoryTool/index.js +4 -0
- package/dist/node/features/DirectoryTool/index.js.map +1 -0
- package/dist/node/features/FileTool/FileTool.d.ts +26 -0
- package/dist/node/features/FileTool/FileTool.d.ts.map +1 -0
- package/dist/node/features/FileTool/FileTool.js +71 -0
- package/dist/node/features/FileTool/FileTool.js.map +1 -0
- package/dist/node/features/FileTool/abstractions/FileTool.d.ts +15 -0
- package/dist/node/features/FileTool/abstractions/FileTool.d.ts.map +1 -0
- package/dist/node/features/FileTool/abstractions/FileTool.js +3 -0
- package/dist/node/features/FileTool/abstractions/FileTool.js.map +1 -0
- package/dist/node/features/FileTool/abstractions/index.d.ts +2 -0
- package/dist/node/features/FileTool/abstractions/index.d.ts.map +1 -0
- package/dist/node/features/FileTool/abstractions/index.js +2 -0
- package/dist/node/features/FileTool/abstractions/index.js.map +1 -0
- package/dist/node/features/FileTool/feature.d.ts +5 -0
- package/dist/node/features/FileTool/feature.d.ts.map +1 -0
- package/dist/node/features/FileTool/feature.js +9 -0
- package/dist/node/features/FileTool/feature.js.map +1 -0
- package/dist/node/features/FileTool/index.d.ts +4 -0
- package/dist/node/features/FileTool/index.d.ts.map +1 -0
- package/dist/node/features/FileTool/index.js +4 -0
- package/dist/node/features/FileTool/index.js.map +1 -0
- package/dist/node/features/JsonFileTool/JsonFileTool.d.ts +19 -0
- package/dist/node/features/JsonFileTool/JsonFileTool.d.ts.map +1 -0
- package/dist/node/features/JsonFileTool/JsonFileTool.js +43 -0
- package/dist/node/features/JsonFileTool/JsonFileTool.js.map +1 -0
- package/dist/node/features/JsonFileTool/abstractions/JsonFileTool.d.ts +17 -0
- package/dist/node/features/JsonFileTool/abstractions/JsonFileTool.d.ts.map +1 -0
- package/dist/node/features/JsonFileTool/abstractions/JsonFileTool.js +3 -0
- package/dist/node/features/JsonFileTool/abstractions/JsonFileTool.js.map +1 -0
- package/dist/node/features/JsonFileTool/abstractions/index.d.ts +2 -0
- package/dist/node/features/JsonFileTool/abstractions/index.d.ts.map +1 -0
- package/dist/node/features/JsonFileTool/abstractions/index.js +2 -0
- package/dist/node/features/JsonFileTool/abstractions/index.js.map +1 -0
- package/dist/node/features/JsonFileTool/feature.d.ts +5 -0
- package/dist/node/features/JsonFileTool/feature.d.ts.map +1 -0
- package/dist/node/features/JsonFileTool/feature.js +9 -0
- package/dist/node/features/JsonFileTool/feature.js.map +1 -0
- package/dist/node/features/JsonFileTool/index.d.ts +4 -0
- package/dist/node/features/JsonFileTool/index.d.ts.map +1 -0
- package/dist/node/features/JsonFileTool/index.js +4 -0
- package/dist/node/features/JsonFileTool/index.js.map +1 -0
- package/dist/node/features/NdJsonReaderTool/LineAccumulator.d.ts +13 -0
- package/dist/node/features/NdJsonReaderTool/LineAccumulator.d.ts.map +1 -0
- package/dist/node/features/NdJsonReaderTool/LineAccumulator.js +68 -0
- package/dist/node/features/NdJsonReaderTool/LineAccumulator.js.map +1 -0
- package/dist/node/features/NdJsonReaderTool/NdJsonReaderTool.d.ts +22 -0
- package/dist/node/features/NdJsonReaderTool/NdJsonReaderTool.d.ts.map +1 -0
- package/dist/node/features/NdJsonReaderTool/NdJsonReaderTool.js +73 -0
- package/dist/node/features/NdJsonReaderTool/NdJsonReaderTool.js.map +1 -0
- package/dist/node/features/NdJsonReaderTool/abstractions/NdJsonReaderTool.d.ts +41 -0
- package/dist/node/features/NdJsonReaderTool/abstractions/NdJsonReaderTool.d.ts.map +1 -0
- package/dist/node/features/NdJsonReaderTool/abstractions/NdJsonReaderTool.js +3 -0
- package/dist/node/features/NdJsonReaderTool/abstractions/NdJsonReaderTool.js.map +1 -0
- package/dist/node/features/NdJsonReaderTool/abstractions/index.d.ts +2 -0
- package/dist/node/features/NdJsonReaderTool/abstractions/index.d.ts.map +1 -0
- package/dist/node/features/NdJsonReaderTool/abstractions/index.js +2 -0
- package/dist/node/features/NdJsonReaderTool/abstractions/index.js.map +1 -0
- package/dist/node/features/NdJsonReaderTool/feature.d.ts +5 -0
- package/dist/node/features/NdJsonReaderTool/feature.d.ts.map +1 -0
- package/dist/node/features/NdJsonReaderTool/feature.js +9 -0
- package/dist/node/features/NdJsonReaderTool/feature.js.map +1 -0
- package/dist/node/features/NdJsonReaderTool/index.d.ts +4 -0
- package/dist/node/features/NdJsonReaderTool/index.d.ts.map +1 -0
- package/dist/node/features/NdJsonReaderTool/index.js +4 -0
- package/dist/node/features/NdJsonReaderTool/index.js.map +1 -0
- package/dist/node/features/PackageJsonFileTool/PackageJsonFile.d.ts +67 -0
- package/dist/node/features/PackageJsonFileTool/PackageJsonFile.d.ts.map +1 -0
- package/dist/node/features/PackageJsonFileTool/PackageJsonFile.js +91 -0
- package/dist/node/features/PackageJsonFileTool/PackageJsonFile.js.map +1 -0
- package/dist/node/features/PackageJsonFileTool/PackageJsonFileTool.d.ts +23 -0
- package/dist/node/features/PackageJsonFileTool/PackageJsonFileTool.d.ts.map +1 -0
- package/dist/node/features/PackageJsonFileTool/PackageJsonFileTool.js +75 -0
- package/dist/node/features/PackageJsonFileTool/PackageJsonFileTool.js.map +1 -0
- package/dist/node/features/PackageJsonFileTool/abstractions/PackageJsonFileTool.d.ts +40 -0
- package/dist/node/features/PackageJsonFileTool/abstractions/PackageJsonFileTool.d.ts.map +1 -0
- package/dist/node/features/PackageJsonFileTool/abstractions/PackageJsonFileTool.js +3 -0
- package/dist/node/features/PackageJsonFileTool/abstractions/PackageJsonFileTool.js.map +1 -0
- package/dist/node/features/PackageJsonFileTool/abstractions/index.d.ts +2 -0
- package/dist/node/features/PackageJsonFileTool/abstractions/index.d.ts.map +1 -0
- package/dist/node/features/PackageJsonFileTool/abstractions/index.js +2 -0
- package/dist/node/features/PackageJsonFileTool/abstractions/index.js.map +1 -0
- package/dist/node/features/PackageJsonFileTool/feature.d.ts +5 -0
- package/dist/node/features/PackageJsonFileTool/feature.d.ts.map +1 -0
- package/dist/node/features/PackageJsonFileTool/feature.js +9 -0
- package/dist/node/features/PackageJsonFileTool/feature.js.map +1 -0
- package/dist/node/features/PackageJsonFileTool/index.d.ts +5 -0
- package/dist/node/features/PackageJsonFileTool/index.d.ts.map +1 -0
- package/dist/node/features/PackageJsonFileTool/index.js +5 -0
- package/dist/node/features/PackageJsonFileTool/index.js.map +1 -0
- package/dist/node/features/PathTool/PathTool.d.ts +14 -0
- package/dist/node/features/PathTool/PathTool.d.ts.map +1 -0
- package/dist/node/features/PathTool/PathTool.js +38 -0
- package/dist/node/features/PathTool/PathTool.js.map +1 -0
- package/dist/node/features/PathTool/abstractions/PathTool.d.ts +23 -0
- package/dist/node/features/PathTool/abstractions/PathTool.d.ts.map +1 -0
- package/dist/node/features/PathTool/abstractions/PathTool.js +3 -0
- package/dist/node/features/PathTool/abstractions/PathTool.js.map +1 -0
- package/dist/node/features/PathTool/abstractions/index.d.ts +2 -0
- package/dist/node/features/PathTool/abstractions/index.d.ts.map +1 -0
- package/dist/node/features/PathTool/abstractions/index.js +2 -0
- package/dist/node/features/PathTool/abstractions/index.js.map +1 -0
- package/dist/node/features/PathTool/errors.d.ts +12 -0
- package/dist/node/features/PathTool/errors.d.ts.map +1 -0
- package/dist/node/features/PathTool/errors.js +9 -0
- package/dist/node/features/PathTool/errors.js.map +1 -0
- package/dist/node/features/PathTool/feature.d.ts +5 -0
- package/dist/node/features/PathTool/feature.d.ts.map +1 -0
- package/dist/node/features/PathTool/feature.js +9 -0
- package/dist/node/features/PathTool/feature.js.map +1 -0
- package/dist/node/features/PathTool/index.d.ts +5 -0
- package/dist/node/features/PathTool/index.d.ts.map +1 -0
- package/dist/node/features/PathTool/index.js +5 -0
- package/dist/node/features/PathTool/index.js.map +1 -0
- package/dist/node/features/PinoLogger/PinoLogger.d.ts +27 -0
- package/dist/node/features/PinoLogger/PinoLogger.d.ts.map +1 -0
- package/dist/node/features/PinoLogger/PinoLogger.js +152 -0
- package/dist/node/features/PinoLogger/PinoLogger.js.map +1 -0
- package/dist/node/features/PinoLogger/abstractions/PinoLoggerConfig.d.ts +24 -0
- package/dist/node/features/PinoLogger/abstractions/PinoLoggerConfig.d.ts.map +1 -0
- package/dist/node/features/PinoLogger/abstractions/PinoLoggerConfig.js +3 -0
- package/dist/node/features/PinoLogger/abstractions/PinoLoggerConfig.js.map +1 -0
- package/dist/node/features/PinoLogger/abstractions/index.d.ts +2 -0
- package/dist/node/features/PinoLogger/abstractions/index.d.ts.map +1 -0
- package/dist/node/features/PinoLogger/abstractions/index.js +2 -0
- package/dist/node/features/PinoLogger/abstractions/index.js.map +1 -0
- package/dist/node/features/PinoLogger/feature.d.ts +9 -0
- package/dist/node/features/PinoLogger/feature.d.ts.map +1 -0
- package/dist/node/features/PinoLogger/feature.js +13 -0
- package/dist/node/features/PinoLogger/feature.js.map +1 -0
- package/dist/node/features/PinoLogger/index.d.ts +4 -0
- package/dist/node/features/PinoLogger/index.d.ts.map +1 -0
- package/dist/node/features/PinoLogger/index.js +4 -0
- package/dist/node/features/PinoLogger/index.js.map +1 -0
- package/dist/node/features/ReadStreamFactory/ReadStreamFactory.d.ts +11 -0
- package/dist/node/features/ReadStreamFactory/ReadStreamFactory.d.ts.map +1 -0
- package/dist/node/features/ReadStreamFactory/ReadStreamFactory.js +27 -0
- package/dist/node/features/ReadStreamFactory/ReadStreamFactory.js.map +1 -0
- package/dist/node/features/ReadStreamFactory/abstractions/ReadStreamFactory.d.ts +21 -0
- package/dist/node/features/ReadStreamFactory/abstractions/ReadStreamFactory.d.ts.map +1 -0
- package/dist/node/features/ReadStreamFactory/abstractions/ReadStreamFactory.js +3 -0
- package/dist/node/features/ReadStreamFactory/abstractions/ReadStreamFactory.js.map +1 -0
- package/dist/node/features/ReadStreamFactory/abstractions/index.d.ts +2 -0
- package/dist/node/features/ReadStreamFactory/abstractions/index.d.ts.map +1 -0
- package/dist/node/features/ReadStreamFactory/abstractions/index.js +2 -0
- package/dist/node/features/ReadStreamFactory/abstractions/index.js.map +1 -0
- package/dist/node/features/ReadStreamFactory/feature.d.ts +5 -0
- package/dist/node/features/ReadStreamFactory/feature.d.ts.map +1 -0
- package/dist/node/features/ReadStreamFactory/feature.js +9 -0
- package/dist/node/features/ReadStreamFactory/feature.js.map +1 -0
- package/dist/node/features/ReadStreamFactory/index.d.ts +4 -0
- package/dist/node/features/ReadStreamFactory/index.d.ts.map +1 -0
- package/dist/node/features/ReadStreamFactory/index.js +4 -0
- package/dist/node/features/ReadStreamFactory/index.js.map +1 -0
- package/dist/node/index.d.ts +9 -0
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/index.js +9 -0
- package/dist/node/index.js.map +1 -0
- package/dist/package.json +58 -0
- package/package.json +61 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { DirectoryTool as DirectoryToolAbstraction } from "./abstractions/DirectoryTool.js";
|
|
2
|
+
import type { GlobOptions } from "./abstractions/DirectoryTool.js";
|
|
3
|
+
import { Logger } from "../../../common/index.js";
|
|
4
|
+
declare class DirectoryToolImpl implements DirectoryToolAbstraction.Interface {
|
|
5
|
+
private readonly logger;
|
|
6
|
+
constructor(logger: Logger.Interface);
|
|
7
|
+
exists(path: string): boolean;
|
|
8
|
+
create(path: string): void;
|
|
9
|
+
readDir(path: string): string[] | null;
|
|
10
|
+
readDirOrThrow(path: string): string[];
|
|
11
|
+
remove(path: string): void;
|
|
12
|
+
copy(source: string, target: string): void;
|
|
13
|
+
copyOrThrow(source: string, target: string): void;
|
|
14
|
+
glob(cwd: string, pattern: string | string[], options?: GlobOptions): string[];
|
|
15
|
+
}
|
|
16
|
+
export declare const DirectoryTool: typeof DirectoryToolImpl & {
|
|
17
|
+
__abstraction: import("@webiny/di").Abstraction<import("./abstractions/DirectoryTool.js").IDirectoryTool>;
|
|
18
|
+
};
|
|
19
|
+
export interface CreateDirectoryToolParams {
|
|
20
|
+
logger?: Logger.Interface;
|
|
21
|
+
}
|
|
22
|
+
export declare function createDirectoryTool(params?: CreateDirectoryToolParams): DirectoryToolAbstraction.Interface;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=DirectoryTool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DirectoryTool.d.ts","sourceRoot":"","sources":["../../../../src/node/features/DirectoryTool/DirectoryTool.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,aAAa,IAAI,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAiB,MAAM,mBAAmB,CAAC;AAE1D,cAAM,iBAAkB,YAAW,wBAAwB,CAAC,SAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAA1C,YAAoC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAI;IAEzD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnC;IAEM,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAchC;IAEM,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAM5C;IAEM,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAK5C;IAEM,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAEhC;IAEM,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAOhD;IAEM,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAMvD;IAEM,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,EAAE,CAYpF;CACJ;AAED,eAAO,MAAM,aAAa;;CAGxB,CAAC;AAEH,MAAM,WAAW,yBAAyB;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC;CAC7B;AAED,wBAAgB,mBAAmB,CAC/B,MAAM,CAAC,EAAE,yBAAyB,GACnC,wBAAwB,CAAC,SAAS,CAEpC"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { existsSync, mkdirSync, readdirSync, rmSync, cpSync, chmodSync, accessSync, constants } from "node:fs";
|
|
2
|
+
import { dirname } from "node:path";
|
|
3
|
+
import fg from "fast-glob";
|
|
4
|
+
import { DirectoryTool as DirectoryToolAbstraction } from "./abstractions/DirectoryTool.js";
|
|
5
|
+
import { Logger, ConsoleLogger } from "../../../common/index.js";
|
|
6
|
+
class DirectoryToolImpl {
|
|
7
|
+
logger;
|
|
8
|
+
constructor(logger) {
|
|
9
|
+
this.logger = logger;
|
|
10
|
+
}
|
|
11
|
+
exists(path) {
|
|
12
|
+
return existsSync(path);
|
|
13
|
+
}
|
|
14
|
+
create(path) {
|
|
15
|
+
try {
|
|
16
|
+
if (existsSync(path)) {
|
|
17
|
+
try {
|
|
18
|
+
accessSync(path, constants.W_OK);
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
chmodSync(path, 0o755);
|
|
22
|
+
}
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
mkdirSync(path, { recursive: true, mode: 0o755 });
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
this.logger.warn(`Failed to create directory "${path}": ${error}`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
readDir(path) {
|
|
32
|
+
if (!existsSync(path)) {
|
|
33
|
+
this.logger.warn(`Directory not found: "${path}"`);
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
return readdirSync(path);
|
|
37
|
+
}
|
|
38
|
+
readDirOrThrow(path) {
|
|
39
|
+
if (!existsSync(path)) {
|
|
40
|
+
throw new Error(`Directory not found: "${path}"`);
|
|
41
|
+
}
|
|
42
|
+
return readdirSync(path);
|
|
43
|
+
}
|
|
44
|
+
remove(path) {
|
|
45
|
+
rmSync(path, { recursive: true, force: true });
|
|
46
|
+
}
|
|
47
|
+
copy(source, target) {
|
|
48
|
+
if (!existsSync(source)) {
|
|
49
|
+
this.logger.warn(`Source directory not found: "${source}"`);
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
this.create(dirname(target));
|
|
53
|
+
cpSync(source, target, { recursive: true });
|
|
54
|
+
}
|
|
55
|
+
copyOrThrow(source, target) {
|
|
56
|
+
if (!existsSync(source)) {
|
|
57
|
+
throw new Error(`Source directory not found: "${source}"`);
|
|
58
|
+
}
|
|
59
|
+
this.create(dirname(target));
|
|
60
|
+
cpSync(source, target, { recursive: true });
|
|
61
|
+
}
|
|
62
|
+
glob(cwd, pattern, options) {
|
|
63
|
+
if (!existsSync(cwd)) {
|
|
64
|
+
return [];
|
|
65
|
+
}
|
|
66
|
+
return fg.sync(pattern, {
|
|
67
|
+
cwd,
|
|
68
|
+
dot: options?.dot,
|
|
69
|
+
ignore: options?.ignore,
|
|
70
|
+
deep: options?.deep,
|
|
71
|
+
absolute: options?.absolute,
|
|
72
|
+
onlyFiles: options?.onlyFiles ?? true
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
export const DirectoryTool = DirectoryToolAbstraction.createImplementation({
|
|
77
|
+
implementation: DirectoryToolImpl,
|
|
78
|
+
dependencies: [Logger]
|
|
79
|
+
});
|
|
80
|
+
export function createDirectoryTool(params) {
|
|
81
|
+
return new DirectoryToolImpl(params?.logger ?? new ConsoleLogger());
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=DirectoryTool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DirectoryTool.js","sourceRoot":"","sources":["../../../../src/node/features/DirectoryTool/DirectoryTool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export interface GlobOptions {
|
|
2
|
+
/** Include dotfiles (default: false). */
|
|
3
|
+
dot?: boolean;
|
|
4
|
+
/** Glob patterns to exclude. */
|
|
5
|
+
ignore?: string[];
|
|
6
|
+
/** Maximum directory depth to traverse (default: unlimited). */
|
|
7
|
+
deep?: number;
|
|
8
|
+
/** Return absolute paths instead of paths relative to `cwd` (default: false). */
|
|
9
|
+
absolute?: boolean;
|
|
10
|
+
/** Match only files, not directories (default: true). */
|
|
11
|
+
onlyFiles?: boolean;
|
|
12
|
+
}
|
|
13
|
+
export interface IDirectoryTool {
|
|
14
|
+
exists(path: string): boolean;
|
|
15
|
+
create(path: string): void;
|
|
16
|
+
readDir(path: string): string[] | null;
|
|
17
|
+
readDirOrThrow(path: string): string[];
|
|
18
|
+
remove(path: string): void;
|
|
19
|
+
copy(source: string, target: string): void;
|
|
20
|
+
copyOrThrow(source: string, target: string): void;
|
|
21
|
+
/**
|
|
22
|
+
* Returns paths matching `pattern` under `cwd`.
|
|
23
|
+
* Paths are relative to `cwd` unless `options.absolute` is true.
|
|
24
|
+
* Returns an empty array when `cwd` does not exist or nothing matches.
|
|
25
|
+
*/
|
|
26
|
+
glob(cwd: string, pattern: string | string[], options?: GlobOptions): string[];
|
|
27
|
+
}
|
|
28
|
+
export declare const DirectoryTool: import("@webiny/di").Abstraction<IDirectoryTool>;
|
|
29
|
+
export declare namespace DirectoryTool {
|
|
30
|
+
type Interface = IDirectoryTool;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=DirectoryTool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DirectoryTool.d.ts","sourceRoot":"","sources":["../../../../../src/node/features/DirectoryTool/abstractions/DirectoryTool.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IACxB,yCAAyC;IACzC,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yDAAyD;IACzD,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC3B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;IACvC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACvC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD;;;;OAIG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,EAAE,CAAC;CAClF;AAED,eAAO,MAAM,aAAa,kDAA0D,CAAC;AAErF,yBAAiB,aAAa,CAAC;IAC3B,KAAY,SAAS,GAAG,cAAc,CAAC;CAC1C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DirectoryTool.js","sourceRoot":"","sources":["../../../../../src/node/features/DirectoryTool/abstractions/DirectoryTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AA+BtD,MAAM,CAAC,MAAM,aAAa,GAAG,iBAAiB,CAAiB,oBAAoB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/node/features/DirectoryTool/abstractions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/node/features/DirectoryTool/abstractions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAoB,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feature.d.ts","sourceRoot":"","sources":["../../../../src/node/features/DirectoryTool/feature.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,oBAAoB;;;CAK/B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createFeature } from "../../../common/index.js";
|
|
2
|
+
import { DirectoryTool } from "./DirectoryTool.js";
|
|
3
|
+
export const DirectoryToolFeature = createFeature({
|
|
4
|
+
name: "Core/DirectoryToolFeature",
|
|
5
|
+
register(container) {
|
|
6
|
+
container.register(DirectoryTool).inSingletonScope();
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feature.js","sourceRoot":"","sources":["../../../../src/node/features/DirectoryTool/feature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAC;IAC9C,IAAI,EAAE,2BAA2B;IACjC,QAAQ,CAAC,SAAS;QACd,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACzD,CAAC;CACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/node/features/DirectoryTool/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,KAAK,yBAAyB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/node/features/DirectoryTool/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAoB,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAkC,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { FileTool as FileToolAbstraction } from "./abstractions/FileTool.js";
|
|
2
|
+
import { DirectoryTool } from "../DirectoryTool/abstractions/DirectoryTool.js";
|
|
3
|
+
import { Logger } from "../../../common/index.js";
|
|
4
|
+
declare class FileToolImpl implements FileToolAbstraction.Interface {
|
|
5
|
+
private readonly logger;
|
|
6
|
+
private readonly directoryTool;
|
|
7
|
+
constructor(logger: Logger.Interface, directoryTool: DirectoryTool.Interface);
|
|
8
|
+
exists(path: string): boolean;
|
|
9
|
+
readFile(path: string): string | null;
|
|
10
|
+
readFileOrThrow(path: string): string;
|
|
11
|
+
writeFile(path: string, content: string): void;
|
|
12
|
+
writeFileOrThrow(path: string, content: string): void;
|
|
13
|
+
remove(path: string): void;
|
|
14
|
+
copy(source: string, target: string): void;
|
|
15
|
+
copyOrThrow(source: string, target: string): void;
|
|
16
|
+
}
|
|
17
|
+
export declare const FileTool: typeof FileToolImpl & {
|
|
18
|
+
__abstraction: import("@webiny/di").Abstraction<import("./abstractions/FileTool.js").IFileTool>;
|
|
19
|
+
};
|
|
20
|
+
export interface CreateFileToolParams {
|
|
21
|
+
logger?: Logger.Interface;
|
|
22
|
+
directoryTool?: DirectoryTool.Interface;
|
|
23
|
+
}
|
|
24
|
+
export declare function createFileTool(params?: CreateFileToolParams): FileToolAbstraction.Interface;
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=FileTool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileTool.d.ts","sourceRoot":"","sources":["../../../../src/node/features/FileTool/FileTool.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAE/E,OAAO,EAAE,MAAM,EAAiB,MAAM,mBAAmB,CAAC;AAE1D,cAAM,YAAa,YAAW,mBAAmB,CAAC,SAAS;IAEnD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAFlC,YACqB,MAAM,EAAE,MAAM,CAAC,SAAS,EACxB,aAAa,EAAE,aAAa,CAAC,SAAS,EACvD;IAEG,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnC;IAEM,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM3C;IAEM,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK3C;IAEM,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAOpD;IAEM,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAG3D;IAEM,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAEhC;IAEM,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAOhD;IAEM,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAMvD;CACJ;AAED,eAAO,MAAM,QAAQ;;CAGnB,CAAC;AAEH,MAAM,WAAW,oBAAoB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC;IAC1B,aAAa,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC;CAC3C;AAED,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,mBAAmB,CAAC,SAAS,CAI3F"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { existsSync, readFileSync, writeFileSync, rmSync, copyFileSync } from "node:fs";
|
|
2
|
+
import { dirname } from "node:path";
|
|
3
|
+
import { FileTool as FileToolAbstraction } from "./abstractions/FileTool.js";
|
|
4
|
+
import { DirectoryTool } from "../DirectoryTool/abstractions/DirectoryTool.js";
|
|
5
|
+
import { createDirectoryTool } from "../DirectoryTool/DirectoryTool.js";
|
|
6
|
+
import { Logger, ConsoleLogger } from "../../../common/index.js";
|
|
7
|
+
class FileToolImpl {
|
|
8
|
+
logger;
|
|
9
|
+
directoryTool;
|
|
10
|
+
constructor(logger, directoryTool) {
|
|
11
|
+
this.logger = logger;
|
|
12
|
+
this.directoryTool = directoryTool;
|
|
13
|
+
}
|
|
14
|
+
exists(path) {
|
|
15
|
+
return existsSync(path);
|
|
16
|
+
}
|
|
17
|
+
readFile(path) {
|
|
18
|
+
if (!existsSync(path)) {
|
|
19
|
+
this.logger.warn(`File not found: "${path}"`);
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
return readFileSync(path, "utf-8");
|
|
23
|
+
}
|
|
24
|
+
readFileOrThrow(path) {
|
|
25
|
+
if (!existsSync(path)) {
|
|
26
|
+
throw new Error(`File not found: "${path}"`);
|
|
27
|
+
}
|
|
28
|
+
return readFileSync(path, "utf-8");
|
|
29
|
+
}
|
|
30
|
+
writeFile(path, content) {
|
|
31
|
+
try {
|
|
32
|
+
this.directoryTool.create(dirname(path));
|
|
33
|
+
writeFileSync(path, content, "utf-8");
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
this.logger.warn(`Failed to write file "${path}": ${error}`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
writeFileOrThrow(path, content) {
|
|
40
|
+
this.directoryTool.create(dirname(path));
|
|
41
|
+
writeFileSync(path, content, "utf-8");
|
|
42
|
+
}
|
|
43
|
+
remove(path) {
|
|
44
|
+
rmSync(path, { force: true });
|
|
45
|
+
}
|
|
46
|
+
copy(source, target) {
|
|
47
|
+
if (!existsSync(source)) {
|
|
48
|
+
this.logger.warn(`Source file not found: "${source}"`);
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
this.directoryTool.create(dirname(target));
|
|
52
|
+
copyFileSync(source, target);
|
|
53
|
+
}
|
|
54
|
+
copyOrThrow(source, target) {
|
|
55
|
+
if (!existsSync(source)) {
|
|
56
|
+
throw new Error(`Source file not found: "${source}"`);
|
|
57
|
+
}
|
|
58
|
+
this.directoryTool.create(dirname(target));
|
|
59
|
+
copyFileSync(source, target);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
export const FileTool = FileToolAbstraction.createImplementation({
|
|
63
|
+
implementation: FileToolImpl,
|
|
64
|
+
dependencies: [Logger, DirectoryTool]
|
|
65
|
+
});
|
|
66
|
+
export function createFileTool(params) {
|
|
67
|
+
const logger = params?.logger ?? new ConsoleLogger();
|
|
68
|
+
const directoryTool = params?.directoryTool ?? createDirectoryTool({ logger });
|
|
69
|
+
return new FileToolImpl(logger, directoryTool);
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=FileTool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileTool.js","sourceRoot":"","sources":["../../../../src/node/features/FileTool/FileTool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface IFileTool {
|
|
2
|
+
exists(path: string): boolean;
|
|
3
|
+
readFile(path: string): string | null;
|
|
4
|
+
readFileOrThrow(path: string): string;
|
|
5
|
+
writeFile(path: string, content: string): void;
|
|
6
|
+
writeFileOrThrow(path: string, content: string): void;
|
|
7
|
+
remove(path: string): void;
|
|
8
|
+
copy(source: string, target: string): void;
|
|
9
|
+
copyOrThrow(source: string, target: string): void;
|
|
10
|
+
}
|
|
11
|
+
export declare const FileTool: import("@webiny/di").Abstraction<IFileTool>;
|
|
12
|
+
export declare namespace FileTool {
|
|
13
|
+
type Interface = IFileTool;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=FileTool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileTool.d.ts","sourceRoot":"","sources":["../../../../../src/node/features/FileTool/abstractions/FileTool.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACtB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACtC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACrD;AAED,eAAO,MAAM,QAAQ,6CAAgD,CAAC;AAEtE,yBAAiB,QAAQ,CAAC;IACtB,KAAY,SAAS,GAAG,SAAS,CAAC;CACrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileTool.js","sourceRoot":"","sources":["../../../../../src/node/features/FileTool/abstractions/FileTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAatD,MAAM,CAAC,MAAM,QAAQ,GAAG,iBAAiB,CAAY,eAAe,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/node/features/FileTool/abstractions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/node/features/FileTool/abstractions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feature.d.ts","sourceRoot":"","sources":["../../../../src/node/features/FileTool/feature.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,eAAe;;;CAK1B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createFeature } from "../../../common/index.js";
|
|
2
|
+
import { FileTool } from "./FileTool.js";
|
|
3
|
+
export const FileToolFeature = createFeature({
|
|
4
|
+
name: "Core/FileToolFeature",
|
|
5
|
+
register(container) {
|
|
6
|
+
container.register(FileTool).inSingletonScope();
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feature.js","sourceRoot":"","sources":["../../../../src/node/features/FileTool/feature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;IACzC,IAAI,EAAE,sBAAsB;IAC5B,QAAQ,CAAC,SAAS;QACd,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACpD,CAAC;CACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/node/features/FileTool/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/node/features/FileTool/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,cAAc,EAA6B,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { JsonFileTool as JsonFileToolAbstraction, type ReadJsonParams } from "./abstractions/JsonFileTool.js";
|
|
2
|
+
import { FileTool } from "../FileTool/abstractions/FileTool.js";
|
|
3
|
+
declare class JsonFileToolImpl implements JsonFileToolAbstraction.Interface {
|
|
4
|
+
private readonly fileTool;
|
|
5
|
+
constructor(fileTool: FileTool.Interface);
|
|
6
|
+
readJson<T>(path: string, params?: ReadJsonParams<T>): T | null;
|
|
7
|
+
readJsonOrThrow<T>(path: string, params?: ReadJsonParams<T>): T;
|
|
8
|
+
writeJson(path: string, data: unknown): void;
|
|
9
|
+
writeJsonOrThrow(path: string, data: unknown): void;
|
|
10
|
+
}
|
|
11
|
+
export declare const JsonFileTool: typeof JsonFileToolImpl & {
|
|
12
|
+
__abstraction: import("@webiny/di").Abstraction<import("./abstractions/JsonFileTool.js").IJsonFileTool>;
|
|
13
|
+
};
|
|
14
|
+
export interface CreateJsonFileToolParams {
|
|
15
|
+
fileTool?: FileTool.Interface;
|
|
16
|
+
}
|
|
17
|
+
export declare function createJsonFileTool(params?: CreateJsonFileToolParams): JsonFileToolAbstraction.Interface;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=JsonFileTool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JsonFileTool.d.ts","sourceRoot":"","sources":["../../../../src/node/features/JsonFileTool/JsonFileTool.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,IAAI,uBAAuB,EACvC,KAAK,cAAc,EACtB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAGhE,cAAM,gBAAiB,YAAW,uBAAuB,CAAC,SAAS;IAC5C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAA5C,YAAoC,QAAQ,EAAE,QAAQ,CAAC,SAAS,EAAI;IAE7D,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAUrE;IAEM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAOrE;IAEM,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAElD;IAEM,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAEzD;CACJ;AAED,eAAO,MAAM,YAAY;;CAGvB,CAAC;AAEH,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC;CACjC;AAED,wBAAgB,kBAAkB,CAC9B,MAAM,CAAC,EAAE,wBAAwB,GAClC,uBAAuB,CAAC,SAAS,CAGnC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { JsonFileTool as JsonFileToolAbstraction } from "./abstractions/JsonFileTool.js";
|
|
2
|
+
import { FileTool } from "../FileTool/abstractions/FileTool.js";
|
|
3
|
+
import { createFileTool } from "../FileTool/FileTool.js";
|
|
4
|
+
class JsonFileToolImpl {
|
|
5
|
+
fileTool;
|
|
6
|
+
constructor(fileTool) {
|
|
7
|
+
this.fileTool = fileTool;
|
|
8
|
+
}
|
|
9
|
+
readJson(path, params) {
|
|
10
|
+
const content = this.fileTool.readFile(path);
|
|
11
|
+
if (content === null) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
const parsed = JSON.parse(content);
|
|
15
|
+
if (params?.schema) {
|
|
16
|
+
return params.schema.parse(parsed);
|
|
17
|
+
}
|
|
18
|
+
return parsed;
|
|
19
|
+
}
|
|
20
|
+
readJsonOrThrow(path, params) {
|
|
21
|
+
const content = this.fileTool.readFileOrThrow(path);
|
|
22
|
+
const parsed = JSON.parse(content);
|
|
23
|
+
if (params?.schema) {
|
|
24
|
+
return params.schema.parse(parsed);
|
|
25
|
+
}
|
|
26
|
+
return parsed;
|
|
27
|
+
}
|
|
28
|
+
writeJson(path, data) {
|
|
29
|
+
this.fileTool.writeFile(path, JSON.stringify(data, null, 2));
|
|
30
|
+
}
|
|
31
|
+
writeJsonOrThrow(path, data) {
|
|
32
|
+
this.fileTool.writeFileOrThrow(path, JSON.stringify(data, null, 2));
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export const JsonFileTool = JsonFileToolAbstraction.createImplementation({
|
|
36
|
+
implementation: JsonFileToolImpl,
|
|
37
|
+
dependencies: [FileTool]
|
|
38
|
+
});
|
|
39
|
+
export function createJsonFileTool(params) {
|
|
40
|
+
const fileTool = params?.fileTool ?? createFileTool();
|
|
41
|
+
return new JsonFileToolImpl(fileTool);
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=JsonFileTool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JsonFileTool.js","sourceRoot":"","sources":["../../../../src/node/features/JsonFileTool/JsonFileTool.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,IAAI,uBAAuB,EAE1C,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,MAAM,gBAAgB;IACkB,QAAQ;IAA5C,YAAoC,QAA4B;wBAA5B,QAAQ;IAAuB,CAAC;IAE7D,QAAQ,CAAI,IAAY,EAAE,MAA0B;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAC;QAC9C,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YACjB,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,MAAW,CAAC;IACvB,CAAC;IAEM,eAAe,CAAI,IAAY,EAAE,MAA0B;QAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAC;QAC9C,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YACjB,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,MAAW,CAAC;IACvB,CAAC;IAEM,SAAS,CAAC,IAAY,EAAE,IAAa;QACxC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IAEM,gBAAgB,CAAC,IAAY,EAAE,IAAa;QAC/C,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,uBAAuB,CAAC,oBAAoB,CAAC;IACrE,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,CAAC,QAAQ,CAAC;CAC3B,CAAC,CAAC;AAMH,MAAM,UAAU,kBAAkB,CAC9B,MAAiC;IAEjC,MAAM,QAAQ,GAAG,MAAM,EAAE,QAAQ,IAAI,cAAc,EAAE,CAAC;IACtD,OAAO,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface JsonSchema<T> {
|
|
2
|
+
parse(data: unknown): T;
|
|
3
|
+
}
|
|
4
|
+
export interface ReadJsonParams<T> {
|
|
5
|
+
schema?: JsonSchema<T>;
|
|
6
|
+
}
|
|
7
|
+
export interface IJsonFileTool {
|
|
8
|
+
readJson<T>(path: string, params?: ReadJsonParams<T>): T | null;
|
|
9
|
+
readJsonOrThrow<T>(path: string, params?: ReadJsonParams<T>): T;
|
|
10
|
+
writeJson(path: string, data: unknown): void;
|
|
11
|
+
writeJsonOrThrow(path: string, data: unknown): void;
|
|
12
|
+
}
|
|
13
|
+
export declare const JsonFileTool: import("@webiny/di").Abstraction<IJsonFileTool>;
|
|
14
|
+
export declare namespace JsonFileTool {
|
|
15
|
+
type Interface = IJsonFileTool;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=JsonFileTool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JsonFileTool.d.ts","sourceRoot":"","sources":["../../../../../src/node/features/JsonFileTool/abstractions/JsonFileTool.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,UAAU,CAAC,CAAC;IACzB,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAChE,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAChE,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7C,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;CACvD;AAED,eAAO,MAAM,YAAY,iDAAwD,CAAC;AAElF,yBAAiB,YAAY,CAAC;IAC1B,KAAY,SAAS,GAAG,aAAa,CAAC;CACzC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JsonFileTool.js","sourceRoot":"","sources":["../../../../../src/node/features/JsonFileTool/abstractions/JsonFileTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAiBtD,MAAM,CAAC,MAAM,YAAY,GAAG,iBAAiB,CAAgB,mBAAmB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/node/features/JsonFileTool/abstractions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/node/features/JsonFileTool/abstractions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAwC,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feature.d.ts","sourceRoot":"","sources":["../../../../src/node/features/JsonFileTool/feature.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,mBAAmB;;;CAK9B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createFeature } from "../../../common/index.js";
|
|
2
|
+
import { JsonFileTool } from "./JsonFileTool.js";
|
|
3
|
+
export const JsonFileToolFeature = createFeature({
|
|
4
|
+
name: "Core/JsonFileToolFeature",
|
|
5
|
+
register(container) {
|
|
6
|
+
container.register(JsonFileTool).inSingletonScope();
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feature.js","sourceRoot":"","sources":["../../../../src/node/features/JsonFileTool/feature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAAC;IAC7C,IAAI,EAAE,0BAA0B;IAChC,QAAQ,CAAC,SAAS;QACd,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACxD,CAAC;CACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { JsonFileTool, type JsonSchema, type ReadJsonParams } from "./abstractions/index.js";
|
|
2
|
+
export { JsonFileToolFeature } from "./feature.js";
|
|
3
|
+
export { createJsonFileTool, type CreateJsonFileToolParams } from "./JsonFileTool.js";
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/node/features/JsonFileTool/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,KAAK,wBAAwB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/node/features/JsonFileTool/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAwC,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAiC,MAAM,mBAAmB,CAAC"}
|