@amboss/design-system 1.21.0 → 1.21.1

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.
@@ -44,7 +44,7 @@ const StyledContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "pr
44
44
  containerHeight,
45
45
  isClosing,
46
46
  dragOffset = 0,
47
- prevVisibleState
47
+ prevContainerHeight
48
48
  } = _ref;
49
49
  let animation;
50
50
  if (containerHeight) {
@@ -58,7 +58,7 @@ const StyledContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "pr
58
58
  });
59
59
  const slideIn = keyframes({
60
60
  from: {
61
- transform: `translateY(${containerHeight}px)`
61
+ transform: `translateY(${containerHeight - prevContainerHeight}px)`
62
62
  },
63
63
  to: {
64
64
  transform: `translateY(0px)`
@@ -66,7 +66,7 @@ const StyledContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "pr
66
66
  });
67
67
  if (isClosing) {
68
68
  animation = `${ANIMATION_DURATION_EXIT}ms ease-out forwards ${slideOut}`;
69
- } else if (!prevVisibleState) {
69
+ } else {
70
70
  // set entry animation only for the first time after sheet is visible
71
71
  animation = `${ANIMATION_DURATION_ENTRY}ms ease-out forwards ${slideIn}`;
72
72
  }
@@ -86,7 +86,7 @@ const StyledContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "pr
86
86
  borderBottomRightRadius: 0
87
87
  }
88
88
  };
89
- }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1RXdCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2VmlzaWJsZVN0YXRlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgY29udGFpbmVySGVpZ2h0LCBpc0Nsb3NpbmcsIGRyYWdPZmZzZXQgPSAwLCBwcmV2VmlzaWJsZVN0YXRlIH0pID0+IHtcbiAgICBsZXQgYW5pbWF0aW9uO1xuICAgIGlmIChjb250YWluZXJIZWlnaHQpIHtcbiAgICAgIGNvbnN0IHNsaWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtkcmFnT2Zmc2V0fXB4KWAsXG4gICAgICAgIH0sXG4gICAgICAgIHRvOiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke2NvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBjb25zdCBzbGlkZUluID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgICAgdG86IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKDBweClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VYSVR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtzbGlkZU91dH1gO1xuICAgICAgfSBlbHNlIGlmICghcHJldlZpc2libGVTdGF0ZSkge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgaXNDbG9zaW5nIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb24gPSBpc0Nsb3NpbmdcbiAgICAgID8gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtmYWRlT3V0fWBcbiAgICAgIDogYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgJHtcbiAgICAgICAgICBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgLSBBTklNQVRJT05fRFVSQVRJT05fQ09OVEVOVFxuICAgICAgICB9bXMgZm9yd2FyZHMgJHtmYWRlSW59YDtcblxuICAgIHJldHVybiB7XG4gICAgICBvdmVyZmxvdzogXCJhdXRvXCIsXG4gICAgICBtYXhIZWlnaHQ6IGAke01BWF9IRUlHSFRfUEVSQ0VOVH12aGAsXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICAgIG9wYWNpdHk6IDAsXG4gICAgICBhbmltYXRpb24sXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRIYW5kbGVDb250YWluZXJQcm9wcyA9IHtcbiAgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQ/OiBib29sZWFuO1xufTtcbmNvbnN0IFN0eWxlZEhhbmRsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQgfSkgPT4gKHtcbiAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzfSAwYCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIixcblxuICAgIC4uLihpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCAmJiB7XG4gICAgICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb24uYSxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEhhbmRsZSA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgd2lkdGg6IFwiODBweFwiLFxuICBoZWlnaHQ6IFwiNHB4XCIsXG4gIGJvcmRlclJhZGl1czogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzLFxuICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnksXG59KSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBTaGVldCh7XG4gIGlkLFxuICBjaGlsZHJlbixcbiAgaXNWaXNpYmxlLFxuICBvbkNsb3NlLFxuICBvblVubW91bnQsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrID0gdHJ1ZSxcbiAgZGlzYWJsZUluaXRpYWxGb2N1cyxcbiAgZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNoZWV0UHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBbaXNDbG9zaW5nLCBzZXRDbG9zaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2NvbnRhaW5lckhlaWdodCwgc2V0Q29udGFpbmVySGVpZ2h0XSA9IHVzZVN0YXRlKDApO1xuICBjb25zdCBbaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQsIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZF0gPVxuICAgIHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBjb250ZW50Q29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBwcmV2VmlzaWJsZVN0YXRlID0gdXNlUmVmKGlzVmlzaWJsZSk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ1N0YXJ0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICBpZiAoY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMCkge1xuICAgICAgICAvLyBSZW1vdmUgZXhpc3RpbmcgYW5pbWF0aW9uLCBvdGhlcndpc2UgdHJhbnNmb3JtIGRvZXNuJ3Qgd29ya1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS5hbmltYXRpb24gPSBcIm5vbmVcIjtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNpdGlvbiA9IFwidHJhbnNmb3JtIDAuMXMgZWFzZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZyA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgJiZcbiAgICAgICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwICYmXG4gICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0IDwgY29udGFpbmVyQ3VycmVudEhlaWdodFxuICAgICAgICApIHtcbiAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke29mZnNldEZyb21TdGFydH1weClgO1xuICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IG9mZnNldEZyb21TdGFydDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdFbmQgPSB1c2VDYWxsYmFjayhcbiAgICAoXywgb2Zmc2V0RnJvbVN0YXJ0KSA9PiB7XG4gICAgICBjb25zdCBjb250YWluZXJDdXJyZW50SGVpZ2h0ID1cbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgLy8gQ2xvc2Ugc2hlZXQgb25seSB3aGVuIGRyYWcgZGlzdGFuY2UgaXMgYSBxdWFydGVyIG9mIGNvbnRhaW5lciBoZWlnaHRcbiAgICAgIGNvbnN0IG1pbkRyYWdEaXN0YW5jZSA9XG4gICAgICAgIGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPCBNSU5fRFJBR19ESVNUQU5DRSAqIDJcbiAgICAgICAgICA/IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgLyA0XG4gICAgICAgICAgOiBNSU5fRFJBR19ESVNUQU5DRTtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIG9mZnNldEZyb21TdGFydCA+PSBtaW5EcmFnRGlzdGFuY2UgJiZcbiAgICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDBcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBvbkNsb3NlXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdDYW5jZWwgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChpc0RyYWdTdGFydGVkLmN1cnJlbnQpIHtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgIH1cbiAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmXSk7XG5cbiAgdXNlRHJhZ0Rvd24oe1xuICAgIHJlZjogY29udGFpbmVyUmVmLFxuICAgIGlzVmlzaWJsZTogaXNWaXNpYmxlICYmICFpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCxcbiAgICBvbkRyYWdTdGFydDogaGFuZGxlRHJhZ1N0YXJ0LFxuICAgIG9uRHJhZzogaGFuZGxlRHJhZyxcbiAgICBvbkRyYWdFbmQ6IGhhbmRsZURyYWdFbmQsXG4gICAgb25EcmFnQ2FuY2VsOiBoYW5kbGVEcmFnQ2FuY2VsLFxuICB9KTtcblxuICBjb25zdCBoYW5kbGVFeGl0QW5pbWF0aW9uRW5kID0gKCkgPT4ge1xuICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgIHNldENsb3NpbmcoZmFsc2UpO1xuICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcblxuICAgICAgaWYgKG9uVW5tb3VudCkge1xuICAgICAgICBvblVubW91bnQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbCA9ICgpID0+IHtcbiAgICBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQoXG4gICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCAhPT0gMFxuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2hvd1NoZWV0ID0gKGlzVmlzaWJsZSB8fCBpc0Nsb3NpbmcpICYmICEoaXNWaXNpYmxlICYmIGlzQ2xvc2luZyk7XG5cbiAgaWYgKCFzaG93U2hlZXQpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGdsb2JhbFN0eWxlcyA9IHtcbiAgICBodG1sOiB7XG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgfSxcbiAgfTtcblxuICBjb25zdCBpZFByb3AgPSBpZFxuICAgID8ge1xuICAgICAgICBpZCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG4gIGNvbnN0IHNoZWV0RWxtID0gKFxuICAgIDw+XG4gICAgICA8R2xvYmFsIHN0eWxlcz17Z2xvYmFsU3R5bGVzfSAvPlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgZm9jdXNUcmFwT3B0aW9ucz17e1xuICAgICAgICAgIGNsaWNrT3V0c2lkZURlYWN0aXZhdGVzOiBkaXNtaXNzT25PdXRzaWRlQ2xpY2ssXG4gICAgICAgICAgZXNjYXBlRGVhY3RpdmF0ZXM6IHRydWUsXG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBpbml0aWFsRm9jdXM6ICgpID0+ICFkaXNhYmxlSW5pdGlhbEZvY3VzLFxuICAgICAgICAgIHJldHVybkZvY3VzT25EZWFjdGl2YXRlOiAhZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICAgICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIlNoZWV0XCJdYCxcbiAgICAgICAgICBvblBvc3REZWFjdGl2YXRlOiAoKSA9PiB7XG4gICAgICAgICAgICBvbkNsb3NlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZENvbnRhaW5lclxuICAgICAgICAgIHsuLi5pZFByb3B9IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICAgICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgICAgZGF0YS1kcy1pZD1cIlNoZWV0XCJcbiAgICAgICAgICBpc1Zpc2libGU9e2lzVmlzaWJsZX1cbiAgICAgICAgICBjb250YWluZXJIZWlnaHQ9e2NvbnRhaW5lckhlaWdodH1cbiAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgICBkcmFnT2Zmc2V0PXtkcmFnT2Zmc2V0LmN1cnJlbnR9XG4gICAgICAgICAgcHJldlZpc2libGVTdGF0ZT17cHJldlZpc2libGVTdGF0ZS5jdXJyZW50fVxuICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXtoYW5kbGVFeGl0QW5pbWF0aW9uRW5kfVxuICAgICAgICA+XG4gICAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgICAgPFN0eWxlZEhhbmRsZUNvbnRhaW5lclxuICAgICAgICAgICAgICBpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZD17aXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWR9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxTdHlsZWRIYW5kbGUgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkSGFuZGxlQ29udGFpbmVyPlxuICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRDb250YWluZXJcbiAgICAgICAgICAgICAgaXNDbG9zaW5nPXtpc0Nsb3Npbmd9XG4gICAgICAgICAgICAgIHJlZj17Y29udGVudENvbnRhaW5lclJlZn1cbiAgICAgICAgICAgICAgb25TY3JvbGw9e2hhbmRsZUNvbnRlbnRDb250YWluZXJTY3JvbGx9XG4gICAgICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXsoZXZ0KSA9PiBldnQuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudENvbnRhaW5lcj5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC8+XG4gICk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChzaGVldEVsbSwgcG9ydGFsQ29udGFpbmVyIHx8IGRvY3VtZW50LmJvZHkpO1xufVxuIl19 */");
89
+ }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1RXdCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2Q29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdjxTdHlsZWRDb250YWluZXJQcm9wcz4oXG4gICh7XG4gICAgdGhlbWUsXG4gICAgY29udGFpbmVySGVpZ2h0LFxuICAgIGlzQ2xvc2luZyxcbiAgICBkcmFnT2Zmc2V0ID0gMCxcbiAgICBwcmV2Q29udGFpbmVySGVpZ2h0LFxuICB9KSA9PiB7XG4gICAgbGV0IGFuaW1hdGlvbjtcbiAgICBpZiAoY29udGFpbmVySGVpZ2h0KSB7XG4gICAgICBjb25zdCBzbGlkZU91dCA9IGtleWZyYW1lcyh7XG4gICAgICAgIGZyb206IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKCR7ZHJhZ09mZnNldH1weClgLFxuICAgICAgICB9LFxuICAgICAgICB0bzoge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgY29uc3Qgc2xpZGVJbiA9IGtleWZyYW1lcyh7XG4gICAgICAgIGZyb206IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKCR7Y29udGFpbmVySGVpZ2h0IC0gcHJldkNvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgICB0bzoge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoMHB4KWAsXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgaWYgKGlzQ2xvc2luZykge1xuICAgICAgICBhbmltYXRpb24gPSBgJHtBTklNQVRJT05fRFVSQVRJT05fRVhJVH1tcyBlYXNlLW91dCBmb3J3YXJkcyAke3NsaWRlT3V0fWA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgdGhlbWUsIGlzQ2xvc2luZyB9KSA9PiB7XG4gICAgY29uc3QgYW5pbWF0aW9uID0gaXNDbG9zaW5nXG4gICAgICA/IGAke0FOSU1BVElPTl9EVVJBVElPTl9DT05URU5UfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7ZmFkZU91dH1gXG4gICAgICA6IGAke0FOSU1BVElPTl9EVVJBVElPTl9DT05URU5UfW1zIGVhc2Utb3V0ICR7XG4gICAgICAgICAgQU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZIC0gQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlRcbiAgICAgICAgfW1zIGZvcndhcmRzICR7ZmFkZUlufWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgb3ZlcmZsb3c6IFwiYXV0b1wiLFxuICAgICAgbWF4SGVpZ2h0OiBgJHtNQVhfSEVJR0hUX1BFUkNFTlR9dmhgLFxuICAgICAgYm94U2l6aW5nOiBcImJvcmRlci1ib3hcIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5iYWNrZ3JvdW5kLmVsZXZhdGVkLmRlZmF1bHQsXG4gICAgICBvcGFjaXR5OiAwLFxuICAgICAgYW5pbWF0aW9uLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHMgPSB7XG4gIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkPzogYm9vbGVhbjtcbn07XG5jb25zdCBTdHlsZWRIYW5kbGVDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZEhhbmRsZUNvbnRhaW5lclByb3BzPihcbiAgKHsgdGhlbWUsIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkIH0pID0+ICh7XG4gICAgcGFkZGluZzogYCR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54c30gMGAsXG4gICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5lbGV2YXRlZC5kZWZhdWx0LFxuXG4gICAgLi4uKGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkICYmIHtcbiAgICAgIGJveFNoYWRvdzogdGhlbWUudmFsdWVzLmVsZXZhdGlvbi5hLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSGFuZGxlID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICB3aWR0aDogXCI4MHB4XCIsXG4gIGhlaWdodDogXCI0cHhcIixcbiAgYm9yZGVyUmFkaXVzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMueHMsXG4gIGJhY2tncm91bmRDb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIuc2Vjb25kYXJ5LFxufSkpO1xuXG5leHBvcnQgZnVuY3Rpb24gU2hlZXQoe1xuICBpZCxcbiAgY2hpbGRyZW4sXG4gIGlzVmlzaWJsZSxcbiAgb25DbG9zZSxcbiAgb25Vbm1vdW50LFxuICBwb3J0YWxDb250YWluZXIsXG4gIGRpc21pc3NPbk91dHNpZGVDbGljayA9IHRydWUsXG4gIGRpc2FibGVJbml0aWFsRm9jdXMsXG4gIGRpc2FibGVSZXR1cm5Gb2N1c1RvVHJpZ2dlcixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBTaGVldFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgW2lzQ2xvc2luZywgc2V0Q2xvc2luZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtjb250YWluZXJIZWlnaHQsIHNldENvbnRhaW5lckhlaWdodF0gPSB1c2VTdGF0ZSgwKTtcbiAgY29uc3QgW2lzQ29udGVudENvbnRhaW5lclNjcm9sbGVkLCBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWRdID1cbiAgICB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgY29udGVudENvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgcHJldlZpc2libGVTdGF0ZSA9IHVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IHByZXZDb250YWluZXJIZWlnaHQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBwcmV2Q29udGFpbmVySGVpZ2h0LmN1cnJlbnQgPSBjb250YWluZXJIZWlnaHQ7XG4gIH0sIFtjb250YWluZXJIZWlnaHRdKTtcblxuICBjb25zdCBoYW5kbGVEcmFnU3RhcnQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwKSB7XG4gICAgICAgIC8vIFJlbW92ZSBleGlzdGluZyBhbmltYXRpb24sIG90aGVyd2lzZSB0cmFuc2Zvcm0gZG9lc24ndCB3b3JrXG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLmFuaW1hdGlvbiA9IFwibm9uZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2l0aW9uID0gXCJ0cmFuc2Zvcm0gMC4xcyBlYXNlXCI7XG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLnRyYW5zZm9ybSA9IFwidHJhbnNsYXRlWSgwcHgpXCI7XG4gICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH0sIFtjb250YWluZXJSZWYsIGNvbnRlbnRDb250YWluZXJSZWZdKTtcblxuICBjb25zdCBoYW5kbGVEcmFnID0gdXNlQ2FsbGJhY2soXG4gICAgKF8sIG9mZnNldEZyb21TdGFydCkgPT4ge1xuICAgICAgY29uc3QgY29udGFpbmVyQ3VycmVudEhlaWdodCA9XG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCAmJlxuICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDAgJiZcbiAgICAgICAgICBvZmZzZXRGcm9tU3RhcnQgPCBjb250YWluZXJDdXJyZW50SGVpZ2h0XG4gICAgICAgICkge1xuICAgICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVZKCR7b2Zmc2V0RnJvbVN0YXJ0fXB4KWA7XG4gICAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gb2Zmc2V0RnJvbVN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtjb250YWluZXJSZWYsIGNvbnRlbnRDb250YWluZXJSZWZdXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ0VuZCA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG4gICAgICAvLyBDbG9zZSBzaGVldCBvbmx5IHdoZW4gZHJhZyBkaXN0YW5jZSBpcyBhIHF1YXJ0ZXIgb2YgY29udGFpbmVyIGhlaWdodFxuICAgICAgY29uc3QgbWluRHJhZ0Rpc3RhbmNlID1cbiAgICAgICAgY29udGFpbmVyQ3VycmVudEhlaWdodCA8IE1JTl9EUkFHX0RJU1RBTkNFICogMlxuICAgICAgICAgID8gY29udGFpbmVyQ3VycmVudEhlaWdodCAvIDRcbiAgICAgICAgICA6IE1JTl9EUkFHX0RJU1RBTkNFO1xuXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICBpZiAoaXNEcmFnU3RhcnRlZC5jdXJyZW50KSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0ID49IG1pbkRyYWdEaXN0YW5jZSAmJlxuICAgICAgICAgICAgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMFxuICAgICAgICAgICkge1xuICAgICAgICAgICAgb25DbG9zZSgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaXNEcmFnU3RhcnRlZC5jdXJyZW50ID0gZmFsc2U7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtjb250YWluZXJSZWYsIG9uQ2xvc2VdXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ0NhbmNlbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgfVxuICAgICAgaXNEcmFnU3RhcnRlZC5jdXJyZW50ID0gZmFsc2U7XG4gICAgfSk7XG4gIH0sIFtjb250YWluZXJSZWZdKTtcblxuICB1c2VEcmFnRG93bih7XG4gICAgcmVmOiBjb250YWluZXJSZWYsXG4gICAgaXNWaXNpYmxlOiBpc1Zpc2libGUgJiYgIWlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkLFxuICAgIG9uRHJhZ1N0YXJ0OiBoYW5kbGVEcmFnU3RhcnQsXG4gICAgb25EcmFnOiBoYW5kbGVEcmFnLFxuICAgIG9uRHJhZ0VuZDogaGFuZGxlRHJhZ0VuZCxcbiAgICBvbkRyYWdDYW5jZWw6IGhhbmRsZURyYWdDYW5jZWwsXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUV4aXRBbmltYXRpb25FbmQgPSAoKSA9PiB7XG4gICAgaWYgKGlzQ2xvc2luZykge1xuICAgICAgc2V0Q2xvc2luZyhmYWxzZSk7XG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoMCk7XG4gICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuXG4gICAgICBpZiAob25Vbm1vdW50KSB7XG4gICAgICAgIG9uVW5tb3VudCgpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVDb250ZW50Q29udGFpbmVyU2Nyb2xsID0gKCkgPT4ge1xuICAgIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZChcbiAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudCAmJiBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wICE9PSAwXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBzaG93U2hlZXQgPSAoaXNWaXNpYmxlIHx8IGlzQ2xvc2luZykgJiYgIShpc1Zpc2libGUgJiYgaXNDbG9zaW5nKTtcblxuICBpZiAoIXNob3dTaGVldCkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgZ2xvYmFsU3R5bGVzID0ge1xuICAgIGh0bWw6IHtcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICB9LFxuICB9O1xuXG4gIGNvbnN0IGlkUHJvcCA9IGlkXG4gICAgPyB7XG4gICAgICAgIGlkLFxuICAgICAgfVxuICAgIDoge307XG5cbiAgY29uc3Qgc2hlZXRFbG0gPSAoXG4gICAgPD5cbiAgICAgIDxHbG9iYWwgc3R5bGVzPXtnbG9iYWxTdHlsZXN9IC8+XG4gICAgICA8Rm9jdXNUcmFwV3JhcHBlclxuICAgICAgICBmb2N1c1RyYXBPcHRpb25zPXt7XG4gICAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGRpc21pc3NPbk91dHNpZGVDbGljayxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogdHJ1ZSxcbiAgICAgICAgICBwcmV2ZW50U2Nyb2xsOiB0cnVlLFxuICAgICAgICAgIGluaXRpYWxGb2N1czogKCkgPT4gIWRpc2FibGVJbml0aWFsRm9jdXMsXG4gICAgICAgICAgcmV0dXJuRm9jdXNPbkRlYWN0aXZhdGU6ICFkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXIsXG4gICAgICAgICAgZmFsbGJhY2tGb2N1czogYFtkYXRhLWRzLWlkPVwiU2hlZXRcIl1gLFxuICAgICAgICAgIG9uUG9zdERlYWN0aXZhdGU6ICgpID0+IHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9LFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8U3R5bGVkQ29udGFpbmVyXG4gICAgICAgICAgey4uLmlkUHJvcH0gLy8gZXNsaW50LWRpc2FibGUtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiU2hlZXRcIlxuICAgICAgICAgIGlzVmlzaWJsZT17aXNWaXNpYmxlfVxuICAgICAgICAgIGNvbnRhaW5lckhlaWdodD17Y29udGFpbmVySGVpZ2h0fVxuICAgICAgICAgIGlzQ2xvc2luZz17aXNDbG9zaW5nfVxuICAgICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICAgIGRyYWdPZmZzZXQ9e2RyYWdPZmZzZXQuY3VycmVudH1cbiAgICAgICAgICBwcmV2Q29udGFpbmVySGVpZ2h0PXtwcmV2Q29udGFpbmVySGVpZ2h0LmN1cnJlbnR9XG4gICAgICAgICAgb25BbmltYXRpb25FbmQ9e2hhbmRsZUV4aXRBbmltYXRpb25FbmR9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8U3R5bGVkSGFuZGxlQ29udGFpbmVyXG4gICAgICAgICAgICAgIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkPXtpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPFN0eWxlZEhhbmRsZSAvPlxuICAgICAgICAgICAgPC9TdHlsZWRIYW5kbGVDb250YWluZXI+XG4gICAgICAgICAgICA8U3R5bGVkQ29udGVudENvbnRhaW5lclxuICAgICAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICAgICAgcmVmPXtjb250ZW50Q29udGFpbmVyUmVmfVxuICAgICAgICAgICAgICBvblNjcm9sbD17aGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbH1cbiAgICAgICAgICAgICAgb25BbmltYXRpb25FbmQ9eyhldnQpID0+IGV2dC5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC9TdHlsZWRDb250ZW50Q29udGFpbmVyPlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZENvbnRhaW5lcj5cbiAgICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgICA8Lz5cbiAgKTtcblxuICByZXR1cm4gY3JlYXRlUG9ydGFsKHNoZWV0RWxtLCBwb3J0YWxDb250YWluZXIgfHwgZG9jdW1lbnQuYm9keSk7XG59XG4iXX0= */");
90
90
  const StyledContentContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
