@copart/ops-tool-kit 1.9.0-alpha.2 → 1.9.0-alpha.4

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.
@@ -33,7 +33,7 @@ var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy(ReactDOM);
33
33
  var ReactDOM__namespace = /*#__PURE__*/_interopNamespace(ReactDOM);
34
34
 
35
35
  const name$e = "@copart/ops-tool-kit";
36
- const version$3 = "1.9.0-alpha.2";
36
+ const version$3 = "1.9.0-alpha.4";
37
37
  const main = "dist/ops-tool-kit.js";
38
38
  const style = "dist/ops-tool-kit.css";
39
39
  const files = [
@@ -90,7 +90,7 @@ const devDependencies = {
90
90
  };
91
91
  const peerDependencies = {
92
92
  react: "*",
93
- "@copart/core-components": "^1.4.47"
93
+ "@copart/core-components": "^2.2.5"
94
94
  };
95
95
  const dependencies = {
96
96
  "@reacting/purist": "0.1.0",
@@ -2556,24 +2556,29 @@ var isobject = function isObject(val) {
2556
2556
  };
2557
2557
 
2558
2558
  function isObjectObject(o) {
2559
- return isobject(o) === true && Object.prototype.toString.call(o) === '[object Object]';
2559
+ return isobject(o) === true
2560
+ && Object.prototype.toString.call(o) === '[object Object]';
2560
2561
  }
2561
2562
 
2562
2563
  var isPlainObject = function isPlainObject(o) {
2563
- var ctor, prot;
2564
- if (isObjectObject(o) === false) return false; // If has modified constructor
2564
+ var ctor,prot;
2565
2565
 
2566
+ if (isObjectObject(o) === false) return false;
2567
+
2568
+ // If has modified constructor
2566
2569
  ctor = o.constructor;
2567
- if (typeof ctor !== 'function') return false; // If has modified prototype
2570
+ if (typeof ctor !== 'function') return false;
2568
2571
 
2572
+ // If has modified prototype
2569
2573
  prot = ctor.prototype;
2570
- if (isObjectObject(prot) === false) return false; // If constructor does not have an Object-specific method
2574
+ if (isObjectObject(prot) === false) return false;
2571
2575
 
2576
+ // If constructor does not have an Object-specific method
2572
2577
  if (prot.hasOwnProperty('isPrototypeOf') === false) {
2573
2578
  return false;
2574
- } // Most likely a plain Object
2575
-
2579
+ }
2576
2580
 
2581
+ // Most likely a plain Object
2577
2582
  return true;
2578
2583
  };
2579
2584
 
@@ -3196,47 +3201,46 @@ var runtime = createCommonjsModule(function (module) {
3196
3201
  * This source code is licensed under the MIT license found in the
3197
3202
  * LICENSE file in the root directory of this source tree.
3198
3203
  */
3199
-
3200
- !(function(global) {
3204
+ !function (global) {
3201
3205
 
3202
3206
  var Op = Object.prototype;
3203
3207
  var hasOwn = Op.hasOwnProperty;
3204
3208
  var undefined$1; // More compressible than void 0.
3209
+
3205
3210
  var $Symbol = typeof Symbol === "function" ? Symbol : {};
3206
3211
  var iteratorSymbol = $Symbol.iterator || "@@iterator";
3207
3212
  var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
3208
3213
  var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
3209
3214
  var runtime = global.regeneratorRuntime;
3215
+
3210
3216
  if (runtime) {
3211
3217
  {
3212
3218
  // If regeneratorRuntime is defined globally and we're in a module,
3213
3219
  // make the exports object identical to regeneratorRuntime.
3214
3220
  module.exports = runtime;
3215
- }
3216
- // Don't bother evaluating the rest of this file if the runtime was
3221
+ } // Don't bother evaluating the rest of this file if the runtime was
3217
3222
  // already defined globally.
3218
- return;
3219
- }
3220
3223
 
3221
- // Define the runtime globally (as expected by generated code) as either
3224
+
3225
+ return;
3226
+ } // Define the runtime globally (as expected by generated code) as either
3222
3227
  // module.exports (if we're in a module) or a new, empty object.
3228
+
3229
+
3223
3230
  runtime = global.regeneratorRuntime = module.exports ;
3224
3231
 
3225
3232
  function wrap(innerFn, outerFn, self, tryLocsList) {
3226
3233
  // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
3227
3234
  var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
3228
3235
  var generator = Object.create(protoGenerator.prototype);
3229
- var context = new Context(tryLocsList || []);
3230
-
3231
- // The ._invoke method unifies the implementations of the .next,
3236
+ var context = new Context(tryLocsList || []); // The ._invoke method unifies the implementations of the .next,
3232
3237
  // .throw, and .return methods.
3233
- generator._invoke = makeInvokeMethod(innerFn, self, context);
3234
3238
 
3239
+ generator._invoke = makeInvokeMethod(innerFn, self, context);
3235
3240
  return generator;
3236
3241
  }
3237
- runtime.wrap = wrap;
3238
3242
 
3239
- // Try/catch helper to minimize deoptimizations. Returns a completion
3243
+ runtime.wrap = wrap; // Try/catch helper to minimize deoptimizations. Returns a completion
3240
3244
  // record like context.tryEntries[i].completion. This interface could
3241
3245
  // have been (and was previously) designed to take a closure to be
3242
3246
  // invoked without arguments, but in all the cases we care about we
@@ -3246,121 +3250,126 @@ var runtime = createCommonjsModule(function (module) {
3246
3250
  // in every case, so we don't have to touch the arguments object. The
3247
3251
  // only additional allocation required is the completion record, which
3248
3252
  // has a stable shape and so hopefully should be cheap to allocate.
3253
+
3249
3254
  function tryCatch(fn, obj, arg) {
3250
3255
  try {
3251
- return { type: "normal", arg: fn.call(obj, arg) };
3256
+ return {
3257
+ type: "normal",
3258
+ arg: fn.call(obj, arg)
3259
+ };
3252
3260
  } catch (err) {
3253
- return { type: "throw", arg: err };
3261
+ return {
3262
+ type: "throw",
3263
+ arg: err
3264
+ };
3254
3265
  }
3255
3266
  }
3256
3267
 
3257
3268
  var GenStateSuspendedStart = "suspendedStart";
3258
3269
  var GenStateSuspendedYield = "suspendedYield";
3259
3270
  var GenStateExecuting = "executing";
3260
- var GenStateCompleted = "completed";
3261
-
3262
- // Returning this object from the innerFn has the same effect as
3271
+ var GenStateCompleted = "completed"; // Returning this object from the innerFn has the same effect as
3263
3272
  // breaking out of the dispatch switch statement.
3264
- var ContinueSentinel = {};
3265
3273
 
3266
- // Dummy constructor functions that we use as the .constructor and
3274
+ var ContinueSentinel = {}; // Dummy constructor functions that we use as the .constructor and
3267
3275
  // .constructor.prototype properties for functions that return Generator
3268
3276
  // objects. For full spec compliance, you may wish to configure your
3269
3277
  // minifier not to mangle the names of these two functions.
3278
+
3270
3279
  function Generator() {}
3280
+
3271
3281
  function GeneratorFunction() {}
3272
- function GeneratorFunctionPrototype() {}
3273
3282
 
3274
- // This is a polyfill for %IteratorPrototype% for environments that
3283
+ function GeneratorFunctionPrototype() {} // This is a polyfill for %IteratorPrototype% for environments that
3275
3284
  // don't natively support it.
3285
+
3286
+
3276
3287
  var IteratorPrototype = {};
3288
+
3277
3289
  IteratorPrototype[iteratorSymbol] = function () {
3278
3290
  return this;
3279
3291
  };
3280
3292
 
3281
3293
  var getProto = Object.getPrototypeOf;
3282
3294
  var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
3283
- if (NativeIteratorPrototype &&
3284
- NativeIteratorPrototype !== Op &&
3285
- hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
3295
+
3296
+ if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
3286
3297
  // This environment has a native %IteratorPrototype%; use it instead
3287
3298
  // of the polyfill.
3288
3299
  IteratorPrototype = NativeIteratorPrototype;
3289
3300
  }
3290
3301
 
3291
- var Gp = GeneratorFunctionPrototype.prototype =
3292
- Generator.prototype = Object.create(IteratorPrototype);
3302
+ var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);
3293
3303
  GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
3294
3304
  GeneratorFunctionPrototype.constructor = GeneratorFunction;
3295
- GeneratorFunctionPrototype[toStringTagSymbol] =
3296
- GeneratorFunction.displayName = "GeneratorFunction";
3297
-
3298
- // Helper for defining the .next, .throw, and .return methods of the
3305
+ GeneratorFunctionPrototype[toStringTagSymbol] = GeneratorFunction.displayName = "GeneratorFunction"; // Helper for defining the .next, .throw, and .return methods of the
3299
3306
  // Iterator interface in terms of a single ._invoke method.
3307
+
3300
3308
  function defineIteratorMethods(prototype) {
3301
- ["next", "throw", "return"].forEach(function(method) {
3302
- prototype[method] = function(arg) {
3309
+ ["next", "throw", "return"].forEach(function (method) {
3310
+ prototype[method] = function (arg) {
3303
3311
  return this._invoke(method, arg);
3304
3312
  };
3305
3313
  });
3306
3314
  }
3307
3315
 
3308
- runtime.isGeneratorFunction = function(genFun) {
3316
+ runtime.isGeneratorFunction = function (genFun) {
3309
3317
  var ctor = typeof genFun === "function" && genFun.constructor;
3310
- return ctor
3311
- ? ctor === GeneratorFunction ||
3312
- // For the native GeneratorFunction constructor, the best we can
3313
- // do is to check its .name property.
3314
- (ctor.displayName || ctor.name) === "GeneratorFunction"
3315
- : false;
3318
+ return ctor ? ctor === GeneratorFunction || // For the native GeneratorFunction constructor, the best we can
3319
+ // do is to check its .name property.
3320
+ (ctor.displayName || ctor.name) === "GeneratorFunction" : false;
3316
3321
  };
3317
3322
 
3318
- runtime.mark = function(genFun) {
3323
+ runtime.mark = function (genFun) {
3319
3324
  if (Object.setPrototypeOf) {
3320
3325
  Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
3321
3326
  } else {
3322
3327
  genFun.__proto__ = GeneratorFunctionPrototype;
3328
+
3323
3329
  if (!(toStringTagSymbol in genFun)) {
3324
3330
  genFun[toStringTagSymbol] = "GeneratorFunction";
3325
3331
  }
3326
3332
  }
3333
+
3327
3334
  genFun.prototype = Object.create(Gp);
3328
3335
  return genFun;
3329
- };
3330
-
3331
- // Within the body of any async function, `await x` is transformed to
3336
+ }; // Within the body of any async function, `await x` is transformed to
3332
3337
  // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
3333
3338
  // `hasOwn.call(value, "__await")` to determine if the yielded value is
3334
3339
  // meant to be awaited.
3335
- runtime.awrap = function(arg) {
3336
- return { __await: arg };
3340
+
3341
+
3342
+ runtime.awrap = function (arg) {
3343
+ return {
3344
+ __await: arg
3345
+ };
3337
3346
  };
3338
3347
 
3339
3348
  function AsyncIterator(generator) {
3340
3349
  function invoke(method, arg, resolve, reject) {
3341
3350
  var record = tryCatch(generator[method], generator, arg);
3351
+
3342
3352
  if (record.type === "throw") {
3343
3353
  reject(record.arg);
3344
3354
  } else {
3345
3355
  var result = record.arg;
3346
3356
  var value = result.value;
3347
- if (value &&
3348
- typeof value === "object" &&
3349
- hasOwn.call(value, "__await")) {
3350
- return Promise.resolve(value.__await).then(function(value) {
3357
+
3358
+ if (value && typeof value === "object" && hasOwn.call(value, "__await")) {
3359
+ return Promise.resolve(value.__await).then(function (value) {
3351
3360
  invoke("next", value, resolve, reject);
3352
- }, function(err) {
3361
+ }, function (err) {
3353
3362
  invoke("throw", err, resolve, reject);
3354
3363
  });
3355
3364
  }
3356
3365
 
3357
- return Promise.resolve(value).then(function(unwrapped) {
3366
+ return Promise.resolve(value).then(function (unwrapped) {
3358
3367
  // When a yielded Promise is resolved, its final value becomes
3359
3368
  // the .value of the Promise<{value,done}> result for the
3360
3369
  // current iteration.
3361
3370
  result.value = unwrapped;
3362
3371
  resolve(result);
3363
- }, function(error) {
3372
+ }, function (error) {
3364
3373
  // If a rejected Promise was yielded, throw the rejection back
3365
3374
  // into the async generator function so it can be handled there.
3366
3375
  return invoke("throw", error, resolve, reject);
@@ -3372,61 +3381,53 @@ var runtime = createCommonjsModule(function (module) {
3372
3381
 
3373
3382
  function enqueue(method, arg) {
3374
3383
  function callInvokeWithMethodAndArg() {
3375
- return new Promise(function(resolve, reject) {
3384
+ return new Promise(function (resolve, reject) {
3376
3385
  invoke(method, arg, resolve, reject);
3377
3386
  });
3378
3387
  }
3379
3388
 
3380
- return previousPromise =
3381
- // If enqueue has been called before, then we want to wait until
3382
- // all previous Promises have been resolved before calling invoke,
3383
- // so that results are always delivered in the correct order. If
3384
- // enqueue has not been called before, then it is important to
3385
- // call invoke immediately, without waiting on a callback to fire,
3386
- // so that the async generator function has the opportunity to do
3387
- // any necessary setup in a predictable way. This predictability
3388
- // is why the Promise constructor synchronously invokes its
3389
- // executor callback, and why async functions synchronously
3390
- // execute code before the first await. Since we implement simple
3391
- // async functions in terms of async generators, it is especially
3392
- // important to get this right, even though it requires care.
3393
- previousPromise ? previousPromise.then(
3394
- callInvokeWithMethodAndArg,
3395
- // Avoid propagating failures to Promises returned by later
3396
- // invocations of the iterator.
3397
- callInvokeWithMethodAndArg
3398
- ) : callInvokeWithMethodAndArg();
3399
- }
3400
-
3401
- // Define the unified helper method that is used to implement .next,
3389
+ return previousPromise = // If enqueue has been called before, then we want to wait until
3390
+ // all previous Promises have been resolved before calling invoke,
3391
+ // so that results are always delivered in the correct order. If
3392
+ // enqueue has not been called before, then it is important to
3393
+ // call invoke immediately, without waiting on a callback to fire,
3394
+ // so that the async generator function has the opportunity to do
3395
+ // any necessary setup in a predictable way. This predictability
3396
+ // is why the Promise constructor synchronously invokes its
3397
+ // executor callback, and why async functions synchronously
3398
+ // execute code before the first await. Since we implement simple
3399
+ // async functions in terms of async generators, it is especially
3400
+ // important to get this right, even though it requires care.
3401
+ previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, // Avoid propagating failures to Promises returned by later
3402
+ // invocations of the iterator.
3403
+ callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
3404
+ } // Define the unified helper method that is used to implement .next,
3402
3405
  // .throw, and .return (see defineIteratorMethods).
3406
+
3407
+
3403
3408
  this._invoke = enqueue;
3404
3409
  }
3405
3410
 
3406
3411
  defineIteratorMethods(AsyncIterator.prototype);
3412
+
3407
3413
  AsyncIterator.prototype[asyncIteratorSymbol] = function () {
3408
3414
  return this;
3409
3415
  };
3410
- runtime.AsyncIterator = AsyncIterator;
3411
3416
 
3412
- // Note that simple async functions are implemented on top of
3417
+ runtime.AsyncIterator = AsyncIterator; // Note that simple async functions are implemented on top of
3413
3418
  // AsyncIterator objects; they just return a Promise for the value of
3414
3419
  // the final result produced by the iterator.
3415
- runtime.async = function(innerFn, outerFn, self, tryLocsList) {
3416
- var iter = new AsyncIterator(
3417
- wrap(innerFn, outerFn, self, tryLocsList)
3418
- );
3419
3420
 
3420
- return runtime.isGeneratorFunction(outerFn)
3421
- ? iter // If outerFn is a generator, return the full iterator.
3422
- : iter.next().then(function(result) {
3423
- return result.done ? result.value : iter.next();
3424
- });
3421
+ runtime.async = function (innerFn, outerFn, self, tryLocsList) {
3422
+ var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList));
3423
+ return runtime.isGeneratorFunction(outerFn) ? iter // If outerFn is a generator, return the full iterator.
3424
+ : iter.next().then(function (result) {
3425
+ return result.done ? result.value : iter.next();
3426
+ });
3425
3427
  };
3426
3428
 
3427
3429
  function makeInvokeMethod(innerFn, self, context) {
3428
3430
  var state = GenStateSuspendedStart;
3429
-
3430
3431
  return function invoke(method, arg) {
3431
3432
  if (state === GenStateExecuting) {
3432
3433
  throw new Error("Generator is already running");
@@ -3435,10 +3436,10 @@ var runtime = createCommonjsModule(function (module) {
3435
3436
  if (state === GenStateCompleted) {
3436
3437
  if (method === "throw") {
3437
3438
  throw arg;
3438
- }
3439
-
3440
- // Be forgiving, per 25.3.3.3.3 of the spec:
3439
+ } // Be forgiving, per 25.3.3.3.3 of the spec:
3441
3440
  // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
3441
+
3442
+
3442
3443
  return doneResult();
3443
3444
  }
3444
3445
 
@@ -3447,8 +3448,10 @@ var runtime = createCommonjsModule(function (module) {
3447
3448
 
3448
3449
  while (true) {
3449
3450
  var delegate = context.delegate;
3451
+
3450
3452
  if (delegate) {
3451
3453
  var delegateResult = maybeInvokeDelegate(delegate, context);
3454
+
3452
3455
  if (delegateResult) {
3453
3456
  if (delegateResult === ContinueSentinel) continue;
3454
3457
  return delegateResult;
@@ -3459,7 +3462,6 @@ var runtime = createCommonjsModule(function (module) {
3459
3462
  // Setting context._sent for legacy support of Babel's
3460
3463
  // function.sent implementation.
3461
3464
  context.sent = context._sent = context.arg;
3462
-
3463
3465
  } else if (context.method === "throw") {
3464
3466
  if (state === GenStateSuspendedStart) {
3465
3467
  state = GenStateCompleted;
@@ -3467,20 +3469,17 @@ var runtime = createCommonjsModule(function (module) {
3467
3469
  }
3468
3470
 
3469
3471
  context.dispatchException(context.arg);
3470
-
3471
3472
  } else if (context.method === "return") {
3472
3473
  context.abrupt("return", context.arg);
3473
3474
  }
3474
3475
 
3475
3476
  state = GenStateExecuting;
3476
-
3477
3477
  var record = tryCatch(innerFn, self, context);
3478
+
3478
3479
  if (record.type === "normal") {
3479
3480
  // If an exception is thrown from innerFn, we leave state ===
3480
3481
  // GenStateExecuting and loop back for another invocation.
3481
- state = context.done
3482
- ? GenStateCompleted
3483
- : GenStateSuspendedYield;
3482
+ state = context.done ? GenStateCompleted : GenStateSuspendedYield;
3484
3483
 
3485
3484
  if (record.arg === ContinueSentinel) {
3486
3485
  continue;
@@ -3490,24 +3489,24 @@ var runtime = createCommonjsModule(function (module) {
3490
3489
  value: record.arg,
3491
3490
  done: context.done
3492
3491
  };
3493
-
3494
3492
  } else if (record.type === "throw") {
3495
- state = GenStateCompleted;
3496
- // Dispatch the exception by looping back around to the
3493
+ state = GenStateCompleted; // Dispatch the exception by looping back around to the
3497
3494
  // context.dispatchException(context.arg) call above.
3495
+
3498
3496
  context.method = "throw";
3499
3497
  context.arg = record.arg;
3500
3498
  }
3501
3499
  }
3502
3500
  };
3503
- }
3504
-
3505
- // Call delegate.iterator[context.method](context.arg) and handle the
3501
+ } // Call delegate.iterator[context.method](context.arg) and handle the
3506
3502
  // result, either by returning a { value, done } result from the
3507
3503
  // delegate iterator, or by modifying context.method and context.arg,
3508
3504
  // setting context.delegate to null, and returning the ContinueSentinel.
3505
+
3506
+
3509
3507
  function maybeInvokeDelegate(delegate, context) {
3510
3508
  var method = delegate.iterator[context.method];
3509
+
3511
3510
  if (method === undefined$1) {
3512
3511
  // A .throw or .return when the delegate iterator has no .throw
3513
3512
  // method always terminates the yield* loop.
@@ -3529,8 +3528,7 @@ var runtime = createCommonjsModule(function (module) {
3529
3528
  }
3530
3529
 
3531
3530
  context.method = "throw";
3532
- context.arg = new TypeError(
3533
- "The iterator does not provide a 'throw' method");
3531
+ context.arg = new TypeError("The iterator does not provide a 'throw' method");
3534
3532
  }
3535
3533
 
3536
3534
  return ContinueSentinel;
@@ -3547,7 +3545,7 @@ var runtime = createCommonjsModule(function (module) {
3547
3545
 
3548
3546
  var info = record.arg;
3549
3547
 
3550
- if (! info) {
3548
+ if (!info) {
3551
3549
  context.method = "throw";
3552
3550
  context.arg = new TypeError("iterator result is not an object");
3553
3551
  context.delegate = null;
@@ -3557,54 +3555,51 @@ var runtime = createCommonjsModule(function (module) {
3557
3555
  if (info.done) {
3558
3556
  // Assign the result of the finished delegate to the temporary
3559
3557
  // variable specified by delegate.resultName (see delegateYield).
3560
- context[delegate.resultName] = info.value;
3558
+ context[delegate.resultName] = info.value; // Resume execution at the desired location (see delegateYield).
3561
3559
 
3562
- // Resume execution at the desired location (see delegateYield).
3563
- context.next = delegate.nextLoc;
3564
-
3565
- // If context.method was "throw" but the delegate handled the
3560
+ context.next = delegate.nextLoc; // If context.method was "throw" but the delegate handled the
3566
3561
  // exception, let the outer generator proceed normally. If
3567
3562
  // context.method was "next", forget context.arg since it has been
3568
3563
  // "consumed" by the delegate iterator. If context.method was
3569
3564
  // "return", allow the original .return call to continue in the
3570
3565
  // outer generator.
3566
+
3571
3567
  if (context.method !== "return") {
3572
3568
  context.method = "next";
3573
3569
  context.arg = undefined$1;
3574
3570
  }
3575
-
3576
3571
  } else {
3577
3572
  // Re-yield the result returned by the delegate method.
3578
3573
  return info;
3579
- }
3580
-
3581
- // The delegate iterator is finished, so forget it and continue with
3574
+ } // The delegate iterator is finished, so forget it and continue with
3582
3575
  // the outer generator.
3576
+
3577
+
3583
3578
  context.delegate = null;
3584
3579
  return ContinueSentinel;
3585
- }
3586
-
3587
- // Define Generator.prototype.{next,throw,return} in terms of the
3580
+ } // Define Generator.prototype.{next,throw,return} in terms of the
3588
3581
  // unified ._invoke helper method.
3589
- defineIteratorMethods(Gp);
3590
3582
 
3591
- Gp[toStringTagSymbol] = "Generator";
3592
3583
 
3593
- // A Generator should always return itself as the iterator object when the
3584
+ defineIteratorMethods(Gp);
3585
+ Gp[toStringTagSymbol] = "Generator"; // A Generator should always return itself as the iterator object when the
3594
3586
  // @@iterator function is called on it. Some browsers' implementations of the
3595
3587
  // iterator prototype chain incorrectly implement this, causing the Generator
3596
3588
  // object to not be returned from this call. This ensures that doesn't happen.
3597
3589
  // See https://github.com/facebook/regenerator/issues/274 for more details.
3598
- Gp[iteratorSymbol] = function() {
3590
+
3591
+ Gp[iteratorSymbol] = function () {
3599
3592
  return this;
3600
3593
  };
3601
3594
 
3602
- Gp.toString = function() {
3595
+ Gp.toString = function () {
3603
3596
  return "[object Generator]";
3604
3597
  };
3605
3598
 
3606
3599
  function pushTryEntry(locs) {
3607
- var entry = { tryLoc: locs[0] };
3600
+ var entry = {
3601
+ tryLoc: locs[0]
3602
+ };
3608
3603
 
3609
3604
  if (1 in locs) {
3610
3605
  entry.catchLoc = locs[1];
@@ -3629,33 +3624,37 @@ var runtime = createCommonjsModule(function (module) {
3629
3624
  // The root entry object (effectively a try statement without a catch
3630
3625
  // or a finally block) gives us a place to store values thrown from
3631
3626
  // locations where there is no enclosing try statement.
3632
- this.tryEntries = [{ tryLoc: "root" }];
3627
+ this.tryEntries = [{
3628
+ tryLoc: "root"
3629
+ }];
3633
3630
  tryLocsList.forEach(pushTryEntry, this);
3634
3631
  this.reset(true);
3635
3632
  }
3636
3633
 
3637
- runtime.keys = function(object) {
3634
+ runtime.keys = function (object) {
3638
3635
  var keys = [];
3636
+
3639
3637
  for (var key in object) {
3640
3638
  keys.push(key);
3641
3639
  }
3642
- keys.reverse();
3643
3640
 
3644
- // Rather than returning an object with a next method, we keep
3641
+ keys.reverse(); // Rather than returning an object with a next method, we keep
3645
3642
  // things simple and return the next function itself.
3643
+
3646
3644
  return function next() {
3647
3645
  while (keys.length) {
3648
3646
  var key = keys.pop();
3647
+
3649
3648
  if (key in object) {
3650
3649
  next.value = key;
3651
3650
  next.done = false;
3652
3651
  return next;
3653
3652
  }
3654
- }
3655
-
3656
- // To avoid creating an additional object, we just hang the .value
3653
+ } // To avoid creating an additional object, we just hang the .value
3657
3654
  // and .done properties off the next function object itself. This
3658
3655
  // also ensures that the minifier will not anonymize the function.
3656
+
3657
+
3659
3658
  next.done = true;
3660
3659
  return next;
3661
3660
  };
@@ -3664,6 +3663,7 @@ var runtime = createCommonjsModule(function (module) {
3664
3663
  function values(iterable) {
3665
3664
  if (iterable) {
3666
3665
  var iteratorMethod = iterable[iteratorSymbol];
3666
+
3667
3667
  if (iteratorMethod) {
3668
3668
  return iteratorMethod.call(iterable);
3669
3669
  }
@@ -3673,7 +3673,8 @@ var runtime = createCommonjsModule(function (module) {
3673
3673
  }
3674
3674
 
3675
3675
  if (!isNaN(iterable.length)) {
3676
- var i = -1, next = function next() {
3676
+ var i = -1,
3677
+ next = function next() {
3677
3678
  while (++i < iterable.length) {
3678
3679
  if (hasOwn.call(iterable, i)) {
3679
3680
  next.value = iterable[i];
@@ -3684,70 +3685,69 @@ var runtime = createCommonjsModule(function (module) {
3684
3685
 
3685
3686
  next.value = undefined$1;
3686
3687
  next.done = true;
3687
-
3688
3688
  return next;
3689
3689
  };
3690
3690
 
3691
3691
  return next.next = next;
3692
3692
  }
3693
- }
3693
+ } // Return an iterator with no values.
3694
3694
 
3695
- // Return an iterator with no values.
3696
- return { next: doneResult };
3695
+
3696
+ return {
3697
+ next: doneResult
3698
+ };
3697
3699
  }
3700
+
3698
3701
  runtime.values = values;
3699
3702
 
3700
3703
  function doneResult() {
3701
- return { value: undefined$1, done: true };
3704
+ return {
3705
+ value: undefined$1,
3706
+ done: true
3707
+ };
3702
3708
  }
3703
3709
 
3704
3710
  Context.prototype = {
3705
3711
  constructor: Context,
3706
-
3707
- reset: function(skipTempReset) {
3712
+ reset: function (skipTempReset) {
3708
3713
  this.prev = 0;
3709
- this.next = 0;
3710
- // Resetting context._sent for legacy support of Babel's
3714
+ this.next = 0; // Resetting context._sent for legacy support of Babel's
3711
3715
  // function.sent implementation.
3716
+
3712
3717
  this.sent = this._sent = undefined$1;
3713
3718
  this.done = false;
3714
3719
  this.delegate = null;
3715
-
3716
3720
  this.method = "next";
3717
3721
  this.arg = undefined$1;
3718
-
3719
3722
  this.tryEntries.forEach(resetTryEntry);
3720
3723
 
3721
3724
  if (!skipTempReset) {
3722
3725
  for (var name in this) {
3723
3726
  // Not sure about the optimal order of these conditions:
3724
- if (name.charAt(0) === "t" &&
3725
- hasOwn.call(this, name) &&
3726
- !isNaN(+name.slice(1))) {
3727
+ if (name.charAt(0) === "t" && hasOwn.call(this, name) && !isNaN(+name.slice(1))) {
3727
3728
  this[name] = undefined$1;
3728
3729
  }
3729
3730
  }
3730
3731
  }
3731
3732
  },
3732
-
3733
- stop: function() {
3733
+ stop: function () {
3734
3734
  this.done = true;
3735
-
3736
3735
  var rootEntry = this.tryEntries[0];
3737
3736
  var rootRecord = rootEntry.completion;
3737
+
3738
3738
  if (rootRecord.type === "throw") {
3739
3739
  throw rootRecord.arg;
3740
3740
  }
3741
3741
 
3742
3742
  return this.rval;
3743
3743
  },
3744
-
3745
- dispatchException: function(exception) {
3744
+ dispatchException: function (exception) {
3746
3745
  if (this.done) {
3747
3746
  throw exception;
3748
3747
  }
3749
3748
 
3750
3749
  var context = this;
3750
+
3751
3751
  function handle(loc, caught) {
3752
3752
  record.type = "throw";
3753
3753
  record.arg = exception;
@@ -3760,7 +3760,7 @@ var runtime = createCommonjsModule(function (module) {
3760
3760
  context.arg = undefined$1;
3761
3761
  }
3762
3762
 
3763
- return !! caught;
3763
+ return !!caught;
3764
3764
  }
3765
3765
 
3766
3766
  for (var i = this.tryEntries.length - 1; i >= 0; --i) {
@@ -3784,40 +3784,31 @@ var runtime = createCommonjsModule(function (module) {
3784
3784
  } else if (this.prev < entry.finallyLoc) {
3785
3785
  return handle(entry.finallyLoc);
3786
3786
  }
3787
-
3788
3787
  } else if (hasCatch) {
3789
3788
  if (this.prev < entry.catchLoc) {
3790
3789
  return handle(entry.catchLoc, true);
3791
3790
  }
3792
-
3793
3791
  } else if (hasFinally) {
3794
3792
  if (this.prev < entry.finallyLoc) {
3795
3793
  return handle(entry.finallyLoc);
3796
3794
  }
3797
-
3798
3795
  } else {
3799
3796
  throw new Error("try statement without catch or finally");
3800
3797
  }
3801
3798
  }
3802
3799
  }
3803
3800
  },
3804
-
3805
- abrupt: function(type, arg) {
3801
+ abrupt: function (type, arg) {
3806
3802
  for (var i = this.tryEntries.length - 1; i >= 0; --i) {
3807
3803
  var entry = this.tryEntries[i];
3808
- if (entry.tryLoc <= this.prev &&
3809
- hasOwn.call(entry, "finallyLoc") &&
3810
- this.prev < entry.finallyLoc) {
3804
+
3805
+ if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) {
3811
3806
  var finallyEntry = entry;
3812
3807
  break;
3813
3808
  }
3814
3809
  }
3815
3810
 
3816
- if (finallyEntry &&
3817
- (type === "break" ||
3818
- type === "continue") &&
3819
- finallyEntry.tryLoc <= arg &&
3820
- arg <= finallyEntry.finallyLoc) {
3811
+ if (finallyEntry && (type === "break" || type === "continue") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) {
3821
3812
  // Ignore the finally entry if control is not jumping to a
3822
3813
  // location outside the try/catch block.
3823
3814
  finallyEntry = null;
@@ -3835,14 +3826,12 @@ var runtime = createCommonjsModule(function (module) {
3835
3826
 
3836
3827
  return this.complete(record);
3837
3828
  },
3838
-
3839
- complete: function(record, afterLoc) {
3829
+ complete: function (record, afterLoc) {
3840
3830
  if (record.type === "throw") {
3841
3831
  throw record.arg;
3842
3832
  }
3843
3833
 
3844
- if (record.type === "break" ||
3845
- record.type === "continue") {
3834
+ if (record.type === "break" || record.type === "continue") {
3846
3835
  this.next = record.arg;
3847
3836
  } else if (record.type === "return") {
3848
3837
  this.rval = this.arg = record.arg;
@@ -3854,10 +3843,10 @@ var runtime = createCommonjsModule(function (module) {
3854
3843
 
3855
3844
  return ContinueSentinel;
3856
3845
  },
3857
-
3858
- finish: function(finallyLoc) {
3846
+ finish: function (finallyLoc) {
3859
3847
  for (var i = this.tryEntries.length - 1; i >= 0; --i) {
3860
3848
  var entry = this.tryEntries[i];
3849
+
3861
3850
  if (entry.finallyLoc === finallyLoc) {
3862
3851
  this.complete(entry.completion, entry.afterLoc);
3863
3852
  resetTryEntry(entry);
@@ -3865,26 +3854,27 @@ var runtime = createCommonjsModule(function (module) {
3865
3854
  }
3866
3855
  }
3867
3856
  },
3868
-
3869
- "catch": function(tryLoc) {
3857
+ "catch": function (tryLoc) {
3870
3858
  for (var i = this.tryEntries.length - 1; i >= 0; --i) {
3871
3859
  var entry = this.tryEntries[i];
3860
+
3872
3861
  if (entry.tryLoc === tryLoc) {
3873
3862
  var record = entry.completion;
3863
+
3874
3864
  if (record.type === "throw") {
3875
3865
  var thrown = record.arg;
3876
3866
  resetTryEntry(entry);
3877
3867
  }
3868
+
3878
3869
  return thrown;
3879
3870
  }
3880
- }
3881
-
3882
- // The context.catch method must only be called with a location
3871
+ } // The context.catch method must only be called with a location
3883
3872
  // argument that corresponds to a known catch block.
3873
+
3874
+
3884
3875
  throw new Error("illegal catch attempt");
3885
3876
  },
3886
-
3887
- delegateYield: function(iterable, resultName, nextLoc) {
3877
+ delegateYield: function (iterable, resultName, nextLoc) {
3888
3878
  this.delegate = {
3889
3879
  iterator: values(iterable),
3890
3880
  resultName: resultName,
@@ -3900,14 +3890,12 @@ var runtime = createCommonjsModule(function (module) {
3900
3890
  return ContinueSentinel;
3901
3891
  }
3902
3892
  };
3903
- })(
3904
- // In sloppy mode, unbound `this` refers to the global object, fallback to
3905
- // Function constructor if we're in global strict mode. That is sadly a form
3906
- // of indirect eval which violates Content Security Policy.
3907
- (function() {
3908
- return this || (typeof self === "object" && self);
3909
- })() || Function("return this")()
3910
- );
3893
+ }( // In sloppy mode, unbound `this` refers to the global object, fallback to
3894
+ // Function constructor if we're in global strict mode. That is sadly a form
3895
+ // of indirect eval which violates Content Security Policy.
3896
+ function () {
3897
+ return this || typeof self === "object" && self;
3898
+ }() || Function("return this")());
3911
3899
  });
3912
3900
 
3913
3901
  /**
@@ -3916,24 +3904,19 @@ var runtime = createCommonjsModule(function (module) {
3916
3904
  * This source code is licensed under the MIT license found in the
3917
3905
  * LICENSE file in the root directory of this source tree.
3918
3906
  */
3919
-
3920
3907
  // This method of obtaining a reference to the global object needs to be
3921
3908
  // kept identical to the way it is obtained in runtime.js
3922
- var g$1 = (function() {
3923
- return this || (typeof self === "object" && self);
3924
- })() || Function("return this")();
3925
-
3926
- // Use `getOwnPropertyNames` because not all browsers support calling
3909
+ var g$1 = function () {
3910
+ return this || typeof self === "object" && self;
3911
+ }() || Function("return this")(); // Use `getOwnPropertyNames` because not all browsers support calling
3927
3912
  // `hasOwnProperty` on the global `self` object in a worker. See #183.
3928
- var hadRuntime = g$1.regeneratorRuntime &&
3929
- Object.getOwnPropertyNames(g$1).indexOf("regeneratorRuntime") >= 0;
3930
3913
 
3931
- // Save the old regeneratorRuntime in case it needs to be restored later.
3932
- var oldRuntime = hadRuntime && g$1.regeneratorRuntime;
3933
3914
 
3934
- // Force reevalutation of runtime.js.
3935
- g$1.regeneratorRuntime = undefined;
3915
+ var hadRuntime = g$1.regeneratorRuntime && Object.getOwnPropertyNames(g$1).indexOf("regeneratorRuntime") >= 0; // Save the old regeneratorRuntime in case it needs to be restored later.
3916
+
3917
+ var oldRuntime = hadRuntime && g$1.regeneratorRuntime; // Force reevalutation of runtime.js.
3936
3918
 
3919
+ g$1.regeneratorRuntime = undefined;
3937
3920
  var runtimeModule = runtime;
3938
3921
 
3939
3922
  if (hadRuntime) {
@@ -3943,7 +3926,7 @@ if (hadRuntime) {
3943
3926
  // Remove the global property added by runtime.js.
3944
3927
  try {
3945
3928
  delete g$1.regeneratorRuntime;
3946
- } catch(e) {
3929
+ } catch (e) {
3947
3930
  g$1.regeneratorRuntime = undefined;
3948
3931
  }
3949
3932
  }
@@ -30962,7 +30945,7 @@ var GoHome = function GoHome(props) {
30962
30945
  }, props.reason));
30963
30946
  };
30964
30947
 
30965
- var css_248z$1 = ".utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer {\n display: flex;\n flex-direction: column;\n position: absolute;\n background: #3A4454;\n min-width: 100px;\n max-width: 100px;\n height: 100%;\n color: #ffffff;\n transition: max-width 0.5s ease-in-out;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer:hover {\n max-width: 400px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenu {\n flex: 1;\n overflow-y: auto;\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenu::-webkit-scrollbar { \n display: none;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem {\n display: flex;\n width: 100%;\n padding: 6px 0px 6px 12px;\n border-radius: 5px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem.utilities_ops-app-frame_NavigationBar_NavigationBar--selected {\n color: #323130;\n background-color: #fff;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--expandButton {\n margin-left: auto;\n margin-right: 10px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem.utilities_ops-app-frame_NavigationBar_NavigationBar--expandedMenu {\n background-color: #73A6FF;\n transition: background-color 0.5s ease-in-out;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--expandButton i {\n margin-left: auto;\n font-size: 10px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemCount {\n margin-left: auto;\n margin-right: 10px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon {\n margin-right: 14.5px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName {\n max-width: 0;\n overflow: hidden;\n white-space:nowrap;\n margin: 0 5px;\n font-weight: 100;\n cursor: pointer;\n transition: max-width 0.5s ease-in-out;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer:hover .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName {\n max-width: 100%;\n margin-right: 10px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel1 > .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName {\n margin: 0 5px 0 0;\n font-weight: 600;\n margin-left: 0px;\n cursor: auto;\n cursor: initial;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel1 > .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon {\n margin-right: 0px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel1 > .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem {\n padding-left: 15px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel1 > .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName > span {\n display: inline;\n display: initial;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel2 {\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel3 {\n margin-left: 10px;\n padding: 0 2px;\n background-color: #232932;\n border-left: 1px solid #8A8886;\n overflow: hidden;\n max-height: 0px;\n transition: max-height 0.5s ease-in-out;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel3.utilities_ops-app-frame_NavigationBar_NavigationBar--expanded {\n max-height: 500px;\n margin-top: 3px;\n}";
30948
+ var css_248z$1 = ".utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer {\n display: flex;\n flex-direction: column;\n position: absolute;\n background: #3A4454;\n min-width: 100px;\n max-width: 100px;\n height: 100%;\n color: #ffffff;\n font-size: 16px;\n z-index: 99999;\n transition: max-width 0.5s ease-in-out;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer:hover {\n max-width: 400px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenu {\n flex: 1;\n overflow-y: auto;\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenu::-webkit-scrollbar { \n display: none;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem {\n display: flex;\n width: 100%;\n padding: 6px 0px 6px 12px;\n border-radius: 5px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemSelected {\n color: #323130;\n background-color: #fff;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--expandButton {\n margin-left: auto;\n margin-right: 10px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem.utilities_ops-app-frame_NavigationBar_NavigationBar--expandedMenu {\n background-color: #73A6FF;\n transition: background-color 0.5s ease-in-out;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--expandButton i {\n margin-left: auto;\n font-size: 12px;\n color: #fff;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem.utilities_ops-app-frame_NavigationBar_NavigationBar--selected .utilities_ops-app-frame_NavigationBar_NavigationBar--expandButton i{\n color: #323130;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemCount {\n margin-left: auto;\n margin-right: 10px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon {\n \n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon i {\n width: 20px;\n color: #fff;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemSelected .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon i{\n color: #323130;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName {\n max-width: 0;\n overflow: hidden;\n white-space: nowrap;\n margin: 0 5px 0 10px;\n font-weight: 100;\n cursor: pointer;\n transition: max-width 0.5s ease-in-out;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer:hover .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName {\n max-width: 100%;\n margin-right: 10px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel1 > .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName {\n max-width: 100%;\n margin: 0 5px 0 0;\n font-weight: 600;\n margin-left: 0px;\n cursor: auto;\n cursor: initial;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel1 > .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon {\n margin-right: 0px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel1 > .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem {\n padding-left: 12px;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel1 > .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem .utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName > span {\n display: inline;\n display: initial;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel2 {\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel3 {\n margin-left: 10px;\n padding: 0 2px;\n background-color: #232932;\n border-left: 1px solid #8A8886;\n overflow: hidden;\n max-height: 0px;\n transition: max-height 0.5s ease-in-out;\n}\n\n.utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel3.utilities_ops-app-frame_NavigationBar_NavigationBar--expanded {\n max-height: 500px;\n margin-top: 3px;\n}";
30966
30949
  styleInject(css_248z$1);
30967
30950
 
30968
30951
  var _styleModuleImportMap = {
@@ -30970,9 +30953,10 @@ var _styleModuleImportMap = {
30970
30953
  "NavBarContainer": "utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer",
30971
30954
  "NavMenu": "utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenu",
30972
30955
  "NavItem": "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem",
30973
- "selected": "utilities_ops-app-frame_NavigationBar_NavigationBar--selected",
30956
+ "NavItemSelected": "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemSelected",
30974
30957
  "expandButton": "utilities_ops-app-frame_NavigationBar_NavigationBar--expandButton",
30975
30958
  "expandedMenu": "utilities_ops-app-frame_NavigationBar_NavigationBar--expandedMenu",
30959
+ "selected": "utilities_ops-app-frame_NavigationBar_NavigationBar--selected",
30976
30960
  "NavItemCount": "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemCount",
30977
30961
  "NavItemIcon": "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon",
30978
30962
  "NavItemName": "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName",
@@ -30985,186 +30969,145 @@ var _styleModuleImportMap = {
30985
30969
 
30986
30970
  var NavIcon = function NavIcon(_ref) {
30987
30971
  var icon = _ref.icon;
30988
- return typeof icon === 'string' ? React__default["default"].createElement(coreComponents.Icon, {
30972
+ return typeof icon === 'string' ? React__default["default"].createElement(coreComponents.IconV2, {
30989
30973
  name: icon
30990
30974
  }) : icon;
30991
30975
  };
30992
30976
 
30993
- var NavigationMenuLevel1 = function NavigationMenuLevel1(_ref2) {
30994
- var _navItem$name;
30995
-
30996
- var navItem = _ref2.navItem,
30997
- isHover = _ref2.isHover,
30998
- activeSubmenu = _ref2.activeSubmenu,
30999
- setActiveSubmenu = _ref2.setActiveSubmenu,
31000
- navigateTo = _ref2.navigateTo,
31001
- selected = _ref2.selected,
31002
- setSelected = _ref2.setSelected,
31003
- defaultRedirect = _ref2.defaultRedirect,
31004
- reloadMenuItems = _ref2.reloadMenuItems;
31005
- var hasSubMenuItems = navItem.subMenuItems && navItem.subMenuItems.length > 0;
31006
- return React__default["default"].createElement("div", {
31007
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel1"
31008
- }, React__default["default"].createElement("div", {
31009
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem"
31010
- }, React__default["default"].createElement("div", {
31011
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon"
31012
- }, React__default["default"].createElement(NavIcon, {
31013
- icon: navItem.icon
31014
- })), React__default["default"].createElement("div", {
31015
- className: ((isHover ? 'hovered' : '') ? (isHover ? 'hovered' : '') + " " : "") + "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName"
31016
- }, (_navItem$name = navItem.name) === null || _navItem$name === void 0 ? void 0 : _navItem$name.toUpperCase()), React__default["default"].createElement("div", {
31017
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemCount"
31018
- }, navItem.count)), React__default["default"].createElement("div", null, hasSubMenuItems ? navItem.subMenuItems.map(function (subItem) {
31019
- return React__default["default"].createElement(NavigationMenuLevel2, {
31020
- key: subItem.name,
31021
- isHover: isHover,
31022
- navItem: subItem,
31023
- selected: selected,
31024
- setSelected: setSelected,
31025
- defaultRedirect: defaultRedirect,
31026
- activeSubmenu: activeSubmenu,
31027
- setActiveSubmenu: setActiveSubmenu,
31028
- navigateTo: navigateTo,
31029
- reloadMenuItems: reloadMenuItems
31030
- });
31031
- }) : null));
31032
- };
30977
+ var updateRoutes = function updateRoutes(navItems, parentRoute) {
30978
+ var updatedItems = navItems.map(function (item) {
30979
+ var updatedItem = _objectSpread2({}, item);
31033
30980
 
31034
- var NavigationMenuLevel2 = function NavigationMenuLevel2(_ref3) {
31035
- var navItem = _ref3.navItem,
31036
- isHover = _ref3.isHover,
31037
- selected = _ref3.selected,
31038
- setSelected = _ref3.setSelected,
31039
- defaultRedirect = _ref3.defaultRedirect,
31040
- activeSubmenu = _ref3.activeSubmenu,
31041
- setActiveSubmenu = _ref3.setActiveSubmenu,
31042
- navigateTo = _ref3.navigateTo,
31043
- reloadMenuItems = _ref3.reloadMenuItems;
30981
+ if (updatedItem.route) {
30982
+ updatedItem.fullRoute = parentRoute + '/' + updatedItem.route;
30983
+ }
31044
30984
 
31045
- var _useState = React.useState(navItem.count),
31046
- _useState2 = _slicedToArray(_useState, 2),
31047
- countText = _useState2[0],
31048
- setCountText = _useState2[1];
30985
+ if (updatedItem.subMenuItems) {
30986
+ updatedItem.subMenuItems = updateRoutes(updatedItem.subMenuItems, updatedItem.fullRoute);
30987
+ }
31049
30988
 
31050
- var hasSubMenuItems = navItem.subMenuItems && navItem.subMenuItems.length > 0;
31051
- React.useEffect(function () {
31052
- setTimeout(function () {
31053
- setCountText(!isHover ? navItem.count > 999 ? '999+' : navItem.count : navItem.count);
31054
- });
31055
- }, [isHover]);
30989
+ return updatedItem;
30990
+ });
30991
+ return updatedItems;
30992
+ };
31056
30993
 
31057
- var handleItemClick = function handleItemClick() {
31058
- setActiveSubmenu(activeSubmenu === navItem.route ? null : navItem.route);
31059
- setSelected(null);
30994
+ var getDepth = function getDepth(navItems) {
30995
+ var depth = 0;
30996
+ navItems.forEach(function (navItem) {
30997
+ var subMenuDepth = navItem.subMenuItems ? getDepth(navItem.subMenuItems) : 0;
30998
+ depth = Math.max(depth, 1 + subMenuDepth);
30999
+ });
31000
+ return depth;
31001
+ };
31002
+
31003
+ var validateConfig = function validateConfig(navItems) {
31004
+ var maxDepth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3;
31005
+ var keys = ['name', 'route'];
31006
+ if (navItems.length === 0) return false;
31007
+ var depth = getDepth(navItems);
31008
+ if (depth > maxDepth) return false;
31009
+ navItems.map(function (item) {
31010
+ var configItem = _objectSpread2({}, item);
31011
+
31012
+ if (keys.every(function (key) {
31013
+ return configItem.hasOwnProperty(key);
31014
+ }) === false) {
31015
+ console.log("please check and update the navigation config");
31016
+ return false;
31017
+ }
31060
31018
 
31061
- if (activeSubmenu != navItem.route) {
31062
- reloadMenuItems();
31019
+ if (configItem.subMenuItems) {
31020
+ validateConfig(configItem.subMenuItems, maxDepth - 1);
31063
31021
  }
31064
- };
31022
+ });
31023
+ return true;
31024
+ };
31065
31025
 
31066
- return React__default["default"].createElement("div", {
31067
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel2"
31068
- }, React__default["default"].createElement("div", {
31069
- onClick: handleItemClick,
31070
- className: _getClassName("NavItem ".concat(activeSubmenu === navItem.route ? "expandedMenu" : ""), _styleModuleImportMap, {
31071
- "handleMissingStyleName": "warn"
31072
- })
31073
- }, React__default["default"].createElement("div", {
31074
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon"
31075
- }, React__default["default"].createElement(NavIcon, {
31076
- icon: navItem.icon
31077
- })), React__default["default"].createElement("div", {
31078
- className: ((isHover ? 'hovered' : '') ? (isHover ? 'hovered' : '') + " " : "") + "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName"
31079
- }, navItem.name), hasSubMenuItems ? React__default["default"].createElement("div", {
31080
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--expandButton"
31081
- }, React__default["default"].createElement(coreComponents.Icon, {
31082
- name: activeSubmenu == navItem.route ? 'ChevronUpMed' : 'ChevronDownMed'
31083
- })) : React__default["default"].createElement("div", {
31084
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemCount"
31085
- }, countText)), React__default["default"].createElement("div", {
31086
- className: _getClassName("NavMenuLevel3 ".concat(activeSubmenu == navItem.route ? "expanded" : ""), _styleModuleImportMap, {
31087
- "handleMissingStyleName": "warn"
31088
- })
31089
- }, hasSubMenuItems ? navItem.subMenuItems.map(function (subItem) {
31090
- return React__default["default"].createElement(NavigationMenuLevel3, {
31091
- key: subItem.name,
31092
- isHover: isHover,
31093
- navItem: subItem,
31094
- selected: selected,
31095
- setSelected: setSelected,
31096
- defaultRedirect: defaultRedirect,
31097
- navigateTo: navigateTo
31098
- });
31099
- }) : null));
31026
+ var defaultRedirect = function defaultRedirect(addr) {
31027
+ window.open('http://localhost.copart.com' + addr, '_blank');
31100
31028
  };
31101
31029
 
31102
- var NavigationMenuLevel3 = function NavigationMenuLevel3(_ref4) {
31103
- var navItem = _ref4.navItem,
31104
- isHover = _ref4.isHover,
31105
- selected = _ref4.selected,
31106
- setSelected = _ref4.setSelected,
31107
- defaultRedirect = _ref4.defaultRedirect,
31108
- navigateTo = _ref4.navigateTo;
31030
+ var NavigationBar = function NavigationBar(_ref2) {
31031
+ var navItems = _ref2.navItems,
31032
+ navigateTo = _ref2.navigateTo,
31033
+ history = _ref2.history,
31034
+ getCounts = _ref2.getCounts;
31035
+ var navigateFunction = navigateTo || (history === null || history === void 0 ? void 0 : history.push) || defaultRedirect;
31036
+
31037
+ var _useState = React.useState(null),
31038
+ _useState2 = _slicedToArray(_useState, 2),
31039
+ navItemsModified = _useState2[0],
31040
+ setNavItemsModified = _useState2[1];
31109
31041
 
31110
- var _useState3 = React.useState(navItem.count),
31042
+ var _useState3 = React.useState(false),
31111
31043
  _useState4 = _slicedToArray(_useState3, 2),
31112
- countText = _useState4[0],
31113
- setCountText = _useState4[1];
31044
+ isHover = _useState4[0],
31045
+ setHover = _useState4[1];
31046
+
31047
+ var _useState5 = React.useState(null),
31048
+ _useState6 = _slicedToArray(_useState5, 2),
31049
+ configDepth = _useState6[0],
31050
+ setConfigDepth = _useState6[1];
31051
+
31052
+ var _useState7 = React.useState(null),
31053
+ _useState8 = _slicedToArray(_useState7, 2),
31054
+ isConfigValid = _useState8[0],
31055
+ setConfigValid = _useState8[1];
31056
+
31057
+ var _useState9 = React.useState(null),
31058
+ _useState10 = _slicedToArray(_useState9, 2),
31059
+ activeSubmenu = _useState10[0],
31060
+ setActiveSubmenu = _useState10[1];
31114
31061
 
31115
31062
  React.useEffect(function () {
31116
- setTimeout(function () {
31117
- setCountText(!isHover ? navItem.count > 999 ? '999+' : navItem.count : navItem.count);
31118
- });
31119
- }, [isHover]);
31120
- return React__default["default"].createElement("div", {
31121
- onClick: function onClick() {
31122
- setSelected(navItem.route);
31063
+ if (Array.isArray(navItems)) {
31064
+ var isValid = validateConfig(navItems);
31123
31065
 
31124
- if (navigateTo == null) {
31125
- defaultRedirect(navItem.route);
31066
+ if (isValid) {
31067
+ setNavItemsModified(updateRoutes(navItems, ""));
31068
+ setConfigDepth(getDepth(navItems));
31069
+ setConfigValid(true);
31126
31070
  } else {
31127
- navigateTo(navItem.route);
31071
+ setConfigValid(false);
31128
31072
  }
31073
+ } else {
31074
+ setConfigValid(false);
31075
+ }
31076
+ }, []);
31077
+ return React__default["default"].createElement("div", {
31078
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer",
31079
+ onMouseOver: function onMouseOver() {
31080
+ return setHover(true);
31129
31081
  },
31130
- className: _getClassName("NavItem ".concat(selected === navItem.route ? "selected" : ""), _styleModuleImportMap, {
31131
- "handleMissingStyleName": "warn"
31132
- })
31133
- }, React__default["default"].createElement("div", {
31134
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon"
31135
- }, React__default["default"].createElement(NavIcon, {
31136
- icon: navItem.icon
31137
- })), React__default["default"].createElement("div", {
31138
- className: ((isHover ? 'hovered' : '') ? (isHover ? 'hovered' : '') + " " : "") + "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName"
31139
- }, navItem.name), React__default["default"].createElement("div", {
31140
- key: isHover,
31141
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemCount"
31142
- }, countText));
31082
+ onMouseLeave: function onMouseLeave() {
31083
+ return setHover(false);
31084
+ }
31085
+ }, isConfigValid ? React__default["default"].createElement(NavigationMenu, {
31086
+ isHover: isHover,
31087
+ navItems: navItemsModified,
31088
+ navigateFunction: navigateFunction,
31089
+ configDepth: configDepth,
31090
+ activeSubmenu: activeSubmenu,
31091
+ setActiveSubmenu: setActiveSubmenu,
31092
+ getCounts: getCounts
31093
+ }) : null, !isConfigValid ? React__default["default"].createElement("div", null, "Please check your navigation config") : null);
31143
31094
  };
31144
31095
 
31145
- var NavigationMenu = function NavigationMenu(_ref5) {
31146
- var navItems = _ref5.navItems,
31147
- isHover = _ref5.isHover,
31148
- navigateTo = _ref5.navigateTo,
31149
- configDepth = _ref5.configDepth,
31150
- reloadMenuItems = _ref5.reloadMenuItems;
31151
-
31152
- var _useState5 = React.useState(null),
31153
- _useState6 = _slicedToArray(_useState5, 2),
31154
- activeSubmenu = _useState6[0],
31155
- setActiveSubmenu = _useState6[1];
31096
+ var NavigationMenu = function NavigationMenu(_ref3) {
31097
+ var navItems = _ref3.navItems,
31098
+ isHover = _ref3.isHover,
31099
+ navigateFunction = _ref3.navigateFunction,
31100
+ configDepth = _ref3.configDepth,
31101
+ activeSubmenu = _ref3.activeSubmenu,
31102
+ setActiveSubmenu = _ref3.setActiveSubmenu,
31103
+ getCounts = _ref3.getCounts;
31156
31104
 
31157
- var _useState7 = React.useState(null),
31158
- _useState8 = _slicedToArray(_useState7, 2),
31159
- selected = _useState8[0],
31160
- setSelected = _useState8[1];
31105
+ var _useState11 = React.useState(null),
31106
+ _useState12 = _slicedToArray(_useState11, 2),
31107
+ selected = _useState12[0],
31108
+ setSelected = _useState12[1];
31161
31109
 
31162
31110
  var redirectUrl = window.location.pathname;
31163
-
31164
- function defaultRedirect(addr) {
31165
- window.open('http://localhost.copart.com' + addr, '_blank');
31166
- }
31167
-
31168
31111
  React.useEffect(function () {
31169
31112
  if (redirectUrl != "/") {
31170
31113
  var splitUrl = redirectUrl.split("/");
@@ -31188,7 +31131,7 @@ var NavigationMenu = function NavigationMenu(_ref5) {
31188
31131
  }, [configDepth]);
31189
31132
  var NavComponent = configDepth === 3 ? NavigationMenuLevel1 : NavigationMenuLevel2;
31190
31133
  return React__default["default"].createElement("div", {
31191
- className: _getClassName("NavMenu ".concat(isHover ? "isHover" : ""), _styleModuleImportMap, {
31134
+ className: _getClassName("NavMenu", _styleModuleImportMap, {
31192
31135
  "handleMissingStyleName": "warn"
31193
31136
  })
31194
31137
  }, navItems.map(function (item) {
@@ -31197,142 +31140,166 @@ var NavigationMenu = function NavigationMenu(_ref5) {
31197
31140
  isHover: isHover,
31198
31141
  navItem: item,
31199
31142
  activeSubmenu: activeSubmenu,
31200
- navigateTo: navigateTo,
31143
+ navigateFunction: navigateFunction,
31201
31144
  setActiveSubmenu: setActiveSubmenu,
31202
31145
  selected: selected,
31203
31146
  setSelected: setSelected,
31204
- defaultRedirect: defaultRedirect,
31205
31147
  redirectUrl: redirectUrl,
31206
- reloadMenuItems: reloadMenuItems
31148
+ getCounts: getCounts
31207
31149
  });
31208
31150
  }));
31209
31151
  };
31210
31152
 
31211
- var NavigationBar = function NavigationBar(_ref6) {
31212
- var getNavItems = _ref6.getNavItems,
31213
- navigateTo = _ref6.navigateTo;
31153
+ var NavigationMenuLevel1 = function NavigationMenuLevel1(_ref4) {
31154
+ var _navItem$name, _navItem$shortName;
31214
31155
 
31215
- var _useState9 = React.useState(null),
31216
- _useState10 = _slicedToArray(_useState9, 2),
31217
- navItemsModified = _useState10[0],
31218
- setNavItemsModified = _useState10[1];
31156
+ var navItem = _ref4.navItem,
31157
+ isHover = _ref4.isHover,
31158
+ activeSubmenu = _ref4.activeSubmenu,
31159
+ setActiveSubmenu = _ref4.setActiveSubmenu,
31160
+ navigateFunction = _ref4.navigateFunction,
31161
+ selected = _ref4.selected,
31162
+ setSelected = _ref4.setSelected,
31163
+ getCounts = _ref4.getCounts;
31164
+ var hasSubMenuItems = navItem.subMenuItems && navItem.subMenuItems.length > 0;
31165
+ return React__default["default"].createElement("div", {
31166
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel1"
31167
+ }, React__default["default"].createElement("div", {
31168
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItem"
31169
+ }, React__default["default"].createElement("div", {
31170
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon"
31171
+ }, React__default["default"].createElement(NavIcon, {
31172
+ icon: navItem.icon
31173
+ })), React__default["default"].createElement("div", {
31174
+ className: ((isHover ? 'hovered' : '') ? (isHover ? 'hovered' : '') + " " : "") + "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName"
31175
+ }, isHover ? (_navItem$name = navItem.name) === null || _navItem$name === void 0 ? void 0 : _navItem$name.toUpperCase() : (_navItem$shortName = navItem.shortName) === null || _navItem$shortName === void 0 ? void 0 : _navItem$shortName.toUpperCase()), React__default["default"].createElement("div", {
31176
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemCount"
31177
+ }, navItem.count)), React__default["default"].createElement("div", null, hasSubMenuItems ? navItem.subMenuItems.map(function (subItem) {
31178
+ return React__default["default"].createElement(NavigationMenuLevel2, {
31179
+ key: subItem.name,
31180
+ isHover: isHover,
31181
+ navItem: subItem,
31182
+ selected: selected,
31183
+ setSelected: setSelected,
31184
+ activeSubmenu: activeSubmenu,
31185
+ setActiveSubmenu: setActiveSubmenu,
31186
+ navigateFunction: navigateFunction,
31187
+ getCounts: getCounts
31188
+ });
31189
+ }) : null));
31190
+ };
31219
31191
 
31220
- var _useState11 = React.useState(false),
31221
- _useState12 = _slicedToArray(_useState11, 2),
31222
- isHover = _useState12[0],
31223
- setHover = _useState12[1];
31192
+ var NavigationMenuLevel2 = function NavigationMenuLevel2(_ref5) {
31193
+ var navItem = _ref5.navItem,
31194
+ isHover = _ref5.isHover,
31195
+ selected = _ref5.selected,
31196
+ setSelected = _ref5.setSelected,
31197
+ activeSubmenu = _ref5.activeSubmenu,
31198
+ setActiveSubmenu = _ref5.setActiveSubmenu,
31199
+ navigateFunction = _ref5.navigateFunction,
31200
+ getCounts = _ref5.getCounts;
31201
+ var isMenuExpanded = activeSubmenu === navItem.fullRoute;
31202
+ var showCounts = isMenuExpanded && getCounts && typeof getCounts === 'function';
31224
31203
 
31225
31204
  var _useState13 = React.useState(null),
31226
31205
  _useState14 = _slicedToArray(_useState13, 2),
31227
- configDepth = _useState14[0],
31228
- setConfigDepth = _useState14[1];
31206
+ counts = _useState14[0],
31207
+ setCounts = _useState14[1];
31229
31208
 
31230
- var _useState15 = React.useState(null),
31209
+ var _useState15 = React.useState(false),
31231
31210
  _useState16 = _slicedToArray(_useState15, 2),
31232
- isConfigValid = _useState16[0],
31233
- setConfigValid = _useState16[1];
31211
+ countsLoading = _useState16[0],
31212
+ setCountsLoading = _useState16[1];
31234
31213
 
31214
+ var hasSubMenuItems = navItem.subMenuItems && navItem.subMenuItems.length > 0;
31235
31215
  React.useEffect(function () {
31236
- var navItems = getNavItems();
31237
-
31238
- if (Array.isArray(navItems)) {
31239
- var isValid = validateConfig(navItems);
31240
-
31241
- if (isValid) {
31242
- setConfigDepth(getDepth(navItems));
31243
- setNavItemsModified(updateRoutes(navItems, ""));
31244
- setConfigValid(true);
31245
- } else {
31246
- setConfigValid(false);
31247
- }
31248
- } else {
31249
- reloadMenuItems();
31250
- }
31251
- }, []);
31252
-
31253
- var updateRoutes = function updateRoutes(navItems, parentRoute) {
31254
- var updatedItems = navItems.map(function (item) {
31255
- var updatedItem = _objectSpread2({}, item);
31256
-
31257
- if (updatedItem.route) {
31258
- updatedItem.route = parentRoute + '/' + updatedItem.route;
31259
- }
31260
-
31261
- if (updatedItem.subMenuItems) {
31262
- updatedItem.subMenuItems = updateRoutes(updatedItem.subMenuItems, updatedItem.route);
31263
- }
31264
-
31265
- return updatedItem;
31266
- });
31267
- return updatedItems;
31268
- };
31269
-
31270
- var getDepth = function getDepth(navItems) {
31271
- var depth = 0;
31272
- navItems.forEach(function (navItem) {
31273
- var subMenuDepth = navItem.subMenuItems ? getDepth(navItem.subMenuItems) : 0;
31274
- depth = Math.max(depth, 1 + subMenuDepth);
31275
- });
31276
- return depth;
31277
- };
31278
-
31279
- var validateConfig = function validateConfig(navItems) {
31280
- var keys = ['name', 'route'];
31281
- if (navItems.length === 0) return false;
31282
- navItems.map(function (item) {
31283
- var configItem = _objectSpread2({}, item);
31284
-
31285
- if (keys.every(function (key) {
31286
- return configItem.hasOwnProperty(key);
31287
- }) === false) {
31288
- console.log("please check the navigation config and update the json");
31289
- return false;
31290
- }
31291
-
31292
- if (configItem.subMenuItems) {
31293
- validateConfig(configItem.subMenuItems);
31294
- }
31216
+ if (showCounts) {
31217
+ setCountsLoading(true);
31218
+ reloadCounts(navItem.route);
31219
+ }
31220
+ }, [activeSubmenu]);
31221
+
31222
+ var reloadCounts = function reloadCounts(menuItemName) {
31223
+ getCounts(menuItemName).then(function (result) {
31224
+ setCounts(result);
31225
+ setCountsLoading(false);
31226
+ }).catch(function () {
31227
+ setCountsLoading(false);
31295
31228
  });
31296
- return true;
31297
31229
  };
31298
31230
 
31299
- var reloadMenuItems = function reloadMenuItems() {
31300
- var navItems = getNavItems();
31301
-
31302
- if (!Array.isArray(navItems)) {
31303
- navItems.then(function (result) {
31304
- var isVaild = validateConfig(result);
31231
+ var handleItemClick = function handleItemClick() {
31232
+ setActiveSubmenu(isMenuExpanded ? null : navItem.fullRoute);
31233
+ setSelected(null);
31305
31234
 
31306
- if (isVaild) {
31307
- setConfigDepth(getDepth(result));
31308
- setNavItemsModified(updateRoutes(result, ""));
31309
- setConfigValid(true);
31310
- } else {
31311
- setConfigValid(false);
31312
- }
31313
- });
31235
+ if (!isMenuExpanded) {
31236
+ reloadCounts();
31314
31237
  }
31315
31238
  };
31316
31239
 
31317
- var onMouseOver = function onMouseOver() {
31318
- setHover(true);
31319
- };
31320
-
31321
- var onMouseLeave = function onMouseLeave() {
31322
- setHover(false);
31323
- };
31240
+ return React__default["default"].createElement("div", {
31241
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavMenuLevel2"
31242
+ }, React__default["default"].createElement("div", {
31243
+ onClick: handleItemClick,
31244
+ className: _getClassName("NavItem ".concat(isMenuExpanded ? "expandedMenu" : ""), _styleModuleImportMap, {
31245
+ "handleMissingStyleName": "warn"
31246
+ })
31247
+ }, React__default["default"].createElement("div", {
31248
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon"
31249
+ }, React__default["default"].createElement(NavIcon, {
31250
+ icon: navItem.icon
31251
+ })), React__default["default"].createElement("div", {
31252
+ className: ((isHover ? 'hovered' : '') ? (isHover ? 'hovered' : '') + " " : "") + "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName"
31253
+ }, navItem.name), hasSubMenuItems && React__default["default"].createElement("div", {
31254
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--expandButton"
31255
+ }, React__default["default"].createElement(coreComponents.IconV2, {
31256
+ name: isMenuExpanded ? 'chevron-up' : 'chevron-down'
31257
+ }))), React__default["default"].createElement("div", {
31258
+ className: _getClassName("NavMenuLevel3 ".concat(isMenuExpanded ? "expanded" : ""), _styleModuleImportMap, {
31259
+ "handleMissingStyleName": "warn"
31260
+ })
31261
+ }, hasSubMenuItems ? navItem.subMenuItems.map(function (subItem) {
31262
+ return React__default["default"].createElement(NavigationMenuLevel3, {
31263
+ key: subItem.fullRoute,
31264
+ isHover: isHover,
31265
+ navItem: subItem,
31266
+ count: counts && counts[subItem.route],
31267
+ countsLoading: countsLoading,
31268
+ selected: selected,
31269
+ setSelected: setSelected,
31270
+ navigateFunction: navigateFunction
31271
+ });
31272
+ }) : null));
31273
+ };
31324
31274
 
31275
+ var NavigationMenuLevel3 = function NavigationMenuLevel3(_ref6) {
31276
+ var navItem = _ref6.navItem,
31277
+ count = _ref6.count,
31278
+ countsLoading = _ref6.countsLoading,
31279
+ isHover = _ref6.isHover,
31280
+ selected = _ref6.selected,
31281
+ setSelected = _ref6.setSelected,
31282
+ navigateFunction = _ref6.navigateFunction;
31283
+ var countText = !isHover ? count > 999 ? '999+' : count : count;
31325
31284
  return React__default["default"].createElement("div", {
31326
- className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavBarContainer",
31327
- onMouseOver: onMouseOver,
31328
- onMouseLeave: onMouseLeave
31329
- }, isConfigValid ? React__default["default"].createElement(NavigationMenu, {
31330
- isHover: isHover,
31331
- navItems: navItemsModified,
31332
- navigateTo: navigateTo,
31333
- configDepth: configDepth,
31334
- reloadMenuItems: reloadMenuItems
31335
- }) : null, !isConfigValid ? React__default["default"].createElement("div", null, "Please check your navigation config") : null);
31285
+ onClick: function onClick() {
31286
+ setSelected(navItem.fullRoute);
31287
+ navigateFunction(navItem.fullRoute);
31288
+ },
31289
+ className: _getClassName("NavItem ".concat(selected === navItem.fullRoute ? "NavItemSelected" : ""), _styleModuleImportMap, {
31290
+ "handleMissingStyleName": "warn"
31291
+ })
31292
+ }, React__default["default"].createElement("div", {
31293
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemIcon"
31294
+ }, React__default["default"].createElement(NavIcon, {
31295
+ icon: navItem.icon
31296
+ })), React__default["default"].createElement("div", {
31297
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemName"
31298
+ }, navItem.name), React__default["default"].createElement("div", {
31299
+ className: "utilities_ops-app-frame_NavigationBar_NavigationBar--NavItemCount"
31300
+ }, countsLoading ? React__default["default"].createElement(coreComponents.Spinner, {
31301
+ size: "xxs"
31302
+ }) : null, !countsLoading ? countText : null));
31336
31303
  };
31337
31304
 
31338
31305
  /******************************************************************************
@@ -45622,325 +45589,6 @@ function withFirebaseConfigCheck (Comp) {
45622
45589
 
45623
45590
  var Notifications = withFirebaseConfigCheck(Notifications$2);
45624
45591
 
45625
- var _ref, _ref2;
45626
- var navItems = [{
45627
- name: "Dispatch",
45628
- icon: null,
45629
- count: null,
45630
- route: 'dispatch',
45631
- subMenuItems: [{
45632
- name: "Lots",
45633
- route: "lots",
45634
- icon: "Car",
45635
- count: null,
45636
- subMenuItems: [{
45637
- name: "All",
45638
- route: "all",
45639
- icon: React__default["default"].createElement(coreComponents.Icon, {
45640
- name: "Car"
45641
- }),
45642
- count: 13174
45643
- }, {
45644
- name: "Pending Trip Build",
45645
- route: 'pendingtripsbuild',
45646
- icon: React__default["default"].createElement(coreComponents.Icon, {
45647
- name: "Car"
45648
- }),
45649
- count: 10958
45650
- }, {
45651
- name: "Pending Processing",
45652
- route: 'dispatch',
45653
- icon: React__default["default"].createElement(coreComponents.Icon, {
45654
- name: "Car"
45655
- }),
45656
- count: 2089
45657
- }, {
45658
- name: "Pending Paperwork Verification",
45659
- route: 'pendingprocessing',
45660
- icon: React__default["default"].createElement(coreComponents.Icon, {
45661
- name: "Car"
45662
- }),
45663
- count: 268
45664
- }, {
45665
- name: "Partial Paperwork Verified",
45666
- route: 'partialpaperwork',
45667
- icon: React__default["default"].createElement(coreComponents.Icon, {
45668
- name: "Car"
45669
- }),
45670
- count: 19
45671
- }, {
45672
- name: "Awaiting Dispatch",
45673
- route: 'awaitingdispatch',
45674
- icon: React__default["default"].createElement(coreComponents.Icon, {
45675
- name: "Car"
45676
- }),
45677
- count: 18
45678
- }, {
45679
- name: "Overdue and Due Today",
45680
- route: 'overdue',
45681
- icon: React__default["default"].createElement(coreComponents.Icon, {
45682
- name: "Car"
45683
- }),
45684
- count: 10462
45685
- }, {
45686
- name: "Issue Queue",
45687
- route: 'issuequeue',
45688
- icon: React__default["default"].createElement(coreComponents.Icon, {
45689
- name: "Car"
45690
- }),
45691
- count: 21
45692
- }]
45693
- }, {
45694
- name: "Trips View",
45695
- route: 'tripsview',
45696
- icon: React__default["default"].createElement(coreComponents.Icon, {
45697
- name: "AddEvent"
45698
- })
45699
- }, (_ref = {
45700
- name: "Tow Providers",
45701
- route: 'towproviders',
45702
- icon: React__default["default"].createElement(coreComponents.Icon, {
45703
- name: "DeliveryTruck"
45704
- })
45705
- }, _defineProperty(_ref, "route", "/towproviders"), _defineProperty(_ref, "subMenuItems", [{
45706
- name: "All",
45707
- route: 'all',
45708
- icon: React__default["default"].createElement(coreComponents.Icon, {
45709
- name: "Car"
45710
- }),
45711
- count: 13174
45712
- }]), _ref), {
45713
- name: "Drivers",
45714
- route: 'drivers',
45715
- icon: React__default["default"].createElement(coreComponents.Icon, {
45716
- name: "AlignHorizontalLeft"
45717
- }),
45718
- subMenuItems: [{
45719
- name: "All",
45720
- icon: React__default["default"].createElement(coreComponents.Icon, {
45721
- name: "Car"
45722
- }),
45723
- route: 'all',
45724
- count: 13174
45725
- }]
45726
- }, {
45727
- name: "Work Requests",
45728
- route: 'workrequests',
45729
- icon: React__default["default"].createElement(coreComponents.Icon, {
45730
- name: "AnchorLock"
45731
- }),
45732
- subMenuItems: [{
45733
- name: "All",
45734
- route: 'all',
45735
- icon: React__default["default"].createElement(coreComponents.Icon, {
45736
- name: "Car"
45737
- }),
45738
- count: 13174
45739
- }]
45740
- }, {
45741
- name: "Advanced Charge Discrepancy",
45742
- route: 'advanced',
45743
- icon: React__default["default"].createElement(coreComponents.Icon, {
45744
- name: "CalendarDay"
45745
- }),
45746
- subMenuItems: [{
45747
- name: "All",
45748
- route: 'all',
45749
- icon: React__default["default"].createElement(coreComponents.Icon, {
45750
- name: "Car"
45751
- }),
45752
- count: 13174
45753
- }]
45754
- }, {
45755
- name: "One Time Rate Request Change",
45756
- route: 'onetime',
45757
- icon: React__default["default"].createElement(coreComponents.Icon, {
45758
- name: "AddEvent"
45759
- }),
45760
- subMenuItems: [{
45761
- name: "All",
45762
- route: 'all',
45763
- icon: React__default["default"].createElement(coreComponents.Icon, {
45764
- name: "Car"
45765
- }),
45766
- count: 13174
45767
- }]
45768
- }]
45769
- }, {
45770
- name: "Yard To Yard",
45771
- route: 'y2y',
45772
- icon: null,
45773
- subMenuItems: [{
45774
- name: "Y2Y Trips",
45775
- route: 'trips',
45776
- icon: React__default["default"].createElement(coreComponents.Icon, {
45777
- name: "Chart"
45778
- }),
45779
- subMenuItems: [{
45780
- name: "All",
45781
- route: 'all',
45782
- icon: React__default["default"].createElement(coreComponents.Icon, {
45783
- name: "Car"
45784
- }),
45785
- count: 13174
45786
- }]
45787
- }, {
45788
- name: "Y2Y Requests",
45789
- route: 'requests',
45790
- icon: React__default["default"].createElement(coreComponents.Icon, {
45791
- name: "BucketColor"
45792
- }),
45793
- subMenuItems: [{
45794
- name: "All",
45795
- route: 'all',
45796
- icon: React__default["default"].createElement(coreComponents.Icon, {
45797
- name: "Car"
45798
- }),
45799
- count: 13174
45800
- }]
45801
- }]
45802
- }];
45803
- [{
45804
- name: "Lots",
45805
- route: "/lots",
45806
- icon: React__default["default"].createElement(coreComponents.Icon, {
45807
- name: "Car"
45808
- }),
45809
- count: null,
45810
- subMenuItems: [{
45811
- name: "All",
45812
- route: "/all",
45813
- icon: React__default["default"].createElement(coreComponents.Icon, {
45814
- name: "Car"
45815
- }),
45816
- count: 13174
45817
- }, {
45818
- name: "Pending Trip Build",
45819
- route: 'pendingtripsbuild',
45820
- icon: React__default["default"].createElement(coreComponents.Icon, {
45821
- name: "Car"
45822
- }),
45823
- count: 10958
45824
- }, {
45825
- name: "Pending Processing",
45826
- route: 'dispatch',
45827
- icon: React__default["default"].createElement(coreComponents.Icon, {
45828
- name: "Car"
45829
- }),
45830
- count: 2089
45831
- }, {
45832
- name: "Pending Paperwork Verification",
45833
- route: 'pendingprocessing',
45834
- icon: React__default["default"].createElement(coreComponents.Icon, {
45835
- name: "Car"
45836
- }),
45837
- count: 268
45838
- }, {
45839
- name: "Partial Paperwork Verified",
45840
- route: 'partialpaperwork',
45841
- icon: React__default["default"].createElement(coreComponents.Icon, {
45842
- name: "Car"
45843
- }),
45844
- count: 19
45845
- }, {
45846
- name: "Awaiting Dispatch",
45847
- route: 'awaitingdispatch',
45848
- icon: React__default["default"].createElement(coreComponents.Icon, {
45849
- name: "Car"
45850
- }),
45851
- count: 18
45852
- }, {
45853
- name: "Overdue and Due Today",
45854
- route: 'overdue',
45855
- icon: React__default["default"].createElement(coreComponents.Icon, {
45856
- name: "Car"
45857
- }),
45858
- count: 10462
45859
- }, {
45860
- name: "Issue Queue",
45861
- route: 'issuequeue',
45862
- icon: React__default["default"].createElement(coreComponents.Icon, {
45863
- name: "Car"
45864
- }),
45865
- count: 21
45866
- }]
45867
- }, {
45868
- name: "Trips View",
45869
- route: 'tripsview',
45870
- icon: React__default["default"].createElement(coreComponents.Icon, {
45871
- name: "AddEvent"
45872
- })
45873
- }, (_ref2 = {
45874
- name: "Tow Providers",
45875
- route: 'towproviders',
45876
- icon: React__default["default"].createElement(coreComponents.Icon, {
45877
- name: "DeliveryTruck"
45878
- })
45879
- }, _defineProperty(_ref2, "route", "/towproviders"), _defineProperty(_ref2, "subMenuItems", [{
45880
- name: "All",
45881
- route: 'all',
45882
- icon: React__default["default"].createElement(coreComponents.Icon, {
45883
- name: "Car"
45884
- }),
45885
- count: 13174
45886
- }]), _ref2), {
45887
- name: "Drivers",
45888
- route: 'drivers',
45889
- icon: React__default["default"].createElement(coreComponents.Icon, {
45890
- name: "AlignHorizontalLeft"
45891
- }),
45892
- subMenuItems: [{
45893
- name: "All",
45894
- icon: React__default["default"].createElement(coreComponents.Icon, {
45895
- name: "Car"
45896
- }),
45897
- route: 'all',
45898
- count: 13174
45899
- }]
45900
- }, {
45901
- name: "Work Requests",
45902
- route: 'workrequests',
45903
- icon: React__default["default"].createElement(coreComponents.Icon, {
45904
- name: "AnchorLock"
45905
- }),
45906
- subMenuItems: [{
45907
- name: "All",
45908
- route: 'all',
45909
- icon: React__default["default"].createElement(coreComponents.Icon, {
45910
- name: "Car"
45911
- }),
45912
- count: 13174
45913
- }]
45914
- }, {
45915
- name: "Advanced Charge Discrepancy",
45916
- route: 'advanced',
45917
- icon: React__default["default"].createElement(coreComponents.Icon, {
45918
- name: "CalendarDay"
45919
- }),
45920
- subMenuItems: [{
45921
- name: "All",
45922
- route: 'all',
45923
- icon: React__default["default"].createElement(coreComponents.Icon, {
45924
- name: "Car"
45925
- }),
45926
- count: 13174
45927
- }]
45928
- }, {
45929
- name: "One Time Rate Request Change",
45930
- route: 'onetime',
45931
- icon: React__default["default"].createElement(coreComponents.Icon, {
45932
- name: "AddEvent"
45933
- }),
45934
- subMenuItems: [{
45935
- name: "All",
45936
- route: 'all',
45937
- icon: React__default["default"].createElement(coreComponents.Icon, {
45938
- name: "Car"
45939
- }),
45940
- count: 13174
45941
- }]
45942
- }];
45943
-
45944
45592
  var css_248z = ".utilities_ops-app-frame_AppFrame_AppFrame--AppFrame {\n background: var(--paleGray);\n background: var(--paleGray);\n height: 100vh;\n max-height: 100vh;\n display: flex;\n flex-direction: column;\n flex-basis: 0;\n}\n\n.utilities_ops-app-frame_AppFrame_AppFrame--header {\n flex: 0 1 auto;\n display: flex;\n flex-direction: column;\n}\n\n/* Wrapper that contains the app being developed. */\n\n.utilities_ops-app-frame_AppFrame_AppFrame--AppContainer {\n flex: 1 1 auto;\n}\n";
45945
45593
  styleInject(css_248z);
45946
45594
 
@@ -46010,7 +45658,9 @@ var AppFrame = function AppFrame(props) {
46010
45658
  className: "utilities_ops-app-frame_AppFrame_AppFrame--AppContainer"
46011
45659
  }, props.showNavigation && storage.isAuthenticated ? React__default["default"].createElement(NavigationBar, {
46012
45660
  navigateTo: props.navigateTo,
46013
- getNavItems: props.getNavItems
45661
+ history: props.history,
45662
+ navItems: props.navItems,
45663
+ getCounts: props.getCounts
46014
45664
  }) : null, React__default["default"].createElement("div", {
46015
45665
  style: {
46016
45666
  marginLeft: props.showNavigation ? '100px' : '0px'
@@ -46019,10 +45669,8 @@ var AppFrame = function AppFrame(props) {
46019
45669
  };
46020
45670
  AppFrame.defaultProps = {
46021
45671
  handleScrolling: true,
46022
- showNavigation: true,
46023
- getNavItems: function getNavItems() {
46024
- return navItems;
46025
- }
45672
+ showNavigation: false,
45673
+ navItems: []
46026
45674
  };
46027
45675
 
46028
45676
  var logOutboundCalls =