@spinajs/fs 2.0.480 → 2.0.482

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 (211) hide show
  1. package/lib/cjs/cli/cat.d.ts +11 -0
  2. package/lib/cjs/cli/cat.d.ts.map +1 -0
  3. package/lib/cjs/cli/cat.js +40 -0
  4. package/lib/cjs/cli/cat.js.map +1 -0
  5. package/lib/cjs/cli/cp.d.ts +11 -0
  6. package/lib/cjs/cli/cp.d.ts.map +1 -0
  7. package/lib/cjs/cli/cp.js +41 -0
  8. package/lib/cjs/cli/cp.js.map +1 -0
  9. package/lib/cjs/cli/download.d.ts +7 -0
  10. package/lib/cjs/cli/download.d.ts.map +1 -0
  11. package/lib/cjs/cli/download.js +39 -0
  12. package/lib/cjs/cli/download.js.map +1 -0
  13. package/lib/cjs/cli/exists.d.ts +7 -0
  14. package/lib/cjs/cli/exists.d.ts.map +1 -0
  15. package/lib/cjs/cli/exists.js +39 -0
  16. package/lib/cjs/cli/exists.js.map +1 -0
  17. package/lib/cjs/cli/fs.d.ts +11 -0
  18. package/lib/cjs/cli/fs.d.ts.map +1 -1
  19. package/lib/cjs/cli/fs.js +47 -21
  20. package/lib/cjs/cli/fs.js.map +1 -1
  21. package/lib/cjs/cli/hash.d.ts +11 -0
  22. package/lib/cjs/cli/hash.d.ts.map +1 -0
  23. package/lib/cjs/cli/hash.js +40 -0
  24. package/lib/cjs/cli/hash.js.map +1 -0
  25. package/lib/cjs/cli/info.d.ts +7 -0
  26. package/lib/cjs/cli/info.d.ts.map +1 -0
  27. package/lib/cjs/cli/info.js +45 -0
  28. package/lib/cjs/cli/info.js.map +1 -0
  29. package/lib/cjs/cli/ls.d.ts +7 -0
  30. package/lib/cjs/cli/ls.d.ts.map +1 -0
  31. package/lib/cjs/cli/ls.js +40 -0
  32. package/lib/cjs/cli/ls.js.map +1 -0
  33. package/lib/cjs/cli/mkdir.d.ts +7 -0
  34. package/lib/cjs/cli/mkdir.d.ts.map +1 -0
  35. package/lib/cjs/cli/mkdir.js +39 -0
  36. package/lib/cjs/cli/mkdir.js.map +1 -0
  37. package/lib/cjs/cli/mv.d.ts +11 -0
  38. package/lib/cjs/cli/mv.d.ts.map +1 -0
  39. package/lib/cjs/cli/mv.js +41 -0
  40. package/lib/cjs/cli/mv.js.map +1 -0
  41. package/lib/cjs/cli/rm.d.ts +1 -6
  42. package/lib/cjs/cli/rm.d.ts.map +1 -1
  43. package/lib/cjs/cli/rm.js +14 -4
  44. package/lib/cjs/cli/rm.js.map +1 -1
  45. package/lib/cjs/cli/stat.d.ts +1 -5
  46. package/lib/cjs/cli/stat.d.ts.map +1 -1
  47. package/lib/cjs/cli/stat.js +20 -3
  48. package/lib/cjs/cli/stat.js.map +1 -1
  49. package/lib/cjs/cli/unzip.d.ts +11 -0
  50. package/lib/cjs/cli/unzip.d.ts.map +1 -0
  51. package/lib/cjs/cli/unzip.js +47 -0
  52. package/lib/cjs/cli/unzip.js.map +1 -0
  53. package/lib/cjs/cli/upload.d.ts +7 -0
  54. package/lib/cjs/cli/upload.d.ts.map +1 -0
  55. package/lib/cjs/cli/upload.js +40 -0
  56. package/lib/cjs/cli/upload.js.map +1 -0
  57. package/lib/cjs/cli/write.d.ts +13 -0
  58. package/lib/cjs/cli/write.d.ts.map +1 -0
  59. package/lib/cjs/cli/write.js +54 -0
  60. package/lib/cjs/cli/write.js.map +1 -0
  61. package/lib/cjs/cli/zip.d.ts +12 -0
  62. package/lib/cjs/cli/zip.d.ts.map +1 -0
  63. package/lib/cjs/cli/zip.js +51 -0
  64. package/lib/cjs/cli/zip.js.map +1 -0
  65. package/lib/cjs/config/fs.d.ts +9 -0
  66. package/lib/cjs/config/fs.d.ts.map +1 -0
  67. package/lib/cjs/config/fs.js +22 -0
  68. package/lib/cjs/config/fs.js.map +1 -0
  69. package/lib/cjs/file-hasher.d.ts +85 -5
  70. package/lib/cjs/file-hasher.d.ts.map +1 -1
  71. package/lib/cjs/file-hasher.js +106 -14
  72. package/lib/cjs/file-hasher.js.map +1 -1
  73. package/lib/cjs/file-info.d.ts +94 -5
  74. package/lib/cjs/file-info.d.ts.map +1 -1
  75. package/lib/cjs/file-info.js +267 -73
  76. package/lib/cjs/file-info.js.map +1 -1
  77. package/lib/cjs/fp.d.ts +80 -2
  78. package/lib/cjs/fp.d.ts.map +1 -1
  79. package/lib/cjs/fp.js +149 -3
  80. package/lib/cjs/fp.js.map +1 -1
  81. package/lib/cjs/index.d.ts +2 -1
  82. package/lib/cjs/index.d.ts.map +1 -1
  83. package/lib/cjs/index.js +7 -2
  84. package/lib/cjs/index.js.map +1 -1
  85. package/lib/cjs/interfaces.d.ts +89 -12
  86. package/lib/cjs/interfaces.d.ts.map +1 -1
  87. package/lib/cjs/interfaces.js +13 -13
  88. package/lib/cjs/interfaces.js.map +1 -1
  89. package/lib/cjs/local-provider.d.ts +51 -6
  90. package/lib/cjs/local-provider.d.ts.map +1 -1
  91. package/lib/cjs/local-provider.js +254 -76
  92. package/lib/cjs/local-provider.js.map +1 -1
  93. package/lib/cjs/temp-cleanup-strategy.d.ts +70 -0
  94. package/lib/cjs/temp-cleanup-strategy.d.ts.map +1 -0
  95. package/lib/cjs/temp-cleanup-strategy.js +157 -0
  96. package/lib/cjs/temp-cleanup-strategy.js.map +1 -0
  97. package/lib/cjs/temp-provider.d.ts +59 -0
  98. package/lib/cjs/temp-provider.d.ts.map +1 -0
  99. package/lib/cjs/temp-provider.js +150 -0
  100. package/lib/cjs/temp-provider.js.map +1 -0
  101. package/lib/mjs/cli/cat.d.ts +11 -0
  102. package/lib/mjs/cli/cat.d.ts.map +1 -0
  103. package/lib/mjs/cli/cat.js +37 -0
  104. package/lib/mjs/cli/cat.js.map +1 -0
  105. package/lib/mjs/cli/cp.d.ts +11 -0
  106. package/lib/mjs/cli/cp.d.ts.map +1 -0
  107. package/lib/mjs/cli/cp.js +38 -0
  108. package/lib/mjs/cli/cp.js.map +1 -0
  109. package/lib/mjs/cli/download.d.ts +7 -0
  110. package/lib/mjs/cli/download.d.ts.map +1 -0
  111. package/lib/mjs/cli/download.js +36 -0
  112. package/lib/mjs/cli/download.js.map +1 -0
  113. package/lib/mjs/cli/exists.d.ts +7 -0
  114. package/lib/mjs/cli/exists.d.ts.map +1 -0
  115. package/lib/mjs/cli/exists.js +36 -0
  116. package/lib/mjs/cli/exists.js.map +1 -0
  117. package/lib/mjs/cli/fs.d.ts +11 -1
  118. package/lib/mjs/cli/fs.d.ts.map +1 -1
  119. package/lib/mjs/cli/fs.js +43 -22
  120. package/lib/mjs/cli/fs.js.map +1 -1
  121. package/lib/mjs/cli/hash.d.ts +11 -0
  122. package/lib/mjs/cli/hash.d.ts.map +1 -0
  123. package/lib/mjs/cli/hash.js +37 -0
  124. package/lib/mjs/cli/hash.js.map +1 -0
  125. package/lib/mjs/cli/info.d.ts +7 -0
  126. package/lib/mjs/cli/info.d.ts.map +1 -0
  127. package/lib/mjs/cli/info.js +42 -0
  128. package/lib/mjs/cli/info.js.map +1 -0
  129. package/lib/mjs/cli/ls.d.ts +7 -0
  130. package/lib/mjs/cli/ls.d.ts.map +1 -0
  131. package/lib/mjs/cli/ls.js +37 -0
  132. package/lib/mjs/cli/ls.js.map +1 -0
  133. package/lib/mjs/cli/mkdir.d.ts +7 -0
  134. package/lib/mjs/cli/mkdir.d.ts.map +1 -0
  135. package/lib/mjs/cli/mkdir.js +36 -0
  136. package/lib/mjs/cli/mkdir.js.map +1 -0
  137. package/lib/mjs/cli/mv.d.ts +11 -0
  138. package/lib/mjs/cli/mv.d.ts.map +1 -0
  139. package/lib/mjs/cli/mv.js +38 -0
  140. package/lib/mjs/cli/mv.js.map +1 -0
  141. package/lib/mjs/cli/rm.d.ts +1 -6
  142. package/lib/mjs/cli/rm.d.ts.map +1 -1
  143. package/lib/mjs/cli/rm.js +15 -5
  144. package/lib/mjs/cli/rm.js.map +1 -1
  145. package/lib/mjs/cli/stat.d.ts +1 -5
  146. package/lib/mjs/cli/stat.d.ts.map +1 -1
  147. package/lib/mjs/cli/stat.js +21 -4
  148. package/lib/mjs/cli/stat.js.map +1 -1
  149. package/lib/mjs/cli/unzip.d.ts +11 -0
  150. package/lib/mjs/cli/unzip.d.ts.map +1 -0
  151. package/lib/mjs/cli/unzip.js +44 -0
  152. package/lib/mjs/cli/unzip.js.map +1 -0
  153. package/lib/mjs/cli/upload.d.ts +7 -0
  154. package/lib/mjs/cli/upload.d.ts.map +1 -0
  155. package/lib/mjs/cli/upload.js +37 -0
  156. package/lib/mjs/cli/upload.js.map +1 -0
  157. package/lib/mjs/cli/write.d.ts +13 -0
  158. package/lib/mjs/cli/write.d.ts.map +1 -0
  159. package/lib/mjs/cli/write.js +51 -0
  160. package/lib/mjs/cli/write.js.map +1 -0
  161. package/lib/mjs/cli/zip.d.ts +12 -0
  162. package/lib/mjs/cli/zip.d.ts.map +1 -0
  163. package/lib/mjs/cli/zip.js +48 -0
  164. package/lib/mjs/cli/zip.js.map +1 -0
  165. package/lib/mjs/config/fs.d.ts +9 -0
  166. package/lib/mjs/config/fs.d.ts.map +1 -0
  167. package/lib/mjs/config/fs.js +20 -0
  168. package/lib/mjs/config/fs.js.map +1 -0
  169. package/lib/mjs/file-hasher.d.ts +85 -5
  170. package/lib/mjs/file-hasher.d.ts.map +1 -1
  171. package/lib/mjs/file-hasher.js +106 -14
  172. package/lib/mjs/file-hasher.js.map +1 -1
  173. package/lib/mjs/file-info.d.ts +94 -5
  174. package/lib/mjs/file-info.d.ts.map +1 -1
  175. package/lib/mjs/file-info.js +233 -73
  176. package/lib/mjs/file-info.js.map +1 -1
  177. package/lib/mjs/fp.d.ts +80 -2
  178. package/lib/mjs/fp.d.ts.map +1 -1
  179. package/lib/mjs/fp.js +135 -4
  180. package/lib/mjs/fp.js.map +1 -1
  181. package/lib/mjs/index.d.ts +2 -1
  182. package/lib/mjs/index.d.ts.map +1 -1
  183. package/lib/mjs/index.js +8 -3
  184. package/lib/mjs/index.js.map +1 -1
  185. package/lib/mjs/interfaces.d.ts +89 -12
  186. package/lib/mjs/interfaces.d.ts.map +1 -1
  187. package/lib/mjs/interfaces.js +13 -13
  188. package/lib/mjs/interfaces.js.map +1 -1
  189. package/lib/mjs/local-provider.d.ts +51 -6
  190. package/lib/mjs/local-provider.d.ts.map +1 -1
  191. package/lib/mjs/local-provider.js +257 -79
  192. package/lib/mjs/local-provider.js.map +1 -1
  193. package/lib/mjs/temp-cleanup-strategy.d.ts +70 -0
  194. package/lib/mjs/temp-cleanup-strategy.d.ts.map +1 -0
  195. package/lib/mjs/temp-cleanup-strategy.js +153 -0
  196. package/lib/mjs/temp-cleanup-strategy.js.map +1 -0
  197. package/lib/mjs/temp-provider.d.ts +59 -0
  198. package/lib/mjs/temp-provider.d.ts.map +1 -0
  199. package/lib/mjs/temp-provider.js +147 -0
  200. package/lib/mjs/temp-provider.js.map +1 -0
  201. package/lib/tsconfig.cjs.tsbuildinfo +1 -1
  202. package/lib/tsconfig.mjs.tsbuildinfo +1 -1
  203. package/package.json +11 -6
  204. package/lib/cjs/local-temp-provider.d.ts +0 -18
  205. package/lib/cjs/local-temp-provider.d.ts.map +0 -1
  206. package/lib/cjs/local-temp-provider.js +0 -63
  207. package/lib/cjs/local-temp-provider.js.map +0 -1
  208. package/lib/mjs/local-temp-provider.d.ts +0 -18
  209. package/lib/mjs/local-temp-provider.d.ts.map +0 -1
  210. package/lib/mjs/local-temp-provider.js +0 -60
  211. package/lib/mjs/local-temp-provider.js.map +0 -1
