react-bootstrap-table2-toolkit
Version:
The toolkit for react-bootstrap-table2
1,468 lines (1,165 loc) • 121 kB
JavaScript
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory(require("react"));
else if(typeof define === 'function' && define.amd)
define(["react"], factory);
else if(typeof exports === 'object')
exports["ReactBootstrapTable2Toolkit"] = factory(require("react"));
else
root["ReactBootstrapTable2Toolkit"] = factory(root["React"]);
})(this, function(__WEBPACK_EXTERNAL_MODULE_0__) {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 3);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, exports) {
module.exports = __WEBPACK_EXTERNAL_MODULE_0__;
/***/ }),
/* 1 */
/***/ (function(module, exports, __webpack_require__) {
/**
* Copyright 2013-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
if (false) {
var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&
Symbol.for &&
Symbol.for('react.element')) ||
0xeac7;
var isValidElement = function(object) {
return typeof object === 'object' &&
object !== null &&
object.$$typeof === REACT_ELEMENT_TYPE;
};
// By explicitly using `prop-types` you are opting into new development behavior.
// http://fb.me/prop-types-in-prod
var throwOnDirectAccess = true;
module.exports = require('./factoryWithTypeCheckers')(isValidElement, throwOnDirectAccess);
} else {
// By explicitly using `prop-types` you are opting into new production behavior.
// http://fb.me/prop-types-in-prod
module.exports = __webpack_require__(6)();
}
/***/ }),
/* 2 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends = Object.assign || 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; };
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _statelessOp = __webpack_require__(15);
var _statelessOp2 = _interopRequireDefault(_statelessOp);
var _context = __webpack_require__(21);
var _context2 = _interopRequireDefault(_context);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* eslint no-param-reassign: 0 */
var ToolkitContext = _react2.default.createContext();
var ToolkitProvider = function (_statelessDecorator) {
_inherits(ToolkitProvider, _statelessDecorator);
function ToolkitProvider(props) {
_classCallCheck(this, ToolkitProvider);
var _this = _possibleConstructorReturn(this, (ToolkitProvider.__proto__ || Object.getPrototypeOf(ToolkitProvider)).call(this, props));
var state = {};
_this._ = null;
_this.onClear = _this.onClear.bind(_this);
_this.onSearch = _this.onSearch.bind(_this);
_this.onColumnToggle = _this.onColumnToggle.bind(_this);
_this.setDependencyModules = _this.setDependencyModules.bind(_this);
if (props.columnToggle) {
state.columnToggle = props.columns.reduce(function (obj, column) {
obj[column.dataField] = !column.hidden;
return obj;
}, {});
}
state.searchText = _typeof(props.search) === 'object' ? props.search.defaultSearch || '' : '';
_this.state = state;
return _this;
}
// eslint-disable-next-line camelcase
_createClass(ToolkitProvider, [{
key: 'UNSAFE_componentWillReceiveProps',
value: function UNSAFE_componentWillReceiveProps(nextProps) {
var columnToggle = this.state.columnToggle;
if (nextProps.columnToggle) {
columnToggle = nextProps.columns.reduce(function (obj, column) {
obj[column.dataField] = !column.hidden;
return obj;
}, {});
} else {
columnToggle = null;
}
this.setState(_extends({}, this.state, {
columnToggle: columnToggle
}));
}
}, {
key: 'onSearch',
value: function onSearch(searchText) {
if (searchText !== this.state.searchText) {
this.setState({ searchText: searchText });
}
}
}, {
key: 'onClear',
value: function onClear() {
this.setState({ searchText: '' });
}
}, {
key: 'onColumnToggle',
value: function onColumnToggle(dataField) {
var columnToggle = this.state.columnToggle;
columnToggle[dataField] = !columnToggle[dataField];
this.setState(_extends({}, this.state, {
columnToggle: columnToggle
}));
}
/**
*
* @param {*} _
* this function will be called only one time when table render
* react-bootstrap-table-next/src/context/index.js will call this cb for passing the _ module
* Please consider to extract a common module to handle _ module.
* this is just a quick fix
*/
}, {
key: 'setDependencyModules',
value: function setDependencyModules(_) {
this._ = _;
}
}, {
key: 'render',
value: function render() {
var baseProps = {
keyField: this.props.keyField,
columns: this.props.columns,
data: this.props.data,
bootstrap4: this.props.bootstrap4,
setDependencyModules: this.setDependencyModules,
registerExposedAPI: this.registerExposedAPI
};
if (this.props.search) {
baseProps.search = {
searchContext: (0, _context2.default)(this.props.search),
searchText: this.state.searchText
};
}
if (this.props.columnToggle) {
baseProps.columnToggle = {
toggles: this.state.columnToggle
};
}
return _react2.default.createElement(
ToolkitContext.Provider,
{ value: {
searchProps: {
searchText: this.state.searchText,
onSearch: this.onSearch,
onClear: this.onClear
},
csvProps: {
onExport: this.handleExportCSV
},
columnToggleProps: {
columns: this.props.columns,
toggles: this.state.columnToggle,
onColumnToggle: this.onColumnToggle
},
baseProps: baseProps
}
},
this.props.children
);
}
}]);
return ToolkitProvider;
}((0, _statelessOp2.default)(_react2.default.Component));
ToolkitProvider.propTypes = {
keyField: _propTypes2.default.string.isRequired,
data: _propTypes2.default.array.isRequired,
columns: _propTypes2.default.array.isRequired,
children: _propTypes2.default.node.isRequired,
bootstrap4: _propTypes2.default.bool,
search: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.shape({
defaultSearch: _propTypes2.default.string,
searchFormatted: _propTypes2.default.bool
})]),
exportCSV: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.shape({
fileName: _propTypes2.default.string,
separator: _propTypes2.default.string,
ignoreHeader: _propTypes2.default.bool,
ignoreFooter: _propTypes2.default.bool,
noAutoBOM: _propTypes2.default.bool,
blobType: _propTypes2.default.string,
exportAll: _propTypes2.default.bool,
onlyExportFiltered: _propTypes2.default.bool,
onlyExportSelection: _propTypes2.default.bool
})])
};
ToolkitProvider.defaultProps = {
search: false,
exportCSV: false,
bootstrap4: false
};
exports.default = {
Provider: ToolkitProvider,
Consumer: ToolkitContext.Consumer
};
/***/ }),
/* 3 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ColumnToggle = exports.CSVExport = exports.Search = exports.ToolkitContext = undefined;
var _search = __webpack_require__(4);
Object.defineProperty(exports, 'Search', {
enumerable: true,
get: function get() {
return _interopRequireDefault(_search).default;
}
});
var _csv = __webpack_require__(11);
Object.defineProperty(exports, 'CSVExport', {
enumerable: true,
get: function get() {
return _interopRequireDefault(_csv).default;
}
});
var _columnToggle = __webpack_require__(13);
Object.defineProperty(exports, 'ColumnToggle', {
enumerable: true,
get: function get() {
return _interopRequireDefault(_columnToggle).default;
}
});
var _context = __webpack_require__(2);
var _context2 = _interopRequireDefault(_context);
var _provider = __webpack_require__(22);
var _provider2 = _interopRequireDefault(_provider);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = _provider2.default;
var ToolkitContext = exports.ToolkitContext = _context2.default;
/***/ }),
/* 4 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _SearchBar = __webpack_require__(5);
var _SearchBar2 = _interopRequireDefault(_SearchBar);
var _clearButton = __webpack_require__(10);
var _clearButton2 = _interopRequireDefault(_clearButton);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = { SearchBar: _SearchBar2.default, ClearSearchButton: _clearButton2.default };
/***/ }),
/* 5 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _arguments = arguments; /* eslint camelcase: 0 */
/* eslint no-return-assign: 0 */
var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
var handleDebounce = function handleDebounce(func, wait, immediate) {
var timeout = void 0;
return function () {
var later = function later() {
timeout = null;
if (!immediate) {
func.apply(undefined, _arguments);
}
};
var callNow = immediate && !timeout;
clearTimeout(timeout);
timeout = setTimeout(later, wait || 0);
if (callNow) {
func.appy(undefined, _arguments);
}
};
};
var SearchBar = function (_React$Component) {
_inherits(SearchBar, _React$Component);
function SearchBar(props) {
_classCallCheck(this, SearchBar);
var _this = _possibleConstructorReturn(this, (SearchBar.__proto__ || Object.getPrototypeOf(SearchBar)).call(this, props));
_this.onChangeValue = function (e) {
_this.setState({ value: e.target.value });
};
_this.onKeyup = function () {
var _this$props = _this.props,
delay = _this$props.delay,
onSearch = _this$props.onSearch;
var debounceCallback = handleDebounce(function () {
onSearch(_this.input.value);
}, delay);
debounceCallback();
};
_this.state = {
value: props.searchText
};
return _this;
}
_createClass(SearchBar, [{
key: 'UNSAFE_componentWillReceiveProps',
value: function UNSAFE_componentWillReceiveProps(nextProps) {
this.setState({ value: nextProps.searchText });
}
}, {
key: 'render',
value: function render() {
var _this2 = this;
var _props = this.props,
className = _props.className,
style = _props.style,
placeholder = _props.placeholder,
tableId = _props.tableId,
srText = _props.srText;
return _react2.default.createElement(
'label',
{
htmlFor: 'search-bar-' + tableId,
className: 'search-label'
},
_react2.default.createElement(
'span',
{ id: 'search-bar-' + tableId + '-label', className: 'sr-only' },
srText
),
_react2.default.createElement('input', {
ref: function ref(n) {
return _this2.input = n;
},
id: 'search-bar-' + tableId,
type: 'text',
style: style,
'aria-labelledby': 'search-bar-' + tableId + '-label',
onKeyUp: function onKeyUp() {
return _this2.onKeyup();
},
onChange: this.onChangeValue,
className: 'form-control ' + className,
value: this.state.value,
placeholder: placeholder || SearchBar.defaultProps.placeholder
})
);
}
}]);
return SearchBar;
}(_react2.default.Component);
SearchBar.propTypes = {
onSearch: _propTypes2.default.func.isRequired,
className: _propTypes2.default.string,
placeholder: _propTypes2.default.string,
style: _propTypes2.default.object,
delay: _propTypes2.default.number,
searchText: _propTypes2.default.string,
tableId: _propTypes2.default.string,
srText: _propTypes2.default.string
};
SearchBar.defaultProps = {
className: '',
style: {},
placeholder: 'Search',
delay: 250,
searchText: '',
tableId: '0',
srText: 'Search this table'
};
exports.default = SearchBar;
/***/ }),
/* 6 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/**
* Copyright 2013-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
var emptyFunction = __webpack_require__(7);
var invariant = __webpack_require__(8);
var ReactPropTypesSecret = __webpack_require__(9);
module.exports = function() {
function shim(props, propName, componentName, location, propFullName, secret) {
if (secret === ReactPropTypesSecret) {
// It is still safe when called from React.
return;
}
invariant(
false,
'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
'Use PropTypes.checkPropTypes() to call them. ' +
'Read more at http://fb.me/use-check-prop-types'
);
};
shim.isRequired = shim;
function getShim() {
return shim;
};
// Important!
// Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.
var ReactPropTypes = {
array: shim,
bool: shim,
func: shim,
number: shim,
object: shim,
string: shim,
symbol: shim,
any: shim,
arrayOf: getShim,
element: shim,
instanceOf: getShim,
node: shim,
objectOf: getShim,
oneOf: getShim,
oneOfType: getShim,
shape: getShim
};
ReactPropTypes.checkPropTypes = emptyFunction;
ReactPropTypes.PropTypes = ReactPropTypes;
return ReactPropTypes;
};
/***/ }),
/* 7 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/**
* Copyright (c) 2013-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
*
*/
function makeEmptyFunction(arg) {
return function () {
return arg;
};
}
/**
* This function accepts and discards inputs; it has no side effects. This is
* primarily useful idiomatically for overridable function endpoints which
* always need to be callable, since JS lacks a null-call idiom ala Cocoa.
*/
var emptyFunction = function emptyFunction() {};
emptyFunction.thatReturns = makeEmptyFunction;
emptyFunction.thatReturnsFalse = makeEmptyFunction(false);
emptyFunction.thatReturnsTrue = makeEmptyFunction(true);
emptyFunction.thatReturnsNull = makeEmptyFunction(null);
emptyFunction.thatReturnsThis = function () {
return this;
};
emptyFunction.thatReturnsArgument = function (arg) {
return arg;
};
module.exports = emptyFunction;
/***/ }),
/* 8 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/**
* Copyright (c) 2013-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
*/
/**
* Use invariant() to assert state which your program assumes to be true.
*
* Provide sprintf-style format (only %s is supported) and arguments
* to provide information about what broke and what you were
* expecting.
*
* The invariant message will be stripped in production, but the invariant
* will remain to ensure logic does not differ in production.
*/
var validateFormat = function validateFormat(format) {};
if (false) {
validateFormat = function validateFormat(format) {
if (format === undefined) {
throw new Error('invariant requires an error message argument');
}
};
}
function invariant(condition, format, a, b, c, d, e, f) {
validateFormat(format);
if (!condition) {
var error;
if (format === undefined) {
error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');
} else {
var args = [a, b, c, d, e, f];
var argIndex = 0;
error = new Error(format.replace(/%s/g, function () {
return args[argIndex++];
}));
error.name = 'Invariant Violation';
}
error.framesToPop = 1; // we don't care about invariant's own frame
throw error;
}
}
module.exports = invariant;
/***/ }),
/* 9 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/**
* Copyright 2013-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
module.exports = ReactPropTypesSecret;
/***/ }),
/* 10 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var ClearButton = function ClearButton(_ref) {
var onClear = _ref.onClear,
text = _ref.text,
className = _ref.className;
return _react2.default.createElement(
'button',
{ className: 'btn btn-default ' + className, onClick: onClear },
text
);
};
ClearButton.propTypes = {
onClear: _propTypes2.default.func.isRequired,
className: _propTypes2.default.string,
text: _propTypes2.default.string
};
ClearButton.defaultProps = {
text: 'Clear',
className: ''
};
exports.default = ClearButton;
/***/ }),
/* 11 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _button = __webpack_require__(12);
var _button2 = _interopRequireDefault(_button);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = { ExportCSVButton: _button2.default };
/***/ }),
/* 12 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends = Object.assign || 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; };
var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
var ExportCSVButton = function ExportCSVButton(props) {
var onExport = props.onExport,
children = props.children,
className = props.className,
rest = _objectWithoutProperties(props, ['onExport', 'children', 'className']);
return _react2.default.createElement(
'button',
_extends({
type: 'button',
className: 'react-bs-table-csv-btn btn btn-default ' + className,
onClick: function onClick() {
return onExport();
}
}, rest),
children
);
};
ExportCSVButton.propTypes = {
children: _propTypes2.default.node.isRequired,
onExport: _propTypes2.default.func.isRequired,
className: _propTypes2.default.string,
style: _propTypes2.default.object
};
ExportCSVButton.defaultProps = {
className: '',
style: {}
};
exports.default = ExportCSVButton;
/***/ }),
/* 13 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _toggleList = __webpack_require__(14);
var _toggleList2 = _interopRequireDefault(_toggleList);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = { ToggleList: _toggleList2.default };
/***/ }),
/* 14 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends = Object.assign || 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; };
var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var ToggleList = function ToggleList(_ref) {
var columns = _ref.columns,
onColumnToggle = _ref.onColumnToggle,
toggles = _ref.toggles,
contextual = _ref.contextual,
className = _ref.className,
btnClassName = _ref.btnClassName;
return _react2.default.createElement(
'div',
{ className: 'btn-group btn-group-toggle ' + className, 'data-toggle': 'buttons' },
columns.map(function (column) {
return _extends({}, column, {
toggle: toggles[column.dataField]
});
}).map(function (column) {
return _react2.default.createElement(
'button',
{
type: 'button',
key: column.dataField,
className: btnClassName + ' btn btn-' + contextual + ' ' + (column.toggle ? 'active' : ''),
'data-toggle': 'button',
'aria-pressed': column.toggle ? 'true' : 'false',
onClick: function onClick() {
return onColumnToggle(column.dataField);
}
},
column.text
);
})
);
};
ToggleList.propTypes = {
columns: _propTypes2.default.array.isRequired,
toggles: _propTypes2.default.object.isRequired,
onColumnToggle: _propTypes2.default.func.isRequired,
btnClassName: _propTypes2.default.string,
className: _propTypes2.default.string,
contextual: _propTypes2.default.string
};
ToggleList.defaultProps = {
btnClassName: '',
className: '',
contextual: 'primary'
};
exports.default = ToggleList;
/***/ }),
/* 15 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _op = __webpack_require__(16);
var _op2 = _interopRequireDefault(_op);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
exports.default = function (Base) {
return function (_Operation$csvOperati) {
_inherits(StatelessOperation, _Operation$csvOperati);
function StatelessOperation() {
var _ref;
var _temp, _this, _ret;
_classCallCheck(this, StatelessOperation);
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = StatelessOperation.__proto__ || Object.getPrototypeOf(StatelessOperation)).call.apply(_ref, [this].concat(args))), _this), _this.registerExposedAPI = function (tableExposedAPIEmitter) {
_this.tableExposedAPIEmitter = tableExposedAPIEmitter;
}, _temp), _possibleConstructorReturn(_this, _ret);
}
return StatelessOperation;
}(_op2.default.csvOperation(Base));
};
/***/ }),
/* 16 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _csv = __webpack_require__(17);
var _csv2 = _interopRequireDefault(_csv);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
csvOperation: _csv2.default
};
/***/ }),
/* 17 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends = Object.assign || 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; };
var _exporter = __webpack_require__(18);
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
var csvDefaultOptions = {
fileName: 'spreadsheet.csv',
separator: ',',
ignoreHeader: false,
ignoreFooter: true,
noAutoBOM: true,
blobType: 'text/plain;charset=utf-8',
exportAll: true,
onlyExportSelection: false
};
exports.default = function (Base) {
return function (_Base) {
_inherits(CSVOperation, _Base);
function CSVOperation() {
var _ref;
var _temp, _this, _ret;
_classCallCheck(this, CSVOperation);
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = CSVOperation.__proto__ || Object.getPrototypeOf(CSVOperation)).call.apply(_ref, [this].concat(args))), _this), _this.handleExportCSV = function (source) {
var _this$props = _this.props,
columns = _this$props.columns,
exportCSV = _this$props.exportCSV,
keyField = _this$props.keyField;
var meta = (0, _exporter.getMetaInfo)(columns);
var options = exportCSV === true ? csvDefaultOptions : _extends({}, csvDefaultOptions, exportCSV);
// get data for csv export
var data = void 0;
if (typeof source !== 'undefined') {
data = source;
} else if (options.exportAll) {
data = _this.props.data;
} else if (options.onlyExportFiltered) {
var payload = {};
_this.tableExposedAPIEmitter.emit('get.filtered.rows', payload);
data = payload.result;
} else {
var _payload = {};
_this.tableExposedAPIEmitter.emit('get.table.data', _payload);
data = _payload.result;
}
// filter data by row selection
if (options.onlyExportSelection) {
var _payload2 = {};
_this.tableExposedAPIEmitter.emit('get.selected.rows', _payload2);
var selections = _payload2.result;
data = data.filter(function (row) {
return !!selections.find(function (sel) {
return row[keyField] === sel;
});
});
}
var content = (0, _exporter.transform)(data, meta, columns, _this._, options);
(0, _exporter.save)(content, options);
}, _temp), _possibleConstructorReturn(_this, _ret);
}
return CSVOperation;
}(Base);
};
/***/ }),
/* 18 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.save = exports.transform = exports.getMetaInfo = undefined;
var _fileSaver = __webpack_require__(19);
var _fileSaver2 = _interopRequireDefault(_fileSaver);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var getMetaInfo = exports.getMetaInfo = function getMetaInfo(columns) {
return columns.map(function (column) {
return {
field: column.dataField,
type: column.csvType || String,
formatter: column.csvFormatter,
formatExtraData: column.formatExtraData,
header: column.csvText || column.text,
export: column.csvExport === false ? false : true,
row: Number(column.row) || 0,
rowSpan: Number(column.rowSpan) || 1,
colSpan: Number(column.colSpan) || 1,
footer: column.footer,
footerFormatter: column.footerFormatter
};
}).filter(function (_) {
return _.export;
});
}; /* eslint no-unneeded-ternary: 0 */
var transform = exports.transform = function transform(data, meta, columns, _, _ref) {
var separator = _ref.separator,
ignoreHeader = _ref.ignoreHeader,
ignoreFooter = _ref.ignoreFooter;
var visibleColumns = meta.filter(function (m) {
return m.export;
});
var content = '';
// extract csv header
if (!ignoreHeader) {
content += visibleColumns.map(function (m) {
return '"' + m.header + '"';
}).join(separator);
content += '\n';
}
// extract csv body
if (data.length === 0) return content;
content += data.map(function (row, rowIndex) {
return visibleColumns.map(function (m) {
var cellContent = _.get(row, m.field);
if (m.formatter) {
cellContent = m.formatter(cellContent, row, rowIndex, m.formatExtraData);
}
if (m.type === String) {
return '"' + ('' + cellContent).replace(/"/g, '""') + '"';
}
return cellContent;
}).join(separator);
}).join('\n');
if (!ignoreFooter) {
content += '\n';
content += visibleColumns.map(function (m, i) {
if (typeof m.footer === 'function') {
var columnData = _.pluck(data, columns[i].dataField);
return '"' + m.footer(columnData, columns[i], i) + '"';
} else if (m.footerFormatter) {
return '"' + m.footerFormatter(columns[i], i) + '"';
}
return '"' + m.footer + '"';
}).join(separator);
}
return content;
};
var save = exports.save = function save(content, _ref2) {
var noAutoBOM = _ref2.noAutoBOM,
fileName = _ref2.fileName,
blobType = _ref2.blobType;
_fileSaver2.default.saveAs(new Blob([content], { type: blobType }), fileName, noAutoBOM);
};
/***/ }),
/* 19 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(global) {var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function(a,b){if(true)!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (b),
__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));else if("undefined"!=typeof exports)b();else{b(),a.FileSaver={exports:{}}.exports}})(this,function(){"use strict";function b(a,b){return"undefined"==typeof b?b={autoBom:!1}:"object"!=typeof b&&(console.warn("Deprecated: Expected third argument to be a object"),b={autoBom:!b}),b.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\uFEFF",a],{type:a.type}):a}function c(b,c,d){var e=new XMLHttpRequest;e.open("GET",b),e.responseType="blob",e.onload=function(){a(e.response,c,d)},e.onerror=function(){console.error("could not download file")},e.send()}function d(a){var b=new XMLHttpRequest;b.open("HEAD",a,!1);try{b.send()}catch(a){}return 200<=b.status&&299>=b.status}function e(a){try{a.dispatchEvent(new MouseEvent("click"))}catch(c){var b=document.createEvent("MouseEvents");b.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),a.dispatchEvent(b)}}var f="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:void 0,a=f.saveAs||("object"!=typeof window||window!==f?function(){}:"download"in HTMLAnchorElement.prototype?function(b,g,h){var i=f.URL||f.webkitURL,j=document.createElement("a");g=g||b.name||"download",j.download=g,j.rel="noopener","string"==typeof b?(j.href=b,j.origin===location.origin?e(j):d(j.href)?c(b,g,h):e(j,j.target="_blank")):(j.href=i.createObjectURL(b),setTimeout(function(){i.revokeObjectURL(j.href)},4E4),setTimeout(function(){e(j)},0))}:"msSaveOrOpenBlob"in navigator?function(f,g,h){if(g=g||f.name||"download","string"!=typeof f)navigator.msSaveOrOpenBlob(b(f,h),g);else if(d(f))c(f,g,h);else{var i=document.createElement("a");i.href=f,i.target="_blank",setTimeout(function(){e(i)})}}:function(a,b,d,e){if(e=e||open("","_blank"),e&&(e.document.title=e.document.body.innerText="downloading..."),"string"==typeof a)return c(a,b,d);var g="application/octet-stream"===a.type,h=/constructor/i.test(f.HTMLElement)||f.safari,i=/CriOS\/[\d]+/.test(navigator.userAgent);if((i||g&&h)&&"object"==typeof FileReader){var j=new FileReader;j.onloadend=function(){var a=j.result;a=i?a:a.replace(/^data:[^;]*;/,"data:attachment/file;"),e?e.location.href=a:location=a,e=null},j.readAsDataURL(a)}else{var k=f.URL||f.webkitURL,l=k.createObjectURL(a);e?e.location=l:location.href=l,e=null,setTimeout(function(){k.revokeObjectURL(l)},4E4)}});f.saveAs=a.saveAs=a,"undefined"!=typeof module&&(module.exports=a)});
//# sourceMappingURL=FileSaver.min.js.map
/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(20)))
/***/ }),
/* 20 */
/***/ (function(module, exports) {
var g;
// This works in non-strict mode
g = (function() {
return this;
})();
try {
// This works if eval is allowed (see CSP)
g = g || Function("return this")() || (1,eval)("this");
} catch(e) {
// This works if the window reference is available
if(typeof window === "object")
g = window;
}
// g can still be undefined, but nothing to do about it...
// We return undefined, instead of nothing here, so it's
// easier to handle this case. if(!global) { ...}
module.exports = g;
/***/ }),
/* 21 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* eslint react/prop-types: 0 */
/* eslint react/require-default-props: 0 */
/* eslint no-continue: 0 */
/* eslint no-lonely-if: 0 */
/* eslint class-methods-use-this: 0 */
/* eslint camelcase: 0 */
exports.default = function () {
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
searchFormatted: false,
afterSearch: null,
onColumnMatch: null
};
return function (_, isRemoteSearch, handleRemoteSearchChange) {
var SearchContext = _react2.default.createContext();
var SearchProvider = function (_React$Component) {
_inherits(SearchProvider, _React$Component);
function SearchProvider(props) {
_classCallCheck(this, SearchProvider);
var _this = _possibleConstructorReturn(this, (SearchProvider.__proto__ || Object.getPrototypeOf(SearchProvider)).call(this, props));
var initialData = props.data;
if (isRemoteSearch() && _this.props.searchText !== '') {
handleRemoteSearchChange(_this.props.searchText);
} else {
initialData = _this.search(props);
_this.triggerListener(initialData, true);
}
_this.state = { data: initialData };
return _this;
}
_createClass(SearchProvider, [{
key: 'getSearched',
value: function getSearched() {
return this.state.data;
}
}, {
key: 'triggerListener',
value: function triggerListener(result, skipInit) {
if (options.afterSearch && !skipInit) {
options.afterSearch(result);
}
if (this.props.dataChangeListener) {
this.props.dataChangeListener.emit('filterChanged', result.length);
}
}
}, {
key: 'UNSAFE_componentWillReceiveProps',
value: function UNSAFE_componentWillReceiveProps(nextProps) {
if (nextProps.searchText !== this.props.searchText) {
if (isRemoteSearch()) {
handleRemoteSearchChange(nextProps.searchText);
} else {
var result = this.search(nextProps);
this.triggerListener(result);
this.setState({
data: result
});
}
} else {
if (isRemoteSearch()) {
this.setState({ data: nextProps.data });
} else if (!_.isEqual(nextProps.data, this.props.data)) {
var _result = this.search(nextProps);
this.triggerListener(_result);
this.setState({
data: _result
});
}
}
}
}, {
key: 'search',
value: function search(props) {
var data = props.data,
columns = props.columns;
var searchText = props.searchText.toLowerCase();
return data.filter(function (row, ridx) {
for (var cidx = 0; cidx < columns.length; cidx += 1) {
var column = columns[cidx];
if (column.searchable === false) continue;
var targetValue = _.get(row, column.dataField);
if (column.formatter && options.searchFormatted) {
targetValue = column.formatter(targetValue, row, ridx, column.formatExtraData);
} else if (column.filterValue) {
targetValue = column.filterValue(targetValue, row);
}
if (options.onColumnMatch) {
if (options.onColumnMatch({
searchText: searchText,
value: targetValue,
column: column,
row: row
})) {
return true;
}
} else {
if (targetValue !== null && typeof targetValue !== 'undefined') {
targetValue = targetValue.toString().toLowerCase();
if (targetValue.indexOf(searchText) > -1) {
return true;
}
}
}
}
return false;
});
}
}, {
key: 'render',
value: function render() {
return _react2.default.createElement(
SearchContext.Provider,
{ value: { data: this.state.data } },
this.props.children
);
}
}]);
return SearchProvider;
}(_react2.default.Component);
SearchProvider.propTypes = {
data: _propTypes2.default.array.isRequired,
columns: _propTypes2.default.array.isRequired,
searchText: _propTypes2.default.string,
dataChangeListener: _propTypes2.default.object
};
return {
Provider: SearchProvider,
Consumer: SearchContext.Consumer
};
};
};
/***/ }),
/* 22 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(1);
var _propTypes2 = _interopRequireDefault(_propTypes);
var _context = __webpack_require__(2);
var _context2 = _interopRequireDefault(_context);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Toolkitprovider = function Toolkitprovider(props) {
return _react2.default.createElement(
_context2.default.Provider,
props,
_react2.default.createElement(
_context2.default.Consumer,
null,
function (tookKitProps) {
return props.children(tookKitProps);
}
)
);
};
Toolkitprovider.propTypes = {
children: _propTypes2.default.func.isRequired
};
exports.default = Toolkitprovider;
/***/ })
/******/ ]);
});
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay91bml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uIiwid2VicGFjazovLy93ZWJwYWNrL2Jvb3RzdHJhcCA0NjkzMjA5YTQwZjkyMGQ4ZjYwZiIsI