@knime/kds-components 1.1.4 → 1.1.5

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 (35) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/index.css +147 -26
  3. package/dist/index.js +1368 -711
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/accessories/Icon/KdsDataType.vue.d.ts.map +1 -1
  6. package/dist/src/accessories/Icon/KdsIcon.vue.d.ts.map +1 -1
  7. package/dist/src/accessories/Icon/aliases.d.ts +18 -0
  8. package/dist/src/accessories/Icon/aliases.d.ts.map +1 -0
  9. package/dist/src/accessories/Icon/useIcon.d.ts +5 -0
  10. package/dist/src/accessories/Icon/useIcon.d.ts.map +1 -1
  11. package/dist/src/buttons/ActionButton/ActionButton.vue.d.ts +8 -4
  12. package/dist/src/buttons/ActionButton/ActionButton.vue.d.ts.map +1 -1
  13. package/dist/src/containers/FileExplorer/KdsFileExplorer.vue.d.ts.map +1 -1
  14. package/dist/src/layouts/Tree/BaseTree/BaseTree.vue.d.ts +33 -0
  15. package/dist/src/layouts/Tree/BaseTree/BaseTree.vue.d.ts.map +1 -0
  16. package/dist/src/layouts/Tree/BaseTree/TreeNode.vue.d.ts +17 -0
  17. package/dist/src/layouts/Tree/BaseTree/TreeNode.vue.d.ts.map +1 -0
  18. package/dist/src/layouts/Tree/BaseTree/context.d.ts +4 -0
  19. package/dist/src/layouts/Tree/BaseTree/context.d.ts.map +1 -0
  20. package/dist/src/layouts/Tree/BaseTree/renderNode.d.ts +35 -0
  21. package/dist/src/layouts/Tree/BaseTree/renderNode.d.ts.map +1 -0
  22. package/dist/src/layouts/Tree/BaseTree/useTreeData.d.ts +11 -0
  23. package/dist/src/layouts/Tree/BaseTree/useTreeData.d.ts.map +1 -0
  24. package/dist/src/layouts/Tree/KdsTree.vue.d.ts +159 -0
  25. package/dist/src/layouts/Tree/KdsTree.vue.d.ts.map +1 -0
  26. package/dist/src/layouts/Tree/index.d.ts +3 -0
  27. package/dist/src/layouts/Tree/index.d.ts.map +1 -0
  28. package/dist/src/layouts/Tree/types.d.ts +100 -0
  29. package/dist/src/layouts/Tree/types.d.ts.map +1 -0
  30. package/dist/src/layouts/index.d.ts +2 -0
  31. package/dist/src/layouts/index.d.ts.map +1 -1
  32. package/dist/src/{containers/FileExplorer/useKeyPressedUntilMouseClick/index.d.ts → util/useKeyPressedUntilMouseClick.d.ts} +1 -1
  33. package/dist/src/util/useKeyPressedUntilMouseClick.d.ts.map +1 -0
  34. package/package.json +2 -2
  35. package/dist/src/containers/FileExplorer/useKeyPressedUntilMouseClick/index.d.ts.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # @knime/kds-components
2
2
 
3
+ ## 1.1.5
4
+
5
+ ### Patch Changes
6
+
7
+ - e7ad2b7: Share the icon module cache across all `KdsIcon` instances.
8
+ - 54e6b00: Add KdsTree
9
+ - @knime/kds-styles@1.1.5
10
+
3
11
  ## 1.1.4
4
12
 
5
13
  ### Patch Changes
package/dist/index.css CHANGED
@@ -146,7 +146,7 @@
146
146
  }
147
147
  }
