ttc-origin-server 0.10.3 → 0.10.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +74 -11
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +34 -6
- package/dist/index.js.map +1 -1
- package/dist/util/type.d.ts +11 -0
- package/dist/util/type.d.ts.map +1 -1
- package/dist/util/type.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# TTC Origin Server
|
|
2
2
|
|
|
3
|
-
A lightweight server wrapper for `ttc-rpc` that exposes your decorated classes as RPC endpoints with automatic API discovery.
|
|
3
|
+
A lightweight server wrapper for `ttc-rpc` that exposes your decorated classes as RPC endpoints with automatic API discovery. Designed for building AI assistant origins with real-time messaging capabilities.
|
|
4
4
|
|
|
5
5
|
## Installation
|
|
6
6
|
|
|
@@ -18,8 +18,9 @@ npm install ttc-origin-server
|
|
|
18
18
|
// src/test.ts
|
|
19
19
|
import { ttc } from "ttc-rpc";
|
|
20
20
|
import z from "zod";
|
|
21
|
+
import { BaseModule, ActionableClient } from 'ttc-origin-server';
|
|
21
22
|
|
|
22
|
-
export class HelloWorldModule {
|
|
23
|
+
export class HelloWorldModule extends BaseModule {
|
|
23
24
|
@ttc.describe({
|
|
24
25
|
doc: 'some info',
|
|
25
26
|
inputSchema: z.object({
|
|
@@ -32,6 +33,16 @@ export class HelloWorldModule {
|
|
|
32
33
|
hello(name: string): string {
|
|
33
34
|
return `Hello, ${name}!`;
|
|
34
35
|
}
|
|
36
|
+
|
|
37
|
+
// Optional: Handle assistant connections
|
|
38
|
+
onConnect(client: ActionableClient, credentials: Record<string, string>): void {
|
|
39
|
+
console.log(`Assistant ${client.id} connected`);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// Optional: Handle incoming messages from assistants
|
|
43
|
+
onMessage(assistantId: string, message: string): void {
|
|
44
|
+
console.log(`Message from ${assistantId}: ${message}`);
|
|
45
|
+
}
|
|
35
46
|
}
|
|
36
47
|
```
|
|
37
48
|
|
|
@@ -44,12 +55,18 @@ import { HelloWorldModule } from './test';
|
|
|
44
55
|
|
|
45
56
|
runServer({
|
|
46
57
|
name: 'my-service',
|
|
58
|
+
description: 'My awesome AI service',
|
|
47
59
|
modules: [HelloWorldModule],
|
|
48
60
|
port: 3000,
|
|
61
|
+
credentials: [
|
|
62
|
+
{ provider: 'OpenAI', credentialKeys: ['apiKey'] }
|
|
63
|
+
],
|
|
49
64
|
authCb: async (req) => {
|
|
50
65
|
// Your authentication logic
|
|
51
66
|
return true;
|
|
52
|
-
}
|
|
67
|
+
},
|
|
68
|
+
cacheClient: true,
|
|
69
|
+
getAssistantMessages: true
|
|
53
70
|
});
|
|
54
71
|
```
|
|
55
72
|
|
|
@@ -67,19 +84,65 @@ Starts a TTC Origin server.
|
|
|
67
84
|
|
|
68
85
|
**Config options:**
|
|
69
86
|
|
|
70
|
-
- `name` (string) – Service name
|
|
71
|
-
- `
|
|
87
|
+
- `name` (string) – Service name (will be normalized to lowercase with underscores)
|
|
88
|
+
- `description` (string) – Optional service description
|
|
89
|
+
- `modules` (any[]) – Array of classes decorated with `@ttc.describe`, should extend `BaseModule`
|
|
72
90
|
- `port` (number) – Port to listen on
|
|
73
|
-
- `
|
|
74
|
-
- `
|
|
75
|
-
- `
|
|
91
|
+
- `credentials` (CredentialSpecification[]) – Required API keys for third-party services
|
|
92
|
+
- `authCb` (req => Promise<boolean>) – Authentication callback for RPC methods
|
|
93
|
+
- `cacheClient` (boolean) – Whether to cache connected clients
|
|
94
|
+
- `getAssistantMessages` (boolean) – Whether to receive messages from connected assistants
|
|
95
|
+
- `onPing` (origin => Promise<void>) – Callback fired when origin receives a ping
|
|
96
|
+
- `app` (express.Express) – Optional existing Express app instance
|
|
76
97
|
- `modifyable` (boolean) – If `true`, exposes working directory
|
|
77
|
-
|
|
98
|
+
|
|
99
|
+
### Types
|
|
100
|
+
|
|
101
|
+
#### `BaseModule`
|
|
102
|
+
|
|
103
|
+
Base class for origin modules with optional lifecycle hooks:
|
|
104
|
+
|
|
105
|
+
```typescript
|
|
106
|
+
class MyModule extends BaseModule {
|
|
107
|
+
onConnect?(client: ActionableClient, credentials: Record<string, string>): void | Promise<void>
|
|
108
|
+
onMessage?(assistantId: string, message: string): void | Promise<void>
|
|
109
|
+
}
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
#### `ActionableClient`
|
|
113
|
+
|
|
114
|
+
Connected assistant client interface:
|
|
115
|
+
|
|
116
|
+
```typescript
|
|
117
|
+
{
|
|
118
|
+
id: string;
|
|
119
|
+
message: (message: string) => Promise<void>;
|
|
120
|
+
trigger: (triggerMessage: string) => Promise<void>;
|
|
121
|
+
}
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
#### `CredentialSpecification`
|
|
125
|
+
|
|
126
|
+
Define required credentials:
|
|
127
|
+
|
|
128
|
+
```typescript
|
|
129
|
+
{
|
|
130
|
+
provider: string; // e.g., 'OpenAI', 'Twilio'
|
|
131
|
+
credentialKeys: string[]; // e.g., ['apiKey', 'secret']
|
|
132
|
+
}
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
### Helper Functions
|
|
136
|
+
|
|
137
|
+
- `getClientById(id: string)` – Retrieve a connected client by ID
|
|
138
|
+
- `getClient(args: any)` – Get client from request context
|
|
139
|
+
- `getAuthKey(args: any, { provider, credentialKey })` – Extract API keys from request
|
|
78
140
|
|
|
79
141
|
### Endpoints
|
|
80
142
|
|
|
81
|
-
- `GET /rpc/info` – Service metadata
|
|
82
|
-
- `GET /rpc/functions` – Lists all RPC methods (auto
|
|
143
|
+
- `GET /rpc/info` – Service metadata and configuration
|
|
144
|
+
- `GET /rpc/functions` – Lists all RPC methods (auto-discovered)
|
|
145
|
+
- `GET /rpc/connect` – WebSocket-style endpoint for assistant connections
|
|
83
146
|
- `POST /rpc/:module/:method` – Invoke an RPC method (handled by `ttc-rpc`)
|
|
84
147
|
|
|
85
148
|
## Decorator Usage
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { ActionableClient, BaseModule, OriginConfiguration, PseudoServer } from
|
|
|
2
2
|
export { ttc, generateRPCMethodsInfo, type RPCMethodInfo } from 'ttc-rpc';
|
|
3
3
|
export { BaseModule };
|
|
4
4
|
export declare const getClientById: (id: string) => ActionableClient | undefined;
|
|
5
|
+
export declare const UserInput: (type: "options" | "text", client: ActionableClient, label: string) => void;
|
|
5
6
|
export declare var globalConfig: OriginConfiguration;
|
|
6
7
|
export declare var originApp: PseudoServer;
|
|
7
8
|
export declare function initCache(): void;
|
|
@@ -11,5 +12,6 @@ export declare const getAuthKey: (args: any, request: {
|
|
|
11
12
|
}) => any;
|
|
12
13
|
export declare const handleTunnel: (data: any) => Promise<void>;
|
|
13
14
|
export declare const getClient: (args: any | string) => ActionableClient;
|
|
15
|
+
export declare const pingClient: (url: string) => Promise<void>;
|
|
14
16
|
export declare const runServer: (config: OriginConfiguration) => void;
|
|
15
17
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAA2B,mBAAmB,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAA2B,mBAAmB,EAAE,YAAY,EAAwC,MAAM,aAAa,CAAC;AAK7J,OAAO,EAAE,GAAG,EAAE,sBAAsB,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,CAAA;AAGrB,eAAO,MAAM,aAAa,GAAI,IAAI,MAAM,KAAG,gBAAgB,GAAG,SAY7D,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,MAAM,SAAS,GAAG,MAAM,EAAE,QAAQ,gBAAgB,EAAE,OAAO,MAAM,SAE1F,CAAA;AAED,eAAO,IAAI,YAAY,EAAE,mBAAmB,CAAC;AAC7C,eAAO,IAAI,SAAS,EAAE,YAAY,CAAC;AAGnC,wBAAgB,SAAS,SAQxB;AAED,eAAO,MAAM,UAAU,GAAI,MAAM,GAAG,EAAE,SAAS;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAA;CACxB,QAMA,CAAA;AAED,eAAO,MAAM,YAAY,GAAS,SAAI,kBAQrC,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,MAAM,GAAG,GAAG,MAAM,KAAG,gBA0B9C,CAAA;AAqBD,eAAO,MAAM,UAAU,GAAU,KAAK,MAAM,kBAY3C,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,QAAQ,mBAAmB,SAmKpD,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -3,7 +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
|
-
exports.runServer = exports.getClient = exports.handleTunnel = exports.getAuthKey = exports.originApp = exports.globalConfig = exports.getClientById = exports.BaseModule = exports.generateRPCMethodsInfo = exports.ttc = void 0;
|
|
6
|
+
exports.runServer = exports.pingClient = exports.getClient = exports.handleTunnel = exports.getAuthKey = exports.originApp = exports.globalConfig = exports.UserInput = exports.getClientById = exports.BaseModule = exports.generateRPCMethodsInfo = exports.ttc = void 0;
|
|
7
7
|
exports.initCache = initCache;
|
|
8
8
|
const ttc_rpc_1 = require("ttc-rpc");
|
|
9
9
|
const express_1 = __importDefault(require("express"));
|
|
@@ -32,6 +32,9 @@ const getClientById = (id) => {
|
|
|
32
32
|
};
|
|
33
33
|
};
|
|
34
34
|
exports.getClientById = getClientById;
|
|
35
|
+
const UserInput = (type, client, label) => {
|
|
36
|
+
};
|
|
37
|
+
exports.UserInput = UserInput;
|
|
35
38
|
// Initialize hosts cache after config is set
|
|
36
39
|
function initCache() {
|
|
37
40
|
// This will be called after globalConfig is assigned in runServer
|
|
@@ -91,9 +94,9 @@ exports.getClient = getClient;
|
|
|
91
94
|
const pingClients = async (port) => {
|
|
92
95
|
const clients = (0, cache_1.loadHosts)(exports.globalConfig.name);
|
|
93
96
|
console.log(clients.values(), 'CLIENTS');
|
|
94
|
-
const localUri = `http://localhost:${port}`;
|
|
97
|
+
const localUri = exports.globalConfig.host ? exports.globalConfig.host : `http://localhost:${port}`;
|
|
95
98
|
for (const client of clients.values()) {
|
|
96
|
-
const finalUri = `${client}/rpc/ping?url=${localUri}`;
|
|
99
|
+
const finalUri = `${client}/rpc/ping?url=${localUri}&name=${exports.globalConfig.name}`;
|
|
97
100
|
console.log(finalUri);
|
|
98
101
|
try {
|
|
99
102
|
const response = await fetch(finalUri, {
|
|
@@ -106,6 +109,21 @@ const pingClients = async (port) => {
|
|
|
106
109
|
}
|
|
107
110
|
}
|
|
108
111
|
};
|
|
112
|
+
const pingClient = async (url) => {
|
|
113
|
+
const localUri = exports.globalConfig.host ? exports.globalConfig.host : `http://localhost:${exports.globalConfig.port}`;
|
|
114
|
+
const finalUri = `${url}/rpc/ping?url=${localUri}&name=${exports.globalConfig.name}`;
|
|
115
|
+
console.log(finalUri);
|
|
116
|
+
try {
|
|
117
|
+
const response = await fetch(finalUri, {
|
|
118
|
+
method: 'GET',
|
|
119
|
+
});
|
|
120
|
+
console.log(response.status, response.statusText);
|
|
121
|
+
}
|
|
122
|
+
catch (error) {
|
|
123
|
+
console.log(error);
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
exports.pingClient = pingClient;
|
|
109
127
|
const runServer = (config) => {
|
|
110
128
|
const { modules, port, app } = config;
|
|
111
129
|
const OInstance = app || (0, express_1.default)();
|
|
@@ -118,7 +136,8 @@ const runServer = (config) => {
|
|
|
118
136
|
name: config.name,
|
|
119
137
|
description: config.description || '',
|
|
120
138
|
credentials: config.credentials,
|
|
121
|
-
directory: config.modifyable ? process.cwd() : undefined
|
|
139
|
+
directory: config.modifyable ? process.cwd() : undefined,
|
|
140
|
+
events: config.events
|
|
122
141
|
});
|
|
123
142
|
});
|
|
124
143
|
appInstance.get('/rpc/connect', async (req, res) => {
|
|
@@ -222,7 +241,7 @@ const runServer = (config) => {
|
|
|
222
241
|
}).listen(port);
|
|
223
242
|
appInstance.post('/rpc-ai-message', async (req, res) => {
|
|
224
243
|
// console.log(req.body, 'BODY');
|
|
225
|
-
const { id, message } = req.body;
|
|
244
|
+
const { id, message, type } = req.body;
|
|
226
245
|
if (config.getAssistantMessages) {
|
|
227
246
|
// await config.onMessage(id, message);
|
|
228
247
|
const modules = config.modules.map(x => x.name);
|
|
@@ -230,9 +249,18 @@ const runServer = (config) => {
|
|
|
230
249
|
modules.forEach((key) => {
|
|
231
250
|
const moduleName = key;
|
|
232
251
|
const instance = ttc_rpc_1.ttc.instance(moduleName);
|
|
233
|
-
if (instance && instance.onMessage) {
|
|
252
|
+
if (instance && instance.onMessage && type === 'message') {
|
|
234
253
|
instance.onMessage(id, message);
|
|
235
254
|
}
|
|
255
|
+
if (instance && instance.onLog && type === 'logs') {
|
|
256
|
+
instance.onLog(id, message);
|
|
257
|
+
}
|
|
258
|
+
if (instance && instance.onPermission && type === 'permission') {
|
|
259
|
+
instance.onPermission(id, message.id, message.question);
|
|
260
|
+
}
|
|
261
|
+
if (instance && instance.onLlm && type === 'llm') {
|
|
262
|
+
instance.onLlm(id, message);
|
|
263
|
+
}
|
|
236
264
|
});
|
|
237
265
|
}
|
|
238
266
|
res.json({
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/util/type.d.ts
CHANGED
|
@@ -8,8 +8,11 @@ export type ActionableClient = {
|
|
|
8
8
|
message: (message: string) => Promise<void>;
|
|
9
9
|
trigger: (triggerMessage: string) => Promise<void>;
|
|
10
10
|
};
|
|
11
|
+
export type TTCOriginPermissions = 'message' | 'logs' | 'llm' | 'permission' | 'origin-management';
|
|
12
|
+
export type TTCOriginEvent = 'message' | 'logs' | 'llm' | 'permission';
|
|
11
13
|
export type OriginConfiguration = {
|
|
12
14
|
name: string;
|
|
15
|
+
host?: string;
|
|
13
16
|
description?: string;
|
|
14
17
|
modules: any[];
|
|
15
18
|
port: number;
|
|
@@ -20,6 +23,7 @@ export type OriginConfiguration = {
|
|
|
20
23
|
onPing?: (origin: string) => Promise<void>;
|
|
21
24
|
getAssistantMessages?: boolean;
|
|
22
25
|
app?: express.Express;
|
|
26
|
+
events?: TTCOriginPermissions[];
|
|
23
27
|
};
|
|
24
28
|
export type PseudoServer = {
|
|
25
29
|
invoke: (endpoint: string, request: any) => Promise<any>;
|
|
@@ -49,5 +53,12 @@ export declare class BaseModule {
|
|
|
49
53
|
*/
|
|
50
54
|
onConnect?(client: ActionableClient, credentials: Record<string, string>): void | Promise<void>;
|
|
51
55
|
onMessage?(assistantId: string, message: string): void | Promise<void>;
|
|
56
|
+
onLog?(assistantId: string, message: string): void | Promise<void>;
|
|
57
|
+
onPermission?(assistantId: string, permissionId: string, question: string): void | Promise<void>;
|
|
58
|
+
onLlm?(assistantId: string, message: {
|
|
59
|
+
state: string;
|
|
60
|
+
sub_state: string;
|
|
61
|
+
type: string;
|
|
62
|
+
}): void | Promise<void>;
|
|
52
63
|
}
|
|
53
64
|
//# sourceMappingURL=type.d.ts.map
|
package/dist/util/type.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/util/type.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,OAAO,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtD,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,uBAAuB,EAAE,CAAC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1C,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/util/type.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,OAAO,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtD,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,YAAY,GAAG,mBAAmB,CAAC;AAEnG,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,YAAY,CAAA;AAEtE,MAAM,MAAM,mBAAmB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,uBAAuB,EAAE,CAAC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1C,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,oBAAoB,EAAE,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACvB,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IACzD,GAAG,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1E,CAAA;AAED,qBAAa,UAAU;IAEnB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,CAAC,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAG/F,SAAS,CAAC,CAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEvE,KAAK,CAAC,CAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEnE,YAAY,CAAC,CAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjG,KAAK,CAAC,CAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE;QAClC,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAA;KACf,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAC3B"}
|
package/dist/util/type.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/util/type.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/util/type.ts"],"names":[],"mappings":";;;AAuCA,MAAa,UAAU;CAoCtB;AApCD,gCAoCC"}
|
package/package.json
CHANGED