cnhis-design-vue 3.1.44-release.0 → 3.1.44-release.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +87 -87
  2. package/es/components/base-search/style/index.css +1 -1
  3. package/es/components/classification/index.d.ts +4 -2
  4. package/es/components/classification/src/components/search-filter/index.vue.d.ts +4 -2
  5. package/es/components/classification/src/components/set-classification/index.vue.d.ts +4 -2
  6. package/es/components/classification/src/index.vue.d.ts +4 -2
  7. package/es/components/fabric-chart/src/hooks/useBirthProcessChart.js +1 -1
  8. package/es/components/fabric-chart/src/hooks/useBottom.js +1 -1
  9. package/es/components/fabric-chart/src/hooks/useDraw.d.ts +1 -0
  10. package/es/components/fabric-chart/src/hooks/useDraw.js +1 -1
  11. package/es/components/fabric-chart/src/hooks/useGrid.js +1 -1
  12. package/es/components/fabric-chart/src/hooks/useLeft.js +1 -1
  13. package/es/components/fabric-chart/src/hooks/useRight.js +1 -1
  14. package/es/components/fabric-chart/src/hooks/useTemperatureChart.js +1 -1
  15. package/es/components/fabric-chart/src/hooks/useTop.d.ts +1 -1
  16. package/es/components/fabric-chart/src/hooks/useTop.js +1 -1
  17. package/es/components/form-render/src/components/renderer/levelSearchCascader.js +1 -1
  18. package/es/components/form-render/style/index.css +1 -1
  19. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/inputRendererPlugin.js +1 -1
  20. package/es/components/index.css +1 -1
  21. package/es/components/quick-search/style/index.css +1 -1
  22. package/es/components/scale-view/src/ScaleView.vue.js +1 -1
  23. package/es/components/search-cascader/src/components/SearchMenu.js +1 -1
  24. package/es/components/search-cascader/style/index.css +1 -1
  25. package/es/components/select-label/src/LabelFormContent.vue.js +1 -1
  26. package/es/components/select-person/src/SearchMultiple.vue.d.ts +6 -0
  27. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.d.ts +4 -2
  28. package/es/components/table-filter/src/components/classify-filter/index.vue.d.ts +4 -2
  29. package/es/components/table-filter/src/components/render-widget/basicData.js +1 -1
  30. package/es/components/table-filter/src/components/render-widget/components/{DateRange.vue.d.ts → DateRangeInner.vue.d.ts} +1 -14
  31. package/es/components/table-filter/src/components/render-widget/components/DateRangeInner.vue.js +1 -0
  32. package/es/components/table-filter/src/components/render-widget/components/DateRangeOut.vue.d.ts +141 -0
  33. package/es/components/table-filter/src/components/render-widget/components/DateRangeOut.vue.js +1 -0
  34. package/es/components/table-filter/src/components/render-widget/components/index.d.ts +3 -2
  35. package/es/components/table-filter/src/components/render-widget/components/index.js +1 -1
  36. package/es/components/table-filter/src/components/render-widget/enums.d.ts +28 -7
  37. package/es/components/table-filter/src/components/render-widget/enums.js +1 -1
  38. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.d.ts +1 -0
  39. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.js +1 -1
  40. package/es/components/table-filter/src/components/render-widget/index.vue.js +1 -1
  41. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +152 -14
  42. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.js +1 -1
  43. package/es/components/table-filter/src/hooks/useAdvanced.js +1 -1
  44. package/es/components/table-filter/src/hooks/useRenderWidget.js +1 -1
  45. package/es/components/table-filter/src/types/enums.d.ts +4 -2
  46. package/es/components/table-filter/src/types/enums.js +1 -1
  47. package/es/env.d.ts +25 -25
  48. package/es/shared/package.json.js +1 -1
  49. package/package.json +2 -2
  50. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  51. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
  52. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
  53. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
  54. package/es/components/fabric-chart/src/utils/index.d.ts +0 -6823
  55. package/es/components/table-filter/src/components/render-widget/components/DateRange.vue.js +0 -1
  56. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
  57. package/es/shared/utils/tapable/index.d.ts +0 -139
