@boatkit-io/restream 0.7.4 → 0.7.6

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.
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const resub_1 = require("@boatkit-io/resub");
7
7
  const SocketHelper_js_1 = require("../websocket/SocketHelper.js");
8
8
  const BinaryReader_js_1 = __importDefault(require("../utils/BinaryReader.js"));
9
+ const SerializationTypes_js_1 = require("../utils/SerializationTypes.js");
9
10
  const SubscribableEvent_js_1 = __importDefault(require("../utils/SubscribableEvent.js"));
10
11
  const compoundKeyJoinerString = "%&";
11
12
  class TriggerStore extends resub_1.StoreBase {
@@ -56,20 +57,23 @@ class TriggerStore extends resub_1.StoreBase {
56
57
  }
57
58
  // Track when the app first starts caring and last stops caring about this store, for the streaming service
58
59
  _startedTrackingSub(key) {
59
- const wireKey = key ?? "";
60
+ const wireKey = this._canonicalSubscriptionKey(key);
60
61
  let keys = TriggerStore._storeSubs.get(this._storeName);
61
62
  if (!keys) {
62
63
  keys = new Set();
63
64
  TriggerStore._storeSubs.set(this._storeName, keys);
64
65
  }
65
66
  if (keys.has(wireKey)) {
66
- throw new Error('Started tracking already tracked sub: ' + this._storeName + "/" + wireKey);
67
+ return;
67
68
  }
68
69
  keys.add(wireKey);
69
- TriggerStore.eventSubscriptionStarted.fire(this._storeName, key);
70
+ TriggerStore.eventSubscriptionStarted.fire(this._storeName, wireKey === "" ? undefined : wireKey);
70
71
  }
71
72
  _stoppedTrackingSub(key) {
72
- const wireKey = key ?? "";
73
+ const wireKey = this._canonicalSubscriptionKey(key);
74
+ if (this._hasActiveSubscriptionForCanonicalKey(wireKey)) {
75
+ return;
76
+ }
73
77
  const keys = TriggerStore._storeSubs.get(this._storeName);
74
78
  if (!keys?.has(wireKey)) {
75
79
  throw new Error('Got _stoppedTrackingKey without _hasAnySubscriptions: ' + this._storeName + "/" + wireKey);
@@ -79,7 +83,7 @@ class TriggerStore extends resub_1.StoreBase {
79
83
  if (keys.size === 0) {
80
84
  TriggerStore._storeSubs.delete(this._storeName);
81
85
  }
82
- TriggerStore.eventSubscriptionStopped.fire(this._storeName, key);
86
+ TriggerStore.eventSubscriptionStopped.fire(this._storeName, wireKey === "" ? undefined : wireKey);
83
87
  }
84
88
  _processUpdateMessage(message) {
85
89
  switch (message.kind) {
@@ -108,18 +112,44 @@ class TriggerStore extends resub_1.StoreBase {
108
112
  this.trigger();
109
113
  return;
110
114
  }
111
- const fieldKey = (0, resub_1.formCompoundKey)(...field);
112
- const keysToTrigger = new Set([fieldKey]);
115
+ const fieldKey = this._canonicalFieldKey(field);
116
+ const keysToTrigger = new Set();
113
117
  for (const subscriptionKey of this._getSubscriptionKeys()) {
114
118
  if (subscriptionKey === resub_1.StoreBase.Key_All) {
115
119
  continue;
116
120
  }
117
- if (subscriptionKeyAffectsField(fieldKey, subscriptionKey)) {
121
+ if (subscriptionKeyAffectsField(fieldKey, this._canonicalSubscriptionKey(subscriptionKey))) {
118
122
  keysToTrigger.add(subscriptionKey);
119
123
  }
120
124
  }
125
+ if (keysToTrigger.size === 0) {
126
+ keysToTrigger.add(fieldKey);
127
+ }
121
128
  this.trigger([...keysToTrigger]);
122
129
  }
130
+ _canonicalSubscriptionKey(key) {
131
+ if (key === undefined || key === resub_1.StoreBase.Key_All) {
132
+ return "";
133
+ }
134
+ return this._canonicalFieldKey(key.split(compoundKeyJoinerString));
135
+ }
136
+ _canonicalFieldKey(field) {
137
+ return (0, resub_1.formCompoundKey)(...canonicalFieldPath(field, this._stateType._fieldInfo));
138
+ }
139
+ _hasActiveSubscriptionForCanonicalKey(wireKey) {
140
+ for (const subscriptionKey of this._getSubscriptionKeys()) {
141
+ if (subscriptionKey === resub_1.StoreBase.Key_All) {
142
+ if (wireKey === "") {
143
+ return true;
144
+ }
145
+ continue;
146
+ }
147
+ if (this._canonicalSubscriptionKey(subscriptionKey) === wireKey) {
148
+ return true;
149
+ }
150
+ }
151
+ return false;
152
+ }
123
153
  }
124
154
  exports.default = TriggerStore;
125
155
  function subscriptionKeyAffectsField(fieldKey, subscriptionKey) {
@@ -133,4 +163,67 @@ function subscriptionKeyAffectsField(fieldKey, subscriptionKey) {
133
163
  }
134
164
  return true;
135
165
  }
166
+ function canonicalFieldPath(field, rootFields) {
167
+ const ret = [];
168
+ let fields = rootFields;
169
+ let valueInfo;
170
+ for (let idx = 0; idx < field.length;) {
171
+ if (fields) {
172
+ const fieldInfo = fields.find(fi => fieldNameMatches(field[idx], fi.name));
173
+ if (!fieldInfo) {
174
+ ret.push(...field.slice(idx));
175
+ break;
176
+ }
177
+ ret.push(clientFieldName(fieldInfo.name));
178
+ valueInfo = fieldInfo.varInfo;
179
+ fields = undefined;
180
+ idx++;
181
+ continue;
182
+ }
183
+ const unwrapped = unwrapPointer(valueInfo);
184
+ if (unwrapped instanceof SerializationTypes_js_1.VarInfoMap) {
185
+ ret.push(field[idx]);
186
+ valueInfo = unwrapped.elemType;
187
+ fields = fieldsForValue(valueInfo);
188
+ idx++;
189
+ continue;
190
+ }
191
+ if (unwrapped instanceof SerializationTypes_js_1.VarInfoArray) {
192
+ ret.push(field[idx]);
193
+ valueInfo = unwrapped.elemType;
194
+ fields = fieldsForValue(valueInfo);
195
+ idx++;
196
+ continue;
197
+ }
198
+ fields = fieldsForValue(valueInfo);
199
+ if (fields) {
200
+ continue;
201
+ }
202
+ ret.push(...field.slice(idx));
203
+ break;
204
+ }
205
+ return ret;
206
+ }
207
+ function fieldNameMatches(part, fieldName) {
208
+ return typeof part === "string" && clientFieldName(part) === clientFieldName(fieldName);
209
+ }
210
+ function clientFieldName(name) {
211
+ if (name === "" || name.includes("_")) {
212
+ return name;
213
+ }
214
+ return name[0].toLowerCase() + name.slice(1);
215
+ }
216
+ function fieldsForValue(vi) {
217
+ const unwrapped = unwrapPointer(vi);
218
+ if (!(unwrapped instanceof SerializationTypes_js_1.VarInfoStruct)) {
219
+ return undefined;
220
+ }
221
+ return unwrapped.deserializer?._fieldInfo;
222
+ }
223
+ function unwrapPointer(vi) {
224
+ while (vi instanceof SerializationTypes_js_1.VarInfoPointer) {
225
+ vi = vi.subType;
226
+ }
227
+ return vi;
228
+ }
136
229
  //# sourceMappingURL=TriggerStore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerStore.js","sourceRoot":"","sources":["../../../src/stores/TriggerStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TriggerStore.js","sourceRoot":"","sources":["../../../src/stores/TriggerStore.ts"],"names":[],"mappings":"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"}
@@ -30,19 +30,44 @@ class BinaryReader {
30
30
  this._offset += length;
31
31
  return new Uint8Array(ret);
32
32
  }
33
+ readByteView(length) {
34
+ if (this._offset + length > this._length) {
35
+ throw new Error('Overflowing BinaryReader buffer');
36
+ }
37
+ const ret = this._uint8Buffer.subarray(this._offset, this._offset + length);
38
+ this._offset += length;
39
+ return ret;
40
+ }
33
41
  readString(numChars) {
34
42
  if (this._offset + numChars > this._length) {
35
43
  throw new Error('Overflowing BinaryReader buffer');
36
44
  }
37
- const ret = decoderUTF8.decode(this._buffer.slice(this._offset, this._offset + numChars));
45
+ const ret = decoderUTF8.decode(this._uint8Buffer.subarray(this._offset, this._offset + numChars));
38
46
  this._offset += numChars;
39
47
  return ret;
40
48
  }
49
+ readASCIIString(numChars) {
50
+ if (this._offset + numChars > this._length) {
51
+ throw new Error('Overflowing BinaryReader buffer');
52
+ }
53
+ let ret;
54
+ if (numChars < 16) {
55
+ ret = '';
56
+ for (let i = 0; i < numChars; i++) {
57
+ ret += String.fromCharCode(this._uint8Buffer[this._offset++]);
58
+ }
59
+ }
60
+ else {
61
+ ret = decoderUTF8.decode(this._uint8Buffer.subarray(this._offset, this._offset + numChars));
62
+ this._offset += numChars;
63
+ }
64
+ return ret;
65
+ }
41
66
  readWideStringToTerminator(terminator) {
42
67
  for (let i = this._offset; i < this._length; i += 2) {
43
68
  const char = this._uint8Buffer[i] | (this._uint8Buffer[i + 1] << 8);
44
69
  if (char === terminator) {
45
- const ret = decoderUTF16.decode(this._buffer.slice(this._offset, i));
70
+ const ret = decoderUTF16.decode(this._uint8Buffer.subarray(this._offset, i));
46
71
  // account for (skipping) the terminator as well as the slice we just pulled directly off above
47
72
  const byteCount = (i + 2) - this._offset;
48
73
  this._offset += byteCount;
@@ -54,7 +79,7 @@ class BinaryReader {
54
79
  readStringToTerminator(terminator) {
55
80
  for (let i = this._offset; i < this._length; i++) {
56
81
  if (this._uint8Buffer[i] === terminator) {
57
- const ret = decoderUTF8.decode(this._buffer.slice(this._offset, i));
82
+ const ret = decoderUTF8.decode(this._uint8Buffer.subarray(this._offset, i));
58
83
  // account for (skipping) the terminator as well as the slice we just pulled directly off above
59
84
  const byteCount = (i + 1) - this._offset;
60
85
  this._offset += byteCount;
@@ -1 +1 @@
1
- {"version":3,"file":"BinaryReader.js","sourceRoot":"","sources":["../../../src/utils/BinaryReader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BinaryReader.js","sourceRoot":"","sources":["../../../src/utils/BinaryReader.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,13 @@
1
1
  import { StoreBase } from '@boatkit-io/resub';
2
2
  import { StoreUpdateMessage } from '../websocket/SocketHelper.js';
3
3
  import BinaryReader from '../utils/BinaryReader.js';
4
- import { PartialFor } from '../utils/SerializationTypes.js';
4
+ import type { FieldInfo, PartialFor } from '../utils/SerializationTypes.js';
5
5
  import SubscribableEvent from '../utils/SubscribableEvent.js';
6
+ type GeneratedStateType<S extends object> = {
7
+ fromValues: () => S;
8
+ deserialized: (r: BinaryReader) => S;
9
+ _fieldInfo?: FieldInfo[];
10
+ };
6
11
  declare global {
7
12
  var __DEV__: boolean | undefined;
8
13
  }
@@ -23,10 +28,7 @@ export default abstract class TriggerStore<S extends object> extends StoreBase {
23
28
  key: string | undefined;
24
29
  }[];
25
30
  static getAllStores(): TriggerStore<object>[];
26
- constructor(_storeName: string, _stateType: {
27
- fromValues: () => S;
28
- deserialized: (r: BinaryReader) => S;
29
- }, _partialType: {
31
+ constructor(_storeName: string, _stateType: GeneratedStateType<S>, _partialType: {
30
32
  deserialized: (r: BinaryReader) => PartialFor<S>;
31
33
  });
32
34
  register(): void;
@@ -35,5 +37,9 @@ export default abstract class TriggerStore<S extends object> extends StoreBase {
35
37
  protected _stoppedTrackingSub(key?: string): void;
36
38
  private _processUpdateMessage;
37
39
  private _triggerFieldUpdate;
40
+ private _canonicalSubscriptionKey;
41
+ private _canonicalFieldKey;
42
+ private _hasActiveSubscriptionForCanonicalKey;
38
43
  }
44
+ export {};
39
45
  //# sourceMappingURL=TriggerStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerStore.d.ts","sourceRoot":"","sources":["../../../src/stores/TriggerStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAmB,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAA0B,kBAAkB,EAAqD,MAAM,8BAA8B,CAAC;AAC7I,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAI9D,OAAO,CAAC,MAAM,CAAC;IACX,IAAI,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC,SAAS,MAAM,CAAE,SAAQ,SAAS;IAgC9D,OAAO,CAAC,UAAU;IAAU,OAAO,CAAC,UAAU;IACtD,OAAO,CAAC,YAAY;IAhCxB,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;KAAE,CAAM;IAE/E,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAEpB,MAAM,CAAC,wBAAwB,gCAAqC,MAAM,QAAQ,MAAM,KAAK,IAAI,EAAI;IACrG,MAAM,CAAC,wBAAwB,gCAAqC,MAAM,QAAQ,MAAM,KAAK,IAAI,EAAI;IACrG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAkC;IAE3D,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,kBAAkB;IAStD,MAAM,CAAC,YAAY;mBACS,MAAM;aAAO,MAAM,GAAC,SAAS;;IASzD,MAAM,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE;gBAIzB,UAAU,EAAE,MAAM,EAAU,UAAU,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAAC,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,CAAC,CAAA;KAAE,EAC7G,YAAY,EAAE;QAAE,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,CAAA;KAAE;IAa9E,QAAQ,IAAI,IAAI;IAIhB,OAAO,IAAI,MAAM;cAKE,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM;cAehC,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM;IAenD,OAAO,CAAC,qBAAqB;IAuB7B,OAAO,CAAC,mBAAmB;CAkB9B"}
1
+ {"version":3,"file":"TriggerStore.d.ts","sourceRoot":"","sources":["../../../src/stores/TriggerStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAmB,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAA0B,kBAAkB,EAAqD,MAAM,8BAA8B,CAAC;AAC7I,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,KAAK,EACR,SAAS,EACT,UAAU,EAEb,MAAM,gCAAgC,CAAC;AAOxC,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAI9D,KAAK,kBAAkB,CAAC,CAAC,SAAS,MAAM,IAAI;IACxC,UAAU,EAAE,MAAM,CAAC,CAAC;IACpB,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;CAC5B,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACX,IAAI,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC,SAAS,MAAM,CAAE,SAAQ,SAAS;IAgC9D,OAAO,CAAC,UAAU;IAAU,OAAO,CAAC,UAAU;IACtD,OAAO,CAAC,YAAY;IAhCxB,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;KAAE,CAAM;IAE/E,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAEpB,MAAM,CAAC,wBAAwB,gCAAqC,MAAM,QAAQ,MAAM,KAAK,IAAI,EAAI;IACrG,MAAM,CAAC,wBAAwB,gCAAqC,MAAM,QAAQ,MAAM,KAAK,IAAI,EAAI;IACrG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAkC;IAE3D,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,kBAAkB;IAStD,MAAM,CAAC,YAAY;mBACS,MAAM;aAAO,MAAM,GAAC,SAAS;;IASzD,MAAM,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE;gBAIzB,UAAU,EAAE,MAAM,EAAU,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC,EACrE,YAAY,EAAE;QAAE,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,CAAA;KAAE;IAa9E,QAAQ,IAAI,IAAI;IAIhB,OAAO,IAAI,MAAM;cAKE,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM;cAehC,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM;IAmBnD,OAAO,CAAC,qBAAqB;IAuB7B,OAAO,CAAC,mBAAmB;IAsB3B,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,qCAAqC;CAchD"}
@@ -1,6 +1,7 @@
1
1
  import { StoreBase, formCompoundKey } from '@boatkit-io/resub';
2
2
  import { StoreUpdateMessageKind } from '../websocket/SocketHelper.js';
3
3
  import BinaryReader from '../utils/BinaryReader.js';
4
+ import { VarInfoArray, VarInfoMap, VarInfoPointer, VarInfoStruct, } from '../utils/SerializationTypes.js';
4
5
  import SubscribableEvent from '../utils/SubscribableEvent.js';
5
6
  const compoundKeyJoinerString = "%&";
6
7
  export default class TriggerStore extends StoreBase {
@@ -51,20 +52,23 @@ export default class TriggerStore extends StoreBase {
51
52
  }
52
53
  // Track when the app first starts caring and last stops caring about this store, for the streaming service
53
54
  _startedTrackingSub(key) {
54
- const wireKey = key ?? "";
55
+ const wireKey = this._canonicalSubscriptionKey(key);
55
56
  let keys = TriggerStore._storeSubs.get(this._storeName);
56
57
  if (!keys) {
57
58
  keys = new Set();
58
59
  TriggerStore._storeSubs.set(this._storeName, keys);
59
60
  }
60
61
  if (keys.has(wireKey)) {
61
- throw new Error('Started tracking already tracked sub: ' + this._storeName + "/" + wireKey);
62
+ return;
62
63
  }
63
64
  keys.add(wireKey);
64
- TriggerStore.eventSubscriptionStarted.fire(this._storeName, key);
65
+ TriggerStore.eventSubscriptionStarted.fire(this._storeName, wireKey === "" ? undefined : wireKey);
65
66
  }
66
67
  _stoppedTrackingSub(key) {
67
- const wireKey = key ?? "";
68
+ const wireKey = this._canonicalSubscriptionKey(key);
69
+ if (this._hasActiveSubscriptionForCanonicalKey(wireKey)) {
70
+ return;
71
+ }
68
72
  const keys = TriggerStore._storeSubs.get(this._storeName);
69
73
  if (!keys?.has(wireKey)) {
70
74
  throw new Error('Got _stoppedTrackingKey without _hasAnySubscriptions: ' + this._storeName + "/" + wireKey);
@@ -74,7 +78,7 @@ export default class TriggerStore extends StoreBase {
74
78
  if (keys.size === 0) {
75
79
  TriggerStore._storeSubs.delete(this._storeName);
76
80
  }
77
- TriggerStore.eventSubscriptionStopped.fire(this._storeName, key);
81
+ TriggerStore.eventSubscriptionStopped.fire(this._storeName, wireKey === "" ? undefined : wireKey);
78
82
  }
79
83
  _processUpdateMessage(message) {
80
84
  switch (message.kind) {
@@ -103,18 +107,44 @@ export default class TriggerStore extends StoreBase {
103
107
  this.trigger();
104
108
  return;
105
109
  }
106
- const fieldKey = formCompoundKey(...field);
107
- const keysToTrigger = new Set([fieldKey]);
110
+ const fieldKey = this._canonicalFieldKey(field);
111
+ const keysToTrigger = new Set();
108
112
  for (const subscriptionKey of this._getSubscriptionKeys()) {
109
113
  if (subscriptionKey === StoreBase.Key_All) {
110
114
  continue;
111
115
  }
112
- if (subscriptionKeyAffectsField(fieldKey, subscriptionKey)) {
116
+ if (subscriptionKeyAffectsField(fieldKey, this._canonicalSubscriptionKey(subscriptionKey))) {
113
117
  keysToTrigger.add(subscriptionKey);
114
118
  }
115
119
  }
120
+ if (keysToTrigger.size === 0) {
121
+ keysToTrigger.add(fieldKey);
122
+ }
116
123
  this.trigger([...keysToTrigger]);
117
124
  }
125
+ _canonicalSubscriptionKey(key) {
126
+ if (key === undefined || key === StoreBase.Key_All) {
127
+ return "";
128
+ }
129
+ return this._canonicalFieldKey(key.split(compoundKeyJoinerString));
130
+ }
131
+ _canonicalFieldKey(field) {
132
+ return formCompoundKey(...canonicalFieldPath(field, this._stateType._fieldInfo));
133
+ }
134
+ _hasActiveSubscriptionForCanonicalKey(wireKey) {
135
+ for (const subscriptionKey of this._getSubscriptionKeys()) {
136
+ if (subscriptionKey === StoreBase.Key_All) {
137
+ if (wireKey === "") {
138
+ return true;
139
+ }
140
+ continue;
141
+ }
142
+ if (this._canonicalSubscriptionKey(subscriptionKey) === wireKey) {
143
+ return true;
144
+ }
145
+ }
146
+ return false;
147
+ }
118
148
  }
119
149
  function subscriptionKeyAffectsField(fieldKey, subscriptionKey) {
120
150
  const fieldParts = fieldKey.split(compoundKeyJoinerString);
@@ -127,4 +157,67 @@ function subscriptionKeyAffectsField(fieldKey, subscriptionKey) {
127
157
  }
128
158
  return true;
129
159
  }
160
+ function canonicalFieldPath(field, rootFields) {
161
+ const ret = [];
162
+ let fields = rootFields;
163
+ let valueInfo;
164
+ for (let idx = 0; idx < field.length;) {
165
+ if (fields) {
166
+ const fieldInfo = fields.find(fi => fieldNameMatches(field[idx], fi.name));
167
+ if (!fieldInfo) {
168
+ ret.push(...field.slice(idx));
169
+ break;
170
+ }
171
+ ret.push(clientFieldName(fieldInfo.name));
172
+ valueInfo = fieldInfo.varInfo;
173
+ fields = undefined;
174
+ idx++;
175
+ continue;
176
+ }
177
+ const unwrapped = unwrapPointer(valueInfo);
178
+ if (unwrapped instanceof VarInfoMap) {
179
+ ret.push(field[idx]);
180
+ valueInfo = unwrapped.elemType;
181
+ fields = fieldsForValue(valueInfo);
182
+ idx++;
183
+ continue;
184
+ }
185
+ if (unwrapped instanceof VarInfoArray) {
186
+ ret.push(field[idx]);
187
+ valueInfo = unwrapped.elemType;
188
+ fields = fieldsForValue(valueInfo);
189
+ idx++;
190
+ continue;
191
+ }
192
+ fields = fieldsForValue(valueInfo);
193
+ if (fields) {
194
+ continue;
195
+ }
196
+ ret.push(...field.slice(idx));
197
+ break;
198
+ }
199
+ return ret;
200
+ }
201
+ function fieldNameMatches(part, fieldName) {
202
+ return typeof part === "string" && clientFieldName(part) === clientFieldName(fieldName);
203
+ }
204
+ function clientFieldName(name) {
205
+ if (name === "" || name.includes("_")) {
206
+ return name;
207
+ }
208
+ return name[0].toLowerCase() + name.slice(1);
209
+ }
210
+ function fieldsForValue(vi) {
211
+ const unwrapped = unwrapPointer(vi);
212
+ if (!(unwrapped instanceof VarInfoStruct)) {
213
+ return undefined;
214
+ }
215
+ return unwrapped.deserializer?._fieldInfo;
216
+ }
217
+ function unwrapPointer(vi) {
218
+ while (vi instanceof VarInfoPointer) {
219
+ vi = vi.subType;
220
+ }
221
+ return vi;
222
+ }
130
223
  //# sourceMappingURL=TriggerStore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerStore.js","sourceRoot":"","sources":["../../../src/stores/TriggerStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TriggerStore.js","sourceRoot":"","sources":["../../../src/stores/TriggerStore.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,9 @@ export default class BinaryReader {
6
6
  private _uint8Buffer;
7
7
  constructor(_buffer: ArrayBufferLike, _offset?: number, _length?: number);
8
8
  readBytes(length: number): Uint8Array;
9
+ readByteView(length: number): Uint8Array;
9
10
  readString(numChars: number): string;
11
+ readASCIIString(numChars: number): string;
10
12
  readWideStringToTerminator(terminator: number): [string, number];
11
13
  readStringToTerminator(terminator: number): [string, number];
12
14
  readNumericString(numChars: number): number;
@@ -1 +1 @@
1
- {"version":3,"file":"BinaryReader.d.ts","sourceRoot":"","sources":["../../../src/utils/BinaryReader.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,OAAO,YAAY;IAGjB,OAAO,CAAC,OAAO;IACvB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO;IAJnB,OAAO,CAAC,WAAW,CAAY;IAC/B,OAAO,CAAC,YAAY,CAAa;gBACb,OAAO,EAAE,eAAe,EAChC,OAAO,SAAI,EACX,OAAO,SAAqB;IAWxC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IASrC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAUpC,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAchE,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAa5D,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAiB3C,QAAQ,IAAI,MAAM;IAQlB,QAAQ,IAAI,MAAM;IAQlB,QAAQ,IAAI,MAAM;IAOlB,SAAS,IAAI,MAAM;IAInB,SAAS,IAAI,MAAM;IASnB,UAAU,IAAI,MAAM;IASpB,SAAS,IAAI,MAAM;IAUnB,UAAU,IAAI,MAAM;IAUpB,WAAW,IAAI,MAAM;IASrB,WAAW,IAAI,MAAM;IASrB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY;IASlC,SAAS,CAAC,KAAK,EAAE,MAAM;IAOvB,KAAK,IAAI,OAAO;CAGnB"}
1
+ {"version":3,"file":"BinaryReader.d.ts","sourceRoot":"","sources":["../../../src/utils/BinaryReader.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,OAAO,YAAY;IAGjB,OAAO,CAAC,OAAO;IACvB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO;IAJnB,OAAO,CAAC,WAAW,CAAY;IAC/B,OAAO,CAAC,YAAY,CAAa;gBACb,OAAO,EAAE,eAAe,EAChC,OAAO,SAAI,EACX,OAAO,SAAqB;IAWxC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IASrC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IASxC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAUpC,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAkBzC,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAchE,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAa5D,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAiB3C,QAAQ,IAAI,MAAM;IAQlB,QAAQ,IAAI,MAAM;IAQlB,QAAQ,IAAI,MAAM;IAOlB,SAAS,IAAI,MAAM;IAInB,SAAS,IAAI,MAAM;IASnB,UAAU,IAAI,MAAM;IASpB,SAAS,IAAI,MAAM;IAUnB,UAAU,IAAI,MAAM;IAUpB,WAAW,IAAI,MAAM;IASrB,WAAW,IAAI,MAAM;IASrB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY;IASlC,SAAS,CAAC,KAAK,EAAE,MAAM;IAOvB,KAAK,IAAI,OAAO;CAGnB"}
@@ -28,19 +28,44 @@ export default class BinaryReader {
28
28
  this._offset += length;
29
29
  return new Uint8Array(ret);
30
30
  }
31
+ readByteView(length) {
32
+ if (this._offset + length > this._length) {
33
+ throw new Error('Overflowing BinaryReader buffer');
34
+ }
35
+ const ret = this._uint8Buffer.subarray(this._offset, this._offset + length);
36
+ this._offset += length;
37
+ return ret;
38
+ }
31
39
  readString(numChars) {
32
40
  if (this._offset + numChars > this._length) {
33
41
  throw new Error('Overflowing BinaryReader buffer');
34
42
  }
35
- const ret = decoderUTF8.decode(this._buffer.slice(this._offset, this._offset + numChars));
43
+ const ret = decoderUTF8.decode(this._uint8Buffer.subarray(this._offset, this._offset + numChars));
36
44
  this._offset += numChars;
37
45
  return ret;
38
46
  }
47
+ readASCIIString(numChars) {
48
+ if (this._offset + numChars > this._length) {
49
+ throw new Error('Overflowing BinaryReader buffer');
50
+ }
51
+ let ret;
52
+ if (numChars < 16) {
53
+ ret = '';
54
+ for (let i = 0; i < numChars; i++) {
55
+ ret += String.fromCharCode(this._uint8Buffer[this._offset++]);
56
+ }
57
+ }
58
+ else {
59
+ ret = decoderUTF8.decode(this._uint8Buffer.subarray(this._offset, this._offset + numChars));
60
+ this._offset += numChars;
61
+ }
62
+ return ret;
63
+ }
39
64
  readWideStringToTerminator(terminator) {
40
65
  for (let i = this._offset; i < this._length; i += 2) {
41
66
  const char = this._uint8Buffer[i] | (this._uint8Buffer[i + 1] << 8);
42
67
  if (char === terminator) {
43
- const ret = decoderUTF16.decode(this._buffer.slice(this._offset, i));
68
+ const ret = decoderUTF16.decode(this._uint8Buffer.subarray(this._offset, i));
44
69
  // account for (skipping) the terminator as well as the slice we just pulled directly off above
45
70
  const byteCount = (i + 2) - this._offset;
46
71
  this._offset += byteCount;
@@ -52,7 +77,7 @@ export default class BinaryReader {
52
77
  readStringToTerminator(terminator) {
53
78
  for (let i = this._offset; i < this._length; i++) {
54
79
  if (this._uint8Buffer[i] === terminator) {
55
- const ret = decoderUTF8.decode(this._buffer.slice(this._offset, i));
80
+ const ret = decoderUTF8.decode(this._uint8Buffer.subarray(this._offset, i));
56
81
  // account for (skipping) the terminator as well as the slice we just pulled directly off above
57
82
  const byteCount = (i + 1) - this._offset;
58
83
  this._offset += byteCount;
@@ -1 +1 @@
1
- {"version":3,"file":"BinaryReader.js","sourceRoot":"","sources":["../../../src/utils/BinaryReader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BinaryReader.js","sourceRoot":"","sources":["../../../src/utils/BinaryReader.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@boatkit-io/restream",
3
- "version": "0.7.4",
3
+ "version": "0.7.6",
4
4
  "description": "TypeScript helpers for ReStream clients.",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@11.1.2",
@@ -53,7 +53,7 @@
53
53
  "vitest": "^4.1.6"
54
54
  },
55
55
  "dependencies": {
56
- "@boatkit-io/resub": "^2.4.1",
56
+ "@boatkit-io/resub": "^2.4.2",
57
57
  "socket.io-client": "^4.8.3"
58
58
  }
59
59
  }