package/lib/mjs/fp.js CHANGED
@@ -1,8 +1,28 @@
1
- import { _resolve } from '@spinajs/di';
1
+ import { _resolve, DI } from '@spinajs/di';
2
+ import { Configuration } from '@spinajs/configuration';
2
3
  import { FileHasher, FileInfoService, fs } from './interfaces.js';
3
4
  import { _chain, _check_arg, _is_string, _non_empty, _trim, _use } from '@spinajs/util';
4
5
  import { access, constants, readFile } from "fs";
5
6
  import { IOFail } from '@spinajs/exceptions';
7
+ /**
8
+ * Resolves a filesystem provider by name / instance, or falls back to the
9
+ * configured default provider ( fs.defaultProvider ) when none is given.
10
+ *
11
+ * @param fileSystem provider name, provider instance, or undefined for the default
12
+ */
13
+ function _provider(fileSystem) {
14
+ return () => {
15
+ const name = fileSystem ?? DI.get(Configuration)?.get('fs.defaultProvider');
16
+ if (!name) {
17
+ throw new IOFail(`No filesystem provided and no fs.defaultProvider configured`);
18
+ }
19
+ const f = _fs(name)();
20
+ if (!f) {
21
+ throw new IOFail(`Filesystem ${typeof name === 'string' ? name : name.Name} not found`);
22
+ }
23
+ return f;
24
+ };
25
+ }
6
26
  /**
7
27
  * Gets filesystem by its name
8
28
  *
@@ -27,12 +47,12 @@ export function _fs(fileSystem) {
27
47
  * @returns absolute path to zipped file
28
48
  */
