@epilot/file-client 1.8.1 → 1.9.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
- (()=>{"use strict";var e={914:function(e,i,t){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(i,"__esModule",{value:!0});var r=n(t(240));i.default=r.default},240:e=>{e.exports=JSON.parse('{"openapi":"3.0.3","info":{"title":"","version":""},"paths":{"/v1/files/public/upload":{"post":{"operationId":"uploadFilePublic","requestBody":{"content":{"application/json":{}}}}},"/v1/files/upload":{"post":{"operationId":"uploadFile","parameters":[{"name":"file_entity_id","in":"query"}],"requestBody":{"content":{"application/json":{}}}}},"/v1/files":{"post":{"operationId":"saveFile","requestBody":{"content":{"application/json":{}}}}},"/v1/files/{id}/download":{"get":{"operationId":"downloadFile","parameters":[{"name":"id","in":"path","required":true},{"name":"version","in":"query"},{"name":"attachment","in":"query"}]}},"/v1/files/download:verify":{"post":{"operationId":"verifyCustomDownloadUrl","requestBody":{"content":{"application/json":{}}}}},"/v1/files:downloadFiles":{"post":{"operationId":"downloadFiles","requestBody":{"content":{"application/json":{}}}}},"/v1/files:downloadS3":{"post":{"operationId":"downloadS3File","parameters":[{"name":"s3_key","in":"query","required":true},{"name":"s3_bucket","in":"query","required":true},{"name":"attachment","in":"query"}]}},"/v1/files/{id}/preview":{"get":{"operationId":"previewFile","parameters":[{"name":"id","in":"path","required":true},{"name":"version","in":"query"},{"name":"w","in":"query"},{"name":"h","in":"query"}]}},"/v1/files/public/{id}/preview":{"get":{"operationId":"previewPublicFile","parameters":[{"name":"id","in":"path","required":true},{"name":"version","in":"query"},{"name":"w","in":"query"},{"name":"h","in":"query"},{"name":"org_id","in":"query"}]}},"/v1/files:previewS3":{"get":{"operationId":"previewS3FileGet","parameters":[{"name":"key","in":"query","required":true},{"name":"bucket","in":"query","required":true},{"name":"w","in":"query"},{"name":"h","in":"query"}]},"post":{"operationId":"previewS3File","parameters":[{"name":"w","in":"query"},{"name":"h","in":"query"}],"requestBody":{"content":{"application/json":{}}}}},"/v1/files/delete":{"delete":{"operationId":"deleteFile","requestBody":{"content":{"application/json":{}}}}},"/v1/files/session":{"get":{"operationId":"getSession"},"delete":{"operationId":"deleteSession"}}},"components":{},"servers":[{"url":"https://file.sls.epilot.io"}]}')}},i={},t=function t(n){var r=i[n];if(void 0!==r)return r.exports;var o=i[n]={exports:{}};return e[n].call(o.exports,o,o.exports,t),o.exports}(914),n=exports;for(var r in t)n[r]=t[r];t.__esModule&&Object.defineProperty(n,"__esModule",{value:!0})})();
1
+ (()=>{"use strict";var e={914:function(e,i,r){var t=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(i,"__esModule",{value:!0});var n=t(r(240));i.default=n.default},240:e=>{e.exports=JSON.parse('{"openapi":"3.0.3","info":{"title":"","version":""},"paths":{"/v1/files/public/upload":{"post":{"operationId":"uploadFilePublic","requestBody":{"content":{"application/json":{}}}}},"/v1/files/upload":{"post":{"operationId":"uploadFile","parameters":[{"name":"file_entity_id","in":"query"}],"requestBody":{"content":{"application/json":{}}}}},"/v1/files":{"post":{"operationId":"saveFile","requestBody":{"content":{"application/json":{}}}}},"/v1/files/{id}/download":{"get":{"operationId":"downloadFile","parameters":[{"name":"id","in":"path","required":true},{"name":"version","in":"query"},{"name":"attachment","in":"query"}]}},"/v1/files/download:verify":{"post":{"operationId":"verifyCustomDownloadUrl","requestBody":{"content":{"application/json":{}}}}},"/v1/files:downloadFiles":{"post":{"operationId":"downloadFiles","requestBody":{"content":{"application/json":{}}}}},"/v1/files:downloadS3":{"post":{"operationId":"downloadS3File","parameters":[{"name":"s3_key","in":"query","required":true},{"name":"s3_bucket","in":"query","required":true},{"name":"attachment","in":"query"}]}},"/v1/files/{id}/preview":{"get":{"operationId":"previewFile","parameters":[{"name":"id","in":"path","required":true},{"name":"version","in":"query"},{"name":"w","in":"query"},{"name":"h","in":"query"}]}},"/v1/files/public/{id}/preview":{"get":{"operationId":"previewPublicFile","parameters":[{"name":"id","in":"path","required":true},{"name":"version","in":"query"},{"name":"w","in":"query"},{"name":"h","in":"query"},{"name":"org_id","in":"query"}]}},"/v1/files:previewS3":{"get":{"operationId":"previewS3FileGet","parameters":[{"name":"key","in":"query","required":true},{"name":"bucket","in":"query","required":true},{"name":"w","in":"query"},{"name":"h","in":"query"}]},"post":{"operationId":"previewS3File","parameters":[{"name":"w","in":"query"},{"name":"h","in":"query"}],"requestBody":{"content":{"application/json":{}}}}},"/v1/files/delete":{"delete":{"operationId":"deleteFile","requestBody":{"content":{"application/json":{}}}}},"/v1/files/session":{"get":{"operationId":"getSession"},"delete":{"operationId":"deleteSession"}},"/v1/files/{id}/public/links":{"post":{"operationId":"generatePublicLink","parameters":[{"name":"id","in":"path","required":true}]},"get":{"operationId":"getAllPublicLinksForFile","parameters":[{"name":"id","in":"path","required":true}]}},"/v1/files/public/links/{id}/{filename}":{"get":{"operationId":"accessPublicLink","parameters":[{"name":"id","in":"path","required":true},{"name":"filename","in":"path","required":true}]},"delete":{"operationId":"revokePublicLink","parameters":[{"name":"id","in":"path","required":true}]}}},"components":{},"servers":[{"url":"https://file.sls.epilot.io"}]}')}},i={},r=function r(t){var n=i[t];if(void 0!==n)return n.exports;var o=i[t]={exports:{}};return e[t].call(o.exports,o,o.exports,r),o.exports}(914),t=exports;for(var n in r)t[n]=r[n];r.__esModule&&Object.defineProperty(t,"__esModule",{value:!0})})();
@@ -214,6 +214,55 @@
214
214
  "delete": {
215
215
  "operationId": "deleteSession"
216
216
  }
