@laserdata/laser-sdk 0.3.2 → 0.4.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/README.md +44 -24
- package/dist/agent/reliable-consumer.d.ts.map +1 -1
- package/dist/agent/reliable-consumer.js +0 -1
- package/dist/agent/reliable-consumer.js.map +1 -1
- package/dist/agent/router.d.ts.map +1 -1
- package/dist/agent/router.js +0 -1
- package/dist/agent/router.js.map +1 -1
- package/dist/bridges/a2a.d.ts +1 -1
- package/dist/bridges/a2a.js +1 -1
- package/dist/client/connect-options.d.ts +5 -0
- package/dist/client/connect-options.d.ts.map +1 -0
- package/dist/client/connect-options.js +18 -0
- package/dist/client/connect-options.js.map +1 -0
- package/dist/client/laser.d.ts +22 -1
- package/dist/client/laser.d.ts.map +1 -1
- package/dist/client/laser.js +93 -26
- package/dist/client/laser.js.map +1 -1
- package/dist/client/publish-options.d.ts +8 -0
- package/dist/client/publish-options.d.ts.map +1 -0
- package/dist/client/publish-options.js +43 -0
- package/dist/client/publish-options.js.map +1 -0
- package/dist/context-scope.d.ts +8 -2
- package/dist/context-scope.d.ts.map +1 -1
- package/dist/context-scope.js +12 -1
- package/dist/context-scope.js.map +1 -1
- package/dist/context.d.ts +29 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +85 -3
- package/dist/context.js.map +1 -1
- package/dist/conversation-state.d.ts +7 -1
- package/dist/conversation-state.d.ts.map +1 -1
- package/dist/conversation-state.js +6 -0
- package/dist/conversation-state.js.map +1 -1
- package/dist/iggy/apache-iggy.d.ts +22 -4
- package/dist/iggy/apache-iggy.d.ts.map +1 -1
- package/dist/iggy/apache-iggy.js +220 -49
- package/dist/iggy/apache-iggy.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/session.d.ts +102 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +161 -0
- package/dist/session.js.map +1 -0
- package/dist/stream/cursor.d.ts +3 -0
- package/dist/stream/cursor.d.ts.map +1 -1
- package/dist/stream/cursor.js +37 -4
- package/dist/stream/cursor.js.map +1 -1
- package/dist/stream/producer.d.ts +1 -0
- package/dist/stream/producer.d.ts.map +1 -1
- package/dist/stream/producer.js +10 -0
- package/dist/stream/producer.js.map +1 -1
- package/dist/stream/stream.d.ts +4 -1
- package/dist/stream/stream.d.ts.map +1 -1
- package/dist/stream/stream.js +11 -1
- package/dist/stream/stream.js.map +1 -1
- package/dist/stream/topic.d.ts +5 -0
- package/dist/stream/topic.d.ts.map +1 -1
- package/dist/stream/topic.js +15 -0
- package/dist/stream/topic.js.map +1 -1
- package/package.json +12 -12
package/dist/index.js
CHANGED
|
@@ -23,8 +23,9 @@ export { AgentTopic } from "./provenance/agent-topic.js";
|
|
|
23
23
|
export { AgentRegistry, ClientMetadataRequest } from "./agent/registry.js";
|
|
24
24
|
export { AgentContext, BEST_EFFORT, REQUIRE_ALL, emptyGather, gatherReplies, quorumOf, quorumSatisfied } from "./agent/context.js";
|
|
25
25
|
export { AgentScope } from "./agent/scope.js";
|
|
26
|
-
export { ContextAssembler, ContextAssemblerBuilder, ContextChain, LastN, RoleFilter, TokenBudget } from "./context.js";
|
|
26
|
+
export { Checkpoint, ContextAssembler, ContextAssemblerBuilder, ContextChain, LastN, RoleFilter, TokenBudget } from "./context.js";
|
|
27
27
|
export { ContextScope, ScopedMemory } from "./context-scope.js";
|
|
28
|
+
export { DEFAULT_SESSION_CONTEXT_TOKENS, DEFAULT_SESSION_CONTEXT_TURNS, DEFAULT_SESSION_MEMORY_NAMESPACE, DEFAULT_SESSION_TOPICS, Session, SessionConfig, Sessions, sessionTurnKind, sessionTurnText, sessionTurnTopic } from "./session.js";
|
|
28
29
|
export { ConversationState, FULL_REPLAY, resumeOffsets } from "./conversation-state.js";
|
|
29
30
|
export { FileStore, InMemoryStore } from "./state-store.js";
|
|
30
31
|
export { DEFAULT_SNAPSHOT_NAMESPACE, DEFAULT_SNAPSHOT_TOPIC, KvSnapshotStore, TopicSnapshotStore } from "./snapshot.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import type { Laser } from "./client/laser.js";
|
|
2
|
+
import type { BytesLike } from "./client/bytes.js";
|
|
3
|
+
import type { GraphHandle } from "./managed/graph.js";
|
|
4
|
+
import { type Checkpoint, type ContextMessage, type ContextPolicy } from "./context.js";
|
|
5
|
+
import { ContextScope, type ScopedMemory } from "./context-scope.js";
|
|
6
|
+
import { ConversationId } from "./types/ids.js";
|
|
7
|
+
/** What a `Session.append` records. Each kind rides exactly one
|
|
8
|
+
* conversation-level agent topic, so a session turn is an ordinary agent
|
|
9
|
+
* message. The names are shared with the Rust and Python SDKs. */
|
|
10
|
+
export type SessionTurnKind = "instruction" | "response" | "model.response" | "tool.call" | "tool.result" | "human.input";
|
|
11
|
+
/** The topic a turn kind rides. */
|
|
12
|
+
export declare function sessionTurnTopic(kind: SessionTurnKind): string;
|
|
13
|
+
/** The kind that rides `topic`, or `undefined` outside `DEFAULT_SESSION_TOPICS`. */
|
|
14
|
+
export declare function sessionTurnKind(topic: string): SessionTurnKind | undefined;
|
|
15
|
+
/** The topics a `Session` reads and writes: one per `SessionTurnKind`. */
|
|
16
|
+
export declare const DEFAULT_SESSION_TOPICS: readonly string[];
|
|
17
|
+
/** The memory namespace a `Session` uses by default. Conversation scoping
|
|
18
|
+
* keeps one session's memory apart from another's. */
|
|
19
|
+
export declare const DEFAULT_SESSION_MEMORY_NAMESPACE = "agent.session";
|
|
20
|
+
export declare const DEFAULT_SESSION_CONTEXT_TURNS = 50;
|
|
21
|
+
export declare const DEFAULT_SESSION_CONTEXT_TOKENS = 4000;
|
|
22
|
+
/** One turn read back from a `Session`: the message plus the kind its topic implies. */
|
|
23
|
+
export interface SessionTurn {
|
|
24
|
+
readonly kind: SessionTurnKind;
|
|
25
|
+
readonly message: ContextMessage;
|
|
26
|
+
}
|
|
27
|
+
/** The payload of `turn` as UTF-8, lossy. */
|
|
28
|
+
export declare function sessionTurnText(turn: SessionTurn): string;
|
|
29
|
+
/** How a `Sessions` factory lays its sessions out on the log. The defaults
|
|
30
|
+
* are the conversation-level agent topics on the connection's default stream.
|
|
31
|
+
* A fleet of agents that must not share a topic's partitions with another
|
|
32
|
+
* fleet points its kinds at its own topics, or the whole factory at its own
|
|
33
|
+
* stream. Every kind needs a topic of its own: a turn's kind is its topic. */
|
|
34
|
+
export interface SessionOptions {
|
|
35
|
+
readonly stream?: string;
|
|
36
|
+
readonly topics?: Partial<Readonly<Record<SessionTurnKind, string>>>;
|
|
37
|
+
readonly memoryNamespace?: string;
|
|
38
|
+
readonly contextTurns?: number;
|
|
39
|
+
readonly contextTokens?: number;
|
|
40
|
+
}
|
|
41
|
+
export declare class SessionConfig {
|
|
42
|
+
readonly stream: string | undefined;
|
|
43
|
+
readonly topics: Readonly<Record<SessionTurnKind, string>>;
|
|
44
|
+
readonly memoryNamespace: string;
|
|
45
|
+
readonly contextTurns: number;
|
|
46
|
+
readonly contextTokens: number;
|
|
47
|
+
constructor(options?: SessionOptions);
|
|
48
|
+
/** The topic `kind` rides. */
|
|
49
|
+
topicFor(kind: SessionTurnKind): string;
|
|
50
|
+
/** The kind that rides `topic`, or `undefined` outside this layout. */
|
|
51
|
+
kindFor(topic: string): SessionTurnKind | undefined;
|
|
52
|
+
/** Every topic this layout reads, in kind order. */
|
|
53
|
+
get topicList(): readonly string[];
|
|
54
|
+
}
|
|
55
|
+
/** The session factory. Build it with `laser.sessions()`. */
|
|
56
|
+
export declare class Sessions {
|
|
57
|
+
private readonly laser;
|
|
58
|
+
readonly config: SessionConfig;
|
|
59
|
+
constructor(laser: Laser, options?: SessionOptions);
|
|
60
|
+
/** The durable session named `id`. The conversation derives from `id`, so
|
|
61
|
+
* the same id always reaches the same history, and nothing is created on the
|
|
62
|
+
* server until a turn is appended. */
|
|
63
|
+
create(id: string): Session;
|
|
64
|
+
/** A fresh anonymous session. Keep `session.conversation` to `open` it again. */
|
|
65
|
+
start(): Session;
|
|
66
|
+
/** The session over an existing conversation: one minted by `start`, carried
|
|
67
|
+
* by an inbound message's provenance, or a sub-conversation. */
|
|
68
|
+
open(conversation: ConversationId): Session;
|
|
69
|
+
}
|
|
70
|
+
/** One agent session over a conversation. Turns are agent messages on the
|
|
71
|
+
* conversation-level topics, the context is a bounded assembly of them, memory
|
|
72
|
+
* is the conversation's scoped memory, and a `Checkpoint` bounds point-in-time
|
|
73
|
+
* and incremental replay. Build it with `laser.sessions()`. */
|
|
74
|
+
export declare class Session {
|
|
75
|
+
readonly scope: ContextScope;
|
|
76
|
+
readonly config: SessionConfig;
|
|
77
|
+
constructor(scope: ContextScope, config?: SessionConfig);
|
|
78
|
+
get conversation(): ConversationId;
|
|
79
|
+
append(kind: SessionTurnKind, data: BytesLike): Promise<void>;
|
|
80
|
+
/** The model-ready context: the configured last turns across the session's
|
|
81
|
+
* topics, trimmed to the configured estimated token bound. */
|
|
82
|
+
context(): Promise<readonly SessionTurn[]>;
|
|
83
|
+
contextWith(policy: ContextPolicy): Promise<readonly SessionTurn[]>;
|
|
84
|
+
/** This session's memory in the configured namespace, scoped to the conversation. */
|
|
85
|
+
memory(namespace?: string): ScopedMemory;
|
|
86
|
+
/** The knowledge graph `name`, the same graph `laser.graph` returns. */
|
|
87
|
+
graph(name: string): GraphHandle;
|
|
88
|
+
/** Where this session's topics end right now. Persist it and hand it to
|
|
89
|
+
* `turnsAt`, `turnsSince`, `stateAt`, or `replay`. */
|
|
90
|
+
checkpoint(): Promise<Checkpoint>;
|
|
91
|
+
/** The turns up to `checkpoint`. */
|
|
92
|
+
turnsAt(checkpoint: Checkpoint): Promise<readonly SessionTurn[]>;
|
|
93
|
+
/** The turns appended after `checkpoint`. */
|
|
94
|
+
turnsSince(checkpoint: Checkpoint): Promise<readonly SessionTurn[]>;
|
|
95
|
+
/** Fold the turns up to `checkpoint`: state as it stood then. */
|
|
96
|
+
stateAt<State>(checkpoint: Checkpoint, initial: State, fold: (state: State, turn: SessionTurn) => State): Promise<State>;
|
|
97
|
+
/** Fold the turns appended after `checkpoint`: bring state saved there up to date. */
|
|
98
|
+
replay<State>(checkpoint: Checkpoint, initial: State, fold: (state: State, turn: SessionTurn) => State): Promise<State>;
|
|
99
|
+
private turns;
|
|
100
|
+
private turnsOf;
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
package/dist/session.js
ADDED
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { ContextChain, LastN, TokenBudget } from "./context.js";
|
|
2
|
+
import { ContextScope } from "./context-scope.js";
|
|
3
|
+
import { InvalidError } from "./client/errors.js";
|
|
4
|
+
import { AgentTopic } from "./provenance/agent-topic.js";
|
|
5
|
+
import { ConversationId } from "./types/ids.js";
|
|
6
|
+
const TURN_TOPICS = {
|
|
7
|
+
instruction: AgentTopic.Commands,
|
|
8
|
+
response: AgentTopic.Responses,
|
|
9
|
+
"model.response": AgentTopic.LlmIo,
|
|
10
|
+
"tool.call": AgentTopic.ToolCalls,
|
|
11
|
+
"tool.result": AgentTopic.ToolResults,
|
|
12
|
+
"human.input": AgentTopic.HumanInput
|
|
13
|
+
};
|
|
14
|
+
/** The topic a turn kind rides. */
|
|
15
|
+
export function sessionTurnTopic(kind) {
|
|
16
|
+
return TURN_TOPICS[kind];
|
|
17
|
+
}
|
|
18
|
+
/** The kind that rides `topic`, or `undefined` outside `DEFAULT_SESSION_TOPICS`. */
|
|
19
|
+
export function sessionTurnKind(topic) {
|
|
20
|
+
return Object.keys(TURN_TOPICS).find((kind) => TURN_TOPICS[kind] === topic);
|
|
21
|
+
}
|
|
22
|
+
/** The topics a `Session` reads and writes: one per `SessionTurnKind`. */
|
|
23
|
+
export const DEFAULT_SESSION_TOPICS = Object.values(TURN_TOPICS);
|
|
24
|
+
/** The memory namespace a `Session` uses by default. Conversation scoping
|
|
25
|
+
* keeps one session's memory apart from another's. */
|
|
26
|
+
export const DEFAULT_SESSION_MEMORY_NAMESPACE = "agent.session";
|
|
27
|
+
export const DEFAULT_SESSION_CONTEXT_TURNS = 50;
|
|
28
|
+
export const DEFAULT_SESSION_CONTEXT_TOKENS = 4000;
|
|
29
|
+
/** The payload of `turn` as UTF-8, lossy. */
|
|
30
|
+
export function sessionTurnText(turn) {
|
|
31
|
+
return new TextDecoder().decode(turn.message.payload);
|
|
32
|
+
}
|
|
33
|
+
export class SessionConfig {
|
|
34
|
+
stream;
|
|
35
|
+
topics;
|
|
36
|
+
memoryNamespace;
|
|
37
|
+
contextTurns;
|
|
38
|
+
contextTokens;
|
|
39
|
+
constructor(options = {}) {
|
|
40
|
+
this.stream = options.stream;
|
|
41
|
+
this.topics = { ...TURN_TOPICS, ...options.topics };
|
|
42
|
+
this.memoryNamespace = options.memoryNamespace ?? DEFAULT_SESSION_MEMORY_NAMESPACE;
|
|
43
|
+
this.contextTurns = options.contextTurns ?? DEFAULT_SESSION_CONTEXT_TURNS;
|
|
44
|
+
this.contextTokens = options.contextTokens ?? DEFAULT_SESSION_CONTEXT_TOKENS;
|
|
45
|
+
const owners = new Map();
|
|
46
|
+
for (const kind of Object.keys(this.topics)) {
|
|
47
|
+
const topic = this.topics[kind];
|
|
48
|
+
const other = owners.get(topic);
|
|
49
|
+
if (other !== undefined) {
|
|
50
|
+
throw new InvalidError(`session turn kinds ${other} and ${kind} share topic ${topic}, each kind needs its own topic`);
|
|
51
|
+
}
|
|
52
|
+
owners.set(topic, kind);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
/** The topic `kind` rides. */
|
|
56
|
+
topicFor(kind) {
|
|
57
|
+
return this.topics[kind];
|
|
58
|
+
}
|
|
59
|
+
/** The kind that rides `topic`, or `undefined` outside this layout. */
|
|
60
|
+
kindFor(topic) {
|
|
61
|
+
return Object.keys(this.topics).find((kind) => this.topics[kind] === topic);
|
|
62
|
+
}
|
|
63
|
+
/** Every topic this layout reads, in kind order. */
|
|
64
|
+
get topicList() {
|
|
65
|
+
return Object.values(this.topics);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/** The session factory. Build it with `laser.sessions()`. */
|
|
69
|
+
export class Sessions {
|
|
70
|
+
laser;
|
|
71
|
+
config;
|
|
72
|
+
constructor(laser, options = {}) {
|
|
73
|
+
this.laser = laser;
|
|
74
|
+
this.config = new SessionConfig(options);
|
|
75
|
+
this.laser =
|
|
76
|
+
this.config.stream === undefined ? laser : laser.withDefaultStream(this.config.stream);
|
|
77
|
+
}
|
|
78
|
+
/** The durable session named `id`. The conversation derives from `id`, so
|
|
79
|
+
* the same id always reaches the same history, and nothing is created on the
|
|
80
|
+
* server until a turn is appended. */
|
|
81
|
+
create(id) {
|
|
82
|
+
return this.open(ConversationId.derive(id));
|
|
83
|
+
}
|
|
84
|
+
/** A fresh anonymous session. Keep `session.conversation` to `open` it again. */
|
|
85
|
+
start() {
|
|
86
|
+
return this.open(ConversationId.new());
|
|
87
|
+
}
|
|
88
|
+
/** The session over an existing conversation: one minted by `start`, carried
|
|
89
|
+
* by an inbound message's provenance, or a sub-conversation. */
|
|
90
|
+
open(conversation) {
|
|
91
|
+
return new Session(new ContextScope(this.laser, conversation), this.config);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/** One agent session over a conversation. Turns are agent messages on the
|
|
95
|
+
* conversation-level topics, the context is a bounded assembly of them, memory
|
|
96
|
+
* is the conversation's scoped memory, and a `Checkpoint` bounds point-in-time
|
|
97
|
+
* and incremental replay. Build it with `laser.sessions()`. */
|
|
98
|
+
export class Session {
|
|
99
|
+
scope;
|
|
100
|
+
config;
|
|
101
|
+
constructor(scope, config = new SessionConfig()) {
|
|
102
|
+
this.scope = scope;
|
|
103
|
+
this.config = config;
|
|
104
|
+
}
|
|
105
|
+
get conversation() {
|
|
106
|
+
return this.scope.conversation;
|
|
107
|
+
}
|
|
108
|
+
append(kind, data) {
|
|
109
|
+
return this.scope.append(this.config.topicFor(kind), data);
|
|
110
|
+
}
|
|
111
|
+
/** The model-ready context: the configured last turns across the session's
|
|
112
|
+
* topics, trimmed to the configured estimated token bound. */
|
|
113
|
+
context() {
|
|
114
|
+
return this.contextWith(new ContextChain([
|
|
115
|
+
new LastN(this.config.contextTurns),
|
|
116
|
+
new TokenBudget(this.config.contextTokens)
|
|
117
|
+
]));
|
|
118
|
+
}
|
|
119
|
+
async contextWith(policy) {
|
|
120
|
+
return this.turnsOf(await this.scope.fetchWith(this.config.topicList, policy));
|
|
121
|
+
}
|
|
122
|
+
/** This session's memory in the configured namespace, scoped to the conversation. */
|
|
123
|
+
memory(namespace = this.config.memoryNamespace) {
|
|
124
|
+
return this.scope.memory(namespace);
|
|
125
|
+
}
|
|
126
|
+
/** The knowledge graph `name`, the same graph `laser.graph` returns. */
|
|
127
|
+
graph(name) {
|
|
128
|
+
return this.scope.graph(name);
|
|
129
|
+
}
|
|
130
|
+
/** Where this session's topics end right now. Persist it and hand it to
|
|
131
|
+
* `turnsAt`, `turnsSince`, `stateAt`, or `replay`. */
|
|
132
|
+
checkpoint() {
|
|
133
|
+
return this.scope.checkpoint(this.config.topicList);
|
|
134
|
+
}
|
|
135
|
+
/** The turns up to `checkpoint`. */
|
|
136
|
+
turnsAt(checkpoint) {
|
|
137
|
+
return this.turns({ kind: "at", checkpoint });
|
|
138
|
+
}
|
|
139
|
+
/** The turns appended after `checkpoint`. */
|
|
140
|
+
turnsSince(checkpoint) {
|
|
141
|
+
return this.turns({ kind: "from-checkpoint", checkpoint });
|
|
142
|
+
}
|
|
143
|
+
/** Fold the turns up to `checkpoint`: state as it stood then. */
|
|
144
|
+
async stateAt(checkpoint, initial, fold) {
|
|
145
|
+
return (await this.turnsAt(checkpoint)).reduce(fold, initial);
|
|
146
|
+
}
|
|
147
|
+
/** Fold the turns appended after `checkpoint`: bring state saved there up to date. */
|
|
148
|
+
async replay(checkpoint, initial, fold) {
|
|
149
|
+
return (await this.turnsSince(checkpoint)).reduce(fold, initial);
|
|
150
|
+
}
|
|
151
|
+
async turns(bound) {
|
|
152
|
+
return this.turnsOf(await this.scope.state(this.config.topicList, bound, [], (acc, message) => [...acc, message]));
|
|
153
|
+
}
|
|
154
|
+
turnsOf(messages) {
|
|
155
|
+
return messages.flatMap((message) => {
|
|
156
|
+
const kind = this.config.kindFor(message.topic);
|
|
157
|
+
return kind === undefined ? [] : [{ kind, message }];
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
package/dist/stream/cursor.d.ts
CHANGED
|
@@ -10,10 +10,13 @@ export declare class Cursor {
|
|
|
10
10
|
private readonly topicName;
|
|
11
11
|
private batchSize;
|
|
12
12
|
private readonly partitionOffsets;
|
|
13
|
+
private readonly partitionEnds;
|
|
13
14
|
private readonly readerName;
|
|
14
15
|
constructor(transport: LaserTransport, streamName: string, topicName: string, partitionIds: readonly number[], options?: CursorOptions);
|
|
15
16
|
get offsets(): ReadonlyMap<number, bigint>;
|
|
16
17
|
fromOffsets(offsets: ReadonlyMap<number, bigint>): this;
|
|
18
|
+
/** Stops each partition at its exclusive `ends` offset instead of the tail. */
|
|
19
|
+
until(ends: ReadonlyMap<number, bigint>): this;
|
|
17
20
|
batch(size: number): this;
|
|
18
21
|
poll(options?: {
|
|
19
22
|
readonly signal?: AbortSignal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../src/stream/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAE5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAGpD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAC7B;
|
|
1
|
+
{"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../src/stream/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAE5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAGpD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAC7B;AAwBD,qBAAa,MAAM;IAOf,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAR5B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqB;IACtD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4B;IAC1D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAE/C,YACmB,SAAS,EAAE,cAAc,EACzB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EAClC,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,OAAO,GAAE,aAAkB,EAK5B;IAED,IAAI,OAAO,IAAI,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAEzC;IAED,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAOtD;IAED,+EAA+E;IAC/E,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAK7C;IAED,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAGxB;IAEK,IAAI,CAAC,OAAO,GAAE;QAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO,GAAG,OAAO,CAAC,SAAS,eAAe,EAAE,CAAC,CAoC/F;IAEM,MAAM,CACX,OAAO,GAAE;QAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAO,GAChF,aAAa,CAAC,eAAe,CAAC,CAUhC;CACF"}
|
package/dist/stream/cursor.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { CancelledError } from "../client/errors.js";
|
|
1
|
+
import { CancelledError, InvalidError } from "../client/errors.js";
|
|
2
2
|
const DEFAULT_BATCH_SIZE = 100;
|
|
3
|
+
const MAX_BATCH_SIZE = 10_000;
|
|
3
4
|
const DEFAULT_POLL_INTERVAL_MS = 250;
|
|
4
5
|
function delay(ms, signal) {
|
|
5
6
|
return new Promise((resolve, reject) => {
|
|
@@ -24,12 +25,13 @@ export class Cursor {
|
|
|
24
25
|
topicName;
|
|
25
26
|
batchSize;
|
|
26
27
|
partitionOffsets;
|
|
28
|
+
partitionEnds = new Map();
|
|
27
29
|
readerName;
|
|
28
30
|
constructor(transport, streamName, topicName, partitionIds, options = {}) {
|
|
29
31
|
this.transport = transport;
|
|
30
32
|
this.streamName = streamName;
|
|
31
33
|
this.topicName = topicName;
|
|
32
|
-
this.batchSize = options.batchSize ?? DEFAULT_BATCH_SIZE;
|
|
34
|
+
this.batchSize = batchSize(options.batchSize ?? DEFAULT_BATCH_SIZE);
|
|
33
35
|
this.readerName = options.readerName;
|
|
34
36
|
this.partitionOffsets = new Map(partitionIds.map((id) => [id, 0n]));
|
|
35
37
|
}
|
|
@@ -44,8 +46,16 @@ export class Cursor {
|
|
|
44
46
|
}
|
|
45
47
|
return this;
|
|
46
48
|
}
|
|
49
|
+
/** Stops each partition at its exclusive `ends` offset instead of the tail. */
|
|
50
|
+
until(ends) {
|
|
51
|
+
for (const [partitionId, end] of ends) {
|
|
52
|
+
if (this.partitionOffsets.has(partitionId))
|
|
53
|
+
this.partitionEnds.set(partitionId, end);
|
|
54
|
+
}
|
|
55
|
+
return this;
|
|
56
|
+
}
|
|
47
57
|
batch(size) {
|
|
48
|
-
this.batchSize = size;
|
|
58
|
+
this.batchSize = batchSize(size);
|
|
49
59
|
return this;
|
|
50
60
|
}
|
|
51
61
|
async poll(options = {}) {
|
|
@@ -53,18 +63,30 @@ export class Cursor {
|
|
|
53
63
|
throw new CancelledError("poll aborted", { cause: options.signal.reason });
|
|
54
64
|
}
|
|
55
65
|
const results = [];
|
|
66
|
+
const nextOffsets = new Map(this.partitionOffsets);
|
|
56
67
|
for (const [partitionId, offset] of this.partitionOffsets) {
|
|
68
|
+
const end = this.partitionEnds.get(partitionId);
|
|
69
|
+
if (end !== undefined && offset >= end)
|
|
70
|
+
continue;
|
|
57
71
|
const strategy = { kind: "offset", value: offset };
|
|
58
72
|
const polled = await this.transport.pollMessages(this.streamName, this.topicName, {
|
|
59
73
|
kind: "single",
|
|
60
74
|
partitionId,
|
|
61
75
|
...(this.readerName !== undefined ? { name: this.readerName } : {})
|
|
62
76
|
}, strategy, this.batchSize, false);
|
|
77
|
+
checkCancellation(options.signal);
|
|
63
78
|
for (const message of polled) {
|
|
79
|
+
if (end !== undefined && message.offset >= end) {
|
|
80
|
+
nextOffsets.set(partitionId, end);
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
64
83
|
results.push(message);
|
|
65
|
-
|
|
84
|
+
nextOffsets.set(partitionId, message.offset + 1n);
|
|
66
85
|
}
|
|
67
86
|
}
|
|
87
|
+
for (const [partitionId, offset] of nextOffsets) {
|
|
88
|
+
this.partitionOffsets.set(partitionId, offset);
|
|
89
|
+
}
|
|
68
90
|
return results;
|
|
69
91
|
}
|
|
70
92
|
async *stream(options = {}) {
|
|
@@ -80,4 +102,15 @@ export class Cursor {
|
|
|
80
102
|
}
|
|
81
103
|
}
|
|
82
104
|
}
|
|
105
|
+
function batchSize(size) {
|
|
106
|
+
if (!Number.isInteger(size) || size < 0 || size > 0xffff_ffff) {
|
|
107
|
+
throw new InvalidError("cursor batch size must be an unsigned 32-bit integer");
|
|
108
|
+
}
|
|
109
|
+
return Math.min(MAX_BATCH_SIZE, Math.max(1, size));
|
|
110
|
+
}
|
|
111
|
+
function checkCancellation(signal) {
|
|
112
|
+
if (signal?.aborted === true) {
|
|
113
|
+
throw new CancelledError("poll aborted", { cause: signal.reason });
|
|
114
|
+
}
|
|
115
|
+
}
|
|
83
116
|
//# sourceMappingURL=cursor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../src/stream/cursor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../src/stream/cursor.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,7 @@ export declare class Producer implements AsyncDisposable {
|
|
|
20
20
|
private readonly transport;
|
|
21
21
|
private readonly streamName;
|
|
22
22
|
private readonly topicName;
|
|
23
|
+
private readonly options;
|
|
23
24
|
private readonly routing;
|
|
24
25
|
private readonly retries;
|
|
25
26
|
private readonly retryIntervalMs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"producer.d.ts","sourceRoot":"","sources":["../../src/stream/producer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAc,MAAM,oBAAoB,CAAA;AAE/D,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EAEd,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAE3C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,OAAO,CAAC,EACf,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAA;CACnF;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAA;IAC3B,QAAQ,CAAC,OAAO,CAAC,EACf,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAA;CACnF;AA2BD,oEAAoE;AACpE,qBAAa,QAAS,YAAW,eAAe;IAO5C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS;
|
|
1
|
+
{"version":3,"file":"producer.d.ts","sourceRoot":"","sources":["../../src/stream/producer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAc,MAAM,oBAAoB,CAAA;AAE/D,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EAEd,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAE3C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,OAAO,CAAC,EACf,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAA;CACnF;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAA;IAC3B,QAAQ,CAAC,OAAO,CAAC,EACf,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAA;CACnF;AA2BD,oEAAoE;AACpE,qBAAa,QAAS,YAAW,eAAe;IAO5C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAQ;IACxC,OAAO,CAAC,MAAM,CAAQ;IAEtB,YACmB,SAAS,EAAE,cAAc,EACzB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,eAAoB,EAiB/C;IAEK,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAK/F;IAEK,WAAW,CACf,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,OAAsB,GAC9B,OAAO,CAAC,oBAAoB,CAAC,CAG/B;IAEK,eAAe,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAE/F;IAEK,SAAS,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAEvF;IAEK,eAAe,CACnB,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,oBAAoB,CAAC,CAK/B;IAEK,SAAS,CACb,QAAQ,EAAE,SAAS,CAAC,SAAS,GAAG,eAAe,CAAC,EAAE,EAClD,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,oBAAoB,CAAC,CAO/B;IAEK,oBAAoB,CACxB,QAAQ,EAAE,SAAS,eAAe,EAAE,EACpC,OAAO,GAAE,OAAsB,GAC9B,OAAO,CAAC,oBAAoB,CAAC,CAE/B;YAEa,gBAAgB;IAS9B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAIrB;IAED,yDAAyD;IACzD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAGxB;IAED,gDAAgD;IAChD,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAErC;IAED,OAAO,CAAC,aAAa;YAIP,aAAa;CAsC5B"}
|
package/dist/stream/producer.js
CHANGED
|
@@ -28,6 +28,7 @@ export class Producer {
|
|
|
28
28
|
transport;
|
|
29
29
|
streamName;
|
|
30
30
|
topicName;
|
|
31
|
+
options;
|
|
31
32
|
routing;
|
|
32
33
|
retries;
|
|
33
34
|
retryIntervalMs;
|
|
@@ -36,6 +37,7 @@ export class Producer {
|
|
|
36
37
|
this.transport = transport;
|
|
37
38
|
this.streamName = streamName;
|
|
38
39
|
this.topicName = topicName;
|
|
40
|
+
this.options = options;
|
|
39
41
|
this.routing =
|
|
40
42
|
options.routing?.kind === "key"
|
|
41
43
|
? { kind: "key", key: options.routing.key.slice() }
|
|
@@ -105,6 +107,14 @@ export class Producer {
|
|
|
105
107
|
throw new InvalidError(`${operation}() called after shutdown()`);
|
|
106
108
|
}
|
|
107
109
|
async sendWithRetry(messages, routing) {
|
|
110
|
+
if (this.transport.publishRetriesManaged === true) {
|
|
111
|
+
return this.transport.sendMessagesWithHeaders(this.streamName, this.topicName, messages, routing.kind === "key" ? routing.key : undefined, routing.kind === "partition" ? routing.partition : undefined, {
|
|
112
|
+
...(this.options.retries === undefined ? {} : { maxRetries: this.retries }),
|
|
113
|
+
...(this.options.retryIntervalMs === undefined
|
|
114
|
+
? {}
|
|
115
|
+
: { retryBackoffMs: this.retryIntervalMs })
|
|
116
|
+
});
|
|
117
|
+
}
|
|
108
118
|
for (let attempt = 0;; attempt += 1) {
|
|
109
119
|
try {
|
|
110
120
|
return await this.transport.sendMessagesWithHeaders(this.streamName, this.topicName, messages, routing.kind === "key" ? routing.key : undefined, routing.kind === "partition" ? routing.partition : undefined);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"producer.js","sourceRoot":"","sources":["../../src/stream/producer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AA4BlE,MAAM,eAAe,GAAG,CAAC,CAAA;AACzB,MAAM,yBAAyB,GAAG,KAAK,CAAA;AAEvC,SAAS,UAAU,CAAC,OAAmC;IACrD,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,IAAI,GAAG,EAAE,CAAA;IAC3C,OAAO,OAAO,YAAY,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;AACrF,CAAC;AAED,SAAS,aAAa,CAAC,OAA4B,EAAE,QAAiB;IACpE,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACjE,MAAM,IAAI,YAAY,CAAC,iEAAiE,CAAC,CAAA;IAC3F,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAA;IAC/F,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAA;IAC/E,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,OAAwB;IAC5C,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAA;AACvF,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAkC;IAC3D,OAAO,SAAS,IAAI,KAAK,CAAA;AAC3B,CAAC;AAED,oEAAoE;AACpE,MAAM,OAAO,QAAQ;IAOA,SAAS;IACT,UAAU;IACV,SAAS;
|
|
1
|
+
{"version":3,"file":"producer.js","sourceRoot":"","sources":["../../src/stream/producer.ts"],"names":[],"mappings":"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"}
|
package/dist/stream/stream.d.ts
CHANGED
|
@@ -7,8 +7,11 @@ export declare class Stream {
|
|
|
7
7
|
private readonly govern?;
|
|
8
8
|
private readonly resolveSchema?;
|
|
9
9
|
private readonly observe?;
|
|
10
|
-
|
|
10
|
+
private readonly onDelete?;
|
|
11
|
+
constructor(transport: LaserTransport, name: string, govern?: GovernPublish | undefined, resolveSchema?: ResolveSchema | undefined, observe?: ObserveEffect | undefined, onDelete?: (() => void) | undefined);
|
|
11
12
|
topic(name: string): Topic;
|
|
12
13
|
ensure(): Promise<void>;
|
|
14
|
+
/** Deletes this stream with every topic and message in it. Resolves `false` when the stream did not exist. */
|
|
15
|
+
delete(): Promise<boolean>;
|
|
13
16
|
}
|
|
14
17
|
//# sourceMappingURL=stream.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/stream/stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE7E,qBAAa,MAAM;IAEf,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/stream/stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE7E,qBAAa,MAAM;IAEf,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAN5B,YACmB,SAAS,EAAE,cAAc,EACjC,IAAI,EAAE,MAAM,EACJ,MAAM,CAAC,EAAE,aAAa,YAAA,EACtB,aAAa,CAAC,EAAE,aAAa,YAAA,EAC7B,OAAO,CAAC,EAAE,aAAa,YAAA,EACvB,QAAQ,CAAC,GAAE,MAAM,IAAI,aAAA,EACpC;IAEJ,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAEzB;IAEK,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAQ5B;IAED,8GAA8G;IACxG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,CAW/B;CACF"}
|
package/dist/stream/stream.js
CHANGED
|
@@ -5,12 +5,14 @@ export class Stream {
|
|
|
5
5
|
govern;
|
|
6
6
|
resolveSchema;
|
|
7
7
|
observe;
|
|
8
|
-
|
|
8
|
+
onDelete;
|
|
9
|
+
constructor(transport, name, govern, resolveSchema, observe, onDelete) {
|
|
9
10
|
this.transport = transport;
|
|
10
11
|
this.name = name;
|
|
11
12
|
this.govern = govern;
|
|
12
13
|
this.resolveSchema = resolveSchema;
|
|
13
14
|
this.observe = observe;
|
|
15
|
+
this.onDelete = onDelete;
|
|
14
16
|
}
|
|
15
17
|
topic(name) {
|
|
16
18
|
return new Topic(this.transport, this.name, name, this.govern, this.resolveSchema, this.observe);
|
|
@@ -22,5 +24,13 @@ export class Stream {
|
|
|
22
24
|
}
|
|
23
25
|
await this.observe("laser.stream.ensure", { operation: "ensure", stream: this.name }, () => this.transport.ensureStream(this.name));
|
|
24
26
|
}
|
|
27
|
+
/** Deletes this stream with every topic and message in it. Resolves `false` when the stream did not exist. */
|
|
28
|
+
async delete() {
|
|
29
|
+
const deleted = this.observe === undefined
|
|
30
|
+
? await this.transport.deleteStream(this.name)
|
|
31
|
+
: await this.observe("laser.stream.delete", { operation: "delete", stream: this.name }, () => this.transport.deleteStream(this.name));
|
|
32
|
+
this.onDelete?.();
|
|
33
|
+
return deleted;
|
|
34
|
+
}
|
|
25
35
|
}
|
|
26
36
|
//# sourceMappingURL=stream.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream/stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGlC,MAAM,OAAO,MAAM;IAEE,SAAS;IACjB,IAAI;IACI,MAAM;IACN,aAAa;IACb,OAAO;
|
|
1
|
+
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream/stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGlC,MAAM,OAAO,MAAM;IAEE,SAAS;IACjB,IAAI;IACI,MAAM;IACN,aAAa;IACb,OAAO;IACP,QAAQ;IAN3B,YACmB,SAAyB,EACjC,IAAY,EACJ,MAAsB,EACtB,aAA6B,EAC7B,OAAuB,EACvB,QAAqB;yBALrB,SAAS;oBACjB,IAAI;sBACI,MAAM;6BACN,aAAa;uBACb,OAAO;wBACP,QAAQ;IACxB,CAAC;IAEJ,KAAK,CAAC,IAAY;QAChB,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IAClG,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC5C,OAAM;QACR,CAAC;QACD,MAAM,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CACzF,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CACvC,CAAA;IACH,CAAC;IAED,8GAA8G;IAC9G,KAAK,CAAC,MAAM;QACV,MAAM,OAAO,GACX,IAAI,CAAC,OAAO,KAAK,SAAS;YACxB,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9C,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAChB,qBAAqB,EACrB,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,EAC1C,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7C,CAAA;QACP,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAA;QACjB,OAAO,OAAO,CAAA;IAChB,CAAC;CACF"}
|
package/dist/stream/topic.d.ts
CHANGED
|
@@ -43,6 +43,11 @@ export declare class Topic {
|
|
|
43
43
|
consumer(name: string, partitionId: number, options?: ConsumerOptions): Consumer;
|
|
44
44
|
consumerGroup(name: string, options?: ConsumerOptions): Promise<Consumer>;
|
|
45
45
|
replay(options?: CursorOptions): Promise<Cursor>;
|
|
46
|
+
/** The partition count, or `undefined` when the topic does not exist yet. */
|
|
47
|
+
partitionCount(): Promise<number | undefined>;
|
|
48
|
+
/** The next offset each partition will write, `0n` for an empty partition.
|
|
49
|
+
* Empty when the topic does not exist yet. */
|
|
50
|
+
tailOffsets(): Promise<ReadonlyMap<number, bigint>>;
|
|
46
51
|
publish(): PublishRequest;
|
|
47
52
|
publishBatch(): BatchPublishRequest;
|
|
48
53
|
json<T>(codec: Codec<T>): TypedTopic<T>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"topic.d.ts","sourceRoot":"","sources":["../../src/stream/topic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"topic.d.ts","sourceRoot":"","sources":["../../src/stream/topic.ts"],"names":[],"mappings":"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"}
|