29
49
  export function _zip(srcPath, dstName, srcFs) {
30
- return _chain(_use(_fs(srcFs), 'zipFS'), ({ zipFS }) => {
50
+ return _chain(_use(_fs(srcFs ?? 'fs-temp'), 'zipFS'), ({ zipFS }) => {
31
51
  return zipFS.zip(srcPath, zipFS, dstName);
32
52
  });
33
53
  }
34
54
  export function _unzip(srcPath, dstName, srcFs) {
35
- return _chain(_use(_fs(srcFs), 'zipFS'), ({ zipFS }) => {
55
+ return _chain(_use(_fs(srcFs ?? 'fs-temp'), 'zipFS'), ({ zipFS }) => {
36
56
  return zipFS.unzip(srcPath, dstName, zipFS);
37
57
  });
38
58
  }
@@ -58,14 +78,125 @@ export function _file_hash(path) {
58
78
  return hash.hash(path);
59
79
  });
60
80
  }
61
- export function _exists(path) {
81
+ /**
82
+ * Checks if a path exists.
83
+ *
84
+ * Without a filesystem, checks an absolute local path directly. With a filesystem
85
+ * ( name or instance ), delegates to that provider ( path relative to its base ).
86
+ *
87
+ * @param path path to check
88
+ * @param fileSystem optional provider name / instance
89
+ */
90
+ export function _exists(path, fileSystem) {
62
91
  const p = _check_arg(_is_string(), _trim(), _non_empty())(path, 'path');
92
+ if (fileSystem !== undefined) {
93
+ return async () => _provider(fileSystem)().exists(p);
94
+ }
63
95
  return async () => (new Promise((resolve) => {
64
96
  access(p, constants.F_OK, (error) => {
65
97
  resolve(!error);
66
98
  });
67
99
  }));
68
100
  }
101
+ /**
102
+ * Reads whole file content through a filesystem provider.
103
+ *
104
+ * @param path path relative to provider base
105
+ * @param encoding optional encoding ( raw Buffer when omitted )
106
+ * @param fileSystem provider name / instance, or default provider
107
+ */
108
+ export function _read(path, encoding, fileSystem) {
109
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.read(path, encoding));
110
+ }
111
+ /**
112
+ * Writes data to a file through a filesystem provider.
113
+ */
114
+ export function _write(path, data, encoding, fileSystem) {
115
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.write(path, data, encoding));
116
+ }
117
+ /**
118
+ * Appends data to a file through a filesystem provider.
119
+ */
120
+ export function _append(path, data, encoding, fileSystem) {
121
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.append(path, data, encoding));
122
+ }
123
+ /**
124
+ * Copies a file / dir, optionally into another filesystem.
125
+ *
126
+ * @param src source path ( relative to srcFs )
127
+ * @param dst destination path
128
+ * @param srcFs source provider name / instance ( default provider when omitted )
129
+ * @param dstFs optional destination provider - copy within srcFs when omitted
130
+ */
131
+ export function _copy(src, dst, srcFs, dstFs) {
132
+ return _chain(_use(_provider(srcFs), 'f'), ({ f }) => f.copy(src, dst, dstFs ? _provider(dstFs)() : undefined));
133
+ }
134
+ /**
135
+ * Moves a file / dir, optionally into another filesystem.
136
+ */
137
+ export function _move(src, dst, srcFs, dstFs) {
138
+ return _chain(_use(_provider(srcFs), 'f'), ({ f }) => f.move(src, dst, dstFs ? _provider(dstFs)() : undefined));
139
+ }
140
+ /**
141
+ * Renames a file within a single filesystem.
142
+ */
143
+ export function _rename(oldPath, newPath, fileSystem) {
144
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.rename(oldPath, newPath));
145
+ }
146
+ /**
147
+ * Removes a file or a directory ( recursively ).
148
+ */
149
+ export function _rm(path, fileSystem) {
150
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.rm(path));
151
+ }
152
+ /**
153
+ * Creates a directory ( recursively ).
154
+ */
155
+ export function _mkdir(path, fileSystem) {
156
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.mkdir(path));
157
+ }
158
+ /**
159
+ * Lists directory content.
160
+ */
161
+ export function _list(path, fileSystem) {
162
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.list(path));
163
+ }
164
+ /**
165
+ * Returns file / dir statistics.
166
+ */
167
+ export function _stat(path, fileSystem) {
168
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.stat(path));
169
+ }
170
+ /**
171
+ * Checks if a path is an existing directory.
172
+ */
173
+ export function _dir_exists(path, fileSystem) {
174
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.dirExists(path));
175
+ }
176
+ /**
177
+ * Checks if a path is a directory.
178
+ */
179
+ export function _is_dir(path, fileSystem) {
180
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.isDir(path));
181
+ }
182
+ /**
183
+ * Downloads a file to local storage and returns the local path.
184
+ */
185
+ export function _download(path, fileSystem) {
186
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.download(path));
187
+ }
188
+ /**
189
+ * Uploads a local file into a filesystem provider.
190
+ */
191
+ export function _upload(srcPath, dstPath, fileSystem) {
192
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.upload(srcPath, dstPath));
193
+ }
194
+ /**
195
+ * Hashes a file through a filesystem provider.
196
+ */
197
+ export function _hash(path, algo, fileSystem) {
198
+ return _chain(_use(_provider(fileSystem), 'f'), ({ f }) => f.hash(path, algo));
199
+ }
69
200
  export function _is_of_type(path, extension) {
70
201
  return async () => {
71
202
  const { fileTypeFromFile } = await import('file-type');
package/lib/mjs/fp.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"fp.js","sourceRoot":"","sources":["../../src/fp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fp.js","sourceRoot":"","sources":["../../src/fp.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,8 @@ import { IFsConfiguration } from './interfaces.js';
4
4
  import { Log } from '@spinajs/log-common';
5
5
  export * from './interfaces.js';
6
6
  export * from './local-provider.js';
7
- export * from './local-temp-provider.js';
7
+ export * from './temp-provider.js';
8
+ export * from './temp-cleanup-strategy.js';
8
9
  export * from './decorators.js';
9
10
  export * from './file-hasher.js';
10
11
  export * from './file-info.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAoB,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAc,YAAY,EAAkB,MAAM,aAAa,CAAC;AACvE,OAAO,EAAM,gBAAgB,EAA0B,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAElD,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AAExB,qBAAa,SAAU,SAAQ,YAAY;IAEzC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC;IAGtB,SAAS,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAEtB,OAAO;CAmCrB;AAED,qBACa,aAAc,SAAQ,YAAY;IACtC,SAAS;CAiBjB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAwC,MAAM,aAAa,CAAC;AACjF,OAAO,EAAc,YAAY,EAAkB,MAAM,aAAa,CAAC;AACvE,OAAO,EAAM,gBAAgB,EAA0B,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAElD,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AAExB,qBAAa,SAAU,SAAQ,YAAY;IAEzC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC;IAGtB,SAAS,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAEtB,OAAO;CA6CrB;AAED,qBACa,aAAc,SAAQ,YAAY;IACtC,SAAS;CAiBjB"}
package/lib/mjs/index.js CHANGED
@@ -8,13 +8,14 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { Config, InvalidConfiguration } from '@spinajs/configuration';
11
- import { AsyncService, ResolveException } from '@spinajs/di';
11
+ import { AsyncService, ResolveException, sortByDependencies } from '@spinajs/di';
12
12
  import { Injectable, Bootstrapper, DI } from '@spinajs/di';
13
13
  import { fs } from './interfaces.js';
14
14
  import { Log, Logger } from '@spinajs/log-common';
15
15
  export * from './interfaces.js';
16
16
  export * from './local-provider.js';
17
- export * from './local-temp-provider.js';
17
+ export * from './temp-provider.js';
18
+ export * from './temp-cleanup-strategy.js';
18
19
  export * from './decorators.js';
19
20
  export * from './file-hasher.js';
20
21
  export * from './file-info.js';
@@ -34,7 +35,11 @@ export class fsService extends AsyncService {
34
35
  providers.set(x.name, x);
35
36
  });
36
37
  const rProviders = DI.RootContainer.Registry.getTypes(fs);
37
- const list = Array.from(providers, ([name, value]) => ({ name, value }));
38
+ // order provider creation so that providers referencing other providers
39
+ // ( eg. fsTemp backend via `provider` option ) are created after their dependency,
40
+ // regardless of config order. Fails fast on missing / self / circular reference.
41
+ const ordered = sortByDependencies(Array.from(providers.values()), (p) => p.name, (p) => p.provider);
42
+ const list = ordered.map((value) => ({ name: value.name, value }));
38
43
  for (const cProvider of list) {
39
44
  const type = rProviders.find((x) => x.name === cProvider.value.service);
40
45
  if (!type) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { AsyncService, IInstanceCheck, IMappableService } from '@spinajs/di';
2
2
  import { ReadStream, WriteStream } from 'fs';
3
3
  import { DateTime } from 'luxon';
4
4
  import { PassThrough } from 'stream';
5
+ import type { BinaryToTextEncoding } from 'node:crypto';
5
6
  /**
6
7
  * Class for handling fs URI eg. fs://fs-temp/path/to/file
7
8
  */
@@ -13,6 +14,11 @@ export declare class URI {
13
14
  export interface IProviderConfiguration {
14
15
  name: string;
15
16
  service: string;
17
+ /**
18
+ * Name of another configured fs provider this one depends on ( eg. fsTemp backend ).
19
+ * fsService creates referenced providers first, regardless of config order.
20
+ */
21
+ provider?: string;
16
22
  }
17
23
  export interface IFsConfiguration {
18
24
  defaultProvider: string;
@@ -25,6 +31,12 @@ export interface IStat {
25
31
  AccessTime?: DateTime;
26
32
  ModifiedTime?: DateTime;
27
33
  CreationTime?: DateTime;
34
+ /**
35
+ * Opaque, provider-supplied token that changes when the file content changes.
36
+ * Consumers must treat it as meaningless except for equality comparison.
37
+ * Providers that cannot supply one leave it undefined.
38
+ */
39
+ Version?: string;
28
40
  AdditionalData?: unknown;
29
41
  }
30
42
  export interface IFileInfo {
@@ -37,6 +49,10 @@ export interface IFileInfo {
37
49
  Duration?: number;
38
50
  FrameCount?: number;
39
51
  FrameRate?: number;
52
+ /**
53
+ * Number of audio channels ( eg. 2 for stereo )
54
+ */
55
+ AudioChannels?: number;
40
56
  Bitrate?: number;
41
57
  Codec?: string;
42
58
  LineCount?: number;
@@ -50,6 +66,12 @@ export interface IFileInfo {
50
66
  * Raw unprocessed data obtained from file info
51
67
  */
52
68
  Raw?: {};
69
+ /**
70
+ * All other extracted tags are promoted here generically ( PascalCased tag
71
+ * name -> value ). The well-known fields above are typed aliases over the
72
+ * same data; everything the analyzer emits is also available in {@link Raw}.
73
+ */
74
+ [key: string]: unknown;
53
75
  }
54
76
  export interface IFsLocalOptions {
55
77
  /**
@@ -64,21 +86,44 @@ export interface IFsLocalOptions {
64
86
  */
65
87
  name: string;
66
88
  }
67
- export interface IFsLocalTempOptions extends IFsLocalOptions {
89
+ export interface ITempOptions {
68
90
  /**
69
91
  * Should cleanup of old temp files be enabled
70
92
  */
71
- cleanup: boolean;
93
+ cleanup?: boolean;
72
94
  /**
73
- * Cleanup interval in seconds
95
+ * Cleanup interval in milliseconds, used by interval-based cleanup strategies.
74
96
  * Default is 10 minutes
75
97
  */
76
- cleanupInterval: number;
98
+ cleanupInterval?: number;
77
99
  /**
78
- * Max temp file age in seconds. Older thant this will be deleted.
100
+ * Max temp file age in seconds. Older than this will be deleted.
79
101
  * Default is 1 hour
80
102
  */
81
- maxFileAge: number;
103
+ maxFileAge?: number;
104
+ /**
105
+ * Class name of TempCleanupStrategy implementation to use.
106
+ * Default is MaxAgeTempCleanupStrategy
107
+ */
108
+ cleanupStrategy?: string;
109
+ /**
110
+ * Cron expression used by CronTempCleanupStrategy ( 6-field with seconds supported,
111
+ * eg. '0 0 * * * *' = hourly ). Required when that strategy is selected.
112
+ * Ignored by interval-based strategies.
113
+ */
114
+ cleanupCronExpression?: string;
115
+ }
116
+ export interface IFsTempOptions extends ITempOptions {
117
+ /**
118
+ * Instance name of this filesystem. Used to share fs instances.
119
+ */
120
+ name: string;
121
+ /**
122
+ * Name of registered fs provider used as temp file storage.
123
+ * Any configured fs can serve as backend ( local, s3, ftp, ... ).
124
+ * Creation fails if provider with this name is not registered.
125
+ */
126
+ provider: string;
82
127
  }
83
128
  export interface IZipResult {
84
129
  /**
@@ -86,7 +131,7 @@ export interface IZipResult {
86
131
  */
87
132
  fs: fs;
88
133
  asFilePath(): string;
89
- asStream(): ReadStream;
134
+ asStream(encoding?: BufferEncoding): ReadStream;
90
135
  asBase64(): string;
91
136
  unlink(): void;
92
137
  }
@@ -143,7 +188,7 @@ export declare abstract class fs extends AsyncService implements IMappableServic
143
188
  abstract mkdir(path: string): Promise<void>;
144
189
  abstract stat(path: string): Promise<IStat>;
145
190
  abstract list(path: string): Promise<string[]>;
146
- abstract tmppath(): string;
191
+ abstract tmppath(ext?: string): string;
147
192
  abstract append(path: string, data: string | Uint8Array, encoding?: BufferEncoding): Promise<void>;
148
193
  /**
149
194
  *
@@ -170,7 +215,7 @@ export declare abstract class fs extends AsyncService implements IMappableServic
170
215
  * @param path path to check
171
216
  */
172
217
  abstract isDir(path: string): Promise<boolean>;
173
- tmpname(): string;
218
+ tmpname(ext?: string): string;
174
219
  /**
175
220
  * -------------------------------------------------------------------------
176
221
  *
@@ -226,7 +271,7 @@ export declare abstract class fs extends AsyncService implements IMappableServic
226
271
  static mkdir(path: URI): Promise<void>;
227
272
  static stat(path: URI): Promise<IStat>;
228
273
  static list(path: URI): Promise<string[]>;
229
- static tmppath(fs: string): string;
274
+ static tmppath(fs: string, ext?: string): string;
230
275
  static append(path: URI, data: string | Uint8Array, encoding?: BufferEncoding): Promise<void>;
231
276
  /**
232
277
  *
@@ -259,12 +304,44 @@ export declare abstract class fs extends AsyncService implements IMappableServic
259
304
  * Eg. movie resolution, image, codec etc. if possible
260
305
  */
261
306
  export declare abstract class FileInfoService {
307
+ /**
308
+ * Extracts file information from a file on disk.
309
+ *
310
+ * @param pathToFile absolute path to the file
311
+ */
262
312
  abstract getInfo(pathToFile: string): Promise<IFileInfo>;
313
+ /**
314
+ * Extracts file information from a readable stream ( content is fed to the
315
+ * analyzer via stdin, so no temporary file is needed ).
316
+ *
317
+ * @param stream readable stream with the file content
318
+ */
319
+ abstract getInfoFromStream(stream: NodeJS.ReadableStream): Promise<IFileInfo>;
263
320
  }
264
321
  /**
265
- * File hasher, to create unique hash for file
322
+ * File hasher, to create unique hash for a file, raw data or a stream.
266
323
  */
267
324
  export declare abstract class FileHasher {
268
- abstract hash(pathToFile: string): Promise<string>;
325
+ /**
326
+ * Hashes the content of a file.
327
+ *
328
+ * @param pathToFile absolute path to the file
329
+ * @param encoding digest output encoding ( default 'hex' )
330
+ */
331
+ abstract hash(pathToFile: string, encoding?: BinaryToTextEncoding): Promise<string>;
332
+ /**
333
+ * Hashes raw in-memory data.
334
+ *
335
+ * @param data string or Buffer to hash
336
+ * @param encoding digest output encoding ( default 'hex' )
337
+ */
338
+ abstract hashData(data: string | Uint8Array, encoding?: BinaryToTextEncoding): Promise<string>;
339
+ /**
340
+ * Hashes the content of a readable stream.
341
+ *
342
+ * @param stream readable stream to consume
343
+ * @param encoding digest output encoding ( default 'hex' )
344
+ */
345
+ abstract hashStream(stream: NodeJS.ReadableStream, encoding?: BinaryToTextEncoding): Promise<string>;
269
346
  }
270
347
  //# sourceMappingURL=interfaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAM,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEjF,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD;;GAEG;AACH,qBAAa,GAAG;IACP,EAAE,EAAE,EAAE,CAAC;IACP,IAAI,EAAE,MAAM,CAAC;gBAER,GAAG,EAAE,MAAM;CAqBxB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AACD,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,sBAAsB,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,KAAK;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,YAAY,CAAC,EAAE,QAAQ,CAAC;IAExB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACxB;;OAEG;IAEH,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB,gBAAgB,CAAC,EAAE,QAAQ,CAAC;IAC5B,YAAY,CAAC,EAAE,QAAQ,CAAC;IAExB;;OAEG;IACH,GAAG,CAAC,EAAE,EAAE,CAAC;IAET;;;;OAIG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,EAAE,EAAE,EAAE,CAAC;IAGP,UAAU,IAAI,MAAM,CAAC;IAGrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC;IAGhD,QAAQ,IAAI,MAAM,CAAC;IAGnB,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,8BAAsB,EAAG,SAAQ,YAAa,YAAW,gBAAgB,EAAE,cAAc;IACvF,IAAW,WAAW,WAErB;IAGM,iBAAiB,CAAC,eAAe,EAAE,GAAG,GAAG,OAAO;IAKvD,SAAgB,IAAI,EAAE,MAAM,CAAC;IAE7B;;;;;;;;;;OAUG;aACa,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAEvD;;;;;OAKG;aACa,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEzE;;;;;;OAMG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKlD,QAAQ,CAAC,IAAI,EAAE,MAAM;IAKlC;;;;;OAKG;aACa,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;aACjC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;aACvE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;aACnF,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;aACxF,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;aACxF,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,CAAC,cAAc,GAAG,cAAc,EAClD,QAAQ,CAAC,EAAE,cAAc,GACxB,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;aACrB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;aACtC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;aACzC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;aAC3D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;aACjE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;aACvD,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;aAC/B,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;aAClC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;aAClC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;aACrC,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM;aAC7B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IACzG;;;;;;;OAOG;aACa,GAAG,CAAC,IAAI,EAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAE7G;;;;;;;OAOG;aACa,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAEtF;;;;;OAKG;aACa,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAE9C,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM;IAI3B;;;;;;OAMG;IAEH;;;;;;;;;;OAUG;WACW,QAAQ,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IAIlD;;;;;OAKG;WACW,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpE;;;;;;OAMG;WACW,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI7D;;;;;OAKG;WACW,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM;WAI9B,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;WAIpE,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;WAIhF,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;WAIrF,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;WACpF,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,cAAc,GAAG,cAAc,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;WASzI,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;WAInC,SAAS,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;WAItC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;WAIxC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;WAIxC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAGnD,EAAE,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;WAI5B,KAAK,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;WAI/B,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC;WAI/B,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;WAIlC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM;WASzC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAGpG;;;;;;;OAOG;WACW,GAAG,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC;IAMvE;;;;;;;OAOG;WACW,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IAIjE;;;;;OAKG;WACW,KAAK,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;CAGjD;AAED;;;GAGG;AACH,8BAAsB,eAAe;IACnC;;;;OAIG;aACa,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAE/D;;;;;OAKG;aACa,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;CACrF;AAED;;GAEG;AACH,8BAAsB,UAAU;IAC9B;;;;;OAKG;aACa,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAE1F;;;;;OAKG;aACa,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAErG;;;;;OAKG;aACa,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;CAC5G"}
@@ -7,17 +7,17 @@ import { v4 as uuidv4 } from 'uuid';
7
7
  */
8
8
  export class URI {
9
9
  constructor(uri) {
10
- const reg = /^(fs+:\/\/)+(.+)$/;
11
- if (!reg.test(uri)) {
12
- throw new InvalidArgument(`URI ${uri} is not valid`);
13
- }
10
+ // strict scheme - previous pattern /(fs+:\/\/)+/ accepted eg. fsss:// and fs://fs://
11
+ const reg = /^fs:\/\/(.+)$/;
14
12
  const e = reg.exec(uri);
15
- if (!e || e.length < 3) {
13
+ if (!e) {
16
14
  throw new InvalidArgument(`URI ${uri} is not valid`);
17
15
  }
18
- const match = e[2];
19
- const fsName = match.substring(0, match.indexOf('/'));
20
- this.Path = match.substring(match.indexOf('/') + 1);
16
+ const match = e[1];
17
+ const slash = match.indexOf('/');
18
+ // fs://name ( no path ) -> whole match is the fs name, path is empty
19
+ const fsName = slash === -1 ? match : match.substring(0, slash);
20
+ this.Path = slash === -1 ? '' : match.substring(slash + 1);
21
21
  this.Fs = DI.resolve('__file_provider__', [fsName]);
22
22
  if (!this.Fs) {
23
23
  throw new InvalidArgument(`Filesystem ${fsName} not registered, check your fs configuration !`);
@@ -48,8 +48,8 @@ export class fs extends AsyncService {
48
48
  const fInfo = DI.resolve(FileInfoService);
49
49
  return fInfo.getInfo(this.resolvePath(path));
50
50
  }
51
- tmpname() {
52
- return uuidv4();
51
+ tmpname(ext) {
52
+ return ext ? `${uuidv4()}${ext}` : uuidv4();
53
53
  }
54
54
  /**
55
55
  * -------------------------------------------------------------------------
@@ -139,12 +139,12 @@ export class fs extends AsyncService {
139
139
  static list(path) {
140
140
  return path.Fs.list(path.Path);
141
141
  }
142
- static tmppath(fs) {
142
+ static tmppath(fs, ext) {
143
143
  const f = DI.resolve('__file_provider__', [fs]);
144
144
  if (!f) {
145
145
  throw new IOFail(`Filesystem ${fs} not exists, check your configuration`);
146
146
  }
147
- return f.tmppath();
147
+ return f.tmppath(ext);
148
148
  }
149
149
  static append(path, data, encoding) {
150
150
  return path.Fs.append(path.Path, data, encoding);
@@ -190,7 +190,7 @@ export class fs extends AsyncService {
190
190
  export class FileInfoService {
191
191
  }
192
192
  /**
193
- * File hasher, to create unique hash for file
193
+ * File hasher, to create unique hash for a file, raw data or a stream.
194
194
  */
195
195
  export class FileHasher {
196
196
  }
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,OAAO,EAAE,YAAY,EAAE,EAAE,EAAoC,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAI9D,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAGpC;;GAEG;AACH,MAAM,OAAO,GAAG;IAId,YAAY,GAAW;QACrB,qFAAqF;QACrF,MAAM,GAAG,GAAG,eAAe,CAAC;QAC5B,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAExB,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,IAAI,eAAe,CAAC,OAAO,GAAG,eAAe,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAEjC,qEAAqE;QACrE,MAAM,MAAM,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAK,mBAAmB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QAExD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,eAAe,CAAC,cAAc,MAAM,gDAAgD,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;CACF;AA8JD,MAAM,OAAgB,EAAG,SAAQ,YAAY;IAC3C,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,8DAA8D;IACvD,iBAAiB,CAAC,eAAoB;QAC3C,sEAAsE;QACtE,OAAO,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,CAAC;IAyBD;;;;;;OAMG;IACI,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,IAAa;QAC3C,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAa,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7C,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,IAAY;QAChC,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAkB,eAAe,CAAC,CAAC;QAC3D,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC;IAyDM,OAAO,CAAC,GAAY;QACzB,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC9C,CAAC;IAED;;;;;;OAMG;IAEH;;;;;;;;;;OAUG;IACI,MAAM,CAAC,QAAQ,CAAC,IAAS;QAC9B,OAAO,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,MAAM,CAAC,OAAe,EAAE,QAAc;QAClD,OAAO,QAAS,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,QAAS,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,IAAI,CAAC,IAAS,EAAE,IAAa;QACzC,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,WAAW,CAAC,IAAS;QACjC,OAAO,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,IAAS,EAAE,QAAyB;QACrD,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,IAAS,EAAE,QAAyB;QAC3D,OAAO,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,IAAS,EAAE,IAAyB,EAAE,QAAyB;QACjF,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAClD,CAAC;IAIM,MAAM,CAAC,WAAW,CACvB,IAAS,EACT,UAAkD,EAClD,QAAyB;QAEzB,OAAO,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,IAAS;QAC5B,OAAO,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAEM,MAAM,CAAC,SAAS,CAAC,IAAS;QAC/B,OAAO,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,GAAQ,EAAE,IAAS;QACpC,OAAO,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,GAAQ,EAAE,IAAS;QACpC,OAAO,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,GAAQ,EAAE,IAAkB;QAC/C,OAAO,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACzE,CAAC;IACM,MAAM,CAAC,EAAE,CAAC,IAAS;QACxB,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,IAAS;QAC3B,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,IAAS;QAC1B,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,IAAS;QAC1B,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,EAAU,EAAE,GAAY;QAC5C,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAK,mBAAmB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACpD,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,IAAI,MAAM,CAAC,cAAc,EAAE,uCAAuC,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,IAAS,EAAE,IAAyB,EAAE,QAAyB;QAClF,OAAO,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD;;;;;;;OAOG;IACI,MAAM,CAAC,GAAG,CAAC,IAAiB,EAAE,OAAY;QAC/C,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACxE,OAAO,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IAED;;;;;;;OAOG;IACI,MAAM,CAAC,KAAK,CAAC,OAAY,EAAE,QAAa;QAC7C,OAAO,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,IAAS;QAC3B,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAgB,eAAe;CAepC;AAED;;GAEG;AACH,MAAM,OAAgB,UAAU;CAwB/B"}