UNPKG

kepler.gl

Version:

kepler.gl is a webgl based application to visualize large scale location data in the browser

126 lines (125 loc) 21.2 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral")); var _react = _interopRequireDefault(require("/Users/ihordykhta/Desktop/unfolded/kepler.gl/node_modules/react")); var _styledComponents = require("../../common/styled-components"); var _components = require("./components"); var _src = require("/Users/ihordykhta/Desktop/unfolded/kepler.gl/src/constants/src"); var _styledComponents2 = _interopRequireDefault(require("/Users/ihordykhta/Desktop/unfolded/kepler.gl/node_modules/styled-components")); var _reactIntl = require("/Users/ihordykhta/Desktop/unfolded/kepler.gl/node_modules/react-intl"); var _src2 = require("/Users/ihordykhta/Desktop/unfolded/kepler.gl/src/localization/src"); var _templateObject, _templateObject2, _templateObject3; // SPDX-License-Identifier: MIT // Copyright contributors to the kepler.gl project var ExportMapStyledExportSection = (0, _styledComponents2["default"])(_styledComponents.StyledExportSection)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n .disclaimer {\n font-size: ", ";\n color: ", ";\n margin-top: 12px;\n }\n"])), function (props) { return props.theme.inputFontSize; }, function (props) { return props.theme.inputColor; }); var StyledInput = _styledComponents2["default"].input(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n padding: ", ";\n color: ", ";\n height: ", ";\n outline: 0;\n font-size: ", ";\n\n &:active,\n &:focus,\n &.focus,\n &.active {\n outline: 0;\n }\n"])), function (props) { return props.theme.inputPadding; }, function (props) { return props.error ? 'red' : props.theme.titleColorLT; }, function (props) { return props.theme.inputBoxHeight; }, function (props) { return props.theme.inputFontSize; }); var BigStyledTile = (0, _styledComponents2["default"])(_styledComponents.StyledType)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n height: unset;\n width: unset;\n img {\n width: 180px;\n height: 120px;\n }\n"]))); function ExportHtmlMapFactory() { /** @type {typeof import('./export-html-map').ExportHtmlMap} */ var ExportHtmlMap = function ExportHtmlMap(_ref) { var _ref$onChangeExportMa = _ref.onChangeExportMapHTMLMode, onChangeExportMapHTMLMode = _ref$onChangeExportMa === void 0 ? function () { return; } : _ref$onChangeExportMa, _ref$onEditUserMapbox = _ref.onEditUserMapboxAccessToken, onEditUserMapboxAccessToken = _ref$onEditUserMapbox === void 0 ? function () { return; } : _ref$onEditUserMapbox, _ref$options = _ref.options, options = _ref$options === void 0 ? {} : _ref$options, intl = _ref.intl; return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_components.StyledExportMapSection, null, /*#__PURE__*/_react["default"].createElement("div", { className: "description" }), /*#__PURE__*/_react["default"].createElement("div", { className: "selection" }, /*#__PURE__*/_react["default"].createElement(_src2.FormattedMessage, { id: 'modal.exportMap.html.selection' }))), /*#__PURE__*/_react["default"].createElement(ExportMapStyledExportSection, { className: "export-map-modal__html-options" }, /*#__PURE__*/_react["default"].createElement("div", { className: "description" }, /*#__PURE__*/_react["default"].createElement("div", { className: "title" }, /*#__PURE__*/_react["default"].createElement(_src2.FormattedMessage, { id: 'modal.exportMap.html.tokenTitle' })), /*#__PURE__*/_react["default"].createElement("div", { className: "subtitle" }, /*#__PURE__*/_react["default"].createElement(_src2.FormattedMessage, { id: 'modal.exportMap.html.tokenSubtitle' }))), /*#__PURE__*/_react["default"].createElement("div", { className: "selection" }, /*#__PURE__*/_react["default"].createElement(StyledInput, { onChange: function onChange(e) { return onEditUserMapboxAccessToken(e.target.value); }, type: "text", placeholder: intl.formatMessage({ id: 'modal.exportMap.html.tokenPlaceholder' }), value: options ? options.userMapboxToken : '' }), /*#__PURE__*/_react["default"].createElement("div", { className: "disclaimer" }, /*#__PURE__*/_react["default"].createElement(_components.StyledWarning, null, /*#__PURE__*/_react["default"].createElement(_src2.FormattedMessage, { id: 'modal.exportMap.html.tokenMisuseWarning' })), /*#__PURE__*/_react["default"].createElement(_src2.FormattedMessage, { id: 'modal.exportMap.html.tokenDisclaimer' }), /*#__PURE__*/_react["default"].createElement(_components.ExportMapLink, { href: _src.EXPORT_HTML_MAP_DOC }, /*#__PURE__*/_react["default"].createElement(_src2.FormattedMessage, { id: 'modal.exportMap.html.tokenUpdate' }))))), /*#__PURE__*/_react["default"].createElement(ExportMapStyledExportSection, null, /*#__PURE__*/_react["default"].createElement("div", { className: "description" }, /*#__PURE__*/_react["default"].createElement("div", { className: "title" }, /*#__PURE__*/_react["default"].createElement(_src2.FormattedMessage, { id: 'modal.exportMap.html.modeTitle' })), /*#__PURE__*/_react["default"].createElement("div", { className: "subtitle" }, /*#__PURE__*/_react["default"].createElement(_src2.FormattedMessage, { id: 'modal.exportMap.html.modeSubtitle1' }), /*#__PURE__*/_react["default"].createElement("a", { href: _src.EXPORT_HTML_MAP_MODES_DOC }, /*#__PURE__*/_react["default"].createElement(_src2.FormattedMessage, { id: 'modal.exportMap.html.modeSubtitle2' })))), /*#__PURE__*/_react["default"].createElement("div", { className: "selection" }, _src.EXPORT_HTML_MAP_MODE_OPTIONS.map(function (mode) { return /*#__PURE__*/_react["default"].createElement(BigStyledTile, { key: mode.id, selected: options.mode === mode.id, onClick: function onClick() { return mode.available && onChangeExportMapHTMLMode(mode.id); } }, /*#__PURE__*/_react["default"].createElement("img", { src: mode.url, alt: "" }), /*#__PURE__*/_react["default"].createElement("p", null, /*#__PURE__*/_react["default"].createElement(_src2.FormattedMessage, { id: 'modal.exportMap.html.modeDescription', values: { mode: intl.formatMessage({ id: mode.label }) } })), options.mode === mode.id && /*#__PURE__*/_react["default"].createElement(_styledComponents.CheckMark, null)); })))); }; ExportHtmlMap.displayName = 'ExportHtmlMap'; return (0, _reactIntl.injectIntl)(ExportHtmlMap); } var _default = exports["default"] = ExportHtmlMapFactory; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdHlsZWRDb21wb25lbnRzIiwiX2NvbXBvbmVudHMiLCJfc3JjIiwiX3N0eWxlZENvbXBvbmVudHMyIiwiX3JlYWN0SW50bCIsIl9zcmMyIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJFeHBvcnRNYXBTdHlsZWRFeHBvcnRTZWN0aW9uIiwic3R5bGVkIiwiU3R5bGVkRXhwb3J0U2VjdGlvbiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJ0aGVtZSIsImlucHV0Rm9udFNpemUiLCJpbnB1dENvbG9yIiwiU3R5bGVkSW5wdXQiLCJpbnB1dCIsImlucHV0UGFkZGluZyIsImVycm9yIiwidGl0bGVDb2xvckxUIiwiaW5wdXRCb3hIZWlnaHQiLCJCaWdTdHlsZWRUaWxlIiwiU3R5bGVkVHlwZSIsIkV4cG9ydEh0bWxNYXBGYWN0b3J5IiwiRXhwb3J0SHRtbE1hcCIsIl9yZWYiLCJfcmVmJG9uQ2hhbmdlRXhwb3J0TWEiLCJvbkNoYW5nZUV4cG9ydE1hcEhUTUxNb2RlIiwiX3JlZiRvbkVkaXRVc2VyTWFwYm94Iiwib25FZGl0VXNlck1hcGJveEFjY2Vzc1Rva2VuIiwiX3JlZiRvcHRpb25zIiwib3B0aW9ucyIsImludGwiLCJjcmVhdGVFbGVtZW50IiwiU3R5bGVkRXhwb3J0TWFwU2VjdGlvbiIsImNsYXNzTmFtZSIsIkZvcm1hdHRlZE1lc3NhZ2UiLCJpZCIsIm9uQ2hhbmdlIiwiZSIsInRhcmdldCIsInZhbHVlIiwidHlwZSIsInBsYWNlaG9sZGVyIiwiZm9ybWF0TWVzc2FnZSIsInVzZXJNYXBib3hUb2tlbiIsIlN0eWxlZFdhcm5pbmciLCJFeHBvcnRNYXBMaW5rIiwiaHJlZiIsIkVYUE9SVF9IVE1MX01BUF9ET0MiLCJFWFBPUlRfSFRNTF9NQVBfTU9ERVNfRE9DIiwiRVhQT1JUX0hUTUxfTUFQX01PREVfT1BUSU9OUyIsIm1hcCIsIm1vZGUiLCJrZXkiLCJzZWxlY3RlZCIsIm9uQ2xpY2siLCJhdmFpbGFibGUiLCJzcmMiLCJ1cmwiLCJhbHQiLCJ2YWx1ZXMiLCJsYWJlbCIsIkNoZWNrTWFyayIsImRpc3BsYXlOYW1lIiwiaW5qZWN0SW50bCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NyYy9tb2RhbHMvZXhwb3J0LW1hcC1tb2RhbC9leHBvcnQtaHRtbC1tYXAudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQge1N0eWxlZEV4cG9ydFNlY3Rpb24sIFN0eWxlZFR5cGUsIENoZWNrTWFya30gZnJvbSAnLi4vLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7U3R5bGVkRXhwb3J0TWFwU2VjdGlvbiwgU3R5bGVkV2FybmluZywgRXhwb3J0TWFwTGlua30gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7XG4gIEVYUE9SVF9IVE1MX01BUF9NT0RFX09QVElPTlMsXG4gIEVYUE9SVF9IVE1MX01BUF9ET0MsXG4gIEVYUE9SVF9IVE1MX01BUF9NT0RFU19ET0Ncbn0gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge2luamVjdEludGx9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHtGb3JtYXR0ZWRNZXNzYWdlfSBmcm9tICdAa2VwbGVyLmdsL2xvY2FsaXphdGlvbic7XG5pbXBvcnQge0ludGxTaGFwZX0gZnJvbSAncmVhY3QtaW50bCc7XG5cbmltcG9ydCB7c2V0VXNlck1hcGJveEFjY2Vzc1Rva2VuLCBzZXRFeHBvcnRIVE1MTWFwTW9kZSwgQWN0aW9uSGFuZGxlcn0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcblxuY29uc3QgRXhwb3J0TWFwU3R5bGVkRXhwb3J0U2VjdGlvbiA9IHN0eWxlZChTdHlsZWRFeHBvcnRTZWN0aW9uKWBcbiAgLmRpc2NsYWltZXIge1xuICAgIGZvbnQtc2l6ZTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEZvbnRTaXplfTtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dENvbG9yfTtcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICB9XG5gO1xuXG5pbnRlcmZhY2UgU3R5bGVkSW5wdXRQcm9wcyB7XG4gIGVycm9yPzogYm9vbGVhbjtcbn1cblxuY29uc3QgU3R5bGVkSW5wdXQgPSBzdHlsZWQuaW5wdXQ8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0UGFkZGluZ307XG4gIGNvbG9yOiAke3Byb3BzID0+IChwcm9wcy5lcnJvciA/ICdyZWQnIDogcHJvcHMudGhlbWUudGl0bGVDb2xvckxUKX07XG4gIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodH07XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtc2l6ZTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEZvbnRTaXplfTtcblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyxcbiAgJi5hY3RpdmUge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbmA7XG5cbmNvbnN0IEJpZ1N0eWxlZFRpbGUgPSBzdHlsZWQoU3R5bGVkVHlwZSlgXG4gIGhlaWdodDogdW5zZXQ7XG4gIHdpZHRoOiB1bnNldDtcbiAgaW1nIHtcbiAgICB3aWR0aDogMTgwcHg7XG4gICAgaGVpZ2h0OiAxMjBweDtcbiAgfVxuYDtcblxudHlwZSBFeHBvcnRIdG1sTWFwUHJvcHMgPSB7XG4gIG9uQ2hhbmdlRXhwb3J0TWFwSFRNTE1vZGU6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIHNldEV4cG9ydEhUTUxNYXBNb2RlPjtcbiAgb25FZGl0VXNlck1hcGJveEFjY2Vzc1Rva2VuOiBBY3Rpb25IYW5kbGVyPHR5cGVvZiBzZXRVc2VyTWFwYm94QWNjZXNzVG9rZW4+O1xuICBvcHRpb25zOiB7XG4gICAgdXNlck1hcGJveFRva2VuPzogc3RyaW5nO1xuICAgIG1vZGU/OiBzdHJpbmc7XG4gIH07XG59O1xuXG50eXBlIEludGxQcm9wcyA9IHtcbiAgaW50bDogSW50bFNoYXBlO1xufTtcblxuZnVuY3Rpb24gRXhwb3J0SHRtbE1hcEZhY3RvcnkoKTogUmVhY3QuQ29tcG9uZW50VHlwZTxFeHBvcnRIdG1sTWFwUHJvcHM+IHtcbiAgLyoqIEB0eXBlIHt0eXBlb2YgaW1wb3J0KCcuL2V4cG9ydC1odG1sLW1hcCcpLkV4cG9ydEh0bWxNYXB9ICovXG4gIGNvbnN0IEV4cG9ydEh0bWxNYXA6IFJlYWN0LkZDPEV4cG9ydEh0bWxNYXBQcm9wcyAmIEludGxQcm9wcz4gPSAoe1xuICAgIG9uQ2hhbmdlRXhwb3J0TWFwSFRNTE1vZGUgPSAoKSA9PiB7XG4gICAgICByZXR1cm47XG4gICAgfSxcbiAgICBvbkVkaXRVc2VyTWFwYm94QWNjZXNzVG9rZW4gPSAoKSA9PiB7XG4gICAgICByZXR1cm47XG4gICAgfSxcbiAgICBvcHRpb25zID0ge30sXG4gICAgaW50bFxuICB9KSA9PiAoXG4gICAgPGRpdj5cbiAgICAgIDxTdHlsZWRFeHBvcnRNYXBTZWN0aW9uPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRlc2NyaXB0aW9uXCIgLz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzZWxlY3Rpb25cIj5cbiAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmV4cG9ydE1hcC5odG1sLnNlbGVjdGlvbid9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9TdHlsZWRFeHBvcnRNYXBTZWN0aW9uPlxuICAgICAgPEV4cG9ydE1hcFN0eWxlZEV4cG9ydFNlY3Rpb24gY2xhc3NOYW1lPVwiZXhwb3J0LW1hcC1tb2RhbF9faHRtbC1vcHRpb25zXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGVzY3JpcHRpb25cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpdGxlXCI+XG4gICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmV4cG9ydE1hcC5odG1sLnRva2VuVGl0bGUnfSAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic3VidGl0bGVcIj5cbiAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuZXhwb3J0TWFwLmh0bWwudG9rZW5TdWJ0aXRsZSd9IC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInNlbGVjdGlvblwiPlxuICAgICAgICAgIDxTdHlsZWRJbnB1dFxuICAgICAgICAgICAgb25DaGFuZ2U9e2UgPT4gb25FZGl0VXNlck1hcGJveEFjY2Vzc1Rva2VuKGUudGFyZ2V0LnZhbHVlKX1cbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuZXhwb3J0TWFwLmh0bWwudG9rZW5QbGFjZWhvbGRlcid9KX1cbiAgICAgICAgICAgIHZhbHVlPXtvcHRpb25zID8gb3B0aW9ucy51c2VyTWFwYm94VG9rZW4gOiAnJ31cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGlzY2xhaW1lclwiPlxuICAgICAgICAgICAgPFN0eWxlZFdhcm5pbmc+XG4gICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuZXhwb3J0TWFwLmh0bWwudG9rZW5NaXN1c2VXYXJuaW5nJ30gLz5cbiAgICAgICAgICAgIDwvU3R5bGVkV2FybmluZz5cbiAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuZXhwb3J0TWFwLmh0bWwudG9rZW5EaXNjbGFpbWVyJ30gLz5cbiAgICAgICAgICAgIDxFeHBvcnRNYXBMaW5rIGhyZWY9e0VYUE9SVF9IVE1MX01BUF9ET0N9PlxuICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmV4cG9ydE1hcC5odG1sLnRva2VuVXBkYXRlJ30gLz5cbiAgICAgICAgICAgIDwvRXhwb3J0TWFwTGluaz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L0V4cG9ydE1hcFN0eWxlZEV4cG9ydFNlY3Rpb24+XG4gICAgICA8RXhwb3J0TWFwU3R5bGVkRXhwb3J0U2VjdGlvbj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXNjcmlwdGlvblwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGl0bGVcIj5cbiAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuZXhwb3J0TWFwLmh0bWwubW9kZVRpdGxlJ30gLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInN1YnRpdGxlXCI+XG4gICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmV4cG9ydE1hcC5odG1sLm1vZGVTdWJ0aXRsZTEnfSAvPlxuICAgICAgICAgICAgPGEgaHJlZj17RVhQT1JUX0hUTUxfTUFQX01PREVTX0RPQ30+XG4gICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuZXhwb3J0TWFwLmh0bWwubW9kZVN1YnRpdGxlMid9IC8+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInNlbGVjdGlvblwiPlxuICAgICAgICAgIHtFWFBPUlRfSFRNTF9NQVBfTU9ERV9PUFRJT05TLm1hcChtb2RlID0+IChcbiAgICAgICAgICAgIDxCaWdTdHlsZWRUaWxlXG4gICAgICAgICAgICAgIGtleT17bW9kZS5pZH1cbiAgICAgICAgICAgICAgc2VsZWN0ZWQ9e29wdGlvbnMubW9kZSA9PT0gbW9kZS5pZH1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gbW9kZS5hdmFpbGFibGUgJiYgb25DaGFuZ2VFeHBvcnRNYXBIVE1MTW9kZShtb2RlLmlkKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGltZyBzcmM9e21vZGUudXJsfSBhbHQ9XCJcIiAvPlxuICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgaWQ9eydtb2RhbC5leHBvcnRNYXAuaHRtbC5tb2RlRGVzY3JpcHRpb24nfVxuICAgICAgICAgICAgICAgICAgdmFsdWVzPXt7bW9kZTogaW50bC5mb3JtYXRNZXNzYWdlKHtpZDogbW9kZS5sYWJlbH0pfX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIHtvcHRpb25zLm1vZGUgPT09IG1vZGUuaWQgJiYgPENoZWNrTWFyayAvPn1cbiAgICAgICAgICAgIDwvQmlnU3R5bGVkVGlsZT5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L0V4cG9ydE1hcFN0eWxlZEV4cG9ydFNlY3Rpb24+XG4gICAgPC9kaXY+XG4gICk7XG5cbiAgRXhwb3J0SHRtbE1hcC5kaXNwbGF5TmFtZSA9ICdFeHBvcnRIdG1sTWFwJztcblxuICByZXR1cm4gaW5qZWN0SW50bChFeHBvcnRIdG1sTWFwKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgRXhwb3J0SHRtbE1hcEZhY3Rvcnk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJB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