UNPKG

kepler.gl.geoiq

Version:

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

104 lines (88 loc) 17.8 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = exports.uiStateReducerFactory = exports.INITIAL_UI_STATE = exports.DEFAULT_NOTIFICATIONS = exports.DEFAULT_EXPORT_DATA = exports.DEFAULT_EXPORT_IMAGE = exports.DEFAULT_MAP_CONTROLS = exports.DEFAULT_MODAL = exports.DEFAULT_ACTIVE_SIDE_PANEL = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _reduxActions = require("redux-actions"); var _actionTypes = _interopRequireDefault(require("../constants/action-types")); var _defaultSettings = require("../constants/default-settings"); var _uiStateUpdaters = require("./ui-state-updaters"); var _actionHandler; function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } var DEFAULT_ACTIVE_SIDE_PANEL = 'layer'; exports.DEFAULT_ACTIVE_SIDE_PANEL = DEFAULT_ACTIVE_SIDE_PANEL; var DEFAULT_MODAL = _defaultSettings.ADD_DATA_ID; exports.DEFAULT_MODAL = DEFAULT_MODAL; var DEFAULT_MAP_CONTROLS = { visibleLayers: { show: true, active: false }, mapLegend: { show: true, active: false }, toggle3d: { show: true }, splitMap: { show: true }, searchMap: { show: true, active: false } }; exports.DEFAULT_MAP_CONTROLS = DEFAULT_MAP_CONTROLS; var DEFAULT_EXPORT_IMAGE = { // user options ratio: _defaultSettings.RATIOS.SCREEN, resolution: _defaultSettings.RESOLUTIONS.ONE_X, legend: false, // exporting state imageDataUri: '', exporting: false }; exports.DEFAULT_EXPORT_IMAGE = DEFAULT_EXPORT_IMAGE; var DEFAULT_EXPORT_DATA = { selectedDataset: '', dataType: _defaultSettings.EXPORT_DATA_TYPE.CSV, filtered: true, config: false, // no longer used, since we removed the option to export config from modal data export data: false // this is used in modal config export }; exports.DEFAULT_EXPORT_DATA = DEFAULT_EXPORT_DATA; var DEFAULT_NOTIFICATIONS = []; exports.DEFAULT_NOTIFICATIONS = DEFAULT_NOTIFICATIONS; var INITIAL_UI_STATE = { readOnly: false, activeSidePanel: DEFAULT_ACTIVE_SIDE_PANEL, currentModal: DEFAULT_MODAL, datasetKeyToRemove: null, visibleDropdown: null, // export image modal ui exportImage: DEFAULT_EXPORT_IMAGE, // export data modal ui exportData: DEFAULT_EXPORT_DATA, // map control panels mapControls: DEFAULT_MAP_CONTROLS, // ui notifications notifications: DEFAULT_NOTIFICATIONS }; exports.INITIAL_UI_STATE = INITIAL_UI_STATE; var actionHandler = (_actionHandler = {}, (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].TOGGLE_SIDE_PANEL, _uiStateUpdaters.toggleSidePanelUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].TOGGLE_MODAL, _uiStateUpdaters.toggleModalUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].SHOW_EXPORT_DROPDOWN, _uiStateUpdaters.showExportDropdownUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].HIDE_EXPORT_DROPDOWN, _uiStateUpdaters.hideExportDropdownUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].OPEN_DELETE_MODAL, _uiStateUpdaters.openDeleteModalUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].TOGGLE_MAP_CONTROL, _uiStateUpdaters.toggleMapControlUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].ADD_NOTIFICATION, _uiStateUpdaters.addNotificationUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].REMOVE_NOTIFICATION, _uiStateUpdaters.removeNotificationUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].SET_RATIO, _uiStateUpdaters.setRatioUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].SET_RESOLUTION, _uiStateUpdaters.setResolutionUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].TOGGLE_LEGEND, _uiStateUpdaters.toggleLegendUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].START_EXPORTING_IMAGE, _uiStateUpdaters.startExportingImage), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].SET_EXPORT_IMAGE_DATA_URI, _uiStateUpdaters.setExportImageDataUri), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].CLEANUP_EXPORT_IMAGE, _uiStateUpdaters.cleanupExportImage), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].SET_EXPORT_SELECTED_DATASET, _uiStateUpdaters.setExportSelectedDatasetUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].SET_EXPORT_DATA_TYPE, _uiStateUpdaters.setExportDataTypeUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].SET_EXPORT_FILTERED, _uiStateUpdaters.setExportFilteredUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].SET_EXPORT_CONFIG, _uiStateUpdaters.setExportConfigUpdater), (0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].SET_EXPORT_DATA, _uiStateUpdaters.setExportDataUpdater), _actionHandler); /* Reducer */ var uiStateReducerFactory = function uiStateReducerFactory() { var initialState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return (0, _reduxActions.handleActions)(actionHandler, _objectSpread({}, INITIAL_UI_STATE, {}, initialState, { initialState: initialState })); }; exports.uiStateReducerFactory = uiStateReducerFactory; var _default = uiStateReducerFactory(); exports["default"] = _default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZWR1Y2Vycy91aS1zdGF0ZS5qcyJdLCJuYW1lcyI6WyJERUZBVUxUX0FDVElWRV9TSURFX1BBTkVMIiwiREVGQVVMVF9NT0RBTCIsIkFERF9EQVRBX0lEIiwiREVGQVVMVF9NQVBfQ09OVFJPTFMiLCJ2aXNpYmxlTGF5ZXJzIiwic2hvdyIsImFjdGl2ZSIsIm1hcExlZ2VuZCIsInRvZ2dsZTNkIiwic3BsaXRNYXAiLCJzZWFyY2hNYXAiLCJERUZBVUxUX0VYUE9SVF9JTUFHRSIsInJhdGlvIiwiUkFUSU9TIiwiU0NSRUVOIiwicmVzb2x1dGlvbiIsIlJFU09MVVRJT05TIiwiT05FX1giLCJsZWdlbmQiLCJpbWFnZURhdGFVcmkiLCJleHBvcnRpbmciLCJERUZBVUxUX0VYUE9SVF9EQVRBIiwic2VsZWN0ZWREYXRhc2V0IiwiZGF0YVR5cGUiLCJFWFBPUlRfREFUQV9UWVBFIiwiQ1NWIiwiZmlsdGVyZWQiLCJjb25maWciLCJkYXRhIiwiREVGQVVMVF9OT1RJRklDQVRJT05TIiwiSU5JVElBTF9VSV9TVEFURSIsInJlYWRPbmx5IiwiYWN0aXZlU2lkZVBhbmVsIiwiY3VycmVudE1vZGFsIiwiZGF0YXNldEtleVRvUmVtb3ZlIiwidmlzaWJsZURyb3Bkb3duIiwiZXhwb3J0SW1hZ2UiLCJleHBvcnREYXRhIiwibWFwQ29udHJvbHMiLCJub3RpZmljYXRpb25zIiwiYWN0aW9uSGFuZGxlciIsIkFjdGlvblR5cGVzIiwiVE9HR0xFX1NJREVfUEFORUwiLCJ0b2dnbGVTaWRlUGFuZWxVcGRhdGVyIiwiVE9HR0xFX01PREFMIiwidG9nZ2xlTW9kYWxVcGRhdGVyIiwiU0hPV19FWFBPUlRfRFJPUERPV04iLCJzaG93RXhwb3J0RHJvcGRvd25VcGRhdGVyIiwiSElERV9FWFBPUlRfRFJPUERPV04iLCJoaWRlRXhwb3J0RHJvcGRvd25VcGRhdGVyIiwiT1BFTl9ERUxFVEVfTU9EQUwiLCJvcGVuRGVsZXRlTW9kYWxVcGRhdGVyIiwiVE9HR0xFX01BUF9DT05UUk9MIiwidG9nZ2xlTWFwQ29udHJvbFVwZGF0ZXIiLCJBRERfTk9USUZJQ0FUSU9OIiwiYWRkTm90aWZpY2F0aW9uVXBkYXRlciIsIlJFTU9WRV9OT1RJRklDQVRJT04iLCJyZW1vdmVOb3RpZmljYXRpb25VcGRhdGVyIiwiU0VUX1JBVElPIiwic2V0UmF0aW9VcGRhdGVyIiwiU0VUX1JFU09MVVRJT04iLCJzZXRSZXNvbHV0aW9uVXBkYXRlciIsIlRPR0dMRV9MRUdFTkQiLCJ0b2dnbGVMZWdlbmRVcGRhdGVyIiwiU1RBUlRfRVhQT1JUSU5HX0lNQUdFIiwic3RhcnRFeHBvcnRpbmdJbWFnZSIsIlNFVF9FWFBPUlRfSU1BR0VfREFUQV9VUkkiLCJzZXRFeHBvcnRJbWFnZURhdGFVcmkiLCJDTEVBTlVQX0VYUE9SVF9JTUFHRSIsImNsZWFudXBFeHBvcnRJbWFnZSIsIlNFVF9FWFBPUlRfU0VMRUNURURfREFUQVNFVCIsInNldEV4cG9ydFNlbGVjdGVkRGF0YXNldFVwZGF0ZXIiLCJTRVRfRVhQT1JUX0RBVEFfVFlQRSIsInNldEV4cG9ydERhdGFUeXBlVXBkYXRlciIsIlNFVF9FWFBPUlRfRklMVEVSRUQiLCJzZXRFeHBvcnRGaWx0ZXJlZFVwZGF0ZXIiLCJTRVRfRVhQT1JUX0NPTkZJRyIsInNldEV4cG9ydENvbmZpZ1VwZGF0ZXIiLCJTRVRfRVhQT1JUX0RBVEEiLCJzZXRFeHBvcnREYXRhVXBkYXRlciIsInVpU3RhdGVSZWR1Y2VyRmFjdG9yeSIsImluaXRpYWxTdGF0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBTUE7Ozs7Ozs7O0FBMEJPLElBQU1BLHlCQUF5QixHQUFHLE9BQWxDOztBQUNBLElBQU1DLGFBQWEsR0FBR0MsNEJBQXRCOztBQUVBLElBQU1DLG9CQUFvQixHQUFHO0FBQ2xDQyxFQUFBQSxhQUFhLEVBQUU7QUFDYkMsSUFBQUEsSUFBSSxFQUFFLElBRE87QUFFYkMsSUFBQUEsTUFBTSxFQUFFO0FBRkssR0FEbUI7QUFLbENDLEVBQUFBLFNBQVMsRUFBRTtBQUNURixJQUFBQSxJQUFJLEVBQUUsSUFERztBQUVUQyxJQUFBQSxNQUFNLEVBQUU7QUFGQyxHQUx1QjtBQVNsQ0UsRUFBQUEsUUFBUSxFQUFFO0FBQ1JILElBQUFBLElBQUksRUFBRTtBQURFLEdBVHdCO0FBWWxDSSxFQUFBQSxRQUFRLEVBQUU7QUFDUkosSUFBQUEsSUFBSSxFQUFFO0FBREUsR0Fad0I7QUFlbENLLEVBQUFBLFNBQVMsRUFBRTtBQUNUTCxJQUFBQSxJQUFJLEVBQUUsSUFERztBQUVUQyxJQUFBQSxNQUFNLEVBQUU7QUFGQztBQWZ1QixDQUE3Qjs7QUFxQkEsSUFBTUssb0JBQW9CLEdBQUc7QUFDbEM7QUFDQUMsRUFBQUEsS0FBSyxFQUFFQyx3QkFBT0MsTUFGb0I7QUFHbENDLEVBQUFBLFVBQVUsRUFBRUMsNkJBQVlDLEtBSFU7QUFJbENDLEVBQUFBLE1BQU0sRUFBRSxLQUowQjtBQUtsQztBQUNBQyxFQUFBQSxZQUFZLEVBQUUsRUFOb0I7QUFPbENDLEVBQUFBLFNBQVMsRUFBRTtBQVB1QixDQUE3Qjs7QUFVQSxJQUFNQyxtQkFBbUIsR0FBRztBQUNqQ0MsRUFBQUEsZUFBZSxFQUFFLEVBRGdCO0FBRWpDQyxFQUFBQSxRQUFRLEVBQUVDLGtDQUFpQkMsR0FGTTtBQUdqQ0MsRUFBQUEsUUFBUSxFQUFFLElBSHVCO0FBSWpDQyxFQUFBQSxNQUFNLEVBQUUsS0FKeUI7QUFJbEI7QUFDZkMsRUFBQUEsSUFBSSxFQUFFLEtBTDJCLENBS3JCOztBQUxxQixDQUE1Qjs7QUFRQSxJQUFNQyxxQkFBcUIsR0FBRyxFQUE5Qjs7QUFFQSxJQUFNQyxnQkFBZ0IsR0FBRztBQUM5QkMsRUFBQUEsUUFBUSxFQUFFLEtBRG9CO0FBRTlCQyxFQUFBQSxlQUFlLEVBQUVoQyx5QkFGYTtBQUc5QmlDLEVBQUFBLFlBQVksRUFBRWhDLGFBSGdCO0FBSTlCaUMsRUFBQUEsa0JBQWtCLEVBQUUsSUFKVTtBQUs5QkMsRUFBQUEsZUFBZSxFQUFFLElBTGE7QUFNOUI7QUFDQUMsRUFBQUEsV0FBVyxFQUFFekIsb0JBUGlCO0FBUTlCO0FBQ0EwQixFQUFBQSxVQUFVLEVBQUVoQixtQkFUa0I7QUFVOUI7QUFDQWlCLEVBQUFBLFdBQVcsRUFBRW5DLG9CQVhpQjtBQVk5QjtBQUNBb0MsRUFBQUEsYUFBYSxFQUFFVjtBQWJlLENBQXpCOztBQWdCUCxJQUFNVyxhQUFhLDBFQUNoQkMsd0JBQVlDLGlCQURJLEVBQ2dCQyx1Q0FEaEIsb0RBRWhCRix3QkFBWUcsWUFGSSxFQUVXQyxtQ0FGWCxvREFHaEJKLHdCQUFZSyxvQkFISSxFQUdtQkMsMENBSG5CLG9EQUloQk4sd0JBQVlPLG9CQUpJLEVBSW1CQywwQ0FKbkIsb0RBS2hCUix3QkFBWVMsaUJBTEksRUFLZ0JDLHVDQUxoQixvREFNaEJWLHdCQUFZVyxrQkFOSSxFQU1pQkMsd0NBTmpCLG9EQU9oQlosd0JBQVlhLGdCQVBJLEVBT2VDLHVDQVBmLG9EQVFoQmQsd0JBQVllLG1CQVJJLEVBUWtCQywwQ0FSbEIsb0RBVWhCaEIsd0JBQVlpQixTQVZJLEVBVVFDLGdDQVZSLG9EQVdoQmxCLHdCQUFZbUIsY0FYSSxFQVdhQyxxQ0FYYixvREFZaEJwQix3QkFBWXFCLGFBWkksRUFZWUMsb0NBWlosb0RBYWhCdEIsd0JBQVl1QixxQkFiSSxFQWFvQkMsb0NBYnBCLG9EQWNoQnhCLHdCQUFZeUIseUJBZEksRUFjd0JDLHNDQWR4QixvREFlaEIxQix3QkFBWTJCLG9CQWZJLEVBZW1CQyxtQ0FmbkIsb0RBaUJoQjVCLHdCQUFZNkIsMkJBakJJLEVBaUIwQkMsZ0RBakIxQixvREFrQmhCOUIsd0JBQVkrQixvQkFsQkksRUFrQm1CQyx5Q0FsQm5CLG9EQW1CaEJoQyx3QkFBWWlDLG1CQW5CSSxFQW1Ca0JDLHlDQW5CbEIsb0RBb0JoQmxDLHdCQUFZbUMsaUJBcEJJLEVBb0JnQkMsdUNBcEJoQixvREFxQmhCcEMsd0JBQVlxQyxlQXJCSSxFQXFCY0MscUNBckJkLGtCQUFuQjtBQXdCQTs7QUFDTyxJQUFNQyxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXdCO0FBQUEsTUFBQ0MsWUFBRCx1RUFBZ0IsRUFBaEI7QUFBQSxTQUNuQyxpQ0FBY3pDLGFBQWQsb0JBQ0tWLGdCQURMLE1BRUttRCxZQUZMO0FBR0VBLElBQUFBLFlBQVksRUFBWkE7QUFIRixLQURtQztBQUFBLENBQTlCOzs7O2VBT1FELHFCQUFxQixFIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDE5IFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IHtoYW5kbGVBY3Rpb25zfSBmcm9tICdyZWR1eC1hY3Rpb25zJztcbmltcG9ydCBBY3Rpb25UeXBlcyBmcm9tICdjb25zdGFudHMvYWN0aW9uLXR5cGVzJztcbmltcG9ydCB7XG4gIEFERF9EQVRBX0lELFxuICBFWFBPUlRfREFUQV9UWVBFLFxuICBSQVRJT1MsXG4gIFJFU09MVVRJT05TXG59IGZyb20gJ2NvbnN0YW50cy9kZWZhdWx0LXNldHRpbmdzJztcbmltcG9ydCB7XG4gIG9wZW5EZWxldGVNb2RhbFVwZGF0ZXIsXG4gIHRvZ2dsZU1vZGFsVXBkYXRlcixcbiAgc2hvd0V4cG9ydERyb3Bkb3duVXBkYXRlcixcbiAgaGlkZUV4cG9ydERyb3Bkb3duVXBkYXRlcixcbiAgdG9nZ2xlU2lkZVBhbmVsVXBkYXRlcixcbiAgdG9nZ2xlTWFwQ29udHJvbFVwZGF0ZXIsXG4gIGFkZE5vdGlmaWNhdGlvblVwZGF0ZXIsXG4gIHJlbW92ZU5vdGlmaWNhdGlvblVwZGF0ZXIsXG5cbiAgLy8gZXhwb3J0IGltYWdlXG4gIGNsZWFudXBFeHBvcnRJbWFnZSxcbiAgc2V0RXhwb3J0SW1hZ2VEYXRhVXJpLFxuICBzZXRSYXRpb1VwZGF0ZXIsXG4gIHNldFJlc29sdXRpb25VcGRhdGVyLFxuICBzdGFydEV4cG9ydGluZ0ltYWdlLFxuICB0b2dnbGVMZWdlbmRVcGRhdGVyLFxuXG4gIC8vIGV4cG9ydCBkYXRhXG4gIHNldEV4cG9ydFNlbGVjdGVkRGF0YXNldFVwZGF0ZXIsXG4gIHNldEV4cG9ydERhdGFUeXBlVXBkYXRlcixcbiAgc2V0RXhwb3J0RmlsdGVyZWRVcGRhdGVyLFxuICBzZXRFeHBvcnRDb25maWdVcGRhdGVyLFxuICBzZXRFeHBvcnREYXRhVXBkYXRlclxufSBmcm9tICcuL3VpLXN0YXRlLXVwZGF0ZXJzJztcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfQUNUSVZFX1NJREVfUEFORUwgPSAnbGF5ZXInO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfTU9EQUwgPSBBRERfREFUQV9JRDtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfTUFQX0NPTlRST0xTID0ge1xuICB2aXNpYmxlTGF5ZXJzOiB7XG4gICAgc2hvdzogdHJ1ZSxcbiAgICBhY3RpdmU6IGZhbHNlXG4gIH0sXG4gIG1hcExlZ2VuZDoge1xuICAgIHNob3c6IHRydWUsXG4gICAgYWN0aXZlOiBmYWxzZVxuICB9LFxuICB0b2dnbGUzZDoge1xuICAgIHNob3c6IHRydWVcbiAgfSxcbiAgc3BsaXRNYXA6IHtcbiAgICBzaG93OiB0cnVlXG4gIH0sXG4gIHNlYXJjaE1hcDoge1xuICAgIHNob3c6IHRydWUsXG4gICAgYWN0aXZlOiBmYWxzZVxuICB9XG59O1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9FWFBPUlRfSU1BR0UgPSB7XG4gIC8vIHVzZXIgb3B0aW9uc1xuICByYXRpbzogUkFUSU9TLlNDUkVFTixcbiAgcmVzb2x1dGlvbjogUkVTT0xVVElPTlMuT05FX1gsXG4gIGxlZ2VuZDogZmFsc2UsXG4gIC8vIGV4cG9ydGluZyBzdGF0ZVxuICBpbWFnZURhdGFVcmk6ICcnLFxuICBleHBvcnRpbmc6IGZhbHNlXG59O1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9FWFBPUlRfREFUQSA9IHtcbiAgc2VsZWN0ZWREYXRhc2V0OiAnJyxcbiAgZGF0YVR5cGU6IEVYUE9SVF9EQVRBX1RZUEUuQ1NWLFxuICBmaWx0ZXJlZDogdHJ1ZSxcbiAgY29uZmlnOiBmYWxzZSwgLy8gbm8gbG9uZ2VyIHVzZWQsIHNpbmNlIHdlIHJlbW92ZWQgdGhlIG9wdGlvbiB0byBleHBvcnQgY29uZmlnIGZyb20gbW9kYWwgZGF0YSBleHBvcnRcbiAgZGF0YTogZmFsc2UgLy8gdGhpcyBpcyB1c2VkIGluIG1vZGFsIGNvbmZpZyBleHBvcnRcbn07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX05PVElGSUNBVElPTlMgPSBbXTtcblxuZXhwb3J0IGNvbnN0IElOSVRJQUxfVUlfU1RBVEUgPSB7XG4gIHJlYWRPbmx5OiBmYWxzZSxcbiAgYWN0aXZlU2lkZVBhbmVsOiBERUZBVUxUX0FDVElWRV9TSURFX1BBTkVMLFxuICBjdXJyZW50TW9kYWw6IERFRkFVTFRfTU9EQUwsXG4gIGRhdGFzZXRLZXlUb1JlbW92ZTogbnVsbCxcbiAgdmlzaWJsZURyb3Bkb3duOiBudWxsLFxuICAvLyBleHBvcnQgaW1hZ2UgbW9kYWwgdWlcbiAgZXhwb3J0SW1hZ2U6IERFRkFVTFRfRVhQT1JUX0lNQUdFLFxuICAvLyBleHBvcnQgZGF0YSBtb2RhbCB1aVxuICBleHBvcnREYXRhOiBERUZBVUxUX0VYUE9SVF9EQVRBLFxuICAvLyBtYXAgY29udHJvbCBwYW5lbHNcbiAgbWFwQ29udHJvbHM6IERFRkFVTFRfTUFQX0NPTlRST0xTLFxuICAvLyB1aSBub3RpZmljYXRpb25zXG4gIG5vdGlmaWNhdGlvbnM6IERFRkFVTFRfTk9USUZJQ0FUSU9OU1xufTtcblxuY29uc3QgYWN0aW9uSGFuZGxlciA9IHtcbiAgW0FjdGlvblR5cGVzLlRPR0dMRV9TSURFX1BBTkVMXTogdG9nZ2xlU2lkZVBhbmVsVXBkYXRlcixcbiAgW0FjdGlvblR5cGVzLlRPR0dMRV9NT0RBTF06IHRvZ2dsZU1vZGFsVXBkYXRlcixcbiAgW0FjdGlvblR5cGVzLlNIT1dfRVhQT1JUX0RST1BET1dOXTogc2hvd0V4cG9ydERyb3Bkb3duVXBkYXRlcixcbiAgW0FjdGlvblR5cGVzLkhJREVfRVhQT1JUX0RST1BET1dOXTogaGlkZUV4cG9ydERyb3Bkb3duVXBkYXRlcixcbiAgW0FjdGlvblR5cGVzLk9QRU5fREVMRVRFX01PREFMXTogb3BlbkRlbGV0ZU1vZGFsVXBkYXRlcixcbiAgW0FjdGlvblR5cGVzLlRPR0dMRV9NQVBfQ09OVFJPTF06IHRvZ2dsZU1hcENvbnRyb2xVcGRhdGVyLFxuICBbQWN0aW9uVHlwZXMuQUREX05PVElGSUNBVElPTl06IGFkZE5vdGlmaWNhdGlvblVwZGF0ZXIsXG4gIFtBY3Rpb25UeXBlcy5SRU1PVkVfTk9USUZJQ0FUSU9OXTogcmVtb3ZlTm90aWZpY2F0aW9uVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0VUX1JBVElPXTogc2V0UmF0aW9VcGRhdGVyLFxuICBbQWN0aW9uVHlwZXMuU0VUX1JFU09MVVRJT05dOiBzZXRSZXNvbHV0aW9uVXBkYXRlcixcbiAgW0FjdGlvblR5cGVzLlRPR0dMRV9MRUdFTkRdOiB0b2dnbGVMZWdlbmRVcGRhdGVyLFxuICBbQWN0aW9uVHlwZXMuU1RBUlRfRVhQT1JUSU5HX0lNQUdFXTogc3RhcnRFeHBvcnRpbmdJbWFnZSxcbiAgW0FjdGlvblR5cGVzLlNFVF9FWFBPUlRfSU1BR0VfREFUQV9VUkldOiBzZXRFeHBvcnRJbWFnZURhdGFVcmksXG4gIFtBY3Rpb25UeXBlcy5DTEVBTlVQX0VYUE9SVF9JTUFHRV06IGNsZWFudXBFeHBvcnRJbWFnZSxcblxuICBbQWN0aW9uVHlwZXMuU0VUX0VYUE9SVF9TRUxFQ1RFRF9EQVRBU0VUXTogc2V0RXhwb3J0U2VsZWN0ZWREYXRhc2V0VXBkYXRlcixcbiAgW0FjdGlvblR5cGVzLlNFVF9FWFBPUlRfREFUQV9UWVBFXTogc2V0RXhwb3J0RGF0YVR5cGVVcGRhdGVyLFxuICBbQWN0aW9uVHlwZXMuU0VUX0VYUE9SVF9GSUxURVJFRF06IHNldEV4cG9ydEZpbHRlcmVkVXBkYXRlcixcbiAgW0FjdGlvblR5cGVzLlNFVF9FWFBPUlRfQ09ORklHXTogc2V0RXhwb3J0Q29uZmlnVXBkYXRlcixcbiAgW0FjdGlvblR5cGVzLlNFVF9FWFBPUlRfREFUQV06IHNldEV4cG9ydERhdGFVcGRhdGVyXG59O1xuXG4vKiBSZWR1Y2VyICovXG5leHBvcnQgY29uc3QgdWlTdGF0ZVJlZHVjZXJGYWN0b3J5ID0gKGluaXRpYWxTdGF0ZSA9IHt9KSA9PlxuICBoYW5kbGVBY3Rpb25zKGFjdGlvbkhhbmRsZXIsIHtcbiAgICAuLi5JTklUSUFMX1VJX1NUQVRFLFxuICAgIC4uLmluaXRpYWxTdGF0ZSxcbiAgICBpbml0aWFsU3RhdGVcbiAgfSk7XG5cbmV4cG9ydCBkZWZhdWx0IHVpU3RhdGVSZWR1Y2VyRmFjdG9yeSgpO1xuIl19