217
+ },
218
+ "/v1/files/{id}/public/links": {
219
+ "post": {
220
+ "operationId": "generatePublicLink",
221
+ "parameters": [
222
+ {
223
+ "name": "id",
224
+ "in": "path",
225
+ "required": true
226
+ }
227
+ ]
228
+ },
229
+ "get": {
230
+ "operationId": "getAllPublicLinksForFile",
231
+ "parameters": [
232
+ {
233
+ "name": "id",
234
+ "in": "path",
235
+ "required": true
236
+ }
237
+ ]
238
+ }
239
+ },
240
+ "/v1/files/public/links/{id}/{filename}": {
241
+ "get": {
242
+ "operationId": "accessPublicLink",
243
+ "parameters": [
244
+ {
245
+ "name": "id",
246
+ "in": "path",
247
+ "required": true
248
+ },
249
+ {
250
+ "name": "filename",
251
+ "in": "path",
252
+ "required": true
253
+ }
254
+ ]
255
+ },
256
+ "delete": {
257
+ "operationId": "revokePublicLink",
258
+ "parameters": [
259
+ {
260
+ "name": "id",
261
+ "in": "path",
262
+ "required": true
263
+ }
264
+ ]
265
+ }
217
266
  }
218
267
  },
219
268
  "components": {},
