@duxweb/dvha-pro 1.0.45 → 1.0.47

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.
Files changed (194) hide show
  1. package/dist/cjs/component.cjs +1 -1
  2. package/dist/cjs/components/chart/echart.cjs +1 -1
  3. package/dist/cjs/components/crop/imageCrop.cjs +1 -1
  4. package/dist/cjs/components/data/dynamicSelect.cjs +1 -1
  5. package/dist/cjs/components/data/selectModal.cjs +1 -1
  6. package/dist/cjs/components/designEditor/components/grid.cjs +1 -1
  7. package/dist/cjs/components/designEditor/editor/setting.cjs +1 -1
  8. package/dist/cjs/components/flowEditor/components/jsonEditor.cjs +1 -0
  9. package/dist/cjs/components/flowEditor/components/nodeCard.cjs +1 -0
  10. package/dist/cjs/components/flowEditor/components/setting.cjs +1 -0
  11. package/dist/cjs/components/flowEditor/components/toolbar.cjs +1 -0
  12. package/dist/cjs/components/flowEditor/flowEditor.cjs +1 -0
  13. package/dist/cjs/components/flowEditor/nodes/endNode.cjs +1 -0
  14. package/dist/cjs/components/flowEditor/nodes/index.cjs +1 -0
  15. package/dist/cjs/components/flowEditor/nodes/processNode.cjs +1 -0
  16. package/dist/cjs/components/flowEditor/nodes/startNode.cjs +1 -0
  17. package/dist/cjs/components/flowEditor/utils/nodeDataUtils.cjs +1 -0
  18. package/dist/cjs/components/form/drawerForm.cjs +1 -1
  19. package/dist/cjs/components/form/modalForm.cjs +1 -1
  20. package/dist/cjs/components/form/pageForm.cjs +1 -1
  21. package/dist/cjs/components/form/pageTabForm.cjs +1 -1
  22. package/dist/cjs/components/form/settingForm.cjs +1 -1
  23. package/dist/cjs/components/formEditor/base/base.cjs +1 -1
  24. package/dist/cjs/components/formEditor/base/setting.cjs +1 -1
  25. package/dist/cjs/components/formEditor/components/cascader.cjs +1 -1
  26. package/dist/cjs/components/formEditor/components/cascaderAsync.cjs +1 -1
  27. package/dist/cjs/components/formEditor/components/checkbox.cjs +1 -1
  28. package/dist/cjs/components/formEditor/components/color.cjs +1 -1
  29. package/dist/cjs/components/formEditor/components/date.cjs +1 -1
  30. package/dist/cjs/components/formEditor/components/dynamicInput.cjs +1 -1
  31. package/dist/cjs/components/formEditor/components/dynamicTags.cjs +1 -1
  32. package/dist/cjs/components/formEditor/components/editor.cjs +1 -1
  33. package/dist/cjs/components/formEditor/components/fileUpload.cjs +1 -1
  34. package/dist/cjs/components/formEditor/components/imageUpload.cjs +1 -1
  35. package/dist/cjs/components/formEditor/components/input.cjs +1 -1
  36. package/dist/cjs/components/formEditor/components/inputNumber.cjs +1 -1
  37. package/dist/cjs/components/formEditor/components/mentionAsync.cjs +1 -1
  38. package/dist/cjs/components/formEditor/components/radio.cjs +1 -1
  39. package/dist/cjs/components/formEditor/components/region.cjs +1 -1
  40. package/dist/cjs/components/formEditor/components/select.cjs +1 -1
  41. package/dist/cjs/components/formEditor/components/selectAsync.cjs +1 -1
  42. package/dist/cjs/components/formEditor/components/sider.cjs +1 -1
  43. package/dist/cjs/components/formEditor/components/switch.cjs +1 -1
  44. package/dist/cjs/components/formEditor/components/time.cjs +1 -1
  45. package/dist/cjs/components/formEditor/components/transferAsync.cjs +1 -1
  46. package/dist/cjs/components/formEditor/components/treeSelect.cjs +1 -1
  47. package/dist/cjs/components/formEditor/components/treeSelectAsync.cjs +1 -1
  48. package/dist/cjs/components/formEditor/editor.cjs +1 -1
  49. package/dist/cjs/components/formEditor/renderer.cjs +1 -1
  50. package/dist/cjs/components/icon/icon.cjs +1 -1
  51. package/dist/cjs/components/layout/list.cjs +1 -1
  52. package/dist/cjs/components/layout/table.cjs +1 -1
  53. package/dist/cjs/components/layout/tools.cjs +1 -1
  54. package/dist/cjs/components/level/level.cjs +1 -1
  55. package/dist/cjs/components/list/card.cjs +1 -1
  56. package/dist/cjs/components/list/list.cjs +1 -1
  57. package/dist/cjs/components/posterEditor/pages/RightPanel.cjs +1 -1
  58. package/dist/cjs/components/posterEditor/posterEditor.cjs +1 -1
  59. package/dist/cjs/components/table/table.cjs +1 -1
  60. package/dist/cjs/components/table/tablePage.cjs +1 -1
  61. package/dist/cjs/components/upload/file.cjs +1 -1
  62. package/dist/cjs/components/upload/image.cjs +1 -1
  63. package/dist/cjs/components/upload/manage/item.cjs +1 -1
  64. package/dist/cjs/components/upload/manager.cjs +1 -1
  65. package/dist/cjs/dvha-pro.css +1 -1
  66. package/dist/cjs/hooks/dialog.cjs +1 -1
  67. package/dist/cjs/hooks/drawer.cjs +1 -1
  68. package/dist/cjs/hooks/modal.cjs +1 -1
  69. package/dist/cjs/hooks/table/image.cjs +1 -1
  70. package/dist/cjs/hooks/table/media.cjs +1 -1
  71. package/dist/cjs/hooks/table.cjs +1 -1
  72. package/dist/cjs/index.cjs +1 -1
  73. package/dist/cjs/langs/en-US.json.cjs +1 -1
  74. package/dist/cjs/langs/zh-CN.json.cjs +1 -1
  75. package/dist/cjs/main.cjs +1 -1
  76. package/dist/cjs/pages/authLayout.cjs +1 -1
  77. package/dist/cjs/pages/layout/page.cjs +1 -1
  78. package/dist/cjs/pages/login.cjs +1 -1
  79. package/dist/cjs/pages/menu/avatar.cjs +1 -1
  80. package/dist/cjs/pages/menu/button.cjs +1 -1
  81. package/dist/cjs/pages/menu/cmd.cjs +1 -1
  82. package/dist/cjs/pages/menu/main.cjs +1 -1
  83. package/dist/cjs/pages/menu/mobile.cjs +1 -1
  84. package/dist/cjs/pages/page404.cjs +1 -1
  85. package/dist/cjs/pages/pageStatus.cjs +1 -1
  86. package/dist/cjs/theme/uno.css.cjs +75 -9
  87. package/dist/esm/component.js +5 -2
  88. package/dist/esm/components/chart/echart.js +5 -2
  89. package/dist/esm/components/crop/imageCrop.js +13 -10
  90. package/dist/esm/components/data/dynamicSelect.js +5 -2
  91. package/dist/esm/components/data/selectModal.js +5 -2
  92. package/dist/esm/components/designEditor/components/grid.js +5 -2
  93. package/dist/esm/components/designEditor/editor/setting.js +7 -4
  94. package/dist/esm/components/flowEditor/components/jsonEditor.js +53 -0
  95. package/dist/esm/components/flowEditor/components/nodeCard.js +160 -0
  96. package/dist/esm/components/flowEditor/components/setting.js +319 -0
  97. package/dist/esm/components/flowEditor/components/toolbar.js +120 -0
  98. package/dist/esm/components/flowEditor/flowEditor.js +287 -0
  99. package/dist/esm/components/flowEditor/nodes/endNode.js +144 -0
  100. package/dist/esm/components/flowEditor/nodes/index.js +66 -0
  101. package/dist/esm/components/flowEditor/nodes/processNode.js +142 -0
  102. package/dist/esm/components/flowEditor/nodes/startNode.js +144 -0
  103. package/dist/esm/components/flowEditor/utils/nodeDataUtils.js +82 -0
  104. package/dist/esm/components/form/drawerForm.js +5 -2
  105. package/dist/esm/components/form/modalForm.js +12 -9
  106. package/dist/esm/components/form/pageForm.js +21 -18
  107. package/dist/esm/components/form/pageTabForm.js +5 -2
  108. package/dist/esm/components/form/settingForm.js +11 -8
  109. package/dist/esm/components/formEditor/base/base.js +8 -5
  110. package/dist/esm/components/formEditor/base/setting.js +5 -2
  111. package/dist/esm/components/formEditor/components/cascader.js +6 -3
  112. package/dist/esm/components/formEditor/components/cascaderAsync.js +6 -3
  113. package/dist/esm/components/formEditor/components/checkbox.js +17 -14
  114. package/dist/esm/components/formEditor/components/color.js +6 -3
  115. package/dist/esm/components/formEditor/components/date.js +6 -3
  116. package/dist/esm/components/formEditor/components/dynamicInput.js +6 -3
  117. package/dist/esm/components/formEditor/components/dynamicTags.js +13 -10
  118. package/dist/esm/components/formEditor/components/editor.js +6 -3
  119. package/dist/esm/components/formEditor/components/fileUpload.js +6 -3
  120. package/dist/esm/components/formEditor/components/imageUpload.js +6 -3
  121. package/dist/esm/components/formEditor/components/input.js +6 -3
  122. package/dist/esm/components/formEditor/components/inputNumber.js +29 -26
  123. package/dist/esm/components/formEditor/components/mentionAsync.js +17 -14
  124. package/dist/esm/components/formEditor/components/radio.js +17 -14
  125. package/dist/esm/components/formEditor/components/region.js +19 -16
  126. package/dist/esm/components/formEditor/components/select.js +6 -3
  127. package/dist/esm/components/formEditor/components/selectAsync.js +12 -9
  128. package/dist/esm/components/formEditor/components/sider.js +6 -3
  129. package/dist/esm/components/formEditor/components/switch.js +22 -19
  130. package/dist/esm/components/formEditor/components/time.js +6 -3
  131. package/dist/esm/components/formEditor/components/transferAsync.js +26 -23
  132. package/dist/esm/components/formEditor/components/treeSelect.js +6 -3
  133. package/dist/esm/components/formEditor/components/treeSelectAsync.js +26 -23
  134. package/dist/esm/components/formEditor/editor.js +5 -2
  135. package/dist/esm/components/formEditor/renderer.js +5 -2
  136. package/dist/esm/components/icon/icon.js +5 -2
  137. package/dist/esm/components/layout/list.js +98 -86
  138. package/dist/esm/components/layout/table.js +125 -117
  139. package/dist/esm/components/layout/tools.js +109 -32
  140. package/dist/esm/components/level/level.js +5 -2
  141. package/dist/esm/components/list/card.js +27 -22
  142. package/dist/esm/components/list/list.js +16 -11
  143. package/dist/esm/components/posterEditor/pages/RightPanel.js +5 -2
  144. package/dist/esm/components/posterEditor/posterEditor.js +5 -2
  145. package/dist/esm/components/table/table.js +35 -28
  146. package/dist/esm/components/table/tablePage.js +17 -12
  147. package/dist/esm/components/upload/file.js +5 -2
  148. package/dist/esm/components/upload/image.js +18 -15
  149. package/dist/esm/components/upload/manage/item.js +5 -2
  150. package/dist/esm/components/upload/manager.js +5 -2
  151. package/dist/esm/dvha-pro.css +1 -1
  152. package/dist/esm/hooks/dialog.js +5 -2
  153. package/dist/esm/hooks/drawer.js +5 -2
  154. package/dist/esm/hooks/modal.js +5 -2
  155. package/dist/esm/hooks/table/image.js +5 -2
  156. package/dist/esm/hooks/table/media.js +5 -2
  157. package/dist/esm/hooks/table.js +25 -19
  158. package/dist/esm/index.js +252 -226
  159. package/dist/esm/langs/en-US.json.js +5 -5
  160. package/dist/esm/langs/zh-CN.json.js +6 -6
  161. package/dist/esm/main.js +4 -2
  162. package/dist/esm/pages/authLayout.js +5 -2
  163. package/dist/esm/pages/layout/page.js +9 -6
  164. package/dist/esm/pages/login.js +10 -7
  165. package/dist/esm/pages/menu/avatar.js +18 -15
  166. package/dist/esm/pages/menu/button.js +8 -5
  167. package/dist/esm/pages/menu/cmd.js +13 -10
  168. package/dist/esm/pages/menu/main.js +29 -26
  169. package/dist/esm/pages/menu/mobile.js +5 -2
  170. package/dist/esm/pages/page404.js +3 -0
  171. package/dist/esm/pages/pageStatus.js +5 -2
  172. package/dist/esm/theme/uno.css.js +75 -9
  173. package/dist/types/components/flowEditor/components/index.d.ts +3 -0
  174. package/dist/types/components/flowEditor/components/jsonEditor.d.ts +22 -0
  175. package/dist/types/components/flowEditor/components/nodeCard.d.ts +112 -0
  176. package/dist/types/components/flowEditor/components/setting.d.ts +16 -0
  177. package/dist/types/components/flowEditor/components/toolbar.d.ts +11 -0
  178. package/dist/types/components/flowEditor/flowEditor.d.ts +68 -0
  179. package/dist/types/components/flowEditor/index.d.ts +5 -0
  180. package/dist/types/components/flowEditor/nodes/endNode.d.ts +19 -0
  181. package/dist/types/components/flowEditor/nodes/index.d.ts +8 -0
  182. package/dist/types/components/flowEditor/nodes/processNode.d.ts +19 -0
  183. package/dist/types/components/flowEditor/nodes/startNode.d.ts +19 -0
  184. package/dist/types/components/flowEditor/types/index.d.ts +62 -0
  185. package/dist/types/components/flowEditor/utils/nodeDataUtils.d.ts +59 -0
  186. package/dist/types/components/index.d.ts +1 -0
  187. package/dist/types/components/layout/list.d.ts +7 -0
  188. package/dist/types/components/layout/table.d.ts +7 -0
  189. package/dist/types/components/layout/tools.d.ts +28 -2
  190. package/dist/types/components/list/card.d.ts +6 -0
  191. package/dist/types/components/list/list.d.ts +6 -0
  192. package/dist/types/components/table/tablePage.d.ts +6 -0
  193. package/dist/types/main.d.ts +2 -0
  194. package/package.json +9 -3
