实例介绍
大数据量高性能前端表格grid 动态加载数据 可以做到 一边滚动一边加载新的dom,并同时删除不可见的dom,防止因数据过大引起的dom卡顿
【实例截图】
【核心代码】
handsontable-master
└── handsontable-master
├── bower.json
├── CHANGELOG.md
├── CNAME
├── CONTRIBUTING.md
├── demo
│ ├── ajax.html
│ ├── align_cell.html
│ ├── autocomplete.html
│ ├── backbone.html
│ ├── beforeKeyDown.html
│ ├── bootstrap
│ │ ├── css
│ │ │ ├── bootstrap.css
│ │ │ ├── bootstrap.min.css
│ │ │ ├── bootstrap-responsive.css
│ │ │ └── bootstrap-responsive.min.css
│ │ ├── img
│ │ │ ├── glyphicons-halflings.png
│ │ │ └── glyphicons-halflings-white.png
│ │ ├── js
│ │ │ ├── bootstrap.js
│ │ │ └── bootstrap.min.js
│ │ └── v3
│ │ └── css
│ │ ├── bootstrap.css
│ │ ├── bootstrap.min.css
│ │ ├── bootstrap-theme.css
│ │ ├── bootstrap-theme.css.map
│ │ └── bootstrap-theme.min.css
│ ├── bootstrap.html
│ ├── bower_components
│ │ ├── chroma-js
│ │ │ ├── bower.json
│ │ │ ├── chroma.js
│ │ │ ├── chroma.min.js
│ │ │ ├── LICENSE
│ │ │ ├── LICENSE-colors
│ │ │ ├── Makefile
│ │ │ ├── package.json
│ │ │ └── readme.md
│ │ ├── moment
│ │ │ ├── bower.json
│ │ │ ├── CHANGELOG.md
│ │ │ ├── ISSUE_TEMPLATE.md
│ │ │ ├── LICENSE
│ │ │ ├── locale
│ │ │ │ ├── af.js
│ │ │ │ ├── ar.js
│ │ │ │ ├── ar-ly.js
│ │ │ │ ├── ar-ma.js
│ │ │ │ ├── ar-sa.js
│ │ │ │ ├── ar-tn.js
│ │ │ │ ├── az.js
│ │ │ │ ├── be.js
│ │ │ │ ├── bg.js
│ │ │ │ ├── bn.js
│ │ │ │ ├── bo.js
│ │ │ │ ├── br.js
│ │ │ │ ├── bs.js
│ │ │ │ ├── ca.js
│ │ │ │ ├── cs.js
│ │ │ │ ├── cv.js
│ │ │ │ ├── cy.js
│ │ │ │ ├── da.js
│ │ │ │ ├── de-at.js
│ │ │ │ ├── de.js
│ │ │ │ ├── dv.js
│ │ │ │ ├── el.js
│ │ │ │ ├── en-au.js
│ │ │ │ ├── en-ca.js
│ │ │ │ ├── en-gb.js
│ │ │ │ ├── en-ie.js
│ │ │ │ ├── en-nz.js
│ │ │ │ ├── eo.js
│ │ │ │ ├── es-do.js
│ │ │ │ ├── es.js
│ │ │ │ ├── et.js
│ │ │ │ ├── eu.js
│ │ │ │ ├── fa.js
│ │ │ │ ├── fi.js
│ │ │ │ ├── fo.js
│ │ │ │ ├── fr-ca.js
│ │ │ │ ├── fr-ch.js
│ │ │ │ ├── fr.js
│ │ │ │ ├── fy.js
│ │ │ │ ├── gd.js
│ │ │ │ ├── gl.js
│ │ │ │ ├── he.js
│ │ │ │ ├── hi.js
│ │ │ │ ├── hr.js
│ │ │ │ ├── hu.js
│ │ │ │ ├── hy-am.js
│ │ │ │ ├── id.js
│ │ │ │ ├── is.js
│ │ │ │ ├── it.js
│ │ │ │ ├── ja.js
│ │ │ │ ├── jv.js
│ │ │ │ ├── ka.js
│ │ │ │ ├── kk.js
│ │ │ │ ├── km.js
│ │ │ │ ├── ko.js
│ │ │ │ ├── ky.js
│ │ │ │ ├── lb.js
│ │ │ │ ├── lo.js
│ │ │ │ ├── lt.js
│ │ │ │ ├── lv.js
│ │ │ │ ├── me.js
│ │ │ │ ├── mi.js
│ │ │ │ ├── mk.js
│ │ │ │ ├── ml.js
│ │ │ │ ├── mr.js
│ │ │ │ ├── ms.js
│ │ │ │ ├── ms-my.js
│ │ │ │ ├── my.js
│ │ │ │ ├── nb.js
│ │ │ │ ├── ne.js
│ │ │ │ ├── nl.js
│ │ │ │ ├── nn.js
│ │ │ │ ├── pa-in.js
│ │ │ │ ├── pl.js
│ │ │ │ ├── pt-br.js
│ │ │ │ ├── pt.js
│ │ │ │ ├── ro.js
│ │ │ │ ├── ru.js
│ │ │ │ ├── se.js
│ │ │ │ ├── si.js
│ │ │ │ ├── sk.js
│ │ │ │ ├── sl.js
│ │ │ │ ├── sq.js
│ │ │ │ ├── sr-cyrl.js
│ │ │ │ ├── sr.js
│ │ │ │ ├── ss.js
│ │ │ │ ├── sv.js
│ │ │ │ ├── sw.js
│ │ │ │ ├── ta.js
│ │ │ │ ├── te.js
│ │ │ │ ├── th.js
│ │ │ │ ├── tlh.js
│ │ │ │ ├── tl-ph.js
│ │ │ │ ├── tr.js
│ │ │ │ ├── tzl.js
│ │ │ │ ├── tzm.js
│ │ │ │ ├── tzm-latn.js
│ │ │ │ ├── uk.js
│ │ │ │ ├── uz.js
│ │ │ │ ├── vi.js
│ │ │ │ ├── x-pseudo.js
│ │ │ │ ├── zh-cn.js
│ │ │ │ ├── zh-hk.js
│ │ │ │ └── zh-tw.js
│ │ │ ├── min
│ │ │ │ ├── locales.js
│ │ │ │ ├── locales.min.js
│ │ │ │ ├── moment.min.js
│ │ │ │ ├── moment-with-locales.js
│ │ │ │ ├── moment-with-locales.min.js
│ │ │ │ └── tests.js
│ │ │ ├── moment.d.ts
│ │ │ ├── moment.js
│ │ │ ├── README.md
│ │ │ ├── src
│ │ │ │ ├── lib
│ │ │ │ │ ├── create
│ │ │ │ │ │ ├── check-overflow.js
│ │ │ │ │ │ ├── date-from-array.js
│ │ │ │ │ │ ├── from-anything.js
│ │ │ │ │ │ ├── from-array.js
│ │ │ │ │ │ ├── from-object.js
│ │ │ │ │ │ ├── from-string-and-array.js
│ │ │ │ │ │ ├── from-string-and-format.js
│ │ │ │ │ │ ├── from-string.js
│ │ │ │ │ │ ├── local.js
│ │ │ │ │ │ ├── parsing-flags.js
│ │ │ │ │ │ ├── utc.js
│ │ │ │ │ │ └── valid.js
│ │ │ │ │ ├── duration
│ │ │ │ │ │ ├── abs.js
│ │ │ │ │ │ ├── add-subtract.js
│ │ │ │ │ │ ├── as.js
│ │ │ │ │ │ ├── bubble.js
│ │ │ │ │ │ ├── constructor.js
│ │ │ │ │ │ ├── create.js
│ │ │ │ │ │ ├── duration.js
│ │ │ │ │ │ ├── get.js
│ │ │ │ │ │ ├── humanize.js
│ │ │ │ │ │ ├── iso-string.js
│ │ │ │ │ │ └── prototype.js
│ │ │ │ │ ├── format
│ │ │ │ │ │ └── format.js
│ │ │ │ │ ├── locale
│ │ │ │ │ │ ├── base-config.js
│ │ │ │ │ │ ├── calendar.js
│ │ │ │ │ │ ├── constructor.js
│ │ │ │ │ │ ├── en.js
│ │ │ │ │ │ ├── formats.js
│ │ │ │ │ │ ├── invalid.js
│ │ │ │ │ │ ├── lists.js
│ │ │ │ │ │ ├── locale.js
│ │ │ │ │ │ ├── locales.js
│ │ │ │ │ │ ├── ordinal.js
│ │ │ │ │ │ ├── pre-post-format.js
│ │ │ │ │ │ ├── prototype.js
│ │ │ │ │ │ ├── relative.js
│ │ │ │ │ │ └── set.js
│ │ │ │ │ ├── moment
│ │ │ │ │ │ ├── add-subtract.js
│ │ │ │ │ │ ├── calendar.js
│ │ │ │ │ │ ├── clone.js
│ │ │ │ │ │ ├── compare.js
│ │ │ │ │ │ ├── constructor.js
│ │ │ │ │ │ ├── creation-data.js
│ │ │ │ │ │ ├── diff.js
│ │ │ │ │ │ ├── format.js
│ │ │ │ │ │ ├── from.js
│ │ │ │ │ │ ├── get-set.js
│ │ │ │ │ │ ├── locale.js
│ │ │ │ │ │ ├── min-max.js
│ │ │ │ │ │ ├── moment.js
│ │ │ │ │ │ ├── now.js
│ │ │ │ │ │ ├── prototype.js
│ │ │ │ │ │ ├── start-end-of.js
│ │ │ │ │ │ ├── to.js
│ │ │ │ │ │ ├── to-type.js
│ │ │ │ │ │ └── valid.js
│ │ │ │ │ ├── parse
│ │ │ │ │ │ ├── regex.js
│ │ │ │ │ │ └── token.js
│ │ │ │ │ ├── units
│ │ │ │ │ │ ├── aliases.js
│ │ │ │ │ │ ├── constants.js
│ │ │ │ │ │ ├── day-of-month.js
│ │ │ │ │ │ ├── day-of-week.js
│ │ │ │ │ │ ├── day-of-year.js
│ │ │ │ │ │ ├── hour.js
│ │ │ │ │ │ ├── millisecond.js
│ │ │ │ │ │ ├── minute.js
│ │ │ │ │ │ ├── month.js
│ │ │ │ │ │ ├── offset.js
│ │ │ │ │ │ ├── priorities.js
│ │ │ │ │ │ ├── quarter.js
│ │ │ │ │ │ ├── second.js
│ │ │ │ │ │ ├── timestamp.js
│ │ │ │ │ │ ├── timezone.js
│ │ │ │ │ │ ├── units.js
│ │ │ │ │ │ ├── week-calendar-utils.js
│ │ │ │ │ │ ├── week.js
│ │ │ │ │ │ ├── week-year.js
│ │ │ │ │ │ └── year.js
│ │ │ │ │ └── utils
│ │ │ │ │ ├── abs-ceil.js
│ │ │ │ │ ├── abs-floor.js
│ │ │ │ │ ├── abs-round.js
│ │ │ │ │ ├── compare-arrays.js
│ │ │ │ │ ├── defaults.js
│ │ │ │ │ ├── deprecate.js
│ │ │ │ │ ├── extend.js
│ │ │ │ │ ├── has-own-prop.js
│ │ │ │ │ ├── hooks.js
│ │ │ │ │ ├── index-of.js
│ │ │ │ │ ├── is-array.js
│ │ │ │ │ ├── is-date.js
│ │ │ │ │ ├── is-function.js
│ │ │ │ │ ├── is-object-empty.js
│ │ │ │ │ ├── is-object.js
│ │ │ │ │ ├── is-undefined.js
│ │ │ │ │ ├── keys.js
│ │ │ │ │ ├── map.js
│ │ │ │ │ ├── some.js
│ │ │ │ │ ├── to-int.js
│ │ │ │ │ └── zero-fill.js
│ │ │ │ ├── locale
│ │ │ │ │ ├── af.js
│ │ │ │ │ ├── ar.js
│ │ │ │ │ ├── ar-ly.js
│ │ │ │ │ ├── ar-ma.js
│ │ │ │ │ ├── ar-sa.js
│ │ │ │ │ ├── ar-tn.js
│ │ │ │ │ ├── az.js
│ │ │ │ │ ├── be.js
│ │ │ │ │ ├── bg.js
│ │ │ │ │ ├── bn.js
│ │ │ │ │ ├── bo.js
│ │ │ │ │ ├── br.js
│ │ │ │ │ ├── bs.js
│ │ │ │ │ ├── ca.js
│ │ │ │ │ ├── cs.js
│ │ │ │ │ ├── cv.js
│ │ │ │ │ ├── cy.js
│ │ │ │ │ ├── da.js
│ │ │ │ │ ├── de-at.js
│ │ │ │ │ ├── de.js
│ │ │ │ │ ├── dv.js
│ │ │ │ │ ├── el.js
│ │ │ │ │ ├── en-au.js
│ │ │ │ │ ├── en-ca.js
│ │ │ │ │ ├── en-gb.js
│ │ │ │ │ ├── en-ie.js
│ │ │ │ │ ├── en-nz.js
│ │ │ │ │ ├── eo.js
│ │ │ │ │ ├── es-do.js
│ │ │ │ │ ├── es.js
│ │ │ │ │ ├── et.js
│ │ │ │ │ ├── eu.js
│ │ │ │ │ ├── fa.js
│ │ │ │ │ ├── fi.js
│ │ │ │ │ ├── fo.js
│ │ │ │ │ ├── fr-ca.js
│ │ │ │ │ ├── fr-ch.js
│ │ │ │ │ ├── fr.js
│ │ │ │ │ ├── fy.js
│ │ │ │ │ ├── gd.js
│ │ │ │ │ ├── gl.js
│ │ │ │ │ ├── he.js
│ │ │ │ │ ├── hi.js
│ │ │ │ │ ├── hr.js
│ │ │ │ │ ├── hu.js
│ │ │ │ │ ├── hy-am.js
│ │ │ │ │ ├── id.js
│ │ │ │ │ ├── is.js
│ │ │ │ │ ├── it.js
│ │ │ │ │ ├── ja.js
│ │ │ │ │ ├── jv.js
│ │ │ │ │ ├── ka.js
│ │ │ │ │ ├── kk.js
│ │ │ │ │ ├── km.js
│ │ │ │ │ ├── ko.js
│ │ │ │ │ ├── ky.js
│ │ │ │ │ ├── lb.js
│ │ │ │ │ ├── lo.js
│ │ │ │ │ ├── lt.js
│ │ │ │ │ ├── lv.js
│ │ │ │ │ ├── me.js
│ │ │ │ │ ├── mi.js
│ │ │ │ │ ├── mk.js
│ │ │ │ │ ├── ml.js
│ │ │ │ │ ├── mr.js
│ │ │ │ │ ├── ms.js
│ │ │ │ │ ├── ms-my.js
│ │ │ │ │ ├── my.js
│ │ │ │ │ ├── nb.js
│ │ │ │ │ ├── ne.js
│ │ │ │ │ ├── nl.js
│ │ │ │ │ ├── nn.js
│ │ │ │ │ ├── pa-in.js
│ │ │ │ │ ├── pl.js
│ │ │ │ │ ├── pt-br.js
│ │ │ │ │ ├── pt.js
│ │ │ │ │ ├── ro.js
│ │ │ │ │ ├── ru.js
│ │ │ │ │ ├── se.js
│ │ │ │ │ ├── si.js
│ │ │ │ │ ├── sk.js
│ │ │ │ │ ├── sl.js
│ │ │ │ │ ├── sq.js
│ │ │ │ │ ├── sr-cyrl.js
│ │ │ │ │ ├── sr.js
│ │ │ │ │ ├── ss.js
│ │ │ │ │ ├── sv.js
│ │ │ │ │ ├── sw.js
│ │ │ │ │ ├── ta.js
│ │ │ │ │ ├── te.js
│ │ │ │ │ ├── th.js
│ │ │ │ │ ├── tlh.js
│ │ │ │ │ ├── tl-ph.js
│ │ │ │ │ ├── tr.js
│ │ │ │ │ ├── tzl.js
│ │ │ │ │ ├── tzm.js
│ │ │ │ │ ├── tzm-latn.js
│ │ │ │ │ ├── uk.js
│ │ │ │ │ ├── uz.js
│ │ │ │ │ ├── vi.js
│ │ │ │ │ ├── x-pseudo.js
│ │ │ │ │ ├── zh-cn.js
│ │ │ │ │ ├── zh-hk.js
│ │ │ │ │ └── zh-tw.js
│ │ │ │ └── moment.js
│ │ │ ├── templates
│ │ │ │ ├── amd.js
│ │ │ │ ├── amd-named.js
│ │ │ │ ├── default.js
│ │ │ │ ├── globals.js
│ │ │ │ ├── locale-header.js
│ │ │ │ └── test-header.js
│ │ │ └── typing-tests
│ │ │ ├── moment-tests.ts
│ │ │ └── tsconfig.json
│ │ ├── numbro
│ │ │ ├── bower.json
│ │ │ ├── CHANGELOG.md
│ │ │ ├── CHANGELOG-Numeraljs.md
│ │ │ ├── component.json
│ │ │ ├── dist
│ │ │ │ ├── languages
│ │ │ │ │ ├── cs-CZ.min.js
│ │ │ │ │ ├── da-DK.min.js
│ │ │ │ │ ├── de-CH.min.js
│ │ │ │ │ ├── de-DE.min.js
│ │ │ │ │ ├── en-AU.min.js
│ │ │ │ │ ├── en-GB.min.js
│ │ │ │ │ ├── en-NZ.min.js
│ │ │ │ │ ├── en-ZA.min.js
│ │ │ │ │ ├── es-AR.min.js
│ │ │ │ │ ├── es-ES.min.js
│ │ │ │ │ ├── et-EE.min.js
│ │ │ │ │ ├── fa-IR.min.js
│ │ │ │ │ ├── fi-FI.min.js
│ │ │ │ │ ├── fil-PH.min.js
│ │ │ │ │ ├── fr-CA.min.js
│ │ │ │ │ ├── fr-CH.min.js
│ │ │ │ │ ├── fr-FR.min.js
│ │ │ │ │ ├── he-IL.min.js
│ │ │ │ │ ├── hu-HU.min.js
│ │ │ │ │ ├── index.min.js
│ │ │ │ │ ├── it-IT.min.js
│ │ │ │ │ ├── ja-JP.min.js
│ │ │ │ │ ├── ko-KR.min.js
│ │ │ │ │ ├── lv-LV.min.js
│ │ │ │ │ ├── nb-NO.min.js
│ │ │ │ │ ├── nl-BE.min.js
│ │ │ │ │ ├── nl-NL.min.js
│ │ │ │ │ ├── pl-PL.min.js
│ │ │ │ │ ├── pt-BR.min.js
│ │ │ │ │ ├── pt-PT.min.js
│ │ │ │ │ ├── ru-RU.min.js
│ │ │ │ │ ├── ru-UA.min.js
│ │ │ │ │ ├── sk-SK.min.js
│ │ │ │ │ ├── sv-SE.min.js
│ │ │ │ │ ├── th-TH.min.js
│ │ │ │ │ ├── tr-TR.min.js
│ │ │ │ │ ├── uk-UA.min.js
│ │ │ │ │ ├── zh-CN.min.js
│ │ │ │ │ └── zh-TW.min.js
│ │ │ │ ├── languages.js
│ │ │ │ ├── languages.min.js
│ │ │ │ ├── numbro.js
│ │ │ │ └── numbro.min.js
│ │ │ ├── Gruntfile.js
│ │ │ ├── languages
│ │ │ │ ├── cs-CZ.js
│ │ │ │ ├── da-DK.js
│ │ │ │ ├── de-CH.js
│ │ │ │ ├── de-DE.js
│ │ │ │ ├── en-AU.js
│ │ │ │ ├── en-GB.js
│ │ │ │ ├── en-NZ.js
│ │ │ │ ├── en-ZA.js
│ │ │ │ ├── es-AR.js
│ │ │ │ ├── es-ES.js
│ │ │ │ ├── et-EE.js
│ │ │ │ ├── fa-IR.js
│ │ │ │ ├── fi-FI.js
│ │ │ │ ├── fil-PH.js
│ │ │ │ ├── fr-CA.js
│ │ │ │ ├── fr-CH.js
│ │ │ │ ├── fr-FR.js
│ │ │ │ ├── he-IL.js
│ │ │ │ ├── hu-HU.js
│ │ │ │ ├── index.js
│ │ │ │ ├── it-IT.js
│ │ │ │ ├── ja-JP.js
│ │ │ │ ├── ko-KR.js
│ │ │ │ ├── lv-LV.js
│ │ │ │ ├── nb-NO.js
│ │ │ │ ├── nl-BE.js
│ │ │ │ ├── nl-NL.js
│ │ │ │ ├── pl-PL.js
│ │ │ │ ├── pt-BR.js
│ │ │ │ ├── pt-PT.js
│ │ │ │ ├── ru-RU.js
│ │ │ │ ├── ru-UA.js
│ │ │ │ ├── sk-SK.js
│ │ │ │ ├── sv-SE.js
│ │ │ │ ├── th-TH.js
│ │ │ │ ├── tr-TR.js
│ │ │ │ ├── uk-UA.js
│ │ │ │ ├── zh-CN.js
│ │ │ │ └── zh-TW.js
│ │ │ ├── LICENSE
│ │ │ ├── LICENSE-Numeraljs
│ │ │ ├── numbro.d.ts
│ │ │ ├── numbro.js
│ │ │ ├── package.json
│ │ │ ├── README.md
│ │ │ ├── resources
│ │ │ │ ├── LICENSE
│ │ │ │ ├── raccoon_blue.png
│ │ │ │ ├── raccoon.png
│ │ │ │ ├── raccoon.svg
│ │ │ │ ├── raccoonx128.png
│ │ │ │ ├── raccoonx16.png
│ │ │ │ ├── raccoonx256.png
│ │ │ │ ├── raccoonx32.png
│ │ │ │ ├── raccoonx512.png
│ │ │ │ ├── raccoonx64.png
│ │ │ │ └── README.md
│ │ │ └── tests
│ │ │ ├── languages
│ │ │ │ ├── all.js
│ │ │ │ ├── cs-CZ.js
│ │ │ │ ├── da-DK.js
│ │ │ │ ├── de-CH.js
│ │ │ │ ├── de-DE.js
│ │ │ │ ├── en-AU.js
│ │ │ │ ├── en-GB.js
│ │ │ │ ├── en-NZ.js
│ │ │ │ ├── en-US.js
│ │ │ │ ├── en-ZA.js
│ │ │ │ ├── es-AR.js
│ │ │ │ ├── es-ES.js
│ │ │ │ ├── et-EE.js
│ │ │ │ ├── fa-IR.js
│ │ │ │ ├── fi-FI.js
│ │ │ │ ├── fil-PH.js
│ │ │ │ ├── fr-CA.js
│ │ │ │ ├── fr-CH.js
│ │ │ │ ├── fr-FR.js
│ │ │ │ ├── he-IL.js
│ │ │ │ ├── hu-HU.js
│ │ │ │ ├── it-IT.js
│ │ │ │ ├── ja-JP.js
│ │ │ │ ├── ko-KR.js
│ │ │ │ ├── locale-codes.js
│ │ │ │ ├── lv-LV.js
│ │ │ │ ├── nl-BE.js
│ │ │ │ ├── nl-NL.js
│ │ │ │ ├── pl-PL.js
│ │ │ │ ├── pt-BR.js
│ │ │ │ ├── pt-PT.js
│ │ │ │ ├── ru-RU.js
│ │ │ │ ├── ru-UA.js
│ │ │ │ ├── sk-SK.js
│ │ │ │ ├── sv-SE.js
│ │ │ │ ├── th-TH.js
│ │ │ │ ├── tr-TR.js
│ │ │ │ ├── uk-UA.js
│ │ │ │ ├── zh-CN.js
│ │ │ │ └── zh-TW.js
│ │ │ └── numbro
│ │ │ ├── byteunits.js
│ │ │ ├── format.js
│ │ │ ├── manipulate.js
│ │ │ ├── misc.js
│ │ │ ├── unformat.js
│ │ │ └── validate.js
│ │ └── pikaday
│ │ ├── bower.json
│ │ ├── CHANGELOG.md
│ │ ├── component.json
│ │ ├── css
│ │ │ ├── pikaday.css
│ │ │ ├── site.css
│ │ │ └── theme.css
│ │ ├── examples
│ │ │ ├── amd.html
│ │ │ ├── bound-container.html
│ │ │ ├── calendars.html
│ │ │ ├── container.html
│ │ │ ├── date-range.html
│ │ │ ├── jquery-amd.html
│ │ │ ├── jquery.html
│ │ │ ├── moment.html
│ │ │ ├── positions.html
│ │ │ ├── theme.html
│ │ │ ├── trigger.html
│ │ │ └── weeknumbers.html
│ │ ├── index.html
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── pikaday.js
│ │ ├── plugins
│ │ │ └── pikaday.jquery.js
│ │ ├── README.md
│ │ ├── scss
│ │ │ └── pikaday.scss
│ │ └── tests
│ │ ├── methods.js
│ │ └── module.js
│ ├── buttons.html
│ ├── callbacks.html
│ ├── checkbox.html
│ ├── column_freeze.html
│ ├── column_move.html
│ ├── column_resize.html
│ ├── comments.html
│ ├── conditional.html
│ ├── contextmenu.html
│ ├── css
│ │ ├── font-awesome
│ │ │ ├── css
│ │ │ │ ├── font-awesome.css
│ │ │ │ └── font-awesome.min.css
│ │ │ └── font
│ │ │ ├── FontAwesome.otf
│ │ │ ├── fontawesome-webfont.eot
│ │ │ ├── fontawesome-webfont.svg
│ │ │ ├── fontawesome-webfont.ttf
│ │ │ └── fontawesome-webfont.woff
│ │ └── samples.css
│ ├── current.html
│ ├── custom_borders.html
│ ├── datasources.html
│ ├── date.html
│ ├── dragdown.html
│ ├── dropdown.html
│ ├── dropdownmenu.html
│ ├── fixed.html
│ ├── github-buttons
│ │ ├── github-buttons.css
│ │ └── github-buttons.js
│ ├── graphael.html
│ ├── handsontable.html
│ ├── heatmaps.html
│ ├── image
│ │ └── og-image.png
│ ├── ipad.html
│ ├── jquery.html
│ ├── js
│ │ ├── backbone
│ │ │ ├── backbone.js
│ │ │ ├── backbone-relational
│ │ │ │ ├── backbone-relational.js
│ │ │ │ └── LICENSE.txt
│ │ │ └── lodash.underscore.js
│ │ ├── ga.js
│ │ ├── highlight
│ │ │ ├── highlight.pack.js
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ └── styles
│ │ │ ├── github.css
│ │ │ └── zenburn.css
│ │ ├── jquery
│ │ │ └── jqueryHOT.js
│ │ ├── jquery.min.js
│ │ ├── jquery-ui
│ │ │ ├── css
│ │ │ │ ├── smoothness
│ │ │ │ │ ├── images
│ │ │ │ │ │ ├── animated-overlay.gif
│ │ │ │ │ │ ├── ui-bg_diagonals-thick_18_b81900_40x40.png
│ │ │ │ │ │ ├── ui-bg_diagonals-thick_20_666666_40x40.png
│ │ │ │ │ │ ├── ui-bg_flat_0_aaaaaa_40x100.png
│ │ │ │ │ │ ├── ui-bg_flat_10_000000_40x100.png
│ │ │ │ │ │ ├── ui-bg_flat_75_ffffff_40x100.png
│ │ │ │ │ │ ├── ui-bg_glass_100_f6f6f6_1x400.png
│ │ │ │ │ │ ├── ui-bg_glass_100_fdf5ce_1x400.png
│ │ │ │ │ │ ├── ui-bg_glass_55_fbf9ee_1x400.png
│ │ │ │ │ │ ├── ui-bg_glass_65_ffffff_1x400.png
│ │ │ │ │ │ ├── ui-bg_glass_75_dadada_1x400.png
│ │ │ │ │ │ ├── ui-bg_glass_75_e6e6e6_1x400.png
│ │ │ │ │ │ ├── ui-bg_glass_95_fef1ec_1x400.png
│ │ │ │ │ │ ├── ui-bg_gloss-wave_35_f6a828_500x100.png
│ │ │ │ │ │ ├── ui-bg_highlight-soft_100_eeeeee_1x100.png
│ │ │ │ │ │ ├── ui-bg_highlight-soft_75_cccccc_1x100.png
│ │ │ │ │ │ ├── ui-bg_highlight-soft_75_ffe45c_1x100.png
│ │ │ │ │ │ ├── ui-icons_222222_256x240.png
│ │ │ │ │ │ ├── ui-icons_228ef1_256x240.png
│ │ │ │ │ │ ├── ui-icons_2e83ff_256x240.png
│ │ │ │ │ │ ├── ui-icons_454545_256x240.png
│ │ │ │ │ │ ├── ui-icons_888888_256x240.png
│ │ │ │ │ │ ├── ui-icons_cd0a0a_256x240.png
│ │ │ │ │ │ ├── ui-icons_ef8c08_256x240.png
│ │ │ │ │ │ ├── ui-icons_ffd27a_256x240.png
│ │ │ │ │ │ └── ui-icons_ffffff_256x240.png
│ │ │ │ │ ├── jquery-ui.custom.css
│ │ │ │ │ └── jquery-ui.custom.min.css
│ │ │ │ └── ui-bootstrap
│ │ │ │ ├── images
│ │ │ │ │ ├── ui-bg_flat_0_aaaaaa_40x100.png
│ │ │ │ │ ├── ui-bg_glass_55_fbf9ee_1x400.png
│ │ │ │ │ ├── ui-bg_glass_65_ffffff_1x400.png
│ │ │ │ │ ├── ui-bg_glass_75_dadada_1x400.png
│ │ │ │ │ ├── ui-bg_glass_75_e6e6e6_1x400.png
│ │ │ │ │ ├── ui-bg_glass_75_ffffff_1x400.png
│ │ │ │ │ ├── ui-bg_highlight-soft_75_cccccc_1x100.png
│ │ │ │ │ ├── ui-bg_inset-soft_95_fef1ec_1x100.png
│ │ │ │ │ ├── ui-icons_222222_256x240.png
│ │ │ │ │ ├── ui-icons_2e83ff_256x240.png
│ │ │ │ │ ├── ui-icons_454545_256x240.png
│ │ │ │ │ ├── ui-icons_888888_256x240.png
│ │ │ │ │ ├── ui-icons_cd0a0a_256x240.png
│ │ │ │ │ └── ui-icons_f6cf3b_256x240.png
│ │ │ │ └── jquery-ui.custom.css
│ │ │ └── js
│ │ │ ├── jquery-ui.custom.js
│ │ │ └── jquery-ui.custom.min.js
│ │ ├── jquery.ui.position.js
│ │ ├── json2.min.js
│ │ ├── moment
│ │ │ └── moment.js
│ │ ├── pikaday
│ │ │ ├── css
│ │ │ │ ├── pikaday.css
│ │ │ │ └── site.css
│ │ │ └── pikaday.js
│ │ ├── raphael
│ │ │ ├── g.bar-min.js
│ │ │ ├── g.raphael-min.js
│ │ │ └── raphael-min.js
│ │ └── samples.js
│ ├── json
│ │ ├── autocomplete.json
│ │ ├── load.json
│ │ └── save.json
│ ├── memory_leak.html
│ ├── merge_cells.html
│ ├── numeric.html
│ ├── options.html
│ ├── pagination.html
│ ├── password.html
│ ├── php
│ │ ├── cars.php
│ │ ├── functions.php
│ │ ├── load.php
│ │ ├── reset.php
│ │ └── save.php
│ ├── php.html
│ ├── prepopulate.html
│ ├── quicktable.html
│ ├── quicktable.html.bak
│ ├── readonly.html
│ ├── renderers.html
│ ├── renderers_html.html
│ ├── scroll.html
│ ├── scroll_window.html
│ ├── search.html
│ ├── selectEditor.html
│ ├── sorting.html
│ ├── stretch.html
│ ├── stretch_window.html
│ ├── swf
│ │ └── ZeroClipboard.swf
│ ├── time.html
│ ├── understanding_reference.html
│ └── validation.html
├── dist
│ ├── handsontable.css
│ ├── handsontable.css.map
│ ├── handsontable.full.css
│ ├── handsontable.full.js
│ ├── handsontable.full.min.css
│ ├── handsontable.full.min.js
│ ├── handsontable.js
│ ├── handsontable.js.map
│ ├── handsontable.min.css
│ ├── handsontable.min.js
│ ├── languages
│ │ ├── all.js
│ │ ├── all.min.js
│ │ ├── en-US.js
│ │ ├── en-US.min.js
│ │ ├── pl-PL.js
│ │ └── pl-PL.min.js
│ ├── moment
│ │ ├── LICENSE
│ │ ├── locale
│ │ │ ├── af.js
│ │ │ ├── ar-dz.js
│ │ │ ├── ar.js
│ │ │ ├── ar-kw.js
│ │ │ ├── ar-ly.js
│ │ │ ├── ar-ma.js
│ │ │ ├── ar-sa.js
│ │ │ ├── ar-tn.js
│ │ │ ├── az.js
│ │ │ ├── be.js
│ │ │ ├── bg.js
│ │ │ ├── bn.js
│ │ │ ├── bo.js
│ │ │ ├── br.js
│ │ │ ├── bs.js
│ │ │ ├── ca.js
│ │ │ ├── cs.js
│ │ │ ├── cv.js
│ │ │ ├── cy.js
│ │ │ ├── da.js
│ │ │ ├── de-at.js
│ │ │ ├── de-ch.js
│ │ │ ├── de.js
│ │ │ ├── dv.js
│ │ │ ├── el.js
│ │ │ ├── en-au.js
│ │ │ ├── en-ca.js
│ │ │ ├── en-gb.js
│ │ │ ├── en-ie.js
│ │ │ ├── en-nz.js
│ │ │ ├── eo.js
│ │ │ ├── es-do.js
│ │ │ ├── es.js
│ │ │ ├── et.js
│ │ │ ├── eu.js
│ │ │ ├── fa.js
│ │ │ ├── fi.js
│ │ │ ├── fo.js
│ │ │ ├── fr-ca.js
│ │ │ ├── fr-ch.js
│ │ │ ├── fr.js
│ │ │ ├── fy.js
│ │ │ ├── gd.js
│ │ │ ├── gl.js
│ │ │ ├── gom-latn.js
│ │ │ ├── he.js
│ │ │ ├── hi.js
│ │ │ ├── hr.js
│ │ │ ├── hu.js
│ │ │ ├── hy-am.js
│ │ │ ├── id.js
│ │ │ ├── is.js
│ │ │ ├── it.js
│ │ │ ├── ja.js
│ │ │ ├── jv.js
│ │ │ ├── ka.js
│ │ │ ├── kk.js
│ │ │ ├── km.js
│ │ │ ├── kn.js
│ │ │ ├── ko.js
│ │ │ ├── ky.js
│ │ │ ├── lb.js
│ │ │ ├── lo.js
│ │ │ ├── lt.js
│ │ │ ├── lv.js
│ │ │ ├── me.js
│ │ │ ├── mi.js
│ │ │ ├── mk.js
│ │ │ ├── ml.js
│ │ │ ├── mr.js
│ │ │ ├── ms.js
│ │ │ ├── ms-my.js
│ │ │ ├── my.js
│ │ │ ├── nb.js
│ │ │ ├── ne.js
│ │ │ ├── nl-be.js
│ │ │ ├── nl.js
│ │ │ ├── nn.js
│ │ │ ├── pa-in.js
│ │ │ ├── pl.js
│ │ │ ├── pt-br.js
│ │ │ ├── pt.js
│ │ │ ├── ro.js
│ │ │ ├── ru.js
│ │ │ ├── sd.js
│ │ │ ├── se.js
│ │ │ ├── si.js
│ │ │ ├── sk.js
│ │ │ ├── sl.js
│ │ │ ├── sq.js
│ │ │ ├── sr-cyrl.js
│ │ │ ├── sr.js
│ │ │ ├── ss.js
│ │ │ ├── sv.js
│ │ │ ├── sw.js
│ │ │ ├── ta.js
│ │ │ ├── te.js
│ │ │ ├── tet.js
│ │ │ ├── th.js
│ │ │ ├── tlh.js
│ │ │ ├── tl-ph.js
│ │ │ ├── tr.js
│ │ │ ├── tzl.js
│ │ │ ├── tzm.js
│ │ │ ├── tzm-latn.js
│ │ │ ├── uk.js
│ │ │ ├── ur.js
│ │ │ ├── uz.js
│ │ │ ├── uz-latn.js
│ │ │ ├── vi.js
│ │ │ ├── x-pseudo.js
│ │ │ ├── yo.js
│ │ │ ├── zh-cn.js
│ │ │ ├── zh-hk.js
│ │ │ └── zh-tw.js
│ │ └── moment.js
│ ├── numbro
│ │ ├── languages
│ │ │ ├── bg.min.js
│ │ │ ├── cs-CZ.min.js
│ │ │ ├── da-DK.min.js
│ │ │ ├── de-AT.min.js
│ │ │ ├── de-CH.min.js
│ │ │ ├── de-DE.min.js
│ │ │ ├── de-LI.min.js
│ │ │ ├── el.min.js
│ │ │ ├── en-AU.min.js
│ │ │ ├── en-GB.min.js
│ │ │ ├── en-IE.min.js
│ │ │ ├── en-NZ.min.js
│ │ │ ├── en-ZA.min.js
│ │ │ ├── es-AR.min.js
│ │ │ ├── es-CL.min.js
│ │ │ ├── es-CO.min.js
│ │ │ ├── es-CR.min.js
│ │ │ ├── es-ES.min.js
│ │ │ ├── es-NI.min.js
│ │ │ ├── es-PE.min.js
│ │ │ ├── es-PR.min.js
│ │ │ ├── es-SV.min.js
│ │ │ ├── et-EE.min.js
│ │ │ ├── fa-IR.min.js
│ │ │ ├── fi-FI.min.js
│ │ │ ├── fil-PH.min.js
│ │ │ ├── fr-CA.min.js
│ │ │ ├── fr-CH.min.js
│ │ │ ├── fr-FR.min.js
│ │ │ ├── he-IL.min.js
│ │ │ ├── hu-HU.min.js
│ │ │ ├── id.min.js
│ │ │ ├── index.min.js
│ │ │ ├── it-CH.min.js
│ │ │ ├── it-IT.min.js
│ │ │ ├── ja-JP.min.js
│ │ │ ├── ko-KR.min.js
│ │ │ ├── lv-LV.min.js
│ │ │ ├── nb.min.js
│ │ │ ├── nb-NO.min.js
│ │ │ ├── nl-BE.min.js
│ │ │ ├── nl-NL.min.js
│ │ │ ├── nn.min.js
│ │ │ ├── pl-PL.min.js
│ │ │ ├── pt-BR.min.js
│ │ │ ├── pt-PT.min.js
│ │ │ ├── ro.min.js
│ │ │ ├── ro-RO.min.js
│ │ │ ├── ru-RU.min.js
│ │ │ ├── ru-UA.min.js
│ │ │ ├── sk-SK.min.js
│ │ │ ├── sl.min.js
│ │ │ ├── sr-Cyrl-RS.min.js
│ │ │ ├── sv-SE.min.js
│ │ │ ├── th-TH.min.js
│ │ │ ├── tr-TR.min.js
│ │ │ ├── uk-UA.min.js
│ │ │ ├── zh-CN.min.js
│ │ │ ├── zh-HANS.min.js
│ │ │ ├── zh-HANT.min.js
│ │ │ ├── zh-MO.min.js
│ │ │ ├── zh-SG.min.js
│ │ │ └── zh-TW.min.js
│ │ ├── languages.js
│ │ ├── LICENSE
│ │ ├── LICENSE-Numeraljs
│ │ └── numbro.js
│ ├── pikaday
│ │ ├── LICENSE
│ │ ├── pikaday.css
│ │ └── pikaday.js
│ └── README.md
├── Gruntfile.js
├── handsontable.d.ts
├── handsontable.jquery.json
├── hot.config.js
├── index.html
├── languages
│ ├── all.js
│ ├── en-US.js
│ ├── index.js
│ └── pl-PL.js
├── lib
│ ├── autoResize
│ │ └── autoResize.js
│ ├── jsonpatch
│ │ └── json-patch-duplex.js
│ └── SheetClip
│ └── SheetClip.js
├── LICENSE
├── package.json
├── package-lock.json
├── README.md
├── src
│ ├── 3rdparty
│ │ └── walkontable
│ │ ├── css
│ │ │ ├── bootstrap.css
│ │ │ └── walkontable.css
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── border.js
│ │ │ ├── calculator
│ │ │ │ ├── viewportColumns.js
│ │ │ │ └── viewportRows.js
│ │ │ ├── cell
│ │ │ │ ├── coords.js
│ │ │ │ └── range.js
│ │ │ ├── core.js
│ │ │ ├── event.js
│ │ │ ├── filter
│ │ │ │ ├── column.js
│ │ │ │ └── row.js
│ │ │ ├── index.js
│ │ │ ├── overlay
│ │ │ │ ├── _base.js
│ │ │ │ ├── debug.js
│ │ │ │ ├── left.js
│ │ │ │ ├── top.js
│ │ │ │ └── topLeftCorner.js
│ │ │ ├── overlays.js
│ │ │ ├── scroll.js
│ │ │ ├── selection.js
│ │ │ ├── settings.js
│ │ │ ├── table.js
│ │ │ ├── tableRenderer.js
│ │ │ └── viewport.js
│ │ └── test
│ │ ├── helpers
│ │ │ ├── common.js
│ │ │ └── index.js
│ │ ├── lib
│ │ │ ├── jquery.min.js
│ │ │ ├── jquery.simulate.js
│ │ │ └── phantom-reporter.js
│ │ ├── spec
│ │ │ ├── border.spec.js
│ │ │ ├── calculator
│ │ │ │ ├── viewportColumns.spec.js
│ │ │ │ └── viewportRows.spec.js
│ │ │ ├── cell
│ │ │ │ ├── coords.spec.js
│ │ │ │ └── range.spec.js
│ │ │ ├── core.spec.js
│ │ │ ├── event.spec.js
│ │ │ ├── filter
│ │ │ │ ├── column.spec.js
│ │ │ │ └── row.spec.js
│ │ │ ├── index.js
│ │ │ ├── scrollbarNative.spec.js
│ │ │ ├── scrollbar.spec.js
│ │ │ ├── scroll.spec.js
│ │ │ ├── selection.spec.js
│ │ │ ├── settings
│ │ │ │ ├── columnHeaders.spec.js
│ │ │ │ ├── preventOverflow.spec.js
│ │ │ │ ├── rowHeaders.spec.js
│ │ │ │ └── stretchH.spec.js
│ │ │ └── table.spec.js
│ │ └── SpecRunner.html
│ ├── cellTypes
│ │ ├── autocompleteType.js
│ │ ├── checkboxType.js
│ │ ├── dateType.js
│ │ ├── dropdownType.js
│ │ ├── handsontableType.js
│ │ ├── index.js
│ │ ├── numericType.js
│ │ ├── passwordType.js
│ │ ├── textType.js
│ │ └── timeType.js
│ ├── core.js
│ ├── css
│ │ ├── bootstrap.css
│ │ ├── handsontable.css
│ │ └── mobile.handsontable.css
│ ├── dataMap.js
│ ├── dataSource.js
│ ├── defaultSettings.js
│ ├── editorManager.js
│ ├── editors
│ │ ├── autocompleteEditor.js
│ │ ├── _baseEditor.js
│ │ ├── checkboxEditor.js
│ │ ├── dateEditor.js
│ │ ├── dropdownEditor.js
│ │ ├── handsontableEditor.js
│ │ ├── index.js
│ │ ├── mobileTextEditor.js
│ │ ├── numericEditor.js
│ │ ├── passwordEditor.js
│ │ ├── selectEditor.js
│ │ └── textEditor.js
│ ├── eventManager.js
│ ├── helpers
│ │ ├── array.js
│ │ ├── browser.js
│ │ ├── data.js
│ │ ├── date.js
│ │ ├── dom
│ │ │ ├── element.js
│ │ │ └── event.js
│ │ ├── feature.js
│ │ ├── function.js
│ │ ├── mixed.js
│ │ ├── number.js
│ │ ├── object.js
│ │ ├── setting.js
│ │ ├── string.js
│ │ ├── templateLiteralTag.js
│ │ ├── unicode.js
│ │ └── wrappers
│ │ └── jquery.js
│ ├── i18n
│ │ ├── constants.js
│ │ ├── dictionariesManager.js
│ │ ├── index.js
│ │ ├── languages
│ │ │ ├── en-US.js
│ │ │ ├── index.js
│ │ │ └── pl-PL.js
│ │ ├── phraseFormatters
│ │ │ ├── index.js
│ │ │ ├── pluralize.js
│ │ │ └── substituteVariables.js
│ │ └── utils.js
│ ├── index.js
│ ├── mixins
│ │ ├── arrayMapper.js
│ │ ├── localHooks.js
│ │ └── stateSaver.js
│ ├── multiMap.js
│ ├── pluginHooks.js
│ ├── plugins
│ │ ├── autoColumnSize
│ │ │ ├── autoColumnSize.js
│ │ │ └── test
│ │ │ └── autoColumnSize.e2e.js
│ │ ├── autofill
│ │ │ ├── autofill.js
│ │ │ └── utils.js
│ │ ├── autoRowSize
│ │ │ ├── autoRowSize.js
│ │ │ └── test
│ │ │ └── autoRowSize.e2e.js
│ │ ├── _base.js
│ │ ├── columnSorting
│ │ │ ├── columnSorting.js
│ │ │ └── test
│ │ │ └── columnSorting.e2e.js
│ │ ├── comments
│ │ │ ├── commentEditor.js
│ │ │ ├── comments.css
│ │ │ ├── comments.js
│ │ │ ├── displaySwitch.js
│ │ │ └── test
│ │ │ ├── comments.e2e.js
│ │ │ └── displaySwitch.unit.js
│ │ ├── contextMenu
│ │ │ ├── commandExecutor.js
│ │ │ ├── contextMenu.css
│ │ │ ├── contextMenu.js
│ │ │ ├── cursor.js
│ │ │ ├── itemsFactory.js
│ │ │ ├── menu.js
│ │ │ ├── predefinedItems
│ │ │ │ ├── alignment.js
│ │ │ │ ├── clearColumn.js
│ │ │ │ ├── columnLeft.js
│ │ │ │ ├── columnRight.js
│ │ │ │ ├── readOnly.js
│ │ │ │ ├── redo.js
│ │ │ │ ├── removeColumn.js
│ │ │ │ ├── removeRow.js
│ │ │ │ ├── rowAbove.js
│ │ │ │ ├── rowBelow.js
│ │ │ │ ├── separator.js
│ │ │ │ └── undo.js
│ │ │ ├── predefinedItems.js
│ │ │ ├── test
│ │ │ │ ├── contextMenu.e2e.js
│ │ │ │ ├── cursor.unit.js
│ │ │ │ └── predefinedItems
│ │ │ │ ├── alignment.e2e.js
│ │ │ │ └── readOnly.e2e.js
│ │ │ └── utils.js
│ │ ├── copyPaste
│ │ │ ├── clipboardData.js
│ │ │ ├── contextMenuItem
│ │ │ │ ├── copy.js
│ │ │ │ └── cut.js
│ │ │ ├── copyPaste.css
│ │ │ ├── copyPaste.js
│ │ │ ├── pasteEvent.js
│ │ │ ├── test
│ │ │ │ ├── copyPaste.e2e.js
│ │ │ │ ├── copyPaste.types.ts
│ │ │ │ └── textarea.unit.js
│ │ │ └── textarea.js
│ │ ├── customBorders
│ │ │ ├── customBorders.js
│ │ │ └── test
│ │ │ └── customBorders.e2e.js
│ │ ├── dragToScroll
│ │ │ ├── dragToScroll.js
│ │ │ └── test
│ │ │ └── dragToScroll.e2e.js
│ │ ├── index.js
│ │ ├── manualColumnFreeze
│ │ │ ├── contextMenuItem
│ │ │ │ ├── freezeColumn.js
│ │ │ │ └── unfreezeColumn.js
│ │ │ ├── manualColumnFreeze.css
│ │ │ ├── manualColumnFreeze.js
│ │ │ └── test
│ │ │ └── manualColumnFreeze.e2e.js
│ │ ├── manualColumnMove
│ │ │ ├── columnsMapper.js
│ │ │ ├── manualColumnMove.css
│ │ │ ├── manualColumnMove.js
│ │ │ ├── test
│ │ │ │ ├── columnsMapper.unit.js
│ │ │ │ ├── manualColumnMove.e2e.js
│ │ │ │ └── manualColumnMoveUI.e2e.js
│ │ │ └── ui
│ │ │ ├── backlight.js
│ │ │ ├── _base.js
│ │ │ └── guideline.js
│ │ ├── manualColumnResize
│ │ │ ├── manualColumnResize.js
│ │ │ └── test
│ │ │ └── manualColumnResize.e2e.js
│ │ ├── manualRowMove
│ │ │ ├── manualRowMove.css
│ │ │ ├── manualRowMove.js
│ │ │ ├── rowsMapper.js
│ │ │ ├── test
│ │ │ │ ├── manualRowMove.e2e.js
│ │ │ │ ├── manualRowMoveUI.e2e.js
│ │ │ │ └── rowsMapper.unit.js
│ │ │ └── ui
│ │ │ ├── backlight.js
│ │ │ ├── _base.js
│ │ │ └── guideline.js
│ │ ├── manualRowResize
│ │ │ ├── manualRowResize.js
│ │ │ └── test
│ │ │ └── manualRowResize.e2e.js
│ │ ├── mergeCells
│ │ │ ├── mergeCells.js
│ │ │ └── test
│ │ │ └── canMergeRange.e2e.js
│ │ ├── multipleSelectionHandles
│ │ │ └── multipleSelectionHandles.js
│ │ ├── observeChanges
│ │ │ ├── dataObserver.js
│ │ │ ├── observeChanges.js
│ │ │ ├── test
│ │ │ │ └── observeChanges.e2e.js
│ │ │ └── utils.js
│ │ ├── persistentState
│ │ │ ├── persistentState.js
│ │ │ └── test
│ │ │ └── persistentState.e2e.js
│ │ ├── search
│ │ │ ├── search.js
│ │ │ └── test
│ │ │ └── search.e2e.js
│ │ ├── touchScroll
│ │ │ └── touchScroll.js
│ │ └── undoRedo
│ │ ├── test
│ │ │ └── UndoRedo.e2e.js
│ │ └── undoRedo.js
│ ├── plugins.js
│ ├── renderers
│ │ ├── autocompleteRenderer.js
│ │ ├── _cellDecorator.js
│ │ ├── checkboxRenderer.js
│ │ ├── htmlRenderer.js
│ │ ├── index.js
│ │ ├── numericRenderer.js
│ │ ├── passwordRenderer.js
│ │ └── textRenderer.js
│ ├── tableView.js
│ ├── utils
│ │ ├── dataStructures
│ │ │ ├── linkedList.js
│ │ │ ├── queue.js
│ │ │ └── stack.js
│ │ ├── ghostTable.js
│ │ ├── interval.js
│ │ ├── recordTranslator.js
│ │ ├── rootInstance.js
│ │ ├── samplesGenerator.js
│ │ ├── sortingAlgorithms
│ │ │ └── mergeSort.js
│ │ └── staticRegister.js
│ └── validators
│ ├── autocompleteValidator.js
│ ├── dateValidator.js
│ ├── index.js
│ ├── numericValidator.js
│ └── timeValidator.js
├── test
│ ├── e2e
│ │ ├── cellTypes
│ │ │ └── index.spec.js
│ │ ├── ColHeader.spec.js
│ │ ├── core
│ │ │ ├── colToProp.spec.js
│ │ │ ├── countSourceCols.spec.js
│ │ │ ├── getCellMetaAtRow.spec.js
│ │ │ ├── getCellsMeta.spec.js
│ │ │ ├── getCopyableData.spec.js
│ │ │ ├── getCopyableText.spec.js
│ │ │ ├── getSourceDataArray.spec.js
│ │ │ ├── getSourceDataAtCell.spec.js
│ │ │ ├── propToCol.spec.js
│ │ │ ├── setCellMeta.spec.js
│ │ │ ├── spliceCellsMeta.spec.js
│ │ │ ├── spliceCol.spec.js
│ │ │ ├── spliceRow.spec.js
│ │ │ ├── toPhysicalColumn.spec.js
│ │ │ ├── toPhysicalRow.spec.js
│ │ │ ├── toVisualColumn.spec.js
│ │ │ └── toVisualRow.spec.js
│ │ ├── Core_alter.spec.js
│ │ ├── Core_beforechange.spec.js
│ │ ├── Core_beforeKeyDown.spec.js
│ │ ├── Core_count.spec.js
│ │ ├── Core_datachange.spec.js
│ │ ├── Core_dataSchema.spec.js
│ │ ├── Core_destroyEditor.spec.js
│ │ ├── Core_destroy.spec.js
│ │ ├── Core_getCellMeta.spec.js
│ │ ├── Core_getColHeader.spec.js
│ │ ├── Core_getDataAt.spec.js
│ │ ├── Core_getDataType.spec.js
│ │ ├── Core_getRowHeader.spec.js
│ │ ├── Core_init.spec.js
│ │ ├── Core_isEmpty.spec.js
│ │ ├── Core_keepEmptyRows.spec.js
│ │ ├── Core_listen.spec.js
│ │ ├── Core_loadData.spec.js
│ │ ├── Core_navigation.spec.js
│ │ ├── Core_onKeyDown.spec.js
│ │ ├── Core_populateFromArray.spec.js
│ │ ├── Core_reCreate.spec.js
│ │ ├── Core_removeCellMeta.spec.js
│ │ ├── Core_render.spec.js
│ │ ├── Core_selection.spec.js
│ │ ├── Core_setDataAtCell.spec.js
│ │ ├── Core_splice.spec.js
│ │ ├── Core_update.spec.js
│ │ ├── Core_validate.spec.js
│ │ ├── Core_view.spec.js
│ │ ├── Dom.spec.js
│ │ ├── editors
│ │ │ ├── autocompleteEditor.spec.js
│ │ │ ├── baseEditor.spec.js
│ │ │ ├── dateEditor.spec.js
│ │ │ ├── dropdownEditor.spec.js
│ │ │ ├── handsontableEditor.spec.js
│ │ │ ├── index.spec.js
│ │ │ ├── noEditor.spec.js
│ │ │ ├── numericEditor.spec.js
│ │ │ ├── passwordEditor.spec.js
│ │ │ ├── selectEditor.spec.js
│ │ │ └── textEditor.spec.js
│ │ ├── FillHandle.spec.js
│ │ ├── i18n
│ │ │ └── index.spec.js
│ │ ├── index.js
│ │ ├── MemoryLeakTest.js
│ │ ├── Performance.spec.js
│ │ ├── PluginHooks.spec.js
│ │ ├── publicAPI.spec.js
│ │ ├── renderers
│ │ │ ├── autocompleteRenderer.spec.js
│ │ │ ├── cellDecorator.spec.js
│ │ │ ├── checkboxRenderer.spec.js
│ │ │ ├── htmlRenderer.spec.js
│ │ │ ├── index.spec.js
│ │ │ ├── numericRenderer.spec.js
│ │ │ ├── passwordRenderer.spec.js
│ │ │ └── textRenderer.spec.js
│ │ ├── RowHeader.spec.js
│ │ ├── settings
│ │ │ ├── columns.spec.js
│ │ │ ├── colWidths.spec.js
│ │ │ ├── copyable.spec.js
│ │ │ ├── currentHeaderClassName.spec.js
│ │ │ ├── currentRowClassName.spec.js
│ │ │ ├── editor.spec.js
│ │ │ ├── fixedColumnsLeft.spec.js
│ │ │ ├── fixedRowsTop.spec.js
│ │ │ ├── fragmentSelection.spec.js
│ │ │ ├── maxCols.spec.js
│ │ │ ├── maxRows.spec.js
│ │ │ ├── renderer.spec.js
│ │ │ └── tableClassName.spec.js
│ │ ├── utils
│ │ │ └── ghostTable.spec.js
│ │ └── validators
│ │ ├── autocompleteValidator.spec.js
│ │ ├── dateValidator.spec.js
│ │ ├── index.spec.js
│ │ ├── numericValidator.spec.js
│ │ └── timeValidator.spec.js
│ ├── helpers
│ │ ├── common.js
│ │ ├── index.js
│ │ └── jasmine.js
│ ├── lib
│ │ ├── backbone.js
│ │ ├── jquery.min.js
│ │ ├── jquery.simulate.js
│ │ ├── lodash.underscore.js
│ │ ├── normalize.css
│ │ └── phantom-reporter.js
│ ├── __mocks__
│ │ └── styleMock.js
│ ├── scripts
│ │ ├── trigger-hot-builder-tests.sh
│ │ └── trigger-pro-tests.sh
│ ├── types
│ │ ├── handsontable-tests.ts
│ │ └── tsconfig.json
│ └── unit
│ ├── EventManager.spec.js
│ ├── helpers
│ │ ├── Array.spec.js
│ │ ├── Data.spec.js
│ │ ├── Date.spec.js
│ │ ├── dom
│ │ │ ├── Element.spec.js
│ │ │ └── Event.spec.js
│ │ ├── Feature.spec.js
│ │ ├── Function.spec.js
│ │ ├── Mixed.spec.js
│ │ ├── Number.spec.js
│ │ ├── Object.spec.js
│ │ ├── String.spec.js
│ │ ├── TemplateLiteralTag.spec.js
│ │ └── Unicode.spec.js
│ ├── i18n
│ │ ├── dictionariesManager.spec.js
│ │ ├── index.spec.js
│ │ ├── phraseFormatters
│ │ │ ├── index.spec.js
│ │ │ ├── pluralize.spec.js
│ │ │ └── substituteVariables.spec.js
│ │ └── utils.spec.js
│ ├── index.js
│ ├── mixins
│ │ └── localHooks.spec.js
│ ├── multiMap.spec.js
│ ├── PluginHooks.spec.js
│ └── utils
│ ├── dataStructures
│ │ └── LinkedList.spec.js
│ ├── Interval.spec.js
│ ├── recordTranslator.spec.js
│ ├── rootInstance.spec.js
│ ├── samplesGenerator.spec.js
│ ├── sortingAlgorithms
│ │ └── mergeSort.spec.js
│ └── staticRegister.spec.js
├── update.json
├── webpack.config.js
└── yarn.lock
180 directories, 1267 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论