Data Tables Generator by Supsystic - Version 1.8.5

Version Description

/ 21.06.2018 = * Added mass migration of tables * Add caching to solve the problem of importing large tables * Add drawing the table according to the data from the database * Fix for Global Search * Added Turkish translation * Add a special parameter Fixed Table Width for mobile devices * Add option "Export Fonts to PDF" * Fix of creating history for new table and new table user * Change "Insert picture" toolbar button to "Insert media" * Minor issues fix

Download this release

Release Info

Developer supsystic.com
Plugin Icon 128x128 Data Tables Generator by Supsystic
Version 1.8.5
Comparing to
See all releases

Code changes from version 1.8.4 to 1.8.5

app/SupsysticTables.php CHANGED
@@ -18,7 +18,7 @@ class SupsysticTables
18
 
19
  $menuSlug = 'supsystic-tables';
20
  $pluginPath = dirname(dirname(__FILE__));
21
- $environment = new Rsc_Environment('st', '1.8.4', $pluginPath);
22
 
23
  /* Configure */
24
  $environment->configure(
@@ -119,6 +119,11 @@ class SupsysticTables
119
  // register_deactivation_hook($bootstrap, array($this, 'dropSchema'));
120
  }
121
 
 
 
 
 
 
122
  protected function getPluginEnvironment()
123
  {
124
  $environment = Rsc_Environment::ENV_PRODUCTION;
18
 
19
  $menuSlug = 'supsystic-tables';
20
  $pluginPath = dirname(dirname(__FILE__));
21
+ $environment = new Rsc_Environment('st', '1.8.5', $pluginPath);
22
 
23
  /* Configure */
24
  $environment->configure(
119
  // register_deactivation_hook($bootstrap, array($this, 'dropSchema'));
120
  }
121
 
122
+ public function getEnvironment()
123
+ {
124
+ return $this->environment;
125
+ }
126
+
127
  protected function getPluginEnvironment()
128
  {
129
  $environment = Rsc_Environment::ENV_PRODUCTION;
app/assets/js/supsystic.ui.js CHANGED
@@ -20,7 +20,12 @@
20
  });
21
 
22
  $(document).ready(function () {
23
-
 
 
 
 
 
24
  /* Bootstrap Tooltips */
25
  // $('body').tooltip({
26
  // selector: '.supsystic-plugin [data-toggle="tooltip"]',
@@ -34,7 +39,7 @@
34
  updateAnimation: true,
35
  animation: 'swing',
36
  functionReady: function(origin) {
37
- $('img').load(function(){
38
  origin.tooltipster('reposition');
39
  });
40
  }
@@ -60,4 +65,4 @@
60
  });
61
  });
62
 
63
- }(jQuery, window, 'supsystic'));
20
  });
21
 
22
  $(document).ready(function () {
23
+ var activModule = (/\module=([^&#]*)/i.test($('.supsystic-navigation').find('li.active').find('a').attr('href'))) ? RegExp.$1 : 'tables';
24
+ $('#toplevel_page_supsystic-tables').find('.wp-submenu li').removeClass('current').each(function(){
25
+ if($(this).find('a[href$="&module='+ activModule+ '"]').size()) {
26
+ $(this).addClass('current');
27
+ }
28
+ });
29
  /* Bootstrap Tooltips */
30
  // $('body').tooltip({
31
  // selector: '.supsystic-plugin [data-toggle="tooltip"]',
39
  updateAnimation: true,
40
  animation: 'swing',
41
  functionReady: function(origin) {
42
+ $('img').load(function(){
43
  origin.tooltipster('reposition');
44
  });
45
  }
65
  });
66
  });
67
 
68
+ }(jQuery, window, 'supsystic'));
app/langs/supsystic_tables-tr_TR.mo CHANGED
Binary file
app/langs/supsystic_tables-tr_TR.po CHANGED
@@ -11,1252 +11,2148 @@ msgstr ""
11
  "Content-Transfer-Encoding: 8bit\n"
12
  "Translator: Mehmet Koçali <membus@gmail.com>\n"
13
  "X-Poedit-SourceCharset: UTF-8\n"
14
- "X-Generator: Poedit 1.8.9\n"
15
 
16
- msgid "An error has occurred"
17
- msgstr "Bir hata oluştu"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
 
19
- msgid "Overview"
20
- msgstr "Genel bakış"
21
 
22
- msgid "Add new table"
23
- msgstr "Yeni tablo ekle"
24
 
25
- msgid "Tables"
26
- msgstr "Tablolar"
27
 
28
- msgid "Settings"
29
- msgstr "Ayarlar"
30
 
31
- msgid "License"
32
- msgstr "Lisans"
33
 
34
- msgid "Featured Plugins"
35
- msgstr ""
36
 
37
- msgid "Table title"
38
- msgstr "Tablo başlığı"
39
 
40
- msgid "Columns"
41
- msgstr "Sütunlar"
 
 
 
 
 
 
42
 
43
- msgid "Rows"
44
- msgstr "Satırlar"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
45
 
46
- msgid "You can change number of Columns and Rows later"
 
 
 
 
 
 
 
 
 
47
  msgstr ""
 
 
 
 
 
 
48
 
49
- msgid "Invalid range specified."
50
- msgstr "Geçersiz aralık belirtildi"
51
 
52
- msgid "Failed to find diagram %s."
53
- msgstr "%s isimli diagram bulunamadı."
54
 
55
- msgid "Failed to find table %s."
56
- msgstr "%s isimli tablo bulunamadı."
57
 
58
- msgid "Failed to get table rows: %s"
59
- msgstr ""
60
 
61
- msgid "Diagram"
62
- msgstr ""
63
 
64
- msgid "Type"
65
- msgstr ""
66
 
67
- msgid "Area Chart"
68
- msgstr ""
69
 
70
- msgid "Line Chart"
71
- msgstr ""
72
 
73
- msgid "Pie Chart"
74
- msgstr ""
75
 
76
- msgid "Bar Chart"
77
- msgstr ""
78
 
79
- msgid "Column Chart"
80
- msgstr ""
81
 
82
- msgid "Bubble Chart"
83
- msgstr ""
84
 
85
- msgid "Switch rows / columns"
86
- msgstr ""
87
 
88
- msgid "Use first row as headers"
89
- msgstr ""
90
 
91
- msgid "Use first column as labels"
92
- msgstr ""
93
 
94
- msgid "Width"
95
- msgstr ""
96
 
97
  msgid ""
98
- "Set the value in px or %, for example, 400 (equals to 400px) or 90%. Leave "
99
- "this field empty to use default width value."
100
- msgstr ""
101
-
102
- msgid "Height"
 
103
  msgstr ""
 
 
 
 
 
 
104
 
105
  msgid ""
106
- "Set the value in px or %, for example, 200 (equals to 200px) or 80%. Leave "
107
- "this field empty to use default height value."
 
108
  msgstr ""
 
 
 
109
 
110
- msgid "Remove"
111
- msgstr ""
112
 
113
- msgid "Legend Position"
114
- msgstr ""
115
 
116
- msgid "No legend"
117
- msgstr ""
118
 
119
- msgid "Above the chart"
120
- msgstr ""
121
 
122
- msgid "Below the chart"
123
- msgstr ""
124
 
125
- msgid "Left of the chart"
126
- msgstr ""
127
 
128
- msgid "Right of the chart"
 
129
  msgstr ""
 
 
130
 
131
- msgid "Lines between slices and values"
132
- msgstr ""
133
 
134
- msgid "Inside by the top left corner"
135
- msgstr ""
136
 
137
- msgid "Diagram Title"
138
- msgstr ""
139
 
140
- msgid "Axis X Title"
141
- msgstr ""
142
 
143
- msgid "Axis Y Title"
144
- msgstr ""
145
 
146
- msgid "3D Diagram"
147
- msgstr ""
148
 
149
- msgid "No"
150
- msgstr ""
151
 
152
- msgid "Yes"
 
 
 
 
153
  msgstr ""
 
 
 
 
 
154
 
155
- msgid "Text on Slice"
 
 
 
 
156
  msgstr ""
 
 
 
 
 
157
 
158
- msgid "Percentage of slice size out of total"
159
- msgstr ""
 
160
 
161
- msgid "Quantitative value of slice"
162
  msgstr ""
 
163
 
164
- msgid "Name of slice"
 
 
165
  msgstr ""
 
 
166
 
167
- msgid "Not displaying"
 
 
 
 
 
168
  msgstr ""
 
 
 
 
 
169
 
170
- msgid "Use custom colors"
 
 
 
 
 
171
  msgstr ""
 
 
 
 
 
172
 
173
- msgid "Select chart type"
 
 
 
 
 
174
  msgstr ""
 
 
 
 
 
175
 
176
- msgid "Editor tab"
 
 
 
 
177
  msgstr ""
 
 
 
 
178
 
179
- msgid "how to create Diagrams with Data Table plugin"
 
 
 
 
180
  msgstr ""
 
 
 
 
181
 
182
  msgid ""
183
- "You have no diagrams for now. Go to %s -> select the required data in the "
184
- "table and click on “Add diagram” button. Also please check the tutorial %s"
 
185
  msgstr ""
 
 
 
186
 
187
- msgid "Add diagram"
188
- msgstr "Diagram ekle"
189
 
190
- msgid "The table ID %s not found."
191
- msgstr "%d tablo ID'si bulunamadı."
192
 
193
- msgid "Unsupported export type: %s."
194
- msgstr ""
195
 
196
- msgid "Frontend Export"
197
- msgstr ""
198
 
199
- msgid "Allow export table to pdf, csv, xls on frontend"
200
- msgstr ""
201
 
202
- msgid "Export Page Orientation"
203
- msgstr ""
204
 
205
- msgid "Choose the page orientation for PDF export file"
206
- msgstr ""
207
 
208
- msgid "Portrait"
209
- msgstr ""
210
 
211
- msgid "Landscape"
212
- msgstr ""
213
 
214
- msgid "Export Logo"
 
 
215
  msgstr ""
 
 
216
 
217
  msgid "Automticaly appends selected logo for output pdf or printing"
218
- msgstr ""
219
-
220
- msgid "Logo Position"
221
- msgstr ""
222
-
223
- msgid "Above table"
224
- msgstr ""
225
 
226
- msgid "Below table"
227
- msgstr ""
228
 
229
- msgid "Logo Alignment"
230
- msgstr ""
231
 
232
- msgid "Left"
233
- msgstr ""
234
 
235
- msgid "Center"
236
- msgstr ""
237
 
238
- msgid "Right"
239
- msgstr ""
240
 
241
- msgid "Export Data to the File"
242
- msgstr "Tabloyu dışarı aktar"
243
 
244
- msgid "File Type"
245
- msgstr "Dosya uzantı tipi"
246
 
247
- msgid "Failed to import selected file: Wrong spreadsheet id or url"
248
- msgstr ""
249
 
250
- msgid "Failed to import data from the uploaded file"
251
- msgstr "Yüklenen dosyadan içeriye veri aktarma başarısız oldu."
252
 
253
- msgid "Import error"
254
- msgstr "İçeri aktarma hatası"
255
 
256
- msgid "Failed to import selected file"
257
- msgstr "Seçilmiş dosya içeriye aktarılamadı."
258
 
259
- msgid "Automatically import from Google Tables"
260
- msgstr ""
261
 
262
- msgid "Link from Google Tables"
263
- msgstr ""
264
 
265
- msgid "Import Data to the Table"
266
- msgstr "Tabloya aktar"
267
 
268
- msgid "Import Settings"
269
- msgstr "Ayarları içeri aktar"
270
 
271
- msgid "Delimiter"
272
- msgstr "Ayırıcı"
273
 
274
- msgid "Google Spreadsheet Url"
275
- msgstr "Google Spreadsheet Url"
276
 
277
  msgid ""
278
- "Important! Please, check the sharing settings of your spreadsheet: it must "
279
- "be accessed to edit for everyone who has link. In other case the data will "
280
- "not import to table."
281
  msgstr ""
 
 
 
282
 
283
- msgid "Append to existing table data"
284
- msgstr ""
285
 
286
- msgid "Failed to upload selected file"
287
- msgstr "Seçilen dosya yüklenemedi."
 
 
 
 
 
 
288
 
289
- msgid "Activate License"
290
- msgstr "Lisansı aktif hale getir"
291
 
292
- msgid "Renew License"
293
- msgstr "Lisansı yenile"
294
 
295
- msgid "Slider by Supsystic"
296
- msgstr "Supsystic'ten Slider"
297
 
298
- msgid ""
299
- "Congratulations! You have successfully installed and activated PRO version "
300
- "of %s plugin."
301
- msgstr ""
302
- "Tebrikler! %s Eklentisinin PRO sürümünü başarılı bir şekilde yüklediniz."
303
 
304
- #, fuzzy
305
- msgid "Your premium support is expired in %s days"
306
- msgstr "Premium destek süreniz %s gün sonra bitecek."
307
 
308
- msgid "You will not be able to update your pro version with expired license"
309
- msgstr "PRO sürümünüzü süresi geçmiş lisans ile güncelleyemezsiniz."
310
 
311
- msgid "Activate"
312
- msgstr "Aktifleştir"
313
 
314
- msgid "Save"
315
- msgstr "Kaydet"
316
 
317
- msgid "Failed to save table rows: %s"
318
- msgstr ""
319
 
320
- msgid "Save Editable Fields"
321
- msgstr ""
322
 
323
- msgid "Allows to save data to the table through editable fields."
324
- msgstr ""
325
 
326
- msgid "Use Editable Fields for Logged In Users Only"
327
- msgstr ""
328
 
329
- msgid "Allows to use editable fields only for logged in users."
330
- msgstr ""
331
 
332
- msgid "Use Editable Fields for Current Roles"
333
- msgstr ""
334
 
335
- msgid ""
336
- "Allows to use editable fields only for users with selected roles. If there "
337
- "are no chosen roles - all logged in users will have ability to use the "
338
- "editable fields."
339
- msgstr ""
340
 
341
- msgid "Select roles"
342
- msgstr ""
343
 
344
- msgid "Enable Table History"
345
- msgstr ""
346
 
347
- msgid "Select User to display its table"
348
- msgstr ""
349
 
350
- msgid ""
351
- "Note that the table may look a little different depending on your theme "
352
- "style."
353
- msgstr "Tema stilinize göre tablonuzun görünümünde farklılıklar olabilir."
354
 
355
- msgid "Add editable field"
356
- msgstr ""
357
 
358
- msgid "Save as"
359
- msgstr "Farklı kaydet"
360
 
361
- msgid "Diagrams"
362
- msgstr "Diagramlar"
363
 
364
- msgid "Get PRO"
365
- msgstr "PRO Sürümü alın"
366
 
367
- msgid "Popup Plugin"
368
- msgstr ""
369
 
370
  msgid ""
371
- "The Best WordPress PopUp option plugin to help you gain more subscribers, "
372
- "social followers or advertisement. Responsive pop-ups with friendly options."
373
  msgstr ""
 
 
374
 
375
- msgid "Slider Plugin"
376
- msgstr ""
377
 
378
- msgid ""
379
- "Creating slideshows with Slider plugin is fast and easy. Simply select "
380
- "images from your WordPress Media Library, Flickr, Instagram or Facebook, set "
381
- "slide captions, links and SEO fields all from one page."
382
- msgstr ""
383
 
384
- msgid "Photo Gallery Plugin"
385
- msgstr ""
386
 
387
- msgid ""
388
- "Photo Gallery Plugin with a great number of layouts will help you to create "
389
- "quality respectable portfolios and image galleries."
390
- msgstr ""
391
 
392
- msgid "Data Tables Generator"
393
- msgstr ""
394
 
395
- msgid ""
396
- "Create and manage beautiful data tables with custom design. No HTML "
397
- "knowledge is required."
398
- msgstr ""
399
 
400
- msgid "Social Share Buttons"
401
- msgstr ""
402
 
403
- msgid ""
404
- "Social share buttons to increase social traffic and popularity. Social "
405
- "sharing to Facebook, Twitter and other social networks."
406
- msgstr ""
407
 
408
- msgid "Live Chat Plugin"
409
- msgstr ""
 
 
 
410
 
411
  msgid ""
412
- "Be closer to your visitors and customers with Live Chat Support by "
413
- "Supsystic. Help you visitors, support them in real-time with exceptional "
414
- "Live Chat WordPress plugin by Supsystic."
415
  msgstr ""
 
 
416
 
417
- msgid "Pricing Table"
418
- msgstr ""
419
 
420
- msgid ""
421
- "It’s never been so easy to create and manage pricing and comparison tables "
422
- "with table builder. Any element of the table can be customise with mouse "
423
- "click."
424
- msgstr ""
 
 
 
425
 
426
  msgid "Coming Soon Plugin"
427
- msgstr ""
428
 
429
  msgid ""
430
  "Coming soon page with drag-and-drop builder or under construction | "
431
  "maintenance mode to notify visitors and collects emails."
432
  msgstr ""
 
 
433
 
434
- msgid "Backup Plugin"
435
- msgstr ""
436
 
437
- msgid ""
438
- "Backup and Restore WordPress Plugin by Supsystic provides quick and "
439
- "unhitched DropBox, FTP, Amazon S3, Google Drive backup for your WordPress "
440
- "website."
441
- msgstr ""
442
 
443
- msgid "Google Maps Easy"
444
- msgstr ""
445
 
446
  msgid ""
447
- "Display custom Google Maps. Set markers and locations with text, images, "
448
- "categories and links. Customize google map in a simple and intuitive way."
449
- msgstr ""
450
-
451
- msgid "Digital Publication Plugin"
452
  msgstr ""
 
453
 
454
  msgid ""
455
- "Digital Publication WordPress Plugin by Supsystic for Magazines, Catalogs, "
456
- "Portfolios. Convert images, posts, PDF to the page flip book."
457
  msgstr ""
 
 
458
 
459
  msgid "Contact Form Plugin"
460
- msgstr ""
461
 
462
- msgid ""
463
- "One of the best plugin for creating Contact Forms on your WordPress site. "
464
- "Changeable fonts, backgrounds, an option for adding fields etc."
465
- msgstr ""
466
 
467
- msgid "Newsletter Plugin"
468
- msgstr ""
469
 
470
- msgid ""
471
- "Supsystic Newsletter plugin for automatic mailing of your letters. You will "
472
- "have no need to control it or send them manually. No coding, hard skills or "
473
- "long hours of customizing are required."
474
- msgstr ""
475
 
476
- msgid "Membership by Supsystic"
 
 
 
 
 
477
  msgstr ""
 
 
478
 
479
  msgid ""
480
  "Create online membership community with custom user profiles, roles, "
481
  "FrontEnd registration and login. Members Directory, activity, groups, "
482
  "messages."
483
  msgstr ""
 
 
 
484
 
485
- msgid "Your message successfully send. We contact you soon."
486
- msgstr ""
487
 
488
- msgid "No detected"
489
- msgstr ""
490
 
491
- msgid "Step-by-step Tutorial"
 
 
 
492
  msgstr ""
 
 
 
 
493
 
494
- msgid "Begin Step-by-step Tutorial"
495
- msgstr ""
496
 
497
- msgid "Name"
498
- msgstr "Adınız"
499
 
500
- msgid "Email"
501
- msgstr "E-posta"
502
 
503
- msgid "Website"
504
- msgstr "İnternet Sitesi"
505
 
506
- msgid "Subject"
507
- msgstr "Konu"
508
 
509
- msgid "Topic"
510
- msgstr "Başlık"
511
 
512
- msgid "Plugin options"
513
- msgstr "Eklenti ayarları"
514
 
515
- msgid "Report a bug"
516
- msgstr "Hata bildir"
517
 
518
- msgid "Require a new functionallity"
519
- msgstr "Yeni özellik talep et"
520
 
521
- msgid "Other"
522
- msgstr "Diğer"
523
 
524
- msgid "Message"
525
- msgstr "Haber"
526
 
527
- msgid "Hello Supsystic Team!"
528
- msgstr "Merhaba Supsystic Takımı!"
529
 
530
- msgid ""
531
- "Some errors occurred while sending mail please send your message trough this "
532
- "contact form:"
533
- msgstr ""
534
 
535
- msgid "Next"
536
- msgstr ""
537
 
538
- msgid "Close Tutorial"
539
- msgstr ""
540
 
541
- msgid "Welcome to Data Tables plugin by Supsystic!"
542
- msgstr ""
543
 
544
  msgid ""
545
- "Thank you for choosing our Data Tables plugin. Just click here to start "
546
- "using it - and we will show you it's possibilities and powerfull features."
547
  msgstr ""
 
 
 
548
 
549
- msgid "Hello! This is the Data Tables by Supsystic"
550
- msgstr ""
551
 
552
  msgid ""
553
- "Thank you for choosing our Data Tables plugin. Let’s make a quick tour "
554
- "through features and main options of the plugin. Just click “Next” button."
555
  msgstr ""
 
 
 
556
 
557
- msgid "Create your first table"
558
- msgstr ""
559
 
560
- msgid ""
561
- "Click on the button “Add new table” and see the first form, which you need "
562
- "to fill in. A very simple step!"
563
- msgstr ""
564
 
565
- msgid "Enter the name and create Data Table"
566
- msgstr ""
 
 
 
 
 
 
 
 
 
567
 
568
  msgid ""
569
- "Fill the table title and choose the number of columns and rows. Don’t worry, "
570
- "you will be able to change it (add or delete some) later!"
571
  msgstr ""
 
 
 
 
 
572
 
573
  msgid ""
574
- "Main Settings of your first table. Here you can see main settings which are "
575
- "conected with languages, table elements, styling and other different editors "
576
- "settings. Generally it’s a tab where you can edit the visual part of the "
577
- "whole table, switch on/off the responsive mode, set pagination etc."
578
  msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
579
 
580
  msgid "Editor"
581
  msgstr "Düzenleyici"
582
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
583
  msgid ""
584
- "The most important part of settings - Editor. Here you can fill all the "
585
- "cells of your table, add some colors, play with fonts and sizes. This insert "
586
- "also allows you to change the alignment of your font, add formats (percents, "
587
- "currency), images and links to make your table more visual attraction."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
588
  msgstr ""
 
 
589
 
590
- msgid "Preview"
591
- msgstr "Ön izleme"
 
 
 
 
 
 
592
 
593
  msgid ""
594
- "Preview insert for your comfort. Before updating the table on your page - "
595
- "you can see the result of your efforts and changes, look at it and enjoy the "
596
- "final outcome."
597
  msgstr ""
 
 
598
 
599
- msgid "CSS Editor"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
600
  msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
601
 
602
  msgid ""
603
- "In case you have special or at least, basic knowledge of CSS code - you can "
604
- "easily change the table here. Just make sure that you know, what you are "
605
- "doing and you will not destroy the table."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
606
  msgstr ""
 
 
 
 
 
607
 
608
  msgid ""
609
- "Diagrams - this is a Pro feature of our plugin, which can help you to follow "
610
- "the statistics of your table. Several types for every taste and any wishes."
611
  msgstr ""
 
612
 
613
- msgid "Import/Export"
 
 
614
  msgstr ""
 
 
615
 
616
  msgid ""
617
- "With these two buttons in our Pro version you can Import any table of csv "
618
- "format and Export the whole table, which you have done."
 
619
  msgstr ""
 
 
 
620
 
621
- msgid "Well done!"
 
 
 
 
 
 
 
 
 
 
622
  msgstr ""
 
 
 
 
623
 
624
  msgid ""
625
- "<b>Upgrading</b> <br>Once you have purchased Premium version of plugin - "
626
- "you’ll have to enter license key (you can find it in your personal account "
627
- "on our site). Go to the License tab and enter your email and license key. "
628
- "Once you have activated your PRO license - you can use all its advanced "
629
- "options. <br><br>That’s all. From this moment you can use your Data Table "
630
- "without any doubt. But if you still have some question - do not hesitate to "
631
- "contact us through our <a href=\"https://supsystic.com/contact-us/"
632
- "\">internal support</a> or on our <a href=\"http://supsystic.com/forum/"
633
- "datatable-plugin/\">Supsystic Forum.</a> Besides you can always describe "
634
- "your questions on <a href=\"https://wordpress.org/support/plugin/data-tables-"
635
- "generator-by-supsystic\">WordPress Ultimate Forum.</a> <br><br><b>Enjoy this "
636
- "plugin?</b> <br>It will be nice if you`ll help us and boost plugin with <a "
637
- "href=\"https://wordpress.org/support/view/plugin-reviews/data-tables-"
638
- "generator-by-supsystic?rate=5#postform/\">Five Stars rating on WordPress.org."
639
- "</a> <br><br>We hope that you like our Data Table plugin and wish you all "
640
- "the best! Good luck!"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
641
  msgstr ""
 
 
 
 
642
 
643
- msgid "Welcome to our plugin"
 
 
644
  msgstr ""
 
 
645
 
646
- msgid "by Supsystic!"
 
 
 
647
  msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
648
 
649
  msgid ""
650
- "We are trying to make your using of our plugin maximum comfortable and easy. "
651
- "So we find it like the best way to tell you about some options and features "
652
- "of this plugin."
653
  msgstr ""
 
 
 
654
 
655
- msgid "A small guide for the first-time user"
 
 
 
656
  msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
657
 
658
  msgid ""
659
- "Actually, Data Table plugin is very simple and has a lot of different "
660
- "options at the same time. That’s why when you close this article I will show "
661
- "you the main of them, but the very detailed one you can find on our site. I "
662
- "hope that you will have no questions after even this small guide. For the "
663
- "first time we will help you to install and create your first table, but if "
664
- "you need help - contact us through the internal support"
665
  msgstr ""
 
 
 
666
 
667
- msgid "Support"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
668
  msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
669
 
670
  msgid ""
671
- "We really like what we do and feel responsibility for our “child”. "
672
- "Constantly we are trying to change something or update the new features, but "
673
- "sometimes you may have a situation when you need help or have a problem. We "
674
- "can offer you two kinds of help: "
675
  msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
676
 
677
  msgid ""
678
- "<a href=\"//supsystic.com/forum/datatable-plugin/\" target=\"_blank\"> "
679
- "Contact us </a> through the Forum on our site - if you have some question, "
680
- "offer or wish."
 
681
  msgstr ""
 
 
 
 
 
 
 
682
 
683
  msgid ""
684
- "If, unfortunately, you have some problem - we are ready to help you in our "
685
- "<a href=\"//supsystic.com/contact-us/\" target=\"_blank\">internal support.</"
686
- "a>"
687
  msgstr ""
 
 
688
 
689
- msgid "Feel free to contact us and don’t worry, everything gonna be ok!"
 
 
 
 
690
  msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
691
 
692
- msgid "Video Tutorial"
693
- msgstr ""
694
 
695
- msgid "Frequently Asked Questions"
696
- msgstr ""
697
 
698
- msgid "Make data table responsive"
699
- msgstr ""
700
 
701
- msgid ""
702
- "I need to have line breaks/spaces between the paragraphs within the cells."
703
- msgstr ""
704
 
705
- msgid "How to use formulas in the table?"
706
- msgstr ""
707
 
708
- msgid "Go to Editor of Data Table."
709
- msgstr ""
710
 
711
- msgid ""
712
- "Select a cell and start typing. In a cell, type an equal sign “=” to start "
713
- "the formula."
714
- msgstr ""
715
 
716
- msgid "Fill in the rest of the formula."
 
 
717
  msgstr ""
 
 
718
 
719
- msgid "Save the changes of table."
720
- msgstr ""
721
 
722
- msgid "Check the result of formula in the table on your site."
723
- msgstr ""
724
 
725
  msgid ""
726
- "Learn more about how to do this <a href=\"//supsystic.com/how-to-use-tables/"
727
- "\" target=\"_blank\">here</a>."
728
  msgstr ""
 
 
729
 
730
- msgid "Check all other FAQs"
731
- msgstr ""
732
 
733
- msgid "Roles"
734
- msgstr ""
735
 
736
- msgid "Role for users who can use plugin. Administrator is included by default"
737
- msgstr ""
738
 
739
- msgid "PRO option"
740
- msgstr "PRO Ayarı"
741
 
742
- msgid "Select avalilable roles to use tables"
 
 
 
743
  msgstr ""
 
 
 
744
 
745
- msgid "Can't decode table rows from JSON."
746
- msgstr "JSON'dan gelen tablo satırları çözülemedi."
747
-
748
- msgid "Can't decode table meta from JSON."
749
- msgstr "JSON'dan gelen tablo metası çözülemedi."
750
 
751
- msgid "Failed to save table meta data: %s"
752
- msgstr "%s tablosunun meta verisi kaydedilemedi."
753
 
754
- msgid "The table with ID %d not exists."
755
- msgstr "%d ID nolu tablo mevcut değil."
756
 
757
- msgid "No value"
758
- msgstr ""
759
 
760
- msgid ""
761
- "Mandatory attribute \"id\" is not specified. ' . 'Shortcode usage example: "
762
- "[%s id=\"{table_id}\"]"
763
- msgstr ""
764
 
765
- msgid "There are not all shortcode's attributes specified. Usage example"
766
- msgstr ""
767
 
768
- msgid "Add table"
769
- msgstr "Tablo ekle"
770
 
771
- msgid "Title"
772
- msgstr "Başlık"
773
 
774
- msgid "Created"
775
- msgstr "Oluşturma Tarihi"
776
 
777
- msgid "Shortcode"
778
- msgstr "Kısakod"
779
 
780
- msgid "PHP"
781
- msgstr "PHP Kodu"
782
 
783
- msgid "Actions"
784
- msgstr "Eylemler"
785
 
786
- msgid "Edit table \"%s\""
787
- msgstr "\"%s\" tablosunu değiştir"
788
 
789
- msgid "Table History"
790
- msgstr ""
791
 
792
- msgid "Clone"
793
- msgstr ""
794
 
795
- msgid "Export available only in PRO version."
796
- msgstr "Dışarı aktarma sadece PRO sürümde kullanılabilir"
797
 
798
- msgid "Export"
799
- msgstr "Dışarı aktar"
800
 
801
- msgid "Import available only in PRO version."
802
- msgstr "İçeri aktarma sadece PRO sürümde kullanılabilir"
803
 
804
- msgid "Import"
805
- msgstr "İçeri aktar"
806
 
807
- msgid "Clear"
808
  msgstr ""
 
 
809
 
810
- msgid "Delete"
811
- msgstr "Sil"
812
 
813
- msgid "Click to rename the table and hit [Enter]"
814
- msgstr "Tablo adını değiştirmek için tıklayın ve sonrasında [Enter] basın."
815
 
816
- msgid "CSS"
817
- msgstr "CSS"
818
 
819
- msgid "Main"
820
- msgstr ""
821
 
822
- msgid "Features"
823
- msgstr "Özellikler"
824
 
825
- msgid "Design"
826
- msgstr ""
827
 
828
- msgid "Language and Text"
829
- msgstr ""
830
 
831
- msgid "Table Elements"
832
- msgstr "Tablo elementleri"
833
 
834
- msgid "Caption"
835
- msgstr "Resim yazısı"
836
 
837
- msgid "Description"
838
- msgstr ""
839
 
840
- msgid "Description Text"
841
- msgstr ""
842
 
843
- msgid "Header"
844
- msgstr "Sayfa üstbaşlığı"
845
 
846
- msgid "Count of Header Rows"
847
- msgstr ""
848
 
849
- msgid "Count of table rows, which will be moved to header."
850
- msgstr ""
851
 
852
- msgid "Footer"
853
- msgstr "Sayfa altlığı"
854
 
855
- msgid "Fixed Header"
856
- msgstr ""
857
 
858
- msgid ""
859
- "Allows to fix the table's header during table scrolling. Important! Header "
860
- "option must be enabled for using this feature. Also you need to set Fixed "
861
- "Table Height to create a vertical scroll at the table. To see the work of "
862
- "this feature you should not use such Responsive Modes as Standard and "
863
- "Automatic columns hiding."
864
- msgstr ""
865
 
866
- msgid "Fixed Footer"
867
- msgstr ""
868
 
869
- msgid ""
870
- "Allows to fix the table's footer during table scrolling. Important! Footer "
871
- "option must be enabled for using this feature. Also you need to set Fixed "
872
- "Table Height to create a vertical scroll at the table. To see the work of "
873
- "this feature you should not use such Responsive Modes as Standard and "
874
- "Automatic columns hiding."
875
- msgstr ""
876
 
877
- msgid "Fixed Table Height"
878
- msgstr ""
879
 
880
- msgid ""
881
- "Fixed table height in px. This value must be less than the original table "
882
- "height to create a vertical scroll, otherwise you will not see that the "
883
- "fixed header / footer exists."
884
- msgstr ""
885
 
886
- msgid "Fixed Columns"
887
- msgstr ""
888
 
889
  msgid ""
890
- "Allows to fix columns during table scrolling. Important! The fixing of "
891
- "columns suggests that the table will have a horisontal scroll type of "
892
- "responsive mode, otherwise you will not see that the fixed columns exist. So "
893
- "this feature is a kind of responsive mode on its own and will not work with "
894
- "such Responsive Modes as Standard and Automatic columns hiding."
895
- msgstr ""
896
-
897
- msgid "Left Columns Count"
898
  msgstr ""
 
 
899
 
900
- msgid "Number of column to fix by left side of table."
901
- msgstr ""
902
 
903
- msgid "Right Columns Count"
904
- msgstr ""
905
 
906
- msgid "Number of column to fix by right side of table."
907
- msgstr ""
908
 
909
- msgid "Auto Index"
910
- msgstr "Otomatik Index"
911
 
912
- msgid "Data Formats"
913
- msgstr ""
914
 
915
- msgid "Number Formatting"
916
- msgstr ""
917
 
918
- msgid "Set format of all numbers in the table"
919
- msgstr ""
920
 
921
- msgid "Number"
 
 
 
922
  msgstr ""
 
 
 
923
 
924
- msgid "Set output format for numbers e.g. 1,000.00, 1.00"
 
 
 
925
  msgstr ""
 
 
926
 
927
- msgid "Currency"
 
 
928
  msgstr ""
 
 
929
 
930
- msgid "Set output format for currencies e.g ($ 1,000.00, € 1.00)"
931
- msgstr ""
932
 
933
- msgid "Percent"
 
 
934
  msgstr ""
 
 
935
 
936
- msgid "Set output format for percent numbers e.g (0.00%, 1%)"
 
 
 
937
  msgstr ""
 
 
 
938
 
939
- msgid "Date"
940
- msgstr ""
 
 
 
 
 
 
 
 
 
 
941
 
942
- msgid "Set output format for date e.g (YYYY-MM-DD, MM.DD.YYYY)"
 
 
 
943
  msgstr ""
 
 
 
944
 
945
- msgid "Sorting"
946
- msgstr "Sıralama"
947
-
948
- msgid "Sorting Order"
949
- msgstr "Sıralama Yönü"
950
-
951
- msgid "Ascending"
952
- msgstr "Küçükten büyüğe"
953
-
954
- msgid "Descending"
955
- msgstr "Büyükten küçüğe"
956
-
957
- msgid "Sorting Column"
958
- msgstr "Sıralama Sütunu"
959
-
960
- msgid "Number of column to apply sort order."
961
- msgstr "Sıralama için kullanılacak sütunun sayısı."
962
-
963
- msgid "Pagination"
964
- msgstr "Sayfalandırma"
965
-
966
- msgid "Pagination menu length"
967
- msgstr "Sayfalandırma menü uzunluğu"
968
 
969
- msgid "Pagination Size"
 
 
 
970
  msgstr ""
 
 
 
971
 
972
- msgid "Large"
973
- msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
974
 
975
- msgid "Medium"
 
 
976
  msgstr ""
 
 
977
 
978
- msgid "Small"
 
 
979
  msgstr ""
 
 
980
 
981
- msgid "Searching"
982
- msgstr "Arama"
983
-
984
- msgid "Show only search result"
985
  msgstr ""
 
 
986
 
987
- msgid "Table is empty by default and shows data only if search has a result."
988
- msgstr ""
989
 
990
- msgid "Search by hidden fields"
991
- msgstr ""
992
 
993
- msgid "Strict matching"
994
- msgstr ""
995
 
996
- msgid "Display only entries with matching characters in the beginning of words"
997
- msgstr ""
998
 
999
- msgid "Minimum characters"
1000
- msgstr ""
1001
 
1002
- msgid "Minimum search field characters to start search"
1003
- msgstr ""
1004
 
1005
- msgid "Show empty table"
1006
- msgstr ""
1007
 
1008
- msgid "Show empty table, until you have entered the data to search field."
1009
- msgstr ""
1010
 
1011
- msgid "Disallow Indexing"
1012
- msgstr "Indekslemeye izin verme"
1013
 
1014
- msgid "Disable indexing table for search bots"
1015
- msgstr "Index tablosunu arama botları için devreden çıkarın."
1016
 
1017
- msgid "Execute JS Script After Table Is Loaded"
1018
- msgstr ""
1019
 
1020
- msgid "Allows to execute js script after table is loaded."
1021
- msgstr ""
1022
 
1023
- msgid "Paste script code here"
1024
- msgstr ""
1025
 
1026
- msgid "Auto Width"
1027
- msgstr "Otomatik genişlik"
1028
 
1029
  msgid ""
1030
- "Calculate the columns width on frontend automatically or depending on the "
1031
- "columns width on the Editor Tab."
1032
  msgstr ""
 
 
1033
 
1034
- msgid "Compact Table"
1035
- msgstr "Kompakt"
 
 
 
 
1036
 
1037
- msgid "Reduce the amount of white-space."
1038
- msgstr "Boşlukları azaltın"
1039
 
1040
- msgid "Disable Wrapping"
1041
- msgstr "Kaydırmayı devre dışı bırakın"
1042
 
1043
- msgid ""
1044
- "Disable wrapping of content in the table, so all text in the cells is on a "
1045
- "single line."
1046
- msgstr ""
1047
- "Tabloda veride kaydırmayı devreden çıkarın, böylece bir hücrede yer alan tüm "
1048
- "veri tek satırda yer alır."
1049
 
1050
- msgid "Paragraph Mode"
1051
- msgstr ""
1052
 
1053
- msgid ""
1054
- "This mode allows you to separate the content into paragraphs. To move to a "
1055
- "new line in the cell - please press CTRL + Enter."
1056
- msgstr ""
1057
 
1058
- msgid "Responsive Mode"
1059
- msgstr ""
1060
 
1061
  msgid ""
1062
  "Standard Responsive mode - in this mode if table content doesn't fit all "
1063
  "columns become under each other with one cell per row"
1064
  msgstr ""
 
 
1065
 
1066
- msgid ""
1067
- "Automatic column hiding - in this mode table columns will collapse from "
1068
- "right to left if content does not fit to parent container width"
1069
- msgstr ""
1070
 
1071
- msgid ""
1072
- "Horizontal scroll - in this mode scroll bar will be added if table overflows "
1073
- "parent container width"
1074
- msgstr ""
1075
 
1076
- msgid "Disable Responsivity - default table fluid layout"
1077
- msgstr ""
1078
 
1079
- msgid "Standard Responsive mode"
1080
- msgstr ""
1081
 
1082
- msgid "Automatic column hiding"
 
 
 
1083
  msgstr ""
 
 
 
 
1084
 
1085
- msgid "Horizontal scroll"
1086
- msgstr ""
1087
 
1088
- msgid "Disable Responsivity"
1089
- msgstr ""
 
 
 
1090
 
1091
  msgid "Table Information"
1092
- msgstr "Bilgi"
1093
 
1094
- msgid "Table information display field. %s"
1095
- msgstr "Tablo bilgisi gösterme alanı. %s"
1096
 
1097
- msgid "Borders"
1098
- msgstr "Kenarlar"
1099
 
1100
- msgid ""
1101
- "Cell - adds border around all four sides of each cell, Row - adds border "
1102
- "only over and under each row. (i.e. only for the rows)."
1103
- msgstr ""
1104
- "Hücre - her hücrenin dört kenarına kenar çizgisi ekler, Satır - sadece her "
1105
- "satırın üstüne ve altına kenar çizgisi ekler. (ör. sadece satırlar için)"
1106
 
1107
- msgid "Cell"
1108
- msgstr "Hücre"
1109
 
1110
- msgid "Row"
1111
- msgstr "Satır"
1112
 
1113
- msgid "None"
1114
- msgstr ""
1115
 
1116
- msgid "Row Striping"
1117
- msgstr "Satır şeritleme"
1118
 
1119
- msgid "Add automatic highlight of table rows for odd and even rows."
1120
- msgstr ""
1121
 
1122
- msgid "Highlighting by Mouseover"
1123
- msgstr "Renklendirme"
1124
 
1125
- msgid "Row highlighting on mouse over."
1126
- msgstr "Üzerine gelindiğinde satırın belirtilmesi"
1127
 
1128
- msgid "Highlight the Order Column"
1129
- msgstr "Hizalama yapılan sütunu renklendir"
1130
 
1131
- msgid "Highlight the column that the table data is currently ordered on."
 
 
1132
  msgstr ""
 
 
 
1133
 
1134
- msgid "Overwrite Table Text"
1135
- msgstr "Tablo verisinin üstüne yaz"
1136
-
1137
- msgid "No data available in table"
1138
  msgstr ""
 
 
 
1139
 
1140
- msgid "Empty table"
 
 
1141
  msgstr ""
 
 
1142
 
1143
- msgid "Showing _START_ to _END_ of _TOTAL_ entries"
 
 
 
 
1144
  msgstr ""
 
 
 
 
 
1145
 
1146
- msgid "Table info text"
1147
- msgstr ""
1148
 
1149
- msgid "Showing 0 to 0 of 0 entries"
1150
- msgstr ""
1151
 
1152
- msgid "Empty info text"
1153
- msgstr ""
1154
 
1155
- msgid "(filtered from _MAX_ total entries)"
 
 
 
1156
  msgstr ""
 
 
 
1157
 
1158
- msgid "Filtered info text"
 
 
1159
  msgstr ""
 
 
1160
 
1161
- msgid "Show _MENU_ entries"
1162
- msgstr ""
1163
 
1164
- msgid "Length text"
1165
- msgstr ""
1166
 
1167
- msgid "Search:"
1168
- msgstr ""
1169
 
1170
- msgid "Search label"
1171
- msgstr ""
1172
 
1173
- msgid "No matching records are found"
1174
- msgstr ""
1175
 
1176
- msgid "Zero records"
1177
- msgstr ""
1178
 
1179
- msgid "Language"
1180
- msgstr "Dil"
1181
 
1182
- msgid "Select language"
1183
- msgstr "Dil seçin"
1184
 
1185
- msgid "Loading your table, please wait..."
1186
- msgstr "Tablonuz yükleniyor, lütfen bekleyiniz..."
1187
 
1188
- msgid "Bold"
1189
- msgstr "Kalın"
1190
 
1191
- msgid "Italic"
1192
- msgstr "Eğik yazı"
1193
 
1194
- msgid "Underline"
 
 
 
 
 
 
1195
  msgstr ""
 
1196
 
1197
- msgid "Text color"
1198
- msgstr "Yazı rengi"
 
 
 
 
1199
 
1200
- msgid "Background color"
1201
- msgstr "Zemin rengi"
1202
 
1203
- msgid "Alignment"
1204
- msgstr "Hizalama"
1205
 
1206
  msgid "Vertical alignment"
1207
  msgstr "Dikey hizalama"
1208
 
1209
- msgid "Word wrapping"
1210
- msgstr "Kelime kaydırma"
1211
 
1212
- msgid "Create a link"
1213
- msgstr "Bağlantı oluştur"
 
 
 
 
 
 
1214
 
1215
- msgid "Insert picture"
1216
- msgstr "Resim ekle"
 
 
 
 
 
 
 
 
1217
 
1218
- msgid "Comment"
1219
- msgstr "Yorum yap"
1220
 
1221
- msgid "Formats"
1222
- msgstr ""
 
 
 
 
 
 
1223
 
1224
  msgid ""
1225
- "Make the cell hidden. <br /><br />To display the table correctly, please, "
1226
- "add hidden property for the whole row or the whole column of table."
 
 
1227
  msgstr ""
 
 
 
 
1228
 
1229
- msgid "Get PRO version"
1230
- msgstr "PRO Sürümü alın"
1231
 
1232
- msgid "Name of Cloned Table"
 
 
1233
  msgstr ""
 
 
1234
 
1235
- msgid "Editable fields"
1236
- msgstr ""
1237
 
1238
- msgid "PRO version"
1239
- msgstr ""
 
 
 
1240
 
1241
  msgid ""
1242
- "Please be advised that this option is available only in %s. You can %s today "
1243
- "and get this and other PRO option for your tables!"
1244
  msgstr ""
 
 
1245
 
1246
- msgid "Insert url"
 
 
1247
  msgstr ""
 
 
1248
 
1249
- msgid "Url"
1250
- msgstr ""
1251
 
1252
- msgid "Link Text"
1253
- msgstr ""
1254
 
1255
- msgid "Open link in a new tab"
1256
- msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1257
 
1258
- #~ msgid "Select file type to export table"
1259
- #~ msgstr "Tabloyu dışarı aktarmak için dosya tipi seçin"
1260
 
1261
  #~ msgid "Clone Table"
1262
  #~ msgstr "Klonla"
11
  "Content-Transfer-Encoding: 8bit\n"
12
  "Translator: Mehmet Koçali <membus@gmail.com>\n"
13
  "X-Poedit-SourceCharset: UTF-8\n"
14
+ "X-Generator: Poedit 2.0.8\n"
15
 
16
+ msgid ""
17
+ "\n"
18
+ " You can set the rows and cols from the selected "
19
+ "range, which is need to be removed from diagram.<br /><br />\n"
20
+ " For example: 1r,2c<br /><br />\n"
21
+ " In this case the first row and the second column will "
22
+ "be removed from diagram.<br /><br />\n"
23
+ " Leave this field blank to use all selected rows and "
24
+ "columns."
25
+ msgstr ""
26
+ "\n"
27
+ " Diyagramdan çıkarılması gereken satır ve sütunları "
28
+ "seçimden ayarlayabilirsiniz.<br /><br />\n"
29
+ " Örneğin: 1r,2c<br /><br />\n"
30
+ " Bu durumda ilk satır ve ikinci sütun diyagramdan "
31
+ "çıkarılır.<br /><br />\n"
32
+ " Tüm seçilen satır ve sütunları kullanmak için bu "
33
+ "alanı boş bırakın."
34
 
35
+ msgid "(filtered from _MAX_ total entries)"
36
+ msgstr "( _MAX_ toplam girişten filitrelendi)"
37
 
38
+ msgid "11x17"
39
+ msgstr "11x17"
40
 
41
+ msgid "2A0"
42
+ msgstr "2A0"
43
 
44
+ msgid "3D Diagram"
45
+ msgstr "3D Diyagram"
46
 
47
+ msgid "4A0"
48
+ msgstr "4A0"
49
 
50
+ msgid "8.5x11"
51
+ msgstr "8.5x11"
52
 
53
+ msgid "8.5x14"
54
+ msgstr "8.5x14"
55
 
56
+ msgid ""
57
+ "<a href=\"//supsystic.com/forum/datatable-plugin/\" target=\"_blank\"> "
58
+ "Contact us </a> through the Forum on our site - if you have some question, "
59
+ "offer or wish."
60
+ msgstr ""
61
+ "Eğer sorularınız, teklifleriniz veya dilekleriniz varsa sitemizde forum "
62
+ "aracılığı ile <a href=“//supsystic.com/forum/datatable-plugin/“ "
63
+ "target=“_blank”> Bize Ulaşın </a>."
64
 
65
+ msgid ""
66
+ "<b>Upgrading</b> <br>Once you have purchased Premium version of plugin - "
67
+ "you’ll have to enter license key (you can find it in your personal account "
68
+ "on our site). Go to the License tab and enter your email and license key. "
69
+ "Once you have activated your PRO license - you can use all its advanced "
70
+ "options. <br><br>That’s all. From this moment you can use your Data Table "
71
+ "without any doubt. But if you still have some question - do not hesitate to "
72
+ "contact us through our <a href=\"https://supsystic.com/contact-us/"
73
+ "\">internal support</a> or on our <a href=\"http://supsystic.com/forum/"
74
+ "datatable-plugin/\">Supsystic Forum.</a> Besides you can always describe "
75
+ "your questions on <a href=\"https://wordpress.org/support/plugin/data-tables-"
76
+ "generator-by-supsystic\">WordPress Ultimate Forum.</a> <br><br><b>Enjoy this "
77
+ "plugin?</b> <br>It will be nice if you`ll help us and boost plugin with <a "
78
+ "href=\"https://wordpress.org/support/view/plugin-reviews/data-tables-"
79
+ "generator-by-supsystic?rate=5#postform/\">Five Stars rating on WordPress.org."
80
+ "</a> <br><br>We hope that you like our Data Table plugin and wish you all "
81
+ "the best! Good luck!"
82
+ msgstr ""
83
+ "<b>Yükseltme</b> <br>Eklentinin Premium sürümünü satın aldığınızda - lisans "
84
+ "anahtarınızı girmelisiniz (sitemizdeki hesabım alanında bulabilirsiniz). "
85
+ "Lisans sekmesine gidin ve e-posta adresi ile lisans anahtarını girin. Pro "
86
+ "lisansı aktive ettiğinizde - gelişmiş ayarları kullanabilirsiniz. "
87
+ "<br><br>Hepsi bu. Bu noktadan sonra Data Table eklentinizi endişe etmeden "
88
+ "kullanabilirsiniz. Fakat yine de sorularınız varsa - <a href=\"https://"
89
+ "supsystic.com/contact-us/\">iç destek</a> veya sitemizin <a href=\"http://"
90
+ "supsystic.com/forum/datatable-plugin/\">Supsystic Forum</a> kısımlarından "
91
+ "bize ulaşmaktan çekinmeyin. Bunun dışında <a href=\"https://wordpress.org/"
92
+ "support/plugin/data-tables-generator-by-supsystic\">WordPress Ultimate "
93
+ "Forum</a>üzerinden her zaman sorularınızı yöneltebilirsiniz. "
94
+ "<br><br><b>Eklentiyi beğendiniz mi?</b> <br> <a href=\"https://wordpress.org/"
95
+ "support/view/plugin-reviews/data-tables-generator-by-supsystic?"
96
+ "rate=5#postform/\">Wordpress.org 'da bize Beş Yıldız vererek</a> eklentiyi "
97
+ "güçlendirmeniz büyük incelik olacaktır <br><br>Umarız bizim Data Table "
98
+ "beğenmişsiniz, en iyi dileklerimizle. İyi şanslar!"
99
 
100
+ msgid "A small guide for the first-time user"
101
+ msgstr "İlk kullanıcı için küçük bir rehber"
102
+
103
+ msgid ""
104
+ "A stacked column chart is a column chart that places related values atop one "
105
+ "another.<br /><br />\n"
106
+ " \"Relative Mode\" formats each value as a fraction "
107
+ "of 1.<br /><br />\n"
108
+ " \"Percent Mode\" formats each value as a percentage "
109
+ "of 100%. "
110
  msgstr ""
111
+ "Yığılmış sütun grafiği birbiri üstünde bulunan ilgili sütun grafikleridir."
112
+ "<br /><br />\n"
113
+ " \"Göreceli Modu\" her bir değeri 1 olarak "
114
+ "biçimlendirir.<br /><br />\n"
115
+ " \"Yüzde Modu\" herbir değeri %100 ün parçası olarak "
116
+ "biçimlendirir. "
117
 
118
+ msgid "A0"
119
+ msgstr "A0"
120
 
121
+ msgid "A1"
122
+ msgstr "A1"
123
 
124
+ msgid "A10"
125
+ msgstr "A10"
126
 
127
+ msgid "A2"
128
+ msgstr "A2"
129
 
130
+ msgid "A3"
131
+ msgstr "A3"
132
 
133
+ msgid "A4"
134
+ msgstr "A4"
135
 
136
+ msgid "A5"
137
+ msgstr "A5"
138
 
139
+ msgid "A6"
140
+ msgstr "A6"
141
 
142
+ msgid "A7"
143
+ msgstr "A7"
144
 
145
+ msgid "A8"
146
+ msgstr "A8"
147
 
148
+ msgid "A9"
149
+ msgstr "A9"
150
 
151
+ msgid "Above table"
152
+ msgstr "Tablonun üstünde"
153
 
154
+ msgid "Above the chart"
155
+ msgstr "Grafiğin üstünde"
156
 
157
+ msgid "Actions"
158
+ msgstr "Eylemler"
159
 
160
+ msgid "Activate"
161
+ msgstr "Aktifleştir"
162
 
163
+ msgid "Activate License"
164
+ msgstr "Lisansı aktif hale getir"
165
 
166
  msgid ""
167
+ "Actually, Data Table plugin is very simple and has a lot of different "
168
+ "options at the same time. That’s why when you close this article I will show "
169
+ "you the main of them, but the very detailed one you can find on our site. I "
170
+ "hope that you will have no questions after even this small guide. For the "
171
+ "first time we will help you to install and create your first table, but if "
172
+ "you need help - contact us through the internal support"
173
  msgstr ""
174
+ "Aslında Data Table eklentisi çok basit ve aynı anda birçok farklı seçeneğe "
175
+ "sahip. İşte bu makaleyi kapattığınızda sana temel unsurları göstereceğim, "
176
+ "fakat ayrıntılı halini sitemizde bulabilirsin. Umarım bu küçük kılavuzdan "
177
+ "sonra hiçbir sorunuz kalmaz. İlk kez, ilk tablonuzu yüklemeniz ve "
178
+ "oluşturmanız konusunda size yardımcı olacağız, ancak yardıma ihtiyacınız "
179
+ "olursa - dahili destek aracılığıyla bize ulaşın"
180
 
181
  msgid ""
182
+ "Add <a href=\"%s\" target=\"_blank\">editable field</a> for selected cells "
183
+ "to edit cell value on frontend. Enjoy the <a href=\"%s\" target=\"_blank"
184
+ "\">practical example</a>."
185
  msgstr ""
186
+ "Kullanıcıların değerlerini değiştirebileceği <a href=\"%s\" target=\"_blank"
187
+ "\">düzenlenebilir hücre</a> ekle. <a href=\"%s\" target=\"_blank\">Pratik "
188
+ "örneğe</a> göz atabilirsin."
189
 
190
+ msgid "Add Fixed Column Width"
191
+ msgstr "Sabit sütun genişliği ekle"
192
 
193
+ msgid "Add Multiple Sorting"
194
+ msgstr "Birden fazla sıralama Ekle"
195
 
196
+ msgid "Add Option"
197
+ msgstr "Seçenek Ekle"
198
 
199
+ msgid "Add automatic highlight for table odd rows"
200
+ msgstr "Tek satırlar için tablo satırlarının otomatik vurgulamasını ekleyin"
201
 
202
+ msgid "Add column on the left"
203
+ msgstr "Sol tarafa sütun ekle"
204
 
205
+ msgid "Add diagram"
206
+ msgstr "Diagram ekle"
207
 
208
+ msgid ""
209
+ "Add dropdown list for highlighted cell to change cell value on frontend."
210
  msgstr ""
211
+ "Kullanıcıların içeriğini değiştirebileceği hücreleri vurgulayan bir aşağı "
212
+ "açılır liste ekle."
213
 
214
+ msgid "Add editable field"
215
+ msgstr "Düzenlenebilir alan ekle"
216
 
217
+ msgid "Add new table"
218
+ msgstr "Yeni tablo ekle"
219
 
220
+ msgid "Add row above"
221
+ msgstr "Üste satır ekle"
222
 
223
+ msgid "Add table"
224
+ msgstr "Tablo ekle"
225
 
226
+ msgid "Align by First Table"
227
+ msgstr "İlk tabloya göre hizala"
228
 
229
+ msgid "Alignment"
230
+ msgstr "Hizalama"
231
 
232
+ msgid "Allow export table to pdf, csv, xls on frontend"
233
+ msgstr "Kullanıcıların tabloyu pdf, csv, xls olarak dışa aktarmasına izin ver"
234
 
235
+ msgid ""
236
+ "Allows to <a href=\"%s\" target=\"_blank\">use frontend fields only for "
237
+ "logged in users</a>. See the next buttons on the editor toolbar:<br />\n"
238
+ " Add editable field<br />\n"
239
+ " Add dropdown list"
240
  msgstr ""
241
+ "Sadece kayıtlı üyeler <a href=\"%s\" target=\"_blank\">düzenlenebilir "
242
+ "hücreleri kullanabilsin</a>. Düzenleyici araç çubuğundaki sonraki düğmelere "
243
+ "bakın;<br />\n"
244
+ " Düzenlebilir alan ekle<br />\n"
245
+ " Aşağı açılır liste ekle"
246
 
247
+ msgid ""
248
+ "Allows to <a href=\"%s\" target=\"_blank\">use frontend fields only for "
249
+ "logged in users</a>. See the next buttons on the editor toolbar:<br />\n"
250
+ " Add editable field<br />\n"
251
+ " Add dropdown list"
252
  msgstr ""
253
+ "Sadece kayıtlı üyeler <a href=\"%s\" target=\"_blank\">düzenlenebilir "
254
+ "hücreleri kullanabilsin</a>. Düzenleyici araç çubuğundaki sonraki düğmelere "
255
+ "bakın;<br />\n"
256
+ " Düzenlenebilir alan ekle<br />\n"
257
+ " Aşağı açılır liste ekle"
258
 
259
+ msgid ""
260
+ "Allows to choose language for the table's labels (pagination, search ets.)"
261
+ msgstr "Tablo etiketleri (sayfalandırma, arama vb) için dil seçmenizi sağlar"
262
 
263
+ msgid "Allows to execute custom javascript code after table is loaded."
264
  msgstr ""
265
+ "Tablo yüklendikten sonra özel javascript kodu yürütmesine olanak sağlar."
266
 
267
+ msgid ""
268
+ "Allows to export table in pdf, csv, xls formats from the front-end. Choose "
269
+ "needed formats"
270
  msgstr ""
271
+ "Kullanıcının tabloyu pdf, csv, xls formatlarında dışa aktarımına izin verir. "
272
+ "Gerekli biçimleri seçin"
273
 
274
+ msgid ""
275
+ "Allows to fix columns during table scrolling. Important! The fixing of "
276
+ "columns suggests that the table will have a horisontal scroll type of "
277
+ "responsive mode, otherwise you will not see that the fixed columns exist. So "
278
+ "this feature is a kind of responsive mode on its own and will not work with "
279
+ "such Responsive Modes as Standard and Automatic columns hiding."
280
  msgstr ""
281
+ "Tablo kaydırma işlemi sırasında sütunları düzeltmeye izin verir. Önemli! "
282
+ "Sütunların sabitlenmesi, tablonun yatay kaydırma tipi bir tepki modu "
283
+ "olacağını düşündürür, aksi halde sabit sütunların var olduğunu göremezsiniz. "
284
+ "Dolayısıyla bu özellik, kendiliğinden bir tür tepki veren moddur ve Standart "
285
+ "ve Otomatik sütunlar gizleme gibi Duyarlı modlarla çalışmaz."
286
 
287
+ msgid ""
288
+ "Allows to fix the table's footer during table scrolling. Important! Footer "
289
+ "option must be enabled for using this feature. Also you need to set Fixed "
290
+ "Table Height to create a vertical scroll at the table. To see the work of "
291
+ "this feature you should not use such Responsive Modes as Standard and "
292
+ "Automatic columns hiding."
293
  msgstr ""
294
+ "Tablo kaydırma işlemi sırasında tablonun altbilgisini düzeltmeye izin verir. "
295
+ "Önemli! Bu özelliği kullanmak için altbilgi seçeneği etkinleştirilmelidir. "
296
+ "Ayrıca tabloda dikey bir kaydırma oluşturmak için Sabit Yükseklik "
297
+ "ayarlamanız gerekir. Bu özelliğin çalışmasını görmek için Standart ve "
298
+ "Otomatik sütunlar gizleme gibi Duyarlı Modları kullanmamalısınız."
299
 
300
+ msgid ""
301
+ "Allows to fix the table's header during table scrolling. Important! Header "
302
+ "option must be enabled for using this feature. Also you need to set Fixed "
303
+ "Table Height to create a vertical scroll for your table. To see the work of "
304
+ "this feature you should not use such Responsive Modes such as Standard and "
305
+ "Automatic columns hiding."
306
  msgstr ""
307
+ "Tablo kaydırma işlemi sırasında tablonun başlığını düzeltmeye izin verir. "
308
+ "Önemli! Bu özelliği kullanmak için başlık seçeneği etkinleştirilmelidir. "
309
+ "Ayrıca tabloda dikey bir kaydırma oluşturmak için Sabit Yükseklik "
310
+ "ayarlamanız gerekir. Bu özelliğin çalışmasını görmek için Standart ve "
311
+ "Otomatik sütunlar gizleme gibi Duyarlı Modları kullanmamalısınız."
312
 
313
+ msgid ""
314
+ "Allows to save data to the table through the frontend fields. See the next "
315
+ "buttons on the editor toolbar:<br />\n"
316
+ " Add editable field<br />\n"
317
+ " Add dropdown list"
318
  msgstr ""
319
+ "Düzenlenebilir alanlar vasıtasıyla tablodaki verileri kaydetmeye izin verir. "
320
+ "Düzenleyici araç çubuğundaki sonraki düğmelere bakın;/>\n"
321
+ " Düzenlebilir alan ekle<br />\n"
322
+ " Aşağı açılır liste ekle"
323
 
324
+ msgid ""
325
+ "Allows to save data to the table through the frontend fields. See the next "
326
+ "buttons on the editor toolbar:<br />\n"
327
+ " Add editable field<br />\n"
328
+ " Add dropdown list"
329
  msgstr ""
330
+ "Düzenlenebilir alanlar vasıtasıyla tablodaki verileri kaydetmeye izin verir. "
331
+ "Düzenleyici araç çubuğundaki sonraki düğmelere bakın;/>\n"
332
+ " Düzenlebilir alan ekle<br />\n"
333
+ " Aşağı açılır liste ekle"
334
 
335
  msgid ""
336
+ "Allows to use editable fields only for users with selected roles. If there "
337
+ "are no chosen roles - all logged in users will have ability to use the "
338
+ "editable fields."
339
  msgstr ""
340
+ "Düzenlenebilir alanları yalnızca seçili rollerdeki kullanıcılar için "
341
+ "kullanmaya izin verir. Seçilen roller yoksa - tüm oturum açmış kullanıcılar "
342
+ "düzenlenebilir alanları kullanma olanağına sahip olacaklardır."
343
 
344
+ msgid "An error has occurred"
345
+ msgstr "Bir hata oluştu"
346
 
347
+ msgid "Append to existing table data"
348
+ msgstr "Mevcut tablo verisine ekle"
349
 
350
+ msgid "Area Chart"
351
+ msgstr "Alan grafiği"
352
 
353
+ msgid "Ascending"
354
+ msgstr "Küçükten büyüğe"
355
 
356
+ msgid "Auto Index"
357
+ msgstr "Otomatik Index"
358
 
359
+ msgid "Auto Table Width"
360
+ msgstr "Otomatik tablo genişliği"
361
 
362
+ msgid "Autoimport from Google Sheet"
363
+ msgstr "Google tablolardan otomatik içe aktar"
364
 
365
+ msgid "Automatic"
366
+ msgstr "Otomatik"
367
 
368
+ msgid "Automatic column hiding"
369
+ msgstr "Otomatik sütun gizleme"
370
 
371
+ msgid ""
372
+ "Automatic column hiding - in this mode table columns will collapse from "
373
+ "right to left if content does not fit to parent container width"
374
  msgstr ""
375
+ "Otomatik sütun gizleme - Bu modda, içerik ana konteynerinin genişliğine "
376
+ "uymuyorsa tablo sütunları sağdan sola doğru daralır"
377
 
378
  msgid "Automticaly appends selected logo for output pdf or printing"
379
+ msgstr "Seçilen logoyu çıktı veya pdf için otomatik ekler"
 
 
 
 
 
 
380
 
381
+ msgid "Axis X Format"
382
+ msgstr "Eksen X formatı"
383
 
384
+ msgid "Axis X Title"
385
+ msgstr "Eksen X Başlığı"
386
 
387
+ msgid "Axis Y Format"
388
+ msgstr "Eksen Y formatı"
389
 
390
+ msgid "Axis Y Title"
391
+ msgstr "Eksen Y Başlığı"
392
 
393
+ msgid "B0"
394
+ msgstr "B0"
395
 
396
+ msgid "B1"
397
+ msgstr "B1"
398
 
399
+ msgid "B10"
400
+ msgstr "B10"
401
 
402
+ msgid "B2"
403
+ msgstr "B2"
404
 
405
+ msgid "B3"
406
+ msgstr "B3"
407
 
408
+ msgid "B4"
409
+ msgstr "B4"
410
 
411
+ msgid "B5"
412
+ msgstr "B5"
413
 
414
+ msgid "B6"
415
+ msgstr "B6"
416
 
417
+ msgid "B7"
418
+ msgstr "B7"
419
 
420
+ msgid "B8"
421
+ msgstr "B8"
422
 
423
+ msgid "B9"
424
+ msgstr "B9"
425
 
426
+ msgid "Background color"
427
+ msgstr "Zemin rengi"
428
 
429
+ msgid "Backup Plugin"
430
+ msgstr "Yedekleme Eklentisi"
431
 
432
  msgid ""
433
+ "Backup and Restore WordPress Plugin by Supsystic provides quick and "
434
+ "unhitched DropBox, FTP, Amazon S3, Google Drive backup for your WordPress "
435
+ "website."
436
  msgstr ""
437
+ "Supsystic tarafından sunulan Yedekleme ve Geri Yükleme WordPress eklentisi, "
438
+ "WordPress web siteniz için hızlı ve dokunulmamış DropBox, FTP, Amazon S3, "
439
+ "Google Drive yedeklemesi sağlar."
440
 
441
+ msgid "Bar Chart"
442
+ msgstr "Grafik çubuğu"
443
 
444
+ msgid ""
445
+ "Be closer to your visitors and customers with Live Chat Support by "
446
+ "Supsystic. Help you visitors, support them in real-time with exceptional "
447
+ "Live Chat WordPress plugin by Supsystic."
448
+ msgstr ""
449
+ "Supsystic’in Canlı Sohbet Desteği ile ziyaretçilerinize ve müşterilerinize "
450
+ "daha yakın olun. Ziyaretçilerinize yardım edin, Supsystic’in sıradışı Canlı "
451
+ "Sohbet WordPress eklentisiyle gerçek zamanlı olarak destekleyin."
452
 
453
+ msgid "Begin Step-by-step Tutorial"
454
+ msgstr "Adım Adım Eğitime Başlayın"
455
 
456
+ msgid "Below table"
457
+ msgstr "Aşağıdaki tablo"
458
 
459
+ msgid "Below the chart"
460
+ msgstr "Aşağıdaki çizelge"
461
 
462
+ msgid "Bold"
463
+ msgstr "Kalın"
 
 
 
464
 
465
+ msgid "Borders"
466
+ msgstr "Kenarlar"
 
467
 
468
+ msgid "Bubble Chart"
469
+ msgstr "Kabarcık Çizelge"
470
 
471
+ msgid "C0"
472
+ msgstr "C0"
473
 
474
+ msgid "C1"
475
+ msgstr "C1"
476
 
477
+ msgid "C10"
478
+ msgstr "C10"
479
 
480
+ msgid "C2"
481
+ msgstr "C2"
482
 
483
+ msgid "C3"
484
+ msgstr "C3"
485
 
486
+ msgid "C4"
487
+ msgstr "C4"
488
 
489
+ msgid "C5"
490
+ msgstr "C5"
491
 
492
+ msgid "C6"
493
+ msgstr "C6"
494
 
495
+ msgid "C7"
496
+ msgstr "C7"
 
 
 
497
 
498
+ msgid "C8"
499
+ msgstr "C8"
500
 
501
+ msgid "C9"
502
+ msgstr "C9"
503
 
504
+ msgid "CSS"
505
+ msgstr "CSS"
506
 
507
+ msgid "CSS Editor"
508
+ msgstr "CSS Düzenleyici"
 
 
509
 
510
+ msgid "Can't decode table meta from JSON."
511
+ msgstr "JSON'dan gelen tablo metası çözülemedi."
512
 
513
+ msgid "Can't decode table rows from JSON."
514
+ msgstr "JSON'dan gelen tablo satırları çözülemedi."
515
 
516
+ msgid "Caption"
517
+ msgstr "Resim yazısı"
518
 
519
+ msgid "Catalog #10 1/2 Envelope"
520
+ msgstr "Katalog #10 1/2 Zarf"
521
 
522
+ msgid "Cell"
523
+ msgstr "Hücre"
524
 
525
  msgid ""
526
+ "Cell - adds border around all four sides of each cell, Row - adds border "
527
+ "only over and under each row. (i.e. only for the rows)."
528
  msgstr ""
529
+ "Hücre - her hücrenin dört kenarına kenar çizgisi ekler, Satır - sadece her "
530
+ "satırın üstüne ve altına kenar çizgisi ekler. (ör. sadece satırlar için)"
531
 
532
+ msgid "Center"
533
+ msgstr "Merkez"
534
 
535
+ msgid "Check all other FAQs"
536
+ msgstr "Diğer tüm SSS’leri kontrol edin"
 
 
 
537
 
538
+ msgid "Check the result of formula in the table on your site."
539
+ msgstr "Sitenizdeki tablodaki formülün sonucunu kontrol edin."
540
 
541
+ msgid "Choose Icon"
542
+ msgstr "Simge Seç"
 
 
543
 
544
+ msgid "Choose color for loader"
545
+ msgstr "Yükleyici için renk seçin"
546
 
547
+ msgid "Choose icon"
548
+ msgstr "Simge Seç"
 
 
549
 
550
+ msgid "Choose icon for loader"
551
+ msgstr "Yükleyici için simge seçin"
552
 
553
+ msgid "Choose the orientation for PDF pages"
554
+ msgstr "PDF dışa aktarma dosyası için sayfa yönlendirmesini seçin"
 
 
555
 
556
+ msgid "Choose the paper size for PDF pages"
557
+ msgstr "PDF sayfalar için kağıt boyutu seçin"
558
+
559
+ msgid "Clear"
560
+ msgstr "Temizle"
561
 
562
  msgid ""
563
+ "Click on the button “Add new table” and see the first form, which you need "
564
+ "to fill in. A very simple step!"
 
565
  msgstr ""
566
+ "“Yeni tablo ekle” düğmesine tıklayın ve doldurmanız gereken ilk formu görün. "
567
+ "Çok basit bir adım!"
568
 
569
+ msgid "Clone"
570
+ msgstr "Klonla"
571
 
572
+ msgid "Close Tutorial"
573
+ msgstr "Eğiticiyi kapat"
574
+
575
+ msgid "Column Chart"
576
+ msgstr "Sütun Grafiği"
577
+
578
+ msgid "Columns"
579
+ msgstr "Sütunlar"
580
 
581
  msgid "Coming Soon Plugin"
582
+ msgstr "Yakında Eklentisi"
583
 
584
  msgid ""
585
  "Coming soon page with drag-and-drop builder or under construction | "
586
  "maintenance mode to notify visitors and collects emails."
587
  msgstr ""
588
+ "Sürükle-bırak yapıcı ile Yakında eklentisi veya yapım aşamasında | Bakımda "
589
+ "modu ile ziyaretçilerinizi bilgilendirebilir ve e-posta toplar."
590
 
591
+ msgid "Comment"
592
+ msgstr "Yorum"
593
 
594
+ msgid "Commerical #10 Envelope"
595
+ msgstr "Ticari # 10 Zarf"
 
 
 
596
 
597
+ msgid "Compact Table"
598
+ msgstr "Kompakt tablo"
599
 
600
  msgid ""
601
+ "Congratulations! You have successfully installed and activated PRO version "
602
+ "of %s plugin."
 
 
 
603
  msgstr ""
604
+ "Tebrikler! %s Eklentisinin PRO sürümünü başarılı bir şekilde yüklediniz."
605
 
606
  msgid ""
607
+ "Congratulations! You have successfully installed and activated PRO version "
608
+ "of ' ~ environment.getMenu().getMenuTitle() ~ ' plugin."
609
  msgstr ""
610
+ "Tebrikler! ' ~ environment.getMenu().getMenuTitle() ~ ' Eklentisinin PRO "
611
+ "sürümünü başarılı bir şekilde kurup etkinleştirdiniz."
612
 
613
  msgid "Contact Form Plugin"
614
+ msgstr "Contact Form Eklentisi"
615
 
616
+ msgid "Count of Footer Rows"
617
+ msgstr "Alt Satır Sayısı"
 
 
618
 
619
+ msgid "Count of Header Rows"
620
+ msgstr "Başlık Satırları Sayısı"
621
 
622
+ msgid "Count of table rows, which will be moved to footer."
623
+ msgstr "Alta taşınacak tablo satırları sayısı."
 
 
 
624
 
625
+ msgid "Count of table rows, which will be moved to header."
626
+ msgstr "Başlığa taşınacak tablo satırlarının sayısı."
627
+
628
+ msgid ""
629
+ "Create and manage beautiful data tables with custom design. No HTML "
630
+ "knowledge is required."
631
  msgstr ""
632
+ "Özel tasarımlı güzel veri tablolarını oluşturun ve yönetin. HTML bilgisi "
633
+ "gerekmez."
634
 
635
  msgid ""
636
  "Create online membership community with custom user profiles, roles, "
637
  "FrontEnd registration and login. Members Directory, activity, groups, "
638
  "messages."
639
  msgstr ""
640
+ "Özel kullanıcı profilleri, roller, FrontEnd kaydı ve oturum açma ile "
641
+ "çevrimiçi üyelik topluluğu oluşturun. Üyeler Dizini, etkinlik, gruplar, "
642
+ "mesajlar."
643
 
644
+ msgid "Create your first table"
645
+ msgstr "İlk tablonuzu oluşturun"
646
 
647
+ msgid "Created"
648
+ msgstr "Oluşturuldu"
649
 
650
+ msgid ""
651
+ "Creating slideshows with Slider plugin is fast and easy. Simply select "
652
+ "images from your WordPress Media Library, Flickr, Instagram or Facebook, set "
653
+ "slide captions, links and SEO fields all from one page."
654
  msgstr ""
655
+ "Slider eklentisi ile slayt gösterileri oluşturmak hızlı ve kolaydır. "
656
+ "WordPress Medya Kütüphanesi, Flickr, Instagram veya Facebook’daki "
657
+ "görüntüleri seçmeniz, slayt başlıklarını, bağlantıları ve SEO alanlarını tek "
658
+ "bir sayfadan ayarlamanız yeterlidir."
659
 
660
+ msgid "Currency"
661
+ msgstr "Para Birimi"
662
 
663
+ msgid "Custom Footer"
664
+ msgstr "Özel Altbilgi"
665
 
666
+ msgid "Data Formats"
667
+ msgstr "Veri Biçimleri"
668
 
669
+ msgid "Data Tables Generator"
670
+ msgstr "Veri Tabloları oluşturucu"
671
 
672
+ msgid "Date"
673
+ msgstr "Tarih"
674
 
675
+ msgid "Decrease the amount of whitespace in the table."
676
+ msgstr "Tablodaki boşluk miktarını azaltın."
677
 
678
+ msgid "Default"
679
+ msgstr "Varsayılan"
680
 
681
+ msgid "Delete"
682
+ msgstr "Sil"
683
 
684
+ msgid "Delimiter"
685
+ msgstr "Ayırıcı"
686
 
687
+ msgid "Descending"
688
+ msgstr "Büyükten küçüğe"
689
 
690
+ msgid "Description"
691
+ msgstr "Açıklama"
692
 
693
+ msgid "Description Text"
694
+ msgstr "Açıklama Metni"
695
 
696
+ msgid "Design"
697
+ msgstr "Tasarım"
 
 
698
 
699
+ msgid "Diagram"
700
+ msgstr "Diyagram"
701
 
702
+ msgid "Diagram Title"
703
+ msgstr "Diyagram Başlığı"
704
 
705
+ msgid "Diagrams"
706
+ msgstr "Diagramlar"
707
 
708
  msgid ""
709
+ "Diagrams - this is a Pro feature of our plugin, which can help you to follow "
710
+ "the statistics of your table. Several types for every taste and any wishes."
711
  msgstr ""
712
+ "Diyagramlar - tablonuzun istatistiklerini izlemenize yardımcı olabilecek "
713
+ "eklentimizin Pro özelliğidir. Her zevke ve herhangi bir istek için bir çok "
714
+ "çeşit."
715
 
716
+ msgid "Digital Publication Plugin"
717
+ msgstr "Dijital Yayın Eklentisi"
718
 
719
  msgid ""
720
+ "Digital Publication WordPress Plugin by Supsystic for Magazines, Catalogs, "
721
+ "Portfolios. Convert images, posts, PDF to the page flip book."
722
  msgstr ""
723
+ "Supsystic Dijital Yayın WordPress Eklentisi, Dergiler, Kataloglar, "
724
+ "Portföyler için. Resimleri, yazıları, PDF dosyasını sayfa çevirme kitabı "
725
+ "haline dönüştürün."
726
 
727
+ msgid "Disable"
728
+ msgstr "Devre Dışı"
729
 
730
+ msgid "Disable Responsivity"
731
+ msgstr "Etkileşimlilik Devre Dışı Bırak"
 
 
732
 
733
+ msgid "Disable Responsivity - default table fluid layout"
734
+ msgstr "Etkileşimlilik Devre Dışı Bırak - varsayılan tablo akış düzeni"
735
+
736
+ msgid "Disable Sorting"
737
+ msgstr "Sıralama Devre Dışı Bırak"
738
+
739
+ msgid "Disable Wrapping"
740
+ msgstr "Kaydırmayı devre dışı bırakın"
741
+
742
+ msgid "Disable indexing table for search bots"
743
+ msgstr "Index tablosunu arama botları için devreden çıkarın"
744
 
745
  msgid ""
746
+ "Disable wrapping of content in the table, so every word in the cells will be "
747
+ "in one single line."
748
  msgstr ""
749
+ "Tabloda veride kaydırmayı devreden çıkarın, böylece bir hücrede yer alan tüm "
750
+ "veri tek hizada yer alır."
751
+
752
+ msgid "Disallow Indexing"
753
+ msgstr "Indekslemeye izin verme"
754
 
755
  msgid ""
756
+ "Display custom Google Maps. Set markers and locations with text, images, "
757
+ "categories and links. Customize google map in a simple and intuitive way."
 
 
758
  msgstr ""
759
+ "Özel Google Haritalar’ı görüntüleyin. İşaretleyicileri ve konumları metin, "
760
+ "resim, kategori ve bağlantılarla ayarlayın. Google haritaları basit ve "
761
+ "sezgisel bir şekilde özelleştirin."
762
+
763
+ msgid "Display only entries with matching characters in the beginning of words"
764
+ msgstr "Yalnızca kelimelerin başında eşleşen karakterleri görüntüleme"
765
+
766
+ msgid "Edit table \"%s\""
767
+ msgstr "Şu tabloyu değiştir \"%s\""
768
+
769
+ msgid "Editable fields"
770
+ msgstr "Düzenlenebilir alanlar"
771
 
772
  msgid "Editor"
773
  msgstr "Düzenleyici"
774
 
775
+ msgid "Editor tab"
776
+ msgstr "Düzenleyici sekmesi"
777
+
778
+ msgid "Email"
779
+ msgstr "E-posta"
780
+
781
+ msgid "Empty info text"
782
+ msgstr "Bilgi metnini boşalt"
783
+
784
+ msgid "Empty table"
785
+ msgstr "Tabloyu boşalt"
786
+
787
+ msgid "Enable"
788
+ msgstr "Etkinleştir"
789
+
790
  msgid ""
791
+ "Enable / disable table loader icon before table will be completely loaded."
792
+ msgstr "Tablo tamamen yükleninceye kadar yükleyici simgesini göster / gizle."
793
+
794
+ msgid "Enable Table History"
795
+ msgstr "Tablo Geçmişini Etkinleştir"
796
+
797
+ msgid "Enter the name and create Data Table"
798
+ msgstr "Adı girin ve Veri Tablosu oluşturun"
799
+
800
+ msgid "Execute JS Script After Table Is Loaded"
801
+ msgstr "Tablo yüklendikten sonra JS Komut Dosyasını Çalıştır"
802
+
803
+ msgid "Executive"
804
+ msgstr "Yöneticisi"
805
+
806
+ msgid "Export"
807
+ msgstr "Dışarı aktar"
808
+
809
+ msgid "Export Data to the File"
810
+ msgstr "Tabloyu dışarı aktar"
811
+
812
+ msgid "Export Logo"
813
+ msgstr "Logoyu Dışa Aktar"
814
+
815
+ msgid "Export Page Orientation"
816
+ msgstr "Sayfa Yönünü Dışa Aktar"
817
+
818
+ msgid "Export Paper Size"
819
+ msgstr "Sayfa boyutunu dışarı aktar"
820
+
821
+ msgid "Export available only in PRO version."
822
+ msgstr "Dışarı aktarma sadece PRO sürümde kullanılabilir."
823
+
824
+ msgid "Export label"
825
+ msgstr "Etiketi Dışarı aktar"
826
+
827
+ msgid "Export table"
828
+ msgstr "Tabloyu Dışarı aktar"
829
+
830
+ msgid "Failed to find diagram %s."
831
+ msgstr "%s isimli diagram bulunamadı."
832
+
833
+ msgid "Failed to find table %s."
834
+ msgstr "%s isimli tablo bulunamadı."
835
+
836
+ msgid "Failed to get table rows: %s"
837
+ msgstr "Şu tablo satırları alınamadı: %s"
838
+
839
+ msgid "Failed to import data from the uploaded file"
840
+ msgstr "Yüklenen dosyadan içeriye veri aktarma başarısız oldu"
841
+
842
+ msgid "Failed to import selected file"
843
+ msgstr "Seçilmiş dosya içeriye aktarılamadı"
844
+
845
+ msgid "Failed to import selected file: Wrong spreadsheet id or url"
846
+ msgstr "Seçili dosya içe aktarılamadı: Yanlış e-tablo kimliği veya URL"
847
+
848
+ msgid "Failed to save table meta data: %s"
849
+ msgstr "%s tablosunun meta verisi kaydedilemedi"
850
+
851
+ msgid "Failed to save table rows: %s"
852
+ msgstr "Şu tablo satırları kaydedilemedi: %s"
853
+
854
+ msgid "Failed to upload selected file"
855
+ msgstr "Seçilen dosya yüklenemedi"
856
+
857
+ msgid "Featured Plugins"
858
+ msgstr "Öne Çıkan Eklentiler"
859
+
860
+ msgid "Features"
861
+ msgstr "Özellikler"
862
+
863
+ msgid "Feel free to contact us and don’t worry, everything gonna be ok!"
864
  msgstr ""
865
+ "Bizimle iletişime geçmekten çekinmeyin ve endişelenmeyin, her şey yoluna "
866
+ "girecektir!"
867
 
868
+ msgid "File Type"
869
+ msgstr "Dosya tipi"
870
+
871
+ msgid "File extension type"
872
+ msgstr "Dosya uzantı tipi"
873
+
874
+ msgid "Fill in the rest of the formula."
875
+ msgstr "Formülün geri kalan kısmını doldurun."
876
 
877
  msgid ""
878
+ "Fill the table title and choose the number of columns and rows. Don’t worry, "
879
+ "you will be able to change it (add or delete some) later!"
 
880
  msgstr ""
881
+ "Tablo başlığını doldurun ve sütun ve satır sayısını seçin. Endişelenme, daha "
882
+ "sonra onu değiştirebilir (bazılarını ekleyebilir veya silebilirsiniz)!"
883
 
884
+ msgid "Filtered info text"
885
+ msgstr "Filtrelenmiş bilgi metni"
886
+
887
+ msgid "Fixed Columns"
888
+ msgstr "Sabit Kolonlar"
889
+
890
+ msgid "Fixed Footer"
891
+ msgstr "Sabit Alt Kısım"
892
+
893
+ msgid "Fixed Header"
894
+ msgstr "Sabit Başlık"
895
+
896
+ msgid "Fixed Table Height"
897
+ msgstr "Sabit Tablo Yüksekliği"
898
+
899
+ msgid "Fixed Table Width"
900
+ msgstr "Sabit Tablo Genişliği"
901
+
902
+ msgid ""
903
+ "Fixed table height in px. This value must be less than the original table "
904
+ "height to create a vertical scroll, otherwise you will not see that the "
905
+ "fixed header / footer exists."
906
  msgstr ""
907
+ "Piksel olarak sabit tablo yüksekliği. Dikey kaydırma oluşturmak için bu "
908
+ "değer orijinal tablo yüksekliğinden daha az olmalı, aksi takdirde sabit "
909
+ "üstbilgi/altbilginin var olduğunu göremezsiniz."
910
+
911
+ msgid "Folio"
912
+ msgstr "Folio"
913
+
914
+ msgid "Font Family"
915
+ msgstr "Font ailesi"
916
+
917
+ msgid "Font Size"
918
+ msgstr "Font Boyutu"
919
+
920
+ msgid "Font family changing available only in PRO version."
921
+ msgstr "Font grubu değişimi sadece PRO sürümde kullanılabilir."
922
+
923
+ msgid "Footer"
924
+ msgstr "Altbilgi"
925
 
926
  msgid ""
927
+ "Formats for cells value. All formats convert cell values to appropriate "
928
+ "format types.\n"
929
+ " <b>Percent with Convert</b> format sets percent "
930
+ "format and convert cells value to percentage by division by 100.\n"
931
+ " "
932
+ msgstr ""
933
+ "Hücre değerleri için formatlar. Her format hücre değerini seçinize göre "
934
+ "düzenler.\n"
935
+ " <b>Dönüşüm ile yüzde</b> hücre değerini 100 "
936
+ "üzerinden bir değere dönüştürür.\n"
937
+ " "
938
+
939
+ msgid "Frequently Asked Questions"
940
+ msgstr "Sıkça Sorulan Sorular"
941
+
942
+ msgid "Frontend Export"
943
+ msgstr "Frontend Dışa Aktar"
944
+
945
+ msgid "Get Browser Language"
946
+ msgstr "Tarayıcı dilini kullan"
947
+
948
+ msgid "Get PRO"
949
+ msgstr "PRO Satın alın"
950
+
951
+ msgid "Get PRO version"
952
+ msgstr "PRO Sürümü alın"
953
+
954
+ msgid "Global Table Data Search"
955
+ msgstr "Global veri tablosu arama"
956
+
957
+ msgid "Go to Editor of Data Table."
958
+ msgstr "Veri Tablosu Editörüne gidin."
959
+
960
+ msgid "Google Maps Easy"
961
+ msgstr "Google haritalar kolaylığı"
962
+
963
+ msgid "Google Spreadsheet Url"
964
+ msgstr "Google tablolar Url"
965
+
966
+ msgid "Header"
967
+ msgstr "Başlık"
968
+
969
+ msgid "Height"
970
+ msgstr "Yükseklik"
971
+
972
+ msgid "Hello Supsystic Team!"
973
+ msgstr "Merhaba Supsystic Takımı!"
974
+
975
+ msgid "Hello! This is the Data Tables by Supsystic"
976
+ msgstr "Merhaba! Bu, Supsystic’in Veri Tabloları’dır"
977
+
978
+ msgid "Hide Table Loader"
979
+ msgstr "Tablo yükleyicisini gizle"
980
+
981
+ msgid "Hide table by default and show only if search has a result."
982
+ msgstr "Arama sonucunda görülünceye kadar tabloyu varsayılan olarak gizle."
983
+
984
+ msgid "Highlight the Order Column"
985
+ msgstr "Hizalama yapılan sütunu renklendir"
986
+
987
+ msgid "Highlighting by Mousehover"
988
+ msgstr "Mouse Üzerine Gelince vurgula"
989
+
990
+ msgid "Horizontal scroll"
991
+ msgstr "Yatay kaydırma"
992
+
993
+ msgid ""
994
+ "Horizontal scroll - in this mode scroll bar will be added if table overflows "
995
+ "parent container width"
996
  msgstr ""
997
+ "Yatay kaydırma - tablo, üst konteynır genişliğini taşıyorsa bu modda "
998
+ "kaydırma çubuğu eklenecektir"
999
+
1000
+ msgid "How to use formulas in the table?"
1001
+ msgstr "Tablodaki formülleri nasıl kullanabilirim?"
1002
 
1003
  msgid ""
1004
+ "I need to have line breaks/spaces between the paragraphs within the cells."
 
1005
  msgstr ""
1006
+ "Hücrelerdeki paragraflar arasında satır sonları/boşlukları olması gerekir."
1007
 
1008
+ msgid ""
1009
+ "If checked - footer will be created from the last table rows. Otherwise - "
1010
+ "footer will be created from header rows."
1011
  msgstr ""
1012
+ "Eğer seçilirse - altbilgi tablonun son satırından oluturulur. Aksi durumda - "
1013
+ "altbilgi başlık satırlarından oluşturulur."
1014
 
1015
  msgid ""
1016
+ "If checked - table data on frontend will be overloaded from selected Google "
1017
+ "Sheet. <a href=\"%s\" tagget=\"_blank\">Read more</a> about how organize "
1018
+ "Auto Import form Google Sheets"
1019
  msgstr ""
1020
+ "Eğer seçilirse - tablo verisi seçilen Google tablolardan yüklenir. Google "
1021
+ "tablolardan içe alınanları organize etme hakkında <a href=\"%s\" tagget="
1022
+ "\"_blank\">daha fazla bilgi</a>"
1023
 
1024
+ msgid "If checked - table data will be included in the global site search"
1025
+ msgstr "Eğer seçilirse - tablo verisi genel site aramasına dahil edilir"
1026
+
1027
+ msgid "If checked - the current sorted column will be highlighted"
1028
+ msgstr "Eğer seçilirse -mevcut sıralı sütun vurgulanır"
1029
+
1030
+ msgid ""
1031
+ "If checked - this table will be resized by first supsystic table on page. "
1032
+ "Important! This option makes sense only if table is not on responsive mode "
1033
+ "or responsive mode is disabled. Also if the first table has different count "
1034
+ "of columns or different settings, their sizes may not be equal."
1035
  msgstr ""
1036
+ "Eğer seçilirse - bu tablo safyadaki ilk Supsystic tablosuna göre tekrar "
1037
+ "boyutlandırılır. Önemli! Bu ayar sadece duyarlı modda değilse veya duyarlı "
1038
+ "mod etkin değilse mantıklıdır. Ayrıca tablo farklı sütun sayısına sahipse ve "
1039
+ "farklı ayarlardaysa boyutları eşit olmayabilir."
1040
 
1041
  msgid ""
1042
+ "If checked - width of table columns will be calculated automatically for "
1043
+ "table width 100%.<br /><br />\n"
1044
+ " Otherwise - you can set "
1045
+ "table width manually: columns width will be get from Fixed Table Width "
1046
+ "option\n"
1047
+ " (toolbar on Editor tab) or "
1048
+ "calculated depending on the columns width in the table editor.<br /><br />\n"
1049
+ " If you do not want to apply "
1050
+ "columns width at all - you should uncheck \"Auto Table Width\" option, set "
1051
+ "\"Fixed Table Width\"\n"
1052
+ " option to \"auto\" and check "
1053
+ "\"Compact Table\" option."
1054
+ msgstr ""
1055
+ "Eğer seçilirse - 100% tablo uzunluğunda kolon uzunlukları otomatik "
1056
+ "hesaplanır.<br /><br />\n"
1057
+ " Aksi halde - manuel "
1058
+ "ayarlayabilirsiniz: Sütun uzunlukları Sabit Tablo Uzunluğu ayarına göre "
1059
+ "hesaplanır\n"
1060
+ " (Editör sekmesindeki araç "
1061
+ "çubuğu ile) yada tablo editöründeki sütun uzunluğu göre hesaplanır.<br /"
1062
+ "><br />\n"
1063
+ " Eğer sütun uzunluğu "
1064
+ "ayarlamak istemiyorsanız - \"Otomatik Tablo uzunluğu\" seçeneğini "
1065
+ "işaretlemeyin, \"Sabit Tablo uzunluğu\"\n"
1066
+ " ayarını \"otomatik\" seçin "
1067
+ "ve \"Kompakt Tablo\" ayarını işaretleyin."
1068
+
1069
+ msgid ""
1070
+ "If multiple sorting for columns is not set - the table will be sorted in the "
1071
+ "specified order by the column set in the table settings: Settings-> Features-"
1072
+ "> Sorting Order / Sorting Column. Otherwise - table will be sorted by the "
1073
+ "specified custom columns in sequense, in which they are listed."
1074
  msgstr ""
1075
+ "Eğer sütun için birden çok sıralama ayarlanmamışsa - tablo, tablo "
1076
+ "ayarlarının sütun ayarlarındaki sıraya göre ayarlanır: Ayarlar-> Özellikler-"
1077
+ "> Sıralama düzeni / Sütun sıralaması. Aksi takdirde - tablo elle ayarlamada "
1078
+ "listelenmiş dizilerden seçilene göre sıralanır."
1079
 
1080
+ msgid ""
1081
+ "If you use some specific characters (greek, cyrillic etc.) it is better to "
1082
+ "check this box for PDF export."
1083
  msgstr ""
1084
+ "(Yunanca, Kiril vb) bazı belirli karakterler kullanırsanız PDF çıktısı için "
1085
+ "bu kutuyu işaretlemeniz iyi olur."
1086
 
1087
+ msgid ""
1088
+ "If, unfortunately, you have some problem - we are ready to help you in our "
1089
+ "<a href=\"//supsystic.com/contact-us/\" target=\"_blank\">internal support.</"
1090
+ "a>"
1091
  msgstr ""
1092
+ "Eğer, maalesef bazı sorunlarınız varsa - <a href=\"//supsystic.com/contact-"
1093
+ "us/\" target=\"_blank\"> Destek </a> ile size yardımcı olmaya hazırız"
1094
+
1095
+ msgid "Import"
1096
+ msgstr "İçeri aktar"
1097
+
1098
+ msgid "Import Data to the Table"
1099
+ msgstr "Veri tablosunu içe aktar"
1100
+
1101
+ msgid "Import Settings"
1102
+ msgstr "Ayarları içeri aktar"
1103
+
1104
+ msgid "Import available only in PRO version."
1105
+ msgstr "İçeri aktarma sadece PRO sürümde kullanılabilir."
1106
+
1107
+ msgid "Import error"
1108
+ msgstr "İçeri aktarma hatası"
1109
+
1110
+ msgid "Import settings"
1111
+ msgstr "Ayarları içe aktar"
1112
+
1113
+ msgid "Import to the table"
1114
+ msgstr "Tabloya aktar"
1115
+
1116
+ msgid "Import/Export"
1117
+ msgstr "İçe Aktar/Dışa Aktar"
1118
 
1119
  msgid ""
1120
+ "Important! Please, check the sharing settings of your spreadsheet: it must "
1121
+ "be accessed to edit for everyone who has link. In other case the data will "
1122
+ "not import to table."
1123
  msgstr ""
1124
+ "Önemli! Lütfen, Google e-tablonuzun paylaşım ayarlarını kontrol edin: "
1125
+ "bağlantıya sahip olan herkes için düzenlemenin etkin olması gerekir. Diğer "
1126
+ "durumda veriler tabloya aktarılmaz."
1127
 
1128
+ msgid ""
1129
+ "In case you have special or at least, basic knowledge of CSS code - you can "
1130
+ "easily change the table here. Just make sure that you know, what you are "
1131
+ "doing and you will not destroy the table."
1132
  msgstr ""
1133
+ "Özel veya en azından CSS kodu ile ilgili temel bilgiye sahipseniz - "
1134
+ "tablonuzu buradan kolayca değiştirebilirsiniz. Sadece ne yaptığınızı "
1135
+ "bildiğinize ve tabloyu silmediğinize emin olun."
1136
+
1137
+ msgid "Insert Link"
1138
+ msgstr "Bağlantı ekle"
1139
+
1140
+ msgid "Insert link"
1141
+ msgstr "Bağlantı ekle"
1142
+
1143
+ msgid "Insert picture"
1144
+ msgstr "Resim ekle"
1145
+
1146
+ msgid "Inside by the top left corner"
1147
+ msgstr "Sol üst köşeden içeri"
1148
+
1149
+ msgid "Invalid range specified."
1150
+ msgstr "Geçersiz aralık belirtildi."
1151
+
1152
+ msgid "Italic"
1153
+ msgstr "Eğik yazı"
1154
 
1155
  msgid ""
1156
+ "It’s never been so easy to create and manage pricing and comparison tables "
1157
+ "with table builder. Any element of the table can be customise with mouse "
1158
+ "click."
 
 
 
1159
  msgstr ""
1160
+ "Fiyatlandırma ve karşılaştırma tablolarını tablo oluşturucu ile oluşturmak "
1161
+ "ve yönetmek bu kadar kolay olmamıştı. Tablonun herhangi bir unsuru fare "
1162
+ "tıklamasıyla özelleştirilebilir."
1163
 
1164
+ msgid "Landscape"
1165
+ msgstr "Yatay"
1166
+
1167
+ msgid "Language"
1168
+ msgstr "Dil"
1169
+
1170
+ msgid "Language and Text"
1171
+ msgstr "Dil ve Metin"
1172
+
1173
+ msgid "Large"
1174
+ msgstr "Geniş"
1175
+
1176
+ msgid ""
1177
+ "Learn more about how to do this <a href=\"//supsystic.com/how-to-use-tables/"
1178
+ "\" target=\"_blank\">here</a>."
1179
  msgstr ""
1180
+ "Bunun nasıl yapılacağı hakkında daha fazla bilgi edinmek için <a href=“//"
1181
+ "supsystic.com/how-to-use-tables/“ target=“_blank”>Tıklayın</a>."
1182
+
1183
+ msgid "Ledger"
1184
+ msgstr "Ana Hesap"
1185
+
1186
+ msgid "Left"
1187
+ msgstr "Sol"
1188
+
1189
+ msgid "Left Columns Count"
1190
+ msgstr "Sol Sütun Sayısı"
1191
+
1192
+ msgid "Left of the chart"
1193
+ msgstr "Grafiğin Solunda"
1194
+
1195
+ msgid "Legal"
1196
+ msgstr "Yasal"
1197
+
1198
+ msgid "Legend Position"
1199
+ msgstr "Klavuz Konumu"
1200
+
1201
+ msgid "Length text"
1202
+ msgstr "Uzunluk metni"
1203
+
1204
+ msgid "Let's Start!"
1205
+ msgstr "Haydi Başla!"
1206
 
1207
  msgid ""
1208
+ "Lets make search by fields, marked as hidden (see appropriate button on "
1209
+ "editor toolbar)"
 
 
1210
  msgstr ""
1211
+ "Hadi gizli olarak işaretlenmiş alanlara göre arama yap (editör araç "
1212
+ "çubuğunda uygun düğmeye bakın)"
1213
+
1214
+ msgid "Letter"
1215
+ msgstr "Harf"
1216
+
1217
+ msgid "License"
1218
+ msgstr "Lisans"
1219
+
1220
+ msgid "Line Chart"
1221
+ msgstr "Çizgi Grafik"
1222
+
1223
+ msgid "Lines between slices and values"
1224
+ msgstr "Dilimler ve değerler arasındaki çizgiler"
1225
+
1226
+ msgid "Link Text"
1227
+ msgstr "Bağlantı Metni"
1228
+
1229
+ msgid "Link from Google Tables"
1230
+ msgstr "Google Tablolarından Bağlantı"
1231
+
1232
+ msgid "List of columns for multiple sorting"
1233
+ msgstr "Birden fazla sıralama için sütunlar listesi"
1234
+
1235
+ msgid "List of columns, disabled from manual sorting"
1236
+ msgstr "El ile sıralamada devre dışı kalan sütun listesi"
1237
+
1238
+ msgid "List of width sizes, set for table columns:"
1239
+ msgstr "Genişlik boyutları listesi, tablo sütunları için ayarla:"
1240
+
1241
+ msgid "Live Chat Plugin"
1242
+ msgstr "Canlı Sohbet Eklentisi"
1243
+
1244
+ msgid "Loading your table, please wait..."
1245
+ msgstr "Tablonuz yükleniyor, lütfen bekleyiniz..."
1246
+
1247
+ msgid "Logo Alignment"
1248
+ msgstr "Logo Hizalama"
1249
+
1250
+ msgid "Logo Position"
1251
+ msgstr "Logo Pozisyonu"
1252
+
1253
+ msgid "Long Number"
1254
+ msgstr "Uzun sayı"
1255
+
1256
+ msgid "Main"
1257
+ msgstr "Ana"
1258
 
1259
  msgid ""
1260
+ "Main Settings of your first table. Here you can see main settings which are "
1261
+ "conected with languages, table elements, styling and other different editors "
1262
+ "settings. Generally it’s a tab where you can edit the visual part of the "
1263
+ "whole table, switch on/off the responsive mode, set pagination etc."
1264
  msgstr ""
1265
+ "İlk tablonuz için genel ayarlar. Burada diller, tablo öğeleri, stil ve diğer "
1266
+ "farklı düzenleyici ayarları ile bağlantılı olan ana ayarları görebilirsiniz. "
1267
+ "Genel olarak tablonun görsel bölümünü düzenleyebileceğiniz, duyarlı modu "
1268
+ "açıp kapatabileceğiniz, sayfalandırmayı vs ayarlayabileceğiniz bir sekmedir."
1269
+
1270
+ msgid "Make data table responsive"
1271
+ msgstr "Veri tablosunu duyarlı yapın"
1272
 
1273
  msgid ""
1274
+ "Mandatory attribute \"id\" is not specified. ' . 'Shortcode usage example: "
1275
+ "[%s id=\"{table_id}\"]"
 
1276
  msgstr ""
1277
+ "“id” zorunlu niteliği belirtilmedi. ‘ . ‘Kısa kod kullanımı örneği: [%s "
1278
+ "id=“{table_id}”]"
1279
 
1280
+ msgid ""
1281
+ "Mark selected cells as hidden and remove them from frontend. Can be useful "
1282
+ "for placing information in the table for admins only. <br /><br />Importanr! "
1283
+ "To display the table correctly, please, add this property for the whole row "
1284
+ "or the whole column of table."
1285
  msgstr ""
1286
+ "Seçili hücreleri site görünümünde gizlemek için işaretleyin. Sadece "
1287
+ "yöneticiler için bilgi yerleştirmede kullanışlı olabilir. <br /><br /"
1288
+ ">Önemli! Tabloyu düzgün görüntülemek için lütfen bu ayarı tablodaki tüm "
1289
+ "satır veya sütuna uygulayın."
1290
+
1291
+ msgid ""
1292
+ "Mark selected cells as invisible and hide them on frontend. Can be useful "
1293
+ "for placing intermediate calculations. <br /><br />To display the table "
1294
+ "correctly, please, add this property for the whole row or the whole column "
1295
+ "of table."
1296
+ msgstr ""
1297
+ "Seçilen hücreyi kullanıcılardan görünmez ve gizli tutun. Ara hesaplar "
1298
+ "yapabilmek için kullanışlı olabilir. <br/> <br/> Tabloyu doğru bir şekilde "
1299
+ "görüntülemek için lütfen tüm satıra veya tablonun tamamına bu özelliği "
1300
+ "ekleyin."
1301
+
1302
+ msgid "Medium"
1303
+ msgstr "Orta"
1304
+
1305
+ msgid "Membership by Supsystic"
1306
+ msgstr "\"Üyelik Eklentisi\" Supsystic tarafından oluşturulmuştur"
1307
+
1308
+ msgid "Message"
1309
+ msgstr "Mesaj"
1310
+
1311
+ msgid "Minimum Count of Characters"
1312
+ msgstr "En az karakter sayısı"
1313
+
1314
+ msgid "Name"
1315
+ msgstr "Adınız"
1316
+
1317
+ msgid "Name of Cloned Table"
1318
+ msgstr "Klonlanmış tablonun Adı"
1319
+
1320
+ msgid "Name of slice"
1321
+ msgstr "Dilim adı"
1322
+
1323
+ msgid "Newsletter Plugin"
1324
+ msgstr "Bülten Eklentisi"
1325
+
1326
+ msgid "Next"
1327
+ msgstr "Sonraki"
1328
+
1329
+ msgid "No"
1330
+ msgstr "Hayır"
1331
+
1332
+ msgid "No data available in table"
1333
+ msgstr "Tabloda veri yok"
1334
+
1335
+ msgid "No detected"
1336
+ msgstr "Tespit edilmedi"
1337
+
1338
+ msgid "No legend"
1339
+ msgstr "Kılavuz yok"
1340
+
1341
+ msgid "No matching records are found"
1342
+ msgstr "Eşleşen kayıt bulunamadı"
1343
+
1344
+ msgid "No value"
1345
+ msgstr "Değer Yok"
1346
+
1347
+ msgid "None"
1348
+ msgstr "Yok"
1349
+
1350
+ msgid "Not displaying"
1351
+ msgstr "Görüntülenmiyor"
1352
+
1353
+ msgid ""
1354
+ "Note that the table may look a little different depending on your theme "
1355
+ "style."
1356
+ msgstr "Tema stilinize göre tablonuzun görünümünde farklılıklar olabilir."
1357
+
1358
+ msgid "Number"
1359
+ msgstr "Numara"
1360
+
1361
+ msgid "Number Formatting"
1362
+ msgstr "Sayı Biçimlendirme"
1363
+
1364
+ msgid ""
1365
+ "Number of column to apply sort order. Set no value to disable table sorting "
1366
+ "by default."
1367
+ msgstr ""
1368
+ "Sıralama düzeni uygulamak için sütun sayısı. Varsayılan olarak tablo "
1369
+ "sıralamayı devre dışı bırakmak için değer girmeyin."
1370
+
1371
+ msgid "Number of column to fix by left side of the table."
1372
+ msgstr "Tablonun sağ tarafında düzeltilecek sütun sayısı."
1373
+
1374
+ msgid "Number of column to fix by right side of the table."
1375
+ msgstr "Tablonun sol tarafından düzeltilecek sütun sayısı."
1376
+
1377
+ msgid "Offset Bottom"
1378
+ msgstr "Alt ofset"
1379
+
1380
+ msgid "Offset Left"
1381
+ msgstr "Sol ofset"
1382
+
1383
+ msgid "Offset Right"
1384
+ msgstr "Sağ ofset"
1385
+
1386
+ msgid "Offset Top"
1387
+ msgstr "Üst Ofset"
1388
+
1389
+ msgid "Offset for axes' area by bottom."
1390
+ msgstr "Eksen alanı için alt tarafından Ofset."
1391
+
1392
+ msgid "Offset for axes' area by left."
1393
+ msgstr "Eksen alanı için sol tarafından Ofset."
1394
+
1395
+ msgid "Offset for axes' area by right."
1396
+ msgstr "Eksen alanı için sağ tarafından Ofset."
1397
+
1398
+ msgid "Offset for axes' area by top."
1399
+ msgstr "Eksen alanı için üst tarafından Ofset."
1400
+
1401
+ msgid ""
1402
+ "One of the best plugin for creating Contact Forms on your WordPress site. "
1403
+ "Changeable fonts, backgrounds, an option for adding fields etc."
1404
+ msgstr ""
1405
+ "WordPress sitenizde İletişim Formları oluşturmanın en iyi eklentilerinden "
1406
+ "biri. Değiştirilebilir yazı tipleri, arka planlar, alan ekleme vb. için bir "
1407
+ "seçenek."
1408
+
1409
+ msgid "Open in new tab"
1410
+ msgstr "Yeni sekmede aç"
1411
+
1412
+ msgid "Other"
1413
+ msgstr "Diğer"
1414
+
1415
+ msgid "Overview"
1416
+ msgstr "Genel bakış"
1417
+
1418
+ msgid "Overwrite Table Text"
1419
+ msgstr "Tablo verisinin üstüne yaz"
1420
+
1421
+ msgid "PHP"
1422
+ msgstr "PHP Kodu"
1423
+
1424
+ msgid "PRO option"
1425
+ msgstr "PRO Ayarı"
1426
+
1427
+ msgid "PRO version"
1428
+ msgstr "PRO Sürümü"
1429
+
1430
+ msgid "Pagination"
1431
+ msgstr "Sayfalandırma"
1432
+
1433
+ msgid "Pagination List Content"
1434
+ msgstr "Sayfalandırma liste uzunluğu"
1435
+
1436
+ msgid "Pagination Size"
1437
+ msgstr "Sayfalandırma Boyutu"
1438
 
1439
+ msgid "Paragraph Mode"
1440
+ msgstr "Paragraf Modu"
1441
 
1442
+ msgid "Paste script code here"
1443
+ msgstr "Komut dosyası kodunu buraya yapıştırın"
1444
 
1445
+ msgid "Percent"
1446
+ msgstr "Yüzde"
1447
 
1448
+ msgid "Percent Mode"
1449
+ msgstr "Yüzde modu"
 
1450
 
1451
+ msgid "Percent with Convert"
1452
+ msgstr "Çeviri ile yüzde"
1453
 
1454
+ msgid "Percentage of slice size out of total"
1455
+ msgstr "Toplamda dilim boyutu yüzdesi"
1456
 
1457
+ msgid "Photo Gallery Plugin"
1458
+ msgstr "Fotoğraf Galerisi Eklentisi"
 
 
1459
 
1460
+ msgid ""
1461
+ "Photo Gallery Plugin with a great number of layouts will help you to create "
1462
+ "quality respectable portfolios and image galleries."
1463
  msgstr ""
1464
+ "Çok çeşitli görünümlere sahip Fotoğraf Galerisi Eklentisi size kaliteli "
1465
+ "saygı duyulacak portfolyolar ve resim galerileri oluşturmanıza yardımcı olur."
1466
 
1467
+ msgid "Pie Chart"
1468
+ msgstr "Pasta Grafiği"
1469
 
1470
+ msgid "Plain"
1471
+ msgstr "Sade"
1472
 
1473
  msgid ""
1474
+ "Please be advised that this option is available only in %s. You can %s today "
1475
+ "and get this and other PRO option for your tables!"
1476
  msgstr ""
1477
+ "Lütfen bu seçeneğin yalnızca% s’de mevcut olduğunu unutmayın. % S bugün "
1478
+ "olabilir ve bu ve diğer PRO seçeneklerini tablolarınız için alabilirsiniz!"
1479
 
1480
+ msgid "Plugin options"
1481
+ msgstr "Eklenti ayarları"
1482
 
1483
+ msgid "Popup Plugin"
1484
+ msgstr "Popup Eklentisi"
1485
 
1486
+ msgid "Portrait"
1487
+ msgstr "Dikey"
1488
 
1489
+ msgid "Preview"
1490
+ msgstr "Ön izleme"
1491
 
1492
+ msgid ""
1493
+ "Preview insert for your comfort. Before updating the table on your page - "
1494
+ "you can see the result of your efforts and changes, look at it and enjoy the "
1495
+ "final outcome."
1496
  msgstr ""
1497
+ "Konforunuz için önizleme yapın. Sayfanızda tabloyu güncellemeden önce, "
1498
+ "çabalarınızın ve değişikliklerinizin sonucunu görebilir, ona bakabilir ve "
1499
+ "nihai sonucun keyfini çıkarabilirsiniz."
1500
 
1501
+ msgid "Pricing Table"
1502
+ msgstr "Fiyatlandırma Tablosu"
 
 
 
1503
 
1504
+ msgid "Quantitative value of slice"
1505
+ msgstr "Dilimin kantitatif değeri"
1506
 
1507
+ msgid "RA0"
1508
+ msgstr "RA0"
1509
 
1510
+ msgid "RA1"
1511
+ msgstr "RA1"
1512
 
1513
+ msgid "RA2"
1514
+ msgstr "RA2"
 
 
1515
 
1516
+ msgid "RA3"
1517
+ msgstr "RA3"
1518
 
1519
+ msgid "RA4"
1520
+ msgstr "RA4"
1521
 
1522
+ msgid "Redo"
1523
+ msgstr "İleri al"
1524
 
1525
+ msgid "Relative Mode"
1526
+ msgstr "Göreli modu"
1527
 
1528
+ msgid "Remove"
1529
+ msgstr "Kaldır"
1530
 
1531
+ msgid "Remove Data"
1532
+ msgstr "Verileri kaldır"
1533
 
1534
+ msgid "Remove Logo"
1535
+ msgstr "Logoyu Kaldır"
1536
 
1537
+ msgid "Renew License"
1538
+ msgstr "Lisansı yenile"
1539
 
1540
+ msgid "Report a bug"
1541
+ msgstr "Hata bildir"
1542
 
1543
+ msgid "Require a new functionallity"
1544
+ msgstr "Yeni özellik talep et"
1545
 
1546
+ msgid "Responsive Mode"
1547
+ msgstr "Duyarlı Mod"
1548
 
1549
+ msgid "Right"
1550
+ msgstr "Sağ"
1551
 
1552
+ msgid "Right Columns Count"
1553
+ msgstr "Sağ Sütun Sayısı"
1554
 
1555
+ msgid "Right of the chart"
1556
+ msgstr "Grafiğin Sağında"
1557
 
1558
+ msgid "Role for users who can use plugin. Administrator is included by default"
1559
  msgstr ""
1560
+ "Eklentiyi kullanabilen kullanıcılar için rolü. Yönetici varsayılan olarak "
1561
+ "bulunur"
1562
 
1563
+ msgid "Roles"
1564
+ msgstr "Roller"
1565
 
1566
+ msgid "Row"
1567
+ msgstr "Satır"
1568
 
1569
+ msgid "Row Striping"
1570
+ msgstr "Satır şeritleme"
1571
 
1572
+ msgid "Row highlighting by mouse hover."
1573
+ msgstr "Mouse Üzerine Gelince satırı vurgula."
1574
 
1575
+ msgid "Rows"
1576
+ msgstr "Satırlar"
1577
 
1578
+ msgid "Rows Count per Request"
1579
+ msgstr "İstek başına satır sayısı"
1580
 
1581
+ msgid "SRA0"
1582
+ msgstr "SRA0"
1583
 
1584
+ msgid "SRA1"
1585
+ msgstr "SRA1"
1586
 
1587
+ msgid "SRA2"
1588
+ msgstr "SRA2"
1589
 
1590
+ msgid "SRA3"
1591
+ msgstr "SRA3"
1592
 
1593
+ msgid "SRA4"
1594
+ msgstr "SRA4"
1595
 
1596
+ msgid "Save"
1597
+ msgstr "Kaydet"
1598
 
1599
+ msgid "Save Frontend Fields"
1600
+ msgstr "Site alanlarını kaydet"
1601
 
1602
+ msgid "Save as"
1603
+ msgstr "Farklı kaydet"
1604
 
1605
+ msgid "Save the changes of table."
1606
+ msgstr "Tablonun değişikliklerini kaydedin."
1607
 
1608
+ msgid "Scientific"
1609
+ msgstr "Bilimsel"
1610
 
1611
+ msgid "Search by Hidden Fields"
1612
+ msgstr "Gizli alanlarla arama"
 
 
 
 
 
1613
 
1614
+ msgid "Search label"
1615
+ msgstr "Arama etiketi"
1616
 
1617
+ msgid "Search:"
1618
+ msgstr "Arama:"
 
 
 
 
 
1619
 
1620
+ msgid "Searching"
1621
+ msgstr "Arama"
1622
 
1623
+ msgid "Select Logo"
1624
+ msgstr "Logo Seç"
 
 
 
1625
 
1626
+ msgid "Select User to display its table"
1627
+ msgstr "Tablosunu görüntülemek için Kullanıcı’yı seçin"
1628
 
1629
  msgid ""
1630
+ "Select a cell and start typing. In a cell, type an equal sign “=” to start "
1631
+ "the formula."
 
 
 
 
 
 
1632
  msgstr ""
1633
+ "Bir hücre seçin ve yazmaya başlayın. Bir hücrede, formülü başlatmak için "
1634
+ "eşit işaret “=“ yazın."
1635
 
1636
+ msgid "Select alignment of table logotype"
1637
+ msgstr "Tablo logotipi hizalama"
1638
 
1639
+ msgid "Select avalilable roles to use tables"
1640
+ msgstr "Tabloları kullanmak için mevcut rolleri seçin"
1641
 
1642
+ msgid "Select chart type"
1643
+ msgstr "Grafik türünü seçin"
1644
 
1645
+ msgid "Select file type to export table:"
1646
+ msgstr "Tabloyu dışarı aktarmak için dosya tipi seçin:"
1647
 
1648
+ msgid "Select position of table logotype"
1649
+ msgstr "Tablo logotipi konumunu seçin"
1650
 
1651
+ msgid "Select roles"
1652
+ msgstr "Rolleri seç"
1653
 
1654
+ msgid "Selectable fields"
1655
+ msgstr "Seçilebilir alanlar"
1656
 
1657
+ msgid ""
1658
+ "Set column width for selected columns in pixels or percents. Press \"Clear "
1659
+ "Fixed Width\" to clear fixed columns width for all table columns. All "
1660
+ "changes will be applied after table saving."
1661
  msgstr ""
1662
+ "Seçilen sütunların genişliğini pixel veya yüzde olarak ayarlayın. \"Sabit "
1663
+ "genişliği temizle\" tuşuna basarak tablodaki sabit genişlik ayarlarını "
1664
+ "temizleyin. Tüm değişiklikleri Tablo kaydettikten sonra uygulanır."
1665
 
1666
+ msgid ""
1667
+ "Set count of table rows, which will be saved per one request. If you do not "
1668
+ "know why does this value need for - it's better to keep the preferred value: "
1669
+ "400."
1670
  msgstr ""
1671
+ "Bir istek ile kaydolacak tablo satır sayısını ayarlayın. Bu değere neden "
1672
+ "ihtiyaç olduğunu bilmiyorsanız değeri 400 olarak ayarlamak uygun olacaktır."
1673
 
1674
+ msgid ""
1675
+ "Set fixed table width in px, % or auto (in this case table will be adjusted "
1676
+ "by table content)"
1677
  msgstr ""
1678
+ "Sabit tablo genişliğini px, % veya otomatik (bu durumda tablo içeriğine göre "
1679
+ "boyutlandırılır) olarak ayarlayın."
1680
 
1681
+ msgid "Set format of all numbers in the table"
1682
+ msgstr "Tablodaki tüm sayıların biçimini ayarla"
1683
 
1684
+ msgid ""
1685
+ "Set minimum count of characters to start search in Search field. Set 0 to "
1686
+ "make search in any case."
1687
  msgstr ""
1688
+ "Arama kısmında aramaya başlamak için gereken en az karakter sayısını "
1689
+ "ayarlayın. Her koşulda arama için 0 olarak ayarlayın."
1690
 
1691
+ msgid ""
1692
+ "Set multiple column sorting for selected columns. Press \"Clear Multiple "
1693
+ "Sorting\" to clear multiple sorting for all table columns. All changes will "
1694
+ "be applied after table saving."
1695
  msgstr ""
1696
+ "Seçilen sütunlar için birden çok sütun sıralama ayarla. \"Çoklu sıralama "
1697
+ "temizle\" tuşuna basarak tablodaki çoklu sıralamaları temizleyin. Tüm "
1698
+ "değişiklikleri Tablo kaydettikten sonra uygulanır."
1699
 
1700
+ msgid ""
1701
+ "Set output format for currencies. Supports only 1 currency for 1 table. "
1702
+ "Besides here you can establish needed divider between integer and fractional "
1703
+ "parts and quantity of zeros at fractional part. For example:<br />\n"
1704
+ " $ 1,000.000<br />\n"
1705
+ " € 1.00"
1706
+ msgstr ""
1707
+ "Çıktı para birimi formatını ayarlayın. Tablo başına 1 para birimi "
1708
+ "desteklenir. Bunun dışında tamsayı ve kesirli sayıları ayırıcıyı "
1709
+ "belirleyebilirsiniz Örneğin:<br />\n"
1710
+ " $ 1,000.000<br />\n"
1711
+ " € 1.00"
1712
 
1713
+ msgid ""
1714
+ "Set output format for date. For example:<br />\n"
1715
+ " YYYY-MM-DD - 1991-12-25<br />\n"
1716
+ " DD.MM.YY - 25.12.91"
1717
  msgstr ""
1718
+ "Çıktı için tarih formatını ayarlayın. Örneğin:<br />\n"
1719
+ " YYYY-AA-GG - 1991-12-25<br />\n"
1720
+ " GG.AA.YY - 25.12.91"
1721
 
1722
+ msgid "Set output format for numbers e.g. 1,000.00, 1.00"
1723
+ msgstr "Sayılar için çıkış biçimini ayarla ör. 1,000.00, 1.00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1724
 
1725
+ msgid ""
1726
+ "Set output format for percent numbers. For example:<br />\n"
1727
+ " 10.00%<br />\n"
1728
+ " 10%"
1729
  msgstr ""
1730
+ "Çıktı yüzde formatını ayarlayın. Örneğin:<br />\n"
1731
+ " 10.00%<br />\n"
1732
+ " 10%"
1733
 
1734
+ msgid ""
1735
+ "Set output format for time and duration. For example:<br />\n"
1736
+ " 1) time<br />\n"
1737
+ " HH:mm - 18:00<br />\n"
1738
+ " hh:mm a - 9:00 pm<br /><br />\n"
1739
+ " 2) duration<br />\n"
1740
+ " hh:mm - 36:40<br />\n"
1741
+ " hh:mm:ss - 36:40:12"
1742
+ msgstr ""
1743
+ "Çıktı zaman formatını ayarlayın. örneğin:<br />\n"
1744
+ " 1) Zaman<br />\n"
1745
+ " SS:dd - 18:00<br />\n"
1746
+ " ss:dd z - 9:00 öö<br /><br />\n"
1747
+ " 2) süre<br />\n"
1748
+ " ss:dd - 36:40<br />\n"
1749
+ " ss:dd:ss - 36:40:12"
1750
+
1751
+ msgid "Set sort order by default"
1752
+ msgstr "Sıralama düzeni varsayılan olarak ayarla"
1753
 
1754
+ msgid ""
1755
+ "Set the numeric value from 0 to 100, for example 10 (equals to 10%). Leave "
1756
+ "this field empty to use default offset value."
1757
  msgstr ""
1758
+ "Sayısal değeri 0 dan 100e kadar ayarlayın, örneğin 10 (% 10a eşit). "
1759
+ "Varsayılan ofset değerini kullanmak için bu alanı boş bırakın."
1760
 
1761
+ msgid ""
1762
+ "Set the value in px or %, for example, 200 (equals to 200px) or 80%. Leave "
1763
+ "this field empty to use default height value."
1764
  msgstr ""
1765
+ "Değeri px veya % olarak ayarlayın, örneğin 200 (200 px’e eşit) veya % 80. "
1766
+ "Varsayılan yükseklik değerini kullanmak için bu alanı boş bırakın."
1767
 
1768
+ msgid ""
1769
+ "Set the value in px or %, for example, 400 (equals to 400px) or 90%. Leave "
1770
+ "this field empty to use default width value."
 
1771
  msgstr ""
1772
+ "Değeri px veya % olarak ayarlayın, örneğin 400 (400 px’e eşit) veya % 90. "
1773
+ "Varsayılan genişlik değerini kullanmak için bu alanı boş bırakın."
1774
 
1775
+ msgid "Settings"
1776
+ msgstr "Ayarlar"
1777
 
1778
+ msgid "Short Number"
1779
+ msgstr "Kısa numara"
1780
 
1781
+ msgid "Shortcode"
1782
+ msgstr "Kısakod"
1783
 
1784
+ msgid "Show Empty Table"
1785
+ msgstr "Boş tabloyu göster"
1786
 
1787
+ msgid "Show Only Search Results"
1788
+ msgstr "Sadece arama sonuçlarını göster"
1789
 
1790
+ msgid "Show _MENU_ entries"
1791
+ msgstr "_MENU_ girişlerini göster"
1792
 
1793
+ msgid "Showing 0 to 0 of 0 entries"
1794
+ msgstr "0 dan 0 a 0 girdileri gösteriliyor"
1795
 
1796
+ msgid "Showing _START_ to _END_ of _TOTAL_ entries"
1797
+ msgstr "_START_ den _END_ of _TOTAL_ girişler gösteriliyor"
1798
 
1799
+ msgid "Signature"
1800
+ msgstr "İmza"
1801
 
1802
+ msgid "Signature Text"
1803
+ msgstr "İmza metni"
1804
 
1805
+ msgid "Slider Plugin"
1806
+ msgstr "Slider Eklentisi"
1807
 
1808
+ msgid "Slider by Supsystic"
1809
+ msgstr "Supsystic'ten Slider"
1810
 
1811
+ msgid "Small"
1812
+ msgstr "Küçük"
1813
 
1814
+ msgid "Social Share Buttons"
1815
+ msgstr "Sosyal Paylaşım Düğmeleri"
1816
 
1817
  msgid ""
1818
+ "Social share buttons to increase social traffic and popularity. Social "
1819
+ "sharing to Facebook, Twitter and other social networks."
1820
  msgstr ""
1821
+ "Sosyal paylaşım düğmeleri, sosyal trafiği ve popülerliği artırmak için "
1822
+ "kullanılır. Facebook, Twitter ve diğer sosyal ağlara sosyal paylaşım."
1823
 
1824
+ msgid ""
1825
+ "Some errors occurred while sending mail please send your message trough this "
1826
+ "contact form:"
1827
+ msgstr ""
1828
+ "Posta gönderirken bazı hatalar oluştu, lütfen mesajınızı bu iletişim "
1829
+ "formundan yollayın:"
1830
 
1831
+ msgid "Sort order"
1832
+ msgstr "Sıralama düzeni"
1833
 
1834
+ msgid "Sorting"
1835
+ msgstr "Sıralama"
1836
 
1837
+ msgid "Sorting Column"
1838
+ msgstr "Sıralama Sütunu"
 
 
 
 
1839
 
1840
+ msgid "Sorting Order"
1841
+ msgstr "Sıralama Yönü"
1842
 
1843
+ msgid "Stacked Columns"
1844
+ msgstr "Yığılmış sütunlar"
 
 
1845
 
1846
+ msgid "Standard Responsive mode"
1847
+ msgstr "Standart duyarlı mod"
1848
 
1849
  msgid ""
1850
  "Standard Responsive mode - in this mode if table content doesn't fit all "
1851
  "columns become under each other with one cell per row"
1852
  msgstr ""
1853
+ "Standart Duyarlı mod - Bu modda tablo içeriği uymuyorsa, tüm sütunlar "
1854
+ "sıranın her birinde bir hücre olacak şekilde birbirlerinin altına girerler"
1855
 
1856
+ msgid "Step-by-step Tutorial"
1857
+ msgstr "Adım adım Eğitim"
 
 
1858
 
1859
+ msgid "Strict Matching"
1860
+ msgstr "Sıkı eşleşme"
 
 
1861
 
1862
+ msgid "Subject"
1863
+ msgstr "Konu"
1864
 
1865
+ msgid "Support"
1866
+ msgstr "Destek"
1867
 
1868
+ msgid ""
1869
+ "Supsystic Newsletter plugin for automatic mailing of your letters. You will "
1870
+ "have no need to control it or send them manually. No coding, hard skills or "
1871
+ "long hours of customizing are required."
1872
  msgstr ""
1873
+ "Mektuplarınızın otomatik olarak gönderilmesi için Supsystic Newsletter "
1874
+ "eklentisi. Onu kontrol etmeye ya da manuel olarak göndermenize gerek kalmaz. "
1875
+ "Hiçbir kodlama, yüksek beceri veya uzun süre özelleştirme çabası gerekli "
1876
+ "değildir."
1877
 
1878
+ msgid "Switch rows / columns"
1879
+ msgstr "Satırları / sütunları değiştir"
1880
 
1881
+ msgid "Table Elements"
1882
+ msgstr "Tablo elementleri"
1883
+
1884
+ msgid "Table History"
1885
+ msgstr "Tablo Tarihi"
1886
 
1887
  msgid "Table Information"
1888
+ msgstr "Tablo Bilgisi"
1889
 
1890
+ msgid "Table Language"
1891
+ msgstr "Tablo Dili"
1892
 
1893
+ msgid "Table Loader Color"
1894
+ msgstr "Tablo yükleyici rengi"
1895
 
1896
+ msgid "Table Loader Icon"
1897
+ msgstr "Tablo yükleyici simgesi"
 
 
 
 
1898
 
1899
+ msgid "Table info text"
1900
+ msgstr "Tablo bilgi metni"
1901
 
1902
+ msgid "Table information display field. %s"
1903
+ msgstr "Tablo bilgisi gösterme alanı. %s"
1904
 
1905
+ msgid "Table title"
1906
+ msgstr "Tablo başlığı"
1907
 
1908
+ msgid "Table will not be hidden by default , but will be empty."
1909
+ msgstr "Tablo varsayılan olarak gizlenmeyecek, ancak boş kalacak."
1910
 
1911
+ msgid "Tables"
1912
+ msgstr "Tablolar"
1913
 
1914
+ msgid "Tabloid"
1915
+ msgstr "Tabloid"
1916
 
1917
+ msgid "Text color"
1918
+ msgstr "Yazı rengi"
1919
 
1920
+ msgid "Text on Slice"
1921
+ msgstr "Dilim Metni"
1922
 
1923
+ msgid ""
1924
+ "Thank you for choosing our Data Tables plugin. Just click here to start "
1925
+ "using it - and we will show you it's possibilities and powerfull features."
1926
  msgstr ""
1927
+ "Veri Tabloları eklentimizi seçtiğiniz için teşekkür ederiz. Kullanmaya "
1928
+ "başlamak için buraya tıklayın - size yapabilecekleriniz ve güçlü "
1929
+ "özelliklerini göstereceğiz."
1930
 
1931
+ msgid ""
1932
+ "Thank you for choosing our Data Tables plugin. Let’s make a quick tour "
1933
+ "through features and main options of the plugin. Just click “Next” button."
 
1934
  msgstr ""
1935
+ "Veri Tabloları eklentimizi seçtiğiniz için teşekkür ederiz. Eklentinin "
1936
+ "özelliklerini ve ana seçeneklerini hızlı bir şekilde inceleyelim. “İleri” "
1937
+ "düğmesini tıklamanız yeterlidir."
1938
 
1939
+ msgid ""
1940
+ "The Best WordPress PopUp option plugin to help you gain more subscribers, "
1941
+ "social followers or advertisement. Responsive pop-ups with friendly options."
1942
  msgstr ""
1943
+ "Daha fazla abone, sosyal takipçi veya reklam kazanmanıza yardımcı olmak için "
1944
+ "en İyi WordPress PopUp eklentisi. Uygun seçenekleri olan duyarlı pop-up’lar."
1945
 
1946
+ msgid ""
1947
+ "The most important part of settings - Editor. Here you can fill all the "
1948
+ "cells of your table, add some colors, play with fonts and sizes. This insert "
1949
+ "also allows you to change the alignment of your font, add formats (percents, "
1950
+ "currency), images and links to make your table more visual attraction."
1951
  msgstr ""
1952
+ "Ayarların en önemli kısmı - Editör. Burada tablonuzun tüm hücrelerini "
1953
+ "doldurabilir, renkler ekleyebilir, yazı tipleri ve boyutlarla "
1954
+ "oynayabilirsiniz. Bu ek, yazı tipinizin hizalamasını değiştirmenize, "
1955
+ "tablolarınızı daha görsel cazibe haline getirmek için (yüzde, para birimi), "
1956
+ "resim ve bağlantılar eklemenize olanak tanır."
1957
 
1958
+ msgid "The table ID %s not found."
1959
+ msgstr "%s tablo ID'si bulunamadı."
1960
 
1961
+ msgid "The table with ID %d not exists."
1962
+ msgstr "%s ID nolu tablo mevcut değil."
1963
 
1964
+ msgid "There are not all shortcode's attributes specified. Usage example"
1965
+ msgstr "Belirtilen tüm kısa kod özellikleri mevcut değil. Kullanım örneği"
1966
 
1967
+ msgid ""
1968
+ "This label can not be translated using Table Language option. You can change "
1969
+ "this label typing the custom text or hide this label typing _NONE_ as label "
1970
+ "text."
1971
  msgstr ""
1972
+ "Bu etiket tablo dil seçeneğini kullanarak tercüme edilebilir değil. Özel "
1973
+ "metin yazarak bu etiketini değiştirmek veya bu etiket _NONE_ etiket metni "
1974
+ "yazarak gizleyebilirsiniz."
1975
 
1976
+ msgid ""
1977
+ "This mode allows you to separate the content into paragraphs. To move to a "
1978
+ "new line in the cell - please press CTRL + Enter."
1979
  msgstr ""
1980
+ "Bu mod, içeriği paragraflara ayırabilmenizi sağlar. Hücredeki yeni bir "
1981
+ "satıra gitmek için lütfen CTRL + Enter tuşlarına basın."
1982
 
1983
+ msgid "Time / Duration"
1984
+ msgstr "Zaman / Süre"
1985
 
1986
+ msgid "Title"
1987
+ msgstr "Başlık"
1988
 
1989
+ msgid "Topic"
1990
+ msgstr "Başlık"
1991
 
1992
+ msgid "Type"
1993
+ msgstr "Tip"
1994
 
1995
+ msgid "Type Google Sheet url to import data from sheet to table"
1996
+ msgstr "Tabloya veri almak için Google tablolar url adresini yazın"
1997
 
1998
+ msgid "Underline"
1999
+ msgstr "Altı Çizili"
2000
 
2001
+ msgid "Undo"
2002
+ msgstr "Geri al"
2003
 
2004
+ msgid "Unsupported export type: %s."
2005
+ msgstr "Desteklenmeyen dışa aktarım türü: %s."
2006
 
2007
+ msgid "Url"
2008
+ msgstr "Url"
2009
 
2010
+ msgid "Use Comma as Delimiter"
2011
+ msgstr "Ayırıcı olarak virgül kullan"
2012
 
2013
+ msgid "Use Custom Colors"
2014
+ msgstr "Özel Renkleri Kullan"
2015
 
2016
+ msgid "Use Editable Fields for Current Roles"
2017
+ msgstr "Geçerli Roller için Düzenlenebilir Alanları Kullan"
2018
+
2019
+ msgid "Use Export Font"
2020
+ msgstr "Dışa aktarım yazı tipini kullan"
2021
+
2022
+ msgid "Use Frontend Fields for Logged In Users Only"
2023
  msgstr ""
2024
+ "Yalnızca Giriş Yapan Kullanıcılar İçin Düzenlenebilir Alanlar’ı kullanın"
2025
 
2026
+ msgid ""
2027
+ "Use comma as delimiter of integer and fractional parts of number for "
2028
+ "editable fields on frontend"
2029
+ msgstr ""
2030
+ "Kullanıcı arayüzünde ayırıcı olarak ve tamsayı ve kesirli rakamların ayracı "
2031
+ "olarak virgül kullan"
2032
 
2033
+ msgid "Use first column as labels"
2034
+ msgstr "İlk sütunu etiketler olarak kullan"
2035
 
2036
+ msgid "Use first row as headers"
2037
+ msgstr "İlk satırları üstbilgiler olarak kullan"
2038
 
2039
  msgid "Vertical alignment"
2040
  msgstr "Dikey hizalama"
2041
 
2042
+ msgid "Video Tutorial"
2043
+ msgstr "Videolu Eğitim"
2044
 
2045
+ msgid ""
2046
+ "We are trying to make your using of our plugin maximum comfortable and easy. "
2047
+ "So we find it like the best way to tell you about some options and features "
2048
+ "of this plugin."
2049
+ msgstr ""
2050
+ "Eklentimizi maksimum rahat ve kullanışlı hale getirmeye çalışıyoruz. Bu "
2051
+ "yüzden, sizi bu eklentinin bazı seçeneklerini ve özelliklerini anlatmanın en "
2052
+ "iyi yolu gibi buluyoruz."
2053
 
2054
+ msgid ""
2055
+ "We really like what we do and feel responsibility for our “child”. "
2056
+ "Constantly we are trying to change something or update the new features, but "
2057
+ "sometimes you may have a situation when you need help or have a problem. We "
2058
+ "can offer you two kinds of help: "
2059
+ msgstr ""
2060
+ "Gerçekten yaptığımız işi sevdik ve “çocuğumuz” için sorumluluk hissediyoruz. "
2061
+ "Sürekli olarak bir şeyi değiştirmeye veya yeni özellikleri güncellemeye "
2062
+ "çalışıyoruz, ancak bazen yardıma ihtiyacınız veya bir sorununuz olabilir. Bu "
2063
+ "durumda size iki çeşit yardım sunabiliriz: "
2064
 
2065
+ msgid "Website"
2066
+ msgstr "İnternet Sitesi"
2067
 
2068
+ msgid "Welcome to Data Tables plugin by Supsystic!"
2069
+ msgstr "Supsystic tarafından sunulan Veri Tabloları eklentisine hoş geldiniz!"
2070
+
2071
+ msgid "Welcome to our plugin"
2072
+ msgstr "Eklentimize hoş geldiniz"
2073
+
2074
+ msgid "Well done!"
2075
+ msgstr "Aferin!"
2076
 
2077
  msgid ""
2078
+ "When you use frontend fields, <a href=\"%s\" target=\"_blank\">Table Hitory</"
2079
+ "a> allows you (using History Shortcode) to display on frontend the own table "
2080
+ "version for each logged in user. On this tab you can display any user's "
2081
+ "table - just choose the user name from dropdown list."
2082
  msgstr ""
2083
+ "Düzenlenebilir alanları kullandığınızda, <a href=\"%s\" target=\"_blank"
2084
+ "\">Table Geçmişi</a> (Geçmiş kısakodu ile) kayıtlı kullanıcıların kendi "
2085
+ "tablolarını görüntülemenize izin verir. Bu sekmede açılır listeden kullanıcı "
2086
+ "adını seçerek - herhangi bir kullanıcının tablosunu görüntüleyebilirsiniz."
2087
 
2088
+ msgid "Width"
2089
+ msgstr "Genişlik"
2090
 
2091
+ msgid ""
2092
+ "With these two buttons in our Pro version you can Import any table of csv "
2093
+ "format and Export the whole table, which you have done."
2094
  msgstr ""
2095
+ "Pro sürümümüzdeki bu iki düğme sayesinde, csv formatındaki herhangi bir "
2096
+ "tabloyu içe aktarabilir ve yaptığınız tüm tabloyu dışa aktarabilirsiniz."
2097
 
2098
+ msgid "Word wrapping"
2099
+ msgstr "Kelime kaydırma"
2100
 
2101
+ msgid "Yes"
2102
+ msgstr "Evet"
2103
+
2104
+ msgid "You can change number of Columns and Rows later"
2105
+ msgstr "Sütun ve Satır sayısını daha sonra değiştirebilirsiniz"
2106
 
2107
  msgid ""
2108
+ "You have no diagrams for now. Go to %s -> select the required data in the "
2109
+ "table and click on “Add diagram” button. Also please check the tutorial %s"
2110
  msgstr ""
2111
+ "Şimdilik hiç diyagramınız yok. %s e gidin -> gerekli verileri tablodan "
2112
+ "seçerek \"Diyagram ekle\" düğmesine tıklayın. Ayrıca %s öğreticiye bir bakın"
2113
 
2114
+ msgid ""
2115
+ "You need to enable ZipArchive extension in PHP config file on your server. "
2116
+ "Please, contact to your server administrator."
2117
  msgstr ""
2118
+ "Sunucunuzdaki PHP ayarlarında Ziparchive uzantısını etkinleştirmeniz "
2119
+ "gerekli. Lütfen, sunucu yöneticinizle ile iletişim kurun."
2120
 
2121
+ msgid "You will not be able to update your pro version with expired license"
2122
+ msgstr "PRO sürümünüzü süresi geçmiş lisans ile güncelleyemezsiniz"
2123
 
2124
+ msgid "Your message successfully send. We contact you soon."
2125
+ msgstr "Mesajınız başarıyla gönderildi. Size en yakın zamanda ulaşacağız."
2126
 
2127
+ msgid "Your premium support is expired in %s days"
2128
+ msgstr "Premium destek süreniz %s gün sonra bitecek"
2129
+
2130
+ msgid "Your premium support is expired in ' ~ days ~ ' days"
2131
+ msgstr "Premium destek süreniz ' ~ days ~ ' gün sonra bitecek"
2132
+
2133
+ msgid "Zero records"
2134
+ msgstr "Sıfır kayıtlar"
2135
+
2136
+ msgid "by Supsystic!"
2137
+ msgstr "supsystic tarafından!"
2138
+
2139
+ msgid "default"
2140
+ msgstr "varsayılan"
2141
+
2142
+ msgid "disable width"
2143
+ msgstr "genişliği devre dışı bırak"
2144
+
2145
+ msgid "how to create Diagrams with Data Table plugin"
2146
+ msgstr "data table eklentisi ile nasıl diyagramlar oluşturulur"
2147
+
2148
+ msgid "value"
2149
+ msgstr "değer"
2150
+
2151
+ #~ msgid "Click to rename the table and hit [Enter]"
2152
+ #~ msgstr "Tablo adını değiştirmek için tıklayın ve sonrasında [Enter] basın."
2153
 
2154
+ #~ msgid "Create a link"
2155
+ #~ msgstr "Bağlantı oluştur"
2156
 
2157
  #~ msgid "Clone Table"
2158
  #~ msgstr "Klonla"
app/templates/layout.twig CHANGED
@@ -54,29 +54,29 @@
54
  {{ environment.getDispatcher().dispatch('notices') }}
55
  {% block content %}{% endblock %}
56
 
57
- <div id="addDialog" style="display: none;" title="{{ environment.translate('Add new table') }}">
58
  <div style="min-height: 70px;">
59
  <form id="tableForm">
60
- <label for="addDialog_title">
61
  {{ environment.translate('Table title') }}
62
  </label>
63
- <input id="addDialog_title" class="supsystic-text" type="text" style="width:100%;"/>
64
- <!-- /#addDialog_title.regular-text -->
65
  <div class="row">
66
  <div class="col-xs-6">
67
- <label for="addDialog_cols">
68
  {{ environment.translate('Columns') }}
69
  </label>
70
- <input id="addDialog_cols" class="supsystic-text" type="number" value="5" min="1" max="100" style="width: 100%"/>
71
- <!-- /#addDialog_cols -->
72
  </div>
73
  <!-- /.col-xs-6 -->
74
  <div class="col-xs-6">
75
- <label for="addDialog_rows">
76
  {{ environment.translate('Rows') }}
77
  </label>
78
- <input id="addDialog_rows" class="supsystic-text" type="number" value="5" min="1" max="100" style="width: 100%"/>
79
- <!-- /#addDialog_rows -->
80
  </div>
81
  <!-- /.col-xs-6 -->
82
  </div>
@@ -89,7 +89,7 @@
89
  <!-- /#formError -->
90
  </div>
91
  </div>
92
- <!-- /#addDialog -->
93
  </div>
94
  <!-- /.supsystic-container -->
95
  </div>
54
  {{ environment.getDispatcher().dispatch('notices') }}
55
  {% block content %}{% endblock %}
56
 
57
+ <div id="dtgAddDialog" style="display: none;" title="{{ environment.translate('Add new table') }}">
58
  <div style="min-height: 70px;">
59
  <form id="tableForm">
60
+ <label for="dtgAddDialog_title">
61
  {{ environment.translate('Table title') }}
62
  </label>
63
+ <input id="dtgAddDialog_title" class="supsystic-text" type="text" style="width:100%;"/>
64
+ <!-- /#dtgAddDialog_title.regular-text -->
65
  <div class="row">
66
  <div class="col-xs-6">
67
+ <label for="dtgAddDialog_cols">
68
  {{ environment.translate('Columns') }}
69
  </label>
70
+ <input id="dtgAddDialog_cols" class="supsystic-text" type="number" value="5" min="1" max="100" style="width: 100%"/>
71
+ <!-- /#dtgAddDialog_cols -->
72
  </div>
73
  <!-- /.col-xs-6 -->
74
  <div class="col-xs-6">
75
+ <label for="dtgAddDialog_rows">
76
  {{ environment.translate('Rows') }}
77
  </label>
78
+ <input id="dtgAddDialog_rows" class="supsystic-text" type="number" value="5" min="1" max="100" style="width: 100%"/>
79
+ <!-- /#dtgAddDialog_rows -->
80
  </div>
81
  <!-- /.col-xs-6 -->
82
  </div>
89
  <!-- /#formError -->
90
  </div>
91
  </div>
92
+ <!-- /#dtgAddDialog -->
93
  </div>
94
  <!-- /.supsystic-container -->
95
  </div>
index.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: Data Tables Generator by Supsystic
5
  * Plugin URI: http://supsystic.com
6
  * Description: Create and manage beautiful data tables with custom design. No HTML knowledge is required
7
- * Version: 1.8.4
8
  * Author: supsystic.com
9
  * Author URI: http://supsystic.com
10
  */
4
  * Plugin Name: Data Tables Generator by Supsystic
5
  * Plugin URI: http://supsystic.com
6
  * Description: Create and manage beautiful data tables with custom design. No HTML knowledge is required
7
+ * Version: 1.8.5
8
  * Author: supsystic.com
9
  * Author URI: http://supsystic.com
10
  */
readme.txt CHANGED
@@ -2,7 +2,7 @@
2
  Contributors: supsystic.com
3
  Tags: csv, csv file, csv to table, excel, table, tablesorter, post, data table, table, database, html table, table generator, builder, generator, cells, area chart, bar chart, candlestick chart, canvas, chart, charting, charts, column chart, gauge chart, geo chart, google chart, google visualization api, graph, graphing, graphs, html5, line chart, pie chart, scatter chart, spreadsheet, visualisation, visualise data, visualization, visualize data
4
  Tested up to: 4.9.6
5
- Stable tag: 1.8.4
6
 
7
  Create data tables with charts and graphs. Custom design, navigation, searching and ordering functions. Export to PDF, CSV, Print. Excel spreadsheet
8
 
@@ -194,6 +194,19 @@ Important! Shortcode must be inserted in a text editor page, and not in the visu
194
 
195
  == Changelog ==
196
 
 
 
 
 
 
 
 
 
 
 
 
 
 
197
  = 1.8.4 / 30.05.2018 =
198
  * Add of option to plugin settings: Disable WP Footer Fix
199
  * Implemented automatic updating of diagrams when changing data in a table
2
  Contributors: supsystic.com
3
  Tags: csv, csv file, csv to table, excel, table, tablesorter, post, data table, table, database, html table, table generator, builder, generator, cells, area chart, bar chart, candlestick chart, canvas, chart, charting, charts, column chart, gauge chart, geo chart, google chart, google visualization api, graph, graphing, graphs, html5, line chart, pie chart, scatter chart, spreadsheet, visualisation, visualise data, visualization, visualize data
4
  Tested up to: 4.9.6
5
+ Stable tag: 1.8.5
6
 
7
  Create data tables with charts and graphs. Custom design, navigation, searching and ordering functions. Export to PDF, CSV, Print. Excel spreadsheet
8
 
194
 
195
  == Changelog ==
196
 
197
+ = 1.8.5 / 21.06.2018 =
198
+ * Added mass migration of tables
199
+ * Add caching to solve the problem of importing large tables
200
+ * Add drawing the table according to the data from the database
201
+ * Fix for Global Search
202
+ * Added Turkish translation
203
+ * Add a special parameter Fixed Table Width for mobile devices
204
+ * Add option "Export Fonts to PDF"
205
+ * Fix of creating history for new table and new table user
206
+ * Change "Insert picture" toolbar button to "Insert media"
207
+ * Minor issues fix
208
+
209
+
210
  = 1.8.4 / 30.05.2018 =
211
  * Add of option to plugin settings: Disable WP Footer Fix
212
  * Implemented automatic updating of diagrams when changing data in a table
src/SupsysticTables/Core/assets/js/core.js CHANGED
@@ -348,7 +348,7 @@ if(typeof(SDT_DATA) == 'undefined') {
348
  }
349
  });
350
  }
351
- if (searchingSettings.columnSearch) {
352
  var tds = $table.find('tbody tr:first').find('td'),
353
  ths = '';
354
 
@@ -359,7 +359,7 @@ if(typeof(SDT_DATA) == 'undefined') {
359
  if($table.find('tfoot').length == 0) {
360
  $table.append($('<tfoot>'));
361
  }
362
- $table.find('tfoot').append('<tr>' + ths + '</th>');
363
  }
364
  }
365
  }
348
  }
349
  });
350
  }
351
+ if (searchingSettings.columnSearch && $table.find('tfoot').find('input').length == 0) {
352
  var tds = $table.find('tbody tr:first').find('td'),
353
  ths = '';
354
 
359
  if($table.find('tfoot').length == 0) {
360
  $table.append($('<tfoot>'));
361
  }
362
+ $table.find('tfoot').append('<tr>' + ths + '</tr>');
363
  }
364
  }
365
  }
src/SupsysticTables/Core/assets/js/create-table.js CHANGED
@@ -6,10 +6,10 @@
6
 
7
  var $createBtn = $('.create-table'),
8
  $error = $('#formError'),
9
- $input = $('#addDialog_title'),
10
- $cols = $('#addDialog_cols'),
11
- $rows = $('#addDialog_rows'),
12
- $dialog = $('#addDialog').dialog({
13
  width: 480,
14
  modal: true,
15
  autoOpen: false,
6
 
7
  var $createBtn = $('.create-table'),
8
  $error = $('#formError'),
9
+ $input = $('#dtgAddDialog_title'),
10
+ $cols = $('#dtgAddDialog_cols'),
11
+ $rows = $('#dtgAddDialog_rows'),
12
+ $dialog = $('#dtgAddDialog').dialog({
13
  width: 480,
14
  modal: true,
15
  autoOpen: false,
src/SupsysticTables/Promo/Module.php CHANGED
@@ -14,8 +14,10 @@ class SupsysticTables_Promo_Module extends SupsysticTables_Core_BaseModule
14
  {
15
  parent::onInit();
16
 
17
- add_action('admin_init', array($this, 'loadAdminPromoAssets'));
18
- add_action('wp_ajax_supsystic-tables-tutorial-close', array($this, 'endTutorial'));
 
 
19
  }
20
 
21
  public function loadAdminPromoAssets() {
14
  {
15
  parent::onInit();
16
 
17
+ if(is_admin()) {
18
+ add_action('admin_init', array($this, 'loadAdminPromoAssets'));
19
+ add_action('wp_ajax_supsystic-tables-tutorial-close', array($this, 'endTutorial'));
20
+ }
21
  }
22
 
23
  public function loadAdminPromoAssets() {
src/SupsysticTables/Promo/assets/js/tutorial.js CHANGED
@@ -156,7 +156,6 @@
156
  'step-0': function() {
157
  pointers = this;
158
  $('#toplevel_page_supsystic-tables').on('click', 'a', function(event) {
159
- event.preventDefault();
160
  pointers.current.pointer('close');
161
  });
162
  },
156
  'step-0': function() {
157
  pointers = this;
158
  $('#toplevel_page_supsystic-tables').on('click', 'a', function(event) {
 
159
  pointers.current.pointer('close');
160
  });
161
  },
src/SupsysticTables/Tables/Controller.php CHANGED
@@ -76,7 +76,10 @@ class SupsysticTables_Tables_Controller extends SupsysticTables_Core_BaseControl
76
  $id = $this->isAjax() ? $request->post->get('id') : $request->query->get('id');
77
 
78
  try {
79
- $this->getModel('tables')->removeById($id);
 
 
 
80
  } catch (Exception $e) {
81
  if ($this->isAjax()) {
82
  return $this->ajaxError($e->getMessage());
@@ -429,7 +432,7 @@ class SupsysticTables_Tables_Controller extends SupsysticTables_Core_BaseControl
429
 
430
  $tableId = $tableModel->add(
431
  array(
432
- 'title' => $title,
433
  'settings' => serialize($clonedTable->settings),
434
  'meta' => serialize($clonedTable->meta)
435
  )
76
  $id = $this->isAjax() ? $request->post->get('id') : $request->query->get('id');
77
 
78
  try {
79
+ $ids = is_array($id) ? $id : array($id);
80
+ foreach ($ids as $i => $id) {
81
+ $this->getModel('tables')->removeById($id);
82
+ }
83
  } catch (Exception $e) {
84
  if ($this->isAjax()) {
85
  return $this->ajaxError($e->getMessage());
432
 
433
  $tableId = $tableModel->add(
434
  array(
435
+ 'title' => $title,
436
  'settings' => serialize($clonedTable->settings),
437
  'meta' => serialize($clonedTable->meta)
438
  )
src/SupsysticTables/Tables/Model/History.php CHANGED
@@ -61,37 +61,40 @@ class SupsysticTables_Tables_Model_History extends SupsysticTables_Core_BaseMode
61
  $needCreate = empty($period);
62
  $period = !empty($period) ? $period : $today;
63
  $periodFormat = '';
 
64
  $include = false;
65
 
66
- for($i = 0; $i < count($history); $i++) {
67
- $created = date_create($history[$i]->created);
68
-
69
- switch($settings['history']['period']) {
70
- case 'day':
71
- $format = 'Y-m-d';
72
- break;
73
- case 'week':
74
- $format = 'W';
75
- break;
76
- case 'month':
77
- $format = 'Y-m';
78
- break;
79
- case 'year':
80
- $format = 'Y';
81
- break;
82
- default:
83
- $format = '';
 
 
 
 
 
 
 
 
84
  break;
 
85
  }
86
- $periodFormat = date_format($period, $format);
87
- $include = $periodFormat == date_format($created, $format);
88
  $needCreate = date_format($period, $format) == date_format($today, $format);
89
-
90
- if($include) {
91
- // It is a table which has included for needed period
92
- $historyTable = $history[$i];
93
- break;
94
- }
95
  }
96
  if(!$include && !$needCreate) {
97
  throw new RuntimeException(sprintf('The table with ID %d not exists for %s period.', $tableId, $periodFormat));
61
  $needCreate = empty($period);
62
  $period = !empty($period) ? $period : $today;
63
  $periodFormat = '';
64
+ $format = '';
65
  $include = false;
66
 
67
+ switch($settings['history']['period']) {
68
+ case 'day':
69
+ $format = 'Y-m-d';
70
+ break;
71
+ case 'week':
72
+ $format = 'W';
73
+ break;
74
+ case 'month':
75
+ $format = 'Y-m';
76
+ break;
77
+ case 'year':
78
+ $format = 'Y';
79
+ break;
80
+ default:
81
+ break;
82
+ }
83
+ if(!empty($history)) {
84
+ for($i = 0; $i < count($history); $i++) {
85
+ $created = date_create($history[$i]->created);
86
+ $periodFormat = date_format($period, $format);
87
+ $include = $periodFormat == date_format($created, $format);
88
+ $needCreate = date_format($period, $format) == date_format($today, $format);
89
+
90
+ if($include) {
91
+ // It is a table which has included for needed period
92
+ $historyTable = $history[$i];
93
  break;
94
+ }
95
  }
96
+ } else {
 
97
  $needCreate = date_format($period, $format) == date_format($today, $format);
 
 
 
 
 
 
98
  }
99
  if(!$include && !$needCreate) {
100
  throw new RuntimeException(sprintf('The table with ID %d not exists for %s period.', $tableId, $periodFormat));
src/SupsysticTables/Tables/Model/Tables.php CHANGED
@@ -453,8 +453,15 @@ class SupsysticTables_Tables_Model_Tables extends SupsysticTables_Core_BaseModel
453
 
454
  $table->view_id = $table->id . '_' . mt_rand(1, 99999);
455
  $table->columns = $this->getColumns($table->id);
456
- $table->rows = $this->getRows($table->id);
457
  $table->settings = unserialize(htmlspecialchars_decode($table->settings, ENT_QUOTES));
 
 
 
 
 
 
 
 
458
 
459
  // rev 41
460
  if (property_exists($table, 'meta')) {
453
 
454
  $table->view_id = $table->id . '_' . mt_rand(1, 99999);
455
  $table->columns = $this->getColumns($table->id);
 
456
  $table->settings = unserialize(htmlspecialchars_decode($table->settings, ENT_QUOTES));
457
+ $source = ($this->environment->isPro() && isset($table->settings['source']) ? $table->settings['source'] : '');
458
+ if(isset($source['database']) && $source['database'] == 'on' && isset($source['dbTable'])){
459
+ $core = $this->environment->getModule('core');
460
+ $dbTableModel = $core->getModelsFactory()->get('DBTables', 'tables');
461
+ $table->rows = $dbTableModel->getRows($source['dbTable'], isset($source['dbFields']) ? $source['dbFields'] : array());
462
+ } else {
463
+ $table->rows = $this->getRows($table->id);
464
+ }
465
 
466
  // rev 41
467
  if (property_exists($table, 'meta')) {
src/SupsysticTables/Tables/Module.php CHANGED
@@ -174,7 +174,16 @@ class SupsysticTables_Tables_Module extends SupsysticTables_Core_BaseModule
174
 
175
  if(!empty($postIds)) {
176
  $idsStr = implode(',',array_keys($postIds));
177
- $where .= " OR {$wpdb->prefix}posts.ID IN ({$idsStr}) ";
 
 
 
 
 
 
 
 
 
178
  }
179
  }
180
  }
@@ -245,6 +254,7 @@ class SupsysticTables_Tables_Module extends SupsysticTables_Core_BaseModule
245
  }
246
  }
247
  }
 
248
  $lightbox = ($environment->isPro() && isset($table->settings['styling']['lightboxImg']) && $table->settings['styling']['lightboxImg'] == 'on');
249
  if($this->isSingleCell) {
250
  // Unset unneeded elements and features
@@ -625,6 +635,13 @@ class SupsysticTables_Tables_Module extends SupsysticTables_Core_BaseModule
625
  ->setVersion($version)
626
  ->addDependency('jquery-ui-dialog')
627
  );
 
 
 
 
 
 
 
628
  }
629
 
630
  if ($environment->isAction('view')) {
@@ -870,7 +887,8 @@ class SupsysticTables_Tables_Module extends SupsysticTables_Core_BaseModule
870
  $ui->add(
871
  $ui->createStyle('supsystic-tables-handsontable-css')
872
  ->setHookName($hookName)
873
- ->setExternalSource('https://cdnjs.cloudflare.com/ajax/libs/handsontable/0.31.1/handsontable.full.min.css')
 
874
  ->setCachingAllowed(true)
875
  ->setVersion('0.31.1')
876
  );
@@ -885,7 +903,8 @@ class SupsysticTables_Tables_Module extends SupsysticTables_Core_BaseModule
885
  $ui->add(
886
  $ui->createScript('supsystic-tables-handsontable-js')
887
  ->setHookName($hookName)
888
- ->setExternalSource('https://cdnjs.cloudflare.com/ajax/libs/handsontable/0.31.1/handsontable.full.min.js')
 
889
  ->setCachingAllowed(true)
890
  ->setVersion('0.31.1')
891
  );
174
 
175
  if(!empty($postIds)) {
176
  $idsStr = implode(',',array_keys($postIds));
177
+
178
+ $exact = get_query_var( 'exact' );
179
+ $n = ( empty( $exact ) ) ? '%' : '';
180
+ $where = $wpdb->remove_placeholder_escape( $where );
181
+
182
+ $old_or = "OR ({$wpdb->posts}.post_content LIKE '{$n}{$tokens[0]}{$n}')";
183
+ $new_or = $old_or . " OR {$wpdb->posts}.ID IN ({$idsStr}) ";
184
+ $where = str_replace( $old_or, $new_or, $where );
185
+
186
+ $where = $wpdb->add_placeholder_escape( $where );
187
  }
188
  }
189
  }
254
  }
255
  }
256
  }
257
+
258
  $lightbox = ($environment->isPro() && isset($table->settings['styling']['lightboxImg']) && $table->settings['styling']['lightboxImg'] == 'on');
259
  if($this->isSingleCell) {
260
  // Unset unneeded elements and features
635
  ->setVersion($version)
636
  ->addDependency('jquery-ui-dialog')
637
  );
638
+ $ui->add(
639
+ $ui->createStyle('supsystic-tables-tables-index-css')
640
+ ->setHookName($hookName)
641
+ ->setModuleSource($this, 'css/tables.index.css')
642
+ ->setCachingAllowed($cachingAllowed)
643
+ ->setVersion($version)
644
+ );
645
  }
646
 
647
  if ($environment->isAction('view')) {
887
  $ui->add(
888
  $ui->createStyle('supsystic-tables-handsontable-css')
889
  ->setHookName($hookName)
890
+ //->setExternalSource('https://cdnjs.cloudflare.com/ajax/libs/handsontable/0.31.1/handsontable.full.min.css')
891
+ ->setModuleSource($this, 'libraries/handsontable/handsontable.full.min.css')
892
  ->setCachingAllowed(true)
893
  ->setVersion('0.31.1')
894
  );
903
  $ui->add(
904
  $ui->createScript('supsystic-tables-handsontable-js')
905
  ->setHookName($hookName)
906
+ //->setExternalSource('https://cdnjs.cloudflare.com/ajax/libs/handsontable/0.31.1/handsontable.full.min.js')
907
+ ->setModuleSource($this, 'libraries/handsontable/handsontable.full.min.js')
908
  ->setCachingAllowed(true)
909
  ->setVersion('0.31.1')
910
  );
src/SupsysticTables/Tables/assets/css/tables.editor.css CHANGED
@@ -395,3 +395,9 @@ i.toolbar-word-wrap.word-wrap-visible {
395
  border: 1px solid #000 !important;
396
  color: #000 !important;
397
  }
 
 
 
 
 
 
395
  border: 1px solid #000 !important;
396
  color: #000 !important;
397
  }
398
+ .ui-autocomplete {
399
+ max-height: 200px;
400
+ overflow-y: auto;
401
+ overflow-x: hidden;
402
+ padding-right: 20px;
403
+ }
src/SupsysticTables/Tables/assets/css/tables.index.css ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .dataTables_filter {
2
+ float: left !important;
3
+ }
4
+ .dt_rigth {
5
+ float: right !important;
6
+ text-align: right !important;
7
+ }
8
+ .dataTables_paginate {
9
+ float: right !important;
10
+ text-align: left !important;
11
+ width: 40%;
12
+ }
13
+ .dataTables_info {
14
+ padding: 0.4em !important;
15
+ }
16
+ .current {
17
+ font-weight: 700;
18
+ }
19
+ .paginate_links {
20
+ box-sizing: border-box;
21
+ display: inline-block;
22
+ min-width: 1em;
23
+ padding: 0.5em;
24
+ margin-left: 2px;
25
+ text-align: center;
26
+ text-decoration: none !important;
27
+ cursor: pointer;
28
+ color: #333 !important;
29
+ border: 1px solid transparent;
30
+ border-radius: 2px;
31
+ }
32
+ .dataTables_scrollBody {
33
+ border: 0 !important;
34
+ }
35
+ .sorting_disabled {
36
+ font-family: Verdana,Arial,sans-serif;
37
+ font-size: 14px;
38
+ font-weight: 700;
39
+ }
40
+ .dt-center {
41
+ text-align: center;
42
+ }
43
+ td.dt-right {
44
+ text-align: right;
45
+ }
46
+ .group_button {
47
+ margin: 8px !important;
48
+ }
src/SupsysticTables/Tables/assets/css/tables.shortcode.css CHANGED
@@ -141,6 +141,9 @@ table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child:before
141
  table.dataTable tbody th, table.dataTable tbody td {
142
  border: none;
143
  }
 
 
 
144
  /* Add .no-border class for disable table borders at all */
145
  table.dataTable.no-border.no-footer, table.dataTable.no-border th, table.dataTable.no-border td {
146
  border-top: none;
141
  table.dataTable tbody th, table.dataTable tbody td {
142
  border: none;
143
  }
144
+ table.dataTable caption {
145
+ padding: 0 !important;
146
+ }
147
  /* Add .no-border class for disable table borders at all */
148
  table.dataTable.no-border.no-footer, table.dataTable.no-border th, table.dataTable.no-border td {
149
  border-top: none;
src/SupsysticTables/Tables/assets/js/editor/tables.editor.toolbar.js CHANGED
@@ -225,35 +225,39 @@ var g_stbCellBgColorTimeoutSet = false,
225
  });
226
  }
227
  },
228
- picture: function (event) {
229
- var editor = this.getEditor(),
 
230
  selection = editor.getSelectedRange(),
231
  highlighted = selection === undefined ? { col: 0, row: 0 } : selection.highlight,
232
  url,
233
  media;
234
 
235
  if (event.ctrlKey) {
236
- url = prompt('Enter URL to the picture:', 'http://');
 
237
  if (null === url) {
238
  return;
239
  }
240
- this.getEditor().setDataAtCell(highlighted.row, highlighted.col, '<img src="' + url + '"/>');
241
  return;
242
  }
243
 
244
  if (typeof media === "undefined") {
245
-
246
  media = window.wp.media({
247
- title: 'Choose images',
248
  button: {
249
- text: 'Choose images'
250
  },
251
  multiple: false
252
  });
253
 
254
  media.on('select', function () {
255
- attachment = media.state().get('selection').first().toJSON();
256
- editor.setDataAtCell(highlighted.row, highlighted.col, '<img src="' + attachment.url + '"/>');
 
 
 
257
  });
258
  }
259
 
@@ -571,6 +575,36 @@ var g_stbCellBgColorTimeoutSet = false,
571
 
572
  return text;
573
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
574
  Toolbar.prototype.setFormat = function (formatType, format) {
575
  var tablesModel = app.Models.Tables,
576
  editor = this.getEditor(),
225
  });
226
  }
227
  },
228
+ media: function (event) {
229
+ var self = this,
230
+ editor = this.getEditor(),
231
  selection = editor.getSelectedRange(),
232
  highlighted = selection === undefined ? { col: 0, row: 0 } : selection.highlight,
233
  url,
234
  media;
235
 
236
  if (event.ctrlKey) {
237
+ url = prompt('Enter URL of image file:', 'http://');
238
+
239
  if (null === url) {
240
  return;
241
  }
242
+ this.getEditor().setDataAtCell(highlighted.row, highlighted.col, this.getHtmlForAttachment({ url: url, type: 'image' }));
243
  return;
244
  }
245
 
246
  if (typeof media === "undefined") {
 
247
  media = window.wp.media({
248
+ title: 'Choose Media File',
249
  button: {
250
+ text: 'Select'
251
  },
252
  multiple: false
253
  });
254
 
255
  media.on('select', function () {
256
+ var attachment = media.state().get('selection').first().toJSON();
257
+
258
+ if(attachment && attachment.url) {
259
+ editor.setDataAtCell(highlighted.row, highlighted.col, self.getHtmlForAttachment(attachment));
260
+ }
261
  });
262
  }
263
 
575
 
576
  return text;
577
  };
578
+ Toolbar.prototype.getHtmlForAttachment = function(attachment) {
579
+ var content = attachment.url;
580
+
581
+ switch(attachment.type) {
582
+ case 'image':
583
+ content = '<img src="' + attachment.url + '" />';
584
+ break;
585
+ case 'video':
586
+ content = '<video controls>';
587
+ content += '<source src="' + attachment.url + '" ' +
588
+ (typeof attachment.mime != 'undefined' ? 'type="' + attachment.mime + '"' : '') + '>';
589
+ content += '</video>';
590
+ break;
591
+ case 'audio':
592
+ content = '<audio controls>';
593
+ content += '<source src="' + attachment.url + '" ' +
594
+ (typeof attachment.mime != 'undefined' ? 'type="' + attachment.mime + '"' : '') + '>';
595
+ content += '</audio>';
596
+ break;
597
+ case 'application':
598
+ content = '<a href="' + attachment.url + '">';
599
+ content += (typeof attachment.title != 'undefined' ? attachment.title : attachment.url);
600
+ content += '</a>';
601
+ break;
602
+ default:
603
+ break;
604
+ }
605
+
606
+ return content;
607
+ };
608
  Toolbar.prototype.setFormat = function (formatType, format) {
609
  var tablesModel = app.Models.Tables,
610
  editor = this.getEditor(),
src/SupsysticTables/Tables/assets/js/tables.index.js CHANGED
@@ -1,55 +1,168 @@
1
  (function ($, app) {
2
- $(document).ready(function () {
3
- var $tables = $('#tables');
4
-
5
- $tables.DataTable({
6
- info: false,
7
- lengthChange: false,
8
- scrollX: true,
9
- columnDefs: [
10
- { "orderable": false, "targets": [1, 2, 3, 4, 5] }
11
- ],
12
- fnInitComplete: function () {
13
- $('.paginate_button').removeClass('paginate_button').addClass('button button-small');
14
- }
15
- });
16
-
17
- $(document).on('click', '.delete-table', function (e) {
18
- e.preventDefault();
19
-
20
- if (!confirm('Are you sure?')) {
21
- return;
22
- }
23
- var $btn = $(this);
24
-
25
- $btn.find('i').removeClass('fa-trash-o').addClass('fa-spin fa-circle-o-notch');
26
-
27
- app.request({
28
- module: 'tables',
29
- action: 'remove'
30
- }, {
31
- id: parseInt($btn.parents('tr').data('table-id'))
32
- }).done(function () {
33
- $btn.parents('tr').fadeOut(function () {
34
- $(this).remove();
35
-
36
- if ($tables.find('tr').length < 4) {
37
- $tables.find('tr.empty').fadeIn();
38
- }
39
- });
40
- }).fail(function (error) {
41
- $btn.find('i')
42
- .removeClass('fa-spin fa-circle-o-notch')
43
- .addClass('fa-trash-o');
44
-
45
- alert(error);
46
- });
47
-
48
- return false;
49
- });
50
-
51
- $('.shortcode').on('click', function () { $(this).select() });
52
-
53
- });
54
-
55
- }(window.jQuery, window.supsystic.Tables));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  (function ($, app) {
2
+ $(document).ready(function () {
3
+ var $tables = $('#tables'),
4
+ tableList = $tables.DataTable({
5
+ info: true,
6
+ scrollX: true,
7
+ pagingType: 'full_numbers',
8
+ language: {
9
+ search: '',
10
+ searchPlaceholder: 'Search',
11
+ lengthMenu: '<select>'+
12
+ '<option value="10">10</option>'+
13
+ '<option value="50">50</option>'+
14
+ '<option value="200">200</option>'+
15
+ '<option value="1000">1000</option>'+
16
+ '</select>'
17
+ },
18
+ dom: '<"top"f><"clear"><"dt_rigth"il><"dt_left"p>rt',
19
+ columnDefs: [
20
+ { "orderable": false, "targets": [0, 4, 5, 6] },
21
+ { "className": "dt-right", "targets": [0, 1] },
22
+ { "className": "dt-center", "targets": [3, 6] }
23
+ ],
24
+ order: [[1, 'asc']],
25
+ fnInitComplete: function () {
26
+ setCustomStyle();
27
+ setCheckboxesClick();
28
+ }
29
+ });
30
+
31
+ tableList.on('draw', function () {
32
+ setCustomStyle();
33
+ controlCheckboxes($('.icheckbox_minimal'), false);
34
+ setCheckboxesClick();
35
+ setGroupBtn();
36
+ });
37
+ tableList.on('search', function () {
38
+ setCustomStyle();
39
+ });
40
+
41
+ function setCustomStyle() {
42
+ var info = $('.dataTables_info');
43
+
44
+ info.text(info.text().replace('Showing', 'View').replace('to', '-').replace(' entries', ' '));
45
+ $('.paginate_button').removeClass('paginate_button').addClass('paginate_links');
46
+ $('#tables_first').empty().append($('<i>').addClass('fa fa-angle-double-left'));
47
+ $('#tables_last').empty().append($('<i>').addClass('fa fa-angle-double-right'));
48
+ $('#tables_previous').empty().append($('<i>').addClass('fa fa-angle-left'));
49
+ $('#tables_next').empty().append($('<i>').addClass('fa fa-angle-right'));
50
+ }
51
+ function setGroupBtn() {
52
+ var checked = $('.icheckbox_minimal').filter('.checked');
53
+
54
+ if (checked && checked.length > 0) {
55
+ $('#delete-group').removeAttr('disabled');
56
+ $('#export-group').removeAttr('disabled');
57
+ } else {
58
+ $('#delete-group').attr('disabled', 'disabled');
59
+ $('#export-group').attr('disabled', 'disabled');
60
+ }
61
+ }
62
+
63
+ function setCheckboxesClick() {
64
+ $('.iCheck-helper').off('click.group').on('click.group', function() {
65
+ var icheckbox = $(this).closest('.icheckbox_minimal'),
66
+ checked = icheckbox.attr('class').indexOf('checked') >= 0,
67
+ id = icheckbox.find('input').attr('id')
68
+
69
+ if (id == 'check_all') {
70
+ controlCheckboxes($('.icheckbox_minimal'), checked);
71
+ } else if(!checked) {
72
+ controlCheckboxes($('.icheckbox_minimal').has('#check_all'), false);
73
+ }
74
+ setGroupBtn();
75
+ });
76
+ }
77
+ function controlCheckboxes(obj, check) {
78
+ if(check) {
79
+ obj.addClass('checked').find('input').attr('checked','checked');
80
+ } else {
81
+ obj.removeClass('checked').find('input').removeAttr('checked');
82
+ }
83
+ }
84
+
85
+ $(document).on('click', '.delete-table', function (e) {
86
+ e.preventDefault();
87
+
88
+ if (!confirm('Are you sure?')) {
89
+ return;
90
+ }
91
+ var $btn = $(this);
92
+
93
+ $btn.find('i').removeClass('fa-trash-o').addClass('fa-spin fa-circle-o-notch');
94
+ app.request({
95
+ module: 'tables',
96
+ action: 'remove'
97
+ }, {
98
+ id: parseInt($btn.parents('tr').data('table-id'))
99
+ }).done(function () {
100
+ $btn.parents('tr').fadeOut(function () {
101
+ $(this).remove();
102
+ if ($tables.find('tr').length < 4) {
103
+ $tables.find('tr.empty').fadeIn();
104
+ }
105
+ });
106
+ }).fail(function (error) {
107
+ $btn.find('i').removeClass('fa-spin fa-circle-o-notch').addClass('fa-trash-o');
108
+ alert(error);
109
+ });
110
+ return false;
111
+ });
112
+
113
+ $('#delete-group').on('click', function() {
114
+ if (!confirm('Are you sure?')) {
115
+ return;
116
+ }
117
+ var checks = $('.icheckbox_minimal:not(:has(#check_all))').filter('.checked'),
118
+ ids = [];
119
+
120
+ for (var i = 0; i < checks.length; i++) {
121
+ ids.push(parseInt(checks.eq(i).find('input').data('table-id')));
122
+ }
123
+
124
+ app.request({
125
+ module: 'tables',
126
+ action: 'remove'
127
+ }, {
128
+ id: ids
129
+ }).done(function () {
130
+ for (i = 0; i < checks.length; i++) {
131
+ checks.eq(i).parents('tr').fadeOut(function () {
132
+ $(this).remove();
133
+ if ($tables.find('tr').length < 4) {
134
+ $tables.find('tr.empty').fadeIn();
135
+ }
136
+ });
137
+ }
138
+ }).fail(function (error) {
139
+ alert(error);
140
+ });
141
+ return false;
142
+ });
143
+
144
+ $('.shortcode').on('click', function () { $(this).select() });
145
+
146
+ var $proNotify = $('.pro-notify');
147
+ $proNotify.each(function() {
148
+ var $this = $(this);
149
+
150
+ $($this.data('dialog')).dialog({
151
+ autoOpen: false,
152
+ title: $this.data('dtitle'),
153
+ width: $this.data('dwidth'),
154
+ modal: true,
155
+ buttons: {
156
+ Close: function () {
157
+ $(this).dialog('close');
158
+ }
159
+ }
160
+ })
161
+ });
162
+ $proNotify.on('click', function (e) {
163
+ e.preventDefault();
164
+ $($(this).data('dialog')).dialog('open');
165
+ return false;
166
+ });
167
+ });
168
+ }(window.jQuery, window.supsystic.Tables));
src/SupsysticTables/Tables/assets/js/tables.shortcode.js CHANGED
@@ -6,6 +6,16 @@
6
  firstTableWrapper = '',
7
  firstTableFirstRow = '';
8
 
 
 
 
 
 
 
 
 
 
 
9
  $('.supsystic-table').each(function () {
10
  app.initializeTable(this, app.showTable, function(table) {
11
  // This is used when table is hidden in tabs and can't calculate itself width to adjust on small screens
@@ -54,7 +64,10 @@
54
  app.getTableInstanceById(table.data('id')).fnAdjustColumnSizing();
55
  }, 350);
56
  }
57
- if(table.data('searching-settings').columnSearch == 'on') setColumnSearch(table);
 
 
 
58
  });
59
  });
60
  });
@@ -64,6 +77,9 @@
64
  tfoot = $('#supsystic-table-' + table.data('view-id')).find('div .dataTables_scrollFootInner table '),
65
  inputs = (tfoot.length == 0 ? dtable.find('tfoot tr:last input') : tfoot.eq(0).find('tfoot tr:last input'));
66
 
 
 
 
67
  dtable.DataTable().columns().every( function (colIdx) {
68
  var that = this;
69
  inputs.eq(colIdx).on('keyup change', function () {
@@ -74,6 +90,35 @@
74
  }
75
  });
76
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
77
  }
78
 
79
  function getOriginalImageSizes(img) {
6
  firstTableWrapper = '',
7
  firstTableFirstRow = '';
8
 
9
+ if($(window).width() <= 991) {
10
+ $('div .supsystic-tables-wrap').each(function () {
11
+ ssDiv = $(this);
12
+ var widthMobile = ssDiv.data('table-width-mobile');
13
+ if(typeof(widthMobile) != 'undefined') {
14
+ ssDiv.css('display', (widthMobile == 'auto' ? 'inline-block' : '')).css('width', widthMobile);
15
+ }
16
+ });
17
+ }
18
+
19
  $('.supsystic-table').each(function () {
20
  app.initializeTable(this, app.showTable, function(table) {
21
  // This is used when table is hidden in tabs and can't calculate itself width to adjust on small screens
64
  app.getTableInstanceById(table.data('id')).fnAdjustColumnSizing();
65
  }, 350);
66
  }
67
+ var searching = table.data('searching-settings');
68
+ if(searching && ("columnSearch" in searching) && searching.columnSearch == 'on') {
69
+ setColumnSearch(table);
70
+ }
71
  });
72
  });
73
  });
77
  tfoot = $('#supsystic-table-' + table.data('view-id')).find('div .dataTables_scrollFootInner table '),
78
  inputs = (tfoot.length == 0 ? dtable.find('tfoot tr:last input') : tfoot.eq(0).find('tfoot tr:last input'));
79
 
80
+ if(inputs.length == 0) {
81
+ return;
82
+ }
83
  dtable.DataTable().columns().every( function (colIdx) {
84
  var that = this;
85
  inputs.eq(colIdx).on('keyup change', function () {
90
  }
91
  });
92
  });
93
+ var div = $('#supsystic-table-' + table.data('view-id')),
94
+ leftTable = div.find('.DTFC_LeftBodyWrapper').find('table'),
95
+ rightTable = div.find('.DTFC_RightBodyWrapper').find('table');
96
+
97
+ if(leftTable.length) {
98
+ var leftFoot = div.find('.DTFC_LeftFootWrapper').find('table'),
99
+ leftInputs = (leftFoot.length == 0 ? leftTable.find('tfoot tr:last input') : leftFoot.eq(0).find('tfoot tr:last input'));
100
+
101
+ leftInputs.each( function (colIdx) {
102
+ setCopyEvents(this, inputs.eq(colIdx).data('events'));
103
+ });
104
+ }
105
+ if(rightTable.length) {
106
+ var rightFoot = div.find('.DTFC_RightFootWrapper').find('table'),
107
+ rightInputs = (rightFoot.length == 0 ? rightTable.find('tfoot tr:last input') : rightFoot.eq(0).find('tfoot tr:last input')),
108
+ cntRight = rightInputs.length,
109
+ cntInputs = inputs.length;
110
+
111
+ rightInputs.each( function (colIdx) {
112
+ setCopyEvents(this, inputs.eq(cntInputs - cntRight + colIdx).data('events'));
113
+ });
114
+ }
115
+ }
116
+ function setCopyEvents(obj, events) {
117
+ $.each(events, function (event, handlers) {
118
+ $.each(handlers, function (j, handler) {
119
+ $(obj).bind(event, handler);
120
+ });
121
+ });
122
  }
123
 
124
  function getOriginalImageSizes(img) {
src/SupsysticTables/Tables/assets/js/tables.view.js CHANGED
@@ -445,6 +445,15 @@ var g_stbCopyPasteColsCount = [];
445
  }
446
  });
447
 
 
 
 
 
 
 
 
 
 
448
  // Show results only - Show empty table
449
  $('input[name="searching[resultOnly]"]').on('change ifChanged', function() {
450
  if($(this).is(':checked')) {
445
  }
446
  });
447
 
448
+ // Fixed Table Width Mobile - Width Type
449
+ $('input[name="tableWidthMobileType"]').on('ifChecked', function() {
450
+ if($(this).val() == 'auto') {
451
+ $('input[name="tableWidthMobile"]').fadeOut(300);
452
+ } else {
453
+ $('input[name="tableWidthMobile"]').fadeIn(300);
454
+ }
455
+ });
456
+
457
  // Show results only - Show empty table
458
  $('input[name="searching[resultOnly]"]').on('change ifChanged', function() {
459
  if($(this).is(':checked')) {
src/SupsysticTables/Tables/assets/libraries/handsontable/handsontable.full.min.css CHANGED
@@ -1,15 +1,34 @@
1
  @charset "UTF-8";/*!
2
- * Handsontable 0.15.0-beta2
3
- * Handsontable is a JavaScript library for editable tables with basic copy-paste compatibility with Excel and Google Docs
4
- *
5
- * Copyright 2015 Handsoncode sp. z o.o. <hello@handsontable.com>
6
- * Licensed under the MIT license.
7
- * http://handsontable.com/
8
- *
9
- * Date: Mon May 04 2015 10:11:13 GMT+0200 (CEST)
10
- */.handsontable{position:relative}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable.htAutoColumnSize{visibility:hidden;left:0;position:absolute;top:0}.handsontable .wtHider{width:0}.handsontable .wtSpreader{position:relative;width:0;height:auto}.handsontable table,.handsontable tbody,.handsontable thead,.handsontable td,.handsontable th,.handsontable input,.handsontable textarea,.handsontable div{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:initial}.handsontable table.htCore{border-collapse:separate;border-spacing:0;margin:0;border-width:0;table-layout:fixed;width:0;outline-width:0;max-width:none;max-height:none}.handsontable col{width:50px}.handsontable col.rowHeader{width:50px}.handsontable th,.handsontable td{border-right:1px solid #CCC;border-bottom:1px solid #CCC;height:22px;empty-cells:show;line-height:21px;padding:0 4px 0 4px;background-color:#FFF;vertical-align:top;overflow:hidden;outline-width:0;white-space:pre-line}.handsontable td.htInvalid{background-color:#ff4c42!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable th:last-child{border-right:1px solid #CCC;border-bottom:1px solid #CCC}.handsontable tr:first-child th.htNoFrame,.handsontable th:first-child.htNoFrame,.handsontable th.htNoFrame{border-left-width:0;background-color:white;border-color:#FFF}.handsontable th:first-child,.handsontable td:first-of-type,.handsontable thead tr th:nth-child(2),.handsontable .htNoFrame+th,.handsontable .htNoFrame+td{border-left:1px solid #CCC}.handsontable tr:first-child th,.handsontable tr:first-child td{border-top:1px solid #CCC}.ht_master:not(.innerBorderLeft) ~ .handsontable tbody tr th,.ht_master:not(.innerBorderLeft) ~ .handsontable:not(.ht_clone_top) thead tr th:first-child{border-right-width:0}.ht_master:not(.innerBorderTop) thead tr:last-child th,.ht_master:not(.innerBorderTop) ~ .handsontable thead tr:last-child th,.ht_master:not(.innerBorderTop) thead tr.lastChild th,.ht_master:not(.innerBorderTop) ~ .handsontable thead tr.lastChild th{border-bottom-width:0}.handsontable th{background-color:#EEE;color:#222;text-align:center;font-weight:normal;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#CCC}.handsontable thead th .relative{padding:2px 4px}.handsontable .manualColumnMover{position:fixed;left:0;top:0;background-color:transparent;width:5px;height:25px;z-index:999;cursor:move}.handsontable .manualRowMover{position:fixed;left:-4px;top:0;background-color:transparent;height:5px;width:50px;z-index:999;cursor:move}.handsontable .manualColumnMoverGuide,.handsontable .manualRowMoverGuide{position:fixed;left:0;top:0;background-color:#CCC;width:25px;height:25px;opacity:.7;display:none}.handsontable .manualColumnMoverGuide.active,.handsontable .manualRowMoverGuide.active{display:block}.handsontable .manualColumnMover:hover,.handsontable .manualColumnMover.active,.handsontable .manualRowMover:hover,.handsontable .manualRowMover.active{background-color:#88F}.handsontable .manualColumnResizer{position:fixed;top:0;cursor:col-resize;z-index:110;width:5px;height:25px}.handsontable .manualRowResizer{position:fixed;left:0;cursor:row-resize;z-index:110;height:5px;width:50px}.handsontable .manualColumnResizer:hover,.handsontable .manualColumnResizer.active,.handsontable .manualRowResizer:hover,.handsontable .manualRowResizer.active{background-color:#AAB}.handsontable .manualColumnResizerGuide{position:fixed;right:0;top:0;background-color:#AAB;display:none;width:0;border-right:1px dashed #777;margin-left:5px}.handsontable .manualRowResizerGuide{position:fixed;left:0;bottom:0;background-color:#AAB;display:none;height:0;border-bottom:1px dashed #777;margin-top:5px}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block}.handsontable .columnSorting:hover{text-decoration:underline;cursor:pointer}.handsontable .wtBorder{position:absolute;font-size:0}.handsontable .wtBorder.hidden{display:none!important}.handsontable td.area{background:-moz-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(181,209,255,0.34)),color-stop(100%,rgba(181,209,255,0.34)));background:-webkit-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-o-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-ms-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:linear-gradient(to bottom,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#57b5d1ff',endColorstr='#57b5d1ff',GradientType=0);background-color:#fff}.handsontable .wtBorder.corner{font-size:0;cursor:crosshair}.handsontable .htBorder.htFillBorder{background:red;width:1px;height:1px}.handsontableInput{border:0;outline-width:0;margin:0;padding:1px 5px 0 5px;font-family:inherit;line-height:21px;font-size:inherit;box-shadow:0 0 0 2px #5292f7 inset;resize:none;display:inline-block;color:#000;border-radius:0;background-color:#FFF}.handsontableInputHolder{position:absolute;top:0;left:0;z-index:100}.htSelectEditor{-webkit-appearance:menulist-button!important;position:absolute;width:auto}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{content:'▶';color:#777;position:absolute;right:5px}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable .htAutocompleteArrow{float:right;font-size:10px;color:#EEE;cursor:default;width:16px;text-align:center}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htNumeric{text-align:right}.htCommentCell{position:relative}.htCommentCell:after{content:'';position:absolute;top:0;right:0;border-left:6px solid transparent;border-top:6px solid red}@-webkit-keyframes opacity-hide{from{opacity:1}to{opacity:0}}@keyframes opacity-hide{from{opacity:1}to{opacity:0}}@-webkit-keyframes opacity-show{from{opacity:0}to{opacity:1}}@keyframes opacity-show{from{opacity:0}to{opacity:1}}.handsontable .handsontable.ht_clone_top .wtHider{padding:0 0 5px 0}.handsontable .autocompleteEditor.handsontable{padding-right:17px}.handsontable .autocompleteEditor.handsontable.htMacScroll{padding-right:15px}.handsontable.listbox{margin:0}.handsontable.listbox .ht_master table{border:1px solid #ccc;border-collapse:separate;background:white}.handsontable.listbox th,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th,.handsontable.listbox tr:first-child td,.handsontable.listbox td{border-width:0}.handsontable.listbox th,.handsontable.listbox td{white-space:nowrap;text-overflow:ellipsis}.handsontable.listbox td.htDimmed{cursor:default;color:inherit;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.htContextMenu{display:none;position:absolute;z-index:1060;overflow:hidden}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_left,.htContextMenu .ht_clone_corner,.htContextMenu .ht_clone_debug{display:none}.ht_clone_top{z-index:101}.ht_clone_left{z-index:102}.ht_clone_corner{z-index:103}.ht_clone_debug{z-index:103}.htContextMenu table.htCore{border:1px solid #bbb}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:white;border-width:0;padding:4px 6px 0 6px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current,.htContextMenu table tbody tr td.zeroclipboard-is-hover{background:#e9e9e9}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #bbb;height:0;padding:0}.htContextMenu table tbody tr td.htDisabled{color:#999}.htContextMenu table tbody tr td.htDisabled:hover{background:white;color:#999;cursor:default}.htContextMenu table tbody tr td div{padding-left:10px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}.htContextMenu .ht_master .wtHolder{overflow:hidden}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.htBordered{border-width:1px}.htBordered.htTopBorderSolid{border-top-style:solid;border-top-color:#000}.htBordered.htRightBorderSolid{border-right-style:solid;border-right-color:#000}.htBordered.htBottomBorderSolid{border-bottom-style:solid;border-bottom-color:#000}.htBordered.htLeftBorderSolid{border-left-style:solid;border-left-color:#000}.htCommentTextArea{background-color:#fffacd;box-shadow:1px 1px 2px #bbb;font-family:'Arial';-webkit-box-shadow:1px 1px 2px #bbb;-moz-box-shadow:1px 1px 2px #bbb}.handsontable colgroup col.rowHeader.htGroupCol{width:25px!important}.handsontable colgroup col.rowHeader.htGroupColClosest{width:30px!important}.handsontable .htGroupIndicatorContainer{background:#fff;border:0;padding-bottom:0;vertical-align:bottom;position:relative}.handsontable thead .htGroupIndicatorContainer{vertical-align:top;border-bottom:0}.handsontable tbody tr th:nth-last-child(2){border-right:1px solid #CCC}.handsontable thead tr:nth-last-child(2) th{border-bottom:1px solid #CCC;padding-bottom:5px}.ht_clone_corner thead tr th:nth-last-child(2){border-right:1px solid #CCC}.htVerticalGroup{height:100%}.htHorizontalGroup{width:100%;height:100%}.htVerticalGroup:not(.htCollapseButton):after{content:"";height:100%;width:1px;display:block;background:#ccc;margin-left:5px}.htHorizontalGroup:not(.htCollapseButton):after{content:"";width:100%;height:1px;display:block;background:#ccc;margin-top:20%}.htCollapseButton{width:10px;height:10px;line-height:10px;text-align:center;border-radius:5px;border:1px solid #f3f3f3;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.4);box-shadow:1px 1px 3px rgba(0,0,0,0.4);cursor:pointer;margin-bottom:3px;position:relative}.htCollapseButton:after{content:"";height:300%;width:1px;display:block;background:#ccc;margin-left:4px;position:absolute;bottom:10px}thead .htCollapseButton{right:5px;position:absolute;top:5px;background:#fff}thead .htCollapseButton:after{height:1px;width:700%;right:10px;top:4px}.handsontable tr th .htGroupStart:after{background:transparent;border-left:1px solid #ccc;border-top:1px solid #ccc;width:5px;position:relative;top:50%}.handsontable thead tr th .htGroupStart:after{background:transparent;border-left:1px solid #ccc;border-top:1px solid #ccc;height:5px;width:50%;position:relative;top:0;left:50%}.handsontable .htGroupLevelTrigger{-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.4);box-shadow:1px 1px 3px rgba(0,0,0,0.4);width:15px;height:15px;margin:4px auto;padding:0;line-height:15px;cursor:pointer}.handsontable tr th .htExpandButton{position:absolute;width:10px;height:10px;line-height:10px;text-align:center;border-radius:5px;border:1px solid #f3f3f3;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.4);box-shadow:1px 1px 3px rgba(0,0,0,0.4);cursor:pointer;top:0;display:none}.handsontable thead tr th .htExpandButton{top:5px}.handsontable tr th .htExpandButton.clickable{display:block}.handsontable col.hidden{width:0!important}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_master,.ht_clone_left,.ht_clone_top{overflow:hidden}.ht_master .wtHolder{overflow:auto}.ht_clone_left .wtHolder{overflow-x:hidden;overflow-y:auto}.ht_clone_top .wtHolder{overflow-x:auto;overflow-y:hidden}.wtDebugHidden{display:none}.wtDebugVisible{display:block;-webkit-animation-duration:.5s;-webkit-animation-name:wtFadeInFromNone;animation-duration:.5s;animation-name:wtFadeInFromNone}@keyframes wtFadeInFromNone{0%{display:none;opacity:0}1%{display:block;opacity:0}100%{display:block;opacity:1}}@-webkit-keyframes wtFadeInFromNone{0%{display:none;opacity:0}1%{display:block;opacity:0}100%{display:block;opacity:1}}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}.htMobileEditorContainer{display:none;position:absolute;top:0;width:70%;height:54pt;background:#f8f8f8;border-radius:20px;border:1px solid #ebebeb;z-index:999;box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-text-size-adjust:none}.topLeftSelectionHandle:not(.ht_master .topLeftSelectionHandle),.topLeftSelectionHandle-HitArea:not(.ht_master .topLeftSelectionHandle-HitArea){z-index:9999}.topLeftSelectionHandle,.topLeftSelectionHandle-HitArea,.bottomRightSelectionHandle,.bottomRightSelectionHandle-HitArea{left:-10000px;top:-10000px}.htMobileEditorContainer.active{display:block}.htMobileEditorContainer .inputs{position:absolute;right:210pt;bottom:10pt;top:10pt;left:14px;height:34pt}.htMobileEditorContainer .inputs textarea{font-size:13pt;border:1px solid #a1a1a1;-webkit-appearance:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;position:absolute;left:14px;right:14px;top:0;bottom:0;padding:7pt}.htMobileEditorContainer .cellPointer{position:absolute;top:-13pt;height:0;width:0;left:30px;border-left:13pt solid transparent;border-right:13pt solid transparent;border-bottom:13pt solid #ebebeb}.htMobileEditorContainer .cellPointer.hidden{display:none}.htMobileEditorContainer .cellPointer:before{content:'';display:block;position:absolute;top:2px;height:0;width:0;left:-13pt;border-left:13pt solid transparent;border-right:13pt solid transparent;border-bottom:13pt solid #f8f8f8}.htMobileEditorContainer .moveHandle{position:absolute;top:10pt;left:5px;width:30px;bottom:0;cursor:move;z-index:9999}.htMobileEditorContainer .moveHandle:after{content:"..\a..\a..\a..";white-space:pre;line-height:10px;font-size:20pt;display:inline-block;margin-top:-8px;color:#ebebeb}.htMobileEditorContainer .positionControls{width:205pt;position:absolute;right:5pt;top:0;bottom:0}.htMobileEditorContainer .positionControls>div{width:50pt;height:100%;float:left}.htMobileEditorContainer .positionControls>div:after{content:" ";display:block;width:15pt;height:15pt;text-align:center;line-height:50pt}.htMobileEditorContainer .leftButton:after,.htMobileEditorContainer .rightButton:after,.htMobileEditorContainer .upButton:after,.htMobileEditorContainer .downButton:after{transform-origin:5pt 5pt;-webkit-transform-origin:5pt 5pt;margin:21pt 0 0 21pt}.htMobileEditorContainer .leftButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(-45deg)}.htMobileEditorContainer .leftButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .rightButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(135deg)}.htMobileEditorContainer .rightButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .upButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(45deg)}.htMobileEditorContainer .upButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .downButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(225deg)}.htMobileEditorContainer .downButton:active:after{border-color:#cfcfcf}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}/*!
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
  * Handsontable ContextMenu
12
- */.htContextMenu{display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_left,.htContextMenu .ht_clone_corner,.htContextMenu .ht_clone_debug{display:none}.htContextMenu table.htCore{outline:1px solid #bbb}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:white;border-width:0;padding:4px 6px 0 6px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current,.htContextMenu table tbody tr td.zeroclipboard-is-hover{background:#e9e9e9}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #bbb;height:0;padding:0}.htContextMenu table tbody tr td.htDisabled{color:#999}.htContextMenu table tbody tr td.htDisabled:hover{background:white;color:#999;cursor:default}.htContextMenu table tbody tr td div{padding-left:10px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}/*!
13
  * Pikaday
14
  * Copyright © 2014 David Bushell | BSD & MIT license | http://dbushell.com/
15
- */.pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.pika-single:before,.pika-single:after{content:" ";display:table}.pika-single:after{clear:both}.pika-single{*zoom:1}.pika-single.is-hidden{display:none}.pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px rgba(0,0,0,.5)}.pika-lendar{float:left;width:240px;margin:8px}.pika-title{position:relative;text-align:center}.pika-label{display:inline-block;*display:inline;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:bold;background-color:#fff}.pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;filter:alpha(opacity=0);opacity:0}.pika-prev,.pika-next{display:block;cursor:pointer;position:relative;outline:0;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5;*position:absolute;*top:0}.pika-prev:hover,.pika-next:hover{opacity:1}.pika-prev,.is-rtl .pika-next{float:left;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==');*left:0}.pika-next,.is-rtl .pika-prev{float:right;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=');*right:0}.pika-prev.is-disabled,.pika-next.is-disabled{cursor:default;opacity:.2}.pika-select{display:inline-block;*display:inline}.pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.pika-table th,.pika-table td{width:14.285714285714286%;padding:0}.pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:bold;text-align:center}.pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:0;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:right;background:#f5f5f5}.pika-week{font-size:11px;color:#999}.is-today .pika-button{color:#3af;font-weight:bold}.is-selected .pika-button{color:#fff;font-weight:bold;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.pika-button:hover{color:#fff!important;background:#ff8000!important;box-shadow:none!important;border-radius:3px!important}.pika-table abbr{border-bottom:0;cursor:help}
1
  @charset "UTF-8";/*!
2
+ (The MIT License)
3
+
4
+ Handsontable 0.31.1
5
+ Handsontable is a JavaScript library for editable tables with basic copy-paste compatibility with Excel and Google Docs
6
+
7
+ Copyright (c) 2012-2014 Marcin Warpechowski
8
+ Copyright (c) 2015 Handsoncode sp. z o.o. <hello@handsoncode.net>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining
11
+ a copy of this software and associated documentation files (the
12
+ 'Software'), to deal in the Software without restriction, including
13
+ without limitation the rights to use, copy, modify, merge, publish,
14
+ distribute, sublicense, and/or sell copies of the Software, and to
15
+ permit persons to whom the Software is furnished to do so, subject to
16
+ the following conditions:
17
+
18
+ The above copyright notice and this permission notice shall be
19
+ included in all copies or substantial portions of the Software.
20
+
21
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
22
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
24
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
25
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
26
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
27
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
28
+
29
+ */.handsontable{position:relative}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable.htAutoSize{visibility:hidden;left:-99000px;position:absolute;top:-99000px}.handsontable .wtHider{width:0}.handsontable .wtSpreader{position:relative;width:0;height:auto}.handsontable table,.handsontable tbody,.handsontable thead,.handsontable td,.handsontable th,.handsontable input,.handsontable textarea,.handsontable div{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:initial}.handsontable table.htCore{border-collapse:separate;border-spacing:0;margin:0;border-width:0;table-layout:fixed;width:0;outline-width:0;max-width:none;max-height:none}.handsontable col{width:50px}.handsontable col.rowHeader{width:50px}.handsontable th,.handsontable td{border-top-width:0;border-left-width:0;border-right:1px solid #CCC;border-bottom:1px solid #CCC;height:22px;empty-cells:show;line-height:21px;padding:0 4px 0 4px;background-color:#FFF;vertical-align:top;overflow:hidden;outline-width:0;white-space:pre-line;background-clip:padding-box}.handsontable td.htInvalid{background-color:#ff4c42!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable th:last-child{border-right:1px solid #CCC;border-bottom:1px solid #CCC}.handsontable tr:first-child th.htNoFrame,.handsontable th:first-child.htNoFrame,.handsontable th.htNoFrame{border-left-width:0;background-color:white;border-color:#FFF}.handsontable th:first-child,.handsontable th:nth-child(2),.handsontable td:first-of-type,.handsontable .htNoFrame+th,.handsontable .htNoFrame+td{border-left:1px solid #CCC}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #CCC}.handsontable tr:first-child th,.handsontable tr:first-child td{border-top:1px solid #CCC}.ht_master:not(.innerBorderLeft):not(.emptyColumns) ~ .handsontable tbody tr th,.ht_master:not(.innerBorderLeft):not(.emptyColumns) ~ .handsontable:not(.ht_clone_top) thead tr th:first-child{border-right-width:0}.ht_master:not(.innerBorderTop) thead tr:last-child th,.ht_master:not(.innerBorderTop) ~ .handsontable thead tr:last-child th,.ht_master:not(.innerBorderTop) thead tr.lastChild th,.ht_master:not(.innerBorderTop) ~ .handsontable thead tr.lastChild th{border-bottom-width:0}.handsontable th{background-color:#f3f3f3;color:#222;text-align:center;font-weight:normal;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#CCC}.handsontable thead th .relative{padding:2px 4px}.handsontable tbody th.ht__highlight,.handsontable thead th.ht__highlight{background-color:#dcdcdc}.handsontable.ht__selection--columns thead th.ht__highlight,.handsontable.ht__selection--rows tbody th.ht__highlight{background-color:#8eb0e7;color:#000}.handsontable .manualColumnResizer{position:fixed;top:0;cursor:col-resize;z-index:110;width:5px;height:25px}.handsontable .manualRowResizer{position:fixed;left:0;cursor:row-resize;z-index:110;height:5px;width:50px}.handsontable .manualColumnResizer:hover,.handsontable .manualColumnResizer.active,.handsontable .manualRowResizer:hover,.handsontable .manualRowResizer.active{background-color:#AAB}.handsontable .manualColumnResizerGuide{position:fixed;right:0;top:0;background-color:#AAB;display:none;width:0;border-right:1px dashed #777;margin-left:5px}.handsontable .manualRowResizerGuide{position:fixed;left:0;bottom:0;background-color:#AAB;display:none;height:0;border-bottom:1px dashed #777;margin-top:5px}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block;z-index:199}.handsontable .columnSorting{position:relative}.handsontable .columnSorting:hover{text-decoration:underline;cursor:pointer}.handsontable .columnSorting.ascending::after{content:'\25B2';color:#5f5f5f;position:absolute;right:-15px}.handsontable .columnSorting.descending::after{content:'\25BC';color:#5f5f5f;position:absolute;right:-15px}.handsontable .wtBorder{position:absolute;font-size:0}.handsontable .wtBorder.hidden{display:none!important}.handsontable td.area{background:-moz-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(181,209,255,0.34)),color-stop(100%,rgba(181,209,255,0.34)));background:-webkit-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-o-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-ms-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:linear-gradient(to bottom,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#57b5d1ff',endColorstr='#57b5d1ff',GradientType=0);background-color:#fff}.handsontable .wtBorder.corner{font-size:0;cursor:crosshair}.handsontable .htBorder.htFillBorder{background:red;width:1px;height:1px}.handsontableInput{border:0;outline-width:0;margin:0;padding:1px 5px 0 5px;font-family:inherit;line-height:21px;font-size:inherit;box-shadow:0 0 0 2px #5292f7 inset;resize:none;display:inline-block;color:#000;border-radius:0;background-color:#FFF}.handsontableInputHolder{position:absolute;top:0;left:0;z-index:100}.htSelectEditor{-webkit-appearance:menulist-button!important;position:absolute;width:auto}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{content:'▶';color:#777;position:absolute;right:5px}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable .htAutocompleteArrow{float:right;font-size:10px;color:#EEE;cursor:default;width:16px;text-align:center}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput{display:inline-block;vertical-align:middle}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htCheckboxRendererLabel{cursor:pointer;display:inline-block;width:100%}@-webkit-keyframes opacity-hide{from{opacity:1}to{opacity:0}}@keyframes opacity-hide{from{opacity:1}to{opacity:0}}@-webkit-keyframes opacity-show{from{opacity:0}to{opacity:1}}@keyframes opacity-show{from{opacity:0}to{opacity:1}}.handsontable .handsontable.ht_clone_top .wtHider{padding:0 0 5px 0}.handsontable .autocompleteEditor.handsontable{padding-right:17px}.handsontable .autocompleteEditor.handsontable.htMacScroll{padding-right:15px}.handsontable.listbox{margin:0}.handsontable.listbox .ht_master table{border:1px solid #ccc;border-collapse:separate;background:white}.handsontable.listbox th,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th,.handsontable.listbox tr:first-child td,.handsontable.listbox td{border-color:transparent}.handsontable.listbox th,.handsontable.listbox td{white-space:nowrap;text-overflow:ellipsis}.handsontable.listbox td.htDimmed{cursor:default;color:inherit;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_clone_top{z-index:101}.ht_clone_left{z-index:102}.ht_clone_top_left_corner,.ht_clone_bottom_left_corner{z-index:103}.ht_clone_debug{z-index:103}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.htBordered{border-width:1px}.htBordered.htTopBorderSolid{border-top-style:solid;border-top-color:#000}.htBordered.htRightBorderSolid{border-right-style:solid;border-right-color:#000}.htBordered.htBottomBorderSolid{border-bottom-style:solid;border-bottom-color:#000}.htBordered.htLeftBorderSolid{border-left-style:solid;border-left-color:#000}.handsontable tbody tr th:nth-last-child(2){border-right:1px solid #CCC}.handsontable thead tr:nth-last-child(2) th.htGroupIndicatorContainer{border-bottom:1px solid #CCC;padding-bottom:5px}.ht_clone_top_left_corner thead tr th:nth-last-child(2){border-right:1px solid #CCC}.htCollapseButton{width:10px;height:10px;line-height:10px;text-align:center;border-radius:5px;border:1px solid #f3f3f3;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.4);box-shadow:1px 1px 3px rgba(0,0,0,0.4);cursor:pointer;margin-bottom:3px;position:relative}.htCollapseButton:after{content:"";height:300%;width:1px;display:block;background:#ccc;margin-left:4px;position:absolute;bottom:10px}thead .htCollapseButton{right:5px;position:absolute;top:5px;background:#fff}thead .htCollapseButton:after{height:1px;width:700%;right:10px;top:4px}.handsontable tr th .htExpandButton{position:absolute;width:10px;height:10px;line-height:10px;text-align:center;border-radius:5px;border:1px solid #f3f3f3;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.4);box-shadow:1px 1px 3px rgba(0,0,0,0.4);cursor:pointer;top:0;display:none}.handsontable thead tr th .htExpandButton{top:5px}.handsontable tr th .htExpandButton.clickable{display:block}.collapsibleIndicator{position:absolute;top:50%;transform:translate(0%,-50%);right:5px;border:1px solid #a6a6a6;line-height:10px;color:#222;border-radius:10px;font-size:10px;width:10px;height:10px;cursor:pointer;-webkit-box-shadow:0 0 0 6px rgba(238,238,238,1);-moz-box-shadow:0 0 0 6px rgba(238,238,238,1);box-shadow:0 0 0 6px rgba(238,238,238,1);background:#eee}.handsontable col.hidden{width:0!important}.handsontable table tr th.lightRightBorder{border-right:1px solid #e6e6e6}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_master,.ht_clone_left,.ht_clone_top,.ht_clone_bottom{overflow:hidden}.ht_master .wtHolder{overflow:auto}.ht_clone_left .wtHolder{overflow-x:hidden;overflow-y:auto}.ht_clone_top .wtHolder,.ht_clone_bottom .wtHolder{overflow-x:auto;overflow-y:hidden}.wtDebugHidden{display:none}.wtDebugVisible{display:block;-webkit-animation-duration:.5s;-webkit-animation-name:wtFadeInFromNone;animation-duration:.5s;animation-name:wtFadeInFromNone}@keyframes wtFadeInFromNone{0%{display:none;opacity:0}1%{display:block;opacity:0}100%{display:block;opacity:1}}@-webkit-keyframes wtFadeInFromNone{0%{display:none;opacity:0}1%{display:block;opacity:0}100%{display:block;opacity:1}}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}.htMobileEditorContainer{display:none;position:absolute;top:0;width:70%;height:54pt;background:#f8f8f8;border-radius:20px;border:1px solid #ebebeb;z-index:999;box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-text-size-adjust:none}.topLeftSelectionHandle:not(.ht_master .topLeftSelectionHandle),.topLeftSelectionHandle-HitArea:not(.ht_master .topLeftSelectionHandle-HitArea){z-index:9999}.topLeftSelectionHandle,.topLeftSelectionHandle-HitArea,.bottomRightSelectionHandle,.bottomRightSelectionHandle-HitArea{left:-10000px;top:-10000px}.htMobileEditorContainer.active{display:block}.htMobileEditorContainer .inputs{position:absolute;right:210pt;bottom:10pt;top:10pt;left:14px;height:34pt}.htMobileEditorContainer .inputs textarea{font-size:13pt;border:1px solid #a1a1a1;-webkit-appearance:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;position:absolute;left:14px;right:14px;top:0;bottom:0;padding:7pt}.htMobileEditorContainer .cellPointer{position:absolute;top:-13pt;height:0;width:0;left:30px;border-left:13pt solid transparent;border-right:13pt solid transparent;border-bottom:13pt solid #ebebeb}.htMobileEditorContainer .cellPointer.hidden{display:none}.htMobileEditorContainer .cellPointer:before{content:'';display:block;position:absolute;top:2px;height:0;width:0;left:-13pt;border-left:13pt solid transparent;border-right:13pt solid transparent;border-bottom:13pt solid #f8f8f8}.htMobileEditorContainer .moveHandle{position:absolute;top:10pt;left:5px;width:30px;bottom:0;cursor:move;z-index:9999}.htMobileEditorContainer .moveHandle:after{content:"..\a..\a..\a..";white-space:pre;line-height:10px;font-size:20pt;display:inline-block;margin-top:-8px;color:#ebebeb}.htMobileEditorContainer .positionControls{width:205pt;position:absolute;right:5pt;top:0;bottom:0}.htMobileEditorContainer .positionControls>div{width:50pt;height:100%;float:left}.htMobileEditorContainer .positionControls>div:after{content:" ";display:block;width:15pt;height:15pt;text-align:center;line-height:50pt}.htMobileEditorContainer .leftButton:after,.htMobileEditorContainer .rightButton:after,.htMobileEditorContainer .upButton:after,.htMobileEditorContainer .downButton:after{transform-origin:5pt 5pt;-webkit-transform-origin:5pt 5pt;margin:21pt 0 0 21pt}.htMobileEditorContainer .leftButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(-45deg)}.htMobileEditorContainer .leftButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .rightButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(135deg)}.htMobileEditorContainer .rightButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .upButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(45deg)}.htMobileEditorContainer .upButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .downButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(225deg)}.htMobileEditorContainer .downButton:active:after{border-color:#cfcfcf}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.htCommentCell{position:relative}.htCommentCell:after{content:'';position:absolute;top:0;right:0;border-left:6px solid transparent;border-top:6px solid black}.htComments{display:none;z-index:1059;position:absolute}.htCommentTextArea{box-shadow:rgba(0,0,0,0.117647) 0 1px 3px,rgba(0,0,0,0.239216) 0 1px 2px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:0;border-left:3px solid #ccc;background-color:#fff;width:215px;height:90px;font-size:12px;padding:5px;outline:0!important;-webkit-appearance:none}.htCommentTextArea:focus{box-shadow:rgba(0,0,0,0.117647) 0 1px 3px,rgba(0,0,0,0.239216) 0 1px 2px,inset 0 0 0 1px #5292f7;border-left:3px solid #5292f7}/*!
30
  * Handsontable ContextMenu
31
+ */.htContextMenu{display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_left,.htContextMenu .ht_clone_corner,.htContextMenu .ht_clone_debug{display:none}.htContextMenu table.htCore{border:1px solid #ccc;border-bottom-width:2px;border-right-width:2px}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:white;border-width:0;padding:4px 6px 0 6px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current,.htContextMenu table tbody tr td.zeroclipboard-is-hover{background:#f3f3f3}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #bbb;height:0;padding:0;cursor:default}.htContextMenu table tbody tr td.htDisabled{color:#999;cursor:default}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr.htHidden{display:none}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}.htContextMenu .ht_master .wtHolder{overflow:hidden}.htRowHeaders .ht_master.innerBorderLeft ~ .ht_clone_top_left_corner th:nth-child(2),.htRowHeaders .ht_master.innerBorderLeft ~ .ht_clone_left td:first-of-type{border-left:0 none}.handsontable .wtHider{position:relative}.handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualColumnMove.on-moving--columns,.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer{display:none}.handsontable .ht__manualColumnMove--guideline,.handsontable .ht__manualColumnMove--backlight{position:absolute;height:100%;display:none}.handsontable .ht__manualColumnMove--guideline{background:#757575;width:2px;top:0;margin-left:-1px;z-index:105}.handsontable .ht__manualColumnMove--backlight{background:#343434;background:rgba(52,52,52,0.25);display:none;z-index:105;pointer-events:none}.handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline,.handsontable.on-moving--columns .ht__manualColumnMove--backlight{display:block}.handsontable .wtHider{position:relative}.handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualRowMove.on-moving--rows,.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer{display:none}.handsontable .ht__manualRowMove--guideline,.handsontable .ht__manualRowMove--backlight{position:absolute;width:100%;display:none}.handsontable .ht__manualRowMove--guideline{background:#757575;height:2px;left:0;margin-top:-1px;z-index:105}.handsontable .ht__manualRowMove--backlight{background:#343434;background:rgba(52,52,52,0.25);display:none;z-index:105;pointer-events:none}.handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline,.handsontable.on-moving--rows .ht__manualRowMove--backlight{display:block}/*!
32
  * Pikaday
33
  * Copyright © 2014 David Bushell | BSD & MIT license | http://dbushell.com/
34
+ */.pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.pika-single:before,.pika-single:after{content:" ";display:table}.pika-single:after{clear:both}.pika-single{*zoom:1}.pika-single.is-hidden{display:none}.pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px rgba(0,0,0,.5)}.pika-lendar{float:left;width:240px;margin:8px}.pika-title{position:relative;text-align:center}.pika-label{display:inline-block;*display:inline;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:bold;background-color:#fff}.pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;filter:alpha(opacity=0);opacity:0}.pika-prev,.pika-next{display:block;cursor:pointer;position:relative;outline:0;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5;*position:absolute;*top:0}.pika-prev:hover,.pika-next:hover{opacity:1}.pika-prev,.is-rtl .pika-next{float:left;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==');*left:0}.pika-next,.is-rtl .pika-prev{float:right;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=');*right:0}.pika-prev.is-disabled,.pika-next.is-disabled{cursor:default;opacity:.2}.pika-select{display:inline-block;*display:inline}.pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.pika-table th,.pika-table td{width:14.285714285714286%;padding:0}.pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:bold;text-align:center}.pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:0;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:right;background:#f5f5f5}.pika-week{font-size:11px;color:#999}.is-today .pika-button{color:#3af;font-weight:bold}.is-selected .pika-button{color:#fff;font-weight:bold;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.is-inrange .pika-button{background:#d5e9f7}.is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.is-disabled .pika-button,.is-outside-current-month .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.pika-button:hover{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.pika-table abbr{border-bottom:0;cursor:help}
src/SupsysticTables/Tables/assets/libraries/handsontable/handsontable.full.min.js CHANGED
@@ -1,26392 +1,97 @@
1
  /*!
2
- (The MIT License)
3
 
4
- Copyright (c) 2012-2014 Marcin Warpechowski
5
- Copyright (c) 2015 Handsoncode sp. z o.o. <hello@handsoncode.net>
6
 
7
- Permission is hereby granted, free of charge, to any person obtaining
8
- a copy of this software and associated documentation files (the
9
- 'Software'), to deal in the Software without restriction, including
10
- without limitation the rights to use, copy, modify, merge, publish,
11
- distribute, sublicense, and/or sell copies of the Software, and to
12
- permit persons to whom the Software is furnished to do so, subject to
13
- the following conditions:
14
 
15
- The above copyright notice and this permission notice shall be
16
- included in all copies or substantial portions of the Software.
17
 
18
- THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
19
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
22
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
26
  */
27
- !function(e) {
28
- if ("object" == typeof exports && "undefined" != typeof module)
29
- module.exports = e();
30
- else if ("function" == typeof define && define.amd)
31
- define([], e);
32
- else {
33
- var t;
34
- t = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this,
35
- t.Handsontable = e()
36
- }
37
- }(function() {
38
- var e;
39
- return function e(t, n, o) {
40
- function r(a, l) {
41
- if (!n[a]) {
42
- if (!t[a]) {
43
- var u = "function" == typeof require && require;
44
- if (!l && u)
45
- return u(a, !0);
46
- if (i)
47
- return i(a, !0);
48
- if (s[a] && "undefined" != typeof window[s[a]])
49
- return window[s[a]];
50
- var c = new Error("Cannot find module '" + a + "'");
51
- throw c.code = "MODULE_NOT_FOUND",
52
- c
53
- }
54
- var d = n[a] = {
55
- exports: {}
56
- };
57
- t[a][0].call(d.exports, function(e) {
58
- var n = t[a][1][e];
59
- return r(n ? n : e)
60
- }, d, d.exports, e, t, n, o)
61
- }
62
- return n[a].exports
63
- }
64
- for (var i = "function" == typeof require && require, s = JSON.parse('{"zeroclipboard":"ZeroClipboard","moment":"moment","numbro":"numbro","pikaday":"Pikaday"}') || {}, a = 0; a < o.length; a++)
65
- r(o[a]);
66
- return r
67
- }({
68
- 1: [function(e, t, n) {}
69
- , {}],
70
- 2: [function(e, t, n) {
71
- window.jQuery && !function(e) {
72
- e.fn.handsontable = function(e) {
73
- var t, n, o, r, i, s = this.first(), a = s.data("handsontable");
74
- if ("string" != typeof e)
75
- return i = e || {},
76
- a ? a.updateSettings(i) : (a = new Handsontable.Core(s[0],i),
77
- s.data("handsontable", a),
78
- a.init()),
79
- s;
80
- if (o = [],
81
- arguments.length > 1)
82
- for (t = 1,
83
- n = arguments.length; t < n; t++)
84
- o.push(arguments[t]);
85
- if (a) {
86
- if ("undefined" == typeof a[e])
87
- throw new Error("Handsontable do not provide action: " + e);
88
- r = a[e].apply(a, o),
89
- "destroy" === e && s.removeData()
90
- }
91
- return r
92
- }
93
- }(window.jQuery)
94
- }
95
- , {}],
96
- 3: [function(e, t, n) {
97
- "use strict";
98
- Object.defineProperties(n, {
99
- WalkontableBorder: {
100
- get: function() {
101
- return C
102
- }
103
- },
104
- __esModule: {
105
- value: !0
106
- }
107
- });
108
- var o, r, i, s, a, l, u = (o = e("helpers/dom/element"),
109
- o && o.__esModule && o || {
110
- default: o
111
- }), c = u.getComputedStyle, d = u.getTrimmingContainer, h = u.innerWidth, f = u.innerHeight, p = u.offset, m = u.outerHeight, g = u.outerWidth, w = (r = e("helpers/dom/event"),
112
- r && r.__esModule && r || {
113
- default: r
114
- }).stopImmediatePropagation, v = (i = e("helpers/browser"),
115
- i && i.__esModule && i || {
116
- default: i
117
- }).isMobileBrowser, y = (s = e("eventManager"),
118
- s && s.__esModule && s || {
119
- default: s
120
- }).EventManager, b = (a = e("cell/coords"),
121
- a && a.__esModule && a || {
122
- default: a
123
- }).WalkontableCellCoords, C = ((l = e("overlay/_base.js"),
124
- l && l.__esModule && l || {
125
- default: l
126
- }).WalkontableOverlay,
127
- function(e, t) {
128
- t && (this.eventManager = new y(e),
129
- this.instance = e,
130
- this.wot = e,
131
- this.settings = t,
132
- this.mouseDown = !1,
133
- this.main = null,
134
- this.top = null,
135
- this.left = null,
136
- this.bottom = null,
137
- this.right = null,
138
- this.topStyle = null,
139
- this.leftStyle = null,
140
- this.bottomStyle = null,
141
- this.rightStyle = null,
142
- this.cornerDefaultStyle = {
143
- width: "5px",
144
- height: "5px",
145
- borderWidth: "2px",
146
- borderStyle: "solid",
147
- borderColor: "#FFF"
148
- },
149
- this.corner = null,
150
- this.cornerStyle = null,
151
- this.createBorders(t),
152
- this.registerListeners())
153
- }
154
- );
155
- $traceurRuntime.createClass(C, {
156
- registerListeners: function() {
157
- var e = this;
158
- this.eventManager.addEventListener(document.body, "mousedown", function() {
159
- return e.onMouseDown()
160
- }),
161
- this.eventManager.addEventListener(document.body, "mouseup", function() {
162
- return e.onMouseUp()
163
- });
164
- for (var t = this, n = function(n, o) {
165
- t.eventManager.addEventListener(t.main.childNodes[n], "mouseenter", function(t) {
166
- return e.onMouseEnter(t, e.main.childNodes[n])
167
- })
168
- }, o = 0, r = this.main.childNodes.length; o < r; o++)
169
- n(o, r)
170
- },
171
- onMouseDown: function() {
172
- this.mouseDown = !0
173
- },
174
- onMouseUp: function() {
175
- this.mouseDown = !1
176
- },
177
- onMouseEnter: function(e, t) {
178
- function n(e) {
179
- return e.clientY < Math.floor(i.top) || (e.clientY > Math.ceil(i.top + i.height) || (e.clientX < Math.floor(i.left) || (e.clientX > Math.ceil(i.left + i.width) || void 0)))
180
- }
181
- function o(e) {
182
- n(e) && (r.eventManager.removeEventListener(document.body, "mousemove", o),
183
- t.style.display = "block")
184
- }
185
- if (this.mouseDown && this.wot.getSetting("hideBorderOnMouseDownOver")) {
186
- e.preventDefault(),
187
- w(e);
188
- var r = this
189
- , i = t.getBoundingClientRect();
190
- t.style.display = "none",
191
- this.eventManager.addEventListener(document.body, "mousemove", o)
192
- }
193
- },
194
- createBorders: function(e) {
195
- this.main = document.createElement("div");
196
- var t = ["top", "left", "bottom", "right", "corner"]
197
- , n = this.main.style;
198
- n.position = "absolute",
199
- n.top = 0,
200
- n.left = 0;
201
- for (var o = 0; o < 5; o++) {
202
- var r = t[o]
203
- , i = document.createElement("div");
204
- i.className = "wtBorder " + (this.settings.className || ""),
205
- this.settings[r] && this.settings[r].hide && (i.className += " hidden"),
206
- n = i.style,
207
- n.backgroundColor = this.settings[r] && this.settings[r].color ? this.settings[r].color : e.border.color,
208
- n.height = this.settings[r] && this.settings[r].width ? this.settings[r].width + "px" : e.border.width + "px",
209
- n.width = this.settings[r] && this.settings[r].width ? this.settings[r].width + "px" : e.border.width + "px",
210
- this.main.appendChild(i)
211
- }
212
- this.top = this.main.childNodes[0],
213
- this.left = this.main.childNodes[1],
214
- this.bottom = this.main.childNodes[2],
215
- this.right = this.main.childNodes[3],
216
- this.topStyle = this.top.style,
217
- this.leftStyle = this.left.style,
218
- this.bottomStyle = this.bottom.style,
219
- this.rightStyle = this.right.style,
220
- this.corner = this.main.childNodes[4],
221
- this.corner.className += " corner",
222
- this.cornerStyle = this.corner.style,
223
- this.cornerStyle.width = this.cornerDefaultStyle.width,
224
- this.cornerStyle.height = this.cornerDefaultStyle.height,
225
- this.cornerStyle.border = [this.cornerDefaultStyle.borderWidth, this.cornerDefaultStyle.borderStyle, this.cornerDefaultStyle.borderColor].join(" "),
226
- v() && this.createMultipleSelectorHandles(),
227
- this.disappear(),
228
- this.wot.wtTable.bordersHolder || (this.wot.wtTable.bordersHolder = document.createElement("div"),
229
- this.wot.wtTable.bordersHolder.className = "htBorders",
230
- this.wot.wtTable.spreader.appendChild(this.wot.wtTable.bordersHolder)),
231
- this.wot.wtTable.bordersHolder.insertBefore(this.main, this.wot.wtTable.bordersHolder.firstChild)
232
- },
233
- createMultipleSelectorHandles: function() {
234
- this.selectionHandles = {
235
- topLeft: document.createElement("DIV"),
236
- topLeftHitArea: document.createElement("DIV"),
237
- bottomRight: document.createElement("DIV"),
238
- bottomRightHitArea: document.createElement("DIV")
239
- };
240
- var e = 10
241
- , t = 40;
242
- this.selectionHandles.topLeft.className = "topLeftSelectionHandle",
243
- this.selectionHandles.topLeftHitArea.className = "topLeftSelectionHandle-HitArea",
244
- this.selectionHandles.bottomRight.className = "bottomRightSelectionHandle",
245
- this.selectionHandles.bottomRightHitArea.className = "bottomRightSelectionHandle-HitArea",
246
- this.selectionHandles.styles = {
247
- topLeft: this.selectionHandles.topLeft.style,
248
- topLeftHitArea: this.selectionHandles.topLeftHitArea.style,
249
- bottomRight: this.selectionHandles.bottomRight.style,
250
- bottomRightHitArea: this.selectionHandles.bottomRightHitArea.style
251
- };
252
- var n = {
253
- position: "absolute",
254
- height: t + "px",
255
- width: t + "px",
256
- "border-radius": parseInt(t / 1.5, 10) + "px"
257
- };
258
- for (var o in n)
259
- n.hasOwnProperty(o) && (this.selectionHandles.styles.bottomRightHitArea[o] = n[o],
260
- this.selectionHandles.styles.topLeftHitArea[o] = n[o]);
261
- var r = {
262
- position: "absolute",
263
- height: e + "px",
264
- width: e + "px",
265
- "border-radius": parseInt(e / 1.5, 10) + "px",
266
- background: "#F5F5FF",
267
- border: "1px solid #4285c8"
268
- };
269
- for (var i in r)
270
- r.hasOwnProperty(i) && (this.selectionHandles.styles.bottomRight[i] = r[i],
271
- this.selectionHandles.styles.topLeft[i] = r[i]);
272
- this.main.appendChild(this.selectionHandles.topLeft),
273
- this.main.appendChild(this.selectionHandles.bottomRight),
274
- this.main.appendChild(this.selectionHandles.topLeftHitArea),
275
- this.main.appendChild(this.selectionHandles.bottomRightHitArea)
276
- },
277
- isPartRange: function(e, t) {
278
- return !(!this.wot.selections.area.cellRange || e == this.wot.selections.area.cellRange.to.row && t == this.wot.selections.area.cellRange.to.col)
279
- },
280
- updateMultipleSelectionHandlesPosition: function(e, t, n, o, r, i) {
281
- var s = parseInt(this.selectionHandles.styles.topLeft.width, 10)
282
- , a = parseInt(this.selectionHandles.styles.topLeftHitArea.width, 10);
283
- this.selectionHandles.styles.topLeft.top = parseInt(n - s, 10) + "px",
284
- this.selectionHandles.styles.topLeft.left = parseInt(o - s, 10) + "px",
285
- this.selectionHandles.styles.topLeftHitArea.top = parseInt(n - a / 4 * 3, 10) + "px",
286
- this.selectionHandles.styles.topLeftHitArea.left = parseInt(o - a / 4 * 3, 10) + "px",
287
- this.selectionHandles.styles.bottomRight.top = parseInt(n + i, 10) + "px",
288
- this.selectionHandles.styles.bottomRight.left = parseInt(o + r, 10) + "px",
289
- this.selectionHandles.styles.bottomRightHitArea.top = parseInt(n + i - a / 4, 10) + "px",
290
- this.selectionHandles.styles.bottomRightHitArea.left = parseInt(o + r - a / 4, 10) + "px",
291
- this.settings.border.multipleSelectionHandlesVisible && this.settings.border.multipleSelectionHandlesVisible() ? (this.selectionHandles.styles.topLeft.display = "block",
292
- this.selectionHandles.styles.topLeftHitArea.display = "block",
293
- this.isPartRange(e, t) ? (this.selectionHandles.styles.bottomRight.display = "none",
294
- this.selectionHandles.styles.bottomRightHitArea.display = "none") : (this.selectionHandles.styles.bottomRight.display = "block",
295
- this.selectionHandles.styles.bottomRightHitArea.display = "block")) : (this.selectionHandles.styles.topLeft.display = "none",
296
- this.selectionHandles.styles.bottomRight.display = "none",
297
- this.selectionHandles.styles.topLeftHitArea.display = "none",
298
- this.selectionHandles.styles.bottomRightHitArea.display = "none"),
299
- e == this.wot.wtSettings.getSetting("fixedRowsTop") || t == this.wot.wtSettings.getSetting("fixedColumnsLeft") ? (this.selectionHandles.styles.topLeft.zIndex = "9999",
300
- this.selectionHandles.styles.topLeftHitArea.zIndex = "9999") : (this.selectionHandles.styles.topLeft.zIndex = "",
301
- this.selectionHandles.styles.topLeftHitArea.zIndex = "")
302
- },
303
- appear: function(e) {
304
- if (!this.disabled) {
305
- var t, n, o, r, i, s, a, l, u, w, y, C, _, R, M, S, E, O, T;
306
- T = this.wot.wtTable.getRenderedRowsCount();
307
- for (var k = 0; k < T; k++) {
308
- var x = this.wot.wtTable.rowFilter.renderedToSource(k);
309
- if (x >= e[0] && x <= e[2]) {
310
- _ = x;
311
- break
312
- }
313
- }
314
- for (var D = T - 1; D >= 0; D--) {
315
- var H = this.wot.wtTable.rowFilter.renderedToSource(D);
316
- if (H >= e[0] && H <= e[2]) {
317
- M = H;
318
- break
319
- }
320
- }
321
- T = this.wot.wtTable.getRenderedColumnsCount();
322
- for (var A = 0; A < T; A++) {
323
- var P = this.wot.wtTable.columnFilter.renderedToSource(A);
324
- if (P >= e[1] && P <= e[3]) {
325
- R = P;
326
- break
327
- }
328
- }
329
- for (var N = T - 1; N >= 0; N--) {
330
- var L = this.wot.wtTable.columnFilter.renderedToSource(N);
331
- if (L >= e[1] && L <= e[3]) {
332
- S = L;
333
- break
334
- }
335
- }
336
- if (void 0 === _ || void 0 === R)
337
- return void this.disappear();
338
- t = _ !== M || R !== S,
339
- n = this.wot.wtTable.getCell(new b(_,R)),
340
- o = t ? this.wot.wtTable.getCell(new b(M,S)) : n,
341
- r = p(n),
342
- i = t ? p(o) : r,
343
- s = p(this.wot.wtTable.TABLE),
344
- l = r.top,
345
- y = i.top + m(o) - l,
346
- w = r.left,
347
- C = i.left + g(o) - w,
348
- a = l - s.top - 1,
349
- u = w - s.left - 1;
350
- var I = c(n);
351
- parseInt(I.borderTopWidth, 10) > 0 && (a += 1,
352
- y = y > 0 ? y - 1 : 0),
353
- parseInt(I.borderLeftWidth, 10) > 0 && (u += 1,
354
- C = C > 0 ? C - 1 : 0),
355
- this.topStyle.top = a + "px",
356
- this.topStyle.left = u + "px",
357
- this.topStyle.width = C + "px",
358
- this.topStyle.display = "block",
359
- this.leftStyle.top = a + "px",
360
- this.leftStyle.left = u + "px",
361
- this.leftStyle.height = y + "px",
362
- this.leftStyle.display = "block";
363
- var W = Math.floor(this.settings.border.width / 2);
364
- this.bottomStyle.top = a + y - W + "px",
365
- this.bottomStyle.left = u + "px",
366
- this.bottomStyle.width = C + "px",
367
- this.bottomStyle.display = "block",
368
- this.rightStyle.top = a + "px",
369
- this.rightStyle.left = u + C - W + "px",
370
- this.rightStyle.height = y + 1 + "px",
371
- this.rightStyle.display = "block",
372
- v() || !this.hasSetting(this.settings.border.cornerVisible) || this.isPartRange(M, S) ? this.cornerStyle.display = "none" : (this.cornerStyle.top = a + y - 4 + "px",
373
- this.cornerStyle.left = u + C - 4 + "px",
374
- this.cornerStyle.borderRightWidth = this.cornerDefaultStyle.borderWidth,
375
- this.cornerStyle.width = this.cornerDefaultStyle.width,
376
- this.cornerStyle.display = "none",
377
- E = d(this.wot.wtTable.TABLE),
378
- S === this.wot.getSetting("totalColumns") - 1 && (O = o.offsetLeft + g(o) + parseInt(this.cornerDefaultStyle.width) / 2 >= h(E),
379
- O && (this.cornerStyle.left = Math.floor(u + C - 3 - parseInt(this.cornerDefaultStyle.width) / 2) + "px",
380
- this.cornerStyle.borderRightWidth = 0)),
381
- M === this.wot.getSetting("totalRows") - 1 && (O = o.offsetTop + m(o) + parseInt(this.cornerDefaultStyle.height) / 2 >= f(E),
382
- O && (this.cornerStyle.top = Math.floor(a + y - 3 - parseInt(this.cornerDefaultStyle.height) / 2) + "px",
383
- this.cornerStyle.borderBottomWidth = 0)),
384
- this.cornerStyle.display = "block"),
385
- v() && this.updateMultipleSelectionHandlesPosition(_, R, a, u, C, y)
386
- }
387
- },
388
- disappear: function() {
389
- this.topStyle.display = "none",
390
- this.leftStyle.display = "none",
391
- this.bottomStyle.display = "none",
392
- this.rightStyle.display = "none",
393
- this.cornerStyle.display = "none",
394
- v() && (this.selectionHandles.styles.topLeft.display = "none",
395
- this.selectionHandles.styles.bottomRight.display = "none")
396
- },
397
- hasSetting: function(e) {
398
- return "function" == typeof e ? e() : !!e
399
- }
400
- }, {}),
401
- window.WalkontableBorder = C
402
- }
403
- , {
404
- "cell/coords": 6,
405
- eventManager: 42,
406
- "helpers/browser": 44,
407
- "helpers/dom/element": 47,
408
- "helpers/dom/event": 48,
409
- "overlay/_base.js": 12
410
- }],
411
- 4: [function(e, t, n) {
412
- "use strict";
413
- Object.defineProperties(n, {
414
- WalkontableViewportColumnsCalculator: {
415
- get: function() {
416
- return r
417
- }
418
- },
419
- __esModule: {
420
- value: !0
421
- }
422
- });
423
- var o = new WeakMap
424
- , r = function(e, t, n, r, i, s, a) {
425
- var l = void 0 !== arguments[7] ? arguments[7] : function(e) {
426
- return e
427
- }
428
- ;
429
- o.set(this, {
430
- viewportWidth: e,
431
- scrollOffset: t,
432
- totalColumns: n,
433
- columnWidthFn: r,
434
- overrideFn: i,
435
- onlyFullyVisible: s,
436
- stretchingColumnWidthFn: l
437
- }),
438
- this.count = 0,
439
- this.startColumn = null,
440
- this.endColumn = null,
441
- this.startPosition = null,
442
- this.stretchAllRatio = 0,
443
- this.stretchLastWidth = 0,
444
- this.stretch = a,
445
- this.totalTargetWidth = 0,
446
- this.needVerifyLastColumnWidth = !0,
447
- this.stretchAllColumnsWidth = [],
448
- this.calculate()
449
- }
450
- , i = r;
451
- $traceurRuntime.createClass(r, {
452
- calculate: function() {
453
- for (var e, t = 0, n = !0, r = [], i = o.get(this), s = i.onlyFullyVisible, a = i.overrideFn, l = i.scrollOffset, u = i.totalColumns, c = i.viewportWidth, d = 0; d < u; d++) {
454
- e = this._getColumnWidth(d),
455
- t <= l && !s && (this.startColumn = d);
456
- var h = l > 0 ? c + 1 : c;
457
- if (t >= l && t + e <= l + h && (null == this.startColumn && (this.startColumn = d),
458
- this.endColumn = d),
459
- r.push(t),
460
- t += e,
461
- s || (this.endColumn = d),
462
- t >= l + c) {
463
- n = !1;
464
- break
465
- }
466
- }
467
- if (this.endColumn === u - 1 && n)
468
- for (this.startColumn = this.endColumn; this.startColumn > 0; ) {
469
- var f = r[this.endColumn] + e - r[this.startColumn - 1];
470
- if ((f <= c || !s) && this.startColumn--,
471
- f > c)
472
- break
473
- }
474
- null !== this.startColumn && a && a(this),
475
- this.startPosition = r[this.startColumn],
476
- void 0 == this.startPosition && (this.startPosition = null),
477
- null !== this.startColumn && (this.count = this.endColumn - this.startColumn + 1)
478
- },
479
- refreshStretching: function(e) {
480
- if ("none" !== this.stretch) {
481
- this.totalTargetWidth = e;
482
- for (var t = o.get(this), n = t.totalColumns, r = 0, i = 0; i < n; i++) {
483
- var s = this._getColumnWidth(i)
484
- , a = t.stretchingColumnWidthFn(void 0, i);
485
- "number" == typeof a ? e -= a : r += s
486
- }
487
- var l = e - r;
488
- if ("all" === this.stretch && l > 0)
489
- this.stretchAllRatio = e / r,
490
- this.stretchAllColumnsWidth = [],
491
- this.needVerifyLastColumnWidth = !0;
492
- else if ("last" === this.stretch && e !== 1 / 0) {
493
- var u = this._getColumnWidth(n - 1)
494
- , c = l + u;
495
- this.stretchLastWidth = c >= 0 ? c : u
496
- }
497
- }
498
- },
499
- getStretchedColumnWidth: function(e, t) {
500
- var n = null;
501
- return "all" === this.stretch && 0 !== this.stretchAllRatio ? n = this._getStretchedAllColumnWidth(e, t) : "last" === this.stretch && 0 !== this.stretchLastWidth && (n = this._getStretchedLastColumnWidth(e)),
502
- n
503
- },
504
- _getStretchedAllColumnWidth: function(e, t) {
505
- var n = 0
506
- , r = o.get(this)
507
- , i = r.totalColumns;
508
- if (!this.stretchAllColumnsWidth[e]) {
509
- var s = Math.round(t * this.stretchAllRatio)
510
- , a = r.stretchingColumnWidthFn(s, e);
511
- void 0 === a ? this.stretchAllColumnsWidth[e] = s : this.stretchAllColumnsWidth[e] = isNaN(a) ? this._getColumnWidth(e) : a
512
- }
513
- if (this.stretchAllColumnsWidth.length === i && this.needVerifyLastColumnWidth) {
514
- this.needVerifyLastColumnWidth = !1;
515
- for (var l = 0; l < this.stretchAllColumnsWidth.length; l++)
516
- n += this.stretchAllColumnsWidth[l];
517
- n !== this.totalTargetWidth && (this.stretchAllColumnsWidth[this.stretchAllColumnsWidth.length - 1] += this.totalTargetWidth - n)
518
- }
519
- return this.stretchAllColumnsWidth[e]
520
- },
521
- _getStretchedLastColumnWidth: function(e) {
522
- var t = o.get(this)
523
- , n = t.totalColumns;
524
- return e === n - 1 ? this.stretchLastWidth : null
525
- },
526
- _getColumnWidth: function(e) {
527
- var t = o.get(this).columnWidthFn(e);
528
- return void 0 === t && (t = i.DEFAULT_WIDTH),
529
- t
530
- }
531
- }, {
532
- get DEFAULT_WIDTH() {
533
- return 50
534
- }
535
- }),
536
- window.WalkontableViewportColumnsCalculator = r
537
- }
538
- , {}],
539
- 5: [function(e, t, n) {
540
- "use strict";
541
- Object.defineProperties(n, {
542
- WalkontableViewportRowsCalculator: {
543
- get: function() {
544
- return r
545
- }
546
- },
547
- __esModule: {
548
- value: !0
549
- }
550
- });
551
- var o = new WeakMap
552
- , r = function(e, t, n, r, i, s, a) {
553
- o.set(this, {
554
- viewportHeight: e,
555
- scrollOffset: t,
556
- totalRows: n,
557
- rowHeightFn: r,
558
- overrideFn: i,
559
- onlyFullyVisible: s,
560
- horizontalScrollbarHeight: a
561
- }),
562
- this.count = 0,
563
- this.startRow = null,
564
- this.endRow = null,
565
- this.startPosition = null,
566
- this.calculate()
567
- }
568
- , i = r;
569
- $traceurRuntime.createClass(r, {
570
- calculate: function() {
571
- for (var e = 0, t = !0, n = [], r = o.get(this), s = r.onlyFullyVisible, a = r.overrideFn, l = r.rowHeightFn, u = r.scrollOffset, c = r.totalRows, d = r.viewportHeight, h = r.horizontalScrollbarHeight || 0, f = 0; f < c; f++) {
572
- var p = l(f);
573
- if (void 0 === p && (p = i.DEFAULT_HEIGHT),
574
- e <= u && !s && (this.startRow = f),
575
- e >= u && e + p <= u + d - h && (null === this.startRow && (this.startRow = f),
576
- this.endRow = f),
577
- n.push(e),
578
- e += p,
579
- s || (this.endRow = f),
580
- e >= u + d - h) {
581
- t = !1;
582
- break
583
- }
584
- }
585
- if (this.endRow === c - 1 && t)
586
- for (this.startRow = this.endRow; this.startRow > 0; ) {
587
- var m = n[this.endRow] + p - n[this.startRow - 1];
588
- if ((m <= d - h || !s) && this.startRow--,
589
- m >= d - h)
590
- break
591
- }
592
- null !== this.startRow && a && a(this),
593
- this.startPosition = n[this.startRow],
594
- void 0 == this.startPosition && (this.startPosition = null),
595
- null !== this.startRow && (this.count = this.endRow - this.startRow + 1)
596
- }
597
- }, {
598
- get DEFAULT_HEIGHT() {
599
- return 23
600
- }
601
- }),
602
- window.WalkontableViewportRowsCalculator = r
603
- }
604
- , {}],
605
- 6: [function(e, t, n) {
606
- "use strict";
607
- Object.defineProperties(n, {
608
- WalkontableCellCoords: {
609
- get: function() {
610
- return o
611
- }
612
- },
613
- __esModule: {
614
- value: !0
615
- }
616
- });
617
- var o = function(e, t) {
618
- "undefined" != typeof e && "undefined" != typeof t ? (this.row = e,
619
- this.col = t) : (this.row = null,
620
- this.col = null)
621
- };
622
- $traceurRuntime.createClass(o, {
623
- isValid: function(e) {
624
- return !(this.row < 0 || this.col < 0) && !(this.row >= e.getSetting("totalRows") || this.col >= e.getSetting("totalColumns"))
625
- },
626
- isEqual: function(e) {
627
- return e === this || this.row === e.row && this.col === e.col
628
- },
629
- isSouthEastOf: function(e) {
630
- return this.row >= e.row && this.col >= e.col
631
- },
632
- isNorthWestOf: function(e) {
633
- return this.row <= e.row && this.col <= e.col
634
- },
635
- isSouthWestOf: function(e) {
636
- return this.row >= e.row && this.col <= e.col
637
- },
638
- isNorthEastOf: function(e) {
639
- return this.row <= e.row && this.col >= e.col
640
- }
641
- }, {}),
642
- window.WalkontableCellCoords = o
643
- }
644
- , {}],
645
- 7: [function(e, t, n) {
646
- "use strict";
647
- Object.defineProperties(n, {
648
- WalkontableCellRange: {
649
- get: function() {
650
- return i
651
- }
652
- },
653
- __esModule: {
654
- value: !0
655
- }
656
- });
657
- var o, r = (o = e("cell/coords"),
658
- o && o.__esModule && o || {
659
- default: o
660
- }).WalkontableCellCoords, i = function(e, t, n) {
661
- this.highlight = e,
662
- this.from = t,
663
- this.to = n
664
- }, s = i;
665
- $traceurRuntime.createClass(i, {
666
- isValid: function(e) {
667
- return this.from.isValid(e) && this.to.isValid(e)
668
- },
669
- isSingle: function() {
670
- return this.from.row === this.to.row && this.from.col === this.to.col
671
- },
672
- getHeight: function() {
673
- return Math.max(this.from.row, this.to.row) - Math.min(this.from.row, this.to.row) + 1
674
- },
675
- getWidth: function() {
676
- return Math.max(this.from.col, this.to.col) - Math.min(this.from.col, this.to.col) + 1
677
- },
678
- includes: function(e) {
679
- var t = e
680
- , n = t.row
681
- , o = t.col
682
- , r = this.getTopLeftCorner()
683
- , i = this.getBottomRightCorner();
684
- return r.row <= n && i.row >= n && r.col <= o && i.col >= o
685
- },
686
- includesRange: function(e) {
687
- return this.includes(e.getTopLeftCorner()) && this.includes(e.getBottomRightCorner())
688
- },
689
- isEqual: function(e) {
690
- return Math.min(this.from.row, this.to.row) == Math.min(e.from.row, e.to.row) && Math.max(this.from.row, this.to.row) == Math.max(e.from.row, e.to.row) && Math.min(this.from.col, this.to.col) == Math.min(e.from.col, e.to.col) && Math.max(this.from.col, this.to.col) == Math.max(e.from.col, e.to.col)
691
- },
692
- overlaps: function(e) {
693
- return e.isSouthEastOf(this.getTopLeftCorner()) && e.isNorthWestOf(this.getBottomRightCorner())
694
- },
695
- isSouthEastOf: function(e) {
696
- return this.getTopLeftCorner().isSouthEastOf(e) || this.getBottomRightCorner().isSouthEastOf(e)
697
- },
698
- isNorthWestOf: function(e) {
699
- return this.getTopLeftCorner().isNorthWestOf(e) || this.getBottomRightCorner().isNorthWestOf(e)
700
- },
701
- expand: function(e) {
702
- var t = this.getTopLeftCorner()
703
- , n = this.getBottomRightCorner();
704
- return (e.row < t.row || e.col < t.col || e.row > n.row || e.col > n.col) && (this.from = new r(Math.min(t.row, e.row),Math.min(t.col, e.col)),
705
- this.to = new r(Math.max(n.row, e.row),Math.max(n.col, e.col)),
706
- !0)
707
- },
708
- expandByRange: function(e) {
709
- if (this.includesRange(e) || !this.overlaps(e))
710
- return !1;
711
- var t = this.getTopLeftCorner()
712
- , n = this.getBottomRightCorner()
713
- , o = (this.getTopRightCorner(),
714
- this.getBottomLeftCorner(),
715
- e.getTopLeftCorner())
716
- , i = e.getBottomRightCorner()
717
- , a = Math.min(t.row, o.row)
718
- , l = Math.min(t.col, o.col)
719
- , u = Math.max(n.row, i.row)
720
- , c = Math.max(n.col, i.col)
721
- , d = new r(a,l)
722
- , h = new r(u,c)
723
- , f = new s(d,d,h).isCorner(this.from, e)
724
- , p = e.isEqual(new s(d,d,h));
725
- return f && !p && (this.from.col > d.col && (d.col = c,
726
- h.col = l),
727
- this.from.row > d.row && (d.row = u,
728
- h.row = a)),
729
- this.from = d,
730
- this.to = h,
731
- !0
732
- },
733
- getDirection: function() {
734
- return this.from.isNorthWestOf(this.to) ? "NW-SE" : this.from.isNorthEastOf(this.to) ? "NE-SW" : this.from.isSouthEastOf(this.to) ? "SE-NW" : this.from.isSouthWestOf(this.to) ? "SW-NE" : void 0
735
- },
736
- setDirection: function(e) {
737
- var t, n, o, r;
738
- switch (e) {
739
- case "NW-SE":
740
- t = [this.getTopLeftCorner(), this.getBottomRightCorner()],
741
- this.from = t[0],
742
- this.to = t[1],
743
- t;
744
- break;
745
- case "NE-SW":
746
- n = [this.getTopRightCorner(), this.getBottomLeftCorner()],
747
- this.from = n[0],
748
- this.to = n[1],
749
- n;
750
- break;
751
- case "SE-NW":
752
- o = [this.getBottomRightCorner(), this.getTopLeftCorner()],
753
- this.from = o[0],
754
- this.to = o[1],
755
- o;
756
- break;
757
- case "SW-NE":
758
- r = [this.getBottomLeftCorner(), this.getTopRightCorner()],
759
- this.from = r[0],
760
- this.to = r[1],
761
- r
762
- }
763
- },
764
- getTopLeftCorner: function() {
765
- return new r(Math.min(this.from.row, this.to.row),Math.min(this.from.col, this.to.col))
766
- },
767
- getBottomRightCorner: function() {
768
- return new r(Math.max(this.from.row, this.to.row),Math.max(this.from.col, this.to.col))
769
- },
770
- getTopRightCorner: function() {
771
- return new r(Math.min(this.from.row, this.to.row),Math.max(this.from.col, this.to.col))
772
- },
773
- getBottomLeftCorner: function() {
774
- return new r(Math.max(this.from.row, this.to.row),Math.min(this.from.col, this.to.col))
775
- },
776
- isCorner: function(e, t) {
777
- return !!(t && t.includes(e) && (this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col)) || this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col)) || this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col)) || this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))) || (e.isEqual(this.getTopLeftCorner()) || e.isEqual(this.getTopRightCorner()) || e.isEqual(this.getBottomLeftCorner()) || e.isEqual(this.getBottomRightCorner()))
778
- },
779
- getOppositeCorner: function(e, t) {
780
- if (!(e instanceof r))
781
- return !1;
782
- if (t && t.includes(e)) {
783
- if (this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col)))
784
- return this.getBottomRightCorner();
785
- if (this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col)))
786
- return this.getBottomLeftCorner();
787
- if (this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col)))
788
- return this.getTopRightCorner();
789
- if (this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))
790
- return this.getTopLeftCorner()
791
- }
792
- return e.isEqual(this.getBottomRightCorner()) ? this.getTopLeftCorner() : e.isEqual(this.getTopLeftCorner()) ? this.getBottomRightCorner() : e.isEqual(this.getTopRightCorner()) ? this.getBottomLeftCorner() : e.isEqual(this.getBottomLeftCorner()) ? this.getTopRightCorner() : void 0
793
- },
794
- getBordersSharedWith: function(e) {
795
- if (!this.includesRange(e))
796
- return [];
797
- var t = {
798
- top: Math.min(this.from.row, this.to.row),
799
- bottom: Math.max(this.from.row, this.to.row),
800
- left: Math.min(this.from.col, this.to.col),
801
- right: Math.max(this.from.col, this.to.col)
802
- }
803
- , n = {
804
- top: Math.min(e.from.row, e.to.row),
805
- bottom: Math.max(e.from.row, e.to.row),
806
- left: Math.min(e.from.col, e.to.col),
807
- right: Math.max(e.from.col, e.to.col)
808
- }
809
- , o = [];
810
- return t.top == n.top && o.push("top"),
811
- t.right == n.right && o.push("right"),
812
- t.bottom == n.bottom && o.push("bottom"),
813
- t.left == n.left && o.push("left"),
814
- o
815
- },
816
- getInner: function() {
817
- for (var e = this.getTopLeftCorner(), t = this.getBottomRightCorner(), n = [], o = e.row; o <= t.row; o++)
818
- for (var i = e.col; i <= t.col; i++)
819
- this.from.row === o && this.from.col === i || this.to.row === o && this.to.col === i || n.push(new r(o,i));
820
- return n
821
- },
822
- getAll: function() {
823
- for (var e = this.getTopLeftCorner(), t = this.getBottomRightCorner(), n = [], o = e.row; o <= t.row; o++)
824
- for (var i = e.col; i <= t.col; i++)
825
- e.row === o && e.col === i ? n.push(e) : t.row === o && t.col === i ? n.push(t) : n.push(new r(o,i));
826
- return n
827
- },
828
- forAll: function(e) {
829
- for (var t = this.getTopLeftCorner(), n = this.getBottomRightCorner(), o = t.row; o <= n.row; o++)
830
- for (var r = t.col; r <= n.col; r++) {
831
- var i = e(o, r);
832
- if (i === !1)
833
- return
834
- }
835
- }
836
- }, {}),
837
- window.WalkontableCellRange = i
838
- }
839
- , {
840
- "cell/coords": 6
841
- }],
842
- 8: [function(e, t, n) {
843
- "use strict";
844
- Object.defineProperties(n, {
845
- Walkontable: {
846
- get: function() {
847
- return H
848
- }
849
- },
850
- __esModule: {
851
- value: !0
852
- }
853
- });
854
- var o, r, i, s, a, l, u, c, d, h, f, p, m, g, w = (o = e("helpers/dom/element"),
855
- o && o.__esModule && o || {
856
- default: o
857
- }), v = w.addClass, y = w.fastInnerText, b = w.isVisible, C = w.removeClass, _ = (r = e("helpers/object"),
858
- r && r.__esModule && r || {
859
- default: r
860
- }).objectEach, R = (i = e("helpers/string"),
861
- i && i.__esModule && i || {
862
- default: i
863
- }), M = R.toUpperCaseFirst, S = R.randomString, E = (s = e("event"),
864
- s && s.__esModule && s || {
865
- default: s
866
- }).WalkontableEvent, O = (a = e("overlays"),
867
- a && a.__esModule && a || {
868
- default: a
869
- }).WalkontableOverlays, T = (l = e("scroll"),
870
- l && l.__esModule && l || {
871
- default: l
872
- }).WalkontableScroll, k = (u = e("settings"),
873
- u && u.__esModule && u || {
874
- default: u
875
- }).WalkontableSettings, x = (c = e("table"),
876
- c && c.__esModule && c || {
877
- default: c
878
- }).WalkontableTable, D = (d = e("viewport"),
879
- d && d.__esModule && d || {
880
- default: d
881
- }).WalkontableViewport, H = ((h = e("overlay/_base.js"),
882
- h && h.__esModule && h || {
883
- default: h
884
- }).WalkontableOverlay,
885
- (f = e("overlay/top.js"),
886
- f && f.__esModule && f || {
887
- default: f
888
- }).WalkontableTopOverlay,
889
- (p = e("overlay/left.js"),
890
- p && p.__esModule && p || {
891
- default: p
892
- }).WalkontableLeftOverlay,
893
- (m = e("overlay/debug.js"),
894
- m && m.__esModule && m || {
895
- default: m
896
- }).WalkontableDebugOverlay,
897
- (g = e("overlay/topLeftCorner.js"),
898
- g && g.__esModule && g || {
899
- default: g
900
- }).WalkontableTopLeftCornerOverlay,
901
- function(e) {
902
- var t = [];
903
- if (this.guid = "wt_" + S(),
904
- e.cloneSource ? (this.cloneSource = e.cloneSource,
905
- this.cloneOverlay = e.cloneOverlay,
906
- this.wtSettings = e.cloneSource.wtSettings,
907
- this.wtTable = new x(this,e.table,e.wtRootElement),
908
- this.wtScroll = new T(this),
909
- this.wtViewport = e.cloneSource.wtViewport,
910
- this.wtEvent = new E(this),
911
- this.selections = this.cloneSource.selections) : (this.wtSettings = new k(this,e),
912
- this.wtTable = new x(this,e.table),
913
- this.wtScroll = new T(this),
914
- this.wtViewport = new D(this),
915
- this.wtEvent = new E(this),
916
- this.selections = this.getSetting("selections"),
917
- this.wtOverlays = new O(this),
918
- this.exportSettingsAsClassNames()),
919
- this.wtTable.THEAD.childNodes.length && this.wtTable.THEAD.childNodes[0].childNodes.length) {
920
- for (var n = 0, o = this.wtTable.THEAD.childNodes[0].childNodes.length; n < o; n++)
921
- t.push(this.wtTable.THEAD.childNodes[0].childNodes[n].innerHTML);
922
- this.getSetting("columnHeaders").length || this.update("columnHeaders", [function(e, n) {
923
- y(n, t[e])
924
- }
925
- ])
926
- }
927
- this.drawn = !1,
928
- this.drawInterrupted = !1
929
- }
930
- );
931
- $traceurRuntime.createClass(H, {
932
- draw: function() {
933
- var e = void 0 !== arguments[0] && arguments[0];
934
- return this.drawInterrupted = !1,
935
- e || b(this.wtTable.TABLE) ? this.wtTable.draw(e) : this.drawInterrupted = !0,
936
- this
937
- },
938
- getCell: function(e) {
939
- var t = void 0 !== arguments[1] && arguments[1];
940
- if (!t)
941
- return this.wtTable.getCell(e);
942
- var n = this.wtSettings.getSetting("totalRows")
943
- , o = this.wtSettings.getSetting("fixedRowsTop")
944
- , r = this.wtSettings.getSetting("fixedRowsBottom")
945
- , i = this.wtSettings.getSetting("fixedColumnsLeft");
946
- if (e.row < o && e.col < i)
947
- return this.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell(e);
948
- if (e.row < o)
949
- return this.wtOverlays.topOverlay.clone.wtTable.getCell(e);
950
- if (e.col < i && e.row >= n - r) {
951
- if (this.wtOverlays.bottomLeftCornerOverlay && this.wtOverlays.bottomLeftCornerOverlay.clone)
952
- return this.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell(e)
953
- } else {
954
- if (e.col < i)
955
- return this.wtOverlays.leftOverlay.clone.wtTable.getCell(e);
956
- if (e.row < n && e.row > n - r && this.wtOverlays.bottomOverlay && this.wtOverlays.bottomOverlay.clone)
957
- return this.wtOverlays.bottomOverlay.clone.wtTable.getCell(e)
958
- }
959
- return this.wtTable.getCell(e)
960
- },
961
- update: function(e, t) {
962
- return this.wtSettings.update(e, t)
963
- },
964
- scrollVertical: function(e) {
965
- return this.wtOverlays.topOverlay.scrollTo(e),
966
- this.getSetting("onScrollVertically"),
967
- this
968
- },
969
- scrollHorizontal: function(e) {
970
- return this.wtOverlays.leftOverlay.scrollTo(e),
971
- this.getSetting("onScrollHorizontally"),
972
- this
973
- },
974
- scrollViewport: function(e) {
975
- return this.wtScroll.scrollViewport(e),
976
- this
977
- },
978
- getViewport: function() {
979
- return [this.wtTable.getFirstVisibleRow(), this.wtTable.getFirstVisibleColumn(), this.wtTable.getLastVisibleRow(), this.wtTable.getLastVisibleColumn()]
980
- },
981
- getOverlayName: function() {
982
- return this.cloneOverlay ? this.cloneOverlay.type : "master"
983
- },
984
- isOverlayName: function(e) {
985
- return !!this.cloneOverlay && this.cloneOverlay.type === e
986
- },
987
- exportSettingsAsClassNames: function() {
988
- var e = this
989
- , t = {
990
- rowHeaders: ["array"],
991
- columnHeaders: ["array"]
992
- }
993
- , n = []
994
- , o = [];
995
- _(t, function(t, r) {
996
- t.indexOf("array") > -1 && e.getSetting(r).length && o.push("ht" + M(r)),
997
- n.push("ht" + M(r))
998
- }),
999
- C(this.wtTable.wtRootElement.parentNode, n),
1000
- v(this.wtTable.wtRootElement.parentNode, o)
1001
- },
1002
- getSetting: function(e, t, n, o, r) {
1003
- return this.wtSettings.getSetting(e, t, n, o, r)
1004
- },
1005
- hasSetting: function(e) {
1006
- return this.wtSettings.has(e)
1007
- },
1008
- destroy: function() {
1009
- this.wtOverlays.destroy(),
1010
- this.wtEvent.destroy()
1011
- }
1012
- }, {}),
1013
- window.Walkontable = H
1014
- }
1015
- , {
1016
- event: 9,
1017
- "helpers/dom/element": 47,
1018
- "helpers/object": 53,
1019
- "helpers/string": 55,
1020
- "overlay/_base.js": 12,
1021
- "overlay/debug.js": 13,
1022
- "overlay/left.js": 14,
1023
- "overlay/top.js": 15,
1024
- "overlay/topLeftCorner.js": 16,
1025
- overlays: 17,
1026
- scroll: 18,
1027
- settings: 20,
1028
- table: 21,
1029
- viewport: 23
1030
- }],
1031
- 9: [function(e, t, n) {
1032
- "use strict";
1033
- function o(e) {
1034
- var t = this
1035
- , n = m(e);
1036
- this.instance = e;
1037
- var o = [null, null];
1038
- this.dblClickTimeout = [null, null];
1039
- var r, i = function(e) {
1040
- var n = document.activeElement
1041
- , r = f(h, e.realTarget)
1042
- , i = e.realTarget;
1043
- if (i !== n && r(0) !== n && r(1) !== n) {
1044
- var s = t.parentCell(i);
1045
- c(i, "corner") ? t.instance.getSetting("onCellCornerMouseDown", e, i) : s.TD && t.instance.hasSetting("onCellMouseDown") && t.instance.getSetting("onCellMouseDown", e, s.coords, s.TD, t.instance),
1046
- 2 !== e.button && s.TD && (o[0] = s.TD,
1047
- clearTimeout(t.dblClickTimeout[0]),
1048
- t.dblClickTimeout[0] = setTimeout(function() {
1049
- o[0] = null
1050
- }, 1e3))
1051
- }
1052
- }, s = function(e) {
1053
- t.instance.touchMoving = !0
1054
- }, a = function(e) {
1055
- n.addEventListener(this, "touchmove", s),
1056
- t.checkIfTouchMove = setTimeout(function() {
1057
- return t.instance.touchMoving === !0 ? (t.instance.touchMoving = void 0,
1058
- void n.removeEventListener("touchmove", s, !1)) : void i(e)
1059
- }, 30)
1060
- }, l = function(e) {
1061
- var n, o, r;
1062
- t.instance.hasSetting("onCellMouseOver") && (n = t.instance.wtTable.TABLE,
1063
- o = u(e.realTarget, ["TD", "TH"], n),
1064
- r = t.instance.cloneSource || t.instance,
1065
- o && o !== r.lastMouseOver && d(o, n) && (r.lastMouseOver = o,
1066
- t.instance.getSetting("onCellMouseOver", e, t.instance.wtTable.getCoords(o), o, t.instance)))
1067
- }, g = function(e) {
1068
- if (2 !== e.button) {
1069
- var n = t.parentCell(e.realTarget);
1070
- n.TD === o[0] && n.TD === o[1] ? (c(e.realTarget, "corner") ? t.instance.getSetting("onCellCornerDblClick", e, n.coords, n.TD, t.instance) : t.instance.getSetting("onCellDblClick", e, n.coords, n.TD, t.instance),
1071
- o[0] = null,
1072
- o[1] = null) : n.TD === o[0] ? (t.instance.getSetting("onCellMouseUp", e, n.coords, n.TD, t.instance),
1073
- o[1] = n.TD,
1074
- clearTimeout(t.dblClickTimeout[1]),
1075
- t.dblClickTimeout[1] = setTimeout(function() {
1076
- o[1] = null
1077
- }, 500)) : n.TD && t.instance.hasSetting("onCellMouseUp") && t.instance.getSetting("onCellMouseUp", e, n.coords, n.TD, t.instance)
1078
- }
1079
- }, w = function(e) {
1080
- clearTimeout(r),
1081
- e.preventDefault(),
1082
- g(e)
1083
- };
1084
- if (n.addEventListener(this.instance.wtTable.holder, "mousedown", i),
1085
- n.addEventListener(this.instance.wtTable.TABLE, "mouseover", l),
1086
- n.addEventListener(this.instance.wtTable.holder, "mouseup", g),
1087
- this.instance.wtTable.holder.parentNode.parentNode && p() && !t.instance.wtTable.isWorkingOnClone()) {
1088
- var v = "." + this.instance.wtTable.holder.parentNode.className.split(" ").join(".");
1089
- n.addEventListener(this.instance.wtTable.holder, "touchstart", function(e) {
1090
- t.instance.touchApplied = !0,
1091
- d(e.target, v) && a.call(e.target, e)
1092
- }),
1093
- n.addEventListener(this.instance.wtTable.holder, "touchend", function(e) {
1094
- t.instance.touchApplied = !1,
1095
- d(e.target, v) && w.call(e.target, e)
1096
- }),
1097
- t.instance.momentumScrolling || (t.instance.momentumScrolling = {}),
1098
- n.addEventListener(this.instance.wtTable.holder, "scroll", function(e) {
1099
- clearTimeout(t.instance.momentumScrolling._timeout),
1100
- t.instance.momentumScrolling.ongoing || t.instance.getSetting("onBeforeTouchScroll"),
1101
- t.instance.momentumScrolling.ongoing = !0,
1102
- t.instance.momentumScrolling._timeout = setTimeout(function() {
1103
- t.instance.touchApplied || (t.instance.momentumScrolling.ongoing = !1,
1104
- t.instance.getSetting("onAfterMomentumScroll"))
1105
- }, 200)
1106
- })
1107
- }
1108
- n.addEventListener(window, "resize", function() {
1109
- "none" !== t.instance.getSetting("stretchH") && t.instance.draw()
1110
- }),
1111
- this.destroy = function() {
1112
- clearTimeout(this.dblClickTimeout[0]),
1113
- clearTimeout(this.dblClickTimeout[1]),
1114
- n.destroy()
1115
- }
1116
- }
1117
- Object.defineProperties(n, {
1118
- WalkontableEvent: {
1119
- get: function() {
1120
- return o
1121
- }
1122
- },
1123
- __esModule: {
1124
- value: !0
1125
- }
1126
- });
1127
- var r, i, s, a, l = (r = e("helpers/dom/element"),
1128
- r && r.__esModule && r || {
1129
- default: r
1130
- }), u = l.closestDown, c = l.hasClass, d = l.isChildOf, h = l.getParent, f = (i = e("helpers/function"),
1131
- i && i.__esModule && i || {
1132
- default: i
1133
- }).partial, p = (s = e("helpers/browser"),
1134
- s && s.__esModule && s || {
1135
- default: s
1136
- }).isMobileBrowser, m = (a = e("eventManager"),
1137
- a && a.__esModule && a || {
1138
- default: a
1139
- }).eventManager;
1140
- o.prototype.parentCell = function(e) {
1141
- var t = {}
1142
- , n = this.instance.wtTable.TABLE
1143
- , o = u(e, ["TD", "TH"], n);
1144
- return o ? (t.coords = this.instance.wtTable.getCoords(o),
1145
- t.TD = o) : c(e, "wtBorder") && c(e, "current") ? (t.coords = this.instance.selections.current.cellRange.highlight,
1146
- t.TD = this.instance.wtTable.getCell(t.coords)) : c(e, "wtBorder") && c(e, "area") && this.instance.selections.area.cellRange && (t.coords = this.instance.selections.area.cellRange.to,
1147
- t.TD = this.instance.wtTable.getCell(t.coords)),
1148
- t
1149
- }
1150
- ,
1151
- window.WalkontableEvent = o
1152
- }
1153
- , {
1154
- eventManager: 42,
1155
- "helpers/browser": 44,
1156
- "helpers/dom/element": 47,
1157
- "helpers/function": 50
1158
- }],
1159
- 10: [function(e, t, n) {
1160
- "use strict";
1161
- Object.defineProperties(n, {
1162
- WalkontableColumnFilter: {
1163
- get: function() {
1164
- return o
1165
- }
1166
- },
1167
- __esModule: {
1168
- value: !0
1169
- }
1170
- });
1171
- var o = function(e, t, n) {
1172
- this.offset = e,
1173
- this.total = t,
1174
- this.countTH = n
1175
- };
1176
- $traceurRuntime.createClass(o, {
1177
- offsetted: function(e) {
1178
- return e + this.offset
1179
- },
1180
- unOffsetted: function(e) {
1181
- return e - this.offset
1182
- },
1183
- renderedToSource: function(e) {
1184
- return this.offsetted(e)
1185
- },
1186
- sourceToRendered: function(e) {
1187
- return this.unOffsetted(e)
1188
- },
1189
- offsettedTH: function(e) {
1190
- return e - this.countTH
1191
- },
1192
- unOffsettedTH: function(e) {
1193
- return e + this.countTH
1194
- },
1195
- visibleRowHeadedColumnToSourceColumn: function(e) {
1196
- return this.renderedToSource(this.offsettedTH(e))
1197
- },
1198
- sourceColumnToVisibleRowHeadedColumn: function(e) {
1199
- return this.unOffsettedTH(this.sourceToRendered(e))
1200
- }
1201
- }, {}),
1202
- window.WalkontableColumnFilter = o
1203
- }
1204
- , {}],
1205
- 11: [function(e, t, n) {
1206
- "use strict";
1207
- Object.defineProperties(n, {
1208
- WalkontableRowFilter: {
1209
- get: function() {
1210
- return o
1211
- }
1212
- },
1213
- __esModule: {
1214
- value: !0
1215
- }
1216
- });
1217
- var o = function(e, t, n) {
1218
- this.offset = e,
1219
- this.total = t,
1220
- this.countTH = n
1221
- };
1222
- $traceurRuntime.createClass(o, {
1223
- offsetted: function(e) {
1224
- return e + this.offset
1225
- },
1226
- unOffsetted: function(e) {
1227
- return e - this.offset
1228
- },
1229
- renderedToSource: function(e) {
1230
- return this.offsetted(e)
1231
- },
1232
- sourceToRendered: function(e) {
1233
- return this.unOffsetted(e)
1234
- },
1235
- offsettedTH: function(e) {
1236
- return e - this.countTH
1237
- },
1238
- unOffsettedTH: function(e) {
1239
- return e + this.countTH
1240
- },
1241
- visibleColHeadedRowToSourceRow: function(e) {
1242
- return this.renderedToSource(this.offsettedTH(e))
1243
- },
1244
- sourceRowToVisibleColHeadedRow: function(e) {
1245
- return this.unOffsettedTH(this.sourceToRendered(e))
1246
- }
1247
- }, {}),
1248
- window.WalkontableRowFilter = o
1249
- }
1250
- , {}],
1251
- 12: [function(e, t, n) {
1252
- "use strict";
1253
- Object.defineProperties(n, {
1254
- WalkontableOverlay: {
1255
- get: function() {
1256
- return p
1257
- }
1258
- },
1259
- __esModule: {
1260
- value: !0
1261
- }
1262
- });
1263
- var o, r, i, s, a = (o = e("helpers/dom/element"),
1264
- o && o.__esModule && o || {
1265
- default: o
1266
- }), l = a.getScrollableElement, u = a.getTrimmingContainer, c = (r = e("helpers/object"),
1267
- r && r.__esModule && r || {
1268
- default: r
1269
- }).defineGetter, d = (i = e("helpers/array"),
1270
- i && i.__esModule && i || {
1271
- default: i
1272
- }).arrayEach, h = (s = e("eventManager"),
1273
- s && s.__esModule && s || {
1274
- default: s
1275
- }).eventManager, f = {}, p = function(e) {
1276
- c(this, "wot", e, {
1277
- writable: !1
1278
- }),
1279
- this.instance = this.wot,
1280
- this.type = "",
1281
- this.mainTableScrollableElement = null,
1282
- this.TABLE = this.wot.wtTable.TABLE,
1283
- this.hider = this.wot.wtTable.hider,
1284
- this.spreader = this.wot.wtTable.spreader,
1285
- this.holder = this.wot.wtTable.holder,
1286
- this.wtRootElement = this.wot.wtTable.wtRootElement,
1287
- this.trimmingContainer = u(this.hider.parentNode.parentNode),
1288
- this.areElementSizesAdjusted = !1,
1289
- this.updateStateOfRendering()
1290
- }, m = p;
1291
- $traceurRuntime.createClass(p, {
1292
- updateStateOfRendering: function() {
1293
- var e = this.needFullRender;
1294
- this.needFullRender = this.shouldBeRendered();
1295
- var t = e !== this.needFullRender;
1296
- return t && !this.needFullRender && this.reset(),
1297
- t
1298
- },
1299
- shouldBeRendered: function() {
1300
- return !0
1301
- },
1302
- updateTrimmingContainer: function() {
1303
- this.trimmingContainer = u(this.hider.parentNode.parentNode)
1304
- },
1305
- updateMainScrollableElement: function() {
1306
- this.mainTableScrollableElement = l(this.wot.wtTable.TABLE)
1307
- },
1308
- makeClone: function(e) {
1309
- if (m.CLONE_TYPES.indexOf(e) === -1)
1310
- throw new Error('Clone type "' + e + '" is not supported.');
1311
- var t = document.createElement("DIV")
1312
- , n = document.createElement("TABLE");
1313
- t.className = "ht_clone_" + e + " handsontable",
1314
- t.style.position = "absolute",
1315
- t.style.top = 0,
1316
- t.style.left = 0,
1317
- t.style.overflow = "hidden",
1318
- n.className = this.wot.wtTable.TABLE.className,
1319
- t.appendChild(n),
1320
- this.type = e,
1321
- this.wot.wtTable.wtRootElement.parentNode.appendChild(t);
1322
- var o = this.wot.getSetting("preventOverflow");
1323
- return o === !0 || "horizontal" === o && this.type === m.CLONE_TOP || "vertical" === o && this.type === m.CLONE_LEFT ? this.mainTableScrollableElement = window : this.mainTableScrollableElement = l(this.wot.wtTable.TABLE),
1324
- new Walkontable({
1325
- cloneSource: this.wot,
1326
- cloneOverlay: this,
1327
- table: n
1328
- })
1329
- },
1330
- refresh: function() {
1331
- var e = void 0 !== arguments[0] && arguments[0]
1332
- , t = this.shouldBeRendered();
1333
- this.clone && (this.needFullRender || t) && this.clone.draw(e),
1334
- this.needFullRender = t
1335
- },
1336
- reset: function() {
1337
- if (this.clone) {
1338
- var e = this.clone.wtTable.holder
1339
- , t = this.clone.wtTable.hider
1340
- , n = e.style
1341
- , o = t.style
1342
- , r = e.parentNode.style;
1343
- d([n, o, r], function(e) {
1344
- e.width = "",
1345
- e.height = ""
1346
- })
1347
- }
1348
- },
1349
- destroy: function() {
1350
- h(this.clone).destroy()
1351
- }
1352
- }, {
1353
- get CLONE_TOP() {
1354
- return "top"
1355
- },
1356
- get CLONE_BOTTOM() {
1357
- return "bottom"
1358
- },
1359
- get CLONE_LEFT() {
1360
- return "left"
1361
- },
1362
- get CLONE_TOP_LEFT_CORNER() {
1363
- return "top_left_corner"
1364
- },
1365
- get CLONE_BOTTOM_LEFT_CORNER() {
1366
- return "bottom_left_corner"
1367
- },
1368
- get CLONE_DEBUG() {
1369
- return "debug"
1370
- },
1371
- get CLONE_TYPES() {
1372
- return [m.CLONE_TOP, m.CLONE_BOTTOM, m.CLONE_LEFT, m.CLONE_TOP_LEFT_CORNER, m.CLONE_BOTTOM_LEFT_CORNER, m.CLONE_DEBUG]
1373
- },
1374
- registerOverlay: function(e, t) {
1375
- if (m.CLONE_TYPES.indexOf(e) === -1)
1376
- throw new Error("Unsupported overlay (" + e + ").");
1377
- f[e] = t
1378
- },
1379
- createOverlay: function(e, t) {
1380
- return new f[e](t)
1381
- },
1382
- isOverlayTypeOf: function(e, t) {
1383
- return !(!e || !f[t]) && e instanceof f[t]
1384
- }
1385
- }),
1386
- window.WalkontableOverlay = p
1387
- }
1388
- , {
1389
- eventManager: 42,
1390
- "helpers/array": 43,
1391
- "helpers/dom/element": 47,
1392
- "helpers/object": 53
1393
- }],
1394
- 13: [function(e, t, n) {
1395
- "use strict";
1396
- Object.defineProperties(n, {
1397
- WalkontableDebugOverlay: {
1398
- get: function() {
1399
- return a
1400
- }
1401
- },
1402
- __esModule: {
1403
- value: !0
1404
- }
1405
- });
1406
- var o, r, i = (o = e("helpers/dom/element"),
1407
- o && o.__esModule && o || {
1408
- default: o
1409
- }).addClass, s = (r = e("_base"),
1410
- r && r.__esModule && r || {
1411
- default: r
1412
- }).WalkontableOverlay, a = function(e) {
1413
- $traceurRuntime.superConstructor(l).call(this, e),
1414
- this.clone = this.makeClone(s.CLONE_DEBUG),
1415
- this.clone.wtTable.holder.style.opacity = .4,
1416
- this.clone.wtTable.holder.style.textShadow = "0 0 2px #ff0000",
1417
- i(this.clone.wtTable.holder.parentNode, "wtDebugVisible")
1418
- }, l = a;
1419
- $traceurRuntime.createClass(a, {}, {}, s),
1420
- window.WalkontableDebugOverlay = a,
1421
- s.registerOverlay(s.CLONE_DEBUG, a)
1422
- }
1423
- , {
1424
- _base: 12,
1425
- "helpers/dom/element": 47
1426
- }],
1427
- 14: [function(e, t, n) {
1428
- "use strict";
1429
- Object.defineProperties(n, {
1430
- WalkontableLeftOverlay: {
1431
- get: function() {
1432
- return w
1433
- }
1434
- },
1435
- __esModule: {
1436
- value: !0
1437
- }
1438
- });
1439
- var o, r, i = (o = e("helpers/dom/element"),
1440
- o && o.__esModule && o || {
1441
- default: o
1442
- }), s = i.addClass, a = i.getScrollbarWidth, l = i.getScrollLeft, u = i.getWindowScrollTop, c = i.hasClass, d = i.outerWidth, h = i.innerHeight, f = i.removeClass, p = i.setOverlayPosition, m = i.resetCssTransform, g = (r = e("_base"),
1443
- r && r.__esModule && r || {
1444
- default: r
1445
- }).WalkontableOverlay, w = function(e) {
1446
- $traceurRuntime.superConstructor(v).call(this, e),
1447
- this.clone = this.makeClone(g.CLONE_LEFT)
1448
- }, v = w;
1449
- $traceurRuntime.createClass(w, {
1450
- shouldBeRendered: function() {
1451
- return !(!this.wot.getSetting("fixedColumnsLeft") && !this.wot.getSetting("rowHeaders").length)
1452
- },
1453
- resetFixedPosition: function() {
1454
- if (this.needFullRender && this.wot.wtTable.holder.parentNode) {
1455
- var e = this.clone.wtTable.holder.parentNode
1456
- , t = 0
1457
- , n = this.wot.getSetting("preventOverflow");
1458
- if (this.trimmingContainer !== window || n && "horizontal" === n)
1459
- t = this.getScrollPosition(),
1460
- m(e);
1461
- else {
1462
- var o, r, i = this.wot.wtTable.hider.getBoundingClientRect(), s = Math.ceil(i.left), a = Math.ceil(i.right);
1463
- r = this.wot.wtTable.hider.style.top,
1464
- r = "" === r ? 0 : r,
1465
- o = s < 0 && a - e.offsetWidth > 0 ? -s : 0,
1466
- t = o,
1467
- o += "px",
1468
- p(e, o, r)
1469
- }
1470
- this.adjustHeaderBordersPosition(t),
1471
- this.adjustElementsSize()
1472
- }
1473
- },
1474
- setScrollPosition: function(e) {
1475
- this.mainTableScrollableElement === window ? window.scrollTo(e, u()) : this.mainTableScrollableElement.scrollLeft = e
1476
- },
1477
- onScroll: function() {
1478
- this.wot.getSetting("onScrollVertically")
1479
- },
1480
- sumCellSizes: function(e, t) {
1481
- for (var n = 0, o = this.wot.wtSettings.defaultColumnWidth; e < t; )
1482
- n += this.wot.wtTable.getStretchedColumnWidth(e) || o,
1483
- e++;
1484
- return n
1485
- },
1486
- adjustElementsSize: function() {
1487
- var e = void 0 !== arguments[0] && arguments[0];
1488
- this.updateTrimmingContainer(),
1489
- (this.needFullRender || e) && (this.adjustRootElementSize(),
1490
- this.adjustRootChildrenSize(),
1491
- e || (this.areElementSizesAdjusted = !0))
1492
- },
1493
- adjustRootElementSize: function() {
1494
- var e, t = this.wot.wtTable.holder, n = t.clientHeight === t.offsetHeight ? 0 : a(), o = this.clone.wtTable.holder.parentNode, r = o.style, i = this.wot.getSetting("preventOverflow");
1495
- if (this.trimmingContainer !== window || "vertical" === i) {
1496
- var s = this.wot.wtViewport.getWorkspaceHeight() - n;
1497
- s = Math.min(s, h(this.wot.wtTable.wtRootElement)),
1498
- r.height = s + "px"
1499
- } else
1500
- r.height = "";
1501
- this.clone.wtTable.holder.style.height = r.height,
1502
- e = d(this.clone.wtTable.TABLE),
1503
- r.width = (0 === e ? e : e + 4) + "px"
1504
- },
1505
- adjustRootChildrenSize: function() {
1506
- var e = a();
1507
- this.clone.wtTable.hider.style.height = this.hider.style.height,
1508
- this.clone.wtTable.holder.style.height = this.clone.wtTable.holder.parentNode.style.height,
1509
- 0 === e && (e = 30),
1510
- this.clone.wtTable.holder.style.width = parseInt(this.clone.wtTable.holder.parentNode.style.width, 10) + e + "px"
1511
- },
1512
- applyToDOM: function() {
1513
- var e = this.wot.getSetting("totalColumns");
1514
- if (this.areElementSizesAdjusted || this.adjustElementsSize(),
1515
- "number" == typeof this.wot.wtViewport.columnsRenderCalculator.startPosition)
1516
- this.spreader.style.left = this.wot.wtViewport.columnsRenderCalculator.startPosition + "px";
1517
- else {
1518
- if (0 !== e)
1519
- throw new Error("Incorrect value of the columnsRenderCalculator");
1520
- this.spreader.style.left = "0"
1521
- }
1522
- this.spreader.style.right = "",
1523
- this.needFullRender && this.syncOverlayOffset()
1524
- },
1525
- syncOverlayOffset: function() {
1526
- "number" == typeof this.wot.wtViewport.rowsRenderCalculator.startPosition ? this.clone.wtTable.spreader.style.top = this.wot.wtViewport.rowsRenderCalculator.startPosition + "px" : this.clone.wtTable.spreader.style.top = ""
1527
- },
1528
- scrollTo: function(e, t) {
1529
- var n = this.getTableParentOffset()
1530
- , o = this.wot.cloneSource ? this.wot.cloneSource : this.wot
1531
- , r = o.wtTable.holder
1532
- , i = 0;
1533
- t && r.offsetWidth !== r.clientWidth && (i = a()),
1534
- t ? (n += this.sumCellSizes(0, e + 1),
1535
- n -= this.wot.wtViewport.getViewportWidth()) : n += this.sumCellSizes(this.wot.getSetting("fixedColumnsLeft"), e),
1536
- n += i,
1537
- this.setScrollPosition(n)
1538
- },
1539
- getTableParentOffset: function() {
1540
- var e = this.wot.getSetting("preventOverflow")
1541
- , t = 0;
1542
- return e || this.trimmingContainer !== window || (t = this.wot.wtTable.holderOffset.left),
1543
- t
1544
- },
1545
- getScrollPosition: function() {
1546
- return l(this.mainTableScrollableElement)
1547
- },
1548
- adjustHeaderBordersPosition: function(e) {
1549
- var t = this.wot.wtTable.holder.parentNode
1550
- , n = this.wot.getSetting("rowHeaders")
1551
- , o = this.wot.getSetting("fixedColumnsLeft")
1552
- , r = this.wot.getSetting("totalRows");
1553
- if (r ? f(t, "emptyRows") : s(t, "emptyRows"),
1554
- o && !n.length)
1555
- s(t, "innerBorderLeft");
1556
- else if (!o && n.length) {
1557
- var i = c(t, "innerBorderLeft");
1558
- e ? s(t, "innerBorderLeft") : f(t, "innerBorderLeft"),
1559
- (!i && e || i && !e) && this.wot.wtOverlays.adjustElementsSize()
1560
- }
1561
- }
1562
- }, {}, g),
1563
- window.WalkontableLeftOverlay = w,
1564
- g.registerOverlay(g.CLONE_LEFT, w)
1565
- }
1566
- , {
1567
- _base: 12,
1568
- "helpers/dom/element": 47
1569
- }],
1570
- 15: [function(e, t, n) {
1571
- "use strict";
1572
- Object.defineProperties(n, {
1573
- WalkontableTopOverlay: {
1574
- get: function() {
1575
- return w
1576
- }
1577
- },
1578
- __esModule: {
1579
- value: !0
1580
- }
1581
- });
1582
- var o, r, i = (o = e("helpers/dom/element"),
1583
- o && o.__esModule && o || {
1584
- default: o
1585
- }), s = i.addClass, a = i.getScrollbarWidth, l = i.getScrollTop, u = i.getWindowScrollLeft, c = i.hasClass, d = i.outerHeight, h = i.innerWidth, f = i.removeClass, p = i.setOverlayPosition, m = i.resetCssTransform, g = (r = e("_base"),
1586
- r && r.__esModule && r || {
1587
- default: r
1588
- }).WalkontableOverlay, w = function(e) {
1589
- $traceurRuntime.superConstructor(v).call(this, e),
1590
- this.clone = this.makeClone(g.CLONE_TOP)
1591
- }, v = w;
1592
- $traceurRuntime.createClass(w, {
1593
- shouldBeRendered: function() {
1594
- return !(!this.wot.getSetting("fixedRowsTop") && !this.wot.getSetting("columnHeaders").length)
1595
- },
1596
- resetFixedPosition: function() {
1597
- if (this.needFullRender && this.wot.wtTable.holder.parentNode) {
1598
- var e = this.clone.wtTable.holder.parentNode
1599
- , t = 0
1600
- , n = this.wot.getSetting("preventOverflow");
1601
- if (this.trimmingContainer !== window || n && "vertical" === n)
1602
- t = this.getScrollPosition(),
1603
- m(e);
1604
- else {
1605
- var o, r, i = this.wot.wtTable.hider.getBoundingClientRect(), s = Math.ceil(i.top), a = Math.ceil(i.bottom);
1606
- o = this.wot.wtTable.hider.style.left,
1607
- o = "" === o ? 0 : o,
1608
- r = s < 0 && a - e.offsetHeight > 0 ? -s : 0,
1609
- t = r,
1610
- r += "px",
1611
- p(e, o, r)
1612
- }
1613
- this.adjustHeaderBordersPosition(t),
1614
- this.adjustElementsSize()
1615
- }
1616
- },
1617
- setScrollPosition: function(e) {
1618
- this.mainTableScrollableElement === window ? window.scrollTo(u(), e) : this.mainTableScrollableElement.scrollTop = e
1619
- },
1620
- onScroll: function() {
1621
- this.wot.getSetting("onScrollHorizontally")
1622
- },
1623
- sumCellSizes: function(e, t) {
1624
- for (var n = 0, o = this.wot.wtSettings.settings.defaultRowHeight; e < t; ) {
1625
- var r = this.wot.wtTable.getRowHeight(e);
1626
- n += void 0 === r ? o : r,
1627
- e++
1628
- }
1629
- return n
1630
- },
1631
- adjustElementsSize: function() {
1632
- var e = void 0 !== arguments[0] && arguments[0];
1633
- this.updateTrimmingContainer(),
1634
- (this.needFullRender || e) && (this.adjustRootElementSize(),
1635
- this.adjustRootChildrenSize(),
1636
- e || (this.areElementSizesAdjusted = !0))
1637
- },
1638
- adjustRootElementSize: function() {
1639
- var e, t = this.wot.wtTable.holder, n = t.clientWidth === t.offsetWidth ? 0 : a(), o = this.clone.wtTable.holder.parentNode, r = o.style, i = this.wot.getSetting("preventOverflow");
1640
- if (this.trimmingContainer !== window || "horizontal" === i) {
1641
- var s = this.wot.wtViewport.getWorkspaceWidth() - n;
1642
- s = Math.min(s, h(this.wot.wtTable.wtRootElement)),
1643
- r.width = s + "px"
1644
- } else
1645
- r.width = "";
1646
- this.clone.wtTable.holder.style.width = r.width,
1647
- e = d(this.clone.wtTable.TABLE),
1648
- r.height = (0 === e ? e : e + 4) + "px"
1649
- },
1650
- adjustRootChildrenSize: function() {
1651
- var e = a();
1652
- this.clone.wtTable.hider.style.width = this.hider.style.width,
1653
- this.clone.wtTable.holder.style.width = this.clone.wtTable.holder.parentNode.style.width,
1654
- 0 === e && (e = 30),
1655
- this.clone.wtTable.holder.style.height = parseInt(this.clone.wtTable.holder.parentNode.style.height, 10) + e + "px"
1656
- },
1657
- applyToDOM: function() {
1658
- var e = this.wot.getSetting("totalRows");
1659
- if (this.areElementSizesAdjusted || this.adjustElementsSize(),
1660
- "number" == typeof this.wot.wtViewport.rowsRenderCalculator.startPosition)
1661
- this.spreader.style.top = this.wot.wtViewport.rowsRenderCalculator.startPosition + "px";
1662
- else {
1663
- if (0 !== e)
1664
- throw new Error("Incorrect value of the rowsRenderCalculator");
1665
- this.spreader.style.top = "0"
1666
- }
1667
- this.spreader.style.bottom = "",
1668
- this.needFullRender && this.syncOverlayOffset()
1669
- },
1670
- syncOverlayOffset: function() {
1671
- "number" == typeof this.wot.wtViewport.columnsRenderCalculator.startPosition ? this.clone.wtTable.spreader.style.left = this.wot.wtViewport.columnsRenderCalculator.startPosition + "px" : this.clone.wtTable.spreader.style.left = ""
1672
- },
1673
- scrollTo: function(e, t) {
1674
- var n = this.getTableParentOffset()
1675
- , o = this.wot.cloneSource ? this.wot.cloneSource : this.wot
1676
- , r = o.wtTable.holder
1677
- , i = 0;
1678
- if (t && r.offsetHeight !== r.clientHeight && (i = a()),
1679
- t) {
1680
- var s = this.wot.getSetting("fixedRowsBottom")
1681
- , l = (this.wot.getSetting("fixedRowsTop"),
1682
- this.wot.getSetting("totalRows"));
1683
- n += this.sumCellSizes(0, e + 1),
1684
- n -= this.wot.wtViewport.getViewportHeight() - this.sumCellSizes(l - s, l),
1685
- n += 1
1686
- } else
1687
- n += this.sumCellSizes(this.wot.getSetting("fixedRowsTop"), e);
1688
- n += i,
1689
- this.setScrollPosition(n)
1690
- },
1691
- getTableParentOffset: function() {
1692
- return this.mainTableScrollableElement === window ? this.wot.wtTable.holderOffset.top : 0
1693
- },
1694
- getScrollPosition: function() {
1695
- return l(this.mainTableScrollableElement)
1696
- },
1697
- adjustHeaderBordersPosition: function(e) {
1698
- var t = this.wot.wtTable.holder.parentNode
1699
- , n = this.wot.getSetting("totalColumns");
1700
- if (n ? f(t, "emptyColumns") : s(t, "emptyColumns"),
1701
- 0 === this.wot.getSetting("fixedRowsTop") && this.wot.getSetting("columnHeaders").length > 0) {
1702
- var o = c(t, "innerBorderTop");
1703
- e || 0 === this.wot.getSetting("totalRows") ? s(t, "innerBorderTop") : f(t, "innerBorderTop"),
1704
- (!o && e || o && !e) && this.wot.wtOverlays.adjustElementsSize()
1705
- }
1706
- if (0 === this.wot.getSetting("rowHeaders").length) {
1707
- var r = this.clone.wtTable.THEAD.querySelectorAll("th:nth-of-type(2)");
1708
- if (r)
1709
- for (var i = 0; i < r.length; i++)
1710
- r[i].style["border-left-width"] = 0
1711
- }
1712
- }
1713
- }, {}, g),
1714
- window.WalkontableTopOverlay = w,
1715
- g.registerOverlay(g.CLONE_TOP, w)
1716
- }
1717
- , {
1718
- _base: 12,
1719
- "helpers/dom/element": 47
1720
- }],
1721
- 16: [function(e, t, n) {
1722
- "use strict";
1723
- Object.defineProperties(n, {
1724
- WalkontableTopLeftCornerOverlay: {
1725
- get: function() {
1726
- return d
1727
- }
1728
- },
1729
- __esModule: {
1730
- value: !0
1731
- }
1732
- });
1733
- var o, r, i = (o = e("helpers/dom/element"),
1734
- o && o.__esModule && o || {
1735
- default: o
1736
- }), s = i.outerHeight, a = i.outerWidth, l = i.setOverlayPosition, u = i.resetCssTransform, c = (r = e("_base"),
1737
- r && r.__esModule && r || {
1738
- default: r
1739
- }).WalkontableOverlay, d = function(e) {
1740
- $traceurRuntime.superConstructor(h).call(this, e),
1741
- this.clone = this.makeClone(c.CLONE_TOP_LEFT_CORNER)
1742
- }, h = d;
1743
- $traceurRuntime.createClass(d, {
1744
- shouldBeRendered: function() {
1745
- return !(!this.wot.getSetting("fixedRowsTop") && !this.wot.getSetting("columnHeaders").length || !this.wot.getSetting("fixedColumnsLeft") && !this.wot.getSetting("rowHeaders").length)
1746
- },
1747
- resetFixedPosition: function() {
1748
- if (this.updateTrimmingContainer(),
1749
- this.wot.wtTable.holder.parentNode) {
1750
- var e = this.clone.wtTable.holder.parentNode
1751
- , t = s(this.clone.wtTable.TABLE)
1752
- , n = a(this.clone.wtTable.TABLE)
1753
- , o = this.wot.getSetting("preventOverflow");
1754
- if (this.trimmingContainer === window) {
1755
- var r = this.wot.wtTable.hider.getBoundingClientRect()
1756
- , i = Math.ceil(r.top)
1757
- , c = Math.ceil(r.left)
1758
- , d = Math.ceil(r.bottom)
1759
- , h = Math.ceil(r.right)
1760
- , f = "0"
1761
- , p = "0";
1762
- o && "vertical" !== o || c < 0 && h - e.offsetWidth > 0 && (f = -c + "px"),
1763
- o && "horizontal" !== o || i < 0 && d - e.offsetHeight > 0 && (p = -i + "px"),
1764
- l(e, f, p)
1765
- } else
1766
- u(e);
1767
- e.style.height = (0 === t ? t : t + 4) + "px",
1768
- e.style.width = (0 === n ? n : n + 4) + "px"
1769
- }
1770
- }
1771
- }, {}, c),
1772
- window.WalkontableTopLeftCornerOverlay = d,
1773
- c.registerOverlay(c.CLONE_TOP_LEFT_CORNER, d)
1774
- }
1775
- , {
1776
- _base: 12,
1777
- "helpers/dom/element": 47
1778
- }],
1779
- 17: [function(e, t, n) {
1780
- "use strict";
1781
- Object.defineProperties(n, {
1782
- WalkontableOverlays: {
1783
- get: function() {
1784
- return w
1785
- }
1786
- },
1787
- __esModule: {
1788
- value: !0
1789
- }
1790
- });
1791
- var o, r, i, s, a, l = (o = e("helpers/dom/element"),
1792
- o && o.__esModule && o || {
1793
- default: o
1794
- }), u = l.getScrollableElement, c = l.getScrollbarWidth, d = l.getScrollLeft, h = l.getScrollTop, f = (r = e("helpers/array"),
1795
- r && r.__esModule && r || {
1796
- default: r
1797
- }).arrayEach, p = (i = e("helpers/unicode"),
1798
- i && i.__esModule && i || {
1799
- default: i
1800
- }).isKey, m = (s = e("helpers/browser"),
1801
- s && s.__esModule && s || {
1802
- default: s
1803
- }).isMobileBrowser, g = (a = e("eventManager"),
1804
- a && a.__esModule && a || {
1805
- default: a
1806
- }).EventManager, w = function(e) {
1807
- this.wot = e,
1808
- this.instance = this.wot,
1809
- this.eventManager = new g(this.wot),
1810
- this.wot.update("scrollbarWidth", c()),
1811
- this.wot.update("scrollbarHeight", c()),
1812
- this.scrollableElement = u(this.wot.wtTable.TABLE),
1813
- this.prepareOverlays(),
1814
- this.destroyed = !1,
1815
- this.keyPressed = !1,
1816
- this.spreaderLastSize = {
1817
- width: null,
1818
- height: null
1819
- },
1820
- this.overlayScrollPositions = {
1821
- master: {
1822
- top: 0,
1823
- left: 0
1824
- },
1825
- top: {
1826
- top: null,
1827
- left: 0
1828
- },
1829
- bottom: {
1830
- top: null,
1831
- left: 0
1832
- },
1833
- left: {
1834
- top: 0,
1835
- left: null
1836
- }
1837
- },
1838
- this.pendingScrollCallbacks = {
1839
- master: {
1840
- top: 0,
1841
- left: 0
1842
- },
1843
- top: {
1844
- left: 0
1845
- },
1846
- bottom: {
1847
- left: 0
1848
- },
1849
- left: {
1850
- top: 0
1851
- }
1852
- },
1853
- this.verticalScrolling = !1,
1854
- this.horizontalScrolling = !1,
1855
- this.delegatedScrollCallback = !1,
1856
- this.registeredListeners = [],
1857
- this.registerListeners()
1858
- };
1859
- $traceurRuntime.createClass(w, {
1860
- prepareOverlays: function() {
1861
- var e = !1;
1862
- return this.topOverlay ? e = this.topOverlay.updateStateOfRendering() || e : this.topOverlay = WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP, this.wot),
1863
- "undefined" == typeof WalkontableBottomOverlay && (this.bottomOverlay = {
1864
- needFullRender: !1,
1865
- updateStateOfRendering: function() {
1866
- return !1
1867
- }
1868
- }),
1869
- "undefined" == typeof WalkontableBottomLeftCornerOverlay && (this.bottomLeftCornerOverlay = {
1870
- needFullRender: !1,
1871
- updateStateOfRendering: function() {
1872
- return !1
1873
- }
1874
- }),
1875
- this.bottomOverlay ? e = this.bottomOverlay.updateStateOfRendering() || e : this.bottomOverlay = WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM, this.wot),
1876
- this.leftOverlay ? e = this.leftOverlay.updateStateOfRendering() || e : this.leftOverlay = WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_LEFT, this.wot),
1877
- this.topOverlay.needFullRender && this.leftOverlay.needFullRender && (this.topLeftCornerOverlay ? e = this.topLeftCornerOverlay.updateStateOfRendering() || e : this.topLeftCornerOverlay = WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP_LEFT_CORNER, this.wot)),
1878
- this.bottomOverlay.needFullRender && this.leftOverlay.needFullRender && (this.bottomLeftCornerOverlay ? e = this.bottomLeftCornerOverlay.updateStateOfRendering() || e : this.bottomLeftCornerOverlay = WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER, this.wot)),
1879
- this.wot.getSetting("debug") && !this.debug && (this.debug = WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_DEBUG, this.wot)),
1880
- e
1881
- },
1882
- refreshAll: function() {
1883
- if (this.wot.drawn) {
1884
- if (!this.wot.wtTable.holder.parentNode)
1885
- return void this.destroy();
1886
- this.wot.draw(!0),
1887
- this.verticalScrolling && this.leftOverlay.onScroll(),
1888
- this.horizontalScrolling && this.topOverlay.onScroll(),
1889
- this.verticalScrolling = !1,
1890
- this.horizontalScrolling = !1
1891
- }
1892
- },
1893
- registerListeners: function() {
1894
- var e = this
1895
- , t = this.topOverlay.mainTableScrollableElement
1896
- , n = this.leftOverlay.mainTableScrollableElement
1897
- , o = [];
1898
- for (o.push([document.documentElement, "keydown", function(t) {
1899
- return e.onKeyDown(t)
1900
- }
1901
- ]),
1902
- o.push([document.documentElement, "keyup", function() {
1903
- return e.onKeyUp()
1904
- }
1905
- ]),
1906
- o.push([document, "visibilitychange", function() {
1907
- return e.onKeyUp()
1908
- }
1909
- ]),
1910
- o.push([t, "scroll", function(t) {
1911
- return e.onTableScroll(t)
1912
- }
1913
- ]),
1914
- t !== n && o.push([n, "scroll", function(t) {
1915
- return e.onTableScroll(t)
1916
- }
1917
- ]),
1918
- this.topOverlay.needFullRender && (o.push([this.topOverlay.clone.wtTable.holder, "scroll", function(t) {
1919
- return e.onTableScroll(t)
1920
- }
1921
- ]),
1922
- o.push([this.topOverlay.clone.wtTable.holder, "wheel", function(t) {
1923
- return e.onTableScroll(t)
1924
- }
1925
- ])),
1926
- this.bottomOverlay.needFullRender && (o.push([this.bottomOverlay.clone.wtTable.holder, "scroll", function(t) {
1927
- return e.onTableScroll(t)
1928
- }
1929
- ]),
1930
- o.push([this.bottomOverlay.clone.wtTable.holder, "wheel", function(t) {
1931
- return e.onTableScroll(t)
1932
- }
1933
- ])),
1934
- this.leftOverlay.needFullRender && (o.push([this.leftOverlay.clone.wtTable.holder, "scroll", function(t) {
1935
- return e.onTableScroll(t)
1936
- }
1937
- ]),
1938
- o.push([this.leftOverlay.clone.wtTable.holder, "wheel", function(t) {
1939
- return e.onTableScroll(t)
1940
- }
1941
- ])),
1942
- this.topLeftCornerOverlay && this.topLeftCornerOverlay.needFullRender && o.push([this.topLeftCornerOverlay.clone.wtTable.holder, "wheel", function(t) {
1943
- return e.onTableScroll(t)
1944
- }
1945
- ]),
1946
- this.bottomLeftCornerOverlay && this.bottomLeftCornerOverlay.needFullRender && o.push([this.bottomLeftCornerOverlay.clone.wtTable.holder, "wheel", function(t) {
1947
- return e.onTableScroll(t)
1948
- }
1949
- ]),
1950
- this.topOverlay.trimmingContainer !== window && this.leftOverlay.trimmingContainer !== window && o.push([window, "wheel", function(t) {
1951
- var n, o = t.wheelDeltaY || t.deltaY, r = t.wheelDeltaX || t.deltaX;
1952
- e.topOverlay.clone.wtTable.holder.contains(t.realTarget) ? n = "top" : e.bottomOverlay.clone && e.bottomOverlay.clone.wtTable.holder.contains(t.realTarget) ? n = "bottom" : e.leftOverlay.clone.wtTable.holder.contains(t.realTarget) ? n = "left" : e.topLeftCornerOverlay && e.topLeftCornerOverlay.clone && e.topLeftCornerOverlay.clone.wtTable.holder.contains(t.realTarget) ? n = "topLeft" : e.bottomLeftCornerOverlay && e.bottomLeftCornerOverlay.clone && e.bottomLeftCornerOverlay.clone.wtTable.holder.contains(t.realTarget) && (n = "bottomLeft"),
1953
- ("top" == n && 0 !== o || "left" == n && 0 !== r || "bottom" == n && 0 !== o || ("topLeft" === n || "bottomLeft" === n) && (0 !== o || 0 !== r)) && t.preventDefault()
1954
- }
1955
- ]); o.length; ) {
1956
- var r = o.pop();
1957
- this.eventManager.addEventListener(r[0], r[1], r[2]),
1958
- this.registeredListeners.push(r)
1959
- }
1960
- },
1961
- deregisterListeners: function() {
1962
- for (; this.registeredListeners.length; ) {
1963
- var e = this.registeredListeners.pop();
1964
- this.eventManager.removeEventListener(e[0], e[1], e[2])
1965
- }
1966
- },
1967
- onTableScroll: function(e) {
1968
- if (!m()) {
1969
- var t = this.leftOverlay.mainTableScrollableElement
1970
- , n = this.topOverlay.mainTableScrollableElement
1971
- , o = e.target;
1972
- this.keyPressed && (n !== window && o !== window && !e.target.contains(n) || t !== window && o !== window && !e.target.contains(t)) || ("scroll" === e.type ? this.syncScrollPositions(e) : this.translateMouseWheelToScroll(e))
1973
- }
1974
- },
1975
- onKeyDown: function(e) {
1976
- this.keyPressed = p(e.keyCode, "ARROW_UP|ARROW_RIGHT|ARROW_DOWN|ARROW_LEFT")
1977
- },
1978
- onKeyUp: function() {
1979
- this.keyPressed = !1
1980
- },
1981
- translateMouseWheelToScroll: function(e) {
1982
- var t = this.topOverlay.clone.wtTable.holder
1983
- , n = this.bottomOverlay.clone ? this.bottomOverlay.clone.wtTable.holder : null
1984
- , o = this.leftOverlay.clone.wtTable.holder
1985
- , r = this.topLeftCornerOverlay && this.topLeftCornerOverlay.clone ? this.topLeftCornerOverlay.clone.wtTable.holder : null
1986
- , i = this.bottomLeftCornerOverlay && this.bottomLeftCornerOverlay.clone ? this.bottomLeftCornerOverlay.clone.wtTable.holder : null
1987
- , s = -.2
1988
- , a = e.wheelDeltaY || -1 * e.deltaY
1989
- , l = e.wheelDeltaX || -1 * e.deltaX
1990
- , u = null
1991
- , c = {
1992
- type: "wheel"
1993
- }
1994
- , d = e.target
1995
- , h = null;
1996
- for (1 === e.deltaMode && (a *= 120,
1997
- l *= 120); d != document && null != d; ) {
1998
- if (d.className.indexOf("wtHolder") > -1) {
1999
- u = d;
2000
- break
2001
- }
2002
- d = d.parentNode
2003
- }
2004
- return c.target = u,
2005
- u === r || u === i ? (this.syncScrollPositions(c, s * l, "x"),
2006
- this.syncScrollPositions(c, s * a, "y")) : (u === t || u === n ? h = a : u === o && (h = l),
2007
- this.syncScrollPositions(c, s * h)),
2008
- !1
2009
- },
2010
- syncScrollPositions: function(e) {
2011
- var t = void 0 !== arguments[1] ? arguments[1] : null
2012
- , n = void 0 !== arguments[2] ? arguments[2] : null;
2013
- if (!this.destroyed) {
2014
- if (0 === arguments.length)
2015
- return void this.syncScrollWithMaster();
2016
- var o, r, i, s, a, l = this.leftOverlay.mainTableScrollableElement, u = this.topOverlay.mainTableScrollableElement, c = e.target, f = 0, p = !1, m = !1, g = this.wot.getSetting("preventOverflow");
2017
- this.topOverlay.needFullRender && (o = this.topOverlay.clone.wtTable.holder),
2018
- this.bottomOverlay.needFullRender && (a = this.bottomOverlay.clone.wtTable.holder),
2019
- this.leftOverlay.needFullRender && (r = this.leftOverlay.clone.wtTable.holder),
2020
- this.leftOverlay.needFullRender && this.topOverlay.needFullRender && (i = this.topLeftCornerOverlay.clone.wtTable.holder),
2021
- this.leftOverlay.needFullRender && this.bottomOverlay.needFullRender && (s = this.bottomLeftCornerOverlay.clone.wtTable.holder),
2022
- c === document && (c = window),
2023
- c === l || c === u ? (f = d(g ? this.scrollableElement : c),
2024
- this.horizontalScrolling = !0,
2025
- this.overlayScrollPositions.master.left = f,
2026
- p = !0,
2027
- this.pendingScrollCallbacks.master.left > 0 ? this.pendingScrollCallbacks.master.left-- : (o && o.scrollLeft !== f && (null == t && this.pendingScrollCallbacks.top.left++,
2028
- o.scrollLeft = f,
2029
- m = l !== window),
2030
- a && a.scrollLeft !== f && (null == t && this.pendingScrollCallbacks.bottom.left++,
2031
- a.scrollLeft = f,
2032
- m = l !== window)),
2033
- f = h(c),
2034
- this.verticalScrolling = !0,
2035
- this.overlayScrollPositions.master.top = f,
2036
- p = !0,
2037
- this.pendingScrollCallbacks.master.top > 0 ? this.pendingScrollCallbacks.master.top-- : r && r.scrollTop !== f && (null == t && this.pendingScrollCallbacks.left.top++,
2038
- r.scrollTop = f,
2039
- m = u !== window)) : c === a ? (f = d(c),
2040
- this.horizontalScrolling = !0,
2041
- this.overlayScrollPositions.bottom.left = f,
2042
- p = !0,
2043
- this.pendingScrollCallbacks.bottom.left > 0 ? this.pendingScrollCallbacks.bottom.left-- : (null == t && this.pendingScrollCallbacks.master.left++,
2044
- l.scrollLeft = f,
2045
- o && o.scrollLeft !== f && (null == t && this.pendingScrollCallbacks.top.left++,
2046
- o.scrollLeft = f,
2047
- m = u !== window)),
2048
- null !== t && (p = !0,
2049
- u.scrollTop += t)) : c === o ? (f = d(c),
2050
- this.horizontalScrolling = !0,
2051
- this.overlayScrollPositions.top.left = f,
2052
- p = !0,
2053
- this.pendingScrollCallbacks.top.left > 0 ? this.pendingScrollCallbacks.top.left-- : (null == t && this.pendingScrollCallbacks.master.left++,
2054
- l.scrollLeft = f),
2055
- null !== t && (p = !0,
2056
- u.scrollTop += t),
2057
- a && a.scrollLeft !== f && (null == t && this.pendingScrollCallbacks.bottom.left++,
2058
- a.scrollLeft = f,
2059
- m = u !== window)) : c === r ? (f = h(c),
2060
- this.overlayScrollPositions.left.top !== f && (this.verticalScrolling = !0,
2061
- this.overlayScrollPositions.left.top = f,
2062
- p = !0,
2063
- this.pendingScrollCallbacks.left.top > 0 ? this.pendingScrollCallbacks.left.top-- : (null == t && this.pendingScrollCallbacks.master.top++,
2064
- u.scrollTop = f)),
2065
- null !== t && (p = !0,
2066
- u.scrollLeft += t)) : c !== i && c !== s || null !== t && (p = !0,
2067
- "x" === n ? u.scrollLeft += t : "y" === n && (u.scrollTop += t)),
2068
- !this.keyPressed && p && "scroll" === e.type && (this.delegatedScrollCallback ? this.delegatedScrollCallback = !1 : this.refreshAll(),
2069
- m && (this.delegatedScrollCallback = !0))
2070
- }
2071
- },
2072
- syncScrollWithMaster: function() {
2073
- var e = this.topOverlay.mainTableScrollableElement
2074
- , t = e
2075
- , n = t.scrollLeft
2076
- , o = t.scrollTop;
2077
- this.topOverlay.needFullRender && (this.topOverlay.clone.wtTable.holder.scrollLeft = n),
2078
- this.bottomOverlay.needFullRender && (this.bottomOverlay.clone.wtTable.holder.scrollLeft = n),
2079
- this.leftOverlay.needFullRender && (this.leftOverlay.clone.wtTable.holder.scrollTop = o)
2080
- },
2081
- updateMainScrollableElements: function() {
2082
- this.deregisterListeners(),
2083
- this.leftOverlay.updateMainScrollableElement(),
2084
- this.topOverlay.updateMainScrollableElement(),
2085
- this.bottomOverlay.needFullRender && this.bottomOverlay.updateMainScrollableElement(),
2086
- this.scrollableElement = u(this.wot.wtTable.TABLE),
2087
- this.registerListeners()
2088
- },
2089
- destroy: function() {
2090
- this.eventManager.destroy(),
2091
- this.topOverlay.destroy(),
2092
- this.bottomOverlay.clone && this.bottomOverlay.destroy(),
2093
- this.leftOverlay.destroy(),
2094
- this.topLeftCornerOverlay && this.topLeftCornerOverlay.destroy(),
2095
- this.bottomLeftCornerOverlay && this.bottomLeftCornerOverlay.clone && this.bottomLeftCornerOverlay.destroy(),
2096
- this.debug && this.debug.destroy(),
2097
- this.destroyed = !0
2098
- },
2099
- refresh: function() {
2100
- var e = void 0 !== arguments[0] && arguments[0];
2101
- if (this.topOverlay.areElementSizesAdjusted && this.leftOverlay.areElementSizesAdjusted) {
2102
- var t = this.wot.wtTable.wtRootElement.parentNode || this.wot.wtTable.wtRootElement
2103
- , n = t.clientWidth
2104
- , o = t.clientHeight;
2105
- n === this.spreaderLastSize.width && o === this.spreaderLastSize.height || (this.spreaderLastSize.width = n,
2106
- this.spreaderLastSize.height = o,
2107
- this.adjustElementsSize())
2108
- }
2109
- this.bottomOverlay.clone && this.bottomOverlay.refresh(e),
2110
- this.leftOverlay.refresh(e),
2111
- this.topOverlay.refresh(e),
2112
- this.topLeftCornerOverlay && this.topLeftCornerOverlay.refresh(e),
2113
- this.bottomLeftCornerOverlay && this.bottomLeftCornerOverlay.clone && this.bottomLeftCornerOverlay.refresh(e),
2114
- this.debug && this.debug.refresh(e)
2115
- },
2116
- adjustElementsSize: function() {
2117
- var e = void 0 !== arguments[0] && arguments[0]
2118
- , t = this.wot.getSetting("totalColumns")
2119
- , n = this.wot.getSetting("totalRows")
2120
- , o = this.wot.wtViewport.getRowHeaderWidth()
2121
- , r = this.wot.wtViewport.getColumnHeaderHeight()
2122
- , i = this.wot.wtTable.hider.style;
2123
- i.width = o + this.leftOverlay.sumCellSizes(0, t) + "px",
2124
- i.height = r + this.topOverlay.sumCellSizes(0, n) + 1 + "px",
2125
- this.topOverlay.adjustElementsSize(e),
2126
- this.leftOverlay.adjustElementsSize(e),
2127
- this.bottomOverlay.clone && this.bottomOverlay.adjustElementsSize(e)
2128
- },
2129
- applyToDOM: function() {
2130
- this.topOverlay.areElementSizesAdjusted && this.leftOverlay.areElementSizesAdjusted || this.adjustElementsSize(),
2131
- this.topOverlay.applyToDOM(),
2132
- this.bottomOverlay.clone && this.bottomOverlay.applyToDOM(),
2133
- this.leftOverlay.applyToDOM()
2134
- },
2135
- getParentOverlay: function(e) {
2136
- if (!e)
2137
- return null;
2138
- var t = [this.topOverlay, this.leftOverlay, this.bottomOverlay, this.topLeftCornerOverlay, this.bottomLeftCornerOverlay]
2139
- , n = null;
2140
- return f(t, function(t, o) {
2141
- t && t.clone && t.clone.wtTable.TABLE.contains(e) && (n = t.clone)
2142
- }),
2143
- n
2144
- }
2145
- }, {}),
2146
- window.WalkontableOverlays = w
2147
- }
2148
- , {
2149
- eventManager: 42,
2150
- "helpers/array": 43,
2151
- "helpers/browser": 44,
2152
- "helpers/dom/element": 47,
2153
- "helpers/unicode": 56
2154
- }],
2155
- 18: [function(e, t, n) {
2156
- "use strict";
2157
- Object.defineProperties(n, {
2158
- WalkontableScroll: {
2159
- get: function() {
2160
- return p
2161
- }
2162
- },
2163
- __esModule: {
2164
- value: !0
2165
- }
2166
- });
2167
- var o, r, i = (o = e("helpers/dom/element"),
2168
- o && o.__esModule && o || {
2169
- default: o
2170
- }), s = i.innerHeight, a = i.innerWidth, l = i.getScrollLeft, u = i.getScrollTop, c = i.offset, d = (r = e("helpers/number"),
2171
- r && r.__esModule && r || {
2172
- default: r
2173
- }), h = d.rangeEach, f = d.rangeEachReverse, p = function(e) {
2174
- this.wot = e,
2175
- this.instance = e
2176
- };
2177
- $traceurRuntime.createClass(p, {
2178
- scrollViewport: function(e) {
2179
- if (this.wot.drawn) {
2180
- var t = this._getVariables()
2181
- , n = t.topOverlay
2182
- , o = t.leftOverlay
2183
- , r = t.totalRows
2184
- , i = t.totalColumns
2185
- , s = t.fixedRowsTop
2186
- , a = t.fixedRowsBottom
2187
- , l = t.fixedColumnsLeft;
2188
- if (e.row < 0 || e.row > Math.max(r - 1, 0))
2189
- throw new Error("row " + e.row + " does not exist");
2190
- if (e.col < 0 || e.col > Math.max(i - 1, 0))
2191
- throw new Error("column " + e.col + " does not exist");
2192
- e.row >= s && e.row < this.getFirstVisibleRow() ? n.scrollTo(e.row) : e.row > this.getLastVisibleRow() && e.row < r - a && n.scrollTo(e.row, !0),
2193
- e.col >= l && e.col < this.getFirstVisibleColumn() ? o.scrollTo(e.col) : e.col > this.getLastVisibleColumn() && o.scrollTo(e.col, !0)
2194
- }
2195
- },
2196
- getFirstVisibleRow: function() {
2197
- var e = this._getVariables()
2198
- , t = e.topOverlay
2199
- , n = e.wtTable
2200
- , o = e.wtViewport
2201
- , r = e.totalRows
2202
- , i = e.fixedRowsTop
2203
- , a = n.getFirstVisibleRow();
2204
- if (t.mainTableScrollableElement === window) {
2205
- var l = c(n.wtRootElement)
2206
- , d = s(n.hider)
2207
- , h = s(window)
2208
- , p = u(window);
2209
- if (l.top + d - h <= p) {
2210
- var m = o.getColumnHeaderHeight();
2211
- m += t.sumCellSizes(0, i),
2212
- f(r, 1, function(e) {
2213
- if (m += t.sumCellSizes(e - 1, e),
2214
- l.top + d - m <= p)
2215
- return a = e,
2216
- !1
2217
- })
2218
- }
2219
- }
2220
- return a
2221
- },
2222
- getLastVisibleRow: function() {
2223
- var e = this._getVariables()
2224
- , t = e.topOverlay
2225
- , n = e.wtTable
2226
- , o = e.wtViewport
2227
- , r = e.totalRows
2228
- , i = n.getLastVisibleRow();
2229
- if (t.mainTableScrollableElement === window) {
2230
- var a = c(n.wtRootElement)
2231
- , l = s(window)
2232
- , d = u(window);
2233
- if (a.top > d) {
2234
- var f = o.getColumnHeaderHeight();
2235
- h(1, r, function(e) {
2236
- if (f += t.sumCellSizes(e - 1, e),
2237
- a.top + f - d >= l)
2238
- return i = e - 2,
2239
- !1
2240
- })
2241
- }
2242
- }
2243
- return i
2244
- },
2245
- getFirstVisibleColumn: function() {
2246
- var e = this._getVariables()
2247
- , t = e.leftOverlay
2248
- , n = e.wtTable
2249
- , o = e.wtViewport
2250
- , r = e.totalColumns
2251
- , i = (e.fixedColumnsLeft,
2252
- n.getFirstVisibleColumn());
2253
- if (t.mainTableScrollableElement === window) {
2254
- var s = c(n.wtRootElement)
2255
- , u = a(n.hider)
2256
- , d = a(window)
2257
- , h = l(window);
2258
- if (s.left + u - d <= h) {
2259
- var p = o.getRowHeaderWidth();
2260
- f(r, 1, function(e) {
2261
- if (p += t.sumCellSizes(e - 1, e),
2262
- s.left + u - p <= h)
2263
- return i = e,
2264
- !1
2265
- })
2266
- }
2267
- }
2268
- return i
2269
- },
2270
- getLastVisibleColumn: function() {
2271
- var e = this._getVariables()
2272
- , t = e.leftOverlay
2273
- , n = e.wtTable
2274
- , o = e.wtViewport
2275
- , r = e.totalColumns
2276
- , i = n.getLastVisibleColumn();
2277
- if (t.mainTableScrollableElement === window) {
2278
- var s = c(n.wtRootElement)
2279
- , u = a(window)
2280
- , d = l(window);
2281
- if (s.left > d) {
2282
- var f = o.getRowHeaderWidth();
2283
- h(1, r, function(e) {
2284
- if (f += t.sumCellSizes(e - 1, e),
2285
- s.left + f - d >= u)
2286
- return i = e - 2,
2287
- !1
2288
- })
2289
- }
2290
- }
2291
- return i
2292
- },
2293
- _getVariables: function() {
2294
- var e = this.wot
2295
- , t = e.wtOverlays.topOverlay
2296
- , n = e.wtOverlays.leftOverlay
2297
- , o = e.wtTable
2298
- , r = e.wtViewport
2299
- , i = e.getSetting("totalRows")
2300
- , s = e.getSetting("totalColumns")
2301
- , a = e.getSetting("fixedRowsTop")
2302
- , l = e.getSetting("fixedRowsBottom")
2303
- , u = e.getSetting("fixedColumnsLeft");
2304
- return {
2305
- topOverlay: t,
2306
- leftOverlay: n,
2307
- wtTable: o,
2308
- wtViewport: r,
2309
- totalRows: i,
2310
- totalColumns: s,
2311
- fixedRowsTop: a,
2312
- fixedRowsBottom: l,
2313
- fixedColumnsLeft: u
2314
- }
2315
- }
2316
- }, {}),
2317
- window.WalkontableScroll = p
2318
- }
2319
- , {
2320
- "helpers/dom/element": 47,
2321
- "helpers/number": 52
2322
- }],
2323
- 19: [function(e, t, n) {
2324
- "use strict";
2325
- Object.defineProperties(n, {
2326
- WalkontableSelection: {
2327
- get: function() {
2328
- return d
2329
- }
2330
- },
2331
- __esModule: {
2332
- value: !0
2333
- }
2334
- });
2335
- var o, r, i, s, a = (o = e("helpers/dom/element"),
2336
- o && o.__esModule && o || {
2337
- default: o
2338
- }).addClass, l = (r = e("border"),
2339
- r && r.__esModule && r || {
2340
- default: r
2341
- }).WalkontableBorder, u = (i = e("cell/coords"),
2342
- i && i.__esModule && i || {
2343
- default: i
2344
- }).WalkontableCellCoords, c = (s = e("cell/range"),
2345
- s && s.__esModule && s || {
2346
- default: s
2347
- }).WalkontableCellRange, d = function(e, t) {
2348
- this.settings = e,
2349
- this.cellRange = t || null,
2350
- this.instanceBorders = {}
2351
- };
2352
- $traceurRuntime.createClass(d, {
2353
- getBorder: function(e) {
2354
- return this.instanceBorders[e.guid] ? this.instanceBorders[e.guid] : void (this.instanceBorders[e.guid] = new l(e,this.settings))
2355
- },
2356
- isEmpty: function() {
2357
- return null === this.cellRange
2358
- },
2359
- add: function(e) {
2360
- this.isEmpty() ? this.cellRange = new c(e,e,e) : this.cellRange.expand(e)
2361
- },
2362
- replace: function(e, t) {
2363
- if (!this.isEmpty()) {
2364
- if (this.cellRange.from.isEqual(e))
2365
- return this.cellRange.from = t,
2366
- !0;
2367
- if (this.cellRange.to.isEqual(e))
2368
- return this.cellRange.to = t,
2369
- !0
2370
- }
2371
- return !1
2372
- },
2373
- clear: function() {
2374
- this.cellRange = null
2375
- },
2376
- getCorners: function() {
2377
- var e = this.cellRange.getTopLeftCorner()
2378
- , t = this.cellRange.getBottomRightCorner();
2379
- return [e.row, e.col, t.row, t.col]
2380
- },
2381
- addClassAtCoords: function(e, t, n, o) {
2382
- var r = e.wtTable.getCell(new u(t,n));
2383
- "object" == typeof r && a(r, o)
2384
- },
2385
- draw: function(e) {
2386
- if (this.isEmpty()) {
2387
- if (this.settings.border) {
2388
- var t = this.getBorder(e);
2389
- t && t.disappear()
2390
- }
2391
- } else {
2392
- for (var n, o, r, i = e.wtTable.getRenderedRowsCount(), s = e.wtTable.getRenderedColumnsCount(), l = this.getCorners(), u = 0; u < s; u++)
2393
- if (o = e.wtTable.columnFilter.renderedToSource(u),
2394
- o >= l[1] && o <= l[3] && (r = e.wtTable.getColumnHeader(o))) {
2395
- var c = [];
2396
- this.settings.highlightHeaderClassName && c.push(this.settings.highlightHeaderClassName),
2397
- this.settings.highlightColumnClassName && c.push(this.settings.highlightColumnClassName),
2398
- a(r, c)
2399
- }
2400
- for (var d = 0; d < i; d++) {
2401
- if (n = e.wtTable.rowFilter.renderedToSource(d),
2402
- n >= l[0] && n <= l[2] && (r = e.wtTable.getRowHeader(n))) {
2403
- var h = [];
2404
- this.settings.highlightHeaderClassName && h.push(this.settings.highlightHeaderClassName),
2405
- this.settings.highlightRowClassName && h.push(this.settings.highlightRowClassName),
2406
- a(r, h)
2407
- }
2408
- for (var f = 0; f < s; f++)
2409
- o = e.wtTable.columnFilter.renderedToSource(f),
2410
- n >= l[0] && n <= l[2] && o >= l[1] && o <= l[3] ? this.settings.className && this.addClassAtCoords(e, n, o, this.settings.className) : n >= l[0] && n <= l[2] ? this.settings.highlightRowClassName && this.addClassAtCoords(e, n, o, this.settings.highlightRowClassName) : o >= l[1] && o <= l[3] && this.settings.highlightColumnClassName && this.addClassAtCoords(e, n, o, this.settings.highlightColumnClassName)
2411
- }
2412
- if (e.getSetting("onBeforeDrawBorders", l, this.settings.className),
2413
- this.settings.border) {
2414
- var p = this.getBorder(e);
2415
- p && p.appear(l)
2416
- }
2417
- }
2418
- }
2419
- }, {}),
2420
- window.WalkontableSelection = d
2421
- }
2422
- , {
2423
- border: 3,
2424
- "cell/coords": 6,
2425
- "cell/range": 7,
2426
- "helpers/dom/element": 47
2427
- }],
2428
- 20: [function(e, t, n) {
2429
- "use strict";
2430
- Object.defineProperties(n, {
2431
- WalkontableSettings: {
2432
- get: function() {
2433
- return i
2434
- }
2435
- },
2436
- __esModule: {
2437
- value: !0
2438
- }
2439
- });
2440
- var o, r = (o = e("helpers/dom/element"),
2441
- o && o.__esModule && o || {
2442
- default: o
2443
- }).fastInnerText, i = function(e, t) {
2444
- var n = this;
2445
- this.wot = e,
2446
- this.instance = e,
2447
- this.defaults = {
2448
- table: void 0,
2449
- debug: !1,
2450
- externalRowCalculator: !1,
2451
- stretchH: "none",
2452
- currentRowClassName: null,
2453
- currentColumnClassName: null,
2454
- preventOverflow: function() {
2455
- return !1
2456
- },
2457
- data: void 0,
2458
- fixedColumnsLeft: 0,
2459
- fixedRowsTop: 0,
2460
- fixedRowsBottom: 0,
2461
- minSpareRows: 0,
2462
- rowHeaders: function() {
2463
- return []
2464
- },
2465
- columnHeaders: function() {
2466
- return []
2467
- },
2468
- totalRows: void 0,
2469
- totalColumns: void 0,
2470
- cellRenderer: function(e, t, o) {
2471
- var i = n.getSetting("data", e, t);
2472
- r(o, void 0 === i || null === i ? "" : i)
2473
- },
2474
- columnWidth: function(e) {},
2475
- rowHeight: function(e) {},
2476
- defaultRowHeight: 23,
2477
- defaultColumnWidth: 50,
2478
- selections: null,
2479
- hideBorderOnMouseDownOver: !1,
2480
- viewportRowCalculatorOverride: null,
2481
- viewportColumnCalculatorOverride: null,
2482
- onCellMouseDown: null,
2483
- onCellMouseOver: null,
2484
- onCellMouseUp: null,
2485
- onCellDblClick: null,
2486
- onCellCornerMouseDown: null,
2487
- onCellCornerDblClick: null,
2488
- beforeDraw: null,
2489
- onDraw: null,
2490
- onBeforeDrawBorders: null,
2491
- onScrollVertically: null,
2492
- onScrollHorizontally: null,
2493
- onBeforeTouchScroll: null,
2494
- onAfterMomentumScroll: null,
2495
- onBeforeStretchingColumnWidth: function(e) {
2496
- return e
2497
- },
2498
- onModifyRowHeaderWidth: null,
2499
- scrollbarWidth: 10,
2500
- scrollbarHeight: 10,
2501
- renderAllRows: !1,
2502
- groups: !1,
2503
- rowHeaderWidth: null,
2504
- columnHeaderHeight: null,
2505
- headerClassName: null
2506
- },
2507
- this.settings = {};
2508
- for (var o in this.defaults)
2509
- if (this.defaults.hasOwnProperty(o))
2510
- if (void 0 !== t[o])
2511
- this.settings[o] = t[o];
2512
- else {
2513
- if (void 0 === this.defaults[o])
2514
- throw new Error('A required setting "' + o + '" was not provided');
2515
- this.settings[o] = this.defaults[o]
2516
- }
2517
- };
2518
- $traceurRuntime.createClass(i, {
2519
- update: function(e, t) {
2520
- if (void 0 === t)
2521
- for (var n in e)
2522
- e.hasOwnProperty(n) && (this.settings[n] = e[n]);
2523
- else
2524
- this.settings[e] = t;
2525
- return this.wot
2526
- },
2527
- getSetting: function(e, t, n, o, r) {
2528
- return "function" == typeof this.settings[e] ? this.settings[e](t, n, o, r) : void 0 !== t && Array.isArray(this.settings[e]) ? this.settings[e][t] : this.settings[e]
2529
- },
2530
- has: function(e) {
2531
- return !!this.settings[e]
2532
- }
2533
- }, {}),
2534
- window.WalkontableSettings = i
2535
- }
2536
- , {
2537
- "helpers/dom/element": 47
2538
- }],
2539
- 21: [function(e, t, n) {
2540
- "use strict";
2541
- Object.defineProperties(n, {
2542
- WalkontableTable: {
2543
- get: function() {
2544
- return S
2545
- }
2546
- },
2547
- __esModule: {
2548
- value: !0
2549
- }
2550
- });
2551
- var o, r, i, s, a, l, u, c = (o = e("helpers/dom/element"),
2552
- o && o.__esModule && o || {
2553
- default: o
2554
- }), d = c.getStyle, h = c.getTrimmingContainer, f = c.hasClass, p = c.index, m = c.offset, g = c.removeClass, w = c.removeTextNodes, v = c.overlayContainsElement, y = c.closest, b = (r = e("helpers/function"),
2555
- r && r.__esModule && r || {
2556
- default: r
2557
- }).isFunction, C = (i = e("cell/coords"),
2558
- i && i.__esModule && i || {
2559
- default: i
2560
- }).WalkontableCellCoords, _ = ((s = e("cell/range"),
2561
- s && s.__esModule && s || {
2562
- default: s
2563
- }).WalkontableCellRange,
2564
- (a = e("filter/column"),
2565
- a && a.__esModule && a || {
2566
- default: a
2567
- }).WalkontableColumnFilter), R = (l = e("filter/row"),
2568
- l && l.__esModule && l || {
2569
- default: l
2570
- }).WalkontableRowFilter, M = (u = e("tableRenderer"),
2571
- u && u.__esModule && u || {
2572
- default: u
2573
- }).WalkontableTableRenderer, S = function(e, t) {
2574
- var n = this;
2575
- this.wot = e,
2576
- this.instance = this.wot,
2577
- this.TABLE = t,
2578
- this.TBODY = null,
2579
- this.THEAD = null,
2580
- this.COLGROUP = null,
2581
- this.tableOffset = 0,
2582
- this.holderOffset = 0,
2583
- w(this.TABLE),
2584
- this.spreader = this.createSpreader(this.TABLE),
2585
- this.hider = this.createHider(this.spreader),
2586
- this.holder = this.createHolder(this.hider),
2587
- this.wtRootElement = this.holder.parentNode,
2588
- this.alignOverlaysWithTrimmingContainer(),
2589
- this.fixTableDomTree(),
2590
- this.colgroupChildrenLength = this.COLGROUP.childNodes.length,
2591
- this.theadChildrenLength = this.THEAD.firstChild ? this.THEAD.firstChild.childNodes.length : 0,
2592
- this.tbodyChildrenLength = this.TBODY.childNodes.length,
2593
- this.rowFilter = null,
2594
- this.columnFilter = null,
2595
- this.correctHeaderWidth = !1;
2596
- var o = this.wot.wtSettings.settings.rowHeaderWidth;
2597
- this.wot.wtSettings.settings.rowHeaderWidth = function() {
2598
- return n._modifyRowHeaderWidth(o)
2599
- }
2600
- };
2601
- $traceurRuntime.createClass(S, {
2602
- fixTableDomTree: function() {
2603
- this.TBODY = this.TABLE.querySelector("tbody"),
2604
- this.TBODY || (this.TBODY = document.createElement("tbody"),
2605
- this.TABLE.appendChild(this.TBODY)),
2606
- this.THEAD = this.TABLE.querySelector("thead"),
2607
- this.THEAD || (this.THEAD = document.createElement("thead"),
2608
- this.TABLE.insertBefore(this.THEAD, this.TBODY)),
2609
- this.COLGROUP = this.TABLE.querySelector("colgroup"),
2610
- this.COLGROUP || (this.COLGROUP = document.createElement("colgroup"),
2611
- this.TABLE.insertBefore(this.COLGROUP, this.THEAD)),
2612
- this.wot.getSetting("columnHeaders").length && !this.THEAD.childNodes.length && this.THEAD.appendChild(document.createElement("TR"))
2613
- },
2614
- createSpreader: function(e) {
2615
- var t, n = e.parentNode;
2616
- return n && 1 === n.nodeType && f(n, "wtHolder") || (t = document.createElement("div"),
2617
- t.className = "wtSpreader",
2618
- n && n.insertBefore(t, e),
2619
- t.appendChild(e)),
2620
- t.style.position = "relative",
2621
- t
2622
- },
2623
- createHider: function(e) {
2624
- var t, n = e.parentNode;
2625
- return n && 1 === n.nodeType && f(n, "wtHolder") || (t = document.createElement("div"),
2626
- t.className = "wtHider",
2627
- n && n.insertBefore(t, e),
2628
- t.appendChild(e)),
2629
- t
2630
- },
2631
- createHolder: function(e) {
2632
- var t, n = e.parentNode;
2633
- return n && 1 === n.nodeType && f(n, "wtHolder") || (t = document.createElement("div"),
2634
- t.style.position = "relative",
2635
- t.className = "wtHolder",
2636
- n && n.insertBefore(t, e),
2637
- this.isWorkingOnClone() || (t.parentNode.className += "ht_master handsontable"),
2638
- t.appendChild(e)),
2639
- t
2640
- },
2641
- alignOverlaysWithTrimmingContainer: function() {
2642
- var e = h(this.wtRootElement);
2643
- if (!this.isWorkingOnClone())
2644
- if (this.holder.parentNode.style.position = "relative",
2645
- e === window) {
2646
- var t = this.wot.getSetting("preventOverflow");
2647
- t || (this.holder.style.overflow = "visible",
2648
- this.wtRootElement.style.overflow = "visible")
2649
- } else
2650
- this.holder.style.width = d(e, "width"),
2651
- this.holder.style.height = d(e, "height"),
2652
- this.holder.style.overflow = ""
2653
- },
2654
- isWorkingOnClone: function() {
2655
- return !!this.wot.cloneSource
2656
- },
2657
- draw: function(e) {
2658
- var t = this.wot
2659
- , n = t.wtOverlays
2660
- , o = t.wtViewport
2661
- , r = this.instance.getSetting("totalRows")
2662
- , i = this.wot.getSetting("rowHeaders").length
2663
- , s = this.wot.getSetting("columnHeaders").length
2664
- , a = !1;
2665
- if (!this.isWorkingOnClone() && (this.holderOffset = m(this.holder),
2666
- e = o.createRenderCalculators(e),
2667
- i && !this.wot.getSetting("fixedColumnsLeft"))) {
2668
- var l = n.leftOverlay.getScrollPosition()
2669
- , u = this.correctHeaderWidth;
2670
- this.correctHeaderWidth = l > 0,
2671
- u !== this.correctHeaderWidth && (e = !1)
2672
- }
2673
- if (this.isWorkingOnClone() || (a = n.prepareOverlays()),
2674
- e)
2675
- this.isWorkingOnClone() || o.createVisibleCalculators(),
2676
- n && n.refresh(!0);
2677
- else {
2678
- this.isWorkingOnClone() ? this.tableOffset = this.wot.cloneSource.wtTable.tableOffset : this.tableOffset = m(this.TABLE);
2679
- var c;
2680
- c = WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay, WalkontableOverlay.CLONE_DEBUG) || WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay, WalkontableOverlay.CLONE_TOP) || WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay, WalkontableOverlay.CLONE_TOP_LEFT_CORNER) ? 0 : WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay, WalkontableOverlay.CLONE_BOTTOM) || WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay, WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER) ? Math.max(r - this.wot.getSetting("fixedRowsBottom"), 0) : o.rowsRenderCalculator.startRow;
2681
- var d;
2682
- d = WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay, WalkontableOverlay.CLONE_DEBUG) || WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay, WalkontableOverlay.CLONE_LEFT) || WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay, WalkontableOverlay.CLONE_TOP_LEFT_CORNER) || WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay, WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER) ? 0 : o.columnsRenderCalculator.startColumn,
2683
- this.rowFilter = new R(c,r,s),
2684
- this.columnFilter = new _(d,this.wot.getSetting("totalColumns"),i),
2685
- this.alignOverlaysWithTrimmingContainer(),
2686
- this._doDraw()
2687
- }
2688
- return this.refreshSelections(e),
2689
- this.isWorkingOnClone() || (n.topOverlay.resetFixedPosition(),
2690
- n.bottomOverlay.clone && n.bottomOverlay.resetFixedPosition(),
2691
- n.leftOverlay.resetFixedPosition(),
2692
- n.topLeftCornerOverlay && n.topLeftCornerOverlay.resetFixedPosition(),
2693
- n.bottomLeftCornerOverlay && n.bottomLeftCornerOverlay.clone && n.bottomLeftCornerOverlay.resetFixedPosition()),
2694
- a && n.syncScrollWithMaster(),
2695
- this.wot.drawn = !0,
2696
- this
2697
- },
2698
- _doDraw: function() {
2699
- var e = new M(this);
2700
- e.render()
2701
- },
2702
- removeClassFromCells: function(e) {
2703
- for (var t = this.TABLE.querySelectorAll("." + e), n = 0, o = t.length; n < o; n++)
2704
- g(t[n], e)
2705
- },
2706
- refreshSelections: function(e) {
2707
- if (this.wot.selections) {
2708
- var t = this.wot.selections.length;
2709
- if (e)
2710
- for (var n = 0; n < t; n++)
2711
- this.wot.selections[n].settings.className && this.removeClassFromCells(this.wot.selections[n].settings.className),
2712
- this.wot.selections[n].settings.highlightHeaderClassName && this.removeClassFromCells(this.wot.selections[n].settings.highlightHeaderClassName),
2713
- this.wot.selections[n].settings.highlightRowClassName && this.removeClassFromCells(this.wot.selections[n].settings.highlightRowClassName),
2714
- this.wot.selections[n].settings.highlightColumnClassName && this.removeClassFromCells(this.wot.selections[n].settings.highlightColumnClassName);
2715
- for (var o = 0; o < t; o++)
2716
- this.wot.selections[o].draw(this.wot, e)
2717
- }
2718
- },
2719
- getCell: function(e) {
2720
- if (this.isRowBeforeRenderedRows(e.row))
2721
- return -1;
2722
- if (this.isRowAfterRenderedRows(e.row))
2723
- return -2;
2724
- var t = this.TBODY.childNodes[this.rowFilter.sourceToRendered(e.row)];
2725
- return t ? t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e.col)] : void 0
2726
- },
2727
- getColumnHeader: function(e) {
2728
- var t = void 0 !== arguments[1] ? arguments[1] : 0
2729
- , n = this.THEAD.childNodes[t];
2730
- if (n)
2731
- return n.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e)]
2732
- },
2733
- getRowHeader: function(e) {
2734
- if (0 === this.columnFilter.sourceColumnToVisibleRowHeadedColumn(0))
2735
- return null;
2736
- var t = this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)];
2737
- return t ? t.childNodes[0] : void 0
2738
- },
2739
- getCoords: function(e) {
2740
- "TD" !== e.nodeName && "TH" !== e.nodeName && (e = y(e, ["TD", "TH"]));
2741
- var t = e.parentNode
2742
- , n = t.parentNode
2743
- , o = p(t)
2744
- , r = e.cellIndex;
2745
- return v(WalkontableOverlay.CLONE_TOP_LEFT_CORNER, e) || v(WalkontableOverlay.CLONE_TOP, e) ? "THEAD" === n.nodeName && (o -= n.childNodes.length) : o = n === this.THEAD ? this.rowFilter.visibleColHeadedRowToSourceRow(o) : this.rowFilter.renderedToSource(o),
2746
- r = v(WalkontableOverlay.CLONE_TOP_LEFT_CORNER, e) || v(WalkontableOverlay.CLONE_LEFT, e) ? this.columnFilter.offsettedTH(r) : this.columnFilter.visibleRowHeadedColumnToSourceColumn(r),
2747
- new C(o,r)
2748
- },
2749
- getTrForRow: function(e) {
2750
- return this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)]
2751
- },
2752
- getFirstRenderedRow: function() {
2753
- return this.wot.wtViewport.rowsRenderCalculator.startRow
2754
- },
2755
- getFirstVisibleRow: function() {
2756
- return this.wot.wtViewport.rowsVisibleCalculator.startRow
2757
- },
2758
- getFirstRenderedColumn: function() {
2759
- return this.wot.wtViewport.columnsRenderCalculator.startColumn
2760
- },
2761
- getFirstVisibleColumn: function() {
2762
- return this.wot.wtViewport.columnsVisibleCalculator.startColumn
2763
- },
2764
- getLastRenderedRow: function() {
2765
- return this.wot.wtViewport.rowsRenderCalculator.endRow
2766
- },
2767
- getLastVisibleRow: function() {
2768
- return this.wot.wtViewport.rowsVisibleCalculator.endRow
2769
- },
2770
- getLastRenderedColumn: function() {
2771
- return this.wot.wtViewport.columnsRenderCalculator.endColumn
2772
- },
2773
- getLastVisibleColumn: function() {
2774
- return this.wot.wtViewport.columnsVisibleCalculator.endColumn
2775
- },
2776
- isRowBeforeRenderedRows: function(e) {
2777
- return this.rowFilter && this.rowFilter.sourceToRendered(e) < 0 && e >= 0
2778
- },
2779
- isRowAfterViewport: function(e) {
2780
- return this.rowFilter && this.rowFilter.sourceToRendered(e) > this.getLastVisibleRow()
2781
- },
2782
- isRowAfterRenderedRows: function(e) {
2783
- return this.rowFilter && this.rowFilter.sourceToRendered(e) > this.getLastRenderedRow()
2784
- },
2785
- isColumnBeforeViewport: function(e) {
2786
- return this.columnFilter && this.columnFilter.sourceToRendered(e) < 0 && e >= 0
2787
- },
2788
- isColumnAfterViewport: function(e) {
2789
- return this.columnFilter && this.columnFilter.sourceToRendered(e) > this.getLastVisibleColumn()
2790
- },
2791
- isLastRowFullyVisible: function() {
2792
- return this.getLastVisibleRow() === this.getLastRenderedRow()
2793
- },
2794
- isLastColumnFullyVisible: function() {
2795
- return this.getLastVisibleColumn() === this.getLastRenderedColumn()
2796
- },
2797
- getRenderedColumnsCount: function() {
2798
- var e = this.wot.wtViewport.columnsRenderCalculator.count
2799
- , t = this.wot.getSetting("totalColumns");
2800
- if (this.wot.isOverlayName(WalkontableOverlay.CLONE_DEBUG))
2801
- e = t;
2802
- else if (this.wot.isOverlayName(WalkontableOverlay.CLONE_LEFT) || this.wot.isOverlayName(WalkontableOverlay.CLONE_TOP_LEFT_CORNER) || this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER))
2803
- return Math.min(this.wot.getSetting("fixedColumnsLeft"), t);
2804
- return e
2805
- },
2806
- getRenderedRowsCount: function() {
2807
- var e = this.wot.wtViewport.rowsRenderCalculator.count
2808
- , t = this.wot.getSetting("totalRows");
2809
- return this.wot.isOverlayName(WalkontableOverlay.CLONE_DEBUG) ? e = t : this.wot.isOverlayName(WalkontableOverlay.CLONE_TOP) || this.wot.isOverlayName(WalkontableOverlay.CLONE_TOP_LEFT_CORNER) ? e = Math.min(this.wot.getSetting("fixedRowsTop"), t) : (this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM) || this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)) && (e = Math.min(this.wot.getSetting("fixedRowsBottom"), t)),
2810
- e
2811
- },
2812
- getVisibleRowsCount: function() {
2813
- return this.wot.wtViewport.rowsVisibleCalculator.count
2814
- },
2815
- allRowsInViewport: function() {
2816
- return this.wot.getSetting("totalRows") == this.getVisibleRowsCount()
2817
- },
2818
- getRowHeight: function(e) {
2819
- var t = this.wot.wtSettings.settings.rowHeight(e)
2820
- , n = this.wot.wtViewport.oversizedRows[e];
2821
- return void 0 !== n && (t = void 0 === t ? n : Math.max(t, n)),
2822
- t
2823
- },
2824
- getColumnHeaderHeight: function(e) {
2825
- var t = this.wot.wtSettings.settings.defaultRowHeight
2826
- , n = this.wot.wtViewport.oversizedColumnHeaders[e];
2827
- return void 0 !== n && (t = t ? Math.max(t, n) : n),
2828
- t
2829
- },
2830
- getVisibleColumnsCount: function() {
2831
- return this.wot.wtViewport.columnsVisibleCalculator.count
2832
- },
2833
- allColumnsInViewport: function() {
2834
- return this.wot.getSetting("totalColumns") == this.getVisibleColumnsCount()
2835
- },
2836
- getColumnWidth: function(e) {
2837
- var t = this.wot.wtSettings.settings.columnWidth;
2838
- return "function" == typeof t ? t = t(e) : "object" == typeof t && (t = t[e]),
2839
- t || this.wot.wtSettings.settings.defaultColumnWidth
2840
- },
2841
- getStretchedColumnWidth: function(e) {
2842
- var t = this.getColumnWidth(e)
2843
- , n = null == t ? this.instance.wtSettings.settings.defaultColumnWidth : t
2844
- , o = this.wot.wtViewport.columnsRenderCalculator;
2845
- if (o) {
2846
- var r = o.getStretchedColumnWidth(e, n);
2847
- r && (n = r)
2848
- }
2849
- return n
2850
- },
2851
- _modifyRowHeaderWidth: function(e) {
2852
- var t = b(e) ? e() : null;
2853
- return Array.isArray(t) ? (t = $traceurRuntime.spread(t),
2854
- t[t.length - 1] = this._correctRowHeaderWidth(t[t.length - 1])) : t = this._correctRowHeaderWidth(t),
2855
- t
2856
- },
2857
- _correctRowHeaderWidth: function(e) {
2858
- return "number" != typeof e && (e = this.wot.getSetting("defaultColumnWidth")),
2859
- this.correctHeaderWidth && e++,
2860
- e
2861
- }
2862
- }, {}),
2863
- window.WalkontableTable = S
2864
- }
2865
- , {
2866
- "cell/coords": 6,
2867
- "cell/range": 7,
2868
- "filter/column": 10,
2869
- "filter/row": 11,
2870
- "helpers/dom/element": 47,
2871
- "helpers/function": 50,
2872
- tableRenderer: 22
2873
- }],
2874
- 22: [function(e, t, n) {
2875
- "use strict";
2876
- function o(e, t) {
2877
- var n = document.createElement("TH");
2878
- return t.insertBefore(n, e),
2879
- t.removeChild(e),
2880
- n
2881
- }
2882
- function r(e, t) {
2883
- var n = document.createElement("TD");
2884
- return t.insertBefore(n, e),
2885
- t.removeChild(e),
2886
- n
2887
- }
2888
- Object.defineProperties(n, {
2889
- WalkontableTableRenderer: {
2890
- get: function() {
2891
- return p
2892
- }
2893
- },
2894
- __esModule: {
2895
- value: !0
2896
- }
2897
- });
2898
- var i, s = (i = e("helpers/dom/element"),
2899
- i && i.__esModule && i || {
2900
- default: i
2901
- }), a = s.addClass, l = s.empty, u = s.getScrollbarWidth, c = s.hasClass, d = s.innerHeight, h = s.outerWidth, f = !1, p = function(e) {
2902
- this.wtTable = e,
2903
- this.wot = e.instance,
2904
- this.instance = e.instance,
2905
- this.rowFilter = e.rowFilter,
2906
- this.columnFilter = e.columnFilter,
2907
- this.TABLE = e.TABLE,
2908
- this.THEAD = e.THEAD,
2909
- this.TBODY = e.TBODY,
2910
- this.COLGROUP = e.COLGROUP,
2911
- this.rowHeaders = [],
2912
- this.rowHeaderCount = 0,
2913
- this.columnHeaders = [],
2914
- this.columnHeaderCount = 0,
2915
- this.fixedRowsTop = 0,
2916
- this.fixedRowsBottom = 0
2917
- };
2918
- $traceurRuntime.createClass(p, {
2919
- render: function() {
2920
- if (!this.wtTable.isWorkingOnClone()) {
2921
- var e = {};
2922
- if (this.wot.getSetting("beforeDraw", !0, e),
2923
- e.skipRender === !0)
2924
- return
2925
- }
2926
- this.rowHeaders = this.wot.getSetting("rowHeaders"),
2927
- this.rowHeaderCount = this.rowHeaders.length,
2928
- this.fixedRowsTop = this.wot.getSetting("fixedRowsTop"),
2929
- this.fixedRowsBottom = this.wot.getSetting("fixedRowsBottom"),
2930
- this.columnHeaders = this.wot.getSetting("columnHeaders"),
2931
- this.columnHeaderCount = this.columnHeaders.length;
2932
- var t, n = this.wtTable.getRenderedColumnsCount(), o = this.wtTable.getRenderedRowsCount(), r = this.wot.getSetting("totalColumns"), i = this.wot.getSetting("totalRows"), s = !1;
2933
- if ((WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay, WalkontableOverlay.CLONE_BOTTOM) || WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay, WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)) && (this.columnHeaders = [],
2934
- this.columnHeaderCount = 0),
2935
- r >= 0 && (this.adjustAvailableNodes(),
2936
- s = !0,
2937
- this.renderColumnHeaders(),
2938
- this.renderRows(i, o, n),
2939
- this.wtTable.isWorkingOnClone() || (t = this.wot.wtViewport.getWorkspaceWidth(),
2940
- this.wot.wtViewport.containerWidth = null),
2941
- this.adjustColumnWidths(n),
2942
- this.markOversizedColumnHeaders(),
2943
- this.adjustColumnHeaderHeights()),
2944
- s || this.adjustAvailableNodes(),
2945
- this.removeRedundantRows(o),
2946
- this.wtTable.isWorkingOnClone() && !this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM) || this.markOversizedRows(),
2947
- this.wtTable.isWorkingOnClone())
2948
- this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM) && this.wot.cloneSource.wtOverlays.adjustElementsSize();
2949
- else {
2950
- this.wot.wtViewport.createVisibleCalculators(),
2951
- this.wot.wtOverlays.refresh(!1),
2952
- this.wot.wtOverlays.applyToDOM();
2953
- var a = h(this.wtTable.hider)
2954
- , l = h(this.wtTable.TABLE);
2955
- if (0 !== a && l !== a && this.adjustColumnWidths(n),
2956
- t !== this.wot.wtViewport.getWorkspaceWidth()) {
2957
- this.wot.wtViewport.containerWidth = null;
2958
- var u = this.wtTable.getFirstRenderedColumn()
2959
- , c = this.wtTable.getLastRenderedColumn()
2960
- , d = this.wot.getSetting("defaultColumnWidth")
2961
- , f = this.wot.getSetting("rowHeaderWidth");
2962
- if (f = this.instance.getSetting("onModifyRowHeaderWidth", f),
2963
- null != f)
2964
- for (var p = 0; p < this.rowHeaderCount; p++) {
2965
- var m = Array.isArray(f) ? f[p] : f;
2966
- m = null == m ? d : m,
2967
- this.COLGROUP.childNodes[p].style.width = m + "px"
2968
- }
2969
- for (var g = u; g < c; g++) {
2970
- var w = this.wtTable.getStretchedColumnWidth(g)
2971
- , v = this.columnFilter.sourceToRendered(g);
2972
- this.COLGROUP.childNodes[v + this.rowHeaderCount].style.width = w + "px"
2973
- }
2974
- }
2975
- this.wot.getSetting("onDraw", !0)
2976
- }
2977
- },
2978
- removeRedundantRows: function(e) {
2979
- for (; this.wtTable.tbodyChildrenLength > e; )
2980
- this.TBODY.removeChild(this.TBODY.lastChild),
2981
- this.wtTable.tbodyChildrenLength--
2982
- },
2983
- renderRows: function(e, t, n) {
2984
- for (var o, r, i = 0, s = this.rowFilter.renderedToSource(i), a = this.wtTable.isWorkingOnClone(); s < e && s >= 0 && (!f && i > 1e3 && (f = !0,
2985
- console.warn('Performance tip: Handsontable rendered more than 1000 visible rows. Consider limiting the number of rendered rows by specifying the table height and/or turning off the "renderAllRows" option.')),
2986
- void 0 === t || i !== t); ) {
2987
- if (r = this.getOrCreateTrForRow(i, r),
2988
- this.renderRowHeaders(s, r),
2989
- this.adjustColumns(r, n + this.rowHeaderCount),
2990
- o = this.renderCells(s, r, n),
2991
- a && !this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM) || this.resetOversizedRow(s),
2992
- r.firstChild) {
2993
- var l = this.wot.wtTable.getRowHeight(s);
2994
- l ? (l--,
2995
- r.firstChild.style.height = l + "px") : r.firstChild.style.height = ""
2996
- }
2997
- i++,
2998
- s = this.rowFilter.renderedToSource(i)
2999
- }
3000
- },
3001
- resetOversizedRow: function(e) {
3002
- this.wot.getSetting("externalRowCalculator") || this.wot.wtViewport.oversizedRows && this.wot.wtViewport.oversizedRows[e] && (this.wot.wtViewport.oversizedRows[e] = void 0)
3003
- },
3004
- markOversizedRows: function() {
3005
- if (!this.wot.getSetting("externalRowCalculator")) {
3006
- var e, t, n, o, r, i = this.instance.wtTable.TBODY.childNodes.length, s = i * this.instance.wtSettings.settings.defaultRowHeight, a = d(this.instance.wtTable.TBODY) - 1;
3007
- this.instance.getSetting("totalRows");
3008
- if (s !== a || this.instance.getSetting("fixedRowsBottom"))
3009
- for (; i; )
3010
- i--,
3011
- n = this.instance.wtTable.rowFilter.renderedToSource(i),
3012
- e = this.instance.wtTable.getRowHeight(n),
3013
- o = this.instance.wtTable.getTrForRow(n),
3014
- r = o.querySelector("th"),
3015
- t = r ? d(r) : d(o) - 1,
3016
- (!e && this.instance.wtSettings.settings.defaultRowHeight < t || e < t) && (this.instance.wtViewport.oversizedRows[n] = ++t)
3017
- }
3018
- },
3019
- markOversizedColumnHeaders: function() {
3020
- var e = this.wot.getOverlayName();
3021
- if (this.columnHeaderCount && !this.wot.wtViewport.hasOversizedColumnHeadersMarked[e] && !this.wtTable.isWorkingOnClone()) {
3022
- for (var t = this.wtTable.getRenderedColumnsCount(), n = 0; n < this.columnHeaderCount; n++)
3023
- for (var o = -1 * this.rowHeaderCount; o < t; o++)
3024
- this.markIfOversizedColumnHeader(o);
3025
- this.wot.wtViewport.hasOversizedColumnHeadersMarked[e] = !0
3026
- }
3027
- },
3028
- adjustColumnHeaderHeights: function() {
3029
- for (var e = this.wot.getSetting("columnHeaders"), t = this.wot.wtTable.THEAD.childNodes, n = this.wot.wtViewport.oversizedColumnHeaders, o = 0, r = e.length; o < r; o++)
3030
- if (n[o]) {
3031
- if (!t[o] || 0 === t[o].childNodes.length)
3032
- return;
3033
- t[o].childNodes[0].style.height = n[o] + "px"
3034
- }
3035
- },
3036
- markIfOversizedColumnHeader: function(e) {
3037
- for (var t, n, o, r = this.wot.wtTable.columnFilter.renderedToSource(e), i = this.columnHeaderCount, s = this.wot.wtSettings.settings.defaultRowHeight, a = this.wot.getSetting("columnHeaderHeight") || []; i; )
3038
- i--,
3039
- t = this.wot.wtTable.getColumnHeaderHeight(i),
3040
- n = this.wot.wtTable.getColumnHeader(r, i),
3041
- n && (o = d(n),
3042
- (!t && s < o || t < o) && (this.wot.wtViewport.oversizedColumnHeaders[i] = o),
3043
- Array.isArray(a) ? null != a[i] && (this.wot.wtViewport.oversizedColumnHeaders[i] = a[i]) : isNaN(a) || (this.wot.wtViewport.oversizedColumnHeaders[i] = a),
3044
- this.wot.wtViewport.oversizedColumnHeaders[i] < (a[i] || a) && (this.wot.wtViewport.oversizedColumnHeaders[i] = a[i] || a))
3045
- },
3046
- renderCells: function(e, t, n) {
3047
- for (var o, i, s = 0; s < n; s++)
3048
- i = this.columnFilter.renderedToSource(s),
3049
- o = 0 === s ? t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(i)] : o.nextSibling,
3050
- "TH" == o.nodeName && (o = r(o, t)),
3051
- c(o, "hide") || (o.className = ""),
3052
- o.removeAttribute("style"),
3053
- this.wot.wtSettings.settings.cellRenderer(e, i, o);
3054
- return o
3055
- },
3056
- adjustColumnWidths: function(e) {
3057
- var t = 0
3058
- , n = this.wot.cloneSource ? this.wot.cloneSource : this.wot
3059
- , o = n.wtTable.holder
3060
- , r = this.wot.getSetting("defaultColumnWidth")
3061
- , i = this.wot.getSetting("rowHeaderWidth");
3062
- if (o.offsetHeight < o.scrollHeight && (t = u()),
3063
- this.wot.wtViewport.columnsRenderCalculator.refreshStretching(this.wot.wtViewport.getViewportWidth() - t),
3064
- i = this.instance.getSetting("onModifyRowHeaderWidth", i),
3065
- null != i)
3066
- for (var s = 0; s < this.rowHeaderCount; s++) {
3067
- var a = Array.isArray(i) ? i[s] : i;
3068
- a = null == a ? r : a,
3069
- this.COLGROUP.childNodes[s].style.width = a + "px"
3070
- }
3071
- for (var l = 0; l < e; l++) {
3072
- var c = this.wtTable.getStretchedColumnWidth(this.columnFilter.renderedToSource(l));
3073
- this.COLGROUP.childNodes[l + this.rowHeaderCount].style.width = c + "px"
3074
- }
3075
- },
3076
- appendToTbody: function(e) {
3077
- this.TBODY.appendChild(e),
3078
- this.wtTable.tbodyChildrenLength++
3079
- },
3080
- getOrCreateTrForRow: function(e, t) {
3081
- var n;
3082
- return e >= this.wtTable.tbodyChildrenLength ? (n = this.createRow(),
3083
- this.appendToTbody(n)) : n = 0 === e ? this.TBODY.firstChild : t.nextSibling,
3084
- n.className && n.removeAttribute("class"),
3085
- n
3086
- },
3087
- createRow: function() {
3088
- for (var e = document.createElement("TR"), t = 0; t < this.rowHeaderCount; t++)
3089
- e.appendChild(document.createElement("TH"));
3090
- return e
3091
- },
3092
- renderRowHeader: function(e, t, n) {
3093
- n.className = "",
3094
- n.removeAttribute("style"),
3095
- this.rowHeaders[t](e, n, t)
3096
- },
3097
- renderRowHeaders: function(e, t) {
3098
- for (var n = t.firstChild, r = 0; r < this.rowHeaderCount; r++)
3099
- n ? "TD" == n.nodeName && (n = o(n, t)) : (n = document.createElement("TH"),
3100
- t.appendChild(n)),
3101
- this.renderRowHeader(e, r, n),
3102
- n = n.nextSibling
3103
- },
3104
- adjustAvailableNodes: function() {
3105
- this.adjustColGroups(),
3106
- this.adjustThead()
3107
- },
3108
- renderColumnHeaders: function() {
3109
- if (this.columnHeaderCount)
3110
- for (var e = this.wtTable.getRenderedColumnsCount(), t = 0; t < this.columnHeaderCount; t++)
3111
- for (var n = this.getTrForColumnHeaders(t), o = -1 * this.rowHeaderCount; o < e; o++) {
3112
- var r = this.columnFilter.renderedToSource(o);
3113
- this.renderColumnHeader(t, r, n.childNodes[o + this.rowHeaderCount])
3114
- }
3115
- },
3116
- adjustColGroups: function() {
3117
- for (var e = this.wtTable.getRenderedColumnsCount(); this.wtTable.colgroupChildrenLength < e + this.rowHeaderCount; )
3118
- this.COLGROUP.appendChild(document.createElement("COL")),
3119
- this.wtTable.colgroupChildrenLength++;
3120
- for (; this.wtTable.colgroupChildrenLength > e + this.rowHeaderCount; )
3121
- this.COLGROUP.removeChild(this.COLGROUP.lastChild),
3122
- this.wtTable.colgroupChildrenLength--;
3123
- this.rowHeaderCount && a(this.COLGROUP.childNodes[0], "rowHeader")
3124
- },
3125
- adjustThead: function() {
3126
- var e = this.wtTable.getRenderedColumnsCount()
3127
- , t = this.THEAD.firstChild;
3128
- if (this.columnHeaders.length) {
3129
- for (var n = 0, o = this.columnHeaders.length; n < o; n++) {
3130
- for (t = this.THEAD.childNodes[n],
3131
- t || (t = document.createElement("TR"),
3132
- this.THEAD.appendChild(t)),
3133
- this.theadChildrenLength = t.childNodes.length; this.theadChildrenLength < e + this.rowHeaderCount; )
3134
- t.appendChild(document.createElement("TH")),
3135
- this.theadChildrenLength++;
3136
- for (; this.theadChildrenLength > e + this.rowHeaderCount; )
3137
- t.removeChild(t.lastChild),
3138
- this.theadChildrenLength--
3139
- }
3140
- var r = this.THEAD.childNodes.length;
3141
- if (r > this.columnHeaders.length)
3142
- for (var i = this.columnHeaders.length; i < r; i++)
3143
- this.THEAD.removeChild(this.THEAD.lastChild)
3144
- } else
3145
- t && l(t)
3146
- },
3147
- getTrForColumnHeaders: function(e) {
3148
- return this.THEAD.childNodes[e]
3149
- },
3150
- renderColumnHeader: function(e, t, n) {
3151
- return n.className = "",
3152
- n.removeAttribute("style"),
3153
- this.columnHeaders[e](t, n, e)
3154
- },
3155
- adjustColumns: function(e, t) {
3156
- for (var n = e.childNodes.length; n < t; ) {
3157
- var o = document.createElement("TD");
3158
- e.appendChild(o),
3159
- n++
3160
- }
3161
- for (; n > t; )
3162
- e.removeChild(e.lastChild),
3163
- n--
3164
- },
3165
- removeRedundantColumns: function(e) {
3166
- for (; this.wtTable.tbodyChildrenLength > e; )
3167
- this.TBODY.removeChild(this.TBODY.lastChild),
3168
- this.wtTable.tbodyChildrenLength--
3169
- }
3170
- }, {}),
3171
- window.WalkontableTableRenderer = p
3172
- }
3173
- , {
3174
- "helpers/dom/element": 47
3175
- }],
3176
- 23: [function(e, t, n) {
3177
- "use strict";
3178
- Object.defineProperties(n, {
3179
- WalkontableViewport: {
3180
- get: function() {
3181
- return b
3182
- }
3183
- },
3184
- __esModule: {
3185
- value: !0
3186
- }
3187
- });
3188
- var o, r, i, s, a, l, u = (o = e("browser"),
3189
- o && o.__esModule && o || {
3190
- default: o
3191
- }).default, c = (r = e("helpers/dom/element"),
3192
- r && r.__esModule && r || {
3193
- default: r
3194
- }), d = c.getScrollbarWidth, h = (c.getScrollTop,
3195
- c.getStyle), f = c.offset, p = c.outerHeight, m = c.outerWidth, g = (i = e("helpers/object"),
3196
- i && i.__esModule && i || {
3197
- default: i
3198
- }).objectEach, w = (s = e("eventManager"),
3199
- s && s.__esModule && s || {
3200
- default: s
3201
- }).EventManager, v = (a = e("calculator/viewportColumns"),
3202
- a && a.__esModule && a || {
3203
- default: a
3204
- }).WalkontableViewportColumnsCalculator, y = (l = e("calculator/viewportRows"),
3205
- l && l.__esModule && l || {
3206
- default: l
3207
- }).WalkontableViewportRowsCalculator, b = function(e) {
3208
- var t = this;
3209
- this.wot = e,
3210
- this.instance = this.wot,
3211
- this.oversizedRows = [],
3212
- this.oversizedColumnHeaders = [],
3213
- this.hasOversizedColumnHeadersMarked = {},
3214
- this.clientHeight = 0,
3215
- this.containerWidth = NaN,
3216
- this.rowHeaderWidth = NaN,
3217
- this.rowsVisibleCalculator = null,
3218
- this.columnsVisibleCalculator = null,
3219
- this.eventManager = new w(this.wot),
3220
- this.eventManager.addEventListener(window, "resize", function() {
3221
- t.clientHeight = t.getWorkspaceHeight()
3222
- })
3223
- };
3224
- $traceurRuntime.createClass(b, {
3225
- getWorkspaceHeight: function() {
3226
- var e, t = this.instance.wtOverlays.topOverlay.trimmingContainer, n = 0;
3227
- return t === window ? n = document.documentElement.clientHeight : (e = p(t),
3228
- n = e > 0 && t.clientHeight > 0 ? t.clientHeight : 1 / 0),
3229
- n
3230
- },
3231
- getWorkspaceWidth: function() {
3232
- var e, t, n = this.wot.getSetting("totalColumns"), o = this.instance.wtOverlays.leftOverlay.trimmingContainer, r = this.wot.getSetting("stretchH"), i = document.documentElement.offsetWidth, s = this.wot.getSetting("preventOverflow");
3233
- return s ? m(this.instance.wtTable.wtRootElement) : (e = u.freezeOverlays ? Math.min(i - this.getWorkspaceOffset().left, i) : Math.min(this.getContainerFillWidth(), i - this.getWorkspaceOffset().left, i),
3234
- o === window && n > 0 && this.sumColumnWidths(0, n - 1) > e ? document.documentElement.clientWidth : o !== window && (t = h(this.instance.wtOverlays.leftOverlay.trimmingContainer, "overflow"),
3235
- "scroll" == t || "hidden" == t || "auto" == t) ? Math.max(e, o.clientWidth) : "none" !== r && r ? e : Math.max(e, m(this.instance.wtTable.TABLE)))
3236
- },
3237
- hasVerticalScroll: function() {
3238
- return this.getWorkspaceActualHeight() > this.getWorkspaceHeight()
3239
- },
3240
- hasHorizontalScroll: function() {
3241
- return this.getWorkspaceActualWidth() > this.getWorkspaceWidth()
3242
- },
3243
- sumColumnWidths: function(e, t) {
3244
- for (var n = 0; e < t; )
3245
- n += this.wot.wtTable.getColumnWidth(e),
3246
- e++;
3247
- return n
3248
- },
3249
- getContainerFillWidth: function() {
3250
- if (this.containerWidth)
3251
- return this.containerWidth;
3252
- var e, t, n = this.instance.wtTable.holder;
3253
- return t = document.createElement("div"),
3254
- t.style.width = "100%",
3255
- t.style.height = "1px",
3256
- n.appendChild(t),
3257
- e = t.offsetWidth,
3258
- this.containerWidth = e,
3259
- n.removeChild(t),
3260
- e
3261
- },
3262
- getWorkspaceOffset: function() {
3263
- return f(this.wot.wtTable.TABLE)
3264
- },
3265
- getWorkspaceActualHeight: function() {
3266
- return p(this.wot.wtTable.TABLE)
3267
- },
3268
- getWorkspaceActualWidth: function() {
3269
- return m(this.wot.wtTable.TABLE) || m(this.wot.wtTable.TBODY) || m(this.wot.wtTable.THEAD)
3270
- },
3271
- getColumnHeaderHeight: function() {
3272
- return isNaN(this.columnHeaderHeight) && (this.columnHeaderHeight = p(this.wot.wtTable.THEAD)),
3273
- this.columnHeaderHeight
3274
- },
3275
- getViewportHeight: function() {
3276
- var e, t = this.getWorkspaceHeight();
3277
- return t === 1 / 0 ? t : (e = this.getColumnHeaderHeight(),
3278
- e > 0 && (t -= e),
3279
- t)
3280
- },
3281
- getRowHeaderWidth: function() {
3282
- var e = this.instance.getSetting("rowHeaderWidth")
3283
- , t = this.instance.getSetting("rowHeaders");
3284
- if (e) {
3285
- this.rowHeaderWidth = 0;
3286
- for (var n = 0, o = t.length; n < o; n++)
3287
- this.rowHeaderWidth += e[n] || e
3288
- }
3289
- if (this.wot.cloneSource)
3290
- return this.wot.cloneSource.wtViewport.getRowHeaderWidth();
3291
- if (isNaN(this.rowHeaderWidth))
3292
- if (t.length) {
3293
- var r = this.instance.wtTable.TABLE.querySelector("TH");
3294
- this.rowHeaderWidth = 0;
3295
- for (var i = 0, s = t.length; i < s; i++)
3296
- r ? (this.rowHeaderWidth += m(r),
3297
- r = r.nextSibling) : this.rowHeaderWidth += 50
3298
- } else
3299
- this.rowHeaderWidth = 0;
3300
- return this.rowHeaderWidth = this.instance.getSetting("onModifyRowHeaderWidth", this.rowHeaderWidth) || this.rowHeaderWidth,
3301
- this.rowHeaderWidth
3302
- },
3303
- getViewportWidth: function() {
3304
- var e, t = this.getWorkspaceWidth();
3305
- return t === 1 / 0 ? t : (e = this.getRowHeaderWidth(),
3306
- e > 0 ? t - e : t)
3307
- },
3308
- createRowsCalculator: function() {
3309
- var e, t, n, o, r, i, s, a = void 0 !== arguments[0] && arguments[0], l = this;
3310
- return this.rowHeaderWidth = NaN,
3311
- e = this.wot.wtSettings.settings.renderAllRows ? 1 / 0 : this.getViewportHeight(),
3312
- t = this.wot.wtOverlays.topOverlay.getScrollPosition() - this.wot.wtOverlays.topOverlay.getTableParentOffset(),
3313
- t < 0 && (t = 0),
3314
- n = this.wot.getSetting("fixedRowsTop"),
3315
- r = this.wot.getSetting("fixedRowsBottom"),
3316
- s = this.wot.getSetting("totalRows"),
3317
- n && (i = this.wot.wtOverlays.topOverlay.sumCellSizes(0, n),
3318
- t += i,
3319
- e -= i),
3320
- r && this.wot.wtOverlays.bottomOverlay.clone && (i = this.wot.wtOverlays.bottomOverlay.sumCellSizes(s - r, s),
3321
- e -= i),
3322
- o = this.wot.wtTable.holder.clientHeight === this.wot.wtTable.holder.offsetHeight ? 0 : d(),
3323
- new y(e,t,this.wot.getSetting("totalRows"),function(e) {
3324
- return l.wot.wtTable.getRowHeight(e)
3325
- }
3326
- ,a ? null : this.wot.wtSettings.settings.viewportRowCalculatorOverride,a,o)
3327
- },
3328
- createColumnsCalculator: function() {
3329
- var e, t, n = void 0 !== arguments[0] && arguments[0], o = this, r = this.getViewportWidth();
3330
- if (this.columnHeaderHeight = NaN,
3331
- e = this.wot.wtOverlays.leftOverlay.getScrollPosition() - this.wot.wtOverlays.leftOverlay.getTableParentOffset(),
3332
- e < 0 && (e = 0),
3333
- t = this.wot.getSetting("fixedColumnsLeft")) {
3334
- var i = this.wot.wtOverlays.leftOverlay.sumCellSizes(0, t);
3335
- e += i,
3336
- r -= i
3337
- }
3338
- return this.wot.wtTable.holder.clientWidth !== this.wot.wtTable.holder.offsetWidth && (r -= d()),
3339
- new v(r,e,this.wot.getSetting("totalColumns"),function(e) {
3340
- return o.wot.wtTable.getColumnWidth(e)
3341
- }
3342
- ,n ? null : this.wot.wtSettings.settings.viewportColumnCalculatorOverride,n,this.wot.getSetting("stretchH"),function(e, t) {
3343
- return o.wot.getSetting("onBeforeStretchingColumnWidth", e, t)
3344
- }
3345
- )
3346
- },
3347
- createRenderCalculators: function() {
3348
- var e = void 0 !== arguments[0] && arguments[0];
3349
- if (e) {
3350
- var t = this.createRowsCalculator(!0)
3351
- , n = this.createColumnsCalculator(!0);
3352
- this.areAllProposedVisibleRowsAlreadyRendered(t) && this.areAllProposedVisibleColumnsAlreadyRendered(n) || (e = !1)
3353
- }
3354
- return e || (this.rowsRenderCalculator = this.createRowsCalculator(),
3355
- this.columnsRenderCalculator = this.createColumnsCalculator()),
3356
- this.rowsVisibleCalculator = null,
3357
- this.columnsVisibleCalculator = null,
3358
- e
3359
- },
3360
- createVisibleCalculators: function() {
3361
- this.rowsVisibleCalculator = this.createRowsCalculator(!0),
3362
- this.columnsVisibleCalculator = this.createColumnsCalculator(!0)
3363
- },
3364
- areAllProposedVisibleRowsAlreadyRendered: function(e) {
3365
- return !!this.rowsVisibleCalculator && (!(e.startRow < this.rowsRenderCalculator.startRow || e.startRow === this.rowsRenderCalculator.startRow && e.startRow > 0) && !(e.endRow > this.rowsRenderCalculator.endRow || e.endRow === this.rowsRenderCalculator.endRow && e.endRow < this.wot.getSetting("totalRows") - 1))
3366
- },
3367
- areAllProposedVisibleColumnsAlreadyRendered: function(e) {
3368
- return !!this.columnsVisibleCalculator && (!(e.startColumn < this.columnsRenderCalculator.startColumn || e.startColumn === this.columnsRenderCalculator.startColumn && e.startColumn > 0) && !(e.endColumn > this.columnsRenderCalculator.endColumn || e.endColumn === this.columnsRenderCalculator.endColumn && e.endColumn < this.wot.getSetting("totalColumns") - 1))
3369
- },
3370
- resetHasOversizedColumnHeadersMarked: function() {
3371
- g(this.hasOversizedColumnHeadersMarked, function(e, t, n) {
3372
- n[t] = void 0
3373
- })
3374
- }
3375
- }, {}),
3376
- window.WalkontableViewport = b
3377
- }
3378
- , {
3379
- browser: 24,
3380
- "calculator/viewportColumns": 4,
3381
- "calculator/viewportRows": 5,
3382
- eventManager: 42,
3383
- "helpers/dom/element": 47,
3384
- "helpers/object": 53
3385
- }],
3386
- 24: [function(e, t, n) {
3387
- "use strict";
3388
- function o(e, t) {
3389
- var n = new o.Core(e,t || {});
3390
- return n.init(),
3391
- n
3392
- }
3393
- var r, i, s, a, l, u, c, d, h, f, p, m, g, w, v, y, b, C, _, R, M, S, E, O;
3394
- t.exports = o,
3395
- o.utils = {},
3396
- r = e("shims/runtime"),
3397
- r && r.__esModule && r || {
3398
- default: r
3399
- },
3400
- i = e("es6collections"),
3401
- i && i.__esModule && i || {
3402
- default: i
3403
- };
3404
- var T = (s = e("pluginHooks"),
3405
- s && s.__esModule && s || {
3406
- default: s
3407
- }).Hooks
3408
- , k = (a = e("numbro"),
3409
- a && a.__esModule && a || {
3410
- default: a
3411
- }).default
3412
- , x = (l = e("moment"),
3413
- l && l.__esModule && l || {
3414
- default: l
3415
- }).default;
3416
- "object" == typeof window && ("undefined" == typeof window.numbro && (window.numbro = k),
3417
- "undefined" == typeof window.moment && (window.moment = x)),
3418
- o.hooks || (o.hooks = new T),
3419
- o.utils.Hooks = T,
3420
- u = e("core"),
3421
- u && u.__esModule && u || {
3422
- default: u
3423
- },
3424
- c = e("renderers/_cellDecorator"),
3425
- c && c.__esModule && c || {
3426
- default: c
3427
- },
3428
- d = e("cellTypes"),
3429
- d && d.__esModule && d || {
3430
- default: d
3431
- },
3432
- h = e("plugins/jqueryHandsontable"),
3433
- h && h.__esModule && h || {
3434
- default: h
3435
- };
3436
- var D = (f = e("helpers/array"),
3437
- f && f.__esModule && f || {
3438
- default: f
3439
- })
3440
- , H = (p = e("helpers/browser"),
3441
- p && p.__esModule && p || {
3442
- default: p
3443
- })
3444
- , A = (m = e("helpers/data"),
3445
- m && m.__esModule && m || {
3446
- default: m
3447
- })
3448
- , P = (g = e("helpers/date"),
3449
- g && g.__esModule && g || {
3450
- default: g
3451
- })
3452
- , N = (w = e("helpers/feature"),
3453
- w && w.__esModule && w || {
3454
- default: w
3455
- })
3456
- , L = (v = e("helpers/function"),
3457
- v && v.__esModule && v || {
3458
- default: v
3459
- })
3460
- , I = (y = e("helpers/mixed"),
3461
- y && y.__esModule && y || {
3462
- default: y
3463
- })
3464
- , W = (b = e("helpers/number"),
3465
- b && b.__esModule && b || {
3466
- default: b
3467
- })
3468
- , j = (C = e("helpers/object"),
3469
- C && C.__esModule && C || {
3470
- default: C
3471
- })
3472
- , V = (_ = e("helpers/setting"),
3473
- _ && _.__esModule && _ || {
3474
- default: _
3475
- })
3476
- , B = (R = e("helpers/string"),
3477
- R && R.__esModule && R || {
3478
- default: R
3479
- })
3480
- , F = (M = e("helpers/unicode"),
3481
- M && M.__esModule && M || {
3482
- default: M
3483
- })
3484
- , z = (S = e("helpers/dom/element"),
3485
- S && S.__esModule && S || {
3486
- default: S
3487
- })
3488
- , Y = (E = e("helpers/dom/event"),
3489
- E && E.__esModule && E || {
3490
- default: E
3491
- })
3492
- , U = [D, H, A, P, N, L, I, W, j, V, B, F]
3493
- , G = [z, Y];
3494
- o.buildDate = "Tue Feb 14 2017 11:02:09 GMT+0100 (CET)",
3495
- o.packageName = "handsontable",
3496
- o.version = "0.31.0";
3497
- var $ = "@@baseVersion";
3498
- /^@@/.test($) || (o.baseVersion = $),
3499
- o.plugins = {};
3500
- var K = (O = e("plugins"),
3501
- O && O.__esModule && O || {
3502
- default: O
3503
- }).registerPlugin;
3504
- o.plugins.registerPlugin = K,
3505
- o.helper = {},
3506
- o.dom = {},
3507
- o.Dom = o.dom,
3508
- D.arrayEach(U, function(e) {
3509
- D.arrayEach(Object.getOwnPropertyNames(e), function(t) {
3510
- "_" !== t.charAt(0) && (o.helper[t] = e[t])
3511
- })
3512
- }),
3513
- D.arrayEach(G, function(e) {
3514
- D.arrayEach(Object.getOwnPropertyNames(e), function(t) {
3515
- "_" !== t.charAt(0) && (o.dom[t] = e[t])
3516
- })
3517
- })
3518
- }
3519
- , {
3520
- cellTypes: 25,
3521
- core: 26,
3522
- es6collections: "es6collections",
3523
- "helpers/array": 43,
3524
- "helpers/browser": 44,
3525
- "helpers/data": 45,
3526
- "helpers/date": 46,
3527
- "helpers/dom/element": 47,
3528
- "helpers/dom/event": 48,
3529
- "helpers/feature": 49,
3530
- "helpers/function": 50,
3531
- "helpers/mixed": 51,
3532
- "helpers/number": 52,
3533
- "helpers/object": 53,
3534
- "helpers/setting": 54,
3535
- "helpers/string": 55,
3536
- "helpers/unicode": 56,
3537
- moment: "moment",
3538
- numbro: "numbro",
3539
- pluginHooks: 60,
3540
- plugins: 61,
3541
- "plugins/jqueryHandsontable": 2,
3542
- "renderers/_cellDecorator": 118,
3543
- "shims/runtime": 125
3544
- }],
3545
- 25: [function(e, t, n) {
3546
- "use strict";
3547
- var o, r, i, s, a, l, u, c, d, h, f, p, m, g, w, v, y, b, C, _, R, M, S, E, O = (o = e("helpers/browser"),
3548
- o && o.__esModule && o || {
3549
- default: o
3550
- }).isMobileBrowser, T = (r = e("editors"),
3551
- r && r.__esModule && r || {
3552
- default: r
3553
- }).getEditorConstructor, k = (i = e("renderers"),
3554
- i && i.__esModule && i || {
3555
- default: i
3556
- }).getRenderer, x = ((s = e("editors/autocompleteEditor"),
3557
- s && s.__esModule && s || {
3558
- default: s
3559
- }).AutocompleteEditor,
3560
- (a = e("editors/checkboxEditor"),
3561
- a && a.__esModule && a || {
3562
- default: a
3563
- }).CheckboxEditor,
3564
- (l = e("editors/dateEditor"),
3565
- l && l.__esModule && l || {
3566
- default: l
3567
- }).DateEditor,
3568
- (u = e("editors/dropdownEditor"),
3569
- u && u.__esModule && u || {
3570
- default: u
3571
- }).DropdownEditor,
3572
- (c = e("editors/handsontableEditor"),
3573
- c && c.__esModule && c || {
3574
- default: c
3575
- }).HandsontableEditor,
3576
- (d = e("editors/mobileTextEditor"),
3577
- d && d.__esModule && d || {
3578
- default: d
3579
- }).MobileTextEditor,
3580
- (h = e("editors/numericEditor"),
3581
- h && h.__esModule && h || {
3582
- default: h
3583
- }).NumericEditor,
3584
- (f = e("editors/passwordEditor"),
3585
- f && f.__esModule && f || {
3586
- default: f
3587
- }).PasswordEditor,
3588
- (p = e("editors/selectEditor"),
3589
- p && p.__esModule && p || {
3590
- default: p
3591
- }).SelectEditor,
3592
- (m = e("editors/textEditor"),
3593
- m && m.__esModule && m || {
3594
- default: m
3595
- }).TextEditor,
3596
- (g = e("renderers/autocompleteRenderer"),
3597
- g && g.__esModule && g || {
3598
- default: g
3599
- }).AutocompleteRenderer,
3600
- (w = e("renderers/checkboxRenderer"),
3601
- w && w.__esModule && w || {
3602
- default: w
3603
- }).CheckboxRenderer,
3604
- (v = e("renderers/htmlRenderer"),
3605
- v && v.__esModule && v || {
3606
- default: v
3607
- }).HtmlRenderer,
3608
- (y = e("renderers/numericRenderer"),
3609
- y && y.__esModule && y || {
3610
- default: y
3611
- }).NumericRenderer,
3612
- (b = e("renderers/passwordRenderer"),
3613
- b && b.__esModule && b || {
3614
- default: b
3615
- }).PasswordRenderer,
3616
- (C = e("renderers/textRenderer"),
3617
- C && C.__esModule && C || {
3618
- default: C
3619
- }).TextRenderer,
3620
- (_ = e("validators/autocompleteValidator"),
3621
- _ && _.__esModule && _ || {
3622
- default: _
3623
- }).AutocompleteValidator,
3624
- (R = e("validators/dateValidator"),
3625
- R && R.__esModule && R || {
3626
- default: R
3627
- }).DateValidator,
3628
- (M = e("validators/timeValidator"),
3629
- M && M.__esModule && M || {
3630
- default: M
3631
- }).TimeValidator,
3632
- (S = e("validators/numericValidator"),
3633
- S && S.__esModule && S || {
3634
- default: S
3635
- }).NumericValidator,
3636
- (E = e("browser"),
3637
- E && E.__esModule && E || {
3638
- default: E
3639
- }).default);
3640
- x.AutocompleteCell = {
3641
- editor: T("autocomplete"),
3642
- renderer: k("autocomplete"),
3643
- validator: x.AutocompleteValidator
3644
- },
3645
- x.CheckboxCell = {
3646
- editor: T("checkbox"),
3647
- renderer: k("checkbox")
3648
- },
3649
- x.TextCell = {
3650
- editor: T(O() ? "mobile" : "text"),
3651
- renderer: k("text")
3652
- },
3653
- x.NumericCell = {
3654
- editor: T("numeric"),
3655
- renderer: k("numeric"),
3656
- validator: x.NumericValidator,
3657
- dataType: "number"
3658
- },
3659
- x.DateCell = {
3660
- editor: T("date"),
3661
- validator: x.DateValidator,
3662
- renderer: k("autocomplete")
3663
- },
3664
- x.TimeCell = {
3665
- editor: T("text"),
3666
- validator: x.TimeValidator,
3667
- renderer: k("text")
3668
- },
3669
- x.HandsontableCell = {
3670
- editor: T("handsontable"),
3671
- renderer: k("autocomplete")
3672
- },
3673
- x.PasswordCell = {
3674
- editor: T("password"),
3675
- renderer: k("password"),
3676
- copyable: !1
3677
- },
3678
- x.DropdownCell = {
3679
- editor: T("dropdown"),
3680
- renderer: k("autocomplete"),
3681
- validator: x.AutocompleteValidator
3682
- },
3683
- x.cellTypes = {
3684
- text: x.TextCell,
3685
- date: x.DateCell,
3686
- time: x.TimeCell,
3687
- numeric: x.NumericCell,
3688
- checkbox: x.CheckboxCell,
3689
- autocomplete: x.AutocompleteCell,
3690
- handsontable: x.HandsontableCell,
3691
- password: x.PasswordCell,
3692
- dropdown: x.DropdownCell
3693
- },
3694
- x.cellLookup = {
3695
- validator: {
3696
- numeric: x.NumericValidator,
3697
- autocomplete: x.AutocompleteValidator
3698
- }
3699
- }
3700
- }
3701
- , {
3702
- browser: 24,
3703
- editors: 30,
3704
- "editors/autocompleteEditor": 32,
3705
- "editors/checkboxEditor": 33,
3706
- "editors/dateEditor": 34,
3707
- "editors/dropdownEditor": 35,
3708
- "editors/handsontableEditor": 36,
3709
- "editors/mobileTextEditor": 37,
3710
- "editors/numericEditor": 38,
3711
- "editors/passwordEditor": 39,
3712
- "editors/selectEditor": 40,
3713
- "editors/textEditor": 41,
3714
- "helpers/browser": 44,
3715
- renderers: 117,
3716
- "renderers/autocompleteRenderer": 119,
3717
- "renderers/checkboxRenderer": 120,
3718
- "renderers/htmlRenderer": 121,
3719
- "renderers/numericRenderer": 122,
3720
- "renderers/passwordRenderer": 123,
3721
- "renderers/textRenderer": 124,
3722
- "validators/autocompleteValidator": 133,
3723
- "validators/dateValidator": 134,
3724
- "validators/numericValidator": 135,
3725
- "validators/timeValidator": 136
3726
- }],
3727
- 26: [function(e, t, n) {
3728
- "use strict";
3729
- var o, r, i, s, a, l, u, c, d, h, f, p, m, g, w, v, y, b, C, _, R, M, S, E = (o = e("browser"),
3730
- o && o.__esModule && o || {
3731
- default: o
3732
- }).default, O = (r = e("numbro"),
3733
- r && r.__esModule && r || {
3734
- default: r
3735
- }).default, T = (i = e("helpers/dom/element"),
3736
- i && i.__esModule && i || {
3737
- default: i
3738
- }), k = T.addClass, x = T.empty, D = T.isChildOfWebComponentTable, H = T.removeClass, A = (s = e("helpers/setting"),
3739
- s && s.__esModule && s || {
3740
- default: s
3741
- }).columnFactory, P = (a = e("helpers/function"),
3742
- a && a.__esModule && a || {
3743
- default: a
3744
- }).isFunction, N = (l = e("helpers/mixed"),
3745
- l && l.__esModule && l || {
3746
- default: l
3747
- }), L = N.isDefined, I = N.isUndefined, W = (u = e("helpers/browser"),
3748
- u && u.__esModule && u || {
3749
- default: u
3750
- }).isMobileBrowser, j = (c = e("dataMap"),
3751
- c && c.__esModule && c || {
3752
- default: c
3753
- }).DataMap, V = (d = e("editorManager"),
3754
- d && d.__esModule && d || {
3755
- default: d
3756
- }).EditorManager, B = (h = e("eventManager"),
3757
- h && h.__esModule && h || {
3758
- default: h
3759
- }).eventManager, F = (f = e("helpers/object"),
3760
- f && f.__esModule && f || {
3761
- default: f
3762
- }), z = F.deepClone, Y = F.duckSchema, U = F.extend, G = F.isObject, $ = F.isObjectEquals, K = F.deepObjectSize, X = (p = e("helpers/array"),
3763
- p && p.__esModule && p || {
3764
- default: p
3765
- }), q = X.arrayFlatten, Z = X.arrayMap, J = (m = e("plugins"),
3766
- m && m.__esModule && m || {
3767
- default: m
3768
- }).getPlugin, Q = (g = e("renderers"),
3769
- g && g.__esModule && g || {
3770
- default: g
3771
- }).getRenderer, ee = (w = e("helpers/string"),
3772
- w && w.__esModule && w || {
3773
- default: w
3774
- }).randomString, te = (v = e("helpers/number"),
3775
- v && v.__esModule && v || {
3776
- default: v
3777
- }).rangeEach, ne = (y = e("tableView"),
3778
- y && y.__esModule && y || {
3779
- default: y
3780
- }).TableView, oe = (b = e("dataSource"),
3781
- b && b.__esModule && b || {
3782
- default: b
3783
- }).DataSource, re = (C = e("helpers/data"),
3784
- C && C.__esModule && C || {
3785
- default: C
3786
- }), ie = re.translateRowsToColumns, se = re.cellMethodLookupFactory, ae = re.spreadsheetColumnLabel, le = (_ = e("utils/recordTranslator"),
3787
- _ && _.__esModule && _ || {
3788
- default: _
3789
- }).getTranslator, ue = (R = e("3rdparty/walkontable/src/cell/coords"),
3790
- R && R.__esModule && R || {
3791
- default: R
3792
- }).WalkontableCellCoords, ce = (M = e("3rdparty/walkontable/src/cell/range"),
3793
- M && M.__esModule && M || {
3794
- default: M
3795
- }).WalkontableCellRange, de = (S = e("3rdparty/walkontable/src/calculator/viewportColumns"),
3796
- S && S.__esModule && S || {
3797
- default: S
3798
- }).WalkontableViewportColumnsCalculator;
3799
- E.activeGuid = null,
3800
- E.Core = function(e, t) {
3801
- function n() {
3802
- var e = !1;
3803
- return {
3804
- validatorsInQueue: 0,
3805
- valid: !0,
3806
- addValidatorToQueue: function() {
3807
- this.validatorsInQueue++,
3808
- e = !1
3809
- },
3810
- removeValidatorFormQueue: function() {
3811
- this.validatorsInQueue = this.validatorsInQueue - 1 < 0 ? 0 : this.validatorsInQueue - 1,
3812
- this.checkIfQueueIsEmpty()
3813
- },
3814
- onQueueEmpty: function(e) {},
3815
- checkIfQueueIsEmpty: function() {
3816
- 0 == this.validatorsInQueue && 0 == e && (e = !0,
3817
- this.onQueueEmpty(this.valid))
3818
- }
3819
- }
3820
- }
3821
- function o(e, t, o) {
3822
- function r() {
3823
- var n;
3824
- e.length && (n = E.hooks.run(p, "beforeChange", e, t),
3825
- P(n) ? console.warn("Your beforeChange callback returns a function. It's not supported since Handsontable 0.12.1 (and the returned function will not be executed).") : n === !1 && e.splice(0, e.length)),
3826
- o()
3827
- }
3828
- var i = new n;
3829
- i.onQueueEmpty = r;
3830
- for (var s = e.length - 1; s >= 0; s--)
3831
- if (null === e[s])
3832
- e.splice(s, 1);
3833
- else {
3834
- var a = e[s][0]
3835
- , l = u.propToCol(e[s][1])
3836
- , c = p.getCellMeta(a, l);
3837
- if ("numeric" === c.type && "string" == typeof e[s][3] && e[s][3].length > 0 && (/^-?[\d\s]*(\.|\,)?\d*$/.test(e[s][3]) || c.format)) {
3838
- var d = e[s][3].length;
3839
- I(c.language) ? O.culture("en-US") : e[s][3].indexOf(".") === d - 3 && e[s][3].indexOf(",") === -1 ? O.culture("en-US") : O.culture(c.language);
3840
- O.cultureData(O.culture()).delimiters;
3841
- O.validate(e[s][3]) && !isNaN(e[s][3]) ? e[s][3] = parseFloat(e[s][3]) : e[s][3] = O().unformat(e[s][3]) || e[s][3]
3842
- }
3843
- p.getCellValidator(c) && (i.addValidatorToQueue(),
3844
- p.validateCell(e[s][3], c, function(t, n) {
3845
- return function(o) {
3846
- if ("boolean" != typeof o)
3847
- throw new Error("Validation error: result is not boolean");
3848
- if (o === !1 && n.allowInvalid === !1) {
3849
- e.splice(t, 1),
3850
- n.valid = !0;
3851
- var r = p.getCell(n.row, n.col);
3852
- H(r, p.getSettings().invalidCellClassName),
3853
- --t
3854
- }
3855
- i.removeValidatorFormQueue()
3856
- }
3857
- }(s, c), t))
3858
- }
3859
- i.checkIfQueueIsEmpty()
3860
- }
3861
- function r(e, t) {
3862
- var n = e.length - 1;
3863
- if (!(n < 0)) {
3864
- for (; 0 <= n; n--) {
3865
- var o = !1;
3866
- if (null !== e[n]) {
3867
- if (null != e[n][2] || null != e[n][3]) {
3868
- if (l.settings.allowInsertRow)
3869
- for (; e[n][0] > p.countRows() - 1; ) {
3870
- var r = u.createRow(void 0, void 0, t);
3871
- if (0 === r) {
3872
- o = !0;
3873
- break
3874
- }
3875
- }
3876
- if (!o) {
3877
- if ("array" === p.dataType && (!l.settings.columns || 0 === l.settings.columns.length) && l.settings.allowInsertColumn)
3878
- for (; u.propToCol(e[n][1]) > p.countCols() - 1; )
3879
- u.createCol(void 0, void 0, t);
3880
- u.set(e[n][0], e[n][1], e[n][3])
3881
- }
3882
- }
3883
- } else
3884
- e.splice(n, 1)
3885
- }
3886
- p.forceFullRender = !0,
3887
- d.adjustRowsAndCols(),
3888
- E.hooks.run(p, "beforeChangeRender", e, t),
3889
- h.refreshBorders(null, !0),
3890
- p.view.wt.wtOverlays.adjustElementsSize(),
3891
- E.hooks.run(p, "afterChange", e, t || "edit");
3892
- var i = p.getActiveEditor();
3893
- i && L(i.refreshValue) && i.refreshValue()
3894
- }
3895
- }
3896
- function i(e, t, n) {
3897
- return "object" == typeof e ? e : [[e, t, n]]
3898
- }
3899
- function s(e) {
3900
- if (e.hasOwnProperty("type")) {
3901
- var t, n = {};
3902
- if ("object" == typeof e.type)
3903
- t = e.type;
3904
- else if ("string" == typeof e.type && (t = E.cellTypes[e.type],
3905
- void 0 === t))
3906
- throw new Error('You declared cell type "' + e.type + '" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');
3907
- for (var o in t)
3908
- t.hasOwnProperty(o) && !e.hasOwnProperty(o) && (n[o] = t[o]);
3909
- return n
3910
- }
3911
- }
3912
- function a() {
3913
- throw new Error("This method cannot be called because this Handsontable instance has been destroyed")
3914
- }
3915
- var l, u, c, d, h, f, p = this, m = function() {}, g = B(p), w = le(p);
3916
- U(m.prototype, he.prototype),
3917
- U(m.prototype, t),
3918
- U(m.prototype, s(t)),
3919
- this.rootElement = e,
3920
- this.isHotTableEnv = D(this.rootElement),
3921
- E.eventManager.isHotTableEnv = this.isHotTableEnv,
3922
- this.container = document.createElement("DIV"),
3923
- this.renderCall = !1,
3924
- e.insertBefore(this.container, e.firstChild),
3925
- this.guid = "ht_" + ee(),
3926
- c = new oe(p),
3927
- this.rootElement.id && "ht_" !== this.rootElement.id.substring(0, 3) || (this.rootElement.id = this.guid),
3928
- l = {
3929
- cellSettings: [],
3930
- columnSettings: [],
3931
- columnsSettingConflicts: ["data", "width"],
3932
- settings: new m,
3933
- selRange: null,
3934
- isPopulated: null,
3935
- scrollable: null,
3936
- firstRun: !0
3937
- },
3938
- d = {
3939
- alter: function(e, t, n, o, r) {
3940
- function i(e, t, n, o) {
3941
- var r = function() {
3942
- var e;
3943
- return "array" === o ? e = [] : "object" === o && (e = {}),
3944
- e
3945
- }
3946
- , i = Z(new Array(n), function() {
3947
- return r()
3948
- });
3949
- i.unshift(t, 0),
3950
- e.splice.apply(e, i)
3951
- }
3952
- var s;
3953
- switch (n = n || 1,
3954
- e) {
3955
- case "insert_row":
3956
- var a = p.countSourceRows();
3957
- if (p.getSettings().maxRows === a)
3958
- return;
3959
- t = L(t) ? t : a,
3960
- s = u.createRow(t, n, o),
3961
- i(l.cellSettings, t, n, "array"),
3962
- s && (h.isSelected() && l.selRange.from.row >= t ? (l.selRange.from.row = l.selRange.from.row + s,
3963
- h.transformEnd(s, 0)) : h.refreshBorders());
3964
- break;
3965
- case "insert_col":
3966
- s = u.createCol(t, n, o);
3967
- for (var c = 0, f = p.countSourceRows(); c < f; c++)
3968
- l.cellSettings[c] && i(l.cellSettings[c], t, n);
3969
- if (s) {
3970
- if (Array.isArray(p.getSettings().colHeaders)) {
3971
- var m = [t, 0];
3972
- m.length += s,
3973
- Array.prototype.splice.apply(p.getSettings().colHeaders, m)
3974
- }
3975
- h.isSelected() && l.selRange.from.col >= t ? (l.selRange.from.col = l.selRange.from.col + s,
3976
- h.transformEnd(0, s)) : h.refreshBorders()
3977
- }
3978
- break;
3979
- case "remove_row":
3980
- u.removeRow(t, n, o),
3981
- l.cellSettings.splice(t, n);
3982
- var g = p.countRows()
3983
- , v = p.getSettings().fixedRowsTop;
3984
- v >= t + 1 && (p.getSettings().fixedRowsTop -= Math.min(n, v - t));
3985
- var y = p.getSettings().fixedRowsBottom;
3986
- y && t >= g - y && (p.getSettings().fixedRowsBottom -= Math.min(n, y)),
3987
- d.adjustRowsAndCols(),
3988
- h.refreshBorders();
3989
- break;
3990
- case "remove_col":
3991
- var b = w.toPhysicalColumn(t);
3992
- u.removeCol(t, n, o);
3993
- for (var C = 0, _ = p.countSourceRows(); C < _; C++)
3994
- l.cellSettings[C] && l.cellSettings[C].splice(b, n);
3995
- var R = p.getSettings().fixedColumnsLeft;
3996
- R >= t + 1 && (p.getSettings().fixedColumnsLeft -= Math.min(n, R - t)),
3997
- Array.isArray(p.getSettings().colHeaders) && ("undefined" == typeof b && (b = -1),
3998
- p.getSettings().colHeaders.splice(b, n)),
3999
- d.adjustRowsAndCols(),
4000
- h.refreshBorders();
4001
- break;
4002
- default:
4003
- throw new Error('There is no such action "' + e + '"')
4004
- }
4005
- r || d.adjustRowsAndCols()
4006
- },
4007
- adjustRowsAndCols: function() {
4008
- if (l.settings.minRows) {
4009
- var e = p.countRows();
4010
- if (e < l.settings.minRows)
4011
- for (var t = 0, n = l.settings.minRows; t < n - e; t++)
4012
- u.createRow(p.countRows(), 1, "auto")
4013
- }
4014
- if (l.settings.minSpareRows) {
4015
- var o = p.countEmptyRows(!0);
4016
- if (o < l.settings.minSpareRows)
4017
- for (; o < l.settings.minSpareRows && p.countSourceRows() < l.settings.maxRows; o++)
4018
- u.createRow(p.countRows(), 1, "auto")
4019
- }
4020
- var r;
4021
- if ((l.settings.minCols || l.settings.minSpareCols) && (r = p.countEmptyCols(!0)),
4022
- l.settings.minCols && !l.settings.columns && p.countCols() < l.settings.minCols)
4023
- for (; p.countCols() < l.settings.minCols; r++)
4024
- u.createCol(p.countCols(), 1, "auto");
4025
- if (l.settings.minSpareCols && !l.settings.columns && "array" === p.dataType && r < l.settings.minSpareCols)
4026
- for (; r < l.settings.minSpareCols && p.countCols() < l.settings.maxCols; r++)
4027
- u.createCol(p.countCols(), 1, "auto");
4028
- var i = p.countRows()
4029
- , s = p.countCols();
4030
- if (0 !== i && 0 !== s || h.deselect(),
4031
- h.isSelected()) {
4032
- var a = !1
4033
- , c = l.selRange.from.row
4034
- , d = l.selRange.from.col
4035
- , f = l.selRange.to.row
4036
- , m = l.selRange.to.col;
4037
- c > i - 1 ? (c = i - 1,
4038
- a = !0,
4039
- f > c && (f = c)) : f > i - 1 && (f = i - 1,
4040
- a = !0,
4041
- c > f && (c = f)),
4042
- d > s - 1 ? (d = s - 1,
4043
- a = !0,
4044
- m > d && (m = d)) : m > s - 1 && (m = s - 1,
4045
- a = !0,
4046
- d > m && (d = m)),
4047
- a && p.selectCell(c, d, f, m)
4048
- }
4049
- p.view && p.view.wt.wtOverlays.adjustElementsSize()
4050
- },
4051
- populateFromArray: function(e, t, n, o, r, i, s) {
4052
- var a, u, c, d, h = [], f = {};
4053
- if (u = t.length,
4054
- 0 === u)
4055
- return !1;
4056
- var m, g, w, v;
4057
- ({
4058
- row: null === n ? null : n.row,
4059
- col: null === n ? null : n.col
4060
- });
4061
- switch (r) {
4062
- case "shift_down":
4063
- for (m = n ? n.col - e.col + 1 : 0,
4064
- g = n ? n.row - e.row + 1 : 0,
4065
- t = ie(t),
4066
- c = 0,
4067
- d = t.length,
4068
- w = Math.max(d, m); c < w; c++)
4069
- if (c < d) {
4070
- for (a = 0,
4071
- u = t[c].length; a < g - u; a++)
4072
- t[c].push(t[c][a % u]);
4073
- t[c].unshift(e.col + c, e.row, 0),
4074
- p.spliceCol.apply(p, t[c])
4075
- } else
4076
- t[c % d][0] = e.col + c,
4077
- p.spliceCol.apply(p, t[c % d]);
4078
- break;
4079
- case "shift_right":
4080
- for (m = n ? n.col - e.col + 1 : 0,
4081
- g = n ? n.row - e.row + 1 : 0,
4082
- a = 0,
4083
- u = t.length,
4084
- v = Math.max(u, g); a < v; a++)
4085
- if (a < u) {
4086
- for (c = 0,
4087
- d = t[a].length; c < m - d; c++)
4088
- t[a].push(t[a][c % d]);
4089
- t[a].unshift(e.row + a, e.col, 0),
4090
- p.spliceRow.apply(p, t[a])
4091
- } else
4092
- t[a % u][0] = e.row + a,
4093
- p.spliceRow.apply(p, t[a % u]);
4094
- break;
4095
- case "overwrite":
4096
- default:
4097
- f.row = e.row,
4098
- f.col = e.col;
4099
- var y, b = {
4100
- row: n && e ? n.row - e.row + 1 : 1,
4101
- col: n && e ? n.col - e.col + 1 : 1
4102
- }, C = 0, _ = 0, R = !0, M = function(e) {
4103
- var n = void 0 !== arguments[1] ? arguments[1] : null
4104
- , o = t[e % t.length];
4105
- return null !== n ? o[n % o.length] : o
4106
- }, S = t.length, E = n ? n.row - e.row + 1 : 0;
4107
- for (u = n ? E : Math.max(S, E),
4108
- a = 0; a < u && !(n && f.row > n.row && E > S || !l.settings.allowInsertRow && f.row > p.countRows() - 1 || f.row >= l.settings.maxRows); a++) {
4109
- var O = a - C
4110
- , T = M(O).length
4111
- , k = n ? n.col - e.col + 1 : 0;
4112
- if (d = n ? k : Math.max(T, k),
4113
- f.col = e.col,
4114
- y = p.getCellMeta(f.row, f.col),
4115
- "CopyPaste.paste" !== o && "Autofill.autofill" !== o || !y.skipRowOnPaste) {
4116
- for (_ = 0,
4117
- c = 0; c < d && !(n && f.col > n.col && k > T || !l.settings.allowInsertColumn && f.col > p.countCols() - 1 || f.col >= l.settings.maxCols); c++)
4118
- if (y = p.getCellMeta(f.row, f.col),
4119
- "CopyPaste.paste" !== o && "Autofill.fill" !== o || !y.skipColumnOnPaste)
4120
- if (y.readOnly)
4121
- f.col++;
4122
- else {
4123
- var x = c - _
4124
- , D = M(O, x)
4125
- , H = p.getDataAtCell(f.row, f.col)
4126
- , A = {
4127
- row: O,
4128
- col: x
4129
- };
4130
- if ("Autofill.fill" === o) {
4131
- var P = p.runHooks("beforeAutofillInsidePopulate", A, i, t, s, {}, b);
4132
- P && (D = I(P.value) ? D : P.value)
4133
- }
4134
- if (null !== D && "object" == typeof D)
4135
- if (null === H || "object" != typeof H)
4136
- R = !1;
4137
- else {
4138
- var N = Y(H[0] || H)
4139
- , L = Y(D[0] || D);
4140
- $(N, L) ? D = z(D) : R = !1
4141
- }
4142
- else
4143
- null !== H && "object" == typeof H && (R = !1);
4144
- R && h.push([f.row, f.col, D]),
4145
- R = !0,
4146
- f.col++
4147
- }
4148
- else
4149
- _++,
4150
- f.col++,
4151
- d++;
4152
- f.row++
4153
- } else
4154
- C++,
4155
- f.row++,
4156
- u++
4157
- }
4158
- p.setDataAtCell(h, null, null, o || "populateFromArray")
4159
- }
4160
- }
4161
- },
4162
- this.selection = h = {
4163
- inProgress: !1,
4164
- selectedHeader: {
4165
- cols: !1,
4166
- rows: !1
4167
- },
4168
- setSelectedHeaders: function() {
4169
- var e = void 0 !== arguments[0] && arguments[0]
4170
- , t = void 0 !== arguments[1] && arguments[1]
4171
- , n = void 0 !== arguments[2] && arguments[2];
4172
- p.selection.selectedHeader.rows = e,
4173
- p.selection.selectedHeader.cols = t,
4174
- p.selection.selectedHeader.corner = n
4175
- },
4176
- begin: function() {
4177
- p.selection.inProgress = !0
4178
- },
4179
- finish: function() {
4180
- var e = p.getSelected();
4181
- E.hooks.run(p, "afterSelectionEnd", e[0], e[1], e[2], e[3]),
4182
- E.hooks.run(p, "afterSelectionEndByProp", e[0], p.colToProp(e[1]), e[2], p.colToProp(e[3])),
4183
- p.selection.inProgress = !1
4184
- },
4185
- isInProgress: function() {
4186
- return p.selection.inProgress
4187
- },
4188
- setRangeStart: function(e, t) {
4189
- E.hooks.run(p, "beforeSetRangeStart", e),
4190
- l.selRange = new ce(e,e,e),
4191
- h.setRangeEnd(e, null, t)
4192
- },
4193
- setRangeStartOnly: function(e) {
4194
- E.hooks.run(p, "beforeSetRangeStartOnly", e),
4195
- l.selRange = new ce(e,e,e)
4196
- },
4197
- setRangeEnd: function(e, t, n) {
4198
- if (null !== l.selRange) {
4199
- var o, r = !1, i = !0, s = p.view.wt.wtTable.getFirstVisibleRow(), a = p.view.wt.wtTable.getFirstVisibleColumn(), c = {
4200
- row: null,
4201
- col: null
4202
- };
4203
- E.hooks.run(p, "beforeSetRangeEnd", e),
4204
- p.selection.begin(),
4205
- c.row = e.row < 0 ? s : e.row,
4206
- c.col = e.col < 0 ? a : e.col,
4207
- l.selRange.to = new ue(c.row,c.col),
4208
- l.settings.multiSelect || (l.selRange.from = e),
4209
- p.view.wt.selections.current.clear(),
4210
- o = p.getCellMeta(l.selRange.highlight.row, l.selRange.highlight.col).disableVisualSelection,
4211
- "string" == typeof o && (o = [o]),
4212
- (o === !1 || Array.isArray(o) && o.indexOf("current") === -1) && p.view.wt.selections.current.add(l.selRange.highlight),
4213
- p.view.wt.selections.area.clear(),
4214
- (o === !1 || Array.isArray(o) && o.indexOf("area") === -1) && h.isMultiple() && (p.view.wt.selections.area.add(l.selRange.from),
4215
- p.view.wt.selections.area.add(l.selRange.to)),
4216
- (l.settings.currentHeaderClassName || l.settings.currentRowClassName || l.settings.currentColClassName) && (p.view.wt.selections.highlight.clear(),
4217
- p.view.wt.selections.highlight.add(l.selRange.from),
4218
- p.view.wt.selections.highlight.add(l.selRange.to)),
4219
- E.hooks.run(p, "afterSelection", l.selRange.from.row, l.selRange.from.col, l.selRange.to.row, l.selRange.to.col),
4220
- E.hooks.run(p, "afterSelectionByProp", l.selRange.from.row, u.colToProp(l.selRange.from.col), l.selRange.to.row, u.colToProp(l.selRange.to.col)),
4221
- (0 === l.selRange.from.row && l.selRange.to.row === p.countRows() - 1 && p.countRows() > 1 || 0 === l.selRange.from.col && l.selRange.to.col === p.countCols() - 1 && p.countCols() > 1) && (r = !0),
4222
- (e.row < 0 || e.col < 0) && (i = !1),
4223
- t !== !1 && !r && i && (l.selRange.from && !h.isMultiple() ? p.view.scrollViewport(l.selRange.from) : p.view.scrollViewport(e)),
4224
- h.refreshBorders(null, n)
4225
- }
4226
- },
4227
- refreshBorders: function(e, t) {
4228
- t || f.destroyEditor(e),
4229
- p.view.render(),
4230
- h.isSelected() && !t && f.prepareEditor()
4231
- },
4232
- isMultiple: function() {
4233
- var e = !(l.selRange.to.col === l.selRange.from.col && l.selRange.to.row === l.selRange.from.row)
4234
- , t = E.hooks.run(p, "afterIsMultipleSelection", e);
4235
- if (e)
4236
- return t
4237
- },
4238
- transformStart: function(e, t, n, o) {
4239
- var r, i, s, a, u = new ue(e,t), c = 0, d = 0;
4240
- p.runHooks("modifyTransformStart", u),
4241
- r = p.countRows(),
4242
- i = p.countCols(),
4243
- a = p.getSettings().fixedRowsBottom,
4244
- l.selRange.highlight.row + e > r - 1 ? n && l.settings.minSpareRows > 0 && !(a && l.selRange.highlight.row >= r - a - 1) ? (p.alter("insert_row", r),
4245
- r = p.countRows()) : l.settings.autoWrapCol && (u.row = 1 - r,
4246
- u.col = l.selRange.highlight.col + u.col == i - 1 ? 1 - i : 1) : l.settings.autoWrapCol && l.selRange.highlight.row + u.row < 0 && l.selRange.highlight.col + u.col >= 0 && (u.row = r - 1,
4247
- u.col = l.selRange.highlight.col + u.col == 0 ? i - 1 : -1),
4248
- l.selRange.highlight.col + u.col > i - 1 ? n && l.settings.minSpareCols > 0 ? (p.alter("insert_col", i),
4249
- i = p.countCols()) : l.settings.autoWrapRow && (u.row = l.selRange.highlight.row + u.row == r - 1 ? 1 - r : 1,
4250
- u.col = 1 - i) : l.settings.autoWrapRow && l.selRange.highlight.col + u.col < 0 && l.selRange.highlight.row + u.row >= 0 && (u.row = l.selRange.highlight.row + u.row == 0 ? r - 1 : -1,
4251
- u.col = i - 1),
4252
- s = new ue(l.selRange.highlight.row + u.row,l.selRange.highlight.col + u.col),
4253
- s.row < 0 ? (c = -1,
4254
- s.row = 0) : s.row > 0 && s.row >= r && (c = 1,
4255
- s.row = r - 1),
4256
- s.col < 0 ? (d = -1,
4257
- s.col = 0) : s.col > 0 && s.col >= i && (d = 1,
4258
- s.col = i - 1),
4259
- p.runHooks("afterModifyTransformStart", s, c, d),
4260
- h.setRangeStart(s, o)
4261
- },
4262
- transformEnd: function(e, t) {
4263
- var n, o, r, i = new ue(e,t), s = 0, a = 0;
4264
- p.runHooks("modifyTransformEnd", i),
4265
- n = p.countRows(),
4266
- o = p.countCols(),
4267
- r = new ue(l.selRange.to.row + i.row,l.selRange.to.col + i.col),
4268
- r.row < 0 ? (s = -1,
4269
- r.row = 0) : r.row > 0 && r.row >= n && (s = 1,
4270
- r.row = n - 1),
4271
- r.col < 0 ? (a = -1,
4272
- r.col = 0) : r.col > 0 && r.col >= o && (a = 1,
4273
- r.col = o - 1),
4274
- p.runHooks("afterModifyTransformEnd", r, s, a),
4275
- h.setRangeEnd(r, !0)
4276
- },
4277
- isSelected: function() {
4278
- return null !== l.selRange
4279
- },
4280
- inInSelection: function(e) {
4281
- return !!h.isSelected() && l.selRange.includes(e)
4282
- },
4283
- deselect: function() {
4284
- h.isSelected() && (p.selection.inProgress = !1,
4285
- l.selRange = null,
4286
- p.view.wt.selections.current.clear(),
4287
- p.view.wt.selections.area.clear(),
4288
- (l.settings.currentHeaderClassName || l.settings.currentRowClassName || l.settings.currentColClassName) && p.view.wt.selections.highlight.clear(),
4289
- f.destroyEditor(),
4290
- h.refreshBorders(),
4291
- H(p.rootElement, ["ht__selection--rows", "ht__selection--columns"]),
4292
- E.hooks.run(p, "afterDeselect"))
4293
- },
4294
- selectAll: function() {
4295
- l.settings.multiSelect && (h.setRangeStart(new ue(0,0)),
4296
- h.setRangeEnd(new ue(p.countRows() - 1,p.countCols() - 1), !1))
4297
- },
4298
- empty: function() {
4299
- if (h.isSelected()) {
4300
- var e, t, n = l.selRange.getTopLeftCorner(), o = l.selRange.getBottomRightCorner(), r = [];
4301
- for (e = n.row; e <= o.row; e++)
4302
- for (t = n.col; t <= o.col; t++)
4303
- p.getCellMeta(e, t).readOnly || r.push([e, t, ""]);
4304
- p.setDataAtCell(r)
4305
- }
4306
- }
4307
- },
4308
- this.init = function() {
4309
- c.setData(l.settings.data),
4310
- E.hooks.run(p, "beforeInit"),
4311
- W() && k(p.rootElement, "mobile"),
4312
- this.updateSettings(l.settings, !0),
4313
- this.view = new ne(this),
4314
- f = new V(p,l,h,u),
4315
- this.forceFullRender = !0,
4316
- E.hooks.run(p, "init"),
4317
- this.view.render(),
4318
- "object" == typeof l.firstRun && (E.hooks.run(p, "afterChange", l.firstRun[0], l.firstRun[1]),
4319
- l.firstRun = !1),
4320
- E.hooks.run(p, "afterInit")
4321
- }
4322
- ,
4323
- this.validateCell = function(e, t, n, o) {
4324
- function r(e) {
4325
- var o = t.visualCol
4326
- , r = t.visualRow
4327
- , i = p.getCell(r, o, !0);
4328
- i && "TH" != i.nodeName && p.view.wt.wtSettings.settings.cellRenderer(r, o, i),
4329
- n(e)
4330
- }
4331
- var i = p.getCellValidator(t);
4332
- "[object RegExp]" === Object.prototype.toString.call(i) && (i = function(e) {
4333
- return function(t, n) {
4334
- n(e.test(t))
4335
- }
4336
- }(i)),
4337
- P(i) ? (e = E.hooks.run(p, "beforeValidate", e, t.visualRow, t.prop, o),
4338
- p._registerTimeout(setTimeout(function() {
4339
- i.call(t, e, function(n) {
4340
- n = E.hooks.run(p, "afterValidate", n, e, t.visualRow, t.prop, o),
4341
- t.valid = n,
4342
- r(n),
4343
- E.hooks.run(p, "postAfterValidate", n, e, t.visualRow, t.prop, o)
4344
- })
4345
- }, 0))) : p._registerTimeout(setTimeout(function() {
4346
- t.valid = !0,
4347
- r(t.valid)
4348
- }, 0))
4349
- }
4350
- ,
4351
- this.setDataAtCell = function(e, t, n, s) {
4352
- var a, l, d, h = i(e, t, n), f = [];
4353
- for (a = 0,
4354
- l = h.length; a < l; a++) {
4355
- if ("object" != typeof h[a])
4356
- throw new Error("Method `setDataAtCell` accepts row number or changes array of arrays as its first parameter");
4357
- if ("number" != typeof h[a][1])
4358
- throw new Error("Method `setDataAtCell` accepts row and column number as its parameters. If you want to use object property name, use method `setDataAtRowProp`");
4359
- d = u.colToProp(h[a][1]),
4360
- f.push([h[a][0], d, c.getAtCell(w.toPhysicalRow(h[a][0]), h[a][1]), h[a][2]])
4361
- }
4362
- s || "object" != typeof e || (s = t),
4363
- p.runHooks("afterSetDataAtCell", f, s),
4364
- o(f, s, function() {
4365
- r(f, s)
4366
- })
4367
- }
4368
- ,
4369
- this.setDataAtRowProp = function(e, t, n, s) {
4370
- var a, l, u = i(e, t, n), d = [];
4371
- for (a = 0,
4372
- l = u.length; a < l; a++)
4373
- d.push([u[a][0], u[a][1], c.getAtCell(w.toPhysicalRow(u[a][0]), u[a][1]), u[a][2]]);
4374
- s || "object" != typeof e || (s = t),
4375
- p.runHooks("afterSetDataAtRowProp", d, s),
4376
- o(d, s, function() {
4377
- r(d, s)
4378
- })
4379
- }
4380
- ,
4381
- this.listen = function() {
4382
- E.activeGuid = p.guid
4383
- }
4384
- ,
4385
- this.unlisten = function() {
4386
- E.activeGuid = null
4387
- }
4388
- ,
4389
- this.isListening = function() {
4390
- return E.activeGuid === p.guid
4391
- }
4392
- ,
4393
- this.destroyEditor = function(e) {
4394
- h.refreshBorders(e)
4395
- }
4396
- ,
4397
- this.populateFromArray = function(e, t, n, o, r, i, s, a, l) {
4398
- var u;
4399
- if ("object" != typeof n || "object" != typeof n[0])
4400
- throw new Error("populateFromArray parameter `input` must be an array of arrays");
4401
- return u = "number" == typeof o ? new ue(o,r) : null,
4402
- d.populateFromArray(new ue(e,t), n, u, i, s, a, l)
4403
- }
4404
- ,
4405
- this.spliceCol = function(e, t, n) {
4406
- return u.spliceCol.apply(u, arguments)
4407
- }
4408
- ,
4409
- this.spliceRow = function(e, t, n) {
4410
- return u.spliceRow.apply(u, arguments)
4411
- }
4412
- ,
4413
- this.getSelected = function() {
4414
- if (h.isSelected())
4415
- return [l.selRange.from.row, l.selRange.from.col, l.selRange.to.row, l.selRange.to.col]
4416
- }
4417
- ,
4418
- this.getSelectedRange = function() {
4419
- if (h.isSelected())
4420
- return l.selRange
4421
- }
4422
- ,
4423
- this.render = function() {
4424
- p.view && (p.renderCall = !0,
4425
- p.forceFullRender = !0,
4426
- h.refreshBorders(null, !0))
4427
- }
4428
- ,
4429
- this.loadData = function(e) {
4430
- function t() {
4431
- l.cellSettings.length = 0
4432
- }
4433
- if (Array.isArray(l.settings.dataSchema) ? p.dataType = "array" : P(l.settings.dataSchema) ? p.dataType = "function" : p.dataType = "object",
4434
- u && u.destroy(),
4435
- u = new j(p,l,m),
4436
- "object" == typeof e && null !== e)
4437
- e.push && e.splice || (e = [e]);
4438
- else {
4439
- if (null !== e)
4440
- throw new Error("loadData only accepts array of objects or array of arrays (" + typeof e + " given)");
4441
- e = [];
4442
- var n, o = 0, r = 0, i = u.getSchema();
4443
- for (o = 0,
4444
- r = l.settings.startRows; o < r; o++)
4445
- if ("object" !== p.dataType && "function" !== p.dataType || !l.settings.dataSchema)
4446
- if ("array" === p.dataType)
4447
- n = z(i[0]),
4448
- e.push(n);
4449
- else {
4450
- n = [];
4451
- for (var s = 0, a = l.settings.startCols; s < a; s++)
4452
- n.push(null);
4453
- e.push(n)
4454
- }
4455
- else
4456
- n = z(i),
4457
- e.push(n)
4458
- }
4459
- l.isPopulated = !1,
4460
- m.prototype.data = e,
4461
- Array.isArray(e[0]) && (p.dataType = "array"),
4462
- u.dataSource = e,
4463
- c.data = e,
4464
- c.dataType = p.dataType,
4465
- c.colToProp = u.colToProp.bind(u),
4466
- c.propToCol = u.propToCol.bind(u),
4467
- t(),
4468
- d.adjustRowsAndCols(),
4469
- E.hooks.run(p, "afterLoadData", l.firstRun),
4470
- l.firstRun ? l.firstRun = [null, "loadData"] : (E.hooks.run(p, "afterChange", null, "loadData"),
4471
- p.render()),
4472
- l.isPopulated = !0
4473
- }
4474
- ,
4475
- this.getData = function(e, t, n, o) {
4476
- return I(e) ? u.getAll() : u.getRange(new ue(e,t), new ue(n,o), u.DESTINATION_RENDERER)
4477
- }
4478
- ,
4479
- this.getCopyableText = function(e, t, n, o) {
4480
- return u.getCopyableText(new ue(e,t), new ue(n,o))
4481
- }
4482
- ,
4483
- this.getCopyableData = function(e, t) {
4484
- return u.getCopyable(e, u.colToProp(t))
4485
- }
4486
- ,
4487
- this.getSchema = function() {
4488
- return u.getSchema()
4489
- }
4490
- ,
4491
- this.updateSettings = function(e, t) {
4492
- var n, o, r, i = !1;
4493
- if (L(e.rows))
4494
- throw new Error('"rows" setting is no longer supported. do you mean startRows, minRows or maxRows?');
4495
- if (L(e.cols))
4496
- throw new Error('"cols" setting is no longer supported. do you mean startCols, minCols or maxCols?');
4497
- for (n in e)
4498
- "data" !== n && (E.hooks.getRegistered().indexOf(n) > -1 ? (P(e[n]) || Array.isArray(e[n])) && p.addHook(n, e[n]) : !t && e.hasOwnProperty(n) && (m.prototype[n] = e[n]));
4499
- if (void 0 === e.data && void 0 === l.settings.data ? p.loadData(null) : void 0 !== e.data ? p.loadData(e.data) : void 0 !== e.columns && u.createMap(),
4500
- r = p.countCols(),
4501
- e.columns && P(e.columns) && (r = p.countSourceCols(),
4502
- i = !0),
4503
- void 0 === e.cell && void 0 === e.cells && void 0 === e.columns || (l.cellSettings.length = 0),
4504
- r > 0) {
4505
- var a, c;
4506
- for (n = 0,
4507
- o = 0; n < r; n++)
4508
- i && !e.columns(n) || (l.columnSettings[o] = A(m, l.columnsSettingConflicts),
4509
- a = l.columnSettings[o].prototype,
4510
- m.prototype.columns && (c = i ? m.prototype.columns(n) : m.prototype.columns[o],
4511
- c && (U(a, c),
4512
- U(a, s(c)))),
4513
- o++)
4514
- }
4515
- if (L(e.cell))
4516
- for (var f in e.cell)
4517
- if (e.cell.hasOwnProperty(f)) {
4518
- var g = e.cell[f];
4519
- p.setCellMetaObject(g.row, g.col, g)
4520
- }
4521
- E.hooks.run(p, "afterCellMetaReset"),
4522
- L(e.className) && (m.prototype.className && H(p.rootElement, m.prototype.className),
4523
- e.className && k(p.rootElement, e.className));
4524
- var w = p.rootElement.style.height;
4525
- "" !== w && (w = parseInt(p.rootElement.style.height, 10));
4526
- var v = e.height;
4527
- if (P(v) && (v = v()),
4528
- t) {
4529
- var y = p.rootElement.getAttribute("style");
4530
- y && p.rootElement.setAttribute("data-initialstyle", p.rootElement.getAttribute("style"))
4531
- }
4532
- if (null === v) {
4533
- var b = p.rootElement.getAttribute("data-initialstyle");
4534
- b && (b.indexOf("height") > -1 || b.indexOf("overflow") > -1) ? p.rootElement.setAttribute("style", b) : (p.rootElement.style.height = "",
4535
- p.rootElement.style.overflow = "")
4536
- } else
4537
- void 0 !== v && (p.rootElement.style.height = v + "px",
4538
- p.rootElement.style.overflow = "hidden");
4539
- if ("undefined" != typeof e.width) {
4540
- var C = e.width;
4541
- P(C) && (C = C()),
4542
- p.rootElement.style.width = C + "px"
4543
- }
4544
- t || (u.clearLengthCache(),
4545
- p.view && p.view.wt.wtViewport.resetHasOversizedColumnHeadersMarked(),
4546
- E.hooks.run(p, "afterUpdateSettings")),
4547
- d.adjustRowsAndCols(),
4548
- p.view && !l.firstRun && (p.forceFullRender = !0,
4549
- h.refreshBorders(null, !0)),
4550
- t || !p.view || "" !== w && "" !== v && void 0 !== v || w === v || p.view.wt.wtOverlays.updateMainScrollableElements()
4551
- }
4552
- ,
4553
- this.getValue = function() {
4554
- var e = p.getSelected();
4555
- if (m.prototype.getValue) {
4556
- if (P(m.prototype.getValue))
4557
- return m.prototype.getValue.call(p);
4558
- if (e)
4559
- return p.getData()[e[0]][m.prototype.getValue]
4560
- } else if (e)
4561
- return p.getDataAtCell(e[0], e[1])
4562
- }
4563
- ,
4564
- this.getSettings = function() {
4565
- return l.settings
4566
- }
4567
- ,
4568
- this.clear = function() {
4569
- h.selectAll(),
4570
- h.empty()
4571
- }
4572
- ,
4573
- this.alter = function(e, t, n, o, r) {
4574
- d.alter(e, t, n, o, r)
4575
- }
4576
- ,
4577
- this.getCell = function(e, t, n) {
4578
- return p.view.getCellAtCoords(new ue(e,t), n)
4579
- }
4580
- ,
4581
- this.getCoords = function(e) {
4582
- return this.view.wt.wtTable.getCoords.call(this.view.wt.wtTable, e)
4583
- }
4584
- ,
4585
- this.colToProp = function(e) {
4586
- return u.colToProp(e)
4587
- }
4588
- ,
4589
- this.propToCol = function(e) {
4590
- return u.propToCol(e)
4591
- }
4592
- ,
4593
- this.toVisualRow = function(e) {
4594
- return w.toVisualRow(e)
4595
- }
4596
- ,
4597
- this.toVisualColumn = function(e) {
4598
- return w.toVisualColumn(e)
4599
- }
4600
- ,
4601
- this.toPhysicalRow = function(e) {
4602
- return w.toPhysicalRow(e)
4603
- }
4604
- ,
4605
- this.toPhysicalColumn = function(e) {
4606
- return w.toPhysicalColumn(e)
4607
- }
4608
- ,
4609
- this.getDataAtCell = function(e, t) {
4610
- return u.get(e, u.colToProp(t))
4611
- }
4612
- ,
4613
- this.getDataAtRowProp = function(e, t) {
4614
- return u.get(e, t)
4615
- }
4616
- ,
4617
- this.getDataAtCol = function(e) {
4618
- var t = [];
4619
- return t.concat.apply(t, u.getRange(new ue(0,e), new ue(l.settings.data.length - 1,e), u.DESTINATION_RENDERER))
4620
- }
4621
- ,
4622
- this.getDataAtProp = function(e) {
4623
- var t, n = [];
4624
- return t = u.getRange(new ue(0,u.propToCol(e)), new ue(l.settings.data.length - 1,u.propToCol(e)), u.DESTINATION_RENDERER),
4625
- n.concat.apply(n, t)
4626
- }
4627
- ,
4628
- this.getSourceData = function(e, t, n, o) {
4629
- var r;
4630
- return r = void 0 === e ? c.getData() : c.getByRange(new ue(e,t), new ue(n,o))
4631
- }
4632
- ,
4633
- this.getSourceDataArray = function(e, t, n, o) {
4634
- var r;
4635
- return r = void 0 === e ? c.getData(!0) : c.getByRange(new ue(e,t), new ue(n,o), !0)
4636
- }
4637
- ,
4638
- this.getSourceDataAtCol = function(e) {
4639
- return c.getAtColumn(e)
4640
- }
4641
- ,
4642
- this.getSourceDataAtRow = function(e) {
4643
- return c.getAtRow(e)
4644
- }
4645
- ,
4646
- this.getSourceDataAtCell = function(e, t) {
4647
- return c.getAtCell(e, t)
4648
- }
4649
- ,
4650
- this.getDataAtRow = function(e) {
4651
- var t = u.getRange(new ue(e,0), new ue(e,this.countCols() - 1), u.DESTINATION_RENDERER);
4652
- return t[0]
4653
- }
4654
- ,
4655
- this.getDataType = function(e, t, n, o) {
4656
- var r = this
4657
- , i = null
4658
- , s = null;
4659
- void 0 === e && (e = 0,
4660
- n = this.countRows(),
4661
- t = 0,
4662
- o = this.countCols()),
4663
- void 0 === n && (n = e),
4664
- void 0 === o && (o = t);
4665
- var a = "mixed";
4666
- return te(Math.min(e, n), Math.max(e, n), function(e) {
4667
- var n = !0;
4668
- return te(Math.min(t, o), Math.max(t, o), function(t) {
4669
- var o = r.getCellMeta(e, t);
4670
- return s = o.type,
4671
- i ? n = i === s : i = s,
4672
- n
4673
- }),
4674
- a = n ? s : "mixed",
4675
- n
4676
- }),
4677
- a
4678
- }
4679
- ,
4680
- this.removeCellMeta = function(e, t, n) {
4681
- var o = p.getCellMeta(e, t);
4682
- void 0 != o[n] && delete l.cellSettings[e][t][n]
4683
- }
4684
- ,
4685
- this.spliceCellsMeta = function(e, t) {
4686
- for (var n, o = [], r = 2; r < arguments.length; r++)
4687
- o[r - 2] = arguments[r];
4688
- (n = l.cellSettings).splice.apply(n, $traceurRuntime.spread([e, t], o))
4689
- }
4690
- ,
4691
- this.setCellMetaObject = function(e, t, n) {
4692
- if ("object" == typeof n)
4693
- for (var o in n)
4694
- if (n.hasOwnProperty(o)) {
4695
- var r = n[o];
4696
- this.setCellMeta(e, t, o, r)
4697
- }
4698
- }
4699
- ,
4700
- this.setCellMeta = function(e, t, n, o) {
4701
- var r;
4702
- r = w.toPhysical(e, t),
4703
- e = r[0],
4704
- t = r[1],
4705
- r,
4706
- l.cellSettings[e] || (l.cellSettings[e] = []),
4707
- l.cellSettings[e][t] || (l.cellSettings[e][t] = new l.columnSettings[t]),
4708
- l.cellSettings[e][t][n] = o,
4709
- E.hooks.run(p, "afterSetCellMeta", e, t, n, o)
4710
- }
4711
- ,
4712
- this.getCellsMeta = function() {
4713
- return q(l.cellSettings)
4714
- }
4715
- ,
4716
- this.getCellMeta = function(e, t) {
4717
- var n, o, r = u.colToProp(t), i = e, a = t;
4718
- if (n = w.toPhysical(e, t),
4719
- e = n[0],
4720
- t = n[1],
4721
- n,
4722
- l.columnSettings[t] || (l.columnSettings[t] = A(m, l.columnsSettingConflicts)),
4723
- l.cellSettings[e] || (l.cellSettings[e] = []),
4724
- l.cellSettings[e][t] || (l.cellSettings[e][t] = new l.columnSettings[t]),
4725
- o = l.cellSettings[e][t],
4726
- o.row = e,
4727
- o.col = t,
4728
- o.visualRow = i,
4729
- o.visualCol = a,
4730
- o.prop = r,
4731
- o.instance = p,
4732
- E.hooks.run(p, "beforeGetCellMeta", e, t, o),
4733
- U(o, s(o)),
4734
- o.cells) {
4735
- var c = o.cells.call(o, e, t, r);
4736
- c && (U(o, c),
4737
- U(o, s(c)))
4738
- }
4739
- return E.hooks.run(p, "afterGetCellMeta", e, t, o),
4740
- o
4741
- }
4742
- ,
4743
- this.getCellMetaAtRow = function(e) {
4744
- return l.cellSettings[e]
4745
- }
4746
- ,
4747
- this.isColumnModificationAllowed = function() {
4748
- return !("object" === p.dataType || p.getSettings().columns)
4749
- }
4750
- ;
4751
- var v = se("renderer");
4752
- this.getCellRenderer = function(e, t) {
4753
- var n = v.call(this, e, t);
4754
- return Q(n)
4755
- }
4756
- ,
4757
- this.getCellEditor = se("editor"),
4758
- this.getCellValidator = se("validator"),
4759
- this.validateCells = function(e) {
4760
- var t = new n;
4761
- e && (t.onQueueEmpty = e);
4762
- for (var o = p.countRows() - 1; o >= 0; ) {
4763
- for (var r = p.countCols() - 1; r >= 0; )
4764
- t.addValidatorToQueue(),
4765
- p.validateCell(p.getDataAtCell(o, r), p.getCellMeta(o, r), function(e) {
4766
- if ("boolean" != typeof e)
4767
- throw new Error("Validation error: result is not boolean");
4768
- e === !1 && (t.valid = !1),
4769
- t.removeValidatorFormQueue()
4770
- }, "validateCells"),
4771
- r--;
4772
- o--
4773
- }
4774
- t.checkIfQueueIsEmpty()
4775
- }
4776
- ,
4777
- this.getRowHeader = function(e) {
4778
- var t = l.settings.rowHeaders;
4779
- return void 0 !== e && (e = E.hooks.run(p, "modifyRowHeader", e)),
4780
- void 0 === e ? (t = [],
4781
- te(p.countRows() - 1, function(e) {
4782
- t.push(p.getRowHeader(e))
4783
- })) : Array.isArray(t) && void 0 !== t[e] ? t = t[e] : P(t) ? t = t(e) : t && "string" != typeof t && "number" != typeof t && (t = e + 1),
4784
- t
4785
- }
4786
- ,
4787
- this.hasRowHeaders = function() {
4788
- return !!l.settings.rowHeaders
4789
- }
4790
- ,
4791
- this.hasColHeaders = function() {
4792
- if (void 0 !== l.settings.colHeaders && null !== l.settings.colHeaders)
4793
- return !!l.settings.colHeaders;
4794
- for (var e = 0, t = p.countCols(); e < t; e++)
4795
- if (p.getColHeader(e))
4796
- return !0;
4797
- return !1
4798
- }
4799
- ,
4800
- this.getColHeader = function(e) {
4801
- var t = l.settings.columns && P(l.settings.columns)
4802
- , n = l.settings.colHeaders;
4803
- if (e = E.hooks.run(p, "modifyColHeader", e),
4804
- void 0 === e) {
4805
- for (var o = [], r = t ? p.countSourceCols() : p.countCols(), i = 0; i < r; i++)
4806
- o.push(p.getColHeader(i));
4807
- n = o
4808
- } else {
4809
- var s = function(e) {
4810
- for (var t = [], n = p.countSourceCols(), o = 0; o < n; o++)
4811
- P(p.getSettings().columns) && p.getSettings().columns(o) && t.push(o);
4812
- return t[e]
4813
- }
4814
- , a = e;
4815
- e = E.hooks.run(p, "modifyCol", e);
4816
- var u = s(e);
4817
- l.settings.columns && P(l.settings.columns) && l.settings.columns(u) && l.settings.columns(u).title ? n = l.settings.columns(u).title : l.settings.columns && l.settings.columns[e] && l.settings.columns[e].title ? n = l.settings.columns[e].title : Array.isArray(l.settings.colHeaders) && void 0 !== l.settings.colHeaders[e] ? n = l.settings.colHeaders[e] : P(l.settings.colHeaders) ? n = l.settings.colHeaders(e) : l.settings.colHeaders && "string" != typeof l.settings.colHeaders && "number" != typeof l.settings.colHeaders && (n = ae(a))
4818
- }
4819
- return n
4820
- }
4821
- ,
4822
- this._getColWidthFromSettings = function(e) {
4823
- var t = p.getCellMeta(0, e)
4824
- , n = t.width;
4825
- if (void 0 !== n && n !== l.settings.width || (n = t.colWidths),
4826
- void 0 !== n && null !== n) {
4827
- switch (typeof n) {
4828
- case "object":
4829
- n = n[e];
4830
- break;
4831
- case "function":
4832
- n = n(e)
4833
- }
4834
- "string" == typeof n && (n = parseInt(n, 10))
4835
- }
4836
- return n
4837
- }
4838
- ,
4839
- this.getColWidth = function(e) {
4840
- var t = p._getColWidthFromSettings(e);
4841
- return t = E.hooks.run(p, "modifyColWidth", t, e),
4842
- void 0 === t && (t = de.DEFAULT_WIDTH),
4843
- t
4844
- }
4845
- ,
4846
- this._getRowHeightFromSettings = function(e) {
4847
- var t = l.settings.rowHeights;
4848
- if (void 0 !== t && null !== t) {
4849
- switch (typeof t) {
4850
- case "object":
4851
- t = t[e];
4852
- break;
4853
- case "function":
4854
- t = t(e)
4855
- }
4856
- "string" == typeof t && (t = parseInt(t, 10))
4857
- }
4858
- return t
4859
- }
4860
- ,
4861
- this.getRowHeight = function(e) {
4862
- var t = p._getRowHeightFromSettings(e);
4863
- return t = E.hooks.run(p, "modifyRowHeight", t, e)
4864
- }
4865
- ,
4866
- this.countSourceRows = function() {
4867
- var e = E.hooks.run(p, "modifySourceLength");
4868
- return e || (p.getSourceData() ? p.getSourceData().length : 0)
4869
- }
4870
- ,
4871
- this.countSourceCols = function() {
4872
- var e = 0
4873
- , t = p.getSourceData() && p.getSourceData()[0] ? p.getSourceData()[0] : [];
4874
- return e = G(t) ? K(t) : t.length || 0
4875
- }
4876
- ,
4877
- this.countRows = function() {
4878
- return u.getLength()
4879
- }
4880
- ,
4881
- this.countCols = function() {
4882
- var e = !1
4883
- , t = 0;
4884
- if ("array" === p.dataType && (e = l.settings.data && l.settings.data[0] && l.settings.data[0].length),
4885
- e && (t = l.settings.data[0].length),
4886
- l.settings.columns) {
4887
- var n = P(l.settings.columns);
4888
- if (n)
4889
- if ("array" === p.dataType) {
4890
- for (var o = 0, r = 0; r < t; r++)
4891
- l.settings.columns(r) && o++;
4892
- t = o
4893
- } else
4894
- "object" !== p.dataType && "function" !== p.dataType || (t = u.colToPropCache.length);
4895
- else
4896
- t = l.settings.columns.length
4897
- } else
4898
- "object" !== p.dataType && "function" !== p.dataType || (t = u.colToPropCache.length);
4899
- return t
4900
- }
4901
- ,
4902
- this.rowOffset = function() {
4903
- return p.view.wt.wtTable.getFirstRenderedRow()
4904
- }
4905
- ,
4906
- this.colOffset = function() {
4907
- return p.view.wt.wtTable.getFirstRenderedColumn()
4908
- }
4909
- ,
4910
- this.countRenderedRows = function() {
4911
- return p.view.wt.drawn ? p.view.wt.wtTable.getRenderedRowsCount() : -1
4912
- }
4913
- ,
4914
- this.countVisibleRows = function() {
4915
- return p.view.wt.drawn ? p.view.wt.wtTable.getVisibleRowsCount() : -1
4916
- }
4917
- ,
4918
- this.countRenderedCols = function() {
4919
- return p.view.wt.drawn ? p.view.wt.wtTable.getRenderedColumnsCount() : -1
4920
- }
4921
- ,
4922
- this.countVisibleCols = function() {
4923
- return p.view.wt.drawn ? p.view.wt.wtTable.getVisibleColumnsCount() : -1
4924
- }
4925
- ,
4926
- this.countEmptyRows = function(e) {
4927
- for (var t, n = p.countRows() - 1, o = 0; n >= 0; ) {
4928
- if (t = E.hooks.run(this, "modifyRow", n),
4929
- p.isEmptyRow(t))
4930
- o++;
4931
- else if (e)
4932
- break;
4933
- n--
4934
- }
4935
- return o
4936
- }
4937
- ,
4938
- this.countEmptyCols = function(e) {
4939
- if (p.countRows() < 1)
4940
- return 0;
4941
- for (var t = p.countCols() - 1, n = 0; t >= 0; ) {
4942
- if (p.isEmptyCol(t))
4943
- n++;
4944
- else if (e)
4945
- break;
4946
- t--
4947
- }
4948
- return n
4949
- }
4950
- ,
4951
- this.isEmptyRow = function(e) {
4952
- return l.settings.isEmptyRow.call(p, e)
4953
- }
4954
- ,
4955
- this.isEmptyCol = function(e) {
4956
- return l.settings.isEmptyCol.call(p, e)
4957
- }
4958
- ,
4959
- this.selectCell = function(e, t, n, o, r, i) {
4960
- var s;
4961
- if (i = I(i) || i === !0,
4962
- "number" != typeof e || e < 0 || e >= p.countRows())
4963
- return !1;
4964
- if ("number" != typeof t || t < 0 || t >= p.countCols())
4965
- return !1;
4966
- if (L(n)) {
4967
- if ("number" != typeof n || n < 0 || n >= p.countRows())
4968
- return !1;
4969
- if ("number" != typeof o || o < 0 || o >= p.countCols())
4970
- return !1
4971
- }
4972
- return s = new ue(e,t),
4973
- l.selRange = new ce(s,s,s),
4974
- i && p.listen(),
4975
- I(n) ? h.setRangeEnd(l.selRange.from, r) : h.setRangeEnd(new ue(n,o), r),
4976
- p.selection.finish(),
4977
- !0
4978
- }
4979
- ,
4980
- this.selectCellByProp = function(e, t, n, o, r) {
4981
- return arguments[1] = u.propToCol(arguments[1]),
4982
- L(arguments[3]) && (arguments[3] = u.propToCol(arguments[3])),
4983
- p.selectCell.apply(p, arguments)
4984
- }
4985
- ,
4986
- this.deselectCell = function() {
4987
- h.deselect()
4988
- }
4989
- ,
4990
- this.scrollViewportTo = function(e, t) {
4991
- var n = void 0 !== arguments[2] && arguments[2]
4992
- , o = void 0 !== arguments[3] && arguments[3];
4993
- if (void 0 !== e && (e < 0 || e >= p.countRows()))
4994
- return !1;
4995
- if (void 0 !== t && (t < 0 || t >= p.countCols()))
4996
- return !1;
4997
- var r = !1;
4998
- return void 0 !== e && void 0 !== t && (p.view.wt.wtOverlays.topOverlay.scrollTo(e, n),
4999
- p.view.wt.wtOverlays.leftOverlay.scrollTo(t, o),
5000
- r = !0),
5001
- "number" == typeof e && "number" != typeof t && (p.view.wt.wtOverlays.topOverlay.scrollTo(e, n),
5002
- r = !0),
5003
- "number" == typeof t && "number" != typeof e && (p.view.wt.wtOverlays.leftOverlay.scrollTo(t, o),
5004
- r = !0),
5005
- r
5006
- }
5007
- ,
5008
- this.destroy = function() {
5009
- p._clearTimeouts(),
5010
- p.view && p.view.destroy(),
5011
- c && c.destroy(),
5012
- c = null,
5013
- x(p.rootElement),
5014
- g.destroy(),
5015
- E.hooks.run(p, "afterDestroy"),
5016
- E.hooks.destroy(p);
5017
- for (var e in p)
5018
- p.hasOwnProperty(e) && (P(p[e]) ? p[e] = a : "guid" !== e && (p[e] = null));
5019
- u && u.destroy(),
5020
- u = null,
5021
- l = null,
5022
- d = null,
5023
- h = null,
5024
- f = null,
5025
- p = null,
5026
- m = null
5027
- }
5028
- ,
5029
- this.getActiveEditor = function() {
5030
- return f.getActiveEditor()
5031
- }
5032
- ,
5033
- this.getPlugin = function(e) {
5034
- return J(this, e)
5035
- }
5036
- ,
5037
- this.getInstance = function() {
5038
- return p
5039
- }
5040
- ,
5041
- this.addHook = function(e, t) {
5042
- E.hooks.add(e, t, p)
5043
- }
5044
- ,
5045
- this.hasHook = function(e) {
5046
- return E.hooks.has(e, p)
5047
- }
5048
- ,
5049
- this.addHookOnce = function(e, t) {
5050
- E.hooks.once(e, t, p)
5051
- }
5052
- ,
5053
- this.removeHook = function(e, t) {
5054
- E.hooks.remove(e, t, p)
5055
- }
5056
- ,
5057
- this.runHooks = function(e, t, n, o, r, i, s) {
5058
- return E.hooks.run(p, e, t, n, o, r, i, s)
5059
- }
5060
- ,
5061
- this.timeouts = [],
5062
- this._registerTimeout = function(e) {
5063
- this.timeouts.push(e)
5064
- }
5065
- ,
5066
- this._clearTimeouts = function() {
5067
- for (var e = 0, t = this.timeouts.length; e < t; e++)
5068
- clearTimeout(this.timeouts[e])
5069
- }
5070
- ,
5071
- this.version = E.version,
5072
- E.hooks.run(p, "construct")
5073
- }
5074
- ;
5075
- var he = function() {};
5076
- he.prototype = {
5077
- data: void 0,
5078
- dataSchema: void 0,
5079
- width: void 0,
5080
- height: void 0,
5081
- startRows: 5,
5082
- startCols: 5,
5083
- rowHeaders: void 0,
5084
- colHeaders: null,
5085
- colWidths: void 0,
5086
- rowHeights: void 0,
5087
- columns: void 0,
5088
- cells: void 0,
5089
- cell: [],
5090
- comments: !1,
5091
- customBorders: !1,
5092
- minRows: 0,
5093
- minCols: 0,
5094
- maxRows: 1 / 0,
5095
- maxCols: 1 / 0,
5096
- minSpareRows: 0,
5097
- minSpareCols: 0,
5098
- allowInsertRow: !0,
5099
- allowInsertColumn: !0,
5100
- allowRemoveRow: !0,
5101
- allowRemoveColumn: !0,
5102
- multiSelect: !0,
5103
- fillHandle: !0,
5104
- fixedRowsTop: 0,
5105
- fixedRowsBottom: 0,
5106
- fixedColumnsLeft: 0,
5107
- outsideClickDeselects: !0,
5108
- enterBeginsEditing: !0,
5109
- enterMoves: {
5110
- row: 1,
5111
- col: 0
5112
- },
5113
- tabMoves: {
5114
- row: 0,
5115
- col: 1
5116
- },
5117
- autoWrapRow: !1,
5118
- autoWrapCol: !1,
5119
- copyRowsLimit: 1e3,
5120
- copyColsLimit: 1e3,
5121
- pasteMode: "overwrite",
5122
- persistentState: void 0,
5123
- currentRowClassName: void 0,
5124
- currentColClassName: void 0,
5125
- currentHeaderClassName: "ht__highlight",
5126
- className: void 0,
5127
- tableClassName: void 0,
5128
- stretchH: "none",
5129
- isEmptyRow: function(e) {
5130
- var t, n, o, r;
5131
- for (t = 0,
5132
- n = this.countCols(); t < n; t++)
5133
- if (o = this.getDataAtCell(e, t),
5134
- "" !== o && null !== o && L(o))
5135
- return "object" == typeof o && (r = this.getCellMeta(e, t),
5136
- $(this.getSchema()[r.prop], o));
5137
- return !0
5138
- },
5139
- isEmptyCol: function(e) {
5140
- var t, n, o;
5141
- for (t = 0,
5142
- n = this.countRows(); t < n; t++)
5143
- if (o = this.getDataAtCell(t, e),
5144
- "" !== o && null !== o && L(o))
5145
- return !1;
5146
- return !0
5147
- },
5148
- observeDOMVisibility: !0,
5149
- allowInvalid: !0,
5150
- allowEmpty: !0,
5151
- invalidCellClassName: "htInvalid",
5152
- placeholder: !1,
5153
- placeholderCellClassName: "htPlaceholder",
5154
- readOnlyCellClassName: "htDimmed",
5155
- renderer: void 0,
5156
- commentedCellClassName: "htCommentCell",
5157
- fragmentSelection: !1,
5158
- readOnly: !1,
5159
- skipColumnOnPaste: !1,
5160
- search: !1,
5161
- type: "text",
5162
- copyable: !0,
5163
- editor: void 0,
5164
- autoComplete: void 0,
5165
- visibleRows: 10,
5166
- trimDropdown: !0,
5167
- debug: !1,
5168
- wordWrap: !0,
5169
- noWordWrapClassName: "htNoWrap",
5170
- contextMenu: void 0,
5171
- contextMenuCopyPaste: void 0,
5172
- copyPaste: void 0,
5173
- undo: void 0,
5174
- columnSorting: void 0,
5175
- manualColumnMove: void 0,
5176
- manualColumnResize: void 0,
5177
- manualRowMove: void 0,
5178
- manualRowResize: void 0,
5179
- mergeCells: !1,
5180
- viewportRowRenderingOffset: "auto",
5181
- viewportColumnRenderingOffset: "auto",
5182
- validator: void 0,
5183
- disableVisualSelection: !1,
5184
- sortIndicator: void 0,
5185
- manualColumnFreeze: void 0,
5186
- trimWhitespace: !0,
5187
- settings: void 0,
5188
- source: void 0,
5189
- title: void 0,
5190
- checkedTemplate: void 0,
5191
- uncheckedTemplate: void 0,
5192
- label: void 0,
5193
- format: void 0,
5194
- language: void 0,
5195
- selectOptions: void 0,
5196
- autoColumnSize: void 0,
5197
- autoRowSize: void 0,
5198
- dateFormat: void 0,
5199
- correctFormat: !1,
5200
- defaultDate: void 0,
5201
- strict: void 0,
5202
- allowHtml: !1,
5203
- renderAllRows: void 0,
5204
- preventOverflow: !1,
5205
- bindRowsWithHeaders: void 0,
5206
- collapsibleColumns: void 0,
5207
- columnSummary: void 0,
5208
- dropdownMenu: void 0,
5209
- filters: void 0,
5210
- formulas: void 0,
5211
- ganttChart: void 0,
5212
- headerTooltips: void 0,
5213
- hiddenColumns: void 0,
5214
- hiddenRows: void 0,
5215
- nestedHeaders: void 0,
5216
- trimRows: void 0,
5217
- rowHeaderWidth: void 0,
5218
- columnHeaderHeight: void 0,
5219
- observeChanges: void 0,
5220
- sortFunction: void 0,
5221
- sortByRelevance: !0,
5222
- filter: !0,
5223
- filteringCaseSensitive: !1
5224
- },
5225
- E.DefaultSettings = he
5226
- }
5227
- , {
5228
- "3rdparty/walkontable/src/calculator/viewportColumns": 4,
5229
- "3rdparty/walkontable/src/cell/coords": 6,
5230
- "3rdparty/walkontable/src/cell/range": 7,
5231
- browser: 24,
5232
- dataMap: 27,
5233
- dataSource: 28,
5234
- editorManager: 29,
5235
- eventManager: 42,
5236
- "helpers/array": 43,
5237
- "helpers/browser": 44,
5238
- "helpers/data": 45,
5239
- "helpers/dom/element": 47,
5240
- "helpers/function": 50,
5241
- "helpers/mixed": 51,
5242
- "helpers/number": 52,
5243
- "helpers/object": 53,
5244
- "helpers/setting": 54,
5245
- "helpers/string": 55,
5246
- numbro: "numbro",
5247
- plugins: 61,
5248
- renderers: 117,
5249
- tableView: 126,
5250
- "utils/recordTranslator": 130
5251
- }],
5252
- 27: [function(e, t, n) {
5253
- "use strict";
5254
- function o(e, t, n) {
5255
- var o = this;
5256
- this.instance = e,
5257
- this.priv = t,
5258
- this.GridSettings = n,
5259
- this.dataSource = this.instance.getSettings().data,
5260
- this.cachedLength = null,
5261
- this.skipCache = !1,
5262
- this.latestSourceRowsCount = 0,
5263
- this.dataSource && this.dataSource[0] ? this.duckSchema = this.recursiveDuckSchema(this.dataSource[0]) : this.duckSchema = {},
5264
- this.createMap(),
5265
- this.interval = O.create(function() {
5266
- return o.clearLengthCache()
5267
- }, "15fps"),
5268
- this.instance.addHook("skipLengthCache", function(e) {
5269
- return o.onSkipLengthCache(e)
5270
- })
5271
- }
5272
- Object.defineProperties(n, {
5273
- DataMap: {
5274
- get: function() {
5275
- return o
5276
- }
5277
- },
5278
- __esModule: {
5279
- value: !0
5280
- }
5281
- });
5282
- var r, i, s, a, l, u, c, d, h, f = (r = e("browser"),
5283
- r && r.__esModule && r || {
5284
- default: r
5285
- }).default, p = (i = e("SheetClip"),
5286
- i && i.__esModule && i || {
5287
- default: i
5288
- }).default, m = (s = e("helpers/data"),
5289
- s && s.__esModule && s || {
5290
- default: s
5291
- }).cellMethodLookupFactory, g = (a = e("helpers/setting"),
5292
- a && a.__esModule && a || {
5293
- default: a
5294
- }).columnFactory, w = (l = e("helpers/object"),
5295
- l && l.__esModule && l || {
5296
- default: l
5297
- }), v = w.createObjectPropListener, y = w.duckSchema, b = w.deepExtend, C = w.deepClone, _ = w.isObject, R = w.deepObjectSize, M = (u = e("helpers/array"),
5298
- u && u.__esModule && u || {
5299
- default: u
5300
- }), S = M.extendArray, E = M.to2dArray, O = (c = e("utils/interval"),
5301
- c && c.__esModule && c || {
5302
- default: c
5303
- }).Interval, T = (d = e("helpers/number"),
5304
- d && d.__esModule && d || {
5305
- default: d
5306
- }).rangeEach, k = (h = e("multiMap"),
5307
- h && h.__esModule && h || {
5308
- default: h
5309
- }).MultiMap;
5310
- o.prototype.DESTINATION_RENDERER = 1,
5311
- o.prototype.DESTINATION_CLIPBOARD_GENERATOR = 2,
5312
- o.prototype.recursiveDuckSchema = function(e) {
5313
- return y(e)
5314
- }
5315
- ,
5316
- o.prototype.recursiveDuckColumns = function(e, t, n) {
5317
- var o, r;
5318
- if ("undefined" == typeof t && (t = 0,
5319
- n = ""),
5320
- "object" == typeof e && !Array.isArray(e))
5321
- for (r in e)
5322
- e.hasOwnProperty(r) && (null === e[r] ? (o = n + r,
5323
- this.colToPropCache.push(o),
5324
- this.propToColCache.set(o, t),
5325
- t++) : t = this.recursiveDuckColumns(e[r], t, r + "."));
5326
- return t
5327
- }
5328
- ,
5329
- o.prototype.createMap = function() {
5330
- var e, t = this.getSchema();
5331
- if ("undefined" == typeof t)
5332
- throw new Error("trying to create `columns` definition but you didn't provide `schema` nor `data`");
5333
- this.colToPropCache = [],
5334
- this.propToColCache = new k;
5335
- var n = this.instance.getSettings().columns;
5336
- if (n) {
5337
- var o = n.length
5338
- , r = 0
5339
- , i = !1
5340
- , s = R(t);
5341
- for ("function" == typeof n && (o = s > 0 ? s : this.instance.countSourceCols(),
5342
- i = !0),
5343
- e = 0; e < o; e++) {
5344
- var a = i ? n(e) : n[e];
5345
- if (_(a)) {
5346
- if ("undefined" != typeof a.data) {
5347
- var l = i ? r : e;
5348
- this.colToPropCache[l] = a.data,
5349
- this.propToColCache.set(a.data, l)
5350
- }
5351
- r++
5352
- }
5353
- }
5354
- } else
5355
- this.recursiveDuckColumns(t)
5356
- }
5357
- ,
5358
- o.prototype.colToProp = function(e) {
5359
- return e = f.hooks.run(this.instance, "modifyCol", e),
5360
- this.colToPropCache && "undefined" != typeof this.colToPropCache[e] ? this.colToPropCache[e] : e
5361
- }
5362
- ,
5363
- o.prototype.propToCol = function(e) {
5364
- var t;
5365
- return t = "undefined" == typeof this.propToColCache.get(e) ? e : this.propToColCache.get(e),
5366
- t = f.hooks.run(this.instance, "unmodifyCol", t)
5367
- }
5368
- ,
5369
- o.prototype.getSchema = function() {
5370
- var e = this.instance.getSettings().dataSchema;
5371
- return e ? "function" == typeof e ? e() : e : this.duckSchema
5372
- }
5373
- ,
5374
- o.prototype.createRow = function(e, t, n) {
5375
- var o, r, i = this.instance.countCols(), s = 0;
5376
- t || (t = 1),
5377
- ("number" != typeof e || e >= this.instance.countSourceRows()) && (e = this.instance.countSourceRows()),
5378
- f.hooks.run(this.instance, "beforeCreateRow", e, t, n),
5379
- r = e;
5380
- for (var a = this.instance.getSettings().maxRows; s < t && this.instance.countSourceRows() < a; )
5381
- "array" === this.instance.dataType ? this.instance.getSettings().dataSchema ? o = C(this.getSchema()) : (o = [],
5382
- T(i - 1, function() {
5383
- return o.push(null)
5384
- })) : "function" === this.instance.dataType ? o = this.instance.getSettings().dataSchema(e) : (o = {},
5385
- b(o, this.getSchema())),
5386
- e === this.instance.countSourceRows() ? this.dataSource.push(o) : this.spliceData(e, 0, o),
5387
- s++,
5388
- r++;
5389
- return f.hooks.run(this.instance, "afterCreateRow", e, s, n),
5390
- this.instance.forceFullRender = !0,
5391
- s
5392
- }
5393
- ,
5394
- o.prototype.createCol = function(e, t, n) {
5395
- if (!this.instance.isColumnModificationAllowed())
5396
- throw new Error("Cannot create new column. When data source in an object, you can only have as much columns as defined in first data row, data schema or in the 'columns' setting.If you want to be able to add new columns, you have to use array datasource.");
5397
- var o, r, i = this.instance.countSourceRows(), s = this.dataSource, a = 0;
5398
- t || (t = 1),
5399
- ("number" != typeof e || e >= this.instance.countCols()) && (e = this.instance.countCols()),
5400
- f.hooks.run(this.instance, "beforeCreateCol", e, t, n),
5401
- r = e;
5402
- for (var l = this.instance.getSettings().maxCols; a < t && this.instance.countCols() < l; ) {
5403
- if (o = g(this.GridSettings, this.priv.columnsSettingConflicts),
5404
- "number" != typeof e || e >= this.instance.countCols()) {
5405
- if (i > 0)
5406
- for (var u = 0; u < i; u++)
5407
- "undefined" == typeof s[u] && (s[u] = []),
5408
- s[u].push(null);
5409
- else
5410
- s.push([null]);
5411
- this.priv.columnSettings.push(o)
5412
- } else {
5413
- for (var u = 0; u < i; u++)
5414
- s[u].splice(r, 0, null);
5415
- this.priv.columnSettings.splice(r, 0, o)
5416
- }
5417
- a++,
5418
- r++
5419
- }
5420
- return f.hooks.run(this.instance, "afterCreateCol", e, a, n),
5421
- this.instance.forceFullRender = !0,
5422
- a
5423
- }
5424
- ,
5425
- o.prototype.removeRow = function(e, t, n) {
5426
- t || (t = 1),
5427
- "number" != typeof e && (e = -t),
5428
- t = f.hooks.run(this.instance, "modifyRemovedAmount", t, e),
5429
- e = (this.instance.countSourceRows() + e) % this.instance.countSourceRows();
5430
- var o = this.physicalRowsToLogical(e, t)
5431
- , r = f.hooks.run(this.instance, "beforeRemoveRow", e, t, o, n);
5432
- if (r !== !1) {
5433
- var i, s = this.dataSource;
5434
- i = this.filterData(e, t),
5435
- i && (s.length = 0,
5436
- Array.prototype.push.apply(s, i)),
5437
- f.hooks.run(this.instance, "afterRemoveRow", e, t, o, n),
5438
- this.instance.forceFullRender = !0
5439
- }
5440
- }
5441
- ,
5442
- o.prototype.removeCol = function(e, t, n) {
5443
- if ("object" === this.instance.dataType || this.instance.getSettings().columns)
5444
- throw new Error("cannot remove column with object data source or columns option specified");
5445
- t || (t = 1),
5446
- "number" != typeof e && (e = -t),
5447
- e = (this.instance.countCols() + e) % this.instance.countCols();
5448
- var o = this.physicalColumnsToLogical(e, t)
5449
- , r = o.slice(0).sort(function(e, t) {
5450
- return t - e
5451
- })
5452
- , i = f.hooks.run(this.instance, "beforeRemoveCol", e, t, o, n);
5453
- if (i !== !1) {
5454
- for (var s = !0, a = r.length, l = this.dataSource, u = 0; u < a; u++)
5455
- s && o[0] !== o[u] - u && (s = !1);
5456
- if (s)
5457
- for (var c = 0, d = this.instance.countSourceRows(); c < d; c++)
5458
- l[c].splice(o[0], t);
5459
- else {
5460
- for (var h = 0, p = this.instance.countSourceRows(); h < p; h++)
5461
- for (var m = 0; m < a; m++)
5462
- l[h].splice(r[m], 1);
5463
- for (var g = 0; g < a; g++)
5464
- this.priv.columnSettings.splice(o[g], 1)
5465
- }
5466
- f.hooks.run(this.instance, "afterRemoveCol", e, t, o, n),
5467
- this.instance.forceFullRender = !0
5468
- }
5469
- }
5470
- ,
5471
- o.prototype.spliceCol = function(e, t, n) {
5472
- var o = 4 <= arguments.length ? [].slice.call(arguments, 3) : []
5473
- , r = this.instance.getDataAtCol(e)
5474
- , i = r.slice(t, t + n)
5475
- , s = r.slice(t + n);
5476
- S(o, s);
5477
- for (var a = 0; a < n; )
5478
- o.push(null),
5479
- a++;
5480
- return E(o),
5481
- this.instance.populateFromArray(t, e, o, null, null, "spliceCol"),
5482
- i
5483
- }
5484
- ,
5485
- o.prototype.spliceRow = function(e, t, n) {
5486
- var o = 4 <= arguments.length ? [].slice.call(arguments, 3) : []
5487
- , r = this.instance.getSourceDataAtRow(e)
5488
- , i = r.slice(t, t + n)
5489
- , s = r.slice(t + n);
5490
- S(o, s);
5491
- for (var a = 0; a < n; )
5492
- o.push(null),
5493
- a++;
5494
- return this.instance.populateFromArray(e, t, [o], null, null, "spliceRow"),
5495
- i
5496
- }
5497
- ,
5498
- o.prototype.spliceData = function(e, t, n) {
5499
- var o = f.hooks.run(this.instance, "beforeDataSplice", e, t, n);
5500
- o !== !1 && this.dataSource.splice(e, t, n)
5501
- }
5502
- ,
5503
- o.prototype.filterData = function(e, t) {
5504
- var n = this.physicalRowsToLogical(e, t)
5505
- , o = f.hooks.run(this.instance, "beforeDataFilter", e, t, n);
5506
- if (o !== !1) {
5507
- var r = this.dataSource.filter(function(e, t) {
5508
- return n.indexOf(t) == -1
5509
- });
5510
- return r
5511
- }
5512
- }
5513
- ,
5514
- o.prototype.get = function(e, t) {
5515
- e = f.hooks.run(this.instance, "modifyRow", e);
5516
- var n = this.dataSource[e]
5517
- , o = f.hooks.run(this.instance, "modifyRowData", e);
5518
- n = isNaN(o) ? o : n;
5519
- var r = null;
5520
- if (n && n.hasOwnProperty && n.hasOwnProperty(t))
5521
- r = n[t];
5522
- else if ("string" == typeof t && t.indexOf(".") > -1) {
5523
- var i = t.split(".")
5524
- , s = n;
5525
- if (!s)
5526
- return null;
5527
- for (var a = 0, l = i.length; a < l; a++)
5528
- if (s = s[i[a]],
5529
- "undefined" == typeof s)
5530
- return null;
5531
- r = s
5532
- } else
5533
- "function" == typeof t && (r = t(this.dataSource.slice(e, e + 1)[0]));
5534
- if (f.hooks.has("modifyData", this.instance)) {
5535
- var u = v(r);
5536
- f.hooks.run(this.instance, "modifyData", e, this.propToCol(t), u, "get"),
5537
- u.isTouched() && (r = u.value)
5538
- }
5539
- return r
5540
- }
5541
- ;
5542
- var x = m("copyable", !1);
5543
- o.prototype.getCopyable = function(e, t) {
5544
- return x.call(this.instance, e, this.propToCol(t)) ? this.get(e, t) : ""
5545
- }
5546
- ,
5547
- o.prototype.set = function(e, t, n, o) {
5548
- e = f.hooks.run(this.instance, "modifyRow", e, o || "datamapGet");
5549
- var r = this.dataSource[e]
5550
- , i = f.hooks.run(this.instance, "modifyRowData", e);
5551
- if (r = isNaN(i) ? i : r,
5552
- f.hooks.has("modifyData", this.instance)) {
5553
- var s = v(n);
5554
- f.hooks.run(this.instance, "modifyData", e, this.propToCol(t), s, "set"),
5555
- s.isTouched() && (n = s.value)
5556
- }
5557
- if (r && r.hasOwnProperty && r.hasOwnProperty(t))
5558
- r[t] = n;
5559
- else if ("string" == typeof t && t.indexOf(".") > -1) {
5560
- for (var a = t.split("."), l = r, u = 0, c = a.length - 1; u < c; u++)
5561
- "undefined" == typeof l[a[u]] && (l[a[u]] = {}),
5562
- l = l[a[u]];
5563
- l[a[u]] = n
5564
- } else
5565
- "function" == typeof t ? t(this.dataSource.slice(e, e + 1)[0], n) : r[t] = n
5566
- }
5567
- ,
5568
- o.prototype.physicalRowsToLogical = function(e, t) {
5569
- for (var n, o = this.instance.countSourceRows(), r = (o + e) % o, i = [], s = t; r < o && s; )
5570
- n = f.hooks.run(this.instance, "modifyRow", r),
5571
- i.push(n),
5572
- s--,
5573
- r++;
5574
- return i
5575
- }
5576
- ,
5577
- o.prototype.physicalColumnsToLogical = function(e, t) {
5578
- for (var n = this.instance.countCols(), o = (n + e) % n, r = [], i = t; o < n && i; ) {
5579
- var s = f.hooks.run(this.instance, "modifyCol", o);
5580
- r.push(s),
5581
- i--,
5582
- o++
5583
- }
5584
- return r
5585
- }
5586
- ,
5587
- o.prototype.clear = function() {
5588
- for (var e = 0; e < this.instance.countSourceRows(); e++)
5589
- for (var t = 0; t < this.instance.countCols(); t++)
5590
- this.set(e, this.colToProp(t), "")
5591
- }
5592
- ,
5593
- o.prototype.clearLengthCache = function() {
5594
- this.cachedLength = null
5595
- }
5596
- ,
5597
- o.prototype.getLength = function() {
5598
- var e, t = this, n = this.instance.getSettings().maxRows;
5599
- e = n < 0 || 0 === n ? 0 : n || 1 / 0;
5600
- var o = this.instance.countSourceRows();
5601
- if (f.hooks.has("modifyRow", this.instance)) {
5602
- var r = this.skipCache;
5603
- this.interval.start(),
5604
- o !== this.latestSourceRowsCount && (r = !0),
5605
- this.latestSourceRowsCount = o,
5606
- null === this.cachedLength || r ? (T(o - 1, function(e) {
5607
- e = f.hooks.run(t.instance, "modifyRow", e),
5608
- null === e && --o
5609
- }),
5610
- this.cachedLength = o) : o = this.cachedLength
5611
- } else
5612
- this.interval.stop();
5613
- return Math.min(o, e)
5614
- }
5615
- ,
5616
- o.prototype.getAll = function() {
5617
- var e = {
5618
- row: 0,
5619
- col: 0
5620
- }
5621
- , t = this.instance.getSettings().maxRows;
5622
- if (0 === t)
5623
- return [];
5624
- var n = {
5625
- row: Math.min(Math.max(t - 1, 0), Math.max(this.instance.countSourceRows() - 1, 0)),
5626
- col: Math.max(this.instance.countCols() - 1, 0)
5627
- };
5628
- return e.row - n.row !== 0 || this.instance.countSourceRows() ? this.getRange(e, n, o.prototype.DESTINATION_RENDERER) : []
5629
- }
5630
- ,
5631
- o.prototype.getRange = function(e, t, n) {
5632
- var o, r, i, s, a, l = [], u = n === this.DESTINATION_CLIPBOARD_GENERATOR ? this.getCopyable : this.get;
5633
- for (r = Math.max(e.row, t.row),
5634
- s = Math.max(e.col, t.col),
5635
- o = Math.min(e.row, t.row); o <= r; o++) {
5636
- a = [];
5637
- var c = f.hooks.run(this.instance, "modifyRow", o);
5638
- for (i = Math.min(e.col, t.col); i <= s && null !== c; i++)
5639
- a.push(u.call(this, o, this.colToProp(i)));
5640
- null !== c && l.push(a)
5641
- }
5642
- return l
5643
- }
5644
- ,
5645
- o.prototype.getText = function(e, t) {
5646
- return p.stringify(this.getRange(e, t, this.DESTINATION_RENDERER))
5647
- }
5648
- ,
5649
- o.prototype.getCopyableText = function(e, t) {
5650
- return p.stringify(this.getRange(e, t, this.DESTINATION_CLIPBOARD_GENERATOR))
5651
- }
5652
- ,
5653
- o.prototype.onSkipLengthCache = function(e) {
5654
- var t = this;
5655
- this.skipCache = !0,
5656
- setTimeout(function() {
5657
- t.skipCache = !1
5658
- }, e)
5659
- }
5660
- ,
5661
- o.prototype.destroy = function() {
5662
- this.interval.stop(),
5663
- this.interval = null,
5664
- this.instance = null,
5665
- this.priv = null,
5666
- this.GridSettings = null,
5667
- this.dataSource = null,
5668
- this.cachedLength = null,
5669
- this.duckSchema = null
5670
- }
5671
- }
5672
- , {
5673
- SheetClip: "SheetClip",
5674
- browser: 24,
5675
- "helpers/array": 43,
5676
- "helpers/data": 45,
5677
- "helpers/number": 52,
5678
- "helpers/object": 53,
5679
- "helpers/setting": 54,
5680
- multiMap: 59,
5681
- "utils/interval": 129
5682
- }],
5683
- 28: [function(e, t, n) {
5684
- "use strict";
5685
- Object.defineProperties(n, {
5686
- DataSource: {
5687
- get: function() {
5688
- return u
5689
- }
5690
- },
5691
- __esModule: {
5692
- value: !0
5693
- }
5694
- });
5695
- var o, r, i, s = (o = e("helpers/object"),
5696
- o && o.__esModule && o || {
5697
- default: o
5698
- }).getProperty, a = (r = e("helpers/array"),
5699
- r && r.__esModule && r || {
5700
- default: r
5701
- }).arrayEach, l = (i = e("helpers/number"),
5702
- i && i.__esModule && i || {
5703
- default: i
5704
- }).rangeEach, u = function(e) {
5705
- var t = void 0 !== arguments[1] ? arguments[1] : [];
5706
- this.hot = e,
5707
- this.data = t,
5708
- this.dataType = "array",
5709
- this.colToProp = function() {}
5710
- ,
5711
- this.propToCol = function() {}
5712
- };
5713
- $traceurRuntime.createClass(u, {
5714
- getData: function() {
5715
- var e = void 0 !== arguments[0] && arguments[0]
5716
- , t = this.data;
5717
- return e && (t = this.getByRange({
5718
- row: 0,
5719
- col: 0
5720
- }, {
5721
- row: Math.max(this.countRows() - 1, 0),
5722
- col: Math.max(this.countColumns() - 1, 0)
5723
- }, !0)),
5724
- t
5725
- },
5726
- setData: function(e) {
5727
- this.data = e
5728
- },
5729
- getAtColumn: function(e) {
5730
- var t = this
5731
- , n = [];
5732
- return a(this.data, function(o) {
5733
- var r = t.colToProp(e);
5734
- o = "string" == typeof r ? s(o, r) : o[r],
5735
- n.push(o)
5736
- }),
5737
- n
5738
- },
5739
- getAtRow: function(e) {
5740
- return this.data[e]
5741
- },
5742
- getAtCell: function(e, t) {
5743
- var n = null
5744
- , o = this.hot.runHooks("modifyRowData", e)
5745
- , r = isNaN(o) ? o : this.data[e];
5746
- if (r) {
5747
- var i = this.colToProp(t);
5748
- n = "string" == typeof i ? s(r, i) : "function" == typeof i ? i(this.data.slice(e, e + 1)[0]) : r[i]
5749
- }
5750
- return n
5751
- },
5752
- getByRange: function(e, t) {
5753
- var n = void 0 !== arguments[2] && arguments[2]
5754
- , o = this
5755
- , r = Math.min(e.row, t.row)
5756
- , i = Math.min(e.col, t.col)
5757
- , s = Math.max(e.row, t.row)
5758
- , a = Math.max(e.col, t.col)
5759
- , u = [];
5760
- return l(r, s, function(e) {
5761
- var t, r = o.getAtRow(e);
5762
- "array" === o.dataType ? t = r.slice(i, a + 1) : "object" === o.dataType && (t = n ? [] : {},
5763
- l(i, a, function(e) {
5764
- var i = o.colToProp(e);
5765
- n ? t.push(r[i]) : t[i] = r[i]
5766
- })),
5767
- u.push(t)
5768
- }),
5769
- u
5770
- },
5771
- countRows: function() {
5772
- return Array.isArray(this.data) ? this.data.length : 0
5773
- },
5774
- countColumns: function() {
5775
- var e = 0;
5776
- return Array.isArray(this.data) && ("array" === this.dataType ? e = this.data[0].length : "object" === this.dataType && (e = Object.keys(this.data[0]).length)),
5777
- e
5778
- },
5779
- destroy: function() {
5780
- this.data = null,
5781
- this.hot = null
5782
- }
5783
- }, {})
5784
- }
5785
- , {
5786
- "helpers/array": 43,
5787
- "helpers/number": 52,
5788
- "helpers/object": 53
5789
- }],
5790
- 29: [function(e, t, n) {
5791
- "use strict";
5792
- function o(e, t, n) {
5793
- function o(e) {
5794
- var o = "function" == typeof t.settings.enterMoves ? t.settings.enterMoves(event) : t.settings.enterMoves;
5795
- e ? n.transformStart(-o.row, -o.col) : n.transformStart(o.row, o.col, !0)
5796
- }
5797
- function r(e) {
5798
- e ? n.transformEnd(-1, 0) : n.transformStart(-1, 0)
5799
- }
5800
- function i(e) {
5801
- e ? n.transformEnd(1, 0) : n.transformStart(1, 0)
5802
- }
5803
- function s(e) {
5804
- e ? n.transformEnd(0, 1) : n.transformStart(0, 1)
5805
- }
5806
- function a(e) {
5807
- e ? n.transformEnd(0, -1) : n.transformStart(0, -1)
5808
- }
5809
- function l(l) {
5810
- var u, h;
5811
- if (e.isListening() && (c.hooks.run(e, "beforeKeyDown", l),
5812
- !_ && !y(l) && (t.lastKeyCode = l.keyCode,
5813
- n.isSelected()))) {
5814
- if (u = (l.ctrlKey || l.metaKey) && !l.altKey,
5815
- g && !g.isWaiting() && !(p(l.keyCode) || m(l.keyCode) || u || C.isEditorOpened()))
5816
- return void C.openEditor("", l);
5817
- switch (h = l.shiftKey ? n.setRangeEnd : n.setRangeStart,
5818
- l.keyCode) {
5819
- case f.A:
5820
- !C.isEditorOpened() && u && (n.selectAll(),
5821
- l.preventDefault(),
5822
- w(l));
5823
- break;
5824
- case f.ARROW_UP:
5825
- C.isEditorOpened() && !g.isWaiting() && C.closeEditorAndSaveChanges(u),
5826
- r(l.shiftKey),
5827
- l.preventDefault(),
5828
- w(l);
5829
- break;
5830
- case f.ARROW_DOWN:
5831
- C.isEditorOpened() && !g.isWaiting() && C.closeEditorAndSaveChanges(u),
5832
- i(l.shiftKey),
5833
- l.preventDefault(),
5834
- w(l);
5835
- break;
5836
- case f.ARROW_RIGHT:
5837
- C.isEditorOpened() && !g.isWaiting() && C.closeEditorAndSaveChanges(u),
5838
- s(l.shiftKey),
5839
- l.preventDefault(),
5840
- w(l);
5841
- break;
5842
- case f.ARROW_LEFT:
5843
- C.isEditorOpened() && !g.isWaiting() && C.closeEditorAndSaveChanges(u),
5844
- a(l.shiftKey),
5845
- l.preventDefault(),
5846
- w(l);
5847
- break;
5848
- case f.TAB:
5849
- var b = "function" == typeof t.settings.tabMoves ? t.settings.tabMoves(l) : t.settings.tabMoves;
5850
- l.shiftKey ? n.transformStart(-b.row, -b.col) : n.transformStart(b.row, b.col, !0),
5851
- l.preventDefault(),
5852
- w(l);
5853
- break;
5854
- case f.BACKSPACE:
5855
- case f.DELETE:
5856
- n.empty(l),
5857
- C.prepareEditor(),
5858
- l.preventDefault();
5859
- break;
5860
- case f.F2:
5861
- C.openEditor(null, l),
5862
- g && g.enableFullEditMode(),
5863
- l.preventDefault();
5864
- break;
5865
- case f.ENTER:
5866
- C.isEditorOpened() ? (g && g.state !== c.EditorState.WAITING && C.closeEditorAndSaveChanges(u),
5867
- o(l.shiftKey)) : e.getSettings().enterBeginsEditing ? (C.openEditor(null, l),
5868
- g && g.enableFullEditMode()) : o(l.shiftKey),
5869
- l.preventDefault(),
5870
- v(l);
5871
- break;
5872
- case f.ESCAPE:
5873
- C.isEditorOpened() && C.closeEditorAndRestoreOriginalValue(u),
5874
- l.preventDefault();
5875
- break;
5876
- case f.HOME:
5877
- h(l.ctrlKey || l.metaKey ? new d(0,t.selRange.from.col) : new d(t.selRange.from.row,0)),
5878
- l.preventDefault(),
5879
- w(l);
5880
- break;
5881
- case f.END:
5882
- h(l.ctrlKey || l.metaKey ? new d(e.countRows() - 1,t.selRange.from.col) : new d(t.selRange.from.row,e.countCols() - 1)),
5883
- l.preventDefault(),
5884
- w(l);
5885
- break;
5886
- case f.PAGE_UP:
5887
- n.transformStart(-e.countVisibleRows(), 0),
5888
- l.preventDefault(),
5889
- w(l);
5890
- break;
5891
- case f.PAGE_DOWN:
5892
- n.transformStart(e.countVisibleRows(), 0),
5893
- l.preventDefault(),
5894
- w(l)
5895
- }
5896
- }
5897
- }
5898
- function u() {
5899
- function t(e, t, n) {
5900
- "TD" == n.nodeName && (C.openEditor(),
5901
- g && g.enableFullEditMode())
5902
- }
5903
- e.addHook("afterDocumentKeyDown", l),
5904
- h.addEventListener(document.documentElement, "keydown", function(t) {
5905
- _ || e.runHooks("afterDocumentKeyDown", t)
5906
- }),
5907
- e.view.wt.update("onCellDblClick", t),
5908
- e.addHook("afterDestroy", function() {
5909
- _ = !0
5910
- })
5911
- }
5912
- var h, g, C = this, _ = !1;
5913
- h = b(e),
5914
- this.destroyEditor = function(e) {
5915
- this.closeEditor(e)
5916
- }
5917
- ,
5918
- this.getActiveEditor = function() {
5919
- return g
5920
- }
5921
- ,
5922
- this.prepareEditor = function() {
5923
- var n, o, r, i, s, a, l;
5924
- return g && g.isWaiting() ? void this.closeEditor(!1, !1, function(e) {
5925
- e && C.prepareEditor()
5926
- }) : (n = t.selRange.highlight.row,
5927
- o = t.selRange.highlight.col,
5928
- r = e.colToProp(o),
5929
- i = e.getCell(n, o),
5930
- s = e.getSourceDataAtCell(e.runHooks("modifyRow", n), o),
5931
- a = e.getCellMeta(n, o),
5932
- l = e.getCellEditor(a),
5933
- void (l ? (g = c.editors.getEditor(l, e),
5934
- g.prepare(n, o, r, i, s, a)) : g = void 0))
5935
- }
5936
- ,
5937
- this.isEditorOpened = function() {
5938
- return g && g.isOpened()
5939
- }
5940
- ,
5941
- this.openEditor = function(e, t) {
5942
- g && !g.cellProperties.readOnly ? g.beginEditing(e, t) : g && g.cellProperties.readOnly && t && t.keyCode === f.ENTER && o()
5943
- }
5944
- ,
5945
- this.closeEditor = function(e, t, n) {
5946
- g ? g.finishEditing(e, t, n) : n && n(!1)
5947
- }
5948
- ,
5949
- this.closeEditorAndSaveChanges = function(e) {
5950
- return this.closeEditor(!1, e)
5951
- }
5952
- ,
5953
- this.closeEditorAndRestoreOriginalValue = function(e) {
5954
- return this.closeEditor(!0, e)
5955
- }
5956
- ,
5957
- u()
5958
- }
5959
- Object.defineProperties(n, {
5960
- EditorManager: {
5961
- get: function() {
5962
- return o
5963
- }
5964
- },
5965
- __esModule: {
5966
- value: !0
5967
- }
5968
- });
5969
- var r, i, s, a, l, u, c = (r = e("browser"),
5970
- r && r.__esModule && r || {
5971
- default: r
5972
- }).default, d = (i = e("3rdparty/walkontable/src/cell/coords"),
5973
- i && i.__esModule && i || {
5974
- default: i
5975
- }).WalkontableCellCoords, h = (s = e("helpers/unicode"),
5976
- s && s.__esModule && s || {
5977
- default: s
5978
- }), f = h.KEY_CODES, p = h.isMetaKey, m = h.isCtrlKey, g = (a = e("helpers/dom/event"),
5979
- a && a.__esModule && a || {
5980
- default: a
5981
- }), w = g.stopPropagation, v = g.stopImmediatePropagation, y = g.isImmediatePropagationStopped, b = ((l = e("editors"),
5982
- l && l.__esModule && l || {
5983
- default: l
5984
- }).getEditor,
5985
- (u = e("eventManager"),
5986
- u && u.__esModule && u || {
5987
- default: u
5988
- }).eventManager);
5989
- c.EditorManager = o
5990
- }
5991
- , {
5992
- "3rdparty/walkontable/src/cell/coords": 6,
5993
- browser: 24,
5994
- editors: 30,
5995
- eventManager: 42,
5996
- "helpers/dom/event": 48,
5997
- "helpers/unicode": 56
5998
- }],
5999
- 30: [function(e, t, n) {
6000
- "use strict";
6001
- function o(e) {
6002
- var t, n;
6003
- n = {},
6004
- t = e,
6005
- this.getConstructor = function() {
6006
- return e
6007
- }
6008
- ,
6009
- this.getInstance = function(e) {
6010
- return e.guid in n || (n[e.guid] = new t(e)),
6011
- n[e.guid]
6012
- }
6013
- }
6014
- function r(e, t) {
6015
- var n = new o(t);
6016
- "string" == typeof e && (h[e] = n,
6017
- c.editors[d(e) + "Editor"] = t),
6018
- f.set(t, n)
6019
- }
6020
- function i(e, t) {
6021
- var n;
6022
- if ("function" == typeof e)
6023
- f.get(e) || r(null, e),
6024
- n = f.get(e);
6025
- else {
6026
- if ("string" != typeof e)
6027
- throw Error('Only strings and functions can be passed as "editor" parameter ');
6028
- n = h[e]
6029
- }
6030
- if (!n)
6031
- throw Error('No editor registered under name "' + e + '"');
6032
- return n.getInstance(t)
6033
- }
6034
- function s(e) {
6035
- var t;
6036
- if ("string" != typeof e)
6037
- throw Error('Only strings and functions can be passed as "editor" parameter ');
6038
- if (t = h[e],
6039
- !t)
6040
- throw Error('No editor registered under name "' + e + '"');
6041
- return t.getConstructor()
6042
- }
6043
- function a(e) {
6044
- return !!h[e]
6045
- }
6046
- Object.defineProperties(n, {
6047
- registerEditor: {
6048
- get: function() {
6049
- return r
6050
- }
6051
- },
6052
- getEditor: {
6053
- get: function() {
6054
- return i
6055
- }
6056
- },
6057
- hasEditor: {
6058
- get: function() {
6059
- return a
6060
- }
6061
- },
6062
- getEditorConstructor: {
6063
- get: function() {
6064
- return s
6065
- }
6066
- },
6067
- __esModule: {
6068
- value: !0
6069
- }
6070
- });
6071
- var l, u, c = (l = e("browser"),
6072
- l && l.__esModule && l || {
6073
- default: l
6074
- }).default, d = (u = e("helpers/string"),
6075
- u && u.__esModule && u || {
6076
- default: u
6077
- }).toUpperCaseFirst, h = {}, f = new WeakMap;
6078
- c.editors = c.editors || {},
6079
- c.editors.registerEditor = r,
6080
- c.editors.getEditor = i
6081
- }
6082
- , {
6083
- browser: 24,
6084
- "helpers/string": 55
6085
- }],
6086
- 31: [function(e, t, n) {
6087
- "use strict";
6088
- function o(e) {
6089
- this.instance = e,
6090
- this.state = a.EditorState.VIRGIN,
6091
- this._opened = !1,
6092
- this._fullEditMode = !1,
6093
- this._closeCallback = null,
6094
- this.init()
6095
- }
6096
- Object.defineProperties(n, {
6097
- BaseEditor: {
6098
- get: function() {
6099
- return o
6100
- }
6101
- },
6102
- __esModule: {
6103
- value: !0
6104
- }
6105
- });
6106
- var r, i, s, a = (r = e("browser"),
6107
- r && r.__esModule && r || {
6108
- default: r
6109
- }).default, l = (i = e("helpers/mixed"),
6110
- i && i.__esModule && i || {
6111
- default: i
6112
- }).stringify, u = (s = e("3rdparty/walkontable/src/cell/coords"),
6113
- s && s.__esModule && s || {
6114
- default: s
6115
- }).WalkontableCellCoords;
6116
- a.editors = a.editors || {},
6117
- a.editors.BaseEditor = o,
6118
- a.EditorState = {
6119
- VIRGIN: "STATE_VIRGIN",
6120
- EDITING: "STATE_EDITING",
6121
- WAITING: "STATE_WAITING",
6122
- FINISHED: "STATE_FINISHED"
6123
- },
6124
- o.prototype._fireCallbacks = function(e) {
6125
- this._closeCallback && (this._closeCallback(e),
6126
- this._closeCallback = null)
6127
- }
6128
- ,
6129
- o.prototype.init = function() {}
6130
- ,
6131
- o.prototype.getValue = function() {
6132
- throw Error("Editor getValue() method unimplemented")
6133
- }
6134
- ,
6135
- o.prototype.setValue = function(e) {
6136
- throw Error("Editor setValue() method unimplemented")
6137
- }
6138
- ,
6139
- o.prototype.open = function() {
6140
- throw Error("Editor open() method unimplemented")
6141
- }
6142
- ,
6143
- o.prototype.close = function() {
6144
- throw Error("Editor close() method unimplemented");
6145
- }
6146
- ,
6147
- o.prototype.prepare = function(e, t, n, o, r, i) {
6148
- this.TD = o,
6149
- this.row = e,
6150
- this.col = t,
6151
- this.prop = n,
6152
- this.originalValue = r,
6153
- this.cellProperties = i;
6154
- var s = !document.activeElement || document.activeElement && void 0 === document.activeElement.nodeName;
6155
- this.instance.view.isMouseDown() && document.activeElement && document.activeElement !== document.body && !s ? document.activeElement.blur() : s && document.body.focus(),
6156
- this.state = a.EditorState.VIRGIN
6157
- }
6158
- ,
6159
- o.prototype.extend = function() {
6160
- function e() {
6161
- n.apply(this, arguments)
6162
- }
6163
- function t(e, t) {
6164
- function n() {}
6165
- return n.prototype = t.prototype,
6166
- e.prototype = new n,
6167
- e.prototype.constructor = e,
6168
- e
6169
- }
6170
- var n = this.constructor;
6171
- return t(e, n)
6172
- }
6173
- ,
6174
- o.prototype.saveValue = function(e, t) {
6175
- var n, o;
6176
- t ? (n = this.instance.getSelected(),
6177
- n[0] > n[2] && (o = n[0],
6178
- n[0] = n[2],
6179
- n[2] = o),
6180
- n[1] > n[3] && (o = n[1],
6181
- n[1] = n[3],
6182
- n[3] = o)) : n = [this.row, this.col, null, null],
6183
- this.instance.populateFromArray(n[0], n[1], e, n[2], n[3], "edit")
6184
- }
6185
- ,
6186
- o.prototype.beginEditing = function(e, t) {
6187
- this.state == a.EditorState.VIRGIN && (this.instance.view.scrollViewport(new u(this.row,this.col)),
6188
- this.instance.view.render(),
6189
- this.state = a.EditorState.EDITING,
6190
- e = "string" == typeof e ? e : this.originalValue,
6191
- this.setValue(l(e)),
6192
- this.open(t),
6193
- this._opened = !0,
6194
- this.focus(),
6195
- this.instance.view.render(),
6196
- this.instance.runHooks("afterBeginEditing", this.row, this.col))
6197
- }
6198
- ,
6199
- o.prototype.finishEditing = function(e, t, n) {
6200
- var o, r = this;
6201
- if (n) {
6202
- var i = this._closeCallback;
6203
- this._closeCallback = function(e) {
6204
- i && i(e),
6205
- n(e),
6206
- r.instance.view.render()
6207
- }
6208
- }
6209
- if (!this.isWaiting()) {
6210
- if (this.state == a.EditorState.VIRGIN)
6211
- return void this.instance._registerTimeout(setTimeout(function() {
6212
- r._fireCallbacks(!0)
6213
- }, 0));
6214
- if (this.state == a.EditorState.EDITING) {
6215
- if (e)
6216
- return this.cancelChanges(),
6217
- void this.instance.view.render();
6218
- var s = this.getValue();
6219
- o = this.instance.getSettings().trimWhitespace ? [["string" == typeof s ? String.prototype.trim.call(s || "") : s]] : [[s]],
6220
- this.state = a.EditorState.WAITING,
6221
- this.saveValue(o, t),
6222
- this.instance.getCellValidator(this.cellProperties) ? this.instance.addHookOnce("postAfterValidate", function(e) {
6223
- r.state = a.EditorState.FINISHED,
6224
- r.discardEditor(e)
6225
- }) : (this.state = a.EditorState.FINISHED,
6226
- this.discardEditor(!0))
6227
- }
6228
- }
6229
- }
6230
- ,
6231
- o.prototype.cancelChanges = function() {
6232
- this.state = a.EditorState.FINISHED,
6233
- this.discardEditor()
6234
- }
6235
- ,
6236
- o.prototype.discardEditor = function(e) {
6237
- this.state === a.EditorState.FINISHED && (e === !1 && this.cellProperties.allowInvalid !== !0 ? (this.instance.selectCell(this.row, this.col),
6238
- this.focus(),
6239
- this.state = a.EditorState.EDITING,
6240
- this._fireCallbacks(!1)) : (this.close(),
6241
- this._opened = !1,
6242
- this._fullEditMode = !1,
6243
- this.state = a.EditorState.VIRGIN,
6244
- this._fireCallbacks(!0)))
6245
- }
6246
- ,
6247
- o.prototype.enableFullEditMode = function() {
6248
- this._fullEditMode = !0
6249
- }
6250
- ,
6251
- o.prototype.isInFullEditMode = function() {
6252
- return this._fullEditMode
6253
- }
6254
- ,
6255
- o.prototype.isOpened = function() {
6256
- return this._opened
6257
- }
6258
- ,
6259
- o.prototype.isWaiting = function() {
6260
- return this.state === a.EditorState.WAITING
6261
- }
6262
- ,
6263
- o.prototype.checkEditorSection = function() {
6264
- var e = this.instance.countRows()
6265
- , t = "";
6266
- return this.row < this.instance.getSettings().fixedRowsTop ? t = this.col < this.instance.getSettings().fixedColumnsLeft ? "top-left-corner" : "top" : this.instance.getSettings().fixedRowsBottom && this.row >= e - this.instance.getSettings().fixedRowsBottom ? t = this.col < this.instance.getSettings().fixedColumnsLeft ? "bottom-left-corner" : "bottom" : this.col < this.instance.getSettings().fixedColumnsLeft && (t = "left"),
6267
- t
6268
- }
6269
- }
6270
- , {
6271
- "3rdparty/walkontable/src/cell/coords": 6,
6272
- browser: 24,
6273
- "helpers/mixed": 51
6274
- }],
6275
- 32: [function(e, t, n) {
6276
- "use strict";
6277
- function o(e) {
6278
- H = !1;
6279
- var t = this.getActiveEditor();
6280
- if (f(e.keyCode) || e.keyCode === h.BACKSPACE || e.keyCode === h.DELETE || e.keyCode === h.INSERT) {
6281
- var n = 0;
6282
- if (e.keyCode === h.C && (e.ctrlKey || e.metaKey))
6283
- return;
6284
- t.isOpened() || (n += 10),
6285
- t.htEditor && t.instance._registerTimeout(setTimeout(function() {
6286
- t.queryChoices(t.TEXTAREA.value),
6287
- H = !0
6288
- }, n))
6289
- }
6290
- }
6291
- Object.defineProperties(n, {
6292
- AutocompleteEditor: {
6293
- get: function() {
6294
- return D
6295
- }
6296
- },
6297
- __esModule: {
6298
- value: !0
6299
- }
6300
- });
6301
- var r, i, s, a, l, u, c, d = (r = e("helpers/unicode"),
6302
- r && r.__esModule && r || {
6303
- default: r
6304
- }), h = d.KEY_CODES, f = d.isPrintableChar, p = (i = e("helpers/mixed"),
6305
- i && i.__esModule && i || {
6306
- default: i
6307
- }).stringify, m = (s = e("helpers/string"),
6308
- s && s.__esModule && s || {
6309
- default: s
6310
- }).stripTags, g = (a = e("helpers/array"),
6311
- a && a.__esModule && a || {
6312
- default: a
6313
- }), w = g.pivot, v = (g.arrayFilter,
6314
- g.arrayMap), y = (l = e("helpers/dom/element"),
6315
- l && l.__esModule && l || {
6316
- default: l
6317
- }), b = y.addClass, C = y.getCaretPosition, _ = y.getScrollbarWidth, R = y.getSelectionEndPosition, M = y.outerWidth, S = y.outerHeight, E = y.offset, O = y.getTrimmingContainer, T = y.setCaretPosition, k = (u = e("editors"),
6318
- u && u.__esModule && u || {
6319
- default: u
6320
- }).registerEditor, x = (c = e("handsontableEditor"),
6321
- c && c.__esModule && c || {
6322
- default: c
6323
- }).HandsontableEditor, D = x.prototype.extend();
6324
- D.prototype.init = function() {
6325
- x.prototype.init.apply(this, arguments),
6326
- this.query = null,
6327
- this.choices = []
6328
- }
6329
- ,
6330
- D.prototype.createElements = function() {
6331
- x.prototype.createElements.apply(this, arguments),
6332
- b(this.htContainer, "autocompleteEditor"),
6333
- b(this.htContainer, window.navigator.platform.indexOf("Mac") === -1 ? "" : "htMacScroll")
6334
- }
6335
- ;
6336
- var H = !1;
6337
- D.prototype.prepare = function() {
6338
- this.instance.addHook("beforeKeyDown", o),
6339
- x.prototype.prepare.apply(this, arguments)
6340
- }
6341
- ,
6342
- D.prototype.open = function() {
6343
- this.TEXTAREA_PARENT.style.overflow = "auto",
6344
- x.prototype.open.apply(this, arguments),
6345
- this.TEXTAREA_PARENT.style.overflow = "";
6346
- var e = this.htEditor.getInstance()
6347
- , t = this
6348
- , n = void 0 === this.cellProperties.trimDropdown || this.cellProperties.trimDropdown;
6349
- this.TEXTAREA.style.visibility = "visible",
6350
- this.focus(),
6351
- e.updateSettings({
6352
- colWidths: n ? [M(this.TEXTAREA) - 2] : void 0,
6353
- width: n ? M(this.TEXTAREA) + _() + 2 : void 0,
6354
- afterRenderer: function(e, n, o, r, i, s) {
6355
- var a, l, u = t.cellProperties, c = u.filteringCaseSensitive, d = u.allowHtml;
6356
- i = p(i),
6357
- i && !d && (a = c === !0 ? i.indexOf(this.query) : i.toLowerCase().indexOf(t.query.toLowerCase()),
6358
- a !== -1 && (l = i.substr(a, t.query.length),
6359
- i = i.replace(l, "<strong>" + l + "</strong>"))),
6360
- e.innerHTML = i
6361
- },
6362
- autoColumnSize: !0,
6363
- modifyColWidth: function(e, t) {
6364
- var o = this.getPlugin("autoColumnSize").widths;
6365
- return o[t] && (e = o[t]),
6366
- n ? e : e + 15
6367
- }
6368
- }),
6369
- this.htEditor.view.wt.wtTable.holder.parentNode.style["padding-right"] = _() + 2 + "px",
6370
- H && (H = !1),
6371
- t.instance._registerTimeout(setTimeout(function() {
6372
- t.queryChoices(t.TEXTAREA.value)
6373
- }, 0))
6374
- }
6375
- ,
6376
- D.prototype.close = function() {
6377
- x.prototype.close.apply(this, arguments)
6378
- }
6379
- ,
6380
- D.prototype.queryChoices = function(e) {
6381
- var t = this;
6382
- this.query = e;
6383
- var n = this.cellProperties
6384
- , o = n.source
6385
- , r = (n.filter,
6386
- n.filteringCaseSensitive,
6387
- n.allowHtml)
6388
- , i = function(e) {
6389
- return v(e, function(e) {
6390
- return m(e)
6391
- })
6392
- };
6393
- "function" == typeof o ? o.call(this.cellProperties, e, function(e) {
6394
- t.updateChoicesList(r ? e : i(e))
6395
- }) : Array.isArray(o) ? this.updateChoicesList(r ? o : i(o)) : this.updateChoicesList([])
6396
- }
6397
- ,
6398
- D.prototype.updateChoicesList = function(e) {
6399
- var t = C(this.TEXTAREA)
6400
- , n = R(this.TEXTAREA)
6401
- , o = this.cellProperties.sortByRelevance
6402
- , r = this.cellProperties.filter
6403
- , i = null
6404
- , s = null;
6405
- o && (i = D.sortByRelevance(this.getValue(), e, this.cellProperties.filteringCaseSensitive));
6406
- var a = Array.isArray(i) ? i.length : 0;
6407
- if (r === !1)
6408
- a && (s = i[0]);
6409
- else {
6410
- for (var l = [], u = 0, c = e.length; u < c && !(o && a <= u); u++)
6411
- a ? l.push(e[i[u]]) : l.push(e[u]);
6412
- s = 0,
6413
- e = l
6414
- }
6415
- this.choices = e,
6416
- this.htEditor.loadData(w([e])),
6417
- this.updateDropdownHeight(),
6418
- this.flipDropdownIfNeeded(),
6419
- this.cellProperties.strict === !0 && this.highlightBestMatchingChoice(s),
6420
- this.instance.listen(),
6421
- this.TEXTAREA.focus(),
6422
- T(this.TEXTAREA, t, t === n ? void 0 : n)
6423
- }
6424
- ,
6425
- D.prototype.flipDropdownIfNeeded = function() {
6426
- var e = E(this.TEXTAREA)
6427
- , t = S(this.TEXTAREA)
6428
- , n = this.getDropdownHeight()
6429
- , o = O(this.instance.view.wt.wtTable.TABLE)
6430
- , r = o.scrollTop
6431
- , i = S(this.instance.view.wt.wtTable.THEAD)
6432
- , s = {
6433
- row: 0,
6434
- col: 0
6435
- };
6436
- o !== window && (s = E(o));
6437
- var a = e.top - s.top - i + r
6438
- , l = o.scrollHeight - a - i - t
6439
- , u = n > l && a > l;
6440
- return u ? this.flipDropdown(n) : this.unflipDropdown(),
6441
- this.limitDropdownIfNeeded(u ? a : l, n),
6442
- u
6443
- }
6444
- ,
6445
- D.prototype.limitDropdownIfNeeded = function(e, t) {
6446
- if (t > e) {
6447
- var n = 0
6448
- , o = 0
6449
- , r = 0
6450
- , i = null;
6451
- do
6452
- r = this.htEditor.getRowHeight(o) || this.htEditor.view.wt.wtSettings.settings.defaultRowHeight,
6453
- n += r,
6454
- o++;
6455
- while (n < e);i = n - r,
6456
- this.htEditor.flipped && (this.htEditor.rootElement.style.top = parseInt(this.htEditor.rootElement.style.top, 10) + t - i + "px"),
6457
- this.setDropdownHeight(n - r)
6458
- }
6459
- }
6460
- ,
6461
- D.prototype.flipDropdown = function(e) {
6462
- var t = this.htEditor.rootElement.style;
6463
- t.position = "absolute",
6464
- t.top = -e + "px",
6465
- this.htEditor.flipped = !0
6466
- }
6467
- ,
6468
- D.prototype.unflipDropdown = function() {
6469
- var e = this.htEditor.rootElement.style;
6470
- "absolute" === e.position && (e.position = "",
6471
- e.top = ""),
6472
- this.htEditor.flipped = void 0
6473
- }
6474
- ,
6475
- D.prototype.updateDropdownHeight = function() {
6476
- var e = this.htEditor.getColWidth(0) + _() + 2
6477
- , t = this.cellProperties.trimDropdown;
6478
- this.htEditor.updateSettings({
6479
- height: this.getDropdownHeight(),
6480
- width: t ? void 0 : e
6481
- }),
6482
- this.htEditor.view.wt.wtTable.alignOverlaysWithTrimmingContainer()
6483
- }
6484
- ,
6485
- D.prototype.setDropdownHeight = function(e) {
6486
- this.htEditor.updateSettings({
6487
- height: e
6488
- })
6489
- }
6490
- ,
6491
- D.prototype.finishEditing = function(e) {
6492
- e || this.instance.removeHook("beforeKeyDown", o),
6493
- x.prototype.finishEditing.apply(this, arguments)
6494
- }
6495
- ,
6496
- D.prototype.highlightBestMatchingChoice = function(e) {
6497
- "number" == typeof e ? this.htEditor.selectCell(e, 0) : this.htEditor.deselectCell()
6498
- }
6499
- ,
6500
- D.sortByRelevance = function(e, t, n) {
6501
- var o, r, i, s, a = [], l = e.length, u = [], c = t.length;
6502
- if (0 === l) {
6503
- for (s = 0; s < c; s++)
6504
- u.push(s);
6505
- return u
6506
- }
6507
- for (s = 0; s < c; s++)
6508
- o = m(p(t[s])),
6509
- r = n ? o.indexOf(e) : o.toLowerCase().indexOf(e.toLowerCase()),
6510
- r != -1 && (i = o.length - r - l,
6511
- a.push({
6512
- baseIndex: s,
6513
- index: r,
6514
- charsLeft: i,
6515
- value: o
6516
- }));
6517
- for (a.sort(function(e, t) {
6518
- return t.index === -1 ? -1 : e.index === -1 ? 1 : e.index < t.index ? -1 : t.index < e.index ? 1 : e.index === t.index ? e.charsLeft < t.charsLeft ? -1 : e.charsLeft > t.charsLeft ? 1 : 0 : void 0
6519
- }),
6520
- s = 0,
6521
- c = a.length; s < c; s++)
6522
- u.push(a[s].baseIndex);
6523
- return u
6524
- }
6525
- ,
6526
- D.prototype.getDropdownHeight = function() {
6527
- var e = this.htEditor.getInstance().getRowHeight(0) || 23
6528
- , t = this.cellProperties.visibleRows;
6529
- return this.choices.length >= t ? t * e : this.choices.length * e + 8
6530
- }
6531
- ,
6532
- D.prototype.allowKeyEventPropagation = function(e) {
6533
- var t = {
6534
- row: this.htEditor.getSelectedRange() ? this.htEditor.getSelectedRange().from.row : -1
6535
- }
6536
- , n = !1;
6537
- return e === h.ARROW_DOWN && t.row > 0 && t.row < this.htEditor.countRows() - 1 && (n = !0),
6538
- e === h.ARROW_UP && t.row > -1 && (n = !0),
6539
- n
6540
- }
6541
- ,
6542
- D.prototype.discardEditor = function(e) {
6543
- x.prototype.discardEditor.apply(this, arguments),
6544
- this.instance.view.render()
6545
- }
6546
- ,
6547
- k("autocomplete", D)
6548
- }
6549
- , {
6550
- editors: 30,
6551
- handsontableEditor: 36,
6552
- "helpers/array": 43,
6553
- "helpers/dom/element": 47,
6554
- "helpers/mixed": 51,
6555
- "helpers/string": 55,
6556
- "helpers/unicode": 56
6557
- }],
6558
- 33: [function(e, t, n) {
6559
- "use strict";
6560
- Object.defineProperties(n, {
6561
- CheckboxEditor: {
6562
- get: function() {
6563
- return u
6564
- }
6565
- },
6566
- __esModule: {
6567
- value: !0
6568
- }
6569
- });
6570
- var o, r, i, s = (o = e("editors"),
6571
- o && o.__esModule && o || {
6572
- default: o
6573
- }).registerEditor, a = (r = e("_baseEditor"),
6574
- r && r.__esModule && r || {
6575
- default: r
6576
- }).BaseEditor, l = (i = e("helpers/dom/element"),
6577
- i && i.__esModule && i || {
6578
- default: i
6579
- }).hasClass, u = function() {
6580
- $traceurRuntime.superConstructor(c).apply(this, arguments)
6581
- }, c = u;
6582
- $traceurRuntime.createClass(u, {
6583
- beginEditing: function(e, t) {
6584
- if (void 0 === t) {
6585
- var n = this.TD.querySelector('input[type="checkbox"]');
6586
- l(n, "htBadValue") || n.click()
6587
- }
6588
- },
6589
- finishEditing: function() {},
6590
- init: function() {},
6591
- open: function() {},
6592
- close: function() {},
6593
- getValue: function() {},
6594
- setValue: function() {},
6595
- focus: function() {}
6596
- }, {}, a),
6597
- s("checkbox", u)
6598
- }
6599
- , {
6600
- _baseEditor: 31,
6601
- editors: 30,
6602
- "helpers/dom/element": 47
6603
- }],
6604
- 34: [function(e, t, n) {
6605
- "use strict";
6606
- Object.defineProperties(n, {
6607
- DateEditor: {
6608
- get: function() {
6609
- return E
6610
- }
6611
- },
6612
- __esModule: {
6613
- value: !0
6614
- }
6615
- });
6616
- var o, r, i, s, a, l, u, c, d, h, f = (o = e("browser"),
6617
- o && o.__esModule && o || {
6618
- default: o
6619
- }).default, p = (r = e("helpers/dom/element"),
6620
- r && r.__esModule && r || {
6621
- default: r
6622
- }), m = p.addClass, g = p.outerHeight, w = (i = e("helpers/object"),
6623
- i && i.__esModule && i || {
6624
- default: i
6625
- }).deepExtend, v = (s = e("eventManager"),
6626
- s && s.__esModule && s || {
6627
- default: s
6628
- }).EventManager, y = (a = e("editors"),
6629
- a && a.__esModule && a || {
6630
- default: a
6631
- }), b = (y.getEditor,
6632
- y.registerEditor), C = (l = e("helpers/unicode"),
6633
- l && l.__esModule && l || {
6634
- default: l
6635
- }).isMetaKey, _ = (u = e("helpers/dom/event"),
6636
- u && u.__esModule && u || {
6637
- default: u
6638
- }).stopPropagation, R = (c = e("textEditor"),
6639
- c && c.__esModule && c || {
6640
- default: c
6641
- }).TextEditor, M = (d = e("moment"),
6642
- d && d.__esModule && d || {
6643
- default: d
6644
- }).default, S = (h = e("pikaday"),
6645
- h && h.__esModule && h || {
6646
- default: h
6647
- }).default, E = function(e) {
6648
- this.$datePicker = null,
6649
- this.datePicker = null,
6650
- this.datePickerStyle = null,
6651
- this.defaultDateFormat = "DD/MM/YYYY",
6652
- this.isCellEdited = !1,
6653
- this.parentDestroyed = !1,
6654
- $traceurRuntime.superConstructor(O).call(this, e)
6655
- }, O = E;
6656
- $traceurRuntime.createClass(E, {
6657
- init: function() {
6658
- var e = this;
6659
- if ("function" != typeof M)
6660
- throw new Error("You need to include moment.js to your project.");
6661
- if ("function" != typeof S)
6662
- throw new Error("You need to include Pikaday to your project.");
6663
- $traceurRuntime.superGet(this, O.prototype, "init").call(this),
6664
- this.instance.addHook("afterDestroy", function() {
6665
- e.parentDestroyed = !0,
6666
- e.destroyElements()
6667
- })
6668
- },
6669
- createElements: function() {
6670
- $traceurRuntime.superGet(this, O.prototype, "createElements").call(this),
6671
- this.datePicker = document.createElement("DIV"),
6672
- this.datePickerStyle = this.datePicker.style,
6673
- this.datePickerStyle.position = "absolute",
6674
- this.datePickerStyle.top = 0,
6675
- this.datePickerStyle.left = 0,
6676
- this.datePickerStyle.zIndex = 9999,
6677
- m(this.datePicker, "htDatepickerHolder"),
6678
- document.body.appendChild(this.datePicker),
6679
- this.$datePicker = new S(this.getDatePickerConfig());
6680
- var e = new v(this);
6681
- e.addEventListener(this.datePicker, "mousedown", function(e) {
6682
- return _(e)
6683
- }),
6684
- this.hideDatepicker()
6685
- },
6686
- destroyElements: function() {
6687
- this.$datePicker.destroy()
6688
- },
6689
- prepare: function(e, t, n, o, r, i) {
6690
- this._opened = !1,
6691
- $traceurRuntime.superGet(this, O.prototype, "prepare").call(this, e, t, n, o, r, i)
6692
- },
6693
- open: function() {
6694
- var e = void 0 !== arguments[0] ? arguments[0] : null;
6695
- $traceurRuntime.superGet(this, O.prototype, "open").call(this),
6696
- this.showDatepicker(e)
6697
- },
6698
- close: function() {
6699
- var e = this;
6700
- this._opened = !1,
6701
- this.instance._registerTimeout(setTimeout(function() {
6702
- e.instance.selection.refreshBorders()
6703
- }, 0)),
6704
- $traceurRuntime.superGet(this, O.prototype, "close").call(this)
6705
- },
6706
- finishEditing: function() {
6707
- var e = void 0 !== arguments[0] && arguments[0]
6708
- , t = void 0 !== arguments[1] && arguments[1];
6709
- if (e) {
6710
- var n = this.originalValue;
6711
- void 0 !== n && this.setValue(n)
6712
- }
6713
- this.hideDatepicker(),
6714
- $traceurRuntime.superGet(this, O.prototype, "finishEditing").call(this, e, t)
6715
- },
6716
- showDatepicker: function(e) {
6717
- this.$datePicker.config(this.getDatePickerConfig());
6718
- var t, n = this.TD.getBoundingClientRect(), o = this.cellProperties.dateFormat || this.defaultDateFormat, r = this.$datePicker.config(), i = this.instance.view.isMouseDown(), s = !!e && C(e.keyCode);
6719
- this.datePickerStyle.top = window.pageYOffset + n.top + g(this.TD) + "px",
6720
- this.datePickerStyle.left = window.pageXOffset + n.left + "px",
6721
- this.$datePicker._onInputFocus = function() {}
6722
- ,
6723
- r.format = o,
6724
- this.originalValue ? (t = this.originalValue,
6725
- M(t, o, !0).isValid() && this.$datePicker.setMoment(M(t, o), !0),
6726
- this.getValue() !== this.originalValue && this.setValue(this.originalValue),
6727
- s || i || this.setValue("")) : this.cellProperties.defaultDate ? (t = this.cellProperties.defaultDate,
6728
- r.defaultDate = t,
6729
- M(t, o, !0).isValid() && this.$datePicker.setMoment(M(t, o), !0),
6730
- s || i || this.setValue("")) : this.$datePicker.gotoToday(),
6731
- this.datePickerStyle.display = "block",
6732
- this.$datePicker.show()
6733
- },
6734
- hideDatepicker: function() {
6735
- this.datePickerStyle.display = "none",
6736
- this.$datePicker.hide()
6737
- },
6738
- getDatePickerConfig: function() {
6739
- var e = this
6740
- , t = this.TEXTAREA
6741
- , n = {};
6742
- this.cellProperties && this.cellProperties.datePickerConfig && w(n, this.cellProperties.datePickerConfig);
6743
- var o = n.onSelect
6744
- , r = n.onClose;
6745
- return n.field = t,
6746
- n.trigger = t,
6747
- n.container = this.datePicker,
6748
- n.bound = !1,
6749
- n.format = n.format || this.defaultDateFormat,
6750
- n.reposition = n.reposition || !1,
6751
- n.onSelect = function(t) {
6752
- isNaN(t.getTime()) || (t = M(t).format(e.cellProperties.dateFormat || e.defaultDateFormat)),
6753
- e.setValue(t),
6754
- e.hideDatepicker(),
6755
- o && o()
6756
- }
6757
- ,
6758
- n.onClose = function() {
6759
- e.parentDestroyed || e.finishEditing(!1),
6760
- r && r()
6761
- }
6762
- ,
6763
- n
6764
- }
6765
- }, {}, R),
6766
- f.editors = f.editors || {},
6767
- f.editors.DateEditor = E,
6768
- b("date", E)
6769
- }
6770
- , {
6771
- browser: 24,
6772
- editors: 30,
6773
- eventManager: 42,
6774
- "helpers/dom/element": 47,
6775
- "helpers/dom/event": 48,
6776
- "helpers/object": 53,
6777
- "helpers/unicode": 56,
6778
- moment: "moment",
6779
- pikaday: "pikaday",
6780
- textEditor: 41
6781
- }],
6782
- 35: [function(e, t, n) {
6783
- "use strict";
6784
- Object.defineProperties(n, {
6785
- DropdownEditor: {
6786
- get: function() {
6787
- return c
6788
- }
6789
- },
6790
- __esModule: {
6791
- value: !0
6792
- }
6793
- });
6794
- var o, r, i, s = (o = e("browser"),
6795
- o && o.__esModule && o || {
6796
- default: o
6797
- }).default, a = (r = e("editors"),
6798
- r && r.__esModule && r || {
6799
- default: r
6800
- }), l = (a.getEditor,
6801
- a.registerEditor), u = (a.getEditorConstructor,
6802
- (i = e("autocompleteEditor"),
6803
- i && i.__esModule && i || {
6804
- default: i
6805
- }).AutocompleteEditor), c = function() {
6806
- $traceurRuntime.superConstructor(d).apply(this, arguments)
6807
- }, d = c;
6808
- $traceurRuntime.createClass(c, {
6809
- prepare: function(e, t, n, o, r, i) {
6810
- $traceurRuntime.superGet(this, d.prototype, "prepare").call(this, e, t, n, o, r, i),
6811
- this.cellProperties.filter = !1,
6812
- this.cellProperties.strict = !0
6813
- }
6814
- }, {}, u),
6815
- s.hooks.add("beforeValidate", function(e, t, n, o) {
6816
- var r = this.getCellMeta(t, this.propToCol(n));
6817
- r.editor === s.editors.DropdownEditor && void 0 === r.strict && (r.filter = !1,
6818
- r.strict = !0)
6819
- }),
6820
- l("dropdown", c)
6821
- }
6822
- , {
6823
- autocompleteEditor: 32,
6824
- browser: 24,
6825
- editors: 30
6826
- }],
6827
- 36: [function(e, t, n) {
6828
- "use strict";
6829
- Object.defineProperties(n, {
6830
- HandsontableEditor: {
6831
- get: function() {
6832
- return b
6833
- }
6834
- },
6835
- __esModule: {
6836
- value: !0
6837
- }
6838
- });
6839
- var o, r, i, s, a, l, u, c = (o = e("browser"),
6840
- o && o.__esModule && o || {
6841
- default: o
6842
- }).default, d = (r = e("helpers/unicode"),
6843
- r && r.__esModule && r || {
6844
- default: r
6845
- }).KEY_CODES, h = (i = e("helpers/object"),
6846
- i && i.__esModule && i || {
6847
- default: i
6848
- }).extend, f = (s = e("helpers/dom/element"),
6849
- s && s.__esModule && s || {
6850
- default: s
6851
- }).setCaretPosition, p = (a = e("helpers/dom/event"),
6852
- a && a.__esModule && a || {
6853
- default: a
6854
- }), m = p.stopImmediatePropagation, g = p.isImmediatePropagationStopped, w = (l = e("editors"),
6855
- l && l.__esModule && l || {
6856
- default: l
6857
- }), v = (w.getEditor,
6858
- w.registerEditor), y = (u = e("textEditor"),
6859
- u && u.__esModule && u || {
6860
- default: u
6861
- }).TextEditor, b = y.prototype.extend();
6862
- b.prototype.createElements = function() {
6863
- y.prototype.createElements.apply(this, arguments);
6864
- var e = document.createElement("DIV");
6865
- e.className = "handsontableEditor",
6866
- this.TEXTAREA_PARENT.appendChild(e),
6867
- this.htContainer = e,
6868
- this.assignHooks()
6869
- }
6870
- ,
6871
- b.prototype.prepare = function(e, t, n, o, r, i) {
6872
- y.prototype.prepare.apply(this, arguments);
6873
- var s = this
6874
- , a = {
6875
- startRows: 0,
6876
- startCols: 0,
6877
- minRows: 0,
6878
- minCols: 0,
6879
- className: "listbox",
6880
- copyPaste: !1,
6881
- autoColumnSize: !1,
6882
- autoRowSize: !1,
6883
- readOnly: !0,
6884
- fillHandle: !1,
6885
- afterOnCellMouseDown: function() {
6886
- var e = this.getValue();
6887
- void 0 !== e && s.setValue(e),
6888
- s.instance.destroyEditor()
6889
- }
6890
- };
6891
- this.cellProperties.handsontable && h(a, i.handsontable),
6892
- this.htOptions = a
6893
- }
6894
- ;
6895
- var C = function(e) {
6896
- if (!g(e)) {
6897
- var t, n = this.getActiveEditor(), o = n.htEditor.getInstance();
6898
- if (e.keyCode == d.ARROW_DOWN)
6899
- if (o.getSelected() || o.flipped) {
6900
- if (o.getSelected())
6901
- if (o.flipped)
6902
- t = o.getSelected()[0] + 1;
6903
- else if (!o.flipped) {
6904
- var r = o.getSelected()[0]
6905
- , i = o.countRows() - 1;
6906
- t = Math.min(i, r + 1)
6907
- }
6908
- } else
6909
- t = 0;
6910
- else if (e.keyCode == d.ARROW_UP)
6911
- if (!o.getSelected() && o.flipped)
6912
- t = o.countRows() - 1;
6913
- else if (o.getSelected())
6914
- if (o.flipped) {
6915
- var r = o.getSelected()[0];
6916
- t = Math.max(0, r - 1)
6917
- } else {
6918
- var r = o.getSelected()[0];
6919
- t = r - 1
6920
- }
6921
- void 0 !== t && (t < 0 || o.flipped && t > o.countRows() - 1 ? o.deselectCell() : o.selectCell(t, 0),
6922
- o.getData().length && (e.preventDefault(),
6923
- m(e),
6924
- n.instance.listen(),
6925
- n.TEXTAREA.focus()))
6926
- }
6927
- };
6928
- b.prototype.open = function() {
6929
- this.instance.addHook("beforeKeyDown", C),
6930
- y.prototype.open.apply(this, arguments),
6931
- this.htEditor && this.htEditor.destroy(),
6932
- this.htEditor = new c(this.htContainer,this.htOptions),
6933
- this.cellProperties.strict ? (this.htEditor.selectCell(0, 0),
6934
- this.TEXTAREA.style.visibility = "hidden") : (this.htEditor.deselectCell(),
6935
- this.TEXTAREA.style.visibility = "visible"),
6936
- f(this.TEXTAREA, 0, this.TEXTAREA.value.length)
6937
- }
6938
- ,
6939
- b.prototype.close = function() {
6940
- this.instance.removeHook("beforeKeyDown", C),
6941
- this.instance.listen(),
6942
- y.prototype.close.apply(this, arguments)
6943
- }
6944
- ,
6945
- b.prototype.focus = function() {
6946
- this.instance.listen(),
6947
- y.prototype.focus.apply(this, arguments)
6948
- }
6949
- ,
6950
- b.prototype.beginEditing = function(e) {
6951
- var t = this.instance.getSettings().onBeginEditing;
6952
- t && t() === !1 || y.prototype.beginEditing.apply(this, arguments)
6953
- }
6954
- ,
6955
- b.prototype.finishEditing = function(e, t) {
6956
- if (this.htEditor && this.htEditor.isListening() && this.instance.listen(),
6957
- this.htEditor && this.htEditor.getSelected()) {
6958
- var n = this.htEditor.getInstance().getValue();
6959
- void 0 !== n && this.setValue(n)
6960
- }
6961
- return y.prototype.finishEditing.apply(this, arguments)
6962
- }
6963
- ,
6964
- b.prototype.assignHooks = function() {
6965
- var e = this;
6966
- this.instance.addHook("afterDestroy", function() {
6967
- e.htEditor && e.htEditor.destroy()
6968
- })
6969
- }
6970
- ,
6971
- v("handsontable", b)
6972
- }
6973
- , {
6974
- browser: 24,
6975
- editors: 30,
6976
- "helpers/dom/element": 47,
6977
- "helpers/dom/event": 48,
6978
- "helpers/object": 53,
6979
- "helpers/unicode": 56,
6980
- textEditor: 41
6981
- }],
6982
- 37: [function(e, t, n) {
6983
- "use strict";
6984
- Object.defineProperties(n, {
6985
- MobileTextEditor: {
6986
- get: function() {
6987
- return k
6988
- }
6989
- },
6990
- __esModule: {
6991
- value: !0
6992
- }
6993
- });
6994
- var o, r, i, s, a, l, u, c = ((o = e("browser"),
6995
- o && o.__esModule && o || {
6996
- default: o
6997
- }).default,
6998
- (r = e("helpers/unicode"),
6999
- r && r.__esModule && r || {
7000
- default: r
7001
- }).KEY_CODES), d = (i = e("helpers/dom/event"),
7002
- i && i.__esModule && i || {
7003
- default: i
7004
- }), h = d.stopImmediatePropagation, f = d.isImmediatePropagationStopped, p = (s = e("helpers/dom/element"),
7005
- s && s.__esModule && s || {
7006
- default: s
7007
- }), m = p.addClass, g = p.getScrollLeft, w = p.getScrollTop, v = p.hasClass, y = p.isChildOf, b = p.offset, C = p.outerHeight, _ = p.outerWidth, R = p.removeClass, M = p.setCaretPosition, S = (a = e("editors"),
7008
- a && a.__esModule && a || {
7009
- default: a
7010
- }), E = (S.getEditor,
7011
- S.registerEditor), O = (l = e("_baseEditor"),
7012
- l && l.__esModule && l || {
7013
- default: l
7014
- }).BaseEditor, T = (u = e("eventManager"),
7015
- u && u.__esModule && u || {
7016
- default: u
7017
- }).eventManager, k = O.prototype.extend(), x = {}, D = function() {
7018
- this.controls = {},
7019
- this.controls.leftButton = document.createElement("DIV"),
7020
- this.controls.leftButton.className = "leftButton",
7021
- this.controls.rightButton = document.createElement("DIV"),
7022
- this.controls.rightButton.className = "rightButton",
7023
- this.controls.upButton = document.createElement("DIV"),
7024
- this.controls.upButton.className = "upButton",
7025
- this.controls.downButton = document.createElement("DIV"),
7026
- this.controls.downButton.className = "downButton";
7027
- for (var e in this.controls)
7028
- this.controls.hasOwnProperty(e) && this.positionControls.appendChild(this.controls[e])
7029
- };
7030
- k.prototype.valueChanged = function() {
7031
- return this.initValue != this.getValue()
7032
- }
7033
- ,
7034
- k.prototype.init = function() {
7035
- var e = this;
7036
- this.eventManager = T(this.instance),
7037
- this.createElements(),
7038
- this.bindEvents(),
7039
- this.instance.addHook("afterDestroy", function() {
7040
- e.destroy()
7041
- })
7042
- }
7043
- ,
7044
- k.prototype.getValue = function() {
7045
- return this.TEXTAREA.value
7046
- }
7047
- ,
7048
- k.prototype.setValue = function(e) {
7049
- this.initValue = e,
7050
- this.TEXTAREA.value = e
7051
- }
7052
- ,
7053
- k.prototype.createElements = function() {
7054
- this.editorContainer = document.createElement("DIV"),
7055
- this.editorContainer.className = "htMobileEditorContainer",
7056
- this.cellPointer = document.createElement("DIV"),
7057
- this.cellPointer.className = "cellPointer",
7058
- this.moveHandle = document.createElement("DIV"),
7059
- this.moveHandle.className = "moveHandle",
7060
- this.inputPane = document.createElement("DIV"),
7061
- this.inputPane.className = "inputs",
7062
- this.positionControls = document.createElement("DIV"),
7063
- this.positionControls.className = "positionControls",
7064
- this.TEXTAREA = document.createElement("TEXTAREA"),
7065
- m(this.TEXTAREA, "handsontableInput"),
7066
- this.inputPane.appendChild(this.TEXTAREA),
7067
- this.editorContainer.appendChild(this.cellPointer),
7068
- this.editorContainer.appendChild(this.moveHandle),
7069
- this.editorContainer.appendChild(this.inputPane),
7070
- this.editorContainer.appendChild(this.positionControls),
7071
- D.call(this),
7072
- document.body.appendChild(this.editorContainer)
7073
- }
7074
- ,
7075
- k.prototype.onBeforeKeyDown = function(e) {
7076
- var t = this
7077
- , n = t.getActiveEditor();
7078
- if (e.target === n.TEXTAREA && !f(e))
7079
- switch (e.keyCode) {
7080
- case c.ENTER:
7081
- n.close(),
7082
- e.preventDefault();
7083
- break;
7084
- case c.BACKSPACE:
7085
- h(e)
7086
- }
7087
- }
7088
- ,
7089
- k.prototype.open = function() {
7090
- this.instance.addHook("beforeKeyDown", this.onBeforeKeyDown),
7091
- m(this.editorContainer, "active"),
7092
- R(this.cellPointer, "hidden"),
7093
- this.updateEditorPosition()
7094
- }
7095
- ,
7096
- k.prototype.focus = function() {
7097
- this.TEXTAREA.focus(),
7098
- M(this.TEXTAREA, this.TEXTAREA.value.length)
7099
- }
7100
- ,
7101
- k.prototype.close = function() {
7102
- this.TEXTAREA.blur(),
7103
- this.instance.removeHook("beforeKeyDown", this.onBeforeKeyDown),
7104
- R(this.editorContainer, "active")
7105
- }
7106
- ,
7107
- k.prototype.scrollToView = function() {
7108
- var e = this.instance.getSelectedRange().highlight;
7109
- this.instance.view.scrollViewport(e)
7110
- }
7111
- ,
7112
- k.prototype.hideCellPointer = function() {
7113
- v(this.cellPointer, "hidden") || m(this.cellPointer, "hidden")
7114
- }
7115
- ,
7116
- k.prototype.updateEditorPosition = function(e, t) {
7117
- if (e && t)
7118
- e = parseInt(e, 10),
7119
- t = parseInt(t, 10),
7120
- this.editorContainer.style.top = t + "px",
7121
- this.editorContainer.style.left = e + "px";
7122
- else {
7123
- var n = this.instance.getSelected()
7124
- , o = this.instance.getCell(n[0], n[1]);
7125
- if (x.cellPointer || (x.cellPointer = {
7126
- height: C(this.cellPointer),
7127
- width: _(this.cellPointer)
7128
- }),
7129
- x.editorContainer || (x.editorContainer = {
7130
- width: _(this.editorContainer)
7131
- }),
7132
- void 0 !== o) {
7133
- var r = this.instance.view.wt.wtOverlays.leftOverlay.trimmingContainer == window ? 0 : g(this.instance.view.wt.wtOverlays.leftOverlay.holder)
7134
- , i = this.instance.view.wt.wtOverlays.topOverlay.trimmingContainer == window ? 0 : w(this.instance.view.wt.wtOverlays.topOverlay.holder)
7135
- , s = b(o)
7136
- , a = _(o)
7137
- , l = {
7138
- x: r,
7139
- y: i
7140
- };
7141
- this.editorContainer.style.top = parseInt(s.top + C(o) - l.y + x.cellPointer.height, 10) + "px",
7142
- this.editorContainer.style.left = parseInt(window.innerWidth / 2 - x.editorContainer.width / 2, 10) + "px",
7143
- s.left + a / 2 > parseInt(this.editorContainer.style.left, 10) + x.editorContainer.width ? this.editorContainer.style.left = window.innerWidth - x.editorContainer.width + "px" : s.left + a / 2 < parseInt(this.editorContainer.style.left, 10) + 20 && (this.editorContainer.style.left = "0px"),
7144
- this.cellPointer.style.left = parseInt(s.left - x.cellPointer.width / 2 - b(this.editorContainer).left + a / 2 - l.x, 10) + "px"
7145
- }
7146
- }
7147
- }
7148
- ,
7149
- k.prototype.updateEditorData = function() {
7150
- var e = this.instance.getSelected()
7151
- , t = this.instance.getDataAtCell(e[0], e[1]);
7152
- this.row = e[0],
7153
- this.col = e[1],
7154
- this.setValue(t),
7155
- this.updateEditorPosition()
7156
- }
7157
- ,
7158
- k.prototype.prepareAndSave = function() {
7159
- var e;
7160
- return !this.valueChanged() || (e = this.instance.getSettings().trimWhitespace ? [[String.prototype.trim.call(this.getValue())]] : [[this.getValue()]],
7161
- void this.saveValue(e))
7162
- }
7163
- ,
7164
- k.prototype.bindEvents = function() {
7165
- var e = this;
7166
- this.eventManager.addEventListener(this.controls.leftButton, "touchend", function(t) {
7167
- e.prepareAndSave(),
7168
- e.instance.selection.transformStart(0, -1, null, !0),
7169
- e.updateEditorData(),
7170
- t.preventDefault()
7171
- }),
7172
- this.eventManager.addEventListener(this.controls.rightButton, "touchend", function(t) {
7173
- e.prepareAndSave(),
7174
- e.instance.selection.transformStart(0, 1, null, !0),
7175
- e.updateEditorData(),
7176
- t.preventDefault()
7177
- }),
7178
- this.eventManager.addEventListener(this.controls.upButton, "touchend", function(t) {
7179
- e.prepareAndSave(),
7180
- e.instance.selection.transformStart(-1, 0, null, !0),
7181
- e.updateEditorData(),
7182
- t.preventDefault()
7183
- }),
7184
- this.eventManager.addEventListener(this.controls.downButton, "touchend", function(t) {
7185
- e.prepareAndSave(),
7186
- e.instance.selection.transformStart(1, 0, null, !0),
7187
- e.updateEditorData(),
7188
- t.preventDefault()
7189
- }),
7190
- this.eventManager.addEventListener(this.moveHandle, "touchstart", function(t) {
7191
- if (1 == t.touches.length) {
7192
- var n = t.touches[0]
7193
- , o = {
7194
- x: e.editorContainer.offsetLeft,
7195
- y: e.editorContainer.offsetTop
7196
- }
7197
- , r = {
7198
- x: n.pageX - o.x,
7199
- y: n.pageY - o.y
7200
- };
7201
- e.eventManager.addEventListener(this, "touchmove", function(t) {
7202
- var n = t.touches[0];
7203
- e.updateEditorPosition(n.pageX - r.x, n.pageY - r.y),
7204
- e.hideCellPointer(),
7205
- t.preventDefault()
7206
- })
7207
- }
7208
- }),
7209
- this.eventManager.addEventListener(document.body, "touchend", function(t) {
7210
- y(t.target, e.editorContainer) || y(t.target, e.instance.rootElement) || e.close()
7211
- }),
7212
- this.eventManager.addEventListener(this.instance.view.wt.wtOverlays.leftOverlay.holder, "scroll", function(t) {
7213
- e.instance.view.wt.wtOverlays.leftOverlay.trimmingContainer != window && e.hideCellPointer()
7214
- }),
7215
- this.eventManager.addEventListener(this.instance.view.wt.wtOverlays.topOverlay.holder, "scroll", function(t) {
7216
- e.instance.view.wt.wtOverlays.topOverlay.trimmingContainer != window && e.hideCellPointer()
7217
- })
7218
- }
7219
- ,
7220
- k.prototype.destroy = function() {
7221
- this.eventManager.clear(),
7222
- this.editorContainer.parentNode.removeChild(this.editorContainer)
7223
- }
7224
- ,
7225
- E("mobile", k)
7226
- }
7227
- , {
7228
- _baseEditor: 31,
7229
- browser: 24,
7230
- editors: 30,
7231
- eventManager: 42,
7232
- "helpers/dom/element": 47,
7233
- "helpers/dom/event": 48,
7234
- "helpers/unicode": 56
7235
- }],
7236
- 38: [function(e, t, n) {
7237
- "use strict";
7238
- Object.defineProperties(n, {
7239
- NumericEditor: {
7240
- get: function() {
7241
- return u
7242
- }
7243
- },
7244
- __esModule: {
7245
- value: !0
7246
- }
7247
- });
7248
- var o, r, i, s = (o = e("numbro"),
7249
- o && o.__esModule && o || {
7250
- default: o
7251
- }).default, a = (r = e("editors"),
7252
- r && r.__esModule && r || {
7253
- default: r
7254
- }).registerEditor, l = (i = e("textEditor"),
7255
- i && i.__esModule && i || {
7256
- default: i
7257
- }).TextEditor, u = function() {
7258
- $traceurRuntime.superConstructor(c).apply(this, arguments)
7259
- }, c = u;
7260
- $traceurRuntime.createClass(u, {
7261
- beginEditing: function(e) {
7262
- if ("undefined" == typeof e && this.originalValue) {
7263
- "undefined" != typeof this.cellProperties.language && s.culture(this.cellProperties.language);
7264
- var t = s.cultureData().delimiters.decimal;
7265
- e = ("" + this.originalValue).replace(".", t)
7266
- }
7267
- $traceurRuntime.superGet(this, c.prototype, "beginEditing").call(this, e)
7268
- }
7269
- }, {}, l),
7270
- a("numeric", u)
7271
- }
7272
- , {
7273
- editors: 30,
7274
- numbro: "numbro",
7275
- textEditor: 41
7276
- }],
7277
- 39: [function(e, t, n) {
7278
- "use strict";
7279
- Object.defineProperties(n, {
7280
- PasswordEditor: {
7281
- get: function() {
7282
- return d
7283
- }
7284
- },
7285
- __esModule: {
7286
- value: !0
7287
- }
7288
- });
7289
- var o, r, i, s, a = ((o = e("browser"),
7290
- o && o.__esModule && o || {
7291
- default: o
7292
- }).default,
7293
- (r = e("helpers/dom/element"),
7294
- r && r.__esModule && r || {
7295
- default: r
7296
- }).empty), l = (i = e("editors"),
7297
- i && i.__esModule && i || {
7298
- default: i
7299
- }), u = (l.getEditor,
7300
- l.registerEditor), c = (s = e("textEditor"),
7301
- s && s.__esModule && s || {
7302
- default: s
7303
- }).TextEditor, d = function() {
7304
- $traceurRuntime.superConstructor(h).apply(this, arguments)
7305
- }, h = d;
7306
- $traceurRuntime.createClass(d, {
7307
- createElements: function() {
7308
- $traceurRuntime.superGet(this, h.prototype, "createElements").call(this),
7309
- this.TEXTAREA = document.createElement("input"),
7310
- this.TEXTAREA.setAttribute("type", "password"),
7311
- this.TEXTAREA.className = "handsontableInput",
7312
- this.textareaStyle = this.TEXTAREA.style,
7313
- this.textareaStyle.width = 0,
7314
- this.textareaStyle.height = 0,
7315
- a(this.TEXTAREA_PARENT),
7316
- this.TEXTAREA_PARENT.appendChild(this.TEXTAREA)
7317
- }
7318
- }, {}, c),
7319
- u("password", d)
7320
- }
7321
- , {
7322
- browser: 24,
7323
- editors: 30,
7324
- "helpers/dom/element": 47,
7325
- textEditor: 41
7326
- }],
7327
- 40: [function(e, t, n) {
7328
- "use strict";
7329
- Object.defineProperties(n, {
7330
- SelectEditor: {
7331
- get: function() {
7332
- return E
7333
- }
7334
- },
7335
- __esModule: {
7336
- value: !0
7337
- }
7338
- });
7339
- var o, r, i, s, a, l, u = (o = e("browser"),
7340
- o && o.__esModule && o || {
7341
- default: o
7342
- }).default, c = (r = e("helpers/dom/element"),
7343
- r && r.__esModule && r || {
7344
- default: r
7345
- }), d = c.addClass, h = c.empty, f = c.fastInnerHTML, p = c.getComputedStyle, m = c.getCssTransform, g = c.getScrollableElement, w = c.offset, v = c.outerHeight, y = c.outerWidth, b = c.resetCssTransform, C = (i = e("helpers/dom/event"),
7346
- i && i.__esModule && i || {
7347
- default: i
7348
- }).stopImmediatePropagation, _ = (s = e("helpers/unicode"),
7349
- s && s.__esModule && s || {
7350
- default: s
7351
- }).KEY_CODES, R = (a = e("editors"),
7352
- a && a.__esModule && a || {
7353
- default: a
7354
- }), M = (R.getEditor,
7355
- R.registerEditor), S = (l = e("_baseEditor"),
7356
- l && l.__esModule && l || {
7357
- default: l
7358
- }).BaseEditor, E = S.prototype.extend();
7359
- E.prototype.init = function() {
7360
- this.select = document.createElement("SELECT"),
7361
- d(this.select, "htSelectEditor"),
7362
- this.select.style.display = "none",
7363
- this.instance.rootElement.appendChild(this.select),
7364
- this.registerHooks()
7365
- }
7366
- ,
7367
- E.prototype.registerHooks = function() {
7368
- var e = this;
7369
- this.instance.addHook("afterScrollHorizontally", function() {
7370
- return e.refreshDimensions()
7371
- }),
7372
- this.instance.addHook("afterScrollVertically", function() {
7373
- return e.refreshDimensions()
7374
- }),
7375
- this.instance.addHook("afterColumnResize", function() {
7376
- return e.refreshDimensions()
7377
- }),
7378
- this.instance.addHook("afterRowResize", function() {
7379
- return e.refreshDimensions()
7380
- })
7381
- }
7382
- ,
7383
- E.prototype.prepare = function() {
7384
- S.prototype.prepare.apply(this, arguments);
7385
- var e, t = this.cellProperties.selectOptions;
7386
- e = "function" == typeof t ? this.prepareOptions(t(this.row, this.col, this.prop)) : this.prepareOptions(t),
7387
- h(this.select);
7388
- for (var n in e)
7389
- if (e.hasOwnProperty(n)) {
7390
- var o = document.createElement("OPTION");
7391
- o.value = n,
7392
- f(o, e[n]),
7393
- this.select.appendChild(o)
7394
- }
7395
- }
7396
- ,
7397
- E.prototype.prepareOptions = function(e) {
7398
- var t = {};
7399
- if (Array.isArray(e))
7400
- for (var n = 0, o = e.length; n < o; n++)
7401
- t[e[n]] = e[n];
7402
- else
7403
- "object" == typeof e && (t = e);
7404
- return t
7405
- }
7406
- ,
7407
- E.prototype.getValue = function() {
7408
- return this.select.value
7409
- }
7410
- ,
7411
- E.prototype.setValue = function(e) {
7412
- this.select.value = e
7413
- }
7414
- ;
7415
- var O = function(e) {
7416
- var t = this
7417
- , n = t.getActiveEditor();
7418
- switch (e.keyCode) {
7419
- case _.ARROW_UP:
7420
- var o = n.select.selectedIndex - 1;
7421
- o >= 0 && (n.select[o].selected = !0),
7422
- C(e),
7423
- e.preventDefault();
7424
- break;
7425
- case _.ARROW_DOWN:
7426
- var r = n.select.selectedIndex + 1;
7427
- r <= n.select.length - 1 && (n.select[r].selected = !0),
7428
- C(e),
7429
- e.preventDefault()
7430
- }
7431
- };
7432
- E.prototype.open = function() {
7433
- this._opened = !0,
7434
- this.refreshDimensions(),
7435
- this.select.style.display = "",
7436
- this.instance.addHook("beforeKeyDown", O)
7437
- }
7438
- ,
7439
- E.prototype.close = function() {
7440
- this._opened = !1,
7441
- this.select.style.display = "none",
7442
- this.instance.removeHook("beforeKeyDown", O)
7443
- }
7444
- ,
7445
- E.prototype.focus = function() {
7446
- this.select.focus()
7447
- }
7448
- ,
7449
- E.prototype.refreshValue = function() {
7450
- var e = this.instance.getSourceDataAtCell(this.row, this.prop);
7451
- this.originalValue = e,
7452
- this.setValue(e),
7453
- this.refreshDimensions()
7454
- }
7455
- ,
7456
- E.prototype.refreshDimensions = function() {
7457
- if (this.state === u.EditorState.EDITING) {
7458
- if (this.TD = this.getEditedCell(),
7459
- !this.TD)
7460
- return void this.close();
7461
- var e, t = y(this.TD) + 1, n = v(this.TD) + 1, o = w(this.TD), r = w(this.instance.rootElement), i = g(this.TD), s = o.top - r.top - 1 - (i.scrollTop || 0), a = o.left - r.left - 1 - (i.scrollLeft || 0), l = this.checkEditorSection(), c = this.instance.getSettings();
7462
- c.rowHeaders ? 1 : 0,
7463
- c.colHeaders ? 1 : 0;
7464
- switch (l) {
7465
- case "top":
7466
- e = m(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);
7467
- break;
7468
- case "left":
7469
- e = m(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);
7470
- break;
7471
- case "top-left-corner":
7472
- e = m(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);
7473
- break;
7474
- case "bottom-left-corner":
7475
- e = m(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);
7476
- break;
7477
- case "bottom":
7478
- e = m(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)
7479
- }
7480
- 0 === this.instance.getSelected()[0] && (s += 1),
7481
- 0 === this.instance.getSelected()[1] && (a += 1);
7482
- var d = this.select.style;
7483
- e && e != -1 ? d[e[0]] = e[1] : b(this.select);
7484
- var h = p(this.TD);
7485
- parseInt(h.borderTopWidth, 10) > 0 && (n -= 1),
7486
- parseInt(h.borderLeftWidth, 10) > 0 && (t -= 1),
7487
- d.height = n + "px",
7488
- d.minWidth = t + "px",
7489
- d.top = s + "px",
7490
- d.left = a + "px",
7491
- d.margin = "0px"
7492
- }
7493
- }
7494
- ,
7495
- E.prototype.getEditedCell = function() {
7496
- var e, t = this.checkEditorSection();
7497
- switch (t) {
7498
- case "top":
7499
- e = this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({
7500
- row: this.row,
7501
- col: this.col
7502
- }),
7503
- this.select.style.zIndex = 101;
7504
- break;
7505
- case "corner":
7506
- e = this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({
7507
- row: this.row,
7508
- col: this.col
7509
- }),
7510
- this.select.style.zIndex = 103;
7511
- break;
7512
- case "left":
7513
- e = this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({
7514
- row: this.row,
7515
- col: this.col
7516
- }),
7517
- this.select.style.zIndex = 102;
7518
- break;
7519
- default:
7520
- e = this.instance.getCell(this.row, this.col),
7521
- this.select.style.zIndex = ""
7522
- }
7523
- return e != -1 && e != -2 ? e : void 0
7524
- }
7525
- ,
7526
- M("select", E)
7527
- }
7528
- , {
7529
- _baseEditor: 31,
7530
- browser: 24,
7531
- editors: 30,
7532
- "helpers/dom/element": 47,
7533
- "helpers/dom/event": 48,
7534
- "helpers/unicode": 56
7535
- }],
7536
- 41: [function(e, t, n) {
7537
- "use strict";
7538
- Object.defineProperties(n, {
7539
- TextEditor: {
7540
- get: function() {
7541
- return N
7542
- }
7543
- },
7544
- __esModule: {
7545
- value: !0
7546
- }
7547
- });
7548
- var o, r, i, s, a, l, u, c, d = (o = e("browser"),
7549
- o && o.__esModule && o || {
7550
- default: o
7551
- }).default, h = (r = e("helpers/dom/element"),
7552
- r && r.__esModule && r || {
7553
- default: r
7554
- }), f = h.addClass, p = h.getCaretPosition, m = h.getComputedStyle, g = h.getCssTransform, w = h.getScrollableElement, v = h.getScrollbarWidth, y = h.innerWidth, b = h.offset, C = h.resetCssTransform, _ = h.setCaretPosition, R = h.hasVerticalScrollbar, M = h.hasHorizontalScrollbar, S = (i = e("autoResize"),
7555
- i && i.__esModule && i || {
7556
- default: i
7557
- }).default, E = (s = e("_baseEditor"),
7558
- s && s.__esModule && s || {
7559
- default: s
7560
- }).BaseEditor, O = (a = e("eventManager"),
7561
- a && a.__esModule && a || {
7562
- default: a
7563
- }).eventManager, T = (l = e("editors"),
7564
- l && l.__esModule && l || {
7565
- default: l
7566
- }), k = (T.getEditor,
7567
- T.registerEditor), x = (u = e("helpers/unicode"),
7568
- u && u.__esModule && u || {
7569
- default: u
7570
- }).KEY_CODES, D = (c = e("helpers/dom/event"),
7571
- c && c.__esModule && c || {
7572
- default: c
7573
- }), H = D.stopPropagation, A = D.stopImmediatePropagation, P = D.isImmediatePropagationStopped, N = E.prototype.extend();
7574
- N.prototype.init = function() {
7575
- var e = this;
7576
- this.createElements(),
7577
- this.eventManager = O(this),
7578
- this.bindEvents(),
7579
- this.autoResize = S(),
7580
- this.instance.addHook("afterDestroy", function() {
7581
- e.destroy()
7582
- })
7583
- }
7584
- ,
7585
- N.prototype.getValue = function() {
7586
- return this.TEXTAREA.value
7587
- }
7588
- ,
7589
- N.prototype.setValue = function(e) {
7590
- this.TEXTAREA.value = e
7591
- }
7592
- ;
7593
- var L = function(e) {
7594
- var t, n = this, o = n.getActiveEditor();
7595
- if (t = (e.ctrlKey || e.metaKey) && !e.altKey,
7596
- e.target === o.TEXTAREA && !P(e)) {
7597
- if (17 === e.keyCode || 224 === e.keyCode || 91 === e.keyCode || 93 === e.keyCode)
7598
- return void A(e);
7599
- switch (e.keyCode) {
7600
- case x.ARROW_RIGHT:
7601
- o.isInFullEditMode() && (!o.isWaiting() && !o.allowKeyEventPropagation || !o.isWaiting() && o.allowKeyEventPropagation && !o.allowKeyEventPropagation(e.keyCode)) && A(e);
7602
- break;
7603
- case x.ARROW_LEFT:
7604
- o.isInFullEditMode() && (!o.isWaiting() && !o.allowKeyEventPropagation || !o.isWaiting() && o.allowKeyEventPropagation && !o.allowKeyEventPropagation(e.keyCode)) && A(e);
7605
- break;
7606
- case x.ARROW_UP:
7607
- case x.ARROW_DOWN:
7608
- o.isInFullEditMode() && (!o.isWaiting() && !o.allowKeyEventPropagation || !o.isWaiting() && o.allowKeyEventPropagation && !o.allowKeyEventPropagation(e.keyCode)) && A(e);
7609
- break;
7610
- case x.ENTER:
7611
- var r = o.instance.getSelected()
7612
- , i = !(r[0] === r[2] && r[1] === r[3]);
7613
- if (t && !i || e.altKey) {
7614
- if (o.isOpened()) {
7615
- var s = p(o.TEXTAREA)
7616
- , a = o.getValue()
7617
- , l = a.slice(0, s) + "\n" + a.slice(s);
7618
- o.setValue(l),
7619
- _(o.TEXTAREA, s + 1)
7620
- } else
7621
- o.beginEditing(o.originalValue + "\n");
7622
- A(e)
7623
- }
7624
- e.preventDefault();
7625
- break;
7626
- case x.A:
7627
- case x.X:
7628
- case x.C:
7629
- case x.V:
7630
- t && A(e);
7631
- break;
7632
- case x.BACKSPACE:
7633
- case x.DELETE:
7634
- case x.HOME:
7635
- case x.END:
7636
- A(e)
7637
- }
7638
- [x.ARROW_UP, x.ARROW_RIGHT, x.ARROW_DOWN, x.ARROW_LEFT].indexOf(e.keyCode) === -1 && o.autoResize.resize(String.fromCharCode(e.keyCode))
7639
- }
7640
- };
7641
- N.prototype.open = function() {
7642
- this.refreshDimensions(),
7643
- this.instance.addHook("beforeKeyDown", L)
7644
- }
7645
- ,
7646
- N.prototype.close = function(e) {
7647
- this.textareaParentStyle.display = "none",
7648
- this.autoResize.unObserve(),
7649
- document.activeElement === this.TEXTAREA && this.instance.listen(),
7650
- this.instance.removeHook("beforeKeyDown", L)
7651
- }
7652
- ,
7653
- N.prototype.focus = function() {
7654
- this.TEXTAREA.focus(),
7655
- _(this.TEXTAREA, this.TEXTAREA.value.length)
7656
- }
7657
- ,
7658
- N.prototype.createElements = function() {
7659
- this.TEXTAREA = document.createElement("TEXTAREA"),
7660
- f(this.TEXTAREA, "handsontableInput"),
7661
- this.textareaStyle = this.TEXTAREA.style,
7662
- this.textareaStyle.width = 0,
7663
- this.textareaStyle.height = 0,
7664
- this.TEXTAREA_PARENT = document.createElement("DIV"),
7665
- f(this.TEXTAREA_PARENT, "handsontableInputHolder"),
7666
- this.textareaParentStyle = this.TEXTAREA_PARENT.style,
7667
- this.textareaParentStyle.top = 0,
7668
- this.textareaParentStyle.left = 0,
7669
- this.textareaParentStyle.display = "none",
7670
- this.TEXTAREA_PARENT.appendChild(this.TEXTAREA),
7671
- this.instance.rootElement.appendChild(this.TEXTAREA_PARENT);
7672
- var e = this;
7673
- this.instance._registerTimeout(setTimeout(function() {
7674
- e.refreshDimensions()
7675
- }, 0))
7676
- }
7677
- ,
7678
- N.prototype.getEditedCell = function() {
7679
- var e, t = this.checkEditorSection();
7680
- switch (t) {
7681
- case "top":
7682
- e = this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({
7683
- row: this.row,
7684
- col: this.col
7685
- }),
7686
- this.textareaParentStyle.zIndex = 101;
7687
- break;
7688
- case "top-left-corner":
7689
- e = this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({
7690
- row: this.row,
7691
- col: this.col
7692
- }),
7693
- this.textareaParentStyle.zIndex = 103;
7694
- break;
7695
- case "bottom-left-corner":
7696
- e = this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell({
7697
- row: this.row,
7698
- col: this.col
7699
- }),
7700
- this.textareaParentStyle.zIndex = 103;
7701
- break;
7702
- case "left":
7703
- e = this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({
7704
- row: this.row,
7705
- col: this.col
7706
- }),
7707
- this.textareaParentStyle.zIndex = 102;
7708
- break;
7709
- case "bottom":
7710
- e = this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.getCell({
7711
- row: this.row,
7712
- col: this.col
7713
- }),
7714
- this.textareaParentStyle.zIndex = 102;
7715
- break;
7716
- default:
7717
- e = this.instance.getCell(this.row, this.col),
7718
- this.textareaParentStyle.zIndex = ""
7719
- }
7720
- return e != -1 && e != -2 ? e : void 0
7721
- }
7722
- ,
7723
- N.prototype.refreshValue = function() {
7724
- var e = this.instance.getSourceDataAtCell(this.row, this.prop);
7725
- this.originalValue = e,
7726
- this.setValue(e),
7727
- this.refreshDimensions()
7728
- }
7729
- ,
7730
- N.prototype.refreshDimensions = function() {
7731
- if (this.state === d.EditorState.EDITING) {
7732
- if (this.TD = this.getEditedCell(),
7733
- !this.TD)
7734
- return void this.close(!0);
7735
- var e, t = b(this.TD), n = b(this.instance.rootElement), o = w(this.TD), r = this.instance.countRows(), i = t.top === n.top ? 0 : 1, s = t.top - n.top - i - (o.scrollTop || 0), a = t.left - n.left - 1 - (o.scrollLeft || 0), l = this.instance.getSettings(), u = (this.instance.hasRowHeaders(),
7736
- this.instance.hasColHeaders()), c = this.checkEditorSection(), h = this.TD.style.backgroundColor;
7737
- switch (c) {
7738
- case "top":
7739
- e = g(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);
7740
- break;
7741
- case "left":
7742
- e = g(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);
7743
- break;
7744
- case "top-left-corner":
7745
- e = g(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);
7746
- break;
7747
- case "bottom-left-corner":
7748
- e = g(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);
7749
- break;
7750
- case "bottom":
7751
- e = g(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)
7752
- }
7753
- (u && 0 === this.instance.getSelected()[0] || l.fixedRowsBottom && this.instance.getSelected()[0] === r - l.fixedRowsBottom) && (s += 1),
7754
- 0 === this.instance.getSelected()[1] && (a += 1),
7755
- e && e != -1 ? this.textareaParentStyle[e[0]] = e[1] : C(this.TEXTAREA_PARENT),
7756
- this.textareaParentStyle.top = s + "px",
7757
- this.textareaParentStyle.left = a + "px";
7758
- var f = this.instance.view.wt.wtViewport.rowsRenderCalculator.startPosition
7759
- , p = this.instance.view.wt.wtViewport.columnsRenderCalculator.startPosition
7760
- , _ = this.instance.view.wt.wtOverlays.leftOverlay.getScrollPosition()
7761
- , S = this.instance.view.wt.wtOverlays.topOverlay.getScrollPosition()
7762
- , E = v()
7763
- , O = this.TD.offsetTop + f - S
7764
- , T = this.TD.offsetLeft + p - _
7765
- , k = y(this.TD) - 8
7766
- , x = R(o) ? E : 0
7767
- , D = M(o) ? E : 0
7768
- , H = this.instance.view.maximumVisibleElementWidth(T) - 9 - x
7769
- , A = this.TD.scrollHeight + 1
7770
- , P = Math.max(this.instance.view.maximumVisibleElementHeight(O) - D, 23)
7771
- , N = m(this.TD);
7772
- this.TEXTAREA.style.fontSize = N.fontSize,
7773
- this.TEXTAREA.style.fontFamily = N.fontFamily,
7774
- this.TEXTAREA.style.backgroundColor = "",
7775
- this.TEXTAREA.style.backgroundColor = h ? h : m(this.TEXTAREA).backgroundColor,
7776
- this.autoResize.init(this.TEXTAREA, {
7777
- minHeight: Math.min(A, P),
7778
- maxHeight: P,
7779
- minWidth: Math.min(k, H),
7780
- maxWidth: H
7781
- }, !0),
7782
- this.textareaParentStyle.display = "block"
7783
- }
7784
- }
7785
- ,
7786
- N.prototype.bindEvents = function() {
7787
- var e = this;
7788
- this.eventManager.addEventListener(this.TEXTAREA, "cut", function(e) {
7789
- H(e)
7790
- }),
7791
- this.eventManager.addEventListener(this.TEXTAREA, "paste", function(e) {
7792
- H(e)
7793
- }),
7794
- this.instance.addHook("afterScrollHorizontally", function() {
7795
- e.refreshDimensions()
7796
- }),
7797
- this.instance.addHook("afterScrollVertically", function() {
7798
- e.refreshDimensions()
7799
- }),
7800
- this.instance.addHook("afterColumnResize", function() {
7801
- e.refreshDimensions(),
7802
- e.focus()
7803
- }),
7804
- this.instance.addHook("afterRowResize", function() {
7805
- e.refreshDimensions(),
7806
- e.focus()
7807
- }),
7808
- this.instance.addHook("afterDestroy", function() {
7809
- e.eventManager.destroy()
7810
- })
7811
- }
7812
- ,
7813
- N.prototype.destroy = function() {
7814
- this.eventManager.destroy()
7815
- }
7816
- ,
7817
- k("text", N)
7818
- }
7819
- , {
7820
- _baseEditor: 31,
7821
- autoResize: "autoResize",
7822
- browser: 24,
7823
- editors: 30,
7824
- eventManager: 42,
7825
- "helpers/dom/element": 47,
7826
- "helpers/dom/event": 48,
7827
- "helpers/unicode": 56
7828
- }],
7829
- 42: [function(e, t, n) {
7830
- "use strict";
7831
- function o(e, t) {
7832
- var n, o, r, i, s, a, l = "HOT-TABLE";
7833
- if (t.isTargetWebComponent = !1,
7834
- t.realTarget = t.target,
7835
- a = t.stopImmediatePropagation,
7836
- t.stopImmediatePropagation = function() {
7837
- a.apply(this),
7838
- p(this)
7839
- }
7840
- ,
7841
- !u.eventManager.isHotTableEnv)
7842
- return t;
7843
- for (t = d(t),
7844
- s = t.path ? t.path.length : 0; s--; ) {
7845
- if (t.path[s].nodeName === l)
7846
- n = !0;
7847
- else if (n && t.path[s].shadowRoot) {
7848
- i = t.path[s];
7849
- break
7850
- }
7851
- 0 !== s || i || (i = t.path[s])
7852
- }
7853
- return i || (i = t.target),
7854
- t.isTargetWebComponent = !0,
7855
- f() ? t.realTarget = t.srcElement || t.toElement : (e instanceof u.Core || e instanceof Walkontable) && (e instanceof u.Core ? o = e.view ? e.view.wt.wtTable.TABLE : null : e instanceof Walkontable && (o = e.wtTable.TABLE.parentNode.parentNode),
7856
- r = h(t.target, [l], o),
7857
- r ? t.realTarget = o.querySelector(l) || t.target : t.realTarget = t.target),
7858
- Object.defineProperty(t, "target", {
7859
- get: function() {
7860
- return d(i)
7861
- },
7862
- enumerable: !0,
7863
- configurable: !0
7864
- }),
7865
- t
7866
- }
7867
- function r(e) {
7868
- return new m(e)
7869
- }
7870
- Object.defineProperties(n, {
7871
- EventManager: {
7872
- get: function() {
7873
- return m
7874
- }
7875
- },
7876
- eventManager: {
7877
- get: function() {
7878
- return r
7879
- }
7880
- },
7881
- __esModule: {
7882
- value: !0
7883
- }
7884
- });
7885
- var i, s, a, l, u = (i = e("browser"),
7886
- i && i.__esModule && i || {
7887
- default: i
7888
- }).default, c = (s = e("helpers/dom/element"),
7889
- s && s.__esModule && s || {
7890
- default: s
7891
- }), d = c.polymerWrap, h = c.closest, f = (a = e("helpers/feature"),
7892
- a && a.__esModule && a || {
7893
- default: a
7894
- }).isWebComponentSupportedNatively, p = (l = e("helpers/dom/event"),
7895
- l && l.__esModule && l || {
7896
- default: l
7897
- }).stopImmediatePropagation, m = function() {
7898
- var e = void 0 !== arguments[0] ? arguments[0] : null;
7899
- this.context = e || this,
7900
- this.context.eventListeners || (this.context.eventListeners = [])
7901
- };
7902
- $traceurRuntime.createClass(m, {
7903
- addEventListener: function(e, t, n) {
7904
- function r(e) {
7905
- e = o(s, e),
7906
- n.call(this, e)
7907
- }
7908
- var i = this
7909
- , s = this.context;
7910
- return this.context.eventListeners.push({
7911
- element: e,
7912
- event: t,
7913
- callback: n,
7914
- callbackProxy: r
7915
- }),
7916
- window.addEventListener ? e.addEventListener(t, r, !1) : e.attachEvent("on" + t, r),
7917
- u.countEventManagerListeners++,
7918
- function() {
7919
- i.removeEventListener(e, t, n)
7920
- }
7921
- },
7922
- removeEventListener: function(e, t, n) {
7923
- for (var o, r = this.context.eventListeners.length; r--; )
7924
- if (o = this.context.eventListeners[r],
7925
- o.event == t && o.element == e) {
7926
- if (n && n != o.callback)
7927
- continue;
7928
- this.context.eventListeners.splice(r, 1),
7929
- o.element.removeEventListener ? o.element.removeEventListener(o.event, o.callbackProxy, !1) : o.element.detachEvent("on" + o.event, o.callbackProxy),
7930
- u.countEventManagerListeners--
7931
- }
7932
- },
7933
- clearEvents: function() {
7934
- if (this.context)
7935
- for (var e = this.context.eventListeners.length; e--; ) {
7936
- var t = this.context.eventListeners[e];
7937
- t && this.removeEventListener(t.element, t.event, t.callback)
7938
- }
7939
- },
7940
- clear: function() {
7941
- this.clearEvents()
7942
- },
7943
- destroy: function() {
7944
- this.clearEvents(),
7945
- this.context = null
7946
- },
7947
- fireEvent: function(e, t) {
7948
- var n, o = {
7949
- bubbles: !0,
7950
- cancelable: "mousemove" !== t,
7951
- view: window,
7952
- detail: 0,
7953
- screenX: 0,
7954
- screenY: 0,
7955
- clientX: 1,
7956
- clientY: 1,
7957
- ctrlKey: !1,
7958
- altKey: !1,
7959
- shiftKey: !1,
7960
- metaKey: !1,
7961
- button: 0,
7962
- relatedTarget: void 0
7963
- };
7964
- document.createEvent ? (n = document.createEvent("MouseEvents"),
7965
- n.initMouseEvent(t, o.bubbles, o.cancelable, o.view, o.detail, o.screenX, o.screenY, o.clientX, o.clientY, o.ctrlKey, o.altKey, o.shiftKey, o.metaKey, o.button, o.relatedTarget || document.body.parentNode)) : n = document.createEventObject(),
7966
- e.dispatchEvent ? e.dispatchEvent(n) : e.fireEvent("on" + t, n)
7967
- }
7968
- }, {}),
7969
- u.countEventManagerListeners = 0,
7970
- u.eventManager = r
7971
- }
7972
- , {
7973
- browser: 24,
7974
- "helpers/dom/element": 47,
7975
- "helpers/dom/event": 48,
7976
- "helpers/feature": 49
7977
- }],
7978
- 43: [function(e, t, n) {
7979
- "use strict";
7980
- function o(e) {
7981
- for (var t = 0, n = e.length; t < n; )
7982
- e[t] = [e[t]],
7983
- t++
7984
- }
7985
- function r(e, t) {
7986
- for (var n = 0, o = t.length; n < o; )
7987
- e.push(t[n]),
7988
- n++
7989
- }
7990
- function i(e) {
7991
- var t = [];
7992
- if (!e || 0 === e.length || !e[0] || 0 === e[0].length)
7993
- return t;
7994
- for (var n = e.length, o = e[0].length, r = 0; r < n; r++)
7995
- for (var i = 0; i < o; i++)
7996
- t[i] || (t[i] = []),
7997
- t[i][r] = e[r][i];
7998
- return t
7999
- }
8000
- function s(e, t, n, o) {
8001
- var r = -1
8002
- , i = e.length;
8003
- for (o && i && (n = e[++r]); ++r < i; )
8004
- n = t(n, e[r], r, e);
8005
- return n
8006
- }
8007
- function a(e, t) {
8008
- for (var n = -1, o = e.length, r = -1, i = []; ++n < o; ) {
8009
- var s = e[n];
8010
- t(s, n, e) && (i[++r] = s)
8011
- }
8012
- return i
8013
- }
8014
- function l(e, t) {
8015
- for (var n = -1, o = e.length, r = -1, i = []; ++n < o; ) {
8016
- var s = e[n];
8017
- i[++r] = t(s, n, e)
8018
- }
8019
- return i
8020
- }
8021
- function u(e, t) {
8022
- for (var n = -1, o = e.length; ++n < o && t(e[n], n, e) !== !1; )
8023
- ;
8024
- return e
8025
- }
8026
- function c(e) {
8027
- return s(e, function(e, t) {
8028
- return e + t
8029
- }, 0)
8030
- }
8031
- function d(e) {
8032
- return s(e, function(e, t) {
8033
- return e > t ? e : t
8034
- }, Array.isArray(e) ? e[0] : void 0)
8035
- }
8036
- function h(e) {
8037
- return s(e, function(e, t) {
8038
- return e < t ? e : t
8039
- }, Array.isArray(e) ? e[0] : void 0)
8040
- }
8041
- function f(e) {
8042
- return e.length ? c(e) / e.length : 0
8043
- }
8044
- function p(e) {
8045
- return s(e, function(e, t) {
8046
- return e.concat(Array.isArray(t) ? p(t) : t)
8047
- }, [])
8048
- }
8049
- function m(e) {
8050
- var t = [];
8051
- return u(e, function(e) {
8052
- t.indexOf(e) === -1 && t.push(e)
8053
- }),
8054
- t
8055
- }
8056
- function g(e, t, n) {
8057
- if (null == e)
8058
- throw new TypeError('"array" is null or not defined');
8059
- var o = Object(e)
8060
- , r = o.length >>> 0;
8061
- if (0 === r)
8062
- return !1;
8063
- for (var i = 0 | n, s = Math.max(i >= 0 ? i : r - Math.abs(i), 0); s < r; ) {
8064
- if (o[s] === t)
8065
- return !0;
8066
- s++
8067
- }
8068
- return !1
8069
- }
8070
- Object.defineProperties(n, {
8071
- to2dArray: {
8072
- get: function() {
8073
- return o
8074
- }
8075
- },
8076
- extendArray: {
8077
- get: function() {
8078
- return r
8079
- }
8080
- },
8081
- pivot: {
8082
- get: function() {
8083
- return i
8084
- }
8085
- },
8086
- arrayReduce: {
8087
- get: function() {
8088
- return s
8089
- }
8090
- },
8091
- arrayFilter: {
8092
- get: function() {
8093
- return a
8094
- }
8095
- },
8096
- arrayMap: {
8097
- get: function() {
8098
- return l
8099
- }
8100
- },
8101
- arrayEach: {
8102
- get: function() {
8103
- return u
8104
- }
8105
- },
8106
- arraySum: {
8107
- get: function() {
8108
- return c
8109
- }
8110
- },
8111
- arrayMax: {
8112
- get: function() {
8113
- return d
8114
- }
8115
- },
8116
- arrayMin: {
8117
- get: function() {
8118
- return h
8119
- }
8120
- },
8121
- arrayAvg: {
8122
- get: function() {
8123
- return f
8124
- }
8125
- },
8126
- arrayFlatten: {
8127
- get: function() {
8128
- return p
8129
- }
8130
- },
8131
- arrayUnique: {
8132
- get: function() {
8133
- return m
8134
- }
8135
- },
8136
- arrayIncludes: {
8137
- get: function() {
8138
- return g
8139
- }
8140
- },
8141
- __esModule: {
8142
- value: !0
8143
- }
8144
- })
8145
- }
8146
- , {}],
8147
- 44: [function(e, t, n) {
8148
- "use strict";
8149
- function o() {
8150
- return l
8151
- }
8152
- function r() {
8153
- return u
8154
- }
8155
- function i() {
8156
- return c
8157
- }
8158
- function s() {
8159
- return d
8160
- }
8161
- function a(e) {
8162
- return e || (e = navigator.userAgent),
8163
- /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(e)
8164
- }
8165
- Object.defineProperties(n, {
8166
- isIE8: {
8167
- get: function() {
8168
- return o
8169
- }
8170
- },
8171
- isIE9: {
8172
- get: function() {
8173
- return r
8174
- }
8175
- },
8176
- isSafari: {
8177
- get: function() {
8178
- return i
8179
- }
8180
- },
8181
- isChrome: {
8182
- get: function() {
8183
- return s
8184
- }
8185
- },
8186
- isMobileBrowser: {
8187
- get: function() {
8188
- return a
8189
- }
8190
- },
8191
- __esModule: {
8192
- value: !0
8193
- }
8194
- });
8195
- var l = !document.createTextNode("test").textContent
8196
- , u = !!document.documentMode
8197
- , c = /Safari/.test(navigator.userAgent) && /Apple Computer/.test(navigator.vendor)
8198
- , d = /Chrome/.test(navigator.userAgent) && /Google/.test(navigator.vendor)
8199
- }
8200
- , {}],
8201
- 45: [function(e, t, n) {
8202
- "use strict";
8203
- function o(e) {
8204
- for (var t, n = e + 1, o = ""; n > 0; )
8205
- t = (n - 1) % m,
8206
- o = String.fromCharCode(65 + t) + o,
8207
- n = parseInt((n - t) / m, 10);
8208
- return o
8209
- }
8210
- function r(e) {
8211
- var t = 0;
8212
- if (e)
8213
- for (var n = 0, o = e.length - 1; n < e.length; n += 1,
8214
- o -= 1)
8215
- t += Math.pow(m, o) * (p.indexOf(e[n]) + 1);
8216
- return --t,
8217
- t
8218
- }
8219
- function i() {
8220
- var e, t, n = void 0 !== arguments[0] ? arguments[0] : 100, r = void 0 !== arguments[1] ? arguments[1] : 4, i = [];
8221
- for (e = 0; e < n; e++) {
8222
- var s = [];
8223
- for (t = 0; t < r; t++)
8224
- s.push(o(t) + (e + 1));
8225
- i.push(s)
8226
- }
8227
- return i
8228
- }
8229
- function s() {
8230
- var e, t, n = void 0 !== arguments[0] ? arguments[0] : 100, r = void 0 !== arguments[1] ? arguments[1] : 4, i = [];
8231
- for (e = 0; e < n; e++) {
8232
- var s = {};
8233
- for (t = 0; t < r; t++)
8234
- s["prop" + t] = o(t) + (e + 1);
8235
- i.push(s)
8236
- }
8237
- return i
8238
- }
8239
- function a(e, t) {
8240
- for (var n, o = [], r = 0; r < e; r++) {
8241
- n = [];
8242
- for (var i = 0; i < t; i++)
8243
- n.push("");
8244
- o.push(n)
8245
- }
8246
- return o
8247
- }
8248
- function l(e) {
8249
- var t, n, o, r, i = [], s = 0;
8250
- for (t = 0,
8251
- n = e.length; t < n; t++)
8252
- for (o = 0,
8253
- r = e[t].length; o < r; o++)
8254
- o == s && (i.push([]),
8255
- s++),
8256
- i[o].push(e[t][o]);
8257
- return i
8258
- }
8259
- function u(e, t) {
8260
- function n(e) {
8261
- var t = h.cellTypes[e];
8262
- if ("undefined" == typeof t)
8263
- throw new Error('You declared cell type "' + e + '" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');
8264
- return t
8265
- }
8266
- return t = "undefined" == typeof t || t,
8267
- function(o, r) {
8268
- return function o(r) {
8269
- if (r) {
8270
- if (r.hasOwnProperty(e) && void 0 !== r[e])
8271
- return r[e];
8272
- if (r.hasOwnProperty("type") && r.type) {
8273
- var i;
8274
- if ("string" != typeof r.type)
8275
- throw new Error("Cell type must be a string ");
8276
- if (i = n(r.type),
8277
- i.hasOwnProperty(e))
8278
- return i[e];
8279
- if (t)
8280
- return
8281
- }
8282
- return o(f(r))
8283
- }
8284
- }("number" == typeof o ? this.getCellMeta(o, r) : o)
8285
- }
8286
- }
8287
- Object.defineProperties(n, {
8288
- spreadsheetColumnLabel: {
8289
- get: function() {
8290
- return o
8291
- }
8292
- },
8293
- spreadsheetColumnIndex: {
8294
- get: function() {
8295
- return r
8296
- }
8297
- },
8298
- createSpreadsheetData: {
8299
- get: function() {
8300
- return i
8301
- }
8302
- },
8303
- createSpreadsheetObjectData: {
8304
- get: function() {
8305
- return s
8306
- }
8307
- },
8308
- createEmptySpreadsheetData: {
8309
- get: function() {
8310
- return a
8311
- }
8312
- },
8313
- translateRowsToColumns: {
8314
- get: function() {
8315
- return l
8316
- }
8317
- },
8318
- cellMethodLookupFactory: {
8319
- get: function() {
8320
- return u
8321
- }
8322
- },
8323
- __esModule: {
8324
- value: !0
8325
- }
8326
- });
8327
- var c, d, h = (c = e("browser"),
8328
- c && c.__esModule && c || {
8329
- default: c
8330
- }).default, f = (d = e("object"),
8331
- d && d.__esModule && d || {
8332
- default: d
8333
- }).getPrototypeOf, p = "ABCDEFGHIJKLMNOPQRSTUVWXYZ", m = p.length
8334
- }
8335
- , {
8336
- browser: 24,
8337
- object: 53
8338
- }],
8339
- 46: [function(e, t, n) {
8340
- "use strict";
8341
- function o(e) {
8342
- var t = new Date(e);
8343
- return isNaN(new Date(e + "T00:00").getDate()) ? t : new Date(t.getTime() + 6e4 * t.getTimezoneOffset())
8344
- }
8345
- Object.defineProperties(n, {
8346
- getNormalizedDate: {
8347
- get: function() {
8348
- return o
8349
- }
8350
- },
8351
- __esModule: {
8352
- value: !0
8353
- }
8354
- })
8355
- }
8356
- , {}],
8357
- 47: [function(e, t, n) {
8358
- "use strict";
8359
- function o(e) {
8360
- for (var t = void 0 !== arguments[1] ? arguments[1] : 0, n = -1, o = null; null != e; ) {
8361
- if (n === t) {
8362
- o = e;
8363
- break
8364
- }
8365
- e.host && e.nodeType === Node.DOCUMENT_FRAGMENT_NODE ? e = e.host : (n++,
8366
- e = e.parentNode)
8367
- }
8368
- return o
8369
- }
8370
- function r(e, t, n) {
8371
- for (; null != e && e !== n; ) {
8372
- if (e.nodeType === Node.ELEMENT_NODE && (t.indexOf(e.nodeName) > -1 || t.indexOf(e) > -1))
8373
- return e;
8374
- e = e.host && e.nodeType === Node.DOCUMENT_FRAGMENT_NODE ? e.host : e.parentNode
8375
- }
8376
- return null
8377
- }
8378
- function i(e, t, n) {
8379
- for (var o = []; e && (e = r(e, t, n),
8380
- e && (!n || n.contains(e))); )
8381
- o.push(e),
8382
- e = e.host && e.nodeType === Node.DOCUMENT_FRAGMENT_NODE ? e.host : e.parentNode;
8383
- var i = o.length;
8384
- return i ? o[i - 1] : null
8385
- }
8386
- function s(e, t) {
8387
- var n = e.parentNode
8388
- , o = [];
8389
- for ("string" == typeof t ? o = Array.prototype.slice.call(document.querySelectorAll(t), 0) : o.push(t); null != n; ) {
8390
- if (o.indexOf(n) > -1)
8391
- return !0;
8392
- n = n.parentNode
8393
- }
8394
- return !1
8395
- }
8396
- function a(e) {
8397
- function t(e) {
8398
- return e.nodeType === Node.ELEMENT_NODE && e.nodeName === o.toUpperCase()
8399
- }
8400
- var n, o = "hot-table", r = !1;
8401
- for (n = l(e); null != n; ) {
8402
- if (t(n)) {
8403
- r = !0;
8404
- break
8405
- }
8406
- if (n.host && n.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {
8407
- if (r = t(n.host))
8408
- break;
8409
- n = n.host
8410
- }
8411
- n = n.parentNode
8412
- }
8413
- return r
8414
- }
8415
- function l(e) {
8416
- return "undefined" != typeof Polymer && "function" == typeof wrap ? wrap(e) : e
8417
- }
8418
- function u(e) {
8419
- return "undefined" != typeof Polymer && "function" == typeof unwrap ? unwrap(e) : e
8420
- }
8421
- function c(e) {
8422
- var t = 0;
8423
- if (e.previousSibling)
8424
- for (; e = e.previousSibling; )
8425
- ++t;
8426
- return t
8427
- }
8428
- function d(e, t) {
8429
- var n = document.querySelector(".ht_clone_" + e);
8430
- return n ? n.contains(t) : null
8431
- }
8432
- function h(e) {
8433
- var t = 0
8434
- , n = [];
8435
- if (!e || !e.length)
8436
- return n;
8437
- for (; e[t]; )
8438
- n.push(e[t]),
8439
- t++;
8440
- return n
8441
- }
8442
- function f(e, t) {
8443
- return Z(e, t)
8444
- }
8445
- function p(e, t) {
8446
- return J(e, t)
8447
- }
8448
- function m(e, t) {
8449
- return Q(e, t)
8450
- }
8451
- function g(e, t) {
8452
- if (3 === e.nodeType)
8453
- t.removeChild(e);
8454
- else if (["TABLE", "THEAD", "TBODY", "TFOOT", "TR"].indexOf(e.nodeName) > -1)
8455
- for (var n = e.childNodes, o = n.length - 1; o >= 0; o--)
8456
- g(n[o], e)
8457
- }
8458
- function w(e) {
8459
- for (var t; t = e.lastChild; )
8460
- e.removeChild(t)
8461
- }
8462
- function v(e, t) {
8463
- ue.test(t) ? e.innerHTML = t : y(e, t)
8464
- }
8465
- function y(e, t) {
8466
- var n = e.firstChild;
8467
- n && 3 === n.nodeType && null === n.nextSibling ? ce ? n.textContent = t : n.data = t : (w(e),
8468
- e.appendChild(document.createTextNode(t)))
8469
- }
8470
- function b(e) {
8471
- for (var t = e; u(t) !== document.documentElement; ) {
8472
- if (null === t)
8473
- return !1;
8474
- if (t.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {
8475
- if (t.host) {
8476
- if (t.host.impl)
8477
- return b(t.host.impl);
8478
- if (t.host)
8479
- return b(t.host);
8480
- throw new Error("Lost in Web Components world")
8481
- }
8482
- return !1
8483
- }
8484
- if ("none" === t.style.display)
8485
- return !1;
8486
- t = t.parentNode
8487
- }
8488
- return !0
8489
- }
8490
- function C(e) {
8491
- var t, n, o, r, i;
8492
- if (r = document.documentElement,
8493
- re() && e.firstChild && "CAPTION" === e.firstChild.nodeName)
8494
- return i = e.getBoundingClientRect(),
8495
- {
8496
- top: i.top + (window.pageYOffset || r.scrollTop) - (r.clientTop || 0),
8497
- left: i.left + (window.pageXOffset || r.scrollLeft) - (r.clientLeft || 0)
8498
- };
8499
- for (t = e.offsetLeft,
8500
- n = e.offsetTop,
8501
- o = e; (e = e.offsetParent) && e !== document.body; )
8502
- t += e.offsetLeft,
8503
- n += e.offsetTop,
8504
- o = e;
8505
- return o && "fixed" === o.style.position && (t += window.pageXOffset || r.scrollLeft,
8506
- n += window.pageYOffset || r.scrollTop),
8507
- {
8508
- left: t,
8509
- top: n
8510
- }
8511
- }
8512
- function _() {
8513
- var e = window.scrollY;
8514
- return void 0 === e && (e = document.documentElement.scrollTop),
8515
- e
8516
- }
8517
- function R() {
8518
- var e = window.scrollX;
8519
- return void 0 === e && (e = document.documentElement.scrollLeft),
8520
- e
8521
- }
8522
- function M(e) {
8523
- return e === window ? _() : e.scrollTop
8524
- }
8525
- function S(e) {
8526
- return e === window ? R() : e.scrollLeft
8527
- }
8528
- function E(e) {
8529
- for (var t, n, o, r = e.parentNode, i = ["auto", "scroll"], s = "", a = "", l = "", u = ""; r && r.style && document.body !== r; ) {
8530
- if (t = r.style.overflow,
8531
- n = r.style.overflowX,
8532
- o = r.style.overflowY,
8533
- "scroll" == t || "scroll" == n || "scroll" == o)
8534
- return r;
8535
- if (window.getComputedStyle && (s = window.getComputedStyle(r),
8536
- a = s.getPropertyValue("overflow"),
8537
- l = s.getPropertyValue("overflow-y"),
8538
- u = s.getPropertyValue("overflow-x"),
8539
- "scroll" === a || "scroll" === u || "scroll" === l))
8540
- return r;
8541
- if (r.clientHeight <= r.scrollHeight && (i.indexOf(o) !== -1 || i.indexOf(t) !== -1 || i.indexOf(a) !== -1 || i.indexOf(l) !== -1))
8542
- return r;
8543
- if (r.clientWidth <= r.scrollWidth && (i.indexOf(n) !== -1 || i.indexOf(t) !== -1 || i.indexOf(a) !== -1 || i.indexOf(u) !== -1))
8544
- return r;
8545
- r = r.parentNode
8546
- }
8547
- return window
8548
- }
8549
- function O(e) {
8550
- for (var t = e.parentNode; t && t.style && document.body !== t; ) {
8551
- if ("visible" !== t.style.overflow && "" !== t.style.overflow)
8552
- return t;
8553
- if (window.getComputedStyle) {
8554
- var n = window.getComputedStyle(t);
8555
- if ("visible" !== n.getPropertyValue("overflow") && "" !== n.getPropertyValue("overflow"))
8556
- return t
8557
- }
8558
- t = t.parentNode
8559
- }
8560
- return window
8561
- }
8562
- function T(e, t) {
8563
- if (e) {
8564
- if (e !== window) {
8565
- var n, o = e.style[t];
8566
- return "" !== o && void 0 !== o ? o : (n = k(e),
8567
- "" !== n[t] && void 0 !== n[t] ? n[t] : void 0)
8568
- }
8569
- if ("width" === t)
8570
- return window.innerWidth + "px";
8571
- if ("height" === t)
8572
- return window.innerHeight + "px"
8573
- }
8574
- }
8575
- function k(e) {
8576
- return e.currentStyle || document.defaultView.getComputedStyle(e)
8577
- }
8578
- function x(e) {
8579
- return e.offsetWidth
8580
- }
8581
- function D(e) {
8582
- return re() && e.firstChild && "CAPTION" === e.firstChild.nodeName ? e.offsetHeight + e.firstChild.offsetHeight : e.offsetHeight
8583
- }
8584
- function H(e) {
8585
- return e.clientHeight || e.innerHeight
8586
- }
8587
- function A(e) {
8588
- return e.clientWidth || e.innerWidth
8589
- }
8590
- function P(e, t, n) {
8591
- window.addEventListener ? e.addEventListener(t, n, !1) : e.attachEvent("on" + t, n)
8592
- }
8593
- function N(e, t, n) {
8594
- window.removeEventListener ? e.removeEventListener(t, n, !1) : e.detachEvent("on" + t, n)
8595
- }
8596
- function L(e) {
8597
- if (e.selectionStart)
8598
- return e.selectionStart;
8599
- if (document.selection) {
8600
- e.focus();
8601
- var t = document.selection.createRange();
8602
- if (null == t)
8603
- return 0;
8604
- var n = e.createTextRange()
8605
- , o = n.duplicate();
8606
- return n.moveToBookmark(t.getBookmark()),
8607
- o.setEndPoint("EndToStart", n),
8608
- o.text.length
8609
- }
8610
- return 0
8611
- }
8612
- function I(e) {
8613
- if (e.selectionEnd)
8614
- return e.selectionEnd;
8615
- if (document.selection) {
8616
- var t = document.selection.createRange();
8617
- if (null == t)
8618
- return 0;
8619
- var n = e.createTextRange();
8620
- return n.text.indexOf(t.text) + t.text.length
8621
- }
8622
- }
8623
- function W() {
8624
- var e = "";
8625
- return window.getSelection ? e = window.getSelection().toString() : document.selection && "Control" !== document.selection.type && (e = document.selection.createRange().text),
8626
- e
8627
- }
8628
- function j(e, t, n) {
8629
- if (void 0 === n && (n = t),
8630
- e.setSelectionRange) {
8631
- e.focus();
8632
- try {
8633
- e.setSelectionRange(t, n)
8634
- } catch (i) {
8635
- var o = e.parentNode
8636
- , r = o.style.display;
8637
- o.style.display = "block",
8638
- e.setSelectionRange(t, n),
8639
- o.style.display = r
8640
- }
8641
- } else if (e.createTextRange) {
8642
- var i = e.createTextRange();
8643
- i.collapse(!0),
8644
- i.moveEnd("character", n),
8645
- i.moveStart("character", t),
8646
- i.select()
8647
- }
8648
- }
8649
- function V() {
8650
- var e = document.createElement("div");
8651
- e.style.height = "200px",
8652
- e.style.width = "100%";
8653
- var t = document.createElement("div");
8654
- t.style.boxSizing = "content-box",
8655
- t.style.height = "150px",
8656
- t.style.left = "0px",
8657
- t.style.overflow = "hidden",
8658
- t.style.position = "absolute",
8659
- t.style.top = "0px",
8660
- t.style.width = "200px",
8661
- t.style.visibility = "hidden",
8662
- t.appendChild(e),
8663
- (document.body || document.documentElement).appendChild(t);
8664
- var n = e.offsetWidth;
8665
- t.style.overflow = "scroll";
8666
- var o = e.offsetWidth;
8667
- return n == o && (o = t.clientWidth),
8668
- (document.body || document.documentElement).removeChild(t),
8669
- n - o
8670
- }
8671
- function B() {
8672
- return void 0 === le && (le = V()),
8673
- le
8674
- }
8675
- function F(e) {
8676
- return e.offsetWidth !== e.clientWidth
8677
- }
8678
- function z(e) {
8679
- return e.offsetHeight !== e.clientHeight
8680
- }
8681
- function Y(e, t, n) {
8682
- te() || ne() ? (e.style.top = n,
8683
- e.style.left = t) : oe() ? e.style["-webkit-transform"] = "translate3d(" + t + "," + n + ",0)" : e.style.transform = "translate3d(" + t + "," + n + ",0)"
8684
- }
8685
- function U(e) {
8686
- var t;
8687
- return e.style.transform && "" !== (t = e.style.transform) ? ["transform", t] : e.style["-webkit-transform"] && "" !== (t = e.style["-webkit-transform"]) ? ["-webkit-transform", t] : -1
8688
- }
8689
- function G(e) {
8690
- e.style.transform && "" !== e.style.transform ? e.style.transform = "" : e.style["-webkit-transform"] && "" !== e.style["-webkit-transform"] && (e.style["-webkit-transform"] = "")
8691
- }
8692
- function $(e) {
8693
- var t = ["INPUT", "SELECT", "TEXTAREA"];
8694
- return e && (t.indexOf(e.nodeName) > -1 || "true" === e.contentEditable)
8695
- }
8696
- function K(e) {
8697
- return $(e) && e.className.indexOf("handsontableInput") == -1 && e.className.indexOf("copyPaste") == -1
8698
- }
8699
- Object.defineProperties(n, {
8700
- getParent: {
8701
- get: function() {
8702
- return o
8703
- }
8704
- },
8705
- closest: {
8706
- get: function() {
8707
- return r
8708
- }
8709
- },
8710
- closestDown: {
8711
- get: function() {
8712
- return i
8713
- }
8714
- },
8715
- isChildOf: {
8716
- get: function() {
8717
- return s
8718
- }
8719
- },
8720
- isChildOfWebComponentTable: {
8721
- get: function() {
8722
- return a
8723
- }
8724
- },
8725
- polymerWrap: {
8726
- get: function() {
8727
- return l
8728
- }
8729
- },
8730
- polymerUnwrap: {
8731
- get: function() {
8732
- return u
8733
- }
8734
- },
8735
- index: {
8736
- get: function() {
8737
- return c
8738
- }
8739
- },
8740
- overlayContainsElement: {
8741
- get: function() {
8742
- return d
8743
- }
8744
- },
8745
- hasClass: {
8746
- get: function() {
8747
- return f
8748
- }
8749
- },
8750
- addClass: {
8751
- get: function() {
8752
- return p
8753
- }
8754
- },
8755
- removeClass: {
8756
- get: function() {
8757
- return m
8758
- }
8759
- },
8760
- removeTextNodes: {
8761
- get: function() {
8762
- return g
8763
- }
8764
- },
8765
- empty: {
8766
- get: function() {
8767
- return w
8768
- }
8769
- },
8770
- HTML_CHARACTERS: {
8771
- get: function() {
8772
- return ue
8773
- }
8774
- },
8775
- fastInnerHTML: {
8776
- get: function() {
8777
- return v
8778
- }
8779
- },
8780
- fastInnerText: {
8781
- get: function() {
8782
- return y
8783
- }
8784
- },
8785
- isVisible: {
8786
- get: function() {
8787
- return b
8788
- }
8789
- },
8790
- offset: {
8791
- get: function() {
8792
- return C
8793
- }
8794
- },
8795
- getWindowScrollTop: {
8796
- get: function() {
8797
- return _
8798
- }
8799
- },
8800
- getWindowScrollLeft: {
8801
- get: function() {
8802
- return R
8803
- }
8804
- },
8805
- getScrollTop: {
8806
- get: function() {
8807
- return M
8808
- }
8809
- },
8810
- getScrollLeft: {
8811
- get: function() {
8812
- return S
8813
- }
8814
- },
8815
- getScrollableElement: {
8816
- get: function() {
8817
- return E
8818
- }
8819
- },
8820
- getTrimmingContainer: {
8821
- get: function() {
8822
- return O
8823
- }
8824
- },
8825
- getStyle: {
8826
- get: function() {
8827
- return T
8828
- }
8829
- },
8830
- getComputedStyle: {
8831
- get: function() {
8832
- return k
8833
- }
8834
- },
8835
- outerWidth: {
8836
- get: function() {
8837
- return x
8838
- }
8839
- },
8840
- outerHeight: {
8841
- get: function() {
8842
- return D
8843
- }
8844
- },
8845
- innerHeight: {
8846
- get: function() {
8847
- return H
8848
- }
8849
- },
8850
- innerWidth: {
8851
- get: function() {
8852
- return A
8853
- }
8854
- },
8855
- addEvent: {
8856
- get: function() {
8857
- return P
8858
- }
8859
- },
8860
- removeEvent: {
8861
- get: function() {
8862
- return N
8863
- }
8864
- },
8865
- getCaretPosition: {
8866
- get: function() {
8867
- return L
8868
- }
8869
- },
8870
- getSelectionEndPosition: {
8871
- get: function() {
8872
- return I
8873
- }
8874
- },
8875
- getSelectionText: {
8876
- get: function() {
8877
- return W
8878
- }
8879
- },
8880
- setCaretPosition: {
8881
- get: function() {
8882
- return j
8883
- }
8884
- },
8885
- getScrollbarWidth: {
8886
- get: function() {
8887
- return B
8888
- }
8889
- },
8890
- hasVerticalScrollbar: {
8891
- get: function() {
8892
- return F
8893
- }
8894
- },
8895
- hasHorizontalScrollbar: {
8896
- get: function() {
8897
- return z
8898
- }
8899
- },
8900
- setOverlayPosition: {
8901
- get: function() {
8902
- return Y
8903
- }
8904
- },
8905
- getCssTransform: {
8906
- get: function() {
8907
- return U
8908
- }
8909
- },
8910
- resetCssTransform: {
8911
- get: function() {
8912
- return G
8913
- }
8914
- },
8915
- isInput: {
8916
- get: function() {
8917
- return $
8918
- }
8919
- },
8920
- isOutsideInput: {
8921
- get: function() {
8922
- return K
8923
- }
8924
- },
8925
- __esModule: {
8926
- value: !0
8927
- }
8928
- });
8929
- var X, q, Z, J, Q, ee = (X = e("../browser"),
8930
- X && X.__esModule && X || {
8931
- default: X
8932
- }), te = ee.isIE8, ne = ee.isIE9, oe = ee.isSafari, re = (q = e("../feature"),
8933
- q && q.__esModule && q || {
8934
- default: q
8935
- }).hasCaptionProblem, ie = !!document.documentElement.classList;
8936
- if (ie) {
8937
- var se = function() {
8938
- var e = document.createElement("div");
8939
- return e.classList.add("test", "test2"),
8940
- e.classList.contains("test2")
8941
- }();
8942
- Z = function(e, t) {
8943
- return "" !== t && e.classList.contains(t)
8944
- }
8945
- ,
8946
- J = function(e, t) {
8947
- var n = 0;
8948
- if ("string" == typeof t && (t = t.split(" ")),
8949
- t = h(t),
8950
- se)
8951
- e.classList.add.apply(e.classList, t);
8952
- else
8953
- for (; t && t[n]; )
8954
- e.classList.add(t[n]),
8955
- n++
8956
- }
8957
- ,
8958
- Q = function(e, t) {
8959
- var n = 0;
8960
- if ("string" == typeof t && (t = t.split(" ")),
8961
- t = h(t),
8962
- se)
8963
- e.classList.remove.apply(e.classList, t);
8964
- else
8965
- for (; t && t[n]; )
8966
- e.classList.remove(t[n]),
8967
- n++
8968
- }
8969
- } else {
8970
- var ae = function(e) {
8971
- return new RegExp("(\\s|^)" + e + "(\\s|$)")
8972
- };
8973
- Z = function(e, t) {
8974
- return !!e.className.match(ae(t))
8975
- }
8976
- ,
8977
- J = function(e, t) {
8978
- var n = 0
8979
- , o = e.className;
8980
- if ("string" == typeof t && (t = t.split(" ")),
8981
- "" === o)
8982
- o = t.join(" ");
8983
- else
8984
- for (; t && t[n]; )
8985
- ae(t[n]).test(o) || (o += " " + t[n]),
8986
- n++;
8987
- e.className = o
8988
- }
8989
- ,
8990
- Q = function(e, t) {
8991
- var n = 0
8992
- , o = e.className;
8993
- for ("string" == typeof t && (t = t.split(" ")); t && t[n]; )
8994
- o = o.replace(ae(t[n]), " ").trim(),
8995
- n++;
8996
- e.className !== o && (e.className = o)
8997
- }
8998
- }
8999
- var le, ue = /(<(.*)>|&(.*);)/, ce = !!document.createTextNode("test").textContent
9000
- }
9001
- , {
9002
- "../browser": 44,
9003
- "../feature": 49
9004
- }],
9005
- 48: [function(e, t, n) {
9006
- "use strict";
9007
- function o(e) {
9008
- e.isImmediatePropagationEnabled = !1,
9009
- e.cancelBubble = !0
9010
- }
9011
- function r(e) {
9012
- return e.isImmediatePropagationEnabled === !1
9013
- }
9014
- function i(e) {
9015
- "function" == typeof e.stopPropagation ? e.stopPropagation() : e.cancelBubble = !0
9016
- }
9017
- function s(e) {
9018
- return e.pageX ? e.pageX : e.clientX + f()
9019
- }
9020
- function a(e) {
9021
- return e.pageY ? e.pageY : e.clientY + h()
9022
- }
9023
- function l(e) {
9024
- return 2 === e.button
9025
- }
9026
- function u(e) {
9027
- return 0 === e.button
9028
- }
9029
- Object.defineProperties(n, {
9030
- stopImmediatePropagation: {
9031
- get: function() {
9032
- return o
9033
- }
9034
- },
9035
- isImmediatePropagationStopped: {
9036
- get: function() {
9037
- return r
9038
- }
9039
- },
9040
- stopPropagation: {
9041
- get: function() {
9042
- return i
9043
- }
9044
- },
9045
- pageX: {
9046
- get: function() {
9047
- return s
9048
- }
9049
- },
9050
- pageY: {
9051
- get: function() {
9052
- return a
9053
- }
9054
- },
9055
- isRightClick: {
9056
- get: function() {
9057
- return l
9058
- }
9059
- },
9060
- isLeftClick: {
9061
- get: function() {
9062
- return u
9063
- }
9064
- },
9065
- __esModule: {
9066
- value: !0
9067
- }
9068
- });
9069
- var c, d = (c = e("element"),
9070
- c && c.__esModule && c || {
9071
- default: c
9072
- }), h = d.getWindowScrollTop, f = d.getWindowScrollLeft
9073
- }
9074
- , {
9075
- element: 47
9076
- }],
9077
- 49: [function(e, t, n) {
9078
- "use strict";
9079
- function o(e) {
9080
- return h.call(window, e)
9081
- }
9082
- function r(e) {
9083
- f.call(window, e)
9084
- }
9085
- function i() {
9086
- return "ontouchstart"in window
9087
- }
9088
- function s() {
9089
- var e = document.createElement("div");
9090
- return !(!e.createShadowRoot || !e.createShadowRoot.toString().match(/\[native code\]/))
9091
- }
9092
- function a() {
9093
- var e = document.createElement("TABLE");
9094
- e.style.borderSpacing = 0,
9095
- e.style.borderWidth = 0,
9096
- e.style.padding = 0;
9097
- var t = document.createElement("TBODY");
9098
- e.appendChild(t),
9099
- t.appendChild(document.createElement("TR")),
9100
- t.firstChild.appendChild(document.createElement("TD")),
9101
- t.firstChild.firstChild.innerHTML = "<tr><td>t<br>t</td></tr>";
9102
- var n = document.createElement("CAPTION");
9103
- n.innerHTML = "c<br>c<br>c<br>c",
9104
- n.style.padding = 0,
9105
- n.style.margin = 0,
9106
- e.insertBefore(n, t),
9107
- document.body.appendChild(e),
9108
- m = e.offsetHeight < 2 * e.lastChild.offsetHeight,
9109
- document.body.removeChild(e)
9110
- }
9111
- function l() {
9112
- return void 0 === m && a(),
9113
- m
9114
- }
9115
- function u(e) {
9116
- var t = void 0 !== arguments[1] ? arguments[1] : {};
9117
- return g ? g : g = "object" == typeof Intl ? new Intl.Collator(e,t).compare : "function" == typeof String.prototype.localeCompare ? function(e, t) {
9118
- return (e + "").localeCompare(t)
9119
- }
9120
- : function(e, t) {
9121
- return e === t ? 0 : e > t ? -1 : 1
9122
- }
9123
- }
9124
- Object.defineProperties(n, {
9125
- requestAnimationFrame: {
9126
- get: function() {
9127
- return o
9128
- }
9129
- },
9130
- cancelAnimationFrame: {
9131
- get: function() {
9132
- return r
9133
- }
9134
- },
9135
- isTouchSupported: {
9136
- get: function() {
9137
- return i
9138
- }
9139
- },
9140
- isWebComponentSupportedNatively: {
9141
- get: function() {
9142
- return s
9143
- }
9144
- },
9145
- hasCaptionProblem: {
9146
- get: function() {
9147
- return l
9148
- }
9149
- },
9150
- getComparisonFunction: {
9151
- get: function() {
9152
- return u
9153
- }
9154
- },
9155
- __esModule: {
9156
- value: !0
9157
- }
9158
- });
9159
- for (var c = 0, d = ["ms", "moz", "webkit", "o"], h = window.requestAnimationFrame, f = window.cancelAnimationFrame, p = 0; p < d.length && !h; ++p)
9160
- h = window[d[p] + "RequestAnimationFrame"],
9161
- f = window[d[p] + "CancelAnimationFrame"] || window[d[p] + "CancelRequestAnimationFrame"];
9162
- h || (h = function(e) {
9163
- var t = (new Date).getTime()
9164
- , n = Math.max(0, 16 - (t - c))
9165
- , o = window.setTimeout(function() {
9166
- e(t + n)
9167
- }, n);
9168
- return c = t + n,
9169
- o
9170
- }
9171
- ),
9172
- f || (f = function(e) {
9173
- clearTimeout(e)
9174
- }
9175
- );
9176
- var m, g
9177
- }
9178
- , {}],
9179
- 50: [function(e, t, n) {
9180
- "use strict";
9181
- function o(e) {
9182
- return "function" == typeof e
9183
- }
9184
- function r(e, t) {
9185
- return function() {
9186
- return e.apply(t, arguments)
9187
- }
9188
- }
9189
- function i(e) {
9190
- function t() {
9191
- var t = this
9192
- , s = arguments
9193
- , a = Date.now()
9194
- , l = !1;
9195
- r.lastCallThrottled = !0,
9196
- o || (o = a,
9197
- l = !0);
9198
- var u = n - (a - o);
9199
- return l ? (r.lastCallThrottled = !1,
9200
- e.apply(this, s)) : (i && clearTimeout(i),
9201
- i = setTimeout(function() {
9202
- r.lastCallThrottled = !1,
9203
- e.apply(t, s),
9204
- o = 0,
9205
- i = void 0
9206
- }, u)),
9207
- r
9208
- }
9209
- var n = void 0 !== arguments[1] ? arguments[1] : 200
9210
- , o = 0
9211
- , r = {
9212
- lastCallThrottled: !0
9213
- }
9214
- , i = null;
9215
- return t
9216
- }
9217
- function s(e) {
9218
- function t() {
9219
- a = r
9220
- }
9221
- function n() {
9222
- return a ? (a--,
9223
- e.apply(this, arguments)) : s.apply(this, arguments)
9224
- }
9225
- var o = void 0 !== arguments[1] ? arguments[1] : 200
9226
- , r = void 0 !== arguments[2] ? arguments[2] : 10
9227
- , s = i(e, o)
9228
- , a = r;
9229
- return n.clearHits = t,
9230
- n
9231
- }
9232
- function a(e) {
9233
- function t() {
9234
- var t = this
9235
- , i = arguments;
9236
- return r && clearTimeout(r),
9237
- r = setTimeout(function() {
9238
- n = e.apply(t, i)
9239
- }, o),
9240
- n
9241
- }
9242
- var n, o = void 0 !== arguments[1] ? arguments[1] : 200, r = null;
9243
- return t
9244
- }
9245
- function l() {
9246
- for (var e = [], t = 0; t < arguments.length; t++)
9247
- e[t] = arguments[t];
9248
- var n = e
9249
- , o = n[0]
9250
- , r = Array.prototype.slice.call(n, 1);
9251
- return function() {
9252
- return f(r, function(e, t) {
9253
- return t(e)
9254
- }, o.apply(this, arguments))
9255
- }
9256
- }
9257
- function u(e) {
9258
- for (var t = [], n = 1; n < arguments.length; n++)
9259
- t[n - 1] = arguments[n];
9260
- return function() {
9261
- for (var n = [], o = 0; o < arguments.length; o++)
9262
- n[o] = arguments[o];
9263
- return e.apply(this, t.concat(n))
9264
- }
9265
- }
9266
- function c(e) {
9267
- function t(o) {
9268
- return function() {
9269
- for (var r = [], i = 0; i < arguments.length; i++)
9270
- r[i] = arguments[i];
9271
- var s, a = o.concat(r);
9272
- return s = a.length >= n ? e.apply(this, a) : t(a)
9273
- }
9274
- }
9275
- var n = e.length;
9276
- return t([])
9277
- }
9278
- function d(e) {
9279
- function t(o) {
9280
- return function() {
9281
- for (var r = [], i = 0; i < arguments.length; i++)
9282
- r[i] = arguments[i];
9283
- var s, a = o.concat(r.reverse());
9284
- return s = a.length >= n ? e.apply(this, a) : t(a)
9285
- }
9286
- }
9287
- var n = e.length;
9288
- return t([])
9289
- }
9290
- Object.defineProperties(n, {
9291
- isFunction: {
9292
- get: function() {
9293
- return o
9294
- }
9295
- },
9296
- proxy: {
9297
- get: function() {
9298
- return r
9299
- }
9300
- },
9301
- throttle: {
9302
- get: function() {
9303
- return i
9304
- }
9305
- },
9306
- throttleAfterHits: {
9307
- get: function() {
9308
- return s
9309
- }
9310
- },
9311
- debounce: {
9312
- get: function() {
9313
- return a
9314
- }
9315
- },
9316
- pipe: {
9317
- get: function() {
9318
- return l
9319
- }
9320
- },
9321
- partial: {
9322
- get: function() {
9323
- return u
9324
- }
9325
- },
9326
- curry: {
9327
- get: function() {
9328
- return c
9329
- }
9330
- },
9331
- curryRight: {
9332
- get: function() {
9333
- return d
9334
- }
9335
- },
9336
- __esModule: {
9337
- value: !0
9338
- }
9339
- });
9340
- var h, f = (h = e("array"),
9341
- h && h.__esModule && h || {
9342
- default: h
9343
- }).arrayReduce
9344
- }
9345
- , {
9346
- array: 43
9347
- }],
9348
- 51: [function(e, t, n) {
9349
- "use strict";
9350
- function o(e) {
9351
- switch (typeof e) {
9352
- case "string":
9353
- case "number":
9354
- return e + "";
9355
- case "object":
9356
- return null === e ? "" : e.toString();
9357
- case "undefined":
9358
- return "";
9359
- default:
9360
- return e.toString()
9361
- }
9362
- }
9363
- function r(e) {
9364
- return "undefined" != typeof e
9365
- }
9366
- function i(e) {
9367
- return "undefined" == typeof e
9368
- }
9369
- function s(e) {
9370
- return null === e || "" === e || i(e)
9371
- }
9372
- Object.defineProperties(n, {
9373
- stringify: {
9374
- get: function() {
9375
- return o
9376
- }
9377
- },
9378
- isDefined: {
9379
- get: function() {
9380
- return r
9381
- }
9382
- },
9383
- isUndefined: {
9384
- get: function() {
9385
- return i
9386
- }
9387
- },
9388
- isEmpty: {
9389
- get: function() {
9390
- return s
9391
- }
9392
- },
9393
- __esModule: {
9394
- value: !0
9395
- }
9396
- })
9397
- }
9398
- , {}],
9399
- 52: [function(e, t, n) {
9400
- "use strict";
9401
- function o(e) {
9402
- var t = typeof e;
9403
- return "number" == t ? !isNaN(e) && isFinite(e) : "string" == t ? !!e.length && (1 == e.length ? /\d/.test(e) : /^\s*[+-]?\s*(?:(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?)|(?:0x[a-f\d]+))\s*$/i.test(e)) : "object" == t && !(!e || "number" != typeof e.valueOf() || e instanceof Date)
9404
- }
9405
- function r(e, t, n) {
9406
- var o = -1;
9407
- for ("function" == typeof t ? (n = t,
9408
- t = e) : o = e - 1; ++o <= t && n(o) !== !1; )
9409
- ;
9410
- }
9411
- function i(e, t, n) {
9412
- var o = e + 1;
9413
- for ("function" == typeof t && (n = t,
9414
- t = 0); --o >= t && n(o) !== !1; )
9415
- ;
9416
- }
9417
- function s(e, t) {
9418
- return t = parseInt(t.toString().replace("%", ""), 10),
9419
- t = parseInt(e * t / 100)
9420
- }
9421
- Object.defineProperties(n, {
9422
- isNumeric: {
9423
- get: function() {
9424
- return o
9425
- }
9426
- },
9427
- rangeEach: {
9428
- get: function() {
9429
- return r
9430
- }
9431
- },
9432
- rangeEachReverse: {
9433
- get: function() {
9434
- return i
9435
- }
9436
- },
9437
- valueAccordingPercent: {
9438
- get: function() {
9439
- return s
9440
- }
9441
- },
9442
- __esModule: {
9443
- value: !0
9444
- }
9445
- })
9446
- }
9447
- , {}],
9448
- 53: [function(e, t, n) {
9449
- "use strict";
9450
- function o(e) {
9451
- var t;
9452
- return Array.isArray(e) ? t = [] : (t = {},
9453
- p(e, function(e, n) {
9454
- "__children" !== n && (e && "object" == typeof e && !Array.isArray(e) ? t[n] = o(e) : Array.isArray(e) ? e.length && "object" == typeof e[0] && !Array.isArray(e[0]) ? t[n] = [o(e[0])] : t[n] = [] : t[n] = null)
9455
- })),
9456
- t
9457
- }
9458
- function r(e, t) {
9459
- return t.prototype.constructor = t,
9460
- e.prototype = new t,
9461
- e.prototype.constructor = e,
9462
- e
9463
- }
9464
- function i(e, t) {
9465
- return p(t, function(t, n) {
9466
- e[n] = t
9467
- }),
9468
- e
9469
- }
9470
- function s(e, t) {
9471
- p(t, function(n, o) {
9472
- t[o] && "object" == typeof t[o] ? (e[o] || (Array.isArray(t[o]) ? e[o] = [] : "[object Date]" === Object.prototype.toString.call(t[o]) ? e[o] = t[o] : e[o] = {}),
9473
- s(e[o], t[o])) : e[o] = t[o]
9474
- })
9475
- }
9476
- function a(e) {
9477
- return "object" == typeof e ? JSON.parse(JSON.stringify(e)) : e
9478
- }
9479
- function l(e) {
9480
- var t = {};
9481
- return p(e, function(e, n) {
9482
- t[n] = e
9483
- }),
9484
- t
9485
- }
9486
- function u(e) {
9487
- for (var t = [], n = 1; n < arguments.length; n++)
9488
- t[n - 1] = arguments[n];
9489
- return e.MIXINS || (e.MIXINS = []),
9490
- y(t, function(t) {
9491
- e.MIXINS.push(t.MIXIN_NAME),
9492
- p(t, function(t, n) {
9493
- if (void 0 !== e.prototype[n])
9494
- throw new Error("Mixin conflict. Property '" + n + "' already exist and cannot be overwritten.");
9495
- if ("function" == typeof t)
9496
- e.prototype[n] = t;
9497
- else {
9498
- var o = function(e, t) {
9499
- e = "_" + e;
9500
- var n = function(e) {
9501
- return (Array.isArray(e) || d(e)) && (e = a(e)),
9502
- e
9503
- };
9504
- return function() {
9505
- return void 0 === this[e] && (this[e] = n(t)),
9506
- this[e]
9507
- }
9508
- }
9509
- , r = function(e) {
9510
- return e = "_" + e,
9511
- function(t) {
9512
- this[e] = t
9513
- }
9514
- };
9515
- Object.defineProperty(e.prototype, n, {
9516
- get: o(n, t),
9517
- set: r(n),
9518
- configurable: !0
9519
- })
9520
- }
9521
- })
9522
- }),
9523
- e
9524
- }
9525
- function c(e, t) {
9526
- return JSON.stringify(e) === JSON.stringify(t)
9527
- }
9528
- function d(e) {
9529
- return "[object Object]" == Object.prototype.toString.call(e)
9530
- }
9531
- function h(e) {
9532
- var t;
9533
- if ("object" == typeof e.__proto__)
9534
- t = e.__proto__;
9535
- else {
9536
- var n, o = e.constructor;
9537
- "function" == typeof e.constructor && (n = o,
9538
- delete e.constructor && (o = e.constructor,
9539
- e.constructor = n)),
9540
- t = o ? o.prototype : null
9541
- }
9542
- return t
9543
- }
9544
- function f(e, t, n, o) {
9545
- o.value = n,
9546
- o.writable = o.writable !== !1,
9547
- o.enumerable = o.enumerable !== !1,
9548
- o.configurable = o.configurable !== !1,
9549
- Object.defineProperty(e, t, o)
9550
- }
9551
- function p(e, t) {
9552
- for (var n in e)
9553
- if ((!e.hasOwnProperty || e.hasOwnProperty && e.hasOwnProperty(n)) && t(e[n], n, e) === !1)
9554
- break;
9555
- return e
9556
- }
9557
- function m(e, t) {
9558
- var n = t.split(".")
9559
- , o = e;
9560
- return p(n, function(e) {
9561
- if (o = o[e],
9562
- void 0 === o)
9563
- return o = void 0,
9564
- !1
9565
- }),
9566
- o
9567
- }
9568
- function g(e) {
9569
- if (!d(e))
9570
- return 0;
9571
- var t = function(e) {
9572
- var n = 0;
9573
- return d(e) ? p(e, function(e) {
9574
- n += t(e)
9575
- }) : n++,
9576
- n
9577
- };
9578
- return t(e)
9579
- }
9580
- function w(e) {
9581
- var t, n = void 0 !== arguments[1] ? arguments[1] : "value", o = "_" + n, r = (t = {},
9582
- Object.defineProperty(t, "_touched", {
9583
- value: !1,
9584
- configurable: !0,
9585
- enumerable: !0,
9586
- writable: !0
9587
- }),
9588
- Object.defineProperty(t, o, {
9589
- value: e,
9590
- configurable: !0,
9591
- enumerable: !0,
9592
- writable: !0
9593
- }),
9594
- Object.defineProperty(t, "isTouched", {
9595
- value: function() {
9596
- return this._touched
9597
- },
9598
- configurable: !0,
9599
- enumerable: !0,
9600
- writable: !0
9601
- }),
9602
- t);
9603
- return Object.defineProperty(r, n, {
9604
- get: function() {
9605
- return this[o]
9606
- },
9607
- set: function(e) {
9608
- this._touched = !0,
9609
- this[o] = e
9610
- },
9611
- enumerable: !0,
9612
- configurable: !0
9613
- }),
9614
- r
9615
- }
9616
- Object.defineProperties(n, {
9617
- duckSchema: {
9618
- get: function() {
9619
- return o
9620
- }
9621
- },
9622
- inherit: {
9623
- get: function() {
9624
- return r
9625
- }
9626
- },
9627
- extend: {
9628
- get: function() {
9629
- return i
9630
- }
9631
- },
9632
- deepExtend: {
9633
- get: function() {
9634
- return s
9635
- }
9636
- },
9637
- deepClone: {
9638
- get: function() {
9639
- return a
9640
- }
9641
- },
9642
- clone: {
9643
- get: function() {
9644
- return l
9645
- }
9646
- },
9647
- mixin: {
9648
- get: function() {
9649
- return u
9650
- }
9651
- },
9652
- isObjectEquals: {
9653
- get: function() {
9654
- return c
9655
- }
9656
- },
9657
- isObject: {
9658
- get: function() {
9659
- return d
9660
- }
9661
- },
9662
- getPrototypeOf: {
9663
- get: function() {
9664
- return h
9665
- }
9666
- },
9667
- defineGetter: {
9668
- get: function() {
9669
- return f
9670
- }
9671
- },
9672
- objectEach: {
9673
- get: function() {
9674
- return p
9675
- }
9676
- },
9677
- getProperty: {
9678
- get: function() {
9679
- return m
9680
- }
9681
- },
9682
- deepObjectSize: {
9683
- get: function() {
9684
- return g
9685
- }
9686
- },
9687
- createObjectPropListener: {
9688
- get: function() {
9689
- return w
9690
- }
9691
- },
9692
- __esModule: {
9693
- value: !0
9694
- }
9695
- });
9696
- var v, y = (v = e("array"),
9697
- v && v.__esModule && v || {
9698
- default: v
9699
- }).arrayEach
9700
- }
9701
- , {
9702
- array: 43
9703
- }],
9704
- 54: [function(e, t, n) {
9705
- "use strict";
9706
- function o(e, t) {
9707
- function n() {}
9708
- i(n, e);
9709
- for (var o = 0, r = t.length; o < r; o++)
9710
- n.prototype[t[o]] = void 0;
9711
- return n
9712
- }
9713
- Object.defineProperties(n, {
9714
- columnFactory: {
9715
- get: function() {
9716
- return o
9717
- }
9718
- },
9719
- __esModule: {
9720
- value: !0
9721
- }
9722
- });
9723
- var r, i = (r = e("object"),
9724
- r && r.__esModule && r || {
9725
- default: r
9726
- }).inherit
9727
- }
9728
- , {
9729
- object: 53
9730
- }],
9731
- 55: [function(e, t, n) {
9732
- "use strict";
9733
- function o(e) {
9734
- return e[0].toUpperCase() + e.substr(1)
9735
- }
9736
- function r(e, t) {
9737
- var n = !0;
9738
- return m(t.length - 1, function(o) {
9739
- if (e.charAt(o) !== t.charAt(o))
9740
- return n = !1,
9741
- !1
9742
- }),
9743
- n
9744
- }
9745
- function i(e, t) {
9746
- var n = !0
9747
- , o = t.length - 1
9748
- , r = e.length - 1;
9749
- return m(o, function(i) {
9750
- var s = r - i
9751
- , a = o - i;
9752
- if (e.charAt(s) !== t.charAt(a))
9753
- return n = !1,
9754
- !1
9755
- }),
9756
- n
9757
- }
9758
- function s() {
9759
- for (var e = [], t = 0; t < arguments.length; t++)
9760
- e[t] = arguments[t];
9761
- for (var n = [], o = e.length; o--; ) {
9762
- var r = p(e[o]).toLowerCase();
9763
- n.indexOf(r) === -1 && n.push(r)
9764
- }
9765
- return 1 === n.length
9766
- }
9767
- function a() {
9768
- function e() {
9769
- return Math.floor(65536 * (1 + Math.random())).toString(16).substring(1)
9770
- }
9771
- return e() + e() + e() + e()
9772
- }
9773
- function l(e) {
9774
- return /^([0-9][0-9]?\%$)|(^100\%$)/.test(e)
9775
- }
9776
- function u(e) {
9777
- var t = void 0 !== arguments[1] ? arguments[1] : {};
9778
- return (e + "").replace(/(?:\\)?\[([^\[\]]+)]/g, function(e, n) {
9779
- return "\\" === e.charAt(0) ? e.substr(1, e.length - 1) : void 0 === t[n] ? "" : t[n]
9780
- })
9781
- }
9782
- function c(e, t) {
9783
- var n = void 0 !== arguments[2] ? arguments[2] : " ";
9784
- if (e += "",
9785
- e.length >= t)
9786
- return e;
9787
- n = String(n);
9788
- var o = n.length;
9789
- o || (n = " ");
9790
- var r = t - e.length
9791
- , i = Math.ceil(r / n.length)
9792
- , s = "";
9793
- return m(i, function(e) {
9794
- s += n
9795
- }),
9796
- s = s.slice(0, r),
9797
- s + e
9798
- }
9799
- function d(e) {
9800
- return e += "",
9801
- e.replace(g, "")
9802
- }
9803
- Object.defineProperties(n, {
9804
- toUpperCaseFirst: {
9805
- get: function() {
9806
- return o
9807
- }
9808
- },
9809
- startsWith: {
9810
- get: function() {
9811
- return r
9812
- }
9813
- },
9814
- endsWith: {
9815
- get: function() {
9816
- return i
9817
- }
9818
- },
9819
- equalsIgnoreCase: {
9820
- get: function() {
9821
- return s
9822
- }
9823
- },
9824
- randomString: {
9825
- get: function() {
9826
- return a
9827
- }
9828
- },
9829
- isPercentValue: {
9830
- get: function() {
9831
- return l
9832
- }
9833
- },
9834
- substitute: {
9835
- get: function() {
9836
- return u
9837
- }
9838
- },
9839
- padStart: {
9840
- get: function() {
9841
- return c
9842
- }
9843
- },
9844
- stripTags: {
9845
- get: function() {
9846
- return d
9847
- }
9848
- },
9849
- __esModule: {
9850
- value: !0
9851
- }
9852
- });
9853
- var h, f, p = (h = e("mixed"),
9854
- h && h.__esModule && h || {
9855
- default: h
9856
- }).stringify, m = (f = e("number"),
9857
- f && f.__esModule && f || {
9858
- default: f
9859
- }).rangeEach, g = /<\/?\w+\/?>|<\w+[\s|\/][^>]*>/gi
9860
- }
9861
- , {
9862
- mixed: 51,
9863
- number: 52
9864
- }],
9865
- 56: [function(e, t, n) {
9866
- "use strict";
9867
- function o(e) {
9868
- return 32 == e || e >= 48 && e <= 57 || e >= 96 && e <= 111 || e >= 186 && e <= 192 || e >= 219 && e <= 222 || e >= 226 || e >= 65 && e <= 90
9869
- }
9870
- function r(e) {
9871
- var t = [u.ARROW_DOWN, u.ARROW_UP, u.ARROW_LEFT, u.ARROW_RIGHT, u.HOME, u.END, u.DELETE, u.BACKSPACE, u.F1, u.F2, u.F3, u.F4, u.F5, u.F6, u.F7, u.F8, u.F9, u.F10, u.F11, u.F12, u.TAB, u.PAGE_DOWN, u.PAGE_UP, u.ENTER, u.ESCAPE, u.SHIFT, u.CAPS_LOCK, u.ALT];
9872
- return t.indexOf(e) !== -1
9873
- }
9874
- function i(e) {
9875
- return [u.CONTROL_LEFT, 224, u.COMMAND_LEFT, u.COMMAND_RIGHT].indexOf(e) !== -1
9876
- }
9877
- function s(e, t) {
9878
- var n = t.split("|")
9879
- , o = !1;
9880
- return l(n, function(t) {
9881
- if (e === u[t])
9882
- return o = !0,
9883
- !1
9884
- }),
9885
- o
9886
- }
9887
- Object.defineProperties(n, {
9888
- KEY_CODES: {
9889
- get: function() {
9890
- return u
9891
- }
9892
- },
9893
- isPrintableChar: {
9894
- get: function() {
9895
- return o
9896
- }
9897
- },
9898
- isMetaKey: {
9899
- get: function() {
9900
- return r
9901
- }
9902
- },
9903
- isCtrlKey: {
9904
- get: function() {
9905
- return i
9906
- }
9907
- },
9908
- isKey: {
9909
- get: function() {
9910
- return s
9911
- }
9912
- },
9913
- __esModule: {
9914
- value: !0
9915
- }
9916
- });
9917
- var a, l = (a = e("array"),
9918
- a && a.__esModule && a || {
9919
- default: a
9920
- }).arrayEach, u = {
9921
- MOUSE_LEFT: 1,
9922
- MOUSE_RIGHT: 3,
9923
- MOUSE_MIDDLE: 2,
9924
- BACKSPACE: 8,
9925
- COMMA: 188,
9926
- INSERT: 45,
9927
- DELETE: 46,
9928
- END: 35,
9929
- ENTER: 13,
9930
- ESCAPE: 27,
9931
- CONTROL_LEFT: 91,
9932
- COMMAND_LEFT: 17,
9933
- COMMAND_RIGHT: 93,
9934
- ALT: 18,
9935
- HOME: 36,
9936
- PAGE_DOWN: 34,
9937
- PAGE_UP: 33,
9938
- PERIOD: 190,
9939
- SPACE: 32,
9940
- SHIFT: 16,
9941
- CAPS_LOCK: 20,
9942
- TAB: 9,
9943
- ARROW_RIGHT: 39,
9944
- ARROW_LEFT: 37,
9945
- ARROW_UP: 38,
9946
- ARROW_DOWN: 40,
9947
- F1: 112,
9948
- F2: 113,
9949
- F3: 114,
9950
- F4: 115,
9951
- F5: 116,
9952
- F6: 117,
9953
- F7: 118,
9954
- F8: 119,
9955
- F9: 120,
9956
- F10: 121,
9957
- F11: 122,
9958
- F12: 123,
9959
- A: 65,
9960
- X: 88,
9961
- C: 67,
9962
- V: 86
9963
- }
9964
- }
9965
- , {
9966
- array: 43
9967
- }],
9968
- 57: [function(e, t, n) {
9969
- "use strict";
9970
- Object.defineProperties(n, {
9971
- arrayMapper: {
9972
- get: function() {
9973
- return m
9974
- }
9975
- },
9976
- __esModule: {
9977
- value: !0
9978
- }
9979
- });
9980
- var o, r, i, s, a = (o = e("browser"),
9981
- o && o.__esModule && o || {
9982
- default: o
9983
- }).default, l = (r = e("helpers/array"),
9984
- r && r.__esModule && r || {
9985
- default: r
9986
- }), u = (l.arrayEach,
9987
- l.arrayReduce), c = l.arrayMap, d = l.arrayMax, h = (i = e("helpers/object"),
9988
- i && i.__esModule && i || {
9989
- default: i
9990
- }).defineGetter, f = (s = e("helpers/number"),
9991
- s && s.__esModule && s || {
9992
- default: s
9993
- }).rangeEach, p = "arrayMapper", m = {
9994
- _arrayMap: [],
9995
- getValueByIndex: function(e) {
9996
- var t;
9997
- return void 0 === (t = this._arrayMap[e]) ? null : t
9998
- },
9999
- getIndexByValue: function(e) {
10000
- var t;
10001
- return (t = this._arrayMap.indexOf(e)) === -1 ? null : t
10002
- },
10003
- insertItems: function(e) {
10004
- var t = void 0 !== arguments[1] ? arguments[1] : 1
10005
- , n = this
10006
- , o = d(this._arrayMap) + 1
10007
- , r = [];
10008
- return f(t - 1, function(t) {
10009
- r.push(n._arrayMap.splice(e + t, 0, o + t))
10010
- }),
10011
- r
10012
- },
10013
- removeItems: function(e) {
10014
- var t = void 0 !== arguments[1] ? arguments[1] : 1
10015
- , n = this
10016
- , o = [];
10017
- if (Array.isArray(e)) {
10018
- var r = [].concat(this._arrayMap);
10019
- e.sort(function(e, t) {
10020
- return t - e
10021
- }),
10022
- o = u(e, function(e, t) {
10023
- return n._arrayMap.splice(t, 1),
10024
- e.concat(r.slice(t, t + 1))
10025
- }, [])
10026
- } else
10027
- o = this._arrayMap.splice(e, t);
10028
- return o
10029
- },
10030
- unshiftItems: function(e) {
10031
- function t(e) {
10032
- return u(o, function(t, n) {
10033
- return e > n && t++,
10034
- t
10035
- }, 0)
10036
- }
10037
- var n = void 0 !== arguments[1] ? arguments[1] : 1
10038
- , o = this.removeItems(e, n);
10039
- this._arrayMap = c(this._arrayMap, function(e, n) {
10040
- var o = t(e);
10041
- return o && (e -= o),
10042
- e
10043
- })
10044
- },
10045
- shiftItems: function(e) {
10046
- var t = void 0 !== arguments[1] ? arguments[1] : 1
10047
- , n = this;
10048
- this._arrayMap = c(this._arrayMap, function(n) {
10049
- return n >= e && (n += t),
10050
- n
10051
- }),
10052
- f(t - 1, function(t) {
10053
- n._arrayMap.splice(e + t, 0, e + t)
10054
- })
10055
- },
10056
- clearMap: function() {
10057
- this._arrayMap.length = 0
10058
- }
10059
- };
10060
- h(m, "MIXIN_NAME", p, {
10061
- writable: !1,
10062
- enumerable: !1
10063
- }),
10064
- a.utils.arrayMapper = m
10065
- }
10066
- , {
10067
- browser: 24,
10068
- "helpers/array": 43,
10069
- "helpers/number": 52,
10070
- "helpers/object": 53
10071
- }],
10072
- 58: [function(e, t, n) {
10073
- "use strict";
10074
- Object.defineProperties(n, {
10075
- localHooks: {
10076
- get: function() {
10077
- return c
10078
- }
10079
- },
10080
- __esModule: {
10081
- value: !0
10082
- }
10083
- });
10084
- var o, r, i, s = (o = e("browser"),
10085
- o && o.__esModule && o || {
10086
- default: o
10087
- }).default, a = (r = e("helpers/array"),
10088
- r && r.__esModule && r || {
10089
- default: r
10090
- }).arrayEach, l = (i = e("helpers/object"),
10091
- i && i.__esModule && i || {
10092
- default: i
10093
- }).defineGetter, u = "localHooks", c = {
10094
- _localHooks: Object.create(null),
10095
- addLocalHook: function(e, t) {
10096
- this._localHooks[e] || (this._localHooks[e] = []),
10097
- this._localHooks[e].push(t)
10098
- },
10099
- runLocalHooks: function(e) {
10100
- for (var t = [], n = 1; n < arguments.length; n++)
10101
- t[n - 1] = arguments[n];
10102
- var o = this;
10103
- this._localHooks[e] && a(this._localHooks[e], function(e) {
10104
- return e.apply(o, t)
10105
- })
10106
- },
10107
- clearLocalHooks: function() {
10108
- this._localHooks = {}
10109
- }
10110
- };
10111
- l(c, "MIXIN_NAME", u, {
10112
- writable: !1,
10113
- enumerable: !1
10114
- }),
10115
- s.utils.localHooks = c
10116
- }
10117
- , {
10118
- browser: 24,
10119
- "helpers/array": 43,
10120
- "helpers/object": 53
10121
- }],
10122
- 59: [function(e, t, n) {
10123
- "use strict";
10124
- function o() {
10125
- function e(e) {
10126
- return null !== e && !n(e) && ("string" == typeof e || "number" == typeof e)
10127
- }
10128
- function t(e) {
10129
- return null !== e && ("object" == typeof e || "function" == typeof e)
10130
- }
10131
- function n(e) {
10132
- return e !== e
10133
- }
10134
- var o = {
10135
- arrayMap: [],
10136
- weakMap: new WeakMap
10137
- };
10138
- return {
10139
- get: function(n) {
10140
- return e(n) ? o.arrayMap[n] : t(n) ? o.weakMap.get(n) : void 0
10141
- },
10142
- set: function(n, r) {
10143
- if (e(n))
10144
- o.arrayMap[n] = r;
10145
- else {
10146
- if (!t(n))
10147
- throw new Error("Invalid key type");
10148
- o.weakMap.set(n, r)
10149
- }
10150
- },
10151
- delete: function(n) {
10152
- e(n) ? delete o.arrayMap[n] : t(n) && o.weakMap.delete(n)
10153
- }
10154
- }
10155
- }
10156
- Object.defineProperties(n, {
10157
- MultiMap: {
10158
- get: function() {
10159
- return o
10160
- }
10161
- },
10162
- __esModule: {
10163
- value: !0
10164
- }
10165
- }),
10166
- window.MultiMap = o
10167
- }
10168
- , {}],
10169
- 60: [function(e, t, n) {
10170
- "use strict";
10171
- Object.defineProperties(n, {
10172
- Hooks: {
10173
- get: function() {
10174
- return l
10175
- }
10176
- },
10177
- __esModule: {
10178
- value: !0
10179
- }
10180
- });
10181
- var o, r, i = ["afterCellMetaReset", "afterChange", "afterChangesObserved", "afterContextMenuDefaultOptions", "beforeContextMenuSetItems", "afterDropdownMenuDefaultOptions", "beforeDropdownMenuSetItems", "afterContextMenuHide", "afterContextMenuShow", "afterCopyLimit", "beforeCreateCol", "afterCreateCol", "beforeCreateRow", "afterCreateRow", "afterDeselect", "afterDestroy", "afterDocumentKeyDown", "afterGetCellMeta", "afterGetColHeader", "afterGetRowHeader", "afterInit", "afterLoadData", "afterMomentumScroll", "afterOnCellCornerMouseDown", "afterOnCellCornerDblClick", "afterOnCellMouseDown", "afterOnCellMouseOver", "afterRemoveCol", "afterRemoveRow", "afterRender", "beforeRenderer", "afterRenderer", "afterScrollHorizontally", "afterScrollVertically", "afterSelection", "afterSelectionByProp", "afterSelectionEnd", "afterSelectionEndByProp", "afterSetCellMeta", "afterSetDataAtCell", "afterSetDataAtRowProp", "afterUpdateSettings", "afterValidate", "beforeAutofill", "beforeCellAlignment", "beforeChange", "beforeChangeRender", "beforeDrawBorders", "beforeGetCellMeta", "beforeInit", "beforeInitWalkontable", "beforeKeyDown", "beforeOnCellMouseDown", "beforeOnCellMouseOver", "beforeRemoveCol", "beforeRemoveRow", "beforeRender", "beforeSetRangeStart", "beforeSetRangeEnd", "beforeTouchScroll", "beforeValidate", "beforeValueRender", "construct", "init", "modifyCol", "unmodifyCol", "unmodifyRow", "modifyColHeader", "modifyColWidth", "modifyRow", "modifyRowHeader", "modifyRowHeight", "modifyData", "modifyRowData", "persistentStateLoad", "persistentStateReset", "persistentStateSave", "beforeColumnSort", "afterColumnSort", "modifyAutofillRange", "modifyCopyableRange", "beforeColumnMove", "afterColumnMove", "beforeRowMove", "afterRowMove", "beforeColumnResize", "afterColumnResize", "beforeRowResize", "afterRowResize", "afterGetColumnHeaderRenderers", "afterGetRowHeaderRenderers", "beforeStretchingColumnWidth", "beforeFilter", "afterFilter", "modifyColumnHeaderHeight", "beforeUndo", "afterUndo", "beforeRedo", "afterRedo", "modifyRowHeaderWidth", "beforeAutofillInsidePopulate", "modifyTransformStart", "modifyTransformEnd", "afterModifyTransformStart", "afterModifyTransformEnd", "beforeValueRender", "afterViewportRowCalculatorOverride", "afterViewportColumnCalculatorOverride", "afterPluginsInitialized", "manualRowHeights", "skipLengthCache", "afterTrimRow", "afterUntrimRow", "afterDropdownMenuShow", "afterDropdownMenuHide", "hiddenRow", "hiddenColumn", "beforeAddChild", "afterAddChild", "beforeDetachChild", "afterDetachChild", "afterBeginEditing"], s = (o = e("helpers/array"),
10182
- o && o.__esModule && o || {
10183
- default: o
10184
- }).arrayEach, a = (r = e("helpers/object"),
10185
- r && r.__esModule && r || {
10186
- default: r
10187
- }).objectEach, l = function() {
10188
- this.globalBucket = this.createEmptyBucket()
10189
- };
10190
- $traceurRuntime.createClass(l, {
10191
- createEmptyBucket: function() {
10192
- var e = Object.create(null);
10193
- return s(i, function(t) {
10194
- return e[t] = []
10195
- }),
10196
- e
10197
- },
10198
- getBucket: function() {
10199
- var e = void 0 !== arguments[0] ? arguments[0] : null;
10200
- return e ? (e.pluginHookBucket || (e.pluginHookBucket = this.createEmptyBucket()),
10201
- e.pluginHookBucket) : this.globalBucket
10202
- },
10203
- add: function(e, t) {
10204
- var n = void 0 !== arguments[2] ? arguments[2] : null
10205
- , o = this;
10206
- if (Array.isArray(t))
10207
- s(t, function(t) {
10208
- return o.add(e, t, n)
10209
- });
10210
- else {
10211
- var r = this.getBucket(n);
10212
- "undefined" == typeof r[e] && (this.register(e),
10213
- r[e] = []),
10214
- t.skip = !1,
10215
- r[e].indexOf(t) === -1 && r[e].push(t)
10216
- }
10217
- return this
10218
- },
10219
- once: function(e, t) {
10220
- var n = void 0 !== arguments[2] ? arguments[2] : null
10221
- , o = this;
10222
- Array.isArray(t) ? s(t, function(t) {
10223
- return o.once(e, t, n)
10224
- }) : (t.runOnce = !0,
10225
- this.add(e, t, n))
10226
- },
10227
- remove: function(e, t) {
10228
- var n = void 0 !== arguments[2] ? arguments[2] : null
10229
- , o = this.getBucket(n);
10230
- return "undefined" != typeof o[e] && o[e].indexOf(t) >= 0 && (t.skip = !0,
10231
- !0)
10232
- },
10233
- has: function(e) {
10234
- var t = void 0 !== arguments[1] ? arguments[1] : null
10235
- , n = this.getBucket(t);
10236
- return !(void 0 === n[e] || !n[e].length)
10237
- },
10238
- run: function(e, t, n, o, r, i, s, a) {
10239
- var l = this.globalBucket[t]
10240
- , u = -1
10241
- , c = l ? l.length : 0;
10242
- if (c)
10243
- for (; ++u < c; )
10244
- if (l[u] && !l[u].skip) {
10245
- var d = l[u].call(e, n, o, r, i, s, a);
10246
- void 0 !== d && (n = d),
10247
- l[u] && l[u].runOnce && this.remove(t, l[u])
10248
- }
10249
- var h = this.getBucket(e)[t]
10250
- , f = -1
10251
- , p = h ? h.length : 0;
10252
- if (p)
10253
- for (; ++f < p; )
10254
- if (h[f] && !h[f].skip) {
10255
- var m = h[f].call(e, n, o, r, i, s, a);
10256
- void 0 !== m && (n = m),
10257
- h[f] && h[f].runOnce && this.remove(t, h[f], e)
10258
- }
10259
- return n
10260
- },
10261
- destroy: function() {
10262
- var e = void 0 !== arguments[0] ? arguments[0] : null;
10263
- a(this.getBucket(e), function(e, t, n) {
10264
- return n[t].length = 0
10265
- })
10266
- },
10267
- register: function(e) {
10268
- this.isRegistered(e) || i.push(e)
10269
- },
10270
- deregister: function(e) {
10271
- this.isRegistered(e) && i.splice(i.indexOf(e), 1)
10272
- },
10273
- isRegistered: function(e) {
10274
- return i.indexOf(e) >= 0
10275
- },
10276
- getRegistered: function() {
10277
- return i
10278
- }
10279
- }, {})
10280
- }
10281
- , {
10282
- "helpers/array": 43,
10283
- "helpers/object": 53
10284
- }],
10285
- 61: [function(e, t, n) {
10286
- "use strict";
10287
- function o(e, t) {
10288
- e = h(e),
10289
- c.plugins[e] = t,
10290
- c.hooks.add("construct", function() {
10291
- var n;
10292
- f.has(this) || f.set(this, {}),
10293
- n = f.get(this),
10294
- n[e] || (n[e] = new t(this))
10295
- }),
10296
- c.hooks.add("afterDestroy", function() {
10297
- if (f.has(this)) {
10298
- var e = f.get(this);
10299
- d(e, function(e) {
10300
- return e.destroy()
10301
- }),
10302
- f.delete(this)
10303
- }
10304
- })
10305
- }
10306
- function r(e, t) {
10307
- if ("string" != typeof t)
10308
- throw Error('Only strings can be passed as "plugin" parameter');
10309
- var n = h(t);
10310
- if (f.has(e) && f.get(e)[n])
10311
- return f.get(e)[n]
10312
- }
10313
- function i(e) {
10314
- return f.has(e) ? Object.keys(f.get(e)) : []
10315
- }
10316
- function s(e, t) {
10317
- var n = null;
10318
- return f.has(e) && d(f.get(e), function(e, o) {
10319
- e === t && (n = o)
10320
- }),
10321
- n
10322
- }
10323
- Object.defineProperties(n, {
10324
- registerPlugin: {
10325
- get: function() {
10326
- return o
10327
- }
10328
- },
10329
- getPlugin: {
10330
- get: function() {
10331
- return r
10332
- }
10333
- },
10334
- getRegistredPluginNames: {
10335
- get: function() {
10336
- return i
10337
- }
10338
- },
10339
- getPluginName: {
10340
- get: function() {
10341
- return s
10342
- }
10343
- },
10344
- __esModule: {
10345
- value: !0
10346
- }
10347
- });
10348
- var a, l, u, c = (a = e("browser"),
10349
- a && a.__esModule && a || {
10350
- default: a
10351
- }).default, d = (l = e("helpers/object"),
10352
- l && l.__esModule && l || {
10353
- default: l
10354
- }).objectEach, h = (u = e("helpers/string"),
10355
- u && u.__esModule && u || {
10356
- default: u
10357
- }).toUpperCaseFirst, f = new WeakMap
10358
- }
10359
- , {
10360
- browser: 24,
10361
- "helpers/object": 53,
10362
- "helpers/string": 55
10363
- }],
10364
- 62: [function(e, t, n) {
10365
- "use strict";
10366
- Object.defineProperties(n, {
10367
- default: {
10368
- get: function() {
10369
- return C
10370
- }
10371
- },
10372
- __esModule: {
10373
- value: !0
10374
- }
10375
- });
10376
- var o, r, i, s, a, l = (o = e("browser"),
10377
- o && o.__esModule && o || {
10378
- default: o
10379
- }).default, u = (r = e("helpers/object"),
10380
- r && r.__esModule && r || {
10381
- default: r
10382
- }), c = u.defineGetter, d = u.objectEach, h = (i = e("helpers/array"),
10383
- i && i.__esModule && i || {
10384
- default: i
10385
- }).arrayEach, f = (s = e("utils/recordTranslator"),
10386
- s && s.__esModule && s || {
10387
- default: s
10388
- }), p = (f.registerIdentity,
10389
- f.getTranslator), m = (a = e("plugins"),
10390
- a && a.__esModule && a || {
10391
- default: a
10392
- }), g = m.getRegistredPluginNames, w = m.getPluginName, v = new WeakMap, y = null, b = function(e) {
10393
- var t = this;
10394
- c(this, "hot", e, {
10395
- writable: !1
10396
- }),
10397
- c(this, "t", p(e), {
10398
- writable: !1
10399
- }),
10400
- v.set(this, {
10401
- hooks: {}
10402
- }),
10403
- y = null,
10404
- this.pluginName = null,
10405
- this.pluginsInitializedCallbacks = [],
10406
- this.isPluginsReady = !1,
10407
- this.enabled = !1,
10408
- this.initialized = !1,
10409
- this.hot.addHook("afterPluginsInitialized", function() {
10410
- return t.onAfterPluginsInitialized()
10411
- }),
10412
- this.hot.addHook("afterUpdateSettings", function() {
10413
- return t.onUpdateSettings()
10414
- }),
10415
- this.hot.addHook("beforeInit", function() {
10416
- return t.init()
10417
- })
10418
- };
10419
- $traceurRuntime.createClass(b, {
10420
- init: function() {
10421
- this.pluginName = w(this.hot, this),
10422
- this.isEnabled && this.isEnabled() && this.enablePlugin(),
10423
- y || (y = g(this.hot)),
10424
- y.indexOf(this.pluginName) >= 0 && y.splice(y.indexOf(this.pluginName), 1),
10425
- y.length || this.hot.runHooks("afterPluginsInitialized"),
10426
- this.initialized = !0
10427
- },
10428
- enablePlugin: function() {
10429
- this.enabled = !0
10430
- },
10431
- disablePlugin: function() {
10432
- this.eventManager && this.eventManager.clear(),
10433
- this.clearHooks(),
10434
- this.enabled = !1
10435
- },
10436
- addHook: function(e, t) {
10437
- var n = v.get(this).hooks[e] = v.get(this).hooks[e] || [];
10438
- this.hot.addHook(e, t),
10439
- n.push(t),
10440
- v.get(this).hooks[e] = n
10441
- },
10442
- removeHooks: function(e) {
10443
- var t = this;
10444
- h(v.get(this).hooks[e] || [], function(n) {
10445
- t.hot.removeHook(e, n)
10446
- })
10447
- },
10448
- clearHooks: function() {
10449
- var e = this
10450
- , t = v.get(this).hooks;
10451
- d(t, function(t, n) {
10452
- return e.removeHooks(n)
10453
- }),
10454
- t.length = 0
10455
- },
10456
- callOnPluginsReady: function(e) {
10457
- this.isPluginsReady ? e() : this.pluginsInitializedCallbacks.push(e)
10458
- },
10459
- onAfterPluginsInitialized: function() {
10460
- h(this.pluginsInitializedCallbacks, function(e) {
10461
- return e()
10462
- }),
10463
- this.pluginsInitializedCallbacks.length = 0,
10464
- this.isPluginsReady = !0
10465
- },
10466
- onUpdateSettings: function() {
10467
- this.isEnabled && (this.enabled && !this.isEnabled() && this.disablePlugin(),
10468
- !this.enabled && this.isEnabled() && this.enablePlugin(),
10469
- this.enabled && this.isEnabled() && this.updatePlugin())
10470
- },
10471
- updatePlugin: function() {},
10472
- destroy: function() {
10473
- var e = this;
10474
- this.eventManager && this.eventManager.destroy(),
10475
- this.clearHooks(),
10476
- d(this, function(t, n) {
10477
- "hot" !== n && "t" !== n && (e[n] = null)
10478
- }),
10479
- delete this.t,
10480
- delete this.hot
10481
- }
10482
- }, {});
10483
- var C = b;
10484
- l.plugins.BasePlugin = b
10485
- }
10486
- , {
10487
- browser: 24,
10488
- "helpers/array": 43,
10489
- "helpers/object": 53,
10490
- plugins: 61,
10491
- "utils/recordTranslator": 130
10492
- }],
10493
- 63: [function(e, t, n) {
10494
- "use strict";
10495
- Object.defineProperties(n, {
10496
- AutoColumnSize: {
10497
- get: function() {
10498
- return N
10499
- }
10500
- },
10501
- __esModule: {
10502
- value: !0
10503
- }
10504
- });
10505
- var o, r, i, s, a, l, u, c, d, h, f, p = (o = e("_base"),
10506
- o && o.__esModule && o || {
10507
- default: o
10508
- }).default, m = (r = e("helpers/array"),
10509
- r && r.__esModule && r || {
10510
- default: r
10511
- }), g = m.arrayEach, w = m.arrayFilter, v = m.arrayReduce, y = m.arrayMap, b = (i = e("helpers/feature"),
10512
- i && i.__esModule && i || {
10513
- default: i
10514
- }), C = b.cancelAnimationFrame, _ = b.requestAnimationFrame, R = (s = e("helpers/dom/element"),
10515
- s && s.__esModule && s || {
10516
- default: s
10517
- }).isVisible, M = (a = e("utils/ghostTable"),
10518
- a && a.__esModule && a || {
10519
- default: a
10520
- }).GhostTable, S = (l = e("helpers/object"),
10521
- l && l.__esModule && l || {
10522
- default: l
10523
- }), E = S.isObject, O = (S.objectEach,
10524
- u = e("helpers/number"),
10525
- u && u.__esModule && u || {
10526
- default: u
10527
- }), T = O.valueAccordingPercent, k = O.rangeEach, x = (c = e("plugins"),
10528
- c && c.__esModule && c || {
10529
- default: c
10530
- }).registerPlugin, D = (d = e("utils/samplesGenerator"),
10531
- d && d.__esModule && d || {
10532
- default: d
10533
- }).SamplesGenerator, H = (h = e("helpers/string"),
10534
- h && h.__esModule && h || {
10535
- default: h
10536
- }).isPercentValue, A = (f = e("3rdparty/walkontable/src/calculator/viewportColumns"),
10537
- f && f.__esModule && f || {
10538
- default: f
10539
- }).WalkontableViewportColumnsCalculator, P = new WeakMap, N = function(e) {
10540
- var t = this;
10541
- $traceurRuntime.superConstructor(L).call(this, e),
10542
- P.set(this, {
10543
- cachedColumnHeaders: []
10544
- }),
10545
- this.widths = [],
10546
- this.ghostTable = new M(this.hot),
10547
- this.samplesGenerator = new D(function(e, n) {
10548
- return t.hot.getDataAtCell(e, n)
10549
- }
10550
- ),
10551
- this.firstCalculation = !0,
10552
- this.inProgress = !1,
10553
- this.addHook("beforeColumnResize", function(e, n, o) {
10554
- return t.onBeforeColumnResize(e, n, o)
10555
- })
10556
- }, L = N;
10557
- $traceurRuntime.createClass(N, {
10558
- isEnabled: function() {
10559
- return this.hot.getSettings().autoColumnSize !== !1 && !this.hot.getSettings().colWidths
10560
- },
10561
- enablePlugin: function() {
10562
- var e = this;
10563
- if (!this.enabled) {
10564
- var t = this.hot.getSettings().autoColumnSize;
10565
- t && null != t.useHeaders && this.ghostTable.setSetting("useHeaders", t.useHeaders),
10566
- this.addHook("afterLoadData", function() {
10567
- return e.onAfterLoadData()
10568
- }),
10569
- this.addHook("beforeChange", function(t) {
10570
- return e.onBeforeChange(t)
10571
- }),
10572
- this.addHook("beforeRender", function(t) {
10573
- return e.onBeforeRender(t)
10574
- }),
10575
- this.addHook("modifyColWidth", function(t, n) {
10576
- return e.getColumnWidth(n, t)
10577
- }),
10578
- this.addHook("afterInit", function() {
10579
- return e.onAfterInit()
10580
- }),
10581
- $traceurRuntime.superGet(this, L.prototype, "enablePlugin").call(this)
10582
- }
10583
- },
10584
- updatePlugin: function() {
10585
- var e = this.findColumnsWhereHeaderWasChanged();
10586
- e.length && this.clearCache(e),
10587
- $traceurRuntime.superGet(this, L.prototype, "updatePlugin").call(this)
10588
- },
10589
- disablePlugin: function() {
10590
- $traceurRuntime.superGet(this, L.prototype, "disablePlugin").call(this)
10591
- },
10592
- calculateColumnsWidth: function() {
10593
- var e = void 0 !== arguments[0] ? arguments[0] : {
10594
- from: 0,
10595
- to: this.hot.countCols() - 1
10596
- }
10597
- , t = void 0 !== arguments[1] ? arguments[1] : {
10598
- from: 0,
10599
- to: this.hot.countRows() - 1
10600
- }
10601
- , n = void 0 !== arguments[2] && arguments[2]
10602
- , o = this;
10603
- "number" == typeof e && (e = {
10604
- from: e,
10605
- to: e
10606
- }),
10607
- "number" == typeof t && (t = {
10608
- from: t,
10609
- to: t
10610
- }),
10611
- k(e.from, e.to, function(e) {
10612
- if (n || void 0 === o.widths[e] && !o.hot._getColWidthFromSettings(e)) {
10613
- var r = o.samplesGenerator.generateColumnSamples(e, t);
10614
- r.forEach(function(e, t) {
10615
- return o.ghostTable.addColumn(t, e)
10616
- })
10617
- }
10618
- }),
10619
- this.ghostTable.columns.length && (this.ghostTable.getWidths(function(e, t) {
10620
- return o.widths[e] = t
10621
- }),
10622
- this.ghostTable.clean())
10623
- },
10624
- calculateAllColumnsWidth: function() {
10625
- var e = void 0 !== arguments[0] ? arguments[0] : {
10626
- from: 0,
10627
- to: this.hot.countRows() - 1
10628
- }
10629
- , t = this
10630
- , n = 0
10631
- , o = this.hot.countCols() - 1
10632
- , r = null;
10633
- this.inProgress = !0;
10634
- var i = function() {
10635
- return t.hot ? (t.calculateColumnsWidth({
10636
- from: n,
10637
- to: Math.min(n + L.CALCULATION_STEP, o)
10638
- }, e),
10639
- n = n + L.CALCULATION_STEP + 1,
10640
- void (n < o ? r = _(i) : (C(r),
10641
- t.inProgress = !1,
10642
- t.hot.view.wt.wtOverlays.adjustElementsSize(!0),
10643
- t.hot.view.wt.wtOverlays.leftOverlay.needFullRender && t.hot.view.wt.wtOverlays.leftOverlay.clone.draw()))) : (C(r),
10644
- void (t.inProgress = !1))
10645
- };
10646
- this.firstCalculation && this.getSyncCalculationLimit() && (this.calculateColumnsWidth({
10647
- from: 0,
10648
- to: this.getSyncCalculationLimit()
10649
- }, e),
10650
- this.firstCalculation = !1,
10651
- n = this.getSyncCalculationLimit() + 1),
10652
- n < o ? i() : this.inProgress = !1
10653
- },
10654
- setSamplingOptions: function() {
10655
- var e = this.hot.getSettings().autoColumnSize
10656
- , t = e && e.hasOwnProperty("samplingRatio") ? this.hot.getSettings().autoColumnSize.samplingRatio : void 0
10657
- , n = e && e.hasOwnProperty("allowSampleDuplicates") ? this.hot.getSettings().autoColumnSize.allowSampleDuplicates : void 0;
10658
- t && !isNaN(t) && this.samplesGenerator.setSampleCount(parseInt(t, 10)),
10659
- n && this.samplesGenerator.setAllowDuplicates(n)
10660
- },
10661
- recalculateAllColumnsWidth: function() {
10662
- this.hot.view && R(this.hot.view.wt.wtTable.TABLE) && (this.clearCache(),
10663
- this.calculateAllColumnsWidth())
10664
- },
10665
- getSyncCalculationLimit: function() {
10666
- var e = L.SYNC_CALCULATION_LIMIT
10667
- , t = this.hot.countCols() - 1;
10668
- return E(this.hot.getSettings().autoColumnSize) && (e = this.hot.getSettings().autoColumnSize.syncLimit,
10669
- H(e) ? e = T(t, e) : e >>= 0),
10670
- Math.min(e, t)
10671
- },
10672
- getColumnWidth: function(e) {
10673
- var t = arguments[1]
10674
- , n = void 0 === arguments[2] || arguments[2]
10675
- , o = t;
10676
- return void 0 === o && (o = this.widths[e],
10677
- n && "number" == typeof o && (o = Math.max(o, A.DEFAULT_WIDTH))),
10678
- o
10679
- },
10680
- getFirstVisibleColumn: function() {
10681
- var e = this.hot.view.wt;
10682
- return e.wtViewport.columnsVisibleCalculator ? e.wtTable.getFirstVisibleColumn() : e.wtViewport.columnsRenderCalculator ? e.wtTable.getFirstRenderedColumn() : -1
10683
- },
10684
- getLastVisibleColumn: function() {
10685
- var e = this.hot.view.wt;
10686
- return e.wtViewport.columnsVisibleCalculator ? e.wtTable.getLastVisibleColumn() : e.wtViewport.columnsRenderCalculator ? e.wtTable.getLastRenderedColumn() : -1
10687
- },
10688
- findColumnsWhereHeaderWasChanged: function() {
10689
- var e = this.hot.getColHeader()
10690
- , t = P.get(this).cachedColumnHeaders
10691
- , n = v(e, function(e, n, o) {
10692
- var r = t.length;
10693
- return (r - 1 < o || t[o] !== n) && e.push(o),
10694
- r - 1 < o ? t.push(n) : t[o] = n,
10695
- e
10696
- }, []);
10697
- return n
10698
- },
10699
- clearCache: function() {
10700
- var e = void 0 !== arguments[0] ? arguments[0] : []
10701
- , t = this;
10702
- e.length ? g(e, function(e) {
10703
- return t.widths[e] = void 0
10704
- }) : this.widths.length = 0
10705
- },
10706
- isNeedRecalculate: function() {
10707
- return !!w(this.widths, function(e) {
10708
- return void 0 === e
10709
- }).length
10710
- },
10711
- onBeforeRender: function() {
10712
- var e = this.hot.renderCall
10713
- , t = this.hot.countRows();
10714
- t && (this.calculateColumnsWidth({
10715
- from: this.getFirstVisibleColumn(),
10716
- to: this.getLastVisibleColumn()
10717
- }, void 0, e),
10718
- this.isNeedRecalculate() && !this.inProgress && this.calculateAllColumnsWidth())
10719
- },
10720
- onAfterLoadData: function() {
10721
- var e = this;
10722
- this.hot.view ? this.recalculateAllColumnsWidth() : setTimeout(function() {
10723
- e.hot && e.recalculateAllColumnsWidth()
10724
- }, 0)
10725
- },
10726
- onBeforeChange: function(e) {
10727
- var t = this
10728
- , n = y(e, function(e) {
10729
- var n = e
10730
- , o = (n[0],
10731
- n[1]);
10732
- return t.hot.propToCol(o)
10733
- });
10734
- this.clearCache(n)
10735
- },
10736
- onBeforeColumnResize: function(e, t, n) {
10737
- return n && (this.calculateColumnsWidth(e, void 0, !0),
10738
- t = this.getColumnWidth(e, void 0, !1)),
10739
- t
10740
- },
10741
- onAfterInit: function() {
10742
- P.get(this).cachedColumnHeaders = this.hot.getColHeader()
10743
- },
10744
- destroy: function() {
10745
- this.ghostTable.clean(),
10746
- $traceurRuntime.superGet(this, L.prototype, "destroy").call(this)
10747
- }
10748
- }, {
10749
- get CALCULATION_STEP() {
10750
- return 50
10751
- },
10752
- get SYNC_CALCULATION_LIMIT() {
10753
- return 50
10754
- }
10755
- }, p),
10756
- x("autoColumnSize", N)
10757
- }
10758
- , {
10759
- "3rdparty/walkontable/src/calculator/viewportColumns": 4,
10760
- _base: 62,
10761
- "helpers/array": 43,
10762
- "helpers/dom/element": 47,
10763
- "helpers/feature": 49,
10764
- "helpers/number": 52,
10765
- "helpers/object": 53,
10766
- "helpers/string": 55,
10767
- plugins: 61,
10768
- "utils/ghostTable": 128,
10769
- "utils/samplesGenerator": 131
10770
- }],
10771
- 64: [function(e, t, n) {
10772
- "use strict";
10773
- Object.defineProperties(n, {
10774
- AutoRowSize: {
10775
- get: function() {
10776
- return k
10777
- }
10778
- },
10779
- __esModule: {
10780
- value: !0
10781
- }
10782
- });
10783
- var o, r, i, s, a, l, u, c, d, h, f = (o = e("_base"),
10784
- o && o.__esModule && o || {
10785
- default: o
10786
- }).default, p = (r = e("helpers/array"),
10787
- r && r.__esModule && r || {
10788
- default: r
10789
- }), m = (p.arrayEach,
10790
- p.arrayFilter), g = (i = e("helpers/feature"),
10791
- i && i.__esModule && i || {
10792
- default: i
10793
- }), w = g.cancelAnimationFrame, v = g.requestAnimationFrame, y = (s = e("helpers/dom/element"),
10794
- s && s.__esModule && s || {
10795
- default: s
10796
- }).isVisible, b = (a = e("utils/ghostTable"),
10797
- a && a.__esModule && a || {
10798
- default: a
10799
- }).GhostTable, C = (l = e("helpers/object"),
10800
- l && l.__esModule && l || {
10801
- default: l
10802
- }), _ = C.isObject, R = (C.objectEach,
10803
- u = e("helpers/number"),
10804
- u && u.__esModule && u || {
10805
- default: u
10806
- }), M = R.valueAccordingPercent, S = R.rangeEach, E = (c = e("plugins"),
10807
- c && c.__esModule && c || {
10808
- default: c
10809
- }).registerPlugin, O = (d = e("utils/samplesGenerator"),
10810
- d && d.__esModule && d || {
10811
- default: d
10812
- }).SamplesGenerator, T = (h = e("helpers/string"),
10813
- h && h.__esModule && h || {
10814
- default: h
10815
- }).isPercentValue, k = function(e) {
10816
- var t = this;
10817
- $traceurRuntime.superConstructor(x).call(this, e),
10818
- this.heights = [],
10819
- this.ghostTable = new b(this.hot),
10820
- this.samplesGenerator = new O(function(e, n) {
10821
- return e >= 0 ? t.hot.getDataAtCell(e, n) : e === -1 ? t.hot.getColHeader(n) : null
10822
- }
10823
- ),
10824
- this.firstCalculation = !0,
10825
- this.inProgress = !1,
10826
- this.addHook("beforeRowResize", function(e, n, o) {
10827
- return t.onBeforeRowResize(e, n, o)
10828
- })
10829
- }, x = k;
10830
- $traceurRuntime.createClass(k, {
10831
- isEnabled: function() {
10832
- return this.hot.getSettings().autoRowSize === !0 || _(this.hot.getSettings().autoRowSize)
10833
- },
10834
- enablePlugin: function() {
10835
- var e = this;
10836
- this.enabled || (this.setSamplingOptions(),
10837
- this.addHook("afterLoadData", function() {
10838
- return e.onAfterLoadData()
10839
- }),
10840
- this.addHook("beforeChange", function(t) {
10841
- return e.onBeforeChange(t)
10842
- }),
10843
- this.addHook("beforeColumnMove", function() {
10844
- return e.recalculateAllRowsHeight()
10845
- }),
10846
- this.addHook("beforeColumnResize", function() {
10847
- return e.recalculateAllRowsHeight()
10848
- }),
10849
- this.addHook("beforeColumnSort", function() {
10850
- return e.clearCache()
10851
- }),
10852
- this.addHook("beforeRender", function(t) {
10853
- return e.onBeforeRender(t)
10854
- }),
10855
- this.addHook("beforeRowMove", function(t, n) {
10856
- return e.onBeforeRowMove(t, n)
10857
- }),
10858
- this.addHook("modifyRowHeight", function(t, n) {
10859
- return e.getRowHeight(n, t)
10860
- }),
10861
- this.addHook("modifyColumnHeaderHeight", function() {
10862
- return e.getColumnHeaderHeight()
10863
- }),
10864
- $traceurRuntime.superGet(this, x.prototype, "enablePlugin").call(this))
10865
- },
10866
- disablePlugin: function() {
10867
- $traceurRuntime.superGet(this, x.prototype, "disablePlugin").call(this)
10868
- },
10869
- calculateRowsHeight: function() {
10870
- var e = void 0 !== arguments[0] ? arguments[0] : {
10871
- from: 0,
10872
- to: this.hot.countRows() - 1
10873
- }
10874
- , t = void 0 !== arguments[1] ? arguments[1] : {
10875
- from: 0,
10876
- to: this.hot.countCols() - 1
10877
- }
10878
- , n = void 0 !== arguments[2] && arguments[2]
10879
- , o = this;
10880
- if ("number" == typeof e && (e = {
10881
- from: e,
10882
- to: e
10883
- }),
10884
- "number" == typeof t && (t = {
10885
- from: t,
10886
- to: t
10887
- }),
10888
- null !== this.hot.getColHeader(0)) {
10889
- var r = this.samplesGenerator.generateRowSamples(-1, t);
10890
- this.ghostTable.addColumnHeadersRow(r.get(-1))
10891
- }
10892
- S(e.from, e.to, function(e) {
10893
- if (n || void 0 === o.heights[e]) {
10894
- var r = o.samplesGenerator.generateRowSamples(e, t);
10895
- r.forEach(function(e, t) {
10896
- return o.ghostTable.addRow(t, e)
10897
- })
10898
- }
10899
- }),
10900
- this.ghostTable.rows.length && (this.ghostTable.getHeights(function(e, t) {
10901
- return o.heights[e] = t
10902
- }),
10903
- this.ghostTable.clean())
10904
- },
10905
- calculateAllRowsHeight: function() {
10906
- var e = void 0 !== arguments[0] ? arguments[0] : {
10907
- from: 0,
10908
- to: this.hot.countCols() - 1
10909
- }
10910
- , t = this
10911
- , n = 0
10912
- , o = this.hot.countRows() - 1
10913
- , r = null;
10914
- this.inProgress = !0;
10915
- var i = function() {
10916
- return t.hot ? (t.calculateRowsHeight({
10917
- from: n,
10918
- to: Math.min(n + x.CALCULATION_STEP, o)
10919
- }, e),
10920
- n = n + x.CALCULATION_STEP + 1,
10921
- void (n < o ? r = v(i) : (w(r),
10922
- t.inProgress = !1,
10923
- t.hot.view.wt.wtOverlays.adjustElementsSize(!0),
10924
- t.hot.view.wt.wtOverlays.leftOverlay.needFullRender && t.hot.view.wt.wtOverlays.leftOverlay.clone.draw()))) : (w(r),
10925
- void (t.inProgress = !1))
10926
- };
10927
- this.firstCalculation && this.getSyncCalculationLimit() && (this.calculateRowsHeight({
10928
- from: 0,
10929
- to: this.getSyncCalculationLimit()
10930
- }, e),
10931
- this.firstCalculation = !1,
10932
- n = this.getSyncCalculationLimit() + 1),
10933
- n < o ? i() : (this.inProgress = !1,
10934
- this.hot.view.wt.wtOverlays.adjustElementsSize(!1))
10935
- },
10936
- setSamplingOptions: function() {
10937
- var e = this.hot.getSettings().autoRowSize
10938
- , t = e && e.hasOwnProperty("samplingRatio") ? this.hot.getSettings().autoRowSize.samplingRatio : void 0
10939
- , n = e && e.hasOwnProperty("allowSampleDuplicates") ? this.hot.getSettings().autoRowSize.allowSampleDuplicates : void 0;
10940
- t && !isNaN(t) && this.samplesGenerator.setSampleCount(parseInt(t, 10)),
10941
- n && this.samplesGenerator.setAllowDuplicates(n)
10942
- },
10943
- recalculateAllRowsHeight: function() {
10944
- y(this.hot.view.wt.wtTable.TABLE) && (this.clearCache(),
10945
- this.calculateAllRowsHeight());
10946
- },
10947
- getSyncCalculationLimit: function() {
10948
- var e = x.SYNC_CALCULATION_LIMIT
10949
- , t = this.hot.countRows() - 1;
10950
- return _(this.hot.getSettings().autoRowSize) && (e = this.hot.getSettings().autoRowSize.syncLimit,
10951
- T(e) ? e = M(t, e) : e >>= 0),
10952
- Math.min(e, t)
10953
- },
10954
- getRowHeight: function(e) {
10955
- var t = arguments[1]
10956
- , n = t;
10957
- return void 0 !== this.heights[e] && this.heights[e] > (t || 0) && (n = this.heights[e]),
10958
- n
10959
- },
10960
- getColumnHeaderHeight: function() {
10961
- return this.heights[-1]
10962
- },
10963
- getFirstVisibleRow: function() {
10964
- var e = this.hot.view.wt;
10965
- return e.wtViewport.rowsVisibleCalculator ? e.wtTable.getFirstVisibleRow() : e.wtViewport.rowsRenderCalculator ? e.wtTable.getFirstRenderedRow() : -1
10966
- },
10967
- getLastVisibleRow: function() {
10968
- var e = this.hot.view.wt;
10969
- return e.wtViewport.rowsVisibleCalculator ? e.wtTable.getLastVisibleRow() : e.wtViewport.rowsRenderCalculator ? e.wtTable.getLastRenderedRow() : -1
10970
- },
10971
- clearCache: function() {
10972
- this.heights.length = 0,
10973
- this.heights[-1] = void 0
10974
- },
10975
- clearCacheByRange: function(e) {
10976
- var t = this;
10977
- "number" == typeof e && (e = {
10978
- from: e,
10979
- to: e
10980
- }),
10981
- S(Math.min(e.from, e.to), Math.max(e.from, e.to), function(e) {
10982
- return t.heights[e] = void 0
10983
- })
10984
- },
10985
- isNeedRecalculate: function() {
10986
- return !!m(this.heights, function(e) {
10987
- return void 0 === e
10988
- }).length
10989
- },
10990
- onBeforeRender: function() {
10991
- var e = this.hot.renderCall;
10992
- this.calculateRowsHeight({
10993
- from: this.getFirstVisibleRow(),
10994
- to: this.getLastVisibleRow()
10995
- }, void 0, e);
10996
- var t = this.hot.getSettings().fixedRowsBottom;
10997
- if (t) {
10998
- var n = this.hot.countRows() - 1;
10999
- this.calculateRowsHeight({
11000
- from: n - t,
11001
- to: n
11002
- })
11003
- }
11004
- this.isNeedRecalculate() && !this.inProgress && this.calculateAllRowsHeight()
11005
- },
11006
- onBeforeRowMove: function(e, t) {
11007
- this.clearCacheByRange({
11008
- from: e,
11009
- to: t
11010
- }),
11011
- this.calculateAllRowsHeight()
11012
- },
11013
- onBeforeRowResize: function(e, t, n) {
11014
- return n && (this.calculateRowsHeight(e, void 0, !0),
11015
- t = this.getRowHeight(e)),
11016
- t
11017
- },
11018
- onAfterLoadData: function() {
11019
- var e = this;
11020
- this.hot.view ? this.recalculateAllRowsHeight() : setTimeout(function() {
11021
- e.hot && e.recalculateAllRowsHeight()
11022
- }, 0)
11023
- },
11024
- onBeforeChange: function(e) {
11025
- var t = null;
11026
- 1 === e.length ? t = e[0][0] : e.length > 1 && (t = {
11027
- from: e[0][0],
11028
- to: e[e.length - 1][0]
11029
- }),
11030
- null !== t && this.clearCacheByRange(t)
11031
- },
11032
- destroy: function() {
11033
- this.ghostTable.clean(),
11034
- $traceurRuntime.superGet(this, x.prototype, "destroy").call(this)
11035
- }
11036
- }, {
11037
- get CALCULATION_STEP() {
11038
- return 50
11039
- },
11040
- get SYNC_CALCULATION_LIMIT() {
11041
- return 500
11042
- }
11043
- }, f),
11044
- E("autoRowSize", k)
11045
- }
11046
- , {
11047
- _base: 62,
11048
- "helpers/array": 43,
11049
- "helpers/dom/element": 47,
11050
- "helpers/feature": 49,
11051
- "helpers/number": 52,
11052
- "helpers/object": 53,
11053
- "helpers/string": 55,
11054
- plugins: 61,
11055
- "utils/ghostTable": 128,
11056
- "utils/samplesGenerator": 131
11057
- }],
11058
- 65: [function(e, t, n) {
11059
- "use strict";
11060
- Object.defineProperties(n, {
11061
- Autofill: {
11062
- get: function() {
11063
- return T
11064
- }
11065
- },
11066
- __esModule: {
11067
- value: !0
11068
- }
11069
- });
11070
- var o, r, i, s, a, l, u, c, d = (o = e("_base"),
11071
- o && o.__esModule && o || {
11072
- default: o
11073
- }).default, h = (r = e("browser"),
11074
- r && r.__esModule && r || {
11075
- default: r
11076
- }).default, f = (i = e("helpers/array"),
11077
- i && i.__esModule && i || {
11078
- default: i
11079
- }).arrayIncludes, p = (s = e("helpers/dom/element"),
11080
- s && s.__esModule && s || {
11081
- default: s
11082
- }), m = p.offset, g = p.outerHeight, w = p.outerWidth, v = (a = e("eventManager"),
11083
- a && a.__esModule && a || {
11084
- default: a
11085
- }).eventManager, y = (l = e("plugins"),
11086
- l && l.__esModule && l || {
11087
- default: l
11088
- }).registerPlugin, b = (u = e("3rdparty/walkontable/src/cell/coords"),
11089
- u && u.__esModule && u || {
11090
- default: u
11091
- }).WalkontableCellCoords, C = (c = e("utils"),
11092
- c && c.__esModule && c || {
11093
- default: c
11094
- }), _ = C.getDeltas, R = C.getDragDirectionAndRange, M = C.DIRECTIONS, S = C.getMappedFillHandleSetting, E = "insert_row", O = 200, T = function(e) {
11095
- $traceurRuntime.superConstructor(k).call(this, e),
11096
- this.eventManager = v(this),
11097
- this.addingStarted = !1,
11098
- this.mouseDownOnCellCorner = !1,
11099
- this.mouseDragOutside = !1,
11100
- this.handleDraggedCells = 0,
11101
- this.directions = [],
11102
- this.autoInsertRow = !1
11103
- }, k = T;
11104
- $traceurRuntime.createClass(T, {
11105
- isEnabled: function() {
11106
- return this.hot.getSettings().fillHandle
11107
- },
11108
- enablePlugin: function() {
11109
- var e = this;
11110
- this.enabled || (this.mapSettings(),
11111
- this.registerEvents(),
11112
- this.addHook("afterOnCellCornerMouseDown", function(t) {
11113
- return e.onAfterCellCornerMouseDown(t)
11114
- }),
11115
- this.addHook("afterOnCellCornerDblClick", function(t) {
11116
- return e.onCellCornerDblClick(t)
11117
- }),
11118
- this.addHook("beforeOnCellMouseOver", function(t, n, o) {
11119
- return e.onBeforeCellMouseOver(n)
11120
- }),
11121
- $traceurRuntime.superGet(this, k.prototype, "enablePlugin").call(this))
11122
- },
11123
- updatePlugin: function() {
11124
- this.disablePlugin(),
11125
- this.enablePlugin(),
11126
- $traceurRuntime.superGet(this, k.prototype, "updatePlugin").call(this)
11127
- },
11128
- disablePlugin: function() {
11129
- this.clearMappedSettings(),
11130
- $traceurRuntime.superGet(this, k.prototype, "disablePlugin").call(this)
11131
- },
11132
- getSelectionData: function() {
11133
- var e = {
11134
- from: this.hot.getSelectedRange().from,
11135
- to: this.hot.getSelectedRange().to
11136
- };
11137
- return this.hot.getData(e.from.row, e.from.col, e.to.row, e.to.col)
11138
- },
11139
- fillIn: function() {
11140
- if (this.hot.view.wt.selections.fill.isEmpty())
11141
- return !1;
11142
- var e = this.hot.view.wt.selections.fill.getCorners();
11143
- this.resetSelectionOfDraggedArea();
11144
- var t = this.getCornersOfSelectedCells()
11145
- , n = R(t, e)
11146
- , o = n.directionOfDrag
11147
- , r = n.startOfDragCoords
11148
- , i = n.endOfDragCoords;
11149
- if (this.hot.runHooks("modifyAutofillRange", t, e),
11150
- r && r.row > -1 && r.col > -1) {
11151
- var s = this.getSelectionData()
11152
- , a = _(r, i, s, o);
11153
- this.hot.runHooks("beforeAutofill", r, i, s),
11154
- this.hot.populateFromArray(r.row, r.col, s, i.row, i.col, this.pluginName + ".fill", null, o, a),
11155
- this.setSelection(e)
11156
- } else
11157
- this.hot.selection.refreshBorders();
11158
- return !0
11159
- },
11160
- reduceSelectionAreaIfNeeded: function(e) {
11161
- return e.row < 0 && (e.row = 0),
11162
- e.col < 0 && (e.col = 0),
11163
- e
11164
- },
11165
- getCoordsOfDragAndDropBorders: function(e) {
11166
- var t, n = this.hot.getSelectedRange().getTopLeftCorner(), o = this.hot.getSelectedRange().getBottomRightCorner();
11167
- if (f(this.directions, M.vertical) && (o.row < e.row || n.row > e.row))
11168
- t = new b(e.row,o.col);
11169
- else {
11170
- if (!f(this.directions, M.horizontal))
11171
- return;
11172
- t = new b(o.row,e.col)
11173
- }
11174
- return this.reduceSelectionAreaIfNeeded(t)
11175
- },
11176
- showBorder: function(e) {
11177
- var t = this.getCoordsOfDragAndDropBorders(e);
11178
- t && this.redrawBorders(t)
11179
- },
11180
- addRow: function() {
11181
- var e = this;
11182
- this.hot._registerTimeout(setTimeout(function() {
11183
- e.hot.alter(E, void 0, 1, e.pluginName + ".fill"),
11184
- e.addingStarted = !1
11185
- }, O))
11186
- },
11187
- addNewRowIfNeeded: function() {
11188
- if (this.hot.view.wt.selections.fill.cellRange && this.addingStarted === !1 && this.autoInsertRow) {
11189
- var e = this.hot.getSelected()
11190
- , t = this.hot.view.wt.selections.fill.getCorners()
11191
- , n = this.hot.countRows();
11192
- e[2] < n - 1 && t[2] === n - 1 && (this.addingStarted = !0,
11193
- this.addRow())
11194
- }
11195
- },
11196
- getCornersOfSelectedCells: function() {
11197
- return this.hot.selection.isMultiple() ? this.hot.view.wt.selections.area.getCorners() : this.hot.view.wt.selections.current.getCorners()
11198
- },
11199
- getIndexOfLastAdjacentFilledInRow: function(e) {
11200
- for (var t, n = this.hot.getData(), o = this.hot.countRows(), r = e[2] + 1; r < o; r++) {
11201
- for (var i = e[1]; i <= e[3]; i++) {
11202
- var s = n[r][i];
11203
- if (s)
11204
- return -1
11205
- }
11206
- var a = n[r][e[1] - 1]
11207
- , l = n[r][e[3] + 1];
11208
- (a || l) && (t = r)
11209
- }
11210
- return t
11211
- },
11212
- addSelectionFromStartAreaToSpecificRowIndex: function(e, t) {
11213
- this.hot.view.wt.selections.fill.clear(),
11214
- this.hot.view.wt.selections.fill.add(new b(e[0],e[1])),
11215
- this.hot.view.wt.selections.fill.add(new b(t,e[3]))
11216
- },
11217
- setSelection: function(e) {
11218
- this.hot.selection.setRangeStart(new b(e[0],e[1])),
11219
- this.hot.selection.setRangeEnd(new b(e[2],e[3]))
11220
- },
11221
- selectAdjacent: function() {
11222
- var e = this.getCornersOfSelectedCells()
11223
- , t = this.getIndexOfLastAdjacentFilledInRow(e);
11224
- return t !== -1 && (this.addSelectionFromStartAreaToSpecificRowIndex(e, t),
11225
- !0)
11226
- },
11227
- resetSelectionOfDraggedArea: function() {
11228
- this.handleDraggedCells = 0,
11229
- this.hot.view.wt.selections.fill.clear()
11230
- },
11231
- redrawBorders: function(e) {
11232
- this.hot.view.wt.selections.fill.clear(),
11233
- this.hot.view.wt.selections.fill.add(this.hot.getSelectedRange().from),
11234
- this.hot.view.wt.selections.fill.add(this.hot.getSelectedRange().to),
11235
- this.hot.view.wt.selections.fill.add(e),
11236
- this.hot.view.render()
11237
- },
11238
- getIfMouseWasDraggedOutside: function(e) {
11239
- var t = m(this.hot.table).top - (window.pageYOffset || document.documentElement.scrollTop) + g(this.hot.table)
11240
- , n = m(this.hot.table).left - (window.pageXOffset || document.documentElement.scrollLeft) + w(this.hot.table);
11241
- return e.clientY > t && e.clientX <= n
11242
- },
11243
- registerEvents: function() {
11244
- var e = this;
11245
- this.eventManager.addEventListener(document.documentElement, "mouseup", function() {
11246
- return e.onMouseUp()
11247
- }),
11248
- this.eventManager.addEventListener(document.documentElement, "mousemove", function(t) {
11249
- return e.onMouseMove(t)
11250
- })
11251
- },
11252
- onCellCornerDblClick: function() {
11253
- var e = this.selectAdjacent();
11254
- e && this.fillIn()
11255
- },
11256
- onAfterCellCornerMouseDown: function() {
11257
- this.handleDraggedCells = 1,
11258
- this.mouseDownOnCellCorner = !0
11259
- },
11260
- onBeforeCellMouseOver: function(e) {
11261
- this.mouseDownOnCellCorner && !this.hot.view.isMouseDown() && this.handleDraggedCells && (this.handleDraggedCells++,
11262
- this.showBorder(e),
11263
- this.addNewRowIfNeeded())
11264
- },
11265
- onMouseUp: function() {
11266
- this.handleDraggedCells && (this.handleDraggedCells > 1 && this.fillIn(),
11267
- this.handleDraggedCells = 0,
11268
- this.mouseDownOnCellCorner = !1)
11269
- },
11270
- onMouseMove: function(e) {
11271
- var t = this.getIfMouseWasDraggedOutside(e);
11272
- this.addingStarted === !1 && this.handleDraggedCells > 0 && t ? (this.mouseDragOutside = !0,
11273
- this.addingStarted = !0) : this.mouseDragOutside = !1,
11274
- this.mouseDragOutside && this.autoInsertRow && this.addRow()
11275
- },
11276
- clearMappedSettings: function() {
11277
- this.directions.length = 0,
11278
- this.autoInsertRow = !1
11279
- },
11280
- mapSettings: function() {
11281
- var e = S(this.hot.getSettings().fillHandle);
11282
- this.directions = e.directions,
11283
- this.autoInsertRow = e.autoInsertRow
11284
- },
11285
- destroy: function() {
11286
- $traceurRuntime.superGet(this, k.prototype, "destroy").call(this)
11287
- }
11288
- }, {}, d),
11289
- y("autofill", T),
11290
- h.hooks.register("modifyAutofillRange"),
11291
- h.hooks.register("beforeAutofill")
11292
- }
11293
- , {
11294
- "3rdparty/walkontable/src/cell/coords": 6,
11295
- _base: 62,
11296
- browser: 24,
11297
- eventManager: 42,
11298
- "helpers/array": 43,
11299
- "helpers/dom/element": 47,
11300
- plugins: 61,
11301
- utils: 66
11302
- }],
11303
- 66: [function(e, t, n) {
11304
- "use strict";
11305
- function o(e, t, n, o) {
11306
- var r = n.length
11307
- , i = n ? n[0].length : 0
11308
- , s = []
11309
- , a = t.row - e.row
11310
- , l = t.col - e.col;
11311
- if (["down", "up"].indexOf(o) !== -1) {
11312
- for (var u = [], c = 0; c <= l; c++) {
11313
- var d = parseInt(n[0][c], 10)
11314
- , h = parseInt(n[r - 1][c], 10)
11315
- , f = ("down" === o ? h - d : d - h) / (r - 1) || 0;
11316
- u.push(f)
11317
- }
11318
- s.push(u)
11319
- }
11320
- if (["right", "left"].indexOf(o) !== -1)
11321
- for (var p = 0; p <= a; p++) {
11322
- var m = parseInt(n[p][0], 10)
11323
- , g = parseInt(n[p][i - 1], 10)
11324
- , w = ("right" === o ? g - m : m - g) / (i - 1) || 0;
11325
- s.push([w])
11326
- }
11327
- return s
11328
- }
11329
- function r(e, t) {
11330
- var n, o, r;
11331
- return t[0] === e[0] && t[1] < e[1] ? (r = "left",
11332
- n = new WalkontableCellCoords(t[0],t[1]),
11333
- o = new WalkontableCellCoords(t[2],e[1] - 1)) : t[0] === e[0] && t[3] > e[3] ? (r = "right",
11334
- n = new WalkontableCellCoords(t[0],e[3] + 1),
11335
- o = new WalkontableCellCoords(t[2],t[3])) : t[0] < e[0] && t[1] === e[1] ? (r = "up",
11336
- n = new WalkontableCellCoords(t[0],t[1]),
11337
- o = new WalkontableCellCoords(e[0] - 1,t[3])) : t[2] > e[2] && t[1] === e[1] && (r = "down",
11338
- n = new WalkontableCellCoords(e[2] + 1,t[1]),
11339
- o = new WalkontableCellCoords(t[2],t[3])),
11340
- {
11341
- directionOfDrag: r,
11342
- startOfDragCoords: n,
11343
- endOfDragCoords: o
11344
- }
11345
- }
11346
- function i(e) {
11347
- var t = {};
11348
- return e === !0 ? (t.directions = Object.keys(c),
11349
- t.autoInsertRow = !0) : l(e) ? (u(e.autoInsertRow) ? e.direction === c.horizontal ? t.autoInsertRow = !1 : t.autoInsertRow = e.autoInsertRow : t.autoInsertRow = !1,
11350
- u(e.direction) ? t.directions = [e.direction] : t.directions = Object.keys(c)) : "string" == typeof e ? (t.directions = [e],
11351
- t.autoInsertRow = !0) : (t.directions = [],
11352
- t.autoInsertRow = !1),
11353
- t
11354
- }
11355
- Object.defineProperties(n, {
11356
- DIRECTIONS: {
11357
- get: function() {
11358
- return c
11359
- }
11360
- },
11361
- getDeltas: {
11362
- get: function() {
11363
- return o
11364
- }
11365
- },
11366
- getDragDirectionAndRange: {
11367
- get: function() {
11368
- return r
11369
- }
11370
- },
11371
- getMappedFillHandleSetting: {
11372
- get: function() {
11373
- return i
11374
- }
11375
- },
11376
- __esModule: {
11377
- value: !0
11378
- }
11379
- });
11380
- var s, a, l = (s = e("helpers/object"),
11381
- s && s.__esModule && s || {
11382
- default: s
11383
- }).isObject, u = (a = e("helpers/mixed"),
11384
- a && a.__esModule && a || {
11385
- default: a
11386
- }).isDefined, c = {
11387
- horizontal: "horizontal",
11388
- vertical: "vertical"
11389
- }
11390
- }
11391
- , {
11392
- "helpers/mixed": 51,
11393
- "helpers/object": 53
11394
- }],
11395
- 67: [function(e, t, n) {
11396
- "use strict";
11397
- Object.defineProperties(n, {
11398
- ColumnSorting: {
11399
- get: function() {
11400
- return M
11401
- }
11402
- },
11403
- __esModule: {
11404
- value: !0
11405
- }
11406
- });
11407
- var o, r, i, s, a, l, u, c, d = (o = e("browser"),
11408
- o && o.__esModule && o || {
11409
- default: o
11410
- }).default, h = (r = e("moment"),
11411
- r && r.__esModule && r || {
11412
- default: r
11413
- }).default, f = (i = e("helpers/dom/element"),
11414
- i && i.__esModule && i || {
11415
- default: i
11416
- }), p = f.addClass, m = f.hasClass, g = f.removeClass, w = (s = e("helpers/array"),
11417
- s && s.__esModule && s || {
11418
- default: s
11419
- }), v = w.arrayMap, y = w.arrayReduce, b = (a = e("helpers/mixed"),
11420
- a && a.__esModule && a || {
11421
- default: a
11422
- }).isEmpty, C = (l = e("_base"),
11423
- l && l.__esModule && l || {
11424
- default: l
11425
- }).default, _ = (u = e("plugins"),
11426
- u && u.__esModule && u || {
11427
- default: u
11428
- }).registerPlugin, R = (c = e("utils/sortingAlgorithms/mergeSort"),
11429
- c && c.__esModule && c || {
11430
- default: c
11431
- }).mergeSort;
11432
- d.hooks.register("beforeColumnSort"),
11433
- d.hooks.register("afterColumnSort");
11434
- var M = function(e) {
11435
- $traceurRuntime.superConstructor(S).call(this, e),
11436
- this.sortIndicators = [],
11437
- this.lastSortedColumn = null,
11438
- this.sortEmptyCells = !1
11439
- }
11440
- , S = M;
11441
- $traceurRuntime.createClass(M, {
11442
- isEnabled: function() {
11443
- return !!this.hot.getSettings().columnSorting
11444
- },
11445
- enablePlugin: function() {
11446
- var e = this;
11447
- if (!this.enabled) {
11448
- this.setPluginOptions();
11449
- var t = this;
11450
- this.hot.sortIndex = [],
11451
- this.hot.sort = function() {
11452
- var e = Array.prototype.slice.call(arguments);
11453
- return t.sortByColumn.apply(t, e)
11454
- }
11455
- ,
11456
- "undefined" == typeof this.hot.getSettings().observeChanges && this.enableObserveChangesPlugin(),
11457
- this.addHook("afterTrimRow", function(t) {
11458
- return e.sort()
11459
- }),
11460
- this.addHook("afterUntrimRow", function(t) {
11461
- return e.sort()
11462
- }),
11463
- this.addHook("modifyRow", function(t) {
11464
- return e.translateRow(t)
11465
- }),
11466
- this.addHook("unmodifyRow", function(t) {
11467
- return e.untranslateRow(t)
11468
- }),
11469
- this.addHook("afterUpdateSettings", function() {
11470
- return e.onAfterUpdateSettings()
11471
- }),
11472
- this.addHook("afterGetColHeader", function(t, n) {
11473
- return e.getColHeader(t, n)
11474
- }),
11475
- this.addHook("afterOnCellMouseDown", function(t, n) {
11476
- return e.onAfterOnCellMouseDown(t, n)
11477
- }),
11478
- this.addHook("afterCreateRow", function() {
11479
- t.afterCreateRow.apply(t, arguments)
11480
- }),
11481
- this.addHook("afterRemoveRow", function() {
11482
- t.afterRemoveRow.apply(t, arguments)
11483
- }),
11484
- this.addHook("afterInit", function() {
11485
- return e.sortBySettings()
11486
- }),
11487
- this.addHook("afterLoadData", function() {
11488
- e.hot.sortIndex = [],
11489
- e.hot.view && e.sortBySettings()
11490
- }),
11491
- this.hot.view && this.sortBySettings(),
11492
- $traceurRuntime.superGet(this, S.prototype, "enablePlugin").call(this)
11493
- }
11494
- },
11495
- disablePlugin: function() {
11496
- this.hot.sort = void 0,
11497
- $traceurRuntime.superGet(this, S.prototype, "disablePlugin").call(this)
11498
- },
11499
- onAfterUpdateSettings: function() {
11500
- this.sortBySettings()
11501
- },
11502
- sortBySettings: function() {
11503
- var e, t, n = this.hot.getSettings().columnSorting, o = this.loadSortingState();
11504
- "undefined" == typeof o ? (e = n.column,
11505
- t = n.sortOrder) : (e = o.sortColumn,
11506
- t = o.sortOrder),
11507
- "number" == typeof e && (this.lastSortedColumn = e,
11508
- this.sortByColumn(e, t))
11509
- },
11510
- setSortingColumn: function(e, t) {
11511
- return "undefined" == typeof e ? (this.hot.sortColumn = void 0,
11512
- void (this.hot.sortOrder = void 0)) : (this.hot.sortColumn === e && "undefined" == typeof t ? this.hot.sortOrder === !1 ? this.hot.sortOrder = void 0 : this.hot.sortOrder = !this.hot.sortOrder : this.hot.sortOrder = "undefined" == typeof t || t,
11513
- void (this.hot.sortColumn = e))
11514
- },
11515
- sortByColumn: function(e, t) {
11516
- if (this.setSortingColumn(e, t),
11517
- "undefined" != typeof this.hot.sortColumn) {
11518
- var n = d.hooks.run(this.hot, "beforeColumnSort", this.hot.sortColumn, this.hot.sortOrder);
11519
- n !== !1 && this.sort(),
11520
- this.updateOrderClass(),
11521
- this.updateSortIndicator(),
11522
- d.hooks.run(this.hot, "afterColumnSort", this.hot.sortColumn, this.hot.sortOrder),
11523
- this.hot.render(),
11524
- this.saveSortingState()
11525
- }
11526
- },
11527
- saveSortingState: function() {
11528
- var e = {};
11529
- "undefined" != typeof this.hot.sortColumn && (e.sortColumn = this.hot.sortColumn),
11530
- "undefined" != typeof this.hot.sortOrder && (e.sortOrder = this.hot.sortOrder),
11531
- (e.hasOwnProperty("sortColumn") || e.hasOwnProperty("sortOrder")) && d.hooks.run(this.hot, "persistentStateSave", "columnSorting", e)
11532
- },
11533
- loadSortingState: function() {
11534
- var e = {};
11535
- return d.hooks.run(this.hot, "persistentStateLoad", "columnSorting", e),
11536
- e.value
11537
- },
11538
- updateOrderClass: function() {
11539
- var e;
11540
- this.hot.sortOrder === !0 ? e = "ascending" : this.hot.sortOrder === !1 && (e = "descending"),
11541
- this.sortOrderClass = e
11542
- },
11543
- enableObserveChangesPlugin: function() {
11544
- var e = this;
11545
- this.hot._registerTimeout(setTimeout(function() {
11546
- e.hot.updateSettings({
11547
- observeChanges: !0
11548
- })
11549
- }, 0))
11550
- },
11551
- defaultSort: function(e, t) {
11552
- return function(n, o) {
11553
- return "string" == typeof n[1] && (n[1] = n[1].toLowerCase()),
11554
- "string" == typeof o[1] && (o[1] = o[1].toLowerCase()),
11555
- n[1] === o[1] ? 0 : b(n[1]) ? b(o[1]) ? 0 : t.columnSorting.sortEmptyCells && e ? -1 : 1 : b(o[1]) ? b(n[1]) ? 0 : t.columnSorting.sortEmptyCells && e ? 1 : -1 : isNaN(n[1]) && !isNaN(o[1]) ? e ? 1 : -1 : !isNaN(n[1]) && isNaN(o[1]) ? e ? -1 : 1 : (isNaN(n[1]) || isNaN(o[1]) || (n[1] = parseFloat(n[1]),
11556
- o[1] = parseFloat(o[1])),
11557
- n[1] < o[1] ? e ? -1 : 1 : n[1] > o[1] ? e ? 1 : -1 : 0)
11558
- }
11559
- },
11560
- dateSort: function(e, t) {
11561
- return function(n, o) {
11562
- if (n[1] === o[1])
11563
- return 0;
11564
- if (b(n[1]))
11565
- return b(o[1]) ? 0 : t.columnSorting.sortEmptyCells && e ? -1 : 1;
11566
- if (b(o[1]))
11567
- return b(n[1]) ? 0 : t.columnSorting.sortEmptyCells && e ? 1 : -1;
11568
- var r = h(n[1], t.dateFormat)
11569
- , i = h(o[1], t.dateFormat);
11570
- return r.isValid() ? i.isValid() ? i.isAfter(r) ? e ? -1 : 1 : i.isBefore(r) ? e ? 1 : -1 : 0 : -1 : 1
11571
- }
11572
- },
11573
- numericSort: function(e, t) {
11574
- return function(n, o) {
11575
- var r = parseFloat(n[1])
11576
- , i = parseFloat(o[1]);
11577
- if (r === i || isNaN(r) && isNaN(i))
11578
- return 0;
11579
- if (t.columnSorting.sortEmptyCells) {
11580
- if (b(n[1]))
11581
- return e ? -1 : 1;
11582
- if (b(o[1]))
11583
- return e ? 1 : -1
11584
- }
11585
- return isNaN(r) ? 1 : isNaN(i) ? -1 : r < i ? e ? -1 : 1 : r > i ? e ? 1 : -1 : 0
11586
- }
11587
- },
11588
- sort: function() {
11589
- if ("undefined" == typeof this.hot.sortOrder)
11590
- return void (this.hot.sortIndex.length = 0);
11591
- var e, t, n = this.hot.getCellMeta(0, this.hot.sortColumn), o = this.hot.countEmptyRows();
11592
- this.hot.sortingEnabled = !1,
11593
- this.hot.sortIndex.length = 0,
11594
- "undefined" == typeof n.columnSorting.sortEmptyCells && (n.columnSorting = {
11595
- sortEmptyCells: this.sortEmptyCells
11596
- }),
11597
- t = this.hot.getSettings().maxRows === Number.POSITIVE_INFINITY ? this.hot.countRows() - this.hot.getSettings().minSpareRows : this.hot.countRows() - o;
11598
- for (var r = 0, i = t; r < i; r++)
11599
- this.hot.sortIndex.push([r, this.hot.getDataAtCell(r, this.hot.sortColumn)]);
11600
- if (n.sortFunction)
11601
- e = n.sortFunction;
11602
- else
11603
- switch (n.type) {
11604
- case "date":
11605
- e = this.dateSort;
11606
- break;
11607
- case "numeric":
11608
- e = this.numericSort;
11609
- break;
11610
- default:
11611
- e = this.defaultSort
11612
- }
11613
- R(this.hot.sortIndex, e(this.hot.sortOrder, n));
11614
- for (var s = this.hot.sortIndex.length; s < this.hot.countRows(); s++)
11615
- this.hot.sortIndex.push([s, this.hot.getDataAtCell(s, this.hot.sortColumn)]);
11616
- this.hot.sortingEnabled = !0
11617
- },
11618
- updateSortIndicator: function() {
11619
- if ("undefined" != typeof this.hot.sortOrder) {
11620
- var e = this.hot.getCellMeta(0, this.hot.sortColumn);
11621
- this.sortIndicators[this.hot.sortColumn] = e.sortIndicator
11622
- }
11623
- },
11624
- translateRow: function(e) {
11625
- return this.hot.sortingEnabled && "undefined" != typeof this.hot.sortOrder && this.hot.sortIndex && this.hot.sortIndex.length && this.hot.sortIndex[e] ? this.hot.sortIndex[e][0] : e
11626
- },
11627
- untranslateRow: function(e) {
11628
- if (this.hot.sortingEnabled && this.hot.sortIndex && this.hot.sortIndex.length)
11629
- for (var t = 0; t < this.hot.sortIndex.length; t++)
11630
- if (this.hot.sortIndex[t][0] == e)
11631
- return t
11632
- },
11633
- getColHeader: function(e, t) {
11634
- if (e < 0 || !t.parentNode)
11635
- return !1;
11636
- var n = t.querySelector(".colHeader")
11637
- , o = (t.getAttribute("colspan"),
11638
- t.parentNode.parentNode.childNodes)
11639
- , r = Array.prototype.indexOf.call(o, t.parentNode);
11640
- r -= o.length,
11641
- n && (this.hot.getSettings().columnSorting && e >= 0 && r === -1 && p(n, "columnSorting"),
11642
- g(n, "descending"),
11643
- g(n, "ascending"),
11644
- this.sortIndicators[e] && e === this.hot.sortColumn && ("ascending" === this.sortOrderClass ? p(n, "ascending") : "descending" === this.sortOrderClass && p(n, "descending")))
11645
- },
11646
- isSorted: function() {
11647
- return "undefined" != typeof this.hot.sortColumn
11648
- },
11649
- afterCreateRow: function(e, t) {
11650
- if (this.isSorted()) {
11651
- for (var n = 0; n < this.hot.sortIndex.length; n++)
11652
- this.hot.sortIndex[n][0] >= e && (this.hot.sortIndex[n][0] += t);
11653
- for (var n = 0; n < t; n++)
11654
- this.hot.sortIndex.splice(e + n, 0, [e + n, this.hot.getSourceData()[e + n][this.hot.sortColumn + this.hot.colOffset()]]);
11655
- this.saveSortingState()
11656
- }
11657
- },
11658
- afterRemoveRow: function(e, t) {
11659
- function n(e) {
11660
- return y(o, function(t, n) {
11661
- return e > n && t++,
11662
- t
11663
- }, 0)
11664
- }
11665
- if (this.isSorted()) {
11666
- var o = this.hot.sortIndex.splice(e, t);
11667
- o = v(o, function(e) {
11668
- return e[0]
11669
- }),
11670
- this.hot.sortIndex = v(this.hot.sortIndex, function(e, t) {
11671
- var o = n(e[0]);
11672
- return o && (e[0] -= o),
11673
- e
11674
- }),
11675
- this.saveSortingState()
11676
- }
11677
- },
11678
- setPluginOptions: function() {
11679
- var e = this.hot.getSettings().columnSorting;
11680
- "object" == typeof e ? this.sortEmptyCells = e.sortEmptyCells || !1 : this.sortEmptyCells = !1
11681
- },
11682
- onAfterOnCellMouseDown: function(e, t) {
11683
- t.row > -1 || m(e.realTarget, "columnSorting") && (t.col !== this.lastSortedColumn && (this.hot.sortOrder = !0),
11684
- this.lastSortedColumn = t.col,
11685
- this.sortByColumn(t.col))
11686
- }
11687
- }, {}, C),
11688
- _("columnSorting", M)
11689
- }
11690
- , {
11691
- _base: 62,
11692
- browser: 24,
11693
- "helpers/array": 43,
11694
- "helpers/dom/element": 47,
11695
- "helpers/mixed": 51,
11696
- moment: "moment",
11697
- plugins: 61,
11698
- "utils/sortingAlgorithms/mergeSort": 132
11699
- }],
11700
- 68: [function(e, t, n) {
11701
- "use strict";
11702
- Object.defineProperties(n, {
11703
- CommentEditor: {
11704
- get: function() {
11705
- return i
11706
- }
11707
- },
11708
- __esModule: {
11709
- value: !0
11710
- }
11711
- });
11712
- var o, r = (o = e("helpers/dom/element"),
11713
- o && o.__esModule && o || {
11714
- default: o
11715
- }).addClass, i = function() {
11716
- this.editor = this.createEditor(),
11717
- this.editorStyle = this.editor.style,
11718
- this.hidden = !0,
11719
- this.hide()
11720
- }, s = i;
11721
- $traceurRuntime.createClass(i, {
11722
- setPosition: function(e, t) {
11723
- this.editorStyle.left = e + "px",
11724
- this.editorStyle.top = t + "px"
11725
- },
11726
- setSize: function(e, t) {
11727
- if (e && t) {
11728
- var n = this.getInputElement();
11729
- n.style.width = e + "px",
11730
- n.style.height = t + "px"
11731
- }
11732
- },
11733
- resetSize: function() {
11734
- var e = this.getInputElement();
11735
- e.style.width = "",
11736
- e.style.height = ""
11737
- },
11738
- setReadOnlyState: function(e) {
11739
- var t = this.getInputElement();
11740
- t.readOnly = e
11741
- },
11742
- show: function() {
11743
- this.editorStyle.display = "block",
11744
- this.hidden = !1
11745
- },
11746
- hide: function() {
11747
- this.editorStyle.display = "none",
11748
- this.hidden = !0
11749
- },
11750
- isVisible: function() {
11751
- return "block" === this.editorStyle.display
11752
- },
11753
- setValue: function() {
11754
- var e = void 0 !== arguments[0] ? arguments[0] : "";
11755
- e = e || "",
11756
- this.getInputElement().value = e
11757
- },
11758
- getValue: function() {
11759
- return this.getInputElement().value
11760
- },
11761
- isFocused: function() {
11762
- return document.activeElement === this.getInputElement()
11763
- },
11764
- focus: function() {
11765
- this.getInputElement().focus()
11766
- },
11767
- createEditor: function() {
11768
- var e, t, n = document.querySelector("." + s.CLASS_EDITOR_CONTAINER);
11769
- return n || (n = document.createElement("div"),
11770
- r(n, s.CLASS_EDITOR_CONTAINER),
11771
- document.body.appendChild(n)),
11772
- e = document.createElement("div"),
11773
- r(e, s.CLASS_EDITOR),
11774
- t = document.createElement("textarea"),
11775
- r(t, s.CLASS_INPUT),
11776
- e.appendChild(t),
11777
- n.appendChild(e),
11778
- e
11779
- },
11780
- getInputElement: function() {
11781
- return this.editor.querySelector("." + s.CLASS_INPUT)
11782
- },
11783
- destroy: function() {
11784
- this.editor.parentNode.removeChild(this.editor),
11785
- this.editor = null,
11786
- this.editorStyle = null
11787
- }
11788
- }, {
11789
- get CLASS_EDITOR_CONTAINER() {
11790
- return "htCommentsContainer"
11791
- },
11792
- get CLASS_EDITOR() {
11793
- return "htComments"
11794
- },
11795
- get CLASS_INPUT() {
11796
- return "htCommentTextArea"
11797
- },
11798
- get CLASS_CELL() {
11799
- return "htCommentCell"
11800
- }
11801
- })
11802
- }
11803
- , {
11804
- "helpers/dom/element": 47
11805
- }],
11806
- 69: [function(e, t, n) {
11807
- "use strict";
11808
- var o;
11809
- Object.defineProperties(n, {
11810
- Comments: {
11811
- get: function() {
11812
- return B
11813
- }
11814
- },
11815
- __esModule: {
11816
- value: !0
11817
- }
11818
- });
11819
- var r, i, s, a, l, u, c, d, h, f, p = (r = e("browser"),
11820
- r && r.__esModule && r || {
11821
- default: r
11822
- }).default, m = (i = e("helpers/dom/element"),
11823
- i && i.__esModule && i || {
11824
- default: i
11825
- }), g = m.addClass, w = m.closest, v = m.isChildOf, y = m.hasClass, b = m.offset, C = m.outerWidth, _ = m.outerHeight, R = m.getScrollableElement, M = (s = e("helpers/object"),
11826
- s && s.__esModule && s || {
11827
- default: s
11828
- }), S = M.deepClone, E = M.deepExtend, O = (a = e("helpers/function"),
11829
- a && a.__esModule && a || {
11830
- default: a
11831
- }).debounce, T = (l = e("eventManager"),
11832
- l && l.__esModule && l || {
11833
- default: l
11834
- }).EventManager, k = (u = e("3rdparty/walkontable/src/cell/coords"),
11835
- u && u.__esModule && u || {
11836
- default: u
11837
- }).WalkontableCellCoords, x = (c = e("plugins"),
11838
- c && c.__esModule && c || {
11839
- default: c
11840
- }).registerPlugin, D = (d = e("_base"),
11841
- d && d.__esModule && d || {
11842
- default: d
11843
- }).default, H = (h = e("commentEditor"),
11844
- h && h.__esModule && h || {
11845
- default: h
11846
- }).CommentEditor, A = (f = e("contextMenu/utils"),
11847
- f && f.__esModule && f || {
11848
- default: f
11849
- }), P = A.checkSelectionConsistency, N = A.markLabelAsSelected, L = new WeakMap, I = "comment", W = "value", j = "style", V = "readOnly", B = function(e) {
11850
- $traceurRuntime.superConstructor(F).call(this, e),
11851
- this.editor = null,
11852
- this.eventManager = null,
11853
- this.range = {},
11854
- this.mouseDown = !1,
11855
- this.contextMenuEvent = !1,
11856
- this.timer = null,
11857
- this.displayDelay = 250,
11858
- L.set(this, {
11859
- tempEditorDimensions: {},
11860
- cellBelowCursor: null
11861
- })
11862
- }, F = B;
11863
- $traceurRuntime.createClass(B, (o = {},
11864
- Object.defineProperty(o, "isEnabled", {
11865
- value: function() {
11866
- return !!this.hot.getSettings().comments
11867
- },
11868
- configurable: !0,
11869
- enumerable: !0,
11870
- writable: !0
11871
- }),
11872
- Object.defineProperty(o, "enablePlugin", {
11873
- value: function() {
11874
- var e = this;
11875
- this.enabled || (this.editor || (this.editor = new H),
11876
- this.eventManager || (this.eventManager = new T(this)),
11877
- this.addHook("afterContextMenuDefaultOptions", function(t) {
11878
- return e.addToContextMenu(t)
11879
- }),
11880
- this.addHook("afterRenderer", function(t, n, o, r, i, s) {
11881
- return e.onAfterRenderer(t, s)
11882
- }),
11883
- this.addHook("afterScrollHorizontally", function() {
11884
- return e.hide()
11885
- }),
11886
- this.addHook("afterScrollVertically", function() {
11887
- return e.hide()
11888
- }),
11889
- this.addHook("afterBeginEditing", function(t) {
11890
- return e.onAfterBeginEditing(t)
11891
- }),
11892
- this.registerListeners(),
11893
- $traceurRuntime.superGet(this, F.prototype, "enablePlugin").call(this))
11894
- },
11895
- configurable: !0,
11896
- enumerable: !0,
11897
- writable: !0
11898
- }),
11899
- Object.defineProperty(o, "disablePlugin", {
11900
- value: function() {
11901
- $traceurRuntime.superGet(this, F.prototype, "disablePlugin").call(this)
11902
- },
11903
- configurable: !0,
11904
- enumerable: !0,
11905
- writable: !0
11906
- }),
11907
- Object.defineProperty(o, "registerListeners", {
11908
- value: function() {
11909
- var e = this;
11910
- this.eventManager.addEventListener(document, "mouseover", function(t) {
11911
- return e.onMouseOver(t)
11912
- }),
11913
- this.eventManager.addEventListener(document, "mousedown", function(t) {
11914
- return e.onMouseDown(t)
11915
- }),
11916
- this.eventManager.addEventListener(document, "mouseup", function(t) {
11917
- return e.onMouseUp(t)
11918
- }),
11919
- this.eventManager.addEventListener(this.editor.getInputElement(), "blur", function(t) {
11920
- return e.onEditorBlur(t)
11921
- }),
11922
- this.eventManager.addEventListener(this.editor.getInputElement(), "mousedown", function(t) {
11923
- return e.onEditorMouseDown(t)
11924
- }),
11925
- this.eventManager.addEventListener(this.editor.getInputElement(), "mouseup", function(t) {
11926
- return e.onEditorMouseUp(t)
11927
- })
11928
- },
11929
- configurable: !0,
11930
- enumerable: !0,
11931
- writable: !0
11932
- }),
11933
- Object.defineProperty(o, "setRange", {
11934
- value: function(e) {
11935
- this.range = e
11936
- },
11937
- configurable: !0,
11938
- enumerable: !0,
11939
- writable: !0
11940
- }),
11941
- Object.defineProperty(o, "clearRange", {
11942
- value: function() {
11943
- this.range = {}
11944
- },
11945
- configurable: !0,
11946
- enumerable: !0,
11947
- writable: !0
11948
- }),
11949
- Object.defineProperty(o, "targetIsCellWithComment", {
11950
- value: function(e) {
11951
- var t = w(e.target, "TD", "TBODY");
11952
- return !!(t && y(t, "htCommentCell") && w(t, [this.hot.rootElement]))
11953
- },
11954
- configurable: !0,
11955
- enumerable: !0,
11956
-
1
  /*!
2
+ (The MIT License)
3
 
4
+ Copyright (c) 2012-2014 Marcin Warpechowski
5
+ Copyright (c) 2015 Handsoncode sp. z o.o. <hello@handsoncode.net>
6
 
7
+ Permission is hereby granted, free of charge, to any person obtaining
8
+ a copy of this software and associated documentation files (the
9
+ 'Software'), to deal in the Software without restriction, including
10
+ without limitation the rights to use, copy, modify, merge, publish,
11
+ distribute, sublicense, and/or sell copies of the Software, and to
12
+ permit persons to whom the Software is furnished to do so, subject to
13
+ the following conditions:
14
 
15
+ The above copyright notice and this permission notice shall be
16
+ included in all copies or substantial portions of the Software.
17
 
18
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
19
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
22
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25
 
26
+ */
27
+ !function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,t.Handsontable=e()}}(function(){var e;return function e(t,o,n){function r(a,l){if(!o[a]){if(!t[a]){var u="function"==typeof require&&require;if(!l&&u)return u(a,!0);if(i)return i(a,!0);if(s[a]&&void 0!==window[s[a]])return window[s[a]];var c=new Error("Cannot find module '"+a+"'");throw c.code="MODULE_NOT_FOUND",c}var d=o[a]={exports:{}};t[a][0].call(d.exports,function(e){var o=t[a][1][e];return r(o?o:e)},d,d.exports,e,t,o,n)}return o[a].exports}for(var i="function"==typeof require&&require,s=JSON.parse('{"zeroclipboard":"ZeroClipboard","moment":"moment","numbro":"numbro","pikaday":"Pikaday"}')||{},a=0;a<n.length;a++)r(n[a]);return r}({1:[function(e,t,o){},{}],2:[function(e,t,o){window.jQuery&&function(e){e.fn.handsontable=function(e){var t,o,n,r,i,s=this.first(),a=s.data("handsontable");if("string"!=typeof e)return i=e||{},a?a.updateSettings(i):(a=new Handsontable.Core(s[0],i),s.data("handsontable",a),a.init()),s;if(n=[],arguments.length>1)for(t=1,o=arguments.length;t<o;t++)n.push(arguments[t]);if(a){if(void 0===a[e])throw new Error("Handsontable do not provide action: "+e);r=a[e].apply(a,n),"destroy"===e&&s.removeData()}return r}}(window.jQuery)},{}],3:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableBorder:{get:function(){return C}},__esModule:{value:!0}});var n,r,i,s,a,l,u=(n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n},c=u.getComputedStyle,d=u.getTrimmingContainer,h=u.innerWidth,f=u.innerHeight,p=u.offset,g=u.outerHeight,m=u.outerWidth,w=((r=e("helpers/dom/event"))&&r.__esModule&&r||{default:r}).stopImmediatePropagation,v=((i=e("helpers/browser"))&&i.__esModule&&i||{default:i}).isMobileBrowser,y=((s=e("eventManager"))&&s.__esModule&&s||{default:s}).EventManager,b=((a=e("cell/coords"))&&a.__esModule&&a||{default:a}).WalkontableCellCoords,C=(((l=e("overlay/_base.js"))&&l.__esModule&&l||{default:l}).WalkontableOverlay,function(e,t){t&&(this.eventManager=new y(e),this.instance=e,this.wot=e,this.settings=t,this.mouseDown=!1,this.main=null,this.top=null,this.left=null,this.bottom=null,this.right=null,this.topStyle=null,this.leftStyle=null,this.bottomStyle=null,this.rightStyle=null,this.cornerDefaultStyle={width:"5px",height:"5px",borderWidth:"2px",borderStyle:"solid",borderColor:"#FFF"},this.corner=null,this.cornerStyle=null,this.createBorders(t),this.registerListeners())});$traceurRuntime.createClass(C,{registerListeners:function(){var e=this;this.eventManager.addEventListener(document.body,"mousedown",function(){return e.onMouseDown()}),this.eventManager.addEventListener(document.body,"mouseup",function(){return e.onMouseUp()});for(var t=this,o=0,n=this.main.childNodes.length;o<n;o++)!function(o,n){t.eventManager.addEventListener(t.main.childNodes[o],"mouseenter",function(t){return e.onMouseEnter(t,e.main.childNodes[o])})}(o,n)},onMouseDown:function(){this.mouseDown=!0},onMouseUp:function(){this.mouseDown=!1},onMouseEnter:function(e,t){function o(e){return e.clientY<Math.floor(i.top)||(e.clientY>Math.ceil(i.top+i.height)||(e.clientX<Math.floor(i.left)||(e.clientX>Math.ceil(i.left+i.width)||void 0)))}function n(e){o(e)&&(r.eventManager.removeEventListener(document.body,"mousemove",n),t.style.display="block")}if(this.mouseDown&&this.wot.getSetting("hideBorderOnMouseDownOver")){e.preventDefault(),w(e);var r=this,i=t.getBoundingClientRect();t.style.display="none",this.eventManager.addEventListener(document.body,"mousemove",n)}},createBorders:function(e){this.main=document.createElement("div");var t=["top","left","bottom","right","corner"],o=this.main.style;o.position="absolute",o.top=0,o.left=0;for(var n=0;n<5;n++){var r=t[n],i=document.createElement("div");i.className="wtBorder "+(this.settings.className||""),this.settings[r]&&this.settings[r].hide&&(i.className+=" hidden"),o=i.style,o.backgroundColor=this.settings[r]&&this.settings[r].color?this.settings[r].color:e.border.color,o.height=this.settings[r]&&this.settings[r].width?this.settings[r].width+"px":e.border.width+"px",o.width=this.settings[r]&&this.settings[r].width?this.settings[r].width+"px":e.border.width+"px",this.main.appendChild(i)}this.top=this.main.childNodes[0],this.left=this.main.childNodes[1],this.bottom=this.main.childNodes[2],this.right=this.main.childNodes[3],this.topStyle=this.top.style,this.leftStyle=this.left.style,this.bottomStyle=this.bottom.style,this.rightStyle=this.right.style,this.corner=this.main.childNodes[4],this.corner.className+=" corner",this.cornerStyle=this.corner.style,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.height=this.cornerDefaultStyle.height,this.cornerStyle.border=[this.cornerDefaultStyle.borderWidth,this.cornerDefaultStyle.borderStyle,this.cornerDefaultStyle.borderColor].join(" "),v()&&this.createMultipleSelectorHandles(),this.disappear(),this.wot.wtTable.bordersHolder||(this.wot.wtTable.bordersHolder=document.createElement("div"),this.wot.wtTable.bordersHolder.className="htBorders",this.wot.wtTable.spreader.appendChild(this.wot.wtTable.bordersHolder)),this.wot.wtTable.bordersHolder.insertBefore(this.main,this.wot.wtTable.bordersHolder.firstChild)},createMultipleSelectorHandles:function(){this.selectionHandles={topLeft:document.createElement("DIV"),topLeftHitArea:document.createElement("DIV"),bottomRight:document.createElement("DIV"),bottomRightHitArea:document.createElement("DIV")};this.selectionHandles.topLeft.className="topLeftSelectionHandle",this.selectionHandles.topLeftHitArea.className="topLeftSelectionHandle-HitArea",this.selectionHandles.bottomRight.className="bottomRightSelectionHandle",this.selectionHandles.bottomRightHitArea.className="bottomRightSelectionHandle-HitArea",this.selectionHandles.styles={topLeft:this.selectionHandles.topLeft.style,topLeftHitArea:this.selectionHandles.topLeftHitArea.style,bottomRight:this.selectionHandles.bottomRight.style,bottomRightHitArea:this.selectionHandles.bottomRightHitArea.style};var e={position:"absolute",height:"40px",width:"40px","border-radius":parseInt(40/1.5,10)+"px"};for(var t in e)e.hasOwnProperty(t)&&(this.selectionHandles.styles.bottomRightHitArea[t]=e[t],this.selectionHandles.styles.topLeftHitArea[t]=e[t]);var o={position:"absolute",height:"10px",width:"10px","border-radius":parseInt(10/1.5,10)+"px",background:"#F5F5FF",border:"1px solid #4285c8"};for(var n in o)o.hasOwnProperty(n)&&(this.selectionHandles.styles.bottomRight[n]=o[n],this.selectionHandles.styles.topLeft[n]=o[n]);this.main.appendChild(this.selectionHandles.topLeft),this.main.appendChild(this.selectionHandles.bottomRight),this.main.appendChild(this.selectionHandles.topLeftHitArea),this.main.appendChild(this.selectionHandles.bottomRightHitArea)},isPartRange:function(e,t){return!(!this.wot.selections.area.cellRange||e==this.wot.selections.area.cellRange.to.row&&t==this.wot.selections.area.cellRange.to.col)},updateMultipleSelectionHandlesPosition:function(e,t,o,n,r,i){var s=parseInt(this.selectionHandles.styles.topLeft.width,10),a=parseInt(this.selectionHandles.styles.topLeftHitArea.width,10);this.selectionHandles.styles.topLeft.top=parseInt(o-s,10)+"px",this.selectionHandles.styles.topLeft.left=parseInt(n-s,10)+"px",this.selectionHandles.styles.topLeftHitArea.top=parseInt(o-a/4*3,10)+"px",this.selectionHandles.styles.topLeftHitArea.left=parseInt(n-a/4*3,10)+"px",this.selectionHandles.styles.bottomRight.top=parseInt(o+i,10)+"px",this.selectionHandles.styles.bottomRight.left=parseInt(n+r,10)+"px",this.selectionHandles.styles.bottomRightHitArea.top=parseInt(o+i-a/4,10)+"px",this.selectionHandles.styles.bottomRightHitArea.left=parseInt(n+r-a/4,10)+"px",this.settings.border.multipleSelectionHandlesVisible&&this.settings.border.multipleSelectionHandlesVisible()?(this.selectionHandles.styles.topLeft.display="block",this.selectionHandles.styles.topLeftHitArea.display="block",this.isPartRange(e,t)?(this.selectionHandles.styles.bottomRight.display="none",this.selectionHandles.styles.bottomRightHitArea.display="none"):(this.selectionHandles.styles.bottomRight.display="block",this.selectionHandles.styles.bottomRightHitArea.display="block")):(this.selectionHandles.styles.topLeft.display="none",this.selectionHandles.styles.bottomRight.display="none",this.selectionHandles.styles.topLeftHitArea.display="none",this.selectionHandles.styles.bottomRightHitArea.display="none"),e==this.wot.wtSettings.getSetting("fixedRowsTop")||t==this.wot.wtSettings.getSetting("fixedColumnsLeft")?(this.selectionHandles.styles.topLeft.zIndex="9999",this.selectionHandles.styles.topLeftHitArea.zIndex="9999"):(this.selectionHandles.styles.topLeft.zIndex="",this.selectionHandles.styles.topLeftHitArea.zIndex="")},appear:function(e){if(!this.disabled){var t,o,n,r,i,s,a,l,u,w,y,C,_,R,M,S,E,O;O=this.wot.wtTable.getRenderedRowsCount();for(var T=0;T<O;T++){var k=this.wot.wtTable.rowFilter.renderedToSource(T);if(k>=e[0]&&k<=e[2]){_=k;break}}for(var x=O-1;x>=0;x--){var H=this.wot.wtTable.rowFilter.renderedToSource(x);if(H>=e[0]&&H<=e[2]){M=H;break}}O=this.wot.wtTable.getRenderedColumnsCount();for(var D=0;D<O;D++){var A=this.wot.wtTable.columnFilter.renderedToSource(D);if(A>=e[1]&&A<=e[3]){R=A;break}}for(var P=O-1;P>=0;P--){var L=this.wot.wtTable.columnFilter.renderedToSource(P);if(L>=e[1]&&L<=e[3]){S=L;break}}if(void 0===_||void 0===R)return void this.disappear();t=_!==M||R!==S,o=this.wot.wtTable.getCell(new b(_,R)),n=t?this.wot.wtTable.getCell(new b(M,S)):o,r=p(o),i=t?p(n):r,s=p(this.wot.wtTable.TABLE),l=r.top,y=i.top+g(n)-l,w=r.left,C=i.left+m(n)-w,a=l-s.top-1,u=w-s.left-1;var N=c(o);parseInt(N.borderTopWidth,10)>0&&(a+=1,y=y>0?y-1:0),parseInt(N.borderLeftWidth,10)>0&&(u+=1,C=C>0?C-1:0),this.topStyle.top=a+"px",this.topStyle.left=u+"px",this.topStyle.width=C+"px",this.topStyle.display="block",this.leftStyle.top=a+"px",this.leftStyle.left=u+"px",this.leftStyle.height=y+"px",this.leftStyle.display="block";var I=Math.floor(this.settings.border.width/2);this.bottomStyle.top=a+y-I+"px",this.bottomStyle.left=u+"px",this.bottomStyle.width=C+"px",this.bottomStyle.display="block",this.rightStyle.top=a+"px",this.rightStyle.left=u+C-I+"px",this.rightStyle.height=y+1+"px",this.rightStyle.display="block",v()||!this.hasSetting(this.settings.border.cornerVisible)||this.isPartRange(M,S)?this.cornerStyle.display="none":(this.cornerStyle.top=a+y-4+"px",this.cornerStyle.left=u+C-4+"px",this.cornerStyle.borderRightWidth=this.cornerDefaultStyle.borderWidth,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.display="none",E=d(this.wot.wtTable.TABLE),S===this.wot.getSetting("totalColumns")-1&&n.offsetLeft+m(n)+parseInt(this.cornerDefaultStyle.width)/2>=h(E)&&(this.cornerStyle.left=Math.floor(u+C-3-parseInt(this.cornerDefaultStyle.width)/2)+"px",this.cornerStyle.borderRightWidth=0),M===this.wot.getSetting("totalRows")-1&&n.offsetTop+g(n)+parseInt(this.cornerDefaultStyle.height)/2>=f(E)&&(this.cornerStyle.top=Math.floor(a+y-3-parseInt(this.cornerDefaultStyle.height)/2)+"px",this.cornerStyle.borderBottomWidth=0),this.cornerStyle.display="block"),v()&&this.updateMultipleSelectionHandlesPosition(_,R,a,u,C,y)}},disappear:function(){this.topStyle.display="none",this.leftStyle.display="none",this.bottomStyle.display="none",this.rightStyle.display="none",this.cornerStyle.display="none",v()&&(this.selectionHandles.styles.topLeft.display="none",this.selectionHandles.styles.bottomRight.display="none")},hasSetting:function(e){return"function"==typeof e?e():!!e}},{}),window.WalkontableBorder=C},{"cell/coords":6,eventManager:42,"helpers/browser":44,"helpers/dom/element":47,"helpers/dom/event":48,"overlay/_base.js":12}],4:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableViewportColumnsCalculator:{get:function(){return r}},__esModule:{value:!0}});var n=new WeakMap,r=function(e,t,o,r,i,s,a){var l=void 0!==arguments[7]?arguments[7]:function(e){return e};n.set(this,{viewportWidth:e,scrollOffset:t,totalColumns:o,columnWidthFn:r,overrideFn:i,onlyFullyVisible:s,stretchingColumnWidthFn:l}),this.count=0,this.startColumn=null,this.endColumn=null,this.startPosition=null,this.stretchAllRatio=0,this.stretchLastWidth=0,this.stretch=a,this.totalTargetWidth=0,this.needVerifyLastColumnWidth=!0,this.stretchAllColumnsWidth=[],this.calculate()},i=r;$traceurRuntime.createClass(r,{calculate:function(){for(var e,t=0,o=!0,r=[],i=n.get(this),s=i.onlyFullyVisible,a=i.overrideFn,l=i.scrollOffset,u=i.totalColumns,c=i.viewportWidth,d=0;d<u;d++){e=this._getColumnWidth(d),t<=l&&!s&&(this.startColumn=d);var h=l>0?c+1:c;if(t>=l&&t+e<=l+h&&(null==this.startColumn&&(this.startColumn=d),this.endColumn=d),r.push(t),t+=e,s||(this.endColumn=d),t>=l+c){o=!1;break}}if(this.endColumn===u-1&&o)for(this.startColumn=this.endColumn;this.startColumn>0;){var f=r[this.endColumn]+e-r[this.startColumn-1];if((f<=c||!s)&&this.startColumn--,f>c)break}null!==this.startColumn&&a&&a(this),this.startPosition=r[this.startColumn],void 0==this.startPosition&&(this.startPosition=null),null!==this.startColumn&&(this.count=this.endColumn-this.startColumn+1)},refreshStretching:function(e){if("none"!==this.stretch){this.totalTargetWidth=e;for(var t=n.get(this),o=t.totalColumns,r=0,i=0;i<o;i++){var s=this._getColumnWidth(i),a=t.stretchingColumnWidthFn(void 0,i);"number"==typeof a?e-=a:r+=s}var l=e-r;if("all"===this.stretch&&l>0)this.stretchAllRatio=e/r,this.stretchAllColumnsWidth=[],this.needVerifyLastColumnWidth=!0;else if("last"===this.stretch&&e!==1/0){var u=this._getColumnWidth(o-1),c=l+u;this.stretchLastWidth=c>=0?c:u}}},getStretchedColumnWidth:function(e,t){var o=null;return"all"===this.stretch&&0!==this.stretchAllRatio?o=this._getStretchedAllColumnWidth(e,t):"last"===this.stretch&&0!==this.stretchLastWidth&&(o=this._getStretchedLastColumnWidth(e)),o},_getStretchedAllColumnWidth:function(e,t){var o=0,r=n.get(this),i=r.totalColumns;if(!this.stretchAllColumnsWidth[e]){var s=Math.round(t*this.stretchAllRatio),a=r.stretchingColumnWidthFn(s,e);this.stretchAllColumnsWidth[e]=void 0===a?s:isNaN(a)?this._getColumnWidth(e):a}if(this.stretchAllColumnsWidth.length===i&&this.needVerifyLastColumnWidth){this.needVerifyLastColumnWidth=!1;for(var l=0;l<this.stretchAllColumnsWidth.length;l++)o+=this.stretchAllColumnsWidth[l];o!==this.totalTargetWidth&&(this.stretchAllColumnsWidth[this.stretchAllColumnsWidth.length-1]+=this.totalTargetWidth-o)}return this.stretchAllColumnsWidth[e]},_getStretchedLastColumnWidth:function(e){return e===n.get(this).totalColumns-1?this.stretchLastWidth:null},_getColumnWidth:function(e){var t=n.get(this).columnWidthFn(e);return void 0===t&&(t=i.DEFAULT_WIDTH),t}},{get DEFAULT_WIDTH(){return 50}}),window.WalkontableViewportColumnsCalculator=r},{}],5:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableViewportRowsCalculator:{get:function(){return r}},__esModule:{value:!0}});var n=new WeakMap,r=function(e,t,o,r,i,s,a){n.set(this,{viewportHeight:e,scrollOffset:t,totalRows:o,rowHeightFn:r,overrideFn:i,onlyFullyVisible:s,horizontalScrollbarHeight:a}),this.count=0,this.startRow=null,this.endRow=null,this.startPosition=null,this.calculate()},i=r;$traceurRuntime.createClass(r,{calculate:function(){for(var e=0,t=!0,o=[],r=n.get(this),s=r.onlyFullyVisible,a=r.overrideFn,l=r.rowHeightFn,u=r.scrollOffset,c=r.totalRows,d=r.viewportHeight,h=r.horizontalScrollbarHeight||0,f=0;f<c;f++){var p=l(f);if(void 0===p&&(p=i.DEFAULT_HEIGHT),e<=u&&!s&&(this.startRow=f),e>=u&&e+p<=u+d-h&&(null===this.startRow&&(this.startRow=f),this.endRow=f),o.push(e),e+=p,s||(this.endRow=f),e>=u+d-h){t=!1;break}}if(this.endRow===c-1&&t)for(this.startRow=this.endRow;this.startRow>0;){var g=o[this.endRow]+p-o[this.startRow-1];if((g<=d-h||!s)&&this.startRow--,g>=d-h)break}null!==this.startRow&&a&&a(this),this.startPosition=o[this.startRow],void 0==this.startPosition&&(this.startPosition=null),null!==this.startRow&&(this.count=this.endRow-this.startRow+1)}},{get DEFAULT_HEIGHT(){return 23}}),window.WalkontableViewportRowsCalculator=r},{}],6:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableCellCoords:{get:function(){return n}},__esModule:{value:!0}});var n=function(e,t){void 0!==e&&void 0!==t?(this.row=e,this.col=t):(this.row=null,this.col=null)};$traceurRuntime.createClass(n,{isValid:function(e){return!(this.row<0||this.col<0)&&!(this.row>=e.getSetting("totalRows")||this.col>=e.getSetting("totalColumns"))},isEqual:function(e){return e===this||this.row===e.row&&this.col===e.col},isSouthEastOf:function(e){return this.row>=e.row&&this.col>=e.col},isNorthWestOf:function(e){return this.row<=e.row&&this.col<=e.col},isSouthWestOf:function(e){return this.row>=e.row&&this.col<=e.col},isNorthEastOf:function(e){return this.row<=e.row&&this.col>=e.col}},{}),window.WalkontableCellCoords=n},{}],7:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableCellRange:{get:function(){return i}},__esModule:{value:!0}});var n,r=((n=e("cell/coords"))&&n.__esModule&&n||{default:n}).WalkontableCellCoords,i=function(e,t,o){this.highlight=e,this.from=t,this.to=o},s=i;$traceurRuntime.createClass(i,{isValid:function(e){return this.from.isValid(e)&&this.to.isValid(e)},isSingle:function(){return this.from.row===this.to.row&&this.from.col===this.to.col},getHeight:function(){return Math.max(this.from.row,this.to.row)-Math.min(this.from.row,this.to.row)+1},getWidth:function(){return Math.max(this.from.col,this.to.col)-Math.min(this.from.col,this.to.col)+1},includes:function(e){var t=e,o=t.row,n=t.col,r=this.getTopLeftCorner(),i=this.getBottomRightCorner();return r.row<=o&&i.row>=o&&r.col<=n&&i.col>=n},includesRange:function(e){return this.includes(e.getTopLeftCorner())&&this.includes(e.getBottomRightCorner())},isEqual:function(e){return Math.min(this.from.row,this.to.row)==Math.min(e.from.row,e.to.row)&&Math.max(this.from.row,this.to.row)==Math.max(e.from.row,e.to.row)&&Math.min(this.from.col,this.to.col)==Math.min(e.from.col,e.to.col)&&Math.max(this.from.col,this.to.col)==Math.max(e.from.col,e.to.col)},overlaps:function(e){return e.isSouthEastOf(this.getTopLeftCorner())&&e.isNorthWestOf(this.getBottomRightCorner())},isSouthEastOf:function(e){return this.getTopLeftCorner().isSouthEastOf(e)||this.getBottomRightCorner().isSouthEastOf(e)},isNorthWestOf:function(e){return this.getTopLeftCorner().isNorthWestOf(e)||this.getBottomRightCorner().isNorthWestOf(e)},expand:function(e){var t=this.getTopLeftCorner(),o=this.getBottomRightCorner();return(e.row<t.row||e.col<t.col||e.row>o.row||e.col>o.col)&&(this.from=new r(Math.min(t.row,e.row),Math.min(t.col,e.col)),this.to=new r(Math.max(o.row,e.row),Math.max(o.col,e.col)),!0)},expandByRange:function(e){if(this.includesRange(e)||!this.overlaps(e))return!1;var t=this.getTopLeftCorner(),o=this.getBottomRightCorner(),n=(this.getTopRightCorner(),this.getBottomLeftCorner(),e.getTopLeftCorner()),i=e.getBottomRightCorner(),a=Math.min(t.row,n.row),l=Math.min(t.col,n.col),u=Math.max(o.row,i.row),c=Math.max(o.col,i.col),d=new r(a,l),h=new r(u,c),f=new s(d,d,h).isCorner(this.from,e),p=e.isEqual(new s(d,d,h));return f&&!p&&(this.from.col>d.col&&(d.col=c,h.col=l),this.from.row>d.row&&(d.row=u,h.row=a)),this.from=d,this.to=h,!0},getDirection:function(){return this.from.isNorthWestOf(this.to)?"NW-SE":this.from.isNorthEastOf(this.to)?"NE-SW":this.from.isSouthEastOf(this.to)?"SE-NW":this.from.isSouthWestOf(this.to)?"SW-NE":void 0},setDirection:function(e){var t,o,n,r;switch(e){case"NW-SE":t=[this.getTopLeftCorner(),this.getBottomRightCorner()],this.from=t[0],this.to=t[1];break;case"NE-SW":o=[this.getTopRightCorner(),this.getBottomLeftCorner()],this.from=o[0],this.to=o[1];break;case"SE-NW":n=[this.getBottomRightCorner(),this.getTopLeftCorner()],this.from=n[0],this.to=n[1];break;case"SW-NE":r=[this.getBottomLeftCorner(),this.getTopRightCorner()],this.from=r[0],this.to=r[1]}},getTopLeftCorner:function(){return new r(Math.min(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))},getBottomRightCorner:function(){return new r(Math.max(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))},getTopRightCorner:function(){return new r(Math.min(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))},getBottomLeftCorner:function(){return new r(Math.max(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))},isCorner:function(e,t){return!!(t&&t.includes(e)&&(this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col))||this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col))||this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col))||this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col))))||(e.isEqual(this.getTopLeftCorner())||e.isEqual(this.getTopRightCorner())||e.isEqual(this.getBottomLeftCorner())||e.isEqual(this.getBottomRightCorner()))},getOppositeCorner:function(e,t){if(!(e instanceof r))return!1;if(t&&t.includes(e)){if(this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col)))return this.getBottomRightCorner();if(this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col)))return this.getBottomLeftCorner();if(this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col)))return this.getTopRightCorner();if(this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))return this.getTopLeftCorner()}return e.isEqual(this.getBottomRightCorner())?this.getTopLeftCorner():e.isEqual(this.getTopLeftCorner())?this.getBottomRightCorner():e.isEqual(this.getTopRightCorner())?this.getBottomLeftCorner():e.isEqual(this.getBottomLeftCorner())?this.getTopRightCorner():void 0},getBordersSharedWith:function(e){if(!this.includesRange(e))return[];var t={top:Math.min(this.from.row,this.to.row),bottom:Math.max(this.from.row,this.to.row),left:Math.min(this.from.col,this.to.col),right:Math.max(this.from.col,this.to.col)},o={top:Math.min(e.from.row,e.to.row),bottom:Math.max(e.from.row,e.to.row),left:Math.min(e.from.col,e.to.col),right:Math.max(e.from.col,e.to.col)},n=[];return t.top==o.top&&n.push("top"),t.right==o.right&&n.push("right"),t.bottom==o.bottom&&n.push("bottom"),t.left==o.left&&n.push("left"),n},getInner:function(){for(var e=this.getTopLeftCorner(),t=this.getBottomRightCorner(),o=[],n=e.row;n<=t.row;n++)for(var i=e.col;i<=t.col;i++)this.from.row===n&&this.from.col===i||this.to.row===n&&this.to.col===i||o.push(new r(n,i));return o},getAll:function(){for(var e=this.getTopLeftCorner(),t=this.getBottomRightCorner(),o=[],n=e.row;n<=t.row;n++)for(var i=e.col;i<=t.col;i++)e.row===n&&e.col===i?o.push(e):t.row===n&&t.col===i?o.push(t):o.push(new r(n,i));return o},forAll:function(e){for(var t=this.getTopLeftCorner(),o=this.getBottomRightCorner(),n=t.row;n<=o.row;n++)for(var r=t.col;r<=o.col;r++){var i=e(n,r);if(i===!1)return}}},{}),window.WalkontableCellRange=i},{"cell/coords":6}],8:[function(e,t,o){"use strict";Object.defineProperties(o,{Walkontable:{get:function(){return D}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d,h,f,p,g,m,w=(n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n},v=w.addClass,y=w.fastInnerText,b=w.isVisible,C=w.removeClass,_=((r=e("helpers/object"))&&r.__esModule&&r||{default:r}).objectEach,R=(i=e("helpers/string"))&&i.__esModule&&i||{default:i},M=R.toUpperCaseFirst,S=R.randomString,E=((s=e("event"))&&s.__esModule&&s||{default:s}).WalkontableEvent,O=((a=e("overlays"))&&a.__esModule&&a||{default:a}).WalkontableOverlays,T=((l=e("scroll"))&&l.__esModule&&l||{default:l}).WalkontableScroll,k=((u=e("settings"))&&u.__esModule&&u||{default:u}).WalkontableSettings,x=((c=e("table"))&&c.__esModule&&c||{default:c}).WalkontableTable,H=((d=e("viewport"))&&d.__esModule&&d||{default:d}).WalkontableViewport,D=(((h=e("overlay/_base.js"))&&h.__esModule&&h||{default:h}).WalkontableOverlay,((f=e("overlay/top.js"))&&f.__esModule&&f||{default:f}).WalkontableTopOverlay,((p=e("overlay/left.js"))&&p.__esModule&&p||{default:p}).WalkontableLeftOverlay,((g=e("overlay/debug.js"))&&g.__esModule&&g||{default:g}).WalkontableDebugOverlay,((m=e("overlay/topLeftCorner.js"))&&m.__esModule&&m||{default:m}).WalkontableTopLeftCornerOverlay,function(e){var t=[];if(this.guid="wt_"+S(),e.cloneSource?(this.cloneSource=e.cloneSource,this.cloneOverlay=e.cloneOverlay,this.wtSettings=e.cloneSource.wtSettings,this.wtTable=new x(this,e.table,e.wtRootElement),this.wtScroll=new T(this),this.wtViewport=e.cloneSource.wtViewport,this.wtEvent=new E(this),this.selections=this.cloneSource.selections):(this.wtSettings=new k(this,e),this.wtTable=new x(this,e.table),this.wtScroll=new T(this),this.wtViewport=new H(this),this.wtEvent=new E(this),this.selections=this.getSetting("selections"),this.wtOverlays=new O(this),this.exportSettingsAsClassNames()),this.wtTable.THEAD.childNodes.length&&this.wtTable.THEAD.childNodes[0].childNodes.length){for(var o=0,n=this.wtTable.THEAD.childNodes[0].childNodes.length;o<n;o++)t.push(this.wtTable.THEAD.childNodes[0].childNodes[o].innerHTML);this.getSetting("columnHeaders").length||this.update("columnHeaders",[function(e,o){y(o,t[e])}])}this.drawn=!1,this.drawInterrupted=!1});$traceurRuntime.createClass(D,{draw:function(){var e=void 0!==arguments[0]&&arguments[0];return this.drawInterrupted=!1,e||b(this.wtTable.TABLE)?this.wtTable.draw(e):this.drawInterrupted=!0,this},getCell:function(e){if(void 0===arguments[1]||!arguments[1])return this.wtTable.getCell(e);var t=this.wtSettings.getSetting("totalRows"),o=this.wtSettings.getSetting("fixedRowsTop"),n=this.wtSettings.getSetting("fixedRowsBottom"),r=this.wtSettings.getSetting("fixedColumnsLeft");if(e.row<o&&e.col<r)return this.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell(e);if(e.row<o)return this.wtOverlays.topOverlay.clone.wtTable.getCell(e);if(e.col<r&&e.row>=t-n){if(this.wtOverlays.bottomLeftCornerOverlay&&this.wtOverlays.bottomLeftCornerOverlay.clone)return this.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell(e)}else{if(e.col<r)return this.wtOverlays.leftOverlay.clone.wtTable.getCell(e);if(e.row<t&&e.row>t-n&&this.wtOverlays.bottomOverlay&&this.wtOverlays.bottomOverlay.clone)return this.wtOverlays.bottomOverlay.clone.wtTable.getCell(e)}return this.wtTable.getCell(e)},update:function(e,t){return this.wtSettings.update(e,t)},scrollVertical:function(e){return this.wtOverlays.topOverlay.scrollTo(e),this.getSetting("onScrollVertically"),this},scrollHorizontal:function(e){return this.wtOverlays.leftOverlay.scrollTo(e),this.getSetting("onScrollHorizontally"),this},scrollViewport:function(e){return this.wtScroll.scrollViewport(e),this},getViewport:function(){return[this.wtTable.getFirstVisibleRow(),this.wtTable.getFirstVisibleColumn(),this.wtTable.getLastVisibleRow(),this.wtTable.getLastVisibleColumn()]},getOverlayName:function(){return this.cloneOverlay?this.cloneOverlay.type:"master"},isOverlayName:function(e){return!!this.cloneOverlay&&this.cloneOverlay.type===e},exportSettingsAsClassNames:function(){var e=this,t={rowHeaders:["array"],columnHeaders:["array"]},o=[],n=[];_(t,function(t,r){t.indexOf("array")>-1&&e.getSetting(r).length&&n.push("ht"+M(r)),o.push("ht"+M(r))}),C(this.wtTable.wtRootElement.parentNode,o),v(this.wtTable.wtRootElement.parentNode,n)},getSetting:function(e,t,o,n,r){return this.wtSettings.getSetting(e,t,o,n,r)},hasSetting:function(e){return this.wtSettings.has(e)},destroy:function(){this.wtOverlays.destroy(),this.wtEvent.destroy()}},{}),window.Walkontable=D},{event:9,"helpers/dom/element":47,"helpers/object":53,"helpers/string":55,"overlay/_base.js":12,"overlay/debug.js":13,"overlay/left.js":14,"overlay/top.js":15,"overlay/topLeftCorner.js":16,overlays:17,scroll:18,settings:20,table:21,viewport:23}],9:[function(e,t,o){"use strict";function n(e){var t=this,o=g(e);this.instance=e;var n=[null,null];this.dblClickTimeout=[null,null];var r=function(e){var o=document.activeElement,r=f(h,e.realTarget),i=e.realTarget;if(i!==o&&r(0)!==o&&r(1)!==o){var s=t.parentCell(i);c(i,"corner")?t.instance.getSetting("onCellCornerMouseDown",e,i):s.TD&&t.instance.hasSetting("onCellMouseDown")&&t.instance.getSetting("onCellMouseDown",e,s.coords,s.TD,t.instance),2!==e.button&&s.TD&&(n[0]=s.TD,clearTimeout(t.dblClickTimeout[0]),t.dblClickTimeout[0]=setTimeout(function(){n[0]=null},1e3))}},i=function(e){t.instance.touchMoving=!0},s=function(e){o.addEventListener(this,"touchmove",i),t.checkIfTouchMove=setTimeout(function(){if(t.instance.touchMoving===!0)return t.instance.touchMoving=void 0,void o.removeEventListener("touchmove",i,!1);r(e)},30)},a=function(e){var o,n,r;t.instance.hasSetting("onCellMouseOver")&&(o=t.instance.wtTable.TABLE,n=u(e.realTarget,["TD","TH"],o),r=t.instance.cloneSource||t.instance,n&&n!==r.lastMouseOver&&d(n,o)&&(r.lastMouseOver=n,t.instance.getSetting("onCellMouseOver",e,t.instance.wtTable.getCoords(n),n,t.instance)))},l=function(e){var o,n,r;t.instance.hasSetting("onCellMouseOut")&&(o=t.instance.wtTable.TABLE,n=u(e.realTarget,["TD","TH"],o),r=u(e.relatedTarget,["TD","TH"],o),n&&n!==r&&d(n,o)&&t.instance.getSetting("onCellMouseOut",e,t.instance.wtTable.getCoords(n),n,t.instance))},m=function(e){if(2!==e.button){var o=t.parentCell(e.realTarget);o.TD===n[0]&&o.TD===n[1]?(c(e.realTarget,"corner")?t.instance.getSetting("onCellCornerDblClick",e,o.coords,o.TD,t.instance):t.instance.getSetting("onCellDblClick",e,o.coords,o.TD,t.instance),n[0]=null,n[1]=null):o.TD===n[0]?(t.instance.getSetting("onCellMouseUp",e,o.coords,o.TD,t.instance),n[1]=o.TD,clearTimeout(t.dblClickTimeout[1]),t.dblClickTimeout[1]=setTimeout(function(){n[1]=null},500)):o.TD&&t.instance.hasSetting("onCellMouseUp")&&t.instance.getSetting("onCellMouseUp",e,o.coords,o.TD,t.instance)}},w=function(e){clearTimeout(void 0),e.preventDefault(),m(e)};if(o.addEventListener(this.instance.wtTable.holder,"mousedown",r),o.addEventListener(this.instance.wtTable.TABLE,"mouseover",a),o.addEventListener(this.instance.wtTable.TABLE,"mouseout",l),o.addEventListener(this.instance.wtTable.holder,"mouseup",m),this.instance.wtTable.holder.parentNode.parentNode&&p()&&!t.instance.wtTable.isWorkingOnClone()){var v="."+this.instance.wtTable.holder.parentNode.className.split(" ").join(".");o.addEventListener(this.instance.wtTable.holder,"touchstart",function(e){t.instance.touchApplied=!0,d(e.target,v)&&s.call(e.target,e)}),o.addEventListener(this.instance.wtTable.holder,"touchend",function(e){t.instance.touchApplied=!1,d(e.target,v)&&w.call(e.target,e)}),t.instance.momentumScrolling||(t.instance.momentumScrolling={}),o.addEventListener(this.instance.wtTable.holder,"scroll",function(e){clearTimeout(t.instance.momentumScrolling._timeout),t.instance.momentumScrolling.ongoing||t.instance.getSetting("onBeforeTouchScroll"),t.instance.momentumScrolling.ongoing=!0,t.instance.momentumScrolling._timeout=setTimeout(function(){t.instance.touchApplied||(t.instance.momentumScrolling.ongoing=!1,t.instance.getSetting("onAfterMomentumScroll"))},200)})}o.addEventListener(window,"resize",function(){"none"!==t.instance.getSetting("stretchH")&&t.instance.draw()}),this.destroy=function(){clearTimeout(this.dblClickTimeout[0]),clearTimeout(this.dblClickTimeout[1]),o.destroy()}}Object.defineProperties(o,{WalkontableEvent:{get:function(){return n}},__esModule:{value:!0}});var r,i,s,a,l=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},u=l.closestDown,c=l.hasClass,d=l.isChildOf,h=l.getParent,f=((i=e("helpers/function"))&&i.__esModule&&i||{default:i}).partial,p=((s=e("helpers/browser"))&&s.__esModule&&s||{default:s}).isMobileBrowser,g=((a=e("eventManager"))&&a.__esModule&&a||{default:a}).eventManager;n.prototype.parentCell=function(e){var t={},o=this.instance.wtTable.TABLE,n=u(e,["TD","TH"],o);return n?(t.coords=this.instance.wtTable.getCoords(n),t.TD=n):c(e,"wtBorder")&&c(e,"current")?(t.coords=this.instance.selections.current.cellRange.highlight,t.TD=this.instance.wtTable.getCell(t.coords)):c(e,"wtBorder")&&c(e,"area")&&this.instance.selections.area.cellRange&&(t.coords=this.instance.selections.area.cellRange.to,
28
+ t.TD=this.instance.wtTable.getCell(t.coords)),t},window.WalkontableEvent=n},{eventManager:42,"helpers/browser":44,"helpers/dom/element":47,"helpers/function":50}],10:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableColumnFilter:{get:function(){return n}},__esModule:{value:!0}});var n=function(e,t,o){this.offset=e,this.total=t,this.countTH=o};$traceurRuntime.createClass(n,{offsetted:function(e){return e+this.offset},unOffsetted:function(e){return e-this.offset},renderedToSource:function(e){return this.offsetted(e)},sourceToRendered:function(e){return this.unOffsetted(e)},offsettedTH:function(e){return e-this.countTH},unOffsettedTH:function(e){return e+this.countTH},visibleRowHeadedColumnToSourceColumn:function(e){return this.renderedToSource(this.offsettedTH(e))},sourceColumnToVisibleRowHeadedColumn:function(e){return this.unOffsettedTH(this.sourceToRendered(e))}},{}),window.WalkontableColumnFilter=n},{}],11:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableRowFilter:{get:function(){return n}},__esModule:{value:!0}});var n=function(e,t,o){this.offset=e,this.total=t,this.countTH=o};$traceurRuntime.createClass(n,{offsetted:function(e){return e+this.offset},unOffsetted:function(e){return e-this.offset},renderedToSource:function(e){return this.offsetted(e)},sourceToRendered:function(e){return this.unOffsetted(e)},offsettedTH:function(e){return e-this.countTH},unOffsettedTH:function(e){return e+this.countTH},visibleColHeadedRowToSourceRow:function(e){return this.renderedToSource(this.offsettedTH(e))},sourceRowToVisibleColHeadedRow:function(e){return this.unOffsettedTH(this.sourceToRendered(e))}},{}),window.WalkontableRowFilter=n},{}],12:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableOverlay:{get:function(){return p}},__esModule:{value:!0}});var n,r,i,s,a=(n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n},l=a.getScrollableElement,u=a.getTrimmingContainer,c=((r=e("helpers/object"))&&r.__esModule&&r||{default:r}).defineGetter,d=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayEach,h=((s=e("eventManager"))&&s.__esModule&&s||{default:s}).eventManager,f={},p=function(e){c(this,"wot",e,{writable:!1}),this.instance=this.wot,this.type="",this.mainTableScrollableElement=null,this.TABLE=this.wot.wtTable.TABLE,this.hider=this.wot.wtTable.hider,this.spreader=this.wot.wtTable.spreader,this.holder=this.wot.wtTable.holder,this.wtRootElement=this.wot.wtTable.wtRootElement,this.trimmingContainer=u(this.hider.parentNode.parentNode),this.areElementSizesAdjusted=!1,this.updateStateOfRendering()},g=p;$traceurRuntime.createClass(p,{updateStateOfRendering:function(){var e=this.needFullRender;this.needFullRender=this.shouldBeRendered();var t=e!==this.needFullRender;return t&&!this.needFullRender&&this.reset(),t},shouldBeRendered:function(){return!0},updateTrimmingContainer:function(){this.trimmingContainer=u(this.hider.parentNode.parentNode)},updateMainScrollableElement:function(){this.mainTableScrollableElement=l(this.wot.wtTable.TABLE)},makeClone:function(e){if(g.CLONE_TYPES.indexOf(e)===-1)throw new Error('Clone type "'+e+'" is not supported.');var t=document.createElement("DIV"),o=document.createElement("TABLE");t.className="ht_clone_"+e+" handsontable",t.style.position="absolute",t.style.top=0,t.style.left=0,t.style.overflow="hidden",o.className=this.wot.wtTable.TABLE.className,t.appendChild(o),this.type=e,this.wot.wtTable.wtRootElement.parentNode.appendChild(t);var n=this.wot.getSetting("preventOverflow");return n===!0||"horizontal"===n&&this.type===g.CLONE_TOP||"vertical"===n&&this.type===g.CLONE_LEFT?this.mainTableScrollableElement=window:this.mainTableScrollableElement=l(this.wot.wtTable.TABLE),new Walkontable({cloneSource:this.wot,cloneOverlay:this,table:o})},refresh:function(){var e=void 0!==arguments[0]&&arguments[0],t=this.shouldBeRendered();this.clone&&(this.needFullRender||t)&&this.clone.draw(e),this.needFullRender=t},reset:function(){if(this.clone){var e=this.clone.wtTable.holder,t=this.clone.wtTable.hider;d([e.style,t.style,e.parentNode.style],function(e){e.width="",e.height=""})}},destroy:function(){h(this.clone).destroy()}},{get CLONE_TOP(){return"top"},get CLONE_BOTTOM(){return"bottom"},get CLONE_LEFT(){return"left"},get CLONE_TOP_LEFT_CORNER(){return"top_left_corner"},get CLONE_BOTTOM_LEFT_CORNER(){return"bottom_left_corner"},get CLONE_DEBUG(){return"debug"},get CLONE_TYPES(){return[g.CLONE_TOP,g.CLONE_BOTTOM,g.CLONE_LEFT,g.CLONE_TOP_LEFT_CORNER,g.CLONE_BOTTOM_LEFT_CORNER,g.CLONE_DEBUG]},registerOverlay:function(e,t){if(g.CLONE_TYPES.indexOf(e)===-1)throw new Error("Unsupported overlay ("+e+").");f[e]=t},createOverlay:function(e,t){return new f[e](t)},isOverlayTypeOf:function(e,t){return!(!e||!f[t])&&e instanceof f[t]}}),window.WalkontableOverlay=p},{eventManager:42,"helpers/array":43,"helpers/dom/element":47,"helpers/object":53}],13:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableDebugOverlay:{get:function(){return a}},__esModule:{value:!0}});var n,r,i=((n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n}).addClass,s=((r=e("_base"))&&r.__esModule&&r||{default:r}).WalkontableOverlay,a=function(e){$traceurRuntime.superConstructor(l).call(this,e),this.clone=this.makeClone(s.CLONE_DEBUG),this.clone.wtTable.holder.style.opacity=.4,this.clone.wtTable.holder.style.textShadow="0 0 2px #ff0000",i(this.clone.wtTable.holder.parentNode,"wtDebugVisible")},l=a;$traceurRuntime.createClass(a,{},{},s),window.WalkontableDebugOverlay=a,s.registerOverlay(s.CLONE_DEBUG,a)},{_base:12,"helpers/dom/element":47}],14:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableLeftOverlay:{get:function(){return w}},__esModule:{value:!0}});var n,r,i=(n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n},s=i.addClass,a=i.getScrollbarWidth,l=i.getScrollLeft,u=i.getWindowScrollTop,c=i.hasClass,d=i.outerWidth,h=i.innerHeight,f=i.removeClass,p=i.setOverlayPosition,g=i.resetCssTransform,m=((r=e("_base"))&&r.__esModule&&r||{default:r}).WalkontableOverlay,w=function(e){$traceurRuntime.superConstructor(v).call(this,e),this.clone=this.makeClone(m.CLONE_LEFT)},v=w;$traceurRuntime.createClass(w,{shouldBeRendered:function(){return!(!this.wot.getSetting("fixedColumnsLeft")&&!this.wot.getSetting("rowHeaders").length)},resetFixedPosition:function(){if(this.needFullRender&&this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=0,o=this.wot.getSetting("preventOverflow");if(this.trimmingContainer!==window||o&&"horizontal"===o)t=this.getScrollPosition(),g(e);else{var n,r,i=this.wot.wtTable.hider.getBoundingClientRect(),s=Math.ceil(i.left),a=Math.ceil(i.right);r=this.wot.wtTable.hider.style.top,r=""===r?0:r,n=s<0&&a-e.offsetWidth>0?-s:0,t=n,n+="px",p(e,n,r)}this.adjustHeaderBordersPosition(t),this.adjustElementsSize()}},setScrollPosition:function(e){this.mainTableScrollableElement===window?window.scrollTo(e,u()):this.mainTableScrollableElement.scrollLeft=e},onScroll:function(){this.wot.getSetting("onScrollVertically")},sumCellSizes:function(e,t){for(var o=0,n=this.wot.wtSettings.defaultColumnWidth;e<t;)o+=this.wot.wtTable.getStretchedColumnWidth(e)||n,e++;return o},adjustElementsSize:function(){var e=void 0!==arguments[0]&&arguments[0];this.updateTrimmingContainer(),(this.needFullRender||e)&&(this.adjustRootElementSize(),this.adjustRootChildrenSize(),e||(this.areElementSizesAdjusted=!0))},adjustRootElementSize:function(){var e,t=this.wot.wtTable.holder,o=t.clientHeight===t.offsetHeight?0:a(),n=this.clone.wtTable.holder.parentNode,r=n.style,i=this.wot.getSetting("preventOverflow");if(this.trimmingContainer!==window||"vertical"===i){var s=this.wot.wtViewport.getWorkspaceHeight()-o;s=Math.min(s,h(this.wot.wtTable.wtRootElement)),r.height=s+"px"}else r.height="";this.clone.wtTable.holder.style.height=r.height,e=d(this.clone.wtTable.TABLE),r.width=(0===e?e:e+4)+"px"},adjustRootChildrenSize:function(){var e=a();this.clone.wtTable.hider.style.height=this.hider.style.height,this.clone.wtTable.holder.style.height=this.clone.wtTable.holder.parentNode.style.height,0===e&&(e=30),this.clone.wtTable.holder.style.width=parseInt(this.clone.wtTable.holder.parentNode.style.width,10)+e+"px"},applyToDOM:function(){var e=this.wot.getSetting("totalColumns");if(this.areElementSizesAdjusted||this.adjustElementsSize(),"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition)this.spreader.style.left=this.wot.wtViewport.columnsRenderCalculator.startPosition+"px";else{if(0!==e)throw new Error("Incorrect value of the columnsRenderCalculator");this.spreader.style.left="0"}this.spreader.style.right="",this.needFullRender&&this.syncOverlayOffset()},syncOverlayOffset:function(){"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.top=this.wot.wtViewport.rowsRenderCalculator.startPosition+"px":this.clone.wtTable.spreader.style.top=""},scrollTo:function(e,t){var o=this.getTableParentOffset(),n=this.wot.cloneSource?this.wot.cloneSource:this.wot,r=n.wtTable.holder,i=0;t&&r.offsetWidth!==r.clientWidth&&(i=a()),t?(o+=this.sumCellSizes(0,e+1),o-=this.wot.wtViewport.getViewportWidth()):o+=this.sumCellSizes(this.wot.getSetting("fixedColumnsLeft"),e),o+=i,this.setScrollPosition(o)},getTableParentOffset:function(){var e=this.wot.getSetting("preventOverflow"),t=0;return e||this.trimmingContainer!==window||(t=this.wot.wtTable.holderOffset.left),t},getScrollPosition:function(){return l(this.mainTableScrollableElement)},adjustHeaderBordersPosition:function(e){var t=this.wot.wtTable.holder.parentNode,o=this.wot.getSetting("rowHeaders"),n=this.wot.getSetting("fixedColumnsLeft");if(this.wot.getSetting("totalRows")?f(t,"emptyRows"):s(t,"emptyRows"),n&&!o.length)s(t,"innerBorderLeft");else if(!n&&o.length){var r=c(t,"innerBorderLeft");e?s(t,"innerBorderLeft"):f(t,"innerBorderLeft"),(!r&&e||r&&!e)&&this.wot.wtOverlays.adjustElementsSize()}}},{},m),window.WalkontableLeftOverlay=w,m.registerOverlay(m.CLONE_LEFT,w)},{_base:12,"helpers/dom/element":47}],15:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableTopOverlay:{get:function(){return w}},__esModule:{value:!0}});var n,r,i=(n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n},s=i.addClass,a=i.getScrollbarWidth,l=i.getScrollTop,u=i.getWindowScrollLeft,c=i.hasClass,d=i.outerHeight,h=i.innerWidth,f=i.removeClass,p=i.setOverlayPosition,g=i.resetCssTransform,m=((r=e("_base"))&&r.__esModule&&r||{default:r}).WalkontableOverlay,w=function(e){$traceurRuntime.superConstructor(v).call(this,e),this.clone=this.makeClone(m.CLONE_TOP)},v=w;$traceurRuntime.createClass(w,{shouldBeRendered:function(){return!(!this.wot.getSetting("fixedRowsTop")&&!this.wot.getSetting("columnHeaders").length)},resetFixedPosition:function(){if(this.needFullRender&&this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=0,o=this.wot.getSetting("preventOverflow");if(this.trimmingContainer!==window||o&&"vertical"===o)t=this.getScrollPosition(),g(e);else{var n,r,i=this.wot.wtTable.hider.getBoundingClientRect(),s=Math.ceil(i.top),a=Math.ceil(i.bottom);n=this.wot.wtTable.hider.style.left,n=""===n?0:n,r=s<0&&a-e.offsetHeight>0?-s:0,t=r,r+="px",p(e,n,r)}this.adjustHeaderBordersPosition(t),this.adjustElementsSize()}},setScrollPosition:function(e){this.mainTableScrollableElement===window?window.scrollTo(u(),e):this.mainTableScrollableElement.scrollTop=e},onScroll:function(){this.wot.getSetting("onScrollHorizontally")},sumCellSizes:function(e,t){for(var o=0,n=this.wot.wtSettings.settings.defaultRowHeight;e<t;){var r=this.wot.wtTable.getRowHeight(e);o+=void 0===r?n:r,e++}return o},adjustElementsSize:function(){var e=void 0!==arguments[0]&&arguments[0];this.updateTrimmingContainer(),(this.needFullRender||e)&&(this.adjustRootElementSize(),this.adjustRootChildrenSize(),e||(this.areElementSizesAdjusted=!0))},adjustRootElementSize:function(){var e,t=this.wot.wtTable.holder,o=t.clientWidth===t.offsetWidth?0:a(),n=this.clone.wtTable.holder.parentNode,r=n.style,i=this.wot.getSetting("preventOverflow");if(this.trimmingContainer!==window||"horizontal"===i){var s=this.wot.wtViewport.getWorkspaceWidth()-o;s=Math.min(s,h(this.wot.wtTable.wtRootElement)),r.width=s+"px"}else r.width="";this.clone.wtTable.holder.style.width=r.width,e=d(this.clone.wtTable.TABLE),r.height=(0===e?e:e+4)+"px"},adjustRootChildrenSize:function(){var e=a();this.clone.wtTable.hider.style.width=this.hider.style.width,this.clone.wtTable.holder.style.width=this.clone.wtTable.holder.parentNode.style.width,0===e&&(e=30),this.clone.wtTable.holder.style.height=parseInt(this.clone.wtTable.holder.parentNode.style.height,10)+e+"px"},applyToDOM:function(){var e=this.wot.getSetting("totalRows");if(this.areElementSizesAdjusted||this.adjustElementsSize(),"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition)this.spreader.style.top=this.wot.wtViewport.rowsRenderCalculator.startPosition+"px";else{if(0!==e)throw new Error("Incorrect value of the rowsRenderCalculator");this.spreader.style.top="0"}this.spreader.style.bottom="",this.needFullRender&&this.syncOverlayOffset()},syncOverlayOffset:function(){"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.left=this.wot.wtViewport.columnsRenderCalculator.startPosition+"px":this.clone.wtTable.spreader.style.left=""},scrollTo:function(e,t){var o=this.getTableParentOffset(),n=this.wot.cloneSource?this.wot.cloneSource:this.wot,r=n.wtTable.holder,i=0;if(t&&r.offsetHeight!==r.clientHeight&&(i=a()),t){var s=this.wot.getSetting("fixedRowsBottom"),l=(this.wot.getSetting("fixedRowsTop"),this.wot.getSetting("totalRows"));o+=this.sumCellSizes(0,e+1),o-=this.wot.wtViewport.getViewportHeight()-this.sumCellSizes(l-s,l),o+=1}else o+=this.sumCellSizes(this.wot.getSetting("fixedRowsTop"),e);o+=i,this.setScrollPosition(o)},getTableParentOffset:function(){return this.mainTableScrollableElement===window?this.wot.wtTable.holderOffset.top:0},getScrollPosition:function(){return l(this.mainTableScrollableElement)},redrawSelectionBorders:function(e){if(e&&e.cellRange){var t=e.getBorder(this.wot);if(t){var o=e.getCorners();t.disappear(),t.appear(o)}}},redrawAllSelectionsBorders:function(){var e=this.wot.selections;this.redrawSelectionBorders(e.current),this.redrawSelectionBorders(e.area),this.redrawSelectionBorders(e.fill),this.wot.wtTable.wot.wtOverlays.leftOverlay.refresh()},adjustHeaderBordersPosition:function(e){var t=this.wot.wtTable.holder.parentNode;if(this.wot.getSetting("totalColumns")?f(t,"emptyColumns"):s(t,"emptyColumns"),0===this.wot.getSetting("fixedRowsTop")&&this.wot.getSetting("columnHeaders").length>0){var o=c(t,"innerBorderTop");e||0===this.wot.getSetting("totalRows")?s(t,"innerBorderTop"):f(t,"innerBorderTop"),(!o&&e||o&&!e)&&(this.wot.wtOverlays.adjustElementsSize(),this.redrawAllSelectionsBorders())}if(0===this.wot.getSetting("rowHeaders").length){var n=this.clone.wtTable.THEAD.querySelectorAll("th:nth-of-type(2)");if(n)for(var r=0;r<n.length;r++)n[r].style["border-left-width"]=0}}},{},m),window.WalkontableTopOverlay=w,m.registerOverlay(m.CLONE_TOP,w)},{_base:12,"helpers/dom/element":47}],16:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableTopLeftCornerOverlay:{get:function(){return d}},__esModule:{value:!0}});var n,r,i=(n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n},s=i.outerHeight,a=i.outerWidth,l=i.setOverlayPosition,u=i.resetCssTransform,c=((r=e("_base"))&&r.__esModule&&r||{default:r}).WalkontableOverlay,d=function(e){$traceurRuntime.superConstructor(h).call(this,e),this.clone=this.makeClone(c.CLONE_TOP_LEFT_CORNER)},h=d;$traceurRuntime.createClass(d,{shouldBeRendered:function(){return!(!this.wot.getSetting("fixedRowsTop")&&!this.wot.getSetting("columnHeaders").length||!this.wot.getSetting("fixedColumnsLeft")&&!this.wot.getSetting("rowHeaders").length)},resetFixedPosition:function(){if(this.updateTrimmingContainer(),this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=s(this.clone.wtTable.TABLE),o=a(this.clone.wtTable.TABLE),n=this.wot.getSetting("preventOverflow");if(this.trimmingContainer===window){var r=this.wot.wtTable.hider.getBoundingClientRect(),i=Math.ceil(r.top),c=Math.ceil(r.left),d=Math.ceil(r.bottom),h=Math.ceil(r.right),f="0",p="0";n&&"vertical"!==n||c<0&&h-e.offsetWidth>0&&(f=-c+"px"),n&&"horizontal"!==n||i<0&&d-e.offsetHeight>0&&(p=-i+"px"),l(e,f,p)}else u(e);e.style.height=(0===t?t:t+4)+"px",e.style.width=(0===o?o:o+4)+"px"}}},{},c),window.WalkontableTopLeftCornerOverlay=d,c.registerOverlay(c.CLONE_TOP_LEFT_CORNER,d)},{_base:12,"helpers/dom/element":47}],17:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableOverlays:{get:function(){return w}},__esModule:{value:!0}});var n,r,i,s,a,l=(n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n},u=l.getScrollableElement,c=l.getScrollbarWidth,d=l.getScrollLeft,h=l.getScrollTop,f=((r=e("helpers/array"))&&r.__esModule&&r||{default:r}).arrayEach,p=((i=e("helpers/unicode"))&&i.__esModule&&i||{default:i}).isKey,g=((s=e("helpers/browser"))&&s.__esModule&&s||{default:s}).isMobileBrowser,m=((a=e("eventManager"))&&a.__esModule&&a||{default:a}).EventManager,w=function(e){this.wot=e,this.instance=this.wot,this.eventManager=new m(this.wot),this.wot.update("scrollbarWidth",c()),this.wot.update("scrollbarHeight",c()),this.scrollableElement=u(this.wot.wtTable.TABLE),this.prepareOverlays(),this.destroyed=!1,this.keyPressed=!1,this.spreaderLastSize={width:null,height:null},this.overlayScrollPositions={master:{top:0,left:0},top:{top:null,left:0},bottom:{top:null,left:0},left:{top:0,left:null}},this.pendingScrollCallbacks={master:{top:0,left:0},top:{left:0},bottom:{left:0},left:{top:0}},this.verticalScrolling=!1,this.horizontalScrolling=!1,this.delegatedScrollCallback=!1,this.registeredListeners=[],this.registerListeners()};$traceurRuntime.createClass(w,{prepareOverlays:function(){var e=!1;return this.topOverlay?e=this.topOverlay.updateStateOfRendering()||e:this.topOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP,this.wot),"undefined"==typeof WalkontableBottomOverlay&&(this.bottomOverlay={needFullRender:!1,updateStateOfRendering:function(){return!1}}),"undefined"==typeof WalkontableBottomLeftCornerOverlay&&(this.bottomLeftCornerOverlay={needFullRender:!1,updateStateOfRendering:function(){return!1}}),this.bottomOverlay?e=this.bottomOverlay.updateStateOfRendering()||e:this.bottomOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM,this.wot),this.leftOverlay?e=this.leftOverlay.updateStateOfRendering()||e:this.leftOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_LEFT,this.wot),this.topOverlay.needFullRender&&this.leftOverlay.needFullRender&&(this.topLeftCornerOverlay?e=this.topLeftCornerOverlay.updateStateOfRendering()||e:this.topLeftCornerOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP_LEFT_CORNER,this.wot)),this.bottomOverlay.needFullRender&&this.leftOverlay.needFullRender&&(this.bottomLeftCornerOverlay?e=this.bottomLeftCornerOverlay.updateStateOfRendering()||e:this.bottomLeftCornerOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER,this.wot)),this.wot.getSetting("debug")&&!this.debug&&(this.debug=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_DEBUG,this.wot)),e},refreshAll:function(){if(this.wot.drawn){if(!this.wot.wtTable.holder.parentNode)return void this.destroy();this.wot.draw(!0),this.verticalScrolling&&this.leftOverlay.onScroll(),this.horizontalScrolling&&this.topOverlay.onScroll(),this.verticalScrolling=!1,this.horizontalScrolling=!1}},registerListeners:function(){var e=this,t=this.topOverlay.mainTableScrollableElement,o=this.leftOverlay.mainTableScrollableElement,n=[];for(n.push([document.documentElement,"keydown",function(t){return e.onKeyDown(t)}]),n.push([document.documentElement,"keyup",function(){return e.onKeyUp()}]),n.push([document,"visibilitychange",function(){return e.onKeyUp()}]),n.push([t,"scroll",function(t){return e.onTableScroll(t)}]),t!==o&&n.push([o,"scroll",function(t){return e.onTableScroll(t)}]),this.topOverlay.needFullRender&&(n.push([this.topOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}]),n.push([this.topOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)}])),this.bottomOverlay.needFullRender&&(n.push([this.bottomOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}]),n.push([this.bottomOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)}])),this.leftOverlay.needFullRender&&(n.push([this.leftOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}]),n.push([this.leftOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)}])),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.needFullRender&&n.push([this.topLeftCornerOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)}]),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.needFullRender&&n.push([this.bottomLeftCornerOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)}]),this.topOverlay.trimmingContainer!==window&&this.leftOverlay.trimmingContainer!==window&&n.push([window,"wheel",function(t){var o,n=t.wheelDeltaY||t.deltaY,r=t.wheelDeltaX||t.deltaX;e.topOverlay.clone.wtTable.holder.contains(t.realTarget)?o="top":e.bottomOverlay.clone&&e.bottomOverlay.clone.wtTable.holder.contains(t.realTarget)?o="bottom":e.leftOverlay.clone.wtTable.holder.contains(t.realTarget)?o="left":e.topLeftCornerOverlay&&e.topLeftCornerOverlay.clone&&e.topLeftCornerOverlay.clone.wtTable.holder.contains(t.realTarget)?o="topLeft":e.bottomLeftCornerOverlay&&e.bottomLeftCornerOverlay.clone&&e.bottomLeftCornerOverlay.clone.wtTable.holder.contains(t.realTarget)&&(o="bottomLeft"),("top"==o&&0!==n||"left"==o&&0!==r||"bottom"==o&&0!==n||("topLeft"===o||"bottomLeft"===o)&&(0!==n||0!==r))&&t.preventDefault()}]);n.length;){var r=n.pop();this.eventManager.addEventListener(r[0],r[1],r[2]),this.registeredListeners.push(r)}},deregisterListeners:function(){for(;this.registeredListeners.length;){var e=this.registeredListeners.pop();this.eventManager.removeEventListener(e[0],e[1],e[2])}},onTableScroll:function(e){if(!g()){var t=this.leftOverlay.mainTableScrollableElement,o=this.topOverlay.mainTableScrollableElement,n=e.target;this.keyPressed&&(o!==window&&n!==window&&!e.target.contains(o)||t!==window&&n!==window&&!e.target.contains(t))||("scroll"===e.type?this.syncScrollPositions(e):this.translateMouseWheelToScroll(e))}},onKeyDown:function(e){this.keyPressed=p(e.keyCode,"ARROW_UP|ARROW_RIGHT|ARROW_DOWN|ARROW_LEFT")},onKeyUp:function(){this.keyPressed=!1},translateMouseWheelToScroll:function(e){var t=this.topOverlay.clone.wtTable.holder,o=this.bottomOverlay.clone?this.bottomOverlay.clone.wtTable.holder:null,n=this.leftOverlay.clone.wtTable.holder,r=this.topLeftCornerOverlay&&this.topLeftCornerOverlay.clone?this.topLeftCornerOverlay.clone.wtTable.holder:null,i=this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone?this.bottomLeftCornerOverlay.clone.wtTable.holder:null,s=e.wheelDeltaY||-1*e.deltaY,a=e.wheelDeltaX||-1*e.deltaX,l=null,u={type:"wheel"},c=e.target,d=null;for(1===e.deltaMode&&(s*=120,a*=120);c!=document&&null!=c;){if(c.className.indexOf("wtHolder")>-1){l=c;break}c=c.parentNode}return u.target=l,l===r||l===i?(this.syncScrollPositions(u,-.2*a,"x"),this.syncScrollPositions(u,-.2*s,"y")):(l===t||l===o?d=s:l===n&&(d=a),this.syncScrollPositions(u,-.2*d)),!1},syncScrollPositions:function(e){var t=void 0!==arguments[1]?arguments[1]:null,o=void 0!==arguments[2]?arguments[2]:null;if(!this.destroyed){if(0===arguments.length)return void this.syncScrollWithMaster();var n,r,i,s,a,l=this.leftOverlay.mainTableScrollableElement,u=this.topOverlay.mainTableScrollableElement,c=e.target,f=0,p=!1,g=!1,m=this.wot.getSetting("preventOverflow");this.topOverlay.needFullRender&&(n=this.topOverlay.clone.wtTable.holder),this.bottomOverlay.needFullRender&&(a=this.bottomOverlay.clone.wtTable.holder),this.leftOverlay.needFullRender&&(r=this.leftOverlay.clone.wtTable.holder),this.leftOverlay.needFullRender&&this.topOverlay.needFullRender&&(i=this.topLeftCornerOverlay.clone.wtTable.holder),this.leftOverlay.needFullRender&&this.bottomOverlay.needFullRender&&(s=this.bottomLeftCornerOverlay.clone.wtTable.holder),c===document&&(c=window),c===l||c===u?(f=d(m?this.scrollableElement:c),this.horizontalScrolling=!0,this.overlayScrollPositions.master.left=f,p=!0,this.pendingScrollCallbacks.master.left>0?this.pendingScrollCallbacks.master.left--:(n&&n.scrollLeft!==f&&(null==t&&this.pendingScrollCallbacks.top.left++,n.scrollLeft=f,g=l!==window),a&&a.scrollLeft!==f&&(null==t&&this.pendingScrollCallbacks.bottom.left++,a.scrollLeft=f,g=l!==window)),f=h(c),this.verticalScrolling=!0,this.overlayScrollPositions.master.top=f,p=!0,this.pendingScrollCallbacks.master.top>0?this.pendingScrollCallbacks.master.top--:r&&r.scrollTop!==f&&(null==t&&this.pendingScrollCallbacks.left.top++,r.scrollTop=f,g=u!==window)):c===a?(f=d(c),this.horizontalScrolling=!0,this.overlayScrollPositions.bottom.left=f,p=!0,this.pendingScrollCallbacks.bottom.left>0?this.pendingScrollCallbacks.bottom.left--:(null==t&&this.pendingScrollCallbacks.master.left++,l.scrollLeft=f,n&&n.scrollLeft!==f&&(null==t&&this.pendingScrollCallbacks.top.left++,n.scrollLeft=f,g=u!==window)),null!==t&&(p=!0,u.scrollTop+=t)):c===n?(f=d(c),this.horizontalScrolling=!0,this.overlayScrollPositions.top.left=f,p=!0,this.pendingScrollCallbacks.top.left>0?this.pendingScrollCallbacks.top.left--:(null==t&&this.pendingScrollCallbacks.master.left++,l.scrollLeft=f),null!==t&&(p=!0,u.scrollTop+=t),a&&a.scrollLeft!==f&&(null==t&&this.pendingScrollCallbacks.bottom.left++,a.scrollLeft=f,g=u!==window)):c===r?(f=h(c),this.overlayScrollPositions.left.top!==f&&(this.verticalScrolling=!0,this.overlayScrollPositions.left.top=f,p=!0,this.pendingScrollCallbacks.left.top>0?this.pendingScrollCallbacks.left.top--:(null==t&&this.pendingScrollCallbacks.master.top++,u.scrollTop=f)),null!==t&&(p=!0,u.scrollLeft+=t)):c!==i&&c!==s||null!==t&&(p=!0,"x"===o?u.scrollLeft+=t:"y"===o&&(u.scrollTop+=t)),!this.keyPressed&&p&&"scroll"===e.type&&(this.delegatedScrollCallback?this.delegatedScrollCallback=!1:this.refreshAll(),g&&(this.delegatedScrollCallback=!0))}},syncScrollWithMaster:function(){var e=this.topOverlay.mainTableScrollableElement,t=e,o=t.scrollLeft,n=t.scrollTop;this.topOverlay.needFullRender&&(this.topOverlay.clone.wtTable.holder.scrollLeft=o),this.bottomOverlay.needFullRender&&(this.bottomOverlay.clone.wtTable.holder.scrollLeft=o),this.leftOverlay.needFullRender&&(this.leftOverlay.clone.wtTable.holder.scrollTop=n)},updateMainScrollableElements:function(){this.deregisterListeners(),this.leftOverlay.updateMainScrollableElement(),this.topOverlay.updateMainScrollableElement(),this.bottomOverlay.needFullRender&&this.bottomOverlay.updateMainScrollableElement(),this.scrollableElement=u(this.wot.wtTable.TABLE),this.registerListeners()},destroy:function(){this.eventManager.destroy(),this.topOverlay.destroy(),this.bottomOverlay.clone&&this.bottomOverlay.destroy(),this.leftOverlay.destroy(),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.destroy(),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone&&this.bottomLeftCornerOverlay.destroy(),this.debug&&this.debug.destroy(),this.destroyed=!0},refresh:function(){var e=void 0!==arguments[0]&&arguments[0];if(this.topOverlay.areElementSizesAdjusted&&this.leftOverlay.areElementSizesAdjusted){var t=this.wot.wtTable.wtRootElement.parentNode||this.wot.wtTable.wtRootElement,o=t.clientWidth,n=t.clientHeight;o===this.spreaderLastSize.width&&n===this.spreaderLastSize.height||(this.spreaderLastSize.width=o,this.spreaderLastSize.height=n,this.adjustElementsSize())}this.bottomOverlay.clone&&this.bottomOverlay.refresh(e),this.leftOverlay.refresh(e),this.topOverlay.refresh(e),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.refresh(e),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone&&this.bottomLeftCornerOverlay.refresh(e),this.debug&&this.debug.refresh(e)},adjustElementsSize:function(){var e=void 0!==arguments[0]&&arguments[0],t=this.wot.getSetting("totalColumns"),o=this.wot.getSetting("totalRows"),n=this.wot.wtViewport.getRowHeaderWidth(),r=this.wot.wtViewport.getColumnHeaderHeight(),i=this.wot.wtTable.hider.style;i.width=n+this.leftOverlay.sumCellSizes(0,t)+"px",i.height=r+this.topOverlay.sumCellSizes(0,o)+1+"px",this.topOverlay.adjustElementsSize(e),this.leftOverlay.adjustElementsSize(e),this.bottomOverlay.clone&&this.bottomOverlay.adjustElementsSize(e)},applyToDOM:function(){this.topOverlay.areElementSizesAdjusted&&this.leftOverlay.areElementSizesAdjusted||this.adjustElementsSize(),this.topOverlay.applyToDOM(),this.bottomOverlay.clone&&this.bottomOverlay.applyToDOM(),this.leftOverlay.applyToDOM()},getParentOverlay:function(e){if(!e)return null;var t=[this.topOverlay,this.leftOverlay,this.bottomOverlay,this.topLeftCornerOverlay,this.bottomLeftCornerOverlay],o=null;return f(t,function(t,n){t&&t.clone&&t.clone.wtTable.TABLE.contains(e)&&(o=t.clone)}),o}},{}),window.WalkontableOverlays=w},{eventManager:42,"helpers/array":43,"helpers/browser":44,"helpers/dom/element":47,"helpers/unicode":56}],18:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableScroll:{get:function(){return p}},__esModule:{value:!0}});var n,r,i=(n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n},s=i.innerHeight,a=i.innerWidth,l=i.getScrollLeft,u=i.getScrollTop,c=i.offset,d=(r=e("helpers/number"))&&r.__esModule&&r||{default:r},h=d.rangeEach,f=d.rangeEachReverse,p=function(e){this.wot=e,this.instance=e};$traceurRuntime.createClass(p,{scrollViewport:function(e){if(this.wot.drawn){var t=this._getVariables(),o=t.topOverlay,n=t.leftOverlay,r=t.totalRows,i=t.totalColumns,s=t.fixedRowsTop,a=t.fixedRowsBottom,l=t.fixedColumnsLeft;if(e.row<0||e.row>Math.max(r-1,0))throw new Error("row "+e.row+" does not exist");if(e.col<0||e.col>Math.max(i-1,0))throw new Error("column "+e.col+" does not exist");e.row>=s&&e.row<this.getFirstVisibleRow()?o.scrollTo(e.row):e.row>this.getLastVisibleRow()&&e.row<r-a&&o.scrollTo(e.row,!0),e.col>=l&&e.col<this.getFirstVisibleColumn()?n.scrollTo(e.col):e.col>this.getLastVisibleColumn()&&n.scrollTo(e.col,!0)}},getFirstVisibleRow:function(){var e=this._getVariables(),t=e.topOverlay,o=e.wtTable,n=e.wtViewport,r=e.totalRows,i=e.fixedRowsTop,a=o.getFirstVisibleRow();if(t.mainTableScrollableElement===window){var l=c(o.wtRootElement),d=s(o.hider),h=s(window),p=u(window);if(l.top+d-h<=p){var g=n.getColumnHeaderHeight();g+=t.sumCellSizes(0,i),f(r,1,function(e){if(g+=t.sumCellSizes(e-1,e),l.top+d-g<=p)return a=e,!1})}}return a},getLastVisibleRow:function(){var e=this._getVariables(),t=e.topOverlay,o=e.wtTable,n=e.wtViewport,r=e.totalRows,i=o.getLastVisibleRow();if(t.mainTableScrollableElement===window){var a=c(o.wtRootElement),l=s(window),d=u(window);if(a.top>d){var f=n.getColumnHeaderHeight();h(1,r,function(e){if(f+=t.sumCellSizes(e-1,e),a.top+f-d>=l)return i=e-2,!1})}}return i},getFirstVisibleColumn:function(){var e=this._getVariables(),t=e.leftOverlay,o=e.wtTable,n=e.wtViewport,r=e.totalColumns,i=(e.fixedColumnsLeft,o.getFirstVisibleColumn());if(t.mainTableScrollableElement===window){var s=c(o.wtRootElement),u=a(o.hider),d=a(window),h=l(window);if(s.left+u-d<=h){var p=n.getRowHeaderWidth();f(r,1,function(e){if(p+=t.sumCellSizes(e-1,e),s.left+u-p<=h)return i=e,!1})}}return i},getLastVisibleColumn:function(){var e=this._getVariables(),t=e.leftOverlay,o=e.wtTable,n=e.wtViewport,r=e.totalColumns,i=o.getLastVisibleColumn();if(t.mainTableScrollableElement===window){var s=c(o.wtRootElement),u=a(window),d=l(window);if(s.left>d){var f=n.getRowHeaderWidth();h(1,r,function(e){if(f+=t.sumCellSizes(e-1,e),s.left+f-d>=u)return i=e-2,!1})}}return i},_getVariables:function(){var e=this.wot
29
+ ;return{topOverlay:e.wtOverlays.topOverlay,leftOverlay:e.wtOverlays.leftOverlay,wtTable:e.wtTable,wtViewport:e.wtViewport,totalRows:e.getSetting("totalRows"),totalColumns:e.getSetting("totalColumns"),fixedRowsTop:e.getSetting("fixedRowsTop"),fixedRowsBottom:e.getSetting("fixedRowsBottom"),fixedColumnsLeft:e.getSetting("fixedColumnsLeft")}}},{}),window.WalkontableScroll=p},{"helpers/dom/element":47,"helpers/number":52}],19:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableSelection:{get:function(){return d}},__esModule:{value:!0}});var n,r,i,s,a=((n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n}).addClass,l=((r=e("border"))&&r.__esModule&&r||{default:r}).WalkontableBorder,u=((i=e("cell/coords"))&&i.__esModule&&i||{default:i}).WalkontableCellCoords,c=((s=e("cell/range"))&&s.__esModule&&s||{default:s}).WalkontableCellRange,d=function(e,t){this.settings=e,this.cellRange=t||null,this.instanceBorders={}};$traceurRuntime.createClass(d,{getBorder:function(e){if(this.instanceBorders[e.guid])return this.instanceBorders[e.guid];this.instanceBorders[e.guid]=new l(e,this.settings)},isEmpty:function(){return null===this.cellRange},add:function(e){this.isEmpty()?this.cellRange=new c(e,e,e):this.cellRange.expand(e)},replace:function(e,t){if(!this.isEmpty()){if(this.cellRange.from.isEqual(e))return this.cellRange.from=t,!0;if(this.cellRange.to.isEqual(e))return this.cellRange.to=t,!0}return!1},clear:function(){this.cellRange=null},getCorners:function(){var e=this.cellRange.getTopLeftCorner(),t=this.cellRange.getBottomRightCorner();return[e.row,e.col,t.row,t.col]},addClassAtCoords:function(e,t,o,n){var r=e.wtTable.getCell(new u(t,o));"object"==typeof r&&a(r,n)},draw:function(e){if(this.isEmpty()){if(this.settings.border){var t=this.getBorder(e);t&&t.disappear()}}else{for(var o,n,r,i=e.wtTable.getRenderedRowsCount(),s=e.wtTable.getRenderedColumnsCount(),l=this.getCorners(),u=0;u<s;u++)if((n=e.wtTable.columnFilter.renderedToSource(u))>=l[1]&&n<=l[3]&&(r=e.wtTable.getColumnHeader(n))){var c=[];this.settings.highlightHeaderClassName&&c.push(this.settings.highlightHeaderClassName),this.settings.highlightColumnClassName&&c.push(this.settings.highlightColumnClassName),a(r,c)}for(var d=0;d<i;d++){if((o=e.wtTable.rowFilter.renderedToSource(d))>=l[0]&&o<=l[2]&&(r=e.wtTable.getRowHeader(o))){var h=[];this.settings.highlightHeaderClassName&&h.push(this.settings.highlightHeaderClassName),this.settings.highlightRowClassName&&h.push(this.settings.highlightRowClassName),a(r,h)}for(var f=0;f<s;f++)n=e.wtTable.columnFilter.renderedToSource(f),o>=l[0]&&o<=l[2]&&n>=l[1]&&n<=l[3]?this.settings.className&&this.addClassAtCoords(e,o,n,this.settings.className):o>=l[0]&&o<=l[2]?this.settings.highlightRowClassName&&this.addClassAtCoords(e,o,n,this.settings.highlightRowClassName):n>=l[1]&&n<=l[3]&&this.settings.highlightColumnClassName&&this.addClassAtCoords(e,o,n,this.settings.highlightColumnClassName)}if(e.getSetting("onBeforeDrawBorders",l,this.settings.className),this.settings.border){var p=this.getBorder(e);p&&p.appear(l)}}}},{}),window.WalkontableSelection=d},{border:3,"cell/coords":6,"cell/range":7,"helpers/dom/element":47}],20:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableSettings:{get:function(){return i}},__esModule:{value:!0}});var n,r=((n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n}).fastInnerText,i=function(e,t){var o=this;this.wot=e,this.instance=e,this.defaults={table:void 0,debug:!1,externalRowCalculator:!1,stretchH:"none",currentRowClassName:null,currentColumnClassName:null,preventOverflow:function(){return!1},data:void 0,fixedColumnsLeft:0,fixedRowsTop:0,fixedRowsBottom:0,minSpareRows:0,rowHeaders:function(){return[]},columnHeaders:function(){return[]},totalRows:void 0,totalColumns:void 0,cellRenderer:function(e,t,n){var i=o.getSetting("data",e,t);r(n,void 0===i||null===i?"":i)},columnWidth:function(e){},rowHeight:function(e){},defaultRowHeight:23,defaultColumnWidth:50,selections:null,hideBorderOnMouseDownOver:!1,viewportRowCalculatorOverride:null,viewportColumnCalculatorOverride:null,onCellMouseDown:null,onCellMouseOver:null,onCellMouseOut:null,onCellMouseUp:null,onCellDblClick:null,onCellCornerMouseDown:null,onCellCornerDblClick:null,beforeDraw:null,onDraw:null,onBeforeDrawBorders:null,onScrollVertically:null,onScrollHorizontally:null,onBeforeTouchScroll:null,onAfterMomentumScroll:null,onBeforeStretchingColumnWidth:function(e){return e},onModifyRowHeaderWidth:null,scrollbarWidth:10,scrollbarHeight:10,renderAllRows:!1,groups:!1,rowHeaderWidth:null,columnHeaderHeight:null,headerClassName:null},this.settings={};for(var n in this.defaults)if(this.defaults.hasOwnProperty(n))if(void 0!==t[n])this.settings[n]=t[n];else{if(void 0===this.defaults[n])throw new Error('A required setting "'+n+'" was not provided');this.settings[n]=this.defaults[n]}};$traceurRuntime.createClass(i,{update:function(e,t){if(void 0===t)for(var o in e)e.hasOwnProperty(o)&&(this.settings[o]=e[o]);else this.settings[e]=t;return this.wot},getSetting:function(e,t,o,n,r){return"function"==typeof this.settings[e]?this.settings[e](t,o,n,r):void 0!==t&&Array.isArray(this.settings[e])?this.settings[e][t]:this.settings[e]},has:function(e){return!!this.settings[e]}},{}),window.WalkontableSettings=i},{"helpers/dom/element":47}],21:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableTable:{get:function(){return S}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c=(n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n},d=c.getStyle,h=c.getTrimmingContainer,f=c.hasClass,p=c.index,g=c.offset,m=c.removeClass,w=c.removeTextNodes,v=c.overlayContainsElement,y=c.closest,b=((r=e("helpers/function"))&&r.__esModule&&r||{default:r}).isFunction,C=((i=e("cell/coords"))&&i.__esModule&&i||{default:i}).WalkontableCellCoords,_=(((s=e("cell/range"))&&s.__esModule&&s||{default:s}).WalkontableCellRange,((a=e("filter/column"))&&a.__esModule&&a||{default:a}).WalkontableColumnFilter),R=((l=e("filter/row"))&&l.__esModule&&l||{default:l}).WalkontableRowFilter,M=((u=e("tableRenderer"))&&u.__esModule&&u||{default:u}).WalkontableTableRenderer,S=function(e,t){var o=this;this.wot=e,this.instance=this.wot,this.TABLE=t,this.TBODY=null,this.THEAD=null,this.COLGROUP=null,this.tableOffset=0,this.holderOffset=0,w(this.TABLE),this.spreader=this.createSpreader(this.TABLE),this.hider=this.createHider(this.spreader),this.holder=this.createHolder(this.hider),this.wtRootElement=this.holder.parentNode,this.alignOverlaysWithTrimmingContainer(),this.fixTableDomTree(),this.colgroupChildrenLength=this.COLGROUP.childNodes.length,this.theadChildrenLength=this.THEAD.firstChild?this.THEAD.firstChild.childNodes.length:0,this.tbodyChildrenLength=this.TBODY.childNodes.length,this.rowFilter=null,this.columnFilter=null,this.correctHeaderWidth=!1;var n=this.wot.wtSettings.settings.rowHeaderWidth;this.wot.wtSettings.settings.rowHeaderWidth=function(){return o._modifyRowHeaderWidth(n)}};$traceurRuntime.createClass(S,{fixTableDomTree:function(){this.TBODY=this.TABLE.querySelector("tbody"),this.TBODY||(this.TBODY=document.createElement("tbody"),this.TABLE.appendChild(this.TBODY)),this.THEAD=this.TABLE.querySelector("thead"),this.THEAD||(this.THEAD=document.createElement("thead"),this.TABLE.insertBefore(this.THEAD,this.TBODY)),this.COLGROUP=this.TABLE.querySelector("colgroup"),this.COLGROUP||(this.COLGROUP=document.createElement("colgroup"),this.TABLE.insertBefore(this.COLGROUP,this.THEAD)),this.wot.getSetting("columnHeaders").length&&!this.THEAD.childNodes.length&&this.THEAD.appendChild(document.createElement("TR"))},createSpreader:function(e){var t,o=e.parentNode;return o&&1===o.nodeType&&f(o,"wtHolder")||(t=document.createElement("div"),t.className="wtSpreader",o&&o.insertBefore(t,e),t.appendChild(e)),t.style.position="relative",t},createHider:function(e){var t,o=e.parentNode;return o&&1===o.nodeType&&f(o,"wtHolder")||(t=document.createElement("div"),t.className="wtHider",o&&o.insertBefore(t,e),t.appendChild(e)),t},createHolder:function(e){var t,o=e.parentNode;return o&&1===o.nodeType&&f(o,"wtHolder")||(t=document.createElement("div"),t.style.position="relative",t.className="wtHolder",o&&o.insertBefore(t,e),this.isWorkingOnClone()||(t.parentNode.className+="ht_master handsontable"),t.appendChild(e)),t},alignOverlaysWithTrimmingContainer:function(){var e=h(this.wtRootElement);if(!this.isWorkingOnClone())if(this.holder.parentNode.style.position="relative",e===window){var t=this.wot.getSetting("preventOverflow");t||(this.holder.style.overflow="visible",this.wtRootElement.style.overflow="visible")}else this.holder.style.width=d(e,"width"),this.holder.style.height=d(e,"height"),this.holder.style.overflow=""},isWorkingOnClone:function(){return!!this.wot.cloneSource},draw:function(e){var t=this.wot,o=t.wtOverlays,n=t.wtViewport,r=this.instance.getSetting("totalRows"),i=this.wot.getSetting("rowHeaders").length,s=this.wot.getSetting("columnHeaders").length,a=!1;if(!this.isWorkingOnClone()&&(this.holderOffset=g(this.holder),e=n.createRenderCalculators(e),i&&!this.wot.getSetting("fixedColumnsLeft"))){var l=o.leftOverlay.getScrollPosition(),u=this.correctHeaderWidth;this.correctHeaderWidth=l>0,u!==this.correctHeaderWidth&&(e=!1)}if(this.isWorkingOnClone()||(a=o.prepareOverlays()),e)this.isWorkingOnClone()||n.createVisibleCalculators(),o&&o.refresh(!0);else{this.isWorkingOnClone()?this.tableOffset=this.wot.cloneSource.wtTable.tableOffset:this.tableOffset=g(this.TABLE);var c;c=WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)?0:WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?Math.max(r-this.wot.getSetting("fixedRowsBottom"),0):n.rowsRenderCalculator.startRow;var d;d=WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_LEFT)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?0:n.columnsRenderCalculator.startColumn,this.rowFilter=new R(c,r,s),this.columnFilter=new _(d,this.wot.getSetting("totalColumns"),i),this.alignOverlaysWithTrimmingContainer(),this._doDraw()}return this.refreshSelections(e),this.isWorkingOnClone()||(o.topOverlay.resetFixedPosition(),o.bottomOverlay.clone&&o.bottomOverlay.resetFixedPosition(),o.leftOverlay.resetFixedPosition(),o.topLeftCornerOverlay&&o.topLeftCornerOverlay.resetFixedPosition(),o.bottomLeftCornerOverlay&&o.bottomLeftCornerOverlay.clone&&o.bottomLeftCornerOverlay.resetFixedPosition()),a&&o.syncScrollWithMaster(),this.wot.drawn=!0,this},_doDraw:function(){new M(this).render()},removeClassFromCells:function(e){for(var t=this.TABLE.querySelectorAll("."+e),o=0,n=t.length;o<n;o++)m(t[o],e)},refreshSelections:function(e){if(this.wot.selections){var t=this.wot.selections.length;if(e)for(var o=0;o<t;o++)this.wot.selections[o].settings.className&&this.removeClassFromCells(this.wot.selections[o].settings.className),this.wot.selections[o].settings.highlightHeaderClassName&&this.removeClassFromCells(this.wot.selections[o].settings.highlightHeaderClassName),this.wot.selections[o].settings.highlightRowClassName&&this.removeClassFromCells(this.wot.selections[o].settings.highlightRowClassName),this.wot.selections[o].settings.highlightColumnClassName&&this.removeClassFromCells(this.wot.selections[o].settings.highlightColumnClassName);for(var n=0;n<t;n++)this.wot.selections[n].draw(this.wot,e)}},getCell:function(e){if(this.isRowBeforeRenderedRows(e.row))return-1;if(this.isRowAfterRenderedRows(e.row))return-2;var t=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e.row)];return t?t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e.col)]:void 0},getColumnHeader:function(e){var t=void 0!==arguments[1]?arguments[1]:0,o=this.THEAD.childNodes[t];if(o)return o.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e)]},getRowHeader:function(e){if(0===this.columnFilter.sourceColumnToVisibleRowHeadedColumn(0))return null;var t=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)];return t?t.childNodes[0]:void 0},getCoords:function(e){"TD"!==e.nodeName&&"TH"!==e.nodeName&&(e=y(e,["TD","TH"]));var t=e.parentNode,o=t.parentNode,n=p(t),r=e.cellIndex;return v(WalkontableOverlay.CLONE_TOP_LEFT_CORNER,e)||v(WalkontableOverlay.CLONE_TOP,e)?"THEAD"===o.nodeName&&(n-=o.childNodes.length):n=o===this.THEAD?this.rowFilter.visibleColHeadedRowToSourceRow(n):this.rowFilter.renderedToSource(n),r=v(WalkontableOverlay.CLONE_TOP_LEFT_CORNER,e)||v(WalkontableOverlay.CLONE_LEFT,e)?this.columnFilter.offsettedTH(r):this.columnFilter.visibleRowHeadedColumnToSourceColumn(r),new C(n,r)},getTrForRow:function(e){return this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)]},getFirstRenderedRow:function(){return this.wot.wtViewport.rowsRenderCalculator.startRow},getFirstVisibleRow:function(){return this.wot.wtViewport.rowsVisibleCalculator.startRow},getFirstRenderedColumn:function(){return this.wot.wtViewport.columnsRenderCalculator.startColumn},getFirstVisibleColumn:function(){return this.wot.wtViewport.columnsVisibleCalculator.startColumn},getLastRenderedRow:function(){return this.wot.wtViewport.rowsRenderCalculator.endRow},getLastVisibleRow:function(){return this.wot.wtViewport.rowsVisibleCalculator.endRow},getLastRenderedColumn:function(){return this.wot.wtViewport.columnsRenderCalculator.endColumn},getLastVisibleColumn:function(){return this.wot.wtViewport.columnsVisibleCalculator.endColumn},isRowBeforeRenderedRows:function(e){return this.rowFilter&&this.rowFilter.sourceToRendered(e)<0&&e>=0},isRowAfterViewport:function(e){return this.rowFilter&&this.rowFilter.sourceToRendered(e)>this.getLastVisibleRow()},isRowAfterRenderedRows:function(e){return this.rowFilter&&this.rowFilter.sourceToRendered(e)>this.getLastRenderedRow()},isColumnBeforeViewport:function(e){return this.columnFilter&&this.columnFilter.sourceToRendered(e)<0&&e>=0},isColumnAfterViewport:function(e){return this.columnFilter&&this.columnFilter.sourceToRendered(e)>this.getLastVisibleColumn()},isLastRowFullyVisible:function(){return this.getLastVisibleRow()===this.getLastRenderedRow()},isLastColumnFullyVisible:function(){return this.getLastVisibleColumn()===this.getLastRenderedColumn()},getRenderedColumnsCount:function(){var e=this.wot.wtViewport.columnsRenderCalculator.count,t=this.wot.getSetting("totalColumns");if(this.wot.isOverlayName(WalkontableOverlay.CLONE_DEBUG))e=t;else if(this.wot.isOverlayName(WalkontableOverlay.CLONE_LEFT)||this.wot.isOverlayName(WalkontableOverlay.CLONE_TOP_LEFT_CORNER)||this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER))return Math.min(this.wot.getSetting("fixedColumnsLeft"),t);return e},getRenderedRowsCount:function(){var e=this.wot.wtViewport.rowsRenderCalculator.count,t=this.wot.getSetting("totalRows");return this.wot.isOverlayName(WalkontableOverlay.CLONE_DEBUG)?e=t:this.wot.isOverlayName(WalkontableOverlay.CLONE_TOP)||this.wot.isOverlayName(WalkontableOverlay.CLONE_TOP_LEFT_CORNER)?e=Math.min(this.wot.getSetting("fixedRowsTop"),t):(this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM)||this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER))&&(e=Math.min(this.wot.getSetting("fixedRowsBottom"),t)),e},getVisibleRowsCount:function(){return this.wot.wtViewport.rowsVisibleCalculator.count},allRowsInViewport:function(){return this.wot.getSetting("totalRows")==this.getVisibleRowsCount()},getRowHeight:function(e){var t=this.wot.wtSettings.settings.rowHeight(e),o=this.wot.wtViewport.oversizedRows[e];return void 0!==o&&(t=void 0===t?o:Math.max(t,o)),t},getColumnHeaderHeight:function(e){var t=this.wot.wtSettings.settings.defaultRowHeight,o=this.wot.wtViewport.oversizedColumnHeaders[e];return void 0!==o&&(t=t?Math.max(t,o):o),t},getVisibleColumnsCount:function(){return this.wot.wtViewport.columnsVisibleCalculator.count},allColumnsInViewport:function(){return this.wot.getSetting("totalColumns")==this.getVisibleColumnsCount()},getColumnWidth:function(e){var t=this.wot.wtSettings.settings.columnWidth;return"function"==typeof t?t=t(e):"object"==typeof t&&(t=t[e]),t||this.wot.wtSettings.settings.defaultColumnWidth},getStretchedColumnWidth:function(e){var t=this.getColumnWidth(e),o=null==t?this.instance.wtSettings.settings.defaultColumnWidth:t,n=this.wot.wtViewport.columnsRenderCalculator;if(n){var r=n.getStretchedColumnWidth(e,o);r&&(o=r)}return o},_modifyRowHeaderWidth:function(e){var t=b(e)?e():null;return Array.isArray(t)?(t=$traceurRuntime.spread(t),t[t.length-1]=this._correctRowHeaderWidth(t[t.length-1])):t=this._correctRowHeaderWidth(t),t},_correctRowHeaderWidth:function(e){return"number"!=typeof e&&(e=this.wot.getSetting("defaultColumnWidth")),this.correctHeaderWidth&&e++,e}},{}),window.WalkontableTable=S},{"cell/coords":6,"cell/range":7,"filter/column":10,"filter/row":11,"helpers/dom/element":47,"helpers/function":50,tableRenderer:22}],22:[function(e,t,o){"use strict";function n(e,t){var o=document.createElement("TH");return t.insertBefore(o,e),t.removeChild(e),o}function r(e,t){var o=document.createElement("TD");return t.insertBefore(o,e),t.removeChild(e),o}Object.defineProperties(o,{WalkontableTableRenderer:{get:function(){return p}},__esModule:{value:!0}});var i,s=(i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i},a=s.addClass,l=s.empty,u=s.getScrollbarWidth,c=s.hasClass,d=s.innerHeight,h=s.outerWidth,f=!1,p=function(e){this.wtTable=e,this.wot=e.instance,this.instance=e.instance,this.rowFilter=e.rowFilter,this.columnFilter=e.columnFilter,this.TABLE=e.TABLE,this.THEAD=e.THEAD,this.TBODY=e.TBODY,this.COLGROUP=e.COLGROUP,this.rowHeaders=[],this.rowHeaderCount=0,this.columnHeaders=[],this.columnHeaderCount=0,this.fixedRowsTop=0,this.fixedRowsBottom=0};$traceurRuntime.createClass(p,{render:function(){if(!this.wtTable.isWorkingOnClone()){var e={};if(this.wot.getSetting("beforeDraw",!0,e),e.skipRender===!0)return}this.rowHeaders=this.wot.getSetting("rowHeaders"),this.rowHeaderCount=this.rowHeaders.length,this.fixedRowsTop=this.wot.getSetting("fixedRowsTop"),this.fixedRowsBottom=this.wot.getSetting("fixedRowsBottom"),this.columnHeaders=this.wot.getSetting("columnHeaders"),this.columnHeaderCount=this.columnHeaders.length;var t,o=this.wtTable.getRenderedColumnsCount(),n=this.wtTable.getRenderedRowsCount(),r=this.wot.getSetting("totalColumns"),i=this.wot.getSetting("totalRows"),s=!1;if((WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER))&&(this.columnHeaders=[],this.columnHeaderCount=0),r>=0&&(this.adjustAvailableNodes(),s=!0,this.renderColumnHeaders(),this.renderRows(i,n,o),this.wtTable.isWorkingOnClone()||(t=this.wot.wtViewport.getWorkspaceWidth(),this.wot.wtViewport.containerWidth=null),this.adjustColumnWidths(o),this.markOversizedColumnHeaders(),this.adjustColumnHeaderHeights()),s||this.adjustAvailableNodes(),this.removeRedundantRows(n),this.wtTable.isWorkingOnClone()&&!this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM)||this.markOversizedRows(),this.wtTable.isWorkingOnClone())this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM)&&this.wot.cloneSource.wtOverlays.adjustElementsSize();else{this.wot.wtViewport.createVisibleCalculators(),this.wot.wtOverlays.refresh(!1),this.wot.wtOverlays.applyToDOM();var a=h(this.wtTable.hider),l=h(this.wtTable.TABLE);if(0!==a&&l!==a&&this.adjustColumnWidths(o),t!==this.wot.wtViewport.getWorkspaceWidth()){this.wot.wtViewport.containerWidth=null;var u=this.wtTable.getFirstRenderedColumn(),c=this.wtTable.getLastRenderedColumn(),d=this.wot.getSetting("defaultColumnWidth"),f=this.wot.getSetting("rowHeaderWidth");if(null!=(f=this.instance.getSetting("onModifyRowHeaderWidth",f)))for(var p=0;p<this.rowHeaderCount;p++){var g=Array.isArray(f)?f[p]:f;g=null==g?d:g,this.COLGROUP.childNodes[p].style.width=g+"px"}for(var m=u;m<c;m++){var w=this.wtTable.getStretchedColumnWidth(m),v=this.columnFilter.sourceToRendered(m);this.COLGROUP.childNodes[v+this.rowHeaderCount].style.width=w+"px"}}this.wot.getSetting("onDraw",!0)}},removeRedundantRows:function(e){for(;this.wtTable.tbodyChildrenLength>e;)this.TBODY.removeChild(this.TBODY.lastChild),this.wtTable.tbodyChildrenLength--},renderRows:function(e,t,o){for(var n,r=0,i=this.rowFilter.renderedToSource(r),s=this.wtTable.isWorkingOnClone();i<e&&i>=0&&(!f&&r>1e3&&(f=!0,console.warn('Performance tip: Handsontable rendered more than 1000 visible rows. Consider limiting the number of rendered rows by specifying the table height and/or turning off the "renderAllRows" option.')),void 0===t||r!==t);){if(n=this.getOrCreateTrForRow(r,n),this.renderRowHeaders(i,n),this.adjustColumns(n,o+this.rowHeaderCount),this.renderCells(i,n,o),s&&!this.wot.isOverlayName(WalkontableOverlay.CLONE_BOTTOM)||this.resetOversizedRow(i),n.firstChild){var a=this.wot.wtTable.getRowHeight(i);a?(a--,n.firstChild.style.height=a+"px"):n.firstChild.style.height=""}r++,i=this.rowFilter.renderedToSource(r)}},resetOversizedRow:function(e){this.wot.getSetting("externalRowCalculator")||this.wot.wtViewport.oversizedRows&&this.wot.wtViewport.oversizedRows[e]&&(this.wot.wtViewport.oversizedRows[e]=void 0)},markOversizedRows:function(){if(!this.wot.getSetting("externalRowCalculator")){var e,t,o,n,r,i=this.instance.wtTable.TBODY.childNodes.length,s=i*this.instance.wtSettings.settings.defaultRowHeight,a=d(this.instance.wtTable.TBODY)-1;this.instance.getSetting("totalRows");if(s!==a||this.instance.getSetting("fixedRowsBottom"))for(;i;)i--,o=this.instance.wtTable.rowFilter.renderedToSource(i),e=this.instance.wtTable.getRowHeight(o),n=this.instance.wtTable.getTrForRow(o),r=n.querySelector("th"),t=r?d(r):d(n)-1,(!e&&this.instance.wtSettings.settings.defaultRowHeight<t||e<t)&&(this.instance.wtViewport.oversizedRows[o]=++t)}},markOversizedColumnHeaders:function(){var e=this.wot.getOverlayName();if(this.columnHeaderCount&&!this.wot.wtViewport.hasOversizedColumnHeadersMarked[e]&&!this.wtTable.isWorkingOnClone()){for(var t=this.wtTable.getRenderedColumnsCount(),o=0;o<this.columnHeaderCount;o++)for(var n=-1*this.rowHeaderCount;n<t;n++)this.markIfOversizedColumnHeader(n);this.wot.wtViewport.hasOversizedColumnHeadersMarked[e]=!0}},adjustColumnHeaderHeights:function(){for(var e=this.wot.getSetting("columnHeaders"),t=this.wot.wtTable.THEAD.childNodes,o=this.wot.wtViewport.oversizedColumnHeaders,n=0,r=e.length;n<r;n++)if(o[n]){if(!t[n]||0===t[n].childNodes.length)return;t[n].childNodes[0].style.height=o[n]+"px"}},markIfOversizedColumnHeader:function(e){for(var t,o,n,r=this.wot.wtTable.columnFilter.renderedToSource(e),i=this.columnHeaderCount,s=this.wot.wtSettings.settings.defaultRowHeight,a=this.wot.getSetting("columnHeaderHeight")||[];i;)i--,t=this.wot.wtTable.getColumnHeaderHeight(i),(o=this.wot.wtTable.getColumnHeader(r,i))&&(n=d(o),(!t&&s<n||t<n)&&(this.wot.wtViewport.oversizedColumnHeaders[i]=n),Array.isArray(a)?null!=a[i]&&(this.wot.wtViewport.oversizedColumnHeaders[i]=a[i]):isNaN(a)||(this.wot.wtViewport.oversizedColumnHeaders[i]=a),this.wot.wtViewport.oversizedColumnHeaders[i]<(a[i]||a)&&(this.wot.wtViewport.oversizedColumnHeaders[i]=a[i]||a))},renderCells:function(e,t,o){for(var n,i,s=0;s<o;s++)i=this.columnFilter.renderedToSource(s),n=0===s?t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(i)]:n.nextSibling,"TH"==n.nodeName&&(n=r(n,t)),c(n,"hide")||(n.className=""),n.removeAttribute("style"),this.wot.wtSettings.settings.cellRenderer(e,i,n);return n},adjustColumnWidths:function(e){var t=0,o=this.wot.cloneSource?this.wot.cloneSource:this.wot,n=o.wtTable.holder,r=this.wot.getSetting("defaultColumnWidth"),i=this.wot.getSetting("rowHeaderWidth");if(n.offsetHeight<n.scrollHeight&&(t=u()),this.wot.wtViewport.columnsRenderCalculator.refreshStretching(this.wot.wtViewport.getViewportWidth()-t),null!=(i=this.instance.getSetting("onModifyRowHeaderWidth",i)))for(var s=0;s<this.rowHeaderCount;s++){var a=Array.isArray(i)?i[s]:i;a=null==a?r:a,this.COLGROUP.childNodes[s].style.width=a+"px"}for(var l=0;l<e;l++){var c=this.wtTable.getStretchedColumnWidth(this.columnFilter.renderedToSource(l));this.COLGROUP.childNodes[l+this.rowHeaderCount].style.width=c+"px"}},appendToTbody:function(e){this.TBODY.appendChild(e),this.wtTable.tbodyChildrenLength++},getOrCreateTrForRow:function(e,t){var o;return e>=this.wtTable.tbodyChildrenLength?(o=this.createRow(),this.appendToTbody(o)):o=0===e?this.TBODY.firstChild:t.nextSibling,o.className&&o.removeAttribute("class"),o},createRow:function(){for(var e=document.createElement("TR"),t=0;t<this.rowHeaderCount;t++)e.appendChild(document.createElement("TH"));return e},renderRowHeader:function(e,t,o){o.className="",o.removeAttribute("style"),this.rowHeaders[t](e,o,t)},renderRowHeaders:function(e,t){for(var o=t.firstChild,r=0;r<this.rowHeaderCount;r++)o?"TD"==o.nodeName&&(o=n(o,t)):(o=document.createElement("TH"),t.appendChild(o)),this.renderRowHeader(e,r,o),o=o.nextSibling},adjustAvailableNodes:function(){this.adjustColGroups(),this.adjustThead()},renderColumnHeaders:function(){if(this.columnHeaderCount)for(var e=this.wtTable.getRenderedColumnsCount(),t=0;t<this.columnHeaderCount;t++)for(var o=this.getTrForColumnHeaders(t),n=-1*this.rowHeaderCount;n<e;n++){var r=this.columnFilter.renderedToSource(n);this.renderColumnHeader(t,r,o.childNodes[n+this.rowHeaderCount])}},adjustColGroups:function(){for(var e=this.wtTable.getRenderedColumnsCount();this.wtTable.colgroupChildrenLength<e+this.rowHeaderCount;)this.COLGROUP.appendChild(document.createElement("COL")),this.wtTable.colgroupChildrenLength++;for(;this.wtTable.colgroupChildrenLength>e+this.rowHeaderCount;)this.COLGROUP.removeChild(this.COLGROUP.lastChild),this.wtTable.colgroupChildrenLength--;this.rowHeaderCount&&a(this.COLGROUP.childNodes[0],"rowHeader")},adjustThead:function(){var e=this.wtTable.getRenderedColumnsCount(),t=this.THEAD.firstChild;if(this.columnHeaders.length){for(var o=0,n=this.columnHeaders.length;o<n;o++){for(t=this.THEAD.childNodes[o],t||(t=document.createElement("TR"),this.THEAD.appendChild(t)),this.theadChildrenLength=t.childNodes.length;this.theadChildrenLength<e+this.rowHeaderCount;)t.appendChild(document.createElement("TH")),this.theadChildrenLength++;for(;this.theadChildrenLength>e+this.rowHeaderCount;)t.removeChild(t.lastChild),this.theadChildrenLength--}var r=this.THEAD.childNodes.length;if(r>this.columnHeaders.length)for(var i=this.columnHeaders.length;i<r;i++)this.THEAD.removeChild(this.THEAD.lastChild)}else t&&l(t)},getTrForColumnHeaders:function(e){return this.THEAD.childNodes[e]},renderColumnHeader:function(e,t,o){return o.className="",o.removeAttribute("style"),this.columnHeaders[e](t,o,e)},adjustColumns:function(e,t){for(var o=e.childNodes.length;o<t;){var n=document.createElement("TD");e.appendChild(n),o++}for(;o>t;)e.removeChild(e.lastChild),o--},removeRedundantColumns:function(e){for(;this.wtTable.tbodyChildrenLength>e;)this.TBODY.removeChild(this.TBODY.lastChild),this.wtTable.tbodyChildrenLength--}},{}),window.WalkontableTableRenderer=p},{"helpers/dom/element":47}],23:[function(e,t,o){"use strict";Object.defineProperties(o,{WalkontableViewport:{get:function(){return b}},__esModule:{value:!0}});var n,r,i,s,a,l,u=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,c=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},d=c.getScrollbarWidth,h=(c.getScrollTop,c.getStyle),f=c.offset,p=c.outerHeight,g=c.outerWidth,m=((i=e("helpers/object"))&&i.__esModule&&i||{default:i}).objectEach,w=((s=e("eventManager"))&&s.__esModule&&s||{default:s}).EventManager,v=((a=e("calculator/viewportColumns"))&&a.__esModule&&a||{default:a}).WalkontableViewportColumnsCalculator,y=((l=e("calculator/viewportRows"))&&l.__esModule&&l||{default:l}).WalkontableViewportRowsCalculator,b=function(e){var t=this;this.wot=e,this.instance=this.wot,this.oversizedRows=[],this.oversizedColumnHeaders=[],this.hasOversizedColumnHeadersMarked={},this.clientHeight=0,this.containerWidth=NaN,this.rowHeaderWidth=NaN,this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,this.eventManager=new w(this.wot),this.eventManager.addEventListener(window,"resize",function(){t.clientHeight=t.getWorkspaceHeight()})};$traceurRuntime.createClass(b,{getWorkspaceHeight:function(){var e,t=this.instance.wtOverlays.topOverlay.trimmingContainer,o=0;return t===window?o=document.documentElement.clientHeight:(e=p(t),o=e>0&&t.clientHeight>0?t.clientHeight:1/0),o},getWorkspaceWidth:function(){var e,t,o=this.wot.getSetting("totalColumns"),n=this.instance.wtOverlays.leftOverlay.trimmingContainer,r=this.wot.getSetting("stretchH"),i=document.documentElement.offsetWidth;return this.wot.getSetting("preventOverflow")?g(this.instance.wtTable.wtRootElement):(e=u.freezeOverlays?Math.min(i-this.getWorkspaceOffset().left,i):Math.min(this.getContainerFillWidth(),i-this.getWorkspaceOffset().left,i),n===window&&o>0&&this.sumColumnWidths(0,o-1)>e?document.documentElement.clientWidth:n===window||"scroll"!=(t=h(this.instance.wtOverlays.leftOverlay.trimmingContainer,"overflow"))&&"hidden"!=t&&"auto"!=t?"none"!==r&&r?e:Math.max(e,g(this.instance.wtTable.TABLE)):Math.max(e,n.clientWidth))},hasVerticalScroll:function(){return this.getWorkspaceActualHeight()>this.getWorkspaceHeight()},hasHorizontalScroll:function(){return this.getWorkspaceActualWidth()>this.getWorkspaceWidth()},sumColumnWidths:function(e,t){for(var o=0;e<t;)o+=this.wot.wtTable.getColumnWidth(e),e++;return o},getContainerFillWidth:function(){if(this.containerWidth)return this.containerWidth;var e,t,o=this.instance.wtTable.holder;return t=document.createElement("div"),t.style.width="100%",t.style.height="1px",o.appendChild(t),e=t.offsetWidth,this.containerWidth=e,o.removeChild(t),e},getWorkspaceOffset:function(){return f(this.wot.wtTable.TABLE)},getWorkspaceActualHeight:function(){return p(this.wot.wtTable.TABLE)},getWorkspaceActualWidth:function(){return g(this.wot.wtTable.TABLE)||g(this.wot.wtTable.TBODY)||g(this.wot.wtTable.THEAD)},getColumnHeaderHeight:function(){return isNaN(this.columnHeaderHeight)&&(this.columnHeaderHeight=p(this.wot.wtTable.THEAD)),this.columnHeaderHeight},getViewportHeight:function(){var e,t=this.getWorkspaceHeight();return t===1/0?t:(e=this.getColumnHeaderHeight(),e>0&&(t-=e),t)},getRowHeaderWidth:function(){var e=this.instance.getSetting("rowHeaderWidth"),t=this.instance.getSetting("rowHeaders");if(e){this.rowHeaderWidth=0;for(var o=0,n=t.length;o<n;o++)this.rowHeaderWidth+=e[o]||e}if(this.wot.cloneSource)return this.wot.cloneSource.wtViewport.getRowHeaderWidth();if(isNaN(this.rowHeaderWidth))if(t.length){var r=this.instance.wtTable.TABLE.querySelector("TH");this.rowHeaderWidth=0;for(var i=0,s=t.length;i<s;i++)r?(this.rowHeaderWidth+=g(r),r=r.nextSibling):this.rowHeaderWidth+=50}else this.rowHeaderWidth=0;return this.rowHeaderWidth=this.instance.getSetting("onModifyRowHeaderWidth",this.rowHeaderWidth)||this.rowHeaderWidth,this.rowHeaderWidth},getViewportWidth:function(){var e,t=this.getWorkspaceWidth();return t===1/0?t:(e=this.getRowHeaderWidth(),e>0?t-e:t)},createRowsCalculator:function(){var e,t,o,n,r,i,s,a=void 0!==arguments[0]&&arguments[0],l=this;return this.rowHeaderWidth=NaN,e=this.wot.wtSettings.settings.renderAllRows?1/0:this.getViewportHeight(),t=this.wot.wtOverlays.topOverlay.getScrollPosition()-this.wot.wtOverlays.topOverlay.getTableParentOffset(),t<0&&(t=0),o=this.wot.getSetting("fixedRowsTop"),r=this.wot.getSetting("fixedRowsBottom"),s=this.wot.getSetting("totalRows"),
30
+ o&&(i=this.wot.wtOverlays.topOverlay.sumCellSizes(0,o),t+=i,e-=i),r&&this.wot.wtOverlays.bottomOverlay.clone&&(i=this.wot.wtOverlays.bottomOverlay.sumCellSizes(s-r,s),e-=i),n=this.wot.wtTable.holder.clientHeight===this.wot.wtTable.holder.offsetHeight?0:d(),new y(e,t,this.wot.getSetting("totalRows"),function(e){return l.wot.wtTable.getRowHeight(e)},a?null:this.wot.wtSettings.settings.viewportRowCalculatorOverride,a,n)},createColumnsCalculator:function(){var e,t,o=void 0!==arguments[0]&&arguments[0],n=this,r=this.getViewportWidth();if(this.columnHeaderHeight=NaN,e=this.wot.wtOverlays.leftOverlay.getScrollPosition()-this.wot.wtOverlays.leftOverlay.getTableParentOffset(),e<0&&(e=0),t=this.wot.getSetting("fixedColumnsLeft")){var i=this.wot.wtOverlays.leftOverlay.sumCellSizes(0,t);e+=i,r-=i}return this.wot.wtTable.holder.clientWidth!==this.wot.wtTable.holder.offsetWidth&&(r-=d()),new v(r,e,this.wot.getSetting("totalColumns"),function(e){return n.wot.wtTable.getColumnWidth(e)},o?null:this.wot.wtSettings.settings.viewportColumnCalculatorOverride,o,this.wot.getSetting("stretchH"),function(e,t){return n.wot.getSetting("onBeforeStretchingColumnWidth",e,t)})},createRenderCalculators:function(){var e=void 0!==arguments[0]&&arguments[0];if(e){var t=this.createRowsCalculator(!0),o=this.createColumnsCalculator(!0);this.areAllProposedVisibleRowsAlreadyRendered(t)&&this.areAllProposedVisibleColumnsAlreadyRendered(o)||(e=!1)}return e||(this.rowsRenderCalculator=this.createRowsCalculator(),this.columnsRenderCalculator=this.createColumnsCalculator()),this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,e},createVisibleCalculators:function(){this.rowsVisibleCalculator=this.createRowsCalculator(!0),this.columnsVisibleCalculator=this.createColumnsCalculator(!0)},areAllProposedVisibleRowsAlreadyRendered:function(e){return!!this.rowsVisibleCalculator&&(!(e.startRow<this.rowsRenderCalculator.startRow||e.startRow===this.rowsRenderCalculator.startRow&&e.startRow>0)&&!(e.endRow>this.rowsRenderCalculator.endRow||e.endRow===this.rowsRenderCalculator.endRow&&e.endRow<this.wot.getSetting("totalRows")-1))},areAllProposedVisibleColumnsAlreadyRendered:function(e){return!!this.columnsVisibleCalculator&&(!(e.startColumn<this.columnsRenderCalculator.startColumn||e.startColumn===this.columnsRenderCalculator.startColumn&&e.startColumn>0)&&!(e.endColumn>this.columnsRenderCalculator.endColumn||e.endColumn===this.columnsRenderCalculator.endColumn&&e.endColumn<this.wot.getSetting("totalColumns")-1))},resetHasOversizedColumnHeadersMarked:function(){m(this.hasOversizedColumnHeadersMarked,function(e,t,o){o[t]=void 0})}},{}),window.WalkontableViewport=b},{browser:24,"calculator/viewportColumns":4,"calculator/viewportRows":5,eventManager:42,"helpers/dom/element":47,"helpers/object":53}],24:[function(e,t,o){"use strict";function n(e,t){var o=new n.Core(e,t||{});return o.init(),o}var r,i,s,a,l,u,c,d,h,f,p,g,m,w,v,y,b,C,_,R,M,S,E,O;t.exports=n,n.utils={},(r=e("shims/runtime"))&&r.__esModule,(i=e("es6collections"))&&i.__esModule;var T=((s=e("pluginHooks"))&&s.__esModule&&s||{default:s}).Hooks,k=((a=e("numbro"))&&a.__esModule&&a||{default:a}).default,x=((l=e("moment"))&&l.__esModule&&l||{default:l}).default;"object"==typeof window&&(void 0===window.numbro&&(window.numbro=k),void 0===window.moment&&(window.moment=x)),n.hooks||(n.hooks=new T),n.utils.Hooks=T,(u=e("core"))&&u.__esModule,(c=e("renderers/_cellDecorator"))&&c.__esModule,(d=e("cellTypes"))&&d.__esModule,(h=e("plugins/jqueryHandsontable"))&&h.__esModule;var H=(f=e("helpers/array"))&&f.__esModule&&f||{default:f},D=(p=e("helpers/browser"))&&p.__esModule&&p||{default:p},A=(g=e("helpers/data"))&&g.__esModule&&g||{default:g},P=(m=e("helpers/date"))&&m.__esModule&&m||{default:m},L=(w=e("helpers/feature"))&&w.__esModule&&w||{default:w},N=(v=e("helpers/function"))&&v.__esModule&&v||{default:v},I=(y=e("helpers/mixed"))&&y.__esModule&&y||{default:y},W=(b=e("helpers/number"))&&b.__esModule&&b||{default:b},j=(C=e("helpers/object"))&&C.__esModule&&C||{default:C},V=(_=e("helpers/setting"))&&_.__esModule&&_||{default:_},B=(R=e("helpers/string"))&&R.__esModule&&R||{default:R},F=(M=e("helpers/unicode"))&&M.__esModule&&M||{default:M},z=(S=e("helpers/dom/element"))&&S.__esModule&&S||{default:S},Y=(E=e("helpers/dom/event"))&&E.__esModule&&E||{default:E},U=[H,D,A,P,L,N,I,W,j,V,B,F],G=[z,Y];n.buildDate="Tue Mar 07 2017 13:32:36 GMT+0100 (CET)",n.packageName="handsontable",n.version="0.31.1";/^@@/.test("@@baseVersion")||(n.baseVersion="@@baseVersion"),n.plugins={};var $=((O=e("plugins"))&&O.__esModule&&O||{default:O}).registerPlugin;n.plugins.registerPlugin=$,n.helper={},n.dom={},n.Dom=n.dom,H.arrayEach(U,function(e){H.arrayEach(Object.getOwnPropertyNames(e),function(t){"_"!==t.charAt(0)&&(n.helper[t]=e[t])})}),H.arrayEach(G,function(e){H.arrayEach(Object.getOwnPropertyNames(e),function(t){"_"!==t.charAt(0)&&(n.dom[t]=e[t])})})},{cellTypes:25,core:26,es6collections:"es6collections","helpers/array":43,"helpers/browser":44,"helpers/data":45,"helpers/date":46,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/feature":49,"helpers/function":50,"helpers/mixed":51,"helpers/number":52,"helpers/object":53,"helpers/setting":54,"helpers/string":55,"helpers/unicode":56,moment:"moment",numbro:"numbro",pluginHooks:60,plugins:61,"plugins/jqueryHandsontable":2,"renderers/_cellDecorator":118,"shims/runtime":125}],25:[function(e,t,o){"use strict";var n,r,i,s,a,l,u,c,d,h,f,p,g,m,w,v,y,b,C,_,R,M,S,E,O=((n=e("helpers/browser"))&&n.__esModule&&n||{default:n}).isMobileBrowser,T=((r=e("editors"))&&r.__esModule&&r||{default:r}).getEditorConstructor,k=((i=e("renderers"))&&i.__esModule&&i||{default:i}).getRenderer,x=(((s=e("editors/autocompleteEditor"))&&s.__esModule&&s||{default:s}).AutocompleteEditor,((a=e("editors/checkboxEditor"))&&a.__esModule&&a||{default:a}).CheckboxEditor,((l=e("editors/dateEditor"))&&l.__esModule&&l||{default:l}).DateEditor,((u=e("editors/dropdownEditor"))&&u.__esModule&&u||{default:u}).DropdownEditor,((c=e("editors/handsontableEditor"))&&c.__esModule&&c||{default:c}).HandsontableEditor,((d=e("editors/mobileTextEditor"))&&d.__esModule&&d||{default:d}).MobileTextEditor,((h=e("editors/numericEditor"))&&h.__esModule&&h||{default:h}).NumericEditor,((f=e("editors/passwordEditor"))&&f.__esModule&&f||{default:f}).PasswordEditor,((p=e("editors/selectEditor"))&&p.__esModule&&p||{default:p}).SelectEditor,((g=e("editors/textEditor"))&&g.__esModule&&g||{default:g}).TextEditor,((m=e("renderers/autocompleteRenderer"))&&m.__esModule&&m||{default:m}).AutocompleteRenderer,((w=e("renderers/checkboxRenderer"))&&w.__esModule&&w||{default:w}).CheckboxRenderer,((v=e("renderers/htmlRenderer"))&&v.__esModule&&v||{default:v}).HtmlRenderer,((y=e("renderers/numericRenderer"))&&y.__esModule&&y||{default:y}).NumericRenderer,((b=e("renderers/passwordRenderer"))&&b.__esModule&&b||{default:b}).PasswordRenderer,((C=e("renderers/textRenderer"))&&C.__esModule&&C||{default:C}).TextRenderer,((_=e("validators/autocompleteValidator"))&&_.__esModule&&_||{default:_}).AutocompleteValidator,((R=e("validators/dateValidator"))&&R.__esModule&&R||{default:R}).DateValidator,((M=e("validators/timeValidator"))&&M.__esModule&&M||{default:M}).TimeValidator,((S=e("validators/numericValidator"))&&S.__esModule&&S||{default:S}).NumericValidator,((E=e("browser"))&&E.__esModule&&E||{default:E}).default);x.AutocompleteCell={editor:T("autocomplete"),renderer:k("autocomplete"),validator:x.AutocompleteValidator},x.CheckboxCell={editor:T("checkbox"),renderer:k("checkbox")},x.TextCell={editor:T(O()?"mobile":"text"),renderer:k("text")},x.NumericCell={editor:T("numeric"),renderer:k("numeric"),validator:x.NumericValidator,dataType:"number"},x.DateCell={editor:T("date"),validator:x.DateValidator,renderer:k("autocomplete")},x.TimeCell={editor:T("text"),validator:x.TimeValidator,renderer:k("text")},x.HandsontableCell={editor:T("handsontable"),renderer:k("autocomplete")},x.PasswordCell={editor:T("password"),renderer:k("password"),copyable:!1},x.DropdownCell={editor:T("dropdown"),renderer:k("autocomplete"),validator:x.AutocompleteValidator},x.cellTypes={text:x.TextCell,date:x.DateCell,time:x.TimeCell,numeric:x.NumericCell,checkbox:x.CheckboxCell,autocomplete:x.AutocompleteCell,handsontable:x.HandsontableCell,password:x.PasswordCell,dropdown:x.DropdownCell},x.cellLookup={validator:{numeric:x.NumericValidator,autocomplete:x.AutocompleteValidator}}},{browser:24,editors:30,"editors/autocompleteEditor":32,"editors/checkboxEditor":33,"editors/dateEditor":34,"editors/dropdownEditor":35,"editors/handsontableEditor":36,"editors/mobileTextEditor":37,"editors/numericEditor":38,"editors/passwordEditor":39,"editors/selectEditor":40,"editors/textEditor":41,"helpers/browser":44,renderers:117,"renderers/autocompleteRenderer":119,"renderers/checkboxRenderer":120,"renderers/htmlRenderer":121,"renderers/numericRenderer":122,"renderers/passwordRenderer":123,"renderers/textRenderer":124,"validators/autocompleteValidator":133,"validators/dateValidator":134,"validators/numericValidator":135,"validators/timeValidator":136}],26:[function(e,t,o){"use strict";var n,r,i,s,a,l,u,c,d,h,f,p,g,m,w,v,y,b,C,_,R,M,S,E=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,O=((r=e("numbro"))&&r.__esModule&&r||{default:r}).default,T=(i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i},k=T.addClass,x=T.empty,H=T.isChildOfWebComponentTable,D=T.removeClass,A=((s=e("helpers/setting"))&&s.__esModule&&s||{default:s}).columnFactory,P=((a=e("helpers/function"))&&a.__esModule&&a||{default:a}).isFunction,L=(l=e("helpers/mixed"))&&l.__esModule&&l||{default:l},N=L.isDefined,I=L.isUndefined,W=((u=e("helpers/browser"))&&u.__esModule&&u||{default:u}).isMobileBrowser,j=((c=e("dataMap"))&&c.__esModule&&c||{default:c}).DataMap,V=((d=e("editorManager"))&&d.__esModule&&d||{default:d}).EditorManager,B=((h=e("eventManager"))&&h.__esModule&&h||{default:h}).eventManager,F=(f=e("helpers/object"))&&f.__esModule&&f||{default:f},z=F.deepClone,Y=F.duckSchema,U=F.extend,G=F.isObject,$=F.isObjectEquals,K=F.deepObjectSize,X=F.createObjectPropListener,q=(p=e("helpers/array"))&&p.__esModule&&p||{default:p},Z=q.arrayFlatten,J=q.arrayMap,Q=((g=e("plugins"))&&g.__esModule&&g||{default:g}).getPlugin,ee=((m=e("renderers"))&&m.__esModule&&m||{default:m}).getRenderer,te=((w=e("helpers/string"))&&w.__esModule&&w||{default:w}).randomString,oe=((v=e("helpers/number"))&&v.__esModule&&v||{default:v}).rangeEach,ne=((y=e("tableView"))&&y.__esModule&&y||{default:y}).TableView,re=((b=e("dataSource"))&&b.__esModule&&b||{default:b}).DataSource,ie=(C=e("helpers/data"))&&C.__esModule&&C||{default:C},se=ie.translateRowsToColumns,ae=ie.cellMethodLookupFactory,le=ie.spreadsheetColumnLabel,ue=((_=e("utils/recordTranslator"))&&_.__esModule&&_||{default:_}).getTranslator,ce=((R=e("3rdparty/walkontable/src/cell/coords"))&&R.__esModule&&R||{default:R}).WalkontableCellCoords,de=((M=e("3rdparty/walkontable/src/cell/range"))&&M.__esModule&&M||{default:M}).WalkontableCellRange,he=((S=e("3rdparty/walkontable/src/calculator/viewportColumns"))&&S.__esModule&&S||{default:S}).WalkontableViewportColumnsCalculator;E.activeGuid=null,E.Core=function(e,t){function o(){var e=!1;return{validatorsInQueue:0,valid:!0,addValidatorToQueue:function(){this.validatorsInQueue++,e=!1},removeValidatorFormQueue:function(){this.validatorsInQueue=this.validatorsInQueue-1<0?0:this.validatorsInQueue-1,this.checkIfQueueIsEmpty()},onQueueEmpty:function(e){},checkIfQueueIsEmpty:function(){0==this.validatorsInQueue&&0==e&&(e=!0,this.onQueueEmpty(this.valid))}}}function n(e,t,n){function r(){var o;e.length&&(o=E.hooks.run(p,"beforeChange",e,t),P(o)?console.warn("Your beforeChange callback returns a function. It's not supported since Handsontable 0.12.1 (and the returned function will not be executed)."):o===!1&&e.splice(0,e.length)),n()}var i=new o;i.onQueueEmpty=r;for(var s=e.length-1;s>=0;s--)if(null===e[s])e.splice(s,1);else{var a=e[s][0],l=u.propToCol(e[s][1]),c=p.getCellMeta(a,l);if("numeric"===c.type&&"string"==typeof e[s][3]&&e[s][3].length>0&&(/^-?[\d\s]*(\.|\,)?\d*$/.test(e[s][3])||c.format)){var d=e[s][3].length;I(c.language)?O.culture("en-US"):e[s][3].indexOf(".")===d-3&&e[s][3].indexOf(",")===-1?O.culture("en-US"):O.culture(c.language);O.cultureData(O.culture()).delimiters;O.validate(e[s][3])&&!isNaN(e[s][3])?e[s][3]=parseFloat(e[s][3]):e[s][3]=O().unformat(e[s][3])||e[s][3]}p.getCellValidator(c)&&(i.addValidatorToQueue(),p.validateCell(e[s][3],c,function(t,o){return function(n){if("boolean"!=typeof n)throw new Error("Validation error: result is not boolean");if(n===!1&&o.allowInvalid===!1){e.splice(t,1),o.valid=!0;D(p.getCell(o.row,o.col),p.getSettings().invalidCellClassName),--t}i.removeValidatorFormQueue()}}(s,c),t))}i.checkIfQueueIsEmpty()}function r(e,t){var o=e.length-1;if(!(o<0)){for(;0<=o;o--){var n=!1;if(null!==e[o]){if(null!=e[o][2]||null!=e[o][3]){if(l.settings.allowInsertRow)for(;e[o][0]>p.countRows()-1;){var r=u.createRow(void 0,void 0,t);if(0===r){n=!0;break}}if(!n){if("array"===p.dataType&&(!l.settings.columns||0===l.settings.columns.length)&&l.settings.allowInsertColumn)for(;u.propToCol(e[o][1])>p.countCols()-1;)u.createCol(void 0,void 0,t);u.set(e[o][0],e[o][1],e[o][3])}}}else e.splice(o,1)}p.forceFullRender=!0,d.adjustRowsAndCols(),E.hooks.run(p,"beforeChangeRender",e,t),h.refreshBorders(null,!0),p.view.wt.wtOverlays.adjustElementsSize(),E.hooks.run(p,"afterChange",e,t||"edit");var i=p.getActiveEditor();i&&N(i.refreshValue)&&i.refreshValue()}}function i(e,t,o){return"object"==typeof e?e:[[e,t,o]]}function s(e){if(e.hasOwnProperty("type")){var t,o={};if("object"==typeof e.type)t=e.type;else if("string"==typeof e.type&&void 0===(t=E.cellTypes[e.type]))throw new Error('You declared cell type "'+e.type+'" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');for(var n in t)t.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(o[n]=t[n]);return o}}function a(){throw new Error("This method cannot be called because this Handsontable instance has been destroyed")}var l,u,c,d,h,f,p=this,g=function(){},m=B(p),w=ue(p);U(g.prototype,fe.prototype),U(g.prototype,t),U(g.prototype,s(t)),this.rootElement=e,this.isHotTableEnv=H(this.rootElement),E.eventManager.isHotTableEnv=this.isHotTableEnv,this.container=document.createElement("DIV"),this.renderCall=!1,e.insertBefore(this.container,e.firstChild),this.guid="ht_"+te(),c=new re(p),this.rootElement.id&&"ht_"!==this.rootElement.id.substring(0,3)||(this.rootElement.id=this.guid),l={cellSettings:[],columnSettings:[],columnsSettingConflicts:["data","width"],settings:new g,selRange:null,isPopulated:null,scrollable:null,firstRun:!0},d={alter:function(e,t,o,n,r){function i(e,t,o,n){var r=function(){var e;return"array"===n?e=[]:"object"===n&&(e={}),e},i=J(new Array(o),function(){return r()});i.unshift(t,0),e.splice.apply(e,i)}var s;switch(o=o||1,e){case"insert_row":var a=p.countSourceRows();if(p.getSettings().maxRows===a)return;t=N(t)?t:a,s=u.createRow(t,o,n),i(l.cellSettings,t,o,"array"),s&&(h.isSelected()&&l.selRange.from.row>=t?(l.selRange.from.row=l.selRange.from.row+s,h.transformEnd(s,0)):h.refreshBorders());break;case"insert_col":s=u.createCol(t,o,n);for(var c=0,f=p.countSourceRows();c<f;c++)l.cellSettings[c]&&i(l.cellSettings[c],t,o);if(s){if(Array.isArray(p.getSettings().colHeaders)){var g=[t,0];g.length+=s,Array.prototype.splice.apply(p.getSettings().colHeaders,g)}h.isSelected()&&l.selRange.from.col>=t?(l.selRange.from.col=l.selRange.from.col+s,h.transformEnd(0,s)):h.refreshBorders()}break;case"remove_row":u.removeRow(t,o,n),l.cellSettings.splice(t,o);var m=p.countRows(),v=p.getSettings().fixedRowsTop;v>=t+1&&(p.getSettings().fixedRowsTop-=Math.min(o,v-t));var y=p.getSettings().fixedRowsBottom;y&&t>=m-y&&(p.getSettings().fixedRowsBottom-=Math.min(o,y)),d.adjustRowsAndCols(),h.refreshBorders();break;case"remove_col":var b=w.toPhysicalColumn(t);u.removeCol(t,o,n);for(var C=0,_=p.countSourceRows();C<_;C++)l.cellSettings[C]&&l.cellSettings[C].splice(b,o);var R=p.getSettings().fixedColumnsLeft;R>=t+1&&(p.getSettings().fixedColumnsLeft-=Math.min(o,R-t)),Array.isArray(p.getSettings().colHeaders)&&(void 0===b&&(b=-1),p.getSettings().colHeaders.splice(b,o)),d.adjustRowsAndCols(),h.refreshBorders();break;default:throw new Error('There is no such action "'+e+'"')}r||d.adjustRowsAndCols()},adjustRowsAndCols:function(){if(l.settings.minRows){var e=p.countRows();if(e<l.settings.minRows)for(var t=0,o=l.settings.minRows;t<o-e;t++)u.createRow(p.countRows(),1,"auto")}if(l.settings.minSpareRows){var n=p.countEmptyRows(!0);if(n<l.settings.minSpareRows)for(;n<l.settings.minSpareRows&&p.countSourceRows()<l.settings.maxRows;n++)u.createRow(p.countRows(),1,"auto")}var r;if((l.settings.minCols||l.settings.minSpareCols)&&(r=p.countEmptyCols(!0)),l.settings.minCols&&!l.settings.columns&&p.countCols()<l.settings.minCols)for(;p.countCols()<l.settings.minCols;r++)u.createCol(p.countCols(),1,"auto");if(l.settings.minSpareCols&&!l.settings.columns&&"array"===p.dataType&&r<l.settings.minSpareCols)for(;r<l.settings.minSpareCols&&p.countCols()<l.settings.maxCols;r++)u.createCol(p.countCols(),1,"auto");var i=p.countRows(),s=p.countCols();if(0!==i&&0!==s||h.deselect(),h.isSelected()){var a=!1,c=l.selRange.from.row,d=l.selRange.from.col,f=l.selRange.to.row,g=l.selRange.to.col;c>i-1?(c=i-1,a=!0,f>c&&(f=c)):f>i-1&&(f=i-1,a=!0,c>f&&(c=f)),d>s-1?(d=s-1,a=!0,g>d&&(g=d)):g>s-1&&(g=s-1,a=!0,d>g&&(d=g)),a&&p.selectCell(c,d,f,g)}p.view&&p.view.wt.wtOverlays.adjustElementsSize()},populateFromArray:function(e,t,o,n,r,i,s){var a,u,c,d,h=[],f={};if(0===(u=t.length))return!1;var g,m,w,v;null===o||o.row,null===o||o.col;switch(r){case"shift_down":for(g=o?o.col-e.col+1:0,m=o?o.row-e.row+1:0,t=se(t),c=0,d=t.length,w=Math.max(d,g);c<w;c++)if(c<d){for(a=0,u=t[c].length;a<m-u;a++)t[c].push(t[c][a%u]);t[c].unshift(e.col+c,e.row,0),p.spliceCol.apply(p,t[c])}else t[c%d][0]=e.col+c,p.spliceCol.apply(p,t[c%d]);break;case"shift_right":for(g=o?o.col-e.col+1:0,m=o?o.row-e.row+1:0,a=0,u=t.length,v=Math.max(u,m);a<v;a++)if(a<u){for(c=0,d=t[a].length;c<g-d;c++)t[a].push(t[a][c%d]);t[a].unshift(e.row+a,e.col,0),p.spliceRow.apply(p,t[a])}else t[a%u][0]=e.row+a,p.spliceRow.apply(p,t[a%u]);break;case"overwrite":default:f.row=e.row,f.col=e.col;var y,b={row:o&&e?o.row-e.row+1:1,col:o&&e?o.col-e.col+1:1},C=0,_=0,R=!0,M=function(e){var o=void 0!==arguments[1]?arguments[1]:null,n=t[e%t.length];return null!==o?n[o%n.length]:n},S=t.length,E=o?o.row-e.row+1:0;for(u=o?E:Math.max(S,E),a=0;a<u&&!(o&&f.row>o.row&&E>S||!l.settings.allowInsertRow&&f.row>p.countRows()-1||f.row>=l.settings.maxRows);a++){var O=a-C,T=M(O).length,k=o?o.col-e.col+1:0;if(d=o?k:Math.max(T,k),f.col=e.col,y=p.getCellMeta(f.row,f.col),"CopyPaste.paste"!==n&&"Autofill.autofill"!==n||!y.skipRowOnPaste){for(_=0,c=0;c<d&&!(o&&f.col>o.col&&k>T||!l.settings.allowInsertColumn&&f.col>p.countCols()-1||f.col>=l.settings.maxCols);c++)if(y=p.getCellMeta(f.row,f.col),"CopyPaste.paste"!==n&&"Autofill.fill"!==n||!y.skipColumnOnPaste)if(y.readOnly)f.col++;else{var x=c-_,H=M(O,x),D=p.getDataAtCell(f.row,f.col),A={row:O,col:x};if("Autofill.fill"===n){var P=p.runHooks("beforeAutofillInsidePopulate",A,i,t,s,{},b);P&&(H=I(P.value)?H:P.value)}if(null!==H&&"object"==typeof H)if(null===D||"object"!=typeof D)R=!1;else{var L=Y(D[0]||D),N=Y(H[0]||H);$(L,N)?H=z(H):R=!1}else null!==D&&"object"==typeof D&&(R=!1);R&&h.push([f.row,f.col,H]),R=!0,f.col++}else _++,f.col++,d++;f.row++}else C++,f.row++,u++}p.setDataAtCell(h,null,null,n||"populateFromArray")}}},this.selection=h={inProgress:!1,selectedHeader:{cols:!1,rows:!1},setSelectedHeaders:function(){var e=void 0!==arguments[0]&&arguments[0],t=void 0!==arguments[1]&&arguments[1],o=void 0!==arguments[2]&&arguments[2];p.selection.selectedHeader.rows=e,p.selection.selectedHeader.cols=t,p.selection.selectedHeader.corner=o},begin:function(){p.selection.inProgress=!0},finish:function(){var e=p.getSelected();E.hooks.run(p,"afterSelectionEnd",e[0],e[1],e[2],e[3]),E.hooks.run(p,"afterSelectionEndByProp",e[0],p.colToProp(e[1]),e[2],p.colToProp(e[3])),p.selection.inProgress=!1},isInProgress:function(){return p.selection.inProgress},setRangeStart:function(e,t){E.hooks.run(p,"beforeSetRangeStart",e),l.selRange=new de(e,e,e),h.setRangeEnd(e,null,t)},setRangeStartOnly:function(e){E.hooks.run(p,"beforeSetRangeStartOnly",e),l.selRange=new de(e,e,e)},setRangeEnd:function(e,t,o){if(null!==l.selRange){var n,r=!1,i=!0,s=p.view.wt.wtTable.getFirstVisibleRow(),a=p.view.wt.wtTable.getFirstVisibleColumn(),c={row:null,col:null};E.hooks.run(p,"beforeSetRangeEnd",e),p.selection.begin(),c.row=e.row<0?s:e.row,c.col=e.col<0?a:e.col,l.selRange.to=new ce(c.row,c.col),l.settings.multiSelect||(l.selRange.from=e),p.view.wt.selections.current.clear(),n=p.getCellMeta(l.selRange.highlight.row,l.selRange.highlight.col).disableVisualSelection,"string"==typeof n&&(n=[n]),(n===!1||Array.isArray(n)&&n.indexOf("current")===-1)&&p.view.wt.selections.current.add(l.selRange.highlight),p.view.wt.selections.area.clear(),(n===!1||Array.isArray(n)&&n.indexOf("area")===-1)&&h.isMultiple()&&(p.view.wt.selections.area.add(l.selRange.from),p.view.wt.selections.area.add(l.selRange.to)),(l.settings.currentHeaderClassName||l.settings.currentRowClassName||l.settings.currentColClassName)&&(p.view.wt.selections.highlight.clear(),p.view.wt.selections.highlight.add(l.selRange.from),p.view.wt.selections.highlight.add(l.selRange.to));var d=X("value");E.hooks.run(p,"afterSelection",l.selRange.from.row,l.selRange.from.col,l.selRange.to.row,l.selRange.to.col,d),E.hooks.run(p,"afterSelectionByProp",l.selRange.from.row,u.colToProp(l.selRange.from.col),l.selRange.to.row,u.colToProp(l.selRange.to.col),d),(0===l.selRange.from.row&&l.selRange.to.row===p.countRows()-1&&p.countRows()>1||0===l.selRange.from.col&&l.selRange.to.col===p.countCols()-1&&p.countCols()>1)&&(r=!0),(e.row<0||e.col<0)&&(i=!1),d.isTouched()&&(t=!d.value),t!==!1&&!r&&i&&(l.selRange.from&&!h.isMultiple()?p.view.scrollViewport(l.selRange.from):p.view.scrollViewport(e)),h.selectedHeader.rows&&h.selectedHeader.cols?k(p.rootElement,["ht__selection--rows","ht__selection--columns"]):h.selectedHeader.rows?(D(p.rootElement,"ht__selection--columns"),k(p.rootElement,"ht__selection--rows")):h.selectedHeader.cols?(D(p.rootElement,"ht__selection--rows"),k(p.rootElement,"ht__selection--columns")):D(p.rootElement,["ht__selection--rows","ht__selection--columns"]),h.refreshBorders(null,o)}},refreshBorders:function(e,t){t||f.destroyEditor(e),p.view.render(),h.isSelected()&&!t&&f.prepareEditor()},isMultiple:function(){var e=!(l.selRange.to.col===l.selRange.from.col&&l.selRange.to.row===l.selRange.from.row),t=E.hooks.run(p,"afterIsMultipleSelection",e);if(e)return t},transformStart:function(e,t,o,n){var r,i,s,a,u=new ce(e,t),c=0,d=0;p.runHooks("modifyTransformStart",u),r=p.countRows(),i=p.countCols(),a=p.getSettings().fixedRowsBottom,l.selRange.highlight.row+e>r-1?o&&l.settings.minSpareRows>0&&!(a&&l.selRange.highlight.row>=r-a-1)?(p.alter("insert_row",r),r=p.countRows()):l.settings.autoWrapCol&&(u.row=1-r,u.col=l.selRange.highlight.col+u.col==i-1?1-i:1):l.settings.autoWrapCol&&l.selRange.highlight.row+u.row<0&&l.selRange.highlight.col+u.col>=0&&(u.row=r-1,u.col=l.selRange.highlight.col+u.col==0?i-1:-1),l.selRange.highlight.col+u.col>i-1?o&&l.settings.minSpareCols>0?(p.alter("insert_col",i),i=p.countCols()):l.settings.autoWrapRow&&(u.row=l.selRange.highlight.row+u.row==r-1?1-r:1,u.col=1-i):l.settings.autoWrapRow&&l.selRange.highlight.col+u.col<0&&l.selRange.highlight.row+u.row>=0&&(u.row=l.selRange.highlight.row+u.row==0?r-1:-1,u.col=i-1),s=new ce(l.selRange.highlight.row+u.row,l.selRange.highlight.col+u.col),s.row<0?(c=-1,s.row=0):s.row>0&&s.row>=r&&(c=1,s.row=r-1),s.col<0?(d=-1,s.col=0):s.col>0&&s.col>=i&&(d=1,s.col=i-1),p.runHooks("afterModifyTransformStart",s,c,d),h.setRangeStart(s,n)},transformEnd:function(e,t){var o,n,r,i=new ce(e,t),s=0,a=0;p.runHooks("modifyTransformEnd",i),o=p.countRows(),n=p.countCols(),r=new ce(l.selRange.to.row+i.row,l.selRange.to.col+i.col),r.row<0?(s=-1,r.row=0):r.row>0&&r.row>=o&&(s=1,r.row=o-1),r.col<0?(a=-1,r.col=0):r.col>0&&r.col>=n&&(a=1,r.col=n-1),p.runHooks("afterModifyTransformEnd",r,s,a),h.setRangeEnd(r,!0)},isSelected:function(){return null!==l.selRange},inInSelection:function(e){return!!h.isSelected()&&l.selRange.includes(e)},deselect:function(){h.isSelected()&&(p.selection.inProgress=!1,l.selRange=null,p.view.wt.selections.current.clear(),p.view.wt.selections.area.clear(),(l.settings.currentHeaderClassName||l.settings.currentRowClassName||l.settings.currentColClassName)&&p.view.wt.selections.highlight.clear(),f.destroyEditor(),h.refreshBorders(),D(p.rootElement,["ht__selection--rows","ht__selection--columns"]),E.hooks.run(p,"afterDeselect"))},selectAll:function(){l.settings.multiSelect&&(h.setSelectedHeaders(!0,!0,!0),h.setRangeStart(new ce(0,0)),h.setRangeEnd(new ce(p.countRows()-1,p.countCols()-1),!1))},empty:function(){if(h.isSelected()){var e,t,o=l.selRange.getTopLeftCorner(),n=l.selRange.getBottomRightCorner(),r=[];for(e=o.row;e<=n.row;e++)for(t=o.col;t<=n.col;t++)p.getCellMeta(e,t).readOnly||r.push([e,t,""]);p.setDataAtCell(r)}}},this.init=function(){c.setData(l.settings.data),E.hooks.run(p,"beforeInit"),W()&&k(p.rootElement,"mobile"),this.updateSettings(l.settings,!0),this.view=new ne(this),f=new V(p,l,h,u),this.forceFullRender=!0,E.hooks.run(p,"init"),this.view.render(),"object"==typeof l.firstRun&&(E.hooks.run(p,"afterChange",l.firstRun[0],l.firstRun[1]),l.firstRun=!1),E.hooks.run(p,"afterInit")},this.validateCell=function(e,t,o,n){function r(e){var n=t.visualCol,r=t.visualRow,i=p.getCell(r,n,!0);i&&"TH"!=i.nodeName&&p.view.wt.wtSettings.settings.cellRenderer(r,n,i),o(e)}var i=p.getCellValidator(t);"[object RegExp]"===Object.prototype.toString.call(i)&&(i=function(e){return function(t,o){o(e.test(t))}}(i)),P(i)?(e=E.hooks.run(p,"beforeValidate",e,t.visualRow,t.prop,n),p._registerTimeout(setTimeout(function(){i.call(t,e,function(o){o=E.hooks.run(p,"afterValidate",o,e,t.visualRow,t.prop,n),t.valid=o,r(o),E.hooks.run(p,"postAfterValidate",o,e,t.visualRow,t.prop,n)})},0))):p._registerTimeout(setTimeout(function(){t.valid=!0,r(t.valid)},0))},this.setDataAtCell=function(e,t,o,s){var a,l,d,h=i(e,t,o),f=[];for(a=0,l=h.length;a<l;a++){if("object"!=typeof h[a])throw new Error("Method `setDataAtCell` accepts row number or changes array of arrays as its first parameter");if("number"!=typeof h[a][1])throw new Error("Method `setDataAtCell` accepts row and column number as its parameters. If you want to use object property name, use method `setDataAtRowProp`");d=u.colToProp(h[a][1]),f.push([h[a][0],d,c.getAtCell(w.toPhysicalRow(h[a][0]),h[a][1]),h[a][2]])}s||"object"!=typeof e||(s=t),p.runHooks("afterSetDataAtCell",f,s),n(f,s,function(){r(f,s)})},this.setDataAtRowProp=function(e,t,o,s){var a,l,u=i(e,t,o),d=[];for(a=0,l=u.length;a<l;a++)d.push([u[a][0],u[a][1],c.getAtCell(w.toPhysicalRow(u[a][0]),u[a][1]),u[a][2]]);s||"object"!=typeof e||(s=t),p.runHooks("afterSetDataAtRowProp",d,s),n(d,s,function(){r(d,s)})},this.listen=function(){E.activeGuid=p.guid},this.unlisten=function(){E.activeGuid=null},this.isListening=function(){return E.activeGuid===p.guid},this.destroyEditor=function(e){h.refreshBorders(e)},this.populateFromArray=function(e,t,o,n,r,i,s,a,l){var u;if("object"!=typeof o||"object"!=typeof o[0])throw new Error("populateFromArray parameter `input` must be an array of arrays");return u="number"==typeof n?new ce(n,r):null,d.populateFromArray(new ce(e,t),o,u,i,s,a,l)},this.spliceCol=function(e,t,o){return u.spliceCol.apply(u,arguments)},this.spliceRow=function(e,t,o){return u.spliceRow.apply(u,arguments)},this.getSelected=function(){if(h.isSelected())return[l.selRange.from.row,l.selRange.from.col,l.selRange.to.row,l.selRange.to.col]},this.getSelectedRange=function(){if(h.isSelected())return l.selRange},this.render=function(){p.view&&(p.renderCall=!0,p.forceFullRender=!0,h.refreshBorders(null,!0))},this.loadData=function(e){if(Array.isArray(l.settings.dataSchema)?p.dataType="array":P(l.settings.dataSchema)?p.dataType="function":p.dataType="object",u&&u.destroy(),u=new j(p,l,g),"object"==typeof e&&null!==e)e.push&&e.splice||(e=[e]);else{if(null!==e)throw new Error("loadData only accepts array of objects or array of arrays ("+typeof e+" given)");e=[];var t,o=0,n=0,r=u.getSchema();for(o=0,n=l.settings.startRows;o<n;o++)if("object"!==p.dataType&&"function"!==p.dataType||!l.settings.dataSchema)if("array"===p.dataType)t=z(r[0]),e.push(t);else{t=[];for(var i=0,s=l.settings.startCols;i<s;i++)t.push(null);e.push(t)}else t=z(r),e.push(t)}l.isPopulated=!1,g.prototype.data=e,Array.isArray(e[0])&&(p.dataType="array"),u.dataSource=e,c.data=e,c.dataType=p.dataType,c.colToProp=u.colToProp.bind(u),c.propToCol=u.propToCol.bind(u),function(){l.cellSettings.length=0}(),d.adjustRowsAndCols(),E.hooks.run(p,"afterLoadData",l.firstRun),l.firstRun?l.firstRun=[null,"loadData"]:(E.hooks.run(p,"afterChange",null,"loadData"),p.render()),l.isPopulated=!0},this.getData=function(e,t,o,n){return I(e)?u.getAll():u.getRange(new ce(e,t),new ce(o,n),u.DESTINATION_RENDERER)},this.getCopyableText=function(e,t,o,n){return u.getCopyableText(new ce(e,t),new ce(o,n))},this.getCopyableData=function(e,t){return u.getCopyable(e,u.colToProp(t))},this.getSchema=function(){return u.getSchema()},this.updateSettings=function(e,t){var o,n,r,i=!1;if(N(e.rows))throw new Error('"rows" setting is no longer supported. do you mean startRows, minRows or maxRows?');if(N(e.cols))throw new Error('"cols" setting is no longer supported. do you mean startCols, minCols or maxCols?');for(o in e)"data"!==o&&(E.hooks.getRegistered().indexOf(o)>-1?(P(e[o])||Array.isArray(e[o]))&&(e[o].initialHook=!0,p.addHook(o,e[o])):!t&&e.hasOwnProperty(o)&&(g.prototype[o]=e[o]));void 0===e.data&&void 0===l.settings.data?p.loadData(null):void 0!==e.data?p.loadData(e.data):void 0!==e.columns&&u.createMap(),r=p.countCols();var a=e.columns||g.prototype.columns;if(a&&P(a)&&(r=p.countSourceCols(),i=!0),void 0===e.cell&&void 0===e.cells&&void 0===e.columns||(l.cellSettings.length=0),r>0){var c,f;for(o=0,n=0;o<r;o++)i&&!a(o)||(l.columnSettings[n]=A(g,l.columnsSettingConflicts),c=l.columnSettings[n].prototype,a&&(f=i?a(o):a[n])&&(U(c,f),U(c,s(f))),n++)}if(N(e.cell))for(var m in e.cell)if(e.cell.hasOwnProperty(m)){var w=e.cell[m];p.setCellMetaObject(w.row,w.col,w)}E.hooks.run(p,"afterCellMetaReset"),N(e.className)&&(g.prototype.className&&D(p.rootElement,g.prototype.className),e.className&&k(p.rootElement,e.className));var v=p.rootElement.style.height;""!==v&&(v=parseInt(p.rootElement.style.height,10));var y=e.height;if(P(y)&&(y=y()),t){p.rootElement.getAttribute("style")&&p.rootElement.setAttribute("data-initialstyle",p.rootElement.getAttribute("style"))}if(null===y){var b=p.rootElement.getAttribute("data-initialstyle");b&&(b.indexOf("height")>-1||b.indexOf("overflow")>-1)?p.rootElement.setAttribute("style",b):(p.rootElement.style.height="",p.rootElement.style.overflow="")}else void 0!==y&&(p.rootElement.style.height=y+"px",p.rootElement.style.overflow="hidden");if(void 0!==e.width){var C=e.width;P(C)&&(C=C()),p.rootElement.style.width=C+"px"}t||(u.clearLengthCache(),p.view&&p.view.wt.wtViewport.resetHasOversizedColumnHeadersMarked(),E.hooks.run(p,"afterUpdateSettings")),d.adjustRowsAndCols(),p.view&&!l.firstRun&&(p.forceFullRender=!0,h.refreshBorders(null,!0)),t||!p.view||""!==v&&""!==y&&void 0!==y||v===y||p.view.wt.wtOverlays.updateMainScrollableElements()},this.getValue=function(){var e=p.getSelected();if(g.prototype.getValue){if(P(g.prototype.getValue))return g.prototype.getValue.call(p);if(e)return p.getData()[e[0]][g.prototype.getValue]}else if(e)return p.getDataAtCell(e[0],e[1])},this.getSettings=function(){return l.settings},this.clear=function(){h.selectAll(),h.empty()},this.alter=function(e,t,o,n,r){
31
+ d.alter(e,t,o,n,r)},this.getCell=function(e,t,o){return p.view.getCellAtCoords(new ce(e,t),o)},this.getCoords=function(e){return this.view.wt.wtTable.getCoords.call(this.view.wt.wtTable,e)},this.colToProp=function(e){return u.colToProp(e)},this.propToCol=function(e){return u.propToCol(e)},this.toVisualRow=function(e){return w.toVisualRow(e)},this.toVisualColumn=function(e){return w.toVisualColumn(e)},this.toPhysicalRow=function(e){return w.toPhysicalRow(e)},this.toPhysicalColumn=function(e){return w.toPhysicalColumn(e)},this.getDataAtCell=function(e,t){return u.get(e,u.colToProp(t))},this.getDataAtRowProp=function(e,t){return u.get(e,t)},this.getDataAtCol=function(e){var t=[];return t.concat.apply(t,u.getRange(new ce(0,e),new ce(l.settings.data.length-1,e),u.DESTINATION_RENDERER))},this.getDataAtProp=function(e){var t,o=[];return t=u.getRange(new ce(0,u.propToCol(e)),new ce(l.settings.data.length-1,u.propToCol(e)),u.DESTINATION_RENDERER),o.concat.apply(o,t)},this.getSourceData=function(e,t,o,n){return void 0===e?c.getData():c.getByRange(new ce(e,t),new ce(o,n))},this.getSourceDataArray=function(e,t,o,n){return void 0===e?c.getData(!0):c.getByRange(new ce(e,t),new ce(o,n),!0)},this.getSourceDataAtCol=function(e){return c.getAtColumn(e)},this.getSourceDataAtRow=function(e){return c.getAtRow(e)},this.getSourceDataAtCell=function(e,t){return c.getAtCell(e,t)},this.getDataAtRow=function(e){return u.getRange(new ce(e,0),new ce(e,this.countCols()-1),u.DESTINATION_RENDERER)[0]},this.getDataType=function(e,t,o,n){var r=this,i=null,s=null;void 0===e&&(e=0,o=this.countRows(),t=0,n=this.countCols()),void 0===o&&(o=e),void 0===n&&(n=t);var a="mixed";return oe(Math.min(e,o),Math.max(e,o),function(e){var o=!0;return oe(Math.min(t,n),Math.max(t,n),function(t){return s=r.getCellMeta(e,t).type,i?o=i===s:i=s,o}),a=o?s:"mixed",o}),a},this.removeCellMeta=function(e,t,o){void 0!=p.getCellMeta(e,t)[o]&&delete l.cellSettings[e][t][o]},this.spliceCellsMeta=function(e,t){for(var o,n=[],r=2;r<arguments.length;r++)n[r-2]=arguments[r];(o=l.cellSettings).splice.apply(o,$traceurRuntime.spread([e,t],n))},this.setCellMetaObject=function(e,t,o){if("object"==typeof o)for(var n in o)if(o.hasOwnProperty(n)){var r=o[n];this.setCellMeta(e,t,n,r)}},this.setCellMeta=function(e,t,o,n){var r;r=w.toPhysical(e,t),e=r[0],t=r[1],l.cellSettings[e]||(l.cellSettings[e]=[]),l.cellSettings[e][t]||(l.cellSettings[e][t]=new l.columnSettings[t]),l.cellSettings[e][t][o]=n,E.hooks.run(p,"afterSetCellMeta",e,t,o,n)},this.getCellsMeta=function(){return Z(l.cellSettings)},this.getCellMeta=function(e,t){var o,n,r=u.colToProp(t),i=e,a=t;if(o=w.toPhysical(e,t),e=o[0],t=o[1],l.columnSettings[t]||(l.columnSettings[t]=A(g,l.columnsSettingConflicts)),l.cellSettings[e]||(l.cellSettings[e]=[]),l.cellSettings[e][t]||(l.cellSettings[e][t]=new l.columnSettings[t]),n=l.cellSettings[e][t],n.row=e,n.col=t,n.visualRow=i,n.visualCol=a,n.prop=r,n.instance=p,E.hooks.run(p,"beforeGetCellMeta",e,t,n),U(n,s(n)),n.cells){var c=n.cells.call(n,e,t,r);c&&(U(n,c),U(n,s(c)))}return E.hooks.run(p,"afterGetCellMeta",e,t,n),n},this.getCellMetaAtRow=function(e){return l.cellSettings[e]},this.isColumnModificationAllowed=function(){return!("object"===p.dataType||p.getSettings().columns)};var v=ae("renderer");this.getCellRenderer=function(e,t){return ee(v.call(this,e,t))},this.getCellEditor=ae("editor"),this.getCellValidator=ae("validator"),this.validateCells=function(e){var t=new o;e&&(t.onQueueEmpty=e);for(var n=p.countRows()-1;n>=0;){for(var r=p.countCols()-1;r>=0;)t.addValidatorToQueue(),p.validateCell(p.getDataAtCell(n,r),p.getCellMeta(n,r),function(e){if("boolean"!=typeof e)throw new Error("Validation error: result is not boolean");e===!1&&(t.valid=!1),t.removeValidatorFormQueue()},"validateCells"),r--;n--}t.checkIfQueueIsEmpty()},this.getRowHeader=function(e){var t=l.settings.rowHeaders;return void 0!==e&&(e=E.hooks.run(p,"modifyRowHeader",e)),void 0===e?(t=[],oe(p.countRows()-1,function(e){t.push(p.getRowHeader(e))})):Array.isArray(t)&&void 0!==t[e]?t=t[e]:P(t)?t=t(e):t&&"string"!=typeof t&&"number"!=typeof t&&(t=e+1),t},this.hasRowHeaders=function(){return!!l.settings.rowHeaders},this.hasColHeaders=function(){if(void 0!==l.settings.colHeaders&&null!==l.settings.colHeaders)return!!l.settings.colHeaders;for(var e=0,t=p.countCols();e<t;e++)if(p.getColHeader(e))return!0;return!1},this.getColHeader=function(e){var t=l.settings.columns&&P(l.settings.columns),o=l.settings.colHeaders;if(void 0===(e=E.hooks.run(p,"modifyColHeader",e))){for(var n=[],r=t?p.countSourceCols():p.countCols(),i=0;i<r;i++)n.push(p.getColHeader(i));o=n}else{var s=e;e=E.hooks.run(p,"modifyCol",e);var a=function(e){for(var t=[],o=p.countSourceCols(),n=0;n<o;n++)P(p.getSettings().columns)&&p.getSettings().columns(n)&&t.push(n);return t[e]}(e);l.settings.columns&&P(l.settings.columns)&&l.settings.columns(a)&&l.settings.columns(a).title?o=l.settings.columns(a).title:l.settings.columns&&l.settings.columns[e]&&l.settings.columns[e].title?o=l.settings.columns[e].title:Array.isArray(l.settings.colHeaders)&&void 0!==l.settings.colHeaders[e]?o=l.settings.colHeaders[e]:P(l.settings.colHeaders)?o=l.settings.colHeaders(e):l.settings.colHeaders&&"string"!=typeof l.settings.colHeaders&&"number"!=typeof l.settings.colHeaders&&(o=le(s))}return o},this._getColWidthFromSettings=function(e){var t=p.getCellMeta(0,e),o=t.width;if(void 0!==o&&o!==l.settings.width||(o=t.colWidths),void 0!==o&&null!==o){switch(typeof o){case"object":o=o[e];break;case"function":o=o(e)}"string"==typeof o&&(o=parseInt(o,10))}return o},this.getColWidth=function(e){var t=p._getColWidthFromSettings(e);return t=E.hooks.run(p,"modifyColWidth",t,e),void 0===t&&(t=he.DEFAULT_WIDTH),t},this._getRowHeightFromSettings=function(e){var t=l.settings.rowHeights;if(void 0!==t&&null!==t){switch(typeof t){case"object":t=t[e];break;case"function":t=t(e)}"string"==typeof t&&(t=parseInt(t,10))}return t},this.getRowHeight=function(e){var t=p._getRowHeightFromSettings(e);return t=E.hooks.run(p,"modifyRowHeight",t,e)},this.countSourceRows=function(){return E.hooks.run(p,"modifySourceLength")||(p.getSourceData()?p.getSourceData().length:0)},this.countSourceCols=function(){var e=p.getSourceData()&&p.getSourceData()[0]?p.getSourceData()[0]:[];return G(e)?K(e):e.length||0},this.countRows=function(){return u.getLength()},this.countCols=function(){var e=!1,t=0;if("array"===p.dataType&&(e=l.settings.data&&l.settings.data[0]&&l.settings.data[0].length),e&&(t=l.settings.data[0].length),l.settings.columns){if(P(l.settings.columns))if("array"===p.dataType){for(var o=0,n=0;n<t;n++)l.settings.columns(n)&&o++;t=o}else"object"!==p.dataType&&"function"!==p.dataType||(t=u.colToPropCache.length);else t=l.settings.columns.length}else"object"!==p.dataType&&"function"!==p.dataType||(t=u.colToPropCache.length);return t},this.rowOffset=function(){return p.view.wt.wtTable.getFirstRenderedRow()},this.colOffset=function(){return p.view.wt.wtTable.getFirstRenderedColumn()},this.countRenderedRows=function(){return p.view.wt.drawn?p.view.wt.wtTable.getRenderedRowsCount():-1},this.countVisibleRows=function(){return p.view.wt.drawn?p.view.wt.wtTable.getVisibleRowsCount():-1},this.countRenderedCols=function(){return p.view.wt.drawn?p.view.wt.wtTable.getRenderedColumnsCount():-1},this.countVisibleCols=function(){return p.view.wt.drawn?p.view.wt.wtTable.getVisibleColumnsCount():-1},this.countEmptyRows=function(e){for(var t,o=p.countRows()-1,n=0;o>=0;){if(t=E.hooks.run(this,"modifyRow",o),p.isEmptyRow(t))n++;else if(e)break;o--}return n},this.countEmptyCols=function(e){if(p.countRows()<1)return 0;for(var t=p.countCols()-1,o=0;t>=0;){if(p.isEmptyCol(t))o++;else if(e)break;t--}return o},this.isEmptyRow=function(e){return l.settings.isEmptyRow.call(p,e)},this.isEmptyCol=function(e){return l.settings.isEmptyCol.call(p,e)},this.selectCell=function(e,t,o,n,r,i){var s;if(i=I(i)||i===!0,"number"!=typeof e||e<0||e>=p.countRows())return!1;if("number"!=typeof t||t<0||t>=p.countCols())return!1;if(N(o)){if("number"!=typeof o||o<0||o>=p.countRows())return!1;if("number"!=typeof n||n<0||n>=p.countCols())return!1}return s=new ce(e,t),l.selRange=new de(s,s,s),i&&p.listen(),I(o)?h.setRangeEnd(l.selRange.from,r):h.setRangeEnd(new ce(o,n),r),p.selection.finish(),!0},this.selectCellByProp=function(e,t,o,n,r){return arguments[1]=u.propToCol(arguments[1]),N(arguments[3])&&(arguments[3]=u.propToCol(arguments[3])),p.selectCell.apply(p,arguments)},this.deselectCell=function(){h.deselect()},this.scrollViewportTo=function(e,t){var o=void 0!==arguments[2]&&arguments[2],n=void 0!==arguments[3]&&arguments[3];if(void 0!==e&&(e<0||e>=p.countRows()))return!1;if(void 0!==t&&(t<0||t>=p.countCols()))return!1;var r=!1;return void 0!==e&&void 0!==t&&(p.view.wt.wtOverlays.topOverlay.scrollTo(e,o),p.view.wt.wtOverlays.leftOverlay.scrollTo(t,n),r=!0),"number"==typeof e&&"number"!=typeof t&&(p.view.wt.wtOverlays.topOverlay.scrollTo(e,o),r=!0),"number"==typeof t&&"number"!=typeof e&&(p.view.wt.wtOverlays.leftOverlay.scrollTo(t,n),r=!0),r},this.destroy=function(){p._clearTimeouts(),p.view&&p.view.destroy(),c&&c.destroy(),c=null,x(p.rootElement),m.destroy(),E.hooks.run(p,"afterDestroy"),E.hooks.destroy(p);for(var e in p)p.hasOwnProperty(e)&&(P(p[e])?p[e]=a:"guid"!==e&&(p[e]=null));u&&u.destroy(),u=null,l=null,d=null,h=null,f=null,p=null,g=null},this.getActiveEditor=function(){return f.getActiveEditor()},this.getPlugin=function(e){return Q(this,e)},this.getInstance=function(){return p},this.addHook=function(e,t){E.hooks.add(e,t,p)},this.hasHook=function(e){return E.hooks.has(e,p)},this.addHookOnce=function(e,t){E.hooks.once(e,t,p)},this.removeHook=function(e,t){E.hooks.remove(e,t,p)},this.runHooks=function(e,t,o,n,r,i,s){return E.hooks.run(p,e,t,o,n,r,i,s)},this.timeouts=[],this._registerTimeout=function(e){this.timeouts.push(e)},this._clearTimeouts=function(){for(var e=0,t=this.timeouts.length;e<t;e++)clearTimeout(this.timeouts[e])},this.version=E.version,E.hooks.run(p,"construct")};var fe=function(){};fe.prototype={data:void 0,dataSchema:void 0,width:void 0,height:void 0,startRows:5,startCols:5,rowHeaders:void 0,colHeaders:null,colWidths:void 0,rowHeights:void 0,columns:void 0,cells:void 0,cell:[],comments:!1,customBorders:!1,minRows:0,minCols:0,maxRows:1/0,maxCols:1/0,minSpareRows:0,minSpareCols:0,allowInsertRow:!0,allowInsertColumn:!0,allowRemoveRow:!0,allowRemoveColumn:!0,multiSelect:!0,fillHandle:!0,fixedRowsTop:0,fixedRowsBottom:0,fixedColumnsLeft:0,outsideClickDeselects:!0,enterBeginsEditing:!0,enterMoves:{row:1,col:0},tabMoves:{row:0,col:1},autoWrapRow:!1,autoWrapCol:!1,copyRowsLimit:1e3,copyColsLimit:1e3,pasteMode:"overwrite",persistentState:void 0,currentRowClassName:void 0,currentColClassName:void 0,currentHeaderClassName:"ht__highlight",className:void 0,tableClassName:void 0,stretchH:"none",isEmptyRow:function(e){var t,o,n,r;for(t=0,o=this.countCols();t<o;t++)if(""!==(n=this.getDataAtCell(e,t))&&null!==n&&N(n))return"object"==typeof n&&(r=this.getCellMeta(e,t),$(this.getSchema()[r.prop],n));return!0},isEmptyCol:function(e){var t,o,n;for(t=0,o=this.countRows();t<o;t++)if(""!==(n=this.getDataAtCell(t,e))&&null!==n&&N(n))return!1;return!0},observeDOMVisibility:!0,allowInvalid:!0,allowEmpty:!0,invalidCellClassName:"htInvalid",placeholder:!1,placeholderCellClassName:"htPlaceholder",readOnlyCellClassName:"htDimmed",renderer:void 0,commentedCellClassName:"htCommentCell",fragmentSelection:!1,readOnly:!1,skipColumnOnPaste:!1,search:!1,type:"text",copyable:!0,editor:void 0,autoComplete:void 0,visibleRows:10,trimDropdown:!0,debug:!1,wordWrap:!0,noWordWrapClassName:"htNoWrap",contextMenu:void 0,contextMenuCopyPaste:void 0,copyPaste:void 0,undo:void 0,columnSorting:void 0,manualColumnMove:void 0,manualColumnResize:void 0,manualRowMove:void 0,manualRowResize:void 0,mergeCells:!1,viewportRowRenderingOffset:"auto",viewportColumnRenderingOffset:"auto",validator:void 0,disableVisualSelection:!1,sortIndicator:void 0,manualColumnFreeze:void 0,trimWhitespace:!0,settings:void 0,source:void 0,title:void 0,checkedTemplate:void 0,uncheckedTemplate:void 0,label:void 0,format:void 0,language:void 0,selectOptions:void 0,autoColumnSize:void 0,autoRowSize:void 0,dateFormat:void 0,correctFormat:!1,defaultDate:void 0,strict:void 0,allowHtml:!1,renderAllRows:void 0,preventOverflow:!1,bindRowsWithHeaders:void 0,collapsibleColumns:void 0,columnSummary:void 0,dropdownMenu:void 0,filters:void 0,formulas:void 0,ganttChart:void 0,headerTooltips:void 0,hiddenColumns:void 0,hiddenRows:void 0,nestedHeaders:void 0,trimRows:void 0,rowHeaderWidth:void 0,columnHeaderHeight:void 0,observeChanges:void 0,sortFunction:void 0,sortByRelevance:!0,filter:!0,filteringCaseSensitive:!1},E.DefaultSettings=fe},{"3rdparty/walkontable/src/calculator/viewportColumns":4,"3rdparty/walkontable/src/cell/coords":6,"3rdparty/walkontable/src/cell/range":7,browser:24,dataMap:27,dataSource:28,editorManager:29,eventManager:42,"helpers/array":43,"helpers/browser":44,"helpers/data":45,"helpers/dom/element":47,"helpers/function":50,"helpers/mixed":51,"helpers/number":52,"helpers/object":53,"helpers/setting":54,"helpers/string":55,numbro:"numbro",plugins:61,renderers:117,tableView:126,"utils/recordTranslator":130}],27:[function(e,t,o){"use strict";function n(e,t,o){var n=this;this.instance=e,this.priv=t,this.GridSettings=o,this.dataSource=this.instance.getSettings().data,this.cachedLength=null,this.skipCache=!1,this.latestSourceRowsCount=0,this.dataSource&&this.dataSource[0]?this.duckSchema=this.recursiveDuckSchema(this.dataSource[0]):this.duckSchema={},this.createMap(),this.interval=O.create(function(){return n.clearLengthCache()},"15fps"),this.instance.addHook("skipLengthCache",function(e){return n.onSkipLengthCache(e)})}Object.defineProperties(o,{DataMap:{get:function(){return n}},__esModule:{value:!0}});var r,i,s,a,l,u,c,d,h,f=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,p=((i=e("SheetClip"))&&i.__esModule&&i||{default:i}).default,g=((s=e("helpers/data"))&&s.__esModule&&s||{default:s}).cellMethodLookupFactory,m=((a=e("helpers/setting"))&&a.__esModule&&a||{default:a}).columnFactory,w=(l=e("helpers/object"))&&l.__esModule&&l||{default:l},v=w.createObjectPropListener,y=w.duckSchema,b=w.deepExtend,C=w.deepClone,_=w.isObject,R=w.deepObjectSize,M=(u=e("helpers/array"))&&u.__esModule&&u||{default:u},S=M.extendArray,E=M.to2dArray,O=((c=e("utils/interval"))&&c.__esModule&&c||{default:c}).Interval,T=((d=e("helpers/number"))&&d.__esModule&&d||{default:d}).rangeEach,k=((h=e("multiMap"))&&h.__esModule&&h||{default:h}).MultiMap;n.prototype.DESTINATION_RENDERER=1,n.prototype.DESTINATION_CLIPBOARD_GENERATOR=2,n.prototype.recursiveDuckSchema=function(e){return y(e)},n.prototype.recursiveDuckColumns=function(e,t,o){var n,r;if(void 0===t&&(t=0,o=""),"object"==typeof e&&!Array.isArray(e))for(r in e)e.hasOwnProperty(r)&&(null===e[r]?(n=o+r,this.colToPropCache.push(n),this.propToColCache.set(n,t),t++):t=this.recursiveDuckColumns(e[r],t,r+"."));return t},n.prototype.createMap=function(){var e,t=this.getSchema();if(void 0===t)throw new Error("trying to create `columns` definition but you didn't provide `schema` nor `data`");this.colToPropCache=[],this.propToColCache=new k;var o=this.instance.getSettings().columns;if(o){var n=o.length,r=0,i=!1,s=R(t);for("function"==typeof o&&(n=s>0?s:this.instance.countSourceCols(),i=!0),e=0;e<n;e++){var a=i?o(e):o[e];if(_(a)){if(void 0!==a.data){var l=i?r:e;this.colToPropCache[l]=a.data,this.propToColCache.set(a.data,l)}r++}}}else this.recursiveDuckColumns(t)},n.prototype.colToProp=function(e){return e=f.hooks.run(this.instance,"modifyCol",e),this.colToPropCache&&void 0!==this.colToPropCache[e]?this.colToPropCache[e]:e},n.prototype.propToCol=function(e){var t;return t=void 0===this.propToColCache.get(e)?e:this.propToColCache.get(e),t=f.hooks.run(this.instance,"unmodifyCol",t)},n.prototype.getSchema=function(){var e=this.instance.getSettings().dataSchema;return e?"function"==typeof e?e():e:this.duckSchema},n.prototype.createRow=function(e,t,o){var n,r,i=this.instance.countCols(),s=0;t||(t=1),("number"!=typeof e||e>=this.instance.countSourceRows())&&(e=this.instance.countSourceRows()),f.hooks.run(this.instance,"beforeCreateRow",e,t,o),r=e;for(var a=this.instance.getSettings().maxRows;s<t&&this.instance.countSourceRows()<a;)"array"===this.instance.dataType?this.instance.getSettings().dataSchema?n=C(this.getSchema()):(n=[],T(i-1,function(){return n.push(null)})):"function"===this.instance.dataType?n=this.instance.getSettings().dataSchema(e):(n={},b(n,this.getSchema())),e===this.instance.countSourceRows()?this.dataSource.push(n):this.spliceData(e,0,n),s++,r++;return f.hooks.run(this.instance,"afterCreateRow",e,s,o),this.instance.forceFullRender=!0,s},n.prototype.createCol=function(e,t,o){if(!this.instance.isColumnModificationAllowed())throw new Error("Cannot create new column. When data source in an object, you can only have as much columns as defined in first data row, data schema or in the 'columns' setting.If you want to be able to add new columns, you have to use array datasource.");var n,r,i=this.instance.countSourceRows(),s=this.dataSource,a=0;t||(t=1),("number"!=typeof e||e>=this.instance.countCols())&&(e=this.instance.countCols()),f.hooks.run(this.instance,"beforeCreateCol",e,t,o),r=e;for(var l=this.instance.getSettings().maxCols;a<t&&this.instance.countCols()<l;){if(n=m(this.GridSettings,this.priv.columnsSettingConflicts),"number"!=typeof e||e>=this.instance.countCols()){if(i>0)for(var u=0;u<i;u++)void 0===s[u]&&(s[u]=[]),s[u].push(null);else s.push([null]);this.priv.columnSettings.push(n)}else{for(var u=0;u<i;u++)s[u].splice(r,0,null);this.priv.columnSettings.splice(r,0,n)}a++,r++}return f.hooks.run(this.instance,"afterCreateCol",e,a,o),this.instance.forceFullRender=!0,a},n.prototype.removeRow=function(e,t,o){t||(t=1),"number"!=typeof e&&(e=-t),t=f.hooks.run(this.instance,"modifyRemovedAmount",t,e),e=(this.instance.countSourceRows()+e)%this.instance.countSourceRows();var n=this.physicalRowsToLogical(e,t);if(f.hooks.run(this.instance,"beforeRemoveRow",e,t,n,o)!==!1){var r,i=this.dataSource;r=this.filterData(e,t),r&&(i.length=0,Array.prototype.push.apply(i,r)),f.hooks.run(this.instance,"afterRemoveRow",e,t,n,o),this.instance.forceFullRender=!0}},n.prototype.removeCol=function(e,t,o){if("object"===this.instance.dataType||this.instance.getSettings().columns)throw new Error("cannot remove column with object data source or columns option specified");t||(t=1),"number"!=typeof e&&(e=-t),e=(this.instance.countCols()+e)%this.instance.countCols();var n=this.physicalColumnsToLogical(e,t),r=n.slice(0).sort(function(e,t){return t-e});if(f.hooks.run(this.instance,"beforeRemoveCol",e,t,n,o)!==!1){for(var i=!0,s=r.length,a=this.dataSource,l=0;l<s;l++)i&&n[0]!==n[l]-l&&(i=!1);if(i)for(var u=0,c=this.instance.countSourceRows();u<c;u++)a[u].splice(n[0],t);else{for(var d=0,h=this.instance.countSourceRows();d<h;d++)for(var p=0;p<s;p++)a[d].splice(r[p],1);for(var g=0;g<s;g++)this.priv.columnSettings.splice(n[g],1)}f.hooks.run(this.instance,"afterRemoveCol",e,t,n,o),this.instance.forceFullRender=!0}},n.prototype.spliceCol=function(e,t,o){var n=4<=arguments.length?[].slice.call(arguments,3):[],r=this.instance.getDataAtCol(e),i=r.slice(t,t+o);S(n,r.slice(t+o));for(var s=0;s<o;)n.push(null),s++;return E(n),this.instance.populateFromArray(t,e,n,null,null,"spliceCol"),i},n.prototype.spliceRow=function(e,t,o){var n=4<=arguments.length?[].slice.call(arguments,3):[],r=this.instance.getSourceDataAtRow(e),i=r.slice(t,t+o);S(n,r.slice(t+o));for(var s=0;s<o;)n.push(null),s++;return this.instance.populateFromArray(e,t,[n],null,null,"spliceRow"),i},n.prototype.spliceData=function(e,t,o){f.hooks.run(this.instance,"beforeDataSplice",e,t,o)!==!1&&this.dataSource.splice(e,t,o)},n.prototype.filterData=function(e,t){var o=this.physicalRowsToLogical(e,t);if(f.hooks.run(this.instance,"beforeDataFilter",e,t,o)!==!1)return this.dataSource.filter(function(e,t){return o.indexOf(t)==-1})},n.prototype.get=function(e,t){e=f.hooks.run(this.instance,"modifyRow",e);var o=this.dataSource[e],n=f.hooks.run(this.instance,"modifyRowData",e);o=isNaN(n)?n:o;var r=null;if(o&&o.hasOwnProperty&&o.hasOwnProperty(t))r=o[t];else if("string"==typeof t&&t.indexOf(".")>-1){var i=t.split("."),s=o;if(!s)return null;for(var a=0,l=i.length;a<l;a++)if(void 0===(s=s[i[a]]))return null;r=s}else"function"==typeof t&&(r=t(this.dataSource.slice(e,e+1)[0]));if(f.hooks.has("modifyData",this.instance)){var u=v(r);f.hooks.run(this.instance,"modifyData",e,this.propToCol(t),u,"get"),u.isTouched()&&(r=u.value)}return r};var x=g("copyable",!1);n.prototype.getCopyable=function(e,t){return x.call(this.instance,e,this.propToCol(t))?this.get(e,t):""},n.prototype.set=function(e,t,o,n){e=f.hooks.run(this.instance,"modifyRow",e,n||"datamapGet");var r=this.dataSource[e],i=f.hooks.run(this.instance,"modifyRowData",e);if(r=isNaN(i)?i:r,f.hooks.has("modifyData",this.instance)){var s=v(o);f.hooks.run(this.instance,"modifyData",e,this.propToCol(t),s,"set"),s.isTouched()&&(o=s.value)}if(r&&r.hasOwnProperty&&r.hasOwnProperty(t))r[t]=o;else if("string"==typeof t&&t.indexOf(".")>-1){for(var a=t.split("."),l=r,u=0,c=a.length-1;u<c;u++)void 0===l[a[u]]&&(l[a[u]]={}),l=l[a[u]];l[a[u]]=o}else"function"==typeof t?t(this.dataSource.slice(e,e+1)[0],o):r[t]=o},n.prototype.physicalRowsToLogical=function(e,t){for(var o,n=this.instance.countSourceRows(),r=(n+e)%n,i=[],s=t;r<n&&s;)o=f.hooks.run(this.instance,"modifyRow",r),i.push(o),s--,r++;return i},n.prototype.physicalColumnsToLogical=function(e,t){for(var o=this.instance.countCols(),n=(o+e)%o,r=[],i=t;n<o&&i;){var s=f.hooks.run(this.instance,"modifyCol",n);r.push(s),i--,n++}return r},n.prototype.clear=function(){for(var e=0;e<this.instance.countSourceRows();e++)for(var t=0;t<this.instance.countCols();t++)this.set(e,this.colToProp(t),"")},n.prototype.clearLengthCache=function(){this.cachedLength=null},n.prototype.getLength=function(){var e,t=this,o=this.instance.getSettings().maxRows;e=o<0||0===o?0:o||1/0;var n=this.instance.countSourceRows();if(f.hooks.has("modifyRow",this.instance)){var r=this.skipCache;this.interval.start(),n!==this.latestSourceRowsCount&&(r=!0),this.latestSourceRowsCount=n,null===this.cachedLength||r?(T(n-1,function(e){null===(e=f.hooks.run(t.instance,"modifyRow",e))&&--n}),this.cachedLength=n):n=this.cachedLength}else this.interval.stop();return Math.min(n,e)},n.prototype.getAll=function(){var e={row:0,col:0},t=this.instance.getSettings().maxRows;if(0===t)return[];var o={row:Math.min(Math.max(t-1,0),Math.max(this.instance.countSourceRows()-1,0)),col:Math.max(this.instance.countCols()-1,0)};return e.row-o.row!=0||this.instance.countSourceRows()?this.getRange(e,o,n.prototype.DESTINATION_RENDERER):[]},n.prototype.getRange=function(e,t,o){var n,r,i,s,a,l=[],u=o===this.DESTINATION_CLIPBOARD_GENERATOR?this.getCopyable:this.get;for(r=Math.max(e.row,t.row),s=Math.max(e.col,t.col),n=Math.min(e.row,t.row);n<=r;n++){a=[];var c=f.hooks.run(this.instance,"modifyRow",n);for(i=Math.min(e.col,t.col);i<=s&&null!==c;i++)a.push(u.call(this,n,this.colToProp(i)));null!==c&&l.push(a)}return l},n.prototype.getText=function(e,t){return p.stringify(this.getRange(e,t,this.DESTINATION_RENDERER))},n.prototype.getCopyableText=function(e,t){return p.stringify(this.getRange(e,t,this.DESTINATION_CLIPBOARD_GENERATOR))},n.prototype.onSkipLengthCache=function(e){var t=this;this.skipCache=!0,setTimeout(function(){t.skipCache=!1},e)},n.prototype.destroy=function(){this.interval.stop(),this.interval=null,this.instance=null,this.priv=null,this.GridSettings=null,this.dataSource=null,this.cachedLength=null,this.duckSchema=null}},{SheetClip:"SheetClip",browser:24,"helpers/array":43,"helpers/data":45,"helpers/number":52,"helpers/object":53,"helpers/setting":54,multiMap:59,"utils/interval":129}],28:[function(e,t,o){"use strict";Object.defineProperties(o,{DataSource:{get:function(){return u}},__esModule:{value:!0}});var n,r,i,s=((n=e("helpers/object"))&&n.__esModule&&n||{default:n}).getProperty,a=((r=e("helpers/array"))&&r.__esModule&&r||{default:r}).arrayEach,l=((i=e("helpers/number"))&&i.__esModule&&i||{default:i}).rangeEach,u=function(e){var t=void 0!==arguments[1]?arguments[1]:[];this.hot=e,this.data=t,this.dataType="array",this.colToProp=function(){},this.propToCol=function(){}};$traceurRuntime.createClass(u,{getData:function(){var e=void 0!==arguments[0]&&arguments[0],t=this.data;return e&&(t=this.getByRange({row:0,col:0},{row:Math.max(this.countRows()-1,0),col:Math.max(this.countColumns()-1,0)},!0)),t},setData:function(e){this.data=e},getAtColumn:function(e){var t=this,o=[];return a(this.data,function(n){var r=t.colToProp(e);n="string"==typeof r?s(n,r):n[r],o.push(n)}),o},getAtRow:function(e){return this.data[e]},getAtCell:function(e,t){var o=null,n=this.hot.runHooks("modifyRowData",e),r=isNaN(n)?n:this.data[e];if(r){var i=this.colToProp(t);o="string"==typeof i?s(r,i):"function"==typeof i?i(this.data.slice(e,e+1)[0]):r[i]}return o},getByRange:function(e,t){var o=void 0!==arguments[2]&&arguments[2],n=this,r=Math.min(e.row,t.row),i=Math.min(e.col,t.col),s=Math.max(e.row,t.row),a=Math.max(e.col,t.col),u=[];return l(r,s,function(e){var t,r=n.getAtRow(e);"array"===n.dataType?t=r.slice(i,a+1):"object"===n.dataType&&(t=o?[]:{},l(i,a,function(e){var i=n.colToProp(e);o?t.push(r[i]):t[i]=r[i]})),u.push(t)}),u},countRows:function(){return Array.isArray(this.data)?this.data.length:0},countColumns:function(){var e=0;return Array.isArray(this.data)&&("array"===this.dataType?e=this.data[0].length:"object"===this.dataType&&(e=Object.keys(this.data[0]).length)),e},destroy:function(){this.data=null,this.hot=null}},{})},{"helpers/array":43,"helpers/number":52,"helpers/object":53}],29:[function(e,t,o){"use strict";function n(e,t,o){function n(e){o.setSelectedHeaders(!1,!1,!1);var n="function"==typeof t.settings.enterMoves?t.settings.enterMoves(event):t.settings.enterMoves;e?o.transformStart(-n.row,-n.col):o.transformStart(n.row,n.col,!0)}function r(e){e?(o.selectedHeader.cols&&o.setSelectedHeaders(o.selectedHeader.rows,!1,!1),o.transformEnd(-1,0)):(o.setSelectedHeaders(!1,!1,!1),o.transformStart(-1,0))}function i(e){e?o.transformEnd(1,0):(o.setSelectedHeaders(!1,!1,!1),o.transformStart(1,0))}function s(e){e?o.transformEnd(0,1):(o.setSelectedHeaders(!1,!1,!1),o.transformStart(0,1))}function a(e){e?(o.selectedHeader.rows&&o.setSelectedHeaders(!1,o.selectedHeader.cols,!1),o.transformEnd(0,-1)):(o.setSelectedHeaders(!1,!1,!1),o.transformStart(0,-1))}function l(l){var u,b;if(e.isListening()&&(c.hooks.run(e,"beforeKeyDown",l),!C&&!y(l)&&(t.lastKeyCode=l.keyCode,o.isSelected()))){if(u=(l.ctrlKey||l.metaKey)&&!l.altKey,h&&!h.isWaiting()&&!(p(l.keyCode)||g(l.keyCode)||u||m.isEditorOpened()))return void m.openEditor("",l);switch(b=l.shiftKey?o.setRangeEnd:o.setRangeStart,l.keyCode){case f.A:!m.isEditorOpened()&&u&&(o.selectAll(),l.preventDefault(),w(l));break;case f.ARROW_UP:m.isEditorOpened()&&!h.isWaiting()&&m.closeEditorAndSaveChanges(u),r(l.shiftKey),l.preventDefault(),w(l);break;case f.ARROW_DOWN:m.isEditorOpened()&&!h.isWaiting()&&m.closeEditorAndSaveChanges(u),i(l.shiftKey),l.preventDefault(),w(l);break;case f.ARROW_RIGHT:m.isEditorOpened()&&!h.isWaiting()&&m.closeEditorAndSaveChanges(u),s(l.shiftKey),l.preventDefault(),w(l);break;case f.ARROW_LEFT:m.isEditorOpened()&&!h.isWaiting()&&m.closeEditorAndSaveChanges(u),a(l.shiftKey),l.preventDefault(),w(l);break;case f.TAB:o.setSelectedHeaders(!1,!1,!1);var _="function"==typeof t.settings.tabMoves?t.settings.tabMoves(l):t.settings.tabMoves;l.shiftKey?o.transformStart(-_.row,-_.col):o.transformStart(_.row,_.col,!0),l.preventDefault(),w(l);break;case f.BACKSPACE:case f.DELETE:o.empty(l),m.prepareEditor(),l.preventDefault();break;case f.F2:m.openEditor(null,l),h&&h.enableFullEditMode(),l.preventDefault();break;case f.ENTER:m.isEditorOpened()?(h&&h.state!==c.EditorState.WAITING&&m.closeEditorAndSaveChanges(u),n(l.shiftKey)):e.getSettings().enterBeginsEditing?(m.openEditor(null,l),h&&h.enableFullEditMode()):n(l.shiftKey),l.preventDefault(),v(l);break;case f.ESCAPE:m.isEditorOpened()&&m.closeEditorAndRestoreOriginalValue(u),l.preventDefault();break;case f.HOME:o.setSelectedHeaders(!1,!1,!1),b(l.ctrlKey||l.metaKey?new d(0,t.selRange.from.col):new d(t.selRange.from.row,0)),l.preventDefault(),w(l);break;case f.END:o.setSelectedHeaders(!1,!1,!1),b(l.ctrlKey||l.metaKey?new d(e.countRows()-1,t.selRange.from.col):new d(t.selRange.from.row,e.countCols()-1)),l.preventDefault(),w(l);break;case f.PAGE_UP:o.setSelectedHeaders(!1,!1,!1),o.transformStart(-e.countVisibleRows(),0),l.preventDefault(),w(l);break;case f.PAGE_DOWN:o.setSelectedHeaders(!1,!1,!1),o.transformStart(e.countVisibleRows(),0),l.preventDefault(),w(l)}}}var u,h,m=this,C=!1;u=b(e),this.destroyEditor=function(e){this.closeEditor(e)},this.getActiveEditor=function(){return h},this.prepareEditor=function(){var o,n,r,i,s,a,l;if(h&&h.isWaiting())return void this.closeEditor(!1,!1,function(e){e&&m.prepareEditor()});o=t.selRange.highlight.row,n=t.selRange.highlight.col,r=e.colToProp(n),i=e.getCell(o,n),s=e.getSourceDataAtCell(e.runHooks("modifyRow",o),n),a=e.getCellMeta(o,n),l=e.getCellEditor(a),l?(h=c.editors.getEditor(l,e),h.prepare(o,n,r,i,s,a)):h=void 0},this.isEditorOpened=function(){return h&&h.isOpened()},this.openEditor=function(e,t){h&&!h.cellProperties.readOnly?h.beginEditing(e,t):h&&h.cellProperties.readOnly&&t&&t.keyCode===f.ENTER&&n()},this.closeEditor=function(e,t,o){h?h.finishEditing(e,t,o):o&&o(!1)},this.closeEditorAndSaveChanges=function(e){return this.closeEditor(!1,e)},this.closeEditorAndRestoreOriginalValue=function(e){return this.closeEditor(!0,e)},function(){function t(e,t,o){"TD"==o.nodeName&&(m.openEditor(),h&&h.enableFullEditMode())}e.addHook("afterDocumentKeyDown",l),u.addEventListener(document.documentElement,"keydown",function(t){C||e.runHooks("afterDocumentKeyDown",t)}),e.view.wt.update("onCellDblClick",t),e.addHook("afterDestroy",function(){C=!0})}()}Object.defineProperties(o,{EditorManager:{get:function(){return n}},__esModule:{value:!0}});var r,i,s,a,l,u,c=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,d=((i=e("3rdparty/walkontable/src/cell/coords"))&&i.__esModule&&i||{default:i}).WalkontableCellCoords,h=(s=e("helpers/unicode"))&&s.__esModule&&s||{default:s},f=h.KEY_CODES,p=h.isMetaKey,g=h.isCtrlKey,m=(a=e("helpers/dom/event"))&&a.__esModule&&a||{default:a},w=m.stopPropagation,v=m.stopImmediatePropagation,y=m.isImmediatePropagationStopped,b=(((l=e("editors"))&&l.__esModule&&l||{default:l}).getEditor,((u=e("eventManager"))&&u.__esModule&&u||{default:u}).eventManager);c.EditorManager=n},{"3rdparty/walkontable/src/cell/coords":6,browser:24,editors:30,eventManager:42,"helpers/dom/event":48,"helpers/unicode":56}],30:[function(e,t,o){"use strict";function n(e){var t,o;o={},t=e,this.getConstructor=function(){return e},this.getInstance=function(e){return e.guid in o||(o[e.guid]=new t(e)),o[e.guid]},c.hooks.add("afterDestroy",function(){o={}})}function r(e,t){var o=new n(t);"string"==typeof e&&(h[e]=o,c.editors[d(e)+"Editor"]=t),f.set(t,o)}function i(e,t){var o;if("function"==typeof e)f.get(e)||r(null,e),o=f.get(e);else{if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter ');o=h[e]}if(!o)throw Error('No editor registered under name "'+e+'"');return o.getInstance(t)}function s(e){var t;if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter ');if(!(t=h[e]))throw Error('No editor registered under name "'+e+'"');return t.getConstructor()}function a(e){return!!h[e]}Object.defineProperties(o,{registerEditor:{get:function(){return r}},getEditor:{get:function(){return i}},hasEditor:{get:function(){return a}},getEditorConstructor:{get:function(){return s}},__esModule:{value:!0}});var l,u,c=((l=e("browser"))&&l.__esModule&&l||{default:l
32
+ }).default,d=((u=e("helpers/string"))&&u.__esModule&&u||{default:u}).toUpperCaseFirst,h={},f=new WeakMap;c.editors=c.editors||{},c.editors.registerEditor=r,c.editors.getEditor=i},{browser:24,"helpers/string":55}],31:[function(e,t,o){"use strict";function n(e){this.instance=e,this.state=a.EditorState.VIRGIN,this._opened=!1,this._fullEditMode=!1,this._closeCallback=null,this.init()}Object.defineProperties(o,{BaseEditor:{get:function(){return n}},__esModule:{value:!0}});var r,i,s,a=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,l=((i=e("helpers/mixed"))&&i.__esModule&&i||{default:i}).stringify,u=((s=e("3rdparty/walkontable/src/cell/coords"))&&s.__esModule&&s||{default:s}).WalkontableCellCoords;a.editors=a.editors||{},a.editors.BaseEditor=n,a.EditorState={VIRGIN:"STATE_VIRGIN",EDITING:"STATE_EDITING",WAITING:"STATE_WAITING",FINISHED:"STATE_FINISHED"},n.prototype._fireCallbacks=function(e){this._closeCallback&&(this._closeCallback(e),this._closeCallback=null)},n.prototype.init=function(){},n.prototype.getValue=function(){throw Error("Editor getValue() method unimplemented")},n.prototype.setValue=function(e){throw Error("Editor setValue() method unimplemented")},n.prototype.open=function(){throw Error("Editor open() method unimplemented")},n.prototype.close=function(){throw Error("Editor close() method unimplemented")},n.prototype.prepare=function(e,t,o,n,r,i){this.TD=n,this.row=e,this.col=t,this.prop=o,this.originalValue=r,this.cellProperties=i;var s=!document.activeElement||document.activeElement&&void 0===document.activeElement.nodeName;this.instance.view.isMouseDown()&&document.activeElement&&document.activeElement!==document.body&&!s?document.activeElement.blur():s&&document.body.focus(),this.state=a.EditorState.VIRGIN},n.prototype.extend=function(){function e(){t.apply(this,arguments)}var t=this.constructor;return function(e,t){function o(){}return o.prototype=t.prototype,e.prototype=new o,e.prototype.constructor=e,e}(e,t)},n.prototype.saveValue=function(e,t){var o,n;t?(o=this.instance.getSelected(),o[0]>o[2]&&(n=o[0],o[0]=o[2],o[2]=n),o[1]>o[3]&&(n=o[1],o[1]=o[3],o[3]=n)):o=[this.row,this.col,null,null],this.instance.populateFromArray(o[0],o[1],e,o[2],o[3],"edit")},n.prototype.beginEditing=function(e,t){this.state==a.EditorState.VIRGIN&&(this.instance.view.scrollViewport(new u(this.row,this.col)),this.instance.view.render(),this.state=a.EditorState.EDITING,e="string"==typeof e?e:this.originalValue,this.setValue(l(e)),this.open(t),this._opened=!0,this.focus(),this.instance.view.render(),this.instance.runHooks("afterBeginEditing",this.row,this.col))},n.prototype.finishEditing=function(e,t,o){var n,r=this;if(o){var i=this._closeCallback;this._closeCallback=function(e){i&&i(e),o(e),r.instance.view.render()}}if(!this.isWaiting()){if(this.state==a.EditorState.VIRGIN)return void this.instance._registerTimeout(setTimeout(function(){r._fireCallbacks(!0)},0));if(this.state==a.EditorState.EDITING){if(e)return this.cancelChanges(),void this.instance.view.render();var s=this.getValue();n=this.instance.getSettings().trimWhitespace?[["string"==typeof s?String.prototype.trim.call(s||""):s]]:[[s]],this.state=a.EditorState.WAITING,this.saveValue(n,t),this.instance.getCellValidator(this.cellProperties)?this.instance.addHookOnce("postAfterValidate",function(e){r.state=a.EditorState.FINISHED,r.discardEditor(e)}):(this.state=a.EditorState.FINISHED,this.discardEditor(!0))}}},n.prototype.cancelChanges=function(){this.state=a.EditorState.FINISHED,this.discardEditor()},n.prototype.discardEditor=function(e){this.state===a.EditorState.FINISHED&&(e===!1&&this.cellProperties.allowInvalid!==!0?(this.instance.selectCell(this.row,this.col),this.focus(),this.state=a.EditorState.EDITING,this._fireCallbacks(!1)):(this.close(),this._opened=!1,this._fullEditMode=!1,this.state=a.EditorState.VIRGIN,this._fireCallbacks(!0)))},n.prototype.enableFullEditMode=function(){this._fullEditMode=!0},n.prototype.isInFullEditMode=function(){return this._fullEditMode},n.prototype.isOpened=function(){return this._opened},n.prototype.isWaiting=function(){return this.state===a.EditorState.WAITING},n.prototype.checkEditorSection=function(){var e=this.instance.countRows(),t="";return this.row<this.instance.getSettings().fixedRowsTop?t=this.col<this.instance.getSettings().fixedColumnsLeft?"top-left-corner":"top":this.instance.getSettings().fixedRowsBottom&&this.row>=e-this.instance.getSettings().fixedRowsBottom?t=this.col<this.instance.getSettings().fixedColumnsLeft?"bottom-left-corner":"bottom":this.col<this.instance.getSettings().fixedColumnsLeft&&(t="left"),t}},{"3rdparty/walkontable/src/cell/coords":6,browser:24,"helpers/mixed":51}],32:[function(e,t,o){"use strict";function n(e){D=!1;var t=this.getActiveEditor();if(f(e.keyCode)||e.keyCode===h.BACKSPACE||e.keyCode===h.DELETE||e.keyCode===h.INSERT){var o=0;if(e.keyCode===h.C&&(e.ctrlKey||e.metaKey))return;t.isOpened()||(o+=10),t.htEditor&&t.instance._registerTimeout(setTimeout(function(){t.queryChoices(t.TEXTAREA.value),D=!0},o))}}Object.defineProperties(o,{AutocompleteEditor:{get:function(){return H}},__esModule:{value:!0}});var r,i,s,a,l,u,c,d=(r=e("helpers/unicode"))&&r.__esModule&&r||{default:r},h=d.KEY_CODES,f=d.isPrintableChar,p=((i=e("helpers/mixed"))&&i.__esModule&&i||{default:i}).stringify,g=((s=e("helpers/string"))&&s.__esModule&&s||{default:s}).stripTags,m=(a=e("helpers/array"))&&a.__esModule&&a||{default:a},w=m.pivot,v=(m.arrayFilter,m.arrayMap),y=(l=e("helpers/dom/element"))&&l.__esModule&&l||{default:l},b=y.addClass,C=y.getCaretPosition,_=y.getScrollbarWidth,R=y.getSelectionEndPosition,M=y.outerWidth,S=y.outerHeight,E=y.offset,O=y.getTrimmingContainer,T=y.setCaretPosition,k=((u=e("editors"))&&u.__esModule&&u||{default:u}).registerEditor,x=((c=e("handsontableEditor"))&&c.__esModule&&c||{default:c}).HandsontableEditor,H=x.prototype.extend();H.prototype.init=function(){x.prototype.init.apply(this,arguments),this.query=null,this.choices=[]},H.prototype.createElements=function(){x.prototype.createElements.apply(this,arguments),b(this.htContainer,"autocompleteEditor"),b(this.htContainer,window.navigator.platform.indexOf("Mac")===-1?"":"htMacScroll")};var D=!1;H.prototype.prepare=function(){this.instance.addHook("beforeKeyDown",n),x.prototype.prepare.apply(this,arguments)},H.prototype.open=function(){this.TEXTAREA_PARENT.style.overflow="auto",x.prototype.open.apply(this,arguments),this.TEXTAREA_PARENT.style.overflow="";var e=this.htEditor.getInstance(),t=this,o=void 0===this.cellProperties.trimDropdown||this.cellProperties.trimDropdown;this.TEXTAREA.style.visibility="visible",this.focus(),e.updateSettings({colWidths:o?[M(this.TEXTAREA)-2]:void 0,width:o?M(this.TEXTAREA)+_()+2:void 0,afterRenderer:function(e,o,n,r,i,s){var a,l,u=t.cellProperties,c=u.filteringCaseSensitive,d=u.allowHtml;i=p(i),i&&!d&&(a=c===!0?i.indexOf(this.query):i.toLowerCase().indexOf(t.query.toLowerCase()))!==-1&&(l=i.substr(a,t.query.length),i=i.replace(l,"<strong>"+l+"</strong>")),e.innerHTML=i},autoColumnSize:!0,modifyColWidth:function(e,t){var n=this.getPlugin("autoColumnSize").widths;return n[t]&&(e=n[t]),o?e:e+15}}),this.htEditor.view.wt.wtTable.holder.parentNode.style["padding-right"]=_()+2+"px",D&&(D=!1),t.instance._registerTimeout(setTimeout(function(){t.queryChoices(t.TEXTAREA.value)},0))},H.prototype.close=function(){x.prototype.close.apply(this,arguments)},H.prototype.queryChoices=function(e){var t=this;this.query=e;var o=this.cellProperties,n=o.source,r=(o.filter,o.filteringCaseSensitive,o.allowHtml),i=function(e){return v(e,function(e){return g(e)})};"function"==typeof n?n.call(this.cellProperties,e,function(e){t.updateChoicesList(r?e:i(e))}):Array.isArray(n)?this.updateChoicesList(r?n:i(n)):this.updateChoicesList([])},H.prototype.updateChoicesList=function(e){var t=C(this.TEXTAREA),o=R(this.TEXTAREA),n=this.cellProperties.sortByRelevance,r=this.cellProperties.filter,i=null,s=null;n&&(i=H.sortByRelevance(this.getValue(),e,this.cellProperties.filteringCaseSensitive));var a=Array.isArray(i)?i.length:0;if(r===!1)a&&(s=i[0]);else{for(var l=[],u=0,c=e.length;u<c&&!(n&&a<=u);u++)a?l.push(e[i[u]]):l.push(e[u]);s=0,e=l}this.choices=e,this.htEditor.loadData(w([e])),this.updateDropdownHeight(),this.flipDropdownIfNeeded(),this.cellProperties.strict===!0&&this.highlightBestMatchingChoice(s),this.instance.listen(),this.TEXTAREA.focus(),T(this.TEXTAREA,t,t===o?void 0:o)},H.prototype.flipDropdownIfNeeded=function(){var e=E(this.TEXTAREA),t=S(this.TEXTAREA),o=this.getDropdownHeight(),n=O(this.instance.view.wt.wtTable.TABLE),r=n.scrollTop,i=S(this.instance.view.wt.wtTable.THEAD),s={row:0,col:0};n!==window&&(s=E(n));var a=e.top-s.top-i+r,l=n.scrollHeight-a-i-t,u=o>l&&a>l;return u?this.flipDropdown(o):this.unflipDropdown(),this.limitDropdownIfNeeded(u?a:l,o),u},H.prototype.limitDropdownIfNeeded=function(e,t){if(t>e){var o=0,n=0,r=0,i=null;do r=this.htEditor.getRowHeight(n)||this.htEditor.view.wt.wtSettings.settings.defaultRowHeight,o+=r,n++;while(o<e)i=o-r,this.htEditor.flipped&&(this.htEditor.rootElement.style.top=parseInt(this.htEditor.rootElement.style.top,10)+t-i+"px"),this.setDropdownHeight(o-r)}},H.prototype.flipDropdown=function(e){var t=this.htEditor.rootElement.style;t.position="absolute",t.top=-e+"px",this.htEditor.flipped=!0},H.prototype.unflipDropdown=function(){var e=this.htEditor.rootElement.style;"absolute"===e.position&&(e.position="",e.top=""),this.htEditor.flipped=void 0},H.prototype.updateDropdownHeight=function(){var e=this.htEditor.getColWidth(0)+_()+2,t=this.cellProperties.trimDropdown;this.htEditor.updateSettings({height:this.getDropdownHeight(),width:t?void 0:e}),this.htEditor.view.wt.wtTable.alignOverlaysWithTrimmingContainer()},H.prototype.setDropdownHeight=function(e){this.htEditor.updateSettings({height:e})},H.prototype.finishEditing=function(e){e||this.instance.removeHook("beforeKeyDown",n),x.prototype.finishEditing.apply(this,arguments)},H.prototype.highlightBestMatchingChoice=function(e){"number"==typeof e?this.htEditor.selectCell(e,0):this.htEditor.deselectCell()},H.sortByRelevance=function(e,t,o){var n,r,i,s,a=[],l=e.length,u=[],c=t.length;if(0===l){for(s=0;s<c;s++)u.push(s);return u}for(s=0;s<c;s++)n=g(p(t[s])),(r=o?n.indexOf(e):n.toLowerCase().indexOf(e.toLowerCase()))!=-1&&(i=n.length-r-l,a.push({baseIndex:s,index:r,charsLeft:i,value:n}));for(a.sort(function(e,t){return t.index===-1?-1:e.index===-1?1:e.index<t.index?-1:t.index<e.index?1:e.index===t.index?e.charsLeft<t.charsLeft?-1:e.charsLeft>t.charsLeft?1:0:void 0}),s=0,c=a.length;s<c;s++)u.push(a[s].baseIndex);return u},H.prototype.getDropdownHeight=function(){var e=this.htEditor.getInstance().getRowHeight(0)||23,t=this.cellProperties.visibleRows;return this.choices.length>=t?t*e:this.choices.length*e+8},H.prototype.allowKeyEventPropagation=function(e){var t={row:this.htEditor.getSelectedRange()?this.htEditor.getSelectedRange().from.row:-1},o=!1;return e===h.ARROW_DOWN&&t.row>0&&t.row<this.htEditor.countRows()-1&&(o=!0),e===h.ARROW_UP&&t.row>-1&&(o=!0),o},H.prototype.discardEditor=function(e){x.prototype.discardEditor.apply(this,arguments),this.instance.view.render()},k("autocomplete",H)},{editors:30,handsontableEditor:36,"helpers/array":43,"helpers/dom/element":47,"helpers/mixed":51,"helpers/string":55,"helpers/unicode":56}],33:[function(e,t,o){"use strict";Object.defineProperties(o,{CheckboxEditor:{get:function(){return u}},__esModule:{value:!0}});var n,r,i,s=((n=e("editors"))&&n.__esModule&&n||{default:n}).registerEditor,a=((r=e("_baseEditor"))&&r.__esModule&&r||{default:r}).BaseEditor,l=((i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i}).hasClass,u=function(){$traceurRuntime.superConstructor(c).apply(this,arguments)},c=u;$traceurRuntime.createClass(u,{beginEditing:function(e,t){if(void 0===t){var o=this.TD.querySelector('input[type="checkbox"]');l(o,"htBadValue")||o.click()}},finishEditing:function(){},init:function(){},open:function(){},close:function(){},getValue:function(){},setValue:function(){},focus:function(){}},{},a),s("checkbox",u)},{_baseEditor:31,editors:30,"helpers/dom/element":47}],34:[function(e,t,o){"use strict";Object.defineProperties(o,{DateEditor:{get:function(){return E}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d,h,f=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,p=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},g=p.addClass,m=p.outerHeight,w=((i=e("helpers/object"))&&i.__esModule&&i||{default:i}).deepExtend,v=((s=e("eventManager"))&&s.__esModule&&s||{default:s}).EventManager,y=(a=e("editors"))&&a.__esModule&&a||{default:a},b=(y.getEditor,y.registerEditor),C=((l=e("helpers/unicode"))&&l.__esModule&&l||{default:l}).isMetaKey,_=((u=e("helpers/dom/event"))&&u.__esModule&&u||{default:u}).stopPropagation,R=((c=e("textEditor"))&&c.__esModule&&c||{default:c}).TextEditor,M=((d=e("moment"))&&d.__esModule&&d||{default:d}).default,S=((h=e("pikaday"))&&h.__esModule&&h||{default:h}).default,E=function(e){this.$datePicker=null,this.datePicker=null,this.datePickerStyle=null,this.defaultDateFormat="DD/MM/YYYY",this.isCellEdited=!1,this.parentDestroyed=!1,$traceurRuntime.superConstructor(O).call(this,e)},O=E;$traceurRuntime.createClass(E,{init:function(){var e=this;if("function"!=typeof M)throw new Error("You need to include moment.js to your project.");if("function"!=typeof S)throw new Error("You need to include Pikaday to your project.");$traceurRuntime.superGet(this,O.prototype,"init").call(this),this.instance.addHook("afterDestroy",function(){e.parentDestroyed=!0,e.destroyElements()})},createElements:function(){$traceurRuntime.superGet(this,O.prototype,"createElements").call(this),this.datePicker=document.createElement("DIV"),this.datePickerStyle=this.datePicker.style,this.datePickerStyle.position="absolute",this.datePickerStyle.top=0,this.datePickerStyle.left=0,this.datePickerStyle.zIndex=9999,g(this.datePicker,"htDatepickerHolder"),document.body.appendChild(this.datePicker),this.$datePicker=new S(this.getDatePickerConfig()),new v(this).addEventListener(this.datePicker,"mousedown",function(e){return _(e)}),this.hideDatepicker()},destroyElements:function(){this.$datePicker.destroy()},prepare:function(e,t,o,n,r,i){this._opened=!1,$traceurRuntime.superGet(this,O.prototype,"prepare").call(this,e,t,o,n,r,i)},open:function(){var e=void 0!==arguments[0]?arguments[0]:null;$traceurRuntime.superGet(this,O.prototype,"open").call(this),this.showDatepicker(e)},close:function(){var e=this;this._opened=!1,this.instance._registerTimeout(setTimeout(function(){e.instance.selection.refreshBorders()},0)),$traceurRuntime.superGet(this,O.prototype,"close").call(this)},finishEditing:function(){var e=void 0!==arguments[0]&&arguments[0],t=void 0!==arguments[1]&&arguments[1];if(e){var o=this.originalValue;void 0!==o&&this.setValue(o)}this.hideDatepicker(),$traceurRuntime.superGet(this,O.prototype,"finishEditing").call(this,e,t)},showDatepicker:function(e){this.$datePicker.config(this.getDatePickerConfig());var t,o=this.TD.getBoundingClientRect(),n=this.cellProperties.dateFormat||this.defaultDateFormat,r=this.$datePicker.config(),i=this.instance.view.isMouseDown(),s=!!e&&C(e.keyCode);this.datePickerStyle.top=window.pageYOffset+o.top+m(this.TD)+"px",this.datePickerStyle.left=window.pageXOffset+o.left+"px",this.$datePicker._onInputFocus=function(){},r.format=n,this.originalValue?(t=this.originalValue,M(t,n,!0).isValid()&&this.$datePicker.setMoment(M(t,n),!0),this.getValue()!==this.originalValue&&this.setValue(this.originalValue),s||i||this.setValue("")):this.cellProperties.defaultDate?(t=this.cellProperties.defaultDate,r.defaultDate=t,M(t,n,!0).isValid()&&this.$datePicker.setMoment(M(t,n),!0),s||i||this.setValue("")):this.$datePicker.gotoToday(),this.datePickerStyle.display="block",this.$datePicker.show()},hideDatepicker:function(){this.datePickerStyle.display="none",this.$datePicker.hide()},getDatePickerConfig:function(){var e=this,t=this.TEXTAREA,o={};this.cellProperties&&this.cellProperties.datePickerConfig&&w(o,this.cellProperties.datePickerConfig);var n=o.onSelect,r=o.onClose;return o.field=t,o.trigger=t,o.container=this.datePicker,o.bound=!1,o.format=o.format||this.defaultDateFormat,o.reposition=o.reposition||!1,o.onSelect=function(t){isNaN(t.getTime())||(t=M(t).format(e.cellProperties.dateFormat||e.defaultDateFormat)),e.setValue(t),e.hideDatepicker(),n&&n()},o.onClose=function(){e.parentDestroyed||e.finishEditing(!1),r&&r()},o}},{},R),f.editors=f.editors||{},f.editors.DateEditor=E,b("date",E)},{browser:24,editors:30,eventManager:42,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/object":53,"helpers/unicode":56,moment:"moment",pikaday:"pikaday",textEditor:41}],35:[function(e,t,o){"use strict";Object.defineProperties(o,{DropdownEditor:{get:function(){return c}},__esModule:{value:!0}});var n,r,i,s=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,a=(r=e("editors"))&&r.__esModule&&r||{default:r},l=(a.getEditor,a.registerEditor),u=(a.getEditorConstructor,((i=e("autocompleteEditor"))&&i.__esModule&&i||{default:i}).AutocompleteEditor),c=function(){$traceurRuntime.superConstructor(d).apply(this,arguments)},d=c;$traceurRuntime.createClass(c,{prepare:function(e,t,o,n,r,i){$traceurRuntime.superGet(this,d.prototype,"prepare").call(this,e,t,o,n,r,i),this.cellProperties.filter=!1,this.cellProperties.strict=!0}},{},u),s.hooks.add("beforeValidate",function(e,t,o,n){var r=this.getCellMeta(t,this.propToCol(o));r.editor===s.editors.DropdownEditor&&void 0===r.strict&&(r.filter=!1,r.strict=!0)}),l("dropdown",c)},{autocompleteEditor:32,browser:24,editors:30}],36:[function(e,t,o){"use strict";Object.defineProperties(o,{HandsontableEditor:{get:function(){return b}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,d=((r=e("helpers/unicode"))&&r.__esModule&&r||{default:r}).KEY_CODES,h=((i=e("helpers/object"))&&i.__esModule&&i||{default:i}).extend,f=((s=e("helpers/dom/element"))&&s.__esModule&&s||{default:s}).setCaretPosition,p=(a=e("helpers/dom/event"))&&a.__esModule&&a||{default:a},g=p.stopImmediatePropagation,m=p.isImmediatePropagationStopped,w=(l=e("editors"))&&l.__esModule&&l||{default:l},v=(w.getEditor,w.registerEditor),y=((u=e("textEditor"))&&u.__esModule&&u||{default:u}).TextEditor,b=y.prototype.extend();b.prototype.createElements=function(){y.prototype.createElements.apply(this,arguments);var e=document.createElement("DIV");e.className="handsontableEditor",this.TEXTAREA_PARENT.appendChild(e),this.htContainer=e,this.assignHooks()},b.prototype.prepare=function(e,t,o,n,r,i){y.prototype.prepare.apply(this,arguments);var s=this,a={startRows:0,startCols:0,minRows:0,minCols:0,className:"listbox",copyPaste:!1,autoColumnSize:!1,autoRowSize:!1,readOnly:!0,fillHandle:!1,afterOnCellMouseDown:function(){var e=this.getValue();void 0!==e&&s.setValue(e),s.instance.destroyEditor()}};this.cellProperties.handsontable&&h(a,i.handsontable),this.htOptions=a};var C=function(e){if(!m(e)){var t,o=this.getActiveEditor(),n=o.htEditor.getInstance();if(e.keyCode==d.ARROW_DOWN)if(n.getSelected()||n.flipped){if(n.getSelected())if(n.flipped)t=n.getSelected()[0]+1;else if(!n.flipped){var r=n.getSelected()[0],i=n.countRows()-1;t=Math.min(i,r+1)}}else t=0;else if(e.keyCode==d.ARROW_UP)if(!n.getSelected()&&n.flipped)t=n.countRows()-1;else if(n.getSelected())if(n.flipped){var r=n.getSelected()[0];t=Math.max(0,r-1)}else{var r=n.getSelected()[0];t=r-1}void 0!==t&&(t<0||n.flipped&&t>n.countRows()-1?n.deselectCell():n.selectCell(t,0),n.getData().length&&(e.preventDefault(),g(e),o.instance.listen(),o.TEXTAREA.focus()))}};b.prototype.open=function(){this.instance.addHook("beforeKeyDown",C),y.prototype.open.apply(this,arguments),this.htEditor&&this.htEditor.destroy(),this.htEditor=new c(this.htContainer,this.htOptions),this.cellProperties.strict?(this.htEditor.selectCell(0,0),this.TEXTAREA.style.visibility="hidden"):(this.htEditor.deselectCell(),this.TEXTAREA.style.visibility="visible"),f(this.TEXTAREA,0,this.TEXTAREA.value.length)},b.prototype.close=function(){this.instance.removeHook("beforeKeyDown",C),this.instance.listen(),y.prototype.close.apply(this,arguments)},b.prototype.focus=function(){this.instance.listen(),y.prototype.focus.apply(this,arguments)},b.prototype.beginEditing=function(e){var t=this.instance.getSettings().onBeginEditing;t&&t()===!1||y.prototype.beginEditing.apply(this,arguments)},b.prototype.finishEditing=function(e,t){if(this.htEditor&&this.htEditor.isListening()&&this.instance.listen(),this.htEditor&&this.htEditor.getSelected()){var o=this.htEditor.getInstance().getValue();void 0!==o&&this.setValue(o)}return y.prototype.finishEditing.apply(this,arguments)},b.prototype.assignHooks=function(){var e=this;this.instance.addHook("afterDestroy",function(){e.htEditor&&e.htEditor.destroy()})},v("handsontable",b)},{browser:24,editors:30,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/object":53,"helpers/unicode":56,textEditor:41}],37:[function(e,t,o){"use strict";Object.defineProperties(o,{MobileTextEditor:{get:function(){return k}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c=(((n=e("browser"))&&n.__esModule&&n||{default:n}).default,((r=e("helpers/unicode"))&&r.__esModule&&r||{default:r}).KEY_CODES),d=(i=e("helpers/dom/event"))&&i.__esModule&&i||{default:i},h=d.stopImmediatePropagation,f=d.isImmediatePropagationStopped,p=(s=e("helpers/dom/element"))&&s.__esModule&&s||{default:s},g=p.addClass,m=p.getScrollLeft,w=p.getScrollTop,v=p.hasClass,y=p.isChildOf,b=p.offset,C=p.outerHeight,_=p.outerWidth,R=p.removeClass,M=p.setCaretPosition,S=(a=e("editors"))&&a.__esModule&&a||{default:a},E=(S.getEditor,S.registerEditor),O=((l=e("_baseEditor"))&&l.__esModule&&l||{default:l}).BaseEditor,T=((u=e("eventManager"))&&u.__esModule&&u||{default:u}).eventManager,k=O.prototype.extend(),x={},H=function(){this.controls={},this.controls.leftButton=document.createElement("DIV"),this.controls.leftButton.className="leftButton",this.controls.rightButton=document.createElement("DIV"),this.controls.rightButton.className="rightButton",this.controls.upButton=document.createElement("DIV"),this.controls.upButton.className="upButton",this.controls.downButton=document.createElement("DIV"),this.controls.downButton.className="downButton";for(var e in this.controls)this.controls.hasOwnProperty(e)&&this.positionControls.appendChild(this.controls[e])};k.prototype.valueChanged=function(){return this.initValue!=this.getValue()},k.prototype.init=function(){var e=this;this.eventManager=T(this.instance),this.createElements(),this.bindEvents(),this.instance.addHook("afterDestroy",function(){e.destroy()})},k.prototype.getValue=function(){return this.TEXTAREA.value},k.prototype.setValue=function(e){this.initValue=e,this.TEXTAREA.value=e},k.prototype.createElements=function(){this.editorContainer=document.createElement("DIV"),this.editorContainer.className="htMobileEditorContainer",this.cellPointer=document.createElement("DIV"),this.cellPointer.className="cellPointer",this.moveHandle=document.createElement("DIV"),this.moveHandle.className="moveHandle",this.inputPane=document.createElement("DIV"),this.inputPane.className="inputs",this.positionControls=document.createElement("DIV"),this.positionControls.className="positionControls",this.TEXTAREA=document.createElement("TEXTAREA"),g(this.TEXTAREA,"handsontableInput"),this.inputPane.appendChild(this.TEXTAREA),this.editorContainer.appendChild(this.cellPointer),this.editorContainer.appendChild(this.moveHandle),this.editorContainer.appendChild(this.inputPane),this.editorContainer.appendChild(this.positionControls),H.call(this),document.body.appendChild(this.editorContainer)},k.prototype.onBeforeKeyDown=function(e){var t=this,o=t.getActiveEditor();if(e.target===o.TEXTAREA&&!f(e))switch(e.keyCode){case c.ENTER:o.close(),e.preventDefault();break;case c.BACKSPACE:h(e)}},k.prototype.open=function(){this.instance.addHook("beforeKeyDown",this.onBeforeKeyDown),g(this.editorContainer,"active"),R(this.cellPointer,"hidden"),this.updateEditorPosition()},k.prototype.focus=function(){this.TEXTAREA.focus(),M(this.TEXTAREA,this.TEXTAREA.value.length)},k.prototype.close=function(){this.TEXTAREA.blur(),this.instance.removeHook("beforeKeyDown",this.onBeforeKeyDown),R(this.editorContainer,"active")},k.prototype.scrollToView=function(){var e=this.instance.getSelectedRange().highlight;this.instance.view.scrollViewport(e)},k.prototype.hideCellPointer=function(){v(this.cellPointer,"hidden")||g(this.cellPointer,"hidden")},k.prototype.updateEditorPosition=function(e,t){if(e&&t)e=parseInt(e,10),t=parseInt(t,10),this.editorContainer.style.top=t+"px",this.editorContainer.style.left=e+"px";else{var o=this.instance.getSelected(),n=this.instance.getCell(o[0],o[1]);if(x.cellPointer||(x.cellPointer={height:C(this.cellPointer),width:_(this.cellPointer)}),x.editorContainer||(x.editorContainer={width:_(this.editorContainer)}),void 0!==n){var r=this.instance.view.wt.wtOverlays.leftOverlay.trimmingContainer==window?0:m(this.instance.view.wt.wtOverlays.leftOverlay.holder),i=this.instance.view.wt.wtOverlays.topOverlay.trimmingContainer==window?0:w(this.instance.view.wt.wtOverlays.topOverlay.holder),s=b(n),a=_(n),l={x:r,y:i};this.editorContainer.style.top=parseInt(s.top+C(n)-l.y+x.cellPointer.height,10)+"px",this.editorContainer.style.left=parseInt(window.innerWidth/2-x.editorContainer.width/2,10)+"px",s.left+a/2>parseInt(this.editorContainer.style.left,10)+x.editorContainer.width?this.editorContainer.style.left=window.innerWidth-x.editorContainer.width+"px":s.left+a/2<parseInt(this.editorContainer.style.left,10)+20&&(this.editorContainer.style.left="0px"),this.cellPointer.style.left=parseInt(s.left-x.cellPointer.width/2-b(this.editorContainer).left+a/2-l.x,10)+"px"}}},k.prototype.updateEditorData=function(){var e=this.instance.getSelected(),t=this.instance.getDataAtCell(e[0],e[1]);this.row=e[0],this.col=e[1],this.setValue(t),this.updateEditorPosition()},k.prototype.prepareAndSave=function(){var e;if(!this.valueChanged())return!0;e=this.instance.getSettings().trimWhitespace?[[String.prototype.trim.call(this.getValue())]]:[[this.getValue()]],this.saveValue(e)},k.prototype.bindEvents=function(){var e=this;this.eventManager.addEventListener(this.controls.leftButton,"touchend",function(t){e.prepareAndSave(),e.instance.selection.transformStart(0,-1,null,!0),e.updateEditorData(),t.preventDefault()}),this.eventManager.addEventListener(this.controls.rightButton,"touchend",function(t){e.prepareAndSave(),e.instance.selection.transformStart(0,1,null,!0),e.updateEditorData(),t.preventDefault()}),this.eventManager.addEventListener(this.controls.upButton,"touchend",function(t){e.prepareAndSave(),e.instance.selection.transformStart(-1,0,null,!0),e.updateEditorData(),t.preventDefault()}),this.eventManager.addEventListener(this.controls.downButton,"touchend",function(t){e.prepareAndSave(),e.instance.selection.transformStart(1,0,null,!0),e.updateEditorData(),t.preventDefault()}),this.eventManager.addEventListener(this.moveHandle,"touchstart",function(t){if(1==t.touches.length){var o=t.touches[0],n={x:e.editorContainer.offsetLeft,y:e.editorContainer.offsetTop},r={x:o.pageX-n.x,y:o.pageY-n.y};e.eventManager.addEventListener(this,"touchmove",function(t){var o=t.touches[0];e.updateEditorPosition(o.pageX-r.x,o.pageY-r.y),e.hideCellPointer(),t.preventDefault()})}}),this.eventManager.addEventListener(document.body,"touchend",function(t){y(t.target,e.editorContainer)||y(t.target,e.instance.rootElement)||e.close()}),this.eventManager.addEventListener(this.instance.view.wt.wtOverlays.leftOverlay.holder,"scroll",function(t){e.instance.view.wt.wtOverlays.leftOverlay.trimmingContainer!=window&&e.hideCellPointer()}),this.eventManager.addEventListener(this.instance.view.wt.wtOverlays.topOverlay.holder,"scroll",function(t){e.instance.view.wt.wtOverlays.topOverlay.trimmingContainer!=window&&e.hideCellPointer()})},k.prototype.destroy=function(){this.eventManager.clear(),this.editorContainer.parentNode.removeChild(this.editorContainer)},E("mobile",k)},{_baseEditor:31,browser:24,editors:30,eventManager:42,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/unicode":56}],38:[function(e,t,o){"use strict";Object.defineProperties(o,{NumericEditor:{get:function(){return u}},__esModule:{value:!0}});var n,r,i,s=((n=e("numbro"))&&n.__esModule&&n||{default:n}).default,a=((r=e("editors"))&&r.__esModule&&r||{default:r}).registerEditor,l=((i=e("textEditor"))&&i.__esModule&&i||{default:i}).TextEditor,u=function(){$traceurRuntime.superConstructor(c).apply(this,arguments)},c=u;$traceurRuntime.createClass(u,{beginEditing:function(e){if(void 0===e&&this.originalValue){void 0!==this.cellProperties.language&&s.culture(this.cellProperties.language);var t=s.cultureData().delimiters.decimal;e=(""+this.originalValue).replace(".",t)}$traceurRuntime.superGet(this,c.prototype,"beginEditing").call(this,e)}},{},l),a("numeric",u)},{editors:30,numbro:"numbro",textEditor:41}],39:[function(e,t,o){"use strict";Object.defineProperties(o,{PasswordEditor:{get:function(){return d}},__esModule:{value:!0}});var n,r,i,s,a=(((n=e("browser"))&&n.__esModule&&n||{default:n}).default,((r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r}).empty),l=(i=e("editors"))&&i.__esModule&&i||{default:i},u=(l.getEditor,l.registerEditor),c=((s=e("textEditor"))&&s.__esModule&&s||{default:s}).TextEditor,d=function(){$traceurRuntime.superConstructor(h).apply(this,arguments)},h=d;$traceurRuntime.createClass(d,{createElements:function(){$traceurRuntime.superGet(this,h.prototype,"createElements").call(this),this.TEXTAREA=document.createElement("input"),this.TEXTAREA.setAttribute("type","password"),this.TEXTAREA.className="handsontableInput",this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,a(this.TEXTAREA_PARENT),this.TEXTAREA_PARENT.appendChild(this.TEXTAREA)}},{},c),u("password",d)},{browser:24,editors:30,"helpers/dom/element":47,textEditor:41}],40:[function(e,t,o){"use strict";Object.defineProperties(o,{SelectEditor:{get:function(){return E}},__esModule:{value:!0}});var n,r,i,s,a,l,u=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,c=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},d=c.addClass,h=c.empty,f=c.fastInnerHTML,p=c.getComputedStyle,g=c.getCssTransform,m=c.getScrollableElement,w=c.offset,v=c.outerHeight,y=c.outerWidth,b=c.resetCssTransform,C=((i=e("helpers/dom/event"))&&i.__esModule&&i||{default:i}).stopImmediatePropagation,_=((s=e("helpers/unicode"))&&s.__esModule&&s||{default:s}).KEY_CODES,R=(a=e("editors"))&&a.__esModule&&a||{default:a},M=(R.getEditor,R.registerEditor),S=((l=e("_baseEditor"))&&l.__esModule&&l||{default:l}).BaseEditor,E=S.prototype.extend();E.prototype.init=function(){this.select=document.createElement("SELECT"),d(this.select,"htSelectEditor"),this.select.style.display="none",this.instance.rootElement.appendChild(this.select),this.registerHooks()},E.prototype.registerHooks=function(){var e=this;this.instance.addHook("afterScrollHorizontally",function(){return e.refreshDimensions()}),this.instance.addHook("afterScrollVertically",function(){return e.refreshDimensions()}),this.instance.addHook("afterColumnResize",function(){return e.refreshDimensions()}),this.instance.addHook("afterRowResize",function(){return e.refreshDimensions()})},E.prototype.prepare=function(){S.prototype.prepare.apply(this,arguments);var e,t=this.cellProperties.selectOptions;e="function"==typeof t?this.prepareOptions(t(this.row,this.col,this.prop)):this.prepareOptions(t),h(this.select);for(var o in e)if(e.hasOwnProperty(o)){var n=document.createElement("OPTION");n.value=o,f(n,e[o]),this.select.appendChild(n)}},E.prototype.prepareOptions=function(e){var t={};if(Array.isArray(e))for(var o=0,n=e.length;o<n;o++)t[e[o]]=e[o];else"object"==typeof e&&(t=e);return t},E.prototype.getValue=function(){return this.select.value},E.prototype.setValue=function(e){this.select.value=e};var O=function(e){var t=this,o=t.getActiveEditor();switch(e.keyCode){
33
+ case _.ARROW_UP:var n=o.select.selectedIndex-1;n>=0&&(o.select[n].selected=!0),C(e),e.preventDefault();break;case _.ARROW_DOWN:var r=o.select.selectedIndex+1;r<=o.select.length-1&&(o.select[r].selected=!0),C(e),e.preventDefault()}};E.prototype.open=function(){this._opened=!0,this.refreshDimensions(),this.select.style.display="",this.instance.addHook("beforeKeyDown",O)},E.prototype.close=function(){this._opened=!1,this.select.style.display="none",this.instance.removeHook("beforeKeyDown",O)},E.prototype.focus=function(){this.select.focus()},E.prototype.refreshValue=function(){var e=this.instance.getSourceDataAtCell(this.row,this.prop);this.originalValue=e,this.setValue(e),this.refreshDimensions()},E.prototype.refreshDimensions=function(){if(this.state===u.EditorState.EDITING){if(this.TD=this.getEditedCell(),!this.TD)return void this.close();var e,t=y(this.TD)+1,o=v(this.TD)+1,n=w(this.TD),r=w(this.instance.rootElement),i=m(this.TD),s=n.top-r.top-1-(i.scrollTop||0),a=n.left-r.left-1-(i.scrollLeft||0),l=this.checkEditorSection(),c=this.instance.getSettings();c.rowHeaders,c.colHeaders;switch(l){case"top":e=g(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=g(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=g(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=g(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=g(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}0===this.instance.getSelected()[0]&&(s+=1),0===this.instance.getSelected()[1]&&(a+=1);var d=this.select.style;e&&e!=-1?d[e[0]]=e[1]:b(this.select);var h=p(this.TD);parseInt(h.borderTopWidth,10)>0&&(o-=1),parseInt(h.borderLeftWidth,10)>0&&(t-=1),d.height=o+"px",d.minWidth=t+"px",d.top=s+"px",d.left=a+"px",d.margin="0px"}},E.prototype.getEditedCell=function(){var e,t=this.checkEditorSection();switch(t){case"top":e=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=101;break;case"corner":e=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=103;break;case"left":e=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=102;break;default:e=this.instance.getCell(this.row,this.col),this.select.style.zIndex=""}return e!=-1&&e!=-2?e:void 0},M("select",E)},{_baseEditor:31,browser:24,editors:30,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/unicode":56}],41:[function(e,t,o){"use strict";Object.defineProperties(o,{TextEditor:{get:function(){return L}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,h=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},f=h.addClass,p=h.getCaretPosition,g=h.getComputedStyle,m=h.getCssTransform,w=h.getScrollableElement,v=h.getScrollbarWidth,y=h.innerWidth,b=h.offset,C=h.resetCssTransform,_=h.setCaretPosition,R=h.hasVerticalScrollbar,M=h.hasHorizontalScrollbar,S=((i=e("autoResize"))&&i.__esModule&&i||{default:i}).default,E=((s=e("_baseEditor"))&&s.__esModule&&s||{default:s}).BaseEditor,O=((a=e("eventManager"))&&a.__esModule&&a||{default:a}).eventManager,T=(l=e("editors"))&&l.__esModule&&l||{default:l},k=(T.getEditor,T.registerEditor),x=((u=e("helpers/unicode"))&&u.__esModule&&u||{default:u}).KEY_CODES,H=(c=e("helpers/dom/event"))&&c.__esModule&&c||{default:c},D=H.stopPropagation,A=H.stopImmediatePropagation,P=H.isImmediatePropagationStopped,L=E.prototype.extend();L.prototype.init=function(){var e=this;this.createElements(),this.eventManager=O(this),this.bindEvents(),this.autoResize=S(),this.instance.addHook("afterDestroy",function(){e.destroy()})},L.prototype.getValue=function(){return this.TEXTAREA.value},L.prototype.setValue=function(e){this.TEXTAREA.value=e};var N=function(e){var t,o=this,n=o.getActiveEditor();if(t=(e.ctrlKey||e.metaKey)&&!e.altKey,e.target===n.TEXTAREA&&!P(e)){if(17===e.keyCode||224===e.keyCode||91===e.keyCode||93===e.keyCode)return void A(e);switch(e.keyCode){case x.ARROW_RIGHT:n.isInFullEditMode()&&(!n.isWaiting()&&!n.allowKeyEventPropagation||!n.isWaiting()&&n.allowKeyEventPropagation&&!n.allowKeyEventPropagation(e.keyCode))&&A(e);break;case x.ARROW_LEFT:n.isInFullEditMode()&&(!n.isWaiting()&&!n.allowKeyEventPropagation||!n.isWaiting()&&n.allowKeyEventPropagation&&!n.allowKeyEventPropagation(e.keyCode))&&A(e);break;case x.ARROW_UP:case x.ARROW_DOWN:n.isInFullEditMode()&&(!n.isWaiting()&&!n.allowKeyEventPropagation||!n.isWaiting()&&n.allowKeyEventPropagation&&!n.allowKeyEventPropagation(e.keyCode))&&A(e);break;case x.ENTER:var r=n.instance.getSelected(),i=!(r[0]===r[2]&&r[1]===r[3]);if(t&&!i||e.altKey){if(n.isOpened()){var s=p(n.TEXTAREA),a=n.getValue(),l=a.slice(0,s)+"\n"+a.slice(s);n.setValue(l),_(n.TEXTAREA,s+1)}else n.beginEditing(n.originalValue+"\n");A(e)}e.preventDefault();break;case x.A:case x.X:case x.C:case x.V:t&&A(e);break;case x.BACKSPACE:case x.DELETE:case x.HOME:case x.END:A(e)}[x.ARROW_UP,x.ARROW_RIGHT,x.ARROW_DOWN,x.ARROW_LEFT].indexOf(e.keyCode)===-1&&n.autoResize.resize(String.fromCharCode(e.keyCode))}};L.prototype.open=function(){this.refreshDimensions(),this.instance.addHook("beforeKeyDown",N)},L.prototype.close=function(e){this.textareaParentStyle.display="none",this.autoResize.unObserve(),document.activeElement===this.TEXTAREA&&this.instance.listen(),this.instance.removeHook("beforeKeyDown",N)},L.prototype.focus=function(){this.TEXTAREA.focus(),_(this.TEXTAREA,this.TEXTAREA.value.length)},L.prototype.createElements=function(){this.TEXTAREA=document.createElement("TEXTAREA"),f(this.TEXTAREA,"handsontableInput"),this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,this.TEXTAREA_PARENT=document.createElement("DIV"),f(this.TEXTAREA_PARENT,"handsontableInputHolder"),this.textareaParentStyle=this.TEXTAREA_PARENT.style,this.textareaParentStyle.top=0,this.textareaParentStyle.left=0,this.textareaParentStyle.display="none",this.TEXTAREA_PARENT.appendChild(this.TEXTAREA),this.instance.rootElement.appendChild(this.TEXTAREA_PARENT);var e=this;this.instance._registerTimeout(setTimeout(function(){e.refreshDimensions()},0))},L.prototype.getEditedCell=function(){var e,t=this.checkEditorSection();switch(t){case"top":e=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=101;break;case"top-left-corner":e=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=103;break;case"bottom-left-corner":e=this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=103;break;case"left":e=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=102;break;case"bottom":e=this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=102;break;default:e=this.instance.getCell(this.row,this.col),this.textareaParentStyle.zIndex=""}return e!=-1&&e!=-2?e:void 0},L.prototype.refreshValue=function(){var e=this.instance.getSourceDataAtCell(this.row,this.prop);this.originalValue=e,this.setValue(e),this.refreshDimensions()},L.prototype.refreshDimensions=function(){if(this.state===d.EditorState.EDITING){if(this.TD=this.getEditedCell(),!this.TD)return void this.close(!0);var e,t=b(this.TD),o=b(this.instance.rootElement),n=w(this.TD),r=this.instance.countRows(),i=t.top===o.top?0:1,s=t.top-o.top-i-(n.scrollTop||0),a=t.left-o.left-1-(n.scrollLeft||0),l=this.instance.getSettings(),u=(this.instance.hasRowHeaders(),this.instance.hasColHeaders()),c=this.checkEditorSection(),h=this.TD.style.backgroundColor;switch(c){case"top":e=m(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=m(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=m(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=m(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=m(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}(u&&0===this.instance.getSelected()[0]||l.fixedRowsBottom&&this.instance.getSelected()[0]===r-l.fixedRowsBottom)&&(s+=1),0===this.instance.getSelected()[1]&&(a+=1),e&&e!=-1?this.textareaParentStyle[e[0]]=e[1]:C(this.TEXTAREA_PARENT),this.textareaParentStyle.top=s+"px",this.textareaParentStyle.left=a+"px";var f=this.instance.view.wt.wtViewport.rowsRenderCalculator.startPosition,p=this.instance.view.wt.wtViewport.columnsRenderCalculator.startPosition,_=this.instance.view.wt.wtOverlays.leftOverlay.getScrollPosition(),S=this.instance.view.wt.wtOverlays.topOverlay.getScrollPosition(),E=v(),O=this.TD.offsetTop+f-S,T=this.TD.offsetLeft+p-_,k=y(this.TD)-8,x=R(n)?E:0,H=M(n)?E:0,D=this.instance.view.maximumVisibleElementWidth(T)-9-x,A=this.TD.scrollHeight+1,P=Math.max(this.instance.view.maximumVisibleElementHeight(O)-H,23),L=g(this.TD);this.TEXTAREA.style.fontSize=L.fontSize,this.TEXTAREA.style.fontFamily=L.fontFamily,this.TEXTAREA.style.backgroundColor="",this.TEXTAREA.style.backgroundColor=h?h:g(this.TEXTAREA).backgroundColor,this.autoResize.init(this.TEXTAREA,{minHeight:Math.min(A,P),maxHeight:P,minWidth:Math.min(k,D),maxWidth:D},!0),this.textareaParentStyle.display="block"}},L.prototype.bindEvents=function(){var e=this;this.eventManager.addEventListener(this.TEXTAREA,"cut",function(e){D(e)}),this.eventManager.addEventListener(this.TEXTAREA,"paste",function(e){D(e)}),this.instance.addHook("afterScrollHorizontally",function(){e.refreshDimensions()}),this.instance.addHook("afterScrollVertically",function(){e.refreshDimensions()}),this.instance.addHook("afterColumnResize",function(){e.refreshDimensions(),e.focus()}),this.instance.addHook("afterRowResize",function(){e.refreshDimensions(),e.focus()}),this.instance.addHook("afterDestroy",function(){e.eventManager.destroy()})},L.prototype.destroy=function(){this.eventManager.destroy()},k("text",L)},{_baseEditor:31,autoResize:"autoResize",browser:24,editors:30,eventManager:42,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/unicode":56}],42:[function(e,t,o){"use strict";function n(e,t){var o,n,r,i,s,a;if(t.isTargetWebComponent=!1,t.realTarget=t.target,a=t.stopImmediatePropagation,t.stopImmediatePropagation=function(){a.apply(this),p(this)},!u.eventManager.isHotTableEnv)return t;for(t=d(t),s=t.path?t.path.length:0;s--;){if("HOT-TABLE"===t.path[s].nodeName)o=!0;else if(o&&t.path[s].shadowRoot){i=t.path[s];break}0!==s||i||(i=t.path[s])}return i||(i=t.target),t.isTargetWebComponent=!0,f()?t.realTarget=t.srcElement||t.toElement:(e instanceof u.Core||e instanceof Walkontable)&&(e instanceof u.Core?n=e.view?e.view.wt.wtTable.TABLE:null:e instanceof Walkontable&&(n=e.wtTable.TABLE.parentNode.parentNode),r=h(t.target,["HOT-TABLE"],n),t.realTarget=r?n.querySelector("HOT-TABLE")||t.target:t.target),Object.defineProperty(t,"target",{get:function(){return d(i)},enumerable:!0,configurable:!0}),t}function r(e){return new g(e)}Object.defineProperties(o,{EventManager:{get:function(){return g}},eventManager:{get:function(){return r}},__esModule:{value:!0}});var i,s,a,l,u=((i=e("browser"))&&i.__esModule&&i||{default:i}).default,c=(s=e("helpers/dom/element"))&&s.__esModule&&s||{default:s},d=c.polymerWrap,h=c.closest,f=((a=e("helpers/feature"))&&a.__esModule&&a||{default:a}).isWebComponentSupportedNatively,p=((l=e("helpers/dom/event"))&&l.__esModule&&l||{default:l}).stopImmediatePropagation,g=function(){var e=void 0!==arguments[0]?arguments[0]:null;this.context=e||this,this.context.eventListeners||(this.context.eventListeners=[])};$traceurRuntime.createClass(g,{addEventListener:function(e,t,o){function r(e){e=n(s,e),o.call(this,e)}var i=this,s=this.context;return this.context.eventListeners.push({element:e,event:t,callback:o,callbackProxy:r}),window.addEventListener?e.addEventListener(t,r,!1):e.attachEvent("on"+t,r),u.countEventManagerListeners++,function(){i.removeEventListener(e,t,o)}},removeEventListener:function(e,t,o){for(var n,r=this.context.eventListeners.length;r--;)if(n=this.context.eventListeners[r],n.event==t&&n.element==e){if(o&&o!=n.callback)continue;this.context.eventListeners.splice(r,1),n.element.removeEventListener?n.element.removeEventListener(n.event,n.callbackProxy,!1):n.element.detachEvent("on"+n.event,n.callbackProxy),u.countEventManagerListeners--}},clearEvents:function(){if(this.context)for(var e=this.context.eventListeners.length;e--;){var t=this.context.eventListeners[e];t&&this.removeEventListener(t.element,t.event,t.callback)}},clear:function(){this.clearEvents()},destroy:function(){this.clearEvents(),this.context=null},fireEvent:function(e,t){var o,n={bubbles:!0,cancelable:"mousemove"!==t,view:window,detail:0,screenX:0,screenY:0,clientX:1,clientY:1,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:void 0};document.createEvent?(o=document.createEvent("MouseEvents"),o.initMouseEvent(t,n.bubbles,n.cancelable,n.view,n.detail,n.screenX,n.screenY,n.clientX,n.clientY,n.ctrlKey,n.altKey,n.shiftKey,n.metaKey,n.button,n.relatedTarget||document.body.parentNode)):o=document.createEventObject(),e.dispatchEvent?e.dispatchEvent(o):e.fireEvent("on"+t,o)}},{}),u.countEventManagerListeners=0,u.eventManager=r},{browser:24,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/feature":49}],43:[function(e,t,o){"use strict";function n(e){for(var t=0,o=e.length;t<o;)e[t]=[e[t]],t++}function r(e,t){for(var o=0,n=t.length;o<n;)e.push(t[o]),o++}function i(e){var t=[];if(!e||0===e.length||!e[0]||0===e[0].length)return t;for(var o=e.length,n=e[0].length,r=0;r<o;r++)for(var i=0;i<n;i++)t[i]||(t[i]=[]),t[i][r]=e[r][i];return t}function s(e,t,o,n){var r=-1,i=e.length;for(n&&i&&(o=e[++r]);++r<i;)o=t(o,e[r],r,e);return o}function a(e,t){for(var o=-1,n=e.length,r=-1,i=[];++o<n;){var s=e[o];t(s,o,e)&&(i[++r]=s)}return i}function l(e,t){for(var o=-1,n=e.length,r=-1,i=[];++o<n;){var s=e[o];i[++r]=t(s,o,e)}return i}function u(e,t){for(var o=-1,n=e.length;++o<n&&t(e[o],o,e)!==!1;);return e}function c(e){return s(e,function(e,t){return e+t},0)}function d(e){return s(e,function(e,t){return e>t?e:t},Array.isArray(e)?e[0]:void 0)}function h(e){return s(e,function(e,t){return e<t?e:t},Array.isArray(e)?e[0]:void 0)}function f(e){return e.length?c(e)/e.length:0}function p(e){return s(e,function(e,t){return e.concat(Array.isArray(t)?p(t):t)},[])}function g(e){var t=[];return u(e,function(e){t.indexOf(e)===-1&&t.push(e)}),t}function m(e,t,o){if(null==e)throw new TypeError('"array" is null or not defined');var n=Object(e),r=n.length>>>0;if(0===r)return!1;for(var i=0|o,s=Math.max(i>=0?i:r-Math.abs(i),0);s<r;){if(n[s]===t)return!0;s++}return!1}Object.defineProperties(o,{to2dArray:{get:function(){return n}},extendArray:{get:function(){return r}},pivot:{get:function(){return i}},arrayReduce:{get:function(){return s}},arrayFilter:{get:function(){return a}},arrayMap:{get:function(){return l}},arrayEach:{get:function(){return u}},arraySum:{get:function(){return c}},arrayMax:{get:function(){return d}},arrayMin:{get:function(){return h}},arrayAvg:{get:function(){return f}},arrayFlatten:{get:function(){return p}},arrayUnique:{get:function(){return g}},arrayIncludes:{get:function(){return m}},__esModule:{value:!0}})},{}],44:[function(e,t,o){"use strict";function n(){return l}function r(){return u}function i(){return c}function s(){return d}function a(e){return e||(e=navigator.userAgent),/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(e)}Object.defineProperties(o,{isIE8:{get:function(){return n}},isIE9:{get:function(){return r}},isSafari:{get:function(){return i}},isChrome:{get:function(){return s}},isMobileBrowser:{get:function(){return a}},__esModule:{value:!0}});var l=!document.createTextNode("test").textContent,u=!!document.documentMode,c=/Safari/.test(navigator.userAgent)&&/Apple Computer/.test(navigator.vendor),d=/Chrome/.test(navigator.userAgent)&&/Google/.test(navigator.vendor)},{}],45:[function(e,t,o){"use strict";function n(e){for(var t,o=e+1,n="";o>0;)t=(o-1)%g,n=String.fromCharCode(65+t)+n,o=parseInt((o-t)/g,10);return n}function r(e){var t=0;if(e)for(var o=0,n=e.length-1;o<e.length;o+=1,n-=1)t+=Math.pow(g,n)*(p.indexOf(e[o])+1);return--t}function i(){var e,t,o=void 0!==arguments[0]?arguments[0]:100,r=void 0!==arguments[1]?arguments[1]:4,i=[];for(e=0;e<o;e++){var s=[];for(t=0;t<r;t++)s.push(n(t)+(e+1));i.push(s)}return i}function s(){var e,t,o=void 0!==arguments[0]?arguments[0]:100,r=void 0!==arguments[1]?arguments[1]:4,i=[];for(e=0;e<o;e++){var s={};for(t=0;t<r;t++)s["prop"+t]=n(t)+(e+1);i.push(s)}return i}function a(e,t){for(var o,n=[],r=0;r<e;r++){o=[];for(var i=0;i<t;i++)o.push("");n.push(o)}return n}function l(e){var t,o,n,r,i=[],s=0;for(t=0,o=e.length;t<o;t++)for(n=0,r=e[t].length;n<r;n++)n==s&&(i.push([]),s++),i[n].push(e[t][n]);return i}function u(e,t){function o(e){var t=h.cellTypes[e];if(void 0===t)throw new Error('You declared cell type "'+e+'" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');return t}return t=void 0===t||t,function(n,r){return function n(r){if(r){if(r.hasOwnProperty(e)&&void 0!==r[e])return r[e];if(r.hasOwnProperty("type")&&r.type){var i;if("string"!=typeof r.type)throw new Error("Cell type must be a string ");if(i=o(r.type),i.hasOwnProperty(e))return i[e];if(t)return}return n(f(r))}}("number"==typeof n?this.getCellMeta(n,r):n)}}Object.defineProperties(o,{spreadsheetColumnLabel:{get:function(){return n}},spreadsheetColumnIndex:{get:function(){return r}},createSpreadsheetData:{get:function(){return i}},createSpreadsheetObjectData:{get:function(){return s}},createEmptySpreadsheetData:{get:function(){return a}},translateRowsToColumns:{get:function(){return l}},cellMethodLookupFactory:{get:function(){return u}},__esModule:{value:!0}});var c,d,h=((c=e("browser"))&&c.__esModule&&c||{default:c}).default,f=((d=e("object"))&&d.__esModule&&d||{default:d}).getPrototypeOf,p="ABCDEFGHIJKLMNOPQRSTUVWXYZ",g=p.length},{browser:24,object:53}],46:[function(e,t,o){"use strict";function n(e){var t=new Date(e);return isNaN(new Date(e+"T00:00").getDate())?t:new Date(t.getTime()+6e4*t.getTimezoneOffset())}Object.defineProperties(o,{getNormalizedDate:{get:function(){return n}},__esModule:{value:!0}})},{}],47:[function(e,t,o){"use strict";function n(e){for(var t=void 0!==arguments[1]?arguments[1]:0,o=-1,n=null;null!=e;){if(o===t){n=e;break}e.host&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE?e=e.host:(o++,e=e.parentNode)}return n}function r(e,t,o){for(;null!=e&&e!==o;){if(e.nodeType===Node.ELEMENT_NODE&&(t.indexOf(e.nodeName)>-1||t.indexOf(e)>-1))return e;e=e.host&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE?e.host:e.parentNode}return null}function i(e,t,o){for(var n=[];e&&((e=r(e,t,o))&&(!o||o.contains(e)));)n.push(e),e=e.host&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE?e.host:e.parentNode;var i=n.length;return i?n[i-1]:null}function s(e,t){var o=e.parentNode,n=[];for("string"==typeof t?n=Array.prototype.slice.call(document.querySelectorAll(t),0):n.push(t);null!=o;){if(n.indexOf(o)>-1)return!0;o=o.parentNode}return!1}function a(e){function t(e){return e.nodeType===Node.ELEMENT_NODE&&e.nodeName===n.toUpperCase()}var o,n="hot-table",r=!1;for(o=l(e);null!=o;){if(t(o)){r=!0;break}if(o.host&&o.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(r=t(o.host))break;o=o.host}o=o.parentNode}return r}function l(e){return"undefined"!=typeof Polymer&&"function"==typeof wrap?wrap(e):e}function u(e){return"undefined"!=typeof Polymer&&"function"==typeof unwrap?unwrap(e):e}function c(e){var t=0;if(e.previousSibling)for(;e=e.previousSibling;)++t;return t}function d(e,t){var o=document.querySelector(".ht_clone_"+e);return o?o.contains(t):null}function h(e){var t=0,o=[];if(!e||!e.length)return o;for(;e[t];)o.push(e[t]),t++;return o}function f(e,t){return Z(e,t)}function p(e,t){return J(e,t)}function g(e,t){return Q(e,t)}function m(e,t){if(3===e.nodeType)t.removeChild(e);else if(["TABLE","THEAD","TBODY","TFOOT","TR"].indexOf(e.nodeName)>-1)for(var o=e.childNodes,n=o.length-1;n>=0;n--)m(o[n],e)}function w(e){for(var t;t=e.lastChild;)e.removeChild(t)}function v(e,t){ue.test(t)?e.innerHTML=t:y(e,t)}function y(e,t){var o=e.firstChild;o&&3===o.nodeType&&null===o.nextSibling?ce?o.textContent=t:o.data=t:(w(e),e.appendChild(document.createTextNode(t)))}function b(e){for(var t=e;u(t)!==document.documentElement;){if(null===t)return!1;if(t.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(t.host){if(t.host.impl)return b(t.host.impl);if(t.host)return b(t.host);throw new Error("Lost in Web Components world")}return!1}if("none"===t.style.display)return!1;t=t.parentNode}return!0}function C(e){var t,o,n,r,i;if(r=document.documentElement,re()&&e.firstChild&&"CAPTION"===e.firstChild.nodeName)return i=e.getBoundingClientRect(),{top:i.top+(window.pageYOffset||r.scrollTop)-(r.clientTop||0),left:i.left+(window.pageXOffset||r.scrollLeft)-(r.clientLeft||0)};for(t=e.offsetLeft,o=e.offsetTop,n=e;(e=e.offsetParent)&&e!==document.body;)t+=e.offsetLeft,o+=e.offsetTop,n=e;return n&&"fixed"===n.style.position&&(t+=window.pageXOffset||r.scrollLeft,o+=window.pageYOffset||r.scrollTop),{left:t,top:o}}function _(){var e=window.scrollY;return void 0===e&&(e=document.documentElement.scrollTop),e}function R(){var e=window.scrollX;return void 0===e&&(e=document.documentElement.scrollLeft),e}function M(e){return e===window?_():e.scrollTop}function S(e){return e===window?R():e.scrollLeft}function E(e){for(var t,o,n,r=e.parentNode,i=["auto","scroll"],s="",a="",l="",u="";r&&r.style&&document.body!==r;){if(t=r.style.overflow,o=r.style.overflowX,n=r.style.overflowY,"scroll"==t||"scroll"==o||"scroll"==n)return r;if(window.getComputedStyle&&(s=window.getComputedStyle(r),a=s.getPropertyValue("overflow"),l=s.getPropertyValue("overflow-y"),u=s.getPropertyValue("overflow-x"),"scroll"===a||"scroll"===u||"scroll"===l))return r;if(r.clientHeight<=r.scrollHeight&&(i.indexOf(n)!==-1||i.indexOf(t)!==-1||i.indexOf(a)!==-1||i.indexOf(l)!==-1))return r;if(r.clientWidth<=r.scrollWidth&&(i.indexOf(o)!==-1||i.indexOf(t)!==-1||i.indexOf(a)!==-1||i.indexOf(u)!==-1))return r;r=r.parentNode}return window}function O(e){for(var t=e.parentNode;t&&t.style&&document.body!==t;){if("visible"!==t.style.overflow&&""!==t.style.overflow)return t;if(window.getComputedStyle){var o=window.getComputedStyle(t);if("visible"!==o.getPropertyValue("overflow")&&""!==o.getPropertyValue("overflow"))return t}t=t.parentNode}return window}function T(e,t){if(e){if(e!==window){var o,n=e.style[t];return""!==n&&void 0!==n?n:(o=k(e),""!==o[t]&&void 0!==o[t]?o[t]:void 0)}if("width"===t)return window.innerWidth+"px";if("height"===t)return window.innerHeight+"px"}}function k(e){return e.currentStyle||document.defaultView.getComputedStyle(e)}function x(e){return e.offsetWidth}function H(e){return re()&&e.firstChild&&"CAPTION"===e.firstChild.nodeName?e.offsetHeight+e.firstChild.offsetHeight:e.offsetHeight}function D(e){return e.clientHeight||e.innerHeight}function A(e){return e.clientWidth||e.innerWidth}function P(e,t,o){window.addEventListener?e.addEventListener(t,o,!1):e.attachEvent("on"+t,o)}function L(e,t,o){window.removeEventListener?e.removeEventListener(t,o,!1):e.detachEvent("on"+t,o)}function N(e){if(e.selectionStart)return e.selectionStart;if(document.selection){e.focus();var t=document.selection.createRange();if(null==t)return 0;var o=e.createTextRange(),n=o.duplicate();return o.moveToBookmark(t.getBookmark()),n.setEndPoint("EndToStart",o),n.text.length}return 0}function I(e){if(e.selectionEnd)return e.selectionEnd;if(document.selection){var t=document.selection.createRange();if(null==t)return 0;return e.createTextRange().text.indexOf(t.text)+t.text.length}}function W(){var e="";return window.getSelection?e=window.getSelection().toString():document.selection&&"Control"!==document.selection.type&&(e=document.selection.createRange().text),e}function j(e,t,o){if(void 0===o&&(o=t),e.setSelectionRange){e.focus();try{e.setSelectionRange(t,o)}catch(i){var n=e.parentNode,r=n.style.display;n.style.display="block",e.setSelectionRange(t,o),n.style.display=r}}else if(e.createTextRange){var i=e.createTextRange();i.collapse(!0),i.moveEnd("character",o),i.moveStart("character",t),i.select()}}function V(){var e=document.createElement("div");e.style.height="200px",e.style.width="100%";var t=document.createElement("div");t.style.boxSizing="content-box",t.style.height="150px",t.style.left="0px",t.style.overflow="hidden",t.style.position="absolute",t.style.top="0px",t.style.width="200px",t.style.visibility="hidden",t.appendChild(e),(document.body||document.documentElement).appendChild(t);var o=e.offsetWidth;t.style.overflow="scroll";var n=e.offsetWidth;return o==n&&(n=t.clientWidth),(document.body||document.documentElement).removeChild(t),o-n}function B(){return void 0===le&&(le=V()),le}function F(e){return e.offsetWidth!==e.clientWidth}function z(e){return e.offsetHeight!==e.clientHeight}function Y(e,t,o){te()||oe()?(e.style.top=o,e.style.left=t):ne()?e.style["-webkit-transform"]="translate3d("+t+","+o+",0)":e.style.transform="translate3d("+t+","+o+",0)"}function U(e){var t;return e.style.transform&&""!==(t=e.style.transform)?["transform",t]:e.style["-webkit-transform"]&&""!==(t=e.style["-webkit-transform"])?["-webkit-transform",t]:-1}function G(e){e.style.transform&&""!==e.style.transform?e.style.transform="":e.style["-webkit-transform"]&&""!==e.style["-webkit-transform"]&&(e.style["-webkit-transform"]="")}function $(e){var t=["INPUT","SELECT","TEXTAREA"];return e&&(t.indexOf(e.nodeName)>-1||"true"===e.contentEditable)}function K(e){return $(e)&&e.className.indexOf("handsontableInput")==-1&&e.className.indexOf("copyPaste")==-1}Object.defineProperties(o,{getParent:{get:function(){return n}},closest:{get:function(){return r}},closestDown:{get:function(){return i}},isChildOf:{get:function(){return s}},isChildOfWebComponentTable:{get:function(){return a}},polymerWrap:{get:function(){return l}},polymerUnwrap:{get:function(){return u}},index:{get:function(){return c}},overlayContainsElement:{get:function(){return d}},hasClass:{get:function(){return f}},addClass:{get:function(){return p}},removeClass:{get:function(){return g}},removeTextNodes:{get:function(){return m}},empty:{get:function(){return w}},HTML_CHARACTERS:{get:function(){return ue}},fastInnerHTML:{get:function(){return v}},fastInnerText:{get:function(){return y}},isVisible:{get:function(){return b}},offset:{get:function(){return C}},getWindowScrollTop:{get:function(){return _}},getWindowScrollLeft:{get:function(){return R}},getScrollTop:{get:function(){return M}},getScrollLeft:{get:function(){return S}},getScrollableElement:{get:function(){return E}},getTrimmingContainer:{get:function(){return O}},getStyle:{get:function(){return T}},getComputedStyle:{get:function(){return k}},outerWidth:{get:function(){return x}},outerHeight:{get:function(){return H}},innerHeight:{get:function(){return D}},innerWidth:{get:function(){return A}},addEvent:{get:function(){return P}},removeEvent:{get:function(){return L}},getCaretPosition:{get:function(){return N}},getSelectionEndPosition:{get:function(){return I}},getSelectionText:{get:function(){return W}},setCaretPosition:{get:function(){return j}},getScrollbarWidth:{get:function(){return B}},hasVerticalScrollbar:{get:function(){return F}},hasHorizontalScrollbar:{get:function(){return z}},setOverlayPosition:{get:function(){return Y}},getCssTransform:{get:function(){return U}},resetCssTransform:{get:function(){return G}},isInput:{get:function(){return $}},isOutsideInput:{get:function(){return K}},__esModule:{value:!0}});var X,q,Z,J,Q,ee=(X=e("../browser"))&&X.__esModule&&X||{default:X},te=ee.isIE8,oe=ee.isIE9,ne=ee.isSafari,re=((q=e("../feature"))&&q.__esModule&&q||{default:q}).hasCaptionProblem,ie=!!document.documentElement.classList;if(ie){var se=function(){var e=document.createElement("div");return e.classList.add("test","test2"),e.classList.contains("test2")}();Z=function(e,t){return""!==t&&e.classList.contains(t)},J=function(e,t){var o=0;if("string"==typeof t&&(t=t.split(" ")),t=h(t),se)e.classList.add.apply(e.classList,t);else for(;t&&t[o];)e.classList.add(t[o]),o++},Q=function(e,t){var o=0;if("string"==typeof t&&(t=t.split(" ")),t=h(t),se)e.classList.remove.apply(e.classList,t);else for(;t&&t[o];)e.classList.remove(t[o]),o++}}else{var ae=function(e){return new RegExp("(\\s|^)"+e+"(\\s|$)")};Z=function(e,t){return!!e.className.match(ae(t))},J=function(e,t){var o=0,n=e.className;if("string"==typeof t&&(t=t.split(" ")),""===n)n=t.join(" ");else for(;t&&t[o];)ae(t[o]).test(n)||(n+=" "+t[o]),o++;e.className=n},Q=function(e,t){var o=0,n=e.className;for("string"==typeof t&&(t=t.split(" "));t&&t[o];)n=n.replace(ae(t[o])," ").trim(),o++;e.className!==n&&(e.className=n)}}var le,ue=/(<(.*)>|&(.*);)/,ce=!!document.createTextNode("test").textContent},{"../browser":44,"../feature":49}],48:[function(e,t,o){"use strict";function n(e){e.isImmediatePropagationEnabled=!1,e.cancelBubble=!0}function r(e){return e.isImmediatePropagationEnabled===!1}function i(e){"function"==typeof e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function s(e){return e.pageX?e.pageX:e.clientX+f()}function a(e){return e.pageY?e.pageY:e.clientY+h()}function l(e){return 2===e.button}function u(e){return 0===e.button}Object.defineProperties(o,{stopImmediatePropagation:{get:function(){return n}},isImmediatePropagationStopped:{get:function(){return r}},stopPropagation:{get:function(){return i}},pageX:{get:function(){return s}},pageY:{get:function(){return a}},isRightClick:{get:function(){return l}},isLeftClick:{get:function(){return u}},__esModule:{value:!0}});var c,d=(c=e("element"))&&c.__esModule&&c||{default:c},h=d.getWindowScrollTop,f=d.getWindowScrollLeft},{element:47}],49:[function(e,t,o){"use strict";function n(e){return h.call(window,e)}function r(e){f.call(window,e)}function i(){return"ontouchstart"in window}function s(){var e=document.createElement("div");return!(!e.createShadowRoot||!e.createShadowRoot.toString().match(/\[native code\]/))}function a(){var e=document.createElement("TABLE");e.style.borderSpacing=0,e.style.borderWidth=0,e.style.padding=0;var t=document.createElement("TBODY");e.appendChild(t),t.appendChild(document.createElement("TR")),t.firstChild.appendChild(document.createElement("TD")),t.firstChild.firstChild.innerHTML="<tr><td>t<br>t</td></tr>";var o=document.createElement("CAPTION");o.innerHTML="c<br>c<br>c<br>c",o.style.padding=0,o.style.margin=0,e.insertBefore(o,t),document.body.appendChild(e),g=e.offsetHeight<2*e.lastChild.offsetHeight,document.body.removeChild(e)}function l(){return void 0===g&&a(),g}function u(e){var t=void 0!==arguments[1]?arguments[1]:{};return m?m:m="object"==typeof Intl?new Intl.Collator(e,t).compare:"function"==typeof String.prototype.localeCompare?function(e,t){return(e+"").localeCompare(t)}:function(e,t){return e===t?0:e>t?-1:1}}Object.defineProperties(o,{requestAnimationFrame:{get:function(){return n}},cancelAnimationFrame:{get:function(){return r}},isTouchSupported:{get:function(){return i}},isWebComponentSupportedNatively:{get:function(){return s}},hasCaptionProblem:{get:function(){return l}},getComparisonFunction:{get:function(){return u}},__esModule:{value:!0}});for(var c=0,d=["ms","moz","webkit","o"],h=window.requestAnimationFrame,f=window.cancelAnimationFrame,p=0;p<d.length&&!h;++p)h=window[d[p]+"RequestAnimationFrame"],
34
+ f=window[d[p]+"CancelAnimationFrame"]||window[d[p]+"CancelRequestAnimationFrame"];h||(h=function(e){var t=(new Date).getTime(),o=Math.max(0,16-(t-c)),n=window.setTimeout(function(){e(t+o)},o);return c=t+o,n}),f||(f=function(e){clearTimeout(e)});var g,m},{}],50:[function(e,t,o){"use strict";function n(e){return"function"==typeof e}function r(e,t){return function(){return e.apply(t,arguments)}}function i(e){function t(){var t=this,s=arguments,a=Date.now(),l=!1;r.lastCallThrottled=!0,n||(n=a,l=!0);var u=o-(a-n);return l?(r.lastCallThrottled=!1,e.apply(this,s)):(i&&clearTimeout(i),i=setTimeout(function(){r.lastCallThrottled=!1,e.apply(t,s),n=0,i=void 0},u)),r}var o=void 0!==arguments[1]?arguments[1]:200,n=0,r={lastCallThrottled:!0},i=null;return t}function s(e){function t(){a=r}function o(){return a?(a--,e.apply(this,arguments)):s.apply(this,arguments)}var n=void 0!==arguments[1]?arguments[1]:200,r=void 0!==arguments[2]?arguments[2]:10,s=i(e,n),a=r;return o.clearHits=t,o}function a(e){function t(){var t=this,i=arguments;return r&&clearTimeout(r),r=setTimeout(function(){o=e.apply(t,i)},n),o}var o,n=void 0!==arguments[1]?arguments[1]:200,r=null;return t}function l(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var o=e,n=o[0],r=Array.prototype.slice.call(o,1);return function(){return f(r,function(e,t){return t(e)},n.apply(this,arguments))}}function u(e){for(var t=[],o=1;o<arguments.length;o++)t[o-1]=arguments[o];return function(){for(var o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return e.apply(this,t.concat(o))}}function c(e){function t(n){return function(){for(var r=[],i=0;i<arguments.length;i++)r[i]=arguments[i];var s=n.concat(r);return s.length>=o?e.apply(this,s):t(s)}}var o=e.length;return t([])}function d(e){function t(n){return function(){for(var r=[],i=0;i<arguments.length;i++)r[i]=arguments[i];var s=n.concat(r.reverse());return s.length>=o?e.apply(this,s):t(s)}}var o=e.length;return t([])}Object.defineProperties(o,{isFunction:{get:function(){return n}},proxy:{get:function(){return r}},throttle:{get:function(){return i}},throttleAfterHits:{get:function(){return s}},debounce:{get:function(){return a}},pipe:{get:function(){return l}},partial:{get:function(){return u}},curry:{get:function(){return c}},curryRight:{get:function(){return d}},__esModule:{value:!0}});var h,f=((h=e("array"))&&h.__esModule&&h||{default:h}).arrayReduce},{array:43}],51:[function(e,t,o){"use strict";function n(e){switch(typeof e){case"string":case"number":return e+"";case"object":return null===e?"":e.toString();case"undefined":return"";default:return e.toString()}}function r(e){return void 0!==e}function i(e){return void 0===e}function s(e){return null===e||""===e||i(e)}Object.defineProperties(o,{stringify:{get:function(){return n}},isDefined:{get:function(){return r}},isUndefined:{get:function(){return i}},isEmpty:{get:function(){return s}},__esModule:{value:!0}})},{}],52:[function(e,t,o){"use strict";function n(e){var t=typeof e;return"number"==t?!isNaN(e)&&isFinite(e):"string"==t?!!e.length&&(1==e.length?/\d/.test(e):/^\s*[+-]?\s*(?:(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?)|(?:0x[a-f\d]+))\s*$/i.test(e)):"object"==t&&!(!e||"number"!=typeof e.valueOf()||e instanceof Date)}function r(e,t,o){var n=-1;for("function"==typeof t?(o=t,t=e):n=e-1;++n<=t&&o(n)!==!1;);}function i(e,t,o){var n=e+1;for("function"==typeof t&&(o=t,t=0);--n>=t&&o(n)!==!1;);}function s(e,t){return t=parseInt(t.toString().replace("%",""),10),t=parseInt(e*t/100)}Object.defineProperties(o,{isNumeric:{get:function(){return n}},rangeEach:{get:function(){return r}},rangeEachReverse:{get:function(){return i}},valueAccordingPercent:{get:function(){return s}},__esModule:{value:!0}})},{}],53:[function(e,t,o){"use strict";function n(e){var t;return Array.isArray(e)?t=[]:(t={},p(e,function(e,o){"__children"!==o&&(e&&"object"==typeof e&&!Array.isArray(e)?t[o]=n(e):Array.isArray(e)?e.length&&"object"==typeof e[0]&&!Array.isArray(e[0])?t[o]=[n(e[0])]:t[o]=[]:t[o]=null)})),t}function r(e,t){return t.prototype.constructor=t,e.prototype=new t,e.prototype.constructor=e,e}function i(e,t){return p(t,function(t,o){e[o]=t}),e}function s(e,t){p(t,function(o,n){t[n]&&"object"==typeof t[n]?(e[n]||(Array.isArray(t[n])?e[n]=[]:"[object Date]"===Object.prototype.toString.call(t[n])?e[n]=t[n]:e[n]={}),s(e[n],t[n])):e[n]=t[n]})}function a(e){return"object"==typeof e?JSON.parse(JSON.stringify(e)):e}function l(e){var t={};return p(e,function(e,o){t[o]=e}),t}function u(e){for(var t=[],o=1;o<arguments.length;o++)t[o-1]=arguments[o];return e.MIXINS||(e.MIXINS=[]),y(t,function(t){e.MIXINS.push(t.MIXIN_NAME),p(t,function(t,o){if(void 0!==e.prototype[o])throw new Error("Mixin conflict. Property '"+o+"' already exist and cannot be overwritten.");if("function"==typeof t)e.prototype[o]=t;else{Object.defineProperty(e.prototype,o,{get:function(e,t){e="_"+e;var o=function(e){return(Array.isArray(e)||d(e))&&(e=a(e)),e};return function(){return void 0===this[e]&&(this[e]=o(t)),this[e]}}(o,t),set:function(e){return e="_"+e,function(t){this[e]=t}}(o),configurable:!0})}})}),e}function c(e,t){return JSON.stringify(e)===JSON.stringify(t)}function d(e){return"[object Object]"==Object.prototype.toString.call(e)}function h(e){var t;if("object"==typeof e.__proto__)t=e.__proto__;else{var o,n=e.constructor;"function"==typeof e.constructor&&(o=n,delete e.constructor&&(n=e.constructor,e.constructor=o)),t=n?n.prototype:null}return t}function f(e,t,o,n){n.value=o,n.writable=n.writable!==!1,n.enumerable=n.enumerable!==!1,n.configurable=n.configurable!==!1,Object.defineProperty(e,t,n)}function p(e,t){for(var o in e)if((!e.hasOwnProperty||e.hasOwnProperty&&e.hasOwnProperty(o))&&t(e[o],o,e)===!1)break;return e}function g(e,t){var o=t.split("."),n=e;return p(o,function(e){if(void 0===(n=n[e]))return n=void 0,!1}),n}function m(e){if(!d(e))return 0;var t=function(e){var o=0;return d(e)?p(e,function(e){o+=t(e)}):o++,o};return t(e)}function w(e){var t,o=void 0!==arguments[1]?arguments[1]:"value",n="_"+o,r=(t={},Object.defineProperty(t,"_touched",{value:!1,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(t,n,{value:e,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(t,"isTouched",{value:function(){return this._touched},configurable:!0,enumerable:!0,writable:!0}),t);return Object.defineProperty(r,o,{get:function(){return this[n]},set:function(e){this._touched=!0,this[n]=e},enumerable:!0,configurable:!0}),r}Object.defineProperties(o,{duckSchema:{get:function(){return n}},inherit:{get:function(){return r}},extend:{get:function(){return i}},deepExtend:{get:function(){return s}},deepClone:{get:function(){return a}},clone:{get:function(){return l}},mixin:{get:function(){return u}},isObjectEquals:{get:function(){return c}},isObject:{get:function(){return d}},getPrototypeOf:{get:function(){return h}},defineGetter:{get:function(){return f}},objectEach:{get:function(){return p}},getProperty:{get:function(){return g}},deepObjectSize:{get:function(){return m}},createObjectPropListener:{get:function(){return w}},__esModule:{value:!0}});var v,y=((v=e("array"))&&v.__esModule&&v||{default:v}).arrayEach},{array:43}],54:[function(e,t,o){"use strict";function n(e,t){function o(){}i(o,e);for(var n=0,r=t.length;n<r;n++)o.prototype[t[n]]=void 0;return o}Object.defineProperties(o,{columnFactory:{get:function(){return n}},__esModule:{value:!0}});var r,i=((r=e("object"))&&r.__esModule&&r||{default:r}).inherit},{object:53}],55:[function(e,t,o){"use strict";function n(e){return e[0].toUpperCase()+e.substr(1)}function r(e,t){var o=!0;return g(t.length-1,function(n){if(e.charAt(n)!==t.charAt(n))return o=!1,!1}),o}function i(e,t){var o=!0,n=t.length-1,r=e.length-1;return g(n,function(i){var s=r-i,a=n-i;if(e.charAt(s)!==t.charAt(a))return o=!1,!1}),o}function s(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var o=[],n=e.length;n--;){var r=p(e[n]).toLowerCase();o.indexOf(r)===-1&&o.push(r)}return 1===o.length}function a(){function e(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return e()+e()+e()+e()}function l(e){return/^([0-9][0-9]?\%$)|(^100\%$)/.test(e)}function u(e){var t=void 0!==arguments[1]?arguments[1]:{};return(e+"").replace(/(?:\\)?\[([^\[\]]+)]/g,function(e,o){return"\\"===e.charAt(0)?e.substr(1,e.length-1):void 0===t[o]?"":t[o]})}function c(e,t){var o=void 0!==arguments[2]?arguments[2]:" ";if(e+="",e.length>=t)return e;o=String(o),o.length||(o=" ");var n=t-e.length,r=Math.ceil(n/o.length),i="";return g(r,function(e){i+=o}),(i=i.slice(0,n))+e}function d(e){return e+="",e.replace(m,"")}Object.defineProperties(o,{toUpperCaseFirst:{get:function(){return n}},startsWith:{get:function(){return r}},endsWith:{get:function(){return i}},equalsIgnoreCase:{get:function(){return s}},randomString:{get:function(){return a}},isPercentValue:{get:function(){return l}},substitute:{get:function(){return u}},padStart:{get:function(){return c}},stripTags:{get:function(){return d}},__esModule:{value:!0}});var h,f,p=((h=e("mixed"))&&h.__esModule&&h||{default:h}).stringify,g=((f=e("number"))&&f.__esModule&&f||{default:f}).rangeEach,m=/<\/?\w+\/?>|<\w+[\s|\/][^>]*>/gi},{mixed:51,number:52}],56:[function(e,t,o){"use strict";function n(e){return 32==e||e>=48&&e<=57||e>=96&&e<=111||e>=186&&e<=192||e>=219&&e<=222||e>=226||e>=65&&e<=90}function r(e){return[u.ARROW_DOWN,u.ARROW_UP,u.ARROW_LEFT,u.ARROW_RIGHT,u.HOME,u.END,u.DELETE,u.BACKSPACE,u.F1,u.F2,u.F3,u.F4,u.F5,u.F6,u.F7,u.F8,u.F9,u.F10,u.F11,u.F12,u.TAB,u.PAGE_DOWN,u.PAGE_UP,u.ENTER,u.ESCAPE,u.SHIFT,u.CAPS_LOCK,u.ALT].indexOf(e)!==-1}function i(e){return[u.CONTROL_LEFT,224,u.COMMAND_LEFT,u.COMMAND_RIGHT].indexOf(e)!==-1}function s(e,t){var o=t.split("|"),n=!1;return l(o,function(t){if(e===u[t])return n=!0,!1}),n}Object.defineProperties(o,{KEY_CODES:{get:function(){return u}},isPrintableChar:{get:function(){return n}},isMetaKey:{get:function(){return r}},isCtrlKey:{get:function(){return i}},isKey:{get:function(){return s}},__esModule:{value:!0}});var a,l=((a=e("array"))&&a.__esModule&&a||{default:a}).arrayEach,u={MOUSE_LEFT:1,MOUSE_RIGHT:3,MOUSE_MIDDLE:2,BACKSPACE:8,COMMA:188,INSERT:45,DELETE:46,END:35,ENTER:13,ESCAPE:27,CONTROL_LEFT:91,COMMAND_LEFT:17,COMMAND_RIGHT:93,ALT:18,HOME:36,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,SPACE:32,SHIFT:16,CAPS_LOCK:20,TAB:9,ARROW_RIGHT:39,ARROW_LEFT:37,ARROW_UP:38,ARROW_DOWN:40,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,A:65,X:88,C:67,V:86}},{array:43}],57:[function(e,t,o){"use strict";Object.defineProperties(o,{arrayMapper:{get:function(){return p}},__esModule:{value:!0}});var n,r,i,s,a=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,l=(r=e("helpers/array"))&&r.__esModule&&r||{default:r},u=(l.arrayEach,l.arrayReduce),c=l.arrayMap,d=l.arrayMax,h=((i=e("helpers/object"))&&i.__esModule&&i||{default:i}).defineGetter,f=((s=e("helpers/number"))&&s.__esModule&&s||{default:s}).rangeEach,p={_arrayMap:[],getValueByIndex:function(e){var t;return void 0===(t=this._arrayMap[e])?null:t},getIndexByValue:function(e){var t;return(t=this._arrayMap.indexOf(e))===-1?null:t},insertItems:function(e){var t=void 0!==arguments[1]?arguments[1]:1,o=this,n=d(this._arrayMap)+1,r=[];return f(t-1,function(t){r.push(o._arrayMap.splice(e+t,0,n+t))}),r},removeItems:function(e){var t=void 0!==arguments[1]?arguments[1]:1,o=this,n=[];if(Array.isArray(e)){var r=[].concat(this._arrayMap);e.sort(function(e,t){return t-e}),n=u(e,function(e,t){return o._arrayMap.splice(t,1),e.concat(r.slice(t,t+1))},[])}else n=this._arrayMap.splice(e,t);return n},unshiftItems:function(e){function t(e){return u(n,function(t,o){return e>o&&t++,t},0)}var o=void 0!==arguments[1]?arguments[1]:1,n=this.removeItems(e,o);this._arrayMap=c(this._arrayMap,function(e,o){var n=t(e);return n&&(e-=n),e})},shiftItems:function(e){var t=void 0!==arguments[1]?arguments[1]:1,o=this;this._arrayMap=c(this._arrayMap,function(o){return o>=e&&(o+=t),o}),f(t-1,function(t){o._arrayMap.splice(e+t,0,e+t)})},clearMap:function(){this._arrayMap.length=0}};h(p,"MIXIN_NAME","arrayMapper",{writable:!1,enumerable:!1}),a.utils.arrayMapper=p},{browser:24,"helpers/array":43,"helpers/number":52,"helpers/object":53}],58:[function(e,t,o){"use strict";Object.defineProperties(o,{localHooks:{get:function(){return u}},__esModule:{value:!0}});var n,r,i,s=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,a=((r=e("helpers/array"))&&r.__esModule&&r||{default:r}).arrayEach,l=((i=e("helpers/object"))&&i.__esModule&&i||{default:i}).defineGetter,u={_localHooks:Object.create(null),addLocalHook:function(e,t){this._localHooks[e]||(this._localHooks[e]=[]),this._localHooks[e].push(t)},runLocalHooks:function(e){for(var t=[],o=1;o<arguments.length;o++)t[o-1]=arguments[o];var n=this;this._localHooks[e]&&a(this._localHooks[e],function(e){return e.apply(n,t)})},clearLocalHooks:function(){this._localHooks={}}};l(u,"MIXIN_NAME","localHooks",{writable:!1,enumerable:!1}),s.utils.localHooks=u},{browser:24,"helpers/array":43,"helpers/object":53}],59:[function(e,t,o){"use strict";function n(){function e(e){return null!==e&&!o(e)&&("string"==typeof e||"number"==typeof e)}function t(e){return null!==e&&("object"==typeof e||"function"==typeof e)}function o(e){return e!==e}var n={arrayMap:[],weakMap:new WeakMap};return{get:function(o){return e(o)?n.arrayMap[o]:t(o)?n.weakMap.get(o):void 0},set:function(o,r){if(e(o))n.arrayMap[o]=r;else{if(!t(o))throw new Error("Invalid key type");n.weakMap.set(o,r)}},delete:function(o){e(o)?delete n.arrayMap[o]:t(o)&&n.weakMap.delete(o)}}}Object.defineProperties(o,{MultiMap:{get:function(){return n}},__esModule:{value:!0}}),window.MultiMap=n},{}],60:[function(e,t,o){"use strict";Object.defineProperties(o,{Hooks:{get:function(){return l}},__esModule:{value:!0}});var n,r,i=["afterCellMetaReset","afterChange","afterChangesObserved","afterContextMenuDefaultOptions","beforeContextMenuSetItems","afterDropdownMenuDefaultOptions","beforeDropdownMenuSetItems","afterContextMenuHide","afterContextMenuShow","afterCopyLimit","beforeCreateCol","afterCreateCol","beforeCreateRow","afterCreateRow","afterDeselect","afterDestroy","afterDocumentKeyDown","afterGetCellMeta","afterGetColHeader","afterGetRowHeader","afterInit","afterLoadData","afterMomentumScroll","afterOnCellCornerMouseDown","afterOnCellCornerDblClick","afterOnCellMouseDown","afterOnCellMouseOver","afterOnCellMouseOut","afterRemoveCol","afterRemoveRow","afterRender","beforeRenderer","afterRenderer","afterScrollHorizontally","afterScrollVertically","afterSelection","afterSelectionByProp","afterSelectionEnd","afterSelectionEndByProp","afterSetCellMeta","afterSetDataAtCell","afterSetDataAtRowProp","afterUpdateSettings","afterValidate","beforeAutofill","beforeCellAlignment","beforeChange","beforeChangeRender","beforeDrawBorders","beforeGetCellMeta","beforeInit","beforeInitWalkontable","beforeKeyDown","beforeOnCellMouseDown","beforeOnCellMouseOver","beforeOnCellMouseOut","beforeRemoveCol","beforeRemoveRow","beforeRender","beforeSetRangeStart","beforeSetRangeEnd","beforeTouchScroll","beforeValidate","beforeValueRender","construct","init","modifyCol","unmodifyCol","unmodifyRow","modifyColHeader","modifyColWidth","modifyRow","modifyRowHeader","modifyRowHeight","modifyData","modifyRowData","persistentStateLoad","persistentStateReset","persistentStateSave","beforeColumnSort","afterColumnSort","modifyAutofillRange","modifyCopyableRange","beforeCut","afterCut","beforeCopy","afterCopy","beforePaste","afterPaste","beforeColumnMove","afterColumnMove","beforeRowMove","afterRowMove","beforeColumnResize","afterColumnResize","beforeRowResize","afterRowResize","afterGetColumnHeaderRenderers","afterGetRowHeaderRenderers","beforeStretchingColumnWidth","beforeFilter","afterFilter","modifyColumnHeaderHeight","beforeUndo","afterUndo","beforeRedo","afterRedo","modifyRowHeaderWidth","beforeAutofillInsidePopulate","modifyTransformStart","modifyTransformEnd","afterModifyTransformStart","afterModifyTransformEnd","beforeValueRender","afterViewportRowCalculatorOverride","afterViewportColumnCalculatorOverride","afterPluginsInitialized","manualRowHeights","skipLengthCache","afterTrimRow","afterUntrimRow","afterDropdownMenuShow","afterDropdownMenuHide","hiddenRow","hiddenColumn","beforeAddChild","afterAddChild","beforeDetachChild","afterDetachChild","afterBeginEditing"],s=((n=e("helpers/array"))&&n.__esModule&&n||{default:n}).arrayEach,a=((r=e("helpers/object"))&&r.__esModule&&r||{default:r}).objectEach,l=function(){this.globalBucket=this.createEmptyBucket()};$traceurRuntime.createClass(l,{createEmptyBucket:function(){var e=Object.create(null);return s(i,function(t){return e[t]=[]}),e},getBucket:function(){var e=void 0!==arguments[0]?arguments[0]:null;return e?(e.pluginHookBucket||(e.pluginHookBucket=this.createEmptyBucket()),e.pluginHookBucket):this.globalBucket},add:function(e,t){var o=void 0!==arguments[2]?arguments[2]:null,n=this;if(Array.isArray(t))s(t,function(t){return n.add(e,t,o)});else{var r=this.getBucket(o);if(void 0===r[e]&&(this.register(e),r[e]=[]),t.skip=!1,r[e].indexOf(t)===-1){var i=!1;t.initialHook&&s(r[e],function(o,n){if(o.initialHook)return r[e][n]=t,i=!0,!1}),i||r[e].push(t)}}return this},once:function(e,t){var o=void 0!==arguments[2]?arguments[2]:null,n=this;Array.isArray(t)?s(t,function(t){return n.once(e,t,o)}):(t.runOnce=!0,this.add(e,t,o))},remove:function(e,t){var o=void 0!==arguments[2]?arguments[2]:null,n=this.getBucket(o);return void 0!==n[e]&&n[e].indexOf(t)>=0&&(t.skip=!0,!0)},has:function(e){var t=void 0!==arguments[1]?arguments[1]:null,o=this.getBucket(t);return!(void 0===o[e]||!o[e].length)},run:function(e,t,o,n,r,i,s,a){var l=this.globalBucket[t],u=-1,c=l?l.length:0;if(c)for(;++u<c;)if(l[u]&&!l[u].skip){var d=l[u].call(e,o,n,r,i,s,a);void 0!==d&&(o=d),l[u]&&l[u].runOnce&&this.remove(t,l[u])}var h=this.getBucket(e)[t],f=-1,p=h?h.length:0;if(p)for(;++f<p;)if(h[f]&&!h[f].skip){var g=h[f].call(e,o,n,r,i,s,a);void 0!==g&&(o=g),h[f]&&h[f].runOnce&&this.remove(t,h[f],e)}return o},destroy:function(){var e=void 0!==arguments[0]?arguments[0]:null;a(this.getBucket(e),function(e,t,o){return o[t].length=0})},register:function(e){this.isRegistered(e)||i.push(e)},deregister:function(e){this.isRegistered(e)&&i.splice(i.indexOf(e),1)},isRegistered:function(e){return i.indexOf(e)>=0},getRegistered:function(){return i}},{})},{"helpers/array":43,"helpers/object":53}],61:[function(e,t,o){"use strict";function n(e,t){e=h(e),c.plugins[e]=t,c.hooks.add("construct",function(){var o;f.has(this)||f.set(this,{}),o=f.get(this),o[e]||(o[e]=new t(this))}),c.hooks.add("afterDestroy",function(){if(f.has(this)){d(f.get(this),function(e){return e.destroy()}),f.delete(this)}})}function r(e,t){if("string"!=typeof t)throw Error('Only strings can be passed as "plugin" parameter');var o=h(t);if(f.has(e)&&f.get(e)[o])return f.get(e)[o]}function i(e){return f.has(e)?Object.keys(f.get(e)):[]}function s(e,t){var o=null;return f.has(e)&&d(f.get(e),function(e,n){e===t&&(o=n)}),o}Object.defineProperties(o,{registerPlugin:{get:function(){return n}},getPlugin:{get:function(){return r}},getRegistredPluginNames:{get:function(){return i}},getPluginName:{get:function(){return s}},__esModule:{value:!0}});var a,l,u,c=((a=e("browser"))&&a.__esModule&&a||{default:a}).default,d=((l=e("helpers/object"))&&l.__esModule&&l||{default:l}).objectEach,h=((u=e("helpers/string"))&&u.__esModule&&u||{default:u}).toUpperCaseFirst,f=new WeakMap},{browser:24,"helpers/object":53,"helpers/string":55}],62:[function(e,t,o){"use strict";Object.defineProperties(o,{default:{get:function(){return C}},__esModule:{value:!0}});var n,r,i,s,a,l=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,u=(r=e("helpers/object"))&&r.__esModule&&r||{default:r},c=u.defineGetter,d=u.objectEach,h=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayEach,f=(s=e("utils/recordTranslator"))&&s.__esModule&&s||{default:s},p=(f.registerIdentity,f.getTranslator),g=(a=e("plugins"))&&a.__esModule&&a||{default:a},m=g.getRegistredPluginNames,w=g.getPluginName,v=new WeakMap,y=null,b=function(e){var t=this;c(this,"hot",e,{writable:!1}),c(this,"t",p(e),{writable:!1}),v.set(this,{hooks:{}}),y=null,this.pluginName=null,this.pluginsInitializedCallbacks=[],this.isPluginsReady=!1,this.enabled=!1,this.initialized=!1,this.hot.addHook("afterPluginsInitialized",function(){return t.onAfterPluginsInitialized()}),this.hot.addHook("afterUpdateSettings",function(){return t.onUpdateSettings()}),this.hot.addHook("beforeInit",function(){return t.init()})};$traceurRuntime.createClass(b,{init:function(){this.pluginName=w(this.hot,this),this.isEnabled&&this.isEnabled()&&this.enablePlugin(),y||(y=m(this.hot)),y.indexOf(this.pluginName)>=0&&y.splice(y.indexOf(this.pluginName),1),y.length||this.hot.runHooks("afterPluginsInitialized"),this.initialized=!0},enablePlugin:function(){this.enabled=!0},disablePlugin:function(){this.eventManager&&this.eventManager.clear(),this.clearHooks(),this.enabled=!1},addHook:function(e,t){var o=v.get(this).hooks[e]=v.get(this).hooks[e]||[];this.hot.addHook(e,t),o.push(t),v.get(this).hooks[e]=o},removeHooks:function(e){var t=this;h(v.get(this).hooks[e]||[],function(o){t.hot.removeHook(e,o)})},clearHooks:function(){var e=this,t=v.get(this).hooks;d(t,function(t,o){return e.removeHooks(o)}),t.length=0},callOnPluginsReady:function(e){this.isPluginsReady?e():this.pluginsInitializedCallbacks.push(e)},onAfterPluginsInitialized:function(){h(this.pluginsInitializedCallbacks,function(e){return e()}),this.pluginsInitializedCallbacks.length=0,this.isPluginsReady=!0},onUpdateSettings:function(){this.isEnabled&&(this.enabled&&!this.isEnabled()&&this.disablePlugin(),!this.enabled&&this.isEnabled()&&this.enablePlugin(),this.enabled&&this.isEnabled()&&this.updatePlugin())},updatePlugin:function(){},destroy:function(){var e=this;this.eventManager&&this.eventManager.destroy(),this.clearHooks(),d(this,function(t,o){"hot"!==o&&"t"!==o&&(e[o]=null)}),delete this.t,delete this.hot}},{});var C=b;l.plugins.BasePlugin=b},{browser:24,"helpers/array":43,"helpers/object":53,plugins:61,"utils/recordTranslator":130}],63:[function(e,t,o){"use strict";Object.defineProperties(o,{AutoColumnSize:{get:function(){return L}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d,h,f,p=((n=e("_base"))&&n.__esModule&&n||{default:n}).default,g=(r=e("helpers/array"))&&r.__esModule&&r||{default:r},m=g.arrayEach,w=g.arrayFilter,v=g.arrayReduce,y=g.arrayMap,b=(i=e("helpers/feature"))&&i.__esModule&&i||{default:i},C=b.cancelAnimationFrame,_=b.requestAnimationFrame,R=((s=e("helpers/dom/element"))&&s.__esModule&&s||{default:s}).isVisible,M=((a=e("utils/ghostTable"))&&a.__esModule&&a||{default:a}).GhostTable,S=(l=e("helpers/object"))&&l.__esModule&&l||{default:l},E=S.isObject,O=(S.objectEach,(u=e("helpers/number"))&&u.__esModule&&u||{default:u}),T=O.valueAccordingPercent,k=O.rangeEach,x=((c=e("plugins"))&&c.__esModule&&c||{default:c}).registerPlugin,H=((d=e("utils/samplesGenerator"))&&d.__esModule&&d||{default:d}).SamplesGenerator,D=((h=e("helpers/string"))&&h.__esModule&&h||{default:h}).isPercentValue,A=((f=e("3rdparty/walkontable/src/calculator/viewportColumns"))&&f.__esModule&&f||{default:f}).WalkontableViewportColumnsCalculator,P=new WeakMap,L=function(e){var t=this;$traceurRuntime.superConstructor(N).call(this,e),P.set(this,{cachedColumnHeaders:[]}),this.widths=[],this.ghostTable=new M(this.hot),this.samplesGenerator=new H(function(e,o){return t.hot.getDataAtCell(e,o)}),this.firstCalculation=!0,this.inProgress=!1,this.addHook("beforeColumnResize",function(e,o,n){return t.onBeforeColumnResize(e,o,n)})},N=L;$traceurRuntime.createClass(L,{isEnabled:function(){return this.hot.getSettings().autoColumnSize!==!1&&!this.hot.getSettings().colWidths},enablePlugin:function(){var e=this;if(!this.enabled){var t=this.hot.getSettings().autoColumnSize;t&&null!=t.useHeaders&&this.ghostTable.setSetting("useHeaders",t.useHeaders),this.addHook("afterLoadData",function(){return e.onAfterLoadData()}),this.addHook("beforeChange",function(t){return e.onBeforeChange(t)}),this.addHook("beforeRender",function(t){return e.onBeforeRender(t)}),this.addHook("modifyColWidth",function(t,o){return e.getColumnWidth(o,t)}),this.addHook("afterInit",function(){return e.onAfterInit()}),$traceurRuntime.superGet(this,N.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.findColumnsWhereHeaderWasChanged();e.length&&this.clearCache(e),$traceurRuntime.superGet(this,N.prototype,"updatePlugin").call(this)},disablePlugin:function(){$traceurRuntime.superGet(this,N.prototype,"disablePlugin").call(this)},calculateColumnsWidth:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countCols()-1},t=void 0!==arguments[1]?arguments[1]:{from:0,to:this.hot.countRows()-1},o=void 0!==arguments[2]&&arguments[2],n=this;"number"==typeof e&&(e={from:e,to:e}),"number"==typeof t&&(t={from:t,to:t}),k(e.from,e.to,function(e){if(o||void 0===n.widths[e]&&!n.hot._getColWidthFromSettings(e)){n.samplesGenerator.generateColumnSamples(e,t).forEach(function(e,t){return n.ghostTable.addColumn(t,e)})}}),this.ghostTable.columns.length&&(this.ghostTable.getWidths(function(e,t){return n.widths[e]=t}),this.ghostTable.clean())},calculateAllColumnsWidth:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countRows()-1},t=this,o=0,n=this.hot.countCols()-1,r=null;this.inProgress=!0;var i=function(){if(!t.hot)return C(r),void(t.inProgress=!1);t.calculateColumnsWidth({from:o,to:Math.min(o+N.CALCULATION_STEP,n)},e),o=o+N.CALCULATION_STEP+1,o<n?r=_(i):(C(r),t.inProgress=!1,t.hot.view.wt.wtOverlays.adjustElementsSize(!0),t.hot.view.wt.wtOverlays.leftOverlay.needFullRender&&t.hot.view.wt.wtOverlays.leftOverlay.clone.draw())};this.firstCalculation&&this.getSyncCalculationLimit()&&(this.calculateColumnsWidth({from:0,to:this.getSyncCalculationLimit()},e),this.firstCalculation=!1,o=this.getSyncCalculationLimit()+1),o<n?i():this.inProgress=!1},setSamplingOptions:function(){var e=this.hot.getSettings().autoColumnSize,t=e&&e.hasOwnProperty("samplingRatio")?this.hot.getSettings().autoColumnSize.samplingRatio:void 0,o=e&&e.hasOwnProperty("allowSampleDuplicates")?this.hot.getSettings().autoColumnSize.allowSampleDuplicates:void 0;t&&!isNaN(t)&&this.samplesGenerator.setSampleCount(parseInt(t,10)),o&&this.samplesGenerator.setAllowDuplicates(o)},recalculateAllColumnsWidth:function(){this.hot.view&&R(this.hot.view.wt.wtTable.TABLE)&&(this.clearCache(),this.calculateAllColumnsWidth())},getSyncCalculationLimit:function(){var e=N.SYNC_CALCULATION_LIMIT,t=this.hot.countCols()-1;return E(this.hot.getSettings().autoColumnSize)&&(e=this.hot.getSettings().autoColumnSize.syncLimit,D(e)?e=T(t,e):e>>=0),Math.min(e,t)},getColumnWidth:function(e){var t=arguments[1],o=void 0===arguments[2]||arguments[2],n=t;return void 0===n&&(n=this.widths[e],o&&"number"==typeof n&&(n=Math.max(n,A.DEFAULT_WIDTH))),n},getFirstVisibleColumn:function(){var e=this.hot.view.wt;return e.wtViewport.columnsVisibleCalculator?e.wtTable.getFirstVisibleColumn():e.wtViewport.columnsRenderCalculator?e.wtTable.getFirstRenderedColumn():-1},getLastVisibleColumn:function(){var e=this.hot.view.wt;return e.wtViewport.columnsVisibleCalculator?e.wtTable.getLastVisibleColumn():e.wtViewport.columnsRenderCalculator?e.wtTable.getLastRenderedColumn():-1},findColumnsWhereHeaderWasChanged:function(){var e=this.hot.getColHeader(),t=P.get(this).cachedColumnHeaders;return v(e,function(e,o,n){var r=t.length;return(r-1<n||t[n]!==o)&&e.push(n),r-1<n?t.push(o):t[n]=o,e},[])},clearCache:function(){var e=void 0!==arguments[0]?arguments[0]:[],t=this;e.length?m(e,function(e){return t.widths[e]=void 0}):this.widths.length=0},isNeedRecalculate:function(){return!!w(this.widths,function(e){return void 0===e}).length},onBeforeRender:function(){var e=this.hot.renderCall;this.hot.countRows()&&(this.calculateColumnsWidth({from:this.getFirstVisibleColumn(),to:this.getLastVisibleColumn()},void 0,e),this.isNeedRecalculate()&&!this.inProgress&&this.calculateAllColumnsWidth())},onAfterLoadData:function(){var e=this;this.hot.view?this.recalculateAllColumnsWidth():setTimeout(function(){e.hot&&e.recalculateAllColumnsWidth()},0)},onBeforeChange:function(e){var t=this,o=y(e,function(e){var o=e,n=(o[0],o[1]);return t.hot.propToCol(n)});this.clearCache(o)},onBeforeColumnResize:function(e,t,o){return o&&(this.calculateColumnsWidth(e,void 0,!0),t=this.getColumnWidth(e,void 0,!1)),t},onAfterInit:function(){P.get(this).cachedColumnHeaders=this.hot.getColHeader()},destroy:function(){this.ghostTable.clean(),$traceurRuntime.superGet(this,N.prototype,"destroy").call(this)}},{get CALCULATION_STEP(){return 50},get SYNC_CALCULATION_LIMIT(){return 50}},p),x("autoColumnSize",L)},{"3rdparty/walkontable/src/calculator/viewportColumns":4,_base:62,"helpers/array":43,"helpers/dom/element":47,"helpers/feature":49,"helpers/number":52,"helpers/object":53,"helpers/string":55,plugins:61,"utils/ghostTable":128,"utils/samplesGenerator":131}],64:[function(e,t,o){"use strict";Object.defineProperties(o,{AutoRowSize:{get:function(){return k}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d,h,f=((n=e("_base"))&&n.__esModule&&n||{default:n}).default,p=(r=e("helpers/array"))&&r.__esModule&&r||{default:r},g=(p.arrayEach,p.arrayFilter),m=(i=e("helpers/feature"))&&i.__esModule&&i||{default:i},w=m.cancelAnimationFrame,v=m.requestAnimationFrame,y=((s=e("helpers/dom/element"))&&s.__esModule&&s||{default:s}).isVisible,b=((a=e("utils/ghostTable"))&&a.__esModule&&a||{default:a}).GhostTable,C=(l=e("helpers/object"))&&l.__esModule&&l||{default:l},_=C.isObject,R=(C.objectEach,(u=e("helpers/number"))&&u.__esModule&&u||{default:u}),M=R.valueAccordingPercent,S=R.rangeEach,E=((c=e("plugins"))&&c.__esModule&&c||{default:c}).registerPlugin,O=((d=e("utils/samplesGenerator"))&&d.__esModule&&d||{default:d}).SamplesGenerator,T=((h=e("helpers/string"))&&h.__esModule&&h||{default:h}).isPercentValue,k=function(e){var t=this;$traceurRuntime.superConstructor(x).call(this,e),this.heights=[],this.ghostTable=new b(this.hot),this.samplesGenerator=new O(function(e,o){return e>=0?t.hot.getDataAtCell(e,o):e===-1?t.hot.getColHeader(o):null}),this.firstCalculation=!0,this.inProgress=!1,this.addHook("beforeRowResize",function(e,o,n){return t.onBeforeRowResize(e,o,n)})},x=k;$traceurRuntime.createClass(k,{isEnabled:function(){return this.hot.getSettings().autoRowSize===!0||_(this.hot.getSettings().autoRowSize)},enablePlugin:function(){var e=this;this.enabled||(this.setSamplingOptions(),this.addHook("afterLoadData",function(){return e.onAfterLoadData()}),this.addHook("beforeChange",function(t){return e.onBeforeChange(t)}),this.addHook("beforeColumnMove",function(){return e.recalculateAllRowsHeight()}),this.addHook("beforeColumnResize",function(){return e.recalculateAllRowsHeight()}),this.addHook("beforeColumnSort",function(){return e.clearCache()}),this.addHook("beforeRender",function(t){return e.onBeforeRender(t)}),this.addHook("beforeRowMove",function(t,o){return e.onBeforeRowMove(t,o)}),this.addHook("modifyRowHeight",function(t,o){return e.getRowHeight(o,t)}),this.addHook("modifyColumnHeaderHeight",function(){return e.getColumnHeaderHeight()}),$traceurRuntime.superGet(this,x.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,x.prototype,"disablePlugin").call(this)},calculateRowsHeight:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countRows()-1},t=void 0!==arguments[1]?arguments[1]:{from:0,to:this.hot.countCols()-1},o=void 0!==arguments[2]&&arguments[2],n=this;if("number"==typeof e&&(e={from:e,to:e}),"number"==typeof t&&(t={from:t,to:t}),null!==this.hot.getColHeader(0)){var r=this.samplesGenerator.generateRowSamples(-1,t);this.ghostTable.addColumnHeadersRow(r.get(-1))}S(e.from,e.to,function(e){if(o||void 0===n.heights[e]){n.samplesGenerator.generateRowSamples(e,t).forEach(function(e,t){return n.ghostTable.addRow(t,e)})}}),
35
+ this.ghostTable.rows.length&&(this.ghostTable.getHeights(function(e,t){return n.heights[e]=t}),this.ghostTable.clean())},calculateAllRowsHeight:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countCols()-1},t=this,o=0,n=this.hot.countRows()-1,r=null;this.inProgress=!0;var i=function(){if(!t.hot)return w(r),void(t.inProgress=!1);t.calculateRowsHeight({from:o,to:Math.min(o+x.CALCULATION_STEP,n)},e),o=o+x.CALCULATION_STEP+1,o<n?r=v(i):(w(r),t.inProgress=!1,t.hot.view.wt.wtOverlays.adjustElementsSize(!0),t.hot.view.wt.wtOverlays.leftOverlay.needFullRender&&t.hot.view.wt.wtOverlays.leftOverlay.clone.draw())};this.firstCalculation&&this.getSyncCalculationLimit()&&(this.calculateRowsHeight({from:0,to:this.getSyncCalculationLimit()},e),this.firstCalculation=!1,o=this.getSyncCalculationLimit()+1),o<n?i():(this.inProgress=!1,this.hot.view.wt.wtOverlays.adjustElementsSize(!1))},setSamplingOptions:function(){var e=this.hot.getSettings().autoRowSize,t=e&&e.hasOwnProperty("samplingRatio")?this.hot.getSettings().autoRowSize.samplingRatio:void 0,o=e&&e.hasOwnProperty("allowSampleDuplicates")?this.hot.getSettings().autoRowSize.allowSampleDuplicates:void 0;t&&!isNaN(t)&&this.samplesGenerator.setSampleCount(parseInt(t,10)),o&&this.samplesGenerator.setAllowDuplicates(o)},recalculateAllRowsHeight:function(){y(this.hot.view.wt.wtTable.TABLE)&&(this.clearCache(),this.calculateAllRowsHeight())},getSyncCalculationLimit:function(){var e=x.SYNC_CALCULATION_LIMIT,t=this.hot.countRows()-1;return _(this.hot.getSettings().autoRowSize)&&(e=this.hot.getSettings().autoRowSize.syncLimit,T(e)?e=M(t,e):e>>=0),Math.min(e,t)},getRowHeight:function(e){var t=arguments[1],o=t;return void 0!==this.heights[e]&&this.heights[e]>(t||0)&&(o=this.heights[e]),o},getColumnHeaderHeight:function(){return this.heights[-1]},getFirstVisibleRow:function(){var e=this.hot.view.wt;return e.wtViewport.rowsVisibleCalculator?e.wtTable.getFirstVisibleRow():e.wtViewport.rowsRenderCalculator?e.wtTable.getFirstRenderedRow():-1},getLastVisibleRow:function(){var e=this.hot.view.wt;return e.wtViewport.rowsVisibleCalculator?e.wtTable.getLastVisibleRow():e.wtViewport.rowsRenderCalculator?e.wtTable.getLastRenderedRow():-1},clearCache:function(){this.heights.length=0,this.heights[-1]=void 0},clearCacheByRange:function(e){var t=this;"number"==typeof e&&(e={from:e,to:e}),S(Math.min(e.from,e.to),Math.max(e.from,e.to),function(e){return t.heights[e]=void 0})},isNeedRecalculate:function(){return!!g(this.heights,function(e){return void 0===e}).length},onBeforeRender:function(){var e=this.hot.renderCall;this.calculateRowsHeight({from:this.getFirstVisibleRow(),to:this.getLastVisibleRow()},void 0,e);var t=this.hot.getSettings().fixedRowsBottom;if(t){var o=this.hot.countRows()-1;this.calculateRowsHeight({from:o-t,to:o})}this.isNeedRecalculate()&&!this.inProgress&&this.calculateAllRowsHeight()},onBeforeRowMove:function(e,t){this.clearCacheByRange({from:e,to:t}),this.calculateAllRowsHeight()},onBeforeRowResize:function(e,t,o){return o&&(this.calculateRowsHeight(e,void 0,!0),t=this.getRowHeight(e)),t},onAfterLoadData:function(){var e=this;this.hot.view?this.recalculateAllRowsHeight():setTimeout(function(){e.hot&&e.recalculateAllRowsHeight()},0)},onBeforeChange:function(e){var t=null;1===e.length?t=e[0][0]:e.length>1&&(t={from:e[0][0],to:e[e.length-1][0]}),null!==t&&this.clearCacheByRange(t)},destroy:function(){this.ghostTable.clean(),$traceurRuntime.superGet(this,x.prototype,"destroy").call(this)}},{get CALCULATION_STEP(){return 50},get SYNC_CALCULATION_LIMIT(){return 500}},f),E("autoRowSize",k)},{_base:62,"helpers/array":43,"helpers/dom/element":47,"helpers/feature":49,"helpers/number":52,"helpers/object":53,"helpers/string":55,plugins:61,"utils/ghostTable":128,"utils/samplesGenerator":131}],65:[function(e,t,o){"use strict";Object.defineProperties(o,{Autofill:{get:function(){return E}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d=((n=e("_base"))&&n.__esModule&&n||{default:n}).default,h=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,f=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayIncludes,p=(s=e("helpers/dom/element"))&&s.__esModule&&s||{default:s},g=p.offset,m=p.outerHeight,w=p.outerWidth,v=((a=e("eventManager"))&&a.__esModule&&a||{default:a}).eventManager,y=((l=e("plugins"))&&l.__esModule&&l||{default:l}).registerPlugin,b=((u=e("3rdparty/walkontable/src/cell/coords"))&&u.__esModule&&u||{default:u}).WalkontableCellCoords,C=(c=e("utils"))&&c.__esModule&&c||{default:c},_=C.getDeltas,R=C.getDragDirectionAndRange,M=C.DIRECTIONS,S=C.getMappedFillHandleSetting,E=function(e){$traceurRuntime.superConstructor(O).call(this,e),this.eventManager=v(this),this.addingStarted=!1,this.mouseDownOnCellCorner=!1,this.mouseDragOutside=!1,this.handleDraggedCells=0,this.directions=[],this.autoInsertRow=!1},O=E;$traceurRuntime.createClass(E,{isEnabled:function(){return this.hot.getSettings().fillHandle},enablePlugin:function(){var e=this;this.enabled||(this.mapSettings(),this.registerEvents(),this.addHook("afterOnCellCornerMouseDown",function(t){return e.onAfterCellCornerMouseDown(t)}),this.addHook("afterOnCellCornerDblClick",function(t){return e.onCellCornerDblClick(t)}),this.addHook("beforeOnCellMouseOver",function(t,o,n){return e.onBeforeCellMouseOver(o)}),$traceurRuntime.superGet(this,O.prototype,"enablePlugin").call(this))},updatePlugin:function(){this.disablePlugin(),this.enablePlugin(),$traceurRuntime.superGet(this,O.prototype,"updatePlugin").call(this)},disablePlugin:function(){this.clearMappedSettings(),$traceurRuntime.superGet(this,O.prototype,"disablePlugin").call(this)},getSelectionData:function(){var e={from:this.hot.getSelectedRange().from,to:this.hot.getSelectedRange().to};return this.hot.getData(e.from.row,e.from.col,e.to.row,e.to.col)},fillIn:function(){if(this.hot.view.wt.selections.fill.isEmpty())return!1;var e=this.hot.view.wt.selections.fill.getCorners();this.resetSelectionOfDraggedArea();var t=this.getCornersOfSelectedCells(),o=R(t,e),n=o.directionOfDrag,r=o.startOfDragCoords,i=o.endOfDragCoords;if(this.hot.runHooks("modifyAutofillRange",t,e),r&&r.row>-1&&r.col>-1){var s=this.getSelectionData(),a=_(r,i,s,n);this.hot.runHooks("beforeAutofill",r,i,s),this.hot.populateFromArray(r.row,r.col,s,i.row,i.col,this.pluginName+".fill",null,n,a),this.setSelection(e)}else this.hot.selection.refreshBorders();return!0},reduceSelectionAreaIfNeeded:function(e){return e.row<0&&(e.row=0),e.col<0&&(e.col=0),e},getCoordsOfDragAndDropBorders:function(e){var t,o=this.hot.getSelectedRange().getTopLeftCorner(),n=this.hot.getSelectedRange().getBottomRightCorner();if(f(this.directions,M.vertical)&&(n.row<e.row||o.row>e.row))t=new b(e.row,n.col);else{if(!f(this.directions,M.horizontal))return;t=new b(n.row,e.col)}return this.reduceSelectionAreaIfNeeded(t)},showBorder:function(e){var t=this.getCoordsOfDragAndDropBorders(e);t&&this.redrawBorders(t)},addRow:function(){var e=this;this.hot._registerTimeout(setTimeout(function(){e.hot.alter("insert_row",void 0,1,e.pluginName+".fill"),e.addingStarted=!1},200))},addNewRowIfNeeded:function(){if(this.hot.view.wt.selections.fill.cellRange&&this.addingStarted===!1&&this.autoInsertRow){var e=this.hot.getSelected(),t=this.hot.view.wt.selections.fill.getCorners(),o=this.hot.countRows();e[2]<o-1&&t[2]===o-1&&(this.addingStarted=!0,this.addRow())}},getCornersOfSelectedCells:function(){return this.hot.selection.isMultiple()?this.hot.view.wt.selections.area.getCorners():this.hot.view.wt.selections.current.getCorners()},getIndexOfLastAdjacentFilledInRow:function(e){for(var t,o=this.hot.getData(),n=this.hot.countRows(),r=e[2]+1;r<n;r++){for(var i=e[1];i<=e[3];i++){if(o[r][i])return-1}var s=o[r][e[1]-1],a=o[r][e[3]+1];(s||a)&&(t=r)}return t},addSelectionFromStartAreaToSpecificRowIndex:function(e,t){this.hot.view.wt.selections.fill.clear(),this.hot.view.wt.selections.fill.add(new b(e[0],e[1])),this.hot.view.wt.selections.fill.add(new b(t,e[3]))},setSelection:function(e){this.hot.selection.setRangeStart(new b(e[0],e[1])),this.hot.selection.setRangeEnd(new b(e[2],e[3]))},selectAdjacent:function(){var e=this.getCornersOfSelectedCells(),t=this.getIndexOfLastAdjacentFilledInRow(e);return t!==-1&&(this.addSelectionFromStartAreaToSpecificRowIndex(e,t),!0)},resetSelectionOfDraggedArea:function(){this.handleDraggedCells=0,this.hot.view.wt.selections.fill.clear()},redrawBorders:function(e){this.hot.view.wt.selections.fill.clear(),this.hot.view.wt.selections.fill.add(this.hot.getSelectedRange().from),this.hot.view.wt.selections.fill.add(this.hot.getSelectedRange().to),this.hot.view.wt.selections.fill.add(e),this.hot.view.render()},getIfMouseWasDraggedOutside:function(e){var t=g(this.hot.table).top-(window.pageYOffset||document.documentElement.scrollTop)+m(this.hot.table),o=g(this.hot.table).left-(window.pageXOffset||document.documentElement.scrollLeft)+w(this.hot.table);return e.clientY>t&&e.clientX<=o},registerEvents:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"mouseup",function(){return e.onMouseUp()}),this.eventManager.addEventListener(document.documentElement,"mousemove",function(t){return e.onMouseMove(t)})},onCellCornerDblClick:function(){this.selectAdjacent()&&this.fillIn()},onAfterCellCornerMouseDown:function(){this.handleDraggedCells=1,this.mouseDownOnCellCorner=!0},onBeforeCellMouseOver:function(e){this.mouseDownOnCellCorner&&!this.hot.view.isMouseDown()&&this.handleDraggedCells&&(this.handleDraggedCells++,this.showBorder(e),this.addNewRowIfNeeded())},onMouseUp:function(){this.handleDraggedCells&&(this.handleDraggedCells>1&&this.fillIn(),this.handleDraggedCells=0,this.mouseDownOnCellCorner=!1)},onMouseMove:function(e){var t=this.getIfMouseWasDraggedOutside(e);this.addingStarted===!1&&this.handleDraggedCells>0&&t?(this.mouseDragOutside=!0,this.addingStarted=!0):this.mouseDragOutside=!1,this.mouseDragOutside&&this.autoInsertRow&&this.addRow()},clearMappedSettings:function(){this.directions.length=0,this.autoInsertRow=!1},mapSettings:function(){var e=S(this.hot.getSettings().fillHandle);this.directions=e.directions,this.autoInsertRow=e.autoInsertRow},destroy:function(){$traceurRuntime.superGet(this,O.prototype,"destroy").call(this)}},{},d),y("autofill",E),h.hooks.register("modifyAutofillRange"),h.hooks.register("beforeAutofill")},{"3rdparty/walkontable/src/cell/coords":6,_base:62,browser:24,eventManager:42,"helpers/array":43,"helpers/dom/element":47,plugins:61,utils:66}],66:[function(e,t,o){"use strict";function n(e,t,o,n){var r=o.length,i=o?o[0].length:0,s=[],a=t.row-e.row,l=t.col-e.col;if(["down","up"].indexOf(n)!==-1){for(var u=[],c=0;c<=l;c++){var d=parseInt(o[0][c],10),h=parseInt(o[r-1][c],10),f=("down"===n?h-d:d-h)/(r-1)||0;u.push(f)}s.push(u)}if(["right","left"].indexOf(n)!==-1)for(var p=0;p<=a;p++){var g=parseInt(o[p][0],10),m=parseInt(o[p][i-1],10),w=("right"===n?m-g:g-m)/(i-1)||0;s.push([w])}return s}function r(e,t){var o,n,r;return t[0]===e[0]&&t[1]<e[1]?(r="left",o=new WalkontableCellCoords(t[0],t[1]),n=new WalkontableCellCoords(t[2],e[1]-1)):t[0]===e[0]&&t[3]>e[3]?(r="right",o=new WalkontableCellCoords(t[0],e[3]+1),n=new WalkontableCellCoords(t[2],t[3])):t[0]<e[0]&&t[1]===e[1]?(r="up",o=new WalkontableCellCoords(t[0],t[1]),n=new WalkontableCellCoords(e[0]-1,t[3])):t[2]>e[2]&&t[1]===e[1]&&(r="down",o=new WalkontableCellCoords(e[2]+1,t[1]),n=new WalkontableCellCoords(t[2],t[3])),{directionOfDrag:r,startOfDragCoords:o,endOfDragCoords:n}}function i(e){var t={};return e===!0?(t.directions=Object.keys(c),t.autoInsertRow=!0):l(e)?(u(e.autoInsertRow)?e.direction===c.horizontal?t.autoInsertRow=!1:t.autoInsertRow=e.autoInsertRow:t.autoInsertRow=!1,u(e.direction)?t.directions=[e.direction]:t.directions=Object.keys(c)):"string"==typeof e?(t.directions=[e],t.autoInsertRow=!0):(t.directions=[],t.autoInsertRow=!1),t}Object.defineProperties(o,{DIRECTIONS:{get:function(){return c}},getDeltas:{get:function(){return n}},getDragDirectionAndRange:{get:function(){return r}},getMappedFillHandleSetting:{get:function(){return i}},__esModule:{value:!0}});var s,a,l=((s=e("helpers/object"))&&s.__esModule&&s||{default:s}).isObject,u=((a=e("helpers/mixed"))&&a.__esModule&&a||{default:a}).isDefined,c={horizontal:"horizontal",vertical:"vertical"}},{"helpers/mixed":51,"helpers/object":53}],67:[function(e,t,o){"use strict";Object.defineProperties(o,{ColumnSorting:{get:function(){return M}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,h=((r=e("moment"))&&r.__esModule&&r||{default:r}).default,f=(i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i},p=f.addClass,g=f.hasClass,m=f.removeClass,w=(s=e("helpers/array"))&&s.__esModule&&s||{default:s},v=w.arrayMap,y=w.arrayReduce,b=((a=e("helpers/mixed"))&&a.__esModule&&a||{default:a}).isEmpty,C=((l=e("_base"))&&l.__esModule&&l||{default:l}).default,_=((u=e("plugins"))&&u.__esModule&&u||{default:u}).registerPlugin,R=((c=e("utils/sortingAlgorithms/mergeSort"))&&c.__esModule&&c||{default:c}).mergeSort;d.hooks.register("beforeColumnSort"),d.hooks.register("afterColumnSort");var M=function(e){$traceurRuntime.superConstructor(S).call(this,e),this.sortIndicators=[],this.lastSortedColumn=null,this.sortEmptyCells=!1},S=M;$traceurRuntime.createClass(M,{isEnabled:function(){return!!this.hot.getSettings().columnSorting},enablePlugin:function(){var e=this;if(!this.enabled){this.setPluginOptions();var t=this;this.hot.sortIndex=[],this.hot.sort=function(){var e=Array.prototype.slice.call(arguments);return t.sortByColumn.apply(t,e)},void 0===this.hot.getSettings().observeChanges&&this.enableObserveChangesPlugin(),this.addHook("afterTrimRow",function(t){return e.sort()}),this.addHook("afterUntrimRow",function(t){return e.sort()}),this.addHook("modifyRow",function(t){return e.translateRow(t)}),this.addHook("unmodifyRow",function(t){return e.untranslateRow(t)}),this.addHook("afterUpdateSettings",function(){return e.onAfterUpdateSettings()}),this.addHook("afterGetColHeader",function(t,o){return e.getColHeader(t,o)}),this.addHook("afterOnCellMouseDown",function(t,o){return e.onAfterOnCellMouseDown(t,o)}),this.addHook("afterCreateRow",function(){t.afterCreateRow.apply(t,arguments)}),this.addHook("afterRemoveRow",function(){t.afterRemoveRow.apply(t,arguments)}),this.addHook("afterInit",function(){return e.sortBySettings()}),this.addHook("afterLoadData",function(){e.hot.sortIndex=[],e.hot.view&&e.sortBySettings()}),this.hot.view&&this.sortBySettings(),$traceurRuntime.superGet(this,S.prototype,"enablePlugin").call(this)}},disablePlugin:function(){this.hot.sort=void 0,$traceurRuntime.superGet(this,S.prototype,"disablePlugin").call(this)},onAfterUpdateSettings:function(){this.sortBySettings()},sortBySettings:function(){var e,t,o=this.hot.getSettings().columnSorting,n=this.loadSortingState();void 0===n?(e=o.column,t=o.sortOrder):(e=n.sortColumn,t=n.sortOrder),"number"==typeof e&&(this.lastSortedColumn=e,this.sortByColumn(e,t))},setSortingColumn:function(e,t){if(void 0===e)return this.hot.sortColumn=void 0,void(this.hot.sortOrder=void 0);this.hot.sortColumn===e&&void 0===t?this.hot.sortOrder===!1?this.hot.sortOrder=void 0:this.hot.sortOrder=!this.hot.sortOrder:this.hot.sortOrder=void 0===t||t,this.hot.sortColumn=e},sortByColumn:function(e,t){if(this.setSortingColumn(e,t),void 0!==this.hot.sortColumn){d.hooks.run(this.hot,"beforeColumnSort",this.hot.sortColumn,this.hot.sortOrder)!==!1&&this.sort(),this.updateOrderClass(),this.updateSortIndicator(),d.hooks.run(this.hot,"afterColumnSort",this.hot.sortColumn,this.hot.sortOrder),this.hot.render(),this.saveSortingState()}},saveSortingState:function(){var e={};void 0!==this.hot.sortColumn&&(e.sortColumn=this.hot.sortColumn),void 0!==this.hot.sortOrder&&(e.sortOrder=this.hot.sortOrder),(e.hasOwnProperty("sortColumn")||e.hasOwnProperty("sortOrder"))&&d.hooks.run(this.hot,"persistentStateSave","columnSorting",e)},loadSortingState:function(){var e={};return d.hooks.run(this.hot,"persistentStateLoad","columnSorting",e),e.value},updateOrderClass:function(){var e;this.hot.sortOrder===!0?e="ascending":this.hot.sortOrder===!1&&(e="descending"),this.sortOrderClass=e},enableObserveChangesPlugin:function(){var e=this;this.hot._registerTimeout(setTimeout(function(){e.hot.updateSettings({observeChanges:!0})},0))},defaultSort:function(e,t){return function(o,n){return"string"==typeof o[1]&&(o[1]=o[1].toLowerCase()),"string"==typeof n[1]&&(n[1]=n[1].toLowerCase()),o[1]===n[1]?0:b(o[1])?b(n[1])?0:t.columnSorting.sortEmptyCells&&e?-1:1:b(n[1])?b(o[1])?0:t.columnSorting.sortEmptyCells&&e?1:-1:isNaN(o[1])&&!isNaN(n[1])?e?1:-1:!isNaN(o[1])&&isNaN(n[1])?e?-1:1:(isNaN(o[1])||isNaN(n[1])||(o[1]=parseFloat(o[1]),n[1]=parseFloat(n[1])),o[1]<n[1]?e?-1:1:o[1]>n[1]?e?1:-1:0)}},dateSort:function(e,t){return function(o,n){if(o[1]===n[1])return 0;if(b(o[1]))return b(n[1])?0:t.columnSorting.sortEmptyCells&&e?-1:1;if(b(n[1]))return b(o[1])?0:t.columnSorting.sortEmptyCells&&e?1:-1;var r=h(o[1],t.dateFormat),i=h(n[1],t.dateFormat);return r.isValid()?i.isValid()?i.isAfter(r)?e?-1:1:i.isBefore(r)?e?1:-1:0:-1:1}},numericSort:function(e,t){return function(o,n){var r=parseFloat(o[1]),i=parseFloat(n[1]);if(r===i||isNaN(r)&&isNaN(i))return 0;if(t.columnSorting.sortEmptyCells){if(b(o[1]))return e?-1:1;if(b(n[1]))return e?1:-1}return isNaN(r)?1:isNaN(i)?-1:r<i?e?-1:1:r>i?e?1:-1:0}},sort:function(){if(void 0===this.hot.sortOrder)return void(this.hot.sortIndex.length=0);var e,t,o=this.hot.getCellMeta(0,this.hot.sortColumn),n=this.hot.countEmptyRows();this.hot.sortingEnabled=!1,this.hot.sortIndex.length=0,void 0===o.columnSorting.sortEmptyCells&&(o.columnSorting={sortEmptyCells:this.sortEmptyCells}),t=this.hot.getSettings().maxRows===Number.POSITIVE_INFINITY?this.hot.countRows()-this.hot.getSettings().minSpareRows:this.hot.countRows()-n;for(var r=0,i=t;r<i;r++)this.hot.sortIndex.push([r,this.hot.getDataAtCell(r,this.hot.sortColumn)]);if(o.sortFunction)e=o.sortFunction;else switch(o.type){case"date":e=this.dateSort;break;case"numeric":e=this.numericSort;break;default:e=this.defaultSort}R(this.hot.sortIndex,e(this.hot.sortOrder,o));for(var s=this.hot.sortIndex.length;s<this.hot.countRows();s++)this.hot.sortIndex.push([s,this.hot.getDataAtCell(s,this.hot.sortColumn)]);this.hot.sortingEnabled=!0},updateSortIndicator:function(){if(void 0!==this.hot.sortOrder){var e=this.hot.getCellMeta(0,this.hot.sortColumn);this.sortIndicators[this.hot.sortColumn]=e.sortIndicator}},translateRow:function(e){return this.hot.sortingEnabled&&void 0!==this.hot.sortOrder&&this.hot.sortIndex&&this.hot.sortIndex.length&&this.hot.sortIndex[e]?this.hot.sortIndex[e][0]:e},untranslateRow:function(e){if(this.hot.sortingEnabled&&this.hot.sortIndex&&this.hot.sortIndex.length)for(var t=0;t<this.hot.sortIndex.length;t++)if(this.hot.sortIndex[t][0]==e)return t},getColHeader:function(e,t){if(e<0||!t.parentNode)return!1;var o=t.querySelector(".colHeader"),n=(t.getAttribute("colspan"),t.parentNode.parentNode.childNodes),r=Array.prototype.indexOf.call(n,t.parentNode);r-=n.length,o&&(this.hot.getSettings().columnSorting&&e>=0&&r===-1&&p(o,"columnSorting"),m(o,"descending"),m(o,"ascending"),this.sortIndicators[e]&&e===this.hot.sortColumn&&("ascending"===this.sortOrderClass?p(o,"ascending"):"descending"===this.sortOrderClass&&p(o,"descending")))},isSorted:function(){return void 0!==this.hot.sortColumn},afterCreateRow:function(e,t){if(this.isSorted()){for(var o=0;o<this.hot.sortIndex.length;o++)this.hot.sortIndex[o][0]>=e&&(this.hot.sortIndex[o][0]+=t);for(var o=0;o<t;o++)this.hot.sortIndex.splice(e+o,0,[e+o,this.hot.getSourceData()[e+o][this.hot.sortColumn+this.hot.colOffset()]]);this.saveSortingState()}},afterRemoveRow:function(e,t){function o(e){return y(n,function(t,o){return e>o&&t++,t},0)}if(this.isSorted()){var n=this.hot.sortIndex.splice(e,t);n=v(n,function(e){return e[0]}),this.hot.sortIndex=v(this.hot.sortIndex,function(e,t){var n=o(e[0]);return n&&(e[0]-=n),e}),this.saveSortingState()}},setPluginOptions:function(){var e=this.hot.getSettings().columnSorting;this.sortEmptyCells="object"==typeof e&&(e.sortEmptyCells||!1)},onAfterOnCellMouseDown:function(e,t){t.row>-1||g(e.realTarget,"columnSorting")&&(t.col!==this.lastSortedColumn&&(this.hot.sortOrder=!0),this.lastSortedColumn=t.col,this.sortByColumn(t.col))}},{},C),_("columnSorting",M)},{_base:62,browser:24,"helpers/array":43,"helpers/dom/element":47,"helpers/mixed":51,moment:"moment",plugins:61,"utils/sortingAlgorithms/mergeSort":132}],68:[function(e,t,o){"use strict";Object.defineProperties(o,{CommentEditor:{get:function(){return i}},__esModule:{value:!0}});var n,r=((n=e("helpers/dom/element"))&&n.__esModule&&n||{default:n}).addClass,i=function(){this.editor=this.createEditor(),this.editorStyle=this.editor.style,this.hidden=!0,this.hide()},s=i;$traceurRuntime.createClass(i,{setPosition:function(e,t){this.editorStyle.left=e+"px",this.editorStyle.top=t+"px"},setSize:function(e,t){if(e&&t){var o=this.getInputElement();o.style.width=e+"px",o.style.height=t+"px"}},resetSize:function(){var e=this.getInputElement();e.style.width="",e.style.height=""},setReadOnlyState:function(e){this.getInputElement().readOnly=e},show:function(){this.editorStyle.display="block",this.hidden=!1},hide:function(){this.editorStyle.display="none",this.hidden=!0},isVisible:function(){return"block"===this.editorStyle.display},setValue:function(){var e=void 0!==arguments[0]?arguments[0]:"";e=e||"",this.getInputElement().value=e},getValue:function(){return this.getInputElement().value},isFocused:function(){return document.activeElement===this.getInputElement()},focus:function(){this.getInputElement().focus()},createEditor:function(){var e,t,o=document.querySelector("."+s.CLASS_EDITOR_CONTAINER);return o||(o=document.createElement("div"),r(o,s.CLASS_EDITOR_CONTAINER),document.body.appendChild(o)),e=document.createElement("div"),r(e,s.CLASS_EDITOR),t=document.createElement("textarea"),r(t,s.CLASS_INPUT),e.appendChild(t),o.appendChild(e),e},getInputElement:function(){return this.editor.querySelector("."+s.CLASS_INPUT)},destroy:function(){this.editor.parentNode.removeChild(this.editor),this.editor=null,this.editorStyle=null}},{get CLASS_EDITOR_CONTAINER(){return"htCommentsContainer"},get CLASS_EDITOR(){return"htComments"},get CLASS_INPUT(){return"htCommentTextArea"},get CLASS_CELL(){return"htCommentCell"}})},{"helpers/dom/element":47}],69:[function(e,t,o){"use strict";var n;Object.defineProperties(o,{Comments:{get:function(){return I}},__esModule:{value:!0}});var r,i,s,a,l,u,c,d,h,f,p=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,g=(i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i},m=g.addClass,w=g.closest,v=g.isChildOf,y=g.hasClass,b=g.offset,C=g.outerWidth,_=g.outerHeight,R=g.getScrollableElement,M=(s=e("helpers/object"))&&s.__esModule&&s||{default:s},S=M.deepClone,E=M.deepExtend,O=((a=e("helpers/function"))&&a.__esModule&&a||{default:a}).debounce,T=((l=e("eventManager"))&&l.__esModule&&l||{default:l}).EventManager,k=((u=e("3rdparty/walkontable/src/cell/coords"))&&u.__esModule&&u||{default:u}).WalkontableCellCoords,x=((c=e("plugins"))&&c.__esModule&&c||{default:c}).registerPlugin,H=((d=e("_base"))&&d.__esModule&&d||{default:d}).default,D=((h=e("commentEditor"))&&h.__esModule&&h||{default:h}).CommentEditor,A=(f=e("contextMenu/utils"))&&f.__esModule&&f||{default:f},P=A.checkSelectionConsistency,L=A.markLabelAsSelected,N=new WeakMap,I=function(e){$traceurRuntime.superConstructor(W).call(this,e),this.editor=null,this.eventManager=null,this.range={},this.mouseDown=!1,this.contextMenuEvent=!1,this.timer=null,this.displayDelay=250,N.set(this,{tempEditorDimensions:{},cellBelowCursor:null})},W=I;$traceurRuntime.createClass(I,(n={},Object.defineProperty(n,"isEnabled",{value:function(){return!!this.hot.getSettings().comments},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"enablePlugin",{value:function(){var e=this;this.enabled||(this.editor||(this.editor=new D),this.eventManager||(this.eventManager=new T(this)),this.addHook("afterContextMenuDefaultOptions",function(t){return e.addToContextMenu(t)}),this.addHook("afterRenderer",function(t,o,n,r,i,s){return e.onAfterRenderer(t,s)}),this.addHook("afterScrollHorizontally",function(){return e.hide()}),this.addHook("afterScrollVertically",function(){return e.hide()}),this.addHook("afterBeginEditing",function(t){return e.onAfterBeginEditing(t)}),this.registerListeners(),$traceurRuntime.superGet(this,W.prototype,"enablePlugin").call(this))},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"disablePlugin",{value:function(){$traceurRuntime.superGet(this,W.prototype,"disablePlugin").call(this)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"registerListeners",{value:function(){var e=this;this.eventManager.addEventListener(document,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(document,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(document,"mouseup",function(t){return e.onMouseUp(t)}),this.eventManager.addEventListener(this.editor.getInputElement(),"blur",function(t){return e.onEditorBlur(t)}),this.eventManager.addEventListener(this.editor.getInputElement(),"mousedown",function(t){return e.onEditorMouseDown(t)}),this.eventManager.addEventListener(this.editor.getInputElement(),"mouseup",function(t){return e.onEditorMouseUp(t)})},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"setRange",{value:function(e){this.range=e},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"clearRange",{value:function(){this.range={}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"targetIsCellWithComment",{value:function(e){var t=w(e.target,"TD","TBODY");return!!(t&&y(t,"htCommentCell")&&w(t,[this.hot.rootElement]))},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"targetIsCommentTextArea",{value:function(e){return this.editor.getInputElement()===e.target},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"setComment",{value:function(e){var t;if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');var o=this.editor.getValue(),n="";null!=e?n=e:null!=o&&(n=o);var r=this.range.from.row,i=this.range.from.col;this.updateCommentMeta(r,i,(t={},Object.defineProperty(t,"value",{value:n,configurable:!0,enumerable:!0,writable:!0}),t)),this.hot.render()},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"setCommentAtCell",{value:function(e,t,o){this.setRange({from:new k(e,t)}),this.setComment(o)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"removeComment",{value:function(){var e=void 0===arguments[0]||arguments[0];if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');this.hot.setCellMeta(this.range.from.row,this.range.from.col,"comment",void 0),e&&this.hot.render(),this.hide()},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"removeCommentAtCell",{value:function(e,t){var o=void 0===arguments[2]||arguments[2];this.setRange({from:new k(e,t)}),this.removeComment(o)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"getComment",{value:function(){var e=this.range.from.row,t=this.range.from.col;return this.getCommentMeta(e,t,"value")},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"getCommentAtCell",{value:function(e,t){return this.getCommentMeta(e,t,"value")},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"show",{value:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');var e=this.hot.getCellMeta(this.range.from.row,this.range.from.col);return this.refreshEditor(!0),this.editor.setValue(e.comment?e.comment.value:""),this.editor.hidden&&this.editor.show(),!0},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"showAtCell",{value:function(e,t){return this.setRange({from:new k(e,t)}),this.show()},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"hide",{value:function(){this.editor.hidden||this.editor.hide()},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"refreshEditor",{value:function(){if(void 0!==arguments[0]&&arguments[0]||this.range.from&&this.editor.isVisible()){var e=R(this.hot.view.wt.wtTable.TABLE),t=this.hot.view.wt.wtTable.getCell(this.range.from),o=this.range.from.row,n=this.range.from.col,r=b(t),i=this.hot.view.wt.wtTable.getStretchedColumnWidth(n),s=r.top<0?0:r.top,a=r.left;this.hot.view.wt.wtViewport.hasVerticalScroll()&&e!==window&&(s-=this.hot.view.wt.wtOverlays.topOverlay.getScrollPosition()),this.hot.view.wt.wtViewport.hasHorizontalScroll()&&e!==window&&(a-=this.hot.view.wt.wtOverlays.leftOverlay.getScrollPosition());var l=a+i,u=s,c=this.getCommentMeta(o,n,"style"),d=this.getCommentMeta(o,n,"readOnly");c?this.editor.setSize(c.width,c.height):this.editor.resetSize(),this.editor.setReadOnlyState(d),this.editor.setPosition(l,u)}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"checkSelectionCommentsConsistency",{value:function(){var e=this.hot.getSelectedRange();if(!e)return!1;var t=!1,o=e.from;return this.getCommentMeta(o.row,o.col,"value")&&(t=!0),t},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"updateCommentMeta",{value:function(e,t,o){var n,r=this.hot.getCellMeta(e,t).comment;r?(n=S(r),E(n,o)):n=o,this.hot.setCellMeta(e,t,"comment",n)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"getCommentMeta",{value:function(e,t,o){var n=this.hot.getCellMeta(e,t);if(n.comment)return n.comment[o]},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onMouseDown",{value:function(e){if(this.mouseDown=!0,this.hot.view&&this.hot.view.wt){if(!this.contextMenuEvent&&!this.targetIsCommentTextArea(e)){var t=w(e.target,"TD","TBODY"),o=null;t&&(o=this.hot.view.wt.wtTable.getCoords(t)),(!t||this.range.from&&o&&(this.range.from.row!==o.row||this.range.from.col!==o.col))&&this.hide()}this.contextMenuEvent=!1}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onMouseOver",{value:function(e){var t=this;if(!this.mouseDown&&!this.editor.isFocused()){var o=N.get(this);o.cellBelowCursor=document.elementFromPoint(e.clientX,e.clientY),O(function(){if(!y(e.target,"wtBorder")&&o.cellBelowCursor===e.target&&t.editor)if(t.targetIsCellWithComment(e)){var n=t.hot.view.wt.wtTable.getCoords(e.target),r={from:new k(n.row,n.col)};t.setRange(r),t.show()}else!v(e.target,document)||t.targetIsCommentTextArea(e)||t.editor.isFocused()||t.hide()},this.displayDelay)()}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onMouseUp",{value:function(e){this.mouseDown=!1},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onAfterRenderer",{value:function(e,t){t.comment&&t.comment.value&&m(e,t.commentedCellClassName)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onEditorBlur",{value:function(e){this.setComment()},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onEditorMouseDown",{value:function(e){N.get(this).tempEditorDimensions={width:C(e.target),height:_(e.target)}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onEditorMouseUp",{value:function(e){var t,o=N.get(this),n=C(e.target),r=_(e.target);n===o.tempEditorDimensions.width+1&&r===o.tempEditorDimensions.height+2||this.updateCommentMeta(this.range.from.row,this.range.from.col,(t={},Object.defineProperty(t,"style",{value:{width:n,height:r},configurable:!0,enumerable:!0,writable:!0}),t))},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onContextMenuAddComment",{value:function(){var e=this,t=this.hot.getSelectedRange();this.contextMenuEvent=!0,this.setRange({from:t.from}),this.show(),
36
+ setTimeout(function(){e.hot&&(e.hot.deselectCell(),e.editor.focus())},10)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onContextMenuRemoveComment",{value:function(e){this.contextMenuEvent=!0;for(var t=e.start.row;t<=e.end.row;t++)for(var o=e.start.col;o<=e.end.col;o++)this.removeCommentAtCell(t,o,!1);this.hot.render()},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onContextMenuMakeReadOnly",{value:function(e){var t;this.contextMenuEvent=!0;for(var o=e.start.row;o<=e.end.row;o++)for(var n=e.start.col;n<=e.end.col;n++){var r=!!this.getCommentMeta(o,n,"readOnly");this.updateCommentMeta(o,n,(t={},Object.defineProperty(t,"readOnly",{value:!r,configurable:!0,enumerable:!0,writable:!0}),t))}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"addToContextMenu",{value:function(e){var t=this;e.items.push(p.plugins.ContextMenu.SEPARATOR,{key:"commentsAddEdit",name:function(){return t.checkSelectionCommentsConsistency()?"Edit comment":"Add comment"},callback:function(){return t.onContextMenuAddComment()},disabled:function(){return!(this.getSelected()&&!this.selection.selectedHeader.corner)}},{key:"commentsRemove",name:function(){return"Delete comment"},callback:function(e,o){return t.onContextMenuRemoveComment(o)},disabled:function(){return t.hot.selection.selectedHeader.corner}},{key:"commentsReadOnly",name:function(){var e=this,t="Read only comment";return P(this.getSelectedRange(),function(t,o){var n=e.getCellMeta(t,o).comment;if(n&&(n=n.readOnly),n)return!0})&&(t=L(t)),t},callback:function(e,o){return t.onContextMenuMakeReadOnly(o)},disabled:function(){return t.hot.selection.selectedHeader.corner||!t.checkSelectionCommentsConsistency()}})},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"onAfterBeginEditing",{value:function(e,t){this.hide()},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"destroy",{value:function(){this.editor&&this.editor.destroy(),$traceurRuntime.superGet(this,W.prototype,"destroy").call(this)},configurable:!0,enumerable:!0,writable:!0}),n),{},H),x("comments",I)},{"3rdparty/walkontable/src/cell/coords":6,_base:62,browser:24,commentEditor:68,"contextMenu/utils":88,eventManager:42,"helpers/dom/element":47,"helpers/function":50,"helpers/object":53,plugins:61}],70:[function(e,t,o){"use strict";function n(e,t){var o;return i(t,function(t){var n=t.key?t.key.split(":"):null;if(Array.isArray(n)&&n[1]===e)return o=t,!1}),o}Object.defineProperties(o,{CommandExecutor:{get:function(){return s}},__esModule:{value:!0}});var r,i=((r=e("helpers/array"))&&r.__esModule&&r||{default:r}).arrayEach,s=function(e){this.hot=e,this.commands={},this.commonCallback=null};$traceurRuntime.createClass(s,{registerCommand:function(e,t){this.commands[e]=t},setCommonCallback:function(e){this.commonCallback=e},execute:function(e){for(var t=[],o=1;o<arguments.length;o++)t[o-1]=arguments[o];var r=this,s=e.split(":");e=s[0];var a=2===s.length?s[1]:null,l=this.commands[e];if(!l)throw new Error("Menu command '"+e+"' not exists.");if(a&&l.submenu&&(l=n(a,l.submenu.items)),l.disabled!==!0&&("function"!=typeof l.disabled||l.disabled.call(this.hot)!==!0)&&!l.hasOwnProperty("submenu")){var u=[];"function"==typeof l.callback&&u.push(l.callback),"function"==typeof this.commonCallback&&u.push(this.commonCallback),t.unshift(s.join(":")),i(u,function(e){return e.apply(r.hot,t)})}}},{})},{"helpers/array":43}],71:[function(e,t,o){"use strict";Object.defineProperties(o,{ContextMenu:{get:function(){return F}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d,h,l,f,p=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,g=((r=e("_base"))&&r.__esModule&&r||{default:r}).default,m=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayEach,w=((s=e("commandExecutor"))&&s.__esModule&&s||{default:s}).CommandExecutor,v=((a=e("eventManager"))&&a.__esModule&&a||{default:a}).EventManager,y=((l=e("helpers/dom/element"))&&l.__esModule&&l||{default:l}).hasClass,b=((u=e("itemsFactory"))&&u.__esModule&&u||{default:u}).ItemsFactory,C=((c=e("menu"))&&c.__esModule&&c||{default:c}).Menu,_=((d=e("plugins"))&&d.__esModule&&d||{default:d}).registerPlugin,R=(h=e("helpers/dom/event"))&&h.__esModule&&h||{default:h},M=R.stopPropagation,S=R.pageX,E=R.pageY,O=(l=e("helpers/dom/element"))&&l.__esModule&&l||{default:l},T=O.getWindowScrollLeft,k=O.getWindowScrollTop,x=(f=e("predefinedItems"))&&f.__esModule&&f||{default:f},H=x.ROW_ABOVE,D=x.ROW_BELOW,A=x.COLUMN_LEFT,P=x.COLUMN_RIGHT,L=x.REMOVE_ROW,N=x.REMOVE_COLUMN,I=x.UNDO,W=x.REDO,j=x.READ_ONLY,V=x.ALIGNMENT,B=x.SEPARATOR,F=function(e){$traceurRuntime.superConstructor(z).call(this,e),this.eventManager=new v(this),this.commandExecutor=new w(this.hot),this.itemsFactory=null,this.menu=null},z=F;$traceurRuntime.createClass(F,{isEnabled:function(){return this.hot.getSettings().contextMenu},enablePlugin:function(){var e=this;if(!this.enabled){this.itemsFactory=new b(this.hot,z.DEFAULT_ITEMS);var t=this.hot.getSettings().contextMenu,o={items:this.itemsFactory.getItems(t)};this.registerEvents(),"function"==typeof t.callback&&this.commandExecutor.setCommonCallback(t.callback),$traceurRuntime.superGet(this,z.prototype,"enablePlugin").call(this),this.callOnPluginsReady(function(){e.hot.runHooks("afterContextMenuDefaultOptions",o),e.itemsFactory.setPredefinedItems(o.items);var n=e.itemsFactory.getItems(t);e.menu=new C(e.hot,{className:"htContextMenu",keepInViewport:!0}),e.hot.runHooks("beforeContextMenuSetItems",n),e.menu.setMenuItems(n),e.menu.addLocalHook("afterOpen",function(){return e.onMenuAfterOpen()}),e.menu.addLocalHook("afterClose",function(){return e.onMenuAfterClose()}),e.menu.addLocalHook("executeCommand",function(){for(var t=[],o=0;o<arguments.length;o++)t[o]=arguments[o];return e.executeCommand.apply(e,t)}),m(n,function(t){return e.commandExecutor.registerCommand(t.key,t)})})}},updatePlugin:function(){this.disablePlugin(),this.enablePlugin(),$traceurRuntime.superGet(this,z.prototype,"updatePlugin").call(this)},disablePlugin:function(){this.close(),this.menu&&(this.menu.destroy(),this.menu=null),$traceurRuntime.superGet(this,z.prototype,"disablePlugin").call(this)},registerEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"contextmenu",function(t){return e.onContextMenu(t)})},open:function(e){this.menu&&(this.menu.open(),this.menu.setPosition({top:parseInt(E(e),10)-k(),left:parseInt(S(e),10)-T()}),this.menu.hotMenu.isHotTableEnv=this.hot.isHotTableEnv,p.eventManager.isHotTableEnv=this.hot.isHotTableEnv)},close:function(){this.menu&&this.menu.close()},executeCommand:function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.commandExecutor.execute.apply(this.commandExecutor,e)},onContextMenu:function(e){var t=this.hot.getSettings(),o=t.rowHeaders,n=t.colHeaders,r=e.realTarget;this.close(),y(r,"handsontableInput")||(e.preventDefault(),M(e),(o||n||function(e){return"TD"===e.nodeName||"TD"===e.parentNode.nodeName}(r)||y(r,"current")&&y(r,"wtBorder"))&&this.open(e))},onMenuAfterOpen:function(){this.hot.runHooks("afterContextMenuShow",this)},onMenuAfterClose:function(){this.hot.listen(),this.hot.runHooks("afterContextMenuHide",this)},destroy:function(){this.close(),this.menu&&this.menu.destroy(),$traceurRuntime.superGet(this,z.prototype,"destroy").call(this)}},{get DEFAULT_ITEMS(){return[H,D,B,A,P,B,L,N,B,I,W,B,j,B,V]}},g),F.SEPARATOR={name:B},p.hooks.register("afterContextMenuDefaultOptions"),p.hooks.register("afterContextMenuShow"),p.hooks.register("afterContextMenuHide"),p.hooks.register("afterContextMenuExecute"),_("contextMenu",F)},{_base:62,browser:24,commandExecutor:70,eventManager:42,"helpers/array":43,"helpers/dom/element":47,"helpers/dom/event":48,itemsFactory:73,menu:74,plugins:61,predefinedItems:75}],72:[function(e,t,o){"use strict";Object.defineProperties(o,{Cursor:{get:function(){return f}},__esModule:{value:!0}});var n,r,i,s=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,a=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},l=a.getWindowScrollLeft,u=a.getWindowScrollTop,c=(i=e("helpers/dom/event"))&&i.__esModule&&i||{default:i},d=c.pageX,h=c.pageY,f=function(e){var t,o,n,r,i,s,a=u(),c=l();this.type=this.getSourceType(e),"literal"===this.type?(t=parseInt(e.top,10),n=parseInt(e.left,10),i=e.height||0,s=e.width||0,o=t,r=n,t+=a,n+=c):"event"===this.type&&(t=parseInt(h(e),10),n=parseInt(d(e),10),i=e.target.clientHeight,s=e.target.clientWidth,o=t-a,r=n-c),this.top=t,this.topRelative=o,this.left=n,this.leftRelative=r,this.scrollTop=a,this.scrollLeft=c,this.cellHeight=i,this.cellWidth=s};$traceurRuntime.createClass(f,{getSourceType:function(e){var t="literal";return e instanceof Event&&(t="event"),t},fitsAbove:function(e){return this.topRelative>=e.offsetHeight},fitsBelow:function(e){var t=void 0!==arguments[1]?arguments[1]:window.innerHeight;return this.topRelative+e.offsetHeight<=t},fitsOnRight:function(e){var t=void 0!==arguments[1]?arguments[1]:window.innerWidth;return this.leftRelative+this.cellWidth+e.offsetWidth<=t},fitsOnLeft:function(e){return this.leftRelative>=e.offsetWidth}},{}),s.plugins.utils=s.plugins.utils||{},s.plugins.utils.Cursor=f},{browser:24,"helpers/dom/element":47,"helpers/dom/event":48}],73:[function(e,t,o){"use strict";function n(){var e=void 0!==arguments[0]?arguments[0]:null,t=void 0!==arguments[1]?arguments[1]:[],o=void 0!==arguments[2]?arguments[2]:{},n=[];return e&&e.items?e=e.items:Array.isArray(e)||(e=t),u(e)?l(e,function(e,t){var r=o["string"==typeof e?e:t];r||(r=e),u(e)?c(r,e):"string"==typeof r&&(r={name:r}),void 0===r.key&&(r.key=t),n.push(r)}):d(e,function(e,t){var r=o[e];!r&&p.indexOf(e)>=0||(r||(r={name:e,key:t+""}),u(e)&&c(r,e),void 0===r.key&&(r.key=t),n.push(r))}),n}Object.defineProperties(o,{ItemsFactory:{get:function(){return m}},__esModule:{value:!0}});var r,i,s,a=(r=e("helpers/object"))&&r.__esModule&&r||{default:r},l=a.objectEach,u=a.isObject,c=a.extend,d=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayEach,h=(s=e("predefinedItems"))&&s.__esModule&&s||{default:s},f=h.SEPARATOR,p=h.ITEMS,g=h.predefinedItems,m=function(e){var t=void 0!==arguments[1]?arguments[1]:null;this.hot=e,this.predefinedItems=g(),this.defaultOrderPattern=t};$traceurRuntime.createClass(m,{setPredefinedItems:function(e){var t=this,o={};this.defaultOrderPattern.length=0,l(e,function(e,n){var r="";e.name===f?(o[f]=e,r=f):isNaN(parseInt(n,10))?(e.key=void 0===e.key?n:e.key,o[n]=e,r=e.key):(o[e.key]=e,r=e.key),t.defaultOrderPattern.push(r)}),this.predefinedItems=o},getItems:function(){return n(void 0!==arguments[0]?arguments[0]:null,this.defaultOrderPattern,this.predefinedItems)}},{})},{"helpers/array":43,"helpers/object":53,predefinedItems:75}],74:[function(e,t,o){"use strict";Object.defineProperties(o,{Menu:{get:function(){return z}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d,h,f,p,g=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,m=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},w=m.addClass,v=m.empty,y=m.fastInnerHTML,b=m.getScrollbarWidth,C=m.isChildOf,_=m.removeClass,R=(i=e("helpers/array"))&&i.__esModule&&i||{default:i},M=R.arrayEach,S=R.arrayFilter,E=R.arrayReduce,O=((s=e("cursor"))&&s.__esModule&&s||{default:s}).Cursor,T=((a=e("eventManager"))&&a.__esModule&&a||{default:a}).EventManager,k=((l=e("helpers/object"))&&l.__esModule&&l||{default:l}).mixin,x=((u=e("helpers/function"))&&u.__esModule&&u||{default:u}).debounce,H=(c=e("utils"))&&c.__esModule&&c||{default:c},D=H.filterSeparators,A=H.hasSubMenu,P=H.isDisabled,L=H.isItemHidden,N=H.isSeparator,I=H.isSelectionDisabled,W=H.normalizeSelection,j=((d=e("helpers/unicode"))&&d.__esModule&&d||{default:d}).KEY_CODES,V=((h=e("mixins/localHooks"))&&h.__esModule&&h||{default:h}).localHooks,B=((f=e("predefinedItems"))&&f.__esModule&&f||{default:f}).SEPARATOR,F=((p=e("helpers/dom/event"))&&p.__esModule&&p||{default:p}).stopImmediatePropagation,z=function(e,t){this.hot=e,this.options=t||{parent:null,name:null,className:"",keepInViewport:!0,standalone:!1},this.eventManager=new T(this),this.container=this.createContainer(this.options.name),this.hotMenu=null,this.hotSubMenus={},this.parentMenu=this.options.parent||null,this.menuItems=null,this.origOutsideClickDeselects=null,this.keyEvent=!1,this.offset={above:0,below:0,left:0,right:0},this._afterScrollCallback=null,this.registerEvents()},Y=z;$traceurRuntime.createClass(z,{registerEvents:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"mousedown",function(t){return e.onDocumentMouseDown(t)})},setMenuItems:function(e){this.menuItems=e},setOffset:function(e){var t=void 0!==arguments[1]?arguments[1]:0;this.offset[e]=t},isSubMenu:function(){return null!==this.parentMenu},open:function(){var e=this;this.container.removeAttribute("style"),this.container.style.display="block";var t=x(function(t){return e.openSubMenu(t)},300),o=S(this.menuItems,function(t){return L(t,e.hot)});o=D(o,B);var n={data:o,colHeaders:!1,colWidths:[200],autoRowSize:!1,readOnly:!0,copyPaste:!1,columns:[{data:"name",renderer:function(t,o,n,r,i,s){return e.menuItemRenderer(t,o,n,r,i,s)}}],renderAllRows:!0,fragmentSelection:"cell",disableVisualSelection:"area",beforeKeyDown:function(t){return e.onBeforeKeyDown(t)},afterOnCellMouseOver:function(o,n,r){e.isAllSubMenusClosed()?t(n.row):e.openSubMenu(n.row)},rowHeights:function(e){return o[e].name===B?1:23}};this.origOutsideClickDeselects=this.hot.getSettings().outsideClickDeselects,this.hot.getSettings().outsideClickDeselects=!1,this.hotMenu=new g.Core(this.container,n),this.hotMenu.addHook("afterInit",function(){return e.onAfterInit()}),this.hotMenu.addHook("afterSelection",function(t,o,n,r,i){return e.onAfterSelection(t,o,n,r,i)}),this.hotMenu.init(),this.hotMenu.listen(),this.blockMainTableCallbacks(),this.runLocalHooks("afterOpen")},close:function(){var e=void 0!==arguments[0]&&arguments[0];this.isOpened()&&(e&&this.parentMenu?this.parentMenu.close():(this.closeAllSubMenus(),this.container.style.display="none",this.releaseMainTableCallbacks(),this.hotMenu.destroy(),this.hotMenu=null,this.hot.getSettings().outsideClickDeselects=this.origOutsideClickDeselects,this.runLocalHooks("afterClose"),this.parentMenu&&this.parentMenu.hotMenu.listen()))},openSubMenu:function(e){if(!this.hotMenu)return!1;var t=this.hotMenu.getCell(e,0);if(this.closeAllSubMenus(),!t||!A(t))return!1;var o=this.hotMenu.getSourceDataAtRow(e),n=new Y(this.hot,{parent:this,name:o.name,className:this.options.className,keepInViewport:!0});return n.setMenuItems(o.submenu.items),n.open(),n.setPosition(t.getBoundingClientRect()),this.hotSubMenus[o.key]=n,n},closeSubMenu:function(e){var t=this.hotMenu.getSourceDataAtRow(e),o=this.hotSubMenus[t.key];o&&(o.destroy(),delete this.hotSubMenus[t.key])},closeAllSubMenus:function(){var e=this;M(this.hotMenu.getData(),function(t,o){return e.closeSubMenu(o)})},isAllSubMenusClosed:function(){return 0===Object.keys(this.hotSubMenus).length},destroy:function(){this.clearLocalHooks(),this.close(),this.parentMenu=null,this.eventManager.destroy()},isOpened:function(){return null!==this.hotMenu},executeCommand:function(e){if(this.isOpened()&&this.hotMenu.getSelected()){var t=this.hotMenu.getSourceDataAtRow(this.hotMenu.getSelected()[0]);if(this.runLocalHooks("select",t,e),t.isCommand!==!1&&t.name!==B){var o=this.hot.getSelectedRange(),n=o?W(o):{},r=!0;(t.disabled===!0||"function"==typeof t.disabled&&t.disabled.call(this.hot)===!0||t.submenu)&&(r=!1),this.runLocalHooks("executeCommand",t.key,n,e),this.isSubMenu()&&this.parentMenu.runLocalHooks("executeCommand",t.key,n,e),r&&this.close(!0)}}},setPosition:function(e){var t=new O(e);this.options.keepInViewport?(t.fitsBelow(this.container)?this.setPositionBelowCursor(t):t.fitsAbove(this.container)?this.setPositionAboveCursor(t):this.setPositionBelowCursor(t),t.fitsOnRight(this.container)?this.setPositionOnRightOfCursor(t):this.setPositionOnLeftOfCursor(t)):(this.setPositionBelowCursor(t),this.setPositionOnRightOfCursor(t))},setPositionAboveCursor:function(e){var t=this.offset.above+e.top-this.container.offsetHeight;this.isSubMenu()&&(t=e.top+e.cellHeight-this.container.offsetHeight+3),this.container.style.top=t+"px"},setPositionBelowCursor:function(e){var t=this.offset.below+e.top;this.isSubMenu()&&(t=e.top-1),this.container.style.top=t+"px"},setPositionOnRightOfCursor:function(e){var t;t=this.isSubMenu()?1+e.left+e.cellWidth:this.offset.right+1+e.left,this.container.style.left=t+"px"},setPositionOnLeftOfCursor:function(e){var t=this.offset.left+e.left-this.container.offsetWidth+b()+4;this.container.style.left=t+"px"},selectFirstCell:function(){var e=this.hotMenu.getCell(0,0);N(e)||P(e)||I(e)?this.selectNextCell(0,0):this.hotMenu.selectCell(0,0)},selectLastCell:function(){var e=this.hotMenu.countRows()-1,t=this.hotMenu.getCell(e,0);N(t)||P(t)||I(t)?this.selectPrevCell(e,0):this.hotMenu.selectCell(e,0)},selectNextCell:function(e,t){var o=e+1,n=o<this.hotMenu.countRows()?this.hotMenu.getCell(o,t):null;n&&(N(n)||P(n)||I(n)?this.selectNextCell(o,t):this.hotMenu.selectCell(o,t))},selectPrevCell:function(e,t){var o=e-1,n=o>=0?this.hotMenu.getCell(o,t):null;n&&(N(n)||P(n)||I(n)?this.selectPrevCell(o,t):this.hotMenu.selectCell(o,t))},menuItemRenderer:function(e,t,o,n,r,i){var s=this,a=e.getSourceDataAtRow(o),l=document.createElement("div"),u=function(e){return e.disableSelection};"function"==typeof i&&(i=i.call(this.hot)),v(t),w(l,"htItemWrapper"),t.appendChild(l),!function(e){return new RegExp(B,"i").test(e.name)}(a)?"function"==typeof a.renderer?(w(t,"htCustomMenuRenderer"),t.appendChild(a.renderer(e,l,o,n,r,i))):y(l,i):w(t,"htSeparator"),!function(e){return e.disabled===!0||"function"==typeof e.disabled&&e.disabled.call(s.hot)===!0}(a)?u(a)?(w(t,"htSelectionDisabled"),this.eventManager.addEventListener(t,"mouseenter",function(){return e.deselectCell()})):!function(e){return e.hasOwnProperty("submenu")}(a)?(_(t,"htSubmenu"),_(t,"htDisabled"),u(a)?this.eventManager.addEventListener(t,"mouseenter",function(){return e.deselectCell()}):this.eventManager.addEventListener(t,"mouseenter",function(){return e.selectCell(o,n,void 0,void 0,!1,!1)})):(w(t,"htSubmenu"),u(a)?this.eventManager.addEventListener(t,"mouseenter",function(){return e.deselectCell()}):this.eventManager.addEventListener(t,"mouseenter",function(){return e.selectCell(o,n,void 0,void 0,!1,!1)})):(w(t,"htDisabled"),this.eventManager.addEventListener(t,"mouseenter",function(){return e.deselectCell()}))},createContainer:function(){var e=void 0!==arguments[0]?arguments[0]:null;e&&(e=e.replace(/ /g,"_"),e=this.options.className+"Sub_"+e);var t;return t=e?document.querySelector("."+this.options.className+"."+e):document.querySelector("."+this.options.className),t||(t=document.createElement("div"),w(t,"htMenu "+this.options.className),e&&w(t,e),document.getElementsByTagName("body")[0].appendChild(t)),t},blockMainTableCallbacks:function(){this._afterScrollCallback=function(){},this.hot.addHook("afterScrollVertically",this._afterScrollCallback),this.hot.addHook("afterScrollHorizontally",this._afterScrollCallback)},releaseMainTableCallbacks:function(){this._afterScrollCallback&&(this.hot.removeHook("afterScrollVertically",this._afterScrollCallback),this.hot.removeHook("afterScrollHorizontally",this._afterScrollCallback),this._afterScrollCallback=null)},onBeforeKeyDown:function(e){var t=this.hotMenu.getSelected(),o=!1;switch(this.keyEvent=!0,e.keyCode){case j.ESCAPE:this.close(),o=!0;break;case j.ENTER:t&&(this.hotMenu.getSourceDataAtRow(t[0]).submenu?o=!0:(this.executeCommand(e),this.close(!0)));break;case j.ARROW_DOWN:t?this.selectNextCell(t[0],t[1]):this.selectFirstCell(),o=!0;break;case j.ARROW_UP:t?this.selectPrevCell(t[0],t[1]):this.selectLastCell(),o=!0;break;case j.ARROW_RIGHT:if(t){var n=this.openSubMenu(t[0]);n&&n.selectFirstCell()}o=!0;break;case j.ARROW_LEFT:t&&this.isSubMenu()&&(this.close(),this.parentMenu&&this.parentMenu.hotMenu.listen(),o=!0)}o&&(e.preventDefault(),F(e)),this.keyEvent=!1},onAfterInit:function(){var e=this.hotMenu.getSettings().data,t=this.hotMenu.view.wt.wtTable.hider.style,o=this.hotMenu.view.wt.wtTable.holder.style,n=parseInt(t.width,10),r=E(e,function(e,t){return e+(t.name===B?1:26)},0);o.width=n+22+"px",o.height=r+4+"px",t.height=o.height},onAfterSelection:function(e,t,o,n,r){this.keyEvent===!1&&(r.value=!0)},onDocumentMouseDown:function(e){this.isOpened()&&(this.container&&C(e.target,this.container)&&this.executeCommand(e),this.options.standalone&&this.hotMenu&&!C(e.target,this.hotMenu.rootElement)?this.close(!0):(this.isAllSubMenusClosed()||this.isSubMenu())&&!C(e.target,".htMenu")&&C(e.target,document)&&this.close(!0))}},{}),k(z,V)},{browser:24,cursor:72,eventManager:42,"helpers/array":43,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/function":50,"helpers/object":53,"helpers/unicode":56,"mixins/localHooks":58,predefinedItems:75,utils:88}],75:[function(e,t,o){"use strict";function n(){var e={};return y(ne,function(t,o){return e[o]=t()}),e}function r(e,t){oe.indexOf(e)===-1&&(ne[e]=t)}var i;Object.defineProperties(o,{ALIGNMENT:{get:function(){return a.KEY}},CLEAR_COLUMN:{get:function(){return l.KEY}},COLUMN_LEFT:{get:function(){return u.KEY}},COLUMN_RIGHT:{get:function(){return c.KEY}},READ_ONLY:{get:function(){return d.KEY}},REDO:{get:function(){return h.KEY}},REMOVE_COLUMN:{get:function(){return f.KEY}},REMOVE_ROW:{get:function(){return p.KEY}},ROW_ABOVE:{get:function(){return g.KEY}},ROW_BELOW:{get:function(){return m.KEY}},SEPARATOR:{get:function(){return w.KEY}},UNDO:{get:function(){return v.KEY}},ITEMS:{get:function(){return oe}},predefinedItems:{get:function(){return n}},addItem:{get:function(){return r}},__esModule:{value:!0}});var s,a,l,u,c,d,h,f,p,g,m,w,v,a,l,u,c,d,h,f,p,g,m,w,v,y=((s=e("helpers/object"))&&s.__esModule&&s||{default:s}).objectEach,b=(a=e("predefinedItems/alignment"))&&a.__esModule&&a||{default:a},C=b.alignmentItem,_=b.KEY,R=(l=e("predefinedItems/clearColumn"))&&l.__esModule&&l||{default:l},M=R.clearColumnItem,S=R.KEY,E=(u=e("predefinedItems/columnLeft"))&&u.__esModule&&u||{default:u},O=E.columnLeftItem,T=E.KEY,k=(c=e("predefinedItems/columnRight"))&&c.__esModule&&c||{default:c},x=k.columnRightItem,H=k.KEY,D=(d=e("predefinedItems/readOnly"))&&d.__esModule&&d||{default:d},A=D.readOnlyItem,P=D.KEY,L=(h=e("predefinedItems/redo"))&&h.__esModule&&h||{default:h},N=L.redoItem,I=L.KEY,W=(f=e("predefinedItems/removeColumn"))&&f.__esModule&&f||{default:f},j=W.removeColumnItem,V=W.KEY,B=(p=e("predefinedItems/removeRow"))&&p.__esModule&&p||{default:p},F=B.removeRowItem,z=B.KEY,Y=(g=e("predefinedItems/rowAbove"))&&g.__esModule&&g||{default:g},U=Y.rowAboveItem,G=Y.KEY,$=(m=e("predefinedItems/rowBelow"))&&m.__esModule&&m||{default:m},K=$.rowBelowItem,X=$.KEY,q=(w=e("predefinedItems/separator"))&&w.__esModule&&w||{default:w},Z=q.separatorItem,J=q.KEY,Q=(v=e("predefinedItems/undo"))&&v.__esModule&&v||{default:v},ee=Q.undoItem,te=Q.KEY,a=(a=e("predefinedItems/alignment"))&&a.__esModule&&a||{default:a},l=(l=e("predefinedItems/clearColumn"))&&l.__esModule&&l||{default:l},u=(u=e("predefinedItems/columnLeft"))&&u.__esModule&&u||{default:u},c=(c=e("predefinedItems/columnRight"))&&c.__esModule&&c||{default:c},d=(d=e("predefinedItems/readOnly"))&&d.__esModule&&d||{default:d},h=(h=e("predefinedItems/redo"))&&h.__esModule&&h||{default:h},f=(f=e("predefinedItems/removeColumn"))&&f.__esModule&&f||{default:f},p=(p=e("predefinedItems/removeRow"))&&p.__esModule&&p||{default:p},g=(g=e("predefinedItems/rowAbove"))&&g.__esModule&&g||{default:g},m=(m=e("predefinedItems/rowBelow"))&&m.__esModule&&m||{default:m},w=(w=e("predefinedItems/separator"))&&w.__esModule&&w||{default:w},v=(v=e("predefinedItems/undo"))&&v.__esModule&&v||{default:v},oe=[G,X,T,H,S,z,V,te,I,P,_,J],ne=(i={},Object.defineProperty(i,J,{value:Z,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,G,{value:U,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,X,{value:K,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,T,{value:O,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,H,{value:x,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,S,{value:M,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,z,{value:F,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,V,{value:j,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,te,{value:ee,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,I,{value:N,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,P,{value:A,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,_,{value:C,configurable:!0,enumerable:!0,writable:!0}),i)},{"helpers/object":53,"predefinedItems/alignment":76,"predefinedItems/clearColumn":77,"predefinedItems/columnLeft":78,"predefinedItems/columnRight":79,"predefinedItems/readOnly":80,"predefinedItems/redo":81,"predefinedItems/removeColumn":82,"predefinedItems/removeRow":83,"predefinedItems/rowAbove":84,"predefinedItems/rowBelow":85,"predefinedItems/separator":86,"predefinedItems/undo":87}],76:[function(e,t,o){"use strict";function n(){return{key:h,name:"Alignment",disabled:function(){return!(this.getSelectedRange()&&!this.selection.selectedHeader.corner)},submenu:{items:[{key:h+":left",name:function(){var e=this,t="Left";return u(this.getSelectedRange(),function(t,o){var n=e.getCellMeta(t,o).className;if(n&&n.indexOf("htLeft")!==-1)return!0})&&(t=c(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),o=l(t,function(t,o){return e.getCellMeta(t,o).className});this.runHooks("beforeCellAlignment",o,t,"horizontal","htLeft"),a(t,"horizontal","htLeft",function(t,o){return e.getCellMeta(t,o)},function(t,o,n,r){return e.setCellMeta(t,o,n,r)}),this.render()},disabled:!1},{key:h+":center",name:function(){var e=this,t="Center";return u(this.getSelectedRange(),function(t,o){var n=e.getCellMeta(t,o).className;if(n&&n.indexOf("htCenter")!==-1)return!0})&&(t=c(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),o=l(t,function(t,o){return e.getCellMeta(t,o).className});this.runHooks("beforeCellAlignment",o,t,"horizontal","htCenter"),a(t,"horizontal","htCenter",function(t,o){return e.getCellMeta(t,o)},function(t,o,n,r){return e.setCellMeta(t,o,n,r)}),this.render()},disabled:!1},{key:h+":right",name:function(){var e=this,t="Right";return u(this.getSelectedRange(),function(t,o){var n=e.getCellMeta(t,o).className;if(n&&n.indexOf("htRight")!==-1)return!0})&&(t=c(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),o=l(t,function(t,o){return e.getCellMeta(t,o).className});this.runHooks("beforeCellAlignment",o,t,"horizontal","htRight"),a(t,"horizontal","htRight",function(t,o){return e.getCellMeta(t,o)},function(t,o,n,r){return e.setCellMeta(t,o,n,r)}),this.render()},disabled:!1},{key:h+":justify",name:function(){var e=this,t="Justify";return u(this.getSelectedRange(),function(t,o){var n=e.getCellMeta(t,o).className;if(n&&n.indexOf("htJustify")!==-1)return!0})&&(t=c(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),o=l(t,function(t,o){return e.getCellMeta(t,o).className});this.runHooks("beforeCellAlignment",o,t,"horizontal","htJustify"),a(t,"horizontal","htJustify",function(t,o){return e.getCellMeta(t,o)},function(t,o,n,r){return e.setCellMeta(t,o,n,r)}),this.render()},disabled:!1},{name:d},{key:h+":top",name:function(){var e=this,t="Top";return u(this.getSelectedRange(),function(t,o){var n=e.getCellMeta(t,o).className;if(n&&n.indexOf("htTop")!==-1)return!0})&&(t=c(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),o=l(t,function(t,o){return e.getCellMeta(t,o).className});this.runHooks("beforeCellAlignment",o,t,"vertical","htTop"),a(t,"vertical","htTop",function(t,o){return e.getCellMeta(t,o)},function(t,o,n,r){return e.setCellMeta(t,o,n,r)}),this.render()},disabled:!1},{key:h+":middle",name:function(){var e=this,t="Middle";return u(this.getSelectedRange(),function(t,o){var n=e.getCellMeta(t,o).className;if(n&&n.indexOf("htMiddle")!==-1)return!0})&&(t=c(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),o=l(t,function(t,o){return e.getCellMeta(t,o).className});this.runHooks("beforeCellAlignment",o,t,"vertical","htMiddle"),a(t,"vertical","htMiddle",function(t,o){return e.getCellMeta(t,o)},function(t,o,n,r){return e.setCellMeta(t,o,n,r)}),this.render()},disabled:!1},{key:h+":bottom",name:function(){var e=this,t="Bottom";return u(this.getSelectedRange(),function(t,o){var n=e.getCellMeta(t,o).className;if(n&&n.indexOf("htBottom")!==-1)return!0})&&(t=c(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),o=l(t,function(t,o){return e.getCellMeta(t,o).className});this.runHooks("beforeCellAlignment",o,t,"vertical","htBottom"),a(t,"vertical","htBottom",function(t,o){return e.getCellMeta(t,o)},function(t,o,n,r){return e.setCellMeta(t,o,n,r)}),this.render()},disabled:!1}]}}}Object.defineProperties(o,{KEY:{get:function(){return h}},alignmentItem:{get:function(){return n}},__esModule:{value:!0}});var r,i,s=(r=e("utils"))&&r.__esModule&&r||{default:r},a=s.align,l=s.getAlignmentClasses,u=s.checkSelectionConsistency,c=s.markLabelAsSelected,d=((i=e("separator"))&&i.__esModule&&i||{default:i}).KEY,h="alignment"},{separator:86,utils:88}],77:[function(e,t,o){"use strict";function n(){return{key:s,name:"Clear column",callback:function(e,t){var o=t.start.col;this.countRows()&&this.populateFromArray(0,o,[[null]],Math.max(t.start.row,t.end.row),o,"ContextMenu.clearColumn")},disabled:function(){var e=i(this);if(!e)return!0;var t=[e[0],0,e[0],this.countCols()-1],o=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||o}}}Object.defineProperties(o,{KEY:{get:function(){return s}},clearColumnItem:{get:function(){return n}},__esModule:{value:!0}});var r,i=((r=e("utils"))&&r.__esModule&&r||{default:r}).getValidSelection,s="clear_column"},{utils:88}],78:[function(e,t,o){"use strict";function n(){return{key:s,name:"Insert column on the left",callback:function(e,t){this.alter("insert_col",t.start.col,1,"ContextMenu.columnLeft")},disabled:function(){var e=i(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],o=t.join(",")==e.join(","),n=1===this.countCols();return e[1]<0||this.countCols()>=this.getSettings().maxCols||!n&&o},hidden:function(){return!this.getSettings().allowInsertColumn}}}Object.defineProperties(o,{KEY:{get:function(){return s}},columnLeftItem:{get:function(){return n}},__esModule:{value:!0}});var r,i=((r=e("utils"))&&r.__esModule&&r||{default:r}).getValidSelection,s="col_left"},{utils:88}],79:[function(e,t,o){"use strict";function n(){return{key:s,name:"Insert column on the right",callback:function(e,t){this.alter("insert_col",t.end.col+1,1,"ContextMenu.columnRight")},disabled:function(){var e=i(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],o=t.join(",")==e.join(","),n=1===this.countCols();return e[1]<0||this.countCols()>=this.getSettings().maxCols||!n&&o},hidden:function(){return!this.getSettings().allowInsertColumn}}}Object.defineProperties(o,{KEY:{get:function(){return s}},columnRightItem:{get:function(){return n}},__esModule:{value:!0}});var r,i=((r=e("utils"))&&r.__esModule&&r||{default:r}).getValidSelection,s="col_right"},{utils:88}],80:[function(e,t,o){"use strict";function n(){return{key:l,name:function(){var e=this,t="Read only";return s(this.getSelectedRange(),function(t,o){return e.getCellMeta(t,o).readOnly})&&(t=a(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),o=s(t,function(t,o){return e.getCellMeta(t,o).readOnly});t.forAll(function(t,n){e.setCellMeta(t,n,"readOnly",!o)}),this.render()},disabled:function(){return!(this.getSelectedRange()&&!this.selection.selectedHeader.corner)}}}Object.defineProperties(o,{KEY:{get:function(){return l}},readOnlyItem:{get:function(){return n}},__esModule:{value:!0}})
37
+ ;var r,i=(r=e("utils"))&&r.__esModule&&r||{default:r},s=i.checkSelectionConsistency,a=i.markLabelAsSelected,l="make_read_only"},{utils:88}],81:[function(e,t,o){"use strict";function n(){return{key:r,name:"Redo",callback:function(){this.redo()},disabled:function(){return this.undoRedo&&!this.undoRedo.isRedoAvailable()}}}Object.defineProperties(o,{KEY:{get:function(){return r}},redoItem:{get:function(){return n}},__esModule:{value:!0}});var r="redo"},{}],82:[function(e,t,o){"use strict";function n(){return{key:s,name:"Remove column",callback:function(e,t){var o=t.end.col-t.start.col+1;this.alter("remove_col",t.start.col,o,"ContextMenu.removeColumn")},disabled:function(){var e=i(this),t=this.countCols();return!e||this.selection.selectedHeader.rows||this.selection.selectedHeader.corner||!this.isColumnModificationAllowed()||!t},hidden:function(){return!this.getSettings().allowRemoveColumn}}}Object.defineProperties(o,{KEY:{get:function(){return s}},removeColumnItem:{get:function(){return n}},__esModule:{value:!0}});var r,i=((r=e("utils"))&&r.__esModule&&r||{default:r}).getValidSelection,s="remove_col"},{utils:88}],83:[function(e,t,o){"use strict";function n(){return{key:s,name:"Remove row",callback:function(e,t){var o=t.end.row-t.start.row+1;this.alter("remove_row",t.start.row,o,"ContextMenu.removeRow")},disabled:function(){var e=i(this),t=this.countRows();return!e||this.selection.selectedHeader.cols||this.selection.selectedHeader.corner||!t},hidden:function(){return!this.getSettings().allowRemoveRow}}}Object.defineProperties(o,{KEY:{get:function(){return s}},removeRowItem:{get:function(){return n}},__esModule:{value:!0}});var r,i=((r=e("utils"))&&r.__esModule&&r||{default:r}).getValidSelection,s="remove_row"},{utils:88}],84:[function(e,t,o){"use strict";function n(){return{key:s,name:"Insert row above",callback:function(e,t){this.alter("insert_row",t.start.row,1,"ContextMenu.rowAbove")},disabled:function(){return!i(this)||this.selection.selectedHeader.cols||this.countRows()>=this.getSettings().maxRows},hidden:function(){return!this.getSettings().allowInsertRow}}}Object.defineProperties(o,{KEY:{get:function(){return s}},rowAboveItem:{get:function(){return n}},__esModule:{value:!0}});var r,i=((r=e("utils"))&&r.__esModule&&r||{default:r}).getValidSelection,s="row_above"},{utils:88}],85:[function(e,t,o){"use strict";function n(){return{key:s,name:"Insert row below",callback:function(e,t){this.alter("insert_row",t.end.row+1,1,"ContextMenu.rowBelow")},disabled:function(){return!i(this)||this.selection.selectedHeader.cols||this.countRows()>=this.getSettings().maxRows},hidden:function(){return!this.getSettings().allowInsertRow}}}Object.defineProperties(o,{KEY:{get:function(){return s}},rowBelowItem:{get:function(){return n}},__esModule:{value:!0}});var r,i=((r=e("utils"))&&r.__esModule&&r||{default:r}).getValidSelection,s="row_below"},{utils:88}],86:[function(e,t,o){"use strict";function n(){return{name:r}}Object.defineProperties(o,{KEY:{get:function(){return r}},separatorItem:{get:function(){return n}},__esModule:{value:!0}});var r="---------"},{}],87:[function(e,t,o){"use strict";function n(){return{key:r,name:"Undo",callback:function(){this.undo()},disabled:function(){return this.undoRedo&&!this.undoRedo.isUndoAvailable()}}}Object.defineProperties(o,{KEY:{get:function(){return r}},undoItem:{get:function(){return n}},__esModule:{value:!0}});var r="undo"},{}],88:[function(e,t,o){"use strict";function n(e){return{start:e.getTopLeftCorner(),end:e.getBottomRightCorner()}}function r(e){return S(e,"htSeparator")}function i(e){return S(e,"htSubmenu")}function s(e){return S(e,"htDisabled")}function a(e){return S(e,"htSelectionDisabled")}function l(e){var t=e.getSelected();return t?t[0]<0?null:t:null}function u(e,t){return e.indexOf(t)!=-1?e:(e=e.replace("htTop","").replace("htMiddle","").replace("htBottom","").replace(" ",""),e+=" "+t)}function c(e,t){return e.indexOf(t)!=-1?e:(e=e.replace("htLeft","").replace("htCenter","").replace("htRight","").replace("htJustify","").replace(" ",""),e+=" "+t)}function d(e,t){for(var o={},n=e.from.row;n<=e.to.row;n++)for(var r=e.from.col;r<=e.to.col;r++)o[n]||(o[n]=[]),o[n][r]=t(n,r);return o}function h(e,t,o,n,r){if(e.from.row==e.to.row&&e.from.col==e.to.col)f(e.from.row,e.from.col,t,o,n,r);else for(var i=e.from.row;i<=e.to.row;i++)for(var s=e.from.col;s<=e.to.col;s++)f(i,s,t,o,n,r)}function f(e,t,o,n,r,i){var s=r(e,t),a=n;s.className&&(a="vertical"===o?u(s.className,n):c(s.className,n)),i(e,t,"className",a)}function p(e,t){var o=!1;return e&&e.forAll(function(e,n){if(t(e,n))return o=!0,!1}),o}function g(e){return'<span class="selected">'+String.fromCharCode(10003)+"</span>"+e}function m(e,t){return!e.hidden||!("function"==typeof e.hidden&&e.hidden.call(t))}function w(e,t){for(var o=e.slice(0);0<o.length&&o[0].name===t;)o.shift();return o}function v(e,t){var o=e.slice(0);return o.reverse(),o=w(o,t),o.reverse(),o}function y(e){var t=[];return M(e,function(e,o){o>0?t[t.length-1].name!==e.name&&t.push(e):t.push(e)}),t}function b(e){var t=void 0!==arguments[1]?arguments[1]:E,o=e.slice(0);return o=w(o,t),o=v(o,t),o=y(o)}Object.defineProperties(o,{normalizeSelection:{get:function(){return n}},isSeparator:{get:function(){return r}},hasSubMenu:{get:function(){return i}},isDisabled:{get:function(){return s}},isSelectionDisabled:{get:function(){return a}},getValidSelection:{get:function(){return l}},prepareVerticalAlignClass:{get:function(){return u}},prepareHorizontalAlignClass:{get:function(){return c}},getAlignmentClasses:{get:function(){return d}},align:{get:function(){return h}},checkSelectionConsistency:{get:function(){return p}},markLabelAsSelected:{get:function(){return g}},isItemHidden:{get:function(){return m}},filterSeparators:{get:function(){return b}},__esModule:{value:!0}});var C,_,R,M=((C=e("helpers/array"))&&C.__esModule&&C||{default:C}).arrayEach,S=((_=e("helpers/dom/element"))&&_.__esModule&&_||{default:_}).hasClass,E=((R=e("predefinedItems/separator"))&&R.__esModule&&R||{default:R}).KEY},{"helpers/array":43,"helpers/dom/element":47,"predefinedItems/separator":86}],89:[function(e,t,o){"use strict";Object.defineProperties(o,{ContextMenuCopyPaste:{get:function(){return w}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c=((n=e("_base"))&&n.__esModule&&n||{default:n}).default,d=((r=e("zeroclipboard"))&&r.__esModule&&r||{default:r}).default,h=((i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i}).removeClass,f=((s=e("helpers/array"))&&s.__esModule&&s||{default:s}).arrayEach,p=((a=e("eventManager"))&&a.__esModule&&a||{default:a}).EventManager,g=((l=e("plugins"))&&l.__esModule&&l||{default:l}).registerPlugin,m=((u=e("contextMenu/predefinedItems"))&&u.__esModule&&u||{default:u}).SEPARATOR,w=function(e){$traceurRuntime.superConstructor(v).call(this,e),this.eventManager=new p(this),this.swfPath=null,this.outsideClickDeselectsCache=null},v=w;$traceurRuntime.createClass(w,{isEnabled:function(){return this.hot.getSettings().contextMenuCopyPaste},enablePlugin:function(){var e=this;if(!this.enabled){"object"==typeof this.hot.getSettings().contextMenuCopyPaste&&(this.swfPath=this.hot.getSettings().contextMenuCopyPaste.swfPath),void 0===d&&console.error("To be able to use the Copy/Paste feature from the context menu, you need to manually include ZeroClipboard.js file to your website.");try{new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(e){void 0===navigator.mimeTypes["application/x-shockwave-flash"]&&console.error("To be able to use the Copy/Paste feature from the context menu, your browser needs to have Flash Plugin installed.")}this.swfPath&&d.config({swfPath:this.swfPath}),this.hot.addHook("afterContextMenuShow",function(){return e.onAfterContextMenuShow()}),this.hot.addHook("afterContextMenuDefaultOptions",function(t){return e.onAfterContextMenuDefaultOptions(t)}),this.registerEvents(),$traceurRuntime.superGet(this,v.prototype,"enablePlugin").call(this)}},disablePlugin:function(){$traceurRuntime.superGet(this,v.prototype,"disablePlugin").call(this)},registerEvents:function(){var e=this;this.eventManager.addEventListener(document,"mouseenter",function(){return e.removeCurrentClass()}),this.eventManager.addEventListener(document,"mouseleave",function(){return e.removeZeroClipboardClass()})},getCopyValue:function(){return this.hot.copyPaste.setCopyableText(),this.hot.copyPaste.copyPasteInstance.triggerCopy(),this.hot.copyPaste.copyPasteInstance.elTextarea.value},onAfterContextMenuDefaultOptions:function(e){e.items.unshift({key:"copy",name:"Copy",disabled:function(){return this.selection.selectedHeader.corner}},{key:"paste",name:"Paste",callback:function(){this.copyPaste.triggerPaste()},disabled:function(){return this.selection.selectedHeader.corner}},{name:m})},onAfterContextMenuShow:function(){var e=this,t=this.hot.getPlugin("contextMenu");f(t.menu.hotMenu.getSourceData(),function(o,n){if("copy"===o.key){var r=new d(t.menu.hotMenu.getCell(n,0));return r.off(),r.on("copy",function(t){t.clipboardData.setData("text/plain",e.getCopyValue()),e.hot.getSettings().outsideClickDeselects=e.outsideClickDeselectsCache}),!1}})},removeCurrentClass:function(){var e=this.hot.getPlugin("contextMenu");if(e.enabled){if(e.menu.isOpened()){var t=e.menu.hotMenu.rootElement.querySelector("td.current");t&&h(t,"current")}this.outsideClickDeselectsCache=this.hot.getSettings().outsideClickDeselects,this.hot.getSettings().outsideClickDeselects=!1}},removeZeroClipboardClass:function(){var e=this.hot.getPlugin("contextMenu");if(e.enabled){if(e.menu.isOpened()){var t=e.menu.hotMenu.rootElement.querySelector("td.zeroclipboard-is-hover");t&&h(t,"zeroclipboard-is-hover")}this.hot.getSettings().outsideClickDeselects=this.outsideClickDeselectsCache}}},{},c),g("contextMenuCopyPaste",w)},{_base:62,"contextMenu/predefinedItems":75,eventManager:42,"helpers/array":43,"helpers/dom/element":47,plugins:61,zeroclipboard:"zeroclipboard"}],90:[function(e,t,o){"use strict";function n(e){function t(){e.isListening()}function o(){var t=s.getRangedData(s.copyableRanges);if(!e.getSettings().fragmentSelection||v.stringify(t)==O()){!!e.runHooks("beforeCut",t,s.copyableRanges)?(e.copyPaste.copyPasteInstance.copyable(v.stringify(t)),e.selection.empty(),e.runHooks("afterCut",t,s.copyableRanges)):e.copyPaste.copyPasteInstance.copyable("")}}function n(){if(e.isListening()){var t=s.getRangedData(s.copyableRanges);if(!e.getSettings().fragmentSelection||v.stringify(t)==O()){!!e.runHooks("beforeCopy",t,s.copyableRanges)?(e.copyPaste.copyPasteInstance.copyable(v.stringify(t)),e.runHooks("afterCopy",t,s.copyableRanges)):e.copyPaste.copyPasteInstance.copyable("")}}}function r(t){var o,n,r,i,a,l,u,c,d,h;if(e.isListening()&&e.selection.isSelected()){o=t,n=v.parse(o),r=e.getSelected(),i=new k(r[0],r[1]),a=new k(r[2],r[3]),l=new x(i,i,a),u=l.getTopLeftCorner(),c=l.getBottomRightCorner(),d=u,h=new k(Math.max(c.row,n.length-1+u.row),Math.max(c.col,n[0].length-1+u.col));var f=a.row-i.row>=n.length-1,p=a.col-i.col>=n[0].length-1;e.addHookOnce("afterChange",function(t,o){var n=t?t.length:0;if(n){var r={row:0,col:0},i=-1;_(t,function(e,o){var s=n>o+1?t[o+1]:null;s&&(f||(r.row=r.row+Math.max(s[0]-e[0]-1,0)),!p&&e[1]>i&&(i=e[1],r.col=r.col+Math.max(s[1]-e[1]-1,0)))}),e.selectCell(d.row,d.col,h.row+r.row,h.col+r.col)}});!!e.runHooks("beforePaste",n,s.copyableRanges)&&(e.populateFromArray(d.row,d.col,n,h.row,h.col,"CopyPaste.paste",e.getSettings().pasteMode),e.runHooks("afterPaste",n,s.copyableRanges))}}function i(t){if(e.getSelected()&&!(e.getActiveEditor()&&e.getActiveEditor().isOpened()||E(t))){if(C(t.keyCode)){if(e.getSettings().fragmentSelection&&O())return;return s.setCopyableText(),void S(t)}(t.ctrlKey||t.metaKey)&&!t.altKey&&(t.keyCode==b.A&&e._registerTimeout(setTimeout(T(s.setCopyableText,s),0)),t.keyCode==b.X&&o(),t.keyCode==b.C&&n())}}var s=this;this.copyPasteInstance=w(),this.copyPasteInstance.onCut(t),this.copyPasteInstance.triggerCopy=n,this.copyPasteInstance.onPaste(r),this.onPaste=r,this.copyableRanges=[],e.addHook("beforeKeyDown",i),this.destroy=function(){this.copyPasteInstance&&(this.copyPasteInstance.removeCallback(t),this.copyPasteInstance.removeCallback(r),this.copyPasteInstance.destroy(),this.copyPasteInstance=null),e.removeHook("beforeKeyDown",i)},e.addHook("afterDestroy",T(this.destroy,this)),this.triggerPaste=T(this.copyPasteInstance.triggerPaste,this.copyPasteInstance),this.triggerCut=T(this.copyPasteInstance.triggerCut,this.copyPasteInstance),this.setCopyableText=function(){var t=e.getSettings(),o=t.copyRowsLimit,n=t.copyColsLimit,r=e.getSelectedRange(),i=r.getTopLeftCorner(),s=r.getBottomRightCorner(),a=i.row,l=i.col,u=s.row,c=s.col,d=Math.min(u,a+o-1),h=Math.min(c,l+n-1);this.copyableRanges.length=0,this.copyableRanges.push({startRow:a,startCol:l,endRow:d,endCol:h}),this.copyableRanges=e.runHooks("modifyCopyableRange",this.copyableRanges);var f=this.getRangedCopyableData(this.copyableRanges);e.copyPaste.copyPasteInstance.copyable(f),u===d&&c===h||m.hooks.run(e,"afterCopyLimit",u-a+1,c-l+1,o,n)},this.getRangedCopyableData=function(t){var o=[],n=[],r=[];return _(t,function(e){R(e.startRow,e.endRow,function(e){n.indexOf(e)===-1&&n.push(e)}),R(e.startCol,e.endCol,function(e){r.indexOf(e)===-1&&r.push(e)})}),_(n,function(t){var n=[];_(r,function(o){n.push(e.getCopyableData(t,o))}),o.push(n)}),v.stringify(o)},this.getRangedData=function(t){var o=[],n=[],r=[];return _(t,function(e){R(e.startRow,e.endRow,function(e){n.indexOf(e)===-1&&n.push(e)}),R(e.startCol,e.endCol,function(e){r.indexOf(e)===-1&&r.push(e)})}),_(n,function(t){var n=[];_(r,function(o){n.push(e.getCopyableData(t,o))}),o.push(n)}),o}}function r(){var e=this,t=e.getSettings().copyPaste!==!1;t&&!e.copyPaste?e.copyPaste=new n(e):!t&&e.copyPaste&&(e.copyPaste.destroy(),e.copyPaste=null)}Object.defineProperties(o,{CopyPastePlugin:{get:function(){return n}},__esModule:{value:!0}});var i,s,a,l,u,c,d,h,f,p,g,m=((i=e("browser"))&&i.__esModule&&i||{default:i}).default,w=((s=e("copyPaste"))&&s.__esModule&&s||{default:s}).default,v=((a=e("SheetClip"))&&a.__esModule&&a||{default:a}).default,y=(l=e("helpers/unicode"))&&l.__esModule&&l||{default:l},b=y.KEY_CODES,C=y.isCtrlKey,_=((u=e("helpers/array"))&&u.__esModule&&u||{default:u}).arrayEach,R=((c=e("helpers/number"))&&c.__esModule&&c||{default:c}).rangeEach,M=(d=e("helpers/dom/event"))&&d.__esModule&&d||{default:d},S=M.stopImmediatePropagation,E=M.isImmediatePropagationStopped,O=((h=e("helpers/dom/element"))&&h.__esModule&&h||{default:h}).getSelectionText,T=((f=e("helpers/function"))&&f.__esModule&&f||{default:f}).proxy,k=((p=e("3rdparty/walkontable/src/cell/coords"))&&p.__esModule&&p||{default:p}).WalkontableCellCoords,x=((g=e("3rdparty/walkontable/src/cell/range"))&&g.__esModule&&g||{default:g}).WalkontableCellRange;m.hooks.add("afterInit",r),m.hooks.add("afterUpdateSettings",r),m.hooks.register("afterCopyLimit"),m.hooks.register("modifyCopyableRange"),m.hooks.register("beforeCut"),m.hooks.register("afterCut"),m.hooks.register("beforePaste"),m.hooks.register("afterPaste"),m.hooks.register("beforeCopy"),m.hooks.register("afterCopy")},{"3rdparty/walkontable/src/cell/coords":6,"3rdparty/walkontable/src/cell/range":7,SheetClip:"SheetClip",browser:24,copyPaste:"copyPaste","helpers/array":43,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/function":50,"helpers/number":52,"helpers/unicode":56}],91:[function(e,t,o){"use strict";function n(){}var r,i,s,a,l,u=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,c=(((i=e("plugins"))&&i.__esModule&&i||{default:i}).registerPlugin,((s=e("3rdparty/walkontable/src/cell/range"))&&s.__esModule&&s||{default:s}).WalkontableCellRange),d=((a=e("3rdparty/walkontable/src/selection"))&&a.__esModule&&a||{default:a}).WalkontableSelection,h=function(e){return"boolean"==typeof e&&e===!0||"object"==typeof e&&e.length>0},f=function(){h(this.getSettings().customBorders)&&(this.customBorders||(l=this,this.customBorders=new n))},p=function(e){for(var t=0;t<l.view.wt.selections.length;t++)if(l.view.wt.selections[t].settings.className==e)return t;return-1},g=function(e){var t={row:e.row,col:e.col},o=new d(e,new c(t,t,t)),n=p(e.className);n>=0?l.view.wt.selections[n]=o:l.view.wt.selections.push(o)},m=function(e,t,o){var n=_(e,t);n=R(n,o),this.setCellMeta(e,t,"borders",n),g(n)},w=function(e){for(var t=e.range,o=t.from.row;o<=t.to.row;o++)for(var n=t.from.col;n<=t.to.col;n++){var r=_(o,n),i=0;o==t.from.row&&(i++,e.hasOwnProperty("top")&&(r.top=e.top)),o==t.to.row&&(i++,e.hasOwnProperty("bottom")&&(r.bottom=e.bottom)),n==t.from.col&&(i++,e.hasOwnProperty("left")&&(r.left=e.left)),n==t.to.col&&(i++,e.hasOwnProperty("right")&&(r.right=e.right)),i>0&&(this.setCellMeta(o,n,"borders",r),g(r))}},v=function(e,t){return"border_row"+e+"col"+t},y=function(){return{width:1,color:"#000"}},b=function(){return{hide:!0}},C=function(){return{width:1,color:"#000",cornerVisible:!1}},_=function(e,t){return{className:v(e,t),border:C(),row:e,col:t,top:b(),right:b(),bottom:b(),left:b()}},R=function(e,t){return t.hasOwnProperty("border")&&(e.border=t.border),t.hasOwnProperty("top")&&(e.top=t.top),t.hasOwnProperty("right")&&(e.right=t.right),t.hasOwnProperty("bottom")&&(e.bottom=t.bottom),t.hasOwnProperty("left")&&(e.left=t.left),e},M=function(e){for(var t=document.querySelectorAll("."+e),o=0;o<t.length;o++)if(t[o]&&"TD"!=t[o].nodeName){var n=t[o].parentNode;n.parentNode&&n.parentNode.removeChild(n)}},S=function(e,t){M(v(e,t)),this.removeCellMeta(e,t,"borders")},E=function(e,t,o,n){var r=this.getCellMeta(e,t).borders;r&&void 0!=r.border||(r=_(e,t)),r[o]=n?b():y(),this.setCellMeta(e,t,"borders",r),M(v(e,t)),g(r),this.render()},O=function(e,t,o){if(e.from.row==e.to.row&&e.from.col==e.to.col)"noBorders"==t?S.call(this,e.from.row,e.from.col):E.call(this,e.from.row,e.from.col,t,o);else switch(t){case"noBorders":for(var n=e.from.col;n<=e.to.col;n++)for(var r=e.from.row;r<=e.to.row;r++)S.call(this,r,n);break;case"top":for(var i=e.from.col;i<=e.to.col;i++)E.call(this,e.from.row,i,t,o);break;case"right":for(var s=e.from.row;s<=e.to.row;s++)E.call(this,s,e.to.col,t);break;case"bottom":for(var a=e.from.col;a<=e.to.col;a++)E.call(this,e.to.row,a,t);break;case"left":for(var l=e.from.row;l<=e.to.row;l++)E.call(this,l,e.from.col,t)}},T=function(e,t){var o=!1;return e.getSelectedRange().forAll(function(n,r){var i=e.getCellMeta(n,r).borders;if(i){if(!t)return o=!0,!1;if(!i[t].hasOwnProperty("hide"))return o=!0,!1}}),o},k=function(e){return'<span class="selected">'+String.fromCharCode(10003)+"</span>"+e},x=function(e){this.getSettings().customBorders&&(e.items.push(u.plugins.ContextMenu.SEPARATOR),e.items.push({key:"borders",name:"Borders",disabled:function(){return this.selection.selectedHeader.corner},submenu:{items:[{key:"borders:top",name:function(){var e="Top";return T(this,"top")&&(e=k(e)),e},callback:function(){var e=T(this,"top");O.call(this,this.getSelectedRange(),"top",e)}},{key:"borders:right",name:function(){var e="Right";return T(this,"right")&&(e=k(e)),e},callback:function(){var e=T(this,"right");O.call(this,this.getSelectedRange(),"right",e)}},{key:"borders:bottom",name:function(){var e="Bottom";return T(this,"bottom")&&(e=k(e)),e},callback:function(){var e=T(this,"bottom");O.call(this,this.getSelectedRange(),"bottom",e)}},{key:"borders:left",name:function(){var e="Left";return T(this,"left")&&(e=k(e)),e},callback:function(){var e=T(this,"left");O.call(this,this.getSelectedRange(),"left",e)}},{key:"borders:no_borders",name:"Remove border(s)",callback:function(){O.call(this,this.getSelectedRange(),"noBorders")},disabled:function(){return!T(this)}}]}}))};u.hooks.add("beforeInit",f),u.hooks.add("afterContextMenuDefaultOptions",x),u.hooks.add("afterInit",function(){var e=this.getSettings().customBorders;if(e){for(var t=0;t<e.length;t++)e[t].range?w.call(this,e[t]):m.call(this,e[t].row,e[t].col,e[t]);this.render(),this.view.wt.draw(!0)}}),u.CustomBorders=n},{"3rdparty/walkontable/src/cell/range":7,"3rdparty/walkontable/src/selection":19,browser:24,plugins:61}],92:[function(e,t,o){"use strict";function n(){this.boundaries=null,this.callback=null}Object.defineProperties(o,{DragToScroll:{get:function(){return n}},__esModule:{value:!0}});var r,i,s,a=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,l=((i=e("eventManager"))&&i.__esModule&&i||{default:i}).eventManager;((s=e("plugins"))&&s.__esModule&&s||{default:s}).registerPlugin;a.plugins.DragToScroll=n,n.prototype.setBoundaries=function(e){this.boundaries=e},n.prototype.setCallback=function(e){this.callback=e},n.prototype.check=function(e,t){var o=0,n=0;t<this.boundaries.top?n=t-this.boundaries.top:t>this.boundaries.bottom&&(n=t-this.boundaries.bottom),e<this.boundaries.left?o=e-this.boundaries.left:e>this.boundaries.right&&(o=e-this.boundaries.right),this.callback(o,n)};var u,c=function(e){e.dragToScrollListening=!1;var t=e.view.wt.wtTable.holder;u=new n,t!==window&&(u.setBoundaries(t.getBoundingClientRect()),u.setCallback(function(e,o){e<0?t.scrollLeft-=50:e>0&&(t.scrollLeft+=50),o<0?t.scrollTop-=20:o>0&&(t.scrollTop+=20)}),e.dragToScrollListening=!0)};a.hooks.add("afterInit",function(){var e=this,t=l(this);t.addEventListener(document,"mouseup",function(){e.dragToScrollListening=!1}),t.addEventListener(document,"mousemove",function(t){e.dragToScrollListening&&u.check(t.clientX,t.clientY)})}),a.hooks.add("afterDestroy",function(){l(this).clear()}),a.hooks.add("afterOnCellMouseDown",function(){c(this)}),a.hooks.add("afterOnCellCornerMouseDown",function(){c(this)}),a.plugins.DragToScroll=n},{browser:24,eventManager:42,plugins:61}],93:[function(e,t,o){"use strict";function n(e){return{key:"freeze_column",name:"Freeze this column",callback:function(){var t=this.getSelectedRange().from.col;e.freezeColumn(t),this.render(),this.view.wt.wtOverlays.adjustElementsSize(!0)},hidden:function(){var e=this.getSelectedRange(),t=!1;return void 0===e?t=!0:(e.from.col!==e.to.col||e.from.col<=this.getSettings().fixedColumnsLeft-1)&&(t=!0),t}}}Object.defineProperties(o,{freezeColumnItem:{get:function(){return n}},__esModule:{value:!0}})},{}],94:[function(e,t,o){"use strict";function n(e){return{key:"unfreeze_column",name:"Unfreeze this column",callback:function(){var t=this.getSelectedRange().from.col;e.unfreezeColumn(t),this.render(),this.view.wt.wtOverlays.adjustElementsSize(!0)},hidden:function(){var e=this.getSelectedRange(),t=!1;return void 0===e?t=!0:(e.from.col!==e.to.col||e.from.col>=this.getSettings().fixedColumnsLeft)&&(t=!0),t}}}Object.defineProperties(o,{unfreezeColumnItem:{get:function(){return n}},__esModule:{value:!0}})},{}],95:[function(e,t,o){"use strict";Object.defineProperties(o,{ManualColumnFreeze:{get:function(){return m}},__esModule:{value:!0}});var n,r,i,s,a,l,u=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,c=((r=e("_base"))&&r.__esModule&&r||{default:r}).default,d=((i=e("plugins"))&&i.__esModule&&i||{default:i}).registerPlugin,h=((s=e("helpers/array"))&&s.__esModule&&s||{default:s}).arrayEach,f=((a=e("contextMenuItem/freezeColumn"))&&a.__esModule&&a||{default:a}).freezeColumnItem,p=((l=e("contextMenuItem/unfreezeColumn"))&&l.__esModule&&l||{default:l}).unfreezeColumnItem,g=new WeakMap,m=function(e){$traceurRuntime.superConstructor(w).call(this,e),g.set(this,{moveByFreeze:!1,afterFirstUse:!1}),this.frozenColumnsBasePositions=[],this.manualColumnMovePlugin=void 0},w=m;$traceurRuntime.createClass(m,{isEnabled:function(){return!!this.hot.getSettings().manualColumnFreeze},enablePlugin:function(){var e=this;this.enabled||(this.addHook("afterContextMenuDefaultOptions",function(t){return e.addContextMenuEntry(t)}),this.addHook("afterInit",function(){return e.onAfterInit()}),this.addHook("beforeColumnMove",function(t,o){return e.onBeforeColumnMove(t,o)}),$traceurRuntime.superGet(this,w.prototype,"enablePlugin").call(this))},disablePlugin:function(){var e=g.get(this);e.afterFirstUse=!1,e.moveByFreeze=!1,$traceurRuntime.superGet(this,w.prototype,"disablePlugin").call(this)},updatePlugin:function(){this.disablePlugin(),this.enablePlugin(),$traceurRuntime.superGet(this,w.prototype,"updatePlugin").call(this)},freezeColumn:function(e){var t=g.get(this),o=this.hot.getSettings();t.afterFirstUse||(t.afterFirstUse=!0),o.fixedColumnsLeft===this.hot.countCols()||e<=o.fixedColumnsLeft-1||(t.moveByFreeze=!0,e!==this.getMovePlugin().columnsMapper.getValueByIndex(e)&&(this.frozenColumnsBasePositions[o.fixedColumnsLeft]=e),this.getMovePlugin().moveColumn(e,o.fixedColumnsLeft++))},unfreezeColumn:function(e){var t=g.get(this),o=this.hot.getSettings();if(t.afterFirstUse||(t.afterFirstUse=!0),!(o.fixedColumnsLeft<=0||e>o.fixedColumnsLeft-1)){var n=this.getBestColumnReturnPosition(e);t.moveByFreeze=!0,o.fixedColumnsLeft--,this.getMovePlugin().moveColumn(e,n+1)}},getMovePlugin:function(){return this.manualColumnMovePlugin||(this.manualColumnMovePlugin=this.hot.getPlugin("manualColumnMove")),this.manualColumnMovePlugin},getBestColumnReturnPosition:function(e){var t,o=this.getMovePlugin(),n=this.hot.getSettings(),r=n.fixedColumnsLeft,i=o.columnsMapper.getValueByIndex(r);if(null==this.frozenColumnsBasePositions[e])for(t=o.columnsMapper.getValueByIndex(e);i<t;)r++,i=o.columnsMapper.getValueByIndex(r);else{for(t=this.frozenColumnsBasePositions[e],this.frozenColumnsBasePositions[e]=void 0;i<=t;)r++,i=o.columnsMapper.getValueByIndex(r);r=i}return r-1},addContextMenuEntry:function(e){e.items.push(u.plugins.ContextMenu.SEPARATOR,f(this),p(this))},onAfterInit:function(){this.getMovePlugin().isEnabled()||this.getMovePlugin().enablePlugin()},onBeforeColumnMove:function(e,t){var o=g.get(this);if(o.afterFirstUse&&!o.moveByFreeze){var n=this.hot.getSettings().fixedColumnsLeft,r=t<n;if(r||h(e,function(e,t,o){if(e<n)return r=!0,!1}),r)return!1}o.moveByFreeze&&(o.moveByFreeze=!1)},destroy:function(){$traceurRuntime.superGet(this,w.prototype,"destroy").call(this)}},{},c),d("manualColumnFreeze",m)},{_base:62,browser:24,"contextMenuItem/freezeColumn":93,"contextMenuItem/unfreezeColumn":94,"helpers/array":43,plugins:61}],96:[function(e,t,o){"use strict";Object.defineProperties(o,{ColumnsMapper:{get:function(){return f}},__esModule:{value:!0}});var n,r,i,s,a,l=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,u=((r=e("mixins/arrayMapper"))&&r.__esModule&&r||{default:r}).arrayMapper,c=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayFilter,d=((s=e("helpers/object"))&&s.__esModule&&s||{default:s}).mixin,h=((a=e("helpers/number"))&&a.__esModule&&a||{default:a}).rangeEach,f=function(e){this.manualColumnMove=e};$traceurRuntime.createClass(f,{createMap:function(e){var t=this,o=void 0===e?this._arrayMap.length:e;this._arrayMap.length=0,h(o-1,function(e){t._arrayMap[e]=e})},destroy:function(){this._arrayMap=null},moveColumn:function(e,t){var o=this._arrayMap[e];this._arrayMap[e]=null,this._arrayMap.splice(t,0,o)},clearNull:function(){this._arrayMap=c(this._arrayMap,function(e){return null!==e})}},{}),d(f,u),l.utils.ManualColumnMoveColumnsMapper=f},{browser:24,"helpers/array":43,"helpers/number":52,"helpers/object":53,"mixins/arrayMapper":57}],97:[function(e,t,o){"use strict";Object.defineProperties(o,{ManualColumnMove:{get:function(){return O}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d,h,f=((n=e("_base.js"))&&n.__esModule&&n||{default:n}).default,p=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,g=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayEach,m=(s=e("helpers/dom/element"))&&s.__esModule&&s||{default:s},w=m.addClass,v=m.removeClass,y=m.offset,b=((a=e("helpers/number"))&&a.__esModule&&a||{default:a}).rangeEach,C=((l=e("eventManager"))&&l.__esModule&&l||{default:l}).eventManager,_=((u=e("plugins"))&&u.__esModule&&u||{default:u}).registerPlugin,R=((c=e("columnsMapper"))&&c.__esModule&&c||{default:c}).ColumnsMapper,M=((d=e("ui/backlight"))&&d.__esModule&&d||{default:d}).BacklightUI,S=((h=e("ui/guideline"))&&h.__esModule&&h||{default:h}).GuidelineUI,E=new WeakMap,O=function(e){$traceurRuntime.superConstructor(T).call(this,e),E.set(this,{columnsToMove:[],countCols:0,fixedColumns:0,pressed:void 0,disallowMoving:void 0,target:{eventPageX:void 0,coords:void 0,TD:void 0,col:void 0}}),this.removedColumns=[],this.columnsMapper=new R(this),this.eventManager=C(this),this.backlight=new M(e),this.guideline=new S(e)},T=O;$traceurRuntime.createClass(O,{isEnabled:function(){return!!this.hot.getSettings().manualColumnMove},enablePlugin:function(){var e=this;this.enabled||(this.addHook("beforeOnCellMouseDown",function(t,o,n,r){return e.onBeforeOnCellMouseDown(t,o,n,r)}),this.addHook("beforeOnCellMouseOver",function(t,o,n,r){return e.onBeforeOnCellMouseOver(t,o,n,r)}),this.addHook("afterScrollVertically",function(){return e.onAfterScrollVertically()}),this.addHook("modifyCol",function(t,o){return e.onModifyCol(t,o)}),this.addHook("beforeRemoveCol",function(t,o){return e.onBeforeRemoveCol(t,o)}),this.addHook("afterRemoveCol",function(t,o){return e.onAfterRemoveCol(t,o)}),this.addHook("afterCreateCol",function(t,o){return e.onAfterCreateCol(t,o)}),this.addHook("afterLoadData",function(t){return e.onAfterLoadData(t)}),this.addHook("unmodifyCol",function(t){return e.onUnmodifyCol(t)}),this.registerEvents(),w(this.hot.rootElement,"ht__manualColumnMove"),$traceurRuntime.superGet(this,T.prototype,"enablePlugin").call(this))},updatePlugin:function(){this.disablePlugin(),this.enablePlugin(),this.onAfterPluginsInitialized(),$traceurRuntime.superGet(this,T.prototype,"updatePlugin").call(this)},disablePlugin:function(){var e=this.hot.getSettings().manualColumnMove;Array.isArray(e)&&this.columnsMapper.clearMap(),v(this.hot.rootElement,"ht__manualColumnMove"),this.unregisterEvents(),this.backlight.destroy(),this.guideline.destroy(),$traceurRuntime.superGet(this,T.prototype,"disablePlugin").call(this)},moveColumn:function(e,t){this.moveColumns([e],t)},moveColumns:function(e,t){var o=this,n=E.get(this),r=this.hot.runHooks("beforeColumnMove",e,t);n.disallowMoving=!r,r!==!1&&(g(e,function(e,t,n){n[t]=o.columnsMapper.getValueByIndex(e)}),g(e,function(e,n){var r=o.columnsMapper.getIndexByValue(e);r!==t&&o.columnsMapper.moveColumn(r,t+n)}),this.columnsMapper.clearNull()),this.hot.runHooks("afterColumnMove",e,t)},changeSelection:function(e,t){var o=this.hot.selection,n=this.hot.countRows()-1;o.setRangeStartOnly(new WalkontableCellCoords(0,e)),o.setRangeEnd(new WalkontableCellCoords(n,t),!1)},getColumnsWidth:function(e,t){for(var o=0,n=e;n<t;n++){var r=0;r=n<0?this.hot.view.wt.wtTable.getColumnWidth(n)||0:this.hot.view.wt.wtTable.getStretchedColumnWidth(n)||0,o+=r}return o},initialSettings:function(){var e=this.hot.getSettings().manualColumnMove;Array.isArray(e)?this.moveColumns(e,0):void 0!==e&&this.persistentStateLoad()},isFixedColumnsLeft:function(e){return e<this.hot.getSettings().fixedColumnsLeft},persistentStateSave:function(){p.hooks.run(this.hot,"persistentStateSave","manualColumnMove",this.columnsMapper._arrayMap)},persistentStateLoad:function(){var e={};p.hooks.run(this.hot,"persistentStateLoad","manualColumnMove",e),e.value&&(this.columnsMapper._arrayMap=e.value)},prepareColumnsToMoving:function(e,t){var o=[];return b(e,t,function(e){o.push(e)}),o},refreshPositions:function(){var e=E.get(this),t=this.hot.view.wt.wtTable.getFirstVisibleColumn(),o=this.hot.view.wt.wtTable.getLastVisibleColumn(),n=this.hot.view.wt.wtTable,r=this.hot.view.wt.wtOverlays.scrollableElement,i="number"==typeof r.scrollX?r.scrollX:r.scrollLeft,s=this.hot.view.THEAD.offsetLeft+this.getColumnsWidth(0,e.coordsColumn),a=e.target.eventPageX-(e.rootElementOffset-(void 0===r.scrollX?i:0)),l=n.hider.offsetWidth,u=n.TBODY.offsetLeft,c=this.backlight.getOffset().left,d=this.backlight.getSize().width,h=0;if(e.rootElementOffset+n.holder.offsetWidth+i<e.target.eventPageX&&e.coordsColumn<e.countCols&&e.coordsColumn++,e.hasRowHeaders&&(h=this.hot.view.wt.wtOverlays.leftOverlay.clone.wtTable.getColumnHeader(-1).offsetWidth),this.isFixedColumnsLeft(e.coordsColumn)&&(s+=i),s+=h,
38
+ e.coordsColumn<0)e.fixedColumns>0?e.target.col=0:e.target.col=t>0?t-1:t;else if(e.target.TD.offsetWidth/2+s<=a){var f=e.coordsColumn>=e.countCols?e.countCols-1:e.coordsColumn;e.target.col=f+1,s+=e.target.TD.offsetWidth,e.target.col>o&&this.hot.scrollViewportTo(void 0,o+1,void 0,!0)}else e.target.col=e.coordsColumn,e.target.col<=t&&e.target.col>=e.fixedColumns&&this.hot.scrollViewportTo(void 0,t-1);e.target.col<=t&&e.target.col>=e.fixedColumns&&this.hot.scrollViewportTo(void 0,t-1);var p=a,g=s;a+d+c>=l?p=l-d-c:a+c<u+h&&(p=u+h+Math.abs(c)),s>=l-1?g=l-1:0===g?g=1:void 0!==r.scrollX&&e.coordsColumn<e.fixedColumns&&(g-=e.rootElementOffset<=r.scrollX?e.rootElementOffset:0),this.backlight.setPosition(null,p),this.guideline.setPosition(null,g)},updateColumnsMapper:function(){var e=this.hot.countSourceCols(),t=this.columnsMapper._arrayMap.length;if(0===t)this.columnsMapper.createMap(e||this.hot.getSettings().startCols);else if(t<e){var o=e-t;this.columnsMapper.insertItems(t,o)}else if(t>e){var n=e-1,r=[];g(this.columnsMapper._arrayMap,function(e,t,o){e>n&&r.push(t)}),this.columnsMapper.removeItems(r)}},registerEvents:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(document.documentElement,"mouseup",function(){return e.onMouseUp()})},unregisterEvents:function(){this.eventManager.clear()},onBeforeOnCellMouseDown:function(e,t,o,n){var r=this.hot.view.wt.wtTable,i=this.hot.selection.selectedHeader.cols,s=this.hot.getSelectedRange(),a=E.get(this),l=e.realTarget.className.indexOf("columnSorting")>-1;if(!s||!i||a.pressed||0!==e.button||l)return a.pressed=!1,a.columnsToMove.length=0,void v(this.hot.rootElement,["on-moving--columns","show-ui"]);var u=this.guideline.isBuilt()&&!this.guideline.isAppended(),c=this.backlight.isBuilt()&&!this.backlight.isAppended();u&&c&&(this.guideline.appendTo(r.hider),this.backlight.appendTo(r.hider));var d=s,h=d.from,f=d.to,p=Math.min(h.col,f.col),g=Math.max(h.col,f.col);if(t.row<0&&t.col>=p&&t.col<=g){n.column=!0,a.pressed=!0,a.target.eventPageX=e.pageX,a.coordsColumn=t.col,a.target.TD=o,a.target.col=t.col,a.columnsToMove=this.prepareColumnsToMoving(p,g),a.hasRowHeaders=!!this.hot.getSettings().rowHeaders,a.countCols=this.hot.countCols(),a.fixedColumns=this.hot.getSettings().fixedColumnsLeft,a.rootElementOffset=y(this.hot.rootElement).left;var m=a.hasRowHeaders?-1:0,b=r.holder.scrollTop+r.getColumnHeaderHeight(0)+1,C=t.col<a.fixedColumns,_=this.hot.view.wt.wtOverlays.scrollableElement,R=_.scrollX?_.scrollX-a.rootElementOffset:0,M=e.layerX-(C?R:0),S=Math.abs(this.getColumnsWidth(p,t.col)+M);this.backlight.setPosition(b,this.getColumnsWidth(m,p)+S),this.backlight.setSize(this.getColumnsWidth(p,g+1),r.hider.offsetHeight-b),this.backlight.setOffset(null,S*-1),w(this.hot.rootElement,"on-moving--columns")}else v(this.hot.rootElement,"after-selection--columns"),a.pressed=!1,a.columnsToMove.length=0},onMouseMove:function(e){var t=E.get(this);if(t.pressed){if(e.realTarget===this.backlight.element){var o=this.backlight.getSize().width;this.backlight.setSize(0),setTimeout(function(){this.backlight.setPosition(o)})}t.target.eventPageX=e.pageX,this.refreshPositions()}},onBeforeOnCellMouseOver:function(e,t,o,n){var r=this.hot.getSelectedRange(),i=E.get(this);r&&i.pressed&&(i.columnsToMove.indexOf(t.col)>-1?v(this.hot.rootElement,"show-ui"):w(this.hot.rootElement,"show-ui"),n.row=!0,n.column=!0,n.cell=!0,i.coordsColumn=t.col,i.target.TD=o)},onMouseUp:function(){var e=E.get(this);if(e.coordsColumn=void 0,e.pressed=!1,e.backlightWidth=0,v(this.hot.rootElement,["on-moving--columns","show-ui","after-selection--columns"]),this.hot.selection.selectedHeader.cols&&w(this.hot.rootElement,"after-selection--columns"),!(e.columnsToMove.length<1||void 0===e.target.col||e.columnsToMove.indexOf(e.target.col)>-1)){if(this.moveColumns(e.columnsToMove,e.target.col),this.persistentStateSave(),this.hot.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),!e.disallowMoving){var t=this.columnsMapper.getIndexByValue(e.columnsToMove[0]),o=this.columnsMapper.getIndexByValue(e.columnsToMove[e.columnsToMove.length-1]);this.changeSelection(t,o)}e.columnsToMove.length=0}},onAfterScrollVertically:function(){var e=this.hot.view.wt.wtTable,t=e.getColumnHeaderHeight(0)+1,o=e.holder.scrollTop,n=t+o;this.backlight.setPosition(n),this.backlight.setSize(null,e.hider.offsetHeight-n)},onAfterCreateCol:function(e,t){this.columnsMapper.shiftItems(e,t)},onBeforeRemoveCol:function(e,t){var o=this;this.removedColumns.length=0,e!==!1&&b(e,e+t-1,function(e){o.removedColumns.push(o.hot.runHooks("modifyCol",e,o.pluginName))})},onAfterRemoveCol:function(e,t){this.columnsMapper.unshiftItems(this.removedColumns)},onAfterLoadData:function(e){this.updateColumnsMapper()},onModifyCol:function(e,t){if(t!==this.pluginName){var o=this.columnsMapper.getValueByIndex(e);e=null===o?e:o}return e},onUnmodifyCol:function(e){var t=this.columnsMapper.getIndexByValue(e);return null===t?e:t},onAfterPluginsInitialized:function(){this.updateColumnsMapper(),this.initialSettings(),this.backlight.build(),this.guideline.build()},destroy:function(){this.backlight.destroy(),this.guideline.destroy(),$traceurRuntime.superGet(this,T.prototype,"destroy").call(this)}},{},f),_("ManualColumnMove",O),p.hooks.register("beforeColumnMove"),p.hooks.register("afterColumnMove"),p.hooks.register("unmodifyCol")},{"_base.js":62,browser:24,columnsMapper:96,eventManager:42,"helpers/array":43,"helpers/dom/element":47,"helpers/number":52,plugins:61,"ui/backlight":99,"ui/guideline":100}],98:[function(e,t,o){"use strict";Object.defineProperties(o,{BaseUI:{get:function(){return i}},__esModule:{value:!0}});var n,r=((n=e("helpers/number"))&&n.__esModule&&n||{default:n}).isNumeric,i=function(e){this.hot=e,this._element=null,this.state=0};$traceurRuntime.createClass(i,{appendTo:function(e){e.appendChild(this._element),this.state=2},build:function(){this._element=document.createElement("div"),this.state=1},destroy:function(){this.isAppended()&&this._element.parentElement.removeChild(this._element),this._element=null,this.state=0},isAppended:function(){return 2===this.state},isBuilt:function(){return this.state>=1},setPosition:function(e,t){r(e)&&(this._element.style.top=e+"px"),r(t)&&(this._element.style.left=t+"px")},getPosition:function(){return{top:this._element.style.top?parseInt(this._element.style.top,10):0,left:this._element.style.left?parseInt(this._element.style.left,10):0}},setSize:function(e,t){r(e)&&(this._element.style.width=e+"px"),r(t)&&(this._element.style.height=t+"px")},getSize:function(){return{width:this._element.style.width?parseInt(this._element.style.width,10):0,height:this._element.style.height?parseInt(this._element.style.height,10):0}},setOffset:function(e,t){r(e)&&(this._element.style.marginTop=e+"px"),r(t)&&(this._element.style.marginLeft=t+"px")},getOffset:function(){return{top:this._element.style.marginTop?parseInt(this._element.style.marginTop,10):0,left:this._element.style.marginLeft?parseInt(this._element.style.marginLeft,10):0}}},{})},{"helpers/number":52}],99:[function(e,t,o){"use strict";Object.defineProperties(o,{BacklightUI:{get:function(){return a}},__esModule:{value:!0}});var n,r,i=((n=e("_base"))&&n.__esModule&&n||{default:n}).BaseUI,s=((r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r}).addClass,a=function(e){$traceurRuntime.superConstructor(l).call(this,e)},l=a;$traceurRuntime.createClass(a,{build:function(){$traceurRuntime.superGet(this,l.prototype,"build").call(this),s(this._element,"ht__manualColumnMove--backlight")}},{},i)},{_base:98,"helpers/dom/element":47}],100:[function(e,t,o){"use strict";Object.defineProperties(o,{GuidelineUI:{get:function(){return a}},__esModule:{value:!0}});var n,r,i=((n=e("_base"))&&n.__esModule&&n||{default:n}).BaseUI,s=((r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r}).addClass,a=function(e){$traceurRuntime.superConstructor(l).call(this,e)},l=a;$traceurRuntime.createClass(a,{build:function(){$traceurRuntime.superGet(this,l.prototype,"build").call(this),s(this._element,"ht__manualColumnMove--guideline")}},{},i)},{_base:98,"helpers/dom/element":47}],101:[function(e,t,o){"use strict";Object.defineProperties(o,{ManualColumnResize:{get:function(){return M}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,h=((r=e("_base.js"))&&r.__esModule&&r||{default:r}).default,f=(i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i},p=f.addClass,g=f.hasClass,m=f.removeClass,w=f.outerHeight,v=((s=e("eventManager"))&&s.__esModule&&s||{default:s}).eventManager,y=(a=e("helpers/dom/event"))&&a.__esModule&&a||{default:a},b=y.pageX,C=(y.pageY,((l=e("helpers/array"))&&l.__esModule&&l||{default:l}).arrayEach),_=((u=e("helpers/number"))&&u.__esModule&&u||{default:u}).rangeEach,R=((c=e("plugins"))&&c.__esModule&&c||{default:c}).registerPlugin,M=function(e){$traceurRuntime.superConstructor(S).call(this,e),this.currentTH=null,this.currentCol=null,this.selectedCols=[],this.currentWidth=null,this.newSize=null,this.startY=null,this.startWidth=null,this.startOffset=null,this.handle=document.createElement("DIV"),this.guide=document.createElement("DIV"),this.eventManager=v(this),this.pressed=null,this.dblclick=0,this.autoresizeTimeout=null,this.manualColumnWidths=[],p(this.handle,"manualColumnResizer"),p(this.guide,"manualColumnResizerGuide")},S=M;$traceurRuntime.createClass(M,{isEnabled:function(){return this.hot.getSettings().manualColumnResize},enablePlugin:function(){var e=this;if(!this.enabled){this.manualColumnWidths=[];var t=this.hot.getSettings().manualColumnResize,o=this.loadManualColumnWidths();this.addHook("modifyColWidth",function(t,o){return e.onModifyColWidth(t,o)}),this.addHook("beforeStretchingColumnWidth",function(t,o){return e.onBeforeStretchingColumnWidth(t,o)}),this.addHook("beforeColumnResize",function(t,o,n){return e.onBeforeColumnResize(t,o,n)}),void 0!==o?this.manualColumnWidths=o:Array.isArray(t)?this.manualColumnWidths=t:this.manualColumnWidths=[],d.hooks.register("beforeColumnResize"),d.hooks.register("afterColumnResize"),this.bindEvents(),$traceurRuntime.superGet(this,S.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.hot.getSettings().manualColumnResize;Array.isArray(e)?this.manualColumnWidths=e:e||(this.manualColumnWidths=[])},disablePlugin:function(){$traceurRuntime.superGet(this,S.prototype,"disablePlugin").call(this)},saveManualColumnWidths:function(){this.hot.runHooks("persistentStateSave","manualColumnWidths",this.manualColumnWidths)},loadManualColumnWidths:function(){var e={};return this.hot.runHooks("persistentStateLoad","manualColumnWidths",e),e.value},setupHandlePosition:function(e){var t=this;if(!e.parentNode)return!1;this.currentTH=e;var o=this.hot.view.wt.wtTable.getCoords(e).col,n=w(this.currentTH);if(o>=0){var r=this.currentTH.getBoundingClientRect();if(this.currentCol=o,this.selectedCols=[],this.hot.selection.isSelected()&&this.hot.selection.selectedHeader.cols){var i=this.hot.getSelectedRange(),s=i.from,a=i.to,l=s.col,u=a.col;l>=u&&(l=a.col,u=s.col),this.currentCol>=l&&this.currentCol<=u?_(l,u,function(e){return t.selectedCols.push(e)}):this.selectedCols.push(this.currentCol)}else this.selectedCols.push(this.currentCol);this.startOffset=r.left-6,this.startWidth=parseInt(r.width,10),this.handle.style.top=r.top+"px",this.handle.style.left=this.startOffset+this.startWidth+"px",this.handle.style.height=n+"px",this.hot.rootElement.appendChild(this.handle)}},refreshHandlePosition:function(){this.handle.style.left=this.startOffset+this.currentWidth+"px"},setupGuidePosition:function(){var e=parseInt(w(this.handle),10),t=parseInt(this.handle.style.top,10)+e,o=parseInt(this.hot.view.maximumVisibleElementHeight(0),10);p(this.handle,"active"),p(this.guide,"active"),this.guide.style.top=t+"px",this.guide.style.left=this.handle.style.left,this.guide.style.height=o-e+"px",this.hot.rootElement.appendChild(this.guide)},refreshGuidePosition:function(){this.guide.style.left=this.handle.style.left},hideHandleAndGuide:function(){m(this.handle,"active"),m(this.guide,"active")},checkIfColumnHeader:function(e){if(e!=this.hot.rootElement){var t=e.parentNode;return"THEAD"===t.tagName||this.checkIfColumnHeader(t)}return!1},getTHFromTargetElement:function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:this.getTHFromTargetElement(e.parentNode):null},onMouseOver:function(e){if(this.checkIfColumnHeader(e.target)){var t=this.getTHFromTargetElement(e.target);if(!t)return;var o=t.getAttribute("colspan");!t||null!==o&&1!==o||this.pressed||this.setupHandlePosition(t)}},afterMouseDownTimeout:function(){var e=this,t=function(){e.hot.forceFullRender=!0,e.hot.view.render(),e.hot.view.wt.wtOverlays.adjustElementsSize(!0)},o=function(o,n){var r=e.hot.runHooks("beforeColumnResize",o,e.newSize,!0);void 0!==r&&(e.newSize=r),"all"===e.hot.getSettings().stretchH?e.clearManualSize(o):e.setManualSize(o,e.newSize),n&&t(),e.saveManualColumnWidths(),e.hot.runHooks("afterColumnResize",o,e.newSize,!0)};if(this.dblclick>=2){this.selectedCols.length>1?(C(this.selectedCols,function(e){o(e)}),t()):C(this.selectedCols,function(e){o(e,!0)})}this.dblclick=0,this.autoresizeTimeout=null},onMouseDown:function(e){var t=this;g(e.target,"manualColumnResizer")&&(this.setupGuidePosition(),this.pressed=this.hot,null===this.autoresizeTimeout&&(this.autoresizeTimeout=setTimeout(function(){return t.afterMouseDownTimeout()},500),this.hot._registerTimeout(this.autoresizeTimeout)),this.dblclick++,this.startX=b(e),this.newSize=this.startWidth)},onMouseMove:function(e){var t=this;this.pressed&&(this.currentWidth=this.startWidth+(b(e)-this.startX),C(this.selectedCols,function(e){t.newSize=t.setManualSize(e,t.currentWidth)}),this.refreshHandlePosition(),this.refreshGuidePosition())},onMouseUp:function(e){var t=this,o=function(){t.hot.forceFullRender=!0,t.hot.view.render(),t.hot.view.wt.wtOverlays.adjustElementsSize(!0)},n=function(e,n){t.hot.runHooks("beforeColumnResize",e,t.newSize),n&&o(),t.saveManualColumnWidths(),t.hot.runHooks("afterColumnResize",e,t.newSize)};if(this.pressed){if(this.hideHandleAndGuide(),this.pressed=!1,this.newSize!=this.startWidth){this.selectedCols.length>1?(C(this.selectedCols,function(e){n(e)}),o()):C(this.selectedCols,function(e){n(e,!0)})}this.setupHandlePosition(this.currentTH)}},bindEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(this.hot.rootElement,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(window,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(window,"mouseup",function(t){return e.onMouseUp(t)})},setManualSize:function(e,t){return t=Math.max(t,20),e=this.hot.runHooks("modifyCol",e),this.manualColumnWidths[e]=t,t},clearManualSize:function(e){e=this.hot.runHooks("modifyCol",e),this.manualColumnWidths[e]=void 0},onModifyColWidth:function(e,t){return this.enabled&&(t=this.hot.runHooks("modifyCol",t),this.hot.getSettings().manualColumnResize&&this.manualColumnWidths[t])?this.manualColumnWidths[t]:e},onBeforeStretchingColumnWidth:function(e,t){var o=this.manualColumnWidths[t];return void 0===o&&(o=e),o},onBeforeColumnResize:function(){this.hot.view.wt.wtViewport.hasOversizedColumnHeadersMarked={}}},{},h),R("manualColumnResize",M)},{"_base.js":62,browser:24,eventManager:42,"helpers/array":43,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/number":52,plugins:61}],102:[function(e,t,o){"use strict";Object.defineProperties(o,{ManualRowMove:{get:function(){return O}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d,h,f=((n=e("_base.js"))&&n.__esModule&&n||{default:n}).default,p=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,g=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayEach,m=(s=e("helpers/dom/element"))&&s.__esModule&&s||{default:s},w=m.addClass,v=m.removeClass,y=m.offset,b=((a=e("helpers/number"))&&a.__esModule&&a||{default:a}).rangeEach,C=((l=e("eventManager"))&&l.__esModule&&l||{default:l}).eventManager,_=((u=e("plugins"))&&u.__esModule&&u||{default:u}).registerPlugin,R=((c=e("rowsMapper"))&&c.__esModule&&c||{default:c}).RowsMapper,M=((d=e("ui/backlight"))&&d.__esModule&&d||{default:d}).BacklightUI,S=((h=e("ui/guideline"))&&h.__esModule&&h||{default:h}).GuidelineUI,E=new WeakMap,O=function(e){$traceurRuntime.superConstructor(T).call(this,e),E.set(this,{rowsToMove:[],pressed:void 0,disallowMoving:void 0,target:{eventPageY:void 0,coords:void 0,TD:void 0,row:void 0}}),this.removedRows=[],this.rowsMapper=new R(this),this.eventManager=C(this),this.backlight=new M(e),this.guideline=new S(e)},T=O;$traceurRuntime.createClass(O,{isEnabled:function(){return!!this.hot.getSettings().manualRowMove},enablePlugin:function(){var e=this;this.enabled||(this.addHook("beforeOnCellMouseDown",function(t,o,n,r){return e.onBeforeOnCellMouseDown(t,o,n,r)}),this.addHook("beforeOnCellMouseOver",function(t,o,n,r){return e.onBeforeOnCellMouseOver(t,o,n,r)}),this.addHook("afterScrollHorizontally",function(){return e.onAfterScrollHorizontally()}),this.addHook("modifyRow",function(t,o){return e.onModifyRow(t,o)}),this.addHook("beforeRemoveRow",function(t,o){return e.onBeforeRemoveRow(t,o)}),this.addHook("afterRemoveRow",function(t,o){return e.onAfterRemoveRow(t,o)}),this.addHook("afterCreateRow",function(t,o){return e.onAfterCreateRow(t,o)}),this.addHook("afterLoadData",function(t){return e.onAfterLoadData(t)}),this.addHook("beforeColumnSort",function(t,o){return e.onBeforeColumnSort(t,o)}),this.addHook("unmodifyRow",function(t){return e.onUnmodifyRow(t)}),this.registerEvents(),w(this.hot.rootElement,"ht__manualRowMove"),$traceurRuntime.superGet(this,T.prototype,"enablePlugin").call(this))},updatePlugin:function(){this.disablePlugin(),this.enablePlugin(),this.onAfterPluginsInitialized(),$traceurRuntime.superGet(this,T.prototype,"updatePlugin").call(this)},disablePlugin:function(){var e=this.hot.getSettings().manualRowMove;Array.isArray(e)&&this.rowsMapper.clearMap(),v(this.hot.rootElement,"ht__manualRowMove"),this.unregisterEvents(),this.backlight.destroy(),this.guideline.destroy(),$traceurRuntime.superGet(this,T.prototype,"disablePlugin").call(this)},moveRow:function(e,t){this.moveRows([e],t)},moveRows:function(e,t){var o=this,n=E.get(this),r=this.hot.runHooks("beforeRowMove",e,t);n.disallowMoving=r===!1,n.disallowMoving||(g(e,function(e,t,n){n[t]=o.rowsMapper.getValueByIndex(e)}),g(e,function(e,n){var r=o.rowsMapper.getIndexByValue(e);r!==t&&o.rowsMapper.moveRow(r,t+n)}),this.rowsMapper.clearNull()),this.hot.runHooks("afterRowMove",e,t)},changeSelection:function(e,t){var o=this.hot.selection,n=this.hot.countCols()-1;o.setRangeStartOnly(new WalkontableCellCoords(e,0)),o.setRangeEnd(new WalkontableCellCoords(t,n),!1)},getRowsHeight:function(e,t){for(var o=0,n=e;n<t;n++){o+=this.hot.view.wt.wtTable.getRowHeight(n)||23}return o},initialSettings:function(){var e=this.hot.getSettings().manualRowMove;if(Array.isArray(e))this.moveRows(e,0);else if(void 0!==e){var t=this.persistentStateLoad();t.length&&this.moveRows(t,0)}},isFixedRowTop:function(e){return e<this.hot.getSettings().fixedRowsTop},isFixedRowBottom:function(e){return e>this.hot.getSettings().fixedRowsBottom},persistentStateSave:function(){p.hooks.run(this.hot,"persistentStateSave","manualRowMove",this.rowsMapper._arrayMap)},persistentStateLoad:function(){var e={};return p.hooks.run(this.hot,"persistentStateLoad","manualRowMove",e),e.value?e.value:[]},prepareRowsToMoving:function(){var e=this.hot.getSelectedRange(),t=[];if(!e)return t;var o=e,n=o.from,r=o.to;return b(Math.min(n.row,r.row),Math.max(n.row,r.row),function(e){t.push(e)}),t},refreshPositions:function(){var e=E.get(this),t=e.target.coords,o=this.hot.view.wt.wtTable.getFirstVisibleRow(),n=this.hot.view.wt.wtTable.getLastVisibleRow(),r=this.hot.getSettings().fixedRowsTop,i=this.hot.countRows();t.row<r&&o>0&&this.hot.scrollViewportTo(o-1),t.row>=n&&n<i&&this.hot.scrollViewportTo(n+1,void 0,!0);var s=this.hot.view.wt.wtTable,a=e.target.TD,l=y(this.hot.rootElement),u=this.hot.view.THEAD.offsetHeight+this.getRowsHeight(0,t.row),c=e.target.eventPageY-l.top+s.holder.scrollTop,d=s.hider.offsetHeight,h=s.TBODY.offsetTop,f=this.backlight.getOffset().top,p=this.backlight.getSize().height;l.top+s.holder.offsetHeight<e.target.eventPageY&&e.target.coords.row++,this.isFixedRowTop(t.row)&&(u+=s.holder.scrollTop),t.row<0?e.target.row=o>0?o-1:o:a.offsetHeight/2+u<=c?(e.target.row=t.row+1,u+=0===t.row?a.offsetHeight-1:a.offsetHeight):e.target.row=t.row;var g=c,m=u;c+p+f>=d?g=d-p-f:c+f<h&&(g=h+Math.abs(f)),u>=d-1&&(m=d-1);var w=0;this.hot.view.wt.wtOverlays.topOverlay&&(w=this.hot.view.wt.wtOverlays.topOverlay.clone.wtTable.TABLE.offsetHeight),t.row>=r&&m-s.holder.scrollTop<w&&this.hot.scrollViewportTo(t.row),this.backlight.setPosition(g),this.guideline.setPosition(m)},updateRowsMapper:function(){var e=this.hot.countSourceRows(),t=this.rowsMapper._arrayMap.length;if(0===t)this.rowsMapper.createMap(e||this.hot.getSettings().startRows);else if(t<e){var o=e-t;this.rowsMapper.insertItems(t,o)}else if(t>e){var n=e-1,r=[];g(this.rowsMapper._arrayMap,function(e,t,o){e>n&&r.push(t)}),this.rowsMapper.removeItems(r)}},registerEvents:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(document.documentElement,"mouseup",function(){return e.onMouseUp()})},unregisterEvents:function(){this.eventManager.clear()},onBeforeColumnSort:function(e,t){E.get(this).disallowMoving=void 0!==t},onBeforeOnCellMouseDown:function(e,t,o,n){var r=this.hot.view.wt.wtTable,i=this.hot.selection.selectedHeader.rows,s=this.hot.getSelectedRange(),a=E.get(this);if(!s||!i||a.pressed||0!==e.button)return a.pressed=!1,a.rowsToMove.length=0,void v(this.hot.rootElement,["on-moving--rows","show-ui"]);var l=this.guideline.isBuilt()&&!this.guideline.isAppended(),u=this.backlight.isBuilt()&&!this.backlight.isAppended();l&&u&&(this.guideline.appendTo(r.hider),this.backlight.appendTo(r.hider));var c=s,d=c.from,h=c.to,f=Math.min(d.row,h.row),p=Math.max(d.row,h.row);if(t.col<0&&t.row>=f&&t.row<=p){n.row=!0,a.pressed=!0,a.target.eventPageY=e.pageY,a.target.coords=t,a.target.TD=o,a.rowsToMove=this.prepareRowsToMoving();var g=r.holder.scrollLeft+r.getColumnWidth(-1);this.backlight.setPosition(null,g),this.backlight.setSize(r.hider.offsetWidth-g,this.getRowsHeight(f,p+1)),this.backlight.setOffset((this.getRowsHeight(f,t.row)+e.layerY)*-1,null),w(this.hot.rootElement,"on-moving--rows"),this.refreshPositions()}else v(this.hot.rootElement,"after-selection--rows"),a.pressed=!1,a.rowsToMove.length=0},onMouseMove:function(e){var t=E.get(this);if(t.pressed){if(e.realTarget===this.backlight.element){var o=this.backlight.getSize().height;this.backlight.setSize(null,0),setTimeout(function(){this.backlight.setPosition(null,o)})}t.target.eventPageY=e.pageY,this.refreshPositions()}},onBeforeOnCellMouseOver:function(e,t,o,n){var r=this.hot.getSelectedRange(),i=E.get(this);r&&i.pressed&&(i.rowsToMove.indexOf(t.row)>-1?v(this.hot.rootElement,"show-ui"):w(this.hot.rootElement,"show-ui"),n.row=!0,n.column=!0,n.cell=!0,i.target.coords=t,i.target.TD=o)},onMouseUp:function(){var e=E.get(this),t=e.target.row,o=e.rowsToMove.length;if(e.pressed=!1,e.backlightHeight=0,v(this.hot.rootElement,["on-moving--rows","show-ui","after-selection--rows"]),this.hot.selection.selectedHeader.rows&&w(this.hot.rootElement,"after-selection--rows"),!(o<1||void 0===t||e.rowsToMove.indexOf(t)>-1||e.rowsToMove[o-1]===t-1)){if(this.moveRows(e.rowsToMove,t),this.persistentStateSave(),this.hot.render(),!e.disallowMoving){var n=this.rowsMapper.getIndexByValue(e.rowsToMove[0]),r=this.rowsMapper.getIndexByValue(e.rowsToMove[o-1]);this.changeSelection(n,r)}e.rowsToMove.length=0}},onAfterScrollHorizontally:function(){var e=this.hot.view.wt.wtTable,t=e.getColumnWidth(-1),o=e.holder.scrollLeft,n=t+o;this.backlight.setPosition(null,n),this.backlight.setSize(e.hider.offsetWidth-n)},onAfterCreateRow:function(e,t){this.rowsMapper.shiftItems(e,t)},onBeforeRemoveRow:function(e,t){var o=this;this.removedRows.length=0,e!==!1&&b(e,e+t-1,function(e){o.removedRows.push(o.hot.runHooks("modifyRow",e,o.pluginName))})},onAfterRemoveRow:function(e,t){this.rowsMapper.unshiftItems(this.removedRows)},onAfterLoadData:function(e){this.updateRowsMapper()},onModifyRow:function(e,t){if(t!==this.pluginName){var o=this.rowsMapper.getValueByIndex(e);e=null===o?e:o}return e},onUnmodifyRow:function(e){var t=this.rowsMapper.getIndexByValue(e);return null===t?e:t},onAfterPluginsInitialized:function(){this.updateRowsMapper(),this.initialSettings(),this.backlight.build(),this.guideline.build()},destroy:function(){this.backlight.destroy(),this.guideline.destroy(),$traceurRuntime.superGet(this,T.prototype,"destroy").call(this)}},{},f),_("ManualRowMove",O),p.hooks.register("beforeRowMove"),p.hooks.register("afterRowMove"),p.hooks.register("unmodifyRow")},{"_base.js":62,browser:24,eventManager:42,"helpers/array":43,"helpers/dom/element":47,"helpers/number":52,plugins:61,rowsMapper:103,"ui/backlight":105,"ui/guideline":106}],103:[function(e,t,o){"use strict";Object.defineProperties(o,{RowsMapper:{get:function(){return f}},__esModule:{value:!0}});var n,r,i,s,a,l=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,u=((r=e("mixins/arrayMapper"))&&r.__esModule&&r||{default:r}).arrayMapper,c=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayFilter,d=((s=e("helpers/object"))&&s.__esModule&&s||{default:s}).mixin,h=((a=e("helpers/number"))&&a.__esModule&&a||{default:a}).rangeEach,f=function(e){this.manualRowMove=e};$traceurRuntime.createClass(f,{createMap:function(e){var t=this,o=void 0===e?this._arrayMap.length:e;this._arrayMap.length=0,h(o-1,function(e){t._arrayMap[e]=e})},destroy:function(){this._arrayMap=null},moveRow:function(e,t){var o=this._arrayMap[e];this._arrayMap[e]=null,this._arrayMap.splice(t,0,o)},clearNull:function(){this._arrayMap=c(this._arrayMap,function(e){return null!==e})}},{}),d(f,u),l.utils.ManualRowMoveRowsMapper=f},{browser:24,"helpers/array":43,"helpers/number":52,"helpers/object":53,"mixins/arrayMapper":57}],104:[function(e,t,o){"use strict";Object.defineProperties(o,{BaseUI:{get:function(){return n}},__esModule:{value:!0}});var n=function(e){this.hot=e,this._element=null,this.state=0};$traceurRuntime.createClass(n,{appendTo:function(e){e.appendChild(this._element),this.state=2},build:function(){this._element=document.createElement("div"),this.state=1},destroy:function(){this.isAppended()&&this._element.parentElement.removeChild(this._element),this._element=null,this.state=0},isAppended:function(){return 2===this.state},isBuilt:function(){return this.state>=1},setPosition:function(e,t){e&&(this._element.style.top=e+"px"),t&&(this._element.style.left=t+"px")},getPosition:function(){return{top:this._element.style.top?parseInt(this._element.style.top,10):0,left:this._element.style.left?parseInt(this._element.style.left,10):0}},setSize:function(e,t){e&&(this._element.style.width=e+"px"),t&&(this._element.style.height=t+"px")},getSize:function(){return{width:this._element.style.width?parseInt(this._element.style.width,10):0,height:this._element.style.height?parseInt(this._element.style.height,10):0}},setOffset:function(e,t){e&&(this._element.style.marginTop=e+"px"),t&&(this._element.style.marginLeft=t+"px")},getOffset:function(){return{top:this._element.style.marginTop?parseInt(this._element.style.marginTop,10):0,left:this._element.style.marginLeft?parseInt(this._element.style.marginLeft,10):0}}},{})},{}],105:[function(e,t,o){"use strict";Object.defineProperties(o,{BacklightUI:{get:function(){return a}},__esModule:{value:!0}});var n,r,i=((n=e("_base"))&&n.__esModule&&n||{default:n}).BaseUI,s=((r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r}).addClass,a=function(e){$traceurRuntime.superConstructor(l).call(this,e)},l=a;$traceurRuntime.createClass(a,{build:function(){$traceurRuntime.superGet(this,l.prototype,"build").call(this),s(this._element,"ht__manualRowMove--backlight")}},{},i)},{_base:104,"helpers/dom/element":47}],106:[function(e,t,o){"use strict";Object.defineProperties(o,{GuidelineUI:{get:function(){return a}},__esModule:{value:!0}});var n,r,i=((n=e("_base"))&&n.__esModule&&n||{default:n}).BaseUI,s=((r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r}).addClass,a=function(e){$traceurRuntime.superConstructor(l).call(this,e)},l=a;$traceurRuntime.createClass(a,{build:function(){$traceurRuntime.superGet(this,l.prototype,"build").call(this),s(this._element,"ht__manualRowMove--guideline")}},{},i)},{_base:104,"helpers/dom/element":47}],107:[function(e,t,o){"use strict";Object.defineProperties(o,{ManualRowResize:{get:function(){return M}},__esModule:{value:!0}});var n,r,i,s,a,l,u,c,d=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,h=((r=e("_base.js"))&&r.__esModule&&r||{default:r}).default,f=(i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i},p=f.addClass,g=f.hasClass,m=f.removeClass,w=f.outerWidth,v=((s=e("eventManager"))&&s.__esModule&&s||{default:s}).eventManager,y=(a=e("helpers/dom/event"))&&a.__esModule&&a||{default:a},b=(y.pageX,y.pageY),C=((l=e("helpers/array"))&&l.__esModule&&l||{default:l}).arrayEach,_=((u=e("helpers/number"))&&u.__esModule&&u||{default:u}).rangeEach,R=((c=e("plugins"))&&c.__esModule&&c||{default:c}).registerPlugin,M=function(e){$traceurRuntime.superConstructor(S).call(this,e),this.currentTH=null,this.currentRow=null,this.selectedRows=[],this.currentHeight=null,this.newSize=null,this.startY=null,this.startHeight=null,this.startOffset=null,this.handle=document.createElement("DIV"),this.guide=document.createElement("DIV"),this.eventManager=v(this),this.pressed=null,this.dblclick=0,this.autoresizeTimeout=null,this.manualRowHeights=[],p(this.handle,"manualRowResizer"),p(this.guide,"manualRowResizerGuide")},S=M;$traceurRuntime.createClass(M,{isEnabled:function(){return this.hot.getSettings().manualRowResize},enablePlugin:function(){var e=this;if(!this.enabled){this.manualRowHeights=[];var t=this.hot.getSettings().manualRowResize,o=this.loadManualRowHeights();void 0!==o?this.manualRowHeights=o:Array.isArray(t)?this.manualRowHeights=t:this.manualRowHeights=[],this.addHook("modifyRowHeight",function(t,o){return e.onModifyRowHeight(t,o)}),d.hooks.register("beforeRowResize"),d.hooks.register("afterRowResize"),this.bindEvents(),$traceurRuntime.superGet(this,S.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.hot.getSettings().manualRowResize;Array.isArray(e)?this.manualRowHeights=e:e||(this.manualRowHeights=[])},disablePlugin:function(){$traceurRuntime.superGet(this,S.prototype,"disablePlugin").call(this)},saveManualRowHeights:function(){this.hot.runHooks("persistentStateSave","manualRowHeights",this.manualRowHeights)},loadManualRowHeights:function(){var e={};return this.hot.runHooks("persistentStateLoad","manualRowHeights",e),e.value},setupHandlePosition:function(e){var t=this;this.currentTH=e;var o=this.hot.view.wt.wtTable.getCoords(e).row,n=w(this.currentTH);if(o>=0){var r=this.currentTH.getBoundingClientRect();if(this.currentRow=o,this.selectedRows=[],this.hot.selection.isSelected()&&this.hot.selection.selectedHeader.rows){var i=this.hot.getSelectedRange(),s=i.from,a=i.to,l=s.row,u=a.row;l>=u&&(l=a.row,u=s.row),this.currentRow>=l&&this.currentRow<=u?_(l,u,function(e){return t.selectedRows.push(e)}):this.selectedRows.push(this.currentRow)}else this.selectedRows.push(this.currentRow);this.startOffset=r.top-6,this.startHeight=parseInt(r.height,10),this.handle.style.left=r.left+"px",this.handle.style.top=this.startOffset+this.startHeight+"px",this.handle.style.width=n+"px",this.hot.rootElement.appendChild(this.handle)}},refreshHandlePosition:function(){
39
+ this.handle.style.top=this.startOffset+this.currentHeight+"px"},setupGuidePosition:function(){var e=parseInt(w(this.handle),10),t=parseInt(this.handle.style.left,10)+e,o=parseInt(this.hot.view.maximumVisibleElementWidth(0),10);p(this.handle,"active"),p(this.guide,"active"),this.guide.style.top=this.handle.style.top,this.guide.style.left=t+"px",this.guide.style.width=o-e+"px",this.hot.rootElement.appendChild(this.guide)},refreshGuidePosition:function(){this.guide.style.top=this.handle.style.top},hideHandleAndGuide:function(){m(this.handle,"active"),m(this.guide,"active")},checkIfRowHeader:function(e){if(e!=this.hot.rootElement){var t=e.parentNode;return"TBODY"===t.tagName||this.checkIfRowHeader(t)}return!1},getTHFromTargetElement:function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:this.getTHFromTargetElement(e.parentNode):null},onMouseOver:function(e){if(this.checkIfRowHeader(e.target)){var t=this.getTHFromTargetElement(e.target);t&&(this.pressed||this.setupHandlePosition(t))}},afterMouseDownTimeout:function(){var e=this,t=function(){e.hot.forceFullRender=!0,e.hot.view.render(),e.hot.view.wt.wtOverlays.adjustElementsSize(!0)},o=function(o,n){var r=e.hot.runHooks("beforeRowResize",o,e.newSize,!0);void 0!==r&&(e.newSize=r),e.setManualSize(o,e.newSize),n&&t(),e.hot.runHooks("afterRowResize",o,e.newSize,!0)};if(this.dblclick>=2){this.selectedRows.length>1?(C(this.selectedRows,function(e){o(e)}),t()):C(this.selectedRows,function(e){o(e,!0)})}this.dblclick=0,this.autoresizeTimeout=null},onMouseDown:function(e){var t=this;g(e.target,"manualRowResizer")&&(this.setupGuidePosition(),this.pressed=this.hot,null==this.autoresizeTimeout&&(this.autoresizeTimeout=setTimeout(function(){return t.afterMouseDownTimeout()},500),this.hot._registerTimeout(this.autoresizeTimeout)),this.dblclick++,this.startY=b(e),this.newSize=this.startHeight)},onMouseMove:function(e){var t=this;this.pressed&&(this.currentHeight=this.startHeight+(b(e)-this.startY),C(this.selectedRows,function(e){t.newSize=t.setManualSize(e,t.currentHeight)}),this.refreshHandlePosition(),this.refreshGuidePosition())},onMouseUp:function(e){var t=this,o=function(){t.hot.forceFullRender=!0,t.hot.view.render(),t.hot.view.wt.wtOverlays.adjustElementsSize(!0)},n=function(e,n){t.hot.runHooks("beforeRowResize",e,t.newSize),n&&o(),t.saveManualRowHeights(),t.hot.runHooks("afterRowResize",e,t.newSize)};if(this.pressed){if(this.hideHandleAndGuide(),this.pressed=!1,this.newSize!=this.startHeight){this.selectedRows.length>1?(C(this.selectedRows,function(e){n(e)}),o()):C(this.selectedRows,function(e){n(e,!0)})}this.setupHandlePosition(this.currentTH)}},bindEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(this.hot.rootElement,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(window,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(window,"mouseup",function(t){return e.onMouseUp(t)})},setManualSize:function(e,t){return e=this.hot.runHooks("modifyRow",e),this.manualRowHeights[e]=t,t},onModifyRowHeight:function(e,t){if(this.enabled){var o=this.hot.getPlugin("autoRowSize"),n=o?o.heights[t]:null;t=this.hot.runHooks("modifyRow",t);var r=this.manualRowHeights[t];if(void 0!==r&&(r===n||r>(e||0)))return r}return e}},{},h),R("manualRowResize",M)},{"_base.js":62,browser:24,eventManager:42,"helpers/array":43,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/number":52,plugins:61}],108:[function(e,t,o){"use strict";function n(){var e=[];return e.getInfo=function(e,t){for(var o=0,n=this.length;o<n;o++)if(this[o].row<=e&&this[o].row+this[o].rowspan-1>=e&&this[o].col<=t&&this[o].col+this[o].colspan-1>=t)return this[o]},e.setInfo=function(e){for(var t=0,o=this.length;t<o;t++)if(this[t].row===e.row&&this[t].col===e.col)return void(this[t]=e);this.push(e)},e.removeInfo=function(e,t){for(var o=0,n=this.length;o<n;o++)if(this[o].row===e&&this[o].col===t){this.splice(o,1);break}},e}function r(e){if(this.mergedCellInfoCollection=new n,Array.isArray(e))for(var t=0,o=e.length;t<o;t++)this.mergedCellInfoCollection.setInfo(e[t])}function i(e,t){if(this.getSettings().mergeCells&&!this.selection.isMultiple()){var o=this.mergeCells.mergedCellInfoCollection.getInfo(e[0],e[1]);o&&(e[0]=o.row,e[1]=o.col,e[2]=o.row+o.rowspan-1,e[3]=o.col+o.colspan-1)}}function s(e,t){this.mergeCells&&this.mergeCells.shiftCollection("right",e,t)}function a(e,t){this.mergeCells&&this.mergeCells.shiftCollection("left",e,t)}function l(e,t){this.mergeCells&&this.mergeCells.shiftCollection("down",e,t)}function u(e,t){this.mergeCells&&this.mergeCells.shiftCollection("up",e,t)}Object.defineProperties(o,{MergeCells:{get:function(){return r}},__esModule:{value:!0}});var c,d,h,f,p,g,m=((c=e("browser"))&&c.__esModule&&c||{default:c}).default,w=(((d=e("plugins"))&&d.__esModule&&d||{default:d}).registerPlugin,((h=e("helpers/dom/event"))&&h.__esModule&&h||{default:h}).stopImmediatePropagation),v=((f=e("3rdparty/walkontable/src/cell/coords"))&&f.__esModule&&f||{default:f}).WalkontableCellCoords,y=((p=e("3rdparty/walkontable/src/cell/range"))&&p.__esModule&&p||{default:p}).WalkontableCellRange,b=((g=e("3rdparty/walkontable/src/table"))&&g.__esModule&&g||{default:g}).WalkontableTable;r.prototype.canMergeRange=function(e){return!e.isSingle()},r.prototype.mergeRange=function(e){if(this.canMergeRange(e)){var t=e.getTopLeftCorner(),o=e.getBottomRightCorner(),n={};n.row=t.row,n.col=t.col,n.rowspan=o.row-t.row+1,n.colspan=o.col-t.col+1,this.mergedCellInfoCollection.setInfo(n)}},r.prototype.mergeOrUnmergeSelection=function(e){this.mergedCellInfoCollection.getInfo(e.from.row,e.from.col)?this.unmergeSelection(e.from):this.mergeSelection(e)},r.prototype.mergeSelection=function(e){this.mergeRange(e)},r.prototype.unmergeSelection=function(e){var t=this.mergedCellInfoCollection.getInfo(e.row,e.col);this.mergedCellInfoCollection.removeInfo(t.row,t.col)},r.prototype.applySpanProperties=function(e,t,o){var n=this.mergedCellInfoCollection.getInfo(t,o);n?n.row===t&&n.col===o?(e.setAttribute("rowspan",n.rowspan),e.setAttribute("colspan",n.colspan)):(e.removeAttribute("rowspan"),e.removeAttribute("colspan"),e.style.display="none"):(e.removeAttribute("rowspan"),e.removeAttribute("colspan"))},r.prototype.modifyTransform=function(e,t,o){var n={row:o.row,col:o.col};if("modifyTransformStart"==e){this.lastDesiredCoords||(this.lastDesiredCoords=new v(null,null));for(var r=new v(t.highlight.row,t.highlight.col),i=this.mergedCellInfoCollection.getInfo(r.row,r.col),s=0,a=this.mergedCellInfoCollection.length;s<a;s++){var l=this.mergedCellInfoCollection[s];if(l=new v(l.row+l.rowspan-1,l.col+l.colspan-1),t.includes(l)){!0;break}}if(i){var u=new v(i.row,i.col),c=new v(i.row+i.rowspan-1,i.col+i.colspan-1);new y(u,u,c).includes(this.lastDesiredCoords)||(this.lastDesiredCoords=new v(null,null)),n.row=this.lastDesiredCoords.row?this.lastDesiredCoords.row-r.row:n.row,n.col=this.lastDesiredCoords.col?this.lastDesiredCoords.col-r.col:n.col,o.row>0?n.row=i.row+i.rowspan-1-r.row+o.row:o.row<0&&(n.row=r.row-i.row+o.row),o.col>0?n.col=i.col+i.colspan-1-r.col+o.col:o.col<0&&(n.col=r.col-i.col+o.col)}var d=new v(t.highlight.row+n.row,t.highlight.col+n.col),h=this.mergedCellInfoCollection.getInfo(d.row,d.col);h&&(this.lastDesiredCoords=d,n={row:h.row-r.row,col:h.col-r.col})}else if("modifyTransformEnd"==e)for(var s=0,a=this.mergedCellInfoCollection.length;s<a;s++){var f=this.mergedCellInfoCollection[s],u=new v(f.row,f.col),c=new v(f.row+f.rowspan-1,f.col+f.colspan-1),p=new y(u,u,c),g=t.getBordersSharedWith(p);if(p.isEqual(t))t.setDirection("NW-SE");else if(g.length>0){var m=t.highlight.isEqual(p.from);g.indexOf("top")>-1?t.to.isSouthEastOf(p.from)&&m?t.setDirection("NW-SE"):t.to.isSouthWestOf(p.from)&&m&&t.setDirection("NE-SW"):g.indexOf("bottom")>-1&&(t.to.isNorthEastOf(p.from)&&m?t.setDirection("SW-NE"):t.to.isNorthWestOf(p.from)&&m&&t.setDirection("SE-NW"))}var d=function(e){return new v(t.to.row+e.row,t.to.col+e.col)}(n),w=function(e,t){return t.row>=e.row&&t.row<=e.row+e.rowspan-1}(f,d),b=function(e,t){return t.col>=e.col&&t.col<=e.col+e.colspan-1}(f,d);t.includesRange(p)&&(p.includes(d)||w||b)&&(w&&(n.row<0?n.row-=f.rowspan-1:n.row>0&&(n.row+=f.rowspan-1)),b&&(n.col<0?n.col-=f.colspan-1:n.col>0&&(n.col+=f.colspan-1)))}0!==n.row&&(o.row=n.row),0!==n.col&&(o.col=n.col)},r.prototype.shiftCollection=function(e,t,o){var n=[0,0];switch(e){case"right":n[0]+=1;break;case"left":n[0]-=1;break;case"down":n[1]+=1;break;case"up":n[1]-=1}for(var r=0;r<this.mergedCellInfoCollection.length;r++){var i=this.mergedCellInfoCollection[r];"right"===e||"left"===e?t<=i.col&&(i.col+=n[0]):t<=i.row&&(i.row+=n[1])}};var C=function(){var e=this,t=e.getSettings().mergeCells;t&&(e.mergeCells||(e.mergeCells=new r(t)))},_=function(){var e=this;e.mergeCells&&(e.view.wt.wtTable.getCell=function(t){if(e.getSettings().mergeCells){var o=e.mergeCells.mergedCellInfoCollection.getInfo(t.row,t.col);o&&(t=o)}return b.prototype.getCell.call(this,t)})},R=function(){var e=this,t=e.getSettings().mergeCells;if(t)if(e.mergeCells){if(e.mergeCells.mergedCellInfoCollection=new n,Array.isArray(t))for(var o=0,i=t.length;o<i;o++)e.mergeCells.mergedCellInfoCollection.setInfo(t[o])}else e.mergeCells=new r(t);else e.mergeCells&&(e.mergeCells.mergedCellInfoCollection=new n)},M=function(e){if(this.mergeCells){(e.ctrlKey||e.metaKey)&&!e.altKey&&77===e.keyCode&&(this.mergeCells.mergeOrUnmergeSelection(this.getSelectedRange()),this.render(),w(e))}},S=function(e){this.getSettings().mergeCells&&(e.items.push(m.plugins.ContextMenu.SEPARATOR),e.items.push({key:"mergeCells",name:function(){var e=this.getSelected();return this.mergeCells.mergedCellInfoCollection.getInfo(e[0],e[1])?"Unmerge cells":"Merge cells"},callback:function(){this.mergeCells.mergeOrUnmergeSelection(this.getSelectedRange()),this.render()},disabled:function(){return this.selection.selectedHeader.corner}}))},E=function(e,t,o,n,r,i){this.mergeCells&&this.mergeCells.applySpanProperties(e,t,o)},O=function(e){return function(t){if(this.getSettings().mergeCells){var o=this.getSelectedRange();if(this.mergeCells.modifyTransform(e,o,t),"modifyTransformEnd"===e){var n=this.countRows(),r=this.countCols();o.from.row<0?o.from.row=0:o.from.row>0&&o.from.row>=n&&(o.from.row=o.from-1),o.from.col<0?o.from.col=0:o.from.col>0&&o.from.col>=r&&(o.from.col=r-1)}}}},T=function(e){if(this.lastDesiredCoords=null,this.getSettings().mergeCells){var t=this.getSelectedRange();t.highlight=new v(t.highlight.row,t.highlight.col),t.to=e;var o=!1;do{o=!1;for(var n=0,r=this.mergeCells.mergedCellInfoCollection.length;n<r;n++){var i=this.mergeCells.mergedCellInfoCollection[n],s=new v(i.row,i.col),a=new v(i.row+i.rowspan-1,i.col+i.colspan-1),l=new y(s,s,a);t.expandByRange(l)&&(e.row=t.to.row,e.col=t.to.col,o=!0)}}while(o)}},k=function(e,t){if(t&&"area"==t){if(this.getSettings().mergeCells)for(var o=this.getSelectedRange(),n=new y(o.from,o.from,o.from),r=new y(o.to,o.to,o.to),i=0,s=this.mergeCells.mergedCellInfoCollection.length;i<s;i++){var a=this.mergeCells.mergedCellInfoCollection[i],l=new v(a.row,a.col),u=new v(a.row+a.rowspan-1,a.col+a.colspan-1),c=new y(l,l,u);n.expandByRange(c)&&(e[0]=n.from.row,e[1]=n.from.col),r.expandByRange(c)&&(e[2]=r.from.row,e[3]=r.from.col)}}},x=function(e,t,o){if(this.getSettings().mergeCells){var n=this.mergeCells.mergedCellInfoCollection.getInfo(e,t);!n||n.row==e&&n.col==t||(o.copyable=!1)}},H=function(e){if(this.getSettings().mergeCells)for(var t,o=this.countCols(),n=0;n<o;n++){if((t=this.mergeCells.mergedCellInfoCollection.getInfo(e.startRow,n))&&t.row<e.startRow)return e.startRow=t.row,H.call(this,e);if(t=this.mergeCells.mergedCellInfoCollection.getInfo(e.endRow,n)){var r=t.row+t.rowspan-1;if(r>e.endRow)return e.endRow=r,H.call(this,e)}}},D=function(e){if(this.getSettings().mergeCells)for(var t,o=this.countRows(),n=0;n<o;n++){if((t=this.mergeCells.mergedCellInfoCollection.getInfo(n,e.startColumn))&&t.col<e.startColumn)return e.startColumn=t.col,D.call(this,e);if(t=this.mergeCells.mergedCellInfoCollection.getInfo(n,e.endColumn)){var r=t.col+t.colspan-1;if(r>e.endColumn)return e.endColumn=r,D.call(this,e)}}},A=function(e){if(e&&this.mergeCells){var t=this.mergeCells.mergedCellInfoCollection,o=this.getSelectedRange();for(var n in t)if(o.highlight.row==t[n].row&&o.highlight.col==t[n].col&&o.to.row==t[n].row+t[n].rowspan-1&&o.to.col==t[n].col+t[n].colspan-1)return!1}return e};m.hooks.add("beforeInit",C),m.hooks.add("afterInit",_),m.hooks.add("afterUpdateSettings",R),m.hooks.add("beforeKeyDown",M),m.hooks.add("modifyTransformStart",O("modifyTransformStart")),m.hooks.add("modifyTransformEnd",O("modifyTransformEnd")),m.hooks.add("beforeSetRangeEnd",T),m.hooks.add("beforeDrawBorders",k),m.hooks.add("afterIsMultipleSelection",A),m.hooks.add("afterRenderer",E),m.hooks.add("afterContextMenuDefaultOptions",S),m.hooks.add("afterGetCellMeta",x),m.hooks.add("afterViewportRowCalculatorOverride",H),m.hooks.add("afterViewportColumnCalculatorOverride",D),m.hooks.add("modifyAutofillRange",i),m.hooks.add("afterCreateCol",s),m.hooks.add("afterRemoveCol",a),m.hooks.add("afterCreateRow",l),m.hooks.add("afterRemoveRow",u),m.MergeCells=r},{"3rdparty/walkontable/src/cell/coords":6,"3rdparty/walkontable/src/cell/range":7,"3rdparty/walkontable/src/table":21,browser:24,"helpers/dom/event":48,plugins:61}],109:[function(e,t,o){"use strict";Object.defineProperties(o,{MultipleSelectionHandles:{get:function(){return w}},__esModule:{value:!0}});var n,r,i,s,a,l,u=(((n=e("browser"))&&n.__esModule&&n||{default:n}).default,(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r}),c=u.getWindowScrollTop,d=u.hasClass,h=u.getWindowScrollLeft,f=((i=e("helpers/browser"))&&i.__esModule&&i||{default:i}).isMobileBrowser,p=((s=e("_base"))&&s.__esModule&&s||{default:s}).default,g=((a=e("eventManager"))&&a.__esModule&&a||{default:a}).EventManager,m=((l=e("plugins"))&&l.__esModule&&l||{default:l}).registerPlugin,w=function(e){$traceurRuntime.superConstructor(v).call(this,e),this.dragged=[],this.eventManager=null,this.lastSetCell=null},v=w;$traceurRuntime.createClass(w,{isEnabled:function(){return f()},enablePlugin:function(){this.enabled||(this.eventManager||(this.eventManager=new g(this)),this.registerListeners(),$traceurRuntime.superGet(this,v.prototype,"enablePlugin").call(this))},registerListeners:function(){function e(e){if(1===t.dragged.length)return t.dragged.splice(0,t.dragged.length),!0;var o=t.dragged.indexOf(e);if(o==-1)return!1;0===o?t.dragged=t.dragged.slice(0,1):1==o&&(t.dragged=t.dragged.slice(-1))}var t=this;this.eventManager.addEventListener(this.hot.rootElement,"touchstart",function(e){var o;return d(e.target,"topLeftSelectionHandle-HitArea")?(o=t.hot.getSelectedRange(),t.dragged.push("topLeft"),t.touchStartRange={width:o.getWidth(),height:o.getHeight(),direction:o.getDirection()},e.preventDefault(),!1):d(e.target,"bottomRightSelectionHandle-HitArea")?(o=t.hot.getSelectedRange(),t.dragged.push("bottomRight"),t.touchStartRange={width:o.getWidth(),height:o.getHeight(),direction:o.getDirection()},e.preventDefault(),!1):void 0}),this.eventManager.addEventListener(this.hot.rootElement,"touchend",function(o){return d(o.target,"topLeftSelectionHandle-HitArea")?(e.call(t,"topLeft"),t.touchStartRange=void 0,o.preventDefault(),!1):d(o.target,"bottomRightSelectionHandle-HitArea")?(e.call(t,"bottomRight"),t.touchStartRange=void 0,o.preventDefault(),!1):void 0}),this.eventManager.addEventListener(this.hot.rootElement,"touchmove",function(e){var o,n,r,i,s,a,l,u=c(),d=h();0!==t.dragged.length&&(o=document.elementFromPoint(e.touches[0].screenX-d,e.touches[0].screenY-u))&&o!==t.lastSetCell&&("TD"!=o.nodeName&&"TH"!=o.nodeName||(n=t.hot.getCoords(o),n.col==-1&&(n.col=0),r=t.hot.getSelectedRange(),i=r.getWidth(),s=r.getHeight(),a=r.getDirection(),1==i&&1==s&&t.hot.selection.setRangeEnd(n),l=t.getCurrentRangeCoords(r,n,t.touchStartRange.direction,a,t.dragged[0]),null!==l.start&&t.hot.selection.setRangeStart(l.start),t.hot.selection.setRangeEnd(l.end),t.lastSetCell=o),e.preventDefault())})},getCurrentRangeCoords:function(e,t,o,n,r){var i=e.getTopLeftCorner(),s=e.getBottomRightCorner(),a=e.getBottomLeftCorner(),l=e.getTopRightCorner(),u={start:null,end:null};switch(o){case"NE-SW":switch(n){case"NE-SW":case"NW-SE":u="topLeft"==r?{start:new WalkontableCellCoords(t.row,e.highlight.col),end:new WalkontableCellCoords(a.row,t.col)}:{start:new WalkontableCellCoords(e.highlight.row,t.col),end:new WalkontableCellCoords(t.row,i.col)};break;case"SE-NW":"bottomRight"==r&&(u={start:new WalkontableCellCoords(s.row,t.col),end:new WalkontableCellCoords(t.row,i.col)})}break;case"NW-SE":switch(n){case"NE-SW":"topLeft"==r?u={start:t,end:a}:u.end=t;break;case"NW-SE":"topLeft"==r?u={start:t,end:s}:u.end=t;break;case"SE-NW":"topLeft"==r?u={start:t,end:i}:u.end=t;break;case"SW-NE":"topLeft"==r?u={start:t,end:l}:u.end=t}break;case"SW-NE":switch(n){case"NW-SE":u="bottomRight"==r?{start:new WalkontableCellCoords(t.row,i.col),end:new WalkontableCellCoords(a.row,t.col)}:{start:new WalkontableCellCoords(i.row,t.col),end:new WalkontableCellCoords(t.row,s.col)};break;case"SW-NE":u="topLeft"==r?{start:new WalkontableCellCoords(e.highlight.row,t.col),end:new WalkontableCellCoords(t.row,s.col)}:{start:new WalkontableCellCoords(t.row,i.col),end:new WalkontableCellCoords(i.row,t.col)};break;case"SE-NW":"bottomRight"==r?u={start:new WalkontableCellCoords(t.row,l.col),end:new WalkontableCellCoords(i.row,t.col)}:"topLeft"==r&&(u={start:a,end:t})}break;case"SE-NW":switch(n){case"NW-SE":case"NE-SW":case"SW-NE":"topLeft"==r&&(u.end=t);break;case"SE-NW":"topLeft"==r?u.end=t:u={start:t,end:i}}}return u},isDragged:function(){return this.dragged.length>0}},{},p),m("multipleSelectionHandles",w)},{_base:62,browser:24,eventManager:42,"helpers/browser":44,"helpers/dom/element":47,plugins:61}],110:[function(e,t,o){"use strict";Object.defineProperties(o,{DataObserver:{get:function(){return d}},__esModule:{value:!0}});var n,r,i,s,a=((n=e("jsonpatch"))&&n.__esModule&&n||{default:n}).default,l=((r=e("../../mixins/localHooks"))&&r.__esModule&&r||{default:r}).localHooks,u=((i=e("../../helpers/object"))&&i.__esModule&&i||{default:i}).mixin,c=((s=e("utils"))&&s.__esModule&&s||{default:s}).cleanPatches,d=function(e){this.observedData=null,this.observer=null,this.paused=!1,this.setObservedData(e)};$traceurRuntime.createClass(d,{setObservedData:function(e){var t=this;this.observer&&a.unobserve(this.observedData,this.observer),this.observedData=e,this.observer=a.observe(this.observedData,function(e){return t.onChange(e)})},isPaused:function(){return this.paused},pause:function(){this.paused=!0},resume:function(){this.paused=!1},onChange:function(e){this.runLocalHooks("change",c(e))},destroy:function(){a.unobserve(this.observedData,this.observer),this.observedData=null,this.observer=null}},{}),u(d,l)},{"../../helpers/object":53,"../../mixins/localHooks":58,jsonpatch:"jsonpatch",utils:112}],111:[function(e,t,o){"use strict";Object.defineProperties(o,{ObserveChanges:{get:function(){return p}},__esModule:{value:!0}});var n,r,i,s,a,l,u=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,c=((r=e("_base"))&&r.__esModule&&r||{default:r}).default,d=(((i=e("jsonpatch"))&&i.__esModule&&i||{default:i}).default,((s=e("dataObserver"))&&s.__esModule&&s||{default:s}).DataObserver),h=((a=e("helpers/array"))&&a.__esModule&&a||{default:a}).arrayEach,f=((l=e("plugins"))&&l.__esModule&&l||{default:l}).registerPlugin;u.hooks.register("afterChangesObserved");var p=function(e){$traceurRuntime.superConstructor(g).call(this,e),this.observer=null},g=p;$traceurRuntime.createClass(p,{isEnabled:function(){return this.hot.getSettings().observeChanges},enablePlugin:function(){var e=this;this.enabled||(this.observer||(this.observer=new d(this.hot.getSourceData()),this._exposePublicApi()),this.observer.addLocalHook("change",function(t){return e.onDataChange(t)}),this.addHook("afterCreateRow",function(){return e.onAfterTableAlter()}),this.addHook("afterRemoveRow",function(){return e.onAfterTableAlter()}),this.addHook("afterCreateCol",function(){return e.onAfterTableAlter()}),this.addHook("afterRemoveCol",function(){return e.onAfterTableAlter()}),this.addHook("afterChange",function(t,o){return e.onAfterTableAlter(o)}),this.addHook("afterLoadData",function(t){return e.onAfterLoadData(t)}),$traceurRuntime.superGet(this,g.prototype,"enablePlugin").call(this))},disablePlugin:function(){this.observer&&(this.observer.destroy(),this.observer=null,this._deletePublicApi()),$traceurRuntime.superGet(this,g.prototype,"disablePlugin").call(this)},onDataChange:function(e){var t=this;if(!this.observer.isPaused()){var o=this.pluginName+".change",n={add:function(e){isNaN(e.col)?t.hot.runHooks("afterCreateRow",e.row,1,o):t.hot.runHooks("afterCreateCol",e.col,1,o)},remove:function(e){isNaN(e.col)?t.hot.runHooks("afterRemoveRow",e.row,1,o):t.hot.runHooks("afterRemoveCol",e.col,1,o)},replace:function(e){t.hot.runHooks("afterChange",[e.row,e.col,null,e.value],o)}};h(e,function(e){n[e.op]&&n[e.op](e)}),this.hot.render()}this.hot.runHooks("afterChangesObserved")},onAfterTableAlter:function(e){var t=this;"loadData"!==e&&(this.observer.pause(),this.hot.addHookOnce("afterChangesObserved",function(){return t.observer.resume()}))},onAfterLoadData:function(e){e||this.observer.setObservedData(this.hot.getSourceData())},destroy:function(){this.observer&&(this.observer.destroy(),this._deletePublicApi()),$traceurRuntime.superGet(this,g.prototype,"destroy").call(this)},_exposePublicApi:function(){var e=this,t=this.hot;t.pauseObservingChanges=function(){return e.observer.pause()},t.resumeObservingChanges=function(){return e.observer.resume()},t.isPausedObservingChanges=function(){return e.observer.isPaused()}},_deletePublicApi:function(){var e=this.hot;delete e.pauseObservingChanges,delete e.resumeObservingChanges,delete e.isPausedObservingChanges}},{},c),f("observeChanges",p)},{_base:62,browser:24,dataObserver:110,"helpers/array":43,jsonpatch:"jsonpatch",plugins:61}],112:[function(e,t,o){"use strict";function n(e){var t=[];return e=a(e,function(e){return!/[\/]length/gi.test(e.path)&&!!r(e.path)}),e=l(e,function(e){var t=r(e.path);return e.row=t.row,e.col=t.col,e}),e=a(e,function(e){if(["add","remove"].indexOf(e.op)!==-1&&!isNaN(e.col)){if(t.indexOf(e.col)!==-1)return!1;t.push(e.col)}return!0}),t.length=0,e}function r(e){var t=e.match(/^\/(\d+)\/?(.*)?$/);if(!t)return null;var o=t,n=o[1],r=o[2];return{row:parseInt(n,10),col:/^\d*$/.test(r)?parseInt(r,10):r}}Object.defineProperties(o,{cleanPatches:{get:function(){return n}},parsePath:{get:function(){return r}},__esModule:{value:!0}});var i,s=(i=e("../../helpers/array"))&&i.__esModule&&i||{default:i},a=s.arrayFilter,l=s.arrayMap},{"../../helpers/array":43}],113:[function(e,t,o){"use strict";function n(e){var t,o=function(){window.localStorage[e+"__persistentStateKeys"]=JSON.stringify(t)},n=function(){t=[],o()};!function(){var o=window.localStorage[e+"__persistentStateKeys"],n="string"==typeof o?JSON.parse(o):void 0;t=n?n:[]}(),this.saveValue=function(n,r){window.localStorage[e+"_"+n]=JSON.stringify(r),t.indexOf(n)==-1&&(t.push(n),o())},this.loadValue=function(t,o){t=void 0===t?o:t;var n=window.localStorage[e+"_"+t];return void 0===n?void 0:JSON.parse(n)},this.reset=function(t){window.localStorage.removeItem(e+"_"+t)},this.resetAll=function(){for(var o=0;o<t.length;o++)window.localStorage.removeItem(e+"_"+t[o]);n()}}function r(){function e(){var e=this;for(var t in r)r.hasOwnProperty(t)&&e.addHook(t,r[t])}function t(){var e=this;for(var t in r)r.hasOwnProperty(t)&&e.removeHook(t,r[t])}var o=this;this.init=function(){var r=this,i=r.getSettings().persistentState;if(o.enabled=!!i,!o.enabled)return void t.call(r);r.storage||(r.storage=new n(r.rootElement.id)),r.resetState=o.resetValue,e.call(r)},this.saveValue=function(e,t){this.storage.saveValue(e,t)},this.loadValue=function(e,t){var o=this;t.value=o.storage.loadValue(e)},this.resetValue=function(e){var t=this;void 0===e?t.storage.resetAll():t.storage.reset(e)};var r={persistentStateSave:o.saveValue,persistentStateLoad:o.loadValue,persistentStateReset:o.resetValue};for(var i in r)r.hasOwnProperty(i)&&a.hooks.register(i)}Object.defineProperties(o,{HandsontablePersistentState:{get:function(){return r}},__esModule:{value:!0}});var i,s,a=((i=e("browser"))&&i.__esModule&&i||{default:i}).default,l=(((s=e("plugins"))&&s.__esModule&&s||{default:s}).registerPlugin,new r);a.hooks.add("beforeInit",l.init),a.hooks.add("afterUpdateSettings",l.init)},{browser:24,plugins:61}],114:[function(e,t,o){"use strict";function n(){var e=this;!e.getSettings().search?delete e.search:e.search=new a.Search(e)}var r,i,s,a=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,l=(i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i},u=l.addClass,c=l.removeClass,d=(s=e("renderers"))&&s.__esModule&&s||{default:s},h=d.registerRenderer,f=d.getRenderer;a.Search=function(e){this.query=function(t,o,n){var r=e.countRows(),i=e.countCols(),s=[];o||(o=a.Search.global.getDefaultCallback()),n||(n=a.Search.global.getDefaultQueryMethod());for(var l=0;l<r;l++)for(var u=0;u<i;u++){var c=e.getDataAtCell(l,u),d=e.getCellMeta(l,u),h=d.search.callback||o,f=d.search.queryMethod||n,p=f(t,c);if(p){var g={row:l,col:u,data:c};s.push(g)}h&&h(e,l,u,c,p)}return s}},a.Search.DEFAULT_CALLBACK=function(e,t,o,n,r){e.getCellMeta(t,o).isSearchResult=r},a.Search.DEFAULT_QUERY_METHOD=function(e,t){return!(void 0===e||null==e||!e.toLowerCase||0===e.length)&&(void 0!==t&&null!=t&&t.toString().toLowerCase().indexOf(e.toLowerCase())!=-1)},a.Search.DEFAULT_SEARCH_RESULT_CLASS="htSearchResult",a.Search.global=function(){var e=a.Search.DEFAULT_CALLBACK,t=a.Search.DEFAULT_QUERY_METHOD,o=a.Search.DEFAULT_SEARCH_RESULT_CLASS;return{getDefaultCallback:function(){return e},setDefaultCallback:function(t){e=t},getDefaultQueryMethod:function(){return t},setDefaultQueryMethod:function(e){t=e},getDefaultSearchResultClass:function(){return o},setDefaultSearchResultClass:function(e){o=e}}}(),a.SearchCellDecorator=function(e,t,o,n,r,i,s){var l=null!==s.search&&"object"==typeof s.search&&s.search.searchResultClass||a.Search.global.getDefaultSearchResultClass();s.isSearchResult?u(t,l):c(t,l)};var p=f("base");h("base",function(e,t,o,n,r,i,s){p.apply(this,arguments),a.SearchCellDecorator.apply(this,arguments)}),a.hooks.add("afterInit",n),a.hooks.add("afterUpdateSettings",n)},{browser:24,"helpers/dom/element":47,renderers:117}],115:[function(e,t,o){"use strict";Object.defineProperties(o,{TouchScroll:{get:function(){return w}},__esModule:{value:!0}});var n,r,i,s,a,l,u=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,c=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},d=c.addClass,h=c.removeClass,f=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayEach,p=((s=e("_base"))&&s.__esModule&&s||{default:s}).default,g=((a=e("plugins"))&&a.__esModule&&a||{default:a}).registerPlugin,m=((l=e("helpers/feature"))&&l.__esModule&&l||{default:l}).isTouchSupported,w=function(e){$traceurRuntime.superConstructor(v).call(this,e),this.scrollbars=[],this.clones=[],this.lockedCollection=!1},v=w;$traceurRuntime.createClass(w,{isEnabled:function(){return m()},enablePlugin:function(){var e=this;this.enabled||(this.addHook("afterRender",function(){return e.onAfterRender()}),this.registerEvents(),$traceurRuntime.superGet(this,v.prototype,"enablePlugin").call(this))},updatePlugin:function(){this.lockedCollection=!1,$traceurRuntime.superGet(this,v.prototype,"updatePlugin").call(this)},disablePlugin:function(){$traceurRuntime.superGet(this,v.prototype,"disablePlugin").call(this)},registerEvents:function(){var e=this;this.addHook("beforeTouchScroll",function(){return e.onBeforeTouchScroll()}),this.addHook("afterMomentumScroll",function(){return e.onAfterMomentumScroll()})},onAfterRender:function(){if(!this.lockedCollection){var e=this.hot.view.wt.wtOverlays,t=e.topOverlay,o=e.bottomOverlay,n=e.leftOverlay,r=e.topLeftCornerOverlay,i=e.bottomLeftCornerOverlay;this.lockedCollection=!0,this.scrollbars.length=0,this.scrollbars.push(t),o.clone&&this.scrollbars.push(o),this.scrollbars.push(n),r&&this.scrollbars.push(r),i&&i.clone&&this.scrollbars.push(i),this.clones.length=0,t.needFullRender&&this.clones.push(t.clone.wtTable.holder.parentNode),o.needFullRender&&this.clones.push(o.clone.wtTable.holder.parentNode),n.needFullRender&&this.clones.push(n.clone.wtTable.holder.parentNode),r&&this.clones.push(r.clone.wtTable.holder.parentNode),i&&i.clone&&this.clones.push(i.clone.wtTable.holder.parentNode)}},onBeforeTouchScroll:function(){u.freezeOverlays=!0,f(this.clones,function(e){d(e,"hide-tween")})},onAfterMomentumScroll:function(){var e=this;u.freezeOverlays=!1,f(this.clones,function(e){h(e,"hide-tween"),d(e,"show-tween")}),setTimeout(function(){f(e.clones,function(e){h(e,"show-tween")})},400),f(this.scrollbars,function(e){e.refresh(),e.resetFixedPosition()}),this.hot.view.wt.wtOverlays.syncScrollWithMaster()}},{},p),g("touchScroll",w)},{_base:62,browser:24,"helpers/array":43,"helpers/dom/element":47,"helpers/feature":49,plugins:61}],116:[function(e,t,o){"use strict";function n(){var e=this;void 0===e.getSettings().undo||e.getSettings().undo?e.undoRedo||(e.undoRedo=new f.UndoRedo(e),s(e),e.addHook("beforeKeyDown",r),e.addHook("afterChange",i)):e.undoRedo&&(delete e.undoRedo,a(e),e.removeHook("beforeKeyDown",r),e.removeHook("afterChange",i))}function r(e){var t=this;(e.ctrlKey||e.metaKey)&&!e.altKey&&(89===e.keyCode||e.shiftKey&&90===e.keyCode?(t.undoRedo.redo(),y(e)):90===e.keyCode&&(t.undoRedo.undo(),y(e)))}function i(e,t){var o=this;if("loadData"===t)return o.undoRedo.clear()}function s(e){e.undo=function(){return e.undoRedo.undo()},e.redo=function(){return e.undoRedo.redo()},e.isUndoAvailable=function(){return e.undoRedo.isUndoAvailable()},e.isRedoAvailable=function(){return e.undoRedo.isRedoAvailable()},e.clearUndo=function(){return e.undoRedo.clear()}}function a(e){delete e.undo,delete e.redo,delete e.isUndoAvailable,delete e.isRedoAvailable,delete e.clearUndo}var l,u,c,d,h,f=((l=e("browser"))&&l.__esModule&&l||{default:l}).default,p=((u=e("helpers/array"))&&u.__esModule&&u||{default:u}).arrayMap,g=((c=e("helpers/number"))&&c.__esModule&&c||{default:c}).rangeEach,m=(d=e("helpers/object"))&&d.__esModule&&d||{default:d},w=m.inherit,v=m.deepClone,y=((h=e("helpers/dom/event"))&&h.__esModule&&h||{default:h}).stopImmediatePropagation;f.UndoRedo=function(e){var t=this;this.instance=e,this.doneActions=[],this.undoneActions=[],this.ignoreNewActions=!1,e.addHook("afterChange",function(e,o){e&&"UndoRedo.undo"!==o&&"UndoRedo.redo"!==o&&t.done(new f.UndoRedo.ChangeAction(e))}),e.addHook("afterCreateRow",function(e,o,n){if("UndoRedo.undo"!==n&&"UndoRedo.undo"!==n&&"auto"!==n){var r=new f.UndoRedo.CreateRowAction(e,o);t.done(r)}}),e.addHook("beforeRemoveRow",function(e,o,n,r){if("UndoRedo.undo"!==r&&"UndoRedo.redo"!==r&&"auto"!==r){var i=t.instance.getSourceDataArray();e=(i.length+e)%i.length;var s=v(i.slice(e,e+o));t.done(new f.UndoRedo.RemoveRowAction(e,s))}}),e.addHook("afterCreateCol",function(e,o,n){"UndoRedo.undo"!==n&&"UndoRedo.redo"!==n&&"auto"!==n&&t.done(new f.UndoRedo.CreateColumnAction(e,o))}),e.addHook("beforeRemoveCol",function(o,n,r,i){if("UndoRedo.undo"!==i&&"UndoRedo.redo"!==i&&"auto"!==i){var s=t.instance.getSourceDataArray();o=(t.instance.countCols()+o)%t.instance.countCols();var a=[],l=[],u=[];g(s.length-1,function(t){var r=[],i=s[t];g(o,o+(n-1),function(t){r.push(i[e.runHooks("modifyCol",t)])}),a.push(r)}),g(n-1,function(t){u.push(e.runHooks("modifyCol",o+t))}),Array.isArray(e.getSettings().colHeaders)&&g(n-1,function(t){l.push(e.getSettings().colHeaders[e.runHooks("modifyCol",o+t)]||null)});var c=t.instance.getPlugin("manualColumnMove"),d=c.isEnabled()?c.columnsMapper.__arrayMap:[],h=new f.UndoRedo.RemoveColumnAction(o,u,a,l,d);t.done(h)}
40
+ }),e.addHook("beforeCellAlignment",function(e,o,n,r){var i=new f.UndoRedo.CellAlignmentAction(e,o,n,r);t.done(i)}),e.addHook("beforeFilter",function(e){t.done(new f.UndoRedo.FiltersAction(e))}),e.addHook("beforeRowMove",function(e,o){e!==!1&&t.done(new f.UndoRedo.RowMoveAction(e,o))})},f.UndoRedo.prototype.done=function(e){this.ignoreNewActions||(this.doneActions.push(e),this.undoneActions.length=0)},f.UndoRedo.prototype.undo=function(){if(this.isUndoAvailable()){var e=this.doneActions.pop(),t=v(e),o=this.instance;if(o.runHooks("beforeUndo",t)===!1)return;this.ignoreNewActions=!0;var n=this;e.undo(this.instance,function(){n.ignoreNewActions=!1,n.undoneActions.push(e)}),o.runHooks("afterUndo",t)}},f.UndoRedo.prototype.redo=function(){if(this.isRedoAvailable()){var e=this.undoneActions.pop(),t=v(e),o=this.instance;if(o.runHooks("beforeRedo",t)===!1)return;this.ignoreNewActions=!0;var n=this;e.redo(this.instance,function(){n.ignoreNewActions=!1,n.doneActions.push(e)}),o.runHooks("afterRedo",t)}},f.UndoRedo.prototype.isUndoAvailable=function(){return this.doneActions.length>0},f.UndoRedo.prototype.isRedoAvailable=function(){return this.undoneActions.length>0},f.UndoRedo.prototype.clear=function(){this.doneActions.length=0,this.undoneActions.length=0},f.UndoRedo.Action=function(){},f.UndoRedo.Action.prototype.undo=function(){},f.UndoRedo.Action.prototype.redo=function(){},f.UndoRedo.ChangeAction=function(e){this.changes=e,this.actionType="change"},w(f.UndoRedo.ChangeAction,f.UndoRedo.Action),f.UndoRedo.ChangeAction.prototype.undo=function(e,t){for(var o=v(this.changes),n=e.countEmptyRows(!0),r=e.countEmptyCols(!0),i=0,s=o.length;i<s;i++)o[i].splice(3,1);e.addHookOnce("afterChange",t),e.setDataAtRowProp(o,null,null,"UndoRedo.undo");for(var a=0,l=o.length;a<l;a++)e.getSettings().minSpareRows&&o[a][0]+1+e.getSettings().minSpareRows===e.countRows()&&n==e.getSettings().minSpareRows&&(e.alter("remove_row",parseInt(o[a][0]+1,10),e.getSettings().minSpareRows),e.undoRedo.doneActions.pop()),e.getSettings().minSpareCols&&o[a][1]+1+e.getSettings().minSpareCols===e.countCols()&&r==e.getSettings().minSpareCols&&(e.alter("remove_col",parseInt(o[a][1]+1,10),e.getSettings().minSpareCols),e.undoRedo.doneActions.pop())},f.UndoRedo.ChangeAction.prototype.redo=function(e,t){for(var o=v(this.changes),n=0,r=o.length;n<r;n++)o[n].splice(2,1);e.addHookOnce("afterChange",t),e.setDataAtRowProp(o,null,null,"UndoRedo.redo")},f.UndoRedo.CreateRowAction=function(e,t){this.index=e,this.amount=t,this.actionType="insert_row"},w(f.UndoRedo.CreateRowAction,f.UndoRedo.Action),f.UndoRedo.CreateRowAction.prototype.undo=function(e,t){var o=e.countRows(),n=e.getSettings().minSpareRows;this.index>=o&&this.index-n<o&&(this.index-=n),e.addHookOnce("afterRemoveRow",t),e.alter("remove_row",this.index,this.amount,"UndoRedo.undo")},f.UndoRedo.CreateRowAction.prototype.redo=function(e,t){e.addHookOnce("afterCreateRow",t),e.alter("insert_row",this.index,this.amount,"UndoRedo.redo")},f.UndoRedo.RemoveRowAction=function(e,t){this.index=e,this.data=t,this.actionType="remove_row"},w(f.UndoRedo.RemoveRowAction,f.UndoRedo.Action),f.UndoRedo.RemoveRowAction.prototype.undo=function(e,t){e.alter("insert_row",this.index,this.data.length,"UndoRedo.undo"),e.addHookOnce("afterRender",t),e.populateFromArray(this.index,0,this.data,void 0,void 0,"UndoRedo.undo")},f.UndoRedo.RemoveRowAction.prototype.redo=function(e,t){e.addHookOnce("afterRemoveRow",t),e.alter("remove_row",this.index,this.data.length,"UndoRedo.redo")},f.UndoRedo.CreateColumnAction=function(e,t){this.index=e,this.amount=t,this.actionType="insert_col"},w(f.UndoRedo.CreateColumnAction,f.UndoRedo.Action),f.UndoRedo.CreateColumnAction.prototype.undo=function(e,t){e.addHookOnce("afterRemoveCol",t),e.alter("remove_col",this.index,this.amount,"UndoRedo.undo")},f.UndoRedo.CreateColumnAction.prototype.redo=function(e,t){e.addHookOnce("afterCreateCol",t),e.alter("insert_col",this.index,this.amount,"UndoRedo.redo")},f.UndoRedo.RemoveColumnAction=function(e,t,o,n,r){this.index=e,this.indexes=t,this.data=o,this.amount=this.data[0].length,this.headers=n,this.columnPositions=r.slice(0),this.actionType="remove_col"},w(f.UndoRedo.RemoveColumnAction,f.UndoRedo.Action),f.UndoRedo.RemoveColumnAction.prototype.undo=function(e,t){var o,n=this,r=this.indexes.slice(0).sort(),i=function(e,t,o){return o[n.indexes.indexOf(r[t])]},s=[];g(this.data.length-1,function(e){s[e]=p(n.data[e],i)});var a=[];a=p(this.headers,i);var l=[];f.hooks.run(e,"beforeCreateCol",this.indexes[0],this.indexes[this.indexes.length-1],"UndoRedo.undo"),g(this.data.length-1,function(t){o=e.getSourceDataAtRow(t),g(r.length-1,function(e){o.splice(r[e],0,s[t][e]),l.push([t,r[e],null,s[t][e]])})}),e.getPlugin("formulas")&&e.getPlugin("formulas").onAfterSetDataAtCell(l),void 0!==this.headers&&g(a.length-1,function(t){e.getSettings().colHeaders.splice(r[t],0,a[t])}),e.getPlugin("manualColumnMove")&&(e.getPlugin("manualColumnMove").columnsMapper.__arrayMap=this.columnPositions),e.addHookOnce("afterRender",t),f.hooks.run(e,"afterCreateCol",this.indexes[0],this.indexes[this.indexes.length-1],"UndoRedo.undo"),e.getPlugin("formulas")&&e.getPlugin("formulas").recalculateFull(),e.render()},f.UndoRedo.RemoveColumnAction.prototype.redo=function(e,t){e.addHookOnce("afterRemoveCol",t),e.alter("remove_col",this.index,this.amount,"UndoRedo.redo")},f.UndoRedo.CellAlignmentAction=function(e,t,o,n){this.stateBefore=e,this.range=t,this.type=o,this.alignment=n},f.UndoRedo.CellAlignmentAction.prototype.undo=function(e,t){if(e.getPlugin("contextMenu").isEnabled()){for(var o=this.range.from.row;o<=this.range.to.row;o++)for(var n=this.range.from.col;n<=this.range.to.col;n++)e.setCellMeta(o,n,"className",this.stateBefore[o][n]||" htLeft");e.addHookOnce("afterRender",t),e.render()}},f.UndoRedo.CellAlignmentAction.prototype.redo=function(e,t){e.getPlugin("contextMenu").isEnabled()&&(e.selectCell(this.range.from.row,this.range.from.col,this.range.to.row,this.range.to.col),e.getPlugin("contextMenu").executeCommand("alignment:"+this.alignment.replace("ht","").toLowerCase()),e.addHookOnce("afterRender",t),e.render())},f.UndoRedo.FiltersAction=function(e){this.formulaStacks=e,this.actionType="filter"},w(f.UndoRedo.FiltersAction,f.UndoRedo.Action),f.UndoRedo.FiltersAction.prototype.undo=function(e,t){var o=e.getPlugin("filters");e.addHookOnce("afterRender",t),o.formulaCollection.importAllFormulas(this.formulaStacks.slice(0,this.formulaStacks.length-1)),o.filter()},f.UndoRedo.FiltersAction.prototype.redo=function(e,t){var o=e.getPlugin("filters");e.addHookOnce("afterRender",t),o.formulaCollection.importAllFormulas(this.formulaStacks),o.filter()},f.UndoRedo.RowMoveAction=function(e,t){this.rows=e.slice(),this.target=t},w(f.UndoRedo.RowMoveAction,f.UndoRedo.Action),f.UndoRedo.RowMoveAction.prototype.undo=function(e,t){var o=e.getPlugin("manualRowMove");e.addHookOnce("afterRender",t);for(var n=this.rows[0]<this.target?-1*this.rows.length:0,r=this.rows[0]>this.target?this.rows[0]+this.rows.length:this.rows[0],i=[],s=this.rows.length+n,a=n;a<s;a++)i.push(this.target+a);o.moveRows(i.slice(),r),e.render(),e.selection.setRangeStartOnly(new WalkontableCellCoords(this.rows[0],0)),e.selection.setRangeEnd(new WalkontableCellCoords(this.rows[this.rows.length-1],e.countCols()-1))},f.UndoRedo.RowMoveAction.prototype.redo=function(e,t){var o=e.getPlugin("manualRowMove");e.addHookOnce("afterRender",t),o.moveRows(this.rows.slice(),this.target),e.render();var n=this.rows[0]<this.target?this.target-this.rows.length:this.target;e.selection.setRangeStartOnly(new WalkontableCellCoords(n,0)),e.selection.setRangeEnd(new WalkontableCellCoords(n+this.rows.length-1,e.countCols()-1))},f.hooks.add("afterInit",n),f.hooks.add("afterUpdateSettings",n),f.hooks.register("beforeUndo"),f.hooks.register("afterUndo"),f.hooks.register("beforeRedo"),f.hooks.register("afterRedo")},{browser:24,"helpers/array":43,"helpers/dom/event":48,"helpers/number":52,"helpers/object":53}],117:[function(e,t,o){"use strict";function n(e,t){var o;c[e]=t,o=u(e)+"Renderer",l.renderers[o]=t,l[o]=t,"base"===e&&(l.renderers.cellDecorator=t)}function r(e){if("function"==typeof e)return e;if("string"!=typeof e)throw Error('Only strings and functions can be passed as "renderer" parameter');if(!(e in c))throw Error('No editor registered under name "'+e+'"');return c[e]}function i(e){return e in c}Object.defineProperties(o,{registerRenderer:{get:function(){return n}},getRenderer:{get:function(){return r}},hasRenderer:{get:function(){return i}},__esModule:{value:!0}});var s,a,l=((s=e("browser"))&&s.__esModule&&s||{default:s}).default,u=((a=e("helpers/string"))&&a.__esModule&&a||{default:a}).toUpperCaseFirst,c={};l.renderers=l.renderers||{},l.renderers.registerRenderer=n,l.renderers.getRenderer=r},{browser:24,"helpers/string":55}],118:[function(e,t,o){"use strict";function n(e,t,o,n,r,i,s){s.className&&(t.className?t.className=t.className+" "+s.className:t.className=s.className),s.readOnly&&a(t,s.readOnlyCellClassName),s.valid===!1&&s.invalidCellClassName?a(t,s.invalidCellClassName):l(t,s.invalidCellClassName),s.wordWrap===!1&&s.noWordWrapClassName&&a(t,s.noWordWrapClassName),!i&&s.placeholder&&a(t,s.placeholderCellClassName)}Object.defineProperties(o,{cellDecorator:{get:function(){return n}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},a=s.addClass,l=s.removeClass;(0,((i=e("renderers"))&&i.__esModule&&i||{default:i}).registerRenderer)("base",n)},{"helpers/dom/element":47,renderers:117}],119:[function(e,t,o){"use strict";function n(e,t,o,n,r,i,s){var a=(m.cloneNode(!0),w.cloneNode(!0));if(s.allowHtml?f("html").apply(this,arguments):f("text").apply(this,arguments),t.appendChild(a),u(t,"htAutocomplete"),t.firstChild||t.appendChild(document.createTextNode(String.fromCharCode(160))),!e.acArrowListener){var l=d(e);e.acArrowListener=function(r){c(r.target,"htAutocompleteArrow")&&e.view.wt.getSetting("onCellDblClick",null,new g(o,n),t)},l.addEventListener(e.rootElement,"mousedown",e.acArrowListener),e.addHookOnce("afterDestroy",function(){l.destroy()})}}Object.defineProperties(o,{autocompleteRenderer:{get:function(){return n}},__esModule:{value:!0}});var r,i,s,a,l=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},u=l.addClass,c=l.hasClass,d=(l.empty,((i=e("eventManager"))&&i.__esModule&&i||{default:i}).eventManager),h=(s=e("renderers"))&&s.__esModule&&s||{default:s},f=h.getRenderer,p=h.registerRenderer,g=((a=e("3rdparty/walkontable/src/cell/coords"))&&a.__esModule&&a||{default:a}).WalkontableCellCoords,m=document.createElement("DIV");m.className="htAutocompleteWrapper";var w=document.createElement("DIV");w.className="htAutocompleteArrow",w.appendChild(document.createTextNode(String.fromCharCode(9660)));p("autocomplete",n)},{"3rdparty/walkontable/src/cell/coords":6,eventManager:42,"helpers/dom/element":47,renderers:117}],120:[function(e,t,o){"use strict";function n(e,t,o,n,a,l,u){function c(e){var t=O(E,e.keyCode);t("SPACE|ENTER|DELETE|BACKSPACE")&&!x(e)&&h(function(){k(e),e.preventDefault()}),t("SPACE|ENTER")&&d(),t("DELETE|BACKSPACE")&&d(!0)}function d(){var t=void 0!==arguments[0]&&arguments[0],o=e.getSelectedRange();if(o){for(var n=o.getTopLeftCorner(),r=o.getBottomRightCorner(),i=[],s=n.row;s<=r.row;s+=1)for(var a=n.col;a<=r.col;a+=1){var l=e.getCellMeta(s,a);if("checkbox"!==l.type)return;if(l.readOnly!==!0){void 0===l.checkedTemplate&&(l.checkedTemplate=!0),void 0===l.uncheckedTemplate&&(l.uncheckedTemplate=!1);var u=e.getDataAtCell(s,a);t===!1?u===l.checkedTemplate?i.push([s,a,l.uncheckedTemplate]):[l.uncheckedTemplate,null,void 0].indexOf(u)!==-1&&i.push([s,a,l.checkedTemplate]):i.push([s,a,l.uncheckedTemplate])}}i.length>0&&e.setDataAtCell(i)}}function h(t){var o=e.getSelectedRange();if(o)for(var n=o.getTopLeftCorner(),r=o.getBottomRightCorner(),i=n.row;i<=r.row;i++)for(var s=n.col;s<=r.col;s++){var a=e.getCellMeta(i,s);if("checkbox"!==a.type)return;var l=e.getCell(i,s);if(null==l)t(i,s,a);else{var u=l.querySelectorAll("input[type=checkbox]");u.length>0&&!a.readOnly&&t(u)}}}M("base").apply(this,arguments);var f=(r(e),i()),p=u.label,g=!1;if(void 0===u.checkedTemplate&&(u.checkedTemplate=!0),void 0===u.uncheckedTemplate&&(u.uncheckedTemplate=!1),y(t),l===u.checkedTemplate||C(l,u.checkedTemplate)?f.checked=!0:l===u.uncheckedTemplate||C(l,u.uncheckedTemplate)?f.checked=!1:null===l?b(f,"noValue"):(f.style.display="none",b(f,A),g=!0),f.setAttribute("data-row",o),f.setAttribute("data-col",n),!g&&p){var m="";p.value?m="function"==typeof p.value?p.value.call(this,o,n,a,l):p.value:p.property&&(m=e.getDataAtRowProp(o,p.property));var w=s(m);"before"===p.position?w.appendChild(f):w.insertBefore(f,w.firstChild),f=w}t.appendChild(f),g&&t.appendChild(document.createTextNode("#bad-value#")),H.has(e)||(H.set(e,!0),e.addHook("beforeKeyDown",c))}function r(e){var t=D.get(e);return t||(t=new _(e),t.addEventListener(e.rootElement,"click",function(t){return l(t,e)}),t.addEventListener(e.rootElement,"mouseup",function(t){return a(t,e)}),t.addEventListener(e.rootElement,"change",function(t){return u(t,e)}),D.set(e,t)),t}function i(){var e=document.createElement("input");return e.className="htCheckboxRendererInput",e.type="checkbox",e.setAttribute("autocomplete","off"),e.setAttribute("tabindex","-1"),e.cloneNode(!1)}function s(e){var t=document.createElement("label");return t.className="htCheckboxRendererLabel",t.appendChild(document.createTextNode(e)),t.cloneNode(!0)}function a(e,t){c(e.target)&&setTimeout(t.listen,10)}function l(e,t){if(!c(e.target))return!1;var o=parseInt(e.target.getAttribute("data-row"),10),n=parseInt(e.target.getAttribute("data-col"),10);t.getCellMeta(o,n).readOnly&&e.preventDefault()}function u(e,t){if(!c(e.target))return!1;var o=parseInt(e.target.getAttribute("data-row"),10),n=parseInt(e.target.getAttribute("data-col"),10),r=t.getCellMeta(o,n);if(!r.readOnly){var i=null;i=e.target.checked?void 0===r.checkedTemplate||r.checkedTemplate:void 0!==r.uncheckedTemplate&&r.uncheckedTemplate,t.setDataAtCell(o,n,i)}}function c(e){return"INPUT"===e.tagName&&"checkbox"===e.getAttribute("type")}Object.defineProperties(o,{checkboxRenderer:{get:function(){return n}},__esModule:{value:!0}});var d,h,f,p,g,m,w,v=(d=e("helpers/dom/element"))&&d.__esModule&&d||{default:d},y=v.empty,b=v.addClass,C=(v.hasClass,((h=e("helpers/string"))&&h.__esModule&&h||{default:h}).equalsIgnoreCase),_=((f=e("eventManager"))&&f.__esModule&&f||{default:f}).EventManager,R=(p=e("renderers"))&&p.__esModule&&p||{default:p},M=R.getRenderer,S=R.registerRenderer,E=((g=e("helpers/unicode"))&&g.__esModule&&g||{default:g}).isKey,O=((m=e("helpers/function"))&&m.__esModule&&m||{default:m}).partial,T=(w=e("helpers/dom/event"))&&w.__esModule&&w||{default:w},k=T.stopImmediatePropagation,x=T.isImmediatePropagationStopped,H=new WeakMap,D=new WeakMap,A="htBadValue";S("checkbox",n)},{eventManager:42,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/function":50,"helpers/string":55,"helpers/unicode":56,renderers:117}],121:[function(e,t,o){"use strict";function n(e,t,o,n,r,i,a){l("base").apply(this,arguments),null!==i&&void 0!==i||(i=""),s(t,i)}Object.defineProperties(o,{htmlRenderer:{get:function(){return n}},__esModule:{value:!0}});var r,i,s=((r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r}).fastInnerHTML,a=(i=e("renderers"))&&i.__esModule&&i||{default:i},l=a.getRenderer;(0,a.registerRenderer)("html",n)},{"helpers/dom/element":47,renderers:117}],122:[function(e,t,o){"use strict";function n(e,t,o,n,r,i,s){if(d(i)){void 0!==s.language&&a.culture(s.language),i=a(i).format(s.format||"0");var l=s.className||"",c=l.length?l.split(" "):[];c.indexOf("htLeft")<0&&c.indexOf("htCenter")<0&&c.indexOf("htRight")<0&&c.indexOf("htJustify")<0&&c.push("htRight"),c.indexOf("htNumeric")<0&&c.push("htNumeric"),s.className=c.join(" ")}u("text")(e,t,o,n,r,i,s)}Object.defineProperties(o,{numericRenderer:{get:function(){return n}},__esModule:{value:!0}});var r,i,s,a=((r=e("numbro"))&&r.__esModule&&r||{default:r}).default,l=(i=e("renderers"))&&i.__esModule&&i||{default:i},u=l.getRenderer,c=l.registerRenderer,d=((s=e("helpers/number"))&&s.__esModule&&s||{default:s}).isNumeric;c("numeric",n)},{"helpers/number":52,numbro:"numbro",renderers:117}],123:[function(e,t,o){"use strict";function n(e,t,o,n,r,i,a){l("text").apply(this,arguments),i=t.innerHTML;var u,c=a.hashLength||i.length,d=a.hashSymbol||"*";for(u="";u.split(d).length-1<c;u+=d);s(t,u)}Object.defineProperties(o,{passwordRenderer:{get:function(){return n}},__esModule:{value:!0}});var r,i,s=((r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r}).fastInnerHTML,a=(i=e("renderers"))&&i.__esModule&&i||{default:i},l=a.getRenderer;(0,a.registerRenderer)("password",n)},{"helpers/dom/element":47,renderers:117}],124:[function(e,t,o){"use strict";function n(e,t,o,n,r,i,s){h("base").apply(this,arguments),!i&&s.placeholder&&(i=s.placeholder);var a=c(i);if(e.getSettings().trimWhitespace||(a=a.replace(/ /g,String.fromCharCode(160))),s.rendererTemplate){l(t);var d=document.createElement("TEMPLATE");d.setAttribute("bind","{{}}"),d.innerHTML=s.rendererTemplate,HTMLTemplateElement.decorate(d),d.model=e.getSourceDataAtRow(o),t.appendChild(d)}else u(t,a)}Object.defineProperties(o,{textRenderer:{get:function(){return n}},__esModule:{value:!0}});var r,i,s,a=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},l=a.empty,u=a.fastInnerText,c=((i=e("helpers/mixed"))&&i.__esModule&&i||{default:i}).stringify,d=(s=e("renderers"))&&s.__esModule&&s||{default:s},h=d.getRenderer;(0,d.registerRenderer)("text",n)},{"helpers/dom/element":47,"helpers/mixed":51,renderers:117}],125:[function(e,t,o){!function(e){"use strict";function t(e){return{configurable:!0,enumerable:!1,value:e,writable:!0}}function o(){return"__$"+Math.floor(1e9*Math.random())+"$"+ ++D+"$__"}function n(e){return I[e]}function r(){var e=o();return I[e]=!0,e}function i(e){return"object"==typeof e&&e instanceof l}function s(e){return i(e)?"symbol":typeof e}function a(e){var t=new l(e);if(!(this instanceof a))return t;throw new TypeError("Symbol cannot be new'ed")}function l(e){var t=o();S(this,L,{value:this}),S(this,A,{value:t}),S(this,P,{value:e}),c(this),N[t]=this}function u(e){var t=e[W];return t&&t.self===e?t:x(e)?(V.hash.value=B++,V.self.value=e,j.value=R(null,V),S(e,W,j),j.value):void 0}function c(e){return u(e),E.apply(this,arguments)}function d(e){return N[e]||I[e]}function h(e){return i(e)?e[A]:e}function f(e){for(var t=[],o=T(e),n=0;n<o.length;n++){var r=N[o[n]];r&&t.push(r)}return t}function p(t){return e.traceur&&e.traceur.options[t]}function g(e){for(var t=1;t<arguments.length;t++)for(var o=T(arguments[t]),n=0;n<o.length;n++){var r=o[n];d(r)||function(t,o){S(e,o,{get:function(){return t[o]},enumerable:!0})}(arguments[t],o[n])}return e}function m(e){return null!=e&&("object"==typeof e||"function"==typeof e)}function w(e){if(null==e)throw _();return C(e)}function v(e){if(null==e)throw new TypeError("Value cannot be converted to an Object");return e}function y(e,t){e.Symbol||(e.Symbol=t,Object.getOwnPropertySymbols=f),e.Symbol.iterator||(e.Symbol.iterator=t("Symbol.iterator"))}function b(e){y(e,a),e.Reflect=e.Reflect||{},e.Reflect.global=e.Reflect.global||e}if(!e.$traceurRuntime){var C=Object,_=TypeError,R=C.create,M=C.defineProperties,S=C.defineProperty,E=C.freeze,O=C.getOwnPropertyDescriptor,T=C.getOwnPropertyNames,k=C.keys,x=Object.isExtensible,H=t,D=0,A=o(),P=o(),L=o(),N=R(null),I=R(null);S(a.prototype,"constructor",t(a)),S(a.prototype,"toString",H(function(){var e=this[L];if(!p("symbols"))return e[A];if(!e)throw TypeError("Conversion from symbol to string");var t=e[P];return void 0===t&&(t=""),"Symbol("+t+")"})),S(a.prototype,"valueOf",H(function(){var e=this[L];if(!e)throw TypeError("Conversion from symbol to string");return p("symbols")?e:e[A]})),S(l.prototype,"constructor",t(a)),S(l.prototype,"toString",{value:a.prototype.toString,enumerable:!1}),S(l.prototype,"valueOf",{value:a.prototype.valueOf,enumerable:!1});var W=r(),j={value:void 0},V={hash:{value:void 0},self:{value:void 0}},B=0;c(l.prototype),b(e),e.$traceurRuntime={checkObjectCoercible:v,createPrivateName:r,defineProperties:M,defineProperty:S,exportStar:g,getOwnHashObject:u,getOwnPropertyDescriptor:O,getOwnPropertyNames:T,isObject:m,isPrivateName:n,isSymbolString:d,keys:k,setupGlobals:b,toObject:w,toProperty:h,typeof:s}}}(window),function(){"use strict";function e(){for(var e,o=[],n=0,r=0;r<arguments.length;r++){var i=$traceurRuntime.checkObjectCoercible(arguments[r]);"function"!=typeof i[t(Symbol.iterator)]&&(i[t(Symbol.iterator)]=function(){var e=this,t=e.length,o=0;return{next:function(){var n={done:!0};return o<t&&(n.done=!1,n.value=e[o],++o),n}}});for(var s=i[t(Symbol.iterator)]();!(e=s.next()).done;)o[n++]=e.value}return o}var t=$traceurRuntime.toProperty;$traceurRuntime.spread=e}(),function(){"use strict";function e(e,t){var o=g(e);do{var n=p(o,t);if(n)return n;o=g(o)}while(o)}function t(e){return e.__proto__}function o(e,t,o,r){return n(e,t,o).apply(e,r)}function n(t,o,n){var r=e(o,n);if(r)return r.get?r.get.call(t):r.value}function r(t,o,n,r){var i=e(o,n);if(i&&i.set)return i.set.call(t,r),r;throw c("super has no setter '"+n+"'.")}function i(e){for(var t={},o=v(e),n=0;n<o.length;n++){var r=o[n];t[r]=p(e,r)}for(var i=y(e),n=0;n<i.length;n++){var s=i[n];t[m(s)]=p(e,m(s))}return t}function s(e,t,o,n){return f(t,"constructor",{value:e,configurable:!0,enumerable:!1,writable:!0}),arguments.length>3?("function"==typeof n&&(e.__proto__=n),e.prototype=d(a(n),i(t))):e.prototype=t,f(e,"prototype",{configurable:!1,writable:!1}),h(e,i(o))}function a(e){if("function"==typeof e){var t=e.prototype;if(u(t)===t||null===t)return e.prototype;throw new c("super prototype must be an Object or null")}if(null===e)return null;throw new c("Super expression must either be null or a function, not "+typeof e+".")}function l(e,t,n){null!==g(t)&&o(e,t,"constructor",n)}var u=Object,c=TypeError,d=u.create,h=$traceurRuntime.defineProperties,f=$traceurRuntime.defineProperty,p=$traceurRuntime.getOwnPropertyDescriptor,g=Object.getPrototypeOf,m=$traceurRuntime.toProperty,w=Object,v=w.getOwnPropertyNames,y=w.getOwnPropertySymbols;$traceurRuntime.createClass=s,$traceurRuntime.defaultSuperCall=l,$traceurRuntime.superCall=o,$traceurRuntime.superConstructor=t,$traceurRuntime.superGet=n,$traceurRuntime.superSet=r}()},{}],126:[function(e,t,o){"use strict";function n(e){var t=this,o=this;this.eventManager=R(e),this.instance=e,this.settings=e.getSettings(),this.selectionMouseDown=!1;var n=e.rootElement.getAttribute("style");n&&e.rootElement.setAttribute("data-originalstyle",n),p(e.rootElement,"handsontable");var r=document.createElement("TABLE");p(r,"htCore"),e.getSettings().tableClassName&&p(r,e.getSettings().tableClassName),this.THEAD=document.createElement("THEAD"),r.appendChild(this.THEAD),this.TBODY=document.createElement("TBODY"),r.appendChild(this.TBODY),e.table=r,e.container.insertBefore(r,e.container.firstChild),this.eventManager.addEventListener(e.rootElement,"mousedown",function(e){this.selectionMouseDown=!0,o.isTextSelectionAllowed(e.target)||(s(),e.preventDefault(),window.focus())}),this.eventManager.addEventListener(e.rootElement,"mouseup",function(e){this.selectionMouseDown=!1}),this.eventManager.addEventListener(e.rootElement,"mousemove",function(e){this.selectionMouseDown&&!o.isTextSelectionAllowed(e.target)&&(s(),e.preventDefault())}),this.eventManager.addEventListener(document.documentElement,"keyup",function(t){e.selection.isInProgress()&&!t.shiftKey&&e.selection.finish()});var i;this.isMouseDown=function(){return i},this.eventManager.addEventListener(document.documentElement,"mouseup",function(t){e.selection.isInProgress()&&1===t.which&&e.selection.finish(),i=!1,_(document.activeElement)&&e.unlisten()}),this.eventManager.addEventListener(document.documentElement,"mousedown",function(t){var n=t.target,r=t.target,s=t.x||t.clientX,a=t.y||t.clientY;if(!i&&e.rootElement){if(r===e.view.wt.wtTable.holder){var l=v();if(document.elementFromPoint(s+l,a)!==e.view.wt.wtTable.holder||document.elementFromPoint(s,a+l)!==e.view.wt.wtTable.holder)return}else for(;r!==document.documentElement;){if(null===r){if(t.isTargetWebComponent)break;return}if(r===e.rootElement)return;r=r.parentNode}("function"==typeof o.settings.outsideClickDeselects?o.settings.outsideClickDeselects(n):o.settings.outsideClickDeselects)?e.deselectCell():e.destroyEditor()}}),this.eventManager.addEventListener(r,"selectstart",function(e){o.settings.fragmentSelection||C(e.target)||e.preventDefault()});var s=function(){window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty()},a=[new x({className:"current",border:{width:2,color:"#5292F7",cornerVisible:function(){return o.settings.fillHandle&&!o.isCellEdited()&&!e.selection.isMultiple()},multipleSelectionHandlesVisible:function(){return!o.isCellEdited()&&!e.selection.isMultiple()}}}),new x({className:"area",border:{width:1,color:"#89AFF9",cornerVisible:function(){return o.settings.fillHandle&&!o.isCellEdited()&&e.selection.isMultiple()},multipleSelectionHandlesVisible:function(){return!o.isCellEdited()&&e.selection.isMultiple()}}}),new x({className:"highlight",highlightHeaderClassName:o.settings.currentHeaderClassName,highlightRowClassName:o.settings.currentRowClassName,highlightColumnClassName:o.settings.currentColClassName}),new x({className:"fill",border:{width:1,color:"red"}})];a.current=a[0],a.area=a[1],a.highlight=a[2],a.fill=a[3];var l={debug:function(){return o.settings.debug},externalRowCalculator:this.instance.getPlugin("autoRowSize")&&this.instance.getPlugin("autoRowSize").isEnabled(),table:r,preventOverflow:function(){return t.settings.preventOverflow},stretchH:function(){return o.settings.stretchH},data:e.getDataAtCell,totalRows:function(){return e.countRows()},totalColumns:function(){return e.countCols()},fixedColumnsLeft:function(){return o.settings.fixedColumnsLeft},fixedRowsTop:function(){return o.settings.fixedRowsTop},fixedRowsBottom:function(){return o.settings.fixedRowsBottom},minSpareRows:function(){return o.settings.minSpareRows},renderAllRows:o.settings.renderAllRows,rowHeaders:function(){var t=[];return e.hasRowHeaders()&&t.push(function(e,t){o.appendRowHeader(e,t)}),h.hooks.run(e,"afterGetRowHeaderRenderers",t),t},columnHeaders:function(){var t=[];return e.hasColHeaders()&&t.push(function(e,t){o.appendColHeader(e,t)}),h.hooks.run(e,"afterGetColumnHeaderRenderers",t),t},columnWidth:e.getColWidth,rowHeight:e.getRowHeight,cellRenderer:function(e,t,n){var r=o.instance.getCellMeta(e,t),i=o.instance.colToProp(t),s=o.instance.getDataAtRowProp(e,i);o.instance.hasHook("beforeValueRender")&&(s=o.instance.runHooks("beforeValueRender",s)),o.instance.runHooks("beforeRenderer",n,e,t,i,s,r),o.instance.getCellRenderer(r)(o.instance,n,e,t,i,s,r),o.instance.runHooks("afterRenderer",n,e,t,i,s,r)},selections:a,hideBorderOnMouseDownOver:function(){return o.settings.fragmentSelection},onCellMouseDown:function(t,n,r,s){var a={row:!1,column:!1,cells:!1};if(e.listen(),o.activeWt=s,i=!0,h.hooks.run(e,"beforeOnCellMouseDown",t,n,r,a),!E(t)){var l=e.getSelectedRange(),u=e.selection,c=u.selectedHeader;if(t.shiftKey&&l)n.row>=0&&n.col>=0&&!a.cells?(u.setSelectedHeaders(!1,!1),u.setRangeEnd(n)):(c.cols||c.rows)&&n.row>=0&&n.col>=0&&!a.cells?(u.setSelectedHeaders(!1,!1),u.setRangeEnd(new k(n.row,n.col))):c.cols&&n.row<0&&!a.column?u.setRangeEnd(new k(l.to.row,n.col)):c.rows&&n.col<0&&!a.row?u.setRangeEnd(new k(n.row,l.to.col)):(!c.cols&&!c.rows&&n.col<0||c.cols&&n.col<0)&&!a.row?(u.setSelectedHeaders(!0,!1),u.setRangeStartOnly(new k(l.from.row,0)),u.setRangeEnd(new k(n.row,e.countCols()-1))):(!c.cols&&!c.rows&&n.row<0||c.rows&&n.row<0)&&!a.column&&(u.setSelectedHeaders(!1,!0),u.setRangeStartOnly(new k(0,l.from.col)),u.setRangeEnd(new k(e.countRows()-1,n.col)));else{var d=!0;if(l){var f=l,p=f.from,g=f.to,m=!u.inInSelection(n);if(n.row<0&&c.cols){var w=Math.min(p.col,g.col),v=Math.max(p.col,g.col);d=n.col<w||n.col>v}else if(n.col<0&&c.rows){var y=Math.min(p.row,g.row),b=Math.max(p.row,g.row);d=n.row<y||n.row>b}else d=m}var C=O(t),_=T(t)||"touchstart"===t.type;n.row<0&&n.col>=0&&!a.column?(u.setSelectedHeaders(!1,!0),(_||C&&d)&&(u.setRangeStartOnly(new k(0,n.col)),u.setRangeEnd(new k(Math.max(e.countRows()-1,0),n.col),!1))):n.col<0&&n.row>=0&&!a.row?(u.setSelectedHeaders(!0,!1),(_||C&&d)&&(u.setRangeStartOnly(new k(n.row,0)),u.setRangeEnd(new k(n.row,Math.max(e.countCols()-1,0)),!1))):n.col>=0&&n.row>=0&&!a.cells?(_||C&&d)&&(u.setSelectedHeaders(!1,!1),u.setRangeStart(n)):n.col<0&&n.row<0&&(n.row=0,n.col=0,u.setSelectedHeaders(!1,!1,!0),u.setRangeStart(n))}h.hooks.run(e,"afterOnCellMouseDown",t,n,r),o.activeWt=o.wt}},onCellMouseOut:function(t,n,r,i){o.activeWt=i,h.hooks.run(e,"beforeOnCellMouseOut",t,n,r),E(t)||(h.hooks.run(e,"afterOnCellMouseOut",t,n,r),o.activeWt=o.wt)},onCellMouseOver:function(t,n,r,s){var a={row:!1,column:!1,cell:!1};o.activeWt=s,h.hooks.run(e,"beforeOnCellMouseOver",t,n,r,a),E(t)||(0===t.button&&i&&(n.row>=0&&n.col,e.selection.selectedHeader.cols&&!a.column?e.selection.setRangeEnd(new k(e.countRows()-1,n.col),!1):e.selection.selectedHeader.rows&&!a.row?e.selection.setRangeEnd(new k(n.row,e.countCols()-1),!1):a.cell||e.selection.setRangeEnd(n)),h.hooks.run(e,"afterOnCellMouseOver",t,n,r),o.activeWt=o.wt)},onCellMouseUp:function(t,n,r,i){o.activeWt=i,h.hooks.run(e,"beforeOnCellMouseUp",t,n,r),h.hooks.run(e,"afterOnCellMouseUp",t,n,r),o.activeWt=o.wt},onCellCornerMouseDown:function(t){t.preventDefault(),h.hooks.run(e,"afterOnCellCornerMouseDown",t)},onCellCornerDblClick:function(t){t.preventDefault(),h.hooks.run(e,"afterOnCellCornerDblClick",t)},beforeDraw:function(e,t){o.beforeRender(e,t)},onDraw:function(e){o.onDraw(e)},onScrollVertically:function(){e.runHooks("afterScrollVertically")},onScrollHorizontally:function(){e.runHooks("afterScrollHorizontally")},onBeforeDrawBorders:function(t,o){e.runHooks("beforeDrawBorders",t,o)},onBeforeTouchScroll:function(){e.runHooks("beforeTouchScroll")},onAfterMomentumScroll:function(){e.runHooks("afterMomentumScroll")},onBeforeStretchingColumnWidth:function(t,o){return e.runHooks("beforeStretchingColumnWidth",t,o)},onModifyRowHeaderWidth:function(t){return e.runHooks("modifyRowHeaderWidth",t)},viewportRowCalculatorOverride:function(t){var n=e.countRows(),r=o.settings.viewportRowRenderingOffset;if("auto"===r&&o.settings.fixedRowsTop&&(r=10),"number"==typeof r&&(t.startRow=Math.max(t.startRow-r,0),t.endRow=Math.min(t.endRow+r,n-1)),"auto"===r){var i=t.startRow+t.endRow-t.startRow,s=Math.ceil(i/n*12);t.startRow=Math.max(t.startRow-s,0),t.endRow=Math.min(t.endRow+s,n-1)}e.runHooks("afterViewportRowCalculatorOverride",t)},viewportColumnCalculatorOverride:function(t){var n=e.countCols(),r=o.settings.viewportColumnRenderingOffset;if("auto"===r&&o.settings.fixedColumnsLeft&&(r=10),"number"==typeof r&&(t.startColumn=Math.max(t.startColumn-r,0),t.endColumn=Math.min(t.endColumn+r,n-1)),"auto"===r){var i=t.startColumn+t.endColumn-t.startColumn,s=Math.ceil(i/n*12);t.startRow=Math.max(t.startColumn-s,0),t.endColumn=Math.min(t.endColumn+s,n-1)}e.runHooks("afterViewportColumnCalculatorOverride",t)},rowHeaderWidth:function(){return o.settings.rowHeaderWidth},columnHeaderHeight:function(){var t=e.runHooks("modifyColumnHeaderHeight");return o.settings.columnHeaderHeight||t}};h.hooks.run(e,"beforeInitWalkontable",l),this.wt=new H(l),this.activeWt=this.wt,this.eventManager.addEventListener(o.wt.wtTable.spreader,"mousedown",function(e){e.target===o.wt.wtTable.spreader&&3===e.which&&S(e)}),this.eventManager.addEventListener(o.wt.wtTable.spreader,"contextmenu",function(e){e.target===o.wt.wtTable.spreader&&3===e.which&&S(e)}),this.eventManager.addEventListener(document.documentElement,"click",function(){
41
+ o.settings.observeDOMVisibility&&o.wt.drawInterrupted&&(o.instance.forceFullRender=!0,o.render())})}Object.defineProperties(o,{TableView:{get:function(){return n}},__esModule:{value:!0}});var r,i,s,a,l,u,c,d,h=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,f=(i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i},p=f.addClass,g=f.empty,m=f.fastInnerHTML,w=f.fastInnerText,v=f.getScrollbarWidth,y=f.hasClass,b=f.isChildOf,C=f.isInput,_=f.isOutsideInput,R=(f.removeClass,((s=e("helpers/object"))&&s.__esModule&&s||{default:s}).createObjectPropListener,((a=e("eventManager"))&&a.__esModule&&a||{default:a}).eventManager),M=(l=e("helpers/dom/event"))&&l.__esModule&&l||{default:l},S=M.stopPropagation,E=M.isImmediatePropagationStopped,O=M.isRightClick,T=M.isLeftClick,k=((u=e("3rdparty/walkontable/src/cell/coords"))&&u.__esModule&&u||{default:u}).WalkontableCellCoords,x=((c=e("3rdparty/walkontable/src/selection"))&&c.__esModule&&c||{default:c}).WalkontableSelection,H=((d=e("3rdparty/walkontable/src/core"))&&d.__esModule&&d||{default:d}).Walkontable;h.TableView=n,n.prototype.isTextSelectionAllowed=function(e){if(C(e))return!0;var t=b(e,this.instance.view.wt.wtTable.spreader);return!(this.settings.fragmentSelection!==!0||!t)||(!("cell"!==this.settings.fragmentSelection||!this.isSelectedOnlyCell()||!t)||!(this.settings.fragmentSelection||!this.isCellEdited()||!this.isSelectedOnlyCell()))},n.prototype.isSelectedOnlyCell=function(){var e=this.instance.getSelected()||[],t=e[0],o=e[1],n=e[2],r=e[3];return void 0!==t&&t===n&&o===r},n.prototype.isCellEdited=function(){var e=this.instance.getActiveEditor();return e&&e.isOpened()},n.prototype.beforeRender=function(e,t){e&&h.hooks.run(this.instance,"beforeRender",this.instance.forceFullRender,t)},n.prototype.onDraw=function(e){e&&h.hooks.run(this.instance,"afterRender",this.instance.forceFullRender)},n.prototype.render=function(){this.wt.draw(!this.instance.forceFullRender),this.instance.forceFullRender=!1,this.instance.renderCall=!1},n.prototype.getCellAtCoords=function(e,t){var o=this.wt.getCell(e,t);return o<0?null:o},n.prototype.scrollViewport=function(e){this.wt.scrollViewport(e)},n.prototype.appendRowHeader=function(e,t){if(t.firstChild){var o=t.firstChild;if(!y(o,"relative"))return g(t),void this.appendRowHeader(e,t);this.updateCellHeader(o.querySelector(".rowHeader"),e,this.instance.getRowHeader)}else{var n=document.createElement("div"),r=document.createElement("span");n.className="relative",r.className="rowHeader",this.updateCellHeader(r,e,this.instance.getRowHeader),n.appendChild(r),t.appendChild(n)}h.hooks.run(this.instance,"afterGetRowHeader",e,t)},n.prototype.appendColHeader=function(e,t){if(t.firstChild){var o=t.firstChild;y(o,"relative")?this.updateCellHeader(o.querySelector(".colHeader"),e,this.instance.getColHeader):(g(t),this.appendColHeader(e,t))}else{var n=document.createElement("div"),r=document.createElement("span");n.className="relative",r.className="colHeader",this.updateCellHeader(r,e,this.instance.getColHeader),n.appendChild(r),t.appendChild(n)}h.hooks.run(this.instance,"afterGetColHeader",e,t)},n.prototype.updateCellHeader=function(e,t,o){var n=t,r=this.wt.wtOverlays.getParentOverlay(e)||this.wt;e.parentNode&&(y(e,"colHeader")?n=r.wtTable.columnFilter.sourceToRendered(t):y(e,"rowHeader")&&(n=r.wtTable.rowFilter.sourceToRendered(t))),n>-1?m(e,o(t)):(w(e,String.fromCharCode(160)),p(e,"cornerHeader"))},n.prototype.maximumVisibleElementWidth=function(e){var t=this.wt.wtViewport.getWorkspaceWidth(),o=t-e;return o>0?o:0},n.prototype.maximumVisibleElementHeight=function(e){var t=this.wt.wtViewport.getWorkspaceHeight(),o=t-e;return o>0?o:0},n.prototype.mainViewIsActive=function(){return this.wt===this.activeWt},n.prototype.destroy=function(){this.wt.destroy(),this.eventManager.destroy()}},{"3rdparty/walkontable/src/cell/coords":6,"3rdparty/walkontable/src/core":8,"3rdparty/walkontable/src/selection":19,browser:24,eventManager:42,"helpers/dom/element":47,"helpers/dom/event":48,"helpers/object":53}],127:[function(e,t,o){"use strict";Object.defineProperties(o,{NodeStructure:{get:function(){return i}},LinkedList:{get:function(){return s}},__esModule:{value:!0}});var n,r=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,i=function(e){this.data=e,this.next=null,this.prev=null};$traceurRuntime.createClass(i,{},{});var s=function(){this.first=null,this.last=null};$traceurRuntime.createClass(s,{push:function(e){var t=new i(e);if(null===this.first)this.first=this.last=t;else{var o=this.last;this.last=t,t.prev=o,o.next=t}},unshift:function(e){var t=new i(e);if(null===this.first)this.first=this.last=t;else{var o=this.first;this.first=t,t.next=o,o.prev=t}},inorder:function(e){for(var t=this.first;t;)e(t),t=t.next},remove:function(e){if(null===this.first)return!1;for(var t,o,n=this.first;n;){if(n.data===e)return t=n.next,o=n.prev,t&&(t.prev=o),o&&(o.next=t),n===this.first&&(this.first=t),n===this.last&&(this.last=o),!0;n=n.next}return!1},hasCycle:function(){for(var e=this.first,t=this.first;;){if(null===e)return!1;if(null===(e=e.next))return!1;if(e=e.next,t=t.next,e===t)return!0}},pop:function(){if(null===this.last)return null;var e=this.last;return this.last=this.last.prev,e},shift:function(){if(null===this.first)return null;var e=this.first;return this.first=this.first.next,e},recursiveReverse:function(){function e(t,o){o&&(e(o,o.next),o.next=t)}if(this.first){e(this.first,this.first.next),this.first.next=null;var t=this.first;this.first=this.last,this.last=t}},reverse:function(){if(this.first&&this.first.next){for(var e,t=this.first.next,o=this.first;t;)e=t.next,t.next=o,o.prev=t,o=t,t=e;this.first.next=null,this.last.prev=null,e=this.first,this.first=o,this.last=e}}},{}),r.utils.NodeStructure=i,r.utils.LinkedList=s},{browser:24}],128:[function(e,t,o){"use strict";Object.defineProperties(o,{GhostTable:{get:function(){return g}},__esModule:{value:!0}});var n,r,i,s,a,l,u=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,c=(r=e("helpers/dom/element"))&&r.__esModule&&r||{default:r},d=c.addClass,h=c.outerHeight,f=c.outerWidth,p=((i=e("helpers/array"))&&i.__esModule&&i||{default:i}).arrayEach,g=(((s=e("helpers/object"))&&s.__esModule&&s||{default:s}).objectEach,((a=e("helpers/number"))&&a.__esModule&&a||{default:a}).rangeEach,((l=e("helpers/mixed"))&&l.__esModule&&l||{default:l}).stringify,function(e){this.hot=e,this.container=null,this.injected=!1,this.rows=[],this.columns=[],this.samples=null,this.settings={useHeaders:!0}});$traceurRuntime.createClass(g,{addRow:function(e,t){if(this.columns.length)throw new Error("Doesn't support multi-dimensional table");this.rows.length||(this.container=this.createContainer(this.hot.rootElement.className));var o={row:e};this.rows.push(o),this.samples=t,this.table=this.createTable(this.hot.table.className),this.table.colGroup.appendChild(this.createColGroupsCol()),this.table.tr.appendChild(this.createRow(e)),this.container.container.appendChild(this.table.fragment),o.table=this.table.table},addColumnHeadersRow:function(e){if(null!=this.hot.getColHeader(0)){var t={row:-1};this.rows.push(t),this.container=this.createContainer(this.hot.rootElement.className),this.samples=e,this.table=this.createTable(this.hot.table.className),this.table.colGroup.appendChild(this.createColGroupsCol()),this.table.tHead.appendChild(this.createColumnHeadersRow()),this.container.container.appendChild(this.table.fragment),t.table=this.table.table}},addColumn:function(e,t){if(this.rows.length)throw new Error("Doesn't support multi-dimensional table");this.columns.length||(this.container=this.createContainer(this.hot.rootElement.className));var o={col:e};this.columns.push(o),this.samples=t,this.table=this.createTable(this.hot.table.className),this.getSetting("useHeaders")&&null!==this.hot.getColHeader(e)&&this.hot.view.appendColHeader(e,this.table.th),this.table.tBody.appendChild(this.createCol(e)),this.container.container.appendChild(this.table.fragment),o.table=this.table.table},getHeights:function(e){this.injected||this.injectTable(),p(this.rows,function(t){e(t.row,h(t.table)-1)})},getWidths:function(e){this.injected||this.injectTable(),p(this.columns,function(t){e(t.col,f(t.table))})},setSettings:function(e){this.settings=e},setSetting:function(e,t){this.settings||(this.settings={}),this.settings[e]=t},getSettings:function(){return this.settings},getSetting:function(e){return this.settings?this.settings[e]:null},createColGroupsCol:function(){var e=this,t=document,o=t.createDocumentFragment();return this.hot.hasRowHeaders()&&o.appendChild(this.createColElement(-1)),this.samples.forEach(function(t){p(t.strings,function(t){o.appendChild(e.createColElement(t.col))})}),o},createRow:function(e){var t=this,o=document,n=o.createDocumentFragment(),r=o.createElement("th");return this.hot.hasRowHeaders()&&(this.hot.view.appendRowHeader(e,r),n.appendChild(r)),this.samples.forEach(function(r){p(r.strings,function(r){var i=r.col,s=t.hot.getCellMeta(e,i);s.col=i,s.row=e;var a=t.hot.getCellRenderer(s),l=o.createElement("td");a(t.hot,l,e,i,t.hot.colToProp(i),r.value,s),n.appendChild(l)})}),n},createColumnHeadersRow:function(){var e=this,t=document,o=t.createDocumentFragment();if(this.hot.hasRowHeaders()){var n=t.createElement("th");this.hot.view.appendColHeader(-1,n),o.appendChild(n)}return this.samples.forEach(function(n){p(n.strings,function(n){var r=n.col,i=t.createElement("th");e.hot.view.appendColHeader(r,i),o.appendChild(i)})}),o},createCol:function(e){var t=this,o=document,n=o.createDocumentFragment();return this.samples.forEach(function(r){p(r.strings,function(r){var i=r.row,s=t.hot.getCellMeta(i,e);s.col=e,s.row=i;var a=t.hot.getCellRenderer(s),l=o.createElement("td"),u=o.createElement("tr");a(t.hot,l,i,e,t.hot.colToProp(e),r.value,s),u.appendChild(l),n.appendChild(u)})}),n},clean:function(){this.rows.length=0,this.rows[-1]=void 0,this.columns.length=0,this.samples&&this.samples.clear(),this.samples=null,this.removeTable()},injectTable:function(){var e=void 0!==arguments[0]?arguments[0]:null;this.injected||((e||this.hot.rootElement).appendChild(this.container.fragment),this.injected=!0)},removeTable:function(){this.injected&&this.container.container.parentNode&&(this.container.container.parentNode.removeChild(this.container.container),this.container=null,this.injected=!1)},createColElement:function(e){var t=document,o=t.createElement("col");return o.style.width=this.hot.view.wt.wtTable.getStretchedColumnWidth(e)+"px",o},createTable:function(){var e=void 0!==arguments[0]?arguments[0]:"",t=document,o=t.createDocumentFragment(),n=t.createElement("table"),r=t.createElement("thead"),i=t.createElement("tbody"),s=t.createElement("colgroup"),a=t.createElement("tr"),l=t.createElement("th");return this.isVertical()&&n.appendChild(s),this.isHorizontal()&&(a.appendChild(l),r.appendChild(a),n.style.tableLayout="auto",n.style.width="auto"),n.appendChild(r),this.isVertical()&&i.appendChild(a),n.appendChild(i),d(n,e),o.appendChild(n),{fragment:o,table:n,tHead:r,tBody:i,colGroup:s,tr:a,th:l}},createContainer:function(){var e=void 0!==arguments[0]?arguments[0]:"",t=document,o=t.createDocumentFragment(),n=t.createElement("div");return e="htGhostTable htAutoSize "+e.trim(),d(n,e),o.appendChild(n),{fragment:o,container:n}},isVertical:function(){return!(!this.rows.length||this.columns.length)},isHorizontal:function(){return!(!this.columns.length||this.rows.length)}},{}),u.utils.GhostTable=g},{browser:24,"helpers/array":43,"helpers/dom/element":47,"helpers/mixed":51,"helpers/number":52,"helpers/object":53}],129:[function(e,t,o){"use strict";function n(e){return"string"==typeof e&&/fps$/.test(e)&&(e=1e3/parseInt(e.replace("fps","")||0,10)),e}Object.defineProperties(o,{Interval:{get:function(){return c}},__esModule:{value:!0}});var r,i,s=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,a=(i=e("helpers/feature"))&&i.__esModule&&i||{default:i},l=a.requestAnimationFrame,u=a.cancelAnimationFrame,c=function(e,t){var o=this;this.timer=null,this.func=e,this.delay=n(t),this.stopped=!0,this._then=null,this._callback=function(){return o.__callback()}},d=c;$traceurRuntime.createClass(c,{start:function(){return this.stopped&&(this._then=Date.now(),this.stopped=!1,this.timer=l(this._callback)),this},stop:function(){return this.stopped||(this.stopped=!0,u(this.timer),this.timer=null),this},__callback:function(){if(this.timer=l(this._callback),this.delay){var e=Date.now(),t=e-this._then;t>this.delay&&(this._then=e-t%this.delay,this.func())}else this.func()}},{create:function(e,t){return new d(e,t)}}),s.utils.Interval=c},{browser:24,"helpers/feature":49}],130:[function(e,t,o){"use strict";function n(e,t){c.set(e,t)}function r(e){var t;if(!(e instanceof a.Core)){if(!c.has(e))throw Error("Record translator was not registered for this object identity");e=c.get(e)}return d.has(e)?t=d.get(e):(t=new u(e),d.set(e,t)),t}Object.defineProperties(o,{registerIdentity:{get:function(){return n}},getTranslator:{get:function(){return r}},__esModule:{value:!0}});var i,s,a=((i=e("browser"))&&i.__esModule&&i||{default:i}).default,l=((s=e("helpers/object"))&&s.__esModule&&s||{default:s}).isObject,u=function(e){this.hot=e};$traceurRuntime.createClass(u,{toVisualRow:function(e){return this.hot.runHooks("unmodifyRow",e)},toVisualColumn:function(e){return this.hot.runHooks("unmodifyCol",e)},toVisual:function(e,t){return l(e)?{row:this.toVisualRow(e.row),column:this.toVisualColumn(e.column)}:[this.toVisualRow(e),this.toVisualColumn(t)]},toPhysicalRow:function(e){return this.hot.runHooks("modifyRow",e)},toPhysicalColumn:function(e){return this.hot.runHooks("modifyCol",e)},toPhysical:function(e,t){return l(e)?{row:this.toPhysicalRow(e.row),column:this.toPhysicalColumn(e.column)}:[this.toPhysicalRow(e),this.toPhysicalColumn(t)]}},{});var c=new WeakMap,d=new WeakMap;a.utils.RecordTranslator=u,a.utils.RecordTranslatorUtils={registerIdentity:n,getTranslator:r}},{browser:24,"helpers/object":53}],131:[function(e,t,o){"use strict";var n;Object.defineProperties(o,{SamplesGenerator:{get:function(){return m}},__esModule:{value:!0}});var r,i,s,a,l,u,c=((r=e("browser"))&&r.__esModule&&r||{default:r}).default,d=(i=e("helpers/dom/element"))&&i.__esModule&&i||{default:i},h=(d.addClass,d.outerHeight,d.outerWidth,((s=e("helpers/array"))&&s.__esModule&&s||{default:s}).arrayEach,(a=e("helpers/object"))&&a.__esModule&&a||{default:a}),f=(h.objectEach,h.isObject),p=((l=e("helpers/number"))&&l.__esModule&&l||{default:l}).rangeEach,g=((u=e("helpers/mixed"))&&u.__esModule&&u||{default:u}).stringify,m=function(e){this.samples=null,this.dataFactory=e,this.customSampleCount=null,this.allowDuplicates=!1},w=m;$traceurRuntime.createClass(m,(n={},Object.defineProperty(n,"getSampleCount",{value:function(){return this.customSampleCount?this.customSampleCount:w.SAMPLE_COUNT},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"setSampleCount",{value:function(e){this.customSampleCount=e},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"setAllowDuplicates",{value:function(e){this.allowDuplicates=e},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"generateRowSamples",{value:function(e,t){return this.generateSamples("row",t,e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"generateColumnSamples",{value:function(e,t){return this.generateSamples("col",t,e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"generateSamples",{value:function(e,t,o){var n=this,r=new Map;return"number"==typeof o&&(o={from:o,to:o}),p(o.from,o.to,function(o){var i=n.generateSample(e,t,o);r.set(o,i)}),r},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(n,"generateSample",{value:function(e,t,o){var n,r=this,i=new Map,s=[];return p(t.from,t.to,function(t){var a,l;if("row"===e)l=r.dataFactory(o,t);else{if("col"!==e)throw new Error("Unsupported sample type");l=r.dataFactory(t,o)}n=f(l)?Object.keys(l).length:Array.isArray(l)?l.length:g(l).length,i.has(n)||i.set(n,{needed:r.getSampleCount(),strings:[]});var u=i.get(n);if(u.needed){if(!(s.indexOf(l)>-1)||r.allowDuplicates){var c="row"===e?"col":"row";u.strings.push((a={},Object.defineProperty(a,"value",{value:l,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(a,c,{value:t,configurable:!0,enumerable:!0,writable:!0}),a)),s.push(l),u.needed--}}}),i},configurable:!0,enumerable:!0,writable:!0}),n),{get SAMPLE_COUNT(){return 3}}),c.utils.SamplesGenerator=m},{browser:24,"helpers/array":43,"helpers/dom/element":47,"helpers/mixed":51,"helpers/number":52,"helpers/object":53}],132:[function(e,t,o){"use strict";function n(e){var t=void 0!==arguments[1]?arguments[1]:l,o=void 0!==arguments[2]?arguments[2]:0,i=void 0!==arguments[3]?arguments[3]:e.length;if(Math.abs(i-o)<=1)return[];var s=Math.ceil((o+i)/2);return n(e,t,o,s),n(e,t,s,i),r(e,t,o,s,i)}function r(e,t,o,n,r){for(var i=new a,s=new a,l=n-o,u=r-n,c=Math.max(l,u),d=r-o,h=0;h<c;h+=1)h<l&&i.push(e[o+h]),h<u&&s.push(e[n+h]);for(var f=0;f<d;)i.first&&s.first?t(i.first.data,s.first.data)>0?e[o+f]=s.shift().data:e[o+f]=i.shift().data:i.first?e[o+f]=i.shift().data:e[o+f]=s.shift().data,f+=1;return e}Object.defineProperties(o,{mergeSort:{get:function(){return n}},__esModule:{value:!0}});var i,s,a=((i=e("../dataStructures/linkedList"))&&i.__esModule&&i||{default:i}).LinkedList,l=function(e,t){var o=e.toString(),n=t.toString();return o===n?0:o<n?-1:1};((s=e("browser"))&&s.__esModule&&s||{default:s}).default.utils.mergeSort=n},{"../dataStructures/linkedList":127,browser:24}],133:[function(e,t,o){"use strict";function n(e,t){var o=e;return function(e){for(var n=!1,r=0,i=e.length;r<i;r++)if(o===e[r]){n=!0;break}t(n)}}var r,i,s=((r=e("browser"))&&r.__esModule&&r||{default:r}).default;((i=e("helpers/mixed"))&&i.__esModule&&i||{default:i}).stringify;s.AutocompleteValidator=function(e,t){if(null==e&&(e=""),this.allowEmpty&&""===e)return void t(!0);this.strict&&this.source?"function"==typeof this.source?this.source(e,n(e,t)):n(e,t)(this.source):t(!0)}},{browser:24,"helpers/mixed":51}],134:[function(e,t,o){"use strict";var n,r,i,s,a=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,l=((r=e("moment"))&&r.__esModule&&r||{default:r}).default,u=((i=e("../helpers/date"))&&i.__esModule&&i||{default:i}).getNormalizedDate,c=((s=e("editors"))&&s.__esModule&&s||{default:s}).getEditor;a.DateValidator=function(e,t){var o=!0,n=c("date",this.instance);null==e&&(e="");var r=l(new Date(e)).isValid()||l(e,n.defaultDateFormat).isValid(),i=l(e,this.dateFormat||n.defaultDateFormat,!0).isValid();if(this.allowEmpty&&""===e&&(r=!0,i=!0),r||(o=!1),!r&&i&&(o=!0),r&&!i)if(this.correctFormat===!0){var s=d(e,this.dateFormat),a=this.instance.runHooks("unmodifyRow",this.row),u=this.instance.runHooks("unmodifyCol",this.col);this.instance.setDataAtCell(a,u,s,"dateValidator"),o=!0}else o=!1;t(o)};var d=function(e,t){var o,n=l(u(e)),r=l(e,t),i=e.search(/[A-z]/g)>-1;return o=n.isValid()&&n.format("x")===r.format("x")||!r.isValid()||i?n:r,o.format(t)}},{"../helpers/date":46,browser:24,editors:30,moment:"moment"}],135:[function(e,t,o){"use strict";var n;((n=e("browser"))&&n.__esModule&&n||{default:n}).default.NumericValidator=function(e,t){null==e&&(e=""),t(!(!this.allowEmpty||""!==e)||""!==e&&/^-?\d*(\.|\,)?\d*$/.test(e))}},{browser:24}],136:[function(e,t,o){"use strict";var n,r,i=((n=e("browser"))&&n.__esModule&&n||{default:n}).default,s=((r=e("moment"))&&r.__esModule&&r||{default:r}).default,a=["YYYY-MM-DDTHH:mm:ss.SSSZ","X","x"];i.TimeValidator=function(e,t){var o=!0,n=this.timeFormat||"h:mm:ss a";null===e&&(e=""),e=/^\d{3,}$/.test(e)?parseInt(e,10):e;var r=/^\d{1,2}$/.test(e);r&&(e+=":00");var i=s(e,a,!0).isValid()?s(e):s(e,n),l=i.isValid(),u=s(e,n,!0).isValid()&&!r;if(this.allowEmpty&&""===e&&(l=!0,u=!0),l||(o=!1),!l&&u&&(o=!0),l&&!u)if(this.correctFormat===!0){var c=i.format(n),d=this.instance.runHooks("unmodifyRow",this.row),h=this.instance.runHooks("unmodifyCol",this.col);this.instance.setDataAtCell(d,h,c,"timeValidator"),o=!0}else o=!1;t(o)}},{browser:24,moment:"moment"}],SheetClip:[function(e,t,o){!function(e){"use strict";function t(e){return e.split('"').length-1}var n={parse:function(e){var o,n,r,i,s,a,l,u=[],c=0;for(r=e.split("\n"),r.length>1&&""===r[r.length-1]&&r.pop(),o=0,n=r.length;o<n;o+=1){for(r[o]=r[o].split("\t"),i=0,s=r[o].length;i<s;i+=1)u[c]||(u[c]=[]),a&&0===i?(l=u[c].length-1,u[c][l]=u[c][l]+"\n"+r[o][0],a&&1&t(r[o][0])&&(a=!1,u[c][l]=u[c][l].substring(0,u[c][l].length-1).replace(/""/g,'"'))):i===s-1&&0===r[o][i].indexOf('"')&&1&t(r[o][i])?(u[c].push(r[o][i].substring(1).replace(/""/g,'"')),a=!0):(u[c].push(r[o][i].replace(/""/g,'"')),a=!1);a||(c+=1)}return u},stringify:function(e){var t,o,n,r,i,s="";for(t=0,o=e.length;t<o;t+=1){for(r=e[t].length,n=0;n<r;n+=1)n>0&&(s+="\t"),i=e[t][n],s+="string"==typeof i?i.indexOf("\n")>-1?'"'+i.replace(/"/g,'""')+'"':i:null===i||void 0===i?"":i;s+="\n"}return s}};void 0!==o?(o.parse=n.parse,o.stringify=n.stringify):e.SheetClip=n}(window)},{}],autoResize:[function(e,t,o){function n(){function e(e){return e.currentStyle||document.defaultView.getComputedStyle(e)}var t,o={minHeight:200,maxHeight:300,minWidth:100,maxWidth:300},n=document.body,r=document.createTextNode(""),i=document.createElement("SPAN"),s=function(e,t,o){window.attachEvent?e.attachEvent("on"+t,o):e.addEventListener(t,o,!1)},a=function(e,t,o){window.removeEventListener?e.removeEventListener(t,o,!1):e.detachEvent("on"+t,o)},l=function(s){var a,l;s?/^[a-zA-Z \.,\\\/\|0-9]$/.test(s)||(s="."):s="",void 0!==r.textContent?r.textContent=t.value+s:r.data=t.value+s,i.style.fontSize=e(t).fontSize,i.style.fontFamily=e(t).fontFamily,i.style.whiteSpace="pre",n.appendChild(i),a=i.clientWidth+2,n.removeChild(i),t.style.height=o.minHeight+"px",o.minWidth>a?t.style.width=o.minWidth+"px":a>o.maxWidth?t.style.width=o.maxWidth+"px":t.style.width=a+"px",l=t.scrollHeight?t.scrollHeight-1:0,o.minHeight>l?t.style.height=o.minHeight+"px":o.maxHeight<l?(t.style.height=o.maxHeight+"px",t.style.overflowY="visible"):t.style.height=l+"px"},u=function(){window.setTimeout(l,0)},c=function(e){if(e&&e.minHeight)if("inherit"==e.minHeight)o.minHeight=t.clientHeight;else{var n=parseInt(e.minHeight);isNaN(n)||(o.minHeight=n)}if(e&&e.maxHeight)if("inherit"==e.maxHeight)o.maxHeight=t.clientHeight;else{var s=parseInt(e.maxHeight);isNaN(s)||(o.maxHeight=s)}if(e&&e.minWidth)if("inherit"==e.minWidth)o.minWidth=t.clientWidth;else{var a=parseInt(e.minWidth);isNaN(a)||(o.minWidth=a)}if(e&&e.maxWidth)if("inherit"==e.maxWidth)o.maxWidth=t.clientWidth;else{var l=parseInt(e.maxWidth);isNaN(l)||(o.maxWidth=l)}i.firstChild||(i.className="autoResize",i.style.display="inline-block",i.appendChild(r))},d=function(e,n,r){t=e,c(n),"TEXTAREA"==t.nodeName&&(t.style.resize="none",t.style.overflowY="",t.style.height=o.minHeight+"px",t.style.minWidth=o.minWidth+"px",t.style.maxWidth=o.maxWidth+"px",t.style.overflowY="hidden"),r&&(s(t,"change",l),s(t,"cut",u),s(t,"paste",u),s(t,"drop",u),s(t,"keydown",u),s(t,"focus",l)),l()};return{init:function(e,t,o){d(e,t,o)},unObserve:function(){a(t,"change",l),a(t,"cut",u),a(t,"paste",u),a(t,"drop",u),a(t,"keydown",u),a(t,"focus",l)},resize:l}}void 0!==o&&(t.exports=n)},{}],copyPaste:[function(e,t,o){function n(){return i?i.hasBeenDestroyed()&&i.init():i=new r,i.refCounter++,i}function r(){this.refCounter=0,this.init()}var i;void 0!==o&&(t.exports=n),r.prototype.init=function(){var e,t;this.copyCallbacks=[],this.cutCallbacks=[],this.pasteCallbacks=[],t=document.body,document.getElementById("CopyPasteDiv")?(this.elDiv=document.getElementById("CopyPasteDiv"),this.elTextarea=this.elDiv.firstChild):(this.elDiv=document.createElement("div"),this.elDiv.id="CopyPasteDiv",e=this.elDiv.style,e.position="fixed",e.top="-10000px",e.left="-10000px",t.appendChild(this.elDiv),this.elTextarea=document.createElement("textarea"),this.elTextarea.className="copyPaste",this.elTextarea.onpaste=function(e){var t,o;"WebkitAppearance"in document.documentElement.style&&(t=e.clipboardData.getData("Text"),navigator.userAgent.indexOf("Safari")!==-1&&navigator.userAgent.indexOf("Chrome")===-1&&(o=t.split("\n"),""===o[o.length-1]&&o.pop(),t=o.join("\n")),this.value=t,e.preventDefault())},e=this.elTextarea.style,e.width="10000px",e.height="10000px",e.overflow="hidden",this.elDiv.appendChild(this.elTextarea),void 0!==e.opacity&&(e.opacity=0)),this.onKeyDownRef=this.onKeyDown.bind(this),document.documentElement.addEventListener("keydown",this.onKeyDownRef,!1)},r.prototype.onKeyDown=function(e){var t=this,o=!1;if(e.metaKey?o=!0:e.ctrlKey&&navigator.userAgent.indexOf("Mac")===-1&&(o=!0),o){if(document.activeElement!==this.elTextarea&&(""!==this.getSelectionText()||function(){var e=document.activeElement;return e.shadowRoot&&e.shadowRoot.activeElement&&(e=e.shadowRoot.activeElement),["INPUT","SELECT","TEXTAREA"].indexOf(e.nodeName)>-1||"true"===e.contentEditable}()))return;this.selectNodeText(this.elTextarea),setTimeout(function(){document.activeElement!==t.elTextarea&&t.selectNodeText(t.elTextarea)},0)}e.isImmediatePropagationEnabled===!1||!o||67!==e.keyCode&&86!==e.keyCode&&88!==e.keyCode||(88===e.keyCode?setTimeout(function(){t.triggerCut(e)},0):86===e.keyCode&&setTimeout(function(){t.triggerPaste(e)},0))},r.prototype.selectNodeText=function(e){e&&e.select()},r.prototype.getSelectionText=function(){var e="";return window.getSelection?e=window.getSelection().toString():document.selection&&"Control"!==document.selection.type&&(e=document.selection.createRange().text),e},r.prototype.copyable=function(e){if("string"!=typeof e&&void 0===e.toString)throw new Error("copyable requires string parameter");this.elTextarea.value=e,this.selectNodeText(this.elTextarea)},r.prototype.onCut=function(e){this.cutCallbacks.push(e)},r.prototype.onPaste=function(e){this.pasteCallbacks.push(e)},r.prototype.removeCallback=function(e){var t,o;for(t=0,o=this.copyCallbacks.length;t<o;t++)if(this.copyCallbacks[t]===e)return this.copyCallbacks.splice(t,1),!0;for(t=0,o=this.cutCallbacks.length;t<o;t++)if(this.cutCallbacks[t]===e)return this.cutCallbacks.splice(t,1),!0;for(t=0,o=this.pasteCallbacks.length;t<o;t++)if(this.pasteCallbacks[t]===e)return this.pasteCallbacks.splice(t,1),!0;return!1},r.prototype.triggerCut=function(e){var t=this;t.cutCallbacks&&setTimeout(function(){for(var o=0,n=t.cutCallbacks.length;o<n;o++)t.cutCallbacks[o](e)},50)},r.prototype.triggerPaste=function(e,t){var o=this;o.pasteCallbacks&&setTimeout(function(){for(var n=t||o.elTextarea.value,r=0,i=o.pasteCallbacks.length;r<i;r++)o.pasteCallbacks[r](n,e)},50)},r.prototype.destroy=function(){this.hasBeenDestroyed()||0!=--this.refCounter||(this.elDiv&&this.elDiv.parentNode&&(this.elDiv.parentNode.removeChild(this.elDiv),this.elDiv=null,this.elTextarea=null),document.documentElement.removeEventListener("keydown",this.onKeyDownRef),this.onKeyDownRef=null)},r.prototype.hasBeenDestroyed=function(){return!this.refCounter}},{}],es6collections:[function(e,t,o){/*!
42
+ * Copyright (C) 2011 by Andrea Giammarchi, @WebReflection
43
+ *
44
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
45
+ * of this software and associated documentation files (the "Software"), to deal
46
+ * in the Software without restriction, including without limitation the rights
47
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
48
+ * copies of the Software, and to permit persons to whom the Software is
49
+ * furnished to do so, subject to the following conditions:
50
+ *
51
+ * The above copyright notice and this permission notice shall be included in
52
+ * all copies or substantial portions of the Software.
53
+ *
54
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
55
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
56
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
57
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
58
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
59
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
60
+ * THE SOFTWARE.
61
  */