jules-ink 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +1 -1
- package/dist/pipeline.js +2 -1
- package/dist/processor.d.ts +1 -1
- package/dist/processor.js +2 -1
- package/dist/server.js +4 -4
- package/dist/session-stream.js +2 -1
- package/package.json +1 -1
- package/ui/dist/server/chunks/{index_DJ2vRdKd.mjs → index_DPFooF1i.mjs} +2 -1
- package/ui/dist/server/entry.mjs +1 -1
- package/ui/dist/server/{manifest_DOEjyU_g.mjs → manifest_Us9s2mbf.mjs} +1 -1
- package/ui/dist/server/pages/api/label/image.astro.mjs +1 -1
- package/ui/dist/server/pages/api/print.astro.mjs +1 -1
- package/ui/dist/server/pages/api/printers.astro.mjs +1 -1
- package/ui/dist/server/pages/api/session/_id_/stream.astro.mjs +1 -1
- package/ui/dist/server/pages/api/sessions.astro.mjs +2 -11
- package/ui/dist/server/pages/api/tones/_name_.astro.mjs +0 -1
- package/ui/dist/server/pages/api/tones.astro.mjs +0 -1
- package/ui/dist/server/pages/index.astro.mjs +2 -1
- package/ui/dist/server/pages/session.astro.mjs +2 -1
package/dist/cli.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { Command } from 'commander';
|
|
3
|
-
import { streamSession } from './session-stream.js';
|
|
4
3
|
import { generateLabel } from './label-generator.js';
|
|
5
4
|
import thermal from './print.js';
|
|
6
5
|
import fs from 'fs';
|
|
@@ -55,6 +54,7 @@ program
|
|
|
55
54
|
if (!fs.existsSync(outDir))
|
|
56
55
|
fs.mkdirSync(outDir, { recursive: true });
|
|
57
56
|
let repo = 'unknown/repo';
|
|
57
|
+
const { streamSession } = await import('./session-stream.js');
|
|
58
58
|
try {
|
|
59
59
|
for await (const event of streamSession(sessionId, { model, tone })) {
|
|
60
60
|
if (event.type === 'session:info') {
|
package/dist/pipeline.js
CHANGED
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
* This module couples streaming, file I/O, and printing in a single generator.
|
|
4
4
|
* The new `streamSession` yields portable typed events without I/O side effects.
|
|
5
5
|
*/
|
|
6
|
-
import { jules } from '@google/jules-sdk';
|
|
7
6
|
import { SessionSummarizer } from './summarizer.js';
|
|
8
7
|
import { generateLabel } from './label-generator.js';
|
|
9
8
|
import fs from 'fs';
|
|
@@ -32,6 +31,8 @@ export async function* processSessionAndPrint(sessionId, options = {}) {
|
|
|
32
31
|
else if (!options.printer) {
|
|
33
32
|
console.warn('⚠️ No printer found. Labels will be saved to disk only.');
|
|
34
33
|
}
|
|
34
|
+
const { connect } = await import('@google/jules-sdk');
|
|
35
|
+
const jules = connect();
|
|
35
36
|
const summarizer = new SessionSummarizer({
|
|
36
37
|
backend: 'cloud',
|
|
37
38
|
apiKey: process.env.GEMINI_API_KEY,
|
package/dist/processor.d.ts
CHANGED
package/dist/processor.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { jules } from '@google/jules-sdk';
|
|
2
1
|
import { analyzeChangeSet } from './analyzer.js';
|
|
3
2
|
/**
|
|
4
3
|
* Streams activities from a Jules session and yields parsed metrics
|
|
@@ -6,6 +5,8 @@ import { analyzeChangeSet } from './analyzer.js';
|
|
|
6
5
|
*/
|
|
7
6
|
export async function* streamChangeMetrics(sessionId, options = {}) {
|
|
8
7
|
const { live = true } = options;
|
|
8
|
+
const { connect } = await import('@google/jules-sdk');
|
|
9
|
+
const jules = connect();
|
|
9
10
|
const session = jules.session(sessionId);
|
|
10
11
|
// Choose between the infinite stream or the finite history
|
|
11
12
|
const activityStream = live ? session.stream() : session.history();
|
package/dist/server.js
CHANGED
|
@@ -13,13 +13,13 @@ const allowedOrigins = process.env.ALLOWED_ORIGINS
|
|
|
13
13
|
app.use('/*', cors({
|
|
14
14
|
origin: allowedOrigins,
|
|
15
15
|
}));
|
|
16
|
-
const apiKey = process.env["GEMINI_API_KEY"];
|
|
17
|
-
const ai = apiKey ? new GoogleGenAI({ apiKey }) : null;
|
|
18
16
|
const model = "imagen-4.0-generate-001";
|
|
19
17
|
app.post('/api/generate', async (c) => {
|
|
20
|
-
|
|
18
|
+
const apiKey = process.env["GEMINI_API_KEY"];
|
|
19
|
+
if (!apiKey) {
|
|
21
20
|
return c.json({ error: "GEMINI_API_KEY environment variable is required" }, 500);
|
|
22
21
|
}
|
|
22
|
+
const ai = new GoogleGenAI({ apiKey });
|
|
23
23
|
const { prompt } = await c.req.json();
|
|
24
24
|
if (!prompt)
|
|
25
25
|
return c.json({ error: 'prompt required' }, 400);
|
|
@@ -55,7 +55,7 @@ app.post('/api/generate', async (c) => {
|
|
|
55
55
|
export default app;
|
|
56
56
|
const isMain = process.argv[1] === fileURLToPath(import.meta.url) || process.argv[1]?.endsWith('server.ts');
|
|
57
57
|
if (isMain) {
|
|
58
|
-
if (!
|
|
58
|
+
if (!process.env["GEMINI_API_KEY"]) {
|
|
59
59
|
throw new Error("GEMINI_API_KEY environment variable is required");
|
|
60
60
|
}
|
|
61
61
|
const controller = new AbortController();
|
package/dist/session-stream.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { jules } from '@google/jules-sdk';
|
|
2
1
|
import { SessionSummarizer } from './summarizer.js';
|
|
3
2
|
/**
|
|
4
3
|
* Portable session streaming core.
|
|
@@ -13,6 +12,8 @@ export async function* streamSession(sessionId, options = {}) {
|
|
|
13
12
|
cloudModelName: model,
|
|
14
13
|
tone,
|
|
15
14
|
});
|
|
15
|
+
const { connect } = await import('@google/jules-sdk');
|
|
16
|
+
const jules = connect();
|
|
16
17
|
let rollingSummary = '';
|
|
17
18
|
const session = jules.session(sessionId);
|
|
18
19
|
// Emit session metadata
|
package/package.json
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { jules } from '@google/jules-sdk';
|
|
2
1
|
import { GoogleGenAI } from '@google/genai';
|
|
3
2
|
import { Ollama } from 'ollama';
|
|
4
3
|
import parseDiff from 'parse-diff';
|
|
@@ -256,6 +255,8 @@ async function* streamSession(sessionId, options = {}) {
|
|
|
256
255
|
cloudModelName: model,
|
|
257
256
|
tone,
|
|
258
257
|
});
|
|
258
|
+
const { connect } = await import('@google/jules-sdk');
|
|
259
|
+
const jules = connect();
|
|
259
260
|
let rollingSummary = '';
|
|
260
261
|
const session = jules.session(sessionId);
|
|
261
262
|
// Emit session metadata
|
package/ui/dist/server/entry.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { renderers } from './renderers.mjs';
|
|
2
2
|
import { c as createExports, s as serverEntrypointModule } from './chunks/_@astrojs-ssr-adapter_DPVBl9mS.mjs';
|
|
3
|
-
import { manifest } from './
|
|
3
|
+
import { manifest } from './manifest_Us9s2mbf.mjs';
|
|
4
4
|
|
|
5
5
|
const serverIslandMap = new Map();;
|
|
6
6
|
|
|
@@ -95,7 +95,7 @@ function deserializeManifest(serializedManifest) {
|
|
|
95
95
|
};
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
-
const manifest = deserializeManifest({"hrefRoot":"file:///Users/davideast/Code/jules.ink/ui/","cacheDir":"file:///Users/davideast/Code/jules.ink/ui/node_modules/.astro/","outDir":"file:///Users/davideast/Code/jules.ink/ui/dist/","srcDir":"file:///Users/davideast/Code/jules.ink/ui/src/","publicDir":"file:///Users/davideast/Code/jules.ink/ui/public/","buildClientDir":"file:///Users/davideast/Code/jules.ink/ui/dist/client/","buildServerDir":"file:///Users/davideast/Code/jules.ink/ui/dist/server/","adapterName":"@astrojs/node","routes":[{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"type":"page","component":"_server-islands.astro","params":["name"],"segments":[[{"content":"_server-islands","dynamic":false,"spread":false}],[{"content":"name","dynamic":true,"spread":false}]],"pattern":"^\\/_server-islands\\/([^/]+?)\\/?$","prerender":false,"isIndex":false,"fallbackRoutes":[],"route":"/_server-islands/[name]","origin":"internal","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"type":"endpoint","isIndex":false,"route":"/_image","pattern":"^\\/_image\\/?$","segments":[[{"content":"_image","dynamic":false,"spread":false}]],"params":[],"component":"../node_modules/astro/dist/assets/endpoint/node.js","pathname":"/_image","prerender":false,"fallbackRoutes":[],"origin":"internal","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/keys","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/keys\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"keys","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/keys.ts","pathname":"/api/keys","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/label/image","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/label\\/image\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"label","dynamic":false,"spread":false}],[{"content":"image","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/label/image.ts","pathname":"/api/label/image","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/print","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/print\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"print","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/print.ts","pathname":"/api/print","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/print-stack/[id]","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/print-stack\\/([^/]+?)\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"print-stack","dynamic":false,"spread":false}],[{"content":"id","dynamic":true,"spread":false}]],"params":["id"],"component":"src/pages/api/print-stack/[id].ts","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/print-stack","isIndex":true,"type":"endpoint","pattern":"^\\/api\\/print-stack\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"print-stack","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/print-stack/index.ts","pathname":"/api/print-stack","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/printers","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/printers\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"printers","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/printers.ts","pathname":"/api/printers","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/session/[id]/pause","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/session\\/([^/]+?)\\/pause\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"session","dynamic":false,"spread":false}],[{"content":"id","dynamic":true,"spread":false}],[{"content":"pause","dynamic":false,"spread":false}]],"params":["id"],"component":"src/pages/api/session/[id]/pause.ts","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/session/[id]/stream","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/session\\/([^/]+?)\\/stream\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"session","dynamic":false,"spread":false}],[{"content":"id","dynamic":true,"spread":false}],[{"content":"stream","dynamic":false,"spread":false}]],"params":["id"],"component":"src/pages/api/session/[id]/stream.ts","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/sessions","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/sessions\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"sessions","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/sessions.ts","pathname":"/api/sessions","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/tones/[name]","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/tones\\/([^/]+?)\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"tones","dynamic":false,"spread":false}],[{"content":"name","dynamic":true,"spread":false}]],"params":["name"],"component":"src/pages/api/tones/[name].ts","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/tones","isIndex":true,"type":"endpoint","pattern":"^\\/api\\/tones\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"tones","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/tones/index.ts","pathname":"/api/tones","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/index.CwgqzyKA.css"}],"routeData":{"route":"/session","isIndex":false,"type":"page","pattern":"^\\/session\\/?$","segments":[[{"content":"session","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/session.astro","pathname":"/session","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/index.CwgqzyKA.css"}],"routeData":{"route":"/settings","isIndex":false,"type":"page","pattern":"^\\/settings\\/?$","segments":[[{"content":"settings","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/settings.astro","pathname":"/settings","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/index.CwgqzyKA.css"}],"routeData":{"route":"/","isIndex":true,"type":"page","pattern":"^\\/$","segments":[],"params":[],"component":"src/pages/index.astro","pathname":"/","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}}],"base":"/","trailingSlash":"ignore","compressHTML":true,"componentMetadata":[["/Users/davideast/Code/jules.ink/ui/src/pages/index.astro",{"propagation":"none","containsHead":true}],["/Users/davideast/Code/jules.ink/ui/src/pages/session.astro",{"propagation":"none","containsHead":true}],["/Users/davideast/Code/jules.ink/ui/src/pages/settings.astro",{"propagation":"none","containsHead":true}]],"renderers":[],"clientDirectives":[["idle","(()=>{var l=(n,t)=>{let i=async()=>{await(await n())()},e=typeof t.value==\"object\"?t.value:void 0,s={timeout:e==null?void 0:e.timeout};\"requestIdleCallback\"in window?window.requestIdleCallback(i,s):setTimeout(i,s.timeout||200)};(self.Astro||(self.Astro={})).idle=l;window.dispatchEvent(new Event(\"astro:idle\"));})();"],["load","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event(\"astro:load\"));})();"],["media","(()=>{var n=(a,t)=>{let i=async()=>{await(await a())()};if(t.value){let e=matchMedia(t.value);e.matches?i():e.addEventListener(\"change\",i,{once:!0})}};(self.Astro||(self.Astro={})).media=n;window.dispatchEvent(new Event(\"astro:media\"));})();"],["only","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).only=e;window.dispatchEvent(new Event(\"astro:only\"));})();"],["visible","(()=>{var a=(s,i,o)=>{let r=async()=>{await(await s())()},t=typeof i.value==\"object\"?i.value:void 0,c={rootMargin:t==null?void 0:t.rootMargin},n=new IntersectionObserver(e=>{for(let l of e)if(l.isIntersecting){n.disconnect(),r();break}},c);for(let e of o.children)n.observe(e)};(self.Astro||(self.Astro={})).visible=a;window.dispatchEvent(new Event(\"astro:visible\"));})();"]],"entryModules":{"\u0000noop-middleware":"_noop-middleware.mjs","\u0000virtual:astro:actions/noop-entrypoint":"noop-entrypoint.mjs","\u0000@astro-page:src/pages/api/keys@_@ts":"pages/api/keys.astro.mjs","\u0000@astro-page:src/pages/api/label/image@_@ts":"pages/api/label/image.astro.mjs","\u0000@astro-page:src/pages/api/print@_@ts":"pages/api/print.astro.mjs","\u0000@astro-page:src/pages/api/print-stack/[id]@_@ts":"pages/api/print-stack/_id_.astro.mjs","\u0000@astro-page:src/pages/api/print-stack/index@_@ts":"pages/api/print-stack.astro.mjs","\u0000@astro-page:src/pages/api/printers@_@ts":"pages/api/printers.astro.mjs","\u0000@astro-page:src/pages/api/session/[id]/pause@_@ts":"pages/api/session/_id_/pause.astro.mjs","\u0000@astro-page:src/pages/api/session/[id]/stream@_@ts":"pages/api/session/_id_/stream.astro.mjs","\u0000@astro-page:src/pages/api/sessions@_@ts":"pages/api/sessions.astro.mjs","\u0000@astro-page:src/pages/api/tones/[name]@_@ts":"pages/api/tones/_name_.astro.mjs","\u0000@astro-page:src/pages/api/tones/index@_@ts":"pages/api/tones.astro.mjs","\u0000@astro-page:src/pages/session@_@astro":"pages/session.astro.mjs","\u0000@astro-page:src/pages/settings@_@astro":"pages/settings.astro.mjs","\u0000@astro-page:src/pages/index@_@astro":"pages/index.astro.mjs","\u0000@astrojs-ssr-virtual-entry":"entry.mjs","\u0000@astro-renderers":"renderers.mjs","\u0000@astro-page:../node_modules/astro/dist/assets/endpoint/node@_@js":"pages/_image.astro.mjs","\u0000@astrojs-ssr-adapter":"_@astrojs-ssr-adapter.mjs","\u0000@astrojs-manifest":"manifest_DOEjyU_g.mjs","/Users/davideast/Code/jules.ink/node_modules/unstorage/drivers/fs-lite.mjs":"chunks/fs-lite_COtHaKzy.mjs","/Users/davideast/Code/jules.ink/node_modules/astro/dist/assets/services/sharp.js":"chunks/sharp_C1PLyHjw.mjs","/Users/davideast/Code/jules.ink/dist/index.js":"chunks/index_DJ2vRdKd.mjs","/Users/davideast/Code/jules.ink/ui/src/components/pages/SessionPage":"_astro/SessionPage.BVAKjd5H.js","/Users/davideast/Code/jules.ink/ui/src/components/pages/SettingsPage":"_astro/SettingsPage.Dxak0E-b.js","/Users/davideast/Code/jules.ink/ui/src/components/pages/SessionListPage":"_astro/SessionListPage.BvVZqYsX.js","/Users/davideast/Code/jules.ink/ui/src/components/pages/SetupPage":"_astro/SetupPage.DYREvJ4u.js","@astrojs/react/client.js":"_astro/client.Dc9Vh3na.js","astro:scripts/before-hydration.js":""},"inlinedScripts":[],"assets":["/_astro/index.CwgqzyKA.css","/_astro/ApiKeyForm.DLtrDqK2.js","/_astro/SessionListPage.BvVZqYsX.js","/_astro/SessionPage.BVAKjd5H.js","/_astro/SettingsPage.Dxak0E-b.js","/_astro/SetupPage.DYREvJ4u.js","/_astro/TopBar.CC2bbZSl.js","/_astro/client.Dc9Vh3na.js","/_astro/index.DiEladB3.js","/assets/03ba5d9f9e95fc3599acebcbe7e5fb9a.js","/assets/a39f5c6fcbb87b419667ec984d2e579a.css","/assets/c290bebe757d80dba414d37aba776275.css","/assets/logo.svg"],"buildFormat":"directory","checkOrigin":true,"allowedDomains":[],"serverIslandNameMap":[],"key":"AiyZHfR0k+7EUwQwOkhQtKTwg2TcLnratBzzZQp1P2c=","sessionConfig":{"driver":"fs-lite","options":{"base":"/Users/davideast/Code/jules.ink/ui/node_modules/.astro/sessions"}}});
|
|
98
|
+
const manifest = deserializeManifest({"hrefRoot":"file:///Users/davideast/Code/jules.ink/ui/","cacheDir":"file:///Users/davideast/Code/jules.ink/ui/node_modules/.astro/","outDir":"file:///Users/davideast/Code/jules.ink/ui/dist/","srcDir":"file:///Users/davideast/Code/jules.ink/ui/src/","publicDir":"file:///Users/davideast/Code/jules.ink/ui/public/","buildClientDir":"file:///Users/davideast/Code/jules.ink/ui/dist/client/","buildServerDir":"file:///Users/davideast/Code/jules.ink/ui/dist/server/","adapterName":"@astrojs/node","routes":[{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"type":"page","component":"_server-islands.astro","params":["name"],"segments":[[{"content":"_server-islands","dynamic":false,"spread":false}],[{"content":"name","dynamic":true,"spread":false}]],"pattern":"^\\/_server-islands\\/([^/]+?)\\/?$","prerender":false,"isIndex":false,"fallbackRoutes":[],"route":"/_server-islands/[name]","origin":"internal","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"type":"endpoint","isIndex":false,"route":"/_image","pattern":"^\\/_image\\/?$","segments":[[{"content":"_image","dynamic":false,"spread":false}]],"params":[],"component":"../node_modules/astro/dist/assets/endpoint/node.js","pathname":"/_image","prerender":false,"fallbackRoutes":[],"origin":"internal","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/keys","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/keys\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"keys","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/keys.ts","pathname":"/api/keys","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/label/image","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/label\\/image\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"label","dynamic":false,"spread":false}],[{"content":"image","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/label/image.ts","pathname":"/api/label/image","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/print","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/print\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"print","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/print.ts","pathname":"/api/print","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/print-stack/[id]","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/print-stack\\/([^/]+?)\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"print-stack","dynamic":false,"spread":false}],[{"content":"id","dynamic":true,"spread":false}]],"params":["id"],"component":"src/pages/api/print-stack/[id].ts","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/print-stack","isIndex":true,"type":"endpoint","pattern":"^\\/api\\/print-stack\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"print-stack","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/print-stack/index.ts","pathname":"/api/print-stack","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/printers","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/printers\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"printers","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/printers.ts","pathname":"/api/printers","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/session/[id]/pause","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/session\\/([^/]+?)\\/pause\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"session","dynamic":false,"spread":false}],[{"content":"id","dynamic":true,"spread":false}],[{"content":"pause","dynamic":false,"spread":false}]],"params":["id"],"component":"src/pages/api/session/[id]/pause.ts","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/session/[id]/stream","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/session\\/([^/]+?)\\/stream\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"session","dynamic":false,"spread":false}],[{"content":"id","dynamic":true,"spread":false}],[{"content":"stream","dynamic":false,"spread":false}]],"params":["id"],"component":"src/pages/api/session/[id]/stream.ts","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/sessions","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/sessions\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"sessions","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/sessions.ts","pathname":"/api/sessions","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/tones/[name]","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/tones\\/([^/]+?)\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"tones","dynamic":false,"spread":false}],[{"content":"name","dynamic":true,"spread":false}]],"params":["name"],"component":"src/pages/api/tones/[name].ts","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"route":"/api/tones","isIndex":true,"type":"endpoint","pattern":"^\\/api\\/tones\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"tones","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/tones/index.ts","pathname":"/api/tones","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/index.CwgqzyKA.css"}],"routeData":{"route":"/session","isIndex":false,"type":"page","pattern":"^\\/session\\/?$","segments":[[{"content":"session","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/session.astro","pathname":"/session","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/index.CwgqzyKA.css"}],"routeData":{"route":"/settings","isIndex":false,"type":"page","pattern":"^\\/settings\\/?$","segments":[[{"content":"settings","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/settings.astro","pathname":"/settings","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/index.CwgqzyKA.css"}],"routeData":{"route":"/","isIndex":true,"type":"page","pattern":"^\\/$","segments":[],"params":[],"component":"src/pages/index.astro","pathname":"/","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}}],"base":"/","trailingSlash":"ignore","compressHTML":true,"componentMetadata":[["/Users/davideast/Code/jules.ink/ui/src/pages/index.astro",{"propagation":"none","containsHead":true}],["/Users/davideast/Code/jules.ink/ui/src/pages/session.astro",{"propagation":"none","containsHead":true}],["/Users/davideast/Code/jules.ink/ui/src/pages/settings.astro",{"propagation":"none","containsHead":true}]],"renderers":[],"clientDirectives":[["idle","(()=>{var l=(n,t)=>{let i=async()=>{await(await n())()},e=typeof t.value==\"object\"?t.value:void 0,s={timeout:e==null?void 0:e.timeout};\"requestIdleCallback\"in window?window.requestIdleCallback(i,s):setTimeout(i,s.timeout||200)};(self.Astro||(self.Astro={})).idle=l;window.dispatchEvent(new Event(\"astro:idle\"));})();"],["load","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event(\"astro:load\"));})();"],["media","(()=>{var n=(a,t)=>{let i=async()=>{await(await a())()};if(t.value){let e=matchMedia(t.value);e.matches?i():e.addEventListener(\"change\",i,{once:!0})}};(self.Astro||(self.Astro={})).media=n;window.dispatchEvent(new Event(\"astro:media\"));})();"],["only","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).only=e;window.dispatchEvent(new Event(\"astro:only\"));})();"],["visible","(()=>{var a=(s,i,o)=>{let r=async()=>{await(await s())()},t=typeof i.value==\"object\"?i.value:void 0,c={rootMargin:t==null?void 0:t.rootMargin},n=new IntersectionObserver(e=>{for(let l of e)if(l.isIntersecting){n.disconnect(),r();break}},c);for(let e of o.children)n.observe(e)};(self.Astro||(self.Astro={})).visible=a;window.dispatchEvent(new Event(\"astro:visible\"));})();"]],"entryModules":{"\u0000noop-middleware":"_noop-middleware.mjs","\u0000virtual:astro:actions/noop-entrypoint":"noop-entrypoint.mjs","\u0000@astro-page:src/pages/api/keys@_@ts":"pages/api/keys.astro.mjs","\u0000@astro-page:src/pages/api/label/image@_@ts":"pages/api/label/image.astro.mjs","\u0000@astro-page:src/pages/api/print@_@ts":"pages/api/print.astro.mjs","\u0000@astro-page:src/pages/api/print-stack/[id]@_@ts":"pages/api/print-stack/_id_.astro.mjs","\u0000@astro-page:src/pages/api/print-stack/index@_@ts":"pages/api/print-stack.astro.mjs","\u0000@astro-page:src/pages/api/printers@_@ts":"pages/api/printers.astro.mjs","\u0000@astro-page:src/pages/api/session/[id]/pause@_@ts":"pages/api/session/_id_/pause.astro.mjs","\u0000@astro-page:src/pages/api/session/[id]/stream@_@ts":"pages/api/session/_id_/stream.astro.mjs","\u0000@astro-page:src/pages/api/sessions@_@ts":"pages/api/sessions.astro.mjs","\u0000@astro-page:src/pages/api/tones/[name]@_@ts":"pages/api/tones/_name_.astro.mjs","\u0000@astro-page:src/pages/api/tones/index@_@ts":"pages/api/tones.astro.mjs","\u0000@astro-page:src/pages/session@_@astro":"pages/session.astro.mjs","\u0000@astro-page:src/pages/settings@_@astro":"pages/settings.astro.mjs","\u0000@astro-page:src/pages/index@_@astro":"pages/index.astro.mjs","\u0000@astrojs-ssr-virtual-entry":"entry.mjs","\u0000@astro-renderers":"renderers.mjs","\u0000@astro-page:../node_modules/astro/dist/assets/endpoint/node@_@js":"pages/_image.astro.mjs","\u0000@astrojs-ssr-adapter":"_@astrojs-ssr-adapter.mjs","\u0000@astrojs-manifest":"manifest_Us9s2mbf.mjs","/Users/davideast/Code/jules.ink/node_modules/unstorage/drivers/fs-lite.mjs":"chunks/fs-lite_COtHaKzy.mjs","/Users/davideast/Code/jules.ink/node_modules/astro/dist/assets/services/sharp.js":"chunks/sharp_C1PLyHjw.mjs","/Users/davideast/Code/jules.ink/dist/index.js":"chunks/index_DPFooF1i.mjs","/Users/davideast/Code/jules.ink/ui/src/components/pages/SessionPage":"_astro/SessionPage.BVAKjd5H.js","/Users/davideast/Code/jules.ink/ui/src/components/pages/SessionListPage":"_astro/SessionListPage.BvVZqYsX.js","/Users/davideast/Code/jules.ink/ui/src/components/pages/SetupPage":"_astro/SetupPage.DYREvJ4u.js","/Users/davideast/Code/jules.ink/ui/src/components/pages/SettingsPage":"_astro/SettingsPage.Dxak0E-b.js","@astrojs/react/client.js":"_astro/client.Dc9Vh3na.js","astro:scripts/before-hydration.js":""},"inlinedScripts":[],"assets":["/_astro/index.CwgqzyKA.css","/assets/03ba5d9f9e95fc3599acebcbe7e5fb9a.js","/assets/a39f5c6fcbb87b419667ec984d2e579a.css","/assets/c290bebe757d80dba414d37aba776275.css","/assets/logo.svg","/_astro/ApiKeyForm.DLtrDqK2.js","/_astro/SessionListPage.BvVZqYsX.js","/_astro/SessionPage.BVAKjd5H.js","/_astro/SettingsPage.Dxak0E-b.js","/_astro/SetupPage.DYREvJ4u.js","/_astro/TopBar.CC2bbZSl.js","/_astro/client.Dc9Vh3na.js","/_astro/index.DiEladB3.js"],"buildFormat":"directory","checkOrigin":true,"allowedDomains":[],"serverIslandNameMap":[],"key":"P/Bc5neijH6ileGStrYroHG0nmJjjaaG7J1VVEiducs=","sessionConfig":{"driver":"fs-lite","options":{"base":"/Users/davideast/Code/jules.ink/ui/node_modules/.astro/sessions"}}});
|
|
99
99
|
if (manifest.sessionConfig) manifest.sessionConfig.driverModule = () => import('./chunks/fs-lite_COtHaKzy.mjs');
|
|
100
100
|
|
|
101
101
|
export { manifest };
|
|
@@ -11,7 +11,7 @@ const POST = async ({ request }) => {
|
|
|
11
11
|
}
|
|
12
12
|
let generateLabel;
|
|
13
13
|
try {
|
|
14
|
-
const mod = await import('../../../chunks/
|
|
14
|
+
const mod = await import('../../../chunks/index_DPFooF1i.mjs');
|
|
15
15
|
generateLabel = mod.generateLabel;
|
|
16
16
|
} catch (err) {
|
|
17
17
|
console.error("[API] Failed to load jules-ink:", err);
|
|
@@ -13,7 +13,7 @@ const POST = async ({ request }) => {
|
|
|
13
13
|
let thermal;
|
|
14
14
|
let generateLabel;
|
|
15
15
|
try {
|
|
16
|
-
const mod = await import('../../chunks/
|
|
16
|
+
const mod = await import('../../chunks/index_DPFooF1i.mjs');
|
|
17
17
|
thermal = mod.thermal;
|
|
18
18
|
generateLabel = mod.generateLabel;
|
|
19
19
|
} catch (err) {
|
|
@@ -4,7 +4,7 @@ const GET = async () => {
|
|
|
4
4
|
console.log("[API] Printers scan request");
|
|
5
5
|
let thermal;
|
|
6
6
|
try {
|
|
7
|
-
const mod = await import('../../chunks/
|
|
7
|
+
const mod = await import('../../chunks/index_DPFooF1i.mjs');
|
|
8
8
|
thermal = mod.thermal;
|
|
9
9
|
} catch (err) {
|
|
10
10
|
console.error("[API] Failed to load jules-ink:", err);
|
|
@@ -11,7 +11,7 @@ const GET = async ({ params, request }) => {
|
|
|
11
11
|
console.log(`[SSE] Stream request: session=${sessionId}, tone=${tone}, model=${model}, afterIndex=${afterIndex}`);
|
|
12
12
|
let streamSession;
|
|
13
13
|
try {
|
|
14
|
-
const mod = await import('../../../../chunks/
|
|
14
|
+
const mod = await import('../../../../chunks/index_DPFooF1i.mjs');
|
|
15
15
|
streamSession = mod.streamSession;
|
|
16
16
|
console.log("[SSE] jules-ink loaded successfully");
|
|
17
17
|
} catch (err) {
|
|
@@ -4,18 +4,9 @@ const GET = async ({ request }) => {
|
|
|
4
4
|
const url = new URL(request.url);
|
|
5
5
|
const pageSize = parseInt(url.searchParams.get("pageSize") || "25", 10);
|
|
6
6
|
const pageToken = url.searchParams.get("pageToken") || void 0;
|
|
7
|
-
let jules;
|
|
8
|
-
try {
|
|
9
|
-
const mod = await import('@google/jules-sdk');
|
|
10
|
-
jules = mod.jules;
|
|
11
|
-
} catch (err) {
|
|
12
|
-
console.error("[API] Failed to load jules-sdk:", err);
|
|
13
|
-
return new Response(
|
|
14
|
-
JSON.stringify({ error: "Failed to load jules-sdk" }),
|
|
15
|
-
{ status: 500, headers: { "Content-Type": "application/json" } }
|
|
16
|
-
);
|
|
17
|
-
}
|
|
18
7
|
try {
|
|
8
|
+
const { connect } = await import('@google/jules-sdk');
|
|
9
|
+
const jules = connect();
|
|
19
10
|
const page = await jules.sessions({ pageSize, pageToken });
|
|
20
11
|
const sessions = page.sessions.map((s) => {
|
|
21
12
|
const rawState = String(s.state || "").toLowerCase();
|
|
@@ -226,7 +226,8 @@ const $$Index = createComponent(async ($$result, $$props, $$slots) => {
|
|
|
226
226
|
let initialError = null;
|
|
227
227
|
if (keysConfigured) {
|
|
228
228
|
try {
|
|
229
|
-
const {
|
|
229
|
+
const { connect } = await import('@google/jules-sdk');
|
|
230
|
+
const jules = connect();
|
|
230
231
|
const page = await jules.sessions({ pageSize: 25 });
|
|
231
232
|
initialSessions = page.sessions.map((s) => {
|
|
232
233
|
const rawState = String(s.state || "").toLowerCase();
|
|
@@ -1178,7 +1178,8 @@ const $$Session = createComponent(async ($$result, $$props, $$slots) => {
|
|
|
1178
1178
|
let sessionMeta = null;
|
|
1179
1179
|
if (sessionId) {
|
|
1180
1180
|
try {
|
|
1181
|
-
const {
|
|
1181
|
+
const { connect } = await import('@google/jules-sdk');
|
|
1182
|
+
const jules = connect();
|
|
1182
1183
|
const session = jules.session(sessionId);
|
|
1183
1184
|
const info = await session.info();
|
|
1184
1185
|
const rawState = String(info.state || "").toLowerCase();
|