package/dist/openapi.d.ts CHANGED
@@ -137,6 +137,24 @@ declare namespace Components {
137
137
  EntitySlug;
138
138
  _tags?: string[];
139
139
  }
140
+ export interface PublicLink {
141
+ /**
142
+ * ID of the public link
143
+ * example:
144
+ * 3ef5c6d9-818d-45e6-8efb-b1de59079a1c
145
+ */
146
+ id?: string;
147
+ /**
148
+ * Public link of the file
149
+ * example:
150
+ * https://file.sls.epilot.io/v1/files/public/links/3ef5c6d9-818d-45e6-8efb-b1de59079a1c
151
+ */
152
+ link?: string;
153
+ /**
154
+ * The most recent timestamp when the file was accessed
155
+ */
156
+ last_accessed_at?: string;
157
+ }
140
158
  export interface S3Reference {
141
159
  /**
142
160
  * example:
@@ -217,6 +235,40 @@ declare namespace Components {
217
235
  }
218
236
  }
219
237
  declare namespace Paths {
238
+ namespace AccessPublicLink {
239
+ namespace Parameters {
240
+ /**
241
+ * Name of the file
242
+ * example:
243
+ * invoice-2023-12.pdf
244
+ */
245
+ export type Filename = string;
246
+ /**
247
+ * Id of the publicly generated link
248
+ * example:
249
+ * 13d22918-36bd-4227-9ad4-2cb978788c8d
250
+ */
251
+ export type Id = string;
252
+ }
253
+ export interface PathParameters {
254
+ id: /**
255
+ * Id of the publicly generated link
256
+ * example:
257
+ * 13d22918-36bd-4227-9ad4-2cb978788c8d
258
+ */
259
+ Parameters.Id;
260
+ filename: /**
261
+ * Name of the file
262
+ * example:
263
+ * invoice-2023-12.pdf
264
+ */
265
+ Parameters.Filename;
266
+ }
267
+ namespace Responses {
268
+ export interface $302 {
269
+ }
270
+ }
271
+ }
220
272
  namespace DeleteFile {
221
273
  export type RequestBody = Components.Schemas.DeleteFilePayload;
222
274
  namespace Responses {
@@ -291,6 +343,48 @@ declare namespace Paths {
291
343
  }
292
344
  }
293
345
  }
