@channel.io/app-sdk-server 0.31.0 → 0.32.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/dist/decorators/extension.decorator.d.ts +6 -0
- package/dist/decorators/extension.decorator.d.ts.map +1 -1
- package/dist/decorators/extension.decorator.js +14 -0
- package/dist/decorators/extension.decorator.js.map +1 -1
- package/dist/decorators/index.d.ts +1 -1
- package/dist/decorators/index.d.ts.map +1 -1
- package/dist/decorators/index.js +1 -1
- package/dist/decorators/index.js.map +1 -1
- package/dist/native/client.d.ts +7 -22
- package/dist/native/client.d.ts.map +1 -1
- package/dist/native/client.js +13 -31
- package/dist/native/client.js.map +1 -1
- package/dist/native/proxy-api.d.ts +3 -15
- package/dist/native/proxy-api.d.ts.map +1 -1
- package/dist/native/proxy-api.js +2 -20
- package/dist/native/proxy-api.js.map +1 -1
- package/dist/native/proxy-api.types.d.ts +1 -1
- package/dist/native/proxy-api.types.d.ts.map +1 -1
- package/dist/native/types.d.ts +6 -0
- package/dist/native/types.d.ts.map +1 -1
- package/package.json +4 -4
- package/dist/__tests__/datasource-runners.test.d.ts +0 -2
- package/dist/__tests__/datasource-runners.test.d.ts.map +0 -1
- package/dist/__tests__/datasource-runners.test.js +0 -354
- package/dist/__tests__/datasource-runners.test.js.map +0 -1
- package/dist/__tests__/datasource.test.d.ts +0 -2
- package/dist/__tests__/datasource.test.d.ts.map +0 -1
- package/dist/__tests__/datasource.test.js +0 -374
- package/dist/__tests__/datasource.test.js.map +0 -1
- package/dist/__tests__/decorators.test.d.ts +0 -2
- package/dist/__tests__/decorators.test.d.ts.map +0 -1
- package/dist/__tests__/decorators.test.js +0 -441
- package/dist/__tests__/decorators.test.js.map +0 -1
- package/dist/__tests__/extension-result-normalizer.test.d.ts +0 -2
- package/dist/__tests__/extension-result-normalizer.test.d.ts.map +0 -1
- package/dist/__tests__/extension-result-normalizer.test.js +0 -184
- package/dist/__tests__/extension-result-normalizer.test.js.map +0 -1
- package/dist/__tests__/function-input-validator.test.d.ts +0 -2
- package/dist/__tests__/function-input-validator.test.d.ts.map +0 -1
- package/dist/__tests__/function-input-validator.test.js +0 -56
- package/dist/__tests__/function-input-validator.test.js.map +0 -1
- package/dist/__tests__/native-client.test.d.ts +0 -2
- package/dist/__tests__/native-client.test.d.ts.map +0 -1
- package/dist/__tests__/native-client.test.js +0 -504
- package/dist/__tests__/native-client.test.js.map +0 -1
- package/dist/__tests__/proxy-api.test.d.ts +0 -2
- package/dist/__tests__/proxy-api.test.d.ts.map +0 -1
- package/dist/__tests__/proxy-api.test.js +0 -310
- package/dist/__tests__/proxy-api.test.js.map +0 -1
- package/dist/__tests__/sanitize-for-logging.test.d.ts +0 -2
- package/dist/__tests__/sanitize-for-logging.test.d.ts.map +0 -1
- package/dist/__tests__/sanitize-for-logging.test.js +0 -97
- package/dist/__tests__/sanitize-for-logging.test.js.map +0 -1
- package/dist/__tests__/signature.test.d.ts +0 -2
- package/dist/__tests__/signature.test.d.ts.map +0 -1
- package/dist/__tests__/signature.test.js +0 -172
- package/dist/__tests__/signature.test.js.map +0 -1
- package/dist/__tests__/testing-utils.test.d.ts +0 -2
- package/dist/__tests__/testing-utils.test.d.ts.map +0 -1
- package/dist/__tests__/testing-utils.test.js +0 -244
- package/dist/__tests__/testing-utils.test.js.map +0 -1
- package/dist/__tests__/token-manager.test.d.ts +0 -2
- package/dist/__tests__/token-manager.test.d.ts.map +0 -1
- package/dist/__tests__/token-manager.test.js +0 -528
- package/dist/__tests__/token-manager.test.js.map +0 -1
- package/dist/discovery/extension-discovery.service.test.d.ts +0 -2
- package/dist/discovery/extension-discovery.service.test.d.ts.map +0 -1
- package/dist/discovery/extension-discovery.service.test.js +0 -116
- package/dist/discovery/extension-discovery.service.test.js.map +0 -1
- package/dist/nestjs/channel-app.controller.test.d.ts +0 -2
- package/dist/nestjs/channel-app.controller.test.d.ts.map +0 -1
- package/dist/nestjs/channel-app.controller.test.js +0 -37
- package/dist/nestjs/channel-app.controller.test.js.map +0 -1
- package/dist/nestjs/channel-app.service.test.d.ts +0 -2
- package/dist/nestjs/channel-app.service.test.d.ts.map +0 -1
- package/dist/nestjs/channel-app.service.test.js +0 -583
- package/dist/nestjs/channel-app.service.test.js.map +0 -1
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
-
};
|
|
10
|
-
import "reflect-metadata";
|
|
11
|
-
import { Reflector } from "@nestjs/core";
|
|
12
|
-
import { describe, expect, it } from "vitest";
|
|
13
|
-
import { Extension, Func, TestFunc } from "../decorators/index.js";
|
|
14
|
-
import { ExtensionDiscoveryService } from "./extension-discovery.service.js";
|
|
15
|
-
class StandaloneFunctions {
|
|
16
|
-
async publicPing() {
|
|
17
|
-
return { source: "public" };
|
|
18
|
-
}
|
|
19
|
-
async hiddenPing() {
|
|
20
|
-
return { source: "hidden" };
|
|
21
|
-
}
|
|
22
|
-
async visibleTest() {
|
|
23
|
-
return { source: "test" };
|
|
24
|
-
}
|
|
25
|
-
async hiddenTest() {
|
|
26
|
-
return { source: "hidden-test" };
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
__decorate([
|
|
30
|
-
Func("public.ping"),
|
|
31
|
-
__metadata("design:type", Function),
|
|
32
|
-
__metadata("design:paramtypes", []),
|
|
33
|
-
__metadata("design:returntype", Promise)
|
|
34
|
-
], StandaloneFunctions.prototype, "publicPing", null);
|
|
35
|
-
__decorate([
|
|
36
|
-
Func({ name: "admin.ping", hidden: true }),
|
|
37
|
-
__metadata("design:type", Function),
|
|
38
|
-
__metadata("design:paramtypes", []),
|
|
39
|
-
__metadata("design:returntype", Promise)
|
|
40
|
-
], StandaloneFunctions.prototype, "hiddenPing", null);
|
|
41
|
-
__decorate([
|
|
42
|
-
TestFunc("test.visible"),
|
|
43
|
-
__metadata("design:type", Function),
|
|
44
|
-
__metadata("design:paramtypes", []),
|
|
45
|
-
__metadata("design:returntype", Promise)
|
|
46
|
-
], StandaloneFunctions.prototype, "visibleTest", null);
|
|
47
|
-
__decorate([
|
|
48
|
-
TestFunc({ name: "test.hidden", hidden: true }),
|
|
49
|
-
__metadata("design:type", Function),
|
|
50
|
-
__metadata("design:paramtypes", []),
|
|
51
|
-
__metadata("design:returntype", Promise)
|
|
52
|
-
], StandaloneFunctions.prototype, "hiddenTest", null);
|
|
53
|
-
let UserAuthorizationExtension = class UserAuthorizationExtension {
|
|
54
|
-
getConfig() {
|
|
55
|
-
return { functions: [] };
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
__decorate([
|
|
59
|
-
Func("metadata.getConfig"),
|
|
60
|
-
__metadata("design:type", Function),
|
|
61
|
-
__metadata("design:paramtypes", []),
|
|
62
|
-
__metadata("design:returntype", void 0)
|
|
63
|
-
], UserAuthorizationExtension.prototype, "getConfig", null);
|
|
64
|
-
UserAuthorizationExtension = __decorate([
|
|
65
|
-
Extension("userAuthorization")
|
|
66
|
-
], UserAuthorizationExtension);
|
|
67
|
-
function createDiscoveryService(providers = [
|
|
68
|
-
{
|
|
69
|
-
instance: new StandaloneFunctions(),
|
|
70
|
-
metatype: StandaloneFunctions,
|
|
71
|
-
},
|
|
72
|
-
]) {
|
|
73
|
-
const nestDiscovery = {
|
|
74
|
-
getProviders: () => providers,
|
|
75
|
-
};
|
|
76
|
-
const service = new ExtensionDiscoveryService(nestDiscovery, new Reflector());
|
|
77
|
-
service.onModuleInit();
|
|
78
|
-
return service;
|
|
79
|
-
}
|
|
80
|
-
describe("ExtensionDiscoveryService hidden functions", () => {
|
|
81
|
-
it("omits hidden functions from public and test discovery", () => {
|
|
82
|
-
const service = createDiscoveryService();
|
|
83
|
-
expect(service.getPublicFunctions().map((func) => func.fullName)).toEqual(["public.ping"]);
|
|
84
|
-
expect(service.getTestFunctions().map((func) => func.fullName)).toEqual(["test.visible"]);
|
|
85
|
-
});
|
|
86
|
-
it("keeps hidden functions registered and directly invokable", async () => {
|
|
87
|
-
const service = createDiscoveryService();
|
|
88
|
-
expect(service.getAllFunctions().map((func) => func.fullName)).toEqual([
|
|
89
|
-
"public.ping",
|
|
90
|
-
"admin.ping",
|
|
91
|
-
"test.visible",
|
|
92
|
-
"test.hidden",
|
|
93
|
-
]);
|
|
94
|
-
const hidden = service.getFunction("admin.ping");
|
|
95
|
-
expect(hidden).toMatchObject({ fullName: "admin.ping", hidden: true });
|
|
96
|
-
await expect(hidden.handler({}, {})).resolves.toEqual({
|
|
97
|
-
source: "hidden",
|
|
98
|
-
});
|
|
99
|
-
});
|
|
100
|
-
});
|
|
101
|
-
describe("ExtensionDiscoveryService", () => {
|
|
102
|
-
it("builds the canonical userAuthorization metadata Function name", () => {
|
|
103
|
-
const service = createDiscoveryService([
|
|
104
|
-
{
|
|
105
|
-
instance: new UserAuthorizationExtension(),
|
|
106
|
-
metatype: UserAuthorizationExtension,
|
|
107
|
-
},
|
|
108
|
-
]);
|
|
109
|
-
expect(service.getFunction("extension.userAuthorization.metadata.getConfig")).toMatchObject({
|
|
110
|
-
name: "metadata.getConfig",
|
|
111
|
-
fullName: "extension.userAuthorization.metadata.getConfig",
|
|
112
|
-
methodName: "getConfig",
|
|
113
|
-
});
|
|
114
|
-
});
|
|
115
|
-
});
|
|
116
|
-
//# sourceMappingURL=extension-discovery.service.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"extension-discovery.service.test.js","sourceRoot":"","sources":["../../src/discovery/extension-discovery.service.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"channel-app.controller.test.d.ts","sourceRoot":"","sources":["../../src/nestjs/channel-app.controller.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { HttpException, HttpStatus } from "@nestjs/common";
|
|
2
|
-
import { ValidationError } from "@channel.io/app-sdk-core";
|
|
3
|
-
import { describe, expect, it, vi } from "vitest";
|
|
4
|
-
import { ChannelAppController } from "./channel-app.controller.js";
|
|
5
|
-
describe("ChannelAppController", () => {
|
|
6
|
-
it("returns HTTP 400 for input validation errors", async () => {
|
|
7
|
-
const validationError = new ValidationError("Invalid function input", [
|
|
8
|
-
{ code: "invalid_type", path: ["quantity"] },
|
|
9
|
-
]);
|
|
10
|
-
const service = {
|
|
11
|
-
handleFunctionCall: vi.fn().mockRejectedValue(validationError),
|
|
12
|
-
};
|
|
13
|
-
const controller = new ChannelAppController(service);
|
|
14
|
-
try {
|
|
15
|
-
await controller.handleVersionedFunctions("v1", {
|
|
16
|
-
method: "extension.cafe.addCartItem",
|
|
17
|
-
context: {
|
|
18
|
-
caller: { type: "manager", id: "manager-1" },
|
|
19
|
-
channel: { id: "channel-1" },
|
|
20
|
-
},
|
|
21
|
-
params: { quantity: "1" },
|
|
22
|
-
});
|
|
23
|
-
expect.fail("Expected validation to fail");
|
|
24
|
-
}
|
|
25
|
-
catch (error) {
|
|
26
|
-
expect(error).toBeInstanceOf(HttpException);
|
|
27
|
-
const httpError = error;
|
|
28
|
-
expect(httpError.getStatus()).toBe(HttpStatus.BAD_REQUEST);
|
|
29
|
-
expect(httpError.getResponse()).toEqual({
|
|
30
|
-
error: "VALIDATION_ERROR",
|
|
31
|
-
message: "Invalid function input",
|
|
32
|
-
details: [{ code: "invalid_type", path: ["quantity"] }],
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
//# sourceMappingURL=channel-app.controller.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"channel-app.controller.test.js","sourceRoot":"","sources":["../../src/nestjs/channel-app.controller.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGnE,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,wBAAwB,EAAE;YACpE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE;SAC7C,CAAC,CAAC;QACH,MAAM,OAAO,GAAG;YACd,kBAAkB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,eAAe,CAAC;SAC/B,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,wBAAwB,CAAC,IAAI,EAAE;gBAC9C,MAAM,EAAE,4BAA4B;gBACpC,OAAO,EAAE;oBACP,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE;oBAC5C,OAAO,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE;iBAC7B;gBACD,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE;aAC1B,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;YAC5C,MAAM,SAAS,GAAG,KAAsB,CAAC;YACzC,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAC3D,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC;gBACtC,KAAK,EAAE,kBAAkB;gBACzB,OAAO,EAAE,wBAAwB;gBACjC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"channel-app.service.test.d.ts","sourceRoot":"","sources":["../../src/nestjs/channel-app.service.test.ts"],"names":[],"mappings":""}
|