@tenerife.music/ui 4.0.0 → 5.0.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 +11 -362
- package/package.json +1 -1
- package/dist/Link-B8gB8LrX.d.cts +0 -78
- package/dist/Link-Dg9GiZzj.d.ts +0 -78
- package/dist/agent-contract/index.d.cts +0 -133
- package/dist/ai/index.d.cts +0 -202
- package/dist/colors-BRUYtnG-.d.cts +0 -298
- package/dist/colors-BRUYtnG-.d.ts +0 -298
- package/dist/engine/index.d.cts +0 -135
- package/dist/extensions/next/index.d.cts +0 -37
- package/dist/index-4rLh47Jk.d.cts +0 -1460
- package/dist/index-B9bPI2VR.d.cts +0 -4523
- package/dist/index-Cgj5md_p.d.ts +0 -4523
- package/dist/index-DzJQZ5GE.d.ts +0 -1460
- package/dist/index.d.cts +0 -11680
- package/dist/preset.d.cts +0 -21
- package/dist/safe-native-DQVUNMW7.d.cts +0 -32
- package/dist/safe-native-DQVUNMW7.d.ts +0 -32
- package/dist/styles.cjs +0 -2
- package/dist/styles.d.cts +0 -2
- package/dist/styles.d.ts +0 -2
- package/dist/styles.mjs +0 -1
- package/dist/theme/index.d.cts +0 -368
- package/dist/tokens/index.d.cts +0 -4
- package/dist/types-BBXB5_Tj.d.ts +0 -407
- package/dist/types-BEG5B5HA.d.cts +0 -138
- package/dist/types-C9zHIyTu.d.ts +0 -80
- package/dist/types-CNgJi1zK.d.ts +0 -138
- package/dist/types-CeNHa-BU.d.cts +0 -12
- package/dist/types-CeNHa-BU.d.ts +0 -12
- package/dist/types-CoqbRddt.d.cts +0 -80
- package/dist/types-kjA4Koki.d.cts +0 -407
- package/dist/typography-BsoBDDcG.d.cts +0 -1216
- package/dist/typography-BsoBDDcG.d.ts +0 -1216
- package/dist/ui-node-union-BNt_iPQO.d.cts +0 -272
- package/dist/ui-node-union-BdALN0FB.d.ts +0 -272
package/README.md
CHANGED
|
@@ -1,379 +1,28 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @tenerife.music/ui — DEPRECATED
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
> **This package is deprecated and no longer maintained.**
|
|
4
|
+
>
|
|
5
|
+
> All imports will throw a runtime error.
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
## Migration
|
|
6
8
|
|
|
7
|
-
|
|
8
|
-

|
|
9
|
-

|
|
10
|
-

|
|
11
|
-

|
|
12
|
-

