@onepercentio/one-ui 0.28.6 → 0.28.8
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.
- package/dist/components/AdaptiveButton/AdaptiveButton.js +12 -8
- package/dist/components/AdaptiveButton/index.js +2 -2
- package/dist/components/AdaptiveContainer/AdaptiveContainer.d.ts +2 -2
- package/dist/components/AdaptiveContainer/AdaptiveContainer.js +58 -30
- package/dist/components/AdaptiveContainer/AdaptiveContainer.module.scss +2 -2
- package/dist/components/AdaptiveContainer/index.js +2 -2
- package/dist/components/AdaptiveDialog/AdaptiveDialog.js +8 -9
- package/dist/components/AdaptiveDialog/index.js +2 -2
- package/dist/components/AdaptiveSidebar/AdaptiveSidebar.js +19 -18
- package/dist/components/AdaptiveSidebar/AdaptiveSidebar.sample.js +2 -2
- package/dist/components/AdaptiveSidebar/index.js +2 -2
- package/dist/components/AnchoredTooltip/AnchoredTooltip.d.ts +1 -1
- package/dist/components/AnchoredTooltip/AnchoredTooltip.js +20 -21
- package/dist/components/AnchoredTooltip/index.js +2 -2
- package/dist/components/AnimatedEntrance/AnimatedEntrance.js +9 -11
- package/dist/components/AnimatedEntrance/index.js +2 -3
- package/dist/components/AsyncWrapper/AsyncWrapper.js +2 -2
- package/dist/components/AsyncWrapper/index.js +2 -2
- package/dist/components/Avatar/Avatar.js +5 -6
- package/dist/components/Avatar/index.js +2 -2
- package/dist/components/BucketFill/BucketFill.js +6 -7
- package/dist/components/BucketFill/index.js +2 -2
- package/dist/components/Button/Button.js +13 -15
- package/dist/components/Button/index.js +2 -2
- package/dist/components/Card/Card.js +3 -3
- package/dist/components/Card/index.js +2 -2
- package/dist/components/Chart/Chart.logic.js +2 -2
- package/dist/components/Chart/Chart.types.js +1 -1
- package/dist/components/Chart/Chart.view.js +7 -8
- package/dist/components/Chart/index.js +2 -2
- package/dist/components/CheckBox/CheckBox.js +17 -14
- package/dist/components/CheckBox/index.js +2 -2
- package/dist/components/CodeInput/CodeInput.js +5 -6
- package/dist/components/CodeInput/index.js +2 -2
- package/dist/components/Collapsable/Collapsable.js +33 -29
- package/dist/components/Collapsable/index.js +2 -2
- package/dist/components/Countdown/Countdown.js +7 -8
- package/dist/components/Countdown/index.js +2 -2
- package/dist/components/CurrencyInput/CurrencyInput.hook.js +2 -2
- package/dist/components/CurrencyInput/CurrencyInput.js +14 -11
- package/dist/components/CurrencyInput/index.js +2 -2
- package/dist/components/Divider/Divider.js +3 -3
- package/dist/components/Divider/index.js +2 -2
- package/dist/components/EmailInput/EmailInput.js +5 -7
- package/dist/components/EmailInput/index.js +2 -3
- package/dist/components/FadeIn/FadeIn.js +16 -15
- package/dist/components/FadeIn/index.js +2 -2
- package/dist/components/FileInput/FileInput.js +11 -10
- package/dist/components/FileInput/View/BigFactory/BigFactory.js +3 -3
- package/dist/components/FileInput/View/BigFactory/index.js +2 -2
- package/dist/components/FileInput/View/Compact/Compact.js +7 -9
- package/dist/components/FileInput/View/Compact/index.js +2 -3
- package/dist/components/FileInput/View/View.types.js +1 -1
- package/dist/components/FileInput/index.js +2 -2
- package/dist/components/FlowController/FlowController.d.ts +1 -1
- package/dist/components/FlowController/FlowController.js +3 -3
- package/dist/components/FlowController/index.js +2 -2
- package/dist/components/Form/Form.js +16 -16
- package/dist/components/Form/index.js +2 -2
- package/dist/components/Form/v2/Form.hook.js +16 -21
- package/dist/components/Form/v2/Form.js +11 -10
- package/dist/components/Form/v2/Form.types.js +6 -11
- package/dist/components/Form/v2/FormField/Extensions/DateField/DateField.js +4 -4
- package/dist/components/Form/v2/FormField/Extensions/DateField/index.js +2 -2
- package/dist/components/Form/v2/FormField/Extensions/PhoneField/PhoneField.js +3 -4
- package/dist/components/Form/v2/FormField/Extensions/PhoneField/index.js +2 -2
- package/dist/components/Form/v2/FormField/FormField.js +13 -9
- package/dist/components/Form/v2/FormField/FormField.types.js +2 -3
- package/dist/components/Form/v2/FormField/index.js +2 -2
- package/dist/components/Form/v2/index.js +2 -2
- package/dist/components/Freeze/Freeze.js +2 -2
- package/dist/components/Freeze/index.js +2 -2
- package/dist/components/HSForms/HSForms.js +5 -16
- package/dist/components/HSForms/index.js +2 -2
- package/dist/components/Header/Header.js +8 -9
- package/dist/components/Header/index.js +2 -2
- package/dist/components/HeaderCloseBtn/HeaderCloseBtn.js +3 -3
- package/dist/components/HeaderCloseBtn/index.js +2 -2
- package/dist/components/InfinityScroll/InfinityScroll.js +14 -13
- package/dist/components/InfinityScroll/index.js +2 -2
- package/dist/components/Input/Input.js +24 -24
- package/dist/components/Input/index.js +2 -2
- package/dist/components/InstantCounter/InstantCounter.js +3 -5
- package/dist/components/InstantCounter/index.js +2 -2
- package/dist/components/LavaLamp/LavaLamp.data.js +3 -4
- package/dist/components/LavaLamp/LavaLamp.js +11 -12
- package/dist/components/LavaLamp/index.js +2 -2
- package/dist/components/LavaLamp/v2/LavaLamp.js +9 -9
- package/dist/components/LinkToId/LinkToId.js +2 -2
- package/dist/components/LinkToId/index.js +2 -3
- package/dist/components/Loader/Loader.js +10 -7
- package/dist/components/Loader/index.js +2 -2
- package/dist/components/LoaderDotsIndicator/LoaderDotsIndicator.js +2 -3
- package/dist/components/LoaderDotsIndicator/index.js +2 -2
- package/dist/components/LoopableVideo/LoopableVideo.js +11 -8
- package/dist/components/LoopableVideo/index.js +2 -2
- package/dist/components/MainGrid/MainGrid.js +4 -6
- package/dist/components/MainGrid/index.js +2 -2
- package/dist/components/MutableHamburgerButton/MutableHamburgerButton.js +13 -10
- package/dist/components/MutableHamburgerButton/index.js +2 -2
- package/dist/components/Notification/Notification.js +3 -3
- package/dist/components/Notification/index.js +2 -2
- package/dist/components/OrderableList/OrderableList.js +47 -44
- package/dist/components/OrderableList/index.js +2 -2
- package/dist/components/PaginationIndicator/PaginationIndicator.js +23 -26
- package/dist/components/PaginationIndicator/index.js +2 -2
- package/dist/components/Parallax/Parallax.js +25 -24
- package/dist/components/Parallax/index.js +2 -2
- package/dist/components/Parallax/math/helpers.js +2 -3
- package/dist/components/PasswordInput/PasswordInput.js +5 -7
- package/dist/components/PasswordInput/index.js +2 -2
- package/dist/components/PingPongText/PingPongText.js +7 -9
- package/dist/components/PingPongText/index.js +2 -2
- package/dist/components/PixelatedScan/PixelatedScan.js +19 -16
- package/dist/components/PixelatedScan/index.js +2 -2
- package/dist/components/Portal/Portal.js +14 -13
- package/dist/components/Portal/index.js +2 -3
- package/dist/components/ProgressBar/ProgressBar.js +28 -25
- package/dist/components/ProgressBar/index.js +2 -3
- package/dist/components/ProgressTexts/ProgressTexts.js +3 -3
- package/dist/components/ProgressTexts/index.js +2 -2
- package/dist/components/Radio/Radio.js +17 -14
- package/dist/components/Radio/index.js +2 -2
- package/dist/components/SectionContainer/SectionContainer.d.ts +1 -1
- package/dist/components/SectionContainer/SectionContainer.js +7 -9
- package/dist/components/SectionContainer/index.js +2 -2
- package/dist/components/Select/Select.js +24 -23
- package/dist/components/Select/index.js +2 -2
- package/dist/components/Skeleton/Skeleton.js +5 -5
- package/dist/components/Skeleton/index.js +2 -2
- package/dist/components/Spacing/Spacing.js +4 -5
- package/dist/components/Spacing/index.js +2 -2
- package/dist/components/StaticScroller/StaticScroller.js +12 -11
- package/dist/components/StaticScroller/index.js +2 -2
- package/dist/components/Switch/Switch.js +14 -11
- package/dist/components/Switch/index.js +2 -2
- package/dist/components/Table/Table.js +5 -6
- package/dist/components/Table/index.js +2 -2
- package/dist/components/Tabs/Tabs.js +6 -8
- package/dist/components/Tabs/index.js +2 -2
- package/dist/components/Text/Text.js +14 -13
- package/dist/components/Text/index.js +2 -2
- package/dist/components/Transition/MasksFactory/DiagonalReveal.js +11 -11
- package/dist/components/Transition/MasksFactory/DiagonalSquareToBalls.js +16 -17
- package/dist/components/Transition/MasksFactory/PhysicsSquares.js +5 -5
- package/dist/components/Transition/MasksFactory/SquareToBalls.js +15 -16
- package/dist/components/Transition/MasksFactory/utils.js +1 -1
- package/dist/components/Transition/Transition.js +45 -48
- package/dist/components/Transition/index.js +2 -3
- package/dist/components/UncontrolledTransition/UncontrolledTransition.js +37 -39
- package/dist/components/UncontrolledTransition/UncontrolledTransition.sample.js +4 -5
- package/dist/components/UncontrolledTransition/index.js +2 -3
- package/dist/components/WalletConnectionWrapper/WalletConnectionWrapper.js +8 -11
- package/dist/components/WalletConnectionWrapper/index.js +2 -3
- package/dist/components/utilitary/ScrollAndFocusLock/ScrollAndFocusLock.js +3 -4
- package/dist/components/utilitary/ScrollAndFocusLock/index.js +2 -2
- package/dist/context/AsyncProcess.js +12 -10
- package/dist/context/ContextAsyncControl.js +10 -7
- package/dist/context/CustomBrowserRouter.js +5 -6
- package/dist/context/OneUIProvider.d.ts +3 -2
- package/dist/context/OneUIProvider.js +7 -28
- package/dist/hooks/logs/useDependencyChangeDetection.js +2 -2
- package/dist/hooks/logs/useIsMounting.js +1 -1
- package/dist/hooks/persistence/useLocalStorage.js +1 -1
- package/dist/hooks/shims/ObjectWatchShim.js +1 -1
- package/dist/hooks/ui/useAdaptiveImage.js +3 -4
- package/dist/hooks/ui/useAlternating.js +1 -1
- package/dist/hooks/ui/useBreakpoint.js +2 -2
- package/dist/hooks/ui/useCustomScrollbar.js +2 -2
- package/dist/hooks/ui/useEffectIf.js +1 -1
- package/dist/hooks/ui/useMouseHover.js +2 -2
- package/dist/hooks/ui/usePaginationControls.js +26 -21
- package/dist/hooks/ui/useSnapToViewport.js +6 -6
- package/dist/hooks/ui/useTilt.js +7 -5
- package/dist/hooks/ui/useZoomable.js +8 -9
- package/dist/hooks/useAsyncControl.js +28 -32
- package/dist/hooks/useContainedRepositioning.js +6 -6
- package/dist/hooks/useCustomHistory.js +8 -4
- package/dist/hooks/useElementFit.js +2 -2
- package/dist/hooks/useFirestoreWatch.js +1 -1
- package/dist/hooks/useForm.js +9 -6
- package/dist/hooks/useFreeze.js +1 -1
- package/dist/hooks/useHero.js +36 -33
- package/dist/hooks/useIntersection.js +1 -1
- package/dist/hooks/useMergeRefs.js +1 -1
- package/dist/hooks/useObserve.js +1 -1
- package/dist/hooks/usePagination.js +21 -12
- package/dist/hooks/usePooledOperation.js +2 -2
- package/dist/hooks/usePooling.js +1 -1
- package/dist/hooks/useRebound.js +1 -1
- package/dist/hooks/useShortIntl.ai.md +5 -0
- package/dist/hooks/useShortIntl.js +19 -19
- package/dist/hooks/utility/useAsyncMemo.js +12 -8
- package/dist/hooks/utility/useDepChange.js +1 -1
- package/dist/hooks/utility/useEvents.js +1 -1
- package/dist/hooks/utility/useImmediate.js +2 -2
- package/dist/hooks/utility/useManualInit.js +2 -2
- package/dist/hooks/utility/useModule.js +1 -1
- package/dist/hooks/utility/useQuery.js +1 -1
- package/dist/hooks/utility/useUniqueEffect.js +1 -1
- package/dist/index.js +1 -1
- package/dist/models/DebugLogger.js +2 -2
- package/dist/models/GenericContract.js +2 -3
- package/dist/models/Orbs.js +1 -1
- package/dist/reac-app-env.d.js +1 -1
- package/dist/storybookUtils/index.js +2 -2
- package/dist/type-utils.js +1 -1
- package/dist/types.js +1 -1
- package/dist/utility.d.js +1 -1
- package/dist/utils/blockchain.js +1 -1
- package/dist/utils/flatten.js +3 -3
- package/dist/utils/formatters.js +3 -4
- package/dist/utils/html.utils.js +1 -1
- package/dist/utils/ownEvent.js +1 -1
- package/dist/utils/test.js +3 -3
- package/package.json +24 -16
- package/src_ai/components/UncontrolledTransition/UncontrolledTransition.ai.ts +0 -35
- package/src_ai/hooks/ui/useAlternating.ai.ts +0 -15
- package/src_ai/hooks/useHero.ai.ts +0 -18
- package/src_ai/types.ts +0 -10
|
@@ -10,5 +10,5 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
12
|
var _OrderableList = _interopRequireDefault(require("./OrderableList"));
|
|
13
|
-
function _interopRequireDefault(
|
|
14
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfT3JkZXJhYmxlTGlzdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvT3JkZXJhYmxlTGlzdC9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgZGVmYXVsdCB9IGZyb20gJy4vT3JkZXJhYmxlTGlzdCc7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsY0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQTBDLFNBQUFELHVCQUFBRSxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -8,18 +8,16 @@ exports.PaginationIndicatorMode = void 0;
|
|
|
8
8
|
exports.PaginationIndicatorView = PaginationIndicatorView;
|
|
9
9
|
exports.default = void 0;
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
function
|
|
12
|
-
function
|
|
13
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
11
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
12
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
14
13
|
const MAX_BALLS = 7;
|
|
15
14
|
const eachBallWidthEm = 1.2;
|
|
16
15
|
const CENTER_GUIDE_BALL = 1;
|
|
17
|
-
let PaginationIndicatorMode = /*#__PURE__*/function (PaginationIndicatorMode) {
|
|
16
|
+
let PaginationIndicatorMode = exports.PaginationIndicatorMode = /*#__PURE__*/function (PaginationIndicatorMode) {
|
|
18
17
|
PaginationIndicatorMode[PaginationIndicatorMode["CENTERED"] = 0] = "CENTERED";
|
|
19
18
|
PaginationIndicatorMode[PaginationIndicatorMode["START"] = 1] = "START";
|
|
20
19
|
return PaginationIndicatorMode;
|
|
21
20
|
}({});
|
|
22
|
-
exports.PaginationIndicatorMode = PaginationIndicatorMode;
|
|
23
21
|
function PaginationIndicatorView(_ref) {
|
|
24
22
|
let {
|
|
25
23
|
size,
|
|
@@ -82,22 +80,22 @@ function PaginationIndicatorView(_ref) {
|
|
|
82
80
|
const padding = (eachBallWidthEm - diameter) / 2;
|
|
83
81
|
return /*#__PURE__*/_react.default.createElement("rect", {
|
|
84
82
|
fill: "#fff",
|
|
85
|
-
width:
|
|
86
|
-
height:
|
|
87
|
-
x:
|
|
88
|
-
y:
|
|
89
|
-
rx:
|
|
83
|
+
width: "".concat(diameter, "em"),
|
|
84
|
+
height: "".concat(diameter, "em"),
|
|
85
|
+
x: "".concat(pushBallsToRightBy - padding + pushGuideToRightBy - pushToLeft, "em"),
|
|
86
|
+
y: "".concat(padding, "em"),
|
|
87
|
+
rx: "".concat(diameter / 2, "em")
|
|
90
88
|
});
|
|
91
89
|
}
|
|
92
90
|
const ballSize = numBalls < maxBalls ? 0.5 : page <= indexForTheBallsCenter + 1 && isLastBall ? 0 : pageIndex >= indexForLastPages - 1 && isFirstBall ? 0 : isCenterPage ? isFirstBall ? 0.5 - modulus * 0.5 : isLastBall ? modulus * 0.5 : 0.5 : 0.5;
|
|
93
91
|
if (i === 0 && mode === PaginationIndicatorMode.START) pushToLeft = (0.5 - ballSize) * 2.4;
|
|
94
92
|
return /*#__PURE__*/_react.default.createElement("rect", {
|
|
95
|
-
key:
|
|
96
|
-
width:
|
|
97
|
-
height:
|
|
98
|
-
x:
|
|
99
|
-
y:
|
|
100
|
-
rx:
|
|
93
|
+
key: "guide-".concat(i),
|
|
94
|
+
width: "".concat(ballSize * 1.2, "em"),
|
|
95
|
+
height: "".concat(ballSize * 1.2, "em"),
|
|
96
|
+
x: "".concat(pushBallsToRightBy + i * eachBallWidthEm - pushBallsToLeftBy - pushToLeft, "em"),
|
|
97
|
+
y: "".concat((eachBallWidthEm - ballSize * 1.2) / 2, "em"),
|
|
98
|
+
rx: "".concat(ballSize * 1.2 / 2, "em"),
|
|
101
99
|
onClick: () => {
|
|
102
100
|
if (onClickPage) {
|
|
103
101
|
const pageClicked = (!isCenterPage ? pageIndex >= indexForLastPages - 1 ? Math.floor(page) - resetPageIndex - 1 : 0 : Math.floor(page) - (indexForTheBallsCenter + 1)) + 1 + i;
|
|
@@ -115,13 +113,13 @@ function PaginationIndicatorView(_ref) {
|
|
|
115
113
|
xmlns: "http://www.w3.org/2000/svg",
|
|
116
114
|
className: className,
|
|
117
115
|
style: {
|
|
118
|
-
width:
|
|
119
|
-
minWidth:
|
|
116
|
+
width: "".concat(width, "em"),
|
|
117
|
+
minWidth: "".concat(width, "em"),
|
|
120
118
|
height: "1.2em",
|
|
121
|
-
fontSize:
|
|
119
|
+
fontSize: "".concat(size, "px")
|
|
122
120
|
}
|
|
123
121
|
}, /*#__PURE__*/_react.default.createElement("filter", {
|
|
124
|
-
id:
|
|
122
|
+
id: "goo-".concat(rand)
|
|
125
123
|
}, /*#__PURE__*/_react.default.createElement("feGaussianBlur", {
|
|
126
124
|
in: "SourceGraphic",
|
|
127
125
|
result: "blur",
|
|
@@ -136,14 +134,14 @@ function PaginationIndicatorView(_ref) {
|
|
|
136
134
|
in: "SourceGraphic",
|
|
137
135
|
result: "mix"
|
|
138
136
|
})), /*#__PURE__*/_react.default.createElement("mask", {
|
|
139
|
-
id:
|
|
137
|
+
id: "mask-".concat(rand)
|
|
140
138
|
}, /*#__PURE__*/_react.default.createElement("g", {
|
|
141
|
-
filter:
|
|
139
|
+
filter: "url(#".concat("goo-".concat(rand), ")"),
|
|
142
140
|
fill: "#fff"
|
|
143
141
|
}, [pageBalls], guideBall)), /*#__PURE__*/_react.default.createElement("rect", {
|
|
144
142
|
x: "0",
|
|
145
143
|
y: "0",
|
|
146
|
-
mask:
|
|
144
|
+
mask: "url(#".concat("mask-".concat(rand), ")"),
|
|
147
145
|
width: "100%",
|
|
148
146
|
height: "100%",
|
|
149
147
|
style: {
|
|
@@ -253,6 +251,5 @@ function _PaginationIndicator(_ref2, ref) {
|
|
|
253
251
|
* A cool component to indicate how many pages are
|
|
254
252
|
**/
|
|
255
253
|
const PaginationIndicator = /*#__PURE__*/(0, _react.forwardRef)(_PaginationIndicator);
|
|
256
|
-
var _default = PaginationIndicator;
|
|
257
|
-
exports.default = _default;
|
|
258
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiX2V4dGVuZHMiLCJhc3NpZ24iLCJiaW5kIiwidGFyZ2V0IiwiaSIsImFyZ3VtZW50cyIsImxlbmd0aCIsInNvdXJjZSIsImFwcGx5IiwiTUFYX0JBTExTIiwiZWFjaEJhbGxXaWR0aEVtIiwiQ0VOVEVSX0dVSURFX0JBTEwiLCJQYWdpbmF0aW9uSW5kaWNhdG9yTW9kZSIsImV4cG9ydHMiLCJQYWdpbmF0aW9uSW5kaWNhdG9yVmlldyIsIl9yZWYiLCJzaXplIiwicGFnZSIsImN1cnJlbnRQYWdlIiwicGFnZXMiLCJkZWNpbWFsUGFnZXMiLCJjbGFzc05hbWUiLCJvbkNsaWNrUGFnZSIsIm1vZGUiLCJDRU5URVJFRCIsImluZmluaXRlIiwibWF4QmFsbHMiLCJ1c2VNZW1vIiwiZmxvb3IiLCJNYXRoIiwibW9kdWx1cyIsImN1cnJlbnRGbG9vck1vZHVsdXMiLCJlcXVpdmFsZW50IiwicmFuZCIsInJhbmRvbSIsInRvU3RyaW5nIiwicGFnZUluZGV4IiwiY2VpbCIsIm51bUJhbGxzIiwiaW5kZXhGb3JUaGVCYWxsc0NlbnRlciIsImJhbGxzIiwiaW5kZXhGb3JMYXN0UGFnZXMiLCJpc0NlbnRlclBhZ2UiLCJyZXNldFBhZ2VJbmRleCIsImxlZnQiLCJwdXNoQmFsbHNUb1JpZ2h0QnkiLCJwdXNoQmFsbHNUb0xlZnRCeSIsInB1c2hHdWlkZVRvUmlnaHRCeSIsIm1pbiIsInB1c2hUb0xlZnQiLCJBcnJheSIsImZpbGwiLCJ1bmRlZmluZWQiLCJtYXAiLCJfIiwiaXNMYXN0QmFsbCIsImlzRmlyc3RCYWxsIiwiZGlhbWV0ZXIiLCJwYWRkaW5nIiwiY3JlYXRlRWxlbWVudCIsIndpZHRoIiwiaGVpZ2h0IiwieCIsInkiLCJyeCIsImJhbGxTaXplIiwiU1RBUlQiLCJvbkNsaWNrIiwicGFnZUNsaWNrZWQiLCJyb3VuZCIsImd1aWRlQmFsbCIsInBhZ2VCYWxscyIsInJldmVyc2UiLCJ2ZXJzaW9uIiwieG1sbnMiLCJzdHlsZSIsIm1pbldpZHRoIiwiZm9udFNpemUiLCJpZCIsImluIiwicmVzdWx0Iiwic3RkRGV2aWF0aW9uIiwidmFsdWVzIiwiaW4yIiwiZmlsdGVyIiwibWFzayIsIm9wYWNpdHkiLCJjdXJzb3IiLCJBbmltYXRlZFBhZ2luYXRpb25JbmRpY2F0b3IiLCJwcm9wcyIsInByZXZQYWdlIiwidXNlUmVmIiwicGFnZVByb2dyZXNzIiwic2V0UGFnZVByb2dyZXNzIiwidXNlU3RhdGUiLCJ1c2VFZmZlY3QiLCJkaWZmIiwiY3VycmVudCIsImRpZmZQZXJTdGVwIiwiaW50ZXJ2YWwiLCJzZXRJbnRlcnZhbCIsInByZXYiLCJuZXh0IiwiY2xlYXJJbnRlcnZhbCIsIk51bWJlciIsInRvRml4ZWQiLCJkdXJhdGlvbiIsIl9QYWdpbmF0aW9uSW5kaWNhdG9yIiwiX3JlZjIiLCJyZWYiLCJzY3JvbGxhYmxlUmVmIiwiZXN0aW1hdGVkV2lkdGgiLCJzZXRDdXJyZW50UGFnZSIsImRlZnMiLCJzZXREZWZzIiwicmVmcmVzaFBhZ2VzIiwidXNlQ2FsbGJhY2siLCJtYXhXaWR0aCIsInNjcm9sbFdpZHRoIiwiY2xpZW50V2lkdGgiLCJ1cGRhdGVQYWdlSW5kaWNhdG9ycyIsImVhY2hQYWdlV2lkdGgiLCJzY3JvbGxMZWZ0IiwibGFzdFBhZ2VQcm9ncmVzcyIsIm1heGltdW1Qcm9ncmVzcyIsImRpZmZUb01heCIsImN1cnJlbnRQcm9ncmVzc09uRGlmZiIsInAiLCJ1c2VJbXBlcmF0aXZlSGFuZGxlIiwiZWwiLCJvblNjcm9sbCIsImUiLCJjdXJyZW50VGFyZ2V0IiwiYWRkRXZlbnRMaXN0ZW5lciIsInBhc3NpdmUiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiUGFnaW5hdGlvbkluZGljYXRvciIsImZvcndhcmRSZWYiLCJfZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL1BhZ2luYXRpb25JbmRpY2F0b3IvUGFnaW5hdGlvbkluZGljYXRvci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7XG4gIENvbXBvbmVudFByb3BzLFxuICBGb3J3YXJkZWRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIFJlZk9iamVjdCxcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSBcInJlYWN0XCI7XG5cbmNvbnN0IE1BWF9CQUxMUyA9IDc7XG5jb25zdCBlYWNoQmFsbFdpZHRoRW0gPSAxLjI7XG5cbmNvbnN0IENFTlRFUl9HVUlERV9CQUxMID0gMTtcblxuZXhwb3J0IGVudW0gUGFnaW5hdGlvbkluZGljYXRvck1vZGUge1xuICAvKiogVGhpcyB3aWxsIG1ha2UgdGhlIGd1aWRlIGJhbGwgYmUga2VwdCBvbiBjZW50ZXIgICovXG4gIENFTlRFUkVELFxuXG4gIC8qKiBUaGlzIHdpbGwgbWFrZSB0aGUgZ3VpZGUgYmFsbCBtb3ZlLCB3aGlsZSB0aGUgaW5kaWNhdG9yIGJhbGxzIGtlZXAgaW4gcGxhY2UgKi9cbiAgU1RBUlQsXG59XG5leHBvcnQgZnVuY3Rpb24gUGFnaW5hdGlvbkluZGljYXRvclZpZXcoe1xuICBzaXplLFxuICBwYWdlOiBjdXJyZW50UGFnZSxcbiAgcGFnZXM6IGRlY2ltYWxQYWdlcyxcbiAgY2xhc3NOYW1lLFxuICBvbkNsaWNrUGFnZSxcbiAgbW9kZSA9IFBhZ2luYXRpb25JbmRpY2F0b3JNb2RlLkNFTlRFUkVELFxuICBpbmZpbml0ZSxcbn06IHtcbiAgc2l6ZTogbnVtYmVyO1xuICBwYWdlOiBudW1iZXI7XG4gIHBhZ2VzOiBudW1iZXI7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgb25DbGlja1BhZ2U/OiAocGFnZTogbnVtYmVyKSA9PiB2b2lkO1xuICBtb2RlPzogUGFnaW5hdGlvbkluZGljYXRvck1vZGU7XG4gIGluZmluaXRlPzogYm9vbGVhbjtcbn0pIHtcbiAgY29uc3QgbWF4QmFsbHMgPSB1c2VNZW1vKCgpID0+IChpbmZpbml0ZSA/IDUgOiBNQVhfQkFMTFMpLCBbaW5maW5pdGVdKTtcbiAgY29uc3QgcGFnZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGZsb29yID0gTWF0aC5mbG9vcihkZWNpbWFsUGFnZXMpO1xuICAgIGNvbnN0IG1vZHVsdXMgPSBkZWNpbWFsUGFnZXMgJSBmbG9vcjtcblxuICAgIGlmIChjdXJyZW50UGFnZSA+IGZsb29yKSB7XG4gICAgICBjb25zdCBjdXJyZW50Rmxvb3JNb2R1bHVzID0gY3VycmVudFBhZ2UgJSBmbG9vcjtcbiAgICAgIGNvbnN0IGVxdWl2YWxlbnQgPSAoY3VycmVudEZsb29yTW9kdWx1cyAqIDEwMCkgLyBtb2R1bHVzO1xuXG4gICAgICByZXR1cm4gZmxvb3IgKyBlcXVpdmFsZW50IC8gMTAwO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gY3VycmVudFBhZ2U7XG4gICAgfVxuICB9LCBbY3VycmVudFBhZ2UsIGRlY2ltYWxQYWdlc10pO1xuICBjb25zdCByYW5kID0gdXNlTWVtbygoKSA9PiBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKCksIFtdKTtcbiAgY29uc3QgcGFnZUluZGV4ID0gcGFnZSAtIDE7XG4gIGNvbnN0IHBhZ2VzID0gdXNlTWVtbygoKSA9PiBNYXRoLmNlaWwoZGVjaW1hbFBhZ2VzKSwgW2RlY2ltYWxQYWdlc10pO1xuICBjb25zdCBudW1CYWxscyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IG51bUJhbGxzID0gcGFnZXMgPj0gbWF4QmFsbHMgPyBtYXhCYWxscyA6IE1hdGguY2VpbChwYWdlcyk7XG5cbiAgICByZXR1cm4gbnVtQmFsbHM7XG4gIH0sIFtwYWdlc10pO1xuXG4gIGNvbnN0IGluZGV4Rm9yVGhlQmFsbHNDZW50ZXIgPSB1c2VNZW1vKFxuICAgICgpID0+IChpbmZpbml0ZSA/IG51bUJhbGxzIC0gNSA6IG51bUJhbGxzIC0gMSkgLyAyLFxuICAgIFtudW1CYWxscywgaW5maW5pdGVdXG4gICk7XG4gIGNvbnN0IGJhbGxzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgaW5kZXhGb3JMYXN0UGFnZXMgPSBwYWdlcyArIDEgLSBpbmRleEZvclRoZUJhbGxzQ2VudGVyO1xuICAgIC8qKlxuICAgICAqIElzIHRoZSBwYWdlIGluZGV4IChwb3NpdGlvbiBvZiB0aGUgY2VudGVyKVxuICAgICAqIGFmdGVyIHRoZSBmaXJzdCBwYWdlcyBhbmRcbiAgICAgKiBiZWZvcmUgdGhlIGxhc3QgcGFnZXMgKi9cbiAgICBjb25zdCBpc0NlbnRlclBhZ2UgPVxuICAgICAgbnVtQmFsbHMgPj0gbWF4QmFsbHMgJiZcbiAgICAgIHBhZ2VJbmRleCA+IGluZGV4Rm9yVGhlQmFsbHNDZW50ZXIgJiZcbiAgICAgIHBhZ2VJbmRleCA8IGluZGV4Rm9yTGFzdFBhZ2VzIC0gMTtcbiAgICBsZXQgbW9kdWx1cyA9XG4gICAgICBwYWdlSW5kZXggJVxuICAgICAgKDEgKyAoaW5kZXhGb3JUaGVCYWxsc0NlbnRlciAtIE1hdGguZmxvb3IoaW5kZXhGb3JUaGVCYWxsc0NlbnRlcikpKTtcbiAgICBjb25zdCByZXNldFBhZ2VJbmRleCA9IGlzQ2VudGVyUGFnZVxuICAgICAgPyBpbmRleEZvclRoZUJhbGxzQ2VudGVyICsgbW9kdWx1c1xuICAgICAgOiBwYWdlcyA8IG1heEJhbGxzXG4gICAgICA/IHBhZ2VJbmRleFxuICAgICAgOiBwYWdlSW5kZXggPj0gaW5kZXhGb3JMYXN0UGFnZXMgLSAxXG4gICAgICA/IG51bUJhbGxzIC0gKHBhZ2VzIC0gcGFnZUluZGV4KVxuICAgICAgOiBwYWdlSW5kZXg7XG4gICAgY29uc3QgbGVmdCA9IGVhY2hCYWxsV2lkdGhFbSAqIHJlc2V0UGFnZUluZGV4O1xuICAgIGNvbnN0IHsgcHVzaEJhbGxzVG9SaWdodEJ5LCBwdXNoQmFsbHNUb0xlZnRCeSwgcHVzaEd1aWRlVG9SaWdodEJ5IH0gPVxuICAgICAgbW9kZSA9PT0gUGFnaW5hdGlvbkluZGljYXRvck1vZGUuQ0VOVEVSRURcbiAgICAgICAgPyB7XG4gICAgICAgICAgICBwdXNoQmFsbHNUb1JpZ2h0Qnk6IE1hdGgubWluKHBhZ2VzLCBtYXhCYWxscykgKiBlYWNoQmFsbFdpZHRoRW0sXG4gICAgICAgICAgICBwdXNoQmFsbHNUb0xlZnRCeTogbGVmdCxcbiAgICAgICAgICAgIHB1c2hHdWlkZVRvUmlnaHRCeTogMCxcbiAgICAgICAgICB9XG4gICAgICAgIDoge1xuICAgICAgICAgICAgcHVzaEJhbGxzVG9SaWdodEJ5OiAoZWFjaEJhbGxXaWR0aEVtIC0gMC41KSAvIDIsXG4gICAgICAgICAgICBwdXNoQmFsbHNUb0xlZnRCeTogMCxcbiAgICAgICAgICAgIHB1c2hHdWlkZVRvUmlnaHRCeTogbGVmdCxcbiAgICAgICAgICB9O1xuICAgIGxldCBwdXNoVG9MZWZ0OiBudW1iZXIgPSAwO1xuICAgIHJldHVybiBuZXcgQXJyYXkoQ0VOVEVSX0dVSURFX0JBTEwgKyBudW1CYWxscylcbiAgICAgIC5maWxsKHVuZGVmaW5lZClcbiAgICAgIC5tYXAoKF8sIGkpID0+IHtcbiAgICAgICAgY29uc3QgaXNMYXN0QmFsbCA9IGkgPT09IG51bUJhbGxzIC0gMTtcbiAgICAgICAgY29uc3QgaXNGaXJzdEJhbGwgPSBpID09PSAwO1xuXG4gICAgICAgIGlmIChpID09PSBudW1CYWxscykge1xuICAgICAgICAgIGNvbnN0IGRpYW1ldGVyID0gMC40NSAqIDI7XG4gICAgICAgICAgY29uc3QgcGFkZGluZyA9IChlYWNoQmFsbFdpZHRoRW0gLSBkaWFtZXRlcikgLyAyO1xuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8cmVjdFxuICAgICAgICAgICAgICBmaWxsPVwiI2ZmZlwiXG4gICAgICAgICAgICAgIHdpZHRoPXtgJHtkaWFtZXRlcn1lbWB9XG4gICAgICAgICAgICAgIGhlaWdodD17YCR7ZGlhbWV0ZXJ9ZW1gfVxuICAgICAgICAgICAgICB4PXtgJHtcbiAgICAgICAgICAgICAgICBwdXNoQmFsbHNUb1JpZ2h0QnkgLSBwYWRkaW5nICsgcHVzaEd1aWRlVG9SaWdodEJ5IC0gcHVzaFRvTGVmdFxuICAgICAgICAgICAgICB9ZW1gfVxuICAgICAgICAgICAgICB5PXtgJHtwYWRkaW5nfWVtYH1cbiAgICAgICAgICAgICAgcng9e2Ake2RpYW1ldGVyIC8gMn1lbWB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBiYWxsU2l6ZSA9XG4gICAgICAgICAgbnVtQmFsbHMgPCBtYXhCYWxsc1xuICAgICAgICAgICAgPyAwLjVcbiAgICAgICAgICAgIDogcGFnZSA8PSBpbmRleEZvclRoZUJhbGxzQ2VudGVyICsgMSAmJiBpc0xhc3RCYWxsXG4gICAgICAgICAgICA/IDBcbiAgICAgICAgICAgIDogcGFnZUluZGV4ID49IGluZGV4Rm9yTGFzdFBhZ2VzIC0gMSAmJiBpc0ZpcnN0QmFsbFxuICAgICAgICAgICAgPyAwXG4gICAgICAgICAgICA6IGlzQ2VudGVyUGFnZVxuICAgICAgICAgICAgPyBpc0ZpcnN0QmFsbFxuICAgICAgICAgICAgICA/IDAuNSAtIG1vZHVsdXMgKiAwLjVcbiAgICAgICAgICAgICAgOiBpc0xhc3RCYWxsXG4gICAgICAgICAgICAgID8gbW9kdWx1cyAqIDAuNVxuICAgICAgICAgICAgICA6IDAuNVxuICAgICAgICAgICAgOiAwLjU7XG5cbiAgICAgICAgaWYgKGkgPT09IDAgJiYgbW9kZSA9PT0gUGFnaW5hdGlvbkluZGljYXRvck1vZGUuU1RBUlQpXG4gICAgICAgICAgcHVzaFRvTGVmdCA9ICgwLjUgLSBiYWxsU2l6ZSkgKiAyLjQ7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8cmVjdFxuICAgICAgICAgICAga2V5PXtgZ3VpZGUtJHtpfWB9XG4gICAgICAgICAgICB3aWR0aD17YCR7YmFsbFNpemUgKiAxLjJ9ZW1gfVxuICAgICAgICAgICAgaGVpZ2h0PXtgJHtiYWxsU2l6ZSAqIDEuMn1lbWB9XG4gICAgICAgICAgICB4PXtgJHtcbiAgICAgICAgICAgICAgcHVzaEJhbGxzVG9SaWdodEJ5ICtcbiAgICAgICAgICAgICAgaSAqIGVhY2hCYWxsV2lkdGhFbSAtXG4gICAgICAgICAgICAgIHB1c2hCYWxsc1RvTGVmdEJ5IC1cbiAgICAgICAgICAgICAgcHVzaFRvTGVmdFxuICAgICAgICAgICAgfWVtYH1cbiAgICAgICAgICAgIHk9e2AkeyhlYWNoQmFsbFdpZHRoRW0gLSBiYWxsU2l6ZSAqIDEuMikgLyAyfWVtYH1cbiAgICAgICAgICAgIHJ4PXtgJHsoYmFsbFNpemUgKiAxLjIpIC8gMn1lbWB9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgIGlmIChvbkNsaWNrUGFnZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhZ2VDbGlja2VkID1cbiAgICAgICAgICAgICAgICAgICghaXNDZW50ZXJQYWdlXG4gICAgICAgICAgICAgICAgICAgID8gcGFnZUluZGV4ID49IGluZGV4Rm9yTGFzdFBhZ2VzIC0gMVxuICAgICAgICAgICAgICAgICAgICAgID8gTWF0aC5mbG9vcihwYWdlKSAtIHJlc2V0UGFnZUluZGV4IC0gMVxuICAgICAgICAgICAgICAgICAgICAgIDogMFxuICAgICAgICAgICAgICAgICAgICA6IE1hdGguZmxvb3IocGFnZSkgLSAoaW5kZXhGb3JUaGVCYWxsc0NlbnRlciArIDEpKSArXG4gICAgICAgICAgICAgICAgICAxICtcbiAgICAgICAgICAgICAgICAgIGk7XG4gICAgICAgICAgICAgICAgb25DbGlja1BhZ2UoTWF0aC5yb3VuZChwYWdlQ2xpY2tlZCkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgfSwgW2luZGV4Rm9yVGhlQmFsbHNDZW50ZXIsIHBhZ2VJbmRleCwgcGFnZXNdKTtcbiAgY29uc3QgW2d1aWRlQmFsbCwgLi4ucGFnZUJhbGxzXSA9IGJhbGxzLnJldmVyc2UoKTtcbiAgbGV0IHdpZHRoID0gZWFjaEJhbGxXaWR0aEVtICogTWF0aC5taW4ocGFnZXMsIG1heEJhbGxzKSAqIDI7XG4gIGlmIChtb2RlID09PSBQYWdpbmF0aW9uSW5kaWNhdG9yTW9kZS5TVEFSVCkgd2lkdGggLz0gMjtcblxuICByZXR1cm4gKFxuICAgIDxzdmdcbiAgICAgIHZlcnNpb249XCIxLjFcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgIHN0eWxlPXt7XG4gICAgICAgIHdpZHRoOiBgJHt3aWR0aH1lbWAsXG4gICAgICAgIG1pbldpZHRoOiBgJHt3aWR0aH1lbWAsXG4gICAgICAgIGhlaWdodDogXCIxLjJlbVwiLFxuICAgICAgICBmb250U2l6ZTogYCR7c2l6ZX1weGAsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxmaWx0ZXIgaWQ9e2Bnb28tJHtyYW5kfWB9PlxuICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgaW49XCJTb3VyY2VHcmFwaGljXCIgcmVzdWx0PVwiYmx1clwiIHN0ZERldmlhdGlvbj1cIjVcIiAvPlxuICAgICAgICA8ZmVDb2xvck1hdHJpeFxuICAgICAgICAgIGluPVwiYmx1clwiXG4gICAgICAgICAgbW9kZT1cIm1hdHJpeFwiXG4gICAgICAgICAgdmFsdWVzPVwiMSAwIDAgMCAwICAwIDEgMCAwIDAgIDAgMCAxIDAgMCAgMCAwIDAgMTggLTdcIlxuICAgICAgICAgIHJlc3VsdD1cImdvb1wiXG4gICAgICAgIC8+XG4gICAgICAgIDxmZUJsZW5kIGluMj1cImdvb1wiIGluPVwiU291cmNlR3JhcGhpY1wiIHJlc3VsdD1cIm1peFwiIC8+XG4gICAgICA8L2ZpbHRlcj5cbiAgICAgIDxtYXNrIGlkPXtgbWFzay0ke3JhbmR9YH0+XG4gICAgICAgIDxnIGZpbHRlcj17YHVybCgjJHtgZ29vLSR7cmFuZH1gfSlgfSBmaWxsPVwiI2ZmZlwiPlxuICAgICAgICAgIHtbcGFnZUJhbGxzXX1cbiAgICAgICAgICB7Z3VpZGVCYWxsfVxuICAgICAgICA8L2c+XG4gICAgICA8L21hc2s+XG4gICAgICA8cmVjdFxuICAgICAgICB4PVwiMFwiXG4gICAgICAgIHk9XCIwXCJcbiAgICAgICAgbWFzaz17YHVybCgjJHtgbWFzay0ke3JhbmR9YH0pYH1cbiAgICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICAgIHN0eWxlPXt7IGZpbGw6IFwidmFyKC0tZGlnaXRhbC1ibHVlKVwiIH19XG4gICAgICA+PC9yZWN0PlxuICAgICAge29uQ2xpY2tQYWdlICYmIChcbiAgICAgICAgPGcgb3BhY2l0eT17MH0gc3R5bGU9e3sgY3Vyc29yOiBcInBvaW50ZXJcIiB9fT5cbiAgICAgICAgICB7cGFnZUJhbGxzfVxuICAgICAgICA8L2c+XG4gICAgICApfVxuICAgIDwvc3ZnPlxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gQW5pbWF0ZWRQYWdpbmF0aW9uSW5kaWNhdG9yKFxuICBwcm9wczogQ29tcG9uZW50UHJvcHM8dHlwZW9mIFBhZ2luYXRpb25JbmRpY2F0b3JWaWV3PiAmIHtcbiAgICBkdXJhdGlvbjogbnVtYmVyO1xuICB9XG4pIHtcbiAgY29uc3QgcHJldlBhZ2UgPSB1c2VSZWYocHJvcHMucGFnZSk7XG4gIGNvbnN0IFtwYWdlUHJvZ3Jlc3MsIHNldFBhZ2VQcm9ncmVzc10gPSB1c2VTdGF0ZShwcm9wcy5wYWdlKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBkaWZmID0gcHJvcHMucGFnZSAtIHByZXZQYWdlLmN1cnJlbnQ7XG4gICAgY29uc3QgZGlmZlBlclN0ZXAgPSBkaWZmIC8gNjA7XG5cbiAgICBjb25zdCBpbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgIHNldFBhZ2VQcm9ncmVzcygocHJldikgPT4ge1xuICAgICAgICBjb25zdCBuZXh0ID0gcHJldiArIGRpZmZQZXJTdGVwO1xuICAgICAgICBpZiAoZGlmZiA8IDApIHtcbiAgICAgICAgICBpZiAobmV4dCA8PSBwcm9wcy5wYWdlKSB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy5wYWdlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAobmV4dCA+PSBwcm9wcy5wYWdlKSB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy5wYWdlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gTnVtYmVyKG5leHQudG9GaXhlZCgyKSk7XG4gICAgICB9KTtcbiAgICB9LCBwcm9wcy5kdXJhdGlvbiAvIDYwKTtcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBwcmV2UGFnZS5jdXJyZW50ID0gcHJvcHMucGFnZTtcbiAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpO1xuICAgIH07XG4gIH0sIFtwcm9wcy5wYWdlXSk7XG5cbiAgcmV0dXJuIDxQYWdpbmF0aW9uSW5kaWNhdG9yVmlldyB7Li4ucHJvcHN9IHBhZ2U9e3BhZ2VQcm9ncmVzc30gLz47XG59XG5cbmZ1bmN0aW9uIF9QYWdpbmF0aW9uSW5kaWNhdG9yKFxuICB7XG4gICAgc2Nyb2xsYWJsZVJlZixcbiAgICBlc3RpbWF0ZWRXaWR0aCxcbiAgICBzaXplLFxuICAgIGNsYXNzTmFtZSA9IFwiXCIsXG4gICAgb25DbGlja1BhZ2UsXG4gICAgbW9kZSxcbiAgICBpbmZpbml0ZSxcbiAgfToge1xuICAgIHNjcm9sbGFibGVSZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD47XG4gICAgZXN0aW1hdGVkV2lkdGg/OiBudW1iZXI7XG4gICAgc2l6ZTogbnVtYmVyO1xuICAgIGNsYXNzTmFtZT86IHN0cmluZztcbiAgICBvbkNsaWNrUGFnZT86IChwYWdlOiBudW1iZXIpID0+IHZvaWQ7XG4gIH0gJiBQaWNrPENvbXBvbmVudFByb3BzPHR5cGVvZiBQYWdpbmF0aW9uSW5kaWNhdG9yVmlldz4sIFwibW9kZVwiIHwgXCJpbmZpbml0ZVwiPixcbiAgcmVmOiBGb3J3YXJkZWRSZWY8e1xuICAgIHJlZnJlc2hQYWdlczogKCkgPT4gdm9pZDtcbiAgfT5cbikge1xuICBjb25zdCBbY3VycmVudFBhZ2UsIHNldEN1cnJlbnRQYWdlXSA9IHVzZVN0YXRlKDEpO1xuXG4gIGNvbnN0IFtkZWZzLCBzZXREZWZzXSA9XG4gICAgdXNlU3RhdGU8e1xuICAgICAgcGFnZXM6IG51bWJlcjtcbiAgICB9PigpO1xuXG4gIGNvbnN0IHJlZnJlc2hQYWdlcyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAoIXNjcm9sbGFibGVSZWYuY3VycmVudCkgcmV0dXJuO1xuICAgIGNvbnN0IG1heFdpZHRoID1cbiAgICAgIGVzdGltYXRlZFdpZHRoID09PSB1bmRlZmluZWRcbiAgICAgICAgPyBzY3JvbGxhYmxlUmVmLmN1cnJlbnQhLnNjcm9sbFdpZHRoXG4gICAgICAgIDogZXN0aW1hdGVkV2lkdGg7XG5cbiAgICBjb25zdCBwYWdlcyA9IG1heFdpZHRoIC8gc2Nyb2xsYWJsZVJlZi5jdXJyZW50IS5jbGllbnRXaWR0aDtcbiAgICBpZiAocGFnZXMgPiAxKVxuICAgICAgc2V0RGVmcyh7XG4gICAgICAgIHBhZ2VzOiBpbmZpbml0ZSA/IHBhZ2VzICsgMiA6IHBhZ2VzLFxuICAgICAgfSk7XG4gIH0sIFtlc3RpbWF0ZWRXaWR0aCwgaW5maW5pdGVdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4gcmVmcmVzaFBhZ2VzKCksIFtyZWZyZXNoUGFnZXNdKTtcblxuICBjb25zdCB1cGRhdGVQYWdlSW5kaWNhdG9ycyA9IHVzZUNhbGxiYWNrKFxuICAgICh0YXJnZXQ6IEhUTUxEaXZFbGVtZW50LCBwYWdlczogbnVtYmVyKSA9PiB7XG4gICAgICBpZiAoIXNjcm9sbGFibGVSZWYuY3VycmVudCkgcmV0dXJuO1xuICAgICAgY29uc3QgZWFjaFBhZ2VXaWR0aCA9IHNjcm9sbGFibGVSZWYuY3VycmVudCEuY2xpZW50V2lkdGg7XG4gICAgICBjb25zdCBwYWdlID0gMSArIHRhcmdldC5zY3JvbGxMZWZ0IC8gZWFjaFBhZ2VXaWR0aDtcbiAgICAgIGNvbnN0IGxhc3RQYWdlUHJvZ3Jlc3MgPSBNYXRoLmZsb29yKHBhZ2VzKSArIDE7XG4gICAgICBjb25zdCBtYXhpbXVtUHJvZ3Jlc3MgPSBwYWdlcyArIDE7XG5cbiAgICAgIGNvbnN0IGRpZmZUb01heCA9IG1heGltdW1Qcm9ncmVzcyAtIGxhc3RQYWdlUHJvZ3Jlc3M7XG4gICAgICBjb25zdCBjdXJyZW50UHJvZ3Jlc3NPbkRpZmYgPSBwYWdlIC0gbGFzdFBhZ2VQcm9ncmVzcztcblxuICAgICAgaWYgKHBhZ2UgPiBsYXN0UGFnZVByb2dyZXNzKSB7XG4gICAgICAgIGNvbnN0IHAgPSBsYXN0UGFnZVByb2dyZXNzICsgY3VycmVudFByb2dyZXNzT25EaWZmIC8gZGlmZlRvTWF4O1xuICAgICAgICBzZXRDdXJyZW50UGFnZShwKTtcbiAgICAgIH0gZWxzZSBzZXRDdXJyZW50UGFnZShwYWdlKTtcbiAgICB9LFxuICAgIFtdXG4gICk7XG5cbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZShcbiAgICByZWYsXG4gICAgKCkgPT4gKHtcbiAgICAgIHJlZnJlc2hQYWdlcyxcbiAgICB9KSxcbiAgICBbXVxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFkZWZzKSByZXR1cm47XG4gICAgY29uc3QgZWwgPSBzY3JvbGxhYmxlUmVmLmN1cnJlbnQhO1xuICAgIGNvbnN0IG9uU2Nyb2xsID0gKGU6IEV2ZW50KSA9PlxuICAgICAgdXBkYXRlUGFnZUluZGljYXRvcnMoZS5jdXJyZW50VGFyZ2V0IGFzIEhUTUxEaXZFbGVtZW50LCBkZWZzLnBhZ2VzKTtcbiAgICB1cGRhdGVQYWdlSW5kaWNhdG9ycyhlbCwgZGVmcy5wYWdlcyk7XG4gICAgZWwuYWRkRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBvblNjcm9sbCwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICB9KTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBvblNjcm9sbCk7XG4gICAgfTtcbiAgfSwgW2RlZnNdKTtcblxuICBjb25zdCBwYWdlcyA9IHVzZU1lbW8oKCkgPT4gKGRlZnMgPyBkZWZzLnBhZ2VzIDogdW5kZWZpbmVkKSwgW2RlZnNdKTtcblxuICByZXR1cm4gIXBhZ2VzID8gbnVsbCA6IChcbiAgICA8UGFnaW5hdGlvbkluZGljYXRvclZpZXdcbiAgICAgIHBhZ2VzPXtwYWdlc31cbiAgICAgIHBhZ2U9e2N1cnJlbnRQYWdlfVxuICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgICAgb25DbGlja1BhZ2U9e29uQ2xpY2tQYWdlfVxuICAgICAgbW9kZT17bW9kZX1cbiAgICAgIGluZmluaXRlPXtpbmZpbml0ZX1cbiAgICAvPlxuICApO1xufVxuXG4vKipcbiAqIEEgY29vbCBjb21wb25lbnQgdG8gaW5kaWNhdGUgaG93IG1hbnkgcGFnZXMgYXJlXG4gKiovXG5jb25zdCBQYWdpbmF0aW9uSW5kaWNhdG9yID0gZm9yd2FyZFJlZihfUGFnaW5hdGlvbkluZGljYXRvcik7XG5leHBvcnQgZGVmYXVsdCBQYWdpbmF0aW9uSW5kaWNhdG9yO1xuIl0sIm1h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
|
|
254
|
+
var _default = exports.default = PaginationIndicator;
|
|
255
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJlIiwidCIsIldlYWtNYXAiLCJyIiwibiIsIl9fZXNNb2R1bGUiLCJvIiwiaSIsImYiLCJfX3Byb3RvX18iLCJkZWZhdWx0IiwiaGFzIiwiZ2V0Iiwic2V0IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJfZXh0ZW5kcyIsImFzc2lnbiIsImJpbmQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJhcHBseSIsIk1BWF9CQUxMUyIsImVhY2hCYWxsV2lkdGhFbSIsIkNFTlRFUl9HVUlERV9CQUxMIiwiUGFnaW5hdGlvbkluZGljYXRvck1vZGUiLCJleHBvcnRzIiwiUGFnaW5hdGlvbkluZGljYXRvclZpZXciLCJfcmVmIiwic2l6ZSIsInBhZ2UiLCJjdXJyZW50UGFnZSIsInBhZ2VzIiwiZGVjaW1hbFBhZ2VzIiwiY2xhc3NOYW1lIiwib25DbGlja1BhZ2UiLCJtb2RlIiwiQ0VOVEVSRUQiLCJpbmZpbml0ZSIsIm1heEJhbGxzIiwidXNlTWVtbyIsImZsb29yIiwiTWF0aCIsIm1vZHVsdXMiLCJjdXJyZW50Rmxvb3JNb2R1bHVzIiwiZXF1aXZhbGVudCIsInJhbmQiLCJyYW5kb20iLCJ0b1N0cmluZyIsInBhZ2VJbmRleCIsImNlaWwiLCJudW1CYWxscyIsImluZGV4Rm9yVGhlQmFsbHNDZW50ZXIiLCJiYWxscyIsImluZGV4Rm9yTGFzdFBhZ2VzIiwiaXNDZW50ZXJQYWdlIiwicmVzZXRQYWdlSW5kZXgiLCJsZWZ0IiwicHVzaEJhbGxzVG9SaWdodEJ5IiwicHVzaEJhbGxzVG9MZWZ0QnkiLCJwdXNoR3VpZGVUb1JpZ2h0QnkiLCJtaW4iLCJwdXNoVG9MZWZ0IiwiQXJyYXkiLCJmaWxsIiwidW5kZWZpbmVkIiwibWFwIiwiXyIsImlzTGFzdEJhbGwiLCJpc0ZpcnN0QmFsbCIsImRpYW1ldGVyIiwicGFkZGluZyIsImNyZWF0ZUVsZW1lbnQiLCJ3aWR0aCIsImNvbmNhdCIsImhlaWdodCIsIngiLCJ5IiwicngiLCJiYWxsU2l6ZSIsIlNUQVJUIiwia2V5Iiwib25DbGljayIsInBhZ2VDbGlja2VkIiwicm91bmQiLCJndWlkZUJhbGwiLCJwYWdlQmFsbHMiLCJyZXZlcnNlIiwidmVyc2lvbiIsInhtbG5zIiwic3R5bGUiLCJtaW5XaWR0aCIsImZvbnRTaXplIiwiaWQiLCJpbiIsInJlc3VsdCIsInN0ZERldmlhdGlvbiIsInZhbHVlcyIsImluMiIsImZpbHRlciIsIm1hc2siLCJvcGFjaXR5IiwiY3Vyc29yIiwiQW5pbWF0ZWRQYWdpbmF0aW9uSW5kaWNhdG9yIiwicHJvcHMiLCJwcmV2UGFnZSIsInVzZVJlZiIsInBhZ2VQcm9ncmVzcyIsInNldFBhZ2VQcm9ncmVzcyIsInVzZVN0YXRlIiwidXNlRWZmZWN0IiwiZGlmZiIsImN1cnJlbnQiLCJkaWZmUGVyU3RlcCIsImludGVydmFsIiwic2V0SW50ZXJ2YWwiLCJwcmV2IiwibmV4dCIsImNsZWFySW50ZXJ2YWwiLCJOdW1iZXIiLCJ0b0ZpeGVkIiwiZHVyYXRpb24iLCJfUGFnaW5hdGlvbkluZGljYXRvciIsIl9yZWYyIiwicmVmIiwic2Nyb2xsYWJsZVJlZiIsImVzdGltYXRlZFdpZHRoIiwic2V0Q3VycmVudFBhZ2UiLCJkZWZzIiwic2V0RGVmcyIsInJlZnJlc2hQYWdlcyIsInVzZUNhbGxiYWNrIiwibWF4V2lkdGgiLCJzY3JvbGxXaWR0aCIsImNsaWVudFdpZHRoIiwidXBkYXRlUGFnZUluZGljYXRvcnMiLCJ0YXJnZXQiLCJlYWNoUGFnZVdpZHRoIiwic2Nyb2xsTGVmdCIsImxhc3RQYWdlUHJvZ3Jlc3MiLCJtYXhpbXVtUHJvZ3Jlc3MiLCJkaWZmVG9NYXgiLCJjdXJyZW50UHJvZ3Jlc3NPbkRpZmYiLCJwIiwidXNlSW1wZXJhdGl2ZUhhbmRsZSIsImVsIiwib25TY3JvbGwiLCJjdXJyZW50VGFyZ2V0IiwiYWRkRXZlbnRMaXN0ZW5lciIsInBhc3NpdmUiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiUGFnaW5hdGlvbkluZGljYXRvciIsImZvcndhcmRSZWYiLCJfZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL1BhZ2luYXRpb25JbmRpY2F0b3IvUGFnaW5hdGlvbkluZGljYXRvci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7XG4gIENvbXBvbmVudFByb3BzLFxuICBGb3J3YXJkZWRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIFJlZk9iamVjdCxcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSBcInJlYWN0XCI7XG5cbmNvbnN0IE1BWF9CQUxMUyA9IDc7XG5jb25zdCBlYWNoQmFsbFdpZHRoRW0gPSAxLjI7XG5cbmNvbnN0IENFTlRFUl9HVUlERV9CQUxMID0gMTtcblxuZXhwb3J0IGVudW0gUGFnaW5hdGlvbkluZGljYXRvck1vZGUge1xuICAvKiogVGhpcyB3aWxsIG1ha2UgdGhlIGd1aWRlIGJhbGwgYmUga2VwdCBvbiBjZW50ZXIgICovXG4gIENFTlRFUkVELFxuXG4gIC8qKiBUaGlzIHdpbGwgbWFrZSB0aGUgZ3VpZGUgYmFsbCBtb3ZlLCB3aGlsZSB0aGUgaW5kaWNhdG9yIGJhbGxzIGtlZXAgaW4gcGxhY2UgKi9cbiAgU1RBUlQsXG59XG5leHBvcnQgZnVuY3Rpb24gUGFnaW5hdGlvbkluZGljYXRvclZpZXcoe1xuICBzaXplLFxuICBwYWdlOiBjdXJyZW50UGFnZSxcbiAgcGFnZXM6IGRlY2ltYWxQYWdlcyxcbiAgY2xhc3NOYW1lLFxuICBvbkNsaWNrUGFnZSxcbiAgbW9kZSA9IFBhZ2luYXRpb25JbmRpY2F0b3JNb2RlLkNFTlRFUkVELFxuICBpbmZpbml0ZSxcbn06IHtcbiAgc2l6ZTogbnVtYmVyO1xuICBwYWdlOiBudW1iZXI7XG4gIHBhZ2VzOiBudW1iZXI7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgb25DbGlja1BhZ2U/OiAocGFnZTogbnVtYmVyKSA9PiB2b2lkO1xuICBtb2RlPzogUGFnaW5hdGlvbkluZGljYXRvck1vZGU7XG4gIGluZmluaXRlPzogYm9vbGVhbjtcbn0pIHtcbiAgY29uc3QgbWF4QmFsbHMgPSB1c2VNZW1vKCgpID0+IChpbmZpbml0ZSA/IDUgOiBNQVhfQkFMTFMpLCBbaW5maW5pdGVdKTtcbiAgY29uc3QgcGFnZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGZsb29yID0gTWF0aC5mbG9vcihkZWNpbWFsUGFnZXMpO1xuICAgIGNvbnN0IG1vZHVsdXMgPSBkZWNpbWFsUGFnZXMgJSBmbG9vcjtcblxuICAgIGlmIChjdXJyZW50UGFnZSA+IGZsb29yKSB7XG4gICAgICBjb25zdCBjdXJyZW50Rmxvb3JNb2R1bHVzID0gY3VycmVudFBhZ2UgJSBmbG9vcjtcbiAgICAgIGNvbnN0IGVxdWl2YWxlbnQgPSAoY3VycmVudEZsb29yTW9kdWx1cyAqIDEwMCkgLyBtb2R1bHVzO1xuXG4gICAgICByZXR1cm4gZmxvb3IgKyBlcXVpdmFsZW50IC8gMTAwO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gY3VycmVudFBhZ2U7XG4gICAgfVxuICB9LCBbY3VycmVudFBhZ2UsIGRlY2ltYWxQYWdlc10pO1xuICBjb25zdCByYW5kID0gdXNlTWVtbygoKSA9PiBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKCksIFtdKTtcbiAgY29uc3QgcGFnZUluZGV4ID0gcGFnZSAtIDE7XG4gIGNvbnN0IHBhZ2VzID0gdXNlTWVtbygoKSA9PiBNYXRoLmNlaWwoZGVjaW1hbFBhZ2VzKSwgW2RlY2ltYWxQYWdlc10pO1xuICBjb25zdCBudW1CYWxscyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IG51bUJhbGxzID0gcGFnZXMgPj0gbWF4QmFsbHMgPyBtYXhCYWxscyA6IE1hdGguY2VpbChwYWdlcyk7XG5cbiAgICByZXR1cm4gbnVtQmFsbHM7XG4gIH0sIFtwYWdlc10pO1xuXG4gIGNvbnN0IGluZGV4Rm9yVGhlQmFsbHNDZW50ZXIgPSB1c2VNZW1vKFxuICAgICgpID0+IChpbmZpbml0ZSA/IG51bUJhbGxzIC0gNSA6IG51bUJhbGxzIC0gMSkgLyAyLFxuICAgIFtudW1CYWxscywgaW5maW5pdGVdXG4gICk7XG4gIGNvbnN0IGJhbGxzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgaW5kZXhGb3JMYXN0UGFnZXMgPSBwYWdlcyArIDEgLSBpbmRleEZvclRoZUJhbGxzQ2VudGVyO1xuICAgIC8qKlxuICAgICAqIElzIHRoZSBwYWdlIGluZGV4IChwb3NpdGlvbiBvZiB0aGUgY2VudGVyKVxuICAgICAqIGFmdGVyIHRoZSBmaXJzdCBwYWdlcyBhbmRcbiAgICAgKiBiZWZvcmUgdGhlIGxhc3QgcGFnZXMgKi9cbiAgICBjb25zdCBpc0NlbnRlclBhZ2UgPVxuICAgICAgbnVtQmFsbHMgPj0gbWF4QmFsbHMgJiZcbiAgICAgIHBhZ2VJbmRleCA+IGluZGV4Rm9yVGhlQmFsbHNDZW50ZXIgJiZcbiAgICAgIHBhZ2VJbmRleCA8IGluZGV4Rm9yTGFzdFBhZ2VzIC0gMTtcbiAgICBsZXQgbW9kdWx1cyA9XG4gICAgICBwYWdlSW5kZXggJVxuICAgICAgKDEgKyAoaW5kZXhGb3JUaGVCYWxsc0NlbnRlciAtIE1hdGguZmxvb3IoaW5kZXhGb3JUaGVCYWxsc0NlbnRlcikpKTtcbiAgICBjb25zdCByZXNldFBhZ2VJbmRleCA9IGlzQ2VudGVyUGFnZVxuICAgICAgPyBpbmRleEZvclRoZUJhbGxzQ2VudGVyICsgbW9kdWx1c1xuICAgICAgOiBwYWdlcyA8IG1heEJhbGxzXG4gICAgICA/IHBhZ2VJbmRleFxuICAgICAgOiBwYWdlSW5kZXggPj0gaW5kZXhGb3JMYXN0UGFnZXMgLSAxXG4gICAgICA/IG51bUJhbGxzIC0gKHBhZ2VzIC0gcGFnZUluZGV4KVxuICAgICAgOiBwYWdlSW5kZXg7XG4gICAgY29uc3QgbGVmdCA9IGVhY2hCYWxsV2lkdGhFbSAqIHJlc2V0UGFnZUluZGV4O1xuICAgIGNvbnN0IHsgcHVzaEJhbGxzVG9SaWdodEJ5LCBwdXNoQmFsbHNUb0xlZnRCeSwgcHVzaEd1aWRlVG9SaWdodEJ5IH0gPVxuICAgICAgbW9kZSA9PT0gUGFnaW5hdGlvbkluZGljYXRvck1vZGUuQ0VOVEVSRURcbiAgICAgICAgPyB7XG4gICAgICAgICAgICBwdXNoQmFsbHNUb1JpZ2h0Qnk6IE1hdGgubWluKHBhZ2VzLCBtYXhCYWxscykgKiBlYWNoQmFsbFdpZHRoRW0sXG4gICAgICAgICAgICBwdXNoQmFsbHNUb0xlZnRCeTogbGVmdCxcbiAgICAgICAgICAgIHB1c2hHdWlkZVRvUmlnaHRCeTogMCxcbiAgICAgICAgICB9XG4gICAgICAgIDoge1xuICAgICAgICAgICAgcHVzaEJhbGxzVG9SaWdodEJ5OiAoZWFjaEJhbGxXaWR0aEVtIC0gMC41KSAvIDIsXG4gICAgICAgICAgICBwdXNoQmFsbHNUb0xlZnRCeTogMCxcbiAgICAgICAgICAgIHB1c2hHdWlkZVRvUmlnaHRCeTogbGVmdCxcbiAgICAgICAgICB9O1xuICAgIGxldCBwdXNoVG9MZWZ0OiBudW1iZXIgPSAwO1xuICAgIHJldHVybiBuZXcgQXJyYXkoQ0VOVEVSX0dVSURFX0JBTEwgKyBudW1CYWxscylcbiAgICAgIC5maWxsKHVuZGVmaW5lZClcbiAgICAgIC5tYXAoKF8sIGkpID0+IHtcbiAgICAgICAgY29uc3QgaXNMYXN0QmFsbCA9IGkgPT09IG51bUJhbGxzIC0gMTtcbiAgICAgICAgY29uc3QgaXNGaXJzdEJhbGwgPSBpID09PSAwO1xuXG4gICAgICAgIGlmIChpID09PSBudW1CYWxscykge1xuICAgICAgICAgIGNvbnN0IGRpYW1ldGVyID0gMC40NSAqIDI7XG4gICAgICAgICAgY29uc3QgcGFkZGluZyA9IChlYWNoQmFsbFdpZHRoRW0gLSBkaWFtZXRlcikgLyAyO1xuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8cmVjdFxuICAgICAgICAgICAgICBmaWxsPVwiI2ZmZlwiXG4gICAgICAgICAgICAgIHdpZHRoPXtgJHtkaWFtZXRlcn1lbWB9XG4gICAgICAgICAgICAgIGhlaWdodD17YCR7ZGlhbWV0ZXJ9ZW1gfVxuICAgICAgICAgICAgICB4PXtgJHtcbiAgICAgICAgICAgICAgICBwdXNoQmFsbHNUb1JpZ2h0QnkgLSBwYWRkaW5nICsgcHVzaEd1aWRlVG9SaWdodEJ5IC0gcHVzaFRvTGVmdFxuICAgICAgICAgICAgICB9ZW1gfVxuICAgICAgICAgICAgICB5PXtgJHtwYWRkaW5nfWVtYH1cbiAgICAgICAgICAgICAgcng9e2Ake2RpYW1ldGVyIC8gMn1lbWB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBiYWxsU2l6ZSA9XG4gICAgICAgICAgbnVtQmFsbHMgPCBtYXhCYWxsc1xuICAgICAgICAgICAgPyAwLjVcbiAgICAgICAgICAgIDogcGFnZSA8PSBpbmRleEZvclRoZUJhbGxzQ2VudGVyICsgMSAmJiBpc0xhc3RCYWxsXG4gICAgICAgICAgICA/IDBcbiAgICAgICAgICAgIDogcGFnZUluZGV4ID49IGluZGV4Rm9yTGFzdFBhZ2VzIC0gMSAmJiBpc0ZpcnN0QmFsbFxuICAgICAgICAgICAgPyAwXG4gICAgICAgICAgICA6IGlzQ2VudGVyUGFnZVxuICAgICAgICAgICAgPyBpc0ZpcnN0QmFsbFxuICAgICAgICAgICAgICA/IDAuNSAtIG1vZHVsdXMgKiAwLjVcbiAgICAgICAgICAgICAgOiBpc0xhc3RCYWxsXG4gICAgICAgICAgICAgID8gbW9kdWx1cyAqIDAuNVxuICAgICAgICAgICAgICA6IDAuNVxuICAgICAgICAgICAgOiAwLjU7XG5cbiAgICAgICAgaWYgKGkgPT09IDAgJiYgbW9kZSA9PT0gUGFnaW5hdGlvbkluZGljYXRvck1vZGUuU1RBUlQpXG4gICAgICAgICAgcHVzaFRvTGVmdCA9ICgwLjUgLSBiYWxsU2l6ZSkgKiAyLjQ7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8cmVjdFxuICAgICAgICAgICAga2V5PXtgZ3VpZGUtJHtpfWB9XG4gICAgICAgICAgICB3aWR0aD17YCR7YmFsbFNpemUgKiAxLjJ9ZW1gfVxuICAgICAgICAgICAgaGVpZ2h0PXtgJHtiYWxsU2l6ZSAqIDEuMn1lbWB9XG4gICAgICAgICAgICB4PXtgJHtcbiAgICAgICAgICAgICAgcHVzaEJhbGxzVG9SaWdodEJ5ICtcbiAgICAgICAgICAgICAgaSAqIGVhY2hCYWxsV2lkdGhFbSAtXG4gICAgICAgICAgICAgIHB1c2hCYWxsc1RvTGVmdEJ5IC1cbiAgICAgICAgICAgICAgcHVzaFRvTGVmdFxuICAgICAgICAgICAgfWVtYH1cbiAgICAgICAgICAgIHk9e2AkeyhlYWNoQmFsbFdpZHRoRW0gLSBiYWxsU2l6ZSAqIDEuMikgLyAyfWVtYH1cbiAgICAgICAgICAgIHJ4PXtgJHsoYmFsbFNpemUgKiAxLjIpIC8gMn1lbWB9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgIGlmIChvbkNsaWNrUGFnZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhZ2VDbGlja2VkID1cbiAgICAgICAgICAgICAgICAgICghaXNDZW50ZXJQYWdlXG4gICAgICAgICAgICAgICAgICAgID8gcGFnZUluZGV4ID49IGluZGV4Rm9yTGFzdFBhZ2VzIC0gMVxuICAgICAgICAgICAgICAgICAgICAgID8gTWF0aC5mbG9vcihwYWdlKSAtIHJlc2V0UGFnZUluZGV4IC0gMVxuICAgICAgICAgICAgICAgICAgICAgIDogMFxuICAgICAgICAgICAgICAgICAgICA6IE1hdGguZmxvb3IocGFnZSkgLSAoaW5kZXhGb3JUaGVCYWxsc0NlbnRlciArIDEpKSArXG4gICAgICAgICAgICAgICAgICAxICtcbiAgICAgICAgICAgICAgICAgIGk7XG4gICAgICAgICAgICAgICAgb25DbGlja1BhZ2UoTWF0aC5yb3VuZChwYWdlQ2xpY2tlZCkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgfSwgW2luZGV4Rm9yVGhlQmFsbHNDZW50ZXIsIHBhZ2VJbmRleCwgcGFnZXNdKTtcbiAgY29uc3QgW2d1aWRlQmFsbCwgLi4ucGFnZUJhbGxzXSA9IGJhbGxzLnJldmVyc2UoKTtcbiAgbGV0IHdpZHRoID0gZWFjaEJhbGxXaWR0aEVtICogTWF0aC5taW4ocGFnZXMsIG1heEJhbGxzKSAqIDI7XG4gIGlmIChtb2RlID09PSBQYWdpbmF0aW9uSW5kaWNhdG9yTW9kZS5TVEFSVCkgd2lkdGggLz0gMjtcblxuICByZXR1cm4gKFxuICAgIDxzdmdcbiAgICAgIHZlcnNpb249XCIxLjFcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgIHN0eWxlPXt7XG4gICAgICAgIHdpZHRoOiBgJHt3aWR0aH1lbWAsXG4gICAgICAgIG1pbldpZHRoOiBgJHt3aWR0aH1lbWAsXG4gICAgICAgIGhlaWdodDogXCIxLjJlbVwiLFxuICAgICAgICBmb250U2l6ZTogYCR7c2l6ZX1weGAsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxmaWx0ZXIgaWQ9e2Bnb28tJHtyYW5kfWB9PlxuICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgaW49XCJTb3VyY2VHcmFwaGljXCIgcmVzdWx0PVwiYmx1clwiIHN0ZERldmlhdGlvbj1cIjVcIiAvPlxuICAgICAgICA8ZmVDb2xvck1hdHJpeFxuICAgICAgICAgIGluPVwiYmx1clwiXG4gICAgICAgICAgbW9kZT1cIm1hdHJpeFwiXG4gICAgICAgICAgdmFsdWVzPVwiMSAwIDAgMCAwICAwIDEgMCAwIDAgIDAgMCAxIDAgMCAgMCAwIDAgMTggLTdcIlxuICAgICAgICAgIHJlc3VsdD1cImdvb1wiXG4gICAgICAgIC8+XG4gICAgICAgIDxmZUJsZW5kIGluMj1cImdvb1wiIGluPVwiU291cmNlR3JhcGhpY1wiIHJlc3VsdD1cIm1peFwiIC8+XG4gICAgICA8L2ZpbHRlcj5cbiAgICAgIDxtYXNrIGlkPXtgbWFzay0ke3JhbmR9YH0+XG4gICAgICAgIDxnIGZpbHRlcj17YHVybCgjJHtgZ29vLSR7cmFuZH1gfSlgfSBmaWxsPVwiI2ZmZlwiPlxuICAgICAgICAgIHtbcGFnZUJhbGxzXX1cbiAgICAgICAgICB7Z3VpZGVCYWxsfVxuICAgICAgICA8L2c+XG4gICAgICA8L21hc2s+XG4gICAgICA8cmVjdFxuICAgICAgICB4PVwiMFwiXG4gICAgICAgIHk9XCIwXCJcbiAgICAgICAgbWFzaz17YHVybCgjJHtgbWFzay0ke3JhbmR9YH0pYH1cbiAgICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICAgIHN0eWxlPXt7IGZpbGw6IFwidmFyKC0tZGlnaXRhbC1ibHVlKVwiIH19XG4gICAgICA+PC9yZWN0PlxuICAgICAge29uQ2xpY2tQYWdlICYmIChcbiAgICAgICAgPGcgb3BhY2l0eT17MH0gc3R5bGU9e3sgY3Vyc29yOiBcInBvaW50ZXJcIiB9fT5cbiAgICAgICAgICB7cGFnZUJhbGxzfVxuICAgICAgICA8L2c+XG4gICAgICApfVxuICAgIDwvc3ZnPlxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gQW5pbWF0ZWRQYWdpbmF0aW9uSW5kaWNhdG9yKFxuICBwcm9wczogQ29tcG9uZW50UHJvcHM8dHlwZW9mIFBhZ2luYXRpb25JbmRpY2F0b3JWaWV3PiAmIHtcbiAgICBkdXJhdGlvbjogbnVtYmVyO1xuICB9XG4pIHtcbiAgY29uc3QgcHJldlBhZ2UgPSB1c2VSZWYocHJvcHMucGFnZSk7XG4gIGNvbnN0IFtwYWdlUHJvZ3Jlc3MsIHNldFBhZ2VQcm9ncmVzc10gPSB1c2VTdGF0ZShwcm9wcy5wYWdlKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBkaWZmID0gcHJvcHMucGFnZSAtIHByZXZQYWdlLmN1cnJlbnQ7XG4gICAgY29uc3QgZGlmZlBlclN0ZXAgPSBkaWZmIC8gNjA7XG5cbiAgICBjb25zdCBpbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgIHNldFBhZ2VQcm9ncmVzcygocHJldikgPT4ge1xuICAgICAgICBjb25zdCBuZXh0ID0gcHJldiArIGRpZmZQZXJTdGVwO1xuICAgICAgICBpZiAoZGlmZiA8IDApIHtcbiAgICAgICAgICBpZiAobmV4dCA8PSBwcm9wcy5wYWdlKSB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy5wYWdlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAobmV4dCA+PSBwcm9wcy5wYWdlKSB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy5wYWdlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gTnVtYmVyKG5leHQudG9GaXhlZCgyKSk7XG4gICAgICB9KTtcbiAgICB9LCBwcm9wcy5kdXJhdGlvbiAvIDYwKTtcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBwcmV2UGFnZS5jdXJyZW50ID0gcHJvcHMucGFnZTtcbiAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpO1xuICAgIH07XG4gIH0sIFtwcm9wcy5wYWdlXSk7XG5cbiAgcmV0dXJuIDxQYWdpbmF0aW9uSW5kaWNhdG9yVmlldyB7Li4ucHJvcHN9IHBhZ2U9e3BhZ2VQcm9ncmVzc30gLz47XG59XG5cbmZ1bmN0aW9uIF9QYWdpbmF0aW9uSW5kaWNhdG9yKFxuICB7XG4gICAgc2Nyb2xsYWJsZVJlZixcbiAgICBlc3RpbWF0ZWRXaWR0aCxcbiAgICBzaXplLFxuICAgIGNsYXNzTmFtZSA9IFwiXCIsXG4gICAgb25DbGlja1BhZ2UsXG4gICAgbW9kZSxcbiAgICBpbmZpbml0ZSxcbiAgfToge1xuICAgIHNjcm9sbGFibGVSZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD47XG4gICAgZXN0aW1hdGVkV2lkdGg/OiBudW1iZXI7XG4gICAgc2l6ZTogbnVtYmVyO1xuICAgIGNsYXNzTmFtZT86IHN0cmluZztcbiAgICBvbkNsaWNrUGFnZT86IChwYWdlOiBudW1iZXIpID0+IHZvaWQ7XG4gIH0gJiBQaWNrPENvbXBvbmVudFByb3BzPHR5cGVvZiBQYWdpbmF0aW9uSW5kaWNhdG9yVmlldz4sIFwibW9kZVwiIHwgXCJpbmZpbml0ZVwiPixcbiAgcmVmOiBGb3J3YXJkZWRSZWY8e1xuICAgIHJlZnJlc2hQYWdlczogKCkgPT4gdm9pZDtcbiAgfT5cbikge1xuICBjb25zdCBbY3VycmVudFBhZ2UsIHNldEN1cnJlbnRQYWdlXSA9IHVzZVN0YXRlKDEpO1xuXG4gIGNvbnN0IFtkZWZzLCBzZXREZWZzXSA9XG4gICAgdXNlU3RhdGU8e1xuICAgICAgcGFnZXM6IG51bWJlcjtcbiAgICB9PigpO1xuXG4gIGNvbnN0IHJlZnJlc2hQYWdlcyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAoIXNjcm9sbGFibGVSZWYuY3VycmVudCkgcmV0dXJuO1xuICAgIGNvbnN0IG1heFdpZHRoID1cbiAgICAgIGVzdGltYXRlZFdpZHRoID09PSB1bmRlZmluZWRcbiAgICAgICAgPyBzY3JvbGxhYmxlUmVmLmN1cnJlbnQhLnNjcm9sbFdpZHRoXG4gICAgICAgIDogZXN0aW1hdGVkV2lkdGg7XG5cbiAgICBjb25zdCBwYWdlcyA9IG1heFdpZHRoIC8gc2Nyb2xsYWJsZVJlZi5jdXJyZW50IS5jbGllbnRXaWR0aDtcbiAgICBpZiAocGFnZXMgPiAxKVxuICAgICAgc2V0RGVmcyh7XG4gICAgICAgIHBhZ2VzOiBpbmZpbml0ZSA/IHBhZ2VzICsgMiA6IHBhZ2VzLFxuICAgICAgfSk7XG4gIH0sIFtlc3RpbWF0ZWRXaWR0aCwgaW5maW5pdGVdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4gcmVmcmVzaFBhZ2VzKCksIFtyZWZyZXNoUGFnZXNdKTtcblxuICBjb25zdCB1cGRhdGVQYWdlSW5kaWNhdG9ycyA9IHVzZUNhbGxiYWNrKFxuICAgICh0YXJnZXQ6IEhUTUxEaXZFbGVtZW50LCBwYWdlczogbnVtYmVyKSA9PiB7XG4gICAgICBpZiAoIXNjcm9sbGFibGVSZWYuY3VycmVudCkgcmV0dXJuO1xuICAgICAgY29uc3QgZWFjaFBhZ2VXaWR0aCA9IHNjcm9sbGFibGVSZWYuY3VycmVudCEuY2xpZW50V2lkdGg7XG4gICAgICBjb25zdCBwYWdlID0gMSArIHRhcmdldC5zY3JvbGxMZWZ0IC8gZWFjaFBhZ2VXaWR0aDtcbiAgICAgIGNvbnN0IGxhc3RQYWdlUHJvZ3Jlc3MgPSBNYXRoLmZsb29yKHBhZ2VzKSArIDE7XG4gICAgICBjb25zdCBtYXhpbXVtUHJvZ3Jlc3MgPSBwYWdlcyArIDE7XG5cbiAgICAgIGNvbnN0IGRpZmZUb01heCA9IG1heGltdW1Qcm9ncmVzcyAtIGxhc3RQYWdlUHJvZ3Jlc3M7XG4gICAgICBjb25zdCBjdXJyZW50UHJvZ3Jlc3NPbkRpZmYgPSBwYWdlIC0gbGFzdFBhZ2VQcm9ncmVzcztcblxuICAgICAgaWYgKHBhZ2UgPiBsYXN0UGFnZVByb2dyZXNzKSB7XG4gICAgICAgIGNvbnN0IHAgPSBsYXN0UGFnZVByb2dyZXNzICsgY3VycmVudFByb2dyZXNzT25EaWZmIC8gZGlmZlRvTWF4O1xuICAgICAgICBzZXRDdXJyZW50UGFnZShwKTtcbiAgICAgIH0gZWxzZSBzZXRDdXJyZW50UGFnZShwYWdlKTtcbiAgICB9LFxuICAgIFtdXG4gICk7XG5cbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZShcbiAgICByZWYsXG4gICAgKCkgPT4gKHtcbiAgICAgIHJlZnJlc2hQYWdlcyxcbiAgICB9KSxcbiAgICBbXVxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFkZWZzKSByZXR1cm47XG4gICAgY29uc3QgZWwgPSBzY3JvbGxhYmxlUmVmLmN1cnJlbnQhO1xuICAgIGNvbnN0IG9uU2Nyb2xsID0gKGU6IEV2ZW50KSA9PlxuICAgICAgdXBkYXRlUGFnZUluZGljYXRvcnMoZS5jdXJyZW50VGFyZ2V0IGFzIEhUTUxEaXZFbGVtZW50LCBkZWZzLnBhZ2VzKTtcbiAgICB1cGRhdGVQYWdlSW5kaWNhdG9ycyhlbCwgZGVmcy5wYWdlcyk7XG4gICAgZWwuYWRkRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBvblNjcm9sbCwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICB9KTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBvblNjcm9sbCk7XG4gICAgfTtcbiAgfSwgW2RlZnNdKTtcblxuICBjb25zdCBwYWdlcyA9IHVzZU1lbW8oKCkgPT4gKGRlZnMgPyBkZWZzLnBhZ2VzIDogdW5kZWZpbmVkKSwgW2RlZnNdKTtcblxuICByZXR1cm4gIXBhZ2VzID8gbnVsbCA6IChcbiAgICA8UGFnaW5hdGlvbkluZGljYXRvclZpZXdcbiAgICAgIHBhZ2VzPXtwYWdlc31cbiAgICAgIHBhZ2U9e2N1cnJlbnRQYWdlfVxuICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgICAgb25DbGlja1BhZ2U9e29uQ2xpY2tQYWdlfVxuICAgICAgbW9kZT17bW9kZX1cbiAgICAgIGluZmluaXRlPXtpbmZpbml0ZX1cbiAgICAvPlxuICApO1xufVxuXG4vKipcbiAqIEEgY29vbCBjb21wb25lbnQgdG8gaW5kaWNhdGUgaG93IG1hbnkgcGFnZXMgYXJlXG4gKiovXG5jb25zdCBQYWdpbmF0aW9uSW5kaWNhdG9yID0gZm9yd2FyZFJlZihfUGFnaW5hdGlvbkluZGljYXRvcik7XG5leHBvcnQgZGVmYXVsdCBQYWdpbmF0aW9uSW5kaWNhdG9yO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFXZSxTQUFBRCx3QkFBQUUsQ0FBQSxFQUFBQyxDQUFBLDZCQUFBQyxPQUFBLE1BQUFDLENBQUEs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
|
|
@@ -10,5 +10,5 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
12
|
var _PaginationIndicator = _interopRequireDefault(require("./PaginationIndicator"));
|
|
13
|
-
function _interopRequireDefault(
|
|
14
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfUGFnaW5hdGlvbkluZGljYXRvciIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvUGFnaW5hdGlvbkluZGljYXRvci9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgZGVmYXVsdCB9IGZyb20gJy4vUGFnaW5hdGlvbkluZGljYXRvcic7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsb0JBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUFnRCxTQUFBRCx1QkFBQUUsQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -7,13 +7,15 @@ exports.calculateDistanceRelativeToBounds = calculateDistanceRelativeToBounds;
|
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
exports.givenTheRelativePositionHowMuchToRotate = givenTheRelativePositionHowMuchToRotate;
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
-
var _ParallaxModule = _interopRequireDefault(require("./Parallax.module.scss"));
|
|
11
10
|
var _lodash = require("lodash");
|
|
11
|
+
var _ParallaxModule = _interopRequireDefault(require("./Parallax.module.scss"));
|
|
12
12
|
var _helpers = require("./math/helpers");
|
|
13
|
-
|
|
14
|
-
function
|
|
15
|
-
function _interopRequireWildcard(
|
|
16
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (
|
|
13
|
+
const _excluded = ["children", "className", "active", "onClick", "reflection", "maxParallax"];
|
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
16
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
17
|
+
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
18
|
+
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
|
|
17
19
|
const MAXIMUM_PARALLAX = {
|
|
18
20
|
x: 20,
|
|
19
21
|
y: 20
|
|
@@ -31,14 +33,14 @@ function givenTheRelativePositionHowMuchToRotate(relativePosition, maxRotation)
|
|
|
31
33
|
}
|
|
32
34
|
function _Parallax(_ref, ref) {
|
|
33
35
|
let {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
36
|
+
children,
|
|
37
|
+
className = "",
|
|
38
|
+
active,
|
|
39
|
+
onClick,
|
|
40
|
+
reflection,
|
|
41
|
+
maxParallax = MAXIMUM_PARALLAX
|
|
42
|
+
} = _ref,
|
|
43
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
42
44
|
const parallaxableRef = (0, _react.useRef)(null);
|
|
43
45
|
const reflectionRef = (0, _react.useRef)(null);
|
|
44
46
|
const multiplierRef = (0, _react.useRef)(1);
|
|
@@ -49,7 +51,7 @@ function _Parallax(_ref, ref) {
|
|
|
49
51
|
if (active && !initialPositionRef.current) {
|
|
50
52
|
initialPositionRef.current = getComputedStyle(el).transform;
|
|
51
53
|
if (initialPositionRef.current === "none") initialPositionRef.current = "";
|
|
52
|
-
el.style.transform =
|
|
54
|
+
el.style.transform = "".concat(initialPositionRef.current, " rotateX(0deg) rotateY(0deg) translateZ(0px)");
|
|
53
55
|
}
|
|
54
56
|
// eslint-disable-next-line
|
|
55
57
|
}, [active]);
|
|
@@ -71,11 +73,11 @@ function _Parallax(_ref, ref) {
|
|
|
71
73
|
const howMuchToRotateX = givenTheRelativePositionHowMuchToRotate(distanceOffBottom, maxParallax.x) * multiplierRef.current;
|
|
72
74
|
const howMuchToOpacify = Math.abs(Math.abs(distanceOffBottom - 0.5) / 0.5);
|
|
73
75
|
const howMuchToOpacifyHorizontal = Math.max(Math.abs(Math.abs(distanceOffRight - 0.5) / 0.5), Math.abs(Math.abs(distanceOffBottom - 0.5) / 0.5));
|
|
74
|
-
el.style.transform =
|
|
76
|
+
el.style.transform = "".concat(initialPositionRef.current, " rotateY(").concat(howMuchToRotateY, "deg) rotateX(").concat(-howMuchToRotateX, "deg) translateZ(").concat(multiplierRef.current === 1 ? 0 : -30, "px)");
|
|
75
77
|
if (reflectionRef.current) {
|
|
76
|
-
reflectionRef.current.style.left =
|
|
77
|
-
reflectionRef.current.style.top =
|
|
78
|
-
reflectionRef.current.style.opacity =
|
|
78
|
+
reflectionRef.current.style.left = "".concat((1 - distanceOffRight) * 100, "%");
|
|
79
|
+
reflectionRef.current.style.top = "".concat((1 - distanceOffBottom) * 100, "%");
|
|
80
|
+
reflectionRef.current.style.opacity = "".concat(Math.min(howMuchToOpacify, howMuchToOpacifyHorizontal));
|
|
79
81
|
}
|
|
80
82
|
};
|
|
81
83
|
const handler = (0, _lodash.throttle)(_ref2 => {
|
|
@@ -133,7 +135,7 @@ function _Parallax(_ref, ref) {
|
|
|
133
135
|
angle: -_beta
|
|
134
136
|
})));
|
|
135
137
|
}
|
|
136
|
-
el.style.transform =
|
|
138
|
+
el.style.transform = "matrix3d(".concat(_inverseMatrix.join(","), ") rotateX(").concat(-_beta, "deg) rotateY(").concat(_gamma, "deg)");
|
|
137
139
|
};
|
|
138
140
|
window.addEventListener("deviceorientation", orientationListener);
|
|
139
141
|
window.addEventListener("touchend", () => {
|
|
@@ -152,14 +154,14 @@ function _Parallax(_ref, ref) {
|
|
|
152
154
|
el.removeEventListener("touchstart", mouseDownHandler);
|
|
153
155
|
el.removeEventListener("touchend", mouseUpHandler);
|
|
154
156
|
// el.style.transform = initialPositionRef.current!;
|
|
155
|
-
el.style.transform =
|
|
157
|
+
el.style.transform = "rotateX(0deg) rotateY(0deg) translateZ(0px)";
|
|
156
158
|
};
|
|
157
159
|
}
|
|
158
160
|
}, [active]);
|
|
159
161
|
return /*#__PURE__*/_react.default.createElement("div", _extends({
|
|
160
162
|
onClick: onClick,
|
|
161
163
|
ref: parallaxableRef,
|
|
162
|
-
className:
|
|
164
|
+
className: "".concat(_ParallaxModule.default.parallax, " ").concat(className)
|
|
163
165
|
}, props), children, reflection && /*#__PURE__*/_react.default.createElement("div", {
|
|
164
166
|
ref: reflectionRef,
|
|
165
167
|
className: _ParallaxModule.default.reflection
|
|
@@ -170,6 +172,5 @@ function _Parallax(_ref, ref) {
|
|
|
170
172
|
* It holds a children and animates a tilt effect relative to mouse position
|
|
171
173
|
**/
|
|
172
174
|
const Parallax = /*#__PURE__*/(0, _react.forwardRef)(_Parallax);
|
|
173
|
-
var _default = Parallax;
|
|
174
|
-
exports.default = _default;
|
|
175
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfUGFyYWxsYXhNb2R1bGUiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2xvZGFzaCIsIl9oZWxwZXJzIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIl9leHRlbmRzIiwiYXNzaWduIiwiYmluZCIsInRhcmdldCIsImkiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJzb3VyY2UiLCJhcHBseSIsIk1BWElNVU1fUEFSQUxMQVgiLCJ4IiwieSIsImNhbGN1bGF0ZURpc3RhbmNlUmVsYXRpdmVUb0JvdW5kcyIsIm1vdXNlUG9zaXRpb24iLCJlbGVtZW50SW5pdGlhbFBvc2l0aW9uIiwiZWxlbWVudFNpemVEaW1lbnNpb24iLCJub3JtYWxpemVJbml0aWFsUG9zaXRpb24iLCJkb05vdEFsbG93R29pbmdCZXlvbmRMb3dlckxpbWl0IiwiTWF0aCIsIm1heCIsImRvTm90QWxsb3dIb2luZ0JleW9uZEhpZ2hlckxpbWl0IiwibWluIiwidGhyZWVSdWxlIiwicmVzdWx0Iiwicm91bmQiLCJnaXZlblRoZVJlbGF0aXZlUG9zaXRpb25Ib3dNdWNoVG9Sb3RhdGUiLCJyZWxhdGl2ZVBvc2l0aW9uIiwibWF4Um90YXRpb24iLCJfUGFyYWxsYXgiLCJfcmVmIiwicmVmIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJhY3RpdmUiLCJvbkNsaWNrIiwicmVmbGVjdGlvbiIsIm1heFBhcmFsbGF4IiwicHJvcHMiLCJwYXJhbGxheGFibGVSZWYiLCJ1c2VSZWYiLCJyZWZsZWN0aW9uUmVmIiwibXVsdGlwbGllclJlZiIsImluaXRpYWxQb3NpdGlvblJlZiIsInVuZGVmaW5lZCIsInVzZUVmZmVjdCIsImN1cnJlbnQiLCJlbCIsImdldENvbXB1dGVkU3R5bGUiLCJ0cmFuc2Zvcm0iLCJzdHlsZSIsInVwZGF0ZVBvc2l0aW9ucyIsInJlbGF0aXZlVG9YIiwicmVsYXRpdmVUb1kiLCJyZWN0IiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0Iiwid2lkdGgiLCJ4MCIsInhXIiwiaGVpZ2h0IiwieTAiLCJ5SCIsImxlZnQiLCJjbGllbnRXaWR0aCIsInRvcCIsImNsaWVudEhlaWdodCIsImRpc3RhbmNlT2ZmUmlnaHQiLCJkaXN0YW5jZU9mZkJvdHRvbSIsImhvd011Y2hUb1JvdGF0ZVkiLCJob3dNdWNoVG9Sb3RhdGVYIiwiaG93TXVjaFRvT3BhY2lmeSIsImFicyIsImhvd011Y2hUb09wYWNpZnlIb3Jpem9udGFsIiwib3BhY2l0eSIsImhhbmRsZXIiLCJ0aHJvdHRsZSIsIl9yZWYyIiwidG91Y2hIYW5kbGVyIiwiX3JlZjMiLCJ0b3VjaGVzIiwicGFnZVgiLCJwYWdlWSIsIm1vdXNlRG93bkhhbmRsZXIiLCJtb3VzZVVwSGFuZGxlciIsIndpbmRvdyIsImFkZEV2ZW50TGlzdGVuZXIiLCJfaW52ZXJzZU1hdHJpeCIsIl9saW1pdHMiLCJiZXRhIiwiZ2FtbWEiLCJvcmllbnRhdGlvbkxpc3RlbmVyIiwiX3JlZjQiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwib2Zmc2V0IiwiX2JldGEiLCJfZ2FtbWEiLCJmbGF0dGVuTWF0cml4IiwiaW52ZXJ0TWF0cml4IiwiZ2VuZXJhdGVNYXRyaXhGcm9tT3BlcmF0aW9ucyIsInR5cGUiLCJhbmdsZSIsImpvaW4iLCJjcmVhdGVFbGVtZW50IiwiU3R5bGVzIiwicGFyYWxsYXgiLCJQYXJhbGxheCIsImZvcndhcmRSZWYiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9QYXJhbGxheC9QYXJhbGxheC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7XG4gIERldGFpbGVkSFRNTFByb3BzLFxuICBGb3J3YXJkZWRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIEhUTUxBdHRyaWJ1dGVzLFxuICBNdXRhYmxlUmVmT2JqZWN0LFxuICBQcm9wc1dpdGhDaGlsZHJlbixcbiAgdXNlRWZmZWN0LFxuICB1c2VSZWYsXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFN0eWxlcyBmcm9tIFwiLi9QYXJhbGxheC5tb2R1bGUuc2Nzc1wiO1xuaW1wb3J0IHsgdGhyb3R0bGUgfSBmcm9tIFwibG9kYXNoXCI7XG5pbXBvcnQge1xuICBmbGF0dGVuTWF0cml4LFxuICBnZW5lcmF0ZU1hdHJpeEZyb21PcGVyYXRpb25zLFxuICBpbnZlcnRNYXRyaXgsXG59IGZyb20gXCIuL21hdGgvaGVscGVyc1wiO1xuXG5jb25zdCBNQVhJTVVNX1BBUkFMTEFYID0ge1xuICB4OiAyMCxcbiAgeTogMjAsXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gY2FsY3VsYXRlRGlzdGFuY2VSZWxhdGl2ZVRvQm91bmRzKFxuICBtb3VzZVBvc2l0aW9uOiBudW1iZXIsXG4gIGVsZW1lbnRJbml0aWFsUG9zaXRpb246IG51bWJlcixcbiAgZWxlbWVudFNpemVEaW1lbnNpb246IG51bWJlclxuKSB7XG4gIGNvbnN0IG5vcm1hbGl6ZUluaXRpYWxQb3NpdGlvbiA9IG1vdXNlUG9zaXRpb24gLSBlbGVtZW50SW5pdGlhbFBvc2l0aW9uO1xuICBjb25zdCBkb05vdEFsbG93R29pbmdCZXlvbmRMb3dlckxpbWl0ID0gTWF0aC5tYXgobm9ybWFsaXplSW5pdGlhbFBvc2l0aW9uLCAwKTtcbiAgY29uc3QgZG9Ob3RBbGxvd0hvaW5nQmV5b25kSGlnaGVyTGltaXQgPSBNYXRoLm1pbihcbiAgICBkb05vdEFsbG93R29pbmdCZXlvbmRMb3dlckxpbWl0LFxuICAgIGVsZW1lbnRTaXplRGltZW5zaW9uXG4gICk7XG4gIGNvbnN0IHRocmVlUnVsZSA9XG4gICAgKGRvTm90QWxsb3dIb2luZ0JleW9uZEhpZ2hlckxpbWl0ICogMTAwKSAvIGVsZW1lbnRTaXplRGltZW5zaW9uO1xuICBjb25zdCByZXN1bHQgPSBNYXRoLnJvdW5kKHRocmVlUnVsZSkgLyAxMDA7XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnaXZlblRoZVJlbGF0aXZlUG9zaXRpb25Ib3dNdWNoVG9Sb3RhdGUoXG4gIHJlbGF0aXZlUG9zaXRpb246IG51bWJlcixcbiAgbWF4Um90YXRpb246IG51bWJlclxuKSB7XG4gIHJldHVybiByZWxhdGl2ZVBvc2l0aW9uICogbWF4Um90YXRpb24gLSBtYXhSb3RhdGlvbiAvIDI7XG59XG5cbnR5cGUgUHJvcHMgPSBQcm9wc1dpdGhDaGlsZHJlbjx7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgYWN0aXZlOiBib29sZWFuO1xuICBvbkNsaWNrPzogKGU6IGFueSkgPT4gdm9pZDtcbiAgcmVmbGVjdGlvbj86IGJvb2xlYW47XG4gIG1heFBhcmFsbGF4Pzoge1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG4gIH07XG59PiAmXG4gIERldGFpbGVkSFRNTFByb3BzPEhUTUxBdHRyaWJ1dGVzPEhUTUxEaXZFbGVtZW50PiwgSFRNTERpdkVsZW1lbnQ+O1xuXG5mdW5jdGlvbiBfUGFyYWxsYXgoXG4gIHtcbiAgICBjaGlsZHJlbixcbiAgICBjbGFzc05hbWUgPSBcIlwiLFxuICAgIGFjdGl2ZSxcbiAgICBvbkNsaWNrLFxuICAgIHJlZmxlY3Rpb24sXG4gICAgbWF4UGFyYWxsYXggPSBNQVhJTVVNX1BBUkFMTEFYLFxuICAgIC4uLnByb3BzXG4gIH06IFByb3BzLFxuICByZWY6IEZvcndhcmRlZFJlZjxIVE1MRGl2RWxlbWVudD5cbikge1xuICBjb25zdCBwYXJhbGxheGFibGVSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCByZWZsZWN0aW9uUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgY29uc3QgbXVsdGlwbGllclJlZiA9IHVzZVJlZjxudW1iZXI+KDEpO1xuICBjb25zdCBpbml0aWFsUG9zaXRpb25SZWYgPSB1c2VSZWY8c3RyaW5nPih1bmRlZmluZWQpO1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChyZWYpXG4gICAgICAocmVmIGFzIE11dGFibGVSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQ+KS5jdXJyZW50ID1cbiAgICAgICAgcGFyYWxsYXhhYmxlUmVmLmN1cnJlbnQhO1xuICAgIGNvbnN0IGVsID0gcGFyYWxsYXhhYmxlUmVmLmN1cnJlbnQhO1xuICAgIGlmIChhY3RpdmUgJiYgIWluaXRpYWxQb3NpdGlvblJlZi5jdXJyZW50KSB7XG4gICAgICBpbml0aWFsUG9zaXRpb25SZWYuY3VycmVudCA9IGdldENvbXB1dGVkU3R5bGUoZWwpLnRyYW5zZm9ybTtcbiAgICAgIGlmIChpbml0aWFsUG9zaXRpb25SZWYuY3VycmVudCA9PT0gXCJub25lXCIpXG4gICAgICAgIGluaXRpYWxQb3NpdGlvblJlZi5jdXJyZW50ID0gXCJcIjtcbiAgICAgIGVsLnN0eWxlLnRyYW5zZm9ybSA9IGAke2luaXRpYWxQb3NpdGlvblJlZi5jdXJyZW50fSByb3RhdGVYKDBkZWcpIHJvdGF0ZVkoMGRlZykgdHJhbnNsYXRlWigwcHgpYDtcbiAgICB9XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIH0sIFthY3RpdmVdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGVsID0gcGFyYWxsYXhhYmxlUmVmLmN1cnJlbnQhO1xuICAgIGlmIChhY3RpdmUpIHtcbiAgICAgIGNvbnN0IHVwZGF0ZVBvc2l0aW9ucyA9IChyZWxhdGl2ZVRvWDogbnVtYmVyLCByZWxhdGl2ZVRvWTogbnVtYmVyKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlY3QgPSBlbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgIHdpZHRoOiBbeDAsIHhXXSxcbiAgICAgICAgICBoZWlnaHQ6IFt5MCwgeUhdLFxuICAgICAgICB9ID0ge1xuICAgICAgICAgIHdpZHRoOiBbcmVjdC5sZWZ0LCBlbC5jbGllbnRXaWR0aF0sXG4gICAgICAgICAgaGVpZ2h0OiBbcmVjdC50b3AsIGVsLmNsaWVudEhlaWdodF0sXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGRpc3RhbmNlT2ZmUmlnaHQgPSBjYWxjdWxhdGVEaXN0YW5jZVJlbGF0aXZlVG9Cb3VuZHMoXG4gICAgICAgICAgcmVsYXRpdmVUb1gsXG4gICAgICAgICAgeDAsXG4gICAgICAgICAgeFdcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgZGlzdGFuY2VPZmZCb3R0b20gPSBjYWxjdWxhdGVEaXN0YW5jZVJlbGF0aXZlVG9Cb3VuZHMoXG4gICAgICAgICAgcmVsYXRpdmVUb1ksXG4gICAgICAgICAgeTAsXG4gICAgICAgICAgeUhcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgaG93TXVjaFRvUm90YXRlWSA9XG4gICAgICAgICAgZ2l2ZW5UaGVSZWxhdGl2ZVBvc2l0aW9uSG93TXVjaFRvUm90YXRlKFxuICAgICAgICAgICAgZGlzdGFuY2VPZmZSaWdodCxcbiAgICAgICAgICAgIG1heFBhcmFsbGF4LnlcbiAgICAgICAgICApICogbXVsdGlwbGllclJlZi5jdXJyZW50O1xuICAgICAgICBjb25zdCBob3dNdWNoVG9Sb3RhdGVYID1cbiAgICAgICAgICBnaXZlblRoZVJlbGF0aXZlUG9zaXRpb25Ib3dNdWNoVG9Sb3RhdGUoXG4gICAgICAgICAgICBkaXN0YW5jZU9mZkJvdHRvbSxcbiAgICAgICAgICAgIG1heFBhcmFsbGF4LnhcbiAgICAgICAgICApICogbXVsdGlwbGllclJlZi5jdXJyZW50O1xuXG4gICAgICAgIGNvbnN0IGhvd011Y2hUb09wYWNpZnkgPSBNYXRoLmFicyhcbiAgICAgICAgICBNYXRoLmFicyhkaXN0YW5jZU9mZkJvdHRvbSAtIDAuNSkgLyAwLjVcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgaG93TXVjaFRvT3BhY2lmeUhvcml6b250YWwgPSBNYXRoLm1heChcbiAgICAgICAgICBNYXRoLmFicyhNYXRoLmFicyhkaXN0YW5jZU9mZlJpZ2h0IC0gMC41KSAvIDAuNSksXG4gICAgICAgICAgTWF0aC5hYnMoTWF0aC5hYnMoZGlzdGFuY2VPZmZCb3R0b20gLSAwLjUpIC8gMC41KVxuICAgICAgICApO1xuXG4gICAgICAgIGVsLnN0eWxlLnRyYW5zZm9ybSA9IGAke1xuICAgICAgICAgIGluaXRpYWxQb3NpdGlvblJlZi5jdXJyZW50XG4gICAgICAgIH0gcm90YXRlWSgke2hvd011Y2hUb1JvdGF0ZVl9ZGVnKSByb3RhdGVYKCR7LWhvd011Y2hUb1JvdGF0ZVh9ZGVnKSB0cmFuc2xhdGVaKCR7XG4gICAgICAgICAgbXVsdGlwbGllclJlZi5jdXJyZW50ID09PSAxID8gMCA6IC0zMFxuICAgICAgICB9cHgpYDtcblxuICAgICAgICBpZiAocmVmbGVjdGlvblJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgcmVmbGVjdGlvblJlZi5jdXJyZW50LnN0eWxlLmxlZnQgPSBgJHsoMSAtIGRpc3RhbmNlT2ZmUmlnaHQpICogMTAwfSVgO1xuICAgICAgICAgIHJlZmxlY3Rpb25SZWYuY3VycmVudC5zdHlsZS50b3AgPSBgJHsoMSAtIGRpc3RhbmNlT2ZmQm90dG9tKSAqIDEwMH0lYDtcbiAgICAgICAgICByZWZsZWN0aW9uUmVmLmN1cnJlbnQuc3R5bGUub3BhY2l0eSA9IGAke01hdGgubWluKFxuICAgICAgICAgICAgaG93TXVjaFRvT3BhY2lmeSxcbiAgICAgICAgICAgIGhvd011Y2hUb09wYWNpZnlIb3Jpem9udGFsXG4gICAgICAgICAgKX1gO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgICAgY29uc3QgaGFuZGxlciA9IHRocm90dGxlKCh7IHgsIHkgfTogTW91c2VFdmVudCkgPT4ge1xuICAgICAgICB1cGRhdGVQb3NpdGlvbnMoeCwgeSk7XG4gICAgICB9LCAxMDAwIC8gMzApO1xuICAgICAgY29uc3QgdG91Y2hIYW5kbGVyID0gdGhyb3R0bGUoKHsgdG91Y2hlcyB9OiBUb3VjaEV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGFnZVgsIHBhZ2VZIH0gPSB0b3VjaGVzWzBdO1xuICAgICAgICB1cGRhdGVQb3NpdGlvbnMocGFnZVgsIHBhZ2VZKTtcbiAgICAgIH0sIDEwMDAgLyAzMCk7XG4gICAgICBjb25zdCBtb3VzZURvd25IYW5kbGVyID0gKCkgPT4ge1xuICAgICAgICBtdWx0aXBsaWVyUmVmLmN1cnJlbnQgPSAxLjU7XG4gICAgICB9O1xuICAgICAgY29uc3QgbW91c2VVcEhhbmRsZXIgPSAoKSA9PiB7XG4gICAgICAgIG11bHRpcGxpZXJSZWYuY3VycmVudCA9IDE7XG4gICAgICB9O1xuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJtb3VzZW1vdmVcIiwgaGFuZGxlcik7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInRvdWNobW92ZVwiLCB0b3VjaEhhbmRsZXIpO1xuICAgICAgbGV0IF9pbnZlcnNlTWF0cml4OiBudW1iZXJbXSB8IHVuZGVmaW5lZDtcbiAgICAgIGNvbnN0IF9saW1pdHM6IHtcbiAgICAgICAgW2sgaW4gXCJiZXRhXCIgfCBcImdhbW1hXCJdPzogW251bWJlciwgbnVtYmVyXTtcbiAgICAgIH0gPSB7XG4gICAgICAgIGJldGE6IHVuZGVmaW5lZCxcbiAgICAgICAgZ2FtbWE6IHVuZGVmaW5lZCxcbiAgICAgIH07XG4gICAgICBjb25zdCBvcmllbnRhdGlvbkxpc3RlbmVyOiAoZTogRGV2aWNlT3JpZW50YXRpb25FdmVudCkgPT4gdm9pZCA9ICh7XG4gICAgICAgIGJldGEsXG4gICAgICAgIGdhbW1hLFxuICAgICAgfSkgPT4ge1xuICAgICAgICBiZXRhID0gYmV0YSEgKiAwLjU7XG4gICAgICAgIGdhbW1hID0gZ2FtbWEhICogMC41O1xuICAgICAgICBpZiAoIV9pbnZlcnNlTWF0cml4KSB7XG4gICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJtb3VzZW1vdmVcIiwgaGFuZGxlcik7XG4gICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJ0b3VjaG1vdmVcIiwgdG91Y2hIYW5kbGVyKTtcbiAgICAgICAgICBjb25zdCBvZmZzZXQgPSAxMi41O1xuICAgICAgICAgIF9saW1pdHMuYmV0YSA9IFtiZXRhISAtIG9mZnNldCwgYmV0YSEgKyBvZmZzZXRdO1xuICAgICAgICAgIF9saW1pdHMuZ2FtbWEgPSBbZ2FtbWEhIC0gb2Zmc2V0LCBnYW1tYSEgKyBvZmZzZXRdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IF9iZXRhID0gTWF0aC5taW4oXG4gICAgICAgICAgX2xpbWl0cy5iZXRhIVsxXSxcbiAgICAgICAgICBNYXRoLm1heChfbGltaXRzLmJldGEhWzBdLCBiZXRhISlcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgX2dhbW1hID0gTWF0aC5taW4oXG4gICAgICAgICAgX2xpbWl0cy5nYW1tYSFbMV0sXG4gICAgICAgICAgTWF0aC5tYXgoX2xpbWl0cy5nYW1tYSFbMF0sIGdhbW1hISlcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKCFfaW52ZXJzZU1hdHJpeCkge1xuICAgICAgICAgIF9pbnZlcnNlTWF0cml4ID0gZmxhdHRlbk1hdHJpeChcbiAgICAgICAgICAgIGludmVydE1hdHJpeChcbiAgICAgICAgICAgICAgZ2VuZXJhdGVNYXRyaXhGcm9tT3BlcmF0aW9ucyhcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiBcInJvdGF0ZVlcIixcbiAgICAgICAgICAgICAgICAgIGFuZ2xlOiBfZ2FtbWEhLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgdHlwZTogXCJyb3RhdGVYXCIsXG4gICAgICAgICAgICAgICAgICBhbmdsZTogLV9iZXRhISxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIClcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGVsLnN0eWxlLnRyYW5zZm9ybSA9IGBtYXRyaXgzZCgke19pbnZlcnNlTWF0cml4LmpvaW4oXG4gICAgICAgICAgXCIsXCJcbiAgICAgICAgKX0pIHJvdGF0ZVgoJHstX2JldGEhfWRlZykgcm90YXRlWSgke19nYW1tYX1kZWcpYDtcbiAgICAgIH07XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcImRldmljZW9yaWVudGF0aW9uXCIsIG9yaWVudGF0aW9uTGlzdGVuZXIpO1xuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJ0b3VjaGVuZFwiLCAoKSA9PiB7XG4gICAgICAgIF9pbnZlcnNlTWF0cml4ID0gdW5kZWZpbmVkO1xuICAgICAgfSk7XG4gICAgICBlbC5hZGRFdmVudExpc3RlbmVyKFwidG91Y2hzdGFydFwiLCBtb3VzZURvd25IYW5kbGVyKTtcbiAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoXCJ0b3VjaGVuZFwiLCBtb3VzZVVwSGFuZGxlcik7XG4gICAgICBlbC5hZGRFdmVudExpc3RlbmVyKFwibW91c2Vkb3duXCIsIG1vdXNlRG93bkhhbmRsZXIpO1xuICAgICAgZWwuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNldXBcIiwgbW91c2VVcEhhbmRsZXIpO1xuXG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImRldmljZW9yaWVudGF0aW9uXCIsIG9yaWVudGF0aW9uTGlzdGVuZXIpO1xuICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1vdXNlbW92ZVwiLCBoYW5kbGVyKTtcbiAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJ0b3VjaG1vdmVcIiwgdG91Y2hIYW5kbGVyKTtcbiAgICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1vdXNlZG93blwiLCBtb3VzZURvd25IYW5kbGVyKTtcbiAgICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1vdXNldXBcIiwgbW91c2VVcEhhbmRsZXIpO1xuICAgICAgICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKFwidG91Y2hzdGFydFwiLCBtb3VzZURvd25IYW5kbGVyKTtcbiAgICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInRvdWNoZW5kXCIsIG1vdXNlVXBIYW5kbGVyKTtcbiAgICAgICAgLy8gZWwuc3R5bGUudHJhbnNmb3JtID0gaW5pdGlhbFBvc2l0aW9uUmVmLmN1cnJlbnQhO1xuICAgICAgICBlbC5zdHlsZS50cmFuc2Zvcm0gPSBgcm90YXRlWCgwZGVnKSByb3RhdGVZKDBkZWcpIHRyYW5zbGF0ZVooMHB4KWA7XG4gICAgICB9O1xuICAgIH1cbiAgfSwgW2FjdGl2ZV0pO1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICByZWY9e3BhcmFsbGF4YWJsZVJlZn1cbiAgICAgIGNsYXNzTmFtZT17YCR7U3R5bGVzLnBhcmFsbGF4fSAke2NsYXNzTmFtZX1gfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICAgIHtyZWZsZWN0aW9uICYmIDxkaXYgcmVmPXtyZWZsZWN0aW9uUmVmfSBjbGFzc05hbWU9e1N0eWxlcy5yZWZsZWN0aW9ufSAvPn1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuLyoqXG4gKiBJdCBob2xkcyBhIGNoaWxkcmVuIGFuZCBhbmltYXRlcyBhIHRpbHQgZWZmZWN0IHJlbGF0aXZlIHRvIG1vdXNlIHBvc2l0aW9uXG4gKiovXG5jb25zdCBQYXJhbGxheCA9IGZvcndhcmRSZWYoX1BhcmFsbGF4KTtcbmV4cG9ydCBkZWZhdWx0IFBhcmFs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
|
|
175
|
+
var _default = exports.default = Parallax;
|
|
176
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfbG9kYXNoIiwiX1BhcmFsbGF4TW9kdWxlIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9oZWxwZXJzIiwiX2V4Y2x1ZGVkIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwidCIsIldlYWtNYXAiLCJyIiwibiIsIm8iLCJpIiwiZiIsIl9fcHJvdG9fXyIsImhhcyIsImdldCIsInNldCIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiX2V4dGVuZHMiLCJhc3NpZ24iLCJiaW5kIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiYXBwbHkiLCJfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMiLCJfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZSIsImdldE93blByb3BlcnR5U3ltYm9scyIsImluZGV4T2YiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsIk1BWElNVU1fUEFSQUxMQVgiLCJ4IiwieSIsImNhbGN1bGF0ZURpc3RhbmNlUmVsYXRpdmVUb0JvdW5kcyIsIm1vdXNlUG9zaXRpb24iLCJlbGVtZW50SW5pdGlhbFBvc2l0aW9uIiwiZWxlbWVudFNpemVEaW1lbnNpb24iLCJub3JtYWxpemVJbml0aWFsUG9zaXRpb24iLCJkb05vdEFsbG93R29pbmdCZXlvbmRMb3dlckxpbWl0IiwiTWF0aCIsIm1heCIsImRvTm90QWxsb3dIb2luZ0JleW9uZEhpZ2hlckxpbWl0IiwibWluIiwidGhyZWVSdWxlIiwicmVzdWx0Iiwicm91bmQiLCJnaXZlblRoZVJlbGF0aXZlUG9zaXRpb25Ib3dNdWNoVG9Sb3RhdGUiLCJyZWxhdGl2ZVBvc2l0aW9uIiwibWF4Um90YXRpb24iLCJfUGFyYWxsYXgiLCJfcmVmIiwicmVmIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJhY3RpdmUiLCJvbkNsaWNrIiwicmVmbGVjdGlvbiIsIm1heFBhcmFsbGF4IiwicHJvcHMiLCJwYXJhbGxheGFibGVSZWYiLCJ1c2VSZWYiLCJyZWZsZWN0aW9uUmVmIiwibXVsdGlwbGllclJlZiIsImluaXRpYWxQb3NpdGlvblJlZiIsInVuZGVmaW5lZCIsInVzZUVmZmVjdCIsImN1cnJlbnQiLCJlbCIsImdldENvbXB1dGVkU3R5bGUiLCJ0cmFuc2Zvcm0iLCJzdHlsZSIsImNvbmNhdCIsInVwZGF0ZVBvc2l0aW9ucyIsInJlbGF0aXZlVG9YIiwicmVsYXRpdmVUb1kiLCJyZWN0IiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0Iiwid2lkdGgiLCJ4MCIsInhXIiwiaGVpZ2h0IiwieTAiLCJ5SCIsImxlZnQiLCJjbGllbnRXaWR0aCIsInRvcCIsImNsaWVudEhlaWdodCIsImRpc3RhbmNlT2ZmUmlnaHQiLCJkaXN0YW5jZU9mZkJvdHRvbSIsImhvd011Y2hUb1JvdGF0ZVkiLCJob3dNdWNoVG9Sb3RhdGVYIiwiaG93TXVjaFRvT3BhY2lmeSIsImFicyIsImhvd011Y2hUb09wYWNpZnlIb3Jpem9udGFsIiwib3BhY2l0eSIsImhhbmRsZXIiLCJ0aHJvdHRsZSIsIl9yZWYyIiwidG91Y2hIYW5kbGVyIiwiX3JlZjMiLCJ0b3VjaGVzIiwicGFnZVgiLCJwYWdlWSIsIm1vdXNlRG93bkhhbmRsZXIiLCJtb3VzZVVwSGFuZGxlciIsIndpbmRvdyIsImFkZEV2ZW50TGlzdGVuZXIiLCJfaW52ZXJzZU1hdHJpeCIsIl9saW1pdHMiLCJiZXRhIiwiZ2FtbWEiLCJvcmllbnRhdGlvbkxpc3RlbmVyIiwiX3JlZjQiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwib2Zmc2V0IiwiX2JldGEiLCJfZ2FtbWEiLCJmbGF0dGVuTWF0cml4IiwiaW52ZXJ0TWF0cml4IiwiZ2VuZXJhdGVNYXRyaXhGcm9tT3BlcmF0aW9ucyIsInR5cGUiLCJhbmdsZSIsImpvaW4iLCJjcmVhdGVFbGVtZW50IiwiU3R5bGVzIiwicGFyYWxsYXgiLCJQYXJhbGxheCIsImZvcndhcmRSZWYiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9QYXJhbGxheC9QYXJhbGxheC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7XG4gIERldGFpbGVkSFRNTFByb3BzLFxuICBGb3J3YXJkZWRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIEhUTUxBdHRyaWJ1dGVzLFxuICBNdXRhYmxlUmVmT2JqZWN0LFxuICBQcm9wc1dpdGhDaGlsZHJlbixcbiAgdXNlRWZmZWN0LFxuICB1c2VSZWYsXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgdGhyb3R0bGUgfSBmcm9tIFwibG9kYXNoXCI7XG5pbXBvcnQgU3R5bGVzIGZyb20gXCIuL1BhcmFsbGF4Lm1vZHVsZS5zY3NzXCI7XG5pbXBvcnQge1xuICBmbGF0dGVuTWF0cml4LFxuICBnZW5lcmF0ZU1hdHJpeEZyb21PcGVyYXRpb25zLFxuICBpbnZlcnRNYXRyaXgsXG59IGZyb20gXCIuL21hdGgvaGVscGVyc1wiO1xuXG5jb25zdCBNQVhJTVVNX1BBUkFMTEFYID0ge1xuICB4OiAyMCxcbiAgeTogMjAsXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gY2FsY3VsYXRlRGlzdGFuY2VSZWxhdGl2ZVRvQm91bmRzKFxuICBtb3VzZVBvc2l0aW9uOiBudW1iZXIsXG4gIGVsZW1lbnRJbml0aWFsUG9zaXRpb246IG51bWJlcixcbiAgZWxlbWVudFNpemVEaW1lbnNpb246IG51bWJlclxuKSB7XG4gIGNvbnN0IG5vcm1hbGl6ZUluaXRpYWxQb3NpdGlvbiA9IG1vdXNlUG9zaXRpb24gLSBlbGVtZW50SW5pdGlhbFBvc2l0aW9uO1xuICBjb25zdCBkb05vdEFsbG93R29pbmdCZXlvbmRMb3dlckxpbWl0ID0gTWF0aC5tYXgobm9ybWFsaXplSW5pdGlhbFBvc2l0aW9uLCAwKTtcbiAgY29uc3QgZG9Ob3RBbGxvd0hvaW5nQmV5b25kSGlnaGVyTGltaXQgPSBNYXRoLm1pbihcbiAgICBkb05vdEFsbG93R29pbmdCZXlvbmRMb3dlckxpbWl0LFxuICAgIGVsZW1lbnRTaXplRGltZW5zaW9uXG4gICk7XG4gIGNvbnN0IHRocmVlUnVsZSA9XG4gICAgKGRvTm90QWxsb3dIb2luZ0JleW9uZEhpZ2hlckxpbWl0ICogMTAwKSAvIGVsZW1lbnRTaXplRGltZW5zaW9uO1xuICBjb25zdCByZXN1bHQgPSBNYXRoLnJvdW5kKHRocmVlUnVsZSkgLyAxMDA7XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnaXZlblRoZVJlbGF0aXZlUG9zaXRpb25Ib3dNdWNoVG9Sb3RhdGUoXG4gIHJlbGF0aXZlUG9zaXRpb246IG51bWJlcixcbiAgbWF4Um90YXRpb246IG51bWJlclxuKSB7XG4gIHJldHVybiByZWxhdGl2ZVBvc2l0aW9uICogbWF4Um90YXRpb24gLSBtYXhSb3RhdGlvbiAvIDI7XG59XG5cbnR5cGUgUHJvcHMgPSBQcm9wc1dpdGhDaGlsZHJlbjx7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgYWN0aXZlOiBib29sZWFuO1xuICBvbkNsaWNrPzogKGU6IGFueSkgPT4gdm9pZDtcbiAgcmVmbGVjdGlvbj86IGJvb2xlYW47XG4gIG1heFBhcmFsbGF4Pzoge1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG4gIH07XG59PiAmXG4gIERldGFpbGVkSFRNTFByb3BzPEhUTUxBdHRyaWJ1dGVzPEhUTUxEaXZFbGVtZW50PiwgSFRNTERpdkVsZW1lbnQ+O1xuXG5mdW5jdGlvbiBfUGFyYWxsYXgoXG4gIHtcbiAgICBjaGlsZHJlbixcbiAgICBjbGFzc05hbWUgPSBcIlwiLFxuICAgIGFjdGl2ZSxcbiAgICBvbkNsaWNrLFxuICAgIHJlZmxlY3Rpb24sXG4gICAgbWF4UGFyYWxsYXggPSBNQVhJTVVNX1BBUkFMTEFYLFxuICAgIC4uLnByb3BzXG4gIH06IFByb3BzLFxuICByZWY6IEZvcndhcmRlZFJlZjxIVE1MRGl2RWxlbWVudD5cbikge1xuICBjb25zdCBwYXJhbGxheGFibGVSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCByZWZsZWN0aW9uUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgY29uc3QgbXVsdGlwbGllclJlZiA9IHVzZVJlZjxudW1iZXI+KDEpO1xuICBjb25zdCBpbml0aWFsUG9zaXRpb25SZWYgPSB1c2VSZWY8c3RyaW5nPih1bmRlZmluZWQpO1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChyZWYpXG4gICAgICAocmVmIGFzIE11dGFibGVSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQ+KS5jdXJyZW50ID1cbiAgICAgICAgcGFyYWxsYXhhYmxlUmVmLmN1cnJlbnQhO1xuICAgIGNvbnN0IGVsID0gcGFyYWxsYXhhYmxlUmVmLmN1cnJlbnQhO1xuICAgIGlmIChhY3RpdmUgJiYgIWluaXRpYWxQb3NpdGlvblJlZi5jdXJyZW50KSB7XG4gICAgICBpbml0aWFsUG9zaXRpb25SZWYuY3VycmVudCA9IGdldENvbXB1dGVkU3R5bGUoZWwpLnRyYW5zZm9ybTtcbiAgICAgIGlmIChpbml0aWFsUG9zaXRpb25SZWYuY3VycmVudCA9PT0gXCJub25lXCIpXG4gICAgICAgIGluaXRpYWxQb3NpdGlvblJlZi5jdXJyZW50ID0gXCJcIjtcbiAgICAgIGVsLnN0eWxlLnRyYW5zZm9ybSA9IGAke2luaXRpYWxQb3NpdGlvblJlZi5jdXJyZW50fSByb3RhdGVYKDBkZWcpIHJvdGF0ZVkoMGRlZykgdHJhbnNsYXRlWigwcHgpYDtcbiAgICB9XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIH0sIFthY3RpdmVdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGVsID0gcGFyYWxsYXhhYmxlUmVmLmN1cnJlbnQhO1xuICAgIGlmIChhY3RpdmUpIHtcbiAgICAgIGNvbnN0IHVwZGF0ZVBvc2l0aW9ucyA9IChyZWxhdGl2ZVRvWDogbnVtYmVyLCByZWxhdGl2ZVRvWTogbnVtYmVyKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlY3QgPSBlbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgIHdpZHRoOiBbeDAsIHhXXSxcbiAgICAgICAgICBoZWlnaHQ6IFt5MCwgeUhdLFxuICAgICAgICB9ID0ge1xuICAgICAgICAgIHdpZHRoOiBbcmVjdC5sZWZ0LCBlbC5jbGllbnRXaWR0aF0sXG4gICAgICAgICAgaGVpZ2h0OiBbcmVjdC50b3AsIGVsLmNsaWVudEhlaWdodF0sXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGRpc3RhbmNlT2ZmUmlnaHQgPSBjYWxjdWxhdGVEaXN0YW5jZVJlbGF0aXZlVG9Cb3VuZHMoXG4gICAgICAgICAgcmVsYXRpdmVUb1gsXG4gICAgICAgICAgeDAsXG4gICAgICAgICAgeFdcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgZGlzdGFuY2VPZmZCb3R0b20gPSBjYWxjdWxhdGVEaXN0YW5jZVJlbGF0aXZlVG9Cb3VuZHMoXG4gICAgICAgICAgcmVsYXRpdmVUb1ksXG4gICAgICAgICAgeTAsXG4gICAgICAgICAgeUhcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgaG93TXVjaFRvUm90YXRlWSA9XG4gICAgICAgICAgZ2l2ZW5UaGVSZWxhdGl2ZVBvc2l0aW9uSG93TXVjaFRvUm90YXRlKFxuICAgICAgICAgICAgZGlzdGFuY2VPZmZSaWdodCxcbiAgICAgICAgICAgIG1heFBhcmFsbGF4LnlcbiAgICAgICAgICApICogbXVsdGlwbGllclJlZi5jdXJyZW50O1xuICAgICAgICBjb25zdCBob3dNdWNoVG9Sb3RhdGVYID1cbiAgICAgICAgICBnaXZlblRoZVJlbGF0aXZlUG9zaXRpb25Ib3dNdWNoVG9Sb3RhdGUoXG4gICAgICAgICAgICBkaXN0YW5jZU9mZkJvdHRvbSxcbiAgICAgICAgICAgIG1heFBhcmFsbGF4LnhcbiAgICAgICAgICApICogbXVsdGlwbGllclJlZi5jdXJyZW50O1xuXG4gICAgICAgIGNvbnN0IGhvd011Y2hUb09wYWNpZnkgPSBNYXRoLmFicyhcbiAgICAgICAgICBNYXRoLmFicyhkaXN0YW5jZU9mZkJvdHRvbSAtIDAuNSkgLyAwLjVcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgaG93TXVjaFRvT3BhY2lmeUhvcml6b250YWwgPSBNYXRoLm1heChcbiAgICAgICAgICBNYXRoLmFicyhNYXRoLmFicyhkaXN0YW5jZU9mZlJpZ2h0IC0gMC41KSAvIDAuNSksXG4gICAgICAgICAgTWF0aC5hYnMoTWF0aC5hYnMoZGlzdGFuY2VPZmZCb3R0b20gLSAwLjUpIC8gMC41KVxuICAgICAgICApO1xuXG4gICAgICAgIGVsLnN0eWxlLnRyYW5zZm9ybSA9IGAke1xuICAgICAgICAgIGluaXRpYWxQb3NpdGlvblJlZi5jdXJyZW50XG4gICAgICAgIH0gcm90YXRlWSgke2hvd011Y2hUb1JvdGF0ZVl9ZGVnKSByb3RhdGVYKCR7LWhvd011Y2hUb1JvdGF0ZVh9ZGVnKSB0cmFuc2xhdGVaKCR7XG4gICAgICAgICAgbXVsdGlwbGllclJlZi5jdXJyZW50ID09PSAxID8gMCA6IC0zMFxuICAgICAgICB9cHgpYDtcblxuICAgICAgICBpZiAocmVmbGVjdGlvblJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgcmVmbGVjdGlvblJlZi5jdXJyZW50LnN0eWxlLmxlZnQgPSBgJHsoMSAtIGRpc3RhbmNlT2ZmUmlnaHQpICogMTAwfSVgO1xuICAgICAgICAgIHJlZmxlY3Rpb25SZWYuY3VycmVudC5zdHlsZS50b3AgPSBgJHsoMSAtIGRpc3RhbmNlT2ZmQm90dG9tKSAqIDEwMH0lYDtcbiAgICAgICAgICByZWZsZWN0aW9uUmVmLmN1cnJlbnQuc3R5bGUub3BhY2l0eSA9IGAke01hdGgubWluKFxuICAgICAgICAgICAgaG93TXVjaFRvT3BhY2lmeSxcbiAgICAgICAgICAgIGhvd011Y2hUb09wYWNpZnlIb3Jpem9udGFsXG4gICAgICAgICAgKX1gO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgICAgY29uc3QgaGFuZGxlciA9IHRocm90dGxlKCh7IHgsIHkgfTogTW91c2VFdmVudCkgPT4ge1xuICAgICAgICB1cGRhdGVQb3NpdGlvbnMoeCwgeSk7XG4gICAgICB9LCAxMDAwIC8gMzApO1xuICAgICAgY29uc3QgdG91Y2hIYW5kbGVyID0gdGhyb3R0bGUoKHsgdG91Y2hlcyB9OiBUb3VjaEV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGFnZVgsIHBhZ2VZIH0gPSB0b3VjaGVzWzBdO1xuICAgICAgICB1cGRhdGVQb3NpdGlvbnMocGFnZVgsIHBhZ2VZKTtcbiAgICAgIH0sIDEwMDAgLyAzMCk7XG4gICAgICBjb25zdCBtb3VzZURvd25IYW5kbGVyID0gKCkgPT4ge1xuICAgICAgICBtdWx0aXBsaWVyUmVmLmN1cnJlbnQgPSAxLjU7XG4gICAgICB9O1xuICAgICAgY29uc3QgbW91c2VVcEhhbmRsZXIgPSAoKSA9PiB7XG4gICAgICAgIG11bHRpcGxpZXJSZWYuY3VycmVudCA9IDE7XG4gICAgICB9O1xuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJtb3VzZW1vdmVcIiwgaGFuZGxlcik7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInRvdWNobW92ZVwiLCB0b3VjaEhhbmRsZXIpO1xuICAgICAgbGV0IF9pbnZlcnNlTWF0cml4OiBudW1iZXJbXSB8IHVuZGVmaW5lZDtcbiAgICAgIGNvbnN0IF9saW1pdHM6IHtcbiAgICAgICAgW2sgaW4gXCJiZXRhXCIgfCBcImdhbW1hXCJdPzogW251bWJlciwgbnVtYmVyXTtcbiAgICAgIH0gPSB7XG4gICAgICAgIGJldGE6IHVuZGVmaW5lZCxcbiAgICAgICAgZ2FtbWE6IHVuZGVmaW5lZCxcbiAgICAgIH07XG4gICAgICBjb25zdCBvcmllbnRhdGlvbkxpc3RlbmVyOiAoZTogRGV2aWNlT3JpZW50YXRpb25FdmVudCkgPT4gdm9pZCA9ICh7XG4gICAgICAgIGJldGEsXG4gICAgICAgIGdhbW1hLFxuICAgICAgfSkgPT4ge1xuICAgICAgICBiZXRhID0gYmV0YSEgKiAwLjU7XG4gICAgICAgIGdhbW1hID0gZ2FtbWEhICogMC41O1xuICAgICAgICBpZiAoIV9pbnZlcnNlTWF0cml4KSB7XG4gICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJtb3VzZW1vdmVcIiwgaGFuZGxlcik7XG4gICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJ0b3VjaG1vdmVcIiwgdG91Y2hIYW5kbGVyKTtcbiAgICAgICAgICBjb25zdCBvZmZzZXQgPSAxMi41O1xuICAgICAgICAgIF9saW1pdHMuYmV0YSA9IFtiZXRhISAtIG9mZnNldCwgYmV0YSEgKyBvZmZzZXRdO1xuICAgICAgICAgIF9saW1pdHMuZ2FtbWEgPSBbZ2FtbWEhIC0gb2Zmc2V0LCBnYW1tYSEgKyBvZmZzZXRdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IF9iZXRhID0gTWF0aC5taW4oXG4gICAgICAgICAgX2xpbWl0cy5iZXRhIVsxXSxcbiAgICAgICAgICBNYXRoLm1heChfbGltaXRzLmJldGEhWzBdLCBiZXRhISlcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgX2dhbW1hID0gTWF0aC5taW4oXG4gICAgICAgICAgX2xpbWl0cy5nYW1tYSFbMV0sXG4gICAgICAgICAgTWF0aC5tYXgoX2xpbWl0cy5nYW1tYSFbMF0sIGdhbW1hISlcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKCFfaW52ZXJzZU1hdHJpeCkge1xuICAgICAgICAgIF9pbnZlcnNlTWF0cml4ID0gZmxhdHRlbk1hdHJpeChcbiAgICAgICAgICAgIGludmVydE1hdHJpeChcbiAgICAgICAgICAgICAgZ2VuZXJhdGVNYXRyaXhGcm9tT3BlcmF0aW9ucyhcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiBcInJvdGF0ZVlcIixcbiAgICAgICAgICAgICAgICAgIGFuZ2xlOiBfZ2FtbWEhLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgdHlwZTogXCJyb3RhdGVYXCIsXG4gICAgICAgICAgICAgICAgICBhbmdsZTogLV9iZXRhISxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIClcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGVsLnN0eWxlLnRyYW5zZm9ybSA9IGBtYXRyaXgzZCgke19pbnZlcnNlTWF0cml4LmpvaW4oXG4gICAgICAgICAgXCIsXCJcbiAgICAgICAgKX0pIHJvdGF0ZVgoJHstX2JldGEhfWRlZykgcm90YXRlWSgke19nYW1tYX1kZWcpYDtcbiAgICAgIH07XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcImRldmljZW9yaWVudGF0aW9uXCIsIG9yaWVudGF0aW9uTGlzdGVuZXIpO1xuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJ0b3VjaGVuZFwiLCAoKSA9PiB7XG4gICAgICAgIF9pbnZlcnNlTWF0cml4ID0gdW5kZWZpbmVkO1xuICAgICAgfSk7XG4gICAgICBlbC5hZGRFdmVudExpc3RlbmVyKFwidG91Y2hzdGFydFwiLCBtb3VzZURvd25IYW5kbGVyKTtcbiAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoXCJ0b3VjaGVuZFwiLCBtb3VzZVVwSGFuZGxlcik7XG4gICAgICBlbC5hZGRFdmVudExpc3RlbmVyKFwibW91c2Vkb3duXCIsIG1vdXNlRG93bkhhbmRsZXIpO1xuICAgICAgZWwuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNldXBcIiwgbW91c2VVcEhhbmRsZXIpO1xuXG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImRldmljZW9yaWVudGF0aW9uXCIsIG9yaWVudGF0aW9uTGlzdGVuZXIpO1xuICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1vdXNlbW92ZVwiLCBoYW5kbGVyKTtcbiAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJ0b3VjaG1vdmVcIiwgdG91Y2hIYW5kbGVyKTtcbiAgICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1vdXNlZG93blwiLCBtb3VzZURvd25IYW5kbGVyKTtcbiAgICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1vdXNldXBcIiwgbW91c2VVcEhhbmRsZXIpO1xuICAgICAgICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKFwidG91Y2hzdGFydFwiLCBtb3VzZURvd25IYW5kbGVyKTtcbiAgICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInRvdWNoZW5kXCIsIG1vdXNlVXBIYW5kbGVyKTtcbiAgICAgICAgLy8gZWwuc3R5bGUudHJhbnNmb3JtID0gaW5pdGlhbFBvc2l0aW9uUmVmLmN1cnJlbnQhO1xuICAgICAgICBlbC5zdHlsZS50cmFuc2Zvcm0gPSBgcm90YXRlWCgwZGVnKSByb3RhdGVZKDBkZWcpIHRyYW5zbGF0ZVooMHB4KWA7XG4gICAgICB9O1xuICAgIH1cbiAgfSwgW2FjdGl2ZV0pO1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICByZWY9e3BhcmFsbGF4YWJsZVJlZn1cbiAgICAgIGNsYXNzTmFtZT17YCR7U3R5bGVzLnBhcmFsbGF4fSAke2NsYXNzTmFtZX1gfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICAgIHtyZWZsZWN0aW9uICYmIDxkaXYgcmVmPXtyZWZsZWN0aW9uUmVmfSBjbGFzc05hbWU9e1N0eWxlcy5yZWZsZWN0aW9ufSAvPn1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuLyoqXG4gKiBJdCBob2xkcyBhIGNoaWxkcmVuIGFuZCBhbmltYXRlcyBhIHRpbHQgZWZmZWN0IHJlbGF0aXZlIHRvIG1vdXNlIHBvc2l0aW9uXG4gKiovXG5jb25zdCBQYXJhbGxheCA9IGZvcndhcmRSZWYoX1BhcmFsbGF4KTtcbmV4cG9ydCBkZWZhdWx0IFBh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
|
|
@@ -10,5 +10,5 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
12
|
var _Parallax = _interopRequireDefault(require("./Parallax"));
|
|
13
|
-
function _interopRequireDefault(
|
|
14
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfUGFyYWxsYXgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL1BhcmFsbGF4L2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBkZWZhdWx0IH0gZnJvbSAnLi9QYXJhbGxheCc7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsU0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQXFDLFNBQUFELHVCQUFBRSxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBIiwiaWdub3JlTGlzdCI6W119
|