orion-design 1.0.0 → 1.0.2
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/components/Edittable/Edittable.d.ts +10 -1
- package/dist/components/Edittable/hooks/useEdittable.d.ts +30 -0
- package/dist/components/Edittable/hooks/useEdittable.js +91 -0
- package/dist/components/Edittable/hooks/useEdittable.js.map +1 -0
- package/dist/components/Edittable/index.d.ts +2 -1
- package/dist/components/Edittable/index.js +4 -1
- package/dist/components/Edittable/index.js.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +54 -51
- package/dist/components/index.js.map +1 -1
- package/dist/index.js +64 -61
- package/dist/index.js.map +1 -1
- package/dist/request/leaf7/Leaf7EncryptRequestParser.js +22 -12
- package/dist/request/leaf7/Leaf7EncryptRequestParser.js.map +1 -1
- package/dist/request/leaf7/types.d.ts +3 -0
- package/dist/version/version.d.ts +1 -1
- package/dist/version/version.js +1 -1
- package/dist/version/version.js.map +1 -1
- package/package.json +1 -1
@@ -1,4 +1,4 @@
|
|
1
|
-
import { PropType, ExtractPropTypes, CSSProperties } from 'vue';
|
1
|
+
import { PropType, ExtractPropTypes, CSSProperties, ComponentPublicInstance, ComputedRef } from 'vue';
|
2
2
|
type rowClassNameFn = (data: {
|
3
3
|
rowData: any;
|
4
4
|
rowIndex: number;
|
@@ -46,6 +46,15 @@ export declare const edittableProps: () => {
|
|
46
46
|
cellStyle: PropType<CSSProperties | cellStyleFn>;
|
47
47
|
};
|
48
48
|
export type EdittableProps = Partial<ExtractPropTypes<ReturnType<typeof edittableProps>>>;
|
49
|
+
export interface EdittableExpose {
|
50
|
+
clearSelection: () => void;
|
51
|
+
toggleRowSelection: (row: any, selected?: boolean) => void;
|
52
|
+
toggleAllSelection: () => void;
|
53
|
+
getSelectionRows: () => any[];
|
54
|
+
setCurrentRow: (row: any) => void;
|
55
|
+
columns: ComputedRef<any[]>;
|
56
|
+
}
|
57
|
+
export type EdittableInstance = ComponentPublicInstance<EdittableProps, EdittableExpose>;
|
49
58
|
declare const _default: import('vue').DefineComponent<ExtractPropTypes<{
|
50
59
|
data: ArrayConstructor;
|
51
60
|
showRowNumber: {
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import { ShallowRef } from 'vue';
|
2
|
+
import { EdittableInstance } from '../../../index.ts';
|
3
|
+
interface UseEdittableOptions<Row> {
|
4
|
+
tableRef?: Readonly<ShallowRef<EdittableInstance | null>>;
|
5
|
+
defaultData?: Row[];
|
6
|
+
newRowSchema?: Record<string, any> | (() => Record<string, any>);
|
7
|
+
afterSelectionChange?: (newSelection: Row[]) => void;
|
8
|
+
afterCurrentRowChange?: (currentRow: Row, oldCurrentRow: Row) => void;
|
9
|
+
}
|
10
|
+
declare const useEdittable: <Row = any>(options: UseEdittableOptions<Row>) => {
|
11
|
+
data: Row[];
|
12
|
+
selection: Row[];
|
13
|
+
currentRow: Row | undefined;
|
14
|
+
onSelectionChange: (newSelection: Row[]) => void;
|
15
|
+
onCurrentRowChange: (newCurrentRow: Row, oldCurrentRow: Row) => void;
|
16
|
+
clearSelection: () => void;
|
17
|
+
toggleRowSelection: (row: Row, selected?: boolean) => void;
|
18
|
+
toggleAllSelection: () => void;
|
19
|
+
getSelectionRows: () => Row[];
|
20
|
+
setCurrentRow: (row: Row) => void;
|
21
|
+
appendRow: (rowData: any) => void;
|
22
|
+
insertRow: (rowData: any, index: number) => void;
|
23
|
+
deleteRow: (index: number) => void;
|
24
|
+
updateRow: (rowData: any, index: number) => void;
|
25
|
+
moveUp: (index: number) => void;
|
26
|
+
moveDown: (index: number) => void;
|
27
|
+
moveTo: (from: number, to: number) => void;
|
28
|
+
selectionGroup: () => void;
|
29
|
+
};
|
30
|
+
export default useEdittable;
|
@@ -0,0 +1,91 @@
|
|
1
|
+
import { ref as w, reactive as N } from "vue";
|
2
|
+
import r from "../../../error/OrionError.js";
|
3
|
+
import { isEqual as W, isFunction as Y, extend as q } from "lodash-es";
|
4
|
+
import "dayjs";
|
5
|
+
import "../../../utils/md5.js";
|
6
|
+
import "decimal.js";
|
7
|
+
import T from "../../../utils/uuid.js";
|
8
|
+
const h = "ORION_ROW_KEY", L = (m) => {
|
9
|
+
const { tableRef: o, defaultData: R, newRowSchema: c, afterSelectionChange: g, afterCurrentRowChange: v } = m, l = w(R || []), a = w([]), p = w(), S = (e) => {
|
10
|
+
a.value = e, g && g(e);
|
11
|
+
}, d = (e, t) => {
|
12
|
+
p.value = e, v && v(e, t);
|
13
|
+
}, C = () => {
|
14
|
+
if (!o)
|
15
|
+
throw new r("调用clearSelection失败,tableRef为空");
|
16
|
+
o.value.clearSelection();
|
17
|
+
}, E = (e, t) => {
|
18
|
+
if (!o)
|
19
|
+
throw new r("调用toggleRowSelection失败,tableRef为空");
|
20
|
+
o.value.toggleRowSelection(e, t);
|
21
|
+
}, b = () => {
|
22
|
+
if (!o)
|
23
|
+
throw new r("调用toggleAllSelection失败,tableRef为空");
|
24
|
+
o.value.toggleAllSelection();
|
25
|
+
}, O = () => {
|
26
|
+
if (!o)
|
27
|
+
throw new r("调用getSelectionRows失败,tableRef为空");
|
28
|
+
return o.value.getSelectionRows();
|
29
|
+
}, I = (e) => {
|
30
|
+
if (!o)
|
31
|
+
throw new r("调用setCurrentRow失败,tableRef为空");
|
32
|
+
o.value.setCurrentRow(e);
|
33
|
+
}, u = (e) => {
|
34
|
+
const t = {};
|
35
|
+
e[h] || (t[h] = T());
|
36
|
+
let n = {};
|
37
|
+
return c && (Y(c) ? n = c() : n = c), q(t, n, e);
|
38
|
+
}, _ = (e) => {
|
39
|
+
l.value.push(u(e));
|
40
|
+
}, A = (e, t) => {
|
41
|
+
l.value.splice(t, 0, u(e));
|
42
|
+
}, D = (e) => {
|
43
|
+
l.value.splice(e, 1);
|
44
|
+
}, x = (e, t) => {
|
45
|
+
l.value[t] = u(e);
|
46
|
+
}, F = (e) => {
|
47
|
+
s(e, e - 1);
|
48
|
+
}, G = (e) => {
|
49
|
+
s(e, e + 1);
|
50
|
+
}, s = (e, t) => {
|
51
|
+
const n = l.value.splice(e, 1);
|
52
|
+
l.value.splice(t, 0, n[0]);
|
53
|
+
};
|
54
|
+
return N({
|
55
|
+
data: l,
|
56
|
+
selection: a,
|
57
|
+
currentRow: p,
|
58
|
+
onSelectionChange: S,
|
59
|
+
onCurrentRowChange: d,
|
60
|
+
clearSelection: C,
|
61
|
+
toggleRowSelection: E,
|
62
|
+
toggleAllSelection: b,
|
63
|
+
getSelectionRows: O,
|
64
|
+
setCurrentRow: I,
|
65
|
+
appendRow: _,
|
66
|
+
insertRow: A,
|
67
|
+
deleteRow: D,
|
68
|
+
updateRow: x,
|
69
|
+
moveUp: F,
|
70
|
+
moveDown: G,
|
71
|
+
moveTo: s,
|
72
|
+
selectionGroup: () => {
|
73
|
+
if (a.value.length < 2)
|
74
|
+
return;
|
75
|
+
let e = 0, t = !0;
|
76
|
+
const n = [];
|
77
|
+
l.value.forEach((f, i) => {
|
78
|
+
a.value.forEach((K) => {
|
79
|
+
if (W(f, K))
|
80
|
+
return t ? (e = i, t = !1) : n.push(i), !1;
|
81
|
+
});
|
82
|
+
}), n.forEach((f, i) => {
|
83
|
+
s(f, e + i + 1);
|
84
|
+
});
|
85
|
+
}
|
86
|
+
});
|
87
|
+
};
|
88
|
+
export {
|
89
|
+
L as default
|
90
|
+
};
|
91
|
+
//# sourceMappingURL=useEdittable.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"useEdittable.js","sources":["../../../../src/components/Edittable/hooks/useEdittable.ts"],"sourcesContent":["import { reactive, ref } from 'vue'\r\nimport type { Ref, ShallowRef } from 'vue'\r\nimport OrionError from '../../../error/OrionError'\r\nimport type { EdittableInstance } from 'orion-design'\r\nimport { uuid } from '../../../utils'\r\nimport { isEqual, extend, isFunction } from 'lodash-es'\r\n\r\nconst ORION_ROW_KEY = 'ORION_ROW_KEY'\r\n\r\ninterface UseEdittableOptions<Row> {\r\n tableRef?: Readonly<ShallowRef<EdittableInstance | null>>\r\n defaultData?: Row[]\r\n newRowSchema?: Record<string, any> | (() => Record<string, any>)\r\n afterSelectionChange?: (newSelection: Row[]) => void\r\n afterCurrentRowChange?: (currentRow: Row, oldCurrentRow: Row) => void\r\n}\r\n\r\nconst useEdittable = <Row = any>(options: UseEdittableOptions<Row>) => {\r\n const { tableRef, defaultData, newRowSchema, afterSelectionChange, afterCurrentRowChange } = options\r\n\r\n const data = ref<Row[]>(defaultData ? defaultData : []) as Ref<Row[]>\r\n const selection = ref<Row[]>([]) as Ref<Row[]>\r\n const currentRow = ref<Row>()\r\n\r\n const onSelectionChange = (newSelection: Row[]) => {\r\n selection.value = newSelection\r\n afterSelectionChange && afterSelectionChange(newSelection)\r\n }\r\n const onCurrentRowChange = (newCurrentRow: Row, oldCurrentRow: Row) => {\r\n currentRow.value = newCurrentRow\r\n afterCurrentRowChange && afterCurrentRowChange(newCurrentRow, oldCurrentRow)\r\n }\r\n\r\n const clearSelection = () => {\r\n if (!tableRef) {\r\n throw new OrionError(`调用clearSelection失败,tableRef为空`)\r\n }\r\n tableRef.value!.clearSelection()\r\n }\r\n const toggleRowSelection = (row: Row, selected?: boolean) => {\r\n if (!tableRef) {\r\n throw new OrionError(`调用toggleRowSelection失败,tableRef为空`)\r\n }\r\n tableRef.value!.toggleRowSelection(row, selected)\r\n }\r\n const toggleAllSelection = () => {\r\n if (!tableRef) {\r\n throw new OrionError(`调用toggleAllSelection失败,tableRef为空`)\r\n }\r\n tableRef.value!.toggleAllSelection()\r\n }\r\n const getSelectionRows = () => {\r\n if (!tableRef) {\r\n throw new OrionError(`调用getSelectionRows失败,tableRef为空`)\r\n }\r\n return tableRef.value!.getSelectionRows() as Row[]\r\n }\r\n const setCurrentRow = (row: Row) => {\r\n if (!tableRef) {\r\n throw new OrionError(`调用setCurrentRow失败,tableRef为空`)\r\n }\r\n tableRef.value!.setCurrentRow(row)\r\n }\r\n\r\n const createRowData = (source: any) => {\r\n const target: any = {}\r\n if (!source[ORION_ROW_KEY]) {\r\n target[ORION_ROW_KEY] = uuid()\r\n }\r\n\r\n let schema: any = {}\r\n if (newRowSchema) {\r\n if (isFunction(newRowSchema)) {\r\n schema = newRowSchema()\r\n } else {\r\n schema = newRowSchema\r\n }\r\n }\r\n\r\n return extend(target, schema, source)\r\n }\r\n const appendRow = (rowData: any) => {\r\n data.value.push(createRowData(rowData))\r\n }\r\n const insertRow = (rowData: any, index: number) => {\r\n data.value.splice(index, 0, createRowData(rowData))\r\n }\r\n const deleteRow = (index: number) => {\r\n data.value.splice(index, 1)\r\n }\r\n const updateRow = (rowData: any, index: number) => {\r\n data.value[index] = createRowData(rowData)\r\n }\r\n const moveUp = (index: number) => {\r\n moveTo(index, index - 1)\r\n }\r\n const moveDown = (index: number) => {\r\n moveTo(index, index + 1)\r\n }\r\n const moveTo = (from: number, to: number) => {\r\n const item = data.value.splice(from, 1)\r\n data.value.splice(to, 0, item[0])\r\n }\r\n const selectionGroup = () => {\r\n if (selection.value.length < 2) {\r\n return\r\n }\r\n\r\n let firstRowIndex: number = 0\r\n let firstRowFlag: boolean = true\r\n const leftRowIndexs: number[] = []\r\n\r\n data.value.forEach((e, i) => {\r\n selection.value.forEach((item) => {\r\n if (isEqual(e, item)) {\r\n if (firstRowFlag) {\r\n firstRowIndex = i\r\n firstRowFlag = false\r\n } else {\r\n leftRowIndexs.push(i)\r\n }\r\n return false\r\n }\r\n })\r\n })\r\n\r\n leftRowIndexs.forEach((e, i) => {\r\n moveTo(e, firstRowIndex + i + 1)\r\n })\r\n }\r\n\r\n return reactive({\r\n data,\r\n selection,\r\n currentRow,\r\n onSelectionChange,\r\n onCurrentRowChange,\r\n clearSelection,\r\n toggleRowSelection,\r\n toggleAllSelection,\r\n getSelectionRows,\r\n setCurrentRow,\r\n appendRow,\r\n insertRow,\r\n deleteRow,\r\n updateRow,\r\n moveUp,\r\n moveDown,\r\n moveTo,\r\n selectionGroup,\r\n })\r\n}\r\n\r\nexport default useEdittable\r\n"],"names":["ORION_ROW_KEY","useEdittable","options","tableRef","defaultData","newRowSchema","afterSelectionChange","afterCurrentRowChange","data","ref","selection","currentRow","onSelectionChange","newSelection","onCurrentRowChange","newCurrentRow","oldCurrentRow","clearSelection","OrionError","toggleRowSelection","row","selected","toggleAllSelection","getSelectionRows","setCurrentRow","createRowData","source","target","uuid","schema","isFunction","extend","appendRow","rowData","insertRow","index","deleteRow","updateRow","moveUp","moveTo","moveDown","from","to","item","reactive","firstRowIndex","firstRowFlag","leftRowIndexs","e","isEqual"],"mappings":"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"}
|
@@ -10,7 +10,6 @@ import { default as EdittableColumnButtongroup } from './columns/EdittableColumn
|
|
10
10
|
import { default as EdittableCellButton } from './columns/EdittableCellButton';
|
11
11
|
import { default as EdittableColumngroup } from './columns/EdittableColumngroup';
|
12
12
|
import { default as EdittableColumnDiy } from './columns/EdittableColumnDiy';
|
13
|
-
export type { EdittableProps } from './Edittable';
|
14
13
|
declare const _default: import('../_util').SFCWithInstall<import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
15
14
|
data: ArrayConstructor;
|
16
15
|
showRowNumber: {
|
@@ -119,3 +118,5 @@ declare const _default: import('../_util').SFCWithInstall<import('vue').DefineCo
|
|
119
118
|
EdittableColumnDiy: typeof EdittableColumnDiy;
|
120
119
|
};
|
121
120
|
export default _default;
|
121
|
+
export * from './Edittable';
|
122
|
+
export { default as useEdittable } from './hooks/useEdittable';
|
@@ -10,6 +10,7 @@ import ve from "../../error/OrionError.js";
|
|
10
10
|
import Ne from "./hooks/useColumns.js";
|
11
11
|
import De from "../Pagetable/hooks/useCode.js";
|
12
12
|
import { _ as Re, e as Ve, c as Te, f as ke, d as _e, a as Ie, b as Pe } from "../../LovInput.vue_vue_type_script_setup_true_lang-C__ELopU.js";
|
13
|
+
import { default as Rt } from "./hooks/useEdittable.js";
|
13
14
|
function Q(l) {
|
14
15
|
return typeof l == "function" || Object.prototype.toString.call(l) === "[object Object]" && !G(l);
|
15
16
|
}
|
@@ -924,6 +925,8 @@ const ot = () => ({
|
|
924
925
|
EdittableColumnDiy: dt
|
925
926
|
});
|
926
927
|
export {
|
927
|
-
vt as default
|
928
|
+
vt as default,
|
929
|
+
je as edittableProps,
|
930
|
+
Rt as useEdittable
|
928
931
|
};
|
929
932
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Edittable/Edittable.tsx","../../../src/components/Edittable/columns/EdittableColumnIndex.tsx","../../../src/components/Edittable/columns/EdittableColumnString.tsx","../../../src/components/Edittable/columns/EdittableColumnLov.tsx","../../../src/components/Edittable/columns/EdittableColumnCheckbox.tsx","../../../src/components/Edittable/columns/EdittableColumnNumber.tsx","../../../src/components/Edittable/columns/EdittableColumnDate.tsx","../../../src/components/Edittable/columns/EdittableColumnSingleselect.tsx","../../../src/components/Edittable/columns/EdittableColumnMultiselect.tsx","../../../src/components/Edittable/columns/EdittableColumnButtongroup.tsx","../../../src/components/Edittable/columns/EdittableCellButton.tsx","../../../src/components/Edittable/columns/EdittableColumngroup.tsx","../../../src/components/Edittable/columns/EdittableColumnDiy.tsx","../../../src/components/Edittable/index.ts"],"sourcesContent":["import { computed, defineComponent, ref } from 'vue'\r\nimport type { PropType, ExtractPropTypes, CSSProperties } from 'vue'\r\nimport classNames from '../_antd_util/classNames'\r\nimport { ElTable, ElTableColumn } from 'element-plus'\r\n\r\nimport { formatDate, number2string, getSingleCodeContent, getMultiCodeContent } from './utils'\r\nimport dayjs from 'dayjs'\r\nimport { isArray, isFunction, isString } from 'lodash-es'\r\nimport Space from '../Space'\r\nimport OrionError from '../../error/OrionError'\r\n\r\nimport useColumns from './hooks/useColumns'\r\nimport useCode from '../Pagetable/hooks/useCode'\r\n\r\nimport OStringInput from '../Input/StringInput/StringInput.vue'\r\nimport OSingleSelect from '../Input/SingleSelect/SingleSelect.vue'\r\nimport OMultiSelect from '../Input/MultiSelect/MultiSelect.vue'\r\nimport ODateInput from '../Input/DateInput/DateInput.vue'\r\nimport ONumberInput from '../Input/NumberInput/NumberInput.vue'\r\nimport OCheckbox from '../Input/Checkbox/Checkbox.vue'\r\nimport OLovInput from '../Input/LovInput/LovInput.vue'\r\n\r\ntype rowClassNameFn = (data: { rowData: any; rowIndex: number }) => string\r\ntype rowStyleFn = (data: { rowData: any; rowIndex: number }) => CSSProperties\r\ntype cellClassNameFn = (data: { rowData: any; column: { name: string; head: string }; rowIndex: number; columnIndex: number }) => string\r\ntype cellStyleFn = (data: { rowData: any; column: { name: string; head: string }; rowIndex: number; columnIndex: number }) => CSSProperties\r\n\r\nexport const edittableProps = () => ({\r\n data: Array,\r\n showRowNumber: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n selectionMode: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n currentRowMode: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n size: String as PropType<'' | 'large' | 'default' | 'small'>,\r\n rowClassName: [String, Function] as PropType<string | rowClassNameFn>,\r\n rowStyle: [Object, Function] as PropType<CSSProperties | rowStyleFn>,\r\n cellClassName: [String, Function] as PropType<string | cellClassNameFn>,\r\n cellStyle: [Object, Function] as PropType<CSSProperties | cellStyleFn>,\r\n})\r\n\r\nexport type EdittableProps = Partial<ExtractPropTypes<ReturnType<typeof edittableProps>>>\r\n\r\nconst isCellEditable = (editable = true, cellEditable: any, row: any) => {\r\n if (!editable) {\r\n return false\r\n }\r\n if (!cellEditable) {\r\n return true\r\n }\r\n return cellEditable(row)\r\n}\r\n\r\nconst getCodeData = (code: any, row: any) => {\r\n if (isString(code) || isArray(code)) {\r\n return useCode(code).value\r\n } else if (isFunction(code)) {\r\n return code(row)\r\n } else {\r\n return null\r\n }\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'OEdittable',\r\n inheritAttrs: false,\r\n props: edittableProps(),\r\n emits: ['selectionChange', 'currentRowChange', 'rowClick', 'rowDblclick', 'cellClick', 'cellDblclick'],\r\n setup(props, { slots, attrs, emit, expose }) {\r\n const elTableRef = ref()\r\n\r\n const style = computed(() => {\r\n const rowStyle: CSSProperties = {}\r\n\r\n return rowStyle\r\n })\r\n\r\n const columns = useColumns(slots)\r\n\r\n const clearSelection = () => {\r\n elTableRef.value.clearSelection()\r\n }\r\n\r\n const getSelectionRows = () => {\r\n return elTableRef.value.getSelectionRows()\r\n }\r\n\r\n const toggleRowSelection = (...args) => {\r\n return elTableRef.value.toggleRowSelection(...args)\r\n }\r\n\r\n const toggleAllSelection = () => {\r\n return elTableRef.value.toggleAllSelection()\r\n }\r\n\r\n const setCurrentRow = (...args) => {\r\n return elTableRef.value.setCurrentRow(...args)\r\n }\r\n\r\n const scrollTo = (...args) => {\r\n return elTableRef.value.scrollTo(...args)\r\n }\r\n\r\n expose({\r\n clearSelection,\r\n getSelectionRows,\r\n toggleRowSelection,\r\n toggleAllSelection,\r\n setCurrentRow,\r\n scrollTo,\r\n })\r\n\r\n return () => {\r\n const { data } = props\r\n const { selectionMode = false } = props\r\n const { showRowNumber = true } = props\r\n const { currentRowMode = false } = props\r\n const { size = 'default' } = props\r\n const { rowClassName, rowStyle, cellClassName, cellStyle } = props\r\n\r\n const cn = classNames('orion-edittable')\r\n\r\n const renderIndexColumn = () => {\r\n return (\r\n <ElTableColumn\r\n type={'index'}\r\n label=\"No\"\r\n headerAlign={'center'}\r\n align={'center'}\r\n width={56}\r\n fixed={'left'}\r\n showOverflowTooltip={true}\r\n index={(index: number) => {\r\n return index + 1\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderSelectionColumn = () => {\r\n return <ElTableColumn type={'selection'} headerAlign={'center'} align={'center'} width={40} fixed={'left'}></ElTableColumn>\r\n }\r\n\r\n const renderStringColumn = (column) => {\r\n const { name, head, headAlign = 'center', bodyAlign, width, fixed, editable, cellEditable, maxlength, placeholder } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n return isEditable ? (\r\n <OStringInput\r\n modelValue={cellValue}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n maxlength={maxlength}\r\n placeholder={placeholder}\r\n ></OStringInput>\r\n ) : (\r\n <div class=\"cell-stringinput\">{cellValue}</div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderLovColumn = (column) => {\r\n const { name, head, headAlign = 'center', bodyAlign, width, fixed, editable, cellEditable, maxlength, placeholder, fillMapping } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const elChildren = column.children?.default?.({\r\n rowData: elRow,\r\n column: elColumn,\r\n rowIndex: scope.$index,\r\n })\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n return isEditable ? (\r\n <OLovInput\r\n modelValue={cellValue}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n maxlength={maxlength}\r\n placeholder={placeholder}\r\n onClear={() => {\r\n if (isString(fillMapping)) {\r\n const pairs = fillMapping.split(',')\r\n for (let i = 0; i < pairs.length; i++) {\r\n const dstName = pairs[i].split(':')[0].trim()\r\n elRow[dstName] = undefined\r\n }\r\n }\r\n }}\r\n onSelect={(params) => {\r\n if (isString(fillMapping)) {\r\n const pairs = fillMapping.split(',')\r\n for (let i = 0; i < pairs.length; i++) {\r\n const dstName = pairs[i].split(':')[0].trim()\r\n const srcName = pairs[i].split(':')[1].trim()\r\n const srcValue = params[srcName]\r\n elRow[dstName] = srcValue\r\n }\r\n } else {\r\n fillMapping && fillMapping(elRow, params)\r\n }\r\n }}\r\n >\r\n {elChildren}\r\n </OLovInput>\r\n ) : (\r\n <div class=\"cell-lovinput\">{cellValue}</div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderCheckboxColumn = (column) => {\r\n const { name, head, headAlign = 'center', bodyAlign = 'center', width, fixed, editable, cellEditable } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n return (\r\n <div class=\"cell-checkbox\">\r\n <OCheckbox\r\n modelValue={cellValue}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n disabled={!isEditable}\r\n ></OCheckbox>\r\n </div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderNumberColumn = (column) => {\r\n const {\r\n name,\r\n head,\r\n headAlign = 'center',\r\n bodyAlign = 'right',\r\n width,\r\n fixed,\r\n thousandsSeparator = true,\r\n percentage = false,\r\n editable,\r\n cellEditable,\r\n placeholder,\r\n min,\r\n max,\r\n step,\r\n stepStrictly,\r\n precision,\r\n controls = false,\r\n controlsPosition,\r\n } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n return isEditable ? (\r\n <ONumberInput\r\n modelValue={cellValue}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n placeholder={placeholder}\r\n min={min}\r\n max={max}\r\n step={step}\r\n stepStrictly={stepStrictly}\r\n precision={precision}\r\n controls={controls}\r\n controlsPosition={controlsPosition}\r\n ></ONumberInput>\r\n ) : (\r\n <div class=\"cell-numberinput\">{number2string(cellValue, thousandsSeparator, precision, percentage === true || percentage === '')}</div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderDateColumn = (column) => {\r\n const {\r\n name,\r\n head,\r\n headAlign = 'center',\r\n bodyAlign = 'center',\r\n width,\r\n fixed,\r\n editable,\r\n cellEditable,\r\n maxlength,\r\n placeholder,\r\n clearable = false,\r\n format = 'YYYYMMDDHHmmss',\r\n sourceFormat,\r\n } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n if (isEditable) {\r\n return (\r\n <ODateInput\r\n modelValue={elRow[elColumn.property]}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n maxlength={maxlength}\r\n placeholder={placeholder}\r\n clearable={clearable}\r\n format={format}\r\n sourceFormat={sourceFormat}\r\n ></ODateInput>\r\n )\r\n }\r\n if (cellValue instanceof Date || dayjs.isDayjs(cellValue)) {\r\n return <div class=\"cell-dateinput\">{formatDate(cellValue, format)}</div>\r\n } else {\r\n if (sourceFormat && format) {\r\n return <div class=\"cell-dateinput\">{formatDate(cellValue, sourceFormat, format)}</div>\r\n } else {\r\n return <div class=\"cell-dateinput\">{cellValue}</div>\r\n }\r\n }\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderSingleSelectColumn = (column) => {\r\n const { name, head, headAlign = 'center', bodyAlign, width, fixed, editable, cellEditable, code, placeholder, clearable, filterable } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n let codeContent: string | null\r\n const codeData = getCodeData(code, elRow)\r\n if (!codeData) {\r\n codeContent = null\r\n } else {\r\n codeContent = getSingleCodeContent(codeData, cellValue)\r\n }\r\n\r\n return isEditable ? (\r\n <OSingleSelect\r\n modelValue={elRow[elColumn.property]}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n code={codeData}\r\n placeholder={placeholder}\r\n clearable={clearable}\r\n filterable={filterable}\r\n ></OSingleSelect>\r\n ) : (\r\n <div class=\"cell-singleselect\">{codeContent}</div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderMultiSelectColumn = (column) => {\r\n const {\r\n name,\r\n head,\r\n headAlign = 'center',\r\n bodyAlign,\r\n width,\r\n fixed,\r\n editable,\r\n cellEditable,\r\n code,\r\n placeholder,\r\n collapseTags = true,\r\n collapseTagsTooltip,\r\n } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n let codeContent: string | null\r\n const codeData = getCodeData(code, elRow)\r\n if (!codeData) {\r\n codeContent = null\r\n } else {\r\n codeContent = getMultiCodeContent(codeData, cellValue)\r\n }\r\n\r\n return isEditable ? (\r\n <OMultiSelect\r\n modelValue={elRow[elColumn.property]}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n code={codeData}\r\n placeholder={placeholder}\r\n collapseTags={collapseTags}\r\n collapseTagsTooltip={collapseTagsTooltip}\r\n ></OMultiSelect>\r\n ) : (\r\n <div class=\"cell-multiselect\">{codeContent}</div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderButtongroupColumn = (column) => {\r\n const { name, head, headAlign = 'center', bodyAlign, width, fixed } = column\r\n\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n v-slots={{\r\n default: (scope) => {\r\n const children = column.children?.default?.({\r\n rowData: scope.row,\r\n column,\r\n rowIndex: scope.$index,\r\n })\r\n\r\n return (\r\n <div class=\"cell-buttongroup\">\r\n <Space>{children}</Space>\r\n </div>\r\n )\r\n },\r\n header: () => column.children?.head?.(),\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderColumngroupColumn = (column) => {\r\n const { head, headAlign = 'center' } = column\r\n const { children } = column\r\n\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n v-slots={{\r\n default: (scope) => {\r\n return renderColumns(children)\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderDiyColumn = (column) => {\r\n const { name, head, headAlign = 'center', width, fixed } = column\r\n\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n v-slots={{\r\n default: (scope) => {\r\n const children = column.children?.default?.({\r\n rowData: scope.row,\r\n column,\r\n rowIndex: scope.$index,\r\n })\r\n\r\n return <div class=\"cell-diy\">{children} </div>\r\n },\r\n header: () => column.children?.head?.(),\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderColumns = (columns) => {\r\n return columns?.map((c) => {\r\n if (c.type === 'OEdittableColumnString') {\r\n return renderStringColumn(c)\r\n } else if (c.type === 'OEdittableColumnLov') {\r\n return renderLovColumn(c)\r\n } else if (c.type === 'OEdittableColumnCheckbox') {\r\n return renderCheckboxColumn(c)\r\n } else if (c.type === 'OEdittableColumnNumber') {\r\n return renderNumberColumn(c)\r\n } else if (c.type === 'OEdittableColumnDate') {\r\n return renderDateColumn(c)\r\n } else if (c.type === 'OEdittableColumnSingleselect') {\r\n return renderSingleSelectColumn(c)\r\n } else if (c.type === 'OEdittableColumnMultiselect') {\r\n return renderMultiSelectColumn(c)\r\n } else if (c.type === 'OEdittableColumnButtongroup') {\r\n return renderButtongroupColumn(c)\r\n } else if (c.type === 'OEdittableColumngroup') {\r\n return renderColumngroupColumn(c)\r\n } else if (c.type === 'OEdittableColumnDiy') {\r\n return renderDiyColumn(c)\r\n } else {\r\n throw new OrionError(`OEdittable不能正确渲染'${c.type}'子组件。`)\r\n }\r\n })\r\n }\r\n\r\n return (\r\n <div class={[cn, attrs.class]} style={[style.value, attrs.style as CSSProperties]}>\r\n <ElTable\r\n ref={elTableRef}\r\n border\r\n data={data}\r\n height={'100%'}\r\n style={{ width: '100%' }}\r\n onSelection-change={(rows) => emit('selectionChange', rows)}\r\n highlight-current-row={currentRowMode}\r\n onCurrent-change={(currentRow, oldCurrentRow) => emit('currentRowChange', currentRow, oldCurrentRow)}\r\n onRow-click={(row: any, column: any, event: Event) => emit('rowClick', row, { name: column.property, head: column.label }, event)}\r\n onRow-dblclick={(row: any, column: any, event: Event) => emit('rowDblclick', row, { name: column.property, head: column.label }, event)}\r\n onCell-click={(row: any, column: any, cell: any, event: Event) =>\r\n emit('cellClick', row, { name: column.property, head: column.label }, cell, event)\r\n }\r\n onCell-dblclick={(row: any, column: any, cell: any, event: Event) =>\r\n emit('cellDblclick', row, { name: column.property, head: column.label }, cell, event)\r\n }\r\n size={size}\r\n rowClassName={(data: { row: any; rowIndex: number }) => {\r\n if (typeof rowClassName === 'string') {\r\n return rowClassName\r\n } else if (typeof rowClassName === 'function') {\r\n return rowClassName({ rowData: data.row, rowIndex: data.rowIndex })\r\n } else {\r\n return 'row-class-name_not_valid'\r\n }\r\n }}\r\n rowStyle={(data: { row: any; rowIndex: number }) => {\r\n if (typeof rowStyle === 'function') {\r\n return rowStyle({ rowData: data.row, rowIndex: data.rowIndex })\r\n } else if (typeof rowStyle === 'object') {\r\n return rowStyle\r\n } else {\r\n return {}\r\n }\r\n }}\r\n cellClassName={(data: { row: any; column: any; rowIndex: number; columnIndex: number }) => {\r\n if (typeof cellClassName === 'string') {\r\n return cellClassName\r\n } else if (typeof cellClassName === 'function') {\r\n return cellClassName({\r\n rowData: data.row,\r\n column: { name: data.column.property, head: data.column.label },\r\n rowIndex: data.rowIndex,\r\n columnIndex: data.columnIndex,\r\n })\r\n } else {\r\n return 'cell-class-name_not_valid'\r\n }\r\n }}\r\n cellStyle={(data: { row: any; column: any; rowIndex: number; columnIndex: number }) => {\r\n if (typeof cellStyle === 'function') {\r\n return cellStyle({\r\n rowData: data.row,\r\n column: { name: data.column.property, head: data.column.label },\r\n rowIndex: data.rowIndex,\r\n columnIndex: data.columnIndex,\r\n })\r\n } else if (typeof cellStyle === 'object') {\r\n return cellStyle\r\n } else {\r\n return {}\r\n }\r\n }}\r\n >\r\n {showRowNumber && renderIndexColumn()}\r\n {selectionMode && renderSelectionColumn()}\r\n {renderColumns(columns.value)}\r\n </ElTable>\r\n </div>\r\n )\r\n }\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes } from 'vue'\r\n\r\n\r\nexport const edittableColumnIndexProps = () => ({})\r\n\r\nexport type QuerytableColumnIndexProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnIndexProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OQuerytableColumnIndex',\r\n inheritAttrs: false,\r\n props: edittableColumnIndexProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType } from 'vue'\r\n\r\nexport const edittableColumnStringProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // input属性\r\n maxlength: [String, Number],\r\n placeholder: String,\r\n})\r\n\r\nexport type EdittableColumnStringProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnStringProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnString',\r\n inheritAttrs: false,\r\n props: edittableColumnStringProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType, SlotsType } from 'vue'\r\n\r\nexport const edittableColumnLovProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // input属性\r\n maxlength: [String, Number],\r\n placeholder: String,\r\n fillMapping: [String, Function] as PropType<string | ((row: any, params: Record<string, any>) => void)>,\r\n})\r\n\r\nexport type EdittableColumnLovProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnLovProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnLov',\r\n inheritAttrs: false,\r\n props: edittableColumnLovProps(),\r\n slots: Object as SlotsType<{\r\n default: any\r\n }>,\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { PropType, ExtractPropTypes } from 'vue'\r\n\r\nexport const edittableColumnLinkProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n})\r\n\r\nexport type EdittableColumnLinkProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnLinkProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnCheckbox',\r\n inheritAttrs: false,\r\n props: edittableColumnLinkProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType } from 'vue'\r\n\r\nexport const edittableColumnNumberProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 千位分隔符\r\n thousandsSeparator: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n // 百分比形式\r\n percentage: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // input属性\r\n placeholder: String,\r\n min: Number,\r\n max: Number,\r\n step: Number,\r\n stepStrictly: Boolean,\r\n precision: Number,\r\n controls: Boolean,\r\n controlsPosition: String as PropType<'' | 'right'>,\r\n})\r\n\r\nexport type EdittableColumnNumberProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnNumberProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnNumber',\r\n inheritAttrs: false,\r\n props: edittableColumnNumberProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType } from 'vue'\r\n\r\nexport const edittableColumnDateProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // input属性\r\n maxlength: [String, Number],\r\n placeholder: String,\r\n clearable: Boolean,\r\n format: String,\r\n sourceFormat: String,\r\n})\r\n\r\nexport type EdittableColumnDateProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnDateProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnDate',\r\n inheritAttrs: false,\r\n props: edittableColumnDateProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType } from 'vue'\r\n\r\nexport const edittableColumnSingleselectProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // code\r\n code: [String, Array] as PropType<string | { value: string; content: string }[] | ((row: any) => { value: string; content: string }[])>,\r\n // input属性\r\n placeholder: String,\r\n clearable: Boolean,\r\n filterable: Boolean,\r\n})\r\n\r\nexport type EdittableColumnSingleselectProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnSingleselectProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnSingleselect',\r\n inheritAttrs: false,\r\n props: edittableColumnSingleselectProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { PropType, ExtractPropTypes } from 'vue'\r\n\r\nexport const edittableColumnMultiselectProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // code\r\n code: [String, Array] as PropType<string | { value: string; content: string }[] | ((row: any) => { value: string; content: string }[])>,\r\n // input属性\r\n placeholder: String,\r\n collapseTags: Boolean,\r\n collapseTagsTooltip: Boolean,\r\n})\r\n\r\nexport type EdittableColumnMultiselectProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnMultiselectProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnMultiselect',\r\n inheritAttrs: false,\r\n props: edittableColumnMultiselectProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType, SlotsType } from 'vue'\r\n\r\n\r\nexport const edittableColumnButtongroupProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n})\r\n\r\nexport type EdittableColumnButtongroupProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnButtongroupProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnButtongroup',\r\n inheritAttrs: false,\r\n props: edittableColumnButtongroupProps(),\r\n slots: Object as SlotsType<{\r\n default: any\r\n }>,\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes } from 'vue'\r\nimport { ElButton } from 'element-plus'\r\n\r\n\r\nexport const edittableCellButtonProps = () => ({\r\n type: String,\r\n})\r\n\r\nexport type EdittableCellButtonProps = Partial<ExtractPropTypes<ReturnType<typeof edittableCellButtonProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableCellButton',\r\n inheritAttrs: false,\r\n props: edittableCellButtonProps(),\r\n emits: ['click'],\r\n setup(props, { slots, attrs, emit, expose }) {\r\n const handleClick = (event: Event) => {\r\n emit('click', event)\r\n }\r\n\r\n return () => {\r\n const { type } = props\r\n const children = slots.default?.()\r\n\r\n return (\r\n <ElButton link type={type} size=\"small\" onClick={handleClick}>\r\n {children}\r\n </ElButton>\r\n )\r\n }\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType } from 'vue'\r\n\r\n\r\nexport const edittableColumngroupProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n})\r\n\r\nexport type EdittableColumngroupProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumngroupProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumngroup',\r\n inheritAttrs: false,\r\n props: edittableColumngroupProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { PropType, ExtractPropTypes, SlotsType } from 'vue'\r\n\r\n\r\nexport const edittableColumnDiyProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n})\r\n\r\nexport type EdittableColumnDiyProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnDiyProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnDiy',\r\n inheritAttrs: false,\r\n props: edittableColumnDiyProps(),\r\n slots: Object as SlotsType<{\r\n default: any\r\n }>,\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { withInstall } from '../_util'\r\n\r\nimport Edittable from './Edittable'\r\nimport EdittableColumnIndex from './columns/EdittableColumnIndex'\r\nimport EdittableColumnString from './columns/EdittableColumnString'\r\nimport EdittableColumnLov from './columns/EdittableColumnLov'\r\nimport EdittableColumnCheckbox from './columns/EdittableColumnCheckbox'\r\nimport EdittableColumnNumber from './columns/EdittableColumnNumber'\r\nimport EdittableColumnDate from './columns/EdittableColumnDate'\r\nimport EdittableColumnSingleselect from './columns/EdittableColumnSingleselect'\r\nimport EdittableColumnMultiselect from './columns/EdittableColumnMultiselect'\r\nimport EdittableColumnButtongroup from './columns/EdittableColumnButtongroup'\r\nimport EdittableCellButton from './columns/EdittableCellButton'\r\nimport EdittableColumngroup from './columns/EdittableColumngroup'\r\nimport EdittableColumnDiy from './columns/EdittableColumnDiy'\r\n\r\nexport type { EdittableProps } from './Edittable'\r\n\r\nexport default withInstall<\r\n typeof Edittable,\r\n {\r\n EdittableColumnIndex: typeof EdittableColumnIndex\r\n EdittableColumnString: typeof EdittableColumnString\r\n EdittableColumnLov: typeof EdittableColumnLov\r\n EdittableColumnCheckbox: typeof EdittableColumnCheckbox\r\n EdittableColumnNumber: typeof EdittableColumnNumber\r\n EdittableColumnDate: typeof EdittableColumnDate\r\n EdittableColumnSingleselect: typeof EdittableColumnSingleselect\r\n EdittableColumnMultiselect: typeof EdittableColumnMultiselect\r\n EdittableColumnButtongroup: typeof EdittableColumnButtongroup\r\n EdittableCellButton: typeof EdittableCellButton\r\n EdittableColumngroup: typeof EdittableColumngroup\r\n EdittableColumnDiy: typeof EdittableColumnDiy\r\n }\r\n>(Edittable, {\r\n EdittableColumnIndex,\r\n EdittableColumnString,\r\n EdittableColumnLov,\r\n EdittableColumnCheckbox,\r\n EdittableColumnNumber,\r\n EdittableColumnDate,\r\n EdittableColumnSingleselect,\r\n EdittableColumnMultiselect,\r\n EdittableColumnButtongroup,\r\n EdittableCellButton,\r\n EdittableColumngroup,\r\n EdittableColumnDiy,\r\n})\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","edittableProps","data","Array","showRowNumber","type","Boolean","default","selectionMode","currentRowMode","size","String","rowClassName","Function","rowStyle","cellClassName","cellStyle","isCellEditable","editable","cellEditable","row","getCodeData","code","isString","isArray","useCode","value","isFunction","defineComponent","name","inheritAttrs","props","emits","setup","slots","attrs","emit","expose","elTableRef","ref","style","computed","columns","useColumns","clearSelection","getSelectionRows","toggleRowSelection","args","toggleAllSelection","setCurrentRow","scrollTo","cn","classNames","renderIndexColumn","_createVNode","ElTableColumn","index","renderSelectionColumn","renderStringColumn","column","head","headAlign","bodyAlign","width","fixed","maxlength","placeholder","header","children","scope","elRow","elColumn","isEditable","cellValue","property","OStringInput","renderLovColumn","fillMapping","elChildren","rowData","rowIndex","$index","OLovInput","onClear","pairs","split","i","length","dstName","trim","undefined","params","srcName","srcValue","renderCheckboxColumn","OCheckbox","renderNumberColumn","thousandsSeparator","percentage","min","max","step","stepStrictly","precision","controls","controlsPosition","ONumberInput","number2string","renderDateColumn","clearable","format","sourceFormat","ODateInput","Date","dayjs","isDayjs","formatDate","renderSingleSelectColumn","filterable","codeContent","codeData","getSingleCodeContent","OSingleSelect","renderMultiSelectColumn","collapseTags","collapseTagsTooltip","getMultiCodeContent","OMultiSelect","renderButtongroupColumn","Space","renderColumngroupColumn","renderColumns","renderDiyColumn","_createTextVNode","map","c","OrionError","class","ElTable","rows","onCurrent-change","currentRow","oldCurrentRow","onRow-click","event","label","onRow-dblclick","onCell-click","cell","onCell-dblclick","columnIndex","edittableColumnIndexProps","edittableColumnStringProps","Number","edittableColumnLovProps","edittableColumnLinkProps","edittableColumnNumberProps","edittableColumnDateProps","edittableColumnSingleselectProps","edittableColumnMultiselectProps","edittableColumnButtongroupProps","edittableCellButtonProps","handleClick","ElButton","edittableColumngroupProps","edittableColumnDiyProps","withInstall","Edittable","EdittableColumnIndex","EdittableColumnString","EdittableColumnLov","EdittableColumnCheckbox","EdittableColumnNumber","EdittableColumnDate","EdittableColumnSingleselect","EdittableColumnMultiselect","EdittableColumnButtongroup","EdittableCellButton","EdittableColumngroup","EdittableColumnDiy"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Edittable/Edittable.tsx","../../../src/components/Edittable/columns/EdittableColumnIndex.tsx","../../../src/components/Edittable/columns/EdittableColumnString.tsx","../../../src/components/Edittable/columns/EdittableColumnLov.tsx","../../../src/components/Edittable/columns/EdittableColumnCheckbox.tsx","../../../src/components/Edittable/columns/EdittableColumnNumber.tsx","../../../src/components/Edittable/columns/EdittableColumnDate.tsx","../../../src/components/Edittable/columns/EdittableColumnSingleselect.tsx","../../../src/components/Edittable/columns/EdittableColumnMultiselect.tsx","../../../src/components/Edittable/columns/EdittableColumnButtongroup.tsx","../../../src/components/Edittable/columns/EdittableCellButton.tsx","../../../src/components/Edittable/columns/EdittableColumngroup.tsx","../../../src/components/Edittable/columns/EdittableColumnDiy.tsx","../../../src/components/Edittable/index.ts"],"sourcesContent":["import { computed, defineComponent, ref } from 'vue'\r\nimport type { PropType, ExtractPropTypes, CSSProperties, ComponentPublicInstance, ComputedRef } from 'vue'\r\nimport classNames from '../_antd_util/classNames'\r\nimport { ElTable, ElTableColumn } from 'element-plus'\r\n\r\nimport { formatDate, number2string, getSingleCodeContent, getMultiCodeContent } from './utils'\r\nimport dayjs from 'dayjs'\r\nimport { isArray, isFunction, isString } from 'lodash-es'\r\nimport Space from '../Space'\r\nimport OrionError from '../../error/OrionError'\r\n\r\nimport useColumns from './hooks/useColumns'\r\nimport useCode from '../Pagetable/hooks/useCode'\r\n\r\nimport OStringInput from '../Input/StringInput/StringInput.vue'\r\nimport OSingleSelect from '../Input/SingleSelect/SingleSelect.vue'\r\nimport OMultiSelect from '../Input/MultiSelect/MultiSelect.vue'\r\nimport ODateInput from '../Input/DateInput/DateInput.vue'\r\nimport ONumberInput from '../Input/NumberInput/NumberInput.vue'\r\nimport OCheckbox from '../Input/Checkbox/Checkbox.vue'\r\nimport OLovInput from '../Input/LovInput/LovInput.vue'\r\n\r\ntype rowClassNameFn = (data: { rowData: any; rowIndex: number }) => string\r\ntype rowStyleFn = (data: { rowData: any; rowIndex: number }) => CSSProperties\r\ntype cellClassNameFn = (data: { rowData: any; column: { name: string; head: string }; rowIndex: number; columnIndex: number }) => string\r\ntype cellStyleFn = (data: { rowData: any; column: { name: string; head: string }; rowIndex: number; columnIndex: number }) => CSSProperties\r\n\r\nexport const edittableProps = () => ({\r\n data: Array,\r\n showRowNumber: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n selectionMode: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n currentRowMode: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n size: String as PropType<'' | 'large' | 'default' | 'small'>,\r\n rowClassName: [String, Function] as PropType<string | rowClassNameFn>,\r\n rowStyle: [Object, Function] as PropType<CSSProperties | rowStyleFn>,\r\n cellClassName: [String, Function] as PropType<string | cellClassNameFn>,\r\n cellStyle: [Object, Function] as PropType<CSSProperties | cellStyleFn>,\r\n})\r\n\r\nexport type EdittableProps = Partial<ExtractPropTypes<ReturnType<typeof edittableProps>>>\r\n\r\nexport interface EdittableExpose {\r\n clearSelection: () => void\r\n toggleRowSelection: (row: any, selected?: boolean) => void\r\n toggleAllSelection: () => void\r\n getSelectionRows: () => any[]\r\n setCurrentRow: (row: any) => void\r\n columns: ComputedRef<any[]>\r\n}\r\n\r\nexport type EdittableInstance = ComponentPublicInstance<EdittableProps, EdittableExpose>\r\n\r\nconst isCellEditable = (editable = true, cellEditable: any, row: any) => {\r\n if (!editable) {\r\n return false\r\n }\r\n if (!cellEditable) {\r\n return true\r\n }\r\n return cellEditable(row)\r\n}\r\n\r\nconst getCodeData = (code: any, row: any) => {\r\n if (isString(code) || isArray(code)) {\r\n return useCode(code).value\r\n } else if (isFunction(code)) {\r\n return code(row)\r\n } else {\r\n return null\r\n }\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'OEdittable',\r\n inheritAttrs: false,\r\n props: edittableProps(),\r\n emits: ['selectionChange', 'currentRowChange', 'rowClick', 'rowDblclick', 'cellClick', 'cellDblclick'],\r\n setup(props, { slots, attrs, emit, expose }) {\r\n const elTableRef = ref()\r\n\r\n const style = computed(() => {\r\n const rowStyle: CSSProperties = {}\r\n\r\n return rowStyle\r\n })\r\n\r\n const columns = useColumns(slots)\r\n\r\n const clearSelection = () => {\r\n elTableRef.value.clearSelection()\r\n }\r\n\r\n const getSelectionRows = () => {\r\n return elTableRef.value.getSelectionRows()\r\n }\r\n\r\n const toggleRowSelection = (...args) => {\r\n return elTableRef.value.toggleRowSelection(...args)\r\n }\r\n\r\n const toggleAllSelection = () => {\r\n return elTableRef.value.toggleAllSelection()\r\n }\r\n\r\n const setCurrentRow = (...args) => {\r\n return elTableRef.value.setCurrentRow(...args)\r\n }\r\n\r\n const scrollTo = (...args) => {\r\n return elTableRef.value.scrollTo(...args)\r\n }\r\n\r\n expose({\r\n clearSelection,\r\n getSelectionRows,\r\n toggleRowSelection,\r\n toggleAllSelection,\r\n setCurrentRow,\r\n scrollTo,\r\n })\r\n\r\n return () => {\r\n const { data } = props\r\n const { selectionMode = false } = props\r\n const { showRowNumber = true } = props\r\n const { currentRowMode = false } = props\r\n const { size = 'default' } = props\r\n const { rowClassName, rowStyle, cellClassName, cellStyle } = props\r\n\r\n const cn = classNames('orion-edittable')\r\n\r\n const renderIndexColumn = () => {\r\n return (\r\n <ElTableColumn\r\n type={'index'}\r\n label=\"No\"\r\n headerAlign={'center'}\r\n align={'center'}\r\n width={56}\r\n fixed={'left'}\r\n showOverflowTooltip={true}\r\n index={(index: number) => {\r\n return index + 1\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderSelectionColumn = () => {\r\n return <ElTableColumn type={'selection'} headerAlign={'center'} align={'center'} width={40} fixed={'left'}></ElTableColumn>\r\n }\r\n\r\n const renderStringColumn = (column) => {\r\n const { name, head, headAlign = 'center', bodyAlign, width, fixed, editable, cellEditable, maxlength, placeholder } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n return isEditable ? (\r\n <OStringInput\r\n modelValue={cellValue}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n maxlength={maxlength}\r\n placeholder={placeholder}\r\n ></OStringInput>\r\n ) : (\r\n <div class=\"cell-stringinput\">{cellValue}</div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderLovColumn = (column) => {\r\n const { name, head, headAlign = 'center', bodyAlign, width, fixed, editable, cellEditable, maxlength, placeholder, fillMapping } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const elChildren = column.children?.default?.({\r\n rowData: elRow,\r\n column: elColumn,\r\n rowIndex: scope.$index,\r\n })\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n return isEditable ? (\r\n <OLovInput\r\n modelValue={cellValue}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n maxlength={maxlength}\r\n placeholder={placeholder}\r\n onClear={() => {\r\n if (isString(fillMapping)) {\r\n const pairs = fillMapping.split(',')\r\n for (let i = 0; i < pairs.length; i++) {\r\n const dstName = pairs[i].split(':')[0].trim()\r\n elRow[dstName] = undefined\r\n }\r\n }\r\n }}\r\n onSelect={(params) => {\r\n if (isString(fillMapping)) {\r\n const pairs = fillMapping.split(',')\r\n for (let i = 0; i < pairs.length; i++) {\r\n const dstName = pairs[i].split(':')[0].trim()\r\n const srcName = pairs[i].split(':')[1].trim()\r\n const srcValue = params[srcName]\r\n elRow[dstName] = srcValue\r\n }\r\n } else {\r\n fillMapping && fillMapping(elRow, params)\r\n }\r\n }}\r\n >\r\n {elChildren}\r\n </OLovInput>\r\n ) : (\r\n <div class=\"cell-lovinput\">{cellValue}</div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderCheckboxColumn = (column) => {\r\n const { name, head, headAlign = 'center', bodyAlign = 'center', width, fixed, editable, cellEditable } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n return (\r\n <div class=\"cell-checkbox\">\r\n <OCheckbox\r\n modelValue={cellValue}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n disabled={!isEditable}\r\n ></OCheckbox>\r\n </div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderNumberColumn = (column) => {\r\n const {\r\n name,\r\n head,\r\n headAlign = 'center',\r\n bodyAlign = 'right',\r\n width,\r\n fixed,\r\n thousandsSeparator = true,\r\n percentage = false,\r\n editable,\r\n cellEditable,\r\n placeholder,\r\n min,\r\n max,\r\n step,\r\n stepStrictly,\r\n precision,\r\n controls = false,\r\n controlsPosition,\r\n } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n return isEditable ? (\r\n <ONumberInput\r\n modelValue={cellValue}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n placeholder={placeholder}\r\n min={min}\r\n max={max}\r\n step={step}\r\n stepStrictly={stepStrictly}\r\n precision={precision}\r\n controls={controls}\r\n controlsPosition={controlsPosition}\r\n ></ONumberInput>\r\n ) : (\r\n <div class=\"cell-numberinput\">{number2string(cellValue, thousandsSeparator, precision, percentage === true || percentage === '')}</div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderDateColumn = (column) => {\r\n const {\r\n name,\r\n head,\r\n headAlign = 'center',\r\n bodyAlign = 'center',\r\n width,\r\n fixed,\r\n editable,\r\n cellEditable,\r\n maxlength,\r\n placeholder,\r\n clearable = false,\r\n format = 'YYYYMMDDHHmmss',\r\n sourceFormat,\r\n } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n if (isEditable) {\r\n return (\r\n <ODateInput\r\n modelValue={elRow[elColumn.property]}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n maxlength={maxlength}\r\n placeholder={placeholder}\r\n clearable={clearable}\r\n format={format}\r\n sourceFormat={sourceFormat}\r\n ></ODateInput>\r\n )\r\n }\r\n if (cellValue instanceof Date || dayjs.isDayjs(cellValue)) {\r\n return <div class=\"cell-dateinput\">{formatDate(cellValue, format)}</div>\r\n } else {\r\n if (sourceFormat && format) {\r\n return <div class=\"cell-dateinput\">{formatDate(cellValue, sourceFormat, format)}</div>\r\n } else {\r\n return <div class=\"cell-dateinput\">{cellValue}</div>\r\n }\r\n }\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderSingleSelectColumn = (column) => {\r\n const { name, head, headAlign = 'center', bodyAlign, width, fixed, editable, cellEditable, code, placeholder, clearable, filterable } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n let codeContent: string | null\r\n const codeData = getCodeData(code, elRow)\r\n if (!codeData) {\r\n codeContent = null\r\n } else {\r\n codeContent = getSingleCodeContent(codeData, cellValue)\r\n }\r\n\r\n return isEditable ? (\r\n <OSingleSelect\r\n modelValue={elRow[elColumn.property]}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n code={codeData}\r\n placeholder={placeholder}\r\n clearable={clearable}\r\n filterable={filterable}\r\n ></OSingleSelect>\r\n ) : (\r\n <div class=\"cell-singleselect\">{codeContent}</div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderMultiSelectColumn = (column) => {\r\n const {\r\n name,\r\n head,\r\n headAlign = 'center',\r\n bodyAlign,\r\n width,\r\n fixed,\r\n editable,\r\n cellEditable,\r\n code,\r\n placeholder,\r\n collapseTags = true,\r\n collapseTagsTooltip,\r\n } = column\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n showOverflowTooltip={true}\r\n v-slots={{\r\n header: () => column.children?.head?.(),\r\n default: (scope: any) => {\r\n const { row: elRow, column: elColumn } = scope\r\n const isEditable = isCellEditable(editable, cellEditable, elRow)\r\n const cellValue = elRow[elColumn.property]\r\n\r\n let codeContent: string | null\r\n const codeData = getCodeData(code, elRow)\r\n if (!codeData) {\r\n codeContent = null\r\n } else {\r\n codeContent = getMultiCodeContent(codeData, cellValue)\r\n }\r\n\r\n return isEditable ? (\r\n <OMultiSelect\r\n modelValue={elRow[elColumn.property]}\r\n onUpdate:modelValue={(value) => {\r\n elRow[elColumn.property] = value\r\n }}\r\n code={codeData}\r\n placeholder={placeholder}\r\n collapseTags={collapseTags}\r\n collapseTagsTooltip={collapseTagsTooltip}\r\n ></OMultiSelect>\r\n ) : (\r\n <div class=\"cell-multiselect\">{codeContent}</div>\r\n )\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderButtongroupColumn = (column) => {\r\n const { name, head, headAlign = 'center', bodyAlign, width, fixed } = column\r\n\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n align={bodyAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n v-slots={{\r\n default: (scope) => {\r\n const children = column.children?.default?.({\r\n rowData: scope.row,\r\n column,\r\n rowIndex: scope.$index,\r\n })\r\n\r\n return (\r\n <div class=\"cell-buttongroup\">\r\n <Space>{children}</Space>\r\n </div>\r\n )\r\n },\r\n header: () => column.children?.head?.(),\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderColumngroupColumn = (column) => {\r\n const { head, headAlign = 'center' } = column\r\n const { children } = column\r\n\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n v-slots={{\r\n default: (scope) => {\r\n return renderColumns(children)\r\n },\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderDiyColumn = (column) => {\r\n const { name, head, headAlign = 'center', width, fixed } = column\r\n\r\n return (\r\n <ElTableColumn\r\n label={head}\r\n headerAlign={headAlign}\r\n prop={name}\r\n width={width}\r\n fixed={fixed}\r\n v-slots={{\r\n default: (scope) => {\r\n const children = column.children?.default?.({\r\n rowData: scope.row,\r\n column,\r\n rowIndex: scope.$index,\r\n })\r\n\r\n return <div class=\"cell-diy\">{children} </div>\r\n },\r\n header: () => column.children?.head?.(),\r\n }}\r\n ></ElTableColumn>\r\n )\r\n }\r\n\r\n const renderColumns = (columns) => {\r\n return columns?.map((c) => {\r\n if (c.type === 'OEdittableColumnString') {\r\n return renderStringColumn(c)\r\n } else if (c.type === 'OEdittableColumnLov') {\r\n return renderLovColumn(c)\r\n } else if (c.type === 'OEdittableColumnCheckbox') {\r\n return renderCheckboxColumn(c)\r\n } else if (c.type === 'OEdittableColumnNumber') {\r\n return renderNumberColumn(c)\r\n } else if (c.type === 'OEdittableColumnDate') {\r\n return renderDateColumn(c)\r\n } else if (c.type === 'OEdittableColumnSingleselect') {\r\n return renderSingleSelectColumn(c)\r\n } else if (c.type === 'OEdittableColumnMultiselect') {\r\n return renderMultiSelectColumn(c)\r\n } else if (c.type === 'OEdittableColumnButtongroup') {\r\n return renderButtongroupColumn(c)\r\n } else if (c.type === 'OEdittableColumngroup') {\r\n return renderColumngroupColumn(c)\r\n } else if (c.type === 'OEdittableColumnDiy') {\r\n return renderDiyColumn(c)\r\n } else {\r\n throw new OrionError(`OEdittable不能正确渲染'${c.type}'子组件。`)\r\n }\r\n })\r\n }\r\n\r\n return (\r\n <div class={[cn, attrs.class]} style={[style.value, attrs.style as CSSProperties]}>\r\n <ElTable\r\n ref={elTableRef}\r\n border\r\n data={data}\r\n height={'100%'}\r\n style={{ width: '100%' }}\r\n onSelection-change={(rows) => emit('selectionChange', rows)}\r\n highlight-current-row={currentRowMode}\r\n onCurrent-change={(currentRow, oldCurrentRow) => emit('currentRowChange', currentRow, oldCurrentRow)}\r\n onRow-click={(row: any, column: any, event: Event) => emit('rowClick', row, { name: column.property, head: column.label }, event)}\r\n onRow-dblclick={(row: any, column: any, event: Event) => emit('rowDblclick', row, { name: column.property, head: column.label }, event)}\r\n onCell-click={(row: any, column: any, cell: any, event: Event) =>\r\n emit('cellClick', row, { name: column.property, head: column.label }, cell, event)\r\n }\r\n onCell-dblclick={(row: any, column: any, cell: any, event: Event) =>\r\n emit('cellDblclick', row, { name: column.property, head: column.label }, cell, event)\r\n }\r\n size={size}\r\n rowClassName={(data: { row: any; rowIndex: number }) => {\r\n if (typeof rowClassName === 'string') {\r\n return rowClassName\r\n } else if (typeof rowClassName === 'function') {\r\n return rowClassName({ rowData: data.row, rowIndex: data.rowIndex })\r\n } else {\r\n return 'row-class-name_not_valid'\r\n }\r\n }}\r\n rowStyle={(data: { row: any; rowIndex: number }) => {\r\n if (typeof rowStyle === 'function') {\r\n return rowStyle({ rowData: data.row, rowIndex: data.rowIndex })\r\n } else if (typeof rowStyle === 'object') {\r\n return rowStyle\r\n } else {\r\n return {}\r\n }\r\n }}\r\n cellClassName={(data: { row: any; column: any; rowIndex: number; columnIndex: number }) => {\r\n if (typeof cellClassName === 'string') {\r\n return cellClassName\r\n } else if (typeof cellClassName === 'function') {\r\n return cellClassName({\r\n rowData: data.row,\r\n column: { name: data.column.property, head: data.column.label },\r\n rowIndex: data.rowIndex,\r\n columnIndex: data.columnIndex,\r\n })\r\n } else {\r\n return 'cell-class-name_not_valid'\r\n }\r\n }}\r\n cellStyle={(data: { row: any; column: any; rowIndex: number; columnIndex: number }) => {\r\n if (typeof cellStyle === 'function') {\r\n return cellStyle({\r\n rowData: data.row,\r\n column: { name: data.column.property, head: data.column.label },\r\n rowIndex: data.rowIndex,\r\n columnIndex: data.columnIndex,\r\n })\r\n } else if (typeof cellStyle === 'object') {\r\n return cellStyle\r\n } else {\r\n return {}\r\n }\r\n }}\r\n >\r\n {showRowNumber && renderIndexColumn()}\r\n {selectionMode && renderSelectionColumn()}\r\n {renderColumns(columns.value)}\r\n </ElTable>\r\n </div>\r\n )\r\n }\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes } from 'vue'\r\n\r\n\r\nexport const edittableColumnIndexProps = () => ({})\r\n\r\nexport type QuerytableColumnIndexProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnIndexProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OQuerytableColumnIndex',\r\n inheritAttrs: false,\r\n props: edittableColumnIndexProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType } from 'vue'\r\n\r\nexport const edittableColumnStringProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // input属性\r\n maxlength: [String, Number],\r\n placeholder: String,\r\n})\r\n\r\nexport type EdittableColumnStringProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnStringProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnString',\r\n inheritAttrs: false,\r\n props: edittableColumnStringProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType, SlotsType } from 'vue'\r\n\r\nexport const edittableColumnLovProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // input属性\r\n maxlength: [String, Number],\r\n placeholder: String,\r\n fillMapping: [String, Function] as PropType<string | ((row: any, params: Record<string, any>) => void)>,\r\n})\r\n\r\nexport type EdittableColumnLovProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnLovProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnLov',\r\n inheritAttrs: false,\r\n props: edittableColumnLovProps(),\r\n slots: Object as SlotsType<{\r\n default: any\r\n }>,\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { PropType, ExtractPropTypes } from 'vue'\r\n\r\nexport const edittableColumnLinkProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n})\r\n\r\nexport type EdittableColumnLinkProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnLinkProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnCheckbox',\r\n inheritAttrs: false,\r\n props: edittableColumnLinkProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType } from 'vue'\r\n\r\nexport const edittableColumnNumberProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 千位分隔符\r\n thousandsSeparator: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n // 百分比形式\r\n percentage: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // input属性\r\n placeholder: String,\r\n min: Number,\r\n max: Number,\r\n step: Number,\r\n stepStrictly: Boolean,\r\n precision: Number,\r\n controls: Boolean,\r\n controlsPosition: String as PropType<'' | 'right'>,\r\n})\r\n\r\nexport type EdittableColumnNumberProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnNumberProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnNumber',\r\n inheritAttrs: false,\r\n props: edittableColumnNumberProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType } from 'vue'\r\n\r\nexport const edittableColumnDateProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // input属性\r\n maxlength: [String, Number],\r\n placeholder: String,\r\n clearable: Boolean,\r\n format: String,\r\n sourceFormat: String,\r\n})\r\n\r\nexport type EdittableColumnDateProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnDateProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnDate',\r\n inheritAttrs: false,\r\n props: edittableColumnDateProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType } from 'vue'\r\n\r\nexport const edittableColumnSingleselectProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // code\r\n code: [String, Array] as PropType<string | { value: string; content: string }[] | ((row: any) => { value: string; content: string }[])>,\r\n // input属性\r\n placeholder: String,\r\n clearable: Boolean,\r\n filterable: Boolean,\r\n})\r\n\r\nexport type EdittableColumnSingleselectProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnSingleselectProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnSingleselect',\r\n inheritAttrs: false,\r\n props: edittableColumnSingleselectProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { PropType, ExtractPropTypes } from 'vue'\r\n\r\nexport const edittableColumnMultiselectProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n // 是否可编辑\r\n editable: Boolean,\r\n cellEditable: Boolean,\r\n // code\r\n code: [String, Array] as PropType<string | { value: string; content: string }[] | ((row: any) => { value: string; content: string }[])>,\r\n // input属性\r\n placeholder: String,\r\n collapseTags: Boolean,\r\n collapseTagsTooltip: Boolean,\r\n})\r\n\r\nexport type EdittableColumnMultiselectProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnMultiselectProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnMultiselect',\r\n inheritAttrs: false,\r\n props: edittableColumnMultiselectProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType, SlotsType } from 'vue'\r\n\r\n\r\nexport const edittableColumnButtongroupProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n bodyAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n})\r\n\r\nexport type EdittableColumnButtongroupProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnButtongroupProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnButtongroup',\r\n inheritAttrs: false,\r\n props: edittableColumnButtongroupProps(),\r\n slots: Object as SlotsType<{\r\n default: any\r\n }>,\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes } from 'vue'\r\nimport { ElButton } from 'element-plus'\r\n\r\n\r\nexport const edittableCellButtonProps = () => ({\r\n type: String,\r\n})\r\n\r\nexport type EdittableCellButtonProps = Partial<ExtractPropTypes<ReturnType<typeof edittableCellButtonProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableCellButton',\r\n inheritAttrs: false,\r\n props: edittableCellButtonProps(),\r\n emits: ['click'],\r\n setup(props, { slots, attrs, emit, expose }) {\r\n const handleClick = (event: Event) => {\r\n emit('click', event)\r\n }\r\n\r\n return () => {\r\n const { type } = props\r\n const children = slots.default?.()\r\n\r\n return (\r\n <ElButton link type={type} size=\"small\" onClick={handleClick}>\r\n {children}\r\n </ElButton>\r\n )\r\n }\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { ExtractPropTypes, PropType } from 'vue'\r\n\r\n\r\nexport const edittableColumngroupProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n})\r\n\r\nexport type EdittableColumngroupProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumngroupProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumngroup',\r\n inheritAttrs: false,\r\n props: edittableColumngroupProps(),\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { defineComponent } from 'vue'\r\nimport type { PropType, ExtractPropTypes, SlotsType } from 'vue'\r\n\r\n\r\nexport const edittableColumnDiyProps = () => ({\r\n head: String,\r\n headAlign: String as PropType<'left' | 'right' | 'center'>,\r\n name: String,\r\n width: [String, Number],\r\n fixed: [Boolean, String],\r\n})\r\n\r\nexport type EdittableColumnDiyProps = Partial<ExtractPropTypes<ReturnType<typeof edittableColumnDiyProps>>>\r\n\r\nexport default defineComponent({\r\n name: 'OEdittableColumnDiy',\r\n inheritAttrs: false,\r\n props: edittableColumnDiyProps(),\r\n slots: Object as SlotsType<{\r\n default: any\r\n }>,\r\n setup(props, { slots, attrs, emit, expose }) {\r\n return () => null\r\n },\r\n})\r\n","import { withInstall } from '../_util'\r\n\r\nimport Edittable from './Edittable'\r\nimport EdittableColumnIndex from './columns/EdittableColumnIndex'\r\nimport EdittableColumnString from './columns/EdittableColumnString'\r\nimport EdittableColumnLov from './columns/EdittableColumnLov'\r\nimport EdittableColumnCheckbox from './columns/EdittableColumnCheckbox'\r\nimport EdittableColumnNumber from './columns/EdittableColumnNumber'\r\nimport EdittableColumnDate from './columns/EdittableColumnDate'\r\nimport EdittableColumnSingleselect from './columns/EdittableColumnSingleselect'\r\nimport EdittableColumnMultiselect from './columns/EdittableColumnMultiselect'\r\nimport EdittableColumnButtongroup from './columns/EdittableColumnButtongroup'\r\nimport EdittableCellButton from './columns/EdittableCellButton'\r\nimport EdittableColumngroup from './columns/EdittableColumngroup'\r\nimport EdittableColumnDiy from './columns/EdittableColumnDiy'\r\n\r\nexport default withInstall<\r\n typeof Edittable,\r\n {\r\n EdittableColumnIndex: typeof EdittableColumnIndex\r\n EdittableColumnString: typeof EdittableColumnString\r\n EdittableColumnLov: typeof EdittableColumnLov\r\n EdittableColumnCheckbox: typeof EdittableColumnCheckbox\r\n EdittableColumnNumber: typeof EdittableColumnNumber\r\n EdittableColumnDate: typeof EdittableColumnDate\r\n EdittableColumnSingleselect: typeof EdittableColumnSingleselect\r\n EdittableColumnMultiselect: typeof EdittableColumnMultiselect\r\n EdittableColumnButtongroup: typeof EdittableColumnButtongroup\r\n EdittableCellButton: typeof EdittableCellButton\r\n EdittableColumngroup: typeof EdittableColumngroup\r\n EdittableColumnDiy: typeof EdittableColumnDiy\r\n }\r\n>(Edittable, {\r\n EdittableColumnIndex,\r\n EdittableColumnString,\r\n EdittableColumnLov,\r\n EdittableColumnCheckbox,\r\n EdittableColumnNumber,\r\n EdittableColumnDate,\r\n EdittableColumnSingleselect,\r\n EdittableColumnMultiselect,\r\n EdittableColumnButtongroup,\r\n EdittableCellButton,\r\n EdittableColumngroup,\r\n EdittableColumnDiy,\r\n})\r\n\r\nexport * from './Edittable'\r\nexport { default as useEdittable } from './hooks/useEdittable'\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","edittableProps","data","Array","showRowNumber","type","Boolean","default","selectionMode","currentRowMode","size","String","rowClassName","Function","rowStyle","cellClassName","cellStyle","isCellEditable","editable","cellEditable","row","getCodeData","code","isString","isArray","useCode","value","isFunction","defineComponent","name","inheritAttrs","props","emits","setup","slots","attrs","emit","expose","elTableRef","ref","style","computed","columns","useColumns","clearSelection","getSelectionRows","toggleRowSelection","args","toggleAllSelection","setCurrentRow","scrollTo","cn","classNames","renderIndexColumn","_createVNode","ElTableColumn","index","renderSelectionColumn","renderStringColumn","column","head","headAlign","bodyAlign","width","fixed","maxlength","placeholder","header","children","scope","elRow","elColumn","isEditable","cellValue","property","OStringInput","renderLovColumn","fillMapping","elChildren","rowData","rowIndex","$index","OLovInput","onClear","pairs","split","i","length","dstName","trim","undefined","params","srcName","srcValue","renderCheckboxColumn","OCheckbox","renderNumberColumn","thousandsSeparator","percentage","min","max","step","stepStrictly","precision","controls","controlsPosition","ONumberInput","number2string","renderDateColumn","clearable","format","sourceFormat","ODateInput","Date","dayjs","isDayjs","formatDate","renderSingleSelectColumn","filterable","codeContent","codeData","getSingleCodeContent","OSingleSelect","renderMultiSelectColumn","collapseTags","collapseTagsTooltip","getMultiCodeContent","OMultiSelect","renderButtongroupColumn","Space","renderColumngroupColumn","renderColumns","renderDiyColumn","_createTextVNode","map","c","OrionError","class","ElTable","rows","onCurrent-change","currentRow","oldCurrentRow","onRow-click","event","label","onRow-dblclick","onCell-click","cell","onCell-dblclick","columnIndex","edittableColumnIndexProps","edittableColumnStringProps","Number","edittableColumnLovProps","edittableColumnLinkProps","edittableColumnNumberProps","edittableColumnDateProps","edittableColumnSingleselectProps","edittableColumnMultiselectProps","edittableColumnButtongroupProps","edittableCellButtonProps","handleClick","ElButton","edittableColumngroupProps","edittableColumnDiyProps","withInstall","Edittable","EdittableColumnIndex","EdittableColumnString","EdittableColumnLov","EdittableColumnCheckbox","EdittableColumnNumber","EdittableColumnDate","EdittableColumnSingleselect","EdittableColumnMultiselect","EdittableColumnButtongroup","EdittableCellButton","EdittableColumngroup","EdittableColumnDiy"],"mappings":"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"}
|
package/dist/components/index.js
CHANGED
@@ -1,81 +1,84 @@
|
|
1
|
-
import { c as
|
1
|
+
import { c as o } from "../components-D1sXVvN9.js";
|
2
2
|
import { T as s } from "../components-D1sXVvN9.js";
|
3
3
|
import { default as u } from "./Modal/index.js";
|
4
4
|
import { default as n } from "./Form/index.js";
|
5
|
-
import { OTree as
|
5
|
+
import { OTree as b, OTree as c } from "./Tree/index.js";
|
6
6
|
import { OMessage as T } from "./Message/index.js";
|
7
7
|
import { OMessageBox as g } from "./MessageBox/index.js";
|
8
|
-
import { default as
|
9
|
-
import { Checkbox as O, CheckboxGroup as h, DateInput as y, FileInput as M, LovInput as L, MultiSelect as k, NumberInput as w, PasswordInput as
|
10
|
-
import { default as D } from "./
|
11
|
-
import { default as
|
12
|
-
import {
|
13
|
-
import {
|
14
|
-
import {
|
15
|
-
import { default as
|
16
|
-
import { default as
|
8
|
+
import { default as P, pagetableProps as I } from "./Pagetable/index.js";
|
9
|
+
import { Checkbox as O, CheckboxGroup as h, DateInput as y, FileInput as M, LovInput as L, MultiSelect as k, NumberInput as w, PasswordInput as E, RadioGroup as F, SingleSelect as B, StringInput as G, Switch as K, TableSelect as Q, Textarea as R } from "./Input/index.js";
|
10
|
+
import { default as D, edittableProps as N } from "./Edittable/index.js";
|
11
|
+
import { default as z } from "./Button/index.js";
|
12
|
+
import { default as H } from "./Tooltip/index.js";
|
13
|
+
import { S as U } from "../index-CvcZkdiG.js";
|
14
|
+
import { Colflex as W, Flexitem as X, Rowflex as Y } from "./Flex/index.js";
|
15
|
+
import { default as _ } from "./Card/index.js";
|
16
|
+
import { default as ee } from "./Tabs/index.js";
|
17
17
|
import { default as oe } from "./Querytable/index.js";
|
18
|
-
import { LovPagetable as
|
19
|
-
import { default as
|
20
|
-
import { default as
|
21
|
-
import { default as
|
22
|
-
import { formContextKey as
|
18
|
+
import { LovPagetable as ae, LovQuerytable as le } from "./LovTable/index.js";
|
19
|
+
import { default as pe } from "./TableSelectPagetable/index.js";
|
20
|
+
import { default as xe } from "./Icon/index.js";
|
21
|
+
import { default as me } from "./Modal/useModal.js";
|
22
|
+
import { formContextKey as de } from "./Form/Form.js";
|
23
23
|
import { default as ce } from "./Pagetable/hooks/usePagetable.js";
|
24
|
-
import { default as
|
25
|
-
import { lovContextKey as
|
26
|
-
import { default as
|
27
|
-
import { tableSelectContext as
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
24
|
+
import { default as Te } from "./Input/LovInput/hooks/useLov.js";
|
25
|
+
import { lovContextKey as ge } from "./Input/LovInput/LovInput.js";
|
26
|
+
import { default as Pe } from "./Input/TableSelect/hooks/useTableSelect.js";
|
27
|
+
import { tableSelectContext as ve } from "./Input/TableSelect/TableSelect.js";
|
28
|
+
import { default as he } from "./Edittable/hooks/useEdittable.js";
|
29
|
+
const l = function(e) {
|
30
|
+
return Object.keys(o).forEach((r) => {
|
31
|
+
const t = o[r];
|
32
|
+
t.install && e.use(t);
|
32
33
|
}), e;
|
33
34
|
};
|
34
35
|
export {
|
35
|
-
|
36
|
-
|
36
|
+
z as Button,
|
37
|
+
_ as Card,
|
37
38
|
O as Checkbox,
|
38
39
|
h as CheckboxGroup,
|
39
|
-
|
40
|
+
W as Colflex,
|
40
41
|
y as DateInput,
|
41
|
-
|
42
|
+
D as Edittable,
|
42
43
|
M as FileInput,
|
43
|
-
|
44
|
+
X as Flexitem,
|
44
45
|
n as Form,
|
45
|
-
|
46
|
+
xe as Icon,
|
46
47
|
L as LovInput,
|
47
|
-
|
48
|
-
|
48
|
+
ae as LovPagetable,
|
49
|
+
le as LovQuerytable,
|
49
50
|
u as Modal,
|
50
51
|
k as MultiSelect,
|
51
52
|
w as NumberInput,
|
52
53
|
T as OMessage,
|
53
54
|
g as OMessageBox,
|
54
|
-
|
55
|
-
|
56
|
-
|
55
|
+
b as OTree,
|
56
|
+
P as Pagetable,
|
57
|
+
E as PasswordInput,
|
57
58
|
oe as Querytable,
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
59
|
+
F as RadioGroup,
|
60
|
+
Y as Rowflex,
|
61
|
+
B as SingleSelect,
|
62
|
+
U as Space,
|
62
63
|
G as StringInput,
|
63
64
|
K as Switch,
|
64
65
|
Q as TableSelect,
|
65
|
-
|
66
|
-
|
66
|
+
pe as TableSelectPagetable,
|
67
|
+
ee as Tabs,
|
67
68
|
R as Textarea,
|
68
69
|
s as ThroneContextProvider,
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
70
|
+
H as Tooltip,
|
71
|
+
c as Tree,
|
72
|
+
N as edittableProps,
|
73
|
+
de as formContextKey,
|
74
|
+
l as install,
|
75
|
+
ge as lovContextKey,
|
76
|
+
I as pagetableProps,
|
77
|
+
ve as tableSelectContext,
|
78
|
+
he as useEdittable,
|
79
|
+
Te as useLov,
|
80
|
+
me as useOModal,
|
78
81
|
ce as usePagetable,
|
79
|
-
|
82
|
+
Pe as useTableselect
|
80
83
|
};
|
81
84
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/components/index.ts"],"sourcesContent":["import type { App } from 'vue'\r\n\r\nimport * as components from './components'\r\n\r\nexport * from './components'\r\n\r\nexport type * from './types'\r\n\r\nexport const install = function (app: App) {\r\n Object.keys(components).forEach((key) => {\r\n const component = components[key]\r\n if (component.install) {\r\n app.use(component)\r\n }\r\n })\r\n return app\r\n}\r\n\r\nexport * from './Modal'\r\nexport * from './Form'\r\nexport * from './Tree'\r\nexport * from './Message'\r\nexport * from './MessageBox'\r\nexport * from './Pagetable'\r\nexport * from './Input'\r\n"],"names":["install","app","components","key","component"],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/components/index.ts"],"sourcesContent":["import type { App } from 'vue'\r\n\r\nimport * as components from './components'\r\n\r\nexport * from './components'\r\n\r\nexport type * from './types'\r\n\r\nexport const install = function (app: App) {\r\n Object.keys(components).forEach((key) => {\r\n const component = components[key]\r\n if (component.install) {\r\n app.use(component)\r\n }\r\n })\r\n return app\r\n}\r\n\r\nexport * from './Modal'\r\nexport * from './Form'\r\nexport * from './Tree'\r\nexport * from './Message'\r\nexport * from './MessageBox'\r\nexport * from './Pagetable'\r\nexport * from './Input'\r\nexport * from './Edittable'\r\n"],"names":["install","app","components","key","component"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQa,MAAAA,IAAU,SAAUC,GAAU;AACzC,gBAAO,KAAKC,CAAU,EAAE,QAAQ,CAACC,MAAQ;AACjC,UAAAC,IAAYF,EAAWC,CAAG;AAChC,IAAIC,EAAU,WACZH,EAAI,IAAIG,CAAS;AAAA,EACnB,CACD,GACMH;AACT;"}
|
package/dist/index.js
CHANGED
@@ -7,76 +7,79 @@ import { OTree as d, OTree as n } from "./components/Tree/index.js";
|
|
7
7
|
import { default as i } from "./components/Modal/useModal.js";
|
8
8
|
import { default as c } from "./components/Pagetable/hooks/usePagetable.js";
|
9
9
|
import { default as g } from "./components/Input/LovInput/hooks/useLov.js";
|
10
|
-
import { default as
|
11
|
-
import { default as
|
12
|
-
import { default as O } from "./components/
|
13
|
-
import {
|
14
|
-
import {
|
15
|
-
import {
|
16
|
-
import {
|
17
|
-
import { default as R } from "./components/
|
18
|
-
import { default as N
|
19
|
-
import { default as z } from "./components/
|
20
|
-
import { default as H } from "./components/
|
21
|
-
import { default as
|
22
|
-
import { default as
|
23
|
-
import {
|
24
|
-
import {
|
25
|
-
import {
|
26
|
-
import { default as
|
27
|
-
import {
|
28
|
-
import {
|
29
|
-
import {
|
30
|
-
import {
|
31
|
-
import {
|
10
|
+
import { default as P } from "./components/Input/TableSelect/hooks/useTableSelect.js";
|
11
|
+
import { default as I } from "./components/Edittable/hooks/useEdittable.js";
|
12
|
+
import { default as O } from "./components/Button/index.js";
|
13
|
+
import { default as y } from "./components/Tooltip/index.js";
|
14
|
+
import { T as w } from "./components-D1sXVvN9.js";
|
15
|
+
import { S as F } from "./index-CvcZkdiG.js";
|
16
|
+
import { Colflex as B, Flexitem as G, Rowflex as K } from "./components/Flex/index.js";
|
17
|
+
import { default as R } from "./components/Card/index.js";
|
18
|
+
import { default as N } from "./components/Tabs/index.js";
|
19
|
+
import { default as q, pagetableProps as z } from "./components/Pagetable/index.js";
|
20
|
+
import { default as H, edittableProps as J } from "./components/Edittable/index.js";
|
21
|
+
import { default as V } from "./components/Querytable/index.js";
|
22
|
+
import { default as X } from "./components/Modal/index.js";
|
23
|
+
import { default as Z } from "./components/Form/index.js";
|
24
|
+
import { Checkbox as $, CheckboxGroup as ee, DateInput as oe, FileInput as te, LovInput as re, MultiSelect as ae, NumberInput as fe, PasswordInput as le, RadioGroup as pe, SingleSelect as xe, StringInput as se, Switch as ue, TableSelect as me, Textarea as de } from "./components/Input/index.js";
|
25
|
+
import { LovPagetable as be, LovQuerytable as ie } from "./components/LovTable/index.js";
|
26
|
+
import { default as ce } from "./components/TableSelectPagetable/index.js";
|
27
|
+
import { default as ge } from "./components/Icon/index.js";
|
28
|
+
import { formContextKey as Pe } from "./components/Form/Form.js";
|
29
|
+
import { OMessage as Ie } from "./components/Message/index.js";
|
30
|
+
import { OMessageBox as Oe } from "./components/MessageBox/index.js";
|
31
|
+
import { lovContextKey as ye } from "./components/Input/LovInput/LovInput.js";
|
32
|
+
import { tableSelectContext as we } from "./components/Input/TableSelect/TableSelect.js";
|
32
33
|
export {
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
34
|
+
O as Button,
|
35
|
+
R as Card,
|
36
|
+
$ as Checkbox,
|
37
|
+
ee as CheckboxGroup,
|
38
|
+
B as Colflex,
|
39
|
+
oe as DateInput,
|
40
|
+
H as Edittable,
|
41
|
+
te as FileInput,
|
42
|
+
G as Flexitem,
|
43
|
+
Z as Form,
|
44
|
+
ge as Icon,
|
45
|
+
re as LovInput,
|
46
|
+
be as LovPagetable,
|
47
|
+
ie as LovQuerytable,
|
48
|
+
X as Modal,
|
49
|
+
ae as MultiSelect,
|
50
|
+
fe as NumberInput,
|
51
|
+
Ie as OMessage,
|
52
|
+
Oe as OMessageBox,
|
52
53
|
d as OTree,
|
53
54
|
t as OrionError,
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
55
|
+
q as Pagetable,
|
56
|
+
le as PasswordInput,
|
57
|
+
V as Querytable,
|
58
|
+
pe as RadioGroup,
|
59
|
+
K as Rowflex,
|
60
|
+
xe as SingleSelect,
|
61
|
+
F as Space,
|
62
|
+
se as StringInput,
|
63
|
+
ue as Switch,
|
64
|
+
me as TableSelect,
|
65
|
+
ce as TableSelectPagetable,
|
66
|
+
N as Tabs,
|
67
|
+
de as Textarea,
|
67
68
|
a as Throne,
|
68
|
-
|
69
|
-
|
69
|
+
w as ThroneContextProvider,
|
70
|
+
y as Tooltip,
|
70
71
|
n as Tree,
|
71
|
-
|
72
|
+
J as edittableProps,
|
73
|
+
Pe as formContextKey,
|
72
74
|
x as install,
|
73
|
-
|
74
|
-
|
75
|
-
|
75
|
+
ye as lovContextKey,
|
76
|
+
z as pagetableProps,
|
77
|
+
we as tableSelectContext,
|
78
|
+
I as useEdittable,
|
76
79
|
g as useLov,
|
77
80
|
i as useOModal,
|
78
81
|
c as usePagetable,
|
79
|
-
|
82
|
+
P as useTableselect,
|
80
83
|
l as useThroneContext,
|
81
84
|
u as version
|
82
85
|
};
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -1,28 +1,38 @@
|
|
1
|
-
var
|
2
|
-
var
|
3
|
-
var
|
1
|
+
var F = Object.defineProperty;
|
2
|
+
var _ = (e, t, o) => t in e ? F(e, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : e[t] = o;
|
3
|
+
var f = (e, t, o) => _(e, typeof t != "symbol" ? t + "" : t, o);
|
4
4
|
import c from "./smCrypto/sm2/index.js";
|
5
|
-
import
|
6
|
-
import { cloneDeep as
|
7
|
-
class
|
5
|
+
import b from "./smCrypto/sm3/index.js";
|
6
|
+
import { cloneDeep as h } from "lodash-es";
|
7
|
+
class N {
|
8
8
|
constructor(t) {
|
9
|
-
|
9
|
+
f(this, "options");
|
10
10
|
this.options = t;
|
11
11
|
}
|
12
12
|
async doFilter(t, o) {
|
13
|
-
const { prefix:
|
13
|
+
const { prefix: i, _s1: d, _s2: l, _s3: p, whitelist: a, contentType: m = "application/json" } = this.options, { url: y = "" } = t;
|
14
|
+
if (a && a.length > 0) {
|
15
|
+
let r = !1;
|
16
|
+
if (a.forEach((s) => {
|
17
|
+
if (y.indexOf(s) > -1)
|
18
|
+
return r = !0, !1;
|
19
|
+
}), r) {
|
20
|
+
o.doFilter(t, o);
|
21
|
+
return;
|
22
|
+
}
|
23
|
+
}
|
14
24
|
let n;
|
15
25
|
if (t.data instanceof FormData)
|
16
26
|
return o.doFilter(t, o);
|
17
27
|
{
|
18
|
-
if (n =
|
28
|
+
if (n = h(t.data), n == null || n == "")
|
19
29
|
return o.doFilter(t, o);
|
20
|
-
const
|
21
|
-
t.data =
|
30
|
+
const r = i + c._s2EN(JSON.stringify(n), l, 0), s = Math.floor(Date.now() / 1e3).toString(), E = s + r, g = b(E);
|
31
|
+
t.data = r, t.headers["Web-Encrypt-Response-Encrypt-Key"] = i + c._s2EN(d, l, 0), t.headers["Web-Encrypt-Timestamp"] = s, t.headers["Web-Encrypt-Sign"] = g, t.headers["content-type"] = m, p && (t.headers["Web-Encrypt-Caller-Id"] = p), o.doFilter(t, o);
|
22
32
|
}
|
23
33
|
}
|
24
34
|
}
|
25
35
|
export {
|
26
|
-
|
36
|
+
N as default
|
27
37
|
};
|
28
38
|
//# sourceMappingURL=Leaf7EncryptRequestParser.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Leaf7EncryptRequestParser.js","sources":["../../../src/request/leaf7/Leaf7EncryptRequestParser.ts"],"sourcesContent":["import type { AxiosRequestConfig } from 'axios'\r\nimport type RequestFilterChain from '../RequestFilterChain'\r\n\r\nimport { Leaf7EncryptOptions } from './types'\r\nimport sm2 from './smCrypto/sm2'\r\nimport sm3 from './smCrypto/sm3'\r\nimport { cloneDeep } from 'lodash-es'\r\n\r\nexport default class Leaf7EncryptRequestParser {\r\n options: Leaf7EncryptOptions\r\n\r\n constructor(options: Leaf7EncryptOptions) {\r\n this.options = options\r\n }\r\n\r\n async doFilter(request: AxiosRequestConfig, chain: RequestFilterChain) {\r\n // prefix:encryptStringPrefix 加密字符串前缀\r\n // _s1:sm4Key\r\n // _s2:sm2PublicKey\r\n const { prefix, _s1, _s2 } = this.options\r\n let requestData\r\n // FormData一般为上传附件,跳过\r\n if (request.data instanceof FormData) {\r\n return chain.doFilter(request, chain)\r\n } else {\r\n requestData = cloneDeep(request.data)\r\n if (requestData == null || requestData == '') {\r\n return chain.doFilter(request, chain)\r\n }\r\n // 组装报文并加密\r\n const content = prefix + sm2._s2EN(JSON.stringify(requestData), _s2, 0)\r\n const Timestamp = Math.floor(Date.now() / 1000).toString()\r\n const mergeStr = Timestamp + content\r\n const signature = sm3(mergeStr)\r\n\r\n request.data = content\r\n\r\n //按照规范进行前端加密\r\n request.headers['Web-Encrypt-Response-Encrypt-Key'] = prefix + sm2._s2EN(_s1, _s2, 0)\r\n request.headers['Web-Encrypt-Timestamp'] = Timestamp\r\n request.headers['Web-Encrypt-Sign'] = signature\r\n request.headers['content-type'] = '
|
1
|
+
{"version":3,"file":"Leaf7EncryptRequestParser.js","sources":["../../../src/request/leaf7/Leaf7EncryptRequestParser.ts"],"sourcesContent":["import type { AxiosRequestConfig } from 'axios'\r\nimport type RequestFilterChain from '../RequestFilterChain'\r\n\r\nimport { Leaf7EncryptOptions } from './types'\r\nimport sm2 from './smCrypto/sm2'\r\nimport sm3 from './smCrypto/sm3'\r\nimport { cloneDeep } from 'lodash-es'\r\n\r\nexport default class Leaf7EncryptRequestParser {\r\n options: Leaf7EncryptOptions\r\n\r\n constructor(options: Leaf7EncryptOptions) {\r\n this.options = options\r\n }\r\n\r\n async doFilter(request: AxiosRequestConfig, chain: RequestFilterChain) {\r\n // prefix:encryptStringPrefix 加密字符串前缀\r\n // _s1:sm4Key\r\n // _s2:sm2PublicKey\r\n const { prefix, _s1, _s2, _s3, whitelist, contentType = 'application/json' } = this.options\r\n const { url = '' } = request\r\n if (whitelist && whitelist.length > 0) {\r\n let flag = false\r\n whitelist.forEach((prefix) => {\r\n if (url.indexOf(prefix) > -1) {\r\n flag = true\r\n return false\r\n }\r\n })\r\n if (flag) {\r\n chain.doFilter(request, chain)\r\n return\r\n }\r\n }\r\n\r\n let requestData\r\n // FormData一般为上传附件,跳过\r\n if (request.data instanceof FormData) {\r\n return chain.doFilter(request, chain)\r\n } else {\r\n requestData = cloneDeep(request.data)\r\n if (requestData == null || requestData == '') {\r\n return chain.doFilter(request, chain)\r\n }\r\n // 组装报文并加密\r\n const content = prefix + sm2._s2EN(JSON.stringify(requestData), _s2, 0)\r\n const Timestamp = Math.floor(Date.now() / 1000).toString()\r\n const mergeStr = Timestamp + content\r\n const signature = sm3(mergeStr)\r\n\r\n request.data = content\r\n\r\n //按照规范进行前端加密\r\n request.headers['Web-Encrypt-Response-Encrypt-Key'] = prefix + sm2._s2EN(_s1, _s2, 0)\r\n request.headers['Web-Encrypt-Timestamp'] = Timestamp\r\n request.headers['Web-Encrypt-Sign'] = signature\r\n request.headers['content-type'] = contentType\r\n if (_s3) {\r\n request.headers['Web-Encrypt-Caller-Id'] = _s3\r\n }\r\n\r\n chain.doFilter(request, chain)\r\n }\r\n }\r\n}\r\n"],"names":["Leaf7EncryptRequestParser","options","__publicField","request","chain","prefix","_s1","_s2","_s3","whitelist","contentType","url","flag","requestData","cloneDeep","content","sm2","Timestamp","mergeStr","signature","sm3"],"mappings":";;;;;;AAQA,MAAqBA,EAA0B;AAAA,EAG7C,YAAYC,GAA8B;AAF1C,IAAAC,EAAA;AAGE,SAAK,UAAUD;AAAA,EACjB;AAAA,EAEA,MAAM,SAASE,GAA6BC,GAA2B;AAI/D,UAAA,EAAE,QAAAC,GAAQ,KAAAC,GAAK,KAAAC,GAAK,KAAAC,GAAK,WAAAC,GAAW,aAAAC,IAAc,mBAAmB,IAAI,KAAK,SAC9E,EAAE,KAAAC,IAAM,GAAO,IAAAR;AACjB,QAAAM,KAAaA,EAAU,SAAS,GAAG;AACrC,UAAIG,IAAO;AAOX,UANUH,EAAA,QAAQ,CAACJ,MAAW;AAC5B,YAAIM,EAAI,QAAQN,CAAM,IAAI;AACjB,iBAAAO,IAAA,IACA;AAAA,MACT,CACD,GACGA,GAAM;AACF,QAAAR,EAAA,SAASD,GAASC,CAAK;AAC7B;AAAA,MACF;AAAA,IACF;AAEI,QAAAS;AAEA,QAAAV,EAAQ,gBAAgB;AACnB,aAAAC,EAAM,SAASD,GAASC,CAAK;AAC/B;AAED,UADUS,IAAAC,EAAUX,EAAQ,IAAI,GAChCU,KAAe,QAAQA,KAAe;AACjC,eAAAT,EAAM,SAASD,GAASC,CAAK;AAGhC,YAAAW,IAAUV,IAASW,EAAI,MAAM,KAAK,UAAUH,CAAW,GAAGN,GAAK,CAAC,GAChEU,IAAY,KAAK,MAAM,KAAK,QAAQ,GAAI,EAAE,YAC1CC,IAAWD,IAAYF,GACvBI,IAAYC,EAAIF,CAAQ;AAE9B,MAAAf,EAAQ,OAAOY,GAGPZ,EAAA,QAAQ,kCAAkC,IAAIE,IAASW,EAAI,MAAMV,GAAKC,GAAK,CAAC,GAC5EJ,EAAA,QAAQ,uBAAuB,IAAIc,GACnCd,EAAA,QAAQ,kBAAkB,IAAIgB,GAC9BhB,EAAA,QAAQ,cAAc,IAAIO,GAC9BF,MACML,EAAA,QAAQ,uBAAuB,IAAIK,IAGvCJ,EAAA,SAASD,GAASC,CAAK;AAAA,IAC/B;AAAA,EACF;AACF;"}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: "1.0.
|
1
|
+
declare const _default: "1.0.2";
|
2
2
|
export default _default;
|
package/dist/version/version.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"version.js","sources":["../../src/version/version.ts"],"sourcesContent":["export default '1.0.
|
1
|
+
{"version":3,"file":"version.js","sources":["../../src/version/version.ts"],"sourcesContent":["export default '1.0.2';"],"names":["version"],"mappings":"AAAA,MAAAA,IAAe;"}
|