(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(); else if(typeof define === 'function' && define.amd) define("DataTable", [], factory); else if(typeof exports === 'object') exports["DataTable"] = factory(); else root["DataTable"] = factory(); })(this, function() { 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 = 0); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _datatable = __webpack_require__(8); var _datatable2 = _interopRequireDefault(_datatable); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = _datatable2.default; module.exports = exports['default']; /***/ }), /* 1 */, /* 2 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function camelCaseToDash(str) { return str.replace(/([A-Z])/g, function (g) { return '-' + g[0].toLowerCase(); }); } function makeDataAttributeString(props) { var keys = Object.keys(props); return keys.map(function (key) { var _key = camelCaseToDash(key); var val = props[key]; if (val === undefined) return ''; return 'data-' + _key + '="' + val + '" '; }).join('').trim(); } function getEditCellHTML() { return '\n
\n '; } function getColumnHTML(column) { var rowIndex = column.rowIndex, colIndex = column.colIndex, isHeader = column.isHeader; var dataAttr = makeDataAttributeString({ rowIndex: rowIndex, colIndex: colIndex, isHeader: isHeader }); var editCellHTML = isHeader ? '' : getEditCellHTML(); return '\n \n
\n ' + (column.format ? column.format(column.content) : column.content) + '\n \n
\n ' + editCellHTML + '\n \n '; } function getRowHTML(columns, props) { var dataAttr = makeDataAttributeString(props); return '\n \n ' + columns.map(getColumnHTML).join('') + '\n \n '; } function getHeaderHTML(columns) { var $header = '\n \n ' + getRowHTML(columns, { isHeader: 1, rowIndex: -1 }) + '\n \n '; // columns.map(col => { // if (!col.width) return; // const $cellContent = $header.find( // `.data-table-col[data-col-index="${col.colIndex}"] .content` // ); // $cellContent.width(col.width); // }); return $header; } function getBodyHTML(rows) { return '\n \n ' + rows.map(function (row) { return getRowHTML(row, { rowIndex: row[0].rowIndex }); }).join('') + '\n \n '; } function prepareColumn(col, i) { if (typeof col === 'string') { col = { content: col }; } return Object.assign(col, { colIndex: i }); } function prepareColumns(columns) { var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var _columns = columns.map(prepareColumn); return _columns.map(function (col) { return Object.assign(col, props); }); } function prepareRowHeader(columns) { return prepareColumns(columns, { rowIndex: -1, isHeader: 1, format: function format(content) { return '' + content + ''; } }); } function prepareRow(row, i) { return prepareColumns(row, { rowIndex: i }); } function prepareRows(rows) { return rows.map(prepareRow); } function getDefault(a, b) { return a !== undefined ? a : b; } function escapeRegExp(str) { // https://stackoverflow.com/a/6969486 return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&'); } function getCSSString(styleMap) { var style = ''; for (var prop in styleMap) { if (styleMap.hasOwnProperty(prop)) { style += prop + ': ' + styleMap[prop] + '; '; } } return style.trim(); } function getCSSRuleBlock(rule, styleMap) { return rule + ' { ' + getCSSString(styleMap) + ' }'; } function namespaceSelector(selector) { return '.data-table ' + selector; } function buildCSSRule(rule, styleMap) { var cssRulesString = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ''; // build css rules efficiently, // append new rule if doesnt exist, // update existing ones var rulePatternStr = escapeRegExp(rule) + ' {([^}]*)}'; var rulePattern = new RegExp(rulePatternStr, 'g'); if (cssRulesString && cssRulesString.match(rulePattern)) { var _loop = function _loop(property) { var value = styleMap[property]; var propPattern = new RegExp(escapeRegExp(property) + ':([^;]*);'); cssRulesString = cssRulesString.replace(rulePattern, function (match, propertyStr) { if (propertyStr.match(propPattern)) { // property exists, replace value with new value propertyStr = propertyStr.replace(propPattern, function (match, valueStr) { return property + ': ' + value + ';'; }); } propertyStr = propertyStr.trim(); var replacer = rule + ' { ' + propertyStr + ' }'; return replacer; }); }; for (var property in styleMap) { _loop(property); } return cssRulesString; } // no match, append new rule block return '' + cssRulesString + getCSSRuleBlock(rule, styleMap); } exports.default = { getHeaderHTML: getHeaderHTML, getBodyHTML: getBodyHTML, getRowHTML: getRowHTML, getColumnHTML: getColumnHTML, getEditCellHTML: getEditCellHTML, prepareRowHeader: prepareRowHeader, prepareRows: prepareRows, namespaceSelector: namespaceSelector, getCSSString: getCSSString, buildCSSRule: buildCSSRule, makeDataAttributeString: makeDataAttributeString, getDefault: getDefault, escapeRegExp: escapeRegExp }; module.exports = exports['default']; /***/ }), /* 3 */ /***/ (function(module, exports, __webpack_require__) { // style-loader: Adds some css to the DOM by adding a ').prependTo(this.wrapper); } }, { key: 'getColumn', value: function getColumn(colIndex) { colIndex = +colIndex; return this.data.columns.find(function (col) { return col.colIndex === colIndex; }); } }, { key: 'getRow', value: function getRow(rowIndex) { rowIndex = +rowIndex; return this.data.rows.find(function (row) { return row[0].rowIndex === rowIndex; }); } }, { key: 'getCell', value: function getCell(rowIndex, colIndex) { rowIndex = +rowIndex; colIndex = +colIndex; return this.data.rows.find(function (row) { return row[0].rowIndex === rowIndex; })[colIndex]; } }, { key: 'getColumnHeaderElement', value: function getColumnHeaderElement(colIndex) { colIndex = +colIndex; if (colIndex < 0) return null; return this.wrapper.find('.data-table-col[data-is-header][data-col-index="' + colIndex + '"]'); } }, { key: 'getColumnMinWidth', value: function getColumnMinWidth(colIndex) { colIndex = +colIndex; return this.minWidthMap && this.minWidthMap[colIndex]; } }, { key: 'getCellAttr', value: function getCellAttr($cell) { return $cell.data(); } }, { key: 'log', value: function log() { if (this.options.enableLogs) { console.log.apply(console, arguments); } } }]); return DataTable; }(); exports.default = DataTable; module.exports = exports['default']; /***/ }) /******/ ]); }); //# sourceMappingURL=frappe-datatable.js.map