91
91
  target: "e1olca0n2"
92
92
  } : {
@@ -94,6 +94,7 @@ const StyledContentContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV
94
94
  label: "StyledContentContainer"
95
95
  })(_ref2 => {
96
96
  let {
97
+ theme,
97
98
  isClosing
98
99
  } = _ref2;
99
100
  const animation = isClosing ? `${ANIMATION_DURATION_CONTENT}ms ease-out forwards ${fadeOut}` : `${ANIMATION_DURATION_CONTENT}ms ease-out ${ANIMATION_DURATION_ENTRY - ANIMATION_DURATION_CONTENT}ms forwards ${fadeIn}`;
@@ -102,10 +103,11 @@ const StyledContentContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV
102
103
  maxHeight: `${MAX_HEIGHT_PERCENT}vh`,
103
104
  boxSizing: "border-box",
104
105
  overscrollBehavior: "none",
106
+ backgroundColor: theme.values.color.background.elevated.default,
105
107
  opacity: 0,
106
108
  animation
107
109
  };
108
- }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEySCtCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2VmlzaWJsZVN0YXRlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgY29udGFpbmVySGVpZ2h0LCBpc0Nsb3NpbmcsIGRyYWdPZmZzZXQgPSAwLCBwcmV2VmlzaWJsZVN0YXRlIH0pID0+IHtcbiAgICBsZXQgYW5pbWF0aW9uO1xuICAgIGlmIChjb250YWluZXJIZWlnaHQpIHtcbiAgICAgIGNvbnN0IHNsaWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtkcmFnT2Zmc2V0fXB4KWAsXG4gICAgICAgIH0sXG4gICAgICAgIHRvOiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke2NvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBjb25zdCBzbGlkZUluID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgICAgdG86IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKDBweClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VYSVR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtzbGlkZU91dH1gO1xuICAgICAgfSBlbHNlIGlmICghcHJldlZpc2libGVTdGF0ZSkge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgaXNDbG9zaW5nIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb24gPSBpc0Nsb3NpbmdcbiAgICAgID8gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtmYWRlT3V0fWBcbiAgICAgIDogYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgJHtcbiAgICAgICAgICBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgLSBBTklNQVRJT05fRFVSQVRJT05fQ09OVEVOVFxuICAgICAgICB9bXMgZm9yd2FyZHMgJHtmYWRlSW59YDtcblxuICAgIHJldHVybiB7XG4gICAgICBvdmVyZmxvdzogXCJhdXRvXCIsXG4gICAgICBtYXhIZWlnaHQ6IGAke01BWF9IRUlHSFRfUEVSQ0VOVH12aGAsXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICAgIG9wYWNpdHk6IDAsXG4gICAgICBhbmltYXRpb24sXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRIYW5kbGVDb250YWluZXJQcm9wcyA9IHtcbiAgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQ/OiBib29sZWFuO1xufTtcbmNvbnN0IFN0eWxlZEhhbmRsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQgfSkgPT4gKHtcbiAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzfSAwYCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIixcblxuICAgIC4uLihpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCAmJiB7XG4gICAgICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb24uYSxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEhhbmRsZSA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgd2lkdGg6IFwiODBweFwiLFxuICBoZWlnaHQ6IFwiNHB4XCIsXG4gIGJvcmRlclJhZGl1czogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzLFxuICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnksXG59KSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBTaGVldCh7XG4gIGlkLFxuICBjaGlsZHJlbixcbiAgaXNWaXNpYmxlLFxuICBvbkNsb3NlLFxuICBvblVubW91bnQsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrID0gdHJ1ZSxcbiAgZGlzYWJsZUluaXRpYWxGb2N1cyxcbiAgZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNoZWV0UHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBbaXNDbG9zaW5nLCBzZXRDbG9zaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2NvbnRhaW5lckhlaWdodCwgc2V0Q29udGFpbmVySGVpZ2h0XSA9IHVzZVN0YXRlKDApO1xuICBjb25zdCBbaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQsIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZF0gPVxuICAgIHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBjb250ZW50Q29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBwcmV2VmlzaWJsZVN0YXRlID0gdXNlUmVmKGlzVmlzaWJsZSk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ1N0YXJ0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICBpZiAoY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMCkge1xuICAgICAgICAvLyBSZW1vdmUgZXhpc3RpbmcgYW5pbWF0aW9uLCBvdGhlcndpc2UgdHJhbnNmb3JtIGRvZXNuJ3Qgd29ya1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS5hbmltYXRpb24gPSBcIm5vbmVcIjtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNpdGlvbiA9IFwidHJhbnNmb3JtIDAuMXMgZWFzZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZyA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgJiZcbiAgICAgICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwICYmXG4gICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0IDwgY29udGFpbmVyQ3VycmVudEhlaWdodFxuICAgICAgICApIHtcbiAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke29mZnNldEZyb21TdGFydH1weClgO1xuICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IG9mZnNldEZyb21TdGFydDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdFbmQgPSB1c2VDYWxsYmFjayhcbiAgICAoXywgb2Zmc2V0RnJvbVN0YXJ0KSA9PiB7XG4gICAgICBjb25zdCBjb250YWluZXJDdXJyZW50SGVpZ2h0ID1cbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgLy8gQ2xvc2Ugc2hlZXQgb25seSB3aGVuIGRyYWcgZGlzdGFuY2UgaXMgYSBxdWFydGVyIG9mIGNvbnRhaW5lciBoZWlnaHRcbiAgICAgIGNvbnN0IG1pbkRyYWdEaXN0YW5jZSA9XG4gICAgICAgIGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPCBNSU5fRFJBR19ESVNUQU5DRSAqIDJcbiAgICAgICAgICA/IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgLyA0XG4gICAgICAgICAgOiBNSU5fRFJBR19ESVNUQU5DRTtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIG9mZnNldEZyb21TdGFydCA+PSBtaW5EcmFnRGlzdGFuY2UgJiZcbiAgICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDBcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBvbkNsb3NlXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdDYW5jZWwgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChpc0RyYWdTdGFydGVkLmN1cnJlbnQpIHtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgIH1cbiAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmXSk7XG5cbiAgdXNlRHJhZ0Rvd24oe1xuICAgIHJlZjogY29udGFpbmVyUmVmLFxuICAgIGlzVmlzaWJsZTogaXNWaXNpYmxlICYmICFpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCxcbiAgICBvbkRyYWdTdGFydDogaGFuZGxlRHJhZ1N0YXJ0LFxuICAgIG9uRHJhZzogaGFuZGxlRHJhZyxcbiAgICBvbkRyYWdFbmQ6IGhhbmRsZURyYWdFbmQsXG4gICAgb25EcmFnQ2FuY2VsOiBoYW5kbGVEcmFnQ2FuY2VsLFxuICB9KTtcblxuICBjb25zdCBoYW5kbGVFeGl0QW5pbWF0aW9uRW5kID0gKCkgPT4ge1xuICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgIHNldENsb3NpbmcoZmFsc2UpO1xuICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcblxuICAgICAgaWYgKG9uVW5tb3VudCkge1xuICAgICAgICBvblVubW91bnQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbCA9ICgpID0+IHtcbiAgICBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQoXG4gICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCAhPT0gMFxuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2hvd1NoZWV0ID0gKGlzVmlzaWJsZSB8fCBpc0Nsb3NpbmcpICYmICEoaXNWaXNpYmxlICYmIGlzQ2xvc2luZyk7XG5cbiAgaWYgKCFzaG93U2hlZXQpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGdsb2JhbFN0eWxlcyA9IHtcbiAgICBodG1sOiB7XG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgfSxcbiAgfTtcblxuICBjb25zdCBpZFByb3AgPSBpZFxuICAgID8ge1xuICAgICAgICBpZCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG4gIGNvbnN0IHNoZWV0RWxtID0gKFxuICAgIDw+XG4gICAgICA8R2xvYmFsIHN0eWxlcz17Z2xvYmFsU3R5bGVzfSAvPlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgZm9jdXNUcmFwT3B0aW9ucz17e1xuICAgICAgICAgIGNsaWNrT3V0c2lkZURlYWN0aXZhdGVzOiBkaXNtaXNzT25PdXRzaWRlQ2xpY2ssXG4gICAgICAgICAgZXNjYXBlRGVhY3RpdmF0ZXM6IHRydWUsXG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBpbml0aWFsRm9jdXM6ICgpID0+ICFkaXNhYmxlSW5pdGlhbEZvY3VzLFxuICAgICAgICAgIHJldHVybkZvY3VzT25EZWFjdGl2YXRlOiAhZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICAgICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIlNoZWV0XCJdYCxcbiAgICAgICAgICBvblBvc3REZWFjdGl2YXRlOiAoKSA9PiB7XG4gICAgICAgICAgICBvbkNsb3NlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZENvbnRhaW5lclxuICAgICAgICAgIHsuLi5pZFByb3B9IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICAgICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgICAgZGF0YS1kcy1pZD1cIlNoZWV0XCJcbiAgICAgICAgICBpc1Zpc2libGU9e2lzVmlzaWJsZX1cbiAgICAgICAgICBjb250YWluZXJIZWlnaHQ9e2NvbnRhaW5lckhlaWdodH1cbiAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgICBkcmFnT2Zmc2V0PXtkcmFnT2Zmc2V0LmN1cnJlbnR9XG4gICAgICAgICAgcHJldlZpc2libGVTdGF0ZT17cHJldlZpc2libGVTdGF0ZS5jdXJyZW50fVxuICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXtoYW5kbGVFeGl0QW5pbWF0aW9uRW5kfVxuICAgICAgICA+XG4gICAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgICAgPFN0eWxlZEhhbmRsZUNvbnRhaW5lclxuICAgICAgICAgICAgICBpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZD17aXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWR9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxTdHlsZWRIYW5kbGUgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkSGFuZGxlQ29udGFpbmVyPlxuICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRDb250YWluZXJcbiAgICAgICAgICAgICAgaXNDbG9zaW5nPXtpc0Nsb3Npbmd9XG4gICAgICAgICAgICAgIHJlZj17Y29udGVudENvbnRhaW5lclJlZn1cbiAgICAgICAgICAgICAgb25TY3JvbGw9e2hhbmRsZUNvbnRlbnRDb250YWluZXJTY3JvbGx9XG4gICAgICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXsoZXZ0KSA9PiBldnQuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudENvbnRhaW5lcj5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC8+XG4gICk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChzaGVldEVsbSwgcG9ydGFsQ29udGFpbmVyIHx8IGRvY3VtZW50LmJvZHkpO1xufVxuIl19 */");
110
+ }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpSStCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2Q29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdjxTdHlsZWRDb250YWluZXJQcm9wcz4oXG4gICh7XG4gICAgdGhlbWUsXG4gICAgY29udGFpbmVySGVpZ2h0LFxuICAgIGlzQ2xvc2luZyxcbiAgICBkcmFnT2Zmc2V0ID0gMCxcbiAgICBwcmV2Q29udGFpbmVySGVpZ2h0LFxuICB9KSA9PiB7XG4gICAgbGV0IGFuaW1hdGlvbjtcbiAgICBpZiAoY29udGFpbmVySGVpZ2h0KSB7XG4gICAgICBjb25zdCBzbGlkZU91dCA9IGtleWZyYW1lcyh7XG4gICAgICAgIGZyb206IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKCR7ZHJhZ09mZnNldH1weClgLFxuICAgICAgICB9LFxuICAgICAgICB0bzoge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgY29uc3Qgc2xpZGVJbiA9IGtleWZyYW1lcyh7XG4gICAgICAgIGZyb206IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKCR7Y29udGFpbmVySGVpZ2h0IC0gcHJldkNvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgICB0bzoge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoMHB4KWAsXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgaWYgKGlzQ2xvc2luZykge1xuICAgICAgICBhbmltYXRpb24gPSBgJHtBTklNQVRJT05fRFVSQVRJT05fRVhJVH1tcyBlYXNlLW91dCBmb3J3YXJkcyAke3NsaWRlT3V0fWA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgdGhlbWUsIGlzQ2xvc2luZyB9KSA9PiB7XG4gICAgY29uc3QgYW5pbWF0aW9uID0gaXNDbG9zaW5nXG4gICAgICA/IGAke0FOSU1BVElPTl9EVVJBVElPTl9DT05URU5UfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7ZmFkZU91dH1gXG4gICAgICA6IGAke0FOSU1BVElPTl9EVVJBVElPTl9DT05URU5UfW1zIGVhc2Utb3V0ICR7XG4gICAgICAgICAgQU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZIC0gQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlRcbiAgICAgICAgfW1zIGZvcndhcmRzICR7ZmFkZUlufWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgb3ZlcmZsb3c6IFwiYXV0b1wiLFxuICAgICAgbWF4SGVpZ2h0OiBgJHtNQVhfSEVJR0hUX1BFUkNFTlR9dmhgLFxuICAgICAgYm94U2l6aW5nOiBcImJvcmRlci1ib3hcIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5iYWNrZ3JvdW5kLmVsZXZhdGVkLmRlZmF1bHQsXG4gICAgICBvcGFjaXR5OiAwLFxuICAgICAgYW5pbWF0aW9uLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHMgPSB7XG4gIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkPzogYm9vbGVhbjtcbn07XG5jb25zdCBTdHlsZWRIYW5kbGVDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZEhhbmRsZUNvbnRhaW5lclByb3BzPihcbiAgKHsgdGhlbWUsIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkIH0pID0+ICh7XG4gICAgcGFkZGluZzogYCR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54c30gMGAsXG4gICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5lbGV2YXRlZC5kZWZhdWx0LFxuXG4gICAgLi4uKGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkICYmIHtcbiAgICAgIGJveFNoYWRvdzogdGhlbWUudmFsdWVzLmVsZXZhdGlvbi5hLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSGFuZGxlID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICB3aWR0aDogXCI4MHB4XCIsXG4gIGhlaWdodDogXCI0cHhcIixcbiAgYm9yZGVyUmFkaXVzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMueHMsXG4gIGJhY2tncm91bmRDb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIuc2Vjb25kYXJ5LFxufSkpO1xuXG5leHBvcnQgZnVuY3Rpb24gU2hlZXQoe1xuICBpZCxcbiAgY2hpbGRyZW4sXG4gIGlzVmlzaWJsZSxcbiAgb25DbG9zZSxcbiAgb25Vbm1vdW50LFxuICBwb3J0YWxDb250YWluZXIsXG4gIGRpc21pc3NPbk91dHNpZGVDbGljayA9IHRydWUsXG4gIGRpc2FibGVJbml0aWFsRm9jdXMsXG4gIGRpc2FibGVSZXR1cm5Gb2N1c1RvVHJpZ2dlcixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBTaGVldFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgW2lzQ2xvc2luZywgc2V0Q2xvc2luZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtjb250YWluZXJIZWlnaHQsIHNldENvbnRhaW5lckhlaWdodF0gPSB1c2VTdGF0ZSgwKTtcbiAgY29uc3QgW2lzQ29udGVudENvbnRhaW5lclNjcm9sbGVkLCBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWRdID1cbiAgICB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgY29udGVudENvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgcHJldlZpc2libGVTdGF0ZSA9IHVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IHByZXZDb250YWluZXJIZWlnaHQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBwcmV2Q29udGFpbmVySGVpZ2h0LmN1cnJlbnQgPSBjb250YWluZXJIZWlnaHQ7XG4gIH0sIFtjb250YWluZXJIZWlnaHRdKTtcblxuICBjb25zdCBoYW5kbGVEcmFnU3RhcnQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwKSB7XG4gICAgICAgIC8vIFJlbW92ZSBleGlzdGluZyBhbmltYXRpb24sIG90aGVyd2lzZSB0cmFuc2Zvcm0gZG9lc24ndCB3b3JrXG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLmFuaW1hdGlvbiA9IFwibm9uZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2l0aW9uID0gXCJ0cmFuc2Zvcm0gMC4xcyBlYXNlXCI7XG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLnRyYW5zZm9ybSA9IFwidHJhbnNsYXRlWSgwcHgpXCI7XG4gICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH0sIFtjb250YWluZXJSZWYsIGNvbnRlbnRDb250YWluZXJSZWZdKTtcblxuICBjb25zdCBoYW5kbGVEcmFnID0gdXNlQ2FsbGJhY2soXG4gICAgKF8sIG9mZnNldEZyb21TdGFydCkgPT4ge1xuICAgICAgY29uc3QgY29udGFpbmVyQ3VycmVudEhlaWdodCA9XG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCAmJlxuICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDAgJiZcbiAgICAgICAgICBvZmZzZXRGcm9tU3RhcnQgPCBjb250YWluZXJDdXJyZW50SGVpZ2h0XG4gICAgICAgICkge1xuICAgICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVZKCR7b2Zmc2V0RnJvbVN0YXJ0fXB4KWA7XG4gICAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gb2Zmc2V0RnJvbVN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtjb250YWluZXJSZWYsIGNvbnRlbnRDb250YWluZXJSZWZdXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ0VuZCA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG4gICAgICAvLyBDbG9zZSBzaGVldCBvbmx5IHdoZW4gZHJhZyBkaXN0YW5jZSBpcyBhIHF1YXJ0ZXIgb2YgY29udGFpbmVyIGhlaWdodFxuICAgICAgY29uc3QgbWluRHJhZ0Rpc3RhbmNlID1cbiAgICAgICAgY29udGFpbmVyQ3VycmVudEhlaWdodCA8IE1JTl9EUkFHX0RJU1RBTkNFICogMlxuICAgICAgICAgID8gY29udGFpbmVyQ3VycmVudEhlaWdodCAvIDRcbiAgICAgICAgICA6IE1JTl9EUkFHX0RJU1RBTkNFO1xuXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICBpZiAoaXNEcmFnU3RhcnRlZC5jdXJyZW50KSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0ID49IG1pbkRyYWdEaXN0YW5jZSAmJlxuICAgICAgICAgICAgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMFxuICAgICAgICAgICkge1xuICAgICAgICAgICAgb25DbG9zZSgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaXNEcmFnU3RhcnRlZC5jdXJyZW50ID0gZmFsc2U7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtjb250YWluZXJSZWYsIG9uQ2xvc2VdXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ0NhbmNlbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgfVxuICAgICAgaXNEcmFnU3RhcnRlZC5jdXJyZW50ID0gZmFsc2U7XG4gICAgfSk7XG4gIH0sIFtjb250YWluZXJSZWZdKTtcblxuICB1c2VEcmFnRG93bih7XG4gICAgcmVmOiBjb250YWluZXJSZWYsXG4gICAgaXNWaXNpYmxlOiBpc1Zpc2libGUgJiYgIWlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkLFxuICAgIG9uRHJhZ1N0YXJ0OiBoYW5kbGVEcmFnU3RhcnQsXG4gICAgb25EcmFnOiBoYW5kbGVEcmFnLFxuICAgIG9uRHJhZ0VuZDogaGFuZGxlRHJhZ0VuZCxcbiAgICBvbkRyYWdDYW5jZWw6IGhhbmRsZURyYWdDYW5jZWwsXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUV4aXRBbmltYXRpb25FbmQgPSAoKSA9PiB7XG4gICAgaWYgKGlzQ2xvc2luZykge1xuICAgICAgc2V0Q2xvc2luZyhmYWxzZSk7XG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoMCk7XG4gICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuXG4gICAgICBpZiAob25Vbm1vdW50KSB7XG4gICAgICAgIG9uVW5tb3VudCgpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVDb250ZW50Q29udGFpbmVyU2Nyb2xsID0gKCkgPT4ge1xuICAgIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZChcbiAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudCAmJiBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wICE9PSAwXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBzaG93U2hlZXQgPSAoaXNWaXNpYmxlIHx8IGlzQ2xvc2luZykgJiYgIShpc1Zpc2libGUgJiYgaXNDbG9zaW5nKTtcblxuICBpZiAoIXNob3dTaGVldCkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgZ2xvYmFsU3R5bGVzID0ge1xuICAgIGh0bWw6IHtcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICB9LFxuICB9O1xuXG4gIGNvbnN0IGlkUHJvcCA9IGlkXG4gICAgPyB7XG4gICAgICAgIGlkLFxuICAgICAgfVxuICAgIDoge307XG5cbiAgY29uc3Qgc2hlZXRFbG0gPSAoXG4gICAgPD5cbiAgICAgIDxHbG9iYWwgc3R5bGVzPXtnbG9iYWxTdHlsZXN9IC8+XG4gICAgICA8Rm9jdXNUcmFwV3JhcHBlclxuICAgICAgICBmb2N1c1RyYXBPcHRpb25zPXt7XG4gICAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGRpc21pc3NPbk91dHNpZGVDbGljayxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogdHJ1ZSxcbiAgICAgICAgICBwcmV2ZW50U2Nyb2xsOiB0cnVlLFxuICAgICAgICAgIGluaXRpYWxGb2N1czogKCkgPT4gIWRpc2FibGVJbml0aWFsRm9jdXMsXG4gICAgICAgICAgcmV0dXJuRm9jdXNPbkRlYWN0aXZhdGU6ICFkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXIsXG4gICAgICAgICAgZmFsbGJhY2tGb2N1czogYFtkYXRhLWRzLWlkPVwiU2hlZXRcIl1gLFxuICAgICAgICAgIG9uUG9zdERlYWN0aXZhdGU6ICgpID0+IHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9LFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8U3R5bGVkQ29udGFpbmVyXG4gICAgICAgICAgey4uLmlkUHJvcH0gLy8gZXNsaW50LWRpc2FibGUtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiU2hlZXRcIlxuICAgICAgICAgIGlzVmlzaWJsZT17aXNWaXNpYmxlfVxuICAgICAgICAgIGNvbnRhaW5lckhlaWdodD17Y29udGFpbmVySGVpZ2h0fVxuICAgICAgICAgIGlzQ2xvc2luZz17aXNDbG9zaW5nfVxuICAgICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICAgIGRyYWdPZmZzZXQ9e2RyYWdPZmZzZXQuY3VycmVudH1cbiAgICAgICAgICBwcmV2Q29udGFpbmVySGVpZ2h0PXtwcmV2Q29udGFpbmVySGVpZ2h0LmN1cnJlbnR9XG4gICAgICAgICAgb25BbmltYXRpb25FbmQ9e2hhbmRsZUV4aXRBbmltYXRpb25FbmR9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8U3R5bGVkSGFuZGxlQ29udGFpbmVyXG4gICAgICAgICAgICAgIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkPXtpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPFN0eWxlZEhhbmRsZSAvPlxuICAgICAgICAgICAgPC9TdHlsZWRIYW5kbGVDb250YWluZXI+XG4gICAgICAgICAgICA8U3R5bGVkQ29udGVudENvbnRhaW5lclxuICAgICAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICAgICAgcmVmPXtjb250ZW50Q29udGFpbmVyUmVmfVxuICAgICAgICAgICAgICBvblNjcm9sbD17aGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbH1cbiAgICAgICAgICAgICAgb25BbmltYXRpb25FbmQ9eyhldnQpID0+IGV2dC5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC9TdHlsZWRDb250ZW50Q29udGFpbmVyPlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZENvbnRhaW5lcj5cbiAgICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgICA8Lz5cbiAgKTtcblxuICByZXR1cm4gY3JlYXRlUG9ydGFsKHNoZWV0RWxtLCBwb3J0YWxDb250YWluZXIgfHwgZG9jdW1lbnQuYm9keSk7XG59XG4iXX0= */");
109
111
  const StyledHandleContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