148
148
  .kds-icon {
149
- &[data-v-bff4f419] {
149
+ &[data-v-9a9cd3e8] {
150
150
  --icon-width: var(--kds-dimension-icon-1x);
151
151
  --icon-height: var(--kds-dimension-icon-1x);
152
152
  --icon-stroke-width: var(--kds-border-width-icon-stroke-m);
@@ -160,27 +160,27 @@
160
160
  vertical-align: middle;
161
161
  stroke-width: var(--icon-stroke-width);
162
162
  }
163
- &.xsmall[data-v-bff4f419] {
163
+ &.xsmall[data-v-9a9cd3e8] {
164
164
  --icon-width: var(--kds-dimension-icon-0-56x);
165
165
  --icon-height: var(--kds-dimension-icon-0-56x);
166
166
  --icon-stroke-width: var(--kds-border-width-icon-stroke-s);
167
167
  }
168
- &.small[data-v-bff4f419] {
168
+ &.small[data-v-9a9cd3e8] {
169
169
  --icon-width: var(--kds-dimension-icon-0-75x);
170
170
  --icon-height: var(--kds-dimension-icon-0-75x);
171
171
  --icon-stroke-width: var(--kds-border-width-icon-stroke-s);
172
172
  }
173
- &.large[data-v-bff4f419] {
173
+ &.large[data-v-9a9cd3e8] {
174
174
  --icon-width: var(--kds-dimension-icon-1-25x);
175
175
  --icon-height: var(--kds-dimension-icon-1-25x);
176
176
  --icon-stroke-width: var(--kds-border-width-icon-stroke-l);
177
177
  }
178
178
  }
179
- .kds-icon.disabled[data-v-bff4f419] {
179
+ .kds-icon.disabled[data-v-9a9cd3e8] {
180
180
  color: var(--kds-color-text-and-icon-disabled);
181
181
  }
182
182
  .kds-icon {
183
- &[data-v-667bceea] {
183
+ &[data-v-b929f2eb] {
184
184
  --icon-width: var(--kds-dimension-icon-1x);
185
185
  --icon-height: var(--kds-dimension-icon-1x);
186
186
  --icon-stroke-width: var(--kds-border-width-icon-stroke-m);
@@ -194,24 +194,24 @@
194
194
  vertical-align: middle;
195
195
  stroke-width: var(--icon-stroke-width);
196
196
  }
197
- &.xsmall[data-v-667bceea] {
197
+ &.xsmall[data-v-b929f2eb] {
198
198
  --icon-width: var(--kds-dimension-icon-0-56x);
199
199
  --icon-height: var(--kds-dimension-icon-0-56x);
200
200
  --icon-stroke-width: var(--kds-border-width-icon-stroke-s);
201
201
  }
202
- &.small[data-v-667bceea] {
202
+ &.small[data-v-b929f2eb] {
203
203
  --icon-width: var(--kds-dimension-icon-0-75x);
204
204
  --icon-height: var(--kds-dimension-icon-0-75x);
205
205
  --icon-stroke-width: var(--kds-border-width-icon-stroke-s);
206
206
  }
207
- &.large[data-v-667bceea] {
207
+ &.large[data-v-b929f2eb] {
208
208
  --icon-width: var(--kds-dimension-icon-1-25x);
209
209
  --icon-height: var(--kds-dimension-icon-1-25x);
210
210
  --icon-stroke-width: var(--kds-border-width-icon-stroke-l);
211
211
  }
212
212
  }
213
213
  .kds-data-type-icon-container {
214
- &[data-v-667bceea] {
214
+ &[data-v-b929f2eb] {
215
215
  --data-type-height: var(--kds-dimension-component-height-1x);
216
216
  --data-type-width: var(--kds-dimension-component-width-1x);
217
217
  --data-type-padding: var(--kds-spacing-container-0-12x);
@@ -229,23 +229,23 @@
229
229
 
230
230
  /* The kds-data-type-icon class is needed to increase the specificity to overwrite the icon-stroke-width */
231
231
  }
232
- &.disabled[data-v-667bceea] {
232
+ &.disabled[data-v-b929f2eb] {
233
233
  color: var(--kds-color-text-and-icon-disabled);
234
234
  }
235
- &.small[data-v-667bceea] {
235
+ &.small[data-v-b929f2eb] {
236
236
  --data-type-height: var(--kds-dimension-icon-0-75x);
237
237
  --data-type-width: var(--kds-dimension-icon-0-75x);
238
238
  --data-type-padding: var(--kds-spacing-container-none);
239
239
  }
240
- &.large[data-v-667bceea] {
240
+ &.large[data-v-b929f2eb] {
241
241
  --data-type-height: var(--kds-dimension-component-height-1-25x);
242
242
  --data-type-width: var(--kds-dimension-component-width-1-25x);
243
243
  }
244
244
  & .kds-icon.kds-data-type-icon {
245
- &.small[data-v-667bceea] {
245
+ &.small[data-v-b929f2eb] {
246
246
  --icon-stroke-width: var(--kds-border-width-icon-stroke-m);
247
247
  }
248
- &.medium[data-v-667bceea] {
248
+ &.medium[data-v-b929f2eb] {
249
249
  --icon-stroke-width: var(--kds-border-width-icon-stroke-l);
250
250
  }
251
251
  }
@@ -2076,7 +2076,7 @@ body:has(dialog.modal[open]) {
2076
2076
  cursor: pointer;
2077
2077
  }
2078
2078
 
2079
- .file-explorer[data-v-e6617d12] {
2079
+ .file-explorer[data-v-10e65eb3] {
2080
2080
  display: flex;
2081
2081
  flex: 1 0 0%;
2082
2082
  flex-direction: column;
@@ -2085,10 +2085,10 @@ body:has(dialog.modal[open]) {
2085
2085
  /* needed so that the virtualization container can size the wrapper properly */
2086
2086
  min-height: 0;
2087
2087
  }
2088
- .file-explorer-item[data-v-e6617d12] {
2089
- height: var(--v4f198f8d);
2088
+ .file-explorer-item[data-v-10e65eb3] {
2089
+ height: var(--v4225dc64);
2090
2090
  }
2091
- thead[data-v-e6617d12] {
2091
+ thead[data-v-10e65eb3] {
2092
2092
  /* Hide table head for better readability but keeping it for a11y reasons */
2093
2093
  position: absolute;
2094
2094
 
@@ -2099,7 +2099,7 @@ thead[data-v-e6617d12] {
2099
2099
  overflow: hidden;
2100
2100
  white-space: nowrap; /* added line */
2101
2101
  }
2102
- table[data-v-e6617d12] {
2102
+ table[data-v-10e65eb3] {
2103
2103
  height: 100%;
2104
2104
  overflow: hidden auto;
2105
2105
  scrollbar-gutter: stable;
@@ -2110,31 +2110,31 @@ table[data-v-e6617d12] {
2110
2110
  }
2111
2111
  table,
2112
2112
  tbody {
2113
- &[data-v-e6617d12] {
2113
+ &[data-v-10e65eb3] {
2114
2114
  width: 100%;
2115
2115
  border-spacing: 0;
2116
2116
  }
2117
- &[data-v-e6617d12]:not(:has(.empty)) {
2117
+ &[data-v-10e65eb3]:not(:has(.empty)) {
2118
2118
  display: block;
2119
2119
  }
2120
2120
  }
2121
2121
  table:focus {
2122
- &[data-v-e6617d12] {
2122
+ &[data-v-10e65eb3] {
2123
2123
  outline: none;
2124
2124
  }
2125
- &.keyboard-focus[data-v-e6617d12] {
2125
+ &.keyboard-focus[data-v-10e65eb3] {
2126
2126
  outline: 2px solid var(--kds-color-focus-outline);
2127
2127
  border-radius: var(--kds-border-radius-container-0-25x);
2128
2128
  }
2129
2129
  }
2130
- .empty[data-v-e6617d12] {
2130
+ .empty[data-v-10e65eb3] {
2131
2131
  display: flex;
2132
2132
  align-items: center;
2133
2133
  justify-content: center;
2134
2134
  padding: var(--kds-spacing-container-0-37x);
2135
2135
  margin: var(--kds-spacing-container-4x) 0;
2136
2136
  }
2137
- .custom-preview[data-v-e6617d12] {
2137
+ .custom-preview[data-v-10e65eb3] {
2138
2138
  position: fixed;
2139
2139
  top: 0;
2140
2140
  left: 0;
@@ -4611,6 +4611,127 @@ li {
4611
4611
  }
4612
4612
  }
4613
4613
 
4614
+ .tree-node-wrapper[data-v-5d13b0e7] {
4615
+ display: flex;
4616
+ width: 100%;
4617
+ min-width: 0;
4618
+ height: var(--kds-dimension-component-height-1-5x);
4619
+ }
4620
+ .tree-node[data-v-5d13b0e7] {
4621
+ display: flex;
4622
+ gap: var(--kds-spacing-container-0-25x);
4623
+ align-items: center;
4624
+ width: 100%;
4625
+ min-width: 0;
4626
+ max-width: 100%;
4627
+ padding-left: var(--kds-spacing-container-1x);
4628
+ overflow: hidden;
4629
+ }
4630
+ .tree-node-label[data-v-5d13b0e7] {
4631
+ min-width: 0;
4632
+ overflow: hidden;
4633
+ text-overflow: ellipsis;
4634
+ white-space: nowrap;
4635
+ }
4636
+ .expandable[data-v-5d13b0e7] {
4637
+ padding-left: var(--kds-spacing-container-none);
4638
+ font: var(--kds-font-base-interactive-small-strong);
4639
+ }
4640
+ .virtual-tree {
4641
+ &[data-v-5d13b0e7] {
4642
+ --virtual-tree-indent: var(--kds-spacing-container-1x);
4643
+ }
4644
+ &[data-v-5d13b0e7]:focus {
4645
+ outline: none;
4646
+ }
4647
+ }
4648
+
4649
+ .virtual-tree.keyboard-nav .virtual-tree-node.focused {
4650
+ padding-right: var(--kds-spacing-container-0-37x);
4651
+ padding-left: calc(
4652
+ var(--virtual-tree-level, 0) * var(--virtual-tree-indent) +
4653
+ var(--kds-spacing-container-0-12x)
4654
+ );
4655
+ border: var(--kds-border-action-focused);
4656
+ }
4657
+ .virtual-tree {
4658
+ position: relative;
4659
+ display: block;
4660
+ width: 100%;
4661
+ height: 100%;
4662
+ user-select: none;
4663
+ }
4664
+ .virtual-tree-node {
4665
+ position: relative;
4666
+ display: grid;
4667
+ grid-template-columns: var(--kds-dimension-component-width-0-75x) auto;
4668
+ gap: var(--kds-spacing-container-0-25x);
4669
+ height: var(--kds-dimension-component-height-1-5x);
4670
+ padding-right: var(--kds-spacing-container-0-5x);
4671
+ padding-left: calc(
4672
+ var(--virtual-tree-level, 0) * var(--virtual-tree-indent) +
4673
+ var(--kds-spacing-container-0-25x)
4674
+ );
4675
+ font: var(--kds-font-base-interactive-small);
4676
+ color: var(--kds-color-text-and-icon-neutral);
4677
+ cursor: pointer;
4678
+ border-radius: var(--kds-border-radius-container-0-25x);
4679
+ }
4680
+ .virtual-tree-node:not(.disabled):hover {
4681
+ background-color: var(--kds-color-background-neutral-hover);
4682
+ }
4683
+ .virtual-tree-node:not(.disabled):active {
4684
+ background-color: var(--kds-color-background-neutral-active);
4685
+ }
4686
+ .virtual-tree-node.disabled {
4687
+ color: var(--kds-color-text-and-icon-disabled);
4688
+ cursor: default;
4689
+ }
4690
+ .virtual-tree-node.selected {
4691
+ color: var(--kds-color-text-and-icon-selected);
4692
+ background-color: var(--kds-color-background-selected-initial);
4693
+ }
4694
+ .virtual-tree-node.selected::before {
4695
+ position: absolute;
4696
+ top: 50%;
4697
+ left: 0;
4698
+ width: var(--kds-dimension-component-width-0-125x);
4699
+ height: var(--kds-dimension-component-height-1x);
4700
+ content: "";
4701
+ background: var(--kds-color-background-selected-bold-initial);
4702
+ border-top-right-radius: var(--kds-border-radius-container-0-12x);
4703
+ border-bottom-right-radius: var(--kds-border-radius-container-0-12x);
4704
+ transform: translateY(-50%);
4705
+ }
4706
+ .virtual-tree-node.selected:hover {
4707
+ background-color: var(--kds-color-background-selected-hover);
4708
+ }
4709
+ .virtual-tree-node.selected:active {
4710
+ background-color: var(--kds-color-background-selected-active);
4711
+ }
4712
+ .virtual-tree-node .node-arrow {
4713
+ display: flex;
4714
+ align-items: center;
4715
+ cursor: pointer;
4716
+ transition: transform 0.3s ease;
4717
+ }
4718
+ .virtual-tree-node .node-arrow:empty {
4719
+ display: none;
4720
+ }
4721
+ .virtual-tree-node:has(.node-arrow:empty) {
4722
+ grid-template-columns: 1fr;
4723
+ }
4724
+ .virtual-tree-node .node-arrow.expanded:not(.loading) {
4725
+ transform: rotate(90deg);
4726
+ }
4727
+ .virtual-tree-node .node-content {
4728
+ display: flex;
4729
+ align-items: center;
4730
+ width: 100%;
4731
+ max-width: 100%;
4732
+ overflow: hidden;
4733
+ }
4734
+
4614
4735
  .description {
4615
4736
  &[data-v-ed6ba7bb] {
4616
4737
  font: var(--kds-font-base-body-small);