@@ -1,15 +1,15 @@
1
- const e = { search: "搜索", empty: "暂无数据", menu: "菜单", theme: "主题", dark: "暗色模式", light: "亮色模式", back: "返回", loading: "加载中...", success: "操作成功", error: "操作失败", unknownError: "未知错误", keyword: "请输入关键字", preview: "预览" }, a = { tab: { lock: "锁定", closeOther: "关闭其他", closeLeft: "关闭左侧", closeRight: "关闭右侧" }, dialog: { confirm: { title: "确定", content: "确定要确认吗?" }, cancel: { title: "取消", content: "确定要取消吗?" }, success: { title: "成功", content: "您的操作已成功" }, error: { title: "错误", content: "您的操作已失败" }, prompt: { title: "提示" } }, button: { confirm: "确定", cancel: "取消", submit: "提交", reset: "重置", delete: "删除", search: "查询", advanced: "高级", export: "导出", import: "导入", autoRefresh: "自动刷新", filter: "筛选", refresh: "刷新", select: "选择", create: "新建", download: "下载", rename: "重命名", preview: "预览", sideLeft: "左侧", sideRight: "右侧" }, form: { edit: "编辑", create: "新增", success: "保存成功", error: "保存失败" }, list: { selectAll: "全选", columnSetting: "列设置", selectedItems: "选中项: {num}", total: "共 {total} 条" }, editor: { placeholder: "请输入内容" }, upload: { fileManager: "文件管理器", uploadFile: "上传文件", cancel: "取消", delete: "删除", error: "上传失败", empty: "暂无文件", desc: "点击或拖拽文件到此区域", dropHere: "拖拽文件到此处", allFormats: "支持任意格式文件", supportFormats: "支持 {formats} 格式文件", maxSize: "最大文件大小: {size}MB", success: "上传成功", failed: "上传失败", fileExtension: "{ext}文件", status: { pending: "待上传", uploading: "上传中", success: "已上传", cancelled: "已取消", error: "失败" }, file: { name: "文件名", size: "大小", type: "类型", status: "状态" }, actions: "操作", selectUpload: { clickOrDrag: "点击选择文件或拖拽到此处", selectedFiles: "已选择 {count} 个文件", multipleSupport: "支持多文件选择", defaultDesc: "支持上传指定类型文件", acceptDesc: "仅支持上传 {accept} 格式文件", maxFiles: "最多 {max} 个文件" } }, uploadManage: { title: "文件管理", all: "全部", image: "图片", media: "媒体", docs: "文档", upload: "上传", empty: "暂无文件", emptyDesc: "暂无更多文件,请先上传文件", back: "返回上一级", parentLevel: "上一级", namePlaceholder: "请输入名称", createError: "创建失败", editError: "修改失败", delError: "删除失败", delTitle: "确认删除", delDesc: "确定要删除选中的文件吗?删除后不可恢复。" }, crop: { title: "裁剪", select: "选择", confirm: "确认" }, stats: { realTimeData: "实时数据" }, data: { selectTitle: "请选择数据" }, menu: { language: "语言", chinese: "中文", english: "English", color: "颜色", primaryColor: "主题色", neutralColor: "中性色", theme: "主题", followSystem: "跟随系统", lightMode: "亮色", darkMode: "暗色", logout: "退出登录" }, iconPicker: { title: "图标选择" }, designEditor: { layout: "布局", all: "全部", grid: { label: "网格", title: "网格设置", columns: "列数", spacing: "间距", columnsPlaceholder: "请输入列数", spacingPlaceholder: "请输入间距" } }, formEditor: { config: "组件配置", options: "选项配置", data: "数据", common: { componentConfig: "组件配置", optionConfig: "选项配置", optionData: "选项数据", dataConfig: "数据配置", dataEdit: "数据编辑", label: "标签", disabled: "禁用", clearable: "可清除", readonly: "只读", showCount: "显示字数", placeholder: "占位符", prefix: "前缀", suffix: "后缀", status: "状态", defaultValue: "默认值", minLength: "最小长度", maxLength: "最大长度", minValue: "最小值", maxValue: "最大值", labelField: "标签字段", valueField: "值字段", optionLabel: "选项标签", optionValue: "选项值", dataInterface: "数据接口", multiple: "多选", cascade: "级联", showPath: "显示路径", minCount: "最小数量", maxCount: "最大数量", uploadUrl: "上传地址", showAlpha: "显示透明度", timeFormat: "时间格式", hour12: "12小时制", dateType: "日期类型", inputType: "输入类型", formDirection: "表单方向", leftAlign: "左对齐", topAlign: "上对齐", settingAlign: "设置布局", pageAlign: "页面布局", name: "名称", desc: "描述" }, setting: { title: "表单设置" }, validation: "验证规则", componentConfig: "组件配置", input: { label: "文本", types: { text: "文本", textarea: "多行文本", password: "密码" } }, inputNumber: { label: "数字" }, select: { label: "选择", configDesc: "配置选项数据" }, radio: { label: "单选", configDesc: "配置单选框选项数据" }, checkbox: { label: "复选", configDesc: "配置复选框选项数据" }, switch: { label: "开关" }, date: { label: "日期", placeholder: "选择日期", dateType: "日期类型", date: "日期", daterange: "日期范围", datetime: "日期时间", datetimerange: "日期时间范围", month: "月份", monthrange: "月份范围", year: "年份", yearrange: "年份范围", quarter: "季度", quarterrange: "季度范围", week: "周" }, time: { label: "时间", placeholder: "选择时间", timeFormat: "格式", use12Hours: "12小时制" }, color: { label: "颜色", showAlpha: "显示透明度" }, cascader: { label: "级联", desc: "级联选择器选项数据,格式为 JSON 数组", configDesc: "配置选项", optionDesc: "JSON 数组格式", optionsDescription: "配置级联选择器选项数据", cascade: "级联", showPath: "显示路径" }, cascaderAsync: { label: "级联", dataApi: "数据接口", apiPlaceholder: "输入接口地址", cascade: "级联", showPath: "显示路径" }, dynamicInput: { label: "动态" }, editor: { label: "编辑器", placeholder: "输入内容", uploadUrlDesc: "编辑器图片上传地址" }, aiEditor: { label: "编辑器", uploadUrl: "上传地址", uploadUrlFeedback: "编辑器图片上传地址" }, sider: { name: "滑块", step: "步长", min: "最小", max: "最大" }, dynamicTags: { name: "标签", max: "最大数量" }, mentionAsync: { name: "提及", clearable: "可清除", path: "数据接口", labelField: "标签字段", valueField: "值字段" }, region: { name: "地区", Path: "数据接口", labelField: "标签字段", valueField: "值字段" }, selectAsync: { name: "选择", pagination: "分页", path: "数据接口", labelField: "标签字段", valueField: "值字段", imageField: "图片字段", descField: "描述字段" }, transferAsync: { name: "穿梭框" }, treeSelect: { name: "树选择" }, treeSelectAsync: { name: "异步树选择", path: "数据接口", labelField: "标签字段", keyField: "键字段" }, tree: { disabled: "禁用" }, groups: { form: "表单", select: "选择器", async: "异步" }, imageUpload: { label: "图片上传", maxSize: "最大文件大小(MB)", maxSizePlaceholder: "请输入最大文件大小", maxNumPlaceholder: "请输入最大文件数量", manager: "文件管理器" }, fileUpload: { label: "文件上传", accept: "接受文件类型", acceptPlaceholder: "请输入接受的文件类型,如:image/*,video/*", maxSize: "最大文件大小(MB)", maxSizePlaceholder: "请输入最大文件大小", maxNumPlaceholder: "请输入最大文件数量", manager: "文件管理器" }, main: { label: "主要内容", categories: { form: "表单", select: "选择器", async: "异步" }, actions: { jsonOutput: "Json 输出", save: "保存" } } } }, t = { table: { exportSuccess: "导出数据成功", exportProgress: "导出数据中, 请稍后...", exportFailed: "导出数据失败", exportSuccessContent: "成功导出 {count} 条数据", exportProgressContent: "第 {page} 页数据", exportFailedContent: "导出数据失败:{error}", importSuccess: "导入数据成功", importProgress: "导入数据中, 请稍后...", importFailed: "导入数据失败", importSuccessContent: "成功导入 {count} 条数据", importProgressContent: "{processed} / {total} 条数据", importFailedContent: "导入数据失败:{error}", saveSuccess: "保存成功", copySuccess: "复制成功", copyFailed: "复制失败" }, download: { failed: "下载失败" } }, l = { 400: { title: "400", desc: "请求错误" }, 401: { title: "401", desc: "您没有权限访问该页面" }, 403: { title: "403", desc: "您没有权限访问该页面" }, 404: { title: "404", desc: "页面不存在" }, 500: { title: "500", desc: "服务器错误" }, empty: { title: "暂无数据", desc: "暂无更多数据,请先创建数据" }, loading: { title: "加载中", desc: "数据正在加载中,请稍后..." }, login: { success: "登录成功", error: "登录失败,请检查用户名和密码", placeholder: { username: "请输入用户名", password: "请输入密码" }, buttons: { login: "登录" } } }, o = { "zh-CN": "中文", "en-US": "English", "ja-JP": "日本語", "ko-KR": "한국어", "ru-RU": "Русский" }, c = {
1
+ const e = { search: "搜索", empty: "暂无数据", menu: "菜单", theme: "主题", dark: "暗色模式", light: "亮色模式", back: "返回", loading: "加载中...", success: "操作成功", error: "操作失败", unknownError: "未知错误", keyword: "请输入关键字", preview: "预览" }, t = { tab: { lock: "锁定", closeOther: "关闭其他", closeLeft: "关闭左侧", closeRight: "关闭右侧" }, dialog: { confirm: { title: "确定", content: "确定要确认吗?" }, cancel: { title: "取消", content: "确定要取消吗?" }, success: { title: "成功", content: "您的操作已成功" }, error: { title: "错误", content: "您的操作已失败" }, prompt: { title: "提示" } }, button: { confirm: "确定", cancel: "取消", submit: "提交", reset: "重置", delete: "删除", search: "查询", advanced: "高级", export: "导出", import: "导入", autoRefresh: "自动刷新", filter: "筛选", refresh: "刷新", select: "选择", create: "新建", download: "下载", rename: "重命名", preview: "预览", sideLeft: "左侧", sideRight: "右侧" }, form: { edit: "编辑", create: "新增", success: "保存成功", error: "保存失败" }, list: { selectAll: "全选", columnSetting: "列设置", selectedItems: "选中项: {num}", total: "共 {total} 条", batchTitle: "批量操作确认", batchContent: "确定要执行此批量操作吗?" }, editor: { placeholder: "请输入内容" }, upload: { fileManager: "文件管理器", uploadFile: "上传文件", cancel: "取消", delete: "删除", error: "上传失败", empty: "暂无文件", desc: "点击或拖拽文件到此区域", dropHere: "拖拽文件到此处", allFormats: "支持任意格式文件", supportFormats: "支持 {formats} 格式文件", maxSize: "最大文件大小: {size}MB", success: "上传成功", failed: "上传失败", fileExtension: "{ext}文件", status: { pending: "待上传", uploading: "上传中", success: "已上传", cancelled: "已取消", error: "失败" }, file: { name: "文件名", size: "大小", type: "类型", status: "状态" }, actions: "操作", selectUpload: { clickOrDrag: "点击选择文件或拖拽到此处", selectedFiles: "已选择 {count} 个文件", multipleSupport: "支持多文件选择", defaultDesc: "支持上传指定类型文件", acceptDesc: "仅支持上传 {accept} 格式文件", maxFiles: "最多 {max} 个文件" } }, uploadManage: { title: "文件管理", all: "全部", image: "图片", media: "媒体", docs: "文档", upload: "上传", empty: "暂无文件", emptyDesc: "暂无更多文件,请先上传文件", back: "返回上一级", parentLevel: "上一级", namePlaceholder: "请输入名称", createError: "创建失败", editError: "修改失败", delError: "删除失败", delTitle: "确认删除", delDesc: "确定要删除选中的文件吗?删除后不可恢复。" }, crop: { title: "裁剪", select: "选择", confirm: "确认" }, stats: { realTimeData: "实时数据" }, data: { selectTitle: "请选择数据" }, menu: { language: "语言", chinese: "中文", english: "English", color: "颜色", primaryColor: "主题色", neutralColor: "中性色", theme: "主题", followSystem: "跟随系统", lightMode: "亮色", darkMode: "暗色", logout: "退出登录" }, iconPicker: { title: "图标选择" }, designEditor: { layout: "布局", all: "全部", grid: { label: "网格", title: "网格设置", columns: "列数", spacing: "间距", columnsPlaceholder: "请输入列数", spacingPlaceholder: "请输入间距" } }, flowEditor: { properties: "属性", nodeInfo: "节点信息", nodeConfig: "节点配置", label: "标签", description: "描述", descriptionPlaceholder: "请输入节点描述", selectNodeOrEdge: "选择节点或连接线进行配置", edgeSettings: "连接线设置", edgeDescription: "配置节点间的连接属性", editJSON: "编辑JSON", saveFlow: "保存流程", clearFlow: "清空流程", flowCleared: "流程已清空", flowSaved: "流程数据已保存", editFlowJSON: "编辑流程 JSON", deleteEdge: "删除连接线", edgeDeleted: "连接线已删除", from: "从", to: "到", connectionType: "连接类型", pass: "通过", reject: "退回", categories: { start: "开始", process: "处理", condition: "条件", end: "结束" }, nodes: { start: { label: "开始", description: "流程的起始节点" }, end: { label: "结束", description: "流程的结束节点" } }, fieldTypes: { text: "文本", number: "数字", boolean: "布尔", date: "日期", array: "数组", object: "对象" }, toolbar: { releaseToAdd: "释放以添加节点" }, setting: { operations: "操作", node: "节点", connection: "连接" }, nodeCard: { delete: "删除", copy: "复制" }, jsonEditor: { copiedToClipboard: "已复制到剪贴板", dataApplied: "数据已应用到流程", jsonFormatError: "JSON 格式错误" }, processNode: { label: "处理", description: "通用处理节点" }, startNode: { label: "开始", description: "流程的起始节点", configTitle: "开始节点配置" } }, formEditor: { config: "组件配置", options: "选项配置", data: "数据", common: { componentConfig: "组件配置", optionConfig: "选项配置", optionData: "选项数据", dataConfig: "数据配置", dataEdit: "数据编辑", label: "标签", disabled: "禁用", clearable: "可清除", readonly: "只读", showCount: "显示字数", placeholder: "占位符", prefix: "前缀", suffix: "后缀", status: "状态", defaultValue: "默认值", minLength: "最小长度", maxLength: "最大长度", minValue: "最小值", maxValue: "最大值", labelField: "标签字段", valueField: "值字段", optionLabel: "选项标签", optionValue: "选项值", dataInterface: "数据接口", multiple: "多选", cascade: "级联", showPath: "显示路径", minCount: "最小数量", maxCount: "最大数量", uploadUrl: "上传地址", showAlpha: "显示透明度", timeFormat: "时间格式", hour12: "12小时制", dateType: "日期类型", inputType: "输入类型", formDirection: "表单方向", leftAlign: "左对齐", topAlign: "上对齐", settingAlign: "设置布局", pageAlign: "页面布局", name: "名称", desc: "描述" }, setting: { title: "表单设置" }, validation: "验证规则", componentConfig: "组件配置", input: { label: "文本", types: { text: "文本", textarea: "多行文本", password: "密码" } }, inputNumber: { label: "数字" }, select: { label: "选择", configDesc: "配置选项数据" }, radio: { label: "单选", configDesc: "配置单选框选项数据" }, checkbox: { label: "复选", configDesc: "配置复选框选项数据" }, switch: { label: "开关" }, date: { label: "日期", placeholder: "选择日期", dateType: "日期类型", date: "日期", daterange: "日期范围", datetime: "日期时间", datetimerange: "日期时间范围", month: "月份", monthrange: "月份范围", year: "年份", yearrange: "年份范围", quarter: "季度", quarterrange: "季度范围", week: "周" }, time: { label: "时间", placeholder: "选择时间", timeFormat: "格式", use12Hours: "12小时制" }, color: { label: "颜色", showAlpha: "显示透明度" }, cascader: { label: "级联", desc: "级联选择器选项数据,格式为 JSON 数组", configDesc: "配置选项", optionDesc: "JSON 数组格式", optionsDescription: "配置级联选择器选项数据", cascade: "级联", showPath: "显示路径" }, cascaderAsync: { label: "级联", dataApi: "数据接口", apiPlaceholder: "输入接口地址", cascade: "级联", showPath: "显示路径" }, dynamicInput: { label: "动态" }, editor: { label: "编辑器", placeholder: "输入内容", uploadUrlDesc: "编辑器图片上传地址" }, aiEditor: { label: "编辑器", uploadUrl: "上传地址", uploadUrlFeedback: "编辑器图片上传地址" }, sider: { name: "滑块", step: "步长", min: "最小", max: "最大" }, dynamicTags: { name: "标签", max: "最大数量" }, mentionAsync: { name: "提及", clearable: "可清除", path: "数据接口", labelField: "标签字段", valueField: "值字段" }, region: { name: "地区", Path: "数据接口", labelField: "标签字段", valueField: "值字段" }, selectAsync: { name: "选择", pagination: "分页", path: "数据接口", labelField: "标签字段", valueField: "值字段", imageField: "图片字段", descField: "描述字段" }, transferAsync: { name: "穿梭框" }, treeSelect: { name: "树选择" }, treeSelectAsync: { name: "异步树选择", path: "数据接口", labelField: "标签字段", keyField: "键字段" }, tree: { disabled: "禁用" }, groups: { form: "表单", select: "选择器", async: "异步" }, imageUpload: { label: "图片上传", maxSize: "最大文件大小(MB)", maxSizePlaceholder: "请输入最大文件大小", maxNumPlaceholder: "请输入最大文件数量", manager: "文件管理器" }, fileUpload: { label: "文件上传", accept: "接受文件类型", acceptPlaceholder: "请输入接受的文件类型,如:image/*,video/*", maxSize: "最大文件大小(MB)", maxSizePlaceholder: "请输入最大文件大小", maxNumPlaceholder: "请输入最大文件数量", manager: "文件管理器" }, main: { label: "主要内容", categories: { form: "表单", select: "选择器", async: "异步" }, actions: { jsonOutput: "Json 输出", save: "保存" } } } }, a = { table: { exportSuccess: "导出数据成功", exportProgress: "导出数据中, 请稍后...", exportFailed: "导出数据失败", exportSuccessContent: "成功导出 {count} 条数据", exportProgressContent: "第 {page} 页数据", exportFailedContent: "导出数据失败:{error}", importSuccess: "导入数据成功", importProgress: "导入数据中, 请稍后...", importFailed: "导入数据失败", importSuccessContent: "成功导入 {count} 条数据", importProgressContent: "{processed} / {total} 条数据", importFailedContent: "导入数据失败:{error}", saveSuccess: "保存成功", copySuccess: "复制成功", copyFailed: "复制失败" }, download: { failed: "下载失败" } }, l = { 400: { title: "400", desc: "请求错误" }, 401: { title: "401", desc: "您没有权限访问该页面" }, 403: { title: "403", desc: "您没有权限访问该页面" }, 404: { title: "404", desc: "页面不存在" }, 500: { title: "500", desc: "服务器错误" }, empty: { title: "暂无数据", desc: "暂无更多数据,请先创建数据" }, loading: { title: "加载中", desc: "数据正在加载中,请稍后..." }, login: { success: "登录成功", error: "登录失败,请检查用户名和密码", placeholder: { username: "请输入用户名", password: "请输入密码" }, buttons: { login: "登录" } } }, o = { "zh-CN": "中文", "en-US": "English", "ja-JP": "日本語", "ko-KR": "한국어", "ru-RU": "Русский" }, r = {
2
2
  common: e,
3
- components: a,
4
- hooks: t,
3
+ components: t,
4
+ hooks: a,
5
5
  pages: l,
6
6
  locale: o
7
7
  };
8
8
  export {
9
9
  e as common,
10
- a as components,
11
- c as default,
12
- t as hooks,
10
+ t as components,
11
+ r as default,
12
+ a as hooks,
13
13
  o as locale,
14
14
  l as pages
15
15
  };
package/dist/esm/main.js CHANGED
@@ -7,8 +7,10 @@ import { initVeeValidate as e } from "./config/validate.js";
7
7
  import "echarts";
8
8
  import "vue-cropper/dist/index.css";
9
9
  import "aieditor/dist/style.css";
10
+ import "@vue-flow/core/dist/style.css";
11
+ import "@vue-flow/core/dist/theme-default.css";
10
12
  /* empty css */
11
- function h() {
13
+ function D() {
12
14
  return e(), o({
13
15
  defaults: m(!1),
14
16
  bypassDefined: !0
@@ -19,5 +21,5 @@ function h() {
19
21
  };
20
22
  }
21
23
  export {
22
- h as createDuxPro
24
+ D as createDuxPro
23
25
  };
@@ -29,7 +29,10 @@ import { DuxMobileMenu as u } from "./menu/mobile.js";
29
29
  import "./page404.js";
30
30
  import "short-unique-id";
31
31
  import "aieditor";
32
+ import "@vue-flow/core";
32
33
  import "vee-validate";
34
+ import "@vue-flow/background";
35
+ /* empty css */
33
36
  import "@duxweb/dvha-naiveui";
34
37
  import "mime";
35
38
  import "@iconify-json/tabler/icons.json";
@@ -38,7 +41,7 @@ import "fabric";
38
41
  import "dayjs";
39
42
  import "@tanstack/vue-query";
40
43
  import { useUI as n } from "../hooks/ui.js";
41
- const Y = /* @__PURE__ */ t({
44
+ const $ = /* @__PURE__ */ t({
42
45
  name: "DuxAuthLayout",
43
46
  setup() {
44
47
  const {
@@ -56,5 +59,5 @@ const Y = /* @__PURE__ */ t({
56
59
  }
57
60
  });
58
61
  export {
59
- Y as DuxAuthLayout
62
+ $ as DuxAuthLayout
60
63
  };
@@ -52,6 +52,9 @@ import { DuxPageTab as g } from "./tab.js";
52
52
  import "../page404.js";
53
53
  import "short-unique-id";
54
54
  import "aieditor";
55
+ import "@vue-flow/core";
56
+ import "@vue-flow/background";
57
+ /* empty css */
55
58
  import "mime";
56
59
  import "@iconify-json/tabler/icons.json";
57
60
  import "../../components/posterEditor/elements/index.js";
@@ -59,7 +62,7 @@ import "fabric";
59
62
  import "dayjs";
60
63
  import "@tanstack/vue-query";
61
64
  import { useUI as v } from "../../hooks/ui.js";
62
- const kt = /* @__PURE__ */ l({
65
+ const It = /* @__PURE__ */ l({
63
66
  name: "DuxLayoutPage",
64
67
  props: {},
65
68
  setup() {
@@ -67,11 +70,11 @@ const kt = /* @__PURE__ */ l({
67
70
  menuMobileCollapsed: i,
68
71
  setMenuMobileCollapsed: r
69
72
  } = v(), {
70
- config: e
73
+ config: m
71
74
  } = u(), {
72
75
  mutate: o
73
76
  } = a(), {
74
- pause: m,
77
+ pause: e,
75
78
  resume: p
76
79
  } = f(() => {
77
80
  o();
@@ -79,7 +82,7 @@ const kt = /* @__PURE__ */ l({
79
82
  return n(() => {
80
83
  o(), p();
81
84
  }), s(() => {
82
- m();
85
+ e();
83
86
  }), () => t("div", {
84
87
  class: "flex-1 min-w-0 flex flex-col"
85
88
  }, [t("div", {
@@ -95,7 +98,7 @@ const kt = /* @__PURE__ */ l({
95
98
  }, null)]
96
99
  }), t("div", {
97
100
  class: "w-full absolute inset-0 flex items-center justify-center text-base pointer-events-none"
98
- }, [e.title]), t("div", null, [t(x, {
101
+ }, [m.title]), t("div", null, [t(x, {
99
102
  collapsed: !0
100
103
  }, null)])]), t("div", {
101
104
  class: "flex-1 py-2"
@@ -105,5 +108,5 @@ const kt = /* @__PURE__ */ l({
105
108
  }
106
109
  });
107
110
  export {
108
- kt as DuxLayoutPage
111
+ It as DuxLayoutPage
109
112
  };
@@ -55,20 +55,23 @@ import "vue-command-palette";
55
55
  import "./page404.js";
56
56
  import "short-unique-id";
57
57
  import "aieditor";
58
+ import "@vue-flow/core";
59
+ import "@vue-flow/background";
60
+ /* empty css */
58
61
  import "@iconify-json/tabler/icons.json";
59
62
  import "../components/posterEditor/elements/index.js";
60
63
  import "fabric";
61
64
  function V(l) {
62
65
  return typeof l == "function" || Object.prototype.toString.call(l) === "[object Object]" && !x(l);
63
66
  }
64
- const _e = /* @__PURE__ */ h({
67
+ const Ee = /* @__PURE__ */ h({
65
68
  name: "DuxLoginPage",
66
69
  setup(l, {
67
70
  slots: u
68
71
  }) {
69
72
  const r = b(), o = y(), {
70
73
  t: i
71
- } = k(), c = v(), m = N(), t = w({
74
+ } = k(), c = v(), a = N(), t = w({
72
75
  username: "",
73
76
  password: ""
74
77
  }), {
@@ -76,10 +79,10 @@ const _e = /* @__PURE__ */ h({
76
79
  isLoading: g
77
80
  } = j({
78
81
  onSuccess: () => {
79
- m.success(i("pages.login.success"));
82
+ a.success(i("pages.login.success"));
80
83
  },
81
84
  onError: (s) => {
82
- m.error(s?.message || i("pages.login.error"));
85
+ a.error(s?.message || i("pages.login.error"));
83
86
  }
84
87
  }), f = () => {
85
88
  d(t);
@@ -131,7 +134,7 @@ const _e = /* @__PURE__ */ h({
131
134
  }, {
132
135
  default: () => [e(n, {
133
136
  value: t.username,
134
- onUpdateValue: (a) => t.username = a,
137
+ onUpdateValue: (m) => t.username = m,
135
138
  type: "text",
136
139
  placeholder: i("pages.login.placeholder.username"),
137
140
  size: "large"
@@ -147,7 +150,7 @@ const _e = /* @__PURE__ */ h({
147
150
  }, {
148
151
  default: () => [e(n, {
149
152
  value: t.password,
150
- onUpdateValue: (a) => t.password = a,
153
+ onUpdateValue: (m) => t.password = m,
151
154
  type: "password",
152
155
  showPasswordOn: "mousedown",
153
156
  placeholder: i("pages.login.placeholder.password"),
@@ -178,5 +181,5 @@ const _e = /* @__PURE__ */ h({
178
181
  }
179
182
  });
180
183
  export {
181
- _e as DuxLoginPage
184
+ Ee as DuxLoginPage
182
185
  };
@@ -56,10 +56,13 @@ import "vue-command-palette";
56
56
  import "../page404.js";
57
57
  import "short-unique-id";
58
58
  import "aieditor";
59
+ import "@vue-flow/core";
60
+ import "@vue-flow/background";
61
+ /* empty css */
59
62
  import "@iconify-json/tabler/icons.json";
60
63
  import "../../components/posterEditor/elements/index.js";
61
64
  import "fabric";
62
- const Fe = /* @__PURE__ */ A({
65
+ const Ke = /* @__PURE__ */ A({
63
66
  name: "DuxMenuAvatar",
64
67
  props: {
65
68
  collapsed: {
@@ -88,19 +91,19 @@ const Fe = /* @__PURE__ */ A({
88
91
  class: "flex-1 min-w-0"
89
92
  }, [o]), e("div", null, [r && e("div", {
90
93
  class: "i-tabler:check"
91
- }, null)])]), i = (o) => e("div", {
94
+ }, null)])]), a = (o) => e("div", {
92
95
  class: `${o} size-4`
93
96
  }, null), w = d(() => {
94
97
  const o = h.userMenus?.map((r) => ({
95
98
  label: t(r.label || "", {}, r.label),
96
99
  key: r.key,
97
- icon: () => i(r.icon),
100
+ icon: () => a(r.icon),
98
101
  path: r.path
99
102
  }));
100
103
  return o?.length > 0 ? [...o, {
101
104
  type: "divider"
102
105
  }] : [];
103
- }), a = S(), z = d(() => [{
106
+ }), i = S(), z = d(() => [{
104
107
  key: "header",
105
108
  type: "render",
106
109
  render: () => e("div", {
@@ -108,20 +111,20 @@ const Fe = /* @__PURE__ */ A({
108
111
  }, [e(f, {
109
112
  round: !0,
110
113
  size: 28,
111
- src: a.info?.avatar
114
+ src: i.info?.avatar
112
115
  }, null), e("div", {
113
116
  class: "flex flex-col"
114
117
  }, [e("div", {
115
118
  class: "text-sm font-medium"
116
- }, [a.info?.nickname]), e("div", {
119
+ }, [i.info?.nickname]), e("div", {
117
120
  class: "text-xs text-muted"
118
- }, [a.info?.username])])])
121
+ }, [i.info?.username])])])
119
122
  }, {
120
123
  type: "divider"
121
124
  }, ...w.value, {
122
125
  label: t("components.menu.language"),
123
126
  key: "locale",
124
- icon: () => i("i-tabler:language"),
127
+ icon: () => a("i-tabler:language"),
125
128
  children: [...(s.getLocales() || []).map((o) => ({
126
129
  label: () => l(t(`locale.${o}`), s.getLocale() === o),
127
130
  key: `locale.${o}`
@@ -129,7 +132,7 @@ const Fe = /* @__PURE__ */ A({
129
132
  }, {
130
133
  label: t("components.menu.color"),
131
134
  key: "color",
132
- icon: () => i("i-tabler:palette"),
135
+ icon: () => a("i-tabler:palette"),
133
136
  children: [{
134
137
  label: () => e("div", {
135
138
  class: "flex gap-2 items-center w-30"
@@ -176,7 +179,7 @@ const Fe = /* @__PURE__ */ A({
176
179
  }, {
177
180
  label: t("components.menu.theme"),
178
181
  key: "theme",
179
- icon: () => i("i-tabler:brightness-half"),
182
+ icon: () => a("i-tabler:brightness-half"),
180
183
  children: [{
181
184
  label: () => l(t("components.menu.followSystem"), m.value === "auto"),
182
185
  key: "theme.auto"
@@ -192,7 +195,7 @@ const Fe = /* @__PURE__ */ A({
192
195
  }, {
193
196
  label: t("components.menu.logout"),
194
197
  key: "logout",
195
- icon: () => i("i-tabler:logout")
198
+ icon: () => a("i-tabler:logout")
196
199
  }]);
197
200
  function $(o, r) {
198
201
  const p = o.lastIndexOf("."), [D, n] = p === -1 ? [o, ""] : [o.substring(0, p), o.substring(p + 1)];
@@ -232,19 +235,19 @@ const Fe = /* @__PURE__ */ A({
232
235
  class: "group-hover:shadow-lg",
233
236
  round: !0,
234
237
  size: 28,
235
- src: a.info?.avatar
238
+ src: i.info?.avatar
236
239
  }, null),
237
240
  default: () => e("div", {
238
241
  class: "flex flex-col"
239
242
  }, [e("div", {
240
243
  class: "text-sm font-medium"
241
- }, [a.info?.nickname]), e("div", {
244
+ }, [i.info?.nickname]), e("div", {
242
245
  class: "text-xs text-muted"
243
- }, [a.info?.username])])
246
+ }, [i.info?.username])])
244
247
  })]
245
248
  });
246
249
  }
247
250
  });
248
251
  export {
249
- Fe as default
252
+ Ke as default
250
253
  };
@@ -1,4 +1,4 @@
1
- import { defineComponent as p, createVNode as e } from "vue";
1
+ import { defineComponent as e, createVNode as p } from "vue";
2
2
  import "@duxweb/dvha-core";
3
3
  import "naive-ui";
4
4
  import "vue-router";
@@ -50,6 +50,9 @@ import "@duxweb/dvha-naiveui";
50
50
  import "../page404.js";
51
51
  import "short-unique-id";
52
52
  import "aieditor";
53
+ import "@vue-flow/core";
54
+ import "@vue-flow/background";
55
+ /* empty css */
53
56
  import "mime";
54
57
  import "@iconify-json/tabler/icons.json";
55
58
  import "../../components/posterEditor/elements/index.js";
@@ -57,7 +60,7 @@ import "fabric";
57
60
  import "dayjs";
58
61
  import "@tanstack/vue-query";
59
62
  import { useUI as m } from "../../hooks/ui.js";
60
- const st = /* @__PURE__ */ p({
63
+ const vt = /* @__PURE__ */ e({
61
64
  name: "DuxMenuButton",
62
65
  props: {
63
66
  class: {
@@ -85,16 +88,16 @@ const st = /* @__PURE__ */ p({
85
88
  menuCollapsed: r,
86
89
  menuMobileCollapsed: i
87
90
  } = m();
88
- return () => e("div", {
91
+ return () => p("div", {
89
92
  onClick: () => {
90
93
  t.onClick?.();
91
94
  },
92
95
  class: ["flex items-center gap-1 justify-center py-1 px-2 cursor-pointer gap-2", t.class, r.value && !i.value ? "group" : "hover:shadow-xs hover:bg-default flex-1 w-full", t.inverted ? "transition-all duration-300 bg-inverted/5 rounded-full hover:bg-default hover:shadow-xs" : " rounded-md"]
93
- }, [o.icon?.(), t.collapsed === !1 && !r.value && !i.value && e("div", {
96
+ }, [o.icon?.(), t.collapsed === !1 && !r.value && !i.value && p("div", {
94
97
  class: ["overflow-hidden ease-in-out whitespace-nowrap text-left min-w-0 flex-1", t.inverted ? "text-default" : ""]
95
98
  }, [o.default?.()])]);
96
99
  }
97
100
  });
98
101
  export {
99
- st as default
102
+ vt as default
100
103
  };
@@ -1,4 +1,4 @@
1
- import { defineComponent as M, ref as p, watch as m, computed as w, createVNode as t, Fragment as V, createTextVNode as B } from "vue";
1
+ import { defineComponent as M, ref as u, watch as m, computed as w, createVNode as t, Fragment as V, createTextVNode as B } from "vue";
2
2
  import { useRouteStore as D, useTheme as T, useI18n as K } from "@duxweb/dvha-core";
3
3
  import { useMagicKeys as R, watchThrottled as j } from "@vueuse/core";
4
4
  import { cloneDeep as E } from "lodash-es";
@@ -50,6 +50,9 @@ import "@duxweb/dvha-naiveui";
50
50
  import "../page404.js";
51
51
  import "short-unique-id";
52
52
  import "aieditor";
53
+ import "@vue-flow/core";
54
+ import "@vue-flow/background";
55
+ /* empty css */
53
56
  import "mime";
54
57
  import "@iconify-json/tabler/icons.json";
55
58
  import "../../components/posterEditor/elements/index.js";
@@ -57,19 +60,19 @@ import "fabric";
57
60
  import "dayjs";
58
61
  import "@tanstack/vue-query";
59
62
  import { useUI as q } from "../../hooks/ui.js";
60
- const Je = /* @__PURE__ */ M({
63
+ const We = /* @__PURE__ */ M({
61
64
  name: "DuxMenuCmd",
62
65
  setup() {
63
66
  const {
64
67
  cmdVisible: h,
65
68
  setCmdVisible: s
66
- } = q(), c = R(), y = c["Meta+K"], u = p(), i = p([]), S = L(), a = D(), {
69
+ } = q(), c = R(), y = c["Meta+K"], p = u(), i = u([]), S = L(), a = D(), {
67
70
  setMode: v
68
- } = T(), n = p(""), {
71
+ } = T(), n = u(""), {
69
72
  t: o
70
- } = K(), b = p(), g = (e) => {
73
+ } = K(), b = u(), g = (e) => {
71
74
  const r = a.routes.filter((I) => I.parent === e);
72
- u.value = e, i.value = r;
75
+ p.value = e, i.value = r;
73
76
  }, C = () => {
74
77
  s(!0);
75
78
  }, N = () => {
@@ -85,7 +88,7 @@ const Je = /* @__PURE__ */ M({
85
88
  throttle: 500
86
89
  });
87
90
  const x = () => {
88
- const e = a.routes.find((r) => r.name === u.value);
91
+ const e = a.routes.find((r) => r.name === p.value);
89
92
  g(e?.parent);
90
93
  };
91
94
  m(y, (e) => {
@@ -93,7 +96,7 @@ const Je = /* @__PURE__ */ M({
93
96
  }), m(c.Escape, (e) => {
94
97
  e && s(!1);
95
98
  }), m(c.Backspace, (e) => {
96
- e && n.value === "" && u.value && x();
99
+ e && n.value === "" && p.value && x();
97
100
  }), m(b, (e) => {
98
101
  e && e.focus();
99
102
  });
@@ -163,7 +166,7 @@ const Je = /* @__PURE__ */ M({
163
166
  class: e.path ? "i-tabler:link" : "i-tabler:folder"
164
167
  }, null), e.label]
165
168
  }))]
166
- }), t(l.Separator, null, null), u.value ? t(f, {
169
+ }), t(l.Separator, null, null), p.value ? t(f, {
167
170
  icon: "i-tabler:arrow-left",
168
171
  label: o("common.back"),
169
172
  onSelect: x,
@@ -190,5 +193,5 @@ const Je = /* @__PURE__ */ M({
190
193
  }
191
194
  });
192
195
  export {
193
- Je as DuxMenuCmd
196
+ We as DuxMenuCmd
194
197
  };
@@ -1,4 +1,4 @@
1
- import { defineComponent as c, createVNode as e, createTextVNode as l } from "vue";
1
+ import { defineComponent as c, createVNode as o, createTextVNode as l } from "vue";
2
2
  import { useManage as f, useI18n as v, DuxLogoIcon as x } from "@duxweb/dvha-core";
3
3
  import { useNaiveMenu as g } from "@duxweb/dvha-naiveui";
4
4
  import { NTag as p, NScrollbar as h, NMenu as b } from "naive-ui";
@@ -52,6 +52,9 @@ import "vue-command-palette";
52
52
  import "../page404.js";
53
53
  import "short-unique-id";
54
54
  import "aieditor";
55
+ import "@vue-flow/core";
56
+ import "@vue-flow/background";
57
+ /* empty css */
55
58
  import "mime";
56
59
  import "@iconify-json/tabler/icons.json";
57
60
  import "../../components/posterEditor/elements/index.js";
@@ -59,7 +62,7 @@ import "fabric";
59
62
  import "dayjs";
60
63
  import "@tanstack/vue-query";
61
64
  import { useUI as y } from "../../hooks/ui.js";
62
- const Le = /* @__PURE__ */ c({
65
+ const To = /* @__PURE__ */ c({
63
66
  name: "DuxMenuMain",
64
67
  props: {
65
68
  collapsed: {
@@ -67,7 +70,7 @@ const Le = /* @__PURE__ */ c({
67
70
  default: !1
68
71
  }
69
72
  },
70
- setup(o) {
73
+ setup(e) {
71
74
  const {
72
75
  options: a,
73
76
  active: s
@@ -81,56 +84,56 @@ const Le = /* @__PURE__ */ c({
81
84
  } = f(), {
82
85
  t: u
83
86
  } = v();
84
- return () => e("div", {
87
+ return () => o("div", {
85
88
  class: "flex flex-col h-screen px-1"
86
- }, [e("div", {
89
+ }, [o("div", {
87
90
  class: "h-13 px-2 hidden lg:flex justify-center items-center"
88
- }, [e(m, {
91
+ }, [o(m, {
89
92
  onClick: () => n(!t.value),
90
- collapsed: o.collapsed
93
+ collapsed: e.collapsed
91
94
  }, {
92
- icon: () => e("div", {
95
+ icon: () => o("div", {
93
96
  class: "bg-white dark:bg-primary-950 rounded-full p-2 shadow group-hover:shadow-lg"
94
- }, [i.theme?.appLogo ? e("img", {
97
+ }, [i.theme?.appLogo ? o("img", {
95
98
  class: "size-4",
96
99
  src: i.theme?.appLogo
97
- }, null) : e(x, {
100
+ }, null) : o(x, {
98
101
  highlight: "fill-primary",
99
102
  class: "size-4"
100
103
  }, null)]),
101
- default: () => e("div", null, [i.title])
102
- })]), e("div", {
104
+ default: () => o("div", null, [i.title])
105
+ })]), o("div", {
103
106
  class: "px-2 py-1 hidden lg:block"
104
- }, [e(m, {
105
- collapsed: o.collapsed,
107
+ }, [o(m, {
108
+ collapsed: e.collapsed,
106
109
  inverted: !0,
107
110
  class: "relative py-1.5 px-3",
108
111
  onClick: () => d(!0)
109
112
  }, {
110
- icon: () => e("div", {
113
+ icon: () => o("div", {
111
114
  class: "i-tabler:search size-4 icon-gradient"
112
115
  }, null),
113
- default: () => e("div", {
116
+ default: () => o("div", {
114
117
  class: "text-muted text-sm"
115
- }, [u("common.search"), !t.value && e("div", {
118
+ }, [u("common.search"), !t.value && o("div", {
116
119
  class: "flex items-center gap-1 absolute right-2.5 top-1.3"
117
- }, [e(p, {
120
+ }, [o(p, {
118
121
  size: "small",
119
122
  bordered: !1,
120
123
  type: "primary"
121
124
  }, {
122
125
  default: () => [l("⌘")]
123
- }), e(p, {
126
+ }), o(p, {
124
127
  size: "small",
125
128
  bordered: !1,
126
129
  type: "primary"
127
130
  }, {
128
131
  default: () => [l("K")]
129
132
  })])])
130
- })]), e("div", {
133
+ })]), o("div", {
131
134
  class: ["flex-1 min-h-0", r.value ? "border-t border-muted" : ""]
132
- }, [e(h, null, {
133
- default: () => [e(b, {
135
+ }, [o(h, null, {
136
+ default: () => [o(b, {
134
137
  options: a.value,
135
138
  value: s.value,
136
139
  collapsed: t.value && !r.value,
@@ -138,13 +141,13 @@ const Le = /* @__PURE__ */ c({
138
141
  collapsedWidth: 60,
139
142
  collapsedIconSize: 20
140
143
  }, null)]
141
- })]), e("div", {
144
+ })]), o("div", {
142
145
  class: "flex-none hidden lg:flex flex-col items-center gap-2 p-2 border-t border-muted/50"
143
- }, [e(M, {
144
- collapsed: o.collapsed
146
+ }, [o(M, {
147
+ collapsed: e.collapsed
145
148
  }, null)])]);
146
149
  }
147
150
  });
148
151
  export {
149
- Le as DuxMenuMain
152
+ To as DuxMenuMain
150
153
  };
@@ -51,6 +51,9 @@ import "@duxweb/dvha-naiveui";
51
51
  import "../page404.js";
52
52
  import "short-unique-id";
53
53
  import "aieditor";
54
+ import "@vue-flow/core";
55
+ import "@vue-flow/background";
56
+ /* empty css */
54
57
  import "mime";
55
58
  import "@iconify-json/tabler/icons.json";
56
59
  import "../../components/posterEditor/elements/index.js";
@@ -58,7 +61,7 @@ import "fabric";
58
61
  import "dayjs";
59
62
  import "@tanstack/vue-query";
60
63
  import { useUI as e } from "../../hooks/ui.js";
61
- const co = /* @__PURE__ */ p({
64
+ const Do = /* @__PURE__ */ p({
62
65
  name: "DuxMobileMenu",
63
66
  props: {},
64
67
  setup(l) {
@@ -78,5 +81,5 @@ const co = /* @__PURE__ */ p({
78
81
  }
79
82
  });
80
83
  export {
81
- co as DuxMobileMenu
84
+ Do as DuxMobileMenu
82
85
  };
@@ -55,6 +55,9 @@ import "vue-command-palette";
55
55
  import { DuxPageStatus as d } from "./pageStatus.js";
56
56
  import "short-unique-id";
57
57
  import "aieditor";
58
+ import "@vue-flow/core";
59
+ import "@vue-flow/background";
60
+ /* empty css */
58
61
  import "@iconify-json/tabler/icons.json";
59
62
  import "../components/posterEditor/elements/index.js";
60
63
  import "fabric";
@@ -55,10 +55,13 @@ import "vue-command-palette";
55
55
  import "./page404.js";
56
56
  import "short-unique-id";
57
57
  import "aieditor";
58
+ import "@vue-flow/core";
59
+ import "@vue-flow/background";
60
+ /* empty css */
58
61
  import "@iconify-json/tabler/icons.json";
59
62
  import "../components/posterEditor/elements/index.js";
60
63
  import "fabric";
61
- const ct = /* @__PURE__ */ o({
64
+ const ut = /* @__PURE__ */ o({
62
65
  name: "DuxPageStatus",
63
66
  props: {
64
67
  title: String,
@@ -92,5 +95,5 @@ const ct = /* @__PURE__ */ o({
92
95
  }
93
96
  });
94
97
  export {
95
- ct as DuxPageStatus
98
+ ut as DuxPageStatus
96
99
  };