@sprucelabs/spruce-file-utils 15.1.14 → 15.1.16

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.
@@ -0,0 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/no-namespace */
2
+ /* eslint-disable no-redeclare */
3
+ /* eslint-disable @typescript-eslint/no-unused-vars */
4
+ /* eslint-disable import/order */
5
+ import '@sprucelabs/spruce-event-utils';
@@ -1,11 +1,7 @@
1
1
  import { SpruceSchemas } from '@sprucelabs/mercury-types';
2
2
  import { SpruceUploaderImpl } from './uploading/SpruceUploader';
3
3
  export type Settings = SpruceSchemas.Files.v2022_05_13.Settings;
4
- export interface UploadedFile {
5
- id: string;
6
- uri: string;
7
- type: string;
8
- }
4
+ export type UploadedFile = SpruceSchemas.Files.v2022_05_13.UploadedFile;
9
5
  declare module '@sprucelabs/spruce-skill-utils/build/types/skill.types' {
10
6
  interface SkillContext {
11
7
  uploader: SpruceUploaderImpl;
@@ -3,4 +3,4 @@ export * from './uploading/FileUploader';
3
3
  export { default as ChunkingUploaderImpl } from './uploading/ChunkingUploader';
4
4
  export * from './uploading/ChunkingUploader';
5
5
  export { default as MockChunkingUploader } from './uploading/MockChunkingUploader';
6
- export * from './files.types';
6
+ export { UploadedFile } from './files.types';
@@ -3,4 +3,3 @@ export * from './uploading/FileUploader.js';
3
3
  export { default as ChunkingUploaderImpl } from './uploading/ChunkingUploader.js';
4
4
  export * from './uploading/ChunkingUploader.js';
5
5
  export { default as MockChunkingUploader } from './uploading/MockChunkingUploader.js';
6
- export * from './files.types.js';
@@ -5,10 +5,12 @@ export default class MockChunkingUploader extends AbstractEventEmitter<ChunkingU
5
5
  static instance?: MockChunkingUploader;
6
6
  private lastUploadOptions?;
7
7
  private lastUploadResponse?;
8
+ private setNextUploadResponseOptions?;
8
9
  constructor();
9
10
  static assertWasCreated(): void;
10
11
  assertFileEqualsLastReturnedFromUpload(file: UploadedFile): void;
11
12
  assertUploadOptionsEqual(options: UploadOptions): void;
13
+ setNextUploadResponse(options: UploadedFile): void;
12
14
  upload(options: UploadOptions): Promise<{
13
15
  file: UploadedFile;
14
16
  }>;
@@ -27,15 +27,22 @@ export default class MockChunkingUploader extends AbstractEventEmitter {
27
27
  assertOptions(options, ['fileName', 'base64']);
28
28
  assert.isEqualDeep(options, this.lastUploadOptions, 'Upload options do not match the last upload options.');
29
29
  }
30
+ setNextUploadResponse(options) {
31
+ assertOptions(options, ['id', 'type', 'uri']);
32
+ this.setNextUploadResponseOptions = options;
33
+ }
30
34
  upload(options) {
31
35
  return __awaiter(this, void 0, void 0, function* () {
36
+ var _a;
32
37
  this.lastUploadOptions = options;
33
- this.lastUploadResponse = {
38
+ this.lastUploadResponse = (_a = this.setNextUploadResponseOptions) !== null && _a !== void 0 ? _a : {
34
39
  id: generateId(),
35
- type: generateId(),
40
+ type: 'image/png',
36
41
  uri: generateId(),
37
42
  };
38
- return { file: this.lastUploadResponse };
43
+ return {
44
+ file: this.lastUploadResponse,
45
+ };
39
46
  });
40
47
  }
41
48
  }
@@ -1,11 +1,7 @@
1
1
  import { SpruceSchemas } from '@sprucelabs/mercury-types';
2
2
  import { SpruceUploaderImpl } from './uploading/SpruceUploader';
3
3
  export type Settings = SpruceSchemas.Files.v2022_05_13.Settings;
4
- export interface UploadedFile {
5
- id: string;
6
- uri: string;
7
- type: string;
8
- }
4
+ export type UploadedFile = SpruceSchemas.Files.v2022_05_13.UploadedFile;
9
5
  declare module '@sprucelabs/spruce-skill-utils/build/types/skill.types' {
10
6
  interface SkillContext {
11
7
  uploader: SpruceUploaderImpl;
@@ -3,4 +3,4 @@ export * from './uploading/FileUploader';
3
3
  export { default as ChunkingUploaderImpl } from './uploading/ChunkingUploader';
4
4
  export * from './uploading/ChunkingUploader';
5
5
  export { default as MockChunkingUploader } from './uploading/MockChunkingUploader';
6
- export * from './files.types';
6
+ export { UploadedFile } from './files.types';
@@ -26,4 +26,3 @@ Object.defineProperty(exports, "ChunkingUploaderImpl", { enumerable: true, get:
26
26
  __exportStar(require("./uploading/ChunkingUploader"), exports);
27
27
  var MockChunkingUploader_1 = require("./uploading/MockChunkingUploader");
28
28
  Object.defineProperty(exports, "MockChunkingUploader", { enumerable: true, get: function () { return __importDefault(MockChunkingUploader_1).default; } });
29
- __exportStar(require("./files.types"), exports);
@@ -5,10 +5,12 @@ export default class MockChunkingUploader extends AbstractEventEmitter<ChunkingU
5
5
  static instance?: MockChunkingUploader;
6
6
  private lastUploadOptions?;
7
7
  private lastUploadResponse?;
8
+ private setNextUploadResponseOptions?;
8
9
  constructor();
9
10
  static assertWasCreated(): void;
10
11
  assertFileEqualsLastReturnedFromUpload(file: UploadedFile): void;
11
12
  assertUploadOptionsEqual(options: UploadOptions): void;
13
+ setNextUploadResponse(options: UploadedFile): void;
12
14
  upload(options: UploadOptions): Promise<{
13
15
  file: UploadedFile;
14
16
  }>;
@@ -20,14 +20,20 @@ class MockChunkingUploader extends mercury_event_emitter_1.AbstractEventEmitter
20
20
  (0, schema_1.assertOptions)(options, ['fileName', 'base64']);
21
21
  test_utils_1.assert.isEqualDeep(options, this.lastUploadOptions, 'Upload options do not match the last upload options.');
22
22
  }
23
+ setNextUploadResponse(options) {
24
+ (0, schema_1.assertOptions)(options, ['id', 'type', 'uri']);
25
+ this.setNextUploadResponseOptions = options;
26
+ }
23
27
  async upload(options) {
24
28
  this.lastUploadOptions = options;
25
- this.lastUploadResponse = {
29
+ this.lastUploadResponse = this.setNextUploadResponseOptions ?? {
26
30
  id: (0, test_utils_1.generateId)(),
27
- type: (0, test_utils_1.generateId)(),
31
+ type: 'image/png',
28
32
  uri: (0, test_utils_1.generateId)(),
29
33
  };
30
- return { file: this.lastUploadResponse };
34
+ return {
35
+ file: this.lastUploadResponse,
36
+ };
31
37
  }
32
38
  }
33
39
  exports.default = MockChunkingUploader;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sprucelabs/spruce-file-utils",
3
3
  "description": "Utils for working with files and Sprucebot.",
4
- "version": "15.1.14",
4
+ "version": "15.1.16",
5
5
  "skill": {
6
6
  "namespace": "files"
7
7
  },
@@ -21,6 +21,11 @@
21
21
  "build/esm/files.types.d.ts",
22
22
  "build/files.types.js",
23
23
  "build/files.types.d.ts",
24
+
25
+ "build/esm/.spruce/schemas/schemas.types.d.ts",
26
+ "build/esm/.spruce/schemas/schemas.types.js",
27
+ "build/.spruce/schemas/schemas.types.d.ts",
28
+ "build/.spruce/schemas/schemas.types.js",
24
29
 
25
30
  "build/esm/index-module.js",
26
31
  "build/esm/index-module.d.ts",