cnhis-design-vue 3.2.16-beta.13 → 3.2.16-beta.17

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 (35) hide show
  1. package/es/components/classification/src/components/table-modal/index.vue.d.ts +3 -0
  2. package/es/components/expand-field/index.d.ts +28 -1
  3. package/es/components/expand-field/src/components/FormItemPerson.vue.d.ts +28 -1
  4. package/es/components/expand-field/src/components/PersonModal.vue.d.ts +28 -1
  5. package/es/components/expand-field/src/components/form.vue.d.ts +28 -1
  6. package/es/components/expand-field/src/index.vue.d.ts +28 -1
  7. package/es/components/field-set/src/FieldColor.vue.d.ts +4 -4
  8. package/es/components/field-set/src/FieldFilter.vue.d.ts +4 -4
  9. package/es/components/field-set/src/FieldSet.vue.d.ts +5 -5
  10. package/es/components/field-set/src/components/table-row.vue.d.ts +4 -4
  11. package/es/components/form-config/index.d.ts +147 -24
  12. package/es/components/form-config/src/FormConfig.vue.d.ts +147 -24
  13. package/es/components/form-config/src/FormConfig.vue2.js +1 -1
  14. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +8 -0
  15. package/es/components/form-config/src/components/FormConfigEventSetting.vue.d.ts +210 -95
  16. package/es/components/form-config/src/components/FormConfigEventSetting.vue2.js +1 -1
  17. package/es/components/form-render/src/components/renderer/formItem.js +1 -1
  18. package/es/components/form-render/src/components/renderer/text.js +1 -1
  19. package/es/components/form-render/src/hooks/useFieldNormalize.js +1 -1
  20. package/es/components/form-render/src/types/fieldItem.d.ts +3 -1
  21. package/es/components/iho-chat/index.d.ts +1 -1
  22. package/es/components/iho-chat/src/Index.vue.d.ts +1 -1
  23. package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
  24. package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
  25. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  26. package/es/components/select-person/index.d.ts +28 -1
  27. package/es/components/select-person/src/SelectPerson.vue.d.ts +15 -1
  28. package/es/components/select-person/src/SelectPerson.vue2.js +1 -1
  29. package/es/components/select-person/src/index.vue.d.ts +28 -1
  30. package/es/components/select-person/src/index.vue2.js +1 -1
  31. package/es/components/shortcut-setter/index.d.ts +2 -0
  32. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +2 -0
  33. package/es/env.d.ts +25 -25
  34. package/es/shared/package.json.js +1 -1
  35. package/package.json +2 -2
