@defai.digital/ax-schemas 1.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 +388 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/public/agent/chat-types.d.ts +164 -0
- package/dist/public/agent/chat-types.d.ts.map +1 -0
- package/dist/public/agent/chat-types.js +10 -0
- package/dist/public/agent/chat-types.js.map +1 -0
- package/dist/public/agent/index.d.ts +9 -0
- package/dist/public/agent/index.d.ts.map +1 -0
- package/dist/public/agent/index.js +9 -0
- package/dist/public/agent/index.js.map +1 -0
- package/dist/public/core/brand-types.d.ts +308 -0
- package/dist/public/core/brand-types.d.ts.map +1 -0
- package/dist/public/core/brand-types.js +243 -0
- package/dist/public/core/brand-types.js.map +1 -0
- package/dist/public/core/enums.d.ts +227 -0
- package/dist/public/core/enums.d.ts.map +1 -0
- package/dist/public/core/enums.js +222 -0
- package/dist/public/core/enums.js.map +1 -0
- package/dist/public/core/id-types.d.ts +286 -0
- package/dist/public/core/id-types.d.ts.map +1 -0
- package/dist/public/core/id-types.js +136 -0
- package/dist/public/core/id-types.js.map +1 -0
- package/dist/public/design/alias-types.d.ts +346 -0
- package/dist/public/design/alias-types.d.ts.map +1 -0
- package/dist/public/design/alias-types.js +171 -0
- package/dist/public/design/alias-types.js.map +1 -0
- package/dist/public/design/audit-types.d.ts +545 -0
- package/dist/public/design/audit-types.d.ts.map +1 -0
- package/dist/public/design/audit-types.js +307 -0
- package/dist/public/design/audit-types.js.map +1 -0
- package/dist/public/design/figma-types.d.ts +1306 -0
- package/dist/public/design/figma-types.d.ts.map +1 -0
- package/dist/public/design/figma-types.js +428 -0
- package/dist/public/design/figma-types.js.map +1 -0
- package/dist/public/design/index.d.ts +13 -0
- package/dist/public/design/index.d.ts.map +1 -0
- package/dist/public/design/index.js +82 -0
- package/dist/public/design/index.js.map +1 -0
- package/dist/public/design/token-types.d.ts +1245 -0
- package/dist/public/design/token-types.d.ts.map +1 -0
- package/dist/public/design/token-types.js +282 -0
- package/dist/public/design/token-types.js.map +1 -0
- package/dist/src/index.d.ts +16 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +19 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/public/agent/chat-types.d.ts +164 -0
- package/dist/src/public/agent/chat-types.d.ts.map +1 -0
- package/dist/src/public/agent/chat-types.js +10 -0
- package/dist/src/public/agent/chat-types.js.map +1 -0
- package/dist/src/public/agent/index.d.ts +9 -0
- package/dist/src/public/agent/index.d.ts.map +1 -0
- package/dist/src/public/agent/index.js +9 -0
- package/dist/src/public/agent/index.js.map +1 -0
- package/dist/src/public/core/brand-types.d.ts +308 -0
- package/dist/src/public/core/brand-types.d.ts.map +1 -0
- package/dist/src/public/core/brand-types.js +243 -0
- package/dist/src/public/core/brand-types.js.map +1 -0
- package/dist/src/public/core/enums.d.ts +227 -0
- package/dist/src/public/core/enums.d.ts.map +1 -0
- package/dist/src/public/core/enums.js +222 -0
- package/dist/src/public/core/enums.js.map +1 -0
- package/dist/src/public/core/id-types.d.ts +286 -0
- package/dist/src/public/core/id-types.d.ts.map +1 -0
- package/dist/src/public/core/id-types.js +136 -0
- package/dist/src/public/core/id-types.js.map +1 -0
- package/dist/src/public/design/alias-types.d.ts +346 -0
- package/dist/src/public/design/alias-types.d.ts.map +1 -0
- package/dist/src/public/design/alias-types.js +171 -0
- package/dist/src/public/design/alias-types.js.map +1 -0
- package/dist/src/public/design/audit-types.d.ts +545 -0
- package/dist/src/public/design/audit-types.d.ts.map +1 -0
- package/dist/src/public/design/audit-types.js +307 -0
- package/dist/src/public/design/audit-types.js.map +1 -0
- package/dist/src/public/design/figma-types.d.ts +1306 -0
- package/dist/src/public/design/figma-types.d.ts.map +1 -0
- package/dist/src/public/design/figma-types.js +428 -0
- package/dist/src/public/design/figma-types.js.map +1 -0
- package/dist/src/public/design/index.d.ts +13 -0
- package/dist/src/public/design/index.d.ts.map +1 -0
- package/dist/src/public/design/index.js +82 -0
- package/dist/src/public/design/index.js.map +1 -0
- package/dist/src/public/design/token-types.d.ts +1245 -0
- package/dist/src/public/design/token-types.d.ts.map +1 -0
- package/dist/src/public/design/token-types.js +282 -0
- package/dist/src/public/design/token-types.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +66 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-types.d.ts","sourceRoot":"","sources":["../../../src/public/design/token-types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB;;GAEG;AACH,eAAO,MAAM,eAAe,8QAqB1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;EAK1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;EAG3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;EAG/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;EAGhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;EAMhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;EAG9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;EAMhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;EAGnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EAO5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAG5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;EAG7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAG9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAI5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAG5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;EAG5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;EAG7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAc5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAM5D;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;CACzC;AAED,eAAO,MAAM,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAElD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBC,CAAC;AAC9B,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAMxD;;GAEG;AACH,eAAO,MAAM,uBAAuB,gDAA8C,CAAC;AACnF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;EAQvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAMlF;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgB9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAMlE;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;EAO/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAatC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
|
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Design Token Schemas
|
|
3
|
+
*
|
|
4
|
+
* Zod schemas for design tokens extracted from Figma.
|
|
5
|
+
* Supports JSON and Tailwind output formats.
|
|
6
|
+
*
|
|
7
|
+
* @module design/token-types
|
|
8
|
+
*/
|
|
9
|
+
import { z } from 'zod';
|
|
10
|
+
// =============================================================================
|
|
11
|
+
// Token Value Types
|
|
12
|
+
// =============================================================================
|
|
13
|
+
/**
|
|
14
|
+
* Token type enumeration
|
|
15
|
+
*/
|
|
16
|
+
export const TokenTypeSchema = z.enum([
|
|
17
|
+
'color',
|
|
18
|
+
'dimension',
|
|
19
|
+
'fontFamily',
|
|
20
|
+
'fontWeight',
|
|
21
|
+
'fontSize',
|
|
22
|
+
'lineHeight',
|
|
23
|
+
'letterSpacing',
|
|
24
|
+
'paragraphSpacing',
|
|
25
|
+
'textCase',
|
|
26
|
+
'textDecoration',
|
|
27
|
+
'duration',
|
|
28
|
+
'cubicBezier',
|
|
29
|
+
'shadow',
|
|
30
|
+
'gradient',
|
|
31
|
+
'border',
|
|
32
|
+
'opacity',
|
|
33
|
+
'number',
|
|
34
|
+
'string',
|
|
35
|
+
'boolean',
|
|
36
|
+
'composite',
|
|
37
|
+
]);
|
|
38
|
+
/**
|
|
39
|
+
* Base token schema
|
|
40
|
+
*/
|
|
41
|
+
export const BaseTokenSchema = z.object({
|
|
42
|
+
value: z.unknown(),
|
|
43
|
+
type: TokenTypeSchema,
|
|
44
|
+
description: z.string().optional(),
|
|
45
|
+
extensions: z.record(z.unknown()).optional(),
|
|
46
|
+
});
|
|
47
|
+
/**
|
|
48
|
+
* Color token value (hex format)
|
|
49
|
+
*/
|
|
50
|
+
export const ColorTokenSchema = BaseTokenSchema.extend({
|
|
51
|
+
type: z.literal('color'),
|
|
52
|
+
value: z.string().regex(/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/, 'Invalid hex color'),
|
|
53
|
+
});
|
|
54
|
+
/**
|
|
55
|
+
* Dimension token value (px, rem, em, %, etc.)
|
|
56
|
+
*/
|
|
57
|
+
export const DimensionTokenSchema = BaseTokenSchema.extend({
|
|
58
|
+
type: z.literal('dimension'),
|
|
59
|
+
value: z.string().regex(/^-?\d+(\.\d+)?(px|rem|em|%|vw|vh|vmin|vmax)$/, 'Invalid dimension format'),
|
|
60
|
+
});
|
|
61
|
+
/**
|
|
62
|
+
* Font family token
|
|
63
|
+
*/
|
|
64
|
+
export const FontFamilyTokenSchema = BaseTokenSchema.extend({
|
|
65
|
+
type: z.literal('fontFamily'),
|
|
66
|
+
value: z.union([z.string(), z.array(z.string())]),
|
|
67
|
+
});
|
|
68
|
+
/**
|
|
69
|
+
* Font weight token
|
|
70
|
+
*/
|
|
71
|
+
export const FontWeightTokenSchema = BaseTokenSchema.extend({
|
|
72
|
+
type: z.literal('fontWeight'),
|
|
73
|
+
value: z.union([
|
|
74
|
+
z.number().int().min(100).max(900),
|
|
75
|
+
z.enum(['thin', 'hairline', 'extralight', 'ultralight', 'light', 'normal', 'regular', 'medium', 'semibold', 'demibold', 'bold', 'extrabold', 'ultrabold', 'black', 'heavy']),
|
|
76
|
+
]),
|
|
77
|
+
});
|
|
78
|
+
/**
|
|
79
|
+
* Font size token
|
|
80
|
+
*/
|
|
81
|
+
export const FontSizeTokenSchema = BaseTokenSchema.extend({
|
|
82
|
+
type: z.literal('fontSize'),
|
|
83
|
+
value: z.string().regex(/^-?\d+(\.\d+)?(px|rem|em)$/, 'Invalid font size format'),
|
|
84
|
+
});
|
|
85
|
+
/**
|
|
86
|
+
* Line height token
|
|
87
|
+
*/
|
|
88
|
+
export const LineHeightTokenSchema = BaseTokenSchema.extend({
|
|
89
|
+
type: z.literal('lineHeight'),
|
|
90
|
+
value: z.union([
|
|
91
|
+
z.number(),
|
|
92
|
+
z.string().regex(/^-?\d+(\.\d+)?(px|rem|em|%)?$/, 'Invalid line height format'),
|
|
93
|
+
]),
|
|
94
|
+
});
|
|
95
|
+
/**
|
|
96
|
+
* Letter spacing token
|
|
97
|
+
*/
|
|
98
|
+
export const LetterSpacingTokenSchema = BaseTokenSchema.extend({
|
|
99
|
+
type: z.literal('letterSpacing'),
|
|
100
|
+
value: z.string().regex(/^-?\d+(\.\d+)?(px|rem|em|%)$/, 'Invalid letter spacing format'),
|
|
101
|
+
});
|
|
102
|
+
/**
|
|
103
|
+
* Shadow token value
|
|
104
|
+
*/
|
|
105
|
+
export const ShadowValueSchema = z.object({
|
|
106
|
+
color: z.string(),
|
|
107
|
+
offsetX: z.string(),
|
|
108
|
+
offsetY: z.string(),
|
|
109
|
+
blur: z.string(),
|
|
110
|
+
spread: z.string().optional(),
|
|
111
|
+
inset: z.boolean().optional(),
|
|
112
|
+
});
|
|
113
|
+
export const ShadowTokenSchema = BaseTokenSchema.extend({
|
|
114
|
+
type: z.literal('shadow'),
|
|
115
|
+
value: z.union([ShadowValueSchema, z.array(ShadowValueSchema)]),
|
|
116
|
+
});
|
|
117
|
+
/**
|
|
118
|
+
* Gradient stop
|
|
119
|
+
*/
|
|
120
|
+
export const GradientStopSchema = z.object({
|
|
121
|
+
color: z.string(),
|
|
122
|
+
position: z.number().min(0).max(1),
|
|
123
|
+
});
|
|
124
|
+
/**
|
|
125
|
+
* Gradient token value
|
|
126
|
+
*/
|
|
127
|
+
export const GradientValueSchema = z.object({
|
|
128
|
+
type: z.enum(['linear', 'radial', 'angular', 'diamond']),
|
|
129
|
+
angle: z.number().optional(),
|
|
130
|
+
stops: z.array(GradientStopSchema),
|
|
131
|
+
});
|
|
132
|
+
export const GradientTokenSchema = BaseTokenSchema.extend({
|
|
133
|
+
type: z.literal('gradient'),
|
|
134
|
+
value: GradientValueSchema,
|
|
135
|
+
});
|
|
136
|
+
/**
|
|
137
|
+
* Border token value
|
|
138
|
+
*/
|
|
139
|
+
export const BorderValueSchema = z.object({
|
|
140
|
+
color: z.string(),
|
|
141
|
+
width: z.string(),
|
|
142
|
+
style: z.enum(['solid', 'dashed', 'dotted', 'double', 'groove', 'ridge', 'inset', 'outset', 'none']).optional(),
|
|
143
|
+
});
|
|
144
|
+
export const BorderTokenSchema = BaseTokenSchema.extend({
|
|
145
|
+
type: z.literal('border'),
|
|
146
|
+
value: BorderValueSchema,
|
|
147
|
+
});
|
|
148
|
+
/**
|
|
149
|
+
* Number token
|
|
150
|
+
*/
|
|
151
|
+
export const NumberTokenSchema = BaseTokenSchema.extend({
|
|
152
|
+
type: z.literal('number'),
|
|
153
|
+
value: z.number(),
|
|
154
|
+
});
|
|
155
|
+
/**
|
|
156
|
+
* Opacity token
|
|
157
|
+
*/
|
|
158
|
+
export const OpacityTokenSchema = BaseTokenSchema.extend({
|
|
159
|
+
type: z.literal('opacity'),
|
|
160
|
+
value: z.number().min(0).max(1),
|
|
161
|
+
});
|
|
162
|
+
/**
|
|
163
|
+
* Union of all token types
|
|
164
|
+
*/
|
|
165
|
+
export const DesignTokenSchema = z.union([
|
|
166
|
+
ColorTokenSchema,
|
|
167
|
+
DimensionTokenSchema,
|
|
168
|
+
FontFamilyTokenSchema,
|
|
169
|
+
FontWeightTokenSchema,
|
|
170
|
+
FontSizeTokenSchema,
|
|
171
|
+
LineHeightTokenSchema,
|
|
172
|
+
LetterSpacingTokenSchema,
|
|
173
|
+
ShadowTokenSchema,
|
|
174
|
+
GradientTokenSchema,
|
|
175
|
+
BorderTokenSchema,
|
|
176
|
+
NumberTokenSchema,
|
|
177
|
+
OpacityTokenSchema,
|
|
178
|
+
BaseTokenSchema, // Fallback for other types
|
|
179
|
+
]);
|
|
180
|
+
export const TokenGroupSchema = z.lazy(() => z.record(z.union([DesignTokenSchema, TokenGroupSchema])));
|
|
181
|
+
/**
|
|
182
|
+
* Root token file structure
|
|
183
|
+
*/
|
|
184
|
+
export const TokenFileSchema = z.object({
|
|
185
|
+
$schema: z.string().optional(),
|
|
186
|
+
$description: z.string().optional(),
|
|
187
|
+
$version: z.string().optional(),
|
|
188
|
+
// Top-level token categories
|
|
189
|
+
colors: TokenGroupSchema.optional(),
|
|
190
|
+
spacing: TokenGroupSchema.optional(),
|
|
191
|
+
sizing: TokenGroupSchema.optional(),
|
|
192
|
+
typography: TokenGroupSchema.optional(),
|
|
193
|
+
shadows: TokenGroupSchema.optional(),
|
|
194
|
+
borders: TokenGroupSchema.optional(),
|
|
195
|
+
radii: TokenGroupSchema.optional(),
|
|
196
|
+
opacity: TokenGroupSchema.optional(),
|
|
197
|
+
zIndex: TokenGroupSchema.optional(),
|
|
198
|
+
transitions: TokenGroupSchema.optional(),
|
|
199
|
+
// Allow additional top-level categories
|
|
200
|
+
}).catchall(TokenGroupSchema);
|
|
201
|
+
// =============================================================================
|
|
202
|
+
// Token Output Formats
|
|
203
|
+
// =============================================================================
|
|
204
|
+
/**
|
|
205
|
+
* Supported output formats
|
|
206
|
+
*/
|
|
207
|
+
export const TokenOutputFormatSchema = z.enum(['json', 'tailwind', 'css', 'scss']);
|
|
208
|
+
/**
|
|
209
|
+
* Token extraction options
|
|
210
|
+
*/
|
|
211
|
+
export const TokenExtractionOptionsSchema = z.object({
|
|
212
|
+
format: TokenOutputFormatSchema.default('json'),
|
|
213
|
+
includeDescription: z.boolean().default(true),
|
|
214
|
+
flattenGroups: z.boolean().default(false),
|
|
215
|
+
prefix: z.string().optional(),
|
|
216
|
+
colorFormat: z.enum(['hex', 'rgb', 'hsl']).default('hex'),
|
|
217
|
+
dimensionUnit: z.enum(['px', 'rem']).default('px'),
|
|
218
|
+
remBase: z.number().default(16),
|
|
219
|
+
});
|
|
220
|
+
// =============================================================================
|
|
221
|
+
// Tailwind Config Types
|
|
222
|
+
// =============================================================================
|
|
223
|
+
/**
|
|
224
|
+
* Tailwind theme configuration (partial)
|
|
225
|
+
*/
|
|
226
|
+
export const TailwindThemeSchema = z.object({
|
|
227
|
+
colors: z.record(z.union([z.string(), z.record(z.string())])).optional(),
|
|
228
|
+
spacing: z.record(z.string()).optional(),
|
|
229
|
+
fontSize: z.record(z.union([
|
|
230
|
+
z.string(),
|
|
231
|
+
z.tuple([z.string(), z.object({ lineHeight: z.string().optional(), letterSpacing: z.string().optional() })]),
|
|
232
|
+
])).optional(),
|
|
233
|
+
fontFamily: z.record(z.array(z.string())).optional(),
|
|
234
|
+
fontWeight: z.record(z.union([z.string(), z.number()])).optional(),
|
|
235
|
+
lineHeight: z.record(z.string()).optional(),
|
|
236
|
+
letterSpacing: z.record(z.string()).optional(),
|
|
237
|
+
borderRadius: z.record(z.string()).optional(),
|
|
238
|
+
borderWidth: z.record(z.string()).optional(),
|
|
239
|
+
boxShadow: z.record(z.string()).optional(),
|
|
240
|
+
opacity: z.record(z.string()).optional(),
|
|
241
|
+
zIndex: z.record(z.union([z.string(), z.number()])).optional(),
|
|
242
|
+
});
|
|
243
|
+
/**
|
|
244
|
+
* Tailwind config output
|
|
245
|
+
*/
|
|
246
|
+
export const TailwindConfigSchema = z.object({
|
|
247
|
+
theme: z.object({
|
|
248
|
+
extend: TailwindThemeSchema,
|
|
249
|
+
}),
|
|
250
|
+
});
|
|
251
|
+
// =============================================================================
|
|
252
|
+
// Token Comparison Types
|
|
253
|
+
// =============================================================================
|
|
254
|
+
/**
|
|
255
|
+
* Token difference entry
|
|
256
|
+
*/
|
|
257
|
+
export const TokenDiffEntrySchema = z.object({
|
|
258
|
+
path: z.string(),
|
|
259
|
+
type: z.enum(['added', 'removed', 'modified']),
|
|
260
|
+
figmaValue: z.unknown().optional(),
|
|
261
|
+
localValue: z.unknown().optional(),
|
|
262
|
+
figmaType: TokenTypeSchema.optional(),
|
|
263
|
+
localType: TokenTypeSchema.optional(),
|
|
264
|
+
});
|
|
265
|
+
/**
|
|
266
|
+
* Token comparison result
|
|
267
|
+
*/
|
|
268
|
+
export const TokenComparisonResultSchema = z.object({
|
|
269
|
+
summary: z.object({
|
|
270
|
+
totalFigma: z.number(),
|
|
271
|
+
totalLocal: z.number(),
|
|
272
|
+
added: z.number(),
|
|
273
|
+
removed: z.number(),
|
|
274
|
+
modified: z.number(),
|
|
275
|
+
unchanged: z.number(),
|
|
276
|
+
}),
|
|
277
|
+
differences: z.array(TokenDiffEntrySchema),
|
|
278
|
+
timestamp: z.string(),
|
|
279
|
+
figmaFileKey: z.string().optional(),
|
|
280
|
+
localFilePath: z.string().optional(),
|
|
281
|
+
});
|
|
282
|
+
//# sourceMappingURL=token-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-types.js","sourceRoot":"","sources":["../../../src/public/design/token-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @ax-cli/schemas - Single Source of Truth Type System
|
|
3
|
+
*
|
|
4
|
+
* This package provides centralized Zod schemas, brand types, and enums
|
|
5
|
+
* for the entire ax-cli ecosystem.
|
|
6
|
+
*
|
|
7
|
+
* SECURITY: All exports are controlled. Internal helpers are not exposed.
|
|
8
|
+
*
|
|
9
|
+
* @packageDocumentation
|
|
10
|
+
*/
|
|
11
|
+
export { brand, unbrand, isBranded, createBrandFactory, type __brand, type Brand, type ExtractBrand, type ExtractBase, } from './public/core/brand-types.js';
|
|
12
|
+
export { ApiResponseId, ToolCallId, ToolCallIdSchema, ModelId, ModelIdSchema, TenantId, ApiKeyId, MCPServerId, MCPServerIdSchema, UsageRecordId, PlanId, SessionId, RequestId, type ApiResponseId as ApiResponseIdType, type ToolCallId as ToolCallIdType, type ModelId as ModelIdType, type TenantId as TenantIdType, type ApiKeyId as ApiKeyIdType, type MCPServerId as MCPServerIdType, type UsageRecordId as UsageRecordIdType, type PlanId as PlanIdType, type SessionId as SessionIdType, type RequestId as RequestIdType, } from './public/core/id-types.js';
|
|
13
|
+
export { MessageRoleEnum, FinishReasonEnum, TransportEnum, EditorCommandEnum, type MessageRole, type FinishReason, type Transport, type EditorCommand, } from './public/core/enums.js';
|
|
14
|
+
export { type LLMToolCallRef, type ToolResultRef, type ChatEntry, type StreamingChunkType, type StreamingChunk, type AccumulatedMessage, type ChatHistory, } from './public/agent/index.js';
|
|
15
|
+
export * from './public/design/index.js';
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACL,KAAK,EACL,OAAO,EACP,SAAS,EACT,kBAAkB,EAClB,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,YAAY,EACjB,KAAK,WAAW,GACjB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,MAAM,EACN,SAAS,EACT,SAAS,EACT,KAAK,aAAa,IAAI,iBAAiB,EACvC,KAAK,UAAU,IAAI,cAAc,EACjC,KAAK,OAAO,IAAI,WAAW,EAC3B,KAAK,QAAQ,IAAI,YAAY,EAC7B,KAAK,QAAQ,IAAI,YAAY,EAC7B,KAAK,WAAW,IAAI,eAAe,EACnC,KAAK,aAAa,IAAI,iBAAiB,EACvC,KAAK,MAAM,IAAI,UAAU,EACzB,KAAK,SAAS,IAAI,aAAa,EAC/B,KAAK,SAAS,IAAI,aAAa,GAChC,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,aAAa,GACnB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,WAAW,GACjB,MAAM,yBAAyB,CAAC;AAGjC,cAAc,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @ax-cli/schemas - Single Source of Truth Type System
|
|
3
|
+
*
|
|
4
|
+
* This package provides centralized Zod schemas, brand types, and enums
|
|
5
|
+
* for the entire ax-cli ecosystem.
|
|
6
|
+
*
|
|
7
|
+
* SECURITY: All exports are controlled. Internal helpers are not exposed.
|
|
8
|
+
*
|
|
9
|
+
* @packageDocumentation
|
|
10
|
+
*/
|
|
11
|
+
// Core brand type utilities
|
|
12
|
+
export { brand, unbrand, isBranded, createBrandFactory, } from './public/core/brand-types.js';
|
|
13
|
+
// ID Brand Types
|
|
14
|
+
export { ApiResponseId, ToolCallId, ToolCallIdSchema, ModelId, ModelIdSchema, TenantId, ApiKeyId, MCPServerId, MCPServerIdSchema, UsageRecordId, PlanId, SessionId, RequestId, } from './public/core/id-types.js';
|
|
15
|
+
// Centralized Enums
|
|
16
|
+
export { MessageRoleEnum, FinishReasonEnum, TransportEnum, EditorCommandEnum, } from './public/core/enums.js';
|
|
17
|
+
// Design Module (Figma integration)
|
|
18
|
+
export * from './public/design/index.js';
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,4BAA4B;AAC5B,OAAO,EACL,KAAK,EACL,OAAO,EACP,SAAS,EACT,kBAAkB,GAKnB,MAAM,8BAA8B,CAAC;AAEtC,iBAAiB;AACjB,OAAO,EACL,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,MAAM,EACN,SAAS,EACT,SAAS,GAWV,MAAM,2BAA2B,CAAC;AAEnC,oBAAoB;AACpB,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,iBAAiB,GAKlB,MAAM,wBAAwB,CAAC;AAahC,oCAAoC;AACpC,cAAc,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @ax-cli/schemas - Agent Chat Types
|
|
3
|
+
*
|
|
4
|
+
* Single Source of Truth (SSOT) for agent chat-related types.
|
|
5
|
+
* These types are used across the agent, UI, checkpoint, and SDK modules.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* LLM Tool Call representation
|
|
11
|
+
*
|
|
12
|
+
* Represents a tool call made by the LLM during a conversation.
|
|
13
|
+
* This is a simplified version that doesn't depend on OpenAI types.
|
|
14
|
+
*/
|
|
15
|
+
export interface LLMToolCallRef {
|
|
16
|
+
/** Unique identifier for this tool call */
|
|
17
|
+
id: string;
|
|
18
|
+
/** Type of tool call (always "function" for now) */
|
|
19
|
+
type: "function";
|
|
20
|
+
/** Function details */
|
|
21
|
+
function: {
|
|
22
|
+
/** Name of the function to call */
|
|
23
|
+
name: string;
|
|
24
|
+
/** JSON-encoded arguments string */
|
|
25
|
+
arguments: string;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Tool execution result
|
|
30
|
+
*
|
|
31
|
+
* Represents the result of executing a tool.
|
|
32
|
+
*/
|
|
33
|
+
export interface ToolResultRef {
|
|
34
|
+
/** Whether the tool execution succeeded */
|
|
35
|
+
success: boolean;
|
|
36
|
+
/** Output from successful execution */
|
|
37
|
+
output?: string;
|
|
38
|
+
/** Error message if execution failed */
|
|
39
|
+
error?: string;
|
|
40
|
+
/** Additional structured data from the tool */
|
|
41
|
+
data?: Record<string, unknown>;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Chat Entry
|
|
45
|
+
*
|
|
46
|
+
* Represents a single entry in the chat history between user and assistant.
|
|
47
|
+
* This is the canonical definition - DO NOT duplicate this type elsewhere.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```typescript
|
|
51
|
+
* const userMessage: ChatEntry = {
|
|
52
|
+
* type: "user",
|
|
53
|
+
* content: "Hello, how are you?",
|
|
54
|
+
* timestamp: new Date(),
|
|
55
|
+
* };
|
|
56
|
+
*
|
|
57
|
+
* const assistantMessage: ChatEntry = {
|
|
58
|
+
* type: "assistant",
|
|
59
|
+
* content: "I'm doing well, thank you!",
|
|
60
|
+
* timestamp: new Date(),
|
|
61
|
+
* durationMs: 1500,
|
|
62
|
+
* };
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export interface ChatEntry {
|
|
66
|
+
/** Type of chat entry */
|
|
67
|
+
type: "user" | "assistant" | "tool_result" | "tool_call";
|
|
68
|
+
/** Text content of the entry */
|
|
69
|
+
content: string;
|
|
70
|
+
/** When this entry was created */
|
|
71
|
+
timestamp: Date;
|
|
72
|
+
/** Tool calls made by assistant (for type="assistant") */
|
|
73
|
+
toolCalls?: LLMToolCallRef[];
|
|
74
|
+
/** Single tool call (for type="tool_call") */
|
|
75
|
+
toolCall?: LLMToolCallRef;
|
|
76
|
+
/** Result of tool execution (for type="tool_result") */
|
|
77
|
+
toolResult?: {
|
|
78
|
+
success: boolean;
|
|
79
|
+
output?: string;
|
|
80
|
+
error?: string;
|
|
81
|
+
};
|
|
82
|
+
/** Whether content is currently streaming */
|
|
83
|
+
isStreaming?: boolean;
|
|
84
|
+
/** GLM-4.6 reasoning content (thinking mode) */
|
|
85
|
+
reasoningContent?: string;
|
|
86
|
+
/** Whether reasoning is currently streaming */
|
|
87
|
+
isReasoningStreaming?: boolean;
|
|
88
|
+
/** Response duration in milliseconds */
|
|
89
|
+
durationMs?: number;
|
|
90
|
+
/** Tool execution start time (for elapsed time display while running) */
|
|
91
|
+
executionStartTime?: Date;
|
|
92
|
+
/** Tool execution duration in milliseconds (shown after completion) */
|
|
93
|
+
executionDurationMs?: number;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Streaming Chunk Types
|
|
97
|
+
*
|
|
98
|
+
* Represents different types of streaming chunks that can be received
|
|
99
|
+
* during a streaming response from the LLM.
|
|
100
|
+
*/
|
|
101
|
+
export type StreamingChunkType = "content" | "reasoning" | "tool_calls" | "tool_result" | "done" | "token_count";
|
|
102
|
+
/**
|
|
103
|
+
* Streaming Chunk
|
|
104
|
+
*
|
|
105
|
+
* Represents a chunk of data received during streaming response.
|
|
106
|
+
* Used by UI components to render incremental updates.
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```typescript
|
|
110
|
+
* // Content chunk
|
|
111
|
+
* const contentChunk: StreamingChunk = {
|
|
112
|
+
* type: "content",
|
|
113
|
+
* content: "Hello",
|
|
114
|
+
* };
|
|
115
|
+
*
|
|
116
|
+
* // Tool result chunk
|
|
117
|
+
* const toolResultChunk: StreamingChunk = {
|
|
118
|
+
* type: "tool_result",
|
|
119
|
+
* toolResult: { success: true, output: "File created" },
|
|
120
|
+
* executionDurationMs: 150,
|
|
121
|
+
* };
|
|
122
|
+
* ```
|
|
123
|
+
*/
|
|
124
|
+
export interface StreamingChunk {
|
|
125
|
+
/** Type of streaming chunk */
|
|
126
|
+
type: StreamingChunkType;
|
|
127
|
+
/** Text content (for type="content") */
|
|
128
|
+
content?: string;
|
|
129
|
+
/** GLM-4.6 reasoning content chunk (for type="reasoning") */
|
|
130
|
+
reasoningContent?: string;
|
|
131
|
+
/** Tool calls from LLM (for type="tool_calls") */
|
|
132
|
+
toolCalls?: LLMToolCallRef[];
|
|
133
|
+
/** Single tool call */
|
|
134
|
+
toolCall?: LLMToolCallRef;
|
|
135
|
+
/** Tool execution result (for type="tool_result") */
|
|
136
|
+
toolResult?: ToolResultRef;
|
|
137
|
+
/** Token count (for type="token_count") */
|
|
138
|
+
tokenCount?: number;
|
|
139
|
+
/** Tool execution duration in milliseconds (for type="tool_result") */
|
|
140
|
+
executionDurationMs?: number;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Accumulated Message
|
|
144
|
+
*
|
|
145
|
+
* Contains the full message content accumulated from streaming response.
|
|
146
|
+
* Used internally by the agent to build complete messages from chunks.
|
|
147
|
+
*/
|
|
148
|
+
export interface AccumulatedMessage {
|
|
149
|
+
/** Message role (e.g., "assistant") */
|
|
150
|
+
role?: string;
|
|
151
|
+
/** Full accumulated content */
|
|
152
|
+
content?: string;
|
|
153
|
+
/** Tool calls accumulated from the response */
|
|
154
|
+
tool_calls?: LLMToolCallRef[];
|
|
155
|
+
/** Allow additional properties for flexibility */
|
|
156
|
+
[key: string]: unknown;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Chat History
|
|
160
|
+
*
|
|
161
|
+
* Type alias for an array of chat entries.
|
|
162
|
+
*/
|
|
163
|
+
export type ChatHistory = ChatEntry[];
|
|
164
|
+
//# sourceMappingURL=chat-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-types.d.ts","sourceRoot":"","sources":["../../../../src/public/agent/chat-types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,2CAA2C;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,IAAI,EAAE,UAAU,CAAC;IACjB,uBAAuB;IACvB,QAAQ,EAAE;QACR,mCAAmC;QACnC,IAAI,EAAE,MAAM,CAAC;QACb,oCAAoC;QACpC,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,SAAS;IACxB,yBAAyB;IACzB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,aAAa,GAAG,WAAW,CAAC;IAEzD,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAEhB,kCAAkC;IAClC,SAAS,EAAE,IAAI,CAAC;IAEhB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAE7B,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,cAAc,CAAC;IAE1B,wDAAwD;IACxD,UAAU,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAEnE,6CAA6C;IAC7C,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,+CAA+C;IAC/C,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,IAAI,CAAC;IAE1B,uEAAuE;IACvE,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAC1B,SAAS,GACT,WAAW,GACX,YAAY,GACZ,aAAa,GACb,MAAM,GACN,aAAa,CAAC;AAElB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,cAAc;IAC7B,8BAA8B;IAC9B,IAAI,EAAE,kBAAkB,CAAC;IAEzB,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,kDAAkD;IAClD,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAE7B,uBAAuB;IACvB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAE1B,qDAAqD;IACrD,UAAU,CAAC,EAAE,aAAa,CAAC;IAE3B,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,uEAAuE;IACvE,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAE9B,kDAAkD;IAClD,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @ax-cli/schemas - Agent Chat Types
|
|
3
|
+
*
|
|
4
|
+
* Single Source of Truth (SSOT) for agent chat-related types.
|
|
5
|
+
* These types are used across the agent, UI, checkpoint, and SDK modules.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=chat-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-types.js","sourceRoot":"","sources":["../../../../src/public/agent/chat-types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @ax-cli/schemas - Agent Types
|
|
3
|
+
*
|
|
4
|
+
* Exports all agent-related types for the ax-cli ecosystem.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
export { type LLMToolCallRef, type ToolResultRef, type ChatEntry, type StreamingChunkType, type StreamingChunk, type AccumulatedMessage, type ChatHistory, } from './chat-types.js';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/public/agent/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/public/agent/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|