@rozie-ui/data-table-solid 0.4.0 → 0.5.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.
- package/README.md +48 -42
- package/dist/index.cjs +424 -121
- package/dist/index.d.cts +7 -7
- package/dist/index.d.mts +7 -7
- package/dist/index.mjs +424 -121
- package/package.json +2 -2
- package/src/Column.tsx +2 -2
- package/src/DataTable.tsx +232 -29
- package/src/themes/base.css +38 -25
- package/src/themes/bootstrap.css +11 -0
- package/src/themes/material.css +11 -0
- package/src/themes/shadcn.css +11 -0
package/dist/index.mjs
CHANGED
|
@@ -195,7 +195,35 @@ const indexOfRowIn = (rows, rowOriginal, rowId) => {
|
|
|
195
195
|
};
|
|
196
196
|
//#endregion
|
|
197
197
|
//#region src/DataTable.tsx
|
|
198
|
-
__rozieInjectStyle("DataTable-d5dcab4c",
|
|
198
|
+
__rozieInjectStyle("DataTable-d5dcab4c", `[data-rozie-s-d5dcab4c]:host {
|
|
199
|
+
--rdt-font: var(--rozie-data-table-font);
|
|
200
|
+
--rdt-color: var(--rozie-data-table-fg);
|
|
201
|
+
--rdt-cell-padding: var(--rozie-data-table-cell-padding);
|
|
202
|
+
--rdt-border: 1px solid var(--rozie-data-table-border-color);
|
|
203
|
+
--rdt-header-bg: var(--rozie-data-table-header-bg);
|
|
204
|
+
--rdt-header-weight: var(--rozie-data-table-header-weight);
|
|
205
|
+
--rdt-sort-ind-opacity: var(--rozie-data-table-sort-indicator-opacity);
|
|
206
|
+
--rdt-filter-border: 1px solid var(--rozie-data-table-control-border-color);
|
|
207
|
+
--rdt-filter-radius: var(--rozie-data-table-radius);
|
|
208
|
+
--rdt-page-btn-border: 1px solid var(--rozie-data-table-control-border-color);
|
|
209
|
+
--rdt-page-btn-radius: var(--rozie-data-table-radius);
|
|
210
|
+
--rdt-page-btn-disabled-opacity: var(--rozie-data-table-disabled-opacity);
|
|
211
|
+
--rdt-page-size-border: 1px solid var(--rozie-data-table-control-border-color);
|
|
212
|
+
--rdt-page-size-radius: var(--rozie-data-table-radius);
|
|
213
|
+
--rdt-resize-grip-color: var(--rozie-data-table-resize-grip-color);
|
|
214
|
+
--rdt-resize-grip-active: var(--rozie-data-table-resize-grip-active);
|
|
215
|
+
--rdt-pin-btn-border: 1px solid var(--rozie-data-table-control-border-color);
|
|
216
|
+
--rdt-pin-btn-radius: var(--rozie-data-table-radius);
|
|
217
|
+
--rdt-pin-btn-active-bg: var(--rozie-data-table-pin-active-bg);
|
|
218
|
+
--rdt-colvis-summary-border: 1px solid var(--rozie-data-table-control-border-color);
|
|
219
|
+
--rdt-colvis-summary-radius: var(--rozie-data-table-radius);
|
|
220
|
+
--rdt-colvis-menu-border: 1px solid var(--rozie-data-table-border-color);
|
|
221
|
+
--rdt-colvis-menu-radius: var(--rozie-data-table-radius);
|
|
222
|
+
--rdt-colvis-menu-bg: var(--rozie-data-table-menu-bg);
|
|
223
|
+
--rdt-colvis-menu-shadow: var(--rozie-data-table-menu-shadow);
|
|
224
|
+
--rdt-select-accent: var(--rozie-data-table-select-accent);
|
|
225
|
+
}
|
|
226
|
+
.rozie-data-table[data-rozie-s-d5dcab4c] {
|
|
199
227
|
border-collapse: collapse;
|
|
200
228
|
width: 100%;
|
|
201
229
|
font: var(--rdt-font, 14px system-ui, sans-serif);
|
|
@@ -683,6 +711,7 @@ function DataTable(_props) {
|
|
|
683
711
|
const [liveAnnounce, setLiveAnnounce] = createSignal("");
|
|
684
712
|
onMount(() => {
|
|
685
713
|
setDataDefault(data() || []);
|
|
714
|
+
seedColumnPinning();
|
|
686
715
|
table = createTable({
|
|
687
716
|
data: currentData(),
|
|
688
717
|
columns: tableColumns(),
|
|
@@ -776,6 +805,7 @@ function DataTable(_props) {
|
|
|
776
805
|
}
|
|
777
806
|
if (colsWindowed()) {
|
|
778
807
|
if (!(gridScrollEl ? gridScrollEl.clientWidth : 0)) console.warn("[rozie-data-table] virtual is on for columns but the scroll container has no bounded width; set a CSS width on an ancestor so the column window can be measured");
|
|
808
|
+
bumpWindowVer();
|
|
779
809
|
}
|
|
780
810
|
};
|
|
781
811
|
if (typeof requestAnimationFrame === "function") requestAnimationFrame(() => requestAnimationFrame(afterFirstFrame));
|
|
@@ -825,6 +855,7 @@ function DataTable(_props) {
|
|
|
825
855
|
local.columns,
|
|
826
856
|
colReg()
|
|
827
857
|
], (v) => untrack(() => (() => {
|
|
858
|
+
seedColumnPinning();
|
|
828
859
|
reFeed();
|
|
829
860
|
maybeClearHistoryOnExternalSwap();
|
|
830
861
|
})()), { defer: true }));
|
|
@@ -873,6 +904,34 @@ function DataTable(_props) {
|
|
|
873
904
|
left: rail.concat(deduped)
|
|
874
905
|
};
|
|
875
906
|
}
|
|
907
|
+
let pinSeedApplied = false;
|
|
908
|
+
function seedColumnPinning() {
|
|
909
|
+
if (pinSeedApplied) return;
|
|
910
|
+
const live = columnPinning() != null ? columnPinning() : columnPinningDefault();
|
|
911
|
+
const isRealPin = (id) => id !== SELECT_COL_ID && id !== EXPANDER_COL_ID;
|
|
912
|
+
if ((live && live.left ? live.left : []).filter(isRealPin).length > 0 || (live && live.right ? live.right : []).filter(isRealPin).length > 0) {
|
|
913
|
+
pinSeedApplied = true;
|
|
914
|
+
return;
|
|
915
|
+
}
|
|
916
|
+
const defs = columnDefs();
|
|
917
|
+
if (!defs.length) return;
|
|
918
|
+
const left = [];
|
|
919
|
+
const right = [];
|
|
920
|
+
for (let i = 0; i < defs.length; i++) {
|
|
921
|
+
const def = defs[i];
|
|
922
|
+
if (!def) continue;
|
|
923
|
+
if (def.pinned === "left") left.push(def.id);
|
|
924
|
+
else if (def.pinned === "right") right.push(def.id);
|
|
925
|
+
}
|
|
926
|
+
if (!left.length && !right.length) return;
|
|
927
|
+
pinSeedApplied = true;
|
|
928
|
+
const seeded = {
|
|
929
|
+
left,
|
|
930
|
+
right
|
|
931
|
+
};
|
|
932
|
+
setColumnPinningDefault(seeded);
|
|
933
|
+
setColumnPinning(seeded);
|
|
934
|
+
}
|
|
876
935
|
function currentState() {
|
|
877
936
|
return {
|
|
878
937
|
sorting: sorting() != null ? sorting() : sortingDefault(),
|
|
@@ -1231,9 +1290,12 @@ function DataTable(_props) {
|
|
|
1231
1290
|
function onColumnPinningChangeCb(updater) {
|
|
1232
1291
|
writeColumnPinning(applyUpdater(updater, currentState().columnPinning));
|
|
1233
1292
|
}
|
|
1293
|
+
let columnSizingInfoSync = null;
|
|
1234
1294
|
function onColumnSizingInfoChangeCb(updater) {
|
|
1235
|
-
const next = applyUpdater(updater, columnSizingInfo());
|
|
1236
|
-
|
|
1295
|
+
const next = applyUpdater(updater, columnSizingInfoSync != null ? columnSizingInfoSync : columnSizingInfo());
|
|
1296
|
+
if (next == null) return;
|
|
1297
|
+
columnSizingInfoSync = next;
|
|
1298
|
+
setColumnSizingInfo(next);
|
|
1237
1299
|
}
|
|
1238
1300
|
function resolveVirtual() {
|
|
1239
1301
|
const v = local.virtual;
|
|
@@ -3439,6 +3501,11 @@ function DataTable(_props) {
|
|
|
3439
3501
|
const tryFocus = () => {
|
|
3440
3502
|
const el = resolveCellEl(String(row), col);
|
|
3441
3503
|
if (el) {
|
|
3504
|
+
const ae = gridRoot && gridRoot.getRootNode ? gridRoot.getRootNode().activeElement : null;
|
|
3505
|
+
if (ae && ae !== el && gridRoot.contains && gridRoot.contains(ae) && ae.closest) {
|
|
3506
|
+
const aeCell = ae.closest("[data-grid-cell]");
|
|
3507
|
+
if (aeCell && aeCell !== el) return;
|
|
3508
|
+
}
|
|
3442
3509
|
el.focus();
|
|
3443
3510
|
return;
|
|
3444
3511
|
}
|
|
@@ -4087,8 +4154,12 @@ function DataTable(_props) {
|
|
|
4087
4154
|
|
|
4088
4155
|
{<Show when={local.groupable}><div class={"rdt-group-bar-host"} data-rozie-s-d5dcab4c="">
|
|
4089
4156
|
{(_props.groupBarSlot ?? _props.slots?.["groupBar"])?.({
|
|
4090
|
-
grouping
|
|
4091
|
-
|
|
4157
|
+
get grouping() {
|
|
4158
|
+
return groupingKeys();
|
|
4159
|
+
},
|
|
4160
|
+
get groupableColumns() {
|
|
4161
|
+
return groupableColumns();
|
|
4162
|
+
},
|
|
4092
4163
|
applyGrouping,
|
|
4093
4164
|
clearGrouping
|
|
4094
4165
|
}) ?? <Key each={groupingKeys()} by={(gk) => gk}>{(gk) => <span class={"rdt-group-token"} data-group-token="" data-rozie-s-d5dcab4c="">{rozieDisplay(gk())}</span>}</Key>}
|
|
@@ -4120,13 +4191,25 @@ function DataTable(_props) {
|
|
|
4120
4191
|
{<Show when={header().column.getCanSort && header().column.getCanSort()} fallback={<span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4121
4192
|
<span class={"rdt-header-label"} data-rozie-s-d5dcab4c="">
|
|
4122
4193
|
{_props.slots?.[`colHeader-${header().column.id}`]?.({
|
|
4123
|
-
columnId
|
|
4124
|
-
|
|
4125
|
-
|
|
4194
|
+
get columnId() {
|
|
4195
|
+
return header().column.id;
|
|
4196
|
+
},
|
|
4197
|
+
get column() {
|
|
4198
|
+
return header().column;
|
|
4199
|
+
},
|
|
4200
|
+
get label() {
|
|
4201
|
+
return headerLabel(header().column.id);
|
|
4202
|
+
}
|
|
4126
4203
|
}) ?? (_props.colHeaderSlot ?? _props.slots?.["colHeader"])?.({
|
|
4127
|
-
columnId
|
|
4128
|
-
|
|
4129
|
-
|
|
4204
|
+
get columnId() {
|
|
4205
|
+
return header().column.id;
|
|
4206
|
+
},
|
|
4207
|
+
get column() {
|
|
4208
|
+
return header().column;
|
|
4209
|
+
},
|
|
4210
|
+
get label() {
|
|
4211
|
+
return headerLabel(header().column.id);
|
|
4212
|
+
}
|
|
4130
4213
|
}) ?? rozieDisplay(headerLabel(header().column.id))}
|
|
4131
4214
|
</span>
|
|
4132
4215
|
</span>}><button type="button" class={"rdt-sort-btn"} onClick={($event) => {
|
|
@@ -4135,13 +4218,25 @@ function DataTable(_props) {
|
|
|
4135
4218
|
|
|
4136
4219
|
<span class={"rdt-header-label"} data-rozie-s-d5dcab4c="">
|
|
4137
4220
|
{_props.slots?.[`colHeader-${header().column.id}`]?.({
|
|
4138
|
-
columnId
|
|
4139
|
-
|
|
4140
|
-
|
|
4221
|
+
get columnId() {
|
|
4222
|
+
return header().column.id;
|
|
4223
|
+
},
|
|
4224
|
+
get column() {
|
|
4225
|
+
return header().column;
|
|
4226
|
+
},
|
|
4227
|
+
get label() {
|
|
4228
|
+
return headerLabel(header().column.id);
|
|
4229
|
+
}
|
|
4141
4230
|
}) ?? (_props.colHeaderSlot ?? _props.slots?.["colHeader"])?.({
|
|
4142
|
-
columnId
|
|
4143
|
-
|
|
4144
|
-
|
|
4231
|
+
get columnId() {
|
|
4232
|
+
return header().column.id;
|
|
4233
|
+
},
|
|
4234
|
+
get column() {
|
|
4235
|
+
return header().column;
|
|
4236
|
+
},
|
|
4237
|
+
get label() {
|
|
4238
|
+
return headerLabel(header().column.id);
|
|
4239
|
+
}
|
|
4145
4240
|
}) ?? rozieDisplay(headerLabel(header().column.id))}
|
|
4146
4241
|
</span>
|
|
4147
4242
|
<span class={"rdt-sort-ind"} aria-hidden="true" data-rozie-s-d5dcab4c="">{rozieDisplay(sortIndicator(header().column.id))}</span>
|
|
@@ -4170,9 +4265,15 @@ function DataTable(_props) {
|
|
|
4170
4265
|
}} data-rozie-s-d5dcab4c=""><span class={"rdt-resize-grip"} aria-hidden="true" data-rozie-s-d5dcab4c="" /></button>
|
|
4171
4266
|
</span>}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="" /></Show>}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4172
4267
|
{(_props.selectAllSlot ?? _props.slots?.["selectAll"])?.({
|
|
4173
|
-
checked
|
|
4174
|
-
|
|
4175
|
-
|
|
4268
|
+
get checked() {
|
|
4269
|
+
return isAllRowsSelected();
|
|
4270
|
+
},
|
|
4271
|
+
get indeterminate() {
|
|
4272
|
+
return isSomeRowsSelected();
|
|
4273
|
+
},
|
|
4274
|
+
get toggle() {
|
|
4275
|
+
return onToggleAllRows;
|
|
4276
|
+
}
|
|
4176
4277
|
}) ?? <Show when={local.selectionMode === "multiple"}><input type="checkbox" aria-label="Select all rows" class={"rdt-select-all"} checked={isAllRowsSelected()} onChange={($event) => {
|
|
4177
4278
|
onToggleAllRows($event);
|
|
4178
4279
|
}} data-rozie-s-d5dcab4c="" /></Show>}
|
|
@@ -4184,17 +4285,37 @@ function DataTable(_props) {
|
|
|
4184
4285
|
{<Show when={isSelectColumn(header().column.id)} fallback={<Show when={isExpanderColumn(header().column.id)} fallback={<span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4185
4286
|
{<Show when={columnIsFilterable(header().column.id)}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4186
4287
|
{_props.slots?.[`filter-${header().column.id}`]?.({
|
|
4187
|
-
columnId
|
|
4188
|
-
|
|
4189
|
-
|
|
4190
|
-
|
|
4191
|
-
|
|
4288
|
+
get columnId() {
|
|
4289
|
+
return header().column.id;
|
|
4290
|
+
},
|
|
4291
|
+
get value() {
|
|
4292
|
+
return columnFilterValue(header().column.id);
|
|
4293
|
+
},
|
|
4294
|
+
get uniqueValues() {
|
|
4295
|
+
return getFacetedUniqueValues$1(header().column.id);
|
|
4296
|
+
},
|
|
4297
|
+
get minMax() {
|
|
4298
|
+
return getFacetedMinMaxValues$1(header().column.id);
|
|
4299
|
+
},
|
|
4300
|
+
get setFilter() {
|
|
4301
|
+
return setColumnFilter;
|
|
4302
|
+
}
|
|
4192
4303
|
}) ?? (_props.filterSlot ?? _props.slots?.["filter"])?.({
|
|
4193
|
-
columnId
|
|
4194
|
-
|
|
4195
|
-
|
|
4196
|
-
|
|
4197
|
-
|
|
4304
|
+
get columnId() {
|
|
4305
|
+
return header().column.id;
|
|
4306
|
+
},
|
|
4307
|
+
get value() {
|
|
4308
|
+
return columnFilterValue(header().column.id);
|
|
4309
|
+
},
|
|
4310
|
+
get uniqueValues() {
|
|
4311
|
+
return getFacetedUniqueValues$1(header().column.id);
|
|
4312
|
+
},
|
|
4313
|
+
get minMax() {
|
|
4314
|
+
return getFacetedMinMaxValues$1(header().column.id);
|
|
4315
|
+
},
|
|
4316
|
+
get setFilter() {
|
|
4317
|
+
return setColumnFilter;
|
|
4318
|
+
}
|
|
4198
4319
|
}) ?? <input type="text" aria-label={rozieAttr("Filter " + headerLabel(header().column.id))} class={"rdt-col-filter"} value={columnFilterValue(header().column.id)} onInput={($event) => {
|
|
4199
4320
|
onColumnFilterInput(header().column.id, $event);
|
|
4200
4321
|
}} onClick={($event) => {
|
|
@@ -4216,15 +4337,31 @@ function DataTable(_props) {
|
|
|
4216
4337
|
|
|
4217
4338
|
{<Show when={isExpanderColumn(cell().column.id)} fallback={<Show when={isSelectColumn(cell().column.id)} fallback={<Show when={cellIsGrouped(cell())} fallback={<Show when={isEditing(rowIndexOf(row()), colIndexOf(row(), cell()))} fallback={<Show when={cellIsPlaceholder(cell())} fallback={<span class={"rdt-cell-value"} data-rozie-s-d5dcab4c="">
|
|
4218
4339
|
{_props.slots?.[`cell-${cell().column.id}`]?.({
|
|
4219
|
-
columnId
|
|
4220
|
-
|
|
4221
|
-
|
|
4222
|
-
|
|
4340
|
+
get columnId() {
|
|
4341
|
+
return cell().column.id;
|
|
4342
|
+
},
|
|
4343
|
+
get column() {
|
|
4344
|
+
return cell().column;
|
|
4345
|
+
},
|
|
4346
|
+
get row() {
|
|
4347
|
+
return cellSlotRow(row());
|
|
4348
|
+
},
|
|
4349
|
+
get value() {
|
|
4350
|
+
return cell().getValue();
|
|
4351
|
+
}
|
|
4223
4352
|
}) ?? (_props.cellSlot ?? _props.slots?.["cell"])?.({
|
|
4224
|
-
columnId
|
|
4225
|
-
|
|
4226
|
-
|
|
4227
|
-
|
|
4353
|
+
get columnId() {
|
|
4354
|
+
return cell().column.id;
|
|
4355
|
+
},
|
|
4356
|
+
get column() {
|
|
4357
|
+
return cell().column;
|
|
4358
|
+
},
|
|
4359
|
+
get row() {
|
|
4360
|
+
return cellSlotRow(row());
|
|
4361
|
+
},
|
|
4362
|
+
get value() {
|
|
4363
|
+
return cell().getValue();
|
|
4364
|
+
}
|
|
4228
4365
|
}) ?? rozieDisplay(cell().getValue())}
|
|
4229
4366
|
</span>}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="" /></Show>}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4230
4367
|
{<Show when={editorTypeOf(cell().column.id) === "number"} fallback={<Show when={editorTypeOf(cell().column.id) === "select"} fallback={<Show when={editorTypeOf(cell().column.id) === "checkbox"} fallback={<Show when={editorTypeOf(cell().column.id) === "custom"} fallback={<input type="text" data-editing-cell="" data-builtin-editor="" class={"rdt-cell-editor"} value={editorValueFor(cell().column.id)} onInput={($event) => {
|
|
@@ -4235,21 +4372,49 @@ function DataTable(_props) {
|
|
|
4235
4372
|
onEditorBlur($event);
|
|
4236
4373
|
}} data-rozie-s-d5dcab4c="" />}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4237
4374
|
{_props.slots?.[`editor-${cell().column.id}`]?.({
|
|
4238
|
-
columnId
|
|
4239
|
-
|
|
4240
|
-
|
|
4241
|
-
|
|
4242
|
-
|
|
4243
|
-
|
|
4244
|
-
|
|
4375
|
+
get columnId() {
|
|
4376
|
+
return cell().column.id;
|
|
4377
|
+
},
|
|
4378
|
+
get column() {
|
|
4379
|
+
return cell().column;
|
|
4380
|
+
},
|
|
4381
|
+
get row() {
|
|
4382
|
+
return cellSlotRow(row());
|
|
4383
|
+
},
|
|
4384
|
+
get value() {
|
|
4385
|
+
return editorValueFor(cell().column.id);
|
|
4386
|
+
},
|
|
4387
|
+
get commit() {
|
|
4388
|
+
return editorCommitFor(cell().column.id);
|
|
4389
|
+
},
|
|
4390
|
+
get cancel() {
|
|
4391
|
+
return editorCancelFor();
|
|
4392
|
+
},
|
|
4393
|
+
get autofocus() {
|
|
4394
|
+
return editorAutofocusFor(cell().column.id, rowIndexOf(row()));
|
|
4395
|
+
}
|
|
4245
4396
|
}) ?? (_props.editorSlot ?? _props.slots?.["editor"])?.({
|
|
4246
|
-
columnId
|
|
4247
|
-
|
|
4248
|
-
|
|
4249
|
-
|
|
4250
|
-
|
|
4251
|
-
|
|
4252
|
-
|
|
4397
|
+
get columnId() {
|
|
4398
|
+
return cell().column.id;
|
|
4399
|
+
},
|
|
4400
|
+
get column() {
|
|
4401
|
+
return cell().column;
|
|
4402
|
+
},
|
|
4403
|
+
get row() {
|
|
4404
|
+
return cellSlotRow(row());
|
|
4405
|
+
},
|
|
4406
|
+
get value() {
|
|
4407
|
+
return editorValueFor(cell().column.id);
|
|
4408
|
+
},
|
|
4409
|
+
get commit() {
|
|
4410
|
+
return editorCommitFor(cell().column.id);
|
|
4411
|
+
},
|
|
4412
|
+
get cancel() {
|
|
4413
|
+
return editorCancelFor();
|
|
4414
|
+
},
|
|
4415
|
+
get autofocus() {
|
|
4416
|
+
return editorAutofocusFor(cell().column.id, rowIndexOf(row()));
|
|
4417
|
+
}
|
|
4253
4418
|
}) ?? <input type="text" data-editing-cell="" data-builtin-editor="" class={"rdt-cell-editor"} value={editorValueFor(cell().column.id)} onInput={($event) => {
|
|
4254
4419
|
onCellEditorInput(cell().column.id, $event);
|
|
4255
4420
|
}} onKeyDown={($event) => {
|
|
@@ -4283,22 +4448,42 @@ function DataTable(_props) {
|
|
|
4283
4448
|
}} data-rozie-s-d5dcab4c="">{rozieDisplay(rowIsExpanded(row()) ? "▾" : "▸")}</button>
|
|
4284
4449
|
<span class={"rdt-group-value"} data-rozie-s-d5dcab4c="">
|
|
4285
4450
|
{_props.slots?.[`cell-${cell().column.id}`]?.({
|
|
4286
|
-
columnId
|
|
4287
|
-
|
|
4288
|
-
|
|
4289
|
-
|
|
4451
|
+
get columnId() {
|
|
4452
|
+
return cell().column.id;
|
|
4453
|
+
},
|
|
4454
|
+
get column() {
|
|
4455
|
+
return cell().column;
|
|
4456
|
+
},
|
|
4457
|
+
get row() {
|
|
4458
|
+
return cellSlotRow(row());
|
|
4459
|
+
},
|
|
4460
|
+
get value() {
|
|
4461
|
+
return cell().getValue();
|
|
4462
|
+
}
|
|
4290
4463
|
}) ?? (_props.cellSlot ?? _props.slots?.["cell"])?.({
|
|
4291
|
-
columnId
|
|
4292
|
-
|
|
4293
|
-
|
|
4294
|
-
|
|
4464
|
+
get columnId() {
|
|
4465
|
+
return cell().column.id;
|
|
4466
|
+
},
|
|
4467
|
+
get column() {
|
|
4468
|
+
return cell().column;
|
|
4469
|
+
},
|
|
4470
|
+
get row() {
|
|
4471
|
+
return cellSlotRow(row());
|
|
4472
|
+
},
|
|
4473
|
+
get value() {
|
|
4474
|
+
return cell().getValue();
|
|
4475
|
+
}
|
|
4295
4476
|
}) ?? rozieDisplay(cell().getValue())}
|
|
4296
4477
|
</span>
|
|
4297
4478
|
<span class={"rdt-group-count"} data-rozie-s-d5dcab4c="">{rozieDisplay("(" + groupSubRowCount(row()) + ")")}</span>
|
|
4298
4479
|
</span></Show>}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4299
4480
|
{(_props.selectCellSlot ?? _props.slots?.["selectCell"])?.({
|
|
4300
|
-
|
|
4301
|
-
|
|
4481
|
+
get row() {
|
|
4482
|
+
return cellSlotRow(row());
|
|
4483
|
+
},
|
|
4484
|
+
get checked() {
|
|
4485
|
+
return rowIsSelected(row());
|
|
4486
|
+
},
|
|
4302
4487
|
toggle: (e) => onToggleRow(row(), e)
|
|
4303
4488
|
}) ?? <input type="checkbox" aria-label="Select row" class={"rdt-select-row"} checked={rowIsSelected(row())} onChange={($event) => {
|
|
4304
4489
|
onToggleRow(row(), $event);
|
|
@@ -4313,7 +4498,9 @@ function DataTable(_props) {
|
|
|
4313
4498
|
|
|
4314
4499
|
{<Show when={rowShowsDetail(row())}><tr class={"rdt-detail-row"} role="row" data-detail-row={rozieAttr(row().id)} data-rozie-s-d5dcab4c="">
|
|
4315
4500
|
<td class={"rdt-detail-cell"} colSpan={rozieAttr(visibleColCount())} data-rozie-s-d5dcab4c="">
|
|
4316
|
-
{(_props.detailSlot ?? _props.slots?.["detail"])?.({
|
|
4501
|
+
{(_props.detailSlot ?? _props.slots?.["detail"])?.({ get row() {
|
|
4502
|
+
return row().original;
|
|
4503
|
+
} })}
|
|
4317
4504
|
</td>
|
|
4318
4505
|
</tr></Show>}</>}</Key>
|
|
4319
4506
|
</tbody>
|
|
@@ -4347,13 +4534,25 @@ function DataTable(_props) {
|
|
|
4347
4534
|
{<Show when={wh().header.column.getCanSort && wh().header.column.getCanSort()} fallback={<span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4348
4535
|
<span class={"rdt-header-label"} data-rozie-s-d5dcab4c="">
|
|
4349
4536
|
{_props.slots?.[`colHeader-${wh().header.column.id}`]?.({
|
|
4350
|
-
columnId
|
|
4351
|
-
|
|
4352
|
-
|
|
4537
|
+
get columnId() {
|
|
4538
|
+
return wh().header.column.id;
|
|
4539
|
+
},
|
|
4540
|
+
get column() {
|
|
4541
|
+
return wh().header.column;
|
|
4542
|
+
},
|
|
4543
|
+
get label() {
|
|
4544
|
+
return headerLabel(wh().header.column.id);
|
|
4545
|
+
}
|
|
4353
4546
|
}) ?? (_props.colHeaderSlot ?? _props.slots?.["colHeader"])?.({
|
|
4354
|
-
columnId
|
|
4355
|
-
|
|
4356
|
-
|
|
4547
|
+
get columnId() {
|
|
4548
|
+
return wh().header.column.id;
|
|
4549
|
+
},
|
|
4550
|
+
get column() {
|
|
4551
|
+
return wh().header.column;
|
|
4552
|
+
},
|
|
4553
|
+
get label() {
|
|
4554
|
+
return headerLabel(wh().header.column.id);
|
|
4555
|
+
}
|
|
4357
4556
|
}) ?? rozieDisplay(headerLabel(wh().header.column.id))}
|
|
4358
4557
|
</span>
|
|
4359
4558
|
</span>}><button type="button" class={"rdt-sort-btn"} onClick={($event) => {
|
|
@@ -4361,13 +4560,25 @@ function DataTable(_props) {
|
|
|
4361
4560
|
}} data-rozie-s-d5dcab4c="">
|
|
4362
4561
|
<span class={"rdt-header-label"} data-rozie-s-d5dcab4c="">
|
|
4363
4562
|
{_props.slots?.[`colHeader-${wh().header.column.id}`]?.({
|
|
4364
|
-
columnId
|
|
4365
|
-
|
|
4366
|
-
|
|
4563
|
+
get columnId() {
|
|
4564
|
+
return wh().header.column.id;
|
|
4565
|
+
},
|
|
4566
|
+
get column() {
|
|
4567
|
+
return wh().header.column;
|
|
4568
|
+
},
|
|
4569
|
+
get label() {
|
|
4570
|
+
return headerLabel(wh().header.column.id);
|
|
4571
|
+
}
|
|
4367
4572
|
}) ?? (_props.colHeaderSlot ?? _props.slots?.["colHeader"])?.({
|
|
4368
|
-
columnId
|
|
4369
|
-
|
|
4370
|
-
|
|
4573
|
+
get columnId() {
|
|
4574
|
+
return wh().header.column.id;
|
|
4575
|
+
},
|
|
4576
|
+
get column() {
|
|
4577
|
+
return wh().header.column;
|
|
4578
|
+
},
|
|
4579
|
+
get label() {
|
|
4580
|
+
return headerLabel(wh().header.column.id);
|
|
4581
|
+
}
|
|
4371
4582
|
}) ?? rozieDisplay(headerLabel(wh().header.column.id))}
|
|
4372
4583
|
</span>
|
|
4373
4584
|
<span class={"rdt-sort-ind"} aria-hidden="true" data-rozie-s-d5dcab4c="">{rozieDisplay(sortIndicator(wh().header.column.id))}</span>
|
|
@@ -4395,9 +4606,15 @@ function DataTable(_props) {
|
|
|
4395
4606
|
}} data-rozie-s-d5dcab4c=""><span class={"rdt-resize-grip"} aria-hidden="true" data-rozie-s-d5dcab4c="" /></button>
|
|
4396
4607
|
</span>}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="" /></Show>}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4397
4608
|
{(_props.selectAllSlot ?? _props.slots?.["selectAll"])?.({
|
|
4398
|
-
checked
|
|
4399
|
-
|
|
4400
|
-
|
|
4609
|
+
get checked() {
|
|
4610
|
+
return isAllRowsSelected();
|
|
4611
|
+
},
|
|
4612
|
+
get indeterminate() {
|
|
4613
|
+
return isSomeRowsSelected();
|
|
4614
|
+
},
|
|
4615
|
+
get toggle() {
|
|
4616
|
+
return onToggleAllRows;
|
|
4617
|
+
}
|
|
4401
4618
|
}) ?? <Show when={local.selectionMode === "multiple"}><input type="checkbox" aria-label="Select all rows" class={"rdt-select-all"} checked={isAllRowsSelected()} onChange={($event) => {
|
|
4402
4619
|
onToggleAllRows($event);
|
|
4403
4620
|
}} data-rozie-s-d5dcab4c="" /></Show>}
|
|
@@ -4410,17 +4627,37 @@ function DataTable(_props) {
|
|
|
4410
4627
|
{<Show when={isSelectColumn(wh().header.column.id)} fallback={<Show when={isExpanderColumn(wh().header.column.id)} fallback={<span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4411
4628
|
{<Show when={columnIsFilterable(wh().header.column.id)}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4412
4629
|
{_props.slots?.[`filter-${wh().header.column.id}`]?.({
|
|
4413
|
-
columnId
|
|
4414
|
-
|
|
4415
|
-
|
|
4416
|
-
|
|
4417
|
-
|
|
4630
|
+
get columnId() {
|
|
4631
|
+
return wh().header.column.id;
|
|
4632
|
+
},
|
|
4633
|
+
get value() {
|
|
4634
|
+
return columnFilterValue(wh().header.column.id);
|
|
4635
|
+
},
|
|
4636
|
+
get uniqueValues() {
|
|
4637
|
+
return getFacetedUniqueValues$1(wh().header.column.id);
|
|
4638
|
+
},
|
|
4639
|
+
get minMax() {
|
|
4640
|
+
return getFacetedMinMaxValues$1(wh().header.column.id);
|
|
4641
|
+
},
|
|
4642
|
+
get setFilter() {
|
|
4643
|
+
return setColumnFilter;
|
|
4644
|
+
}
|
|
4418
4645
|
}) ?? (_props.filterSlot ?? _props.slots?.["filter"])?.({
|
|
4419
|
-
columnId
|
|
4420
|
-
|
|
4421
|
-
|
|
4422
|
-
|
|
4423
|
-
|
|
4646
|
+
get columnId() {
|
|
4647
|
+
return wh().header.column.id;
|
|
4648
|
+
},
|
|
4649
|
+
get value() {
|
|
4650
|
+
return columnFilterValue(wh().header.column.id);
|
|
4651
|
+
},
|
|
4652
|
+
get uniqueValues() {
|
|
4653
|
+
return getFacetedUniqueValues$1(wh().header.column.id);
|
|
4654
|
+
},
|
|
4655
|
+
get minMax() {
|
|
4656
|
+
return getFacetedMinMaxValues$1(wh().header.column.id);
|
|
4657
|
+
},
|
|
4658
|
+
get setFilter() {
|
|
4659
|
+
return setColumnFilter;
|
|
4660
|
+
}
|
|
4424
4661
|
}) ?? <input type="text" aria-label={rozieAttr("Filter " + headerLabel(wh().header.column.id))} class={"rdt-col-filter"} value={columnFilterValue(wh().header.column.id)} onInput={($event) => {
|
|
4425
4662
|
onColumnFilterInput(wh().header.column.id, $event);
|
|
4426
4663
|
}} onClick={($event) => {
|
|
@@ -4450,15 +4687,31 @@ function DataTable(_props) {
|
|
|
4450
4687
|
|
|
4451
4688
|
{<Show when={isExpanderColumn(cell().column.id)} fallback={<Show when={isSelectColumn(cell().column.id)} fallback={<Show when={cellIsGrouped(cell())} fallback={<Show when={isEditing(wr().vi.index, colIndexOf(wr().row, cell()))} fallback={<Show when={cellIsPlaceholder(cell())} fallback={<span class={"rdt-cell-value"} data-rozie-s-d5dcab4c="">
|
|
4452
4689
|
{_props.slots?.[`cell-${cell().column.id}`]?.({
|
|
4453
|
-
columnId
|
|
4454
|
-
|
|
4455
|
-
|
|
4456
|
-
|
|
4690
|
+
get columnId() {
|
|
4691
|
+
return cell().column.id;
|
|
4692
|
+
},
|
|
4693
|
+
get column() {
|
|
4694
|
+
return cell().column;
|
|
4695
|
+
},
|
|
4696
|
+
get row() {
|
|
4697
|
+
return cellSlotRow(wr().row);
|
|
4698
|
+
},
|
|
4699
|
+
get value() {
|
|
4700
|
+
return cell().getValue();
|
|
4701
|
+
}
|
|
4457
4702
|
}) ?? (_props.cellSlot ?? _props.slots?.["cell"])?.({
|
|
4458
|
-
columnId
|
|
4459
|
-
|
|
4460
|
-
|
|
4461
|
-
|
|
4703
|
+
get columnId() {
|
|
4704
|
+
return cell().column.id;
|
|
4705
|
+
},
|
|
4706
|
+
get column() {
|
|
4707
|
+
return cell().column;
|
|
4708
|
+
},
|
|
4709
|
+
get row() {
|
|
4710
|
+
return cellSlotRow(wr().row);
|
|
4711
|
+
},
|
|
4712
|
+
get value() {
|
|
4713
|
+
return cell().getValue();
|
|
4714
|
+
}
|
|
4462
4715
|
}) ?? rozieDisplay(cell().getValue())}
|
|
4463
4716
|
</span>}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="" /></Show>}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4464
4717
|
{<Show when={editorTypeOf(cell().column.id) === "number"} fallback={<Show when={editorTypeOf(cell().column.id) === "select"} fallback={<Show when={editorTypeOf(cell().column.id) === "checkbox"} fallback={<Show when={editorTypeOf(cell().column.id) === "custom"} fallback={<input type="text" data-editing-cell="" data-builtin-editor="" class={"rdt-cell-editor"} value={editorValueFor(cell().column.id)} onInput={($event) => {
|
|
@@ -4469,21 +4722,49 @@ function DataTable(_props) {
|
|
|
4469
4722
|
onEditorBlur($event);
|
|
4470
4723
|
}} data-rozie-s-d5dcab4c="" />}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4471
4724
|
{_props.slots?.[`editor-${cell().column.id}`]?.({
|
|
4472
|
-
columnId
|
|
4473
|
-
|
|
4474
|
-
|
|
4475
|
-
|
|
4476
|
-
|
|
4477
|
-
|
|
4478
|
-
|
|
4725
|
+
get columnId() {
|
|
4726
|
+
return cell().column.id;
|
|
4727
|
+
},
|
|
4728
|
+
get column() {
|
|
4729
|
+
return cell().column;
|
|
4730
|
+
},
|
|
4731
|
+
get row() {
|
|
4732
|
+
return cellSlotRow(wr().row);
|
|
4733
|
+
},
|
|
4734
|
+
get value() {
|
|
4735
|
+
return editorValueFor(cell().column.id);
|
|
4736
|
+
},
|
|
4737
|
+
get commit() {
|
|
4738
|
+
return editorCommitFor(cell().column.id);
|
|
4739
|
+
},
|
|
4740
|
+
get cancel() {
|
|
4741
|
+
return editorCancelFor();
|
|
4742
|
+
},
|
|
4743
|
+
get autofocus() {
|
|
4744
|
+
return editorAutofocusFor(cell().column.id, wr().vi.index);
|
|
4745
|
+
}
|
|
4479
4746
|
}) ?? (_props.editorSlot ?? _props.slots?.["editor"])?.({
|
|
4480
|
-
columnId
|
|
4481
|
-
|
|
4482
|
-
|
|
4483
|
-
|
|
4484
|
-
|
|
4485
|
-
|
|
4486
|
-
|
|
4747
|
+
get columnId() {
|
|
4748
|
+
return cell().column.id;
|
|
4749
|
+
},
|
|
4750
|
+
get column() {
|
|
4751
|
+
return cell().column;
|
|
4752
|
+
},
|
|
4753
|
+
get row() {
|
|
4754
|
+
return cellSlotRow(wr().row);
|
|
4755
|
+
},
|
|
4756
|
+
get value() {
|
|
4757
|
+
return editorValueFor(cell().column.id);
|
|
4758
|
+
},
|
|
4759
|
+
get commit() {
|
|
4760
|
+
return editorCommitFor(cell().column.id);
|
|
4761
|
+
},
|
|
4762
|
+
get cancel() {
|
|
4763
|
+
return editorCancelFor();
|
|
4764
|
+
},
|
|
4765
|
+
get autofocus() {
|
|
4766
|
+
return editorAutofocusFor(cell().column.id, wr().vi.index);
|
|
4767
|
+
}
|
|
4487
4768
|
}) ?? <input type="text" data-editing-cell="" data-builtin-editor="" class={"rdt-cell-editor"} value={editorValueFor(cell().column.id)} onInput={($event) => {
|
|
4488
4769
|
onCellEditorInput(cell().column.id, $event);
|
|
4489
4770
|
}} onKeyDown={($event) => {
|
|
@@ -4517,22 +4798,42 @@ function DataTable(_props) {
|
|
|
4517
4798
|
}} data-rozie-s-d5dcab4c="">{rozieDisplay(rowIsExpanded(wr().row) ? "▾" : "▸")}</button>
|
|
4518
4799
|
<span class={"rdt-group-value"} data-rozie-s-d5dcab4c="">
|
|
4519
4800
|
{_props.slots?.[`cell-${cell().column.id}`]?.({
|
|
4520
|
-
columnId
|
|
4521
|
-
|
|
4522
|
-
|
|
4523
|
-
|
|
4801
|
+
get columnId() {
|
|
4802
|
+
return cell().column.id;
|
|
4803
|
+
},
|
|
4804
|
+
get column() {
|
|
4805
|
+
return cell().column;
|
|
4806
|
+
},
|
|
4807
|
+
get row() {
|
|
4808
|
+
return cellSlotRow(wr().row);
|
|
4809
|
+
},
|
|
4810
|
+
get value() {
|
|
4811
|
+
return cell().getValue();
|
|
4812
|
+
}
|
|
4524
4813
|
}) ?? (_props.cellSlot ?? _props.slots?.["cell"])?.({
|
|
4525
|
-
columnId
|
|
4526
|
-
|
|
4527
|
-
|
|
4528
|
-
|
|
4814
|
+
get columnId() {
|
|
4815
|
+
return cell().column.id;
|
|
4816
|
+
},
|
|
4817
|
+
get column() {
|
|
4818
|
+
return cell().column;
|
|
4819
|
+
},
|
|
4820
|
+
get row() {
|
|
4821
|
+
return cellSlotRow(wr().row);
|
|
4822
|
+
},
|
|
4823
|
+
get value() {
|
|
4824
|
+
return cell().getValue();
|
|
4825
|
+
}
|
|
4529
4826
|
}) ?? rozieDisplay(cell().getValue())}
|
|
4530
4827
|
</span>
|
|
4531
4828
|
<span class={"rdt-group-count"} data-rozie-s-d5dcab4c="">{rozieDisplay("(" + groupSubRowCount(wr().row) + ")")}</span>
|
|
4532
4829
|
</span></Show>}><span style={{ display: "contents" }} data-rozie-s-d5dcab4c="">
|
|
4533
4830
|
{(_props.selectCellSlot ?? _props.slots?.["selectCell"])?.({
|
|
4534
|
-
row
|
|
4535
|
-
|
|
4831
|
+
get row() {
|
|
4832
|
+
return cellSlotRow(wr().row);
|
|
4833
|
+
},
|
|
4834
|
+
get checked() {
|
|
4835
|
+
return rowIsSelected(wr().row);
|
|
4836
|
+
},
|
|
4536
4837
|
toggle: (e) => onToggleRow(wr().row, e)
|
|
4537
4838
|
}) ?? <input type="checkbox" aria-label="Select row" class={"rdt-select-row"} checked={rowIsSelected(wr().row)} onChange={($event) => {
|
|
4538
4839
|
onToggleRow(wr().row, $event);
|
|
@@ -4548,7 +4849,9 @@ function DataTable(_props) {
|
|
|
4548
4849
|
|
|
4549
4850
|
{<Show when={rowShowsDetail(wr().row)}><tr class={"rdt-detail-row"} role="row" data-detail-row={rozieAttr(wr().row.id)} data-rozie-s-d5dcab4c="">
|
|
4550
4851
|
<td class={"rdt-detail-cell"} colSpan={rozieAttr(windowedColSpan())} data-rozie-s-d5dcab4c="">
|
|
4551
|
-
{(_props.detailSlot ?? _props.slots?.["detail"])?.({ row
|
|
4852
|
+
{(_props.detailSlot ?? _props.slots?.["detail"])?.({ get row() {
|
|
4853
|
+
return wr().row.original;
|
|
4854
|
+
} })}
|
|
4552
4855
|
</td>
|
|
4553
4856
|
</tr></Show>}</>}</Key>
|
|
4554
4857
|
|