@knime/kds-table 0.7.0 → 0.8.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.
Files changed (56) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +28 -9
  3. package/dist/index.css +19 -8
  4. package/dist/index.js +8235 -7454
  5. package/dist/index.js.map +1 -1
  6. package/dist/src/components/TableBodyNavigatable.vue.d.ts +10 -13
  7. package/dist/src/components/TableBodyNavigatable.vue.d.ts.map +1 -1
  8. package/dist/src/components/TableCore.vue.d.ts +20 -249
  9. package/dist/src/components/TableCore.vue.d.ts.map +1 -1
  10. package/dist/src/components/TableCoreVirtual.vue.d.ts +19 -24
  11. package/dist/src/components/TableCoreVirtual.vue.d.ts.map +1 -1
  12. package/dist/src/components/TableUI.vue.d.ts +168 -953
  13. package/dist/src/components/TableUI.vue.d.ts.map +1 -1
  14. package/dist/src/components/TableUIWithAutoSizeCalculation.vue.d.ts +203 -2192
  15. package/dist/src/components/TableUIWithAutoSizeCalculation.vue.d.ts.map +1 -1
  16. package/dist/src/components/VirtualRow.vue.d.ts +9 -13
  17. package/dist/src/components/VirtualRow.vue.d.ts.map +1 -1
  18. package/dist/src/components/control/PageControls.vue.d.ts +65 -222
  19. package/dist/src/components/control/PageControls.vue.d.ts.map +1 -1
  20. package/dist/src/components/control/PageNavigation.vue.d.ts +3 -2
  21. package/dist/src/components/control/PageNavigation.vue.d.ts.map +1 -1
  22. package/dist/src/components/control/PageRowRange.vue.d.ts +2 -1
  23. package/dist/src/components/control/PageRowRange.vue.d.ts.map +1 -1
  24. package/dist/src/components/control/TableActionBar.vue.d.ts +7 -11
  25. package/dist/src/components/control/TableActionBar.vue.d.ts.map +1 -1
  26. package/dist/src/components/control/actionbar/PopoverContainer.vue.d.ts +9 -12
  27. package/dist/src/components/control/actionbar/PopoverContainer.vue.d.ts.map +1 -1
  28. package/dist/src/components/control/actionbar/SortControl.vue.d.ts +3 -139
  29. package/dist/src/components/control/actionbar/SortControl.vue.d.ts.map +1 -1
  30. package/dist/src/components/layout/Cell.vue.d.ts +6 -203
  31. package/dist/src/components/layout/Cell.vue.d.ts.map +1 -1
  32. package/dist/src/components/layout/CellRenderer.vue.d.ts +14 -21
  33. package/dist/src/components/layout/CellRenderer.vue.d.ts.map +1 -1
  34. package/dist/src/components/layout/CellRendererProps.d.ts +5 -0
  35. package/dist/src/components/layout/CellRendererProps.d.ts.map +1 -1
  36. package/dist/src/components/layout/Header.vue.d.ts +21 -79
  37. package/dist/src/components/layout/Header.vue.d.ts.map +1 -1
  38. package/dist/src/components/layout/HeaderCell.vue.d.ts +10 -132
  39. package/dist/src/components/layout/HeaderCell.vue.d.ts.map +1 -1
  40. package/dist/src/components/layout/NewRowButton.vue.d.ts +3 -2
  41. package/dist/src/components/layout/NewRowButton.vue.d.ts.map +1 -1
  42. package/dist/src/components/layout/Row.vue.d.ts +19 -241
  43. package/dist/src/components/layout/Row.vue.d.ts.map +1 -1
  44. package/dist/src/components/ui/CellExpandButton.vue.d.ts +3 -2
  45. package/dist/src/components/ui/CellExpandButton.vue.d.ts.map +1 -1
  46. package/dist/src/components/ui/CellSelectionOverlay.vue.d.ts +3 -4
  47. package/dist/src/components/ui/CellSelectionOverlay.vue.d.ts.map +1 -1
  48. package/dist/src/components/ui/EmptyRow.vue.d.ts +2 -1
  49. package/dist/src/components/ui/EmptyRow.vue.d.ts.map +1 -1
  50. package/dist/src/components/ui/PlaceholderRow.vue.d.ts +2 -1
  51. package/dist/src/components/ui/PlaceholderRow.vue.d.ts.map +1 -1
  52. package/dist/src/constants.d.ts +6 -6
  53. package/dist/src/constants.d.ts.map +1 -1
  54. package/dist/src/types/ColumnConfig.d.ts +6 -0
  55. package/dist/src/types/ColumnConfig.d.ts.map +1 -1
  56. package/package.json +8 -9
package/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # @knime/kds-table
2
2
 
3
+ ## 0.8.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [7e008e1]
8
+ - Updated dependencies [6fa993e]
9
+ - @knime/utils@2.0.0
10
+ - @knime/kds-components@2.7.0
11
+ - @knime/kds-styles@2.7.0
12
+
13
+ ## 0.8.0
14
+
15
+ ### Minor Changes
16
+
17
+ - f171bc8: `TableUI`: added optional `overlayDataValueViewButton` flag to `ColumnConfig` that overlays the data value view button on top of the cell content instead of reserving space next to it, so slotted content (e.g. images) does not shrink when the button appears on hover.
18
+
19
+ ### Patch Changes
20
+
21
+ - Updated dependencies [1f991d6]
22
+ - Updated dependencies [3e20664]
23
+ - @knime/kds-components@2.6.1
24
+ - @knime/kds-styles@2.6.1
25
+
3
26
  ## 0.7.0