346
+ namespace GeneratePublicLink {
347
+ namespace Parameters {
348
+ export type Id = /**
349
+ * example:
350
+ * ef7d985c-2385-44f4-9c71-ae06a52264f8
351
+ */
352
+ Components.Schemas.FileEntityId;
353
+ }
354
+ export interface PathParameters {
355
+ id: Parameters.Id;
356
+ }
357
+ namespace Responses {
358
+ /**
359
+ * example:
360
+ * https://file.sls.epilot.io/v1/files/public/links/3ef5c6d9-818d-45e6-8efb-b1de59079a1c/invoice-2023-12.pdf
361
+ */
362
+ export type $201 = string;
363
+ }
364
+ }
365
+ namespace GetAllPublicLinksForFile {
366
+ namespace Parameters {
367
+ /**
368
+ * ID of the file entity
369
+ * example:
370
+ * 13d22918-36bd-4227-9ad4-2cb978788c8d
371
+ */
372
+ export type Id = string;
373
+ }
374
+ export interface PathParameters {
375
+ id: /**
376
+ * ID of the file entity
377
+ * example:
378
+ * 13d22918-36bd-4227-9ad4-2cb978788c8d
379
+ */
380
+ Parameters.Id;
381
+ }
382
+ namespace Responses {
383
+ export interface $200 {
384
+ results?: Components.Schemas.PublicLink[];
385
+ }
386
+ }
387
+ }
294
388
  namespace GetSession {
295
389
  namespace Responses {
296
390
  export interface $200 {
@@ -364,6 +458,31 @@ declare namespace Paths {
364
458
  h?: Parameters.H;
365
459
  }
366
460
  }
461
+ namespace RevokePublicLink {
462
+ namespace Parameters {
463
+ /**
464
+ * Id of the publicly generated link
465
+ * example:
466
+ * 13d22918-36bd-4227-9ad4-2cb978788c8d
467
+ */
468
+ export type Id = string;
469
+ }
470
+ export interface PathParameters {
471
+ id: /**
472
+ * Id of the publicly generated link
473
+ * example:
474
+ * 13d22918-36bd-4227-9ad4-2cb978788c8d
475
+ */
476
+ Parameters.Id;
477
+ }
478
+ namespace Responses {
479
+ /**
480
+ * example:
481
+ * https://file.sls.epilot.io/v1/files/public/links/3ef5c6d9-818d-45e6-8efb-b1de59079a1c
482
+ */
483
+ export type $204 = string;
484
+ }
485
+ }
367
486
  namespace SaveFile {
368
487
  export type RequestBody = Components.Schemas.SaveFilePayload;
369
488
  namespace Responses {
@@ -613,6 +732,47 @@ export interface OperationMethods {
613
732
  data?: any,
614
733
  config?: AxiosRequestConfig
615
734
  ): OperationResponse<Paths.DeleteSession.Responses.$200>
735
+ /**
736
+ * getAllPublicLinksForFile - getAllPublicLinksForFile
737
+ *
738
+ * Not yet implemented; This API would fetches all the public links that are previously generated for a file
739
+ */
740
+ 'getAllPublicLinksForFile'(
741
+ parameters?: Parameters<Paths.GetAllPublicLinksForFile.PathParameters> | null,
742
+ data?: any,
743
+ config?: AxiosRequestConfig
744
+ ): OperationResponse<Paths.GetAllPublicLinksForFile.Responses.$200>
745
+ /**
746
+ * generatePublicLink - generatePublicLink
747
+ *
748
+ * Generates a public link to access the private files
749
+ *
750
+ */
751
+ 'generatePublicLink'(
752
+ parameters?: Parameters<Paths.GeneratePublicLink.PathParameters> | null,
753
+ data?: any,
754
+ config?: AxiosRequestConfig
755
+ ): OperationResponse<Paths.GeneratePublicLink.Responses.$201>
756
+ /**
757
+ * accessPublicLink - accessPublicLink
758
+ *
759
+ * Redirects to a accessible signed url for the respective file associated to the public link
760
+ */
761
+ 'accessPublicLink'(
762
+ parameters?: Parameters<Paths.AccessPublicLink.PathParameters> | null,
763
+ data?: any,
764
+ config?: AxiosRequestConfig
765
+ ): OperationResponse<any>
766
+ /**
767
+ * revokePublicLink - revokePublicLink
768
+ *
769
+ * Not yet implemented; This operation would revokes a given public link by ID
770
+ */
771
+ 'revokePublicLink'(
772
+ parameters?: Parameters<Paths.RevokePublicLink.PathParameters> | null,
773
+ data?: any,
774
+ config?: AxiosRequestConfig
775
+ ): OperationResponse<Paths.RevokePublicLink.Responses.$204>
616
776
  }
617
777
 
618
778
  export interface PathsDictionary {
@@ -794,6 +954,51 @@ export interface PathsDictionary {
794
954
  config?: AxiosRequestConfig
795
955
  ): OperationResponse<Paths.DeleteSession.Responses.$200>
796
956
  }
957
+ ['/v1/files/{id}/public/links']: {
958
+ /**
959
+ * generatePublicLink - generatePublicLink
960
+ *
961
+ * Generates a public link to access the private files
962
+ *
963
+ */
964
+ 'post'(
965
+ parameters?: Parameters<Paths.GeneratePublicLink.PathParameters> | null,
966
+ data?: any,
967
+ config?: AxiosRequestConfig
968
+ ): OperationResponse<Paths.GeneratePublicLink.Responses.$201>
969
+ /**
970
+ * getAllPublicLinksForFile - getAllPublicLinksForFile
971
+ *
972
+ * Not yet implemented; This API would fetches all the public links that are previously generated for a file
973
+ */
974
+ 'get'(
975
+ parameters?: Parameters<Paths.GetAllPublicLinksForFile.PathParameters> | null,
976
+ data?: any,
977
+ config?: AxiosRequestConfig
978
+ ): OperationResponse<Paths.GetAllPublicLinksForFile.Responses.$200>
979
+ }
980
+ ['/v1/files/public/links/{id}/{filename}']: {
981
+ /**
982
+ * accessPublicLink - accessPublicLink
983
+ *
984
+ * Redirects to a accessible signed url for the respective file associated to the public link
985
+ */
986
+ 'get'(
987
+ parameters?: Parameters<Paths.AccessPublicLink.PathParameters> | null,
988
+ data?: any,
989
+ config?: AxiosRequestConfig
990
+ ): OperationResponse<any>
991
+ /**
992
+ * revokePublicLink - revokePublicLink
993
+ *
994
+ * Not yet implemented; This operation would revokes a given public link by ID
995
+ */
996
+ 'delete'(
997
+ parameters?: Parameters<Paths.RevokePublicLink.PathParameters> | null,
998
+ data?: any,
999
+ config?: AxiosRequestConfig
1000
+ ): OperationResponse<Paths.RevokePublicLink.Responses.$204>
1001
+ }
797
1002
  }
798
1003
 
799
1004
  export type Client = OpenAPIClient<OperationMethods, PathsDictionary>
package/dist/openapi.json CHANGED
@@ -688,6 +688,153 @@
688
688
  }
689
689
  }
