@blimu/backend 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 +238 -0
- package/dist/client.d.ts +64 -0
- package/dist/client.js +133 -0
- package/dist/client.js.map +1 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.js +69 -0
- package/dist/index.js.map +1 -0
- package/dist/schema.d.ts +381 -0
- package/dist/schema.js +3 -0
- package/dist/schema.js.map +1 -0
- package/dist/services/authentication.d.ts +8 -0
- package/dist/services/authentication.js +28 -0
- package/dist/services/authentication.js.map +1 -0
- package/dist/services/bulk_roles.d.ts +7 -0
- package/dist/services/bulk_roles.js +19 -0
- package/dist/services/bulk_roles.js.map +1 -0
- package/dist/services/definitions.d.ts +11 -0
- package/dist/services/definitions.js +51 -0
- package/dist/services/definitions.js.map +1 -0
- package/dist/services/entitlements.d.ts +7 -0
- package/dist/services/entitlements.js +19 -0
- package/dist/services/entitlements.js.map +1 -0
- package/dist/services/jwk.d.ts +6 -0
- package/dist/services/jwk.js +17 -0
- package/dist/services/jwk.js.map +1 -0
- package/dist/services/public_authentication.d.ts +9 -0
- package/dist/services/public_authentication.js +35 -0
- package/dist/services/public_authentication.js.map +1 -0
- package/dist/services/public_environment.d.ts +8 -0
- package/dist/services/public_environment.js +24 -0
- package/dist/services/public_environment.js.map +1 -0
- package/dist/services/resources.d.ts +11 -0
- package/dist/services/resources.js +50 -0
- package/dist/services/resources.js.map +1 -0
- package/dist/services/roles.d.ts +9 -0
- package/dist/services/roles.js +34 -0
- package/dist/services/roles.js.map +1 -0
- package/dist/services/users.d.ts +12 -0
- package/dist/services/users.js +57 -0
- package/dist/services/users.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/utils.d.ts +16 -0
- package/dist/utils.js +26 -0
- package/dist/utils.js.map +1 -0
- package/package.json +46 -0
package/README.md
ADDED
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
# Blimu TypeScript SDK
|
|
2
|
+
|
|
3
|
+
This is an auto-generated TypeScript/JavaScript SDK for the Blimu API.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @blimu/backend
|
|
9
|
+
# or
|
|
10
|
+
yarn add @blimu/backend
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Quick Start
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
import { BlimuClient } from '@blimu/backend';
|
|
17
|
+
|
|
18
|
+
// Create a new client
|
|
19
|
+
const client = new BlimuClient({
|
|
20
|
+
baseURL: 'https://api.example.com',
|
|
21
|
+
timeoutMs: 10000,
|
|
22
|
+
retry: { retries: 2, backoffMs: 300, retryOn: [429, 500, 502, 503, 504] },
|
|
23
|
+
// Environment-based baseURL (optional)
|
|
24
|
+
env: 'sandbox',
|
|
25
|
+
envBaseURLs: {
|
|
26
|
+
sandbox: 'https://api-sandbox.example.com',
|
|
27
|
+
production: 'https://api.example.com',
|
|
28
|
+
},
|
|
29
|
+
// Auth (generic API Key or Bearer header)
|
|
30
|
+
accessToken: process.env.API_TOKEN,
|
|
31
|
+
headerName: 'access_token', // or 'Authorization' (defaults to Authorization: Bearer <token>)
|
|
32
|
+
});
|
|
33
|
+
// Example: Bulk create roles
|
|
34
|
+
try {
|
|
35
|
+
const result = await client.bulkRoles.create({
|
|
36
|
+
// Request body data
|
|
37
|
+
});
|
|
38
|
+
console.log('Result:', result);
|
|
39
|
+
} catch (error) {
|
|
40
|
+
// ApiError with structured data
|
|
41
|
+
console.error(error);
|
|
42
|
+
}
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Environment & Auth
|
|
46
|
+
|
|
47
|
+
```typescript
|
|
48
|
+
const client = new BlimuClient({
|
|
49
|
+
env: 'sandbox',
|
|
50
|
+
envBaseURLs: {
|
|
51
|
+
sandbox: 'https://api-sandbox.example.com',
|
|
52
|
+
production: 'https://api.example.com',
|
|
53
|
+
},
|
|
54
|
+
accessToken: async () => process.env.API_TOKEN!,
|
|
55
|
+
headerName: 'access_token',
|
|
56
|
+
});
|
|
57
|
+
client.setAccessToken('new-token');
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Pagination
|
|
61
|
+
|
|
62
|
+
```typescript
|
|
63
|
+
import { listAll } from '@blimu/backend';
|
|
64
|
+
|
|
65
|
+
const allPayments = await listAll((query) => client.payment.listPayments(query), { limit: 100 });
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Interceptors
|
|
69
|
+
|
|
70
|
+
```typescript
|
|
71
|
+
const client = new BlimuClient({
|
|
72
|
+
onRequest: ({ url, init }) => console.debug('->', init.method, url),
|
|
73
|
+
onResponse: ({ response }) => console.debug('<-', response.status),
|
|
74
|
+
onError: (err) => console.warn('request error', err),
|
|
75
|
+
});
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Authentication
|
|
79
|
+
|
|
80
|
+
This SDK supports the following authentication methods:
|
|
81
|
+
|
|
82
|
+
### ApiKeyAuth
|
|
83
|
+
|
|
84
|
+
API Key authentication (header):
|
|
85
|
+
|
|
86
|
+
```typescript
|
|
87
|
+
const client = new BlimuClient({
|
|
88
|
+
apiKeyAuth: 'your-api-key',
|
|
89
|
+
});
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### Bearer
|
|
93
|
+
|
|
94
|
+
Bearer token authentication:
|
|
95
|
+
|
|
96
|
+
```typescript
|
|
97
|
+
const client = new BlimuClient({
|
|
98
|
+
bearer: 'your-bearer-token',
|
|
99
|
+
});
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
## Subpath imports
|
|
103
|
+
|
|
104
|
+
```typescript
|
|
105
|
+
import { PaymentService, Schema } from '@blimu/backend';
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Available Services
|
|
109
|
+
|
|
110
|
+
### BulkRolesService
|
|
111
|
+
|
|
112
|
+
- **create**: POST /v1/users/roles/bulk - Bulk create roles
|
|
113
|
+
|
|
114
|
+
### EntitlementsService
|
|
115
|
+
|
|
116
|
+
- **checkEntitlement**: POST /v1/entitlements/check - Check if a user has a specific entitlement on a resource
|
|
117
|
+
|
|
118
|
+
### ResourcesService
|
|
119
|
+
|
|
120
|
+
- **list**: GET /v1/resources/{resourceType} - List resources
|
|
121
|
+
- **bulkCreate**: POST /v1/resources/{resourceType} - Bulk create resources
|
|
122
|
+
- **delete**: DELETE /v1/resources/{resourceType}/{resourceId} - Delete a resource
|
|
123
|
+
- **read**: GET /v1/resources/{resourceType}/{resourceId} - Read a resource
|
|
124
|
+
- **update**: PUT /v1/resources/{resourceType}/{resourceId} - Update a resource
|
|
125
|
+
|
|
126
|
+
### RolesService
|
|
127
|
+
|
|
128
|
+
- **list**: GET /v1/users/{userId}/roles - List user roles
|
|
129
|
+
- **create**: POST /v1/users/{userId}/roles - Create a role (assign role to user on resource)
|
|
130
|
+
- **delete**: DELETE /v1/users/{userId}/roles/{resourceType}/{resourceId} - Delete a role
|
|
131
|
+
|
|
132
|
+
### UsersService
|
|
133
|
+
|
|
134
|
+
- **list**: GET /v1/users - List users
|
|
135
|
+
- **create**: POST /v1/users - Create a user
|
|
136
|
+
- **delete**: DELETE /v1/users/{userId} - Delete a user
|
|
137
|
+
- **read**: GET /v1/users/{userId} - Get a user by ID
|
|
138
|
+
- **update**: PUT /v1/users/{userId} - Update a user
|
|
139
|
+
- **listEffectiveUserResourcesRoles**: GET /v1/users/{userId}/effective-user-resources-roles - List effective user resources roles
|
|
140
|
+
|
|
141
|
+
## TypeScript Support
|
|
142
|
+
|
|
143
|
+
This SDK is written in TypeScript and provides full type safety:
|
|
144
|
+
|
|
145
|
+
```typescript
|
|
146
|
+
import { BlimuClient, Schema } from '@blimu/backend';
|
|
147
|
+
|
|
148
|
+
const client = new BlimuClient({
|
|
149
|
+
/* config */
|
|
150
|
+
});
|
|
151
|
+
|
|
152
|
+
// All methods are fully typed
|
|
153
|
+
const result: RoleBulkResult = await client.bulkRoles.create(/* ... */);
|
|
154
|
+
|
|
155
|
+
// Schema types are available
|
|
156
|
+
const data: Schema.AuthLoginBody = {
|
|
157
|
+
// Fully typed object
|
|
158
|
+
};
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
## Node.js Usage
|
|
162
|
+
|
|
163
|
+
For Node.js environments, you may need to provide a fetch implementation:
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
npm install undici
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
```typescript
|
|
170
|
+
import { fetch } from 'undici';
|
|
171
|
+
import { BlimuClient } from '@blimu/backend';
|
|
172
|
+
|
|
173
|
+
const client = new BlimuClient({
|
|
174
|
+
baseURL: 'https://api.example.com',
|
|
175
|
+
fetch,
|
|
176
|
+
});
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
## Models and Types
|
|
180
|
+
|
|
181
|
+
The SDK includes the following TypeScript interfaces:
|
|
182
|
+
|
|
183
|
+
- **AuthLoginBody**
|
|
184
|
+
- **AuthRegisterBody**
|
|
185
|
+
- **AuthResponse**
|
|
186
|
+
- **Branding**
|
|
187
|
+
- **ConsentForm**
|
|
188
|
+
- **Definition**
|
|
189
|
+
- **DefinitionCustomTypesResponse**
|
|
190
|
+
- **DefinitionGenerateSDKBody**
|
|
191
|
+
- **DefinitionGenerateSDKResponse**
|
|
192
|
+
- **DefinitionValidateBody**
|
|
193
|
+
- **DefinitionValidateResponse**
|
|
194
|
+
- **EntitlementCheckBody**
|
|
195
|
+
- **EntitlementCheckResult**
|
|
196
|
+
- **EntitlementType**: Entitlement identifier
|
|
197
|
+
- **EnvironmentByDomain**
|
|
198
|
+
- **OAuthApplication**
|
|
199
|
+
- **OAuthTokenBody**
|
|
200
|
+
- **Resource**
|
|
201
|
+
- **ResourceBulkCreateBody**
|
|
202
|
+
- **ResourceBulkResult**
|
|
203
|
+
- **ResourceCreateBody**
|
|
204
|
+
- **ResourceList**
|
|
205
|
+
- **ResourceType**: Resource type identifier
|
|
206
|
+
- **ResourceUpdateBody**
|
|
207
|
+
- **Role**
|
|
208
|
+
- **RoleBulkCreateBody**
|
|
209
|
+
- **RoleBulkResult**
|
|
210
|
+
- **RoleCreateBody**
|
|
211
|
+
- **RoleList**
|
|
212
|
+
- **SessionUser**
|
|
213
|
+
- **TokenResponse**
|
|
214
|
+
- **User**
|
|
215
|
+
- **UserCreateBody**
|
|
216
|
+
- **UserList**
|
|
217
|
+
- **UserResourceList**
|
|
218
|
+
- **UserUpdateBody**
|
|
219
|
+
|
|
220
|
+
All types are available under the `Schema` namespace:
|
|
221
|
+
|
|
222
|
+
```typescript
|
|
223
|
+
import { Schema } from '@blimu/backend';
|
|
224
|
+
|
|
225
|
+
// Use any model type
|
|
226
|
+
const user: Schema.User = {
|
|
227
|
+
/* ... */
|
|
228
|
+
};
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
## Contributing
|
|
232
|
+
|
|
233
|
+
This SDK is auto-generated. Please do not edit the generated files directly.
|
|
234
|
+
If you find issues, please report them in the main project repository.
|
|
235
|
+
|
|
236
|
+
## License
|
|
237
|
+
|
|
238
|
+
This SDK is generated from the Blimu API specification.
|
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
export type ClientOption = {
|
|
2
|
+
baseURL?: string;
|
|
3
|
+
headers?: Record<string, string>;
|
|
4
|
+
timeoutMs?: number;
|
|
5
|
+
retry?: {
|
|
6
|
+
retries: number;
|
|
7
|
+
backoffMs: number;
|
|
8
|
+
retryOn?: number[];
|
|
9
|
+
};
|
|
10
|
+
onRequest?: (ctx: {
|
|
11
|
+
url: string;
|
|
12
|
+
init: RequestInit & {
|
|
13
|
+
path: string;
|
|
14
|
+
method: string;
|
|
15
|
+
query?: Record<string, any>;
|
|
16
|
+
};
|
|
17
|
+
attempt: number;
|
|
18
|
+
}) => void | Promise<void>;
|
|
19
|
+
onResponse?: (ctx: {
|
|
20
|
+
url: string;
|
|
21
|
+
init: RequestInit & {
|
|
22
|
+
path: string;
|
|
23
|
+
method: string;
|
|
24
|
+
query?: Record<string, any>;
|
|
25
|
+
};
|
|
26
|
+
attempt: number;
|
|
27
|
+
response: Response;
|
|
28
|
+
}) => void | Promise<void>;
|
|
29
|
+
onError?: (err: unknown, ctx: {
|
|
30
|
+
url: string;
|
|
31
|
+
init: RequestInit & {
|
|
32
|
+
path: string;
|
|
33
|
+
method: string;
|
|
34
|
+
query?: Record<string, any>;
|
|
35
|
+
};
|
|
36
|
+
attempt: number;
|
|
37
|
+
}) => void | Promise<void>;
|
|
38
|
+
env?: 'sandbox' | 'production';
|
|
39
|
+
envBaseURLs?: {
|
|
40
|
+
sandbox: string;
|
|
41
|
+
production: string;
|
|
42
|
+
};
|
|
43
|
+
accessToken?: string | (() => string | Promise<string>);
|
|
44
|
+
headerName?: string;
|
|
45
|
+
apiKeyAuth?: string;
|
|
46
|
+
bearer?: string;
|
|
47
|
+
fetch?: typeof fetch;
|
|
48
|
+
};
|
|
49
|
+
export declare class ApiError<T = unknown> extends Error {
|
|
50
|
+
readonly status: number;
|
|
51
|
+
readonly data?: T | undefined;
|
|
52
|
+
readonly headers?: Headers | undefined;
|
|
53
|
+
constructor(message: string, status: number, data?: T | undefined, headers?: Headers | undefined);
|
|
54
|
+
}
|
|
55
|
+
export declare class CoreClient {
|
|
56
|
+
private cfg;
|
|
57
|
+
constructor(cfg?: ClientOption);
|
|
58
|
+
setAccessToken(token: string | (() => string | Promise<string>)): void;
|
|
59
|
+
request(init: RequestInit & {
|
|
60
|
+
path: string;
|
|
61
|
+
method: string;
|
|
62
|
+
query?: Record<string, any>;
|
|
63
|
+
}): Promise<any>;
|
|
64
|
+
}
|
package/dist/client.js
ADDED
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CoreClient = exports.ApiError = void 0;
|
|
4
|
+
class ApiError extends Error {
|
|
5
|
+
constructor(message, status, data, headers) {
|
|
6
|
+
super(message);
|
|
7
|
+
this.status = status;
|
|
8
|
+
this.data = data;
|
|
9
|
+
this.headers = headers;
|
|
10
|
+
this.name = 'ApiError';
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.ApiError = ApiError;
|
|
14
|
+
class CoreClient {
|
|
15
|
+
constructor(cfg = {}) {
|
|
16
|
+
this.cfg = cfg;
|
|
17
|
+
if (!this.cfg.baseURL) {
|
|
18
|
+
if (this.cfg.env && this.cfg.envBaseURLs) {
|
|
19
|
+
this.cfg.baseURL =
|
|
20
|
+
this.cfg.env === 'production'
|
|
21
|
+
? this.cfg.envBaseURLs.production
|
|
22
|
+
: this.cfg.envBaseURLs.sandbox;
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
this.cfg.baseURL = 'https://api.blimu.dev';
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
setAccessToken(token) {
|
|
30
|
+
this.cfg.accessToken = token;
|
|
31
|
+
}
|
|
32
|
+
async request(init) {
|
|
33
|
+
let normalizedPath = init.path || '';
|
|
34
|
+
if (normalizedPath.length > 1 && normalizedPath.endsWith('/')) {
|
|
35
|
+
normalizedPath = normalizedPath.slice(0, -1);
|
|
36
|
+
}
|
|
37
|
+
const url = new URL((this.cfg.baseURL || '') + normalizedPath);
|
|
38
|
+
if (init.query) {
|
|
39
|
+
Object.entries(init.query).forEach(([k, v]) => {
|
|
40
|
+
if (v === undefined || v === null)
|
|
41
|
+
return;
|
|
42
|
+
if (Array.isArray(v))
|
|
43
|
+
v.forEach((vv) => url.searchParams.append(k, String(vv)));
|
|
44
|
+
else
|
|
45
|
+
url.searchParams.set(k, String(v));
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
const headers = new Headers({
|
|
49
|
+
...(this.cfg.headers || {}),
|
|
50
|
+
...init.headers,
|
|
51
|
+
});
|
|
52
|
+
if (this.cfg.accessToken) {
|
|
53
|
+
const token = typeof this.cfg.accessToken === 'function'
|
|
54
|
+
? await this.cfg.accessToken()
|
|
55
|
+
: this.cfg.accessToken;
|
|
56
|
+
const name = this.cfg.headerName || 'Authorization';
|
|
57
|
+
if (name.toLowerCase() === 'authorization')
|
|
58
|
+
headers.set(name, `Bearer ${String(token)}`);
|
|
59
|
+
else
|
|
60
|
+
headers.set(name, String(token));
|
|
61
|
+
}
|
|
62
|
+
if (this.cfg?.apiKeyAuth)
|
|
63
|
+
headers.set('X-API-KEY', String(this.cfg?.apiKeyAuth));
|
|
64
|
+
if (this.cfg.bearer)
|
|
65
|
+
headers.set('Authorization', `Bearer ${this.cfg.bearer}`);
|
|
66
|
+
const doFetch = async (attempt) => {
|
|
67
|
+
if (this.cfg.onRequest)
|
|
68
|
+
await this.cfg.onRequest({ url: url.toString(), init, attempt });
|
|
69
|
+
let controller;
|
|
70
|
+
let timeoutId;
|
|
71
|
+
const fetchInit = { ...init, headers };
|
|
72
|
+
if (this.cfg.timeoutMs && typeof AbortController !== 'undefined') {
|
|
73
|
+
controller = new AbortController();
|
|
74
|
+
fetchInit.signal = controller.signal;
|
|
75
|
+
timeoutId = setTimeout(() => controller?.abort(), this.cfg.timeoutMs);
|
|
76
|
+
}
|
|
77
|
+
try {
|
|
78
|
+
const res = await (this.cfg.fetch || fetch)(url.toString(), fetchInit);
|
|
79
|
+
if (this.cfg.onResponse)
|
|
80
|
+
await this.cfg.onResponse({ url: url.toString(), init, attempt, response: res });
|
|
81
|
+
const ct = res.headers.get('content-type') || '';
|
|
82
|
+
let parsed;
|
|
83
|
+
if (ct.includes('application/json')) {
|
|
84
|
+
parsed = await res.json();
|
|
85
|
+
}
|
|
86
|
+
else if (ct.startsWith('text/')) {
|
|
87
|
+
parsed = await res.text();
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
parsed = await res.arrayBuffer();
|
|
91
|
+
}
|
|
92
|
+
if (!res.ok) {
|
|
93
|
+
throw new ApiError(`HTTP ${res.status}`, res.status, parsed, res.headers);
|
|
94
|
+
}
|
|
95
|
+
return parsed;
|
|
96
|
+
}
|
|
97
|
+
catch (err) {
|
|
98
|
+
if (this.cfg.onError)
|
|
99
|
+
await this.cfg.onError(err, { url: url.toString(), init, attempt });
|
|
100
|
+
throw err;
|
|
101
|
+
}
|
|
102
|
+
finally {
|
|
103
|
+
if (timeoutId)
|
|
104
|
+
clearTimeout(timeoutId);
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
const retries = this.cfg.retry?.retries ?? 0;
|
|
108
|
+
const baseBackoff = this.cfg.retry?.backoffMs ?? 300;
|
|
109
|
+
const retryOn = this.cfg.retry?.retryOn ?? [429, 500, 502, 503, 504];
|
|
110
|
+
let lastError;
|
|
111
|
+
for (let attempt = 0; attempt <= retries; attempt++) {
|
|
112
|
+
try {
|
|
113
|
+
return await doFetch(attempt);
|
|
114
|
+
}
|
|
115
|
+
catch (err) {
|
|
116
|
+
const status = err?.status;
|
|
117
|
+
const shouldRetry = status ? retryOn.includes(status) : true;
|
|
118
|
+
if (attempt < retries && shouldRetry) {
|
|
119
|
+
const delay = baseBackoff * Math.pow(2, attempt);
|
|
120
|
+
await new Promise((r) => setTimeout(r, delay));
|
|
121
|
+
lastError = err;
|
|
122
|
+
continue;
|
|
123
|
+
}
|
|
124
|
+
if (err instanceof ApiError)
|
|
125
|
+
throw err;
|
|
126
|
+
throw new ApiError(err?.message || 'Network error', status ?? 0);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
throw lastError;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
exports.CoreClient = CoreClient;
|
|
133
|
+
//# 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/index.d.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ClientOption } from './client';
|
|
2
|
+
import { BulkRolesService } from './services/bulk_roles';
|
|
3
|
+
import { EntitlementsService } from './services/entitlements';
|
|
4
|
+
import { ResourcesService } from './services/resources';
|
|
5
|
+
import { RolesService } from './services/roles';
|
|
6
|
+
import { UsersService } from './services/users';
|
|
7
|
+
export declare class Blimu {
|
|
8
|
+
readonly bulkRoles: BulkRolesService;
|
|
9
|
+
readonly entitlements: EntitlementsService;
|
|
10
|
+
readonly resources: ResourcesService;
|
|
11
|
+
readonly roles: RolesService;
|
|
12
|
+
readonly users: UsersService;
|
|
13
|
+
constructor(options?: ClientOption);
|
|
14
|
+
}
|
|
15
|
+
export type { ClientOption };
|
|
16
|
+
export * as Schema from './schema';
|
|
17
|
+
export * from './utils';
|
|
18
|
+
export { BulkRolesService } from './services/bulk_roles';
|
|
19
|
+
export { EntitlementsService } from './services/entitlements';
|
|
20
|
+
export { ResourcesService } from './services/resources';
|
|
21
|
+
export { RolesService } from './services/roles';
|
|
22
|
+
export { UsersService } from './services/users';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
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
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
36
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.UsersService = exports.RolesService = exports.ResourcesService = exports.EntitlementsService = exports.BulkRolesService = exports.Schema = exports.Blimu = void 0;
|
|
40
|
+
const client_1 = require("./client");
|
|
41
|
+
const bulk_roles_1 = require("./services/bulk_roles");
|
|
42
|
+
const entitlements_1 = require("./services/entitlements");
|
|
43
|
+
const resources_1 = require("./services/resources");
|
|
44
|
+
const roles_1 = require("./services/roles");
|
|
45
|
+
const users_1 = require("./services/users");
|
|
46
|
+
class Blimu {
|
|
47
|
+
constructor(options) {
|
|
48
|
+
const core = new client_1.CoreClient(options);
|
|
49
|
+
this.bulkRoles = new bulk_roles_1.BulkRolesService(core);
|
|
50
|
+
this.entitlements = new entitlements_1.EntitlementsService(core);
|
|
51
|
+
this.resources = new resources_1.ResourcesService(core);
|
|
52
|
+
this.roles = new roles_1.RolesService(core);
|
|
53
|
+
this.users = new users_1.UsersService(core);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.Blimu = Blimu;
|
|
57
|
+
exports.Schema = __importStar(require("./schema"));
|
|
58
|
+
__exportStar(require("./utils"), exports);
|
|
59
|
+
var bulk_roles_2 = require("./services/bulk_roles");
|
|
60
|
+
Object.defineProperty(exports, "BulkRolesService", { enumerable: true, get: function () { return bulk_roles_2.BulkRolesService; } });
|
|
61
|
+
var entitlements_2 = require("./services/entitlements");
|
|
62
|
+
Object.defineProperty(exports, "EntitlementsService", { enumerable: true, get: function () { return entitlements_2.EntitlementsService; } });
|
|
63
|
+
var resources_2 = require("./services/resources");
|
|
64
|
+
Object.defineProperty(exports, "ResourcesService", { enumerable: true, get: function () { return resources_2.ResourcesService; } });
|
|
65
|
+
var roles_2 = require("./services/roles");
|
|
66
|
+
Object.defineProperty(exports, "RolesService", { enumerable: true, get: function () { return roles_2.RolesService; } });
|
|
67
|
+
var users_2 = require("./services/users");
|
|
68
|
+
Object.defineProperty(exports, "UsersService", { enumerable: true, get: function () { return users_2.UsersService; } });
|
|
69
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAoD;AACpD,sDAAyD;AACzD,0DAA8D;AAC9D,oDAAwD;AACxD,4CAAgD;AAChD,4CAAgD;AAEhD,MAAa,KAAK;IAOhB,YAAY,OAAsB;QAChC,MAAM,IAAI,GAAG,IAAI,mBAAU,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,6BAAgB,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,IAAI,kCAAmB,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,SAAS,GAAG,IAAI,4BAAgB,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,GAAG,IAAI,oBAAY,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,IAAI,oBAAY,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;CACF;AAfD,sBAeC;AAKD,mDAAmC;AACnC,0CAAwB;AACxB,oDAAyD;AAAhD,8GAAA,gBAAgB,OAAA;AACzB,wDAA8D;AAArD,mHAAA,mBAAmB,OAAA;AAC5B,kDAAwD;AAA/C,6GAAA,gBAAgB,OAAA;AACzB,0CAAgD;AAAvC,qGAAA,YAAY,OAAA;AACrB,0CAAgD;AAAvC,qGAAA,YAAY,OAAA"}
|