@plotdb/sheet 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Change Logs
2
2
 
3
+ ## v0.3.0
4
+
5
+ - support shift-select a range
6
+ - support selection from idx cells
7
+ - support selection without boundary
8
+
3
9
 
4
10
  ## v0.2.0
5
11
 
package/README.md CHANGED
@@ -20,8 +20,8 @@ install:
20
20
 
21
21
  include:
22
22
 
23
- <script src="path-to/sheet.js"></script>
24
- <link rel="stylesheet" type="text/css" href="path-to/sheet.css"/>
23
+ <script src="path-to/sheet/index.min.js"></script>
24
+ <link rel="stylesheet" type="text/css" href="path-to/sheet/index.min.css"/>
25
25
  <div class="container"></div>
26
26
 
27
27
 
package/index.js CHANGED
@@ -186,21 +186,41 @@
186
186
  col: ref$.col
187
187
  };
188
188
  if (idx.col < 0 || idx.row < 0) {
189
+ if (!(e.shiftKey && this$.les.start)) {
190
+ this$.les.node = this$.cell(this$.les.start);
191
+ this$.les.start = {
192
+ col: (ref$ = idx.col) > 0 ? ref$ : 0,
193
+ row: (ref$ = idx.row) > 0 ? ref$ : 0
194
+ };
195
+ }
196
+ this$.les.end = {
197
+ col: idx.col >= 0 ? idx.col : undefined,
198
+ row: idx.row >= 0 ? idx.row : undefined
199
+ };
200
+ this$.renderSelection();
189
201
  return;
190
202
  }
191
- this$.les.start = this$.les.end = idx;
192
- this$.les.node = p;
203
+ if (e.shiftKey && this$.les.start) {
204
+ this$.les.end = idx;
205
+ } else {
206
+ this$.les.start = this$.les.end = idx;
207
+ this$.les.node = p;
208
+ }
193
209
  return this$.renderSelection();
194
210
  });
195
211
  dom.addEventListener('mousemove', function(e){
196
- var p, ref$;
212
+ var p, ref$, idx;
197
213
  if (this$.editing.on || !(e.buttons && (p = parent(e.target, '.cell', dom)))) {
198
214
  return;
199
215
  }
200
- this$.les.end = {
216
+ idx = {
201
217
  row: (ref$ = this$.index(p)).row,
202
218
  col: ref$.col
203
219
  };
220
+ this$.les.end = {
221
+ col: idx.col >= 0 ? idx.col : undefined,
222
+ row: idx.row >= 0 ? idx.row : undefined
223
+ };
204
224
  return this$.renderSelection();
205
225
  });
206
226
  dom.addEventListener('dblclick', function(e){
@@ -231,7 +251,7 @@
231
251
  });
232
252
  });
