jupyterlab_tabular_data_viewer_extension 1.5.11 → 1.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/widget.js CHANGED
@@ -503,7 +503,7 @@ export class TabularDataViewer extends Widget {
503
503
  }
504
504
  });
505
505
  // Add click handler for row selection/highlighting (anywhere on row)
506
- tr.addEventListener('click', (e) => {
506
+ tr.addEventListener('click', e => {
507
507
  e.stopPropagation();
508
508
  // If clicking the already selected row, deselect it
509
509
  if (this._selectedRow === tr) {
@@ -891,7 +891,9 @@ export class TabularDataViewer extends Widget {
891
891
  params.append('useRegex', String(this._useRegex));
892
892
  // Use URLExt to construct proper URL
893
893
  const settings = ServerConnection.makeSettings();
894
- const downloadUrl = URLExt.join(settings.baseUrl, 'jupyterlab-tabular-data-viewer-extension', 'download') + '?' + params.toString();
894
+ const downloadUrl = URLExt.join(settings.baseUrl, 'jupyterlab-tabular-data-viewer-extension', 'download') +
895
+ '?' +
896
+ params.toString();
895
897
  // Create temporary link and trigger download
896
898
  const link = document.createElement('a');
897
899
  link.href = downloadUrl;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jupyterlab_tabular_data_viewer_extension",
3
- "version": "1.5.11",
3
+ "version": "1.6.2",
4
4
  "description": "Jupyterlab extension to browse tabular data files (Parquet, Excel, CSV, TSV) with filtering and sorting capabilities",
5
5
  "keywords": [
6
6
  "jupyter",
package/src/modal.ts CHANGED
@@ -574,7 +574,10 @@ export class DownloadModal extends Widget {
574
574
  /**
575
575
  * Create a format button
576
576
  */
577
- private _createFormatButton(label: string, format: string): HTMLButtonElement {
577
+ private _createFormatButton(
578
+ label: string,
579
+ format: string
580
+ ): HTMLButtonElement {
578
581
  const btn = document.createElement('button');
579
582
  btn.className = 'jp-FilterModal-button';
580
583
  btn.textContent = label;
package/src/widget.ts CHANGED
@@ -275,8 +275,8 @@ export class TabularDataViewer extends Widget {
275
275
  * Show download modal dialog
276
276
  */
277
277
  public showDownloadModal(): void {
278
- const modal = new DownloadModal(
279
- (format: string) => this.downloadFilteredData(format)
278
+ const modal = new DownloadModal((format: string) =>
279
+ this.downloadFilteredData(format)
280
280
  );
281
281
  modal.show();
282
282
  }
@@ -416,9 +416,13 @@ export class TabularDataViewer extends Widget {
416
416
  // Filter input is empty but filter is still active - clear it
417
417
  delete this._filters[col.name];
418
418
  // Also clear the filter button active state if it's a multi-select filter
419
- const filterButton = filterInput.parentElement?.querySelector('.jp-TabularDataViewer-filterButton');
419
+ const filterButton = filterInput.parentElement?.querySelector(
420
+ '.jp-TabularDataViewer-filterButton'
421
+ );
420
422
  if (filterButton) {
421
- filterButton.classList.remove('jp-TabularDataViewer-filterButton-active');
423
+ filterButton.classList.remove(
424
+ 'jp-TabularDataViewer-filterButton-active'
425
+ );
422
426
  }
423
427
  // Reload data without the filter
424
428
  this._loadData(true);
@@ -593,7 +597,7 @@ export class TabularDataViewer extends Widget {
593
597
  });
594
598
 
595
599
  // Add click handler for row selection/highlighting (anywhere on row)
596
- tr.addEventListener('click', (e) => {
600
+ tr.addEventListener('click', e => {
597
601
  e.stopPropagation();
598
602
 
599
603
  // If clicking the already selected row, deselect it
@@ -603,7 +607,9 @@ export class TabularDataViewer extends Widget {
603
607
  } else {
604
608
  // Remove highlight from previously selected row
605
609
  if (this._selectedRow) {
606
- this._selectedRow.classList.remove('jp-TabularDataViewer-row-selected');
610
+ this._selectedRow.classList.remove(
611
+ 'jp-TabularDataViewer-row-selected'
612
+ );
607
613
  }
608
614
 
609
615
  // Highlight the new row
@@ -1110,7 +1116,9 @@ export class TabularDataViewer extends Widget {
1110
1116
  * Download filtered and sorted data
1111
1117
  * @param format - Download format: 'original', 'xlsx', or 'csv'
1112
1118
  */
1113
- public async downloadFilteredData(format: string = 'original'): Promise<void> {
1119
+ public async downloadFilteredData(
1120
+ format: string = 'original'
1121
+ ): Promise<void> {
1114
1122
  try {
1115
1123
  // Build download URL with current filters and sorting
1116
1124
  const params = new URLSearchParams();
@@ -1134,11 +1142,14 @@ export class TabularDataViewer extends Widget {
1134
1142
 
1135
1143
  // Use URLExt to construct proper URL
1136
1144
  const settings = ServerConnection.makeSettings();
1137
- const downloadUrl = URLExt.join(
1138
- settings.baseUrl,
1139
- 'jupyterlab-tabular-data-viewer-extension',
1140
- 'download'
1141
- ) + '?' + params.toString();
1145
+ const downloadUrl =
1146
+ URLExt.join(
1147
+ settings.baseUrl,
1148
+ 'jupyterlab-tabular-data-viewer-extension',
1149
+ 'download'
1150
+ ) +
1151
+ '?' +
1152
+ params.toString();
1142
1153
 
1143
1154
  // Create temporary link and trigger download
1144
1155
  const link = document.createElement('a');
package/style/base.css CHANGED
@@ -163,7 +163,7 @@
163
163
 
164
164
  .jp-TabularDataViewer-columnName {
165
165
  color: var(--jp-ui-font-color1);
166
- font-size: calc(var(--jp-ui-font-size1) * 1.10);
166
+ font-size: calc(var(--jp-ui-font-size1) * 1.1);
167
167
  margin-bottom: 2px;
168
168
  word-break: break-word;
169
169
  }
@@ -267,15 +267,27 @@
267
267
 
268
268
  /* Selected row highlighting */
269
269
  .jp-TabularDataViewer-row-selected {
270
- background-color: color-mix(in srgb, var(--jp-brand-color1) 10%, transparent) !important;
270
+ background-color: color-mix(
271
+ in srgb,
272
+ var(--jp-brand-color1) 10%,
273
+ transparent
274
+ ) !important;
271
275
  }
272
276
 
273
277
  .jp-TabularDataViewer-row-selected .jp-TabularDataViewer-cell {
274
- background-color: color-mix(in srgb, var(--jp-brand-color1) 10%, transparent) !important;
278
+ background-color: color-mix(
279
+ in srgb,
280
+ var(--jp-brand-color1) 10%,
281
+ transparent
282
+ ) !important;
275
283
  }
276
284
 
277
285
  .jp-TabularDataViewer-row-selected .jp-TabularDataViewer-rowNumberCell {
278
- background-color: color-mix(in srgb, var(--jp-brand-color1) 20%, var(--jp-layout-color2)) !important;
286
+ background-color: color-mix(
287
+ in srgb,
288
+ var(--jp-brand-color1) 20%,
289
+ var(--jp-layout-color2)
290
+ ) !important;
279
291
  }
280
292
 
281
293
  .jp-TabularDataViewer-cell:last-child {
@@ -756,7 +768,6 @@
756
768
  border-color: var(--jp-border-color1);
757
769
  }
758
770
 
759
-
760
771
  /* Download Modal - Format Buttons */
761
772
  .jp-FilterModal-buttons {
762
773
  display: flex;