@labacacia/nps-sdk 1.0.0-alpha.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/CONTRIBUTING.md +33 -0
- package/LICENSE +170 -0
- package/NOTICE +7 -0
- package/README.md +153 -0
- package/dist/codec-CmHeovTV.d.cts +120 -0
- package/dist/codec-CmHeovTV.d.ts +120 -0
- package/dist/core/anchor-cache.d.ts +42 -0
- package/dist/core/anchor-cache.d.ts.map +1 -0
- package/dist/core/anchor-cache.js +104 -0
- package/dist/core/anchor-cache.js.map +1 -0
- package/dist/core/cache.d.ts +14 -0
- package/dist/core/cache.d.ts.map +1 -0
- package/dist/core/cache.js +80 -0
- package/dist/core/cache.js.map +1 -0
- package/dist/core/canonical-json.d.ts +12 -0
- package/dist/core/canonical-json.d.ts.map +1 -0
- package/dist/core/canonical-json.js +44 -0
- package/dist/core/canonical-json.js.map +1 -0
- package/dist/core/codec.d.ts +32 -0
- package/dist/core/codec.d.ts.map +1 -0
- package/dist/core/codec.js +119 -0
- package/dist/core/codec.js.map +1 -0
- package/dist/core/codecs/index.d.ts +4 -0
- package/dist/core/codecs/index.d.ts.map +1 -0
- package/dist/core/codecs/index.js +6 -0
- package/dist/core/codecs/index.js.map +1 -0
- package/dist/core/codecs/ncp-codec.d.ts +39 -0
- package/dist/core/codecs/ncp-codec.d.ts.map +1 -0
- package/dist/core/codecs/ncp-codec.js +93 -0
- package/dist/core/codecs/ncp-codec.js.map +1 -0
- package/dist/core/codecs/tier1-json-codec.d.ts +10 -0
- package/dist/core/codecs/tier1-json-codec.d.ts.map +1 -0
- package/dist/core/codecs/tier1-json-codec.js +28 -0
- package/dist/core/codecs/tier1-json-codec.js.map +1 -0
- package/dist/core/codecs/tier2-msgpack-codec.d.ts +10 -0
- package/dist/core/codecs/tier2-msgpack-codec.d.ts.map +1 -0
- package/dist/core/codecs/tier2-msgpack-codec.js +26 -0
- package/dist/core/codecs/tier2-msgpack-codec.js.map +1 -0
- package/dist/core/crypto-provider.d.ts +31 -0
- package/dist/core/crypto-provider.d.ts.map +1 -0
- package/dist/core/crypto-provider.js +10 -0
- package/dist/core/crypto-provider.js.map +1 -0
- package/dist/core/exceptions.d.ts +27 -0
- package/dist/core/exceptions.d.ts.map +1 -0
- package/dist/core/exceptions.js +52 -0
- package/dist/core/exceptions.js.map +1 -0
- package/dist/core/frame-header.d.ts +87 -0
- package/dist/core/frame-header.d.ts.map +1 -0
- package/dist/core/frame-header.js +185 -0
- package/dist/core/frame-header.js.map +1 -0
- package/dist/core/frame-registry.d.ts +35 -0
- package/dist/core/frame-registry.d.ts.map +1 -0
- package/dist/core/frame-registry.js +63 -0
- package/dist/core/frame-registry.js.map +1 -0
- package/dist/core/frames.d.ts +80 -0
- package/dist/core/frames.d.ts.map +1 -0
- package/dist/core/frames.js +153 -0
- package/dist/core/frames.js.map +1 -0
- package/dist/core/index.cjs +371 -0
- package/dist/core/index.cjs.map +1 -0
- package/dist/core/index.d.cts +41 -0
- package/dist/core/index.d.ts +9 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +10 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/registry.d.ts +11 -0
- package/dist/core/registry.d.ts.map +1 -0
- package/dist/core/registry.js +17 -0
- package/dist/core/registry.js.map +1 -0
- package/dist/core/status-codes.d.ts +28 -0
- package/dist/core/status-codes.d.ts.map +1 -0
- package/dist/core/status-codes.js +38 -0
- package/dist/core/status-codes.js.map +1 -0
- package/dist/frames-B3qLdl_g.d.cts +77 -0
- package/dist/frames-Ff7-ZPUl.d.ts +77 -0
- package/dist/index.cjs +1556 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +21 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/dist/ncp/frames/anchor-frame.d.ts +29 -0
- package/dist/ncp/frames/anchor-frame.d.ts.map +1 -0
- package/dist/ncp/frames/anchor-frame.js +54 -0
- package/dist/ncp/frames/anchor-frame.js.map +1 -0
- package/dist/ncp/frames/caps-frame.d.ts +29 -0
- package/dist/ncp/frames/caps-frame.d.ts.map +1 -0
- package/dist/ncp/frames/caps-frame.js +29 -0
- package/dist/ncp/frames/caps-frame.js.map +1 -0
- package/dist/ncp/frames/diff-frame.d.ts +32 -0
- package/dist/ncp/frames/diff-frame.d.ts.map +1 -0
- package/dist/ncp/frames/diff-frame.js +37 -0
- package/dist/ncp/frames/diff-frame.js.map +1 -0
- package/dist/ncp/frames/error-frame.d.ts +16 -0
- package/dist/ncp/frames/error-frame.d.ts.map +1 -0
- package/dist/ncp/frames/error-frame.js +13 -0
- package/dist/ncp/frames/error-frame.js.map +1 -0
- package/dist/ncp/frames/hello-frame.d.ts +21 -0
- package/dist/ncp/frames/hello-frame.d.ts.map +1 -0
- package/dist/ncp/frames/hello-frame.js +25 -0
- package/dist/ncp/frames/hello-frame.js.map +1 -0
- package/dist/ncp/frames/stream-frame.d.ts +16 -0
- package/dist/ncp/frames/stream-frame.d.ts.map +1 -0
- package/dist/ncp/frames/stream-frame.js +18 -0
- package/dist/ncp/frames/stream-frame.js.map +1 -0
- package/dist/ncp/frames.d.ts +76 -0
- package/dist/ncp/frames.d.ts.map +1 -0
- package/dist/ncp/frames.js +147 -0
- package/dist/ncp/frames.js.map +1 -0
- package/dist/ncp/handshake.d.ts +30 -0
- package/dist/ncp/handshake.d.ts.map +1 -0
- package/dist/ncp/handshake.js +80 -0
- package/dist/ncp/handshake.js.map +1 -0
- package/dist/ncp/index.cjs +188 -0
- package/dist/ncp/index.cjs.map +1 -0
- package/dist/ncp/index.d.cts +6 -0
- package/dist/ncp/index.d.ts +11 -0
- package/dist/ncp/index.d.ts.map +1 -0
- package/dist/ncp/index.js +13 -0
- package/dist/ncp/index.js.map +1 -0
- package/dist/ncp/ncp-error-codes.d.ts +22 -0
- package/dist/ncp/ncp-error-codes.d.ts.map +1 -0
- package/dist/ncp/ncp-error-codes.js +32 -0
- package/dist/ncp/ncp-error-codes.js.map +1 -0
- package/dist/ncp/ncp-patch-format.d.ts +7 -0
- package/dist/ncp/ncp-patch-format.d.ts.map +1 -0
- package/dist/ncp/ncp-patch-format.js +13 -0
- package/dist/ncp/ncp-patch-format.js.map +1 -0
- package/dist/ncp/registry.d.ts +3 -0
- package/dist/ncp/registry.d.ts.map +1 -0
- package/dist/ncp/registry.js +12 -0
- package/dist/ncp/registry.js.map +1 -0
- package/dist/ncp/stream-manager.d.ts +57 -0
- package/dist/ncp/stream-manager.d.ts.map +1 -0
- package/dist/ncp/stream-manager.js +163 -0
- package/dist/ncp/stream-manager.js.map +1 -0
- package/dist/ndp/frames.d.ts +56 -0
- package/dist/ndp/frames.d.ts.map +1 -0
- package/dist/ndp/frames.js +87 -0
- package/dist/ndp/frames.js.map +1 -0
- package/dist/ndp/index.cjs +252 -0
- package/dist/ndp/index.cjs.map +1 -0
- package/dist/ndp/index.d.cts +86 -0
- package/dist/ndp/index.d.ts +5 -0
- package/dist/ndp/index.d.ts.map +1 -0
- package/dist/ndp/index.js +7 -0
- package/dist/ndp/index.js.map +1 -0
- package/dist/ndp/ndp-registry.d.ts +11 -0
- package/dist/ndp/ndp-registry.d.ts.map +1 -0
- package/dist/ndp/ndp-registry.js +79 -0
- package/dist/ndp/ndp-registry.js.map +1 -0
- package/dist/ndp/registry.d.ts +3 -0
- package/dist/ndp/registry.d.ts.map +1 -0
- package/dist/ndp/registry.js +10 -0
- package/dist/ndp/registry.js.map +1 -0
- package/dist/ndp/validator.d.ts +18 -0
- package/dist/ndp/validator.d.ts.map +1 -0
- package/dist/ndp/validator.js +48 -0
- package/dist/ndp/validator.js.map +1 -0
- package/dist/nip/frames.d.ts +44 -0
- package/dist/nip/frames.d.ts.map +1 -0
- package/dist/nip/frames.js +81 -0
- package/dist/nip/frames.js.map +1 -0
- package/dist/nip/identity.d.ts +18 -0
- package/dist/nip/identity.d.ts.map +1 -0
- package/dist/nip/identity.js +94 -0
- package/dist/nip/identity.js.map +1 -0
- package/dist/nip/index.cjs +214 -0
- package/dist/nip/index.cjs.map +1 -0
- package/dist/nip/index.d.cts +65 -0
- package/dist/nip/index.d.ts +4 -0
- package/dist/nip/index.d.ts.map +1 -0
- package/dist/nip/index.js +6 -0
- package/dist/nip/index.js.map +1 -0
- package/dist/nip/registry.d.ts +3 -0
- package/dist/nip/registry.d.ts.map +1 -0
- package/dist/nip/registry.js +10 -0
- package/dist/nip/registry.js.map +1 -0
- package/dist/nop/client.d.ts +34 -0
- package/dist/nop/client.d.ts.map +1 -0
- package/dist/nop/client.js +90 -0
- package/dist/nop/client.js.map +1 -0
- package/dist/nop/frames.d.ts +65 -0
- package/dist/nop/frames.d.ts.map +1 -0
- package/dist/nop/frames.js +148 -0
- package/dist/nop/frames.js.map +1 -0
- package/dist/nop/index.cjs +762 -0
- package/dist/nop/index.cjs.map +1 -0
- package/dist/nop/index.d.cts +155 -0
- package/dist/nop/index.d.ts +5 -0
- package/dist/nop/index.d.ts.map +1 -0
- package/dist/nop/index.js +7 -0
- package/dist/nop/index.js.map +1 -0
- package/dist/nop/models.d.ts +58 -0
- package/dist/nop/models.d.ts.map +1 -0
- package/dist/nop/models.js +50 -0
- package/dist/nop/models.js.map +1 -0
- package/dist/nop/nop-types.d.ts +136 -0
- package/dist/nop/nop-types.d.ts.map +1 -0
- package/dist/nop/nop-types.js +44 -0
- package/dist/nop/nop-types.js.map +1 -0
- package/dist/nop/registry.d.ts +3 -0
- package/dist/nop/registry.d.ts.map +1 -0
- package/dist/nop/registry.js +11 -0
- package/dist/nop/registry.js.map +1 -0
- package/dist/nwp/client.d.ts +22 -0
- package/dist/nwp/client.d.ts.map +1 -0
- package/dist/nwp/client.js +101 -0
- package/dist/nwp/client.js.map +1 -0
- package/dist/nwp/frames.d.ts +46 -0
- package/dist/nwp/frames.d.ts.map +1 -0
- package/dist/nwp/frames.js +81 -0
- package/dist/nwp/frames.js.map +1 -0
- package/dist/nwp/index.cjs +658 -0
- package/dist/nwp/index.cjs.map +1 -0
- package/dist/nwp/index.d.cts +65 -0
- package/dist/nwp/index.d.ts +4 -0
- package/dist/nwp/index.d.ts.map +1 -0
- package/dist/nwp/index.js +6 -0
- package/dist/nwp/index.js.map +1 -0
- package/dist/nwp/registry.d.ts +3 -0
- package/dist/nwp/registry.d.ts.map +1 -0
- package/dist/nwp/registry.js +9 -0
- package/dist/nwp/registry.js.map +1 -0
- package/dist/setup.d.ts +10 -0
- package/dist/setup.d.ts.map +1 -0
- package/dist/setup.js +29 -0
- package/dist/setup.js.map +1 -0
- package/nip-ca-server/Dockerfile +27 -0
- package/nip-ca-server/README.md +45 -0
- package/nip-ca-server/db/001_init.sql +25 -0
- package/nip-ca-server/docker-compose.yml +29 -0
- package/nip-ca-server/package.json +23 -0
- package/nip-ca-server/src/ca.ts +155 -0
- package/nip-ca-server/src/db.ts +104 -0
- package/nip-ca-server/src/index.ts +157 -0
- package/nip-ca-server/tsconfig.json +13 -0
- package/package.json +47 -0
- package/src/core/anchor-cache.ts +129 -0
- package/src/core/cache.ts +93 -0
- package/src/core/canonical-json.ts +50 -0
- package/src/core/codec.ts +158 -0
- package/src/core/codecs/index.ts +5 -0
- package/src/core/codecs/ncp-codec.ts +170 -0
- package/src/core/codecs/tier1-json-codec.ts +33 -0
- package/src/core/codecs/tier2-msgpack-codec.ts +30 -0
- package/src/core/crypto-provider.ts +47 -0
- package/src/core/exceptions.ts +57 -0
- package/src/core/frame-header.ts +282 -0
- package/src/core/frame-registry.ts +91 -0
- package/src/core/frames.ts +183 -0
- package/src/core/index.ts +10 -0
- package/src/core/registry.ts +28 -0
- package/src/core/status-codes.ts +46 -0
- package/src/index.ts +10 -0
- package/src/ncp/frames/anchor-frame.ts +87 -0
- package/src/ncp/frames/caps-frame.ts +59 -0
- package/src/ncp/frames/diff-frame.ts +69 -0
- package/src/ncp/frames/error-frame.ts +26 -0
- package/src/ncp/frames/hello-frame.ts +50 -0
- package/src/ncp/frames/stream-frame.ts +35 -0
- package/src/ncp/frames.ts +199 -0
- package/src/ncp/handshake.ts +95 -0
- package/src/ncp/index.ts +12 -0
- package/src/ncp/ncp-error-codes.ts +34 -0
- package/src/ncp/ncp-patch-format.ts +16 -0
- package/src/ncp/registry.ts +14 -0
- package/src/ncp/stream-manager.ts +212 -0
- package/src/ndp/frames.ts +124 -0
- package/src/ndp/index.ts +7 -0
- package/src/ndp/ndp-registry.ts +82 -0
- package/src/ndp/registry.ts +12 -0
- package/src/ndp/validator.ts +64 -0
- package/src/nip/frames.ts +106 -0
- package/src/nip/identity.ts +113 -0
- package/src/nip/index.ts +6 -0
- package/src/nip/registry.ts +12 -0
- package/src/nop/client.ts +103 -0
- package/src/nop/frames.ts +181 -0
- package/src/nop/index.ts +7 -0
- package/src/nop/models.ts +79 -0
- package/src/nop/nop-types.ts +208 -0
- package/src/nop/registry.ts +13 -0
- package/src/nwp/client.ts +114 -0
- package/src/nwp/frames.ts +116 -0
- package/src/nwp/index.ts +6 -0
- package/src/nwp/registry.ts +11 -0
- package/src/setup.ts +32 -0
- package/tests/core/anchor-cache.test.ts +242 -0
- package/tests/core/codec.test.ts +205 -0
- package/tests/core/frame-registry.test.ts +46 -0
- package/tests/core.test.ts +327 -0
- package/tests/ncp/diff-binary-bitset.test.ts +107 -0
- package/tests/ncp/e2e-enc-reject.test.ts +93 -0
- package/tests/ncp/err-error-frame.test.ts +152 -0
- package/tests/ncp/frames.test.ts +359 -0
- package/tests/ncp/framing.test.ts +233 -0
- package/tests/ncp/hello-frame.test.ts +122 -0
- package/tests/ncp/inline-anchor.test.ts +88 -0
- package/tests/ncp/security.test.ts +184 -0
- package/tests/ncp/stream-window.test.ts +167 -0
- package/tests/ncp/stream.test.ts +242 -0
- package/tests/ncp/version-negotiation.test.ts +123 -0
- package/tests/ndp.test.ts +271 -0
- package/tests/nip.test.ts +184 -0
- package/tests/nop.test.ts +344 -0
- package/tests/nwp.test.ts +237 -0
- package/tsconfig.json +20 -0
- package/tsup.config.ts +20 -0
- package/vitest.config.ts +10 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// Copyright 2026 INNO LOTUS PTY LTD
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { FrameType } from "../core/frames.js";
|
|
4
|
+
import { AlignStreamFrame, DelegateFrame, SyncFrame, TaskFrame } from "./frames.js";
|
|
5
|
+
export function registerNopFrames(registry) {
|
|
6
|
+
registry.register(FrameType.TASK, TaskFrame);
|
|
7
|
+
registry.register(FrameType.DELEGATE, DelegateFrame);
|
|
8
|
+
registry.register(FrameType.SYNC, SyncFrame);
|
|
9
|
+
registry.register(FrameType.ALIGN_STREAM, AlignStreamFrame);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/nop/registry.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,sCAAsC;AAGtC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEpF,MAAM,UAAU,iBAAiB,CAAC,QAAuB;IACvD,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAU,SAAS,CAAC,CAAC;IACrD,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAM,aAAa,CAAC,CAAC;IACzD,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAU,SAAS,CAAC,CAAC;IACrD,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAC9D,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { EncodingTier } from "../core/frames.js";
|
|
2
|
+
import { FrameRegistry } from "../core/registry.js";
|
|
3
|
+
import { CapsFrame } from "../ncp/frames.js";
|
|
4
|
+
import type { StreamFrame } from "../ncp/frames.js";
|
|
5
|
+
import { ActionFrame } from "./frames.js";
|
|
6
|
+
import type { AnchorFrame } from "../ncp/frames.js";
|
|
7
|
+
import type { QueryFrame } from "./frames.js";
|
|
8
|
+
export declare class NwpClient {
|
|
9
|
+
private readonly _baseUrl;
|
|
10
|
+
private readonly _codec;
|
|
11
|
+
private readonly _tier;
|
|
12
|
+
constructor(baseUrl: string, options?: {
|
|
13
|
+
defaultTier?: EncodingTier;
|
|
14
|
+
maxPayload?: number;
|
|
15
|
+
registry?: FrameRegistry;
|
|
16
|
+
});
|
|
17
|
+
sendAnchor(frame: AnchorFrame): Promise<void>;
|
|
18
|
+
query(frame: QueryFrame): Promise<CapsFrame>;
|
|
19
|
+
stream(frame: QueryFrame): AsyncGenerator<StreamFrame>;
|
|
20
|
+
invoke(frame: ActionFrame): Promise<unknown>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/nwp/client.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EAAE,WAAW,EAA+B,MAAM,aAAa,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAuB,MAAM,aAAa,CAAC;AAInE,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkB;gBAGtC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QAAE,WAAW,CAAC,EAAE,YAAY,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,aAAa,CAAA;KAAO;IAevF,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAU7C,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAiB3C,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,cAAc,CAAC,WAAW,CAAC;IAwBvD,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;CAoBnD"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
// Copyright 2026 INNO LOTUS PTY LTD
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
/**
|
|
4
|
+
* NwpClient — async HTTP-mode client for NPS Neural Web Protocol nodes (NPS-2).
|
|
5
|
+
*/
|
|
6
|
+
import { NpsFrameCodec } from "../core/codec.js";
|
|
7
|
+
import { EncodingTier } from "../core/frames.js";
|
|
8
|
+
import { FrameRegistry } from "../core/registry.js";
|
|
9
|
+
import { registerNcpFrames } from "../ncp/registry.js";
|
|
10
|
+
import { CapsFrame } from "../ncp/frames.js";
|
|
11
|
+
import { registerNwpFrames } from "./registry.js";
|
|
12
|
+
import { asyncActionResponseFromDict } from "./frames.js";
|
|
13
|
+
const CONTENT_TYPE = "application/x-nps-frame";
|
|
14
|
+
export class NwpClient {
|
|
15
|
+
_baseUrl;
|
|
16
|
+
_codec;
|
|
17
|
+
_tier;
|
|
18
|
+
constructor(baseUrl, options = {}) {
|
|
19
|
+
this._baseUrl = baseUrl.replace(/\/$/, "");
|
|
20
|
+
this._tier = options.defaultTier ?? EncodingTier.MSGPACK;
|
|
21
|
+
const registry = options.registry ?? (() => {
|
|
22
|
+
const r = new FrameRegistry();
|
|
23
|
+
registerNcpFrames(r);
|
|
24
|
+
registerNwpFrames(r);
|
|
25
|
+
return r;
|
|
26
|
+
})();
|
|
27
|
+
const codecOpts = options.maxPayload !== undefined ? { maxPayload: options.maxPayload } : {};
|
|
28
|
+
this._codec = new NpsFrameCodec(registry, codecOpts);
|
|
29
|
+
}
|
|
30
|
+
async sendAnchor(frame) {
|
|
31
|
+
const wire = this._codec.encode(frame, { overrideTier: this._tier });
|
|
32
|
+
const res = await fetch(`${this._baseUrl}/anchor`, {
|
|
33
|
+
method: "POST",
|
|
34
|
+
body: wire,
|
|
35
|
+
headers: { "Content-Type": CONTENT_TYPE, "Accept": CONTENT_TYPE },
|
|
36
|
+
});
|
|
37
|
+
if (!res.ok)
|
|
38
|
+
throw new Error(`NWP /anchor failed: HTTP ${res.status}`);
|
|
39
|
+
}
|
|
40
|
+
async query(frame) {
|
|
41
|
+
const wire = this._codec.encode(frame, { overrideTier: this._tier });
|
|
42
|
+
const res = await fetch(`${this._baseUrl}/query`, {
|
|
43
|
+
method: "POST",
|
|
44
|
+
body: wire,
|
|
45
|
+
headers: { "Content-Type": CONTENT_TYPE, "Accept": CONTENT_TYPE },
|
|
46
|
+
});
|
|
47
|
+
if (!res.ok)
|
|
48
|
+
throw new Error(`NWP /query failed: HTTP ${res.status}`);
|
|
49
|
+
const buf = new Uint8Array(await res.arrayBuffer());
|
|
50
|
+
const result = this._codec.decode(buf);
|
|
51
|
+
if (!(result instanceof CapsFrame)) {
|
|
52
|
+
throw new TypeError(`Expected CapsFrame from /query, got ${result.constructor.name}.`);
|
|
53
|
+
}
|
|
54
|
+
return result;
|
|
55
|
+
}
|
|
56
|
+
async *stream(frame) {
|
|
57
|
+
const wire = this._codec.encode(frame, { overrideTier: this._tier });
|
|
58
|
+
const res = await fetch(`${this._baseUrl}/stream`, {
|
|
59
|
+
method: "POST",
|
|
60
|
+
body: wire,
|
|
61
|
+
headers: { "Content-Type": CONTENT_TYPE, "Accept": CONTENT_TYPE },
|
|
62
|
+
});
|
|
63
|
+
if (!res.ok)
|
|
64
|
+
throw new Error(`NWP /stream failed: HTTP ${res.status}`);
|
|
65
|
+
if (res.body === null)
|
|
66
|
+
return;
|
|
67
|
+
const { StreamFrame: SF } = await import("../ncp/frames.js");
|
|
68
|
+
for await (const chunk of res.body) {
|
|
69
|
+
const bytes = chunk instanceof Uint8Array ? chunk : new Uint8Array(chunk);
|
|
70
|
+
if (bytes.length === 0)
|
|
71
|
+
continue;
|
|
72
|
+
const result = this._codec.decode(bytes);
|
|
73
|
+
if (!(result instanceof SF)) {
|
|
74
|
+
throw new TypeError(`Expected StreamFrame from /stream, got ${result.constructor.name}.`);
|
|
75
|
+
}
|
|
76
|
+
yield result;
|
|
77
|
+
if (result.isLast)
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
async invoke(frame) {
|
|
82
|
+
const wire = this._codec.encode(frame, { overrideTier: this._tier });
|
|
83
|
+
const res = await fetch(`${this._baseUrl}/invoke`, {
|
|
84
|
+
method: "POST",
|
|
85
|
+
body: wire,
|
|
86
|
+
headers: { "Content-Type": CONTENT_TYPE, "Accept": CONTENT_TYPE },
|
|
87
|
+
});
|
|
88
|
+
if (!res.ok)
|
|
89
|
+
throw new Error(`NWP /invoke failed: HTTP ${res.status}`);
|
|
90
|
+
if (frame.async_) {
|
|
91
|
+
return asyncActionResponseFromDict(await res.json());
|
|
92
|
+
}
|
|
93
|
+
const contentType = res.headers.get("content-type") ?? "";
|
|
94
|
+
if (contentType.includes(CONTENT_TYPE)) {
|
|
95
|
+
const buf = new Uint8Array(await res.arrayBuffer());
|
|
96
|
+
return this._codec.decode(buf);
|
|
97
|
+
}
|
|
98
|
+
return res.json();
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/nwp/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { EncodingTier, FrameType } from "../core/frames.js";
|
|
2
|
+
import type { NpsFrame } from "../core/codec.js";
|
|
3
|
+
export interface QueryOrderClause {
|
|
4
|
+
field: string;
|
|
5
|
+
dir: "asc" | "desc";
|
|
6
|
+
}
|
|
7
|
+
export interface VectorSearchOptions {
|
|
8
|
+
vector: readonly number[];
|
|
9
|
+
topK?: number;
|
|
10
|
+
minScore?: number;
|
|
11
|
+
vectorField?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare class QueryFrame implements NpsFrame {
|
|
14
|
+
readonly anchorRef?: string | undefined;
|
|
15
|
+
readonly filter?: Record<string, unknown> | undefined;
|
|
16
|
+
readonly limit?: number | undefined;
|
|
17
|
+
readonly offset?: number | undefined;
|
|
18
|
+
readonly orderBy?: readonly QueryOrderClause[] | undefined;
|
|
19
|
+
readonly fields?: readonly string[] | undefined;
|
|
20
|
+
readonly vectorSearch?: VectorSearchOptions | undefined;
|
|
21
|
+
readonly depth?: number | undefined;
|
|
22
|
+
readonly frameType = FrameType.QUERY;
|
|
23
|
+
readonly preferredTier = EncodingTier.MSGPACK;
|
|
24
|
+
constructor(anchorRef?: string | undefined, filter?: Record<string, unknown> | undefined, limit?: number | undefined, offset?: number | undefined, orderBy?: readonly QueryOrderClause[] | undefined, fields?: readonly string[] | undefined, vectorSearch?: VectorSearchOptions | undefined, depth?: number | undefined);
|
|
25
|
+
toDict(): Record<string, unknown>;
|
|
26
|
+
static fromDict(data: Record<string, unknown>): QueryFrame;
|
|
27
|
+
}
|
|
28
|
+
export declare class ActionFrame implements NpsFrame {
|
|
29
|
+
readonly actionId: string;
|
|
30
|
+
readonly params?: Record<string, unknown> | undefined;
|
|
31
|
+
readonly async_?: boolean | undefined;
|
|
32
|
+
readonly idempotencyKey?: string | undefined;
|
|
33
|
+
readonly timeoutMs?: number | undefined;
|
|
34
|
+
readonly frameType = FrameType.ACTION;
|
|
35
|
+
readonly preferredTier = EncodingTier.MSGPACK;
|
|
36
|
+
constructor(actionId: string, params?: Record<string, unknown> | undefined, async_?: boolean | undefined, idempotencyKey?: string | undefined, timeoutMs?: number | undefined);
|
|
37
|
+
toDict(): Record<string, unknown>;
|
|
38
|
+
static fromDict(data: Record<string, unknown>): ActionFrame;
|
|
39
|
+
}
|
|
40
|
+
export interface AsyncActionResponse {
|
|
41
|
+
taskId: string;
|
|
42
|
+
status: string;
|
|
43
|
+
pollUrl?: string | undefined;
|
|
44
|
+
}
|
|
45
|
+
export declare function asyncActionResponseFromDict(data: Record<string, unknown>): AsyncActionResponse;
|
|
46
|
+
//# sourceMappingURL=frames.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frames.d.ts","sourceRoot":"","sources":["../../src/nwp/frames.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIjD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAI,KAAK,GAAG,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAO,SAAS,MAAM,EAAE,CAAC;IAC/B,IAAI,CAAC,EAAQ,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAI,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,qBAAa,UAAW,YAAW,QAAQ;aAKvB,SAAS,CAAC,EAAK,MAAM;aACrB,MAAM,CAAC,EAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;aACtC,KAAK,CAAC,EAAS,MAAM;aACrB,MAAM,CAAC,EAAQ,MAAM;aACrB,OAAO,CAAC,EAAO,SAAS,gBAAgB,EAAE;aAC1C,MAAM,CAAC,EAAQ,SAAS,MAAM,EAAE;aAChC,YAAY,CAAC,EAAE,mBAAmB;aAClC,KAAK,CAAC,EAAS,MAAM;IAXvC,QAAQ,CAAC,SAAS,mBAAuB;IACzC,QAAQ,CAAC,aAAa,wBAAwB;gBAG5B,SAAS,CAAC,EAAK,MAAM,YAAA,EACrB,MAAM,CAAC,EAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA,EACtC,KAAK,CAAC,EAAS,MAAM,YAAA,EACrB,MAAM,CAAC,EAAQ,MAAM,YAAA,EACrB,OAAO,CAAC,EAAO,SAAS,gBAAgB,EAAE,YAAA,EAC1C,MAAM,CAAC,EAAQ,SAAS,MAAM,EAAE,YAAA,EAChC,YAAY,CAAC,EAAE,mBAAmB,YAAA,EAClC,KAAK,CAAC,EAAS,MAAM,YAAA;IAGvC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAajC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU;CAY3D;AAID,qBAAa,WAAY,YAAW,QAAQ;aAKxB,QAAQ,EAAS,MAAM;aACvB,MAAM,CAAC,EAAU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;aACxC,MAAM,CAAC,EAAU,OAAO;aACxB,cAAc,CAAC,EAAE,MAAM;aACvB,SAAS,CAAC,EAAO,MAAM;IARzC,QAAQ,CAAC,SAAS,oBAAwB;IAC1C,QAAQ,CAAC,aAAa,wBAAwB;gBAG5B,QAAQ,EAAS,MAAM,EACvB,MAAM,CAAC,EAAU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA,EACxC,MAAM,CAAC,EAAU,OAAO,YAAA,EACxB,cAAc,CAAC,EAAE,MAAM,YAAA,EACvB,SAAS,CAAC,EAAO,MAAM,YAAA;IAGzC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAUjC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW;CAS5D;AAID,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAK,MAAM,CAAC;IAClB,MAAM,EAAK,MAAM,CAAC;IAClB,OAAO,CAAC,EAAG,MAAM,GAAG,SAAS,CAAC;CAC/B;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,mBAAmB,CAQ9F"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
// Copyright 2026 INNO LOTUS PTY LTD
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { EncodingTier, FrameType } from "../core/frames.js";
|
|
4
|
+
// ── QueryFrame ────────────────────────────────────────────────────────────────
|
|
5
|
+
export class QueryFrame {
|
|
6
|
+
anchorRef;
|
|
7
|
+
filter;
|
|
8
|
+
limit;
|
|
9
|
+
offset;
|
|
10
|
+
orderBy;
|
|
11
|
+
fields;
|
|
12
|
+
vectorSearch;
|
|
13
|
+
depth;
|
|
14
|
+
frameType = FrameType.QUERY;
|
|
15
|
+
preferredTier = EncodingTier.MSGPACK;
|
|
16
|
+
constructor(anchorRef, filter, limit, offset, orderBy, fields, vectorSearch, depth) {
|
|
17
|
+
this.anchorRef = anchorRef;
|
|
18
|
+
this.filter = filter;
|
|
19
|
+
this.limit = limit;
|
|
20
|
+
this.offset = offset;
|
|
21
|
+
this.orderBy = orderBy;
|
|
22
|
+
this.fields = fields;
|
|
23
|
+
this.vectorSearch = vectorSearch;
|
|
24
|
+
this.depth = depth;
|
|
25
|
+
}
|
|
26
|
+
toDict() {
|
|
27
|
+
return {
|
|
28
|
+
anchor_ref: this.anchorRef ?? null,
|
|
29
|
+
filter: this.filter ?? null,
|
|
30
|
+
limit: this.limit ?? null,
|
|
31
|
+
offset: this.offset ?? null,
|
|
32
|
+
order_by: this.orderBy ?? null,
|
|
33
|
+
fields: this.fields ?? null,
|
|
34
|
+
vector_search: this.vectorSearch ?? null,
|
|
35
|
+
depth: this.depth ?? null,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
static fromDict(data) {
|
|
39
|
+
return new QueryFrame(data["anchor_ref"] ?? undefined, data["filter"] ?? undefined, data["limit"] ?? undefined, data["offset"] ?? undefined, data["order_by"] ?? undefined, data["fields"] ?? undefined, data["vector_search"] ?? undefined, data["depth"] ?? undefined);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
// ── ActionFrame ───────────────────────────────────────────────────────────────
|
|
43
|
+
export class ActionFrame {
|
|
44
|
+
actionId;
|
|
45
|
+
params;
|
|
46
|
+
async_;
|
|
47
|
+
idempotencyKey;
|
|
48
|
+
timeoutMs;
|
|
49
|
+
frameType = FrameType.ACTION;
|
|
50
|
+
preferredTier = EncodingTier.MSGPACK;
|
|
51
|
+
constructor(actionId, params, async_, idempotencyKey, timeoutMs) {
|
|
52
|
+
this.actionId = actionId;
|
|
53
|
+
this.params = params;
|
|
54
|
+
this.async_ = async_;
|
|
55
|
+
this.idempotencyKey = idempotencyKey;
|
|
56
|
+
this.timeoutMs = timeoutMs;
|
|
57
|
+
}
|
|
58
|
+
toDict() {
|
|
59
|
+
return {
|
|
60
|
+
action_id: this.actionId,
|
|
61
|
+
params: this.params ?? null,
|
|
62
|
+
async: this.async_ ?? false,
|
|
63
|
+
idempotency_key: this.idempotencyKey ?? null,
|
|
64
|
+
timeout_ms: this.timeoutMs ?? null,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
static fromDict(data) {
|
|
68
|
+
return new ActionFrame(data["action_id"], data["params"] ?? undefined, data["async"] ?? undefined, data["idempotency_key"] ?? undefined, data["timeout_ms"] ?? undefined);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
export function asyncActionResponseFromDict(data) {
|
|
72
|
+
const r = {
|
|
73
|
+
taskId: data["task_id"],
|
|
74
|
+
status: data["status"],
|
|
75
|
+
};
|
|
76
|
+
const pollUrl = data["poll_url"];
|
|
77
|
+
if (pollUrl != null)
|
|
78
|
+
r.pollUrl = pollUrl;
|
|
79
|
+
return r;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=frames.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frames.js","sourceRoot":"","sources":["../../src/nwp/frames.ts"],"names":[],"mappings":"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"}
|