generate rest model for ui100 (#724)

This commit is contained in:
Michael Quigley 2024-11-20 13:49:58 -05:00
parent 1f6cfe46db
commit eed5a2e7f3
No known key found for this signature in database
GPG Key ID: 9B60314A9DD20A62
56 changed files with 8459 additions and 1 deletions

View File

@ -42,9 +42,12 @@ swagger generate server -P rest_model_zrok.Principal -f "$zrokSpec" -s rest_serv
echo "...generating zrok client"
swagger generate client -P rest_model_zrok.Principal -f "$zrokSpec" -c rest_client_zrok -t "$zrokDir" -m "rest_model_zrok"
echo "...generating web console js client"
echo "...generating api console js client"
openapi -s specs/zrok.yml -o ui/src/api -l js
echo "...generating ui100 api console ts client"
openapi-generator-cli generate -i specs/zrok.yml -o ui100/src/api -g typescript-fetch
echo "...generating agent console js client"
openapi-generator-cli generate -i agent/agentGrpc/agent.swagger.json -o agent/agentUi/src/api -g typescript-fetch

3186
ui100/package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,23 @@
# OpenAPI Generator Ignore
# Generated by openapi-generator https://github.com/openapitools/openapi-generator
# Use this file to prevent files from being overwritten by the generator.
# The patterns follow closely to .gitignore or .dockerignore.
# As an example, the C# client generator defines ApiClient.cs.
# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line:
#ApiClient.cs
# You can match any string of characters against a directory, file or extension with a single asterisk (*):
#foo/*/qux
# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux
# You can recursively match patterns against a directory, file or extension with a double asterisk (**):
#foo/**/qux
# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux
# You can also negate patterns with an exclamation (!).
# For example, you can ignore all files in a docs folder with the file extension .md:
#docs/*.md
# Then explicitly reverse the ignore rule for a single file:
#!docs/README.md

View File

@ -0,0 +1,51 @@
apis/AccountApi.ts
apis/AdminApi.ts
apis/EnvironmentApi.ts
apis/MetadataApi.ts
apis/ShareApi.ts
apis/index.ts
index.ts
models/AccessRequest.ts
models/AccessResponse.ts
models/AuthUser.ts
models/ChangePasswordRequest.ts
models/CreateAccountRequest.ts
models/CreateFrontendRequest.ts
models/CreateFrontendResponse.ts
models/CreateIdentity201Response.ts
models/CreateIdentityRequest.ts
models/DeleteFrontendRequest.ts
models/DisableRequest.ts
models/EnableRequest.ts
models/EnableResponse.ts
models/Environment.ts
models/EnvironmentAndResources.ts
models/Frontend.ts
models/GrantsRequest.ts
models/InviteRequest.ts
models/InviteTokenGenerateRequest.ts
models/LoginRequest.ts
models/Metrics.ts
models/MetricsSample.ts
models/ModelConfiguration.ts
models/Overview.ts
models/PasswordRequirements.ts
models/Principal.ts
models/PublicFrontend.ts
models/RegenerateToken200Response.ts
models/RegenerateTokenRequest.ts
models/RegisterRequest.ts
models/RegisterResponse.ts
models/ResetPasswordRequest.ts
models/Share.ts
models/ShareRequest.ts
models/ShareResponse.ts
models/SparkDataSample.ts
models/UnaccessRequest.ts
models/UnshareRequest.ts
models/UpdateFrontendRequest.ts
models/UpdateShareRequest.ts
models/VerifyRequest.ts
models/VerifyResponse.ts
models/index.ts
runtime.ts

View File

@ -0,0 +1 @@
7.7.0

View File

@ -0,0 +1,313 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import * as runtime from '../runtime';
import type {
ChangePasswordRequest,
InviteRequest,
LoginRequest,
RegenerateToken200Response,
RegenerateTokenRequest,
RegisterRequest,
RegisterResponse,
ResetPasswordRequest,
VerifyRequest,
VerifyResponse,
} from '../models/index';
import {
ChangePasswordRequestFromJSON,
ChangePasswordRequestToJSON,
InviteRequestFromJSON,
InviteRequestToJSON,
LoginRequestFromJSON,
LoginRequestToJSON,
RegenerateToken200ResponseFromJSON,
RegenerateToken200ResponseToJSON,
RegenerateTokenRequestFromJSON,
RegenerateTokenRequestToJSON,
RegisterRequestFromJSON,
RegisterRequestToJSON,
RegisterResponseFromJSON,
RegisterResponseToJSON,
ResetPasswordRequestFromJSON,
ResetPasswordRequestToJSON,
VerifyRequestFromJSON,
VerifyRequestToJSON,
VerifyResponseFromJSON,
VerifyResponseToJSON,
} from '../models/index';
export interface ChangePasswordOperationRequest {
body?: ChangePasswordRequest;
}
export interface InviteOperationRequest {
body?: InviteRequest;
}
export interface LoginOperationRequest {
body?: LoginRequest;
}
export interface RegenerateTokenOperationRequest {
body?: RegenerateTokenRequest;
}
export interface RegisterOperationRequest {
body?: RegisterRequest;
}
export interface ResetPasswordOperationRequest {
body?: ResetPasswordRequest;
}
export interface ResetPasswordRequestRequest {
body?: RegenerateTokenRequest;
}
export interface VerifyOperationRequest {
body?: VerifyRequest;
}
/**
*
*/
export class AccountApi extends runtime.BaseAPI {
/**
*/
async changePasswordRaw(requestParameters: ChangePasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/changePassword`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ChangePasswordRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async changePassword(requestParameters: ChangePasswordOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.changePasswordRaw(requestParameters, initOverrides);
}
/**
*/
async inviteRaw(requestParameters: InviteOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
const response = await this.request({
path: `/invite`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: InviteRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async invite(requestParameters: InviteOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.inviteRaw(requestParameters, initOverrides);
}
/**
*/
async loginRaw(requestParameters: LoginOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
const response = await this.request({
path: `/login`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: LoginRequestToJSON(requestParameters['body']),
}, initOverrides);
if (this.isJsonMime(response.headers.get('content-type'))) {
return new runtime.JSONApiResponse<string>(response);
} else {
return new runtime.TextApiResponse(response) as any;
}
}
/**
*/
async login(requestParameters: LoginOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
const response = await this.loginRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async regenerateTokenRaw(requestParameters: RegenerateTokenOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RegenerateToken200Response>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/regenerateToken`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: RegenerateTokenRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => RegenerateToken200ResponseFromJSON(jsonValue));
}
/**
*/
async regenerateToken(requestParameters: RegenerateTokenOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RegenerateToken200Response> {
const response = await this.regenerateTokenRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async registerRaw(requestParameters: RegisterOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RegisterResponse>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
const response = await this.request({
path: `/register`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: RegisterRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => RegisterResponseFromJSON(jsonValue));
}
/**
*/
async register(requestParameters: RegisterOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RegisterResponse> {
const response = await this.registerRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async resetPasswordRaw(requestParameters: ResetPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
const response = await this.request({
path: `/resetPassword`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ResetPasswordRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async resetPassword(requestParameters: ResetPasswordOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.resetPasswordRaw(requestParameters, initOverrides);
}
/**
*/
async resetPasswordRequestRaw(requestParameters: ResetPasswordRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
const response = await this.request({
path: `/resetPasswordRequest`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: RegenerateTokenRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async resetPasswordRequest(requestParameters: ResetPasswordRequestRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.resetPasswordRequestRaw(requestParameters, initOverrides);
}
/**
*/
async verifyRaw(requestParameters: VerifyOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<VerifyResponse>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
const response = await this.request({
path: `/verify`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: VerifyRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => VerifyResponseFromJSON(jsonValue));
}
/**
*/
async verify(requestParameters: VerifyOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<VerifyResponse> {
const response = await this.verifyRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,329 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import * as runtime from '../runtime';
import type {
CreateAccountRequest,
CreateFrontendRequest,
CreateFrontendResponse,
CreateIdentity201Response,
CreateIdentityRequest,
DeleteFrontendRequest,
GrantsRequest,
InviteTokenGenerateRequest,
PublicFrontend,
RegenerateToken200Response,
UpdateFrontendRequest,
} from '../models/index';
import {
CreateAccountRequestFromJSON,
CreateAccountRequestToJSON,
CreateFrontendRequestFromJSON,
CreateFrontendRequestToJSON,
CreateFrontendResponseFromJSON,
CreateFrontendResponseToJSON,
CreateIdentity201ResponseFromJSON,
CreateIdentity201ResponseToJSON,
CreateIdentityRequestFromJSON,
CreateIdentityRequestToJSON,
DeleteFrontendRequestFromJSON,
DeleteFrontendRequestToJSON,
GrantsRequestFromJSON,
GrantsRequestToJSON,
InviteTokenGenerateRequestFromJSON,
InviteTokenGenerateRequestToJSON,
PublicFrontendFromJSON,
PublicFrontendToJSON,
RegenerateToken200ResponseFromJSON,
RegenerateToken200ResponseToJSON,
UpdateFrontendRequestFromJSON,
UpdateFrontendRequestToJSON,
} from '../models/index';
export interface CreateAccountOperationRequest {
body?: CreateAccountRequest;
}
export interface CreateFrontendOperationRequest {
body?: CreateFrontendRequest;
}
export interface CreateIdentityOperationRequest {
body?: CreateIdentityRequest;
}
export interface DeleteFrontendOperationRequest {
body?: DeleteFrontendRequest;
}
export interface GrantsOperationRequest {
body?: GrantsRequest;
}
export interface InviteTokenGenerateOperationRequest {
body?: InviteTokenGenerateRequest;
}
export interface UpdateFrontendOperationRequest {
body?: UpdateFrontendRequest;
}
/**
*
*/
export class AdminApi extends runtime.BaseAPI {
/**
*/
async createAccountRaw(requestParameters: CreateAccountOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RegenerateToken200Response>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/account`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: CreateAccountRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => RegenerateToken200ResponseFromJSON(jsonValue));
}
/**
*/
async createAccount(requestParameters: CreateAccountOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RegenerateToken200Response> {
const response = await this.createAccountRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async createFrontendRaw(requestParameters: CreateFrontendOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CreateFrontendResponse>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/frontend`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: CreateFrontendRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => CreateFrontendResponseFromJSON(jsonValue));
}
/**
*/
async createFrontend(requestParameters: CreateFrontendOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CreateFrontendResponse> {
const response = await this.createFrontendRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async createIdentityRaw(requestParameters: CreateIdentityOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CreateIdentity201Response>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/identity`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: CreateIdentityRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => CreateIdentity201ResponseFromJSON(jsonValue));
}
/**
*/
async createIdentity(requestParameters: CreateIdentityOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CreateIdentity201Response> {
const response = await this.createIdentityRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async deleteFrontendRaw(requestParameters: DeleteFrontendOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/frontend`,
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
body: DeleteFrontendRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async deleteFrontend(requestParameters: DeleteFrontendOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.deleteFrontendRaw(requestParameters, initOverrides);
}
/**
*/
async grantsRaw(requestParameters: GrantsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/grants`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GrantsRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async grants(requestParameters: GrantsOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.grantsRaw(requestParameters, initOverrides);
}
/**
*/
async inviteTokenGenerateRaw(requestParameters: InviteTokenGenerateOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/invite/token/generate`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: InviteTokenGenerateRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async inviteTokenGenerate(requestParameters: InviteTokenGenerateOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.inviteTokenGenerateRaw(requestParameters, initOverrides);
}
/**
*/
async listFrontendsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<PublicFrontend>>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/frontends`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PublicFrontendFromJSON));
}
/**
*/
async listFrontends(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<PublicFrontend>> {
const response = await this.listFrontendsRaw(initOverrides);
return await response.value();
}
/**
*/
async updateFrontendRaw(requestParameters: UpdateFrontendOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/frontend`,
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: UpdateFrontendRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async updateFrontend(requestParameters: UpdateFrontendOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateFrontendRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,105 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import * as runtime from '../runtime';
import type {
DisableRequest,
EnableRequest,
EnableResponse,
} from '../models/index';
import {
DisableRequestFromJSON,
DisableRequestToJSON,
EnableRequestFromJSON,
EnableRequestToJSON,
EnableResponseFromJSON,
EnableResponseToJSON,
} from '../models/index';
export interface DisableOperationRequest {
body?: DisableRequest;
}
export interface EnableOperationRequest {
body?: EnableRequest;
}
/**
*
*/
export class EnvironmentApi extends runtime.BaseAPI {
/**
*/
async disableRaw(requestParameters: DisableOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/disable`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: DisableRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async disable(requestParameters: DisableOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.disableRaw(requestParameters, initOverrides);
}
/**
*/
async enableRaw(requestParameters: EnableOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<EnableResponse>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/enable`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: EnableRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => EnableResponseFromJSON(jsonValue));
}
/**
*/
async enable(requestParameters: EnableOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<EnableResponse> {
const response = await this.enableRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,397 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import * as runtime from '../runtime';
import type {
Environment,
EnvironmentAndResources,
Frontend,
Metrics,
ModelConfiguration,
Overview,
Share,
} from '../models/index';
import {
EnvironmentFromJSON,
EnvironmentToJSON,
EnvironmentAndResourcesFromJSON,
EnvironmentAndResourcesToJSON,
FrontendFromJSON,
FrontendToJSON,
MetricsFromJSON,
MetricsToJSON,
ModelConfigurationFromJSON,
ModelConfigurationToJSON,
OverviewFromJSON,
OverviewToJSON,
ShareFromJSON,
ShareToJSON,
} from '../models/index';
export interface GetAccountMetricsRequest {
duration?: string;
}
export interface GetEnvironmentDetailRequest {
envZId: string;
}
export interface GetEnvironmentMetricsRequest {
envId: string;
duration?: string;
}
export interface GetFrontendDetailRequest {
feId: number;
}
export interface GetShareDetailRequest {
shrToken: string;
}
export interface GetShareMetricsRequest {
shrToken: string;
duration?: string;
}
/**
*
*/
export class MetadataApi extends runtime.BaseAPI {
/**
*/
async _configurationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ModelConfiguration>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/configuration`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ModelConfigurationFromJSON(jsonValue));
}
/**
*/
async _configuration(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ModelConfiguration> {
const response = await this._configurationRaw(initOverrides);
return await response.value();
}
/**
*/
async getAccountDetailRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<Environment>>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/detail/account`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(EnvironmentFromJSON));
}
/**
*/
async getAccountDetail(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<Environment>> {
const response = await this.getAccountDetailRaw(initOverrides);
return await response.value();
}
/**
*/
async getAccountMetricsRaw(requestParameters: GetAccountMetricsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Metrics>> {
const queryParameters: any = {};
if (requestParameters['duration'] != null) {
queryParameters['duration'] = requestParameters['duration'];
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/metrics/account`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => MetricsFromJSON(jsonValue));
}
/**
*/
async getAccountMetrics(requestParameters: GetAccountMetricsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Metrics> {
const response = await this.getAccountMetricsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async getEnvironmentDetailRaw(requestParameters: GetEnvironmentDetailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<EnvironmentAndResources>> {
if (requestParameters['envZId'] == null) {
throw new runtime.RequiredError(
'envZId',
'Required parameter "envZId" was null or undefined when calling getEnvironmentDetail().'
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/detail/environment/{envZId}`.replace(`{${"envZId"}}`, encodeURIComponent(String(requestParameters['envZId']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => EnvironmentAndResourcesFromJSON(jsonValue));
}
/**
*/
async getEnvironmentDetail(requestParameters: GetEnvironmentDetailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<EnvironmentAndResources> {
const response = await this.getEnvironmentDetailRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async getEnvironmentMetricsRaw(requestParameters: GetEnvironmentMetricsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Metrics>> {
if (requestParameters['envId'] == null) {
throw new runtime.RequiredError(
'envId',
'Required parameter "envId" was null or undefined when calling getEnvironmentMetrics().'
);
}
const queryParameters: any = {};
if (requestParameters['duration'] != null) {
queryParameters['duration'] = requestParameters['duration'];
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/metrics/environment/{envId}`.replace(`{${"envId"}}`, encodeURIComponent(String(requestParameters['envId']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => MetricsFromJSON(jsonValue));
}
/**
*/
async getEnvironmentMetrics(requestParameters: GetEnvironmentMetricsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Metrics> {
const response = await this.getEnvironmentMetricsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async getFrontendDetailRaw(requestParameters: GetFrontendDetailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Frontend>> {
if (requestParameters['feId'] == null) {
throw new runtime.RequiredError(
'feId',
'Required parameter "feId" was null or undefined when calling getFrontendDetail().'
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/detail/frontend/{feId}`.replace(`{${"feId"}}`, encodeURIComponent(String(requestParameters['feId']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => FrontendFromJSON(jsonValue));
}
/**
*/
async getFrontendDetail(requestParameters: GetFrontendDetailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Frontend> {
const response = await this.getFrontendDetailRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async getShareDetailRaw(requestParameters: GetShareDetailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Share>> {
if (requestParameters['shrToken'] == null) {
throw new runtime.RequiredError(
'shrToken',
'Required parameter "shrToken" was null or undefined when calling getShareDetail().'
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/detail/share/{shrToken}`.replace(`{${"shrToken"}}`, encodeURIComponent(String(requestParameters['shrToken']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ShareFromJSON(jsonValue));
}
/**
*/
async getShareDetail(requestParameters: GetShareDetailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Share> {
const response = await this.getShareDetailRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async getShareMetricsRaw(requestParameters: GetShareMetricsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Metrics>> {
if (requestParameters['shrToken'] == null) {
throw new runtime.RequiredError(
'shrToken',
'Required parameter "shrToken" was null or undefined when calling getShareMetrics().'
);
}
const queryParameters: any = {};
if (requestParameters['duration'] != null) {
queryParameters['duration'] = requestParameters['duration'];
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/metrics/share/{shrToken}`.replace(`{${"shrToken"}}`, encodeURIComponent(String(requestParameters['shrToken']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => MetricsFromJSON(jsonValue));
}
/**
*/
async getShareMetrics(requestParameters: GetShareMetricsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Metrics> {
const response = await this.getShareMetricsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async overviewRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Overview>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/overview`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => OverviewFromJSON(jsonValue));
}
/**
*/
async overview(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Overview> {
const response = await this.overviewRaw(initOverrides);
return await response.value();
}
/**
*/
async versionRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/version`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
if (this.isJsonMime(response.headers.get('content-type'))) {
return new runtime.JSONApiResponse<string>(response);
} else {
return new runtime.TextApiResponse(response) as any;
}
}
/**
*/
async version(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
const response = await this.versionRaw(initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,220 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import * as runtime from '../runtime';
import type {
AccessRequest,
AccessResponse,
ShareRequest,
ShareResponse,
UnaccessRequest,
UnshareRequest,
UpdateShareRequest,
} from '../models/index';
import {
AccessRequestFromJSON,
AccessRequestToJSON,
AccessResponseFromJSON,
AccessResponseToJSON,
ShareRequestFromJSON,
ShareRequestToJSON,
ShareResponseFromJSON,
ShareResponseToJSON,
UnaccessRequestFromJSON,
UnaccessRequestToJSON,
UnshareRequestFromJSON,
UnshareRequestToJSON,
UpdateShareRequestFromJSON,
UpdateShareRequestToJSON,
} from '../models/index';
export interface AccessOperationRequest {
body?: AccessRequest;
}
export interface ShareOperationRequest {
body?: ShareRequest;
}
export interface UnaccessOperationRequest {
body?: UnaccessRequest;
}
export interface UnshareOperationRequest {
body?: UnshareRequest;
}
export interface UpdateShareOperationRequest {
body?: UpdateShareRequest;
}
/**
*
*/
export class ShareApi extends runtime.BaseAPI {
/**
*/
async accessRaw(requestParameters: AccessOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<AccessResponse>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/access`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: AccessRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => AccessResponseFromJSON(jsonValue));
}
/**
*/
async access(requestParameters: AccessOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<AccessResponse> {
const response = await this.accessRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async shareRaw(requestParameters: ShareOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ShareResponse>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/share`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ShareRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ShareResponseFromJSON(jsonValue));
}
/**
*/
async share(requestParameters: ShareOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ShareResponse> {
const response = await this.shareRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async unaccessRaw(requestParameters: UnaccessOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/unaccess`,
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
body: UnaccessRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async unaccess(requestParameters: UnaccessOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.unaccessRaw(requestParameters, initOverrides);
}
/**
*/
async unshareRaw(requestParameters: UnshareOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/unshare`,
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
body: UnshareRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async unshare(requestParameters: UnshareOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.unshareRaw(requestParameters, initOverrides);
}
/**
*/
async updateShareRaw(requestParameters: UpdateShareOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/share`,
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: UpdateShareRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async updateShare(requestParameters: UpdateShareOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateShareRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,7 @@
/* tslint:disable */
/* eslint-disable */
export * from './AccountApi';
export * from './AdminApi';
export * from './EnvironmentApi';
export * from './MetadataApi';
export * from './ShareApi';

5
ui100/src/api/index.ts Normal file
View File

@ -0,0 +1,5 @@
/* tslint:disable */
/* eslint-disable */
export * from './runtime';
export * from './apis/index';
export * from './models/index';

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface AccessRequest
*/
export interface AccessRequest {
/**
*
* @type {string}
* @memberof AccessRequest
*/
envZId?: string;
/**
*
* @type {string}
* @memberof AccessRequest
*/
shrToken?: string;
}
/**
* Check if a given object implements the AccessRequest interface.
*/
export function instanceOfAccessRequest(value: object): value is AccessRequest {
return true;
}
export function AccessRequestFromJSON(json: any): AccessRequest {
return AccessRequestFromJSONTyped(json, false);
}
export function AccessRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AccessRequest {
if (json == null) {
return json;
}
return {
'envZId': json['envZId'] == null ? undefined : json['envZId'],
'shrToken': json['shrToken'] == null ? undefined : json['shrToken'],
};
}
export function AccessRequestToJSON(value?: AccessRequest | null): any {
if (value == null) {
return value;
}
return {
'envZId': value['envZId'],
'shrToken': value['shrToken'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface AccessResponse
*/
export interface AccessResponse {
/**
*
* @type {string}
* @memberof AccessResponse
*/
frontendToken?: string;
/**
*
* @type {string}
* @memberof AccessResponse
*/
backendMode?: string;
}
/**
* Check if a given object implements the AccessResponse interface.
*/
export function instanceOfAccessResponse(value: object): value is AccessResponse {
return true;
}
export function AccessResponseFromJSON(json: any): AccessResponse {
return AccessResponseFromJSONTyped(json, false);
}
export function AccessResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): AccessResponse {
if (json == null) {
return json;
}
return {
'frontendToken': json['frontendToken'] == null ? undefined : json['frontendToken'],
'backendMode': json['backendMode'] == null ? undefined : json['backendMode'],
};
}
export function AccessResponseToJSON(value?: AccessResponse | null): any {
if (value == null) {
return value;
}
return {
'frontendToken': value['frontendToken'],
'backendMode': value['backendMode'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface AuthUser
*/
export interface AuthUser {
/**
*
* @type {string}
* @memberof AuthUser
*/
username?: string;
/**
*
* @type {string}
* @memberof AuthUser
*/
password?: string;
}
/**
* Check if a given object implements the AuthUser interface.
*/
export function instanceOfAuthUser(value: object): value is AuthUser {
return true;
}
export function AuthUserFromJSON(json: any): AuthUser {
return AuthUserFromJSONTyped(json, false);
}
export function AuthUserFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthUser {
if (json == null) {
return json;
}
return {
'username': json['username'] == null ? undefined : json['username'],
'password': json['password'] == null ? undefined : json['password'],
};
}
export function AuthUserToJSON(value?: AuthUser | null): any {
if (value == null) {
return value;
}
return {
'username': value['username'],
'password': value['password'],
};
}

View File

@ -0,0 +1,76 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface ChangePasswordRequest
*/
export interface ChangePasswordRequest {
/**
*
* @type {string}
* @memberof ChangePasswordRequest
*/
email?: string;
/**
*
* @type {string}
* @memberof ChangePasswordRequest
*/
oldPassword?: string;
/**
*
* @type {string}
* @memberof ChangePasswordRequest
*/
newPassword?: string;
}
/**
* Check if a given object implements the ChangePasswordRequest interface.
*/
export function instanceOfChangePasswordRequest(value: object): value is ChangePasswordRequest {
return true;
}
export function ChangePasswordRequestFromJSON(json: any): ChangePasswordRequest {
return ChangePasswordRequestFromJSONTyped(json, false);
}
export function ChangePasswordRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): ChangePasswordRequest {
if (json == null) {
return json;
}
return {
'email': json['email'] == null ? undefined : json['email'],
'oldPassword': json['oldPassword'] == null ? undefined : json['oldPassword'],
'newPassword': json['newPassword'] == null ? undefined : json['newPassword'],
};
}
export function ChangePasswordRequestToJSON(value?: ChangePasswordRequest | null): any {
if (value == null) {
return value;
}
return {
'email': value['email'],
'oldPassword': value['oldPassword'],
'newPassword': value['newPassword'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface CreateAccountRequest
*/
export interface CreateAccountRequest {
/**
*
* @type {string}
* @memberof CreateAccountRequest
*/
email?: string;
/**
*
* @type {string}
* @memberof CreateAccountRequest
*/
password?: string;
}
/**
* Check if a given object implements the CreateAccountRequest interface.
*/
export function instanceOfCreateAccountRequest(value: object): value is CreateAccountRequest {
return true;
}
export function CreateAccountRequestFromJSON(json: any): CreateAccountRequest {
return CreateAccountRequestFromJSONTyped(json, false);
}
export function CreateAccountRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateAccountRequest {
if (json == null) {
return json;
}
return {
'email': json['email'] == null ? undefined : json['email'],
'password': json['password'] == null ? undefined : json['password'],
};
}
export function CreateAccountRequestToJSON(value?: CreateAccountRequest | null): any {
if (value == null) {
return value;
}
return {
'email': value['email'],
'password': value['password'],
};
}

View File

@ -0,0 +1,95 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface CreateFrontendRequest
*/
export interface CreateFrontendRequest {
/**
*
* @type {string}
* @memberof CreateFrontendRequest
*/
zId?: string;
/**
*
* @type {string}
* @memberof CreateFrontendRequest
*/
urlTemplate?: string;
/**
*
* @type {string}
* @memberof CreateFrontendRequest
*/
publicName?: string;
/**
*
* @type {string}
* @memberof CreateFrontendRequest
*/
permissionMode?: CreateFrontendRequestPermissionModeEnum;
}
/**
* @export
*/
export const CreateFrontendRequestPermissionModeEnum = {
Open: 'open',
Closed: 'closed'
} as const;
export type CreateFrontendRequestPermissionModeEnum = typeof CreateFrontendRequestPermissionModeEnum[keyof typeof CreateFrontendRequestPermissionModeEnum];
/**
* Check if a given object implements the CreateFrontendRequest interface.
*/
export function instanceOfCreateFrontendRequest(value: object): value is CreateFrontendRequest {
return true;
}
export function CreateFrontendRequestFromJSON(json: any): CreateFrontendRequest {
return CreateFrontendRequestFromJSONTyped(json, false);
}
export function CreateFrontendRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateFrontendRequest {
if (json == null) {
return json;
}
return {
'zId': json['zId'] == null ? undefined : json['zId'],
'urlTemplate': json['url_template'] == null ? undefined : json['url_template'],
'publicName': json['public_name'] == null ? undefined : json['public_name'],
'permissionMode': json['permissionMode'] == null ? undefined : json['permissionMode'],
};
}
export function CreateFrontendRequestToJSON(value?: CreateFrontendRequest | null): any {
if (value == null) {
return value;
}
return {
'zId': value['zId'],
'url_template': value['urlTemplate'],
'public_name': value['publicName'],
'permissionMode': value['permissionMode'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface CreateFrontendResponse
*/
export interface CreateFrontendResponse {
/**
*
* @type {string}
* @memberof CreateFrontendResponse
*/
token?: string;
}
/**
* Check if a given object implements the CreateFrontendResponse interface.
*/
export function instanceOfCreateFrontendResponse(value: object): value is CreateFrontendResponse {
return true;
}
export function CreateFrontendResponseFromJSON(json: any): CreateFrontendResponse {
return CreateFrontendResponseFromJSONTyped(json, false);
}
export function CreateFrontendResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateFrontendResponse {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
};
}
export function CreateFrontendResponseToJSON(value?: CreateFrontendResponse | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface CreateIdentity201Response
*/
export interface CreateIdentity201Response {
/**
*
* @type {string}
* @memberof CreateIdentity201Response
*/
identity?: string;
/**
*
* @type {string}
* @memberof CreateIdentity201Response
*/
cfg?: string;
}
/**
* Check if a given object implements the CreateIdentity201Response interface.
*/
export function instanceOfCreateIdentity201Response(value: object): value is CreateIdentity201Response {
return true;
}
export function CreateIdentity201ResponseFromJSON(json: any): CreateIdentity201Response {
return CreateIdentity201ResponseFromJSONTyped(json, false);
}
export function CreateIdentity201ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateIdentity201Response {
if (json == null) {
return json;
}
return {
'identity': json['identity'] == null ? undefined : json['identity'],
'cfg': json['cfg'] == null ? undefined : json['cfg'],
};
}
export function CreateIdentity201ResponseToJSON(value?: CreateIdentity201Response | null): any {
if (value == null) {
return value;
}
return {
'identity': value['identity'],
'cfg': value['cfg'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface CreateIdentityRequest
*/
export interface CreateIdentityRequest {
/**
*
* @type {string}
* @memberof CreateIdentityRequest
*/
name?: string;
}
/**
* Check if a given object implements the CreateIdentityRequest interface.
*/
export function instanceOfCreateIdentityRequest(value: object): value is CreateIdentityRequest {
return true;
}
export function CreateIdentityRequestFromJSON(json: any): CreateIdentityRequest {
return CreateIdentityRequestFromJSONTyped(json, false);
}
export function CreateIdentityRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateIdentityRequest {
if (json == null) {
return json;
}
return {
'name': json['name'] == null ? undefined : json['name'],
};
}
export function CreateIdentityRequestToJSON(value?: CreateIdentityRequest | null): any {
if (value == null) {
return value;
}
return {
'name': value['name'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface DeleteFrontendRequest
*/
export interface DeleteFrontendRequest {
/**
*
* @type {string}
* @memberof DeleteFrontendRequest
*/
frontendToken?: string;
}
/**
* Check if a given object implements the DeleteFrontendRequest interface.
*/
export function instanceOfDeleteFrontendRequest(value: object): value is DeleteFrontendRequest {
return true;
}
export function DeleteFrontendRequestFromJSON(json: any): DeleteFrontendRequest {
return DeleteFrontendRequestFromJSONTyped(json, false);
}
export function DeleteFrontendRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): DeleteFrontendRequest {
if (json == null) {
return json;
}
return {
'frontendToken': json['frontendToken'] == null ? undefined : json['frontendToken'],
};
}
export function DeleteFrontendRequestToJSON(value?: DeleteFrontendRequest | null): any {
if (value == null) {
return value;
}
return {
'frontendToken': value['frontendToken'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface DisableRequest
*/
export interface DisableRequest {
/**
*
* @type {string}
* @memberof DisableRequest
*/
identity?: string;
}
/**
* Check if a given object implements the DisableRequest interface.
*/
export function instanceOfDisableRequest(value: object): value is DisableRequest {
return true;
}
export function DisableRequestFromJSON(json: any): DisableRequest {
return DisableRequestFromJSONTyped(json, false);
}
export function DisableRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): DisableRequest {
if (json == null) {
return json;
}
return {
'identity': json['identity'] == null ? undefined : json['identity'],
};
}
export function DisableRequestToJSON(value?: DisableRequest | null): any {
if (value == null) {
return value;
}
return {
'identity': value['identity'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface EnableRequest
*/
export interface EnableRequest {
/**
*
* @type {string}
* @memberof EnableRequest
*/
description?: string;
/**
*
* @type {string}
* @memberof EnableRequest
*/
host?: string;
}
/**
* Check if a given object implements the EnableRequest interface.
*/
export function instanceOfEnableRequest(value: object): value is EnableRequest {
return true;
}
export function EnableRequestFromJSON(json: any): EnableRequest {
return EnableRequestFromJSONTyped(json, false);
}
export function EnableRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): EnableRequest {
if (json == null) {
return json;
}
return {
'description': json['description'] == null ? undefined : json['description'],
'host': json['host'] == null ? undefined : json['host'],
};
}
export function EnableRequestToJSON(value?: EnableRequest | null): any {
if (value == null) {
return value;
}
return {
'description': value['description'],
'host': value['host'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface EnableResponse
*/
export interface EnableResponse {
/**
*
* @type {string}
* @memberof EnableResponse
*/
identity?: string;
/**
*
* @type {string}
* @memberof EnableResponse
*/
cfg?: string;
}
/**
* Check if a given object implements the EnableResponse interface.
*/
export function instanceOfEnableResponse(value: object): value is EnableResponse {
return true;
}
export function EnableResponseFromJSON(json: any): EnableResponse {
return EnableResponseFromJSONTyped(json, false);
}
export function EnableResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): EnableResponse {
if (json == null) {
return json;
}
return {
'identity': json['identity'] == null ? undefined : json['identity'],
'cfg': json['cfg'] == null ? undefined : json['cfg'],
};
}
export function EnableResponseToJSON(value?: EnableResponse | null): any {
if (value == null) {
return value;
}
return {
'identity': value['identity'],
'cfg': value['cfg'],
};
}

View File

@ -0,0 +1,123 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { SparkDataSample } from './SparkDataSample';
import {
SparkDataSampleFromJSON,
SparkDataSampleFromJSONTyped,
SparkDataSampleToJSON,
} from './SparkDataSample';
/**
*
* @export
* @interface Environment
*/
export interface Environment {
/**
*
* @type {string}
* @memberof Environment
*/
description?: string;
/**
*
* @type {string}
* @memberof Environment
*/
host?: string;
/**
*
* @type {string}
* @memberof Environment
*/
address?: string;
/**
*
* @type {string}
* @memberof Environment
*/
zId?: string;
/**
*
* @type {Array<SparkDataSample>}
* @memberof Environment
*/
activity?: Array<SparkDataSample>;
/**
*
* @type {boolean}
* @memberof Environment
*/
limited?: boolean;
/**
*
* @type {number}
* @memberof Environment
*/
createdAt?: number;
/**
*
* @type {number}
* @memberof Environment
*/
updatedAt?: number;
}
/**
* Check if a given object implements the Environment interface.
*/
export function instanceOfEnvironment(value: object): value is Environment {
return true;
}
export function EnvironmentFromJSON(json: any): Environment {
return EnvironmentFromJSONTyped(json, false);
}
export function EnvironmentFromJSONTyped(json: any, ignoreDiscriminator: boolean): Environment {
if (json == null) {
return json;
}
return {
'description': json['description'] == null ? undefined : json['description'],
'host': json['host'] == null ? undefined : json['host'],
'address': json['address'] == null ? undefined : json['address'],
'zId': json['zId'] == null ? undefined : json['zId'],
'activity': json['activity'] == null ? undefined : ((json['activity'] as Array<any>).map(SparkDataSampleFromJSON)),
'limited': json['limited'] == null ? undefined : json['limited'],
'createdAt': json['createdAt'] == null ? undefined : json['createdAt'],
'updatedAt': json['updatedAt'] == null ? undefined : json['updatedAt'],
};
}
export function EnvironmentToJSON(value?: Environment | null): any {
if (value == null) {
return value;
}
return {
'description': value['description'],
'host': value['host'],
'address': value['address'],
'zId': value['zId'],
'activity': value['activity'] == null ? undefined : ((value['activity'] as Array<any>).map(SparkDataSampleToJSON)),
'limited': value['limited'],
'createdAt': value['createdAt'],
'updatedAt': value['updatedAt'],
};
}

View File

@ -0,0 +1,95 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { Frontend } from './Frontend';
import {
FrontendFromJSON,
FrontendFromJSONTyped,
FrontendToJSON,
} from './Frontend';
import type { Environment } from './Environment';
import {
EnvironmentFromJSON,
EnvironmentFromJSONTyped,
EnvironmentToJSON,
} from './Environment';
import type { Share } from './Share';
import {
ShareFromJSON,
ShareFromJSONTyped,
ShareToJSON,
} from './Share';
/**
*
* @export
* @interface EnvironmentAndResources
*/
export interface EnvironmentAndResources {
/**
*
* @type {Environment}
* @memberof EnvironmentAndResources
*/
environment?: Environment;
/**
*
* @type {Array<Frontend>}
* @memberof EnvironmentAndResources
*/
frontends?: Array<Frontend>;
/**
*
* @type {Array<Share>}
* @memberof EnvironmentAndResources
*/
shares?: Array<Share>;
}
/**
* Check if a given object implements the EnvironmentAndResources interface.
*/
export function instanceOfEnvironmentAndResources(value: object): value is EnvironmentAndResources {
return true;
}
export function EnvironmentAndResourcesFromJSON(json: any): EnvironmentAndResources {
return EnvironmentAndResourcesFromJSONTyped(json, false);
}
export function EnvironmentAndResourcesFromJSONTyped(json: any, ignoreDiscriminator: boolean): EnvironmentAndResources {
if (json == null) {
return json;
}
return {
'environment': json['environment'] == null ? undefined : EnvironmentFromJSON(json['environment']),
'frontends': json['frontends'] == null ? undefined : ((json['frontends'] as Array<any>).map(FrontendFromJSON)),
'shares': json['shares'] == null ? undefined : ((json['shares'] as Array<any>).map(ShareFromJSON)),
};
}
export function EnvironmentAndResourcesToJSON(value?: EnvironmentAndResources | null): any {
if (value == null) {
return value;
}
return {
'environment': EnvironmentToJSON(value['environment']),
'frontends': value['frontends'] == null ? undefined : ((value['frontends'] as Array<any>).map(FrontendToJSON)),
'shares': value['shares'] == null ? undefined : ((value['shares'] as Array<any>).map(ShareToJSON)),
};
}

View File

@ -0,0 +1,100 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface Frontend
*/
export interface Frontend {
/**
*
* @type {number}
* @memberof Frontend
*/
id?: number;
/**
*
* @type {string}
* @memberof Frontend
*/
token?: string;
/**
*
* @type {string}
* @memberof Frontend
*/
shrToken?: string;
/**
*
* @type {string}
* @memberof Frontend
*/
zId?: string;
/**
*
* @type {number}
* @memberof Frontend
*/
createdAt?: number;
/**
*
* @type {number}
* @memberof Frontend
*/
updatedAt?: number;
}
/**
* Check if a given object implements the Frontend interface.
*/
export function instanceOfFrontend(value: object): value is Frontend {
return true;
}
export function FrontendFromJSON(json: any): Frontend {
return FrontendFromJSONTyped(json, false);
}
export function FrontendFromJSONTyped(json: any, ignoreDiscriminator: boolean): Frontend {
if (json == null) {
return json;
}
return {
'id': json['id'] == null ? undefined : json['id'],
'token': json['token'] == null ? undefined : json['token'],
'shrToken': json['shrToken'] == null ? undefined : json['shrToken'],
'zId': json['zId'] == null ? undefined : json['zId'],
'createdAt': json['createdAt'] == null ? undefined : json['createdAt'],
'updatedAt': json['updatedAt'] == null ? undefined : json['updatedAt'],
};
}
export function FrontendToJSON(value?: Frontend | null): any {
if (value == null) {
return value;
}
return {
'id': value['id'],
'token': value['token'],
'shrToken': value['shrToken'],
'zId': value['zId'],
'createdAt': value['createdAt'],
'updatedAt': value['updatedAt'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface GrantsRequest
*/
export interface GrantsRequest {
/**
*
* @type {string}
* @memberof GrantsRequest
*/
email?: string;
}
/**
* Check if a given object implements the GrantsRequest interface.
*/
export function instanceOfGrantsRequest(value: object): value is GrantsRequest {
return true;
}
export function GrantsRequestFromJSON(json: any): GrantsRequest {
return GrantsRequestFromJSONTyped(json, false);
}
export function GrantsRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): GrantsRequest {
if (json == null) {
return json;
}
return {
'email': json['email'] == null ? undefined : json['email'],
};
}
export function GrantsRequestToJSON(value?: GrantsRequest | null): any {
if (value == null) {
return value;
}
return {
'email': value['email'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface InviteRequest
*/
export interface InviteRequest {
/**
*
* @type {string}
* @memberof InviteRequest
*/
email?: string;
/**
*
* @type {string}
* @memberof InviteRequest
*/
token?: string;
}
/**
* Check if a given object implements the InviteRequest interface.
*/
export function instanceOfInviteRequest(value: object): value is InviteRequest {
return true;
}
export function InviteRequestFromJSON(json: any): InviteRequest {
return InviteRequestFromJSONTyped(json, false);
}
export function InviteRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): InviteRequest {
if (json == null) {
return json;
}
return {
'email': json['email'] == null ? undefined : json['email'],
'token': json['token'] == null ? undefined : json['token'],
};
}
export function InviteRequestToJSON(value?: InviteRequest | null): any {
if (value == null) {
return value;
}
return {
'email': value['email'],
'token': value['token'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface InviteTokenGenerateRequest
*/
export interface InviteTokenGenerateRequest {
/**
*
* @type {Array<string>}
* @memberof InviteTokenGenerateRequest
*/
tokens?: Array<string>;
}
/**
* Check if a given object implements the InviteTokenGenerateRequest interface.
*/
export function instanceOfInviteTokenGenerateRequest(value: object): value is InviteTokenGenerateRequest {
return true;
}
export function InviteTokenGenerateRequestFromJSON(json: any): InviteTokenGenerateRequest {
return InviteTokenGenerateRequestFromJSONTyped(json, false);
}
export function InviteTokenGenerateRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): InviteTokenGenerateRequest {
if (json == null) {
return json;
}
return {
'tokens': json['tokens'] == null ? undefined : json['tokens'],
};
}
export function InviteTokenGenerateRequestToJSON(value?: InviteTokenGenerateRequest | null): any {
if (value == null) {
return value;
}
return {
'tokens': value['tokens'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface LoginRequest
*/
export interface LoginRequest {
/**
*
* @type {string}
* @memberof LoginRequest
*/
email?: string;
/**
*
* @type {string}
* @memberof LoginRequest
*/
password?: string;
}
/**
* Check if a given object implements the LoginRequest interface.
*/
export function instanceOfLoginRequest(value: object): value is LoginRequest {
return true;
}
export function LoginRequestFromJSON(json: any): LoginRequest {
return LoginRequestFromJSONTyped(json, false);
}
export function LoginRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): LoginRequest {
if (json == null) {
return json;
}
return {
'email': json['email'] == null ? undefined : json['email'],
'password': json['password'] == null ? undefined : json['password'],
};
}
export function LoginRequestToJSON(value?: LoginRequest | null): any {
if (value == null) {
return value;
}
return {
'email': value['email'],
'password': value['password'],
};
}

View File

@ -0,0 +1,91 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { MetricsSample } from './MetricsSample';
import {
MetricsSampleFromJSON,
MetricsSampleFromJSONTyped,
MetricsSampleToJSON,
} from './MetricsSample';
/**
*
* @export
* @interface Metrics
*/
export interface Metrics {
/**
*
* @type {string}
* @memberof Metrics
*/
scope?: string;
/**
*
* @type {string}
* @memberof Metrics
*/
id?: string;
/**
*
* @type {number}
* @memberof Metrics
*/
period?: number;
/**
*
* @type {Array<MetricsSample>}
* @memberof Metrics
*/
samples?: Array<MetricsSample>;
}
/**
* Check if a given object implements the Metrics interface.
*/
export function instanceOfMetrics(value: object): value is Metrics {
return true;
}
export function MetricsFromJSON(json: any): Metrics {
return MetricsFromJSONTyped(json, false);
}
export function MetricsFromJSONTyped(json: any, ignoreDiscriminator: boolean): Metrics {
if (json == null) {
return json;
}
return {
'scope': json['scope'] == null ? undefined : json['scope'],
'id': json['id'] == null ? undefined : json['id'],
'period': json['period'] == null ? undefined : json['period'],
'samples': json['samples'] == null ? undefined : ((json['samples'] as Array<any>).map(MetricsSampleFromJSON)),
};
}
export function MetricsToJSON(value?: Metrics | null): any {
if (value == null) {
return value;
}
return {
'scope': value['scope'],
'id': value['id'],
'period': value['period'],
'samples': value['samples'] == null ? undefined : ((value['samples'] as Array<any>).map(MetricsSampleToJSON)),
};
}

View File

@ -0,0 +1,76 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface MetricsSample
*/
export interface MetricsSample {
/**
*
* @type {number}
* @memberof MetricsSample
*/
rx?: number;
/**
*
* @type {number}
* @memberof MetricsSample
*/
tx?: number;
/**
*
* @type {number}
* @memberof MetricsSample
*/
timestamp?: number;
}
/**
* Check if a given object implements the MetricsSample interface.
*/
export function instanceOfMetricsSample(value: object): value is MetricsSample {
return true;
}
export function MetricsSampleFromJSON(json: any): MetricsSample {
return MetricsSampleFromJSONTyped(json, false);
}
export function MetricsSampleFromJSONTyped(json: any, ignoreDiscriminator: boolean): MetricsSample {
if (json == null) {
return json;
}
return {
'rx': json['rx'] == null ? undefined : json['rx'],
'tx': json['tx'] == null ? undefined : json['tx'],
'timestamp': json['timestamp'] == null ? undefined : json['timestamp'],
};
}
export function MetricsSampleToJSON(value?: MetricsSample | null): any {
if (value == null) {
return value;
}
return {
'rx': value['rx'],
'tx': value['tx'],
'timestamp': value['timestamp'],
};
}

View File

@ -0,0 +1,107 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { PasswordRequirements } from './PasswordRequirements';
import {
PasswordRequirementsFromJSON,
PasswordRequirementsFromJSONTyped,
PasswordRequirementsToJSON,
} from './PasswordRequirements';
/**
*
* @export
* @interface ModelConfiguration
*/
export interface ModelConfiguration {
/**
*
* @type {string}
* @memberof ModelConfiguration
*/
version?: string;
/**
*
* @type {string}
* @memberof ModelConfiguration
*/
touLink?: string;
/**
*
* @type {boolean}
* @memberof ModelConfiguration
*/
invitesOpen?: boolean;
/**
*
* @type {boolean}
* @memberof ModelConfiguration
*/
requiresInviteToken?: boolean;
/**
*
* @type {string}
* @memberof ModelConfiguration
*/
inviteTokenContact?: string;
/**
*
* @type {PasswordRequirements}
* @memberof ModelConfiguration
*/
passwordRequirements?: PasswordRequirements;
}
/**
* Check if a given object implements the ModelConfiguration interface.
*/
export function instanceOfModelConfiguration(value: object): value is ModelConfiguration {
return true;
}
export function ModelConfigurationFromJSON(json: any): ModelConfiguration {
return ModelConfigurationFromJSONTyped(json, false);
}
export function ModelConfigurationFromJSONTyped(json: any, ignoreDiscriminator: boolean): ModelConfiguration {
if (json == null) {
return json;
}
return {
'version': json['version'] == null ? undefined : json['version'],
'touLink': json['touLink'] == null ? undefined : json['touLink'],
'invitesOpen': json['invitesOpen'] == null ? undefined : json['invitesOpen'],
'requiresInviteToken': json['requiresInviteToken'] == null ? undefined : json['requiresInviteToken'],
'inviteTokenContact': json['inviteTokenContact'] == null ? undefined : json['inviteTokenContact'],
'passwordRequirements': json['passwordRequirements'] == null ? undefined : PasswordRequirementsFromJSON(json['passwordRequirements']),
};
}
export function ModelConfigurationToJSON(value?: ModelConfiguration | null): any {
if (value == null) {
return value;
}
return {
'version': value['version'],
'touLink': value['touLink'],
'invitesOpen': value['invitesOpen'],
'requiresInviteToken': value['requiresInviteToken'],
'inviteTokenContact': value['inviteTokenContact'],
'passwordRequirements': PasswordRequirementsToJSON(value['passwordRequirements']),
};
}

View File

@ -0,0 +1,75 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { EnvironmentAndResources } from './EnvironmentAndResources';
import {
EnvironmentAndResourcesFromJSON,
EnvironmentAndResourcesFromJSONTyped,
EnvironmentAndResourcesToJSON,
} from './EnvironmentAndResources';
/**
*
* @export
* @interface Overview
*/
export interface Overview {
/**
*
* @type {boolean}
* @memberof Overview
*/
accountLimited?: boolean;
/**
*
* @type {Array<EnvironmentAndResources>}
* @memberof Overview
*/
environments?: Array<EnvironmentAndResources>;
}
/**
* Check if a given object implements the Overview interface.
*/
export function instanceOfOverview(value: object): value is Overview {
return true;
}
export function OverviewFromJSON(json: any): Overview {
return OverviewFromJSONTyped(json, false);
}
export function OverviewFromJSONTyped(json: any, ignoreDiscriminator: boolean): Overview {
if (json == null) {
return json;
}
return {
'accountLimited': json['accountLimited'] == null ? undefined : json['accountLimited'],
'environments': json['environments'] == null ? undefined : ((json['environments'] as Array<any>).map(EnvironmentAndResourcesFromJSON)),
};
}
export function OverviewToJSON(value?: Overview | null): any {
if (value == null) {
return value;
}
return {
'accountLimited': value['accountLimited'],
'environments': value['environments'] == null ? undefined : ((value['environments'] as Array<any>).map(EnvironmentAndResourcesToJSON)),
};
}

View File

@ -0,0 +1,92 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface PasswordRequirements
*/
export interface PasswordRequirements {
/**
*
* @type {number}
* @memberof PasswordRequirements
*/
length?: number;
/**
*
* @type {boolean}
* @memberof PasswordRequirements
*/
requireCapital?: boolean;
/**
*
* @type {boolean}
* @memberof PasswordRequirements
*/
requireNumeric?: boolean;
/**
*
* @type {boolean}
* @memberof PasswordRequirements
*/
requireSpecial?: boolean;
/**
*
* @type {string}
* @memberof PasswordRequirements
*/
validSpecialCharacters?: string;
}
/**
* Check if a given object implements the PasswordRequirements interface.
*/
export function instanceOfPasswordRequirements(value: object): value is PasswordRequirements {
return true;
}
export function PasswordRequirementsFromJSON(json: any): PasswordRequirements {
return PasswordRequirementsFromJSONTyped(json, false);
}
export function PasswordRequirementsFromJSONTyped(json: any, ignoreDiscriminator: boolean): PasswordRequirements {
if (json == null) {
return json;
}
return {
'length': json['length'] == null ? undefined : json['length'],
'requireCapital': json['requireCapital'] == null ? undefined : json['requireCapital'],
'requireNumeric': json['requireNumeric'] == null ? undefined : json['requireNumeric'],
'requireSpecial': json['requireSpecial'] == null ? undefined : json['requireSpecial'],
'validSpecialCharacters': json['validSpecialCharacters'] == null ? undefined : json['validSpecialCharacters'],
};
}
export function PasswordRequirementsToJSON(value?: PasswordRequirements | null): any {
if (value == null) {
return value;
}
return {
'length': value['length'],
'requireCapital': value['requireCapital'],
'requireNumeric': value['requireNumeric'],
'requireSpecial': value['requireSpecial'],
'validSpecialCharacters': value['validSpecialCharacters'],
};
}

View File

@ -0,0 +1,92 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface Principal
*/
export interface Principal {
/**
*
* @type {number}
* @memberof Principal
*/
id?: number;
/**
*
* @type {string}
* @memberof Principal
*/
email?: string;
/**
*
* @type {string}
* @memberof Principal
*/
token?: string;
/**
*
* @type {boolean}
* @memberof Principal
*/
limitless?: boolean;
/**
*
* @type {boolean}
* @memberof Principal
*/
admin?: boolean;
}
/**
* Check if a given object implements the Principal interface.
*/
export function instanceOfPrincipal(value: object): value is Principal {
return true;
}
export function PrincipalFromJSON(json: any): Principal {
return PrincipalFromJSONTyped(json, false);
}
export function PrincipalFromJSONTyped(json: any, ignoreDiscriminator: boolean): Principal {
if (json == null) {
return json;
}
return {
'id': json['id'] == null ? undefined : json['id'],
'email': json['email'] == null ? undefined : json['email'],
'token': json['token'] == null ? undefined : json['token'],
'limitless': json['limitless'] == null ? undefined : json['limitless'],
'admin': json['admin'] == null ? undefined : json['admin'],
};
}
export function PrincipalToJSON(value?: Principal | null): any {
if (value == null) {
return value;
}
return {
'id': value['id'],
'email': value['email'],
'token': value['token'],
'limitless': value['limitless'],
'admin': value['admin'],
};
}

View File

@ -0,0 +1,100 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface PublicFrontend
*/
export interface PublicFrontend {
/**
*
* @type {string}
* @memberof PublicFrontend
*/
token?: string;
/**
*
* @type {string}
* @memberof PublicFrontend
*/
zId?: string;
/**
*
* @type {string}
* @memberof PublicFrontend
*/
urlTemplate?: string;
/**
*
* @type {string}
* @memberof PublicFrontend
*/
publicName?: string;
/**
*
* @type {number}
* @memberof PublicFrontend
*/
createdAt?: number;
/**
*
* @type {number}
* @memberof PublicFrontend
*/
updatedAt?: number;
}
/**
* Check if a given object implements the PublicFrontend interface.
*/
export function instanceOfPublicFrontend(value: object): value is PublicFrontend {
return true;
}
export function PublicFrontendFromJSON(json: any): PublicFrontend {
return PublicFrontendFromJSONTyped(json, false);
}
export function PublicFrontendFromJSONTyped(json: any, ignoreDiscriminator: boolean): PublicFrontend {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
'zId': json['zId'] == null ? undefined : json['zId'],
'urlTemplate': json['urlTemplate'] == null ? undefined : json['urlTemplate'],
'publicName': json['publicName'] == null ? undefined : json['publicName'],
'createdAt': json['createdAt'] == null ? undefined : json['createdAt'],
'updatedAt': json['updatedAt'] == null ? undefined : json['updatedAt'],
};
}
export function PublicFrontendToJSON(value?: PublicFrontend | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
'zId': value['zId'],
'urlTemplate': value['urlTemplate'],
'publicName': value['publicName'],
'createdAt': value['createdAt'],
'updatedAt': value['updatedAt'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface RegenerateToken200Response
*/
export interface RegenerateToken200Response {
/**
*
* @type {string}
* @memberof RegenerateToken200Response
*/
token?: string;
}
/**
* Check if a given object implements the RegenerateToken200Response interface.
*/
export function instanceOfRegenerateToken200Response(value: object): value is RegenerateToken200Response {
return true;
}
export function RegenerateToken200ResponseFromJSON(json: any): RegenerateToken200Response {
return RegenerateToken200ResponseFromJSONTyped(json, false);
}
export function RegenerateToken200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): RegenerateToken200Response {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
};
}
export function RegenerateToken200ResponseToJSON(value?: RegenerateToken200Response | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface RegenerateTokenRequest
*/
export interface RegenerateTokenRequest {
/**
*
* @type {string}
* @memberof RegenerateTokenRequest
*/
emailAddress?: string;
}
/**
* Check if a given object implements the RegenerateTokenRequest interface.
*/
export function instanceOfRegenerateTokenRequest(value: object): value is RegenerateTokenRequest {
return true;
}
export function RegenerateTokenRequestFromJSON(json: any): RegenerateTokenRequest {
return RegenerateTokenRequestFromJSONTyped(json, false);
}
export function RegenerateTokenRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): RegenerateTokenRequest {
if (json == null) {
return json;
}
return {
'emailAddress': json['emailAddress'] == null ? undefined : json['emailAddress'],
};
}
export function RegenerateTokenRequestToJSON(value?: RegenerateTokenRequest | null): any {
if (value == null) {
return value;
}
return {
'emailAddress': value['emailAddress'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface RegisterRequest
*/
export interface RegisterRequest {
/**
*
* @type {string}
* @memberof RegisterRequest
*/
token?: string;
/**
*
* @type {string}
* @memberof RegisterRequest
*/
password?: string;
}
/**
* Check if a given object implements the RegisterRequest interface.
*/
export function instanceOfRegisterRequest(value: object): value is RegisterRequest {
return true;
}
export function RegisterRequestFromJSON(json: any): RegisterRequest {
return RegisterRequestFromJSONTyped(json, false);
}
export function RegisterRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): RegisterRequest {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
'password': json['password'] == null ? undefined : json['password'],
};
}
export function RegisterRequestToJSON(value?: RegisterRequest | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
'password': value['password'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface RegisterResponse
*/
export interface RegisterResponse {
/**
*
* @type {string}
* @memberof RegisterResponse
*/
token?: string;
}
/**
* Check if a given object implements the RegisterResponse interface.
*/
export function instanceOfRegisterResponse(value: object): value is RegisterResponse {
return true;
}
export function RegisterResponseFromJSON(json: any): RegisterResponse {
return RegisterResponseFromJSONTyped(json, false);
}
export function RegisterResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): RegisterResponse {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
};
}
export function RegisterResponseToJSON(value?: RegisterResponse | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface ResetPasswordRequest
*/
export interface ResetPasswordRequest {
/**
*
* @type {string}
* @memberof ResetPasswordRequest
*/
token?: string;
/**
*
* @type {string}
* @memberof ResetPasswordRequest
*/
password?: string;
}
/**
* Check if a given object implements the ResetPasswordRequest interface.
*/
export function instanceOfResetPasswordRequest(value: object): value is ResetPasswordRequest {
return true;
}
export function ResetPasswordRequestFromJSON(json: any): ResetPasswordRequest {
return ResetPasswordRequestFromJSONTyped(json, false);
}
export function ResetPasswordRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): ResetPasswordRequest {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
'password': json['password'] == null ? undefined : json['password'],
};
}
export function ResetPasswordRequestToJSON(value?: ResetPasswordRequest | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
'password': value['password'],
};
}

View File

@ -0,0 +1,155 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { SparkDataSample } from './SparkDataSample';
import {
SparkDataSampleFromJSON,
SparkDataSampleFromJSONTyped,
SparkDataSampleToJSON,
} from './SparkDataSample';
/**
*
* @export
* @interface Share
*/
export interface Share {
/**
*
* @type {string}
* @memberof Share
*/
token?: string;
/**
*
* @type {string}
* @memberof Share
*/
zId?: string;
/**
*
* @type {string}
* @memberof Share
*/
shareMode?: string;
/**
*
* @type {string}
* @memberof Share
*/
backendMode?: string;
/**
*
* @type {string}
* @memberof Share
*/
frontendSelection?: string;
/**
*
* @type {string}
* @memberof Share
*/
frontendEndpoint?: string;
/**
*
* @type {string}
* @memberof Share
*/
backendProxyEndpoint?: string;
/**
*
* @type {boolean}
* @memberof Share
*/
reserved?: boolean;
/**
*
* @type {Array<SparkDataSample>}
* @memberof Share
*/
activity?: Array<SparkDataSample>;
/**
*
* @type {boolean}
* @memberof Share
*/
limited?: boolean;
/**
*
* @type {number}
* @memberof Share
*/
createdAt?: number;
/**
*
* @type {number}
* @memberof Share
*/
updatedAt?: number;
}
/**
* Check if a given object implements the Share interface.
*/
export function instanceOfShare(value: object): value is Share {
return true;
}
export function ShareFromJSON(json: any): Share {
return ShareFromJSONTyped(json, false);
}
export function ShareFromJSONTyped(json: any, ignoreDiscriminator: boolean): Share {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
'zId': json['zId'] == null ? undefined : json['zId'],
'shareMode': json['shareMode'] == null ? undefined : json['shareMode'],
'backendMode': json['backendMode'] == null ? undefined : json['backendMode'],
'frontendSelection': json['frontendSelection'] == null ? undefined : json['frontendSelection'],
'frontendEndpoint': json['frontendEndpoint'] == null ? undefined : json['frontendEndpoint'],
'backendProxyEndpoint': json['backendProxyEndpoint'] == null ? undefined : json['backendProxyEndpoint'],
'reserved': json['reserved'] == null ? undefined : json['reserved'],
'activity': json['activity'] == null ? undefined : ((json['activity'] as Array<any>).map(SparkDataSampleFromJSON)),
'limited': json['limited'] == null ? undefined : json['limited'],
'createdAt': json['createdAt'] == null ? undefined : json['createdAt'],
'updatedAt': json['updatedAt'] == null ? undefined : json['updatedAt'],
};
}
export function ShareToJSON(value?: Share | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
'zId': value['zId'],
'shareMode': value['shareMode'],
'backendMode': value['backendMode'],
'frontendSelection': value['frontendSelection'],
'frontendEndpoint': value['frontendEndpoint'],
'backendProxyEndpoint': value['backendProxyEndpoint'],
'reserved': value['reserved'],
'activity': value['activity'] == null ? undefined : ((value['activity'] as Array<any>).map(SparkDataSampleToJSON)),
'limited': value['limited'],
'createdAt': value['createdAt'],
'updatedAt': value['updatedAt'],
};
}

View File

@ -0,0 +1,215 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { AuthUser } from './AuthUser';
import {
AuthUserFromJSON,
AuthUserFromJSONTyped,
AuthUserToJSON,
} from './AuthUser';
/**
*
* @export
* @interface ShareRequest
*/
export interface ShareRequest {
/**
*
* @type {string}
* @memberof ShareRequest
*/
envZId?: string;
/**
*
* @type {string}
* @memberof ShareRequest
*/
shareMode?: ShareRequestShareModeEnum;
/**
*
* @type {Array<string>}
* @memberof ShareRequest
*/
frontendSelection?: Array<string>;
/**
*
* @type {string}
* @memberof ShareRequest
*/
backendMode?: ShareRequestBackendModeEnum;
/**
*
* @type {string}
* @memberof ShareRequest
*/
backendProxyEndpoint?: string;
/**
*
* @type {string}
* @memberof ShareRequest
*/
authScheme?: string;
/**
*
* @type {Array<AuthUser>}
* @memberof ShareRequest
*/
authUsers?: Array<AuthUser>;
/**
*
* @type {string}
* @memberof ShareRequest
*/
oauthProvider?: ShareRequestOauthProviderEnum;
/**
*
* @type {Array<string>}
* @memberof ShareRequest
*/
oauthEmailDomains?: Array<string>;
/**
*
* @type {string}
* @memberof ShareRequest
*/
oauthAuthorizationCheckInterval?: string;
/**
*
* @type {boolean}
* @memberof ShareRequest
*/
reserved?: boolean;
/**
*
* @type {string}
* @memberof ShareRequest
*/
permissionMode?: ShareRequestPermissionModeEnum;
/**
*
* @type {Array<string>}
* @memberof ShareRequest
*/
accessGrants?: Array<string>;
/**
*
* @type {string}
* @memberof ShareRequest
*/
uniqueName?: string;
}
/**
* @export
*/
export const ShareRequestShareModeEnum = {
Public: 'public',
Private: 'private'
} as const;
export type ShareRequestShareModeEnum = typeof ShareRequestShareModeEnum[keyof typeof ShareRequestShareModeEnum];
/**
* @export
*/
export const ShareRequestBackendModeEnum = {
Proxy: 'proxy',
Web: 'web',
TcpTunnel: 'tcpTunnel',
UdpTunnel: 'udpTunnel',
Caddy: 'caddy',
Drive: 'drive',
Socks: 'socks',
Vpn: 'vpn'
} as const;
export type ShareRequestBackendModeEnum = typeof ShareRequestBackendModeEnum[keyof typeof ShareRequestBackendModeEnum];
/**
* @export
*/
export const ShareRequestOauthProviderEnum = {
Github: 'github',
Google: 'google'
} as const;
export type ShareRequestOauthProviderEnum = typeof ShareRequestOauthProviderEnum[keyof typeof ShareRequestOauthProviderEnum];
/**
* @export
*/
export const ShareRequestPermissionModeEnum = {
Open: 'open',
Closed: 'closed'
} as const;
export type ShareRequestPermissionModeEnum = typeof ShareRequestPermissionModeEnum[keyof typeof ShareRequestPermissionModeEnum];
/**
* Check if a given object implements the ShareRequest interface.
*/
export function instanceOfShareRequest(value: object): value is ShareRequest {
return true;
}
export function ShareRequestFromJSON(json: any): ShareRequest {
return ShareRequestFromJSONTyped(json, false);
}
export function ShareRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): ShareRequest {
if (json == null) {
return json;
}
return {
'envZId': json['envZId'] == null ? undefined : json['envZId'],
'shareMode': json['shareMode'] == null ? undefined : json['shareMode'],
'frontendSelection': json['frontendSelection'] == null ? undefined : json['frontendSelection'],
'backendMode': json['backendMode'] == null ? undefined : json['backendMode'],
'backendProxyEndpoint': json['backendProxyEndpoint'] == null ? undefined : json['backendProxyEndpoint'],
'authScheme': json['authScheme'] == null ? undefined : json['authScheme'],
'authUsers': json['authUsers'] == null ? undefined : ((json['authUsers'] as Array<any>).map(AuthUserFromJSON)),
'oauthProvider': json['oauthProvider'] == null ? undefined : json['oauthProvider'],
'oauthEmailDomains': json['oauthEmailDomains'] == null ? undefined : json['oauthEmailDomains'],
'oauthAuthorizationCheckInterval': json['oauthAuthorizationCheckInterval'] == null ? undefined : json['oauthAuthorizationCheckInterval'],
'reserved': json['reserved'] == null ? undefined : json['reserved'],
'permissionMode': json['permissionMode'] == null ? undefined : json['permissionMode'],
'accessGrants': json['accessGrants'] == null ? undefined : json['accessGrants'],
'uniqueName': json['uniqueName'] == null ? undefined : json['uniqueName'],
};
}
export function ShareRequestToJSON(value?: ShareRequest | null): any {
if (value == null) {
return value;
}
return {
'envZId': value['envZId'],
'shareMode': value['shareMode'],
'frontendSelection': value['frontendSelection'],
'backendMode': value['backendMode'],
'backendProxyEndpoint': value['backendProxyEndpoint'],
'authScheme': value['authScheme'],
'authUsers': value['authUsers'] == null ? undefined : ((value['authUsers'] as Array<any>).map(AuthUserToJSON)),
'oauthProvider': value['oauthProvider'],
'oauthEmailDomains': value['oauthEmailDomains'],
'oauthAuthorizationCheckInterval': value['oauthAuthorizationCheckInterval'],
'reserved': value['reserved'],
'permissionMode': value['permissionMode'],
'accessGrants': value['accessGrants'],
'uniqueName': value['uniqueName'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface ShareResponse
*/
export interface ShareResponse {
/**
*
* @type {Array<string>}
* @memberof ShareResponse
*/
frontendProxyEndpoints?: Array<string>;
/**
*
* @type {string}
* @memberof ShareResponse
*/
shrToken?: string;
}
/**
* Check if a given object implements the ShareResponse interface.
*/
export function instanceOfShareResponse(value: object): value is ShareResponse {
return true;
}
export function ShareResponseFromJSON(json: any): ShareResponse {
return ShareResponseFromJSONTyped(json, false);
}
export function ShareResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): ShareResponse {
if (json == null) {
return json;
}
return {
'frontendProxyEndpoints': json['frontendProxyEndpoints'] == null ? undefined : json['frontendProxyEndpoints'],
'shrToken': json['shrToken'] == null ? undefined : json['shrToken'],
};
}
export function ShareResponseToJSON(value?: ShareResponse | null): any {
if (value == null) {
return value;
}
return {
'frontendProxyEndpoints': value['frontendProxyEndpoints'],
'shrToken': value['shrToken'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface SparkDataSample
*/
export interface SparkDataSample {
/**
*
* @type {number}
* @memberof SparkDataSample
*/
rx?: number;
/**
*
* @type {number}
* @memberof SparkDataSample
*/
tx?: number;
}
/**
* Check if a given object implements the SparkDataSample interface.
*/
export function instanceOfSparkDataSample(value: object): value is SparkDataSample {
return true;
}
export function SparkDataSampleFromJSON(json: any): SparkDataSample {
return SparkDataSampleFromJSONTyped(json, false);
}
export function SparkDataSampleFromJSONTyped(json: any, ignoreDiscriminator: boolean): SparkDataSample {
if (json == null) {
return json;
}
return {
'rx': json['rx'] == null ? undefined : json['rx'],
'tx': json['tx'] == null ? undefined : json['tx'],
};
}
export function SparkDataSampleToJSON(value?: SparkDataSample | null): any {
if (value == null) {
return value;
}
return {
'rx': value['rx'],
'tx': value['tx'],
};
}

View File

@ -0,0 +1,76 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface UnaccessRequest
*/
export interface UnaccessRequest {
/**
*
* @type {string}
* @memberof UnaccessRequest
*/
frontendToken?: string;
/**
*
* @type {string}
* @memberof UnaccessRequest
*/
envZId?: string;
/**
*
* @type {string}
* @memberof UnaccessRequest
*/
shrToken?: string;
}
/**
* Check if a given object implements the UnaccessRequest interface.
*/
export function instanceOfUnaccessRequest(value: object): value is UnaccessRequest {
return true;
}
export function UnaccessRequestFromJSON(json: any): UnaccessRequest {
return UnaccessRequestFromJSONTyped(json, false);
}
export function UnaccessRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): UnaccessRequest {
if (json == null) {
return json;
}
return {
'frontendToken': json['frontendToken'] == null ? undefined : json['frontendToken'],
'envZId': json['envZId'] == null ? undefined : json['envZId'],
'shrToken': json['shrToken'] == null ? undefined : json['shrToken'],
};
}
export function UnaccessRequestToJSON(value?: UnaccessRequest | null): any {
if (value == null) {
return value;
}
return {
'frontendToken': value['frontendToken'],
'envZId': value['envZId'],
'shrToken': value['shrToken'],
};
}

View File

@ -0,0 +1,76 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface UnshareRequest
*/
export interface UnshareRequest {
/**
*
* @type {string}
* @memberof UnshareRequest
*/
envZId?: string;
/**
*
* @type {string}
* @memberof UnshareRequest
*/
shrToken?: string;
/**
*
* @type {boolean}
* @memberof UnshareRequest
*/
reserved?: boolean;
}
/**
* Check if a given object implements the UnshareRequest interface.
*/
export function instanceOfUnshareRequest(value: object): value is UnshareRequest {
return true;
}
export function UnshareRequestFromJSON(json: any): UnshareRequest {
return UnshareRequestFromJSONTyped(json, false);
}
export function UnshareRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): UnshareRequest {
if (json == null) {
return json;
}
return {
'envZId': json['envZId'] == null ? undefined : json['envZId'],
'shrToken': json['shrToken'] == null ? undefined : json['shrToken'],
'reserved': json['reserved'] == null ? undefined : json['reserved'],
};
}
export function UnshareRequestToJSON(value?: UnshareRequest | null): any {
if (value == null) {
return value;
}
return {
'envZId': value['envZId'],
'shrToken': value['shrToken'],
'reserved': value['reserved'],
};
}

View File

@ -0,0 +1,76 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface UpdateFrontendRequest
*/
export interface UpdateFrontendRequest {
/**
*
* @type {string}
* @memberof UpdateFrontendRequest
*/
frontendToken?: string;
/**
*
* @type {string}
* @memberof UpdateFrontendRequest
*/
publicName?: string;
/**
*
* @type {string}
* @memberof UpdateFrontendRequest
*/
urlTemplate?: string;
}
/**
* Check if a given object implements the UpdateFrontendRequest interface.
*/
export function instanceOfUpdateFrontendRequest(value: object): value is UpdateFrontendRequest {
return true;
}
export function UpdateFrontendRequestFromJSON(json: any): UpdateFrontendRequest {
return UpdateFrontendRequestFromJSONTyped(json, false);
}
export function UpdateFrontendRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateFrontendRequest {
if (json == null) {
return json;
}
return {
'frontendToken': json['frontendToken'] == null ? undefined : json['frontendToken'],
'publicName': json['publicName'] == null ? undefined : json['publicName'],
'urlTemplate': json['urlTemplate'] == null ? undefined : json['urlTemplate'],
};
}
export function UpdateFrontendRequestToJSON(value?: UpdateFrontendRequest | null): any {
if (value == null) {
return value;
}
return {
'frontendToken': value['frontendToken'],
'publicName': value['publicName'],
'urlTemplate': value['urlTemplate'],
};
}

View File

@ -0,0 +1,84 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface UpdateShareRequest
*/
export interface UpdateShareRequest {
/**
*
* @type {string}
* @memberof UpdateShareRequest
*/
shrToken?: string;
/**
*
* @type {string}
* @memberof UpdateShareRequest
*/
backendProxyEndpoint?: string;
/**
*
* @type {Array<string>}
* @memberof UpdateShareRequest
*/
addAccessGrants?: Array<string>;
/**
*
* @type {Array<string>}
* @memberof UpdateShareRequest
*/
removeAccessGrants?: Array<string>;
}
/**
* Check if a given object implements the UpdateShareRequest interface.
*/
export function instanceOfUpdateShareRequest(value: object): value is UpdateShareRequest {
return true;
}
export function UpdateShareRequestFromJSON(json: any): UpdateShareRequest {
return UpdateShareRequestFromJSONTyped(json, false);
}
export function UpdateShareRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateShareRequest {
if (json == null) {
return json;
}
return {
'shrToken': json['shrToken'] == null ? undefined : json['shrToken'],
'backendProxyEndpoint': json['backendProxyEndpoint'] == null ? undefined : json['backendProxyEndpoint'],
'addAccessGrants': json['addAccessGrants'] == null ? undefined : json['addAccessGrants'],
'removeAccessGrants': json['removeAccessGrants'] == null ? undefined : json['removeAccessGrants'],
};
}
export function UpdateShareRequestToJSON(value?: UpdateShareRequest | null): any {
if (value == null) {
return value;
}
return {
'shrToken': value['shrToken'],
'backendProxyEndpoint': value['backendProxyEndpoint'],
'addAccessGrants': value['addAccessGrants'],
'removeAccessGrants': value['removeAccessGrants'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface VerifyRequest
*/
export interface VerifyRequest {
/**
*
* @type {string}
* @memberof VerifyRequest
*/
token?: string;
}
/**
* Check if a given object implements the VerifyRequest interface.
*/
export function instanceOfVerifyRequest(value: object): value is VerifyRequest {
return true;
}
export function VerifyRequestFromJSON(json: any): VerifyRequest {
return VerifyRequestFromJSONTyped(json, false);
}
export function VerifyRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): VerifyRequest {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
};
}
export function VerifyRequestToJSON(value?: VerifyRequest | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface VerifyResponse
*/
export interface VerifyResponse {
/**
*
* @type {string}
* @memberof VerifyResponse
*/
email?: string;
}
/**
* Check if a given object implements the VerifyResponse interface.
*/
export function instanceOfVerifyResponse(value: object): value is VerifyResponse {
return true;
}
export function VerifyResponseFromJSON(json: any): VerifyResponse {
return VerifyResponseFromJSONTyped(json, false);
}
export function VerifyResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): VerifyResponse {
if (json == null) {
return json;
}
return {
'email': json['email'] == null ? undefined : json['email'],
};
}
export function VerifyResponseToJSON(value?: VerifyResponse | null): any {
if (value == null) {
return value;
}
return {
'email': value['email'],
};
}

View File

@ -0,0 +1,44 @@
/* tslint:disable */
/* eslint-disable */
export * from './AccessRequest';
export * from './AccessResponse';
export * from './AuthUser';
export * from './ChangePasswordRequest';
export * from './CreateAccountRequest';
export * from './CreateFrontendRequest';
export * from './CreateFrontendResponse';
export * from './CreateIdentity201Response';
export * from './CreateIdentityRequest';
export * from './DeleteFrontendRequest';
export * from './DisableRequest';
export * from './EnableRequest';
export * from './EnableResponse';
export * from './Environment';
export * from './EnvironmentAndResources';
export * from './Frontend';
export * from './GrantsRequest';
export * from './InviteRequest';
export * from './InviteTokenGenerateRequest';
export * from './LoginRequest';
export * from './Metrics';
export * from './MetricsSample';
export * from './ModelConfiguration';
export * from './Overview';
export * from './PasswordRequirements';
export * from './Principal';
export * from './PublicFrontend';
export * from './RegenerateToken200Response';
export * from './RegenerateTokenRequest';
export * from './RegisterRequest';
export * from './RegisterResponse';
export * from './ResetPasswordRequest';
export * from './Share';
export * from './ShareRequest';
export * from './ShareResponse';
export * from './SparkDataSample';
export * from './UnaccessRequest';
export * from './UnshareRequest';
export * from './UpdateFrontendRequest';
export * from './UpdateShareRequest';
export * from './VerifyRequest';
export * from './VerifyResponse';

426
ui100/src/api/runtime.ts Normal file
View File

@ -0,0 +1,426 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
export const BASE_PATH = "/api/v1".replace(/\/+$/, "");
export interface ConfigurationParameters {
basePath?: string; // override base path
fetchApi?: FetchAPI; // override for fetch implementation
middleware?: Middleware[]; // middleware to apply before/after fetch requests
queryParamsStringify?: (params: HTTPQuery) => string; // stringify function for query strings
username?: string; // parameter for basic security
password?: string; // parameter for basic security
apiKey?: string | Promise<string> | ((name: string) => string | Promise<string>); // parameter for apiKey security
accessToken?: string | Promise<string> | ((name?: string, scopes?: string[]) => string | Promise<string>); // parameter for oauth2 security
headers?: HTTPHeaders; //header params we want to use on every request
credentials?: RequestCredentials; //value for the credentials param we want to use on each request
}
export class Configuration {
constructor(private configuration: ConfigurationParameters = {}) {}
set config(configuration: Configuration) {
this.configuration = configuration;
}
get basePath(): string {
return this.configuration.basePath != null ? this.configuration.basePath : BASE_PATH;
}
get fetchApi(): FetchAPI | undefined {
return this.configuration.fetchApi;
}
get middleware(): Middleware[] {
return this.configuration.middleware || [];
}
get queryParamsStringify(): (params: HTTPQuery) => string {
return this.configuration.queryParamsStringify || querystring;
}
get username(): string | undefined {
return this.configuration.username;
}
get password(): string | undefined {
return this.configuration.password;
}
get apiKey(): ((name: string) => string | Promise<string>) | undefined {
const apiKey = this.configuration.apiKey;
if (apiKey) {
return typeof apiKey === 'function' ? apiKey : () => apiKey;
}
return undefined;
}
get accessToken(): ((name?: string, scopes?: string[]) => string | Promise<string>) | undefined {
const accessToken = this.configuration.accessToken;
if (accessToken) {
return typeof accessToken === 'function' ? accessToken : async () => accessToken;
}
return undefined;
}
get headers(): HTTPHeaders | undefined {
return this.configuration.headers;
}
get credentials(): RequestCredentials | undefined {
return this.configuration.credentials;
}
}
export const DefaultConfig = new Configuration();
/**
* This is the base class for all generated API classes.
*/
export class BaseAPI {
private static readonly jsonRegex = new RegExp('^(:?application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(:?;.*)?$', 'i');
private middleware: Middleware[];
constructor(protected configuration = DefaultConfig) {
this.middleware = configuration.middleware;
}
withMiddleware<T extends BaseAPI>(this: T, ...middlewares: Middleware[]) {
const next = this.clone<T>();
next.middleware = next.middleware.concat(...middlewares);
return next;
}
withPreMiddleware<T extends BaseAPI>(this: T, ...preMiddlewares: Array<Middleware['pre']>) {
const middlewares = preMiddlewares.map((pre) => ({ pre }));
return this.withMiddleware<T>(...middlewares);
}
withPostMiddleware<T extends BaseAPI>(this: T, ...postMiddlewares: Array<Middleware['post']>) {
const middlewares = postMiddlewares.map((post) => ({ post }));
return this.withMiddleware<T>(...middlewares);
}
/**
* Check if the given MIME is a JSON MIME.
* JSON MIME examples:
* application/json
* application/json; charset=UTF8
* APPLICATION/JSON
* application/vnd.company+json
* @param mime - MIME (Multipurpose Internet Mail Extensions)
* @return True if the given MIME is JSON, false otherwise.
*/
protected isJsonMime(mime: string | null | undefined): boolean {
if (!mime) {
return false;
}
return BaseAPI.jsonRegex.test(mime);
}
protected async request(context: RequestOpts, initOverrides?: RequestInit | InitOverrideFunction): Promise<Response> {
const { url, init } = await this.createFetchParams(context, initOverrides);
const response = await this.fetchApi(url, init);
if (response && (response.status >= 200 && response.status < 300)) {
return response;
}
throw new ResponseError(response, 'Response returned an error code');
}
private async createFetchParams(context: RequestOpts, initOverrides?: RequestInit | InitOverrideFunction) {
let url = this.configuration.basePath + context.path;
if (context.query !== undefined && Object.keys(context.query).length !== 0) {
// only add the querystring to the URL if there are query parameters.
// this is done to avoid urls ending with a "?" character which buggy webservers
// do not handle correctly sometimes.
url += '?' + this.configuration.queryParamsStringify(context.query);
}
const headers = Object.assign({}, this.configuration.headers, context.headers);
Object.keys(headers).forEach(key => headers[key] === undefined ? delete headers[key] : {});
const initOverrideFn =
typeof initOverrides === "function"
? initOverrides
: async () => initOverrides;
const initParams = {
method: context.method,
headers,
body: context.body,
credentials: this.configuration.credentials,
};
const overriddenInit: RequestInit = {
...initParams,
...(await initOverrideFn({
init: initParams,
context,
}))
};
let body: any;
if (isFormData(overriddenInit.body)
|| (overriddenInit.body instanceof URLSearchParams)
|| isBlob(overriddenInit.body)) {
body = overriddenInit.body;
} else if (this.isJsonMime(headers['Content-Type'])) {
body = JSON.stringify(overriddenInit.body);
} else {
body = overriddenInit.body;
}
const init: RequestInit = {
...overriddenInit,
body
};
return { url, init };
}
private fetchApi = async (url: string, init: RequestInit) => {
let fetchParams = { url, init };
for (const middleware of this.middleware) {
if (middleware.pre) {
fetchParams = await middleware.pre({
fetch: this.fetchApi,
...fetchParams,
}) || fetchParams;
}
}
let response: Response | undefined = undefined;
try {
response = await (this.configuration.fetchApi || fetch)(fetchParams.url, fetchParams.init);
} catch (e) {
for (const middleware of this.middleware) {
if (middleware.onError) {
response = await middleware.onError({
fetch: this.fetchApi,
url: fetchParams.url,
init: fetchParams.init,
error: e,
response: response ? response.clone() : undefined,
}) || response;
}
}
if (response === undefined) {
if (e instanceof Error) {
throw new FetchError(e, 'The request failed and the interceptors did not return an alternative response');
} else {
throw e;
}
}
}
for (const middleware of this.middleware) {
if (middleware.post) {
response = await middleware.post({
fetch: this.fetchApi,
url: fetchParams.url,
init: fetchParams.init,
response: response.clone(),
}) || response;
}
}
return response;
}
/**
* Create a shallow clone of `this` by constructing a new instance
* and then shallow cloning data members.
*/
private clone<T extends BaseAPI>(this: T): T {
const constructor = this.constructor as any;
const next = new constructor(this.configuration);
next.middleware = this.middleware.slice();
return next;
}
};
function isBlob(value: any): value is Blob {
return typeof Blob !== 'undefined' && value instanceof Blob;
}
function isFormData(value: any): value is FormData {
return typeof FormData !== "undefined" && value instanceof FormData;
}
export class ResponseError extends Error {
override name: "ResponseError" = "ResponseError";
constructor(public response: Response, msg?: string) {
super(msg);
}
}
export class FetchError extends Error {
override name: "FetchError" = "FetchError";
constructor(public cause: Error, msg?: string) {
super(msg);
}
}
export class RequiredError extends Error {
override name: "RequiredError" = "RequiredError";
constructor(public field: string, msg?: string) {
super(msg);
}
}
export const COLLECTION_FORMATS = {
csv: ",",
ssv: " ",
tsv: "\t",
pipes: "|",
};
export type FetchAPI = WindowOrWorkerGlobalScope['fetch'];
export type Json = any;
export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS' | 'HEAD';
export type HTTPHeaders = { [key: string]: string };
export type HTTPQuery = { [key: string]: string | number | null | boolean | Array<string | number | null | boolean> | Set<string | number | null | boolean> | HTTPQuery };
export type HTTPBody = Json | FormData | URLSearchParams;
export type HTTPRequestInit = { headers?: HTTPHeaders; method: HTTPMethod; credentials?: RequestCredentials; body?: HTTPBody };
export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original';
export type InitOverrideFunction = (requestContext: { init: HTTPRequestInit, context: RequestOpts }) => Promise<RequestInit>
export interface FetchParams {
url: string;
init: RequestInit;
}
export interface RequestOpts {
path: string;
method: HTTPMethod;
headers: HTTPHeaders;
query?: HTTPQuery;
body?: HTTPBody;
}
export function querystring(params: HTTPQuery, prefix: string = ''): string {
return Object.keys(params)
.map(key => querystringSingleKey(key, params[key], prefix))
.filter(part => part.length > 0)
.join('&');
}
function querystringSingleKey(key: string, value: string | number | null | undefined | boolean | Array<string | number | null | boolean> | Set<string | number | null | boolean> | HTTPQuery, keyPrefix: string = ''): string {
const fullKey = keyPrefix + (keyPrefix.length ? `[${key}]` : key);
if (value instanceof Array) {
const multiValue = value.map(singleValue => encodeURIComponent(String(singleValue)))
.join(`&${encodeURIComponent(fullKey)}=`);
return `${encodeURIComponent(fullKey)}=${multiValue}`;
}
if (value instanceof Set) {
const valueAsArray = Array.from(value);
return querystringSingleKey(key, valueAsArray, keyPrefix);
}
if (value instanceof Date) {
return `${encodeURIComponent(fullKey)}=${encodeURIComponent(value.toISOString())}`;
}
if (value instanceof Object) {
return querystring(value as HTTPQuery, fullKey);
}
return `${encodeURIComponent(fullKey)}=${encodeURIComponent(String(value))}`;
}
export function mapValues(data: any, fn: (item: any) => any) {
return Object.keys(data).reduce(
(acc, key) => ({ ...acc, [key]: fn(data[key]) }),
{}
);
}
export function canConsumeForm(consumes: Consume[]): boolean {
for (const consume of consumes) {
if ('multipart/form-data' === consume.contentType) {
return true;
}
}
return false;
}
export interface Consume {
contentType: string;
}
export interface RequestContext {
fetch: FetchAPI;
url: string;
init: RequestInit;
}
export interface ResponseContext {
fetch: FetchAPI;
url: string;
init: RequestInit;
response: Response;
}
export interface ErrorContext {
fetch: FetchAPI;
url: string;
init: RequestInit;
error: unknown;
response?: Response;
}
export interface Middleware {
pre?(context: RequestContext): Promise<FetchParams | void>;
post?(context: ResponseContext): Promise<Response | void>;
onError?(context: ErrorContext): Promise<Response | void>;
}
export interface ApiResponse<T> {
raw: Response;
value(): Promise<T>;
}
export interface ResponseTransformer<T> {
(json: any): T;
}
export class JSONApiResponse<T> {
constructor(public raw: Response, private transformer: ResponseTransformer<T> = (jsonValue: any) => jsonValue) {}
async value(): Promise<T> {
return this.transformer(await this.raw.json());
}
}
export class VoidApiResponse {
constructor(public raw: Response) {}
async value(): Promise<void> {
return undefined;
}
}
export class BlobApiResponse {
constructor(public raw: Response) {}
async value(): Promise<Blob> {
return await this.raw.blob();
};
}
export class TextApiResponse {
constructor(public raw: Response) {}
async value(): Promise<string> {
return await this.raw.text();
};
}