From d0511cb0988ac82099b26300f2fc99bbd6528244 Mon Sep 17 00:00:00 2001 From: Doc999tor Date: Thu, 6 Oct 2016 03:14:16 +0300 Subject: [PATCH] First draft --- .gitignore | 1 + gulpfile.js | 18 ++++++++++++++++++ index.html | 47 +++++++++++++++++++++++++++++++++++++++++++++++ main.js | 35 +++++++++++++++++++++++++++++++++++ package.json | 14 ++++++++++++++ start.bat | 2 ++ xls.xlsx | Bin 0 -> 9082 bytes 7 files changed, 117 insertions(+) create mode 100644 .gitignore create mode 100644 gulpfile.js create mode 100644 index.html create mode 100644 main.js create mode 100644 package.json create mode 100644 start.bat create mode 100644 xls.xlsx diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..30bc162 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/node_modules \ No newline at end of file diff --git a/gulpfile.js b/gulpfile.js new file mode 100644 index 0000000..006c945 --- /dev/null +++ b/gulpfile.js @@ -0,0 +1,18 @@ +var gulp = require('gulp'), + watch = require('gulp-watch'), + browserSync = require("browser-sync").create(), + reload = browserSync.reload; + +var config = { + server: {baseDir: "./"}, + port: 9000, + open: true +}; + +gulp.task('watch', function () { + gulp.watch(['index.html', 'main.js', 'style.css']).on('change', reload); +}); + +gulp.task('default', ['watch'], function () { + browserSync.init(config); +}); diff --git a/index.html b/index.html new file mode 100644 index 0000000..e4eeb1e --- /dev/null +++ b/index.html @@ -0,0 +1,47 @@ + + + + + + + + + +
+ + + + +
+
+ + + + +
+
+ + + + +
+ + + \ No newline at end of file diff --git a/main.js b/main.js new file mode 100644 index 0000000..b5e7cdf --- /dev/null +++ b/main.js @@ -0,0 +1,35 @@ +Array.from(document.querySelectorAll('input')).forEach(input => { + input.addEventListener('paste', e => { + e.preventDefault(); + e.stopPropagation(); + addData(e.currentTarget, e.clipboardData.getData('Text')); + return false; + }); +}); + +function addData (input, text) { + console.time('addData'); + let [rowInput, columnInput] = [ + parseInt(input.dataset.row.match(/\d/)[0]), + parseInt(input.dataset.column.match(/\d/)[0]) + ]; + + let cells = []; + let rows = text + .split('\n') + .forEach((row, index) => { + cells[index] = row.split('\t'); + }); + rows = null; + + cells.forEach((rowData, indexRow) => { + rowData.forEach((value, indexColumn) => { + let query = `input[data-row=row-${indexRow + rowInput}][data-column=cl-${indexColumn + columnInput}]`; + let el = document.querySelector(query); + if (el) { + el.value = value; + } + }); + }); + console.timeEnd('addData'); +} \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..36c0600 --- /dev/null +++ b/package.json @@ -0,0 +1,14 @@ +{ + "name": "zoominfo-test-task", + "version": "1.0.0", + "description": "", + "main": "", + "scripts": {}, + "author": "Victor", + "license": "ISC", + "devDependencies": { + "browser-sync": "^2.11.2", + "gulp": "^3.9.1", + "gulp-watch": "^4.3.5" + } +} diff --git a/start.bat b/start.bat new file mode 100644 index 0000000..461eb44 --- /dev/null +++ b/start.bat @@ -0,0 +1,2 @@ +subl . +start cmd /k "gulp" \ No newline at end of file diff --git a/xls.xlsx b/xls.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..94d53b042760541d40ec2d334821cce933975859 GIT binary patch literal 9082 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 AivR!s literal 0 HcmV?d00001