@duxweb/dvha-pro 1.0.30 → 1.0.31

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.
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),i=require("@duxweb/dvha-core"),m=require("@vueuse/core"),p=t.defineComponent({name:"DuxSelectUpload",props:{maxNum:Number,multiple:Boolean,value:[String,Array,Object],onUpdateValue:Function,accept:{type:String,default:"*"}},setup(e,{emit:d}){const o=t.ref([]),u=m.useVModel(e,"value",d),{t:a}=i.useI18n(),r=t.computed(()=>{const c=o.value.length;return c===0?a("components.upload.selectUpload.clickOrDrag"):e.multiple?a("components.upload.selectUpload.selectedFiles",{count:c}):o.value[0]?.name||""});function s(c){const n=Array.from(c.target.files||[]);if(e.multiple){const l=e.maxNum?n.slice(0,e.maxNum):n;o.value=l,u.value=l,e.onUpdateValue?.(l)}else{const l=n[0];o.value=l?[l]:[],u.value=l||void 0,e.onUpdateValue?.(l)}}return()=>t.createVNode("div",{class:"relative border border-dashed border-muted rounded p-8 text-center hover:border-primary transition-colors duration-200 bg-muted hover:bg-elevated"},[t.createVNode("input",{type:"file",multiple:e.multiple,class:"absolute inset-0 w-full h-full opacity-0 cursor-pointer",onChange:s,accept:e.accept},null),t.createVNode("div",{class:"flex flex-col items-center gap-3"},[t.createVNode("svg",{class:"w-12 h-12 text-muted",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t.createVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M15 13l-3-3m0 0l-3 3m3-3v12"},null)]),t.createVNode("div",null,[t.createVNode("p",{class:"text-lg font-medium text-default"},[r.value]),t.createVNode("p",{class:"text-sm text-muted mt-1"},[e.multiple?a("components.upload.selectUpload.multipleSupport"):e.accept!=="*"?a("components.upload.selectUpload.acceptDesc",{accept:e.accept}):a("components.upload.selectUpload.defaultDesc"),e.maxNum&&t.createVNode("span",{class:"ml-2 text-warning"},[t.createTextVNode("("),a("components.upload.selectUpload.maxFiles",{max:e.maxNum}),t.createTextVNode(")")])])])])])}});exports.DuxSelectUpload=p;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./app.cjs"),n=require("./components/card/card.cjs"),t=require("./components/card/store.cjs"),D=require("./components/carousel/carousel.cjs"),c=require("./components/chart/echart.cjs"),l=require("./components/code/code.cjs"),x=require("./components/crop/imageCrop.cjs"),d=require("./components/crop/imageCropModal.cjs"),m=require("./components/dashboard/hello.cjs"),q=require("./components/dashboard/helloBig.cjs"),o=require("./components/dashboard/quick.cjs"),g=require("./components/data/dynamicData.cjs"),E=require("./components/data/dynamicSelect.cjs");require("vue");require("@duxweb/dvha-core");require("naive-ui");const u=require("./hooks/action.cjs"),p=require("./hooks/dialog.cjs"),h=require("./hooks/download.cjs"),C=require("./hooks/drawer.cjs"),e=require("./hooks/echart.cjs"),P=require("./hooks/image.cjs"),b=require("./hooks/level.cjs"),y=require("./hooks/modal.cjs"),T=require("./hooks/table.cjs"),w=require("./hooks/table/color.cjs"),F=require("./hooks/table/column.cjs"),S=require("./hooks/table/image.cjs"),M=require("./hooks/table/map.cjs"),L=require("./hooks/table/media.cjs"),v=require("./hooks/table/status.cjs"),A=require("./hooks/table/switch.cjs"),I=require("./hooks/ui.cjs"),f=require("./components/modal/modal.cjs"),$=require("./components/modal/modalPage.cjs"),R=require("./components/modal/modalTab.cjs"),B=require("./components/designEditor/components/grid.cjs"),k=require("./components/designEditor/editor.cjs"),U=require("./components/designEditor/editor/hook.cjs"),W=require("./components/designEditor/editor/preview.cjs"),a=require("./components/designEditor/editor/setting.cjs"),V=require("./components/dialog/dialog.cjs"),G=require("./components/draw/drawApps.cjs"),H=require("./components/draw/drawAuth.cjs"),N=require("./components/draw/drawEmpty.cjs"),Q=require("./components/draw/drawEmptyForm.cjs"),O=require("./components/draw/drawError.cjs"),z=require("./components/drawer/drawer.cjs"),K=require("./components/drawer/drawerPage.cjs"),j=require("./components/editor/aiEditor.cjs"),_=require("./components/form/drawerForm.cjs"),J=require("./components/form/formItem.cjs"),X=require("./components/form/formLayout.cjs"),Y=require("./components/form/modalForm.cjs"),Z=require("./components/form/pageForm.cjs"),ee=require("./components/form/settingForm.cjs"),re=require("./components/formEditor/editor.cjs"),ue=require("./components/formEditor/renderer.cjs"),te=require("./components/icon/icon.cjs");require("@iconify-json/tabler/icons.json");require("@vueuse/core");const oe=require("./components/layout/filter.cjs"),ae=require("./components/layout/filterLayout.cjs"),ie=require("./components/layout/grid.cjs"),se=require("./components/layout/list.cjs"),ne=require("./components/layout/table.cjs"),De=require("./components/layout/tools.cjs"),ce=require("./components/level/level.cjs"),le=require("./components/list/card.cjs"),xe=require("./components/list/list.cjs"),de=require("./components/media/media.cjs"),me=require("./components/panel/alert.cjs"),qe=require("./components/panel/setting.cjs"),ge=require("./components/panel/collapse.cjs"),r=require("./components/posterEditor/elements/index.cjs"),Ee=require("./components/posterEditor/hooks/usePosterEditor.cjs"),pe=require("./components/posterEditor/posterEditor.cjs"),he=require("./components/select/cardSelect.cjs"),Ce=require("./components/stats/number.cjs"),Pe=require("./components/stats/realTime.cjs"),be=require("./components/status/blockEmpty.cjs"),ye=require("./components/status/listEmpty.cjs"),Te=require("./components/table/table.cjs"),we=require("./components/table/tablePage.cjs"),Fe=require("./components/tree/treeFilter.cjs"),Se=require("./components/upload/file.cjs"),Me=require("./components/upload/image.cjs"),Le=require("./components/upload/manager.cjs"),ve=require("./components/widget/avatar.cjs"),Ae=require("./components/widget/connect.cjs"),Ie=require("./components/widget/placeholder.cjs"),fe=require("./pages/authLayout.cjs"),$e=require("./pages/layout.cjs"),Re=require("./pages/login.cjs"),Be=require("./pages/menu/avatar.cjs"),ke=require("./pages/menu/button.cjs"),Ue=require("./pages/menu/cmd.cjs"),We=require("./pages/menu/main.cjs"),Ve=require("./pages/menu/mobile.cjs"),Ge=require("./pages/page.cjs"),He=require("./pages/page403.cjs"),Ne=require("./pages/page404.cjs"),Qe=require("./pages/page500.cjs"),Oe=require("./pages/pageEmpty.cjs"),ze=require("./pages/pageLoading.cjs"),Ke=require("./pages/pageStatus.cjs"),i=require("./config/echart.cjs"),je=require("./config/uno.cjs"),_e=require("./config/validate.cjs"),Je=require("./langs/en-US.json.cjs"),Xe=require("./langs/zh-CN.json.cjs"),Ye=require("./main.cjs"),Ze=require("./stores/ui.cjs"),er=require("./theme/naiveTheme.cjs"),rr=require("./theme/presetTheme.cjs"),ur=require("vue-konva");exports.DuxApp=s.DuxApp;exports.DuxCard=n.DuxCard;exports.DuxStatsStore=t.DuxStatsStore;exports.DuxStatsStoreItem=t.DuxStatsStoreItem;exports.DuxCarousel=D.DuxCarousel;exports.DuxChart=c.DuxChart;exports.DuxCodeEditor=l.DuxCodeEditor;exports.DuxImageCrop=x.DuxImageCrop;exports.DuxImageCropModal=d.DuxImageCropModal;exports.DuxDashboardHello=m.DuxDashboardHello;exports.DuxDashboardHelloBig=q.DuxDashboardHelloBig;exports.DuxDashboardQuick=o.DuxDashboardQuick;exports.DuxDashboardQuickItem=o.DuxDashboardQuickItem;exports.DuxDynamicData=g.DuxDynamicData;exports.DuxDynamicSelect=E.DuxDynamicSelect;exports.useAction=u.useAction;exports.useActionButton=u.useActionButton;exports.useActionDropdown=u.useActionDropdown;exports.useDialog=p.useDialog;exports.useDownload=h.useDownload;exports.useDrawer=C.useDrawer;exports.useEchartBar=e.useEchartBar;exports.useEchartCommon=e.useEchartCommon;exports.useEchartFunnel=e.useEchartFunnel;exports.useEchartLine=e.useEchartLine;exports.useEchartMap=e.useEchartMap;exports.useEchartPie=e.useEchartPie;exports.useEchartRadar=e.useEchartRadar;exports.useEchartRing=e.useEchartRing;exports.useEchartRose=e.useEchartRose;exports.useEchartTreeMap=e.useEchartTreeMap;exports.useEchartType=e.useEchartType;exports.useImagePreview=P.useImagePreview;exports.useLevel=b.useLevel;exports.useModal=y.useModal;exports.useTable=T.useTable;exports.useTableColumnColor=w.useTableColumnColor;exports.useTableColumn=F.useTableColumn;exports.useTableColumnImage=S.useTableColumnImage;exports.useTableColumnMap=M.useTableColumnMap;exports.useTableColumnMedia=L.useTableColumnMedia;exports.useTableColumnStatus=v.useTableColumnStatus;exports.useTableColumnSwitch=A.useTableColumnSwitch;exports.useUI=I.useUI;exports.DuxModal=f.DuxModal;exports.DuxModalPage=$.default;exports.DuxModalTab=R.default;exports.duxFormEditorGrid=B.duxFormEditorGrid;exports.DuxDesignEditor=k.DuxDesignEditor;exports.useEditor=U.useEditor;exports.DuxWidgetEditorPreview=W.DuxWidgetEditorPreview;exports.WidgetEditorSetting=a.WidgetEditorSetting;exports.WidgetEditorSettingCard=a.WidgetEditorSettingCard;exports.DuxDialog=V.default;exports.DuxDrawApps=G.DuxDrawApps;exports.DuxDrawAuth=H.DuxDrawAuth;exports.DuxDrawEmpty=N.DuxDrawEmpty;exports.DuxDrawEmptyForm=Q.DuxDrawEmptyForm;exports.DuxDrawError=O.DuxDrawError;exports.DuxDrawer=z.default;exports.DuxDrawerPage=K.DuxDrawerPage;exports.DuxAiEditor=j.DuxAiEditor;exports.DuxDrawerForm=_.DuxDrawerForm;exports.DuxFormItem=J.DuxFormItem;exports.DuxFormLayout=X.DuxFormLayout;exports.DuxModalForm=Y.DuxModalForm;exports.DuxPageForm=Z.DuxPageForm;exports.DuxSettingForm=ee.DuxSettingForm;exports.DuxFormEditor=re.DuxFormEditor;exports.DuxFormRenderer=ue.DuxFormRenderer;exports.DuxIconPicker=te.DuxIconPicker;exports.DuxTableFilter=oe.DuxTableFilter;exports.DuxFilterLayout=ae.DuxFilterLayout;exports.DuxGrid=ie.DuxGrid;exports.DuxListLayout=se.DuxListLayout;exports.DuxTableLayout=ne.DuxTableLayout;exports.DuxTableTools=De.DuxTableTools;exports.DuxLevel=ce.DuxLevel;exports.DuxCardPage=le.DuxCardPage;exports.DuxListPage=xe.DuxListPage;exports.DuxMedia=de.DuxMedia;exports.DuxPanelAlert=me.DuxPanelAlert;exports.DuxPanelCard=qe.DuxPanelCard;exports.DuxCollapsePanel=ge.DuxCollapsePanel;exports.elementConfigs=r.elementConfigs;exports.elementRegistry=r.elementRegistry;exports.getElementConfig=r.getElementConfig;exports.getElementsByCategory=r.getElementsByCategory;exports.usePosterEditor=Ee.usePosterEditor;exports.DuxPosterEditor=pe.DuxPosterEditor;exports.DuxSelectCard=he.DuxSelectCard;exports.DuxStatsNumber=Ce.DuxStatsNumber;exports.DuxStatsRealTime=Pe.DuxStatsRealTime;exports.DuxBlockEmpty=be.DuxBlockEmpty;exports.DuxListEmpty=ye.DuxListEmpty;exports.DuxTable=Te.DuxTable;exports.DuxTablePage=we.DuxTablePage;exports.DuxTreeFilter=Fe.DuxTreeFilter;exports.DuxFileUpload=Se.DuxFileUpload;exports.DuxImageUpload=Me.DuxImageUpload;exports.DuxFileManage=Le.default;exports.DuxAvatar=ve.DuxAvatar;exports.DuxWidgetConnect=Ae.DuxWidgetConnect;exports.DuxPlaceholder=Ie.DuxPlaceholder;exports.DuxAuthLayout=fe.DuxAuthLayout;exports.DuxLayout=$e.DuxLayout;exports.DuxLoginPage=Re.DuxLoginPage;exports.DuxMenuAvatar=Be.default;exports.DuxMenuButton=ke.default;exports.DuxMenuCmd=Ue.DuxMenuCmd;exports.DuxMenuMain=We.DuxMenuMain;exports.DuxMobileMenu=Ve.DuxMobileMenu;exports.DuxPage=Ge.DuxPage;exports.DuxPage403=He.DuxPage403;exports.DuxPage404=Ne.DuxPage404;exports.DuxPage500=Qe.DuxPage500;exports.DuxPageEmpty=Oe.DuxPageEmpty;exports.DuxPageLoading=ze.DuxPageLoading;exports.DuxPageStatus=Ke.DuxPageStatus;exports.generateRainbowFromColor=i.generateRainbowFromColor;exports.getTheme=i.getTheme;exports.config=je.config;exports.initVeeValidate=_e.initVeeValidate;exports.enUS=Je.default;exports.zhCN=Xe.default;exports.createDuxPro=Ye.createDuxPro;exports.useUIStore=Ze.useUIStore;exports.themeOverrides=er.themeOverrides;exports.presetTheme=rr.presetTheme;exports.VueKonva=ur;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./app.cjs"),n=require("./components/card/card.cjs"),t=require("./components/card/store.cjs"),D=require("./components/carousel/carousel.cjs"),c=require("./components/chart/echart.cjs"),l=require("./components/code/code.cjs"),x=require("./components/crop/imageCrop.cjs"),d=require("./components/crop/imageCropModal.cjs"),m=require("./components/dashboard/hello.cjs"),q=require("./components/dashboard/helloBig.cjs"),o=require("./components/dashboard/quick.cjs"),g=require("./components/data/dynamicData.cjs"),E=require("./components/data/dynamicSelect.cjs");require("vue");require("@duxweb/dvha-core");require("naive-ui");const u=require("./hooks/action.cjs"),p=require("./hooks/dialog.cjs"),h=require("./hooks/download.cjs"),C=require("./hooks/drawer.cjs"),e=require("./hooks/echart.cjs"),P=require("./hooks/image.cjs"),b=require("./hooks/level.cjs"),y=require("./hooks/modal.cjs"),T=require("./hooks/table.cjs"),w=require("./hooks/table/color.cjs"),F=require("./hooks/table/column.cjs"),S=require("./hooks/table/image.cjs"),M=require("./hooks/table/map.cjs"),L=require("./hooks/table/media.cjs"),v=require("./hooks/table/status.cjs"),A=require("./hooks/table/switch.cjs"),I=require("./hooks/ui.cjs"),f=require("./components/modal/modal.cjs"),$=require("./components/modal/modalPage.cjs"),R=require("./components/modal/modalTab.cjs"),B=require("./components/designEditor/components/grid.cjs"),U=require("./components/designEditor/editor.cjs"),k=require("./components/designEditor/editor/hook.cjs"),W=require("./components/designEditor/editor/preview.cjs"),a=require("./components/designEditor/editor/setting.cjs"),V=require("./components/dialog/dialog.cjs"),G=require("./components/draw/drawApps.cjs"),H=require("./components/draw/drawAuth.cjs"),N=require("./components/draw/drawEmpty.cjs"),Q=require("./components/draw/drawEmptyForm.cjs"),O=require("./components/draw/drawError.cjs"),z=require("./components/drawer/drawer.cjs"),K=require("./components/drawer/drawerPage.cjs"),j=require("./components/editor/aiEditor.cjs"),_=require("./components/form/drawerForm.cjs"),J=require("./components/form/formItem.cjs"),X=require("./components/form/formLayout.cjs"),Y=require("./components/form/modalForm.cjs"),Z=require("./components/form/pageForm.cjs"),ee=require("./components/form/settingForm.cjs"),re=require("./components/formEditor/editor.cjs"),ue=require("./components/formEditor/renderer.cjs"),te=require("./components/icon/icon.cjs");require("@iconify-json/tabler/icons.json");require("@vueuse/core");const oe=require("./components/layout/filter.cjs"),ae=require("./components/layout/filterLayout.cjs"),ie=require("./components/layout/grid.cjs"),se=require("./components/layout/list.cjs"),ne=require("./components/layout/table.cjs"),De=require("./components/layout/tools.cjs"),ce=require("./components/level/level.cjs"),le=require("./components/list/card.cjs"),xe=require("./components/list/list.cjs"),de=require("./components/media/media.cjs"),me=require("./components/panel/alert.cjs"),qe=require("./components/panel/setting.cjs"),ge=require("./components/panel/collapse.cjs"),r=require("./components/posterEditor/elements/index.cjs"),Ee=require("./components/posterEditor/hooks/usePosterEditor.cjs"),pe=require("./components/posterEditor/posterEditor.cjs"),he=require("./components/select/cardSelect.cjs"),Ce=require("./components/stats/number.cjs"),Pe=require("./components/stats/realTime.cjs"),be=require("./components/status/blockEmpty.cjs"),ye=require("./components/status/listEmpty.cjs"),Te=require("./components/table/table.cjs"),we=require("./components/table/tablePage.cjs"),Fe=require("./components/tree/treeFilter.cjs"),Se=require("./components/upload/file.cjs"),Me=require("./components/upload/image.cjs"),Le=require("./components/upload/manager.cjs"),ve=require("./components/upload/selectFile.cjs"),Ae=require("./components/widget/avatar.cjs"),Ie=require("./components/widget/connect.cjs"),fe=require("./components/widget/placeholder.cjs"),$e=require("./pages/authLayout.cjs"),Re=require("./pages/layout.cjs"),Be=require("./pages/login.cjs"),Ue=require("./pages/menu/avatar.cjs"),ke=require("./pages/menu/button.cjs"),We=require("./pages/menu/cmd.cjs"),Ve=require("./pages/menu/main.cjs"),Ge=require("./pages/menu/mobile.cjs"),He=require("./pages/page.cjs"),Ne=require("./pages/page403.cjs"),Qe=require("./pages/page404.cjs"),Oe=require("./pages/page500.cjs"),ze=require("./pages/pageEmpty.cjs"),Ke=require("./pages/pageLoading.cjs"),je=require("./pages/pageStatus.cjs"),i=require("./config/echart.cjs"),_e=require("./config/uno.cjs"),Je=require("./config/validate.cjs"),Xe=require("./langs/en-US.json.cjs"),Ye=require("./langs/zh-CN.json.cjs"),Ze=require("./main.cjs"),er=require("./stores/ui.cjs"),rr=require("./theme/naiveTheme.cjs"),ur=require("./theme/presetTheme.cjs"),tr=require("vue-konva");exports.DuxApp=s.DuxApp;exports.DuxCard=n.DuxCard;exports.DuxStatsStore=t.DuxStatsStore;exports.DuxStatsStoreItem=t.DuxStatsStoreItem;exports.DuxCarousel=D.DuxCarousel;exports.DuxChart=c.DuxChart;exports.DuxCodeEditor=l.DuxCodeEditor;exports.DuxImageCrop=x.DuxImageCrop;exports.DuxImageCropModal=d.DuxImageCropModal;exports.DuxDashboardHello=m.DuxDashboardHello;exports.DuxDashboardHelloBig=q.DuxDashboardHelloBig;exports.DuxDashboardQuick=o.DuxDashboardQuick;exports.DuxDashboardQuickItem=o.DuxDashboardQuickItem;exports.DuxDynamicData=g.DuxDynamicData;exports.DuxDynamicSelect=E.DuxDynamicSelect;exports.useAction=u.useAction;exports.useActionButton=u.useActionButton;exports.useActionDropdown=u.useActionDropdown;exports.useDialog=p.useDialog;exports.useDownload=h.useDownload;exports.useDrawer=C.useDrawer;exports.useEchartBar=e.useEchartBar;exports.useEchartCommon=e.useEchartCommon;exports.useEchartFunnel=e.useEchartFunnel;exports.useEchartLine=e.useEchartLine;exports.useEchartMap=e.useEchartMap;exports.useEchartPie=e.useEchartPie;exports.useEchartRadar=e.useEchartRadar;exports.useEchartRing=e.useEchartRing;exports.useEchartRose=e.useEchartRose;exports.useEchartTreeMap=e.useEchartTreeMap;exports.useEchartType=e.useEchartType;exports.useImagePreview=P.useImagePreview;exports.useLevel=b.useLevel;exports.useModal=y.useModal;exports.useTable=T.useTable;exports.useTableColumnColor=w.useTableColumnColor;exports.useTableColumn=F.useTableColumn;exports.useTableColumnImage=S.useTableColumnImage;exports.useTableColumnMap=M.useTableColumnMap;exports.useTableColumnMedia=L.useTableColumnMedia;exports.useTableColumnStatus=v.useTableColumnStatus;exports.useTableColumnSwitch=A.useTableColumnSwitch;exports.useUI=I.useUI;exports.DuxModal=f.DuxModal;exports.DuxModalPage=$.default;exports.DuxModalTab=R.default;exports.duxFormEditorGrid=B.duxFormEditorGrid;exports.DuxDesignEditor=U.DuxDesignEditor;exports.useEditor=k.useEditor;exports.DuxWidgetEditorPreview=W.DuxWidgetEditorPreview;exports.WidgetEditorSetting=a.WidgetEditorSetting;exports.WidgetEditorSettingCard=a.WidgetEditorSettingCard;exports.DuxDialog=V.default;exports.DuxDrawApps=G.DuxDrawApps;exports.DuxDrawAuth=H.DuxDrawAuth;exports.DuxDrawEmpty=N.DuxDrawEmpty;exports.DuxDrawEmptyForm=Q.DuxDrawEmptyForm;exports.DuxDrawError=O.DuxDrawError;exports.DuxDrawer=z.default;exports.DuxDrawerPage=K.DuxDrawerPage;exports.DuxAiEditor=j.DuxAiEditor;exports.DuxDrawerForm=_.DuxDrawerForm;exports.DuxFormItem=J.DuxFormItem;exports.DuxFormLayout=X.DuxFormLayout;exports.DuxModalForm=Y.DuxModalForm;exports.DuxPageForm=Z.DuxPageForm;exports.DuxSettingForm=ee.DuxSettingForm;exports.DuxFormEditor=re.DuxFormEditor;exports.DuxFormRenderer=ue.DuxFormRenderer;exports.DuxIconPicker=te.DuxIconPicker;exports.DuxTableFilter=oe.DuxTableFilter;exports.DuxFilterLayout=ae.DuxFilterLayout;exports.DuxGrid=ie.DuxGrid;exports.DuxListLayout=se.DuxListLayout;exports.DuxTableLayout=ne.DuxTableLayout;exports.DuxTableTools=De.DuxTableTools;exports.DuxLevel=ce.DuxLevel;exports.DuxCardPage=le.DuxCardPage;exports.DuxListPage=xe.DuxListPage;exports.DuxMedia=de.DuxMedia;exports.DuxPanelAlert=me.DuxPanelAlert;exports.DuxPanelCard=qe.DuxPanelCard;exports.DuxCollapsePanel=ge.DuxCollapsePanel;exports.elementConfigs=r.elementConfigs;exports.elementRegistry=r.elementRegistry;exports.getElementConfig=r.getElementConfig;exports.getElementsByCategory=r.getElementsByCategory;exports.usePosterEditor=Ee.usePosterEditor;exports.DuxPosterEditor=pe.DuxPosterEditor;exports.DuxSelectCard=he.DuxSelectCard;exports.DuxStatsNumber=Ce.DuxStatsNumber;exports.DuxStatsRealTime=Pe.DuxStatsRealTime;exports.DuxBlockEmpty=be.DuxBlockEmpty;exports.DuxListEmpty=ye.DuxListEmpty;exports.DuxTable=Te.DuxTable;exports.DuxTablePage=we.DuxTablePage;exports.DuxTreeFilter=Fe.DuxTreeFilter;exports.DuxFileUpload=Se.DuxFileUpload;exports.DuxImageUpload=Me.DuxImageUpload;exports.DuxFileManage=Le.default;exports.DuxSelectUpload=ve.DuxSelectUpload;exports.DuxAvatar=Ae.DuxAvatar;exports.DuxWidgetConnect=Ie.DuxWidgetConnect;exports.DuxPlaceholder=fe.DuxPlaceholder;exports.DuxAuthLayout=$e.DuxAuthLayout;exports.DuxLayout=Re.DuxLayout;exports.DuxLoginPage=Be.DuxLoginPage;exports.DuxMenuAvatar=Ue.default;exports.DuxMenuButton=ke.default;exports.DuxMenuCmd=We.DuxMenuCmd;exports.DuxMenuMain=Ve.DuxMenuMain;exports.DuxMobileMenu=Ge.DuxMobileMenu;exports.DuxPage=He.DuxPage;exports.DuxPage403=Ne.DuxPage403;exports.DuxPage404=Qe.DuxPage404;exports.DuxPage500=Oe.DuxPage500;exports.DuxPageEmpty=ze.DuxPageEmpty;exports.DuxPageLoading=Ke.DuxPageLoading;exports.DuxPageStatus=je.DuxPageStatus;exports.generateRainbowFromColor=i.generateRainbowFromColor;exports.getTheme=i.getTheme;exports.config=_e.config;exports.initVeeValidate=Je.initVeeValidate;exports.enUS=Xe.default;exports.zhCN=Ye.default;exports.createDuxPro=Ze.createDuxPro;exports.useUIStore=er.useUIStore;exports.themeOverrides=rr.themeOverrides;exports.presetTheme=ur.presetTheme;exports.VueKonva=tr;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e={search:"Search",empty:"No data",menu:"Menu",theme:"Theme",dark:"Dark",light:"Light",back:"Back",loading:"Loading...",success:"Success",error:"Error",unknownError:"Unknown error",preview:"Preview"},a={tab:{lock:"Lock",closeOther:"Close Other",closeLeft:"Close Left",closeRight:"Close Right"},dialog:{confirm:{title:"Confirm",content:"Are you sure you want to confirm?"},cancel:{title:"Cancel",content:"Are you sure you want to cancel?"},success:{title:"Success",content:"Your operation has been successful"},error:{title:"Error",content:"Your operation has been failed"},prompt:{title:"Prompt"}},button:{confirm:"Confirm",cancel:"Cancel",submit:"Submit",reset:"Reset",delete:"Delete",search:"Search",advanced:"Advanced",export:"Export",import:"Import",autoRefresh:"Auto Refresh",filter:"Filter",refresh:"Refresh",select:"Select",create:"Create",download:"Download",rename:"Rename",preview:"Preview"},form:{edit:"Edit",create:"Create"},list:{selectAll:"Select All",columnSetting:"Column Setting",selectedItems:"Selected Items: {num}",total:"Total: {total}"},editor:{placeholder:"Please enter content"},upload:{fileManager:"File Manager",uploadFile:"Upload File",cancel:"Cancel",delete:"Delete",error:"Upload failed",empty:"No files",desc:"Click or drag files to this area",dropHere:"Drop files here",allFormats:"Support any format files",supportFormats:"Support {formats} format files",maxSize:"Max file size: {size}MB",success:"Upload success",failed:"Upload failed",fileExtension:"{ext} file",status:{pending:"Pending",uploading:"Uploading",success:"Success",cancelled:"Cancelled",error:"Error"},file:{name:"File Name",size:"Size",type:"Type",status:"Status"},actions:"Actions"},uploadManage:{title:"File Manager",all:"All",image:"Images",media:"Media",docs:"Documents",upload:"Upload",empty:"No files",emptyDesc:"No more files, please upload files",back:"Back to parent",parentLevel:"Parent Level",namePlaceholder:"Please enter name",createError:"Create failed",editError:"Edit failed",delError:"Delete failed",delTitle:"Confirm Delete",delDesc:"Are you sure you want to delete the selected files? This action cannot be undone."},crop:{title:"Crop",select:"Select",confirm:"Confirm"},stats:{realTimeData:"Real-time Data"},data:{selectTitle:"Please select data"},menu:{language:"Language",chinese:"中文",english:"English",color:"Color",primaryColor:"Primary Color",neutralColor:"Neutral Color",theme:"Theme",followSystem:"Follow System",lightMode:"Light",darkMode:"Dark",logout:"Logout"},iconPicker:{title:"Icon Picker"},designEditor:{layout:"Layout",all:"All",grid:{label:"Grid",title:"Grid Settings",columns:"Columns",spacing:"Spacing",columnsPlaceholder:"Enter columns",spacingPlaceholder:"Enter spacing"}},formEditor:{config:"Component Config",options:"Option Config",data:"Data",common:{componentConfig:"Component Config",optionConfig:"Option Config",optionData:"Option Data",dataConfig:"Data Config",dataEdit:"Data Edit",label:"Label",placeholder:"Placeholder",disabled:"Disabled",clearable:"Clearable",multiple:"Multiple",defaultValue:"Default Value",readonly:"Readonly",showCount:"Show Count",prefix:"Prefix",suffix:"Suffix",status:"Status",minLength:"Min Length",maxLength:"Max Length",minValue:"Min Value",maxValue:"Max Value",minCount:"Min Count",maxCount:"Max Count",optionLabel:"Option Label",optionValue:"Option Value",labelField:"Label Field",valueField:"Value Field",dataInterface:"Data Interface",cascade:"Cascade",showPath:"Show Path",uploadUrl:"Upload URL",showAlpha:"Show Alpha",timeFormat:"Time Format",hour12:"12 Hours",dateType:"Date Type",inputType:"Input Type",formDirection:"Form Direction",leftAlign:"Left Align",topAlign:"Top Align",settingAlign:"Setting Layout",pageAlign:"Page Layout",name:"Name",desc:"Description"},setting:{title:"Form Settings"},validation:"Validation Rules",componentConfig:"Component Config",input:{label:"Text",types:{text:"Text",textarea:"Textarea",password:"Password"}},inputNumber:{label:"Number"},select:{label:"Select",configDesc:"Config options"},radio:{label:"Radio",configDesc:"Config options"},checkbox:{label:"Checkbox",configDesc:"Config options"},switch:{label:"Switch"},date:{label:"Date",placeholder:"Select date",dateType:"Date Type",date:"Date",daterange:"Date Range",datetime:"DateTime",datetimerange:"DateTime Range",month:"Month",monthrange:"Month Range",year:"Year",yearrange:"Year Range",quarter:"Quarter",quarterrange:"Quarter Range",week:"Week"},time:{label:"Time",placeholder:"Select time",timeFormat:"Format",use12Hours:"12 Hours"},color:{label:"Color",showAlpha:"Show Alpha"},cascader:{label:"Cascader",desc:"Cascader options data in JSON array format",configDesc:"Config options",optionDesc:"JSON array format",optionsDescription:"Config cascader options",cascade:"Cascade",showPath:"Show Path"},cascaderAsync:{label:"Cascader",dataApi:"Data API",apiPlaceholder:"Enter API URL",cascade:"Cascade",showPath:"Show Path"},dynamicInput:{label:"Dynamic"},editor:{label:"Editor",placeholder:"Enter content",uploadUrlDesc:"Editor image upload URL"},aiEditor:{label:"Editor",uploadUrl:"Upload URL",uploadUrlFeedback:"Image upload URL"},sider:{name:"Slider",step:"Step",min:"Min",max:"Max"},dynamicTags:{name:"Tags",max:"Max Count"},mentionAsync:{name:"Mention",clearable:"Clearable",path:"Data API",labelField:"Label Field",valueField:"Value Field"},region:{name:"Region",Path:"Data API",labelField:"Label Field",valueField:"Value Field"},selectAsync:{name:"Select",pagination:"Pagination",path:"Data API",labelField:"Label Field",valueField:"Value Field",imageField:"Image Field",descField:"Desc Field"},transferAsync:{name:"Transfer"},treeSelect:{name:"Tree"},treeSelectAsync:{name:"Tree Select",path:"Data API",labelField:"Label Field",keyField:"Key Field"},tree:{disabled:"Disabled"},groups:{form:"Form",select:"Selector",async:"Async"},main:{label:"Main Content",categories:{form:"Form",select:"Selector",async:"Async"},actions:{jsonOutput:"Json Output",save:"Save"}}}},t={table:{exportSuccess:"Export data successfully",exportProgress:"Exporting data, please wait...",exportFailed:"Export data failed",exportSuccessContent:"Successfully exported {count} records",exportProgressContent:"Page {page} data",exportFailedContent:"Export data failed: {error}",importSuccess:"Import data successfully",importProgress:"Importing data, please wait...",importFailed:"Import data failed",importSuccessContent:"Successfully imported {count} records",importProgressContent:"{processed} / {total} records",importFailedContent:"Import data failed: {error}",saveSuccess:"Save successfully",copySuccess:"Copy successfully",copyFailed:"Copy failed"},download:{failed:"Download failed"}},o={400:{title:"400",desc:"Request error"},401:{title:"401",desc:"You do not have permission to access this page"},403:{title:"403",desc:"You do not have permission to access this page"},404:{title:"404",desc:"Page not found"},500:{title:"500",desc:"Server error"},empty:{title:"No data",desc:"No more data, please try again later"},loading:{title:"Loading",desc:"Data is loading, please try again later"},login:{success:"Login success",error:"Login failed, please check your username and password",placeholder:{username:"Please enter username",password:"Please enter password"},buttons:{login:"Login"}}},l={"zh-CN":"Chinese","en-US":"English","ja-JP":"Japanese","ko-KR":"Korean","ru-RU":"Russian"},r={common:e,components:a,hooks:t,pages:o,locale:l};exports.common=e;exports.components=a;exports.default=r;exports.hooks=t;exports.locale=l;exports.pages=o;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e={search:"Search",empty:"No data",menu:"Menu",theme:"Theme",dark:"Dark",light:"Light",back:"Back",loading:"Loading...",success:"Success",error:"Error",unknownError:"Unknown error",preview:"Preview"},a={tab:{lock:"Lock",closeOther:"Close Other",closeLeft:"Close Left",closeRight:"Close Right"},dialog:{confirm:{title:"Confirm",content:"Are you sure you want to confirm?"},cancel:{title:"Cancel",content:"Are you sure you want to cancel?"},success:{title:"Success",content:"Your operation has been successful"},error:{title:"Error",content:"Your operation has been failed"},prompt:{title:"Prompt"}},button:{confirm:"Confirm",cancel:"Cancel",submit:"Submit",reset:"Reset",delete:"Delete",search:"Search",advanced:"Advanced",export:"Export",import:"Import",autoRefresh:"Auto Refresh",filter:"Filter",refresh:"Refresh",select:"Select",create:"Create",download:"Download",rename:"Rename",preview:"Preview"},form:{edit:"Edit",create:"Create"},list:{selectAll:"Select All",columnSetting:"Column Setting",selectedItems:"Selected Items: {num}",total:"Total: {total}"},editor:{placeholder:"Please enter content"},upload:{fileManager:"File Manager",uploadFile:"Upload File",cancel:"Cancel",delete:"Delete",error:"Upload failed",empty:"No files",desc:"Click or drag files to this area",dropHere:"Drop files here",allFormats:"Support any format files",supportFormats:"Support {formats} format files",maxSize:"Max file size: {size}MB",success:"Upload success",failed:"Upload failed",fileExtension:"{ext} file",status:{pending:"Pending",uploading:"Uploading",success:"Success",cancelled:"Cancelled",error:"Error"},file:{name:"File Name",size:"Size",type:"Type",status:"Status"},actions:"Actions",selectUpload:{clickOrDrag:"Click to select files or drag here",selectedFiles:"Selected {count} files",multipleSupport:"Support multiple file selection",defaultDesc:"Support uploading specified file types",acceptDesc:"Only support uploading {accept} format files",maxFiles:"Max {max} files"}},uploadManage:{title:"File Manager",all:"All",image:"Images",media:"Media",docs:"Documents",upload:"Upload",empty:"No files",emptyDesc:"No more files, please upload files",back:"Back to parent",parentLevel:"Parent Level",namePlaceholder:"Please enter name",createError:"Create failed",editError:"Edit failed",delError:"Delete failed",delTitle:"Confirm Delete",delDesc:"Are you sure you want to delete the selected files? This action cannot be undone."},crop:{title:"Crop",select:"Select",confirm:"Confirm"},stats:{realTimeData:"Real-time Data"},data:{selectTitle:"Please select data"},menu:{language:"Language",chinese:"中文",english:"English",color:"Color",primaryColor:"Primary Color",neutralColor:"Neutral Color",theme:"Theme",followSystem:"Follow System",lightMode:"Light",darkMode:"Dark",logout:"Logout"},iconPicker:{title:"Icon Picker"},designEditor:{layout:"Layout",all:"All",grid:{label:"Grid",title:"Grid Settings",columns:"Columns",spacing:"Spacing",columnsPlaceholder:"Enter columns",spacingPlaceholder:"Enter spacing"}},formEditor:{config:"Component Config",options:"Option Config",data:"Data",common:{componentConfig:"Component Config",optionConfig:"Option Config",optionData:"Option Data",dataConfig:"Data Config",dataEdit:"Data Edit",label:"Label",placeholder:"Placeholder",disabled:"Disabled",clearable:"Clearable",multiple:"Multiple",defaultValue:"Default Value",readonly:"Readonly",showCount:"Show Count",prefix:"Prefix",suffix:"Suffix",status:"Status",minLength:"Min Length",maxLength:"Max Length",minValue:"Min Value",maxValue:"Max Value",minCount:"Min Count",maxCount:"Max Count",optionLabel:"Option Label",optionValue:"Option Value",labelField:"Label Field",valueField:"Value Field",dataInterface:"Data Interface",cascade:"Cascade",showPath:"Show Path",uploadUrl:"Upload URL",showAlpha:"Show Alpha",timeFormat:"Time Format",hour12:"12 Hours",dateType:"Date Type",inputType:"Input Type",formDirection:"Form Direction",leftAlign:"Left Align",topAlign:"Top Align",settingAlign:"Setting Layout",pageAlign:"Page Layout",name:"Name",desc:"Description"},setting:{title:"Form Settings"},validation:"Validation Rules",componentConfig:"Component Config",input:{label:"Text",types:{text:"Text",textarea:"Textarea",password:"Password"}},inputNumber:{label:"Number"},select:{label:"Select",configDesc:"Config options"},radio:{label:"Radio",configDesc:"Config options"},checkbox:{label:"Checkbox",configDesc:"Config options"},switch:{label:"Switch"},date:{label:"Date",placeholder:"Select date",dateType:"Date Type",date:"Date",daterange:"Date Range",datetime:"DateTime",datetimerange:"DateTime Range",month:"Month",monthrange:"Month Range",year:"Year",yearrange:"Year Range",quarter:"Quarter",quarterrange:"Quarter Range",week:"Week"},time:{label:"Time",placeholder:"Select time",timeFormat:"Format",use12Hours:"12 Hours"},color:{label:"Color",showAlpha:"Show Alpha"},cascader:{label:"Cascader",desc:"Cascader options data in JSON array format",configDesc:"Config options",optionDesc:"JSON array format",optionsDescription:"Config cascader options",cascade:"Cascade",showPath:"Show Path"},cascaderAsync:{label:"Cascader",dataApi:"Data API",apiPlaceholder:"Enter API URL",cascade:"Cascade",showPath:"Show Path"},dynamicInput:{label:"Dynamic"},editor:{label:"Editor",placeholder:"Enter content",uploadUrlDesc:"Editor image upload URL"},aiEditor:{label:"Editor",uploadUrl:"Upload URL",uploadUrlFeedback:"Image upload URL"},sider:{name:"Slider",step:"Step",min:"Min",max:"Max"},dynamicTags:{name:"Tags",max:"Max Count"},mentionAsync:{name:"Mention",clearable:"Clearable",path:"Data API",labelField:"Label Field",valueField:"Value Field"},region:{name:"Region",Path:"Data API",labelField:"Label Field",valueField:"Value Field"},selectAsync:{name:"Select",pagination:"Pagination",path:"Data API",labelField:"Label Field",valueField:"Value Field",imageField:"Image Field",descField:"Desc Field"},transferAsync:{name:"Transfer"},treeSelect:{name:"Tree"},treeSelectAsync:{name:"Tree Select",path:"Data API",labelField:"Label Field",keyField:"Key Field"},tree:{disabled:"Disabled"},groups:{form:"Form",select:"Selector",async:"Async"},main:{label:"Main Content",categories:{form:"Form",select:"Selector",async:"Async"},actions:{jsonOutput:"Json Output",save:"Save"}}}},t={table:{exportSuccess:"Export data successfully",exportProgress:"Exporting data, please wait...",exportFailed:"Export data failed",exportSuccessContent:"Successfully exported {count} records",exportProgressContent:"Page {page} data",exportFailedContent:"Export data failed: {error}",importSuccess:"Import data successfully",importProgress:"Importing data, please wait...",importFailed:"Import data failed",importSuccessContent:"Successfully imported {count} records",importProgressContent:"{processed} / {total} records",importFailedContent:"Import data failed: {error}",saveSuccess:"Save successfully",copySuccess:"Copy successfully",copyFailed:"Copy failed"},download:{failed:"Download failed"}},o={400:{title:"400",desc:"Request error"},401:{title:"401",desc:"You do not have permission to access this page"},403:{title:"403",desc:"You do not have permission to access this page"},404:{title:"404",desc:"Page not found"},500:{title:"500",desc:"Server error"},empty:{title:"No data",desc:"No more data, please try again later"},loading:{title:"Loading",desc:"Data is loading, please try again later"},login:{success:"Login success",error:"Login failed, please check your username and password",placeholder:{username:"Please enter username",password:"Please enter password"},buttons:{login:"Login"}}},l={"zh-CN":"Chinese","en-US":"English","ja-JP":"Japanese","ko-KR":"Korean","ru-RU":"Russian"},i={common:e,components:a,hooks:t,pages:o,locale:l};exports.common=e;exports.components=a;exports.default=i;exports.hooks=t;exports.locale=l;exports.pages=o;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});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} 条"},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:"操作"},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:"异步"},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":"Русский"},s={common:e,components:t,hooks:a,pages:l,locale:o};exports.common=e;exports.components=t;exports.default=s;exports.hooks=a;exports.locale=o;exports.pages=l;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});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} 条"},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:"异步"},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":"Русский"},s={common:e,components:t,hooks:a,pages:l,locale:o};exports.common=e;exports.components=t;exports.default=s;exports.hooks=a;exports.locale=o;exports.pages=l;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),u=require("vue-router"),t=require("./layout/global.cjs"),r=e.defineComponent({name:"DuxLayout",setup(){const o=u.useRouter();return console.log(o.getRoutes()),()=>e.createVNode(t.DuxGlobalLayout,null,{default:()=>[e.createVNode(u.RouterView,null,null)]})}});exports.DuxLayout=r;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),u=require("vue-router"),t=require("./layout/global.cjs"),o=e.defineComponent({name:"DuxLayout",setup(){return()=>e.createVNode(t.DuxGlobalLayout,null,{default:()=>[e.createVNode(u.RouterView,null,null)]})}});exports.DuxLayout=o;
@@ -1,5 +1,5 @@
1
1
  "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=`/* layer: properties */
2
- @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*, ::before, ::after, ::backdrop{--un-from-opacity:100%;--un-text-opacity:100%;--un-bg-opacity:100%;--un-divide-y-reverse:initial;--un-border-style:solid;--un-divide-x-reverse:initial;--un-divide-opacity:100%;--un-shadow-opacity:100%;--un-border-opacity:100%;--un-ease:initial;--un-translate-x:initial;--un-translate-y:initial;--un-translate-z:initial;--un-to-opacity:100%;--un-fill-opacity:100%;--un-outline-style:solid;}}
2
+ @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*, ::before, ::after, ::backdrop{--un-from-opacity:100%;--un-text-opacity:100%;--un-bg-opacity:100%;--un-divide-y-reverse:initial;--un-border-style:solid;--un-divide-x-reverse:initial;--un-divide-opacity:100%;--un-shadow-opacity:100%;--un-ease:initial;--un-translate-x:initial;--un-translate-y:initial;--un-translate-z:initial;--un-border-opacity:100%;--un-to-opacity:100%;--un-fill-opacity:100%;--un-outline-style:solid;}}
3
3
  @property --un-text-opacity{syntax:"<percentage>";inherits:false;initial-value:100%;}
4
4
  @property --un-outline-style{syntax:"*";inherits:false;initial-value:solid;}
5
5
  @property --un-border-opacity{syntax:"<percentage>";inherits:false;initial-value:100%;}
@@ -1237,6 +1237,7 @@ input:where([type='button'], [type='reset'], [type='submit']),
1237
1237
  .min-w-0{min-width:calc(var(--spacing) * 0);}
1238
1238
  .min-w-110{min-width:calc(var(--spacing) * 110);}
1239
1239
  .min-w-60{min-width:calc(var(--spacing) * 60);}
1240
+ .w-12{width:calc(var(--spacing) * 12);}
1240
1241
  .w-120{width:calc(var(--spacing) * 120);}
1241
1242
  .w-120px{width:120px;}
1242
1243
  .w-15{width:calc(var(--spacing) * 15);}
@@ -1289,6 +1290,7 @@ input:where([type='button'], [type='reset'], [type='submit']),
1289
1290
  .transform{transform:var(--un-rotate-x) var(--un-rotate-y) var(--un-rotate-z) var(--un-skew-x) var(--un-skew-y);}
1290
1291
  .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--un-gradient-from,--un-gradient-via,--un-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}
