@tanstack-ai-browser/prompt-api 0.2.0 → 0.2.1
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/adapter.d.ts.map +1 -1
- package/dist/adapter.js +2 -1
- package/package.json +5 -5
- package/src/adapter.test.ts +1 -1
- package/src/adapter.ts +2 -1
package/dist/adapter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/adapter.js
CHANGED
|
@@ -250,7 +250,8 @@ export class PromptApiTextAdapter extends BaseTextAdapter {
|
|
|
250
250
|
const completionTokens = Math.max(0, written - markers);
|
|
251
251
|
return {
|
|
252
252
|
...buildBaseUsage({ promptTokens, completionTokens, totalTokens: promptTokens + completionTokens }),
|
|
253
|
-
|
|
253
|
+
// A new session read all of it in this step: none was cached.
|
|
254
|
+
promptTokensDetails: { cachedTokens: goesOn ? held : 0 }
|
|
254
255
|
};
|
|
255
256
|
}
|
|
256
257
|
catch {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tanstack-ai-browser/prompt-api",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "TanStack AI adapter for the browser's built-in language model (the Prompt API: Gemini Nano in Chrome, Phi-4-mini in Edge)",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "daveycodez",
|
|
@@ -49,14 +49,14 @@
|
|
|
49
49
|
"nx": {
|
|
50
50
|
"name": "prompt-api"
|
|
51
51
|
},
|
|
52
|
+
"scripts": {
|
|
53
|
+
"test": "node --import @swc-node/register/esm-register --test \"src/**/*.test.ts\""
|
|
54
|
+
},
|
|
52
55
|
"peerDependencies": {
|
|
53
56
|
"@tanstack/ai": "^1.0.0"
|
|
54
57
|
},
|
|
55
58
|
"devDependencies": {
|
|
56
59
|
"@tanstack/ai": "1.4.0",
|
|
57
60
|
"esbuild": "0.28.2"
|
|
58
|
-
},
|
|
59
|
-
"scripts": {
|
|
60
|
-
"test": "node --import @swc-node/register/esm-register --test \"src/**/*.test.ts\""
|
|
61
61
|
}
|
|
62
|
-
}
|
|
62
|
+
}
|
package/src/adapter.test.ts
CHANGED
|
@@ -531,7 +531,7 @@ test("a reply reports its tokens: what the session held, and the prompt and the
|
|
|
531
531
|
// Less an empty message's count: the turn markers a session counts around any message.
|
|
532
532
|
const reply = measured("Hello there") - measured("")
|
|
533
533
|
// A new session read what it holds in this step: nothing cached.
|
|
534
|
-
assert.deepEqual(await step(first), { promptTokens: prompt, completionTokens: reply, totalTokens: prompt + reply })
|
|
534
|
+
assert.deepEqual(await step(first), { promptTokens: prompt, completionTokens: reply, totalTokens: prompt + reply, promptTokensDetails: { cachedTokens: 0 } })
|
|
535
535
|
|
|
536
536
|
// The thread's kept session doesn't read what it holds again: only the new message.
|
|
537
537
|
Object.assign(control.sessions[0], { contextUsage: 300 })
|
package/src/adapter.ts
CHANGED
|
@@ -348,7 +348,8 @@ export class PromptApiTextAdapter extends BaseTextAdapter<
|
|
|
348
348
|
const completionTokens = Math.max(0, written - markers)
|
|
349
349
|
return {
|
|
350
350
|
...buildBaseUsage({ promptTokens, completionTokens, totalTokens: promptTokens + completionTokens }),
|
|
351
|
-
|
|
351
|
+
// A new session read all of it in this step: none was cached.
|
|
352
|
+
promptTokensDetails: { cachedTokens: goesOn ? held : 0 }
|
|
352
353
|
}
|
|
353
354
|
} catch {
|
|
354
355
|
return undefined
|