@openfeature/flagd-provider 0.10.5 → 0.11.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/index.cjs.js CHANGED
@@ -5756,7 +5756,7 @@ const EventStreamRequest = {
5756
5756
  };
5757
5757
  const ServiceService = {
5758
5758
  resolveAll: {
5759
- path: "/schema.v1.Service/ResolveAll",
5759
+ path: "/flagd.evaluation.v1.Service/ResolveAll",
5760
5760
  requestStream: false,
5761
5761
  responseStream: false,
5762
5762
  requestSerialize: (value) => Buffer.from(ResolveAllRequest.encode(value).finish()),
@@ -5765,7 +5765,7 @@ const ServiceService = {
5765
5765
  responseDeserialize: (value) => ResolveAllResponse.decode(value),
5766
5766
  },
5767
5767
  resolveBoolean: {
5768
- path: "/schema.v1.Service/ResolveBoolean",
5768
+ path: "/flagd.evaluation.v1.Service/ResolveBoolean",
5769
5769
  requestStream: false,
5770
5770
  responseStream: false,
5771
5771
  requestSerialize: (value) => Buffer.from(ResolveBooleanRequest.encode(value).finish()),
@@ -5774,7 +5774,7 @@ const ServiceService = {
5774
5774
  responseDeserialize: (value) => ResolveBooleanResponse.decode(value),
5775
5775
  },
5776
5776
  resolveString: {
5777
- path: "/schema.v1.Service/ResolveString",
5777
+ path: "/flagd.evaluation.v1.Service/ResolveString",
5778
5778
  requestStream: false,
5779
5779
  responseStream: false,
5780
5780
  requestSerialize: (value) => Buffer.from(ResolveStringRequest.encode(value).finish()),
@@ -5783,7 +5783,7 @@ const ServiceService = {
5783
5783
  responseDeserialize: (value) => ResolveStringResponse.decode(value),
5784
5784
  },
5785
5785
  resolveFloat: {
5786
- path: "/schema.v1.Service/ResolveFloat",
5786
+ path: "/flagd.evaluation.v1.Service/ResolveFloat",
5787
5787
  requestStream: false,
5788
5788
  responseStream: false,
5789
5789
  requestSerialize: (value) => Buffer.from(ResolveFloatRequest.encode(value).finish()),
@@ -5792,7 +5792,7 @@ const ServiceService = {
5792
5792
  responseDeserialize: (value) => ResolveFloatResponse.decode(value),
5793
5793
  },
5794
5794
  resolveInt: {
5795
- path: "/schema.v1.Service/ResolveInt",
5795
+ path: "/flagd.evaluation.v1.Service/ResolveInt",
5796
5796
  requestStream: false,
5797
5797
  responseStream: false,
5798
5798
  requestSerialize: (value) => Buffer.from(ResolveIntRequest.encode(value).finish()),
@@ -5801,7 +5801,7 @@ const ServiceService = {
5801
5801
  responseDeserialize: (value) => ResolveIntResponse.decode(value),
5802
5802
  },
5803
5803
  resolveObject: {
5804
- path: "/schema.v1.Service/ResolveObject",
5804
+ path: "/flagd.evaluation.v1.Service/ResolveObject",
5805
5805
  requestStream: false,
5806
5806
  responseStream: false,
5807
5807
  requestSerialize: (value) => Buffer.from(ResolveObjectRequest.encode(value).finish()),
@@ -5810,7 +5810,7 @@ const ServiceService = {
5810
5810
  responseDeserialize: (value) => ResolveObjectResponse.decode(value),
5811
5811
  },
5812
5812
  eventStream: {
5813
- path: "/schema.v1.Service/EventStream",
5813
+ path: "/flagd.evaluation.v1.Service/EventStream",
5814
5814
  requestStream: false,
5815
5815
  responseStream: true,
5816
5816
  requestSerialize: (value) => Buffer.from(EventStreamRequest.encode(value).finish()),
@@ -5819,7 +5819,7 @@ const ServiceService = {
5819
5819
  responseDeserialize: (value) => EventStreamResponse.decode(value),
5820
5820
  },
5821
5821
  };
5822
- const ServiceClient = grpcJs.makeGenericClientConstructor(ServiceService, "schema.v1.Service");
5822
+ const ServiceClient = grpcJs.makeGenericClientConstructor(ServiceService, "flagd.evaluation.v1.Service");
5823
5823
  function longToString(long) {
5824
5824
  return long.toString();
5825
5825
  }
@@ -6004,83 +6004,6 @@ class GRPCService {
6004
6004
  }
6005
6005
 
6006
6006
  /* eslint-disable */
6007
- /**
6008
- * Flag definition sync API
6009
- *
6010
- * This proto defines a simple API to synchronize a feature flag definition.
6011
- * It supports establishing a stream for getting notifications about changes in a flag definition.
6012
- */
6013
- /**
6014
- * SyncState conveys the state of the payload. These states are related to flagd isync.go type definitions but
6015
- * contains extras to optimize grpc use case. Refer - https://github.com/open-feature/flagd/blob/main/pkg/sync/isync.go
6016
- */
6017
- var SyncState;
6018
- (function (SyncState) {
6019
- /** SYNC_STATE_UNSPECIFIED - Value is ignored by the listening flagd */
6020
- SyncState[SyncState["SYNC_STATE_UNSPECIFIED"] = 0] = "SYNC_STATE_UNSPECIFIED";
6021
- /**
6022
- * SYNC_STATE_ALL - All the flags matching the request. This is the default response and other states can be ignored
6023
- * by the implementation. Flagd internally replaces all existing flags for this response state.
6024
- */
6025
- SyncState[SyncState["SYNC_STATE_ALL"] = 1] = "SYNC_STATE_ALL";
6026
- /** SYNC_STATE_ADD - Convey an addition of a flag. Flagd internally handles this by combining new flags with existing ones */
6027
- SyncState[SyncState["SYNC_STATE_ADD"] = 2] = "SYNC_STATE_ADD";
6028
- /**
6029
- * SYNC_STATE_UPDATE - Convey an update of a flag. Flagd internally attempts to update if the updated flag already exist OR if it does not,
6030
- * it will get added
6031
- */
6032
- SyncState[SyncState["SYNC_STATE_UPDATE"] = 3] = "SYNC_STATE_UPDATE";
6033
- /** SYNC_STATE_DELETE - Convey a deletion of a flag. Flagd internally removes the flag */
6034
- SyncState[SyncState["SYNC_STATE_DELETE"] = 4] = "SYNC_STATE_DELETE";
6035
- /** SYNC_STATE_PING - Optional server ping to check client connectivity. Handling is ignored by flagd and is to merely support live check */
6036
- SyncState[SyncState["SYNC_STATE_PING"] = 5] = "SYNC_STATE_PING";
6037
- SyncState[SyncState["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
6038
- })(SyncState || (SyncState = {}));
6039
- function syncStateFromJSON(object) {
6040
- switch (object) {
6041
- case 0:
6042
- case "SYNC_STATE_UNSPECIFIED":
6043
- return SyncState.SYNC_STATE_UNSPECIFIED;
6044
- case 1:
6045
- case "SYNC_STATE_ALL":
6046
- return SyncState.SYNC_STATE_ALL;
6047
- case 2:
6048
- case "SYNC_STATE_ADD":
6049
- return SyncState.SYNC_STATE_ADD;
6050
- case 3:
6051
- case "SYNC_STATE_UPDATE":
6052
- return SyncState.SYNC_STATE_UPDATE;
6053
- case 4:
6054
- case "SYNC_STATE_DELETE":
6055
- return SyncState.SYNC_STATE_DELETE;
6056
- case 5:
6057
- case "SYNC_STATE_PING":
6058
- return SyncState.SYNC_STATE_PING;
6059
- case -1:
6060
- case "UNRECOGNIZED":
6061
- default:
6062
- return SyncState.UNRECOGNIZED;
6063
- }
6064
- }
6065
- function syncStateToJSON(object) {
6066
- switch (object) {
6067
- case SyncState.SYNC_STATE_UNSPECIFIED:
6068
- return "SYNC_STATE_UNSPECIFIED";
6069
- case SyncState.SYNC_STATE_ALL:
6070
- return "SYNC_STATE_ALL";
6071
- case SyncState.SYNC_STATE_ADD:
6072
- return "SYNC_STATE_ADD";
6073
- case SyncState.SYNC_STATE_UPDATE:
6074
- return "SYNC_STATE_UPDATE";
6075
- case SyncState.SYNC_STATE_DELETE:
6076
- return "SYNC_STATE_DELETE";
6077
- case SyncState.SYNC_STATE_PING:
6078
- return "SYNC_STATE_PING";
6079
- case SyncState.UNRECOGNIZED:
6080
- default:
6081
- return "UNRECOGNIZED";
6082
- }
6083
- }
6084
6007
  function createBaseSyncFlagsRequest() {
6085
6008
  return { providerId: "", selector: "" };
6086
6009
  }
@@ -6149,16 +6072,13 @@ const SyncFlagsRequest = {
6149
6072
  },
6150
6073
  };
6151
6074
  function createBaseSyncFlagsResponse() {
6152
- return { flagConfiguration: "", state: 0 };
6075
+ return { flagConfiguration: "" };
6153
6076
  }
6154
6077
  const SyncFlagsResponse = {
6155
6078
  encode(message, writer = minimal.Writer.create()) {
6156
6079
  if (message.flagConfiguration !== "") {
6157
6080
  writer.uint32(10).string(message.flagConfiguration);
6158
6081
  }
6159
- if (message.state !== 0) {
6160
- writer.uint32(16).int32(message.state);
6161
- }
6162
6082
  return writer;
6163
6083
  },
6164
6084
  decode(input, length) {
@@ -6174,12 +6094,6 @@ const SyncFlagsResponse = {
6174
6094
  }
6175
6095
  message.flagConfiguration = reader.string();
6176
6096
  continue;
6177
- case 2:
6178
- if (tag !== 16) {
6179
- break;
6180
- }
6181
- message.state = reader.int32();
6182
- continue;
6183
6097
  }
6184
6098
  if ((tag & 7) === 4 || tag === 0) {
6185
6099
  break;
@@ -6189,29 +6103,22 @@ const SyncFlagsResponse = {
6189
6103
  return message;
6190
6104
  },
6191
6105
  fromJSON(object) {
6192
- return {
6193
- flagConfiguration: isSet(object.flagConfiguration) ? String(object.flagConfiguration) : "",
6194
- state: isSet(object.state) ? syncStateFromJSON(object.state) : 0,
6195
- };
6106
+ return { flagConfiguration: isSet(object.flagConfiguration) ? String(object.flagConfiguration) : "" };
6196
6107
  },
6197
6108
  toJSON(message) {
6198
6109
  const obj = {};
6199
6110
  if (message.flagConfiguration !== "") {
6200
6111
  obj.flagConfiguration = message.flagConfiguration;
6201
6112
  }
6202
- if (message.state !== 0) {
6203
- obj.state = syncStateToJSON(message.state);
6204
- }
6205
6113
  return obj;
6206
6114
  },
6207
6115
  create(base) {
6208
6116
  return SyncFlagsResponse.fromPartial(base !== null && base !== void 0 ? base : {});
6209
6117
  },
6210
6118
  fromPartial(object) {
6211
- var _a, _b;
6119
+ var _a;
6212
6120
  const message = createBaseSyncFlagsResponse();
6213
6121
  message.flagConfiguration = (_a = object.flagConfiguration) !== null && _a !== void 0 ? _a : "";
6214
- message.state = (_b = object.state) !== null && _b !== void 0 ? _b : 0;
6215
6122
  return message;
6216
6123
  },
6217
6124
  };
@@ -6333,9 +6240,160 @@ const FetchAllFlagsResponse = {
6333
6240
  return message;
6334
6241
  },
6335
6242
  };
6243
+ function createBaseGetMetadataRequest() {
6244
+ return {};
6245
+ }
6246
+ const GetMetadataRequest = {
6247
+ encode(_, writer = minimal.Writer.create()) {
6248
+ return writer;
6249
+ },
6250
+ decode(input, length) {
6251
+ const reader = input instanceof minimal.Reader ? input : minimal.Reader.create(input);
6252
+ let end = length === undefined ? reader.len : reader.pos + length;
6253
+ const message = createBaseGetMetadataRequest();
6254
+ while (reader.pos < end) {
6255
+ const tag = reader.uint32();
6256
+ if ((tag & 7) === 4 || tag === 0) {
6257
+ break;
6258
+ }
6259
+ reader.skipType(tag & 7);
6260
+ }
6261
+ return message;
6262
+ },
6263
+ fromJSON(_) {
6264
+ return {};
6265
+ },
6266
+ toJSON(_) {
6267
+ const obj = {};
6268
+ return obj;
6269
+ },
6270
+ create(base) {
6271
+ return GetMetadataRequest.fromPartial(base !== null && base !== void 0 ? base : {});
6272
+ },
6273
+ fromPartial(_) {
6274
+ const message = createBaseGetMetadataRequest();
6275
+ return message;
6276
+ },
6277
+ };
6278
+ function createBaseGetMetadataResponse() {
6279
+ return { metadata: [] };
6280
+ }
6281
+ const GetMetadataResponse = {
6282
+ encode(message, writer = minimal.Writer.create()) {
6283
+ for (const v of message.metadata) {
6284
+ KeyValue.encode(v, writer.uint32(10).fork()).ldelim();
6285
+ }
6286
+ return writer;
6287
+ },
6288
+ decode(input, length) {
6289
+ const reader = input instanceof minimal.Reader ? input : minimal.Reader.create(input);
6290
+ let end = length === undefined ? reader.len : reader.pos + length;
6291
+ const message = createBaseGetMetadataResponse();
6292
+ while (reader.pos < end) {
6293
+ const tag = reader.uint32();
6294
+ switch (tag >>> 3) {
6295
+ case 1:
6296
+ if (tag !== 10) {
6297
+ break;
6298
+ }
6299
+ message.metadata.push(KeyValue.decode(reader, reader.uint32()));
6300
+ continue;
6301
+ }
6302
+ if ((tag & 7) === 4 || tag === 0) {
6303
+ break;
6304
+ }
6305
+ reader.skipType(tag & 7);
6306
+ }
6307
+ return message;
6308
+ },
6309
+ fromJSON(object) {
6310
+ return { metadata: Array.isArray(object === null || object === void 0 ? void 0 : object.metadata) ? object.metadata.map((e) => KeyValue.fromJSON(e)) : [] };
6311
+ },
6312
+ toJSON(message) {
6313
+ var _a;
6314
+ const obj = {};
6315
+ if ((_a = message.metadata) === null || _a === void 0 ? void 0 : _a.length) {
6316
+ obj.metadata = message.metadata.map((e) => KeyValue.toJSON(e));
6317
+ }
6318
+ return obj;
6319
+ },
6320
+ create(base) {
6321
+ return GetMetadataResponse.fromPartial(base !== null && base !== void 0 ? base : {});
6322
+ },
6323
+ fromPartial(object) {
6324
+ var _a;
6325
+ const message = createBaseGetMetadataResponse();
6326
+ message.metadata = ((_a = object.metadata) === null || _a === void 0 ? void 0 : _a.map((e) => KeyValue.fromPartial(e))) || [];
6327
+ return message;
6328
+ },
6329
+ };
6330
+ function createBaseKeyValue() {
6331
+ return { key: "", value: "" };
6332
+ }
6333
+ const KeyValue = {
6334
+ encode(message, writer = minimal.Writer.create()) {
6335
+ if (message.key !== "") {
6336
+ writer.uint32(10).string(message.key);
6337
+ }
6338
+ if (message.value !== "") {
6339
+ writer.uint32(18).string(message.value);
6340
+ }
6341
+ return writer;
6342
+ },
6343
+ decode(input, length) {
6344
+ const reader = input instanceof minimal.Reader ? input : minimal.Reader.create(input);
6345
+ let end = length === undefined ? reader.len : reader.pos + length;
6346
+ const message = createBaseKeyValue();
6347
+ while (reader.pos < end) {
6348
+ const tag = reader.uint32();
6349
+ switch (tag >>> 3) {
6350
+ case 1:
6351
+ if (tag !== 10) {
6352
+ break;
6353
+ }
6354
+ message.key = reader.string();
6355
+ continue;
6356
+ case 2:
6357
+ if (tag !== 18) {
6358
+ break;
6359
+ }
6360
+ message.value = reader.string();
6361
+ continue;
6362
+ }
6363
+ if ((tag & 7) === 4 || tag === 0) {
6364
+ break;
6365
+ }
6366
+ reader.skipType(tag & 7);
6367
+ }
6368
+ return message;
6369
+ },
6370
+ fromJSON(object) {
6371
+ return { key: isSet(object.key) ? String(object.key) : "", value: isSet(object.value) ? String(object.value) : "" };
6372
+ },
6373
+ toJSON(message) {
6374
+ const obj = {};
6375
+ if (message.key !== "") {
6376
+ obj.key = message.key;
6377
+ }
6378
+ if (message.value !== "") {
6379
+ obj.value = message.value;
6380
+ }
6381
+ return obj;
6382
+ },
6383
+ create(base) {
6384
+ return KeyValue.fromPartial(base !== null && base !== void 0 ? base : {});
6385
+ },
6386
+ fromPartial(object) {
6387
+ var _a, _b;
6388
+ const message = createBaseKeyValue();
6389
+ message.key = (_a = object.key) !== null && _a !== void 0 ? _a : "";
6390
+ message.value = (_b = object.value) !== null && _b !== void 0 ? _b : "";
6391
+ return message;
6392
+ },
6393
+ };
6336
6394
  const FlagSyncServiceService = {
6337
6395
  syncFlags: {
6338
- path: "/sync.v1.FlagSyncService/SyncFlags",
6396
+ path: "/flagd.sync.v1.FlagSyncService/SyncFlags",
6339
6397
  requestStream: false,
6340
6398
  responseStream: true,
6341
6399
  requestSerialize: (value) => Buffer.from(SyncFlagsRequest.encode(value).finish()),
@@ -6344,7 +6402,7 @@ const FlagSyncServiceService = {
6344
6402
  responseDeserialize: (value) => SyncFlagsResponse.decode(value),
6345
6403
  },
6346
6404
  fetchAllFlags: {
6347
- path: "/sync.v1.FlagSyncService/FetchAllFlags",
6405
+ path: "/flagd.sync.v1.FlagSyncService/FetchAllFlags",
6348
6406
  requestStream: false,
6349
6407
  responseStream: false,
6350
6408
  requestSerialize: (value) => Buffer.from(FetchAllFlagsRequest.encode(value).finish()),
@@ -6352,8 +6410,17 @@ const FlagSyncServiceService = {
6352
6410
  responseSerialize: (value) => Buffer.from(FetchAllFlagsResponse.encode(value).finish()),
6353
6411
  responseDeserialize: (value) => FetchAllFlagsResponse.decode(value),
6354
6412
  },
6413
+ getMetadata: {
6414
+ path: "/flagd.sync.v1.FlagSyncService/GetMetadata",
6415
+ requestStream: false,
6416
+ responseStream: false,
6417
+ requestSerialize: (value) => Buffer.from(GetMetadataRequest.encode(value).finish()),
6418
+ requestDeserialize: (value) => GetMetadataRequest.decode(value),
6419
+ responseSerialize: (value) => Buffer.from(GetMetadataResponse.encode(value).finish()),
6420
+ responseDeserialize: (value) => GetMetadataResponse.decode(value),
6421
+ },
6355
6422
  };
6356
- const FlagSyncServiceClient = grpcJs.makeGenericClientConstructor(FlagSyncServiceService, "sync.v1.FlagSyncService");
6423
+ const FlagSyncServiceClient = grpcJs.makeGenericClientConstructor(FlagSyncServiceService, "flagd.sync.v1.FlagSyncService");
6357
6424
  function isSet(value) {
6358
6425
  return value !== null && value !== undefined;
6359
6426
  }
@@ -6399,39 +6466,47 @@ class GrpcFetch {
6399
6466
  var _a;
6400
6467
  (_a = this._logger) === null || _a === void 0 ? void 0 : _a.debug('Starting gRPC sync connection');
6401
6468
  closeStreamIfDefined(this._syncStream);
6402
- this._syncStream = this._syncClient.syncFlags(this._request);
6403
- this._syncStream.on('data', (data) => {
6404
- var _a, _b, _c, _d;
6405
- (_a = this._logger) === null || _a === void 0 ? void 0 : _a.debug(`Received sync payload`);
6406
- try {
6407
- const changes = dataCallback(data.flagConfiguration);
6408
- if (this._initialized && changes.length > 0) {
6409
- changedCallback(changes);
6469
+ try {
6470
+ this._syncStream = this._syncClient.syncFlags(this._request);
6471
+ this._syncStream.on('data', (data) => {
6472
+ var _a, _b, _c, _d;
6473
+ (_a = this._logger) === null || _a === void 0 ? void 0 : _a.debug(`Received sync payload`);
6474
+ try {
6475
+ const changes = dataCallback(data.flagConfiguration);
6476
+ if (this._initialized && changes.length > 0) {
6477
+ changedCallback(changes);
6478
+ }
6410
6479
  }
6411
- }
6412
- catch (err) {
6413
- (_b = this._logger) === null || _b === void 0 ? void 0 : _b.debug('Error processing sync payload: ', (_c = err === null || err === void 0 ? void 0 : err.message) !== null && _c !== void 0 ? _c : 'unknown error');
6414
- }
6415
- if (resolveConnect) {
6416
- resolveConnect();
6417
- }
6418
- else if (!this._isConnected) {
6419
- // Not the first connection and there's no active connection.
6420
- (_d = this._logger) === null || _d === void 0 ? void 0 : _d.debug('Reconnected to gRPC sync');
6421
- reconnectCallback();
6422
- }
6423
- this._isConnected = true;
6424
- });
6425
- this._syncStream.on('error', (err) => {
6426
- var _a, _b, _c;
6427
- (_a = this._logger) === null || _a === void 0 ? void 0 : _a.error('Connection error, attempting to reconnect');
6428
- (_b = this._logger) === null || _b === void 0 ? void 0 : _b.debug(err);
6429
- this._isConnected = false;
6430
- const errorMessage = (_c = err === null || err === void 0 ? void 0 : err.message) !== null && _c !== void 0 ? _c : 'Failed to connect to syncFlags stream';
6431
- disconnectCallback(errorMessage);
6432
- rejectConnect === null || rejectConnect === void 0 ? void 0 : rejectConnect(new serverSdk.GeneralError(errorMessage));
6433
- this.reconnect(dataCallback, reconnectCallback, changedCallback, disconnectCallback);
6434
- });
6480
+ catch (err) {
6481
+ (_b = this._logger) === null || _b === void 0 ? void 0 : _b.debug('Error processing sync payload: ', (_c = err === null || err === void 0 ? void 0 : err.message) !== null && _c !== void 0 ? _c : 'unknown error');
6482
+ }
6483
+ if (resolveConnect) {
6484
+ resolveConnect();
6485
+ }
6486
+ else if (!this._isConnected) {
6487
+ // Not the first connection and there's no active connection.
6488
+ (_d = this._logger) === null || _d === void 0 ? void 0 : _d.debug('Reconnected to gRPC sync');
6489
+ reconnectCallback();
6490
+ }
6491
+ this._isConnected = true;
6492
+ });
6493
+ this._syncStream.on('error', (err) => {
6494
+ this.handleError(err, dataCallback, reconnectCallback, changedCallback, disconnectCallback, rejectConnect);
6495
+ });
6496
+ }
6497
+ catch (err) {
6498
+ this.handleError(err, dataCallback, reconnectCallback, changedCallback, disconnectCallback, rejectConnect);
6499
+ }
6500
+ }
6501
+ handleError(err, dataCallback, reconnectCallback, changedCallback, disconnectCallback, rejectConnect) {
6502
+ var _a, _b, _c;
6503
+ (_a = this._logger) === null || _a === void 0 ? void 0 : _a.error('Connection error, attempting to reconnect');
6504
+ (_b = this._logger) === null || _b === void 0 ? void 0 : _b.debug(err);
6505
+ this._isConnected = false;
6506
+ const errorMessage = (_c = err === null || err === void 0 ? void 0 : err.message) !== null && _c !== void 0 ? _c : 'Failed to connect to syncFlags stream';
6507
+ disconnectCallback(errorMessage);
6508
+ rejectConnect === null || rejectConnect === void 0 ? void 0 : rejectConnect(new serverSdk.GeneralError(errorMessage));
6509
+ this.reconnect(dataCallback, reconnectCallback, changedCallback, disconnectCallback);
6435
6510
  }
6436
6511
  reconnect(dataCallback, reconnectCallback, changedCallback, disconnectCallback) {
6437
6512
  const channel = this._syncClient.getChannel();
package/index.esm.js CHANGED
@@ -5752,7 +5752,7 @@ const EventStreamRequest = {
5752
5752
  };
5753
5753
  const ServiceService = {
5754
5754
  resolveAll: {
5755
- path: "/schema.v1.Service/ResolveAll",
5755
+ path: "/flagd.evaluation.v1.Service/ResolveAll",
5756
5756
  requestStream: false,
5757
5757
  responseStream: false,
5758
5758
  requestSerialize: (value) => Buffer.from(ResolveAllRequest.encode(value).finish()),
@@ -5761,7 +5761,7 @@ const ServiceService = {
5761
5761
  responseDeserialize: (value) => ResolveAllResponse.decode(value),
5762
5762
  },
5763
5763
  resolveBoolean: {
5764
- path: "/schema.v1.Service/ResolveBoolean",
5764
+ path: "/flagd.evaluation.v1.Service/ResolveBoolean",
5765
5765
  requestStream: false,
5766
5766
  responseStream: false,
5767
5767
  requestSerialize: (value) => Buffer.from(ResolveBooleanRequest.encode(value).finish()),
@@ -5770,7 +5770,7 @@ const ServiceService = {
5770
5770
  responseDeserialize: (value) => ResolveBooleanResponse.decode(value),
5771
5771
  },
5772
5772
  resolveString: {
5773
- path: "/schema.v1.Service/ResolveString",
5773
+ path: "/flagd.evaluation.v1.Service/ResolveString",
5774
5774
  requestStream: false,
5775
5775
  responseStream: false,
5776
5776
  requestSerialize: (value) => Buffer.from(ResolveStringRequest.encode(value).finish()),
@@ -5779,7 +5779,7 @@ const ServiceService = {
5779
5779
  responseDeserialize: (value) => ResolveStringResponse.decode(value),
5780
5780
  },
5781
5781
  resolveFloat: {
5782
- path: "/schema.v1.Service/ResolveFloat",
5782
+ path: "/flagd.evaluation.v1.Service/ResolveFloat",
5783
5783
  requestStream: false,
5784
5784
  responseStream: false,
5785
5785
  requestSerialize: (value) => Buffer.from(ResolveFloatRequest.encode(value).finish()),
@@ -5788,7 +5788,7 @@ const ServiceService = {
5788
5788
  responseDeserialize: (value) => ResolveFloatResponse.decode(value),
5789
5789
  },
5790
5790
  resolveInt: {
5791
- path: "/schema.v1.Service/ResolveInt",
5791
+ path: "/flagd.evaluation.v1.Service/ResolveInt",
5792
5792
  requestStream: false,
5793
5793
  responseStream: false,
5794
5794
  requestSerialize: (value) => Buffer.from(ResolveIntRequest.encode(value).finish()),
@@ -5797,7 +5797,7 @@ const ServiceService = {
5797
5797
  responseDeserialize: (value) => ResolveIntResponse.decode(value),
5798
5798
  },
5799
5799
  resolveObject: {
5800
- path: "/schema.v1.Service/ResolveObject",
5800
+ path: "/flagd.evaluation.v1.Service/ResolveObject",
5801
5801
  requestStream: false,
5802
5802
  responseStream: false,
5803
5803
  requestSerialize: (value) => Buffer.from(ResolveObjectRequest.encode(value).finish()),
@@ -5806,7 +5806,7 @@ const ServiceService = {
5806
5806
  responseDeserialize: (value) => ResolveObjectResponse.decode(value),
5807
5807
  },
5808
5808
  eventStream: {
5809
- path: "/schema.v1.Service/EventStream",
5809
+ path: "/flagd.evaluation.v1.Service/EventStream",
5810
5810
  requestStream: false,
5811
5811
  responseStream: true,
5812
5812
  requestSerialize: (value) => Buffer.from(EventStreamRequest.encode(value).finish()),
@@ -5815,7 +5815,7 @@ const ServiceService = {
5815
5815
  responseDeserialize: (value) => EventStreamResponse.decode(value),
5816
5816
  },
5817
5817
  };
5818
- const ServiceClient = makeGenericClientConstructor(ServiceService, "schema.v1.Service");
5818
+ const ServiceClient = makeGenericClientConstructor(ServiceService, "flagd.evaluation.v1.Service");
5819
5819
  function longToString(long) {
5820
5820
  return long.toString();
5821
5821
  }
@@ -6000,83 +6000,6 @@ class GRPCService {
6000
6000
  }
6001
6001
 
6002
6002
  /* eslint-disable */
6003
- /**
6004
- * Flag definition sync API
6005
- *
6006
- * This proto defines a simple API to synchronize a feature flag definition.
6007
- * It supports establishing a stream for getting notifications about changes in a flag definition.
6008
- */
6009
- /**
6010
- * SyncState conveys the state of the payload. These states are related to flagd isync.go type definitions but
6011
- * contains extras to optimize grpc use case. Refer - https://github.com/open-feature/flagd/blob/main/pkg/sync/isync.go
6012
- */
6013
- var SyncState;
6014
- (function (SyncState) {
6015
- /** SYNC_STATE_UNSPECIFIED - Value is ignored by the listening flagd */
6016
- SyncState[SyncState["SYNC_STATE_UNSPECIFIED"] = 0] = "SYNC_STATE_UNSPECIFIED";
6017
- /**
6018
- * SYNC_STATE_ALL - All the flags matching the request. This is the default response and other states can be ignored
6019
- * by the implementation. Flagd internally replaces all existing flags for this response state.
6020
- */
6021
- SyncState[SyncState["SYNC_STATE_ALL"] = 1] = "SYNC_STATE_ALL";
6022
- /** SYNC_STATE_ADD - Convey an addition of a flag. Flagd internally handles this by combining new flags with existing ones */
6023
- SyncState[SyncState["SYNC_STATE_ADD"] = 2] = "SYNC_STATE_ADD";
6024
- /**
6025
- * SYNC_STATE_UPDATE - Convey an update of a flag. Flagd internally attempts to update if the updated flag already exist OR if it does not,
6026
- * it will get added
6027
- */
6028
- SyncState[SyncState["SYNC_STATE_UPDATE"] = 3] = "SYNC_STATE_UPDATE";
6029
- /** SYNC_STATE_DELETE - Convey a deletion of a flag. Flagd internally removes the flag */
6030
- SyncState[SyncState["SYNC_STATE_DELETE"] = 4] = "SYNC_STATE_DELETE";
6031
- /** SYNC_STATE_PING - Optional server ping to check client connectivity. Handling is ignored by flagd and is to merely support live check */
6032
- SyncState[SyncState["SYNC_STATE_PING"] = 5] = "SYNC_STATE_PING";
6033
- SyncState[SyncState["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
6034
- })(SyncState || (SyncState = {}));
6035
- function syncStateFromJSON(object) {
6036
- switch (object) {
6037
- case 0:
6038
- case "SYNC_STATE_UNSPECIFIED":
6039
- return SyncState.SYNC_STATE_UNSPECIFIED;
6040
- case 1:
6041
- case "SYNC_STATE_ALL":
6042
- return SyncState.SYNC_STATE_ALL;
6043
- case 2:
6044
- case "SYNC_STATE_ADD":
6045
- return SyncState.SYNC_STATE_ADD;
6046
- case 3:
6047
- case "SYNC_STATE_UPDATE":
6048
- return SyncState.SYNC_STATE_UPDATE;
6049
- case 4:
6050
- case "SYNC_STATE_DELETE":
6051
- return SyncState.SYNC_STATE_DELETE;
6052
- case 5:
6053
- case "SYNC_STATE_PING":
6054
- return SyncState.SYNC_STATE_PING;
6055
- case -1:
6056
- case "UNRECOGNIZED":
6057
- default:
6058
- return SyncState.UNRECOGNIZED;
6059
- }
6060
- }
6061
- function syncStateToJSON(object) {
6062
- switch (object) {
6063
- case SyncState.SYNC_STATE_UNSPECIFIED:
6064
- return "SYNC_STATE_UNSPECIFIED";
6065
- case SyncState.SYNC_STATE_ALL:
6066
- return "SYNC_STATE_ALL";
6067
- case SyncState.SYNC_STATE_ADD:
6068
- return "SYNC_STATE_ADD";
6069
- case SyncState.SYNC_STATE_UPDATE:
6070
- return "SYNC_STATE_UPDATE";
6071
- case SyncState.SYNC_STATE_DELETE:
6072
- return "SYNC_STATE_DELETE";
6073
- case SyncState.SYNC_STATE_PING:
6074
- return "SYNC_STATE_PING";
6075
- case SyncState.UNRECOGNIZED:
6076
- default:
6077
- return "UNRECOGNIZED";
6078
- }
6079
- }
6080
6003
  function createBaseSyncFlagsRequest() {
6081
6004
  return { providerId: "", selector: "" };
6082
6005
  }
@@ -6145,16 +6068,13 @@ const SyncFlagsRequest = {
6145
6068
  },
6146
6069
  };
6147
6070
  function createBaseSyncFlagsResponse() {
6148
- return { flagConfiguration: "", state: 0 };
6071
+ return { flagConfiguration: "" };
6149
6072
  }
6150
6073
  const SyncFlagsResponse = {
6151
6074
  encode(message, writer = minimal.Writer.create()) {
6152
6075
  if (message.flagConfiguration !== "") {
6153
6076
  writer.uint32(10).string(message.flagConfiguration);
6154
6077
  }
6155
- if (message.state !== 0) {
6156
- writer.uint32(16).int32(message.state);
6157
- }
6158
6078
  return writer;
6159
6079
  },
6160
6080
  decode(input, length) {
@@ -6170,12 +6090,6 @@ const SyncFlagsResponse = {
6170
6090
  }
6171
6091
  message.flagConfiguration = reader.string();
6172
6092
  continue;
6173
- case 2:
6174
- if (tag !== 16) {
6175
- break;
6176
- }
6177
- message.state = reader.int32();
6178
- continue;
6179
6093
  }
6180
6094
  if ((tag & 7) === 4 || tag === 0) {
6181
6095
  break;
@@ -6185,29 +6099,22 @@ const SyncFlagsResponse = {
6185
6099
  return message;
6186
6100
  },
6187
6101
  fromJSON(object) {
6188
- return {
6189
- flagConfiguration: isSet(object.flagConfiguration) ? String(object.flagConfiguration) : "",
6190
- state: isSet(object.state) ? syncStateFromJSON(object.state) : 0,
6191
- };
6102
+ return { flagConfiguration: isSet(object.flagConfiguration) ? String(object.flagConfiguration) : "" };
6192
6103
  },
6193
6104
  toJSON(message) {
6194
6105
  const obj = {};
6195
6106
  if (message.flagConfiguration !== "") {
6196
6107
  obj.flagConfiguration = message.flagConfiguration;
6197
6108
  }
6198
- if (message.state !== 0) {
6199
- obj.state = syncStateToJSON(message.state);
6200
- }
6201
6109
  return obj;
6202
6110
  },
6203
6111
  create(base) {
6204
6112
  return SyncFlagsResponse.fromPartial(base !== null && base !== void 0 ? base : {});
6205
6113
  },
6206
6114
  fromPartial(object) {
6207
- var _a, _b;
6115
+ var _a;
6208
6116
  const message = createBaseSyncFlagsResponse();
6209
6117
  message.flagConfiguration = (_a = object.flagConfiguration) !== null && _a !== void 0 ? _a : "";
6210
- message.state = (_b = object.state) !== null && _b !== void 0 ? _b : 0;
6211
6118
  return message;
6212
6119
  },
6213
6120
  };
@@ -6329,9 +6236,160 @@ const FetchAllFlagsResponse = {
6329
6236
  return message;
6330
6237
  },
6331
6238
  };
6239
+ function createBaseGetMetadataRequest() {
6240
+ return {};
6241
+ }
6242
+ const GetMetadataRequest = {
6243
+ encode(_, writer = minimal.Writer.create()) {
6244
+ return writer;
6245
+ },
6246
+ decode(input, length) {
6247
+ const reader = input instanceof minimal.Reader ? input : minimal.Reader.create(input);
6248
+ let end = length === undefined ? reader.len : reader.pos + length;
6249
+ const message = createBaseGetMetadataRequest();
6250
+ while (reader.pos < end) {
6251
+ const tag = reader.uint32();
6252
+ if ((tag & 7) === 4 || tag === 0) {
6253
+ break;
6254
+ }
6255
+ reader.skipType(tag & 7);
6256
+ }
6257
+ return message;
6258
+ },
6259
+ fromJSON(_) {
6260
+ return {};
6261
+ },
6262
+ toJSON(_) {
6263
+ const obj = {};
6264
+ return obj;
6265
+ },
6266
+ create(base) {
6267
+ return GetMetadataRequest.fromPartial(base !== null && base !== void 0 ? base : {});
6268
+ },
6269
+ fromPartial(_) {
6270
+ const message = createBaseGetMetadataRequest();
6271
+ return message;
6272
+ },
6273
+ };
6274
+ function createBaseGetMetadataResponse() {
6275
+ return { metadata: [] };
6276
+ }
6277
+ const GetMetadataResponse = {
6278
+ encode(message, writer = minimal.Writer.create()) {
6279
+ for (const v of message.metadata) {
6280
+ KeyValue.encode(v, writer.uint32(10).fork()).ldelim();
6281
+ }
6282
+ return writer;
6283
+ },
6284
+ decode(input, length) {
6285
+ const reader = input instanceof minimal.Reader ? input : minimal.Reader.create(input);
6286
+ let end = length === undefined ? reader.len : reader.pos + length;
6287
+ const message = createBaseGetMetadataResponse();
6288
+ while (reader.pos < end) {
6289
+ const tag = reader.uint32();
6290
+ switch (tag >>> 3) {
6291
+ case 1:
6292
+ if (tag !== 10) {
6293
+ break;
6294
+ }
6295
+ message.metadata.push(KeyValue.decode(reader, reader.uint32()));
6296
+ continue;
6297
+ }
6298
+ if ((tag & 7) === 4 || tag === 0) {
6299
+ break;
6300
+ }
6301
+ reader.skipType(tag & 7);
6302
+ }
6303
+ return message;
6304
+ },
6305
+ fromJSON(object) {
6306
+ return { metadata: Array.isArray(object === null || object === void 0 ? void 0 : object.metadata) ? object.metadata.map((e) => KeyValue.fromJSON(e)) : [] };
6307
+ },
6308
+ toJSON(message) {
6309
+ var _a;
6310
+ const obj = {};
6311
+ if ((_a = message.metadata) === null || _a === void 0 ? void 0 : _a.length) {
6312
+ obj.metadata = message.metadata.map((e) => KeyValue.toJSON(e));
6313
+ }
6314
+ return obj;
6315
+ },
6316
+ create(base) {
6317
+ return GetMetadataResponse.fromPartial(base !== null && base !== void 0 ? base : {});
6318
+ },
6319
+ fromPartial(object) {
6320
+ var _a;
6321
+ const message = createBaseGetMetadataResponse();
6322
+ message.metadata = ((_a = object.metadata) === null || _a === void 0 ? void 0 : _a.map((e) => KeyValue.fromPartial(e))) || [];
6323
+ return message;
6324
+ },
6325
+ };
6326
+ function createBaseKeyValue() {
6327
+ return { key: "", value: "" };
6328
+ }
6329
+ const KeyValue = {
6330
+ encode(message, writer = minimal.Writer.create()) {
6331
+ if (message.key !== "") {
6332
+ writer.uint32(10).string(message.key);
6333
+ }
6334
+ if (message.value !== "") {
6335
+ writer.uint32(18).string(message.value);
6336
+ }
6337
+ return writer;
6338
+ },
6339
+ decode(input, length) {
6340
+ const reader = input instanceof minimal.Reader ? input : minimal.Reader.create(input);
6341
+ let end = length === undefined ? reader.len : reader.pos + length;
6342
+ const message = createBaseKeyValue();
6343
+ while (reader.pos < end) {
6344
+ const tag = reader.uint32();
6345
+ switch (tag >>> 3) {
6346
+ case 1:
6347
+ if (tag !== 10) {
6348
+ break;
6349
+ }
6350
+ message.key = reader.string();
6351
+ continue;
6352
+ case 2:
6353
+ if (tag !== 18) {
6354
+ break;
6355
+ }
6356
+ message.value = reader.string();
6357
+ continue;
6358
+ }
6359
+ if ((tag & 7) === 4 || tag === 0) {
6360
+ break;
6361
+ }
6362
+ reader.skipType(tag & 7);
6363
+ }
6364
+ return message;
6365
+ },
6366
+ fromJSON(object) {
6367
+ return { key: isSet(object.key) ? String(object.key) : "", value: isSet(object.value) ? String(object.value) : "" };
6368
+ },
6369
+ toJSON(message) {
6370
+ const obj = {};
6371
+ if (message.key !== "") {
6372
+ obj.key = message.key;
6373
+ }
6374
+ if (message.value !== "") {
6375
+ obj.value = message.value;
6376
+ }
6377
+ return obj;
6378
+ },
6379
+ create(base) {
6380
+ return KeyValue.fromPartial(base !== null && base !== void 0 ? base : {});
6381
+ },
6382
+ fromPartial(object) {
6383
+ var _a, _b;
6384
+ const message = createBaseKeyValue();
6385
+ message.key = (_a = object.key) !== null && _a !== void 0 ? _a : "";
6386
+ message.value = (_b = object.value) !== null && _b !== void 0 ? _b : "";
6387
+ return message;
6388
+ },
6389
+ };
6332
6390
  const FlagSyncServiceService = {
6333
6391
  syncFlags: {
6334
- path: "/sync.v1.FlagSyncService/SyncFlags",
6392
+ path: "/flagd.sync.v1.FlagSyncService/SyncFlags",
6335
6393
  requestStream: false,
6336
6394
  responseStream: true,
6337
6395
  requestSerialize: (value) => Buffer.from(SyncFlagsRequest.encode(value).finish()),
@@ -6340,7 +6398,7 @@ const FlagSyncServiceService = {
6340
6398
  responseDeserialize: (value) => SyncFlagsResponse.decode(value),
6341
6399
  },
6342
6400
  fetchAllFlags: {
6343
- path: "/sync.v1.FlagSyncService/FetchAllFlags",
6401
+ path: "/flagd.sync.v1.FlagSyncService/FetchAllFlags",
6344
6402
  requestStream: false,
6345
6403
  responseStream: false,
6346
6404
  requestSerialize: (value) => Buffer.from(FetchAllFlagsRequest.encode(value).finish()),
@@ -6348,8 +6406,17 @@ const FlagSyncServiceService = {
6348
6406
  responseSerialize: (value) => Buffer.from(FetchAllFlagsResponse.encode(value).finish()),
6349
6407
  responseDeserialize: (value) => FetchAllFlagsResponse.decode(value),
6350
6408
  },
6409
+ getMetadata: {
6410
+ path: "/flagd.sync.v1.FlagSyncService/GetMetadata",
6411
+ requestStream: false,
6412
+ responseStream: false,
6413
+ requestSerialize: (value) => Buffer.from(GetMetadataRequest.encode(value).finish()),
6414
+ requestDeserialize: (value) => GetMetadataRequest.decode(value),
6415
+ responseSerialize: (value) => Buffer.from(GetMetadataResponse.encode(value).finish()),
6416
+ responseDeserialize: (value) => GetMetadataResponse.decode(value),
6417
+ },
6351
6418
  };
6352
- const FlagSyncServiceClient = makeGenericClientConstructor(FlagSyncServiceService, "sync.v1.FlagSyncService");
6419
+ const FlagSyncServiceClient = makeGenericClientConstructor(FlagSyncServiceService, "flagd.sync.v1.FlagSyncService");
6353
6420
  function isSet(value) {
6354
6421
  return value !== null && value !== undefined;
6355
6422
  }
@@ -6395,39 +6462,47 @@ class GrpcFetch {
6395
6462
  var _a;
6396
6463
  (_a = this._logger) === null || _a === void 0 ? void 0 : _a.debug('Starting gRPC sync connection');
6397
6464
  closeStreamIfDefined(this._syncStream);
6398
- this._syncStream = this._syncClient.syncFlags(this._request);
6399
- this._syncStream.on('data', (data) => {
6400
- var _a, _b, _c, _d;
6401
- (_a = this._logger) === null || _a === void 0 ? void 0 : _a.debug(`Received sync payload`);
6402
- try {
6403
- const changes = dataCallback(data.flagConfiguration);
6404
- if (this._initialized && changes.length > 0) {
6405
- changedCallback(changes);
6465
+ try {
6466
+ this._syncStream = this._syncClient.syncFlags(this._request);
6467
+ this._syncStream.on('data', (data) => {
6468
+ var _a, _b, _c, _d;
6469
+ (_a = this._logger) === null || _a === void 0 ? void 0 : _a.debug(`Received sync payload`);
6470
+ try {
6471
+ const changes = dataCallback(data.flagConfiguration);
6472
+ if (this._initialized && changes.length > 0) {
6473
+ changedCallback(changes);
6474
+ }
6406
6475
  }
6407
- }
6408
- catch (err) {
6409
- (_b = this._logger) === null || _b === void 0 ? void 0 : _b.debug('Error processing sync payload: ', (_c = err === null || err === void 0 ? void 0 : err.message) !== null && _c !== void 0 ? _c : 'unknown error');
6410
- }
6411
- if (resolveConnect) {
6412
- resolveConnect();
6413
- }
6414
- else if (!this._isConnected) {
6415
- // Not the first connection and there's no active connection.
6416
- (_d = this._logger) === null || _d === void 0 ? void 0 : _d.debug('Reconnected to gRPC sync');
6417
- reconnectCallback();
6418
- }
6419
- this._isConnected = true;
6420
- });
6421
- this._syncStream.on('error', (err) => {
6422
- var _a, _b, _c;
6423
- (_a = this._logger) === null || _a === void 0 ? void 0 : _a.error('Connection error, attempting to reconnect');
6424
- (_b = this._logger) === null || _b === void 0 ? void 0 : _b.debug(err);
6425
- this._isConnected = false;
6426
- const errorMessage = (_c = err === null || err === void 0 ? void 0 : err.message) !== null && _c !== void 0 ? _c : 'Failed to connect to syncFlags stream';
6427
- disconnectCallback(errorMessage);
6428
- rejectConnect === null || rejectConnect === void 0 ? void 0 : rejectConnect(new GeneralError(errorMessage));
6429
- this.reconnect(dataCallback, reconnectCallback, changedCallback, disconnectCallback);
6430
- });
6476
+ catch (err) {
6477
+ (_b = this._logger) === null || _b === void 0 ? void 0 : _b.debug('Error processing sync payload: ', (_c = err === null || err === void 0 ? void 0 : err.message) !== null && _c !== void 0 ? _c : 'unknown error');
6478
+ }
6479
+ if (resolveConnect) {
6480
+ resolveConnect();
6481
+ }
6482
+ else if (!this._isConnected) {
6483
+ // Not the first connection and there's no active connection.
6484
+ (_d = this._logger) === null || _d === void 0 ? void 0 : _d.debug('Reconnected to gRPC sync');
6485
+ reconnectCallback();
6486
+ }
6487
+ this._isConnected = true;
6488
+ });
6489
+ this._syncStream.on('error', (err) => {
6490
+ this.handleError(err, dataCallback, reconnectCallback, changedCallback, disconnectCallback, rejectConnect);
6491
+ });
6492
+ }
6493
+ catch (err) {
6494
+ this.handleError(err, dataCallback, reconnectCallback, changedCallback, disconnectCallback, rejectConnect);
6495
+ }
6496
+ }
6497
+ handleError(err, dataCallback, reconnectCallback, changedCallback, disconnectCallback, rejectConnect) {
6498
+ var _a, _b, _c;
6499
+ (_a = this._logger) === null || _a === void 0 ? void 0 : _a.error('Connection error, attempting to reconnect');
6500
+ (_b = this._logger) === null || _b === void 0 ? void 0 : _b.debug(err);
6501
+ this._isConnected = false;
6502
+ const errorMessage = (_c = err === null || err === void 0 ? void 0 : err.message) !== null && _c !== void 0 ? _c : 'Failed to connect to syncFlags stream';
6503
+ disconnectCallback(errorMessage);
6504
+ rejectConnect === null || rejectConnect === void 0 ? void 0 : rejectConnect(new GeneralError(errorMessage));
6505
+ this.reconnect(dataCallback, reconnectCallback, changedCallback, disconnectCallback);
6431
6506
  }
6432
6507
  reconnect(dataCallback, reconnectCallback, changedCallback, disconnectCallback) {
6433
6508
  const channel = this._syncClient.getChannel();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openfeature/flagd-provider",
3
- "version": "0.10.5",
3
+ "version": "0.11.0",
4
4
  "scripts": {
5
5
  "publish-if-not-exists": "cp $NPM_CONFIG_USERCONFIG .npmrc && if [ \"$(npm show $npm_package_name@$npm_package_version version)\" = \"$(npm run current-version -s)\" ]; then echo 'already published, skipping'; else npm publish --access public; fi",
6
6
  "current-version": "echo $npm_package_version"
@@ -12,7 +12,7 @@
12
12
  "util": "0.12.5"
13
13
  },
14
14
  "peerDependencies": {
15
- "@grpc/grpc-js": "~1.8.0 || ~1.9.0",
15
+ "@grpc/grpc-js": "~1.8.0 || ~1.9.0 || ~1.10.0",
16
16
  "@openfeature/server-sdk": ">=1.8.0"
17
17
  },
18
18
  "exports": {
@@ -0,0 +1,4 @@
1
+ export declare const FLAGD_NAME = "flagd Provider";
2
+ export declare const E2E_CLIENT_NAME = "e2e";
3
+ export declare const UNSTABLE_CLIENT_NAME = "unstable";
4
+ export declare const UNAVAILABLE_CLIENT_NAME = "unavailable";
@@ -1,5 +1,5 @@
1
1
  import { EvaluationContext, JsonValue, Logger, ResolutionDetails } from '@openfeature/server-sdk';
2
- import { ServiceClient } from '../../../proto/ts/schema/v1/schema';
2
+ import { ServiceClient } from '../../../proto/ts/flagd/evaluation/v1/evaluation';
3
3
  import { Config } from '../../configuration';
4
4
  import { Service } from '../service';
5
5
  interface FlagChange {
@@ -1,5 +1,5 @@
1
1
  import { Logger } from '@openfeature/core';
2
- import { FlagSyncServiceClient } from '../../../../proto/ts/sync/v1/sync_service';
2
+ import { FlagSyncServiceClient } from '../../../../proto/ts/flagd/sync/v1/sync';
3
3
  import { Config } from '../../../configuration';
4
4
  import { DataFetch } from '../data-fetch';
5
5
  /**
@@ -26,5 +26,6 @@ export declare class GrpcFetch implements DataFetch {
26
26
  connect(dataCallback: (flags: string) => string[], reconnectCallback: () => void, changedCallback: (flagsChanged: string[]) => void, disconnectCallback: (message: string) => void): Promise<void>;
27
27
  disconnect(): Promise<void>;
28
28
  private listen;
29
+ private handleError;
29
30
  private reconnect;
30
31
  }