@omnitronix/rng-client-core 1.0.7 → 1.0.9

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.
Files changed (34) hide show
  1. package/dist/errors/rng-errors.d.ts +19 -0
  2. package/dist/errors/rng-errors.d.ts.map +1 -0
  3. package/dist/errors/rng-errors.js +97 -0
  4. package/dist/errors/rng-errors.js.map +1 -0
  5. package/dist/grpc/grpc-rng-client.d.ts.map +1 -1
  6. package/dist/grpc/grpc-rng-client.js +39 -13
  7. package/dist/grpc/grpc-rng-client.js.map +1 -1
  8. package/dist/http/http-rng-client.d.ts.map +1 -1
  9. package/dist/http/http-rng-client.js +25 -6
  10. package/dist/http/http-rng-client.js.map +1 -1
  11. package/dist/http/rest-client.d.ts.map +1 -1
  12. package/dist/http/rest-client.js +23 -0
  13. package/dist/http/rest-client.js.map +1 -1
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +7 -1
  17. package/dist/index.js.map +1 -1
  18. package/dist/ring-buffer/ring-buffer.d.ts +1 -1
  19. package/dist/ring-buffer/ring-buffer.d.ts.map +1 -1
  20. package/dist/ring-buffer/ring-buffer.js +2 -2
  21. package/dist/ring-buffer/ring-buffer.js.map +1 -1
  22. package/dist/ring-buffer/ring-storage-memory.d.ts +1 -1
  23. package/dist/ring-buffer/ring-storage-memory.d.ts.map +1 -1
  24. package/dist/ring-buffer/ring-storage-memory.js +5 -5
  25. package/dist/ring-buffer/ring-storage-memory.js.map +1 -1
  26. package/dist/ring-buffer/ring-storage.d.ts +1 -1
  27. package/dist/ring-buffer/ring-storage.d.ts.map +1 -1
  28. package/dist/ring-buffer/ring-storage.js +2 -2
  29. package/dist/ring-buffer/ring-storage.js.map +1 -1
  30. package/dist/rng-client.d.ts +12 -0
  31. package/dist/rng-client.d.ts.map +1 -1
  32. package/dist/rng-client.js +32 -3
  33. package/dist/rng-client.js.map +1 -1
  34. package/package.json +1 -1