1291
1292
  .transition-all{transition-property:all;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}
1293
+ .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--un-gradient-from,--un-gradient-via,--un-gradient-to;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}
1292
1294
  .transition-opacity{transition-property:opacity;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}
1293
1295
  .duration-150{--un-duration:150ms;transition-duration:150ms;}
1294
1296
  .duration-200{--un-duration:200ms;transition-duration:200ms;}
@@ -0,0 +1,72 @@
1
+ import { defineComponent as r, ref as p, computed as f, createVNode as t, createTextVNode as d } from "vue";
2
+ import { useI18n as x } from "@duxweb/dvha-core";
3
+ import { useVModel as v } from "@vueuse/core";
4
+ const b = /* @__PURE__ */ r({
5
+ name: "DuxSelectUpload",
6
+ props: {
7
+ maxNum: Number,
8
+ multiple: Boolean,
9
+ value: [String, Array, Object],
10
+ onUpdateValue: Function,
11
+ accept: {
12
+ type: String,
13
+ default: "*"
14
+ }
15
+ },
16
+ setup(e, {
17
+ emit: s
18
+ }) {
19
+ const o = p([]), u = v(e, "value", s), {
20
+ t: a
21
+ } = x(), i = f(() => {
22
+ const n = o.value.length;
23
+ return n === 0 ? a("components.upload.selectUpload.clickOrDrag") : e.multiple ? a("components.upload.selectUpload.selectedFiles", {
24
+ count: n
25
+ }) : o.value[0]?.name || "";
26
+ });
27
+ function m(n) {
28
+ const c = Array.from(n.target.files || []);
29
+ if (e.multiple) {
30
+ const l = e.maxNum ? c.slice(0, e.maxNum) : c;
31
+ o.value = l, u.value = l, e.onUpdateValue?.(l);
32
+ } else {
33
+ const l = c[0];
34
+ o.value = l ? [l] : [], u.value = l || void 0, e.onUpdateValue?.(l);
35
+ }
36
+ }
37
+ return () => t("div", {
38
+ class: "relative border border-dashed border-muted rounded p-8 text-center hover:border-primary transition-colors duration-200 bg-muted hover:bg-elevated"
39
+ }, [t("input", {
40
+ type: "file",
41
+ multiple: e.multiple,
42
+ class: "absolute inset-0 w-full h-full opacity-0 cursor-pointer",
43
+ onChange: m,
44
+ accept: e.accept
45
+ }, null), t("div", {
46
+ class: "flex flex-col items-center gap-3"
47
+ }, [t("svg", {
48
+ class: "w-12 h-12 text-muted",
49
+ fill: "none",
50
+ stroke: "currentColor",
51
+ viewBox: "0 0 24 24"
52
+ }, [t("path", {
53
+ "stroke-linecap": "round",
54
+ "stroke-linejoin": "round",
55
+ "stroke-width": "2",
56
+ d: "M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M15 13l-3-3m0 0l-3 3m3-3v12"
57
+ }, null)]), t("div", null, [t("p", {
58
+ class: "text-lg font-medium text-default"
59
+ }, [i.value]), t("p", {
60
+ class: "text-sm text-muted mt-1"
61
+ }, [e.multiple ? a("components.upload.selectUpload.multipleSupport") : e.accept !== "*" ? a("components.upload.selectUpload.acceptDesc", {
62
+ accept: e.accept
63
+ }) : a("components.upload.selectUpload.defaultDesc"), e.maxNum && t("span", {
64
+ class: "ml-2 text-warning"
65
+ }, [d("("), a("components.upload.selectUpload.maxFiles", {
66
+ max: e.maxNum
67
+ }), d(")")])])])])]);
68
+ }
69
+ });
70
+ export {
71
+ b as DuxSelectUpload
72
+ };
package/dist/esm/index.js CHANGED
@@ -86,39 +86,40 @@ import { DuxTreeFilter as be } from "./components/tree/treeFilter.js";
86
86
  import { DuxFileUpload as Me } from "./components/upload/file.js";
