Skip to content

Commit

Permalink
bundle for v1.7.2
Browse files Browse the repository at this point in the history
  • Loading branch information
dongwoo committed Feb 2, 2017
1 parent 30a0e39 commit 8f891cd
Show file tree
Hide file tree
Showing 7 changed files with 106 additions and 26 deletions.
48 changes: 44 additions & 4 deletions dist/grid.comb.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*!
* bundle created at "Mon Jan 16 2017 17:27:57 GMT+0900 (KST)"
* version: 1.7.1
* bundle created at "Thu Feb 02 2017 16:53:28 GMT+0900 (KST)"
* version: 1.7.2
*/
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
Expand Down Expand Up @@ -13804,23 +13804,63 @@
var selectionModel = this.selectionModel;
var focusModel = this.focusModel;
var dataModel = this.dataModel;
var selRange, selRowLen, selColLen;
var startIdx, data;

data = this._getProcessClipBoardData();

if (selectionModel.hasSelection()) {
selRange = selectionModel.get('range');
selRowLen = selRange.row[1] - selRange.row[0] + 1;
selColLen = selRange.column[1] - selRange.column[0] + 1;
data = this._duplicateData(data, selRowLen, selColLen);
startIdx = selectionModel.getStartIndex();
} else {
startIdx = focusModel.indexOf();
}
data = this._getProcessClipBoardData();

this.$el.off('keyup');
dataModel.paste(data, startIdx);
},

/**
* Duplicate given data based on the selection range
* @param {Array.<Array.<string>>} data - 2D array of string values
* @param {number} selRowLen - row length of selection range
* @param {number} selColLen - column length of selection range
* @returns {Array.<Array.<string>>}
* @private
*/
_duplicateData: function(data, selRowLen, selColLen) {
var dataRowLen = data.length;
var dataColLen = data[0].length;
var rowDupCount = Math.floor(selRowLen / dataRowLen) - 1;
var colDupCount = Math.floor(selColLen / dataColLen) - 1;
var result = $.extend(true, [], data);

// duplicate rows
_.times(rowDupCount, function() {
_.forEach(data, function(row) {
result.push(row.slice(0));
});
});

// duplicate columns
_.forEach(result, function(row) {
var rowData = row.slice(0);

_.times(colDupCount, function() {
[].push.apply(row, rowData);
});
});

return result;
},

/**
* process data for paste to grid
* @returns {Array.<Array.<string>>}
* @private
* @returns {Array.<Array.<string>>} result
*/
_getProcessClipBoardData: function() {
var text = this.$el.val();
Expand Down
16 changes: 8 additions & 8 deletions dist/grid.comb.min.js

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions dist/grid.css
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*!
* bundle created at "Mon Jan 16 2017 17:27:57 GMT+0900 (KST)"
* version: 1.7.1
* bundle created at "Thu Feb 02 2017 16:53:28 GMT+0900 (KST)"
* version: 1.7.2
*/
.tui-grid-container {
width: 100%;
Expand Down
48 changes: 44 additions & 4 deletions dist/grid.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*!
* bundle created at "Mon Jan 16 2017 17:27:57 GMT+0900 (KST)"
* version: 1.7.1
* bundle created at "Thu Feb 02 2017 16:53:28 GMT+0900 (KST)"
* version: 1.7.2
*/
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
Expand Down Expand Up @@ -10329,23 +10329,63 @@
var selectionModel = this.selectionModel;
var focusModel = this.focusModel;
var dataModel = this.dataModel;
var selRange, selRowLen, selColLen;
var startIdx, data;

data = this._getProcessClipBoardData();

if (selectionModel.hasSelection()) {
selRange = selectionModel.get('range');
selRowLen = selRange.row[1] - selRange.row[0] + 1;
selColLen = selRange.column[1] - selRange.column[0] + 1;
data = this._duplicateData(data, selRowLen, selColLen);
startIdx = selectionModel.getStartIndex();
} else {
startIdx = focusModel.indexOf();
}
data = this._getProcessClipBoardData();

this.$el.off('keyup');
dataModel.paste(data, startIdx);
},

/**
* Duplicate given data based on the selection range
* @param {Array.<Array.<string>>} data - 2D array of string values
* @param {number} selRowLen - row length of selection range
* @param {number} selColLen - column length of selection range
* @returns {Array.<Array.<string>>}
* @private
*/
_duplicateData: function(data, selRowLen, selColLen) {
var dataRowLen = data.length;
var dataColLen = data[0].length;
var rowDupCount = Math.floor(selRowLen / dataRowLen) - 1;
var colDupCount = Math.floor(selColLen / dataColLen) - 1;
var result = $.extend(true, [], data);

// duplicate rows
_.times(rowDupCount, function() {
_.forEach(data, function(row) {
result.push(row.slice(0));
});
});

// duplicate columns
_.forEach(result, function(row) {
var rowData = row.slice(0);

_.times(colDupCount, function() {
[].push.apply(row, rowData);
});
});

return result;
},

/**
* process data for paste to grid
* @returns {Array.<Array.<string>>}
* @private
* @returns {Array.<Array.<string>>} result
*/
_getProcessClipBoardData: function() {
var text = this.$el.val();
Expand Down
4 changes: 2 additions & 2 deletions dist/grid.min.css

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 5 additions & 5 deletions dist/grid.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "tui-grid",
"version": "1.7.1",
"version": "1.7.2",
"description": "TOAST UI Grid : Powerful data grid control supported by TOAST UI",
"main": "dist/grid.js",
"scripts": {
Expand Down

0 comments on commit 8f891cd

Please sign in to comment.