@spine-event-engine/core 2.0.0-snapshot.15 → 2.0.0-snapshot.18

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.
@@ -11,16 +11,20 @@
11
11
  * or implied. See the License for the specific language governing permissions and limitations under
12
12
  * the License.
13
13
  */
14
- import { clone, create, getOption, hasOption, ScalarType, toBinary, } from "@bufbuild/protobuf";
14
+ import { clone, create, fromBinary, getOption, hasOption, ScalarType, toBinary, } from "@bufbuild/protobuf";
15
15
  import { BoolValueSchema, AnySchema, BytesValueSchema, DoubleValueSchema, FloatValueSchema, Int32ValueSchema, Int64ValueSchema, StringValueSchema, UInt32ValueSchema, UInt64ValueSchema, } from "@bufbuild/protobuf/wkt";
16
16
  import { ActorContextSchema, VersionSchema, type_url_prefix, } from "@spine-event-engine/proto";
17
17
  import { CompositeFilterSchema, CompositeFilter_CompositeOperator, FilterSchema, Filter_Operator, IdFilterSchema, OrderBySchema, OrderBy_Direction, QueryIdSchema, QuerySchema, ResponseFormatSchema, TargetFiltersSchema, TargetSchema, } from "@spine-event-engine/proto/client";
18
18
  import { EntityColumn, } from "../entity/entity-column.js";
19
+ import { EntityFieldClassification } from "./entity-field-classification.js";
19
20
  const maximumPredicateDepth = 64;
20
21
  const maximumPredicateNodes = 10_000;
21
- const maximumEntityQueryIds = 1_000;
22
+ const queryHost = globalThis;
22
23
  /**
23
24
  * Builds a typed Entity query for the frozen Spine wire contract.
25
+ *
26
+ * @typeParam Schema Generated Entity state schema selected by the query.
27
+ * @typeParam Columns Registered columns for that state schema.
24
28
  */