87
87
  import { DuxImageUpload as Fe } from "./components/upload/image.js";
88
88
  import { default as we } from "./components/upload/manager.js";
89
- import { DuxAvatar as Ae } from "./components/widget/avatar.js";
90
- import { DuxWidgetConnect as ve } from "./components/widget/connect.js";
91
- import { DuxPlaceholder as Be } from "./components/widget/placeholder.js";
92
- import { DuxAuthLayout as ke } from "./pages/authLayout.js";
93
- import { DuxLayout as Ve } from "./pages/layout.js";
94
- import { DuxLoginPage as He } from "./pages/login.js";
95
- import { default as Qe } from "./pages/menu/avatar.js";
96
- import { default as Ke } from "./pages/menu/button.js";
97
- import { DuxMenuCmd as je } from "./pages/menu/cmd.js";
98
- import { DuxMenuMain as Je } from "./pages/menu/main.js";
99
- import { DuxMobileMenu as Ye } from "./pages/menu/mobile.js";
100
- import { DuxPage as _e } from "./pages/page.js";
101
- import { DuxPage403 as rt } from "./pages/page403.js";
102
- import { DuxPage404 as et } from "./pages/page404.js";
103
- import { DuxPage500 as xt } from "./pages/page500.js";
104
- import { DuxPageEmpty as ut } from "./pages/pageEmpty.js";
105
- import { DuxPageLoading as pt } from "./pages/pageLoading.js";
106
- import { DuxPageStatus as Dt } from "./pages/pageStatus.js";
107
- import { generateRainbowFromColor as it, getTheme as st } from "./config/echart.js";
108
- import { config as nt } from "./config/uno.js";
109
- import { initVeeValidate as Et } from "./config/validate.js";
110
- import { default as Ct } from "./langs/en-US.json.js";
111
- import { default as ht } from "./langs/zh-CN.json.js";
112
- import { createDuxPro as Tt } from "./main.js";
113
- import { useUIStore as yt } from "./stores/ui.js";
114
- import { themeOverrides as St } from "./theme/naiveTheme.js";
115
- import { presetTheme as Lt } from "./theme/presetTheme.js";
116
- import { default as It } from "vue-konva";
89
+ import { DuxSelectUpload as Ae } from "./components/upload/selectFile.js";
90
+ import { DuxAvatar as ve } from "./components/widget/avatar.js";
91
+ import { DuxWidgetConnect as Be } from "./components/widget/connect.js";
92
+ import { DuxPlaceholder as ke } from "./components/widget/placeholder.js";
93
+ import { DuxAuthLayout as Ve } from "./pages/authLayout.js";
94
+ import { DuxLayout as He } from "./pages/layout.js";
95
+ import { DuxLoginPage as Qe } from "./pages/login.js";
96
+ import { default as Ke } from "./pages/menu/avatar.js";
97
+ import { default as je } from "./pages/menu/button.js";
98
+ import { DuxMenuCmd as Je } from "./pages/menu/cmd.js";
99
+ import { DuxMenuMain as Ye } from "./pages/menu/main.js";
100
+ import { DuxMobileMenu as _e } from "./pages/menu/mobile.js";
101
+ import { DuxPage as rt } from "./pages/page.js";
102
+ import { DuxPage403 as et } from "./pages/page403.js";
103
+ import { DuxPage404 as xt } from "./pages/page404.js";
104
+ import { DuxPage500 as ut } from "./pages/page500.js";
105
+ import { DuxPageEmpty as pt } from "./pages/pageEmpty.js";
106
+ import { DuxPageLoading as Dt } from "./pages/pageLoading.js";
107
+ import { DuxPageStatus as it } from "./pages/pageStatus.js";
108
+ import { generateRainbowFromColor as dt, getTheme as nt } from "./config/echart.js";
109
+ import { config as Et } from "./config/uno.js";
110
+ import { initVeeValidate as Ct } from "./config/validate.js";
111
+ import { default as ht } from "./langs/en-US.json.js";
112
+ import { default as Tt } from "./langs/zh-CN.json.js";
113
+ import { createDuxPro as yt } from "./main.js";
114
+ import { useUIStore as St } from "./stores/ui.js";
115
+ import { themeOverrides as Lt } from "./theme/naiveTheme.js";
116
+ import { presetTheme as It } from "./theme/presetTheme.js";
117
+ import { default as Rt } from "vue-konva";
117
118
  export {
118
119
  uo as DuxAiEditor,
119
120
  a as DuxApp,
120
- ke as DuxAuthLayout,
121
- Ae as DuxAvatar,
121
+ Ve as DuxAuthLayout,
122
+ ve as DuxAvatar,
122
123
  de as DuxBlockEmpty,
123
124
  f as DuxCard,
124
125
  No as DuxCardPage,
@@ -154,35 +155,36 @@ export {
154
155
  P as DuxImageCrop,
155
156
  b as DuxImageCropModal,
156
157
  Fe as DuxImageUpload,
157
- Ve as DuxLayout,
158
+ He as DuxLayout,
158
159
  Go as DuxLevel,
159
160
  ge as DuxListEmpty,
160
161
  Ro as DuxListLayout,
161
162
  zo as DuxListPage,
162
- He as DuxLoginPage,
163
+ Qe as DuxLoginPage,
163
164
  Oo as DuxMedia,
164
- Qe as DuxMenuAvatar,
165
- Ke as DuxMenuButton,
166
- je as DuxMenuCmd,
167
- Je as DuxMenuMain,
168
- Ye as DuxMobileMenu,
165
+ Ke as DuxMenuAvatar,
166
+ je as DuxMenuButton,
167
+ Je as DuxMenuCmd,
168
+ Ye as DuxMenuMain,
169
+ _e as DuxMobileMenu,
169
170
  Sr as DuxModal,
170
171
  no as DuxModalForm,
171
172
  Lr as DuxModalPage,
172
173
  Ir as DuxModalTab,
173
- _e as DuxPage,
174
- rt as DuxPage403,
175
- et as DuxPage404,
176
- xt as DuxPage500,
177
- ut as DuxPageEmpty,
174
+ rt as DuxPage,
175
+ et as DuxPage403,
176
+ xt as DuxPage404,
177
+ ut as DuxPage500,
178
+ pt as DuxPageEmpty,
178
179
  Eo as DuxPageForm,
179
- pt as DuxPageLoading,
180
- Dt as DuxPageStatus,
180
+ Dt as DuxPageLoading,
181
+ it as DuxPageStatus,
181
182
  qo as DuxPanelAlert,
182
183
  Xo as DuxPanelCard,
183
- Be as DuxPlaceholder,
184
+ ke as DuxPlaceholder,
184
185
  ue as DuxPosterEditor,
185
186
  pe as DuxSelectCard,
187
+ Ae as DuxSelectUpload,
186
188
  Co as DuxSettingForm,
187
189
  De as DuxStatsNumber,
188
190
  ie as DuxStatsRealTime,
@@ -194,24 +196,24 @@ export {
194
196
  Pe as DuxTablePage,
195
197
  Wo as DuxTableTools,
196
198
  be as DuxTreeFilter,
197
- ve as DuxWidgetConnect,
199
+ Be as DuxWidgetConnect,
198
200
  Gr as DuxWidgetEditorPreview,
199
- It as VueKonva,
201
+ Rt as VueKonva,
200
202
  Nr as WidgetEditorSetting,
201
203
  Qr as WidgetEditorSettingCard,
202
- nt as config,
203
- Tt as createDuxPro,
204
+ Et as config,
205
+ yt as createDuxPro,
204
206
  Rr as duxFormEditorGrid,
205
207
  $o as elementConfigs,
206
208
  re as elementRegistry,
207
- Ct as enUS,
208
- it as generateRainbowFromColor,
209
+ ht as enUS,
210
+ dt as generateRainbowFromColor,
209
211
  oe as getElementConfig,
210
212
  ee as getElementsByCategory,
211
- st as getTheme,
212
- Et as initVeeValidate,
213
- Lt as presetTheme,
214
- St as themeOverrides,
213
+ nt as getTheme,
214
+ Ct as initVeeValidate,
215
+ It as presetTheme,
216
+ Lt as themeOverrides,
215
217
  U as useAction,
216
218
  k as useActionButton,
217
219
  W as useActionDropdown,
@@ -243,6 +245,6 @@ export {
243
245
  hr as useTableColumnStatus,
244
246
  Tr as useTableColumnSwitch,
245
247
  yr as useUI,
246
- yt as useUIStore,
247
- ht as zhCN
248
+ St as useUIStore,
249
+ Tt as zhCN
248
250
  };
@@ -1,4 +1,4 @@
1
- const e = { search: "Search", empty: "No data", menu: "Menu", theme: "Theme", dark: "Dark", light: "Light", back: "Back", loading: "Loading...", success: "Success", error: "Error", unknownError: "Unknown error", preview: "Preview" }, a = { tab: { lock: "Lock", closeOther: "Close Other", closeLeft: "Close Left", closeRight: "Close Right" }, dialog: { confirm: { title: "Confirm", content: "Are you sure you want to confirm?" }, cancel: { title: "Cancel", content: "Are you sure you want to cancel?" }, success: { title: "Success", content: "Your operation has been successful" }, error: { title: "Error", content: "Your operation has been failed" }, prompt: { title: "Prompt" } }, button: { confirm: "Confirm", cancel: "Cancel", submit: "Submit", reset: "Reset", delete: "Delete", search: "Search", advanced: "Advanced", export: "Export", import: "Import", autoRefresh: "Auto Refresh", filter: "Filter", refresh: "Refresh", select: "Select", create: "Create", download: "Download", rename: "Rename", preview: "Preview" }, form: { edit: "Edit", create: "Create" }, list: { selectAll: "Select All", columnSetting: "Column Setting", selectedItems: "Selected Items: {num}", total: "Total: {total}" }, editor: { placeholder: "Please enter content" }, upload: { fileManager: "File Manager", uploadFile: "Upload File", cancel: "Cancel", delete: "Delete", error: "Upload failed", empty: "No files", desc: "Click or drag files to this area", dropHere: "Drop files here", allFormats: "Support any format files", supportFormats: "Support {formats} format files", maxSize: "Max file size: {size}MB", success: "Upload success", failed: "Upload failed", fileExtension: "{ext} file", status: { pending: "Pending", uploading: "Uploading", success: "Success", cancelled: "Cancelled", error: "Error" }, file: { name: "File Name", size: "Size", type: "Type", status: "Status" }, actions: "Actions" }, uploadManage: { title: "File Manager", all: "All", image: "Images", media: "Media", docs: "Documents", upload: "Upload", empty: "No files", emptyDesc: "No more files, please upload files", back: "Back to parent", parentLevel: "Parent Level", namePlaceholder: "Please enter name", createError: "Create failed", editError: "Edit failed", delError: "Delete failed", delTitle: "Confirm Delete", delDesc: "Are you sure you want to delete the selected files? This action cannot be undone." }, crop: { title: "Crop", select: "Select", confirm: "Confirm" }, stats: { realTimeData: "Real-time Data" }, data: { selectTitle: "Please select data" }, menu: { language: "Language", chinese: "中文", english: "English", color: "Color", primaryColor: "Primary Color", neutralColor: "Neutral Color", theme: "Theme", followSystem: "Follow System", lightMode: "Light", darkMode: "Dark", logout: "Logout" }, iconPicker: { title: "Icon Picker" }, designEditor: { layout: "Layout", all: "All", grid: { label: "Grid", title: "Grid Settings", columns: "Columns", spacing: "Spacing", columnsPlaceholder: "Enter columns", spacingPlaceholder: "Enter spacing" } }, formEditor: { config: "Component Config", options: "Option Config", data: "Data", common: { componentConfig: "Component Config", optionConfig: "Option Config", optionData: "Option Data", dataConfig: "Data Config", dataEdit: "Data Edit", label: "Label", placeholder: "Placeholder", disabled: "Disabled", clearable: "Clearable", multiple: "Multiple", defaultValue: "Default Value", readonly: "Readonly", showCount: "Show Count", prefix: "Prefix", suffix: "Suffix", status: "Status", minLength: "Min Length", maxLength: "Max Length", minValue: "Min Value", maxValue: "Max Value", minCount: "Min Count", maxCount: "Max Count", optionLabel: "Option Label", optionValue: "Option Value", labelField: "Label Field", valueField: "Value Field", dataInterface: "Data Interface", cascade: "Cascade", showPath: "Show Path", uploadUrl: "Upload URL", showAlpha: "Show Alpha", timeFormat: "Time Format", hour12: "12 Hours", dateType: "Date Type", inputType: "Input Type", formDirection: "Form Direction", leftAlign: "Left Align", topAlign: "Top Align", settingAlign: "Setting Layout", pageAlign: "Page Layout", name: "Name", desc: "Description" }, setting: { title: "Form Settings" }, validation: "Validation Rules", componentConfig: "Component Config", input: { label: "Text", types: { text: "Text", textarea: "Textarea", password: "Password" } }, inputNumber: { label: "Number" }, select: { label: "Select", configDesc: "Config options" }, radio: { label: "Radio", configDesc: "Config options" }, checkbox: { label: "Checkbox", configDesc: "Config options" }, switch: { label: "Switch" }, date: { label: "Date", placeholder: "Select date", dateType: "Date Type", date: "Date", daterange: "Date Range", datetime: "DateTime", datetimerange: "DateTime Range", month: "Month", monthrange: "Month Range", year: "Year", yearrange: "Year Range", quarter: "Quarter", quarterrange: "Quarter Range", week: "Week" }, time: { label: "Time", placeholder: "Select time", timeFormat: "Format", use12Hours: "12 Hours" }, color: { label: "Color", showAlpha: "Show Alpha" }, cascader: { label: "Cascader", desc: "Cascader options data in JSON array format", configDesc: "Config options", optionDesc: "JSON array format", optionsDescription: "Config cascader options", cascade: "Cascade", showPath: "Show Path" }, cascaderAsync: { label: "Cascader", dataApi: "Data API", apiPlaceholder: "Enter API URL", cascade: "Cascade", showPath: "Show Path" }, dynamicInput: { label: "Dynamic" }, editor: { label: "Editor", placeholder: "Enter content", uploadUrlDesc: "Editor image upload URL" }, aiEditor: { label: "Editor", uploadUrl: "Upload URL", uploadUrlFeedback: "Image upload URL" }, sider: { name: "Slider", step: "Step", min: "Min", max: "Max" }, dynamicTags: { name: "Tags", max: "Max Count" }, mentionAsync: { name: "Mention", clearable: "Clearable", path: "Data API", labelField: "Label Field", valueField: "Value Field" }, region: { name: "Region", Path: "Data API", labelField: "Label Field", valueField: "Value Field" }, selectAsync: { name: "Select", pagination: "Pagination", path: "Data API", labelField: "Label Field", valueField: "Value Field", imageField: "Image Field", descField: "Desc Field" }, transferAsync: { name: "Transfer" }, treeSelect: { name: "Tree" }, treeSelectAsync: { name: "Tree Select", path: "Data API", labelField: "Label Field", keyField: "Key Field" }, tree: { disabled: "Disabled" }, groups: { form: "Form", select: "Selector", async: "Async" }, main: { label: "Main Content", categories: { form: "Form", select: "Selector", async: "Async" }, actions: { jsonOutput: "Json Output", save: "Save" } } } }, t = { table: { exportSuccess: "Export data successfully", exportProgress: "Exporting data, please wait...", exportFailed: "Export data failed", exportSuccessContent: "Successfully exported {count} records", exportProgressContent: "Page {page} data", exportFailedContent: "Export data failed: {error}", importSuccess: "Import data successfully", importProgress: "Importing data, please wait...", importFailed: "Import data failed", importSuccessContent: "Successfully imported {count} records", importProgressContent: "{processed} / {total} records", importFailedContent: "Import data failed: {error}", saveSuccess: "Save successfully", copySuccess: "Copy successfully", copyFailed: "Copy failed" }, download: { failed: "Download failed" } }, o = { 400: { title: "400", desc: "Request error" }, 401: { title: "401", desc: "You do not have permission to access this page" }, 403: { title: "403", desc: "You do not have permission to access this page" }, 404: { title: "404", desc: "Page not found" }, 500: { title: "500", desc: "Server error" }, empty: { title: "No data", desc: "No more data, please try again later" }, loading: { title: "Loading", desc: "Data is loading, please try again later" }, login: { success: "Login success", error: "Login failed, please check your username and password", placeholder: { username: "Please enter username", password: "Please enter password" }, buttons: { login: "Login" } } }, l = { "zh-CN": "Chinese", "en-US": "English", "ja-JP": "Japanese", "ko-KR": "Korean", "ru-RU": "Russian" }, r = {
1
+ const e = { search: "Search", empty: "No data", menu: "Menu", theme: "Theme", dark: "Dark", light: "Light", back: "Back", loading: "Loading...", success: "Success", error: "Error", unknownError: "Unknown error", preview: "Preview" }, a = { tab: { lock: "Lock", closeOther: "Close Other", closeLeft: "Close Left", closeRight: "Close Right" }, dialog: { confirm: { title: "Confirm", content: "Are you sure you want to confirm?" }, cancel: { title: "Cancel", content: "Are you sure you want to cancel?" }, success: { title: "Success", content: "Your operation has been successful" }, error: { title: "Error", content: "Your operation has been failed" }, prompt: { title: "Prompt" } }, button: { confirm: "Confirm", cancel: "Cancel", submit: "Submit", reset: "Reset", delete: "Delete", search: "Search", advanced: "Advanced", export: "Export", import: "Import", autoRefresh: "Auto Refresh", filter: "Filter", refresh: "Refresh", select: "Select", create: "Create", download: "Download", rename: "Rename", preview: "Preview" }, form: { edit: "Edit", create: "Create" }, list: { selectAll: "Select All", columnSetting: "Column Setting", selectedItems: "Selected Items: {num}", total: "Total: {total}" }, editor: { placeholder: "Please enter content" }, upload: { fileManager: "File Manager", uploadFile: "Upload File", cancel: "Cancel", delete: "Delete", error: "Upload failed", empty: "No files", desc: "Click or drag files to this area", dropHere: "Drop files here", allFormats: "Support any format files", supportFormats: "Support {formats} format files", maxSize: "Max file size: {size}MB", success: "Upload success", failed: "Upload failed", fileExtension: "{ext} file", status: { pending: "Pending", uploading: "Uploading", success: "Success", cancelled: "Cancelled", error: "Error" }, file: { name: "File Name", size: "Size", type: "Type", status: "Status" }, actions: "Actions", selectUpload: { clickOrDrag: "Click to select files or drag here", selectedFiles: "Selected {count} files", multipleSupport: "Support multiple file selection", defaultDesc: "Support uploading specified file types", acceptDesc: "Only support uploading {accept} format files", maxFiles: "Max {max} files" } }, uploadManage: { title: "File Manager", all: "All", image: "Images", media: "Media", docs: "Documents", upload: "Upload", empty: "No files", emptyDesc: "No more files, please upload files", back: "Back to parent", parentLevel: "Parent Level", namePlaceholder: "Please enter name", createError: "Create failed", editError: "Edit failed", delError: "Delete failed", delTitle: "Confirm Delete", delDesc: "Are you sure you want to delete the selected files? This action cannot be undone." }, crop: { title: "Crop", select: "Select", confirm: "Confirm" }, stats: { realTimeData: "Real-time Data" }, data: { selectTitle: "Please select data" }, menu: { language: "Language", chinese: "中文", english: "English", color: "Color", primaryColor: "Primary Color", neutralColor: "Neutral Color", theme: "Theme", followSystem: "Follow System", lightMode: "Light", darkMode: "Dark", logout: "Logout" }, iconPicker: { title: "Icon Picker" }, designEditor: { layout: "Layout", all: "All", grid: { label: "Grid", title: "Grid Settings", columns: "Columns", spacing: "Spacing", columnsPlaceholder: "Enter columns", spacingPlaceholder: "Enter spacing" } }, formEditor: { config: "Component Config", options: "Option Config", data: "Data", common: { componentConfig: "Component Config", optionConfig: "Option Config", optionData: "Option Data", dataConfig: "Data Config", dataEdit: "Data Edit", label: "Label", placeholder: "Placeholder", disabled: "Disabled", clearable: "Clearable", multiple: "Multiple", defaultValue: "Default Value", readonly: "Readonly", showCount: "Show Count", prefix: "Prefix", suffix: "Suffix", status: "Status", minLength: "Min Length", maxLength: "Max Length", minValue: "Min Value", maxValue: "Max Value", minCount: "Min Count", maxCount: "Max Count", optionLabel: "Option Label", optionValue: "Option Value", labelField: "Label Field", valueField: "Value Field", dataInterface: "Data Interface", cascade: "Cascade", showPath: "Show Path", uploadUrl: "Upload URL", showAlpha: "Show Alpha", timeFormat: "Time Format", hour12: "12 Hours", dateType: "Date Type", inputType: "Input Type", formDirection: "Form Direction", leftAlign: "Left Align", topAlign: "Top Align", settingAlign: "Setting Layout", pageAlign: "Page Layout", name: "Name", desc: "Description" }, setting: { title: "Form Settings" }, validation: "Validation Rules", componentConfig: "Component Config", input: { label: "Text", types: { text: "Text", textarea: "Textarea", password: "Password" } }, inputNumber: { label: "Number" }, select: { label: "Select", configDesc: "Config options" }, radio: { label: "Radio", configDesc: "Config options" }, checkbox: { label: "Checkbox", configDesc: "Config options" }, switch: { label: "Switch" }, date: { label: "Date", placeholder: "Select date", dateType: "Date Type", date: "Date", daterange: "Date Range", datetime: "DateTime", datetimerange: "DateTime Range", month: "Month", monthrange: "Month Range", year: "Year", yearrange: "Year Range", quarter: "Quarter", quarterrange: "Quarter Range", week: "Week" }, time: { label: "Time", placeholder: "Select time", timeFormat: "Format", use12Hours: "12 Hours" }, color: { label: "Color", showAlpha: "Show Alpha" }, cascader: { label: "Cascader", desc: "Cascader options data in JSON array format", configDesc: "Config options", optionDesc: "JSON array format", optionsDescription: "Config cascader options", cascade: "Cascade", showPath: "Show Path" }, cascaderAsync: { label: "Cascader", dataApi: "Data API", apiPlaceholder: "Enter API URL", cascade: "Cascade", showPath: "Show Path" }, dynamicInput: { label: "Dynamic" }, editor: { label: "Editor", placeholder: "Enter content", uploadUrlDesc: "Editor image upload URL" }, aiEditor: { label: "Editor", uploadUrl: "Upload URL", uploadUrlFeedback: "Image upload URL" }, sider: { name: "Slider", step: "Step", min: "Min", max: "Max" }, dynamicTags: { name: "Tags", max: "Max Count" }, mentionAsync: { name: "Mention", clearable: "Clearable", path: "Data API", labelField: "Label Field", valueField: "Value Field" }, region: { name: "Region", Path: "Data API", labelField: "Label Field", valueField: "Value Field" }, selectAsync: { name: "Select", pagination: "Pagination", path: "Data API", labelField: "Label Field", valueField: "Value Field", imageField: "Image Field", descField: "Desc Field" }, transferAsync: { name: "Transfer" }, treeSelect: { name: "Tree" }, treeSelectAsync: { name: "Tree Select", path: "Data API", labelField: "Label Field", keyField: "Key Field" }, tree: { disabled: "Disabled" }, groups: { form: "Form", select: "Selector", async: "Async" }, main: { label: "Main Content", categories: { form: "Form", select: "Selector", async: "Async" }, actions: { jsonOutput: "Json Output", save: "Save" } } } }, t = { table: { exportSuccess: "Export data successfully", exportProgress: "Exporting data, please wait...", exportFailed: "Export data failed", exportSuccessContent: "Successfully exported {count} records", exportProgressContent: "Page {page} data", exportFailedContent: "Export data failed: {error}", importSuccess: "Import data successfully", importProgress: "Importing data, please wait...", importFailed: "Import data failed", importSuccessContent: "Successfully imported {count} records", importProgressContent: "{processed} / {total} records", importFailedContent: "Import data failed: {error}", saveSuccess: "Save successfully", copySuccess: "Copy successfully", copyFailed: "Copy failed" }, download: { failed: "Download failed" } }, o = { 400: { title: "400", desc: "Request error" }, 401: { title: "401", desc: "You do not have permission to access this page" }, 403: { title: "403", desc: "You do not have permission to access this page" }, 404: { title: "404", desc: "Page not found" }, 500: { title: "500", desc: "Server error" }, empty: { title: "No data", desc: "No more data, please try again later" }, loading: { title: "Loading", desc: "Data is loading, please try again later" }, login: { success: "Login success", error: "Login failed, please check your username and password", placeholder: { username: "Please enter username", password: "Please enter password" }, buttons: { login: "Login" } } }, l = { "zh-CN": "Chinese", "en-US": "English", "ja-JP": "Japanese", "ko-KR": "Korean", "ru-RU": "Russian" }, i = {
2
2
  common: e,
3
3
  components: a,
4
4
  hooks: t,
@@ -8,7 +8,7 @@ const e = { search: "Search", empty: "No data", menu: "Menu", theme: "Theme", da
8
8
  export {
9
9
  e as common,
10
10
  a as components,
11
- r as default,
11
+ i as default,
12
12
  t as hooks,
13
13
  l as locale,
14
14
  o as pages
@@ -1,4 +1,4 @@
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} 条" }, 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: "操作" }, 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: "异步" }, 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": "Русский" }, s = {
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} 条" }, 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: "异步" }, 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": "Русский" }, s = {
2
2
  common: e,
3
3
  components: t,
4
4
  hooks: a,
@@ -1,15 +1,14 @@
1
1
  import { defineComponent as t, createVNode as o } from "vue";
2
- import { useRouter as u, RouterView as r } from "vue-router";
3
- import { DuxGlobalLayout as l } from "./layout/global.js";
4
- const p = /* @__PURE__ */ t({
2
+ import { RouterView as e } from "vue-router";
3
+ import { DuxGlobalLayout as u } from "./layout/global.js";
4
+ const m = /* @__PURE__ */ t({
5
5
  name: "DuxLayout",
6
6
  setup() {
7
- const e = u();
8
- return console.log(e.getRoutes()), () => o(l, null, {
9
- default: () => [o(r, null, null)]
7
+ return () => o(u, null, {
8
+ default: () => [o(e, null, null)]
10
9
  });
11
10
  }
12
11
  });
13
12
  export {
14
- p as DuxLayout
13
+ m as DuxLayout
15
14
  };
@@ -1,5 +1,5 @@
1
1
  const r = `/* layer: properties */
2
- @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*, ::before, ::after, ::backdrop{--un-from-opacity:100%;--un-text-opacity:100%;--un-bg-opacity:100%;--un-divide-y-reverse:initial;--un-border-style:solid;--un-divide-x-reverse:initial;--un-divide-opacity:100%;--un-shadow-opacity:100%;--un-border-opacity:100%;--un-ease:initial;--un-translate-x:initial;--un-translate-y:initial;--un-translate-z:initial;--un-to-opacity:100%;--un-fill-opacity:100%;--un-outline-style:solid;}}
2
+ @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*, ::before, ::after, ::backdrop{--un-from-opacity:100%;--un-text-opacity:100%;--un-bg-opacity:100%;--un-divide-y-reverse:initial;--un-border-style:solid;--un-divide-x-reverse:initial;--un-divide-opacity:100%;--un-shadow-opacity:100%;--un-ease:initial;--un-translate-x:initial;--un-translate-y:initial;--un-translate-z:initial;--un-border-opacity:100%;--un-to-opacity:100%;--un-fill-opacity:100%;--un-outline-style:solid;}}
3
3
  @property --un-text-opacity{syntax:"<percentage>";inherits:false;initial-value:100%;}
4
4
  @property --un-outline-style{syntax:"*";inherits:false;initial-value:solid;}
5
5
  @property --un-border-opacity{syntax:"<percentage>";inherits:false;initial-value:100%;}
@@ -1237,6 +1237,7 @@ input:where([type='button'], [type='reset'], [type='submit']),
1237
1237
  .min-w-0{min-width:calc(var(--spacing) * 0);}
1238
1238
  .min-w-110{min-width:calc(var(--spacing) * 110);}
1239
1239
  .min-w-60{min-width:calc(var(--spacing) * 60);}
1240
+ .w-12{width:calc(var(--spacing) * 12);}
1240
1241
  .w-120{width:calc(var(--spacing) * 120);}
1241
1242
  .w-120px{width:120px;}
1242
1243
  .w-15{width:calc(var(--spacing) * 15);}
@@ -1289,6 +1290,7 @@ input:where([type='button'], [type='reset'], [type='submit']),
1289
1290
  .transform{transform:var(--un-rotate-x) var(--un-rotate-y) var(--un-rotate-z) var(--un-skew-x) var(--un-skew-y);}
1290
1291
  .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--un-gradient-from,--un-gradient-via,--un-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}
1291
1292
  .transition-all{transition-property:all;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}
1293
+ .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--un-gradient-from,--un-gradient-via,--un-gradient-to;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}
1292
1294
  .transition-opacity{transition-property:opacity;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}
1293
1295
  .duration-150{--un-duration:150ms;transition-duration:150ms;}
1294
1296
  .duration-200{--un-duration:200ms;transition-duration:200ms;}
@@ -2,3 +2,4 @@ export * from './file';
2
2
  export * from './image';
3
3
  export * from './manager';
4
4
  export { default as DuxFileManage } from './manager';
5
+ export * from './selectFile';
@@ -0,0 +1,23 @@
1
+ import type { PropType } from 'vue';
2
+ export declare const DuxSelectUpload: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
3
+ maxNum: NumberConstructor;
4
+ multiple: BooleanConstructor;
5
+ value: (StringConstructor | ObjectConstructor | ArrayConstructor)[];
6
+ onUpdateValue: PropType<(value?: string | File | File[]) => void>;
7
+ accept: {
8
+ type: StringConstructor;
9
+ default: string;
10
+ };
11
+ }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
12
+ maxNum: NumberConstructor;
13
+ multiple: BooleanConstructor;
14
+ value: (StringConstructor | ObjectConstructor | ArrayConstructor)[];
15
+ onUpdateValue: PropType<(value?: string | File | File[]) => void>;
16
+ accept: {
17
+ type: StringConstructor;
18
+ default: string;
19
+ };
20
+ }>> & Readonly<{}>, {
21
+ multiple: boolean;
22
+ accept: string;
23
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@duxweb/dvha-pro",
3
3
  "type": "module",
4
- "version": "1.0.30",
4
+ "version": "1.0.31",
5
5
  "author": "DuxWeb",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -33,8 +33,8 @@
33
33
  ],
34
34
  "dependencies": {
35
35
  "@ant-design/colors": "^7.2.1",
36
- "@duxweb/dvha-core": "^1.0.30",
37
- "@duxweb/dvha-naiveui": "^1.0.30",
36
+ "@duxweb/dvha-core": "^1.0.31",
37
+ "@duxweb/dvha-naiveui": "^1.0.31",
38
38
  "@iconify-json/tabler": "^1.2.18",
39
39
  "@overlastic/vue": "^0.8.1",
40
40
  "@tanstack/vue-query": "^5.80.7",