melondtable 1.15.4 → 1.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1901,6 +1901,16 @@ var DataTable = (function (Sortable) {
1901
1901
  function stripHTML(html) {
1902
1902
  return html.replace(/<[^>]*>/g, '');
1903
1903
  }
1904
+ function format(str, args) {
1905
+ if (!str) return str;
1906
+
1907
+ Object.keys(args).forEach(arg => {
1908
+ let regex = new RegExp(`{(${arg})}`, 'g');
1909
+ str = str.replace(regex, args[arg]);
1910
+ });
1911
+
1912
+ return str;
1913
+ }
1904
1914
 
1905
1915
  class DataManager {
1906
1916
  constructor(options) {
@@ -2654,7 +2664,10 @@ var DataTable = (function (Sortable) {
2654
2664
  bindCopyCellContents() {
2655
2665
  this.keyboard.on('ctrl+c', () => {
2656
2666
  const noOfCellsCopied = this.copyCellContents(this.$focusedCell, this.$selectionCursor);
2657
- const message = `${noOfCellsCopied} cell${noOfCellsCopied > 1 ? 's' : ''} copied`;
2667
+ const message = this.instance.translate('{count} cells copied', {
2668
+ count: noOfCellsCopied
2669
+ });
2670
+
2658
2671
  if (noOfCellsCopied) {
2659
2672
  this.instance.showToastMessage(message, 2);
2660
2673
  }
@@ -3571,7 +3584,11 @@ var DataTable = (function (Sortable) {
3571
3584
 
3572
3585
  const onMouseMove = (e) => {
3573
3586
  if (!isDragging) return;
3574
- const finalWidth = startWidth + (e.pageX - startX);
3587
+ let delta = e.pageX - startX;
3588
+ if (this.options.direction === 'rtl') {
3589
+ delta = -1 * delta;
3590
+ }
3591
+ const finalWidth = startWidth + delta;
3575
3592
  const {
3576
3593
  colIndex
3577
3594
  } = $.data($resizingCell);
@@ -3972,7 +3989,10 @@ var DataTable = (function (Sortable) {
3972
3989
  const checkedRows = this.getCheckedRows();
3973
3990
  const count = checkedRows.length;
3974
3991
  if (count > 0) {
3975
- this.bodyRenderer.showToastMessage(`${count} row${count > 1 ? 's' : ''} selected`);
3992
+ let message = this.instance.translate('{count} rows selected', {
3993
+ count: count
3994
+ });
3995
+ this.bodyRenderer.showToastMessage(message);
3976
3996
  } else {
3977
3997
  this.bodyRenderer.clearToastMessage();
3978
3998
  }
@@ -5204,6 +5224,83 @@ var DataTable = (function (Sortable) {
5204
5224
  }
5205
5225
  }
5206
5226
 
5227
+ var en = {
5228
+ "Sort Ascending": "Sort Ascending",
5229
+ "Sort Descending": "Sort Descending",
5230
+ "Reset sorting": "Reset sorting",
5231
+ "Remove column": "Remove column",
5232
+ "No Data": "No Data",
5233
+ "{count} cells copied": {"1":"{count} cell copied","default":"{count} cells copied"},
5234
+ "{count} rows selected": {"1":"{count} row selected","default":"{count} rows selected"}
5235
+ };
5236
+
5237
+ var de = {
5238
+ "Sort Ascending": "Aufsteigend sortieren",
5239
+ "Sort Descending": "Absteigend sortieren",
5240
+ "Reset sorting": "Sortierung zurücksetzen",
5241
+ "Remove column": "Spalte entfernen",
5242
+ "No Data": "Keine Daten",
5243
+ "{count} cells copied": {"1":"{count} Zelle kopiert","default":"{count} Zellen kopiert"},
5244
+ "{count} rows selected": {"1":"{count} Zeile ausgewählt","default":"{count} Zeilen ausgewählt"}
5245
+ };
5246
+
5247
+ var fr = {
5248
+ "Sort Ascending": "Trier par ordre croissant",
5249
+ "Sort Descending": "Trier par ordre décroissant",
5250
+ "Reset sorting": "Réinitialiser le tri",
5251
+ "Remove column": "Supprimer colonne",
5252
+ "No Data": "Pas de données",
5253
+ "{count} cells copied": {"1":"{count} cellule copiée","default":"{count} cellules copiées"},
5254
+ "{count} rows selected": {"1":"{count} ligne sélectionnée","default":"{count} lignes sélectionnées"}
5255
+ };
5256
+
5257
+ var it = {
5258
+ "Sort Ascending": "Ordinamento ascendente",
5259
+ "Sort Descending": "Ordinamento decrescente",
5260
+ "Reset sorting": "Azzeramento ordinamento",
5261
+ "Remove column": "Rimuovi colonna",
5262
+ "No Data": "Nessun dato",
5263
+ "{count} cells copied": {"1":"Copiato {count} cella","default":"{count} celle copiate"},
5264
+ "{count} rows selected": {"1":"{count} linea selezionata","default":"{count} linee selezionate"}
5265
+ };
5266
+
5267
+ function getTranslations() {
5268
+ return {
5269
+ en,
5270
+ de,
5271
+ fr,
5272
+ it,
5273
+ };
5274
+ }
5275
+
5276
+ class TranslationManager {
5277
+ constructor(language) {
5278
+ this.language = language;
5279
+ this.translations = getTranslations();
5280
+ }
5281
+
5282
+ addTranslations(translations) {
5283
+ this.translations = Object.assign(this.translations, translations);
5284
+ }
5285
+
5286
+ translate(sourceText, args) {
5287
+ let translation = (this.translations[this.language] &&
5288
+ this.translations[this.language][sourceText]) || sourceText;
5289
+
5290
+ if (typeof translation === 'object') {
5291
+ translation = args && args.count ?
5292
+ this.getPluralizedTranslation(translation, args.count) :
5293
+ sourceText;
5294
+ }
5295
+
5296
+ return format(translation, args || {});
5297
+ }
5298
+
5299
+ getPluralizedTranslation(translations, count) {
5300
+ return translations[count] || translations['default'];
5301
+ }
5302
+ }
5303
+
5207
5304
  function filterRows(rows, filters) {
5208
5305
  let filteredRowIndices = [];
5209
5306
 
@@ -5396,74 +5493,76 @@ var DataTable = (function (Sortable) {
5396
5493
  };
5397
5494
  }
5398
5495
 
5399
- var DEFAULT_OPTIONS = {
5400
- columns: [],
5401
- data: [],
5402
- dropdownButton: icons.chevronDown,
5403
- headerDropdown: [
5404
- {
5405
- label: 'Sort Ascending',
5406
- action: function (column) {
5407
- this.sortColumn(column.colIndex, 'asc');
5496
+ function getDefaultOptions(instance) {
5497
+ return {
5498
+ columns: [],
5499
+ data: [],
5500
+ dropdownButton: icons.chevronDown,
5501
+ headerDropdown: [
5502
+ {
5503
+ label: instance.translate('Sort Ascending'),
5504
+ action: function (column) {
5505
+ this.sortColumn(column.colIndex, 'asc');
5506
+ }
5507
+ },
5508
+ {
5509
+ label: instance.translate('Sort Descending'),
5510
+ action: function (column) {
5511
+ this.sortColumn(column.colIndex, 'desc');
5512
+ }
5513
+ },
5514
+ {
5515
+ label: instance.translate('Reset sorting'),
5516
+ action: function (column) {
5517
+ this.sortColumn(column.colIndex, 'none');
5518
+ }
5519
+ },
5520
+ {
5521
+ label: instance.translate('Remove column'),
5522
+ action: function (column) {
5523
+ this.removeColumn(column.colIndex);
5524
+ }
5408
5525
  }
5526
+ ],
5527
+ events: {
5528
+ onRemoveColumn(column) {},
5529
+ onSwitchColumn(column1, column2) {},
5530
+ onSortColumn(column) {},
5531
+ onCheckRow(row) {},
5532
+ onDestroy() {}
5409
5533
  },
5410
- {
5411
- label: 'Sort Descending',
5412
- action: function (column) {
5413
- this.sortColumn(column.colIndex, 'desc');
5414
- }
5534
+ hooks: {
5535
+ columnTotal: null
5415
5536
  },
5416
- {
5417
- label: 'Reset sorting',
5418
- action: function (column) {
5419
- this.sortColumn(column.colIndex, 'none');
5420
- }
5537
+ sortIndicator: {
5538
+ asc: '↑',
5539
+ desc: '↓',
5540
+ none: ''
5421
5541
  },
5422
- {
5423
- label: 'Remove column',
5424
- action: function (column) {
5425
- this.removeColumn(column.colIndex);
5426
- }
5427
- }
5428
- ],
5429
- events: {
5430
- onRemoveColumn(column) {},
5431
- onSwitchColumn(column1, column2) {},
5432
- onSortColumn(column) {},
5433
- onCheckRow(row) {},
5434
- onDestroy() {}
5435
- },
5436
- hooks: {
5437
- columnTotal: null
5438
- },
5439
- sortIndicator: {
5440
- asc: '↑',
5441
- desc: '↓',
5442
- none: ''
5443
- },
5444
- overrideComponents: {
5445
- // ColumnManager: CustomColumnManager
5446
- },
5447
- filterRows: filterRows,
5448
- freezeMessage: '',
5449
- getEditor: null,
5450
- serialNoColumn: true,
5451
- checkboxColumn: false,
5452
- clusterize: true,
5453
- logs: false,
5454
- layout: 'fixed', // fixed, fluid, ratio
5455
- noDataMessage: 'No Data',
5456
- cellHeight: 40,
5457
- minimumColumnWidth: 30,
5458
- inlineFilters: false,
5459
- treeView: false,
5460
- checkedRowStatus: true,
5461
- dynamicRowHeight: false,
5462
- pasteFromClipboard: false,
5463
- showTotalRow: false,
5464
- direction: 'ltr',
5465
- disableReorderColumn: false
5466
- };
5542
+ overrideComponents: {
5543
+ // ColumnManager: CustomColumnManager
5544
+ },
5545
+ filterRows: filterRows,
5546
+ freezeMessage: '',
5547
+ getEditor: null,
5548
+ serialNoColumn: true,
5549
+ checkboxColumn: false,
5550
+ clusterize: true,
5551
+ logs: false,
5552
+ layout: 'fixed', // fixed, fluid, ratio
5553
+ noDataMessage: instance.translate('No Data'),
5554
+ cellHeight: 40,
5555
+ minimumColumnWidth: 30,
5556
+ inlineFilters: false,
5557
+ treeView: false,
5558
+ checkedRowStatus: true,
5559
+ dynamicRowHeight: false,
5560
+ pasteFromClipboard: false,
5561
+ showTotalRow: false,
5562
+ direction: 'ltr',
5563
+ disableReorderColumn: false
5564
+ };
5565
+ }
5467
5566
 
5468
5567
  let defaultComponents = {
5469
5568
  DataManager,
@@ -5488,6 +5587,8 @@ var DataTable = (function (Sortable) {
5488
5587
  throw new Error('Invalid argument given for `wrapper`');
5489
5588
  }
5490
5589
 
5590
+ this.initializeTranslations(options);
5591
+ this.setDefaultOptions();
5491
5592
  this.buildOptions(options);
5492
5593
  this.prepare();
5493
5594
  this.initializeComponents();
@@ -5498,23 +5599,36 @@ var DataTable = (function (Sortable) {
5498
5599
  }
5499
5600
  }
5500
5601
 
5602
+ initializeTranslations(options) {
5603
+ this.language = options.language || 'en';
5604
+ this.translationManager = new TranslationManager(this.language);
5605
+
5606
+ if (options.translations) {
5607
+ this.translationManager.addTranslations(options.translations);
5608
+ }
5609
+ }
5610
+
5611
+ setDefaultOptions() {
5612
+ this.DEFAULT_OPTIONS = getDefaultOptions(this);
5613
+ }
5614
+
5501
5615
  buildOptions(options) {
5502
5616
  this.options = this.options || {};
5503
5617
 
5504
5618
  this.options = Object.assign(
5505
- {}, DEFAULT_OPTIONS,
5619
+ {}, this.DEFAULT_OPTIONS,
5506
5620
  this.options || {}, options
5507
5621
  );
5508
5622
 
5509
5623
  options.headerDropdown = options.headerDropdown || [];
5510
5624
  this.options.headerDropdown = [
5511
- ...DEFAULT_OPTIONS.headerDropdown,
5625
+ ...this.DEFAULT_OPTIONS.headerDropdown,
5512
5626
  ...options.headerDropdown
5513
5627
  ];
5514
5628
 
5515
5629
  // custom user events
5516
5630
  this.events = Object.assign(
5517
- {}, DEFAULT_OPTIONS.events,
5631
+ {}, this.DEFAULT_OPTIONS.events,
5518
5632
  this.options.events || {},
5519
5633
  options.events || {}
5520
5634
  );
@@ -5700,6 +5814,10 @@ var DataTable = (function (Sortable) {
5700
5814
  console.log.apply(console, arguments);
5701
5815
  }
5702
5816
  }
5817
+
5818
+ translate(str, args) {
5819
+ return this.translationManager.translate(str, args);
5820
+ }
5703
5821
  }
5704
5822
 
5705
5823
  DataTable.instances = 0;
@@ -5710,9 +5828,9 @@ var DataTable = (function (Sortable) {
5710
5828
  var main = "dist/melondtable.cjs.js";
5711
5829
  var unpkg = "dist/melondtable.min.js";
5712
5830
  var jsdelivr = "dist/melondtable.min.js";
5713
- var scripts = {"start":"yarn run dev","build":"rollup -c && NODE_ENV=production rollup -c","dev":"rollup -c -w","cy:server":"http-server -p 8989","cy:open":"cypress open","cy:run":"cypress run","test":"start-server-and-test cy:server http://localhost:8989 cy:run","test-local":"start-server-and-test cy:server http://localhost:8989 cy:open","travis-deploy-once":"travis-deploy-once","semantic-release":"semantic-release","lint":"eslint src","commit":"npx git-cz"};
5831
+ var scripts = {"start":"yarn run dev","build":"rollup -c && NODE_ENV=production rollup -c","dev":"rollup -c -w","cy:server":"http-server -p 8989","cy:open":"cypress open","cy:run":"cypress run","test":"start-server-and-test cy:server http://localhost:8989 cy:run","test-local":"start-server-and-test cy:server http://localhost:8989 cy:open","travis-deploy-once":"travis-deploy-once","semantic-release":"semantic-release","lint":"eslint src","lint-and-build":"yarn lint && yarn build","commit":"npx git-cz"};
5714
5832
  var files = ["dist","src"];
5715
- var devDependencies = {"autoprefixer":"^9.0.0","chai":"3.5.0","cypress":"3.0.1","cz-conventional-changelog":"^2.1.0","deepmerge":"^2.0.1","eslint":"^5.0.1","eslint-config-airbnb":"^16.1.0","eslint-config-airbnb-base":"^12.1.0","eslint-plugin-import":"^2.11.0","http-server":"^0.11.1","mocha":"3.3.0","postcss-custom-properties":"^7.0.0","postcss-nested":"^3.0.0","rollup":"^0.59.4","rollup-plugin-commonjs":"^8.3.0","rollup-plugin-eslint":"^4.0.0","rollup-plugin-json":"^2.3.0","rollup-plugin-node-resolve":"^3.0.3","rollup-plugin-postcss":"^1.2.8","rollup-plugin-uglify-es":"^0.0.1","semantic-release":"^17.1.1","start-server-and-test":"^1.4.1","travis-deploy-once":"^5.0.1"};
5833
+ var devDependencies = {"autoprefixer":"^9.0.0","chai":"3.5.0","cypress":"^9.2.0","cz-conventional-changelog":"^2.1.0","deepmerge":"^2.0.1","eslint":"^5.0.1","eslint-config-airbnb":"^16.1.0","eslint-config-airbnb-base":"^12.1.0","eslint-plugin-import":"^2.11.0","http-server":"^0.11.1","mocha":"3.3.0","postcss-custom-properties":"^7.0.0","postcss-nested":"^3.0.0","rollup":"^0.59.4","rollup-plugin-commonjs":"^8.3.0","rollup-plugin-eslint":"^4.0.0","rollup-plugin-json":"^2.3.0","rollup-plugin-node-resolve":"^3.0.3","rollup-plugin-postcss":"^1.2.8","rollup-plugin-uglify-es":"^0.0.1","semantic-release":"^17.1.1","start-server-and-test":"^1.4.1","travis-deploy-once":"^5.0.1"};
5716
5834
  var repository = {"type":"git","url":"https://github.com/amonak/melondtable.git"};
5717
5835
  var keywords = ["datatable","data","grid","table"];
5718
5836
  var author = "Faris Ansari";
@@ -1 +1 @@
1
- :root{--dt-border-color:#d1d8dd;--dt-primary-color:#5292f7;--dt-light-bg:#f5f7fa;--dt-light-red:#fd8b8b;--dt-light-yellow:#fffce7;--dt-orange:#ffa00a;--dt-text-color:#000;--dt-text-light:#dfe2e5;--dt-spacer-1:0.25rem;--dt-spacer-2:0.5rem;--dt-spacer-3:1rem;--dt-border-radius:3px;--dt-cell-bg:#fff;--dt-focus-border-width:2px;--dt-selection-highlight-color:#fffce7;--dt-selection-highlight-color:var(--dt-light-yellow);--dt-toast-message-border:none;--dt-header-cell-bg:#fff;--dt-header-cell-bg:var(--dt-cell-bg)}.datatable *,.datatable :after,.datatable :before{box-sizing:border-box}.datatable{position:relative;overflow:hidden}.dt-scrollable{height:40vw;overflow:auto;border-top:2px solid #d1d8dd;border-top:2px solid var(--dt-border-color)}.dt-scrollable--highlight-all{background-color:#fffce7;background-color:var(--dt-selection-highlight-color)}.dt-scrollable__no-data{text-align:center;padding:1rem;padding:var(--dt-spacer-3);border-left:1px solid #d1d8dd;border-left:1px solid var(--dt-border-color);border-right:1px solid #d1d8dd;border-right:1px solid var(--dt-border-color)}.dt-row{display:flex}.dt-row--highlight .dt-cell{background-color:#fffce7;background-color:var(--dt-selection-highlight-color)}.dt-row--unhighlight .dt-cell{background-color:#fff;background-color:var(--dt-cell-bg)}.dt-row--hide{display:none}.dt-row:last-child:not(.dt-row-filter){border-bottom:1px solid #d1d8dd;border-bottom:1px solid var(--dt-border-color)}.dt-cell{border:1px solid #d1d8dd;border:1px solid var(--dt-border-color);border-bottom:none;border-right:none;position:relative;outline:none;padding:0;background-color:#fff;background-color:var(--dt-cell-bg);color:#000;color:var(--dt-text-color);background-clip:padding-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dt-cell__content{border:2px solid transparent;border:var(--dt-focus-border-width) solid transparent;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dt-cell__content,.dt-cell__edit{padding:.5rem;padding:var(--dt-spacer-2);height:100%}.dt-cell__edit{display:none;background-color:#fff;background-color:var(--dt-cell-bg);border:2px solid #ffa00a;border:var(--dt-focus-border-width) solid var(--dt-orange);z-index:1}.dt-cell__resize-handle{opacity:0;position:absolute;right:-3px;top:0;width:5px;height:100%;cursor:col-resize;z-index:1}.dt-cell--editing .dt-cell__content{display:none}.dt-cell--editing .dt-cell__edit{display:block}.dt-cell--focus .dt-cell__content{border-color:#5292f7;border-color:var(--dt-primary-color)}.dt-cell--dragging,.dt-cell--highlight{background-color:#f5f7fa;background-color:var(--dt-light-bg)}.dt-cell--header{background-color:#fff;background-color:var(--dt-header-cell-bg)}.dt-cell--header:last-child{border-right:1px solid #d1d8dd;border-right:1px solid var(--dt-border-color)}.dt-cell--header .dt-cell__content{padding-right:1rem;padding-right:var(--dt-spacer-3);font-weight:700}.dt-cell--header:hover .dt-dropdown__toggle{opacity:1}.dt-cell--tree-close .icon-open{display:none}.dt-cell--tree-close .icon-close{display:flex}.dt-cell:last-child{border-right:1px solid #d1d8dd;border-right:1px solid var(--dt-border-color)}.icon-close,.icon-open{width:16px;height:16px}.icon-open{display:flex}.icon-close{display:none}.dt-dropdown{position:absolute;right:10px;display:inline-flex;vertical-align:top;text-align:left;font-weight:400;cursor:pointer}.dt-dropdown__toggle{opacity:0;background-color:#fff;background-color:var(--dt-header-cell-bg)}.dt-dropdown__list{position:fixed;min-width:8rem;z-index:1;cursor:pointer;background-color:#fff;background-color:var(--dt-cell-bg);border-radius:3px;border-radius:var(--dt-border-radius);padding:.5rem 0;padding:var(--dt-spacer-2) 0;box-shadow:0 2px 3px hsla(0,0%,4%,.1),0 0 0 1px hsla(0,0%,4%,.1)}.dt-dropdown__list-item{padding:.5rem 1rem;padding:var(--dt-spacer-2) var(--dt-spacer-3)}.dt-dropdown__list-item:hover{background-color:#f5f7fa;background-color:var(--dt-light-bg)}.dt-dropdown--active .dt-dropdown__list{display:block}.dt-tree-node{display:flex;align-items:center;position:relative}.dt-tree-node__toggle{display:inline-block;cursor:pointer;margin-right:.2rem}.dt-toast{position:absolute;bottom:1rem;bottom:var(--dt-spacer-3);left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.dt-toast__message{display:inline-block;background-color:rgba(0,0,0,.8);color:#dfe2e5;color:var(--dt-text-light);border-radius:3px;border-radius:var(--dt-border-radius);padding:.5rem 1rem;padding:var(--dt-spacer-2) var(--dt-spacer-3);border:none;border:var(--dt-toast-message-border)}.dt-input{outline:none;width:100%;border:none;overflow:visible;font-family:inherit;font-size:inherit;line-height:inherit;background-color:inherit;color:inherit;margin:0;padding:0}.dt-freeze{display:flex;justify-content:center;align-content:center;position:absolute;left:0;right:0;top:0;bottom:0;background-color:#f5f7fa;background-color:var(--dt-light-bg);opacity:.5;font-size:2em}.dt-freeze__message{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.dt-paste-target{position:fixed;left:-999em}body.dt-resize{cursor:col-resize}
1
+ :root{--dt-border-color:#d1d8dd;--dt-primary-color:#5292f7;--dt-light-bg:#f5f7fa;--dt-light-red:#fd8b8b;--dt-light-yellow:#fffce7;--dt-orange:#ffa00a;--dt-text-color:#000;--dt-text-light:#dfe2e5;--dt-spacer-1:0.25rem;--dt-spacer-2:0.5rem;--dt-spacer-3:1rem;--dt-border-radius:3px;--dt-cell-bg:#fff;--dt-focus-border-width:2px;--dt-selection-highlight-color:#fffce7;--dt-selection-highlight-color:var(--dt-light-yellow);--dt-toast-message-border:none;--dt-header-cell-bg:#fff;--dt-header-cell-bg:var(--dt-cell-bg)}.datatable *,.datatable :after,.datatable :before{box-sizing:border-box}.datatable{position:relative;overflow:hidden}.dt-scrollable{height:40vw;overflow:auto;border-top:2px solid #d1d8dd;border-top:2px solid var(--dt-border-color)}.dt-scrollable--highlight-all{background-color:#fffce7;background-color:var(--dt-selection-highlight-color)}.dt-scrollable__no-data{text-align:center;padding:1rem;padding:var(--dt-spacer-3);border-left:1px solid #d1d8dd;border-left:1px solid var(--dt-border-color);border-right:1px solid #d1d8dd;border-right:1px solid var(--dt-border-color)}.dt-row{display:flex}.dt-row--highlight .dt-cell{background-color:#fffce7;background-color:var(--dt-selection-highlight-color)}.dt-row--unhighlight .dt-cell{background-color:#fff;background-color:var(--dt-cell-bg)}.dt-row--hide{display:none}.dt-row:last-child:not(.dt-row-filter){border-bottom:1px solid #d1d8dd;border-bottom:1px solid var(--dt-border-color)}.dt-cell{border:1px solid #d1d8dd;border:1px solid var(--dt-border-color);border-bottom:none;border-right:none;position:relative;outline:none;padding:0;background-color:#fff;background-color:var(--dt-cell-bg);color:#000;color:var(--dt-text-color);background-clip:padding-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dt-cell__content{border:2px solid transparent;border:var(--dt-focus-border-width) solid transparent;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dt-cell__content,.dt-cell__edit{padding:.5rem;padding:var(--dt-spacer-2);height:100%}.dt-cell__edit{display:none;background-color:#fff;background-color:var(--dt-cell-bg);border:2px solid #ffa00a;border:var(--dt-focus-border-width) solid var(--dt-orange);z-index:1}.dt-cell__resize-handle{opacity:0;position:absolute;right:-3px;top:0;width:5px;height:100%;cursor:col-resize;z-index:1}.dt-cell--editing .dt-cell__content{display:none}.dt-cell--editing .dt-cell__edit{display:block}.dt-cell--focus .dt-cell__content{border-color:#5292f7;border-color:var(--dt-primary-color)}.dt-cell--dragging,.dt-cell--highlight{background-color:#f5f7fa;background-color:var(--dt-light-bg)}.dt-cell--header{background-color:#fff;background-color:var(--dt-header-cell-bg)}.dt-cell--header:last-child{border-right:1px solid #d1d8dd;border-right:1px solid var(--dt-border-color)}.dt-cell--header .dt-cell__content{padding-right:1rem;padding-right:var(--dt-spacer-3);font-weight:700}.dt-cell--header:hover .dt-dropdown__toggle{opacity:1}.dt-cell--tree-close .icon-open{display:none}.dt-cell--tree-close .icon-close{display:flex}.dt-cell:last-child{border-right:1px solid #d1d8dd;border-right:1px solid var(--dt-border-color)}.datatable[dir=rtl] .dt-cell__resize-handle{right:unset;left:-3px}.icon-close,.icon-open{width:16px;height:16px}.icon-open{display:flex}.icon-close{display:none}.dt-dropdown{position:absolute;right:10px;display:inline-flex;vertical-align:top;text-align:left;font-weight:400;cursor:pointer}.dt-dropdown__toggle{opacity:0;background-color:#fff;background-color:var(--dt-header-cell-bg)}.dt-dropdown__list{position:fixed;min-width:8rem;z-index:1;cursor:pointer;background-color:#fff;background-color:var(--dt-cell-bg);border-radius:3px;border-radius:var(--dt-border-radius);padding:.5rem 0;padding:var(--dt-spacer-2) 0;box-shadow:0 2px 3px hsla(0,0%,4%,.1),0 0 0 1px hsla(0,0%,4%,.1)}.dt-dropdown__list-item{padding:.5rem 1rem;padding:var(--dt-spacer-2) var(--dt-spacer-3)}.dt-dropdown__list-item:hover{background-color:#f5f7fa;background-color:var(--dt-light-bg)}.dt-dropdown--active .dt-dropdown__list{display:block}.dt-tree-node{display:flex;align-items:center;position:relative}.dt-tree-node__toggle{display:inline-block;cursor:pointer;margin-right:.2rem}.dt-toast{position:absolute;bottom:1rem;bottom:var(--dt-spacer-3);left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.dt-toast__message{display:inline-block;background-color:rgba(0,0,0,.8);color:#dfe2e5;color:var(--dt-text-light);border-radius:3px;border-radius:var(--dt-border-radius);padding:.5rem 1rem;padding:var(--dt-spacer-2) var(--dt-spacer-3);border:none;border:var(--dt-toast-message-border)}.dt-input{outline:none;width:100%;border:none;overflow:visible;font-family:inherit;font-size:inherit;line-height:inherit;background-color:inherit;color:inherit;margin:0;padding:0}.dt-freeze{display:flex;justify-content:center;align-content:center;position:absolute;left:0;right:0;top:0;bottom:0;background-color:#f5f7fa;background-color:var(--dt-light-bg);opacity:.5;font-size:2em}.dt-freeze__message{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.dt-paste-target{position:fixed;left:-999em}body.dt-resize{cursor:col-resize}