|
|
13
|
-
|
|
14
|
-
Turn AI output into **safe, deterministic user interfaces**.
|
|
15
|
-
|
|
16
|
-
Engine UI is a deterministic execution layer that converts **AI-generated UI intent** into **validated React interfaces**.
|
|
17
|
-
|
|
18
|
-
AI can suggest UI.
|
|
19
|
-
Engine UI decides what is **safe and architecture-compliant to render**.
|
|
20
|
-
|
|
21
|
-
The canonical structural type for engine layout output is `UIIRNode` (UI-IR terminology).
|
|
22
|
-
|
|
23
|
-
---
|
|
24
|
-
|
|
25
|
-
## Engine UI execution pipeline
|
|
26
|
-
|
|
27
|
-
```mermaid
|
|
28
|
-
flowchart LR
|
|
29
|
-
A[AI / User Input]
|
|
30
|
-
B[Intent<br/>DSL / IntentContract / LayoutIntent]
|
|
31
|
-
C[Planner]
|
|
32
|
-
D[UI-IR<br/>layoutTree<br/>Canonical engine representation]
|
|
33
|
-
E[intentSchema<br/>Derived deterministic compile format]
|
|
34
|
-
F[Validation]
|
|
35
|
-
G[Compiler]
|
|
36
|
-
H[Renderer]
|
|
37
|
-
I[React JSX / Runtime]
|
|
38
|
-
J[Direct DSL / intentSchema compatibility path]
|
|
39
|
-
K[Synthetic UI-IR reconstruction]
|
|
40
|
-
|
|
41
|
-
A --> B --> C --> D --> E --> F --> G --> H --> I
|
|
42
|
-
J --> K --> F
|
|
43
|
-
|
|
44
|
-
classDef canonical fill:#dff6dd,stroke:#1f6f43,stroke-width:2px,color:#123524;
|
|
45
|
-
classDef derived fill:#fff4cc,stroke:#8a6700,stroke-width:1.5px,color:#4d3b00;
|
|
46
|
-
class D canonical;
|
|
47
|
-
class E derived;
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
`UI-IR (layoutTree)` is the canonical engine representation. `intentSchema` is a derived deterministic compile format, not a competing architectural layer. Direct `dsl` and `intentSchema` execution paths are compatibility paths that reconstruct synthetic UI-IR before compilation.
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
## Why Engine UI exists
|
|
55
|
-
|
|
56
|
-
AI can generate UI.
|
|
57
|
-
|
|
58
|
-
But raw AI output is unsafe.
|
|
59
|
-
|
|
60
|
-
It can:
|
|
61
|
-
|
|
62
|
-
- break layout rules
|
|
63
|
-
- violate component boundaries
|
|
64
|
-
- generate invalid props
|
|
65
|
-
- drift away from design tokens
|
|
66
|
-
- slowly destroy architectural consistency
|
|
67
|
-
|
|
68
|
-
Engine UI solves this by adding a deterministic execution layer between AI output and the final interface.
|
|
69
|
-
|
|
70
|
-
Instead of trusting arbitrary generated component trees, Engine UI validates structure, enforces architectural rules, and renders only safe UI.
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
## From AI output to safe UI
|
|
75
|
-
|
|
76
|
-
AI output should not go directly into production UI.
|
|
77
|
-
|
|
78
|
-
Engine UI takes structured intent and turns it into a validated component tree.
|
|
79
|
-
|
|
80
|
-
### AI Output
|
|
81
|
-
|
|
82
|
-
```json
|
|
83
|
-
{
|
|
84
|
-
"type": "grid",
|
|
85
|
-
"columns": { "md": 2, "lg": 3 },
|
|
86
|
-
"items": [
|
|
87
|
-
{ "component": "eventCard" },
|
|
88
|
-
{ "component": "eventCard" },
|
|
89
|
-
{ "component": "eventCard" }
|
|
90
|
-
]
|
|
91
|
-
}
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
### Engine UI Rendering
|
|
95
|
-
|
|
96
|
-
```tsx
|
|
97
|
-
<Grid columns={{ md: 2, lg: 3 }}>
|
|
98
|
-
<EventCard />
|
|
99
|
-
<EventCard />
|
|
100
|
-
<EventCard />
|
|
101
|
-
</Grid>
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
The important part is not that AI generated UI.
|
|
105
|
-
|
|
106
|
-
The important part is that the result is **safe, predictable, and architecture-compliant**.
|
|
107
|
-
|
|
108
|
-
---
|
|
109
|
-
|
|
110
|
-
## Quick Start
|
|
111
|
-
|
|
112
|
-
### Install
|
|
9
|
+
Use [`@engine-ui/core`](https://www.npmjs.com/package/@engine-ui/core) instead.
|
|
113
10
|
|
|
114
11
|
```bash
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
or
|
|
119
|
-
|
|
120
|
-
```bash
|
|
121
|
-
npm install @tenerife.music/ui
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
### Minimal Example
|
|
125
|
-
|
|
126
|
-
```tsx
|
|
127
|
-
import "@tenerife.music/ui/styles";
|
|
128
|
-
import { Button, Stack, Text } from "@tenerife.music/ui";
|
|
129
|
-
import { ThemeProvider } from "@tenerife.music/ui/theme";
|
|
130
|
-
|
|
131
|
-
export default function App() {
|
|
132
|
-
return (
|
|
133
|
-
<ThemeProvider defaultMode="night">
|
|
134
|
-
<Stack gap="md">
|
|
135
|
-
<Text>AI-native UI</Text>
|
|
136
|
-
<Button variant="primary">Run</Button>
|
|
137
|
-
</Stack>
|
|
138
|
-
</ThemeProvider>
|
|
139
|
-
);
|
|
140
|
-
}
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
---
|
|
144
|
-
|
|
145
|
-
## The core idea
|
|
146
|
-
|
|
147
|
-
Traditional UI systems assume humans write interfaces.
|
|
148
|
-
|
|
149
|
-
Engine UI assumes AI may generate them.
|
|
150
|
-
|
|
151
|
-
That changes the requirements completely.
|
|
152
|
-
|
|
153
|
-
You need:
|
|
154
|
-
|
|
155
|
-
- deterministic rendering
|
|
156
|
-
- architectural boundaries
|
|
157
|
-
- token-safe styling
|
|
158
|
-
- machine-readable validation
|
|
159
|
-
- constrained execution
|
|
160
|
-
|
|
161
|
-
Engine UI is built around those requirements.
|
|
162
|
-
|
|
163
|
-
---
|
|
164
|
-
|
|
165
|
-
## How it works
|
|
166
|
-
|
|
167
|
-
Engine UI runs a deterministic UI execution pipeline:
|
|
168
|
-
|
|
169
|
-
`AI / User Input → Intent → Planner → UI-IR (layoutTree) → intentSchema → Validation → Compiler → Renderer → Runtime`
|
|
170
|
-
|
|
171
|
-
AI generates intent.
|
|
172
|
-
Engine UI decides what is valid to render.
|
|
173
|
-
|
|
174
|
-
If the structure is invalid, the system fails with structured diagnostics instead of producing unsafe UI.
|
|
175
|
-
|
|
176
|
-
---
|
|
177
|
-
|
|
178
|
-
## What Engine UI guarantees
|
|
179
|
-
|
|
180
|
-
- deterministic UI output
|
|
181
|
-
- architecture-safe rendering
|
|
182
|
-
- token-driven visual constraints
|
|
183
|
-
- bounded public surface
|
|
184
|
-
- machine-readable validation failures
|
|
185
|
-
- safe integration with AI systems
|
|
186
|
-
|
|
187
|
-
This is not just a component library.
|
|
188
|
-
|
|
189
|
-
It is a runtime layer for AI-generated interfaces.
|
|
190
|
-
|
|
191
|
-
---
|
|
192
|
-
|
|
193
|
-
## Where Engine UI fits in the stack
|
|
194
|
-
|
|
195
|
-
```
|
|
196
|
-
AI Prompt
|
|
197
|
-
↓
|
|
198
|
-
Intent
|
|
199
|
-
↓
|
|
200
|
-
Engine UI
|
|
201
|
-
↓
|
|
202
|
-
React
|
|
203
|
-
↓
|
|
204
|
-
DOM
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
Engine UI sits between **AI generation** and **React rendering**.
|
|
208
|
-
|
|
209
|
-
---
|
|
210
|
-
|
|
211
|
-
## Why not just React?
|
|
212
|
-
|
|
213
|
-
The difference is not React vs components.
|
|
214
|
-
|
|
215
|
-
The difference is **unbounded generation vs controlled execution**.
|
|
216
|
-
|
|
217
|
-
| | Raw AI → React | AI → Engine UI → React |
|
|
218
|
-
| ------------------------- | -------------- | ---------------------- |
|
|
219
|
-
| Flexibility | High | Controlled |
|
|
220
|
-
| Safety | Low | High |
|
|
221
|
-
| Architecture drift | Likely | Constrained |
|
|
222
|
-
| Token enforcement | Optional | Built-in |
|
|
223
|
-
| Deterministic output | No | Yes |
|
|
224
|
-
| Machine-readable failures | No | Yes |
|
|
225
|
-
|
|
226
|
-
React lets you build anything.
|
|
227
|
-
|
|
228
|
-
Engine UI decides what AI is allowed to build safely.
|
|
229
|
-
|
|
230
|
-
---
|
|
231
|
-
|
|
232
|
-
## Deterministic architecture
|
|
233
|
-
|
|
234
|
-
Engine UI runs inside a closed execution model.
|
|
235
|
-
|
|
236
|
-
Key guarantees:
|
|
237
|
-
|
|
238
|
-
| Property | Guarantee |
|
|
239
|
-
| --------------------------- | ---------------------------------------------------------- |
|
|
240
|
-
| Closed props | No `className` / `style` escape hatches in public surfaces |
|
|
241
|
-
| Token-only styling | Visual values come from finite token vocabularies |
|
|
242
|
-
| Controlled DOM passthrough | Native attributes go through sanctioned gates |
|
|
243
|
-
| Deterministic SSR | Stable rendering behavior |
|
|
244
|
-
| Machine-readable violations | TypeScript, ESLint, and runtime diagnostics |
|
|
245
|
-
|
|
246
|
-
---
|
|
247
|
-
|
|
248
|
-
## Architecture / Overview
|
|
249
|
-
|
|
250
|
-
Engine UI is a deterministic AI-native UI execution layer built on top of the Tenerife UI architecture system.
|
|
251
|
-
|
|
252
|
-
The system converts AI-generated UI intent into validated runtime UI through a deterministic pipeline:
|
|
253
|
-
|
|
254
|
-
`AI Prompt -> Intent -> UI-IR -> Validation -> Compiler -> Renderer -> React Runtime`
|
|
255
|
-
|
|
256
|
-
Tenerife UI provides:
|
|
257
|
-
|
|
258
|
-
- the component architecture
|
|
259
|
-
- token system
|
|
260
|
-
- composition primitives
|
|
261
|
-
- governance and validation rules
|
|
262
|
-
|
|
263
|
-
Engine UI provides:
|
|
264
|
-
|
|
265
|
-
- AI intent interpretation
|
|
266
|
-
- UI-IR generation
|
|
267
|
-
- deterministic compilation pipeline
|
|
268
|
-
|
|
269
|
-
Engine UI is the AI execution layer.
|
|
270
|
-
|
|
271
|
-
Tenerife UI is the architecture system.
|
|
272
|
-
|
|
273
|
-
Engine UI does not replace the Tenerife UI architecture. It executes AI-generated intent within Tenerife UI's architectural constraints.
|
|
274
|
-
|
|
275
|
-
---
|
|
276
|
-
|
|
277
|
-
## Architecture layers
|
|
278
|
-
|
|
279
|
-
```
|
|
280
|
-
FOUNDATION
|
|
281
|
-
PRIMITIVES
|
|
282
|
-
COMPOSITION
|
|
283
|
-
PATTERNS
|
|
284
|
-
DOMAIN
|
|
12
|
+
npm uninstall @tenerife.music/ui
|
|
13
|
+
npm install @engine-ui/core
|
|
285
14
|
```
|
|
286
15
|
|
|
287
|
-
Rules:
|
|
288
|
-
|
|
289
|
-
- lower layers cannot import higher layers
|
|
290
|
-
- Foundation is immutable
|
|
291
|
-
- token domains stay isolated
|
|
292
|
-
- architecture boundaries are enforced
|
|
293
|
-
|
|
294
|
-
---
|
|
295
|
-
|
|
296
|
-
## Architecture Score Engine
|
|
297
|
-
|
|
298
|
-
Engine UI includes a built-in architecture scoring system.
|
|
299
|
-
|
|
300
|
-
It aggregates:
|
|
301
|
-
|
|
302
|
-
- ESLint architecture violations
|
|
303
|
-
- governance checks
|
|
304
|
-
- runtime diagnostics
|
|
305
|
-
|
|
306
|
-
Example result:
|
|
307
|
-
|
|
308
|
-
```
|
|
309
|
-
Architecture Score: 100 / 100
|
|
310
|
-
```
|
|
311
|
-
|
|
312
|
-
CI can block merges if architecture health drops.
|
|
313
|
-
|
|
314
|
-
This makes Engine UI feel less like a library and more like a structural integrity system for UI.
|
|
315
|
-
|
|
316
|
-
---
|
|
317
|
-
|
|
318
|
-
## Comparison
|
|
319
|
-
|
|
320
|
-
| Capability | Component Libraries | Engine UI |
|
|
321
|
-
| --------------------------- | ------------------- | --------- |
|
|
322
|
-
| Provide UI components | ✅ | ✅ |
|
|
323
|
-
| Enforce architecture rules | ❌ | ✅ |
|
|
324
|
-
| Deterministic UI execution | ❌ | ✅ |
|
|
325
|
-
| Safe AI UI generation | ❌ | ✅ |
|
|
326
|
-
| Machine-readable violations | ❌ | ✅ |
|
|
327
|
-
|
|
328
|
-
Component libraries provide components.
|
|
329
|
-
|
|
330
|
-
Engine UI provides **deterministic UI execution for AI-generated interfaces**.
|
|
331
|
-
|
|
332
|
-
---
|
|
333
|
-
|
|
334
|
-
## Use cases
|
|
335
|
-
|
|
336
|
-
Engine UI is designed for teams building:
|
|
337
|
-
|
|
338
|
-
- AI copilots
|
|
339
|
-
- agent dashboards
|
|
340
|
-
- AI-generated product interfaces
|
|
341
|
-
- dynamic application shells
|
|
342
|
-
- deterministic design systems
|
|
343
|
-
- safe UI runtimes for LLM products
|
|
344
|
-
|
|
345
|
-
---
|
|
346
|
-
|
|
347
|
-
## Vision
|
|
348
|
-
|
|
349
|
-
AI will generate more and more interface code.
|
|
350
|
-
|
|
351
|
-
But generated UI cannot be trusted by default.
|
|
352
|
-
|
|
353
|
-
There needs to be a **deterministic execution layer between AI output and the user interface**.
|
|
354
|
-
|
|
355
|
-
Engine UI is built to become that layer.
|
|
356
|
-
|
|
357
16
|
---
|
|
358
17
|
|
|
359
|
-
##
|
|
18
|
+
## 🎵 Tenerife Music
|
|
360
19
|
|
|
361
|
-
|
|
20
|
+
Looking for concert tickets and live music events on Tenerife?
|
|
362
21
|
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
- token authority
|
|
366
|
-
- layer boundaries
|
|
367
|
-
- closed execution rules
|
|
368
|
-
- sanctioned public surfaces
|
|
22
|
+
Visit **[tenerife.music](https://tenerife.music)** — your guide to the island's best live music scene.
|
|
369
23
|
|
|
370
24
|
---
|
|
371
25
|
|
|
372
26
|
## License
|
|
373
27
|
|
|
374
28
|
MIT
|
|
375
|
-
|
|
376
|
-
---
|
|
377
|
-
|
|
378
|
-
**Engine UI is not a component library.
|
|
379
|
-
It is an execution engine for AI-generated interfaces.**
|
package/package.json
CHANGED
package/dist/Link-B8gB8LrX.d.cts
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
import { S as SafeNativeProps } from './safe-native-DQVUNMW7.cjs';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Link variant values (internal - used for type derivation only)
|
|
7
|
-
*
|
|
8
|
-
* @internal
|
|
9
|
-
*/
|
|
10
|
-
declare const _LINK_VARIANTS: readonly ["primary", "secondary", "accent", "outline", "ghost", "text", "link", "wrapper", "destructive"];
|
|
11
|
-
/**
|
|
12
|
-
* Link variant type
|
|
13
|
-
*
|
|
14
|
-
* @public
|
|
15
|
-
*/
|
|
16
|
-
type LinkVariant = (typeof _LINK_VARIANTS)[number];
|
|
17
|
-
/**
|
|
18
|
-
* Link size values (internal - used for type derivation only)
|
|
19
|
-
*
|
|
20
|
-
* @internal
|
|
21
|
-
*/
|
|
22
|
-
declare const _LINK_SIZES: readonly ["sm", "md", "lg"];
|
|
23
|
-
/**
|
|
24
|
-
* Link size type
|
|
25
|
-
*
|
|
26
|
-
* @public
|
|
27
|
-
*/
|
|
28
|
-
type LinkSize = (typeof _LINK_SIZES)[number];
|
|
29
|
-
declare const linkVariants: (props?: ({
|
|
30
|
-
variant?: "primary" | "secondary" | "accent" | "destructive" | "outline" | "link" | "text" | "ghost" | "wrapper" | null | undefined;
|
|
31
|
-
size?: "sm" | "md" | "lg" | null | undefined;
|
|
32
|
-
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
33
|
-
interface LinkProps {
|
|
34
|
-
/**
|
|
35
|
-
* Link variant style
|
|
36
|
-
* @default "text"
|
|
37
|
-
*/
|
|
38
|
-
variant?: LinkVariant;
|
|
39
|
-
/**
|
|
40
|
-
* Link size
|
|
41
|
-
* @default "md"
|
|
42
|
-
*/
|
|
43
|
-
size?: LinkSize;
|
|
44
|
-
/**
|
|
45
|
-
* Icon to display on the left side
|
|
46
|
-
*/
|
|
47
|
-
leftIcon?: React.ReactNode;
|
|
48
|
-
/**
|
|
49
|
-
* Icon to display on the right side
|
|
50
|
-
*/
|
|
51
|
-
rightIcon?: React.ReactNode;
|
|
52
|
-
/**
|
|
53
|
-
* Whether the link is disabled
|
|
54
|
-
* When disabled, the link will not be navigable and will be removed from the tab order
|
|
55
|
-
* @default false
|
|
56
|
-
*/
|
|
57
|
-
disabled?: boolean;
|
|
58
|
-
href?: string;
|
|
59
|
-
target?: "_self" | "_blank" | "_parent" | "_top";
|
|
60
|
-
rel?: string;
|
|
61
|
-
onClick?: React.MouseEventHandler<HTMLAnchorElement>;
|
|
62
|
-
onFocus?: React.FocusEventHandler<HTMLAnchorElement>;
|
|
63
|
-
onBlur?: React.FocusEventHandler<HTMLAnchorElement>;
|
|
64
|
-
onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement>;
|
|
65
|
-
onMouseLeave?: React.MouseEventHandler<HTMLAnchorElement>;
|
|
66
|
-
id?: string;
|
|
67
|
-
title?: string;
|
|
68
|
-
tabIndex?: number;
|
|
69
|
-
role?: string;
|
|
70
|
-
download?: string;
|
|
71
|
-
hrefLang?: string;
|
|
72
|
-
type?: string;
|
|
73
|
-
children?: React.ReactNode;
|
|
74
|
-
native?: SafeNativeProps;
|
|
75
|
-
}
|
|
76
|
-
declare const Link: React.ForwardRefExoticComponent<LinkProps & React.RefAttributes<HTMLAnchorElement>>;
|
|
77
|
-
|
|
78
|
-
export { type LinkProps as L, type LinkVariant as a, Link as b, type LinkSize as c, linkVariants as l };
|
package/dist/Link-Dg9GiZzj.d.ts
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
import { S as SafeNativeProps } from './safe-native-DQVUNMW7.js';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Link variant values (internal - used for type derivation only)
|
|
7
|
-
*
|
|
8
|
-
* @internal
|
|
9
|
-
*/
|
|
10
|
-
declare const _LINK_VARIANTS: readonly ["primary", "secondary", "accent", "outline", "ghost", "text", "link", "wrapper", "destructive"];
|
|
11
|
-
/**
|
|
12
|
-
* Link variant type
|
|
13
|
-
*
|
|
14
|
-
* @public
|
|
15
|
-
*/
|
|
16
|
-
type LinkVariant = (typeof _LINK_VARIANTS)[number];
|
|
17
|
-
/**
|
|
18
|
-
* Link size values (internal - used for type derivation only)
|
|
19
|
-
*
|
|
20
|
-
* @internal
|
|
21
|
-
*/
|
|
22
|
-
declare const _LINK_SIZES: readonly ["sm", "md", "lg"];
|
|
23
|
-
/**
|
|
24
|
-
* Link size type
|
|
25
|
-
*
|
|
26
|
-
* @public
|
|
27
|
-
*/
|
|
28
|
-
type LinkSize = (typeof _LINK_SIZES)[number];
|
|
29
|
-
declare const linkVariants: (props?: ({
|
|
30
|
-
variant?: "primary" | "secondary" | "accent" | "destructive" | "outline" | "link" | "text" | "ghost" | "wrapper" | null | undefined;
|
|
31
|
-
size?: "sm" | "md" | "lg" | null | undefined;
|
|
32
|
-
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
33
|
-
interface LinkProps {
|
|
34
|
-
/**
|
|
35
|
-
* Link variant style
|
|
36
|
-
* @default "text"
|
|
37
|
-
*/
|
|
38
|
-
variant?: LinkVariant;
|
|
39
|
-
/**
|
|
40
|
-
* Link size
|
|
41
|
-
* @default "md"
|
|
42
|
-
*/
|
|
43
|
-
size?: LinkSize;
|
|
44
|
-
/**
|
|
45
|
-
* Icon to display on the left side
|
|
46
|
-
*/
|
|
47
|
-
leftIcon?: React.ReactNode;
|
|
48
|
-
/**
|
|
49
|
-
* Icon to display on the right side
|
|
50
|
-
*/
|
|
51
|
-
rightIcon?: React.ReactNode;
|
|
52
|
-
/**
|
|
53
|
-
* Whether the link is disabled
|
|
54
|
-
* When disabled, the link will not be navigable and will be removed from the tab order
|
|
55
|
-
* @default false
|
|
56
|
-
*/
|
|
57
|
-
disabled?: boolean;
|
|
58
|
-
href?: string;
|
|
59
|
-
target?: "_self" | "_blank" | "_parent" | "_top";
|
|
60
|
-
rel?: string;
|
|
61
|
-
onClick?: React.MouseEventHandler<HTMLAnchorElement>;
|
|
62
|
-
onFocus?: React.FocusEventHandler<HTMLAnchorElement>;
|
|
63
|
-
onBlur?: React.FocusEventHandler<HTMLAnchorElement>;
|
|
64
|
-
onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement>;
|
|
65
|
-
onMouseLeave?: React.MouseEventHandler<HTMLAnchorElement>;
|
|
66
|
-
id?: string;
|
|
67
|
-
title?: string;
|
|
68
|
-
tabIndex?: number;
|
|
69
|
-
role?: string;
|
|
70
|
-
download?: string;
|
|
71
|
-
hrefLang?: string;
|
|
72
|
-
type?: string;
|
|
73
|
-
children?: React.ReactNode;
|
|
74
|
-
native?: SafeNativeProps;
|
|
75
|
-
}
|
|
76
|
-
declare const Link: React.ForwardRefExoticComponent<LinkProps & React.RefAttributes<HTMLAnchorElement>>;
|
|
77
|
-
|
|
78
|
-
export { type LinkProps as L, type LinkVariant as a, Link as b, type LinkSize as c, linkVariants as l };
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import { a as UICapabilityDiscoveryResult, c as IntentDslAstDocument, C as CompileDslToIntentResult, I as IntentDslErrorCode } from '../types-CoqbRddt.cjs';
|
|
2
|
-
export { b as IntentDslError, U as UICapabilityDiscoveryEntry, d as UICapabilityPropMetadata, e as UIDslKeywordCapability } from '../types-CoqbRddt.cjs';
|
|
3
|
-
import { a as IntentDslKeyword } from '../ui-node-union-BNt_iPQO.cjs';
|
|
4
|
-
export { D as DETERMINISTIC_INTENT_KIND_ALLOWLIST, r as DETERMINISTIC_INTENT_ROOT_KINDS, s as DETERMINISTIC_LAYOUT_SURFACE_ALLOWLIST, t as DETERMINISTIC_TYPED_DSL_ROOT_KINDS, u as INTENT_DSL_ALLOWED_CHILD_KINDS_BY_KIND, v as INTENT_DSL_ALLOWED_PROP_KEYS_BY_KIND, o as INTENT_DSL_GRAMMAR, p as INTENT_DSL_KEYWORDS, q as IntentDslGrammarEntry, I as IntentDslValueType, n as getDslWritablePropNames } from '../ui-node-union-BNt_iPQO.cjs';
|
|
5
|
-
import { b as UIIntentCategory, U as UIIntentSchema, c as UIIntentValidationIssue } from '../types-BEG5B5HA.cjs';
|
|
6
|
-
import '../index-4rLh47Jk.cjs';
|
|
7
|
-
import '../typography-BsoBDDcG.cjs';
|
|
8
|
-
import '../safe-native-DQVUNMW7.cjs';
|
|
9
|
-
|
|
10
|
-
declare function getUiCapabilities(): UICapabilityDiscoveryResult;
|
|
11
|
-
|
|
12
|
-
interface CapabilityIntrospectionEntry {
|
|
13
|
-
readonly kind: string;
|
|
14
|
-
readonly role: "layout_primitive" | "component_primitive";
|
|
15
|
-
readonly category: UIIntentCategory;
|
|
16
|
-
readonly allowedParentCategories: readonly UIIntentCategory[];
|
|
17
|
-
readonly allowedParentKinds: readonly string[];
|
|
18
|
-
readonly allowedChildKinds: readonly string[];
|
|
19
|
-
readonly supportedProps: readonly string[];
|
|
20
|
-
readonly supportedStates: readonly string[];
|
|
21
|
-
readonly supportedActions: readonly string[];
|
|
22
|
-
/** Convenience flag: true when allowedChildKinds is empty. */
|
|
23
|
-
readonly isLeaf: boolean;
|
|
24
|
-
readonly canonicalRef: string;
|
|
25
|
-
}
|
|
26
|
-
interface CapabilityIntrospectionResult {
|
|
27
|
-
readonly surfaces: readonly string[];
|
|
28
|
-
readonly entries: Readonly<Record<string, CapabilityIntrospectionEntry>>;
|
|
29
|
-
readonly forbiddenPropKeys: readonly string[];
|
|
30
|
-
readonly allowedChildCategoriesByCategory: Readonly<Record<UIIntentCategory, readonly UIIntentCategory[]>>;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
declare function getCapabilities(): CapabilityIntrospectionResult;
|
|
34
|
-
declare function getCapabilityKinds(): readonly string[];
|
|
35
|
-
declare function getCapabilitiesByRole(role: "layout_primitive" | "component_primitive"): readonly CapabilityIntrospectionEntry[];
|
|
36
|
-
/**
|
|
37
|
-
* Returns the introspection entry for a kind, or `undefined` if unknown.
|
|
38
|
-
* Unlike the internal `getCapabilityEntry`, this never throws.
|
|
39
|
-
*/
|
|
40
|
-
declare function findCapabilityEntry(kind: string): CapabilityIntrospectionEntry | undefined;
|
|
41
|
-
declare function getAllowedChildKinds(kind: string): readonly string[];
|
|
42
|
-
declare function getAllowedParentKinds(kind: string): readonly string[];
|
|
43
|
-
declare function getLeafCapabilities(): readonly CapabilityIntrospectionEntry[];
|
|
44
|
-
declare function getForbiddenPropKeys(): readonly string[];
|
|
45
|
-
|
|
46
|
-
type IntentDslAutocompleteEntry = {
|
|
47
|
-
keyword: IntentDslKeyword;
|
|
48
|
-
label: string;
|
|
49
|
-
snippet: string;
|
|
50
|
-
supportedProps: readonly string[];
|
|
51
|
-
};
|
|
52
|
-
declare function buildIntentDslAutocompleteSuggestions(): readonly IntentDslAutocompleteEntry[];
|
|
53
|
-
|
|
54
|
-
declare function compileDslToIntent(input: IntentDslAstDocument | string): CompileDslToIntentResult;
|
|
55
|
-
|
|
56
|
-
type AgentGenerateUISourceKind = "dsl" | "intent_schema";
|
|
57
|
-
type AgentGenerateUIOptions = {
|
|
58
|
-
artifactsRoot?: string;
|
|
59
|
-
exampleName?: string;
|
|
60
|
-
artifactsMode?: "persistent" | "ephemeral";
|
|
61
|
-
};
|
|
62
|
-
type AgentGenerateUIRequest = {
|
|
63
|
-
dsl: string;
|
|
64
|
-
intentSchema?: never;
|
|
65
|
-
options?: AgentGenerateUIOptions;
|
|
66
|
-
} | {
|
|
67
|
-
intentSchema: UIIntentSchema;
|
|
68
|
-
dsl?: never;
|
|
69
|
-
options?: AgentGenerateUIOptions;
|
|
70
|
-
};
|
|
71
|
-
type AgentGenerateUIIssue = {
|
|
72
|
-
code: string;
|
|
73
|
-
message: string;
|
|
74
|
-
path: string;
|
|
75
|
-
canonicalRef?: UIIntentValidationIssue["canonicalRef"];
|
|
76
|
-
category?: UIIntentValidationIssue["category"];
|
|
77
|
-
severity?: UIIntentValidationIssue["severity"];
|
|
78
|
-
};
|
|
79
|
-
type AgentGenerateUIDslError = {
|
|
80
|
-
code: IntentDslErrorCode;
|
|
81
|
-
line?: number;
|
|
82
|
-
column?: number;
|
|
83
|
-
path?: string;
|
|
84
|
-
};
|
|
85
|
-
type AgentGenerateUIValidationDiagnostics = {
|
|
86
|
-
valid: boolean;
|
|
87
|
-
errors: AgentGenerateUIIssue[];
|
|
88
|
-
warnings: AgentGenerateUIIssue[];
|
|
89
|
-
dslError?: AgentGenerateUIDslError;
|
|
90
|
-
};
|
|
91
|
-
type AgentGenerateUIScoreDiagnostics = {
|
|
92
|
-
gate: "pass" | "fail";
|
|
93
|
-
overallScore: number;
|
|
94
|
-
gateReasons: string[];
|
|
95
|
-
lintErrorCount: number;
|
|
96
|
-
lintWarningCount: number;
|
|
97
|
-
architectureRuleViolations: number;
|
|
98
|
-
};
|
|
99
|
-
type AgentGenerateUIDiagnostics = {
|
|
100
|
-
sourceKind: AgentGenerateUISourceKind;
|
|
101
|
-
validation: AgentGenerateUIValidationDiagnostics | null;
|
|
102
|
-
score?: AgentGenerateUIScoreDiagnostics;
|
|
103
|
-
warnings: AgentGenerateUIIssue[];
|
|
104
|
-
};
|
|
105
|
-
type AgentGenerateUIErrorCode = "AGENT_INPUT_CONTRACT_FAILED" | "AGENT_VALIDATION_FAILED" | "AGENT_COMPILER_FAILED" | "AGENT_SCORING_FAILED" | "AGENT_ARTIFACT_GATE_FAILED";
|
|
106
|
-
type AgentGenerateUIError = {
|
|
107
|
-
code: AgentGenerateUIErrorCode;
|
|
108
|
-
message: string;
|
|
109
|
-
details?: {
|
|
110
|
-
engineCode?: string;
|
|
111
|
-
issues?: AgentGenerateUIIssue[];
|
|
112
|
-
warnings?: AgentGenerateUIIssue[];
|
|
113
|
-
dslError?: AgentGenerateUIDslError;
|
|
114
|
-
gateReasons?: string[];
|
|
115
|
-
cause?: unknown;
|
|
116
|
-
};
|
|
117
|
-
};
|
|
118
|
-
type AgentGenerateUISuccessResponse = {
|
|
119
|
-
ok: true;
|
|
120
|
-
jsx: string;
|
|
121
|
-
hash: string;
|
|
122
|
-
diagnostics: AgentGenerateUIDiagnostics;
|
|
123
|
-
};
|
|
124
|
-
type AgentGenerateUIFailureResponse = {
|
|
125
|
-
ok: false;
|
|
126
|
-
error: AgentGenerateUIError;
|
|
127
|
-
diagnostics: AgentGenerateUIDiagnostics;
|
|
128
|
-
};
|
|
129
|
-
type AgentGenerateUIResponse = AgentGenerateUISuccessResponse | AgentGenerateUIFailureResponse;
|
|
130
|
-
|
|
131
|
-
declare function agentGenerateUI(input: AgentGenerateUIRequest): AgentGenerateUIResponse;
|
|
132
|
-
|
|
133
|
-
export { type AgentGenerateUIDiagnostics, type AgentGenerateUIDslError, type AgentGenerateUIError, type AgentGenerateUIErrorCode, type AgentGenerateUIFailureResponse, type AgentGenerateUIIssue, type AgentGenerateUIOptions, type AgentGenerateUIRequest, type AgentGenerateUIResponse, type AgentGenerateUIScoreDiagnostics, type AgentGenerateUISourceKind, type AgentGenerateUISuccessResponse, type AgentGenerateUIValidationDiagnostics, type CapabilityIntrospectionEntry, type CapabilityIntrospectionResult, type IntentDslAutocompleteEntry, IntentDslErrorCode, IntentDslKeyword, UICapabilityDiscoveryResult, agentGenerateUI, buildIntentDslAutocompleteSuggestions, compileDslToIntent, findCapabilityEntry, getAllowedChildKinds, getAllowedParentKinds, getCapabilities, getCapabilitiesByRole, getCapabilityKinds, getForbiddenPropKeys, getLeafCapabilities, getUiCapabilities };
|