| |
|
|
| import { type Client, http } from '../core.js' |
| import { type Result, type RequestOptions } from '../lib/types.js' |
| import { request } from '../lib/request.js' |
| import { toURLSearchParams } from '../lib/encodings.js' |
| import { toWire, toPathWire, fromWire, assertValid } from '../lib/wire.js' |
| import * as schemas from '../models/schemas.js' |
| import type { |
| ListAppsRequest, |
| ListAppsResponse, |
| GetAppRequest, |
| GetAppResponse, |
| ListAppCatalogRequest, |
| ListAppCatalogResponse, |
| GetAppCatalogItemRequest, |
| GetAppCatalogItemResponse, |
| InstallAppRequest, |
| InstallAppResponse, |
| } from '../models/operations/apps.js' |
|
|
| |
| |
| |
| |
| |
| |
| |
| export function listApps( |
| client: Client, |
| req: ListAppsRequest = {}, |
| options?: RequestOptions, |
| ): Promise<Result<ListAppsResponse>> { |
| return request(() => { |
| const query = toWire( |
| { |
| page: req.page, |
| }, |
| schemas.listAppsQueryParams, |
| ) |
| if (client._options.validate) { |
| assertValid(schemas.listAppsQueryParamsWire, query) |
| } |
| const searchParams = toURLSearchParams(query) |
| return http(client) |
| .get('openmeter/apps', { ...options, searchParams }) |
| .json() |
| .then((data) => { |
| if (client._options.validate) { |
| assertValid(schemas.listAppsResponseWire, data) |
| } |
| return fromWire(data, schemas.listAppsResponse) |
| }) |
| }) |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| export function getApp( |
| client: Client, |
| req: GetAppRequest, |
| options?: RequestOptions, |
| ): Promise<Result<GetAppResponse>> { |
| return request(() => { |
| const pathParamsInput = { |
| appId: req.appId, |
| } |
| const pathParams = client._options.validate |
| ? toPathWire(pathParamsInput, schemas.getAppPathParams) |
| : pathParamsInput |
| if (client._options.validate) { |
| assertValid(schemas.getAppPathParamsWire, pathParams) |
| } |
| const path = `openmeter/apps/${(() => { |
| if (pathParams.appId === undefined) { |
| throw new Error('missing path parameter: appId') |
| } |
| return encodeURIComponent(String(pathParams.appId)) |
| })()}` |
| return http(client) |
| .get(path, options) |
| .json() |
| .then((data) => { |
| if (client._options.validate) { |
| assertValid(schemas.getAppResponseWire, data) |
| } |
| return fromWire(data, schemas.getAppResponse) |
| }) |
| }) |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| export function listAppCatalog( |
| client: Client, |
| req: ListAppCatalogRequest = {}, |
| options?: RequestOptions, |
| ): Promise<Result<ListAppCatalogResponse>> { |
| return request(() => { |
| const query = toWire( |
| { |
| page: req.page, |
| }, |
| schemas.listAppCatalogQueryParams, |
| ) |
| if (client._options.validate) { |
| assertValid(schemas.listAppCatalogQueryParamsWire, query) |
| } |
| const searchParams = toURLSearchParams(query) |
| return http(client) |
| .get('openmeter/app-catalog', { ...options, searchParams }) |
| .json() |
| .then((data) => { |
| if (client._options.validate) { |
| assertValid(schemas.listAppCatalogResponseWire, data) |
| } |
| return fromWire(data, schemas.listAppCatalogResponse) |
| }) |
| }) |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| export function getAppCatalogItem( |
| client: Client, |
| req: GetAppCatalogItemRequest, |
| options?: RequestOptions, |
| ): Promise<Result<GetAppCatalogItemResponse>> { |
| return request(() => { |
| const pathParamsInput = { |
| appType: req.appType, |
| } |
| const pathParams = client._options.validate |
| ? toPathWire(pathParamsInput, schemas.getAppCatalogItemPathParams) |
| : pathParamsInput |
| if (client._options.validate) { |
| assertValid(schemas.getAppCatalogItemPathParamsWire, pathParams) |
| } |
| const path = `openmeter/app-catalog/${(() => { |
| if (pathParams.appType === undefined) { |
| throw new Error('missing path parameter: appType') |
| } |
| return encodeURIComponent(String(pathParams.appType)) |
| })()}` |
| return http(client) |
| .get(path, options) |
| .json() |
| .then((data) => { |
| if (client._options.validate) { |
| assertValid(schemas.getAppCatalogItemResponseWire, data) |
| } |
| return fromWire(data, schemas.getAppCatalogItemResponse) |
| }) |
| }) |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| export function installApp( |
| client: Client, |
| req: InstallAppRequest, |
| options?: RequestOptions, |
| ): Promise<Result<InstallAppResponse>> { |
| return request(() => { |
| const body = toWire(req, schemas.installAppBody) |
| if (client._options.validate) { |
| assertValid(schemas.installAppBodyWire, body) |
| } |
| return http(client) |
| .post('openmeter/app-catalog/install', { ...options, json: body }) |
| .json() |
| .then((data) => { |
| if (client._options.validate) { |
| assertValid(schemas.installAppResponseWire, data) |
| } |
| return fromWire(data, schemas.installAppResponse) |
| }) |
| }) |
| } |
|
|