@epilot/file-client 0.1.4 → 0.2.0

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.
@@ -1 +1 @@
1
- !function(e,t){for(var i in t)e[i]=t[i];t.__esModule&&Object.defineProperty(e,"__esModule",{value:!0})}(exports,(()=>{"use strict";var e={914:function(e,t,i){var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var n=a(i(279));t.default=n.default},279:e=>{e.exports=JSON.parse('{"openapi":"3.0.3","info":{"title":"File API","version":"0.1.0","description":"File Upload and Management for epilot SaaS"},"tags":[{"name":"files","description":"Files"}],"security":[{"EpilotAuth":[]},{"AsOrganization":[]}],"paths":{"/v1/files/public/upload":{"post":{"operationId":"uploadFilePublic","summary":"uploadFilePublic","security":[],"description":"Create pre-signed S3 URL to upload a file to keep temporarily (one week).\\n\\nUse the createFile operation to store file file permanently.\\n","tags":["files"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadFilePayload"}}}},"responses":{"201":{"description":"Pre-signed URL for POST / PUT upload","content":{"application/json":{"schema":{"type":"object","properties":{"upload_url":{"type":"string","format":"url","example":"https://epilot-files-prod.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123"},"s3ref":{"allOf":[{"$ref":"#/components/schemas/S3Reference"},{"example":{"bucket":"epilot-files-prod","key":"123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"}}]}}}}}}}}},"/v1/files/upload":{"post":{"operationId":"uploadFile","summary":"uploadFile","description":"Create pre-signed S3 URL to upload a file to keep temporarily (one week).\\n\\nUse the createFile operation to store file file permanently.\\n","tags":["files"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadFilePayload","type":"object"}}}},"responses":{"201":{"description":"Pre-signed URL for POST / PUT upload","content":{"application/json":{"schema":{"type":"object","properties":{"upload_url":{"type":"string","format":"url","example":"https://epilot-files-prod.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123"},"s3ref":{"allOf":[{"$ref":"#/components/schemas/S3Reference"},{"example":{"bucket":"epilot-files-prod","key":"123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"}}]}}}}}}}}},"/v1/files":{"post":{"operationId":"saveFile","summary":"saveFile","description":"Create / Update a permanent File entity\\n\\nMakes file object permanent\\n\\nSaves metadata to file entity\\n","tags":["files"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveFilePayload"}}}},"responses":{"201":{"description":"Created File Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileEntity"}}}}}}},"/v1/files/{id}/download":{"get":{"operationId":"downloadFile","summary":"downloadFile","description":"Generate pre-signed download S3 url for a file","tags":["files"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/FileEntityId"}},{"name":"version","in":"query","description":"index of file version","schema":{"type":"integer","default":0}}],"responses":{"200":{"description":"Generated thumbnail image","content":{"application/json":{"schema":{"type":"object","properties":{"download_url":{"type":"string","format":"uri","example":"https://epilot-files-prod.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123"}}}}}}}}},"/v1/files/{id}/preview":{"get":{"operationId":"previewFile","summary":"previewFile","description":"Generate thumbnail preview for a file entity","tags":["files"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/FileEntityId"}},{"name":"version","in":"query","description":"index of file version","schema":{"type":"integer","default":0}},{"name":"w","in":"query","description":"width","schema":{"type":"integer"}},{"name":"h","in":"query","description":"height","schema":{"type":"integer"}}],"responses":{"200":{"description":"Generated thumbnail image","content":{"image/png":{},"image/jpeg":{}}}}}}},"components":{"securitySchemes":{"EpilotAuth":{"type":"http","scheme":"bearer","description":"Epilot Bearer Token"},"AsOrganization":{"type":"apiKey","in":"header","name":"x-ivy-org-id","description":"Set organization id when using internal auth"}},"schemas":{"FileEntityId":{"type":"string","example":"ef7d985c-2385-44f4-9c71-ae06a52264f8"},"FileEntity":{"type":"object","properties":{"_id":{"$ref":"#/components/schemas/FileEntityId"},"filename":{"type":"string","example":"document.pdf"},"access_control":{"type":"string","default":"private","enum":["private","public"]},"versions":{"type":"array","items":{"type":"object","properties":{"s3ref":{"$ref":"#/components/schemas/S3Reference"}}}}}},"UploadFilePayload":{"type":"object","properties":{"filename":{"type":"string","example":"document.pdf"},"content_type":{"description":"MIME type of file","type":"string","example":"image/png","default":"application/octet-stream"}},"required":["filename"]},"SaveFilePayload":{"type":"object","properties":{"s3ref":{"$ref":"#/components/schemas/S3Reference"},"file_entity_id":{"type":"string","description":"if passed, adds a new version to existing file entity"},"filename":{"type":"string","example":"document.pdf"},"access_control":{"type":"string","default":"private","enum":["private","public"]}},"required":["s3ref"]},"S3Reference":{"type":"object","properties":{"bucket":{"type":"string","example":"epilot-files-prod"},"key":{"type":"string","example":"123/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"}},"required":["bucket","key"]},"FileItem":{"allOf":[{"$ref":"#/components/schemas/S3Reference"},{"type":"object","properties":{"filename":{"type":"string","example":"document.pdf"},"size_bytes":{"type":"integer","example":1234}}}]}}}}')}},t={};return function i(a){if(t[a])return t[a].exports;var n=t[a]={exports:{}};return e[a].call(n.exports,n,n.exports,i),n.exports}(914)})());
1
+ !function(e,t){for(var i in t)e[i]=t[i];t.__esModule&&Object.defineProperty(e,"__esModule",{value:!0})}(exports,(()=>{"use strict";var e={914:function(e,t,i){var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var n=a(i(279));t.default=n.default},279:e=>{e.exports=JSON.parse('{"openapi":"3.0.3","info":{"title":"File API","version":"0.1.0","description":"File Upload and Management for epilot SaaS"},"tags":[{"name":"files","description":"Files"}],"security":[{"EpilotAuth":[]},{"AsOrganization":[]}],"paths":{"/v1/files/public/upload":{"post":{"operationId":"uploadFilePublic","summary":"uploadFilePublic","security":[],"description":"Create pre-signed S3 URL to upload a file to keep temporarily (one week).\\n\\nUse the createFile operation to store file file permanently.\\n","tags":["files"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadFilePayload"}}}},"responses":{"201":{"description":"Pre-signed URL for POST / PUT upload","content":{"application/json":{"schema":{"type":"object","properties":{"upload_url":{"type":"string","format":"url","example":"https://epilot-files-prod.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123"},"s3ref":{"allOf":[{"$ref":"#/components/schemas/S3Reference"},{"example":{"bucket":"epilot-files-prod","key":"123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"}}]}}}}}}}}},"/v1/files/upload":{"post":{"operationId":"uploadFile","summary":"uploadFile","description":"Create pre-signed S3 URL to upload a file to keep temporarily (one week).\\n\\nUse the createFile operation to store file file permanently.\\n","tags":["files"],"parameters":[{"name":"file_entity_id","in":"query","description":"file entity id","schema":{"$ref":"#/components/schemas/FileEntityId"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadFilePayload","type":"object"}}}},"responses":{"201":{"description":"Pre-signed URL for POST / PUT upload","content":{"application/json":{"schema":{"type":"object","properties":{"upload_url":{"type":"string","format":"url","example":"https://epilot-files-prod.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123"},"s3ref":{"allOf":[{"$ref":"#/components/schemas/S3Reference"},{"example":{"bucket":"epilot-files-prod","key":"123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"}}]}}}}}}}}},"/v1/files":{"post":{"operationId":"saveFile","summary":"saveFile","description":"Create / Update a permanent File entity\\n\\nMakes file object permanent\\n\\nSaves metadata to file entity\\n","tags":["files"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveFilePayload"}}}},"responses":{"201":{"description":"Created File Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileEntity"}}}}}}},"/v1/files/{id}/download":{"get":{"operationId":"downloadFile","summary":"downloadFile","description":"Generate pre-signed download S3 url for a file","tags":["files"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/FileEntityId"}},{"name":"version","in":"query","description":"index of file version","schema":{"type":"integer","default":0}}],"responses":{"200":{"description":"Generated thumbnail image","content":{"application/json":{"schema":{"type":"object","properties":{"download_url":{"type":"string","format":"uri","example":"https://epilot-files-prod.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123"}}}}}}}}},"/v1/files/{id}/preview":{"get":{"operationId":"previewFile","summary":"previewFile","description":"Generate thumbnail preview for a file entity","tags":["files"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/FileEntityId"}},{"name":"version","in":"query","description":"index of file version","schema":{"type":"integer","default":0}},{"name":"w","in":"query","description":"width","schema":{"type":"integer"}},{"name":"h","in":"query","description":"height","schema":{"type":"integer"}}],"responses":{"200":{"description":"Generated thumbnail image","content":{"image/png":{},"image/jpeg":{}}}}}},"/v1/files/delete":{"delete":{"operationId":"deleteFile","summary":"deleteFile","description":"Delete file entity","tags":["files"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteFilePayload"}}}},"responses":{"200":{"description":"File delete response"}}}}},"components":{"securitySchemes":{"EpilotAuth":{"type":"http","scheme":"bearer","description":"Epilot Bearer Token"},"AsOrganization":{"type":"apiKey","in":"header","name":"x-ivy-org-id","description":"Set organization id when using internal auth"}},"schemas":{"FileEntityId":{"type":"string","example":"ef7d985c-2385-44f4-9c71-ae06a52264f8"},"FileEntity":{"type":"object","properties":{"_id":{"$ref":"#/components/schemas/FileEntityId"},"filename":{"type":"string","example":"document.pdf"},"access_control":{"type":"string","default":"private","enum":["private","public"]},"versions":{"type":"array","items":{"type":"object","properties":{"s3ref":{"$ref":"#/components/schemas/S3Reference"}}}}}},"UploadFilePayload":{"type":"object","properties":{"filename":{"type":"string","example":"document.pdf"},"content_type":{"description":"MIME type of file","type":"string","example":"image/png","default":"application/octet-stream"}},"required":["filename"]},"SaveFilePayload":{"type":"object","properties":{"s3ref":{"$ref":"#/components/schemas/S3Reference"},"file_entity_id":{"type":"string","description":"if passed, adds a new version to existing file entity"},"filename":{"type":"string","example":"document.pdf"},"size":{"type":"number","example":42012},"type":{"type":"string","example":"image/jpeg"},"access_control":{"type":"string","default":"private","enum":["private","public"]}},"required":["s3ref"]},"DeleteFilePayload":{"type":"object","properties":{"s3ref":{"$ref":"#/components/schemas/S3Reference"}},"required":["s3ref"]},"S3Reference":{"type":"object","properties":{"bucket":{"type":"string","example":"epilot-files-prod"},"key":{"type":"string","example":"123/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"}},"required":["bucket","key"]},"FileItem":{"allOf":[{"$ref":"#/components/schemas/S3Reference"},{"type":"object","properties":{"filename":{"type":"string","example":"document.pdf"},"size_bytes":{"type":"integer","example":1234}}}]}}}}')}},t={};return function i(a){if(t[a])return t[a].exports;var n=t[a]={exports:{}};return e[a].call(n.exports,n,n.exports,i),n.exports}(914)})());
package/dist/openapi.d.ts CHANGED
@@ -9,6 +9,9 @@ import {
9
9
 
10
10
  declare namespace Components {
11
11
  namespace Schemas {
12
+ export interface DeleteFilePayload {
13
+ s3ref: S3Reference;
14
+ }
12
15
  export interface FileEntity {
13
16
  _id?: FileEntityId;
14
17
  /**
@@ -71,6 +74,16 @@ declare namespace Components {
71
74
  * document.pdf
72
75
  */
73
76
  filename?: string;
77
+ /**
78
+ * example:
79
+ * 42012
80
+ */
81
+ size?: number;
82
+ /**
83
+ * example:
84
+ * image/jpeg
85
+ */
86
+ type?: string;
74
87
  access_control?: "private" | "public";
75
88
  }
76
89
  export interface UploadFilePayload {
@@ -89,6 +102,9 @@ declare namespace Components {
89
102
  }
90
103
  }
91
104
  declare namespace Paths {
105
+ namespace DeleteFile {
106
+ export type RequestBody = Components.Schemas.DeleteFilePayload;
107
+ }
92
108
  namespace DownloadFile {
93
109
  namespace Parameters {
94
110
  export type Id = Components.Schemas.FileEntityId;
@@ -133,6 +149,12 @@ declare namespace Paths {
133
149
  }
134
150
  }
135
151
  namespace UploadFile {
152
+ namespace Parameters {
153
+ export type FileEntityId = Components.Schemas.FileEntityId;
154
+ }
155
+ export interface QueryParameters {
156
+ file_entity_id?: Parameters.FileEntityId;
157
+ }
136
158
  export type RequestBody = Components.Schemas.UploadFilePayload;
137
159
  namespace Responses {
138
160
  export interface $201 {
@@ -219,7 +241,7 @@ export interface OperationMethods {
219
241
  *
220
242
  */
221
243
  'uploadFile'(
222
- parameters?: Parameters<UnknownParamsObject> | null,
244
+ parameters?: Parameters<Paths.UploadFile.QueryParameters> | null,
223
245
  data?: Paths.UploadFile.RequestBody,
224
246
  config?: AxiosRequestConfig
225
247
  ): OperationResponse<Paths.UploadFile.Responses.$201>
@@ -258,6 +280,16 @@ export interface OperationMethods {
258
280
  data?: any,
259
281
  config?: AxiosRequestConfig
260
282
  ): OperationResponse<any>
283
+ /**
284
+ * deleteFile - deleteFile
285
+ *
286
+ * Delete file entity
287
+ */
288
+ 'deleteFile'(
289
+ parameters?: Parameters<UnknownParamsObject> | null,
290
+ data?: Paths.DeleteFile.RequestBody,
291
+ config?: AxiosRequestConfig
292
+ ): OperationResponse<any>
261
293
  }
262
294
 
263
295
  export interface PathsDictionary {
@@ -286,7 +318,7 @@ export interface PathsDictionary {
286
318
  *
287
319
  */
288
320
  'post'(
289
- parameters?: Parameters<UnknownParamsObject> | null,
321
+ parameters?: Parameters<Paths.UploadFile.QueryParameters> | null,
290
322
  data?: Paths.UploadFile.RequestBody,
291
323
  config?: AxiosRequestConfig
292
324
  ): OperationResponse<Paths.UploadFile.Responses.$201>
@@ -332,6 +364,18 @@ export interface PathsDictionary {
332
364
  config?: AxiosRequestConfig
333
365
  ): OperationResponse<any>
334
366
  }
367
+ ['/v1/files/delete']: {
368
+ /**
369
+ * deleteFile - deleteFile
370
+ *
371
+ * Delete file entity
372
+ */
373
+ 'delete'(
374
+ parameters?: Parameters<UnknownParamsObject> | null,
375
+ data?: Paths.DeleteFile.RequestBody,
376
+ config?: AxiosRequestConfig
377
+ ): OperationResponse<any>
378
+ }
335
379
  }
336
380
 
337
381
  export type Client = OpenAPIClient<OperationMethods, PathsDictionary>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/file-client",
3
- "version": "0.1.4",
3
+ "version": "0.2.0",
4
4
  "description": "API client for epilot File API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/openapi.d.ts CHANGED
@@ -9,6 +9,9 @@ import {
9
9
 
10
10
  declare namespace Components {
11
11
  namespace Schemas {
12
+ export interface DeleteFilePayload {
13
+ s3ref: S3Reference;
14
+ }
12
15
  export interface FileEntity {
13
16
  _id?: FileEntityId;
14
17
  /**
@@ -71,6 +74,16 @@ declare namespace Components {
71
74
  * document.pdf
72
75
  */
73
76
  filename?: string;
77
+ /**
78
+ * example:
79
+ * 42012
80
+ */
81
+ size?: number;
82
+ /**
83
+ * example:
84
+ * image/jpeg
85
+ */
86
+ type?: string;
74
87
  access_control?: "private" | "public";
75
88
  }
76
89
  export interface UploadFilePayload {
@@ -89,6 +102,9 @@ declare namespace Components {
89
102
  }
90
103
  }
91
104
  declare namespace Paths {
105
+ namespace DeleteFile {
106
+ export type RequestBody = Components.Schemas.DeleteFilePayload;
107
+ }
92
108
  namespace DownloadFile {
93
109
  namespace Parameters {
94
110
  export type Id = Components.Schemas.FileEntityId;
@@ -133,6 +149,12 @@ declare namespace Paths {
133
149
  }
134
150
  }
135
151
  namespace UploadFile {
152
+ namespace Parameters {
153
+ export type FileEntityId = Components.Schemas.FileEntityId;
154
+ }
155
+ export interface QueryParameters {
156
+ file_entity_id?: Parameters.FileEntityId;
157
+ }
136
158
  export type RequestBody = Components.Schemas.UploadFilePayload;
137
159
  namespace Responses {
138
160
  export interface $201 {
@@ -219,7 +241,7 @@ export interface OperationMethods {
219
241
  *
220
242
  */
221
243
  'uploadFile'(
222
- parameters?: Parameters<UnknownParamsObject> | null,
244
+ parameters?: Parameters<Paths.UploadFile.QueryParameters> | null,
223
245
  data?: Paths.UploadFile.RequestBody,
224
246
  config?: AxiosRequestConfig
225
247
  ): OperationResponse<Paths.UploadFile.Responses.$201>
@@ -258,6 +280,16 @@ export interface OperationMethods {
258
280
  data?: any,
259
281
  config?: AxiosRequestConfig
260
282
  ): OperationResponse<any>
283
+ /**
284
+ * deleteFile - deleteFile
285
+ *
286
+ * Delete file entity
287
+ */
288
+ 'deleteFile'(
289
+ parameters?: Parameters<UnknownParamsObject> | null,
290
+ data?: Paths.DeleteFile.RequestBody,
291
+ config?: AxiosRequestConfig
292
+ ): OperationResponse<any>
261
293
  }
262
294
 
263
295
  export interface PathsDictionary {
@@ -286,7 +318,7 @@ export interface PathsDictionary {
286
318
  *
287
319
  */
288
320
  'post'(
289
- parameters?: Parameters<UnknownParamsObject> | null,
321
+ parameters?: Parameters<Paths.UploadFile.QueryParameters> | null,
290
322
  data?: Paths.UploadFile.RequestBody,
291
323
  config?: AxiosRequestConfig
292
324
  ): OperationResponse<Paths.UploadFile.Responses.$201>
@@ -332,6 +364,18 @@ export interface PathsDictionary {
332
364
  config?: AxiosRequestConfig
333
365
  ): OperationResponse<any>
334
366
  }
367
+ ['/v1/files/delete']: {
368
+ /**
369
+ * deleteFile - deleteFile
370
+ *
371
+ * Delete file entity
372
+ */
373
+ 'delete'(
374
+ parameters?: Parameters<UnknownParamsObject> | null,
375
+ data?: Paths.DeleteFile.RequestBody,
376
+ config?: AxiosRequestConfig
377
+ ): OperationResponse<any>
378
+ }
335
379
  }
336
380
 
337
381
  export type Client = OpenAPIClient<OperationMethods, PathsDictionary>