@@ -1 +1 @@
1
- import{defineComponent as e,reactive as t,ref as a,watch as o,nextTick as i,openBlock as l,createElementBlock as n,createCommentVNode as s,Fragment as r,unref as u,createBlock as c,mergeProps as p,createElementVNode as d,normalizeClass as m,normalizeStyle as v,createVNode as f,withCtx as g,renderList as y,toDisplayString as b,createTextVNode as k,resolveDynamicComponent as C,h as S}from"vue";import h from"./hooks/use-noData.js";import{getScaleViewState as w}from"./hooks/scaleview-state.js";import{ScaleViewComputed as E}from"./hooks/scaleview-computed.js";import{ScaleViewInit as _}from"./hooks/scaleview-init.js";import{ScaleViewSubmit as A}from"./hooks/scaleview-submit.js";import{handleQueryParams as O,isCollection as j,isEvaluation as T}from"./utils/judge-types.js";import{useEvent as L}from"./hooks/use-event.js";import P from"./components/NoData.vue.js";import D from"./components/EvaluateCountdown.vue.js";import F from"./components/EvaluatePage.vue.js";import B from"./components/AnswerParse.vue.js";import N from"./components/ScaleScore.js";import{useDialog as x,useMessage as I,NForm as q,NFormItem as M,NButton as R}from"naive-ui";import K from"../../../_virtual/plugin-vue_export-helper.js";const V={class:"c-scale-view-block"},H=["innerHTML"],U={key:0,class:"required-text"},W={key:1,class:"evalute-label"},J=["onClick"],Y=d("i",{class:"scale-view-iconfont icon-scale-view-dengpao"},null,-1),X={key:1,class:"footer"};var G=K(e({__name:"ScaleView",props:{guageData:{type:Object,default:()=>({})},styleSetting:{type:Object,default:()=>({})},ids:{type:Object,default:()=>({guage_id:"",db_id:void 0})},params:{default:()=>({}),type:Object},noBtn:{type:[Boolean,String,Number],default:!1},hideBtn:{type:[Boolean,String,Number],default:!1},isLock:{type:[Boolean,String,Number],default:!1},type:{type:String,default:""},openType:{type:String,default:""},scaleApiConfig:{type:Object,default:()=>({})},getSelectOptions:{type:Function,default:()=>Promise.resolve([])},getSearchOptions:{type:Function,default:()=>Promise.resolve([])},getCascadeOptions:{type:Function,default:()=>Promise.resolve([])},getLabelList:{type:Function,default:()=>Promise.resolve([])},deleteLabel:{type:Function,default:()=>Promise.resolve({status:!0})},saveLabelItem:{type:Function,default:()=>Promise.resolve({status:!0})},uploadPictureUrl:{type:String,default:""},uploadFileUrl:{type:String,default:""},ak:{type:String,default:"KP3BZ-OAC3W-PY6RY-OJ6DV-JYKN3-H6F72"},sourceType:{type:String,default:""},getChunkUploadConfig:{type:Function,default:()=>Promise.resolve({})}},emits:["onCloseSetting","submitNoRequest","onSubmit","startWriteScale"],setup(e,{expose:K,emit:G}){const Q=e,{ScaleViewState:Z}=w(),$=t(Z),z=x(),ee=I(),te=a(null),ae=a(null),{noDataState:oe,setNoData:ie,resetNodata:le}=h(),ne=O(),{showEvatip:se,isFormBoldOpen:re,scaleStyle:ue,handlePageClass:ce,isShowItem:pe,handleShowQuestionNumber:de,hasScore:me,isPreviewScale:ve,showEvaluateEntry:fe,showEvaluateCoundownPage:ge,showSaveBtn:ye,showEvaluateLabel:be,showAnswerParse:ke,propsConfig:Ce,evaluatePageProps:Se,evaluateCountdownProps:he,skipCover:we,scaleEdit:Ee}=E(Q,$,{query:ne}),{initForm:_e}=_(Q,$,G,{query:ne}),{submitMethod:Ae}=A(Q,$,G,{query:ne}),{nextLogicEvent:Oe,handleDynamicDataRelation:je}=L(Q,$);(()=>{let{id:e}=ne;e&&($.shareId=e)})();const Te=e=>{try{le(),_e(e)}catch(e){console.log(e,"--error"),$.spinning=!1,$.hasFrontAddress=!1,ie(!0,null==e?void 0:e.resultMsg,null==e?void 0:e.result)}};o((()=>Q.ids),((e,t)=>{t?e.guage_id&&e.guage_id!=t.guage_id&&Te(e):e.guage_id&&Te(e)}),{immediate:!0}),o((()=>Q.guageData),(e=>{if(!e||!Object.keys(e||{}).length)return;$.form={},$.formArray=[];const t=JSON.parse(JSON.stringify(e));i((()=>{_e(t)}))}),{immediate:!0});const Le=e=>{$.showEvaluateSettingWrap=!1,$.showEvaluateCountdown=!!e,G("startWriteScale")},Pe=()=>{console.log("----closeEvaluateCountdown"),$.showEvaluateCountdown=!1,ve.value||($.banSubmit=!0,Ae(),z.warning({title:"温馨提示",content:"测评时间到了,结束测评!",maskClosable:!1,positiveText:"确定",onPositiveClick:()=>({})}))},De=e=>{z.warning({title:"提示",content:()=>S("div",{class:"evatip-container"},[S("span","答案解析:"),S("p",e)]),class:"c-evatip-dialog-wrap",showIcon:!1,positiveText:"确定",negativeText:"关闭",maskClosable:!1,onPositiveClick(){},onNegativeClick(){}})},Fe=(e,t,a)=>{console.log(e,"--val");let{choiceObj:o,isSetObj:i}=a||{};switch(t.type.includes("SELECT")||($.form[t.val_key]=e),t.type){case"SELECT":case"EVALUATE_SELECT":{let{value:a,list:o=[]}=e;$.form[t.val_key]=a,Oe(e,t,$.formArray),je(o,t,$.formArray)}break;case"RADIO_BLOCK":case"CHECKBOX_BLOCK":i&&($.choiceComObj[t.val_key]=o),Oe(e,t,$.formArray);break;case"EVALUATE_RADIO_BLOCK":case"EVALUATE_CHECKBOX_BLOCK":Oe(e,t,$.formArray);break;case"DATE":case"TIME":case"DATETIME":case"SEARCH_CASCADE":$.submitForm[t.val_key]=e}},Be=(e,t)=>{console.log(t),$.form[t.val_key]=e},Ne=e=>{if(!e||!e.length)return{labelStr:"",labels:[]};const t=e||[],a=[],o=[];return t.forEach((e=>{o.push(e),a.push(e.labelName)})),$.labelSelectedList=t,{labelStr:a.join(","),labels:o}},xe=()=>{var e;if(!$.formArray.find((e=>T(e.type))))return void Ie("确认要提交吗?");let{evaluateResultSetting:t}=$.config;if(!t||!Object.keys(t).length&&!fe.value||Ee.value)return void Ie("确认要结束测评吗?");if("formIframe"==Q.openType&&fe.value)return void G("submitNoRequest");let a="确定要提前结束测评吗?";if(ge.value&&(null==(e=te.value)?void 0:e.getCountdownObj)){const e=te.value.getCountdownObj(),{setAnswered:t,totalLen:o}=e;t<o?a="存在未作答的题目,确定要提前结束测评吗?":!(null==$?void 0:$.showEvaluateCountdown)&&(a="确认要结束测评吗?")}Ie(a)},Ie=e=>{z.warning({title:"温馨提示",content:()=>S("div",{style:{paddingLeft:"30px"}},e),positiveText:"确定",negativeText:"取消",maskClosable:!1,closable:!1,positiveButtonProps:{type:"primary"},onPositiveClick:async()=>{const e=await qe();G("onSubmit",e)},onNegativeClick(){}})},qe=()=>new Promise(((e,t)=>{var a;null==(a=ae.value)||a.validate((t=>{var a;if(t){console.log(t);let o=(null==(a=t[0])?void 0:a[0])||{},i=o.field,l=o.message,n=$.formArray.find((e=>e.databaseTitle===i));return n&&(i=n.title),ee.error(i+l),e(!1),!1}{const t=Ae();e(t)}}))})),Me=()=>{G("onCloseSetting")};return K({getScaleData:()=>({...$}),onSubmitForm:qe,cancel:Me}),(e,t)=>(l(),n("div",V,[s(' <template v-if="state.spinning">\n <n-spin :show="state.spinning" description="加载中"></n-spin>\n </template> '),$.spinning||$.hasFrontAddress?s("v-if",!0):(l(),n(r,{key:0},[u(oe).noData?(l(),c(P,{key:0,noDataImg:u(oe).noDataImg,noDataTip:u(oe).noDataTip},null,8,["noDataImg","noDataTip"])):(l(),n(r,{key:1},[u(fe)&&!u(we)?(l(),c(F,p({key:0},u(Se),{onWriteGuage:Le}),null,16)):(l(),n(r,{key:1},[u(ge)?(l(),c(D,p({key:0,ref_key:"countdownDom",ref:te},u(he),{onCloseEvaluateCountdown:Pe}),null,16)):s("v-if",!0),d("div",{class:m(["scale-container",{"scale-container-nopadding":u(ce),"scale-container-hasfooter":u(ye)}]),style:v(u(ue))},[u(me)?(l(),c(u(N),{key:0,config:$.config,maxScore:$.maxScore},null,8,["config","maxScore"])):s("v-if",!0),f(u(q),{ref_key:"formRef",ref:ae,model:$.form,rules:$.rules,"require-mark-placement":"left",class:"main"},{default:g((()=>[(l(!0),n(r,null,y($.formArray,((e,t)=>(l(),n(r,{key:(e.id||e.seq)+t},[u(pe)(e)?(l(),c(u(M),{key:0,path:e.val_key,"show-label":!u(j)(e.type),class:"c-scle-form-item"},{label:g((()=>[d("span",{class:m({"scale-label-required":u(re)(e)}),innerHTML:u(de)(e)},null,10,H),u(re)(e)?(l(),n("span",U,"(必填)")):s("v-if",!0),u(be)(e)?(l(),n("span",W,b(u(be)(e)),1)):s("v-if",!0),u(se)(e)?(l(),n("span",{key:2,class:"evalute-tip",onClick:t=>(async e=>{var t;if($.evatipMap[e.id])return void De($.evatipMap[e.id]);let a="getSubjectAnswer";const o=(null==(t=Q.scaleApiConfig)?void 0:t[a])||null;if(!o||"function"!=typeof o)return void ee.error(`${a} Is not a function`);let i=await o(e.id);i&&($.evatipMap[e.id]||($.evatipMap[e.id]=i,De(i)))})(e)},[Y,k(" 查看提示 ")],8,J)):s("v-if",!0)])),default:g((()=>[(l(),c(C(e.renderCom),p(u(Ce)(e,t),{key:(e.id||e.seq)+t,onScaleChange:Fe,onOnChange:t=>((e,t)=>{$.form[t.val_key]=Ne(e)})(t,e),onVodFileList:Be}),null,16,["onOnChange"])),u(ke)(e)?(l(),c(B,{key:0,item:e},null,8,["item"])):s("v-if",!0)])),_:2},1032,["path","show-label"])):s("v-if",!0)],64)))),128))])),_:1},8,["model","rules"])],6),u(ye)?(l(),n("div",X,[s(" 分享的链接 隐藏取消按钮 "),"guage"!==Q.sourceType?(l(),c(u(R),{key:0,onClick:Me},{default:g((()=>[k("取消")])),_:1})):s("v-if",!0),Q.isLock?s("v-if",!0):(l(),c(u(R),{key:1,onClick:xe,disabled:$.banSubmit,type:"primary"},{default:g((()=>[k("保存")])),_:1},8,["disabled"]))])):s("v-if",!0)],64))],64))],64))]))}}),[["__file","ScaleView.vue"]]);export{G as default};
1
+ import{defineComponent as e,reactive as t,ref as a,watch as o,nextTick as i,openBlock as l,createElementBlock as n,createCommentVNode as s,Fragment as r,unref as u,createBlock as c,mergeProps as p,createElementVNode as d,normalizeClass as m,normalizeStyle as v,createVNode as f,withCtx as g,renderList as y,toDisplayString as b,createTextVNode as k,resolveDynamicComponent as C,h as S}from"vue";import h from"./hooks/use-noData.js";import{getScaleViewState as w}from"./hooks/scaleview-state.js";import{ScaleViewComputed as E}from"./hooks/scaleview-computed.js";import{ScaleViewInit as _}from"./hooks/scaleview-init.js";import{ScaleViewSubmit as A}from"./hooks/scaleview-submit.js";import{handleQueryParams as O,isCollection as j,isEvaluation as T}from"./utils/judge-types.js";import{useEvent as L}from"./hooks/use-event.js";import P from"./components/NoData.vue.js";import D from"./components/EvaluateCountdown.vue.js";import F from"./components/EvaluatePage.vue.js";import B from"./components/AnswerParse.vue.js";import N from"./components/ScaleScore.js";import{useDialog as x,useMessage as I,NForm as q,NFormItem as M,NButton as R}from"naive-ui";import K from"../../../_virtual/plugin-vue_export-helper.js";const V={class:"c-scale-view-block"},H=["innerHTML"],U={key:0,class:"required-text"},W={key:1,class:"evalute-label"},J=["onClick"],Y=d("i",{class:"scale-view-iconfont icon-scale-view-dengpao"},null,-1),X={key:1,class:"footer"};var G=K(e({__name:"ScaleView",props:{guageData:{type:Object,default:()=>({})},styleSetting:{type:Object,default:()=>({})},ids:{type:Object,default:()=>({guage_id:"",db_id:void 0})},params:{default:()=>({}),type:Object},noBtn:{type:[Boolean,String,Number],default:!1},hideBtn:{type:[Boolean,String,Number],default:!1},isLock:{type:[Boolean,String,Number],default:!1},type:{type:String,default:""},openType:{type:String,default:""},scaleApiConfig:{type:Object,default:()=>({})},getSelectOptions:{type:Function,default:()=>Promise.resolve([])},getSearchOptions:{type:Function,default:()=>Promise.resolve([])},getCascadeOptions:{type:Function,default:()=>Promise.resolve([])},getLabelList:{type:Function,default:()=>Promise.resolve([])},deleteLabel:{type:Function,default:()=>Promise.resolve({status:!0})},saveLabelItem:{type:Function,default:()=>Promise.resolve({status:!0})},uploadPictureUrl:{type:String,default:""},uploadFileUrl:{type:String,default:""},ak:{type:String,default:"KP3BZ-OAC3W-PY6RY-OJ6DV-JYKN3-H6F72"},sourceType:{type:String,default:""},getChunkUploadConfig:{type:Function,default:()=>Promise.resolve({})}},emits:["onCloseSetting","submitNoRequest","onSubmit","startWriteScale"],setup(e,{expose:K,emit:G}){const Q=e,{ScaleViewState:Z}=w(),$=t(Z),z=x(),ee=I(),te=a(null),ae=a(null),{noDataState:oe,setNoData:ie,resetNodata:le}=h(),ne=O(),{showEvatip:se,isFormBoldOpen:re,scaleStyle:ue,handlePageClass:ce,isShowItem:pe,handleShowQuestionNumber:de,hasScore:me,isPreviewScale:ve,showEvaluateEntry:fe,showEvaluateCoundownPage:ge,showSaveBtn:ye,showEvaluateLabel:be,showAnswerParse:ke,propsConfig:Ce,evaluatePageProps:Se,evaluateCountdownProps:he,skipCover:we,scaleEdit:Ee}=E(Q,$,{query:ne}),{initForm:_e}=_(Q,$,G,{query:ne}),{submitMethod:Ae}=A(Q,$,G,{query:ne}),{nextLogicEvent:Oe,handleDynamicDataRelation:je}=L(Q,$);(()=>{let{id:e}=ne;e&&($.shareId=e)})();const Te=e=>{try{le(),_e(e)}catch(e){console.log(e,"--error"),$.spinning=!1,$.hasFrontAddress=!1,ie(!0,null==e?void 0:e.resultMsg,null==e?void 0:e.result)}};o((()=>Q.ids),((e,t)=>{t?e.guage_id&&e.guage_id!=t.guage_id&&Te(e):e.guage_id&&Te(e)}),{immediate:!0}),o((()=>Q.guageData),(e=>{if(!e||!Object.keys(e||{}).length)return;$.form={},$.formArray=[];const t=JSON.parse(JSON.stringify(e));i((()=>{_e(t)}))}),{immediate:!0});const Le=e=>{$.showEvaluateSettingWrap=!1,$.showEvaluateCountdown=!!e,G("startWriteScale")},Pe=()=>{console.log("----closeEvaluateCountdown"),$.showEvaluateCountdown=!1,ve.value||($.banSubmit=!0,Ae(),z.warning({title:"温馨提示",content:"测评时间到了,结束测评!",maskClosable:!1,positiveText:"确定",onPositiveClick:()=>({})}))},De=e=>{z.warning({title:"提示",content:()=>S("div",{class:"evatip-container"},[S("span","答案解析:"),S("p",e)]),class:"c-evatip-dialog-wrap",showIcon:!1,positiveText:"确定",negativeText:"关闭",maskClosable:!1,onPositiveClick(){},onNegativeClick(){}})},Fe=(e,t,a)=>{console.log(e,"--val");let{choiceObj:o,isSetObj:i}=a||{};switch(t.type.includes("SELECT")||($.form[t.val_key]=e),t.type){case"SELECT":case"EVALUATE_SELECT":{let{value:a,list:o=[]}=e;$.form[t.val_key]=a,Oe(e,t,$.formArray),je(o,t,$.formArray)}break;case"RADIO_BLOCK":case"CHECKBOX_BLOCK":i&&($.choiceComObj[t.val_key]=o),Oe(e,t,$.formArray);break;case"EVALUATE_RADIO_BLOCK":case"EVALUATE_CHECKBOX_BLOCK":Oe(e,t,$.formArray);break;case"DATE":case"TIME":case"DATETIME":case"SEARCH_CASCADE":$.submitForm[t.val_key]=e}},Be=(e,t)=>{console.log(t),$.form[t.val_key]=e},Ne=e=>{if(!e||!e.length)return{labelStr:"",labels:[]};const t=e||[],a=[],o=[];return t.forEach((e=>{o.push(e),a.push(e.labelName)})),$.labelSelectedList=t,{labelStr:a.join(","),labels:o}},xe=()=>{var e;if(!$.formArray.find((e=>T(e.type))))return void Ie("确认要提交吗?");let{evaluateResultSetting:t}=$.config;if(!t||!Object.keys(t).length&&!fe.value||Ee.value)return void Ie("确认要结束测评吗?");if("formIframe"==Q.openType&&fe.value)return void G("submitNoRequest");let a="确定要提前结束测评吗?";if(ge.value&&(null==(e=te.value)?void 0:e.getCountdownObj)){const e=te.value.getCountdownObj(),{setAnswered:t,totalLen:o}=e;t<o?a="存在未作答的题目,确定要提前结束测评吗?":!(null==$?void 0:$.showEvaluateCountdown)&&(a="确认要结束测评吗?")}Ie(a)},Ie=e=>{z.warning({title:"温馨提示",content:()=>S("div",{style:{paddingLeft:"30px"}},e),positiveText:"确定",negativeText:"取消",maskClosable:!1,closable:!1,positiveButtonProps:{type:"primary"},onPositiveClick:async()=>{const e=await qe();G("onSubmit",e)},onNegativeClick(){}})},qe=()=>new Promise(((e,t)=>{var a;null==(a=ae.value)||a.validate((t=>{var a;if(t){console.log(t);let o=(null==(a=t[0])?void 0:a[0])||{},i=o.field,l=o.message,n=$.formArray.find((e=>e.databaseTitle===i));return n&&(i=n.title),ee.error(i+l),e(!1),!1}{const t=Ae();e(t)}}))})),Me=()=>{G("onCloseSetting")};return K({getScaleData:()=>({...$}),onSubmitForm:qe,cancel:Me}),(e,t)=>(l(),n("div",V,[s(' <template v-if="state.spinning">\r\n <n-spin :show="state.spinning" description="加载中"></n-spin>\r\n </template> '),$.spinning||$.hasFrontAddress?s("v-if",!0):(l(),n(r,{key:0},[u(oe).noData?(l(),c(P,{key:0,noDataImg:u(oe).noDataImg,noDataTip:u(oe).noDataTip},null,8,["noDataImg","noDataTip"])):(l(),n(r,{key:1},[u(fe)&&!u(we)?(l(),c(F,p({key:0},u(Se),{onWriteGuage:Le}),null,16)):(l(),n(r,{key:1},[u(ge)?(l(),c(D,p({key:0,ref_key:"countdownDom",ref:te},u(he),{onCloseEvaluateCountdown:Pe}),null,16)):s("v-if",!0),d("div",{class:m(["scale-container",{"scale-container-nopadding":u(ce),"scale-container-hasfooter":u(ye)}]),style:v(u(ue))},[u(me)?(l(),c(u(N),{key:0,config:$.config,maxScore:$.maxScore},null,8,["config","maxScore"])):s("v-if",!0),f(u(q),{ref_key:"formRef",ref:ae,model:$.form,rules:$.rules,"require-mark-placement":"left",class:"main"},{default:g((()=>[(l(!0),n(r,null,y($.formArray,((e,t)=>(l(),n(r,{key:(e.id||e.seq)+t},[u(pe)(e)?(l(),c(u(M),{key:0,path:e.val_key,"show-label":!u(j)(e.type),class:"c-scle-form-item"},{label:g((()=>[d("span",{class:m({"scale-label-required":u(re)(e)}),innerHTML:u(de)(e)},null,10,H),u(re)(e)?(l(),n("span",U,"(必填)")):s("v-if",!0),u(be)(e)?(l(),n("span",W,b(u(be)(e)),1)):s("v-if",!0),u(se)(e)?(l(),n("span",{key:2,class:"evalute-tip",onClick:t=>(async e=>{var t;if($.evatipMap[e.id])return void De($.evatipMap[e.id]);let a="getSubjectAnswer";const o=(null==(t=Q.scaleApiConfig)?void 0:t[a])||null;if(!o||"function"!=typeof o)return void ee.error(`${a} Is not a function`);let i=await o(e.id);i&&($.evatipMap[e.id]||($.evatipMap[e.id]=i,De(i)))})(e)},[Y,k(" 查看提示 ")],8,J)):s("v-if",!0)])),default:g((()=>[(l(),c(C(e.renderCom),p(u(Ce)(e,t),{key:(e.id||e.seq)+t,onScaleChange:Fe,onOnChange:t=>((e,t)=>{$.form[t.val_key]=Ne(e)})(t,e),onVodFileList:Be}),null,16,["onOnChange"])),u(ke)(e)?(l(),c(B,{key:0,item:e},null,8,["item"])):s("v-if",!0)])),_:2},1032,["path","show-label"])):s("v-if",!0)],64)))),128))])),_:1},8,["model","rules"])],6),u(ye)?(l(),n("div",X,[s(" 分享的链接 隐藏取消按钮 "),"guage"!==Q.sourceType?(l(),c(u(R),{key:0,onClick:Me},{default:g((()=>[k("取消")])),_:1})):s("v-if",!0),Q.isLock?s("v-if",!0):(l(),c(u(R),{key:1,onClick:xe,disabled:$.banSubmit,type:"primary"},{default:g((()=>[k("保存")])),_:1},8,["disabled"]))])):s("v-if",!0)],64))],64))],64))]))}}),[["__file","ScaleView.vue"]]);export{G as default};
@@ -1 +1 @@
1
- import{defineComponent as e,computed as r,inject as t,createVNode as o,withModifiers as n,ref as a,createTextVNode as l}from"vue";import{traverse as c}from"../../../../shared/utils/index.js";import{Reload as s,ChevronForward as u}from"@vicons/ionicons5";import{NOOP as i}from"@vue/shared";import{useVirtualList as d}from"@vueuse/core";import{isNumber as p,isArray as f,isEqual as v,isString as y,isFunction as h}from"lodash-es";import{NCheckbox as m}from"naive-ui";import{InjectionSearchCascaderLoadingNode as g,InjectionSearchCascaderValue as N,InjectionSearchCascaderCheckAbleLevel as C,InjectionKeyboardEventBus as b}from"../constants/index.js";const k=e({props:{options:{type:Array,default:()=>[]},activeNodes:{type:Array,default:()=>[]},level:{type:Number,required:!0},labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"},cursorNode:{type:Object,default:()=>({})}},emits:["nodeClick","changeCursor"],setup(e,{emit:a}){const l=r((()=>e.options)),{list:c,containerProps:h,wrapperProps:k}=d(l,{itemHeight:32,overscan:5}),K=t(g),_=t(N),x=t(C),A=t(b),S=r((()=>p(x.value)&&x.value<=e.level));function j(e){return Object.keys(e).length<=0}function w(r){return e.cursorNode==r}function I(r){const t=function(e){const r=[e];let t=e;for(;t.parent;)t=t.parent,r.unshift(t);return r}(r);if(f(_.value))return v(o(t,e.valueKey),o(_.value,e.valueKey));if(y(_.value)){const r=_.value.split("/").map((e=>e.trim()));return v(r,o(t,e.labelKey))}return!1;function o(e,r){return e.map((e=>e[r]))}}function O(e){const r=h.ref.value;if(r){const t=32*e-(null==r?void 0:r.clientHeight);r.scrollTo(0,t>0?t:0)}}return A.on((function(r){function t(){return S.value?a("nodeClick",{type:"update",node:e.cursorNode}):a("nodeClick",{type:"search",node:e.cursorNode})}if("ArrowUp"===r){if(j(e.cursorNode))return;const r=l.value.findIndex((r=>r===e.cursorNode));if(r>=0){const e=0===r?l.value.length-1:r-1,t=l.value[e];a("changeCursor",t),O(e+3)}}if("ArrowRight"===r){if(j(e.cursorNode))return;a("nodeClick",{type:"search",node:e.cursorNode}),a("changeCursor",{})}if("ArrowDown"===r){if(j(e.cursorNode))return a("changeCursor",l.value[0]);const r=l.value.findIndex((r=>r===e.cursorNode));if(r>=0){const e=r>=l.value.length-1?0:r+1,t=l.value[e];a("changeCursor",t),O(e+1)}}if("ArrowLeft"===r&&e.activeNodes.length){const r=e.activeNodes.slice(-1);a("changeCursor",r[0])}" "===r&&t(),"Enter"===r&&t()})),()=>o("div",{class:"search-cascader__optionWrapper",ref:h.ref,style:h.style,onScroll:h.onScroll},[o("div",{style:k.value.style},[c.value.map((r=>{return o("div",{class:["search-cascader__option",{"search-cascader__option--active":(t=r.data,(null==(l=e.activeNodes)?void 0:l.includes(t))||w(r.data))}],onClick:()=>a("nodeClick",{type:"search",node:r.data}),title:r.data[e.labelKey]},[o("div",{class:"search-cascader__optionText"},[S.value?o(m,{style:{marginRight:"8px"},checked:I(r.data),onClick:n(i,["stop"]),onUpdateChecked:e=>e&&function(e){a("nodeClick",{type:"update",node:e})}(r.data)},null):null,r.data[e.labelKey]]),K.value===r.data?o(s,{class:"rotate"},null):r.data.isLeaf?null:o(u,null,null)]);var t,l}))])])}}),K=e({props:{childKey:{type:String,default:"children"},options:{type:Array,default:()=>[]},labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"},currentNode:{type:Object},cursorNode:{type:Object}},emits:["nodeClick","changeCursor"],setup(e,{slots:r,emit:t}){const n=a([]);function s(r,a){return o(k,{level:a+1,labelKey:e.labelKey,valueKey:e.valueKey,activeNodes:n.value,onNodeClick:e=>t("nodeClick",e),onChangeCursor:e=>t("changeCursor",e),options:r,cursorNode:e.cursorNode},null)}function u(r){let t=!1;return c(r,((r,o)=>{r===e.currentNode&&(t=!0,o())}),["children"]),t}function i(){if(!f(e.options)||!e.currentNode)return[];const r=[e.options];let t=e.options;for(n.value.length=0;f(t);){const o=t.find(u);if(!o)break;n.value.push(o),t=o[e.childKey],r.push(t)}if(e.cursorNode){const t=r.findIndex((r=>r.findIndex((r=>r===e.cursorNode))>=0));if(t>=0){const e=r.slice(0,t+1);return n.value.splice(t,r.length),e}}return r}return()=>o("section",{class:"search-cascader__menuWrapper"},[f(e.options)&&e.options.length?e.currentNode?i().map(s):s(e.options,0):o("section",{class:"search-cascader__emptyWrapper"},[h(r.empty)?r.empty():o("section",null,[l("empty")])])])}});export{K as SearchMenu};
1
+ import{defineComponent as e,computed as r,inject as t,createVNode as o,withModifiers as n,ref as a,createTextVNode as l}from"vue";import{traverse as c}from"../../../../shared/utils/index.js";import{Reload as s,ChevronForward as u}from"@vicons/ionicons5";import{NOOP as i}from"@vue/shared";import{useVirtualList as d}from"@vueuse/core";import{isNumber as p,isArray as f,isEqual as v,isString as y,isFunction as h}from"lodash-es";import{NCheckbox as m}from"naive-ui";import{InjectionSearchCascaderLoadingNode as g,InjectionSearchCascaderValue as N,InjectionSearchCascaderCheckAbleLevel as C,InjectionKeyboardEventBus as b}from"../constants/index.js";const k=e({props:{options:{type:Array,default:()=>[]},activeNodes:{type:Array,default:()=>[]},level:{type:Number,required:!0},labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"},cursorNode:{type:Object,default:()=>({})}},emits:["nodeClick","changeCursor"],setup(e,{emit:a}){const l=r((()=>e.options)),{list:c,containerProps:h,wrapperProps:k}=d(l,{itemHeight:32,overscan:5}),K=t(g),_=t(N),x=t(C),A=t(b),S=r((()=>p(x.value)&&x.value<=e.level));function j(e){return Object.keys(e).length<=0}function w(r){return e.cursorNode==r}function I(r){const t=function(e){const r=[e];let t=e;for(;t.parent;)t=t.parent,r.unshift(t);return r}(r);if(f(_.value))return v(o(t,e.valueKey),o(_.value,e.valueKey));if(y(_.value)){const r=_.value.split("/").map((e=>e.trim()));return v(r,o(t,e.labelKey))}return!1;function o(e,r){return e.map((e=>e[r]))}}function O(e){const r=h.ref.value;if(r){const t=32*e-(null==r?void 0:r.clientHeight);r.scrollTo(0,t>0?t:0)}}return A.on((function(r){if("ArrowUp"===r){if(j(e.cursorNode))return;const r=l.value.findIndex((r=>r===e.cursorNode));if(r>=0){const e=0===r?l.value.length-1:r-1,t=l.value[e];a("changeCursor",t),O(e+3)}}if("ArrowRight"===r){if(j(e.cursorNode))return;a("nodeClick",{type:"search",node:e.cursorNode}),a("changeCursor",{})}if("ArrowDown"===r){if(j(e.cursorNode))return a("changeCursor",l.value[0]);const r=l.value.findIndex((r=>r===e.cursorNode));if(r>=0){const e=r>=l.value.length-1?0:r+1,t=l.value[e];a("changeCursor",t),O(e+1)}}if("ArrowLeft"===r&&e.activeNodes.length){const r=e.activeNodes.slice(-1);a("changeCursor",r[0])}"Enter"===r&&(S.value?a("nodeClick",{type:"update",node:e.cursorNode}):a("nodeClick",{type:"search",node:e.cursorNode}))})),()=>o("div",{class:"search-cascader__optionWrapper",ref:h.ref,style:h.style,onScroll:h.onScroll},[o("div",{style:k.value.style},[c.value.map((r=>{return o("div",{class:["search-cascader__option",{"search-cascader__option--active":(t=r.data,(null==(l=e.activeNodes)?void 0:l.includes(t))||w(r.data))}],onClick:()=>a("nodeClick",{type:"search",node:r.data}),title:r.data[e.labelKey]},[o("div",{class:"search-cascader__optionText"},[S.value?o(m,{style:{marginRight:"8px"},checked:I(r.data),onClick:n(i,["stop"]),onUpdateChecked:e=>e&&function(e){a("nodeClick",{type:"update",node:e})}(r.data)},null):null,r.data[e.labelKey]]),K.value===r.data?o(s,{class:"rotate"},null):r.data.isLeaf?null:o(u,null,null)]);var t,l}))])])}}),K=e({props:{childKey:{type:String,default:"children"},options:{type:Array,default:()=>[]},labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"},currentNode:{type:Object},cursorNode:{type:Object}},emits:["nodeClick","changeCursor"],setup(e,{slots:r,emit:t}){const n=a([]);function s(r,a){return o(k,{level:a+1,labelKey:e.labelKey,valueKey:e.valueKey,activeNodes:n.value,onNodeClick:e=>t("nodeClick",e),onChangeCursor:e=>t("changeCursor",e),options:r,cursorNode:e.cursorNode},null)}function u(r){let t=!1;return c(r,((r,o)=>{r===e.currentNode&&(t=!0,o())}),["children"]),t}function i(){if(!f(e.options)||!e.currentNode)return[];const r=[e.options];let t=e.options;for(n.value.length=0;f(t);){const o=t.find(u);if(!o)break;n.value.push(o),t=o[e.childKey],r.push(t)}if(e.cursorNode){const t=r.findIndex((r=>(r&&r.findIndex((r=>r===e.cursorNode)))>=0));if(t>=0){const e=r.slice(0,t+1);return n.value.splice(t,r.length),e}}return r}return()=>o("section",{class:"search-cascader__menuWrapper"},[f(e.options)&&e.options.length?e.currentNode?i().map(s):s(e.options,0):o("section",{class:"search-cascader__emptyWrapper"},[h(r.empty)?r.empty():o("section",null,[l("empty")])])])}});export{K as SearchMenu};
@@ -1 +1 @@
1
- .search-cascader__menuWrapper{display:flex;flex-wrap:nowrap;margin:-8px -14px}.search-cascader__input input{cursor:pointer!important}.search-cascader__option{align-items:center;border-radius:4px;box-sizing:border-box;display:flex;height:32px;justify-content:space-between;padding:0 8px 0 16px;width:100%}.search-cascader__option--active{background:#f8f8f8}.search-cascader__option:hover{background:#f5f5f5;cursor:pointer}.search-cascader__optionWrapper{background:#fff;height:256px;overflow-x:auto;width:calc(var(--menu-width)*1px)}.search-cascader__optionWrapper:not(:last-of-type){border:solid #e5e5e5;border-width:0 1px 0 0}.search-cascader__optionText{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:calc(100% - 20px)}.search-cascader__option svg{color:#bfbfbf;flex-shrink:0;font-size:12px;width:20px}.search-cascader__option svg.rotate{animation:rotate 1s linear infinite}.search-cascader__emptyWrapper{align-items:center;background:#fff;box-sizing:border-box;display:flex;height:300px;justify-content:center;padding:16px;width:100%}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}
1
+ .search-cascader__menuWrapper{display:flex;flex-wrap:nowrap;margin:-8px -14px}.search-cascader__input input{cursor:pointer!important}.search-cascader__option{align-items:center;border-radius:4px;box-sizing:border-box;display:flex;height:32px;justify-content:space-between;min-width:100%;padding:0 8px 0 16px;width:fit-content}.search-cascader__option--active{background:#f8f8f8}.search-cascader__option:hover{background:#f5f5f5;cursor:pointer}.search-cascader__optionWrapper{background:#fff;height:256px;overflow-x:auto;width:calc(var(--menu-width)*1px)}.search-cascader__optionWrapper:not(:last-of-type){border:solid #e5e5e5;border-width:0 1px 0 0}.search-cascader__optionText{white-space:nowrap}.search-cascader__option svg{color:#bfbfbf;flex-shrink:0;font-size:12px;width:20px}.search-cascader__option svg.rotate{animation:rotate 1s linear infinite}.search-cascader__emptyWrapper{align-items:center;background:#fff;box-sizing:border-box;display:flex;height:300px;justify-content:center;padding:16px;width:100%}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}
@@ -1 +1 @@
1
- import{defineComponent as t,ref as e,reactive as l,computed as a,watch as i,openBlock as n,createElementBlock as s,unref as d,createCommentVNode as o,withDirectives as r,createElementVNode as c,normalizeClass as b,createVNode as u,withCtx as p,Fragment as f,renderList as h,createBlock as y,createTextVNode as v,toDisplayString as m,vShow as g,nextTick as C}from"vue";import{useMessage as L,NAnchor as I,NAnchorLink as S}from"naive-ui";import E from"./components/label-classify.vue.js";import{handleLabelColor as w}from"../../../shared/utils/vexutils.js";import x from"../../../_virtual/plugin-vue_export-helper.js";import A from"../../../shared/utils/vexutilsExpand.js";const O={key:0,class:"label-disable-wrap"},j=[c("p",{class:"label-disable-title"},"无可选标签",-1),c("p",{class:"label-disable-desc"},"请联系管理员进行标签管理设置",-1)],K={style:{height:"100%"}},k={class:"label-wrap"},T=["id"],_={class:"edit-label-type"};var B=x(t({__name:"LabelFormContent",props:{item:{default:()=>({})},isEdit:{type:Boolean,default:!0},isLock:{type:Boolean,default:!1},labelSelectedList:null,isChangeWindow:{type:Boolean},getLabelList:{type:Function,default:()=>Promise.resolve({rows:[]})},deleteLabel:{type:Function,default:()=>Promise.resolve({status:!0})},saveLabelItem:{type:Function,default:()=>Promise.resolve({status:!0})},labelOptions:null,sourceType:{default:""},explicit:{type:Boolean,default:!1}},emits:["explicitOnChange","change","updateLabelData"],setup(t,{expose:x,emit:B}){const D=t,F=L(),V=e(null),P=l({editLabelItem:{},inited:!1,labelSelectedEdit:[],labelAnchorKey:"",cacheAnchorKey:"",labelConfig:{}});let N=e(0);const W=a((()=>{if(!P.inited)return!1;let t=P.labelConfig;return!t||Object.keys(t).every((e=>!t[e].itemList))})),$=a((()=>{let t=[].concat(...P.labelSelectedEdit,...D.labelSelectedList);return J(t,"labelId")})),q=a((()=>{const t=$.value||[];return Array.isArray(t)?t.map((t=>t.labelId)):[]})),J=(t,e)=>{let l={};return t.reduce(((t,a)=>(!l[a[e]]&&(l[a[e]]=t.push(a)),t)),[])},R=()=>{if(P.labelSelectedEdit=$.value,"object"==typeof P.labelConfig){Object.keys(P.labelConfig||{}).forEach((t=>{var e;let l=(null==(e=P.labelConfig[t])?void 0:e.itemList)||[];l.length&&l.forEach((t=>{q.value.includes(t.labelId)&&(t.isSelect=!0)}))}))}},z=(t,e)=>{if(!t)return;let l=Object.keys(t)||[];if(!l.length)return;let a=t[l[0]].curKey;if(e&&"string"==typeof e){let[i]=e.split("~"),n=l.find((e=>t[e]&&t[e].curKey&&t[e].curKey.includes(i)));n&&(a=t[n].curKey)}a&&Y(a)},G=(t,e)=>{e.showAdd=!0;const l=t.target.nextElementSibling;C((()=>{var t;null==(t=null==l?void 0:l.firstChild)||t.focus()}))},H=(t,e)=>{setTimeout((()=>{e.addVal?Q(e):e.showAdd=!1}),150)},M=(t,e)=>{e.addVal="",e.showAdd=!1},Q=async t=>{var e;if(!!t.itemList.filter((t=>!(t.isPublic&&1==t.isPublic))).find((e=>e.labelName===t.addVal)))return F.error("标签名称重复!"),!1;let l="";l=(null==(e=t.itemList)?void 0:e.length)?t.itemList[0].parentColor||t.parentColor||"":(null==t?void 0:t.parentColor)||"";const a={type:t.typeId,name:t.addVal,parentColor:l},{status:i}=await D.saveLabelItem(a,t);i&&(F.success("添加成功!"),B("updateLabelData"),t.showAdd=!1)},U=(t,e,l,a)=>{var i;const n=l.itemList,s=l.multipleChoice;let d=(null==(i=P.labelSelectedEdit)?void 0:i.length)&&A.clone(P.labelSelectedEdit,!0)||[];if(t){if(d.some((t=>t.labelId==e.labelId)))return;if(2==s){const{typeId:t,labelId:l}=e;d=d.filter((e=>e.typeId!==t)),n.forEach((t=>{t.labelId!==l&&(t.isSelect=!1)}))}d.push(e)}else{const t=d.findIndex((t=>t.labelId==e.labelId));-1!=t&&d.splice(t,1)}P.labelSelectedEdit=[...d],N.value++,D.explicit&&B("explicitOnChange",[...P.labelSelectedEdit])},X=async t=>{const{status:e}=await D.deleteLabel(t,D.item);if(e){F.success("删除成功!");for(const e in P.labelConfig){const l=P.labelConfig[e].itemList.findIndex((e=>e.labelId==t.labelId));-1!=l&&P.labelConfig[e].itemList.splice(l,1)}const e=P.labelSelectedEdit||[],l=D.labelSelectedList||[];if(e&&e.length){const l=e.findIndex((e=>e.labelId==t.labelId));-1!=l&&e.splice(l,1)}if(l&&l.length){const e=l.findIndex((e=>e.labelId==t.labelId));-1!=e&&l.splice(e,1),B("change",[...l],D.item)}B("updateLabelData")}else F.warning("删除失败")},Y=t=>{t&&setTimeout((()=>{let e,l="#"+t;e=V.value.querySelector("a[href='"+l+"']"),e&&e.click(),P.labelAnchorKey=t}),32)},Z=t=>{t.preventDefault()},tt=t=>{if(!t)return;let e=t.slice(1);P.cacheAnchorKey=e},et=()=>{var t;return null==(t=V.value)?void 0:t.querySelector(".right-label-wrap")};return i((()=>D.labelOptions),(t=>{t&&(()=>{var t;if(D.isLock)return;const e=JSON.parse(JSON.stringify(D.labelOptions));for(let l in e){let a=(null==(t=e[l])?void 0:t.typeId)||"";Object.assign(e[l],{curKey:`${l}_${a}}`})}P.labelConfig=e,C((()=>{let t;R(),D.explicit&&P.inited&&(t=P.labelAnchorKey),z(P.labelConfig,t),P.inited=!0}))})()}),{immediate:!0,deep:!0}),x({resetShowAdd:()=>{let{labelObj:t}=P.editLabelItem;if(t&&Object.keys(t).length)for(let e in t){let l=t[e];Object.assign(l,{showAdd:!1})}},handleLabelForm:t=>{t([...P.labelSelectedEdit||[]])},handleResetOptions:()=>{},hanldeSetLabelItem:(t,e)=>{if("object"==typeof P.labelConfig){Object.keys(P.labelConfig||{}).forEach((l=>{var a;let i=(null==(a=P.labelConfig[l])?void 0:a.itemList)||[];i.length&&i.forEach((l=>{t==l.labelId&&(l.isSelect=e)}))}))}if(!1===e&&Array.isArray(P.labelSelectedEdit)){const e=P.labelSelectedEdit.findIndex((e=>e.labelId==t));-1!=e&&P.labelSelectedEdit.splice(e,1)}}}),(e,l)=>(n(),s("div",{class:"c-label-form-content",ref_key:"labelFormContent",ref:V},[d(W)?(n(),s("div",O,j)):o("v-if",!0),r(c("div",K,[c("div",k,[o(" 表单内嵌打开标签组件的样式 "),o(' <div v-if="explicit" class="explicit-continer">\n\t\t\t\t\t<n-tabs :value="state.labelAnchorKey" type="card" @change="labelAnchorTabsOnChange" tab-position="top">\n\t\t\t\t\t\t<template v-for="(v, i) in state.labelConfig">\n\t\t\t\t\t\t\t<n-tab-pane :name="v.curKey">\n\t\t\t\t\t\t\t\t<span slot="tab">\n\t\t\t\t\t\t\t\t\t{{ i }}\n\t\t\t\t\t\t\t\t\t<span class="edit-label-type">({{ v.multipleChoice == 2 ? \'单\' : \'多\' }}选)</span>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<div class="explicit-label-wrap left-label-wrap">\n\t\t\t\t\t\t\t\t\t<div class="edit-label-content">\n\t\t\t\t\t\t\t\t\t\t<labelClassify\n\t\t\t\t\t\t\t\t\t\t\t:classifyItem="v"\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelChange="handleLabelChange"\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelColor="handleLabelColor"\n\t\t\t\t\t\t\t\t\t\t\t:handleDelLabel="handleDelLabel"\n\t\t\t\t\t\t\t\t\t\t\t:hanldeBlur="hanldeBlur"\n\t\t\t\t\t\t\t\t\t\t\t:handleAddLabel="handleAddLabel"\n\t\t\t\t\t\t\t\t\t\t\t:clearaddVal="clearaddVal"\n\t\t\t\t\t\t\t\t\t\t\t:isEdit="isEdit"\n\t\t\t\t\t\t\t\t\t\t\t:sourceType="sourceType"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</n-tab-pane>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</n-tabs>\n\t\t\t\t</div> '),o("\n\t\t\t\t\t普通标签样式\n\t\t\t\t\tv-else\n\t\t\t\t\texplicit\n\t\t\t\t "),c("div",{class:b(["left-label-wrap",{"total-left-label-wrap":t.isChangeWindow}])},[u(d(I),{"offset-target":et,type:"block",onClick:Z,onChange:tt},{default:p((()=>[(n(!0),s(f,null,h(P.labelConfig,((t,e)=>(n(),y(d(S),{href:`#${t.curKey}`,title:String(e)},null,8,["href","title"])))),256))])),_:1})],2),o(' v-if="!explicit" '),c("div",{class:b(["right-label-wrap",{"total-right-label-wrap":t.isChangeWindow}])},[(n(!0),s(f,null,h(P.labelConfig,((e,l)=>(n(),s("div",{key:l,class:"edit-label-content"},[c("div",{class:"edit-label",id:e.curKey},[v(m(l)+" ",1),c("span",_,"("+m(2==e.multipleChoice?"单":"多")+"选)",1)],8,T),u(E,{classifyItem:e,handleLabelChange:U,handleLabelColor:d(w),handleDelLabel:X,hanldeBlur:H,handleAddLabel:G,clearaddVal:M,isEdit:t.isEdit,sourceType:t.sourceType},null,8,["classifyItem","handleLabelColor","isEdit","sourceType"])])))),128))],2)])],512),[[g,!d(W)]])],512))}}),[["__file","LabelFormContent.vue"]]);export{B as default};
1
+ import{defineComponent as t,ref as e,reactive as l,computed as a,watch as i,openBlock as n,createElementBlock as s,unref as r,createCommentVNode as d,withDirectives as o,createElementVNode as c,normalizeClass as b,createVNode as u,withCtx as p,Fragment as f,renderList as h,createBlock as y,createTextVNode as v,toDisplayString as m,vShow as g,nextTick as C}from"vue";import{useMessage as L,NAnchor as I,NAnchorLink as S}from"naive-ui";import E from"./components/label-classify.vue.js";import{handleLabelColor as w}from"../../../shared/utils/vexutils.js";import x from"../../../_virtual/plugin-vue_export-helper.js";import A from"../../../shared/utils/vexutilsExpand.js";const O={key:0,class:"label-disable-wrap"},j=[c("p",{class:"label-disable-title"},"无可选标签",-1),c("p",{class:"label-disable-desc"},"请联系管理员进行标签管理设置",-1)],K={style:{height:"100%"}},k={class:"label-wrap"},T=["id"],_={class:"edit-label-type"};var B=x(t({__name:"LabelFormContent",props:{item:{default:()=>({})},isEdit:{type:Boolean,default:!0},isLock:{type:Boolean,default:!1},labelSelectedList:null,isChangeWindow:{type:Boolean},getLabelList:{type:Function,default:()=>Promise.resolve({rows:[]})},deleteLabel:{type:Function,default:()=>Promise.resolve({status:!0})},saveLabelItem:{type:Function,default:()=>Promise.resolve({status:!0})},labelOptions:null,sourceType:{default:""},explicit:{type:Boolean,default:!1}},emits:["explicitOnChange","change","updateLabelData"],setup(t,{expose:x,emit:B}){const D=t,F=L(),V=e(null),P=l({editLabelItem:{},inited:!1,labelSelectedEdit:[],labelAnchorKey:"",cacheAnchorKey:"",labelConfig:{}});let N=e(0);const W=a((()=>{if(!P.inited)return!1;let t=P.labelConfig;return!t||Object.keys(t).every((e=>!t[e].itemList))})),$=a((()=>{let t=[].concat(...P.labelSelectedEdit,...D.labelSelectedList);return J(t,"labelId")})),q=a((()=>{const t=$.value||[];return Array.isArray(t)?t.map((t=>t.labelId)):[]})),J=(t,e)=>{let l={};return t.reduce(((t,a)=>(!l[a[e]]&&(l[a[e]]=t.push(a)),t)),[])},R=()=>{if(P.labelSelectedEdit=$.value,"object"==typeof P.labelConfig){Object.keys(P.labelConfig||{}).forEach((t=>{var e;let l=(null==(e=P.labelConfig[t])?void 0:e.itemList)||[];l.length&&l.forEach((t=>{q.value.includes(t.labelId)&&(t.isSelect=!0)}))}))}},z=(t,e)=>{if(!t)return;let l=Object.keys(t)||[];if(!l.length)return;let a=t[l[0]].curKey;if(e&&"string"==typeof e){let[i]=e.split("~"),n=l.find((e=>t[e]&&t[e].curKey&&t[e].curKey.includes(i)));n&&(a=t[n].curKey)}a&&Y(a)},G=(t,e)=>{e.showAdd=!0;const l=t.target.nextElementSibling;C((()=>{var t;null==(t=null==l?void 0:l.firstChild)||t.focus()}))},H=(t,e)=>{setTimeout((()=>{e.addVal?Q(e):e.showAdd=!1}),150)},M=(t,e)=>{e.addVal="",e.showAdd=!1},Q=async t=>{var e;if(!!t.itemList.filter((t=>!(t.isPublic&&1==t.isPublic))).find((e=>e.labelName===t.addVal)))return F.error("标签名称重复!"),!1;let l="";l=(null==(e=t.itemList)?void 0:e.length)?t.itemList[0].parentColor||t.parentColor||"":(null==t?void 0:t.parentColor)||"";const a={type:t.typeId,name:t.addVal,parentColor:l},{status:i}=await D.saveLabelItem(a,t);i&&(F.success("添加成功!"),B("updateLabelData"),t.showAdd=!1)},U=(t,e,l,a)=>{var i;const n=l.itemList,s=l.multipleChoice;let r=(null==(i=P.labelSelectedEdit)?void 0:i.length)&&A.clone(P.labelSelectedEdit,!0)||[];if(t){if(r.some((t=>t.labelId==e.labelId)))return;if(2==s){const{typeId:t,labelId:l}=e;r=r.filter((e=>e.typeId!==t)),n.forEach((t=>{t.labelId!==l&&(t.isSelect=!1)}))}r.push(e)}else{const t=r.findIndex((t=>t.labelId==e.labelId));-1!=t&&r.splice(t,1)}P.labelSelectedEdit=[...r],N.value++,D.explicit&&B("explicitOnChange",[...P.labelSelectedEdit])},X=async t=>{const{status:e}=await D.deleteLabel(t,D.item);if(e){F.success("删除成功!");for(const e in P.labelConfig){const l=P.labelConfig[e].itemList.findIndex((e=>e.labelId==t.labelId));-1!=l&&P.labelConfig[e].itemList.splice(l,1)}const e=P.labelSelectedEdit||[],l=D.labelSelectedList||[];if(e&&e.length){const l=e.findIndex((e=>e.labelId==t.labelId));-1!=l&&e.splice(l,1)}if(l&&l.length){const e=l.findIndex((e=>e.labelId==t.labelId));-1!=e&&l.splice(e,1),B("change",[...l],D.item)}B("updateLabelData")}else F.warning("删除失败")},Y=t=>{t&&setTimeout((()=>{let e,l="#"+t;e=V.value.querySelector("a[href='"+l+"']"),e&&e.click(),P.labelAnchorKey=t}),32)},Z=t=>{t.preventDefault()},tt=t=>{if(!t)return;let e=t.slice(1);P.cacheAnchorKey=e},et=()=>{var t;return null==(t=V.value)?void 0:t.querySelector(".right-label-wrap")};return i((()=>D.labelOptions),(t=>{t&&(()=>{var t;if(D.isLock)return;const e=JSON.parse(JSON.stringify(D.labelOptions));for(let l in e){let a=(null==(t=e[l])?void 0:t.typeId)||"";Object.assign(e[l],{curKey:`${l}_${a}}`})}P.labelConfig=e,C((()=>{let t;R(),D.explicit&&P.inited&&(t=P.labelAnchorKey),z(P.labelConfig,t),P.inited=!0}))})()}),{immediate:!0,deep:!0}),x({resetShowAdd:()=>{let{labelObj:t}=P.editLabelItem;if(t&&Object.keys(t).length)for(let e in t){let l=t[e];Object.assign(l,{showAdd:!1})}},handleLabelForm:t=>{t([...P.labelSelectedEdit||[]])},handleResetOptions:()=>{},hanldeSetLabelItem:(t,e)=>{if("object"==typeof P.labelConfig){Object.keys(P.labelConfig||{}).forEach((l=>{var a;let i=(null==(a=P.labelConfig[l])?void 0:a.itemList)||[];i.length&&i.forEach((l=>{t==l.labelId&&(l.isSelect=e)}))}))}if(!1===e&&Array.isArray(P.labelSelectedEdit)){const e=P.labelSelectedEdit.findIndex((e=>e.labelId==t));-1!=e&&P.labelSelectedEdit.splice(e,1)}}}),(e,l)=>(n(),s("div",{class:"c-label-form-content",ref_key:"labelFormContent",ref:V},[r(W)?(n(),s("div",O,j)):d("v-if",!0),o(c("div",K,[c("div",k,[d(" 表单内嵌打开标签组件的样式 "),d(' <div v-if="explicit" class="explicit-continer">\r\n\t\t\t\t\t<n-tabs :value="state.labelAnchorKey" type="card" @change="labelAnchorTabsOnChange" tab-position="top">\r\n\t\t\t\t\t\t<template v-for="(v, i) in state.labelConfig">\r\n\t\t\t\t\t\t\t<n-tab-pane :name="v.curKey">\r\n\t\t\t\t\t\t\t\t<span slot="tab">\r\n\t\t\t\t\t\t\t\t\t{{ i }}\r\n\t\t\t\t\t\t\t\t\t<span class="edit-label-type">({{ v.multipleChoice == 2 ? \'单\' : \'多\' }}选)</span>\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t<div class="explicit-label-wrap left-label-wrap">\r\n\t\t\t\t\t\t\t\t\t<div class="edit-label-content">\r\n\t\t\t\t\t\t\t\t\t\t<labelClassify\r\n\t\t\t\t\t\t\t\t\t\t\t:classifyItem="v"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelChange="handleLabelChange"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleLabelColor="handleLabelColor"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleDelLabel="handleDelLabel"\r\n\t\t\t\t\t\t\t\t\t\t\t:hanldeBlur="hanldeBlur"\r\n\t\t\t\t\t\t\t\t\t\t\t:handleAddLabel="handleAddLabel"\r\n\t\t\t\t\t\t\t\t\t\t\t:clearaddVal="clearaddVal"\r\n\t\t\t\t\t\t\t\t\t\t\t:isEdit="isEdit"\r\n\t\t\t\t\t\t\t\t\t\t\t:sourceType="sourceType"\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</n-tab-pane>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</n-tabs>\r\n\t\t\t\t</div> '),d("\r\n\t\t\t\t\t普通标签样式\r\n\t\t\t\t\tv-else\r\n\t\t\t\t\texplicit\r\n\t\t\t\t "),c("div",{class:b(["left-label-wrap",{"total-left-label-wrap":t.isChangeWindow}])},[u(r(I),{"offset-target":et,type:"block",onClick:Z,onChange:tt},{default:p((()=>[(n(!0),s(f,null,h(P.labelConfig,((t,e)=>(n(),y(r(S),{href:`#${t.curKey}`,title:String(e)},null,8,["href","title"])))),256))])),_:1})],2),d(' v-if="!explicit" '),c("div",{class:b(["right-label-wrap",{"total-right-label-wrap":t.isChangeWindow}])},[(n(!0),s(f,null,h(P.labelConfig,((e,l)=>(n(),s("div",{key:l,class:"edit-label-content"},[c("div",{class:"edit-label",id:e.curKey},[v(m(l)+" ",1),c("span",_,"("+m(2==e.multipleChoice?"单":"多")+"选)",1)],8,T),u(E,{classifyItem:e,handleLabelChange:U,handleLabelColor:r(w),handleDelLabel:X,hanldeBlur:H,handleAddLabel:G,clearaddVal:M,isEdit:t.isEdit,sourceType:t.sourceType},null,8,["classifyItem","handleLabelColor","isEdit","sourceType"])])))),128))],2)])],512),[[g,!r(W)]])],512))}}),[["__file","LabelFormContent.vue"]]);export{B as default};
@@ -95,6 +95,12 @@ declare const _default: import("vue").DefineComponent<{
95
95
  };
96
96
  readonly 'onUpdate:value': PropType<import("naive-ui/es/_utils").MaybeArray<(value: (string | number)[], meta: {
97
97
  actionType: "check" | "uncheck";
98
+ /**
99
+ * 取消勾选树节点
100
+ * baseKeys:基准值
101
+ * currentTree:当前树节点
102
+ * value:树节点的key值
103
+ */
98
104
  value: string | number;
99
105
  }) => void>>;
100
106
  readonly onUpdateValue: PropType<import("naive-ui/es/_utils").MaybeArray<(value: (string | number)[], meta: {
@@ -51,8 +51,10 @@ declare const _default: import("vue").DefineComponent<{
51
51
  DATE_TIME: string;
52
52
  CHECKBOX_GROUP: string;
53
53
  INPUTNUMBER_RANGE: string;
54
- DATE_RANGE: string;
55
- DATETIME_RANGE: string;
54
+ DATE_RANGE_OUT: string;
55
+ DATE_RANGE_INNER: string;
56
+ DATETIME_RANGE_OUT: string;
57
+ DATETIME_RANGE_INNER: string;
56
58
  };
57
59
  WidgetValEnums: {
58
60
  CUSTOM: string;
@@ -171,8 +171,10 @@ declare const _default: import("vue").DefineComponent<{
171
171
  DATE_TIME: string;
172
172
  CHECKBOX_GROUP: string;
173
173
  INPUTNUMBER_RANGE: string;
174
- DATE_RANGE: string;
175
- DATETIME_RANGE: string;
174
+ DATE_RANGE_OUT: string;
175
+ DATE_RANGE_INNER: string;
176
+ DATETIME_RANGE_OUT: string;
177
+ DATETIME_RANGE_INNER: string;
176
178
  };
177
179
  WidgetValEnums: {
178
180
  CUSTOM: string;
@@ -1 +1 @@
1
- const l=[{value:"TODAY",label:"今天"},{value:"TOMORROW",label:"明天"},{value:"YESTERDAY",label:"昨天"},{value:"THIS_WEEK",label:"本周"},{value:"NEXT_WEEK",label:"下周"},{value:"PREV_WEEK",label:"上周"},{value:"THIS_MONTH",label:"本月"},{value:"NEXT_MONTH",label:"下月"},{value:"PREV_MONTH",label:"上月"},{value:"THIS_QUATER",label:"本季度"},{value:"NEXT_QUATER",label:"下季度"},{value:"PREV_QUATER",label:"上季度"},{value:"THIS_YEAR",label:"本年"},{value:"NEXT_YEAR",label:"下年"},{value:"PREV_YEAR",label:"上年"}];export{l as DateRangeOptions};
1
+ const l=[{value:"TODAY",label:"今天"},{value:"TOMORROW",label:"明天"},{value:"YESTERDAY",label:"昨天"},{value:"THIS_WEEK",label:"本周"},{value:"NEXT_WEEK",label:"下周"},{value:"LAST_WEEK",label:"上周"},{value:"THIS_MONTH",label:"本月"},{value:"NEXT_MONTH",label:"下月"},{value:"LAST_MONTH",label:"上月"},{value:"THIS_QUARTER",label:"本季度"},{value:"NEXT_QUARTER",label:"下季度"},{value:"LAST_QUARTER",label:"上季度"},{value:"THIS_YEAR",label:"本年"},{value:"NEXT_YEAR",label:"下年"},{value:"LAST_YEAR",label:"上年"}];export{l as DateRangeOptions};
@@ -5,10 +5,6 @@ declare const _default: import("vue").DefineComponent<{
5
5
  type: PropType<ITypeDate>;
6
6
  default: string;
7
7
  };
8
- filterExplicit: {
9
- type: NumberConstructor;
10
- default: number;
11
- };
12
8
  clearable: {
13
9
  type: BooleanConstructor;
14
10
  default: boolean;
@@ -35,10 +31,6 @@ declare const _default: import("vue").DefineComponent<{
35
31
  type: PropType<ITypeDate>;
36
32
  default: string;
37
33
  };
38
- filterExplicit: {
39
- type: NumberConstructor;
40
- default: number;
41
- };
42
34
  clearable: {
43
35
  type: BooleanConstructor;
44
36
  default: boolean;
@@ -64,7 +56,7 @@ declare const _default: import("vue").DefineComponent<{
64
56
  }>>;
65
57
  emit: (event: "update:value", ...args: any[]) => void;
66
58
  dateList: import("vue").Ref<any[]>;
67
- isShow: import("vue").Ref<boolean>;
59
+ isShowDateRange: import("vue").Ref<boolean>;
68
60
  radioValue: import("vue").Ref<string>;
69
61
  startDate: import("vue").Ref<any>;
70
62
  endDate: import("vue").Ref<any>;
@@ -120,10 +112,6 @@ declare const _default: import("vue").DefineComponent<{
120
112
  type: PropType<ITypeDate>;
121
113
  default: string;
122
114
  };
123
- filterExplicit: {
124
- type: NumberConstructor;
125
- default: number;
126
- };
127
115
  clearable: {
128
116
  type: BooleanConstructor;
129
117
  default: boolean;
@@ -149,7 +137,6 @@ declare const _default: import("vue").DefineComponent<{
149
137
  }, {
150
138
  type: ITypeDate;
151
139
  value: string;
152
- filterExplicit: number;
153
140
  clearable: boolean;
154
141
  startPlaceholder: string;
155
142
  endPlaceholder: string;
@@ -0,0 +1 @@
1
+ import{defineComponent as e,ref as a,computed as l,watch as t,openBlock as u,createElementBlock as r,Fragment as v,renderList as i,normalizeClass as d,toDisplayString as n,createCommentVNode as o,createVNode as s,unref as c,withCtx as p,createTextVNode as m,createElementVNode as f}from"vue";import{NButton as y}from"naive-ui";import h from"../../../../../date-picker/index.js";import b from"moment";import{isString as g}from"lodash-es";import{getAllDateRangeInfo as k}from"../helpers/presetValToTimestamp.js";import Y from"../../../../../../_virtual/plugin-vue_export-helper.js";const F={class:"render-widget-date-range"},_={key:0,class:"radio-date-group"},D=["onClick"],M={key:1,class:"date-detail-range"},S=f("span",{class:"divider"},null,-1);var w=Y(e({__name:"DateRangeInner",props:{type:{type:String,default:"date"},clearable:{type:Boolean,default:!1},valueFormat:{type:String,default:"yyyy-MM-dd"},startPlaceholder:{type:String,default:"起始"},endPlaceholder:{type:String,default:"截止"},value:{type:String,default:""}},emits:["update:value"],setup(e,{emit:f}){const Y=e,w=a([]),P=a(!1),j=a(""),x=a(),C=a(),H=l((()=>{let e="";switch(Y.type){case"date":e="YYYY-MM-DD";break;case"datetime":e="YYYY-MM-DD HH:mm:ss"}return e})),I=l((()=>{let e="";switch(Y.type){case"date":e="选择日期";break;case"datetime":e="选择时间"}return e}));function O(e,a){switch(a){case"start":x.value=e;break;case"end":C.value=e}const l=x.value?b(x.value).format(H.value):null,t=C.value?b(C.value).format(H.value):null;f("update:value",l||t?`${null!=l?l:""} ~ ${null!=t?t:""}`:"")}function R(e){return!!C.value&&e>C.value}function T(e){return!!x.value&&e<x.value}return t((()=>Y.value),(e=>{if(e&&g(e)&&e.includes("~")){const[a,l]=e.split("~");return a.trim()&&(x.value=b(a.trim()).valueOf()),void(l.trim()&&(C.value=b(l.trim()).valueOf()))}x.value=C.value=null,j.value=""}),{immediate:!0}),function(){const e=k(H.value);w.value=e}(),(a,l)=>(u(),r("div",F,[P.value?o("v-if",!0):(u(),r("div",_,[(u(!0),r(v,null,i(w.value,(e=>(u(),r("span",{key:e.value,class:d(["radio-date-item",j.value===e.value?"radio-date-item-active":""]),onClick:a=>{return l=e.value,j.value===l?j.value="":j.value=l,void(j.value&&f("update:value",j.value));var l}},n(e.label),11,D)))),128))])),s(c(y),{secondary:"",class:d(P.value?"select-date-right":"select-date-left"),onClick:l[0]||(l[0]=e=>P.value=!P.value)},{default:p((()=>[m(n(c(I)),1)])),_:1},8,["class"]),P.value?(u(),r("div",M,[s(c(h),{type:e.type,"default-time":"00:00:00",clearable:e.clearable,valueFormat:e.valueFormat,placeholder:e.startPlaceholder,value:x.value,"is-date-disabled":R,"onUpdate:value":l[1]||(l[1]=e=>O(e,"start"))},null,8,["type","clearable","valueFormat","placeholder","value"]),S,s(c(h),{type:e.type,"default-time":"23:59:59",clearable:e.clearable,valueFormat:e.valueFormat,placeholder:e.endPlaceholder,value:C.value,"is-date-disabled":T,"onUpdate:value":l[2]||(l[2]=e=>O(e,"end"))},null,8,["type","clearable","valueFormat","placeholder","value"])])):o("v-if",!0)]))}}),[["__file","DateRangeInner.vue"]]);export{w as default};
@@ -0,0 +1,141 @@
1
+ import { PropType } from 'vue';
2
+ declare type ITypeDate = 'daterange' | 'datetimerange';
3
+ declare const _default: import("vue").DefineComponent<{
4
+ type: {
5
+ type: PropType<ITypeDate>;
6
+ default: string;
7
+ };
8
+ clearable: {
9
+ type: BooleanConstructor;
10
+ default: boolean;
11
+ };
12
+ startPlaceholder: {
13
+ type: StringConstructor;
14
+ default: string;
15
+ };
16
+ endPlaceholder: {
17
+ type: StringConstructor;
18
+ default: string;
19
+ };
20
+ componentCfg: {
21
+ type: ObjectConstructor;
22
+ default: () => {};
23
+ };
24
+ value: {
25
+ type: StringConstructor;
26
+ default: string;
27
+ };
28
+ }, {
29
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
30
+ type: {
31
+ type: PropType<ITypeDate>;
32
+ default: string;
33
+ };
34
+ clearable: {
35
+ type: BooleanConstructor;
36
+ default: boolean;
37
+ };
38
+ startPlaceholder: {
39
+ type: StringConstructor;
40
+ default: string;
41
+ };
42
+ endPlaceholder: {
43
+ type: StringConstructor;
44
+ default: string;
45
+ };
46
+ componentCfg: {
47
+ type: ObjectConstructor;
48
+ default: () => {};
49
+ };
50
+ value: {
51
+ type: StringConstructor;
52
+ default: string;
53
+ };
54
+ }>> & {
55
+ "onUpdate:value"?: ((...args: any[]) => any) | undefined;
56
+ }>>;
57
+ emit: (event: "update:value", ...args: any[]) => void;
58
+ valueCp: import("vue").Ref<any>;
59
+ dateFormat: import("vue").ComputedRef<string>;
60
+ rangeShortcuts: {
61
+ 今天: number[];
62
+ 昨天: number[];
63
+ 近一周: number[];
64
+ 近一月: number[];
65
+ };
66
+ handleChange: (val: any) => void;
67
+ CDatePicker: import("../../../../..").SFCWithInstall<import("vue").DefineComponent<{
68
+ updateUnchangedValue: {
69
+ type: BooleanConstructor;
70
+ };
71
+ onConfirm: {
72
+ type: FunctionConstructor;
73
+ };
74
+ }, {
75
+ attrs: {
76
+ [x: string]: unknown;
77
+ };
78
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
79
+ updateUnchangedValue: {
80
+ type: BooleanConstructor;
81
+ };
82
+ onConfirm: {
83
+ type: FunctionConstructor;
84
+ };
85
+ }>> & {}>>;
86
+ datePickerRef: import("vue").Ref<import("../../../../..").AnyObject | null>;
87
+ panelInstRef: import("vue").Ref<null>;
88
+ isDateTime: import("vue").ComputedRef<boolean>;
89
+ formatRef: import("vue").ComputedRef<string>;
90
+ panelFormatRef: import("vue").ComputedRef<string | [string, string]>;
91
+ focus: () => any;
92
+ blur: () => any;
93
+ onUpdateShow: (show: boolean) => void;
94
+ onConfirm: (...args: any[]) => void;
95
+ NDatePicker: any;
96
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
97
+ updateUnchangedValue: {
98
+ type: BooleanConstructor;
99
+ };
100
+ onConfirm: {
101
+ type: FunctionConstructor;
102
+ };
103
+ }>>, {
104
+ updateUnchangedValue: boolean;
105
+ }>>;
106
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:value"[], "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
107
+ type: {
108
+ type: PropType<ITypeDate>;
109
+ default: string;
110
+ };
111
+ clearable: {
112
+ type: BooleanConstructor;
113
+ default: boolean;
114
+ };
115
+ startPlaceholder: {
116
+ type: StringConstructor;
117
+ default: string;
118
+ };
119
+ endPlaceholder: {
120
+ type: StringConstructor;
121
+ default: string;
122
+ };
123
+ componentCfg: {
124
+ type: ObjectConstructor;
125
+ default: () => {};
126
+ };
127
+ value: {
128
+ type: StringConstructor;
129
+ default: string;
130
+ };
131
+ }>> & {
132
+ "onUpdate:value"?: ((...args: any[]) => any) | undefined;
133
+ }, {
134
+ type: ITypeDate;
135
+ value: string;
136
+ clearable: boolean;
137
+ startPlaceholder: string;
138
+ endPlaceholder: string;
139
+ componentCfg: Record<string, any>;
140
+ }>;
141
+ export default _default;
@@ -0,0 +1 @@
1
+ import{defineComponent as e,ref as a,computed as t,watch as l,openBlock as r,createBlock as u,unref as d}from"vue";import f from"../../../../../date-picker/index.js";import s from"moment";import{isString as n}from"lodash-es";import o from"../../../../../../_virtual/plugin-vue_export-helper.js";var p=o(e({__name:"DateRangeOut",props:{type:{type:String,default:"daterange"},clearable:{type:Boolean,default:!1},startPlaceholder:{type:String,default:"起始"},endPlaceholder:{type:String,default:"截止"},componentCfg:{type:Object,default:()=>({})},value:{type:String,default:""}},emits:["update:value"],setup(e,{emit:o}){const p=e,c=a(),v=t((()=>{let e="";switch(p.type){case"daterange":e="YYYY-MM-DD";break;case"datetimerange":e="YYYY-MM-DD HH:mm:ss"}return e})),i={"今天":[s().startOf("day").valueOf(),s().endOf("day").valueOf()],"昨天":[s().subtract(1,"days").startOf("day").valueOf(),s().subtract(1,"days").endOf("day").valueOf()],"近一周":[s().subtract(1,"w").startOf("day").valueOf(),s().endOf("day").valueOf()],"近一月":[s().subtract(1,"months").startOf("day").valueOf(),s().endOf("day").valueOf()]};function m(e){if(e){const[a,t]=e,l=`${s(a).format(v.value)} ~ ${s(t).format(v.value)}`;o("update:value",l)}else o("update:value",e)}return l((()=>p.value),(e=>{if(e&&n(e)&&e.includes("~")){const[a,t]=e.split("~");c.value=[s(a.trim()).valueOf(),s(t.trim()).valueOf()]}else c.value=null}),{immediate:!0}),(a,t)=>(r(),u(d(f),{type:e.type,clearable:e.clearable,startPlaceholder:e.startPlaceholder,endPlaceholder:e.endPlaceholder,value:c.value,shortcuts:i,"onUpdate:value":m},null,8,["type","clearable","startPlaceholder","endPlaceholder","value"]))}}),[["__file","DateRangeOut.vue"]]);export{p as default};
@@ -1,5 +1,6 @@
1
1
  import CheckboxGroup from './CheckboxGroup.vue';
2
2
  import InputNumberGroup from './InputNumberGroup.vue';
3
3
  import Date from './Date.vue';
4
- import DateRange from './DateRange.vue';
5
- export { CheckboxGroup, InputNumberGroup, Date, DateRange };
4
+ import DateRangeInner from './DateRangeInner.vue';
5
+ import DateRangeOut from './DateRangeOut.vue';
6
+ export { CheckboxGroup, InputNumberGroup, Date, DateRangeInner, DateRangeOut };
@@ -1 +1 @@
1
- export{default as CheckboxGroup}from"./CheckboxGroup.vue.js";export{default as InputNumberGroup}from"./InputNumberGroup.vue.js";export{default as Date}from"./Date.vue.js";export{default as DateRange}from"./DateRange.vue.js";
1
+ export{default as CheckboxGroup}from"./CheckboxGroup.vue.js";export{default as InputNumberGroup}from"./InputNumberGroup.vue.js";export{default as Date}from"./Date.vue.js";export{default as DateRangeInner}from"./DateRangeInner.vue.js";export{default as DateRangeOut}from"./DateRangeOut.vue.js";
@@ -15,20 +15,41 @@ export declare const DatePresetValEnums: {
15
15
  MONTH_START: string;
16
16
  MONTH_END: string;
17
17
  };
18
- export declare const DateRangeValEnums: {
18
+ export declare const DateRangeInnerValEnums: {
19
19
  TODAY: string;
20
20
  TOMORROW: string;
21
21
  YESTERDAY: string;
22
22
  THIS_WEEK: string;
23
23
  NEXT_WEEK: string;
24
- PREV_WEEK: string;
24
+ LAST_WEEK: string;
25
25
  THIS_MONTH: string;
26
+ LAST_MONTH: string;
26
27
  NEXT_MONTH: string;
27
- PREV_MONTH: string;
28
- THIS_QUATER: string;
29
- NEXT_QUATER: string;
30
- PREV_QUATER: string;
28
+ THIS_QUARTER: string;
29
+ LAST_QUARTER: string;
30
+ NEXT_QUARTER: string;
31
31
  THIS_YEAR: string;
32
+ LAST_YEAR: string;
32
33
  NEXT_YEAR: string;
33
- PREV_YEAR: string;
34
+ };
35
+ export declare const DateRangeOutDefEnums: {
36
+ PAST_WEEK: string;
37
+ PAST_MONTH: string;
38
+ PAST_HALF_YEAR: string;
39
+ TODAY: string;
40
+ TOMORROW: string;
41
+ YESTERDAY: string;
42
+ THIS_WEEK: string;
43
+ NEXT_WEEK: string;
44
+ LAST_WEEK: string;
45
+ THIS_MONTH: string;
46
+ LAST_MONTH: string;
47
+ NEXT_MONTH: string;
48
+ THIS_QUARTER: string;
49
+ LAST_QUARTER: string;
50
+ NEXT_QUARTER: string;
51
+ THIS_YEAR: string;
52
+ LAST_YEAR: string;
53
+ NEXT_YEAR: string;
54
+ CUSTOM: string;
34
55
  };
@@ -1 +1 @@
1
- const T={CUSTOM:"CUSTOM",NOW:"NOW",TODAY:"TODAY",TODAY_START:"TODAY_START",TODAY_END:"TODAY_END",TOMORROW:"TOMORROW",TOMORROW_START:"TOMORROW_START",TOMORROW_END:"TOMORROW_END",YESTERDAY:"YESTERDAY",YESTERDAY_START:"YESTERDAY_START",YESTERDAY_END:"YESTERDAY_END",WEEK_START:"THIS_WEEK_START",WEEK_END:"THIS_WEEK_END",MONTH_START:"THIS_MONTH_START",MONTH_END:"THIS_MONTH_END"},E={TODAY:"TODAY",TOMORROW:"TOMORROW",YESTERDAY:"YESTERDAY",THIS_WEEK:"THIS_WEEK",NEXT_WEEK:"NEXT_WEEK",PREV_WEEK:"PREV_WEEK",THIS_MONTH:"THIS_MONTH",NEXT_MONTH:"NEXT_MONTH",PREV_MONTH:"PREV_MONTH",THIS_QUATER:"THIS_QUATER",NEXT_QUATER:"NEXT_QUATER",PREV_QUATER:"PREV_QUATER",THIS_YEAR:"THIS_YEAR",NEXT_YEAR:"NEXT_YEAR",PREV_YEAR:"PREV_YEAR"};export{T as DatePresetValEnums,E as DateRangeValEnums};
1
+ const T={CUSTOM:"CUSTOM",NOW:"NOW",TODAY:"TODAY",TODAY_START:"TODAY_START",TODAY_END:"TODAY_END",TOMORROW:"TOMORROW",TOMORROW_START:"TOMORROW_START",TOMORROW_END:"TOMORROW_END",YESTERDAY:"YESTERDAY",YESTERDAY_START:"YESTERDAY_START",YESTERDAY_END:"YESTERDAY_END",WEEK_START:"THIS_WEEK_START",WEEK_END:"THIS_WEEK_END",MONTH_START:"THIS_MONTH_START",MONTH_END:"THIS_MONTH_END"},E={TODAY:"TODAY",TOMORROW:"TOMORROW",YESTERDAY:"YESTERDAY",THIS_WEEK:"THIS_WEEK",NEXT_WEEK:"NEXT_WEEK",LAST_WEEK:"LAST_WEEK",THIS_MONTH:"THIS_MONTH",LAST_MONTH:"LAST_MONTH",NEXT_MONTH:"NEXT_MONTH",THIS_QUARTER:"THIS_QUARTER",LAST_QUARTER:"LAST_QUARTER",NEXT_QUARTER:"NEXT_QUARTER",THIS_YEAR:"THIS_YEAR",LAST_YEAR:"LAST_YEAR",NEXT_YEAR:"NEXT_YEAR"},A={CUSTOM:"CUSTOM",...E,PAST_WEEK:"PAST_WEEK",PAST_MONTH:"PAST_MONTH",PAST_HALF_YEAR:"PAST_HALF_YEAR"};export{T as DatePresetValEnums,E as DateRangeInnerValEnums,A as DateRangeOutDefEnums};
@@ -4,3 +4,4 @@ export declare const getAllDateRangeInfo: (format?: string) => {
4
4
  value: string | number | never[];
5
5
  }[];
6
6
  export declare const formatDateRangeInfo: (key: string, format?: string) => string | number | never[];
7
+ export declare const presetValToDateRangestr: (presetVal: string, format?: string) => string | null;
@@ -1 +1 @@
1
- import{DatePresetValEnums as t,DateRangeValEnums as a}from"../enums.js";import{DateRangeOptions as r}from"../basicData.js";import d from"moment";const e=new Map([[t.NOW,()=>d()],[t.TODAY,()=>d().startOf("day")],[t.TODAY_START,()=>d().startOf("day")],[t.TODAY_END,()=>d().endOf("day")],[t.TOMORROW,()=>d().add(1,"days").startOf("day")],[t.TOMORROW_START,()=>d().add(1,"days").startOf("day")],[t.TOMORROW_END,()=>d().add(1,"days").endOf("day")],[t.YESTERDAY,()=>d().subtract(1,"days").startOf("day")],[t.YESTERDAY_START,()=>d().subtract(1,"days").startOf("day")],[t.YESTERDAY_END,()=>d().subtract(1,"days").endOf("day")],[t.WEEK_START,()=>d().startOf("week")],[t.WEEK_END,()=>d().endOf("week")],[t.MONTH_START,()=>d().startOf("month")],[t.MONTH_END,()=>d().endOf("month")]]),O=(t,a="x")=>{if(!e.has(t))return;const r=e.get(t)().format(a);return"x"===a||"X"===a?Number(r):r},s=new Map([[a.TODAY,()=>[d().startOf("day"),d().endOf("day")]],[a.TOMORROW,()=>[d().add(1,"days").startOf("day"),d().add(1,"days").endOf("day")]],[a.YESTERDAY,()=>[d().subtract(1,"days").startOf("day"),d().subtract(1,"days").endOf("day")]],[a.THIS_WEEK,()=>[d().startOf("week"),d().endOf("week")]],[a.NEXT_WEEK,()=>[d().add(1,"w").startOf("week"),d().add(1,"w").endOf("week")]],[a.PREV_WEEK,()=>[d().subtract(1,"w").startOf("week"),d().subtract(1,"w").endOf("week")]],[a.THIS_MONTH,()=>[d().startOf("month"),d().endOf("month")]],[a.NEXT_MONTH,()=>[d().add(1,"months").startOf("month"),d().add(1,"months").endOf("month")]],[a.PREV_MONTH,()=>[d().subtract(1,"months").startOf("month"),d().subtract(1,"months").endOf("month")]],[a.THIS_QUATER,()=>[d().startOf("quarter"),d().endOf("quarter")]],[a.NEXT_QUATER,()=>[d().add(1,"Q").startOf("quarter"),d().add(1,"Q").endOf("quarter")]],[a.PREV_QUATER,()=>[d().subtract(1,"Q").startOf("quarter"),d().subtract(1,"Q").endOf("quarter")]],[a.THIS_YEAR,()=>[d().startOf("year"),d().endOf("year")]],[a.NEXT_YEAR,()=>[d().add(1,"y").startOf("year"),d().add(1,"y").endOf("year")]],[a.PREV_YEAR,()=>[d().subtract(1,"y").startOf("year"),d().subtract(1,"y").endOf("year")]]]),f=(t="x")=>r.map((a=>{const r=n(a.value,t);return{label:a.label,value:r}})),n=(t,a="x")=>{const r=s.get(t);if(r){const[t,d]=r(),e=`${t.format(a)} ~ ${d.format(a)}`;return"x"===a||"X"===a?Number(e):e}return[]};export{n as formatDateRangeInfo,f as getAllDateRangeInfo,O as presetValToTimestamp};
1
+ import{DateRangeOutDefEnums as t,DatePresetValEnums as a,DateRangeInnerValEnums as r}from"../enums.js";import{DateRangeOptions as d}from"../basicData.js";import e from"moment";const O=new Map([[a.NOW,()=>e()],[a.TODAY,()=>e().startOf("day")],[a.TODAY_START,()=>e().startOf("day")],[a.TODAY_END,()=>e().endOf("day")],[a.TOMORROW,()=>e().add(1,"days").startOf("day")],[a.TOMORROW_START,()=>e().add(1,"days").startOf("day")],[a.TOMORROW_END,()=>e().add(1,"days").endOf("day")],[a.YESTERDAY,()=>e().subtract(1,"days").startOf("day")],[a.YESTERDAY_START,()=>e().subtract(1,"days").startOf("day")],[a.YESTERDAY_END,()=>e().subtract(1,"days").endOf("day")],[a.WEEK_START,()=>e().startOf("week")],[a.WEEK_END,()=>e().endOf("week")],[a.MONTH_START,()=>e().startOf("month")],[a.MONTH_END,()=>e().endOf("month")]]),s=(t,a="x")=>{if(!O.has(t))return;const r=O.get(t)().format(a);return"x"===a||"X"===a?Number(r):r},f=new Map([[r.TODAY,()=>[e().startOf("day"),e().endOf("day")]],[r.TOMORROW,()=>[e().add(1,"days").startOf("day"),e().add(1,"days").endOf("day")]],[r.YESTERDAY,()=>[e().subtract(1,"days").startOf("day"),e().subtract(1,"days").endOf("day")]],[r.THIS_WEEK,()=>[e().startOf("week"),e().endOf("week")]],[r.NEXT_WEEK,()=>[e().add(1,"w").startOf("week"),e().add(1,"w").endOf("week")]],[r.LAST_WEEK,()=>[e().subtract(1,"w").startOf("week"),e().subtract(1,"w").endOf("week")]],[r.THIS_MONTH,()=>[e().startOf("month"),e().endOf("month")]],[r.NEXT_MONTH,()=>[e().add(1,"months").startOf("month"),e().add(1,"months").endOf("month")]],[r.LAST_MONTH,()=>[e().subtract(1,"months").startOf("month"),e().subtract(1,"months").endOf("month")]],[r.THIS_QUARTER,()=>[e().startOf("quarter"),e().endOf("quarter")]],[r.NEXT_QUARTER,()=>[e().add(1,"Q").startOf("quarter"),e().add(1,"Q").endOf("quarter")]],[r.LAST_QUARTER,()=>[e().subtract(1,"Q").startOf("quarter"),e().subtract(1,"Q").endOf("quarter")]],[r.THIS_YEAR,()=>[e().startOf("year"),e().endOf("year")]],[r.NEXT_YEAR,()=>[e().add(1,"y").startOf("year"),e().add(1,"y").endOf("year")]],[r.LAST_YEAR,()=>[e().subtract(1,"y").startOf("year"),e().subtract(1,"y").endOf("year")]]]),n=(t="x")=>d.map((a=>{const r=T(a.value,t);return{label:a.label,value:r}})),T=(t,a="x")=>{const r=f.get(t);if(r){const[t,d]=r(),e=`${t.format(a)} ~ ${d.format(a)}`;return"x"===a||"X"===a?Number(e):e}return[]},y=new Map([...f,[t.PAST_WEEK,()=>[e().subtract(1,"w").startOf("day"),e().endOf("day")]],[t.PAST_MONTH,()=>[e().subtract(1,"months").startOf("day"),e().endOf("day")]],[t.PAST_HALF_YEAR,()=>[e().subtract(6,"months").startOf("day"),e().endOf("day")]]]),u=(t,a="x")=>{if(!y.has(t))return null;const r=y.get(t);if(r){const[t,d]=r();return`${t.format(a)} ~ ${d.format(a)}`}return null};export{T as formatDateRangeInfo,n as getAllDateRangeInfo,u as presetValToDateRangestr,s as presetValToTimestamp};
@@ -1 +1 @@
1
- import{defineComponent as e,h as t}from"vue";import{WidgetTypeEnums as i}from"../../types/enums.js";import{WidgetCfgMaps as r}from"./widgetCfgMaps.js";import n from"../../../../../_virtual/plugin-vue_export-helper.js";const a=[i.DATE,i.DATE_TIME,i.CHECKBOX_GROUP];var l=n(e({props:{cfg:{type:Object,required:!0},modelValue:{type:[Array,String,Number]},filterApiConfig:{type:Object}},emits:["update:modelValue","outFilterChange","changeInit"],computed:{valueCp(){return this.cfg.value}},data:()=>({initialProps:{}}),methods:{search(){this.$emit("outFilterChange")},getEleWidth(e){const{widgetType:t,widgetCfg:r,filterExplicit:n}=e;if(a.includes(t))return;const l=i.SELECT===t&&r.multiple?"200px":"100%";return{width:0===n?"100%":e.advanceColWidth?`${e.advanceColWidth}px`:l}},initComponentProps(e){const{_frontId:t,widgetType:i,alias:n,title:a,placeholder:l,widgetCfg:s,rangeFilter:o,filterExplicit:p}=e,{props:h,handlerProps:d}=r.get(i);let u={...h};d&&(u=d(u,{...s,title:n||a,rangeFilter:o,_frontId:t,filterExplicit:p})),!o&&l&&(u.placeholder=l),this.initialProps=u,u.value&&(this.valueCp=u.value)},generateWidget(e){const{widgetType:i}=e;if(!r.has(i))return null;const{value:n}=e,{component:a,style:l,eventsBySearch:s=[]}=r.get(i),o={...this.initialProps,value:n,filterApiConfig:this.filterApiConfig},p=s.reduce(((e,t)=>{const{name:i,handler:r}=t;let n=this.search;return r&&(n=e=>{r(e,this.search,o)}),{...e,[`on${i}`]:n}}),{});return t(a,{...l,...o,style:this.getEleWidth(e),value:this.valueCp,"onUpdate:value":e=>this.handleUpdate(e),onChangeInitState:(...e)=>this.handleChangeInitState(...e),...p})},handleUpdate(e){this.$emit("update:modelValue",e)},handleChangeInitState(e,t){this.$emit("changeInit",e,t)}},created(){this.initComponentProps(this.cfg)},render(){return this.generateWidget(this.cfg)}}),[["__file","index.vue"]]);export{l as default};
1
+ import{defineComponent as e,h as t}from"vue";import{WidgetTypeEnums as i}from"../../types/enums.js";import{WidgetCfgMaps as n}from"./widgetCfgMaps.js";import r from"../../../../../_virtual/plugin-vue_export-helper.js";const a=[i.DATE,i.DATE_TIME,i.CHECKBOX_GROUP];var l=r(e({props:{cfg:{type:Object,required:!0},modelValue:{type:[Array,String,Number]},filterApiConfig:{type:Object}},emits:["update:modelValue","outFilterChange","changeInit"],computed:{valueCp(){return this.cfg.value}},data:()=>({initialProps:{}}),methods:{search(){this.$emit("outFilterChange")},getEleWidth(e){const{widgetType:t,widgetCfg:n,filterExplicit:r}=e;if(a.includes(t))return;const l=i.SELECT===t&&n.multiple?"200px":"100%";return{width:0===r?"100%":e.advanceColWidth?`${e.advanceColWidth}px`:l}},initComponentProps(e){const{_frontId:t,widgetType:i,alias:r,title:a,placeholder:l,widgetCfg:o,filterExplicit:s}=e,{props:p,handlerProps:h}=n.get(i);let d={...p};h&&(d=h(d,{...o,title:r||a,_frontId:t,filterExplicit:s})),l&&(d.placeholder=l),this.initialProps=d,d.value&&(this.valueCp=d.value)},generateWidget(e){const{widgetType:i}=e;if(!n.has(i))return null;const{value:r}=e,{component:a,style:l,eventsBySearch:o=[]}=n.get(i),s={...this.initialProps,value:r,componentCfg:e,filterApiConfig:this.filterApiConfig},p=o.reduce(((e,t)=>{const{name:i,handler:n}=t;let r=this.search;return n&&(r=e=>{n(e,this.search,s)}),{...e,[`on${i}`]:r}}),{});return t(a,{...l,...s,style:this.getEleWidth(e),value:this.valueCp,"onUpdate:value":e=>this.handleUpdate(e),onChangeInitState:(...e)=>this.handleChangeInitState(...e),...p})},handleUpdate(e){this.$emit("update:modelValue",e)},handleChangeInitState(e,t){this.$emit("changeInit",e,t)}},created(){this.initComponentProps(this.cfg)},render(){return this.generateWidget(this.cfg)}}),[["__file","index.vue"]]);export{l as default};