@miradorlabs/web-grpc 2.22.0 → 2.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miradorlabs/web-grpc",
3
- "version": "2.22.0",
3
+ "version": "2.24.0",
4
4
  "description": "Generated gRPC (grpc-js) client stubs for the Mirador web gateway.",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -665,6 +665,18 @@ export interface Dashboard {
665
665
  updatedAt: Date | undefined;
666
666
  }
667
667
 
668
+ /**
669
+ * WidgetQuery is one query in a widget. Today the only query language is PromQL
670
+ * (the native `histogram_quantile(q, rate(m[w]))` and classic
671
+ * `histogram_quantile(q, sum by (le)(rate(m_bucket[w])))` histogram idioms are
672
+ * the same language — the metric store serves both series shapes). The oneof
673
+ * leaves room for other query types (a structured builder, log/trace queries)
674
+ * without reshaping the widget.
675
+ */
676
+ export interface WidgetQuery {
677
+ promql?: string | undefined;
678
+ }
679
+
668
680
  export interface Widget {
669
681
  /**
670
682
  * Client-generated, [A-Za-z0-9_-]{1,64}, unique within the dashboard — the
@@ -677,11 +689,13 @@ export interface Widget {
677
689
  | GridPos
678
690
  | undefined;
679
691
  /**
680
- * Data queries. TIMESERIES 1-4 (one plotted series set per query), STAT and
681
- * PIE exactly 1, TABLE 1-4 (one column per query), MARKDOWN none.
682
- * STAT, PIE, and TABLE queries run with a single whole-range bucket.
692
+ * Queries. TIMESERIES 1-4 (one plotted series set per query, evaluated as a
693
+ * range query over the effective window), STAT and PIE exactly 1, TABLE 1-4
694
+ * (one column per query). MARKDOWN none. STAT/PIE/TABLE evaluate the query
695
+ * instantly at the range end (write range aggregation into the PromQL, e.g.
696
+ * sum(rate(m[1h]))).
683
697
  */
684
- queries: MetricQuery[];
698
+ queries: WidgetQuery[];
685
699
  /** UNSPECIFIED = follow the view (stream override or dashboard default). */
686
700
  timeWindow: AnalyticsTimeWindow;
687
701
  /** UNSPECIFIED = server-derived from the effective range. TIMESERIES only. */
@@ -3258,6 +3272,64 @@ export const Dashboard: MessageFns<Dashboard> = {
3258
3272
  },
3259
3273
  };
3260
3274
 