4
27
 
5
28
  ### Minor Changes
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # KNIME® Design System – Table Component
2
2
 
3
- This is part of the [KNIME Design System](../README.md) maintained by the [UI Core Team](mailto:team-ui-core@knime.com).
3
+ This is part of the [KNIME Design System](../README.md).
4
4
 
5
5
  This package contains the table component used by e.g. the TableView of KNIME Analytics Platform and KNIME Hub. It is based on the [Vue] JavaScript framework and built on the KNIME Design System tokens.
6
6
 
@@ -35,14 +35,6 @@ pnpm run coverage # Generate coverage reports
35
35
 
36
36
  Coverage data is collected at the root level and merged with Storybook coverage for SonarQube reporting.
37
37
 
38
- ### Running security audit
39
-
40
- Security audits are run at the monorepo root:
41
-
42
- ```sh
43
- pnpm run audit
44
- ```
45
-
46
38
  ### TypeScript setup
47
39
 
48
40
  The package-level [tsconfig.json](tsconfig.json) is the source of truth for editor support and `pnpm run type-check`.
@@ -105,6 +97,33 @@ Use in Template
105
97
  </template>
106
98
  ```
107
99
 
100
+ ### Using with Vitest, Nuxt, or Vite SSR
101
+
102
+ The published JavaScript imports its CSS as a side effect (e.g.
103
+ `import "./index.css"`), which bundlers handle automatically. When the package
104
+ is instead evaluated by Node's native ESM loader — as **Vitest** and
105
+ **Vite/Nuxt SSR** do by default, since they externalize `node_modules` — Node
106
+ has no `.css` loader and throws `Unknown file extension ".css"`. Configure the
107
+ consuming project once so `@knime/*` packages are processed instead of
108
+ externalized:
109
+
110
+ ```ts
111
+ // Vitest — vitest.config.ts
112
+ export default defineConfig({
113
+ test: { server: { deps: { inline: [/@knime\//] } } },
114
+ });
115
+ ```
116
+
117
+ ```ts
118
+ // Vite SSR — vite.config.ts
119
+ export default defineConfig({ ssr: { noExternal: [/@knime\//] } });
120
+ ```
121
+
122
+ ```ts
123
+ // Nuxt — nuxt.config.ts
124
+ export default defineNuxtConfig({ build: { transpile: [/@knime\//] } });
125
+ ```
126
+
108
127
  ### Requirements
109
128
 
110
129
  The KNIME-Table expects that the embedding app provides the following:
package/dist/index.css CHANGED
@@ -169,17 +169,17 @@ tr {
169
169
  }
170
170
  }
171
171
 
172
- .sort-popover[data-v-0885d523] {
172
+ .sort-popover[data-v-97a272c8] {
173
173
  position-try-order: most-inline-size;
174
174
  }
175
175
  .popover-container {
176
176
  .body {
177
- &[data-v-0885d523] {
177
+ &[data-v-97a272c8] {
178
178
  display: grid;
179
179
  grid-template-columns: 1fr 1fr;
180
180
  gap: var(--kds-spacing-container-0-5x);
181
181
  }
182
- &[data-v-0885d523] > * {
182
+ &[data-v-97a272c8] > * {
183
183
  min-width: 0;
184
184
  }
185
185
  }
@@ -445,7 +445,7 @@ thead {
445
445
  }
446
446
 
447
447
  .data-cell {
448
- &[data-v-e7fb7b49] {
448
+ &[data-v-a7720ed9] {
449
449
  display: flex;
450
450
  font: var(--kds-font-base-interactive-small);
451
451
  color: var(--kds-color-text-and-icon-neutral);
@@ -453,10 +453,10 @@ thead {
453
453
  user-select: none;
454
454
  background-clip: border-box;
455
455
  }
456
- &.in-cell-selection[data-v-e7fb7b49] {
456
+ &.in-cell-selection[data-v-a7720ed9] {
457
457
  background-color: var(--kds-color-focus-background);
458
458
  }
459
- &.colored-cell[data-v-e7fb7b49] {
459
+ &.colored-cell[data-v-a7720ed9] {
460
460
  /* stylelint-disable no-unknown-custom-properties -- runtime variable set via inline :style */
461
461
  background-image: linear-gradient(
462
462
  90deg,
@@ -467,14 +467,25 @@ thead {
467
467
  background-repeat: no-repeat;
468
468
  background-size: var(--kds-spacing-container-0-25x);
469
469
  }
470
- & .cell-content[data-v-e7fb7b49] {
470
+ & .cell-content {
471
+ &[data-v-a7720ed9] {
472
+ position: relative;
471
473
  display: flex;
472
474
  gap: var(--kds-spacing-container-0-25x);
473
475
  align-self: flex-start;
474
476
  justify-content: space-between;
475
477
  width: 100%;
478
+
479
+ /* Anchored at the same height as the buttons of padded (non-slotted)
480
+ cells, so it lines up with the other columns' buttons in the row. */
481
+ }
482
+ & > .overlaid[data-v-a7720ed9] {
483
+ position: absolute;
484
+ top: var(--ceb68c32);
485
+ right: 0;
486
+ }
476
487
  }
477
- & .cell-content .cell-text[data-v-e7fb7b49] {
488
+ & .cell-content .cell-text[data-v-a7720ed9] {
478
489
  flex: 0 1 auto;
479
490
  min-width: 0;
480
491
  overflow: hidden;