@onereach/ui-components-vue2 26.7.1-beta.5969.0 → 26.8.0
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.
|
@@ -1696,6 +1696,10 @@ var script = defineComponent({
|
|
|
1696
1696
|
type: Array,
|
|
1697
1697
|
default: () => []
|
|
1698
1698
|
},
|
|
1699
|
+
itemKey: {
|
|
1700
|
+
type: [String, Function],
|
|
1701
|
+
default: 'id'
|
|
1702
|
+
},
|
|
1699
1703
|
columns: {
|
|
1700
1704
|
type: Array,
|
|
1701
1705
|
required: true
|
|
@@ -1745,11 +1749,11 @@ var script = defineComponent({
|
|
|
1745
1749
|
// State
|
|
1746
1750
|
const selectingIndicator = computed({
|
|
1747
1751
|
get: () => {
|
|
1748
|
-
return !!(props.items && props.items.length) && props.items.every(item => selectingModel.value.includes(item
|
|
1752
|
+
return !!(props.items && props.items.length) && props.items.every(item => selectingModel.value.includes(getItemId(item)));
|
|
1749
1753
|
},
|
|
1750
1754
|
set: value => {
|
|
1751
1755
|
if (value && props.items) {
|
|
1752
|
-
selectingModel.value = [...new Set([...selectingModel.value, ...props.items.map(item => item
|
|
1756
|
+
selectingModel.value = [...new Set([...selectingModel.value, ...props.items.map(item => getItemId(item))])];
|
|
1753
1757
|
} else {
|
|
1754
1758
|
selectingModel.value = [];
|
|
1755
1759
|
}
|
|
@@ -1821,15 +1825,16 @@ var script = defineComponent({
|
|
|
1821
1825
|
});
|
|
1822
1826
|
}
|
|
1823
1827
|
});
|
|
1824
|
-
const isExpanded = item => expandedModel.value.indexOf(item
|
|
1828
|
+
const isExpanded = item => expandedModel.value.indexOf(getItemId(item)) !== -1;
|
|
1825
1829
|
const toggleExpand = item => {
|
|
1826
1830
|
if (!item.children || item.children.length === 0) return;
|
|
1831
|
+
const itemId = getItemId(item);
|
|
1827
1832
|
const expanded = expandedModel.value;
|
|
1828
|
-
const index = expanded.indexOf(
|
|
1833
|
+
const index = expanded.indexOf(itemId);
|
|
1829
1834
|
if (index === -1) {
|
|
1830
|
-
expandedModel.value = [...expanded,
|
|
1835
|
+
expandedModel.value = [...expanded, itemId];
|
|
1831
1836
|
} else {
|
|
1832
|
-
expandedModel.value = expanded.filter(id => id !==
|
|
1837
|
+
expandedModel.value = expanded.filter(id => id !== itemId);
|
|
1833
1838
|
}
|
|
1834
1839
|
};
|
|
1835
1840
|
watch(() => pagingModel.value && pagingModel.value.offset, () => {
|
|
@@ -2031,6 +2036,18 @@ var script = defineComponent({
|
|
|
2031
2036
|
block: 'nearest'
|
|
2032
2037
|
});
|
|
2033
2038
|
}
|
|
2039
|
+
function getItemValue(item, columnName) {
|
|
2040
|
+
return item[columnName];
|
|
2041
|
+
}
|
|
2042
|
+
function getItemId(item) {
|
|
2043
|
+
if (typeof props.itemKey === 'function') {
|
|
2044
|
+
return props.itemKey(item);
|
|
2045
|
+
}
|
|
2046
|
+
return getItemValue(item, props.itemKey);
|
|
2047
|
+
}
|
|
2048
|
+
function setItemValue(item, columnName, value) {
|
|
2049
|
+
item[columnName] = value;
|
|
2050
|
+
}
|
|
2034
2051
|
return {
|
|
2035
2052
|
root,
|
|
2036
2053
|
rootStyles,
|
|
@@ -2060,6 +2077,8 @@ var script = defineComponent({
|
|
|
2060
2077
|
updateScrollOffset,
|
|
2061
2078
|
removeScrollOffset,
|
|
2062
2079
|
updateSearchingModel,
|
|
2080
|
+
getItemValue,
|
|
2081
|
+
getItemId,
|
|
2063
2082
|
scrollToTop: () => {
|
|
2064
2083
|
if (table.value && table.value.root) {
|
|
2065
2084
|
table.value.root.scrollTo({
|
|
@@ -2070,7 +2089,7 @@ var script = defineComponent({
|
|
|
2070
2089
|
},
|
|
2071
2090
|
scrollTo,
|
|
2072
2091
|
onInput: (item, columnName, value) => {
|
|
2073
|
-
item
|
|
2092
|
+
setItemValue(item, columnName, value);
|
|
2074
2093
|
context.emit('update:item', item);
|
|
2075
2094
|
}
|
|
2076
2095
|
};
|
|
@@ -2248,10 +2267,10 @@ var __vue_render__ = function () {
|
|
|
2248
2267
|
})], 2);
|
|
2249
2268
|
}) : _vm.items.length > 0 ? _vm._l(_vm.actualItems, function (item) {
|
|
2250
2269
|
return _c('OrDataGridTableContentRow', {
|
|
2251
|
-
key: item
|
|
2270
|
+
key: _vm.getItemId(item),
|
|
2252
2271
|
attrs: {
|
|
2253
2272
|
"variant": _vm.variant,
|
|
2254
|
-
"selected": _vm.selectingModel.includes(item
|
|
2273
|
+
"selected": _vm.selectingModel.includes(_vm.getItemId(item)),
|
|
2255
2274
|
"interactive": _vm.interactiveRows
|
|
2256
2275
|
},
|
|
2257
2276
|
on: {
|
|
@@ -2280,15 +2299,15 @@ var __vue_render__ = function () {
|
|
|
2280
2299
|
},
|
|
2281
2300
|
on: {
|
|
2282
2301
|
"mouseenter": function () {
|
|
2283
|
-
return _vm.handleMouseEnterCell(item, 'selecting', _vm.selectingModel.indexOf(item
|
|
2302
|
+
return _vm.handleMouseEnterCell(item, 'selecting', _vm.selectingModel.indexOf(_vm.getItemId(item)) !== -1);
|
|
2284
2303
|
},
|
|
2285
2304
|
"mouseleave": function () {
|
|
2286
|
-
return _vm.handleMouseLeaveCell(item, 'selecting', _vm.selectingModel.indexOf(item
|
|
2305
|
+
return _vm.handleMouseLeaveCell(item, 'selecting', _vm.selectingModel.indexOf(_vm.getItemId(item)) !== -1);
|
|
2287
2306
|
}
|
|
2288
2307
|
}
|
|
2289
2308
|
}, [_c('OrCheckbox', {
|
|
2290
2309
|
attrs: {
|
|
2291
|
-
"value": item
|
|
2310
|
+
"value": _vm.getItemId(item),
|
|
2292
2311
|
"disabled": _vm.selectingDisabled
|
|
2293
2312
|
},
|
|
2294
2313
|
model: {
|
|
@@ -2302,7 +2321,7 @@ var __vue_render__ = function () {
|
|
|
2302
2321
|
return _c('OrDataGridTableContentCell', {
|
|
2303
2322
|
key: column.name,
|
|
2304
2323
|
attrs: {
|
|
2305
|
-
"model-value": item
|
|
2324
|
+
"model-value": _vm.getItemValue(item, column.name),
|
|
2306
2325
|
"column": column,
|
|
2307
2326
|
"features": _vm.features,
|
|
2308
2327
|
"sticky-offset": column.stickiness === 'start' ? _vm.stickyOffsets.start.get(column.name) : column.stickiness === 'end' ? _vm.stickyOffsets.end.get(column.name) : undefined,
|
|
@@ -2316,10 +2335,10 @@ var __vue_render__ = function () {
|
|
|
2316
2335
|
return _vm.scrollTo($event);
|
|
2317
2336
|
},
|
|
2318
2337
|
"mouseenter": function () {
|
|
2319
|
-
return _vm.handleMouseEnterCell(item, column.name, item
|
|
2338
|
+
return _vm.handleMouseEnterCell(item, column.name, _vm.getItemValue(item, column.name));
|
|
2320
2339
|
},
|
|
2321
2340
|
"mouseleave": function () {
|
|
2322
|
-
return _vm.handleMouseLeaveCell(item, column.name, item
|
|
2341
|
+
return _vm.handleMouseLeaveCell(item, column.name, _vm.getItemValue(item, column.name));
|
|
2323
2342
|
}
|
|
2324
2343
|
}
|
|
2325
2344
|
}, [_c('div', {
|
|
@@ -2351,7 +2370,7 @@ var __vue_render__ = function () {
|
|
|
2351
2370
|
staticClass: "min-w-0",
|
|
2352
2371
|
class: [columnIndex === 0 ? 'flex-grow' : '', column.alignment === 'end' ? 'text-end' : column.alignment === 'center' ? 'text-center' : 'text-start', (column.wrapping !== undefined && column.wrapping !== null ? column.wrapping : _vm.variant === 'dynamic' && !column.control) ? 'whitespace-pre-wrap break-words' : column.fitContent ? '' : 'truncate']
|
|
2353
2372
|
}, [_vm._t(column.name, function () {
|
|
2354
|
-
return [_vm._v(_vm._s(item
|
|
2373
|
+
return [_vm._v(_vm._s(_vm.getItemValue(item, column.name)))];
|
|
2355
2374
|
}, {
|
|
2356
2375
|
"column": column,
|
|
2357
2376
|
"item": item
|
|
@@ -12,13 +12,12 @@ export type DataGridModelValue = ModelValue<{
|
|
|
12
12
|
paging: PaginationModelValue;
|
|
13
13
|
expanded: ModelValue<Id[]>;
|
|
14
14
|
}>;
|
|
15
|
-
export type DataGridRow<T extends
|
|
16
|
-
|
|
17
|
-
};
|
|
18
|
-
export type DataGridItem<T extends DataGridRow = DataGridRow> = T & {
|
|
15
|
+
export type DataGridRow<T extends object = DataModel> = T;
|
|
16
|
+
export type DataGridItem<T extends object = DataGridRow> = T & {
|
|
19
17
|
children?: DataGridItem<T>[];
|
|
20
18
|
level?: number;
|
|
21
19
|
};
|
|
20
|
+
export type DataGridItemKey<T extends object = DataGridRow> = string | ((item: DataGridItem<T>) => Id);
|
|
22
21
|
export type DataGridColumn = {
|
|
23
22
|
name: string;
|
|
24
23
|
label?: string;
|
|
@@ -42,6 +41,7 @@ export declare enum DataGridVariant {
|
|
|
42
41
|
Compact = "compact",
|
|
43
42
|
Dynamic = "dynamic"
|
|
44
43
|
}
|
|
44
|
+
export type DataGridVariantValue = `${DataGridVariant}`;
|
|
45
45
|
export type DataGridFeatures = {
|
|
46
46
|
selecting?: boolean | {
|
|
47
47
|
showCounter?: boolean;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onereach/ui-components-vue2",
|
|
3
|
-
"version": "26.
|
|
3
|
+
"version": "26.8.0",
|
|
4
4
|
"description": "Vue components library for v2",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -40,8 +40,8 @@
|
|
|
40
40
|
"@codemirror/view": "^6",
|
|
41
41
|
"@floating-ui/dom": "1.5.3",
|
|
42
42
|
"@lezer/highlight": "*",
|
|
43
|
-
"@onereach/styles": "^26.
|
|
44
|
-
"@onereach/ui-components-common": "^26.
|
|
43
|
+
"@onereach/styles": "^26.8.0",
|
|
44
|
+
"@onereach/ui-components-common": "^26.8.0",
|
|
45
45
|
"@splidejs/splide": "4.0.6",
|
|
46
46
|
"@tiptap/core": "2.27.1",
|
|
47
47
|
"@tiptap/extension-blockquote": "2.27.1",
|
|
@@ -102,5 +102,6 @@
|
|
|
102
102
|
"publishConfig": {
|
|
103
103
|
"access": "public"
|
|
104
104
|
},
|
|
105
|
-
"npmUnpacked": "4.15.2"
|
|
105
|
+
"npmUnpacked": "4.15.2",
|
|
106
|
+
"gitHead": "0592687da00c9a1650a8748d9ef06e9f4055a04c"
|
|
106
107
|
}
|