@onepercentio/one-ui 0.21.4 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,6 +2,8 @@ import React from "react";
2
2
  /**
3
3
  * . .. ... . .. ...
4
4
  **/
5
- export default function LoaderDotsIndicator({ dotsCount, }: {
5
+ export default function LoaderDotsIndicator({ dotsCount, lockSize, }: {
6
6
  dotsCount?: number;
7
+ /** Makes the dots so that they do not affect layout size */
8
+ lockSize?: boolean;
7
9
  }): React.JSX.Element;
@@ -19,7 +19,9 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
19
19
  **/
20
20
  function LoaderDotsIndicator(_ref) {
21
21
  let _ref$dotsCount = _ref.dotsCount,
22
- dotsCount = _ref$dotsCount === void 0 ? 3 : _ref$dotsCount;
22
+ dotsCount = _ref$dotsCount === void 0 ? 3 : _ref$dotsCount,
23
+ _ref$lockSize = _ref.lockSize,
24
+ lockSize = _ref$lockSize === void 0 ? false : _ref$lockSize;
23
25
  const _useState = (0, _react.useState)("."),
24
26
  _useState2 = _slicedToArray(_useState, 2),
25
27
  text = _useState2[0],
@@ -35,6 +37,10 @@ function LoaderDotsIndicator(_ref) {
35
37
  return clearInterval(intervalId);
36
38
  };
37
39
  }, [dotsCount]);
38
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, text);
40
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, text, lockSize && /*#__PURE__*/_react.default.createElement("span", {
41
+ style: {
42
+ color: "#0000"
43
+ }
44
+ }, new Array(dotsCount - text.length).fill(".")));
39
45
  }
