@nivo-lat/sdk 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +92 -0
- package/dist/NivoAPI.d.ts +14 -0
- package/dist/NivoAPI.d.ts.map +1 -0
- package/dist/NivoAPI.js +20 -0
- package/dist/NivoAPI.js.map +1 -0
- package/dist/auth.d.ts +117 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +185 -0
- package/dist/auth.js.map +1 -0
- package/dist/client.d.ts +22 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +162 -0
- package/dist/client.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -0
- package/dist/resources/apps.d.ts +113 -0
- package/dist/resources/apps.d.ts.map +1 -0
- package/dist/resources/apps.js +92 -0
- package/dist/resources/apps.js.map +1 -0
- package/dist/resources/databases.d.ts +82 -0
- package/dist/resources/databases.d.ts.map +1 -0
- package/dist/resources/databases.js +47 -0
- package/dist/resources/databases.js.map +1 -0
- package/dist/resources/storage.d.ts +133 -0
- package/dist/resources/storage.d.ts.map +1 -0
- package/dist/resources/storage.js +86 -0
- package/dist/resources/storage.js.map +1 -0
- package/dist/server.d.ts +46 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +79 -0
- package/dist/server.js.map +1 -0
- package/package.json +38 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { NivoAuthClient } from './auth';
|
|
2
|
+
export declare class NivoClient {
|
|
3
|
+
readonly auth: NivoAuthClient;
|
|
4
|
+
constructor(authUrl: string, anonKey: string);
|
|
5
|
+
}
|
|
6
|
+
export declare function createClient(authUrl: string, anonKey: string): NivoClient;
|
|
7
|
+
export { NivoAPI } from './NivoAPI';
|
|
8
|
+
export { NivoError } from './client';
|
|
9
|
+
export type { NivoAPIOptions } from './NivoAPI';
|
|
10
|
+
export type { Session, AuthUser, AuthError, AuthChangeEvent } from './auth';
|
|
11
|
+
export type { Database, DatabaseWithConnection, QueryResult, TableInfo, TableColumn, TableRowsResult, CreateDatabaseOptions, TableRowsOptions, UpdateRowOptions, DeleteRowsOptions, } from './resources/databases';
|
|
12
|
+
export type { App, Deployment, AppLogs, DeploymentLogs, BuildSystem, CreateAppOptions, WaitForDeploymentOptions, AppFile, } from './resources/apps';
|
|
13
|
+
export type { StorageBucket, StorageFile, StorageStats, CreateBucketOptions, UpdateBucketOptions, UploadToBucketOptions, ListFilesOptions, CdnFile, CdnStats, CdnUploadOptions, } from './resources/storage';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAEvC,qBAAa,UAAU;IACrB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;gBAEjB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG7C;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,CAEzE;AAGD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAG/C,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AAG3E,YAAY,EACV,QAAQ,EACR,sBAAsB,EACtB,WAAW,EACX,SAAS,EACT,WAAW,EACX,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,uBAAuB,CAAA;AAG9B,YAAY,EACV,GAAG,EACH,UAAU,EACV,OAAO,EACP,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,OAAO,GACR,MAAM,kBAAkB,CAAA;AAGzB,YAAY,EACV,aAAa,EACb,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,gBAAgB,GACjB,MAAM,qBAAqB,CAAA"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NivoError = exports.NivoAPI = exports.NivoClient = void 0;
|
|
4
|
+
exports.createClient = createClient;
|
|
5
|
+
// ── Browser client (auth + future: db queries) ────────────────────────────────
|
|
6
|
+
const auth_1 = require("./auth");
|
|
7
|
+
class NivoClient {
|
|
8
|
+
constructor(authUrl, anonKey) {
|
|
9
|
+
this.auth = new auth_1.NivoAuthClient(authUrl.replace(/\/$/, ''), anonKey);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.NivoClient = NivoClient;
|
|
13
|
+
function createClient(authUrl, anonKey) {
|
|
14
|
+
return new NivoClient(authUrl, anonKey);
|
|
15
|
+
}
|
|
16
|
+
// ── Admin / CLI SDK ───────────────────────────────────────────────────────────
|
|
17
|
+
var NivoAPI_1 = require("./NivoAPI");
|
|
18
|
+
Object.defineProperty(exports, "NivoAPI", { enumerable: true, get: function () { return NivoAPI_1.NivoAPI; } });
|
|
19
|
+
var client_1 = require("./client");
|
|
20
|
+
Object.defineProperty(exports, "NivoError", { enumerable: true, get: function () { return client_1.NivoError; } });
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAWA,oCAEC;AAbD,iFAAiF;AACjF,iCAAuC;AAEvC,MAAa,UAAU;IAGrB,YAAY,OAAe,EAAE,OAAe;QAC1C,IAAI,CAAC,IAAI,GAAG,IAAI,qBAAc,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,CAAA;IACrE,CAAC;CACF;AAND,gCAMC;AAED,SAAgB,YAAY,CAAC,OAAe,EAAE,OAAe;IAC3D,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AACzC,CAAC;AAED,iFAAiF;AACjF,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,mCAAoC;AAA3B,mGAAA,SAAS,OAAA"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { NivoClient } from '../client';
|
|
2
|
+
import { Readable } from 'stream';
|
|
3
|
+
export interface App {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
projectId: string;
|
|
7
|
+
status: string;
|
|
8
|
+
subdomain: string | null;
|
|
9
|
+
customDomain: string | null;
|
|
10
|
+
domainStatus: string | null;
|
|
11
|
+
runtime: string;
|
|
12
|
+
buildSystem: BuildSystem;
|
|
13
|
+
type: string;
|
|
14
|
+
ramMb: number;
|
|
15
|
+
repoBranch: string | null;
|
|
16
|
+
repoFullName: string | null;
|
|
17
|
+
sourceType: string;
|
|
18
|
+
autoDeploy: boolean;
|
|
19
|
+
port: number | null;
|
|
20
|
+
createdAt: string;
|
|
21
|
+
updatedAt: string;
|
|
22
|
+
}
|
|
23
|
+
export interface Deployment {
|
|
24
|
+
id: string;
|
|
25
|
+
status: string;
|
|
26
|
+
trigger: string;
|
|
27
|
+
createdAt: string;
|
|
28
|
+
finishedAt: string | null;
|
|
29
|
+
}
|
|
30
|
+
export type BuildSystem = 'nivopack' | 'nixpacks' | 'dockerfile';
|
|
31
|
+
export interface AppLogs {
|
|
32
|
+
log: string;
|
|
33
|
+
status: string;
|
|
34
|
+
port: number | null;
|
|
35
|
+
subdomain: string | null;
|
|
36
|
+
}
|
|
37
|
+
export interface DeploymentLogs {
|
|
38
|
+
log: string;
|
|
39
|
+
status: string;
|
|
40
|
+
trigger: string;
|
|
41
|
+
createdAt: string;
|
|
42
|
+
finishedAt: string | null;
|
|
43
|
+
}
|
|
44
|
+
export interface CreateAppOptions {
|
|
45
|
+
name: string;
|
|
46
|
+
runtime?: string;
|
|
47
|
+
startCmd?: string;
|
|
48
|
+
buildSystem?: BuildSystem;
|
|
49
|
+
installCmd?: string;
|
|
50
|
+
buildCmd?: string;
|
|
51
|
+
ramMb?: number;
|
|
52
|
+
envVars?: Record<string, string>;
|
|
53
|
+
type?: 'site' | 'worker';
|
|
54
|
+
sourceType?: 'zip' | 'github';
|
|
55
|
+
repoFullName?: string;
|
|
56
|
+
repoBranch?: string;
|
|
57
|
+
}
|
|
58
|
+
export interface WaitForDeploymentOptions {
|
|
59
|
+
intervalMs?: number;
|
|
60
|
+
timeoutMs?: number;
|
|
61
|
+
onLog?: (chunk: string, logs: DeploymentLogs) => void;
|
|
62
|
+
onStatus?: (status: string, logs: DeploymentLogs) => void;
|
|
63
|
+
}
|
|
64
|
+
export interface AppFile {
|
|
65
|
+
name: string;
|
|
66
|
+
size: number;
|
|
67
|
+
type: 'file' | 'dir' | 'symlink';
|
|
68
|
+
}
|
|
69
|
+
export declare class AppsResource {
|
|
70
|
+
private readonly client;
|
|
71
|
+
constructor(client: NivoClient);
|
|
72
|
+
list(): Promise<App[]>;
|
|
73
|
+
get(id: string): Promise<App>;
|
|
74
|
+
create(opts: CreateAppOptions): Promise<App>;
|
|
75
|
+
commit(id: string, file: Buffer | string | Readable, filename?: string): Promise<{
|
|
76
|
+
ok: boolean;
|
|
77
|
+
deploymentId: string;
|
|
78
|
+
}>;
|
|
79
|
+
commitAndWait(id: string, file: Buffer | string | Readable, filename?: string, opts?: WaitForDeploymentOptions): Promise<DeploymentLogs>;
|
|
80
|
+
deploy(id: string): Promise<{
|
|
81
|
+
ok: boolean;
|
|
82
|
+
deploymentId: string;
|
|
83
|
+
}>;
|
|
84
|
+
deployAndWait(id: string, opts?: WaitForDeploymentOptions): Promise<DeploymentLogs>;
|
|
85
|
+
start(id: string): Promise<{
|
|
86
|
+
ok: boolean;
|
|
87
|
+
}>;
|
|
88
|
+
stop(id: string): Promise<{
|
|
89
|
+
ok: boolean;
|
|
90
|
+
}>;
|
|
91
|
+
logs(id: string): Promise<AppLogs>;
|
|
92
|
+
deployments(id: string): Promise<Deployment[]>;
|
|
93
|
+
deploymentLogs(id: string, deploymentId: string): Promise<DeploymentLogs>;
|
|
94
|
+
waitForDeployment(id: string, deploymentId: string, opts?: WaitForDeploymentOptions): Promise<DeploymentLogs>;
|
|
95
|
+
setEnv(id: string, envVars: Record<string, string>): Promise<App>;
|
|
96
|
+
listFiles(id: string, path?: string): Promise<{
|
|
97
|
+
files: AppFile[];
|
|
98
|
+
path: string;
|
|
99
|
+
}>;
|
|
100
|
+
readFile(id: string, path: string): Promise<{
|
|
101
|
+
content: string;
|
|
102
|
+
path: string;
|
|
103
|
+
}>;
|
|
104
|
+
writeFile(id: string, path: string, content: string): Promise<{
|
|
105
|
+
ok: boolean;
|
|
106
|
+
path: string;
|
|
107
|
+
}>;
|
|
108
|
+
deleteFile(id: string, path: string): Promise<{
|
|
109
|
+
ok: boolean;
|
|
110
|
+
path: string;
|
|
111
|
+
}>;
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=apps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apps.d.ts","sourceRoot":"","sources":["../../src/resources/apps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AppsResource = void 0;
|
|
4
|
+
const client_1 = require("../client");
|
|
5
|
+
class AppsResource {
|
|
6
|
+
constructor(client) {
|
|
7
|
+
this.client = client;
|
|
8
|
+
}
|
|
9
|
+
async list() {
|
|
10
|
+
const data = await this.client.get('/sdk/apps');
|
|
11
|
+
return data.apps;
|
|
12
|
+
}
|
|
13
|
+
async get(id) {
|
|
14
|
+
const data = await this.client.get(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}`);
|
|
15
|
+
return data.app;
|
|
16
|
+
}
|
|
17
|
+
async create(opts) {
|
|
18
|
+
const data = await this.client.post('/sdk/apps', opts);
|
|
19
|
+
return data.app;
|
|
20
|
+
}
|
|
21
|
+
async commit(id, file, filename = 'app.zip') {
|
|
22
|
+
return this.client.upload(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/upload`, file, filename);
|
|
23
|
+
}
|
|
24
|
+
async commitAndWait(id, file, filename = 'app.zip', opts = {}) {
|
|
25
|
+
const { deploymentId } = await this.commit(id, file, filename);
|
|
26
|
+
return this.waitForDeployment(id, deploymentId, opts);
|
|
27
|
+
}
|
|
28
|
+
async deploy(id) {
|
|
29
|
+
return this.client.post(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/deploy`);
|
|
30
|
+
}
|
|
31
|
+
async deployAndWait(id, opts = {}) {
|
|
32
|
+
const { deploymentId } = await this.deploy(id);
|
|
33
|
+
return this.waitForDeployment(id, deploymentId, opts);
|
|
34
|
+
}
|
|
35
|
+
async start(id) {
|
|
36
|
+
return this.client.post(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/start`);
|
|
37
|
+
}
|
|
38
|
+
async stop(id) {
|
|
39
|
+
return this.client.post(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/stop`);
|
|
40
|
+
}
|
|
41
|
+
async logs(id) {
|
|
42
|
+
return this.client.get(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/logs`);
|
|
43
|
+
}
|
|
44
|
+
async deployments(id) {
|
|
45
|
+
const data = await this.client.get(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/deployments`);
|
|
46
|
+
return data.deployments;
|
|
47
|
+
}
|
|
48
|
+
async deploymentLogs(id, deploymentId) {
|
|
49
|
+
return this.client.get(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/deployments/${(0, client_1.encodePathSegment)(deploymentId)}/logs`);
|
|
50
|
+
}
|
|
51
|
+
async waitForDeployment(id, deploymentId, opts = {}) {
|
|
52
|
+
const intervalMs = Math.max(500, opts.intervalMs ?? 3000);
|
|
53
|
+
const timeoutMs = opts.timeoutMs ?? 30 * 60 * 1000;
|
|
54
|
+
const deadline = Date.now() + timeoutMs;
|
|
55
|
+
const terminal = new Set(['success', 'error', 'cancelled']);
|
|
56
|
+
let printed = 0;
|
|
57
|
+
let lastStatus = '';
|
|
58
|
+
while (Date.now() < deadline) {
|
|
59
|
+
const logs = await this.deploymentLogs(id, deploymentId);
|
|
60
|
+
if (opts.onLog && logs.log.length > printed) {
|
|
61
|
+
opts.onLog(logs.log.slice(printed), logs);
|
|
62
|
+
printed = logs.log.length;
|
|
63
|
+
}
|
|
64
|
+
if (opts.onStatus && logs.status !== lastStatus) {
|
|
65
|
+
opts.onStatus(logs.status, logs);
|
|
66
|
+
lastStatus = logs.status;
|
|
67
|
+
}
|
|
68
|
+
if (terminal.has(logs.status))
|
|
69
|
+
return logs;
|
|
70
|
+
await new Promise((resolve) => setTimeout(resolve, intervalMs));
|
|
71
|
+
}
|
|
72
|
+
throw new Error(`Deployment ${deploymentId} did not finish within ${timeoutMs}ms`);
|
|
73
|
+
}
|
|
74
|
+
async setEnv(id, envVars) {
|
|
75
|
+
const data = await this.client.patch(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/env`, { envVars });
|
|
76
|
+
return data.app;
|
|
77
|
+
}
|
|
78
|
+
async listFiles(id, path = '/app') {
|
|
79
|
+
return this.client.get(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/files`, { path });
|
|
80
|
+
}
|
|
81
|
+
async readFile(id, path) {
|
|
82
|
+
return this.client.get(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/files/read`, { path });
|
|
83
|
+
}
|
|
84
|
+
async writeFile(id, path, content) {
|
|
85
|
+
return this.client.post(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/files`, { path, content });
|
|
86
|
+
}
|
|
87
|
+
async deleteFile(id, path) {
|
|
88
|
+
return this.client.delete(`/sdk/apps/${(0, client_1.encodePathSegment)(id)}/files`, { path });
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
exports.AppsResource = AppsResource;
|
|
92
|
+
//# sourceMappingURL=apps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apps.js","sourceRoot":"","sources":["../../src/resources/apps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { NivoClient } from '../client';
|
|
2
|
+
export interface Database {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
projectId: string;
|
|
6
|
+
host: string;
|
|
7
|
+
port: number;
|
|
8
|
+
dbName: string;
|
|
9
|
+
engine: string;
|
|
10
|
+
ramMb: number;
|
|
11
|
+
status: string;
|
|
12
|
+
visualizerPort: number | null;
|
|
13
|
+
createdAt: string;
|
|
14
|
+
}
|
|
15
|
+
export interface DatabaseWithConnection extends Database {
|
|
16
|
+
connectionString: string;
|
|
17
|
+
}
|
|
18
|
+
export interface QueryResult {
|
|
19
|
+
rows: Record<string, unknown>[];
|
|
20
|
+
fields: {
|
|
21
|
+
name: string;
|
|
22
|
+
dataTypeID: number;
|
|
23
|
+
}[];
|
|
24
|
+
rowCount: number;
|
|
25
|
+
command: string;
|
|
26
|
+
duration: number;
|
|
27
|
+
}
|
|
28
|
+
export interface TableInfo {
|
|
29
|
+
name: string;
|
|
30
|
+
row_count: number;
|
|
31
|
+
}
|
|
32
|
+
export interface TableColumn {
|
|
33
|
+
name: string;
|
|
34
|
+
type: string;
|
|
35
|
+
nullable: boolean;
|
|
36
|
+
default_value: string | null;
|
|
37
|
+
is_primary: boolean;
|
|
38
|
+
}
|
|
39
|
+
export interface TableRowsResult {
|
|
40
|
+
columns: TableColumn[];
|
|
41
|
+
rows: Record<string, unknown>[];
|
|
42
|
+
total: number;
|
|
43
|
+
page: number;
|
|
44
|
+
limit: number;
|
|
45
|
+
}
|
|
46
|
+
export interface CreateDatabaseOptions {
|
|
47
|
+
name: string;
|
|
48
|
+
password: string;
|
|
49
|
+
engine?: 'postgresql' | 'mysql' | 'mongodb' | 'redis';
|
|
50
|
+
ramMb?: number;
|
|
51
|
+
}
|
|
52
|
+
export interface TableRowsOptions {
|
|
53
|
+
page?: number;
|
|
54
|
+
limit?: number;
|
|
55
|
+
sortCol?: string;
|
|
56
|
+
sortDir?: 'asc' | 'desc';
|
|
57
|
+
}
|
|
58
|
+
export interface UpdateRowOptions {
|
|
59
|
+
pkColumn: string;
|
|
60
|
+
column: string;
|
|
61
|
+
value: unknown;
|
|
62
|
+
}
|
|
63
|
+
export interface DeleteRowsOptions {
|
|
64
|
+
pkColumn: string;
|
|
65
|
+
pkValues: unknown[];
|
|
66
|
+
}
|
|
67
|
+
export declare class DatabasesResource {
|
|
68
|
+
private readonly client;
|
|
69
|
+
constructor(client: NivoClient);
|
|
70
|
+
list(): Promise<Database[]>;
|
|
71
|
+
get(id: string): Promise<Database>;
|
|
72
|
+
create(opts: CreateDatabaseOptions): Promise<DatabaseWithConnection>;
|
|
73
|
+
query(id: string, sql: string): Promise<QueryResult>;
|
|
74
|
+
tables(id: string): Promise<TableInfo[]>;
|
|
75
|
+
tableRows(id: string, table: string, opts?: TableRowsOptions): Promise<TableRowsResult>;
|
|
76
|
+
insertRow(id: string, table: string, row: Record<string, unknown>): Promise<Record<string, unknown>>;
|
|
77
|
+
updateRow(id: string, table: string, pkValue: string | number, opts: UpdateRowOptions): Promise<Record<string, unknown>>;
|
|
78
|
+
deleteRows(id: string, table: string, opts: DeleteRowsOptions): Promise<{
|
|
79
|
+
deleted: number;
|
|
80
|
+
}>;
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=databases.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"databases.d.ts","sourceRoot":"","sources":["../../src/resources/databases.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DatabasesResource = void 0;
|
|
4
|
+
const client_1 = require("../client");
|
|
5
|
+
class DatabasesResource {
|
|
6
|
+
constructor(client) {
|
|
7
|
+
this.client = client;
|
|
8
|
+
}
|
|
9
|
+
async list() {
|
|
10
|
+
const data = await this.client.get('/sdk/databases');
|
|
11
|
+
return data.databases;
|
|
12
|
+
}
|
|
13
|
+
async get(id) {
|
|
14
|
+
const data = await this.client.get(`/sdk/databases/${(0, client_1.encodePathSegment)(id)}`);
|
|
15
|
+
return data.database;
|
|
16
|
+
}
|
|
17
|
+
async create(opts) {
|
|
18
|
+
const data = await this.client.post('/sdk/databases', opts);
|
|
19
|
+
return data.database;
|
|
20
|
+
}
|
|
21
|
+
async query(id, sql) {
|
|
22
|
+
return this.client.post(`/sdk/databases/${(0, client_1.encodePathSegment)(id)}/query`, { sql });
|
|
23
|
+
}
|
|
24
|
+
async tables(id) {
|
|
25
|
+
const data = await this.client.get(`/sdk/databases/${(0, client_1.encodePathSegment)(id)}/tables`);
|
|
26
|
+
return data.tables;
|
|
27
|
+
}
|
|
28
|
+
async tableRows(id, table, opts = {}) {
|
|
29
|
+
return this.client.get(`/sdk/databases/${(0, client_1.encodePathSegment)(id)}/tables/${(0, client_1.encodePathSegment)(table)}`, {
|
|
30
|
+
page: opts.page?.toString(),
|
|
31
|
+
limit: opts.limit?.toString(),
|
|
32
|
+
sortCol: opts.sortCol,
|
|
33
|
+
sortDir: opts.sortDir,
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
async insertRow(id, table, row) {
|
|
37
|
+
return this.client.post(`/sdk/databases/${(0, client_1.encodePathSegment)(id)}/tables/${(0, client_1.encodePathSegment)(table)}/rows`, { row });
|
|
38
|
+
}
|
|
39
|
+
async updateRow(id, table, pkValue, opts) {
|
|
40
|
+
return this.client.patch(`/sdk/databases/${(0, client_1.encodePathSegment)(id)}/tables/${(0, client_1.encodePathSegment)(table)}/rows/${(0, client_1.encodePathSegment)(pkValue)}`, opts);
|
|
41
|
+
}
|
|
42
|
+
async deleteRows(id, table, opts) {
|
|
43
|
+
return this.client.deleteWithBody(`/sdk/databases/${(0, client_1.encodePathSegment)(id)}/tables/${(0, client_1.encodePathSegment)(table)}/rows`, opts);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
exports.DatabasesResource = DatabasesResource;
|
|
47
|
+
//# sourceMappingURL=databases.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"databases.js","sourceRoot":"","sources":["../../src/resources/databases.ts"],"names":[],"mappings":";;;AAAA,sCAAgE;AA0EhE,MAAa,iBAAiB;IAC5B,YAA6B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;IAAG,CAAC;IAEnD,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAA4B,gBAAgB,CAAC,CAAA;QAC/E,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAU;QAClB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAyB,kBAAkB,IAAA,0BAAG,EAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QACvF,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAA2B;QACtC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAuC,gBAAgB,EAAE,IAAI,CAAC,CAAA;QACjG,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EAAU,EAAE,GAAW;QACjC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAc,kBAAkB,IAAA,0BAAG,EAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;IAClF,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAA0B,kBAAkB,IAAA,0BAAG,EAAC,EAAE,CAAC,SAAS,CAAC,CAAA;QAC/F,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,KAAa,EAAE,OAAyB,EAAE;QACpE,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAkB,kBAAkB,IAAA,0BAAG,EAAC,EAAE,CAAC,WAAW,IAAA,0BAAG,EAAC,KAAK,CAAC,EAAE,EAAE;YACxF,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE;YAC3B,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,KAAa,EAAE,GAA4B;QACrE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAA0B,kBAAkB,IAAA,0BAAG,EAAC,EAAE,CAAC,WAAW,IAAA,0BAAG,EAAC,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;IAClH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,KAAa,EAAE,OAAwB,EAAE,IAAsB;QACzF,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAA0B,kBAAkB,IAAA,0BAAG,EAAC,EAAE,CAAC,WAAW,IAAA,0BAAG,EAAC,KAAK,CAAC,SAAS,IAAA,0BAAG,EAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAChI,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAU,EAAE,KAAa,EAAE,IAAuB;QACjE,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAsB,kBAAkB,IAAA,0BAAG,EAAC,EAAE,CAAC,WAAW,IAAA,0BAAG,EAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IACrH,CAAC;CACF;AA/CD,8CA+CC"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { NivoClient } from '../client';
|
|
2
|
+
import { Readable } from 'stream';
|
|
3
|
+
export interface StorageBucket {
|
|
4
|
+
id: string;
|
|
5
|
+
projectId: string;
|
|
6
|
+
name: string;
|
|
7
|
+
public: boolean;
|
|
8
|
+
fileSizeLimit: number | null;
|
|
9
|
+
allowedMimeTypes: string[];
|
|
10
|
+
corsOrigins: string[];
|
|
11
|
+
corsMethods: string[];
|
|
12
|
+
cacheControl: string;
|
|
13
|
+
customDomain: string | null;
|
|
14
|
+
customDomainStatus: string | null;
|
|
15
|
+
createdAt: string;
|
|
16
|
+
updatedAt: string;
|
|
17
|
+
}
|
|
18
|
+
export interface StorageFile {
|
|
19
|
+
id: string;
|
|
20
|
+
projectId: string;
|
|
21
|
+
bucketId: string | null;
|
|
22
|
+
key: string;
|
|
23
|
+
filename: string;
|
|
24
|
+
sizeBytes: number;
|
|
25
|
+
mimeType: string;
|
|
26
|
+
expiresAt: string | null;
|
|
27
|
+
createdAt: string;
|
|
28
|
+
url?: string;
|
|
29
|
+
}
|
|
30
|
+
export interface StorageStats {
|
|
31
|
+
usedBytes: number;
|
|
32
|
+
totalFiles: number;
|
|
33
|
+
limitBytes: number;
|
|
34
|
+
bucketCount?: number;
|
|
35
|
+
}
|
|
36
|
+
export interface CreateBucketOptions {
|
|
37
|
+
name: string;
|
|
38
|
+
public?: boolean;
|
|
39
|
+
fileSizeLimit?: number;
|
|
40
|
+
allowedMimeTypes?: string[];
|
|
41
|
+
corsOrigins?: string[];
|
|
42
|
+
corsMethods?: string[];
|
|
43
|
+
cacheControl?: string;
|
|
44
|
+
}
|
|
45
|
+
export interface UpdateBucketOptions {
|
|
46
|
+
public?: boolean;
|
|
47
|
+
fileSizeLimit?: number | null;
|
|
48
|
+
allowedMimeTypes?: string[];
|
|
49
|
+
corsOrigins?: string[];
|
|
50
|
+
corsMethods?: string[];
|
|
51
|
+
cacheControl?: string;
|
|
52
|
+
customDomain?: string | null;
|
|
53
|
+
}
|
|
54
|
+
export interface UploadToBucketOptions {
|
|
55
|
+
filename?: string;
|
|
56
|
+
mimeType?: string;
|
|
57
|
+
folder?: string;
|
|
58
|
+
}
|
|
59
|
+
export interface ListFilesOptions {
|
|
60
|
+
search?: string;
|
|
61
|
+
page?: number;
|
|
62
|
+
limit?: number;
|
|
63
|
+
}
|
|
64
|
+
export interface CdnFile {
|
|
65
|
+
id: string;
|
|
66
|
+
projectId: string;
|
|
67
|
+
key: string;
|
|
68
|
+
filename: string;
|
|
69
|
+
sizeBytes: number;
|
|
70
|
+
mimeType: string;
|
|
71
|
+
expiresAt: string | null;
|
|
72
|
+
createdAt: string;
|
|
73
|
+
url: string;
|
|
74
|
+
}
|
|
75
|
+
export interface CdnStats {
|
|
76
|
+
usedBytes: number;
|
|
77
|
+
totalFiles: number;
|
|
78
|
+
limitBytes: number;
|
|
79
|
+
computeTier: string;
|
|
80
|
+
}
|
|
81
|
+
export interface CdnUploadOptions {
|
|
82
|
+
filename?: string;
|
|
83
|
+
folder?: string;
|
|
84
|
+
}
|
|
85
|
+
declare class BucketsResource {
|
|
86
|
+
private readonly client;
|
|
87
|
+
constructor(client: NivoClient);
|
|
88
|
+
list(): Promise<StorageBucket[]>;
|
|
89
|
+
create(opts: CreateBucketOptions): Promise<StorageBucket>;
|
|
90
|
+
get(id: string): Promise<StorageBucket>;
|
|
91
|
+
update(id: string, opts: UpdateBucketOptions): Promise<StorageBucket>;
|
|
92
|
+
delete(id: string): Promise<{
|
|
93
|
+
ok: boolean;
|
|
94
|
+
}>;
|
|
95
|
+
files(id: string, opts?: ListFilesOptions): Promise<StorageFile[]>;
|
|
96
|
+
upload(id: string, file: Buffer | string | Readable, opts?: UploadToBucketOptions): Promise<{
|
|
97
|
+
file: StorageFile;
|
|
98
|
+
}>;
|
|
99
|
+
}
|
|
100
|
+
declare class FilesResource {
|
|
101
|
+
private readonly client;
|
|
102
|
+
constructor(client: NivoClient);
|
|
103
|
+
delete(id: string): Promise<{
|
|
104
|
+
ok: boolean;
|
|
105
|
+
}>;
|
|
106
|
+
signedUrl(id: string, ttlSeconds?: number): Promise<{
|
|
107
|
+
url: string;
|
|
108
|
+
expiresAt: number;
|
|
109
|
+
}>;
|
|
110
|
+
}
|
|
111
|
+
declare class CdnResource {
|
|
112
|
+
private readonly client;
|
|
113
|
+
constructor(client: NivoClient);
|
|
114
|
+
stats(): Promise<CdnStats>;
|
|
115
|
+
files(): Promise<CdnFile[]>;
|
|
116
|
+
get(id: string): Promise<CdnFile>;
|
|
117
|
+
upload(file: Buffer | string | Readable, opts?: CdnUploadOptions): Promise<{
|
|
118
|
+
file: CdnFile;
|
|
119
|
+
}>;
|
|
120
|
+
delete(id: string): Promise<{
|
|
121
|
+
ok: boolean;
|
|
122
|
+
}>;
|
|
123
|
+
}
|
|
124
|
+
export declare class StorageResource {
|
|
125
|
+
private readonly client;
|
|
126
|
+
readonly buckets: BucketsResource;
|
|
127
|
+
readonly files: FilesResource;
|
|
128
|
+
readonly cdn: CdnResource;
|
|
129
|
+
constructor(client: NivoClient);
|
|
130
|
+
stats(): Promise<StorageStats>;
|
|
131
|
+
}
|
|
132
|
+
export {};
|
|
133
|
+
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/resources/storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StorageResource = void 0;
|
|
4
|
+
const client_1 = require("../client");
|
|
5
|
+
class BucketsResource {
|
|
6
|
+
constructor(client) {
|
|
7
|
+
this.client = client;
|
|
8
|
+
}
|
|
9
|
+
async list() {
|
|
10
|
+
const data = await this.client.get('/storage/buckets');
|
|
11
|
+
return data.buckets;
|
|
12
|
+
}
|
|
13
|
+
async create(opts) {
|
|
14
|
+
const data = await this.client.post('/storage/buckets', opts);
|
|
15
|
+
return data.bucket;
|
|
16
|
+
}
|
|
17
|
+
async get(id) {
|
|
18
|
+
const data = await this.client.get(`/storage/buckets/${(0, client_1.encodePathSegment)(id)}`);
|
|
19
|
+
return data.bucket;
|
|
20
|
+
}
|
|
21
|
+
async update(id, opts) {
|
|
22
|
+
const data = await this.client.patch(`/storage/buckets/${(0, client_1.encodePathSegment)(id)}`, opts);
|
|
23
|
+
return data.bucket;
|
|
24
|
+
}
|
|
25
|
+
async delete(id) {
|
|
26
|
+
return this.client.delete(`/storage/buckets/${(0, client_1.encodePathSegment)(id)}`);
|
|
27
|
+
}
|
|
28
|
+
async files(id, opts = {}) {
|
|
29
|
+
const data = await this.client.get(`/storage/buckets/${(0, client_1.encodePathSegment)(id)}/files`, {
|
|
30
|
+
search: opts.search,
|
|
31
|
+
page: opts.page?.toString(),
|
|
32
|
+
limit: opts.limit?.toString(),
|
|
33
|
+
});
|
|
34
|
+
return data.files;
|
|
35
|
+
}
|
|
36
|
+
async upload(id, file, opts = {}) {
|
|
37
|
+
const filename = opts.filename ?? 'upload';
|
|
38
|
+
return this.client.upload(`/storage/buckets/${(0, client_1.encodePathSegment)(id)}/upload`, file, filename, 'file', opts.folder ? { folder: opts.folder } : undefined);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
class FilesResource {
|
|
42
|
+
constructor(client) {
|
|
43
|
+
this.client = client;
|
|
44
|
+
}
|
|
45
|
+
async delete(id) {
|
|
46
|
+
return this.client.delete(`/storage/files/${(0, client_1.encodePathSegment)(id)}`);
|
|
47
|
+
}
|
|
48
|
+
async signedUrl(id, ttlSeconds = 3600) {
|
|
49
|
+
return this.client.post(`/storage/files/${(0, client_1.encodePathSegment)(id)}/signed-url`, { ttlSeconds });
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
class CdnResource {
|
|
53
|
+
constructor(client) {
|
|
54
|
+
this.client = client;
|
|
55
|
+
}
|
|
56
|
+
async stats() {
|
|
57
|
+
return this.client.get('/cdn/stats');
|
|
58
|
+
}
|
|
59
|
+
async files() {
|
|
60
|
+
const data = await this.client.get('/cdn/files');
|
|
61
|
+
return data.files;
|
|
62
|
+
}
|
|
63
|
+
async get(id) {
|
|
64
|
+
return this.client.get(`/cdn/files/${(0, client_1.encodePathSegment)(id)}`);
|
|
65
|
+
}
|
|
66
|
+
async upload(file, opts = {}) {
|
|
67
|
+
const filename = opts.filename ?? 'upload';
|
|
68
|
+
return this.client.upload('/cdn/upload', file, filename, 'file', opts.folder ? { folder: opts.folder } : undefined);
|
|
69
|
+
}
|
|
70
|
+
async delete(id) {
|
|
71
|
+
return this.client.delete(`/cdn/files/${(0, client_1.encodePathSegment)(id)}`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
class StorageResource {
|
|
75
|
+
constructor(client) {
|
|
76
|
+
this.client = client;
|
|
77
|
+
this.buckets = new BucketsResource(client);
|
|
78
|
+
this.files = new FilesResource(client);
|
|
79
|
+
this.cdn = new CdnResource(client);
|
|
80
|
+
}
|
|
81
|
+
async stats() {
|
|
82
|
+
return this.client.get('/storage/stats');
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
exports.StorageResource = StorageResource;
|
|
86
|
+
//# sourceMappingURL=storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/resources/storage.ts"],"names":[],"mappings":"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"}
|