@forestadmin/forestadmin-client 1.37.2 → 1.37.3
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/dist/activity-logs/index.d.ts +4 -2
- package/dist/activity-logs/index.js +40 -49
- package/dist/build-application-services.js +4 -4
- package/dist/index.d.ts +1 -1
- package/dist/ip-whitelist/index.d.ts +3 -2
- package/dist/ip-whitelist/index.js +5 -7
- package/dist/permissions/forest-http-api.d.ts +10 -2
- package/dist/permissions/forest-http-api.js +51 -1
- package/dist/schema/index.d.ts +3 -2
- package/dist/schema/index.js +8 -22
- package/dist/types.d.ts +32 -1
- package/dist/utils/http-options.d.ts +7 -0
- package/dist/utils/http-options.js +10 -0
- package/package.json +1 -1
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import type { ActivityLogResponse, CreateActivityLogParams, UpdateActivityLogStatusParams } from '../types';
|
|
1
|
+
import type { ActivityLogResponse, CreateActivityLogParams, ForestAdminServerInterface, UpdateActivityLogStatusParams } from '../types';
|
|
2
2
|
export type ActivityLogsOptions = {
|
|
3
3
|
forestServerUrl: string;
|
|
4
4
|
headers?: Record<string, string>;
|
|
5
5
|
};
|
|
6
6
|
export default class ActivityLogsService {
|
|
7
|
+
private forestAdminServerInterface;
|
|
7
8
|
private options;
|
|
8
|
-
constructor(options: ActivityLogsOptions);
|
|
9
|
+
constructor(forestAdminServerInterface: ForestAdminServerInterface, options: ActivityLogsOptions);
|
|
9
10
|
createActivityLog(params: CreateActivityLogParams): Promise<ActivityLogResponse>;
|
|
10
11
|
updateActivityLogStatus(params: UpdateActivityLogStatusParams): Promise<void>;
|
|
12
|
+
private getHttpOptions;
|
|
11
13
|
}
|
|
12
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,68 +1,59 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const server_1 = __importDefault(require("../utils/server"));
|
|
7
3
|
class ActivityLogsService {
|
|
8
|
-
constructor(options) {
|
|
4
|
+
constructor(forestAdminServerInterface, options) {
|
|
5
|
+
this.forestAdminServerInterface = forestAdminServerInterface;
|
|
9
6
|
this.options = options;
|
|
10
7
|
}
|
|
11
8
|
async createActivityLog(params) {
|
|
12
9
|
const { forestServerToken, renderingId, action, type, collectionName, recordId, recordIds, label, } = params;
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
},
|
|
31
|
-
relationships: {
|
|
32
|
-
rendering: {
|
|
33
|
-
data: {
|
|
34
|
-
id: renderingId,
|
|
35
|
-
type: 'renderings',
|
|
36
|
-
},
|
|
37
|
-
},
|
|
38
|
-
collection: {
|
|
39
|
-
data: collectionName
|
|
40
|
-
? {
|
|
41
|
-
id: collectionName,
|
|
42
|
-
type: 'collections',
|
|
43
|
-
}
|
|
44
|
-
: null,
|
|
10
|
+
const body = {
|
|
11
|
+
data: {
|
|
12
|
+
id: 1,
|
|
13
|
+
type: 'activity-logs-requests',
|
|
14
|
+
attributes: {
|
|
15
|
+
type,
|
|
16
|
+
action,
|
|
17
|
+
label,
|
|
18
|
+
status: 'pending',
|
|
19
|
+
// Ensure all record IDs are converted to strings
|
|
20
|
+
records: (recordIds || (recordId ? [recordId] : [])).map(String),
|
|
21
|
+
},
|
|
22
|
+
relationships: {
|
|
23
|
+
rendering: {
|
|
24
|
+
data: {
|
|
25
|
+
id: renderingId,
|
|
26
|
+
type: 'renderings',
|
|
45
27
|
},
|
|
46
28
|
},
|
|
29
|
+
collection: {
|
|
30
|
+
data: collectionName
|
|
31
|
+
? {
|
|
32
|
+
id: collectionName,
|
|
33
|
+
type: 'collections',
|
|
34
|
+
}
|
|
35
|
+
: null,
|
|
36
|
+
},
|
|
47
37
|
},
|
|
48
38
|
},
|
|
49
|
-
}
|
|
50
|
-
return
|
|
39
|
+
};
|
|
40
|
+
return this.forestAdminServerInterface.createActivityLog(this.getHttpOptions(forestServerToken), body);
|
|
51
41
|
}
|
|
52
42
|
async updateActivityLogStatus(params) {
|
|
53
43
|
const { forestServerToken, activityLog, status, errorMessage } = params;
|
|
54
|
-
|
|
44
|
+
const body = {
|
|
45
|
+
status,
|
|
46
|
+
...(errorMessage && { errorMessage }),
|
|
47
|
+
};
|
|
48
|
+
await this.forestAdminServerInterface.updateActivityLogStatus(this.getHttpOptions(forestServerToken), activityLog.attributes.index, activityLog.id, body);
|
|
49
|
+
}
|
|
50
|
+
getHttpOptions(bearerToken) {
|
|
51
|
+
return {
|
|
55
52
|
forestServerUrl: this.options.forestServerUrl,
|
|
56
|
-
|
|
57
|
-
path: `/api/activity-logs-requests/${activityLog.attributes.index}/${activityLog.id}/status`,
|
|
58
|
-
bearerToken: forestServerToken,
|
|
53
|
+
bearerToken,
|
|
59
54
|
headers: this.options.headers,
|
|
60
|
-
|
|
61
|
-
status,
|
|
62
|
-
...(errorMessage && { errorMessage }),
|
|
63
|
-
},
|
|
64
|
-
});
|
|
55
|
+
};
|
|
65
56
|
}
|
|
66
57
|
}
|
|
67
58
|
exports.default = ActivityLogsService;
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aXZpdHktbG9ncy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWFBLE1BQXFCLG1CQUFtQjtJQUN0QyxZQUNVLDBCQUFzRCxFQUN0RCxPQUE0QjtRQUQ1QiwrQkFBMEIsR0FBMUIsMEJBQTBCLENBQTRCO1FBQ3RELFlBQU8sR0FBUCxPQUFPLENBQXFCO0lBQ25DLENBQUM7SUFFSixLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBK0I7UUFDckQsTUFBTSxFQUNKLGlCQUFpQixFQUNqQixXQUFXLEVBQ1gsTUFBTSxFQUNOLElBQUksRUFDSixjQUFjLEVBQ2QsUUFBUSxFQUNSLFNBQVMsRUFDVCxLQUFLLEdBQ04sR0FBRyxNQUFNLENBQUM7UUFFWCxNQUFNLElBQUksR0FBRztZQUNYLElBQUksRUFBRTtnQkFDSixFQUFFLEVBQUUsQ0FBQztnQkFDTCxJQUFJLEVBQUUsd0JBQXdCO2dCQUM5QixVQUFVLEVBQUU7b0JBQ1YsSUFBSTtvQkFDSixNQUFNO29CQUNOLEtBQUs7b0JBQ0wsTUFBTSxFQUFFLFNBQVM7b0JBQ2pCLGlEQUFpRDtvQkFDakQsT0FBTyxFQUFFLENBQUMsU0FBUyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7aUJBQ2pFO2dCQUNELGFBQWEsRUFBRTtvQkFDYixTQUFTLEVBQUU7d0JBQ1QsSUFBSSxFQUFFOzRCQUNKLEVBQUUsRUFBRSxXQUFXOzRCQUNmLElBQUksRUFBRSxZQUFZO3lCQUNuQjtxQkFDRjtvQkFDRCxVQUFVLEVBQUU7d0JBQ1YsSUFBSSxFQUFFLGNBQWM7NEJBQ2xCLENBQUMsQ0FBQztnQ0FDRSxFQUFFLEVBQUUsY0FBYztnQ0FDbEIsSUFBSSxFQUFFLGFBQWE7NkJBQ3BCOzRCQUNILENBQUMsQ0FBQyxJQUFJO3FCQUNUO2lCQUNGO2FBQ0Y7U0FDRixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsMEJBQTBCLENBQUMsaUJBQWlCLENBQ3RELElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsRUFDdEMsSUFBSSxDQUNMLENBQUM7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLE1BQXFDO1FBQ2pFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxHQUFHLE1BQU0sQ0FBQztRQUV4RSxNQUFNLElBQUksR0FBRztZQUNYLE1BQU07WUFDTixHQUFHLENBQUMsWUFBWSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUM7U0FDdEMsQ0FBQztRQUVGLE1BQU0sSUFBSSxDQUFDLDBCQUEwQixDQUFDLHVCQUF1QixDQUMzRCxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLEVBQ3RDLFdBQVcsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUM1QixXQUFXLENBQUMsRUFBRSxFQUNkLElBQUksQ0FDTCxDQUFDO0lBQ0osQ0FBQztJQUVPLGNBQWMsQ0FBQyxXQUFtQjtRQUN4QyxPQUFPO1lBQ0wsZUFBZSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZTtZQUM3QyxXQUFXO1lBQ1gsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTztTQUM5QixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBOUVELHNDQThFQyJ9
|
|
@@ -42,12 +42,12 @@ function buildApplicationServices(forestAdminServerInterface, options) {
|
|
|
42
42
|
eventsSubscription,
|
|
43
43
|
eventsHandler,
|
|
44
44
|
chartHandler: new chart_handler_1.default(contextVariables),
|
|
45
|
-
ipWhitelist: new ip_whitelist_1.default(optionsWithDefaults),
|
|
46
|
-
schema: new schema_1.default(optionsWithDefaults),
|
|
47
|
-
activityLogs: new activity_logs_1.default(optionsWithDefaults),
|
|
45
|
+
ipWhitelist: new ip_whitelist_1.default(forestAdminServerInterface, optionsWithDefaults),
|
|
46
|
+
schema: new schema_1.default(forestAdminServerInterface, optionsWithDefaults),
|
|
47
|
+
activityLogs: new activity_logs_1.default(forestAdminServerInterface, optionsWithDefaults),
|
|
48
48
|
auth: forestAdminServerInterface.makeAuthService(optionsWithDefaults),
|
|
49
49
|
modelCustomizationService: new model_customization_from_api_1.default(forestAdminServerInterface, optionsWithDefaults),
|
|
50
50
|
mcpServerConfigService: new mcp_server_config_1.default(forestAdminServerInterface, optionsWithDefaults),
|
|
51
51
|
};
|
|
52
52
|
}
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtYXBwbGljYXRpb24tc2VydmljZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYnVpbGQtYXBwbGljYXRpb24tc2VydmljZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUF5QkEsMkNBNEVDO0FBM0ZELG9FQUFrRDtBQUNsRCwyRUFBa0Q7QUFDbEQsZ0ZBQThEO0FBQzlELHdJQUE0RztBQUM1RyxrRUFBZ0Q7QUFDaEQsNEVBQWdFO0FBQ2hFLHVIQUFtRztBQUNuRyx3RkFBc0U7QUFDdEUsZ0dBQW9FO0FBQ3BFLDhGQUE0RTtBQUM1RSxvRkFBa0U7QUFDbEUsc0RBQXFDO0FBQ3JDLDRHQUFrRjtBQUNsRiw0RUFBbUQ7QUFFbkQsU0FBd0Isd0JBQXdCLENBQzlDLDBCQUFzRCxFQUN0RCxPQUFpQztJQWdCakMsTUFBTSxtQkFBbUIsR0FBRztRQUMxQixlQUFlLEVBQUUsNkJBQTZCO1FBQzlDLGlDQUFpQyxFQUFFLEVBQUUsR0FBRyxFQUFFO1FBQzFDLE1BQU0sRUFBRSx3QkFBYTtRQUNyQixtQkFBbUIsRUFBRSxJQUFJO1FBQ3pCLFlBQVksRUFBRSxJQUFJO1FBQ2xCLEdBQUcsT0FBTztLQUNYLENBQUM7SUFFRixNQUFNLGVBQWUsR0FBRyxJQUFJLHlCQUFxQixDQUMvQyxtQkFBbUIsRUFDbkIsMEJBQTBCLENBQzNCLENBQUM7SUFFRixNQUFNLG1CQUFtQixHQUFHLElBQUksOEJBQTBCLENBQ3hELG1CQUFtQixFQUNuQixlQUFlLEVBQ2YsMEJBQTBCLENBQzNCLENBQUM7SUFFRixNQUFNLGdCQUFnQixHQUFHLElBQUksMkJBQXVCLENBQ2xELG1CQUFtQixFQUNuQiwwQkFBMEIsQ0FDM0IsQ0FBQztJQUVGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSx3Q0FBNEIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBRS9FLE1BQU0sVUFBVSxHQUFHLElBQUksK0JBQWlCLENBQUMsZ0JBQWdCLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztJQUVoRixNQUFNLGFBQWEsR0FBRyxJQUFJLCtDQUFpQyxDQUN6RCxnQkFBZ0IsRUFDaEIsZUFBZSxFQUNmLG1CQUFtQixDQUNwQixDQUFDO0lBRUYsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLDZCQUF5QixDQUFDLG1CQUFtQixFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBRTdGLE9BQU87UUFDTCxtQkFBbUI7UUFDbkIsbUJBQW1CO1FBQ25CLFVBQVU7UUFDVixnQkFBZ0I7UUFDaEIsa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYixZQUFZLEVBQUUsSUFBSSx1QkFBWSxDQUFDLGdCQUFnQixDQUFDO1FBQ2hELFdBQVcsRUFBRSxJQUFJLHNCQUFrQixDQUFDLDBCQUEwQixFQUFFLG1CQUFtQixDQUFDO1FBQ3BGLE1BQU0sRUFBRSxJQUFJLGdCQUFhLENBQUMsMEJBQTBCLEVBQUUsbUJBQW1CLENBQUM7UUFDMUUsWUFBWSxFQUFFLElBQUksdUJBQW1CLENBQUMsMEJBQTBCLEVBQUUsbUJBQW1CLENBQUM7UUFDdEYsSUFBSSxFQUFFLDBCQUEwQixDQUFDLGVBQWUsQ0FBQyxtQkFBbUIsQ0FBQztRQUNyRSx5QkFBeUIsRUFBRSxJQUFJLHNDQUFnQyxDQUM3RCwwQkFBMEIsRUFDMUIsbUJBQW1CLENBQ3BCO1FBQ0Qsc0JBQXNCLEVBQUUsSUFBSSwyQkFBNkIsQ0FDdkQsMEJBQTBCLEVBQzFCLG1CQUFtQixDQUNwQjtLQUNGLENBQUM7QUFDSixDQUFDIn0=
|
package/dist/index.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ export { default as ContextVariables } from './utils/context-variables';
|
|
|
17
17
|
export { default as ChartHandler } from './charts/chart-handler';
|
|
18
18
|
export { default as ForestAdminClientWithCache } from './forest-admin-client-with-cache';
|
|
19
19
|
export { default as buildApplicationServices } from './build-application-services';
|
|
20
|
-
export { HttpOptions } from './
|
|
20
|
+
export { HttpOptions } from './utils/http-options';
|
|
21
21
|
export { default as ForestHttpApi } from './permissions/forest-http-api';
|
|
22
22
|
export { default as SchemaService, SchemaServiceOptions } from './schema';
|
|
23
23
|
export { default as ActivityLogsService, ActivityLogsOptions } from './activity-logs';
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { IpWhitelistConfiguration } from './types';
|
|
2
|
-
import type { ForestAdminClientOptionsWithDefaults } from '../types';
|
|
2
|
+
import type { ForestAdminClientOptionsWithDefaults, ForestAdminServerInterface } from '../types';
|
|
3
3
|
export default class IpWhiteListService {
|
|
4
|
+
private forestAdminServerInterface;
|
|
4
5
|
private options;
|
|
5
|
-
constructor(options: ForestAdminClientOptionsWithDefaults);
|
|
6
|
+
constructor(forestAdminServerInterface: ForestAdminServerInterface, options: ForestAdminClientOptionsWithDefaults);
|
|
6
7
|
getConfiguration(): Promise<IpWhitelistConfiguration>;
|
|
7
8
|
}
|
|
8
9
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const
|
|
3
|
+
const http_options_1 = require("../utils/http-options");
|
|
7
4
|
class IpWhiteListService {
|
|
8
|
-
constructor(options) {
|
|
5
|
+
constructor(forestAdminServerInterface, options) {
|
|
6
|
+
this.forestAdminServerInterface = forestAdminServerInterface;
|
|
9
7
|
this.options = options;
|
|
10
8
|
}
|
|
11
9
|
async getConfiguration() {
|
|
12
|
-
const body = await
|
|
10
|
+
const body = await this.forestAdminServerInterface.getIpWhitelistRules((0, http_options_1.toHttpOptions)(this.options));
|
|
13
11
|
return {
|
|
14
12
|
isFeatureEnabled: body.data.attributes.use_ip_whitelist,
|
|
15
13
|
ipRules: body.data.attributes.rules,
|
|
@@ -17,4 +15,4 @@ class IpWhiteListService {
|
|
|
17
15
|
}
|
|
18
16
|
}
|
|
19
17
|
exports.default = IpWhiteListService;
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaXAtd2hpdGVsaXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBR0Esd0RBQXNEO0FBRXRELE1BQXFCLGtCQUFrQjtJQUNyQyxZQUNVLDBCQUFzRCxFQUN0RCxPQUE2QztRQUQ3QywrQkFBMEIsR0FBMUIsMEJBQTBCLENBQTRCO1FBQ3RELFlBQU8sR0FBUCxPQUFPLENBQXNDO0lBQ3BELENBQUM7SUFFSixLQUFLLENBQUMsZ0JBQWdCO1FBQ3BCLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLDBCQUEwQixDQUFDLG1CQUFtQixDQUNwRSxJQUFBLDRCQUFhLEVBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUM1QixDQUFDO1FBRUYsT0FBTztZQUNMLGdCQUFnQixFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQjtZQUN2RCxPQUFPLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSztTQUNwQyxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBaEJELHFDQWdCQyJ9
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { EnvironmentPermissionsV4, RenderingPermissionV4, UserPermissionV4 } from './types';
|
|
2
2
|
import type { ModelCustomization } from '../model-customizations/types';
|
|
3
|
-
import type { ForestAdminAuthServiceInterface, ForestAdminClientOptions,
|
|
3
|
+
import type { ActivityLogHttpOptions, ActivityLogResponse, ForestAdminAuthServiceInterface, ForestAdminClientOptions, ForestAdminServerInterface, ForestSchemaCollection, IpWhitelistRulesResponse } from '../types';
|
|
4
|
+
import type { HttpOptions } from '../utils/http-options';
|
|
4
5
|
import type { McpConfiguration } from '@forestadmin/ai-proxy';
|
|
5
|
-
export type HttpOptions = Pick<ForestAdminClientOptionsWithDefaults, 'envSecret' | 'forestServerUrl'>;
|
|
6
6
|
export default class ForestHttpApi implements ForestAdminServerInterface {
|
|
7
7
|
getEnvironmentPermissions(options: HttpOptions): Promise<EnvironmentPermissionsV4>;
|
|
8
8
|
getUsers(options: HttpOptions): Promise<UserPermissionV4[]>;
|
|
@@ -10,5 +10,13 @@ export default class ForestHttpApi implements ForestAdminServerInterface {
|
|
|
10
10
|
getModelCustomizations(options: HttpOptions): Promise<ModelCustomization[]>;
|
|
11
11
|
getMcpServerConfigs(options: HttpOptions): Promise<McpConfiguration>;
|
|
12
12
|
makeAuthService(options: Required<ForestAdminClientOptions>): ForestAdminAuthServiceInterface;
|
|
13
|
+
getSchema(options: HttpOptions): Promise<ForestSchemaCollection[]>;
|
|
14
|
+
postSchema(options: HttpOptions, schema: object): Promise<void>;
|
|
15
|
+
checkSchemaHash(options: HttpOptions, hash: string): Promise<{
|
|
16
|
+
sendSchema: boolean;
|
|
17
|
+
}>;
|
|
18
|
+
getIpWhitelistRules(options: HttpOptions): Promise<IpWhitelistRulesResponse>;
|
|
19
|
+
createActivityLog(options: ActivityLogHttpOptions, body: object): Promise<ActivityLogResponse>;
|
|
20
|
+
updateActivityLogStatus(options: ActivityLogHttpOptions, index: string, id: string, body: object): Promise<void>;
|
|
13
21
|
}
|
|
14
22
|
//# sourceMappingURL=forest-http-api.d.ts.map
|
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const json_api_serializer_1 = __importDefault(require("json-api-serializer"));
|
|
6
7
|
const auth_1 = __importDefault(require("../auth"));
|
|
7
8
|
const server_1 = __importDefault(require("../utils/server"));
|
|
8
9
|
class ForestHttpApi {
|
|
@@ -24,6 +25,55 @@ class ForestHttpApi {
|
|
|
24
25
|
makeAuthService(options) {
|
|
25
26
|
return new auth_1.default(options);
|
|
26
27
|
}
|
|
28
|
+
async getSchema(options) {
|
|
29
|
+
const response = await server_1.default.query(options, 'get', '/liana/forest-schema');
|
|
30
|
+
const serializer = new json_api_serializer_1.default();
|
|
31
|
+
serializer.register('collections', {
|
|
32
|
+
relationships: {
|
|
33
|
+
fields: { type: 'fields' },
|
|
34
|
+
actions: { type: 'actions' },
|
|
35
|
+
segments: { type: 'segments' },
|
|
36
|
+
},
|
|
37
|
+
});
|
|
38
|
+
serializer.register('fields', {});
|
|
39
|
+
serializer.register('actions', {
|
|
40
|
+
relationships: {
|
|
41
|
+
fields: { type: 'fields' },
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
serializer.register('segments', {});
|
|
45
|
+
return serializer.deserialize('collections', response);
|
|
46
|
+
}
|
|
47
|
+
async postSchema(options, schema) {
|
|
48
|
+
await server_1.default.query(options, 'post', '/forest/apimaps', {}, schema);
|
|
49
|
+
}
|
|
50
|
+
async checkSchemaHash(options, hash) {
|
|
51
|
+
return server_1.default.query(options, 'post', '/forest/apimaps/hashcheck', {}, { schemaFileHash: hash });
|
|
52
|
+
}
|
|
53
|
+
async getIpWhitelistRules(options) {
|
|
54
|
+
return server_1.default.query(options, 'get', '/liana/v1/ip-whitelist-rules');
|
|
55
|
+
}
|
|
56
|
+
async createActivityLog(options, body) {
|
|
57
|
+
const { data: activityLog } = await server_1.default.queryWithBearerToken({
|
|
58
|
+
forestServerUrl: options.forestServerUrl,
|
|
59
|
+
method: 'post',
|
|
60
|
+
path: '/api/activity-logs-requests',
|
|
61
|
+
bearerToken: options.bearerToken,
|
|
62
|
+
body,
|
|
63
|
+
headers: options.headers,
|
|
64
|
+
});
|
|
65
|
+
return activityLog;
|
|
66
|
+
}
|
|
67
|
+
async updateActivityLogStatus(options, index, id, body) {
|
|
68
|
+
await server_1.default.queryWithBearerToken({
|
|
69
|
+
forestServerUrl: options.forestServerUrl,
|
|
70
|
+
method: 'patch',
|
|
71
|
+
path: `/api/activity-logs-requests/${index}/${id}/status`,
|
|
72
|
+
bearerToken: options.bearerToken,
|
|
73
|
+
body,
|
|
74
|
+
headers: options.headers,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
27
77
|
}
|
|
28
78
|
exports.default = ForestHttpApi;
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yZXN0LWh0dHAtYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Blcm1pc3Npb25zL2ZvcmVzdC1odHRwLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQWNBLDhFQUFvRDtBQUVwRCxtREFBa0M7QUFDbEMsNkRBQTBDO0FBRTFDLE1BQXFCLGFBQWE7SUFDaEMsS0FBSyxDQUFDLHlCQUF5QixDQUFDLE9BQW9CO1FBQ2xELE9BQU8sZ0JBQVcsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxtQ0FBbUMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQW9CO1FBQ2pDLE9BQU8sZ0JBQVcsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSw2QkFBNkIsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxLQUFLLENBQUMsdUJBQXVCLENBQzNCLFdBQW1CLEVBQ25CLE9BQW9CO1FBRXBCLE9BQU8sZ0JBQVcsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxvQ0FBb0MsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQsS0FBSyxDQUFDLHNCQUFzQixDQUFDLE9BQW9CO1FBQy9DLE9BQU8sZ0JBQVcsQ0FBQyxLQUFLLENBQXVCLE9BQU8sRUFBRSxLQUFLLEVBQUUsNkJBQTZCLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBRUQsS0FBSyxDQUFDLG1CQUFtQixDQUFDLE9BQW9CO1FBQzVDLE9BQU8sZ0JBQVcsQ0FBQyxLQUFLLENBQ3RCLE9BQU8sRUFDUCxLQUFLLEVBQ0wsd0NBQXdDLENBQ3pDLENBQUM7SUFDSixDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQTJDO1FBQ3pELE9BQU8sSUFBSSxjQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBb0I7UUFDbEMsTUFBTSxR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
|
package/dist/schema/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import type { ForestAdminServerInterface, ForestSchemaCollection } from '../types';
|
|
1
2
|
import type { ForestSchema } from './types';
|
|
2
|
-
import type { ForestSchemaCollection } from '../types';
|
|
3
3
|
type SerializedSchema = {
|
|
4
4
|
meta: {
|
|
5
5
|
schemaFileHash: string;
|
|
@@ -12,8 +12,9 @@ export interface SchemaServiceOptions {
|
|
|
12
12
|
logger?: (level: 'Info' | 'Warn' | 'Error' | 'Debug', message: string) => void;
|
|
13
13
|
}
|
|
14
14
|
export default class SchemaService {
|
|
15
|
+
private forestAdminServerInterface;
|
|
15
16
|
private options;
|
|
16
|
-
constructor(options: SchemaServiceOptions);
|
|
17
|
+
constructor(forestAdminServerInterface: ForestAdminServerInterface, options: SchemaServiceOptions);
|
|
17
18
|
postSchema(schema: ForestSchema): Promise<boolean>;
|
|
18
19
|
getSchema(): Promise<ForestSchemaCollection[]>;
|
|
19
20
|
static serialize(schema: ForestSchema): SerializedSchema;
|
package/dist/schema/index.js
CHANGED
|
@@ -5,16 +5,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const crypto_1 = __importDefault(require("crypto"));
|
|
7
7
|
const json_api_serializer_1 = __importDefault(require("json-api-serializer"));
|
|
8
|
-
const
|
|
8
|
+
const http_options_1 = require("../utils/http-options");
|
|
9
9
|
class SchemaService {
|
|
10
|
-
constructor(options) {
|
|
10
|
+
constructor(forestAdminServerInterface, options) {
|
|
11
|
+
this.forestAdminServerInterface = forestAdminServerInterface;
|
|
11
12
|
this.options = options;
|
|
12
13
|
}
|
|
13
14
|
async postSchema(schema) {
|
|
14
15
|
const apimap = SchemaService.serialize(schema);
|
|
16
|
+
const httpOptions = (0, http_options_1.toHttpOptions)(this.options);
|
|
15
17
|
const shouldSend = await this.doServerWantsSchema(apimap.meta.schemaFileHash);
|
|
16
18
|
if (shouldSend) {
|
|
17
|
-
await
|
|
19
|
+
await this.forestAdminServerInterface.postSchema(httpOptions, apimap);
|
|
18
20
|
}
|
|
19
21
|
const message = shouldSend
|
|
20
22
|
? 'Schema was updated, sending new version'
|
|
@@ -25,23 +27,7 @@ class SchemaService {
|
|
|
25
27
|
return shouldSend;
|
|
26
28
|
}
|
|
27
29
|
async getSchema() {
|
|
28
|
-
|
|
29
|
-
const serializer = new json_api_serializer_1.default();
|
|
30
|
-
serializer.register('collections', {
|
|
31
|
-
relationships: {
|
|
32
|
-
fields: { type: 'fields' },
|
|
33
|
-
actions: { type: 'actions' },
|
|
34
|
-
segments: { type: 'segments' },
|
|
35
|
-
},
|
|
36
|
-
});
|
|
37
|
-
serializer.register('fields', {});
|
|
38
|
-
serializer.register('actions', {
|
|
39
|
-
relationships: {
|
|
40
|
-
fields: { type: 'fields' },
|
|
41
|
-
},
|
|
42
|
-
});
|
|
43
|
-
serializer.register('segments', {});
|
|
44
|
-
return serializer.deserialize('collections', response);
|
|
30
|
+
return this.forestAdminServerInterface.getSchema((0, http_options_1.toHttpOptions)(this.options));
|
|
45
31
|
}
|
|
46
32
|
static serialize(schema) {
|
|
47
33
|
const data = schema.collections.map(c => ({ id: c.name, ...c }));
|
|
@@ -67,9 +53,9 @@ class SchemaService {
|
|
|
67
53
|
}
|
|
68
54
|
async doServerWantsSchema(hash) {
|
|
69
55
|
// Check if the schema was already sent by another agent
|
|
70
|
-
const { sendSchema } = await
|
|
56
|
+
const { sendSchema } = await this.forestAdminServerInterface.checkSchemaHash((0, http_options_1.toHttpOptions)(this.options), hash);
|
|
71
57
|
return sendSchema;
|
|
72
58
|
}
|
|
73
59
|
}
|
|
74
60
|
exports.default = SchemaService;
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NoZW1hL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0Esb0RBQTRCO0FBQzVCLDhFQUFvRDtBQUVwRCx3REFBc0Q7QUFXdEQsTUFBcUIsYUFBYTtJQUNoQyxZQUNVLDBCQUFzRCxFQUN0RCxPQUE2QjtRQUQ3QiwrQkFBMEIsR0FBMUIsMEJBQTBCLENBQTRCO1FBQ3RELFlBQU8sR0FBUCxPQUFPLENBQXNCO0lBQ3BDLENBQUM7SUFFSixLQUFLLENBQUMsVUFBVSxDQUFDLE1BQW9CO1FBQ25DLE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0MsTUFBTSxXQUFXLEdBQUcsSUFBQSw0QkFBYSxFQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoRCxNQUFNLFVBQVUsR0FBRyxNQUFNLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRTlFLElBQUksVUFBVSxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3hFLENBQUM7UUFFRCxNQUFNLE9BQU8sR0FBRyxVQUFVO1lBQ3hCLENBQUMsQ0FBQyx5Q0FBeUM7WUFDM0MsQ0FBQyxDQUFDLHVDQUF1QyxDQUFDO1FBRTVDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxPQUFPLFdBQVcsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDO1FBQ2xGLENBQUM7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsS0FBSyxDQUFDLFNBQVM7UUFDYixPQUFPLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxTQUFTLENBQUMsSUFBQSw0QkFBYSxFQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQW9CO1FBQ25DLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sY0FBYyxHQUFHLGdCQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTlGLE9BQU8sYUFBYSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLElBQUksRUFBRTtZQUM3RCxHQUFHLE1BQU0sQ0FBQyxJQUFJO1lBQ2QsY0FBYztTQUNmLENBQXFCLENBQUM7SUFDekIsQ0FBQztJQUVPLE1BQU0sS0FBSyxVQUFVO1FBQzNCLE1BQU0sVUFBVSxHQUFHLElBQUksNkJBQWlCLEVBQUUsQ0FBQztRQUMzQyxVQUFVLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRTtZQUNqQyxxREFBcUQ7WUFDckQsWUFBWSxFQUFFLENBQUMsU0FBa0IsRUFBRSxFQUFFLENBQUMsU0FBUztZQUMvQyxhQUFhLEVBQUU7Z0JBQ2IsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFDOUIsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTthQUM3QjtTQUNGLENBQUMsQ0FBQztRQUNILFVBQVUsQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3BDLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRW5DLE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFTyxLQUFLLENBQUMsbUJBQW1CLENBQUMsSUFBWTtRQUM1Qyx3REFBd0Q7UUFDeEQsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLDBCQUEwQixDQUFDLGVBQWUsQ0FDMUUsSUFBQSw0QkFBYSxFQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFDM0IsSUFBSSxDQUNMLENBQUM7UUFFRixPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0NBQ0Y7QUFqRUQsZ0NBaUVDIn0=
|
package/dist/types.d.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Chart, QueryChart } from './charts/types';
|
|
|
4
4
|
import type { IpWhitelistConfiguration } from './ip-whitelist/types';
|
|
5
5
|
import type { McpServerConfigService } from './mcp-server-config/types';
|
|
6
6
|
import type { ModelCustomization, ModelCustomizationService } from './model-customizations/types';
|
|
7
|
-
import type { HttpOptions } from './permissions/forest-http-api';
|
|
8
7
|
import type { CollectionActionEvent, EnvironmentPermissionsV4, RawTree, RawTreeWithSources, RenderingPermissionV4, UserPermissionV4 } from './permissions/types';
|
|
9
8
|
import type { ForestSchema } from './schema/types';
|
|
10
9
|
import type { RequestContextVariables } from './utils/context-variables';
|
|
11
10
|
import type ContextVariables from './utils/context-variables';
|
|
11
|
+
import type { HttpOptions } from './utils/http-options';
|
|
12
12
|
import type { McpConfiguration } from '@forestadmin/ai-proxy';
|
|
13
13
|
import type { ParsedUrlQuery } from 'querystring';
|
|
14
14
|
export type { CollectionActionEvent, RawTree, RawTreeWithSources } from './permissions/types';
|
|
@@ -238,5 +238,36 @@ export interface ForestAdminServerInterface {
|
|
|
238
238
|
getModelCustomizations: (options: HttpOptions) => Promise<ModelCustomization[]>;
|
|
239
239
|
getMcpServerConfigs: (options: HttpOptions) => Promise<McpConfiguration>;
|
|
240
240
|
makeAuthService(options: ForestAdminClientOptionsWithDefaults): ForestAdminAuthServiceInterface;
|
|
241
|
+
getSchema: (options: HttpOptions) => Promise<ForestSchemaCollection[]>;
|
|
242
|
+
postSchema: (options: HttpOptions, schema: object) => Promise<void>;
|
|
243
|
+
checkSchemaHash: (options: HttpOptions, hash: string) => Promise<{
|
|
244
|
+
sendSchema: boolean;
|
|
245
|
+
}>;
|
|
246
|
+
getIpWhitelistRules: (options: HttpOptions) => Promise<IpWhitelistRulesResponse>;
|
|
247
|
+
createActivityLog: (options: ActivityLogHttpOptions, body: object) => Promise<ActivityLogResponse>;
|
|
248
|
+
updateActivityLogStatus: (options: ActivityLogHttpOptions, index: string, id: string, body: object) => Promise<void>;
|
|
241
249
|
}
|
|
250
|
+
export type ActivityLogHttpOptions = {
|
|
251
|
+
forestServerUrl: string;
|
|
252
|
+
bearerToken: string;
|
|
253
|
+
headers?: Record<string, string>;
|
|
254
|
+
};
|
|
255
|
+
export type IpWhitelistRulesResponse = {
|
|
256
|
+
data: {
|
|
257
|
+
attributes: {
|
|
258
|
+
use_ip_whitelist: boolean;
|
|
259
|
+
rules: Array<{
|
|
260
|
+
type: 0;
|
|
261
|
+
ip: string;
|
|
262
|
+
} | {
|
|
263
|
+
type: 1;
|
|
264
|
+
ipMinimum: string;
|
|
265
|
+
ipMaximum: string;
|
|
266
|
+
} | {
|
|
267
|
+
type: 2;
|
|
268
|
+
range: string;
|
|
269
|
+
}>;
|
|
270
|
+
};
|
|
271
|
+
};
|
|
272
|
+
};
|
|
242
273
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ForestAdminClientOptionsWithDefaults } from '../types';
|
|
2
|
+
export type HttpOptions = Pick<ForestAdminClientOptionsWithDefaults, 'envSecret' | 'forestServerUrl'>;
|
|
3
|
+
export declare function toHttpOptions(options: {
|
|
4
|
+
envSecret: string;
|
|
5
|
+
forestServerUrl: string;
|
|
6
|
+
}): HttpOptions;
|
|
7
|
+
//# sourceMappingURL=http-options.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toHttpOptions = toHttpOptions;
|
|
4
|
+
function toHttpOptions(options) {
|
|
5
|
+
return {
|
|
6
|
+
envSecret: options.envSecret,
|
|
7
|
+
forestServerUrl: options.forestServerUrl,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2h0dHAtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU9BLHNDQVFDO0FBUkQsU0FBZ0IsYUFBYSxDQUFDLE9BRzdCO0lBQ0MsT0FBTztRQUNMLFNBQVMsRUFBRSxPQUFPLENBQUMsU0FBUztRQUM1QixlQUFlLEVBQUUsT0FBTyxDQUFDLGVBQWU7S0FDekMsQ0FBQztBQUNKLENBQUMifQ==
|