690
690
  }
691
+ },
692
+ "/v1/files/{id}/public/links": {
693
+ "post": {
694
+ "operationId": "generatePublicLink",
695
+ "summary": "generatePublicLink",
696
+ "description": "Generates a public link to access the private files\n",
697
+ "tags": [
698
+ "files"
699
+ ],
700
+ "parameters": [
701
+ {
702
+ "name": "id",
703
+ "in": "path",
704
+ "required": true,
705
+ "schema": {
706
+ "$ref": "#/components/schemas/FileEntityId"
707
+ }
708
+ }
709
+ ],
710
+ "responses": {
711
+ "201": {
712
+ "description": "Returns the public link which can be used to access the file later",
713
+ "content": {
714
+ "application/json": {
715
+ "schema": {
716
+ "type": "string",
717
+ "example": "https://file.sls.epilot.io/v1/files/public/links/3ef5c6d9-818d-45e6-8efb-b1de59079a1c/invoice-2023-12.pdf"
718
+ }
719
+ }
720
+ }
721
+ }
722
+ }
723
+ },
724
+ "get": {
725
+ "operationId": "getAllPublicLinksForFile",
726
+ "summary": "getAllPublicLinksForFile",
727
+ "description": "Not yet implemented; This API would fetches all the public links that are previously generated for a file",
728
+ "x-not-implemented": true,
729
+ "parameters": [
730
+ {
731
+ "name": "id",
732
+ "in": "path",
733
+ "required": true,
734
+ "schema": {
735
+ "type": "string",
736
+ "description": "ID of the file entity",
737
+ "example": "13d22918-36bd-4227-9ad4-2cb978788c8d"
738
+ }
739
+ }
740
+ ],
741
+ "tags": [
742
+ "files"
743
+ ],
744
+ "responses": {
745
+ "200": {
746
+ "description": "Public links of a file retrieved successfully",
747
+ "content": {
748
+ "application/json": {
749
+ "schema": {
750
+ "type": "object",
751
+ "properties": {
752
+ "results": {
753
+ "type": "array",
754
+ "items": {
755
+ "$ref": "#/components/schemas/PublicLink"
756
+ }
757
+ }
758
+ }
759
+ }
760
+ }
761
+ }
762
+ }
763
+ }
764
+ }
765
+ },
766
+ "/v1/files/public/links/{id}/{filename}": {
767
+ "get": {
768
+ "operationId": "accessPublicLink",
769
+ "summary": "accessPublicLink",
770
+ "security": [],
771
+ "description": "Redirects to a accessible signed url for the respective file associated to the public link",
772
+ "parameters": [
773
+ {
774
+ "name": "id",
775
+ "in": "path",
776
+ "required": true,
777
+ "schema": {
778
+ "type": "string",
779
+ "description": "Id of the publicly generated link",
780
+ "example": "13d22918-36bd-4227-9ad4-2cb978788c8d"
781
+ }
782
+ },
783
+ {
784
+ "name": "filename",
785
+ "in": "path",
786
+ "required": true,
787
+ "schema": {
788
+ "type": "string",
789
+ "description": "Name of the file",
790
+ "example": "invoice-2023-12.pdf"
791
+ }
792
+ }
793
+ ],
794
+ "tags": [
795
+ "files"
796
+ ],
797
+ "responses": {
798
+ "302": {
799
+ "description": "Redirect to signed URL where the caller can access the file"
800
+ }
801
+ }
802
+ },
803
+ "delete": {
804
+ "operationId": "revokePublicLink",
805
+ "summary": "revokePublicLink",
806
+ "security": [],
807
+ "description": "Not yet implemented; This operation would revokes a given public link by ID",
808
+ "x-not-implemented": true,
809
+ "parameters": [
810
+ {
811
+ "name": "id",
812
+ "in": "path",
813
+ "required": true,
814
+ "schema": {
815
+ "type": "string",
816
+ "description": "Id of the publicly generated link",
817
+ "example": "13d22918-36bd-4227-9ad4-2cb978788c8d"
818
+ }
819
+ }
820
+ ],
821
+ "tags": [
822
+ "files"
823
+ ],
824
+ "responses": {
825
+ "204": {
826
+ "description": "Revokes a public link successfully.",
827
+ "content": {
828
+ "application/json": {
829
+ "schema": {
830
+ "type": "string",
831
+ "example": "https://file.sls.epilot.io/v1/files/public/links/3ef5c6d9-818d-45e6-8efb-b1de59079a1c"
832
+ }
833
+ }
834
+ }
835
+ }
836
+ }
837
+ }
691
838
  }
