@wacht/backend 1.0.0-beta.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/LICENSE.md +19 -0
- package/README.md +94 -0
- package/dist/api/ai.d.ts +157 -0
- package/dist/api/ai.d.ts.map +1 -0
- package/dist/api/ai.js +300 -0
- package/dist/api/ai.js.map +1 -0
- package/dist/api/analytics.d.ts +21 -0
- package/dist/api/analytics.d.ts.map +1 -0
- package/dist/api/analytics.js +40 -0
- package/dist/api/analytics.js.map +1 -0
- package/dist/api/api-keys.d.ts +43 -0
- package/dist/api/api-keys.d.ts.map +1 -0
- package/dist/api/api-keys.js +84 -0
- package/dist/api/api-keys.js.map +1 -0
- package/dist/api/gateway.d.ts +66 -0
- package/dist/api/gateway.d.ts.map +1 -0
- package/dist/api/gateway.js +177 -0
- package/dist/api/gateway.js.map +1 -0
- package/dist/api/health.d.ts +8 -0
- package/dist/api/health.d.ts.map +1 -0
- package/dist/api/health.js +12 -0
- package/dist/api/health.js.map +1 -0
- package/dist/api/invitations.d.ts +35 -0
- package/dist/api/invitations.d.ts.map +1 -0
- package/dist/api/invitations.js +76 -0
- package/dist/api/invitations.js.map +1 -0
- package/dist/api/notifications.d.ts +27 -0
- package/dist/api/notifications.d.ts.map +1 -0
- package/dist/api/notifications.js +56 -0
- package/dist/api/notifications.js.map +1 -0
- package/dist/api/organizations.d.ts +59 -0
- package/dist/api/organizations.d.ts.map +1 -0
- package/dist/api/organizations.js +125 -0
- package/dist/api/organizations.js.map +1 -0
- package/dist/api/segments.d.ts +64 -0
- package/dist/api/segments.d.ts.map +1 -0
- package/dist/api/segments.js +101 -0
- package/dist/api/segments.js.map +1 -0
- package/dist/api/settings.d.ts +98 -0
- package/dist/api/settings.d.ts.map +1 -0
- package/dist/api/settings.js +132 -0
- package/dist/api/settings.js.map +1 -0
- package/dist/api/users.d.ts +67 -0
- package/dist/api/users.d.ts.map +1 -0
- package/dist/api/users.js +135 -0
- package/dist/api/users.js.map +1 -0
- package/dist/api/utility.d.ts +9 -0
- package/dist/api/utility.d.ts.map +1 -0
- package/dist/api/utility.js +19 -0
- package/dist/api/utility.js.map +1 -0
- package/dist/api/webhooks.d.ts +106 -0
- package/dist/api/webhooks.d.ts.map +1 -0
- package/dist/api/webhooks.js +209 -0
- package/dist/api/webhooks.js.map +1 -0
- package/dist/api/workspaces.d.ts +57 -0
- package/dist/api/workspaces.d.ts.map +1 -0
- package/dist/api/workspaces.js +122 -0
- package/dist/api/workspaces.js.map +1 -0
- package/dist/client.d.ts +148 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +299 -0
- package/dist/client.js.map +1 -0
- package/dist/error.d.ts +63 -0
- package/dist/error.d.ts.map +1 -0
- package/dist/error.js +117 -0
- package/dist/error.js.map +1 -0
- package/dist/index.d.ts +98 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +116 -0
- package/dist/index.js.map +1 -0
- package/dist/jwt.d.ts +1 -0
- package/dist/jwt.d.ts.map +1 -0
- package/dist/jwt.js +2 -0
- package/dist/jwt.js.map +1 -0
- package/dist/models/ai.d.ts +218 -0
- package/dist/models/ai.d.ts.map +1 -0
- package/dist/models/ai.js +3 -0
- package/dist/models/ai.js.map +1 -0
- package/dist/models/analytics.d.ts +33 -0
- package/dist/models/analytics.d.ts.map +1 -0
- package/dist/models/analytics.js +3 -0
- package/dist/models/analytics.js.map +1 -0
- package/dist/models/api-key.d.ts +161 -0
- package/dist/models/api-key.d.ts.map +1 -0
- package/dist/models/api-key.js +3 -0
- package/dist/models/api-key.js.map +1 -0
- package/dist/models/b2b-settings.d.ts +54 -0
- package/dist/models/b2b-settings.d.ts.map +1 -0
- package/dist/models/b2b-settings.js +3 -0
- package/dist/models/b2b-settings.js.map +1 -0
- package/dist/models/deployment-restrictions.d.ts +60 -0
- package/dist/models/deployment-restrictions.d.ts.map +1 -0
- package/dist/models/deployment-restrictions.js +3 -0
- package/dist/models/deployment-restrictions.js.map +1 -0
- package/dist/models/index.d.ts +51 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +32 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/jwt-template.d.ts +49 -0
- package/dist/models/jwt-template.d.ts.map +1 -0
- package/dist/models/jwt-template.js +3 -0
- package/dist/models/jwt-template.js.map +1 -0
- package/dist/models/notification.d.ts +58 -0
- package/dist/models/notification.d.ts.map +1 -0
- package/dist/models/notification.js +3 -0
- package/dist/models/notification.js.map +1 -0
- package/dist/models/organization.d.ts +93 -0
- package/dist/models/organization.d.ts.map +1 -0
- package/dist/models/organization.js +3 -0
- package/dist/models/organization.js.map +1 -0
- package/dist/models/segment.d.ts +44 -0
- package/dist/models/segment.d.ts.map +1 -0
- package/dist/models/segment.js +3 -0
- package/dist/models/segment.js.map +1 -0
- package/dist/models/user.d.ts +177 -0
- package/dist/models/user.d.ts.map +1 -0
- package/dist/models/user.js +3 -0
- package/dist/models/user.js.map +1 -0
- package/dist/models/webhook.d.ts +194 -0
- package/dist/models/webhook.d.ts.map +1 -0
- package/dist/models/webhook.js +3 -0
- package/dist/models/webhook.js.map +1 -0
- package/dist/models/workspace.d.ts +93 -0
- package/dist/models/workspace.d.ts.map +1 -0
- package/dist/models/workspace.js +3 -0
- package/dist/models/workspace.js.map +1 -0
- package/dist/server-auth.d.ts +84 -0
- package/dist/server-auth.d.ts.map +1 -0
- package/dist/server-auth.js +405 -0
- package/dist/server-auth.js.map +1 -0
- package/package.json +45 -0
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.listWorkspaces = listWorkspaces;
|
|
4
|
+
exports.getWorkspace = getWorkspace;
|
|
5
|
+
exports.createWorkspace = createWorkspace;
|
|
6
|
+
exports.updateWorkspace = updateWorkspace;
|
|
7
|
+
exports.deleteWorkspace = deleteWorkspace;
|
|
8
|
+
exports.listWorkspaceMembers = listWorkspaceMembers;
|
|
9
|
+
exports.addWorkspaceMember = addWorkspaceMember;
|
|
10
|
+
exports.updateWorkspaceMember = updateWorkspaceMember;
|
|
11
|
+
exports.removeWorkspaceMember = removeWorkspaceMember;
|
|
12
|
+
exports.listWorkspaceRoles = listWorkspaceRoles;
|
|
13
|
+
exports.createWorkspaceRole = createWorkspaceRole;
|
|
14
|
+
exports.updateWorkspaceRole = updateWorkspaceRole;
|
|
15
|
+
exports.deleteWorkspaceRole = deleteWorkspaceRole;
|
|
16
|
+
const client_1 = require("../client");
|
|
17
|
+
/**
|
|
18
|
+
* List workspaces
|
|
19
|
+
*/
|
|
20
|
+
async function listWorkspaces(options, client) {
|
|
21
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
22
|
+
const params = new URLSearchParams();
|
|
23
|
+
if (options?.limit)
|
|
24
|
+
params.append("limit", String(options.limit));
|
|
25
|
+
if (options?.offset !== undefined)
|
|
26
|
+
params.append("offset", String(options.offset));
|
|
27
|
+
if (options?.organization_id)
|
|
28
|
+
params.append("organization_id", options.organization_id);
|
|
29
|
+
const queryString = params.toString();
|
|
30
|
+
return sdkClient.get(`/workspaces${queryString ? `?${queryString}` : ""}`);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Get a workspace by ID
|
|
34
|
+
*/
|
|
35
|
+
async function getWorkspace(workspaceId, client) {
|
|
36
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
37
|
+
return sdkClient.get(`/workspaces/${workspaceId}`);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Create a workspace
|
|
41
|
+
*/
|
|
42
|
+
async function createWorkspace(request, client) {
|
|
43
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
44
|
+
return sdkClient.post("/workspaces", request);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Update a workspace
|
|
48
|
+
*/
|
|
49
|
+
async function updateWorkspace(workspaceId, request, client) {
|
|
50
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
51
|
+
return sdkClient.patch(`/workspaces/${workspaceId}`, request);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Delete a workspace
|
|
55
|
+
*/
|
|
56
|
+
async function deleteWorkspace(workspaceId, client) {
|
|
57
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
58
|
+
return sdkClient.delete(`/workspaces/${workspaceId}`);
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* List workspace members
|
|
62
|
+
*/
|
|
63
|
+
async function listWorkspaceMembers(workspaceId, options, client) {
|
|
64
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
65
|
+
const params = options
|
|
66
|
+
? `?limit=${options.limit || 50}&offset=${options.offset || 0}`
|
|
67
|
+
: "";
|
|
68
|
+
return sdkClient.get(`/workspaces/${workspaceId}/members${params}`);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Add a member to a workspace
|
|
72
|
+
*/
|
|
73
|
+
async function addWorkspaceMember(workspaceId, request, client) {
|
|
74
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
75
|
+
return sdkClient.post(`/workspaces/${workspaceId}/members`, request);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Update a workspace member
|
|
79
|
+
*/
|
|
80
|
+
async function updateWorkspaceMember(workspaceId, memberId, request, client) {
|
|
81
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
82
|
+
return sdkClient.patch(`/workspaces/${workspaceId}/members/${memberId}`, request);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Remove a member from a workspace
|
|
86
|
+
*/
|
|
87
|
+
async function removeWorkspaceMember(workspaceId, memberId, client) {
|
|
88
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
89
|
+
return sdkClient.delete(`/workspaces/${workspaceId}/members/${memberId}`);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* List workspace roles
|
|
93
|
+
*/
|
|
94
|
+
async function listWorkspaceRoles(workspaceId, options, client) {
|
|
95
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
96
|
+
const params = options
|
|
97
|
+
? `?limit=${options.limit || 50}&offset=${options.offset || 0}`
|
|
98
|
+
: "";
|
|
99
|
+
return sdkClient.get(`/workspaces/${workspaceId}/roles${params}`);
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Create a workspace role
|
|
103
|
+
*/
|
|
104
|
+
async function createWorkspaceRole(workspaceId, request, client) {
|
|
105
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
106
|
+
return sdkClient.post(`/workspaces/${workspaceId}/roles`, request);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Update a workspace role
|
|
110
|
+
*/
|
|
111
|
+
async function updateWorkspaceRole(workspaceId, roleId, request, client) {
|
|
112
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
113
|
+
return sdkClient.patch(`/workspaces/${workspaceId}/roles/${roleId}`, request);
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Delete a workspace role
|
|
117
|
+
*/
|
|
118
|
+
async function deleteWorkspaceRole(workspaceId, roleId, client) {
|
|
119
|
+
const sdkClient = client ?? (0, client_1.getClient)();
|
|
120
|
+
return sdkClient.delete(`/workspaces/${workspaceId}/roles/${roleId}`);
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=workspaces.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspaces.js","sourceRoot":"","sources":["../../src/api/workspaces.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import * as usersApi from './api/users';
|
|
2
|
+
import * as organizationsApi from './api/organizations';
|
|
3
|
+
import * as workspacesApi from './api/workspaces';
|
|
4
|
+
import * as apiKeysApi from './api/api-keys';
|
|
5
|
+
import * as settingsApi from './api/settings';
|
|
6
|
+
import * as notificationsApi from './api/notifications';
|
|
7
|
+
import * as webhooksApi from './api/webhooks';
|
|
8
|
+
import * as aiApi from './api/ai';
|
|
9
|
+
import * as segmentsApi from './api/segments';
|
|
10
|
+
import * as invitationsApi from './api/invitations';
|
|
11
|
+
import * as analyticsApi from './api/analytics';
|
|
12
|
+
import * as utilityApi from './api/utility';
|
|
13
|
+
import * as healthApi from './api/health';
|
|
14
|
+
import * as gatewayApi from './api/gateway';
|
|
15
|
+
/**
|
|
16
|
+
* Configuration options for the Wacht SDK client
|
|
17
|
+
*/
|
|
18
|
+
export interface WachtConfig {
|
|
19
|
+
/** Optional logical name for this client */
|
|
20
|
+
name?: string;
|
|
21
|
+
/** Base URL of the Wacht API (default: https://api.wacht.io) */
|
|
22
|
+
baseUrl?: string;
|
|
23
|
+
/** API key for authentication */
|
|
24
|
+
apiKey: string;
|
|
25
|
+
/** Request timeout in milliseconds (default: 30000) */
|
|
26
|
+
timeout?: number;
|
|
27
|
+
/** Additional headers to include in all requests */
|
|
28
|
+
headers?: Record<string, string>;
|
|
29
|
+
/** Optional fetch implementation (useful for Node 16 or custom runtimes) */
|
|
30
|
+
fetch?: typeof fetch;
|
|
31
|
+
/** Optional named store to register this client in */
|
|
32
|
+
store?: WachtClientStore;
|
|
33
|
+
}
|
|
34
|
+
export interface RequestConfig extends Omit<RequestInit, 'body'> {
|
|
35
|
+
/** Query params appended to URL */
|
|
36
|
+
params?: Record<string, string | number | boolean | null | undefined>;
|
|
37
|
+
/** Request timeout in milliseconds */
|
|
38
|
+
timeout?: number;
|
|
39
|
+
/** Request body */
|
|
40
|
+
body?: BodyInit | Record<string, unknown> | unknown;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Paginated response wrapper
|
|
44
|
+
*/
|
|
45
|
+
export interface PaginatedResponse<T> {
|
|
46
|
+
/** The data items */
|
|
47
|
+
data: T[];
|
|
48
|
+
/** Whether there are more items available */
|
|
49
|
+
has_more: boolean;
|
|
50
|
+
/** The limit used for this page */
|
|
51
|
+
limit?: number;
|
|
52
|
+
/** The offset used for this page */
|
|
53
|
+
offset?: number;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* List query options for pagination
|
|
57
|
+
*/
|
|
58
|
+
export interface ListOptions {
|
|
59
|
+
/** Maximum number of items to return */
|
|
60
|
+
limit?: number;
|
|
61
|
+
/** Number of items to skip */
|
|
62
|
+
offset?: number;
|
|
63
|
+
}
|
|
64
|
+
type AnyFn = (...args: any[]) => any;
|
|
65
|
+
type StripTrailingClientArg<F> = F extends (...args: infer A) => infer R ? A extends [...infer Rest, infer Last] ? Last extends WachtClient | undefined ? (...args: Rest) => R : (...args: A) => R : (...args: A) => R : never;
|
|
66
|
+
type BoundApi<T extends Record<string, AnyFn>> = {
|
|
67
|
+
[K in keyof T]: StripTrailingClientArg<T[K]>;
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* Wacht SDK Client
|
|
71
|
+
*/
|
|
72
|
+
export declare class WachtClient {
|
|
73
|
+
private readonly baseUrl;
|
|
74
|
+
private readonly defaultTimeout;
|
|
75
|
+
private readonly defaultHeaders;
|
|
76
|
+
private readonly fetchImpl?;
|
|
77
|
+
readonly name?: string;
|
|
78
|
+
readonly users: BoundApi<typeof usersApi>;
|
|
79
|
+
readonly organizations: BoundApi<typeof organizationsApi>;
|
|
80
|
+
readonly workspaces: BoundApi<typeof workspacesApi>;
|
|
81
|
+
readonly apiKeys: BoundApi<typeof apiKeysApi>;
|
|
82
|
+
readonly settings: BoundApi<typeof settingsApi>;
|
|
83
|
+
readonly notifications: BoundApi<typeof notificationsApi>;
|
|
84
|
+
readonly webhooks: BoundApi<typeof webhooksApi>;
|
|
85
|
+
readonly ai: BoundApi<typeof aiApi>;
|
|
86
|
+
readonly segments: BoundApi<typeof segmentsApi>;
|
|
87
|
+
readonly invitations: BoundApi<typeof invitationsApi>;
|
|
88
|
+
readonly analytics: BoundApi<typeof analyticsApi>;
|
|
89
|
+
readonly utility: BoundApi<typeof utilityApi>;
|
|
90
|
+
readonly health: BoundApi<typeof healthApi>;
|
|
91
|
+
readonly gateway: BoundApi<typeof gatewayApi>;
|
|
92
|
+
constructor(config: WachtConfig);
|
|
93
|
+
private bindApi;
|
|
94
|
+
private getFetch;
|
|
95
|
+
private buildUrl;
|
|
96
|
+
private normalizeBody;
|
|
97
|
+
private parseResponse;
|
|
98
|
+
private request;
|
|
99
|
+
/**
|
|
100
|
+
* Make a GET request
|
|
101
|
+
*/
|
|
102
|
+
get<T>(url: string, config?: RequestConfig): Promise<T>;
|
|
103
|
+
/**
|
|
104
|
+
* Make a POST request
|
|
105
|
+
*/
|
|
106
|
+
post<T>(url: string, data?: unknown, config?: RequestConfig): Promise<T>;
|
|
107
|
+
/**
|
|
108
|
+
* Make a PUT request
|
|
109
|
+
*/
|
|
110
|
+
put<T>(url: string, data?: unknown, config?: RequestConfig): Promise<T>;
|
|
111
|
+
/**
|
|
112
|
+
* Make a PATCH request
|
|
113
|
+
*/
|
|
114
|
+
patch<T>(url: string, data?: unknown, config?: RequestConfig): Promise<T>;
|
|
115
|
+
/**
|
|
116
|
+
* Make a DELETE request
|
|
117
|
+
*/
|
|
118
|
+
delete<T>(url: string, config?: RequestConfig): Promise<T>;
|
|
119
|
+
/**
|
|
120
|
+
* Get the base URL
|
|
121
|
+
*/
|
|
122
|
+
getBaseUrl(): string;
|
|
123
|
+
}
|
|
124
|
+
export declare class WachtClientStore {
|
|
125
|
+
private readonly clients;
|
|
126
|
+
register(name: string, client: WachtClient): void;
|
|
127
|
+
get(name: string): WachtClient;
|
|
128
|
+
has(name: string): boolean;
|
|
129
|
+
remove(name: string): boolean;
|
|
130
|
+
list(): string[];
|
|
131
|
+
clear(): void;
|
|
132
|
+
}
|
|
133
|
+
export declare function createClientStore(): WachtClientStore;
|
|
134
|
+
/**
|
|
135
|
+
* Initialize the global client
|
|
136
|
+
*/
|
|
137
|
+
export declare function initClient(config: WachtConfig): void;
|
|
138
|
+
/**
|
|
139
|
+
* Get the global client instance
|
|
140
|
+
* @throws {Error} If client has not been initialized
|
|
141
|
+
*/
|
|
142
|
+
export declare function getClient(): WachtClient;
|
|
143
|
+
/**
|
|
144
|
+
* Check if the global client has been initialized
|
|
145
|
+
*/
|
|
146
|
+
export declare function isClientInitialized(): boolean;
|
|
147
|
+
export {};
|
|
148
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
ADDED
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.WachtClientStore = exports.WachtClient = void 0;
|
|
37
|
+
exports.createClientStore = createClientStore;
|
|
38
|
+
exports.initClient = initClient;
|
|
39
|
+
exports.getClient = getClient;
|
|
40
|
+
exports.isClientInitialized = isClientInitialized;
|
|
41
|
+
const error_1 = require("./error");
|
|
42
|
+
const usersApi = __importStar(require("./api/users"));
|
|
43
|
+
const organizationsApi = __importStar(require("./api/organizations"));
|
|
44
|
+
const workspacesApi = __importStar(require("./api/workspaces"));
|
|
45
|
+
const apiKeysApi = __importStar(require("./api/api-keys"));
|
|
46
|
+
const settingsApi = __importStar(require("./api/settings"));
|
|
47
|
+
const notificationsApi = __importStar(require("./api/notifications"));
|
|
48
|
+
const webhooksApi = __importStar(require("./api/webhooks"));
|
|
49
|
+
const aiApi = __importStar(require("./api/ai"));
|
|
50
|
+
const segmentsApi = __importStar(require("./api/segments"));
|
|
51
|
+
const invitationsApi = __importStar(require("./api/invitations"));
|
|
52
|
+
const analyticsApi = __importStar(require("./api/analytics"));
|
|
53
|
+
const utilityApi = __importStar(require("./api/utility"));
|
|
54
|
+
const healthApi = __importStar(require("./api/health"));
|
|
55
|
+
const gatewayApi = __importStar(require("./api/gateway"));
|
|
56
|
+
/**
|
|
57
|
+
* Wacht SDK Client
|
|
58
|
+
*/
|
|
59
|
+
class WachtClient {
|
|
60
|
+
constructor(config) {
|
|
61
|
+
this.baseUrl = config.baseUrl || 'https://api.wacht.io';
|
|
62
|
+
this.defaultTimeout = config.timeout || 30000;
|
|
63
|
+
this.defaultHeaders = {
|
|
64
|
+
'Authorization': `Bearer ${config.apiKey}`,
|
|
65
|
+
...config.headers,
|
|
66
|
+
};
|
|
67
|
+
this.fetchImpl = config.fetch;
|
|
68
|
+
this.name = config.name;
|
|
69
|
+
this.users = this.bindApi(usersApi);
|
|
70
|
+
this.organizations = this.bindApi(organizationsApi);
|
|
71
|
+
this.workspaces = this.bindApi(workspacesApi);
|
|
72
|
+
this.apiKeys = this.bindApi(apiKeysApi);
|
|
73
|
+
this.settings = this.bindApi(settingsApi);
|
|
74
|
+
this.notifications = this.bindApi(notificationsApi);
|
|
75
|
+
this.webhooks = this.bindApi(webhooksApi);
|
|
76
|
+
this.ai = this.bindApi(aiApi);
|
|
77
|
+
this.segments = this.bindApi(segmentsApi);
|
|
78
|
+
this.invitations = this.bindApi(invitationsApi);
|
|
79
|
+
this.analytics = this.bindApi(analyticsApi);
|
|
80
|
+
this.utility = this.bindApi(utilityApi);
|
|
81
|
+
this.health = this.bindApi(healthApi);
|
|
82
|
+
this.gateway = this.bindApi(gatewayApi);
|
|
83
|
+
if (config.store && config.name) {
|
|
84
|
+
config.store.register(config.name, this);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
bindApi(api) {
|
|
88
|
+
const bound = {};
|
|
89
|
+
for (const key of Object.keys(api)) {
|
|
90
|
+
const fn = api[key];
|
|
91
|
+
bound[key] = (...args) => fn(...args, this);
|
|
92
|
+
}
|
|
93
|
+
return bound;
|
|
94
|
+
}
|
|
95
|
+
getFetch() {
|
|
96
|
+
if (this.fetchImpl)
|
|
97
|
+
return this.fetchImpl;
|
|
98
|
+
if (typeof globalThis.fetch === 'function')
|
|
99
|
+
return globalThis.fetch.bind(globalThis);
|
|
100
|
+
throw new error_1.WachtError('No fetch implementation found. Provide one via initClient({ fetch }) in this runtime.');
|
|
101
|
+
}
|
|
102
|
+
buildUrl(url, params) {
|
|
103
|
+
const absolute = new URL(url, this.baseUrl);
|
|
104
|
+
if (params) {
|
|
105
|
+
for (const [key, value] of Object.entries(params)) {
|
|
106
|
+
if (value === undefined || value === null)
|
|
107
|
+
continue;
|
|
108
|
+
absolute.searchParams.append(key, String(value));
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return absolute.toString();
|
|
112
|
+
}
|
|
113
|
+
normalizeBody(body, headers) {
|
|
114
|
+
if (body === undefined || body === null)
|
|
115
|
+
return undefined;
|
|
116
|
+
const hasFormData = typeof FormData !== 'undefined';
|
|
117
|
+
const hasUrlSearchParams = typeof URLSearchParams !== 'undefined';
|
|
118
|
+
const hasBlob = typeof Blob !== 'undefined';
|
|
119
|
+
const hasReadableStream = typeof ReadableStream !== 'undefined';
|
|
120
|
+
if (typeof body === 'string' ||
|
|
121
|
+
(hasFormData && body instanceof FormData) ||
|
|
122
|
+
(hasUrlSearchParams && body instanceof URLSearchParams) ||
|
|
123
|
+
(hasBlob && body instanceof Blob) ||
|
|
124
|
+
body instanceof ArrayBuffer ||
|
|
125
|
+
ArrayBuffer.isView(body) ||
|
|
126
|
+
(hasReadableStream && body instanceof ReadableStream)) {
|
|
127
|
+
return body;
|
|
128
|
+
}
|
|
129
|
+
if (!headers.has('Content-Type')) {
|
|
130
|
+
headers.set('Content-Type', 'application/json');
|
|
131
|
+
}
|
|
132
|
+
return JSON.stringify(body);
|
|
133
|
+
}
|
|
134
|
+
async parseResponse(response) {
|
|
135
|
+
const contentType = response.headers.get('content-type')?.toLowerCase() || '';
|
|
136
|
+
if (response.status === 204) {
|
|
137
|
+
return undefined;
|
|
138
|
+
}
|
|
139
|
+
if (contentType.includes('application/json')) {
|
|
140
|
+
return (await response.json());
|
|
141
|
+
}
|
|
142
|
+
return (await response.text());
|
|
143
|
+
}
|
|
144
|
+
async request(method, url, config) {
|
|
145
|
+
const fetchImpl = this.getFetch();
|
|
146
|
+
const timeout = config?.timeout ?? this.defaultTimeout;
|
|
147
|
+
const controller = new AbortController();
|
|
148
|
+
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
149
|
+
try {
|
|
150
|
+
const headers = new Headers(this.defaultHeaders);
|
|
151
|
+
if (config?.headers) {
|
|
152
|
+
new Headers(config.headers).forEach((value, key) => headers.set(key, value));
|
|
153
|
+
}
|
|
154
|
+
const response = await fetchImpl(this.buildUrl(url, config?.params), {
|
|
155
|
+
...config,
|
|
156
|
+
method,
|
|
157
|
+
headers,
|
|
158
|
+
body: this.normalizeBody(config?.body, headers),
|
|
159
|
+
signal: config?.signal ?? controller.signal,
|
|
160
|
+
});
|
|
161
|
+
if (!response.ok) {
|
|
162
|
+
let errorData = null;
|
|
163
|
+
try {
|
|
164
|
+
errorData = await response.json();
|
|
165
|
+
}
|
|
166
|
+
catch {
|
|
167
|
+
try {
|
|
168
|
+
const text = await response.text();
|
|
169
|
+
errorData = { message: text };
|
|
170
|
+
}
|
|
171
|
+
catch {
|
|
172
|
+
errorData = null;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
throw (0, error_1.parseApiError)(response.status, errorData);
|
|
176
|
+
}
|
|
177
|
+
return this.parseResponse(response);
|
|
178
|
+
}
|
|
179
|
+
catch (error) {
|
|
180
|
+
if (error instanceof error_1.WachtError) {
|
|
181
|
+
throw error;
|
|
182
|
+
}
|
|
183
|
+
if (error instanceof Error && error.name === 'AbortError') {
|
|
184
|
+
throw new error_1.WachtError('Request timed out');
|
|
185
|
+
}
|
|
186
|
+
if (error instanceof Error) {
|
|
187
|
+
throw new error_1.WachtError(error.message);
|
|
188
|
+
}
|
|
189
|
+
throw new error_1.WachtError('Request failed');
|
|
190
|
+
}
|
|
191
|
+
finally {
|
|
192
|
+
clearTimeout(timeoutId);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Make a GET request
|
|
197
|
+
*/
|
|
198
|
+
async get(url, config) {
|
|
199
|
+
return this.request('GET', url, config);
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Make a POST request
|
|
203
|
+
*/
|
|
204
|
+
async post(url, data, config) {
|
|
205
|
+
return this.request('POST', url, {
|
|
206
|
+
...config,
|
|
207
|
+
body: data,
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Make a PUT request
|
|
212
|
+
*/
|
|
213
|
+
async put(url, data, config) {
|
|
214
|
+
return this.request('PUT', url, {
|
|
215
|
+
...config,
|
|
216
|
+
body: data,
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Make a PATCH request
|
|
221
|
+
*/
|
|
222
|
+
async patch(url, data, config) {
|
|
223
|
+
return this.request('PATCH', url, {
|
|
224
|
+
...config,
|
|
225
|
+
body: data,
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Make a DELETE request
|
|
230
|
+
*/
|
|
231
|
+
async delete(url, config) {
|
|
232
|
+
return this.request('DELETE', url, config);
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Get the base URL
|
|
236
|
+
*/
|
|
237
|
+
getBaseUrl() {
|
|
238
|
+
return this.baseUrl;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
exports.WachtClient = WachtClient;
|
|
242
|
+
/**
|
|
243
|
+
* Global client instance (lazy initialized)
|
|
244
|
+
*/
|
|
245
|
+
let globalClient = null;
|
|
246
|
+
class WachtClientStore {
|
|
247
|
+
constructor() {
|
|
248
|
+
this.clients = new Map();
|
|
249
|
+
}
|
|
250
|
+
register(name, client) {
|
|
251
|
+
this.clients.set(name, client);
|
|
252
|
+
}
|
|
253
|
+
get(name) {
|
|
254
|
+
const client = this.clients.get(name);
|
|
255
|
+
if (!client) {
|
|
256
|
+
throw new Error(`No Wacht client registered with name '${name}'.`);
|
|
257
|
+
}
|
|
258
|
+
return client;
|
|
259
|
+
}
|
|
260
|
+
has(name) {
|
|
261
|
+
return this.clients.has(name);
|
|
262
|
+
}
|
|
263
|
+
remove(name) {
|
|
264
|
+
return this.clients.delete(name);
|
|
265
|
+
}
|
|
266
|
+
list() {
|
|
267
|
+
return Array.from(this.clients.keys());
|
|
268
|
+
}
|
|
269
|
+
clear() {
|
|
270
|
+
this.clients.clear();
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
exports.WachtClientStore = WachtClientStore;
|
|
274
|
+
function createClientStore() {
|
|
275
|
+
return new WachtClientStore();
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* Initialize the global client
|
|
279
|
+
*/
|
|
280
|
+
function initClient(config) {
|
|
281
|
+
globalClient = new WachtClient(config);
|
|
282
|
+
}
|
|
283
|
+
/**
|
|
284
|
+
* Get the global client instance
|
|
285
|
+
* @throws {Error} If client has not been initialized
|
|
286
|
+
*/
|
|
287
|
+
function getClient() {
|
|
288
|
+
if (!globalClient) {
|
|
289
|
+
throw new Error('Wacht SDK client not initialized. Call initClient() first.');
|
|
290
|
+
}
|
|
291
|
+
return globalClient;
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Check if the global client has been initialized
|
|
295
|
+
*/
|
|
296
|
+
function isClientInitialized() {
|
|
297
|
+
return globalClient !== null;
|
|
298
|
+
}
|
|
299
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/error.d.ts
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Custom error class for Wacht SDK errors
|
|
3
|
+
*/
|
|
4
|
+
export declare class WachtError extends Error {
|
|
5
|
+
statusCode?: number | undefined;
|
|
6
|
+
details?: unknown | undefined;
|
|
7
|
+
constructor(message: string, statusCode?: number | undefined, details?: unknown | undefined);
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* API error response from the backend
|
|
11
|
+
*/
|
|
12
|
+
export interface ApiError {
|
|
13
|
+
message: string;
|
|
14
|
+
code?: string;
|
|
15
|
+
details?: unknown;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Validation error for request parameters
|
|
19
|
+
*/
|
|
20
|
+
export declare class ValidationError extends WachtError {
|
|
21
|
+
constructor(message: string, details?: unknown);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Authentication error
|
|
25
|
+
*/
|
|
26
|
+
export declare class AuthenticationError extends WachtError {
|
|
27
|
+
constructor(message?: string);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Authorization error
|
|
31
|
+
*/
|
|
32
|
+
export declare class AuthorizationError extends WachtError {
|
|
33
|
+
constructor(message?: string);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Not found error
|
|
37
|
+
*/
|
|
38
|
+
export declare class NotFoundError extends WachtError {
|
|
39
|
+
constructor(message?: string);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Conflict error
|
|
43
|
+
*/
|
|
44
|
+
export declare class ConflictError extends WachtError {
|
|
45
|
+
constructor(message: string);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Rate limit error
|
|
49
|
+
*/
|
|
50
|
+
export declare class RateLimitError extends WachtError {
|
|
51
|
+
constructor(message?: string);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Server error
|
|
55
|
+
*/
|
|
56
|
+
export declare class ServerError extends WachtError {
|
|
57
|
+
constructor(message?: string);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Parse an API error and return the appropriate WachtError
|
|
61
|
+
*/
|
|
62
|
+
export declare function parseApiError(statusCode: number, data: unknown): WachtError;
|
|
63
|
+
//# sourceMappingURL=error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;IAG1B,UAAU,CAAC,EAAE,MAAM;IACnB,OAAO,CAAC,EAAE,OAAO;gBAFxB,OAAO,EAAE,MAAM,EACR,UAAU,CAAC,EAAE,MAAM,YAAA,EACnB,OAAO,CAAC,EAAE,OAAO,YAAA;CAQ3B;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,UAAU;gBACjC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;CAI/C;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,UAAU;gBACrC,OAAO,GAAE,MAAgC;CAItD;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;gBACpC,OAAO,GAAE,MAA+B;CAIrD;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;gBAC/B,OAAO,GAAE,MAA6B;CAInD;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;gBAC/B,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,UAAU;gBAChC,OAAO,GAAE,MAA8B;CAIpD;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,UAAU;gBAC7B,OAAO,GAAE,MAAgC;CAItD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,UAAU,CAwB3E"}
|