@knime/kds-table 6.12.0 → 6.12.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/CHANGELOG.md +18 -0
- package/dist/index.css +18 -18
- package/dist/index.js +77 -42
- package/dist/index.js.map +1 -1
- package/dist/src/components/TableUI.vue.d.ts +2 -0
- package/dist/src/components/TableUI.vue.d.ts.map +1 -1
- package/dist/src/components/TableUIWithAutoSizeCalculation.vue.d.ts +2 -0
- package/dist/src/components/TableUIWithAutoSizeCalculation.vue.d.ts.map +1 -1
- package/dist/src/components/composables/useVisibleAfterAvailableWidth.d.ts +16 -0
- package/dist/src/components/composables/useVisibleAfterAvailableWidth.d.ts.map +1 -0
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @knime/kds-table
|
|
2
2
|
|
|
3
|
+
## 6.12.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 6e9b531: Hide the action bar in case it's empty due to hiding the sort button
|
|
8
|
+
- @knime/kds-components@6.12.2
|
|
9
|
+
- @knime/kds-styles@6.12.2
|
|
10
|
+
|
|
11
|
+
## 6.12.1
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- 720c835: `TableUI`: no longer flickers on initial load. It stays hidden until one tick
|
|
16
|
+
after it has reported its available width for the first time, so column sizes
|
|
17
|
+
derived from that width are already applied when it first becomes visible.
|
|
18
|
+
- @knime/kds-components@6.12.1
|
|
19
|
+
- @knime/kds-styles@6.12.1
|
|
20
|
+
|
|
3
21
|
## 6.12.0
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
package/dist/index.css
CHANGED
|
@@ -215,7 +215,7 @@ tr {
|
|
|
215
215
|
}
|
|
216
216
|
|
|
217
217
|
.kds-table-action-bar {
|
|
218
|
-
&[data-v-
|
|
218
|
+
&[data-v-b0b2c849] {
|
|
219
219
|
display: grid;
|
|
220
220
|
grid-template-columns: 1fr 1fr 1fr;
|
|
221
221
|
min-height: var(--kds-dimension-component-height-2-5x);
|
|
@@ -223,42 +223,42 @@ tr {
|
|
|
223
223
|
padding-left: var(--kds-spacing-container-0-5x);
|
|
224
224
|
border-bottom: var(--kds-border-base-subtle);
|
|
225
225
|
}
|
|
226
|
-
&.temporary-view[data-v-
|
|
226
|
+
&.temporary-view[data-v-b0b2c849] {
|
|
227
227
|
background-color: var(--kds-color-background-static-info-muted);
|
|
228
228
|
}
|
|
229
|
-
& .dimension[data-v-
|
|
229
|
+
& .dimension[data-v-b0b2c849] {
|
|
230
230
|
font: var(--kds-font-base-title-small);
|
|
231
231
|
color: var(--kds-color-text-and-icon-muted);
|
|
232
232
|
white-space: pre;
|
|
233
233
|
}
|
|
234
234
|
& .preview {
|
|
235
|
-
&[data-v-
|
|
235
|
+
&[data-v-b0b2c849] {
|
|
236
236
|
display: flex;
|
|
237
237
|
gap: var(--kds-spacing-container-0-12x);
|
|
238
238
|
align-items: center;
|
|
239
239
|
}
|
|
240
|
-
& .preview-label[data-v-
|
|
240
|
+
& .preview-label[data-v-b0b2c849] {
|
|
241
241
|
font: var(--kds-font-base-title-small-strong);
|
|
242
242
|
color: var(--kds-color-text-and-icon-neutral);
|
|
243
243
|
}
|
|
244
244
|
}
|
|
245
|
-
& .left[data-v-
|
|
246
|
-
& .center[data-v-
|
|
247
|
-
& .right[data-v-
|
|
245
|
+
& .left[data-v-b0b2c849],
|
|
246
|
+
& .center[data-v-b0b2c849],
|
|
247
|
+
& .right[data-v-b0b2c849] {
|
|
248
248
|
display: flex;
|
|
249
249
|
flex: 1;
|
|
250
250
|
align-items: center;
|
|
251
251
|
min-width: 0;
|
|
252
252
|
padding: var(--kds-spacing-container-0-12x) 0;
|
|
253
253
|
}
|
|
254
|
-
& .left[data-v-
|
|
255
|
-
& .center[data-v-
|
|
254
|
+
& .left[data-v-b0b2c849],
|
|
255
|
+
& .center[data-v-b0b2c849] {
|
|
256
256
|
gap: var(--kds-spacing-container-0-5x);
|
|
257
257
|
}
|
|
258
|
-
& .center[data-v-
|
|
258
|
+
& .center[data-v-b0b2c849] {
|
|
259
259
|
justify-content: center;
|
|
260
260
|
}
|
|
261
|
-
& .right[data-v-
|
|
261
|
+
& .right[data-v-b0b2c849] {
|
|
262
262
|
gap: var(--kds-spacing-container-0-25x);
|
|
263
263
|
justify-content: flex-end;
|
|
264
264
|
}
|
|
@@ -636,7 +636,7 @@ tr.row {
|
|
|
636
636
|
}
|
|
637
637
|
}
|
|
638
638
|
|
|
639
|
-
.wrapper[data-v-
|
|
639
|
+
.wrapper[data-v-bc9c37d0] {
|
|
640
640
|
display: flex;
|
|
641
641
|
flex-direction: column;
|
|
642
642
|
width: 100%;
|
|
@@ -646,7 +646,7 @@ tr.row {
|
|
|
646
646
|
}
|
|
647
647
|
}
|
|
648
648
|
table {
|
|
649
|
-
&[data-v-
|
|
649
|
+
&[data-v-bc9c37d0] {
|
|
650
650
|
position: relative;
|
|
651
651
|
display: flex;
|
|
652
652
|
flex-grow: 1;
|
|
@@ -654,20 +654,20 @@ table {
|
|
|
654
654
|
width: 100%;
|
|
655
655
|
min-height: 0;
|
|
656
656
|
}
|
|
657
|
-
&[data-v-
|
|
657
|
+
&[data-v-bc9c37d0]:focus {
|
|
658
658
|
outline: none;
|
|
659
659
|
}
|
|
660
|
-
& .new-row-footer[data-v-
|
|
660
|
+
& .new-row-footer[data-v-bc9c37d0] {
|
|
661
661
|
width: 100%;
|
|
662
662
|
}
|
|
663
663
|
}
|
|
664
664
|
|
|
665
665
|
/* The empty state is placed into the rows' area by TableCoreVirtual. */
|
|
666
|
-
.empty-state[data-v-
|
|
666
|
+
.empty-state[data-v-bc9c37d0] {
|
|
667
667
|
max-width: 100%;
|
|
668
668
|
}
|
|
669
669
|
|
|
670
|
-
.table-column-size-calculation[data-v-
|
|
670
|
+
.table-column-size-calculation[data-v-f0e4039f] {
|
|
671
671
|
position: absolute;
|
|
672
672
|
top: -9999px;
|
|
673
673
|
left: -9999px;
|
package/dist/index.js
CHANGED
|
@@ -4368,7 +4368,7 @@ var injectColumnSizes = () => {
|
|
|
4368
4368
|
};
|
|
4369
4369
|
//#endregion
|
|
4370
4370
|
//#region src/components/ui/EmptyRow.vue?vue&type=script&setup=true&lang.ts
|
|
4371
|
-
var _hoisted_1$
|
|
4371
|
+
var _hoisted_1$11 = {
|
|
4372
4372
|
key: 0,
|
|
4373
4373
|
class: "deletion-cell-spacer"
|
|
4374
4374
|
};
|
|
@@ -4394,7 +4394,7 @@ var EmptyRow_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
4394
4394
|
height: `${__props.height}px`
|
|
4395
4395
|
})
|
|
4396
4396
|
}, [
|
|
4397
|
-
__props.tableConfig.enableRowDeletion ? (openBlock(), createElementBlock("td", _hoisted_1$
|
|
4397
|
+
__props.tableConfig.enableRowDeletion ? (openBlock(), createElementBlock("td", _hoisted_1$11)) : createCommentVNode("", true),
|
|
4398
4398
|
__props.tableConfig.showSelection ? (openBlock(), createElementBlock("td", {
|
|
4399
4399
|
key: 1,
|
|
4400
4400
|
class: "select-cell",
|
|
@@ -5246,8 +5246,33 @@ var createEditingCellKeydownHandler = ({ moveSelection }) => {
|
|
|
5246
5246
|
};
|
|
5247
5247
|
};
|
|
5248
5248
|
//#endregion
|
|
5249
|
+
//#region src/components/composables/useVisibleAfterAvailableWidth.ts
|
|
5250
|
+
/**
|
|
5251
|
+
* Keeps the table hidden until one tick after the available width has been
|
|
5252
|
+
* reported for the first time.
|
|
5253
|
+
*
|
|
5254
|
+
* Column sizes that are derived from the available width (see the
|
|
5255
|
+
* `update:available-width` emit) can only be applied once that width is known,
|
|
5256
|
+
* i.e. anything rendered before that is rendered at sizes which are about to
|
|
5257
|
+
* change — a visible jump on every initial load. Waiting one tick after the
|
|
5258
|
+
* report lets the reaction to it (and with it the column-size CSS variables)
|
|
5259
|
+
* reach the DOM first, so the first frame the user sees is the final one.
|
|
5260
|
+
*/
|
|
5261
|
+
var useVisibleAfterAvailableWidth = () => {
|
|
5262
|
+
const isVisible = ref(false);
|
|
5263
|
+
const onAvailableWidthReported = async () => {
|
|
5264
|
+
if (isVisible.value) return;
|
|
5265
|
+
await nextTick();
|
|
5266
|
+
isVisible.value = true;
|
|
5267
|
+
};
|
|
5268
|
+
return {
|
|
5269
|
+
isVisible,
|
|
5270
|
+
onAvailableWidthReported
|
|
5271
|
+
};
|
|
5272
|
+
};
|
|
5273
|
+
//#endregion
|
|
5249
5274
|
//#region src/components/control/PageNavigation.vue?vue&type=script&setup=true&lang.ts
|
|
5250
|
-
var _hoisted_1$
|
|
5275
|
+
var _hoisted_1$10 = { class: "page-navigation" };
|
|
5251
5276
|
var _hoisted_2$7 = { class: "navigation-buttons" };
|
|
5252
5277
|
var _hoisted_3$4 = { class: "page-count" };
|
|
5253
5278
|
var _hoisted_4$3 = { class: "navigation-buttons" };
|
|
@@ -5275,7 +5300,7 @@ var PageNavigation_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
5275
5300
|
emit("pageChange", newPageNumber);
|
|
5276
5301
|
};
|
|
5277
5302
|
return (_ctx, _cache) => {
|
|
5278
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
5303
|
+
return openBlock(), createElementBlock("div", _hoisted_1$10, [
|
|
5279
5304
|
createElementVNode("div", _hoisted_2$7, [createVNode(unref(KdsButton), {
|
|
5280
5305
|
variant: "transparent",
|
|
5281
5306
|
size: "small",
|
|
@@ -5313,7 +5338,7 @@ var PageNavigation_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
5313
5338
|
}), [["__scopeId", "data-v-95577571"]]);
|
|
5314
5339
|
//#endregion
|
|
5315
5340
|
//#region src/components/control/PageRowRange.vue?vue&type=script&setup=true&lang.ts
|
|
5316
|
-
var _hoisted_1$
|
|
5341
|
+
var _hoisted_1$9 = {
|
|
5317
5342
|
key: 0,
|
|
5318
5343
|
class: "subtle"
|
|
5319
5344
|
};
|
|
@@ -5358,7 +5383,7 @@ var PageControls_vue_vue_type_script_lang_default = {
|
|
|
5358
5383
|
const pageRangeEnd = computed(() => Math.min(__props.currentPage * __props.pageSize, __props.currentItems));
|
|
5359
5384
|
const rowCountText = computed(() => hasMultiplePages.value && __props.currentItems ? `of ${__props.currentItems}` : __props.currentItems);
|
|
5360
5385
|
return (_ctx, _cache) => {
|
|
5361
|
-
return __props.showTableSize && __props.currentItems === 0 ? (openBlock(), createElementBlock("span", _hoisted_1$
|
|
5386
|
+
return __props.showTableSize && __props.currentItems === 0 ? (openBlock(), createElementBlock("span", _hoisted_1$9, "No data")) : (openBlock(), createElementBlock("div", _hoisted_2$6, [
|
|
5362
5387
|
createElementVNode("span", _hoisted_3$3, toDisplayString(__props.rowLabel) + ":", 1),
|
|
5363
5388
|
hasMultiplePages.value && __props.currentItems ? (openBlock(), createElementBlock("span", _hoisted_4$2, toDisplayString(pageRangeStart.value) + "–" + toDisplayString(pageRangeEnd.value), 1)) : createCommentVNode("", true),
|
|
5364
5389
|
createElementVNode("span", _hoisted_5$1, toDisplayString(rowCountText.value), 1)
|
|
@@ -5423,7 +5448,7 @@ var PageControls_vue_vue_type_script_lang_default = {
|
|
|
5423
5448
|
};
|
|
5424
5449
|
//#endregion
|
|
5425
5450
|
//#region src/components/control/PageControls.vue
|
|
5426
|
-
var _hoisted_1$
|
|
5451
|
+
var _hoisted_1$8 = {
|
|
5427
5452
|
key: 0,
|
|
5428
5453
|
class: "page-controls"
|
|
5429
5454
|
};
|
|
@@ -5432,7 +5457,7 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5432
5457
|
const _component_PageRowRange = resolveComponent("PageRowRange");
|
|
5433
5458
|
const _component_PageNavigation = resolveComponent("PageNavigation");
|
|
5434
5459
|
const _component_KdsMenuButton = resolveComponent("KdsMenuButton");
|
|
5435
|
-
return $options.showPageNavigation || $options.pageSizeItems.length ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
5460
|
+
return $options.showPageNavigation || $options.pageSizeItems.length ? (openBlock(), createElementBlock("div", _hoisted_1$8, [
|
|
5436
5461
|
createVNode(_component_PageRowRange, {
|
|
5437
5462
|
class: "page-row-range",
|
|
5438
5463
|
"current-items": $props.tableState.tableSizes?.currentNumRows,
|
|
@@ -5479,11 +5504,11 @@ var PageControls_default = /*#__PURE__*/ _plugin_vue_export_helper_default(PageC
|
|
|
5479
5504
|
//#endregion
|
|
5480
5505
|
//#region src/components/control/actionbar/PopoverContainer.vue
|
|
5481
5506
|
var _sfc_main = {};
|
|
5482
|
-
var _hoisted_1$
|
|
5507
|
+
var _hoisted_1$7 = { class: "popover" };
|
|
5483
5508
|
var _hoisted_2$4 = { class: "header" };
|
|
5484
5509
|
var _hoisted_3$2 = { class: "body" };
|
|
5485
5510
|
function _sfc_render$3(_ctx, _cache) {
|
|
5486
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
5511
|
+
return openBlock(), createElementBlock("div", _hoisted_1$7, [createElementVNode("span", _hoisted_2$4, [renderSlot(_ctx.$slots, "header", {}, void 0, true)]), createElementVNode("div", _hoisted_3$2, [renderSlot(_ctx.$slots, "body", {}, void 0, true)])]);
|
|
5487
5512
|
}
|
|
5488
5513
|
var PopoverContainer_default = /*#__PURE__*/ _plugin_vue_export_helper_default(_sfc_main, [["render", _sfc_render$3], ["__scopeId", "data-v-349cd3ba"]]);
|
|
5489
5514
|
//#endregion
|
|
@@ -5516,7 +5541,7 @@ var useButtonPopoverInteraction = ({ keepButtonActive }) => {
|
|
|
5516
5541
|
};
|
|
5517
5542
|
//#endregion
|
|
5518
5543
|
//#region src/components/control/actionbar/SortControl.vue?vue&type=script&setup=true&lang.ts
|
|
5519
|
-
var _hoisted_1$
|
|
5544
|
+
var _hoisted_1$6 = { class: "body" };
|
|
5520
5545
|
var NONE_COLUMN_VALUE = "None";
|
|
5521
5546
|
//#endregion
|
|
5522
5547
|
//#region src/components/control/actionbar/SortControl.vue
|
|
@@ -5591,7 +5616,7 @@ var SortControl_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
5591
5616
|
name: "sort-ascending",
|
|
5592
5617
|
size: "small"
|
|
5593
5618
|
}), _cache[0] || (_cache[0] = createTextVNode(" Sorting ", -1))]),
|
|
5594
|
-
body: withCtx(() => [createElementVNode("div", _hoisted_1$
|
|
5619
|
+
body: withCtx(() => [createElementVNode("div", _hoisted_1$6, [createVNode(unref(KdsDropdown), {
|
|
5595
5620
|
"model-value": selectedColumn.value,
|
|
5596
5621
|
"possible-values": possibleColumns.value,
|
|
5597
5622
|
ariaLabel: "Column to sort by",
|
|
@@ -5621,7 +5646,7 @@ var SortControl_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
5621
5646
|
}), [["__scopeId", "data-v-97a272c8"]]);
|
|
5622
5647
|
//#endregion
|
|
5623
5648
|
//#region src/components/control/TableActionBar.vue?vue&type=script&setup=true&lang.ts
|
|
5624
|
-
var _hoisted_1$
|
|
5649
|
+
var _hoisted_1$5 = { class: "left" };
|
|
5625
5650
|
var _hoisted_2$3 = { class: "center" };
|
|
5626
5651
|
var _hoisted_3$1 = {
|
|
5627
5652
|
key: 0,
|
|
@@ -5659,7 +5684,7 @@ var TableActionBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
5659
5684
|
const isTemporaryView = computed(() => viewType.value === "TEMP_VIEW" || viewType.value === "PREVIEW");
|
|
5660
5685
|
const isPreview = computed(() => viewType.value === "PREVIEW");
|
|
5661
5686
|
const showResetButton = computed(() => viewType.value === "TEMP_VIEW");
|
|
5662
|
-
const hasContent = computed(() => isTemporaryView.value || __props.showTableSize || __props.actionConfig.
|
|
5687
|
+
const hasContent = computed(() => isTemporaryView.value || __props.showTableSize || __props.actionConfig.enableSorting && !__props.actionConfig.hideSortingButton || __props.actionConfig.enableSearch || __props.actionConfig.forceShow || Boolean(slots["action-bar-left"]));
|
|
5663
5688
|
/**
|
|
5664
5689
|
* Renders "total" by default, and "current of total" only when `current` is
|
|
5665
5690
|
* given and strictly below `total`. The `current >= total` guard prevents an
|
|
@@ -5682,7 +5707,7 @@ var TableActionBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
5682
5707
|
key: 0,
|
|
5683
5708
|
class: normalizeClass(["kds-table-action-bar", { "temporary-view": isTemporaryView.value }])
|
|
5684
5709
|
}, [
|
|
5685
|
-
createElementVNode("div", _hoisted_1$
|
|
5710
|
+
createElementVNode("div", _hoisted_1$5, [__props.actionConfig.enableSorting && !__props.actionConfig.hideSortingButton ? (openBlock(), createBlock(SortControl_default, {
|
|
5686
5711
|
key: 0,
|
|
5687
5712
|
"col-sort-values": __props.colSortValues,
|
|
5688
5713
|
"sort-control-options": __props.sortControlOptions,
|
|
@@ -5720,7 +5745,7 @@ var TableActionBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
5720
5745
|
], 2)) : createCommentVNode("", true);
|
|
5721
5746
|
};
|
|
5722
5747
|
}
|
|
5723
|
-
}), [["__scopeId", "data-v-
|
|
5748
|
+
}), [["__scopeId", "data-v-b0b2c849"]]);
|
|
5724
5749
|
//#endregion
|
|
5725
5750
|
//#region src/utils/columnHeaderActionButtons.ts
|
|
5726
5751
|
/**
|
|
@@ -5789,7 +5814,7 @@ var useAutoScrollOnRightEdge = ({ scrollContainer, autoScrollOffset, onAutoScrol
|
|
|
5789
5814
|
};
|
|
5790
5815
|
//#endregion
|
|
5791
5816
|
//#region src/components/layout/HeaderCell.vue?vue&type=script&setup=true&lang.ts
|
|
5792
|
-
var _hoisted_1$
|
|
5817
|
+
var _hoisted_1$4 = ["tabindex"];
|
|
5793
5818
|
var _hoisted_2$2 = { class: "header-text-container" };
|
|
5794
5819
|
var _hoisted_3 = {
|
|
5795
5820
|
key: 0,
|
|
@@ -6027,7 +6052,7 @@ var Header_vue_vue_type_script_lang_default = {
|
|
|
6027
6052
|
unref(vKdsTooltip),
|
|
6028
6053
|
__props.column.header,
|
|
6029
6054
|
"truncated"
|
|
6030
|
-
]])], 512), __props.column.subHeader ? (openBlock(), createElementBlock("div", _hoisted_3, [renderSlot(_ctx.$slots, "subHeader", { subHeader: __props.column.subHeader }, () => [createTextVNode(toDisplayString(__props.column.subHeader), 1)], true)])) : createCommentVNode("", true)], 42, _hoisted_1$
|
|
6055
|
+
]])], 512), __props.column.subHeader ? (openBlock(), createElementBlock("div", _hoisted_3, [renderSlot(_ctx.$slots, "subHeader", { subHeader: __props.column.subHeader }, () => [createTextVNode(toDisplayString(__props.column.subHeader), 1)], true)])) : createCommentVNode("", true)], 42, _hoisted_1$4),
|
|
6031
6056
|
__props.additionalMenuItems?.length ? (openBlock(), createElementBlock("div", {
|
|
6032
6057
|
key: 0,
|
|
6033
6058
|
class: normalizeClass([
|
|
@@ -6300,7 +6325,7 @@ var Header_vue_vue_type_script_lang_default = {
|
|
|
6300
6325
|
};
|
|
6301
6326
|
//#endregion
|
|
6302
6327
|
//#region src/components/layout/Header.vue
|
|
6303
|
-
var _hoisted_1$
|
|
6328
|
+
var _hoisted_1$3 = {
|
|
6304
6329
|
key: 0,
|
|
6305
6330
|
scope: "col",
|
|
6306
6331
|
class: "deletion-cell-spacer",
|
|
@@ -6311,7 +6336,7 @@ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6311
6336
|
const _component_HeaderCell = resolveComponent("HeaderCell");
|
|
6312
6337
|
const _component_KdsButton = resolveComponent("KdsButton");
|
|
6313
6338
|
return openBlock(), createElementBlock("thead", null, [createElementVNode("tr", { style: normalizeStyle({ ...$setup.headerStyles }) }, [
|
|
6314
|
-
$props.tableConfig.enableRowDeletion ? (openBlock(), createElementBlock("th", _hoisted_1$
|
|
6339
|
+
$props.tableConfig.enableRowDeletion ? (openBlock(), createElementBlock("th", _hoisted_1$3)) : createCommentVNode("", true),
|
|
6315
6340
|
$props.tableConfig.showSelection ? (openBlock(), createElementBlock("th", {
|
|
6316
6341
|
key: 1,
|
|
6317
6342
|
scope: "col",
|
|
@@ -6412,7 +6437,7 @@ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6412
6437
|
var Header_default = /*#__PURE__*/ _plugin_vue_export_helper_default(Header_vue_vue_type_script_lang_default, [["render", _sfc_render$2], ["__scopeId", "data-v-885a5768"]]);
|
|
6413
6438
|
//#endregion
|
|
6414
6439
|
//#region src/components/layout/NewRowButton.vue?vue&type=script&setup=true&lang.ts
|
|
6415
|
-
var _hoisted_1$
|
|
6440
|
+
var _hoisted_1$2 = { class: "sticky-container" };
|
|
6416
6441
|
var buttonRef = "button";
|
|
6417
6442
|
//#endregion
|
|
6418
6443
|
//#region src/components/layout/NewRowButton.vue
|
|
@@ -6426,7 +6451,7 @@ var NewRowButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
6426
6451
|
button.value?.$el.focus();
|
|
6427
6452
|
} });
|
|
6428
6453
|
return (_ctx, _cache) => {
|
|
6429
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
6454
|
+
return openBlock(), createElementBlock("div", _hoisted_1$2, [createVNode(unref(KdsButton), {
|
|
6430
6455
|
ref: buttonRef,
|
|
6431
6456
|
label: "Add",
|
|
6432
6457
|
"leading-icon": "plus",
|
|
@@ -6461,7 +6486,7 @@ var CellExpandButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/
|
|
|
6461
6486
|
}), [["__scopeId", "data-v-f204ddf3"]]);
|
|
6462
6487
|
//#endregion
|
|
6463
6488
|
//#region src/components/layout/CellRenderer.vue?vue&type=script&setup=true&lang.ts
|
|
6464
|
-
var _hoisted_1$
|
|
6489
|
+
var _hoisted_1$1 = {
|
|
6465
6490
|
ref: "cell-content",
|
|
6466
6491
|
class: "cell-content"
|
|
6467
6492
|
};
|
|
@@ -6608,7 +6633,7 @@ var CellRenderer_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
6608
6633
|
value: val,
|
|
6609
6634
|
cell: _ctx.$el
|
|
6610
6635
|
}))
|
|
6611
|
-
}, [createElementVNode("div", _hoisted_1$
|
|
6636
|
+
}, [createElementVNode("div", _hoisted_1$1, [__props.isEditing ? renderSlot(_ctx.$slots, "editable-cell", { cellElement: _ctx.$el }, void 0, true, 0) : __props.isMissing ? (openBlock(), createBlock(unref(KdsMissingValueIcon), {
|
|
6612
6637
|
key: 1,
|
|
6613
6638
|
size: "small"
|
|
6614
6639
|
})) : __props.isSlotted ? renderSlot(_ctx.$slots, "default", { width: __props.size - props.defaultLeftRightPadding * 2 - (showCellExpandButton.value && !__props.overlayExpandButton ? unref(EXPAND_BUTTON_WIDTH) : 0) }, void 0, true, 2) : (openBlock(), createElementBlock("span", _hoisted_2$1, toDisplayString(__props.text), 1)), showCellExpandButton.value ? (openBlock(), createBlock(CellExpandButton_default, {
|
|
@@ -6718,7 +6743,7 @@ var Cell_default = /* @__PURE__ */ defineComponent({
|
|
|
6718
6743
|
});
|
|
6719
6744
|
//#endregion
|
|
6720
6745
|
//#region src/components/layout/Row.vue?vue&type=script&setup=true&lang.ts
|
|
6721
|
-
var _hoisted_1
|
|
6746
|
+
var _hoisted_1 = {
|
|
6722
6747
|
key: 0,
|
|
6723
6748
|
class: "deletion-cell"
|
|
6724
6749
|
};
|
|
@@ -6945,7 +6970,7 @@ var TableUI_vue_vue_type_script_lang_default = {
|
|
|
6945
6970
|
...rowHeightStyle.value
|
|
6946
6971
|
})
|
|
6947
6972
|
}, [
|
|
6948
|
-
__props.tableConfig.enableRowDeletion ? (openBlock(), createElementBlock("td", _hoisted_1
|
|
6973
|
+
__props.tableConfig.enableRowDeletion ? (openBlock(), createElementBlock("td", _hoisted_1, [createVNode(unref(KdsButton), {
|
|
6949
6974
|
ref_key: "deleteButton",
|
|
6950
6975
|
ref: deleteButton,
|
|
6951
6976
|
variant: "transparent",
|
|
@@ -7350,6 +7375,11 @@ var TableUI_vue_vue_type_script_lang_default = {
|
|
|
7350
7375
|
const header = ref(null);
|
|
7351
7376
|
const selectionOverlay = ref([]);
|
|
7352
7377
|
const totalWidth = useTotalWidth(wrapper);
|
|
7378
|
+
const { isVisible: tableIsVisible, onAvailableWidthReported } = useVisibleAfterAvailableWidth();
|
|
7379
|
+
const onUpdateAvailableWidth = (newAvailableWidth) => {
|
|
7380
|
+
emit("update:available-width", newAvailableWidth);
|
|
7381
|
+
onAvailableWidthReported();
|
|
7382
|
+
};
|
|
7353
7383
|
const { selectCell, expandCellSelection, clearCellSelection, currentRectId, rectMinMax, selectedCell, isSingleSelectedCell } = useCellSelection(computed(() => Boolean(props.tableConfig.enableCellSelection)));
|
|
7354
7384
|
watch(selectedCell, (newCell) => emit("cellSelectionChange", newCell ?? null));
|
|
7355
7385
|
const selectCellsOnMove = useBoolean(false);
|
|
@@ -7442,6 +7472,8 @@ var TableUI_vue_vue_type_script_lang_default = {
|
|
|
7442
7472
|
return {
|
|
7443
7473
|
wrapper,
|
|
7444
7474
|
totalWidth,
|
|
7475
|
+
tableIsVisible,
|
|
7476
|
+
onUpdateAvailableWidth,
|
|
7445
7477
|
tableCore,
|
|
7446
7478
|
header,
|
|
7447
7479
|
selectionOverlay,
|
|
@@ -8022,7 +8054,6 @@ var TableUI_vue_vue_type_script_lang_default = {
|
|
|
8022
8054
|
};
|
|
8023
8055
|
//#endregion
|
|
8024
8056
|
//#region src/components/TableUI.vue
|
|
8025
|
-
var _hoisted_1 = { class: "wrapper" };
|
|
8026
8057
|
function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8027
8058
|
const _component_TableActionBar = resolveComponent("TableActionBar");
|
|
8028
8059
|
const _component_Row = resolveComponent("Row");
|
|
@@ -8032,7 +8063,10 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8032
8063
|
const _component_KdsEmptyState = resolveComponent("KdsEmptyState");
|
|
8033
8064
|
const _component_TableCore = resolveComponent("TableCore");
|
|
8034
8065
|
const _component_PageControls = resolveComponent("PageControls");
|
|
8035
|
-
return openBlock(), createElementBlock("div",
|
|
8066
|
+
return openBlock(), createElementBlock("div", {
|
|
8067
|
+
class: "wrapper",
|
|
8068
|
+
style: normalizeStyle({ visibility: $setup.tableIsVisible ? void 0 : "hidden" })
|
|
8069
|
+
}, [$options.showActionBar ? (openBlock(), createBlock(_component_TableActionBar, {
|
|
8036
8070
|
key: 0,
|
|
8037
8071
|
"table-sizes": $props.tableState.tableSizes,
|
|
8038
8072
|
"action-state": $props.actionState,
|
|
@@ -8060,22 +8094,22 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8060
8094
|
])) : createCommentVNode("", true), createElementVNode("table", {
|
|
8061
8095
|
ref: "wrapper",
|
|
8062
8096
|
tabindex: -1,
|
|
8063
|
-
onPointerleave: _cache[
|
|
8064
|
-
onPointerdownPassive: _cache[
|
|
8065
|
-
onPointerupPassive: _cache[
|
|
8097
|
+
onPointerleave: _cache[10] || (_cache[10] = (...args) => $setup.selectCellsOnMove.setFalse && $setup.selectCellsOnMove.setFalse(...args)),
|
|
8098
|
+
onPointerdownPassive: _cache[11] || (_cache[11] = withModifiers(($event) => $event.button === 0 && $setup.selectCellsOnMove.setTrue(), ["stop"])),
|
|
8099
|
+
onPointerupPassive: _cache[12] || (_cache[12] = ($event) => $event.button === 0 && $setup.selectCellsOnMove.setFalse()),
|
|
8066
8100
|
onKeydown: [
|
|
8067
|
-
_cache[
|
|
8101
|
+
_cache[13] || (_cache[13] = withKeys(withModifiers((...args) => $setup.handleCopyOnKeydown && $setup.handleCopyOnKeydown(...args), [
|
|
8068
8102
|
"ctrl",
|
|
8069
8103
|
"shift",
|
|
8070
8104
|
"exact"
|
|
8071
8105
|
]), ["c"])),
|
|
8072
|
-
_cache[
|
|
8106
|
+
_cache[14] || (_cache[14] = withKeys(withModifiers((...args) => $setup.handleCopyOnKeydown && $setup.handleCopyOnKeydown(...args), [
|
|
8073
8107
|
"meta",
|
|
8074
8108
|
"shift",
|
|
8075
8109
|
"exact"
|
|
8076
8110
|
]), ["c"])),
|
|
8077
|
-
_cache[
|
|
8078
|
-
_cache[
|
|
8111
|
+
_cache[15] || (_cache[15] = withKeys(withModifiers((...args) => $setup.handleDeleteSelection && $setup.handleDeleteSelection(...args), ["exact"]), ["delete"])),
|
|
8112
|
+
_cache[16] || (_cache[16] = withKeys(withModifiers((...args) => $setup.clearCellSelectionAndStopPropagation && $setup.clearCellSelectionAndStopPropagation(...args), ["exact"]), ["escape"]))
|
|
8079
8113
|
]
|
|
8080
8114
|
}, [createVNode(_component_TableCore, {
|
|
8081
8115
|
ref: "tableCore",
|
|
@@ -8093,13 +8127,13 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8093
8127
|
"current-row-height": $options.currentRowHeight,
|
|
8094
8128
|
"new-column-button-width": $setup.newColumnButtonWidth,
|
|
8095
8129
|
onScrollerUpdate: $options.onScroll,
|
|
8096
|
-
"onUpdate:availableWidth":
|
|
8130
|
+
"onUpdate:availableWidth": $setup.onUpdateAvailableWidth,
|
|
8097
8131
|
onMoveSelection: $options.onKeyboardMoveSelection,
|
|
8098
8132
|
onClearSelection: $setup.clearCellSelection,
|
|
8099
8133
|
onExpandSelectedCell: $options.expandSelectedCell,
|
|
8100
8134
|
onStartEditing: $options.onStartEditingCell,
|
|
8101
|
-
onBodyFocusin: _cache[
|
|
8102
|
-
onBodyFocusout: _cache[
|
|
8135
|
+
onBodyFocusin: _cache[8] || (_cache[8] = ($event) => $setup.changeFocus(true)),
|
|
8136
|
+
onBodyFocusout: _cache[9] || (_cache[9] = ($event) => $options.onTableBodyFocusOut())
|
|
8103
8137
|
}, createSlots({
|
|
8104
8138
|
row: withCtx(({ row, groupInd, rowInd }) => [createVNode(_component_Row, {
|
|
8105
8139
|
ref: $options.getRowRefName(groupInd, rowInd),
|
|
@@ -8274,6 +8308,7 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8274
8308
|
"current-row-height",
|
|
8275
8309
|
"new-column-button-width",
|
|
8276
8310
|
"onScrollerUpdate",
|
|
8311
|
+
"onUpdate:availableWidth",
|
|
8277
8312
|
"onMoveSelection",
|
|
8278
8313
|
"onClearSelection",
|
|
8279
8314
|
"onExpandSelectedCell",
|
|
@@ -8293,9 +8328,9 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8293
8328
|
"table-state",
|
|
8294
8329
|
"onPageChange",
|
|
8295
8330
|
"onPageSizeUpdate"
|
|
8296
|
-
])) : createCommentVNode("", true)], 544)]);
|
|
8331
|
+
])) : createCommentVNode("", true)], 544)], 4);
|
|
8297
8332
|
}
|
|
8298
|
-
var TableUI_default = /*#__PURE__*/ _plugin_vue_export_helper_default(TableUI_vue_vue_type_script_lang_default, [["render", _sfc_render$1], ["__scopeId", "data-v-
|
|
8333
|
+
var TableUI_default = /*#__PURE__*/ _plugin_vue_export_helper_default(TableUI_vue_vue_type_script_lang_default, [["render", _sfc_render$1], ["__scopeId", "data-v-bc9c37d0"]]);
|
|
8299
8334
|
//#endregion
|
|
8300
8335
|
//#region src/components/composables/useTableReady.ts
|
|
8301
8336
|
var useTableReady = ({ onReady }) => {
|
|
@@ -8693,7 +8728,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8693
8728
|
const _component_TableUI = resolveComponent("TableUI");
|
|
8694
8729
|
return openBlock(), createElementBlock(Fragment, null, [createVNode(_component_TableUI, mergeProps({
|
|
8695
8730
|
ref: "tableUI",
|
|
8696
|
-
style: { visibility: $setup.tableIsVisible ?
|
|
8731
|
+
style: { visibility: $setup.tableIsVisible ? void 0 : "hidden" }
|
|
8697
8732
|
}, _ctx.$attrs, {
|
|
8698
8733
|
data: $props.data,
|
|
8699
8734
|
"current-selection": $props.currentSelection,
|
|
@@ -8764,7 +8799,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8764
8799
|
"onVnodeMounted"
|
|
8765
8800
|
])) : createCommentVNode("", true)], 64);
|
|
8766
8801
|
}
|
|
8767
|
-
var TableUIWithAutoSizeCalculation_default = /*#__PURE__*/ _plugin_vue_export_helper_default(TableUIWithAutoSizeCalculation_vue_vue_type_script_lang_default, [["render", _sfc_render], ["__scopeId", "data-v-
|
|
8802
|
+
var TableUIWithAutoSizeCalculation_default = /*#__PURE__*/ _plugin_vue_export_helper_default(TableUIWithAutoSizeCalculation_vue_vue_type_script_lang_default, [["render", _sfc_render], ["__scopeId", "data-v-f0e4039f"]]);
|
|
8768
8803
|
//#endregion
|
|
8769
8804
|
export { PopoverContainer_default as PopoverContainer, TableActionBar_default as TableActionBar, TableUI_default as TableUI, TableUIWithAutoSizeCalculation_default as TableUIWithAutoSizeCalculation, columnSortText, columnTypes, constants_default as constants, defaultPageSize, getMissingValueMessage, isMissingValue, unpackObjectRepresentation, useButtonPopoverInteraction, useColumnSizes };
|
|
8770
8805
|
|