@agile-team/mach-table-vue 0.19.1 → 0.24.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 +37 -111
- package/dist/MachTable-AXAVVKW5.cjs +1 -0
- package/dist/MachTable-PX2BHIPK.js +1 -0
- package/dist/{MachTable-DH0offab.d.cts → MachTable-jS92BIXm.d.cts} +3 -6
- package/dist/{MachTable-DH0offab.d.ts → MachTable-jS92BIXm.d.ts} +3 -6
- package/dist/adapters.cjs +1 -0
- package/dist/adapters.d.cts +53 -0
- package/dist/adapters.d.ts +53 -0
- package/dist/adapters.js +1 -0
- package/dist/async.cjs +1 -2
- package/dist/async.d.cts +4 -3
- package/dist/async.d.ts +4 -3
- package/dist/async.js +1 -2
- package/dist/chunk-3LIWCBSP.cjs +1 -0
- package/dist/chunk-7LXDVLDD.cjs +1 -0
- package/dist/chunk-7MRR4IDI.js +1 -0
- package/dist/chunk-CVSAWAOZ.js +1 -0
- package/dist/chunk-EGEQGM3D.cjs +1 -0
- package/dist/chunk-IS6G3WLH.js +1 -0
- package/dist/chunk-OFITMI6J.cjs +1 -0
- package/dist/chunk-SQVY5G55.js +1 -0
- package/dist/chunk-XECIDGIZ.cjs +1 -0
- package/dist/chunk-YTEW56VQ.js +1 -0
- package/dist/editors.cjs +0 -1
- package/dist/editors.js +0 -1
- package/dist/globalRegistration-bUvkfBzA.d.ts +13 -0
- package/dist/globalRegistration-oxdZVSgD.d.cts +13 -0
- package/dist/index.cjs +1 -2
- package/dist/index.d.cts +8 -60
- package/dist/index.d.ts +8 -60
- package/dist/index.js +1 -2
- package/dist/ui.cjs +1 -2
- package/dist/ui.d.cts +1 -1
- package/dist/ui.d.ts +1 -1
- package/dist/ui.js +1 -2
- package/dist/useMachTable-DXGZxgIJ.d.ts +12 -0
- package/dist/useMachTable-YH4Xj6dS.d.cts +12 -0
- package/dist/worker.cjs +0 -1
- package/dist/worker.js +0 -1
- package/dist/workflows.cjs +1 -2
- package/dist/workflows.d.cts +139 -4
- package/dist/workflows.d.ts +139 -4
- package/dist/workflows.js +1 -2
- package/package.json +13 -3
- package/dist/MachTable-7H7Z4ACQ.cjs +0 -2
- package/dist/MachTable-7H7Z4ACQ.cjs.map +0 -1
- package/dist/MachTable-CIBYH7LC.js +0 -2
- package/dist/MachTable-CIBYH7LC.js.map +0 -1
- package/dist/async.cjs.map +0 -1
- package/dist/async.js.map +0 -1
- package/dist/chunk-BW56NYGC.cjs +0 -2
- package/dist/chunk-BW56NYGC.cjs.map +0 -1
- package/dist/chunk-HBEB7H4E.js +0 -2
- package/dist/chunk-HBEB7H4E.js.map +0 -1
- package/dist/chunk-IZZT6PAH.js +0 -2
- package/dist/chunk-IZZT6PAH.js.map +0 -1
- package/dist/chunk-MCLI6WUN.cjs +0 -2
- package/dist/chunk-MCLI6WUN.cjs.map +0 -1
- package/dist/chunk-P7PVLT5L.js +0 -2
- package/dist/chunk-P7PVLT5L.js.map +0 -1
- package/dist/chunk-PPNQWKVV.cjs +0 -2
- package/dist/chunk-PPNQWKVV.cjs.map +0 -1
- package/dist/chunk-SUSVK2OW.js +0 -2
- package/dist/chunk-SUSVK2OW.js.map +0 -1
- package/dist/chunk-UST6E3TU.cjs +0 -2
- package/dist/chunk-UST6E3TU.cjs.map +0 -1
- package/dist/editors.cjs.map +0 -1
- package/dist/editors.js.map +0 -1
- package/dist/globalRegistration-BhAR-B5k.d.cts +0 -19
- package/dist/globalRegistration-DTWLNxPI.d.ts +0 -19
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/ui.cjs.map +0 -1
- package/dist/ui.js.map +0 -1
- package/dist/worker.cjs.map +0 -1
- package/dist/worker.js.map +0 -1
- package/dist/workflows-CyXKgNRx.d.ts +0 -145
- package/dist/workflows-DEOJrSuj.d.cts +0 -145
- package/dist/workflows.cjs.map +0 -1
- package/dist/workflows.js.map +0 -1
- package/dist/{MachTableToolbar-CDkTtitl.d.cts → MachTableToolbar-BUFcnsF4.d.cts} +1 -1
- package/dist/{MachTableToolbar-CDkTtitl.d.ts → MachTableToolbar-BUFcnsF4.d.ts} +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,72 +1,20 @@
|
|
|
1
|
-
export { a as MachTable, M as MachTableVueComponent, b as MachTableVueExposed, c as MachTableVueProps
|
|
2
|
-
import { App,
|
|
3
|
-
import { M as MachTablePluginOptions } from './globalRegistration-
|
|
4
|
-
|
|
1
|
+
export { a as MachTable, M as MachTableVueComponent, b as MachTableVueExposed, c as MachTableVueProps } from './MachTable-jS92BIXm.cjs';
|
|
2
|
+
import { App, InjectionKey, Ref } from 'vue';
|
|
3
|
+
import { M as MachTablePluginOptions } from './globalRegistration-oxdZVSgD.cjs';
|
|
4
|
+
export { U as UseMachTableReturn, u as useMachTable } from './useMachTable-YH4Xj6dS.cjs';
|
|
5
|
+
import { MachTableRuntimeConfig } from '@agile-team/mach-table';
|
|
5
6
|
export * from '@agile-team/mach-table';
|
|
6
|
-
|
|
7
|
-
import './MachTableToolbar-
|
|
7
|
+
import { ResolvedMachTableConfig } from '@agile-team/mach-table/adapter';
|
|
8
|
+
import './MachTableToolbar-BUFcnsF4.cjs';
|
|
8
9
|
|
|
9
10
|
declare const MachTablePlugin: {
|
|
10
11
|
install(app: App, options?: MachTablePluginOptions): void;
|
|
11
12
|
};
|
|
12
13
|
|
|
13
|
-
type VueCellRendererProps<TData = any, TValue = any> = CellRendererParams<TData, TValue>;
|
|
14
|
-
declare function vueCellRenderer<TData = any, TValue = any>(component: Component, options?: {
|
|
15
|
-
appContext?: AppContext;
|
|
16
|
-
}): CellRendererFn;
|
|
17
|
-
declare function vueDetailRenderer<TData = any>(component: Component, options?: {
|
|
18
|
-
appContext?: AppContext;
|
|
19
|
-
}): (params: DetailRowRendererParams<TData>) => {
|
|
20
|
-
el: HTMLElement;
|
|
21
|
-
destroy?: () => void;
|
|
22
|
-
};
|
|
23
|
-
/** Internal/public bridge used by automatic `#cell-*` Vue slots. */
|
|
24
|
-
declare function vueCellSlotRenderer<TData = any, TValue = any>(slot: Slot, options?: {
|
|
25
|
-
appContext?: AppContext;
|
|
26
|
-
}): CellRendererFn;
|
|
27
|
-
declare function vueHeaderSlotRenderer<TData = any>(slot: Slot, options?: {
|
|
28
|
-
appContext?: AppContext;
|
|
29
|
-
}): (params: HeaderComponentParams<TData>) => ICellRendererResult;
|
|
30
|
-
interface VueCellEditorSlotProps<TData = any, TValue = any> extends CellEditorParams<TData, TValue> {
|
|
31
|
-
value: TValue;
|
|
32
|
-
setValue(value: TValue): void;
|
|
33
|
-
commit(): void;
|
|
34
|
-
cancel(): void;
|
|
35
|
-
}
|
|
36
|
-
declare function vueCellEditorSlot<TData = any, TValue = any>(slot: Slot, options?: {
|
|
37
|
-
appContext?: AppContext;
|
|
38
|
-
}): CellEditorFactory;
|
|
39
|
-
declare function vueDetailSlotRenderer<TData = any>(slot: Slot, options?: {
|
|
40
|
-
appContext?: AppContext;
|
|
41
|
-
}): (params: DetailRowRendererParams<TData>) => ICellRendererResult;
|
|
42
|
-
declare function vueOverlaySlot(slot: Slot, options?: {
|
|
43
|
-
appContext?: AppContext;
|
|
44
|
-
}): OverlayTemplate;
|
|
45
|
-
|
|
46
|
-
interface MachTableVueSlots<TData = any> {
|
|
47
|
-
cell?: (props: CellRendererParams<TData>) => any;
|
|
48
|
-
header?: (props: HeaderComponentParams<TData>) => any;
|
|
49
|
-
editor?: (props: VueCellEditorSlotProps<TData>) => any;
|
|
50
|
-
detail?: (props: DetailRowRendererParams<TData>) => any;
|
|
51
|
-
loading?: () => any;
|
|
52
|
-
empty?: () => any;
|
|
53
|
-
actions?: (props: CellRendererParams<TData>) => any;
|
|
54
|
-
[name: `cell-${string}`]: ((props: CellRendererParams<TData>) => any) | undefined;
|
|
55
|
-
[name: `header-${string}`]: ((props: HeaderComponentParams<TData>) => any) | undefined;
|
|
56
|
-
[name: `editor-${string}`]: ((props: CellEditorParams<TData>) => any) | undefined;
|
|
57
|
-
}
|
|
58
|
-
declare function applyVueSlots<TData>(options: GridOptions<TData>, slots: Slots, appContext?: AppContext): GridOptions<TData>;
|
|
59
|
-
/** Creates a stable enhancer so unrelated reactive prop updates do not rebuild columns. */
|
|
60
|
-
declare function createVueSlotEnhancer<TData>(slots: Slots, appContext?: AppContext): (options: GridOptions<TData>) => GridOptions<TData>;
|
|
61
|
-
|
|
62
|
-
declare const MACH_TABLE_DEFAULTS_KEY: InjectionKey<Partial<GridOptions<any>>>;
|
|
63
14
|
declare const MACH_TABLE_CONFIG_KEY: InjectionKey<Readonly<Ref<ResolvedMachTableConfig>>>;
|
|
64
15
|
type MachTableConfigSource = MachTableRuntimeConfig | Readonly<Ref<MachTableRuntimeConfig>> | (() => MachTableRuntimeConfig);
|
|
65
16
|
/** Provides route/layout-scoped defaults, presets and diagnostics reactively. */
|
|
66
17
|
declare function provideMachTableConfig(source: MachTableConfigSource): Readonly<Ref<ResolvedMachTableConfig>>;
|
|
67
|
-
/** Provides route/layout-scoped defaults. Per-table props always take precedence. */
|
|
68
|
-
declare function provideMachTableDefaults<TData>(defaults: Partial<GridOptions<TData>> | Readonly<Ref<Partial<GridOptions<TData>>>> | (() => Partial<GridOptions<TData>>)): void;
|
|
69
|
-
declare function useMachTableDefaults<TData>(): Partial<GridOptions<TData>>;
|
|
70
18
|
declare function useMachTableConfig(): Readonly<Ref<ResolvedMachTableConfig>>;
|
|
71
19
|
|
|
72
|
-
export { MACH_TABLE_CONFIG_KEY,
|
|
20
|
+
export { MACH_TABLE_CONFIG_KEY, type MachTableConfigSource, MachTablePlugin, MachTablePluginOptions, MachTablePlugin as default, provideMachTableConfig, useMachTableConfig };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,72 +1,20 @@
|
|
|
1
|
-
export { a as MachTable, M as MachTableVueComponent, b as MachTableVueExposed, c as MachTableVueProps
|
|
2
|
-
import { App,
|
|
3
|
-
import { M as MachTablePluginOptions } from './globalRegistration-
|
|
4
|
-
|
|
1
|
+
export { a as MachTable, M as MachTableVueComponent, b as MachTableVueExposed, c as MachTableVueProps } from './MachTable-jS92BIXm.js';
|
|
2
|
+
import { App, InjectionKey, Ref } from 'vue';
|
|
3
|
+
import { M as MachTablePluginOptions } from './globalRegistration-bUvkfBzA.js';
|
|
4
|
+
export { U as UseMachTableReturn, u as useMachTable } from './useMachTable-DXGZxgIJ.js';
|
|
5
|
+
import { MachTableRuntimeConfig } from '@agile-team/mach-table';
|
|
5
6
|
export * from '@agile-team/mach-table';
|
|
6
|
-
|
|
7
|
-
import './MachTableToolbar-
|
|
7
|
+
import { ResolvedMachTableConfig } from '@agile-team/mach-table/adapter';
|
|
8
|
+
import './MachTableToolbar-BUFcnsF4.js';
|
|
8
9
|
|
|
9
10
|
declare const MachTablePlugin: {
|
|
10
11
|
install(app: App, options?: MachTablePluginOptions): void;
|
|
11
12
|
};
|
|
12
13
|
|
|
13
|
-
type VueCellRendererProps<TData = any, TValue = any> = CellRendererParams<TData, TValue>;
|
|
14
|
-
declare function vueCellRenderer<TData = any, TValue = any>(component: Component, options?: {
|
|
15
|
-
appContext?: AppContext;
|
|
16
|
-
}): CellRendererFn;
|
|
17
|
-
declare function vueDetailRenderer<TData = any>(component: Component, options?: {
|
|
18
|
-
appContext?: AppContext;
|
|
19
|
-
}): (params: DetailRowRendererParams<TData>) => {
|
|
20
|
-
el: HTMLElement;
|
|
21
|
-
destroy?: () => void;
|
|
22
|
-
};
|
|
23
|
-
/** Internal/public bridge used by automatic `#cell-*` Vue slots. */
|
|
24
|
-
declare function vueCellSlotRenderer<TData = any, TValue = any>(slot: Slot, options?: {
|
|
25
|
-
appContext?: AppContext;
|
|
26
|
-
}): CellRendererFn;
|
|
27
|
-
declare function vueHeaderSlotRenderer<TData = any>(slot: Slot, options?: {
|
|
28
|
-
appContext?: AppContext;
|
|
29
|
-
}): (params: HeaderComponentParams<TData>) => ICellRendererResult;
|
|
30
|
-
interface VueCellEditorSlotProps<TData = any, TValue = any> extends CellEditorParams<TData, TValue> {
|
|
31
|
-
value: TValue;
|
|
32
|
-
setValue(value: TValue): void;
|
|
33
|
-
commit(): void;
|
|
34
|
-
cancel(): void;
|
|
35
|
-
}
|
|
36
|
-
declare function vueCellEditorSlot<TData = any, TValue = any>(slot: Slot, options?: {
|
|
37
|
-
appContext?: AppContext;
|
|
38
|
-
}): CellEditorFactory;
|
|
39
|
-
declare function vueDetailSlotRenderer<TData = any>(slot: Slot, options?: {
|
|
40
|
-
appContext?: AppContext;
|
|
41
|
-
}): (params: DetailRowRendererParams<TData>) => ICellRendererResult;
|
|
42
|
-
declare function vueOverlaySlot(slot: Slot, options?: {
|
|
43
|
-
appContext?: AppContext;
|
|
44
|
-
}): OverlayTemplate;
|
|
45
|
-
|
|
46
|
-
interface MachTableVueSlots<TData = any> {
|
|
47
|
-
cell?: (props: CellRendererParams<TData>) => any;
|
|
48
|
-
header?: (props: HeaderComponentParams<TData>) => any;
|
|
49
|
-
editor?: (props: VueCellEditorSlotProps<TData>) => any;
|
|
50
|
-
detail?: (props: DetailRowRendererParams<TData>) => any;
|
|
51
|
-
loading?: () => any;
|
|
52
|
-
empty?: () => any;
|
|
53
|
-
actions?: (props: CellRendererParams<TData>) => any;
|
|
54
|
-
[name: `cell-${string}`]: ((props: CellRendererParams<TData>) => any) | undefined;
|
|
55
|
-
[name: `header-${string}`]: ((props: HeaderComponentParams<TData>) => any) | undefined;
|
|
56
|
-
[name: `editor-${string}`]: ((props: CellEditorParams<TData>) => any) | undefined;
|
|
57
|
-
}
|
|
58
|
-
declare function applyVueSlots<TData>(options: GridOptions<TData>, slots: Slots, appContext?: AppContext): GridOptions<TData>;
|
|
59
|
-
/** Creates a stable enhancer so unrelated reactive prop updates do not rebuild columns. */
|
|
60
|
-
declare function createVueSlotEnhancer<TData>(slots: Slots, appContext?: AppContext): (options: GridOptions<TData>) => GridOptions<TData>;
|
|
61
|
-
|
|
62
|
-
declare const MACH_TABLE_DEFAULTS_KEY: InjectionKey<Partial<GridOptions<any>>>;
|
|
63
14
|
declare const MACH_TABLE_CONFIG_KEY: InjectionKey<Readonly<Ref<ResolvedMachTableConfig>>>;
|
|
64
15
|
type MachTableConfigSource = MachTableRuntimeConfig | Readonly<Ref<MachTableRuntimeConfig>> | (() => MachTableRuntimeConfig);
|
|
65
16
|
/** Provides route/layout-scoped defaults, presets and diagnostics reactively. */
|
|
66
17
|
declare function provideMachTableConfig(source: MachTableConfigSource): Readonly<Ref<ResolvedMachTableConfig>>;
|
|
67
|
-
/** Provides route/layout-scoped defaults. Per-table props always take precedence. */
|
|
68
|
-
declare function provideMachTableDefaults<TData>(defaults: Partial<GridOptions<TData>> | Readonly<Ref<Partial<GridOptions<TData>>>> | (() => Partial<GridOptions<TData>>)): void;
|
|
69
|
-
declare function useMachTableDefaults<TData>(): Partial<GridOptions<TData>>;
|
|
70
18
|
declare function useMachTableConfig(): Readonly<Ref<ResolvedMachTableConfig>>;
|
|
71
19
|
|
|
72
|
-
export { MACH_TABLE_CONFIG_KEY,
|
|
20
|
+
export { MACH_TABLE_CONFIG_KEY, type MachTableConfigSource, MachTablePlugin, MachTablePluginOptions, MachTablePlugin as default, provideMachTableConfig, useMachTableConfig };
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import{a
|
|
2
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
import{a}from"./chunk-CVSAWAOZ.js";import{a as b}from"./chunk-YTEW56VQ.js";import{a as e}from"./chunk-IS6G3WLH.js";import{b as t,d as l,e as i}from"./chunk-7MRR4IDI.js";import"./chunk-SQVY5G55.js";var o={install(r,p){a(r,e,p)}};export*from"@agile-team/mach-table";var m=o;export{t as MACH_TABLE_CONFIG_KEY,e as MachTable,o as MachTablePlugin,m as default,l as provideMachTableConfig,b as useMachTable,i as useMachTableConfig};
|
package/dist/ui.cjs
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _vue = require('vue');var b={search:!0,refresh:!0,columns:!0,density:!0,export:!0,undoRedo:!1,fullscreen:!1},
|
|
2
|
-
//# sourceMappingURL=ui.cjs.map
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _vue = require('vue');var b={search:!0,refresh:!0,columns:!0,density:!0,export:!0,undoRedo:!1,fullscreen:!1},r= exports.MachTableToolbar =_vue.defineComponent.call(void 0, {name:"MachTableToolbar",props:{api:{type:Object,default:null},commands:{type:Object,default:null},modelValue:{type:String,default:""},loading:{type:Boolean,default:!1},selectedCount:{type:Number,default:0},searchPlaceholder:{type:String,default:"\u641C\u7D22\u5F53\u524D\u7ED3\u679C"},exportFilename:{type:String,default:"mach-table.csv"},features:{type:Object,default:()=>({})}},emits:["update:modelValue","refresh","clearSelection"],setup(e,{emit:d,slots:s}){let c=a=>_nullishCoalesce(e.features[a], () => (b[a])),t=(a,...o)=>{let l=e.commands?Reflect.get(e.commands,a):void 0;return typeof l=="function"&&e.commands?Reflect.apply(l,e.commands,o):void 0},i=(a,o,l,h=!1)=>_vue.h.call(void 0, "button",{type:"button",class:"mach-toolbar__button",title:a,"aria-label":a,disabled:h,onClick:l},o),u=()=>{let a=[..._nullishCoalesce(_optionalChain([s, 'access', _ => _.start, 'optionalCall', _2 => _2()]), () => ([]))];return c("search")&&a.push(_vue.h.call(void 0, "label",{class:"mach-toolbar__search"},[_vue.h.call(void 0, "span",{class:"mach-sr-only"},e.searchPlaceholder),_vue.h.call(void 0, "span",{"aria-hidden":"true"},"\u2315"),_vue.h.call(void 0, "input",{value:e.modelValue,type:"search",placeholder:e.searchPlaceholder,onInput:o=>{let l=o.target.value;d("update:modelValue",l),e.commands?t("search",l||null):_optionalChain([e, 'access', _3 => _3.api, 'optionalAccess', _4 => _4.filtering, 'access', _5 => _5.setQuickText, 'call', _6 => _6(l||null)])}})])),c("refresh")&&a.push(i("\u5237\u65B0",e.loading?"\u2026":"\u21BB",()=>{d("refresh"),e.commands?t("refresh"):_optionalChain([e, 'access', _7 => _7.api, 'optionalAccess', _8 => _8.rows, 'access', _9 => _9.isRemote, 'call', _10 => _10()])?e.api.rows.reload():_optionalChain([e, 'access', _11 => _11.api, 'optionalAccess', _12 => _12.view, 'access', _13 => _13.refreshCells, 'call', _14 => _14()])},e.loading)),c("columns")&&a.push(i("\u5217\u8BBE\u7F6E","\u2637",o=>{let l=o.currentTarget;l instanceof HTMLElement&&(e.commands?t("openColumns",l):_optionalChain([e, 'access', _15 => _15.api, 'optionalAccess', _16 => _16.columns, 'access', _17 => _17.openWorkbench, 'call', _18 => _18(l)]))})),c("density")&&a.push(_vue.h.call(void 0, "select",{class:"mach-toolbar__select",value:_nullishCoalesce(_optionalChain([e, 'access', _19 => _19.api, 'optionalAccess', _20 => _20.getOption, 'call', _21 => _21("size")]), () => ("normal")),"aria-label":"\u8868\u683C\u5BC6\u5EA6",onChange:o=>{let l=o.target.value;e.commands?t("setDensity",l):_optionalChain([e, 'access', _22 => _22.api, 'optionalAccess', _23 => _23.updateOptions, 'call', _24 => _24({size:l})])}},[_vue.h.call(void 0, "option",{value:"compact"},"\u7D27\u51D1"),_vue.h.call(void 0, "option",{value:"normal"},"\u6807\u51C6"),_vue.h.call(void 0, "option",{value:"large"},"\u5BBD\u677E")])),a.push(..._nullishCoalesce(_optionalChain([s, 'access', _25 => _25.default, 'optionalCall', _26 => _26()]), () => ([]))),_vue.h.call(void 0, "div",{class:"mach-toolbar__main"},a)},m=()=>{let a=[];return e.selectedCount>0&&a.push(_vue.h.call(void 0, "button",{type:"button",class:"mach-toolbar__selection",onClick:()=>d("clearSelection")},`\u5DF2\u9009 ${e.selectedCount} \u9879 \xD7`)),c("undoRedo")&&(a.push(i("\u64A4\u9500","\u21B6",()=>{e.commands?t("undo"):_optionalChain([e, 'access', _27 => _27.api, 'optionalAccess', _28 => _28.editing, 'access', _29 => _29.undo, 'call', _30 => _30()])},e.commands?!e.commands.canUndo():!_optionalChain([e, 'access', _31 => _31.api, 'optionalAccess', _32 => _32.editing, 'access', _33 => _33.canUndo, 'call', _34 => _34()]))),a.push(i("\u91CD\u505A","\u21B7",()=>{e.commands?t("redo"):_optionalChain([e, 'access', _35 => _35.api, 'optionalAccess', _36 => _36.editing, 'access', _37 => _37.redo, 'call', _38 => _38()])},e.commands?!e.commands.canRedo():!_optionalChain([e, 'access', _39 => _39.api, 'optionalAccess', _40 => _40.editing, 'access', _41 => _41.canRedo, 'call', _42 => _42()])))),c("export")&&a.push(i("\u5BFC\u51FA CSV","\u21E9",()=>{e.commands&&t("exportCsv",e.exportFilename)},!e.commands)),c("fullscreen")&&a.push(i("\u5168\u5C4F","\u26F6",()=>{t("toggleFullscreen")},!e.commands)),a.push(..._nullishCoalesce(_optionalChain([s, 'access', _43 => _43.end, 'optionalCall', _44 => _44()]), () => ([]))),_vue.h.call(void 0, "div",{class:"mach-toolbar__aside"},a)};return()=>_vue.h.call(void 0, "div",{class:"mach-toolbar",role:"toolbar","aria-label":"\u8868\u683C\u5DE5\u5177\u680F"},[u(),m()])}});var T={install(e){e.component("MachTableToolbar")||e.component("MachTableToolbar",r)}};var p=T;exports.MachTableToolbar = r; exports.MachTableUiPlugin = T; exports.default = p;
|
package/dist/ui.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { App } from 'vue';
|
|
2
|
-
export { M as MachTableToolbar, a as MachTableToolbarFeatures } from './MachTableToolbar-
|
|
2
|
+
export { M as MachTableToolbar, a as MachTableToolbarFeatures } from './MachTableToolbar-BUFcnsF4.cjs';
|
|
3
3
|
import '@agile-team/mach-table';
|
|
4
4
|
|
|
5
5
|
/** Optional UI layer. Install once only when the standard toolbar is desired. */
|
package/dist/ui.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { App } from 'vue';
|
|
2
|
-
export { M as MachTableToolbar, a as MachTableToolbarFeatures } from './MachTableToolbar-
|
|
2
|
+
export { M as MachTableToolbar, a as MachTableToolbarFeatures } from './MachTableToolbar-BUFcnsF4.js';
|
|
3
3
|
import '@agile-team/mach-table';
|
|
4
4
|
|
|
5
5
|
/** Optional UI layer. Install once only when the standard toolbar is desired. */
|
package/dist/ui.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import{defineComponent as f,h as
|
|
2
|
-
//# sourceMappingURL=ui.js.map
|
|
1
|
+
import{defineComponent as f,h as n}from"vue";var b={search:!0,refresh:!0,columns:!0,density:!0,export:!0,undoRedo:!1,fullscreen:!1},r=f({name:"MachTableToolbar",props:{api:{type:Object,default:null},commands:{type:Object,default:null},modelValue:{type:String,default:""},loading:{type:Boolean,default:!1},selectedCount:{type:Number,default:0},searchPlaceholder:{type:String,default:"\u641C\u7D22\u5F53\u524D\u7ED3\u679C"},exportFilename:{type:String,default:"mach-table.csv"},features:{type:Object,default:()=>({})}},emits:["update:modelValue","refresh","clearSelection"],setup(e,{emit:d,slots:s}){let c=a=>e.features[a]??b[a],t=(a,...o)=>{let l=e.commands?Reflect.get(e.commands,a):void 0;return typeof l=="function"&&e.commands?Reflect.apply(l,e.commands,o):void 0},i=(a,o,l,h=!1)=>n("button",{type:"button",class:"mach-toolbar__button",title:a,"aria-label":a,disabled:h,onClick:l},o),u=()=>{let a=[...s.start?.()??[]];return c("search")&&a.push(n("label",{class:"mach-toolbar__search"},[n("span",{class:"mach-sr-only"},e.searchPlaceholder),n("span",{"aria-hidden":"true"},"\u2315"),n("input",{value:e.modelValue,type:"search",placeholder:e.searchPlaceholder,onInput:o=>{let l=o.target.value;d("update:modelValue",l),e.commands?t("search",l||null):e.api?.filtering.setQuickText(l||null)}})])),c("refresh")&&a.push(i("\u5237\u65B0",e.loading?"\u2026":"\u21BB",()=>{d("refresh"),e.commands?t("refresh"):e.api?.rows.isRemote()?e.api.rows.reload():e.api?.view.refreshCells()},e.loading)),c("columns")&&a.push(i("\u5217\u8BBE\u7F6E","\u2637",o=>{let l=o.currentTarget;l instanceof HTMLElement&&(e.commands?t("openColumns",l):e.api?.columns.openWorkbench(l))})),c("density")&&a.push(n("select",{class:"mach-toolbar__select",value:e.api?.getOption("size")??"normal","aria-label":"\u8868\u683C\u5BC6\u5EA6",onChange:o=>{let l=o.target.value;e.commands?t("setDensity",l):e.api?.updateOptions({size:l})}},[n("option",{value:"compact"},"\u7D27\u51D1"),n("option",{value:"normal"},"\u6807\u51C6"),n("option",{value:"large"},"\u5BBD\u677E")])),a.push(...s.default?.()??[]),n("div",{class:"mach-toolbar__main"},a)},m=()=>{let a=[];return e.selectedCount>0&&a.push(n("button",{type:"button",class:"mach-toolbar__selection",onClick:()=>d("clearSelection")},`\u5DF2\u9009 ${e.selectedCount} \u9879 \xD7`)),c("undoRedo")&&(a.push(i("\u64A4\u9500","\u21B6",()=>{e.commands?t("undo"):e.api?.editing.undo()},e.commands?!e.commands.canUndo():!e.api?.editing.canUndo())),a.push(i("\u91CD\u505A","\u21B7",()=>{e.commands?t("redo"):e.api?.editing.redo()},e.commands?!e.commands.canRedo():!e.api?.editing.canRedo()))),c("export")&&a.push(i("\u5BFC\u51FA CSV","\u21E9",()=>{e.commands&&t("exportCsv",e.exportFilename)},!e.commands)),c("fullscreen")&&a.push(i("\u5168\u5C4F","\u26F6",()=>{t("toggleFullscreen")},!e.commands)),a.push(...s.end?.()??[]),n("div",{class:"mach-toolbar__aside"},a)};return()=>n("div",{class:"mach-toolbar",role:"toolbar","aria-label":"\u8868\u683C\u5DE5\u5177\u680F"},[u(),m()])}});var T={install(e){e.component("MachTableToolbar")||e.component("MachTableToolbar",r)}};var p=T;export{r as MachTableToolbar,T as MachTableUiPlugin,p as default};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Ref, ShallowRef } from 'vue';
|
|
2
|
+
import { GridApi } from '@agile-team/mach-table';
|
|
3
|
+
import { b as MachTableVueExposed } from './MachTable-jS92BIXm.js';
|
|
4
|
+
|
|
5
|
+
interface UseMachTableReturn<TData = any> {
|
|
6
|
+
ref: Ref<MachTableVueExposed<TData> | null>;
|
|
7
|
+
api: ShallowRef<GridApi<TData> | null>;
|
|
8
|
+
ready: ShallowRef<boolean>;
|
|
9
|
+
}
|
|
10
|
+
declare function useMachTable<TData = any>(): UseMachTableReturn<TData>;
|
|
11
|
+
|
|
12
|
+
export { type UseMachTableReturn as U, useMachTable as u };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Ref, ShallowRef } from 'vue';
|
|
2
|
+
import { GridApi } from '@agile-team/mach-table';
|
|
3
|
+
import { b as MachTableVueExposed } from './MachTable-jS92BIXm.cjs';
|
|
4
|
+
|
|
5
|
+
interface UseMachTableReturn<TData = any> {
|
|
6
|
+
ref: Ref<MachTableVueExposed<TData> | null>;
|
|
7
|
+
api: ShallowRef<GridApi<TData> | null>;
|
|
8
|
+
ready: ShallowRef<boolean>;
|
|
9
|
+
}
|
|
10
|
+
declare function useMachTable<TData = any>(): UseMachTableReturn<TData>;
|
|
11
|
+
|
|
12
|
+
export { type UseMachTableReturn as U, useMachTable as u };
|
package/dist/worker.cjs
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _createStarExport(obj) { Object.keys(obj) .filter((key) => key !== "default" && key !== "__esModule") .forEach((key) => { if (exports.hasOwnProperty(key)) { return; } Object.defineProperty(exports, key, {enumerable: true, configurable: true, get: () => obj[key]}); }); }var _worker = require('@agile-team/mach-table/worker'); _createStarExport(_worker);
|
|
2
|
-
//# sourceMappingURL=worker.cjs.map
|
package/dist/worker.js
CHANGED
package/dist/workflows.cjs
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkMCLI6WUNcjs = require('./chunk-MCLI6WUN.cjs');exports.useMachTableController = _chunkMCLI6WUNcjs.d; exports.useMachTableEditing = _chunkMCLI6WUNcjs.b; exports.useMachTableQuery = _chunkMCLI6WUNcjs.c;
|
|
2
|
-
//# sourceMappingURL=workflows.cjs.map
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkEGEQGM3Dcjs = require('./chunk-EGEQGM3D.cjs');var _vue = require('vue');var _machtable = require('@agile-team/mach-table');function j(a,n={}){let p=_vue.shallowRef.call(void 0, []),o=_vue.ref.call(void 0, []),d=_vue.ref.call(void 0, !1),h=_vue.shallowRef.call(void 0, null),f=_vue.shallowRef.call(void 0, null),b=_vue.computed.call(void 0, ()=>o.value.length>0),R=_vue.computed.call(void 0, ()=>[..._nullishCoalesce(_optionalChain([f, 'access', _2 => _2.value, 'optionalAccess', _3 => _3.failures]), () => ([])),..._nullishCoalesce(_optionalChain([f, 'access', _4 => _4.value, 'optionalAccess', _5 => _5.conflicts]), () => ([]))]),D=_vue.computed.call(void 0, ()=>[...new Set(R.value.map(r=>r.rowId))]),S=null,m=()=>{let r=a.api.value;if(!r||r.isDestroyed()){o.value=[],p.value=[];return}o.value=r.editing.getDirtyRowIds(),p.value=r.editing.getChanges()};_vue.watch.call(void 0, a.api,r=>{_optionalChain([S, 'optionalCall', _6 => _6()]),S=null,m(),!(!r||r.isDestroyed())&&(S=r.on("dirtyStateChanged",m))},{immediate:!0});let g=async(r,u)=>{let v=a.api.value;if(!v||v.isDestroyed())throw new Error("[MachTable] Cannot save before the grid is ready.");if(d.value)throw new Error("[MachTable] A save operation is already in progress.");d.value=!0,h.value=null,f.value=null;try{let c=await v.editing.save(r,u);return f.value=c,m(),_optionalChain([n, 'access', _7 => _7.onSaveSuccess, 'optionalCall', _8 => _8(c.saved)]),_optionalChain([n, 'access', _9 => _9.onSaveResult, 'optionalCall', _10 => _10(c)]),c}catch(c){throw h.value=c,_optionalChain([n, 'access', _11 => _11.onSaveError, 'optionalCall', _12 => _12(c)]),c}finally{d.value=!1}},T=async(r,u)=>(await g(r,u)).saved,l=()=>{f.value=null},O=(r,u)=>{let v=f.value,c=_optionalChain([v, 'optionalAccess', _13 => _13.conflicts, 'access', _14 => _14.find, 'call', _15 => _15(C=>C.rowId===r)]),y=a.api.value;return!v||!c||!y||!_machtable.resolveSaveConflict.call(void 0, y,c,u)?!1:(f.value={...v,failures:v.failures,conflicts:v.conflicts.filter(C=>C.rowId!==r)},m(),!0)},z=r=>{let u=_nullishCoalesce(_optionalChain([a, 'access', _16 => _16.api, 'access', _17 => _17.value, 'optionalAccess', _18 => _18.editing, 'access', _19 => _19.rollback, 'call', _20 => _20(r)]), () => (!1));return m(),u},x=r=>{_optionalChain([a, 'access', _21 => _21.api, 'access', _22 => _22.value, 'optionalAccess', _23 => _23.editing, 'access', _24 => _24.markSaved, 'call', _25 => _25(r)]),m()},w=(r,u,v=!1)=>{let c=a.api.value,y=_optionalChain([c, 'optionalAccess', _26 => _26.rows, 'access', _27 => _27.getById, 'call', _28 => _28(r)]);return!c||!y||y.rowIndex<0?!1:(c.view.scrollToRow(y.rowIndex,"middle"),u&&v?c.editing.startCell({rowIndex:y.rowIndex,colId:u}):!0)},I=r=>{if(!b.value)return;let u=_nullishCoalesce(n.beforeUnloadMessage, () => ("\u5B58\u5728\u672A\u4FDD\u5B58\u7684\u8868\u683C\u4FEE\u6539\u3002"));return r.preventDefault(),r.returnValue=u,u};return n.guardBeforeUnload&&typeof window<"u"&&window.addEventListener("beforeunload",I),_vue.onScopeDispose.call(void 0, ()=>{_optionalChain([S, 'optionalCall', _29 => _29()]),S=null,n.guardBeforeUnload&&typeof window<"u"&&window.removeEventListener("beforeunload",I)}),{changes:p,dirtyRowIds:o,dirty:b,saving:d,saveError:h,lastSaveResult:f,saveIssues:R,failedRowIds:D,save:T,saveDetailed:g,clearSaveIssues:l,resolveConflict:O,rollback:z,markSaved:x,reveal:w,refresh:m}}function re(a){return typeof a=="function"?a():_vue.isRef.call(void 0, a)?a.value:a}function J(a,n){return typeof a=="number"&&Number.isFinite(a)&&a>0?Math.floor(a):n}function De(a){return(a instanceof DOMException||typeof a=="object"&&a!=null&&"name"in a)&&a.name==="AbortError"}function W(a){let n=_vue.shallowRef.call(void 0, []),p=_vue.ref.call(void 0, !1),o=_vue.shallowRef.call(void 0, null),d=_vue.ref.call(void 0, J(a.initialPage,1)),h=_vue.ref.call(void 0, J(a.pageSize,20)),f=_vue.ref.call(void 0, 0),b=_vue.shallowRef.call(void 0, []),R=_vue.shallowRef.call(void 0, {}),D=_vue.shallowRef.call(void 0, null),S=_vue.ref.call(void 0, []),m=_vue.shallowRef.call(void 0, []),g=new Set,T=new Set,l=new Map,O=_nullishCoalesce(a.quickFilterText, () => (_vue.ref.call(void 0, null))),z=_nullishCoalesce(a.selectionScope, () => ("preserve")),x=a.mode!=="manual",w=_vue.ref.call(void 0, !1),I=_vue.ref.call(void 0, 0),r=[...new Set((_nullishCoalesce(a.pageSizeOptions, () => ([10,20,50,100]))).map(e=>J(e,0)).filter(Boolean))];r.includes(h.value)||r.push(h.value),r.sort((e,t)=>e-t);let u=null,v=null,c=0,y=null,C=!1,q=!1,B=!1,M=e=>{let t=typeof a.rowKey=="function"?a.rowKey(e):_machtable.getByPath.call(void 0, e,a.rowKey);if(t==null||String(t).length===0)throw new Error(`[MachTable] useMachTableQuery rowKey "${String(a.rowKey)}" returned an empty value.`);return String(t)},P=()=>{B=!0,S.value=w.value?[]:[...g],B=!1;let e=w.value?[...l.keys()]:[...g];m.value=e.flatMap(t=>{let i=l.get(t);return i===void 0||T.has(t)?[]:[i]}),I.value++},L=e=>w.value?!T.has(e):g.has(e),F=()=>{if(!u||u.isDestroyed())return;let e=n.value.filter(t=>L(M(t)));q=!0;try{u.selection.setRows(e,!0)}finally{q=!1}},Y=()=>{c++,_optionalChain([v, 'optionalAccess', _30 => _30.abort, 'call', _31 => _31()]),v=null,y!=null&&clearTimeout(y),y=null,p.value=!1},Z=(e,t)=>e.signal.aborted||t!==c,ne=e=>{if(!e||!Array.isArray(e.rows)||!Number.isFinite(e.total)||e.total<0)throw new TypeError("[MachTable] Remote request must resolve to { rows: TData[], total: non-negative number }.")},oe=async(e,t,i)=>{if(Z(t,i))return;ne(e);let s=[...e.rows];for(let U of s)M(U);n.value=s,f.value=Math.floor(e.total);for(let U of n.value){let H=M(U);L(H)?l.set(H,U):l.delete(H)}P(),_optionalChain([a, 'access', _32 => _32.onSuccess, 'optionalCall', _33 => _33(e)]),await _vue.nextTick.call(void 0, ),F()},ie=(e,t,i)=>{Z(t,i)||De(e)||(o.value=_nullishCoalesce(e, () => (new Error)),_optionalChain([a, 'access', _34 => _34.onError, 'optionalCall', _35 => _35(o.value)]))},Q=async()=>{y!=null&&clearTimeout(y),y=null,_optionalChain([v, 'optionalAccess', _36 => _36.abort, 'call', _37 => _37()]);let e=new AbortController;v=e;let t=++c;p.value=!0,o.value=null,a.keepPreviousData===!1&&(n.value=[]);try{let i=await a.request({page:d.value,pageSize:h.value,query:re(a.query),sortModel:b.value.map(s=>({...s})),filterModel:{...R.value},advancedFilterModel:_machtable.normalizeAdvancedFilterModel.call(void 0, D.value),quickFilterText:O.value,signal:e.signal});await oe(i,e,t)}catch(i){ie(i,e,t)}finally{t===c&&(p.value=!1,v===e&&(v=null))}},K=e=>{e&&(d.value=1),y!=null&&clearTimeout(y),v&&(c++,v.abort(),v=null,p.value=!1);let t=Math.max(0,_nullishCoalesce(a.debounceMs, () => (0)));if(t===0){Q();return}y=setTimeout(()=>{Q()},t)},se=e=>{u=e.api,_vue.nextTick.call(void 0, F)},ue=e=>{C||e.page===d.value&&e.pageSize===h.value||(d.value=e.page,h.value=e.pageSize,x&&Q())},ce=e=>{C||(b.value=e.sortModel.map(t=>({...t})),x?K(!0):d.value=1)},de=e=>{C||(R.value={...e.filterModel},D.value=_machtable.normalizeAdvancedFilterModel.call(void 0, e.advancedFilterModel),a.clearSelectionOnQueryChange!==!1&&A(),x?K(!0):d.value=1)},ve=e=>{if(q)return;let t=new Set(n.value.map(M)),i=new Set(e.selectedRows.map(M));if(w.value){for(let s of t)i.has(s)?T.delete(s):(T.add(s),l.delete(s));for(let s of e.selectedRows)l.set(M(s),s);P();return}if(z==="page")g.clear(),l.clear();else for(let s of t)g.delete(s),l.delete(s);for(let s of e.selectedRows){let U=M(s);g.add(U),l.set(U,s)}P()},fe=_vue.computed.call(void 0, ()=>({rowData:n.value,loading:p.value,rowKey:M,manualSorting:!0,manualFiltering:!0,advancedFilterModel:D.value,quickFilterText:O.value,error:o.value,overlayErrorTemplate:o.value?()=>_nullishCoalesce(_optionalChain([a, 'access', _38 => _38.errorOverlay, 'optionalCall', _39 => _39({error:o.value,retry:Q})]), () => ("Remote request failed. Please retry.")):void 0,overlayNoRowsTemplate:a.emptyOverlay,pagination:{mode:"server",page:d.value,pageSize:h.value,pageSizeOptions:r,total:f.value,showTotal:!0,showPageSizeSelector:!0},onGridReady:se,onPaginationChanged:ue,onSortChanged:ce,onFilterChanged:de,onSelectionChanged:ve})),ge=async(e={})=>{e.resetPage&&(d.value=1),await Q()},ye=async()=>{d.value=1,b.value=[],R.value={},D.value=null,A(),C=!0;try{_optionalChain([u, 'optionalAccess', _40 => _40.sorting, 'access', _41 => _41.setModel, 'call', _42 => _42(null)]),_optionalChain([u, 'optionalAccess', _43 => _43.filtering, 'access', _44 => _44.setModel, 'call', _45 => _45(null)]),_optionalChain([u, 'optionalAccess', _46 => _46.filtering, 'access', _47 => _47.setAdvancedModel, 'call', _48 => _48(null)])}finally{C=!1}await Q()},A=()=>{w.value=!1,g.clear(),T.clear(),l.clear(),P(),q=!0;try{_optionalChain([u, 'optionalAccess', _49 => _49.selection, 'access', _50 => _50.clear, 'call', _51 => _51()])}finally{q=!1}},he=()=>{w.value=!0,g.clear(),T.clear(),l.clear();for(let e of n.value)l.set(M(e),e);P(),F()},pe=e=>{g.clear(),T.clear(),l.clear(),w.value=e.mode==="allMatching";let t=e.mode==="allMatching"?e.excludedKeys:e.selectedKeys;for(let i of t.map(String))e.mode==="allMatching"?T.add(i):g.add(i);for(let i of n.value){let s=M(i);L(s)&&l.set(s,i)}P(),F()},Te=_vue.computed.call(void 0, ()=>(I.value,w.value?{mode:"allMatching",excludedKeys:[...T]}:{mode:"explicit",selectedKeys:[...g]}));return _vue.watch.call(void 0, ()=>re(a.query),()=>{a.clearSelectionOnQueryChange!==!1&&A(),x?K(!0):d.value=1},{deep:!0,immediate:x&&a.immediate!==!1}),_vue.watch.call(void 0, O,()=>{a.clearSelectionOnQueryChange!==!1&&A(),x?K(!0):d.value=1}),_vue.watch.call(void 0, S,e=>{if(B)return;w.value=!1,T.clear();let t=new Set(e.map(String));g.clear();for(let i of t)g.add(i);for(let i of[...l.keys()])t.has(i)||l.delete(i);for(let i of n.value){let s=M(i);t.has(s)&&l.set(s,i)}F(),P()},{deep:!0,flush:"sync"}),_vue.onScopeDispose.call(void 0, ()=>{Y(),u=null}),{rows:n,loading:p,error:o,page:d,pageSize:h,total:f,sortModel:b,filterModel:R,advancedFilterModel:D,selectedKeys:S,selectedRows:m,selectionState:Te,bindings:fe,reload:ge,retry:Q,reset:ye,abort:Y,clearSelection:A,selectAllMatching:he,applySelectionState:pe}}function Qe(a={}){let n=_chunkEGEQGM3Dcjs.a.call(void 0, ),p=_vue.ref.call(void 0, _nullishCoalesce(a.initialSearch, () => (""))),o=a.query?W({...a.query,quickFilterText:_nullishCoalesce(a.query.quickFilterText, () => (_vue.computed.call(void 0, ()=>p.value||null)))}):null,d=j(n,a.editing),h=_vue.shallowRef.call(void 0, []),f=null,b=()=>{h.value=_nullishCoalesce(_nullishCoalesce(_optionalChain([o, 'optionalAccess', _52 => _52.selectedRows, 'access', _53 => _53.value]), () => (_optionalChain([n, 'access', _54 => _54.api, 'access', _55 => _55.value, 'optionalAccess', _56 => _56.selection, 'access', _57 => _57.getRows, 'call', _58 => _58()]))), () => ([]))};_vue.watch.call(void 0, n.api,l=>{_optionalChain([f, 'optionalCall', _59 => _59()]),f=null,l&&!l.isDestroyed()&&(f=l.on("selectionChanged",b)),b()},{immediate:!0}),o&&_vue.watch.call(void 0, o.selectedRows,b,{deep:!1});let R=async()=>{if(o)await o.reload();else{let l=n.api.value;_optionalChain([l, 'optionalAccess', _60 => _60.rows, 'access', _61 => _61.isRemote, 'call', _62 => _62()])?await l.rows.reload():_optionalChain([l, 'optionalAccess', _63 => _63.view, 'access', _64 => _64.refreshCells, 'call', _65 => _65()])}},D=_machtable.createMachTableCommands.call(void 0, {getApi:()=>n.api.value,reload:R}),S=_vue.computed.call(void 0, ()=>_nullishCoalesce(_optionalChain([o, 'optionalAccess', _66 => _66.bindings, 'access', _67 => _67.value]), () => ({}))),m=_vue.computed.call(void 0, ()=>{if(!o)return h.value.length;let l=o.selectionState.value;return l.mode==="allMatching"?Math.max(0,o.total.value-l.excludedKeys.length):l.selectedKeys.length}),g=_vue.computed.call(void 0, ()=>_optionalChain([o, 'optionalAccess', _68 => _68.loading, 'access', _69 => _69.value])===!0||d.saving.value),T=_vue.computed.call(void 0, ()=>_nullishCoalesce(_nullishCoalesce(_optionalChain([o, 'optionalAccess', _70 => _70.error, 'access', _71 => _71.value]), () => (d.saveError.value)), () => (null)));return _vue.watch.call(void 0, p,l=>{o||D.search(l||null)}),_vue.onScopeDispose.call(void 0, ()=>{_optionalChain([f, 'optionalCall', _72 => _72()]),f=null}),{table:n,query:o,editing:d,bindings:S,search:p,selectedRows:h,selectedCount:m,busy:g,error:T,commands:D,reload:R}}exports.useMachTableController = Qe; exports.useMachTableEditing = j; exports.useMachTableQuery = W;
|
package/dist/workflows.d.cts
CHANGED
|
@@ -1,4 +1,139 @@
|
|
|
1
|
-
|
|
2
|
-
import '
|
|
3
|
-
import '
|
|
4
|
-
import './MachTable-
|
|
1
|
+
import { ShallowRef, Ref, ComputedRef } from 'vue';
|
|
2
|
+
import { GridChange, GridBatchSaveResult, SaveChangeIssue, SaveChangeConflict, SaveChangesHandler, SortModel, FilterModel, AdvancedFilterModel, OverlayContent, OverlayTemplate, GridOptions, MachTableCommands } from '@agile-team/mach-table';
|
|
3
|
+
import { U as UseMachTableReturn } from './useMachTable-YH4Xj6dS.cjs';
|
|
4
|
+
import './MachTable-jS92BIXm.cjs';
|
|
5
|
+
import '@agile-team/mach-table/adapter';
|
|
6
|
+
|
|
7
|
+
interface UseMachTableEditingOptions<TData = any> {
|
|
8
|
+
/** Warn before closing/reloading a browser tab with unsaved changes. */
|
|
9
|
+
guardBeforeUnload?: boolean;
|
|
10
|
+
beforeUnloadMessage?: string;
|
|
11
|
+
onSaveSuccess?(saved: readonly GridChange<TData>[]): void;
|
|
12
|
+
onSaveResult?(result: GridBatchSaveResult<TData>): void;
|
|
13
|
+
onSaveError?(error: unknown): void;
|
|
14
|
+
}
|
|
15
|
+
interface UseMachTableEditingReturn<TData = any> {
|
|
16
|
+
changes: ShallowRef<GridChange<TData>[]>;
|
|
17
|
+
dirtyRowIds: Ref<string[]>;
|
|
18
|
+
dirty: ComputedRef<boolean>;
|
|
19
|
+
saving: Ref<boolean>;
|
|
20
|
+
saveError: ShallowRef<unknown | null>;
|
|
21
|
+
lastSaveResult: ShallowRef<GridBatchSaveResult<TData> | null>;
|
|
22
|
+
saveIssues: ComputedRef<Array<SaveChangeIssue | SaveChangeConflict<TData>>>;
|
|
23
|
+
failedRowIds: ComputedRef<string[]>;
|
|
24
|
+
save(handler: SaveChangesHandler<TData>, rowIds?: readonly string[]): Promise<GridChange<TData>[]>;
|
|
25
|
+
saveDetailed(handler: SaveChangesHandler<TData>, rowIds?: readonly string[]): Promise<GridBatchSaveResult<TData>>;
|
|
26
|
+
clearSaveIssues(): void;
|
|
27
|
+
resolveConflict(rowId: string, strategy: "acceptServer" | "keepLocal"): boolean;
|
|
28
|
+
rollback(rowIds?: readonly string[]): boolean;
|
|
29
|
+
markSaved(rowIds?: readonly string[]): void;
|
|
30
|
+
/** Scrolls to a loaded changed row and optionally opens the failed cell editor. */
|
|
31
|
+
reveal(rowId: string, colId?: string, edit?: boolean): boolean;
|
|
32
|
+
refresh(): void;
|
|
33
|
+
}
|
|
34
|
+
/** Reactive dirty/save workflow layered over useMachTable(). */
|
|
35
|
+
declare function useMachTableEditing<TData = any>(table: UseMachTableReturn<TData>, options?: UseMachTableEditingOptions<TData>): UseMachTableEditingReturn<TData>;
|
|
36
|
+
|
|
37
|
+
type MachTableQuerySource<TQuery> = TQuery | Readonly<Ref<TQuery>> | (() => TQuery);
|
|
38
|
+
interface MachTablePageRequest<TQuery> {
|
|
39
|
+
page: number;
|
|
40
|
+
pageSize: number;
|
|
41
|
+
query: TQuery;
|
|
42
|
+
sortModel: SortModel;
|
|
43
|
+
filterModel: FilterModel;
|
|
44
|
+
advancedFilterModel: AdvancedFilterModel | null;
|
|
45
|
+
quickFilterText: string | null;
|
|
46
|
+
signal: AbortSignal;
|
|
47
|
+
}
|
|
48
|
+
interface MachTablePageResult<TData> {
|
|
49
|
+
rows: readonly TData[];
|
|
50
|
+
total: number;
|
|
51
|
+
}
|
|
52
|
+
type MachTableRemoteSelectionState = {
|
|
53
|
+
mode: "explicit";
|
|
54
|
+
selectedKeys: string[];
|
|
55
|
+
} | {
|
|
56
|
+
mode: "allMatching";
|
|
57
|
+
excludedKeys: string[];
|
|
58
|
+
};
|
|
59
|
+
interface UseMachTableQueryOptions<TData, TQuery = Record<string, unknown>> {
|
|
60
|
+
request(params: MachTablePageRequest<TQuery>): Promise<MachTablePageResult<TData>>;
|
|
61
|
+
query: MachTableQuerySource<TQuery>;
|
|
62
|
+
/** Stable row key used for updates and cross-page selection. */
|
|
63
|
+
rowKey: string | ((row: TData) => string | number);
|
|
64
|
+
initialPage?: number;
|
|
65
|
+
pageSize?: number;
|
|
66
|
+
pageSizeOptions?: readonly number[];
|
|
67
|
+
immediate?: boolean;
|
|
68
|
+
/** auto reloads when query/grid criteria change; manual waits for reload/reset. */
|
|
69
|
+
mode?: "auto" | "manual";
|
|
70
|
+
debounceMs?: number;
|
|
71
|
+
keepPreviousData?: boolean;
|
|
72
|
+
/** `query` additionally enables compact select-all-matching rules. */
|
|
73
|
+
selectionScope?: "page" | "preserve" | "query";
|
|
74
|
+
/** Defaults true: a different business/filter query cannot inherit stale selections. */
|
|
75
|
+
clearSelectionOnQueryChange?: boolean;
|
|
76
|
+
quickFilterText?: Ref<string | null>;
|
|
77
|
+
/** Renders inside the first-class error overlay for the latest failed request. */
|
|
78
|
+
errorOverlay?(context: {
|
|
79
|
+
error: unknown;
|
|
80
|
+
retry(): Promise<void>;
|
|
81
|
+
}): OverlayContent;
|
|
82
|
+
emptyOverlay?: OverlayTemplate;
|
|
83
|
+
onSuccess?(result: MachTablePageResult<TData>): void;
|
|
84
|
+
onError?(error: unknown): void;
|
|
85
|
+
}
|
|
86
|
+
interface UseMachTableQueryReturn<TData> {
|
|
87
|
+
rows: ShallowRef<TData[]>;
|
|
88
|
+
loading: Ref<boolean>;
|
|
89
|
+
error: ShallowRef<unknown | null>;
|
|
90
|
+
page: Ref<number>;
|
|
91
|
+
pageSize: Ref<number>;
|
|
92
|
+
total: Ref<number>;
|
|
93
|
+
sortModel: ShallowRef<SortModel>;
|
|
94
|
+
filterModel: ShallowRef<FilterModel>;
|
|
95
|
+
advancedFilterModel: ShallowRef<AdvancedFilterModel | null>;
|
|
96
|
+
selectedKeys: Ref<string[]>;
|
|
97
|
+
selectedRows: ShallowRef<TData[]>;
|
|
98
|
+
selectionState: ComputedRef<MachTableRemoteSelectionState>;
|
|
99
|
+
bindings: ComputedRef<GridOptions<TData>>;
|
|
100
|
+
reload(options?: {
|
|
101
|
+
resetPage?: boolean;
|
|
102
|
+
}): Promise<void>;
|
|
103
|
+
retry(): Promise<void>;
|
|
104
|
+
reset(): Promise<void>;
|
|
105
|
+
abort(): void;
|
|
106
|
+
clearSelection(): void;
|
|
107
|
+
/** Selects the complete server query without downloading every row ID. */
|
|
108
|
+
selectAllMatching(): void;
|
|
109
|
+
applySelectionState(state: MachTableRemoteSelectionState): void;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* B-side remote-list controller: paging, sorting, filtering, cancellation,
|
|
113
|
+
* stale-response protection and cross-page selection in one typed binding.
|
|
114
|
+
*/
|
|
115
|
+
declare function useMachTableQuery<TData, TQuery = Record<string, unknown>>(options: UseMachTableQueryOptions<TData, TQuery>): UseMachTableQueryReturn<TData>;
|
|
116
|
+
|
|
117
|
+
interface UseMachTableControllerOptions<TData, TQuery = Record<string, unknown>> {
|
|
118
|
+
/** Omit for local rowData; provide for a complete remote table workflow. */
|
|
119
|
+
query?: UseMachTableQueryOptions<TData, TQuery>;
|
|
120
|
+
editing?: UseMachTableEditingOptions<TData>;
|
|
121
|
+
initialSearch?: string;
|
|
122
|
+
}
|
|
123
|
+
interface UseMachTableControllerReturn<TData> {
|
|
124
|
+
table: UseMachTableReturn<TData>;
|
|
125
|
+
query: UseMachTableQueryReturn<TData> | null;
|
|
126
|
+
editing: UseMachTableEditingReturn<TData>;
|
|
127
|
+
bindings: ComputedRef<GridOptions<TData>>;
|
|
128
|
+
search: Ref<string>;
|
|
129
|
+
selectedRows: ShallowRef<TData[]>;
|
|
130
|
+
selectedCount: ComputedRef<number>;
|
|
131
|
+
busy: ComputedRef<boolean>;
|
|
132
|
+
error: ComputedRef<unknown | null>;
|
|
133
|
+
commands: MachTableCommands;
|
|
134
|
+
reload(): Promise<void>;
|
|
135
|
+
}
|
|
136
|
+
/** One cohesive controller for API readiness, query, selection, editing and toolbar commands. */
|
|
137
|
+
declare function useMachTableController<TData, TQuery = Record<string, unknown>>(options?: UseMachTableControllerOptions<TData, TQuery>): UseMachTableControllerReturn<TData>;
|
|
138
|
+
|
|
139
|
+
export { type MachTablePageRequest, type MachTablePageResult, type MachTableQuerySource, type MachTableRemoteSelectionState, type UseMachTableControllerOptions, type UseMachTableControllerReturn, type UseMachTableEditingOptions, type UseMachTableEditingReturn, type UseMachTableQueryOptions, type UseMachTableQueryReturn, useMachTableController, useMachTableEditing, useMachTableQuery };
|
package/dist/workflows.d.ts
CHANGED
|
@@ -1,4 +1,139 @@
|
|
|
1
|
-
|
|
2
|
-
import '
|
|
3
|
-
import '
|
|
4
|
-
import './MachTable-
|
|
1
|
+
import { ShallowRef, Ref, ComputedRef } from 'vue';
|
|
2
|
+
import { GridChange, GridBatchSaveResult, SaveChangeIssue, SaveChangeConflict, SaveChangesHandler, SortModel, FilterModel, AdvancedFilterModel, OverlayContent, OverlayTemplate, GridOptions, MachTableCommands } from '@agile-team/mach-table';
|
|
3
|
+
import { U as UseMachTableReturn } from './useMachTable-DXGZxgIJ.js';
|
|
4
|
+
import './MachTable-jS92BIXm.js';
|
|
5
|
+
import '@agile-team/mach-table/adapter';
|
|
6
|
+
|
|
7
|
+
interface UseMachTableEditingOptions<TData = any> {
|
|
8
|
+
/** Warn before closing/reloading a browser tab with unsaved changes. */
|
|
9
|
+
guardBeforeUnload?: boolean;
|
|
10
|
+
beforeUnloadMessage?: string;
|
|
11
|
+
onSaveSuccess?(saved: readonly GridChange<TData>[]): void;
|
|
12
|
+
onSaveResult?(result: GridBatchSaveResult<TData>): void;
|
|
13
|
+
onSaveError?(error: unknown): void;
|
|
14
|
+
}
|
|
15
|
+
interface UseMachTableEditingReturn<TData = any> {
|
|
16
|
+
changes: ShallowRef<GridChange<TData>[]>;
|
|
17
|
+
dirtyRowIds: Ref<string[]>;
|
|
18
|
+
dirty: ComputedRef<boolean>;
|
|
19
|
+
saving: Ref<boolean>;
|
|
20
|
+
saveError: ShallowRef<unknown | null>;
|
|
21
|
+
lastSaveResult: ShallowRef<GridBatchSaveResult<TData> | null>;
|
|
22
|
+
saveIssues: ComputedRef<Array<SaveChangeIssue | SaveChangeConflict<TData>>>;
|
|
23
|
+
failedRowIds: ComputedRef<string[]>;
|
|
24
|
+
save(handler: SaveChangesHandler<TData>, rowIds?: readonly string[]): Promise<GridChange<TData>[]>;
|
|
25
|
+
saveDetailed(handler: SaveChangesHandler<TData>, rowIds?: readonly string[]): Promise<GridBatchSaveResult<TData>>;
|
|
26
|
+
clearSaveIssues(): void;
|
|
27
|
+
resolveConflict(rowId: string, strategy: "acceptServer" | "keepLocal"): boolean;
|
|
28
|
+
rollback(rowIds?: readonly string[]): boolean;
|
|
29
|
+
markSaved(rowIds?: readonly string[]): void;
|
|
30
|
+
/** Scrolls to a loaded changed row and optionally opens the failed cell editor. */
|
|
31
|
+
reveal(rowId: string, colId?: string, edit?: boolean): boolean;
|
|
32
|
+
refresh(): void;
|
|
33
|
+
}
|
|
34
|
+
/** Reactive dirty/save workflow layered over useMachTable(). */
|
|
35
|
+
declare function useMachTableEditing<TData = any>(table: UseMachTableReturn<TData>, options?: UseMachTableEditingOptions<TData>): UseMachTableEditingReturn<TData>;
|
|
36
|
+
|
|
37
|
+
type MachTableQuerySource<TQuery> = TQuery | Readonly<Ref<TQuery>> | (() => TQuery);
|
|
38
|
+
interface MachTablePageRequest<TQuery> {
|
|
39
|
+
page: number;
|
|
40
|
+
pageSize: number;
|
|
41
|
+
query: TQuery;
|
|
42
|
+
sortModel: SortModel;
|
|
43
|
+
filterModel: FilterModel;
|
|
44
|
+
advancedFilterModel: AdvancedFilterModel | null;
|
|
45
|
+
quickFilterText: string | null;
|
|
46
|
+
signal: AbortSignal;
|
|
47
|
+
}
|
|
48
|
+
interface MachTablePageResult<TData> {
|
|
49
|
+
rows: readonly TData[];
|
|
50
|
+
total: number;
|
|
51
|
+
}
|
|
52
|
+
type MachTableRemoteSelectionState = {
|
|
53
|
+
mode: "explicit";
|
|
54
|
+
selectedKeys: string[];
|
|
55
|
+
} | {
|
|
56
|
+
mode: "allMatching";
|
|
57
|
+
excludedKeys: string[];
|
|
58
|
+
};
|
|
59
|
+
interface UseMachTableQueryOptions<TData, TQuery = Record<string, unknown>> {
|
|
60
|
+
request(params: MachTablePageRequest<TQuery>): Promise<MachTablePageResult<TData>>;
|
|
61
|
+
query: MachTableQuerySource<TQuery>;
|
|
62
|
+
/** Stable row key used for updates and cross-page selection. */
|
|
63
|
+
rowKey: string | ((row: TData) => string | number);
|
|
64
|
+
initialPage?: number;
|
|
65
|
+
pageSize?: number;
|
|
66
|
+
pageSizeOptions?: readonly number[];
|
|
67
|
+
immediate?: boolean;
|
|
68
|
+
/** auto reloads when query/grid criteria change; manual waits for reload/reset. */
|
|
69
|
+
mode?: "auto" | "manual";
|
|
70
|
+
debounceMs?: number;
|
|
71
|
+
keepPreviousData?: boolean;
|
|
72
|
+
/** `query` additionally enables compact select-all-matching rules. */
|
|
73
|
+
selectionScope?: "page" | "preserve" | "query";
|
|
74
|
+
/** Defaults true: a different business/filter query cannot inherit stale selections. */
|
|
75
|
+
clearSelectionOnQueryChange?: boolean;
|
|
76
|
+
quickFilterText?: Ref<string | null>;
|
|
77
|
+
/** Renders inside the first-class error overlay for the latest failed request. */
|
|
78
|
+
errorOverlay?(context: {
|
|
79
|
+
error: unknown;
|
|
80
|
+
retry(): Promise<void>;
|
|
81
|
+
}): OverlayContent;
|
|
82
|
+
emptyOverlay?: OverlayTemplate;
|
|
83
|
+
onSuccess?(result: MachTablePageResult<TData>): void;
|
|
84
|
+
onError?(error: unknown): void;
|
|
85
|
+
}
|
|
86
|
+
interface UseMachTableQueryReturn<TData> {
|
|
87
|
+
rows: ShallowRef<TData[]>;
|
|
88
|
+
loading: Ref<boolean>;
|
|
89
|
+
error: ShallowRef<unknown | null>;
|
|
90
|
+
page: Ref<number>;
|
|
91
|
+
pageSize: Ref<number>;
|
|
92
|
+
total: Ref<number>;
|
|
93
|
+
sortModel: ShallowRef<SortModel>;
|
|
94
|
+
filterModel: ShallowRef<FilterModel>;
|
|
95
|
+
advancedFilterModel: ShallowRef<AdvancedFilterModel | null>;
|
|
96
|
+
selectedKeys: Ref<string[]>;
|
|
97
|
+
selectedRows: ShallowRef<TData[]>;
|
|
98
|
+
selectionState: ComputedRef<MachTableRemoteSelectionState>;
|
|
99
|
+
bindings: ComputedRef<GridOptions<TData>>;
|
|
100
|
+
reload(options?: {
|
|
101
|
+
resetPage?: boolean;
|
|
102
|
+
}): Promise<void>;
|
|
103
|
+
retry(): Promise<void>;
|
|
104
|
+
reset(): Promise<void>;
|
|
105
|
+
abort(): void;
|
|
106
|
+
clearSelection(): void;
|
|
107
|
+
/** Selects the complete server query without downloading every row ID. */
|
|
108
|
+
selectAllMatching(): void;
|
|
109
|
+
applySelectionState(state: MachTableRemoteSelectionState): void;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* B-side remote-list controller: paging, sorting, filtering, cancellation,
|
|
113
|
+
* stale-response protection and cross-page selection in one typed binding.
|
|
114
|
+
*/
|
|
115
|
+
declare function useMachTableQuery<TData, TQuery = Record<string, unknown>>(options: UseMachTableQueryOptions<TData, TQuery>): UseMachTableQueryReturn<TData>;
|
|
116
|
+
|
|
117
|
+
interface UseMachTableControllerOptions<TData, TQuery = Record<string, unknown>> {
|
|
118
|
+
/** Omit for local rowData; provide for a complete remote table workflow. */
|
|
119
|
+
query?: UseMachTableQueryOptions<TData, TQuery>;
|
|
120
|
+
editing?: UseMachTableEditingOptions<TData>;
|
|
121
|
+
initialSearch?: string;
|
|
122
|
+
}
|
|
123
|
+
interface UseMachTableControllerReturn<TData> {
|
|
124
|
+
table: UseMachTableReturn<TData>;
|
|
125
|
+
query: UseMachTableQueryReturn<TData> | null;
|
|
126
|
+
editing: UseMachTableEditingReturn<TData>;
|
|
127
|
+
bindings: ComputedRef<GridOptions<TData>>;
|
|
128
|
+
search: Ref<string>;
|
|
129
|
+
selectedRows: ShallowRef<TData[]>;
|
|
130
|
+
selectedCount: ComputedRef<number>;
|
|
131
|
+
busy: ComputedRef<boolean>;
|
|
132
|
+
error: ComputedRef<unknown | null>;
|
|
133
|
+
commands: MachTableCommands;
|
|
134
|
+
reload(): Promise<void>;
|
|
135
|
+
}
|
|
136
|
+
/** One cohesive controller for API readiness, query, selection, editing and toolbar commands. */
|
|
137
|
+
declare function useMachTableController<TData, TQuery = Record<string, unknown>>(options?: UseMachTableControllerOptions<TData, TQuery>): UseMachTableControllerReturn<TData>;
|
|
138
|
+
|
|
139
|
+
export { type MachTablePageRequest, type MachTablePageResult, type MachTableQuerySource, type MachTableRemoteSelectionState, type UseMachTableControllerOptions, type UseMachTableControllerReturn, type UseMachTableEditingOptions, type UseMachTableEditingReturn, type UseMachTableQueryOptions, type UseMachTableQueryReturn, useMachTableController, useMachTableEditing, useMachTableQuery };
|