@api-client/core 0.8.22 → 0.9.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/build/browser.d.ts +12 -5
- package/build/browser.js +2 -3
- package/build/browser.js.map +1 -1
- package/build/index.d.ts +12 -5
- package/build/index.js +2 -4
- package/build/index.js.map +1 -1
- package/build/src/events/BaseEvents.d.ts +125 -18
- package/build/src/events/BaseEvents.js.map +1 -1
- package/build/src/events/EventTypes.d.ts +0 -14
- package/build/src/events/EventTypes.js +0 -2
- package/build/src/events/EventTypes.js.map +1 -1
- package/build/src/events/Events.d.ts +1 -5
- package/build/src/events/Events.js +0 -2
- package/build/src/events/Events.js.map +1 -1
- package/build/src/events/transport/TransportEventTypes.d.ts +0 -1
- package/build/src/events/transport/TransportEventTypes.js +0 -1
- package/build/src/events/transport/TransportEventTypes.js.map +1 -1
- package/build/src/events/transport/TransportEvents.d.ts +0 -8
- package/build/src/events/transport/TransportEvents.js +0 -11
- package/build/src/events/transport/TransportEvents.js.map +1 -1
- package/build/src/mocking/ProjectMock.d.ts +0 -3
- package/build/src/mocking/ProjectMock.js +0 -3
- package/build/src/mocking/ProjectMock.js.map +1 -1
- package/build/src/mocking/lib/History.js +5 -0
- package/build/src/mocking/lib/History.js.map +1 -1
- package/build/src/models/{Workspace.d.ts → Folder.d.ts} +7 -7
- package/build/src/models/{Workspace.js → Folder.js} +5 -5
- package/build/src/models/Folder.js.map +1 -0
- package/build/src/models/HttpHistory.d.ts +38 -43
- package/build/src/models/HttpHistory.js +27 -34
- package/build/src/models/HttpHistory.js.map +1 -1
- package/build/src/models/HttpProject.d.ts +0 -2
- package/build/src/models/HttpProject.js +0 -27
- package/build/src/models/HttpProject.js.map +1 -1
- package/build/src/models/Project.d.ts +0 -8
- package/build/src/models/Project.js +0 -4
- package/build/src/models/Project.js.map +1 -1
- package/build/src/models/ProjectFolder.d.ts +0 -2
- package/build/src/models/ProjectFolder.js +0 -14
- package/build/src/models/ProjectFolder.js.map +1 -1
- package/build/src/models/ProjectItem.d.ts +0 -2
- package/build/src/models/ProjectItem.js +0 -20
- package/build/src/models/ProjectItem.js.map +1 -1
- package/build/src/models/ProjectRequest.d.ts +2 -3
- package/build/src/models/ProjectRequest.js.map +1 -1
- package/build/src/models/RequestConfig.d.ts +1 -1
- package/build/src/models/Space.d.ts +42 -0
- package/build/src/models/Space.js +81 -0
- package/build/src/models/Space.js.map +1 -0
- package/build/src/models/TrashEntry.d.ts +27 -0
- package/build/src/models/TrashEntry.js +2 -0
- package/build/src/models/TrashEntry.js.map +1 -0
- package/build/src/models/store/Backend.d.ts +0 -315
- package/build/src/models/store/Backend.js +0 -1
- package/build/src/models/store/Backend.js.map +1 -1
- package/build/src/models/store/File.d.ts +30 -0
- package/build/src/models/store/File.js +5 -5
- package/build/src/models/store/File.js.map +1 -1
- package/build/src/proxy/ProxyService.d.ts +0 -10
- package/build/src/proxy/ProxyService.js +0 -14
- package/build/src/proxy/ProxyService.js.map +1 -1
- package/build/src/runtime/node/InteropInterfaces.d.ts +1 -2
- package/build/src/runtime/node/ProjectParallelRunner.d.ts +2 -3
- package/build/src/runtime/node/ProjectParallelRunner.js.map +1 -1
- package/build/src/runtime/node/ProjectRequestRunner.d.ts +7 -8
- package/build/src/runtime/node/ProjectRequestRunner.js +2 -3
- package/build/src/runtime/node/ProjectRequestRunner.js.map +1 -1
- package/build/src/runtime/node/ProjectRunner.d.ts +3 -4
- package/build/src/runtime/node/ProjectRunner.js.map +1 -1
- package/build/src/runtime/node/ProjectRunnerWorker.js +0 -4
- package/build/src/runtime/node/ProjectRunnerWorker.js.map +1 -1
- package/build/src/runtime/store/CertificatesSdk.d.ts +46 -0
- package/build/src/runtime/store/CertificatesSdk.js +227 -0
- package/build/src/runtime/store/CertificatesSdk.js.map +1 -0
- package/build/src/runtime/store/FilesSdk.d.ts +14 -9
- package/build/src/runtime/store/FilesSdk.js +60 -16
- package/build/src/runtime/store/FilesSdk.js.map +1 -1
- package/build/src/runtime/store/HistorySdk.d.ts +11 -8
- package/build/src/runtime/store/HistorySdk.js +140 -17
- package/build/src/runtime/store/HistorySdk.js.map +1 -1
- package/build/src/runtime/store/RevisionsSdk.d.ts +12 -0
- package/build/src/runtime/store/RevisionsSdk.js +43 -0
- package/build/src/runtime/store/RevisionsSdk.js.map +1 -0
- package/build/src/runtime/store/RouteBuilder.d.ts +16 -18
- package/build/src/runtime/store/RouteBuilder.js +33 -60
- package/build/src/runtime/store/RouteBuilder.js.map +1 -1
- package/build/src/runtime/store/Sdk.d.ts +10 -7
- package/build/src/runtime/store/Sdk.js +12 -5
- package/build/src/runtime/store/Sdk.js.map +1 -1
- package/build/src/runtime/store/SdkBase.js.map +1 -1
- package/build/src/runtime/store/SharedSdk.d.ts +2 -2
- package/build/src/runtime/store/SharedSdk.js.map +1 -1
- package/build/src/runtime/store/SpacesSdk.d.ts +29 -0
- package/build/src/runtime/store/SpacesSdk.js +135 -0
- package/build/src/runtime/store/SpacesSdk.js.map +1 -0
- package/build/src/runtime/store/TrashSdk.d.ts +35 -0
- package/build/src/runtime/store/TrashSdk.js +155 -0
- package/build/src/runtime/store/TrashSdk.js.map +1 -0
- package/build/src/runtime/store/UsersSdk.d.ts +2 -2
- package/build/src/runtime/store/UsersSdk.js.map +1 -1
- package/build/src/runtime/store/interfaces/ApiClientStore.d.ts +30 -0
- package/build/src/runtime/store/interfaces/ApiClientStore.js +2 -0
- package/build/src/runtime/store/interfaces/ApiClientStore.js.map +1 -0
- package/build/src/runtime/store/interfaces/Certificates.d.ts +49 -0
- package/build/src/runtime/store/interfaces/Certificates.js +2 -0
- package/build/src/runtime/store/interfaces/Certificates.js.map +1 -0
- package/build/src/runtime/store/interfaces/Files.d.ts +63 -0
- package/build/src/runtime/store/interfaces/Files.js +2 -0
- package/build/src/runtime/store/interfaces/Files.js.map +1 -0
- package/build/src/runtime/store/interfaces/History.d.ts +63 -0
- package/build/src/runtime/store/interfaces/History.js +2 -0
- package/build/src/runtime/store/interfaces/History.js.map +1 -0
- package/build/src/runtime/store/interfaces/Media.d.ts +42 -0
- package/build/src/runtime/store/interfaces/Media.js +2 -0
- package/build/src/runtime/store/interfaces/Media.js.map +1 -0
- package/build/src/runtime/store/interfaces/Revisions.d.ts +25 -0
- package/build/src/runtime/store/interfaces/Revisions.js +2 -0
- package/build/src/runtime/store/interfaces/Revisions.js.map +1 -0
- package/build/src/runtime/store/interfaces/Spaces.d.ts +42 -0
- package/build/src/runtime/store/interfaces/Spaces.js +2 -0
- package/build/src/runtime/store/interfaces/Spaces.js.map +1 -0
- package/build/src/runtime/store/interfaces/Trash.d.ts +38 -0
- package/build/src/runtime/store/interfaces/Trash.js +2 -0
- package/build/src/runtime/store/interfaces/Trash.js.map +1 -0
- package/package.json +1 -1
- package/src/events/BaseEvents.ts +136 -18
- package/src/events/EventTypes.ts +0 -2
- package/src/events/Events.ts +0 -2
- package/src/events/transport/TransportEventTypes.ts +0 -1
- package/src/events/transport/TransportEvents.ts +0 -13
- package/src/mocking/ProjectMock.ts +0 -4
- package/src/mocking/lib/History.ts +5 -0
- package/src/models/{Workspace.ts → Folder.ts} +12 -12
- package/src/models/HttpHistory.ts +53 -63
- package/src/models/HttpProject.ts +0 -29
- package/src/models/Project.ts +0 -8
- package/src/models/ProjectFolder.ts +0 -16
- package/src/models/ProjectItem.ts +0 -18
- package/src/models/ProjectRequest.ts +3 -4
- package/src/models/RequestConfig.ts +1 -1
- package/src/models/Space.ts +105 -0
- package/src/models/TrashEntry.ts +29 -0
- package/src/models/store/Backend.ts +0 -342
- package/src/models/store/File.ts +38 -5
- package/src/proxy/ProxyService.ts +0 -15
- package/src/proxy/readme.md +0 -1
- package/src/runtime/node/InteropInterfaces.ts +1 -2
- package/src/runtime/node/ProjectParallelRunner.ts +2 -3
- package/src/runtime/node/ProjectRequestRunner.ts +13 -14
- package/src/runtime/node/ProjectRunner.ts +3 -4
- package/src/runtime/node/ProjectRunnerWorker.ts +1 -4
- package/src/runtime/store/CertificatesSdk.ts +231 -0
- package/src/runtime/store/FilesSdk.ts +71 -26
- package/src/runtime/store/HistorySdk.ts +145 -33
- package/src/runtime/store/RevisionsSdk.ts +44 -0
- package/src/runtime/store/RouteBuilder.ts +37 -69
- package/src/runtime/store/Sdk.ts +17 -7
- package/src/runtime/store/SdkBase.ts +1 -1
- package/src/runtime/store/SharedSdk.ts +3 -3
- package/src/runtime/store/SpacesSdk.ts +136 -0
- package/src/runtime/store/TrashSdk.ts +159 -0
- package/src/runtime/store/UsersSdk.ts +3 -3
- package/src/runtime/store/interfaces/ApiClientStore.ts +39 -0
- package/src/runtime/store/interfaces/Certificates.ts +56 -0
- package/src/runtime/store/interfaces/Files.ts +70 -0
- package/src/runtime/store/interfaces/History.ts +64 -0
- package/src/runtime/store/interfaces/Media.ts +46 -0
- package/src/runtime/store/interfaces/Revisions.ts +27 -0
- package/src/runtime/store/interfaces/Spaces.ts +48 -0
- package/src/runtime/store/interfaces/Trash.ts +42 -0
- package/build/src/events/models/ClientCertificateEvents.d.ts +0 -54
- package/build/src/events/models/ClientCertificateEvents.js +0 -78
- package/build/src/events/models/ClientCertificateEvents.js.map +0 -1
- package/build/src/events/models/ModelEventTypes.d.ts +0 -13
- package/build/src/events/models/ModelEventTypes.js +0 -14
- package/build/src/events/models/ModelEventTypes.js.map +0 -1
- package/build/src/events/models/ModelEvents.d.ts +0 -4
- package/build/src/events/models/ModelEvents.js +0 -5
- package/build/src/events/models/ModelEvents.js.map +0 -1
- package/build/src/mocking/lib/App.d.ts +0 -36
- package/build/src/mocking/lib/App.js +0 -70
- package/build/src/mocking/lib/App.js.map +0 -1
- package/build/src/models/AppProject.d.ts +0 -817
- package/build/src/models/AppProject.js +0 -1721
- package/build/src/models/AppProject.js.map +0 -1
- package/build/src/models/AppRequest.d.ts +0 -69
- package/build/src/models/AppRequest.js +0 -150
- package/build/src/models/AppRequest.js.map +0 -1
- package/build/src/models/Workspace.js.map +0 -1
- package/build/src/proxy/AppProjectProxy.d.ts +0 -28
- package/build/src/proxy/AppProjectProxy.js +0 -107
- package/build/src/proxy/AppProjectProxy.js.map +0 -1
- package/build/src/runtime/store/AppSdk.d.ts +0 -213
- package/build/src/runtime/store/AppSdk.js +0 -836
- package/build/src/runtime/store/AppSdk.js.map +0 -1
- package/src/events/models/ClientCertificateEvents.ts +0 -85
- package/src/events/models/ModelEventTypes.ts +0 -13
- package/src/events/models/ModelEvents.ts +0 -5
- package/src/mocking/lib/App.ts +0 -101
- package/src/models/AppProject.ts +0 -2188
- package/src/models/AppRequest.ts +0 -176
- package/src/proxy/AppProjectProxy.ts +0 -126
- package/src/runtime/store/AppSdk.ts +0 -842
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { HttpCertificate } from "../../../models/ClientCertificate.js";
|
|
2
|
+
import { ContextChangeRecord, ContextDeleteRecord, ContextListResult, ContextSpaceListOptions, IBulkOperationResult } from "../../../events/BaseEvents.js";
|
|
3
|
+
/**
|
|
4
|
+
* A store for the client certificates.
|
|
5
|
+
* This just keeps record of removed files. File location does not change.
|
|
6
|
+
*/
|
|
7
|
+
export interface Certificates {
|
|
8
|
+
/**
|
|
9
|
+
* Inserts a certificate to the store
|
|
10
|
+
*
|
|
11
|
+
* @param value The value to insert.
|
|
12
|
+
* @param space The parent space of the certificate.
|
|
13
|
+
*/
|
|
14
|
+
add(value: HttpCertificate, space: string): Promise<ContextChangeRecord<HttpCertificate>>;
|
|
15
|
+
/**
|
|
16
|
+
* Adds certificates in a bulk operation.
|
|
17
|
+
* @param value The lits of certificates to add.
|
|
18
|
+
* @param space The parent workspace
|
|
19
|
+
* @returns The list of inserted certificates. `undefined` when there was an error inserting a certificate.
|
|
20
|
+
*/
|
|
21
|
+
addBulk(values: HttpCertificate[], space: string): Promise<IBulkOperationResult<ContextChangeRecord<HttpCertificate>>>;
|
|
22
|
+
/**
|
|
23
|
+
* @param key The key of the certificate to read.
|
|
24
|
+
*/
|
|
25
|
+
read(key: string): Promise<HttpCertificate>;
|
|
26
|
+
/**
|
|
27
|
+
* Lists certificate entires.
|
|
28
|
+
*
|
|
29
|
+
* @param space The parent space of the certificate.
|
|
30
|
+
* @param options The list query options.
|
|
31
|
+
*/
|
|
32
|
+
list(options?: ContextSpaceListOptions): Promise<ContextListResult<HttpCertificate>>;
|
|
33
|
+
/**
|
|
34
|
+
* Marks the certificate as deleted.
|
|
35
|
+
*
|
|
36
|
+
* @param key The key of the certificate to delete.
|
|
37
|
+
*/
|
|
38
|
+
delete(key: string): Promise<ContextDeleteRecord>;
|
|
39
|
+
/**
|
|
40
|
+
* Removed certificates in a bulk operation.
|
|
41
|
+
* @param keys The list of certificate keys to delete.
|
|
42
|
+
*/
|
|
43
|
+
deleteBulk(keys: string[]): Promise<IBulkOperationResult<ContextDeleteRecord>>;
|
|
44
|
+
/**
|
|
45
|
+
* Removes all certificates from the store for the given workspace.
|
|
46
|
+
* @param space The parent workspace key
|
|
47
|
+
*/
|
|
48
|
+
empty(space: string): Promise<void>;
|
|
49
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Certificates.js","sourceRoot":"","sources":["../../../../../src/runtime/store/interfaces/Certificates.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { IFile, FileAddOptions, FileBreadcrumb } from '../../../models/store/File.js';
|
|
2
|
+
import { ContextChangeRecord, ContextDeleteRecord, ContextListResult, ContextSpaceListOptions, IBulkOperationResult, IPatchInfo, IPatchRevision } from '../../../events/BaseEvents.js';
|
|
3
|
+
/**
|
|
4
|
+
* A store that stores file/folder metadata in a filesystem like structure.
|
|
5
|
+
*
|
|
6
|
+
* In API Client the `space` is a parent for all data kept in the application.
|
|
7
|
+
*/
|
|
8
|
+
export interface Files {
|
|
9
|
+
/**
|
|
10
|
+
* Lists files in a space.
|
|
11
|
+
* @param options Query options. It must include `space`.
|
|
12
|
+
* @param kinds Optionally, lists the files with the listed kinds.
|
|
13
|
+
*/
|
|
14
|
+
list(options: ContextSpaceListOptions, kinds?: string[]): Promise<ContextListResult<IFile>>;
|
|
15
|
+
/**
|
|
16
|
+
* Adds a new file to the store. Note, this throws an error when a file already exists.
|
|
17
|
+
*
|
|
18
|
+
* @param input The file to add.
|
|
19
|
+
* @param space The id of the parent space.
|
|
20
|
+
* @param opts The file add options.
|
|
21
|
+
*/
|
|
22
|
+
add(input: IFile, space: string, opts?: FileAddOptions): Promise<ContextChangeRecord<IFile>>;
|
|
23
|
+
/**
|
|
24
|
+
* Reads a file meta from the store.
|
|
25
|
+
* It throws when the file does not exist or was deleted.
|
|
26
|
+
*
|
|
27
|
+
* @param key The id of the file to read the metadata for.
|
|
28
|
+
*/
|
|
29
|
+
read(key: string): Promise<IFile>;
|
|
30
|
+
/**
|
|
31
|
+
* Reads multiple files in a single call.
|
|
32
|
+
* Unlike the `read()` method, this does not throw when a file is not found or deleted.
|
|
33
|
+
* When the file is missing it inserts `undefined` or `null` in the resulting array at the index
|
|
34
|
+
* of the missing key.
|
|
35
|
+
*
|
|
36
|
+
* Note, this returns `undefined` when directly querying the store but it may return `null` when
|
|
37
|
+
* structured clone algorithm is used between the application and the database.
|
|
38
|
+
*
|
|
39
|
+
* @param keys The list of keys to read
|
|
40
|
+
*/
|
|
41
|
+
readBulk(keys: string[]): Promise<IBulkOperationResult<IFile>>;
|
|
42
|
+
/**
|
|
43
|
+
* Marks file as deleted.
|
|
44
|
+
* Files are not deleted by using this method. They are marked as deleted and later ignored
|
|
45
|
+
* by most of the API.
|
|
46
|
+
*
|
|
47
|
+
* @param key The database id of the file to remove.
|
|
48
|
+
*/
|
|
49
|
+
delete(key: string): Promise<ContextDeleteRecord>;
|
|
50
|
+
/**
|
|
51
|
+
* This is the preferred way to update a file metadata. It allows to apply a reversible patch
|
|
52
|
+
* to the file and reverse it on demand.
|
|
53
|
+
*
|
|
54
|
+
* @param key The datastore id of the file to patch
|
|
55
|
+
* @param info The patch to apply.
|
|
56
|
+
*/
|
|
57
|
+
patch(key: string, info: IPatchInfo): Promise<IPatchRevision>;
|
|
58
|
+
/**
|
|
59
|
+
* Lists breadcrumbs to the file.
|
|
60
|
+
* @param key The lowest file in the hierarchy
|
|
61
|
+
*/
|
|
62
|
+
breadcrumbs(key: string): Promise<ContextListResult<FileBreadcrumb>>;
|
|
63
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Files.js","sourceRoot":"","sources":["../../../../../src/runtime/store/interfaces/Files.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { ContextChangeRecord, ContextDeleteRecord, ContextListResult, HistoryListOptions, IBulkOperationResult } from "../../../events/BaseEvents.js";
|
|
2
|
+
import { IHttpHistory, IHttpHistoryBulkAdd } from "../../../models/HttpHistory.js";
|
|
3
|
+
/**
|
|
4
|
+
* A store for the HTTP requests history.
|
|
5
|
+
*/
|
|
6
|
+
export interface History {
|
|
7
|
+
/**
|
|
8
|
+
* Adds a history object to the store.
|
|
9
|
+
*
|
|
10
|
+
* @param history The history object
|
|
11
|
+
* @param space The parent space key
|
|
12
|
+
*/
|
|
13
|
+
add(item: IHttpHistory): Promise<ContextChangeRecord<IHttpHistory>>;
|
|
14
|
+
/**
|
|
15
|
+
* Adds history in a bulk operation.
|
|
16
|
+
* @param info The bulk add operation schema.
|
|
17
|
+
* @param space The parent space key
|
|
18
|
+
*/
|
|
19
|
+
addBulk(info: IHttpHistoryBulkAdd): Promise<IBulkOperationResult<ContextChangeRecord<IHttpHistory>>>;
|
|
20
|
+
/**
|
|
21
|
+
* Lists the history data.
|
|
22
|
+
* @param space The parent space key
|
|
23
|
+
* @param options List options
|
|
24
|
+
*/
|
|
25
|
+
list(options?: HistoryListOptions): Promise<ContextListResult<IHttpHistory>>;
|
|
26
|
+
/**
|
|
27
|
+
* Marks the data as deleted. It also removes the data from the indexes.
|
|
28
|
+
* Only the owner can delete the history object. This may change in the future.
|
|
29
|
+
*
|
|
30
|
+
* @param key The history object key to delete. This is an URL-encoded key.
|
|
31
|
+
*/
|
|
32
|
+
delete(key: string): Promise<ContextDeleteRecord>;
|
|
33
|
+
/**
|
|
34
|
+
* Deletes a history in a bulk operation.
|
|
35
|
+
* @param keys The list of history keys to delete. This is base64url encoded keys
|
|
36
|
+
*/
|
|
37
|
+
deleteBulk(keys: string[]): Promise<IBulkOperationResult<ContextDeleteRecord>>;
|
|
38
|
+
/**
|
|
39
|
+
* Reads a history item.
|
|
40
|
+
*
|
|
41
|
+
* @param key The key of the history object to read.
|
|
42
|
+
*/
|
|
43
|
+
read(key: string): Promise<IHttpHistory>;
|
|
44
|
+
/**
|
|
45
|
+
* Clears the datastore from history for a space.
|
|
46
|
+
*
|
|
47
|
+
* @param space The parent space key
|
|
48
|
+
*/
|
|
49
|
+
clearSpace(space: string): Promise<void>;
|
|
50
|
+
/**
|
|
51
|
+
* Clears all history from a project
|
|
52
|
+
*
|
|
53
|
+
* @param project The parent project key
|
|
54
|
+
*/
|
|
55
|
+
clearProject(project: string): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* Clears all history from a request
|
|
58
|
+
*
|
|
59
|
+
* @param project The parent project key
|
|
60
|
+
* @param request The parent request key
|
|
61
|
+
*/
|
|
62
|
+
clearRequest(project: string, request: string): Promise<void>;
|
|
63
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"History.js","sourceRoot":"","sources":["../../../../../src/runtime/store/interfaces/History.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { IPatchInfo, IPatchRevision } from "../../../events/BaseEvents.js";
|
|
2
|
+
import { MediaReadOptions } from "../../../models/store/File.js";
|
|
3
|
+
/**
|
|
4
|
+
* A media is the contents of a File.
|
|
5
|
+
* Keys are the same as for a file but kept in a different namespace.
|
|
6
|
+
*
|
|
7
|
+
* Note, this class does not check for space dependency. This should be done when requesting a file, not contents.
|
|
8
|
+
*/
|
|
9
|
+
export interface Media {
|
|
10
|
+
/**
|
|
11
|
+
* Creates / re-creates file contents.
|
|
12
|
+
*
|
|
13
|
+
* @param key The datastore id of the file to create/update the contents for.
|
|
14
|
+
* @param contents The contents to store.
|
|
15
|
+
* @param mime The content mime type. Used for (de)serialization.
|
|
16
|
+
* @param allowOverwrite Whether overwriting is permitted. When not then in throws an error when trying to re-create a file.
|
|
17
|
+
*/
|
|
18
|
+
add(key: string, contents: unknown, mime: string, allowOverwrite: boolean): Promise<void>;
|
|
19
|
+
/**
|
|
20
|
+
* Reads file contents.
|
|
21
|
+
* @param key The datastore key of the file
|
|
22
|
+
* @param opts Read options.
|
|
23
|
+
*/
|
|
24
|
+
read(key: string, opts?: MediaReadOptions): Promise<unknown>;
|
|
25
|
+
/**
|
|
26
|
+
* Deletes file contents.
|
|
27
|
+
* Note, this won't broadcast the delete event as this is done by the `files?alt=meta`.
|
|
28
|
+
*
|
|
29
|
+
* @param key The file key to delete.
|
|
30
|
+
*/
|
|
31
|
+
delete(key: string): Promise<void>;
|
|
32
|
+
/**
|
|
33
|
+
* This is the preferred way to update a file contents.
|
|
34
|
+
*
|
|
35
|
+
* Note, the broadcast event will most likely contain the `kind` of the **file** metadata and not content's.
|
|
36
|
+
* The media has no concept of a `kind` as it may store any data.
|
|
37
|
+
*
|
|
38
|
+
* @param key The datastore key of the file to patch
|
|
39
|
+
* @param info The patch to apply.
|
|
40
|
+
*/
|
|
41
|
+
patch(key: string, info: IPatchInfo): Promise<IPatchRevision>;
|
|
42
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Media.js","sourceRoot":"","sources":["../../../../../src/runtime/store/interfaces/Media.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { IRevision } from "../../../models/store/Revision.js";
|
|
2
|
+
import { ContextListResult, ContextSpaceListOptions } from "../../../events/BaseEvents.js";
|
|
3
|
+
import { JsonPatch } from "@api-client/json";
|
|
4
|
+
/**
|
|
5
|
+
* A store to keep revision data for a file.
|
|
6
|
+
* This only stores revision data for file contents, not metadata.
|
|
7
|
+
*/
|
|
8
|
+
export interface Revisions {
|
|
9
|
+
/**
|
|
10
|
+
* Lists revisions for a single file.
|
|
11
|
+
*
|
|
12
|
+
* @param key The id of the file to lists revisions for.
|
|
13
|
+
* @param options The list query options
|
|
14
|
+
*/
|
|
15
|
+
list(key: string, options: ContextSpaceListOptions): Promise<ContextListResult<IRevision>>;
|
|
16
|
+
/**
|
|
17
|
+
* Creates a new revision for a file contents.
|
|
18
|
+
*
|
|
19
|
+
* @param key The datastore id of the file
|
|
20
|
+
* @param space The parent space
|
|
21
|
+
* @param kind The kind of the file that was patched
|
|
22
|
+
* @param patch The applied patch.
|
|
23
|
+
*/
|
|
24
|
+
add(key: string, space: string, kind: string, patch: JsonPatch): Promise<IRevision>;
|
|
25
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Revisions.js","sourceRoot":"","sources":["../../../../../src/runtime/store/interfaces/Revisions.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ISpace } from "../../../models/Space.js";
|
|
2
|
+
import { ContextListResult, ContextListOptions, ContextDeleteRecord, ContextChangeRecord } from "../../../events/BaseEvents.js";
|
|
3
|
+
/**
|
|
4
|
+
* A store that keeps a list of spaces created in the application.
|
|
5
|
+
*/
|
|
6
|
+
export interface Spaces {
|
|
7
|
+
/**
|
|
8
|
+
* Lists spaces created by the user.
|
|
9
|
+
* @param options The list query options
|
|
10
|
+
*/
|
|
11
|
+
list(options?: ContextListOptions): Promise<ContextListResult<ISpace>>;
|
|
12
|
+
/**
|
|
13
|
+
* Creates a space from the name.
|
|
14
|
+
*
|
|
15
|
+
* @param name The name of the space to create
|
|
16
|
+
*/
|
|
17
|
+
add(name: string): Promise<ContextChangeRecord<ISpace>>;
|
|
18
|
+
/**
|
|
19
|
+
* Creates a space from a space definition.
|
|
20
|
+
* @param space The space definition.
|
|
21
|
+
*/
|
|
22
|
+
add(space: ISpace): Promise<ContextChangeRecord<ISpace>>;
|
|
23
|
+
/**
|
|
24
|
+
* Creates a space from a name or a definition.
|
|
25
|
+
*
|
|
26
|
+
* @param nameOrObject The space name or definition.
|
|
27
|
+
*/
|
|
28
|
+
add(nameOrObject: string | ISpace): Promise<ContextChangeRecord<ISpace>>;
|
|
29
|
+
/**
|
|
30
|
+
* Reads a single space from the store.
|
|
31
|
+
* @param key The key of the space to read.
|
|
32
|
+
*/
|
|
33
|
+
read(key: string): Promise<ISpace>;
|
|
34
|
+
/**
|
|
35
|
+
* Marks space as deleted.
|
|
36
|
+
* Note, this does not remove any data from the store. It marks the space as deleted
|
|
37
|
+
* and then the space is ignored by most of the API.
|
|
38
|
+
*
|
|
39
|
+
* @param key The key of the space to delete.
|
|
40
|
+
*/
|
|
41
|
+
delete(key: string): Promise<ContextDeleteRecord>;
|
|
42
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Spaces.js","sourceRoot":"","sources":["../../../../../src/runtime/store/interfaces/Spaces.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { IFile } from "../../../models/store/File.js";
|
|
2
|
+
import { ContextChangeRecord, ContextListResult, ContextSpaceListOptions } from "../../../events/BaseEvents.js";
|
|
3
|
+
import { TrashEntry, TrashEntryCreate } from "../../../models/TrashEntry.js";
|
|
4
|
+
/**
|
|
5
|
+
* A store for the file trash.
|
|
6
|
+
* This just keeps record of removed files. File location does not change.
|
|
7
|
+
*/
|
|
8
|
+
export interface Trash {
|
|
9
|
+
/**
|
|
10
|
+
* Inserts a record of file delete.
|
|
11
|
+
*
|
|
12
|
+
* @param entry The trash entry definition
|
|
13
|
+
* @param space The parent space of the file
|
|
14
|
+
*/
|
|
15
|
+
add(entry: TrashEntryCreate, space: string): Promise<ContextChangeRecord<TrashEntry>>;
|
|
16
|
+
/**
|
|
17
|
+
* Lists trashed entires.
|
|
18
|
+
* @param options The list query options.
|
|
19
|
+
*/
|
|
20
|
+
list(options: ContextSpaceListOptions): Promise<ContextListResult<TrashEntry>>;
|
|
21
|
+
/**
|
|
22
|
+
* Removes a trash entry permanently from the store.
|
|
23
|
+
* @param key The key of the deleted object
|
|
24
|
+
*/
|
|
25
|
+
delete(key: string): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Restores a file from the trash.
|
|
28
|
+
* It deletes a trash entry and updates the `file` object.
|
|
29
|
+
*
|
|
30
|
+
* @param key The key of the file to restore
|
|
31
|
+
*/
|
|
32
|
+
restore(key: string): Promise<ContextChangeRecord<IFile>>;
|
|
33
|
+
/**
|
|
34
|
+
* Empties the trash for the given space.
|
|
35
|
+
* @param space The space key to remove trash for.
|
|
36
|
+
*/
|
|
37
|
+
empty(space: string): Promise<void>;
|
|
38
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Trash.js","sourceRoot":"","sources":["../../../../../src/runtime/store/interfaces/Trash.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
package/src/events/BaseEvents.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { JsonPatch } from '@api-client/json'
|
|
1
2
|
import CustomEvent from './CustomEvent.js';
|
|
2
|
-
import {
|
|
3
|
+
import { AccessOperation } from '../models/store/Permission.js';
|
|
3
4
|
|
|
4
5
|
/**
|
|
5
6
|
* Base event detail definition for the events that returns a `result`
|
|
@@ -48,7 +49,7 @@ export interface ContextReadEventDetail {
|
|
|
48
49
|
/**
|
|
49
50
|
* An event to be used to read a state from a context provider.
|
|
50
51
|
*/
|
|
51
|
-
export class ContextReadEvent<T> extends ContextEvent<ContextReadEventDetail, T> {
|
|
52
|
+
export class ContextReadEvent<T> extends ContextEvent<ContextReadEventDetail, T | null | undefined> {
|
|
52
53
|
/**
|
|
53
54
|
* @param type The type of the event
|
|
54
55
|
* @param key The domain key of the object to read
|
|
@@ -73,7 +74,7 @@ export interface ContextReadBulkEventDetail {
|
|
|
73
74
|
/**
|
|
74
75
|
* An event to be used to read a list of object from the API store.
|
|
75
76
|
*/
|
|
76
|
-
export class ContextReadBulkEvent<T> extends ContextEvent<ContextReadBulkEventDetail, T
|
|
77
|
+
export class ContextReadBulkEvent<T> extends ContextEvent<ContextReadBulkEventDetail, IBulkOperationResult<(T | null | undefined)>> {
|
|
77
78
|
/**
|
|
78
79
|
* @param type The type of the event
|
|
79
80
|
* @param keys The list of domain keys to read. These must be of the same domain type.
|
|
@@ -144,10 +145,23 @@ export class ContextDeleteEvent extends ContextEvent<ContextDeleteEventDetail, C
|
|
|
144
145
|
}
|
|
145
146
|
}
|
|
146
147
|
|
|
148
|
+
/**
|
|
149
|
+
* Describes a result of the batch delete operation.
|
|
150
|
+
*/
|
|
151
|
+
export interface IBulkOperationResult<T> {
|
|
152
|
+
/**
|
|
153
|
+
* The ordered list of delete result for each item.
|
|
154
|
+
*
|
|
155
|
+
* The batch operation does not return specific errors. Use the direct delete operation
|
|
156
|
+
* for the detailed error.
|
|
157
|
+
*/
|
|
158
|
+
items: (T | undefined | null)[];
|
|
159
|
+
}
|
|
160
|
+
|
|
147
161
|
/**
|
|
148
162
|
* An event to be used to delete a number of entities in the context provider.
|
|
149
163
|
*/
|
|
150
|
-
export class ContextDeleteBulkEvent extends ContextEvent<ContextDeleteBulkEventDetail, ContextDeleteRecord
|
|
164
|
+
export class ContextDeleteBulkEvent extends ContextEvent<ContextDeleteBulkEventDetail, IBulkOperationResult<ContextDeleteRecord>> {
|
|
151
165
|
/**
|
|
152
166
|
* An event to be used to delete a number of entities in the context provider.
|
|
153
167
|
* @param type The type of the event to dispatch.
|
|
@@ -178,7 +192,7 @@ export interface ContextDeleteRecord {
|
|
|
178
192
|
/**
|
|
179
193
|
* An event dispatched to the context store to restore previously deleted items.
|
|
180
194
|
*/
|
|
181
|
-
export class ContextRestoreEvent<T> extends ContextEvent<{ records: ContextDeleteRecord[] },
|
|
195
|
+
export class ContextRestoreEvent<T> extends ContextEvent<{ records: ContextDeleteRecord[] }, IBulkOperationResult<ContextChangeRecord<T>>> {
|
|
182
196
|
/**
|
|
183
197
|
* An event dispatched to the context store to restore previously deleted items.
|
|
184
198
|
*
|
|
@@ -242,7 +256,7 @@ export interface ContextUpdateEventDetail<T> {
|
|
|
242
256
|
parent?: string;
|
|
243
257
|
}
|
|
244
258
|
|
|
245
|
-
export interface ContextUpdateBulkEventDetail<T> {
|
|
259
|
+
export interface ContextUpdateBulkEventDetail<T = unknown> {
|
|
246
260
|
/**
|
|
247
261
|
* The list of context store objects to be updated by the context provider.
|
|
248
262
|
*/
|
|
@@ -282,7 +296,7 @@ export class ContextUpdateEvent<T extends object, U = T> extends ContextEvent<Co
|
|
|
282
296
|
* @template T The object that is being updated.
|
|
283
297
|
* @template U The object that is returned by the context store after updating. By default it is the `T`.
|
|
284
298
|
*/
|
|
285
|
-
export class ContextUpdateBulkEvent<T extends object, U = T> extends ContextEvent<ContextUpdateBulkEventDetail<T>, ContextChangeRecord<U
|
|
299
|
+
export class ContextUpdateBulkEvent<T extends object, U = T> extends ContextEvent<ContextUpdateBulkEventDetail<T>, IBulkOperationResult<ContextChangeRecord<U>>> {
|
|
286
300
|
/**
|
|
287
301
|
* An event that is dispatched to update the entire object in the store.
|
|
288
302
|
* This is equivalent to PUT operation in REST HTTP.
|
|
@@ -299,12 +313,6 @@ export class ContextUpdateBulkEvent<T extends object, U = T> extends ContextEven
|
|
|
299
313
|
* Data store query result object.
|
|
300
314
|
*/
|
|
301
315
|
export interface ContextListResult<T> {
|
|
302
|
-
/**
|
|
303
|
-
* Next page token to be used with pagination.
|
|
304
|
-
* It is not set when the query has not returned any results.
|
|
305
|
-
* @deprecated Use `cursor` instead.
|
|
306
|
-
*/
|
|
307
|
-
nextPageToken?: string;
|
|
308
316
|
/**
|
|
309
317
|
* The cursor to use with the next query. It has the list state encoded in it.
|
|
310
318
|
*/
|
|
@@ -324,11 +332,6 @@ export interface ContextListOptions {
|
|
|
324
332
|
* The number of results per the page.
|
|
325
333
|
*/
|
|
326
334
|
limit?: number;
|
|
327
|
-
/**
|
|
328
|
-
* A string that should be used with the pagination.
|
|
329
|
-
* @deprecated Use `cursor` instead.
|
|
330
|
-
*/
|
|
331
|
-
nextPageToken?: string;
|
|
332
335
|
/**
|
|
333
336
|
* Page cursor to use with the query. This is returned by the
|
|
334
337
|
*/
|
|
@@ -349,6 +352,10 @@ export interface ContextListOptions {
|
|
|
349
352
|
* Whether to use the `descending` order.
|
|
350
353
|
*/
|
|
351
354
|
descending?: boolean;
|
|
355
|
+
/**
|
|
356
|
+
* The name of the field to order then results.
|
|
357
|
+
*/
|
|
358
|
+
orderField?: string;
|
|
352
359
|
/**
|
|
353
360
|
* General purpose type property to filer the results.
|
|
354
361
|
* This is used, for example, by the history store to list history for a specific type of requests,
|
|
@@ -362,6 +369,13 @@ export interface ContextListOptions {
|
|
|
362
369
|
since?: number;
|
|
363
370
|
}
|
|
364
371
|
|
|
372
|
+
export interface ContextSpaceListOptions extends ContextListOptions {
|
|
373
|
+
/**
|
|
374
|
+
* The identifier of the parent space (or organization).
|
|
375
|
+
*/
|
|
376
|
+
space: string;
|
|
377
|
+
}
|
|
378
|
+
|
|
365
379
|
export class ContextListEvent<T> extends ContextEvent<ContextListOptions, ContextListResult<T>> {
|
|
366
380
|
/**
|
|
367
381
|
* @param type The type of the event
|
|
@@ -397,6 +411,24 @@ export interface IQueryDetail {
|
|
|
397
411
|
detailed?: boolean;
|
|
398
412
|
}
|
|
399
413
|
|
|
414
|
+
export interface IQueryResponse<T = unknown> {
|
|
415
|
+
/**
|
|
416
|
+
* An ordered list of results.
|
|
417
|
+
*/
|
|
418
|
+
items: IQueryResult<T>[];
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
export interface IQueryResult<T = unknown> {
|
|
422
|
+
/**
|
|
423
|
+
* The document.
|
|
424
|
+
*/
|
|
425
|
+
doc: T;
|
|
426
|
+
/**
|
|
427
|
+
* The list of indexes where this document was found.
|
|
428
|
+
*/
|
|
429
|
+
index: string[];
|
|
430
|
+
}
|
|
431
|
+
|
|
400
432
|
/**
|
|
401
433
|
* An event dispatched to the context store to perform a query operation.
|
|
402
434
|
* If the context store supports the query operation, it should use the definition of `IQueryDetail` to perform the query.
|
|
@@ -421,3 +453,89 @@ export class ContextQueryEvent<T = unknown> extends ContextEvent<IQueryDetail, I
|
|
|
421
453
|
super(type, opts);
|
|
422
454
|
}
|
|
423
455
|
}
|
|
456
|
+
|
|
457
|
+
/**
|
|
458
|
+
* Query options to list history for a request in a project.
|
|
459
|
+
* The user has to have access to the parent user space to read / create / delete the history.
|
|
460
|
+
*/
|
|
461
|
+
export interface IHistoryRequestListOptions extends ContextListOptions {
|
|
462
|
+
type: 'request';
|
|
463
|
+
/**
|
|
464
|
+
* The key of the parent space.
|
|
465
|
+
*/
|
|
466
|
+
space: string;
|
|
467
|
+
/**
|
|
468
|
+
* The id of the project that contains the request.
|
|
469
|
+
*/
|
|
470
|
+
project: string;
|
|
471
|
+
/**
|
|
472
|
+
* The id of the request.
|
|
473
|
+
*/
|
|
474
|
+
id: string;
|
|
475
|
+
/**
|
|
476
|
+
* Whether to limit the list of results to the history that belongs to the current user.
|
|
477
|
+
*/
|
|
478
|
+
user?: boolean;
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
/**
|
|
482
|
+
* Listing options for the HTTP history.
|
|
483
|
+
*/
|
|
484
|
+
export type HistoryListOptions = IHistoryRequestListOptions;
|
|
485
|
+
|
|
486
|
+
|
|
487
|
+
export interface IPatchBase {
|
|
488
|
+
/**
|
|
489
|
+
* Auto generated by the client sending the PATCH.
|
|
490
|
+
*/
|
|
491
|
+
id: string;
|
|
492
|
+
/**
|
|
493
|
+
* The application id that generated the patch.
|
|
494
|
+
* This is a string that is assigned to each application in the suite.
|
|
495
|
+
* External applications need to use a constant string for their apps.
|
|
496
|
+
*/
|
|
497
|
+
app: string;
|
|
498
|
+
/**
|
|
499
|
+
* The version of the application that generated the patch.
|
|
500
|
+
* This can and will be used to handle potential differences between suite applications.
|
|
501
|
+
*/
|
|
502
|
+
appVersion: string;
|
|
503
|
+
/**
|
|
504
|
+
* The patch generated by the client.
|
|
505
|
+
*/
|
|
506
|
+
patch: unknown;
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
/**
|
|
510
|
+
* An interface describing a schema to be sent to the server
|
|
511
|
+
* when making a patch of a file.
|
|
512
|
+
*/
|
|
513
|
+
export interface IPatchInfo extends IPatchBase {
|
|
514
|
+
/**
|
|
515
|
+
* The patch generated by the client.
|
|
516
|
+
*/
|
|
517
|
+
patch: JsonPatch;
|
|
518
|
+
}
|
|
519
|
+
|
|
520
|
+
/**
|
|
521
|
+
* An interface describing a schema to be sent to the server
|
|
522
|
+
* when making a patch with user access to a file.
|
|
523
|
+
*/
|
|
524
|
+
export interface IAccessPatchInfo extends IPatchBase {
|
|
525
|
+
/**
|
|
526
|
+
* The patch generated by the client.
|
|
527
|
+
*/
|
|
528
|
+
patch: AccessOperation[];
|
|
529
|
+
}
|
|
530
|
+
|
|
531
|
+
/**
|
|
532
|
+
* A schema sent by the store server in a response to the patch request.
|
|
533
|
+
* It contains an information about the applied patch, the reverse operation associated with it,
|
|
534
|
+
* application information, and the generated by the client patch id.
|
|
535
|
+
*/
|
|
536
|
+
export interface IPatchRevision extends IPatchInfo {
|
|
537
|
+
/**
|
|
538
|
+
* The patch to apply to the object to revert the changes.
|
|
539
|
+
*/
|
|
540
|
+
revert: JsonPatch;
|
|
541
|
+
}
|
package/src/events/EventTypes.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { ModelEventTypes } from './models/ModelEventTypes.js';
|
|
2
1
|
import { CookieEventTypes } from './cookies/CookieEventTypes.js';
|
|
3
2
|
import { AuthorizationEventTypes } from './authorization/AuthorizationEventTypes.js';
|
|
4
3
|
import { EncryptionEventTypes } from './encryption/EncryptionEventTypes.js';
|
|
@@ -14,7 +13,6 @@ export const EventTypes = Object.freeze({
|
|
|
14
13
|
Authorization: AuthorizationEventTypes,
|
|
15
14
|
Cookie: CookieEventTypes,
|
|
16
15
|
Encryption: EncryptionEventTypes,
|
|
17
|
-
Model: ModelEventTypes,
|
|
18
16
|
Process: ProcessEventTypes,
|
|
19
17
|
Reporting: ReportingEventTypes,
|
|
20
18
|
Telemetry: TelemetryEventTypes,
|
package/src/events/Events.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { ModelEvents } from './models/ModelEvents.js';
|
|
2
1
|
import { CookieEvents } from './cookies/CookieEvents.js';
|
|
3
2
|
import { AuthorizationEvents } from './authorization/AuthorizationEvents.js';
|
|
4
3
|
import { EncryptionEvents } from './encryption/EncryptionEvents.js';
|
|
@@ -14,7 +13,6 @@ export const Events = Object.freeze({
|
|
|
14
13
|
Authorization: AuthorizationEvents,
|
|
15
14
|
Cookie: CookieEvents,
|
|
16
15
|
Encryption: EncryptionEvents,
|
|
17
|
-
Model: ModelEvents,
|
|
18
16
|
Process: ProcessEvents,
|
|
19
17
|
Reporting: ReportingEvents,
|
|
20
18
|
Telemetry: TelemetryEvents,
|