kepler.gl
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
97 lines (72 loc) • 11.1 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.LoadDataModalFactory = LoadDataModalFactory;
exports["default"] = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
var _react = _interopRequireWildcard(require("react"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _lodash = _interopRequireDefault(require("lodash.get"));
var _reactIntl = require("react-intl");
var _fileUpload = _interopRequireDefault(require("../common/file-uploader/file-upload"));
var _loadStorageMap = _interopRequireDefault(require("./load-storage-map"));
var _modalTabs = _interopRequireDefault(require("./modal-tabs"));
var _loadingDialog = _interopRequireDefault(require("./loading-dialog"));
var _defaultSettings = require("../../constants/default-settings");
var _templateObject;
/** @typedef {import('./load-data-modal').LoadDataModalProps} LoadDataModalProps */
var StyledLoadDataModal = _styledComponents["default"].div.attrs({
className: 'load-data-modal'
})(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n padding: ", ";\n min-height: 440px;\n display: flex;\n flex-direction: column;\n"])), function (props) {
return props.theme.modalPadding;
});
var noop = function noop() {};
var getDefaultMethod = function getDefaultMethod(methods) {
return Array.isArray(methods) ? (0, _lodash["default"])(methods, [0]) : null;
};
LoadDataModalFactory.deps = [_modalTabs["default"], _fileUpload["default"], _loadStorageMap["default"]];
function LoadDataModalFactory(ModalTabs, FileUpload, LoadStorageMap) {
/** @type {React.FunctionComponent<LoadDataModalProps>} */
var LoadDataModal = function LoadDataModal(props) {
var intl = (0, _reactIntl.useIntl)();
var loadingMethods = props.loadingMethods,
isCloudMapLoading = props.isCloudMapLoading;
var _useState = (0, _react.useState)(getDefaultMethod(loadingMethods)),
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
currentMethod = _useState2[0],
toggleMethod = _useState2[1];
var ElementType = currentMethod.elementType;
return /*#__PURE__*/_react["default"].createElement(StyledLoadDataModal, null, /*#__PURE__*/_react["default"].createElement(ModalTabs, {
currentMethod: currentMethod.id,
loadingMethods: loadingMethods,
toggleMethod: toggleMethod
}), isCloudMapLoading ? /*#__PURE__*/_react["default"].createElement(_loadingDialog["default"], {
size: 64
}) : currentMethod && /*#__PURE__*/_react["default"].createElement(ElementType, (0, _extends2["default"])({
key: currentMethod.id,
intl: intl
}, props)));
};
LoadDataModal.defaultProps = {
onFileUpload: noop,
fileLoading: false,
loadingMethods: [{
id: _defaultSettings.LOADING_METHODS.upload,
label: 'modal.loadData.upload',
elementType: FileUpload
}, {
id: _defaultSettings.LOADING_METHODS.storage,
label: 'modal.loadData.storage',
elementType: LoadStorageMap
}]
};
return LoadDataModal;
}
var _default = LoadDataModalFactory;
exports["default"] = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vZGFscy9sb2FkLWRhdGEtbW9kYWwuanMiXSwibmFtZXMiOlsiU3R5bGVkTG9hZERhdGFNb2RhbCIsInN0eWxlZCIsImRpdiIsImF0dHJzIiwiY2xhc3NOYW1lIiwicHJvcHMiLCJ0aGVtZSIsIm1vZGFsUGFkZGluZyIsIm5vb3AiLCJnZXREZWZhdWx0TWV0aG9kIiwibWV0aG9kcyIsIkFycmF5IiwiaXNBcnJheSIsIkxvYWREYXRhTW9kYWxGYWN0b3J5IiwiZGVwcyIsIk1vZGFsVGFic0ZhY3RvcnkiLCJGaWxlVXBsb2FkRmFjdG9yeSIsIkxvYWRTdG9yYWdlTWFwRmFjdG9yeSIsIk1vZGFsVGFicyIsIkZpbGVVcGxvYWQiLCJMb2FkU3RvcmFnZU1hcCIsIkxvYWREYXRhTW9kYWwiLCJpbnRsIiwibG9hZGluZ01ldGhvZHMiLCJpc0Nsb3VkTWFwTG9hZGluZyIsImN1cnJlbnRNZXRob2QiLCJ0b2dnbGVNZXRob2QiLCJFbGVtZW50VHlwZSIsImVsZW1lbnRUeXBlIiwiaWQiLCJkZWZhdWx0UHJvcHMiLCJvbkZpbGVVcGxvYWQiLCJmaWxlTG9hZGluZyIsIkxPQURJTkdfTUVUSE9EUyIsInVwbG9hZCIsImxhYmVsIiwic3RvcmFnZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOzs7O0FBRUE7QUFFQSxJQUFNQSxtQkFBbUIsR0FBR0MsNkJBQU9DLEdBQVAsQ0FBV0MsS0FBWCxDQUFpQjtBQUMzQ0MsRUFBQUEsU0FBUyxFQUFFO0FBRGdDLENBQWpCLENBQUgsOEtBR1osVUFBQUMsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZQyxZQUFoQjtBQUFBLENBSE8sQ0FBekI7O0FBU0EsSUFBTUMsSUFBSSxHQUFHLFNBQVBBLElBQU8sR0FBTSxDQUFFLENBQXJCOztBQUNBLElBQU1DLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBbUIsQ0FBQUMsT0FBTztBQUFBLFNBQUtDLEtBQUssQ0FBQ0MsT0FBTixDQUFjRixPQUFkLElBQXlCLHdCQUFJQSxPQUFKLEVBQWEsQ0FBQyxDQUFELENBQWIsQ0FBekIsR0FBNkMsSUFBbEQ7QUFBQSxDQUFoQzs7QUFFQUcsb0JBQW9CLENBQUNDLElBQXJCLEdBQTRCLENBQUNDLHFCQUFELEVBQW1CQyxzQkFBbkIsRUFBc0NDLDBCQUF0QyxDQUE1Qjs7QUFFTyxTQUFTSixvQkFBVCxDQUE4QkssU0FBOUIsRUFBeUNDLFVBQXpDLEVBQXFEQyxjQUFyRCxFQUFxRTtBQUMxRTtBQUNBLE1BQU1DLGFBQWEsR0FBRyxTQUFoQkEsYUFBZ0IsQ0FBQWhCLEtBQUssRUFBSTtBQUM3QixRQUFNaUIsSUFBSSxHQUFHLHlCQUFiO0FBRDZCLFFBRXRCQyxjQUZzQixHQUVlbEIsS0FGZixDQUV0QmtCLGNBRnNCO0FBQUEsUUFFTkMsaUJBRk0sR0FFZW5CLEtBRmYsQ0FFTm1CLGlCQUZNOztBQUFBLG9CQUdTLHFCQUFTZixnQkFBZ0IsQ0FBQ2MsY0FBRCxDQUF6QixDQUhUO0FBQUE7QUFBQSxRQUd0QkUsYUFIc0I7QUFBQSxRQUdQQyxZQUhPOztBQUs3QixRQUFNQyxXQUFXLEdBQUdGLGFBQWEsQ0FBQ0csV0FBbEM7QUFFQSx3QkFDRSxnQ0FBQyxtQkFBRCxxQkFDRSxnQ0FBQyxTQUFEO0FBQ0UsTUFBQSxhQUFhLEVBQUVILGFBQWEsQ0FBQ0ksRUFEL0I7QUFFRSxNQUFBLGNBQWMsRUFBRU4sY0FGbEI7QUFHRSxNQUFBLFlBQVksRUFBRUc7QUFIaEIsTUFERixFQU1HRixpQkFBaUIsZ0JBQ2hCLGdDQUFDLHlCQUFEO0FBQWUsTUFBQSxJQUFJLEVBQUU7QUFBckIsTUFEZ0IsR0FHaEJDLGFBQWEsaUJBQUksZ0NBQUMsV0FBRDtBQUFhLE1BQUEsR0FBRyxFQUFFQSxhQUFhLENBQUNJLEVBQWhDO0FBQW9DLE1BQUEsSUFBSSxFQUFFUDtBQUExQyxPQUFvRGpCLEtBQXBELEVBVHJCLENBREY7QUFjRCxHQXJCRDs7QUF1QkFnQixFQUFBQSxhQUFhLENBQUNTLFlBQWQsR0FBNkI7QUFDM0JDLElBQUFBLFlBQVksRUFBRXZCLElBRGE7QUFFM0J3QixJQUFBQSxXQUFXLEVBQUUsS0FGYztBQUczQlQsSUFBQUEsY0FBYyxFQUFFLENBQ2Q7QUFDRU0sTUFBQUEsRUFBRSxFQUFFSSxpQ0FBZ0JDLE1BRHRCO0FBRUVDLE1BQUFBLEtBQUssRUFBRSx1QkFGVDtBQUdFUCxNQUFBQSxXQUFXLEVBQUVUO0FBSGYsS0FEYyxFQU1kO0FBQ0VVLE1BQUFBLEVBQUUsRUFBRUksaUNBQWdCRyxPQUR0QjtBQUVFRCxNQUFBQSxLQUFLLEVBQUUsd0JBRlQ7QUFHRVAsTUFBQUEsV0FBVyxFQUFFUjtBQUhmLEtBTmM7QUFIVyxHQUE3QjtBQWlCQSxTQUFPQyxhQUFQO0FBQ0Q7O2VBRWNSLG9CIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIxIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7dXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IGdldCBmcm9tICdsb2Rhc2guZ2V0JztcbmltcG9ydCB7dXNlSW50bH0gZnJvbSAncmVhY3QtaW50bCc7XG5cbmltcG9ydCBGaWxlVXBsb2FkRmFjdG9yeSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9maWxlLXVwbG9hZGVyL2ZpbGUtdXBsb2FkJztcbmltcG9ydCBMb2FkU3RvcmFnZU1hcEZhY3RvcnkgZnJvbSAnLi9sb2FkLXN0b3JhZ2UtbWFwJztcbmltcG9ydCBNb2RhbFRhYnNGYWN0b3J5IGZyb20gJy4vbW9kYWwtdGFicyc7XG5pbXBvcnQgTG9hZGluZ0RpYWxvZyBmcm9tICcuL2xvYWRpbmctZGlhbG9nJztcblxuaW1wb3J0IHtMT0FESU5HX01FVEhPRFN9IGZyb20gJ2NvbnN0YW50cy9kZWZhdWx0LXNldHRpbmdzJztcblxuLyoqIEB0eXBlZGVmIHtpbXBvcnQoJy4vbG9hZC1kYXRhLW1vZGFsJykuTG9hZERhdGFNb2RhbFByb3BzfSBMb2FkRGF0YU1vZGFsUHJvcHMgKi9cblxuY29uc3QgU3R5bGVkTG9hZERhdGFNb2RhbCA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdsb2FkLWRhdGEtbW9kYWwnXG59KWBcbiAgcGFkZGluZzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5tb2RhbFBhZGRpbmd9O1xuICBtaW4taGVpZ2h0OiA0NDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbmA7XG5cbmNvbnN0IG5vb3AgPSAoKSA9PiB7fTtcbmNvbnN0IGdldERlZmF1bHRNZXRob2QgPSBtZXRob2RzID0+IChBcnJheS5pc0FycmF5KG1ldGhvZHMpID8gZ2V0KG1ldGhvZHMsIFswXSkgOiBudWxsKTtcblxuTG9hZERhdGFNb2RhbEZhY3RvcnkuZGVwcyA9IFtNb2RhbFRhYnNGYWN0b3J5LCBGaWxlVXBsb2FkRmFjdG9yeSwgTG9hZFN0b3JhZ2VNYXBGYWN0b3J5XTtcblxuZXhwb3J0IGZ1bmN0aW9uIExvYWREYXRhTW9kYWxGYWN0b3J5KE1vZGFsVGFicywgRmlsZVVwbG9hZCwgTG9hZFN0b3JhZ2VNYXApIHtcbiAgLyoqIEB0eXBlIHtSZWFjdC5GdW5jdGlvbkNvbXBvbmVudDxMb2FkRGF0YU1vZGFsUHJvcHM+fSAqL1xuICBjb25zdCBMb2FkRGF0YU1vZGFsID0gcHJvcHMgPT4ge1xuICAgIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG4gICAgY29uc3Qge2xvYWRpbmdNZXRob2RzLCBpc0Nsb3VkTWFwTG9hZGluZ30gPSBwcm9wcztcbiAgICBjb25zdCBbY3VycmVudE1ldGhvZCwgdG9nZ2xlTWV0aG9kXSA9IHVzZVN0YXRlKGdldERlZmF1bHRNZXRob2QobG9hZGluZ01ldGhvZHMpKTtcblxuICAgIGNvbnN0IEVsZW1lbnRUeXBlID0gY3VycmVudE1ldGhvZC5lbGVtZW50VHlwZTtcblxuICAgIHJldHVybiAoXG4gICAgICA8U3R5bGVkTG9hZERhdGFNb2RhbD5cbiAgICAgICAgPE1vZGFsVGFic1xuICAgICAgICAgIGN1cnJlbnRNZXRob2Q9e2N1cnJlbnRNZXRob2QuaWR9XG4gICAgICAgICAgbG9hZGluZ01ldGhvZHM9e2xvYWRpbmdNZXRob2RzfVxuICAgICAgICAgIHRvZ2dsZU1ldGhvZD17dG9nZ2xlTWV0aG9kfVxuICAgICAgICAvPlxuICAgICAgICB7aXNDbG91ZE1hcExvYWRpbmcgPyAoXG4gICAgICAgICAgPExvYWRpbmdEaWFsb2cgc2l6ZT17NjR9IC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgY3VycmVudE1ldGhvZCAmJiA8RWxlbWVudFR5cGUga2V5PXtjdXJyZW50TWV0aG9kLmlkfSBpbnRsPXtpbnRsfSB7Li4ucHJvcHN9IC8+XG4gICAgICAgICl9XG4gICAgICA8L1N0eWxlZExvYWREYXRhTW9kYWw+XG4gICAgKTtcbiAgfTtcblxuICBMb2FkRGF0YU1vZGFsLmRlZmF1bHRQcm9wcyA9IHtcbiAgICBvbkZpbGVVcGxvYWQ6IG5vb3AsXG4gICAgZmlsZUxvYWRpbmc6IGZhbHNlLFxuICAgIGxvYWRpbmdNZXRob2RzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiBMT0FESU5HX01FVEhPRFMudXBsb2FkLFxuICAgICAgICBsYWJlbDogJ21vZGFsLmxvYWREYXRhLnVwbG9hZCcsXG4gICAgICAgIGVsZW1lbnRUeXBlOiBGaWxlVXBsb2FkXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogTE9BRElOR19NRVRIT0RTLnN0b3JhZ2UsXG4gICAgICAgIGxhYmVsOiAnbW9kYWwubG9hZERhdGEuc3RvcmFnZScsXG4gICAgICAgIGVsZW1lbnRUeXBlOiBMb2FkU3RvcmFnZU1hcFxuICAgICAgfVxuICAgIF1cbiAgfTtcblxuICByZXR1cm4gTG9hZERhdGFNb2RhbDtcbn1cblxuZXhwb3J0IGRlZmF1bHQgTG9hZERhdGFNb2RhbEZhY3Rvcnk7XG4iXX0=