@atscript/vue-table 0.1.141 → 0.1.142
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/dist/as-action-form-dialog.cjs +1 -1
- package/dist/as-action-form-dialog.mjs +1 -1
- package/dist/{as-action-menu-content-AKbIp4Ni.cjs → as-action-menu-content-BaNFBYn3.cjs} +1 -1
- package/dist/{as-action-menu-content-6dR5q8bs.mjs → as-action-menu-content-miQYVP7x.mjs} +1 -1
- package/dist/as-column-menu.d.cts +1 -1
- package/dist/as-column-menu.d.mts +1 -1
- package/dist/{as-column-menu.vue-DapdB_qF.d.cts → as-column-menu.vue-Ca3wSDxw.d.mts} +2 -2
- package/dist/{as-column-menu.vue-Ys_sx0VE.d.mts → as-column-menu.vue-Co7FtiEM.d.cts} +2 -2
- package/dist/{as-config-dialog-Chpw_2tu.cjs → as-config-dialog-CVSOrS9O.cjs} +2 -2
- package/dist/{as-config-dialog-UeMU7jTP.mjs → as-config-dialog-Di02V3bs.mjs} +2 -2
- package/dist/as-config-dialog.cjs +1 -1
- package/dist/as-config-dialog.mjs +1 -1
- package/dist/{as-confirm-dialog-SIqCOw2p.mjs → as-confirm-dialog-C9Qat2rG.mjs} +1 -1
- package/dist/{as-confirm-dialog-hHYVEX9E.cjs → as-confirm-dialog-fCwo1ty9.cjs} +1 -1
- package/dist/as-confirm-dialog.cjs +1 -1
- package/dist/as-confirm-dialog.mjs +1 -1
- package/dist/{as-filter-dialog-Xvj5q09A.cjs → as-filter-dialog-DYpbsNDx.cjs} +7 -7
- package/dist/{as-filter-dialog-DVRhCx6O.mjs → as-filter-dialog-DdtrTT5w.mjs} +7 -7
- package/dist/as-filter-dialog.cjs +1 -1
- package/dist/as-filter-dialog.mjs +1 -1
- package/dist/{as-filter-field-B7b2sEG0.cjs → as-filter-field-4-qFRsJx.cjs} +8 -10
- package/dist/{as-filter-field-D4vQCOEU.mjs → as-filter-field-DEQVodKG.mjs} +8 -10
- package/dist/as-filter-field.cjs +1 -1
- package/dist/as-filter-field.mjs +1 -1
- package/dist/{as-filters-CWQgQBCH.cjs → as-filters-C6ZkLrf4.cjs} +68 -25
- package/dist/{as-filters-CudeInPr.mjs → as-filters-Dd_j6_6G.mjs} +69 -26
- package/dist/as-filters.cjs +1 -1
- package/dist/as-filters.d.cts +1 -1
- package/dist/as-filters.d.mts +1 -1
- package/dist/as-filters.mjs +1 -1
- package/dist/{as-filters.vue-BSgUEh4D.d.mts → as-filters.vue-dHbGmcbr.d.mts} +56 -4
- package/dist/{as-filters.vue-DMXZhQW3.d.cts → as-filters.vue-vH1FHn9L.d.cts} +56 -4
- package/dist/{as-preset-dialog-BsWSuY9N.mjs → as-preset-dialog-Bap48oUv.mjs} +1 -1
- package/dist/{as-preset-dialog-l81WXBmf.cjs → as-preset-dialog-SYA-6lGR.cjs} +1 -1
- package/dist/as-preset-dialog.cjs +1 -1
- package/dist/as-preset-dialog.mjs +1 -1
- package/dist/{as-preset-picker-Bp4xMTua.cjs → as-preset-picker-BdKTZa95.cjs} +1 -1
- package/dist/{as-preset-picker-BTkMqSxH.mjs → as-preset-picker-NBrvsE6s.mjs} +1 -1
- package/dist/as-preset-picker.cjs +1 -1
- package/dist/as-preset-picker.mjs +1 -1
- package/dist/{as-residual-filter-D1SGFQ1p.mjs → as-residual-filter-BFnbI3h3.mjs} +1 -1
- package/dist/{as-residual-filter-BJ4cwFP4.cjs → as-residual-filter-CZ-Bytdj.cjs} +1 -1
- package/dist/as-residual-filter.cjs +1 -1
- package/dist/as-residual-filter.mjs +1 -1
- package/dist/{as-row-actions-9p_BJPga.cjs → as-row-actions-C3xHkX53.cjs} +2 -2
- package/dist/{as-row-actions-CH8WZ5kN.mjs → as-row-actions-KeoHo9Ex.mjs} +2 -2
- package/dist/as-row-actions.cjs +1 -1
- package/dist/as-row-actions.d.cts +1 -1
- package/dist/as-row-actions.d.mts +1 -1
- package/dist/as-row-actions.mjs +1 -1
- package/dist/{as-row-actions.vue-BezMFOr6.d.cts → as-row-actions.vue-D3_z3ytk.d.cts} +1 -1
- package/dist/{as-row-actions.vue-BOURuyjv.d.mts → as-row-actions.vue-nmaDuxBT.d.mts} +1 -1
- package/dist/{as-table-status-Bl9XmWqc.mjs → as-select-cell-KD_ns8DS.mjs} +149 -36
- package/dist/{as-table-status-bbuFDaaK.cjs → as-select-cell-XnzNuW2v.cjs} +154 -35
- package/dist/{as-table-DmmXWq94.mjs → as-table-NHqyekNd.mjs} +10 -11
- package/dist/{as-table-actions-CFBAxKIS.mjs → as-table-actions-BpEFcsgh.mjs} +2 -2
- package/dist/{as-table-actions-oxVqSH-G.cjs → as-table-actions-UQmFtRdJ.cjs} +2 -2
- package/dist/as-table-actions.cjs +1 -1
- package/dist/as-table-actions.d.cts +1 -1
- package/dist/as-table-actions.d.mts +1 -1
- package/dist/as-table-actions.mjs +1 -1
- package/dist/{as-table-actions.vue-CrZtcxAY.d.mts → as-table-actions.vue-BG3JVaBQ.d.mts} +2 -2
- package/dist/{as-table-actions.vue-Dls_1Vze.d.cts → as-table-actions.vue-DcuzNZoC.d.cts} +2 -2
- package/dist/{as-table-fOBpTDrI.cjs → as-table-ay1yel3u.cjs} +10 -11
- package/dist/{as-table-base-Cl1XJu4H.mjs → as-table-base-89DkDZ-1.mjs} +46 -60
- package/dist/{as-table-base--MfU8LVN.cjs → as-table-base-umzg4PBR.cjs} +51 -65
- package/dist/{as-table-header-cell-M8g9X9dR.mjs → as-table-header-cell-DU3ws2x9.mjs} +1 -1
- package/dist/{as-table-header-cell-10DQEs00.cjs → as-table-header-cell-f3YpgJX1.cjs} +1 -1
- package/dist/as-table-header-cell.cjs +1 -1
- package/dist/as-table-header-cell.d.cts +1 -1
- package/dist/as-table-header-cell.d.mts +1 -1
- package/dist/as-table-header-cell.mjs +1 -1
- package/dist/{as-table-header-cell.vue-D-iI_EJY.d.cts → as-table-header-cell.vue-5VGRc23o.d.mts} +2 -2
- package/dist/{as-table-header-cell.vue-SMBpzqU2.d.mts → as-table-header-cell.vue-XR90UlHO.d.cts} +2 -2
- package/dist/{as-table-root-Bl423S7X.mjs → as-table-root-47hiBEnq.mjs} +4 -4
- package/dist/{as-table-root-CGXKfCIk.cjs → as-table-root-DDeGktcl.cjs} +4 -4
- package/dist/as-table-root.cjs +1 -1
- package/dist/as-table-root.d.cts +1 -1
- package/dist/as-table-root.d.mts +1 -1
- package/dist/as-table-root.mjs +1 -1
- package/dist/{as-table-root.vue-BROdsTqv.d.mts → as-table-root.vue-BGx453_Q.d.mts} +5 -5
- package/dist/{as-table-root.vue-D5H8uXFK.d.cts → as-table-root.vue-yZ7ZcwdT.d.cts} +7 -7
- package/dist/as-table.cjs +1 -1
- package/dist/as-table.d.cts +1 -1
- package/dist/as-table.d.mts +1 -1
- package/dist/as-table.mjs +1 -1
- package/dist/{as-table.vue-B_7Y82yW.d.mts → as-table.vue-CwI5Z0y5.d.cts} +10 -8
- package/dist/{as-table.vue-B533pYs6.d.cts → as-table.vue-wdFf4hMW.d.mts} +10 -8
- package/dist/{as-window-table-CkTJOvu9.mjs → as-window-table-C312T_bc.mjs} +83 -62
- package/dist/{as-window-table-Dpbezh9D.cjs → as-window-table-hOYLNhX3.cjs} +89 -68
- package/dist/as-window-table.cjs +1 -1
- package/dist/as-window-table.d.cts +1 -1
- package/dist/as-window-table.d.mts +1 -1
- package/dist/as-window-table.mjs +1 -1
- package/dist/{as-window-table.vue-Bar8mWRL.d.cts → as-window-table.vue-D6UDA6td.d.cts} +6 -4
- package/dist/{as-window-table.vue-OL4KC7Y-.d.mts → as-window-table.vue-Deg1mj3t.d.mts} +6 -4
- package/dist/index.cjs +18 -18
- package/dist/index.d.cts +10 -10
- package/dist/index.d.mts +10 -10
- package/dist/index.mjs +18 -18
- package/dist/{types-Cdk5OH1-.d.cts → types-BU7J-a1r.d.mts} +41 -9
- package/dist/{types-Ev-A5h_D.d.mts → types-D4dK49sA.d.cts} +41 -9
- package/dist/{use-table-BG3IZyCO.mjs → use-table-DlqGHjPh.mjs} +1 -1
- package/dist/{use-table-column-handlers-CaT7dYnI.mjs → use-table-column-handlers-0myVzrZR.mjs} +1 -1
- package/dist/{use-table-column-handlers-CWHRcQbE.cjs → use-table-column-handlers-BHMCo_HR.cjs} +1 -1
- package/dist/{use-table-component-Tc_ZvZua.cjs → use-table-component-IziAm0vk.cjs} +1 -1
- package/dist/{use-table-component-OTdgA202.mjs → use-table-component-TLwFq4rx.mjs} +1 -1
- package/dist/{use-table-nav-bridge-BNjwR3qy.mjs → use-table-nav-bridge-CkQqimdS.mjs} +1 -1
- package/dist/{use-table-nav-bridge-ByQo00IH.cjs → use-table-nav-bridge-QU4jKhqx.cjs} +1 -1
- package/dist/{use-table-state-CgXY-ruN.cjs → use-table-state-BiklfjP0.cjs} +79 -28
- package/dist/{use-table-state-BgLIOO31.mjs → use-table-state-Cq-3tbVr.mjs} +69 -30
- package/dist/{use-table-rc6_sYU6.cjs → use-table-yZNJTfRq.cjs} +1 -1
- package/package.json +9 -9
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { D as TVueTableActionInfo, E as TAsTableControls, O as TableActionsState, T as TAsCellTypeComponents, a as ConfirmOptions, d as NavKeyOptions, f as PresetConfig, g as RowActionsConfig, k as TableNavBridge, m as ReactiveTableState, o as DroppedFieldsReport, t as ActionResult } from "./types-D4dK49sA.cjs";
|
|
2
2
|
import * as vue from "vue";
|
|
3
3
|
import { AllowedComponentProps, AnchorHTMLAttributes, App, Component as Component$1, ComponentCustomProps, ComponentPublicInstance, ComputedRef, DefineComponent, InjectionKey, MaybeRef, MaybeRefOrGetter, Ref, ShallowRef, UnwrapRef, VNode, VNodeProps, WritableComputedRef } from "vue";
|
|
4
|
-
import { Client, PageResult } from "@atscript/db-client";
|
|
5
|
-
import { FilterExpr, Uniquery } from "@uniqu/core";
|
|
6
4
|
import * as _atscript_ui0 from "@atscript/ui";
|
|
7
5
|
import { ClientFactory, ClientFactory as ClientFactory$1, ColumnDef, SortControl, TableDef, getDefaultClientFactory, resetDefaultClientFactory, setDefaultClientFactory } from "@atscript/ui";
|
|
6
|
+
import { Client, PageResult } from "@atscript/db-client";
|
|
7
|
+
import { FilterExpr, Uniquery } from "@uniqu/core";
|
|
8
8
|
import * as _atscript_ui_table0 from "@atscript/ui-table";
|
|
9
9
|
import { AppConfData, AppConfData as AppConfData$1, AsPresetEntryRow, AsPresetEntryRow as AsPresetEntryRow$1, ColumnWidthsMap, CsvOptions, CsvOptions as CsvOptions$1, DisplayColumnDef, DisplayColumnDef as DisplayColumnDef$1, ExportAbortError, ExportScalar, ExportScalar as ExportScalar$1, FilterCondition, PRESET_ASPECTS, PresetAspect, PresetAspect as PresetAspect$1, PresetCapabilities, PresetCapabilities as PresetCapabilities$1, PresetData, PresetDraft, PresetSnapshot, PresetSnapshot as PresetSnapshot$1, PresetSnapshotWire, QueryOptions, STANDARD_PRESET_ID, SYSTEM_PRESET_PREFIX, SelectionMode, SystemPreset, SystemPreset as SystemPreset$1, SystemPresetInput, SystemPresetInput as SystemPresetInput$1, UnsupportedFilter, UrlQuerySync, UrlQuerySync as UrlQuerySync$1, UserConfData, isSystemPresetId, resolveSystemPresets } from "@atscript/ui-table";
|
|
10
10
|
import { TAsTypeComponents } from "@atscript/vue-form";
|
|
@@ -2571,11 +2571,12 @@ declare const __VLS_base: vue.DefineComponent<__VLS_PublicProps, {
|
|
|
2571
2571
|
"update:selectedRows": (value: unknown[]) => any;
|
|
2572
2572
|
"update:urlQuery": (value: string | undefined) => any;
|
|
2573
2573
|
} & {
|
|
2574
|
+
"main-action": (row: Record<string, unknown>, absIndex: number, event: MouseEvent | KeyboardEvent) => any;
|
|
2574
2575
|
"unsupported-filter": (issue: UnsupportedFilter) => any;
|
|
2575
2576
|
"fields-dropped": (report: DroppedFieldsReport) => any;
|
|
2576
|
-
action: (action: TVueTableActionInfo, ids: unknown[], result: ActionResult, event?:
|
|
2577
|
-
"main-action": (row: Record<string, unknown>, absIndex: number, event: KeyboardEvent | MouseEvent) => any;
|
|
2577
|
+
action: (action: TVueTableActionInfo, ids: unknown[], result: ActionResult, event?: MouseEvent | KeyboardEvent | undefined) => any;
|
|
2578
2578
|
}, string, vue.PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
2579
|
+
"onMain-action"?: ((row: Record<string, unknown>, absIndex: number, event: MouseEvent | KeyboardEvent) => any) | undefined;
|
|
2579
2580
|
"onUnsupported-filter"?: ((issue: UnsupportedFilter) => any) | undefined;
|
|
2580
2581
|
"onFields-dropped"?: ((report: DroppedFieldsReport) => any) | undefined;
|
|
2581
2582
|
"onUpdate:filterFields"?: ((value: string[]) => any) | undefined;
|
|
@@ -2585,8 +2586,7 @@ declare const __VLS_base: vue.DefineComponent<__VLS_PublicProps, {
|
|
|
2585
2586
|
"onUpdate:ignoreSortersWhenSearched"?: ((value: boolean) => any) | undefined;
|
|
2586
2587
|
"onUpdate:selectedRows"?: ((value: unknown[]) => any) | undefined;
|
|
2587
2588
|
"onUpdate:urlQuery"?: ((value: string | undefined) => any) | undefined;
|
|
2588
|
-
onAction?: ((action: TVueTableActionInfo, ids: unknown[], result: ActionResult, event?:
|
|
2589
|
-
"onMain-action"?: ((row: Record<string, unknown>, absIndex: number, event: KeyboardEvent | MouseEvent) => any) | undefined;
|
|
2589
|
+
onAction?: ((action: TVueTableActionInfo, ids: unknown[], result: ActionResult, event?: MouseEvent | KeyboardEvent | undefined) => any) | undefined;
|
|
2590
2590
|
}>, {
|
|
2591
2591
|
localSort: boolean;
|
|
2592
2592
|
queryOnMount: boolean;
|
package/dist/as-table.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const require_as_table = require("./as-table-
|
|
1
|
+
const require_as_table = require("./as-table-ay1yel3u.cjs");
|
|
2
2
|
module.exports = require_as_table.as_table_default;
|
package/dist/as-table.d.cts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as _default } from "./as-table.vue-
|
|
1
|
+
import { t as _default } from "./as-table.vue-CwI5Z0y5.cjs";
|
|
2
2
|
export = _default;
|
package/dist/as-table.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as _default } from "./as-table.vue-
|
|
1
|
+
import { t as _default } from "./as-table.vue-wdFf4hMW.mjs";
|
|
2
2
|
export { _default as default };
|
package/dist/as-table.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as as_table_default } from "./as-table-
|
|
1
|
+
import { t as as_table_default } from "./as-table-NHqyekNd.mjs";
|
|
2
2
|
export { as_table_default as default };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { _ as RowAttrsHook, h as RowActionsColumnPlacement, r as ColumnMenuConfig, v as RowClassHook, x as RowSelectableHook, y as RowDeleteOpt } from "./types-
|
|
2
|
-
import { ColumnDef } from "@atscript/ui";
|
|
1
|
+
import { _ as RowAttrsHook, h as RowActionsColumnPlacement, r as ColumnMenuConfig, v as RowClassHook, w as SelectOn, x as RowSelectableHook, y as RowDeleteOpt } from "./types-D4dK49sA.cjs";
|
|
3
2
|
import * as vue from "vue";
|
|
3
|
+
import { ColumnDef } from "@atscript/ui";
|
|
4
4
|
import { SelectionMode } from "@atscript/ui-table";
|
|
5
5
|
|
|
6
6
|
//#region src/components/as-table.vue.d.ts
|
|
@@ -22,7 +22,8 @@ type __VLS_Props = {
|
|
|
22
22
|
* flipping `select` to `"none"` hides the checkbox UI but leaves the
|
|
23
23
|
* user's selected pks in place, surviving a future re-enable.
|
|
24
24
|
*/
|
|
25
|
-
select?: SelectionMode;
|
|
25
|
+
select?: SelectionMode; /** See {@link SelectOn}. Since 0.1.142. */
|
|
26
|
+
selectOn?: SelectOn;
|
|
26
27
|
/**
|
|
27
28
|
* Built-in row-delete: `false` (off, default), `true` (on with defaults),
|
|
28
29
|
* or a `RowDeleteOpt` overriding label/icon/intent/promptText. The
|
|
@@ -79,20 +80,21 @@ type __VLS_Props = {
|
|
|
79
80
|
*/
|
|
80
81
|
rowAttrs?: RowAttrsHook;
|
|
81
82
|
};
|
|
82
|
-
declare var
|
|
83
|
-
type __VLS_Slots = {} & { [K in NonNullable<typeof
|
|
84
|
-
'query-loading'?: (props: typeof
|
|
83
|
+
declare var __VLS_19: string, __VLS_20: any, __VLS_22: {};
|
|
84
|
+
type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_19>]?: (props: typeof __VLS_20) => any } & {
|
|
85
|
+
'query-loading'?: (props: typeof __VLS_22) => any;
|
|
85
86
|
};
|
|
86
87
|
declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
|
|
87
|
-
"main-action": (row: Record<string, unknown>, absIndex: number, event:
|
|
88
|
+
"main-action": (row: Record<string, unknown>, absIndex: number, event: MouseEvent | KeyboardEvent) => any;
|
|
88
89
|
"row-click": (row: Record<string, unknown>, event: MouseEvent) => any;
|
|
89
90
|
"row-dblclick": (row: Record<string, unknown>, event: MouseEvent) => any;
|
|
90
91
|
}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
91
|
-
"onMain-action"?: ((row: Record<string, unknown>, absIndex: number, event:
|
|
92
|
+
"onMain-action"?: ((row: Record<string, unknown>, absIndex: number, event: MouseEvent | KeyboardEvent) => any) | undefined;
|
|
92
93
|
"onRow-click"?: ((row: Record<string, unknown>, event: MouseEvent) => any) | undefined;
|
|
93
94
|
"onRow-dblclick"?: ((row: Record<string, unknown>, event: MouseEvent) => any) | undefined;
|
|
94
95
|
}>, {
|
|
95
96
|
select: SelectionMode;
|
|
97
|
+
selectOn: SelectOn;
|
|
96
98
|
reorderable: boolean;
|
|
97
99
|
resizable: boolean;
|
|
98
100
|
columnMinWidth: number;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { _ as RowAttrsHook, h as RowActionsColumnPlacement, r as ColumnMenuConfig, v as RowClassHook, x as RowSelectableHook, y as RowDeleteOpt } from "./types-
|
|
2
|
-
import * as vue from "vue";
|
|
1
|
+
import { _ as RowAttrsHook, h as RowActionsColumnPlacement, r as ColumnMenuConfig, v as RowClassHook, w as SelectOn, x as RowSelectableHook, y as RowDeleteOpt } from "./types-BU7J-a1r.mjs";
|
|
3
2
|
import { ColumnDef } from "@atscript/ui";
|
|
3
|
+
import * as vue from "vue";
|
|
4
4
|
import { SelectionMode } from "@atscript/ui-table";
|
|
5
5
|
|
|
6
6
|
//#region src/components/as-table.vue.d.ts
|
|
@@ -22,7 +22,8 @@ type __VLS_Props = {
|
|
|
22
22
|
* flipping `select` to `"none"` hides the checkbox UI but leaves the
|
|
23
23
|
* user's selected pks in place, surviving a future re-enable.
|
|
24
24
|
*/
|
|
25
|
-
select?: SelectionMode;
|
|
25
|
+
select?: SelectionMode; /** See {@link SelectOn}. Since 0.1.142. */
|
|
26
|
+
selectOn?: SelectOn;
|
|
26
27
|
/**
|
|
27
28
|
* Built-in row-delete: `false` (off, default), `true` (on with defaults),
|
|
28
29
|
* or a `RowDeleteOpt` overriding label/icon/intent/promptText. The
|
|
@@ -79,20 +80,21 @@ type __VLS_Props = {
|
|
|
79
80
|
*/
|
|
80
81
|
rowAttrs?: RowAttrsHook;
|
|
81
82
|
};
|
|
82
|
-
declare var
|
|
83
|
-
type __VLS_Slots = {} & { [K in NonNullable<typeof
|
|
84
|
-
'query-loading'?: (props: typeof
|
|
83
|
+
declare var __VLS_19: string, __VLS_20: any, __VLS_22: {};
|
|
84
|
+
type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_19>]?: (props: typeof __VLS_20) => any } & {
|
|
85
|
+
'query-loading'?: (props: typeof __VLS_22) => any;
|
|
85
86
|
};
|
|
86
87
|
declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
|
|
87
|
-
"main-action": (row: Record<string, unknown>, absIndex: number, event:
|
|
88
|
+
"main-action": (row: Record<string, unknown>, absIndex: number, event: MouseEvent | KeyboardEvent) => any;
|
|
88
89
|
"row-click": (row: Record<string, unknown>, event: MouseEvent) => any;
|
|
89
90
|
"row-dblclick": (row: Record<string, unknown>, event: MouseEvent) => any;
|
|
90
91
|
}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
91
|
-
"onMain-action"?: ((row: Record<string, unknown>, absIndex: number, event:
|
|
92
|
+
"onMain-action"?: ((row: Record<string, unknown>, absIndex: number, event: MouseEvent | KeyboardEvent) => any) | undefined;
|
|
92
93
|
"onRow-click"?: ((row: Record<string, unknown>, event: MouseEvent) => any) | undefined;
|
|
93
94
|
"onRow-dblclick"?: ((row: Record<string, unknown>, event: MouseEvent) => any) | undefined;
|
|
94
95
|
}>, {
|
|
95
96
|
select: SelectionMode;
|
|
97
|
+
selectOn: SelectOn;
|
|
96
98
|
reorderable: boolean;
|
|
97
99
|
resizable: boolean;
|
|
98
100
|
columnMinWidth: number;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { _ as toSelectAllState, a as useTableContext, i as useRegisterMainActionListener } from "./use-table-state-Cq-3tbVr.mjs";
|
|
2
2
|
import { t as getCellValue } from "./get-cell-value-Cb3X8nUn.mjs";
|
|
3
3
|
import { t as useSelectModeReset } from "./use-table-selection-ULbKT2xW.mjs";
|
|
4
4
|
import { t as useHasEmitListener } from "./use-has-emit-listener-DrBbsLHQ.mjs";
|
|
5
|
-
import { n as useRowActionsColumn, t as useTableColumnHandlers } from "./use-table-column-handlers-
|
|
6
|
-
import { a as
|
|
5
|
+
import { n as useRowActionsColumn, t as useTableColumnHandlers } from "./use-table-column-handlers-0myVzrZR.mjs";
|
|
6
|
+
import { a as useRafBatch, i as as_table_colgroup_default, n as as_table_status_default, o as useCellComponents, r as as_table_header_default, s as useCellResolver, t as as_select_cell_default } from "./as-select-cell-KD_ns8DS.mjs";
|
|
7
7
|
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, guardReactiveProps, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onMounted, openBlock, ref, renderList, renderSlot, resolveDynamicComponent, unref, useSlots, watch, withCtx, withModifiers } from "vue";
|
|
8
|
-
import { DEFAULT_ROW_HEIGHT_PX, clampTopIndex, filledFilterCount } from "@atscript/ui-table";
|
|
8
|
+
import { DEFAULT_ROW_HEIGHT_PX, clampTopIndex, filledFilterCount, rowsToPks } from "@atscript/ui-table";
|
|
9
9
|
import { useElementSize, useResizeObserver } from "@vueuse/core";
|
|
10
10
|
//#region src/components/internal/as-window-skeleton-row.vue?vue&type=script&setup=true&lang.ts
|
|
11
11
|
const _hoisted_1$3 = {
|
|
@@ -182,24 +182,6 @@ const _hoisted_4 = [
|
|
|
182
182
|
"onDblclick"
|
|
183
183
|
];
|
|
184
184
|
const _hoisted_5 = {
|
|
185
|
-
key: 0,
|
|
186
|
-
class: "as-td-select",
|
|
187
|
-
role: "gridcell"
|
|
188
|
-
};
|
|
189
|
-
const _hoisted_6 = [
|
|
190
|
-
"tabindex",
|
|
191
|
-
"aria-label",
|
|
192
|
-
"title",
|
|
193
|
-
"aria-checked",
|
|
194
|
-
"aria-disabled",
|
|
195
|
-
"onKeydown"
|
|
196
|
-
];
|
|
197
|
-
const _hoisted_7 = {
|
|
198
|
-
key: 0,
|
|
199
|
-
class: "as-table-checkbox-tick",
|
|
200
|
-
"aria-hidden": "true"
|
|
201
|
-
};
|
|
202
|
-
const _hoisted_8 = {
|
|
203
185
|
key: 0,
|
|
204
186
|
role: "gridcell"
|
|
205
187
|
};
|
|
@@ -245,6 +227,11 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
245
227
|
required: false,
|
|
246
228
|
default: "none"
|
|
247
229
|
},
|
|
230
|
+
selectOn: {
|
|
231
|
+
type: String,
|
|
232
|
+
required: false,
|
|
233
|
+
default: "row"
|
|
234
|
+
},
|
|
248
235
|
enterAction: {
|
|
249
236
|
type: String,
|
|
250
237
|
required: false
|
|
@@ -282,9 +269,35 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
282
269
|
} : c));
|
|
283
270
|
const hasValue = computed(() => props.select !== "none");
|
|
284
271
|
const hasActiveFilters = computed(() => filledFilterCount(state.filters.value) > 0);
|
|
272
|
+
/**
|
|
273
|
+
* Every row of the dataset, in order — or `null` while any is not loaded.
|
|
274
|
+
* The header checkbox exists only when this is known: acting on whatever
|
|
275
|
+
* blocks happen to be cached would pick rows the user never saw, so a
|
|
276
|
+
* partially loaded dataset gets no select-all control at all.
|
|
277
|
+
*/
|
|
278
|
+
const allLoadedRows = computed(() => {
|
|
279
|
+
if (props.select !== "multi") return null;
|
|
280
|
+
const total = state.totalCount.value;
|
|
281
|
+
const cache = state.windowCache.value;
|
|
282
|
+
if (total <= 0 || cache.size < total) return null;
|
|
283
|
+
const rows = [];
|
|
284
|
+
for (let i = 0; i < total; i++) {
|
|
285
|
+
const row = cache.get(i);
|
|
286
|
+
if (row === void 0) return null;
|
|
287
|
+
rows.push(row);
|
|
288
|
+
}
|
|
289
|
+
return rows;
|
|
290
|
+
});
|
|
291
|
+
const eligibleLoadedPks = computed(() => {
|
|
292
|
+
const rows = allLoadedRows.value;
|
|
293
|
+
return rows ? new Set(rowsToPks(state.selectableRows(rows), state.rowValueFn)) : null;
|
|
294
|
+
});
|
|
285
295
|
const selectAllState = computed(() => {
|
|
286
|
-
|
|
287
|
-
return
|
|
296
|
+
const eligible = eligibleLoadedPks.value;
|
|
297
|
+
if (!eligible) return void 0;
|
|
298
|
+
let selected = 0;
|
|
299
|
+
for (const pk of state.selectedRows.value) if (eligible.has(pk)) selected++;
|
|
300
|
+
return toSelectAllState(selected, eligible.size);
|
|
288
301
|
});
|
|
289
302
|
const cellSlotFlags = computed(() => {
|
|
290
303
|
const out = {};
|
|
@@ -294,11 +307,6 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
294
307
|
const rowStyle = computed(() => ({ height: `${props.rowHeight}px` }));
|
|
295
308
|
/** Shared "selectable" verdict — frozen, so a hookless pool allocates nothing. */
|
|
296
309
|
const SELECTABLE = Object.freeze({ ok: true });
|
|
297
|
-
/** Accessible name for a row's selection control, carrying the disabled reason. */
|
|
298
|
-
function selectLabel(verdict) {
|
|
299
|
-
if (verdict.ok) return "Select row";
|
|
300
|
-
return verdict.reason ? `Select row, ${verdict.reason}` : "Select row, not selectable";
|
|
301
|
-
}
|
|
302
310
|
const visibleSlots = computed(() => {
|
|
303
311
|
const viewport = state.viewportRowCount.value;
|
|
304
312
|
if (viewport <= 0) return [];
|
|
@@ -332,6 +340,7 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
332
340
|
}
|
|
333
341
|
out.push({
|
|
334
342
|
s,
|
|
343
|
+
abs,
|
|
335
344
|
row,
|
|
336
345
|
pk,
|
|
337
346
|
errored: row === void 0 && state.errorAt(abs) !== null,
|
|
@@ -375,9 +384,6 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
375
384
|
mode: props.select
|
|
376
385
|
});
|
|
377
386
|
}
|
|
378
|
-
function onSelectCellKeydown(event, absIdx) {
|
|
379
|
-
onSelectControlKeydown(event, absIdx, props.select, state);
|
|
380
|
-
}
|
|
381
387
|
watch([() => state.activeIndex.value, () => state.viewportRowCount.value], ([idx, viewport]) => {
|
|
382
388
|
if (idx < 0) return;
|
|
383
389
|
if (viewport <= 0) return;
|
|
@@ -407,7 +413,7 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
407
413
|
function onRowClick(row, event, absIdx) {
|
|
408
414
|
emit("row-click", row, event);
|
|
409
415
|
state.setActive(absIdx);
|
|
410
|
-
if (props.select === "none") return;
|
|
416
|
+
if (props.select === "none" || props.selectOn === "control") return;
|
|
411
417
|
state.toggleActiveSelection(props.select);
|
|
412
418
|
}
|
|
413
419
|
function onRowDblClick(row, event, absIdx) {
|
|
@@ -415,13 +421,9 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
415
421
|
state.setActive(absIdx);
|
|
416
422
|
state.requestMainAction(event);
|
|
417
423
|
}
|
|
418
|
-
function
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
return;
|
|
422
|
-
}
|
|
423
|
-
const entries = [...state.windowCache.value.entries()].toSorted((a, b) => a[0] - b[0]);
|
|
424
|
-
state.selectAll(entries.map((e) => e[1]), (i) => entries[i][0]);
|
|
424
|
+
function onToggleAll() {
|
|
425
|
+
const rows = allLoadedRows.value;
|
|
426
|
+
if (rows) state.toggleAll(rows);
|
|
425
427
|
}
|
|
426
428
|
const { onSort, onHide, onFilter, onFiltersOff, onResetWidth, onReorder, onClearFilters } = useTableColumnHandlers(state);
|
|
427
429
|
const wrapperRef = ref(null);
|
|
@@ -496,6 +498,7 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
496
498
|
"column-min-width": __props.columnMinWidth,
|
|
497
499
|
"has-select-column": hasValue.value,
|
|
498
500
|
"select-all-state": selectAllState.value,
|
|
501
|
+
"selected-count": unref(state).selectedCount.value,
|
|
499
502
|
"with-filler": true,
|
|
500
503
|
"enable-auto-fit": true,
|
|
501
504
|
"aria-rowindex": 1,
|
|
@@ -506,8 +509,11 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
506
509
|
onResetWidth: unref(onResetWidth),
|
|
507
510
|
onReorder: unref(onReorder),
|
|
508
511
|
onResize: unref(state).setColumnWidth,
|
|
509
|
-
|
|
510
|
-
}, createSlots({
|
|
512
|
+
onToggleAll
|
|
513
|
+
}, createSlots({
|
|
514
|
+
"header-__select": withCtx((scope) => [renderSlot(_ctx.$slots, "header-__select", normalizeProps(guardReactiveProps(scope)))]),
|
|
515
|
+
_: 2
|
|
516
|
+
}, [renderList(columns.value, (col) => {
|
|
511
517
|
return {
|
|
512
518
|
name: `header-${col.path}`,
|
|
513
519
|
fn: withCtx((scope) => [renderSlot(_ctx.$slots, `header-${col.path}`, normalizeProps(guardReactiveProps(scope)))])
|
|
@@ -523,6 +529,7 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
523
529
|
"column-min-width",
|
|
524
530
|
"has-select-column",
|
|
525
531
|
"select-all-state",
|
|
532
|
+
"selected-count",
|
|
526
533
|
"onSort",
|
|
527
534
|
"onHide",
|
|
528
535
|
"onFilter",
|
|
@@ -547,35 +554,42 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
547
554
|
key: 0,
|
|
548
555
|
ref_for: true
|
|
549
556
|
}, slot.attrs, {
|
|
550
|
-
id: unref(state).rowId(
|
|
557
|
+
id: unref(state).rowId(slot.abs),
|
|
551
558
|
class: [
|
|
552
559
|
"as-window-data-row",
|
|
553
|
-
{ "as-table-row-active": unref(state).activeIndex.value ===
|
|
560
|
+
{ "as-table-row-active": unref(state).activeIndex.value === slot.abs },
|
|
554
561
|
slot.cls
|
|
555
562
|
],
|
|
556
563
|
"data-selectable": slot.selectable.ok ? void 0 : "false",
|
|
557
564
|
role: "row",
|
|
558
|
-
"aria-rowindex":
|
|
565
|
+
"aria-rowindex": slot.abs + 2,
|
|
559
566
|
"aria-selected": slot.ariaSelected,
|
|
560
567
|
style: rowStyle.value,
|
|
561
|
-
onClick: ($event) => onRowClick(slot.row, $event,
|
|
562
|
-
onDblclick: ($event) => onRowDblClick(slot.row, $event,
|
|
568
|
+
onClick: ($event) => onRowClick(slot.row, $event, slot.abs),
|
|
569
|
+
onDblclick: ($event) => onRowDblClick(slot.row, $event, slot.abs)
|
|
563
570
|
}), [
|
|
564
|
-
hasValue.value ? (openBlock(),
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
"
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
}
|
|
571
|
+
hasValue.value ? (openBlock(), createBlock(as_select_cell_default, {
|
|
572
|
+
key: 0,
|
|
573
|
+
row: slot.row,
|
|
574
|
+
index: slot.abs,
|
|
575
|
+
selected: slot.selected,
|
|
576
|
+
verdict: slot.selectable,
|
|
577
|
+
select: __props.select,
|
|
578
|
+
"select-on": __props.selectOn
|
|
579
|
+
}, createSlots({ _: 2 }, [unref(slots)["cell-__select"] ? {
|
|
580
|
+
name: "default",
|
|
581
|
+
fn: withCtx((scope) => [renderSlot(_ctx.$slots, "cell-__select", mergeProps({ ref_for: true }, scope))]),
|
|
582
|
+
key: "0"
|
|
583
|
+
} : void 0]), 1032, [
|
|
584
|
+
"row",
|
|
585
|
+
"index",
|
|
586
|
+
"selected",
|
|
587
|
+
"verdict",
|
|
588
|
+
"select",
|
|
589
|
+
"select-on"
|
|
590
|
+
])) : createCommentVNode("v-if", true),
|
|
577
591
|
unref(hasAnyCellBindings) ? (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(columns.value, (col) => {
|
|
578
|
-
return openBlock(), createElementBlock(Fragment, { key: col.path }, [(openBlock(true), createElementBlock(Fragment, null, renderList([unref(cellResolver)(col, slot.row,
|
|
592
|
+
return openBlock(), createElementBlock(Fragment, { key: col.path }, [(openBlock(true), createElementBlock(Fragment, null, renderList([unref(cellResolver)(col, slot.row, slot.abs)], (bindings) => {
|
|
579
593
|
return openBlock(), createElementBlock(Fragment, { key: 0 }, [cellSlotFlags.value[col.path] ? (openBlock(), createElementBlock("td", mergeProps({
|
|
580
594
|
key: 0,
|
|
581
595
|
role: "gridcell"
|
|
@@ -591,7 +605,7 @@ var as_window_table_base_default = /* @__PURE__ */ defineComponent({
|
|
|
591
605
|
}, { ref_for: true }, bindings), null, 16, ["row", "column"]))], 64);
|
|
592
606
|
}), 128))], 64);
|
|
593
607
|
}), 128)) : (openBlock(true), createElementBlock(Fragment, { key: 2 }, renderList(columns.value, (col) => {
|
|
594
|
-
return openBlock(), createElementBlock(Fragment, { key: col.path }, [cellSlotFlags.value[col.path] ? (openBlock(), createElementBlock("td",
|
|
608
|
+
return openBlock(), createElementBlock(Fragment, { key: col.path }, [cellSlotFlags.value[col.path] ? (openBlock(), createElementBlock("td", _hoisted_5, [renderSlot(_ctx.$slots, `cell-${col.path}`, {
|
|
595
609
|
row: slot.row,
|
|
596
610
|
value: unref(getCellValue)(slot.row, col.path),
|
|
597
611
|
column: col
|
|
@@ -683,6 +697,11 @@ var as_window_table_default = /* @__PURE__ */ defineComponent({
|
|
|
683
697
|
required: false,
|
|
684
698
|
default: "none"
|
|
685
699
|
},
|
|
700
|
+
selectOn: {
|
|
701
|
+
type: String,
|
|
702
|
+
required: false,
|
|
703
|
+
default: "row"
|
|
704
|
+
},
|
|
686
705
|
rows: {
|
|
687
706
|
type: Number,
|
|
688
707
|
required: false
|
|
@@ -802,6 +821,7 @@ var as_window_table_default = /* @__PURE__ */ defineComponent({
|
|
|
802
821
|
resizable: __props.resizable,
|
|
803
822
|
"column-min-width": __props.columnMinWidth,
|
|
804
823
|
select: __props.select,
|
|
824
|
+
"select-on": __props.selectOn,
|
|
805
825
|
headless: __props.headless,
|
|
806
826
|
"enter-action": __props.enterAction,
|
|
807
827
|
"row-class": __props.rowClass,
|
|
@@ -823,6 +843,7 @@ var as_window_table_default = /* @__PURE__ */ defineComponent({
|
|
|
823
843
|
"resizable",
|
|
824
844
|
"column-min-width",
|
|
825
845
|
"select",
|
|
846
|
+
"select-on",
|
|
826
847
|
"headless",
|
|
827
848
|
"enter-action",
|
|
828
849
|
"row-class",
|