110
112
  target: "e1olca0n1"
111
113
  } : {
@@ -120,11 +122,12 @@ const StyledHandleContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV =
120
122
  padding: `${theme.variables.size.spacing.xs} 0`,
121
123
  display: "flex",
122
124
  justifyContent: "center",
125
+ backgroundColor: theme.values.color.background.elevated.default,
123
126
  ...(isContentContainerScrolled && {
124
127
  boxShadow: theme.values.elevation.a
125
128
  })
126
129
  };
127
- }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpSjhCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2VmlzaWJsZVN0YXRlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgY29udGFpbmVySGVpZ2h0LCBpc0Nsb3NpbmcsIGRyYWdPZmZzZXQgPSAwLCBwcmV2VmlzaWJsZVN0YXRlIH0pID0+IHtcbiAgICBsZXQgYW5pbWF0aW9uO1xuICAgIGlmIChjb250YWluZXJIZWlnaHQpIHtcbiAgICAgIGNvbnN0IHNsaWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtkcmFnT2Zmc2V0fXB4KWAsXG4gICAgICAgIH0sXG4gICAgICAgIHRvOiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke2NvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBjb25zdCBzbGlkZUluID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgICAgdG86IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKDBweClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VYSVR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtzbGlkZU91dH1gO1xuICAgICAgfSBlbHNlIGlmICghcHJldlZpc2libGVTdGF0ZSkge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgaXNDbG9zaW5nIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb24gPSBpc0Nsb3NpbmdcbiAgICAgID8gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtmYWRlT3V0fWBcbiAgICAgIDogYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgJHtcbiAgICAgICAgICBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgLSBBTklNQVRJT05fRFVSQVRJT05fQ09OVEVOVFxuICAgICAgICB9bXMgZm9yd2FyZHMgJHtmYWRlSW59YDtcblxuICAgIHJldHVybiB7XG4gICAgICBvdmVyZmxvdzogXCJhdXRvXCIsXG4gICAgICBtYXhIZWlnaHQ6IGAke01BWF9IRUlHSFRfUEVSQ0VOVH12aGAsXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICAgIG9wYWNpdHk6IDAsXG4gICAgICBhbmltYXRpb24sXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRIYW5kbGVDb250YWluZXJQcm9wcyA9IHtcbiAgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQ/OiBib29sZWFuO1xufTtcbmNvbnN0IFN0eWxlZEhhbmRsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQgfSkgPT4gKHtcbiAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzfSAwYCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIixcblxuICAgIC4uLihpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCAmJiB7XG4gICAgICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb24uYSxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEhhbmRsZSA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgd2lkdGg6IFwiODBweFwiLFxuICBoZWlnaHQ6IFwiNHB4XCIsXG4gIGJvcmRlclJhZGl1czogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzLFxuICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnksXG59KSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBTaGVldCh7XG4gIGlkLFxuICBjaGlsZHJlbixcbiAgaXNWaXNpYmxlLFxuICBvbkNsb3NlLFxuICBvblVubW91bnQsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrID0gdHJ1ZSxcbiAgZGlzYWJsZUluaXRpYWxGb2N1cyxcbiAgZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNoZWV0UHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBbaXNDbG9zaW5nLCBzZXRDbG9zaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2NvbnRhaW5lckhlaWdodCwgc2V0Q29udGFpbmVySGVpZ2h0XSA9IHVzZVN0YXRlKDApO1xuICBjb25zdCBbaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQsIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZF0gPVxuICAgIHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBjb250ZW50Q29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBwcmV2VmlzaWJsZVN0YXRlID0gdXNlUmVmKGlzVmlzaWJsZSk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ1N0YXJ0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICBpZiAoY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMCkge1xuICAgICAgICAvLyBSZW1vdmUgZXhpc3RpbmcgYW5pbWF0aW9uLCBvdGhlcndpc2UgdHJhbnNmb3JtIGRvZXNuJ3Qgd29ya1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS5hbmltYXRpb24gPSBcIm5vbmVcIjtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNpdGlvbiA9IFwidHJhbnNmb3JtIDAuMXMgZWFzZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZyA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgJiZcbiAgICAgICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwICYmXG4gICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0IDwgY29udGFpbmVyQ3VycmVudEhlaWdodFxuICAgICAgICApIHtcbiAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke29mZnNldEZyb21TdGFydH1weClgO1xuICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IG9mZnNldEZyb21TdGFydDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdFbmQgPSB1c2VDYWxsYmFjayhcbiAgICAoXywgb2Zmc2V0RnJvbVN0YXJ0KSA9PiB7XG4gICAgICBjb25zdCBjb250YWluZXJDdXJyZW50SGVpZ2h0ID1cbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgLy8gQ2xvc2Ugc2hlZXQgb25seSB3aGVuIGRyYWcgZGlzdGFuY2UgaXMgYSBxdWFydGVyIG9mIGNvbnRhaW5lciBoZWlnaHRcbiAgICAgIGNvbnN0IG1pbkRyYWdEaXN0YW5jZSA9XG4gICAgICAgIGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPCBNSU5fRFJBR19ESVNUQU5DRSAqIDJcbiAgICAgICAgICA/IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgLyA0XG4gICAgICAgICAgOiBNSU5fRFJBR19ESVNUQU5DRTtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIG9mZnNldEZyb21TdGFydCA+PSBtaW5EcmFnRGlzdGFuY2UgJiZcbiAgICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDBcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBvbkNsb3NlXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdDYW5jZWwgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChpc0RyYWdTdGFydGVkLmN1cnJlbnQpIHtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgIH1cbiAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmXSk7XG5cbiAgdXNlRHJhZ0Rvd24oe1xuICAgIHJlZjogY29udGFpbmVyUmVmLFxuICAgIGlzVmlzaWJsZTogaXNWaXNpYmxlICYmICFpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCxcbiAgICBvbkRyYWdTdGFydDogaGFuZGxlRHJhZ1N0YXJ0LFxuICAgIG9uRHJhZzogaGFuZGxlRHJhZyxcbiAgICBvbkRyYWdFbmQ6IGhhbmRsZURyYWdFbmQsXG4gICAgb25EcmFnQ2FuY2VsOiBoYW5kbGVEcmFnQ2FuY2VsLFxuICB9KTtcblxuICBjb25zdCBoYW5kbGVFeGl0QW5pbWF0aW9uRW5kID0gKCkgPT4ge1xuICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgIHNldENsb3NpbmcoZmFsc2UpO1xuICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcblxuICAgICAgaWYgKG9uVW5tb3VudCkge1xuICAgICAgICBvblVubW91bnQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbCA9ICgpID0+IHtcbiAgICBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQoXG4gICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCAhPT0gMFxuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2hvd1NoZWV0ID0gKGlzVmlzaWJsZSB8fCBpc0Nsb3NpbmcpICYmICEoaXNWaXNpYmxlICYmIGlzQ2xvc2luZyk7XG5cbiAgaWYgKCFzaG93U2hlZXQpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGdsb2JhbFN0eWxlcyA9IHtcbiAgICBodG1sOiB7XG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgfSxcbiAgfTtcblxuICBjb25zdCBpZFByb3AgPSBpZFxuICAgID8ge1xuICAgICAgICBpZCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG4gIGNvbnN0IHNoZWV0RWxtID0gKFxuICAgIDw+XG4gICAgICA8R2xvYmFsIHN0eWxlcz17Z2xvYmFsU3R5bGVzfSAvPlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgZm9jdXNUcmFwT3B0aW9ucz17e1xuICAgICAgICAgIGNsaWNrT3V0c2lkZURlYWN0aXZhdGVzOiBkaXNtaXNzT25PdXRzaWRlQ2xpY2ssXG4gICAgICAgICAgZXNjYXBlRGVhY3RpdmF0ZXM6IHRydWUsXG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBpbml0aWFsRm9jdXM6ICgpID0+ICFkaXNhYmxlSW5pdGlhbEZvY3VzLFxuICAgICAgICAgIHJldHVybkZvY3VzT25EZWFjdGl2YXRlOiAhZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICAgICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIlNoZWV0XCJdYCxcbiAgICAgICAgICBvblBvc3REZWFjdGl2YXRlOiAoKSA9PiB7XG4gICAgICAgICAgICBvbkNsb3NlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZENvbnRhaW5lclxuICAgICAgICAgIHsuLi5pZFByb3B9IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICAgICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgICAgZGF0YS1kcy1pZD1cIlNoZWV0XCJcbiAgICAgICAgICBpc1Zpc2libGU9e2lzVmlzaWJsZX1cbiAgICAgICAgICBjb250YWluZXJIZWlnaHQ9e2NvbnRhaW5lckhlaWdodH1cbiAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgICBkcmFnT2Zmc2V0PXtkcmFnT2Zmc2V0LmN1cnJlbnR9XG4gICAgICAgICAgcHJldlZpc2libGVTdGF0ZT17cHJldlZpc2libGVTdGF0ZS5jdXJyZW50fVxuICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXtoYW5kbGVFeGl0QW5pbWF0aW9uRW5kfVxuICAgICAgICA+XG4gICAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgICAgPFN0eWxlZEhhbmRsZUNvbnRhaW5lclxuICAgICAgICAgICAgICBpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZD17aXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWR9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxTdHlsZWRIYW5kbGUgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkSGFuZGxlQ29udGFpbmVyPlxuICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRDb250YWluZXJcbiAgICAgICAgICAgICAgaXNDbG9zaW5nPXtpc0Nsb3Npbmd9XG4gICAgICAgICAgICAgIHJlZj17Y29udGVudENvbnRhaW5lclJlZn1cbiAgICAgICAgICAgICAgb25TY3JvbGw9e2hhbmRsZUNvbnRlbnRDb250YWluZXJTY3JvbGx9XG4gICAgICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXsoZXZ0KSA9PiBldnQuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudENvbnRhaW5lcj5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC8+XG4gICk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChzaGVldEVsbSwgcG9ydGFsQ29udGFpbmVyIHx8IGRvY3VtZW50LmJvZHkpO1xufVxuIl19 */");
130
+ }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3SjhCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2Q29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdjxTdHlsZWRDb250YWluZXJQcm9wcz4oXG4gICh7XG4gICAgdGhlbWUsXG4gICAgY29udGFpbmVySGVpZ2h0LFxuICAgIGlzQ2xvc2luZyxcbiAgICBkcmFnT2Zmc2V0ID0gMCxcbiAgICBwcmV2Q29udGFpbmVySGVpZ2h0LFxuICB9KSA9PiB7XG4gICAgbGV0IGFuaW1hdGlvbjtcbiAgICBpZiAoY29udGFpbmVySGVpZ2h0KSB7XG4gICAgICBjb25zdCBzbGlkZU91dCA9IGtleWZyYW1lcyh7XG4gICAgICAgIGZyb206IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKCR7ZHJhZ09mZnNldH1weClgLFxuICAgICAgICB9LFxuICAgICAgICB0bzoge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgY29uc3Qgc2xpZGVJbiA9IGtleWZyYW1lcyh7XG4gICAgICAgIGZyb206IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKCR7Y29udGFpbmVySGVpZ2h0IC0gcHJldkNvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgICB0bzoge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoMHB4KWAsXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgaWYgKGlzQ2xvc2luZykge1xuICAgICAgICBhbmltYXRpb24gPSBgJHtBTklNQVRJT05fRFVSQVRJT05fRVhJVH1tcyBlYXNlLW91dCBmb3J3YXJkcyAke3NsaWRlT3V0fWA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgdGhlbWUsIGlzQ2xvc2luZyB9KSA9PiB7XG4gICAgY29uc3QgYW5pbWF0aW9uID0gaXNDbG9zaW5nXG4gICAgICA/IGAke0FOSU1BVElPTl9EVVJBVElPTl9DT05URU5UfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7ZmFkZU91dH1gXG4gICAgICA6IGAke0FOSU1BVElPTl9EVVJBVElPTl9DT05URU5UfW1zIGVhc2Utb3V0ICR7XG4gICAgICAgICAgQU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZIC0gQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlRcbiAgICAgICAgfW1zIGZvcndhcmRzICR7ZmFkZUlufWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgb3ZlcmZsb3c6IFwiYXV0b1wiLFxuICAgICAgbWF4SGVpZ2h0OiBgJHtNQVhfSEVJR0hUX1BFUkNFTlR9dmhgLFxuICAgICAgYm94U2l6aW5nOiBcImJvcmRlci1ib3hcIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5iYWNrZ3JvdW5kLmVsZXZhdGVkLmRlZmF1bHQsXG4gICAgICBvcGFjaXR5OiAwLFxuICAgICAgYW5pbWF0aW9uLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHMgPSB7XG4gIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkPzogYm9vbGVhbjtcbn07XG5jb25zdCBTdHlsZWRIYW5kbGVDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZEhhbmRsZUNvbnRhaW5lclByb3BzPihcbiAgKHsgdGhlbWUsIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkIH0pID0+ICh7XG4gICAgcGFkZGluZzogYCR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54c30gMGAsXG4gICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5lbGV2YXRlZC5kZWZhdWx0LFxuXG4gICAgLi4uKGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkICYmIHtcbiAgICAgIGJveFNoYWRvdzogdGhlbWUudmFsdWVzLmVsZXZhdGlvbi5hLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSGFuZGxlID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICB3aWR0aDogXCI4MHB4XCIsXG4gIGhlaWdodDogXCI0cHhcIixcbiAgYm9yZGVyUmFkaXVzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMueHMsXG4gIGJhY2tncm91bmRDb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIuc2Vjb25kYXJ5LFxufSkpO1xuXG5leHBvcnQgZnVuY3Rpb24gU2hlZXQoe1xuICBpZCxcbiAgY2hpbGRyZW4sXG4gIGlzVmlzaWJsZSxcbiAgb25DbG9zZSxcbiAgb25Vbm1vdW50LFxuICBwb3J0YWxDb250YWluZXIsXG4gIGRpc21pc3NPbk91dHNpZGVDbGljayA9IHRydWUsXG4gIGRpc2FibGVJbml0aWFsRm9jdXMsXG4gIGRpc2FibGVSZXR1cm5Gb2N1c1RvVHJpZ2dlcixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBTaGVldFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgW2lzQ2xvc2luZywgc2V0Q2xvc2luZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtjb250YWluZXJIZWlnaHQsIHNldENvbnRhaW5lckhlaWdodF0gPSB1c2VTdGF0ZSgwKTtcbiAgY29uc3QgW2lzQ29udGVudENvbnRhaW5lclNjcm9sbGVkLCBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWRdID1cbiAgICB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgY29udGVudENvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgcHJldlZpc2libGVTdGF0ZSA9IHVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IHByZXZDb250YWluZXJIZWlnaHQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBwcmV2Q29udGFpbmVySGVpZ2h0LmN1cnJlbnQgPSBjb250YWluZXJIZWlnaHQ7XG4gIH0sIFtjb250YWluZXJIZWlnaHRdKTtcblxuICBjb25zdCBoYW5kbGVEcmFnU3RhcnQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwKSB7XG4gICAgICAgIC8vIFJlbW92ZSBleGlzdGluZyBhbmltYXRpb24sIG90aGVyd2lzZSB0cmFuc2Zvcm0gZG9lc24ndCB3b3JrXG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLmFuaW1hdGlvbiA9IFwibm9uZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2l0aW9uID0gXCJ0cmFuc2Zvcm0gMC4xcyBlYXNlXCI7XG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLnRyYW5zZm9ybSA9IFwidHJhbnNsYXRlWSgwcHgpXCI7XG4gICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH0sIFtjb250YWluZXJSZWYsIGNvbnRlbnRDb250YWluZXJSZWZdKTtcblxuICBjb25zdCBoYW5kbGVEcmFnID0gdXNlQ2FsbGJhY2soXG4gICAgKF8sIG9mZnNldEZyb21TdGFydCkgPT4ge1xuICAgICAgY29uc3QgY29udGFpbmVyQ3VycmVudEhlaWdodCA9XG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCAmJlxuICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDAgJiZcbiAgICAgICAgICBvZmZzZXRGcm9tU3RhcnQgPCBjb250YWluZXJDdXJyZW50SGVpZ2h0XG4gICAgICAgICkge1xuICAgICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVZKCR7b2Zmc2V0RnJvbVN0YXJ0fXB4KWA7XG4gICAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gb2Zmc2V0RnJvbVN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtjb250YWluZXJSZWYsIGNvbnRlbnRDb250YWluZXJSZWZdXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ0VuZCA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG4gICAgICAvLyBDbG9zZSBzaGVldCBvbmx5IHdoZW4gZHJhZyBkaXN0YW5jZSBpcyBhIHF1YXJ0ZXIgb2YgY29udGFpbmVyIGhlaWdodFxuICAgICAgY29uc3QgbWluRHJhZ0Rpc3RhbmNlID1cbiAgICAgICAgY29udGFpbmVyQ3VycmVudEhlaWdodCA8IE1JTl9EUkFHX0RJU1RBTkNFICogMlxuICAgICAgICAgID8gY29udGFpbmVyQ3VycmVudEhlaWdodCAvIDRcbiAgICAgICAgICA6IE1JTl9EUkFHX0RJU1RBTkNFO1xuXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICBpZiAoaXNEcmFnU3RhcnRlZC5jdXJyZW50KSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0ID49IG1pbkRyYWdEaXN0YW5jZSAmJlxuICAgICAgICAgICAgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMFxuICAgICAgICAgICkge1xuICAgICAgICAgICAgb25DbG9zZSgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaXNEcmFnU3RhcnRlZC5jdXJyZW50ID0gZmFsc2U7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtjb250YWluZXJSZWYsIG9uQ2xvc2VdXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ0NhbmNlbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgfVxuICAgICAgaXNEcmFnU3RhcnRlZC5jdXJyZW50ID0gZmFsc2U7XG4gICAgfSk7XG4gIH0sIFtjb250YWluZXJSZWZdKTtcblxuICB1c2VEcmFnRG93bih7XG4gICAgcmVmOiBjb250YWluZXJSZWYsXG4gICAgaXNWaXNpYmxlOiBpc1Zpc2libGUgJiYgIWlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkLFxuICAgIG9uRHJhZ1N0YXJ0OiBoYW5kbGVEcmFnU3RhcnQsXG4gICAgb25EcmFnOiBoYW5kbGVEcmFnLFxuICAgIG9uRHJhZ0VuZDogaGFuZGxlRHJhZ0VuZCxcbiAgICBvbkRyYWdDYW5jZWw6IGhhbmRsZURyYWdDYW5jZWwsXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUV4aXRBbmltYXRpb25FbmQgPSAoKSA9PiB7XG4gICAgaWYgKGlzQ2xvc2luZykge1xuICAgICAgc2V0Q2xvc2luZyhmYWxzZSk7XG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoMCk7XG4gICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuXG4gICAgICBpZiAob25Vbm1vdW50KSB7XG4gICAgICAgIG9uVW5tb3VudCgpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVDb250ZW50Q29udGFpbmVyU2Nyb2xsID0gKCkgPT4ge1xuICAgIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZChcbiAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudCAmJiBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wICE9PSAwXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBzaG93U2hlZXQgPSAoaXNWaXNpYmxlIHx8IGlzQ2xvc2luZykgJiYgIShpc1Zpc2libGUgJiYgaXNDbG9zaW5nKTtcblxuICBpZiAoIXNob3dTaGVldCkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgZ2xvYmFsU3R5bGVzID0ge1xuICAgIGh0bWw6IHtcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICB9LFxuICB9O1xuXG4gIGNvbnN0IGlkUHJvcCA9IGlkXG4gICAgPyB7XG4gICAgICAgIGlkLFxuICAgICAgfVxuICAgIDoge307XG5cbiAgY29uc3Qgc2hlZXRFbG0gPSAoXG4gICAgPD5cbiAgICAgIDxHbG9iYWwgc3R5bGVzPXtnbG9iYWxTdHlsZXN9IC8+XG4gICAgICA8Rm9jdXNUcmFwV3JhcHBlclxuICAgICAgICBmb2N1c1RyYXBPcHRpb25zPXt7XG4gICAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGRpc21pc3NPbk91dHNpZGVDbGljayxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogdHJ1ZSxcbiAgICAgICAgICBwcmV2ZW50U2Nyb2xsOiB0cnVlLFxuICAgICAgICAgIGluaXRpYWxGb2N1czogKCkgPT4gIWRpc2FibGVJbml0aWFsRm9jdXMsXG4gICAgICAgICAgcmV0dXJuRm9jdXNPbkRlYWN0aXZhdGU6ICFkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXIsXG4gICAgICAgICAgZmFsbGJhY2tGb2N1czogYFtkYXRhLWRzLWlkPVwiU2hlZXRcIl1gLFxuICAgICAgICAgIG9uUG9zdERlYWN0aXZhdGU6ICgpID0+IHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9LFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8U3R5bGVkQ29udGFpbmVyXG4gICAgICAgICAgey4uLmlkUHJvcH0gLy8gZXNsaW50LWRpc2FibGUtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiU2hlZXRcIlxuICAgICAgICAgIGlzVmlzaWJsZT17aXNWaXNpYmxlfVxuICAgICAgICAgIGNvbnRhaW5lckhlaWdodD17Y29udGFpbmVySGVpZ2h0fVxuICAgICAgICAgIGlzQ2xvc2luZz17aXNDbG9zaW5nfVxuICAgICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICAgIGRyYWdPZmZzZXQ9e2RyYWdPZmZzZXQuY3VycmVudH1cbiAgICAgICAgICBwcmV2Q29udGFpbmVySGVpZ2h0PXtwcmV2Q29udGFpbmVySGVpZ2h0LmN1cnJlbnR9XG4gICAgICAgICAgb25BbmltYXRpb25FbmQ9e2hhbmRsZUV4aXRBbmltYXRpb25FbmR9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8U3R5bGVkSGFuZGxlQ29udGFpbmVyXG4gICAgICAgICAgICAgIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkPXtpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPFN0eWxlZEhhbmRsZSAvPlxuICAgICAgICAgICAgPC9TdHlsZWRIYW5kbGVDb250YWluZXI+XG4gICAgICAgICAgICA8U3R5bGVkQ29udGVudENvbnRhaW5lclxuICAgICAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICAgICAgcmVmPXtjb250ZW50Q29udGFpbmVyUmVmfVxuICAgICAgICAgICAgICBvblNjcm9sbD17aGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbH1cbiAgICAgICAgICAgICAgb25BbmltYXRpb25FbmQ9eyhldnQpID0+IGV2dC5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC9TdHlsZWRDb250ZW50Q29udGFpbmVyPlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZENvbnRhaW5lcj5cbiAgICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgICA8Lz5cbiAgKTtcblxuICByZXR1cm4gY3JlYXRlUG9ydGFsKHNoZWV0RWxtLCBwb3J0YWxDb250YWluZXIgfHwgZG9jdW1lbnQuYm9keSk7XG59XG4iXX0= */");
128
131
  const StyledHandle = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
