claudekit-cli 3.41.4-dev.39 → 3.41.4-dev.40
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/index.js +29 -17
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -60747,7 +60747,7 @@ var package_default;
|
|
|
60747
60747
|
var init_package = __esm(() => {
|
|
60748
60748
|
package_default = {
|
|
60749
60749
|
name: "claudekit-cli",
|
|
60750
|
-
version: "3.41.4-dev.
|
|
60750
|
+
version: "3.41.4-dev.40",
|
|
60751
60751
|
description: "CLI tool for bootstrapping and updating ClaudeKit projects",
|
|
60752
60752
|
type: "module",
|
|
60753
60753
|
repository: {
|
|
@@ -79144,17 +79144,12 @@ function launchDesktopApp(binaryPath, options2 = {}) {
|
|
|
79144
79144
|
}
|
|
79145
79145
|
// src/domains/desktop/desktop-release-service.ts
|
|
79146
79146
|
init_version_utils();
|
|
79147
|
-
var
|
|
79148
|
-
|
|
79149
|
-
|
|
79150
|
-
|
|
79151
|
-
|
|
79152
|
-
|
|
79153
|
-
tag = `desktop-v${version}`;
|
|
79154
|
-
} else {
|
|
79155
|
-
tag = channel === "dev" ? "desktop-latest-dev" : "desktop-latest";
|
|
79156
|
-
}
|
|
79157
|
-
return `${DESKTOP_RELEASE_REPOSITORY}/${tag}/desktop-manifest.json`;
|
|
79147
|
+
var GITHUB_API_REPO = "https://api.github.com/repos/mrgoonie/claudekit-cli";
|
|
79148
|
+
var MANIFEST_ASSET_NAME = "desktop-manifest.json";
|
|
79149
|
+
function resolveTag(opts) {
|
|
79150
|
+
if (opts?.version)
|
|
79151
|
+
return `desktop-v${opts.version}`;
|
|
79152
|
+
return (opts?.channel ?? "stable") === "dev" ? "desktop-latest-dev" : "desktop-latest";
|
|
79158
79153
|
}
|
|
79159
79154
|
function resolveManifestChannel(rawManifest, opts) {
|
|
79160
79155
|
if (rawManifest && typeof rawManifest === "object" && "channel" in rawManifest) {
|
|
@@ -79174,12 +79169,29 @@ function resolveManifestChannel(rawManifest, opts) {
|
|
|
79174
79169
|
}
|
|
79175
79170
|
return "stable";
|
|
79176
79171
|
}
|
|
79177
|
-
async function
|
|
79178
|
-
const
|
|
79179
|
-
|
|
79180
|
-
|
|
79172
|
+
async function fetchManifestViaApi(tag, fetchFn) {
|
|
79173
|
+
const tagRes = await fetchFn(`${GITHUB_API_REPO}/releases/tags/${tag}`, {
|
|
79174
|
+
headers: { Accept: "application/vnd.github+json" }
|
|
79175
|
+
});
|
|
79176
|
+
if (!tagRes.ok) {
|
|
79177
|
+
throw new Error(`Failed to resolve desktop release tag ${tag}: ${tagRes.status} ${tagRes.statusText}`);
|
|
79178
|
+
}
|
|
79179
|
+
const tagBody = await tagRes.json();
|
|
79180
|
+
const asset = tagBody.assets?.find((a3) => a3.name === MANIFEST_ASSET_NAME);
|
|
79181
|
+
if (!asset?.id) {
|
|
79182
|
+
throw new Error(`Release tag ${tag} has no ${MANIFEST_ASSET_NAME} asset`);
|
|
79181
79183
|
}
|
|
79182
|
-
const
|
|
79184
|
+
const assetRes = await fetchFn(`${GITHUB_API_REPO}/releases/assets/${asset.id}`, {
|
|
79185
|
+
headers: { Accept: "application/octet-stream" }
|
|
79186
|
+
});
|
|
79187
|
+
if (!assetRes.ok) {
|
|
79188
|
+
throw new Error(`Failed to fetch desktop manifest asset ${asset.id}: ${assetRes.status} ${assetRes.statusText}`);
|
|
79189
|
+
}
|
|
79190
|
+
return assetRes.json();
|
|
79191
|
+
}
|
|
79192
|
+
async function fetchDesktopReleaseManifest(opts, fetchFn = globalThis.fetch) {
|
|
79193
|
+
const tag = resolveTag(opts);
|
|
79194
|
+
const rawManifest = await fetchManifestViaApi(tag, fetchFn);
|
|
79183
79195
|
const manifestRecord = rawManifest && typeof rawManifest === "object" ? rawManifest : { value: rawManifest };
|
|
79184
79196
|
return parseDesktopReleaseManifest({
|
|
79185
79197
|
...manifestRecord,
|