692
839
  },
693
840
  "components": {
@@ -1006,13 +1153,29 @@
1006
1153
  "required": [
1007
1154
  "entity_id"
1008
1155
  ]
1156
+ },
1157
+ "PublicLink": {
1158
+ "type": "object",
1159
+ "properties": {
1160
+ "id": {
1161
+ "type": "string",
1162
+ "description": "ID of the public link",
1163
+ "example": "3ef5c6d9-818d-45e6-8efb-b1de59079a1c"
1164
+ },
1165
+ "link": {
1166
+ "type": "string",
1167
+ "description": "Public link of the file",
1168
+ "example": "https://file.sls.epilot.io/v1/files/public/links/3ef5c6d9-818d-45e6-8efb-b1de59079a1c"
1169
+ },
1170
+ "last_accessed_at": {
1171
+ "type": "string",
1172
+ "description": "The most recent timestamp when the file was accessed"
1173
+ }
1174
+ }
1009
1175
  }
1010
1176
  }
1011
1177
  },
1012
1178
  "servers": [
1013
- {
1014
- "url": "https://file.sls.epilot.io"
1015
- },
1016
1179
  {
1017
1180
  "url": "https://file.sls.epilot.io"
1018
1181
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/file-client",
3
- "version": "1.8.1",
3
+ "version": "1.9.0",
4
4
  "description": "Client library for the epilot File API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",