@toon-ui/core 0.1.2-beta.1 → 0.3.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/README.md +124 -52
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/runtime.d.ts +4 -2
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +33 -4
- package/dist/runtime.js.map +1 -1
- package/dist/types.d.ts +16 -5
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -1,96 +1,168 @@
|
|
|
1
1
|
# @toon-ui/core
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
`@toon-ui/core` is the server and protocol foundation of ToonUI.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Use it when you need:
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
- `createToonProtocol()` on the server
|
|
8
|
+
- prompt generation
|
|
9
|
+
- parsing and validation
|
|
10
|
+
- interaction payload formatting
|
|
11
|
+
- chat-ready interaction messages
|
|
8
12
|
|
|
9
|
-
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Install
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
pnpm add @toon-ui/core
|
|
19
|
+
```
|
|
10
20
|
|
|
11
21
|
---
|
|
12
22
|
|
|
13
|
-
##
|
|
23
|
+
## Main exports
|
|
14
24
|
|
|
25
|
+
- `createToonProtocol()`
|
|
26
|
+
- `createToonCoreRuntime()` low-level runtime
|
|
15
27
|
- `parseToonUI()`
|
|
16
28
|
- `validateToonUI()`
|
|
17
29
|
- `extractToonBlocks()`
|
|
18
|
-
- `createRules()`
|
|
19
|
-
- `createPrompt()`
|
|
20
30
|
- `formatReplyMessage()`
|
|
21
31
|
- `formatSubmitMessage()`
|
|
32
|
+
- `createChatMessage()`
|
|
33
|
+
- `createPrompt()`
|
|
22
34
|
|
|
23
35
|
---
|
|
24
36
|
|
|
25
|
-
##
|
|
37
|
+
## Server integration
|
|
26
38
|
|
|
27
|
-
|
|
28
|
-
|
|
39
|
+
This is the PRIMARY use case.
|
|
40
|
+
|
|
41
|
+
```ts
|
|
42
|
+
import { createToonProtocol } from '@toon-ui/core';
|
|
43
|
+
import { streamText } from 'ai';
|
|
44
|
+
import { openai } from '@ai-sdk/openai';
|
|
45
|
+
|
|
46
|
+
const toon = createToonProtocol();
|
|
47
|
+
|
|
48
|
+
const system = [
|
|
49
|
+
toon.prompt,
|
|
50
|
+
'Available tools:',
|
|
51
|
+
'- searchProducts(query)',
|
|
52
|
+
'- createProduct(name, price, stock)',
|
|
53
|
+
].join('\n\n');
|
|
54
|
+
|
|
55
|
+
export async function POST(req: Request) {
|
|
56
|
+
const { messages } = await req.json();
|
|
57
|
+
|
|
58
|
+
const result = streamText({
|
|
59
|
+
model: openai('gpt-4.1'),
|
|
60
|
+
system,
|
|
61
|
+
messages,
|
|
62
|
+
tools: {
|
|
63
|
+
searchProducts: async ({ query }) => ({ ok: true, query }),
|
|
64
|
+
createProduct: async ({ name, price, stock }) => ({ ok: true, name, price, stock }),
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
return result.toUIMessageStreamResponse();
|
|
69
|
+
}
|
|
29
70
|
```
|
|
30
71
|
|
|
72
|
+
What `createToonProtocol()` gives you:
|
|
73
|
+
|
|
74
|
+
- `prompt`
|
|
75
|
+
- `rules`
|
|
76
|
+
- `formatReplyMessage()`
|
|
77
|
+
- `formatSubmitMessage()`
|
|
78
|
+
- `createChatMessage()`
|
|
79
|
+
|
|
31
80
|
---
|
|
32
81
|
|
|
33
|
-
##
|
|
82
|
+
## Frontend integration
|
|
83
|
+
|
|
84
|
+
`@toon-ui/core` is NOT the recommended frontend renderer package.
|
|
85
|
+
|
|
86
|
+
Use it on the frontend only if you are building custom tooling or your own renderer.
|
|
34
87
|
|
|
35
88
|
```ts
|
|
36
|
-
import {
|
|
37
|
-
extractToonBlocks,
|
|
38
|
-
parseToonUI,
|
|
39
|
-
validateToonUI,
|
|
40
|
-
} from '@toon-ui/core';
|
|
41
|
-
|
|
42
|
-
const content = `
|
|
43
|
-
Claro, encontré este producto.
|
|
44
|
-
|
|
45
|
-
\`\`\`toon-ui
|
|
46
|
-
card "Producto encontrado":
|
|
47
|
-
text "Coca-Cola 400ml"
|
|
48
|
-
badge "Activo" success
|
|
49
|
-
\`\`\`
|
|
50
|
-
`;
|
|
89
|
+
import { extractToonBlocks, parseToonUI, validateToonUI } from '@toon-ui/core';
|
|
51
90
|
|
|
52
91
|
const blocks = extractToonBlocks(content);
|
|
53
92
|
const ast = parseToonUI(blocks[0].raw);
|
|
54
93
|
const result = validateToonUI(ast);
|
|
55
|
-
|
|
56
|
-
console.log(result.ok);
|
|
57
94
|
```
|
|
58
95
|
|
|
59
|
-
|
|
96
|
+
If you want React rendering, use:
|
|
60
97
|
|
|
61
|
-
|
|
98
|
+
- `@toon-ui/react`
|
|
99
|
+
- or `@toon-ui/toon-ui`
|
|
62
100
|
|
|
63
|
-
|
|
101
|
+
---
|
|
64
102
|
|
|
65
|
-
|
|
66
|
-
- build your own renderer
|
|
67
|
-
- validate assistant output before rendering
|
|
68
|
-
- inspect ASTs in tooling or CI
|
|
69
|
-
- format structured reply/submit messages yourself
|
|
103
|
+
## Interaction helpers
|
|
70
104
|
|
|
71
|
-
|
|
105
|
+
### `formatReplyMessage()`
|
|
72
106
|
|
|
73
|
-
|
|
107
|
+
```ts
|
|
108
|
+
import { formatReplyMessage } from '@toon-ui/core';
|
|
109
|
+
|
|
110
|
+
const content = formatReplyMessage({
|
|
111
|
+
kind: 'ui_reply',
|
|
112
|
+
eventId: 'reply_123',
|
|
113
|
+
source: 'button',
|
|
114
|
+
component: 'button',
|
|
115
|
+
value: 'Sí, elimínalo',
|
|
116
|
+
});
|
|
117
|
+
```
|
|
74
118
|
|
|
75
|
-
|
|
119
|
+
### `formatSubmitMessage()`
|
|
76
120
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
121
|
+
```ts
|
|
122
|
+
import { formatSubmitMessage } from '@toon-ui/core';
|
|
123
|
+
|
|
124
|
+
const content = formatSubmitMessage({
|
|
125
|
+
kind: 'ui_submit',
|
|
126
|
+
eventId: 'submit_123',
|
|
127
|
+
source: 'form',
|
|
128
|
+
intent: 'create_product',
|
|
129
|
+
formTitle: 'Crear producto',
|
|
130
|
+
values: { name: 'Coca-Cola', price: 2500 },
|
|
131
|
+
});
|
|
132
|
+
```
|
|
81
133
|
|
|
82
|
-
|
|
134
|
+
### `createChatMessage()`
|
|
83
135
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
136
|
+
```ts
|
|
137
|
+
import { createChatMessage } from '@toon-ui/core';
|
|
138
|
+
|
|
139
|
+
const message = createChatMessage({
|
|
140
|
+
kind: 'ui_reply',
|
|
141
|
+
eventId: 'reply_123',
|
|
142
|
+
source: 'button',
|
|
143
|
+
component: 'button',
|
|
144
|
+
value: 'Sí, elimínalo',
|
|
145
|
+
});
|
|
146
|
+
|
|
147
|
+
console.log(message.content);
|
|
148
|
+
console.log(message.displayContent);
|
|
149
|
+
```
|
|
88
150
|
|
|
89
151
|
---
|
|
90
152
|
|
|
91
|
-
##
|
|
153
|
+
## Boundary
|
|
154
|
+
|
|
155
|
+
`@toon-ui/core` owns:
|
|
156
|
+
|
|
157
|
+
- grammar
|
|
158
|
+
- AST
|
|
159
|
+
- validation
|
|
160
|
+
- prompts
|
|
161
|
+
- interaction protocol
|
|
92
162
|
|
|
93
|
-
|
|
94
|
-
- `@toon-ui/prompts` — prompt helpers
|
|
95
|
-
- `@toon-ui/toon-ui` — easiest public entrypoint
|
|
163
|
+
It does NOT own:
|
|
96
164
|
|
|
165
|
+
- React rendering
|
|
166
|
+
- backend tools
|
|
167
|
+
- persistence
|
|
168
|
+
- model orchestration
|
package/dist/index.d.ts
CHANGED
|
@@ -3,5 +3,5 @@ export { parseToonUI, ToonSyntaxError } from './parser';
|
|
|
3
3
|
export { validateToonUI } from './validator';
|
|
4
4
|
export { extractToonBlocks } from './formatter';
|
|
5
5
|
export { createPrompt, createComponentPrompt, createSafetyPrompt, createExamplesPrompt } from './prompts';
|
|
6
|
-
export { createRules,
|
|
6
|
+
export { createRules, createToonProtocol, createToonCoreRuntime, formatSubmitMessage, formatReplyMessage, createChatMessage } from './runtime';
|
|
7
7
|
//# 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":"AAAA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAC1G,OAAO,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAC1G,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,5 +3,5 @@ export { parseToonUI, ToonSyntaxError } from './parser';
|
|
|
3
3
|
export { validateToonUI } from './validator';
|
|
4
4
|
export { extractToonBlocks } from './formatter';
|
|
5
5
|
export { createPrompt, createComponentPrompt, createSafetyPrompt, createExamplesPrompt } from './prompts';
|
|
6
|
-
export { createRules,
|
|
6
|
+
export { createRules, createToonProtocol, createToonCoreRuntime, formatSubmitMessage, formatReplyMessage, createChatMessage } from './runtime';
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAC1G,OAAO,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAC1G,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/runtime.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import { type CreateToonUIOptions, type ReplyPayload, type SubmitPayload, type ToonComponentRegistry, type ToonRules, type ToonRuntime } from './types';
|
|
1
|
+
import { type CreateToonUIOptions, type ReplyPayload, type SubmitPayload, type ToonChatMessage, type ToonComponentRegistry, type ToonInteractionPayload, type ToonProtocol, type ToonRules, type ToonRuntime } from './types';
|
|
2
2
|
export declare function createRules(): ToonRules;
|
|
3
3
|
export declare function formatSubmitMessage(intentOrPayload: string | SubmitPayload, values?: Record<string, string | number | boolean>): string;
|
|
4
4
|
export declare function formatReplyMessage(valueOrPayload: string | ReplyPayload, metadata?: Record<string, string | number | boolean>): string;
|
|
5
|
-
export declare function
|
|
5
|
+
export declare function createChatMessage<TPayload extends ToonInteractionPayload>(payload: TPayload): ToonChatMessage<TPayload>;
|
|
6
|
+
export declare function createToonProtocol(): ToonProtocol;
|
|
7
|
+
export declare function createToonCoreRuntime<TComponents extends ToonComponentRegistry = ToonComponentRegistry>(options?: CreateToonUIOptions<TComponents>): ToonRuntime<TComponents>;
|
|
6
8
|
//# sourceMappingURL=runtime.d.ts.map
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAIA,OAAO,EAAyF,KAAK,mBAAmB,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,KAAK,qBAAqB,EAAE,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAIA,OAAO,EAAyF,KAAK,mBAAmB,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,KAAK,qBAAqB,EAAE,KAAK,sBAAsB,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAMrT,wBAAgB,WAAW,IAAI,SAAS,CAQvC;AAED,wBAAgB,mBAAmB,CAAC,eAAe,EAAE,MAAM,GAAG,aAAa,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,MAAM,CAiBvI;AAED,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,YAAY,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAM,GAAG,MAAM,CAiB1I;AAOD,wBAAgB,iBAAiB,CAAC,QAAQ,SAAS,sBAAsB,EAAE,OAAO,EAAE,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC,CAkBvH;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAUjD;AAED,wBAAgB,qBAAqB,CAAC,WAAW,SAAS,qBAAqB,GAAG,qBAAqB,EAAE,OAAO,GAAE,mBAAmB,CAAC,WAAW,CAAM,GAAG,WAAW,CAAC,WAAW,CAAC,CASjL"}
|
package/dist/runtime.js
CHANGED
|
@@ -49,17 +49,46 @@ export function formatReplyMessage(valueOrPayload, metadata = {}) {
|
|
|
49
49
|
});
|
|
50
50
|
return lines.join('\n');
|
|
51
51
|
}
|
|
52
|
-
|
|
52
|
+
function createSubmitDisplayContent(payload) {
|
|
53
|
+
const entries = Object.entries(payload.values).map(([key, value]) => `${key}: ${String(value)}`);
|
|
54
|
+
return [payload.formTitle, ...entries].join('\n');
|
|
55
|
+
}
|
|
56
|
+
export function createChatMessage(payload) {
|
|
57
|
+
if (payload.kind === 'ui_reply') {
|
|
58
|
+
return {
|
|
59
|
+
role: 'user',
|
|
60
|
+
kind: payload.kind,
|
|
61
|
+
content: formatReplyMessage(payload),
|
|
62
|
+
displayContent: payload.value,
|
|
63
|
+
payload,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
return {
|
|
67
|
+
role: 'user',
|
|
68
|
+
kind: payload.kind,
|
|
69
|
+
content: formatSubmitMessage(payload),
|
|
70
|
+
displayContent: createSubmitDisplayContent(payload),
|
|
71
|
+
payload,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
export function createToonProtocol() {
|
|
53
75
|
const rules = createRules();
|
|
54
76
|
return {
|
|
55
|
-
components: (options.components ?? {}),
|
|
56
77
|
prompt: createPrompt(rules),
|
|
57
78
|
rules,
|
|
79
|
+
formatSubmitMessage,
|
|
80
|
+
formatReplyMessage,
|
|
81
|
+
createChatMessage,
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
export function createToonCoreRuntime(options = {}) {
|
|
85
|
+
const protocol = createToonProtocol();
|
|
86
|
+
return {
|
|
87
|
+
components: (options.components ?? {}),
|
|
88
|
+
...protocol,
|
|
58
89
|
parse: parseToonUI,
|
|
59
90
|
validate: validateToonUI,
|
|
60
91
|
extractBlocks: extractToonBlocks,
|
|
61
|
-
formatSubmitMessage,
|
|
62
|
-
formatReplyMessage,
|
|
63
92
|
};
|
|
64
93
|
}
|
|
65
94
|
//# sourceMappingURL=runtime.js.map
|
package/dist/runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,uBAAuB,
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -139,20 +139,31 @@ export interface SubmitPayload {
|
|
|
139
139
|
values: Record<string, SubmitValue>;
|
|
140
140
|
line?: number;
|
|
141
141
|
}
|
|
142
|
+
export type ToonInteractionPayload = ReplyPayload | SubmitPayload;
|
|
143
|
+
export interface ToonChatMessage<TPayload extends ToonInteractionPayload = ToonInteractionPayload> {
|
|
144
|
+
role: "user";
|
|
145
|
+
kind: TPayload["kind"];
|
|
146
|
+
content: string;
|
|
147
|
+
displayContent: string;
|
|
148
|
+
payload: TPayload;
|
|
149
|
+
}
|
|
150
|
+
export interface ToonProtocol {
|
|
151
|
+
prompt: string;
|
|
152
|
+
rules: ToonRules;
|
|
153
|
+
formatSubmitMessage: typeof import('./runtime').formatSubmitMessage;
|
|
154
|
+
formatReplyMessage: typeof import('./runtime').formatReplyMessage;
|
|
155
|
+
createChatMessage: typeof import('./runtime').createChatMessage;
|
|
156
|
+
}
|
|
142
157
|
export type ToonComponentRegistry = Partial<{
|
|
143
158
|
[K in keyof ToonNodeByType]: unknown;
|
|
144
159
|
}>;
|
|
145
160
|
export interface CreateToonUIOptions<TComponents extends ToonComponentRegistry = ToonComponentRegistry> {
|
|
146
161
|
components?: TComponents;
|
|
147
162
|
}
|
|
148
|
-
export interface ToonRuntime<TComponents extends ToonComponentRegistry = ToonComponentRegistry> {
|
|
163
|
+
export interface ToonRuntime<TComponents extends ToonComponentRegistry = ToonComponentRegistry> extends ToonProtocol {
|
|
149
164
|
components: TComponents;
|
|
150
|
-
prompt: string;
|
|
151
|
-
rules: ToonRules;
|
|
152
165
|
parse: typeof import('./parser').parseToonUI;
|
|
153
166
|
validate: typeof import('./validator').validateToonUI;
|
|
154
167
|
extractBlocks: typeof import('./formatter').extractToonBlocks;
|
|
155
|
-
formatSubmitMessage: typeof import('./runtime').formatSubmitMessage;
|
|
156
|
-
formatReplyMessage: typeof import('./runtime').formatReplyMessage;
|
|
157
168
|
}
|
|
158
169
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@toon-ui/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Core parser, AST, validation, and protocol utilities for ToonUI.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"toon-ui",
|
|
@@ -34,13 +34,13 @@
|
|
|
34
34
|
"default": "./dist/index.js"
|
|
35
35
|
}
|
|
36
36
|
},
|
|
37
|
+
"dependencies": {
|
|
38
|
+
"zod": "^4.4.3"
|
|
39
|
+
},
|
|
37
40
|
"scripts": {
|
|
38
41
|
"build": "tsc -p tsconfig.json",
|
|
39
42
|
"test": "vitest run",
|
|
40
43
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
41
44
|
"lint": "tsc -p tsconfig.json --noEmit"
|
|
42
|
-
},
|
|
43
|
-
"dependencies": {
|
|
44
|
-
"zod": "^3.23.8"
|
|
45
45
|
}
|
|
46
|
-
}
|
|
46
|
+
}
|