@epilot/app-client 0.9.0 → 0.9.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.
@@ -1 +1 @@
1
- (()=>{"use strict";var e={390:function(e,r,t){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0});var o=n(t(466));r.default=o.default},466:e=>{e.exports=JSON.parse('{"openapi":"3.1.0","info":{"title":"","version":""},"servers":[{"url":"https://app.sls.epilot.io"}],"paths":{"/v1/public/app/{appId}/components/{componentId}":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration to install"},{"name":"componentId","in":"path","required":true,"description":"ID of the component to retrieve"}],"get":{"operationId":"getPublicFacingComponent","responses":{}}},"/v1/app-configurations":{"get":{"operationId":"listConfigurations","parameters":[{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}},"post":{"operationId":"createConfiguration","requestBody":{"$ref":"#/components/requestBodies/CreateConfigRequest"},"responses":{}}},"/v1/app-configurations/public/{appId}":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration to install"}],"get":{"operationId":"getPublicConfiguration","parameters":[{"name":"version","in":"query"}],"responses":{}}},"/v1/app-configurations/{appId}":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration"}],"get":{"operationId":"getConfiguration","parameters":[{"name":"version","in":"query"}],"responses":{}},"patch":{"operationId":"patchMetadata","requestBody":{"$ref":"#/components/requestBodies/PatchConfigMetadataRequest"},"responses":{}},"delete":{"operationId":"deleteConfiguration","responses":{}}},"/v1/app-configurations/{appId}/events":{"post":{"operationId":"queryEvents","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"required":true,"content":{"application/json":{}}},"responses":{}}},"/v1/app-configurations/{appId}/bundle":{"post":{"operationId":"createBundleUploadUrl","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/CreateBundlePresignedRequest"},"responses":{}}},"/v1/app-configurations/{appId}/zip":{"post":{"operationId":"createZipUploadUrl","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"content":{"application/json":{}}},"responses":{}}},"/v1/app-configurations/{appId}/logo":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration"}],"post":{"operationId":"createLogoUploadUrl","requestBody":{"$ref":"#/components/requestBodies/CreateLogoPresignedRequest"},"responses":{}},"delete":{"operationId":"deleteLogo","responses":{}}},"/v1/app-configurations/{appId}/versions":{"get":{"operationId":"listVersions","parameters":[{"name":"appId","in":"path","required":true},{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}":{"get":{"operationId":"getVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}},"delete":{"operationId":"deleteVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}},"patch":{"operationId":"patchVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/PatchVersionRequest"},"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}/components":{"post":{"operationId":"createComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/UpsertComponentRequest"},"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}/components/{componentId}":{"patch":{"operationId":"patchComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true},{"name":"componentId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/UpsertComponentRequest"},"responses":{}},"delete":{"operationId":"deleteComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true},{"name":"componentId","in":"path","required":true}],"responses":{}}},"/v1/app-configurations/{appId}/versions/{sourceVersion}/clone-to/{targetVersion}":{"post":{"operationId":"cloneVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"sourceVersion","in":"path","required":true},{"name":"targetVersion","in":"path","required":true}],"responses":{}}},"/v1/app":{"get":{"operationId":"listInstallations","parameters":[{"name":"componentType","in":"query"},{"name":"enabled","in":"query"},{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}}},"/v1/app/{appId}":{"get":{"operationId":"getInstallation","parameters":[{"name":"appId","in":"path","required":true}],"responses":{}},"post":{"operationId":"install","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/InstallRequest"},"responses":{}},"patch":{"operationId":"patchInstallation","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/InstallRequest"},"responses":{}},"delete":{"operationId":"uninstall","parameters":[{"name":"appId","in":"path","required":true}],"responses":{}}},"/v1/app/{appId}/promote-to/{version}":{"post":{"operationId":"promoteVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}}},"/v1/app-events":{"post":{"operationId":"ingestEvent","requestBody":{"required":true,"content":{"application/json":{}}},"responses":{}}}},"components":{"requestBodies":{"CreateLogoPresignedRequest":{"required":true,"content":{"application/json":{}}},"CreateBundlePresignedRequest":{"required":true,"content":{"application/json":{}}},"PatchConfigMetadataRequest":{"required":true,"content":{"application/json":{}}},"PatchVersionRequest":{"required":true,"content":{"application/json":{}}},"UpsertComponentRequest":{"required":true,"content":{"application/json":{}}},"CreateConfigRequest":{"required":true,"content":{"application/json":{}}},"InstallRequest":{"content":{"application/json":{}}}}}}')}},r={},t=function t(n){var o=r[n];if(void 0!==o)return o.exports;var p=r[n]={exports:{}};return e[n].call(p.exports,p,p.exports,t),p.exports}(390),n=exports;for(var o in t)n[o]=t[o];t.__esModule&&Object.defineProperty(n,"__esModule",{value:!0})})();
1
+ (()=>{"use strict";var e={390:function(e,r,t){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0});var o=n(t(466));r.default=o.default},466:e=>{e.exports=JSON.parse('{"openapi":"3.1.0","info":{"title":"","version":""},"servers":[{"url":"https://app.sls.epilot.io"}],"paths":{"/v1/public/app/{appId}/components/{componentId}":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration to install"},{"name":"componentId","in":"path","required":true,"description":"ID of the component to retrieve"}],"get":{"operationId":"getPublicFacingComponent","responses":{}}},"/v1/app-configurations":{"get":{"operationId":"listConfigurations","parameters":[{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}},"post":{"operationId":"createConfiguration","requestBody":{"$ref":"#/components/requestBodies/CreateConfigRequest"},"responses":{}}},"/v1/app-configurations/public/{appId}":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration to install"}],"get":{"operationId":"getPublicConfiguration","parameters":[{"name":"version","in":"query"}],"responses":{}}},"/v1/app-configurations/{appId}":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration"}],"get":{"operationId":"getConfiguration","parameters":[{"name":"version","in":"query"}],"responses":{}},"patch":{"operationId":"patchMetadata","requestBody":{"$ref":"#/components/requestBodies/PatchConfigMetadataRequest"},"responses":{}},"delete":{"operationId":"deleteConfiguration","responses":{}}},"/v1/app-configurations/{appId}/events":{"post":{"operationId":"queryEvents","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"required":true,"content":{"application/json":{}}},"responses":{}}},"/v1/app-configurations/{appId}/bundle":{"post":{"operationId":"createBundleUploadUrl","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/CreateBundlePresignedRequest"},"responses":{}}},"/v1/app-configurations/{appId}/zip":{"post":{"operationId":"createZipUploadUrl","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"content":{"application/json":{}}},"responses":{}}},"/v1/app-configurations/{appId}/logo":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration"}],"post":{"operationId":"createLogoUploadUrl","requestBody":{"$ref":"#/components/requestBodies/CreateLogoPresignedRequest"},"responses":{}},"delete":{"operationId":"deleteLogo","responses":{}}},"/v1/app-configurations/{appId}/versions":{"get":{"operationId":"listVersions","parameters":[{"name":"appId","in":"path","required":true},{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}":{"get":{"operationId":"getVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}},"delete":{"operationId":"deleteVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}},"patch":{"operationId":"patchVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/PatchVersionRequest"},"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}/review":{"get":{"operationId":"getReview","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}},"post":{"operationId":"createReview","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/CreateReviewRequest"},"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}/components":{"post":{"operationId":"createComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/UpsertComponentRequest"},"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}/components/{componentId}":{"patch":{"operationId":"patchComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true},{"name":"componentId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/UpsertComponentRequest"},"responses":{}},"delete":{"operationId":"deleteComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true},{"name":"componentId","in":"path","required":true}],"responses":{}}},"/v1/app-configurations/{appId}/versions/{sourceVersion}/clone-to/{targetVersion}":{"post":{"operationId":"cloneVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"sourceVersion","in":"path","required":true},{"name":"targetVersion","in":"path","required":true}],"responses":{}}},"/v1/app":{"get":{"operationId":"listInstallations","parameters":[{"name":"componentType","in":"query"},{"name":"enabled","in":"query"},{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}}},"/v1/app/{appId}":{"get":{"operationId":"getInstallation","parameters":[{"name":"appId","in":"path","required":true}],"responses":{}},"post":{"operationId":"install","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/InstallRequest"},"responses":{}},"patch":{"operationId":"patchInstallation","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/InstallRequest"},"responses":{}},"delete":{"operationId":"uninstall","parameters":[{"name":"appId","in":"path","required":true}],"responses":{}}},"/v1/app/{appId}/promote-to/{version}":{"post":{"operationId":"promoteVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}}},"/v1/app-events":{"post":{"operationId":"ingestEvent","requestBody":{"required":true,"content":{"application/json":{}}},"responses":{}}}},"components":{"requestBodies":{"CreateReviewRequest":{"required":true,"content":{"application/json":{}}},"CreateLogoPresignedRequest":{"required":true,"content":{"application/json":{}}},"CreateBundlePresignedRequest":{"required":true,"content":{"application/json":{}}},"PatchConfigMetadataRequest":{"required":true,"content":{"application/json":{}}},"PatchVersionRequest":{"required":true,"content":{"application/json":{}}},"UpsertComponentRequest":{"required":true,"content":{"application/json":{}}},"CreateConfigRequest":{"required":true,"content":{"application/json":{}}},"InstallRequest":{"content":{"application/json":{}}}}}}')}},r={},t=function t(n){var o=r[n];if(void 0!==o)return o.exports;var p=r[n]={exports:{}};return e[n].call(p.exports,p,p.exports,t),p.exports}(390),n=exports;for(var o in t)n[o]=t[o];t.__esModule&&Object.defineProperty(n,"__esModule",{value:!0})})();
@@ -252,6 +252,43 @@
252
252
  "responses": {}