233
253
  dom.addEventListener('keydown', function(e){
234
- var code, ref$, p1, p2, c1, c2, r1, r2, i$, row, j$, col, opt;
254
+ var code, ref$, sc, ec, sr, er, i$, row, j$, col, opt;
235
255
  if (e.keyCode === 67 && (e.metaKey || e.ctrlKey)) {
236
256
  return this$.copy();
237
257
  }
@@ -243,16 +263,10 @@
243
263
  if (!this$.les.node) {
244
264
  return;
245
265
  }
246
- ref$ = [this$.les.start, this$.les.end], p1 = ref$[0], p2 = ref$[1];
247
- ref$ = p1.col < p2.col
248
- ? [p1.col, p2.col]
249
- : [p2.col, p1.col], c1 = ref$[0], c2 = ref$[1];
250
- ref$ = p1.row < p2.row
251
- ? [p1.row, p2.row]
252
- : [p2.row, p1.row], r1 = ref$[0], r2 = ref$[1];
253
- for (i$ = r1; i$ <= r2; ++i$) {
266
+ ref$ = this$._bound(), sc = ref$.sc, ec = ref$.ec, sr = ref$.sr, er = ref$.er;
267
+ for (i$ = sr; i$ <= er; ++i$) {
254
268
  row = i$;
255
- for (j$ = c1; j$ <= c2; ++j$) {
269
+ for (j$ = sc; j$ <= ec; ++j$) {
256
270
  col = j$;
257
271
  this$.set({
258
272
  row: row,
@@ -374,16 +388,44 @@
374
388
  passive: false
375
389
  });
376
390
  },
391
+ _bound: function(o){
392
+ var ref$, p1, p2, sc, ec, sr, er;
393
+ o == null && (o = {});
394
+ ref$ = [this.les.start, this.les.end], p1 = ref$[0], p2 = ref$[1];
395
+ ref$ = p1.col < p2.col || p2.col == null
396
+ ? [p1.col, p2.col]
397
+ : [p2.col, p1.col], sc = ref$[0], ec = ref$[1];
398
+ ref$ = p1.row < p2.row || p2.row == null
399
+ ? [p1.row, p2.row]
400
+ : [p2.row, p1.row], sr = ref$[0], er = ref$[1];
401
+ if (o.defined == null || o.defined) {
402
+ if (ec == null) {
403
+ ec = Math.max.apply(Math, this._data.map(function(it){
404
+ return it.length;
405
+ }));
406
+ }
407
+ if (er == null) {
408
+ er = this._data.length;
409
+ }
410
+ }
411
+ return {
412
+ sc: sc,
413
+ ec: ec,
414
+ sr: sr,
415
+ er: er
416
+ };
417
+ },
377
418
  copy: function(){
378
- var c, i$, to$, row, r, j$, to1$, col, content, ref$, s;
419
+ var c, ref$, sc, ec, sr, er, i$, row, r, j$, col, content, s;
379
420
  if (!this.les.start) {
380
421
  return;
381
422
  }
382
423
  c = [];
383
- for (i$ = this.les.start.row, to$ = this.les.end.row + 1; i$ < to$; ++i$) {
424
+ ref$ = this._bound(), sc = ref$.sc, ec = ref$.ec, sr = ref$.sr, er = ref$.er;
425
+ for (i$ = sr; i$ <= er; ++i$) {
384
426
  row = i$;
385
427
  r = [];
386
- for (j$ = this.les.start.col, to1$ = this.les.end.col + 1; j$ < to1$; ++j$) {
428
+ for (j$ = sc; j$ <= ec; ++j$) {
387
429
  col = j$;
388
430
  content = ((ref$ = this._data)[rpw] || (ref$[rpw] = []))[col];
389
431
  if (typeof content === 'object') {
@@ -856,12 +898,9 @@
856
898
  if (!this.les.start) {
857
899
  return;
858
900
  }
859
- ref$ = this.les.start.col < this.les.end.col
860
- ? [this.les.start.col, this.les.end.col]
861
- : [this.les.end.col, this.les.start.col], sc = ref$[0], ec = ref$[1];
862
- ref$ = this.les.start.row < this.les.end.row
863
- ? [this.les.start.row, this.les.end.row]
864
- : [this.les.end.row, this.les.start.row], sr = ref$[0], er = ref$[1];
901
+ ref$ = this._bound({
902
+ defined: false
903
+ }), sc = ref$.sc, ec = ref$.ec, sr = ref$.sr, er = ref$.er;
865
904
  rbox = this.dom.inner.getBoundingClientRect();
866
905
  c0 = this.cell({
867
906
  col: this.pos.col + this.frozen.col,
@@ -898,6 +937,12 @@
898
937
  y2 = (b2 || b4 || b0).y + (b2 || b4 || b0).height - rbox.y;
899
938
  w = x2 - x1 + 1;
900
939
  h = y2 - y1 + 1;
940
+ if (ec == null) {
941
+ w = this.root.getBoundingClientRect().width;
942
+ }
943
+ if (er == null) {
944
+ h = this.root.getBoundingClientRect().height;
945
+ }
901
946
  snode = this.cell(this.les.start);
902
947
  sbox = !snode
903
948
  ? null
package/index.min.js CHANGED
@@ -1 +1 @@
1
- (function(){function t(t,i){var e={}.hasOwnProperty;for(var o in i)e.call(i,o)&&(t[o]=i[o]);return t}var i,e,o,s;i=function(t){return Papa.parse(t).data},e=function(t,i,e){var o;for(o=t;t&&t!==e;)t=t.parentNode;if(t!==e)return null;if(!i)return t;for(t=o;t&&t!==e&&(!t.matches||t.matches&&!t.matches(i));)t=t.parentNode;return t!==e||e.matches&&e.matches(i)?t:null},o=function(t){var i,e,o,s,r;for(i=Math.floor(Math.log(25*(t+1)+1)/Math.log(26))-1,e=t-((Math.pow(26,i+1)-1)/25-1),o="ABCDEFGHIJKLMNOPQRSTUVWXYZ",s="",r=0;r<=i;++r)r,s=o.charAt(e%26)+s,e=(e-e%26)/26;return s},(s=function(i){var e,o=this;return null==i&&(i={}),this.opt=i,this.root="string"==typeof i.root?document.querySelector(i.root):i.root,this.evtHandler={},this._data=i.data||[],this._size={row:(e=t({row:[],col:[]},i.size)).row,col:e.col},this.cls={row:(e=t({row:[],col:[]},i.class)).row,col:e.col},this._editing=null==i.editing||!!i.editing,this.dim={col:(i.dim||(i.dim={})).col||30,row:(i.dim||(i.dim={})).row||30},this.frozen={col:(e=t({col:0,row:0},i.frozen||{})).col,row:e.row},this.idx={col:(e=t({row:!0,col:!0},i.idx||{})).col,row:e.row},this.fixed={col:(e=t({col:0,row:0},i.fixed||{})).col,row:e.row},this.xif={row:[this.idx.row?1:0,0,0],col:[this.idx.col?1:0,0,0]},["row","col"].map(function(t){return o.xif[t][1]=o.xif[t][0]+o.fixed[t],o.xif[t][2]=o.xif[t][1]+o.frozen[t]}),this.fix={row:this.xif.row[2],col:this.xif.col[2]},this.pos={col:0,row:0},this.scrollPos={x:0,y:0},this.sel={},this.les={},this.editing={},this.dom=Object.fromEntries(["sheet","inner","caret","range","edit","layout"].map(function(t){var i;return(i=document.createElement("div")).classList.add(t),[t,i]})),this.dom.sheet.setAttribute("tabindex",-1),this.dom.textarea=document.createElement("textarea"),this.root.appendChild(this.dom.sheet),["inner","caret","range","edit","layout"].map(function(t){return o.dom.sheet.appendChild(o.dom[t])}),this.dom.edit.appendChild(this.dom.textarea),this._init(),this}).prototype=t(Object.create(Object.prototype),{on:function(t,i){var e;return((e=this.evtHandler)[t]||(e[t]=[])).push(i)},fire:function(t){var i,e,o,s,r,n,l,h=[];for(e=[],o=1,s=arguments.length;o<s;++o)e.push(arguments[o]);for(i=e,o=0,n=(r=this.evtHandler[t]||[]).length;o<n;++o)l=r[o],h.push(l.apply(this,i));return h},_init:function(){var t,o,s,r,n,l,h,d=this;for(t=0,o=this.dim.row;t<o;++t)for(s=t,r=0,n=this.dim.col;r<n;++r)l=r,this.addCell(l,s);return this.regrid(),this.dom.textarea.addEventListener("mousedown",function(t){return t.stopPropagation()}),(h=this.dom.sheet).addEventListener("mousedown",function(t){var i,o,s;if(d.edited(),(i=e(t.target,".cell",h))&&!((s={row:(o=d.index(i)).row,col:o.col}).col<0||s.row<0))return d.les.start=d.les.end=s,d.les.node=i,d.renderSelection()}),h.addEventListener("mousemove",function(t){var i,o;if(!d.editing.on&&t.buttons&&(i=e(t.target,".cell",h)))return d.les.end={row:(o=d.index(i)).row,col:o.col},d.renderSelection()}),h.addEventListener("dblclick",function(t){var i;if(i=e(t.target,".cell",h))return d.edit({node:i,quick:!1})}),document.body.addEventListener("paste",function(t){var o;if(e(document.activeElement,".sheet",h)&&d.les.start)return o=t.clipboardData.getData("text"),o=i(o),d.set({row:d.les.start.row,col:d.les.start.col,data:o,range:!0})}),h.addEventListener("keydown",function(t){var i,e,o,s,r,n,l,h,c,a,f,u,x;if(67===t.keyCode&&(t.metaKey||t.ctrlKey))return d.copy();if(d.eventInScope(t)){if(8===(i=t.keyCode)){if(!d.les.node)return;for(o=(e=[d.les.start,d.les.end])[0],s=e[1],r=(e=o.col<s.col?[o.col,s.col]:[s.col,o.col])[0],n=e[1],l=(e=o.row<s.row?[o.row,s.row]:[s.row,o.row])[0],h=e[1],c=l;c<=h;++c)for(a=c,f=r;f<=n;++f)u=f,d.set({row:a,col:u,data:""})}if((x=function(){switch(i){case 37:return{y:0,x:-1};case 38:return{y:-1,x:0};case 39:return{y:0,x:1};case 40:return{y:1,x:0};default:return null}}())&&(!d.editing.on||d.editing.quick))return d.move(x),t.stopPropagation(),t.preventDefault(),d.dom.sheet.focus()}}),h.addEventListener("keypress",function(t){if(d.les.node&&!d.editing.on)return d.edit({node:d.les.node,quick:13!==t.keyCode})}),this.dom.textarea.addEventListener("keydown",function(t){var i,e,o;return 27===t.keyCode?(d.edited({cancel:!0}),t.stopPropagation(),t.preventDefault(),void d.dom.sheet.focus()):13!==t.keyCode||t.altKey||t.metaKey?13===t.keyCode&&(t.altKey||t.metaKey)?(d.dom.textarea.value+="\n",d.dom.layout.textContent=d.dom.textarea.value+" ",i=d.dom.layout.getBoundingClientRect(),e=d.editing.node.getBoundingClientRect(),o=d.dom.textarea.style,o.width=Math.max(i.width,e.width+1)+"px",o.height=Math.max(i.height,e.height+1)+"px",o):void 0:(d.move({y:1,x:0}),t.stopPropagation(),t.preventDefault(),void d.dom.sheet.focus())}),document.addEventListener("wheel",function(t){var i,e,o,s,r,n,l;return i=d.eventInScope(t),(null==d.opt.scrollLock||d.opt.scrollLock)&&Math.abs(t.deltaX)>Math.abs(t.deltaY)&&(i||t.target===document.body)&&t.preventDefault(),!!i&&(e=d.scrollPos,o=[t.deltaX,t.deltaY],s=o[0],r=o[1],o=Math.abs(s)>Math.abs(r)?[s,0]:[0,r],s=o[0],r=o[1],o=[e.x,e.y],n=o[0],l=o[1],e.x+=s/30,e.y+=r/30,s=Math.round(e.x)-Math.round(n),(r=Math.round(e.y)-Math.round(l))>0?d._md(r):r<0?d._mu(r):s>0?d._mr(s):s<0&&d._ml(s),d.renderSelection(),t.preventDefault())},{passive:!1})},copy:function(){var t,i,e,o,s,r,n,l,h,d;if(this.les.start){for(t=[],i=this.les.start.row,e=this.les.end.row+1;i<e;++i){for(i,o=[],s=this.les.start.col,r=this.les.end.col+1;s<r;++s)n=s,"object"!=typeof(l=((h=this._data)[rpw]||(h[rpw]=[]))[n])&&o.push('"'+(""+l||"").replace(/"/g,'""')+'"');t.push(o.join("\t"))}return d=t.join("\n"),navigator.clipboard.writeText(d)}},eventInScope:function(t){return e(t.target,".sheet",this.dom.sheet)===this.dom.sheet},size:function(i){var e;return null==i?this._size:(this._size={row:(e=t({row:[],col:[]},i)).row,col:e.col},this.regrid())},regrid:function(){var t=this;return this.dom.inner.style.gridTemplateColumns="repeat("+this.xif.col[1]+", max-content) "+function(){var t,i,e=[];for(t=0,i=this.frozen.col;t<i;++t)e.push(t);return e}.call(this).map(function(i){return t._size.col[i]||"max-content"}).join(" ")+" "+function(){var t,i,e=[];for(t=this.xif.col[2],i=this.dim.col;t<i;++t)e.push(t);return e}.call(this).map(function(i){return t._size.col[i+t.pos.col-t.xif.col[1]]||"max-content"}).join(" "),this.dom.inner.style.gridTemplateRows="repeat("+this.xif.row[1]+", max-content) "+function(){var t,i,e=[];for(t=0,i=this.frozen.row;t<i;++t)e.push(t);return e}.call(this).map(function(i){return t._size.row[i]||"max-content"}).join(" ")+" "+function(){var t,i,e=[];for(t=this.xif.row[2],i=this.dim.row;t<i;++t)e.push(t);return e}.call(this).map(function(i){return t._size.row[i+t.pos.row-t.xif.row[1]]||"max-content"}).join(" ")},addCell:function(t,i){var e;return e=document.createElement("div"),this.dom.inner.insertBefore(e,this.dom.inner.childNodes[i*this.dim.col+t]),this._content({x:t,y:i,n:e})},set:function(t){var i,e,o,s,r,n,l,h,d,c,a,f;if(i=t.row,e=t.col,o=t.data,s=t.range)for(n=0,l=o.length;n<l;++n)for(d=0,c=o[h=n].length;d<c;++d)a=d,((r=this._data)[f=h+i]||(r[f]=[]))[a+e]=o[h][a],this._content({y:h+i-this.pos.row+this.xif.row[1],x:a+e-this.pos.col+this.xif.col[1]});else((r=this._data)[i]||(r[i]=[]))[e]=o,this._content({y:i-this.pos.row+this.xif.row[1],x:e-this.pos.col+this.xif.col[1]});return this.fire("change",{row:i,col:e,data:o,range:!!s})},_content:function(t){var i,e,s,r,n,l,h,d,c;if(i=t.x,e=t.y,((s=t.n)||(s=this.dom.inner.childNodes[i+e*this.dim.col]))&&(n=i<this.xif.col[0]&&e<this.xif.col[0]?["","cell idx"]:i<this.xif.col[0]?(r=e<this.xif.row[1]?" ":e<this.xif.row[2]?e-this.xif.row[1]+1:e-this.xif.row[1]+this.pos.row+1,[r,"cell idx"]):e<this.xif.row[0]?(r=i<this.xif.col[1]?" ":o(i<this.xif.col[2]?i-this.xif.col[1]:i-this.xif.col[1]+this.pos.col),[r,"cell idx"]):i<this.xif.col[1]?[null,"cell fixed"]:e<this.xif.row[1]?[null,"cell fixed"]:i<this.xif.col[2]&&e<this.xif.row[2]?[((n=this._data)[l=e-this.xif.row[1]]||(n[l]=[]))[i-this.xif.col[1]],"cell frozen fixed"]:i<this.xif.col[2]?[((n=this._data)[l=this.pos.row+e-this.xif.row[1]]||(n[l]=[]))[i-this.xif.col[1]],"cell frozen"]:e<this.xif.row[2]?[((n=this._data)[l=e-this.xif.row[1]]||(n[l]=[]))[this.pos.col+i-this.xif.col[1]],"cell frozen"]:[((n=this._data)[l=this.pos.row+e-this.xif.row[1]]||(n[l]=[]))[this.pos.col+i-this.xif.col[1]],"cell"],h=n[0],d=n[1],null==h&&(h=""),c=i>=this.xif.col[0]&&e>=this.xif.row[0]?(this.cls.col[this.pos.col+i-this.xif.col[1]]||"")+" "+(this.cls.row[this.pos.row+e-this.xif.row[1]]||""):"",s.className=d+" "+c,null!==h)){if("object"!=typeof h)return s.textContent=h;if("dom"===h.type)return s.textContent="",s.appendChild(h.node)}},_md:function(t){var i,e,o,s,r,n,l,h,d,c;for(null==t&&(t=1),i=this.dom.inner,s=e=(o=(t=Math.round(Math.abs(t)))-(this.dim.row-this.fix.row))>0?o:0;s<t;++s)for(r=s,n=0,l=this.dim.col;n<l&&(h=n,d=this.dim.col*this.fix.row,i.childNodes[d]);++n)i.removeChild(i.childNodes[d]);for(s=e;s<t;++s)for(r=s,n=0,l=this.dim.col;n<l;++n)h=n,c=document.createElement("div"),this._content({x:h,y:this.dim.row+r,n:c}),i.appendChild(c);return this.pos.row+=t},_mu:function(t){var i,e,o,s,r,n,l,h,d,c,a=[];if(null==t&&(t=1),i=this.dom.inner,!(this.pos.row<=0)){for((t=Math.round(Math.abs(t)))>=this.pos.row&&(t=this.pos.row),s=e=(o=t-(this.dim.row-this.xif.row[2]))>0?o:0;s<t;++s)for(r=s,n=0,l=this.dim.col;n<l&&(h=n,i.childNodes.length);++n)i.removeChild(i.childNodes[i.childNodes.length-1]);for(this.pos.row-=t,s=e;s<t;++s){for(r=s,d=[],n=0,l=this.dim.col;n<l;++n)h=n,c=document.createElement("div"),this._content({x:h,y:r+this.xif.row[2],n:c}),d.push(i.insertBefore(c,i.childNodes[h+(r-e)*this.dim.col+this.dim.col*this.xif.row[2]]));a.push(d)}return a}},_mr:function(t){var i,e,o,s,r,n,l,h;for(null==t&&(t=1),i=this.dom.inner,o=(e=(t=Math.round(Math.abs(t)))-(this.dim.col-this.fix.col))>0?e:0;o<t;++o)for(s=o,r=0,n=this.dim.row;r<n;++r)l=r,i.removeChild(i.childNodes[l*this.dim.col+this.fix.col]),h=document.createElement("div"),this._content({x:this.dim.col+s,y:l,n:h}),i.insertBefore(h,i.childNodes[(l+1)*this.dim.col-1]);return this.pos.col+=t,this.regrid()},_ml:function(t){var i,e,o,s,r,n,l,h,d;if(null==t&&(t=1),i=this.dom.inner,(t=Math.round(Math.abs(t)))>=this.pos.col&&(t=this.pos.col),!(this.pos.col<=0||t<=0)){for(e=(o=t-(this.dim.col-this.xif.col[2]))>0?o:0,this.pos.col-=t,s=e;s<t;++s)for(r=s,n=0,l=this.dim.row;n<l;++n)h=n,i.removeChild(i.childNodes[(h+1)*this.dim.col-1]),d=document.createElement("div"),this._content({x:r+this.xif.col[2],y:h,n:d}),i.insertBefore(d,i.childNodes[h*this.dim.col+this.xif.col[2]+r-e]);return this.regrid()}},goto:function(i){return null==i&&(i={row:0,col:0}),t(this.pos,i),this.render()},render:function(){var t,i,e,o,s,r,n,l=[];for(t=0,i=this.dim.row;t<i;++t){for(e=t,o=[],s=0,r=this.dim.col;s<r;++s)n=s,o.push(this._content({x:n,y:e}));l.push(o)}return l},move:function(t){var i,e,o,s,r;if(null==t&&(t={}),this.editing.on&&this.edited(),(t.node=this.les.node)&&(i=this.cell(t))){if(e=this.index(i),o=i.getBoundingClientRect(),s=this.dom.sheet.getBoundingClientRect(),o.x+o.width>s.x+s.width&&this._mr(1),o.y+o.height>s.y+s.height&&this._md(1),0===e.x){if(0===this.pos.col)return;this._ml(1)}if(0===e.y){if(0===this.pos.row)return;this._mu(1)}if(i=this.cell(t))return this.les.node=i,this.les.start=this.les.end={col:(r=this.index(i)).col,row:r.row},this.renderSelection()}},edit:function(t){var i,e,o,s,r,n,l,h,d,c;if(i=t.node,e=t.quick,this._editing&&!(!(o=this.index(i))||o.col<0||o.row<0))return s=this.editing,s.node=i,s.quick=e,s.on=!0,this.dom.layout.textContent=i.textContent,r=this.dom.layout.getBoundingClientRect(),n=i.getBoundingClientRect(),l=this.dom.sheet.getBoundingClientRect(),s=[this.dom.sheet.scrollLeft,this.dom.sheet.scrollTop],h=s[0],d=s[1],s=this.dom.edit.style,s.left=n.x-l.x+h-2+"px",s.top=n.y-l.y+d-2+"px",s.width="fit-content",s.height="fit-content",this.dom.edit.classList.toggle("show",!0),s=this.dom.textarea.style,s.width=Math.max(r.width,n.width+1)+"px",s.height=Math.max(r.height,n.height+1)+"px",this.dom.textarea.value=c=e?"":i.textContent||"",this.dom.textarea.focus(),this.dom.textarea.setSelectionRange(c.length,c.length)},edited:function(t){var i;if(null==t&&(t={}),this.editing.on)return t.cancel||this.set({row:this.les.start.row,col:this.les.start.col,data:this.dom.textarea.value||""}),this.dom.edit.classList.toggle("show",!1),i=this.editing,i.node=null,i.on=!1,i},index:function(t){var i,e,o,s,r;return(i=Array.from(this.dom.inner.childNodes).indexOf(t))<0?null:(e=i%this.dim.col,o=(i-e)/this.dim.col,s=e<this.xif.col[1]?-1:e<this.xif.col[2]?e-this.xif.col[1]:e-this.xif.col[1]+this.pos.col,r=o<this.xif.row[1]?-1:o<this.xif.row[2]?o-this.xif.row[1]:o-this.xif.row[1]+this.pos.row,{x:e,y:o,col:s,row:r})},cell:function(t){var i,e,o,s;if(null==t&&(t={}),null!=t.col){if(t.col<this.frozen.col)i=t.col;else{if(t.col-this.pos.col<this.frozen.col)return null;i=t.col-this.pos.col}if(t.row<this.frozen.row)e=t.row;else{if(t.row-this.pos.row<this.frozen.row)return null;e=t.row-this.pos.row}return o=[i+this.xif.col[1],e+this.xif.row[1]],i=o[0],e=o[1],i<0||e<0||i>=this.dim.col||e>=this.dim.row?null:this.dom.inner.childNodes[e*this.dim.col+i]}if(!(s=t.node?this.index(t.node):{y:0,x:0}))throw new Error("node not found in sheet");return e=s.y+(t.y||0),i=s.x+(t.x||0),this.dom.inner.childNodes[e*this.dim.col+i]},editing:function(t){return null==t?this._editing:this._editing=!!t},renderSelection:function(){var t,i,e,o,s,r,n,l,h,d,c,a,f,u,x,w,m,p,g,v,y,_,C,M;if(this.les.start)return t=this.les.start.col<this.les.end.col?[this.les.start.col,this.les.end.col]:[this.les.end.col,this.les.start.col],i=t[0],e=t[1],t=this.les.start.row<this.les.end.row?[this.les.start.row,this.les.end.row]:[this.les.end.row,this.les.start.row],o=t[0],s=t[1],r=this.dom.inner.getBoundingClientRect(),n=this.cell({col:this.pos.col+this.frozen.col,row:this.pos.row+this.frozen.row}),l=this.cell({col:i,row:o}),h=this.cell({col:i,row:s}),d=this.cell({col:e,row:o}),c=this.cell({col:e,row:s}),t=[n,l,h,d,c].map(function(t){return t?t.getBoundingClientRect():null}),a=t[0],f=t[1],u=t[2],x=t[3],w=t[4],a.width=0,a.height=0,m=(f||u||a).x-r.x,p=(f||x||a).y-r.y,g=(x||w||a).x+(x||w||a).width-r.x,v=(u||w||a).y+(u||w||a).height-r.y,y=g-m+1,_=v-p+1,C=this.cell(this.les.start),M=C?C.getBoundingClientRect():null,t=this.dom.range.style,t.left=m+"px",t.top=p+"px",t.width=y+"px",t.height=_+"px",this.dom.range.classList.toggle("show",!0),M&&((t=this.dom.caret.style).left=M.x-r.x-1+"px",t.top=M.y-r.y-1+"px",t.width=M.width+2+"px",t.height=M.height+2+"px",t.zIndex=this.les.start.row+this.xif.row[1]<this.xif.row[2]&&this.les.start.col+this.xif.col[1]<this.xif.col[2]?101:this.les.start.row+this.xif.row[1]<this.xif.row[2]||this.les.start.col+this.xif.col[1]<this.xif.col[2]?20:15),this.dom.caret.classList.toggle("show",!!M)},data:function(t){return null==t?this._data:(this._data=t,this.render())}}),"undefined"!=typeof module&&null!==module?module.exports=s:"undefined"!=typeof window&&null!==window&&(window.sheet=s)}).call(this);
1
+ !function(){var l,h,s,t;function e(t,i){var o,e={}.hasOwnProperty;for(o in i)e.call(i,o)&&(t[o]=i[o]);return t}l=function(t){return Papa.parse(t).data},h=function(t,i,o){for(var e=t;t&&t!==o;)t=t.parentNode;if(t!==o)return null;if(!i)return t;for(t=e;t&&t!==o&&(!t.matches||t.matches&&!t.matches(i));)t=t.parentNode;return t!==o||o.matches&&o.matches(i)?t:null},s=function(t){for(var i=Math.floor(Math.log(25*(t+1)+1)/Math.log(26))-1,o=t-((Math.pow(26,1+i)-1)/25-1),e="",n=0;n<=i;++n)e="ABCDEFGHIJKLMNOPQRSTUVWXYZ".charAt(o%26)+e,o=(o-o%26)/26;return e},(t=function(t){var i,o=this;return this.opt=t=null==t?{}:t,this.root="string"==typeof t.root?document.querySelector(t.root):t.root,this.evtHandler={},this._data=t.data||[],this._size={row:(i=e({row:[],col:[]},t.size)).row,col:i.col},this.cls={row:(i=e({row:[],col:[]},t.class)).row,col:i.col},this._editing=null==t.editing||!!t.editing,this.dim={col:(t.dim||(t.dim={})).col||30,row:(t.dim||(t.dim={})).row||30},this.frozen={col:(i=e({col:0,row:0},t.frozen||{})).col,row:i.row},this.idx={col:(i=e({row:!0,col:!0},t.idx||{})).col,row:i.row},this.fixed={col:(i=e({col:0,row:0},t.fixed||{})).col,row:i.row},this.xif={row:[this.idx.row?1:0,0,0],col:[this.idx.col?1:0,0,0]},["row","col"].map(function(t){return o.xif[t][1]=o.xif[t][0]+o.fixed[t],o.xif[t][2]=o.xif[t][1]+o.frozen[t]}),this.fix={row:this.xif.row[2],col:this.xif.col[2]},this.pos={col:0,row:0},this.scrollPos={x:0,y:0},this.sel={},this.les={},this.editing={},this.dom=Object.fromEntries(["sheet","inner","caret","range","edit","layout"].map(function(t){var i;i=document.createElement("div");return i.classList.add(t),[t,i]})),this.dom.sheet.setAttribute("tabindex",-1),this.dom.textarea=document.createElement("textarea"),this.root.appendChild(this.dom.sheet),["inner","caret","range","edit","layout"].map(function(t){return o.dom.sheet.appendChild(o.dom[t])}),this.dom.edit.appendChild(this.dom.textarea),this._init(),this}).prototype=e(Object.create(Object.prototype),{on:function(t,i){var o;return((o=this.evtHandler)[t]||(o[t]=[])).push(i)},fire:function(t){for(var i,o,e,n,s=[],r=[],l=1,h=arguments.length;l<h;++l)r.push(arguments[l]);for(i=r,l=0,e=(o=this.evtHandler[t]||[]).length;l<e;++l)n=o[l],s.push(n.apply(this,i));return s},_init:function(){for(var t,i,o,e,n,a=this,s=0,r=this.dim.row;s<r;++s)for(t=s,i=0,o=this.dim.col;i<o;++i)e=i,this.addCell(e,t);return this.regrid(),this.dom.textarea.addEventListener("mousedown",function(t){return t.stopPropagation()}),(n=this.dom.sheet).addEventListener("mousedown",function(t){var i,o,e;if(a.edited(),i=h(t.target,".cell",n))return(e={row:(o=a.index(i)).row,col:o.col}).col<0||e.row<0?(t.shiftKey&&a.les.start||(a.les.node=a.cell(a.les.start),a.les.start={col:0<(o=e.col)?o:0,row:0<(o=e.row)?o:0}),a.les.end={col:0<=e.col?e.col:void 0,row:0<=e.row?e.row:void 0},void a.renderSelection()):(t.shiftKey&&a.les.start?a.les.end=e:(a.les.start=a.les.end=e,a.les.node=i),a.renderSelection())}),n.addEventListener("mousemove",function(t){var i;if(!a.editing.on&&t.buttons&&(i=h(t.target,".cell",n)))return i={row:(i=a.index(i)).row,col:i.col},a.les.end={col:0<=i.col?i.col:void 0,row:0<=i.row?i.row:void 0},a.renderSelection()}),n.addEventListener("dblclick",function(t){if(t=h(t.target,".cell",n))return a.edit({node:t,quick:!1})}),document.body.addEventListener("paste",function(t){if(h(document.activeElement,".sheet",n)&&a.les.start)return t=t.clipboardData.getData("text"),t=l(t),a.set({row:a.les.start.row,col:a.les.start.col,data:t,range:!0})}),n.addEventListener("keydown",function(t){var i,o,e,n,s,r,l,h,d,c;if(67===t.keyCode&&(t.metaKey||t.ctrlKey))return a.copy();if(a.eventInScope(t)){if(8===(i=t.keyCode)){if(!a.les.node)return;for(e=(o=a._bound()).sc,n=o.ec,c=o.sr,s=o.er,r=c;r<=s;++r)for(l=r,h=e;h<=n;++h)d=h,a.set({row:l,col:d,data:""})}if((c=function(){switch(i){case 37:return{y:0,x:-1};case 38:return{y:-1,x:0};case 39:return{y:0,x:1};case 40:return{y:1,x:0};default:return null}}())&&(!a.editing.on||a.editing.quick))return a.move(c),t.stopPropagation(),t.preventDefault(),a.dom.sheet.focus()}}),n.addEventListener("keypress",function(t){if(a.les.node&&!a.editing.on)return a.edit({node:a.les.node,quick:13!==t.keyCode})}),this.dom.textarea.addEventListener("keydown",function(t){var i,o,e;return 27===t.keyCode?(a.edited({cancel:!0}),t.stopPropagation(),t.preventDefault(),void a.dom.sheet.focus()):13!==t.keyCode||t.altKey||t.metaKey?13===t.keyCode&&(t.altKey||t.metaKey)?(a.dom.textarea.value+="\n",a.dom.layout.textContent=a.dom.textarea.value+" ",i=a.dom.layout.getBoundingClientRect(),o=a.editing.node.getBoundingClientRect(),(e=a.dom.textarea.style).width=Math.max(i.width,o.width+1)+"px",e.height=Math.max(i.height,o.height+1)+"px",e):void 0:(a.move({y:1,x:0}),t.stopPropagation(),t.preventDefault(),void a.dom.sheet.focus())}),document.addEventListener("wheel",function(t){var i,o,e,n,s=a.eventInScope(t);return(null==a.opt.scrollLock||a.opt.scrollLock)&&Math.abs(t.deltaX)>Math.abs(t.deltaY)&&(!s&&t.target!==document.body||t.preventDefault()),!!s&&(i=a.scrollPos,o=(n=[t.deltaX,t.deltaY])[0],e=n[1],o=(n=Math.abs(o)>Math.abs(e)?[o,0]:[0,e])[0],e=n[1],s=(n=[i.x,i.y])[0],n=n[1],i.x+=o/30,i.y+=e/30,o=Math.round(i.x)-Math.round(s),0<(e=Math.round(i.y)-Math.round(n))?a._md(e):e<0?a._mu(e):0<o?a._mr(o):o<0&&a._ml(o),a.renderSelection(),t.preventDefault())},{passive:!1})},_bound:function(t){var i,o=(s=(n=(s=[this.les.start,this.les.end])[0]).col<(i=s[1]).col||null==i.col?[n.col,i.col]:[i.col,n.col])[0],e=s[1],n=(s=n.row<i.row||null==i.row?[n.row,i.row]:[i.row,n.row])[0],s=s[1];return null!=(t=null==t?{}:t).defined&&!t.defined||(null==e&&(e=Math.max.apply(Math,this._data.map(function(t){return t.length}))),null==s&&(s=this._data.length)),{sc:o,ec:e,sr:n,er:s}},copy:function(){var t,i,o,e,n,s,r,l,h,d;if(this.les.start){for(t=[],o=(i=this._bound()).sc,e=i.ec,d=i.sr,n=i.er,s=d;s<=n;++s){for(r=[],l=o;l<=e;++l)h=l,"object"!=typeof(h=((i=this._data)[rpw]||(i[rpw]=[]))[h])&&r.push('"'+(""+h||"").replace(/"/g,'""')+'"');t.push(r.join("\t"))}return d=t.join("\n"),navigator.clipboard.writeText(d)}},eventInScope:function(t){return h(t.target,".sheet",this.dom.sheet)===this.dom.sheet},size:function(t){return null==t?this._size:(this._size={row:(t=e({row:[],col:[]},t)).row,col:t.col},this.regrid())},regrid:function(){var i=this;return this.dom.inner.style.gridTemplateColumns="repeat("+this.xif.col[1]+", max-content) "+function(){for(var t=[],i=0,o=this.frozen.col;i<o;++i)t.push(i);return t}.call(this).map(function(t){return i._size.col[t]||"max-content"}).join(" ")+" "+function(){for(var t=[],i=this.xif.col[2],o=this.dim.col;i<o;++i)t.push(i);return t}.call(this).map(function(t){return i._size.col[t+i.pos.col-i.xif.col[1]]||"max-content"}).join(" "),this.dom.inner.style.gridTemplateRows="repeat("+this.xif.row[1]+", max-content) "+function(){for(var t=[],i=0,o=this.frozen.row;i<o;++i)t.push(i);return t}.call(this).map(function(t){return i._size.row[t]||"max-content"}).join(" ")+" "+function(){for(var t=[],i=this.xif.row[2],o=this.dim.row;i<o;++i)t.push(i);return t}.call(this).map(function(t){return i._size.row[t+i.pos.row-i.xif.row[1]]||"max-content"}).join(" ")},addCell:function(t,i){var o=document.createElement("div");return this.dom.inner.insertBefore(o,this.dom.inner.childNodes[i*this.dim.col+t]),this._content({x:t,y:i,n:o})},set:function(t){var i,o,e,n,s,r,l,h,d=t.row,c=t.col,a=t.data,t=t.range;if(t)for(o=0,e=a.length;o<e;++o)for(s=0,r=a[n=o].length;s<r;++s)l=s,((i=this._data)[h=n+d]||(i[h]=[]))[l+c]=a[n][l],this._content({y:n+d-this.pos.row+this.xif.row[1],x:l+c-this.pos.col+this.xif.col[1]});else((i=this._data)[d]||(i[d]=[]))[c]=a,this._content({y:d-this.pos.row+this.xif.row[1],x:c-this.pos.col+this.xif.col[1]});return this.fire("change",{row:d,col:c,data:a,range:!!t})},_content:function(t){var i,o,e=t.x,n=t.y,t=t.n;if(t=t||this.dom.inner.childNodes[e+n*this.dim.col])return i=(o=e<this.xif.col[0]&&n<this.xif.col[0]?["","cell idx"]:e<this.xif.col[0]?[n<this.xif.row[1]?" ":n<this.xif.row[2]?n-this.xif.row[1]+1:n-this.xif.row[1]+this.pos.row+1,"cell idx"]:n<this.xif.row[0]?[e<this.xif.col[1]?" ":e<this.xif.col[2]?s(e-this.xif.col[1]):s(e-this.xif.col[1]+this.pos.col),"cell idx"]:e<this.xif.col[1]||n<this.xif.row[1]?[null,"cell fixed"]:e<this.xif.col[2]&&n<this.xif.row[2]?[((o=this._data)[i=n-this.xif.row[1]]||(o[i]=[]))[e-this.xif.col[1]],"cell frozen fixed"]:e<this.xif.col[2]?[((o=this._data)[i=this.pos.row+n-this.xif.row[1]]||(o[i]=[]))[e-this.xif.col[1]],"cell frozen"]:n<this.xif.row[2]?[((o=this._data)[i=n-this.xif.row[1]]||(o[i]=[]))[this.pos.col+e-this.xif.col[1]],"cell frozen"]:[((o=this._data)[i=this.pos.row+n-this.xif.row[1]]||(o[i]=[]))[this.pos.col+e-this.xif.col[1]],"cell"])[0],o=o[1],null==i&&(i=""),n=e>=this.xif.col[0]&&n>=this.xif.row[0]?(this.cls.col[this.pos.col+e-this.xif.col[1]]||"")+" "+(this.cls.row[this.pos.row+n-this.xif.row[1]]||""):"",t.className=o+" "+n,null!==i?"object"!=typeof i?t.textContent=i:"dom"===i.type?(t.textContent="",t.appendChild(i.node)):void 0:void 0},_md:function(t){var i,o,e,n,s,r,l,h,d;for(null==t&&(t=1),i=this.dom.inner,e=o=0<(o=(t=Math.round(Math.abs(t)))-(this.dim.row-this.fix.row))?o:0;e<t;++e)for(n=e,s=0,r=this.dim.col;s<r&&(l=s,h=this.dim.col*this.fix.row,i.childNodes[h]);++s)i.removeChild(i.childNodes[h]);for(e=o;e<t;++e)for(n=e,s=0,r=this.dim.col;s<r;++s)l=s,d=document.createElement("div"),this._content({x:l,y:this.dim.row+n,n:d}),i.appendChild(d);return this.pos.row+=t},_mu:function(t){var i,o,e,n,s,r,l,h,d,c,a=[];if(null==t&&(t=1),i=this.dom.inner,!(this.pos.row<=0)){for(n=o=0<(e=(t=(t=Math.round(Math.abs(t)))>=this.pos.row?this.pos.row:t)-(this.dim.row-this.xif.row[2]))?e:0;n<t;++n)for(s=n,r=0,l=this.dim.col;r<l&&(h=r,i.childNodes.length);++r)i.removeChild(i.childNodes[i.childNodes.length-1]);for(this.pos.row-=t,n=o;n<t;++n){for(s=n,d=[],r=0,l=this.dim.col;r<l;++r)h=r,c=document.createElement("div"),this._content({x:h,y:s+this.xif.row[2],n:c}),d.push(i.insertBefore(c,i.childNodes[h+(s-o)*this.dim.col+this.dim.col*this.xif.row[2]]));a.push(d)}return a}},_mr:function(t){var i,o,e,n,s,r,l,h;for(null==t&&(t=1),i=this.dom.inner,e=0<(o=(t=Math.round(Math.abs(t)))-(this.dim.col-this.fix.col))?o:0;e<t;++e)for(n=e,s=0,r=this.dim.row;s<r;++s)l=s,i.removeChild(i.childNodes[l*this.dim.col+this.fix.col]),h=document.createElement("div"),this._content({x:this.dim.col+n,y:l,n:h}),i.insertBefore(h,i.childNodes[(l+1)*this.dim.col-1]);return this.pos.col+=t,this.regrid()},_ml:function(t){var i,o,e,n,s,r,l,h,d;if(null==t&&(t=1),i=this.dom.inner,(t=Math.round(Math.abs(t)))>=this.pos.col&&(t=this.pos.col),!(this.pos.col<=0||t<=0)){for(o=0<(e=t-(this.dim.col-this.xif.col[2]))?e:0,this.pos.col-=t,n=o;n<t;++n)for(s=n,r=0,l=this.dim.row;r<l;++r)h=r,i.removeChild(i.childNodes[(h+1)*this.dim.col-1]),d=document.createElement("div"),this._content({x:s+this.xif.col[2],y:h,n:d}),i.insertBefore(d,i.childNodes[h*this.dim.col+this.xif.col[2]+s-o]);return this.regrid()}},goto:function(t){return e(this.pos,t=null==t?{row:0,col:0}:t),this.render()},render:function(){for(var t,i,o,e,n,s=[],r=0,l=this.dim.row;r<l;++r){for(t=r,i=[],o=0,e=this.dim.col;o<e;++o)n=o,i.push(this._content({x:n,y:t}));s.push(i)}return s},move:function(t){var i,o,e,n;if(null==t&&(t={}),this.editing.on&&this.edited(),(t.node=this.les.node)&&(n=this.cell(t))){if(i=this.index(n),o=n.getBoundingClientRect(),e=this.dom.sheet.getBoundingClientRect(),o.x+o.width>e.x+e.width&&this._mr(1),o.y+o.height>e.y+e.height&&this._md(1),0===i.x){if(0===this.pos.col)return;this._ml(1)}if(0===i.y){if(0===this.pos.row)return;this._mu(1)}if(n=this.cell(t))return this.les.node=n,this.les.start=this.les.end={col:(n=this.index(n)).col,row:n.row},this.renderSelection()}},edit:function(t){var i,o,e,n,s,r=t.node,l=t.quick;if(this._editing&&!(!(s=this.index(r))||s.col<0||s.row<0))return(i=this.editing).node=r,i.quick=l,i.on=!0,this.dom.layout.textContent=r.textContent,o=this.dom.layout.getBoundingClientRect(),e=r.getBoundingClientRect(),n=this.dom.sheet.getBoundingClientRect(),t=(i=[this.dom.sheet.scrollLeft,this.dom.sheet.scrollTop])[0],s=i[1],(i=this.dom.edit.style).left=e.x-n.x+t-2+"px",i.top=e.y-n.y+s-2+"px",i.width="fit-content",i.height="fit-content",this.dom.edit.classList.toggle("show",!0),(i=this.dom.textarea.style).width=Math.max(o.width,e.width+1)+"px",i.height=Math.max(o.height,e.height+1)+"px",this.dom.textarea.value=r=!l&&r.textContent||"",this.dom.textarea.focus(),this.dom.textarea.setSelectionRange(r.length,r.length)},edited:function(t){if(null==t&&(t={}),this.editing.on)return t.cancel||this.set({row:this.les.start.row,col:this.les.start.col,data:this.dom.textarea.value||""}),this.dom.edit.classList.toggle("show",!1),(t=this.editing).node=null,t.on=!1,t},index:function(t){var i=Array.from(this.dom.inner.childNodes).indexOf(t);return i<0?null:{x:t=i%this.dim.col,y:i=(i-t)/this.dim.col,col:t<this.xif.col[1]?-1:t<this.xif.col[2]?t-this.xif.col[1]:t-this.xif.col[1]+this.pos.col,row:i<this.xif.row[1]?-1:i<this.xif.row[2]?i-this.xif.row[1]:i-this.xif.row[1]+this.pos.row}},cell:function(t){var i,o,e;if(null!=(t=null==t?{}:t).col){if(t.col<this.frozen.col)i=t.col;else{if(t.col-this.pos.col<this.frozen.col)return null;i=t.col-this.pos.col}if(t.row<this.frozen.row)o=t.row;else{if(t.row-this.pos.row<this.frozen.row)return null;o=t.row-this.pos.row}return o=(e=[i+this.xif.col[1],o+this.xif.row[1]])[1],(i=e[0])<0||o<0||i>=this.dim.col||o>=this.dim.row?null:this.dom.inner.childNodes[o*this.dim.col+i]}if(!(e=t.node?this.index(t.node):{y:0,x:0}))throw new Error("node not found in sheet");return o=e.y+(t.y||0),i=e.x+(t.x||0),this.dom.inner.childNodes[o*this.dim.col+i]},editing:function(t){return null==t?this._editing:this._editing=!!t},renderSelection:function(){var t,i,o,e,n,s,r,l,h,d;if(this.les.start)return n=(t=this._bound({defined:!1})).sc,i=t.ec,s=t.sr,d=t.er,o=this.dom.inner.getBoundingClientRect(),h=(t=[this.cell({col:this.pos.col+this.frozen.col,row:this.pos.row+this.frozen.row}),this.cell({col:n,row:s}),this.cell({col:n,row:d}),this.cell({col:i,row:s}),this.cell({col:i,row:d})].map(function(t){return t?t.getBoundingClientRect():null}))[0],r=t[1],e=t[2],l=t[3],n=t[4],h.width=0,h.height=0,s=(r||e||h).x-o.x,r=(r||l||h).y-o.y,l=(l||n||h).x+(l||n||h).width-o.x-s+1,h=(e||n||h).y+(e||n||h).height-o.y-r+1,null==i&&(l=this.root.getBoundingClientRect().width),null==d&&(h=this.root.getBoundingClientRect().height),d=(d=this.cell(this.les.start))?d.getBoundingClientRect():null,(t=this.dom.range.style).left=s+"px",t.top=r+"px",t.width=l+"px",t.height=h+"px",this.dom.range.classList.toggle("show",!0),d&&((t=this.dom.caret.style).left=d.x-o.x-1+"px",t.top=d.y-o.y-1+"px",t.width=d.width+2+"px",t.height=d.height+2+"px",t.zIndex=this.les.start.row+this.xif.row[1]<this.xif.row[2]&&this.les.start.col+this.xif.col[1]<this.xif.col[2]?101:this.les.start.row+this.xif.row[1]<this.xif.row[2]||this.les.start.col+this.xif.col[1]<this.xif.col[2]?20:15),this.dom.caret.classList.toggle("show",!!d)},data:function(t){return null==t?this._data:(this._data=t,this.render())}}),"undefined"!=typeof module&&null!==module?module.exports=t:"undefined"!=typeof window&&null!==window&&(window.sheet=t)}.call(this);
package/package.json CHANGED
@@ -1 +1 @@
1
- {"author":"zbryikt","name":"@plotdb/sheet","license":"MIT","description":"spreadsheet","version":"0.2.0","style":"index.min.css","browser":"index.min.js","main":"index.min.js","homepage":"https://github.com/plotdb/sheet","repository":{"type":"git","url":"https://github.com/plotdb/sheet"},"engines":{"node":">=10.14.1","npm":">=6.4.1"},"scripts":{"start":"npx server -r web -o true","deploy":"npx deploy web/static"},"devDependencies":{"@loadingio/debounce.js":"1.0.1","@loadingio/ldquery":"^3.0.1","@plotdb/csscope":"^4.0.0","@plotdb/datadom":"^0.2.0","@plotdb/json0":"^0.0.5","@plotdb/rescope":"^4.1.0","body-parser":"^1.19.0","bootstrap":"^4.5.2","@loadingio/bootstrap.ext":"^0.0.4","bootstrap.native":"^3.0.13","dompurify":"^2.2.6","fedep":"^1.1.2","jsoneditor":"^9.1.1","ldcover":"^3.0.1","ldiconfont":"^0.1.10","ldview":"^1.0.0","livescript":"^1.6.0","proxise":"^1.0.1","sharedb-wrapper":"^1.0.0","stylus":"^0.55.0","@zbryikt/template":"^2.3.33","uglify-js":"^3.13.1","uglifycss":"^0.0.29"},"frontendDependencies":{"root":"web/static/assets/lib","modules":["bootstrap","@loadingio/bootstrap.ext","bootstrap.native","@loadingio/ldquery","@loadingio/debounce.js","dompurify","ldview","ldcover","jsoneditor","ldiconfont","proxise","@plotdb/datadom","@plotdb/csscope","@plotdb/rescope","sharedb-wrapper","@plotdb/json0"]}}
1
+ {"author":"zbryikt","name":"@plotdb/sheet","license":"MIT","description":"spreadsheet","version":"0.3.0","style":"index.min.css","browser":"index.min.js","main":"index.min.js","homepage":"https://github.com/plotdb/sheet","repository":{"type":"git","url":"https://github.com/plotdb/sheet"},"engines":{"node":">=10.14.1","npm":">=6.4.1"},"scripts":{"start":"npx server -r web -o true","deploy":"npx deploy web/static"},"devDependencies":{"@loadingio/debounce.js":"1.0.1","@loadingio/ldquery":"^3.0.4","@plotdb/csscope":"^4.0.8","@plotdb/datadom":"^0.2.0","@plotdb/json0":"^0.0.5","@plotdb/rescope":"^4.1.7","body-parser":"^1.19.0","bootstrap":"^4.5.2","@loadingio/bootstrap.ext":"^0.0.9","bootstrap.native":"^3.0.13","dompurify":"^2.2.6","fedep":"^1.1.7","jsoneditor":"^9.1.1","ldcover":"^3.2.1","ldiconfont":"^0.2.3","ldview":"^1.2.1","livescript":"^1.6.0","proxise":"^1.0.1","sharedb-wrapper":"^1.0.0","stylus":"^0.55.0","@zbryikt/template":"^2.3.38","uglify-js":"^3.13.1","uglifycss":"^0.0.29"},"frontendDependencies":{"root":"web/static/assets/lib","modules":["bootstrap","@loadingio/bootstrap.ext","bootstrap.native","@loadingio/ldquery","@loadingio/debounce.js","dompurify","ldview","ldcover","jsoneditor","ldiconfont","proxise","@plotdb/datadom","@plotdb/csscope","@plotdb/rescope","sharedb-wrapper","@plotdb/json0"]}}