lyflowchart 1.0.113 → 1.0.130
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ActionsConfig-BuvSvRbv.js +395 -0
- package/dist/ActionsConfig-BuvSvRbv.js.map +1 -0
- package/dist/ApprovalEditorModal-DZfXupU3.js +48 -0
- package/dist/ApprovalEditorModal-DZfXupU3.js.map +1 -0
- package/dist/CancelModal-BUi3ieI8.js +61 -0
- package/dist/CancelModal-BUi3ieI8.js.map +1 -0
- package/dist/Cell_click_approve-CBh0j--6.js +244 -0
- package/dist/Cell_click_approve-CBh0j--6.js.map +1 -0
- package/dist/JsonTags-BbWLqghI.js +66 -0
- package/dist/JsonTags-BbWLqghI.js.map +1 -0
- package/dist/MyProcess-FWGEwQcv.js +26434 -0
- package/dist/MyProcess-FWGEwQcv.js.map +1 -0
- package/dist/MyProcess.vue.d.ts +991 -0
- package/dist/approval-BW2WjPxY.js +167 -0
- package/dist/approval-BW2WjPxY.js.map +1 -0
- package/dist/approval-CuUNtG9u.js +18 -0
- package/dist/approval-CuUNtG9u.js.map +1 -0
- package/dist/approvalHistory-B2gpQbFC.js +868 -0
- package/dist/approvalHistory-B2gpQbFC.js.map +1 -0
- package/dist/approvalHistoryViewModal-DgLpv2ot.js +114 -0
- package/dist/approvalHistoryViewModal-DgLpv2ot.js.map +1 -0
- package/dist/approvalPageConfig-D0zPXOUf.js +2437 -0
- package/dist/approvalPageConfig-D0zPXOUf.js.map +1 -0
- package/dist/approveLeftConfig-BOU_UgHp.js +136 -0
- package/dist/approveLeftConfig-BOU_UgHp.js.map +1 -0
- package/dist/codeHistoryViewModal-BfSjIbEU.js +103 -0
- package/dist/codeHistoryViewModal-BfSjIbEU.js.map +1 -0
- package/dist/columnTables-DLwtgcC7.js +1272 -0
- package/dist/columnTables-DLwtgcC7.js.map +1 -0
- package/dist/components/Cell_click_approve.vue.d.ts +5 -0
- package/dist/components/Cell_click_data_source.vue.d.ts +6 -0
- package/dist/components/Process/common/bpmnUtils.d.ts +8 -0
- package/dist/components/Process/common/global.d.ts +16 -0
- package/dist/components/Process/common/index.d.ts +5 -0
- package/dist/components/Process/component/JsonTags2.vue.d.ts +60 -0
- package/dist/components/Process/component/ValueInput2.vue.d.ts +74 -0
- package/dist/components/Process/component/columnNameField2.vue.d.ts +51 -0
- package/dist/components/Process/component/data.d.ts +157 -0
- package/dist/components/Process/customPanel/CustomContextPad.d.ts +31 -0
- package/dist/components/Process/customPanel/CustomPalette.d.ts +89 -0
- package/dist/components/Process/customPanel/customTranslate.d.ts +1 -0
- package/dist/components/Process/customPanel/index.d.ts +8 -0
- package/dist/components/Process/designer.vue.d.ts +589 -0
- package/dist/components/Process/flowable/init.d.ts +1 -0
- package/dist/components/Process/index.vue.d.ts +812 -0
- package/dist/components/Process/lang/zh.d.ts +249 -0
- package/dist/components/Process/panel/ButtonsPanel.vue.d.ts +24 -0
- package/dist/components/Process/panel/PropertiesPanel.vue.d.ts +24 -0
- package/dist/components/Process/panel/commonPanel.vue.d.ts +40 -0
- package/dist/components/Process/panel/conditionPanel.vue.d.ts +271 -0
- package/dist/components/Process/panel/executionListener.vue.d.ts +66 -0
- package/dist/components/Process/panel/formPanel.vue.d.ts +7 -0
- package/dist/components/Process/panel/multiInstance.vue.d.ts +33 -0
- package/dist/components/Process/panel/otherPanel.vue.d.ts +17 -0
- package/dist/components/Process/panel/taskListener.vue.d.ts +64 -0
- package/dist/components/Process/panel/taskPanel.vue.d.ts +254 -0
- package/dist/components/Process/viewer/index.vue.d.ts +41 -0
- package/dist/components/approval/ApprovalEditorModal.vue.d.ts +26 -0
- package/dist/components/approval/CostCompanySelect.vue.d.ts +29 -0
- package/dist/components/approval/CostDepartmentSelect.vue.d.ts +35 -0
- package/dist/components/approval/CreateByCascader.vue.d.ts +27 -0
- package/dist/components/approval/CreateBySelect.vue.d.ts +35 -0
- package/dist/components/approval/PostionCascader.vue.d.ts +26 -0
- package/dist/components/approval/SystemTime.vue.d.ts +38 -0
- package/dist/components/approval/approvalViewId.d.ts +36 -0
- package/dist/components/approval/components/CancelModal.vue.d.ts +25 -0
- package/dist/components/approval/components/FormCodeInput.vue.d.ts +33 -0
- package/dist/components/approval/components/FormContextInput.vue.d.ts +33 -0
- package/dist/components/approval/components/FormFlowOrgInput.vue.d.ts +40 -0
- package/dist/components/approval/components/actionsBar.vue.d.ts +17 -0
- package/dist/components/approval/components/approvalHistory/approvalHistoryViewModal.vue.d.ts +41 -0
- package/dist/components/approval/components/approvalHistory/dataStoreSettingHistory.vue.d.ts +55 -0
- package/dist/components/approval/components/approvalHistory/dataStoreSettingHistoryViewModal.vue.d.ts +41 -0
- package/dist/components/approval/components/approvalHistory/flowHistoryViewModal.vue.d.ts +41 -0
- package/dist/components/approval/components/approvalHistory/flowSettingHistory.vue.d.ts +55 -0
- package/dist/components/approval/components/approvalHistory/index.vue.d.ts +212 -0
- package/dist/components/approval/components/approvalHistory/pageSettingHistory.vue.d.ts +55 -0
- package/dist/components/approval/components/approvalPageConfig/ActionsConfig.vue.d.ts +112 -0
- package/dist/components/approval/components/approvalPageConfig/BaseConditions.vue.d.ts +205 -0
- package/dist/components/approval/components/approvalPageConfig/CodeEditorWraper.vue.d.ts +51 -0
- package/dist/components/approval/components/approvalPageConfig/ColumnConfig.vue.d.ts +145 -0
- package/dist/components/approval/components/approvalPageConfig/ConditionFieldMulType.vue.d.ts +137 -0
- package/dist/components/approval/components/approvalPageConfig/JsonInput.vue.d.ts +38 -0
- package/dist/components/approval/components/approvalPageConfig/JsonTags.vue.d.ts +26 -0
- package/dist/components/approval/components/approvalPageConfig/JsonText.vue.d.ts +36 -0
- package/dist/components/approval/components/approvalPageConfig/approveLeftConfig.vue.d.ts +6 -0
- package/dist/components/approval/components/approvalPageConfig/baseConfig.vue.d.ts +10 -0
- package/dist/components/approval/components/approvalPageConfig/cellEdit.vue.d.ts +23 -0
- package/dist/components/approval/components/approvalPageConfig/configSync.vue.d.ts +76 -0
- package/dist/components/approval/components/approvalPageConfig/confirmInput.vue.d.ts +26 -0
- package/dist/components/approval/components/approvalPageConfig/defaultOperatorSelect.vue.d.ts +18 -0
- package/dist/components/approval/components/approvalPageConfig/index.vue.d.ts +11 -0
- package/dist/components/approval/components/approvalPageConfig/jsonConfig.vue.d.ts +16 -0
- package/dist/components/approval/components/approvalPageConfig/layoutSetting.vue.d.ts +9 -0
- package/dist/components/approval/components/approvalPageConfig/leftColumn.vue.d.ts +1184 -0
- package/dist/components/approval/components/approvalPageConfig/middleColumn.vue.d.ts +145 -0
- package/dist/components/approval/components/approvalPageConfig/operatorSelect.vue.d.ts +18 -0
- package/dist/components/approval/components/approvalPageConfig/searchConfig.vue.d.ts +166 -0
- package/dist/components/approval/components/approvalPageConfig/tableConfig.vue.d.ts +802 -0
- package/dist/components/approval/components/codeHistory/codeHistory.vue.d.ts +53 -0
- package/dist/components/approval/components/codeHistory/codeHistoryViewModal.vue.d.ts +32 -0
- package/dist/components/approval/components/columnDataList.vue.d.ts +454 -0
- package/dist/components/approval/components/columnForm.vue.d.ts +26 -0
- package/dist/components/approval/components/columnTables.vue.d.ts +502 -0
- package/dist/components/approval/components/columnUnknown.vue.d.ts +2 -0
- package/dist/components/approval/components/dataStoreConfig/ConditionConfig.vue.d.ts +199 -0
- package/dist/components/approval/components/dataStoreConfig/ValueInput.vue.d.ts +37 -0
- package/dist/components/approval/components/dataStoreConfig/dataSourceDetial.vue.d.ts +22 -0
- package/dist/components/approval/components/dataStoreConfig/dataStoreConfig.vue.d.ts +554 -0
- package/dist/components/approval/components/dataStoreConfig/dataStoreConfigItem.vue.d.ts +434 -0
- package/dist/components/approval/components/dataStoreConfig/dataStoreTest.vue.d.ts +39 -0
- package/dist/components/approval/components/dataStoreConfig/dataStoreTestsItem.vue.d.ts +17 -0
- package/dist/components/approval/components/dataStoreConfig/formField.vue.d.ts +28 -0
- package/dist/components/approval/components/dataStoreConfig/formFieldMulType.vue.d.ts +96 -0
- package/dist/components/approval/components/dataStoreConfig/selectExcelColumn.vue.d.ts +26 -0
- package/dist/components/approval/components/dataStoreConfig/selectExcelType.vue.d.ts +28 -0
- package/dist/components/approval/components/debugCode/debugCode.vue.d.ts +214 -0
- package/dist/components/approval/components/drawerDataList.vue.d.ts +504 -0
- package/dist/components/approval/components/drawerTablesList.vue.d.ts +551 -0
- package/dist/components/approval/components/flowConfig/flowConfig.vue.d.ts +1097 -0
- package/dist/components/approval/components/flowConfig/selectCcGroup.vue.d.ts +9 -0
- package/dist/components/approval/components/flowConfig/selectUsers.vue.d.ts +9 -0
- package/dist/components/approval/components/modelTablesList.vue.d.ts +551 -0
- package/dist/components/approval/components/pageConfigHistory.vue.d.ts +2 -0
- package/dist/components/approval/components/search.vue.d.ts +238 -0
- package/dist/components/approval/components/searchSummary.vue.d.ts +100 -0
- package/dist/components/approval/components/table.vue.d.ts +416 -0
- package/dist/components/approval/components/tableModal.vue.d.ts +84 -0
- package/dist/components/approval/configs/approval/default.d.ts +11 -0
- package/dist/components/approval/configs/approval/recordActions.d.ts +22 -0
- package/dist/components/approval/core.vue.d.ts +48 -0
- package/dist/components/approval/example_code/example_code.d.ts +11 -0
- package/dist/components/approval/index.d.ts +18 -0
- package/dist/components/approval/index.vue.d.ts +2 -0
- package/dist/components/approval/migrate/index.d.ts +1 -0
- package/dist/components/approval/migrate/v0001.d.ts +2 -0
- package/dist/components/approval/store/context.d.ts +48 -0
- package/dist/components/approval/store/debugCode.d.ts +7 -0
- package/dist/components/approval/store/settingsState.d.ts +15 -0
- package/dist/components/approval/typing.d.ts +210 -0
- package/dist/components/approval/useApprovalRecordActions.d.ts +83 -0
- package/dist/components/approval/utils.d.ts +164 -0
- package/dist/components/approval_for_details.vue.d.ts +9 -0
- package/dist/components/flow/ElInputTag/index.vue.d.ts +46 -0
- package/dist/components/flow/Expression/index.vue.d.ts +48 -0
- package/dist/components/flow/Role/index.vue.d.ts +68 -0
- package/dist/components/flow/User/index.vue.d.ts +76 -0
- package/dist/config/packed-config.d.ts +26 -0
- package/dist/constants.d.ts +1 -0
- package/dist/core-CctSle2c.js +1629 -0
- package/dist/core-CctSle2c.js.map +1 -0
- package/dist/dataStoreSettingHistoryViewModal-D_so-KLp.js +114 -0
- package/dist/dataStoreSettingHistoryViewModal-D_so-KLp.js.map +1 -0
- package/dist/debugCode-Cm9-WiUG.js +565 -0
- package/dist/debugCode-Cm9-WiUG.js.map +1 -0
- package/dist/debugCode-dD1YnQSD.js +11 -0
- package/dist/debugCode-dD1YnQSD.js.map +1 -0
- package/dist/default-VdDMlY4e.js +560 -0
- package/dist/default-VdDMlY4e.js.map +1 -0
- package/dist/example_code-C_xF8RRG.js +129 -0
- package/dist/example_code-C_xF8RRG.js.map +1 -0
- package/dist/flowHistoryViewModal-D8DJP7Te.js +109 -0
- package/dist/flowHistoryViewModal-D8DJP7Te.js.map +1 -0
- package/dist/index.d.ts +81 -0
- package/dist/index.js +507 -26691
- package/dist/index.js.map +1 -1
- package/dist/init-plugin-fQTSQzui.js +48 -0
- package/dist/init-plugin-fQTSQzui.js.map +1 -0
- package/dist/init-plugin.d.ts +57 -0
- package/dist/leftColumn-CsPjufue.js +209 -0
- package/dist/leftColumn-CsPjufue.js.map +1 -0
- package/dist/lyflowchart.css +1 -1
- package/dist/middleColumn-C7M6-eVo.js +107 -0
- package/dist/middleColumn-C7M6-eVo.js.map +1 -0
- package/dist/recordActions-BgFlNsGU.js +51 -0
- package/dist/recordActions-BgFlNsGU.js.map +1 -0
- package/dist/settingsState-CI81PG-i.js +19 -0
- package/dist/settingsState-CI81PG-i.js.map +1 -0
- package/dist/style.d.ts +3 -0
- package/dist/styles.d.ts +7 -0
- package/dist/tableConfig-uLXue-BS.js +2408 -0
- package/dist/tableConfig-uLXue-BS.js.map +1 -0
- package/dist/tableModal-BcYfVL02.js +124 -0
- package/dist/tableModal-BcYfVL02.js.map +1 -0
- package/dist/useApprovalRecordActions-BQ6MgV2L.js +843 -0
- package/dist/useApprovalRecordActions-BQ6MgV2L.js.map +1 -0
- package/dist/utils/StrUtil.d.ts +52 -0
- package/dist/utils/function.d.ts +8 -0
- package/dist/utils-CLet2gLV.js +420 -0
- package/dist/utils-CLet2gLV.js.map +1 -0
- package/dist/v0001-OaBeBCXI.js +4 -0
- package/dist/v0001-OaBeBCXI.js.map +1 -0
- package/dist/{Cell_click_data_source-CUVsbkcN.js → viewer-Dv3kQsMf.js} +1551 -2415
- package/dist/viewer-Dv3kQsMf.js.map +1 -0
- package/dist/vue-print-next-HRweUmNi.js +683 -0
- package/dist/vue-print-next-HRweUmNi.js.map +1 -0
- package/package.json +39 -8
- package/dist/Cell_click_data_source-CUVsbkcN.js.map +0 -1
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
//#region \0plugin-vue:export-helper
|
|
2
|
+
var e = (e, t) => {
|
|
3
|
+
let n = e.__vccOpts || e;
|
|
4
|
+
for (let [e, r] of t) n[e] = r;
|
|
5
|
+
return n;
|
|
6
|
+
}, t = {}, n = {
|
|
7
|
+
ColumnLayout: "ColumnLayout",
|
|
8
|
+
RowLayout: "RowLayout",
|
|
9
|
+
TextDiff: "TextDiff",
|
|
10
|
+
CodeEditor: "CodeEditor",
|
|
11
|
+
debugCode: "debugCode",
|
|
12
|
+
SmallTableSerarchField: "SmallTableSerarchField",
|
|
13
|
+
columnNameField: "columnNameField"
|
|
14
|
+
};
|
|
15
|
+
function r(e) {
|
|
16
|
+
return { install(n) {
|
|
17
|
+
for (let n of Object.keys(e || {})) e[n] !== void 0 && e[n] !== null && (t[n] = e[n]);
|
|
18
|
+
} };
|
|
19
|
+
}
|
|
20
|
+
var i = (e) => {
|
|
21
|
+
let n = t[e];
|
|
22
|
+
if (n == null) throw Error(`[lyflowchart] 缺少宿主注入项 "${e}",请在 main.ts 的 app.use(lyflowchart, { ${e} }) 中传入`);
|
|
23
|
+
return n;
|
|
24
|
+
}, a = () => i("request"), o = () => i("getApiData");
|
|
25
|
+
function s(...e) {
|
|
26
|
+
return i("useUserStore")(...e);
|
|
27
|
+
}
|
|
28
|
+
function c(...e) {
|
|
29
|
+
return i("getApiData")(...e);
|
|
30
|
+
}
|
|
31
|
+
function l(...e) {
|
|
32
|
+
return i("cachedGetApiData")(...e);
|
|
33
|
+
}
|
|
34
|
+
function u(...e) {
|
|
35
|
+
return i("executeScriptInWorker")(...e);
|
|
36
|
+
}
|
|
37
|
+
function d(...e) {
|
|
38
|
+
return i("get_org_id")(...e);
|
|
39
|
+
}
|
|
40
|
+
function f(...e) {
|
|
41
|
+
return i("cellComponentList")(...e);
|
|
42
|
+
}
|
|
43
|
+
function p(...e) {
|
|
44
|
+
return i("modalBox")(...e);
|
|
45
|
+
}
|
|
46
|
+
var m = () => i("pageSelectOptions"), h = () => i("modelOperator"), g = () => i("modelTypeList"), _ = () => i("ConditionOperatorMap"), v = () => i("operator_params_count"), y = () => t.customConfigs || {};
|
|
47
|
+
//#endregion
|
|
48
|
+
export { s as _, u as a, p as c, o as d, h as f, a as g, m as h, r as i, _ as l, v as m, l as n, c as o, g as p, f as r, d as s, n as t, y as u, e as v };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init-plugin-fQTSQzui.js","names":[],"sources":["../src/init-plugin.ts"],"sourcesContent":["import { App } from 'vue';\n\n/**\n * 宿主依赖注入表。\n *\n * lyflowchart 是独立维护、独立构建、被多个业务项目(PSMSystem2PC / PSM_ApproveSystemPC 等)共用的公共库,\n * 内部**不允许**直接 import liyu-pc-lib / liyu-pc-base:\n * - 有些依赖是宿主单例,必须用宿主那一份(request 实例、pinia store、api 请求封装、宿主事件总线 modalBox);\n * - 有些依赖带宿主上下文(executeScriptInWorker 依赖宿主注册的 worker 函数、cellComponentList 含宿主注册的自定义单元格);\n * - 组件则需要宿主把 liyu-pc-lib 里的组件实例传进来(公共库自己拿不到)。\n *\n * 约定:\n * 1. 宿主在 main.ts 里 `app.use(lyflowchart, { ...deps })` 一次性传入;\n * 2. `depsInit` 是写入器,由 src/index.ts 的 install 调用;\n * 3. 其余导出都是读取器。与原型同名的(getApiData / modalBox / executeScriptInWorker ...)直接导出转发函数,\n * 这样业务代码只换 import 来源,调用点一行都不用改;\n * 4. 常量统一用 useXxx() 读取(宿主注入时机早于任何组件渲染,setup 里取值即可)。\n *\n * 缺项一律直接抛错终止,不静默降级 —— 漏注入属于配置错误,早失败好过页面半死不活。\n */\nconst _data: Record<string, any> = {};\n\n/** 宿主需要传入的组件:键名即 options 字段名,值即全局注册时使用的组件名 */\nexport const HOST_COMPONENTS: Record<string, string> = {\n ColumnLayout: 'ColumnLayout',\n RowLayout: 'RowLayout',\n TextDiff: 'TextDiff',\n CodeEditor: 'CodeEditor',\n debugCode: 'debugCode',\n SmallTableSerarchField: 'SmallTableSerarchField',\n columnNameField: 'columnNameField',\n};\n\n/** 宿主注入项的完整清单(组件之外的普通字段),供文档与调用方对照 */\nexport const HOST_DEPS: string[] = [\n 'request',\n 'useUserStore',\n 'getApiData',\n 'cachedGetApiData',\n 'executeScriptInWorker',\n 'get_org_id',\n 'cellComponentList',\n 'modalBox',\n 'pageSelectOptions',\n 'modelOperator',\n 'modelTypeList',\n 'ConditionOperatorMap',\n 'operator_params_count',\n // 可选:业务项目自定义页面配置,键为 getApprovalConfig(key) 的 key\n 'customConfigs',\n];\n\nexport function depsInit(deps: Record<string, any>) {\n return {\n install(_app: App) {\n for (const key of Object.keys(deps || {})) {\n if (deps[key] !== undefined && deps[key] !== null) {\n _data[key] = deps[key];\n }\n }\n },\n };\n}\n\nconst _require = (key: string) => {\n const value = _data[key];\n if (value === undefined || value === null) {\n throw new Error(\n `[lyflowchart] 缺少宿主注入项 \"${key}\",请在 main.ts 的 app.use(lyflowchart, { ${key} }) 中传入`,\n );\n }\n return value;\n};\n\n/* ---------------- 宿主单例 / 宿主态函数 ---------------- */\n\n/** 宿主 request 实例(liyu-pc-lib/utils/request) */\nexport const useRequest = () => _require('request');\n\n/** 宿主的 getApiData(liyu-pc-lib/api/api-model),返回函数本身,调用方自行调用 */\nexport const useGetApiData = () => _require('getApiData');\n\n/**\n * 宿主 user store(liyu-pc-lib/store/user 的 useUserStore)。\n * 直接返回 store 实例,调用点写 `const userStore = useUserStore()`。\n */\nexport function useUserStore(...args: any[]) {\n return _require('useUserStore')(...args);\n}\n\nexport function getApiData(...args: any[]) {\n return _require('getApiData')(...args);\n}\n\nexport function cachedGetApiData(...args: any[]) {\n return _require('cachedGetApiData')(...args);\n}\n\n/** 在 Worker 里执行页面配置里的自定义脚本(依赖宿主注册的 workerHostFunctions) */\nexport function executeScriptInWorker(...args: any[]) {\n return _require('executeScriptInWorker')(...args);\n}\n\nexport function get_org_id(...args: any[]) {\n return _require('get_org_id')(...args);\n}\n\n/** 可选单元格组件(含宿主注册的自定义单元格) */\nexport function cellComponentList(...args: any[]) {\n return _require('cellComponentList')(...args);\n}\n\n/** 弹窗(走宿主事件总线 modal.add,必须与宿主 basic-layout 的监听同一个 bus 实例) */\nexport function modalBox(...args: any[]) {\n return _require('modalBox')(...args);\n}\n\n/* ---------------- 宿主常量 ---------------- */\n\nexport const usePageSelectOptions = (): Array<{ name: string; value: string }> =>\n _require('pageSelectOptions');\n\n/** 字段类型 -> 可用操作符 */\nexport const useModelOperator = (): Record<string, string[]> => _require('modelOperator');\n\n/** 字段类型 -> 可用组件类型 */\nexport const useModelTypeList = (): Record<string, any> => _require('modelTypeList');\n\n/** 操作符 -> 展示文案 */\nexport const useConditionOperatorMap = (): Record<string, string> =>\n _require('ConditionOperatorMap');\n\n/** 操作符 -> 入参个数 */\nexport const useOperatorParamsCount = (): Record<string, number> =>\n _require('operator_params_count');\n\n/* ---------------- 可选注入项 ---------------- */\n\n/**\n * 业务项目自定义的页面配置(可选,不传则只用本库自带的 configs)。\n *\n * 本库自带的 `src/components/approval/configs/<分组>/<key>.ts` 是在**库构建时**\n * 由 `import.meta.glob` 固化的,宿主项目没法再往这个目录里塞文件;而页面配置天然是\n * 按业务/菜单定制的东西,所以额外开放这个入口:\n *\n * app.use(lyflowchart, {\n * customConfigs: {\n * // key 即 getApprovalConfig(key) 的 key(menu_flag),命中同名文件名的配置\n * my_menu_flag: () => import('./approval-configs/my_menu_flag'),\n * default: () => import('./approval-configs/default'),\n * },\n * });\n *\n * 同名 key 由宿主覆盖本库自带的配置。取值形式与库自带的 glob 一致:\n * 一个返回 `{ default: ... }` 的懒加载函数。\n */\nexport const useCustomConfigs = (): Record<string, () => Promise<any>> =>\n _data.customConfigs || {};\n"],"mappings":";;;;;GAoBM,IAA6B,EAAE,EAGxB,IAA0C;CACrD,cAAc;CACd,WAAW;CACX,UAAU;CACV,YAAY;CACZ,WAAW;CACX,wBAAwB;CACxB,iBAAiB;CAClB;AAqBD,SAAgB,EAAS,GAA2B;AAClD,QAAO,EACL,QAAQ,GAAW;AACjB,OAAK,IAAM,KAAO,OAAO,KAAK,KAAQ,EAAE,CAAC,CACvC,CAAI,EAAK,OAAS,KAAA,KAAa,EAAK,OAAS,SAC3C,EAAM,KAAO,EAAK;IAIzB;;AAGH,IAAM,KAAY,MAAgB;CAChC,IAAM,IAAQ,EAAM;AACpB,KAAI,KAAiC,KACnC,OAAU,MACR,0BAA0B,EAAI,wCAAwC,EAAI,SAC3E;AAEH,QAAO;GAMI,UAAmB,EAAS,UAAU,EAGtC,UAAsB,EAAS,aAAa;AAMzD,SAAgB,EAAa,GAAG,GAAa;AAC3C,QAAO,EAAS,eAAe,CAAC,GAAG,EAAK;;AAG1C,SAAgB,EAAW,GAAG,GAAa;AACzC,QAAO,EAAS,aAAa,CAAC,GAAG,EAAK;;AAGxC,SAAgB,EAAiB,GAAG,GAAa;AAC/C,QAAO,EAAS,mBAAmB,CAAC,GAAG,EAAK;;AAI9C,SAAgB,EAAsB,GAAG,GAAa;AACpD,QAAO,EAAS,wBAAwB,CAAC,GAAG,EAAK;;AAGnD,SAAgB,EAAW,GAAG,GAAa;AACzC,QAAO,EAAS,aAAa,CAAC,GAAG,EAAK;;AAIxC,SAAgB,EAAkB,GAAG,GAAa;AAChD,QAAO,EAAS,oBAAoB,CAAC,GAAG,EAAK;;AAI/C,SAAgB,EAAS,GAAG,GAAa;AACvC,QAAO,EAAS,WAAW,CAAC,GAAG,EAAK;;AAKtC,IAAa,UACX,EAAS,oBAAoB,EAGlB,UAAmD,EAAS,gBAAgB,EAG5E,UAA8C,EAAS,gBAAgB,EAGvE,UACX,EAAS,uBAAuB,EAGrB,UACX,EAAS,wBAAwB,EAsBtB,UACX,EAAM,iBAAiB,EAAE"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { App } from 'vue';
|
|
2
|
+
/** 宿主需要传入的组件:键名即 options 字段名,值即全局注册时使用的组件名 */
|
|
3
|
+
export declare const HOST_COMPONENTS: Record<string, string>;
|
|
4
|
+
/** 宿主注入项的完整清单(组件之外的普通字段),供文档与调用方对照 */
|
|
5
|
+
export declare const HOST_DEPS: string[];
|
|
6
|
+
export declare function depsInit(deps: Record<string, any>): {
|
|
7
|
+
install(_app: App): void;
|
|
8
|
+
};
|
|
9
|
+
/** 宿主 request 实例(liyu-pc-lib/utils/request) */
|
|
10
|
+
export declare const useRequest: () => any;
|
|
11
|
+
/** 宿主的 getApiData(liyu-pc-lib/api/api-model),返回函数本身,调用方自行调用 */
|
|
12
|
+
export declare const useGetApiData: () => any;
|
|
13
|
+
/**
|
|
14
|
+
* 宿主 user store(liyu-pc-lib/store/user 的 useUserStore)。
|
|
15
|
+
* 直接返回 store 实例,调用点写 `const userStore = useUserStore()`。
|
|
16
|
+
*/
|
|
17
|
+
export declare function useUserStore(...args: any[]): any;
|
|
18
|
+
export declare function getApiData(...args: any[]): any;
|
|
19
|
+
export declare function cachedGetApiData(...args: any[]): any;
|
|
20
|
+
/** 在 Worker 里执行页面配置里的自定义脚本(依赖宿主注册的 workerHostFunctions) */
|
|
21
|
+
export declare function executeScriptInWorker(...args: any[]): any;
|
|
22
|
+
export declare function get_org_id(...args: any[]): any;
|
|
23
|
+
/** 可选单元格组件(含宿主注册的自定义单元格) */
|
|
24
|
+
export declare function cellComponentList(...args: any[]): any;
|
|
25
|
+
/** 弹窗(走宿主事件总线 modal.add,必须与宿主 basic-layout 的监听同一个 bus 实例) */
|
|
26
|
+
export declare function modalBox(...args: any[]): any;
|
|
27
|
+
export declare const usePageSelectOptions: () => Array<{
|
|
28
|
+
name: string;
|
|
29
|
+
value: string;
|
|
30
|
+
}>;
|
|
31
|
+
/** 字段类型 -> 可用操作符 */
|
|
32
|
+
export declare const useModelOperator: () => Record<string, string[]>;
|
|
33
|
+
/** 字段类型 -> 可用组件类型 */
|
|
34
|
+
export declare const useModelTypeList: () => Record<string, any>;
|
|
35
|
+
/** 操作符 -> 展示文案 */
|
|
36
|
+
export declare const useConditionOperatorMap: () => Record<string, string>;
|
|
37
|
+
/** 操作符 -> 入参个数 */
|
|
38
|
+
export declare const useOperatorParamsCount: () => Record<string, number>;
|
|
39
|
+
/**
|
|
40
|
+
* 业务项目自定义的页面配置(可选,不传则只用本库自带的 configs)。
|
|
41
|
+
*
|
|
42
|
+
* 本库自带的 `src/components/approval/configs/<分组>/<key>.ts` 是在**库构建时**
|
|
43
|
+
* 由 `import.meta.glob` 固化的,宿主项目没法再往这个目录里塞文件;而页面配置天然是
|
|
44
|
+
* 按业务/菜单定制的东西,所以额外开放这个入口:
|
|
45
|
+
*
|
|
46
|
+
* app.use(lyflowchart, {
|
|
47
|
+
* customConfigs: {
|
|
48
|
+
* // key 即 getApprovalConfig(key) 的 key(menu_flag),命中同名文件名的配置
|
|
49
|
+
* my_menu_flag: () => import('./approval-configs/my_menu_flag'),
|
|
50
|
+
* default: () => import('./approval-configs/default'),
|
|
51
|
+
* },
|
|
52
|
+
* });
|
|
53
|
+
*
|
|
54
|
+
* 同名 key 由宿主覆盖本库自带的配置。取值形式与库自带的 glob 一致:
|
|
55
|
+
* 一个返回 `{ default: ... }` 的懒加载函数。
|
|
56
|
+
*/
|
|
57
|
+
export declare const useCustomConfigs: () => Record<string, () => Promise<any>>;
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
import { v as e } from "./init-plugin-fQTSQzui.js";
|
|
2
|
+
import { r as t, t as n } from "./tableConfig-uLXue-BS.js";
|
|
3
|
+
import { t as r } from "./ActionsConfig-BuvSvRbv.js";
|
|
4
|
+
import { Fragment as i, computed as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createTextVNode as u, createVNode as d, defineComponent as f, openBlock as p, reactive as m, ref as h, resolveComponent as g, withCtx as _, withModifiers as v } from "vue";
|
|
5
|
+
//#region src/components/approval/components/approvalPageConfig/leftColumn.vue?vue&type=script&lang.ts
|
|
6
|
+
var y = f({
|
|
7
|
+
components: {
|
|
8
|
+
BasicQueryConditions: t,
|
|
9
|
+
ButtonConfig: r,
|
|
10
|
+
tableConfig: n
|
|
11
|
+
},
|
|
12
|
+
props: {
|
|
13
|
+
dataSource: {
|
|
14
|
+
type: Object,
|
|
15
|
+
required: !0
|
|
16
|
+
},
|
|
17
|
+
formData: {
|
|
18
|
+
type: Object,
|
|
19
|
+
default: () => ({})
|
|
20
|
+
},
|
|
21
|
+
eventBus: { type: Object }
|
|
22
|
+
},
|
|
23
|
+
emits: ["update:dataSource"],
|
|
24
|
+
setup(e, { emit: t }) {
|
|
25
|
+
let n = [
|
|
26
|
+
{
|
|
27
|
+
title: "表格标识",
|
|
28
|
+
dataIndex: "id",
|
|
29
|
+
key: "id",
|
|
30
|
+
rowDrag: !0
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
title: "标题",
|
|
34
|
+
dataIndex: "title",
|
|
35
|
+
key: "title"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
title: "是否为标准模型查询",
|
|
39
|
+
dataIndex: "is_normal_model",
|
|
40
|
+
key: "is_normal_model"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
title: "对应模型",
|
|
44
|
+
dataIndex: "modelType",
|
|
45
|
+
key: "model"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
title: "组名",
|
|
49
|
+
dataIndex: "group_title",
|
|
50
|
+
key: "group_title"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
title: "操作",
|
|
54
|
+
key: "action"
|
|
55
|
+
}
|
|
56
|
+
], r = h("1"), i = m({
|
|
57
|
+
name: "example",
|
|
58
|
+
isStandard: !0,
|
|
59
|
+
model: "lucy",
|
|
60
|
+
listUrl: "example"
|
|
61
|
+
}), o = (n) => {
|
|
62
|
+
let r = e.dataSource.tables.findIndex((e) => e.id === n.id);
|
|
63
|
+
if (r !== -1) {
|
|
64
|
+
let i = [...e.dataSource.tables];
|
|
65
|
+
i[r] = n, t("update:dataSource", {
|
|
66
|
+
...e.dataSource,
|
|
67
|
+
tables: i
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
}, s = (n) => {
|
|
71
|
+
let r = e.dataSource.tables.filter((e) => e.id !== n);
|
|
72
|
+
t("update:dataSource", {
|
|
73
|
+
...e.dataSource,
|
|
74
|
+
tables: r
|
|
75
|
+
});
|
|
76
|
+
}, c = () => {
|
|
77
|
+
let n = 1;
|
|
78
|
+
if (e.dataSource.tables.length > 0) for (; e.dataSource.tables.some((e) => e.id === String(n));) n++;
|
|
79
|
+
let r = {
|
|
80
|
+
id: String(n),
|
|
81
|
+
title: "新表格",
|
|
82
|
+
group_title: "新表格",
|
|
83
|
+
is_normal_model: !0,
|
|
84
|
+
modelType: "",
|
|
85
|
+
list_url: "",
|
|
86
|
+
columns: [],
|
|
87
|
+
actions: [],
|
|
88
|
+
search_config: [],
|
|
89
|
+
query_params: {},
|
|
90
|
+
base_conditions: [[{
|
|
91
|
+
field_name: "is_active",
|
|
92
|
+
operator: "eq",
|
|
93
|
+
value: [!0],
|
|
94
|
+
format: "choices",
|
|
95
|
+
class_name: "bool",
|
|
96
|
+
value_type: "fixed"
|
|
97
|
+
}]]
|
|
98
|
+
}, i = [...e.dataSource.tables, r];
|
|
99
|
+
t("update:dataSource", {
|
|
100
|
+
...e.dataSource,
|
|
101
|
+
tables: i
|
|
102
|
+
});
|
|
103
|
+
}, l = h([]), u = (e) => {
|
|
104
|
+
l.value = e;
|
|
105
|
+
};
|
|
106
|
+
return {
|
|
107
|
+
columns: n,
|
|
108
|
+
activeKey: r,
|
|
109
|
+
formState: i,
|
|
110
|
+
handleDelete: s,
|
|
111
|
+
selectedRowKeys: l,
|
|
112
|
+
rowSelection: a(() => ({
|
|
113
|
+
selectedRowKeys: l.value,
|
|
114
|
+
onChange: u,
|
|
115
|
+
type: "radio"
|
|
116
|
+
})),
|
|
117
|
+
customRow: (e) => ({ onClick: () => {
|
|
118
|
+
l.value = [e.id];
|
|
119
|
+
} }),
|
|
120
|
+
rowClassName: (e) => e.id === l.value[0] ? "selected-row" : "",
|
|
121
|
+
selectedRow: a(() => {
|
|
122
|
+
if (l.value.length > 0) return e.dataSource.tables.find((e) => e.id === l.value[0]);
|
|
123
|
+
}),
|
|
124
|
+
handleUpdateRow: o,
|
|
125
|
+
handleAdd: c,
|
|
126
|
+
handleChangeid: (t) => {
|
|
127
|
+
let n = 0;
|
|
128
|
+
for (let r of e.dataSource.tables) r.id === t.id && n++;
|
|
129
|
+
if (n > 1) {
|
|
130
|
+
let n = t.id, r = 1;
|
|
131
|
+
for (; e.dataSource.tables.some((e) => e.id === `${n}_${r}`);) r++;
|
|
132
|
+
t.id = `${n}_${r}`;
|
|
133
|
+
}
|
|
134
|
+
l.value = [t.id];
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
}), b = { class: "tables-bottom" };
|
|
139
|
+
function x(e, t, n, r, a, f) {
|
|
140
|
+
let m = g("a-button"), h = g("a-tag"), y = g("s-table"), x = g("table-config");
|
|
141
|
+
return p(), c("div", null, [
|
|
142
|
+
t[4] ||= l("div", null, "表格配置", -1),
|
|
143
|
+
d(y, {
|
|
144
|
+
columns: e.columns,
|
|
145
|
+
"data-source": e.dataSource.tables,
|
|
146
|
+
"row-key": "id",
|
|
147
|
+
pagination: !1,
|
|
148
|
+
"row-selection": e.rowSelection,
|
|
149
|
+
"custom-row": e.customRow,
|
|
150
|
+
"row-class-name": e.rowClassName,
|
|
151
|
+
"range-selection": !1
|
|
152
|
+
}, {
|
|
153
|
+
bodyCell: _(({ column: n, record: r, text: a }) => [n.key === "action" ? (p(), o(m, {
|
|
154
|
+
key: 0,
|
|
155
|
+
type: "link",
|
|
156
|
+
danger: !0,
|
|
157
|
+
onClick: v((t) => e.handleDelete(r.id), ["stop"])
|
|
158
|
+
}, {
|
|
159
|
+
default: _(() => [...t[0] ||= [u(" 删除 ", -1)]]),
|
|
160
|
+
_: 1
|
|
161
|
+
}, 8, ["onClick"])) : n.key === "is_normal_model" ? (p(), c(i, { key: 1 }, [a ? (p(), o(h, {
|
|
162
|
+
key: 0,
|
|
163
|
+
color: "green"
|
|
164
|
+
}, {
|
|
165
|
+
default: _(() => [...t[1] ||= [u(" 是 ", -1)]]),
|
|
166
|
+
_: 1
|
|
167
|
+
})) : (p(), o(h, {
|
|
168
|
+
key: 1,
|
|
169
|
+
color: "red"
|
|
170
|
+
}, {
|
|
171
|
+
default: _(() => [...t[2] ||= [u(" 否 ", -1)]]),
|
|
172
|
+
_: 1
|
|
173
|
+
}))], 64)) : s("", !0)]),
|
|
174
|
+
_: 1
|
|
175
|
+
}, 8, [
|
|
176
|
+
"columns",
|
|
177
|
+
"data-source",
|
|
178
|
+
"row-selection",
|
|
179
|
+
"custom-row",
|
|
180
|
+
"row-class-name"
|
|
181
|
+
]),
|
|
182
|
+
l("div", b, [d(m, {
|
|
183
|
+
type: "primary",
|
|
184
|
+
onClick: e.handleAdd
|
|
185
|
+
}, {
|
|
186
|
+
default: _(() => [...t[3] ||= [u(" 添加表格 ", -1)]]),
|
|
187
|
+
_: 1
|
|
188
|
+
}, 8, ["onClick"])]),
|
|
189
|
+
e.selectedRow ? (p(), o(x, {
|
|
190
|
+
key: 0,
|
|
191
|
+
"data-source": e.selectedRow,
|
|
192
|
+
"has-id": !0,
|
|
193
|
+
"table-type": "tables",
|
|
194
|
+
formData: e.formData,
|
|
195
|
+
eventBus: e.eventBus,
|
|
196
|
+
"onUpdate:dataSource": e.handleUpdateRow,
|
|
197
|
+
onChange_id: e.handleChangeid
|
|
198
|
+
}, null, 8, [
|
|
199
|
+
"data-source",
|
|
200
|
+
"formData",
|
|
201
|
+
"eventBus",
|
|
202
|
+
"onUpdate:dataSource",
|
|
203
|
+
"onChange_id"
|
|
204
|
+
])) : s("", !0)
|
|
205
|
+
]);
|
|
206
|
+
}
|
|
207
|
+
var S = /* @__PURE__ */ e(y, [["render", x], ["__scopeId", "data-v-3d16d4ac"]]);
|
|
208
|
+
//#endregion
|
|
209
|
+
export { S as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leftColumn-CsPjufue.js","names":[],"sources":["../src/components/approval/components/approvalPageConfig/leftColumn.vue","../src/components/approval/components/approvalPageConfig/leftColumn.vue"],"sourcesContent":["<template>\n <div>\n <div>表格配置</div>\n <s-table\n :columns=\"columns\"\n :data-source=\"dataSource.tables\"\n row-key=\"id\"\n :pagination=\"false\"\n :row-selection=\"rowSelection\"\n :custom-row=\"customRow\"\n :row-class-name=\"rowClassName\"\n :range-selection=\"false\"\n >\n <template #bodyCell=\"{ column, record, text }\">\n <template v-if=\"column.key === 'action'\">\n <a-button\n type=\"link\"\n :danger=\"true\"\n @click.stop=\"handleDelete(record.id)\"\n >\n 删除\n </a-button>\n </template>\n <template v-else-if=\"column.key === 'is_normal_model'\">\n <a-tag\n color=\"green\"\n v-if=\"text\"\n >\n 是\n </a-tag>\n <a-tag\n color=\"red\"\n v-else\n >\n 否\n </a-tag>\n </template>\n </template>\n </s-table>\n <div class=\"tables-bottom\">\n <a-button\n type=\"primary\"\n @click=\"handleAdd\"\n >\n 添加表格\n </a-button>\n </div>\n <table-config\n v-if=\"selectedRow\"\n :data-source=\"selectedRow\"\n :has-id=\"true\"\n table-type=\"tables\"\n :formData=\"formData\"\n :eventBus=\"eventBus\"\n @update:dataSource=\"handleUpdateRow\"\n @change_id=\"handleChangeid\"\n ></table-config>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, reactive, ref, computed, PropType } from 'vue';\nimport BasicQueryConditions from './BaseConditions.vue';\nimport ButtonConfig from './ActionsConfig.vue';\nimport tableConfig from './tableConfig.vue';\nimport { TablesSection } from '../../typing';\n\nexport default defineComponent({\n components: {\n BasicQueryConditions,\n ButtonConfig,\n tableConfig,\n },\n props: {\n dataSource: {\n type: Object as PropType<TablesSection>,\n required: true,\n },\n formData: {\n type: Object,\n default: () => ({}),\n },\n eventBus: {\n type: Object as any,\n },\n },\n emits: ['update:dataSource'],\n setup(props, { emit }) {\n const columns = [\n {\n title: '表格标识',\n dataIndex: 'id',\n key: 'id',\n rowDrag: true,\n },\n {\n title: '标题',\n dataIndex: 'title',\n key: 'title',\n },\n {\n title: '是否为标准模型查询',\n dataIndex: 'is_normal_model',\n key: 'is_normal_model',\n },\n {\n title: '对应模型',\n dataIndex: 'modelType',\n key: 'model',\n },\n {\n title: '组名',\n dataIndex: 'group_title',\n key: 'group_title',\n },\n {\n title: '操作',\n key: 'action',\n },\n ];\n\n const activeKey = ref('1');\n\n const formState = reactive({\n name: 'example',\n isStandard: true,\n model: 'lucy',\n listUrl: 'example',\n });\n\n const handleUpdateRow = updatedRow => {\n const rowIndex = props.dataSource.tables.findIndex(row => row.id === updatedRow.id);\n if (rowIndex !== -1) {\n const newTables = [...props.dataSource.tables];\n newTables[rowIndex] = updatedRow;\n emit('update:dataSource', { ...props.dataSource, tables: newTables });\n }\n };\n const handleDelete = (id: string) => {\n const newTables = props.dataSource.tables.filter(item => item.id !== id);\n emit('update:dataSource', { ...props.dataSource, tables: newTables });\n };\n\n const handleAdd = () => {\n let newId = 1;\n if (props.dataSource.tables.length > 0) {\n while (props.dataSource.tables.some(item => item.id === String(newId))) {\n newId++;\n }\n }\n\n const newRow = {\n id: String(newId),\n title: '新表格',\n group_title: '新表格',\n is_normal_model: true,\n modelType: '',\n list_url: '',\n columns: [],\n actions: [],\n search_config: [],\n query_params: {},\n base_conditions: [\n [\n {\n field_name: 'is_active',\n operator: 'eq',\n value: [true],\n format: 'choices',\n class_name: 'bool',\n value_type: 'fixed',\n },\n ],\n ],\n };\n const newTables = [...props.dataSource.tables, newRow];\n emit('update:dataSource', { ...props.dataSource, tables: newTables });\n };\n\n const selectedRowKeys = ref<string[]>([]);\n\n const onSelectChange = (keys: string[]) => {\n selectedRowKeys.value = keys;\n };\n\n const rowSelection = computed(() => {\n return {\n selectedRowKeys: selectedRowKeys.value,\n onChange: onSelectChange,\n type: 'radio',\n };\n });\n\n const customRow = (record: { id: string }) => {\n return {\n onClick: () => {\n selectedRowKeys.value = [record.id];\n },\n };\n };\n\n const rowClassName = (record: { id: string }) => {\n return record.id === selectedRowKeys.value[0] ? 'selected-row' : '';\n };\n\n const selectedRow = computed(() => {\n if (selectedRowKeys.value.length > 0) {\n return props.dataSource.tables.find(item => item.id === selectedRowKeys.value[0]);\n }\n return undefined;\n });\n const handleChangeid = table => {\n let findcount = 0;\n for (const item of props.dataSource.tables) {\n if (item.id === table.id) {\n findcount++;\n }\n }\n if (findcount > 1) {\n const old_id = table.id;\n let newId = 1;\n while (props.dataSource.tables.some(item => item.id === `${old_id}_${newId}`)) {\n newId++;\n }\n table.id = `${old_id}_${newId}`;\n }\n selectedRowKeys.value = [table.id];\n };\n\n return {\n columns,\n activeKey,\n formState,\n handleDelete,\n selectedRowKeys,\n rowSelection,\n customRow,\n rowClassName,\n selectedRow,\n handleUpdateRow,\n handleAdd,\n handleChangeid,\n };\n },\n});\n</script>\n\n<style scoped lang=\"less\">\n:deep(.selected-row) {\n background-color: #e6f7ff;\n}\n.tables-bottom {\n display: flex;\n justify-content: flex-end;\n margin-bottom: 16px;\n}\n</style>\n","<template>\n <div>\n <div>表格配置</div>\n <s-table\n :columns=\"columns\"\n :data-source=\"dataSource.tables\"\n row-key=\"id\"\n :pagination=\"false\"\n :row-selection=\"rowSelection\"\n :custom-row=\"customRow\"\n :row-class-name=\"rowClassName\"\n :range-selection=\"false\"\n >\n <template #bodyCell=\"{ column, record, text }\">\n <template v-if=\"column.key === 'action'\">\n <a-button\n type=\"link\"\n :danger=\"true\"\n @click.stop=\"handleDelete(record.id)\"\n >\n 删除\n </a-button>\n </template>\n <template v-else-if=\"column.key === 'is_normal_model'\">\n <a-tag\n color=\"green\"\n v-if=\"text\"\n >\n 是\n </a-tag>\n <a-tag\n color=\"red\"\n v-else\n >\n 否\n </a-tag>\n </template>\n </template>\n </s-table>\n <div class=\"tables-bottom\">\n <a-button\n type=\"primary\"\n @click=\"handleAdd\"\n >\n 添加表格\n </a-button>\n </div>\n <table-config\n v-if=\"selectedRow\"\n :data-source=\"selectedRow\"\n :has-id=\"true\"\n table-type=\"tables\"\n :formData=\"formData\"\n :eventBus=\"eventBus\"\n @update:dataSource=\"handleUpdateRow\"\n @change_id=\"handleChangeid\"\n ></table-config>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, reactive, ref, computed, PropType } from 'vue';\nimport BasicQueryConditions from './BaseConditions.vue';\nimport ButtonConfig from './ActionsConfig.vue';\nimport tableConfig from './tableConfig.vue';\nimport { TablesSection } from '../../typing';\n\nexport default defineComponent({\n components: {\n BasicQueryConditions,\n ButtonConfig,\n tableConfig,\n },\n props: {\n dataSource: {\n type: Object as PropType<TablesSection>,\n required: true,\n },\n formData: {\n type: Object,\n default: () => ({}),\n },\n eventBus: {\n type: Object as any,\n },\n },\n emits: ['update:dataSource'],\n setup(props, { emit }) {\n const columns = [\n {\n title: '表格标识',\n dataIndex: 'id',\n key: 'id',\n rowDrag: true,\n },\n {\n title: '标题',\n dataIndex: 'title',\n key: 'title',\n },\n {\n title: '是否为标准模型查询',\n dataIndex: 'is_normal_model',\n key: 'is_normal_model',\n },\n {\n title: '对应模型',\n dataIndex: 'modelType',\n key: 'model',\n },\n {\n title: '组名',\n dataIndex: 'group_title',\n key: 'group_title',\n },\n {\n title: '操作',\n key: 'action',\n },\n ];\n\n const activeKey = ref('1');\n\n const formState = reactive({\n name: 'example',\n isStandard: true,\n model: 'lucy',\n listUrl: 'example',\n });\n\n const handleUpdateRow = updatedRow => {\n const rowIndex = props.dataSource.tables.findIndex(row => row.id === updatedRow.id);\n if (rowIndex !== -1) {\n const newTables = [...props.dataSource.tables];\n newTables[rowIndex] = updatedRow;\n emit('update:dataSource', { ...props.dataSource, tables: newTables });\n }\n };\n const handleDelete = (id: string) => {\n const newTables = props.dataSource.tables.filter(item => item.id !== id);\n emit('update:dataSource', { ...props.dataSource, tables: newTables });\n };\n\n const handleAdd = () => {\n let newId = 1;\n if (props.dataSource.tables.length > 0) {\n while (props.dataSource.tables.some(item => item.id === String(newId))) {\n newId++;\n }\n }\n\n const newRow = {\n id: String(newId),\n title: '新表格',\n group_title: '新表格',\n is_normal_model: true,\n modelType: '',\n list_url: '',\n columns: [],\n actions: [],\n search_config: [],\n query_params: {},\n base_conditions: [\n [\n {\n field_name: 'is_active',\n operator: 'eq',\n value: [true],\n format: 'choices',\n class_name: 'bool',\n value_type: 'fixed',\n },\n ],\n ],\n };\n const newTables = [...props.dataSource.tables, newRow];\n emit('update:dataSource', { ...props.dataSource, tables: newTables });\n };\n\n const selectedRowKeys = ref<string[]>([]);\n\n const onSelectChange = (keys: string[]) => {\n selectedRowKeys.value = keys;\n };\n\n const rowSelection = computed(() => {\n return {\n selectedRowKeys: selectedRowKeys.value,\n onChange: onSelectChange,\n type: 'radio',\n };\n });\n\n const customRow = (record: { id: string }) => {\n return {\n onClick: () => {\n selectedRowKeys.value = [record.id];\n },\n };\n };\n\n const rowClassName = (record: { id: string }) => {\n return record.id === selectedRowKeys.value[0] ? 'selected-row' : '';\n };\n\n const selectedRow = computed(() => {\n if (selectedRowKeys.value.length > 0) {\n return props.dataSource.tables.find(item => item.id === selectedRowKeys.value[0]);\n }\n return undefined;\n });\n const handleChangeid = table => {\n let findcount = 0;\n for (const item of props.dataSource.tables) {\n if (item.id === table.id) {\n findcount++;\n }\n }\n if (findcount > 1) {\n const old_id = table.id;\n let newId = 1;\n while (props.dataSource.tables.some(item => item.id === `${old_id}_${newId}`)) {\n newId++;\n }\n table.id = `${old_id}_${newId}`;\n }\n selectedRowKeys.value = [table.id];\n };\n\n return {\n columns,\n activeKey,\n formState,\n handleDelete,\n selectedRowKeys,\n rowSelection,\n customRow,\n rowClassName,\n selectedRow,\n handleUpdateRow,\n handleAdd,\n handleChangeid,\n };\n },\n});\n</script>\n\n<style scoped lang=\"less\">\n:deep(.selected-row) {\n background-color: #e6f7ff;\n}\n.tables-bottom {\n display: flex;\n justify-content: flex-end;\n margin-bottom: 16px;\n}\n</style>\n"],"mappings":"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"}
|