adui
Version:
<div> <img src="https://wxa.wxs.qq.com/mpweb/delivery/legacy/wxadtouch/upload/t1/od834zef_52939fc6.png" style="margin:40px 0 0 -8px; background-color: #fcfcfc; box-shadow: none;" /> </div>
135 lines • 21.1 kB
JavaScript
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
var _excluded = ["banner", "className", "children", "defaultValue", "disabled", "gutter", "onChange", "size", "value"];
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); }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
import React, { forwardRef, useContext, useEffect, useImperativeHandle, useRef, useState } from "react";
import PropTypes from "prop-types";
import classNames from "classnames";
import { ConfigContext, getComputedSize } from "../config-provider";
import Tab from "./Tab";
import { TabsContext } from "./Context";
import "./style";
var prefix = "adui-channels-tabs";
var Tabs = forwardRef(function (_ref, ref) {
var banner = _ref.banner,
className = _ref.className,
children = _ref.children,
defaultValue = _ref.defaultValue,
disabled = _ref.disabled,
gutter = _ref.gutter,
onChange = _ref.onChange,
size = _ref.size,
valueProp = _ref.value,
otherProps = _objectWithoutProperties(_ref, _excluded);
var _useState = useState({}),
_useState2 = _slicedToArray(_useState, 2),
indicatorStyle = _useState2[0],
setIndicatorStyle = _useState2[1];
var _useState3 = useState(function () {
var val;
if (valueProp !== null && valueProp !== undefined) {
val = valueProp;
} else if (defaultValue !== null && defaultValue !== undefined) {
val = defaultValue;
}
return val;
}),
_useState4 = _slicedToArray(_useState3, 2),
value = _useState4[0],
setValue = _useState4[1];
if (valueProp !== null && value !== valueProp) {
setValue(valueProp);
}
var tabsRef = useRef(null);
var _useContext = useContext(ConfigContext),
sizeContext = _useContext.size;
var updateIndicatorStyle = function updateIndicatorStyle() {
setTimeout(function () {
if (tabsRef && tabsRef.current) {
var theActiveTab = tabsRef.current.querySelector('[aria-selected="true"]');
if (theActiveTab) {
var clientWidth = theActiveTab.clientWidth,
offsetLeft = theActiveTab.offsetLeft;
setIndicatorStyle({
transform: "translateX(".concat(Math.floor(offsetLeft), "px)"),
width: clientWidth
});
} else {
setIndicatorStyle({
opacity: 0
});
}
}
}, 0);
};
useImperativeHandle(ref, function () {
return {
updateIndicatorStyle: updateIndicatorStyle,
getDomNode: function getDomNode() {
return tabsRef.current;
}
};
});
var handleTabsValueChange = function handleTabsValueChange(val) {
if (valueProp === null) {
setValue(val);
}
if (onChange) {
onChange(val);
}
};
useEffect(function () {
updateIndicatorStyle();
}, [value]);
var classSet = classNames(className, "".concat(prefix, "-base"), "".concat(prefix, "-").concat(getComputedSize(size, sizeContext)), _defineProperty(_defineProperty({}, "".concat(prefix, "-banner"), banner), "".concat(prefix, "-base_disabled"), disabled));
return React.createElement(TabsContext.Provider, {
value: {
disabled: disabled,
gutter: gutter,
handleTabsValueChange: handleTabsValueChange,
value: value
}
}, React.createElement("div", _extends({
className: classSet,
"data-value": value,
ref: tabsRef
}, otherProps), React.createElement("div", {
className: "".concat(prefix, "-indicator"),
style: indicatorStyle
}), children));
});
Tabs.Tab = Tab;
Tabs.displayName = "Tabs";
Tabs.propTypes = {
banner: PropTypes.bool,
children: PropTypes.node.isRequired,
className: PropTypes.string,
defaultValue: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
disabled: PropTypes.bool,
gutter: PropTypes.number,
onChange: PropTypes.func,
size: PropTypes.oneOf(["mini", "small", "medium", "large"]),
value: PropTypes.oneOfType([PropTypes.string, PropTypes.number])
};
Tabs.defaultProps = {
banner: false,
className: undefined,
defaultValue: null,
disabled: false,
gutter: undefined,
onChange: function onChange() {},
size: "large",
value: null
};
export default Tabs;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsImZvcndhcmRSZWYiLCJ1c2VDb250ZXh0IiwidXNlRWZmZWN0IiwidXNlSW1wZXJhdGl2ZUhhbmRsZSIsInVzZVJlZiIsInVzZVN0YXRlIiwiUHJvcFR5cGVzIiwiY2xhc3NOYW1lcyIsIkNvbmZpZ0NvbnRleHQiLCJnZXRDb21wdXRlZFNpemUiLCJUYWIiLCJUYWJzQ29udGV4dCIsInByZWZpeCIsIlRhYnMiLCJfcmVmIiwicmVmIiwiYmFubmVyIiwiY2xhc3NOYW1lIiwiY2hpbGRyZW4iLCJkZWZhdWx0VmFsdWUiLCJkaXNhYmxlZCIsImd1dHRlciIsIm9uQ2hhbmdlIiwic2l6ZSIsInZhbHVlUHJvcCIsInZhbHVlIiwib3RoZXJQcm9wcyIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllcyIsIl9leGNsdWRlZCIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsImluZGljYXRvclN0eWxlIiwic2V0SW5kaWNhdG9yU3R5bGUiLCJfdXNlU3RhdGUzIiwidmFsIiwidW5kZWZpbmVkIiwiX3VzZVN0YXRlNCIsInNldFZhbHVlIiwidGFic1JlZiIsIl91c2VDb250ZXh0Iiwic2l6ZUNvbnRleHQiLCJ1cGRhdGVJbmRpY2F0b3JTdHlsZSIsInNldFRpbWVvdXQiLCJjdXJyZW50IiwidGhlQWN0aXZlVGFiIiwicXVlcnlTZWxlY3RvciIsImNsaWVudFdpZHRoIiwib2Zmc2V0TGVmdCIsInRyYW5zZm9ybSIsImNvbmNhdCIsIk1hdGgiLCJmbG9vciIsIndpZHRoIiwib3BhY2l0eSIsImdldERvbU5vZGUiLCJoYW5kbGVUYWJzVmFsdWVDaGFuZ2UiLCJjbGFzc1NldCIsIl9kZWZpbmVQcm9wZXJ0eSIsImNyZWF0ZUVsZW1lbnQiLCJQcm92aWRlciIsIl9leHRlbmRzIiwic3R5bGUiLCJkaXNwbGF5TmFtZSIsInByb3BUeXBlcyIsImJvb2wiLCJub2RlIiwiaXNSZXF1aXJlZCIsInN0cmluZyIsIm9uZU9mVHlwZSIsIm51bWJlciIsImZ1bmMiLCJvbmVPZiIsImRlZmF1bHRQcm9wcyJdLCJzb3VyY2VzIjpbIi4uLy4uL2NvbXBvbmVudHMvY2hhbm5lbHMtdGFicy9UYWJzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ29udGV4dCxcbiAgdXNlRWZmZWN0LFxuICB1c2VJbXBlcmF0aXZlSGFuZGxlLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiXG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tIFwiY2xhc3NuYW1lc1wiXG5pbXBvcnQgeyBDb25maWdDb250ZXh0LCBnZXRDb21wdXRlZFNpemUgfSBmcm9tIFwiLi4vY29uZmlnLXByb3ZpZGVyXCJcbmltcG9ydCBUYWIgZnJvbSBcIi4vVGFiXCJcbmltcG9ydCB7IFRhYnNDb250ZXh0IH0gZnJvbSBcIi4vQ29udGV4dFwiXG5pbXBvcnQgXCIuL3N0eWxlXCJcblxuY29uc3QgcHJlZml4ID0gXCJhZHVpLWNoYW5uZWxzLXRhYnNcIlxuXG5leHBvcnQgaW50ZXJmYWNlIElUYWJzUHJvcHMge1xuICBba2V5OiBzdHJpbmddOiBhbnlcbiAgLyoqXG4gICAqIOaYr+WQpumAmuagj+WIhumFjeWuveW6pu+8iGZsZXg6IDE777yJXG4gICAqL1xuICBiYW5uZXI/OiBib29sZWFuXG4gIC8qKlxuICAgKiDlrZDoioLngrlcbiAgICovXG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVcbiAgLyoqXG4gICAqIOmZhOWKoOexu+WQjVxuICAgKi9cbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gIC8qKlxuICAgKiDpu5jorqTnmoTlt7LpgInkuK3poblcbiAgICovXG4gIGRlZmF1bHRWYWx1ZT86IFJlYWN0LlJlYWN0VGV4dCB8IG51bGxcbiAgLyoqXG4gICAqIOaYr+WQpuemgeeUqFxuICAgKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiB0YWIg55qE6Ze06LedIG1hcmdpblxuICAgKi9cbiAgZ3V0dGVyPzogbnVtYmVyXG4gIC8qKlxuICAgKiDlgLzlj5jljJbml7bnmoQgaGFuZGxlclxuICAgKi9cbiAgb25DaGFuZ2U/OiAodmFsdWU6IFJlYWN0LlJlYWN0VGV4dCkgPT4gdm9pZFxuICAvKipcbiAgICog6K6+572u5bC65a+4XG4gICAqL1xuICBzaXplPzogXCJtaW5pXCIgfCBcInNtYWxsXCIgfCBcIm1lZGl1bVwiIHwgXCJsYXJnZVwiXG4gIC8qKlxuICAgKiDlt7LpgInkuK3poblcbiAgICovXG4gIHZhbHVlPzogUmVhY3QuUmVhY3RUZXh0IHwgbnVsbFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUYWJzXG4gIGV4dGVuZHMgUmVhY3QuRm9yd2FyZFJlZkV4b3RpY0NvbXBvbmVudDxcbiAgICBJVGFic1Byb3BzICYgUmVhY3QuUmVmQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD5cbiAgPiB7XG4gIFRhYjogdHlwZW9mIFRhYlxufVxuXG4vKipcbiAqIOWvvOiIqumhteetvu+8jOmhtumDqOaoquWQkeWvvOiIqueahOWGheWuue+8jOeUqOS6juWIh+aNoumhtemdouS4reWQjOS4gOWxgue6p+eahOWGheWuueOAglxuICovXG4vLyBAdHMtaWdub3JlXG5jb25zdCBUYWJzOiBJVGFicyA9IGZvcndhcmRSZWYoXG4gIChcbiAgICB7XG4gICAgICBiYW5uZXIsXG4gICAgICBjbGFzc05hbWUsXG4gICAgICBjaGlsZHJlbixcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZ3V0dGVyLFxuICAgICAgb25DaGFuZ2UsXG4gICAgICBzaXplLFxuICAgICAgdmFsdWU6IHZhbHVlUHJvcCxcbiAgICAgIC4uLm90aGVyUHJvcHNcbiAgICB9OiBJVGFic1Byb3BzLFxuICAgIHJlZjogYW55XG4gICkgPT4ge1xuICAgIGNvbnN0IFtpbmRpY2F0b3JTdHlsZSwgc2V0SW5kaWNhdG9yU3R5bGVdID0gdXNlU3RhdGU8UmVhY3QuQ1NTUHJvcGVydGllcz4oXG4gICAgICB7fVxuICAgIClcblxuICAgIC8qKlxuICAgICAqIOWIneWni+WMliB2YWx1ZSBzdGF0ZVxuICAgICAqIDEuIOS8mOWFiOWIpOaWrSBQcm9wIHZhbHVl77yM5aaC5p6c5a2Y5ZyoIFByb3AgdmFsdWXvvIzliJkgVGFicyDlrozlhajkuqTnlLHlpJbpg6jmjqfliLbvvIzlhoXpg6jnirbmgIHml6DmlYjvvJtcbiAgICAgKiAyLiDlho3liKTmlq0gUHJvcCBkZWZhdWx0VmFsdWXvvIzlpoLmnpzlrZjlnKjpu5jorqTlgLzvvIzliJkgVGFicyDnirbmgIHkuLrmraTpu5jorqTlgLzvvJtcbiAgICAgKiAzLiDlpoLmnpzpg73msqHmnInvvIzliJnlj5YgVGFiIGNoaWxkcmVuIOesrCAwIOmhueeahCB2YWx1Ze+8jOWwhuesrCAwIOmhueiuvue9ruS4uuW9k+WJjemhueOAglxuICAgICAqXG4gICAgICog5Lul5LiK5LiJ5Liq5Yik5pat5Y+v6IO95a2Y5Zyo5Yay56qB77yM5omA5Lul5Zyo5q2k6K+05piO5p2h5Lu25Yik5pat55qE5LyY5YWI57qn44CCXG4gICAgICovXG4gICAgY29uc3QgW3ZhbHVlLCBzZXRWYWx1ZV0gPSB1c2VTdGF0ZSgoKSA9PiB7XG4gICAgICBsZXQgdmFsXG4gICAgICBpZiAodmFsdWVQcm9wICE9PSBudWxsICYmIHZhbHVlUHJvcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHZhbCA9IHZhbHVlUHJvcFxuICAgICAgfSBlbHNlIGlmIChkZWZhdWx0VmFsdWUgIT09IG51bGwgJiYgZGVmYXVsdFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdmFsID0gZGVmYXVsdFZhbHVlXG4gICAgICB9XG4gICAgICByZXR1cm4gdmFsXG4gICAgfSlcblxuICAgIC8vIOebuOW9k+S6jueUn+WRveWRqOacnyBnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHNcbiAgICBpZiAodmFsdWVQcm9wICE9PSBudWxsICYmIHZhbHVlICE9PSB2YWx1ZVByb3ApIHtcbiAgICAgIHNldFZhbHVlKHZhbHVlUHJvcClcbiAgICB9XG5cbiAgICBjb25zdCB0YWJzUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuXG4gICAgY29uc3QgeyBzaXplOiBzaXplQ29udGV4dCB9ID0gdXNlQ29udGV4dChDb25maWdDb250ZXh0KVxuXG4gICAgY29uc3QgdXBkYXRlSW5kaWNhdG9yU3R5bGUgPSAoKSA9PiB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaWYgKHRhYnNSZWYgJiYgdGFic1JlZi5jdXJyZW50KSB7XG4gICAgICAgICAgY29uc3QgdGhlQWN0aXZlVGFiID0gdGFic1JlZi5jdXJyZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAgICAgICAnW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdJ1xuICAgICAgICAgICkgYXMgSFRNTERpdkVsZW1lbnRcbiAgICAgICAgICBpZiAodGhlQWN0aXZlVGFiKSB7XG4gICAgICAgICAgICBjb25zdCB7IGNsaWVudFdpZHRoLCBvZmZzZXRMZWZ0IH0gPSB0aGVBY3RpdmVUYWJcbiAgICAgICAgICAgIHNldEluZGljYXRvclN0eWxlKHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWCgke01hdGguZmxvb3Iob2Zmc2V0TGVmdCl9cHgpYCxcbiAgICAgICAgICAgICAgd2lkdGg6IGNsaWVudFdpZHRoLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc2V0SW5kaWNhdG9yU3R5bGUoeyBvcGFjaXR5OiAwIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LCAwKVxuICAgIH1cblxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiAoe1xuICAgICAgdXBkYXRlSW5kaWNhdG9yU3R5bGUsXG4gICAgICBnZXREb21Ob2RlOiAoKSA9PiB0YWJzUmVmLmN1cnJlbnQsXG4gICAgfSkpXG5cbiAgICBjb25zdCBoYW5kbGVUYWJzVmFsdWVDaGFuZ2UgPSAodmFsOiBSZWFjdC5SZWFjdFRleHQpID0+IHtcbiAgICAgIGlmICh2YWx1ZVByb3AgPT09IG51bGwpIHtcbiAgICAgICAgc2V0VmFsdWUodmFsKVxuICAgICAgfVxuICAgICAgaWYgKG9uQ2hhbmdlKSB7XG4gICAgICAgIG9uQ2hhbmdlKHZhbClcbiAgICAgIH1cbiAgICB9XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgdXBkYXRlSW5kaWNhdG9yU3R5bGUoKVxuICAgIH0sIFt2YWx1ZV0pXG5cbiAgICBjb25zdCBjbGFzc1NldCA9IGNsYXNzTmFtZXMoXG4gICAgICBjbGFzc05hbWUsXG4gICAgICBgJHtwcmVmaXh9LWJhc2VgLFxuICAgICAgYCR7cHJlZml4fS0ke2dldENvbXB1dGVkU2l6ZShzaXplLCBzaXplQ29udGV4dCl9YCxcbiAgICAgIHtcbiAgICAgICAgW2Ake3ByZWZpeH0tYmFubmVyYF06IGJhbm5lcixcbiAgICAgICAgW2Ake3ByZWZpeH0tYmFzZV9kaXNhYmxlZGBdOiBkaXNhYmxlZCxcbiAgICAgIH1cbiAgICApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPFRhYnNDb250ZXh0LlByb3ZpZGVyXG4gICAgICAgIHZhbHVlPXt7IGRpc2FibGVkLCBndXR0ZXIsIGhhbmRsZVRhYnNWYWx1ZUNoYW5nZSwgdmFsdWUgfX1cbiAgICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NTZXR9XG4gICAgICAgICAgZGF0YS12YWx1ZT17dmFsdWV9XG4gICAgICAgICAgcmVmPXt0YWJzUmVmfVxuICAgICAgICAgIHsuLi5vdGhlclByb3BzfVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2Ake3ByZWZpeH0taW5kaWNhdG9yYH0gc3R5bGU9e2luZGljYXRvclN0eWxlfSAvPlxuICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L1RhYnNDb250ZXh0LlByb3ZpZGVyPlxuICAgIClcbiAgfVxuKVxuXG5UYWJzLlRhYiA9IFRhYlxuXG5UYWJzLmRpc3BsYXlOYW1lID0gXCJUYWJzXCJcblxuVGFicy5wcm9wVHlwZXMgPSB7XG4gIC8qKlxuICAgKiDmmK/lkKbpgJrmoI/liIbphY3lrr3luqbvvIhmbGV4OiAxO++8iVxuICAgKi9cbiAgYmFubmVyOiBQcm9wVHlwZXMuYm9vbCxcbiAgLyoqXG4gICAqIOWtkOiKgueCuVxuICAgKi9cbiAgY2hpbGRyZW46IFByb3BUeXBlcy5ub2RlLmlzUmVxdWlyZWQsXG4gIC8qKlxuICAgKiDpmYTliqDnsbvlkI1cbiAgICovXG4gIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgLyoqXG4gICAqIOm7mOiupOeahOW3sumAieS4remhuVxuICAgKi9cbiAgZGVmYXVsdFZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuc3RyaW5nLCBQcm9wVHlwZXMubnVtYmVyXSksXG4gIC8qKlxuICAgKiDmmK/lkKbnpoHnlKhcbiAgICovXG4gIGRpc2FibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgLyoqXG4gICAqIHRhYiDnmoTpl7Tot50gbWFyZ2luXG4gICAqL1xuICBndXR0ZXI6IFByb3BUeXBlcy5udW1iZXIsXG4gIC8qKlxuICAgKiDlgLzlj5jljJbml7bnmoQgaGFuZGxlclxuICAgKi9cbiAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLFxuICAvKipcbiAgICog6K6+572u5bC65a+4XG4gICAqL1xuICBzaXplOiBQcm9wVHlwZXMub25lT2YoW1wibWluaVwiLCBcInNtYWxsXCIsIFwibWVkaXVtXCIsIFwibGFyZ2VcIl0pLFxuICAvKipcbiAgICog5bey6YCJ5Lit6aG5XG4gICAqL1xuICB2YWx1ZTogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLm51bWJlcl0pLFxufVxuXG5UYWJzLmRlZmF1bHRQcm9wcyA9IHtcbiAgYmFubmVyOiBmYWxzZSxcbiAgY2xhc3NOYW1lOiB1bmRlZmluZWQsXG4gIGRlZmF1bHRWYWx1ZTogbnVsbCxcbiAgZGlzYWJsZWQ6IGZhbHNlLFxuICBndXR0ZXI6IHVuZGVmaW5lZCxcbiAgb25DaGFuZ2U6ICgpID0+IHt9LFxuICBzaXplOiBcImxhcmdlXCIsXG4gIHZhbHVlOiBudWxsLFxufVxuXG5leHBvcnQgZGVmYXVsdCBUYWJzXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBT0EsS0FBSyxJQUNWQyxVQUFVLEVBQ1ZDLFVBQVUsRUFDVkMsU0FBUyxFQUNUQyxtQkFBbUIsRUFDbkJDLE1BQU0sRUFDTkMsUUFBUSxRQUNILE9BQU87QUFDZCxPQUFPQyxTQUFTLE1BQU0sWUFBWTtBQUNsQyxPQUFPQyxVQUFVLE1BQU0sWUFBWTtBQUNuQyxTQUFTQyxhQUFhLEVBQUVDLGVBQWUsUUFBUSxvQkFBb0I7QUFDbkUsT0FBT0MsR0FBRyxNQUFNLE9BQU87QUFDdkIsU0FBU0MsV0FBVyxRQUFRLFdBQVc7QUFDdkMsT0FBTyxTQUFTO0FBRWhCLElBQU1DLE1BQU0sR0FBRyxvQkFBb0I7QUFxRG5DLElBQU1DLElBQVcsR0FBR2IsVUFBVSxDQUM1QixVQUFBYyxJQUFBLEVBYUVDLEdBQVEsRUFDTDtFQUFBLElBWkRDLE1BQU0sR0FBQUYsSUFBQSxDQUFORSxNQUFNO0lBQ05DLFNBQVMsR0FBQUgsSUFBQSxDQUFURyxTQUFTO0lBQ1RDLFFBQVEsR0FBQUosSUFBQSxDQUFSSSxRQUFRO0lBQ1JDLFlBQVksR0FBQUwsSUFBQSxDQUFaSyxZQUFZO0lBQ1pDLFFBQVEsR0FBQU4sSUFBQSxDQUFSTSxRQUFRO0lBQ1JDLE1BQU0sR0FBQVAsSUFBQSxDQUFOTyxNQUFNO0lBQ05DLFFBQVEsR0FBQVIsSUFBQSxDQUFSUSxRQUFRO0lBQ1JDLElBQUksR0FBQVQsSUFBQSxDQUFKUyxJQUFJO0lBQ0dDLFNBQVMsR0FBQVYsSUFBQSxDQUFoQlcsS0FBSztJQUNGQyxVQUFVLEdBQUFDLHdCQUFBLENBQUFiLElBQUEsRUFBQWMsU0FBQTtFQUlmLElB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