@toon-ui/core 1.2.0 → 1.2.1

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/prompts.d.ts CHANGED
@@ -6,6 +6,7 @@ export declare function createSafetyPrompt(): string;
6
6
  export declare function createCompositionPrompt(): string;
7
7
  export declare function createFormBestPracticesPrompt(): string;
8
8
  export declare function createDecisionPrompt(): string;
9
+ export declare function createSelfCheckPrompt(): string;
9
10
  export declare function createExamplesPrompt(): string;
10
11
  export declare function createPrompt(rules: ToonRules): string;
11
12
  //# sourceMappingURL=prompts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAU9D;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAgC3C;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAS7C;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAU3C;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAahD;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAgBtD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAiB7C;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAgE7C;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CA4BrD"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAU9D;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAgC3C;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAS7C;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAU3C;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAchD;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAgBtD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAqB7C;AAED,wBAAgB,qBAAqB,IAAI,MAAM,CAU9C;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAuF7C;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CA8BrD"}
package/dist/prompts.js CHANGED
@@ -75,6 +75,7 @@ export function createCompositionPrompt() {
75
75
  '- Use loading, progress, and toast for system state and feedback when relevant.',
76
76
  '- Use breadcrumb and pagination only when the user is navigating a larger result space.',
77
77
  '- Use chart only when the user needs trend or comparison understanding; otherwise prefer table for precise values.',
78
+ '- For strict components like alert, empty, progress, and pagination, prefer copying the canonical example shape exactly instead of improvising shorthand.',
78
79
  ].join('\n');
79
80
  }
80
81
  export function createFormBestPracticesPrompt() {
@@ -110,6 +111,21 @@ export function createDecisionPrompt() {
110
111
  '- If the user must choose among actions, prefer menu or command over prose bullet lists.',
111
112
  '- If the user needs hierarchical or dense detail, prefer tabs or accordion over a wall of text.',
112
113
  '- If the user asks for analytics, trends, or comparison, prefer chart plus optional supporting table.',
114
+ '- If you need a callout block with explanation, use alert <variant> "Title": with nested children, not a one-line shorthand.',
115
+ '- If you need an empty state, use empty "Title": with at least one nested text or action node.',
116
+ '- If you need numeric progress, use progress "Label" value=<number> max=<number> exactly.',
117
+ '- If you need page navigation, use pagination page=<number> totalPages=<number> exactly.',
118
+ ].join('\n');
119
+ }
120
+ export function createSelfCheckPrompt() {
121
+ return [
122
+ 'Before emitting ToonUI, run this syntax self-check:',
123
+ '- alert always needs: variant + quoted title + trailing colon + nested children',
124
+ '- empty always needs: quoted title + trailing colon + nested children',
125
+ '- progress always needs: quoted label + value=<number> + max=<number>',
126
+ '- pagination always needs: page=<number> + totalPages=<number>',
127
+ '- If a node requires children, do NOT emit it as a one-line leaf node.',
128
+ '- If you are unsure about a new component syntax, fall back to card, text, table, form, confirm, or list instead of inventing invalid shorthand.',
113
129
  ].join('\n');
114
130
  }
115
131
  export function createExamplesPrompt() {
@@ -151,6 +167,25 @@ export function createExamplesPrompt() {
151
167
  '```',
152
168
  '',
153
169
  '```toon-ui',
170
+ 'alert warning "Low stock":',
171
+ ' text "Only 3 units remain in the warehouse."',
172
+ '```',
173
+ '',
174
+ '```toon-ui',
175
+ 'empty "No customers found":',
176
+ ' text "Try another search term or create a new customer."',
177
+ ' button secondary "Create customer" reply="Create customer"',
178
+ '```',
179
+ '',
180
+ '```toon-ui',
181
+ 'progress "Inventory sync" value=65 max=100',
182
+ '```',
183
+ '',
184
+ '```toon-ui',
185
+ 'pagination page=2 totalPages=8',
186
+ '```',
187
+ '',
188
+ '```toon-ui',
154
189
  'chart bar "Weekly sales" x="Day" y="Revenue":',
155
190
  ' series "Store A":',
156
191
  ' point "Mon" 1200',
@@ -171,6 +206,10 @@ export function createExamplesPrompt() {
171
206
  '- header "Customer" -> INVALID because header is not an allowed component',
172
207
  '- card: -> INVALID because card requires a quoted title',
173
208
  '- badge success "Customer" -> INVALID because badge syntax is badge "Label" variant',
209
+ '- alert "Low stock" -> INVALID because alert requires a variant and nested block',
210
+ '- empty "No data" -> INVALID because empty requires a nested block after :',
211
+ '- progress 65 -> INVALID because progress requires a quoted label plus value= and max=',
212
+ '- pagination 2/8 -> INVALID because pagination requires page= and totalPages=',
174
213
  '- confirm "Delete customer?": -> VALID for backward compatibility, but prefer confirm danger|warning|neutral "Title":',
175
214
  '- form "Customer": with no submit button -> INVALID',
176
215
  '- row: May 09, $ 8,155.35, Completed -> RISKY because commas inside values can break the table unless cells are quoted',
@@ -203,6 +242,8 @@ export function createPrompt(rules) {
203
242
  '',
204
243
  createDecisionPrompt(),
205
244
  '',
245
+ createSelfCheckPrompt(),
246
+ '',
206
247
  createExamplesPrompt(),
207
248
  ].join('\n');
208
249
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.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": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "Core parser, AST, validation, and protocol utilities for ToonUI.",
5
5
  "keywords": [
6
6
  "toon-ui",