40
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIl9zbGljZWRUb0FycmF5IiwiYXJyIiwiaSIsIl9hcnJheVdpdGhIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXlMaW1pdCIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVJlc3QiLCJUeXBlRXJyb3IiLCJvIiwibWluTGVuIiwiX2FycmF5TGlrZVRvQXJyYXkiLCJuIiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwibmFtZSIsIkFycmF5IiwiZnJvbSIsInRlc3QiLCJsZW4iLCJsZW5ndGgiLCJhcnIyIiwiX2kiLCJTeW1ib2wiLCJpdGVyYXRvciIsIl9zIiwiX2UiLCJfeCIsIl9yIiwiX2FyciIsIl9uIiwiX2QiLCJuZXh0IiwiZG9uZSIsInB1c2giLCJ2YWx1ZSIsImVyciIsInJldHVybiIsImlzQXJyYXkiLCJMb2FkZXJEb3RzSW5kaWNhdG9yIiwiX3JlZiIsIl9yZWYkZG90c0NvdW50IiwiZG90c0NvdW50IiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwidGV4dCIsInNldFRleHQiLCJ1c2VFZmZlY3QiLCJmdWxsVGV4dCIsImZpbGwiLCJqb2luIiwiaW50ZXJ2YWxJZCIsInNldEludGVydmFsIiwiYSIsImNsZWFySW50ZXJ2YWwiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9Mb2FkZXJEb3RzSW5kaWNhdG9yL0xvYWRlckRvdHNJbmRpY2F0b3IudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5cbi8qKlxuICogLiAuLiAuLi4gLiAuLiAuLi5cbiAqKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIExvYWRlckRvdHNJbmRpY2F0b3Ioe1xuICBkb3RzQ291bnQgPSAzLFxufToge1xuICBkb3RzQ291bnQ/OiBudW1iZXI7XG59KSB7XG4gIGNvbnN0IFt0ZXh0LCBzZXRUZXh0XSA9IHVzZVN0YXRlKFwiLlwiKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBmdWxsVGV4dCA9IG5ldyBBcnJheShkb3RzQ291bnQpLmZpbGwoXCIuXCIpLmpvaW4oXCJcIik7XG4gICAgY29uc3QgaW50ZXJ2YWxJZCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgIHNldFRleHQoKGEpID0+IChhID09PSBmdWxsVGV4dCA/IFwiLlwiIDogYSArIFwiLlwiKSk7XG4gICAgfSwgMjUwKTtcblxuICAgIHJldHVybiAoKSA9PiBjbGVhckludGVydmFsKGludGVydmFsSWQpO1xuICB9LCBbZG90c0NvdW50XSk7XG5cbiAgcmV0dXJuIDw+e3RleHR9PC8+O1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQW1ELFNBQUFDLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdB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
46
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIl9zbGljZWRUb0FycmF5IiwiYXJyIiwiaSIsIl9hcnJheVdpdGhIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXlMaW1pdCIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVJlc3QiLCJUeXBlRXJyb3IiLCJvIiwibWluTGVuIiwiX2FycmF5TGlrZVRvQXJyYXkiLCJuIiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwibmFtZSIsIkFycmF5IiwiZnJvbSIsInRlc3QiLCJsZW4iLCJsZW5ndGgiLCJhcnIyIiwiX2kiLCJTeW1ib2wiLCJpdGVyYXRvciIsIl9zIiwiX2UiLCJfeCIsIl9yIiwiX2FyciIsIl9uIiwiX2QiLCJuZXh0IiwiZG9uZSIsInB1c2giLCJ2YWx1ZSIsImVyciIsInJldHVybiIsImlzQXJyYXkiLCJMb2FkZXJEb3RzSW5kaWNhdG9yIiwiX3JlZiIsIl9yZWYkZG90c0NvdW50IiwiZG90c0NvdW50IiwiX3JlZiRsb2NrU2l6ZSIsImxvY2tTaXplIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwidGV4dCIsInNldFRleHQiLCJ1c2VFZmZlY3QiLCJmdWxsVGV4dCIsImZpbGwiLCJqb2luIiwiaW50ZXJ2YWxJZCIsInNldEludGVydmFsIiwiYSIsImNsZWFySW50ZXJ2YWwiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJzdHlsZSIsImNvbG9yIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvTG9hZGVyRG90c0luZGljYXRvci9Mb2FkZXJEb3RzSW5kaWNhdG9yLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG4vKipcbiAqIC4gLi4gLi4uIC4gLi4gLi4uXG4gKiovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBMb2FkZXJEb3RzSW5kaWNhdG9yKHtcbiAgZG90c0NvdW50ID0gMyxcbiAgbG9ja1NpemUgPSBmYWxzZSxcbn06IHtcbiAgZG90c0NvdW50PzogbnVtYmVyO1xuICAvKiogTWFrZXMgdGhlIGRvdHMgc28gdGhhdCB0aGV5IGRvIG5vdCBhZmZlY3QgbGF5b3V0IHNpemUgKi9cbiAgbG9ja1NpemU/OiBib29sZWFuO1xufSkge1xuICBjb25zdCBbdGV4dCwgc2V0VGV4dF0gPSB1c2VTdGF0ZShcIi5cIik7XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgZnVsbFRleHQgPSBuZXcgQXJyYXkoZG90c0NvdW50KS5maWxsKFwiLlwiKS5qb2luKFwiXCIpO1xuICAgIGNvbnN0IGludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBzZXRUZXh0KChhKSA9PiAoYSA9PT0gZnVsbFRleHQgPyBcIi5cIiA6IGEgKyBcIi5cIikpO1xuICAgIH0sIDI1MCk7XG5cbiAgICByZXR1cm4gKCkgPT4gY2xlYXJJbnRlcnZhbChpbnRlcnZhbElkKTtcbiAgfSwgW2RvdHNDb3VudF0pO1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHt0ZXh0fVxuICAgICAge2xvY2tTaXplICYmIChcbiAgICAgICAgPHNwYW4gc3R5bGU9e3sgY29sb3I6IFwiIzAwMDBcIiB9fT5cbiAgICAgICAgICB7bmV3IEFycmF5KGRvdHNDb3VudCAtIHRleHQubGVuZ3RoKS5maWxsKFwiLlwiKX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICA8Lz5cbiAgKTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUFtRCxTQUFBQyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQUgsd0JBQUFPLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFBLENBQUFFLEdBQUEsQ0FBQU4sR0FBQSxTQUFBTyxNQUFBLFdBQUFDLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLEdBQUEsSUFBQVosR0FBQSxRQUFBWSxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFmLEdBQUEsRUFBQVksR0FBQSxTQUFBSSxJQUFBLEdBQUFSLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVgsR0FBQSxFQUFBWSxHQUFBLGNBQUFJLElBQUEsS0FBQUEsSUFBQSxDQUFBVixHQUFBLElBQUFVLElBQUEsQ0FBQUMsR0FBQSxLQUFBUixN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
@@ -0,0 +1,17 @@
1
+ import React, { ReactElement } from "react";
2
+ declare type Node = {
3
+ /** Indicates how much that node should increase in relation to other nodes */
4
+ grandeour: number;
5
+ /** What to show on that node */
6
+ cover: ReactElement;
7
+ };
8
+ export declare function calculateTargetIndex(nodesPosition: [x: number, y: number][], center: [x: number, y: number], clickedAt: [x: number, y: number]): number[];
9
+ /**
10
+ * Distributes circles representing the nodes and allows the user to navigate to said nodes through clicking
11
+ **/
12
+ export default function NodesNavigator({ nodes, currentNode, onClickNode, }: {
13
+ nodes: Node[];
14
+ currentNode: Node | null;
15
+ onClickNode?: (n: Node) => void;
16
+ }): React.JSX.Element;
17
+ export {};
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.calculateTargetIndex = calculateTargetIndex;
8
+ exports.default = NodesNavigator;
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ var _NodesNavigatorModule = _interopRequireDefault(require("./NodesNavigator.module.scss"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
15
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
16
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
17
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
18
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
19
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
20
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
21
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
22
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
23
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
24
+ function calculateTargetIndex(nodesPosition, center, clickedAt) {
25
+ const counterClickedAt = [center[1] - clickedAt[1], center[0] - clickedAt[0]];
26
+ const slope = (counterClickedAt[1] - center[1]) / (counterClickedAt[0] - center[0]);
27
+ const inverseTan = Math.atan(slope);
28
+ return [Math.sin(inverseTan), Math.cos(inverseTan)];
29
+ }
30
+
31
+ /**
32
+ * Distributes circles representing the nodes and allows the user to navigate to said nodes through clicking
33
+ **/
34
+ function NodesNavigator(_ref) {
35
+ let nodes = _ref.nodes,
36
+ currentNode = _ref.currentNode,
37
+ onClickNode = _ref.onClickNode;
38
+ const rootRef = (0, _react.useRef)(null);
39
+ (0, _react.useEffect)(function () {
40
+ if (!currentNode) return;
41
+ const currentNodeEl = rootRef.current.children[nodes.indexOf(currentNode)];
42
+ const style = currentNodeEl.style;
43
+ style.transform = "translateX(0em) translateY(0em)";
44
+ }, [currentNode]);
45
+ const _useState = (0, _react.useState)(function () {
46
+ return nodes.filter(function (n) {
47
+ return n !== currentNode;
48
+ });
49
+ }),
50
+ _useState2 = _slicedToArray(_useState, 2),
51
+ otherNodes = _useState2[0],
52
+ setOtherNodes = _useState2[1];
53
+ const _useState3 = (0, _react.useState)([]),
54
+ _useState4 = _slicedToArray(_useState3, 2),
55
+ nodesPosition = _useState4[0],
56
+ setNodesPosition = _useState4[1];
57
+ (0, _react.useEffect)(function () {
58
+ setNodesPosition(otherNodes.map(function (n, index) {
59
+ var angle = index * Math.PI / 3;
60
+ return [Math.sin(angle), Math.cos(angle)];
61
+ }));
62
+ }, [otherNodes]);
63
+ (0, _react.useEffect)(function () {
64
+ if (otherNodes.length !== nodesPosition.length) return;
65
+ const elements = rootRef.current.children;
66
+ for (let node of otherNodes) {
67
+ const idx = otherNodes.indexOf(node);
68
+ const pos = nodesPosition[idx];
69
+ const el = elements[idx];
70
+ el.style.transform = "translateX(".concat(pos[0] + "em", ") translateY(").concat(pos[1] + "em", ")");
71
+ }
72
+ }, [nodesPosition]);
73
+ console.log(nodesPosition);
74
+ return /*#__PURE__*/_react.default.createElement("div", {
75
+ className: _NodesNavigatorModule.default.root,
76
+ ref: rootRef
77
+ }, otherNodes.map(function (n) {
78
+ return /*#__PURE__*/_react.default.createElement("div", {
79
+ key: nodes.indexOf(n),
80
+ className: _NodesNavigatorModule.default.node,
81
+ onClick: function onClick(_ref2) {
82
+ let clientX = _ref2.clientX,
83
+ clientY = _ref2.clientY;
84
+ const root = rootRef.current.getBoundingClientRect();
85
+ const center = [root.left + root.width / 2, root.top + root.height / 2];
86
+ const click = [clientX, clientY];
87
+ const angle = 3 + Math.atan2(click[1] - center[1], click[0] - center[0]);
88
+ const futureIndex = Math.round(angle / Math.PI * 3 - 1);
89
+ console.log(futureIndex);
90
+ setOtherNodes(function (prev) {
91
+ prev.splice(futureIndex + 1, 0, currentNode);
92
+ return _toConsumableArray(prev.filter(function (a) {
93
+ return a !== n;
94
+ }));
95
+ });
96
+ // console.log(angle);
97
+ onClickNode === null || onClickNode === void 0 ? void 0 : onClickNode(n);
98
+ }
99
+ }, otherNodes.indexOf(n));
100
+ }), currentNode && /*#__PURE__*/_react.default.createElement("div", {
101
+ key: nodes.indexOf(currentNode),
102
+ className: _NodesNavigatorModule.default.node,
103
+ onClick: function onClick() {
104
+ onClickNode === null || onClickNode === void 0 ? void 0 : onClickNode(currentNode);
105
+ }
106
+ }, "C"));
107
+ }
108
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfTm9kZXNOYXZpZ2F0b3JNb2R1bGUiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0Iiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJfdHlwZW9mIiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJhcnIiLCJfYXJyYXlXaXRob3V0SG9sZXMiLCJfaXRlcmFibGVUb0FycmF5IiwiX3Vuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5IiwiX25vbkl0ZXJhYmxlU3ByZWFkIiwiVHlwZUVycm9yIiwiaXRlciIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiQXJyYXkiLCJmcm9tIiwiaXNBcnJheSIsIl9hcnJheUxpa2VUb0FycmF5IiwiX3NsaWNlZFRvQXJyYXkiLCJpIiwiX2FycmF5V2l0aEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheUxpbWl0IiwiX25vbkl0ZXJhYmxlUmVzdCIsIm8iLCJtaW5MZW4iLCJuIiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwibmFtZSIsInRlc3QiLCJsZW4iLCJsZW5ndGgiLCJhcnIyIiwiX2kiLCJfcyIsIl9lIiwiX3giLCJfciIsIl9hcnIiLCJfbiIsIl9kIiwibmV4dCIsImRvbmUiLCJwdXNoIiwidmFsdWUiLCJlcnIiLCJyZXR1cm4iLCJjYWxjdWxhdGVUYXJnZXRJbmRleCIsIm5vZGVzUG9zaXRpb24iLCJjZW50ZXIiLCJjbGlja2VkQXQiLCJjb3VudGVyQ2xpY2tlZEF0Iiwic2xvcGUiLCJpbnZlcnNlVGFuIiwiTWF0aCIsImF0YW4iLCJzaW4iLCJjb3MiLCJOb2Rlc05hdmlnYXRvciIsIl9yZWYiLCJub2RlcyIsImN1cnJlbnROb2RlIiwib25DbGlja05vZGUiLCJyb290UmVmIiwidXNlUmVmIiwidXNlRWZmZWN0IiwiY3VycmVudE5vZGVFbCIsImN1cnJlbnQiLCJjaGlsZHJlbiIsImluZGV4T2YiLCJzdHlsZSIsInRyYW5zZm9ybSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiZmlsdGVyIiwiX3VzZVN0YXRlMiIsIm90aGVyTm9kZXMiLCJzZXRPdGhlck5vZGVzIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJzZXROb2Rlc1Bvc2l0aW9uIiwibWFwIiwiaW5kZXgiLCJhbmdsZSIsIlBJIiwiZWxlbWVudHMiLCJub2RlIiwiaWR4IiwicG9zIiwiZWwiLCJjb25jYXQiLCJjb25zb2xlIiwibG9nIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsIlN0eWxlcyIsInJvb3QiLCJyZWYiLCJvbkNsaWNrIiwiX3JlZjIiLCJjbGllbnRYIiwiY2xpZW50WSIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsImxlZnQiLCJ3aWR0aCIsInRvcCIsImhlaWdodCIsImNsaWNrIiwiYXRhbjIiLCJmdXR1cmVJbmRleCIsInJvdW5kIiwicHJldiIsInNwbGljZSIsImEiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9Ob2Rlc05hdmlnYXRvci9Ob2Rlc05hdmlnYXRvci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7XG4gIFJlYWN0RWxlbWVudCxcbiAgdXNlRWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBTdHlsZXMgZnJvbSBcIi4vTm9kZXNOYXZpZ2F0b3IubW9kdWxlLnNjc3NcIjtcblxudHlwZSBOb2RlID0ge1xuICAvKiogSW5kaWNhdGVzIGhvdyBtdWNoIHRoYXQgbm9kZSBzaG91bGQgaW5jcmVhc2UgaW4gcmVsYXRpb24gdG8gb3RoZXIgbm9kZXMgKi9cbiAgZ3JhbmRlb3VyOiBudW1iZXI7XG5cbiAgLyoqIFdoYXQgdG8gc2hvdyBvbiB0aGF0IG5vZGUgKi9cbiAgY292ZXI6IFJlYWN0RWxlbWVudDtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVUYXJnZXRJbmRleChcbiAgbm9kZXNQb3NpdGlvbjogW3g6IG51bWJlciwgeTogbnVtYmVyXVtdLFxuICBjZW50ZXI6IFt4OiBudW1iZXIsIHk6IG51bWJlcl0sXG4gIGNsaWNrZWRBdDogW3g6IG51bWJlciwgeTogbnVtYmVyXVxuKSB7XG4gIGNvbnN0IGNvdW50ZXJDbGlja2VkQXQgPSBbY2VudGVyWzFdIC0gY2xpY2tlZEF0WzFdLCBjZW50ZXJbMF0gLSBjbGlja2VkQXRbMF1dO1xuICBjb25zdCBzbG9wZSA9XG4gICAgKGNvdW50ZXJDbGlja2VkQXRbMV0gLSBjZW50ZXJbMV0pIC8gKGNvdW50ZXJDbGlja2VkQXRbMF0gLSBjZW50ZXJbMF0pO1xuXG4gIGNvbnN0IGludmVyc2VUYW4gPSBNYXRoLmF0YW4oc2xvcGUpO1xuICByZXR1cm4gW01hdGguc2luKGludmVyc2VUYW4pLCBNYXRoLmNvcyhpbnZlcnNlVGFuKV07XG59XG5cbi8qKlxuICogRGlzdHJpYnV0ZXMgY2lyY2xlcyByZXByZXNlbnRpbmcgdGhlIG5vZGVzIGFuZCBhbGxvd3MgdGhlIHVzZXIgdG8gbmF2aWdhdGUgdG8gc2FpZCBub2RlcyB0aHJvdWdoIGNsaWNraW5nXG4gKiovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBOb2Rlc05hdmlnYXRvcih7XG4gIG5vZGVzLFxuICBjdXJyZW50Tm9kZSxcbiAgb25DbGlja05vZGUsXG59OiB7XG4gIG5vZGVzOiBOb2RlW107XG4gIGN1cnJlbnROb2RlOiBOb2RlIHwgbnVsbDtcbiAgb25DbGlja05vZGU/OiAobjogTm9kZSkgPT4gdm9pZDtcbn0pIHtcbiAgY29uc3Qgcm9vdFJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWN1cnJlbnROb2RlKSByZXR1cm47XG4gICAgY29uc3QgY3VycmVudE5vZGVFbCA9IHJvb3RSZWYuY3VycmVudCEuY2hpbGRyZW5bXG4gICAgICBub2Rlcy5pbmRleE9mKGN1cnJlbnROb2RlKVxuICAgIF0gYXMgSFRNTERpdkVsZW1lbnQ7XG4gICAgY29uc3Qgc3R5bGUgPSBjdXJyZW50Tm9kZUVsLnN0eWxlO1xuXG4gICAgc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZVgoMGVtKSB0cmFuc2xhdGVZKDBlbSlgO1xuICB9LCBbY3VycmVudE5vZGVdKTtcblxuICBjb25zdCBbb3RoZXJOb2Rlcywgc2V0T3RoZXJOb2Rlc10gPSB1c2VTdGF0ZSgoKSA9PiB7XG4gICAgcmV0dXJuIG5vZGVzLmZpbHRlcigobikgPT4gbiAhPT0gY3VycmVudE5vZGUpO1xuICB9KTtcbiAgY29uc3QgW25vZGVzUG9zaXRpb24sIHNldE5vZGVzUG9zaXRpb25dID0gdXNlU3RhdGU8XG4gICAgW3RYOiBudW1iZXIsIHRZOiBudW1iZXJdW11cbiAgPihbXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXROb2Rlc1Bvc2l0aW9uKFxuICAgICAgb3RoZXJOb2Rlcy5tYXAoKG4sIGluZGV4KSA9PiB7XG4gICAgICAgIHZhciBhbmdsZSA9IChpbmRleCAqIE1hdGguUEkpIC8gMztcbiAgICAgICAgcmV0dXJuIFtNYXRoLnNpbihhbmdsZSksIE1hdGguY29zKGFuZ2xlKV07XG4gICAgICB9KVxuICAgICk7XG4gIH0sIFtvdGhlck5vZGVzXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAob3RoZXJOb2Rlcy5sZW5ndGggIT09IG5vZGVzUG9zaXRpb24ubGVuZ3RoKSByZXR1cm47XG4gICAgY29uc3QgZWxlbWVudHMgPSByb290UmVmLmN1cnJlbnQhLmNoaWxkcmVuO1xuICAgIGZvciAobGV0IG5vZGUgb2Ygb3RoZXJOb2Rlcykge1xuICAgICAgY29uc3QgaWR4ID0gb3RoZXJOb2Rlcy5pbmRleE9mKG5vZGUpO1xuICAgICAgY29uc3QgcG9zID0gbm9kZXNQb3NpdGlvbltpZHhdO1xuICAgICAgY29uc3QgZWwgPSBlbGVtZW50c1tpZHhdIGFzIEhUTUxEaXZFbGVtZW50O1xuICAgICAgZWwuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZVgoJHtwb3NbMF0gKyBcImVtXCJ9KSB0cmFuc2xhdGVZKCR7XG4gICAgICAgIHBvc1sxXSArIFwiZW1cIlxuICAgICAgfSlgO1xuICAgIH1cbiAgfSwgW25vZGVzUG9zaXRpb25dKTtcblxuICBjb25zb2xlLmxvZyhub2Rlc1Bvc2l0aW9uKVxuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e1N0eWxlcy5yb290fSByZWY9e3Jvb3RSZWZ9PlxuICAgICAge290aGVyTm9kZXMubWFwKChuKSA9PiAoXG4gICAgICAgIDxkaXZcbiAgICAgICAgICBrZXk9e25vZGVzLmluZGV4T2Yobil9XG4gICAgICAgICAgY2xhc3NOYW1lPXtTdHlsZXMubm9kZX1cbiAgICAgICAgICBvbkNsaWNrPXsoeyBjbGllbnRYLCBjbGllbnRZIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJvb3QgPSByb290UmVmLmN1cnJlbnQhLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgY29uc3QgY2VudGVyID0gW1xuICAgICAgICAgICAgICByb290LmxlZnQgKyByb290LndpZHRoIC8gMixcbiAgICAgICAgICAgICAgcm9vdC50b3AgKyByb290LmhlaWdodCAvIDIsXG4gICAgICAgICAgICBdO1xuICAgICAgICAgICAgY29uc3QgY2xpY2sgPSBbY2xpZW50WCwgY2xpZW50WV07XG4gICAgICAgICAgICBjb25zdCBhbmdsZSA9XG4gICAgICAgICAgICAgIDMgKyBNYXRoLmF0YW4yKGNsaWNrWzFdIC0gY2VudGVyWzFdLCBjbGlja1swXSAtIGNlbnRlclswXSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGZ1dHVyZUluZGV4ID0gTWF0aC5yb3VuZCgoYW5nbGUgLyBNYXRoLlBJKSAqIDMgLSAxKTtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGZ1dHVyZUluZGV4KTtcbiAgICAgICAgICAgIHNldE90aGVyTm9kZXMoKHByZXYpID0+IHtcbiAgICAgICAgICAgICAgcHJldi5zcGxpY2UoZnV0dXJlSW5kZXggKyAxLCAwLCBjdXJyZW50Tm9kZSEpO1xuICAgICAgICAgICAgICByZXR1cm4gWy4uLnByZXYuZmlsdGVyKChhKSA9PiBhICE9PSBuKV07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGFuZ2xlKTtcbiAgICAgICAgICAgIG9uQ2xpY2tOb2RlPy4obik7XG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIHsvKiB7bi5jb3Zlcn0gKi99XG4gICAgICAgICAge290aGVyTm9kZXMuaW5kZXhPZihuKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICApKX1cbiAgICAgIHtjdXJyZW50Tm9kZSAmJiAoXG4gICAgICAgIDxkaXZcbiAgICAgICAgICBrZXk9e25vZGVzLmluZGV4T2YoY3VycmVudE5vZGUpfVxuICAgICAgICAgIGNsYXNzTmFtZT17U3R5bGVzLm5vZGV9XG4gICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgb25DbGlja05vZGU/LihjdXJyZW50Tm9kZSEpO1xuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICB7Lyoge24uY292ZXJ9ICovfUNcbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQU9BLElBQUFDLHFCQUFBLEdBQUFDLHNC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
@@ -0,0 +1,19 @@
1
+ .root {
2
+ background-color: red;
3
+ width: 100%;
4
+ height: 100%;
5
+ position: relative;
6
+ font-size: 72px;
7
+ display: flex;
8
+ align-items: center;
9
+ justify-content: center;
10
+ }
11
+
12
+ .node {
13
+ height: 1em;
14
+ width: 1em;
15
+ border-radius: 0.5em;
16
+ overflow: hidden;
17
+ position: absolute;
18
+ transition: transform linear 2s;
19
+ }
@@ -0,0 +1 @@
1
+ export { default } from './NodesNavigator';
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "default", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _NodesNavigator.default;
10
+ }
11
+ });
12
+ var _NodesNavigator = _interopRequireDefault(require("./NodesNavigator"));
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfTm9kZXNOYXZpZ2F0b3IiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvTm9kZXNOYXZpZ2F0b3IvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGRlZmF1bHQgfSBmcm9tICcuL05vZGVzTmF2aWdhdG9yJztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxlQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFBMkMsU0FBQUQsdUJBQUFFLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUEifQ==
@@ -2,7 +2,7 @@ import React, { PropsWithChildren, ReactElement } from "react";
2
2
  import useAsyncControl from "../../hooks/useAsyncControl";