25
29
  export class EntityQueryBuilder {
26
30
  #schema;
@@ -28,7 +32,6 @@ export class EntityQueryBuilder {
28
32
  #columns;
29
33
  #ids = [];
30
34
  #predicates = [];
31
- #mask = [];
32
35
  #order = [];
33
36
  #limit;
34
37
  /**
@@ -51,15 +54,13 @@ export class EntityQueryBuilder {
51
54
  if (ids.length === 0 || ids.some((id) => id === undefined)) {
52
55
  throw new TypeError("Entity query ID filter must not be empty.");
53
56
  }
54
- if (this.#ids.length + ids.length > maximumEntityQueryIds) {
55
- throw new TypeError(`Entity query ID filter may contain at most ${String(maximumEntityQueryIds)} identifiers.`);
56
- }
57
57
  this.#ids.push(...ids);
58
58
  return this;
59
59
  }
60
60
  /**
61
61
  * Adds a typed predicate. Repeated calls are combined with `ALL`.
62
62
  *
63
+ * @typeParam Predicate Predicate type checked against the registered columns.
63
64
  * @param predicate Predicate owned by this builder's registered columns.
64
65
  * @returns This builder.
65
66
  */
@@ -70,25 +71,10 @@ export class EntityQueryBuilder {
70
71
  this.#predicates.push(predicate);
71
72
  return this;
72
73
  }
73
- /**
74
- * Adds top-level state fields returned by the server.
75
- *
76
- * @param paths Generated property names of state fields.
77
- * @returns This builder.
78
- */
79
- mask(...paths) {
80
- for (const path of paths) {
81
- const field = EntityQueryWire.findField(this.#schema, path);
82
- if (field === undefined) {
83
- throw new TypeError(`Entity query mask path "${path}" is not a state field.`);
84
- }
85
- this.#mask.push(field.name);
86
- }
87
- return this;
88
- }
89
74
  /**
90
75
  * Adds one ordering clause in caller order.
91
76
  *
77
+ * @typeParam Column Registered ordered column type.
92
78
  * @param column Ordered column owned by this builder's Entity schema.
93
79
  * @param direction Sort direction, ascending by default.
94
80
  * @returns This builder.
@@ -157,9 +143,6 @@ export class EntityQueryBuilder {
157
143
  : Object.freeze({ kind: "all", predicates: Object.freeze(all) });
158
144
  return Object.freeze({
159
145
  ...(predicate === undefined ? {} : { predicate }),
160
- ...(this.#mask.length === 0
161
- ? {}
162
- : { mask: Object.freeze({ paths: Object.freeze([...this.#mask]) }) }),
163
146
  ...(this.#order.length === 0
164
147
  ? {}
165
148
  : {
@@ -187,12 +170,14 @@ export class EntityQueryBuilder {
187
170
  filter: [...predicates],
188
171
  });
189
172
  }
173
+ /**
174
+ * Builds wire ordering and limit settings when the query uses them.
175
+ */
190
176
  #format() {
191
- if (this.#mask.length === 0 && this.#order.length === 0 && this.#limit === undefined) {
177
+ if (this.#order.length === 0 && this.#limit === undefined) {
192
178
  return undefined;
193
179
  }
194
180
  return create(ResponseFormatSchema, {
195
- ...(this.#mask.length === 0 ? {} : { fieldMask: { paths: [...this.#mask] } }),
196
181
  orderBy: this.#order.map(({ column, direction }) => create(OrderBySchema, {
197
182
  column: column.name,
198
183
  direction: direction === "desc" ? OrderBy_Direction.DESCENDING : OrderBy_Direction.ASCENDING,
@@ -201,39 +186,257 @@ export class EntityQueryBuilder {
201
186
  });
202
187
  }
203
188
  }
189
+ /**
190
+ * Context-free Entity query that can be executed by different actor and tenant scopes.
191
+ *
192
+ * @typeParam Schema Generated state schema selected by this query.
193
+ * @typeParam Id Identifier type declared by the state's first field.
194
+ */
195
+ export class EntityQueryDescription {
196
+ #wire;
197
+ #plan;
198
+ #schema;
199
+ /**
200
+ * Captures the compiled wire query and storage plan without execution context.
201
+ *
202
+ * @param schema Generated state schema selected by the query.
203
+ * @param wire Compiled wire query without actor context or request ID.
204
+ * @param plan Compiled storage-neutral query plan.
205
+ */
206
+ constructor(schema, wire, plan) {
207
+ this.#schema = schema;
208
+ this.#wire = toBinary(QuerySchema, wire);
209
+ this.#plan = queryHost.structuredClone(plan);
210
+ Object.freeze(this);
211
+ }
212
+ /**
213
+ * Returns the generated state schema selected by this query.
214
+ *
215
+ * @returns Generated state schema.
216
+ */
217
+ get schema() {
218
+ return this.#schema;
219
+ }
220
+ /**
221
+ * Creates a fresh wire query without an actor or tenant context.
222
+ *
223
+ * @returns Wire query with a new request ID.
224
+ */
225
+ build() {
226
+ const wire = fromBinary(QuerySchema, this.#wire);
227
+ wire.id = create(QueryIdSchema, { value: EntityQueryWire.nextId() });
228
+ return wire;
229
+ }
230
+ /**
231
+ * Returns a detached storage-neutral plan for local execution.
232
+ *
233
+ * @returns Independent copy of the compiled plan.
234
+ */
235
+ buildPlan() {
236
+ return queryHost.structuredClone(this.#plan);
237
+ }
238
+ }
239
+ /**
240
+ * Builds an Entity query without selecting an actor or tenant.
241
+ *
242
+ * @typeParam Schema Generated Entity state schema.
243
+ * @typeParam Columns Registered columns for that schema.
244
+ * @typeParam Name Local name of the canonical first identifier field.
245
+ */
246
+ export class EntityQueryDraft {
247
+ #schema;
248
+ #builder;
249
+ /**
250
+ * Creates a context-free draft for one registered Entity state.
251
+ *
252
+ * @param input State schema, columns, and canonical identifier field name.
253
+ */
254
+ constructor(input) {
255
+ if (input.schema.fields[0]?.localName !== input.idField) {
256
+ throw new TypeError("Entity query ID field must be the state's first declared field.");
257
+ }
258
+ this.#schema = input.schema;
259
+ this.#builder = new EntityQueryBuilder({
260
+ schema: input.schema,
261
+ columns: input.columns,
262
+ context: create(ActorContextSchema),
263
+ });
264
+ }
265
+ /**
266
+ * Adds typed identifiers to the query target.
267
+ *
268
+ * @param ids Identifier values declared by the first state field.
269
+ * @returns This draft.
270
+ */
271
+ byId(...ids) {
272
+ this.#builder.byId(...ids);
273
+ return this;
274
+ }
275
+ /**
276
+ * Adds a typed comparison or group predicate.
277
+ *
278
+ * @typeParam Predicate Predicate checked against the registered columns.
279
+ * @param predicate Predicate to append with conjunction.
280
+ * @returns This draft.
281
+ */
282
+ where(predicate) {
283
+ this.#builder.where(predicate);
284
+ return this;
285
+ }
286
+ /**
287
+ * Adds ordering by a registered ordered column.
288
+ *
289
+ * @typeParam Column Registered ordered column type.
290
+ * @param column Ordered column.
291
+ * @param direction Ascending or descending direction.
292
+ * @returns This draft.
293
+ */
294
+ orderBy(column, direction = "asc") {
295
+ this.#builder.orderBy(column, direction);
296
+ return this;
297
+ }
298
+ /**
299
+ * Sets a positive result limit that requires ordering.
300
+ *
301
+ * @param value Maximum number of matching states.
302
+ * @returns This draft.
303
+ */
304
+ limit(value) {
305
+ this.#builder.limit(value);
306
+ return this;
307
+ }
308
+ /**
309
+ * Builds an independent query description for later execution.
310
+ *
311
+ * @returns Context-free query value with detached wire and plan copies.
312
+ */
313
+ build() {
314
+ const wire = this.#builder.build();
315
+ wire.context = undefined;
316
+ wire.id = undefined;
317
+ return new EntityQueryDescription(this.#schema, wire, this.#builder.buildPlan());
318
+ }
319
+ }
204
320
  /**
205
321
  * Creates typed predicates and builders for Entity queries.
206
322
  */
207
323
  export const EntityQuery = Object.freeze({
324
+ /**
325
+ * Creates a validated equality comparison for a registered column.
326
+ *
327
+ * @typeParam Column Column type used by the comparison.
328
+ * @param column Column to compare.
329
+ * @param value Value to match.
330
+ * @returns Immutable equality predicate.
331
+ */
208
332
  eq(column, value) {
209
333
  return EntityQueryCompiler.comparison(column, "equal", value);
210
334
  },
335
+ /**
336
+ * Creates a validated exclusive lower-bound comparison.
337
+ *
338
+ * @typeParam Column Ordered column type used by the comparison.
339
+ * @param column Ordered column to compare.
340
+ * @param value Exclusive lower bound.
341
+ * @returns Immutable greater-than predicate.
342
+ */
211
343
  gt(column, value) {
212
344
  return EntityQueryCompiler.comparison(column, "greaterThan", value);
213
345
  },
346
+ /**
347
+ * Creates a validated exclusive upper-bound comparison.
348
+ *
349
+ * @typeParam Column Ordered column type used by the comparison.
350
+ * @param column Ordered column to compare.
351
+ * @param value Exclusive upper bound.
352
+ * @returns Immutable less-than predicate.
353
+ */
214
354
  lt(column, value) {
215
355
  return EntityQueryCompiler.comparison(column, "lessThan", value);
216
356
  },
357
+ /**
358
+ * Creates a validated inclusive lower-bound comparison.
359
+ *
360
+ * @typeParam Column Ordered column type used by the comparison.
361
+ * @param column Ordered column to compare.
362
+ * @param value Inclusive lower bound.
363
+ * @returns Immutable greater-or-equal predicate.
364
+ */
217
365
  ge(column, value) {
218
366
  return EntityQueryCompiler.comparison(column, "greaterOrEqual", value);
219
367
  },
368
+ /**
369
+ * Creates a validated inclusive upper-bound comparison.
370
+ *
371
+ * @typeParam Column Ordered column type used by the comparison.
372
+ * @param column Ordered column to compare.
373
+ * @param value Inclusive upper bound.
374
+ * @returns Immutable less-or-equal predicate.
375
+ */
220
376
  le(column, value) {
221
377
  return EntityQueryCompiler.comparison(column, "lessOrEqual", value);
222
378
  },
379
+ /**
380
+ * Combines a required predicate and the remaining predicates with conjunction.
381
+ *
382
+ * @typeParam First Type of the required first predicate.
383
+ * @typeParam Rest Tuple of additional predicate types.
384
+ * @param first Required first predicate.
385
+ * @param rest Additional predicates in caller order.
386
+ * @returns Immutable conjunction group.
387
+ */
223
388
  all(first, ...rest) {
224
389
  return EntityQueryCompiler.group("all", first, rest);
225
390
  },
391
+ /**
392
+ * Combines a required predicate and the remaining predicates with disjunction.
393
+ *
394
+ * @typeParam First Type of the required first predicate.
395
+ * @typeParam Rest Tuple of additional predicate types.
396
+ * @param first Required first predicate.
397
+ * @param rest Additional predicates in caller order.
398
+ * @returns Immutable disjunction group.
399
+ */
226
400
  either(first, ...rest) {
227
401
  return EntityQueryCompiler.group("either", first, rest);
228
402
  },
403
+ /**
404
+ * Creates a query builder bound to a state schema, its columns, and actor context.
405
+ *
406
+ * @typeParam Schema Generated Entity state schema.
407
+ * @typeParam Columns Registered columns for that schema.
408
+ * @param input Schema, columns, and actor context for the query.
409
+ * @returns A mutable typed query builder.
410
+ */
229
411
  select(input) {
230
412
  return new EntityQueryBuilder(input);
231
413
  },
414
+ /**
415
+ * Creates a context-free draft bound to the state's first identifier field.
416
+ *
417
+ * @typeParam Schema Generated Entity state schema.
418
+ * @typeParam Columns Registered columns for that schema.
419
+ * @typeParam Name Local name of the state's first identifier field.
420
+ * @param input State schema, columns, and canonical identifier field name.
421
+ * @returns New context-free query draft.
422
+ */
423
+ describe(input) {
424
+ return new EntityQueryDraft(input);
425
+ },
232
426
  });
233
427
  /**
234
428
  * Internal compiler for predicates, descriptors, and wire query messages.
235
429
  */
236
430
  const EntityQueryCompiler = Object.freeze({
431
+ /**
432
+ * Validates predicate graphs and compiles them to storage-neutral plan nodes.
433
+ *
434
+ * @typeParam Schema Generated Entity state schema.
435
+ * @param roots Top-level predicates in query order.
436
+ * @param schema State schema selected by the query.
437
+ * @param columns Registered columns allowed in comparisons.
438
+ * @returns Validated immutable plan predicates.
439
+ */
237
440
  compilePlanGroups(roots, schema, columns) {
238
441
  // Reuse the iterative wire traversal as the single validation boundary. The
239
442
  // storage plan has the same predicate graph but must not recurse before
@@ -241,6 +444,15 @@ const EntityQueryCompiler = Object.freeze({
241
444
  EntityQueryCompiler.compileGroups(roots, schema, columns);
242
445
  return roots.map((predicate) => EntityQueryCompiler.compilePlanPredicate(predicate, schema, columns));
243
446
  },
447
+ /**
448
+ * Converts a validated predicate tree to a storage-neutral plan node.
449
+ *
450
+ * @typeParam Schema Generated Entity state schema.
451
+ * @param value Predicate tree to convert.
452
+ * @param schema State schema selected by the query.
453
+ * @param columns Registered columns allowed in comparisons.
454
+ * @returns Immutable comparison or logical group plan.
455
+ */
244
456
  compilePlanPredicate(value, schema, columns) {
245
457
  const predicate = EntityQueryWire.requirePredicate(value);
246
458
  if (predicate.kind === "comparison") {
@@ -261,6 +473,15 @@ const EntityQueryCompiler = Object.freeze({
261
473
  predicates: Object.freeze(predicate.predicates.map((child) => EntityQueryCompiler.compilePlanPredicate(child, schema, columns))),
262
474
  });
263
475
  },
476
+ /**
477
+ * Validates a comparison operator and value before freezing its predicate.
478
+ *
479
+ * @typeParam Column Column type used by the comparison.
480
+ * @param column Column that supports the selected operator.
481
+ * @param operator Comparison supported by the column.
482
+ * @param value Typed comparison value.
483
+ * @returns Immutable comparison predicate.
484
+ */
264
485
  comparison(column, operator, value) {
265
486
  if (!column.operators.includes(operator)) {
266
487
  throw new TypeError(`Entity column "${column.name}" does not support ${operator}.`);
@@ -268,12 +489,31 @@ const EntityQueryCompiler = Object.freeze({
268
489
  EntityQueryWire.requireValue(column, value);
269
490
  return Object.freeze({ kind: "comparison", column, operator, value });
270
491
  },
492
+ /**
493
+ * Builds an immutable conjunction or disjunction in caller order.
494
+ *
495
+ * @typeParam First Type of the required first predicate.
496
+ * @typeParam Rest Tuple of additional predicate types.
497
+ * @param kind Logical operation for the group.
498
+ * @param first Required first predicate.
499
+ * @param rest Additional predicates.
500
+ * @returns Immutable typed predicate group.
501
+ */
271
502
  group(kind, first, rest) {
272
503
  return Object.freeze({
273
504
  kind,
274
505
  predicates: Object.freeze([first, ...rest]),
275
506
  });
276
507
  },
508
+ /**
509
+ * Validates a predicate graph and encodes it as wire composite filters.
510
+ *
511
+ * @typeParam Schema Generated Entity state schema.
512
+ * @param roots Top-level predicates in query order.
513
+ * @param schema State schema selected by the query.
514
+ * @param columns Registered columns allowed in comparisons.
515
+ * @returns Composite filters for the wire query.
516
+ */
277
517
  compileGroups(roots, schema, columns) {
278
518
  const compiled = new WeakMap();
279
519
  const seen = new WeakSet();
@@ -365,6 +605,12 @@ const EntityQueryCompiler = Object.freeze({
365
605
  * Validates and compiles Entity query details.
366
606
  */
367
607
  const EntityQueryWire = Object.freeze({
608
+ /**
609
+ * Checks the shape and kind of a predicate supplied at runtime.
610
+ *
611
+ * @param value Value to validate as a predicate.
612
+ * @returns Validated comparison or group predicate.
613
+ */
368
614
  requirePredicate(value) {
369
615
  if (typeof value !== "object" || value === null || Array.isArray(value)) {
370
616
  throw new TypeError("Entity query predicate must be an object.");
@@ -384,6 +630,12 @@ const EntityQueryWire = Object.freeze({
384
630
  }
385
631
  return predicate;
386
632
  },
633
+ /**
634
+ * Encodes a leaf comparison as a wire filter.
635
+ *
636
+ * @param predicate Validated column comparison.
637
+ * @returns Wire filter with packed value and operator.
638
+ */
387
639
  compileComparison(predicate) {
388
640
  return create(FilterSchema, {
389
641
  fieldPath: { fieldName: [predicate.column.name] },
@@ -391,6 +643,12 @@ const EntityQueryWire = Object.freeze({
391
643
  operator: EntityQueryWire.wireOperator(predicate.operator),
392
644
  });
393
645
  },
646
+ /**
647
+ * Maps a supported column comparison to its wire enum value.
648
+ *
649
+ * @param operator Comparison operator to encode.
650
+ * @returns Matching wire filter operator.
651
+ */
394
652
  wireOperator(operator) {
395
653
  switch (operator) {
396
654
  case "equal":
@@ -407,6 +665,13 @@ const EntityQueryWire = Object.freeze({
407
665
  throw new TypeError("Entity query comparison operator is not recognized.");
408
666
  }
409
667
  },
668
+ /**
669
+ * Packs a system or application column value into a wire Any message.
670
+ *
671
+ * @param column Column whose value is being encoded.
672
+ * @param value Typed comparison value.
673
+ * @returns Packed wire value for the column.
674
+ */
410
675
  packColumn(column, value) {
411
676
  if (column.source === "system") {
412
677
  if (column.name === "version")
@@ -418,9 +683,17 @@ const EntityQueryWire = Object.freeze({
418
683
  }
419
684
  return EntityQueryWire.packField(column.descriptor, value);
420
685
  },
686
+ /**
687
+ * Packs a descriptor field value using its message, enum, or scalar wrapper.
688
+ *
689
+ * @param field Descriptor for the compared state field.
690
+ * @param value Field value to encode.
691
+ * @returns Packed wire value for the field.
692
+ */
421
693
  packField(field, value) {
422
694
  if (field === undefined)
423
695
  throw new TypeError("Entity query field descriptor is required.");
696
+ EntityQueryWire.requireFieldValue(field, value);
424
697
  if (field.fieldKind === "message") {
425
698
  return EntityQueryWire.packMessage(field.message, value);
426
699
  }
@@ -432,6 +705,34 @@ const EntityQueryWire = Object.freeze({
432
705
  const schema = EntityQueryWire.scalarSchema(field.scalar);
433
706
  return EntityQueryWire.packMessage(schema, create(schema, { value }));
434
707
  },
708
+ /**
709
+ * Checks an ID or column operand against its declared Protobuf field kind.
710
+ *
711
+ * @param field Declared state field used by the query.
712
+ * @param value Operand to validate before wire packing.
713
+ */
714
+ requireFieldValue(field, value) {
715
+ const facts = EntityFieldClassification.classify(field);
716
+ if (!facts.supported)
717
+ throw new TypeError(`Entity query field "${field.name}" is unsupported.`);
718
+ const valid = facts.valueKind === "message"
719
+ ? typeof value === "object" &&
720
+ value !== null &&
721
+ Reflect.get(value, "$typeName") === facts.messageType
722
+ : facts.valueKind === "bytes"
723
+ ? value instanceof Uint8Array
724
+ : facts.valueKind === "enum" || facts.valueKind === "number"
725
+ ? typeof value === "number" && Number.isFinite(value)
726
+ : typeof value === facts.valueKind;
727
+ if (!valid)
728
+ throw new TypeError(`Entity query value for "${field.name}" has the wrong type.`);
729
+ },
730
+ /**
731
+ * Returns the Protobuf wrapper schema for a scalar field type.
732
+ *
733
+ * @param scalar Protobuf scalar type of the field.
734
+ * @returns Wrapper schema used for its query value.
735
+ */
435
736
  scalarSchema(scalar) {
436
737
  switch (scalar) {
437
738
  case ScalarType.BOOL:
@@ -458,12 +759,26 @@ const EntityQueryWire = Object.freeze({
458
759
  return Int32ValueSchema;
459
760
  }
460
761
  },
762
+ /**
763
+ * Verifies that a column is registered for the selected state schema.
764
+ *
765
+ * @typeParam Schema Generated Entity state schema.
766
+ * @param schema State schema selected by the query.
767
+ * @param columns Registered columns for that schema.
768
+ * @param column Column referenced by a predicate or order clause.
769
+ */
461
770
  requireOwnedColumn(schema, columns, column) {
462
771
  if (column.schema !== schema ||
463
772
  !Object.values(columns).some((candidate) => candidate === column)) {
464
773
  throw new TypeError("Entity query column does not belong to the selected target.");
465
774
  }
466
775
  },
776
+ /**
777
+ * Validates a comparison value against its column's declared value kind.
778
+ *
779
+ * @param column Column that declares the required value kind.
780
+ * @param value Comparison value to validate.
781
+ */
467
782
  requireValue(column, value) {
468
783
  const valid = value !== undefined &&
469
784
  (column.valueKind === "message"
@@ -478,18 +793,44 @@ const EntityQueryWire = Object.freeze({
478
793
  if (!valid)
479
794
  throw new TypeError(`Entity query value for "${column.name}" has the wrong type.`);
480
795
  },
796
+ /**
797
+ * Finds a generated field by wire or local name.
798
+ *
799
+ * @param schema Message schema to search.
800
+ * @param name Wire or local field name.
801
+ * @returns Matching field descriptor, if present.
802
+ */
481
803
  findField(schema, name) {
482
804
  return schema.fields.find((field) => field.name === name || field.localName === name);
483
805
  },
806
+ /**
807
+ * Creates a time-prefixed random identifier for a wire query.
808
+ *
809
+ * @returns New query ID string.
810
+ */
484
811
  nextId() {
485
812
  return `query-${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`;
486
813
  },
814
+ /**
815
+ * Builds a type URL from a schema's configured prefix and type name.
816
+ *
817
+ * @param schema Message schema whose URL is required.
818
+ * @returns Fully qualified Protobuf type URL.
819
+ */
487
820
  typeUrl(schema) {
488
821
  const prefix = hasOption(schema.file, type_url_prefix)
489
822
  ? getOption(schema.file, type_url_prefix)
490
823
  : "type.googleapis.com";
491
824
  return `${prefix.replace(/\/+$/u, "")}/${schema.typeName}`;
492
825
  },
826
+ /**
827
+ * Serializes a message value into a wire Any without unknown fields.
828
+ *
829
+ * @typeParam Schema Generated schema of the message value.
830
+ * @param schema Schema used to serialize the value.
831
+ * @param value Message value matching the schema.
832
+ * @returns Any message containing the type URL and binary value.
833
+ */
493
834
  packMessage(schema, value) {
494
835
  return create(AnySchema, {
495
836
  typeUrl: EntityQueryWire.typeUrl(schema),
@@ -1 +1 @@
1
- {"version":3,"file":"entity-query.js","sourceRoot":"","sources":["../../src/query/entity-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-query.js","sourceRoot":"","sources":["../../src/query/entity-query.ts"],"names":[],"mappings":"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"}