@3ngram/sdk 0.8.0 → 1.1.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/LICENSE +0 -1
- package/NOTICE +7 -0
- package/README.md +29 -0
- package/dist/client.js +8 -1
- package/dist/client.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/package.json +20 -3
package/LICENSE
CHANGED
package/NOTICE
ADDED
package/README.md
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<!-- SPDX-License-Identifier: Apache-2.0 -->
|
|
2
|
+
|
|
3
|
+
# @3ngram/sdk
|
|
4
|
+
|
|
5
|
+
Typed TypeScript client for the 3ngram REST API.
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @3ngram/sdk
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import { ThreengramClient } from '@3ngram/sdk'
|
|
13
|
+
|
|
14
|
+
const client = new ThreengramClient({
|
|
15
|
+
baseUrl: 'https://api.example.com',
|
|
16
|
+
apiKey: process.env.THREENGRAM_API_KEY!,
|
|
17
|
+
})
|
|
18
|
+
|
|
19
|
+
const results = await client.search('release decision', {
|
|
20
|
+
scope: 'work',
|
|
21
|
+
project: '3ngram',
|
|
22
|
+
})
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
The client currently covers remember, search, facts, revise, and commitment
|
|
26
|
+
resolution. Inputs and outputs come from `@3ngram/schema`.
|
|
27
|
+
|
|
28
|
+
See the [3ngram repository](https://github.com/B3dmar/3ngram) for API and
|
|
29
|
+
self-hosting documentation.
|
package/dist/client.js
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
import { ThreengramApiError, ThreengramNetworkError } from './errors.js';
|
|
2
|
+
/** Strip trailing path separators in linear time for arbitrary caller input. */
|
|
3
|
+
function stripTrailingSlashes(value) {
|
|
4
|
+
let end = value.length;
|
|
5
|
+
while (end > 0 && value.charCodeAt(end - 1) === 47)
|
|
6
|
+
end--;
|
|
7
|
+
return value.slice(0, end);
|
|
8
|
+
}
|
|
2
9
|
/**
|
|
3
10
|
* Typed client over REST `/api/v1`. Five methods mirror the routes 1:1; every
|
|
4
11
|
* argument and return type is sourced from @3ngram/schema.
|
|
@@ -8,7 +15,7 @@ export class ThreengramClient {
|
|
|
8
15
|
#apiKey;
|
|
9
16
|
#fetch;
|
|
10
17
|
constructor(config, fetchImpl) {
|
|
11
|
-
this.#baseUrl = config.baseUrl
|
|
18
|
+
this.#baseUrl = stripTrailingSlashes(config.baseUrl);
|
|
12
19
|
this.#apiKey = config.apiKey;
|
|
13
20
|
this.#fetch = fetchImpl ?? ((input, init) => fetch(input, init));
|
|
14
21
|
}
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AA2BxE;;;GAGG;AACH,MAAM,OAAO,gBAAgB;IAClB,QAAQ,CAAQ;IAChB,OAAO,CAAQ;IACf,MAAM,CAAW;IAE1B,YAAY,MAA8B,EAAE,SAAqB;QAC/D,IAAI,CAAC,QAAQ,GAAG,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
-
// @3ngram/sdk —
|
|
3
|
-
// (docs/concepts/architecture.mdx one core, N transports
|
|
2
|
+
// @3ngram/sdk — published typed client over the REST /api/v1 surface
|
|
3
|
+
// (docs/concepts/architecture.mdx: one core, N transports).
|
|
4
4
|
export { ThreengramClient, } from './client.js';
|
|
5
5
|
export { ThreengramApiError, ThreengramNetworkError } from './errors.js';
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,qEAAqE;AACrE,4DAA4D;AAC5D,OAAO,EAGL,gBAAgB,GAEjB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,22 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@3ngram/sdk",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "Typed TypeScript client for the 3ngram REST API.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
|
+
"homepage": "https://3ngram.ai",
|
|
7
|
+
"bugs": {
|
|
8
|
+
"url": "https://github.com/B3dmar/3ngram/issues"
|
|
9
|
+
},
|
|
10
|
+
"keywords": [
|
|
11
|
+
"3ngram",
|
|
12
|
+
"ai",
|
|
13
|
+
"mcp",
|
|
14
|
+
"memory",
|
|
15
|
+
"typescript"
|
|
16
|
+
],
|
|
17
|
+
"engines": {
|
|
18
|
+
"node": ">=22"
|
|
19
|
+
},
|
|
6
20
|
"type": "module",
|
|
7
21
|
"publishConfig": {
|
|
8
22
|
"access": "public",
|
|
@@ -22,11 +36,14 @@
|
|
|
22
36
|
},
|
|
23
37
|
"files": [
|
|
24
38
|
"dist",
|
|
39
|
+
"LICENSE",
|
|
40
|
+
"NOTICE",
|
|
41
|
+
"README.md",
|
|
25
42
|
"tsconfig.package.json"
|
|
26
43
|
],
|
|
27
44
|
"dependencies": {
|
|
28
45
|
"zod": "4.4.3",
|
|
29
|
-
"@3ngram/schema": "0.
|
|
46
|
+
"@3ngram/schema": "0.5.0"
|
|
30
47
|
},
|
|
31
48
|
"devDependencies": {
|
|
32
49
|
"@types/node": "25.9.1",
|