129
132
  target: "e1olca0n0"
130
133
  } : {
@@ -138,9 +141,9 @@ const StyledHandle = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "produ
138
141
  width: "80px",
139
142
  height: "4px",
140
143
  borderRadius: theme.variables.size.borderRadius.xs,
141
- backgroundColor: theme.values.color.divider.primary
144
+ backgroundColor: theme.values.color.divider.secondary
142
145
  };
143
- }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2SnFCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2VmlzaWJsZVN0YXRlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgY29udGFpbmVySGVpZ2h0LCBpc0Nsb3NpbmcsIGRyYWdPZmZzZXQgPSAwLCBwcmV2VmlzaWJsZVN0YXRlIH0pID0+IHtcbiAgICBsZXQgYW5pbWF0aW9uO1xuICAgIGlmIChjb250YWluZXJIZWlnaHQpIHtcbiAgICAgIGNvbnN0IHNsaWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtkcmFnT2Zmc2V0fXB4KWAsXG4gICAgICAgIH0sXG4gICAgICAgIHRvOiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke2NvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBjb25zdCBzbGlkZUluID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgICAgdG86IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKDBweClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VYSVR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtzbGlkZU91dH1gO1xuICAgICAgfSBlbHNlIGlmICghcHJldlZpc2libGVTdGF0ZSkge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgaXNDbG9zaW5nIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb24gPSBpc0Nsb3NpbmdcbiAgICAgID8gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtmYWRlT3V0fWBcbiAgICAgIDogYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgJHtcbiAgICAgICAgICBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgLSBBTklNQVRJT05fRFVSQVRJT05fQ09OVEVOVFxuICAgICAgICB9bXMgZm9yd2FyZHMgJHtmYWRlSW59YDtcblxuICAgIHJldHVybiB7XG4gICAgICBvdmVyZmxvdzogXCJhdXRvXCIsXG4gICAgICBtYXhIZWlnaHQ6IGAke01BWF9IRUlHSFRfUEVSQ0VOVH12aGAsXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICAgIG9wYWNpdHk6IDAsXG4gICAgICBhbmltYXRpb24sXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRIYW5kbGVDb250YWluZXJQcm9wcyA9IHtcbiAgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQ/OiBib29sZWFuO1xufTtcbmNvbnN0IFN0eWxlZEhhbmRsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQgfSkgPT4gKHtcbiAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzfSAwYCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIixcblxuICAgIC4uLihpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCAmJiB7XG4gICAgICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb24uYSxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEhhbmRsZSA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgd2lkdGg6IFwiODBweFwiLFxuICBoZWlnaHQ6IFwiNHB4XCIsXG4gIGJvcmRlclJhZGl1czogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzLFxuICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnksXG59KSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBTaGVldCh7XG4gIGlkLFxuICBjaGlsZHJlbixcbiAgaXNWaXNpYmxlLFxuICBvbkNsb3NlLFxuICBvblVubW91bnQsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrID0gdHJ1ZSxcbiAgZGlzYWJsZUluaXRpYWxGb2N1cyxcbiAgZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNoZWV0UHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBbaXNDbG9zaW5nLCBzZXRDbG9zaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2NvbnRhaW5lckhlaWdodCwgc2V0Q29udGFpbmVySGVpZ2h0XSA9IHVzZVN0YXRlKDApO1xuICBjb25zdCBbaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQsIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZF0gPVxuICAgIHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBjb250ZW50Q29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBwcmV2VmlzaWJsZVN0YXRlID0gdXNlUmVmKGlzVmlzaWJsZSk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ1N0YXJ0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICBpZiAoY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMCkge1xuICAgICAgICAvLyBSZW1vdmUgZXhpc3RpbmcgYW5pbWF0aW9uLCBvdGhlcndpc2UgdHJhbnNmb3JtIGRvZXNuJ3Qgd29ya1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS5hbmltYXRpb24gPSBcIm5vbmVcIjtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNpdGlvbiA9IFwidHJhbnNmb3JtIDAuMXMgZWFzZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZyA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgJiZcbiAgICAgICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwICYmXG4gICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0IDwgY29udGFpbmVyQ3VycmVudEhlaWdodFxuICAgICAgICApIHtcbiAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke29mZnNldEZyb21TdGFydH1weClgO1xuICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IG9mZnNldEZyb21TdGFydDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdFbmQgPSB1c2VDYWxsYmFjayhcbiAgICAoXywgb2Zmc2V0RnJvbVN0YXJ0KSA9PiB7XG4gICAgICBjb25zdCBjb250YWluZXJDdXJyZW50SGVpZ2h0ID1cbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgLy8gQ2xvc2Ugc2hlZXQgb25seSB3aGVuIGRyYWcgZGlzdGFuY2UgaXMgYSBxdWFydGVyIG9mIGNvbnRhaW5lciBoZWlnaHRcbiAgICAgIGNvbnN0IG1pbkRyYWdEaXN0YW5jZSA9XG4gICAgICAgIGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPCBNSU5fRFJBR19ESVNUQU5DRSAqIDJcbiAgICAgICAgICA/IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgLyA0XG4gICAgICAgICAgOiBNSU5fRFJBR19ESVNUQU5DRTtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIG9mZnNldEZyb21TdGFydCA+PSBtaW5EcmFnRGlzdGFuY2UgJiZcbiAgICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDBcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBvbkNsb3NlXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdDYW5jZWwgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChpc0RyYWdTdGFydGVkLmN1cnJlbnQpIHtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgIH1cbiAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmXSk7XG5cbiAgdXNlRHJhZ0Rvd24oe1xuICAgIHJlZjogY29udGFpbmVyUmVmLFxuICAgIGlzVmlzaWJsZTogaXNWaXNpYmxlICYmICFpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCxcbiAgICBvbkRyYWdTdGFydDogaGFuZGxlRHJhZ1N0YXJ0LFxuICAgIG9uRHJhZzogaGFuZGxlRHJhZyxcbiAgICBvbkRyYWdFbmQ6IGhhbmRsZURyYWdFbmQsXG4gICAgb25EcmFnQ2FuY2VsOiBoYW5kbGVEcmFnQ2FuY2VsLFxuICB9KTtcblxuICBjb25zdCBoYW5kbGVFeGl0QW5pbWF0aW9uRW5kID0gKCkgPT4ge1xuICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgIHNldENsb3NpbmcoZmFsc2UpO1xuICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcblxuICAgICAgaWYgKG9uVW5tb3VudCkge1xuICAgICAgICBvblVubW91bnQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbCA9ICgpID0+IHtcbiAgICBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQoXG4gICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCAhPT0gMFxuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2hvd1NoZWV0ID0gKGlzVmlzaWJsZSB8fCBpc0Nsb3NpbmcpICYmICEoaXNWaXNpYmxlICYmIGlzQ2xvc2luZyk7XG5cbiAgaWYgKCFzaG93U2hlZXQpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGdsb2JhbFN0eWxlcyA9IHtcbiAgICBodG1sOiB7XG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgfSxcbiAgfTtcblxuICBjb25zdCBpZFByb3AgPSBpZFxuICAgID8ge1xuICAgICAgICBpZCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG4gIGNvbnN0IHNoZWV0RWxtID0gKFxuICAgIDw+XG4gICAgICA8R2xvYmFsIHN0eWxlcz17Z2xvYmFsU3R5bGVzfSAvPlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgZm9jdXNUcmFwT3B0aW9ucz17e1xuICAgICAgICAgIGNsaWNrT3V0c2lkZURlYWN0aXZhdGVzOiBkaXNtaXNzT25PdXRzaWRlQ2xpY2ssXG4gICAgICAgICAgZXNjYXBlRGVhY3RpdmF0ZXM6IHRydWUsXG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBpbml0aWFsRm9jdXM6ICgpID0+ICFkaXNhYmxlSW5pdGlhbEZvY3VzLFxuICAgICAgICAgIHJldHVybkZvY3VzT25EZWFjdGl2YXRlOiAhZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICAgICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIlNoZWV0XCJdYCxcbiAgICAgICAgICBvblBvc3REZWFjdGl2YXRlOiAoKSA9PiB7XG4gICAgICAgICAgICBvbkNsb3NlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZENvbnRhaW5lclxuICAgICAgICAgIHsuLi5pZFByb3B9IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICAgICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgICAgZGF0YS1kcy1pZD1cIlNoZWV0XCJcbiAgICAgICAgICBpc1Zpc2libGU9e2lzVmlzaWJsZX1cbiAgICAgICAgICBjb250YWluZXJIZWlnaHQ9e2NvbnRhaW5lckhlaWdodH1cbiAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgICBkcmFnT2Zmc2V0PXtkcmFnT2Zmc2V0LmN1cnJlbnR9XG4gICAgICAgICAgcHJldlZpc2libGVTdGF0ZT17cHJldlZpc2libGVTdGF0ZS5jdXJyZW50fVxuICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXtoYW5kbGVFeGl0QW5pbWF0aW9uRW5kfVxuICAgICAgICA+XG4gICAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgICAgPFN0eWxlZEhhbmRsZUNvbnRhaW5lclxuICAgICAgICAgICAgICBpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZD17aXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWR9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxTdHlsZWRIYW5kbGUgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkSGFuZGxlQ29udGFpbmVyPlxuICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRDb250YWluZXJcbiAgICAgICAgICAgICAgaXNDbG9zaW5nPXtpc0Nsb3Npbmd9XG4gICAgICAgICAgICAgIHJlZj17Y29udGVudENvbnRhaW5lclJlZn1cbiAgICAgICAgICAgICAgb25TY3JvbGw9e2hhbmRsZUNvbnRlbnRDb250YWluZXJTY3JvbGx9XG4gICAgICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXsoZXZ0KSA9PiBldnQuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudENvbnRhaW5lcj5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC8+XG4gICk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChzaGVldEVsbSwgcG9ydGFsQ29udGFpbmVyIHx8IGRvY3VtZW50LmJvZHkpO1xufVxuIl19 */");
146
+ }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxS3FCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2Q29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdjxTdHlsZWRDb250YWluZXJQcm9wcz4oXG4gICh7XG4gICAgdGhlbWUsXG4gICAgY29udGFpbmVySGVpZ2h0LFxuICAgIGlzQ2xvc2luZyxcbiAgICBkcmFnT2Zmc2V0ID0gMCxcbiAgICBwcmV2Q29udGFpbmVySGVpZ2h0LFxuICB9KSA9PiB7XG4gICAgbGV0IGFuaW1hdGlvbjtcbiAgICBpZiAoY29udGFpbmVySGVpZ2h0KSB7XG4gICAgICBjb25zdCBzbGlkZU91dCA9IGtleWZyYW1lcyh7XG4gICAgICAgIGZyb206IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKCR7ZHJhZ09mZnNldH1weClgLFxuICAgICAgICB9LFxuICAgICAgICB0bzoge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgY29uc3Qgc2xpZGVJbiA9IGtleWZyYW1lcyh7XG4gICAgICAgIGZyb206IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKCR7Y29udGFpbmVySGVpZ2h0IC0gcHJldkNvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgICB0bzoge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoMHB4KWAsXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgaWYgKGlzQ2xvc2luZykge1xuICAgICAgICBhbmltYXRpb24gPSBgJHtBTklNQVRJT05fRFVSQVRJT05fRVhJVH1tcyBlYXNlLW91dCBmb3J3YXJkcyAke3NsaWRlT3V0fWA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgdGhlbWUsIGlzQ2xvc2luZyB9KSA9PiB7XG4gICAgY29uc3QgYW5pbWF0aW9uID0gaXNDbG9zaW5nXG4gICAgICA/IGAke0FOSU1BVElPTl9EVVJBVElPTl9DT05URU5UfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7ZmFkZU91dH1gXG4gICAgICA6IGAke0FOSU1BVElPTl9EVVJBVElPTl9DT05URU5UfW1zIGVhc2Utb3V0ICR7XG4gICAgICAgICAgQU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZIC0gQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlRcbiAgICAgICAgfW1zIGZvcndhcmRzICR7ZmFkZUlufWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgb3ZlcmZsb3c6IFwiYXV0b1wiLFxuICAgICAgbWF4SGVpZ2h0OiBgJHtNQVhfSEVJR0hUX1BFUkNFTlR9dmhgLFxuICAgICAgYm94U2l6aW5nOiBcImJvcmRlci1ib3hcIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5iYWNrZ3JvdW5kLmVsZXZhdGVkLmRlZmF1bHQsXG4gICAgICBvcGFjaXR5OiAwLFxuICAgICAgYW5pbWF0aW9uLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHMgPSB7XG4gIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkPzogYm9vbGVhbjtcbn07XG5jb25zdCBTdHlsZWRIYW5kbGVDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZEhhbmRsZUNvbnRhaW5lclByb3BzPihcbiAgKHsgdGhlbWUsIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkIH0pID0+ICh7XG4gICAgcGFkZGluZzogYCR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54c30gMGAsXG4gICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5lbGV2YXRlZC5kZWZhdWx0LFxuXG4gICAgLi4uKGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkICYmIHtcbiAgICAgIGJveFNoYWRvdzogdGhlbWUudmFsdWVzLmVsZXZhdGlvbi5hLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSGFuZGxlID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICB3aWR0aDogXCI4MHB4XCIsXG4gIGhlaWdodDogXCI0cHhcIixcbiAgYm9yZGVyUmFkaXVzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMueHMsXG4gIGJhY2tncm91bmRDb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIuc2Vjb25kYXJ5LFxufSkpO1xuXG5leHBvcnQgZnVuY3Rpb24gU2hlZXQoe1xuICBpZCxcbiAgY2hpbGRyZW4sXG4gIGlzVmlzaWJsZSxcbiAgb25DbG9zZSxcbiAgb25Vbm1vdW50LFxuICBwb3J0YWxDb250YWluZXIsXG4gIGRpc21pc3NPbk91dHNpZGVDbGljayA9IHRydWUsXG4gIGRpc2FibGVJbml0aWFsRm9jdXMsXG4gIGRpc2FibGVSZXR1cm5Gb2N1c1RvVHJpZ2dlcixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBTaGVldFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgW2lzQ2xvc2luZywgc2V0Q2xvc2luZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtjb250YWluZXJIZWlnaHQsIHNldENvbnRhaW5lckhlaWdodF0gPSB1c2VTdGF0ZSgwKTtcbiAgY29uc3QgW2lzQ29udGVudENvbnRhaW5lclNjcm9sbGVkLCBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWRdID1cbiAgICB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgY29udGVudENvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgcHJldlZpc2libGVTdGF0ZSA9IHVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IHByZXZDb250YWluZXJIZWlnaHQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBwcmV2Q29udGFpbmVySGVpZ2h0LmN1cnJlbnQgPSBjb250YWluZXJIZWlnaHQ7XG4gIH0sIFtjb250YWluZXJIZWlnaHRdKTtcblxuICBjb25zdCBoYW5kbGVEcmFnU3RhcnQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwKSB7XG4gICAgICAgIC8vIFJlbW92ZSBleGlzdGluZyBhbmltYXRpb24sIG90aGVyd2lzZSB0cmFuc2Zvcm0gZG9lc24ndCB3b3JrXG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLmFuaW1hdGlvbiA9IFwibm9uZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2l0aW9uID0gXCJ0cmFuc2Zvcm0gMC4xcyBlYXNlXCI7XG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLnRyYW5zZm9ybSA9IFwidHJhbnNsYXRlWSgwcHgpXCI7XG4gICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH0sIFtjb250YWluZXJSZWYsIGNvbnRlbnRDb250YWluZXJSZWZdKTtcblxuICBjb25zdCBoYW5kbGVEcmFnID0gdXNlQ2FsbGJhY2soXG4gICAgKF8sIG9mZnNldEZyb21TdGFydCkgPT4ge1xuICAgICAgY29uc3QgY29udGFpbmVyQ3VycmVudEhlaWdodCA9XG4gICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCAmJlxuICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDAgJiZcbiAgICAgICAgICBvZmZzZXRGcm9tU3RhcnQgPCBjb250YWluZXJDdXJyZW50SGVpZ2h0XG4gICAgICAgICkge1xuICAgICAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVZKCR7b2Zmc2V0RnJvbVN0YXJ0fXB4KWA7XG4gICAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gb2Zmc2V0RnJvbVN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtjb250YWluZXJSZWYsIGNvbnRlbnRDb250YWluZXJSZWZdXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ0VuZCA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG4gICAgICAvLyBDbG9zZSBzaGVldCBvbmx5IHdoZW4gZHJhZyBkaXN0YW5jZSBpcyBhIHF1YXJ0ZXIgb2YgY29udGFpbmVyIGhlaWdodFxuICAgICAgY29uc3QgbWluRHJhZ0Rpc3RhbmNlID1cbiAgICAgICAgY29udGFpbmVyQ3VycmVudEhlaWdodCA8IE1JTl9EUkFHX0RJU1RBTkNFICogMlxuICAgICAgICAgID8gY29udGFpbmVyQ3VycmVudEhlaWdodCAvIDRcbiAgICAgICAgICA6IE1JTl9EUkFHX0RJU1RBTkNFO1xuXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICBpZiAoaXNEcmFnU3RhcnRlZC5jdXJyZW50KSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0ID49IG1pbkRyYWdEaXN0YW5jZSAmJlxuICAgICAgICAgICAgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMFxuICAgICAgICAgICkge1xuICAgICAgICAgICAgb25DbG9zZSgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaXNEcmFnU3RhcnRlZC5jdXJyZW50ID0gZmFsc2U7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtjb250YWluZXJSZWYsIG9uQ2xvc2VdXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ0NhbmNlbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgfVxuICAgICAgaXNEcmFnU3RhcnRlZC5jdXJyZW50ID0gZmFsc2U7XG4gICAgfSk7XG4gIH0sIFtjb250YWluZXJSZWZdKTtcblxuICB1c2VEcmFnRG93bih7XG4gICAgcmVmOiBjb250YWluZXJSZWYsXG4gICAgaXNWaXNpYmxlOiBpc1Zpc2libGUgJiYgIWlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkLFxuICAgIG9uRHJhZ1N0YXJ0OiBoYW5kbGVEcmFnU3RhcnQsXG4gICAgb25EcmFnOiBoYW5kbGVEcmFnLFxuICAgIG9uRHJhZ0VuZDogaGFuZGxlRHJhZ0VuZCxcbiAgICBvbkRyYWdDYW5jZWw6IGhhbmRsZURyYWdDYW5jZWwsXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUV4aXRBbmltYXRpb25FbmQgPSAoKSA9PiB7XG4gICAgaWYgKGlzQ2xvc2luZykge1xuICAgICAgc2V0Q2xvc2luZyhmYWxzZSk7XG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoMCk7XG4gICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuXG4gICAgICBpZiAob25Vbm1vdW50KSB7XG4gICAgICAgIG9uVW5tb3VudCgpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVDb250ZW50Q29udGFpbmVyU2Nyb2xsID0gKCkgPT4ge1xuICAgIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZChcbiAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudCAmJiBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wICE9PSAwXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBzaG93U2hlZXQgPSAoaXNWaXNpYmxlIHx8IGlzQ2xvc2luZykgJiYgIShpc1Zpc2libGUgJiYgaXNDbG9zaW5nKTtcblxuICBpZiAoIXNob3dTaGVldCkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgZ2xvYmFsU3R5bGVzID0ge1xuICAgIGh0bWw6IHtcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICB9LFxuICB9O1xuXG4gIGNvbnN0IGlkUHJvcCA9IGlkXG4gICAgPyB7XG4gICAgICAgIGlkLFxuICAgICAgfVxuICAgIDoge307XG5cbiAgY29uc3Qgc2hlZXRFbG0gPSAoXG4gICAgPD5cbiAgICAgIDxHbG9iYWwgc3R5bGVzPXtnbG9iYWxTdHlsZXN9IC8+XG4gICAgICA8Rm9jdXNUcmFwV3JhcHBlclxuICAgICAgICBmb2N1c1RyYXBPcHRpb25zPXt7XG4gICAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGRpc21pc3NPbk91dHNpZGVDbGljayxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogdHJ1ZSxcbiAgICAgICAgICBwcmV2ZW50U2Nyb2xsOiB0cnVlLFxuICAgICAgICAgIGluaXRpYWxGb2N1czogKCkgPT4gIWRpc2FibGVJbml0aWFsRm9jdXMsXG4gICAgICAgICAgcmV0dXJuRm9jdXNPbkRlYWN0aXZhdGU6ICFkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXIsXG4gICAgICAgICAgZmFsbGJhY2tGb2N1czogYFtkYXRhLWRzLWlkPVwiU2hlZXRcIl1gLFxuICAgICAgICAgIG9uUG9zdERlYWN0aXZhdGU6ICgpID0+IHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9LFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8U3R5bGVkQ29udGFpbmVyXG4gICAgICAgICAgey4uLmlkUHJvcH0gLy8gZXNsaW50LWRpc2FibGUtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiU2hlZXRcIlxuICAgICAgICAgIGlzVmlzaWJsZT17aXNWaXNpYmxlfVxuICAgICAgICAgIGNvbnRhaW5lckhlaWdodD17Y29udGFpbmVySGVpZ2h0fVxuICAgICAgICAgIGlzQ2xvc2luZz17aXNDbG9zaW5nfVxuICAgICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICAgIGRyYWdPZmZzZXQ9e2RyYWdPZmZzZXQuY3VycmVudH1cbiAgICAgICAgICBwcmV2Q29udGFpbmVySGVpZ2h0PXtwcmV2Q29udGFpbmVySGVpZ2h0LmN1cnJlbnR9XG4gICAgICAgICAgb25BbmltYXRpb25FbmQ9e2hhbmRsZUV4aXRBbmltYXRpb25FbmR9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8U3R5bGVkSGFuZGxlQ29udGFpbmVyXG4gICAgICAgICAgICAgIGlzQ29udGVudENvbnRhaW5lclNjcm9sbGVkPXtpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPFN0eWxlZEhhbmRsZSAvPlxuICAgICAgICAgICAgPC9TdHlsZWRIYW5kbGVDb250YWluZXI+XG4gICAgICAgICAgICA8U3R5bGVkQ29udGVudENvbnRhaW5lclxuICAgICAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICAgICAgcmVmPXtjb250ZW50Q29udGFpbmVyUmVmfVxuICAgICAgICAgICAgICBvblNjcm9sbD17aGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbH1cbiAgICAgICAgICAgICAgb25BbmltYXRpb25FbmQ9eyhldnQpID0+IGV2dC5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC9TdHlsZWRDb250ZW50Q29udGFpbmVyPlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZENvbnRhaW5lcj5cbiAgICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgICA8Lz5cbiAgKTtcblxuICByZXR1cm4gY3JlYXRlUG9ydGFsKHNoZWV0RWxtLCBwb3J0YWxDb250YWluZXIgfHwgZG9jdW1lbnQuYm9keSk7XG59XG4iXX0= */");
144
147
  function Sheet(_ref5) {
145
148
  let {
146
149
  id,
@@ -159,7 +162,8 @@ function Sheet(_ref5) {
159
162
  const [isContentContainerScrolled, setContentContainerScrolled] = useState(false);
160
163
  const containerRef = useRef(null);
161
164
  const contentContainerRef = useRef(null);
162
- const prevVisibleState = useRef(isVisible);
165
+ const prevVisibleState = useRef(false);
166
+ const prevContainerHeight = useRef(0);
163
167
  const dragOffset = useRef(0);
164
168
  const isDragStarted = useRef(false);
165
169
  useLayoutEffect(() => {
@@ -181,6 +185,9 @@ function Sheet(_ref5) {
181
185
  onClose();
182
186
  }
183
187
  }, [isVisible, isClosing, onClose]);
188
+ useEffect(() => {
189
+ prevContainerHeight.current = containerHeight;
190
+ }, [containerHeight]);
184
191
  const handleDragStart = useCallback(() => {
185
192
  requestAnimationFrame(() => {
186
193
  if (contentContainerRef.current.scrollTop === 0) {
@@ -238,6 +245,7 @@ function Sheet(_ref5) {
238
245
  const handleExitAnimationEnd = () => {
239
246
  if (isClosing) {
240
247
  setClosing(false);
248
+ setContainerHeight(0);
241
249
  dragOffset.current = 0;
242
250
  if (onUnmount) {
243
251
  onUnmount();
@@ -281,7 +289,7 @@ function Sheet(_ref5) {
281
289
  isClosing: isClosing,
282
290
  ref: containerRef,
283
291
  dragOffset: dragOffset.current,
284
- prevVisibleState: prevVisibleState.current,
292
+ prevContainerHeight: prevContainerHeight.current,
285
293
  onAnimationEnd: handleExitAnimationEnd
286
294
  }), /*#__PURE__*/React.createElement(Container, {
287
295
  elevation: 4
@@ -1 +1 @@
1
- {"version":3,"file":"Sheet.js","sources":["../../../../../src/components/Sheet/Sheet.tsx"],"sourcesContent":["import React, {\n useRef,\n useLayoutEffect,\n useState,\n useEffect,\n useCallback,\n} from \"react\";\nimport styled from \"@emotion/styled\";\nimport { createPortal } from \"react-dom\";\nimport { keyframes, Global } from \"@emotion/react\";\nimport { FocusTrapWrapper } from \"../../shared/FocusTrapWrapper\";\nimport { Container } from \"../Container/Container\";\nimport { useDragDown } from \"../../shared/useDragDown\";\n\nexport type SheetProps = {\n /* Id to associate with a trigger */\n id?: string;\n /** contents */\n children: React.ReactNode;\n /* Custom portal container to render sheet into */\n portalContainer?: HTMLElement;\n /* used to show / hide sheet */\n isVisible: boolean;\n \"data-e2e-test-id\"?: string;\n /* Called when sheet needs to close, on escape, outside click, swipe down, etc. */\n onClose: () => void;\n /* Called when sheet is removed from DOM after exit animation. */\n onUnmount?: () => void;\n /* Controls whether Sheet closes on outside click */\n dismissOnOutsideClick?: boolean;\n /* Option for focus-trap, controls whether the first focuable item recieves focus */\n disableInitialFocus?: boolean;\n /* Option for focus-trap, controls whether the trigger should receive back the focus on popover close */\n disableReturnFocusToTrigger?: boolean;\n};\n\n// Duration of slidein animation of sheet container\nconst ANIMATION_DURATION_ENTRY = 300;\n// Duration of slideout animation of sheet container\nconst ANIMATION_DURATION_EXIT = 200; // duration\n// Duration of fade in/out animation of content container\nconst ANIMATION_DURATION_CONTENT = 50;\n// Max height of sheet content relative to viewport height\nconst MAX_HEIGHT_PERCENT = 80;\n// Min drag distance to close sheet\nconst MIN_DRAG_DISTANCE = 150;\n\nconst fadeOut = keyframes({\n from: {\n opacity: 1,\n },\n to: {\n opacity: 0,\n },\n});\nconst fadeIn = keyframes({\n from: {\n opacity: 0,\n },\n to: {\n opacity: 1,\n },\n});\n\ntype StyledContainerProps = Partial<Pick<SheetProps, \"isVisible\">> & {\n containerHeight?: number;\n isClosing?: boolean;\n dragOffset?: number;\n prevVisibleState?: boolean;\n};\n\nconst StyledContainer = styled.div<StyledContainerProps>(\n ({ theme, containerHeight, isClosing, dragOffset = 0, prevVisibleState }) => {\n let animation;\n if (containerHeight) {\n const slideOut = keyframes({\n from: {\n transform: `translateY(${dragOffset}px)`,\n },\n to: {\n transform: `translateY(${containerHeight}px)`,\n },\n });\n const slideIn = keyframes({\n from: {\n transform: `translateY(${containerHeight}px)`,\n },\n to: {\n transform: `translateY(0px)`,\n },\n });\n\n if (isClosing) {\n animation = `${ANIMATION_DURATION_EXIT}ms ease-out forwards ${slideOut}`;\n } else if (!prevVisibleState) {\n // set entry animation only for the first time after sheet is visible\n animation = `${ANIMATION_DURATION_ENTRY}ms ease-out forwards ${slideIn}`;\n }\n }\n\n return {\n position: \"fixed\",\n left: 0,\n bottom: 0,\n width: \"100vw\",\n transformOrigin: \"bottom\",\n animation,\n boxSizing: \"border-box\",\n zIndex: theme.variables.zIndex.modal,\n\n // Remove bottom border radius of DS Container\n \"> div\": {\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n },\n };\n }\n);\n\ntype StyledContentContainerProps = {\n isClosing?: boolean;\n};\n\nconst StyledContentContainer = styled.div<StyledContentContainerProps>(\n ({ isClosing }) => {\n const animation = isClosing\n ? `${ANIMATION_DURATION_CONTENT}ms ease-out forwards ${fadeOut}`\n : `${ANIMATION_DURATION_CONTENT}ms ease-out ${\n ANIMATION_DURATION_ENTRY - ANIMATION_DURATION_CONTENT\n }ms forwards ${fadeIn}`;\n\n return {\n overflow: \"auto\",\n maxHeight: `${MAX_HEIGHT_PERCENT}vh`,\n boxSizing: \"border-box\",\n overscrollBehavior: \"none\",\n opacity: 0,\n animation,\n };\n }\n);\n\ntype StyledHandleContainerProps = {\n isContentContainerScrolled?: boolean;\n};\nconst StyledHandleContainer = styled.div<StyledHandleContainerProps>(\n ({ theme, isContentContainerScrolled }) => ({\n padding: `${theme.variables.size.spacing.xs} 0`,\n display: \"flex\",\n justifyContent: \"center\",\n\n ...(isContentContainerScrolled && {\n boxShadow: theme.values.elevation.a,\n }),\n })\n);\n\nconst StyledHandle = styled.div(({ theme }) => ({\n width: \"80px\",\n height: \"4px\",\n borderRadius: theme.variables.size.borderRadius.xs,\n backgroundColor: theme.values.color.divider.primary,\n}));\n\nexport function Sheet({\n id,\n children,\n isVisible,\n onClose,\n onUnmount,\n portalContainer,\n dismissOnOutsideClick = true,\n disableInitialFocus,\n disableReturnFocusToTrigger,\n \"data-e2e-test-id\": dataE2eTestId,\n}: SheetProps): React.ReactElement {\n const [isClosing, setClosing] = useState(false);\n const [containerHeight, setContainerHeight] = useState(0);\n const [isContentContainerScrolled, setContentContainerScrolled] =\n useState(false);\n const containerRef = useRef(null);\n const contentContainerRef = useRef(null);\n const prevVisibleState = useRef(isVisible);\n const dragOffset = useRef(0);\n const isDragStarted = useRef(false);\n\n useLayoutEffect(() => {\n if (isVisible && containerRef.current) {\n const containerRect = containerRef.current.getBoundingClientRect();\n\n setContainerHeight(containerRect.height);\n }\n }, [isVisible, children]);\n\n useEffect(() => {\n // Start closing sheet if previously opened\n if (!isVisible && prevVisibleState.current) {\n setClosing(true);\n }\n prevVisibleState.current = isVisible;\n }, [isVisible]);\n\n useEffect(() => {\n if (isVisible && isClosing) {\n // Sometimes, parent component can re-open sheet while it is still closing. To prevent this, we call onClose again\n onClose();\n }\n }, [isVisible, isClosing, onClose]);\n\n const handleDragStart = useCallback(() => {\n requestAnimationFrame(() => {\n if (contentContainerRef.current.scrollTop === 0) {\n // Remove existing animation, otherwise transform doesn't work\n containerRef.current.style.animation = \"none\";\n containerRef.current.style.transition = \"transform 0.1s ease\";\n containerRef.current.style.transform = \"translateY(0px)\";\n dragOffset.current = 0;\n isDragStarted.current = true;\n }\n });\n }, [containerRef, contentContainerRef]);\n\n const handleDrag = useCallback(\n (_, offsetFromStart) => {\n const containerCurrentHeight =\n containerRef.current.getBoundingClientRect().height;\n\n requestAnimationFrame(() => {\n if (\n isDragStarted.current &&\n contentContainerRef.current.scrollTop === 0 &&\n offsetFromStart < containerCurrentHeight\n ) {\n containerRef.current.style.transform = `translateY(${offsetFromStart}px)`;\n dragOffset.current = offsetFromStart;\n }\n });\n },\n [containerRef, contentContainerRef]\n );\n\n const handleDragEnd = useCallback(\n (_, offsetFromStart) => {\n const containerCurrentHeight =\n containerRef.current.getBoundingClientRect().height;\n // Close sheet only when drag distance is a quarter of container height\n const minDragDistance =\n containerCurrentHeight < MIN_DRAG_DISTANCE * 2\n ? containerCurrentHeight / 4\n : MIN_DRAG_DISTANCE;\n\n requestAnimationFrame(() => {\n if (isDragStarted.current) {\n if (\n offsetFromStart >= minDragDistance &&\n contentContainerRef.current.scrollTop === 0\n ) {\n onClose();\n } else {\n containerRef.current.style.transform = \"translateY(0px)\";\n dragOffset.current = 0;\n }\n }\n isDragStarted.current = false;\n });\n },\n [containerRef, onClose]\n );\n\n const handleDragCancel = useCallback(() => {\n requestAnimationFrame(() => {\n if (isDragStarted.current) {\n containerRef.current.style.transform = \"translateY(0px)\";\n dragOffset.current = 0;\n }\n isDragStarted.current = false;\n });\n }, [containerRef]);\n\n useDragDown({\n ref: containerRef,\n isVisible: isVisible && !isContentContainerScrolled,\n onDragStart: handleDragStart,\n onDrag: handleDrag,\n onDragEnd: handleDragEnd,\n onDragCancel: handleDragCancel,\n });\n\n const handleExitAnimationEnd = () => {\n if (isClosing) {\n setClosing(false);\n dragOffset.current = 0;\n\n if (onUnmount) {\n onUnmount();\n }\n }\n };\n\n const handleContentContainerScroll = () => {\n setContentContainerScrolled(\n contentContainerRef.current && contentContainerRef.current.scrollTop !== 0\n );\n };\n\n const showSheet = (isVisible || isClosing) && !(isVisible && isClosing);\n\n if (!showSheet) return null;\n\n const globalStyles = {\n html: {\n overflow: \"hidden\",\n overscrollBehavior: \"none\",\n },\n };\n\n const idProp = id\n ? {\n id,\n }\n : {};\n\n const sheetElm = (\n <>\n <Global styles={globalStyles} />\n <FocusTrapWrapper\n focusTrapOptions={{\n clickOutsideDeactivates: dismissOnOutsideClick,\n escapeDeactivates: true,\n preventScroll: true,\n initialFocus: () => !disableInitialFocus,\n returnFocusOnDeactivate: !disableReturnFocusToTrigger,\n fallbackFocus: `[data-ds-id=\"Sheet\"]`,\n onPostDeactivate: () => {\n onClose();\n },\n }}\n >\n <StyledContainer\n {...idProp} // eslint-disable-line react/jsx-props-no-spreading\n data-e2e-test-id={dataE2eTestId}\n data-ds-id=\"Sheet\"\n isVisible={isVisible}\n containerHeight={containerHeight}\n isClosing={isClosing}\n ref={containerRef}\n dragOffset={dragOffset.current}\n prevVisibleState={prevVisibleState.current}\n onAnimationEnd={handleExitAnimationEnd}\n >\n <Container elevation={4}>\n <StyledHandleContainer\n isContentContainerScrolled={isContentContainerScrolled}\n >\n <StyledHandle />\n </StyledHandleContainer>\n <StyledContentContainer\n isClosing={isClosing}\n ref={contentContainerRef}\n onScroll={handleContentContainerScroll}\n onAnimationEnd={(evt) => evt.stopPropagation()}\n >\n {children}\n </StyledContentContainer>\n </Container>\n </StyledContainer>\n </FocusTrapWrapper>\n </>\n );\n\n return createPortal(sheetElm, portalContainer || document.body);\n}\n"],"names":["ANIMATION_DURATION_ENTRY","ANIMATION_DURATION_EXIT","ANIMATION_DURATION_CONTENT","MAX_HEIGHT_PERCENT","MIN_DRAG_DISTANCE","fadeOut","keyframes","from","opacity","to","fadeIn","StyledContainer","_styled","process","env","NODE_ENV","target","label","_ref","theme","containerHeight","isClosing","dragOffset","prevVisibleState","animation","slideOut","transform","slideIn","position","left","bottom","width","transformOrigin","boxSizing","zIndex","variables","modal","borderBottomLeftRadius","borderBottomRightRadius","StyledContentContainer","_ref2","overflow","maxHeight","overscrollBehavior","StyledHandleContainer","_ref3","isContentContainerScrolled","padding","size","spacing","xs","display","justifyContent","boxShadow","values","elevation","a","StyledHandle","_ref4","height","borderRadius","backgroundColor","color","divider","primary","Sheet","_ref5","id","children","isVisible","onClose","onUnmount","portalContainer","dismissOnOutsideClick","disableInitialFocus","disableReturnFocusToTrigger","dataE2eTestId","setClosing","useState","setContainerHeight","setContentContainerScrolled","containerRef","useRef","contentContainerRef","isDragStarted","useLayoutEffect","current","containerRect","getBoundingClientRect","useEffect","handleDragStart","useCallback","requestAnimationFrame","scrollTop","style","transition","handleDrag","_","offsetFromStart","containerCurrentHeight","handleDragEnd","minDragDistance","handleDragCancel","useDragDown","ref","onDragStart","onDrag","onDragEnd","onDragCancel","handleExitAnimationEnd","handleContentContainerScroll","showSheet","globalStyles","html","idProp","sheetElm","React","createElement","Fragment","Global","styles","FocusTrapWrapper","focusTrapOptions","clickOutsideDeactivates","escapeDeactivates","preventScroll","initialFocus","returnFocusOnDeactivate","fallbackFocus","onPostDeactivate","_extends","onAnimationEnd","Container","onScroll","evt","stopPropagation","createPortal","document","body"],"mappings":"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"}
1
+ {"version":3,"file":"Sheet.js","sources":["../../../../../src/components/Sheet/Sheet.tsx"],"sourcesContent":["import React, {\n useRef,\n useLayoutEffect,\n useState,\n useEffect,\n useCallback,\n} from \"react\";\nimport styled from \"@emotion/styled\";\nimport { createPortal } from \"react-dom\";\nimport { keyframes, Global } from \"@emotion/react\";\nimport { FocusTrapWrapper } from \"../../shared/FocusTrapWrapper\";\nimport { Container } from \"../Container/Container\";\nimport { useDragDown } from \"../../shared/useDragDown\";\n\nexport type SheetProps = {\n /* Id to associate with a trigger */\n id?: string;\n /** contents */\n children: React.ReactNode;\n /* Custom portal container to render sheet into */\n portalContainer?: HTMLElement;\n /* used to show / hide sheet */\n isVisible: boolean;\n \"data-e2e-test-id\"?: string;\n /* Called when sheet needs to close, on escape, outside click, swipe down, etc. */\n onClose: () => void;\n /* Called when sheet is removed from DOM after exit animation. */\n onUnmount?: () => void;\n /* Controls whether Sheet closes on outside click */\n dismissOnOutsideClick?: boolean;\n /* Option for focus-trap, controls whether the first focuable item recieves focus */\n disableInitialFocus?: boolean;\n /* Option for focus-trap, controls whether the trigger should receive back the focus on popover close */\n disableReturnFocusToTrigger?: boolean;\n};\n\n// Duration of slidein animation of sheet container\nconst ANIMATION_DURATION_ENTRY = 300;\n// Duration of slideout animation of sheet container\nconst ANIMATION_DURATION_EXIT = 200; // duration\n// Duration of fade in/out animation of content container\nconst ANIMATION_DURATION_CONTENT = 50;\n// Max height of sheet content relative to viewport height\nconst MAX_HEIGHT_PERCENT = 80;\n// Min drag distance to close sheet\nconst MIN_DRAG_DISTANCE = 150;\n\nconst fadeOut = keyframes({\n from: {\n opacity: 1,\n },\n to: {\n opacity: 0,\n },\n});\nconst fadeIn = keyframes({\n from: {\n opacity: 0,\n },\n to: {\n opacity: 1,\n },\n});\n\ntype StyledContainerProps = Partial<Pick<SheetProps, \"isVisible\">> & {\n containerHeight?: number;\n isClosing?: boolean;\n dragOffset?: number;\n prevContainerHeight?: number;\n};\n\nconst StyledContainer = styled.div<StyledContainerProps>(\n ({\n theme,\n containerHeight,\n isClosing,\n dragOffset = 0,\n prevContainerHeight,\n }) => {\n let animation;\n if (containerHeight) {\n const slideOut = keyframes({\n from: {\n transform: `translateY(${dragOffset}px)`,\n },\n to: {\n transform: `translateY(${containerHeight}px)`,\n },\n });\n const slideIn = keyframes({\n from: {\n transform: `translateY(${containerHeight - prevContainerHeight}px)`,\n },\n to: {\n transform: `translateY(0px)`,\n },\n });\n\n if (isClosing) {\n animation = `${ANIMATION_DURATION_EXIT}ms ease-out forwards ${slideOut}`;\n } else {\n // set entry animation only for the first time after sheet is visible\n animation = `${ANIMATION_DURATION_ENTRY}ms ease-out forwards ${slideIn}`;\n }\n }\n\n return {\n position: \"fixed\",\n left: 0,\n bottom: 0,\n width: \"100vw\",\n transformOrigin: \"bottom\",\n animation,\n boxSizing: \"border-box\",\n zIndex: theme.variables.zIndex.modal,\n\n // Remove bottom border radius of DS Container\n \"> div\": {\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n },\n };\n }\n);\n\ntype StyledContentContainerProps = {\n isClosing?: boolean;\n};\n\nconst StyledContentContainer = styled.div<StyledContentContainerProps>(\n ({ theme, isClosing }) => {\n const animation = isClosing\n ? `${ANIMATION_DURATION_CONTENT}ms ease-out forwards ${fadeOut}`\n : `${ANIMATION_DURATION_CONTENT}ms ease-out ${\n ANIMATION_DURATION_ENTRY - ANIMATION_DURATION_CONTENT\n }ms forwards ${fadeIn}`;\n\n return {\n overflow: \"auto\",\n maxHeight: `${MAX_HEIGHT_PERCENT}vh`,\n boxSizing: \"border-box\",\n overscrollBehavior: \"none\",\n backgroundColor: theme.values.color.background.elevated.default,\n opacity: 0,\n animation,\n };\n }\n);\n\ntype StyledHandleContainerProps = {\n isContentContainerScrolled?: boolean;\n};\nconst StyledHandleContainer = styled.div<StyledHandleContainerProps>(\n ({ theme, isContentContainerScrolled }) => ({\n padding: `${theme.variables.size.spacing.xs} 0`,\n display: \"flex\",\n justifyContent: \"center\",\n backgroundColor: theme.values.color.background.elevated.default,\n\n ...(isContentContainerScrolled && {\n boxShadow: theme.values.elevation.a,\n }),\n })\n);\n\nconst StyledHandle = styled.div(({ theme }) => ({\n width: \"80px\",\n height: \"4px\",\n borderRadius: theme.variables.size.borderRadius.xs,\n backgroundColor: theme.values.color.divider.secondary,\n}));\n\nexport function Sheet({\n id,\n children,\n isVisible,\n onClose,\n onUnmount,\n portalContainer,\n dismissOnOutsideClick = true,\n disableInitialFocus,\n disableReturnFocusToTrigger,\n \"data-e2e-test-id\": dataE2eTestId,\n}: SheetProps): React.ReactElement {\n const [isClosing, setClosing] = useState(false);\n const [containerHeight, setContainerHeight] = useState(0);\n const [isContentContainerScrolled, setContentContainerScrolled] =\n useState(false);\n const containerRef = useRef(null);\n const contentContainerRef = useRef(null);\n const prevVisibleState = useRef(false);\n const prevContainerHeight = useRef(0);\n const dragOffset = useRef(0);\n const isDragStarted = useRef(false);\n\n useLayoutEffect(() => {\n if (isVisible && containerRef.current) {\n const containerRect = containerRef.current.getBoundingClientRect();\n\n setContainerHeight(containerRect.height);\n }\n }, [isVisible, children]);\n\n useEffect(() => {\n // Start closing sheet if previously opened\n if (!isVisible && prevVisibleState.current) {\n setClosing(true);\n }\n prevVisibleState.current = isVisible;\n }, [isVisible]);\n\n useEffect(() => {\n if (isVisible && isClosing) {\n // Sometimes, parent component can re-open sheet while it is still closing. To prevent this, we call onClose again\n onClose();\n }\n }, [isVisible, isClosing, onClose]);\n\n useEffect(() => {\n prevContainerHeight.current = containerHeight;\n }, [containerHeight]);\n\n const handleDragStart = useCallback(() => {\n requestAnimationFrame(() => {\n if (contentContainerRef.current.scrollTop === 0) {\n // Remove existing animation, otherwise transform doesn't work\n containerRef.current.style.animation = \"none\";\n containerRef.current.style.transition = \"transform 0.1s ease\";\n containerRef.current.style.transform = \"translateY(0px)\";\n dragOffset.current = 0;\n isDragStarted.current = true;\n }\n });\n }, [containerRef, contentContainerRef]);\n\n const handleDrag = useCallback(\n (_, offsetFromStart) => {\n const containerCurrentHeight =\n containerRef.current.getBoundingClientRect().height;\n\n requestAnimationFrame(() => {\n if (\n isDragStarted.current &&\n contentContainerRef.current.scrollTop === 0 &&\n offsetFromStart < containerCurrentHeight\n ) {\n containerRef.current.style.transform = `translateY(${offsetFromStart}px)`;\n dragOffset.current = offsetFromStart;\n }\n });\n },\n [containerRef, contentContainerRef]\n );\n\n const handleDragEnd = useCallback(\n (_, offsetFromStart) => {\n const containerCurrentHeight =\n containerRef.current.getBoundingClientRect().height;\n // Close sheet only when drag distance is a quarter of container height\n const minDragDistance =\n containerCurrentHeight < MIN_DRAG_DISTANCE * 2\n ? containerCurrentHeight / 4\n : MIN_DRAG_DISTANCE;\n\n requestAnimationFrame(() => {\n if (isDragStarted.current) {\n if (\n offsetFromStart >= minDragDistance &&\n contentContainerRef.current.scrollTop === 0\n ) {\n onClose();\n } else {\n containerRef.current.style.transform = \"translateY(0px)\";\n dragOffset.current = 0;\n }\n }\n isDragStarted.current = false;\n });\n },\n [containerRef, onClose]\n );\n\n const handleDragCancel = useCallback(() => {\n requestAnimationFrame(() => {\n if (isDragStarted.current) {\n containerRef.current.style.transform = \"translateY(0px)\";\n dragOffset.current = 0;\n }\n isDragStarted.current = false;\n });\n }, [containerRef]);\n\n useDragDown({\n ref: containerRef,\n isVisible: isVisible && !isContentContainerScrolled,\n onDragStart: handleDragStart,\n onDrag: handleDrag,\n onDragEnd: handleDragEnd,\n onDragCancel: handleDragCancel,\n });\n\n const handleExitAnimationEnd = () => {\n if (isClosing) {\n setClosing(false);\n setContainerHeight(0);\n dragOffset.current = 0;\n\n if (onUnmount) {\n onUnmount();\n }\n }\n };\n\n const handleContentContainerScroll = () => {\n setContentContainerScrolled(\n contentContainerRef.current && contentContainerRef.current.scrollTop !== 0\n );\n };\n\n const showSheet = (isVisible || isClosing) && !(isVisible && isClosing);\n\n if (!showSheet) return null;\n\n const globalStyles = {\n html: {\n overflow: \"hidden\",\n overscrollBehavior: \"none\",\n },\n };\n\n const idProp = id\n ? {\n id,\n }\n : {};\n\n const sheetElm = (\n <>\n <Global styles={globalStyles} />\n <FocusTrapWrapper\n focusTrapOptions={{\n clickOutsideDeactivates: dismissOnOutsideClick,\n escapeDeactivates: true,\n preventScroll: true,\n initialFocus: () => !disableInitialFocus,\n returnFocusOnDeactivate: !disableReturnFocusToTrigger,\n fallbackFocus: `[data-ds-id=\"Sheet\"]`,\n onPostDeactivate: () => {\n onClose();\n },\n }}\n >\n <StyledContainer\n {...idProp} // eslint-disable-line react/jsx-props-no-spreading\n data-e2e-test-id={dataE2eTestId}\n data-ds-id=\"Sheet\"\n isVisible={isVisible}\n containerHeight={containerHeight}\n isClosing={isClosing}\n ref={containerRef}\n dragOffset={dragOffset.current}\n prevContainerHeight={prevContainerHeight.current}\n onAnimationEnd={handleExitAnimationEnd}\n >\n <Container elevation={4}>\n <StyledHandleContainer\n isContentContainerScrolled={isContentContainerScrolled}\n >\n <StyledHandle />\n </StyledHandleContainer>\n <StyledContentContainer\n isClosing={isClosing}\n ref={contentContainerRef}\n onScroll={handleContentContainerScroll}\n onAnimationEnd={(evt) => evt.stopPropagation()}\n >\n {children}\n </StyledContentContainer>\n </Container>\n </StyledContainer>\n </FocusTrapWrapper>\n </>\n );\n\n return createPortal(sheetElm, portalContainer || document.body);\n}\n"],"names":["ANIMATION_DURATION_ENTRY","ANIMATION_DURATION_EXIT","ANIMATION_DURATION_CONTENT","MAX_HEIGHT_PERCENT","MIN_DRAG_DISTANCE","fadeOut","keyframes","from","opacity","to","fadeIn","StyledContainer","_styled","process","env","NODE_ENV","target","label","_ref","theme","containerHeight","isClosing","dragOffset","prevContainerHeight","animation","slideOut","transform","slideIn","position","left","bottom","width","transformOrigin","boxSizing","zIndex","variables","modal","borderBottomLeftRadius","borderBottomRightRadius","StyledContentContainer","_ref2","overflow","maxHeight","overscrollBehavior","backgroundColor","values","color","background","elevated","default","StyledHandleContainer","_ref3","isContentContainerScrolled","padding","size","spacing","xs","display","justifyContent","boxShadow","elevation","a","StyledHandle","_ref4","height","borderRadius","divider","secondary","Sheet","_ref5","id","children","isVisible","onClose","onUnmount","portalContainer","dismissOnOutsideClick","disableInitialFocus","disableReturnFocusToTrigger","dataE2eTestId","setClosing","useState","setContainerHeight","setContentContainerScrolled","containerRef","useRef","contentContainerRef","prevVisibleState","isDragStarted","useLayoutEffect","current","containerRect","getBoundingClientRect","useEffect","handleDragStart","useCallback","requestAnimationFrame","scrollTop","style","transition","handleDrag","_","offsetFromStart","containerCurrentHeight","handleDragEnd","minDragDistance","handleDragCancel","useDragDown","ref","onDragStart","onDrag","onDragEnd","onDragCancel","handleExitAnimationEnd","handleContentContainerScroll","showSheet","globalStyles","html","idProp","sheetElm","React","createElement","Fragment","Global","styles","FocusTrapWrapper","focusTrapOptions","clickOutsideDeactivates","escapeDeactivates","preventScroll","initialFocus","returnFocusOnDeactivate","fallbackFocus","onPostDeactivate","_extends","onAnimationEnd","Container","onScroll","evt","stopPropagation","createPortal","document","body"],"mappings":"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"}
@@ -9,7 +9,7 @@ function BaseTooltip(_ref) {
9
9
  children,
10
10
  externalTriggerRef,
11
11
  portalContainer,
12
- contentPadding = "m",
12
+ contentPadding,
13
13
  maxWidth,
14
14
  "data-e2e-test-id": dataE2eTestId,
15
15
  onVisibilityChange
@@ -1 +1 @@
1
- {"version":3,"file":"BaseTooltip.js","sources":["../../../../../src/components/Tooltip/BaseTooltip.tsx"],"sourcesContent":["import React, {\n useState,\n useRef,\n useEffect,\n useCallback,\n useMemo,\n} from \"react\";\nimport type { TooltipContentProps } from \"./TooltipContent\";\nimport { TooltipContent } from \"./TooltipContent\";\nimport { TooltipConditionalProps } from \"./types\";\n\ntype BaseProps = Pick<\n TooltipContentProps,\n \"placement\" | \"portalContainer\" | \"contentPadding\" | \"maxWidth\"\n> & {\n /* Tooltip content */\n content: React.ReactElement;\n \"data-e2e-test-id\"?: string;\n /* Called when tooltip appears and disappears */\n onVisibilityChange?: (isVisible: boolean) => void;\n};\n\nexport type BaseTooltipProps = BaseProps & TooltipConditionalProps;\n\nconst SHOW_HIDE_DELAY = 200;\n\nexport function BaseTooltip({\n placement = \"auto\",\n content,\n children,\n externalTriggerRef,\n portalContainer,\n contentPadding = \"m\",\n maxWidth,\n \"data-e2e-test-id\": dataE2eTestId,\n onVisibilityChange,\n}: BaseTooltipProps): React.ReactElement {\n const tooltipId = useMemo(\n () => `DSTooltip_${Math.floor(Date.now() * Math.random())}`,\n []\n );\n const [isVisible, setVisible] = useState(false);\n const triggeredByEvent = useRef(null); // indicates if triggered by hover or focus\n const isTooltipHovered = useRef(false);\n const isTriggerHovered = useRef(false);\n const hideTooltipTimeoutId = useRef(null);\n const showTooltipTimeoutId = useRef(null);\n const internalTriggerRef = useRef(null);\n const triggerRef = externalTriggerRef || internalTriggerRef;\n\n const toggleVisibility = useCallback(\n (status: boolean) => {\n setVisible(status);\n\n if (onVisibilityChange) {\n onVisibilityChange(status);\n }\n },\n [onVisibilityChange]\n );\n\n const handleTriggerPointerEnter = useCallback(() => {\n isTriggerHovered.current = true;\n if (!isTooltipHovered.current) {\n clearTimeout(showTooltipTimeoutId.current);\n // Delay show tooltip to prevent flickering when mouse moves quickly over trigger\n showTooltipTimeoutId.current = setTimeout(() => {\n if (isTriggerHovered.current) {\n triggeredByEvent.current = \"hover\";\n toggleVisibility(true);\n }\n }, SHOW_HIDE_DELAY);\n }\n }, [toggleVisibility]);\n\n const handleTriggerPointerLeave = useCallback(() => {\n isTriggerHovered.current = false;\n clearTimeout(hideTooltipTimeoutId.current);\n // Delay removing tooltip from DOM to allow hover over tooltip element\n hideTooltipTimeoutId.current = setTimeout(() => {\n if (\n !isTooltipHovered.current &&\n triggeredByEvent.current === \"hover\" &&\n !isTriggerHovered.current\n ) {\n toggleVisibility(false);\n }\n }, SHOW_HIDE_DELAY);\n }, [toggleVisibility]);\n\n const handleTriggerFocus = useCallback(() => {\n triggeredByEvent.current = \"focus\";\n toggleVisibility(true);\n }, [toggleVisibility]);\n\n const handleTriggerBlur = useCallback(() => {\n if (triggeredByEvent.current === \"focus\") {\n toggleVisibility(false);\n }\n }, [toggleVisibility]);\n\n const handleTriggerKeyDown = useCallback(\n (evt) => {\n if (evt.key === \"Escape\") {\n toggleVisibility(false);\n }\n },\n [toggleVisibility]\n );\n\n const handleTooltipPointerEnter = () => {\n isTooltipHovered.current = true;\n };\n\n const handleTooltipPointerLeave = () => {\n isTooltipHovered.current = false;\n if (triggeredByEvent.current === \"hover\") {\n toggleVisibility(false);\n }\n };\n\n useEffect(\n () => () => {\n // clear timers\n clearTimeout(showTooltipTimeoutId.current);\n clearTimeout(hideTooltipTimeoutId.current);\n },\n []\n );\n\n useEffect(() => {\n let trigger: HTMLElement;\n\n if (externalTriggerRef?.current && !children) {\n trigger = externalTriggerRef.current;\n\n trigger.setAttribute(\"tabindex\", \"0\");\n trigger.addEventListener(\"pointerenter\", handleTriggerPointerEnter);\n trigger.addEventListener(\"pointerleave\", handleTriggerPointerLeave);\n trigger.addEventListener(\"focus\", handleTriggerFocus);\n trigger.addEventListener(\"blur\", handleTriggerBlur);\n trigger.addEventListener(\"keydown\", handleTriggerKeyDown);\n }\n\n return () => {\n if (trigger) {\n trigger.removeEventListener(\"pointerenter\", handleTriggerPointerEnter);\n trigger.removeEventListener(\"pointerleave\", handleTriggerPointerLeave);\n trigger.removeEventListener(\"focus\", handleTriggerFocus);\n trigger.removeEventListener(\"blur\", handleTriggerBlur);\n trigger.removeEventListener(\"keydown\", handleTriggerKeyDown);\n }\n };\n }, [\n externalTriggerRef,\n children,\n handleTriggerPointerEnter,\n handleTriggerPointerLeave,\n handleTriggerFocus,\n handleTriggerBlur,\n handleTriggerKeyDown,\n ]);\n\n useEffect(() => {\n if (externalTriggerRef?.current && !children) {\n const trigger = externalTriggerRef.current;\n\n if (isVisible) {\n trigger.setAttribute(\"aria-describedby\", tooltipId);\n } else {\n trigger.removeAttribute(\"aria-describedby\");\n }\n }\n }, [externalTriggerRef, children, tooltipId, isVisible]);\n\n const triggerElm = children\n ? React.cloneElement(children, {\n ref: triggerRef,\n ...(isVisible && {\n \"aria-describedby\": tooltipId,\n }),\n tabIndex: 0,\n onPointerEnter: handleTriggerPointerEnter,\n onPointerLeave: handleTriggerPointerLeave,\n onFocus: (evt: FocusEvent) => {\n handleTriggerFocus();\n if (children.props.onFocus) {\n children.props.onFocus(evt);\n }\n },\n onBlur: (evt: FocusEvent) => {\n handleTriggerBlur();\n if (children.props.onBlur) {\n if (children.props.onBlur) {\n children.props.onBlur(evt);\n }\n }\n },\n onKeyDown: handleTriggerKeyDown,\n })\n : null;\n\n const tooltipElm = (\n <TooltipContent\n dataDSId=\"Tooltip\"\n content={content}\n placement={placement}\n portalContainer={portalContainer}\n dataE2eTestId={dataE2eTestId}\n isVisible={isVisible}\n tooltipId={tooltipId}\n triggerRef={triggerRef}\n aria-hidden\n role=\"tooltip\"\n contentPadding={contentPadding}\n maxWidth={maxWidth}\n onTooltipPointerEnter={handleTooltipPointerEnter}\n onTooltipPointerLeave={handleTooltipPointerLeave}\n />\n );\n return (\n <>\n {triggerElm}\n {tooltipElm}\n </>\n );\n}\n"],"names":["SHOW_HIDE_DELAY","BaseTooltip","_ref","placement","content","children","externalTriggerRef","portalContainer","contentPadding","maxWidth","dataE2eTestId","onVisibilityChange","tooltipId","useMemo","Math","floor","Date","now","random","isVisible","setVisible","useState","triggeredByEvent","useRef","isTooltipHovered","isTriggerHovered","hideTooltipTimeoutId","showTooltipTimeoutId","internalTriggerRef","triggerRef","toggleVisibility","useCallback","status","handleTriggerPointerEnter","current","clearTimeout","setTimeout","handleTriggerPointerLeave","handleTriggerFocus","handleTriggerBlur","handleTriggerKeyDown","evt","key","handleTooltipPointerEnter","handleTooltipPointerLeave","useEffect","trigger","setAttribute","addEventListener","removeEventListener","removeAttribute","triggerElm","React","cloneElement","ref","tabIndex","onPointerEnter","onPointerLeave","onFocus","props","onBlur","onKeyDown","tooltipElm","createElement","TooltipContent","dataDSId","role","onTooltipPointerEnter","onTooltipPointerLeave","Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"BaseTooltip.js","sources":["../../../../../src/components/Tooltip/BaseTooltip.tsx"],"sourcesContent":["import React, {\n useState,\n useRef,\n useEffect,\n useCallback,\n useMemo,\n} from \"react\";\nimport type { TooltipContentProps } from \"./TooltipContent\";\nimport { TooltipContent } from \"./TooltipContent\";\nimport { TooltipConditionalProps } from \"./types\";\n\ntype BaseProps = Pick<\n TooltipContentProps,\n \"placement\" | \"portalContainer\" | \"contentPadding\" | \"maxWidth\"\n> & {\n /* Tooltip content */\n content: React.ReactElement;\n \"data-e2e-test-id\"?: string;\n /* Called when tooltip appears and disappears */\n onVisibilityChange?: (isVisible: boolean) => void;\n};\n\nexport type BaseTooltipProps = BaseProps & TooltipConditionalProps;\n\nconst SHOW_HIDE_DELAY = 200;\n\nexport function BaseTooltip({\n placement = \"auto\",\n content,\n children,\n externalTriggerRef,\n portalContainer,\n contentPadding,\n maxWidth,\n \"data-e2e-test-id\": dataE2eTestId,\n onVisibilityChange,\n}: BaseTooltipProps): React.ReactElement {\n const tooltipId = useMemo(\n () => `DSTooltip_${Math.floor(Date.now() * Math.random())}`,\n []\n );\n const [isVisible, setVisible] = useState(false);\n const triggeredByEvent = useRef(null); // indicates if triggered by hover or focus\n const isTooltipHovered = useRef(false);\n const isTriggerHovered = useRef(false);\n const hideTooltipTimeoutId = useRef(null);\n const showTooltipTimeoutId = useRef(null);\n const internalTriggerRef = useRef(null);\n const triggerRef = externalTriggerRef || internalTriggerRef;\n\n const toggleVisibility = useCallback(\n (status: boolean) => {\n setVisible(status);\n\n if (onVisibilityChange) {\n onVisibilityChange(status);\n }\n },\n [onVisibilityChange]\n );\n\n const handleTriggerPointerEnter = useCallback(() => {\n isTriggerHovered.current = true;\n if (!isTooltipHovered.current) {\n clearTimeout(showTooltipTimeoutId.current);\n // Delay show tooltip to prevent flickering when mouse moves quickly over trigger\n showTooltipTimeoutId.current = setTimeout(() => {\n if (isTriggerHovered.current) {\n triggeredByEvent.current = \"hover\";\n toggleVisibility(true);\n }\n }, SHOW_HIDE_DELAY);\n }\n }, [toggleVisibility]);\n\n const handleTriggerPointerLeave = useCallback(() => {\n isTriggerHovered.current = false;\n clearTimeout(hideTooltipTimeoutId.current);\n // Delay removing tooltip from DOM to allow hover over tooltip element\n hideTooltipTimeoutId.current = setTimeout(() => {\n if (\n !isTooltipHovered.current &&\n triggeredByEvent.current === \"hover\" &&\n !isTriggerHovered.current\n ) {\n toggleVisibility(false);\n }\n }, SHOW_HIDE_DELAY);\n }, [toggleVisibility]);\n\n const handleTriggerFocus = useCallback(() => {\n triggeredByEvent.current = \"focus\";\n toggleVisibility(true);\n }, [toggleVisibility]);\n\n const handleTriggerBlur = useCallback(() => {\n if (triggeredByEvent.current === \"focus\") {\n toggleVisibility(false);\n }\n }, [toggleVisibility]);\n\n const handleTriggerKeyDown = useCallback(\n (evt) => {\n if (evt.key === \"Escape\") {\n toggleVisibility(false);\n }\n },\n [toggleVisibility]\n );\n\n const handleTooltipPointerEnter = () => {\n isTooltipHovered.current = true;\n };\n\n const handleTooltipPointerLeave = () => {\n isTooltipHovered.current = false;\n if (triggeredByEvent.current === \"hover\") {\n toggleVisibility(false);\n }\n };\n\n useEffect(\n () => () => {\n // clear timers\n clearTimeout(showTooltipTimeoutId.current);\n clearTimeout(hideTooltipTimeoutId.current);\n },\n []\n );\n\n useEffect(() => {\n let trigger: HTMLElement;\n\n if (externalTriggerRef?.current && !children) {\n trigger = externalTriggerRef.current;\n\n trigger.setAttribute(\"tabindex\", \"0\");\n trigger.addEventListener(\"pointerenter\", handleTriggerPointerEnter);\n trigger.addEventListener(\"pointerleave\", handleTriggerPointerLeave);\n trigger.addEventListener(\"focus\", handleTriggerFocus);\n trigger.addEventListener(\"blur\", handleTriggerBlur);\n trigger.addEventListener(\"keydown\", handleTriggerKeyDown);\n }\n\n return () => {\n if (trigger) {\n trigger.removeEventListener(\"pointerenter\", handleTriggerPointerEnter);\n trigger.removeEventListener(\"pointerleave\", handleTriggerPointerLeave);\n trigger.removeEventListener(\"focus\", handleTriggerFocus);\n trigger.removeEventListener(\"blur\", handleTriggerBlur);\n trigger.removeEventListener(\"keydown\", handleTriggerKeyDown);\n }\n };\n }, [\n externalTriggerRef,\n children,\n handleTriggerPointerEnter,\n handleTriggerPointerLeave,\n handleTriggerFocus,\n handleTriggerBlur,\n handleTriggerKeyDown,\n ]);\n\n useEffect(() => {\n if (externalTriggerRef?.current && !children) {\n const trigger = externalTriggerRef.current;\n\n if (isVisible) {\n trigger.setAttribute(\"aria-describedby\", tooltipId);\n } else {\n trigger.removeAttribute(\"aria-describedby\");\n }\n }\n }, [externalTriggerRef, children, tooltipId, isVisible]);\n\n const triggerElm = children\n ? React.cloneElement(children, {\n ref: triggerRef,\n ...(isVisible && {\n \"aria-describedby\": tooltipId,\n }),\n tabIndex: 0,\n onPointerEnter: handleTriggerPointerEnter,\n onPointerLeave: handleTriggerPointerLeave,\n onFocus: (evt: FocusEvent) => {\n handleTriggerFocus();\n if (children.props.onFocus) {\n children.props.onFocus(evt);\n }\n },\n onBlur: (evt: FocusEvent) => {\n handleTriggerBlur();\n if (children.props.onBlur) {\n if (children.props.onBlur) {\n children.props.onBlur(evt);\n }\n }\n },\n onKeyDown: handleTriggerKeyDown,\n })\n : null;\n\n const tooltipElm = (\n <TooltipContent\n dataDSId=\"Tooltip\"\n content={content}\n placement={placement}\n portalContainer={portalContainer}\n dataE2eTestId={dataE2eTestId}\n isVisible={isVisible}\n tooltipId={tooltipId}\n triggerRef={triggerRef}\n aria-hidden\n role=\"tooltip\"\n contentPadding={contentPadding}\n maxWidth={maxWidth}\n onTooltipPointerEnter={handleTooltipPointerEnter}\n onTooltipPointerLeave={handleTooltipPointerLeave}\n />\n );\n return (\n <>\n {triggerElm}\n {tooltipElm}\n </>\n );\n}\n"],"names":["SHOW_HIDE_DELAY","BaseTooltip","_ref","placement","content","children","externalTriggerRef","portalContainer","contentPadding","maxWidth","dataE2eTestId","onVisibilityChange","tooltipId","useMemo","Math","floor","Date","now","random","isVisible","setVisible","useState","triggeredByEvent","useRef","isTooltipHovered","isTriggerHovered","hideTooltipTimeoutId","showTooltipTimeoutId","internalTriggerRef","triggerRef","toggleVisibility","useCallback","status","handleTriggerPointerEnter","current","clearTimeout","setTimeout","handleTriggerPointerLeave","handleTriggerFocus","handleTriggerBlur","handleTriggerKeyDown","evt","key","handleTooltipPointerEnter","handleTooltipPointerLeave","useEffect","trigger","setAttribute","addEventListener","removeEventListener","removeAttribute","triggerElm","React","cloneElement","ref","tabIndex","onPointerEnter","onPointerLeave","onFocus","props","onBlur","onKeyDown","tooltipElm","createElement","TooltipContent","dataDSId","role","onTooltipPointerEnter","onTooltipPointerLeave","Fragment"],"mappings":"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"}