@@ -1 +1 @@
1
- import{defineComponent as e,ref as l,watchEffect as o,watch as n,inject as i,computed as a,reactive as t,h as d,openBlock as s,createElementBlock as u,createVNode as r,unref as p,withCtx as c,createTextVNode as v,normalizeStyle as _,createElementVNode as f,Fragment as m,renderList as g,createBlock as h,toDisplayString as y,withModifiers as F,createCommentVNode as b,normalizeClass as k}from"vue";import{useTheme as w}from"../../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{cloneDeep as C,isEmpty as O,isArray as x,union as j,isString as B,isObject as T,omit as E}from"lodash-es";import"@vue/shared";import{traverse as L}from"../../../../shared/utils/index.js";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{HelpCircleSharp as N}from"@vicons/ionicons5";import{useDialog as U,NSelect as R,NButton as I,NModal as P,NScrollbar as z,NCollapse as V,NCollapseItem as q,NEllipsis as A,NThing as S,NSpace as $,NInputGroup as D,NInput as H,NTooltip as M,NIcon as W,NEmpty as X}from"naive-ui";import"../../../../shared/hooks/useScrollLoading.js";import{conditionOppositeMap as G,connectionTypeOptions as J,connectionTypeOppositeMap as K,InjectionFieldList as Q,conditionTypeOptions as Y}from"../constants/index.js";import Z from"../../../form-render/index.js";const ee={class:"form-config__connectionOperation"},le={class:"form-config__connectionConditionHeaderDesc"},oe={class:"form-config__connectionCondition"},ne={class:"form-config__connectionConditionItem"},ie={style:{"margin-right":"8px"}},ae={class:"form-config__connectionFieldType"},te=["onClick"],de={key:0},se={style:{display:"inline-flex","align-items":"center",gap:"4px","margin-bottom":"4px"}};var ue=e({__name:"FormConfigEventSetting",props:{modelValue:{default:()=>[]}},emits:["update:modelValue","validateFailure"],setup(ue,{emit:re}){var pe,ce;const ve=ue,_e=w(),fe=l([]),me=l("");function ge(){fe.value.push({conObj:[]}),me.value=fe.value.length-1+""}function he(e){return e.__oppositeBindField?`已绑定互斥联动: 联动${fe.value.findIndex((l=>l===e.__oppositeBindField))+1}`:e.__oppositeTargetField?`已关联互斥联动: 联动${fe.value.findIndex((l=>l===e.__oppositeTargetField))+1}`:void 0}function ye(e){return null==e?void 0:e.replace(/(AND|OR)/g,(e=>"AND"===e?"OR":"AND"))}function Fe(e){var l;const o=e.__oppositeTargetField||{conObj:[]};return o.conObj=C(e.conObj),null==(l=o.conObj)||l.forEach((e=>{e.con=G[e.con]})),o.sqlExpression=ye(e.sqlExpression),J.forEach((({value:l})=>{O(e[l])?Reflect.deleteProperty(o,K[l]):o[K[l]]=C(e[l])})),o.__oppositeBindField=e,o}function be(e,l){var o,n,i,a;return(null==(o=e.conObj)?void 0:o.length)===(null==(n=l.conObj)?void 0:n.length)&&(!(e.conObj&&l.conObj&&e.conObj.some((e=>!l.conObj.find((l=>{return n=l,(o=e).field_key===n.field_key&&o.con&&G[o.con]===n.con&&o.value===n.value;var o,n})))))&&(i=e.sqlExpression,a=l.sqlExpression,(!i&&!a||ye(i)===a)&&!J.some((({value:o})=>{return n=e[o],i=l[K[o]],!(n&&i?n.length===i.length&&n.every((e=>i.some((l=>e===l)))):!n&&!i);var n,i}))))}function ke(e){me.value=e[0]}function we(e){const l=fe.value[e];if(!l)return"";const o=l.conObj||[],n=J.reduce(((e,{value:o})=>(x(l[o])&&l[o].length&&e.push(...l[o].map(a)),e)),[]),i=j([...o.map((({field_key:e})=>a(e))),...n]).filter((e=>!!e));return i.length?`( 相关字段: ${i} )`:"";function a(e){var l,o;return null!=(o=null==(l=xe.value.find((l=>B(e)?e===l.key:!!T(e)&&Reflect.get(e,"field")===l.key)))?void 0:l.name)?o:e}}o((()=>{fe.value.forEach((e=>{e.__oppositeTargetField&&(e.__oppositeTargetField=Fe(e))}))}));const Ce=l(!1);n(Ce,(e=>{e&&(fe.value=C(ve.modelValue),fe.value.forEach(((e,l)=>{if(e.__oppositeBindField||e.__oppositeTargetField)return;const o=fe.value.find(((o,n)=>n!==l&&!o.__oppositeBindField&&!o.__oppositeTargetField&&be(o,e)));o&&(o.__oppositeBindField=e,e.__oppositeTargetField=o)})))}));const Oe=i(Q,l([])),xe=a((()=>{const e=[];return L(Oe.value,(l=>{!["NEWLINE","LINE_BAR","COMPLEX","COMBINATION"].includes(l.type)&&e.push(l)})),e})),je=a((()=>xe.value.filter((e=>["INPUT","SELECT","SEARCH","REMOTE_SEARCH"].includes(e.type))))),Be=t([]),Te=U();async function Ee(){var e,l;Te.warning({title:"提示",content:"直接关闭弹窗会丢失已编辑的配置, 确定要关闭吗?",positiveText:(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.27"))||"确定",negativeText:(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.28"))||"取消",onPositiveClick:()=>{Ce.value=!1,fe.value=[]}})}async function Le(){try{await function(){var e;const l=[];return null==(e=fe.value)||e.forEach(((e,o)=>{const n=[];e.conObj&&e.conObj.length?e.conObj.forEach(((e,l)=>{e.field_key||n.push(`条件${l+1}字段为空`),e.con||n.push(`条件${l+1}判断类型为空`),["NULL","NOT_NULL"].includes(e.con)||!e.con||e.value||n.push(`条件${l+1}值为空`)})):n.push("联动条件为空"),J.every((({value:l})=>!e[l]||!e[l].length))&&n.push("联动字段为空"),n.length&&l.push(`联动${o+1}: ${n}`)})),l.length?Promise.reject(l):Promise.resolve()}(),Ce.value=!1,re("update:modelValue",fe.value.map((e=>E(e,["__oppositeBindField","__oppositeTargetField"]))))}catch(e){re("validateFailure",e)}}const Ne=[{alias:"值设置联动",val_key:"setValueField",html_type:"COMBINATION",elem_width:12,jsonCombination:!1,children:[{alias:(null==(pe=window.getLanguageByCode)?void 0:pe.call(window,"10010.1.9"))||"字段",val_key:"field",html_type:"SELECT2",elem_width:6,componentProps:{labelField:"name",valueField:"key"}},{alias:(null==(ce=window.getLanguageByCode)?void 0:ce.call(window,"10010.1.22"))||"值",elem_width:5,val_key:"value",html_type:"INPUT"}]}],Ue={SELECT2:e({inheritAttrs:!1,props:{value:{},onChange:{type:Function}},setup:e=>()=>d(R,{value:e.value,onUpdateValue:e.onChange,options:je.value,labelField:"name",valueField:"key",filterable:!0})})};return(e,l)=>(s(),u("section",null,[r(p(I),{size:"small",onClick:l[0]||(l[0]=e=>Ce.value=!0)},{default:c((()=>[v("调整联动绑定")])),_:1}),r(p(P),{show:Ce.value,"onUpdate:show":l[1]||(l[1]=e=>Ce.value=e),closable:!1,bordered:!1,"show-icon":!1,title:"联动绑定设置",preset:"dialog","mask-closable":!1,"close-on-esc":!1,style:_({width:"1100px",...p(_e)}),class:"form-config__connectionModal"},{action:c((()=>[r(p(I),{size:"small",onClick:Ee},{default:c((()=>{var e;return[v((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.28"))||"取消")]})),_:1}),r(p(I),{size:"small",onClick:Le,type:"primary"},{default:c((()=>{var e;return[v((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.27"))||"确定")]})),_:1})])),default:c((()=>[f("header",ee,[r(p(I),{onClick:ge,size:"small"},{default:c((()=>[v("新增联动")])),_:1})]),r(p(z),{style:{"max-height":"500px","min-height":"500px"}},{default:c((()=>[r(p(V),{accordion:"","expanded-names":me.value,"onUpdate:expandedNames":ke},{default:c((()=>[(s(!0),u(m,null,g(fe.value,((e,l)=>(s(),h(p(q),{name:l+""},{header:c((()=>[v(" 联动"+y(l+1)+" ",1),r(p(A),{class:"form-config__connectionConditionHeaderDesc",style:{"max-width":"500px"}},{default:c((()=>[v(y(we(l)),1)])),_:2},1024)])),"header-extra":c((()=>[e.__oppositeBindField||e.__oppositeTargetField?(s(),u(m,{key:1},[f("span",le,"( "+y(he(e))+" )",1),r(p(I),{quaternary:"",type:"primary",size:"small",onClick:F((l=>function(e){const l=e.__oppositeTargetField||e.__oppositeBindField;l&&[l,e].forEach((e=>{Reflect.deleteProperty(e,"__oppositeBindField"),Reflect.deleteProperty(e,"__oppositeTargetField")}))}(e)),["stop"])},{default:c((()=>[v("解除互斥")])),_:2},1032,["onClick"])],64)):(s(),h(p(I),{key:0,onClick:F((l=>function(e){fe.value.push(e.__oppositeTargetField=Fe(e))}(e)),["stop"]),quaternary:"",type:"primary",size:"small"},{default:c((()=>[v(" 创建互斥条件 ")])),_:2},1032,["onClick"])),r(p(I),{onClick:F((e=>function(e){var l;const o=null==(l=fe.value)?void 0:l.splice(e,1);null==o||o.forEach((e=>{const l=e.__oppositeTargetField||e.__oppositeBindField;l&&(Reflect.deleteProperty(l,"__oppositeTargetField"),Reflect.deleteProperty(l,"__oppositeBindField"))})),Be.splice(e,1),!me.value||+me.value<e||(me.value=me.value===e+""?"":+me.value-1+"")}(l)),["stop"]),quaternary:"",type:"error",size:"small"},{default:c((()=>{var e;return[v((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.88"))||"移除")]})),_:2},1032,["onClick"])])),default:c((()=>[r(p(S),{class:"form-config__connectionWrapper"},{default:c((()=>[r(p($),{justify:"space-between",wrap:!1},{default:c((()=>[f("section",oe,[f("header",null,[v(" 条件 "),e.__oppositeBindField?b("v-if",!0):(s(),h(p(I),{key:0,size:"small",quaternary:"",type:"primary",onClick:l=>{var o;x((o=e).conObj)?o.conObj.push({}):o.conObj=[{}]}},{default:c((()=>[v(" 添加条件 ")])),_:2},1032,["onClick"]))]),r(p(z),{style:{"max-height":"145px","min-height":"145px"},class:"form-config__connectionWrapper"},{default:c((()=>[(s(!0),u(m,null,g(e.conObj||[],((l,o)=>(s(),u("div",ne,[f("span",ie,y(o+1),1),r(p(D),{size:"small"},{default:c((()=>[r(p(R),{value:l.field_key,"onUpdate:value":e=>l.field_key=e,disabled:!!e.__oppositeBindField,placeholder:"请选择字段",options:p(xe),"label-field":"name","value-field":"key",filterable:""},null,8,["value","onUpdate:value","disabled","options"]),r(p(R),{value:l.con,disabled:!!e.__oppositeBindField,"onUpdate:value":e=>function(e,l){e.con=l,["NOT_NULL","NULL"].includes(l)&&Reflect.deleteProperty(e,"value")}(l,e),placeholder:"请选择判断类型",options:p(Y)},null,8,["value","disabled","onUpdate:value","options"]),l.con&&!["NULL","NOT_NULL"].includes(l.con)?(s(),h(p(H),{key:0,disabled:!!e.__oppositeBindField,value:l.value,"onUpdate:value":e=>l.value=e,placeholder:"请输入值",clearable:""},null,8,["disabled","value","onUpdate:value"])):b("v-if",!0)])),_:2},1024),r(p(I),{disabled:!!e.__oppositeBindField,quaternary:"",onClick:l=>function(e,l){x(e.conObj)&&e.conObj.splice(l,1)}(e,o),type:"error",size:"small"},{default:c((()=>{var e;return[v((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.88"))||"移除")]})),_:2},1032,["disabled","onClick"])])))),256))])),_:2},1024)]),f("section",ae,[f("div",null,[(s(!0),u(m,null,g(p(J),(o=>{var n,i;return s(),u("div",{key:o.value,class:k({"is-active":Be[l]===o.value}),onClick:e=>Be[l]=o.value},y(o.label)+" ( "+y(null!=(i=null==(n=e[o.value])?void 0:n.length)?i:0)+" ) ",11,te)})),128))]),f("div",null,["setValueField"===Be[l]?(s(),u("section",de,[r(p(Z),{"field-list":Ne,"initial-data":{setValueField:e.setValueField},"label-placement":"left",components:Ue,onFormChange:l=>function(e,l){l.setValueField=e.fieldInstance.form.getValuesIn("setValueField")}(l,e)},null,8,["initial-data","onFormChange"])])):Be[l]?(s(),h(p(R),{key:1,value:e[Be[l]],"onUpdate:value":o=>e[Be[l]]=o,disabled:!!e.__oppositeBindField,multiple:"",placeholder:"请选择字段",options:p(xe),"label-field":"name","value-field":"key",filterable:"","max-tag-count":10},null,8,["value","onUpdate:value","disabled","options"])):b("v-if",!0)])])])),_:2},1024),f("section",null,[f("label",null,[f("span",se,[v(" 条件逻辑 "),r(p(M),null,{trigger:c((()=>[r(p(W),{size:"16",component:p(N)},null,8,["component"])])),default:c((()=>[v(" 非必填, 默认为需要全部满足. 示例: (1 AND 2) OR 3, 表示 条件1和2需要满足其一, 条件3必须满足 ")])),_:1})]),r(p(H),{value:e.sqlExpression,"onUpdate:value":l=>e.sqlExpression=l,disabled:!!e.__oppositeBindField,placeholder:"请输入条件逻辑"},null,8,["value","onUpdate:value","disabled"])])])])),_:2},1024)])),_:2},1032,["name"])))),256))])),_:1},8,["expanded-names"]),fe.value.length?b("v-if",!0):(s(),h(p(X),{key:0,size:"huge",style:{"margin-top":"20px"},description:"无联动配置"}))])),_:1})])),_:1},8,["show","style"])]))}});export{ue as default};
1
+ import{createElementVNode as e,defineComponent as l,ref as o,watchEffect as n,watch as i,inject as a,computed as t,reactive as d,openBlock as s,createElementBlock as r,createVNode as u,unref as p,withCtx as c,createTextVNode as v,normalizeStyle as f,Fragment as _,renderList as m,createBlock as g,toDisplayString as y,withModifiers as h,createCommentVNode as b,normalizeClass as k}from"vue";import{useTheme as F}from"../../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{cloneDeep as w,isEmpty as C,isArray as x,union as j,isString as O,isObject as B,omit as L}from"lodash-es";import"@vue/shared";import{traverse as E}from"../../../../shared/utils/index.js";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{HelpCircleSharp as T}from"@vicons/ionicons5";import{useDialog as U,NButton as N,NModal as R,NScrollbar as z,NCollapse as V,NCollapseItem as P,NEllipsis as q,NThing as A,NSpace as I,NInputGroup as D,NSelect as S,NInput as $,NTooltip as H,NIcon as M,NEmpty as W}from"naive-ui";import"../../../../shared/hooks/useScrollLoading.js";import{conditionOppositeMap as K,connectionTypeOptions as X,connectionTypeOppositeMap as G,InjectionFieldList as J,conditionTypeOptions as Q,EditAbleField as Y}from"../constants/index.js";import Z from"../../../form-render/index.js";import{findFieldItemByKey as ee}from"../utils/index.js";import"../../../../shared/components/VueDraggable/src/vuedraggable.js";import{useConfigurationField as le}from"../hooks/useConfigurationField.js";var oe;const ne={class:"form-config__connectionOperation"},ie={class:"form-config__connectionConditionHeaderDesc"},ae={class:"form-config__connectionCondition"},te={style:{"margin-right":"8px"}},de={class:"form-config__connectionFieldType"},se=["onClick"],re={key:0},ue={style:{"margin-bottom":"8px"}},pe=e("span",{style:{"word-break":"keep-all"}},(null==(oe=window.getLanguageByCode)?void 0:oe.call(window,"10010.1.9"))||"字段",-1),ce={key:1},ve={style:{display:"inline-flex","align-items":"center",gap:"4px","margin-bottom":"4px"}};var fe=l({__name:"FormConfigEventSetting",props:{modelValue:{default:()=>[]},bindFormRenderRef:null},emits:["update:modelValue","validateFailure"],setup(l,{emit:oe}){const fe=l,_e=F(),me=o([]),ge=o("");function ye(){me.value.push({conObj:[]}),ge.value=me.value.length-1+""}function he(e){return e.__oppositeBindField?`已绑定互斥联动: 联动${me.value.findIndex((l=>l===e.__oppositeBindField))+1}`:e.__oppositeTargetField?`已关联互斥联动: 联动${me.value.findIndex((l=>l===e.__oppositeTargetField))+1}`:void 0}function be(e){return null==e?void 0:e.replace(/(AND|OR)/g,(e=>"AND"===e?"OR":"AND"))}function ke(e){var l;const o=e.__oppositeTargetField||{conObj:[]};return o.conObj=w(e.conObj),null==(l=o.conObj)||l.forEach((e=>{e.con=K[e.con]})),o.sqlExpression=be(e.sqlExpression),X.forEach((({value:l})=>{C(e[l])?Reflect.deleteProperty(o,G[l]):o[G[l]]=w(e[l])})),o.__oppositeBindField=e,o}function Fe(e,l){var o,n,i,a;return(null==(o=e.conObj)?void 0:o.length)===(null==(n=l.conObj)?void 0:n.length)&&(!(e.conObj&&l.conObj&&e.conObj.some((e=>!l.conObj.find((l=>{return n=l,(o=e).field_key===n.field_key&&o.con&&K[o.con]===n.con&&o.value===n.value;var o,n})))))&&(i=e.sqlExpression,a=l.sqlExpression,(!i&&!a||be(i)===a)&&!X.some((({value:o})=>{return n=e[o],i=l[G[o]],!(n&&i?n.length===i.length&&n.every((e=>i.some((l=>e===l)))):!n&&!i);var n,i}))))}function we(e){ge.value=e[0]}function Ce(e){const l=me.value[e];if(!l)return"";const o=l.conObj||[],n=X.reduce(((e,{value:o})=>(x(l[o])&&l[o].length&&e.push(...l[o].map(a)),e)),[]),i=j([...o.map((({field_key:e})=>a(e))),...n]).filter((e=>!!e&&O(e)));return i.length?`( 相关字段: ${i} )`:"";function a(e){var l,o;return null!=(o=null==(l=Oe.value.find((l=>O(e)?e===l.key:!!B(e)&&Reflect.get(e,"field")===l.key)))?void 0:l.name)?o:e}}n((()=>{me.value.forEach((e=>{e.__oppositeTargetField&&(e.__oppositeTargetField=ke(e))}))}));const xe=o(!1);i(xe,(e=>{e&&(me.value=w(fe.modelValue),me.value.forEach(((e,l)=>{if(e.__oppositeBindField||e.__oppositeTargetField)return;const o=me.value.find(((o,n)=>n!==l&&!o.__oppositeBindField&&!o.__oppositeTargetField&&Fe(o,e)));o&&(o.__oppositeBindField=e,e.__oppositeTargetField=o)})))}));const je=a(J,o([])),Oe=t((()=>{const e=[];return E(je.value,(l=>{!["NEWLINE","LINE_BAR","COMPLEX","COMBINATION"].includes(l.type)&&e.push(l)})),e})),Be=["INPUT","SELECT","SEARCH","REMOTE_SEARCH"],Le=t((()=>Oe.value.filter((e=>{var l;return Be.includes(e.type)||(null==(l=e.originalSetting)?void 0:l.html_type)&&Be.includes(e.originalSetting.html_type)})))),Ee=d([]),Te=U();async function Ue(){var e,l;Te.warning({title:"提示",content:"直接关闭弹窗会丢失已编辑的配置, 确定要关闭吗?",positiveText:(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.27"))||"确定",negativeText:(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.28"))||"取消",onPositiveClick:()=>{xe.value=!1,me.value=[]}})}async function Ne(){try{await function(){var e;const l=[];return null==(e=me.value)||e.forEach(((e,o)=>{const n=[];e.conObj&&e.conObj.length?e.conObj.forEach(((e,l)=>{e.field_key||n.push(`条件${l+1}字段为空`),e.con||n.push(`条件${l+1}判断类型为空`),["NULL","NOT_NULL"].includes(e.con)||!e.con||e.value||n.push(`条件${l+1}值为空`)})):n.push("联动条件为空"),X.every((({value:l})=>!e[l]||!e[l].length))&&n.push("联动字段为空"),n.length&&l.push(`联动${o+1}: ${n}`)})),l.length?Promise.reject(l):Promise.resolve()}(),xe.value=!1,oe("update:modelValue",me.value.map((e=>L(e,["__oppositeBindField","__oppositeTargetField"]))))}catch(e){oe("validateFailure",e)}}const{generateFieldListByKeys:Re}=le(),ze=e=>{var l,o;const n=null!=(o=null==(l=fe.bindFormRenderRef)?void 0:l.getFieldList())?o:[];return[...Re([Y.DEFAULT_VALUE],Le.value.find((l=>l.key===e)),ee(n,e)).map((e=>{var l;return{...e,alias:(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.22"))||"值",decoratorProps:{showFeedback:!1}}}))]};return(l,o)=>(s(),r("section",null,[u(p(N),{size:"small",onClick:o[0]||(o[0]=e=>xe.value=!0)},{default:c((()=>[v("调整联动绑定")])),_:1}),u(p(R),{show:xe.value,"onUpdate:show":o[1]||(o[1]=e=>xe.value=e),closable:!1,bordered:!1,"show-icon":!1,title:"联动绑定设置",preset:"dialog","mask-closable":!1,"close-on-esc":!1,style:f({width:"1100px",...p(_e)}),class:"form-config__connectionModal"},{action:c((()=>[u(p(N),{size:"small",onClick:Ue},{default:c((()=>{var e;return[v((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.28"))||"取消")]})),_:1}),u(p(N),{size:"small",onClick:Ne,type:"primary"},{default:c((()=>{var e;return[v((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.27"))||"确定")]})),_:1})])),default:c((()=>[e("header",ne,[u(p(N),{onClick:ye,size:"small"},{default:c((()=>[v("新增联动")])),_:1})]),u(p(z),{style:{"max-height":"500px","min-height":"500px"}},{default:c((()=>[u(p(V),{accordion:"","expanded-names":ge.value,"onUpdate:expandedNames":we},{default:c((()=>[(s(!0),r(_,null,m(me.value,((l,o)=>(s(),g(p(P),{name:o+"",key:o},{header:c((()=>[v(" 联动"+y(o+1)+" ",1),u(p(q),{class:"form-config__connectionConditionHeaderDesc",style:{"max-width":"500px"}},{default:c((()=>[v(y(Ce(o)),1)])),_:2},1024)])),"header-extra":c((()=>[l.__oppositeBindField||l.__oppositeTargetField?(s(),r(_,{key:1},[e("span",ie,"( "+y(he(l))+" )",1),u(p(N),{quaternary:"",type:"primary",size:"small",onClick:h((e=>function(e){const l=e.__oppositeTargetField||e.__oppositeBindField;l&&[l,e].forEach((e=>{Reflect.deleteProperty(e,"__oppositeBindField"),Reflect.deleteProperty(e,"__oppositeTargetField")}))}(l)),["stop"])},{default:c((()=>[v("解除互斥")])),_:2},1032,["onClick"])],64)):(s(),g(p(N),{key:0,onClick:h((e=>function(e){me.value.push(e.__oppositeTargetField=ke(e))}(l)),["stop"]),quaternary:"",type:"primary",size:"small"},{default:c((()=>[v(" 创建互斥条件 ")])),_:2},1032,["onClick"])),u(p(N),{onClick:h((e=>function(e){var l;const o=null==(l=me.value)?void 0:l.splice(e,1);null==o||o.forEach((e=>{const l=e.__oppositeTargetField||e.__oppositeBindField;l&&(Reflect.deleteProperty(l,"__oppositeTargetField"),Reflect.deleteProperty(l,"__oppositeBindField"))})),Ee.splice(e,1),!ge.value||+ge.value<e||(ge.value=ge.value===e+""?"":+ge.value-1+"")}(o)),["stop"]),quaternary:"",type:"error",size:"small"},{default:c((()=>{var e;return[v((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.88"))||"移除")]})),_:2},1032,["onClick"])])),default:c((()=>[u(p(A),{class:"form-config__connectionWrapper"},{default:c((()=>[u(p(I),{justify:"space-between",wrap:!1},{default:c((()=>[e("section",ae,[e("header",null,[v(" 条件 "),l.__oppositeBindField?b("v-if",!0):(s(),g(p(N),{key:0,size:"small",quaternary:"",type:"primary",onClick:e=>{var o;x((o=l).conObj)?o.conObj.push({}):o.conObj=[{}]}},{default:c((()=>[v(" 添加条件 ")])),_:2},1032,["onClick"]))]),u(p(z),{style:{"max-height":"145px","min-height":"145px"},class:"form-config__connectionWrapper"},{default:c((()=>[(s(!0),r(_,null,m(l.conObj||[],((o,n)=>(s(),r("div",{class:"form-config__connectionConditionItem",key:n},[e("span",te,y(n+1),1),u(p(D),{size:"small"},{default:c((()=>[u(p(S),{value:o.field_key,"onUpdate:value":e=>o.field_key=e,disabled:!!l.__oppositeBindField,placeholder:"请选择字段",options:p(Oe),"label-field":"name","value-field":"key",filterable:""},null,8,["value","onUpdate:value","disabled","options"]),u(p(S),{value:o.con,disabled:!!l.__oppositeBindField,"onUpdate:value":e=>function(e,l){e.con=l,["NOT_NULL","NULL"].includes(l)&&Reflect.deleteProperty(e,"value")}(o,e),placeholder:"请选择判断类型",options:p(Q)},null,8,["value","disabled","onUpdate:value","options"]),o.con&&!["NULL","NOT_NULL"].includes(o.con)?(s(),g(p($),{key:0,disabled:!!l.__oppositeBindField,value:o.value,"onUpdate:value":e=>o.value=e,placeholder:"请输入值",clearable:""},null,8,["disabled","value","onUpdate:value"])):b("v-if",!0)])),_:2},1024),u(p(N),{disabled:!!l.__oppositeBindField,quaternary:"",onClick:e=>function(e,l){x(e.conObj)&&e.conObj.splice(l,1)}(l,n),type:"error",size:"small"},{default:c((()=>{var e;return[v((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.88"))||"移除")]})),_:2},1032,["disabled","onClick"])])))),128))])),_:2},1024)]),e("section",de,[e("div",null,[(s(!0),r(_,null,m(p(X),(e=>{var n,i;return s(),r("div",{key:e.value,class:k({"is-active":Ee[o]===e.value}),onClick:l=>Ee[o]=e.value},y(e.label)+" ( "+y(null!=(i=null==(n=l[e.value])?void 0:n.length)?i:0)+" ) ",11,se)})),128))]),e("div",null,["setValueField"===Ee[o]?(s(),r("section",re,[e("header",ue,[u(p(N),{type:"primary",size:"tiny",onClick:e=>(e=>{e.setValueField=e.setValueField||[],e.setValueField.push({})})(l)},{default:c((()=>{var e;return[v((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.279"))||"新增")]})),_:2},1032,["onClick"])]),(s(!0),r(_,null,m(l.setValueField||[],((e,o)=>(s(),r("section",{style:{display:"flex","justify-content":"space-between",gap:"16px","align-items":"center","margin-bottom":"4px"},key:o},[u(p(I),{wrap:!1,align:"center"},{default:c((()=>[pe,u(p(S),{style:{width:"130px"},value:e.field,"onUpdate:value":l=>e.field=l,placeholder:"请选择字段",options:p(Le),"label-field":"name","value-field":"key",filterable:""},null,8,["value","onUpdate:value","options"])])),_:2},1024),e.field?(s(),g(p(Z),{style:{flex:"1"},column:6,key:e.field,"field-list":ze(e.field),"initial-data":e,"label-placement":"left",onFormChange:l=>function(e,l){l.value=e.fieldInstance.form.getValuesIn("value")}(l,e)},null,8,["field-list","initial-data","onFormChange"])):(s(),r("i",ce)),u(p(N),{type:"error",size:"tiny",onClick:e=>((e,l)=>{var o;null==(o=e.setValueField)||o.splice(l,1)})(l,o)},{default:c((()=>[v(" x ")])),_:2},1032,["onClick"])])))),128))])):Ee[o]?(s(),g(p(S),{key:1,value:l[Ee[o]],"onUpdate:value":e=>l[Ee[o]]=e,disabled:!!l.__oppositeBindField,multiple:"",placeholder:"请选择字段",options:p(Oe),"label-field":"name","value-field":"key",filterable:"","max-tag-count":10},null,8,["value","onUpdate:value","disabled","options"])):b("v-if",!0)])])])),_:2},1024),e("section",null,[e("label",null,[e("span",ve,[v(" 条件逻辑 "),u(p(H),null,{trigger:c((()=>[u(p(M),{size:"16",component:p(T)},null,8,["component"])])),default:c((()=>[v(" 非必填, 默认为需要全部满足. 示例: (1 AND 2) OR 3, 表示 条件1和2需要满足其一, 条件3必须满足 ")])),_:1})]),u(p($),{value:l.sqlExpression,"onUpdate:value":e=>l.sqlExpression=e,disabled:!!l.__oppositeBindField,placeholder:"请输入条件逻辑"},null,8,["value","onUpdate:value","disabled"])])])])),_:2},1024)])),_:2},1032,["name"])))),128))])),_:1},8,["expanded-names"]),me.value.length?b("v-if",!0):(s(),g(p(W),{key:0,size:"huge",style:{"margin-top":"20px"},description:"无联动配置"}))])),_:1})])),_:1},8,["show","style"])]))}});export{fe as default};
@@ -1 +1 @@
1
- import{defineComponent as e,inject as l,computed as t,ref as r,onUnmounted as o,createVNode as a,mergeProps as i,unref as n,withModifiers as d,createTextVNode as u}from"vue";import{arrayed as s,getStringWidth as m,widthAppend as f}from"../../../../../shared/utils/index.js";import{isVoidField as v}from"@formily/core";import{observe as c,autorun as p}from"@formily/reactive";import{connect as b,mapProps as h}from"@formily/vue";import{useDebounceFn as _}from"@vueuse/core";import{isString as y,isArray as g,isObject as k,isNumber as I,isFunction as x,uniq as F}from"lodash-es";import{NFormItem as w,NTooltip as O,NButton as P}from"naive-ui";import R from"../../../../annotation-edit/index.js";import"../../../index.js";import T from"../tooltipMessage.vue.js";import{InjectionFormGlobalProps as j,InjectionFormGlobalEmit as E,InjectionFormUUID as L,InjectionFormGraph as M,InjectionAnnotation as S,InjectionAnnotationShortcuts as A,InjectionFormColumnWidth as C}from"../../constants/index.js";import{useComplexOptionsSpan as U}from"../../hooks/useComplexOptions.js";import{validateMessageParser as W,editorUnescape as N}from"../../utils/index.js";import{dotEscape as q,createFieldAddressId as B}from"../../utils/schema.js";import{useFormField as H}from"../../hooks/useFormField.js";const K=b(e({name:"FormRenderItem",props:{label:String,propertyKey:String,remark:String,span:{type:Number,default:6},suffixFields:{type:Array},labelRender:Function,annotation:{},isOptionChildField:Boolean,feedback:String,showFeedback:{type:Boolean,default:void 0},fieldItem:{type:Object},showTooltipFeedback:{type:Boolean,default:!0}},setup(e,{slots:s,attrs:b}){const h=l(j),W=l(E),{field:K,fieldKey:V,fieldAddress:D}=H(),G=l(L),$=t((()=>q(`${G}-${D.value}`))),z=r(!1);if(v(K.value)&&g(e.suffixFields)){const t=l(M);o(c(t,_((()=>{v(K.value)&&g(e.suffixFields)&&(z.value=e.suffixFields.some((e=>{const l=K.value.form.query(e).take();return l&&Reflect.get(l,"required")})))}),100)))}else o(p((()=>{z.value=Reflect.get(K.value,"required")})));const Y=l(S),J=t({get(){var l,t;return null!=(t=null==(l=Y.value)?void 0:l[e.propertyKey])?t:""},set(l){Y.value={property:e.propertyKey,value:l}}}),Q=l(A);const X=t((()=>{var l;const t={color:null==(l=e.fieldItem)?void 0:l.labelColor};return k(b.labelStyle)&&Object.assign(t,b.labelStyle),t})),Z=t((()=>Y.value&&!1!==e.annotation)),ee=t((()=>{var l;return y(null==(l=e.fieldItem)?void 0:l.editor_title)&&e.fieldItem.editor_title&&["POPUP_ALERT","HOVER_TOOLTIP"].includes(e.fieldItem.editor_title_mode)})),le=r(!1);const te=t((()=>e.label&&" "!==e.label)),re=t((()=>{let l=0;return Z.value&&(l+=18),e.remark&&(l+=18),ee.value&&(l+=32),l})),oe=l(j,{}),ae=t((()=>{var l;const t=null==(l=e.fieldItem)?void 0:l.bordered;return null==t?oe.bordered:t})),ie=l("n-form",{}),ne=t((()=>{var e,l,t,r;if("left"!==(null!=(l=b.labelPlacement)?l:null==(e=ie.props)?void 0:e.labelPlacement))return"";let o=null!=(r=b.labelWidth)?r:null==(t=ie.props)?void 0:t.labelWidth;return o&&"auto"!==o?(o=parseInt(o+""),isNaN(o)||!I(o)?"":o-12-re.value-(z.value?11:0)):""})),de=t((()=>x(e.labelRender)?"":y(e.label)?e.label:""));function ue(){return te.value?a("section",{class:"form-render__formItemLabel"},[a("span",{class:"form-render__formItemLabel--text",style:{marginRight:f(re.value),maxWidth:f(ne.value)},title:de.value},[x(e.labelRender)?e.labelRender(e.label):e.label]),re.value?a("section",{class:"form-render__formItemLabel--operation"},[e.remark?a("div",{class:"form-render__formItemLabel--tooltip"},[a(T,{message:e.remark},null)]):null,Z.value?a(R,{class:"form-render__formItemLabel--annotation",modelValue:J.value,"onUpdate:modelValue":e=>J.value=e,shortcuts:n(Q)},null):null,ee.value?a(O,{zIndex:3e3,raw:!0,showArrow:!1,trigger:"POPUP_ALERT"===e.fieldItem.editor_title_mode?"manual":"hover",placement:"top-start",show:"HOVER_TOOLTIP"===e.fieldItem.editor_title_mode?void 0:le.value,contentStyle:"background-color:white;color:rgb(51, 54, 57);padding:8px;position:relative;"},{trigger:()=>a(P,{onClick:d((()=>le.value=!le.value),["stop","prev"]),text:!0,type:"primary"},{default:()=>[a("span",{style:"display:inline-block;margin-left:4px"},[u("提示")])]}),default:()=>{var l,t;return[a("div",{innerHTML:N(null!=(t=null==(l=e.fieldItem)?void 0:l.editor_title)?t:"")},null),a(P,{text:!0,onClick:()=>le.value=!le.value,style:"position:absolute;right:2px;top:2px;line-height:1;height:12px;transform:scaleY(0.9)"},{default:()=>[u("x")]})]}}):null]):null]):null}const se=t((()=>{let l=re.value;return z.value&&(l+=11),y(e.label)&&(l+=ne.value||m(e.label)),l})),me=l(C),{getSpan:fe}=U();function ve(){var l,t,r,o,a,i,d;const u="inner"===(null==(l=e.fieldItem)?void 0:l.childWidthMode)?e.span:fe(G,K.value.address,!1)+e.span;if("left"!==(null!=(r=b.labelPlacement)?r:null==(t=ie.props)?void 0:t.labelPlacement)||!n(me)||!(null==h?void 0:h.autoWidth)||"INPUT_GROUP"===(null==(a=null==(o=K.value.parent)?void 0:o.component)?void 0:a[0]))return u;if("INPUT_GROUP"===(null==(d=null==(i=K.value.parent)?void 0:i.component)?void 0:d[0]))return u;const s=16+me.value;let m=u*s-16-se.value;const f=I(null==h?void 0:h.autoWidth)?h.autoWidth:120;let v=u;for(;m<f&&v<12;)v++,m+=s;return v}function ce(){var l;return"tooltip"!==(null==h?void 0:h.feedbackType)?null==(l=s.default)?void 0:l.call(s):a(O,{to:"body",trigger:"manual",show:!!e.feedback&&e.showTooltipFeedback,raw:!0,animated:!1,showArrow:!1,placement:"top-start",contentStyle:"background-color:#e88080;color:white;padding:8px;border-radius:4px"},{trigger(){var e;return null==(e=s.default)?void 0:e.call(s)},default:()=>e.feedback})}function pe(){var l,t,r;const o=null==(l=e.fieldItem)?void 0:l.editor_title,i=!(null==(t=e.fieldItem)?void 0:t.editor_title_mode)||"EMBEDDED_FORM"===(null==(r=e.fieldItem)?void 0:r.editor_title_mode);return y(o)&&o&&i?a("section",{style:"display:flex;flex-direction:column;gap:4px"},[ce(),a("div",{innerHTML:N(o)},null)]):ce()}function be(){const e=[K.value.path+""];return K.value.form.query("*").forEach((l=>{(l.address+"").includes(K.value.address+"")&&((l.path+"").includes(K.value.path+"")||e.push(l.path+""))})),e}const he=t({get:()=>!(!(null==h?void 0:h.selectMode)||!g(null==h?void 0:h.selectedFields))&&h.selectedFields.includes(K.value.path+""),set(e){if(!g(null==h?void 0:h.selectedFields))return;let l=[...h.selectedFields];e?(l.push(...be()),l=F(l)):be().forEach((e=>{const t=l.indexOf(e);t>-1&&l.splice(t,1)})),null==W||W("update:selectedFields",l)}}),_e=t((()=>(null==h?void 0:h.selectMode)&&!(K.value.parent&&"LINEBAR"!==K.value.parent.componentType)));function ye(){(null==h?void 0:h.selectMode)&&(he.value=!he.value)}const ge=t((()=>e.isOptionChildField?!!e.feedback&&" "!==e.feedback&&e.showFeedback:e.showFeedback));return()=>a(w,i({class:["form-render__formItem",{"form-render--no-border":!ae.value,"form-render--underline":"underline"===ae.value,"form-render__formItemMask":_e.value,"form-render__formItemMask--selected":_e.value&&he.value}],style:{"--form-item-column":ve()},showFeedback:ge.value,feedback:"tooltip"===(null==h?void 0:h.feedbackType)?"":e.feedback,labelStyle:X.value},{id:$.value,uuid:G,onClick:ye,"widget-type":K.value.componentType,"field-key":q(V.value),"field-address":B(D.value),required:z.value}),{...s,default:pe,label:ue})}}),h({title:"label"},((e,l)=>{const t=v(l)?void 0:s(l.selfErrors).length?function(e,l){if(!y(l.defined_error_msg)||!l.defined_error_msg)return e.map((e=>W(e,l))).join(",");return W(l.defined_error_msg,l)}(s(l.selfErrors),e.fieldItem):void 0;return{...e,fieldItem:void 0,feedback:t,"validation-status":t?"error":void 0}})));export{K as FORM_ITEM};
1
+ import{defineComponent as e,inject as l,computed as t,ref as r,onUnmounted as o,createVNode as a,mergeProps as i,unref as n,withModifiers as d,createTextVNode as u}from"vue";import{arrayed as s,getStringWidth as m,widthAppend as f}from"../../../../../shared/utils/index.js";import{isVoidField as v}from"@formily/core";import{observe as c,autorun as p}from"@formily/reactive";import{connect as b,mapProps as h}from"@formily/vue";import{useDebounceFn as _}from"@vueuse/core";import{isString as y,isArray as g,isObject as k,isNumber as I,isFunction as x,uniq as F}from"lodash-es";import{NFormItem as w,NTooltip as O,NButton as T}from"naive-ui";import P from"../../../../annotation-edit/index.js";import"../../../index.js";import R from"../tooltipMessage.vue.js";import{InjectionFormGlobalProps as j,InjectionFormGlobalEmit as E,InjectionFormUUID as L,InjectionFormGraph as M,InjectionAnnotation as S,InjectionAnnotationShortcuts as C,InjectionFormColumnWidth as A}from"../../constants/index.js";import{useComplexOptionsSpan as U}from"../../hooks/useComplexOptions.js";import{validateMessageParser as W,editorUnescape as N}from"../../utils/index.js";import{dotEscape as q,createFieldAddressId as B}from"../../utils/schema.js";import{useFormField as H}from"../../hooks/useFormField.js";const K=b(e({name:"FormRenderItem",props:{label:String,propertyKey:String,remark:String,span:{type:Number,default:6},suffixFields:{type:Array},labelRender:Function,annotation:{},isOptionChildField:Boolean,feedback:String,showFeedback:{type:Boolean,default:void 0},fieldItem:{type:Object},showTooltipFeedback:{type:Boolean,default:!0}},setup(e,{slots:s,attrs:b}){const h=l(j),W=l(E),{field:K,fieldKey:V,fieldAddress:D}=H(),G=l(L),$=t((()=>q(`${G}-${D.value}`))),z=r(!1);if(v(K.value)&&g(e.suffixFields)){const t=l(M);o(c(t,_((()=>{v(K.value)&&g(e.suffixFields)&&(z.value=e.suffixFields.some((e=>{const l=K.value.form.query(e).take();return l&&Reflect.get(l,"required")})))}),100)))}else o(p((()=>{z.value=Reflect.get(K.value,"required")})));const Y=l(S),J=t({get(){var l,t;return null!=(t=null==(l=Y.value)?void 0:l[e.propertyKey])?t:""},set(l){Y.value={property:e.propertyKey,value:l}}}),Q=l(C);const X=t((()=>{var l;const t={color:null==(l=e.fieldItem)?void 0:l.labelColor};return k(b.labelStyle)&&Object.assign(t,b.labelStyle),t})),Z=t((()=>Y.value&&!1!==e.annotation)),ee=t((()=>{var l;return y(null==(l=e.fieldItem)?void 0:l.editor_title)&&e.fieldItem.editor_title&&["POPUP_ALERT","HOVER_TOOLTIP"].includes(e.fieldItem.editor_title_mode)})),le=r(!1);const te=t((()=>e.label&&" "!==e.label)),re=t((()=>{let l=0;return Z.value&&(l+=18),e.remark&&(l+=18),ee.value&&(l+=32),l})),oe=l(j,{}),ae=t((()=>{var l;const t=null==(l=e.fieldItem)?void 0:l.bordered;return null==t?oe.bordered:t})),ie=l("n-form",{}),ne=t((()=>{var e,l,t,r;if("left"!==(null!=(l=b.labelPlacement)?l:null==(e=ie.props)?void 0:e.labelPlacement))return"";let o=null!=(r=b.labelWidth)?r:null==(t=ie.props)?void 0:t.labelWidth;return o&&"auto"!==o?(o=parseInt(o+""),isNaN(o)||!I(o)?"":o-12-re.value-(z.value?11:0)):""})),de=t((()=>x(e.labelRender)?"":y(e.label)?e.label:"")),ue=t((()=>{var l;return null==(l=e.fieldItem)?void 0:l.fieldTitleColor}));function se(){return te.value?a("section",{class:"form-render__formItemLabel"},[a("span",{class:"form-render__formItemLabel--text",style:{marginRight:f(re.value),maxWidth:f(ne.value),color:ue.value},title:de.value},[x(e.labelRender)?e.labelRender(e.label):e.label]),re.value?a("section",{class:"form-render__formItemLabel--operation"},[e.remark?a("div",{class:"form-render__formItemLabel--tooltip"},[a(R,{message:e.remark},null)]):null,Z.value?a(P,{class:"form-render__formItemLabel--annotation",modelValue:J.value,"onUpdate:modelValue":e=>J.value=e,shortcuts:n(Q)},null):null,ee.value?a(O,{zIndex:3e3,raw:!0,showArrow:!1,trigger:"POPUP_ALERT"===e.fieldItem.editor_title_mode?"manual":"hover",placement:"top-start",show:"HOVER_TOOLTIP"===e.fieldItem.editor_title_mode?void 0:le.value,contentStyle:"background-color:white;color:rgb(51, 54, 57);padding:8px;position:relative;"},{trigger:()=>a(T,{onClick:d((()=>le.value=!le.value),["stop","prev"]),text:!0,type:"primary"},{default:()=>[a("span",{style:"display:inline-block;margin-left:4px"},[u("提示")])]}),default:()=>{var l,t;return[a("div",{innerHTML:N(null!=(t=null==(l=e.fieldItem)?void 0:l.editor_title)?t:"")},null),a(T,{text:!0,onClick:()=>le.value=!le.value,style:"position:absolute;right:2px;top:2px;line-height:1;height:12px;transform:scaleY(0.9)"},{default:()=>[u("x")]})]}}):null]):null]):null}const me=t((()=>{let l=re.value;return z.value&&(l+=11),y(e.label)&&(l+=ne.value||m(e.label)),l})),fe=l(A),{getSpan:ve}=U();function ce(){var l,t,r,o,a,i,d;const u="inner"===(null==(l=e.fieldItem)?void 0:l.childWidthMode)?e.span:ve(G,K.value.address,!1)+e.span;if("left"!==(null!=(r=b.labelPlacement)?r:null==(t=ie.props)?void 0:t.labelPlacement)||!n(fe)||!(null==h?void 0:h.autoWidth)||"INPUT_GROUP"===(null==(a=null==(o=K.value.parent)?void 0:o.component)?void 0:a[0]))return u;if("INPUT_GROUP"===(null==(d=null==(i=K.value.parent)?void 0:i.component)?void 0:d[0]))return u;const s=16+fe.value;let m=u*s-16-me.value;const f=I(null==h?void 0:h.autoWidth)?h.autoWidth:120;let v=u;for(;m<f&&v<12;)v++,m+=s;return v}function pe(){var l;return"tooltip"!==(null==h?void 0:h.feedbackType)?null==(l=s.default)?void 0:l.call(s):a(O,{to:"body",trigger:"manual",show:!!e.feedback&&e.showTooltipFeedback,raw:!0,animated:!1,showArrow:!1,placement:"top-start",contentStyle:"background-color:#e88080;color:white;padding:8px;border-radius:4px"},{trigger(){var e;return null==(e=s.default)?void 0:e.call(s)},default:()=>e.feedback})}function be(){var l,t,r;const o=null==(l=e.fieldItem)?void 0:l.editor_title,i=!(null==(t=e.fieldItem)?void 0:t.editor_title_mode)||"EMBEDDED_FORM"===(null==(r=e.fieldItem)?void 0:r.editor_title_mode);return y(o)&&o&&i?a("section",{style:"display:flex;flex-direction:column;gap:4px"},[pe(),a("div",{innerHTML:N(o)},null)]):pe()}function he(){const e=[K.value.path+""];return K.value.form.query("*").forEach((l=>{(l.address+"").includes(K.value.address+"")&&((l.path+"").includes(K.value.path+"")||e.push(l.path+""))})),e}const _e=t({get:()=>!(!(null==h?void 0:h.selectMode)||!g(null==h?void 0:h.selectedFields))&&h.selectedFields.includes(K.value.path+""),set(e){if(!g(null==h?void 0:h.selectedFields))return;let l=[...h.selectedFields];e?(l.push(...he()),l=F(l)):he().forEach((e=>{const t=l.indexOf(e);t>-1&&l.splice(t,1)})),null==W||W("update:selectedFields",l)}}),ye=t((()=>(null==h?void 0:h.selectMode)&&!(K.value.parent&&"LINEBAR"!==K.value.parent.componentType)));function ge(){(null==h?void 0:h.selectMode)&&(_e.value=!_e.value)}const ke=t((()=>e.isOptionChildField?!!e.feedback&&" "!==e.feedback&&e.showFeedback:e.showFeedback));return()=>a(w,i({class:["form-render__formItem",{"form-render--no-border":!ae.value,"form-render--underline":"underline"===ae.value,"form-render__formItemMask":ye.value,"form-render__formItemMask--selected":ye.value&&_e.value}],style:{"--form-item-column":ce()},showFeedback:ke.value,feedback:"tooltip"===(null==h?void 0:h.feedbackType)?"":e.feedback,labelStyle:X.value},{id:$.value,uuid:G,onClick:ge,"widget-type":K.value.componentType,"field-key":q(V.value),"field-address":B(D.value),required:z.value}),{...s,default:be,label:se})}}),h({title:"label"},((e,l)=>{const t=v(l)?void 0:s(l.selfErrors).length?function(e,l){if(!y(l.defined_error_msg)||!l.defined_error_msg)return e.map((e=>W(e,l))).join(",");return W(l.defined_error_msg,l)}(s(l.selfErrors),e.fieldItem):void 0;return{...e,fieldItem:void 0,feedback:t,"validation-status":t?"error":void 0}})));export{K as FORM_ITEM};
@@ -1 +1 @@
1
- import{defineComponent as e,computed as t,inject as n,createVNode as o}from"vue";import{connect as r,mapProps as l,RecursionField as i}from"@formily/vue";import{isString as s}from"lodash-es";import"../../../index.js";import{InjectionBusinessCollector as a,InjectionFormGlobalProps as u}from"../../constants/index.js";import{useFieldListAdaptor as m}from"../../hooks/useFieldListAdaptor.js";import{createObjSchema as c}from"../../utils/schema.js";import{createSlot as p,replace2Any as d}from"../../utils/index.js";const f=r(e({name:"FORM_TEXT",props:{content:{},fieldItem:{type:Object},value:{},onChange:{}},setup(e){function r(t,n=!1,r=!0){return r?o("div",{style:n?{display:"flex",alignItems:"center"}:{}},[l()]):l();function l(){var n,r;return null==(r=(n=p(t,e,(e=>s(e)?e=d(e.replace("\n","<br>"),[{from:"<br>",to:o("i",{style:{width:"100%",height:"4px"}},null)},{from:" ",to:o("i",{style:{display:"inline-block",width:"4px"}},null)}]):[e]))).default)?void 0:r.call(n)}}const l=t((()=>{var t,n;return null!=(n=null==(t=e.fieldItem)?void 0:t.__textEnhance)?n:[]})),f=t((()=>l.value.length&&l.value.some((e=>"widget"===e.type)))),v=n(a),h=n(u),{schemaAdaptor:y}=m(v,h.lifeCycle);return()=>{var t;return f.value?o("div",{style:{display:"flex",alignItems:"center"}},[l.value.map((e=>{if("text"===e.type)return r(e.content,!0,!1);if(s(e.content))return r(e.content,!0,!1);const t={...e.content};return t.decoratorProps={...t.decoratorProps,showLabel:!1,showFeedback:!1},o(i,{basePath:".",schema:c(y([t]))},null)}))]):r(null!=(t=e.content)?t:e.value)}}}),l((e=>{var t;return{...e,content:null==(t=e.fieldItem)?void 0:t.content}})));export{f as TEXT};
1
+ import{defineComponent as e,computed as t,inject as n,createVNode as r}from"vue";import{connect as o,mapProps as l,RecursionField as i}from"@formily/vue";import{isString as a}from"lodash-es";import"../../../index.js";import{InjectionBusinessCollector as s,InjectionFormGlobalProps as u}from"../../constants/index.js";import{useFieldListAdaptor as m}from"../../hooks/useFieldListAdaptor.js";import{createObjSchema as c}from"../../utils/schema.js";import{createSlot as p,replace2Any as d}from"../../utils/index.js";const f=o(e({name:"FORM_TEXT",props:{content:{},fieldItem:{type:Object},value:{},onChange:{}},setup(e){function o(t,n=!1,o=!0){return o?r("div",{style:n?{display:"flex",alignItems:"center"}:{}},[l()]):l();function l(){var n,o;return null==(o=(n=p(t,e,(e=>a(e)?(e=d(e.replace("\n","<br>"),[{from:"<br>",to:r("i",{style:{width:"100%",height:"4px"}},null)},{from:" ",to:r("i",{style:{display:"inline-block",width:"4px"}},null)}])).map((e=>a(e)&&e.match(/<.+>/)?r("span",{innerHTML:e},null):e)):[e]))).default)?void 0:o.call(n)}}const l=t((()=>{var t,n;return null!=(n=null==(t=e.fieldItem)?void 0:t.__textEnhance)?n:[]})),f=t((()=>l.value.length&&l.value.some((e=>"widget"===e.type)))),v=n(s),h=n(u),{schemaAdaptor:y}=m(v,h.lifeCycle);return()=>{var t;return f.value?r("div",{style:{display:"flex",alignItems:"center"}},[l.value.map((e=>{if("text"===e.type)return o(e.content,!0,!1);if(a(e.content))return o(e.content,!0,!1);const t={...e.content};return t.decoratorProps={...t.decoratorProps,showLabel:!1,showFeedback:!1},r(i,{basePath:".",schema:c(y([t]))},null)}))]):o(null!=(t=e.content)?t:e.value)}}}),l((e=>{var t;return{...e,content:null==(t=e.fieldItem)?void 0:t.content}})));export{f as TEXT};
@@ -1 +1 @@
1
- import{arrayed as e,traverse as t}from"../../../../shared/utils/index.js";import"../../../../shared/utils/tapable/SyncHook.js";import"../../../../shared/utils/tapable/SyncBailHook.js";import a from"../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import{format as l}from"date-fns";import{isString as o,isEmpty as r}from"lodash-es";import"../../index.js";import{FIELD_BUSINESS_TYPE as _}from"../constants/index.js";import{isNegative as i,isPositive as s,FieldListFilter as n,findItemByValCondition as p,parseEnhanceText as c}from"../utils/index.js";import{transformDateFormat as u}from"../utils/business.js";function d(){const d=new a(["fieldList","props"]),m=new a(["fieldItem","props"]);m.tap("__forceClearable",((e,t)=>(t.forceClearable&&(e.componentProps={...e.componentProps,clearable:!0}),e))),m.tap({name:"__fieldAlias",before:"__labelPlacementOverwrite"},(e=>("BOTTOM"===e.inputBorder&&(e.bordered="underline"),null!=e.title_h_layout&&(e.decoratorProps={...e.decoratorProps},i(e.title_h_layout)?e.decoratorProps.labelPlacement="top":s(e.title_h_layout)&&(e.decoratorProps.labelPlacement="left")),o(e.lineBarLayoutDirection)&&(e.linebarDirection=e.lineBarLayoutDirection.toLowerCase()),e))),m.tap("__labelPlacementOverwrite",((e,t)=>(t.labelPlacementOverwrite&&(e.decoratorProps={...e.decoratorProps,labelPlacement:void 0}),e))),m.tap("__time",(e=>("DATE"===e.html_type&&"time"===u(e.date_format)&&(e.html_type="TIME"),e))),m.tap("__block",(e=>(["CHECKBOX_BLOCK","RADIO_BLOCK"].includes(e.html_type)&&(e.__vertical=!0),e))),m.tap("__age",(t=>("AGE"===t.html_type&&(t.html_type="INPUT_NUMBER",t.reactions=t.reactions?e(t.reactions):[],t.reactions.push({target:t.val_key_unit,fulfill:{state:{disabled:"{{$self.disabled}}"}}}),t.suffixConfig=[{validate:{obj_type:_.AGE_UNIT},val_key:t.val_key_unit,html_type:"SELECT",option:t.option,urlConfig:t.urlConfig}]),t))),m.tap({name:"__multiple_select",before:"__defaultValue"},(e=>{const{html_type:t,multi_select:a,__multiple:l}=e;return e.__multiple="SEARCH"!==t&&("SEARCH_MORE"===t||("SELECT"===t?i(a):l)),e})),m.tap("__defaultValue",(e=>{switch(e.html_type){case"TIME":"current"===e.default_val&&(e.default_val=l(new Date,e.date_format||"HH:mm:ss"));break;case"DATE":"current"===e.default_val&&(e.default_val=l(new Date,e.date_format||"yyyy-MM-dd"));break;case"CHECKBOX":case"CHECKBOX_BLOCK":o(e.default_val)&&e.default_val&&(e.default_val=e.default_val.split(","));break;case"SELECT":case"SEARCH":case"SEARCH_MORE":o(e.default_val)&&e.default_val&&(e.default_val=e.__multiple?e.default_val.split(","):e.default_val)}return e}));const E=[[["SEARCH","PHONE_TYPE","IDCARD_TYPE","SEARCH_MORE"],"SELECT"],["DIGITAL","INPUT_NUMBER"],["CHECKBOX_BLOCK","CHECKBOX"],["RADIO_BLOCK","RADIO"],[["DATE-INPUT","DATETIME-INPUT"],"DATE"],["SWITCH_COMPONENT","SWITCH"],["SLIDER_COMPONENT","SLIDER"],["LEVEL_SEARCH_CASCADE","LEVEL_SEARCH_CASCADER"],["SEARCH_CASCADE","SEARCH_CASCADER"]];m.tap("__normalize",(e=>(E.some((([t,a])=>(Array.isArray(t)?t.includes(e.html_type):t===e.html_type)&&(e.html_type=a))),e)));const f=new Map([[["SELECT","SEARCH","SEARCH_MORE"],new Map([["H_TILE",e=>e.html_type=e.__multiple?"CHECKBOX":"RADIO"],["V_TILE",e=>{e.html_type=e.__multiple?"CHECKBOX":"RADIO",e.__vertical=!0}]])],["RADIO",new Map([["DROPDOWN",e=>e.html_type="SELECT"]])],["CHECKBOX",new Map([["DROPDOWN",e=>{e.__multiple=!0,e.html_type="SELECT"}]])]]);return m.tap({stage:9999,name:"__show_mode"},(t=>t.show_mode?([...f].some((([a,l])=>{if(!e(a).includes(t.html_type))return;const o=l.get(t.show_mode);return o&&o(t),!0})),t):t)),d.tap("__out_bordered",((e,{column:t,outBordered:a})=>e)),d.tap("__prefix/suffix",(e=>{const a=[];return t(e,(t=>{["prefix","suffix"].forEach((l=>{const r=t[l];if(!o(r))return;const _=r.match("#{(.+)}");if(!_)return;const i=o(_[1])&&p(e,(e=>e.val_key===_[1].trim()));i&&(Reflect.deleteProperty(t,l),t[`${l}Config`]=t[`${l}Config`]||[],t[`${l}Config`].push(i),a.push(i))}))}),["children","properties"]),a.length?n(e,(e=>a.includes(e))):e})),d.tap("__checkboxOrRadioEnhance",(e=>{const a=[];return t(e,(t=>{["CHECKBOX","RADIO","RADIO_BLOCK","CHECKBOX_BLOCK"].includes(t.html_type)&&!r(t.option)&&t.option.forEach((t=>{const l=c(t.text||"");t.__textEnhance=l,l.forEach((t=>{if("text"===t.type)return;const l=p(e,(e=>[e.name,e.val_key].includes(t.content)));l&&(a.push(l),t.content=l)}))}))})),n(e,(e=>a.includes(e)))})),d.tap("__textEnhance",(e=>{const a=[];return t(e,(t=>{if("TEXT"!==t.html_type||!o(t.default_val))return;const l=c(t.default_val);t.__textEnhance=l,l.forEach((l=>{if("text"===l.type)return;const o=p(e,(e=>[e.name,e.val_key].includes(l.content)));o&&(Reflect.deleteProperty(t,"default_val"),a.push(o),l.content=o)}))}),["children","properties"]),n(e,(e=>a.includes(e)))})),{FieldNormalizeWaterfallHook:m,FieldListNormalizeWaterfallHook:d}}export{d as useFieldNormalize};
1
+ import{arrayed as e,traverse as t}from"../../../../shared/utils/index.js";import"../../../../shared/utils/tapable/SyncHook.js";import"../../../../shared/utils/tapable/SyncBailHook.js";import l from"../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import{format as a}from"date-fns";import{isString as o,isEmpty as r}from"lodash-es";import"../../index.js";import{FIELD_BUSINESS_TYPE as i}from"../constants/index.js";import{isNegative as _,isPositive as s,FieldListFilter as n,findItemByValCondition as p,parseEnhanceText as c}from"../utils/index.js";import{transformDateFormat as u}from"../utils/business.js";function d(){const d=new l(["fieldList","props"]),m=new l(["fieldItem","props"]);m.tap("__forceClearable",((e,t)=>(t.forceClearable&&(e.componentProps={...e.componentProps,clearable:!0}),e))),m.tap({name:"__fieldAlias",before:"__labelPlacementOverwrite"},(e=>("BOTTOM"===e.inputBorder&&(e.bordered="underline"),null!=e.title_h_layout&&(e.decoratorProps={...e.decoratorProps},_(e.title_h_layout)?e.decoratorProps.labelPlacement="top":s(e.title_h_layout)&&(e.decoratorProps.labelPlacement="left")),o(e.lineBarLayoutDirection)&&(e.linebarDirection=e.lineBarLayoutDirection.toLowerCase()),e))),m.tap("__labelPlacementOverwrite",((e,t)=>(t.labelPlacementOverwrite&&(e.decoratorProps={...e.decoratorProps,labelPlacement:void 0}),e))),m.tap("__time",(e=>("DATE"===e.html_type&&"time"===u(e.date_format)&&(e.html_type="TIME"),e))),m.tap("__block",(e=>(["CHECKBOX_BLOCK","RADIO_BLOCK"].includes(e.html_type)&&(e.__vertical=!0),e))),m.tap("__age",(t=>("AGE"===t.html_type&&(t.html_type="INPUT_NUMBER",t.reactions=t.reactions?e(t.reactions):[],t.reactions.push({target:t.val_key_unit,fulfill:{state:{disabled:"{{$self.disabled}}"}}}),t.suffixConfig=[{validate:{obj_type:i.AGE_UNIT},val_key:t.val_key_unit,html_type:"SELECT",option:t.option,urlConfig:t.urlConfig}]),t))),m.tap({name:"__multiple_select",before:"__defaultValue"},(e=>{const{html_type:t,multi_select:l,__multiple:a}=e;return e.__multiple="SEARCH"!==t&&("SEARCH_MORE"===t||("SELECT"===t?_(l):a)),e})),m.tap("__defaultValue",(e=>{switch(e.html_type){case"TIME":"current"===e.default_val&&(e.default_val=a(new Date,e.date_format||"HH:mm:ss"));break;case"DATE":"current"===e.default_val&&(e.default_val=a(new Date,e.date_format||"yyyy-MM-dd"));break;case"CHECKBOX":case"CHECKBOX_BLOCK":o(e.default_val)&&e.default_val&&(e.default_val=e.default_val.split(","));break;case"SELECT":case"SEARCH":case"SEARCH_MORE":o(e.default_val)&&e.default_val&&(e.default_val=e.__multiple?e.default_val.split(","):e.default_val)}return e}));const E=[[["SEARCH","PHONE_TYPE","IDCARD_TYPE","SEARCH_MORE"],"SELECT"],["DIGITAL","INPUT_NUMBER"],["CHECKBOX_BLOCK","CHECKBOX"],["RADIO_BLOCK","RADIO"],[["DATE-INPUT","DATETIME-INPUT"],"DATE"],["SWITCH_COMPONENT","SWITCH"],["SLIDER_COMPONENT","SLIDER"],["LEVEL_SEARCH_CASCADE","LEVEL_SEARCH_CASCADER"],["SEARCH_CASCADE","SEARCH_CASCADER"]];m.tap("__normalize",(e=>(E.some((([t,l])=>(Array.isArray(t)?t.includes(e.html_type):t===e.html_type)&&(e.html_type=l))),e)));const f=new Map([[["SELECT","SEARCH","SEARCH_MORE"],new Map([["H_TILE",e=>e.html_type=e.__multiple?"CHECKBOX":"RADIO"],["V_TILE",e=>{e.html_type=e.__multiple?"CHECKBOX":"RADIO",e.__vertical=!0}]])],["RADIO",new Map([["DROPDOWN",e=>e.html_type="SELECT"]])],["CHECKBOX",new Map([["DROPDOWN",e=>{e.__multiple=!0,e.html_type="SELECT"}]])]]);return m.tap({stage:9999,name:"__show_mode"},(t=>t.show_mode?([...f].some((([l,a])=>{if(!e(l).includes(t.html_type))return;const o=a.get(t.show_mode);return o&&o(t),!0})),t):t)),d.tap("__out_bordered",((e,{column:t,outBordered:l})=>e)),d.tap("__prefix/suffix",(e=>{const l=[];return t(e,(t=>{["prefix","suffix"].forEach((a=>{const r=t[a];if(!o(r))return;const i=r.match("#{(.+)}");if(!i)return;const _=o(i[1])&&p(e,(e=>e.val_key===i[1].trim()));_&&(Reflect.deleteProperty(t,a),t[`${a}Config`]=t[`${a}Config`]||[],t[`${a}Config`].push(_),l.push(_))}))}),["children","properties"]),l.length?n(e,(e=>l.includes(e))):e})),d.tap("__checkboxOrRadioEnhance",(e=>{const l=[];return t(e,(t=>{["CHECKBOX","RADIO","RADIO_BLOCK","CHECKBOX_BLOCK"].includes(t.html_type)&&!r(t.option)&&t.option.forEach((t=>{const a=c(t.text||"");t.__textEnhance=a,a.forEach((t=>{if("text"===t.type)return;const a=p(e,(e=>[e.name,e.val_key].includes(t.content)));a&&(l.push(a),t.content=a)}))}))})),n(e,(e=>l.includes(e)))})),m.tap("__fieldTitleRed",(e=>(s(e.fieldTitleRed)&&(e.fieldTitleColor="#e02828"),e))),d.tap("__textEnhance",(e=>{const l=[];return t(e,(t=>{if("TEXT"!==t.html_type||!o(t.default_val))return;const a=c(t.default_val);t.__textEnhance=a,a.forEach((a=>{if("text"===a.type)return;const o=p(e,(e=>[e.name,e.val_key].includes(a.content)));o&&(Reflect.deleteProperty(t,"default_val"),l.push(o),a.content=o)}))}),["children","properties"]),n(e,(e=>l.includes(e)))})),{FieldNormalizeWaterfallHook:m,FieldListNormalizeWaterfallHook:d}}export{d as useFieldNormalize};
@@ -57,7 +57,7 @@ export type UrlConfig = {
57
57
  dependKey: DependKeyType;
58
58
  [key: string]: any;
59
59
  }>;
60
- interface ReactionType {
60
+ export interface ReactionType {
61
61
  dependencies?: string[];
62
62
  target?: string;
63
63
  effects?: SchemaEffectTypes[];
@@ -136,6 +136,8 @@ export type FieldItem = {
136
136
  linebarDirection: 'horizontal' | 'vertical';
137
137
  linebarTextDirection: 'horizontal' | 'vertical';
138
138
  labelColor: string;
139
+ fieldTitleRed: FormCommonState | boolean;
140
+ fieldTitleColor: string;
139
141
  fieldType: SchemaTypes;
140
142
  content: string | FormRenderer | Record<string, FormRenderer>;
141
143
  lazyRequest: boolean;
@@ -3072,9 +3072,9 @@ declare const IhoChat: SFCWithInstall<import("vue").DefineComponent<{
3072
3072
  "onSession-close"?: ((...args: any[]) => any) | undefined;
3073
3073
  }, {
3074
3074
  show: boolean;
3075
- filterable: boolean;
3076
3075
  showHeader: boolean;
3077
3076
  baseURL: string;
3078
3077
  extraParams: import("../../shared/types").AnyObject;
3078
+ filterable: boolean;
3079
3079
  }>>;
3080
3080
  export default IhoChat;
@@ -3073,9 +3073,9 @@ declare const _default: import("vue").DefineComponent<{
3073
3073
  "onSession-close"?: ((...args: any[]) => any) | undefined;
3074
3074
  }, {
3075
3075
  show: boolean;
3076
- filterable: boolean;
3077
3076
  showHeader: boolean;
3078
3077
  baseURL: string;
3079
3078
  extraParams: AnyObject;
3079
+ filterable: boolean;
3080
3080
  }>;
3081
3081
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as n,watch as o,openBlock as s,createElementBlock as i,normalizeClass as r,unref as a,normalizeStyle as l,createVNode as c,withCtx as u,Fragment as m,renderList as d,toDisplayString as p,createCommentVNode as g,createBlock as v,createElementVNode as f,createTextVNode as y,withModifiers as h,nextTick as T}from"vue";import{NImageGroup as M,NButton as w,NAvatar as k,NImage as _,NIcon as C,NSpace as x,NButtonGroup as I,NTooltip as L}from"naive-ui";import{format as j}from"date-fns";import{getHistoryRecordApi as E,readMessageApi as S}from"../api/index.js";import{useData as b}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{MESSAGE_TYPE as A}from"../constants/index.js";import{isAudioOrVideoMessage as z,simplifyMessage as D,getAVTime as H,downloadFile as R}from"../utils/index.js";import{first as N,last as B,toString as O}from"lodash-es";import"trtc-sdk-v5";import P from"./PersonProfile.vue.js";import q from"./MessageTemplate.vue.js";import J from"./MessageEvent.vue.js";import{emojis as W}from"../utils/emoji.js";import U from"./ContextMenu.js";import X from"./ChatAdd.vue.js";import"../../../../shared/utils/index.js";import"@vueuse/core";import"@vue/shared";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{CallOutline as F,VideocamOutline as G,DocumentSharp as K,ChatbubbleEllipsesOutline as V,EllipsisHorizontal as Y,ArrowDownSharp as $}from"@vicons/ionicons5";import{useScrollLoading as Q}from"../../../../shared/hooks/useScrollLoading.js";const Z={key:0,class:"tip-text"},ee={key:1,class:"tip-text"},te={key:2,class:"message-box"},ne={key:0,class:"content-box"},oe={class:"name-box"},se=["data-time"],ie=["onContextmenu"],re={key:0,class:"reference-content"},ae=["innerHTML"],le=["src"],ce=["innerHTML"],ue=["innerHTML"],me={style:{"margin-left":"8px"}},de={class:"size"};var pe=e({__name:"ChatMain",setup(e){const pe=t(),{state:ge,setMsgList:ve,relayMessage:fe,setCurrentSessionItem:ye,isGroupChat:he}=b(),Te=t(),Me=t(!1),we=t({left:0,top:0}),ke=t(),_e=t(),Ce={page:0,hasMore:!0,lastSendTime:j(new Date,"yyyy-MM-dd HH:mm:ss")},xe=n((()=>({"--c-tip-top":he.value?"1px":"-20px","--c-tip-gap":he.value?"10px":"0px"})));function Ie({nodes:e}){var t,n;const{_ctx:o}=null==(t=e.download)?void 0:t.children,s=o?null==(n=null==o?void 0:o.proxy)?void 0:n.previewSrc:"";return[e.prev,e.next,e.rotateCounterclockwise,e.rotateClockwise,e.resizeToOriginalSize,e.zoomOut,e.zoomIn,c(L,null,{trigger:()=>c(C,{style:"cursor: pointer",color:"rgba(255, 255, 255, 0.75",size:24,component:$,onClick:()=>s&&R(s,"img")},null),default:()=>{var e;return(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.102"))||"下载"}}),e.close]}async function Le(){try{if(!Ce.hasMore)return;Ce.page++;const e=await E({sessionKey:ge.currentSessionItem.sessionKey,page:Ce.page,lastSendTime:Ce.lastSendTime});if(!Array.isArray(e)||0===e.length)return Ce.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");const t=N(e).id;Ce.lastSendTime=B(e).sendTime,ve(Ce.page>1?[...ge.msgList,...e]:e),1===Ce.page&&ge.currentSessionItem.unreadNum&&(await S({chatType:ge.currentSessionItem.chatType,messageIdSet:[t],receiver:ge.userInfo.id,sender:ge.currentSessionItem.receiver}),ye({unreadNum:0}))}catch(e){console.log(e)}}async function je(e,t){ke.value=t,async function(e){var t,n,o,s,i,r;Me.value=!0,await T();const{clientX:a,clientY:l}=e,{width:c=0,height:u=0,left:m=0,top:d=0}=(null==(t=pe.value)?void 0:t.getBoundingClientRect())||{},p=null!=(s=null==(o=null==(n=Te.value)?void 0:n.$el)?void 0:o.getBoundingClientRect().height)?s:220,g=null!=(r=null==(i=pe.value)?void 0:i.scrollTop)?r:0,v=5,f={};a<=m+c/2?f.left=a-m+v+"px":f.right=m+c-a-v+"px";l-d<p/2?f.top=g+v+"px":d+u-l<=p/2?f.bottom=Math.abs(g)+v+"px":f.top=g+l-d-p/2+"px";we.value=f}(e)}function Ee(e){const{chatMessageType:t,messageTemplate:n}=e.content;return t!==A.TEMPLATE||!!n}function Se(e){const{chatMessageType:t}=e.content;return e.sender===ge.userInfo.id&&Date.now()-new Date(e.sendTime).getTime()<864e5&&[A.TEXT,A.EMOJI].includes(t)}function be(e){const{chatMessageType:t,msg:n=""}=e.content;if(t===A.BLEND){const e=O(n).match(/<img[^>]*>/gi);return!e||!e.length}return t&&[A.TEXT,A.EMOJI].includes(t)}function Ae(e){const{chatMessageType:t,msg:n=""}=e.content,o=O(n).match(/<img[^>]*>/gi);return t===A.BLEND&&o&&o.length}function ze(e,t){var n,o;const{chatMessageType:s,messageTemplate:i}=e.content;if(s===A.TEMPLATE)return"system"===t?2==(null==(n=null==i?void 0:i.setting)?void 0:n.style.id):2!=(null==(o=null==i?void 0:i.setting)?void 0:o.style.id)}function De(e){var t,n;const{chatMessageType:o,messageTemplate:s}=e;return o===A.TEMPLATE&&3==(null==(n=null==(t=null==s?void 0:s.setting)?void 0:t.style)?void 0:n.id)}function He(e,t){var n;const o=new Date(e.sendTime).getTime(),s=null==(n=ge.msgList[t+1])?void 0:n.sendTime;if(s){return o-new Date(s).getTime()>3e5}return!0}function Re(e){ge.currentReferenceMsg=e,ge.currentReferenceMsg.content.referenceContent=null,Object.assign(ge.currentReferenceMsg,{chatType:ge.currentSessionItem.chatType,receiver:ge.currentSessionItem.receiver,receiverAvatar:ge.currentSessionItem.avatar,receiverName:ge.currentSessionItem.name})}function Ne(e,t){var n;"reply"!==e?"relay"===e&&(null==(n=_e.value)||n.click()):Re(t)}function Be({checkedIds:e,remark:t}){const n=ge.msgList.find((e=>e.id===ke.value));fe({checkedIds:e,remark:t,content:n.content})}return Q(pe,(()=>{Le()}),"top",(()=>{Me.value=!1})),o((()=>ge.id),(e=>{e&&(ge.currentReferenceMsg=null,Object.assign(Ce,{page:0,hasMore:!0,lastSendTime:j(new Date,"yyyy-MM-dd HH:mm:ss")}),Le())}),{immediate:!0}),o((()=>ge.isAppendMsg),(e=>{e&&(ve([ge.currentMsg,...ge.msgList]),async function(){var e;null==(e=pe.value)||e.scrollTo({top:0,behavior:"auto"})}(),ge.isAppendMsg=!1)}),{immediate:!0}),(e,t)=>{var n;return s(),i("div",{class:r(["chat-main",{"home-bg":!a(ge).id}]),ref_key:"chatMainRef",ref:pe,style:l(a(xe))},[c(a(M),{"show-toolbar-tooltip":"","render-toolbar":Ie},{default:u((()=>[(s(!0),i(m,null,d(a(ge).msgList,((e,t)=>{var n,o,l;return s(),i(m,{key:e.id},[Ee(e)?(s(),i("div",{key:0,class:r(["message-item",{"message-item--mine":e.sender==a(ge).userInfo.id}])},[He(e,t)?(s(),i("p",Z,p(e.__sendTime),1)):g("v-if",!0),ze(e,"system")||"WITHDRAWN"===e.status||(null==(n=e.content)?void 0:n.chatMessageType)===a(A).EVENT?(s(),i(m,{key:1},[ze(e,"system")?(s(),v(q,{key:0,data:e},null,8,["data"])):g("v-if",!0),"WITHDRAWN"===e.status?(s(),i("p",ee,[f("span",null,p(e.sender==a(ge).userInfo.id?(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.67"))||"你":e.senderName)+((null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.68"))||"撤回了一条消息"),1),Se(e)?(s(),v(a(w),{key:0,size:"tiny",style:{color:"var(--c-primary-color)","margin-left":"5px"},text:"",onClick:()=>function(e){ge.currentReEditMsg=e}(e)},{default:u((()=>{var e;return[y((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.69"))||"重新编辑")]})),_:2},1032,["onClick"])):g("v-if",!0)])):(s(),v(J,{key:2,data:e},null,8,["data"]))],64)):(s(),i("div",te,[c(P,{"user-id":e.sender,placement:e.sender==a(ge).userInfo.id?"left":"right"},{trigger:u((()=>[c(a(k),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-id","placement"]),e.content?(s(),i("div",ne,[f("div",oe,[f("span",{class:"name","data-time":e.__time},p(a(he)?e.senderName:""),9,se)]),f("div",{class:r(["content",{emoji:e.content.chatMessageType===a(A).EMOJI&&!e.content.referenceContent,template:e.content.chatMessageType===a(A).TEMPLATE,"template--3":De(e.content),"audio-video":a(z)(e.content),file:e.content.chatMessageType===a(A).FILE}]),onContextmenu:h((t=>je(t,e.id)),["prevent"])},[be(e)?(s(),i(m,{key:0},[e.content.referenceContent?(s(),i("div",re,[f("span",null,p(e.content.referenceContent.senderName)+":",1),f("pre",{innerHTML:a(D)(e.content.referenceContent.content)},null,8,ae)])):g("v-if",!0),e.content.chatMessageType===a(A).EMOJI?(s(),i("img",{key:1,class:r([e.content.referenceContent?"emoji--min":"emoji--big"]),src:a(W).findEmoji(e.__content)},null,10,le)):(s(),i("pre",{key:2,innerHTML:e.__content},null,8,ce))],64)):g("v-if",!0),Ae(e)?(s(),i("pre",{key:1,innerHTML:e.__content},null,8,ue)):g("v-if",!0),ze(e,"template")?(s(),v(q,{key:2,data:e},null,8,["data"])):g("v-if",!0),e.content.chatMessageType===a(A).IMAGE?(s(),v(a(_),{key:3,width:"240",src:e.__content},null,8,["src"])):g("v-if",!0),a(z)(e.content)?(s(),i(m,{key:4},[c(a(C),{class:r({"is-audio":e.content.chatMessageType===a(A).AUDIO}),component:e.content.chatMessageType===a(A).AUDIO?a(F):a(G)},null,8,["class","component"]),f("span",me,p(a(H)(e.__content)),1)],64)):g("v-if",!0),e.content.chatMessageType===a(A).FILE?(s(),v(a(x),{key:5,"wrap-item":!1},{default:u((()=>[c(a(C),{class:"icon-file",size:"40",component:a(K)},null,8,["component"]),c(a(x),{"wrap-item":!1,vertical:"",justify:"space-between",style:{"row-gap":"0"}},{default:u((()=>[f("span",null,p(e.__content),1),f("span",de,p(e.__size),1)])),_:2},1024)])),_:2},1024)):g("v-if",!0),c(a(I),{class:"quick-menu"},{default:u((()=>[a(z)(e.content)?g("v-if",!0):(s(),i(m,{key:0},[g(' <n-button quaternary size="tiny">\n\t\t\t\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<i class="chat--iconfont chat--icon-face" />\n\t\t\t\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\t\t\t</n-button> '),c(a(w),{quaternary:"",size:"tiny",onClick:()=>Re(e)},{icon:u((()=>[c(a(C),{size:"17",component:a(V)},null,8,["component"])])),_:2},1032,["onClick"])],64)),c(a(w),{quaternary:"",size:"tiny",onClick:t=>je(t,e.id)},{icon:u((()=>[c(a(C),{size:"14",component:a(Y)},null,8,["component"])])),_:2},1032,["onClick"])])),_:2},1024)],42,ie)])):g("v-if",!0)]))],2)):g("v-if",!0)],64)})),128))])),_:1}),c(a(U),{ref_key:"contextmenuRef",ref:Te,show:Me.value,"onUpdate:show":t[0]||(t[0]=e=>Me.value=e),position:we.value,id:ke.value,onSelect:Ne},null,8,["show","position","id"]),c(X,{title:(null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.44"))||"转发消息",mode:"relay",onComfirm:Be},{trigger:u((()=>{var e;return[f("span",{style:{display:"none"},ref_key:"relayTriggerRef",ref:_e},(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.45"))||"转发",512)]})),_:1})],6)}}});export{pe as default};
1
+ import{defineComponent as e,ref as t,computed as n,watch as o,openBlock as s,createElementBlock as i,normalizeClass as r,unref as a,normalizeStyle as l,createVNode as c,withCtx as u,Fragment as m,renderList as d,toDisplayString as p,createCommentVNode as g,createBlock as v,createElementVNode as f,createTextVNode as y,withModifiers as h,nextTick as T}from"vue";import{NImageGroup as M,NButton as w,NAvatar as k,NImage as _,NIcon as C,NSpace as x,NButtonGroup as I,NTooltip as L}from"naive-ui";import{format as j}from"date-fns";import{getHistoryRecordApi as E,readMessageApi as S}from"../api/index.js";import{useData as b}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{MESSAGE_TYPE as A}from"../constants/index.js";import{isAudioOrVideoMessage as z,simplifyMessage as D,getAVTime as H,downloadFile as R}from"../utils/index.js";import{first as N,last as B,toString as O}from"lodash-es";import"trtc-sdk-v5";import P from"./PersonProfile.vue.js";import q from"./MessageTemplate.vue.js";import J from"./MessageEvent.vue.js";import{emojis as W}from"../utils/emoji.js";import U from"./ContextMenu.js";import X from"./ChatAdd.vue.js";import"../../../../shared/utils/index.js";import"@vueuse/core";import"@vue/shared";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{CallOutline as F,VideocamOutline as G,DocumentSharp as K,ChatbubbleEllipsesOutline as V,EllipsisHorizontal as Y,ArrowDownSharp as $}from"@vicons/ionicons5";import{useScrollLoading as Q}from"../../../../shared/hooks/useScrollLoading.js";const Z={key:0,class:"tip-text"},ee={key:1,class:"tip-text"},te={key:2,class:"message-box"},ne={key:0,class:"content-box"},oe={class:"name-box"},se=["data-time"],ie=["onContextmenu"],re={key:0,class:"reference-content"},ae=["innerHTML"],le=["src"],ce=["innerHTML"],ue=["innerHTML"],me={style:{"margin-left":"8px"}},de={class:"size"};var pe=e({__name:"ChatMain",setup(e){const pe=t(),{state:ge,setMsgList:ve,relayMessage:fe,setCurrentSessionItem:ye,isGroupChat:he}=b(),Te=t(),Me=t(!1),we=t({left:0,top:0}),ke=t(),_e=t(),Ce={page:0,hasMore:!0,lastSendTime:j(new Date,"yyyy-MM-dd HH:mm:ss")},xe=n((()=>({"--c-tip-top":he.value?"1px":"-20px","--c-tip-gap":he.value?"10px":"0px"})));function Ie({nodes:e}){var t,n;const{_ctx:o}=null==(t=e.download)?void 0:t.children,s=o?null==(n=null==o?void 0:o.proxy)?void 0:n.previewSrc:"";return[e.prev,e.next,e.rotateCounterclockwise,e.rotateClockwise,e.resizeToOriginalSize,e.zoomOut,e.zoomIn,c(L,null,{trigger:()=>c(C,{style:"cursor: pointer",color:"rgba(255, 255, 255, 0.75",size:24,component:$,onClick:()=>s&&R(s,"img")},null),default:()=>{var e;return(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.102"))||"下载"}}),e.close]}async function Le(){try{if(!Ce.hasMore)return;Ce.page++;const e=await E({sessionKey:ge.currentSessionItem.sessionKey,page:Ce.page,lastSendTime:Ce.lastSendTime});if(!Array.isArray(e)||0===e.length)return Ce.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");const t=N(e).id;Ce.lastSendTime=B(e).sendTime,ve(Ce.page>1?[...ge.msgList,...e]:e),1===Ce.page&&ge.currentSessionItem.unreadNum&&(await S({chatType:ge.currentSessionItem.chatType,messageIdSet:[t],receiver:ge.userInfo.id,sender:ge.currentSessionItem.receiver}),ye({unreadNum:0}))}catch(e){console.log(e)}}async function je(e,t){ke.value=t,async function(e){var t,n,o,s,i,r;Me.value=!0,await T();const{clientX:a,clientY:l}=e,{width:c=0,height:u=0,left:m=0,top:d=0}=(null==(t=pe.value)?void 0:t.getBoundingClientRect())||{},p=null!=(s=null==(o=null==(n=Te.value)?void 0:n.$el)?void 0:o.getBoundingClientRect().height)?s:220,g=null!=(r=null==(i=pe.value)?void 0:i.scrollTop)?r:0,v=5,f={};a<=m+c/2?f.left=a-m+v+"px":f.right=m+c-a-v+"px";l-d<p/2?f.top=g+v+"px":d+u-l<=p/2?f.bottom=Math.abs(g)+v+"px":f.top=g+l-d-p/2+"px";we.value=f}(e)}function Ee(e){const{chatMessageType:t,messageTemplate:n}=e.content;return t!==A.TEMPLATE||!!n}function Se(e){const{chatMessageType:t}=e.content;return e.sender===ge.userInfo.id&&Date.now()-new Date(e.sendTime).getTime()<864e5&&[A.TEXT,A.EMOJI].includes(t)}function be(e){const{chatMessageType:t,msg:n=""}=e.content;if(t===A.BLEND){const e=O(n).match(/<img[^>]*>/gi);return!e||!e.length}return t&&[A.TEXT,A.EMOJI].includes(t)}function Ae(e){const{chatMessageType:t,msg:n=""}=e.content,o=O(n).match(/<img[^>]*>/gi);return t===A.BLEND&&o&&o.length}function ze(e,t){var n,o;const{chatMessageType:s,messageTemplate:i}=e.content;if(s===A.TEMPLATE)return"system"===t?2==(null==(n=null==i?void 0:i.setting)?void 0:n.style.id):2!=(null==(o=null==i?void 0:i.setting)?void 0:o.style.id)}function De(e){var t,n;const{chatMessageType:o,messageTemplate:s}=e;return o===A.TEMPLATE&&3==(null==(n=null==(t=null==s?void 0:s.setting)?void 0:t.style)?void 0:n.id)}function He(e,t){var n;const o=new Date(e.sendTime).getTime(),s=null==(n=ge.msgList[t+1])?void 0:n.sendTime;if(s){return o-new Date(s).getTime()>3e5}return!0}function Re(e){ge.currentReferenceMsg=e,ge.currentReferenceMsg.content.referenceContent=null,Object.assign(ge.currentReferenceMsg,{chatType:ge.currentSessionItem.chatType,receiver:ge.currentSessionItem.receiver,receiverAvatar:ge.currentSessionItem.avatar,receiverName:ge.currentSessionItem.name})}function Ne(e,t){var n;"reply"!==e?"relay"===e&&(null==(n=_e.value)||n.click()):Re(t)}function Be({checkedIds:e,remark:t}){const n=ge.msgList.find((e=>e.id===ke.value));fe({checkedIds:e,remark:t,content:n.content})}return Q(pe,(()=>{Le()}),"top",(()=>{Me.value=!1})),o((()=>ge.id),(e=>{e&&(ge.currentReferenceMsg=null,Object.assign(Ce,{page:0,hasMore:!0,lastSendTime:j(new Date,"yyyy-MM-dd HH:mm:ss")}),Le())}),{immediate:!0}),o((()=>ge.isAppendMsg),(e=>{e&&(ve([ge.currentMsg,...ge.msgList]),async function(){var e;null==(e=pe.value)||e.scrollTo({top:0,behavior:"auto"})}(),ge.isAppendMsg=!1)}),{immediate:!0}),(e,t)=>{var n;return s(),i("div",{class:r(["chat-main",{"home-bg":!a(ge).id}]),ref_key:"chatMainRef",ref:pe,style:l(a(xe))},[c(a(M),{"show-toolbar-tooltip":"","render-toolbar":Ie},{default:u((()=>[(s(!0),i(m,null,d(a(ge).msgList,((e,t)=>{var n,o,l;return s(),i(m,{key:e.id},[Ee(e)?(s(),i("div",{key:0,class:r(["message-item",{"message-item--mine":e.sender==a(ge).userInfo.id}])},[He(e,t)?(s(),i("p",Z,p(e.__sendTime),1)):g("v-if",!0),ze(e,"system")||"WITHDRAWN"===e.status||(null==(n=e.content)?void 0:n.chatMessageType)===a(A).EVENT?(s(),i(m,{key:1},[ze(e,"system")?(s(),v(q,{key:0,data:e},null,8,["data"])):g("v-if",!0),"WITHDRAWN"===e.status?(s(),i("p",ee,[f("span",null,p(e.sender==a(ge).userInfo.id?(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.67"))||"你":e.senderName)+((null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.68"))||"撤回了一条消息"),1),Se(e)?(s(),v(a(w),{key:0,size:"tiny",style:{color:"var(--c-primary-color)","margin-left":"5px"},text:"",onClick:()=>function(e){ge.currentReEditMsg=e}(e)},{default:u((()=>{var e;return[y((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.69"))||"重新编辑")]})),_:2},1032,["onClick"])):g("v-if",!0)])):(s(),v(J,{key:2,data:e},null,8,["data"]))],64)):(s(),i("div",te,[c(P,{"user-id":e.sender,placement:e.sender==a(ge).userInfo.id?"left":"right"},{trigger:u((()=>[c(a(k),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-id","placement"]),e.content?(s(),i("div",ne,[f("div",oe,[f("span",{class:"name","data-time":e.__time},p(a(he)?e.senderName:""),9,se)]),f("div",{class:r(["content",{emoji:e.content.chatMessageType===a(A).EMOJI&&!e.content.referenceContent,template:e.content.chatMessageType===a(A).TEMPLATE,"template--3":De(e.content),"audio-video":a(z)(e.content),file:e.content.chatMessageType===a(A).FILE}]),onContextmenu:h((t=>je(t,e.id)),["prevent"])},[be(e)?(s(),i(m,{key:0},[e.content.referenceContent?(s(),i("div",re,[f("span",null,p(e.content.referenceContent.senderName)+":",1),f("pre",{innerHTML:a(D)(e.content.referenceContent.content)},null,8,ae)])):g("v-if",!0),e.content.chatMessageType===a(A).EMOJI?(s(),i("img",{key:1,class:r([e.content.referenceContent?"emoji--min":"emoji--big"]),src:a(W).findEmoji(e.__content)},null,10,le)):(s(),i("pre",{key:2,innerHTML:e.__content},null,8,ce))],64)):g("v-if",!0),Ae(e)?(s(),i("pre",{key:1,innerHTML:e.__content},null,8,ue)):g("v-if",!0),ze(e,"template")?(s(),v(q,{key:2,data:e},null,8,["data"])):g("v-if",!0),e.content.chatMessageType===a(A).IMAGE?(s(),v(a(_),{key:3,width:"240",src:e.__content},null,8,["src"])):g("v-if",!0),a(z)(e.content)?(s(),i(m,{key:4},[c(a(C),{class:r({"is-audio":e.content.chatMessageType===a(A).AUDIO}),component:e.content.chatMessageType===a(A).AUDIO?a(F):a(G)},null,8,["class","component"]),f("span",me,p(a(H)(e.__content)),1)],64)):g("v-if",!0),e.content.chatMessageType===a(A).FILE?(s(),v(a(x),{key:5,"wrap-item":!1},{default:u((()=>[c(a(C),{class:"icon-file",size:"40",component:a(K)},null,8,["component"]),c(a(x),{"wrap-item":!1,vertical:"",justify:"space-between",style:{"row-gap":"0"}},{default:u((()=>[f("span",null,p(e.__content),1),f("span",de,p(e.__size),1)])),_:2},1024)])),_:2},1024)):g("v-if",!0),c(a(I),{class:"quick-menu"},{default:u((()=>[a(z)(e.content)?g("v-if",!0):(s(),i(m,{key:0},[g(' <n-button quaternary size="tiny">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<template #icon>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<i class="chat--iconfont chat--icon-face" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t\t</n-button> '),c(a(w),{quaternary:"",size:"tiny",onClick:()=>Re(e)},{icon:u((()=>[c(a(C),{size:"17",component:a(V)},null,8,["component"])])),_:2},1032,["onClick"])],64)),c(a(w),{quaternary:"",size:"tiny",onClick:t=>je(t,e.id)},{icon:u((()=>[c(a(C),{size:"14",component:a(Y)},null,8,["component"])])),_:2},1032,["onClick"])])),_:2},1024)],42,ie)])):g("v-if",!0)]))],2)):g("v-if",!0)],64)})),128))])),_:1}),c(a(U),{ref_key:"contextmenuRef",ref:Te,show:Me.value,"onUpdate:show":t[0]||(t[0]=e=>Me.value=e),position:we.value,id:ke.value,onSelect:Ne},null,8,["show","position","id"]),c(X,{title:(null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.44"))||"转发消息",mode:"relay",onComfirm:Be},{trigger:u((()=>{var e;return[f("span",{style:{display:"none"},ref_key:"relayTriggerRef",ref:_e},(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.45"))||"转发",512)]})),_:1})],6)}}});export{pe as default};
@@ -1 +1 @@
1
- import{defineComponent as t,ref as e,reactive as n,computed as l,openBlock as o,createBlock as a,unref as i,withCtx as s,renderSlot as r,createElementBlock as d,Fragment as u,withDirectives as c,createElementVNode as p,createVNode as v,createCommentVNode as g,toDisplayString as m,createTextVNode as w,renderList as f,vShow as y}from"vue";import{NPopover as k,NAvatar as b,NButton as h,NIcon as C}from"naive-ui";import{ChatbubbleEllipses as I,EyeOffOutline as j,EyeOutline as L,Close as B}from"@vicons/ionicons5";import{useData as _}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{CHAT_TYPE as x}from"../constants/index.js";import{openSessionApi as z,getUserDetailApi as N}from"../api/index.js";import"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";const D={class:"person-profile-main"},S={class:"left"},$={class:"profile"},E={class:"profile__text"},O={class:"right"},P={class:"right__content"},G={class:"label"},T={class:"content"};var U=t({__name:"PersonProfile",props:{userId:{type:[String,Number]},disabled:{type:Boolean,default:!1},userInfo:{type:Object}},emits:["close"],setup(t,{emit:U}){var q,A,F,H,J,K,M,Q;const R=t,{state:V,openSession:W}=_(),X=e(!1),Y=e(!1),Z=e(!1),tt=n({}),et=[{label:(null==(q=window.getLanguageByCode)?void 0:q.call(window,"10010.1.115"))||"机构",value:"",key:"orgName"},{label:(null==(A=window.getLanguageByCode)?void 0:A.call(window,"10010.1.116"))||"姓名",value:"",key:"name"},{label:(null==(F=window.getLanguageByCode)?void 0:F.call(window,"10010.1.117"))||"归属科室",value:"",key:"deptName"},{label:(null==(H=window.getLanguageByCode)?void 0:H.call(window,"10010.1.118"))||"业务科室",value:"",key:"businessDeptNames"},{label:(null==(J=window.getLanguageByCode)?void 0:J.call(window,"10010.1.119"))||"手机号",value:"",key:"phone"},{label:(null==(K=window.getLanguageByCode)?void 0:K.call(window,"10010.1.120"))||"岗位",value:"",key:"post"},{label:(null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.121"))||"工号",value:"",key:"jobId"},{label:(null==(Q=window.getLanguageByCode)?void 0:Q.call(window,"10010.1.122"))||"性别",value:"",key:"orgName"}],nt=l((()=>(tt.id&&et.forEach((t=>{const{key:e}=t;t.value=tt[e]})),et)));async function lt(){var t;X.value=!1;let e=V.sessionList.find((t=>t.receiver===R.userId));if(!e)try{e=await z({chatType:x.SINGLE,receiver:R.userId||(null==(t=R.userInfo)?void 0:t.id),sender:V.userInfo.id})}catch(t){console.log("error :>> ",t)}e&&W(e),U("close")}async function ot(t){if(!t)return;if(!R.userId&&!R.userInfo)return;let e={};R.userId?e=await N({userId:R.userId}):R.userInfo&&(e=R.userInfo),(null==e?void 0:e.id)?Object.assign(tt,e):tt.id=""}function at(t){const{key:e,value:n}=t;return"phone"!==e||Z.value?n:(n||"").replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}return(e,n)=>(o(),a(i(k),{raw:"",class:"person-profile-wrapper",show:X.value,"onUpdate:show":[n[3]||(n[3]=t=>X.value=t),ot],trigger:t.disabled?"manual":"click","show-arrow":!1,to:"body",shift:""},{trigger:s((()=>[r(e.$slots,"trigger")])),default:s((()=>[tt.id?(o(),d(u,{key:0},[c(p("div",D,[p("div",S,[p("div",$,[v(i(b),{src:tt.avatar,bordered:"",round:"",size:100,onClickCapture:n[0]||(n[0]=t=>Y.value=!0)},null,8,["src"]),g(' <n-upload abstract accept="image/*" @change="onChange">\n\t\t\t\t\t\t\t<n-upload-trigger #="{ handleClick }" abstract>\n\t\t\t\t\t\t\t\t<n-button\n\t\t\t\t\t\t\t\t\tcircle\n\t\t\t\t\t\t\t\t\tsecondary\n\t\t\t\t\t\t\t\t\tclass="edit-avatar"\n\t\t\t\t\t\t\t\t\tv-show="userDetail.id === state.userInfo.id"\n\t\t\t\t\t\t\t\t\t@click="handleClick"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t<n-icon size="16" color="#666666" :component="Camera" />\n\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t</n-button>\n\t\t\t\t\t\t\t</n-upload-trigger>\n\t\t\t\t\t\t</n-upload> '),p("div",E,[p("h4",null,m(tt.name),1),p("p",null,m(tt.orgName),1)]),v(i(h),{strong:"",secondary:"",onClick:lt},{default:s((()=>[v(i(C),{size:"13",color:"#666666",component:i(I),style:{"margin-right":"6px"}},null,8,["component"]),w(" 发消息 ")])),_:1})])]),p("div",O,[p("div",P,[(o(!0),d(u,null,f(i(nt),((t,e)=>(o(),d("div",{class:"info-item",key:e},[p("span",G,m(t.label),1),p("div",T,[p("span",null,m(at(t)),1),"phone"===t.key&&at(t)?(o(),a(i(C),{key:0,size:"16",color:"#666666",component:Z.value?i(j):i(L),style:{"margin-left":"10px"},onClick:n[1]||(n[1]=t=>Z.value=!Z.value)},null,8,["component"])):g("v-if",!0)])])))),128))])])],512),[[y,!Y.value]]),c(p("div",{class:"large-avatar",onClick:n[2]||(n[2]=t=>Y.value=!1)},[v(i(h),{circle:"",size:"small",secondary:""},{icon:s((()=>[v(i(C),{size:24,component:i(B),color:"#fff"},null,8,["component"])])),_:1}),v(i(b),{size:310,round:"",src:tt.avatar},null,8,["src"])],512),[[y,Y.value]])],64)):g("v-if",!0)])),_:3},8,["show","trigger"]))}});export{U as default};
1
+ import{defineComponent as t,ref as e,reactive as n,computed as l,openBlock as o,createBlock as a,unref as i,withCtx as r,renderSlot as s,createElementBlock as d,Fragment as u,withDirectives as c,createElementVNode as p,createVNode as v,createCommentVNode as g,toDisplayString as m,createTextVNode as w,renderList as f,vShow as y}from"vue";import{NPopover as k,NAvatar as b,NButton as h,NIcon as C}from"naive-ui";import{ChatbubbleEllipses as I,EyeOffOutline as j,EyeOutline as L,Close as B}from"@vicons/ionicons5";import{useData as _}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{CHAT_TYPE as x}from"../constants/index.js";import{openSessionApi as z,getUserDetailApi as N}from"../api/index.js";import"../utils/index.js";import"lodash-es";import"trtc-sdk-v5";const D={class:"person-profile-main"},S={class:"left"},$={class:"profile"},E={class:"profile__text"},O={class:"right"},P={class:"right__content"},G={class:"label"},T={class:"content"};var U=t({__name:"PersonProfile",props:{userId:{type:[String,Number]},disabled:{type:Boolean,default:!1},userInfo:{type:Object}},emits:["close"],setup(t,{emit:U}){var q,A,F,H,J,K,M,Q;const R=t,{state:V,openSession:W}=_(),X=e(!1),Y=e(!1),Z=e(!1),tt=n({}),et=[{label:(null==(q=window.getLanguageByCode)?void 0:q.call(window,"10010.1.115"))||"机构",value:"",key:"orgName"},{label:(null==(A=window.getLanguageByCode)?void 0:A.call(window,"10010.1.116"))||"姓名",value:"",key:"name"},{label:(null==(F=window.getLanguageByCode)?void 0:F.call(window,"10010.1.117"))||"归属科室",value:"",key:"deptName"},{label:(null==(H=window.getLanguageByCode)?void 0:H.call(window,"10010.1.118"))||"业务科室",value:"",key:"businessDeptNames"},{label:(null==(J=window.getLanguageByCode)?void 0:J.call(window,"10010.1.119"))||"手机号",value:"",key:"phone"},{label:(null==(K=window.getLanguageByCode)?void 0:K.call(window,"10010.1.120"))||"岗位",value:"",key:"post"},{label:(null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.121"))||"工号",value:"",key:"jobId"},{label:(null==(Q=window.getLanguageByCode)?void 0:Q.call(window,"10010.1.122"))||"性别",value:"",key:"orgName"}],nt=l((()=>(tt.id&&et.forEach((t=>{const{key:e}=t;t.value=tt[e]})),et)));async function lt(){var t;X.value=!1;let e=V.sessionList.find((t=>t.receiver===R.userId));if(!e)try{e=await z({chatType:x.SINGLE,receiver:R.userId||(null==(t=R.userInfo)?void 0:t.id),sender:V.userInfo.id})}catch(t){console.log("error :>> ",t)}e&&W(e),U("close")}async function ot(t){if(!t)return;if(!R.userId&&!R.userInfo)return;let e={};R.userId?e=await N({userId:R.userId}):R.userInfo&&(e=R.userInfo),(null==e?void 0:e.id)?Object.assign(tt,e):tt.id=""}function at(t){const{key:e,value:n}=t;return"phone"!==e||Z.value?n:(n||"").replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}return(e,n)=>(o(),a(i(k),{raw:"",class:"person-profile-wrapper",show:X.value,"onUpdate:show":[n[3]||(n[3]=t=>X.value=t),ot],trigger:t.disabled?"manual":"click","show-arrow":!1,to:"body",shift:""},{trigger:r((()=>[s(e.$slots,"trigger")])),default:r((()=>[tt.id?(o(),d(u,{key:0},[c(p("div",D,[p("div",S,[p("div",$,[v(i(b),{src:tt.avatar,bordered:"",round:"",size:100,onClickCapture:n[0]||(n[0]=t=>Y.value=!0)},null,8,["src"]),g(' <n-upload abstract accept="image/*" @change="onChange">\r\n\t\t\t\t\t\t\t<n-upload-trigger #="{ handleClick }" abstract>\r\n\t\t\t\t\t\t\t\t<n-button\r\n\t\t\t\t\t\t\t\t\tcircle\r\n\t\t\t\t\t\t\t\t\tsecondary\r\n\t\t\t\t\t\t\t\t\tclass="edit-avatar"\r\n\t\t\t\t\t\t\t\t\tv-show="userDetail.id === state.userInfo.id"\r\n\t\t\t\t\t\t\t\t\t@click="handleClick"\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t<template #icon>\r\n\t\t\t\t\t\t\t\t\t\t<n-icon size="16" color="#666666" :component="Camera" />\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</n-button>\r\n\t\t\t\t\t\t\t</n-upload-trigger>\r\n\t\t\t\t\t\t</n-upload> '),p("div",E,[p("h4",null,m(tt.name),1),p("p",null,m(tt.orgName),1)]),v(i(h),{strong:"",secondary:"",onClick:lt},{default:r((()=>[v(i(C),{size:"13",color:"#666666",component:i(I),style:{"margin-right":"6px"}},null,8,["component"]),w(" 发消息 ")])),_:1})])]),p("div",O,[p("div",P,[(o(!0),d(u,null,f(i(nt),((t,e)=>(o(),d("div",{class:"info-item",key:e},[p("span",G,m(t.label),1),p("div",T,[p("span",null,m(at(t)),1),"phone"===t.key&&at(t)?(o(),a(i(C),{key:0,size:"16",color:"#666666",component:Z.value?i(j):i(L),style:{"margin-left":"10px"},onClick:n[1]||(n[1]=t=>Z.value=!Z.value)},null,8,["component"])):g("v-if",!0)])])))),128))])])],512),[[y,!Y.value]]),c(p("div",{class:"large-avatar",onClick:n[2]||(n[2]=t=>Y.value=!1)},[v(i(h),{circle:"",size:"small",secondary:""},{icon:r((()=>[v(i(C),{size:24,component:i(B),color:"#fff"},null,8,["component"])])),_:1}),v(i(b),{size:310,round:"",src:tt.avatar},null,8,["src"])],512),[[y,Y.value]])],64)):g("v-if",!0)])),_:3},8,["show","trigger"]))}});export{U as default};
@@ -1 +1 @@
1
- import{defineComponent as e,reactive as o,ref as a,watch as t,nextTick as n,openBlock as s,createElementBlock as i,normalizeClass as l,unref as r,createCommentVNode as m,Fragment as u,createBlock as c,mergeProps as d,createElementVNode as p,normalizeStyle as v,createVNode as f,withCtx as g,renderList as w,toDisplayString as h,createTextVNode as y,resolveDynamicComponent as k,renderSlot as S}from"vue";import C from"./hooks/use-noData.js";import{ScaleViewProps as b}from"./hooks/scaleview-props.js";import{getScaleViewState as D}from"./hooks/scaleview-state.js";import{ScaleViewComputed as E}from"./hooks/scaleview-computed.js";import{ScaleViewInit as j}from"./hooks/scaleview-init.js";import{ScaleViewSubmit as _}from"./hooks/scaleview-submit.js";import{ScaleViewMethods as x}from"./hooks/scaleview-methods.js";import{handleQueryParams as F,isCollection as L}from"./utils/judge-types.js";import{useEvent as P}from"./hooks/use-event.js";import"xe-utils";import"moment";import q from"../../../shared/utils/vexutilsExpand.js";import N from"./components/NoData.vue.js";import R from"./components/EvaluateCountdown.vue.js";import A from"./components/EvaluatePage.vue.js";import B from"./components/AnswerParse.vue.js";import M from"./components/ScaleScore.js";import O from"./components/DescribeContent.vue.js";import{NForm as T,NFormItem as V,NButton as I}from"naive-ui";const J=["innerHTML"],G={key:0,class:"required-text"},W={key:1,class:"evalute-label"},H=["onClick"],Q=p("i",{class:"scale-view-iconfont icon-scale-view-dengpao"},null,-1),$={key:1,class:"footer"};var z=e({__name:"ScaleView",props:b,emits:["onCloseSetting","submitNoRequest","onSubmit","startWriteScale"],setup(e,{expose:b,emit:z}){const K=e,{ScaleViewState:U}=D(),X=o(U),Y=a(null),Z=a(null),ee=a(null),{noDataState:oe,setNoData:ae,resetNodata:te}=C(),ne=F(),{showEvatip:se,isFormBoldOpen:ie,scaleStyle:le,handlePageClass:re,isShowItem:me,handleShowQuestionNumber:ue,hasScore:ce,isPreviewScale:de,showEvaluateEntry:pe,showEvaluateCoundownPage:ve,showScaleFooter:fe,isCancelBtn:ge,isSaveBtn:we,showEvaluateLabel:he,showAnswerParse:ye,propsConfig:ke,evaluatePageProps:Se,evaluateCountdownProps:Ce,isEvaluetaResSituation:be,disableEdit:De,desStart:Ee,desEnd:je,desContent:_e}=E(K,X,{query:ne,scaleViewDom:Y}),{initForm:xe}=j(K,X,z,{query:ne}),{submitMethod:Fe,onSubmitData:Le,onSubmitForm:Pe,handleScoreJson:qe}=_(K,X,z,{query:ne,formRef:ee,countdownDom:Z}),{nextLogicEvent:Ne,handleDynamicDataRelation:Re}=P(K,X),{scaleChange:Ae,labelChange:Be,vodFileList:Me,writeGuage:Oe,closeEvaluateCountdown:Te,showEvaTipModal:Ve}=x(K,X,z,{nextLogicEvent:Ne,handleDynamicDataRelation:Re,isPreviewScale:de,submitMethod:Fe,isEvaluetaResSituation:be,handleScoreJson:qe,disableEdit:De});(()=>{let{id:e}=ne;e&&(X.shareId=e)})();const Ie=e=>{try{te(),xe(e)}catch(e){console.log(e,"--error"),X.spinning=!1,X.hasFrontAddress=!1,ae(!0,null==e?void 0:e.resultMsg,null==e?void 0:e.result)}};t((()=>K.ids),((e,o)=>{o?e.guage_id&&e.guage_id!=o.guage_id&&Ie(e):e.guage_id&&Ie(e)}),{immediate:!0}),t((()=>K.guageData),(e=>{if(!e||!Object.keys(e||{}).length)return;X.form={},X.formArray=[];const o=JSON.parse(JSON.stringify(e));n((()=>{xe(o)}))}),{immediate:!0});const Je=q.debounce(Le,300),Ge=()=>{z("onCloseSetting")};return b({getScaleData:()=>({...X}),onSubmitForm:Pe,cancel:Ge}),(e,o)=>(s(),i("div",{class:l(["c-scale-view-block",{"c-scale-view-block-hasfooter":r(fe)}]),ref_key:"scaleViewDom",ref:Y},[m(' <template v-if="state.spinning">\n <n-spin :show="state.spinning" description="加载中"></n-spin>\n </template> '),X.spinning||X.hasFrontAddress?m("v-if",!0):(s(),i(u,{key:0},[r(oe).noData?(s(),c(N,{key:0,noDataImg:r(oe).noDataImg,noDataTip:r(oe).noDataTip},null,8,["noDataImg","noDataTip"])):(s(),i(u,{key:1},[r(pe)?(s(),c(A,d({key:0},r(Se),{onWriteGuage:r(Oe)}),null,16,["onWriteGuage"])):(s(),i(u,{key:1},[r(ve)?(s(),c(R,d({key:0,ref_key:"countdownDom",ref:Z},r(Ce),{onCloseEvaluateCountdown:r(Te)}),null,16,["onCloseEvaluateCountdown"])):m("v-if",!0),p("div",{class:l(["scale-container",{"scale-container-nopadding":r(re),"scale-container-hasfooter":r(fe)}]),style:v(r(le))},[r(ce)?(s(),c(r(M),{key:0,config:X.config,maxScore:X.maxScore},null,8,["config","maxScore"])):m("v-if",!0),r(Ee)?(s(),c(O,{key:1,content:r(_e)},null,8,["content"])):m("v-if",!0),f(r(T),{ref_key:"formRef",ref:ee,model:X.form,rules:X.rules,"require-mark-placement":"left",class:"main"},{default:g((()=>[(s(!0),i(u,null,w(X.formArray,((e,o)=>(s(),i(u,{key:(e.id||e.seq)+o},[r(me)(e)?(s(),c(r(V),{key:0,path:e.val_key,"show-label":!r(L)(e.type),class:"c-scle-form-item"},{label:g((()=>[p("span",{class:l({"scale-label-required":r(ie)(e)}),innerHTML:r(ue)(e)},null,10,J),r(ie)(e)?(s(),i("span",G,"(必填)")):m("v-if",!0),r(he)(e)?(s(),i("span",W,h(r(he)(e)),1)):m("v-if",!0),r(se)(e)?(s(),i("span",{key:2,class:"evalute-tip",onClick:o=>r(Ve)(e)},[Q,y(" 查看提示 ")],8,H)):m("v-if",!0)])),default:g((()=>[(s(),c(k(e.renderCom),d(r(ke)(e,o),{key:(e.id||e.seq)+o,onScaleChange:r(Ae),onOnChange:o=>r(Be)(o,e),onVodFileList:r(Me)}),null,16,["onScaleChange","onOnChange","onVodFileList"])),r(ye)(e)?(s(),c(B,{key:0,item:e},null,8,["item"])):m("v-if",!0)])),_:2},1032,["path","show-label"])):m("v-if",!0)],64)))),128))])),_:1},8,["model","rules"]),r(je)?(s(),c(O,{key:2,content:r(_e)},null,8,["content"])):m("v-if",!0)],6),r(fe)?(s(),i("div",$,[m(" 分享的链接 隐藏取消按钮 "),r(ge)?(s(),c(r(I),{key:0,onClick:Ge},{default:g((()=>{var e;return[y((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.28"))||"取消")]})),_:1})):m("v-if",!0),r(we)?(s(),c(r(I),{key:1,onClick:r(Je),disabled:X.banSubmit,type:"primary"},{default:g((()=>{var e;return[y((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.244"))||"保存")]})),_:1},8,["onClick","disabled"])):m("v-if",!0),S(e.$slots,"extendBtn")])):m("v-if",!0)],64))],64))],64))],2))}});export{z as default};
1
+ import{defineComponent as e,reactive as o,ref as a,watch as t,nextTick as n,openBlock as s,createElementBlock as i,normalizeClass as l,unref as r,createCommentVNode as m,Fragment as u,createBlock as c,mergeProps as d,createElementVNode as p,normalizeStyle as v,createVNode as f,withCtx as g,renderList as w,toDisplayString as h,createTextVNode as y,resolveDynamicComponent as k,renderSlot as S}from"vue";import C from"./hooks/use-noData.js";import{ScaleViewProps as b}from"./hooks/scaleview-props.js";import{getScaleViewState as D}from"./hooks/scaleview-state.js";import{ScaleViewComputed as E}from"./hooks/scaleview-computed.js";import{ScaleViewInit as j}from"./hooks/scaleview-init.js";import{ScaleViewSubmit as _}from"./hooks/scaleview-submit.js";import{ScaleViewMethods as x}from"./hooks/scaleview-methods.js";import{handleQueryParams as F,isCollection as L}from"./utils/judge-types.js";import{useEvent as P}from"./hooks/use-event.js";import"xe-utils";import"moment";import q from"../../../shared/utils/vexutilsExpand.js";import N from"./components/NoData.vue.js";import R from"./components/EvaluateCountdown.vue.js";import A from"./components/EvaluatePage.vue.js";import B from"./components/AnswerParse.vue.js";import M from"./components/ScaleScore.js";import O from"./components/DescribeContent.vue.js";import{NForm as T,NFormItem as V,NButton as I}from"naive-ui";const J=["innerHTML"],G={key:0,class:"required-text"},W={key:1,class:"evalute-label"},H=["onClick"],Q=p("i",{class:"scale-view-iconfont icon-scale-view-dengpao"},null,-1),$={key:1,class:"footer"};var z=e({__name:"ScaleView",props:b,emits:["onCloseSetting","submitNoRequest","onSubmit","startWriteScale"],setup(e,{expose:b,emit:z}){const K=e,{ScaleViewState:U}=D(),X=o(U),Y=a(null),Z=a(null),ee=a(null),{noDataState:oe,setNoData:ae,resetNodata:te}=C(),ne=F(),{showEvatip:se,isFormBoldOpen:ie,scaleStyle:le,handlePageClass:re,isShowItem:me,handleShowQuestionNumber:ue,hasScore:ce,isPreviewScale:de,showEvaluateEntry:pe,showEvaluateCoundownPage:ve,showScaleFooter:fe,isCancelBtn:ge,isSaveBtn:we,showEvaluateLabel:he,showAnswerParse:ye,propsConfig:ke,evaluatePageProps:Se,evaluateCountdownProps:Ce,isEvaluetaResSituation:be,disableEdit:De,desStart:Ee,desEnd:je,desContent:_e}=E(K,X,{query:ne,scaleViewDom:Y}),{initForm:xe}=j(K,X,z,{query:ne}),{submitMethod:Fe,onSubmitData:Le,onSubmitForm:Pe,handleScoreJson:qe}=_(K,X,z,{query:ne,formRef:ee,countdownDom:Z}),{nextLogicEvent:Ne,handleDynamicDataRelation:Re}=P(K,X),{scaleChange:Ae,labelChange:Be,vodFileList:Me,writeGuage:Oe,closeEvaluateCountdown:Te,showEvaTipModal:Ve}=x(K,X,z,{nextLogicEvent:Ne,handleDynamicDataRelation:Re,isPreviewScale:de,submitMethod:Fe,isEvaluetaResSituation:be,handleScoreJson:qe,disableEdit:De});(()=>{let{id:e}=ne;e&&(X.shareId=e)})();const Ie=e=>{try{te(),xe(e)}catch(e){console.log(e,"--error"),X.spinning=!1,X.hasFrontAddress=!1,ae(!0,null==e?void 0:e.resultMsg,null==e?void 0:e.result)}};t((()=>K.ids),((e,o)=>{o?e.guage_id&&e.guage_id!=o.guage_id&&Ie(e):e.guage_id&&Ie(e)}),{immediate:!0}),t((()=>K.guageData),(e=>{if(!e||!Object.keys(e||{}).length)return;X.form={},X.formArray=[];const o=JSON.parse(JSON.stringify(e));n((()=>{xe(o)}))}),{immediate:!0});const Je=q.debounce(Le,300),Ge=()=>{z("onCloseSetting")};return b({getScaleData:()=>({...X}),onSubmitForm:Pe,cancel:Ge}),(e,o)=>(s(),i("div",{class:l(["c-scale-view-block",{"c-scale-view-block-hasfooter":r(fe)}]),ref_key:"scaleViewDom",ref:Y},[m(' <template v-if="state.spinning">\r\n <n-spin :show="state.spinning" description="加载中"></n-spin>\r\n </template> '),X.spinning||X.hasFrontAddress?m("v-if",!0):(s(),i(u,{key:0},[r(oe).noData?(s(),c(N,{key:0,noDataImg:r(oe).noDataImg,noDataTip:r(oe).noDataTip},null,8,["noDataImg","noDataTip"])):(s(),i(u,{key:1},[r(pe)?(s(),c(A,d({key:0},r(Se),{onWriteGuage:r(Oe)}),null,16,["onWriteGuage"])):(s(),i(u,{key:1},[r(ve)?(s(),c(R,d({key:0,ref_key:"countdownDom",ref:Z},r(Ce),{onCloseEvaluateCountdown:r(Te)}),null,16,["onCloseEvaluateCountdown"])):m("v-if",!0),p("div",{class:l(["scale-container",{"scale-container-nopadding":r(re),"scale-container-hasfooter":r(fe)}]),style:v(r(le))},[r(ce)?(s(),c(r(M),{key:0,config:X.config,maxScore:X.maxScore},null,8,["config","maxScore"])):m("v-if",!0),r(Ee)?(s(),c(O,{key:1,content:r(_e)},null,8,["content"])):m("v-if",!0),f(r(T),{ref_key:"formRef",ref:ee,model:X.form,rules:X.rules,"require-mark-placement":"left",class:"main"},{default:g((()=>[(s(!0),i(u,null,w(X.formArray,((e,o)=>(s(),i(u,{key:(e.id||e.seq)+o},[r(me)(e)?(s(),c(r(V),{key:0,path:e.val_key,"show-label":!r(L)(e.type),class:"c-scle-form-item"},{label:g((()=>[p("span",{class:l({"scale-label-required":r(ie)(e)}),innerHTML:r(ue)(e)},null,10,J),r(ie)(e)?(s(),i("span",G,"(必填)")):m("v-if",!0),r(he)(e)?(s(),i("span",W,h(r(he)(e)),1)):m("v-if",!0),r(se)(e)?(s(),i("span",{key:2,class:"evalute-tip",onClick:o=>r(Ve)(e)},[Q,y(" 查看提示 ")],8,H)):m("v-if",!0)])),default:g((()=>[(s(),c(k(e.renderCom),d(r(ke)(e,o),{key:(e.id||e.seq)+o,onScaleChange:r(Ae),onOnChange:o=>r(Be)(o,e),onVodFileList:r(Me)}),null,16,["onScaleChange","onOnChange","onVodFileList"])),r(ye)(e)?(s(),c(B,{key:0,item:e},null,8,["item"])):m("v-if",!0)])),_:2},1032,["path","show-label"])):m("v-if",!0)],64)))),128))])),_:1},8,["model","rules"]),r(je)?(s(),c(O,{key:2,content:r(_e)},null,8,["content"])):m("v-if",!0)],6),r(fe)?(s(),i("div",$,[m(" 分享的链接 隐藏取消按钮 "),r(ge)?(s(),c(r(I),{key:0,onClick:Ge},{default:g((()=>{var e;return[y((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.28"))||"取消")]})),_:1})):m("v-if",!0),r(we)?(s(),c(r(I),{key:1,onClick:r(Je),disabled:X.banSubmit,type:"primary"},{default:g((()=>{var e;return[y((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.244"))||"保存")]})),_:1},8,["onClick","disabled"])):m("v-if",!0),S(e.$slots,"extendBtn")])):m("v-if",!0)],64))],64))],64))],2))}});export{z as default};
@@ -103,6 +103,9 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
103
103
  uncheckableField: {
104
104
  type: StringConstructor;
105
105
  };
106
+ onlyForwardCascade: {
107
+ type: BooleanConstructor;
108
+ };
106
109
  }, {
107
110
  $attrs: {
108
111
  [x: string]: unknown;
@@ -211,6 +214,9 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
211
214
  uncheckableField: {
212
215
  type: StringConstructor;
213
216
  };
217
+ onlyForwardCascade: {
218
+ type: BooleanConstructor;
219
+ };
214
220
  }>> & {
215
221
  onCheck?: ((...args: any[]) => any) | undefined;
216
222
  onCheckWithLevel?: ((...args: any[]) => any) | undefined;
@@ -665,6 +671,9 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
665
671
  uncheckableField: {
666
672
  type: StringConstructor;
667
673
  };
674
+ onlyForwardCascade: {
675
+ type: BooleanConstructor;
676
+ };
668
677
  }, {
669
678
  searchFilterBase: {
670
679
  isOpen: boolean;
@@ -769,6 +778,9 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
769
778
  uncheckableField: {
770
779
  type: StringConstructor;
771
780
  };
781
+ onlyForwardCascade: {
782
+ type: BooleanConstructor;
783
+ };
772
784
  }>> & {}>>;
773
785
  emit: any;
774
786
  keyword: import("vue").Ref<string>;
@@ -853,7 +865,11 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
853
865
  key: string | number;
854
866
  }[];
855
867
  setTagData: (tree: import("naive-ui").TreeOption[]) => void;
856
- updateTreeChecked: (keys: (string | number)[]) => void;
868
+ getFlattenKeys: (tree: import("naive-ui").TreeOption[]) => any[];
869
+ updateTreeChecked: (keys: (string | number)[], _: any, meta: {
870
+ node: import("naive-ui").TreeOption | null;
871
+ action: "check" | "uncheck";
872
+ }) => void;
857
873
  setCheckedAll: () => void;
858
874
  clearAll: () => void;
859
875
  closeTag: (tag: {
@@ -1195,6 +1211,9 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
1195
1211
  uncheckableField: {
1196
1212
  type: StringConstructor;
1197
1213
  };
1214
+ onlyForwardCascade: {
1215
+ type: BooleanConstructor;
1216
+ };
1198
1217
  }>>, {
1199
1218
  data: (import("naive-ui/es/tree/src/interface").TreeOptionBase & Record<string, unknown> & import("../../shared/types").AnyObject)[];
1200
1219
  defaultList: ((string | number) | {
@@ -1227,6 +1246,7 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
1227
1246
  roleData: (import("naive-ui/es/tree/src/interface").TreeOptionBase & Record<string, unknown> & import("../../shared/types").AnyObject)[];
1228
1247
  roleFields: Record<string, any>;
1229
1248
  forceShowSelectAll: boolean;
1249
+ onlyForwardCascade: boolean;
1230
1250
  }>>;
1231
1251
  getProps: import("vue").ComputedRef<Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
1232
1252
  defaultList: {
@@ -1332,6 +1352,9 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
1332
1352
  uncheckableField: {
1333
1353
  type: StringConstructor;
1334
1354
  };
1355
+ onlyForwardCascade: {
1356
+ type: BooleanConstructor;
1357
+ };
1335
1358
  }>> & {
1336
1359
  onCheck?: ((...args: any[]) => any) | undefined;
1337
1360
  onCheckWithLevel?: ((...args: any[]) => any) | undefined;
@@ -1444,6 +1467,9 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
1444
1467
  uncheckableField: {
1445
1468
  type: StringConstructor;
1446
1469
  };
1470
+ onlyForwardCascade: {
1471
+ type: BooleanConstructor;
1472
+ };
1447
1473
  }>> & {
1448
1474
  onCheck?: ((...args: any[]) => any) | undefined;
1449
1475
  onCheckWithLevel?: ((...args: any[]) => any) | undefined;
@@ -1482,5 +1508,6 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
1482
1508
  switchTypeData: import("../../shared/types").AnyObject;
1483
1509
  tagProps: import("../../shared/types").AnyObject;
1484
1510
  forceShowSelectAll: boolean;
1511
+ onlyForwardCascade: boolean;
1485
1512
  }>>;
1486
1513
  export default SelectPerson;
@@ -98,6 +98,9 @@ declare const _default: import("vue").DefineComponent<{
98
98
  uncheckableField: {
99
99
  type: StringConstructor;
100
100
  };
101
+ onlyForwardCascade: {
102
+ type: BooleanConstructor;
103
+ };
101
104
  }, {
102
105
  searchFilterBase: {
103
106
  isOpen: boolean;
@@ -189,6 +192,9 @@ declare const _default: import("vue").DefineComponent<{
189
192
  uncheckableField: {
190
193
  type: StringConstructor;
191
194
  };
195
+ onlyForwardCascade: {
196
+ type: BooleanConstructor;
197
+ };
192
198
  }>> & {}>>;
193
199
  emit: any;
194
200
  keyword: import("vue").Ref<string>;
@@ -267,7 +273,11 @@ declare const _default: import("vue").DefineComponent<{
267
273
  checkedAllChange: (checked: boolean) => void;
268
274
  uniq: (arr: ITag[]) => ITag[];
269
275
  setTagData: (tree: TreeOption[]) => void;
270
- updateTreeChecked: (keys: Array<IKey>) => void;
276
+ getFlattenKeys: (tree: TreeOption[]) => any[];
277
+ updateTreeChecked: (keys: Array<IKey>, _: any, meta: {
278
+ node: TreeOption | null;
279
+ action: 'check' | 'uncheck';
280
+ }) => void;
271
281
  setCheckedAll: () => void;
272
282
  clearAll: () => void;
273
283
  closeTag: (tag: ITag) => void;
@@ -593,6 +603,9 @@ declare const _default: import("vue").DefineComponent<{
593
603
  uncheckableField: {
594
604
  type: StringConstructor;
595
605
  };
606
+ onlyForwardCascade: {
607
+ type: BooleanConstructor;
608
+ };
596
609
  }>>, {
597
610
  data: ITreeOption[];
598
611
  defaultList: (IKey | ITag)[];
@@ -612,5 +625,6 @@ declare const _default: import("vue").DefineComponent<{
612
625
  roleData: ITreeOption[];
613
626
  roleFields: Record<string, any>;
614
627
  forceShowSelectAll: boolean;
628
+ onlyForwardCascade: boolean;
615
629
  }>;
616
630
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,inject as l,ref as t,computed as n,reactive as a,watch as i,openBlock as u,createBlock as o,unref as c,withCtx as r,createVNode as d,createCommentVNode as s,withKeys as v,createTextVNode as h,toDisplayString as p,createElementBlock as y,Fragment as k,renderList as f,withDirectives as m,vShow as g,mergeProps as w,createElementVNode as b,normalizeStyle as _,renderSlot as S}from"vue";import{NGrid as T,NGi as C,NSpace as L,NInputGroup as F,NInput as x,NIcon as j,NButton as B,NTag as D,NCheckbox as E,NEmpty as I,NTree as O}from"naive-ui";import{CloseCircleSharp as N}from"@vicons/ionicons5";import{searchFilterTree as P,getExpandedKeys as $}from"./utils/index.js";import{cloneDeep as A}from"lodash-es";import{SelectItemTypesConfig as R,SelectRoleEnumsConfig as K,SearchTypeConfig as U}from"./types/enums.js";import q from"./components/SearchMultiple.vue.js";import H from"./components/SearchOrgAndStaff.vue.js";import{InjectionSelectPersonEmits as M}from"./constants/index.js";var W,G;const z={key:0,class:"select-type-tags"},J={key:4,class:"tree-content"},Q={key:0};var V=e({__name:"SelectPerson",props:{defaultList:{type:Array,default:()=>[]},data:{type:Array,default:()=>[]},searchPlaceholder:{type:String,default:(null==(W=window.getLanguageByCode)?void 0:W.call(window,"10010.1.508"))||"输入关键字搜索"},searchButtonText:{type:String,default:(null==(G=window.getLanguageByCode)?void 0:G.call(window,"10010.1.36"))||"搜索"},wordbook:{type:Object,default:()=>({})},wordbookChild:{type:Object,default:()=>({})},showCount:{type:Boolean,default:!0},showClear:{type:Boolean,default:!0},multiple:{type:Boolean,default:!0},searchInner:{type:Boolean,default:!1},searchFilter:{type:Object,default:()=>({})},treeSetting:{type:Object,default:()=>({})},queryLoadChildData:{type:Function,default:void 0},queryTreeSearch:{type:Function,default:()=>Promise.resolve([])},showSelectType:{type:Boolean,default:!1},roleData:{type:Array,default:()=>[]},roleFields:{type:Object,default:()=>({label:"name",key:"id",children:"children"})},forceShowSelectAll:{type:Boolean},uncheckableField:{type:String}},setup(e,{expose:W}){var G,V,X,Y,Z,ee,le;const te=e,ne={isOpen:!1,multiple:!1,customTitles:[(null==(G=window.getLanguageByCode)?void 0:G.call(window,"10010.1.510"))||"联系人",(null==(V=window.getLanguageByCode)?void 0:V.call(window,"10010.1.511"))||"部门"],itemHeight:250},ae=[{key:"main",label:(null==(X=window.getLanguageByCode)?void 0:X.call(window,"10010.1.512"))||"选人员"},{key:"dept",label:(null==(Y=window.getLanguageByCode)?void 0:Y.call(window,"10010.1.513"))||"选科室"},{key:"role",label:(null==(Z=window.getLanguageByCode)?void 0:Z.call(window,"10010.1.514"))||"选角色"}],ie={dept:(null==(ee=window.getLanguageByCode)?void 0:ee.call(window,"10010.1.202"))||"科室",role:(null==(le=window.getLanguageByCode)?void 0:le.call(window,"10010.1.515"))||"角色"},ue=l(M),oe=t(""),ce=t(!1),re=t([]),de=t([]),se=t([]),ve=t([]),he=t([]),pe=t(!1),ye=t([]),ke=n((()=>!!te.queryLoadChildData)),fe=n((()=>{var e,l;return null!=(l=null==(e=null==te?void 0:te.treeSetting)?void 0:e.checkStrategy)?l:"child"})),me=n((()=>(null==te?void 0:te.searchFilter)&&Object.keys(null==te?void 0:te.searchFilter).length>0)),ge=t("main"),we=n((()=>me.value?{...A(ne),...te.searchFilter}:A(ne))),be=n((()=>{var e,l;return null!=(l=null==(e=null==te?void 0:te.wordbookChild)?void 0:e.user_expand_keys)?l:[]})),_e=n((()=>({height:te.multiple?"342px":"308px"}))),Se=n((()=>{if(te.showSelectType){return function(e,l){let t={};return e.reduce(((e,n)=>(!t[n[l]]&&(t[n[l]]=e.push(n)),e)),[])}([...Le.main.filter((e=>(e.itemType=R.PERSON,te.uncheckableField?e[xe.value]==K.STAFF&&!e[te.uncheckableField]:e[xe.value]==K.STAFF))),...Le.dept.filter((e=>(e.itemType=R.DEPT,te.uncheckableField?e[xe.value]==K.DEPT&&!e[te.uncheckableField]:e[xe.value]==K.DEPT))),...Le.role.filter((e=>(e.itemType=R.ROLE,te.uncheckableField?!e[te.uncheckableField]:e)))],"key")}let e=[];return re.value.forEach((l=>{for(let t=0,n=ve.value.length;t<n;t++){const n=ve.value[t];if(n.key==l){(!te.uncheckableField||te.uncheckableField&&!n.originItem[te.uncheckableField])&&e.push(n);break}}})),e})),Te=a({main:[],dept:[],role:[],temp:[]}),Ce=a({main:[],dept:[],role:[]}),Le=a({main:[],dept:[],role:[]}),Fe=a({main:[],dept:[],role:[]}),xe=n((()=>{var e;return(null==(e=te.wordbook)?void 0:e.type)||"type"})),je=n((()=>te.wordbookChild.user_id_obj||te.wordbook.parent_id_obj||Date.now()));function Be(){const e=A(Ke(te.data));Te.main=Te.temp=e,Oe(Te.temp,null,(e=>{Fe.main.push(e.key)})),ye.value=Fe.main,Te.dept=De(A(e),(e=>{Fe.dept.push(e.key)})),Te.role=Ee(A(te.roleData),(e=>{Fe.role.push(e.key)}))}function De(e,l){return e.filter((e=>{var t;te.showSelectType&&(null==(t=e.children)?void 0:t.length)&&(e.children=De(e.children,l));const n=e[xe.value]==K.DEPT;return n&&Ne(e,l),n}))}function Ee(e,l){const{label:t,key:n,children:a="children"}=te.roleFields;return e.map((e=>{var i;return e.key=e[n],e.label=e.title=e[t],(null==(i=e[a])?void 0:i.length)&&(e.children=Ee(e[a],l)),Ne(e,l),e}))}function Ie(e,l){var t,n;const a=["main","dept"].includes(l)?je.value:null==(t=te.roleFields)?void 0:t.key;for(let t=0,i=e.length;t<i;t++){const i=e[t],u=he.value.map((e=>e.key));Ce[l].includes(i.key)&&!u.includes(i.key)&&Le[l].push({...i,key:i[a]}),(null==(n=i.children)?void 0:n.length)&&Ie(i.children,l)}}function Oe(e,l,t){var n,a;for(let i=0,u=e.length;i<u;i++){const u=e[i];let o=be.value.reduce(((e,l)=>e+(u[l]?`${u[l]},`:"")),"");u.title_expand_strs=o.slice(0,-1),u.title=Re(u),u.label=Re(u),u.parentNode=l,u.key||(u.key=u[te.wordbookChild.user_id_obj]||u[te.wordbook.parent_id_obj]||Date.now()),(null==(n=u.children)?void 0:n.length)?(Oe(u.children,u,t),$e(u)):0===(null==(a=u.children)?void 0:a.length)&&Reflect.deleteProperty(u,"children"),Ne(u,t)}}function Ne(e,l){var t,n;switch(null!=(n=null==(t=null==te?void 0:te.treeSetting)?void 0:t.checkStrategy)?n:"child"){case"child":!function(e,l){e.disabled||e.children||!e.key||l&&l(e)}(e,l);break;case"parent":!function(e,l){e.disabled||e.tempTitle||!e.key||l&&l(e)}(e,l);break;case"all":!function(e,l){!e.disabled&&e.key&&l&&l(e)}(e,l)}}async function Pe(e){if(te.queryLoadChildData){const l=await te.queryLoadChildData(e);return l.children&&(l.children=l.children.map((e=>({...e,tempTitle:l.tempTitle?`${l.title}/${l.tempTitle}`:l.title})))),l}return e}function $e(e){var l;(null==(l=e.children)?void 0:l.every((e=>e.disabled)))&&(e.disabled=!0)}function Ae({option:e}){var l,t;if((null==(l=e.children)?void 0:l.length)||ke.value&&!(null==e?void 0:e.isLeaf)){const l=te.wordbook.user_count_obj&&e[te.wordbook.user_count_obj]||"",t=l?`(${l})`:"",n=`${e.title}${t}`;return d("span",{title:n},[n])}{const l=null!=(t=e.title_expand_strs)?t:"";return d("p",{class:"user_item"},[d("span",{title:e.title},[e.title]),d("span",{class:"user_item_expand",title:l},[l])])}}function Re(e){return e[te.wordbookChild.user_name_obj]||e[te.wordbook.parent_name_obj]||e.orgName||e.title||""}function Ke(e){var l;for(let t=0,n=e.length;t<n;t++){const n=e[t],a=te.wordbook.children||"children";if(null==(l=n[a])?void 0:l.length){const e=Ue(n[a],[]);n.innerItemsNum=e.length,n.innerLeafs=e,n.children=Ke(n[a])}}return te.showSelectType?e:qe(e,"")}function Ue(e,l){var t;for(let n=0,a=e.length;n<a;n++){const a=e[n];(null==(t=a.children)?void 0:t.length)?Ue(a.children,l):!a.disabled&&l.push(a)}return l}function qe(e,l){return e&&0!==e.length?e.map((e=>{var t;const n=Re(e),a=l?`${n}/${l}`:n;return{...e,tempTitle:l,children:(null==(t=e.children)?void 0:t.length)?qe(null==e?void 0:e.children,a):[]}})):[]}async function He(){var e,l;const t=null!=(l=null==(e=null==te?void 0:te.wordbook)?void 0:e.filter_key)?l:"keyword";if(pe.value=!!oe.value.trim(),ke.value)se.value=await te.queryTreeSearch(oe.value);else{const e=function(){const e={[U.SEARCH_ORG_STAFF]:me.value,[U.SEARCH_ORG]:te.searchInner},l=Object.keys(e).find((l=>e[l]));return null!=l?l:""}();se.value=P(e,Te.temp,oe.value,t)}de.value=se.value.length&&oe.value?$(se.value):[]}function Me(e,l){var t,n;switch(null!=(n=null==(t=null==te?void 0:te.treeSetting)?void 0:t.checkStrategy)?n:"child"){case"child":!function(e,l){for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.disabled&&(!n.children||n.isLeaf)&&(l&&!re.value.includes(n.key)&&re.value.push(n.key),!l)){const e=re.value.findIndex((e=>e===n.key));re.value.splice(e,1)}n.children&&Me(n.children,l)}}(e,l);break;case"parent":!function(e,l){re.value=[];for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.disabled&&!n.tempTitle&&(l&&!re.value.includes(n.key)&&re.value.push(n.key),!l)){const e=re.value.findIndex((e=>e===n.key));re.value.splice(e,1)}}}(e,l);break;case"all":!function(e,l){re.value=[];for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.disabled&&(l&&!re.value.includes(n.key)&&re.value.push(n.key),!l)){const e=re.value.findIndex((e=>e===n.key));re.value.splice(e,1)}}}(e,l)}}function We(e){Me(se.value,e)}function Ge(e){var l;for(let t=0,n=e.length;t<n;t++){const n=e[t],a=he.value.map((e=>e.key));re.value.includes(n.key)&&!a.includes(n.key)&&ve.value.push({key:n.key,name:n.title,parentName:n.tempTitle,innerItemsNum:n.innerItemsNum,innerLeafs:n.innerLeafs,originItem:n}),(null==(l=n.children)?void 0:l.length)&&Ge(n.children)}}function ze(e){if(te.showSelectType){const l=ge.value;re.value=Ce[l]=e}else re.value=e}function Je(){Object.keys(Ce).forEach((e=>{Ce[e]=Le[e]=[]})),re.value=[]}function Qe(e){re.value=e}function Ve(){oe.value="",setTimeout((()=>{He()}))}return i((()=>te.data),(e=>{oe.value="",ce.value=pe.value=!1,re.value=[],de.value=[],se.value=[],ve.value=[],he.value=[],ye.value=[],function(){if(Be(),se.value=Te.temp,te.defaultList.length>0)if(ke.value)te.defaultList.forEach((e=>re.value.push(e.key))),ve.value=A(te.defaultList),he.value=A(te.defaultList);else{if(te.showSelectType){const e=ge.value;return te.defaultList.forEach((e=>{e.itemType===R.PERSON&&(Ce.main.push(e[je.value]),Le.main.push(e)),e.itemType===R.DEPT&&(Ce.dept.push(e[je.value]),Le.dept.push(e)),e.itemType===R.ROLE&&(Ce.role.push(e[te.roleFields.key]),Le.role.push(e))})),void(re.value=Ce[e])}te.defaultList.forEach((e=>re.value.push(e))),Ge(Te.temp)}}()}),{immediate:!0}),i((()=>re),(e=>{if(te.showSelectType){const l=ge.value;Le[l]=he.value.filter((l=>e.value.includes(l.key))),Ie(Te[l],l),te.showSelectType?ce.value=ye.value.every((e=>re.value.findIndex((l=>l===e))>-1)):ce.value=ye.value.every((e=>ve.value.findIndex((l=>l.key===e))>-1));const t=Se.value.map((e=>e.key));return ue("check",t),void ue("checkWithLevel",Se.value)}ve.value=he.value.filter((l=>e.value.includes(l.key))),Ge(ke.value?se.value:Te.temp);const l=ve.value.filter((l=>te.uncheckableField?e.value.includes(l.key)&&!l.originItem[te.uncheckableField]:e.value.includes(l.key)));ue("check",e.value),ue("checkWithLevel",l)}),{deep:!0}),i((()=>oe.value),(e=>{e||Ve()})),W({getCheckWithLevel:function(){var e;if(te.showSelectType)return null!=(e=Se.value)?e:[];const l=re.value,t=ve.value.filter((e=>te.uncheckableField?l.includes(e.key)&&!e.originItem[te.uncheckableField]:l.includes(e.key)));return null!=t?t:[]}}),(l,t)=>(u(),o(c(T),{cols:2,class:"c-select-person"},{default:r((()=>[d(c(C),null,{default:r((()=>[d(c(L),{vertical:"",style:{"padding-right":"12px","border-right":"1px solid #e8e8e8"}},{default:r((()=>{var l;return[d(c(F),{style:{"margin-bottom":"12px"}},{default:r((()=>[s(" clearable "),d(c(x),{class:"search-input",value:oe.value,"onUpdate:value":t[0]||(t[0]=e=>oe.value=e),placeholder:e.searchPlaceholder,onKeyup:v(He,["enter"])},{suffix:r((()=>[oe.value?(u(),o(c(j),{key:0,class:"search-clear",component:c(N),size:"16",onClick:Ve},null,8,["component"])):s("v-if",!0)])),_:1},8,["value","placeholder","onKeyup"]),d(c(B),{type:"primary",onClick:He},{default:r((()=>[h(p(e.searchButtonText),1)])),_:1})])),_:1}),e.showSelectType?(u(),y("div",z,[(u(),y(k,null,f(ae,(e=>d(c(D),{round:"",checkable:"",checked:ge.value===e.key,key:e.key,"onUpdate:checked":l=>function(e){ge.value=e.key,se.value=Te.temp=Te[e.key],re.value=Ce[e.key],ye.value=Fe[e.key]}(e)},{default:r((()=>[h(p(e.label),1)])),_:2},1032,["checked","onUpdate:checked"]))),64))])):s("v-if",!0),e.multiple&&!pe.value?m((u(),o(c(E),{key:1,checked:ce.value,"onUpdate:checked":[t[1]||(t[1]=e=>ce.value=e),We]},{default:r((()=>{var e;return[h((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.37"))||"全选")]})),_:1},8,["checked"])),[[g,e.forceShowSelectAll||ye.value.length<1e3]]):s("v-if",!0),s(" 支持选人 "),e.searchInner&&e.multiple&&pe.value&&"parent"===c(fe)?(u(),o(q,{key:2,treeData:se.value,checkedKeys:re.value,onNotifyCheck:Qe},null,8,["treeData","checkedKeys"])):c(me)&&pe.value&&"parent"===c(fe)?(u(),y(k,{key:3},[s(" 同时兼容选人和选部门 "),s(" v-else-if=\"isSearchFilter && multiple && isSearch && checkStrategyResult === 'parent'\" "),d(H,{treeData:se.value,checkedKeys:re.value,searchFilter:c(we),isMultiple:e.multiple,onNotifyCheck:Qe,onNotifyClear:Ve},null,8,["treeData","checkedKeys","searchFilter","isMultiple"])],2112)):(u(),y("div",J,[0===se.value.length?(u(),o(c(I),{key:0,description:(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.445"))||"暂无数据"})):(u(),o(c(O),w({key:1,"virtual-scroll":"",class:"c-select-person__scroll","checked-keys":re.value,"expanded-keys":de.value,"onUpdate:expanded-keys":t[2]||(t[2]=e=>de.value=e),checkable:e.multiple,cascade:"","allow-checking-not-loaded":"",selectable:!e.multiple,"selected-keys":re.value,"onUpdate:selected-keys":t[3]||(t[3]=e=>re.value=e),data:se.value,"check-strategy":"child","render-label":Ae},e.treeSetting,{"onUpdate:checkedKeys":ze,onLoad:Pe}),null,16,["checked-keys","expanded-keys","checkable","selectable","selected-keys","data"]))]))]})),_:1})])),_:1}),d(c(C),null,{default:r((()=>[d(c(L),{vertical:"",style:{"padding-left":"12px"}},{default:r((()=>[d(c(L),{justify:"space-between",style:{"margin-bottom":"20px"}},{default:r((()=>{var l;return[e.showCount?(u(),y("span",Q,"已选择:"+p(c(Se).length),1)):s("v-if",!0),e.showClear?(u(),y("span",{key:1,class:"c-select-person__clear-btn",onClick:Je},(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.509"))||"清空")):s("v-if",!0)]})),_:1}),b("div",{class:"c-select-person__scroll",style:_(c(_e))},[(u(!0),y(k,null,f(c(Se),(t=>(u(),y("span",{class:"c-select-person__tag-item",key:t.key},[s(" 标签插槽 "),S(l.$slots,"tag",{tag:t},(()=>[h(p(t.name)+" "+p(t.parentName?`(${t.parentName})`:"")+" "+p(t.innerItemsNum?`(${t.innerItemsNum}人)`:"")+" "+p(e.showSelectType&&ie[t.itemType]?`(${ie[t.itemType]})`:""),1)])),d(c(j),{class:"tag-close",component:c(N),onClick:e=>function(e){if(te.showSelectType){const l=e.itemType===R.PERSON?"main":e.itemType;return Ce[l]=Ce[l].filter((l=>l!==e.key)),Le[l]=he.value.filter((e=>Ce[l].includes(e.key))),Ie(Te[l],l),void(ge.value==l&&(re.value=Ce[l]))}re.value=re.value.filter((l=>l!==e.key))}(t)},null,8,["component","onClick"])])))),128))],4)])),_:3})])),_:3})])),_:3}))}});export{V as default};
1
+ import{defineComponent as e,inject as l,ref as t,computed as n,reactive as a,watch as i,openBlock as u,createBlock as o,unref as c,withCtx as r,createVNode as d,createCommentVNode as s,withKeys as v,createTextVNode as h,toDisplayString as p,createElementBlock as y,Fragment as f,renderList as k,withDirectives as m,vShow as g,mergeProps as w,createElementVNode as b,normalizeStyle as _,renderSlot as S}from"vue";import{NGrid as T,NGi as C,NSpace as F,NInputGroup as L,NInput as x,NIcon as j,NButton as B,NTag as E,NCheckbox as D,NEmpty as I,NTree as O}from"naive-ui";import{CloseCircleSharp as N}from"@vicons/ionicons5";import{searchFilterTree as P,getExpandedKeys as $}from"./utils/index.js";import{cloneDeep as A,union as R,remove as K}from"lodash-es";import{SelectItemTypesConfig as U,SelectRoleEnumsConfig as q,SearchTypeConfig as H}from"./types/enums.js";import M from"./components/SearchMultiple.vue.js";import W from"./components/SearchOrgAndStaff.vue.js";import{InjectionSelectPersonEmits as G}from"./constants/index.js";var z,J;const Q={key:0,class:"select-type-tags"},V={key:4,class:"tree-content"},X={key:0};var Y=e({__name:"SelectPerson",props:{defaultList:{type:Array,default:()=>[]},data:{type:Array,default:()=>[]},searchPlaceholder:{type:String,default:(null==(z=window.getLanguageByCode)?void 0:z.call(window,"10010.1.508"))||"输入关键字搜索"},searchButtonText:{type:String,default:(null==(J=window.getLanguageByCode)?void 0:J.call(window,"10010.1.36"))||"搜索"},wordbook:{type:Object,default:()=>({})},wordbookChild:{type:Object,default:()=>({})},showCount:{type:Boolean,default:!0},showClear:{type:Boolean,default:!0},multiple:{type:Boolean,default:!0},searchInner:{type:Boolean,default:!1},searchFilter:{type:Object,default:()=>({})},treeSetting:{type:Object,default:()=>({})},queryLoadChildData:{type:Function,default:void 0},queryTreeSearch:{type:Function,default:()=>Promise.resolve([])},showSelectType:{type:Boolean,default:!1},roleData:{type:Array,default:()=>[]},roleFields:{type:Object,default:()=>({label:"name",key:"id",children:"children"})},forceShowSelectAll:{type:Boolean},uncheckableField:{type:String},onlyForwardCascade:{type:Boolean}},setup(e,{expose:z}){var J,Y,Z,ee,le,te,ne;const ae=e,ie={isOpen:!1,multiple:!1,customTitles:[(null==(J=window.getLanguageByCode)?void 0:J.call(window,"10010.1.510"))||"联系人",(null==(Y=window.getLanguageByCode)?void 0:Y.call(window,"10010.1.511"))||"部门"],itemHeight:250},ue=[{key:"main",label:(null==(Z=window.getLanguageByCode)?void 0:Z.call(window,"10010.1.512"))||"选人员"},{key:"dept",label:(null==(ee=window.getLanguageByCode)?void 0:ee.call(window,"10010.1.513"))||"选科室"},{key:"role",label:(null==(le=window.getLanguageByCode)?void 0:le.call(window,"10010.1.514"))||"选角色"}],oe={dept:(null==(te=window.getLanguageByCode)?void 0:te.call(window,"10010.1.202"))||"科室",role:(null==(ne=window.getLanguageByCode)?void 0:ne.call(window,"10010.1.515"))||"角色"},ce=l(G),re=t(""),de=t(!1),se=t([]),ve=t([]),he=t([]),pe=t([]),ye=t([]),fe=t(!1),ke=t([]),me=n((()=>!!ae.queryLoadChildData)),ge=n((()=>{var e,l;return null!=(l=null==(e=null==ae?void 0:ae.treeSetting)?void 0:e.checkStrategy)?l:"child"})),we=n((()=>(null==ae?void 0:ae.searchFilter)&&Object.keys(null==ae?void 0:ae.searchFilter).length>0)),be=t("main"),_e=n((()=>we.value?{...A(ie),...ae.searchFilter}:A(ie))),Se=n((()=>{var e,l;return null!=(l=null==(e=null==ae?void 0:ae.wordbookChild)?void 0:e.user_expand_keys)?l:[]})),Te=n((()=>({height:ae.multiple?"342px":"308px"}))),Ce=n((()=>{if(ae.showSelectType){return function(e,l){let t={};return e.reduce(((e,n)=>(!t[n[l]]&&(t[n[l]]=e.push(n)),e)),[])}([...xe.main.filter((e=>(e.itemType=U.PERSON,ae.uncheckableField?e[Be.value]==q.STAFF&&!e[ae.uncheckableField]:e[Be.value]==q.STAFF))),...xe.dept.filter((e=>(e.itemType=U.DEPT,ae.uncheckableField?e[Be.value]==q.DEPT&&!e[ae.uncheckableField]:e[Be.value]==q.DEPT))),...xe.role.filter((e=>(e.itemType=U.ROLE,ae.uncheckableField?!e[ae.uncheckableField]:e)))],"key")}let e=[];return se.value.forEach((l=>{for(let t=0,n=pe.value.length;t<n;t++){const n=pe.value[t];if(n.key==l){(!ae.uncheckableField||ae.uncheckableField&&!n.originItem[ae.uncheckableField])&&e.push(n);break}}})),e})),Fe=a({main:[],dept:[],role:[],temp:[]}),Le=a({main:[],dept:[],role:[]}),xe=a({main:[],dept:[],role:[]}),je=a({main:[],dept:[],role:[]}),Be=n((()=>{var e;return(null==(e=ae.wordbook)?void 0:e.type)||"type"})),Ee=n((()=>ae.wordbookChild.user_id_obj||ae.wordbook.parent_id_obj||Date.now()));function De(){const e=A(qe(ae.data));Fe.main=Fe.temp=e,Pe(Fe.temp,null,(e=>{je.main.push(e.key)})),ke.value=je.main,Fe.dept=Ie(A(e),(e=>{je.dept.push(e.key)})),Fe.role=Oe(A(ae.roleData),(e=>{je.role.push(e.key)}))}function Ie(e,l){return e.filter((e=>{var t;ae.showSelectType&&(null==(t=e.children)?void 0:t.length)&&(e.children=Ie(e.children,l));const n=e[Be.value]==q.DEPT;return n&&$e(e,l),n}))}function Oe(e,l){const{label:t,key:n,children:a="children"}=ae.roleFields;return e.map((e=>{var i;return e.key=e[n],e.label=e.title=e[t],(null==(i=e[a])?void 0:i.length)&&(e.children=Oe(e[a],l)),$e(e,l),e}))}function Ne(e,l){var t,n;const a=["main","dept"].includes(l)?Ee.value:null==(t=ae.roleFields)?void 0:t.key;for(let t=0,i=e.length;t<i;t++){const i=e[t],u=ye.value.map((e=>e.key));Le[l].includes(i.key)&&!u.includes(i.key)&&xe[l].push({...i,key:i[a]}),(null==(n=i.children)?void 0:n.length)&&Ne(i.children,l)}}function Pe(e,l,t){var n,a;for(let i=0,u=e.length;i<u;i++){const u=e[i];let o=Se.value.reduce(((e,l)=>e+(u[l]?`${u[l]},`:"")),"");u.title_expand_strs=o.slice(0,-1),u.title=Ue(u),u.label=Ue(u),u.parentNode=l,u.key||(u.key=u[ae.wordbookChild.user_id_obj]||u[ae.wordbook.parent_id_obj]||Date.now()),(null==(n=u.children)?void 0:n.length)?(Pe(u.children,u,t),Re(u)):0===(null==(a=u.children)?void 0:a.length)&&Reflect.deleteProperty(u,"children"),$e(u,t)}}function $e(e,l){var t,n;switch(null!=(n=null==(t=null==ae?void 0:ae.treeSetting)?void 0:t.checkStrategy)?n:"child"){case"child":!function(e,l){e.disabled||e.children||!e.key||l&&l(e)}(e,l);break;case"parent":!function(e,l){e.disabled||e.tempTitle||!e.key||l&&l(e)}(e,l);break;case"all":!function(e,l){!e.disabled&&e.key&&l&&l(e)}(e,l)}}async function Ae(e){if(ae.queryLoadChildData){const l=await ae.queryLoadChildData(e);return l.children&&(l.children=l.children.map((e=>({...e,tempTitle:l.tempTitle?`${l.title}/${l.tempTitle}`:l.title})))),l}return e}function Re(e){var l;(null==(l=e.children)?void 0:l.every((e=>e.disabled)))&&(e.disabled=!0)}function Ke({option:e}){var l,t;if((null==(l=e.children)?void 0:l.length)||me.value&&!(null==e?void 0:e.isLeaf)){const l=ae.wordbook.user_count_obj&&e[ae.wordbook.user_count_obj]||"",t=l?`(${l})`:"",n=`${e.title}${t}`;return d("span",{title:n},[n])}{const l=null!=(t=e.title_expand_strs)?t:"";return d("p",{class:"user_item"},[d("span",{title:e.title},[e.title]),d("span",{class:"user_item_expand",title:l},[l])])}}function Ue(e){return e[ae.wordbookChild.user_name_obj]||e[ae.wordbook.parent_name_obj]||e.orgName||e.title||""}function qe(e){var l;for(let t=0,n=e.length;t<n;t++){const n=e[t],a=ae.wordbook.children||"children";if(null==(l=n[a])?void 0:l.length){const e=He(n[a],[]);n.innerItemsNum=e.length,n.innerLeafs=e,n.children=qe(n[a])}}return ae.showSelectType?e:Me(e,"")}function He(e,l){var t;for(let n=0,a=e.length;n<a;n++){const a=e[n];(null==(t=a.children)?void 0:t.length)?He(a.children,l):!a.disabled&&l.push(a)}return l}function Me(e,l){return e&&0!==e.length?e.map((e=>{var t;const n=Ue(e),a=l?`${n}/${l}`:n;return{...e,tempTitle:l,children:(null==(t=e.children)?void 0:t.length)?Me(null==e?void 0:e.children,a):[]}})):[]}async function We(){var e,l;const t=null!=(l=null==(e=null==ae?void 0:ae.wordbook)?void 0:e.filter_key)?l:"keyword";if(fe.value=!!re.value.trim(),me.value)he.value=await ae.queryTreeSearch(re.value);else{const e=function(){const e={[H.SEARCH_ORG_STAFF]:we.value,[H.SEARCH_ORG]:ae.searchInner},l=Object.keys(e).find((l=>e[l]));return null!=l?l:""}();he.value=P(e,Fe.temp,re.value,t)}ve.value=he.value.length&&re.value?$(he.value):[]}function Ge(e,l){var t,n;switch(null!=(n=null==(t=null==ae?void 0:ae.treeSetting)?void 0:t.checkStrategy)?n:"child"){case"child":!function(e,l){for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.disabled&&(!n.children||n.isLeaf)&&(l&&!se.value.includes(n.key)&&se.value.push(n.key),!l)){const e=se.value.findIndex((e=>e===n.key));se.value.splice(e,1)}n.children&&Ge(n.children,l)}}(e,l);break;case"parent":!function(e,l){se.value=[];for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.disabled&&!n.tempTitle&&(l&&!se.value.includes(n.key)&&se.value.push(n.key),!l)){const e=se.value.findIndex((e=>e===n.key));se.value.splice(e,1)}}}(e,l);break;case"all":!function(e,l){se.value=[];for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.disabled&&(l&&!se.value.includes(n.key)&&se.value.push(n.key),!l)){const e=se.value.findIndex((e=>e===n.key));se.value.splice(e,1)}}}(e,l)}}function ze(e){Ge(he.value,e)}function Je(e){var l;for(let t=0,n=e.length;t<n;t++){const n=e[t],a=ye.value.map((e=>e.key));se.value.includes(n.key)&&!a.includes(n.key)&&pe.value.push({key:n.key,name:n.title,parentName:n.tempTitle,innerItemsNum:n.innerItemsNum,innerLeafs:n.innerLeafs,originItem:n}),(null==(l=n.children)?void 0:l.length)&&Je(n.children)}}function Qe(e){const l=[];return e.forEach((e=>{var t;if(!e.disabled&&e.key&&l.push(e.key),null==(t=e.children)?void 0:t.length){const t=Qe(e.children);l.push(...t)}})),l}function Ve(e,l,t){var n;let a=e;if(ae.onlyForwardCascade&&"all"===ge.value){const{node:l,action:i}=t;if(null==(n=null==l?void 0:l.children)?void 0:n.length){const t=Qe(l.children);"check"===i?a=R(e,t):K(a,(e=>t.includes(e)))}}if(ae.showSelectType){const e=be.value;se.value=Le[e]=a}else se.value=a}function Xe(){Object.keys(Le).forEach((e=>{Le[e]=xe[e]=[]})),se.value=[]}function Ye(e){se.value=e}function Ze(){re.value="",setTimeout((()=>{We()}))}return i((()=>ae.data),(e=>{re.value="",de.value=fe.value=!1,se.value=[],ve.value=[],he.value=[],pe.value=[],ye.value=[],ke.value=[],function(){if(De(),he.value=Fe.temp,ae.defaultList.length>0)if(me.value)ae.defaultList.forEach((e=>se.value.push(e.key))),pe.value=A(ae.defaultList),ye.value=A(ae.defaultList);else{if(ae.showSelectType){const e=be.value;return ae.defaultList.forEach((e=>{e.itemType===U.PERSON&&(Le.main.push(e[Ee.value]),xe.main.push(e)),e.itemType===U.DEPT&&(Le.dept.push(e[Ee.value]),xe.dept.push(e)),e.itemType===U.ROLE&&(Le.role.push(e[ae.roleFields.key]),xe.role.push(e))})),void(se.value=Le[e])}ae.defaultList.forEach((e=>se.value.push(e))),Je(Fe.temp)}}()}),{immediate:!0}),i((()=>se),(e=>{if(ae.showSelectType){const l=be.value;xe[l]=ye.value.filter((l=>e.value.includes(l.key))),Ne(Fe[l],l),ae.showSelectType?de.value=ke.value.every((e=>se.value.findIndex((l=>l===e))>-1)):de.value=ke.value.every((e=>pe.value.findIndex((l=>l.key===e))>-1));const t=Ce.value.map((e=>e.key));return ce("check",t),void ce("checkWithLevel",Ce.value)}pe.value=ye.value.filter((l=>e.value.includes(l.key))),Je(me.value?he.value:Fe.temp);const l=pe.value.filter((l=>ae.uncheckableField?e.value.includes(l.key)&&!l.originItem[ae.uncheckableField]:e.value.includes(l.key)));ce("check",e.value),ce("checkWithLevel",l)}),{deep:!0}),i((()=>re.value),(e=>{e||Ze()})),z({getCheckWithLevel:function(){var e;if(ae.showSelectType)return null!=(e=Ce.value)?e:[];const l=se.value,t=pe.value.filter((e=>ae.uncheckableField?l.includes(e.key)&&!e.originItem[ae.uncheckableField]:l.includes(e.key)));return null!=t?t:[]}}),(l,t)=>(u(),o(c(T),{cols:2,class:"c-select-person"},{default:r((()=>[d(c(C),null,{default:r((()=>[d(c(F),{vertical:"",style:{"padding-right":"12px","border-right":"1px solid #e8e8e8"}},{default:r((()=>{var l;return[d(c(L),{style:{"margin-bottom":"12px"}},{default:r((()=>[s(" clearable "),d(c(x),{class:"search-input",value:re.value,"onUpdate:value":t[0]||(t[0]=e=>re.value=e),placeholder:e.searchPlaceholder,onKeyup:v(We,["enter"])},{suffix:r((()=>[re.value?(u(),o(c(j),{key:0,class:"search-clear",component:c(N),size:"16",onClick:Ze},null,8,["component"])):s("v-if",!0)])),_:1},8,["value","placeholder","onKeyup"]),d(c(B),{type:"primary",onClick:We},{default:r((()=>[h(p(e.searchButtonText),1)])),_:1})])),_:1}),e.showSelectType?(u(),y("div",Q,[(u(),y(f,null,k(ue,(e=>d(c(E),{round:"",checkable:"",checked:be.value===e.key,key:e.key,"onUpdate:checked":l=>function(e){be.value=e.key,he.value=Fe.temp=Fe[e.key],se.value=Le[e.key],ke.value=je[e.key]}(e)},{default:r((()=>[h(p(e.label),1)])),_:2},1032,["checked","onUpdate:checked"]))),64))])):s("v-if",!0),e.multiple&&!fe.value?m((u(),o(c(D),{key:1,checked:de.value,"onUpdate:checked":[t[1]||(t[1]=e=>de.value=e),ze]},{default:r((()=>{var e;return[h((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.37"))||"全选")]})),_:1},8,["checked"])),[[g,e.forceShowSelectAll||ke.value.length<1e3]]):s("v-if",!0),s(" 支持选人 "),e.searchInner&&e.multiple&&fe.value&&"parent"===c(ge)?(u(),o(M,{key:2,treeData:he.value,checkedKeys:se.value,onNotifyCheck:Ye},null,8,["treeData","checkedKeys"])):c(we)&&fe.value&&"parent"===c(ge)?(u(),y(f,{key:3},[s(" 同时兼容选人和选部门 "),s(" v-else-if=\"isSearchFilter && multiple && isSearch && checkStrategyResult === 'parent'\" "),d(W,{treeData:he.value,checkedKeys:se.value,searchFilter:c(_e),isMultiple:e.multiple,onNotifyCheck:Ye,onNotifyClear:Ze},null,8,["treeData","checkedKeys","searchFilter","isMultiple"])],2112)):(u(),y("div",V,[0===he.value.length?(u(),o(c(I),{key:0,description:(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.445"))||"暂无数据"})):(u(),o(c(O),w({key:1,"virtual-scroll":"",class:"c-select-person__scroll","checked-keys":se.value,"expanded-keys":ve.value,"onUpdate:expanded-keys":t[2]||(t[2]=e=>ve.value=e),checkable:e.multiple,cascade:!e.onlyForwardCascade,"allow-checking-not-loaded":"",selectable:!e.multiple,"selected-keys":se.value,"onUpdate:selected-keys":t[3]||(t[3]=e=>se.value=e),data:he.value,"check-strategy":"child","render-label":Ke},e.treeSetting,{"onUpdate:checkedKeys":Ve,onLoad:Ae}),null,16,["checked-keys","expanded-keys","checkable","cascade","selectable","selected-keys","data"]))]))]})),_:1})])),_:1}),d(c(C),null,{default:r((()=>[d(c(F),{vertical:"",style:{"padding-left":"12px"}},{default:r((()=>[d(c(F),{justify:"space-between",style:{"margin-bottom":"20px"}},{default:r((()=>{var l;return[e.showCount?(u(),y("span",X,"已选择:"+p(c(Ce).length),1)):s("v-if",!0),e.showClear?(u(),y("span",{key:1,class:"c-select-person__clear-btn",onClick:Xe},(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.509"))||"清空")):s("v-if",!0)]})),_:1}),b("div",{class:"c-select-person__scroll",style:_(c(Te))},[(u(!0),y(f,null,k(c(Ce),(t=>(u(),y("span",{class:"c-select-person__tag-item",key:t.key},[s(" 标签插槽 "),S(l.$slots,"tag",{tag:t},(()=>[h(p(t.name)+" "+p(t.parentName?`(${t.parentName})`:"")+" "+p(t.innerItemsNum?`(${t.innerItemsNum}人)`:"")+" "+p(e.showSelectType&&oe[t.itemType]?`(${oe[t.itemType]})`:""),1)])),d(c(j),{class:"tag-close",component:c(N),onClick:e=>function(e){if(ae.showSelectType){const l=e.itemType===U.PERSON?"main":e.itemType;return Le[l]=Le[l].filter((l=>l!==e.key)),xe[l]=ye.value.filter((e=>Le[l].includes(e.key))),Ne(Fe[l],l),void(be.value==l&&(se.value=Le[l]))}se.value=se.value.filter((l=>l!==e.key))}(t)},null,8,["component","onClick"])])))),128))],4)])),_:3})])),_:3})])),_:3}))}});export{Y as default};