@a1st/aix-schema 0.0.4 → 0.0.12
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 +6 -6
- package/dist/config.d.ts +8 -8
- package/dist/editors.d.ts +2 -2
- package/dist/editors.d.ts.map +1 -1
- package/dist/editors.js +1 -1
- package/dist/editors.js.map +1 -1
- package/dist/factory.d.ts.map +1 -1
- package/dist/factory.js +0 -2
- package/dist/factory.js.map +1 -1
- package/dist/normalize.d.ts +29 -0
- package/dist/normalize.d.ts.map +1 -1
- package/dist/normalize.js +58 -6
- package/dist/normalize.js.map +1 -1
- package/dist/skill.d.ts +7 -6
- package/dist/skill.d.ts.map +1 -1
- package/dist/skill.js +3 -2
- package/dist/skill.js.map +1 -1
- package/package.json +14 -7
- package/schema.json +1246 -1328
package/README.md
CHANGED
|
@@ -18,11 +18,11 @@ This package defines the structure and validation for `ai.json` files. It's used
|
|
|
18
18
|
|
|
19
19
|
```typescript
|
|
20
20
|
import {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
} from
|
|
21
|
+
parseConfig, // Parse and validate a full ai.json config
|
|
22
|
+
parseLocalConfig, // Parse config allowing local-only fields
|
|
23
|
+
aiJsonSchema, // Zod schema for ai.json
|
|
24
|
+
type AiJsonConfig, // TypeScript type for validated config
|
|
25
|
+
} from "@a1st/aix-schema";
|
|
26
26
|
```
|
|
27
27
|
|
|
28
28
|
## JSON Schema
|
|
@@ -31,7 +31,7 @@ The package exports `schema.json` for IDE integration:
|
|
|
31
31
|
|
|
32
32
|
```json
|
|
33
33
|
{
|
|
34
|
-
|
|
34
|
+
"$schema": "node_modules/@a1st/aix-schema/schema.json"
|
|
35
35
|
}
|
|
36
36
|
```
|
|
37
37
|
|
package/dist/config.d.ts
CHANGED
|
@@ -479,7 +479,7 @@ export declare const aiJsonConfigSchema: z.ZodObject<z.objectUtil.extendShape<{
|
|
|
479
479
|
content?: string | undefined;
|
|
480
480
|
argumentHint?: string | undefined;
|
|
481
481
|
}>]>, z.ZodLiteral<false>]>>>>;
|
|
482
|
-
editors: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodEnum<["windsurf", "cursor", "claude-code", "
|
|
482
|
+
editors: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodEnum<["windsurf", "cursor", "claude-code", "copilot", "zed", "neovim"]>, z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
483
483
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
484
484
|
rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
485
485
|
description: z.ZodOptional<z.ZodString>;
|
|
@@ -4129,7 +4129,7 @@ export declare const aiJsonConfigSchema: z.ZodObject<z.objectUtil.extendShape<{
|
|
|
4129
4129
|
globs?: string[] | undefined;
|
|
4130
4130
|
content?: string | undefined;
|
|
4131
4131
|
}> | undefined;
|
|
4132
|
-
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "
|
|
4132
|
+
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "copilot" | "zed" | "neovim" | Record<string, {
|
|
4133
4133
|
enabled: boolean;
|
|
4134
4134
|
rules?: Record<string, string | false | {
|
|
4135
4135
|
path?: string | undefined;
|
|
@@ -5082,7 +5082,7 @@ export declare const aiJsonConfigSchema: z.ZodObject<z.objectUtil.extendShape<{
|
|
|
5082
5082
|
globs?: string[] | undefined;
|
|
5083
5083
|
content?: string | undefined;
|
|
5084
5084
|
}> | undefined;
|
|
5085
|
-
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "
|
|
5085
|
+
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "copilot" | "zed" | "neovim" | Record<string, {
|
|
5086
5086
|
enabled?: boolean | undefined;
|
|
5087
5087
|
rules?: Record<string, string | false | {
|
|
5088
5088
|
path?: string | undefined;
|
|
@@ -5593,7 +5593,7 @@ export declare const localConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
5593
5593
|
content?: string | undefined;
|
|
5594
5594
|
argumentHint?: string | undefined;
|
|
5595
5595
|
}>]>, z.ZodLiteral<false>]>>>;
|
|
5596
|
-
editors: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodEnum<["windsurf", "cursor", "claude-code", "
|
|
5596
|
+
editors: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodEnum<["windsurf", "cursor", "claude-code", "copilot", "zed", "neovim"]>, z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
5597
5597
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
5598
5598
|
rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
5599
5599
|
description: z.ZodOptional<z.ZodString>;
|
|
@@ -9242,7 +9242,7 @@ export declare const localConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
9242
9242
|
globs?: string[] | undefined;
|
|
9243
9243
|
content?: string | undefined;
|
|
9244
9244
|
}> | undefined;
|
|
9245
|
-
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "
|
|
9245
|
+
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "copilot" | "zed" | "neovim" | Record<string, {
|
|
9246
9246
|
enabled: boolean;
|
|
9247
9247
|
rules?: Record<string, string | false | {
|
|
9248
9248
|
path?: string | undefined;
|
|
@@ -10194,7 +10194,7 @@ export declare const localConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
10194
10194
|
globs?: string[] | undefined;
|
|
10195
10195
|
content?: string | undefined;
|
|
10196
10196
|
}> | undefined;
|
|
10197
|
-
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "
|
|
10197
|
+
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "copilot" | "zed" | "neovim" | Record<string, {
|
|
10198
10198
|
enabled?: boolean | undefined;
|
|
10199
10199
|
rules?: Record<string, string | false | {
|
|
10200
10200
|
path?: string | undefined;
|
|
@@ -11146,7 +11146,7 @@ export declare const localConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
11146
11146
|
globs?: string[] | undefined;
|
|
11147
11147
|
content?: string | undefined;
|
|
11148
11148
|
}> | undefined;
|
|
11149
|
-
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "
|
|
11149
|
+
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "copilot" | "zed" | "neovim" | Record<string, {
|
|
11150
11150
|
enabled: boolean;
|
|
11151
11151
|
rules?: Record<string, string | false | {
|
|
11152
11152
|
path?: string | undefined;
|
|
@@ -12098,7 +12098,7 @@ export declare const localConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
12098
12098
|
globs?: string[] | undefined;
|
|
12099
12099
|
content?: string | undefined;
|
|
12100
12100
|
}> | undefined;
|
|
12101
|
-
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "
|
|
12101
|
+
}>, "strip"> | ("windsurf" | "cursor" | "claude-code" | "copilot" | "zed" | "neovim" | Record<string, {
|
|
12102
12102
|
enabled?: boolean | undefined;
|
|
12103
12103
|
rules?: Record<string, string | false | {
|
|
12104
12104
|
path?: string | undefined;
|
package/dist/editors.d.ts
CHANGED
|
@@ -617,13 +617,13 @@ export declare const claudeCodeConfigSchema: z.ZodObject<z.objectUtil.extendShap
|
|
|
617
617
|
}> | undefined;
|
|
618
618
|
permissions?: Record<string, unknown> | undefined;
|
|
619
619
|
}>;
|
|
620
|
-
export declare const editorEnum: z.ZodEnum<["windsurf", "cursor", "claude-code", "
|
|
620
|
+
export declare const editorEnum: z.ZodEnum<["windsurf", "cursor", "claude-code", "copilot", "zed", "neovim"]>;
|
|
621
621
|
/**
|
|
622
622
|
* Editors configuration - accepts either:
|
|
623
623
|
* - Array shorthand: ["windsurf", "cursor"] or ["windsurf", { "cursor": {...} }]
|
|
624
624
|
* - Object form: { "windsurf": { "enabled": true }, "cursor": {...} }
|
|
625
625
|
*/
|
|
626
|
-
export declare const editorsSchema: z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodEnum<["windsurf", "cursor", "claude-code", "
|
|
626
|
+
export declare const editorsSchema: z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodEnum<["windsurf", "cursor", "claude-code", "copilot", "zed", "neovim"]>, z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
627
627
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
628
628
|
rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
629
629
|
description: z.ZodOptional<z.ZodString>;
|
package/dist/editors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editors.d.ts","sourceRoot":"","sources":["../src/editors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE/B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE7B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEjC,CAAC;AAEH,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"editors.d.ts","sourceRoot":"","sources":["../src/editors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE/B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE7B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEjC,CAAC;AAEH,eAAO,MAAM,UAAU,8EAEe,CAAC;AA8BvC;;;;GAIG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAEoB,CAAC"}
|
package/dist/editors.js
CHANGED
|
@@ -14,7 +14,7 @@ export const claudeCodeConfigSchema = baseEditorConfigSchema.extend({
|
|
|
14
14
|
permissions: z.record(z.unknown()).optional().describe('Claude Code permissions'),
|
|
15
15
|
});
|
|
16
16
|
export const editorEnum = z
|
|
17
|
-
.enum(['windsurf', 'cursor', 'claude-code', '
|
|
17
|
+
.enum(['windsurf', 'cursor', 'claude-code', 'copilot', 'zed', 'neovim'])
|
|
18
18
|
.describe('Supported editor/agent');
|
|
19
19
|
/**
|
|
20
20
|
* Verbose object form for editors configuration.
|
package/dist/editors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editors.js","sourceRoot":"","sources":["../src/editors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC/E,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;CAC/F,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,MAAM,CAAC;IAC/D,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;CACzF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,MAAM,CAAC;IAC7D,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;CAC7E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,sBAAsB,CAAC,MAAM,CAAC;IACjE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;CACnF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC;KACvB,IAAI,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"editors.js","sourceRoot":"","sources":["../src/editors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC/E,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;CAC/F,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,MAAM,CAAC;IAC/D,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;CACzF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,MAAM,CAAC;IAC7D,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;CAC7E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,sBAAsB,CAAC,MAAM,CAAC;IACjE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;CACnF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC;KACvB,IAAI,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;KACvE,QAAQ,CAAC,wBAAwB,CAAC,CAAC;AAEvC;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC;KACzB,MAAM,CAAC;IACL,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACzC,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE;IACrC,aAAa,EAAE,sBAAsB,CAAC,QAAQ,EAAE;CAClD,CAAC;KACD,QAAQ,CAAC,sBAAsB,CAAC,CAAC;AAErC;;;;GAIG;AACH,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC;AAEnG;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,CAAC;KACxB,KAAK,CAAC,sBAAsB,CAAC;KAC7B,QAAQ,CAAC,6CAA6C,CAAC,CAAC;AAE5D;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC;KAC1B,KAAK,CAAC,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;KAChD,QAAQ,CAAC,gCAAgC,CAAC,CAAC"}
|
package/dist/factory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,YAAY,CAOhD"}
|
package/dist/factory.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import { SCHEMA_VERSION, SCHEMA_BASE_URL } from './version.js';
|
|
2
1
|
/**
|
|
3
2
|
* Create an empty AiJsonConfig with all required fields initialized to their defaults.
|
|
4
3
|
* This is the single source of truth for creating new configs.
|
|
5
4
|
*/
|
|
6
5
|
export function createEmptyConfig() {
|
|
7
6
|
return {
|
|
8
|
-
$schema: `${SCHEMA_BASE_URL}/v${SCHEMA_VERSION}/ai.json`,
|
|
9
7
|
skills: {},
|
|
10
8
|
mcp: {},
|
|
11
9
|
rules: {},
|
package/dist/factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC9B,OAAO;QACJ,MAAM,EAAE,EAAE;QACV,GAAG,EAAE,EAAE;QACP,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,EAAE;KACb,CAAC;AACL,CAAC"}
|
package/dist/normalize.d.ts
CHANGED
|
@@ -1,4 +1,33 @@
|
|
|
1
1
|
import type { AiJsonConfig } from './config.js';
|
|
2
|
+
/**
|
|
3
|
+
* Source types for config and asset references. This is the single source of truth for determining
|
|
4
|
+
* what kind of source a string represents.
|
|
5
|
+
*/
|
|
6
|
+
export type SourceType =
|
|
7
|
+
/** Local file path (./file, ../file, /absolute, or implicit like prompts/file.md) */
|
|
8
|
+
'local'
|
|
9
|
+
/** Git shorthand (github:org/repo, gitlab:org/repo, bitbucket:org/repo) */
|
|
10
|
+
| 'git-shorthand'
|
|
11
|
+
/** HTTPS URL pointing to a file (blob URL or direct .json file) */
|
|
12
|
+
| 'https-file'
|
|
13
|
+
/** HTTPS URL pointing to a repository root */
|
|
14
|
+
| 'https-repo'
|
|
15
|
+
/** Unsupported HTTP URL (non-HTTPS) */
|
|
16
|
+
| 'http-unsupported'
|
|
17
|
+
/** npm package reference */
|
|
18
|
+
| 'npm';
|
|
19
|
+
/**
|
|
20
|
+
* Detect the source type of a string. This is the single source of truth for source type detection
|
|
21
|
+
* and should be used everywhere instead of ad-hoc checks.
|
|
22
|
+
*
|
|
23
|
+
* Detection order (first match wins):
|
|
24
|
+
* 1. Git shorthand (github:, gitlab:, bitbucket:)
|
|
25
|
+
* 2. HTTPS URLs (file vs repo)
|
|
26
|
+
* 3. HTTP URLs (unsupported)
|
|
27
|
+
* 4. Local paths (explicit prefixes or file extensions)
|
|
28
|
+
* 5. npm packages (fallback)
|
|
29
|
+
*/
|
|
30
|
+
export declare function detectSourceType(source: string): SourceType;
|
|
2
31
|
/**
|
|
3
32
|
* Detect if a string is a local path reference. Recognizes:
|
|
4
33
|
* - Explicit relative paths: `./file`, `../file`
|
package/dist/normalize.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../src/normalize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../src/normalize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAOhD;;;GAGG;AACH,MAAM,MAAM,UAAU;AACnB,qFAAqF;AACnF,OAAO;AACT,2EAA2E;GACzE,eAAe;AACjB,mEAAmE;GACjE,YAAY;AACd,8CAA8C;GAC5C,YAAY;AACd,uCAAuC;GACrC,kBAAkB;AACpB,4BAA4B;GAC1B,KAAK,CAAC;AAEX;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAuB3D;AAyBD;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAkBlD;AAmDD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqBnG;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GACvD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAOzC;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GACzD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAOzC;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC7B,OAAO,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrF,MAAM,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC,CAmB9D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,CAiC7D"}
|
package/dist/normalize.js
CHANGED
|
@@ -1,11 +1,60 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Prefixes that indicate a local file path reference.
|
|
3
|
-
*/
|
|
4
|
-
const LOCAL_PATH_PREFIXES = ['./', '../', '/', 'file:'];
|
|
5
1
|
/**
|
|
6
2
|
* File extensions that indicate a local file (for implicit relative paths).
|
|
7
3
|
*/
|
|
8
4
|
const LOCAL_FILE_EXTENSIONS = /\.(md|txt|json|ya?ml|prompt\.md)$/i;
|
|
5
|
+
/**
|
|
6
|
+
* Detect the source type of a string. This is the single source of truth for source type detection
|
|
7
|
+
* and should be used everywhere instead of ad-hoc checks.
|
|
8
|
+
*
|
|
9
|
+
* Detection order (first match wins):
|
|
10
|
+
* 1. Git shorthand (github:, gitlab:, bitbucket:)
|
|
11
|
+
* 2. HTTPS URLs (file vs repo)
|
|
12
|
+
* 3. HTTP URLs (unsupported)
|
|
13
|
+
* 4. Local paths (explicit prefixes or file extensions)
|
|
14
|
+
* 5. npm packages (fallback)
|
|
15
|
+
*/
|
|
16
|
+
export function detectSourceType(source) {
|
|
17
|
+
// Git shorthand: github:org/repo, gitlab:org/repo, bitbucket:org/repo
|
|
18
|
+
if (/^(github|gitlab|bitbucket):/.test(source)) {
|
|
19
|
+
return 'git-shorthand';
|
|
20
|
+
}
|
|
21
|
+
// HTTPS URL
|
|
22
|
+
if (source.startsWith('https://')) {
|
|
23
|
+
return isHttpsFileUrl(source) ? 'https-file' : 'https-repo';
|
|
24
|
+
}
|
|
25
|
+
// HTTP URL (reject for security)
|
|
26
|
+
if (source.startsWith('http://')) {
|
|
27
|
+
return 'http-unsupported';
|
|
28
|
+
}
|
|
29
|
+
// Local path detection
|
|
30
|
+
if (isLocalPath(source)) {
|
|
31
|
+
return 'local';
|
|
32
|
+
}
|
|
33
|
+
// Everything else is npm
|
|
34
|
+
return 'npm';
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Check if an HTTPS URL points directly to a file (blob URL or direct file URL).
|
|
38
|
+
*/
|
|
39
|
+
function isHttpsFileUrl(url) {
|
|
40
|
+
// GitHub blob URL: https://github.com/org/repo/blob/ref/path
|
|
41
|
+
if (/^https:\/\/github\.com\/[^/]+\/[^/]+\/blob\//.test(url)) {
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
// GitLab blob URL: https://gitlab.com/group/project/-/blob/ref/path
|
|
45
|
+
if (/^https:\/\/gitlab\.com\/[^/]+\/[^/]+\/-\/blob\//.test(url)) {
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
// Bitbucket src URL: https://bitbucket.org/workspace/repo/src/ref/path
|
|
49
|
+
if (/^https:\/\/bitbucket\.org\/[^/]+\/[^/]+\/src\//.test(url)) {
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
// Direct file URL (ending in .json)
|
|
53
|
+
if (url.endsWith('.json')) {
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
9
58
|
/**
|
|
10
59
|
* Detect if a string is a local path reference. Recognizes:
|
|
11
60
|
* - Explicit relative paths: `./file`, `../file`
|
|
@@ -16,8 +65,11 @@ const LOCAL_FILE_EXTENSIONS = /\.(md|txt|json|ya?ml|prompt\.md)$/i;
|
|
|
16
65
|
* Excludes URLs and git shorthands even if they have matching extensions.
|
|
17
66
|
*/
|
|
18
67
|
export function isLocalPath(value) {
|
|
19
|
-
// Explicit
|
|
20
|
-
if (
|
|
68
|
+
// Explicit relative or absolute paths (including file: protocol)
|
|
69
|
+
if (value.startsWith('./') ||
|
|
70
|
+
value.startsWith('../') ||
|
|
71
|
+
value.startsWith('/') ||
|
|
72
|
+
value.startsWith('file:')) {
|
|
21
73
|
return true;
|
|
22
74
|
}
|
|
23
75
|
// Exclude URLs and git shorthand
|
package/dist/normalize.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize.js","sourceRoot":"","sources":["../src/normalize.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,
|
|
1
|
+
{"version":3,"file":"normalize.js","sourceRoot":"","sources":["../src/normalize.ts"],"names":[],"mappings":"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"}
|
package/dist/skill.d.ts
CHANGED
|
@@ -4,22 +4,22 @@ import { z } from 'zod';
|
|
|
4
4
|
* @see https://agentskills.io/specification.md
|
|
5
5
|
*/
|
|
6
6
|
export declare const skillFrontmatterSchema: z.ZodObject<{
|
|
7
|
-
name: z.ZodString
|
|
8
|
-
description: z.ZodString
|
|
7
|
+
name: z.ZodOptional<z.ZodString>;
|
|
8
|
+
description: z.ZodOptional<z.ZodString>;
|
|
9
9
|
license: z.ZodOptional<z.ZodString>;
|
|
10
10
|
compatibility: z.ZodOptional<z.ZodString>;
|
|
11
11
|
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
12
12
|
'allowed-tools': z.ZodOptional<z.ZodString>;
|
|
13
13
|
}, "strip", z.ZodTypeAny, {
|
|
14
|
-
description
|
|
15
|
-
name
|
|
14
|
+
description?: string | undefined;
|
|
15
|
+
name?: string | undefined;
|
|
16
16
|
license?: string | undefined;
|
|
17
17
|
compatibility?: string | undefined;
|
|
18
18
|
metadata?: Record<string, string> | undefined;
|
|
19
19
|
'allowed-tools'?: string | undefined;
|
|
20
20
|
}, {
|
|
21
|
-
description
|
|
22
|
-
name
|
|
21
|
+
description?: string | undefined;
|
|
22
|
+
name?: string | undefined;
|
|
23
23
|
license?: string | undefined;
|
|
24
24
|
compatibility?: string | undefined;
|
|
25
25
|
metadata?: Record<string, string> | undefined;
|
|
@@ -30,6 +30,7 @@ export type SkillFrontmatter = z.infer<typeof skillFrontmatterSchema>;
|
|
|
30
30
|
* Parsed skill with frontmatter and body content
|
|
31
31
|
*/
|
|
32
32
|
export interface ParsedSkill {
|
|
33
|
+
/** Frontmatter metadata, may be empty if SKILL.md has no frontmatter */
|
|
33
34
|
frontmatter: SkillFrontmatter;
|
|
34
35
|
body: string;
|
|
35
36
|
basePath: string;
|
package/dist/skill.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;EAejC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,WAAW;IACzB,wEAAwE;IACxE,WAAW,EAAE,gBAAgB,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,KAAK,CAAC;CAClC"}
|
package/dist/skill.js
CHANGED
|
@@ -8,8 +8,9 @@ export const skillFrontmatterSchema = z.object({
|
|
|
8
8
|
.string()
|
|
9
9
|
.min(1)
|
|
10
10
|
.max(64)
|
|
11
|
-
.regex(/^[a-z0-9]+(-[a-z0-9]+)*$/, 'Name must be lowercase alphanumeric with single hyphens, not starting/ending with hyphen')
|
|
12
|
-
|
|
11
|
+
.regex(/^[a-z0-9]+(-[a-z0-9]+)*$/, 'Name must be lowercase alphanumeric with single hyphens, not starting/ending with hyphen')
|
|
12
|
+
.optional(),
|
|
13
|
+
description: z.string().min(1).max(1024).optional(),
|
|
13
14
|
license: z.string().optional(),
|
|
14
15
|
compatibility: z.string().max(500).optional(),
|
|
15
16
|
metadata: z.record(z.string()).optional(),
|
package/dist/skill.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC;SACH,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,KAAK,CACH,0BAA0B,EAC1B,0FAA0F,CAC5F;
|
|
1
|
+
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC;SACH,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,KAAK,CACH,0BAA0B,EAC1B,0FAA0F,CAC5F;SACA,QAAQ,EAAE;IACd,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IACnD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@a1st/aix-schema",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.12",
|
|
4
4
|
"description": "JSON Schema and validation for aix configuration",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"ai-config",
|
|
7
|
+
"json-schema",
|
|
8
|
+
"schema",
|
|
9
|
+
"validation",
|
|
10
|
+
"zod"
|
|
11
|
+
],
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "https://github.com/a1st-dev/aix.git",
|
|
15
|
+
"directory": "packages/schema"
|
|
16
|
+
},
|
|
5
17
|
"files": [
|
|
6
18
|
"dist",
|
|
7
19
|
"schema.json"
|
|
@@ -15,18 +27,13 @@
|
|
|
15
27
|
"import": "./dist/index.js"
|
|
16
28
|
}
|
|
17
29
|
},
|
|
18
|
-
"repository": {
|
|
19
|
-
"type": "git",
|
|
20
|
-
"url": "https://github.com/a1st-dev/aix.git",
|
|
21
|
-
"directory": "packages/schema"
|
|
22
|
-
},
|
|
23
30
|
"publishConfig": {
|
|
24
31
|
"access": "public",
|
|
25
32
|
"registry": "https://registry.npmjs.org/"
|
|
26
33
|
},
|
|
27
34
|
"scripts": {
|
|
28
35
|
"build": "tsc -p tsconfig.build.json && npm run generate-schema",
|
|
29
|
-
"generate-schema": "node --import=@poppinss/ts-exec scripts/generate-schema.ts",
|
|
36
|
+
"generate-schema": "node --import=@poppinss/ts-exec scripts/generate-schema.ts && oxfmt schema.json",
|
|
30
37
|
"test": "vitest run",
|
|
31
38
|
"test:watch": "vitest"
|
|
32
39
|
},
|