@surething/cockpit 1.0.235 → 1.0.237

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.
Files changed (207) hide show
  1. package/.next-prod/BUILD_ID +1 -1
  2. package/.next-prod/app-path-routes-manifest.json +2 -2
  3. package/.next-prod/build-manifest.json +3 -3
  4. package/.next-prod/prerender-manifest.json +3 -3
  5. package/.next-prod/react-loadable-manifest.json +7 -0
  6. package/.next-prod/server/app/_global-error/page.js.nft.json +1 -1
  7. package/.next-prod/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next-prod/server/app/_global-error.html +1 -1
  9. package/.next-prod/server/app/_global-error.rsc +1 -1
  10. package/.next-prod/server/app/_global-error.segments/_full.segment.rsc +1 -1
  11. package/.next-prod/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  12. package/.next-prod/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  13. package/.next-prod/server/app/_global-error.segments/_head.segment.rsc +1 -1
  14. package/.next-prod/server/app/_global-error.segments/_index.segment.rsc +1 -1
  15. package/.next-prod/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/.next-prod/server/app/_not-found/page.js +1 -1
  17. package/.next-prod/server/app/_not-found/page.js.nft.json +1 -1
  18. package/.next-prod/server/app/_not-found/page_client-reference-manifest.js +1 -1
  19. package/.next-prod/server/app/_not-found.html +2 -2
  20. package/.next-prod/server/app/_not-found.rsc +3 -3
  21. package/.next-prod/server/app/_not-found.segments/_full.segment.rsc +3 -3
  22. package/.next-prod/server/app/_not-found.segments/_head.segment.rsc +1 -1
  23. package/.next-prod/server/app/_not-found.segments/_index.segment.rsc +3 -3
  24. package/.next-prod/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  25. package/.next-prod/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  26. package/.next-prod/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  27. package/.next-prod/server/app/api/agent/test/route.js.nft.json +1 -1
  28. package/.next-prod/server/app/api/bash/route.js.nft.json +1 -1
  29. package/.next-prod/server/app/api/chat/codex/route.js.nft.json +1 -1
  30. package/.next-prod/server/app/api/chat/deepseek/route.js.nft.json +1 -1
  31. package/.next-prod/server/app/api/chat/kimi/route.js.nft.json +1 -1
  32. package/.next-prod/server/app/api/chat/ollama/route.js.nft.json +1 -1
  33. package/.next-prod/server/app/api/chat/pty-input/route.js.nft.json +1 -1
  34. package/.next-prod/server/app/api/chat/route.js.nft.json +1 -1
  35. package/.next-prod/server/app/api/chat/stop/route.js.nft.json +1 -1
  36. package/.next-prod/server/app/api/claude-stats/route.js.nft.json +1 -1
  37. package/.next-prod/server/app/api/commands/route.js.nft.json +1 -1
  38. package/.next-prod/server/app/api/comments/route.js.nft.json +1 -1
  39. package/.next-prod/server/app/api/db/columns/route.js.nft.json +1 -1
  40. package/.next-prod/server/app/api/db/connect/route.js.nft.json +1 -1
  41. package/.next-prod/server/app/api/db/disconnect/route.js.nft.json +1 -1
  42. package/.next-prod/server/app/api/db/export/route.js.nft.json +1 -1
  43. package/.next-prod/server/app/api/db/query/route.js.nft.json +1 -1
  44. package/.next-prod/server/app/api/db/schemas/route.js.nft.json +1 -1
  45. package/.next-prod/server/app/api/dev/spans/route.js.nft.json +1 -1
  46. package/.next-prod/server/app/api/extension/version/route.js.nft.json +1 -1
  47. package/.next-prod/server/app/api/file/route.js +1 -1
  48. package/.next-prod/server/app/api/file/route.js.nft.json +1 -1
  49. package/.next-prod/server/app/api/files/blame/route.js.nft.json +1 -1
  50. package/.next-prod/server/app/api/files/clipboard/route.js.nft.json +1 -1
  51. package/.next-prod/server/app/api/files/copy/route.js.nft.json +1 -1
  52. package/.next-prod/server/app/api/files/delete/route.js.nft.json +1 -1
  53. package/.next-prod/server/app/api/files/expanded/route.js.nft.json +1 -1
  54. package/.next-prod/server/app/api/files/index/route.js.nft.json +1 -1
  55. package/.next-prod/server/app/api/files/init/route.js.nft.json +1 -1
  56. package/.next-prod/server/app/api/files/paste/route.js.nft.json +1 -1
  57. package/.next-prod/server/app/api/files/read/route.js +1 -1
  58. package/.next-prod/server/app/api/files/read/route.js.nft.json +1 -1
  59. package/.next-prod/server/app/api/files/readdir/route.js.nft.json +1 -1
  60. package/.next-prod/server/app/api/files/recent/route.js.nft.json +1 -1
  61. package/.next-prod/server/app/api/files/save/route.js.nft.json +1 -1
  62. package/.next-prod/server/app/api/files/search/route.js.nft.json +1 -1
  63. package/.next-prod/server/app/api/files/stat/route.js +1 -1
  64. package/.next-prod/server/app/api/files/stat/route.js.nft.json +1 -1
  65. package/.next-prod/server/app/api/files/text/route.js +1 -1
  66. package/.next-prod/server/app/api/files/text/route.js.nft.json +1 -1
  67. package/.next-prod/server/app/api/git/branch-diff/route.js.nft.json +1 -1
  68. package/.next-prod/server/app/api/git/branches/route.js.nft.json +1 -1
  69. package/.next-prod/server/app/api/git/commit-diff/route.js.nft.json +1 -1
  70. package/.next-prod/server/app/api/git/commits/route.js.nft.json +1 -1
  71. package/.next-prod/server/app/api/git/current-branch/route.js.nft.json +1 -1
  72. package/.next-prod/server/app/api/git/diff/route.js.nft.json +1 -1
  73. package/.next-prod/server/app/api/git/discard/route.js.nft.json +1 -1
  74. package/.next-prod/server/app/api/git/stage/route.js.nft.json +1 -1
  75. package/.next-prod/server/app/api/git/status/route.js.nft.json +1 -1
  76. package/.next-prod/server/app/api/git/unstage/route.js.nft.json +1 -1
  77. package/.next-prod/server/app/api/git/worktree/route.js.nft.json +1 -1
  78. package/.next-prod/server/app/api/global-state/route.js.nft.json +1 -1
  79. package/.next-prod/server/app/api/health/route.js.nft.json +1 -1
  80. package/.next-prod/server/app/api/jupyter/load/route.js.nft.json +1 -1
  81. package/.next-prod/server/app/api/jupyter/save/route.js.nft.json +1 -1
  82. package/.next-prod/server/app/api/jupyter/shutdown/route.js.nft.json +1 -1
  83. package/.next-prod/server/app/api/lsp/definition/route.js.nft.json +1 -1
  84. package/.next-prod/server/app/api/lsp/hover/route.js.nft.json +1 -1
  85. package/.next-prod/server/app/api/lsp/references/route.js.nft.json +1 -1
  86. package/.next-prod/server/app/api/lsp/status/route.js.nft.json +1 -1
  87. package/.next-prod/server/app/api/lsp/warmup/route.js.nft.json +1 -1
  88. package/.next-prod/server/app/api/mysql/columns/route.js.nft.json +1 -1
  89. package/.next-prod/server/app/api/mysql/connect/route.js.nft.json +1 -1
  90. package/.next-prod/server/app/api/mysql/disconnect/route.js.nft.json +1 -1
  91. package/.next-prod/server/app/api/mysql/export/route.js.nft.json +1 -1
  92. package/.next-prod/server/app/api/mysql/query/route.js.nft.json +1 -1
  93. package/.next-prod/server/app/api/mysql/schemas/route.js.nft.json +1 -1
  94. package/.next-prod/server/app/api/neo4j/connect/route.js.nft.json +1 -1
  95. package/.next-prod/server/app/api/neo4j/disconnect/route.js.nft.json +1 -1
  96. package/.next-prod/server/app/api/neo4j/query/route.js.nft.json +1 -1
  97. package/.next-prod/server/app/api/neo4j/schema/route.js.nft.json +1 -1
  98. package/.next-prod/server/app/api/note/route.js +1 -1
  99. package/.next-prod/server/app/api/note/route.js.nft.json +1 -1
  100. package/.next-prod/server/app/api/ollama/models/route.js.nft.json +1 -1
  101. package/.next-prod/server/app/api/ollama/start/route.js.nft.json +1 -1
  102. package/.next-prod/server/app/api/open-cursor/route.js.nft.json +1 -1
  103. package/.next-prod/server/app/api/open-vscode/route.js.nft.json +1 -1
  104. package/.next-prod/server/app/api/pick-folder/route.js.nft.json +1 -1
  105. package/.next-prod/server/app/api/pinned-sessions/route.js.nft.json +1 -1
  106. package/.next-prod/server/app/api/project-settings/route.js.nft.json +1 -1
  107. package/.next-prod/server/app/api/project-state/route.js.nft.json +1 -1
  108. package/.next-prod/server/app/api/projectGraph/affected/route.js.nft.json +1 -1
  109. package/.next-prod/server/app/api/projectGraph/callees/route.js.nft.json +1 -1
  110. package/.next-prod/server/app/api/projectGraph/callers/route.js.nft.json +1 -1
  111. package/.next-prod/server/app/api/projectGraph/coedit/route.js.nft.json +1 -1
  112. package/.next-prod/server/app/api/projectGraph/context/route.js.nft.json +1 -1
  113. package/.next-prod/server/app/api/projectGraph/file/route.js.nft.json +1 -1
  114. package/.next-prod/server/app/api/projectGraph/file-functions/route.js.nft.json +1 -1
  115. package/.next-prod/server/app/api/projectGraph/impact/route.js.nft.json +1 -1
  116. package/.next-prod/server/app/api/projectGraph/related/route.js.nft.json +1 -1
  117. package/.next-prod/server/app/api/projectGraph/risk/route.js.nft.json +1 -1
  118. package/.next-prod/server/app/api/projectGraph/search/route.js.nft.json +1 -1
  119. package/.next-prod/server/app/api/projects/route.js.nft.json +1 -1
  120. package/.next-prod/server/app/api/push/public-key/route.js.nft.json +1 -1
  121. package/.next-prod/server/app/api/push/subscribe/route.js.nft.json +1 -1
  122. package/.next-prod/server/app/api/push/unsubscribe/route.js.nft.json +1 -1
  123. package/.next-prod/server/app/api/redis/command/route.js.nft.json +1 -1
  124. package/.next-prod/server/app/api/redis/connect/route.js.nft.json +1 -1
  125. package/.next-prod/server/app/api/redis/delete/route.js.nft.json +1 -1
  126. package/.next-prod/server/app/api/redis/disconnect/route.js.nft.json +1 -1
  127. package/.next-prod/server/app/api/redis/get/route.js.nft.json +1 -1
  128. package/.next-prod/server/app/api/redis/keys/route.js.nft.json +1 -1
  129. package/.next-prod/server/app/api/redis/set/route.js.nft.json +1 -1
  130. package/.next-prod/server/app/api/review/[id]/comments/route.js.nft.json +1 -1
  131. package/.next-prod/server/app/api/review/[id]/replies/route.js.nft.json +1 -1
  132. package/.next-prod/server/app/api/review/[id]/route.js.nft.json +1 -1
  133. package/.next-prod/server/app/api/review/identify/route.js.nft.json +1 -1
  134. package/.next-prod/server/app/api/review/order/route.js.nft.json +1 -1
  135. package/.next-prod/server/app/api/review/route.js.nft.json +1 -1
  136. package/.next-prod/server/app/api/review/share-info/route.js.nft.json +1 -1
  137. package/.next-prod/server/app/api/review/users/route.js.nft.json +1 -1
  138. package/.next-prod/server/app/api/scheduled-tasks/route.js.nft.json +1 -1
  139. package/.next-prod/server/app/api/services/config/route.js.nft.json +1 -1
  140. package/.next-prod/server/app/api/services/scripts/route.js.nft.json +1 -1
  141. package/.next-prod/server/app/api/session/[sessionId]/fork/route.js.nft.json +1 -1
  142. package/.next-prod/server/app/api/session/[sessionId]/history/route.js.nft.json +1 -1
  143. package/.next-prod/server/app/api/session-by-path/route.js.nft.json +1 -1
  144. package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js.nft.json +1 -1
  145. package/.next-prod/server/app/api/sessions/projects/route.js.nft.json +1 -1
  146. package/.next-prod/server/app/api/sessions/route.js.nft.json +1 -1
  147. package/.next-prod/server/app/api/settings/route.js.nft.json +1 -1
  148. package/.next-prod/server/app/api/skills/[id]/route.js.nft.json +1 -1
  149. package/.next-prod/server/app/api/skills/content/route.js.nft.json +1 -1
  150. package/.next-prod/server/app/api/skills/route.js.nft.json +1 -1
  151. package/.next-prod/server/app/api/terminal/aliases/route.js.nft.json +1 -1
  152. package/.next-prod/server/app/api/terminal/autocomplete/route.js.nft.json +1 -1
  153. package/.next-prod/server/app/api/terminal/bubble-order/route.js.nft.json +1 -1
  154. package/.next-prod/server/app/api/terminal/env/route.js.nft.json +1 -1
  155. package/.next-prod/server/app/api/terminal/history/route.js.nft.json +1 -1
  156. package/.next-prod/server/app/api/version/route.js.nft.json +1 -1
  157. package/.next-prod/server/app/favicon.ico/route.js.nft.json +1 -1
  158. package/.next-prod/server/app/m/page.js +2 -2
  159. package/.next-prod/server/app/m/page.js.nft.json +1 -1
  160. package/.next-prod/server/app/m/page_client-reference-manifest.js +1 -1
  161. package/.next-prod/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  162. package/.next-prod/server/app/page.js +1 -1
  163. package/.next-prod/server/app/page.js.nft.json +1 -1
  164. package/.next-prod/server/app/page_client-reference-manifest.js +1 -1
  165. package/.next-prod/server/app/project/page.js +1 -1
  166. package/.next-prod/server/app/project/page.js.nft.json +1 -1
  167. package/.next-prod/server/app/project/page_client-reference-manifest.js +1 -1
  168. package/.next-prod/server/app/review/[id]/page.js +1 -1
  169. package/.next-prod/server/app/review/[id]/page.js.nft.json +1 -1
  170. package/.next-prod/server/app/review/[id]/page_client-reference-manifest.js +1 -1
  171. package/.next-prod/server/app-paths-manifest.json +2 -2
  172. package/.next-prod/server/chunks/2939.js +1 -1
  173. package/.next-prod/server/chunks/7270.js +45 -0
  174. package/.next-prod/server/chunks/{4257.js → 8523.js} +3 -3
  175. package/.next-prod/server/chunks/8916.js +1 -1
  176. package/.next-prod/server/chunks/9658.js +3 -3
  177. package/.next-prod/server/middleware-build-manifest.js +1 -1
  178. package/.next-prod/server/middleware-react-loadable-manifest.js +1 -1
  179. package/.next-prod/server/pages/404.html +2 -2
  180. package/.next-prod/server/pages/500.html +1 -1
  181. package/.next-prod/server/server-reference-manifest.json +1 -1
  182. package/.next-prod/static/chunks/{217-656e1fdbc820d9dd.js → 217-1bf54355c7c0c898.js} +1 -1
  183. package/.next-prod/static/chunks/3283-80d4d836a00d7bb4.js +25 -0
  184. package/.next-prod/static/chunks/6784-11888818d8e3114e.js +0 -0
  185. package/.next-prod/static/chunks/{9428-ffc16bc24c6e0da1.js → 6787-866a3046a4a0fa50.js} +3 -3
  186. package/.next-prod/static/chunks/9b0008ae.0167ac0019d88811.js +45 -0
  187. package/.next-prod/static/chunks/app/{layout-e9ada9458f95f29c.js → layout-3781fa5b8e04f272.js} +1 -1
  188. package/.next-prod/static/chunks/app/m/page-bf48756850ebe349.js +1 -0
  189. package/.next-prod/static/chunks/app/{page-8f349cc054af0d5b.js → page-e63d872a9af204ae.js} +1 -1
  190. package/.next-prod/static/chunks/app/project/{page-8f349cc054af0d5b.js → page-e63d872a9af204ae.js} +1 -1
  191. package/.next-prod/static/chunks/webpack-fb9d282647d95d0a.js +1 -0
  192. package/.next-prod/static/css/7ed891f30e531791.css +1 -0
  193. package/.next-prod/trace +13 -13
  194. package/.next-prod/trace-build +1 -1
  195. package/bin/cock.mjs +26 -1
  196. package/bin/postinstall.mjs +23 -0
  197. package/package.json +7 -3
  198. package/public/pdfjs/pdf.worker.min.mjs +29 -0
  199. package/scripts/claudeBinary.mjs +38 -0
  200. package/scripts/copy-pdfjs-worker.mjs +74 -0
  201. package/.next-prod/static/chunks/2576-47a83a4d8066d196.js +0 -25
  202. package/.next-prod/static/chunks/6784-8a99d051f03bb100.js +0 -0
  203. package/.next-prod/static/chunks/app/m/page-06a5ea22c02892d1.js +0 -1
  204. package/.next-prod/static/chunks/webpack-2c71a79c277961bc.js +0 -1
  205. package/.next-prod/static/css/44a979b47b165c63.css +0 -1
  206. /package/.next-prod/static/{cfyYtf1Sz25gcv6tfZqFF → pibOtHY_hUMQlMPI6P_Mk}/_buildManifest.js +0 -0
  207. /package/.next-prod/static/{cfyYtf1Sz25gcv6tfZqFF → pibOtHY_hUMQlMPI6P_Mk}/_ssgManifest.js +0 -0
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Detect whether the Claude Agent SDK's platform-specific native `claude`
3
+ * binary is actually installed for the current platform.
4
+ *
5
+ * The binary ships as an OPTIONAL dependency of `@anthropic-ai/claude-agent-sdk`
6
+ * (one sub-package per platform, e.g. `-darwin-arm64`). npm can silently skip it
7
+ * during an in-place `npm i -g` upgrade when the SDK version bumps via its caret
8
+ * range, leaving the SDK unable to spawn `claude` at runtime with:
9
+ * "Native CLI binary for <platform>-<arch> not found. Reinstall
10
+ * @anthropic-ai/claude-agent-sdk without --omit=optional, ..."
11
+ *
12
+ * `cockpit update`, postinstall, and CLI startup all call this so the problem is
13
+ * surfaced (and repaired) BEFORE the user hits the runtime error mid-chat.
14
+ */
15
+ import { createRequire } from 'module';
16
+ import { existsSync } from 'fs';
17
+ import { join, dirname } from 'path';
18
+
19
+ const require = createRequire(import.meta.url);
20
+
21
+ /** @returns {boolean} true if the current platform's `claude` binary resolves. */
22
+ export function hasClaudeBinary() {
23
+ const base = `${process.platform}-${process.arch}`;
24
+ // linux ships glibc and musl variants under distinct package names.
25
+ const variants = process.platform === 'linux' ? [base, `${base}-musl`] : [base];
26
+ for (const variant of variants) {
27
+ try {
28
+ const pkgJson = require.resolve(
29
+ `@anthropic-ai/claude-agent-sdk-${variant}/package.json`,
30
+ );
31
+ const bin = join(dirname(pkgJson), 'claude');
32
+ if (existsSync(bin) || existsSync(`${bin}.exe`)) return true;
33
+ } catch {
34
+ // Not resolvable → this variant's sub-package isn't installed.
35
+ }
36
+ }
37
+ return false;
38
+ }
@@ -0,0 +1,74 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Copy the pdf.js worker from node_modules into public/pdfjs/.
4
+ *
5
+ * Source: node_modules/pdfjs-dist/build/pdf.worker.min.mjs
6
+ * Destination: public/pdfjs/pdf.worker.min.mjs
7
+ *
8
+ * Why vendor it into public/ instead of bundling via `new URL(..., import.meta.url)`:
9
+ * the project builds with `next build --webpack` AND runs a custom dev server,
10
+ * and the pdf.js worker is a large standalone ESM module. Serving it as a static
11
+ * asset from `/pdfjs/pdf.worker.min.mjs` (referenced via
12
+ * `pdfjs.GlobalWorkerOptions.workerSrc`) is bundler-agnostic and mirrors how the
13
+ * tree-sitter WASMs are handled (see copy-tree-sitter-wasms.mjs).
14
+ *
15
+ * Behaviour:
16
+ * - Idempotent: skips when the destination already matches by size + mtime.
17
+ * - Graceful: if the source is missing, logs a notice and returns without
18
+ * throwing (published package already vendors the file under public/pdfjs/).
19
+ */
20
+
21
+ import { existsSync, mkdirSync, copyFileSync, statSync } from 'node:fs';
22
+ import { dirname, join, resolve } from 'node:path';
23
+ import { fileURLToPath, pathToFileURL } from 'node:url';
24
+
25
+ const SCRIPT_DIR = dirname(fileURLToPath(import.meta.url));
26
+ const SCRIPT_PROJECT_ROOT = join(SCRIPT_DIR, '..');
27
+
28
+ const WORKER_FILE = 'pdf.worker.min.mjs';
29
+
30
+ /**
31
+ * Copy the pdf.js worker into `<projectRoot>/public/pdfjs/`. Idempotent.
32
+ *
33
+ * @param projectRoot Absolute project root. Defaults to the repo this script
34
+ * lives in. `bin/postinstall.mjs` passes the consuming project's root.
35
+ * @returns true if a copy happened (or a warning was emitted); false if the
36
+ * destination was already up to date.
37
+ */
38
+ export function copyPdfjsWorker(projectRoot = SCRIPT_PROJECT_ROOT) {
39
+ const destDir = join(projectRoot, 'public', 'pdfjs');
40
+ const src = join(projectRoot, 'node_modules', 'pdfjs-dist', 'build', WORKER_FILE);
41
+ const dst = join(destDir, WORKER_FILE);
42
+
43
+ mkdirSync(destDir, { recursive: true });
44
+
45
+ if (!existsSync(src)) {
46
+ // Production install without the package present — the worker is expected
47
+ // to be vendored in public/pdfjs/ from the published package.
48
+ if (!existsSync(dst)) {
49
+ console.warn(
50
+ '[copy-pdfjs-worker] pdfjs-dist not installed and worker missing in public/pdfjs/. ' +
51
+ 'PDF preview will be unavailable.',
52
+ );
53
+ }
54
+ return false;
55
+ }
56
+
57
+ if (existsSync(dst)) {
58
+ const a = statSync(src);
59
+ const b = statSync(dst);
60
+ if (a.size === b.size && Math.abs(a.mtimeMs - b.mtimeMs) < 1000) {
61
+ console.log('[copy-pdfjs-worker] worker already up to date');
62
+ return false;
63
+ }
64
+ }
65
+
66
+ copyFileSync(src, dst);
67
+ console.log(`[copy-pdfjs-worker] ✓ ${WORKER_FILE}`);
68
+ return true;
69
+ }
70
+
71
+ // Run as CLI when invoked directly (`node scripts/copy-pdfjs-worker.mjs`).
72
+ if (process.argv[1] && import.meta.url === pathToFileURL(resolve(process.argv[1])).href) {
73
+ copyPdfjsWorker();
74
+ }