@detergent-software/atk 7.8.0 → 7.9.0-dev.2
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 +13 -11
- package/build/commands/audit.d.ts.map +1 -1
- package/build/commands/audit.js +9 -0
- package/build/commands/audit.js.map +1 -1
- package/build/commands/browse.js +1 -1
- package/build/commands/browse.js.map +1 -1
- package/build/commands/cache.d.ts +1 -1
- package/build/commands/info.d.ts +2 -1
- package/build/commands/info.d.ts.map +1 -1
- package/build/commands/info.js +32 -6
- package/build/commands/info.js.map +1 -1
- package/build/commands/list.js +1 -1
- package/build/commands/list.js.map +1 -1
- package/build/commands/outdated.d.ts.map +1 -1
- package/build/commands/outdated.js +9 -0
- package/build/commands/outdated.js.map +1 -1
- package/build/commands/publish.d.ts +1 -1
- package/build/commands/publish.d.ts.map +1 -1
- package/build/commands/publish.js +2 -1
- package/build/commands/publish.js.map +1 -1
- package/build/commands/reviewer.js +1 -1
- package/build/commands/reviewer.js.map +1 -1
- package/build/commands/search.d.ts.map +1 -1
- package/build/commands/search.js +10 -1
- package/build/commands/search.js.map +1 -1
- package/build/components/AssetDetail.d.ts +5 -1
- package/build/components/AssetDetail.d.ts.map +1 -1
- package/build/components/AssetDetail.js +4 -3
- package/build/components/AssetDetail.js.map +1 -1
- package/build/components/BundleDetail.d.ts +5 -1
- package/build/components/BundleDetail.d.ts.map +1 -1
- package/build/components/BundleDetail.js +3 -2
- package/build/components/BundleDetail.js.map +1 -1
- package/build/components/ReadmeSection.d.ts +17 -0
- package/build/components/ReadmeSection.d.ts.map +1 -0
- package/build/components/ReadmeSection.js +17 -0
- package/build/components/ReadmeSection.js.map +1 -0
- package/build/components/index.d.ts +1 -0
- package/build/components/index.d.ts.map +1 -1
- package/build/components/index.js +1 -0
- package/build/components/index.js.map +1 -1
- package/build/hooks/usePublishState.d.ts.map +1 -1
- package/build/hooks/usePublishState.js +5 -7
- package/build/hooks/usePublishState.js.map +1 -1
- package/build/lib/api/client/client.gen.d.ts +3 -0
- package/build/lib/api/client/client.gen.d.ts.map +1 -0
- package/build/lib/api/client/client.gen.js +217 -0
- package/build/lib/api/client/client.gen.js.map +1 -0
- package/build/lib/api/client/index.d.ts +11 -0
- package/build/lib/api/client/index.d.ts.map +1 -0
- package/build/lib/api/client/index.js +7 -0
- package/build/lib/api/client/index.js.map +1 -0
- package/build/lib/api/client/types.gen.d.ts +121 -0
- package/build/lib/api/client/types.gen.d.ts.map +1 -0
- package/build/lib/api/client/types.gen.js +3 -0
- package/build/lib/api/client/types.gen.js.map +1 -0
- package/build/lib/api/client/utils.gen.d.ts +38 -0
- package/build/lib/api/client/utils.gen.d.ts.map +1 -0
- package/build/lib/api/client/utils.gen.js +229 -0
- package/build/lib/api/client/utils.gen.js.map +1 -0
- package/build/lib/api/client.gen.d.ts +13 -0
- package/build/lib/api/client.gen.d.ts.map +1 -0
- package/build/lib/api/client.gen.js +4 -0
- package/build/lib/api/client.gen.js.map +1 -0
- package/build/lib/api/core/auth.gen.d.ts +26 -0
- package/build/lib/api/core/auth.gen.d.ts.map +1 -0
- package/build/lib/api/core/auth.gen.js +15 -0
- package/build/lib/api/core/auth.gen.js.map +1 -0
- package/build/lib/api/core/bodySerializer.gen.d.ts +26 -0
- package/build/lib/api/core/bodySerializer.gen.d.ts.map +1 -0
- package/build/lib/api/core/bodySerializer.gen.js +58 -0
- package/build/lib/api/core/bodySerializer.gen.js.map +1 -0
- package/build/lib/api/core/params.gen.d.ts +44 -0
- package/build/lib/api/core/params.gen.d.ts.map +1 -0
- package/build/lib/api/core/params.gen.js +110 -0
- package/build/lib/api/core/params.gen.js.map +1 -0
- package/build/lib/api/core/pathSerializer.gen.d.ts +34 -0
- package/build/lib/api/core/pathSerializer.gen.d.ts.map +1 -0
- package/build/lib/api/core/pathSerializer.gen.js +107 -0
- package/build/lib/api/core/pathSerializer.gen.js.map +1 -0
- package/build/lib/api/core/queryKeySerializer.gen.d.ts +19 -0
- package/build/lib/api/core/queryKeySerializer.gen.d.ts.map +1 -0
- package/build/lib/api/core/queryKeySerializer.gen.js +93 -0
- package/build/lib/api/core/queryKeySerializer.gen.js.map +1 -0
- package/build/lib/api/core/serverSentEvents.gen.d.ts +72 -0
- package/build/lib/api/core/serverSentEvents.gen.d.ts.map +1 -0
- package/build/lib/api/core/serverSentEvents.gen.js +133 -0
- package/build/lib/api/core/serverSentEvents.gen.js.map +1 -0
- package/build/lib/api/core/types.gen.d.ts +84 -0
- package/build/lib/api/core/types.gen.d.ts.map +1 -0
- package/build/lib/api/core/types.gen.js +3 -0
- package/build/lib/api/core/types.gen.js.map +1 -0
- package/build/lib/api/core/utils.gen.d.ts +20 -0
- package/build/lib/api/core/utils.gen.d.ts.map +1 -0
- package/build/lib/api/core/utils.gen.js +88 -0
- package/build/lib/api/core/utils.gen.js.map +1 -0
- package/build/lib/api/index.d.ts +3 -0
- package/build/lib/api/index.d.ts.map +1 -0
- package/build/lib/api/index.js +3 -0
- package/build/lib/api/index.js.map +1 -0
- package/build/lib/api/sdk.gen.d.ts +80 -0
- package/build/lib/api/sdk.gen.d.ts.map +1 -0
- package/build/lib/api/sdk.gen.js +134 -0
- package/build/lib/api/sdk.gen.js.map +1 -0
- package/build/lib/api/types.gen.d.ts +924 -0
- package/build/lib/api/types.gen.d.ts.map +1 -0
- package/build/lib/api/types.gen.js +3 -0
- package/build/lib/api/types.gen.js.map +1 -0
- package/build/lib/api-client.d.ts +91 -0
- package/build/lib/api-client.d.ts.map +1 -0
- package/build/lib/api-client.js +210 -0
- package/build/lib/api-client.js.map +1 -0
- package/build/lib/auth.d.ts +6 -2
- package/build/lib/auth.d.ts.map +1 -1
- package/build/lib/auth.js +18 -10
- package/build/lib/auth.js.map +1 -1
- package/build/lib/diagnostics.d.ts.map +1 -1
- package/build/lib/diagnostics.js +33 -22
- package/build/lib/diagnostics.js.map +1 -1
- package/build/lib/diff-command.d.ts.map +1 -1
- package/build/lib/diff-command.js +14 -12
- package/build/lib/diff-command.js.map +1 -1
- package/build/lib/fetch-retry.d.ts +7 -3
- package/build/lib/fetch-retry.d.ts.map +1 -1
- package/build/lib/fetch-retry.js +9 -5
- package/build/lib/fetch-retry.js.map +1 -1
- package/build/lib/installer.d.ts +0 -2
- package/build/lib/installer.d.ts.map +1 -1
- package/build/lib/installer.js +30 -29
- package/build/lib/installer.js.map +1 -1
- package/build/lib/manifest-diff.d.ts +1 -1
- package/build/lib/manifest-diff.d.ts.map +1 -1
- package/build/lib/manifest-diff.js +3 -3
- package/build/lib/manifest-diff.js.map +1 -1
- package/build/lib/publisher.d.ts +38 -1
- package/build/lib/publisher.d.ts.map +1 -1
- package/build/lib/publisher.js +133 -145
- package/build/lib/publisher.js.map +1 -1
- package/build/lib/registry-mutate.js +1 -1
- package/build/lib/registry-mutate.js.map +1 -1
- package/build/lib/registry-repo.d.ts +34 -0
- package/build/lib/registry-repo.d.ts.map +1 -0
- package/build/lib/registry-repo.js +35 -0
- package/build/lib/registry-repo.js.map +1 -0
- package/build/lib/registry.d.ts +50 -0
- package/build/lib/registry.d.ts.map +1 -1
- package/build/lib/registry.js +241 -51
- package/build/lib/registry.js.map +1 -1
- package/build/lib/release-notes.d.ts.map +1 -1
- package/build/lib/release-notes.js +27 -1
- package/build/lib/release-notes.js.map +1 -1
- package/build/lib/reviewers.d.ts +19 -0
- package/build/lib/reviewers.d.ts.map +1 -0
- package/build/lib/reviewers.js +46 -0
- package/build/lib/reviewers.js.map +1 -0
- package/build/lib/schemas/config.d.ts +1 -1
- package/build/lib/schemas/config.d.ts.map +1 -1
- package/build/lib/schemas/config.js +4 -1
- package/build/lib/schemas/config.js.map +1 -1
- package/build/lib/schemas/lockfile.d.ts +0 -1
- package/build/lib/schemas/lockfile.d.ts.map +1 -1
- package/build/lib/schemas/lockfile.js +0 -1
- package/build/lib/schemas/lockfile.js.map +1 -1
- package/package.json +4 -1
- package/build/lib/github.d.ts +0 -140
- package/build/lib/github.d.ts.map +0 -1
- package/build/lib/github.js +0 -230
- package/build/lib/github.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"release-notes.js","sourceRoot":"","sources":["../../src/lib/release-notes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,EAAE,IAAI,QAAQ,EACd,EAAE,IAAI,QAAQ,EACd,UAAU,IAAI,gBAAgB,EAC9B,QAAQ,IAAI,cAAc,EAC1B,KAAK,IAAI,WAAW,GACrB,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"release-notes.js","sourceRoot":"","sources":["../../src/lib/release-notes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parsing and validation of GitHub usernames used as PR reviewers
|
|
3
|
+
* (`--reviewer`, `atk reviewer`, and the lockfile's `orgReviewers`).
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Parse a comma-separated reviewers string (e.g. from `--reviewer` or the `atk reviewer`
|
|
7
|
+
* command) into a deduplicated list of trimmed, non-empty usernames. Dedup is
|
|
8
|
+
* case-insensitive but preserves the first-seen casing.
|
|
9
|
+
*/
|
|
10
|
+
export declare function parseReviewersInput(raw: string): string[];
|
|
11
|
+
/**
|
|
12
|
+
* Validate a GitHub username: alphanumeric characters and single hyphens only,
|
|
13
|
+
* no leading/trailing/consecutive hyphens, max 39 characters.
|
|
14
|
+
*/
|
|
15
|
+
export declare function validateGithubUsername(username: string): {
|
|
16
|
+
error?: string;
|
|
17
|
+
valid: boolean;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=reviewers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reviewers.d.ts","sourceRoot":"","sources":["../../src/lib/reviewers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAkBzD;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAiB3F"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parsing and validation of GitHub usernames used as PR reviewers
|
|
3
|
+
* (`--reviewer`, `atk reviewer`, and the lockfile's `orgReviewers`).
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Parse a comma-separated reviewers string (e.g. from `--reviewer` or the `atk reviewer`
|
|
7
|
+
* command) into a deduplicated list of trimmed, non-empty usernames. Dedup is
|
|
8
|
+
* case-insensitive but preserves the first-seen casing.
|
|
9
|
+
*/
|
|
10
|
+
export function parseReviewersInput(raw) {
|
|
11
|
+
const seen = new Set();
|
|
12
|
+
const result = [];
|
|
13
|
+
for (const part of raw.split(',')) {
|
|
14
|
+
const trimmed = part.trim();
|
|
15
|
+
if (!trimmed) {
|
|
16
|
+
continue;
|
|
17
|
+
}
|
|
18
|
+
const key = trimmed.toLowerCase();
|
|
19
|
+
if (seen.has(key)) {
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
seen.add(key);
|
|
23
|
+
result.push(trimmed);
|
|
24
|
+
}
|
|
25
|
+
return result;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Validate a GitHub username: alphanumeric characters and single hyphens only,
|
|
29
|
+
* no leading/trailing/consecutive hyphens, max 39 characters.
|
|
30
|
+
*/
|
|
31
|
+
export function validateGithubUsername(username) {
|
|
32
|
+
if (!username) {
|
|
33
|
+
return { error: 'Username cannot be empty', valid: false };
|
|
34
|
+
}
|
|
35
|
+
if (username.length > 39) {
|
|
36
|
+
return { error: `Username '${username}' exceeds GitHub's 39 character limit`, valid: false };
|
|
37
|
+
}
|
|
38
|
+
if (!/^[a-zA-Z\d]+(-[a-zA-Z\d]+)*$/.test(username)) {
|
|
39
|
+
return {
|
|
40
|
+
error: `Invalid GitHub username '${username}': must be alphanumeric characters and single hyphens, and cannot begin or end with a hyphen`,
|
|
41
|
+
valid: false,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
return { valid: true };
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=reviewers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reviewers.js","sourceRoot":"","sources":["../../src/lib/reviewers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAgB;IACrD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC7D,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,aAAa,QAAQ,uCAAuC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC/F,CAAC;IAED,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,OAAO;YACL,KAAK,EAAE,4BAA4B,QAAQ,8FAA8F;YACzI,KAAK,EAAE,KAAK;SACb,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACzB,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export declare const ConfigSchema: z.ZodObject<{
|
|
3
|
+
apiUrl: z.ZodOptional<z.ZodURL>;
|
|
3
4
|
cacheDir: z.ZodOptional<z.ZodString>;
|
|
4
5
|
cacheTtlMinutes: z.ZodOptional<z.ZodNumber>;
|
|
5
6
|
checkUpdates: z.ZodOptional<z.ZodBoolean>;
|
|
6
7
|
githubToken: z.ZodOptional<z.ZodString>;
|
|
7
8
|
org: z.ZodOptional<z.ZodString>;
|
|
8
|
-
registryBranch: z.ZodOptional<z.ZodString>;
|
|
9
9
|
registryUrl: z.ZodOptional<z.ZodString>;
|
|
10
10
|
}, z.core.$strip>;
|
|
11
11
|
export type Config = z.infer<typeof ConfigSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/lib/schemas/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,YAAY;;;;;;;;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/lib/schemas/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,YAAY;;;;;;;;iBAWvB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD,eAAO,MAAM,cAAc,EAAE,MAG5B,CAAC;AAEF,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;iBAYrB,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;kBAYX,CAAC;AACtB,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { AssetType } from './manifest.js';
|
|
3
3
|
export const ConfigSchema = z.object({
|
|
4
|
+
apiUrl: z
|
|
5
|
+
.url()
|
|
6
|
+
.optional()
|
|
7
|
+
.describe('ATK API base URL (defaults to production; ATK_API_URL env var overrides)'),
|
|
4
8
|
cacheDir: z.string().optional().describe('Override cache directory (defaults to ~/.atk/cache/)'),
|
|
5
9
|
cacheTtlMinutes: z.number().optional().describe('Cache TTL in minutes for registry data'),
|
|
6
10
|
checkUpdates: z.boolean().optional().describe('Show banner when a newer ATK version is available'),
|
|
7
11
|
githubToken: z.string().optional().describe('GitHub token override (defaults to gh auth token)'),
|
|
8
12
|
org: z.string().optional().describe('Default organization scope for asset resolution'),
|
|
9
|
-
registryBranch: z.string().optional().describe('Override registry branch for GitHub API calls (defaults to main)'),
|
|
10
13
|
registryUrl: z.string().optional().describe('Override registry URL (defaults to GitHub repo)'),
|
|
11
14
|
});
|
|
12
15
|
export const DEFAULT_CONFIG = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/schemas/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/schemas/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,MAAM,EAAE,CAAC;SACN,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,CAAC,0EAA0E,CAAC;IACvF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAChG,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IACzF,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;IAClG,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;IAChG,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;IACtF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;CAC/F,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,cAAc,GAAW;IACpC,eAAe,EAAE,CAAC;IAClB,YAAY,EAAE,IAAI;CACnB,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,YAAY,EAAE,CAAC;SACZ,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;QACvC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QACvE,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC;KACvC,CAAC,CACH;SACA,QAAQ,EAAE;SACV,QAAQ,CAAC,+EAA+E,CAAC;IAC5F,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,sCAAsC,CAAC;CACnF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;IACtD,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,GAA8B,CAAC;QAE3C,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACjC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;YAE9B,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC,EAAE,iBAAiB,CAAC,CAAC"}
|
|
@@ -115,7 +115,6 @@ export declare const LockfileSchema: z.ZodObject<{
|
|
|
115
115
|
lockVersion: z.ZodLiteral<1>;
|
|
116
116
|
org: z.ZodOptional<z.ZodString>;
|
|
117
117
|
orgReviewers: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
118
|
-
registryBranch: z.ZodOptional<z.ZodString>;
|
|
119
118
|
registryUrl: z.ZodOptional<z.ZodString>;
|
|
120
119
|
}, z.core.$strip>;
|
|
121
120
|
export type Lockfile = z.infer<typeof LockfileSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lockfile.d.ts","sourceRoot":"","sources":["../../../src/lib/schemas/lockfile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,aAAa;;;;iBAOxB,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,eAAO,MAAM,WAAW;;;;;iBAUtB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEtD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAsCzB,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,eAAO,MAAM,cAAc
|
|
1
|
+
{"version":3,"file":"lockfile.d.ts","sourceRoot":"","sources":["../../../src/lib/schemas/lockfile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,aAAa;;;;iBAOxB,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,eAAO,MAAM,WAAW;;;;;iBAUtB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEtD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAsCzB,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBASzB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
|
|
@@ -60,7 +60,6 @@ export const LockfileSchema = z.object({
|
|
|
60
60
|
.array(z.string())
|
|
61
61
|
.optional()
|
|
62
62
|
.describe('GitHub usernames auto-requested as PR reviewers for org-scoped asset publishes'),
|
|
63
|
-
registryBranch: z.string().optional().describe('Override registry branch for GitHub API calls'),
|
|
64
63
|
registryUrl: z.string().optional().describe('Override registry URL'),
|
|
65
64
|
});
|
|
66
65
|
//# sourceMappingURL=lockfile.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lockfile.js","sourceRoot":"","sources":["../../../src/lib/schemas/lockfile.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"lockfile.js","sourceRoot":"","sources":["../../../src/lib/schemas/lockfile.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@detergent-software/atk",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.9.0-dev.2",
|
|
4
4
|
"description": "Agentic Tool Kit — CLI for managing AI coding tool assets.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -17,8 +17,10 @@
|
|
|
17
17
|
"export-schemas": "tsx scripts/export-schemas.ts",
|
|
18
18
|
"format": "prettier --write \"src/**/*.{ts,tsx}\"",
|
|
19
19
|
"format:check": "prettier --check \"src/**/*.{ts,tsx}\"",
|
|
20
|
+
"generate-api": "openapi-ts",
|
|
20
21
|
"lint": "eslint src/",
|
|
21
22
|
"lint:fix": "eslint src/ --fix --cache",
|
|
23
|
+
"refresh-openapi": "tsx scripts/refresh-openapi.ts",
|
|
22
24
|
"test": "vitest run",
|
|
23
25
|
"test:watch": "vitest",
|
|
24
26
|
"typecheck": "tsc --noEmit"
|
|
@@ -56,6 +58,7 @@
|
|
|
56
58
|
"@commitlint/cli": "^20.4.2",
|
|
57
59
|
"@commitlint/config-conventional": "^20.4.2",
|
|
58
60
|
"@eslint/js": "^9.0.0",
|
|
61
|
+
"@hey-api/openapi-ts": "0.99.0",
|
|
59
62
|
"@semantic-release/changelog": "^6.0.3",
|
|
60
63
|
"@semantic-release/git": "^10.0.1",
|
|
61
64
|
"@testing-library/react": "^16.0.0",
|
package/build/lib/github.d.ts
DELETED
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
export declare const DEFAULT_REGISTRY_REPO = "EmergentSoftware/agentic-toolkit-registry";
|
|
2
|
-
export declare const DEFAULT_REGISTRY_BRANCH = "main";
|
|
3
|
-
/**
|
|
4
|
-
* The CLI's own source repository (distinct from the registry repo above).
|
|
5
|
-
* Used to fetch GitHub Releases / changelog content for the `release-notes` command.
|
|
6
|
-
*/
|
|
7
|
-
export declare const DEFAULT_CLI_REPO = "EmergentSoftware/agentic-toolkit-cli";
|
|
8
|
-
/**
|
|
9
|
-
* Determine the effective registry branch based on explicit override.
|
|
10
|
-
* The registry repo uses a single-branch model (main only).
|
|
11
|
-
*/
|
|
12
|
-
export declare function getEffectiveBranch(registryBranch?: string): string;
|
|
13
|
-
/** GitHub API version used for all API requests. */
|
|
14
|
-
export declare const GITHUB_API_VERSION = "2022-11-28";
|
|
15
|
-
/** Accept header value for standard JSON responses from GitHub API. */
|
|
16
|
-
export declare const GITHUB_ACCEPT_JSON = "application/vnd.github+json";
|
|
17
|
-
/** Accept header value for raw file content responses from GitHub API. */
|
|
18
|
-
export declare const GITHUB_ACCEPT_RAW = "application/vnd.github.raw+json";
|
|
19
|
-
/** Files fetched from the registry for a specific asset version. */
|
|
20
|
-
export interface FetchedAssetFiles {
|
|
21
|
-
/** The raw JSON string of manifest.json (or bundle.json for bundles). */
|
|
22
|
-
manifestContent: string;
|
|
23
|
-
/** The manifest file name that was fetched. */
|
|
24
|
-
manifestFileName: 'bundle.json' | 'manifest.json';
|
|
25
|
-
/** README.md content if it exists; undefined if the asset has no README. */
|
|
26
|
-
readmeContent: string | undefined;
|
|
27
|
-
}
|
|
28
|
-
/** A file entry returned from listing an asset directory on GitHub. */
|
|
29
|
-
export interface GitHubFileEntry {
|
|
30
|
-
name: string;
|
|
31
|
-
path: string;
|
|
32
|
-
/** Path relative to the asset version root directory (e.g., "assets/logo.svg"). */
|
|
33
|
-
relativePath: string;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Build the repository-relative directory path for an asset's versioned contents
|
|
37
|
-
* (e.g. "assets/skills/@my-org/my-skill/1.0.0").
|
|
38
|
-
*/
|
|
39
|
-
export declare function buildAssetVersionDir(asset: {
|
|
40
|
-
name: string;
|
|
41
|
-
org?: string;
|
|
42
|
-
type: string;
|
|
43
|
-
}, version: string): string;
|
|
44
|
-
/**
|
|
45
|
-
* Build a browsable GitHub URL pointing to a bundle's README.md in the registry repo.
|
|
46
|
-
*
|
|
47
|
-
* Org bundles live under `bundles/@{org}/{name}/{version}`; global bundles under
|
|
48
|
-
* `bundles/{name}/{version}`. The stored org is bare — the `@` is display/path
|
|
49
|
-
* syntax only.
|
|
50
|
-
*/
|
|
51
|
-
export declare function buildBundleReadmeUrl(name: string, version: string, org?: string): string;
|
|
52
|
-
/**
|
|
53
|
-
* Build a GitHub Contents API URL for a file or directory in the registry repo.
|
|
54
|
-
*/
|
|
55
|
-
export declare function buildGitHubContentsUrl(path: string, branch?: string): string;
|
|
56
|
-
/**
|
|
57
|
-
* Build standard GitHub API request headers.
|
|
58
|
-
*
|
|
59
|
-
* @param token - GitHub authentication token (Bearer)
|
|
60
|
-
* @param accept - Accept header value; defaults to GITHUB_ACCEPT_JSON
|
|
61
|
-
* @returns HeadersInit with Accept, Authorization, and X-GitHub-Api-Version
|
|
62
|
-
*/
|
|
63
|
-
export declare function buildGitHubHeaders(token: string, accept?: string): HeadersInit;
|
|
64
|
-
/**
|
|
65
|
-
* Build a browsable GitHub URL pointing to an asset's README.md in the registry repo.
|
|
66
|
-
*/
|
|
67
|
-
export declare function buildReadmeUrl(asset: {
|
|
68
|
-
name: string;
|
|
69
|
-
org?: string;
|
|
70
|
-
type: string;
|
|
71
|
-
}, version: string): string;
|
|
72
|
-
/**
|
|
73
|
-
* Fetch the manifest (or bundle) JSON and optional README.md for an asset
|
|
74
|
-
* at a specific version from the registry repository.
|
|
75
|
-
*
|
|
76
|
-
* @param token - GitHub authentication token
|
|
77
|
-
* @param asset - Object with `name`, `type`, and optional `org` identifying the asset
|
|
78
|
-
* @param version - Semver version string
|
|
79
|
-
* @param branch - Optional branch override
|
|
80
|
-
*/
|
|
81
|
-
export declare function fetchAssetFiles(token: string, asset: {
|
|
82
|
-
name: string;
|
|
83
|
-
org?: string;
|
|
84
|
-
type: string;
|
|
85
|
-
}, version: string, branch?: string): Promise<FetchedAssetFiles>;
|
|
86
|
-
/**
|
|
87
|
-
* Fetch raw file content from the GitHub Contents API as bytes.
|
|
88
|
-
*
|
|
89
|
-
* This is the only download path safe for binary files (images, spreadsheets,
|
|
90
|
-
* archives): decoding through `response.text()` replaces every non-UTF-8 byte
|
|
91
|
-
* sequence with U+FFFD and irreversibly corrupts the content.
|
|
92
|
-
*
|
|
93
|
-
* @param token - GitHub authentication token
|
|
94
|
-
* @param path - Repository-relative file path (e.g. "assets/skills/my-skill/1.0.0/logo.png")
|
|
95
|
-
* @param branch - Optional branch override; defaults to the registry default branch
|
|
96
|
-
*/
|
|
97
|
-
export declare function fetchBinaryFileContent(token: string, path: string, branch?: string): Promise<Buffer>;
|
|
98
|
-
/**
|
|
99
|
-
* Fetch raw file content from the GitHub Contents API, decoded as UTF-8 text.
|
|
100
|
-
* Only for files known to be text (manifests, READMEs, diff targets) — use
|
|
101
|
-
* {@link fetchBinaryFileContent} for anything that may be binary.
|
|
102
|
-
*
|
|
103
|
-
* @param token - GitHub authentication token
|
|
104
|
-
* @param path - Repository-relative file path (e.g. "assets/skills/my-skill/1.0.0/skill.md")
|
|
105
|
-
* @param branch - Optional branch override; defaults to the registry default branch
|
|
106
|
-
*/
|
|
107
|
-
export declare function fetchFileContent(token: string, path: string, branch?: string): Promise<string>;
|
|
108
|
-
/**
|
|
109
|
-
* Return a user-friendly error message for common GitHub API HTTP status codes.
|
|
110
|
-
*/
|
|
111
|
-
export declare function httpErrorMessage(status: number, resource: string): string;
|
|
112
|
-
/**
|
|
113
|
-
* List installable files in an asset's versioned directory on GitHub.
|
|
114
|
-
* Recursively traverses subdirectories. Filters out `manifest.json` and `README.md`.
|
|
115
|
-
*
|
|
116
|
-
* @param token - GitHub authentication token
|
|
117
|
-
* @param asset - Object with `name` and `type` identifying the asset
|
|
118
|
-
* @param version - Semver version string
|
|
119
|
-
* @param branch - Optional branch override
|
|
120
|
-
*/
|
|
121
|
-
export declare function listAssetDirectoryFiles(token: string, asset: {
|
|
122
|
-
name: string;
|
|
123
|
-
org?: string;
|
|
124
|
-
type: string;
|
|
125
|
-
}, version: string, branch?: string): Promise<GitHubFileEntry[]>;
|
|
126
|
-
/**
|
|
127
|
-
* Parse a comma-separated reviewers string (e.g. from `--reviewer` or the `atk reviewer`
|
|
128
|
-
* command) into a deduplicated list of trimmed, non-empty usernames. Dedup is
|
|
129
|
-
* case-insensitive but preserves the first-seen casing.
|
|
130
|
-
*/
|
|
131
|
-
export declare function parseReviewersInput(raw: string): string[];
|
|
132
|
-
/**
|
|
133
|
-
* Validate a GitHub username: alphanumeric characters and single hyphens only,
|
|
134
|
-
* no leading/trailing/consecutive hyphens, max 39 characters.
|
|
135
|
-
*/
|
|
136
|
-
export declare function validateGithubUsername(username: string): {
|
|
137
|
-
error?: string;
|
|
138
|
-
valid: boolean;
|
|
139
|
-
};
|
|
140
|
-
//# sourceMappingURL=github.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/lib/github.ts"],"names":[],"mappings":"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"}
|
package/build/lib/github.js
DELETED
|
@@ -1,230 +0,0 @@
|
|
|
1
|
-
import { fetchWithRetry } from './fetch-retry.js';
|
|
2
|
-
export const DEFAULT_REGISTRY_REPO = 'EmergentSoftware/agentic-toolkit-registry';
|
|
3
|
-
export const DEFAULT_REGISTRY_BRANCH = 'main';
|
|
4
|
-
/**
|
|
5
|
-
* The CLI's own source repository (distinct from the registry repo above).
|
|
6
|
-
* Used to fetch GitHub Releases / changelog content for the `release-notes` command.
|
|
7
|
-
*/
|
|
8
|
-
export const DEFAULT_CLI_REPO = 'EmergentSoftware/agentic-toolkit-cli';
|
|
9
|
-
/**
|
|
10
|
-
* Determine the effective registry branch based on explicit override.
|
|
11
|
-
* The registry repo uses a single-branch model (main only).
|
|
12
|
-
*/
|
|
13
|
-
export function getEffectiveBranch(registryBranch) {
|
|
14
|
-
return registryBranch ?? DEFAULT_REGISTRY_BRANCH;
|
|
15
|
-
}
|
|
16
|
-
/** GitHub API version used for all API requests. */
|
|
17
|
-
export const GITHUB_API_VERSION = '2022-11-28';
|
|
18
|
-
/** Accept header value for standard JSON responses from GitHub API. */
|
|
19
|
-
export const GITHUB_ACCEPT_JSON = 'application/vnd.github+json';
|
|
20
|
-
/** Accept header value for raw file content responses from GitHub API. */
|
|
21
|
-
export const GITHUB_ACCEPT_RAW = 'application/vnd.github.raw+json';
|
|
22
|
-
/**
|
|
23
|
-
* Build the repository-relative directory path for an asset's versioned contents
|
|
24
|
-
* (e.g. "assets/skills/@my-org/my-skill/1.0.0").
|
|
25
|
-
*/
|
|
26
|
-
export function buildAssetVersionDir(asset, version) {
|
|
27
|
-
return asset.org
|
|
28
|
-
? `assets/${asset.type}s/@${asset.org}/${asset.name}/${version}`
|
|
29
|
-
: `assets/${asset.type}s/${asset.name}/${version}`;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Build a browsable GitHub URL pointing to a bundle's README.md in the registry repo.
|
|
33
|
-
*
|
|
34
|
-
* Org bundles live under `bundles/@{org}/{name}/{version}`; global bundles under
|
|
35
|
-
* `bundles/{name}/{version}`. The stored org is bare — the `@` is display/path
|
|
36
|
-
* syntax only.
|
|
37
|
-
*/
|
|
38
|
-
export function buildBundleReadmeUrl(name, version, org) {
|
|
39
|
-
const bundleDir = org ? `bundles/@${org}/${name}` : `bundles/${name}`;
|
|
40
|
-
return `https://github.com/${DEFAULT_REGISTRY_REPO}/blob/${DEFAULT_REGISTRY_BRANCH}/${bundleDir}/${version}/README.md`;
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Build a GitHub Contents API URL for a file or directory in the registry repo.
|
|
44
|
-
*/
|
|
45
|
-
export function buildGitHubContentsUrl(path, branch) {
|
|
46
|
-
const ref = branch ?? DEFAULT_REGISTRY_BRANCH;
|
|
47
|
-
return `https://api.github.com/repos/${DEFAULT_REGISTRY_REPO}/contents/${path}?ref=${ref}`;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Build standard GitHub API request headers.
|
|
51
|
-
*
|
|
52
|
-
* @param token - GitHub authentication token (Bearer)
|
|
53
|
-
* @param accept - Accept header value; defaults to GITHUB_ACCEPT_JSON
|
|
54
|
-
* @returns HeadersInit with Accept, Authorization, and X-GitHub-Api-Version
|
|
55
|
-
*/
|
|
56
|
-
export function buildGitHubHeaders(token, accept) {
|
|
57
|
-
return {
|
|
58
|
-
Accept: accept ?? GITHUB_ACCEPT_JSON,
|
|
59
|
-
Authorization: `Bearer ${token}`,
|
|
60
|
-
'X-GitHub-Api-Version': GITHUB_API_VERSION,
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Build a browsable GitHub URL pointing to an asset's README.md in the registry repo.
|
|
65
|
-
*/
|
|
66
|
-
export function buildReadmeUrl(asset, version) {
|
|
67
|
-
return `https://github.com/${DEFAULT_REGISTRY_REPO}/blob/${DEFAULT_REGISTRY_BRANCH}/${buildAssetVersionDir(asset, version)}/README.md`;
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Fetch the manifest (or bundle) JSON and optional README.md for an asset
|
|
71
|
-
* at a specific version from the registry repository.
|
|
72
|
-
*
|
|
73
|
-
* @param token - GitHub authentication token
|
|
74
|
-
* @param asset - Object with `name`, `type`, and optional `org` identifying the asset
|
|
75
|
-
* @param version - Semver version string
|
|
76
|
-
* @param branch - Optional branch override
|
|
77
|
-
*/
|
|
78
|
-
export async function fetchAssetFiles(token, asset, version, branch) {
|
|
79
|
-
const isBundle = asset.type === 'bundle';
|
|
80
|
-
const assetDir = isBundle
|
|
81
|
-
? `bundles/${asset.name}/${version}`
|
|
82
|
-
: asset.org
|
|
83
|
-
? `assets/${asset.type}s/@${asset.org}/${asset.name}/${version}`
|
|
84
|
-
: `assets/${asset.type}s/${asset.name}/${version}`;
|
|
85
|
-
const manifestFileName = isBundle ? 'bundle.json' : 'manifest.json';
|
|
86
|
-
// Manifest is mandatory — let errors propagate
|
|
87
|
-
const manifestContent = await fetchFileContent(token, `${assetDir}/${manifestFileName}`, branch);
|
|
88
|
-
// README is optional — swallow 404s
|
|
89
|
-
let readmeContent;
|
|
90
|
-
try {
|
|
91
|
-
readmeContent = await fetchFileContent(token, `${assetDir}/README.md`, branch);
|
|
92
|
-
}
|
|
93
|
-
catch {
|
|
94
|
-
readmeContent = undefined;
|
|
95
|
-
}
|
|
96
|
-
return { manifestContent, manifestFileName, readmeContent };
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Fetch raw file content from the GitHub Contents API as bytes.
|
|
100
|
-
*
|
|
101
|
-
* This is the only download path safe for binary files (images, spreadsheets,
|
|
102
|
-
* archives): decoding through `response.text()` replaces every non-UTF-8 byte
|
|
103
|
-
* sequence with U+FFFD and irreversibly corrupts the content.
|
|
104
|
-
*
|
|
105
|
-
* @param token - GitHub authentication token
|
|
106
|
-
* @param path - Repository-relative file path (e.g. "assets/skills/my-skill/1.0.0/logo.png")
|
|
107
|
-
* @param branch - Optional branch override; defaults to the registry default branch
|
|
108
|
-
*/
|
|
109
|
-
export async function fetchBinaryFileContent(token, path, branch) {
|
|
110
|
-
const url = buildGitHubContentsUrl(path, branch);
|
|
111
|
-
const response = await fetchWithRetry(url, {
|
|
112
|
-
headers: buildGitHubHeaders(token, GITHUB_ACCEPT_RAW),
|
|
113
|
-
});
|
|
114
|
-
if (!response.ok) {
|
|
115
|
-
throw new Error(httpErrorMessage(response.status, `file ${path}`));
|
|
116
|
-
}
|
|
117
|
-
return Buffer.from(await response.arrayBuffer());
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Fetch raw file content from the GitHub Contents API, decoded as UTF-8 text.
|
|
121
|
-
* Only for files known to be text (manifests, READMEs, diff targets) — use
|
|
122
|
-
* {@link fetchBinaryFileContent} for anything that may be binary.
|
|
123
|
-
*
|
|
124
|
-
* @param token - GitHub authentication token
|
|
125
|
-
* @param path - Repository-relative file path (e.g. "assets/skills/my-skill/1.0.0/skill.md")
|
|
126
|
-
* @param branch - Optional branch override; defaults to the registry default branch
|
|
127
|
-
*/
|
|
128
|
-
export async function fetchFileContent(token, path, branch) {
|
|
129
|
-
return (await fetchBinaryFileContent(token, path, branch)).toString('utf-8');
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* Return a user-friendly error message for common GitHub API HTTP status codes.
|
|
133
|
-
*/
|
|
134
|
-
export function httpErrorMessage(status, resource) {
|
|
135
|
-
switch (status) {
|
|
136
|
-
case 401:
|
|
137
|
-
case 403:
|
|
138
|
-
return 'Authentication failed. Check your GitHub token or run `gh auth login`.';
|
|
139
|
-
case 404:
|
|
140
|
-
return `File not found at ${resource}.`;
|
|
141
|
-
case 429:
|
|
142
|
-
return 'GitHub API rate limit exceeded. Try again later.';
|
|
143
|
-
default:
|
|
144
|
-
return `Failed to fetch ${resource}: HTTP ${status}`;
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
/** Files to exclude when listing asset directory contents. */
|
|
148
|
-
const EXCLUDED_FILES = new Set(['manifest.json', 'README.md']);
|
|
149
|
-
/**
|
|
150
|
-
* List installable files in an asset's versioned directory on GitHub.
|
|
151
|
-
* Recursively traverses subdirectories. Filters out `manifest.json` and `README.md`.
|
|
152
|
-
*
|
|
153
|
-
* @param token - GitHub authentication token
|
|
154
|
-
* @param asset - Object with `name` and `type` identifying the asset
|
|
155
|
-
* @param version - Semver version string
|
|
156
|
-
* @param branch - Optional branch override
|
|
157
|
-
*/
|
|
158
|
-
export async function listAssetDirectoryFiles(token, asset, version, branch) {
|
|
159
|
-
const assetDir = buildAssetVersionDir(asset, version);
|
|
160
|
-
return listDirectoryFilesRecursive(token, assetDir, assetDir, branch);
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* Parse a comma-separated reviewers string (e.g. from `--reviewer` or the `atk reviewer`
|
|
164
|
-
* command) into a deduplicated list of trimmed, non-empty usernames. Dedup is
|
|
165
|
-
* case-insensitive but preserves the first-seen casing.
|
|
166
|
-
*/
|
|
167
|
-
export function parseReviewersInput(raw) {
|
|
168
|
-
const seen = new Set();
|
|
169
|
-
const result = [];
|
|
170
|
-
for (const part of raw.split(',')) {
|
|
171
|
-
const trimmed = part.trim();
|
|
172
|
-
if (!trimmed) {
|
|
173
|
-
continue;
|
|
174
|
-
}
|
|
175
|
-
const key = trimmed.toLowerCase();
|
|
176
|
-
if (seen.has(key)) {
|
|
177
|
-
continue;
|
|
178
|
-
}
|
|
179
|
-
seen.add(key);
|
|
180
|
-
result.push(trimmed);
|
|
181
|
-
}
|
|
182
|
-
return result;
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* Validate a GitHub username: alphanumeric characters and single hyphens only,
|
|
186
|
-
* no leading/trailing/consecutive hyphens, max 39 characters.
|
|
187
|
-
*/
|
|
188
|
-
export function validateGithubUsername(username) {
|
|
189
|
-
if (!username) {
|
|
190
|
-
return { error: 'Username cannot be empty', valid: false };
|
|
191
|
-
}
|
|
192
|
-
if (username.length > 39) {
|
|
193
|
-
return { error: `Username '${username}' exceeds GitHub's 39 character limit`, valid: false };
|
|
194
|
-
}
|
|
195
|
-
if (!/^[a-zA-Z\d]+(-[a-zA-Z\d]+)*$/.test(username)) {
|
|
196
|
-
return {
|
|
197
|
-
error: `Invalid GitHub username '${username}': must be alphanumeric characters and single hyphens, and cannot begin or end with a hyphen`,
|
|
198
|
-
valid: false,
|
|
199
|
-
};
|
|
200
|
-
}
|
|
201
|
-
return { valid: true };
|
|
202
|
-
}
|
|
203
|
-
/**
|
|
204
|
-
* Recursively list all files in a GitHub directory.
|
|
205
|
-
* Returns file entries with paths relative to the given root directory.
|
|
206
|
-
*/
|
|
207
|
-
async function listDirectoryFilesRecursive(token, dirPath, rootDir, branch) {
|
|
208
|
-
const url = buildGitHubContentsUrl(dirPath, branch);
|
|
209
|
-
const response = await fetchWithRetry(url, {
|
|
210
|
-
headers: buildGitHubHeaders(token),
|
|
211
|
-
});
|
|
212
|
-
if (!response.ok) {
|
|
213
|
-
throw new Error(httpErrorMessage(response.status, 'asset file list'));
|
|
214
|
-
}
|
|
215
|
-
const contents = (await response.json());
|
|
216
|
-
const entries = [];
|
|
217
|
-
for (const item of contents) {
|
|
218
|
-
if (item.type === 'dir') {
|
|
219
|
-
const nested = await listDirectoryFilesRecursive(token, item.path, rootDir, branch);
|
|
220
|
-
entries.push(...nested);
|
|
221
|
-
}
|
|
222
|
-
else if (item.type === 'file' && !EXCLUDED_FILES.has(item.name)) {
|
|
223
|
-
// Compute relative path from asset version root (strip rootDir prefix + slash)
|
|
224
|
-
const relativePath = item.path.slice(rootDir.length + 1);
|
|
225
|
-
entries.push({ name: item.name, path: item.path, relativePath });
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
return entries;
|
|
229
|
-
}
|
|
230
|
-
//# sourceMappingURL=github.js.map
|
package/build/lib/github.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/lib/github.ts"],"names":[],"mappings":"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"}
|