@@ -0,0 +1,19 @@
1
+ export declare class RngServiceError extends Error {
2
+ readonly code: string;
3
+ readonly originalError?: unknown | undefined;
4
+ constructor(message: string, code: string, originalError?: unknown | undefined);
5
+ }
6
+ export declare class RngConnectionError extends RngServiceError {
7
+ constructor(message?: string, originalError?: unknown);
8
+ }
9
+ export declare class HttpConnectionError extends Error {
10
+ readonly originalError?: unknown | undefined;
11
+ constructor(message?: string, originalError?: unknown | undefined);
12
+ }
13
+ export declare class HttpServiceError extends Error {
14
+ readonly statusCode: number;
15
+ readonly originalError?: unknown | undefined;
16
+ constructor(message: string, statusCode: number, originalError?: unknown | undefined);
17
+ }
18
+ export declare function handleGrpcError(err: unknown, operation: string, grpcUrl?: string): never;
19
+ //# sourceMappingURL=rng-errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rng-errors.d.ts","sourceRoot":"","sources":["../../src/errors/rng-errors.ts"],"names":[],"mappings":"AAEA,qBAAa,eAAgB,SAAQ,KAAK;aAGtB,IAAI,EAAE,MAAM;aACZ,aAAa,CAAC,EAAE,OAAO;gBAFvC,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,OAAO,YAAA;CAK1C;AAED,qBAAa,kBAAmB,SAAQ,eAAe;gBAEnD,OAAO,GAAE,MAA2C,EACpD,aAAa,CAAC,EAAE,OAAO;CAK1B;AAED,qBAAa,mBAAoB,SAAQ,KAAK;aAG1B,aAAa,CAAC,EAAE,OAAO;gBADvC,OAAO,GAAE,MAA2C,EACpC,aAAa,CAAC,EAAE,OAAO,YAAA;CAK1C;AAED,qBAAa,gBAAiB,SAAQ,KAAK;aAGvB,UAAU,EAAE,MAAM;aAClB,aAAa,CAAC,EAAE,OAAO;gBAFvC,OAAO,EAAE,MAAM,EACC,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,OAAO,YAAA;CAK1C;AAED,wBAAgB,eAAe,CAC7B,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,GACf,KAAK,CA+CP"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.HttpServiceError = exports.HttpConnectionError = exports.RngConnectionError = exports.RngServiceError = void 0;
37
+ exports.handleGrpcError = handleGrpcError;
38
+ const grpc = __importStar(require("@grpc/grpc-js"));
39
+ class RngServiceError extends Error {
40
+ constructor(message, code, originalError) {
41
+ super(message);
42
+ this.code = code;
43
+ this.originalError = originalError;
44
+ this.name = "RngServiceError";
45
+ }
46
+ }
47
+ exports.RngServiceError = RngServiceError;
48
+ class RngConnectionError extends RngServiceError {
49
+ constructor(message = "Unable to connect to RNG service", originalError) {
50
+ super(message, "SERVICE_UNAVAILABLE", originalError);
51
+ this.name = "RngConnectionError";
52
+ }
53
+ }
54
+ exports.RngConnectionError = RngConnectionError;
55
+ class HttpConnectionError extends Error {
56
+ constructor(message = "Unable to connect to RNG service", originalError) {
57
+ super(message);
58
+ this.originalError = originalError;
59
+ this.name = "HttpConnectionError";
60
+ }
61
+ }
62
+ exports.HttpConnectionError = HttpConnectionError;
63
+ class HttpServiceError extends Error {
64
+ constructor(message, statusCode, originalError) {
65
+ super(message);
66
+ this.statusCode = statusCode;
67
+ this.originalError = originalError;
68
+ this.name = "HttpServiceError";
69
+ }
70
+ }
71
+ exports.HttpServiceError = HttpServiceError;
72
+ function handleGrpcError(err, operation, grpcUrl) {
73
+ console.log(`RNG Client gRPC Error in ${operation}:`, err);
74
+ if (err && typeof err === "object" && "code" in err) {
75
+ const grpcError = err;
76
+ if (grpcError.code === grpc.status.UNAVAILABLE ||
77
+ grpcError.code === grpc.status.DEADLINE_EXCEEDED ||
78
+ grpcError.code === grpc.status.UNKNOWN ||
79
+ grpcError.code === grpc.status.INTERNAL) {
80
+ throw new RngConnectionError(grpcUrl
81
+ ? `Unable to connect to RNG service at ${grpcUrl}`
82
+ : "Unable to connect to RNG service", err);
83
+ }
84
+ throw new RngServiceError(grpcError.details || grpcError.message || "Unknown gRPC error occurred", grpcError.code?.toString() || "UNKNOWN", err);
85
+ }
86
+ if (err instanceof Error) {
87
+ if (err.message.includes("ECONNREFUSED") ||
88
+ err.message.includes("ENOTFOUND") ||
89
+ err.message.includes("timeout")) {
90
+ throw new RngConnectionError(grpcUrl
91
+ ? `Unable to connect to RNG service at ${grpcUrl}`
92
+ : "Unable to connect to RNG service", err);
93
+ }
94
+ }
95
+ throw new RngServiceError("An unexpected error occurred while communicating with the RNG service", "UNKNOWN", err);
96
+ }
97
+ //# sourceMappingURL=rng-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rng-errors.js","sourceRoot":"","sources":["../../src/errors/rng-errors.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CA,0CAmDC;AA/FD,oDAAsC;AAEtC,MAAa,eAAgB,SAAQ,KAAK;IACxC,YACE,OAAe,EACC,IAAY,EACZ,aAAuB;QAEvC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAAQ;QACZ,kBAAa,GAAb,aAAa,CAAU;QAGvC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AATD,0CASC;AAED,MAAa,kBAAmB,SAAQ,eAAe;IACrD,YACE,UAAkB,kCAAkC,EACpD,aAAuB;QAEvB,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,aAAa,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AARD,gDAQC;AAED,MAAa,mBAAoB,SAAQ,KAAK;IAC5C,YACE,UAAkB,kCAAkC,EACpC,aAAuB;QAEvC,KAAK,CAAC,OAAO,CAAC,CAAC;QAFC,kBAAa,GAAb,aAAa,CAAU;QAGvC,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AARD,kDAQC;AAED,MAAa,gBAAiB,SAAQ,KAAK;IACzC,YACE,OAAe,EACC,UAAkB,EAClB,aAAuB;QAEvC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,eAAU,GAAV,UAAU,CAAQ;QAClB,kBAAa,GAAb,aAAa,CAAU;QAGvC,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AATD,4CASC;AAED,SAAgB,eAAe,CAC7B,GAAY,EACZ,SAAiB,EACjB,OAAgB;IAEhB,OAAO,CAAC,GAAG,CAAC,4BAA4B,SAAS,GAAG,EAAE,GAAG,CAAC,CAAC;IAE3D,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;QACpD,MAAM,SAAS,GAAG,GAAwB,CAAC;QAE3C,IACE,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW;YAC1C,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,iBAAiB;YAChD,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO;YACtC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,EACvC,CAAC;YACD,MAAM,IAAI,kBAAkB,CAC1B,OAAO;gBACL,CAAC,CAAC,uCAAuC,OAAO,EAAE;gBAClD,CAAC,CAAC,kCAAkC,EACtC,GAAG,CACJ,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,eAAe,CACvB,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,IAAI,6BAA6B,EACvE,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,SAAS,EACvC,GAAG,CACJ,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;QACzB,IACE,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;YACpC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;YACjC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAC/B,CAAC;YACD,MAAM,IAAI,kBAAkB,CAC1B,OAAO;gBACL,CAAC,CAAC,uCAAuC,OAAO,EAAE;gBAClD,CAAC,CAAC,kCAAkC,EACtC,GAAG,CACJ,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,IAAI,eAAe,CACvB,uEAAuE,EACvE,SAAS,EACT,GAAG,CACJ,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-rng-client.d.ts","sourceRoot":"","sources":["../../src/grpc/grpc-rng-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,2BAA2B,CAAC;AAKnC,qBAAa,aAAc,YAAW,kBAAkB;IACtD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,EAAE,MAAM;IAkBrB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgBtE,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAgBpE,cAAc,CAClB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,iBAAiB,CAAC;IAgBvB,cAAc,CAClB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IAgBtB,wBAAwB,CAC5B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,yBAAyB,CAAC;IAmB/B,sBAAsB,CAC1B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,yBAAyB,CAAC;CAkBtC"}
1
+ {"version":3,"file":"grpc-rng-client.d.ts","sourceRoot":"","sources":["../../src/grpc/grpc-rng-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,2BAA2B,CAAC;AAMnC,qBAAa,aAAc,YAAW,kBAAkB;IACtD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,EAAE,MAAM;IAmBrB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmBtE,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAmBpE,cAAc,CAClB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,iBAAiB,CAAC;IAmBvB,cAAc,CAClB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IAmBtB,wBAAwB,CAC5B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,yBAAyB,CAAC;IAmB/B,sBAAsB,CAC1B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,yBAAyB,CAAC;CAkBtC"}
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.GrpcRngClient = void 0;
37
37
  const grpc = __importStar(require("@grpc/grpc-js"));
38
38
  const protoLoader = __importStar(require("@grpc/proto-loader"));
39
+ const rng_errors_1 = require("../errors/rng-errors");
39
40
  const PROTO_PATH = __dirname + "/../rng.proto";
40
41
  class GrpcRngClient {
41
42
  constructor(grpcUrl) {
@@ -47,15 +48,20 @@ class GrpcRngClient {
47
48
  defaults: true,
48
49
  oneofs: true,
49
50
  });
50
- const rngProto = grpc.loadPackageDefinition(packageDefinition).rng;
51
+ const rngProto = grpc.loadPackageDefinition(packageDefinition)
52
+ .rng;
51
53
  this.client = new rngProto.RngService(this.grpcUrl, grpc.credentials.createInsecure());
52
54
  }
53
55
  async getSingleNumber(request) {
54
56
  return new Promise((resolve, reject) => {
55
57
  this.client.Single(request, (err, response) => {
56
58
  if (err) {
57
- console.log("RNG Client gRPC Error in getSingleNumber: ", err);
58
- reject(err);
59
+ try {
60
+ (0, rng_errors_1.handleGrpcError)(err, "getSingleNumber", this.grpcUrl);
61
+ }
62
+ catch (error) {
63
+ reject(error);
64
+ }
59
65
  }
60
66
  else {
61
67
  resolve(response);
@@ -67,8 +73,12 @@ class GrpcRngClient {
67
73
  return new Promise((resolve, reject) => {
68
74
  this.client.SingleBatch(request, (err, response) => {
69
75
  if (err) {
70
- console.log("RNG Client gRPC Error in getSingleNumber: ", err);
71
- reject(err);
76
+ try {
77
+ (0, rng_errors_1.handleGrpcError)(err, "getBatchNumbers", this.grpcUrl);
78
+ }
79
+ catch (error) {
80
+ reject(error);
81
+ }
72
82
  }
73
83
  else {
74
84
  resolve(response);
@@ -80,8 +90,12 @@ class GrpcRngClient {
80
90
  return new Promise((resolve, reject) => {
81
91
  this.client.Float(request, (err, response) => {
82
92
  if (err) {
83
- console.log("RNG Client gRPC Error in getSingleFloat: ", err);
84
- reject(err);
93
+ try {
94
+ (0, rng_errors_1.handleGrpcError)(err, "getSingleFloat", this.grpcUrl);
95
+ }
96
+ catch (error) {
97
+ reject(error);
98
+ }
85
99
  }
86
100
  else {
87
101
  resolve(response);
@@ -93,8 +107,12 @@ class GrpcRngClient {
93
107
  return new Promise((resolve, reject) => {
94
108
  this.client.FloatBatch(request, (err, response) => {
95
109
  if (err) {
96
- console.log("RNG Client gRPC Error in getBatchFloats: ", err);
97
- reject(err);
110
+ try {
111
+ (0, rng_errors_1.handleGrpcError)(err, "getBatchFloats", this.grpcUrl);
112
+ }
113
+ catch (error) {
114
+ reject(error);
115
+ }
98
116
  }
99
117
  else {
100
118
  resolve(response);
@@ -106,8 +124,12 @@ class GrpcRngClient {
106
124
  return new Promise((resolve, reject) => {
107
125
  this.client.SingleBatchWithSeeds(request, (err, response) => {
108
126
  if (err) {
109
- console.log("RNG Client gRPC Error in getBatchNumbersWithSeeds: ", err);
110
- reject(err);
127
+ try {
128
+ (0, rng_errors_1.handleGrpcError)(err, "getBatchNumbersWithSeeds", this.grpcUrl);
129
+ }
130
+ catch (error) {
131
+ reject(error);
132
+ }
111
133
  }
112
134
  else {
113
135
  resolve(response);
@@ -119,8 +141,12 @@ class GrpcRngClient {
119
141
  return new Promise((resolve, reject) => {
120
142
  this.client.FloatBatchWithSeeds(request, (err, response) => {
121
143
  if (err) {
122
- console.log("RNG Client gRPC Error in getBatchFloatWithSeeds: ", err);
123
- reject(err);
144
+ try {
145
+ (0, rng_errors_1.handleGrpcError)(err, "getBatchFloatWithSeeds", this.grpcUrl);
146
+ }
147
+ catch (error) {
148
+ reject(error);
149
+ }
124
150
  }
125
151
  else {
126
152
  resolve(response);
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-rng-client.js","sourceRoot":"","sources":["../../src/grpc/grpc-rng-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grpc-rng-client.js","sourceRoot":"","sources":["../../src/grpc/grpc-rng-client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"http-rng-client.d.ts","sourceRoot":"","sources":["../../src/http/http-rng-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,aAAc,SAAQ,UAAW,YAAW,kBAAkB;gBAC7D,OAAO,EAAE,MAAM;IAIrB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAetE,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAepE,cAAc,CAClB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,iBAAiB,CAAC;IAevB,cAAc,CAClB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IAetB,wBAAwB,CAC5B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,yBAAyB,CAAC;IAe/B,sBAAsB,CAC1B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,yBAAyB,CAAC;CActC"}
1
+ {"version":3,"file":"http-rng-client.d.ts","sourceRoot":"","sources":["../../src/http/http-rng-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,qBAAa,aAAc,SAAQ,UAAW,YAAW,kBAAkB;gBAC7D,OAAO,EAAE,MAAM;IAIrB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmBtE,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAmBpE,cAAc,CAClB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,iBAAiB,CAAC;IAmBvB,cAAc,CAClB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IAmBtB,wBAAwB,CAC5B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,yBAAyB,CAAC;IAmB/B,sBAAsB,CAC1B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,yBAAyB,CAAC;CAkBtC"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.HttpRngClient = void 0;
4
4
  const rest_client_1 = require("./rest-client");
5
+ const rng_errors_1 = require("../errors/rng-errors");
5
6
  class HttpRngClient extends rest_client_1.RestClient {
6
7
  constructor(baseUrl) {
7
8
  super(baseUrl);
@@ -9,42 +10,60 @@ class HttpRngClient extends rest_client_1.RestClient {
9
10
  async getSingleNumber(request) {
10
11
  const response = await this.post("/api/rng/single", request);
11
12
  if (!response.success) {
12
- throw new Error(`HTTP error! status: ${response.statusCode}, message: ${response.message}`);
13
+ if (response.error === "ConnectionError" || response.statusCode === 503) {
14
+ throw new rng_errors_1.HttpConnectionError(response.message);
15
+ }
16
+ throw new rng_errors_1.HttpServiceError(response.message || `HTTP error! status: ${response.statusCode}`, response.statusCode);
13
17
  }
14
18
  return response.data;
15
19
  }
16
20
  async getBatchNumbers(request) {
17
21
  const response = await this.post("/api/rng/batch", request);
18
22
  if (!response.success) {
19
- throw new Error(`HTTP error! status: ${response.statusCode}, message: ${response.message}`);
23
+ if (response.error === "ConnectionError" || response.statusCode === 503) {
24
+ throw new rng_errors_1.HttpConnectionError(response.message);
25
+ }
26
+ throw new rng_errors_1.HttpServiceError(response.message || `HTTP error! status: ${response.statusCode}`, response.statusCode);
20
27
  }
21
28
  return response.data;
22
29
  }
23
30
  async getSingleFloat(request) {
24
31
  const response = await this.post("/api/rng/float", request);
25
32
  if (!response.success) {
26
- throw new Error(`HTTP error! status: ${response.statusCode}, message: ${response.message}`);
33
+ if (response.error === "ConnectionError" || response.statusCode === 503) {
34
+ throw new rng_errors_1.HttpConnectionError(response.message);
35
+ }
36
+ throw new rng_errors_1.HttpServiceError(response.message || `HTTP error! status: ${response.statusCode}`, response.statusCode);
27
37
  }
28
38
  return response.data;
29
39
  }
30
40
  async getBatchFloats(request) {
31
41
  const response = await this.post("/api/rng/batch/float", request);
32
42
  if (!response.success) {
33
- throw new Error(`HTTP error! status: ${response.statusCode}, message: ${response.message}`);
43
+ if (response.error === "ConnectionError" || response.statusCode === 503) {
44
+ throw new rng_errors_1.HttpConnectionError(response.message);
45
+ }
46
+ throw new rng_errors_1.HttpServiceError(response.message || `HTTP error! status: ${response.statusCode}`, response.statusCode);
34
47
  }
35
48
  return response.data;
36
49
  }
37
50
  async getBatchNumbersWithSeeds(request) {
38
51
  const response = await this.post("/api/rng/batch/with-seeds", request);
39
52
  if (!response.success) {
40
- throw new Error(`HTTP error! status: ${response.statusCode}, message: ${response.message}`);
53
+ if (response.error === "ConnectionError" || response.statusCode === 503) {
54
+ throw new rng_errors_1.HttpConnectionError(response.message);
55
+ }
56
+ throw new rng_errors_1.HttpServiceError(response.message || `HTTP error! status: ${response.statusCode}`, response.statusCode);
41
57
  }
42
58
  return response.data;
43
59
  }
44
60
  async getBatchFloatWithSeeds(request) {
45
61
  const response = await this.post("/api/rng/batch/float/with-seeds", request);
46
62
  if (!response.success) {
47
- throw new Error(`HTTP error! status: ${response.statusCode}, message: ${response.message}`);
63
+ if (response.error === "ConnectionError" || response.statusCode === 503) {
64
+ throw new rng_errors_1.HttpConnectionError(response.message);
65
+ }
66
+ throw new rng_errors_1.HttpServiceError(response.message || `HTTP error! status: ${response.statusCode}`, response.statusCode);
48
67
  }
49
68
  return response.data;
50
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"http-rng-client.js","sourceRoot":"","sources":["../../src/http/http-rng-client.ts"],"names":[],"mappings":";;;AAUA,+CAA2C;AAE3C,MAAa,aAAc,SAAQ,wBAAU;IAC3C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAyB;QAC7C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAC9B,iBAAiB,EACjB,OAAO,CACR,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,uBAAuB,QAAQ,CAAC,UAAU,cAAc,QAAQ,CAAC,OAAO,EAAE,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAwB;QAC5C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAC9B,gBAAgB,EAChB,OAAO,CACR,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,uBAAuB,QAAQ,CAAC,UAAU,cAAc,QAAQ,CAAC,OAAO,EAAE,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,OAA8B;QAE9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAC9B,gBAAgB,EAChB,OAAO,CACR,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,uBAAuB,QAAQ,CAAC,UAAU,cAAc,QAAQ,CAAC,OAAO,EAAE,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,OAA6B;QAE7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAC9B,sBAAsB,EACtB,OAAO,CACR,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,uBAAuB,QAAQ,CAAC,UAAU,cAAc,QAAQ,CAAC,OAAO,EAAE,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,OAAwB;QAExB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAC9B,2BAA2B,EAC3B,OAAO,CACR,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,uBAAuB,QAAQ,CAAC,UAAU,cAAc,QAAQ,CAAC,OAAO,EAAE,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,OAA8B;QAE9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAC9B,iCAAiC,EACjC,OAAO,CACR,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,uBAAuB,QAAQ,CAAC,UAAU,cAAc,QAAQ,CAAC,OAAO,EAAE,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;CACF;AAtGD,sCAsGC"}
1
+ {"version":3,"file":"http-rng-client.js","sourceRoot":"","sources":["../../src/http/http-rng-client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rest-client.d.ts","sourceRoot":"","sources":["../../src/http/rest-client.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,IAAI;IACxC,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,CAAC,CAAC;CACV;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,IAC/B,kBAAkB,CAAC,CAAC,CAAC,GACrB,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAExB,qBAAa,UAAU;IACrB,OAAO,CAAC,UAAU,CAAgB;gBAEtB,OAAO,EAAE,MAAM;IAU3B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,gBAAgB;YAwCV,aAAa;IAWd,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAC1B,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAIhB,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAC3B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAIhB,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAC1B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAIhB,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAG1E"}
1
+ {"version":3,"file":"rest-client.d.ts","sourceRoot":"","sources":["../../src/http/rest-client.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,IAAI;IACxC,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,CAAC,CAAC;CACV;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,IAC/B,kBAAkB,CAAC,CAAC,CAAC,GACrB,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAExB,qBAAa,UAAU;IACrB,OAAO,CAAC,UAAU,CAAgB;gBAEtB,OAAO,EAAE,MAAM;IAU3B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,gBAAgB;YAqEV,aAAa;IAWd,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAC1B,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAIhB,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAC3B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAIhB,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAC1B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAIhB,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAG1E"}
@@ -26,6 +26,19 @@ class RestClient {
26
26
  const axiosError = error;
27
27
  const status = axiosError.response?.status || 500;
28
28
  const data = axiosError.response?.data ?? {};
29
+ if (axiosError.code === "ECONNREFUSED" ||
30
+ axiosError.code === "ENOTFOUND" ||
31
+ axiosError.code === "ETIMEDOUT" ||
32
+ axiosError.message.includes("timeout") ||
33
+ axiosError.message.includes("ECONNREFUSED") ||
34
+ axiosError.message.includes("ENOTFOUND")) {
35
+ return {
36
+ success: false,
37
+ error: "ConnectionError",
38
+ message: "Unable to connect to RNG service",
39
+ statusCode: 503,
40
+ };
41
+ }
29
42
  if (this.isApiErrorData(data)) {
30
43
  return {
31
44
  success: false,
@@ -44,6 +57,16 @@ class RestClient {
44
57
  };
45
58
  }
46
59
  else if (error instanceof Error) {
60
+ if (error.message.includes("ECONNREFUSED") ||
61
+ error.message.includes("ENOTFOUND") ||
62
+ error.message.includes("timeout")) {
63
+ return {
64
+ success: false,
65
+ error: "ConnectionError",
66
+ message: "Unable to connect to RNG service",
67
+ statusCode: 503,
68
+ };
69
+ }
47
70
  return {
48
71
  success: false,
49
72
  error: "UnexpectedError",
@@ -1 +1 @@
1
- {"version":3,"file":"rest-client.js","sourceRoot":"","sources":["../../src/http/rest-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rest-client.js","sourceRoot":"","sources":["../../src/http/rest-client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export { RngClient } from "./rng-client";
2
2
  export { HttpRngClient } from "./http/http-rng-client";
3
3
  export { GrpcRngClient } from "./grpc/grpc-rng-client";
4
+ export { RngServiceError, RngConnectionError, HttpConnectionError, HttpServiceError, handleGrpcError, } from "./errors/rng-errors";
4
5
  export type { RngClientConfig, ClientMethod, } from "./interfaces/client-interfaces";
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,YAAY,EACV,eAAe,EACf,YAAY,GACb,MAAM,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAG7B,YAAY,EACV,eAAe,EACf,YAAY,GACb,MAAM,gCAAgC,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GrpcRngClient = exports.HttpRngClient = exports.RngClient = void 0;
3
+ exports.handleGrpcError = exports.HttpServiceError = exports.HttpConnectionError = exports.RngConnectionError = exports.RngServiceError = exports.GrpcRngClient = exports.HttpRngClient = exports.RngClient = void 0;
4
4
  // Main API
5
5
  var rng_client_1 = require("./rng-client");
6
6
  Object.defineProperty(exports, "RngClient", { enumerable: true, get: function () { return rng_client_1.RngClient; } });
@@ -9,4 +9,10 @@ var http_rng_client_1 = require("./http/http-rng-client");
9
9
  Object.defineProperty(exports, "HttpRngClient", { enumerable: true, get: function () { return http_rng_client_1.HttpRngClient; } });
10
10
  var grpc_rng_client_1 = require("./grpc/grpc-rng-client");
11
11
  Object.defineProperty(exports, "GrpcRngClient", { enumerable: true, get: function () { return grpc_rng_client_1.GrpcRngClient; } });
12
+ var rng_errors_1 = require("./errors/rng-errors");
13
+ Object.defineProperty(exports, "RngServiceError", { enumerable: true, get: function () { return rng_errors_1.RngServiceError; } });
14
+ Object.defineProperty(exports, "RngConnectionError", { enumerable: true, get: function () { return rng_errors_1.RngConnectionError; } });
15
+ Object.defineProperty(exports, "HttpConnectionError", { enumerable: true, get: function () { return rng_errors_1.HttpConnectionError; } });
16
+ Object.defineProperty(exports, "HttpServiceError", { enumerable: true, get: function () { return rng_errors_1.HttpServiceError; } });
17
+ Object.defineProperty(exports, "handleGrpcError", { enumerable: true, get: function () { return rng_errors_1.handleGrpcError; } });
12
18
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,WAAW;AACX,2CAAyC;AAAhC,uGAAA,SAAS,OAAA;AAElB,UAAU;AACV,0DAAuD;AAA9C,gHAAA,aAAa,OAAA;AACtB,0DAAuD;AAA9C,gHAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,WAAW;AACX,2CAAyC;AAAhC,uGAAA,SAAS,OAAA;AAElB,UAAU;AACV,0DAAuD;AAA9C,gHAAA,aAAa,OAAA;AACtB,0DAAuD;AAA9C,gHAAA,aAAa,OAAA;AAEtB,kDAM6B;AAL3B,6GAAA,eAAe,OAAA;AACf,gHAAA,kBAAkB,OAAA;AAClB,iHAAA,mBAAmB,OAAA;AACnB,8GAAA,gBAAgB,OAAA;AAChB,6GAAA,eAAe,OAAA"}
@@ -15,7 +15,7 @@ export declare class RingBuffer {
15
15
  private storage;
16
16
  constructor({ size, clientCore, storageType }: RingBufferConfig);
17
17
  getStats(): Promise<RingBufferStats | undefined>;
18
- getNumberByRange(min: number, max: number): Promise<RingBufferValue | undefined>;
18
+ getNumbersByRange(min: number, max: number, count?: number): Promise<RingBufferValue[] | undefined>;
19
19
  fillUpBuffer(buffer: SingleRingBuffer): Promise<void>;
20
20
  pullNumberByBuffer(buffer: SingleRingBuffer): Promise<RingBufferValue[]>;
21
21
  createBuffer(min: number, max: number): SingleRingBuffer;
@@ -1 +1 @@
1
- {"version":3,"file":"ring-buffer.d.ts","sourceRoot":"","sources":["../../src/ring-buffer/ring-buffer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAe,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE1D,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAEtC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,aAAa,CAAC;IAC1B,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,OAAO,CAAc;gBAEjB,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,gBAAgB;IAQzD,QAAQ,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAIhD,gBAAgB,CACpB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAoBjC,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQrD,kBAAkB,CACtB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,eAAe,EAAE,CAAC;IAa7B,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB;CAMzD"}
1
+ {"version":3,"file":"ring-buffer.d.ts","sourceRoot":"","sources":["../../src/ring-buffer/ring-buffer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAe,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE1D,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAEtC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,aAAa,CAAC;IAC1B,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,OAAO,CAAc;gBAEjB,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,gBAAgB;IAQzD,QAAQ,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAIhD,iBAAiB,CACrB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,SAAI,GACR,OAAO,CAAC,eAAe,EAAE,GAAG,SAAS,CAAC;IAoBnC,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQrD,kBAAkB,CACtB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,eAAe,EAAE,CAAC;IAa7B,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB;CAMzD"}
@@ -14,7 +14,7 @@ class RingBuffer {
14
14
  async getStats() {
15
15
  return this.storage.getStats();
16
16
  }
17
- async getNumberByRange(min, max) {
17
+ async getNumbersByRange(min, max, count = 1) {
18
18
  const buffer = await this.storage.getBufferByRange(min, max);
19
19
  if (!buffer) {
20
20
  const newBuffer = this.createBuffer(min, max);
@@ -24,7 +24,7 @@ class RingBuffer {
24
24
  }, exports.FILL_UP_BUFFER_DELAY);
25
25
  return undefined;
26
26
  }
27
- const item = await this.storage.getFromBuffer(buffer);
27
+ const item = await this.storage.getFromBuffer(buffer, count);
28
28
  if (!item) {
29
29
  return undefined;
30
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ring-buffer.js","sourceRoot":"","sources":["../../src/ring-buffer/ring-buffer.ts"],"names":[],"mappings":";;;AAMA,iDAA0D;AAE7C,QAAA,oBAAoB,GAAG,CAAC,CAAC;AAQtC,MAAa,UAAU;IAOrB,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAoB;QAC7D,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,0BAAW,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,GAAW,EACX,GAAW;QAEX,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC9C,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACzC,UAAU,CAAC,KAAK,IAAI,EAAE;gBACpB,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACrC,CAAC,EAAE,4BAAoB,CAAC,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,UAAU,CAAC,KAAK,IAAI,EAAE;YACpB,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC,EAAE,4BAAoB,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAwB;QACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/D,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,MAAwB;QAExB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAC9C,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACf,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC;YAC5D,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG;YACrB,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG;YACrB,KAAK;SACN,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,MAA2B,CAAC;IAC5C,CAAC;IAED,YAAY,CAAC,GAAW,EAAE,GAAW;QACnC,OAAO;YACL,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;SACpB,CAAC;IACJ,CAAC;CACF;AAvED,gCAuEC"}
1
+ {"version":3,"file":"ring-buffer.js","sourceRoot":"","sources":["../../src/ring-buffer/ring-buffer.ts"],"names":[],"mappings":";;;AAMA,iDAA0D;AAE7C,QAAA,oBAAoB,GAAG,CAAC,CAAC;AAQtC,MAAa,UAAU;IAOrB,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAoB;QAC7D,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,0BAAW,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,GAAW,EACX,GAAW,EACX,KAAK,GAAG,CAAC;QAET,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC9C,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACzC,UAAU,CAAC,KAAK,IAAI,EAAE;gBACpB,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACrC,CAAC,EAAE,4BAAoB,CAAC,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,UAAU,CAAC,KAAK,IAAI,EAAE;YACpB,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC,EAAE,4BAAoB,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAwB;QACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/D,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,MAAwB;QAExB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAC9C,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACf,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC;YAC5D,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG;YACrB,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG;YACrB,KAAK;SACN,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,MAA2B,CAAC;IAC5C,CAAC;IAED,YAAY,CAAC,GAAW,EAAE,GAAW;QACnC,OAAO;YACL,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;SACpB,CAAC;IACJ,CAAC;CACF;AAxED,gCAwEC"}
@@ -6,7 +6,7 @@ export declare class RingStorageMemory {
6
6
  getBufferName(min: number, max: number): string;
7
7
  saveBuffer(buffer: SingleRingBuffer): Promise<void>;
8
8
  getBuffer(name: string): Promise<SingleRingBuffer>;
9
- getFromBuffer(name: string): Promise<RingBufferValue | undefined>;
9
+ getFromBuffer(name: string, count?: number): Promise<RingBufferValue[] | undefined>;
10
10
  addItemsToBuffer(buffer: SingleRingBuffer, items: RingBufferValue[]): Promise<void>;
11
11
  }
12
12
  //# sourceMappingURL=ring-storage-memory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ring-storage-memory.d.ts","sourceRoot":"","sources":["../../src/ring-buffer/ring-storage-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,cAAc,CAAC;AAEtB,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAsC;;IAM/C,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC;IAY1C,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAIzC,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnD,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIlD,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAejE,gBAAgB,CACpB,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,eAAe,EAAE,GACvB,OAAO,CAAC,IAAI,CAAC;CAIjB"}
1
+ {"version":3,"file":"ring-storage-memory.d.ts","sourceRoot":"","sources":["../../src/ring-buffer/ring-storage-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,cAAc,CAAC;AAEtB,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAsC;;IAM/C,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC;IAY1C,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAIzC,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnD,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIlD,aAAa,CACjB,IAAI,EAAE,MAAM,EACZ,KAAK,SAAI,GACR,OAAO,CAAC,eAAe,EAAE,GAAG,SAAS,CAAC;IAenC,gBAAgB,CACpB,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,eAAe,EAAE,GACvB,OAAO,CAAC,IAAI,CAAC;CAIjB"}
@@ -26,19 +26,19 @@ class RingStorageMemory {
26
26
  async getBuffer(name) {
27
27
  return this.storage[name];
28
28
  }
29
- async getFromBuffer(name) {
29
+ async getFromBuffer(name, count = 1) {
30
30
  const buffer = await this.getBuffer(name);
31
31
  if (!buffer) {
32
32
  return undefined;
33
33
  }
34
- if (buffer.items.length === 0) {
34
+ if (buffer.items.length < count) {
35
35
  return undefined;
36
36
  }
37
- const item = buffer.items.shift();
38
- if (!item) {
37
+ const items = buffer.items.splice(0, count);
38
+ if (items.length === 0) {
39
39
  return undefined;
40
40
  }
41
- return item;
41
+ return items;
42
42
  }
43
43
  async addItemsToBuffer(buffer, items) {
44
44
  buffer.items.push(...items);
@@ -1 +1 @@
1
- {"version":3,"file":"ring-storage-memory.js","sourceRoot":"","sources":["../../src/ring-buffer/ring-storage-memory.ts"],"names":[],"mappings":";;;AAMA,MAAa,iBAAiB;IAG5B;QACE,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,MAAM,GAA8B,EAAE,CAAC;QAC7C,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;QAC/C,CAAC;QACD,OAAO;YACL,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM;YACtC,MAAM;SACP,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,GAAW,EAAE,GAAW;QACpC,OAAO,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAwB;QACvC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClE,MAAM,CAAC;IACX,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAY;QAC9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,MAAwB,EACxB,KAAwB;QAExB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;QAC5B,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;CACF;AAtDD,8CAsDC"}
1
+ {"version":3,"file":"ring-storage-memory.js","sourceRoot":"","sources":["../../src/ring-buffer/ring-storage-memory.ts"],"names":[],"mappings":";;;AAMA,MAAa,iBAAiB;IAG5B;QACE,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,MAAM,GAA8B,EAAE,CAAC;QAC7C,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;QAC/C,CAAC;QACD,OAAO;YACL,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM;YACtC,MAAM;SACP,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,GAAW,EAAE,GAAW;QACpC,OAAO,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAwB;QACvC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClE,MAAM,CAAC;IACX,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,IAAY,EACZ,KAAK,GAAG,CAAC;QAET,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;YAChC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,MAAwB,EACxB,KAAwB;QAExB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;QAC5B,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;CACF;AAzDD,8CAyDC"}
@@ -8,7 +8,7 @@ export declare class RingStorage {
8
8
  private storage;
9
9
  constructor(storageType: StorageType);
10
10
  getStats(): Promise<RingBufferStats | undefined>;
11
- getFromBuffer(buffer: SingleRingBuffer): Promise<RingBufferValue | undefined>;
11
+ getFromBuffer(buffer: SingleRingBuffer, count?: number): Promise<RingBufferValue[] | undefined>;
12
12
  saveBuffer(buffer: SingleRingBuffer): Promise<void>;
13
13
  getBufferByRange(min: number, max: number): Promise<SingleRingBuffer | undefined>;
14
14
  getBuffer(name: string): Promise<SingleRingBuffer | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"ring-storage.d.ts","sourceRoot":"","sources":["../../src/ring-buffer/ring-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,cAAc,CAAC;AAGtB,oBAAY,WAAW;IACrB,SAAS,cAAc;IACvB,KAAK,UAAU;CAChB;AAED,qBAAa,WAAW;IAEV,OAAO,CAAC,QAAQ,CAAC,WAAW;IADxC,OAAO,CAAC,OAAO,CAAoB;gBACN,WAAW,EAAE,WAAW;IAI/C,QAAQ,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAOhD,aAAa,CACjB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IASjC,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,gBAAgB,CACpB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAOlC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAO9D,gBAAgB,CACpB,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,eAAe,EAAE,GACvB,OAAO,CAAC,IAAI,CAAC;CAKjB"}
1
+ {"version":3,"file":"ring-storage.d.ts","sourceRoot":"","sources":["../../src/ring-buffer/ring-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,cAAc,CAAC;AAGtB,oBAAY,WAAW;IACrB,SAAS,cAAc;IACvB,KAAK,UAAU;CAChB;AAED,qBAAa,WAAW;IAEV,OAAO,CAAC,QAAQ,CAAC,WAAW;IADxC,OAAO,CAAC,OAAO,CAAoB;gBACN,WAAW,EAAE,WAAW;IAI/C,QAAQ,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAOhD,aAAa,CACjB,MAAM,EAAE,gBAAgB,EACxB,KAAK,SAAI,GACR,OAAO,CAAC,eAAe,EAAE,GAAG,SAAS,CAAC;IAUnC,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,gBAAgB,CACpB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAOlC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAO9D,gBAAgB,CACpB,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,eAAe,EAAE,GACvB,OAAO,CAAC,IAAI,CAAC;CAKjB"}
@@ -18,9 +18,9 @@ class RingStorage {
18
18
  }
19
19
  return undefined;
20
20
  }
21
- async getFromBuffer(buffer) {
21
+ async getFromBuffer(buffer, count = 1) {
22
22
  if (this.storageType === StorageType.IN_MEMORY) {
23
- return this.storage.getFromBuffer(this.storage.getBufferName(buffer.range.min, buffer.range.max));
23
+ return this.storage.getFromBuffer(this.storage.getBufferName(buffer.range.min, buffer.range.max), count);
24
24
  }
25
25
  return undefined;
26
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ring-storage.js","sourceRoot":"","sources":["../../src/ring-buffer/ring-storage.ts"],"names":[],"mappings":";;;AAKA,+DAA0D;AAE1D,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,sCAAuB,CAAA;IACvB,8BAAe,CAAA;AACjB,CAAC,EAHW,WAAW,2BAAX,WAAW,QAGtB;AAED,MAAa,WAAW;IAEtB,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;QACnD,IAAI,CAAC,OAAO,GAAG,IAAI,uCAAiB,EAAE,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACjC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,MAAwB;QAExB,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAC/B,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAC/D,CAAC;QACJ,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAwB;QACvC,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,GAAW,EACX,GAAW;QAEX,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY;QAC1B,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,MAAwB,EACxB,KAAwB;QAExB,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;CACF;AAvDD,kCAuDC"}
1
+ {"version":3,"file":"ring-storage.js","sourceRoot":"","sources":["../../src/ring-buffer/ring-storage.ts"],"names":[],"mappings":";;;AAKA,+DAA0D;AAE1D,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,sCAAuB,CAAA;IACvB,8BAAe,CAAA;AACjB,CAAC,EAHW,WAAW,2BAAX,WAAW,QAGtB;AAED,MAAa,WAAW;IAEtB,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;QACnD,IAAI,CAAC,OAAO,GAAG,IAAI,uCAAiB,EAAE,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACjC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,MAAwB,EACxB,KAAK,GAAG,CAAC;QAET,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAC/B,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAC9D,KAAK,CACN,CAAC;QACJ,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAwB;QACvC,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,GAAW,EACX,GAAW;QAEX,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY;QAC1B,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,MAAwB,EACxB,KAAwB;QAExB,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;CACF;AAzDD,kCAyDC"}
@@ -33,6 +33,18 @@ export declare class RngClient {
33
33
  * @returns Batch of random integers
34
34
  */
35
35
  getBatchNumbers(min: number, max: number, count: number, seed?: number): Promise<number[]>;
36
+ /**
37
+ * Get a batch of random numbers with seeds
38
+ * @param min Minimum value (inclusive)
39
+ * @param max Maximum value (inclusive)
40
+ * @param count Number of values to generate
41
+ * @param seed Optional seed for deterministic generation
42
+ * @returns Batch of random integers
43
+ */
44
+ getBatchNumbersWithSeeds(min: number, max: number, count: number, seed?: number): Promise<{
45
+ value: number;
46
+ seed: number;
47
+ }[]>;
36
48
  /**
37
49
  * Get a single random float
38
50
  * @param seed Optional seed for deterministic generation
@@ -1 +1 @@
1
- {"version":3,"file":"rng-client.d.ts","sourceRoot":"","sources":["../src/rng-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAKjB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D;;;;;;GAMG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAC3C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;gBAE5B,MAAM,EAAE,eAAe;IASnC;;;;;;OAMG;IACG,eAAe,CACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAiBrC,mBAAmB,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAIjE;;;;;;;OAOG;IACG,eAAe,CACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,EAAE,CAAC;IAcpB;;;;OAIG;IACG,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAQ/D;;;;;OAKG;IACG,cAAc,CAClB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,gBAAgB,CAAC;IAQ5B;;;;;;OAMG;IACG,eAAe,CACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,iBAAiB,CAAC;IAQ7B;;;;OAIG;IACG,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAOhE"}
1
+ {"version":3,"file":"rng-client.d.ts","sourceRoot":"","sources":["../src/rng-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAKjB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D;;;;;;GAMG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAC3C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;gBAE5B,MAAM,EAAE,eAAe;IASnC;;;;;;OAMG;IACG,eAAe,CACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAiBrC,mBAAmB,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAIjE;;;;;;;OAOG;IACG,eAAe,CACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,EAAE,CAAC;IAcpB;;;;;;;OAOG;IACG,wBAAwB,CAC5B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAsB7C;;;;OAIG;IACG,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAQ/D;;;;;OAKG;IACG,cAAc,CAClB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,gBAAgB,CAAC;IAQ5B;;;;;;OAMG;IACG,eAAe,CACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,iBAAiB,CAAC;IAQ7B;;;;OAIG;IACG,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAOhE"}
@@ -36,9 +36,9 @@ class RngClient {
36
36
  data.seed = seed;
37
37
  }
38
38
  else {
39
- const item = await this.ringBuffer.getNumberByRange(min, max);
40
- if (item) {
41
- return item;
39
+ const item = await this.ringBuffer.getNumbersByRange(min, max, 1);
40
+ if (item && item.length > 0) {
41
+ return { value: item[0].value, seed: item[0].seed };
42
42
  }
43
43
  }
44
44
  const response = await this.clientCore.getSingleNumber(data);
@@ -67,6 +67,35 @@ class RngClient {
67
67
  const response = await this.clientCore.getBatchNumbers(data);
68
68
  return response.result;
69
69
  }
70
+ /**
71
+ * Get a batch of random numbers with seeds
72
+ * @param min Minimum value (inclusive)
73
+ * @param max Maximum value (inclusive)
74
+ * @param count Number of values to generate
75
+ * @param seed Optional seed for deterministic generation
76
+ * @returns Batch of random integers
77
+ */
78
+ async getBatchNumbersWithSeeds(min, max, count, seed) {
79
+ const data = {
80
+ min,
81
+ max,
82
+ count,
83
+ };
84
+ if (seed) {
85
+ data.seed = seed;
86
+ }
87
+ else {
88
+ const item = await this.ringBuffer.getNumbersByRange(min, max, count);
89
+ if (item && item.length > 0) {
90
+ return item;
91
+ }
92
+ }
93
+ const response = await this.clientCore.getBatchNumbersWithSeeds(data);
94
+ return response.result.map((item) => ({
95
+ value: item.value,
96
+ seed: item.seed,
97
+ }));
98
+ }
70
99
  /**
71
100
  * Get a single random float
72
101
  * @param seed Optional seed for deterministic generation
@@ -1 +1 @@
1
- {"version":3,"file":"rng-client.js","sourceRoot":"","sources":["../src/rng-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rng-client.js","sourceRoot":"","sources":["../src/rng-client.ts"],"names":[],"mappings":";;;AAAA,4DAAuD;AAEvD,6DAAyD;AASzD,2DAAuD;AAGvD;;;;;;GAMG;AACH,MAAa,SAAS;IAIpB,YAAY,MAAuB;QACjC,IAAI,CAAC,UAAU,GAAG,IAAI,+BAAa,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,IAAI,wBAAU,CAAC;YAC/B,IAAI,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;YAChC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,0BAAW,CAAC,SAAS;SACzD,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,CACnB,GAAW,EACX,GAAW,EACX,IAAa;QAEb,MAAM,IAAI,GAAqB;YAC7B,GAAG;YACH,GAAG;SACJ,CAAC;QACF,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;YAClE,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACtD,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC7D,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;IACpC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe,CACnB,GAAW,EACX,GAAW,EACX,KAAa,EACb,IAAa;QAEb,MAAM,IAAI,GAAoB;YAC5B,GAAG;YACH,GAAG;YACH,KAAK;SACN,CAAC;QACF,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAE7D,OAAO,QAAQ,CAAC,MAAM,CAAC;IACzB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,wBAAwB,CAC5B,GAAW,EACX,GAAW,EACX,KAAa,EACb,IAAa;QAEb,MAAM,IAAI,GAAoB;YAC5B,GAAG;YACH,GAAG;YACH,KAAK;SACN,CAAC;QACF,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACtE,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAEtE,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,IAAa;QAChC,MAAM,IAAI,GAA0B,EAAE,CAAC;QACvC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAClB,KAAa,EACb,IAAa;QAEb,MAAM,IAAI,GAAyB,EAAE,KAAK,EAAE,CAAC;QAC7C,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,CACnB,GAAW,EACX,GAAW,EACX,IAAa;QAEb,MAAM,IAAI,GAAqB,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;QAC5C,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,IAAa;QAChC,MAAM,IAAI,GAA0B,EAAE,CAAC;QACvC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;CACF;AAxKD,8BAwKC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omnitronix/rng-client-core",
3
- "version": "1.0.7",
3
+ "version": "1.0.9",
4
4
  "description": "Simple HTTP client for random number generation",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",