@privateaim/storage-kit 0.4.0 → 0.5.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/CHANGELOG.md +25 -0
- package/dist/domains/bucket/api.d.ts +2 -3
- package/dist/domains/bucket/api.d.ts.map +1 -1
- package/dist/domains/bucket-file/api.d.ts +1 -1
- package/dist/domains/bucket-file/api.d.ts.map +1 -1
- package/dist/domains/types-base.d.ts +9 -0
- package/dist/domains/types-base.d.ts.map +1 -1
- package/dist/index.cjs +5 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
- package/src/domains/bucket/api.ts +3 -4
- package/src/domains/bucket-file/api.ts +2 -2
- package/src/domains/types-base.ts +10 -0
- package/tsconfig.json +6 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,30 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.5.0](https://github.com/PrivateAIM/hub/compare/storage-kit-v0.4.0...storage-kit-v0.5.0) (2024-06-12)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* extract utils and common consts, fns, ... to kit package ([258bbb2](https://github.com/PrivateAIM/hub/commit/258bbb21bfbf671a7cfad3e91740a1737eaf3f71))
|
|
9
|
+
* split core package in core & core-http-kit ([#422](https://github.com/PrivateAIM/hub/issues/422)) ([666a4fe](https://github.com/PrivateAIM/hub/commit/666a4feda4a5491d6752325bcb93155b84747171))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Dependencies
|
|
13
|
+
|
|
14
|
+
* The following workspace dependencies were updated
|
|
15
|
+
* devDependencies
|
|
16
|
+
* @privateaim/kit bumped from ^0.4.0 to ^0.5.0
|
|
17
|
+
* peerDependencies
|
|
18
|
+
* @privateaim/kit bumped from ^0.4.0 to ^0.5.0
|
|
19
|
+
|
|
20
|
+
## [0.4.0](https://github.com/PrivateAIM/hub/compare/storage-kit-v0.4.0...storage-kit-v0.4.0) (2024-06-12)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
### Features
|
|
24
|
+
|
|
25
|
+
* extract utils and common consts, fns, ... to kit package ([258bbb2](https://github.com/PrivateAIM/hub/commit/258bbb21bfbf671a7cfad3e91740a1737eaf3f71))
|
|
26
|
+
* split core package in core & core-http-kit ([#422](https://github.com/PrivateAIM/hub/issues/422)) ([666a4fe](https://github.com/PrivateAIM/hub/commit/666a4feda4a5491d6752325bcb93155b84747171))
|
|
27
|
+
|
|
3
28
|
## [0.4.0](https://github.com/PrivateAIM/hub/compare/storage-kit-v0.3.0...storage-kit-v0.4.0) (2024-05-15)
|
|
4
29
|
|
|
5
30
|
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { Analysis } from '@privateaim/core/src';
|
|
2
1
|
import type { BuildInput } from 'rapiq';
|
|
3
|
-
import type { CollectionResourceResponse, SingleResourceResponse } from '
|
|
2
|
+
import type { CollectionResourceResponse, SingleResourceResponse } from '../types-base';
|
|
4
3
|
import { BaseAPI } from '../base';
|
|
5
4
|
import type { BucketFile } from '../bucket-file';
|
|
6
5
|
import type { Bucket } from './entity';
|
|
@@ -11,7 +10,7 @@ export declare class BucketAPI extends BaseAPI {
|
|
|
11
10
|
delete(id: Bucket['id']): Promise<SingleResourceResponse<Bucket>>;
|
|
12
11
|
update(id: Bucket['id'], data: Record<string, any>): Promise<SingleResourceResponse<Bucket>>;
|
|
13
12
|
upload(id: Bucket['id'], formData: FormData): Promise<CollectionResourceResponse<BucketFile>>;
|
|
14
|
-
getStreamPath(id:
|
|
13
|
+
getStreamPath(id: string): string;
|
|
15
14
|
stream(id: Bucket['id']): Promise<ReadableStream<any>>;
|
|
16
15
|
}
|
|
17
16
|
//# sourceMappingURL=api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/domains/bucket/api.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/domains/bucket/api.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGxC,OAAO,KAAK,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,qBAAa,SAAU,SAAQ,OAAO;IAC5B,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAKjF,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAMrG,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAM1E,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAKjE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAK5F,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC;IAUnG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAI3B,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,GAAI,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;CAQhE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { BuildInput } from 'rapiq';
|
|
2
|
-
import type { CollectionResourceResponse, SingleResourceResponse } from '
|
|
2
|
+
import type { CollectionResourceResponse, SingleResourceResponse } from '../types-base';
|
|
3
3
|
import type { BucketFile } from './entity';
|
|
4
4
|
import { BaseAPI } from '../base';
|
|
5
5
|
export declare class BucketFileAPI extends BaseAPI {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/domains/bucket-file/api.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGxC,OAAO,KAAK,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/domains/bucket-file/api.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGxC,OAAO,KAAK,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACxF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,qBAAa,aAAc,SAAQ,OAAO;IAChC,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC;IAKzF,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAMjH,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAM9E,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAKzE,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAK1G,aAAa,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM;IAI3C,YAAY,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,GAAI,MAAM;IAIrC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,GAAI,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;CAQpE"}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
import type { Client, RequestBaseOptions } from 'hapic';
|
|
2
|
+
export type SingleResourceResponse<R> = R;
|
|
3
|
+
export type CollectionResourceResponse<R> = {
|
|
4
|
+
data: R[];
|
|
5
|
+
meta: {
|
|
6
|
+
limit: number;
|
|
7
|
+
offset: number;
|
|
8
|
+
total: number;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
2
11
|
export type BaseAPIContext = {
|
|
3
12
|
client?: Client | RequestBaseOptions;
|
|
4
13
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types-base.d.ts","sourceRoot":"","sources":["../../src/domains/types-base.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAExD,MAAM,MAAM,cAAc,GAAG;IACzB,MAAM,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAAA;CACvC,CAAC"}
|
|
1
|
+
{"version":3,"file":"types-base.d.ts","sourceRoot":"","sources":["../../src/domains/types-base.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAExD,MAAM,MAAM,sBAAsB,CAAC,CAAC,IAAI,CAAC,CAAC;AAC1C,MAAM,MAAM,0BAA0B,CAAC,CAAC,IAAI;IACxC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,IAAI,EAAE;QACF,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAA;KAChB,CAAA;CACJ,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IACzB,MAAM,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAAA;CACvC,CAAC"}
|
package/dist/index.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var hapic = require('hapic');
|
|
4
4
|
var rapiq = require('rapiq');
|
|
5
|
-
var
|
|
5
|
+
var kit = require('@privateaim/kit');
|
|
6
6
|
|
|
7
7
|
/*
|
|
8
8
|
* Copyright (c) 2023-2024.
|
|
@@ -87,7 +87,7 @@ class BucketAPI extends BaseAPI {
|
|
|
87
87
|
create(data) {
|
|
88
88
|
var _this = this;
|
|
89
89
|
return _async_to_generator$1(function*() {
|
|
90
|
-
const response = yield _this.client.post('buckets',
|
|
90
|
+
const response = yield _this.client.post('buckets', kit.nullifyEmptyObjectProperties(data));
|
|
91
91
|
return response.data;
|
|
92
92
|
})();
|
|
93
93
|
}
|
|
@@ -101,7 +101,7 @@ class BucketAPI extends BaseAPI {
|
|
|
101
101
|
update(id, data) {
|
|
102
102
|
var _this = this;
|
|
103
103
|
return _async_to_generator$1(function*() {
|
|
104
|
-
const response = yield _this.client.post(`buckets/${id}`,
|
|
104
|
+
const response = yield _this.client.post(`buckets/${id}`, kit.nullifyEmptyObjectProperties(data));
|
|
105
105
|
return response.data;
|
|
106
106
|
})();
|
|
107
107
|
}
|
|
@@ -183,7 +183,7 @@ class BucketFileAPI extends BaseAPI {
|
|
|
183
183
|
create(data) {
|
|
184
184
|
var _this = this;
|
|
185
185
|
return _async_to_generator(function*() {
|
|
186
|
-
const response = yield _this.client.post('bucket-files',
|
|
186
|
+
const response = yield _this.client.post('bucket-files', kit.nullifyEmptyObjectProperties(data));
|
|
187
187
|
return response.data;
|
|
188
188
|
})();
|
|
189
189
|
}
|
|
@@ -197,7 +197,7 @@ class BucketFileAPI extends BaseAPI {
|
|
|
197
197
|
update(id, data) {
|
|
198
198
|
var _this = this;
|
|
199
199
|
return _async_to_generator(function*() {
|
|
200
|
-
const response = yield _this.client.post(`bucket-files/${id}`,
|
|
200
|
+
const response = yield _this.client.post(`bucket-files/${id}`, kit.nullifyEmptyObjectProperties(data));
|
|
201
201
|
return response.data;
|
|
202
202
|
})();
|
|
203
203
|
}
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/domains/base.ts","../src/domains/bucket/api.ts","../src/domains/bucket-file/api.ts","../src/http/api-client/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { createClient, isClient } from 'hapic';\nimport type { Client, RequestBaseOptions } from 'hapic';\nimport type { BaseAPIContext } from './types-base';\n\nexport class BaseAPI {\n protected client! : Client;\n\n // -----------------------------------------------------------------------------------\n\n constructor(context?: BaseAPIContext) {\n context = context || {};\n\n this.setClient(context.client);\n }\n\n // -----------------------------------------------------------------------------------\n\n setClient(input?: Client | RequestBaseOptions) {\n this.client = isClient(input) ?\n input :\n createClient(input);\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Analysis } from '@privateaim/core/src';\nimport type { BuildInput } from 'rapiq';\nimport { buildQuery } from 'rapiq';\nimport { nullifyEmptyObjectProperties } from '@privateaim/core';\nimport type { CollectionResourceResponse, SingleResourceResponse } from '@privateaim/core';\nimport { BaseAPI } from '../base';\nimport type { BucketFile } from '../bucket-file';\nimport type { Bucket } from './entity';\n\nexport class BucketAPI extends BaseAPI {\n async getMany(record?: BuildInput<Bucket>): Promise<CollectionResourceResponse<Bucket>> {\n const response = await this.client.get(`buckets${buildQuery(record)}`);\n return response.data;\n }\n\n async getOne(id: Bucket['id'], requestRecord?: BuildInput<Bucket>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.get(`buckets/${id}${buildQuery(requestRecord)}`);\n\n return response.data;\n }\n\n async create(data: Record<string, any>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.post('buckets', nullifyEmptyObjectProperties(data));\n\n return response.data;\n }\n\n async delete(id: Bucket['id']): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.delete(`buckets/${id}`);\n return response.data;\n }\n\n async update(id: Bucket['id'], data: Record<string, any>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.post(`buckets/${id}`, nullifyEmptyObjectProperties(data));\n return response.data;\n }\n\n async upload(id: Bucket['id'], formData: FormData): Promise<CollectionResourceResponse<BucketFile>> {\n const response = await this.client.post(`buckets/${id}/upload`, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n return response.data;\n }\n\n getStreamPath(id: Analysis['id']): string {\n return `buckets/${id}/stream`;\n }\n\n async stream(id: Bucket['id']) : Promise<ReadableStream<any>> {\n const response = await this.client.request({\n url: this.getStreamPath(id),\n responseType: 'stream',\n });\n\n return response.data;\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { BuildInput } from 'rapiq';\nimport { buildQuery } from 'rapiq';\nimport { nullifyEmptyObjectProperties } from '@privateaim/core';\nimport type { CollectionResourceResponse, SingleResourceResponse } from '@privateaim/core';\nimport type { BucketFile } from './entity';\nimport { BaseAPI } from '../base';\n\nexport class BucketFileAPI extends BaseAPI {\n async getMany(record?: BuildInput<BucketFile>): Promise<CollectionResourceResponse<BucketFile>> {\n const response = await this.client.get(`bucket-files${buildQuery(record)}`);\n return response.data;\n }\n\n async getOne(id: BucketFile['id'], requestRecord?: BuildInput<BucketFile>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.get(`bucket-files/${id}${buildQuery(requestRecord)}`);\n\n return response.data;\n }\n\n async create(data: Record<string, any>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.post('bucket-files', nullifyEmptyObjectProperties(data));\n\n return response.data;\n }\n\n async delete(id: BucketFile['id']): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.delete(`bucket-files/${id}`);\n return response.data;\n }\n\n async update(id: BucketFile['id'], data: Record<string, any>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.post(`bucket-files/${id}`, nullifyEmptyObjectProperties(data));\n return response.data;\n }\n\n getStreamPath(id: BucketFile['id']): string {\n return `bucket-files/${id}/stream`;\n }\n\n getStreamURL(id: BucketFile['id']) : string {\n return new URL(this.getStreamPath(id), this.client.getBaseURL()).href;\n }\n\n async stream(id: BucketFile['id']) : Promise<ReadableStream<any>> {\n const response = await this.client.request({\n url: this.getStreamPath(id),\n responseType: 'stream',\n });\n\n return response.data;\n }\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { RequestBaseOptions } from 'hapic';\nimport { Client, HookName, isClientError } from 'hapic';\nimport {\n BucketAPI,\n BucketFileAPI,\n} from '../../domains';\n\nexport class APIClient extends Client {\n public readonly bucket : BucketAPI;\n\n public readonly bucketFile : BucketFileAPI;\n\n constructor(config: RequestBaseOptions) {\n super(config);\n\n this.bucket = new BucketAPI({ client: this });\n this.bucketFile = new BucketFileAPI({ client: this });\n\n this.on(HookName.RESPONSE_ERROR, ((error) => {\n if (\n isClientError(error) &&\n error.response &&\n error.response.data &&\n typeof error.response.data.message === 'string'\n ) {\n error.message = error.response.data.message;\n }\n\n throw error;\n }));\n }\n}\n"],"names":["_define_property","BaseAPI","setClient","input","client","isClient","createClient","constructor","context","asyncGeneratorStep","BucketAPI","getMany","record","_async_to_generator","response","get","buildQuery","data","getOne","id","requestRecord","create","post","nullifyEmptyObjectProperties","delete","update","upload","formData","headers","getStreamPath","stream","request","url","responseType","BucketFileAPI","getStreamURL","URL","getBaseURL","href","APIClient","Client","config","bucket","bucketFile","on","HookName","RESPONSE_ERROR","error","isClientError","message"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/domains/base.ts","../src/domains/bucket/api.ts","../src/domains/bucket-file/api.ts","../src/http/api-client/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { createClient, isClient } from 'hapic';\nimport type { Client, RequestBaseOptions } from 'hapic';\nimport type { BaseAPIContext } from './types-base';\n\nexport class BaseAPI {\n protected client! : Client;\n\n // -----------------------------------------------------------------------------------\n\n constructor(context?: BaseAPIContext) {\n context = context || {};\n\n this.setClient(context.client);\n }\n\n // -----------------------------------------------------------------------------------\n\n setClient(input?: Client | RequestBaseOptions) {\n this.client = isClient(input) ?\n input :\n createClient(input);\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { BuildInput } from 'rapiq';\nimport { buildQuery } from 'rapiq';\nimport { nullifyEmptyObjectProperties } from '@privateaim/kit';\nimport type { CollectionResourceResponse, SingleResourceResponse } from '../types-base';\nimport { BaseAPI } from '../base';\nimport type { BucketFile } from '../bucket-file';\nimport type { Bucket } from './entity';\n\nexport class BucketAPI extends BaseAPI {\n async getMany(record?: BuildInput<Bucket>): Promise<CollectionResourceResponse<Bucket>> {\n const response = await this.client.get(`buckets${buildQuery(record)}`);\n return response.data;\n }\n\n async getOne(id: Bucket['id'], requestRecord?: BuildInput<Bucket>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.get(`buckets/${id}${buildQuery(requestRecord)}`);\n\n return response.data;\n }\n\n async create(data: Record<string, any>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.post('buckets', nullifyEmptyObjectProperties(data));\n\n return response.data;\n }\n\n async delete(id: Bucket['id']): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.delete(`buckets/${id}`);\n return response.data;\n }\n\n async update(id: Bucket['id'], data: Record<string, any>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.post(`buckets/${id}`, nullifyEmptyObjectProperties(data));\n return response.data;\n }\n\n async upload(id: Bucket['id'], formData: FormData): Promise<CollectionResourceResponse<BucketFile>> {\n const response = await this.client.post(`buckets/${id}/upload`, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n return response.data;\n }\n\n getStreamPath(id: string): string {\n return `buckets/${id}/stream`;\n }\n\n async stream(id: Bucket['id']) : Promise<ReadableStream<any>> {\n const response = await this.client.request({\n url: this.getStreamPath(id),\n responseType: 'stream',\n });\n\n return response.data;\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { BuildInput } from 'rapiq';\nimport { buildQuery } from 'rapiq';\nimport { nullifyEmptyObjectProperties } from '@privateaim/kit';\nimport type { CollectionResourceResponse, SingleResourceResponse } from '../types-base';\nimport type { BucketFile } from './entity';\nimport { BaseAPI } from '../base';\n\nexport class BucketFileAPI extends BaseAPI {\n async getMany(record?: BuildInput<BucketFile>): Promise<CollectionResourceResponse<BucketFile>> {\n const response = await this.client.get(`bucket-files${buildQuery(record)}`);\n return response.data;\n }\n\n async getOne(id: BucketFile['id'], requestRecord?: BuildInput<BucketFile>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.get(`bucket-files/${id}${buildQuery(requestRecord)}`);\n\n return response.data;\n }\n\n async create(data: Record<string, any>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.post('bucket-files', nullifyEmptyObjectProperties(data));\n\n return response.data;\n }\n\n async delete(id: BucketFile['id']): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.delete(`bucket-files/${id}`);\n return response.data;\n }\n\n async update(id: BucketFile['id'], data: Record<string, any>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.post(`bucket-files/${id}`, nullifyEmptyObjectProperties(data));\n return response.data;\n }\n\n getStreamPath(id: BucketFile['id']): string {\n return `bucket-files/${id}/stream`;\n }\n\n getStreamURL(id: BucketFile['id']) : string {\n return new URL(this.getStreamPath(id), this.client.getBaseURL()).href;\n }\n\n async stream(id: BucketFile['id']) : Promise<ReadableStream<any>> {\n const response = await this.client.request({\n url: this.getStreamPath(id),\n responseType: 'stream',\n });\n\n return response.data;\n }\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { RequestBaseOptions } from 'hapic';\nimport { Client, HookName, isClientError } from 'hapic';\nimport {\n BucketAPI,\n BucketFileAPI,\n} from '../../domains';\n\nexport class APIClient extends Client {\n public readonly bucket : BucketAPI;\n\n public readonly bucketFile : BucketFileAPI;\n\n constructor(config: RequestBaseOptions) {\n super(config);\n\n this.bucket = new BucketAPI({ client: this });\n this.bucketFile = new BucketFileAPI({ client: this });\n\n this.on(HookName.RESPONSE_ERROR, ((error) => {\n if (\n isClientError(error) &&\n error.response &&\n error.response.data &&\n typeof error.response.data.message === 'string'\n ) {\n error.message = error.response.data.message;\n }\n\n throw error;\n }));\n }\n}\n"],"names":["_define_property","BaseAPI","setClient","input","client","isClient","createClient","constructor","context","asyncGeneratorStep","BucketAPI","getMany","record","_async_to_generator","response","get","buildQuery","data","getOne","id","requestRecord","create","post","nullifyEmptyObjectProperties","delete","update","upload","formData","headers","getStreamPath","stream","request","url","responseType","BucketFileAPI","getStreamURL","URL","getBaseURL","href","APIClient","Client","config","bucket","bucketFile","on","HookName","RESPONSE_ERROR","error","isClientError","message"],"mappings":";;;;;;AAAA;;;;;AAKC,IAAA,SAAAA,kBAAA,CAAA,GAAA,EAAA,GAAA,EAAA,KAAA,EAAA;;;;;;;;;;;;;AAMM,MAAMC,OAAAA,CAAAA;;AAaTC,IAAAA,SAAAA,CAAUC,KAAmC,EAAE;AAC3C,QAAA,IAAI,CAACC,MAAM,GAAGC,cAASF,CAAAA,KAAAA,CAAAA,GACnBA,QACAG,kBAAaH,CAAAA,KAAAA,CAAAA,CAAAA;AACrB,KAAA;;AAZAI,IAAAA,WAAAA,CAAYC,OAAwB,CAAE;AAJtC,QAAAR,kBAAA,CAAA,IAAA,EAAUI,UAAV,KAAA,CAAA,CAAA,CAAA;AAKII,QAAAA,OAAAA,GAAUA,WAAW,EAAC,CAAA;AAEtB,QAAA,IAAI,CAACN,SAAS,CAACM,OAAAA,CAAQJ,MAAM,CAAA,CAAA;AACjC,KAAA;AASJ;;AC7BA;;;;;AAKC,IAAA,SAAAK,oBAAA,CAAA,GAAA,EAAA,OAAA,EAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,GAAA,EAAA,GAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUM,MAAMC,SAAkBT,SAAAA,OAAAA,CAAAA;AACrBU,IAAAA,OAAAA,CAAQC,MAA2B,EAAA;;eAAzCC,qBAAA,CAAA,YAAA;AACI,YAAA,MAAMC,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACW,GAAG,CAAC,CAAC,OAAO,EAAEC,gBAAWJ,CAAAA,MAAAA,CAAAA,CAAQ,CAAC,CAAA,CAAA;AACrE,YAAA,OAAOE,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;IAEMC,MAAOC,CAAAA,EAAgB,EAAEC,aAAkC,EAAA;;eAAjEP,qBAAA,CAAA,YAAA;AACI,YAAA,MAAMC,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACW,GAAG,CAAC,CAAC,QAAQ,EAAEI,EAAAA,CAAG,EAAEH,gBAAAA,CAAWI,eAAe,CAAC,CAAA,CAAA;AAElF,YAAA,OAAON,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEMI,IAAAA,MAAAA,CAAOJ,IAAyB,EAAA;;eAAtCJ,qBAAA,CAAA,YAAA;YACI,MAAMC,QAAAA,GAAW,MAAM,KAAKV,CAAAA,MAAM,CAACkB,IAAI,CAAC,WAAWC,gCAA6BN,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA;AAEhF,YAAA,OAAOH,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEMO,IAAAA,MAAAA,CAAOL,EAAgB,EAAA;;eAA7BN,qBAAA,CAAA,YAAA;YACI,MAAMC,QAAAA,GAAW,MAAM,KAAA,CAAKV,MAAM,CAACoB,MAAM,CAAC,CAAC,QAAQ,EAAEL,EAAAA,CAAG,CAAC,CAAA,CAAA;AACzD,YAAA,OAAOL,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;IAEMQ,MAAON,CAAAA,EAAgB,EAAEF,IAAyB,EAAA;;eAAxDJ,qBAAA,CAAA,YAAA;AACI,YAAA,MAAMC,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACkB,IAAI,CAAC,CAAC,QAAQ,EAAEH,EAAG,CAAA,CAAC,EAAEI,gCAA6BN,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA;AACtF,YAAA,OAAOH,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;IAEMS,MAAOP,CAAAA,EAAgB,EAAEQ,QAAkB,EAAA;;eAAjDd,qBAAA,CAAA,YAAA;AACI,YAAA,MAAMC,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACkB,IAAI,CAAC,CAAC,QAAQ,EAAEH,EAAAA,CAAG,OAAO,CAAC,EAAEQ,QAAU,EAAA;gBACtEC,OAAS,EAAA;oBACL,cAAgB,EAAA,qBAAA;AACpB,iBAAA;AACJ,aAAA,CAAA,CAAA;AAEA,YAAA,OAAOd,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEAY,IAAAA,aAAAA,CAAcV,EAAU,EAAU;AAC9B,QAAA,OAAO,CAAC,QAAQ,EAAEA,EAAAA,CAAG,OAAO,CAAC,CAAA;AACjC,KAAA;AAEMW,IAAAA,MAAAA,CAAOX,EAAgB,EAAA;;eAA7BN,qBAAA,CAAA,YAAA;AACI,YAAA,MAAMC,WAAW,MAAM,KAAA,CAAKV,MAAM,CAAC2B,OAAO,CAAC;gBACvCC,GAAK,EAAA,KAAA,CAAKH,aAAa,CAACV,EAAAA,CAAAA;gBACxBc,YAAc,EAAA,QAAA;AAClB,aAAA,CAAA,CAAA;AAEA,YAAA,OAAOnB,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AACJ;;ACjEA;;;;;AAKC,IAAA,SAAA,kBAAA,CAAA,GAAA,EAAA,OAAA,EAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,GAAA,EAAA,GAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASM,MAAMiB,aAAsBjC,SAAAA,OAAAA,CAAAA;AACzBU,IAAAA,OAAAA,CAAQC,MAA+B,EAAA;;eAA7C,mBAAA,CAAA,YAAA;AACI,YAAA,MAAME,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACW,GAAG,CAAC,CAAC,YAAY,EAAEC,gBAAWJ,CAAAA,MAAAA,CAAAA,CAAQ,CAAC,CAAA,CAAA;AAC1E,YAAA,OAAOE,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;IAEMC,MAAOC,CAAAA,EAAoB,EAAEC,aAAsC,EAAA;;eAAzE,mBAAA,CAAA,YAAA;AACI,YAAA,MAAMN,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACW,GAAG,CAAC,CAAC,aAAa,EAAEI,EAAAA,CAAG,EAAEH,gBAAAA,CAAWI,eAAe,CAAC,CAAA,CAAA;AAEvF,YAAA,OAAON,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEMI,IAAAA,MAAAA,CAAOJ,IAAyB,EAAA;;eAAtC,mBAAA,CAAA,YAAA;YACI,MAAMH,QAAAA,GAAW,MAAM,KAAKV,CAAAA,MAAM,CAACkB,IAAI,CAAC,gBAAgBC,gCAA6BN,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA;AAErF,YAAA,OAAOH,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEMO,IAAAA,MAAAA,CAAOL,EAAoB,EAAA;;eAAjC,mBAAA,CAAA,YAAA;YACI,MAAML,QAAAA,GAAW,MAAM,KAAA,CAAKV,MAAM,CAACoB,MAAM,CAAC,CAAC,aAAa,EAAEL,EAAAA,CAAG,CAAC,CAAA,CAAA;AAC9D,YAAA,OAAOL,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;IAEMQ,MAAON,CAAAA,EAAoB,EAAEF,IAAyB,EAAA;;eAA5D,mBAAA,CAAA,YAAA;AACI,YAAA,MAAMH,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACkB,IAAI,CAAC,CAAC,aAAa,EAAEH,EAAG,CAAA,CAAC,EAAEI,gCAA6BN,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA;AAC3F,YAAA,OAAOH,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEAY,IAAAA,aAAAA,CAAcV,EAAoB,EAAU;AACxC,QAAA,OAAO,CAAC,aAAa,EAAEA,EAAAA,CAAG,OAAO,CAAC,CAAA;AACtC,KAAA;AAEAgB,IAAAA,YAAAA,CAAahB,EAAoB,EAAW;AACxC,QAAA,OAAO,IAAIiB,GAAAA,CAAI,IAAI,CAACP,aAAa,CAACV,EAAK,CAAA,EAAA,IAAI,CAACf,MAAM,CAACiC,UAAU,IAAIC,IAAI,CAAA;AACzE,KAAA;AAEMR,IAAAA,MAAAA,CAAOX,EAAoB,EAAA;;eAAjC,mBAAA,CAAA,YAAA;AACI,YAAA,MAAML,WAAW,MAAM,KAAA,CAAKV,MAAM,CAAC2B,OAAO,CAAC;gBACvCC,GAAK,EAAA,KAAA,CAAKH,aAAa,CAACV,EAAAA,CAAAA;gBACxBc,YAAc,EAAA,QAAA;AAClB,aAAA,CAAA,CAAA;AAEA,YAAA,OAAOnB,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AACJ;;AC1DA;;;;;AAKC,IAAA,SAAA,gBAAA,CAAA,GAAA,EAAA,GAAA,EAAA,KAAA,EAAA;;;;;;;;;;;;;AASM,MAAMsB,SAAkBC,SAAAA,YAAAA,CAAAA;AAK3BjC,IAAAA,WAAAA,CAAYkC,MAA0B,CAAE;AACpC,QAAA,KAAK,CAACA,MAAAA,CAAAA,CAAAA;AALV,QAAA,gBAAA,CAAA,IAAA,EAAgBC,UAAhB,KAAA,CAAA,CAAA,CAAA;AAEA,QAAA,gBAAA,CAAA,IAAA,EAAgBC,cAAhB,KAAA,CAAA,CAAA,CAAA;AAKI,QAAA,IAAI,CAACD,MAAM,GAAG,IAAIhC,SAAU,CAAA;AAAEN,YAAAA,MAAAA,EAAQ,IAAI;AAAC,SAAA,CAAA,CAAA;AAC3C,QAAA,IAAI,CAACuC,UAAU,GAAG,IAAIT,aAAc,CAAA;AAAE9B,YAAAA,MAAAA,EAAQ,IAAI;AAAC,SAAA,CAAA,CAAA;AAEnD,QAAA,IAAI,CAACwC,EAAE,CAACC,cAASC,CAAAA,cAAc,EAAG,CAACC,KAAAA,GAAAA;AAC/B,YAAA,IACIC,oBAAcD,KACdA,CAAAA,IAAAA,KAAAA,CAAMjC,QAAQ,IACdiC,KAAAA,CAAMjC,QAAQ,CAACG,IAAI,IACnB,OAAO8B,MAAMjC,QAAQ,CAACG,IAAI,CAACgC,OAAO,KAAK,QACzC,EAAA;AACEF,gBAAAA,KAAAA,CAAME,OAAO,GAAGF,KAAAA,CAAMjC,QAAQ,CAACG,IAAI,CAACgC,OAAO,CAAA;AAC/C,aAAA;YAEA,MAAMF,KAAAA,CAAAA;AACV,SAAA,CAAA,CAAA;AACJ,KAAA;AACJ;;;;;;"}
|
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isClient, createClient, Client, HookName, isClientError } from 'hapic';
|
|
2
2
|
import { buildQuery } from 'rapiq';
|
|
3
|
-
import { nullifyEmptyObjectProperties } from '@privateaim/
|
|
3
|
+
import { nullifyEmptyObjectProperties } from '@privateaim/kit';
|
|
4
4
|
|
|
5
5
|
/*
|
|
6
6
|
* Copyright (c) 2023-2024.
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../src/domains/base.ts","../src/domains/bucket/api.ts","../src/domains/bucket-file/api.ts","../src/http/api-client/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { createClient, isClient } from 'hapic';\nimport type { Client, RequestBaseOptions } from 'hapic';\nimport type { BaseAPIContext } from './types-base';\n\nexport class BaseAPI {\n protected client! : Client;\n\n // -----------------------------------------------------------------------------------\n\n constructor(context?: BaseAPIContext) {\n context = context || {};\n\n this.setClient(context.client);\n }\n\n // -----------------------------------------------------------------------------------\n\n setClient(input?: Client | RequestBaseOptions) {\n this.client = isClient(input) ?\n input :\n createClient(input);\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Analysis } from '@privateaim/core/src';\nimport type { BuildInput } from 'rapiq';\nimport { buildQuery } from 'rapiq';\nimport { nullifyEmptyObjectProperties } from '@privateaim/core';\nimport type { CollectionResourceResponse, SingleResourceResponse } from '@privateaim/core';\nimport { BaseAPI } from '../base';\nimport type { BucketFile } from '../bucket-file';\nimport type { Bucket } from './entity';\n\nexport class BucketAPI extends BaseAPI {\n async getMany(record?: BuildInput<Bucket>): Promise<CollectionResourceResponse<Bucket>> {\n const response = await this.client.get(`buckets${buildQuery(record)}`);\n return response.data;\n }\n\n async getOne(id: Bucket['id'], requestRecord?: BuildInput<Bucket>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.get(`buckets/${id}${buildQuery(requestRecord)}`);\n\n return response.data;\n }\n\n async create(data: Record<string, any>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.post('buckets', nullifyEmptyObjectProperties(data));\n\n return response.data;\n }\n\n async delete(id: Bucket['id']): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.delete(`buckets/${id}`);\n return response.data;\n }\n\n async update(id: Bucket['id'], data: Record<string, any>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.post(`buckets/${id}`, nullifyEmptyObjectProperties(data));\n return response.data;\n }\n\n async upload(id: Bucket['id'], formData: FormData): Promise<CollectionResourceResponse<BucketFile>> {\n const response = await this.client.post(`buckets/${id}/upload`, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n return response.data;\n }\n\n getStreamPath(id: Analysis['id']): string {\n return `buckets/${id}/stream`;\n }\n\n async stream(id: Bucket['id']) : Promise<ReadableStream<any>> {\n const response = await this.client.request({\n url: this.getStreamPath(id),\n responseType: 'stream',\n });\n\n return response.data;\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { BuildInput } from 'rapiq';\nimport { buildQuery } from 'rapiq';\nimport { nullifyEmptyObjectProperties } from '@privateaim/core';\nimport type { CollectionResourceResponse, SingleResourceResponse } from '@privateaim/core';\nimport type { BucketFile } from './entity';\nimport { BaseAPI } from '../base';\n\nexport class BucketFileAPI extends BaseAPI {\n async getMany(record?: BuildInput<BucketFile>): Promise<CollectionResourceResponse<BucketFile>> {\n const response = await this.client.get(`bucket-files${buildQuery(record)}`);\n return response.data;\n }\n\n async getOne(id: BucketFile['id'], requestRecord?: BuildInput<BucketFile>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.get(`bucket-files/${id}${buildQuery(requestRecord)}`);\n\n return response.data;\n }\n\n async create(data: Record<string, any>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.post('bucket-files', nullifyEmptyObjectProperties(data));\n\n return response.data;\n }\n\n async delete(id: BucketFile['id']): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.delete(`bucket-files/${id}`);\n return response.data;\n }\n\n async update(id: BucketFile['id'], data: Record<string, any>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.post(`bucket-files/${id}`, nullifyEmptyObjectProperties(data));\n return response.data;\n }\n\n getStreamPath(id: BucketFile['id']): string {\n return `bucket-files/${id}/stream`;\n }\n\n getStreamURL(id: BucketFile['id']) : string {\n return new URL(this.getStreamPath(id), this.client.getBaseURL()).href;\n }\n\n async stream(id: BucketFile['id']) : Promise<ReadableStream<any>> {\n const response = await this.client.request({\n url: this.getStreamPath(id),\n responseType: 'stream',\n });\n\n return response.data;\n }\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { RequestBaseOptions } from 'hapic';\nimport { Client, HookName, isClientError } from 'hapic';\nimport {\n BucketAPI,\n BucketFileAPI,\n} from '../../domains';\n\nexport class APIClient extends Client {\n public readonly bucket : BucketAPI;\n\n public readonly bucketFile : BucketFileAPI;\n\n constructor(config: RequestBaseOptions) {\n super(config);\n\n this.bucket = new BucketAPI({ client: this });\n this.bucketFile = new BucketFileAPI({ client: this });\n\n this.on(HookName.RESPONSE_ERROR, ((error) => {\n if (\n isClientError(error) &&\n error.response &&\n error.response.data &&\n typeof error.response.data.message === 'string'\n ) {\n error.message = error.response.data.message;\n }\n\n throw error;\n }));\n }\n}\n"],"names":["_define_property","BaseAPI","setClient","input","client","isClient","createClient","constructor","context","asyncGeneratorStep","BucketAPI","getMany","record","_async_to_generator","response","get","buildQuery","data","getOne","id","requestRecord","create","post","nullifyEmptyObjectProperties","delete","update","upload","formData","headers","getStreamPath","stream","request","url","responseType","BucketFileAPI","getStreamURL","URL","getBaseURL","href","APIClient","Client","config","bucket","bucketFile","on","HookName","RESPONSE_ERROR","error","isClientError","message"],"mappings":";;;;AAAA;;;;;AAKC,IAAA,SAAAA,kBAAA,CAAA,GAAA,EAAA,GAAA,EAAA,KAAA,EAAA;;;;;;;;;;;;;AAMM,MAAMC,OAAAA,CAAAA;;AAaTC,IAAAA,SAAAA,CAAUC,KAAmC,EAAE;AAC3C,QAAA,IAAI,CAACC,MAAM,GAAGC,QAASF,CAAAA,KAAAA,CAAAA,GACnBA,QACAG,YAAaH,CAAAA,KAAAA,CAAAA,CAAAA;AACrB,KAAA;;AAZAI,IAAAA,WAAAA,CAAYC,OAAwB,CAAE;AAJtC,QAAAR,kBAAA,CAAA,IAAA,EAAUI,UAAV,KAAA,CAAA,CAAA,CAAA;AAKII,QAAAA,OAAAA,GAAUA,WAAW,EAAC,CAAA;AAEtB,QAAA,IAAI,CAACN,SAAS,CAACM,OAAAA,CAAQJ,MAAM,CAAA,CAAA;AACjC,KAAA;AASJ;;AC7BA;;;;;AAKC,IAAA,SAAAK,oBAAA,CAAA,GAAA,EAAA,OAAA,EAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,GAAA,EAAA,GAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWM,MAAMC,SAAkBT,SAAAA,OAAAA,CAAAA;AACrBU,IAAAA,OAAAA,CAAQC,MAA2B,EAAA;;eAAzCC,qBAAA,CAAA,YAAA;AACI,YAAA,MAAMC,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACW,GAAG,CAAC,CAAC,OAAO,EAAEC,UAAWJ,CAAAA,MAAAA,CAAAA,CAAQ,CAAC,CAAA,CAAA;AACrE,YAAA,OAAOE,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;IAEMC,MAAOC,CAAAA,EAAgB,EAAEC,aAAkC,EAAA;;eAAjEP,qBAAA,CAAA,YAAA;AACI,YAAA,MAAMC,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACW,GAAG,CAAC,CAAC,QAAQ,EAAEI,EAAAA,CAAG,EAAEH,UAAAA,CAAWI,eAAe,CAAC,CAAA,CAAA;AAElF,YAAA,OAAON,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEMI,IAAAA,MAAAA,CAAOJ,IAAyB,EAAA;;eAAtCJ,qBAAA,CAAA,YAAA;YACI,MAAMC,QAAAA,GAAW,MAAM,KAAKV,CAAAA,MAAM,CAACkB,IAAI,CAAC,WAAWC,4BAA6BN,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA;AAEhF,YAAA,OAAOH,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEMO,IAAAA,MAAAA,CAAOL,EAAgB,EAAA;;eAA7BN,qBAAA,CAAA,YAAA;YACI,MAAMC,QAAAA,GAAW,MAAM,KAAA,CAAKV,MAAM,CAACoB,MAAM,CAAC,CAAC,QAAQ,EAAEL,EAAAA,CAAG,CAAC,CAAA,CAAA;AACzD,YAAA,OAAOL,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;IAEMQ,MAAON,CAAAA,EAAgB,EAAEF,IAAyB,EAAA;;eAAxDJ,qBAAA,CAAA,YAAA;AACI,YAAA,MAAMC,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACkB,IAAI,CAAC,CAAC,QAAQ,EAAEH,EAAG,CAAA,CAAC,EAAEI,4BAA6BN,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA;AACtF,YAAA,OAAOH,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;IAEMS,MAAOP,CAAAA,EAAgB,EAAEQ,QAAkB,EAAA;;eAAjDd,qBAAA,CAAA,YAAA;AACI,YAAA,MAAMC,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACkB,IAAI,CAAC,CAAC,QAAQ,EAAEH,EAAAA,CAAG,OAAO,CAAC,EAAEQ,QAAU,EAAA;gBACtEC,OAAS,EAAA;oBACL,cAAgB,EAAA,qBAAA;AACpB,iBAAA;AACJ,aAAA,CAAA,CAAA;AAEA,YAAA,OAAOd,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEAY,IAAAA,aAAAA,CAAcV,EAAkB,EAAU;AACtC,QAAA,OAAO,CAAC,QAAQ,EAAEA,EAAAA,CAAG,OAAO,CAAC,CAAA;AACjC,KAAA;AAEMW,IAAAA,MAAAA,CAAOX,EAAgB,EAAA;;eAA7BN,qBAAA,CAAA,YAAA;AACI,YAAA,MAAMC,WAAW,MAAM,KAAA,CAAKV,MAAM,CAAC2B,OAAO,CAAC;gBACvCC,GAAK,EAAA,KAAA,CAAKH,aAAa,CAACV,EAAAA,CAAAA;gBACxBc,YAAc,EAAA,QAAA;AAClB,aAAA,CAAA,CAAA;AAEA,YAAA,OAAOnB,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AACJ;;AClEA;;;;;AAKC,IAAA,SAAA,kBAAA,CAAA,GAAA,EAAA,OAAA,EAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,GAAA,EAAA,GAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASM,MAAMiB,aAAsBjC,SAAAA,OAAAA,CAAAA;AACzBU,IAAAA,OAAAA,CAAQC,MAA+B,EAAA;;eAA7C,mBAAA,CAAA,YAAA;AACI,YAAA,MAAME,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACW,GAAG,CAAC,CAAC,YAAY,EAAEC,UAAWJ,CAAAA,MAAAA,CAAAA,CAAQ,CAAC,CAAA,CAAA;AAC1E,YAAA,OAAOE,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;IAEMC,MAAOC,CAAAA,EAAoB,EAAEC,aAAsC,EAAA;;eAAzE,mBAAA,CAAA,YAAA;AACI,YAAA,MAAMN,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACW,GAAG,CAAC,CAAC,aAAa,EAAEI,EAAAA,CAAG,EAAEH,UAAAA,CAAWI,eAAe,CAAC,CAAA,CAAA;AAEvF,YAAA,OAAON,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEMI,IAAAA,MAAAA,CAAOJ,IAAyB,EAAA;;eAAtC,mBAAA,CAAA,YAAA;YACI,MAAMH,QAAAA,GAAW,MAAM,KAAKV,CAAAA,MAAM,CAACkB,IAAI,CAAC,gBAAgBC,4BAA6BN,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA;AAErF,YAAA,OAAOH,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEMO,IAAAA,MAAAA,CAAOL,EAAoB,EAAA;;eAAjC,mBAAA,CAAA,YAAA;YACI,MAAML,QAAAA,GAAW,MAAM,KAAA,CAAKV,MAAM,CAACoB,MAAM,CAAC,CAAC,aAAa,EAAEL,EAAAA,CAAG,CAAC,CAAA,CAAA;AAC9D,YAAA,OAAOL,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;IAEMQ,MAAON,CAAAA,EAAoB,EAAEF,IAAyB,EAAA;;eAA5D,mBAAA,CAAA,YAAA;AACI,YAAA,MAAMH,QAAW,GAAA,MAAM,KAAKV,CAAAA,MAAM,CAACkB,IAAI,CAAC,CAAC,aAAa,EAAEH,EAAG,CAAA,CAAC,EAAEI,4BAA6BN,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA;AAC3F,YAAA,OAAOH,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AAEAY,IAAAA,aAAAA,CAAcV,EAAoB,EAAU;AACxC,QAAA,OAAO,CAAC,aAAa,EAAEA,EAAAA,CAAG,OAAO,CAAC,CAAA;AACtC,KAAA;AAEAgB,IAAAA,YAAAA,CAAahB,EAAoB,EAAW;AACxC,QAAA,OAAO,IAAIiB,GAAAA,CAAI,IAAI,CAACP,aAAa,CAACV,EAAK,CAAA,EAAA,IAAI,CAACf,MAAM,CAACiC,UAAU,IAAIC,IAAI,CAAA;AACzE,KAAA;AAEMR,IAAAA,MAAAA,CAAOX,EAAoB,EAAA;;eAAjC,mBAAA,CAAA,YAAA;AACI,YAAA,MAAML,WAAW,MAAM,KAAA,CAAKV,MAAM,CAAC2B,OAAO,CAAC;gBACvCC,GAAK,EAAA,KAAA,CAAKH,aAAa,CAACV,EAAAA,CAAAA;gBACxBc,YAAc,EAAA,QAAA;AAClB,aAAA,CAAA,CAAA;AAEA,YAAA,OAAOnB,SAASG,IAAI,CAAA;AACxB,SAAA,CAAA,EAAA,CAAA;;AACJ;;AC1DA;;;;;AAKC,IAAA,SAAA,gBAAA,CAAA,GAAA,EAAA,GAAA,EAAA,KAAA,EAAA;;;;;;;;;;;;;AASM,MAAMsB,SAAkBC,SAAAA,MAAAA,CAAAA;AAK3BjC,IAAAA,WAAAA,CAAYkC,MAA0B,CAAE;AACpC,QAAA,KAAK,CAACA,MAAAA,CAAAA,CAAAA;AALV,QAAA,gBAAA,CAAA,IAAA,EAAgBC,UAAhB,KAAA,CAAA,CAAA,CAAA;AAEA,QAAA,gBAAA,CAAA,IAAA,EAAgBC,cAAhB,KAAA,CAAA,CAAA,CAAA;AAKI,QAAA,IAAI,CAACD,MAAM,GAAG,IAAIhC,SAAU,CAAA;AAAEN,YAAAA,MAAAA,EAAQ,IAAI;AAAC,SAAA,CAAA,CAAA;AAC3C,QAAA,IAAI,CAACuC,UAAU,GAAG,IAAIT,aAAc,CAAA;AAAE9B,YAAAA,MAAAA,EAAQ,IAAI;AAAC,SAAA,CAAA,CAAA;AAEnD,QAAA,IAAI,CAACwC,EAAE,CAACC,QAASC,CAAAA,cAAc,EAAG,CAACC,KAAAA,GAAAA;AAC/B,YAAA,IACIC,cAAcD,KACdA,CAAAA,IAAAA,KAAAA,CAAMjC,QAAQ,IACdiC,KAAAA,CAAMjC,QAAQ,CAACG,IAAI,IACnB,OAAO8B,MAAMjC,QAAQ,CAACG,IAAI,CAACgC,OAAO,KAAK,QACzC,EAAA;AACEF,gBAAAA,KAAAA,CAAME,OAAO,GAAGF,KAAAA,CAAMjC,QAAQ,CAACG,IAAI,CAACgC,OAAO,CAAA;AAC/C,aAAA;YAEA,MAAMF,KAAAA,CAAAA;AACV,SAAA,CAAA,CAAA;AACJ,KAAA;AACJ;;;;"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../src/domains/base.ts","../src/domains/bucket/api.ts","../src/domains/bucket-file/api.ts","../src/http/api-client/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { createClient, isClient } from 'hapic';\nimport type { Client, RequestBaseOptions } from 'hapic';\nimport type { BaseAPIContext } from './types-base';\n\nexport class BaseAPI {\n protected client! : Client;\n\n // -----------------------------------------------------------------------------------\n\n constructor(context?: BaseAPIContext) {\n context = context || {};\n\n this.setClient(context.client);\n }\n\n // -----------------------------------------------------------------------------------\n\n setClient(input?: Client | RequestBaseOptions) {\n this.client = isClient(input) ?\n input :\n createClient(input);\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { BuildInput } from 'rapiq';\nimport { buildQuery } from 'rapiq';\nimport { nullifyEmptyObjectProperties } from '@privateaim/kit';\nimport type { CollectionResourceResponse, SingleResourceResponse } from '../types-base';\nimport { BaseAPI } from '../base';\nimport type { BucketFile } from '../bucket-file';\nimport type { Bucket } from './entity';\n\nexport class BucketAPI extends BaseAPI {\n async getMany(record?: BuildInput<Bucket>): Promise<CollectionResourceResponse<Bucket>> {\n const response = await this.client.get(`buckets${buildQuery(record)}`);\n return response.data;\n }\n\n async getOne(id: Bucket['id'], requestRecord?: BuildInput<Bucket>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.get(`buckets/${id}${buildQuery(requestRecord)}`);\n\n return response.data;\n }\n\n async create(data: Record<string, any>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.post('buckets', nullifyEmptyObjectProperties(data));\n\n return response.data;\n }\n\n async delete(id: Bucket['id']): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.delete(`buckets/${id}`);\n return response.data;\n }\n\n async update(id: Bucket['id'], data: Record<string, any>): Promise<SingleResourceResponse<Bucket>> {\n const response = await this.client.post(`buckets/${id}`, nullifyEmptyObjectProperties(data));\n return response.data;\n }\n\n async upload(id: Bucket['id'], formData: FormData): Promise<CollectionResourceResponse<BucketFile>> {\n const response = await this.client.post(`buckets/${id}/upload`, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n return response.data;\n }\n\n getStreamPath(id: string): string {\n return `buckets/${id}/stream`;\n }\n\n async stream(id: Bucket['id']) : Promise<ReadableStream<any>> {\n const response = await this.client.request({\n url: this.getStreamPath(id),\n responseType: 'stream',\n });\n\n return response.data;\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { BuildInput } from 'rapiq';\nimport { buildQuery } from 'rapiq';\nimport { nullifyEmptyObjectProperties } from '@privateaim/kit';\nimport type { CollectionResourceResponse, SingleResourceResponse } from '../types-base';\nimport type { BucketFile } from './entity';\nimport { BaseAPI } from '../base';\n\nexport class BucketFileAPI extends BaseAPI {\n async getMany(record?: BuildInput<BucketFile>): Promise<CollectionResourceResponse<BucketFile>> {\n const response = await this.client.get(`bucket-files${buildQuery(record)}`);\n return response.data;\n }\n\n async getOne(id: BucketFile['id'], requestRecord?: BuildInput<BucketFile>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.get(`bucket-files/${id}${buildQuery(requestRecord)}`);\n\n return response.data;\n }\n\n async create(data: Record<string, any>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.post('bucket-files', nullifyEmptyObjectProperties(data));\n\n return response.data;\n }\n\n async delete(id: BucketFile['id']): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.delete(`bucket-files/${id}`);\n return response.data;\n }\n\n async update(id: BucketFile['id'], data: Record<string, any>): Promise<SingleResourceResponse<BucketFile>> {\n const response = await this.client.post(`bucket-files/${id}`, nullifyEmptyObjectProperties(data));\n return response.data;\n }\n\n getStreamPath(id: BucketFile['id']): string {\n return `bucket-files/${id}/stream`;\n }\n\n getStreamURL(id: BucketFile['id']) : string {\n return new URL(this.getStreamPath(id), this.client.getBaseURL()).href;\n }\n\n async stream(id: BucketFile['id']) : Promise<ReadableStream<any>> {\n const response = await this.client.request({\n url: this.getStreamPath(id),\n responseType: 'stream',\n });\n\n return response.data;\n }\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { RequestBaseOptions } from 'hapic';\nimport { Client, HookName, isClientError } from 'hapic';\nimport {\n BucketAPI,\n BucketFileAPI,\n} from '../../domains';\n\nexport class APIClient extends Client {\n public readonly bucket : BucketAPI;\n\n public readonly bucketFile : BucketFileAPI;\n\n constructor(config: RequestBaseOptions) {\n super(config);\n\n this.bucket = new BucketAPI({ client: this });\n this.bucketFile = new BucketFileAPI({ client: this });\n\n this.on(HookName.RESPONSE_ERROR, ((error) => {\n if (\n isClientError(error) &&\n error.response &&\n error.response.data &&\n typeof error.response.data.message === 'string'\n ) {\n error.message = error.response.data.message;\n }\n\n throw error;\n }));\n }\n}\n"],"names":["_define_property","BaseAPI","setClient","input","client","isClient","createClient","constructor","context","asyncGeneratorStep","BucketAPI","getMany","record","_async_to_generator","response","get","buildQuery","data","getOne","id","requestRecord","create","post","nullifyEmptyObjectProperties","delete","update","upload","formData","headers","getStreamPath","stream","request","url","responseType","BucketFileAPI","getStreamURL","URL","getBaseURL","href","APIClient","Client","config","bucket","bucketFile","on","HookName","RESPONSE_ERROR","error","isClientError","message"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@privateaim/storage-kit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"description": "",
|
|
6
6
|
"exports": {
|
|
@@ -21,13 +21,13 @@
|
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"@authup/core-kit": "^1.0.0-beta.13",
|
|
24
|
-
"@privateaim/
|
|
24
|
+
"@privateaim/kit": "^0.5.0",
|
|
25
25
|
"hapic": "^2.5.1",
|
|
26
26
|
"rapiq": "^0.9.0"
|
|
27
27
|
},
|
|
28
28
|
"peerDependencies": {
|
|
29
29
|
"@authup/core-kit": "^1.0.0-beta.13",
|
|
30
|
-
"@privateaim/
|
|
30
|
+
"@privateaim/kit": "^0.5.0",
|
|
31
31
|
"hapic": "^2.5.1",
|
|
32
32
|
"rapiq": "^0.9.0"
|
|
33
33
|
},
|
|
@@ -5,11 +5,10 @@
|
|
|
5
5
|
* view the LICENSE file that was distributed with this source code.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
import type { Analysis } from '@privateaim/core/src';
|
|
9
8
|
import type { BuildInput } from 'rapiq';
|
|
10
9
|
import { buildQuery } from 'rapiq';
|
|
11
|
-
import { nullifyEmptyObjectProperties } from '@privateaim/
|
|
12
|
-
import type { CollectionResourceResponse, SingleResourceResponse } from '
|
|
10
|
+
import { nullifyEmptyObjectProperties } from '@privateaim/kit';
|
|
11
|
+
import type { CollectionResourceResponse, SingleResourceResponse } from '../types-base';
|
|
13
12
|
import { BaseAPI } from '../base';
|
|
14
13
|
import type { BucketFile } from '../bucket-file';
|
|
15
14
|
import type { Bucket } from './entity';
|
|
@@ -52,7 +51,7 @@ export class BucketAPI extends BaseAPI {
|
|
|
52
51
|
return response.data;
|
|
53
52
|
}
|
|
54
53
|
|
|
55
|
-
getStreamPath(id:
|
|
54
|
+
getStreamPath(id: string): string {
|
|
56
55
|
return `buckets/${id}/stream`;
|
|
57
56
|
}
|
|
58
57
|
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
|
|
8
8
|
import type { BuildInput } from 'rapiq';
|
|
9
9
|
import { buildQuery } from 'rapiq';
|
|
10
|
-
import { nullifyEmptyObjectProperties } from '@privateaim/
|
|
11
|
-
import type { CollectionResourceResponse, SingleResourceResponse } from '
|
|
10
|
+
import { nullifyEmptyObjectProperties } from '@privateaim/kit';
|
|
11
|
+
import type { CollectionResourceResponse, SingleResourceResponse } from '../types-base';
|
|
12
12
|
import type { BucketFile } from './entity';
|
|
13
13
|
import { BaseAPI } from '../base';
|
|
14
14
|
|
|
@@ -7,6 +7,16 @@
|
|
|
7
7
|
|
|
8
8
|
import type { Client, RequestBaseOptions } from 'hapic';
|
|
9
9
|
|
|
10
|
+
export type SingleResourceResponse<R> = R;
|
|
11
|
+
export type CollectionResourceResponse<R> = {
|
|
12
|
+
data: R[],
|
|
13
|
+
meta: {
|
|
14
|
+
limit: number,
|
|
15
|
+
offset: number,
|
|
16
|
+
total: number
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
|
|
10
20
|
export type BaseAPIContext = {
|
|
11
21
|
client?: Client | RequestBaseOptions
|
|
12
22
|
};
|