3275
+ function createBaseWidgetQuery(): WidgetQuery {
3276
+ return { promql: undefined };
3277
+ }
3278
+
3279
+ export const WidgetQuery: MessageFns<WidgetQuery> = {
3280
+ encode(message: WidgetQuery, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
3281
+ if (message.promql !== undefined) {
3282
+ writer.uint32(10).string(message.promql);
3283
+ }
3284
+ return writer;
3285
+ },
3286
+
3287
+ decode(input: BinaryReader | Uint8Array, length?: number): WidgetQuery {
3288
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
3289
+ const end = length === undefined ? reader.len : reader.pos + length;
3290
+ const message = createBaseWidgetQuery();
3291
+ while (reader.pos < end) {
3292
+ const tag = reader.uint32();
3293
+ switch (tag >>> 3) {
3294
+ case 1: {
3295
+ if (tag !== 10) {
3296
+ break;
3297
+ }
3298
+
3299
+ message.promql = reader.string();
3300
+ continue;
3301
+ }
3302
+ }
3303
+ if ((tag & 7) === 4 || tag === 0) {
3304
+ break;
3305
+ }
3306
+ reader.skip(tag & 7);
3307
+ }
3308
+ return message;
3309
+ },
3310
+
3311
+ fromJSON(object: any): WidgetQuery {
3312
+ return { promql: isSet(object.promql) ? globalThis.String(object.promql) : undefined };
3313
+ },
3314
+
3315
+ toJSON(message: WidgetQuery): unknown {
3316
+ const obj: any = {};
3317
+ if (message.promql !== undefined) {
3318
+ obj.promql = message.promql;
3319
+ }
3320
+ return obj;
3321
+ },
3322
+
3323
+ create<I extends Exact<DeepPartial<WidgetQuery>, I>>(base?: I): WidgetQuery {
3324
+ return WidgetQuery.fromPartial(base ?? ({} as any));
3325
+ },
3326
+ fromPartial<I extends Exact<DeepPartial<WidgetQuery>, I>>(object: I): WidgetQuery {
3327
+ const message = createBaseWidgetQuery();
3328
+ message.promql = object.promql ?? undefined;
3329
+ return message;
3330
+ },
3331
+ };
3332
+
3261
3333
  function createBaseWidget(): Widget {
3262
3334
  return {
3263
3335
  id: "",
@@ -3287,7 +3359,7 @@ export const Widget: MessageFns<Widget> = {
3287
3359
  GridPos.encode(message.gridPos, writer.uint32(34).fork()).join();
3288
3360
  }
3289
3361
  for (const v of message.queries) {
3290
- MetricQuery.encode(v!, writer.uint32(42).fork()).join();
3362
+ WidgetQuery.encode(v!, writer.uint32(42).fork()).join();
3291
3363
  }
3292
3364
  if (message.timeWindow !== 0) {
3293
3365
  writer.uint32(48).int32(message.timeWindow);
@@ -3348,7 +3420,7 @@ export const Widget: MessageFns<Widget> = {
3348
3420
  break;
3349
3421
  }
3350
3422
 
3351
- message.queries.push(MetricQuery.decode(reader, reader.uint32()));
3423
+ message.queries.push(WidgetQuery.decode(reader, reader.uint32()));
3352
3424
  continue;
3353
3425
  }
3354
3426
  case 6: {
@@ -3402,7 +3474,7 @@ export const Widget: MessageFns<Widget> = {
3402
3474
  : isSet(object.grid_pos)
3403
3475
  ? GridPos.fromJSON(object.grid_pos)
3404
3476
  : undefined,
3405
- queries: globalThis.Array.isArray(object?.queries) ? object.queries.map((e: any) => MetricQuery.fromJSON(e)) : [],
3477
+ queries: globalThis.Array.isArray(object?.queries) ? object.queries.map((e: any) => WidgetQuery.fromJSON(e)) : [],
3406
3478
  timeWindow: isSet(object.timeWindow)
3407
3479
  ? analyticsTimeWindowFromJSON(object.timeWindow)
3408
3480
  : isSet(object.time_window)
@@ -3437,7 +3509,7 @@ export const Widget: MessageFns<Widget> = {
3437
3509
  obj.gridPos = GridPos.toJSON(message.gridPos);
3438
3510
  }
3439
3511
  if (message.queries?.length) {
3440
- obj.queries = message.queries.map((e) => MetricQuery.toJSON(e));
3512
+ obj.queries = message.queries.map((e) => WidgetQuery.toJSON(e));
3441
3513
  }
3442
3514
  if (message.timeWindow !== 0) {
3443
3515
  obj.timeWindow = analyticsTimeWindowToJSON(message.timeWindow);
@@ -3465,7 +3537,7 @@ export const Widget: MessageFns<Widget> = {
3465
3537
  message.gridPos = (object.gridPos !== undefined && object.gridPos !== null)
3466
3538
  ? GridPos.fromPartial(object.gridPos)
3467
3539
  : undefined;
3468
- message.queries = object.queries?.map((e) => MetricQuery.fromPartial(e)) || [];
3540
+ message.queries = object.queries?.map((e) => WidgetQuery.fromPartial(e)) || [];
3469
3541
  message.timeWindow = object.timeWindow ?? 0;
3470
3542
  message.timeInterval = object.timeInterval ?? 0;
3471
3543
  message.timeseriesStyle = object.timeseriesStyle ?? 0;
@@ -78,6 +78,8 @@ goog.exportSymbol('proto.gateway.web.v1.TimeseriesStyle', null, global);
78
78
  goog.exportSymbol('proto.gateway.web.v1.UpdateDashboardRequest', null, global);
79
79
  goog.exportSymbol('proto.gateway.web.v1.UpdateDashboardResponse', null, global);
80
80
  goog.exportSymbol('proto.gateway.web.v1.Widget', null, global);
81
+ goog.exportSymbol('proto.gateway.web.v1.WidgetQuery', null, global);
82
+ goog.exportSymbol('proto.gateway.web.v1.WidgetQuery.QueryCase', null, global);
81
83
  goog.exportSymbol('proto.gateway.web.v1.WidgetQueryError', null, global);
82
84
  goog.exportSymbol('proto.gateway.web.v1.WidgetType', null, global);
83
85
  /**
@@ -563,6 +565,27 @@ if (goog.DEBUG && !COMPILED) {
563
565
  */
564
566
  proto.gateway.web.v1.Dashboard.displayName = 'proto.gateway.web.v1.Dashboard';
565
567
  }
568
+ /**
569
+ * Generated by JsPbCodeGenerator.
570
+ * @param {Array=} opt_data Optional initial data array, typically from a
571
+ * server response, or constructed directly in Javascript. The array is used
572
+ * in place and becomes part of the constructed object. It is not cloned.
573
+ * If no data is provided, the constructed object will be empty, but still
574
+ * valid.
575
+ * @extends {jspb.Message}
576
+ * @constructor
577
+ */
578
+ proto.gateway.web.v1.WidgetQuery = function(opt_data) {
579
+ jspb.Message.initialize(this, opt_data, 0, -1, null, proto.gateway.web.v1.WidgetQuery.oneofGroups_);
580
+ };
581
+ goog.inherits(proto.gateway.web.v1.WidgetQuery, jspb.Message);
582
+ if (goog.DEBUG && !COMPILED) {
583
+ /**
584
+ * @public
585
+ * @override
586
+ */
587
+ proto.gateway.web.v1.WidgetQuery.displayName = 'proto.gateway.web.v1.WidgetQuery';
588
+ }
566
589
  /**
567
590
  * Generated by JsPbCodeGenerator.
568
591
  * @param {Array=} opt_data Optional initial data array, typically from a
@@ -6051,6 +6074,179 @@ proto.gateway.web.v1.Dashboard.prototype.hasUpdatedAt = function() {
6051
6074
 
6052
6075
 
6053
6076
 
6077
+ /**
6078
+ * Oneof group definitions for this message. Each group defines the field
6079
+ * numbers belonging to that group. When of these fields' value is set, all
6080
+ * other fields in the group are cleared. During deserialization, if multiple
6081
+ * fields are encountered for a group, only the last value seen will be kept.
6082
+ * @private {!Array<!Array<number>>}
6083
+ * @const
6084
+ */
6085
+ proto.gateway.web.v1.WidgetQuery.oneofGroups_ = [[1]];
6086
+
6087
+ /**
6088
+ * @enum {number}
6089
+ */
6090
+ proto.gateway.web.v1.WidgetQuery.QueryCase = {
6091
+ QUERY_NOT_SET: 0,
6092
+ PROMQL: 1
6093
+ };
6094
+
6095
+ /**
6096
+ * @return {proto.gateway.web.v1.WidgetQuery.QueryCase}
6097
+ */
6098
+ proto.gateway.web.v1.WidgetQuery.prototype.getQueryCase = function() {
6099
+ return /** @type {proto.gateway.web.v1.WidgetQuery.QueryCase} */(jspb.Message.computeOneofCase(this, proto.gateway.web.v1.WidgetQuery.oneofGroups_[0]));
6100
+ };
6101
+
6102
+
6103
+
6104
+ if (jspb.Message.GENERATE_TO_OBJECT) {
6105
+ /**
6106
+ * Creates an object representation of this proto.
6107
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
6108
+ * Optional fields that are not set will be set to undefined.
6109
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
6110
+ * For the list of reserved names please see:
6111
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
6112
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
6113
+ * JSPB instance for transitional soy proto support:
6114
+ * http://goto/soy-param-migration
6115
+ * @return {!Object}
6116
+ */
6117
+ proto.gateway.web.v1.WidgetQuery.prototype.toObject = function(opt_includeInstance) {
6118
+ return proto.gateway.web.v1.WidgetQuery.toObject(opt_includeInstance, this);
6119
+ };
6120
+
6121
+
6122
+ /**
6123
+ * Static version of the {@see toObject} method.
6124
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
6125
+ * the JSPB instance for transitional soy proto support:
6126
+ * http://goto/soy-param-migration
6127
+ * @param {!proto.gateway.web.v1.WidgetQuery} msg The msg instance to transform.
6128
+ * @return {!Object}
6129
+ * @suppress {unusedLocalVariables} f is only used for nested messages
6130
+ */
6131
+ proto.gateway.web.v1.WidgetQuery.toObject = function(includeInstance, msg) {
6132
+ var f, obj = {
6133
+ promql: (f = jspb.Message.getField(msg, 1)) == null ? undefined : f
6134
+ };
6135
+
6136
+ if (includeInstance) {
6137
+ obj.$jspbMessageInstance = msg;
6138
+ }
6139
+ return obj;
6140
+ };
6141
+ }
6142
+
6143
+
6144
+ /**
6145
+ * Deserializes binary data (in protobuf wire format).
6146
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
6147
+ * @return {!proto.gateway.web.v1.WidgetQuery}
6148
+ */
6149
+ proto.gateway.web.v1.WidgetQuery.deserializeBinary = function(bytes) {
6150
+ var reader = new jspb.BinaryReader(bytes);
6151
+ var msg = new proto.gateway.web.v1.WidgetQuery;
6152
+ return proto.gateway.web.v1.WidgetQuery.deserializeBinaryFromReader(msg, reader);
6153
+ };
6154
+
6155
+
6156
+ /**
6157
+ * Deserializes binary data (in protobuf wire format) from the
6158
+ * given reader into the given message object.
6159
+ * @param {!proto.gateway.web.v1.WidgetQuery} msg The message object to deserialize into.
6160
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
6161
+ * @return {!proto.gateway.web.v1.WidgetQuery}
6162
+ */
6163
+ proto.gateway.web.v1.WidgetQuery.deserializeBinaryFromReader = function(msg, reader) {
6164
+ while (reader.nextField()) {
6165
+ if (reader.isEndGroup()) {
6166
+ break;
6167
+ }
6168
+ var field = reader.getFieldNumber();
6169
+ switch (field) {
6170
+ case 1:
6171
+ var value = /** @type {string} */ (reader.readString());
6172
+ msg.setPromql(value);
6173
+ break;
6174
+ default:
6175
+ reader.skipField();
6176
+ break;
6177
+ }
6178
+ }
6179
+ return msg;
6180
+ };
6181
+
6182
+
6183
+ /**
6184
+ * Serializes the message to binary data (in protobuf wire format).
6185
+ * @return {!Uint8Array}
6186
+ */
6187
+ proto.gateway.web.v1.WidgetQuery.prototype.serializeBinary = function() {
6188
+ var writer = new jspb.BinaryWriter();
6189
+ proto.gateway.web.v1.WidgetQuery.serializeBinaryToWriter(this, writer);
6190
+ return writer.getResultBuffer();
6191
+ };
6192
+
6193
+
6194
+ /**
6195
+ * Serializes the given message to binary data (in protobuf wire
6196
+ * format), writing to the given BinaryWriter.
6197
+ * @param {!proto.gateway.web.v1.WidgetQuery} message
6198
+ * @param {!jspb.BinaryWriter} writer
6199
+ * @suppress {unusedLocalVariables} f is only used for nested messages
6200
+ */
6201
+ proto.gateway.web.v1.WidgetQuery.serializeBinaryToWriter = function(message, writer) {
6202
+ var f = undefined;
6203
+ f = /** @type {string} */ (jspb.Message.getField(message, 1));
6204
+ if (f != null) {
6205
+ writer.writeString(
6206
+ 1,
6207
+ f
6208
+ );
6209
+ }
6210
+ };
6211
+
6212
+
6213
+ /**
6214
+ * optional string promql = 1;
6215
+ * @return {string}
6216
+ */
6217
+ proto.gateway.web.v1.WidgetQuery.prototype.getPromql = function() {
6218
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
6219
+ };
6220
+
6221
+
6222
+ /**
6223
+ * @param {string} value
6224
+ * @return {!proto.gateway.web.v1.WidgetQuery} returns this
6225
+ */
6226
+ proto.gateway.web.v1.WidgetQuery.prototype.setPromql = function(value) {
6227
+ return jspb.Message.setOneofField(this, 1, proto.gateway.web.v1.WidgetQuery.oneofGroups_[0], value);
6228
+ };
6229
+
6230
+
6231
+ /**
6232
+ * Clears the field making it undefined.
6233
+ * @return {!proto.gateway.web.v1.WidgetQuery} returns this
6234
+ */
6235
+ proto.gateway.web.v1.WidgetQuery.prototype.clearPromql = function() {
6236
+ return jspb.Message.setOneofField(this, 1, proto.gateway.web.v1.WidgetQuery.oneofGroups_[0], undefined);
6237
+ };
6238
+
6239
+
6240
+ /**
6241
+ * Returns whether this field is set.
6242
+ * @return {boolean}
6243
+ */
6244
+ proto.gateway.web.v1.WidgetQuery.prototype.hasPromql = function() {
6245
+ return jspb.Message.getField(this, 1) != null;
6246
+ };
6247
+
6248
+
6249
+
6054
6250
  /**
6055
6251
  * List of repeated fields within this message type.
6056
6252
  * @private {!Array<number>}
@@ -6094,7 +6290,7 @@ name: jspb.Message.getFieldWithDefault(msg, 2, ""),
6094
6290
  type: jspb.Message.getFieldWithDefault(msg, 3, 0),
6095
6291
  gridPos: (f = msg.getGridPos()) && proto.gateway.web.v1.GridPos.toObject(includeInstance, f),
6096
6292
  queriesList: jspb.Message.toObjectList(msg.getQueriesList(),
6097
- proto.gateway.web.v1.MetricQuery.toObject, includeInstance),
6293
+ proto.gateway.web.v1.WidgetQuery.toObject, includeInstance),
6098
6294
  timeWindow: jspb.Message.getFieldWithDefault(msg, 6, 0),
6099
6295
  timeInterval: jspb.Message.getFieldWithDefault(msg, 7, 0),
6100
6296
  timeseriesStyle: jspb.Message.getFieldWithDefault(msg, 8, 0),
@@ -6153,8 +6349,8 @@ proto.gateway.web.v1.Widget.deserializeBinaryFromReader = function(msg, reader)
6153
6349
  msg.setGridPos(value);
6154
6350
  break;
6155
6351
  case 5:
6156
- var value = new proto.gateway.web.v1.MetricQuery;
6157
- reader.readMessage(value,proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader);
6352
+ var value = new proto.gateway.web.v1.WidgetQuery;
6353
+ reader.readMessage(value,proto.gateway.web.v1.WidgetQuery.deserializeBinaryFromReader);
6158
6354
  msg.addQueries(value);
6159
6355
  break;
6160
6356
  case 6:
@@ -6236,7 +6432,7 @@ proto.gateway.web.v1.Widget.serializeBinaryToWriter = function(message, writer)
6236
6432
  writer.writeRepeatedMessage(
6237
6433
  5,
6238
6434
  f,
6239
- proto.gateway.web.v1.MetricQuery.serializeBinaryToWriter
6435
+ proto.gateway.web.v1.WidgetQuery.serializeBinaryToWriter
6240
6436
  );
6241
6437
  }
6242
6438
  f = message.getTimeWindow();
@@ -6362,17 +6558,17 @@ proto.gateway.web.v1.Widget.prototype.hasGridPos = function() {
6362
6558
 
6363
6559
 
6364
6560
  /**
6365
- * repeated MetricQuery queries = 5;
6366
- * @return {!Array<!proto.gateway.web.v1.MetricQuery>}
6561
+ * repeated WidgetQuery queries = 5;
6562
+ * @return {!Array<!proto.gateway.web.v1.WidgetQuery>}
6367
6563
  */
6368
6564
  proto.gateway.web.v1.Widget.prototype.getQueriesList = function() {
6369
- return /** @type{!Array<!proto.gateway.web.v1.MetricQuery>} */ (
6370
- jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.MetricQuery, 5));
6565
+ return /** @type{!Array<!proto.gateway.web.v1.WidgetQuery>} */ (
6566
+ jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.WidgetQuery, 5));
6371
6567
  };
6372
6568
 
6373
6569
 
6374
6570
  /**
6375
- * @param {!Array<!proto.gateway.web.v1.MetricQuery>} value
6571
+ * @param {!Array<!proto.gateway.web.v1.WidgetQuery>} value
6376
6572
  * @return {!proto.gateway.web.v1.Widget} returns this
6377
6573
  */
6378
6574
  proto.gateway.web.v1.Widget.prototype.setQueriesList = function(value) {
@@ -6381,12 +6577,12 @@ proto.gateway.web.v1.Widget.prototype.setQueriesList = function(value) {
6381
6577
 
6382
6578
 
6383
6579
  /**
6384
- * @param {!proto.gateway.web.v1.MetricQuery=} opt_value
6580
+ * @param {!proto.gateway.web.v1.WidgetQuery=} opt_value
6385
6581
  * @param {number=} opt_index
6386
- * @return {!proto.gateway.web.v1.MetricQuery}
6582
+ * @return {!proto.gateway.web.v1.WidgetQuery}
6387
6583
  */
6388
6584
  proto.gateway.web.v1.Widget.prototype.addQueries = function(opt_value, opt_index) {
6389
- return jspb.Message.addToRepeatedWrapperField(this, 5, opt_value, proto.gateway.web.v1.MetricQuery, opt_index);
6585
+ return jspb.Message.addToRepeatedWrapperField(this, 5, opt_value, proto.gateway.web.v1.WidgetQuery, opt_index);
6390
6586
  };
6391
6587
 
6392
6588