3
3
  export declare type WalletConnectionProps = PropsWithChildren<Omit<ReturnType<typeof useAsyncControl>, "process"> & {
4
4
  chainId?: number;
5
- isChainIdValid: boolean;
5
+ isChainIdValid: boolean | undefined;
6
6
  isProviderAvailable: boolean;
7
7
  isConnectedAndValidChain: boolean;
8
8
  isConnected: boolean;
@@ -15,7 +15,7 @@ declare type Props = {
15
15
  /**
16
16
  * The chain id that the user is expected to connect to
17
17
  */
18
- chain: {
18
+ chain?: {
19
19
  id: number;
20
20
  rpcUrl: string;
21
21
  explorerUrl: string;
@@ -72,9 +72,15 @@ function Content(_ref) {
72
72
  }),
73
73
  _useState2 = _slicedToArray(_useState, 1),
74
74
  isProviderAvailable = _useState2[0];
75
+ /**
76
+ * true - Mostrar o conteudo (ex: form de transferencia)
77
+ * false - Mostrar o botão de trocar a chain
78
+ *
79
+ * undefined ???
80
+ */
75
81
  const isChainIdValid = (0, _react.useMemo)(function () {
76
- return wallet.isConnected() ? wallet.chainId === chain.id : true;
77
- }, [wallet, chain.id]);
82
+ return chain ? wallet.isConnected() ? wallet.chainId === chain.id : true : undefined;
83
+ }, [wallet, chain === null || chain === void 0 ? void 0 : chain.id]);
78
84
  function changeChainId() {
79
85
  return _changeChainId.apply(this, arguments);
80
86
  }
@@ -132,4 +138,4 @@ var _default = WalletConnectionWrapper;
132
138
  exports.default = _default;
133
139
  const BaseWalletConnectionWrapper = /*#__PURE__*/(0, _react.forwardRef)(_BaseWalletConnectionWrapper);
134
140
  exports.BaseWalletConnectionWrapper = BaseWalletConnectionWrapper;
135
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdXNlV2FsbGV0IiwiX3VzZUFzeW5jQ29udHJvbCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIl90eXBlb2YiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIl9zbGljZWRUb0FycmF5IiwiYXJyIiwiaSIsIl9hcnJheVdpdGhIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXlMaW1pdCIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVJlc3QiLCJUeXBlRXJyb3IiLCJvIiwibWluTGVuIiwiX2FycmF5TGlrZVRvQXJyYXkiLCJuIiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwibmFtZSIsIkFycmF5IiwiZnJvbSIsInRlc3QiLCJsZW4iLCJsZW5ndGgiLCJhcnIyIiwiX2kiLCJTeW1ib2wiLCJpdGVyYXRvciIsIl9zIiwiX2UiLCJfeCIsIl9yIiwiX2FyciIsIl9uIiwiX2QiLCJuZXh0IiwiZG9uZSIsInB1c2giLCJ2YWx1ZSIsImVyciIsInJldHVybiIsImlzQXJyYXkiLCJhc3luY0dlbmVyYXRvclN0ZXAiLCJnZW4iLCJyZXNvbHZlIiwicmVqZWN0IiwiX25leHQiLCJfdGhyb3ciLCJhcmciLCJpbmZvIiwiZXJyb3IiLCJQcm9taXNlIiwidGhlbiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiZm4iLCJzZWxmIiwiYXJncyIsImFyZ3VtZW50cyIsImFwcGx5IiwidW5kZWZpbmVkIiwiX2V4dGVuZHMiLCJhc3NpZ24iLCJiaW5kIiwidGFyZ2V0Iiwic291cmNlIiwiX1dhbGxldENvbm5lY3Rpb25XcmFwcGVyIiwicHJvcHMiLCJyZWYiLCJjcmVhdGVFbGVtZW50IiwiVXNlV2FsbGV0UHJvdmlkZXIiLCJDb250ZW50IiwiY29tcFJlZiIsImNyZWF0ZVJlZiIsIl9CYXNlV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIiLCJfcmVmIiwiUHJvdmlkZXJVbmF2YWlsYWJsZSIsIkNoYWluSWRJbnZhbGlkIiwiY2hhaW4iLCJQcm92aWRlZENvbnRlbnRXcmFwcGVyIiwiY2hpbGRyZW4iLCJ3YWxsZXQiLCJ1c2VXYWxsZXQiLCJjb25uZWN0aW9uQXN5bmNXcmFwcGVyIiwidXNlQXN5bmNDb250cm9sIiwiY29ubmVjdCIsIl9yZWYyIiwicHJvY2VzcyIsImxvY2FsU3RvcmFnZSIsInNldEl0ZW0iLCJkaXNjb25uZWN0IiwicmVzZXQiLCJyZW1vdmVJdGVtIiwidXNlRWZmZWN0IiwiYXV0b0Nvbm5lY3QiLCJnZXRJdGVtIiwiYWNjb3VudCIsInVzZUltcGVyYXRpdmVIYW5kbGUiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIndpbmRvdyIsImV0aGVyZXVtIiwiX3VzZVN0YXRlMiIsImlzUHJvdmlkZXJBdmFpbGFibGUiLCJpc0NoYWluSWRWYWxpZCIsInVzZU1lbW8iLCJpc0Nvbm5lY3RlZCIsImNoYWluSWQiLCJpZCIsImNoYW5nZUNoYWluSWQiLCJfY2hhbmdlQ2hhaW5JZCIsInJlcXVlc3QiLCJtZXRob2QiLCJwYXJhbXMiLCJjb25jYXQiLCJwYWRTdGFydCIsImUiLCJjb2RlIiwiY2hhaW5OYW1lIiwicnBjVXJscyIsInJwY1VybCIsImJsb2NrRXhwbG9yZXJVcmxzIiwiZXhwbG9yZXJVcmwiLCJuYXRpdmVDdXJyZW5jeSIsInN5bWJvbCIsImN1cnJlbmN5IiwiZGVjaW1hbHMiLCJDb250ZW50V3JhcHBlciIsIkZyYWdtZW50IiwiaXNDb25uZWN0ZWRBbmRWYWxpZENoYWluIiwiV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIiLCJmb3J3YXJkUmVmIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwiQmFzZVdhbGxldENvbm5lY3Rpb25XcmFwcGVyIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIvV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICBjcmVhdGVSZWYsXG4gIEZvcndhcmRlZFJlZixcbiAgZm9yd2FyZFJlZixcbiAgUHJvcHNXaXRoQ2hpbGRyZW4sXG4gIFJlYWN0RWxlbWVudCxcbiAgUmVhY3ROb2RlLFxuICB1c2VFZmZlY3QsXG4gIHVzZUltcGVyYXRpdmVIYW5kbGUsXG4gIHVzZU1lbW8sXG4gIHVzZVN0YXRlLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IHVzZVdhbGxldCwgVXNlV2FsbGV0UHJvdmlkZXIgfSBmcm9tIFwidXNlLXdhbGxldFwiO1xuaW1wb3J0IHVzZUFzeW5jQ29udHJvbCBmcm9tIFwiLi4vLi4vaG9va3MvdXNlQXN5bmNDb250cm9sXCI7XG5cbmV4cG9ydCB0eXBlIFdhbGxldENvbm5lY3Rpb25Qcm9wcyA9IFByb3BzV2l0aENoaWxkcmVuPFxuICBPbWl0PFJldHVyblR5cGU8dHlwZW9mIHVzZUFzeW5jQ29udHJvbD4sIFwicHJvY2Vzc1wiPiAmIHtcbiAgICBjaGFpbklkPzogbnVtYmVyO1xuICAgIGlzQ2hhaW5JZFZhbGlkOiBib29sZWFuO1xuICAgIGlzUHJvdmlkZXJBdmFpbGFibGU6IGJvb2xlYW47XG4gICAgaXNDb25uZWN0ZWRBbmRWYWxpZENoYWluOiBib29sZWFuO1xuICAgIGlzQ29ubmVjdGVkOiBib29sZWFuO1xuICAgIHdhbGxldD86IHN0cmluZztcblxuICAgIGNvbm5lY3Q6ICgpID0+IFByb21pc2U8dm9pZD47XG4gICAgZGlzY29ubmVjdDogKCkgPT4gdm9pZDtcbiAgICBjaGFuZ2VDaGFpbklkOiAoKSA9PiB2b2lkO1xuICB9XG4+O1xuXG50eXBlIFByb3BzID0ge1xuICAvKipcbiAgICogVGhlIGNoYWluIGlkIHRoYXQgdGhlIHVzZXIgaXMgZXhwZWN0ZWQgdG8gY29ubmVjdCB0b1xuICAgKi9cbiAgY2hhaW46IHtcbiAgICBpZDogbnVtYmVyO1xuICAgIHJwY1VybDogc3RyaW5nO1xuICAgIGV4cGxvcmVyVXJsOiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGN1cnJlbmN5OiBzdHJpbmc7XG4gIH07XG5cbiAgLyoqXG4gICAqIFdoZW4gdGhlIHVzZXIgZG9lc24ndCBoYXZlIGEgcHJvdmlkZXIgbGlrZSBtZXRhbWFzayBhdmFpbGFibGVcbiAgICovXG4gIFByb3ZpZGVyVW5hdmFpbGFibGU/OiBSZWFjdC5GdW5jdGlvbkNvbXBvbmVudDtcblxuICAvKipcbiAgICogVGhpcyBpcyBpbnZva2VkIHdoZW4gdGhlIGNoYWluIElEIGlzIG5vdCBhdmFpbGFibGVcbiAgICovXG4gIENoYWluSWRJbnZhbGlkPzogUmVhY3QuRnVuY3Rpb25Db21wb25lbnQ8e1xuICAgIGNoYW5nZUNoYWluSWQ6ICgpID0+IHZvaWQ7XG4gIH0+O1xuXG4gIC8qKlxuICAgKiBUaGlzIHJlbmRlcnMgdGhlIGNvbnRlbnQgdGhhdCBpcyBzaG93biBpbnNpZGUgdGhlIHdhbGxldCBjb250ZW50XG4gICAqL1xuICBDb250ZW50OiAocHJvcHM6IFdhbGxldENvbm5lY3Rpb25Qcm9wcykgPT4gUmVhY3RFbGVtZW50O1xufTtcbmZ1bmN0aW9uIF9XYWxsZXRDb25uZWN0aW9uV3JhcHBlcihcbiAgcHJvcHM6IFByb3BzV2l0aENoaWxkcmVuPFByb3BzPixcbiAgcmVmOiBGb3J3YXJkZWRSZWY8e1xuICAgIGNvbm5lY3Q6ICgpID0+IFByb21pc2U8dm9pZD47XG4gICAgZGlzY29ubmVjdDogKCkgPT4gdm9pZDtcbiAgfT5cbikge1xuICByZXR1cm4gKFxuICAgIDxVc2VXYWxsZXRQcm92aWRlcj5cbiAgICAgIDxDb250ZW50IGNvbXBSZWY9e3JlZiB8fCBjcmVhdGVSZWYoKX0gey4uLnByb3BzfSAvPlxuICAgIDwvVXNlV2FsbGV0UHJvdmlkZXI+XG4gICk7XG59XG4vKipcbiAqIFRoaXMgY29tcG9uZW50IGhhbmRsZXMgYSBsb3Qgb2YgY2VuYXJpb3Mgd2hlbiBkZWFsaW5nIHdpdGggdGhlIHdhbGxldCBjb25uZWN0aW9uIHRvIGRpZmZlcmVudCBwcm92aWRlcnMgKGV4OiBNZXRhbWFzaylcbiAqKi9cbmZ1bmN0aW9uIF9CYXNlV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIoXG4gIHByb3BzOiBQcm9wcyAmIHtcbiAgICBjaGlsZHJlbj86IGFueTtcbiAgfSxcbiAgcmVmOiBGb3J3YXJkZWRSZWY8e1xuICAgIGNvbm5lY3Q6ICgpID0+IFByb21pc2U8dm9pZD47XG4gICAgZGlzY29ubmVjdDogKCkgPT4gdm9pZDtcbiAgfT5cbikge1xuICByZXR1cm4gPENvbnRlbnQgY29tcFJlZj17cmVmIHx8IGNyZWF0ZVJlZigpfSB7Li4ucHJvcHN9IC8+O1xufVxuXG5mdW5jdGlvbiBDb250ZW50KHtcbiAgUHJvdmlkZXJVbmF2YWlsYWJsZSxcbiAgQ2hhaW5JZEludmFsaWQsXG4gIGNoYWluLFxuICBDb250ZW50OiBQcm92aWRlZENvbnRlbnRXcmFwcGVyLFxuICBjb21wUmVmLFxuICBjaGlsZHJlbixcbn06IFByb3BzV2l0aENoaWxkcmVuPFxuICBQcm9wcyAmIHtcbiAgICBjb21wUmVmOiBGb3J3YXJkZWRSZWY8e1xuICAgICAgY29ubmVjdDogKCkgPT4gUHJvbWlzZTx2b2lkPjtcbiAgICAgIGRpc2Nvbm5lY3Q6ICgpID0+IHZvaWQ7XG4gICAgfT47XG4gIH1cbj4pIHtcbiAgY29uc3Qgd2FsbGV0ID0gdXNlV2FsbGV0KCk7XG4gIGNvbnN0IGNvbm5lY3Rpb25Bc3luY1dyYXBwZXIgPSB1c2VBc3luY0NvbnRyb2woKTtcbiAgY29uc3QgY29ubmVjdCA9IGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBjb25uZWN0aW9uQXN5bmNXcmFwcGVyLnByb2Nlc3MoYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgd2FsbGV0LmNvbm5lY3QoXCJpbmplY3RlZFwiKTtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwiYXV0b19jb25uZWN0XCIsIFwidHJ1ZVwiKTtcbiAgICB9KTtcbiAgfTtcbiAgY29uc3QgZGlzY29ubmVjdCA9ICgpID0+IHtcbiAgICB3YWxsZXQucmVzZXQoKTtcbiAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShcImF1dG9fY29ubmVjdFwiKTtcbiAgfTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhdXRvQ29ubmVjdCA9ICEhbG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJhdXRvX2Nvbm5lY3RcIik7XG4gICAgaWYgKGF1dG9Db25uZWN0ICYmICF3YWxsZXQuYWNjb3VudCkgY29ubmVjdCgpO1xuICB9LCBbXSk7XG4gIHVzZUltcGVyYXRpdmVIYW5kbGUoXG4gICAgY29tcFJlZixcbiAgICAoKSA9PiAoe1xuICAgICAgY29ubmVjdCxcbiAgICAgIGRpc2Nvbm5lY3QsXG4gICAgfSksXG4gICAgW3dhbGxldF1cbiAgKTtcbiAgY29uc3QgW2lzUHJvdmlkZXJBdmFpbGFibGVdID0gdXNlU3RhdGUoKCkgPT4gISF3aW5kb3cuZXRoZXJldW0pO1xuICBjb25zdCBpc0NoYWluSWRWYWxpZCA9IHVzZU1lbW8oXG4gICAgKCkgPT4gKHdhbGxldC5pc0Nvbm5lY3RlZCgpID8gd2FsbGV0LmNoYWluSWQgPT09IGNoYWluLmlkIDogdHJ1ZSksXG4gICAgW3dhbGxldCwgY2hhaW4uaWRdXG4gICk7XG5cbiAgYXN5bmMgZnVuY3Rpb24gY2hhbmdlQ2hhaW5JZCgpIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgd2luZG93LmV0aGVyZXVtIS5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiBcIndhbGxldF9zd2l0Y2hFdGhlcmV1bUNoYWluXCIsXG4gICAgICAgIHBhcmFtczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGNoYWluSWQ6IGAweCR7Y2hhaW4uaWQudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsIFwiMFwiKX1gLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIHN3aXRjaCAoZS5jb2RlKSB7XG4gICAgICAgIGNhc2UgNDkwMjpcbiAgICAgICAgICB3aW5kb3cuZXRoZXJldW0hLnJlcXVlc3Qoe1xuICAgICAgICAgICAgbWV0aG9kOiBcIndhbGxldF9hZGRFdGhlcmV1bUNoYWluXCIsXG4gICAgICAgICAgICBwYXJhbXM6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNoYWluSWQ6IGAweCR7Y2hhaW4uaWQudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsIFwiMFwiKX1gLFxuICAgICAgICAgICAgICAgIGNoYWluTmFtZTogY2hhaW4ubmFtZSxcbiAgICAgICAgICAgICAgICBycGNVcmxzOiBbY2hhaW4ucnBjVXJsXSxcbiAgICAgICAgICAgICAgICBibG9ja0V4cGxvcmVyVXJsczogW2NoYWluLmV4cGxvcmVyVXJsXSxcbiAgICAgICAgICAgICAgICBuYXRpdmVDdXJyZW5jeToge1xuICAgICAgICAgICAgICAgICAgc3ltYm9sOiBjaGFpbi5jdXJyZW5jeSxcbiAgICAgICAgICAgICAgICAgIGRlY2ltYWxzOiAxOCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgY29uc3QgQ29udGVudFdyYXBwZXIgPSBQcm92aWRlZENvbnRlbnRXcmFwcGVyIGFzIGFueTtcbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge1Byb3ZpZGVyVW5hdmFpbGFibGUgJiYgIWlzUHJvdmlkZXJBdmFpbGFibGUgJiYgPFByb3ZpZGVyVW5hdmFpbGFibGUgLz59XG4gICAgICB7Q2hhaW5JZEludmFsaWQgJiYgIWlzQ2hhaW5JZFZhbGlkICYmIChcbiAgICAgICAgPENoYWluSWRJbnZhbGlkIGNoYW5nZUNoYWluSWQ9e2NoYW5nZUNoYWluSWR9IC8+XG4gICAgICApfVxuICAgICAge1xuICAgICAgICA8Q29udGVudFdyYXBwZXJcbiAgICAgICAgICB7Li4uY29ubmVjdGlvbkFzeW5jV3JhcHBlcn1cbiAgICAgICAgICBpc0NoYWluSWRWYWxpZD17aXNDaGFpbklkVmFsaWR9XG4gICAgICAgICAgaXNQcm92aWRlckF2YWlsYWJsZT17aXNQcm92aWRlckF2YWlsYWJsZX1cbiAgICAgICAgICBpc0Nvbm5lY3RlZEFuZFZhbGlkQ2hhaW49e2lzQ2hhaW5JZFZhbGlkICYmIHdhbGxldC5pc0Nvbm5lY3RlZCgpfVxuICAgICAgICAgIGNvbm5lY3Q9e2Nvbm5lY3R9XG4gICAgICAgICAgZGlzY29ubmVjdD17ZGlzY29ubmVjdH1cbiAgICAgICAgICBjaGFuZ2VDaGFpbklkPXtjaGFuZ2VDaGFpbklkfVxuICAgICAgICAgIGNoYWluSWQ9e3dhbGxldC5jaGFpbklkfVxuICAgICAgICAgIGlzQ29ubmVjdGVkPXt3YWxsZXQuaXNDb25uZWN0ZWQoKX1cbiAgICAgICAgICB3YWxsZXQ9e3dhbGxldC5hY2NvdW50fVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L0NvbnRlbnRXcmFwcGVyPlxuICAgICAgfVxuICAgIDwvPlxuICApO1xufVxuXG4vKipcbiAqIFRoaXMgY29tcG9uZW50IGhhbmRsZXMgc29tZSBjZW5hcmlvcyB3aGVuIGRlYWxpbmcgd2l0aCB0aGUgd2FsbGV0IGNvbm5lY3Rpb24gdG8gZGlmZmVyZW50IHByb3ZpZGVycyAoZXg6IE1ldGFtYXNrKVxuICoqL1xuY29uc3QgV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIgPSBmb3J3YXJkUmVmKF9XYWxsZXRDb25uZWN0aW9uV3JhcHBlcik7XG5leHBvcnQgZGVmYXVsdCBXYWxsZXRDb25uZWN0aW9uV3JhcHBlcjtcblxuZXhwb3J0IGNvbnN0IEJhc2VXYWxsZXRDb25uZWN0aW9uV3JhcHBlciA9IGZvcndhcmRSZWYoXG4gIF9CYXNlV2FsbGV0Q29ubmVjdGlvbldyYXBwZXJcbik7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFZQSxJQUFBQyxVQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxnQkFBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQTBELFNBQUFHLHVCQUFBQyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBQUEsU0FBQUcseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFULHdCQUFBSyxHQUFBLEVBQUFJLFdBQUEsU0FBQUEsV0FBQSxJQUFBSixHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQVEsT0FBQSxDQUFBUixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRSxPQUFBLEVBQUFGLEdBQUEsVUFBQVMsS0FBQSxHQUFBTix3QkFBQSxDQUFBQyxXQUFBLE9BQUFLLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFWLEdBQUEsWUFBQVMsS0FBQSxDQUFBRSxHQUFBLENBQUFYLEdBQUEsU0FBQVksTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFqQixHQUFBLFFBQUFpQixHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFwQixHQUFBLEVBQUFpQixHQUFBLFNBQUFJLElBQUEsR0FBQVIscUJBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBaEIsR0FBQSxFQUFBaUIsR0FBQSxjQUFBSSxJQUFBLEtBQUFBLElBQUEsQ0FBQVYsR0FBQSxJQUFBVSxJQUFBLENBQUFDLEdBQUEsS0FBQVIsTUFBQSxDQUFBQyxjQUFBLENBQUFILE1BQUEsRUFBQUssR0FBQSxFQUFBSSxJQUFBLFlBQUFULE1BQUEsQ0FBQUssR0FBQSxJQUFBakIsR0FBQSxDQUFBaUIsR0FBQSxTQUFBTCxNQUFBLENBQUFWLE9BQUEsR0FBQUYsR0FBQSxNQUFBUyxLQUFBLElBQUFBLEtBQUEsQ0FBQWEsR0FBQSxDQUFBdEIsR0FBQSxFQUFBWSxNQUFBLFlBQUFBLE1BQUE7QUFBQSxTQUFBVyxlQUFBQyxHQUFBLEVBQUFDLENBQUEsV0FBQUMsZUFBQSxDQUFBRixHQUFBLEtBQUFHLHFCQUFBLENBQUFILEdBQUEsRUFBQUMsQ0FBQSxLQUFBRywyQkFBQSxDQUFBSixHQUFBLEVBQUFDLENBQUEsS0FBQUksZ0JBQUE7QUFBQSxTQUFBQSxpQkFBQSxjQUFBQyxTQUFBO0FBQUEsU0FBQUYsNEJBQUFHLENBQUEsRUFBQUMsTUFBQSxTQUFBRCxDQUFBLHFCQUFBQSxDQUFBLHNCQUFBRSxpQkFBQSxDQUFBRixDQUFBLEVBQUFDLE1BQUEsT0FBQUUsQ0FBQSxHQUFBcEIsTUFBQSxDQUFBSSxTQUFBLENBQUFpQixRQUFBLENBQUFmLElBQUEsQ0FBQVcsQ0FBQSxFQUFBSyxLQUFBLGFBQUFGLENBQUEsaUJBQUFILENBQUEsQ0FBQU0sV0FBQSxFQUFBSCxDQUFBLEdBQUFILENBQUEsQ0FBQU0sV0FBQSxDQUFBQyxJQUFBLE1BQUFKLENBQUEsY0FBQUEsQ0FBQSxtQkFBQUssS0FBQSxDQUFBQyxJQUFBLENBQUFULENBQUEsT0FBQUcsQ0FBQSwrREFBQU8sSUFBQSxDQUFBUCxDQUFBLFVBQUFELGlCQUFBLENBQUFGLENBQUEsRUFBQUMsTUFBQTtBQUFBLFNBQUFDLGtCQUFBVCxHQUFBLEVBQUFrQixHQUFBLFFBQUFBLEdBQUEsWUFBQUEsR0FBQSxHQUFBbEIsR0FBQSxDQUFBbUIsTUFBQSxFQUFBRCxHQUFBLEdBQUFsQixHQUFBLENBQUFtQixNQUFBLFdBQUFsQixDQUFBLE1BQUFtQixJQUFBLE9BQUFMLEtBQUEsQ0FBQUcsR0FBQSxHQUFBakIsQ0FBQSxHQUFBaUIsR0FBQSxFQUFBakIsQ0FBQSxJQUFBbUIsSUFBQSxDQUFBbkIsQ0FBQSxJQUFBRCxHQUFBLENBQUFDLENBQUEsVUFBQW1CLElBQUE7QUFBQSxTQUFBakIsc0JBQUFILEdBQUEsRUFBQUMsQ0FBQSxRQUFBb0IsRUFBQSxXQUFBckIsR0FBQSxnQ0FBQXNCLE1BQUEsSUFBQXRCLEdBQUEsQ0FBQXNCLE1BQUEsQ0FBQUMsUUFBQSxLQUFBdkIsR0FBQSw0QkFBQXFCLEVBQUEsUUFBQUcsRUFBQSxFQUFBQyxFQUFBLEVBQUFDLEVBQUEsRUFBQUMsRUFBQSxFQUFBQyxJQUFBLE9BQUFDLEVBQUEsT0FBQUMsRUFBQSxpQkFBQUosRUFBQSxJQUFBTCxFQUFBLEdBQUFBLEVBQUEsQ0FBQXpCLElBQUEsQ0FBQUksR0FBQSxHQUFBK0IsSUFBQSxRQUFBOUIsQ0FBQSxRQUFBWCxNQUFBLENBQUErQixFQUFBLE1BQUFBLEVBQUEsVUFBQVEsRUFBQSx1QkFBQUEsRUFBQSxJQUFBTCxFQUFBLEdBQUFFLEVBQUEsQ0FBQTlCLElBQUEsQ0FBQXlCLEVBQUEsR0FBQVcsSUFBQSxNQUFBSixJQUFBLENBQUFLLElBQUEsQ0FBQVQsRUFBQSxDQUFBVSxLQUFBLEdBQUFOLElBQUEsQ0FBQVQsTUFBQSxLQUFBbEIsQ0FBQSxHQUFBNEIsRUFBQSxpQkFBQU0sR0FBQSxJQUFBTCxFQUFBLE9BQUFMLEVBQUEsR0FBQVUsR0FBQSx5QkFBQU4sRUFBQSxZQUFBUixFQUFBLENBQUFlLE1BQUEsS0FBQVQsRUFBQSxHQUFBTixFQUFBLENBQUFlLE1BQUEsSUFBQTlDLE1BQUEsQ0FBQXFDLEVBQUEsTUFBQUEsRUFBQSwyQkFBQUcsRUFBQSxRQUFBTCxFQUFBLGFBQUFHLElBQUE7QUFBQSxTQUFBMUIsZ0JBQUFGLEdBQUEsUUFBQWUsS0FBQSxDQUFBc0IsT0FBQSxDQUFBckMsR0FBQSxVQUFBQSxHQUFBO0FBQUEsU0FBQXNDLG1CQUFBQyxHQUFBLEVBQUFDLE9BQUEsRUFBQUMsTUFBQSxFQUFBQyxLQUFBLEVBQUFDLE1BQUEsRUFBQWxELEdBQUEsRUFBQW1ELEdBQUEsY0FBQUMsSUFBQSxHQUFBTixHQUFBLENBQUE5QyxHQUFBLEVBQUFtRCxHQUFBLE9BQUFWLEtBQUEsR0FBQVcsSUFBQSxDQUFBWCxLQUFBLFdBQUFZLEtBQUEsSUFBQUwsTUFBQSxDQUFBSyxLQUFBLGlCQUFBRCxJQUFBLENBQUFiLElBQUEsSUFBQVEsT0FBQSxDQUFBTixLQUFBLFlBQUFhLE9BQUEsQ0FBQVAsT0FBQSxDQUFBTixLQUFBLEVBQUFjLElBQUEsQ0FBQU4sS0FBQSxFQUFBQyxNQUFBO0FBQUEsU0FBQU0sa0JBQUFDLEVBQUEsNkJBQUFDLElBQUEsU0FBQUMsSUFBQSxHQUFBQyxTQUFBLGFBQUFOLE9BQUEsV0FBQVAsT0FBQSxFQUFBQyxNQUFBLFFBQUFGLEdBQUEsR0FBQVcsRUFBQSxDQUFBSSxLQUFBLENBQUFILElBQUEsRUFBQUMsSUFBQSxZQUFBVixNQUFBUixLQUFBLElBQUFJLGtCQUFBLENBQUFDLEdBQUEsRUFBQUMsT0FBQSxFQUFBQyxNQUFBLEVBQUFDLEtBQUEsRUFBQUMsTUFBQSxVQUFBVCxLQUFBLGNBQUFTLE9BQUFSLEdBQUEsSUFBQUcsa0JBQUEsQ0FBQUMsR0FBQSxFQUFBQyxPQUFBLEVBQUFDLE1BQUEsRUFBQUMsS0FBQSxFQUFBQyxNQUFBLFdBQUFSLEdBQUEsS0FBQU8sS0FBQSxDQUFBYSxTQUFBO0FBQUEsU0FBQUMsU0FBQSxJQUFBQSxRQUFBLEdBQUFsRSxNQUFBLENBQUFtRSxNQUFBLEdBQUFuRSxNQUFBLENBQUFtRSxNQUFBLENBQUFDLElBQUEsZUFBQUMsTUFBQSxhQUFBMUQsQ0FBQSxNQUFBQSxDQUFBLEdBQUFvRCxTQUFBLENBQUFsQyxNQUFBLEVBQUFsQixDQUFBLFVBQUEyRCxNQUFBLEdBQUFQLFNBQUEsQ0FBQXBELENBQUEsWUFBQVIsR0FBQSxJQUFBbUUsTUFBQSxRQUFBdEUsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZ0UsTUFBQSxFQUFBbkUsR0FBQSxLQUFBa0UsTUFBQSxDQUFBbEUsR0FBQSxJQUFBbUUsTUFBQSxDQUFBbkUsR0FBQSxnQkFBQWtFLE1BQUEsWUFBQUgsUUFBQSxDQUFBRixLQUFBLE9BQUFELFNBQUE7QUE4QzFELFNBQVNRLHdCQUF3QkEsQ0FDL0JDLEtBQStCLEVBQy9CQyxHQUdFLEVBQ0Y7RUFDQSxvQkFDRTdGLE1BQUEsQ0FBQVEsT0FBQSxDQUFBc0YsYUFBQSxDQUFDM0YsVUFBQSxDQUFBNEYsaUJBQWlCLHFCQUNoQi9GLE1BQUEsQ0FBQVEsT0FBQSxDQUFBc0YsYUFBQSxDQUFDRSxPQUFPLEVBQUFWLFFBQUE7SUFBQ1csT0FBTyxFQUFFSixHQUFHLGlCQUFJLElBQUFLLGdCQUFTLEVBQUM7RUFBRSxHQUFLTixLQUFLLENBQUcsQ0FDakMsQ0FBQztBQUV4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVNPLDRCQUE0QkEsQ0FDbkNQLEtBRUMsRUFDREMsR0FHRSxFQUNGO0VBQ0Esb0JBQU83RixNQUFBLENBQUFRLE9BQUEsQ0FBQXNGLGFBQUEsQ0FBQ0UsT0FBTyxFQUFBVixRQUFBO0lBQUNXLE9BQU8sRUFBRUosR0FBRyxpQkFBSSxJQUFBSyxnQkFBUyxFQUFDO0VBQUUsR0FBS04sS0FBSyxDQUFHLENBQUM7QUFDNUQ7QUFFQSxTQUFTSSxPQUFPQSxDQUFBSSxJQUFBLEVBY2I7RUFBQSxJQWJEQyxtQkFBbUIsR0FBQUQsSUFBQSxDQUFuQkMsbUJBQW1CO0lBQ25CQyxjQUFjLEdBQUFGLElBQUEsQ0FBZEUsY0FBYztJQUNkQyxLQUFLLEdBQUFILElBQUEsQ0FBTEcsS0FBSztJQUNJQyxzQkFBc0IsR0FBQUosSUFBQSxDQUEvQkosT0FBTztJQUNQQyxPQUFPLEdBQUFHLElBQUEsQ0FBUEgsT0FBTztJQUNQUSxRQUFRLEdBQUFMLElBQUEsQ0FBUkssUUFBUTtFQVNSLE1BQU1DLE1BQU0sR0FBRyxJQUFBQyxvQkFBUyxFQUFDLENBQUM7RUFDMUIsTUFBTUMsc0JBQXNCLEdBQUcsSUFBQUMsd0JBQWUsRUFBQyxDQUFDO0VBQ2hELE1BQU1DLE9BQU87SUFBQSxJQUFBQyxLQUFBLEdBQUFoQyxpQkFBQSxDQUFHLGFBQVk7TUFDMUIsTUFBTTZCLHNCQUFzQixDQUFDSSxPQUFPLGVBQUFqQyxpQkFBQSxDQUFDLGFBQVk7UUFDL0MsTUFBTTJCLE1BQU0sQ0FBQ0ksT0FBTyxDQUFDLFVBQVUsQ0FBQztRQUNoQ0csWUFBWSxDQUFDQyxPQUFPLENBQUMsY0FBYyxFQUFFLE1BQU0sQ0FBQztNQUM5QyxDQUFDLEVBQUM7SUFDSixDQUFDO0lBQUEsZ0JBTEtKLE9BQU9BLENBQUE7TUFBQSxPQUFBQyxLQUFBLENBQUEzQixLQUFBLE9BQUFELFNBQUE7SUFBQTtFQUFBLEdBS1o7RUFDRCxNQUFNZ0MsVUFBVSxHQUFHLFNBQWJBLFVBQVVBLENBQUEsRUFBUztJQUN2QlQsTUFBTSxDQUFDVSxLQUFLLENBQUMsQ0FBQztJQUNkSCxZQUFZLENBQUNJLFVBQVUsQ0FBQyxjQUFjLENBQUM7RUFDekMsQ0FBQztFQUNELElBQUFDLGdCQUFTLEVBQUMsWUFBTTtJQUNkLE1BQU1DLFdBQVcsR0FBRyxDQUFDLENBQUNOLFlBQVksQ0FBQ08sT0FBTyxDQUFDLGNBQWMsQ0FBQztJQUMxRCxJQUFJRCxXQUFXLElBQUksQ0FBQ2IsTUFBTSxDQUFDZSxPQUFPLEVBQUVYLE9BQU8sQ0FBQyxDQUFDO0VBQy9DLENBQUMsRUFBRSxFQUFFLENBQUM7RUFDTixJQUFBWSwwQkFBbUIsRUFDakJ6QixPQUFPLEVBQ1A7SUFBQSxPQUFPO01BQ0xhLE9BQU8sRUFBUEEsT0FBTztNQUNQSyxVQUFVLEVBQVZBO0lBQ0YsQ0FBQztFQUFBLENBQUMsRUFDRixDQUFDVCxNQUFNLENBQ1QsQ0FBQztFQUNELE1BQUFpQixTQUFBLEdBQThCLElBQUFDLGVBQVEsRUFBQztNQUFBLE9BQU0sQ0FBQyxDQUFDQyxNQUFNLENBQUNDLFFBQVE7SUFBQSxFQUFDO0lBQUFDLFVBQUEsR0FBQWxHLGNBQUEsQ0FBQThGLFNBQUE7SUFBeERLLG1CQUFtQixHQUFBRCxVQUFBO0VBQzFCLE1BQU1FLGNBQWMsR0FBRyxJQUFBQyxjQUFPLEVBQzVCO0lBQUEsT0FBT3hCLE1BQU0sQ0FBQ3lCLFdBQVcsQ0FBQyxDQUFDLEdBQUd6QixNQUFNLENBQUMwQixPQUFPLEtBQUs3QixLQUFLLENBQUM4QixFQUFFLEdBQUcsSUFBSTtFQUFBLENBQUMsRUFDakUsQ0FBQzNCLE1BQU0sRUFBRUgsS0FBSyxDQUFDOEIsRUFBRSxDQUNuQixDQUFDO0VBQUMsU0FFYUMsYUFBYUEsQ0FBQTtJQUFBLE9BQUFDLGNBQUEsQ0FBQW5ELEtBQUEsT0FBQUQsU0FBQTtFQUFBO0VBQUEsU0FBQW9ELGVBQUE7SUFBQUEsY0FBQSxHQUFBeEQsaUJBQUEsQ0FBNUIsYUFBK0I7TUFDN0IsSUFBSTtRQUNGLE1BQU04QyxNQUFNLENBQUNDLFFBQVEsQ0FBRVUsT0FBTyxDQUFDO1VBQzdCQyxNQUFNLEVBQUUsNEJBQTRCO1VBQ3BDQyxNQUFNLEVBQUUsQ0FDTjtZQUNFTixPQUFPLE9BQUFPLE1BQUEsQ0FBT3BDLEtBQUssQ0FBQzhCLEVBQUUsQ0FBQzVGLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQ21HLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDO1VBQ3RELENBQUM7UUFFTCxDQUFDLENBQUM7TUFDSixDQUFDLENBQUMsT0FBT0MsQ0FBTSxFQUFFO1FBQ2YsUUFBUUEsQ0FBQyxDQUFDQyxJQUFJO1VBQ1osS0FBSyxJQUFJO1lBQ1BqQixNQUFNLENBQUNDLFFBQVEsQ0FBRVUsT0FBTyxDQUFDO2NBQ3ZCQyxNQUFNLEVBQUUseUJBQXlCO2NBQ2pDQyxNQUFNLEVBQUUsQ0FDTjtnQkFDRU4sT0FBTyxPQUFBTyxNQUFBLENBQU9wQyxLQUFLLENBQUM4QixFQUFFLENBQUM1RixRQUFRLENBQUMsRUFBRSxDQUFDLENBQUNtRyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFFO2dCQUN0REcsU0FBUyxFQUFFeEMsS0FBSyxDQUFDM0QsSUFBSTtnQkFDckJvRyxPQUFPLEVBQUUsQ0FBQ3pDLEtBQUssQ0FBQzBDLE1BQU0sQ0FBQztnQkFDdkJDLGlCQUFpQixFQUFFLENBQUMzQyxLQUFLLENBQUM0QyxXQUFXLENBQUM7Z0JBQ3RDQyxjQUFjLEVBQUU7a0JBQ2RDLE1BQU0sRUFBRTlDLEtBQUssQ0FBQytDLFFBQVE7a0JBQ3RCQyxRQUFRLEVBQUU7Z0JBQ1o7Y0FDRixDQUFDO1lBRUwsQ0FBQyxDQUFDO1FBQ047TUFDRjtJQUNGLENBQUM7SUFBQSxPQUFBaEIsY0FBQSxDQUFBbkQsS0FBQSxPQUFBRCxTQUFBO0VBQUE7RUFDRCxNQUFNcUUsY0FBYyxHQUFHaEQsc0JBQTZCO0VBQ3BELG9CQUNFeEcsTUFBQSxDQUFBUSxPQUFBLENBQUFzRixhQUFBLENBQUE5RixNQUFBLENBQUFRLE9BQUEsQ0FBQWlKLFFBQUEsUUFDR3BELG1CQUFtQixJQUFJLENBQUMyQixtQkFBbUIsaUJBQUloSSxNQUFBLENBQUFRLE9BQUEsQ0FBQXNGLGFBQUEsQ0FBQ08sbUJBQW1CLE1BQUUsQ0FBQyxFQUN0RUMsY0FBYyxJQUFJLENBQUMyQixjQUFjLGlCQUNoQ2pJLE1BQUEsQ0FBQVEsT0FBQSxDQUFBc0YsYUFBQSxDQUFDUSxjQUFjO0lBQUNnQyxhQUFhLEVBQUVBO0VBQWMsQ0FBRSxDQUNoRCxlQUVDdEksTUFBQSxDQUFBUSxPQUFBLENBQUFzRixhQUFBLENBQUMwRCxjQUFjLEVBQUFsRSxRQUFBLEtBQ1RzQixzQkFBc0I7SUFDMUJxQixjQUFjLEVBQUVBLGNBQWU7SUFDL0JELG1CQUFtQixFQUFFQSxtQkFBb0I7SUFDekMwQix3QkFBd0IsRUFBRXpCLGNBQWMsSUFBSXZCLE1BQU0sQ0FBQ3lCLFdBQVcsQ0FBQyxDQUFFO0lBQ2pFckIsT0FBTyxFQUFFQSxPQUFRO0lBQ2pCSyxVQUFVLEVBQUVBLFVBQVc7SUFDdkJtQixhQUFhLEVBQUVBLGFBQWM7SUFDN0JGLE9BQU8sRUFBRTFCLE1BQU0sQ0FBQzBCLE9BQVE7SUFDeEJELFdBQVcsRUFBRXpCLE1BQU0sQ0FBQ3lCLFdBQVcsQ0FBQyxDQUFFO0lBQ2xDekIsTUFBTSxFQUFFQSxNQUFNLENBQUNlO0VBQVEsSUFFdEJoQixRQUNhLENBRWxCLENBQUM7QUFFUDs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxNQUFNa0QsdUJBQXVCLGdCQUFHLElBQUFDLGlCQUFVLEVBQUNqRSx3QkFBd0IsQ0FBQztBQUFDLElBQUFrRSxRQUFBLEdBQ3RERix1QkFBdUI7QUFBQUcsT0FBQSxDQUFBdEosT0FBQSxHQUFBcUosUUFBQTtBQUUvQixNQUFNRSwyQkFBMkIsZ0JBQUcsSUFBQUgsaUJBQVUsRUFDbkR6RCw0QkFDRixDQUFDO0FBQUMyRCxPQUFBLENBQUFDLDJCQUFBLEdBQUFBLDJCQUFBIn0=
141
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdXNlV2FsbGV0IiwiX3VzZUFzeW5jQ29udHJvbCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIl90eXBlb2YiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIl9zbGljZWRUb0FycmF5IiwiYXJyIiwiaSIsIl9hcnJheVdpdGhIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXlMaW1pdCIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVJlc3QiLCJUeXBlRXJyb3IiLCJvIiwibWluTGVuIiwiX2FycmF5TGlrZVRvQXJyYXkiLCJuIiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwibmFtZSIsIkFycmF5IiwiZnJvbSIsInRlc3QiLCJsZW4iLCJsZW5ndGgiLCJhcnIyIiwiX2kiLCJTeW1ib2wiLCJpdGVyYXRvciIsIl9zIiwiX2UiLCJfeCIsIl9yIiwiX2FyciIsIl9uIiwiX2QiLCJuZXh0IiwiZG9uZSIsInB1c2giLCJ2YWx1ZSIsImVyciIsInJldHVybiIsImlzQXJyYXkiLCJhc3luY0dlbmVyYXRvclN0ZXAiLCJnZW4iLCJyZXNvbHZlIiwicmVqZWN0IiwiX25leHQiLCJfdGhyb3ciLCJhcmciLCJpbmZvIiwiZXJyb3IiLCJQcm9taXNlIiwidGhlbiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiZm4iLCJzZWxmIiwiYXJncyIsImFyZ3VtZW50cyIsImFwcGx5IiwidW5kZWZpbmVkIiwiX2V4dGVuZHMiLCJhc3NpZ24iLCJiaW5kIiwidGFyZ2V0Iiwic291cmNlIiwiX1dhbGxldENvbm5lY3Rpb25XcmFwcGVyIiwicHJvcHMiLCJyZWYiLCJjcmVhdGVFbGVtZW50IiwiVXNlV2FsbGV0UHJvdmlkZXIiLCJDb250ZW50IiwiY29tcFJlZiIsImNyZWF0ZVJlZiIsIl9CYXNlV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIiLCJfcmVmIiwiUHJvdmlkZXJVbmF2YWlsYWJsZSIsIkNoYWluSWRJbnZhbGlkIiwiY2hhaW4iLCJQcm92aWRlZENvbnRlbnRXcmFwcGVyIiwiY2hpbGRyZW4iLCJ3YWxsZXQiLCJ1c2VXYWxsZXQiLCJjb25uZWN0aW9uQXN5bmNXcmFwcGVyIiwidXNlQXN5bmNDb250cm9sIiwiY29ubmVjdCIsIl9yZWYyIiwicHJvY2VzcyIsImxvY2FsU3RvcmFnZSIsInNldEl0ZW0iLCJkaXNjb25uZWN0IiwicmVzZXQiLCJyZW1vdmVJdGVtIiwidXNlRWZmZWN0IiwiYXV0b0Nvbm5lY3QiLCJnZXRJdGVtIiwiYWNjb3VudCIsInVzZUltcGVyYXRpdmVIYW5kbGUiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIndpbmRvdyIsImV0aGVyZXVtIiwiX3VzZVN0YXRlMiIsImlzUHJvdmlkZXJBdmFpbGFibGUiLCJpc0NoYWluSWRWYWxpZCIsInVzZU1lbW8iLCJpc0Nvbm5lY3RlZCIsImNoYWluSWQiLCJpZCIsImNoYW5nZUNoYWluSWQiLCJfY2hhbmdlQ2hhaW5JZCIsInJlcXVlc3QiLCJtZXRob2QiLCJwYXJhbXMiLCJjb25jYXQiLCJwYWRTdGFydCIsImUiLCJjb2RlIiwiY2hhaW5OYW1lIiwicnBjVXJscyIsInJwY1VybCIsImJsb2NrRXhwbG9yZXJVcmxzIiwiZXhwbG9yZXJVcmwiLCJuYXRpdmVDdXJyZW5jeSIsInN5bWJvbCIsImN1cnJlbmN5IiwiZGVjaW1hbHMiLCJDb250ZW50V3JhcHBlciIsIkZyYWdtZW50IiwiaXNDb25uZWN0ZWRBbmRWYWxpZENoYWluIiwiV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIiLCJmb3J3YXJkUmVmIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwiQmFzZVdhbGxldENvbm5lY3Rpb25XcmFwcGVyIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIvV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICBjcmVhdGVSZWYsXG4gIEZvcndhcmRlZFJlZixcbiAgZm9yd2FyZFJlZixcbiAgUHJvcHNXaXRoQ2hpbGRyZW4sXG4gIFJlYWN0RWxlbWVudCxcbiAgUmVhY3ROb2RlLFxuICB1c2VFZmZlY3QsXG4gIHVzZUltcGVyYXRpdmVIYW5kbGUsXG4gIHVzZU1lbW8sXG4gIHVzZVN0YXRlLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IHVzZVdhbGxldCwgVXNlV2FsbGV0UHJvdmlkZXIgfSBmcm9tIFwidXNlLXdhbGxldFwiO1xuaW1wb3J0IHVzZUFzeW5jQ29udHJvbCBmcm9tIFwiLi4vLi4vaG9va3MvdXNlQXN5bmNDb250cm9sXCI7XG5cbmV4cG9ydCB0eXBlIFdhbGxldENvbm5lY3Rpb25Qcm9wcyA9IFByb3BzV2l0aENoaWxkcmVuPFxuICBPbWl0PFJldHVyblR5cGU8dHlwZW9mIHVzZUFzeW5jQ29udHJvbD4sIFwicHJvY2Vzc1wiPiAmIHtcbiAgICBjaGFpbklkPzogbnVtYmVyO1xuICAgIGlzQ2hhaW5JZFZhbGlkOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIGlzUHJvdmlkZXJBdmFpbGFibGU6IGJvb2xlYW47XG4gICAgaXNDb25uZWN0ZWRBbmRWYWxpZENoYWluOiBib29sZWFuO1xuICAgIGlzQ29ubmVjdGVkOiBib29sZWFuO1xuICAgIHdhbGxldD86IHN0cmluZztcblxuICAgIGNvbm5lY3Q6ICgpID0+IFByb21pc2U8dm9pZD47XG4gICAgZGlzY29ubmVjdDogKCkgPT4gdm9pZDtcbiAgICBjaGFuZ2VDaGFpbklkOiAoKSA9PiB2b2lkO1xuICB9XG4+O1xuXG50eXBlIFByb3BzID0ge1xuICAvKipcbiAgICogVGhlIGNoYWluIGlkIHRoYXQgdGhlIHVzZXIgaXMgZXhwZWN0ZWQgdG8gY29ubmVjdCB0b1xuICAgKi9cbiAgY2hhaW4/OiB7XG4gICAgaWQ6IG51bWJlcjtcbiAgICBycGNVcmw6IHN0cmluZztcbiAgICBleHBsb3JlclVybDogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBjdXJyZW5jeTogc3RyaW5nO1xuICB9O1xuXG4gIC8qKlxuICAgKiBXaGVuIHRoZSB1c2VyIGRvZXNuJ3QgaGF2ZSBhIHByb3ZpZGVyIGxpa2UgbWV0YW1hc2sgYXZhaWxhYmxlXG4gICAqL1xuICBQcm92aWRlclVuYXZhaWxhYmxlPzogUmVhY3QuRnVuY3Rpb25Db21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIFRoaXMgaXMgaW52b2tlZCB3aGVuIHRoZSBjaGFpbiBJRCBpcyBub3QgYXZhaWxhYmxlXG4gICAqL1xuICBDaGFpbklkSW52YWxpZD86IFJlYWN0LkZ1bmN0aW9uQ29tcG9uZW50PHtcbiAgICBjaGFuZ2VDaGFpbklkOiAoKSA9PiB2b2lkO1xuICB9PjtcblxuICAvKipcbiAgICogVGhpcyByZW5kZXJzIHRoZSBjb250ZW50IHRoYXQgaXMgc2hvd24gaW5zaWRlIHRoZSB3YWxsZXQgY29udGVudFxuICAgKi9cbiAgQ29udGVudDogKHByb3BzOiBXYWxsZXRDb25uZWN0aW9uUHJvcHMpID0+IFJlYWN0RWxlbWVudDtcbn07XG5mdW5jdGlvbiBfV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIoXG4gIHByb3BzOiBQcm9wc1dpdGhDaGlsZHJlbjxQcm9wcz4sXG4gIHJlZjogRm9yd2FyZGVkUmVmPHtcbiAgICBjb25uZWN0OiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuICAgIGRpc2Nvbm5lY3Q6ICgpID0+IHZvaWQ7XG4gIH0+XG4pIHtcbiAgcmV0dXJuIChcbiAgICA8VXNlV2FsbGV0UHJvdmlkZXI+XG4gICAgICA8Q29udGVudCBjb21wUmVmPXtyZWYgfHwgY3JlYXRlUmVmKCl9IHsuLi5wcm9wc30gLz5cbiAgICA8L1VzZVdhbGxldFByb3ZpZGVyPlxuICApO1xufVxuLyoqXG4gKiBUaGlzIGNvbXBvbmVudCBoYW5kbGVzIGEgbG90IG9mIGNlbmFyaW9zIHdoZW4gZGVhbGluZyB3aXRoIHRoZSB3YWxsZXQgY29ubmVjdGlvbiB0byBkaWZmZXJlbnQgcHJvdmlkZXJzIChleDogTWV0YW1hc2spXG4gKiovXG5mdW5jdGlvbiBfQmFzZVdhbGxldENvbm5lY3Rpb25XcmFwcGVyKFxuICBwcm9wczogUHJvcHMgJiB7XG4gICAgY2hpbGRyZW4/OiBhbnk7XG4gIH0sXG4gIHJlZjogRm9yd2FyZGVkUmVmPHtcbiAgICBjb25uZWN0OiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuICAgIGRpc2Nvbm5lY3Q6ICgpID0+IHZvaWQ7XG4gIH0+XG4pIHtcbiAgcmV0dXJuIDxDb250ZW50IGNvbXBSZWY9e3JlZiB8fCBjcmVhdGVSZWYoKX0gey4uLnByb3BzfSAvPjtcbn1cblxuZnVuY3Rpb24gQ29udGVudCh7XG4gIFByb3ZpZGVyVW5hdmFpbGFibGUsXG4gIENoYWluSWRJbnZhbGlkLFxuICBjaGFpbixcbiAgQ29udGVudDogUHJvdmlkZWRDb250ZW50V3JhcHBlcixcbiAgY29tcFJlZixcbiAgY2hpbGRyZW4sXG59OiBQcm9wc1dpdGhDaGlsZHJlbjxcbiAgUHJvcHMgJiB7XG4gICAgY29tcFJlZjogRm9yd2FyZGVkUmVmPHtcbiAgICAgIGNvbm5lY3Q6ICgpID0+IFByb21pc2U8dm9pZD47XG4gICAgICBkaXNjb25uZWN0OiAoKSA9PiB2b2lkO1xuICAgIH0+O1xuICB9XG4+KSB7XG4gIGNvbnN0IHdhbGxldCA9IHVzZVdhbGxldCgpO1xuICBjb25zdCBjb25uZWN0aW9uQXN5bmNXcmFwcGVyID0gdXNlQXN5bmNDb250cm9sKCk7XG4gIGNvbnN0IGNvbm5lY3QgPSBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgY29ubmVjdGlvbkFzeW5jV3JhcHBlci5wcm9jZXNzKGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IHdhbGxldC5jb25uZWN0KFwiaW5qZWN0ZWRcIik7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcImF1dG9fY29ubmVjdFwiLCBcInRydWVcIik7XG4gICAgfSk7XG4gIH07XG4gIGNvbnN0IGRpc2Nvbm5lY3QgPSAoKSA9PiB7XG4gICAgd2FsbGV0LnJlc2V0KCk7XG4gICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJhdXRvX2Nvbm5lY3RcIik7XG4gIH07XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgYXV0b0Nvbm5lY3QgPSAhIWxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiYXV0b19jb25uZWN0XCIpO1xuICAgIGlmIChhdXRvQ29ubmVjdCAmJiAhd2FsbGV0LmFjY291bnQpIGNvbm5lY3QoKTtcbiAgfSwgW10pO1xuICB1c2VJbXBlcmF0aXZlSGFuZGxlKFxuICAgIGNvbXBSZWYsXG4gICAgKCkgPT4gKHtcbiAgICAgIGNvbm5lY3QsXG4gICAgICBkaXNjb25uZWN0LFxuICAgIH0pLFxuICAgIFt3YWxsZXRdXG4gICk7XG4gIGNvbnN0IFtpc1Byb3ZpZGVyQXZhaWxhYmxlXSA9IHVzZVN0YXRlKCgpID0+ICEhd2luZG93LmV0aGVyZXVtKTtcbiAgLyoqXG4gICAqIHRydWUgLSBNb3N0cmFyIG8gY29udGV1ZG8gKGV4OiBmb3JtIGRlIHRyYW5zZmVyZW5jaWEpXG4gICAqIGZhbHNlIC0gTW9zdHJhciBvIGJvdMOjbyBkZSB0cm9jYXIgYSBjaGFpblxuICAgKlxuICAgKiB1bmRlZmluZWQgPz8/XG4gICAqL1xuICBjb25zdCBpc0NoYWluSWRWYWxpZCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGNoYWluXG4gICAgICAgID8gd2FsbGV0LmlzQ29ubmVjdGVkKClcbiAgICAgICAgICA/IHdhbGxldC5jaGFpbklkID09PSBjaGFpbi5pZFxuICAgICAgICAgIDogdHJ1ZVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICBbd2FsbGV0LCBjaGFpbj8uaWRdXG4gICk7XG5cbiAgYXN5bmMgZnVuY3Rpb24gY2hhbmdlQ2hhaW5JZCgpIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgd2luZG93LmV0aGVyZXVtIS5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiBcIndhbGxldF9zd2l0Y2hFdGhlcmV1bUNoYWluXCIsXG4gICAgICAgIHBhcmFtczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGNoYWluSWQ6IGAweCR7Y2hhaW4hLmlkLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCBcIjBcIil9YCxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICBzd2l0Y2ggKGUuY29kZSkge1xuICAgICAgICBjYXNlIDQ5MDI6XG4gICAgICAgICAgd2luZG93LmV0aGVyZXVtIS5yZXF1ZXN0KHtcbiAgICAgICAgICAgIG1ldGhvZDogXCJ3YWxsZXRfYWRkRXRoZXJldW1DaGFpblwiLFxuICAgICAgICAgICAgcGFyYW1zOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjaGFpbklkOiBgMHgke2NoYWluIS5pZC50b1N0cmluZygxNikucGFkU3RhcnQoMiwgXCIwXCIpfWAsXG4gICAgICAgICAgICAgICAgY2hhaW5OYW1lOiBjaGFpbiEubmFtZSxcbiAgICAgICAgICAgICAgICBycGNVcmxzOiBbY2hhaW4hLnJwY1VybF0sXG4gICAgICAgICAgICAgICAgYmxvY2tFeHBsb3JlclVybHM6IFtjaGFpbiEuZXhwbG9yZXJVcmxdLFxuICAgICAgICAgICAgICAgIG5hdGl2ZUN1cnJlbmN5OiB7XG4gICAgICAgICAgICAgICAgICBzeW1ib2w6IGNoYWluIS5jdXJyZW5jeSxcbiAgICAgICAgICAgICAgICAgIGRlY2ltYWxzOiAxOCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgY29uc3QgQ29udGVudFdyYXBwZXIgPSBQcm92aWRlZENvbnRlbnRXcmFwcGVyIGFzIGFueTtcbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge1Byb3ZpZGVyVW5hdmFpbGFibGUgJiYgIWlzUHJvdmlkZXJBdmFpbGFibGUgJiYgPFByb3ZpZGVyVW5hdmFpbGFibGUgLz59XG4gICAgICB7Q2hhaW5JZEludmFsaWQgJiYgIWlzQ2hhaW5JZFZhbGlkICYmIChcbiAgICAgICAgPENoYWluSWRJbnZhbGlkIGNoYW5nZUNoYWluSWQ9e2NoYW5nZUNoYWluSWR9IC8+XG4gICAgICApfVxuICAgICAge1xuICAgICAgICA8Q29udGVudFdyYXBwZXJcbiAgICAgICAgICB7Li4uY29ubmVjdGlvbkFzeW5jV3JhcHBlcn1cbiAgICAgICAgICBpc0NoYWluSWRWYWxpZD17aXNDaGFpbklkVmFsaWR9XG4gICAgICAgICAgaXNQcm92aWRlckF2YWlsYWJsZT17aXNQcm92aWRlckF2YWlsYWJsZX1cbiAgICAgICAgICBpc0Nvbm5lY3RlZEFuZFZhbGlkQ2hhaW49e2lzQ2hhaW5JZFZhbGlkICYmIHdhbGxldC5pc0Nvbm5lY3RlZCgpfVxuICAgICAgICAgIGNvbm5lY3Q9e2Nvbm5lY3R9XG4gICAgICAgICAgZGlzY29ubmVjdD17ZGlzY29ubmVjdH1cbiAgICAgICAgICBjaGFuZ2VDaGFpbklkPXtjaGFuZ2VDaGFpbklkfVxuICAgICAgICAgIGNoYWluSWQ9e3dhbGxldC5jaGFpbklkfVxuICAgICAgICAgIGlzQ29ubmVjdGVkPXt3YWxsZXQuaXNDb25uZWN0ZWQoKX1cbiAgICAgICAgICB3YWxsZXQ9e3dhbGxldC5hY2NvdW50fVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L0NvbnRlbnRXcmFwcGVyPlxuICAgICAgfVxuICAgIDwvPlxuICApO1xufVxuXG4vKipcbiAqIFRoaXMgY29tcG9uZW50IGhhbmRsZXMgc29tZSBjZW5hcmlvcyB3aGVuIGRlYWxpbmcgd2l0aCB0aGUgd2FsbGV0IGNvbm5lY3Rpb24gdG8gZGlmZmVyZW50IHByb3ZpZGVycyAoZXg6IE1ldGFtYXNrKVxuICoqL1xuY29uc3QgV2FsbGV0Q29ubmVjdGlvbldyYXBwZXIgPSBmb3J3YXJkUmVmKF9XYWxsZXRDb25uZWN0aW9uV3JhcHBlcik7XG5leHBvcnQgZGVmYXVsdCBXYWxsZXRDb25uZWN0aW9uV3JhcHBlcjtcblxuZXhwb3J0IGNvbnN0IEJhc2VXYWxsZXRDb25uZWN0aW9uV3JhcHBlciA9IGZvcndhcmRSZWYoXG4gIF9CYXNlV2FsbGV0Q29ubmVjdGlvbldyYXBwZXJcbik7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFZQSxJQUFBQyxVQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxnQkFBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQTBELFNBQUFHLHVCQUFBQyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBQUEsU0FBQUcseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFULHdCQUFBSyxHQUFBLEVBQUFJLFdBQUEsU0FBQUEsV0FBQSxJQUFBSixHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQVEsT0FBQSxDQUFBUixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRSxPQUFBLEVBQUFGLEdBQUEsVUFBQVMsS0FBQSxHQUFB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
@@ -0,0 +1,7 @@
1
+ /**
2
+ * It can assume 3 states
3
+ * [undefined] = The hook has just initialized, and will call the memoize function
4
+ * [T] = The hook initialized the value
5
+ * [null, error] = The hook failed to initialize and the error is available
6
+ */
7
+ export default function useAsyncMemo<T>(funcToMemoize: () => Promise<T>, depArr: any[]): [T | undefined | null, any];
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useAsyncMemo;
7
+ var _react = require("react");
8
+ var _useAsyncControl2 = _interopRequireDefault(require("../useAsyncControl"));
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
12
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
13
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
14
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
15
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
16
+ /**
17
+ * It can assume 3 states
18
+ * [undefined] = The hook has just initialized, and will call the memoize function
19
+ * [T] = The hook initialized the value
20
+ * [null, error] = The hook failed to initialize and the error is available
21
+ */
22
+ function useAsyncMemo(funcToMemoize, depArr) {
23
+ const _useAsyncControl = (0, _useAsyncControl2.default)(),
24
+ process = _useAsyncControl.process,
25
+ error = _useAsyncControl.error;
26
+ const _useState = (0, _react.useState)(),
27
+ _useState2 = _slicedToArray(_useState, 2),
28
+ memo = _useState2[0],
29
+ setMemo = _useState2[1];
30
+ (0, _react.useEffect)(function () {
31
+ process(funcToMemoize).then(setMemo).catch(function () {
32
+ return setMemo(null);
33
+ });
34
+ }, depArr);
35
+ return [memo, error];
36
+ }
37
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3VzZUFzeW5jQ29udHJvbDIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0Iiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJfc2xpY2VkVG9BcnJheSIsImFyciIsImkiLCJfYXJyYXlXaXRoSG9sZXMiLCJfaXRlcmFibGVUb0FycmF5TGltaXQiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVSZXN0IiwiVHlwZUVycm9yIiwibyIsIm1pbkxlbiIsIl9hcnJheUxpa2VUb0FycmF5IiwibiIsIk9iamVjdCIsInByb3RvdHlwZSIsInRvU3RyaW5nIiwiY2FsbCIsInNsaWNlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiQXJyYXkiLCJmcm9tIiwidGVzdCIsImxlbiIsImxlbmd0aCIsImFycjIiLCJfaSIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiX3MiLCJfZSIsIl94IiwiX3IiLCJfYXJyIiwiX24iLCJfZCIsIm5leHQiLCJkb25lIiwicHVzaCIsInZhbHVlIiwiZXJyIiwicmV0dXJuIiwiaXNBcnJheSIsInVzZUFzeW5jTWVtbyIsImZ1bmNUb01lbW9pemUiLCJkZXBBcnIiLCJfdXNlQXN5bmNDb250cm9sIiwidXNlQXN5bmNDb250cm9sIiwicHJvY2VzcyIsImVycm9yIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwibWVtbyIsInNldE1lbW8iLCJ1c2VFZmZlY3QiLCJ0aGVuIiwiY2F0Y2giXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaG9va3MvdXRpbGl0eS91c2VBc3luY01lbW8udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHVzZUFzeW5jQ29udHJvbCBmcm9tIFwiLi4vdXNlQXN5bmNDb250cm9sXCI7XG5cbi8qKlxuICogSXQgY2FuIGFzc3VtZSAzIHN0YXRlc1xuICogW3VuZGVmaW5lZF0gPSBUaGUgaG9vayBoYXMganVzdCBpbml0aWFsaXplZCwgYW5kIHdpbGwgY2FsbCB0aGUgbWVtb2l6ZSBmdW5jdGlvblxuICogW1RdID0gVGhlIGhvb2sgaW5pdGlhbGl6ZWQgdGhlIHZhbHVlXG4gKiBbbnVsbCwgZXJyb3JdID0gVGhlIGhvb2sgZmFpbGVkIHRvIGluaXRpYWxpemUgYW5kIHRoZSBlcnJvciBpcyBhdmFpbGFibGVcbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlQXN5bmNNZW1vPFQ+KFxuICBmdW5jVG9NZW1vaXplOiAoKSA9PiBQcm9taXNlPFQ+LFxuICBkZXBBcnI6IGFueVtdXG4pOiBbVCB8IHVuZGVmaW5lZCB8IG51bGwsIGFueV0ge1xuICBjb25zdCB7IHByb2Nlc3MsIGVycm9yIH0gPSB1c2VBc3luY0NvbnRyb2woKTtcbiAgY29uc3QgW21lbW8sIHNldE1lbW9dID0gdXNlU3RhdGU8VCB8IG51bGw+KCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBwcm9jZXNzKGZ1bmNUb01lbW9pemUpXG4gICAgICAudGhlbihzZXRNZW1vKVxuICAgICAgLmNhdGNoKCgpID0+IHNldE1lbW8obnVsbCkpO1xuICB9LCBkZXBBcnIpO1xuXG4gIHJldHVybiBbbWVtbywgZXJyb3JdO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxpQkFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQWlELFNBQUFFLHVCQUFBQyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBQUEsU0FBQUcsZUFBQUMsR0FBQSxFQUFBQyxDQUFBLFdBQUFDLGVBQUEsQ0FBQUYsR0FBQSxLQUFBRyxxQkFBQSxDQUFBSCxHQUFBLEVBQUFDLENBQUEsS0FBQUcsMkJBQUEsQ0FBQUosR0FBQSxFQUFBQyxDQUFBLEtBQUFJLGdCQUFBO0FB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
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Provides a way to manually trigger a function and store it's result on a state
3
+ */
4
+ export default function useManualInit<T>(funcToMemoize: () => Promise<T>, depArr: any[]): [init: () => Promise<T>, memo: T | undefined | null, error: any];
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useManualInit;
7
+ var _react = require("react");
8
+ var _useAsyncControl2 = _interopRequireDefault(require("../useAsyncControl"));
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
12
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
13
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
14
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
15
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
16
+ /**
17
+ * Provides a way to manually trigger a function and store it's result on a state
18
+ */
19
+ function useManualInit(funcToMemoize, depArr) {
20
+ const _useAsyncControl = (0, _useAsyncControl2.default)(),
21
+ process = _useAsyncControl.process,
22
+ error = _useAsyncControl.error;
23
+ const _useState = (0, _react.useState)(),
24
+ _useState2 = _slicedToArray(_useState, 2),
25
+ memo = _useState2[0],
26
+ setMemo = _useState2[1];
27
+ const initCb = (0, _react.useCallback)(function () {
28
+ return process(funcToMemoize).then(function (result) {
29
+ setMemo(result);
30
+ return result;
31
+ }).catch(function () {
32
+ return setMemo(null);
33
+ });
34
+ }, depArr);
35
+ return [initCb, memo, error];
36
+ }
37
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3VzZUFzeW5jQ29udHJvbDIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0Iiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJfc2xpY2VkVG9BcnJheSIsImFyciIsImkiLCJfYXJyYXlXaXRoSG9sZXMiLCJfaXRlcmFibGVUb0FycmF5TGltaXQiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVSZXN0IiwiVHlwZUVycm9yIiwibyIsIm1pbkxlbiIsIl9hcnJheUxpa2VUb0FycmF5IiwibiIsIk9iamVjdCIsInByb3RvdHlwZSIsInRvU3RyaW5nIiwiY2FsbCIsInNsaWNlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiQXJyYXkiLCJmcm9tIiwidGVzdCIsImxlbiIsImxlbmd0aCIsImFycjIiLCJfaSIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiX3MiLCJfZSIsIl94IiwiX3IiLCJfYXJyIiwiX24iLCJfZCIsIm5leHQiLCJkb25lIiwicHVzaCIsInZhbHVlIiwiZXJyIiwicmV0dXJuIiwiaXNBcnJheSIsInVzZU1hbnVhbEluaXQiLCJmdW5jVG9NZW1vaXplIiwiZGVwQXJyIiwiX3VzZUFzeW5jQ29udHJvbCIsInVzZUFzeW5jQ29udHJvbCIsInByb2Nlc3MiLCJlcnJvciIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIm1lbW8iLCJzZXRNZW1vIiwiaW5pdENiIiwidXNlQ2FsbGJhY2siLCJ0aGVuIiwicmVzdWx0IiwiY2F0Y2giXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaG9va3MvdXRpbGl0eS91c2VNYW51YWxJbml0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgdXNlQXN5bmNDb250cm9sIGZyb20gXCIuLi91c2VBc3luY0NvbnRyb2xcIjtcblxuLyoqXG4gKiBQcm92aWRlcyBhIHdheSB0byBtYW51YWxseSB0cmlnZ2VyIGEgZnVuY3Rpb24gYW5kIHN0b3JlIGl0J3MgcmVzdWx0IG9uIGEgc3RhdGVcbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlTWFudWFsSW5pdDxUPihcbiAgZnVuY1RvTWVtb2l6ZTogKCkgPT4gUHJvbWlzZTxUPixcbiAgZGVwQXJyOiBhbnlbXVxuKTogW2luaXQ6ICgpID0+IFByb21pc2U8VD4sIG1lbW86IFQgfCB1bmRlZmluZWQgfCBudWxsLCBlcnJvcjogYW55XSB7XG4gIGNvbnN0IHsgcHJvY2VzcywgZXJyb3IgfSA9IHVzZUFzeW5jQ29udHJvbCgpO1xuICBjb25zdCBbbWVtbywgc2V0TWVtb10gPSB1c2VTdGF0ZTxUIHwgbnVsbD4oKTtcbiAgY29uc3QgaW5pdENiID0gdXNlQ2FsbGJhY2soXG4gICAgKCkgPT5cbiAgICAgIHByb2Nlc3MoZnVuY1RvTWVtb2l6ZSlcbiAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4ge1xuICAgICAgICAgIHNldE1lbW8ocmVzdWx0KTtcbiAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4gc2V0TWVtbyhudWxsKSksXG4gICAgZGVwQXJyXG4gICk7XG4gIHJldHVybiBbaW5pdENiLCBtZW1vLCBlcnJvcl07XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLGlCQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFBaUQsU0FBQUUsdUJBQUFDLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFBQSxTQUFBRyxlQUFBQyxHQUFBLEVBQUFDLENBQUEsV0FBQUMsZUFBQSxDQUFBRixHQUFBLEtBQUFHLHFCQUFBLENBQUFILEdBQUEsRUFBQUMsQ0FBQSxLQUFBRywyQkFBQSxDQUFB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onepercentio/one-ui",
3
- "version": "0.21.4",
3
+ "version": "0.22.0",
4
4
  "description": "A set of reusable components created through the development of Onepercent projects",
5
5
  "repository": "git@github.com:onepercentio/one-ui.git",
6
6
  "author": "Murilo Oliveira de Araujo <murilo.araujo@onepercent.io>",
@@ -47,6 +47,7 @@
47
47
  "crypto-browserify": "^3.12.0",
48
48
  "css-loader": "^5",
49
49
  "cypress": "^12.17.2",
50
+ "esbuild-loader": "^4.0.2",
50
51
  "firebase": "^9.8.1",
51
52
  "firebase-admin": "^10.2.0",
52
53
  "google-libphonenumber": "^3.2.33",
@@ -102,7 +103,9 @@
102
103
  "prebuild": "rm -rf ./dist",
103
104
  "build": "babel src --ignore \"**/*.e2e.ts,**/*.test.ts,**/*.test.tsx,**/*.stories.tsx\" --out-dir dist --extensions \".ts,.tsx\" --copy-files --no-copy-ignored --config-file=./.prod.babelrc",
104
105
  "postbuild": "tsc",
106
+ "copy-css": "cpy --cwd=\"src\" \"**/*.{scss,svg}\" \"../dist\" --parents",
105
107
  "dev:ts": "tsc --watch",
108
+ "dev:vite": "tsc -p ./tsconfig.vite.json --watch",
106
109
  "dev:ai": "tsc --watch --project ./tsconfig-ai.json",
107
110
  "dev": "babel src --ignore \"**/*.e2e.ts,**/*.test.ts,**/*.test.tsx,**/*.stories.tsx\" --out-dir dist --extensions \".ts,.tsx\" --copy-files --no-copy-ignored --config-file=./.prod.babelrc -w",
108
111
  "test:watch": "jest --watchAll --coverage",
@@ -0,0 +1,109 @@
1
+ {
2
+ "compilerOptions": {
3
+ /* Visit https://aka.ms/tsconfig.json to read more about this file */
4
+
5
+ /* Projects */
6
+ // "incremental": true, /* Enable incremental compilation */
7
+ // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */
8
+ // "tsBuildInfoFile": "./", /* Specify the folder for .tsbuildinfo incremental compilation files. */
9
+ // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects */
10
+ // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */
11
+ // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */
12
+
13
+ /* Language and Environment */
14
+ "target": "ES2015" /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */,
15
+ "lib": [
16
+ "DOM",
17
+ "ES2015"
18
+ ] /* Specify a set of bundled library declaration files that describe the target runtime environment. */,
19
+ "jsx": "react" /* Specify what JSX code is generated. */,
20
+ // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */
21
+ // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
22
+ // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h' */
23
+ // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */
24
+ // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using `jsx: react-jsx*`.` */
25
+ // "reactNamespace": "", /* Specify the object invoked for `createElement`. This only applies when targeting `react` JSX emit. */
26
+ // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */
27
+ // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */
28
+
29
+ /* Modules */
30
+ "module": "ESNext" /* Specify what module code is generated. */,
31
+ "moduleResolution": "Node",
32
+ "skipDefaultLibCheck": true,
33
+ // "emitDeclarationOnly": true,
34
+ "rootDir": "./src" /* Specify the root folder within your source files. */,
35
+ // "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */
36
+ // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */
37
+ // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
38
+ // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
39
+ // "typeRoots": [], /* Specify multiple folders that act like `./node_modules/@types`. */
40
+ // "types": [], /* Specify type package names to be included without being referenced in a source file. */
41
+ // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
42
+ // "resolveJsonModule": true, /* Enable importing .json files */
43
+ // "noResolve": true, /* Disallow `import`s, `require`s or `<reference>`s from expanding the number of files TypeScript should add to a project. */
44
+
45
+ /* JavaScript Support */
46
+ // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */
47
+ // "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */
48
+ // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from `node_modules`. Only applicable with `allowJs`. */
49
+
50
+ /* Emit */
51
+ "declaration": true /* Generate .d.ts files from TypeScript and JavaScript files in your project. */,
52
+ // "declarationMap": true, /* Create sourcemaps for d.ts files. */
53
+ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */
54
+ "sourceMap": true /* Create source map files for emitted JavaScript files. */,
55
+ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If `declaration` is true, also designates a file that bundles all .d.ts output. */
56
+ "outDir": "./dist" /* Specify an output folder for all emitted files. */,
57
+ // "removeComments": true, /* Disable emitting comments. */
58
+ // "noEmit": true, /* Disable emitting files from a compilation. */
59
+ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */
60
+ // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types */
61
+ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */
62
+ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */
63
+ // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
64
+ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */
65
+ // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */
66
+ // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */
67
+ // "newLine": "crlf", /* Set the newline character for emitting files. */
68
+ // "stripInternal": true, /* Disable emitting declarations that have `@internal` in their JSDoc comments. */
69
+ // "noEmitHelpers": true, /* Disable generating custom helper functions like `__extends` in compiled output. */
70
+ // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */
71
+ // "preserveConstEnums": true, /* Disable erasing `const enum` declarations in generated code. */
72
+ // "declarationDir": "./", /* Specify the output directory for generated declaration files. */
73
+ // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */
74
+
75
+ /* Interop Constraints */
76
+ "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */
77
+ // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */
78
+ "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */,
79
+ // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */
80
+ "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */,
81
+
82
+ /* Type Checking */
83
+ "strict": true /* Enable all strict type-checking options. */,
84
+ // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied `any` type.. */
85
+ // "strictNullChecks": true, /* When type checking, take into account `null` and `undefined`. */
86
+ // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
87
+ // "strictBindCallApply": true, /* Check that the arguments for `bind`, `call`, and `apply` methods match the original function. */
88
+ // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */
89
+ // "noImplicitThis": true, /* Enable error reporting when `this` is given the type `any`. */
90
+ // "useUnknownInCatchVariables": true, /* Type catch clause variables as 'unknown' instead of 'any'. */
91
+ // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */
92
+ // "noUnusedLocals": true, /* Enable error reporting when a local variables aren't read. */
93
+ // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read */
94
+ // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */
95
+ // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */
96
+ // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */
97
+ // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */
98
+ // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */
99
+ // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type */
100
+ // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */
101
+ // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */
102
+
103
+ /* Completeness */
104
+ // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
105
+ "skipLibCheck": true, /* Skip type checking all .d.ts files. */
106
+ },
107
+ "exclude": ["cypress", "dist", "node_modules", "**/*.stories.tsx"],
108
+ "include": ["src", "cypress"]
109
+ }