@machinemetrics/mm-react-tools 2.2.0-dev → 3.0.1-beta

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.
@@ -1,2066 +0,0 @@
1
- import React, { useEffect, useRef, useCallback, useState, useContext } from 'react';
2
- import { Outlet, Navigate, BrowserRouter, Routes, Route } from 'react-router-dom';
3
- import { gql, useSubscription, useLazyQuery, createHttpLink, ApolloLink, ApolloClient, InMemoryCache, ApolloProvider } from '@apollo/client';
4
- import { DateTime } from 'luxon';
5
- import _ from 'lodash';
6
- import qs from 'query-string';
7
- import { v4 } from 'uuid';
8
- import styled from 'styled-components';
9
- import { GraphQLWsLink } from '@apollo/client/link/subscriptions';
10
- import { createClient } from 'graphql-ws';
11
- import { setContext } from '@apollo/client/link/context';
12
- import { onError } from '@apollo/client/link/error';
13
- import { getMainDefinition } from '@apollo/client/utilities';
14
- import { RestLink } from 'apollo-link-rest';
15
- import { connect, credsAuthenticator, JSONCodec } from 'nats.ws';
16
-
17
- function _asyncIterator(iterable) {
18
- var method,
19
- async,
20
- sync,
21
- retry = 2;
22
-
23
- for ("undefined" != typeof Symbol && (async = Symbol.asyncIterator, sync = Symbol.iterator); retry--;) {
24
- if (async && null != (method = iterable[async])) return method.call(iterable);
25
- if (sync && null != (method = iterable[sync])) return new AsyncFromSyncIterator(method.call(iterable));
26
- async = "@@asyncIterator", sync = "@@iterator";
27
- }
28
-
29
- throw new TypeError("Object is not async iterable");
30
- }
31
-
32
- function AsyncFromSyncIterator(s) {
33
- function AsyncFromSyncIteratorContinuation(r) {
34
- if (Object(r) !== r) return Promise.reject(new TypeError(r + " is not an object."));
35
- var done = r.done;
36
- return Promise.resolve(r.value).then(function (value) {
37
- return {
38
- value: value,
39
- done: done
40
- };
41
- });
42
- }
43
-
44
- return AsyncFromSyncIterator = function (s) {
45
- this.s = s, this.n = s.next;
46
- }, AsyncFromSyncIterator.prototype = {
47
- s: null,
48
- n: null,
49
- next: function () {
50
- return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments));
51
- },
52
- return: function (value) {
53
- var ret = this.s.return;
54
- return void 0 === ret ? Promise.resolve({
55
- value: value,
56
- done: !0
57
- }) : AsyncFromSyncIteratorContinuation(ret.apply(this.s, arguments));
58
- },
59
- throw: function (value) {
60
- var thr = this.s.return;
61
- return void 0 === thr ? Promise.reject(value) : AsyncFromSyncIteratorContinuation(thr.apply(this.s, arguments));
62
- }
63
- }, new AsyncFromSyncIterator(s);
64
- }
65
-
66
- function _regeneratorRuntime() {
67
- /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
68
-
69
- _regeneratorRuntime = function () {
70
- return exports;
71
- };
72
-
73
- var exports = {},
74
- Op = Object.prototype,
75
- hasOwn = Op.hasOwnProperty,
76
- $Symbol = "function" == typeof Symbol ? Symbol : {},
77
- iteratorSymbol = $Symbol.iterator || "@@iterator",
78
- asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator",
79
- toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
80
-
81
- function define(obj, key, value) {
82
- return Object.defineProperty(obj, key, {
83
- value: value,
84
- enumerable: !0,
85
- configurable: !0,
86
- writable: !0
87
- }), obj[key];
88
- }
89
-
90
- try {
91
- define({}, "");
92
- } catch (err) {
93
- define = function (obj, key, value) {
94
- return obj[key] = value;
95
- };
96
- }
97
-
98
- function wrap(innerFn, outerFn, self, tryLocsList) {
99
- var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,
100
- generator = Object.create(protoGenerator.prototype),
101
- context = new Context(tryLocsList || []);
102
- return generator._invoke = function (innerFn, self, context) {
103
- var state = "suspendedStart";
104
- return function (method, arg) {
105
- if ("executing" === state) throw new Error("Generator is already running");
106
-
107
- if ("completed" === state) {
108
- if ("throw" === method) throw arg;
109
- return doneResult();
110
- }
111
-
112
- for (context.method = method, context.arg = arg;;) {
113
- var delegate = context.delegate;
114
-
115
- if (delegate) {
116
- var delegateResult = maybeInvokeDelegate(delegate, context);
117
-
118
- if (delegateResult) {
119
- if (delegateResult === ContinueSentinel) continue;
120
- return delegateResult;
121
- }
122
- }
123
-
124
- if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) {
125
- if ("suspendedStart" === state) throw state = "completed", context.arg;
126
- context.dispatchException(context.arg);
127
- } else "return" === context.method && context.abrupt("return", context.arg);
128
- state = "executing";
129
- var record = tryCatch(innerFn, self, context);
130
-
131
- if ("normal" === record.type) {
132
- if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue;
133
- return {
134
- value: record.arg,
135
- done: context.done
136
- };
137
- }
138
-
139
- "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg);
140
- }
141
- };
142
- }(innerFn, self, context), generator;
143
- }
144
-
145
- function tryCatch(fn, obj, arg) {
146
- try {
147
- return {
148
- type: "normal",
149
- arg: fn.call(obj, arg)
150
- };
151
- } catch (err) {
152
- return {
153
- type: "throw",
154
- arg: err
155
- };
156
- }
157
- }
158
-
159
- exports.wrap = wrap;
160
- var ContinueSentinel = {};
161
-
162
- function Generator() {}
163
-
164
- function GeneratorFunction() {}
165
-
166
- function GeneratorFunctionPrototype() {}
167
-
168
- var IteratorPrototype = {};
169
- define(IteratorPrototype, iteratorSymbol, function () {
170
- return this;
171
- });
172
- var getProto = Object.getPrototypeOf,
173
- NativeIteratorPrototype = getProto && getProto(getProto(values([])));
174
- NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);
175
- var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);
176
-
177
- function defineIteratorMethods(prototype) {
178
- ["next", "throw", "return"].forEach(function (method) {
179
- define(prototype, method, function (arg) {
180
- return this._invoke(method, arg);
181
- });
182
- });
183
- }
184
-
185
- function AsyncIterator(generator, PromiseImpl) {
186
- function invoke(method, arg, resolve, reject) {
187
- var record = tryCatch(generator[method], generator, arg);
188
-
189
- if ("throw" !== record.type) {
190
- var result = record.arg,
191
- value = result.value;
192
- return value && "object" == typeof value && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) {
193
- invoke("next", value, resolve, reject);
194
- }, function (err) {
195
- invoke("throw", err, resolve, reject);
196
- }) : PromiseImpl.resolve(value).then(function (unwrapped) {
197
- result.value = unwrapped, resolve(result);
198
- }, function (error) {
199
- return invoke("throw", error, resolve, reject);
200
- });
201
- }
202
-
203
- reject(record.arg);
204
- }
205
-
206
- var previousPromise;
207
-
208
- this._invoke = function (method, arg) {
209
- function callInvokeWithMethodAndArg() {
210
- return new PromiseImpl(function (resolve, reject) {
211
- invoke(method, arg, resolve, reject);
212
- });
213
- }
214
-
215
- return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
216
- };
217
- }
218
-
219
- function maybeInvokeDelegate(delegate, context) {
220
- var method = delegate.iterator[context.method];
221
-
222
- if (undefined === method) {
223
- if (context.delegate = null, "throw" === context.method) {
224
- if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel;
225
- context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method");
226
- }
227
-
228
- return ContinueSentinel;
229
- }
230
-
231
- var record = tryCatch(method, delegate.iterator, context.arg);
232
- if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel;
233
- var info = record.arg;
234
- return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel);
235
- }
236
-
237
- function pushTryEntry(locs) {
238
- var entry = {
239
- tryLoc: locs[0]
240
- };
241
- 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);
242
- }
243
-
244
- function resetTryEntry(entry) {
245
- var record = entry.completion || {};
246
- record.type = "normal", delete record.arg, entry.completion = record;
247
- }
248
-
249
- function Context(tryLocsList) {
250
- this.tryEntries = [{
251
- tryLoc: "root"
252
- }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);
253
- }
254
-
255
- function values(iterable) {
256
- if (iterable) {
257
- var iteratorMethod = iterable[iteratorSymbol];
258
- if (iteratorMethod) return iteratorMethod.call(iterable);
259
- if ("function" == typeof iterable.next) return iterable;
260
-
261
- if (!isNaN(iterable.length)) {
262
- var i = -1,
263
- next = function next() {
264
- for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;
265
-
266
- return next.value = undefined, next.done = !0, next;
267
- };
268
-
269
- return next.next = next;
270
- }
271
- }
272
-
273
- return {
274
- next: doneResult
275
- };
276
- }
277
-
278
- function doneResult() {
279
- return {
280
- value: undefined,
281
- done: !0
282
- };
283
- }
284
-
285
- return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) {
286
- var ctor = "function" == typeof genFun && genFun.constructor;
287
- return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name));
288
- }, exports.mark = function (genFun) {
289
- return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun;
290
- }, exports.awrap = function (arg) {
291
- return {
292
- __await: arg
293
- };
294
- }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {
295
- return this;
296
- }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {
297
- void 0 === PromiseImpl && (PromiseImpl = Promise);
298
- var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);
299
- return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {
300
- return result.done ? result.value : iter.next();
301
- });
302
- }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () {
303
- return this;
304
- }), define(Gp, "toString", function () {
305
- return "[object Generator]";
306
- }), exports.keys = function (object) {
307
- var keys = [];
308
-
309
- for (var key in object) keys.push(key);
310
-
311
- return keys.reverse(), function next() {
312
- for (; keys.length;) {
313
- var key = keys.pop();
314
- if (key in object) return next.value = key, next.done = !1, next;
315
- }
316
-
317
- return next.done = !0, next;
318
- };
319
- }, exports.values = values, Context.prototype = {
320
- constructor: Context,
321
- reset: function (skipTempReset) {
322
- if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);
323
- },
324
- stop: function () {
325
- this.done = !0;
326
- var rootRecord = this.tryEntries[0].completion;
327
- if ("throw" === rootRecord.type) throw rootRecord.arg;
328
- return this.rval;
329
- },
330
- dispatchException: function (exception) {
331
- if (this.done) throw exception;
332
- var context = this;
333
-
334
- function handle(loc, caught) {
335
- return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught;
336
- }
337
-
338
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
339
- var entry = this.tryEntries[i],
340
- record = entry.completion;
341
- if ("root" === entry.tryLoc) return handle("end");
342
-
343
- if (entry.tryLoc <= this.prev) {
344
- var hasCatch = hasOwn.call(entry, "catchLoc"),
345
- hasFinally = hasOwn.call(entry, "finallyLoc");
346
-
347
- if (hasCatch && hasFinally) {
348
- if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);
349
- if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);
350
- } else if (hasCatch) {
351
- if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);
352
- } else {
353
- if (!hasFinally) throw new Error("try statement without catch or finally");
354
- if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);
355
- }
356
- }
357
- }
358
- },
359
- abrupt: function (type, arg) {
360
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
361
- var entry = this.tryEntries[i];
362
-
363
- if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) {
364
- var finallyEntry = entry;
365
- break;
366
- }
367
- }
368
-
369
- finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);
370
- var record = finallyEntry ? finallyEntry.completion : {};
371
- return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);
372
- },
373
- complete: function (record, afterLoc) {
374
- if ("throw" === record.type) throw record.arg;
375
- return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;
376
- },
377
- finish: function (finallyLoc) {
378
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
379
- var entry = this.tryEntries[i];
380
- if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;
381
- }
382
- },
383
- catch: function (tryLoc) {
384
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
385
- var entry = this.tryEntries[i];
386
-
387
- if (entry.tryLoc === tryLoc) {
388
- var record = entry.completion;
389
-
390
- if ("throw" === record.type) {
391
- var thrown = record.arg;
392
- resetTryEntry(entry);
393
- }
394
-
395
- return thrown;
396
- }
397
- }
398
-
399
- throw new Error("illegal catch attempt");
400
- },
401
- delegateYield: function (iterable, resultName, nextLoc) {
402
- return this.delegate = {
403
- iterator: values(iterable),
404
- resultName: resultName,
405
- nextLoc: nextLoc
406
- }, "next" === this.method && (this.arg = undefined), ContinueSentinel;
407
- }
408
- }, exports;
409
- }
410
-
411
- function _AwaitValue(value) {
412
- this.wrapped = value;
413
- }
414
-
415
- function _AsyncGenerator(gen) {
416
- var front, back;
417
-
418
- function send(key, arg) {
419
- return new Promise(function (resolve, reject) {
420
- var request = {
421
- key: key,
422
- arg: arg,
423
- resolve: resolve,
424
- reject: reject,
425
- next: null
426
- };
427
-
428
- if (back) {
429
- back = back.next = request;
430
- } else {
431
- front = back = request;
432
- resume(key, arg);
433
- }
434
- });
435
- }
436
-
437
- function resume(key, arg) {
438
- try {
439
- var result = gen[key](arg);
440
- var value = result.value;
441
- var wrappedAwait = value instanceof _AwaitValue;
442
- Promise.resolve(wrappedAwait ? value.wrapped : value).then(function (arg) {
443
- if (wrappedAwait) {
444
- resume(key === "return" ? "return" : "next", arg);
445
- return;
446
- }
447
-
448
- settle(result.done ? "return" : "normal", arg);
449
- }, function (err) {
450
- resume("throw", err);
451
- });
452
- } catch (err) {
453
- settle("throw", err);
454
- }
455
- }
456
-
457
- function settle(type, value) {
458
- switch (type) {
459
- case "return":
460
- front.resolve({
461
- value: value,
462
- done: true
463
- });
464
- break;
465
-
466
- case "throw":
467
- front.reject(value);
468
- break;
469
-
470
- default:
471
- front.resolve({
472
- value: value,
473
- done: false
474
- });
475
- break;
476
- }
477
-
478
- front = front.next;
479
-
480
- if (front) {
481
- resume(front.key, front.arg);
482
- } else {
483
- back = null;
484
- }
485
- }
486
-
487
- this._invoke = send;
488
-
489
- if (typeof gen.return !== "function") {
490
- this.return = undefined;
491
- }
492
- }
493
-
494
- _AsyncGenerator.prototype[typeof Symbol === "function" && Symbol.asyncIterator || "@@asyncIterator"] = function () {
495
- return this;
496
- };
497
-
498
- _AsyncGenerator.prototype.next = function (arg) {
499
- return this._invoke("next", arg);
500
- };
501
-
502
- _AsyncGenerator.prototype.throw = function (arg) {
503
- return this._invoke("throw", arg);
504
- };
505
-
506
- _AsyncGenerator.prototype.return = function (arg) {
507
- return this._invoke("return", arg);
508
- };
509
-
510
- function _wrapAsyncGenerator(fn) {
511
- return function () {
512
- return new _AsyncGenerator(fn.apply(this, arguments));
513
- };
514
- }
515
-
516
- function _awaitAsyncGenerator(value) {
517
- return new _AwaitValue(value);
518
- }
519
-
520
- function _extends() {
521
- _extends = Object.assign ? Object.assign.bind() : function (target) {
522
- for (var i = 1; i < arguments.length; i++) {
523
- var source = arguments[i];
524
-
525
- for (var key in source) {
526
- if (Object.prototype.hasOwnProperty.call(source, key)) {
527
- target[key] = source[key];
528
- }
529
- }
530
- }
531
-
532
- return target;
533
- };
534
- return _extends.apply(this, arguments);
535
- }
536
-
537
- function _taggedTemplateLiteralLoose(strings, raw) {
538
- if (!raw) {
539
- raw = strings.slice(0);
540
- }
541
-
542
- strings.raw = raw;
543
- return strings;
544
- }
545
-
546
- // A type of promise-like that resolves synchronously and supports only one observer
547
- const _Pact = /*#__PURE__*/(function() {
548
- function _Pact() {}
549
- _Pact.prototype.then = function(onFulfilled, onRejected) {
550
- const result = new _Pact();
551
- const state = this.s;
552
- if (state) {
553
- const callback = state & 1 ? onFulfilled : onRejected;
554
- if (callback) {
555
- try {
556
- _settle(result, 1, callback(this.v));
557
- } catch (e) {
558
- _settle(result, 2, e);
559
- }
560
- return result;
561
- } else {
562
- return this;
563
- }
564
- }
565
- this.o = function(_this) {
566
- try {
567
- const value = _this.v;
568
- if (_this.s & 1) {
569
- _settle(result, 1, onFulfilled ? onFulfilled(value) : value);
570
- } else if (onRejected) {
571
- _settle(result, 1, onRejected(value));
572
- } else {
573
- _settle(result, 2, value);
574
- }
575
- } catch (e) {
576
- _settle(result, 2, e);
577
- }
578
- };
579
- return result;
580
- };
581
- return _Pact;
582
- })();
583
-
584
- // Settles a pact synchronously
585
- function _settle(pact, state, value) {
586
- if (!pact.s) {
587
- if (value instanceof _Pact) {
588
- if (value.s) {
589
- if (state & 1) {
590
- state = value.s;
591
- }
592
- value = value.v;
593
- } else {
594
- value.o = _settle.bind(null, pact, state);
595
- return;
596
- }
597
- }
598
- if (value && value.then) {
599
- value.then(_settle.bind(null, pact, state), _settle.bind(null, pact, 2));
600
- return;
601
- }
602
- pact.s = state;
603
- pact.v = value;
604
- const observer = pact.o;
605
- if (observer) {
606
- observer(pact);
607
- }
608
- }
609
- }
610
-
611
- function _isSettledPact(thenable) {
612
- return thenable instanceof _Pact && thenable.s & 1;
613
- }
614
-
615
- const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.iterator || (Symbol.iterator = Symbol("Symbol.iterator"))) : "@@iterator";
616
-
617
- const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol("Symbol.asyncIterator"))) : "@@asyncIterator";
618
-
619
- // Asynchronously implement a generic for loop
620
- function _for(test, update, body) {
621
- var stage;
622
- for (;;) {
623
- var shouldContinue = test();
624
- if (_isSettledPact(shouldContinue)) {
625
- shouldContinue = shouldContinue.v;
626
- }
627
- if (!shouldContinue) {
628
- return result;
629
- }
630
- if (shouldContinue.then) {
631
- stage = 0;
632
- break;
633
- }
634
- var result = body();
635
- if (result && result.then) {
636
- if (_isSettledPact(result)) {
637
- result = result.s;
638
- } else {
639
- stage = 1;
640
- break;
641
- }
642
- }
643
- if (update) {
644
- var updateValue = update();
645
- if (updateValue && updateValue.then && !_isSettledPact(updateValue)) {
646
- stage = 2;
647
- break;
648
- }
649
- }
650
- }
651
- var pact = new _Pact();
652
- var reject = _settle.bind(null, pact, 2);
653
- (stage === 0 ? shouldContinue.then(_resumeAfterTest) : stage === 1 ? result.then(_resumeAfterBody) : updateValue.then(_resumeAfterUpdate)).then(void 0, reject);
654
- return pact;
655
- function _resumeAfterBody(value) {
656
- result = value;
657
- do {
658
- if (update) {
659
- updateValue = update();
660
- if (updateValue && updateValue.then && !_isSettledPact(updateValue)) {
661
- updateValue.then(_resumeAfterUpdate).then(void 0, reject);
662
- return;
663
- }
664
- }
665
- shouldContinue = test();
666
- if (!shouldContinue || (_isSettledPact(shouldContinue) && !shouldContinue.v)) {
667
- _settle(pact, 1, result);
668
- return;
669
- }
670
- if (shouldContinue.then) {
671
- shouldContinue.then(_resumeAfterTest).then(void 0, reject);
672
- return;
673
- }
674
- result = body();
675
- if (_isSettledPact(result)) {
676
- result = result.v;
677
- }
678
- } while (!result || !result.then);
679
- result.then(_resumeAfterBody).then(void 0, reject);
680
- }
681
- function _resumeAfterTest(shouldContinue) {
682
- if (shouldContinue) {
683
- result = body();
684
- if (result && result.then) {
685
- result.then(_resumeAfterBody).then(void 0, reject);
686
- } else {
687
- _resumeAfterBody(result);
688
- }
689
- } else {
690
- _settle(pact, 1, result);
691
- }
692
- }
693
- function _resumeAfterUpdate() {
694
- if (shouldContinue = test()) {
695
- if (shouldContinue.then) {
696
- shouldContinue.then(_resumeAfterTest).then(void 0, reject);
697
- } else {
698
- _resumeAfterTest(shouldContinue);
699
- }
700
- } else {
701
- _settle(pact, 1, result);
702
- }
703
- }
704
- }
705
-
706
- // Asynchronously call a function and send errors to recovery continuation
707
- function _catch(body, recover) {
708
- try {
709
- var result = body();
710
- } catch(e) {
711
- return recover(e);
712
- }
713
- if (result && result.then) {
714
- return result.then(void 0, recover);
715
- }
716
- return result;
717
- }
718
-
719
- // Asynchronously await a promise and pass the result to a finally continuation
720
- function _finallyRethrows(body, finalizer) {
721
- try {
722
- var result = body();
723
- } catch (e) {
724
- return finalizer(true, e);
725
- }
726
- if (result && result.then) {
727
- return result.then(finalizer.bind(null, false), finalizer.bind(null, true));
728
- }
729
- return finalizer(false, result);
730
- }
731
-
732
- var MMAuthContext = React.createContext();
733
-
734
- var MMAuthInternalContext = React.createContext();
735
-
736
- var _templateObject, _templateObject2;
737
- var useAsyncEffect = function useAsyncEffect(delegate, stateTriggers, destroy) {
738
- try {
739
- useEffect(function () {
740
- var asyncEffect = function asyncEffect() {
741
- try {
742
- return Promise.resolve(delegate(controller.signal));
743
- } catch (e) {
744
- return Promise.reject(e);
745
- }
746
- };
747
-
748
- var controller = new window.AbortController();
749
- asyncEffect();
750
- return function () {
751
- controller.abort();
752
-
753
- if (destroy) {
754
- destroy();
755
- }
756
- };
757
- }, [].concat(stateTriggers));
758
- return Promise.resolve();
759
- } catch (e) {
760
- return Promise.reject(e);
761
- }
762
- };
763
- var useThrottleEffect = function useThrottleEffect(delegate, wait, stateTriggers) {
764
- var savedCallback = useRef(delegate);
765
- useEffect(function () {
766
- savedCallback.current = delegate;
767
- }, [delegate]);
768
- var debouncedDelegate = useCallback(_.throttle(function () {
769
- savedCallback.current();
770
- }, wait), []);
771
- useEffect(debouncedDelegate, [].concat(stateTriggers));
772
- };
773
- var useAsyncInterval = function useAsyncInterval(delegate, delay, stateTriggers) {
774
- if (delay === void 0) {
775
- delay = null;
776
- }
777
-
778
- var savedCallback = useRef(delegate);
779
- useEffect(function () {
780
- savedCallback.current = delegate;
781
- }, [delegate]);
782
- useAsyncEffect(function (abortSignal) {
783
- var id;
784
-
785
- var tick = function tick() {
786
- try {
787
- return Promise.resolve(savedCallback.current(abortSignal)).then(function () {
788
- if (delay !== null) {
789
- id = setTimeout(tick, delay);
790
- }
791
- });
792
- } catch (e) {
793
- return Promise.reject(e);
794
- }
795
- };
796
-
797
- tick();
798
- return Promise.resolve(function () {
799
- return id && clearTimeout(id);
800
- });
801
- }, [delay].concat(stateTriggers));
802
- };
803
- var useApiRequest = function useApiRequest(path, options, delay) {
804
- var _useState = useState(),
805
- data = _useState[0],
806
- setData = _useState[1];
807
-
808
- var _useState2 = useState(true),
809
- loading = _useState2[0],
810
- setLoading = _useState2[1];
811
-
812
- var _useState3 = useState(),
813
- error = _useState3[0],
814
- setError = _useState3[1];
815
-
816
- var _useMMAuth = useMMAuth(),
817
- urls = _useMMAuth.urls,
818
- request = _useMMAuth.request;
819
-
820
- useAsyncInterval(function (abortSignal) {
821
- try {
822
- var _temp3 = function _temp3(_result) {
823
- if (_exit2) return _result;
824
- setLoading(false);
825
- };
826
-
827
- var _exit2 = false;
828
-
829
- var _temp4 = _catch(function () {
830
- var requestOpts = _extends({
831
- signal: abortSignal
832
- }, options || {});
833
-
834
- if (requestOpts.skip) {
835
- _exit2 = true;
836
- return;
837
- }
838
-
839
- return Promise.resolve(request("" + urls.apiUrl + path, requestOpts)).then(function (result) {
840
- setData(result);
841
- });
842
- }, function (e) {
843
- setError(e);
844
- });
845
-
846
- return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
847
- } catch (e) {
848
- return Promise.reject(e);
849
- }
850
- }, delay, [path, options]);
851
- return {
852
- data: data,
853
- error: error,
854
- loading: loading
855
- };
856
- };
857
- var useProductionQuery = function useProductionQuery(query, delay) {
858
- var _useState4 = useState(),
859
- data = _useState4[0],
860
- setData = _useState4[1];
861
-
862
- var _useState5 = useState(true),
863
- loading = _useState5[0],
864
- setLoading = _useState5[1];
865
-
866
- var _useState6 = useState(),
867
- error = _useState6[0],
868
- setError = _useState6[1];
869
-
870
- var _useMMAuth2 = useMMAuth(),
871
- urls = _useMMAuth2.urls,
872
- request = _useMMAuth2.request;
873
-
874
- useAsyncInterval(function (abortSignal) {
875
- try {
876
- var _temp7 = function _temp7(_result2) {
877
- if (_exit4) return _result2;
878
- setLoading(false);
879
- };
880
-
881
- var _exit4 = false;
882
-
883
- var _temp8 = _catch(function () {
884
- if (!query) {
885
- _exit4 = true;
886
- return;
887
- }
888
-
889
- return Promise.resolve(request(urls.apiUrl + "/reports/production", {
890
- method: 'POST',
891
- body: query,
892
- signal: abortSignal
893
- })).then(function (result) {
894
- setData(result);
895
- });
896
- }, function (e) {
897
- setError(e);
898
- });
899
-
900
- return Promise.resolve(_temp8 && _temp8.then ? _temp8.then(_temp7) : _temp7(_temp8));
901
- } catch (e) {
902
- return Promise.reject(e);
903
- }
904
- }, delay, [query]);
905
- return {
906
- data: data,
907
- error: error,
908
- loading: loading
909
- };
910
- };
911
- var useQuantityStream = function useQuantityStream(_ref) {
912
- var machineRef = _ref.machineRef,
913
- key = _ref.key,
914
- skip = _ref.skip;
915
-
916
- var _useState7 = useState(),
917
- data = _useState7[0],
918
- setData = _useState7[1];
919
-
920
- var _useState8 = useState(),
921
- loading = _useState8[0],
922
- setLoading = _useState8[1];
923
-
924
- var _useState9 = useState(),
925
- error = _useState9[0],
926
- setError = _useState9[1];
927
-
928
- var _useState10 = useState(),
929
- latestEventTime = _useState10[0],
930
- setLatestEventTime = _useState10[1];
931
-
932
- var _useState11 = useState(),
933
- currentMachineRef = _useState11[0],
934
- setCurrentMachineRef = _useState11[1];
935
-
936
- var _useState12 = useState(),
937
- currentKey = _useState12[0],
938
- setCurrentKey = _useState12[1];
939
-
940
- var currentSubscription = gql(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n subscription MMToolsQuantityStreamSubscription {\n currentQuantities(\n where: { machineRef: { _eq: ", " }, key: { _eq: \"", "\" } }\n ) {\n value\n eventTime\n }\n }\n "])), currentMachineRef, currentKey);
941
-
942
- var _useSubscription = useSubscription(currentSubscription, {
943
- skip: skip
944
- }),
945
- currentData = _useSubscription.data;
946
-
947
- var _useState13 = useState(),
948
- rangeQuery = _useState13[0],
949
- setRangeQuery = _useState13[1];
950
-
951
- useEffect(function () {
952
- if (machineRef !== currentMachineRef) {
953
- setCurrentMachineRef(machineRef);
954
- }
955
-
956
- if (key !== currentKey) {
957
- setCurrentKey(key);
958
- }
959
-
960
- setLatestEventTime();
961
- setData();
962
- setError();
963
- setLoading();
964
- }, [machineRef, key, currentKey, currentMachineRef]);
965
- useEffect(function () {
966
- if (queryLoading || !machineRef || !key) {
967
- return;
968
- }
969
-
970
- var windowStart = latestEventTime || DateTime.utc().minus({
971
- hours: 1
972
- }).format();
973
- var query = gql(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n query MMToolsQuantityStreamQuery {\n quantities(args:{machineRef:", ", metricKey:\"", "\", windowStart:\"", "\"}, order_by:{eventTime:asc}) {\n value\n eventTime\n }\n }\n "])), currentMachineRef, currentKey, windowStart);
974
- setRangeQuery(query);
975
- }, [currentMachineRef, currentKey, latestEventTime]);
976
- useEffect(function () {
977
- if (!rangeQuery) {
978
- return;
979
- }
980
-
981
- queryRange();
982
- }, [rangeQuery, currentData]);
983
-
984
- var _useLazyQuery = useLazyQuery(rangeQuery, {
985
- fetchPolicy: 'no-cache'
986
- }),
987
- queryRange = _useLazyQuery[0],
988
- _useLazyQuery$ = _useLazyQuery[1],
989
- queryData = _useLazyQuery$.data,
990
- queryLoading = _useLazyQuery$.loading;
991
-
992
- useEffect(function () {
993
- if (!queryData || !queryData.quantities) {
994
- return;
995
- }
996
-
997
- var lastQuantity = _.last(queryData.quantities);
998
-
999
- if (lastQuantity) {
1000
- setLatestEventTime(lastQuantity.eventTime);
1001
- }
1002
-
1003
- if (!data) {
1004
- setData(queryData.quantities);
1005
- } else {
1006
- var rest = _.drop(queryData.quantities);
1007
-
1008
- setData([].concat(data, rest));
1009
- }
1010
- }, [queryData]);
1011
- return {
1012
- data: data,
1013
- error: error,
1014
- loading: loading
1015
- };
1016
- };
1017
- var useDowntimeQuery = function useDowntimeQuery(query) {
1018
- var _useState14 = useState(),
1019
- data = _useState14[0],
1020
- setData = _useState14[1];
1021
-
1022
- var _useState15 = useState(true),
1023
- loading = _useState15[0],
1024
- setLoading = _useState15[1];
1025
-
1026
- var _useState16 = useState(),
1027
- error = _useState16[0],
1028
- setError = _useState16[1];
1029
-
1030
- var _useMMAuth3 = useMMAuth(),
1031
- urls = _useMMAuth3.urls,
1032
- request = _useMMAuth3.request;
1033
-
1034
- useAsyncEffect(function (abortSignal) {
1035
- try {
1036
- var _temp11 = function _temp11() {
1037
- setLoading(false);
1038
- };
1039
-
1040
- var _temp12 = _catch(function () {
1041
- return Promise.resolve(request(urls.apiUrl + "/reports/downtime", {
1042
- method: 'POST',
1043
- body: query,
1044
- signal: abortSignal
1045
- })).then(function (result) {
1046
- setData(result);
1047
- });
1048
- }, function (e) {
1049
- setError(e);
1050
- });
1051
-
1052
- return Promise.resolve(_temp12 && _temp12.then ? _temp12.then(_temp11) : _temp11(_temp12));
1053
- } catch (e) {
1054
- return Promise.reject(e);
1055
- }
1056
- }, [query]);
1057
- return {
1058
- data: data,
1059
- error: error,
1060
- loading: loading
1061
- };
1062
- };
1063
- var useMMTemplates = function useMMTemplates(namespacePart) {
1064
- var _useState17 = useState(),
1065
- templates = _useState17[0],
1066
- setTemplates = _useState17[1];
1067
-
1068
- var _useMMAuth4 = useMMAuth(),
1069
- urls = _useMMAuth4.urls,
1070
- request = _useMMAuth4.request;
1071
-
1072
- var _useMMAuthInternal2 = _useMMAuthInternal(),
1073
- clientId = _useMMAuthInternal2.clientId;
1074
-
1075
- var namespace = "lab:" + clientId + ":" + namespacePart;
1076
-
1077
- var _useApiRequest = useApiRequest('/templates'),
1078
- data = _useApiRequest.data,
1079
- loading = _useApiRequest.loading,
1080
- error = _useApiRequest.error;
1081
-
1082
- useEffect(function () {
1083
- if (!data) {
1084
- return;
1085
- }
1086
-
1087
- var tempTemplates = _.filter(data.templates, {
1088
- namespace: namespace
1089
- });
1090
-
1091
- setTemplates(tempTemplates);
1092
- }, [data]);
1093
-
1094
- var addTemplate = function addTemplate(_ref2) {
1095
- var name = _ref2.name,
1096
- isPublic = _ref2["public"],
1097
- config = _ref2.config;
1098
-
1099
- try {
1100
- var bodyObj = {
1101
- name: name,
1102
- "public": isPublic,
1103
- namespace: namespace,
1104
- config: JSON.stringify(config)
1105
- };
1106
- var body = JSON.stringify(bodyObj);
1107
- return Promise.resolve(request(urls.apiUrl + "/templates", {
1108
- method: 'POST',
1109
- body: body
1110
- })).then(function (response) {
1111
- setTemplates([].concat(templates, [response.template]));
1112
- return response.template;
1113
- });
1114
- } catch (e) {
1115
- return Promise.reject(e);
1116
- }
1117
- };
1118
-
1119
- var updateTemplate = function updateTemplate(id, _ref3) {
1120
- var name = _ref3.name,
1121
- isPublic = _ref3["public"],
1122
- config = _ref3.config;
1123
-
1124
- try {
1125
- var bodyObj = {
1126
- name: name,
1127
- "public": isPublic,
1128
- namespace: namespace,
1129
- config: JSON.stringify(config)
1130
- };
1131
- var body = JSON.stringify(bodyObj);
1132
- return Promise.resolve(request(urls.apiUrl + "/templates/" + id, {
1133
- method: 'PUT',
1134
- body: body
1135
- })).then(function (response) {
1136
- var templateIndex = _.findIndex(templates, {
1137
- id: id
1138
- });
1139
-
1140
- var beforeTemplates = templates.slice(0, templateIndex);
1141
- var afterTemplates = templates.slice(templateIndex + 1);
1142
- setTemplates([].concat(beforeTemplates, [response.template], afterTemplates));
1143
- return response.template;
1144
- });
1145
- } catch (e) {
1146
- return Promise.reject(e);
1147
- }
1148
- };
1149
-
1150
- var deleteTemplate = function deleteTemplate(id) {
1151
- try {
1152
- return Promise.resolve(request(urls.apiUrl + "/templates/" + id, {
1153
- method: 'DELETE'
1154
- })).then(function () {
1155
- setTemplates(_.reject(templates, {
1156
- id: id
1157
- }));
1158
- });
1159
- } catch (e) {
1160
- return Promise.reject(e);
1161
- }
1162
- };
1163
-
1164
- return [addTemplate, updateTemplate, deleteTemplate, {
1165
- templates: templates,
1166
- loading: loading,
1167
- error: error
1168
- }];
1169
- };
1170
- var useMMHash = function useMMHash() {
1171
- var _useState18 = useState(),
1172
- ready = _useState18[0],
1173
- setReady = _useState18[1];
1174
-
1175
- var _useState19 = useState(),
1176
- hash = _useState19[0],
1177
- setHash = _useState19[1];
1178
-
1179
- var _useMMAuth5 = useMMAuth(),
1180
- urls = _useMMAuth5.urls;
1181
-
1182
- useEffect(function () {
1183
- if (window === window.top) {
1184
- setHash(window.location.hash.substring(1));
1185
- setReady(true);
1186
- } else {
1187
- window.addEventListener('message', function (e) {
1188
- switch (e.data.event) {
1189
- case 'init':
1190
- setHash(e.data.hash.substring(1));
1191
- setReady(true);
1192
- break;
1193
- }
1194
- });
1195
- window.top.postMessage({
1196
- event: 'ready'
1197
- }, urls.appUrl);
1198
- }
1199
- }, [urls]);
1200
- useEffect(function () {
1201
- if (!ready) {
1202
- return;
1203
- }
1204
-
1205
- if (window === window.top) {
1206
- window.location.hash = hash;
1207
- } else {
1208
- window.top.postMessage({
1209
- event: 'set-hash',
1210
- hash: hash
1211
- }, urls.appUrl);
1212
- }
1213
- }, [ready, hash, urls]);
1214
- return [setHash, {
1215
- ready: ready,
1216
- hash: hash
1217
- }];
1218
- };
1219
- var useMMAuth = function useMMAuth() {
1220
- return useContext(MMAuthContext);
1221
- };
1222
- var _useMMAuthInternal = function _useMMAuthInternal() {
1223
- return useContext(MMAuthInternalContext);
1224
- };
1225
-
1226
- var PrivateLayout = function PrivateLayout() {
1227
- var _useMMAuth = useMMAuth(),
1228
- login = _useMMAuth.login,
1229
- isAuthenticated = _useMMAuth.isAuthenticated;
1230
-
1231
- useAsyncEffect(function () {
1232
- try {
1233
- var _temp2 = function () {
1234
- if (isAuthenticated === false) {
1235
- return Promise.resolve(login()).then(function () {});
1236
- }
1237
- }();
1238
-
1239
- return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
1240
- } catch (e) {
1241
- return Promise.reject(e);
1242
- }
1243
- }, [isAuthenticated]);
1244
-
1245
- if (isAuthenticated) {
1246
- return /*#__PURE__*/React.createElement(Outlet, null);
1247
- } else {
1248
- return /*#__PURE__*/React.createElement("div", null);
1249
- }
1250
- };
1251
-
1252
- var AUTH_STATE = 'mm-auth-state';
1253
- var DESTINATION = 'mm-auth-destination';
1254
- var ACCESS_TOKEN = 'mm-auth-access-token';
1255
- var localStorageObject = window.localStorage;
1256
- var retrieveAccessToken = function retrieveAccessToken() {
1257
- return localStorageObject.getItem(ACCESS_TOKEN);
1258
- };
1259
- var storeAccessToken = function storeAccessToken(token) {
1260
- if (!token) {
1261
- localStorageObject.removeItem(ACCESS_TOKEN);
1262
- } else {
1263
- localStorageObject.setItem(ACCESS_TOKEN, token);
1264
- }
1265
- };
1266
- var retrieveDestination = function retrieveDestination() {
1267
- return localStorageObject.getItem(DESTINATION);
1268
- };
1269
- var storeDestination = function storeDestination(dest) {
1270
- if (!dest) {
1271
- localStorageObject.removeItem(DESTINATION);
1272
- } else {
1273
- localStorageObject.setItem(DESTINATION, dest);
1274
- }
1275
- };
1276
- var retrieveAuthState = function retrieveAuthState() {
1277
- return localStorageObject.getItem(AUTH_STATE);
1278
- };
1279
- var storeAuthState = function storeAuthState(state) {
1280
- if (!state) {
1281
- localStorageObject.removeItem(AUTH_STATE);
1282
- } else {
1283
- localStorageObject.setItem(AUTH_STATE, state);
1284
- }
1285
- };
1286
-
1287
- var rawRequest = function rawRequest(url, options) {
1288
- try {
1289
- return Promise.resolve(window.fetch(url, options)).then(function (response) {
1290
- return Promise.resolve(response.text()).then(function (text) {
1291
- var obj = text && JSON.parse(text);
1292
- return response.status >= 200 && response.status < 300 ? obj : _extends({}, obj, {
1293
- error: {
1294
- message: response.statusText,
1295
- status: response.status
1296
- }
1297
- });
1298
- });
1299
- });
1300
- } catch (e) {
1301
- return Promise.reject(e);
1302
- }
1303
- };
1304
-
1305
- var _templateObject$1;
1306
- var Centered = styled.div(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteralLoose(["\n text-align: center;\n padding-top: 200px;\n"])));
1307
-
1308
- var Done = function Done(_ref) {
1309
- var loadError = _ref.loadError;
1310
- var dest = retrieveDestination();
1311
-
1312
- if (loadError) {
1313
- return /*#__PURE__*/React.createElement(Centered, null, loadError);
1314
- }
1315
-
1316
- storeDestination();
1317
- return /*#__PURE__*/React.createElement(Navigate, {
1318
- replace: true,
1319
- to: dest || '/'
1320
- });
1321
- };
1322
-
1323
- var _templateObject$2;
1324
- var Message = styled.div(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteralLoose(["\n font-size: 20px;\n text-align: center;\n margin-top: 300px;\n"])));
1325
-
1326
- var Authorize = function Authorize(_ref) {
1327
- var authorize = _ref.authorize;
1328
-
1329
- var _useState = useState(),
1330
- authError = _useState[0],
1331
- setAuthError = _useState[1];
1332
-
1333
- var _useMMAuth = useMMAuth(),
1334
- isAuthenticated = _useMMAuth.isAuthenticated;
1335
-
1336
- useAsyncEffect(function (abortSignal) {
1337
- try {
1338
- var _temp2 = _catch(function () {
1339
- return Promise.resolve(authorize(abortSignal)).then(function () {});
1340
- }, function () {
1341
- setAuthError("Login Failed. Try again.");
1342
- });
1343
-
1344
- return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
1345
- } catch (e) {
1346
- return Promise.reject(e);
1347
- }
1348
- }, []);
1349
-
1350
- if (authError) {
1351
- return /*#__PURE__*/React.createElement(Done, {
1352
- loadError: authError
1353
- });
1354
- }
1355
-
1356
- return !isAuthenticated ? /*#__PURE__*/React.createElement(Message, null, "Authorizing...") : /*#__PURE__*/React.createElement(Done, null);
1357
- };
1358
-
1359
- var DataWrapper = function DataWrapper(_ref) {
1360
- var jwtRef = _ref.jwtRef,
1361
- natsCredsRef = _ref.natsCredsRef,
1362
- graphQLRoleOverride = _ref.graphQLRoleOverride,
1363
- clientId = _ref.clientId,
1364
- accessToken = _ref.accessToken;
1365
-
1366
- var _useMMAuth = useMMAuth(),
1367
- urls = _useMMAuth.urls;
1368
-
1369
- var _useState = useState(),
1370
- client = _useState[0],
1371
- setClient = _useState[1];
1372
-
1373
- var _useState2 = useState(),
1374
- link = _useState2[0],
1375
- setLink = _useState2[1];
1376
-
1377
- var getHierPart = function getHierPart() {
1378
- var url = new URL(urls.graphQLUrl);
1379
- return "//" + url.host + url.pathname;
1380
- };
1381
-
1382
- var getRoleHeaders = function getRoleHeaders() {
1383
- return graphQLRoleOverride ? {
1384
- 'X-Hasura-Role': graphQLRoleOverride
1385
- } : {};
1386
- };
1387
-
1388
- useEffect(function () {
1389
- var wsLink = new GraphQLWsLink(createClient({
1390
- url: "wss:" + getHierPart(),
1391
- lazy: true,
1392
- reconnect: true,
1393
- connectionParams: function () {
1394
- try {
1395
- return Promise.resolve({
1396
- headers: _extends({
1397
- Authorization: "Bearer " + jwtRef.current
1398
- }, getRoleHeaders())
1399
- });
1400
- } catch (e) {
1401
- return Promise.reject(e);
1402
- }
1403
- }
1404
- }));
1405
- var errorLink = onError(function (_ref2) {
1406
- var operation = _ref2.operation,
1407
- networkError = _ref2.networkError,
1408
- forward = _ref2.forward;
1409
- var definition = getMainDefinition(operation.query);
1410
-
1411
- if (definition.operation === 'subscription' && networkError) {
1412
- wsLink.client.terminate();
1413
- }
1414
-
1415
- return forward(operation);
1416
- });
1417
- var jwtAuthLink = setContext(function (_, _ref3) {
1418
- var headers = _ref3.headers;
1419
-
1420
- try {
1421
- return Promise.resolve({
1422
- headers: _extends({}, headers, {
1423
- Authorization: "Bearer " + jwtRef.current
1424
- }, getRoleHeaders())
1425
- });
1426
- } catch (e) {
1427
- return Promise.reject(e);
1428
- }
1429
- });
1430
- var httpLink = jwtAuthLink.concat(createHttpLink({
1431
- uri: "https:" + getHierPart(),
1432
- fetch: window.fetch
1433
- }));
1434
- var graphQlLink = errorLink.split(function (_ref4) {
1435
- var query = _ref4.query;
1436
- var definition = getMainDefinition(query);
1437
- return definition.kind === 'OperationDefinition' && definition.operation === 'subscription';
1438
- }, wsLink, httpLink);
1439
- var accessTokenAuthLink = setContext(function (_, _ref5) {
1440
- var headers = _ref5.headers;
1441
-
1442
- try {
1443
- return Promise.resolve({
1444
- headers: _extends({}, headers, {
1445
- Authorization: "Bearer " + accessToken
1446
- })
1447
- });
1448
- } catch (e) {
1449
- return Promise.reject(e);
1450
- }
1451
- });
1452
- var restLink = accessTokenAuthLink.concat(new RestLink({
1453
- uri: urls.apiUrl
1454
- }));
1455
- setLink(ApolloLink.from([restLink, graphQlLink]));
1456
- }, []);
1457
- useEffect(function () {
1458
- if (!link) {
1459
- return;
1460
- }
1461
-
1462
- setClient(new ApolloClient({
1463
- link: link,
1464
- cache: new InMemoryCache()
1465
- }));
1466
- }, [link]);
1467
- return /*#__PURE__*/React.createElement(MMAuthInternalContext.Provider, {
1468
- value: {
1469
- link: link,
1470
- natsCredsRef: natsCredsRef,
1471
- jwtRef: jwtRef,
1472
- clientId: clientId,
1473
- accessToken: accessToken
1474
- }
1475
- }, client && /*#__PURE__*/React.createElement(ApolloProvider, {
1476
- client: client
1477
- }, /*#__PURE__*/React.createElement(Outlet, null)));
1478
- };
1479
-
1480
- var MMJwtProvider = function MMJwtProvider(_ref) {
1481
- var children = _ref.children,
1482
- authorize = _ref.authorize,
1483
- deauthorize = _ref.deauthorize,
1484
- accessToken = _ref.accessToken,
1485
- clientId = _ref.clientId,
1486
- urls = _ref.urls,
1487
- login = _ref.login,
1488
- graphQLRoleOverride = _ref.graphQLRoleOverride;
1489
-
1490
- var _useState = useState(),
1491
- isAuthenticated = _useState[0],
1492
- setIsAuthenticated = _useState[1];
1493
-
1494
- var jwtRef = useRef();
1495
- var natsCredsRef = useRef();
1496
-
1497
- var logout = function logout() {
1498
- try {
1499
- return Promise.resolve(request(urls.loginUrl + "/logout", {
1500
- method: 'DELETE'
1501
- })).then(function () {
1502
- deauthorize();
1503
- });
1504
- } catch (e) {
1505
- return Promise.reject(e);
1506
- }
1507
- };
1508
-
1509
- var request = function request(url, options) {
1510
- if (options === void 0) {
1511
- options = {};
1512
- }
1513
-
1514
- try {
1515
- options.headers = _extends({}, options.headers, {
1516
- 'Content-Type': 'application/json',
1517
- Authorization: "Bearer " + accessToken
1518
- });
1519
- return Promise.resolve(rawRequest(url, options)).then(function (json) {
1520
- var _exit = false;
1521
-
1522
- var _temp = function () {
1523
- if (json.error && json.error.status === 401) {
1524
- return Promise.resolve(logout()).then(function () {
1525
- throw Error('UNAUTHORIZED');
1526
- });
1527
- }
1528
- }();
1529
-
1530
- return _temp && _temp.then ? _temp.then(function (_result) {
1531
- return _exit ? _result : json;
1532
- }) : _exit ? _temp : json;
1533
- });
1534
- } catch (e) {
1535
- return Promise.reject(e);
1536
- }
1537
- };
1538
-
1539
- useAsyncInterval(function () {
1540
- try {
1541
- if (!accessToken) {
1542
- jwtRef.current = null;
1543
- setIsAuthenticated(false);
1544
- return Promise.resolve();
1545
- }
1546
-
1547
- var _temp3 = _catch(function () {
1548
- return Promise.resolve(request(urls.apiUrl + "/user-token?graphql=1")).then(function (response) {
1549
- jwtRef.current = response;
1550
- setIsAuthenticated(true);
1551
- });
1552
- }, function () {});
1553
-
1554
- return Promise.resolve(_temp3 && _temp3.then ? _temp3.then(function () {}) : void 0);
1555
- } catch (e) {
1556
- return Promise.reject(e);
1557
- }
1558
- }, 1000 * 60 * 4.5, [accessToken]);
1559
- useAsyncInterval(function () {
1560
- try {
1561
- if (!accessToken) {
1562
- natsCredsRef.current = null;
1563
- return Promise.resolve();
1564
- }
1565
-
1566
- var _temp5 = _catch(function () {
1567
- return Promise.resolve(request(urls.apiUrl + "/nats-token")).then(function (response) {
1568
- natsCredsRef.current = response;
1569
- });
1570
- }, function () {});
1571
-
1572
- return Promise.resolve(_temp5 && _temp5.then ? _temp5.then(function () {}) : void 0);
1573
- } catch (e) {
1574
- return Promise.reject(e);
1575
- }
1576
- }, 1000 * 60 * 9.5, [accessToken]);
1577
- return /*#__PURE__*/React.createElement(BrowserRouter, null, /*#__PURE__*/React.createElement(MMAuthContext.Provider, {
1578
- value: {
1579
- isAuthenticated: isAuthenticated,
1580
- login: login,
1581
- logout: logout,
1582
- request: request,
1583
- urls: urls
1584
- }
1585
- }, /*#__PURE__*/React.createElement(Routes, null, /*#__PURE__*/React.createElement(Route, {
1586
- exact: true,
1587
- path: "/authorize/mm/callback",
1588
- element: /*#__PURE__*/React.createElement(Authorize, {
1589
- authorize: authorize
1590
- })
1591
- }), /*#__PURE__*/React.createElement(Route, {
1592
- path: "/",
1593
- element: /*#__PURE__*/React.createElement(DataWrapper, {
1594
- clientId: clientId,
1595
- graphQLRoleOverride: graphQLRoleOverride,
1596
- jwtRef: jwtRef,
1597
- natsCredsRef: natsCredsRef,
1598
- accessToken: accessToken
1599
- })
1600
- }, children))));
1601
- };
1602
-
1603
- var URL_MAP = {
1604
- production: {
1605
- loginUrl: 'https://login.machinemetrics.com',
1606
- appUrl: 'https://app.machinemetrics.com',
1607
- apiUrl: 'https://api.machinemetrics.com',
1608
- graphQLUrl: 'https://graphql.machinemetrics.com/v1/graphql',
1609
- natsUrl: 'https://stream.machinemetrics.com'
1610
- },
1611
- staging: {
1612
- loginUrl: 'https://login-staging.machinemetrics.com',
1613
- appUrl: 'https://staging.machinemetrics.com',
1614
- apiUrl: 'https://api-staging.machinemetrics.com',
1615
- graphQLUrl: 'https://development.graphql.machinemetrics.com/v1/graphql',
1616
- natsUrl: 'https://stream.data.dev.m12s.com'
1617
- },
1618
- demo: {
1619
- loginUrl: 'https://login-demo.machinemetrics.com',
1620
- appUrl: 'https://demo.machinemetrics.com',
1621
- apiUrl: 'https://api-demo.machinemetrics.com',
1622
- graphQLUrl: 'https://development.graphql.machinemetrics.com/v1/graphql',
1623
- natsUrl: 'https://stream.data.dev.m12s.com'
1624
- },
1625
- development: {
1626
- loginUrl: 'https://login.development.machinemetrics.com',
1627
- appUrl: 'https://app.development.machinemetrics.com',
1628
- apiUrl: 'https://api.development.machinemetrics.com',
1629
- graphQLUrl: 'https://development.graphql.machinemetrics.com/v1/graphql',
1630
- natsUrl: 'https://stream.data.dev.m12s.com'
1631
- }
1632
- };
1633
-
1634
- var MMProvider = function MMProvider(_ref) {
1635
- var children = _ref.children,
1636
- domain = _ref.domain,
1637
- scope = _ref.scope,
1638
- clientId = _ref.clientId,
1639
- clientSecret = _ref.clientSecret,
1640
- releaseStage = _ref.releaseStage,
1641
- graphQLRoleOverride = _ref.graphQLRoleOverride,
1642
- customUrls = _ref.urls;
1643
-
1644
- if (releaseStage === 'release') {
1645
- releaseStage = 'production';
1646
- console.warn("releaseStage \"release\" has been deprecated. use \"production\" instead.");
1647
- }
1648
-
1649
- var urls;
1650
-
1651
- if (URL_MAP[releaseStage]) {
1652
- urls = URL_MAP[releaseStage];
1653
- } else {
1654
- var stages = _.keys(URL_MAP).join(', ');
1655
-
1656
- throw Error("MMProvider releaseStage must be one of the following: " + stages);
1657
- }
1658
-
1659
- urls = _.merge(urls, customUrls);
1660
-
1661
- var _useState = useState(retrieveAccessToken()),
1662
- accessToken = _useState[0],
1663
- setAccessToken = _useState[1];
1664
-
1665
- useEffect(function () {
1666
- storeAccessToken(accessToken);
1667
- }, [accessToken]);
1668
-
1669
- var login = function login() {
1670
- var authState = v4();
1671
- storeAuthState(authState);
1672
- storeDestination(window.location.pathname + window.location.search);
1673
-
1674
- var createParamString = function createParamString(params) {
1675
- return _.map(params, function (v, k) {
1676
- return k + "=" + v;
1677
- }).join('&');
1678
- };
1679
-
1680
- var loginParams = createParamString({
1681
- response_type: 'code',
1682
- state: authState,
1683
- scope: scope,
1684
- ttl: 1209600,
1685
- client_id: clientId,
1686
- redirect_uri: domain + "/authorize/mm/callback"
1687
- });
1688
- var loginUrl = urls.loginUrl + "/oauth/authorize?" + loginParams;
1689
- window.location = loginUrl;
1690
- };
1691
-
1692
- var authorize = function authorize(abortSignal) {
1693
- try {
1694
- var query = qs.parse(window.location.search);
1695
- var code = query.code;
1696
-
1697
- if (query.state !== retrieveAuthState()) {
1698
- throw Error('Oops');
1699
- }
1700
-
1701
- var params = {
1702
- grant_type: 'authorization_code',
1703
- client_id: clientId,
1704
- client_secret: clientSecret,
1705
- code: code,
1706
- redirect_uri: domain + "/authorize/mm/callback"
1707
- };
1708
- return Promise.resolve(rawRequest(urls.loginUrl + "/oauth/token", {
1709
- method: 'POST',
1710
- headers: {
1711
- 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
1712
- },
1713
- body: new URLSearchParams(params),
1714
- signal: abortSignal
1715
- })).then(function (response) {
1716
- setAccessToken(response.access_token);
1717
- storeAuthState();
1718
- });
1719
- } catch (e) {
1720
- return Promise.reject(e);
1721
- }
1722
- };
1723
-
1724
- var deauthorize = function deauthorize() {
1725
- setAccessToken();
1726
- };
1727
-
1728
- var isRoute = function isRoute(children) {
1729
- return React.Children.toArray(children).filter(function (r) {
1730
- return r.type === Route;
1731
- }).length > 0;
1732
- };
1733
-
1734
- return /*#__PURE__*/React.createElement(MMJwtProvider, {
1735
- urls: urls,
1736
- clientId: clientId,
1737
- login: login,
1738
- authorize: authorize,
1739
- deauthorize: deauthorize,
1740
- accessToken: accessToken,
1741
- graphQLRoleOverride: graphQLRoleOverride
1742
- }, isRoute(children) ? children : /*#__PURE__*/React.createElement(Route, {
1743
- path: "/",
1744
- element: children
1745
- }));
1746
- };
1747
-
1748
- var ALLOWED_DELIVERY_POLICIES = ['new', 'last', 'last_per_subject'];
1749
-
1750
- var connectToServer = function connectToServer(url, creds) {
1751
- try {
1752
- console.info("Connecting to server " + url);
1753
- return Promise.resolve(connect({
1754
- servers: [url],
1755
- authenticator: credsAuthenticator(new TextEncoder().encode(creds))
1756
- }));
1757
- } catch (e) {
1758
- return Promise.reject(e);
1759
- }
1760
- };
1761
-
1762
- function decode(_x) {
1763
- return _decode.apply(this, arguments);
1764
- }
1765
-
1766
- function _decode() {
1767
- _decode = _wrapAsyncGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(messages) {
1768
- var codec, _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, message;
1769
-
1770
- return _regeneratorRuntime().wrap(function _callee$(_context) {
1771
- while (1) {
1772
- switch (_context.prev = _context.next) {
1773
- case 0:
1774
- codec = JSONCodec();
1775
- _iteratorAbruptCompletion = false;
1776
- _didIteratorError = false;
1777
- _context.prev = 3;
1778
- _iterator = _asyncIterator(messages);
1779
-
1780
- case 5:
1781
- _context.next = 7;
1782
- return _awaitAsyncGenerator(_iterator.next());
1783
-
1784
- case 7:
1785
- if (!(_iteratorAbruptCompletion = !(_step = _context.sent).done)) {
1786
- _context.next = 20;
1787
- break;
1788
- }
1789
-
1790
- message = _step.value;
1791
- _context.prev = 9;
1792
- _context.next = 12;
1793
- return codec.decode(message.data);
1794
-
1795
- case 12:
1796
- _context.next = 17;
1797
- break;
1798
-
1799
- case 14:
1800
- _context.prev = 14;
1801
- _context.t0 = _context["catch"](9);
1802
- console.warn("Skipping event: " + _context.t0);
1803
-
1804
- case 17:
1805
- _iteratorAbruptCompletion = false;
1806
- _context.next = 5;
1807
- break;
1808
-
1809
- case 20:
1810
- _context.next = 26;
1811
- break;
1812
-
1813
- case 22:
1814
- _context.prev = 22;
1815
- _context.t1 = _context["catch"](3);
1816
- _didIteratorError = true;
1817
- _iteratorError = _context.t1;
1818
-
1819
- case 26:
1820
- _context.prev = 26;
1821
- _context.prev = 27;
1822
-
1823
- if (!(_iteratorAbruptCompletion && _iterator["return"] != null)) {
1824
- _context.next = 31;
1825
- break;
1826
- }
1827
-
1828
- _context.next = 31;
1829
- return _awaitAsyncGenerator(_iterator["return"]());
1830
-
1831
- case 31:
1832
- _context.prev = 31;
1833
-
1834
- if (!_didIteratorError) {
1835
- _context.next = 34;
1836
- break;
1837
- }
1838
-
1839
- throw _iteratorError;
1840
-
1841
- case 34:
1842
- return _context.finish(31);
1843
-
1844
- case 35:
1845
- return _context.finish(26);
1846
-
1847
- case 36:
1848
- case "end":
1849
- return _context.stop();
1850
- }
1851
- }
1852
- }, _callee, null, [[3, 22, 26, 36], [9, 14], [27,, 31, 35]]);
1853
- }));
1854
- return _decode.apply(this, arguments);
1855
- }
1856
-
1857
- var closeConnection = function closeConnection(eventStreamRef, connectionRef) {
1858
- if (eventStreamRef.current) {
1859
- eventStreamRef.current = undefined;
1860
- }
1861
-
1862
- if (connectionRef.current) {
1863
- connectionRef.current.close();
1864
- connectionRef.current = undefined;
1865
- }
1866
- };
1867
-
1868
- var streamPatterns = {
1869
- scada: 'mm.0.[location-ref].[machine-ref].[qualifier].[data-category].[metric-key].[message-type]',
1870
- 'machine-service': 'mm.2.[location-ref].[machine-ref].[service-name].[qualifier].[data-category].[metric-key].[message-type]',
1871
- 'edge-service': 'mm.3.[location-ref].[edge-ref].[service-name].[data-category].[metric-key].[message-type]',
1872
- 'machine-source-service': 'mm.4.[location-ref].[machine-ref].[machine-source-ref].[service-name].[data-category].[metric-key].[message-type]',
1873
- edge: 'mm.7.[location-ref].[edge-ref].[data-category].[metric-key].[message-type]'
1874
- };
1875
- var dataCategoryMapping = {
1876
- undefined: 0,
1877
- event: 1,
1878
- eventset: 2,
1879
- quantity: 3,
1880
- state: 4,
1881
- count: 5,
1882
- info: 6,
1883
- beat: 7
1884
- };
1885
-
1886
- var buildSubject = function buildSubject(streamName, locationRef, filter) {
1887
- if (!streamPatterns[streamName]) {
1888
- throw new Error('Unknown stream name');
1889
- }
1890
-
1891
- var pattern = streamPatterns[streamName].split('.');
1892
- var subject = '';
1893
- pattern.forEach(function (part, index) {
1894
- switch (part) {
1895
- case '[location-ref]':
1896
- subject += '.' + locationRef;
1897
- break;
1898
-
1899
- case '[machine-ref]':
1900
- subject += '.' + ((filter === null || filter === void 0 ? void 0 : filter.machineRef) || '*');
1901
- break;
1902
-
1903
- case '[qualifier]':
1904
- subject += '.' + ((filter === null || filter === void 0 ? void 0 : filter.qualifier) || '0');
1905
- break;
1906
-
1907
- case '[data-category]':
1908
- subject += '.' + (dataCategoryMapping[filter === null || filter === void 0 ? void 0 : filter.dataCategory] || '*');
1909
- break;
1910
-
1911
- case '[metric-key]':
1912
- subject += '.' + (filter !== null && filter !== void 0 && filter.metricKey ? filter === null || filter === void 0 ? void 0 : filter.metricKey.toLowerCase().replace(/[^a-zA-Z0-9_\\-]/gi, '-') : '*');
1913
- break;
1914
-
1915
- case '[message-type]':
1916
- subject += '.' + ((filter === null || filter === void 0 ? void 0 : filter.messageType) || '0');
1917
- break;
1918
-
1919
- case '[edge-ref]':
1920
- subject += '.' + ((filter === null || filter === void 0 ? void 0 : filter.edgeRef) || '*');
1921
- break;
1922
-
1923
- case '[service-name]':
1924
- subject += '.' + ((filter === null || filter === void 0 ? void 0 : filter.serviceName) || '*');
1925
- break;
1926
-
1927
- case '[machine-source-ref]':
1928
- subject += '.' + ((filter === null || filter === void 0 ? void 0 : filter.machineSourceRef) || '*');
1929
- break;
1930
-
1931
- default:
1932
- if (index > 0) {
1933
- subject += '.';
1934
- }
1935
-
1936
- subject += part;
1937
- break;
1938
- }
1939
- });
1940
- return subject;
1941
- };
1942
-
1943
- var useEventStream = function useEventStream(params) {
1944
- var streamName = params.streamName,
1945
- locationRef = params.locationRef,
1946
- filters = params.filters,
1947
- _params$deliverPolicy = params.deliverPolicy,
1948
- deliverPolicy = _params$deliverPolicy === void 0 ? 'new' : _params$deliverPolicy,
1949
- dispatch = params.dispatch;
1950
-
1951
- if (!ALLOWED_DELIVERY_POLICIES.includes(deliverPolicy)) {
1952
- throw new Error("Invalid deliverPolicy \"" + deliverPolicy + "\" specified. Valid options are: " + ALLOWED_DELIVERY_POLICIES.join(', '));
1953
- }
1954
-
1955
- if (filters && filters.length > 1) {
1956
- console.warn("Multiple filters are not supported. Only the first filter will be used.");
1957
- }
1958
-
1959
- var _useMMAuth = useMMAuth(),
1960
- urls = _useMMAuth.urls;
1961
-
1962
- var _useMMAuthInternal2 = _useMMAuthInternal(),
1963
- natsCredsRef = _useMMAuthInternal2.natsCredsRef;
1964
-
1965
- var connectionRef = useRef();
1966
- var eventStreamRef = useRef();
1967
- useEffect(function () {
1968
- if (!urls.natsUrl || !natsCredsRef.current || !streamName || !locationRef) return;
1969
-
1970
- var setupStream = function setupStream() {
1971
- try {
1972
- return Promise.resolve(_catch(function () {
1973
- return Promise.resolve(connectToServer(urls.natsUrl, natsCredsRef.current)).then(function (conn) {
1974
- connectionRef.current = conn;
1975
- var subject = buildSubject(streamName, locationRef, filters === null || filters === void 0 ? void 0 : filters[0]);
1976
- console.info("Consuming events from stream " + streamName + " filtering by subject " + subject);
1977
- return Promise.resolve(conn.jetstream().consumers.get(streamName, {
1978
- deliver_policy: deliverPolicy,
1979
- filterSubjects: subject
1980
- })).then(function (consumer) {
1981
- return Promise.resolve(consumer.consume({
1982
- max_messages: 1000
1983
- })).then(function (messages) {
1984
- var eventStream = decode(messages);
1985
- eventStreamRef.current = eventStream;
1986
- return function () {
1987
- if (typeof dispatch === 'function') {
1988
- var _iteratorAbruptCompletion2 = false;
1989
- var _didIteratorError2 = false;
1990
-
1991
- var _iteratorError2;
1992
-
1993
- return _finallyRethrows(function () {
1994
- return _catch(function () {
1995
- var _iterator2 = _asyncIterator(eventStream),
1996
- _step2;
1997
-
1998
- var _temp = _for(function () {
1999
- return Promise.resolve(_iterator2.next()).then(function (_iterator2$next) {
2000
- return _iteratorAbruptCompletion2 = !(_step2 = _iterator2$next).done;
2001
- });
2002
- }, function () {
2003
- return !!(_iteratorAbruptCompletion2 = false);
2004
- }, function () {
2005
- var event = _step2.value;
2006
- dispatch(event);
2007
- });
2008
-
2009
- if (_temp && _temp.then) return _temp.then(function () {});
2010
- }, function (err) {
2011
- _didIteratorError2 = true;
2012
- _iteratorError2 = err;
2013
- });
2014
- }, function (_wasThrown, _result2) {
2015
- var _exit = false;
2016
-
2017
- function _temp4(_result3) {
2018
- if (_exit) return _result3;
2019
- if (_wasThrown) throw _result2;
2020
- return _result2;
2021
- }
2022
-
2023
- var _temp3 = _finallyRethrows(function () {
2024
- var _temp2 = function () {
2025
- if (_iteratorAbruptCompletion2 && _iterator2["return"] != null) {
2026
- return Promise.resolve(_iterator2["return"]()).then(function () {});
2027
- }
2028
- }();
2029
-
2030
- if (_temp2 && _temp2.then) return _temp2.then(function () {});
2031
- }, function (_wasThrown2, _result3) {
2032
- if (_didIteratorError2) {
2033
- throw _iteratorError2;
2034
- }
2035
-
2036
- if (_wasThrown2) throw _result3;
2037
- return _result3;
2038
- });
2039
-
2040
- return _temp3 && _temp3.then ? _temp3.then(_temp4) : _temp4(_temp3);
2041
- });
2042
- }
2043
- }();
2044
- });
2045
- });
2046
- });
2047
- }, function (error) {
2048
- console.error("Error setting up event stream. " + error);
2049
- }));
2050
- } catch (e) {
2051
- return Promise.reject(e);
2052
- }
2053
- };
2054
-
2055
- setupStream();
2056
- return function () {
2057
- return closeConnection(eventStreamRef, connectionRef);
2058
- };
2059
- }, [streamName, locationRef, deliverPolicy, urls.natsUrl, natsCredsRef]);
2060
- return [eventStreamRef.current, function () {
2061
- return closeConnection(eventStreamRef, connectionRef);
2062
- }];
2063
- };
2064
-
2065
- export { MMProvider, PrivateLayout, _useMMAuthInternal, useApiRequest, useAsyncEffect, useAsyncInterval, useDowntimeQuery, useEventStream, useMMAuth, useMMHash, useMMTemplates, useProductionQuery, useQuantityStream, useThrottleEffect };
2066
- //# sourceMappingURL=index.modern.js.map