@adonis-agora/agent 0.77.1 → 0.79.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/CHANGELOG.md +31 -0
- package/dist/src/a2a/turn.d.ts.map +1 -1
- package/dist/src/a2a/turn.js +3 -1
- package/dist/src/a2a/turn.js.map +1 -1
- package/dist/src/a2ui/core.d.ts.map +1 -1
- package/dist/src/a2ui/core.js +14 -2
- package/dist/src/a2ui/core.js.map +1 -1
- package/dist/src/ag-ui/core/encoder.d.ts.map +1 -1
- package/dist/src/ag-ui/core/encoder.js +7 -4
- package/dist/src/ag-ui/core/encoder.js.map +1 -1
- package/dist/src/agent-loop.d.ts.map +1 -1
- package/dist/src/agent-loop.js +5 -20
- package/dist/src/agent-loop.js.map +1 -1
- package/dist/src/channels/handler.d.ts.map +1 -1
- package/dist/src/channels/handler.js +21 -5
- package/dist/src/channels/handler.js.map +1 -1
- package/dist/src/channels/texts.d.ts +1 -1
- package/dist/src/channels/texts.d.ts.map +1 -1
- package/dist/src/channels/texts.js +3 -2
- package/dist/src/channels/texts.js.map +1 -1
- package/dist/src/genui/index.d.ts +8 -0
- package/dist/src/genui/index.d.ts.map +1 -1
- package/dist/src/genui/index.js +13 -3
- package/dist/src/genui/index.js.map +1 -1
- package/dist/src/genui/kit/adonis.d.ts +20 -2
- package/dist/src/genui/kit/adonis.d.ts.map +1 -1
- package/dist/src/genui/kit/adonis.js +15 -5
- package/dist/src/genui/kit/adonis.js.map +1 -1
- package/dist/src/genui/kit/discover.d.ts +15 -1
- package/dist/src/genui/kit/discover.d.ts.map +1 -1
- package/dist/src/genui/kit/discover.js +19 -4
- package/dist/src/genui/kit/discover.js.map +1 -1
- package/dist/src/genui/kit/index.d.ts +3 -3
- package/dist/src/genui/kit/index.d.ts.map +1 -1
- package/dist/src/genui/kit/index.js +2 -2
- package/dist/src/genui/kit/index.js.map +1 -1
- package/dist/src/genui/kit/plugin.d.ts +26 -0
- package/dist/src/genui/kit/plugin.d.ts.map +1 -1
- package/dist/src/genui/kit/plugin.js +55 -10
- package/dist/src/genui/kit/plugin.js.map +1 -1
- package/dist/src/genui/kit/styles.d.ts +27 -0
- package/dist/src/genui/kit/styles.d.ts.map +1 -1
- package/dist/src/genui/kit/styles.js +29 -1
- package/dist/src/genui/kit/styles.js.map +1 -1
- package/dist/src/genui/sandbox-kit.d.ts +3 -1
- package/dist/src/genui/sandbox-kit.d.ts.map +1 -1
- package/dist/src/genui/sandbox-kit.js +1 -1
- package/dist/src/genui/sandbox-kit.js.map +1 -1
- package/dist/src/genui/sandbox-styles.d.ts +41 -4
- package/dist/src/genui/sandbox-styles.d.ts.map +1 -1
- package/dist/src/genui/sandbox-styles.js +287 -37
- package/dist/src/genui/sandbox-styles.js.map +1 -1
- package/dist/src/genui/sandbox.d.ts +44 -0
- package/dist/src/genui/sandbox.d.ts.map +1 -1
- package/dist/src/genui/sandbox.js +108 -25
- package/dist/src/genui/sandbox.js.map +1 -1
- package/dist/src/hooks/genui_kit.d.ts +2 -0
- package/dist/src/hooks/genui_kit.d.ts.map +1 -1
- package/dist/src/hooks/genui_kit.js +2 -1
- package/dist/src/hooks/genui_kit.js.map +1 -1
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/opencode/turn.d.ts +10 -0
- package/dist/src/opencode/turn.d.ts.map +1 -1
- package/dist/src/opencode/turn.js +8 -0
- package/dist/src/opencode/turn.js.map +1 -1
- package/dist/src/opencode/turns.d.ts +6 -0
- package/dist/src/opencode/turns.d.ts.map +1 -1
- package/dist/src/opencode/turns.js +20 -0
- package/dist/src/opencode/turns.js.map +1 -1
- package/dist/src/react/core/genui/sandbox-assets.d.ts +1 -0
- package/dist/src/react/core/genui/sandbox-assets.d.ts.map +1 -1
- package/dist/src/react/core/genui/sandbox-assets.js +8 -7
- package/dist/src/react/core/genui/sandbox-assets.js.map +1 -1
- package/dist/src/react/core/genui/sandbox.d.ts +7 -0
- package/dist/src/react/core/genui/sandbox.d.ts.map +1 -1
- package/dist/src/react/core/genui/sandbox.js +35 -4
- package/dist/src/react/core/genui/sandbox.js.map +1 -1
- package/dist/src/react-native/genui/sandbox.d.ts.map +1 -1
- package/dist/src/react-native/genui/sandbox.js +5 -2
- package/dist/src/react-native/genui/sandbox.js.map +1 -1
- package/dist/src/tool-presentation.d.ts +19 -0
- package/dist/src/tool-presentation.d.ts.map +1 -1
- package/dist/src/tool-presentation.js +40 -0
- package/dist/src/tool-presentation.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-kit.d.ts","sourceRoot":"","sources":["../../../src/genui/sandbox-kit.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEzE,uEAAuE;AACvE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,8FAA8F;IAC9F,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,sFAAsF;AACtF,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CAAC,CAAC;IACX,+FAA+F;IAC/F,UAAU,EAAE,sBAAsB,EAAE,CAAC;IACrC,4EAA4E;IAC5E,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,uGAAuG;IACvG,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+FAA+F;IAC/F,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;IACzC,qEAAqE;IACrE,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;QAAC,MAAM,EAAE,cAAc,CAAA;KAAE,CAAC;IACtD,kFAAkF;IAClF,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,8FAA8F;AAC9F,MAAM,WAAW,gBAAgB;IAC/B,+FAA+F;IAC/F,GAAG,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC3C,6DAA6D;IAC7D,GAAG,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC3C,0GAA0G;IAC1G,QAAQ,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAChD;AAED,0FAA0F;AAC1F,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrC,GAAG,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrC,QAAQ,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1C;AAED,
|
|
1
|
+
{"version":3,"file":"sandbox-kit.d.ts","sourceRoot":"","sources":["../../../src/genui/sandbox-kit.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* discovery) is `genui/kit`.
|
|
6
6
|
*/
|
|
7
7
|
import { SANDBOX_JSX_FRAME_SOURCE } from './sandbox-jsx-frame-generated.js';
|
|
8
|
-
/** What the opt-in assets weigh, inlined into every
|
|
8
|
+
/** What the opt-in assets weigh: fetched once per page, handed to (or inlined into) every frame that uses them. */
|
|
9
9
|
export const SANDBOX_ASSET_SIZES = {
|
|
10
10
|
/** `@tailwindcss/browser` v4 (minified, as inlined; ≈75 KB gzipped over the wire, once). */
|
|
11
11
|
tailwind: '≈280 KB',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-kit.js","sourceRoot":"","sources":["../../../src/genui/sandbox-kit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"sandbox-kit.js","sourceRoot":"","sources":["../../../src/genui/sandbox-kit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AA0E5E,mHAAmH;AACnH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,4FAA4F;IAC5F,QAAQ,EAAE,SAAS;IACnB,2EAA2E;IAC3E,GAAG,EAAE,2BAA2B;CACxB,CAAC;AAEX,iGAAiG;AACjG,SAAS,QAAQ,CAAC,IAAuB;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IAChF,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,GACrD,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EACtD,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC3F,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,kBAAkB,CAAC,IAAwC;IACzE,MAAM,KAAK,GAAG;QACZ,8GAA8G;KAC/G,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACnI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxE,IAAI,SAAS,CAAC,QAAQ,KAAK,SAAS;YAClC,KAAK,CAAC,IAAI,CAAC,mBAAmB,SAAS,CAAC,QAAQ,qCAAqC,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,kBAAkB,CAChC,OAAO,GAAgD,EAAE;IAEzD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,KAAK,KAAK,CAAC;IAChD,OAAO;QACL,0LAA0L;QAC1L,UAAU;YACR,CAAC,CAAC,sMAAsM;YACxM,CAAC,CAAC,uHAAuH;QAC3H,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI;YAC1B,CAAC,CAAC;gBACE,4IAA4I;aAC7I;YACH,CAAC,CAAC,EAAE,CAAC;QACP,mGAAmG;QACnG,0EAA0E;KAC3E,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,mBAAmB;IACjC,OAAO,wFAAwF,CAAC;AAClG,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAKjC;IACC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACzF,4FAA4F;IAC5F,sEAAsE;IACtE,OAAO,eAAe,wBAAwB;QACxC,CAAC,SAAS,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;WA2BX,OAAO,4CAA4C,CAAC;AAC/D,CAAC"}
|
|
@@ -13,13 +13,20 @@ export interface CssVocabulary {
|
|
|
13
13
|
vars: string[];
|
|
14
14
|
}
|
|
15
15
|
export interface CssVocabularyOptions {
|
|
16
|
-
/** Most class names listed. Default
|
|
16
|
+
/** Most class names listed. Default: all of them (they are written as patterns). */
|
|
17
17
|
maxClasses?: number;
|
|
18
|
-
/** Most class names listed per family (`btn`, `col`…)
|
|
18
|
+
/** Most class names listed per family (`btn`, `col`…). Default: all of them. */
|
|
19
19
|
maxPerFamily?: number;
|
|
20
|
+
/**
|
|
21
|
+
* Most characters the families' patterns take, so the prompt stays small whatever the stylesheet;
|
|
22
|
+
* the rarest families go first. Default 12000.
|
|
23
|
+
*/
|
|
24
|
+
maxChars?: number;
|
|
20
25
|
/** Most custom properties listed. Default 80. */
|
|
21
26
|
maxVars?: number;
|
|
22
27
|
}
|
|
28
|
+
/** Whether a class name is a generated (CSS-modules) one — nobody can write it by hand. */
|
|
29
|
+
export declare function isGeneratedClassName(name: string): boolean;
|
|
23
30
|
/**
|
|
24
31
|
* What a stylesheet gives the model to write with: its class names, grouped into families
|
|
25
32
|
* (`btn`, `card`, `form`…) and compressed (`btn-{primary,secondary,danger}`), the most used first —
|
|
@@ -29,8 +36,13 @@ export interface CssVocabularyOptions {
|
|
|
29
36
|
*/
|
|
30
37
|
export declare function extractCssVocabulary(css: string, options?: CssVocabularyOptions): CssVocabulary;
|
|
31
38
|
/**
|
|
32
|
-
* Class names
|
|
33
|
-
*
|
|
39
|
+
* Class names written as patterns, every name covered exactly once and nothing else: names with the
|
|
40
|
+
* same number of `-segments` that differ in one segment merge into one pattern (`btn-primary`,
|
|
41
|
+
* `btn-secondary` → `btn-{primary,secondary}`), again and again, segment by segment from the last —
|
|
42
|
+
* so a utility family becomes one line (`{m,p}{,t,b,s,e,x,y}-{0..5,auto}`,
|
|
43
|
+
* `{m,p}{,t,b,s,e,x,y}-{sm,md,lg,xl,xxl}-{0..5,auto}`). A run of three or more integers is a range
|
|
44
|
+
* (`{0..5}`); short words sharing their tails share them (`{m,p}{,t,b}`). Order kept (the first
|
|
45
|
+
* member's place).
|
|
34
46
|
*/
|
|
35
47
|
export declare function compressClassNames(names: readonly string[]): string[];
|
|
36
48
|
/** The vocabulary as the model reads it (inside the sandbox description). */
|
|
@@ -81,6 +93,31 @@ export declare function tailwindToModelText(tokens: TailwindTokens, options?: {
|
|
|
81
93
|
* `['class', '<selector>']` becomes a `dark` variant.
|
|
82
94
|
*/
|
|
83
95
|
export declare function tailwindV3ConfigToCss(config: unknown): string;
|
|
96
|
+
/** Where in a stylesheet {@link purgeCss} may drop rules. */
|
|
97
|
+
export type PurgeScope = 'utilities' | 'all';
|
|
98
|
+
export interface PurgeCssOptions {
|
|
99
|
+
/** Whether a class name (unescaped: `hover:bg-primary/90`) is kept. */
|
|
100
|
+
keep(className: string): boolean;
|
|
101
|
+
/**
|
|
102
|
+
* `'utilities'`: only style rules inside `@layer utilities` (Tailwind v4's compiled output — the
|
|
103
|
+
* frame's runtime generates whatever utility the model writes, so only those the kit itself uses
|
|
104
|
+
* must ship); `'all'`: every style rule.
|
|
105
|
+
*/
|
|
106
|
+
scope: PurgeScope;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* A compiled stylesheet with the style rules nobody can use taken out: a rule (or one selector of
|
|
110
|
+
* its list) goes when a class it requires is not kept (`options.keep`). Rules without classes (the
|
|
111
|
+
* base: elements, `:root`, `*`), `@font-face`, `@keyframes`, `@property` and every other at-rule
|
|
112
|
+
* stay; grouping at-rules (`@media`, `@supports`, `@layer`…) left empty go too.
|
|
113
|
+
*/
|
|
114
|
+
export declare function purgeCss(css: string, options: PurgeCssOptions): string;
|
|
115
|
+
/**
|
|
116
|
+
* The class-like tokens of a source text (a kit bundle): every run of characters between quotes,
|
|
117
|
+
* backticks, whitespace and template braces — a superset of the class names it can put on an
|
|
118
|
+
* element (`"inline-flex hover:bg-primary/90"` → `inline-flex`, `hover:bg-primary/90`).
|
|
119
|
+
*/
|
|
120
|
+
export declare function classTokensOf(source: string): Set<string>;
|
|
84
121
|
/** What a `url()` resolves to: its bytes (base64) and type — or why it cannot be inlined. */
|
|
85
122
|
export type CssUrlResolution = {
|
|
86
123
|
data: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-styles.d.ts","sourceRoot":"","sources":["../../../src/genui/sandbox-styles.ts"],"names":[],"mappings":"AAwEA,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC5B,gHAAgH;IAChH,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IAC9C,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,MAAM,EAAE,MAAM,CAAC;IACf,0FAA0F;IAC1F,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,
|
|
1
|
+
{"version":3,"file":"sandbox-styles.d.ts","sourceRoot":"","sources":["../../../src/genui/sandbox-styles.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,6 +70,10 @@ function forEachSelector(css, visit) {
|
|
|
70
70
|
}
|
|
71
71
|
/** A generated (CSS-modules) name: `_button_x1y2z_3`, `Button_root__a1B2c`. */
|
|
72
72
|
const HASHED_CLASS = /(^_[\w-]+_[a-zA-Z0-9]{5,}(_\d+)?$)|(__[a-zA-Z0-9_-]{5}$)/;
|
|
73
|
+
/** Whether a class name is a generated (CSS-modules) one — nobody can write it by hand. */
|
|
74
|
+
export function isGeneratedClassName(name) {
|
|
75
|
+
return HASHED_CLASS.test(name);
|
|
76
|
+
}
|
|
73
77
|
/** The class names a selector names (escaped ones — `md\:flex` — and those in attribute values left out). */
|
|
74
78
|
function selectorClasses(selector) {
|
|
75
79
|
const clean = selector.replace(/\[[^\]]*\]/g, '[]').replace(/"[^"]*"|'[^']*'/g, '""');
|
|
@@ -89,8 +93,9 @@ function selectorClasses(selector) {
|
|
|
89
93
|
* left out (nobody can write them).
|
|
90
94
|
*/
|
|
91
95
|
export function extractCssVocabulary(css, options = {}) {
|
|
92
|
-
const maxClasses = options.maxClasses ??
|
|
93
|
-
const maxPerFamily = options.maxPerFamily ??
|
|
96
|
+
const maxClasses = options.maxClasses ?? Number.POSITIVE_INFINITY;
|
|
97
|
+
const maxPerFamily = options.maxPerFamily ?? Number.POSITIVE_INFINITY;
|
|
98
|
+
const maxChars = options.maxChars ?? 12000;
|
|
94
99
|
const maxVars = options.maxVars ?? 80;
|
|
95
100
|
const score = new Map();
|
|
96
101
|
forEachSelector(css, (selectorList) => {
|
|
@@ -117,59 +122,164 @@ export function extractCssVocabulary(css, options = {}) {
|
|
|
117
122
|
entry.names.push(name);
|
|
118
123
|
families.set(key, entry);
|
|
119
124
|
}
|
|
120
|
-
const groups = [];
|
|
121
|
-
let listed = 0;
|
|
122
125
|
const orderedFamilies = [...families.entries()].sort((a, b) => b[1].score - a[1].score || a[0].localeCompare(b[0]));
|
|
126
|
+
// Each family as patterns; families of the same shape (`m-{0..5,auto}`, `mt-{0..5,auto}`…) as one.
|
|
127
|
+
const shaped = [];
|
|
128
|
+
const byShape = new Map();
|
|
129
|
+
let counted = 0;
|
|
123
130
|
for (const [name, entry] of orderedFamilies) {
|
|
124
|
-
if (
|
|
131
|
+
if (counted >= maxClasses)
|
|
125
132
|
break;
|
|
126
|
-
const names = entry.names.slice(0, Math.min(maxPerFamily, maxClasses -
|
|
127
|
-
|
|
128
|
-
|
|
133
|
+
const names = entry.names.slice(0, Math.min(maxPerFamily, maxClasses - counted));
|
|
134
|
+
counted += names.length;
|
|
135
|
+
const classes = compressClassNames(names);
|
|
136
|
+
// A family of one bare class (`active`, `show`) keeps its own entry.
|
|
137
|
+
const own = classes.some((each) => each !== name) &&
|
|
138
|
+
classes.every((each) => each === name || each.startsWith(`${name}-`));
|
|
139
|
+
const shape = own ? classes.map((each) => `\u0000${each.slice(name.length)}`).join(' ') : '';
|
|
140
|
+
const same = shape === '' ? undefined : byShape.get(shape);
|
|
141
|
+
if (same !== undefined) {
|
|
142
|
+
same.members.push(name);
|
|
143
|
+
same.count += names.length;
|
|
144
|
+
continue;
|
|
145
|
+
}
|
|
146
|
+
const group = { name, members: [name], classes, count: names.length };
|
|
147
|
+
shaped.push(group);
|
|
148
|
+
if (shape !== '')
|
|
149
|
+
byShape.set(shape, group);
|
|
150
|
+
}
|
|
151
|
+
const groups = [];
|
|
152
|
+
let listed = 0;
|
|
153
|
+
let chars = 0;
|
|
154
|
+
for (const group of shaped) {
|
|
155
|
+
let { name, classes } = group;
|
|
156
|
+
if (group.members.length > 1) {
|
|
157
|
+
name = renderAlternatives(group.members);
|
|
158
|
+
classes = classes.map((each) => `${name}${each.slice(group.members[0].length)}`);
|
|
159
|
+
}
|
|
160
|
+
const size = name.length + classes.reduce((sum, each) => sum + each.length + 1, 4);
|
|
161
|
+
if (chars + size > maxChars)
|
|
162
|
+
continue;
|
|
163
|
+
chars += size;
|
|
164
|
+
listed += group.count;
|
|
165
|
+
groups.push({ name, classes });
|
|
129
166
|
}
|
|
130
167
|
const vars = Object.keys(themeVarsFromCss(css, { rootOnly: true })).slice(0, maxVars);
|
|
131
168
|
return { groups, total: score.size, listed, vars };
|
|
132
169
|
}
|
|
170
|
+
/** One alternative set rendered: `{0..5}`, `{0..5,auto}`, `{m,p}{,t,b}`, `{primary,secondary}`. */
|
|
171
|
+
function renderAlternatives(alternatives) {
|
|
172
|
+
if (alternatives.length === 1)
|
|
173
|
+
return alternatives[0];
|
|
174
|
+
const numbers = alternatives
|
|
175
|
+
.filter((each) => /^(0|[1-9]\d{0,3})$/.test(each))
|
|
176
|
+
.map(Number)
|
|
177
|
+
.sort((a, b) => a - b);
|
|
178
|
+
const others = alternatives.filter((each) => !/^(0|[1-9]\d{0,3})$/.test(each));
|
|
179
|
+
const runs = [];
|
|
180
|
+
for (let index = 0; index < numbers.length;) {
|
|
181
|
+
let end = index;
|
|
182
|
+
while (end + 1 < numbers.length && numbers[end + 1] === numbers[end] + 1)
|
|
183
|
+
end++;
|
|
184
|
+
if (end - index >= 2)
|
|
185
|
+
runs.push(`${numbers[index]}..${numbers[end]}`);
|
|
186
|
+
else
|
|
187
|
+
for (let each = index; each <= end; each++)
|
|
188
|
+
runs.push(String(numbers[each]));
|
|
189
|
+
index = end + 1;
|
|
190
|
+
}
|
|
191
|
+
// Short words sharing their first letter (`m mt mb`: `m{,t,b}`), or their tails too
|
|
192
|
+
// (`m mt p pt`: `{m,p}{,t}`).
|
|
193
|
+
if (numbers.length === 0 &&
|
|
194
|
+
others.length >= 3 &&
|
|
195
|
+
others.every((each) => /^[a-z]{1,4}$/.test(each))) {
|
|
196
|
+
const tails = new Map();
|
|
197
|
+
for (const each of others) {
|
|
198
|
+
const head = each.slice(0, 1);
|
|
199
|
+
tails.set(head, [...(tails.get(head) ?? []), each.slice(1)]);
|
|
200
|
+
}
|
|
201
|
+
const lists = [...tails.values()].map((list) => list.join(','));
|
|
202
|
+
if (tails.size === 1)
|
|
203
|
+
return `${[...tails.keys()][0]}{${lists[0]}}`;
|
|
204
|
+
if (lists.every((list) => list === lists[0]))
|
|
205
|
+
return `{${[...tails.keys()].join(',')}}{${lists[0]}}`;
|
|
206
|
+
}
|
|
207
|
+
return `{${[...runs, ...others].join(',')}}`;
|
|
208
|
+
}
|
|
133
209
|
/**
|
|
134
|
-
* Class names
|
|
135
|
-
*
|
|
210
|
+
* Class names written as patterns, every name covered exactly once and nothing else: names with the
|
|
211
|
+
* same number of `-segments` that differ in one segment merge into one pattern (`btn-primary`,
|
|
212
|
+
* `btn-secondary` → `btn-{primary,secondary}`), again and again, segment by segment from the last —
|
|
213
|
+
* so a utility family becomes one line (`{m,p}{,t,b,s,e,x,y}-{0..5,auto}`,
|
|
214
|
+
* `{m,p}{,t,b,s,e,x,y}-{sm,md,lg,xl,xxl}-{0..5,auto}`). A run of three or more integers is a range
|
|
215
|
+
* (`{0..5}`); short words sharing their tails share them (`{m,p}{,t,b}`). Order kept (the first
|
|
216
|
+
* member's place).
|
|
136
217
|
*/
|
|
137
218
|
export function compressClassNames(names) {
|
|
138
|
-
const
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
219
|
+
const byLength = new Map();
|
|
220
|
+
names.forEach((name, order) => {
|
|
221
|
+
const segments = name.split('-').map((segment) => [segment]);
|
|
222
|
+
const list = byLength.get(segments.length) ?? [];
|
|
223
|
+
list.push({ order, segments });
|
|
224
|
+
byLength.set(segments.length, list);
|
|
225
|
+
});
|
|
226
|
+
const patterns = [];
|
|
227
|
+
for (const [length, start] of byLength) {
|
|
228
|
+
let list = start;
|
|
229
|
+
// Bare words (`alert`, `fade`) are names of their own, never alternatives of each other.
|
|
230
|
+
for (let changed = length > 1; changed;) {
|
|
231
|
+
changed = false;
|
|
232
|
+
for (let position = length - 1; position >= 0; position--) {
|
|
233
|
+
const merged = new Map();
|
|
234
|
+
for (const pattern of list) {
|
|
235
|
+
const key = pattern.segments
|
|
236
|
+
.map((alternatives, index) => (index === position ? '*' : alternatives.join(',')))
|
|
237
|
+
.join('\u0000');
|
|
238
|
+
const into = merged.get(key);
|
|
239
|
+
if (into === undefined) {
|
|
240
|
+
merged.set(key, {
|
|
241
|
+
order: pattern.order,
|
|
242
|
+
segments: pattern.segments.map((a) => [...a]),
|
|
243
|
+
});
|
|
244
|
+
continue;
|
|
245
|
+
}
|
|
246
|
+
changed = true;
|
|
247
|
+
into.order = Math.min(into.order, pattern.order);
|
|
248
|
+
const target = into.segments[position];
|
|
249
|
+
for (const alternative of pattern.segments[position])
|
|
250
|
+
if (!target.includes(alternative))
|
|
251
|
+
target.push(alternative);
|
|
252
|
+
}
|
|
253
|
+
list = [...merged.values()];
|
|
254
|
+
}
|
|
157
255
|
}
|
|
158
|
-
|
|
159
|
-
continue;
|
|
160
|
-
done.add(stem);
|
|
161
|
-
out.push(`${stem}-{${siblings.map((each) => each.slice(stem.length + 1)).join(',')}}`);
|
|
256
|
+
patterns.push(...list);
|
|
162
257
|
}
|
|
163
|
-
return
|
|
258
|
+
return patterns
|
|
259
|
+
.sort((a, b) => a.order - b.order)
|
|
260
|
+
.map((pattern) => pattern.segments.map(renderAlternatives).join('-'));
|
|
164
261
|
}
|
|
165
262
|
/** The vocabulary as the model reads it (inside the sandbox description). */
|
|
166
263
|
export function vocabularyToModelText(vocabulary, options = {}) {
|
|
167
264
|
const attribute = options.jsx === true ? 'className (in JSX) or class (in html)' : 'class="…"';
|
|
168
265
|
const lines = [
|
|
169
|
-
`The app's stylesheet is loaded in the frame. Style the view with ITS classes (${attribute}) instead of writing your own CSS — write css only for layout it does not cover. The classes it defines, by family, most used first (a{b,c} means ab and ac):`,
|
|
266
|
+
`The app's stylesheet is loaded in the frame. Style the view with ITS classes (${attribute}) instead of writing your own CSS — write css only for layout it does not cover. The classes it defines, by family, most used first (a{b,c} means ab and ac; {0..3} means 0, 1, 2 and 3):`,
|
|
170
267
|
];
|
|
171
|
-
|
|
172
|
-
|
|
268
|
+
// Families of one bare class (`active`, `show`, `lead`) share one line, where the first one ranks.
|
|
269
|
+
const bare = vocabulary.groups.filter((group) => group.classes.length === 1 && group.classes[0] === group.name);
|
|
270
|
+
let bareLine = false;
|
|
271
|
+
for (const group of vocabulary.groups) {
|
|
272
|
+
if (bare.includes(group)) {
|
|
273
|
+
if (!bareLine)
|
|
274
|
+
lines.push(`- ${bare.map((each) => each.name).join(' ')}`);
|
|
275
|
+
bareLine = true;
|
|
276
|
+
continue;
|
|
277
|
+
}
|
|
278
|
+
// Families merged into one pattern are named by it: their classes say it already.
|
|
279
|
+
lines.push(group.name.includes('{')
|
|
280
|
+
? `- ${group.classes.join(' ')}`
|
|
281
|
+
: `- ${group.name}: ${group.classes.join(' ')}`);
|
|
282
|
+
}
|
|
173
283
|
if (vocabulary.total > vocabulary.listed)
|
|
174
284
|
lines.push(`(${vocabulary.total - vocabulary.listed} rarer classes not listed.)`);
|
|
175
285
|
if (vocabulary.vars.length > 0)
|
|
@@ -429,6 +539,146 @@ export function tailwindV3ConfigToCss(config) {
|
|
|
429
539
|
out.push(`@theme {\n${lines.map((line) => ` ${line};`).join('\n')}${extra.length > 0 ? `\n ${extra.join('\n ')}` : ''}\n}`);
|
|
430
540
|
return out.join('\n');
|
|
431
541
|
}
|
|
542
|
+
/** Split a selector list on its top-level commas (not those inside `()` / `[]` / strings). */
|
|
543
|
+
function splitSelectorList(prelude) {
|
|
544
|
+
const out = [];
|
|
545
|
+
let depth = 0;
|
|
546
|
+
let start = 0;
|
|
547
|
+
for (let index = 0; index < prelude.length; index++) {
|
|
548
|
+
const c = prelude[index];
|
|
549
|
+
if (c === '\\')
|
|
550
|
+
index++;
|
|
551
|
+
else if (c === '"' || c === "'") {
|
|
552
|
+
const close = prelude.indexOf(c, index + 1);
|
|
553
|
+
index = close < 0 ? prelude.length : close;
|
|
554
|
+
}
|
|
555
|
+
else if (c === '(' || c === '[')
|
|
556
|
+
depth++;
|
|
557
|
+
else if (c === ')' || c === ']')
|
|
558
|
+
depth = Math.max(0, depth - 1);
|
|
559
|
+
else if (c === ',' && depth === 0) {
|
|
560
|
+
out.push(prelude.slice(start, index));
|
|
561
|
+
start = index + 1;
|
|
562
|
+
}
|
|
563
|
+
}
|
|
564
|
+
out.push(prelude.slice(start));
|
|
565
|
+
return out;
|
|
566
|
+
}
|
|
567
|
+
/** CSS identifier escapes undone: `hover\:bg-x` → `hover:bg-x`, `\31 0` → `10`. */
|
|
568
|
+
function unescapeCssIdent(ident) {
|
|
569
|
+
return ident.replace(/\\([0-9a-fA-F]{1,6}\s?|[\s\S])/g, (_all, escaped) => /^[0-9a-fA-F]{1,6}\s?$/.test(escaped)
|
|
570
|
+
? String.fromCodePoint(Number.parseInt(escaped.trim(), 16))
|
|
571
|
+
: escaped);
|
|
572
|
+
}
|
|
573
|
+
/**
|
|
574
|
+
* The classes a complex selector REQUIRES — those outside functional pseudo-classes (`:not(.x)`,
|
|
575
|
+
* `:is(.a, .b)`, `:where(…)`, `:has(…)`), whose classes do not all have to be on the page — unescaped.
|
|
576
|
+
*/
|
|
577
|
+
function requiredClasses(selector) {
|
|
578
|
+
let outer = '';
|
|
579
|
+
let depth = 0;
|
|
580
|
+
for (let index = 0; index < selector.length; index++) {
|
|
581
|
+
const c = selector[index];
|
|
582
|
+
if (c === '\\') {
|
|
583
|
+
if (depth === 0)
|
|
584
|
+
outer += selector.slice(index, index + 2);
|
|
585
|
+
index++;
|
|
586
|
+
}
|
|
587
|
+
else if (c === '"' || c === "'") {
|
|
588
|
+
const close = selector.indexOf(c, index + 1);
|
|
589
|
+
index = close < 0 ? selector.length : close;
|
|
590
|
+
if (depth === 0)
|
|
591
|
+
outer += '""';
|
|
592
|
+
}
|
|
593
|
+
else if (c === '[') {
|
|
594
|
+
const close = selector.indexOf(']', index + 1);
|
|
595
|
+
index = close < 0 ? selector.length : close;
|
|
596
|
+
if (depth === 0)
|
|
597
|
+
outer += '[]';
|
|
598
|
+
}
|
|
599
|
+
else if (c === '(')
|
|
600
|
+
depth++;
|
|
601
|
+
else if (c === ')')
|
|
602
|
+
depth = Math.max(0, depth - 1);
|
|
603
|
+
else if (depth === 0)
|
|
604
|
+
outer += c;
|
|
605
|
+
}
|
|
606
|
+
const out = [];
|
|
607
|
+
for (const match of outer.matchAll(/\.((?:\\[0-9a-fA-F]{1,6}\s?|\\[\s\S]|[\w-])+)/g))
|
|
608
|
+
out.push(unescapeCssIdent(match[1]));
|
|
609
|
+
return out;
|
|
610
|
+
}
|
|
611
|
+
/**
|
|
612
|
+
* A compiled stylesheet with the style rules nobody can use taken out: a rule (or one selector of
|
|
613
|
+
* its list) goes when a class it requires is not kept (`options.keep`). Rules without classes (the
|
|
614
|
+
* base: elements, `:root`, `*`), `@font-face`, `@keyframes`, `@property` and every other at-rule
|
|
615
|
+
* stay; grouping at-rules (`@media`, `@supports`, `@layer`…) left empty go too.
|
|
616
|
+
*/
|
|
617
|
+
export function purgeCss(css, options) {
|
|
618
|
+
const walk = (text, candidate) => {
|
|
619
|
+
let out = '';
|
|
620
|
+
let start = 0;
|
|
621
|
+
for (let index = 0; index < text.length; index++) {
|
|
622
|
+
const c = text[index];
|
|
623
|
+
if (c === '"' || c === "'") {
|
|
624
|
+
const close = text.indexOf(c, index + 1);
|
|
625
|
+
index = close < 0 ? text.length : close;
|
|
626
|
+
}
|
|
627
|
+
else if (c === ';') {
|
|
628
|
+
// A statement (`@layer theme, base;`, `@import …;`, `@charset …;`): kept as it is.
|
|
629
|
+
out += text.slice(start, index + 1);
|
|
630
|
+
start = index + 1;
|
|
631
|
+
}
|
|
632
|
+
else if (c === '}') {
|
|
633
|
+
start = index + 1;
|
|
634
|
+
}
|
|
635
|
+
else if (c === '{') {
|
|
636
|
+
const prelude = text.slice(start, index);
|
|
637
|
+
const trimmed = prelude.trim();
|
|
638
|
+
const end = blockEnd(text, index);
|
|
639
|
+
const body = text.slice(index + 1, end);
|
|
640
|
+
if (trimmed.startsWith('@')) {
|
|
641
|
+
if (GROUPING_AT_RULES.test(trimmed)) {
|
|
642
|
+
const inner = walk(body, candidate || options.scope === 'all' || /^@layer\s+utilities\b/i.test(trimmed));
|
|
643
|
+
if (inner.trim() !== '')
|
|
644
|
+
out += `${prelude}{${inner}}`;
|
|
645
|
+
}
|
|
646
|
+
else
|
|
647
|
+
out += `${prelude}{${body}}`;
|
|
648
|
+
}
|
|
649
|
+
else if (!candidate || body.includes('{')) {
|
|
650
|
+
out += `${prelude}{${body}}`;
|
|
651
|
+
}
|
|
652
|
+
else {
|
|
653
|
+
const kept = splitSelectorList(prelude).filter((selector) => requiredClasses(selector).every((name) => options.keep(name)));
|
|
654
|
+
if (kept.length > 0)
|
|
655
|
+
out += `${kept.join(',')}{${body}}`;
|
|
656
|
+
}
|
|
657
|
+
index = end;
|
|
658
|
+
start = end + 1;
|
|
659
|
+
}
|
|
660
|
+
}
|
|
661
|
+
return out + text.slice(start);
|
|
662
|
+
};
|
|
663
|
+
return walk(stripComments(css), options.scope === 'all');
|
|
664
|
+
}
|
|
665
|
+
/**
|
|
666
|
+
* The class-like tokens of a source text (a kit bundle): every run of characters between quotes,
|
|
667
|
+
* backticks, whitespace and template braces — a superset of the class names it can put on an
|
|
668
|
+
* element (`"inline-flex hover:bg-primary/90"` → `inline-flex`, `hover:bg-primary/90`).
|
|
669
|
+
*/
|
|
670
|
+
export function classTokensOf(source) {
|
|
671
|
+
const tokens = new Set();
|
|
672
|
+
for (const raw of source.split(/[\s"'`]|\$\{|\\[nrt]/)) {
|
|
673
|
+
if (raw === '' || raw.length > 200)
|
|
674
|
+
continue;
|
|
675
|
+
tokens.add(raw);
|
|
676
|
+
const trimmed = raw.replace(/^[{(,;]+|[,;)}]+$/g, '');
|
|
677
|
+
if (trimmed !== raw && trimmed !== '')
|
|
678
|
+
tokens.add(trimmed);
|
|
679
|
+
}
|
|
680
|
+
return tokens;
|
|
681
|
+
}
|
|
432
682
|
export const INLINE_ASSET_DEFAULTS = { limit: 128 * 1024, budget: 1024 * 1024 };
|
|
433
683
|
/** `data:` URI payload size in bytes (base64 decoded). */
|
|
434
684
|
function dataUriBytes(uri) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-styles.js","sourceRoot":"","sources":["../../../src/genui/sandbox-styles.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sandbox-styles.js","sourceRoot":"","sources":["../../../src/genui/sandbox-styles.ts"],"names":[],"mappings":"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"}
|