@refrakt-md/cli 0.11.2 → 0.12.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/dist/bin.js +35 -110
- package/dist/bin.js.map +1 -1
- package/dist/commands/config.js +35 -7
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/edit.d.ts.map +1 -1
- package/dist/commands/edit.js +30 -19
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/inspect.d.ts +1 -1
- package/dist/commands/inspect.d.ts.map +1 -1
- package/dist/commands/{package-validate.d.ts → plugin-validate.d.ts} +7 -7
- package/dist/commands/plugin-validate.d.ts.map +1 -0
- package/dist/commands/{package-validate.js → plugin-validate.js} +43 -43
- package/dist/commands/plugin-validate.js.map +1 -0
- package/dist/commands/plugins.d.ts.map +1 -1
- package/dist/commands/plugins.js +49 -7
- package/dist/commands/plugins.js.map +1 -1
- package/dist/commands/reference.js +5 -5
- package/dist/commands/reference.js.map +1 -1
- package/dist/commands/theme.d.ts.map +1 -1
- package/dist/commands/theme.js +62 -14
- package/dist/commands/theme.js.map +1 -1
- package/dist/config-file.d.ts +3 -1
- package/dist/config-file.d.ts.map +1 -1
- package/dist/config-file.js +4 -2
- package/dist/config-file.js.map +1 -1
- package/dist/lib/plugins.d.ts +1 -1
- package/dist/lib/plugins.d.ts.map +1 -1
- package/dist/lib/plugins.js +36 -24
- package/dist/lib/plugins.js.map +1 -1
- package/package.json +5 -5
- package/dist/commands/package-validate.d.ts.map +0 -1
- package/dist/commands/package-validate.js.map +0 -1
package/dist/commands/edit.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { resolve, dirname } from 'node:path';
|
|
2
2
|
import { existsSync } from 'node:fs';
|
|
3
|
+
import { resolveSite } from '@refrakt-md/transform/node';
|
|
3
4
|
import { loadRefraktConfigFile } from '../config-file.js';
|
|
4
5
|
export async function editCommand(options) {
|
|
5
6
|
const cwd = process.cwd();
|
|
@@ -7,18 +8,28 @@ export async function editCommand(options) {
|
|
|
7
8
|
let contentDir = options.contentDir;
|
|
8
9
|
let themeName;
|
|
9
10
|
let configDir = cwd;
|
|
10
|
-
let
|
|
11
|
+
let projectSite;
|
|
11
12
|
let projectConfigPath;
|
|
12
13
|
if (!contentDir) {
|
|
13
14
|
try {
|
|
14
15
|
const { path: cfgPath, config } = loadRefraktConfigFile(cwd);
|
|
15
16
|
projectConfigPath = cfgPath;
|
|
16
17
|
configDir = dirname(cfgPath);
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
// Use resolveSite so multi-site configs work too — picks the lone
|
|
19
|
+
// site when there's exactly one, throws with available names when
|
|
20
|
+
// multiple are declared and no --site flag is set.
|
|
21
|
+
const { site } = resolveSite(config);
|
|
22
|
+
contentDir = resolve(configDir, site.contentDir);
|
|
23
|
+
themeName = site.theme;
|
|
24
|
+
projectSite = site;
|
|
20
25
|
}
|
|
21
|
-
catch {
|
|
26
|
+
catch (err) {
|
|
27
|
+
const message = err.message;
|
|
28
|
+
if (/multiple sites/.test(message)) {
|
|
29
|
+
console.error(`Error: ${message}`);
|
|
30
|
+
console.error('Pass --content-dir to bypass site resolution, or pick a site explicitly.');
|
|
31
|
+
process.exit(1);
|
|
32
|
+
}
|
|
22
33
|
console.error('Error: No refrakt.config.json found. Specify --content-dir or run from a refrakt.md project.');
|
|
23
34
|
process.exit(1);
|
|
24
35
|
}
|
|
@@ -33,30 +44,30 @@ export async function editCommand(options) {
|
|
|
33
44
|
// Resolve theme config, CSS, and Svelte entry
|
|
34
45
|
let { themeConfig, themeCssPath, themeSveltePath } = await resolveTheme(themeName, configDir);
|
|
35
46
|
// Merge project-level custom icons into the theme's global icon group
|
|
36
|
-
if (
|
|
47
|
+
if (projectSite?.icons && Object.keys(projectSite.icons).length > 0) {
|
|
37
48
|
themeConfig = {
|
|
38
49
|
...themeConfig,
|
|
39
50
|
icons: {
|
|
40
51
|
...themeConfig.icons,
|
|
41
|
-
global: { ...themeConfig.icons.global, ...
|
|
52
|
+
global: { ...themeConfig.icons.global, ...projectSite.icons },
|
|
42
53
|
},
|
|
43
54
|
};
|
|
44
55
|
}
|
|
45
56
|
// Merge project-level tint and background presets
|
|
46
|
-
if (
|
|
47
|
-
themeConfig = { ...themeConfig, tints: { ...themeConfig.tints, ...
|
|
57
|
+
if (projectSite?.tints) {
|
|
58
|
+
themeConfig = { ...themeConfig, tints: { ...themeConfig.tints, ...projectSite.tints } };
|
|
48
59
|
}
|
|
49
|
-
if (
|
|
50
|
-
themeConfig = { ...themeConfig, backgrounds: { ...themeConfig.backgrounds, ...
|
|
60
|
+
if (projectSite?.backgrounds) {
|
|
61
|
+
themeConfig = { ...themeConfig, backgrounds: { ...themeConfig.backgrounds, ...projectSite.backgrounds } };
|
|
51
62
|
}
|
|
52
|
-
// Load
|
|
63
|
+
// Load plugins for editor palette + preview
|
|
53
64
|
let extraTags;
|
|
54
65
|
let communityRuneEntries;
|
|
55
|
-
if (
|
|
66
|
+
if (projectSite?.plugins?.length) {
|
|
56
67
|
try {
|
|
57
|
-
const {
|
|
58
|
-
const loaded = await Promise.all(
|
|
59
|
-
const merged =
|
|
68
|
+
const { loadPlugin, mergePlugins, runes: coreRuneMap, schemaContentModels, serializeContentModel } = await import('@refrakt-md/runes');
|
|
69
|
+
const loaded = await Promise.all(projectSite.plugins.map((name) => loadPlugin(name)));
|
|
70
|
+
const merged = mergePlugins(loaded, new Set(Object.keys(coreRuneMap)), projectSite.runes?.prefer);
|
|
60
71
|
extraTags = merged.tags;
|
|
61
72
|
// Merge community theme rune configs into themeConfig
|
|
62
73
|
if (Object.keys(merged.themeRunes).length > 0) {
|
|
@@ -114,7 +125,7 @@ export async function editCommand(options) {
|
|
|
114
125
|
}
|
|
115
126
|
}
|
|
116
127
|
catch (err) {
|
|
117
|
-
console.warn('Warning: Could not load
|
|
128
|
+
console.warn('Warning: Could not load plugins:', err.message);
|
|
118
129
|
}
|
|
119
130
|
}
|
|
120
131
|
// Resolve static assets directory (SvelteKit convention: {projectRoot}/static/)
|
|
@@ -134,8 +145,8 @@ export async function editCommand(options) {
|
|
|
134
145
|
devServer: options.devServer,
|
|
135
146
|
open: !options.noOpen,
|
|
136
147
|
configPath: projectConfigPath,
|
|
137
|
-
routeRules:
|
|
138
|
-
|
|
148
|
+
routeRules: projectSite?.routeRules,
|
|
149
|
+
pluginNames: projectSite?.plugins ?? [],
|
|
139
150
|
extraTags,
|
|
140
151
|
communityRunes: communityRuneEntries,
|
|
141
152
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAS1D,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAoB;IACrD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,sBAAsB;IACtB,IAAI,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACpC,IAAI,SAA6B,CAAC;IAClC,IAAI,SAAS,GAAG,GAAG,CAAC;IACpB,IAAI,
|
|
1
|
+
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ export interface InspectDeps {
|
|
|
17
17
|
}) => string;
|
|
18
18
|
extractSelectors: (node: any, prefix: string) => string[];
|
|
19
19
|
baseConfig: ThemeConfig;
|
|
20
|
-
/** Fixture strings from
|
|
20
|
+
/** Fixture strings from plugins (keyed by rune name) */
|
|
21
21
|
packageFixtures?: Record<string, string>;
|
|
22
22
|
}
|
|
23
23
|
export interface InspectOptions {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAiCzD,2DAA2D;AAC3D,MAAM,WAAW,WAAW;IAC3B,OAAO,EAAE;QAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,GAAG,CAAC;QAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,KAAK,GAAG,CAAA;KAAE,CAAC;IACvF,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,aAAa,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC;IACtC,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,EAAE,CAAC;IACrC,eAAe,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;IAC7D,YAAY,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,MAAM,CAAC;IACpE,gBAAgB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IAC1D,UAAU,EAAE,WAAW,CAAC;IACxB,
|
|
1
|
+
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAiCzD,2DAA2D;AAC3D,MAAM,WAAW,WAAW;IAC3B,OAAO,EAAE;QAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,GAAG,CAAC;QAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,KAAK,GAAG,CAAA;KAAE,CAAC;IACvF,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,aAAa,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC;IACtC,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,EAAE,CAAC;IACrC,eAAe,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;IAC7D,YAAY,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,MAAM,CAAC;IACpE,gBAAgB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IAC1D,UAAU,EAAE,WAAW,CAAC;IACxB,wDAAwD;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,GAAG,EAAE,OAAO,CAAC;IACb,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,wBAAsB,cAAc,CACnC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,WAAW,GACf,OAAO,CAAC,IAAI,CAAC,CAwFf"}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
export interface
|
|
2
|
-
/** Path to the
|
|
3
|
-
|
|
1
|
+
export interface PluginValidateOptions {
|
|
2
|
+
/** Path to the plugin directory (default: cwd) */
|
|
3
|
+
pluginDir?: string;
|
|
4
4
|
/** Whether to output JSON */
|
|
5
5
|
json?: boolean;
|
|
6
6
|
}
|
|
7
7
|
/**
|
|
8
|
-
* Validate a
|
|
8
|
+
* Validate a plugin before publishing.
|
|
9
9
|
*
|
|
10
10
|
* Checks:
|
|
11
11
|
* 1. package.json exists and has required fields
|
|
12
|
-
* 2.
|
|
12
|
+
* 2. Plugin module exports a valid Plugin object
|
|
13
13
|
* 3. Each rune has a valid transform (Markdoc Schema)
|
|
14
14
|
* 4. Fixture strings are non-empty if provided
|
|
15
15
|
* 5. Attribute schemas are well-formed if provided
|
|
16
16
|
* 6. Theme config (RuneConfig entries) validates if provided
|
|
17
17
|
* 7. Fixture files exist for runes that declare them
|
|
18
18
|
*/
|
|
19
|
-
export declare function
|
|
20
|
-
//# sourceMappingURL=
|
|
19
|
+
export declare function pluginValidateCommand(opts: PluginValidateOptions): Promise<void>;
|
|
20
|
+
//# sourceMappingURL=plugin-validate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-validate.d.ts","sourceRoot":"","sources":["../../src/commands/plugin-validate.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,qBAAqB;IACrC,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AASD;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CActF"}
|
|
@@ -2,20 +2,20 @@ import { readFileSync, existsSync } from 'fs';
|
|
|
2
2
|
import { resolve, join, relative, dirname } from 'path';
|
|
3
3
|
import { discoverPlugins } from '../lib/plugins.js';
|
|
4
4
|
/**
|
|
5
|
-
* Validate a
|
|
5
|
+
* Validate a plugin before publishing.
|
|
6
6
|
*
|
|
7
7
|
* Checks:
|
|
8
8
|
* 1. package.json exists and has required fields
|
|
9
|
-
* 2.
|
|
9
|
+
* 2. Plugin module exports a valid Plugin object
|
|
10
10
|
* 3. Each rune has a valid transform (Markdoc Schema)
|
|
11
11
|
* 4. Fixture strings are non-empty if provided
|
|
12
12
|
* 5. Attribute schemas are well-formed if provided
|
|
13
13
|
* 6. Theme config (RuneConfig entries) validates if provided
|
|
14
14
|
* 7. Fixture files exist for runes that declare them
|
|
15
15
|
*/
|
|
16
|
-
export async function
|
|
17
|
-
const
|
|
18
|
-
const result = await
|
|
16
|
+
export async function pluginValidateCommand(opts) {
|
|
17
|
+
const pluginDir = resolve(opts.pluginDir ?? process.cwd());
|
|
18
|
+
const result = await validatePlugin(pluginDir);
|
|
19
19
|
if (opts.json) {
|
|
20
20
|
console.log(JSON.stringify(result, null, 2));
|
|
21
21
|
}
|
|
@@ -26,14 +26,14 @@ export async function packageValidateCommand(opts) {
|
|
|
26
26
|
process.exit(1);
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
|
-
async function
|
|
29
|
+
async function validatePlugin(pluginDir) {
|
|
30
30
|
const errors = [];
|
|
31
31
|
const warnings = [];
|
|
32
32
|
// Step 1: Check package.json
|
|
33
|
-
const pkgJsonPath = join(
|
|
33
|
+
const pkgJsonPath = join(pluginDir, 'package.json');
|
|
34
34
|
if (!existsSync(pkgJsonPath)) {
|
|
35
35
|
errors.push({ path: 'package.json', message: 'File not found' });
|
|
36
|
-
return { valid: false,
|
|
36
|
+
return { valid: false, pluginName: '<unknown>', errors, warnings };
|
|
37
37
|
}
|
|
38
38
|
let pkgJson;
|
|
39
39
|
try {
|
|
@@ -41,7 +41,7 @@ async function validatePackage(packageDir) {
|
|
|
41
41
|
}
|
|
42
42
|
catch (err) {
|
|
43
43
|
errors.push({ path: 'package.json', message: `Invalid JSON: ${err.message}` });
|
|
44
|
-
return { valid: false,
|
|
44
|
+
return { valid: false, pluginName: '<unknown>', errors, warnings };
|
|
45
45
|
}
|
|
46
46
|
const npmName = typeof pkgJson.name === 'string' ? pkgJson.name : '<unknown>';
|
|
47
47
|
if (!pkgJson.name || typeof pkgJson.name !== 'string') {
|
|
@@ -58,38 +58,38 @@ async function validatePackage(packageDir) {
|
|
|
58
58
|
// Step 2: Try to load the package module
|
|
59
59
|
let pkg = null;
|
|
60
60
|
const entryPoints = [
|
|
61
|
-
join(
|
|
62
|
-
join(
|
|
63
|
-
join(
|
|
64
|
-
join(
|
|
61
|
+
join(pluginDir, 'dist', 'index.js'),
|
|
62
|
+
join(pluginDir, 'src', 'index.ts'),
|
|
63
|
+
join(pluginDir, 'src', 'index.js'),
|
|
64
|
+
join(pluginDir, 'index.js'),
|
|
65
65
|
];
|
|
66
66
|
for (const entry of entryPoints) {
|
|
67
67
|
if (existsSync(entry)) {
|
|
68
68
|
try {
|
|
69
69
|
const mod = await import(entry);
|
|
70
|
-
pkg =
|
|
70
|
+
pkg = findPluginExport(mod);
|
|
71
71
|
break;
|
|
72
72
|
}
|
|
73
73
|
catch (err) {
|
|
74
74
|
// Try next entry point
|
|
75
|
-
warnings.push({ path: relative(
|
|
75
|
+
warnings.push({ path: relative(pluginDir, entry), message: `Import failed: ${err.message}` });
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
79
|
if (!pkg) {
|
|
80
|
-
errors.push({ path: 'exports', message: 'Could not find a valid
|
|
81
|
-
return { valid: false,
|
|
80
|
+
errors.push({ path: 'exports', message: 'Could not find a valid Plugin export. Build the package first (npm run build) or ensure src/index.ts exports a Plugin object.' });
|
|
81
|
+
return { valid: false, pluginName: npmName, errors, warnings };
|
|
82
82
|
}
|
|
83
|
-
// Step 3: Validate
|
|
83
|
+
// Step 3: Validate Plugin structure
|
|
84
84
|
if (!pkg.name || typeof pkg.name !== 'string') {
|
|
85
|
-
errors.push({ path: '
|
|
85
|
+
errors.push({ path: 'Plugin.name', message: 'Required and must be a non-empty string' });
|
|
86
86
|
}
|
|
87
87
|
if (!pkg.version || typeof pkg.version !== 'string') {
|
|
88
|
-
errors.push({ path: '
|
|
88
|
+
errors.push({ path: 'Plugin.version', message: 'Required and must be a non-empty string' });
|
|
89
89
|
}
|
|
90
90
|
if (!pkg.runes || typeof pkg.runes !== 'object' || Object.keys(pkg.runes).length === 0) {
|
|
91
|
-
errors.push({ path: '
|
|
92
|
-
return { valid: false,
|
|
91
|
+
errors.push({ path: 'Plugin.runes', message: 'Must define at least one rune' });
|
|
92
|
+
return { valid: false, pluginName: npmName, errors, warnings };
|
|
93
93
|
}
|
|
94
94
|
// Step 4: Validate each rune entry
|
|
95
95
|
for (const [runeName, entry] of Object.entries(pkg.runes)) {
|
|
@@ -128,7 +128,7 @@ async function validatePackage(packageDir) {
|
|
|
128
128
|
for (const [runeName, ext] of Object.entries(pkg.extends)) {
|
|
129
129
|
if (ext.schema) {
|
|
130
130
|
for (const [attrName, attrDef] of Object.entries(ext.schema)) {
|
|
131
|
-
|
|
131
|
+
validatePluginAttribute(attrName, attrDef, `extends.${runeName}.schema`, errors);
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
134
|
}
|
|
@@ -157,19 +157,19 @@ async function validatePackage(packageDir) {
|
|
|
157
157
|
});
|
|
158
158
|
}
|
|
159
159
|
// Step 10: Validate the cli-plugin export shape if the package contributes one.
|
|
160
|
-
const cliPluginResult = await validateCliPlugin(
|
|
160
|
+
const cliPluginResult = await validateCliPlugin(pluginDir, pkgJson, npmName);
|
|
161
161
|
errors.push(...cliPluginResult.errors);
|
|
162
162
|
warnings.push(...cliPluginResult.warnings);
|
|
163
|
-
return { valid: errors.length === 0,
|
|
163
|
+
return { valid: errors.length === 0, pluginName: npmName, errors, warnings };
|
|
164
164
|
}
|
|
165
165
|
/** Validate a package's `cli-plugin` export when present.
|
|
166
166
|
*
|
|
167
167
|
* Skipped silently when the package does not declare a cli-plugin export —
|
|
168
|
-
* most
|
|
168
|
+
* most plugins don't ship CLI commands. When the export exists, this
|
|
169
169
|
* checks structural integrity (namespace, commands, schemas) and warns when
|
|
170
170
|
* optional MCP-friendly fields are missing.
|
|
171
171
|
*/
|
|
172
|
-
async function validateCliPlugin(
|
|
172
|
+
async function validateCliPlugin(pluginDir, pkgJson, npmName) {
|
|
173
173
|
const errors = [];
|
|
174
174
|
const warnings = [];
|
|
175
175
|
const exports = pkgJson.exports;
|
|
@@ -179,10 +179,10 @@ async function validateCliPlugin(packageDir, pkgJson, npmName) {
|
|
|
179
179
|
return { errors, warnings };
|
|
180
180
|
}
|
|
181
181
|
const candidates = [
|
|
182
|
-
join(
|
|
183
|
-
join(
|
|
184
|
-
join(
|
|
185
|
-
join(
|
|
182
|
+
join(pluginDir, 'dist', 'cli-plugin.js'),
|
|
183
|
+
join(pluginDir, 'src', 'cli-plugin.js'),
|
|
184
|
+
join(pluginDir, 'src', 'cli-plugin.ts'),
|
|
185
|
+
join(pluginDir, 'cli-plugin.js'),
|
|
186
186
|
];
|
|
187
187
|
let plugin = null;
|
|
188
188
|
let importError;
|
|
@@ -266,17 +266,17 @@ async function validateCliPlugin(packageDir, pkgJson, npmName) {
|
|
|
266
266
|
// Namespace-clash check against other plugins discovered in the same project.
|
|
267
267
|
try {
|
|
268
268
|
// Discover from the parent of the package directory (so its node_modules
|
|
269
|
-
// includes peer packages); falling back to
|
|
269
|
+
// includes peer packages); falling back to pluginDir is fine when the
|
|
270
270
|
// package is published rather than in a workspace.
|
|
271
|
-
const discoveryRoot = dirname(
|
|
271
|
+
const discoveryRoot = dirname(pluginDir);
|
|
272
272
|
const others = await discoverPlugins({ cwd: discoveryRoot, warn: false });
|
|
273
273
|
for (const other of others) {
|
|
274
|
-
if (other.
|
|
274
|
+
if (other.pluginName === npmName)
|
|
275
275
|
continue;
|
|
276
276
|
if (other.namespace === plugin.namespace) {
|
|
277
277
|
warnings.push({
|
|
278
278
|
path: 'cli-plugin.namespace',
|
|
279
|
-
message: `Namespace "${plugin.namespace}" is already provided by ${other.
|
|
279
|
+
message: `Namespace "${plugin.namespace}" is already provided by ${other.pluginName} in this project`,
|
|
280
280
|
});
|
|
281
281
|
}
|
|
282
282
|
}
|
|
@@ -329,7 +329,7 @@ function validateRuneEntry(runeName, entry, errors, warnings) {
|
|
|
329
329
|
// schema validation
|
|
330
330
|
if (entry.schema) {
|
|
331
331
|
for (const [attrName, attrDef] of Object.entries(entry.schema)) {
|
|
332
|
-
|
|
332
|
+
validatePluginAttribute(attrName, attrDef, `${prefix}.schema`, errors);
|
|
333
333
|
}
|
|
334
334
|
}
|
|
335
335
|
// aliases validation
|
|
@@ -350,7 +350,7 @@ function validateRuneEntry(runeName, entry, errors, warnings) {
|
|
|
350
350
|
errors.push({ path: `${prefix}.description`, message: 'Must be a string' });
|
|
351
351
|
}
|
|
352
352
|
}
|
|
353
|
-
function
|
|
353
|
+
function validatePluginAttribute(attrName, attrDef, parentPath, errors) {
|
|
354
354
|
const path = `${parentPath}.${attrName}`;
|
|
355
355
|
if (typeof attrDef !== 'object' || attrDef === null) {
|
|
356
356
|
errors.push({ path, message: 'Must be an object' });
|
|
@@ -378,20 +378,20 @@ function isChildRune(entry) {
|
|
|
378
378
|
const schema = entry.transform;
|
|
379
379
|
return schema.selfClosing === true || schema.inline === true;
|
|
380
380
|
}
|
|
381
|
-
function
|
|
381
|
+
function findPluginExport(mod) {
|
|
382
382
|
// Check default export
|
|
383
|
-
if (mod.default &&
|
|
383
|
+
if (mod.default && isPlugin(mod.default)) {
|
|
384
384
|
return mod.default;
|
|
385
385
|
}
|
|
386
386
|
// Check named exports
|
|
387
387
|
for (const value of Object.values(mod)) {
|
|
388
|
-
if (
|
|
388
|
+
if (isPlugin(value)) {
|
|
389
389
|
return value;
|
|
390
390
|
}
|
|
391
391
|
}
|
|
392
392
|
return null;
|
|
393
393
|
}
|
|
394
|
-
function
|
|
394
|
+
function isPlugin(value) {
|
|
395
395
|
if (typeof value !== 'object' || value === null)
|
|
396
396
|
return false;
|
|
397
397
|
const obj = value;
|
|
@@ -401,7 +401,7 @@ function escapeRegex(s) {
|
|
|
401
401
|
return s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
402
402
|
}
|
|
403
403
|
function printValidationResult(result) {
|
|
404
|
-
console.log(`Validating
|
|
404
|
+
console.log(`Validating plugin: ${result.pluginName}\n`);
|
|
405
405
|
if (result.valid && result.warnings.length === 0) {
|
|
406
406
|
console.log(' Package: OK');
|
|
407
407
|
console.log('\nAll checks passed.');
|
|
@@ -429,4 +429,4 @@ function printValidationResult(result) {
|
|
|
429
429
|
console.log('\nPackage validation failed.');
|
|
430
430
|
}
|
|
431
431
|
}
|
|
432
|
-
//# sourceMappingURL=
|
|
432
|
+
//# sourceMappingURL=plugin-validate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-validate.js","sourceRoot":"","sources":["../../src/commands/plugin-validate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/commands/plugins.ts"],"names":[],"mappings":"AAIA,6CAA6C;AAC7C,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/commands/plugins.ts"],"names":[],"mappings":"AAIA,6CAA6C;AAC7C,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBrE;AAwHD;4EAC4E;AAC5E,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAezD"}
|
package/dist/commands/plugins.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { discoverPlugins } from '../lib/plugins.js';
|
|
2
|
-
const SUBCOMMANDS = ['list'];
|
|
2
|
+
const SUBCOMMANDS = ['list', 'validate'];
|
|
3
3
|
/** Entry point for `refrakt plugins ...`. */
|
|
4
4
|
export async function runPluginsCommand(args) {
|
|
5
5
|
const sub = args[0];
|
|
@@ -11,10 +11,47 @@ export async function runPluginsCommand(args) {
|
|
|
11
11
|
await runPluginsList(args.slice(1));
|
|
12
12
|
return;
|
|
13
13
|
}
|
|
14
|
+
if (sub === 'validate') {
|
|
15
|
+
await runPluginsValidate(args.slice(1));
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
14
18
|
console.error(`Error: Unknown plugins subcommand "${sub}"\n`);
|
|
15
19
|
printPluginsUsage();
|
|
16
20
|
process.exit(1);
|
|
17
21
|
}
|
|
22
|
+
/** `refrakt plugins validate [dir]` — pre-publish lint for a plugin. */
|
|
23
|
+
async function runPluginsValidate(args) {
|
|
24
|
+
let pluginDir;
|
|
25
|
+
let json = false;
|
|
26
|
+
for (let i = 0; i < args.length; i++) {
|
|
27
|
+
const arg = args[i];
|
|
28
|
+
if (arg === '--json') {
|
|
29
|
+
json = true;
|
|
30
|
+
}
|
|
31
|
+
else if (arg === '--site') {
|
|
32
|
+
args[++i];
|
|
33
|
+
}
|
|
34
|
+
else if (arg === '--help' || arg === '-h') {
|
|
35
|
+
printPluginsUsage();
|
|
36
|
+
process.exit(0);
|
|
37
|
+
}
|
|
38
|
+
else if (arg.startsWith('-')) {
|
|
39
|
+
console.error(`Error: Unknown flag "${arg}"\n`);
|
|
40
|
+
printPluginsUsage();
|
|
41
|
+
process.exit(1);
|
|
42
|
+
}
|
|
43
|
+
else if (!pluginDir) {
|
|
44
|
+
pluginDir = arg;
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
console.error(`Error: Unexpected argument "${arg}"\n`);
|
|
48
|
+
printPluginsUsage();
|
|
49
|
+
process.exit(1);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
const { pluginValidateCommand } = await import('./plugin-validate.js');
|
|
53
|
+
await pluginValidateCommand({ pluginDir, json });
|
|
54
|
+
}
|
|
18
55
|
/** `refrakt plugins list` — text or JSON output. */
|
|
19
56
|
async function runPluginsList(args) {
|
|
20
57
|
const format = parseFormat(args);
|
|
@@ -30,10 +67,10 @@ async function runPluginsList(args) {
|
|
|
30
67
|
}
|
|
31
68
|
console.log('\nInstalled refrakt plugins:\n');
|
|
32
69
|
const nsWidth = Math.max(...plugins.map((p) => p.namespace.length), 8);
|
|
33
|
-
const pkgWidth = Math.max(...plugins.map((p) => `${p.
|
|
70
|
+
const pkgWidth = Math.max(...plugins.map((p) => `${p.pluginName}@${p.packageVersion}`.length), 12);
|
|
34
71
|
for (const plugin of plugins) {
|
|
35
72
|
const ns = plugin.namespace.padEnd(nsWidth);
|
|
36
|
-
const pkg = `${plugin.
|
|
73
|
+
const pkg = `${plugin.pluginName}@${plugin.packageVersion}`.padEnd(pkgWidth);
|
|
37
74
|
const count = `${plugin.commands.length} ${plugin.commands.length === 1 ? 'command' : 'commands'}`;
|
|
38
75
|
console.log(` ${ns} ${pkg} ${count}`);
|
|
39
76
|
const cmdNames = plugin.commands.map((c) => c.name).join(', ');
|
|
@@ -64,7 +101,7 @@ function parseFormat(args) {
|
|
|
64
101
|
function toJson(plugin) {
|
|
65
102
|
return {
|
|
66
103
|
namespace: plugin.namespace,
|
|
67
|
-
|
|
104
|
+
pluginName: plugin.pluginName,
|
|
68
105
|
packageVersion: plugin.packageVersion,
|
|
69
106
|
source: plugin.source,
|
|
70
107
|
description: plugin.description,
|
|
@@ -83,14 +120,19 @@ Usage: refrakt plugins <subcommand> [options]
|
|
|
83
120
|
|
|
84
121
|
Subcommands:
|
|
85
122
|
list List installed plugins and their commands
|
|
123
|
+
validate [dir] Validate a plugin before publishing
|
|
86
124
|
|
|
87
125
|
Options:
|
|
88
|
-
--format <fmt> Output format: text (default) or json
|
|
89
|
-
--json Shorthand for --format=json (list)
|
|
126
|
+
--format <fmt> Output format: text (default) or json (list)
|
|
127
|
+
--json Shorthand for --format=json (list, validate)
|
|
128
|
+
<dir> Plugin directory (validate; default: current directory)
|
|
90
129
|
|
|
91
130
|
Examples:
|
|
92
131
|
refrakt plugins list
|
|
93
132
|
refrakt plugins list --format json
|
|
133
|
+
refrakt plugins validate
|
|
134
|
+
refrakt plugins validate ./plugins/marketing
|
|
135
|
+
refrakt plugins validate --json
|
|
94
136
|
`);
|
|
95
137
|
void SUBCOMMANDS;
|
|
96
138
|
}
|
|
@@ -109,7 +151,7 @@ export async function appendPluginsToHelp() {
|
|
|
109
151
|
console.log(`Installed plugins:`);
|
|
110
152
|
const width = Math.max(...plugins.map((p) => p.namespace.length));
|
|
111
153
|
for (const plugin of plugins) {
|
|
112
|
-
const desc = plugin.description ?? plugin.
|
|
154
|
+
const desc = plugin.description ?? plugin.pluginName;
|
|
113
155
|
console.log(` ${plugin.namespace.padEnd(width + 2)} ${desc}`);
|
|
114
156
|
}
|
|
115
157
|
console.log();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../src/commands/plugins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAyB,MAAM,mBAAmB,CAAC;AAE3E,MAAM,WAAW,GAAG,CAAC,MAAM,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../src/commands/plugins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAyB,MAAM,mBAAmB,CAAC;AAE3E,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,UAAU,CAAU,CAAC;AAElD,6CAA6C;AAC7C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAc;IACrD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAEpB,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC9C,iBAAiB,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;QACpB,MAAM,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,OAAO;IACR,CAAC;IAED,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;QACxB,MAAM,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,OAAO;IACR,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,sCAAsC,GAAG,KAAK,CAAC,CAAC;IAC9D,iBAAiB,EAAE,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,wEAAwE;AACxE,KAAK,UAAU,kBAAkB,CAAC,IAAc;IAC/C,IAAI,SAA6B,CAAC;IAClC,IAAI,IAAI,GAAG,KAAK,CAAC;IAEjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;YACtB,IAAI,GAAG,IAAI,CAAC;QACb,CAAC;aAAM,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACX,CAAC;aAAM,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC7C,iBAAiB,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,wBAAwB,GAAG,KAAK,CAAC,CAAC;YAChD,iBAAiB,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACvB,SAAS,GAAG,GAAG,CAAC;QACjB,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,KAAK,CAAC,CAAC;YACvD,iBAAiB,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;IACF,CAAC;IAED,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IACvE,MAAM,qBAAqB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,oDAAoD;AACpD,KAAK,UAAU,cAAc,CAAC,IAAc;IAC3C,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,OAAO,GAAG,MAAM,eAAe,EAAE,CAAC;IAExC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO;IACR,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;QAC9E,OAAO;IACR,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IACnG,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,MAAM,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7E,MAAM,KAAK,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QACnG,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,iBAAiB,QAAQ,EAAE,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,WAAW,CAAC,IAAc;IAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,UAAU,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAO,IAAI,CAAC;YACpD,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,KAAK,eAAe;YAAE,OAAO,MAAM,CAAC;QACzC,IAAI,CAAC,KAAK,eAAe;YAAE,OAAO,MAAM,CAAC;QACzC,IAAI,CAAC,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAC;IACnC,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,MAAM,CAAC,MAAwB;IACvC,OAAO;QACN,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACrC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,cAAc,EAAE,CAAC,CAAC,WAAW,KAAK,SAAS;YAC3C,eAAe,EAAE,CAAC,CAAC,YAAY,KAAK,SAAS;YAC7C,aAAa,EAAE,CAAC,CAAC,UAAU,KAAK,SAAS;SACzC,CAAC,CAAC;KACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB;IACzB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;CAkBZ,CAAC,CAAC;IACF,KAAK,WAAW,CAAC;AAClB,CAAC;AAED;4EAC4E;AAC5E,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACxC,IAAI,OAA2B,CAAC;IAChC,IAAI,CAAC;QACJ,OAAO,GAAG,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;IACR,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACjC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAClE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AACf,CAAC"}
|