253
253
  }
254
254
  },
255
+ "/v1/app-configurations/{appId}/versions/{version}/review": {
256
+ "get": {
257
+ "operationId": "getReview",
258
+ "parameters": [
259
+ {
260
+ "name": "appId",
261
+ "in": "path",
262
+ "required": true
263
+ },
264
+ {
265
+ "name": "version",
266
+ "in": "path",
267
+ "required": true
268
+ }
269
+ ],
270
+ "responses": {}
271
+ },
272
+ "post": {
273
+ "operationId": "createReview",
274
+ "parameters": [
275
+ {
276
+ "name": "appId",
277
+ "in": "path",
278
+ "required": true
279
+ },
280
+ {
281
+ "name": "version",
282
+ "in": "path",
283
+ "required": true
284
+ }
285
+ ],
286
+ "requestBody": {
287
+ "$ref": "#/components/requestBodies/CreateReviewRequest"
288
+ },
289
+ "responses": {}
290
+ }
291
+ },
255
292
  "/v1/app-configurations/{appId}/versions/{version}/components": {
256
293
  "post": {
257
294
  "operationId": "createComponent",
@@ -452,6 +489,12 @@
452
489
  },
453
490
  "components": {
454
491
  "requestBodies": {
492
+ "CreateReviewRequest": {
493
+ "required": true,
494
+ "content": {
495
+ "application/json": {}
496
+ }
497
+ },
455
498
  "CreateLogoPresignedRequest": {
456
499
  "required": true,
457
500
  "content": {
package/dist/openapi.d.ts CHANGED
@@ -46,6 +46,20 @@ declare namespace Components {
46
46
  */
47
47
  mime_type: "image/png" | "image/jpeg" | "image/jpg";
48
48
  }
49
+ export interface CreateReviewRequest {
50
+ /**
51
+ * Email of the technical contact
52
+ */
53
+ technical_contact: string;
54
+ /**
55
+ * Email of the marketing contact
56
+ */
57
+ marketing_contact: string;
58
+ /**
59
+ * URL to a demo of the app
60
+ */
61
+ demo_url?: string;
62
+ }
49
63
  export interface InstallRequest {
50
64
  /**
51
65
  * Version of the app to update to
@@ -1307,6 +1321,36 @@ declare namespace Components {
1307
1321
  type?: "raw";
1308
1322
  events?: AppEventData[];
1309
1323
  }
1324
+ export interface Review {
1325
+ /**
1326
+ * Version of the app that is under review
1327
+ */
1328
+ version?: string;
1329
+ /**
1330
+ * Status of the review
1331
+ */
1332
+ review_status?: "approved" | "rejected" | "pending";
1333
+ /**
1334
+ * Timestamp of the review
1335
+ */
1336
+ requested_at?: string;
1337
+ /**
1338
+ * User ID of the reviewer
1339
+ */
1340
+ requested_by?: string;
1341
+ /**
1342
+ * Email of the technical contact
1343
+ */
1344
+ technical_contact?: string;
1345
+ /**
1346
+ * Email of the marketing contact
1347
+ */
1348
+ marketing_contact?: string;
1349
+ /**
1350
+ * URL of the demo
1351
+ */
1352
+ demo_url?: string;
1353
+ }
1310
1354
  export interface Role {
1311
1355
  /**
1312
1356
  * Name of the role
@@ -1445,6 +1489,26 @@ declare namespace Paths {
1445
1489
  }
1446
1490
  }
1447
1491
  }
1492
+ namespace CreateReview {
1493
+ namespace Parameters {
1494
+ export type AppId = string;
1495
+ export type Version = string;
1496
+ }
1497
+ export interface PathParameters {
1498
+ appId: Parameters.AppId;
1499
+ version: Parameters.Version;
1500
+ }
1501
+ export type RequestBody = Components.RequestBodies.CreateReviewRequest;
1502
+ namespace Responses {
1503
+ export interface $200 {
1504
+ review?: Components.Schemas.Review;
1505
+ }
1506
+ export interface $400 {
1507
+ }
1508
+ export interface $404 {
1509
+ }
1510
+ }
1511
+ }
1448
1512
  namespace CreateZipUploadUrl {
1449
1513
  namespace Parameters {
1450
1514
  export type AppId = string;
@@ -1595,6 +1659,23 @@ declare namespace Paths {
1595
1659
  }
1596
1660
  }
1597
1661
  }
1662
+ namespace GetReview {
1663
+ namespace Parameters {
1664
+ export type AppId = string;
1665
+ export type Version = string;
1666
+ }
1667
+ export interface PathParameters {
1668
+ appId: Parameters.AppId;
1669
+ version: Parameters.Version;
1670
+ }
1671
+ namespace Responses {
1672
+ export interface $200 {
1673
+ review?: Components.Schemas.Review;
1674
+ }
1675
+ export interface $404 {
1676
+ }
1677
+ }
1678
+ }
1598
1679
  namespace GetVersion {
1599
1680
  namespace Parameters {
1600
1681
  export type AppId = string;
@@ -2013,6 +2094,26 @@ export interface OperationMethods {
2013
2094
  data?: any,
2014
2095
  config?: AxiosRequestConfig
2015
2096
  ): OperationResponse<Paths.DeleteVersion.Responses.$204>
2097
+ /**
2098
+ * getReview - getReview
2099
+ *
2100
+ * Retrieve the review status of a specific app version
2101
+ */
2102
+ 'getReview'(
2103
+ parameters?: Parameters<Paths.GetReview.PathParameters> | null,
2104
+ data?: any,
2105
+ config?: AxiosRequestConfig
2106
+ ): OperationResponse<Paths.GetReview.Responses.$200>
2107
+ /**
2108
+ * createReview - createReview
2109
+ *
2110
+ * Submit an app version for review to make it public
2111
+ */
2112
+ 'createReview'(
2113
+ parameters?: Parameters<Paths.CreateReview.PathParameters> | null,
2114
+ data?: Paths.CreateReview.RequestBody,
2115
+ config?: AxiosRequestConfig
2116
+ ): OperationResponse<Paths.CreateReview.Responses.$200>
2016
2117
  /**
2017
2118
  * createComponent - createComponent
2018
2119
  *
@@ -2307,6 +2408,28 @@ export interface PathsDictionary {
2307
2408
  config?: AxiosRequestConfig
2308
2409
  ): OperationResponse<Paths.PatchVersion.Responses.$204>
2309
2410
  }
2411
+ ['/v1/app-configurations/{appId}/versions/{version}/review']: {
2412
+ /**
2413
+ * getReview - getReview
2414
+ *
2415
+ * Retrieve the review status of a specific app version
2416
+ */
2417
+ 'get'(
2418
+ parameters?: Parameters<Paths.GetReview.PathParameters> | null,
2419
+ data?: any,
2420
+ config?: AxiosRequestConfig
2421
+ ): OperationResponse<Paths.GetReview.Responses.$200>
2422
+ /**
2423
+ * createReview - createReview
2424
+ *
2425
+ * Submit an app version for review to make it public
2426
+ */
2427
+ 'post'(
2428
+ parameters?: Parameters<Paths.CreateReview.PathParameters> | null,
2429
+ data?: Paths.CreateReview.RequestBody,
2430
+ config?: AxiosRequestConfig
2431
+ ): OperationResponse<Paths.CreateReview.Responses.$200>
2432
+ }
2310
2433
  ['/v1/app-configurations/{appId}/versions/{version}/components']: {
2311
2434
  /**
2312
2435
  * createComponent - createComponent
@@ -2479,6 +2602,7 @@ export type PortalExtensionConfig = Components.Schemas.PortalExtensionConfig;
2479
2602
  export type Pricing = Components.Schemas.Pricing;
2480
2603
  export type PublicConfiguration = Components.Schemas.PublicConfiguration;
2481
2604
  export type RawEvents = Components.Schemas.RawEvents;
2605
+ export type Review = Components.Schemas.Review;
2482
2606
  export type Role = Components.Schemas.Role;
2483
2607
  export type S3Reference = Components.Schemas.S3Reference;
2484
2608
  export type TextArg = Components.Schemas.TextArg;
package/dist/openapi.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "info": {
4
4
  "title": "App API",
5
5
  "description": "API for managing app publishing and installed app.",
6
- "version": "1.0.0"
6
+ "version": "1.0.1"
7
7
  },
8
8
  "tags": [
9
9
  {
@@ -790,6 +790,110 @@
790
790
  }
791
791
  }
792
792
  },
793
+ "/v1/app-configurations/{appId}/versions/{version}/review": {
794
+ "get": {
795
+ "summary": "getReview",
796
+ "description": "Retrieve the review status of a specific app version",
797
+ "operationId": "getReview",
798
+ "tags": [
799
+ "App Configuration"
800
+ ],
801
+ "parameters": [
802
+ {
803
+ "name": "appId",
804
+ "in": "path",
805
+ "required": true,
806
+ "schema": {
807
+ "type": "string"
808
+ },
809
+ "description": "ID of the app configuration"
810
+ },
811
+ {
812
+ "name": "version",
813
+ "in": "path",
814
+ "required": true,
815
+ "schema": {
816
+ "type": "string"
817
+ },
818
+ "description": "Version to retrieve the review status for"
819
+ }
820
+ ],
821
+ "responses": {
822
+ "200": {
823
+ "description": "Review status retrieved successfully",
824
+ "content": {
825
+ "application/json": {
826
+ "schema": {
827
+ "type": "object",
828
+ "properties": {
829
+ "review": {
830
+ "$ref": "#/components/schemas/Review"
831
+ }
832
+ }
833
+ }
834
+ }
835
+ }
836
+ },
837
+ "404": {
838
+ "description": "Version not found or no review exists for this version"
839
+ }
840
+ }
841
+ },
842
+ "post": {
843
+ "summary": "createReview",
844
+ "description": "Submit an app version for review to make it public",
845
+ "operationId": "createReview",
846
+ "tags": [
847
+ "App Configuration"
848
+ ],
849
+ "parameters": [
850
+ {
851
+ "name": "appId",
852
+ "in": "path",
853
+ "required": true,
854
+ "schema": {
855
+ "type": "string"
856
+ },
857
+ "description": "ID of the app configuration"
858
+ },
859
+ {
860
+ "name": "version",
861
+ "in": "path",
862
+ "required": true,
863
+ "schema": {
864
+ "type": "string"
865
+ },
866
+ "description": "Version to submit for review"
867
+ }
868
+ ],
869
+ "requestBody": {
870
+ "$ref": "#/components/requestBodies/CreateReviewRequest"
871
+ },
872
+ "responses": {
873
+ "200": {
874
+ "description": "Version submitted for review successfully",
875
+ "content": {
876
+ "application/json": {
877
+ "schema": {
878
+ "type": "object",
879
+ "properties": {
880
+ "review": {
881
+ "$ref": "#/components/schemas/Review"
882
+ }
883
+ }
884
+ }
885
+ }
886
+ }
887
+ },
888
+ "400": {
889
+ "description": "Invalid version format"
890
+ },
891
+ "404": {
892
+ "description": "Version not found"
893
+ }
894
+ }
895
+ }
896
+ },
793
897
  "/v1/app-configurations/{appId}/versions/{version}/components": {
794
898
  "post": {
795
899
  "summary": "createComponent",
@@ -1307,6 +1411,34 @@
1307
1411
  },
1308
1412
  "components": {
1309
1413
  "requestBodies": {
1414
+ "CreateReviewRequest": {
1415
+ "required": true,
1416
+ "content": {
1417
+ "application/json": {
1418
+ "schema": {
1419
+ "type": "object",
1420
+ "required": [
1421
+ "technical_contact",
1422
+ "marketing_contact"
1423
+ ],
1424
+ "properties": {
1425
+ "technical_contact": {
1426
+ "type": "string",
1427
+ "description": "Email of the technical contact"
1428
+ },
1429
+ "marketing_contact": {
1430
+ "type": "string",
1431
+ "description": "Email of the marketing contact"
1432
+ },
1433
+ "demo_url": {
1434
+ "type": "string",
1435
+ "description": "URL to a demo of the app"
1436
+ }
1437
+ }
1438
+ }
1439
+ }
1440
+ }
1441
+ },
1310
1442
  "CreateLogoPresignedRequest": {
1311
1443
  "required": true,
1312
1444
  "content": {
@@ -2364,6 +2496,47 @@
2364
2496
  }
2365
2497
  }
2366
2498
  },
2499
+ "Review": {
2500
+ "type": "object",
2501
+ "properties": {
2502
+ "version": {
2503
+ "type": "string",
2504
+ "description": "Version of the app that is under review",
2505
+ "readOnly": true
2506
+ },
2507
+ "review_status": {
2508
+ "type": "string",
2509
+ "enum": [
2510
+ "approved",
2511
+ "rejected",
2512
+ "pending"
2513
+ ],
2514
+ "description": "Status of the review"
2515
+ },
2516
+ "requested_at": {
2517
+ "type": "string",
2518
+ "description": "Timestamp of the review",
2519
+ "readOnly": true
2520
+ },
2521
+ "requested_by": {
2522
+ "type": "string",
2523
+ "description": "User ID of the reviewer",
2524
+ "readOnly": true
2525
+ },
2526
+ "technical_contact": {
2527
+ "type": "string",
2528
+ "description": "Email of the technical contact"
2529
+ },
2530
+ "marketing_contact": {
2531
+ "type": "string",
2532
+ "description": "Email of the marketing contact"
2533
+ },
2534
+ "demo_url": {
2535
+ "type": "string",
2536
+ "description": "URL of the demo"
2537
+ }
2538
+ }
2539
+ },
2367
2540
  "ConfigurationMetadata": {
2368
2541
  "description": "Basic metadata about your app configuration which does not get versioned",
2369
2542
  "type": "object",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/app-client",
3
- "version": "0.9.0",
3
+ "version": "0.9.1",
4
4
  "description": "JavaScript client library for the epilot App API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -25,7 +25,7 @@
25
25
  "test": "jest",
26
26
  "typescript": "tsc",
27
27
  "bundle-definition": "webpack",
28
- "openapi": "node ../../scripts/update-openapi.js https://docs.api.epilot.io/app.yaml",
28
+ "openapi": "node ../../scripts/update-openapi.js ../../../backend/app-api/openapi.yml",
29
29
  "typegen": "openapi typegen src/openapi.json --client -b '/* eslint-disable */' > src/openapi.d.ts",
30
30
  "build": "tsc && npm run build:patch && npm run bundle-definition",
31
31
  "build:patch": "sed -i'' -e '/^__exportStar.*openapi.*$/d' dist/index.js",