@gct-paas/design-web 0.1.4-dev.16 → 0.1.4-dev.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.
- package/dist/index.min.css +1 -1
- package/dist/loader.esm.min.js +1 -1
- package/es/components/form-component/FieldCheckbox.d.ts +1 -1
- package/es/components/form-component/FieldCheckbox.mjs +1 -1
- package/es/components/form-component/FieldRadio.d.ts +1 -1
- package/es/components/form-component/FieldSelect.d.ts +1 -1
- package/es/components/form-component/FieldSelect.mjs +2 -2
- package/es/components/form-component/field-label/tag-label.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/es/components/form-component/field-label/tag-span.vue.mjs +1 -1
- package/es/components/index.d.ts +0 -1
- package/es/components/index.mjs +0 -8
- package/es/index.mjs +1 -8
- package/package.json +7 -7
- package/es/components/I18nSelect/index.d.ts +0 -7
- package/es/components/I18nSelect/index.mjs +0 -7
- package/es/components/I18nSelect/src/i18n-modal.vue.d.ts +0 -21
- package/es/components/I18nSelect/src/i18n-modal.vue.mjs +0 -5
- package/es/components/I18nSelect/src/i18n-modal.vue_vue_type_script_setup_true_lang.mjs +0 -128
- package/es/components/I18nSelect/src/i18n-select-btn.vue.d.ts +0 -17
- package/es/components/I18nSelect/src/i18n-select-btn.vue.mjs +0 -7
- package/es/components/I18nSelect/src/i18n-select-btn.vue_vue_type_script_setup_true_name_i18n-select-btn_lang.mjs +0 -116
- package/es/components/I18nSelect/src/i18n-select-btn.vue_vue_type_style_index_0_scoped_dc8ffb2c_lang.css +0 -58
- package/es/components/I18nSelect/src/i18n-select-container.vue.d.ts +0 -10
- package/es/components/I18nSelect/src/i18n-select-container.vue.mjs +0 -7
- package/es/components/I18nSelect/src/i18n-select-container.vue_vue_type_script_setup_true_name_i18n-select-container_lang.mjs +0 -217
- package/es/components/I18nSelect/src/i18n-select-container.vue_vue_type_style_index_0_scoped_0160ed5e_lang.css +0 -6
- package/es/components/I18nSelect/src/i18n-select-input-form.vue.d.ts +0 -15
- package/es/components/I18nSelect/src/i18n-select-input-form.vue.mjs +0 -5
- package/es/components/I18nSelect/src/i18n-select-input-form.vue_vue_type_script_setup_true_name_i18n-select-input-form_lang.mjs +0 -56
- package/es/components/I18nSelect/src/i18n-select-input.vue.d.ts +0 -51
- package/es/components/I18nSelect/src/i18n-select-input.vue.mjs +0 -7
- package/es/components/I18nSelect/src/i18n-select-input.vue_vue_type_script_setup_true_name_i18n-select-input_lang.mjs +0 -125
- package/es/components/I18nSelect/src/i18n-select-input.vue_vue_type_style_index_0_scoped_64c5221c_lang.css +0 -3
- package/es/components/I18nSelect/src/i18n-select-modal.vue.d.ts +0 -4
- package/es/components/I18nSelect/src/i18n-select-modal.vue.mjs +0 -5
- package/es/components/I18nSelect/src/i18n-select-modal.vue_vue_type_script_setup_true_lang.mjs +0 -19
- package/es/components/I18nSelect/src/i18n-select-textarea-form.vue.d.ts +0 -15
- package/es/components/I18nSelect/src/i18n-select-textarea-form.vue.mjs +0 -5
- package/es/components/I18nSelect/src/i18n-select-textarea-form.vue_vue_type_script_setup_true_name_i18n-select-input-form_lang.mjs +0 -56
- package/es/components/I18nSelect/src/i18n-select-textarea.vue.d.ts +0 -26
- package/es/components/I18nSelect/src/i18n-select-textarea.vue.mjs +0 -7
- package/es/components/I18nSelect/src/i18n-select-textarea.vue_vue_type_script_setup_true_name_i18n-select-input_lang.mjs +0 -86
- package/es/components/I18nSelect/src/i18n-select-textarea.vue_vue_type_style_index_0_scoped_cd95c416_lang.css +0 -17
- package/es/components/I18nSelect/src/useI18nSelect.d.ts +0 -13
- package/es/components/I18nSelect/src/useI18nSelect.mjs +0 -47
package/dist/index.min.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
.
|
|
1
|
+
.tag[data-v-3bf855f6]{padding:4px 6px;line-height:1}.tag+.tag[data-v-3bf855f6]{margin-left:5px}.tag-radius[data-v-3bf855f6]{background:var(--v650d3ac5);border-radius:4px}.tag-linear_radius[data-v-3bf855f6]{border:1px solid var(--v650d3ac5);border-radius:4px}.tag-big_radius[data-v-3bf855f6]{background:var(--v650d3ac5);border-radius:100px}.tag-linear_big_radius[data-v-3bf855f6]{border:1px solid var(--v650d3ac5);border-radius:100px}.tag-dashed_radius[data-v-3bf855f6]{border:1px dashed var(--v650d3ac5);border-radius:4px}.tag-status[data-v-3bf855f6]{background:var(--v650d3ac5);border-radius:14px 4px 4px}.tag-label-disabled[data-v-85e6a8f5]{opacity:.5}.label-ellipsis[data-v-85e6a8f5]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-wrap[data-v-85e6a8f5]{word-break:break-all;white-space:wrap}.tag-label-disabled[data-v-a1ded441]{opacity:.5}.label-ellipsis[data-v-a1ded441]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-wrap[data-v-a1ded441]{word-break:break-all;white-space:wrap}.select-text[data-v-a1ded441]{min-width:16px}.field-radio-group .ant-radio-wrapper.ant-radio-wrapper-disabled .ant-radio-checked.ant-radio-disabled .ant-radio-inner{background-color:#fff;border:1px solid var(--ant-primary-3)!important}.field-radio-group .ant-radio-wrapper.ant-radio-wrapper-disabled .ant-radio-checked.ant-radio-disabled .ant-radio-inner:after{background:var(--ant-primary-3)}.field-radio-group--readonly .ant-radio-wrapper{pointer-events:none}.field-radio-group--readonly .ant-radio-wrapper .ant-radio-checked .ant-radio-inner{background-color:#fff;border:1px solid var(--ant-primary-4)!important}.field-radio-group--readonly .ant-radio-wrapper .ant-radio-checked .ant-radio-inner:after{background:var(--ant-primary-4)}.field-checkbox-group .ant-checkbox-wrapper.ant-checkbox-wrapper-disabled .ant-checkbox-checked.ant-checkbox-disabled .ant-checkbox-inner{background-color:var(--ant-primary-3);border:1px solid var(--ant-primary-3)!important}.field-checkbox-group .ant-checkbox-wrapper.ant-checkbox-wrapper-disabled .ant-checkbox-checked.ant-checkbox-disabled .ant-checkbox-inner:after{border-color:#fff}.field-checkbox-group .ant-checkbox-wrapper.ant-checkbox-wrapper-disabled .ant-checkbox-checked.ant-checkbox-disabled:after{border:1px solid var(--ant-primary-3)!important}.field-checkbox-group--readonly .ant-checkbox-wrapper{pointer-events:none}.field-checkbox-group--readonly .ant-checkbox-wrapper .ant-checkbox-checked .ant-checkbox-inner{background-color:var(--ant-primary-4);border:1px solid var(--ant-primary-4)!important}.field-checkbox-group--readonly .ant-checkbox-wrapper .ant-checkbox-checked .ant-checkbox-inner:after{border-color:#fff}.field-checkbox-group--readonly .ant-checkbox-wrapper .ant-checkbox-checked:after{border:1px solid var(--ant-primary-4)!important}
|
|
2
2
|
/*$vite$:1*/
|
package/dist/loader.esm.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ButtonSize as e,FIELD_TYPE as t,FormComponents as a,OverlayContainer as l,TagTypeEnum as o,cssLoader as n,t as i}from"@gct-paas/core";import{Fragment as s,computed as r,createBlock as u,createCommentVNode as c,createElementBlock as d,createElementVNode as p,createTextVNode as g,createVNode as y,defineComponent as m,h as f,inject as v,isVNode as b,mergeProps as x,normalizeClass as h,normalizeStyle as _,onMounted as S,openBlock as w,reactive as k,ref as C,renderList as T,renderSlot as E,resolveComponent as I,toDisplayString as P,toRaw as O,toRef as N,toValue as L,unref as A,useCssVars as M,watch as R,withCtx as z,withModifiers as W}from"vue";import{has as j,isEmpty as B,isString as F,omit as $,pick as U}from"lodash-es";import{IconNext as K,transformUrl as q,useModal as V,useModalInner as H}from"@gct-paas/core-web";import{SearchOutlined as J}from"@ant-design/icons-vue";import{Avatar as D,Checkbox as G,CheckboxGroup as Z,Radio as Y,RadioGroup as Q,Select as X}from"ant-design-vue";import{schemaToStyle as ee,transformField2Component as te}from"@gct-paas/design";var ae=/* @__PURE__ */m({__name:"i18n-modal",props:{lang:{},getContainer:{type:Function}},emits:["ok","register"],setup(e,{emit:t}){const a=e,l=t,o=C(),n=k({id:""}),r=C(!1),c=e=>{e&&(r.value=!1)},[p,{closeModal:g}]=H(e=>{e&&m(e)}),m=e=>{r.value=!0,n.id=e.key;const{lang:t}=a;console.log(t,"lang========");for(const a of t){const t=a.dataIndex;n[t]=e[t]}},f=(e,t,a)=>{/^[a-zA-Z_.]*$/.test(t)||a(i("sys.i18n.validated18nKeyErrorMsg")),a()},v=async(e,t)=>/^\s*$/g.test(t)?Promise.reject(i("sys.notEmptySth",{sth:i("sys.i18n")})):Promise.resolve(),b=()=>{o.value?.validate().then(()=>{l("ok",{...O(n)},r.value),g()})},h=()=>{o.value?.resetFields()};return(t,l)=>{const g=I("a-input"),m=I("a-form-item"),_=I("a-form"),S=I("BasicModal");return w(),u(S,x(t.$attrs,{title:r.value?A(i)("sys.edit"):A(i)("sys.new"),centered:"",width:"640px","min-height":100,"mask-closable":!1,"after-close":h,"get-container":e.getContainer,onRegister:A(p),onOk:b,onVisibleChange:c}),{default:z(()=>[y(_,{ref_key:"formRef",ref:o,model:n,"label-col":{span:6},"wrapper-col":{span:16},autocomplete:"off",layout:"horizontal"},{default:z(()=>[y(m,{label:A(i)("sys.i18n.resourceIdentification"),name:"id",rules:[{required:!0,message:A(i)("sys.pleaseInputSth",{sth:A(i)("sys.i18n.resourceIdentification")})},{validator:f}]},{default:z(()=>[y(g,{value:n.id,"onUpdate:value":l[0]||(l[0]=e=>n.id=e),"show-count":"",maxlength:128,disabled:r.value},null,8,["value","disabled"])]),_:1},8,["label","rules"]),(w(!0),d(s,null,T(a.lang,e=>(w(),u(m,{key:e.dataIndex,label:e.title,name:e.dataIndex,rules:[{required:!0,message:A(i)("sys.pleaseInputSth",{sth:e.title})},{validator:v}]},{default:z(()=>[y(g,{value:n[e.dataIndex],"onUpdate:value":t=>n[e.dataIndex]=t,"show-count":"",maxlength:300},null,8,["value","onUpdate:value"])]),_:2},1032,["label","name","rules"]))),128))]),_:1},8,["model"])]),_:1},16,["title","get-container","onRegister"])}}}),le={class:"i18n-select-container"},oe={class:"table-wrap"},ne=(e,t)=>{const a=e.__vccOpts||e;for(const[l,o]of t)a[l]=o;return a},ie=/* @__PURE__ */ne(/* @__PURE__ */m({__name:"i18n-select-container",props:{i18nModalKey:{},destroyCallback:{type:Function},saveCallback:{type:Function}},setup(e){const[t,{closeModal:a}]=H(),[l,{openModal:o}]=V(),n=e,s=()=>document.querySelector(`#${n.i18nModalKey}`),c=C(),d=k({keywords:""}),m=k({current:1,pageSize:5,total:0,size:"small",showTotal:e=>i("sys.component.table.total",{total:e})}),f=C([]),v=C(),b=C({type:"radio",hideSelectAll:!0,selectedRowKeys:[],onChange:M}),h=C(!1),_=r(()=>[]),T=async(e,t)=>{h.value=!0;const a=await _api.apaas.i18NInfo.getPageList({pageNo:t??m.current,pageSize:m.pageSize,searchKey:e});if(h.value=!1,a&&a.data){const e=a.data.map(e=>{const t=JSON.parse(e?.info);return{key:e.key,type:e.type,...Object.fromEntries(t.map(e=>[e.locale,e.info]))}});m.total=a.totalCount,f.value=e}};S(T);const E=()=>{c.value?.validate().then(async()=>{await T(d.keywords,1)})},O=e=>{const{current:t,total:a,pageSize:l}=e;m.current=t,m.total=a,m.pageSize=l,T()},N=()=>{o()},L=async(e,t)=>{const a=_.value.map(t=>({locale:t.dataIndex,info:e[t.dataIndex]}));h.value=!0;try{t?await _api.apaas.i18NInfo.putKey({key:e.id},{info:JSON.stringify(a)}):await _api.apaas.i18NInfo.post({info:JSON.stringify(a),key:e.id}),T(),M([e.id],[k(e)])}catch(l){h.value=!1}};function M(e,t){b.value.selectedRowKeys=e,v.value=t}const R=()=>{n.destroyCallback&&"function"==typeof n.destroyCallback&&n.destroyCallback()},W=async()=>{if(n.saveCallback&&"function"==typeof n.saveCallback){const e=b.value.selectedRowKeys,t={};if(e&&e[0]){const a=v.value?.[0];console.log("selectRow",a),Object.assign(t,{i18nKey:e[0]})}n.saveCallback(t)}a()};return(e,a)=>{const o=I("a-input"),n=I("a-form-item"),r=I("a-col"),v=I("a-button"),S=I("plus-outlined"),k=I("a-row"),C=I("a-form"),T=I("a-table"),M=I("basic-modal");return w(),u(M,x(e.$attrs,{"min-height":40,title:A(i)("sys.i18n.i18nConfig"),centered:"",width:"640px","can-fullscreen":!1,"mask-closable":!1,"after-close":R,"get-container":s,onRegister:A(t),onOk:W}),{default:z(()=>[p("div",le,[y(C,{ref_key:"formRef",ref:c,model:d,autocomplete:"off",layout:"horizontal"},{default:z(()=>[y(k,null,{default:z(()=>[y(r,{span:12},{default:z(()=>[y(n,{name:"keywords",label:A(i)("sys.keywords")},{default:z(()=>[y(o,{value:d.keywords,"onUpdate:value":a[0]||(a[0]=e=>d.keywords=e),placeholder:A(i)("sys.keywordsPlaceholder"),style:{display:"inline-flex"}},null,8,["value","placeholder"])]),_:1},8,["label"])]),_:1}),y(r,{span:12,style:{"text-align":"right"}},{default:z(()=>[y(v,{type:"primary",onClick:E},{icon:z(()=>[y(A(J))]),default:z(()=>[g(" "+P(A(i)("sys.queryText")),1)]),_:1}),y(v,{style:{margin:"0 8px"},type:"primary",onClick:N},{icon:z(()=>[y(S)]),default:z(()=>[g(" "+P(A(i)("sys.new")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["model"]),p("div",oe,[y(T,{ref:"tableRef","data-source":f.value,columns:_.value,"show-index-column":!1,pagination:m,striped:!1,bordered:!0,"row-selection":b.value,loading:h.value,onChange:O},null,8,["data-source","columns","pagination","row-selection","loading"]),y(ae,{lang:_.value,"get-container":s,onRegister:A(l),onOk:L},null,8,["lang","onRegister"])])])]),_:1},16,["title","onRegister"])}}}),[["__scopeId","data-v-0160ed5e"]]),se=/* @__PURE__ */m({__name:"i18n-select-modal",setup(e,{expose:t}){const[a,{openModal:l}]=V();return t({open:()=>{l()}}),(e,t)=>(w(),u(ie,{onRegister:A(a)},null,8,["onRegister"]))}});function re(){let e=null,t=null;const a=C("");function o(t){"function"==typeof t&&t(),document.querySelector(`#${A(a)}`).remove(),e&&(e.unmount(),e=null)}return{open:async function(n){let i,s=document.body;if(j(n,"target")||j(n,"props")){const e=n;i=e.props||{},s=e.target||document.body}else i=n;a.value=i.i18nModalKey||`i18n-select-modal-${Math.random().toString(16).substring(8)}`;const r={...i,destroyCallback:()=>o(i?.destroyCallback),i18nModalKey:A(a)};if(!e){const o=document.createElement("div");o.id=A(a),A(s)?.appendChild(o),e=await l.createVueApp(se,r),t=e.mount(o)}t?.open()},close:o}}var ue={class:"i18n-tooltip-title"},ce={style:{"margin-left":"4px"}},de=/* @__PURE__ */ne(/* @__PURE__ */m({__name:"i18n-select-btn",props:{i18nValue:{},buttonExtraProps:{},size:{},i18nModalKey:{},simpleBtn:{type:Boolean},btnHeight:{},btnWidth:{}},emits:["on-select-i18n","closed"],setup(e,{emit:t}){const a=C(),l=re(),o=e,n=t,i=k({}),c=r(()=>!B(o.i18nValue));R(()=>o.i18nValue,()=>{B(o.i18nValue)||(async e=>{const t=await _api.apaas.i18NInfo.getPageList({pageNo:1,pageSize:20,searchKey:e});if(t&&t.data){const e=t.data.find(e=>e.key===o.i18nValue);e&&Object.assign(i,Object.fromEntries(Object.entries(JSON.parse(e.info)).map(([e,t])=>[t.locale,t.info])))}})(o.i18nValue)},{immediate:!0});const g=()=>{l.open({i18nModalKey:o.i18nModalKey,saveCallback:e=>{n("on-select-i18n",{...e})},destroyCallback:()=>{n("closed")}})};return(t,l)=>{const o=I("Icon"),n=I("a-button"),r=I("a-tooltip");return e.simpleBtn?(w(),u(o,{key:0,class:h(["i18n-icon simple-btn",{"is-highlight":c.value}]),icon:"ion:language",onClick:g},null,8,["class"])):c.value?(w(),u(r,{key:1,color:"#fff",placement:"topRight"},{title:z(()=>[p("div",ue,"语言标识:"+P(e.i18nValue),1),(w(!0),d(s,null,T(a.value,e=>(w(),d("div",{key:e.id,class:"i18n-tooltip-item"},[p("strong",null,P(e.language)+": ",1),p("span",ce,P(i[e.languageTag]),1)]))),128))]),default:z(()=>[y(n,x(e.buttonExtraProps,{class:{"is-highlight":c.value},style:{"--btn-width":e.btnWidth,"--btn-height":e.btnHeight},size:e.size,onClick:g}),{icon:z(()=>[y(o,{class:"i18n-icon",icon:"ion:language"})]),_:1},16,["class","style","size"])]),_:1})):(w(),u(n,x({key:2},e.buttonExtraProps,{class:{"is-highlight":c.value},style:{"--btn-width":e.btnWidth,"--btn-height":e.btnHeight},size:e.size,onClick:g}),{icon:z(()=>[y(o,{class:"i18n-icon",icon:"ion:language"})]),_:1},16,["class","style","size"]))}}}),[["__scopeId","data-v-dc8ffb2c"]]),pe="undefined"!=typeof window&&"undefined"!=typeof document,ge=("undefined"!=typeof WorkerGlobalScope&&(globalThis,WorkerGlobalScope),Object.prototype.toString),ye=()=>{},me=/* @__PURE__ */fe();function fe(){var e,t,a;return pe&&!!(null===(e=window)||void 0===e||null===(e=e.navigator)||void 0===e?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||(null===(t=window)||void 0===t||null===(t=t.navigator)||void 0===t?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(null===(a=window)||void 0===a?void 0:a.navigator.userAgent))}function ve(e){return Array.isArray(e)?e:[e]}function be(e){const t=Object.create(null);return a=>t[a]||(t[a]=e(a))}var xe=/\B([A-Z])/g,he=(be(e=>e.replace(xe,"-$1").toLowerCase()),/-(\w)/g);be(e=>e.replace(he,(e,t)=>t?t.toUpperCase():""));var _e=pe?window:void 0;function Se(e){var t;const a=L(e);return null!==(t=null==a?void 0:a.$el)&&void 0!==t?t:a}function we(...e){const t=r(()=>{const t=ve(L(e[0])).filter(e=>null!=e);return t.every(e=>"string"!=typeof e)?t:void 0});return a=([e,t,a,l],o,n)=>{if(!(null==e?void 0:e.length)||!(null==t?void 0:t.length)||!(null==a?void 0:a.length))return;const i=(s=l,"[object Object]"===ge.call(s)?{...l}:l);var s;const r=e.flatMap(e=>t.flatMap(t=>a.map(a=>((e,t,a,l)=>(e.addEventListener(t,a,l),()=>e.removeEventListener(t,a,l)))(e,t,a,i))));n(()=>{r.forEach(e=>e())})},l={flush:"post"},R(()=>{var a,l;return[null!==(a=null===(l=t.value)||void 0===l?void 0:l.map(e=>Se(e)))&&void 0!==a?a:[_e].filter(e=>null!=e),ve(L(t.value?e[1]:e[0])),ve(A(t.value?e[2]:e[1])),L(t.value?e[3]:e[2])]},a,{...l,immediate:!0});var a,l}pe&&window.document,pe&&window.navigator,pe&&window.location;var ke=!1;Number.POSITIVE_INFINITY;var Ce=/* @__PURE__ */ne(/* @__PURE__ */m({__name:"i18n-select-input",props:{attr:{},inputExtraProps:{},i18nConfig:{},i18nText:{},placeholderText:{},size:{},i18nModalKey:{},forceUpdate:{type:Boolean},btnHeight:{},btnWidth:{}},emits:["update:i18nText","update:i18nConfig","on-i18n-select","clickOutside","focus","blur"],setup(t,{emit:a}){const l=r(()=>!!_gct.store.appInfo.id),o=t,n=a,i=r({get:()=>o.i18nText??"",set(e){e!==o.i18nText&&n("update:i18nText",e)}}),s=r(()=>B(o.i18nConfig)?{}:"string"==typeof o.i18nConfig?JSON.parse(o.i18nConfig)??{}:o.i18nConfig??{}),d=r(()=>s.value?.[o.attr]??""),p=e=>{console.log("emit",e),e&&((B(i.value)||!0===o.forceUpdate)&&n("update:i18nText",e.i18nTitle),n("update:i18nConfig",JSON.stringify(B(e)?$(s.value,o.attr):{...s.value,[o.attr]:e.i18nKey})),n("on-i18n-select",e))},g=C(),m=()=>{n("focus",g.value)},f=()=>{n("blur",g.value)},v=C();return function(e,t,a={}){const{window:l=_e,ignore:o=[],capture:n=!0,detectIframe:i=!1,controls:s=!1}=a;if(!l)return s?{stop:ye,cancel:ye,trigger:ye}:ye;if(me&&!ke){ke=!0;const e={passive:!0};Array.from(l.document.body.children).forEach(t=>t.addEventListener("click",ye,e)),l.document.documentElement.addEventListener("click",ye,e)}let r=!0;const u=e=>L(o).some(t=>{if("string"==typeof t)return Array.from(l.document.querySelectorAll(t)).some(t=>t===e.target||e.composedPath().includes(t));{const a=Se(t);return a&&(e.target===a||e.composedPath().includes(a))}}),c=a=>{const l=Se(e);null!=a.target&&(l instanceof Element||!function(e){const t=L(e);return t&&16===t.$.subTree.shapeFlag}(e)||!function(e,t){const a=L(e),l=a.$.subTree&&a.$.subTree.children;return!(null==l||!Array.isArray(l))&&l.some(e=>e.el===t.target||t.composedPath().includes(e.el))}(e,a))&&l&&l!==a.target&&!a.composedPath().includes(l)&&("detail"in a&&0===a.detail&&(r=!u(a)),r?t(a):r=!0)};let d=!1;const p=[we(l,"click",e=>{d||(d=!0,setTimeout(()=>{d=!1},0),c(e))},{passive:!0,capture:n}),we(l,"pointerdown",t=>{const a=Se(e);r=!u(t)&&!(!a||t.composedPath().includes(a))},{passive:!0}),i&&we(l,"blur",a=>{setTimeout(()=>{var o;const n=Se(e);"IFRAME"!==(null===(o=l.document.activeElement)||void 0===o?void 0:o.tagName)||(null==n?void 0:n.contains(l.document.activeElement))||t(a)},0)},{passive:!0})].filter(Boolean),g=()=>p.forEach(e=>e())}(v,()=>{n("clickOutside")}),(a,o)=>{const s=I("a-input"),r=I("a-input-group");return w(),u(r,{id:"i18nInputGroup",ref_key:"i18nInputGroup",ref:v,compact:""},{default:z(()=>[E(a.$slots,"i18n-input",{},()=>[y(s,x({ref_key:"inputRef",ref:g},t.inputExtraProps,{value:i.value,"onUpdate:value":o[0]||(o[0]=e=>i.value=e),valueModifiers:{trim:!0},style:{height:t.btnHeight?t.btnHeight:t.size===A(e).SMALL?"26px":"32px",width:l.value?`calc(100% - ${t.btnWidth?t.btnWidth:t.size===A(e).SMALL?"26px":"32px"}`:"100%"},placeholder:t.placeholderText,size:t.size,"allow-clear":"",onFocus:m,onBlur:f}),null,16,["value","style","placeholder","size"])],!0),l.value?(w(),u(de,{key:0,"btn-height":t.btnHeight,"btn-width":t.btnWidth,"i18n-value":d.value,size:t.size,"i18n-modal-key":t.i18nModalKey,onOnSelectI18n:p,onClosed:o[1]||(o[1]=e=>n("clickOutside"))},null,8,["btn-height","btn-width","i18n-value","size","i18n-modal-key"])):c("",!0)]),_:3},512)}}}),[["__scopeId","data-v-64c5221c"]]),Te=/* @__PURE__ */m({__name:"i18n-select-input-form",props:{formItemName:{},fromItemExtraProps:{},inputExtraProps:{},i18nConfig:{},text:{},formRef:{}},emits:["update:text"],setup(e,{emit:t}){const a=e,l=t,o=r({get:()=>a.text??"",set(e){l("update:text",e),a.formRef?.validateFields([a.formItemName])}});return(t,a)=>{const l=I("a-form-item");return w(),d(s,null,[y(l,x({name:e.formItemName},e.fromItemExtraProps),{default:z(()=>[y(Ce,x(t.$attrs,{"i18n-text":o.value,"onUpdate:i18nText":a[0]||(a[0]=e=>o.value=e),"input-extra-props":e.inputExtraProps,"i18n-config":e.i18nConfig,attr:Array.isArray(e.formItemName)?e.formItemName.join("."):e.formItemName,"placeholder-text":t.$t("sys.inputText")}),null,16,["i18n-text","input-extra-props","i18n-config","attr","placeholder-text"])]),_:1},16,["name"]),y(l,{name:"i18nConfig",hidden:""},{default:z(()=>[p("span",null,P(e.i18nConfig),1)]),_:1})],64)}}}),Ee={class:"inline-block w100% relative"},Ie=/* @__PURE__ */ne(/* @__PURE__ */m({__name:"i18n-select-textarea",props:{attr:{},inputExtraProps:{},i18nConfig:{},i18nText:{},placeholderText:{},rows:{},style:{}},emits:["update:i18nText","update:i18nConfig","on-i18n-select","clickOutside","focus"],setup(e,{emit:t}){const a=e,l=t,o=r({get:()=>a.i18nText??"",set(e){l("update:i18nText",e)}}),n=r(()=>B(a.i18nConfig)?{}:"string"==typeof a.i18nConfig?JSON.parse(a.i18nConfig)??{}:a.i18nConfig??{}),i=r(()=>n.value?.[a.attr]),s=e=>{e&&(B(o.value)&&l("update:i18nText",e.i18nTitle),l("update:i18nConfig",JSON.stringify(B(e)?$(n.value,a.attr):{...n.value,[a.attr]:e.i18nKey})),l("on-i18n-select",e))},u=C(),c=()=>{l("focus",u.value)};return(t,a)=>{const n=I("a-textarea");return w(),d("div",Ee,[y(n,x({ref_key:"inputRef",ref:u,value:o.value,"onUpdate:value":a[0]||(a[0]=e=>o.value=e),placeholder:e.placeholderText},e.inputExtraProps,{style:{resize:"none",...e.style},onFocus:c}),null,16,["value","placeholder","style"]),y(de,{"i18n-value":i.value,"simple-btn":!0,type:"text",onOnSelectI18n:s,onClosed:a[1]||(a[1]=e=>l("clickOutside"))},null,8,["i18n-value"])])}}}),[["__scopeId","data-v-cd95c416"]]),Pe=/* @__PURE__ */m({__name:"i18n-select-textarea-form",props:{formItemName:{},fromItemExtraProps:{},inputExtraProps:{},i18nConfig:{},text:{},formRef:{}},emits:["update:text"],setup(e,{emit:t}){const a=e,l=t,o=r({get:()=>a.text??"",set(e){l("update:text",e),a.formRef?.validateFields([a.formItemName])}});return(t,a)=>{const l=I("a-form-item");return w(),d(s,null,[y(l,x({name:e.formItemName},e.fromItemExtraProps),{default:z(()=>[y(Ie,x(t.$attrs,{"i18n-text":o.value,"onUpdate:i18nText":a[0]||(a[0]=e=>o.value=e),"placeholder-text":t.$t("sys.inputText"),"input-extra-props":e.inputExtraProps,"i18n-config":e.i18nConfig,attr:Array.isArray(e.formItemName)?e.formItemName.join("."):e.formItemName}),null,16,["i18n-text","placeholder-text","input-extra-props","i18n-config","attr"])]),_:1},16,["name"]),y(l,{name:"i18nConfig",hidden:""},{default:z(()=>[p("span",null,P(e.i18nConfig),1)]),_:1})],64)}}}),Oe=/* @__PURE__ */ne(/* @__PURE__ */m({__name:"tag-span",props:{tagStyle:{}},setup(e){M(e=>({v650d3ac5:l.value}));const t=e,a=N(()=>t.tagStyle?.tagType||o.RADIUS),l=N(()=>t.tagStyle?.color||"#f0f0f0"),n=N(()=>`tag-${a.value}`);return(e,t)=>(w(),d("span",{class:h(["tag cursor-pointer",n.value])},[E(e.$slots,"default",{},void 0,!0)],2))}}),[["__scopeId","data-v-3bf855f6"]]),Ne=/* @__PURE__ */ne(/* @__PURE__ */m({__name:"tag-layout",props:{labelLayout:{},disabled:{type:Boolean}},setup:e=>(t,a)=>(w(),d("span",{class:h([e.disabled?"tag-label-disabled":null,!e.labelLayout?.hasLabelWidth||"left"!==e.labelLayout?.layout.label&&"horizontal"!=e.labelLayout?.layout?"":"ellipsis"==e.labelLayout?.overLabelDisplay?"label-ellipsis":"label-wrap"])},[E(t.$slots,"default",{},void 0,!0)],2))}),[["__scopeId","data-v-85e6a8f5"]]),Le={class:"select-text"},Ae={class:"select-text"},Me={key:0},Re=/* @__PURE__ */ne(/* @__PURE__ */m({__name:"tag-label",props:{tagWidgetStyle:{},type:{},disabled:{type:Boolean},label:{},isDesign:{type:Boolean},closable:{type:Boolean},showTagStyle:{type:Boolean,default:!0},avatar:{},iconExtraProps:{},iconProps:{}},emits:["on-close"],setup(e){const a=e,l=_gct.platformStore.themeSetting,o=v("labelLayout",{}),n=r(()=>{let e=a.label??"";if((!e||e.length<=0)&&a.isDesign){const t=a.type&&te(a.type)?.example||"";e=t?F(t)?i(t):t.map(e=>i(e)):""}return a.showTagStyle&&a.tagWidgetStyle?.tagStyleOpen||a.type===t.ENUM_MULTI||a.type===t.ENUM?e?F(e)?e.split(","):e:[]:e instanceof Array?e.join(","):e+""}),m=N(()=>{const e=a.tagWidgetStyle?.contentFont;return e?ee(e):{}}),b=(e="")=>{const t=a.iconExtraProps?.[e]||{},l={};return t?.textColor&&Object.assign(l,{color:t?.textColor}),m.value?.color?m.value:{wordBreak:"break-all",...m.value,...l}},x={render:({$attrs:e})=>{if(e.labelName){const t=a.iconExtraProps?.[e.labelName]||a.iconProps||{};if(!t?.icon)return;return f(K,{size:16,value:t?.icon,color:t?.iconColor||l.themeColor,style:"vertical-align: text-bottom; margin-right: 3px"})}}};return(l,i)=>e.showTagStyle&&e.tagWidgetStyle?.tagStyleOpen?(w(),u(Ne,{key:0,disabled:!!e.disabled,"label-layout":A(o)},{default:z(()=>[(w(!0),d(s,null,T(n.value,(t,o)=>(w(),u(Oe,{key:o,"tag-style":e.tagWidgetStyle.tagStyle,style:_(b(t))},{default:z(()=>[a.avatar?(w(),u(A(D),{key:0,src:A(q)(a.avatar),size:20,style:{"margin-top":"-5px"},class:"mr4px"},null,8,["src"])):c("",!0),y(x,{"label-name":t},null,8,["label-name"]),p("span",Le,P(t),1),e.closable?(w(),u(A(K),{key:1,size:15,value:"icon-park:close-small",style:{verticalAlign:"text-bottom","--color":"rgba(0,0,0,.45)",lineHeight:"1",marginLeft:"2px"},onClick:i[0]||(i[0]=W(e=>l.$emit("on-close"),["prevent","stop"]))})):c("",!0)]),_:2},1032,["tag-style","style"]))),128))]),_:1},8,["disabled","label-layout"])):e.type===A(t).ENUM_MULTI||e.type===A(t).ENUM?(w(),u(Ne,{key:1,disabled:!!e.disabled,"label-layout":A(o)},{default:z(()=>[(w(!0),d(s,null,T(n.value,(t,a)=>(w(),d("span",{key:a,style:_(b(t)),class:"mr-5px"},[y(x,{"label-name":t},null,8,["label-name"]),p("span",Ae,P(t)+P(!e.tagWidgetStyle?.tagStyleOpen&&a<n.value.length-1?",":""),1)],4))),128)),n.value.length?c("",!0):(w(),d("span",Me," "))]),_:1},8,["disabled","label-layout"])):(w(),u(Ne,{key:2,style:_(b(n.value)),disabled:!!e.disabled,"label-layout":A(o),class:"select-text leading-none ell"},{default:z(()=>[g(P(n.value||" "),1)]),_:1},8,["style","disabled","label-layout"]))}}),[["__scopeId","data-v-a1ded441"]]),ze={key:0,class:"w100% ell"},We={key:0,class:"gct-custom-tag ml8px"},je=/* @__PURE__ */m({__name:"field-readonly",props:{isTooltip:{type:Boolean},label:{},type:{},modelValue:{},tagWidgetStyle:{},disabled:{type:Boolean},iconExtraProps:{}},setup(e){const a=e,l=C(!1),o=r(()=>Array.isArray(a.label)?a.label.join(","):a.label),n=r(()=>Re);function i(e){if(!a.isTooltip)return;const t=e.target?.parentNode;console.log(),t.scrollWidth>t.clientWidth&&(l.value=!0)}function s(){l.value=!1}return(r,p)=>{const m=I("a-tooltip");return w(),u(m,{placement:"topLeft",visible:l.value},{title:z(()=>[g(P(o.value),1)]),default:z(()=>[a.type===A(t).RDO_REF?(w(),d("div",ze,[y(A(n),x(r.$attrs,{label:e.label,"tag-widget-style":a.tagWidgetStyle,disabled:a.disabled,"icon-extra-props":a.iconExtraProps,onMouseenter:i,onMouseleave:s}),null,16,["label","tag-widget-style","disabled","icon-extra-props"]),a.type===A(t).RDO_REF&&a.modelValue&&!a.modelValue?.includes(":")?(w(),d("span",We," 默认 ")):c("",!0)])):(w(),u(A(n),x({key:1},r.$attrs,{label:e.label,"tag-widget-style":a.tagWidgetStyle,disabled:a.disabled,"icon-extra-props":a.iconExtraProps,onMouseenter:i,onMouseleave:s}),null,16,["label","tag-widget-style","disabled","icon-extra-props"]))]),_:1},8,["visible"])}}}),Be=/* @__PURE__ */m({__name:"selectTag",props:{tagWidgetStyle:{}},setup(e){const t=e,a=N(()=>t.tagWidgetStyle.tagStyleOpen?t.tagWidgetStyle:{tagStyleOpen:!0,contentFont:t.tagWidgetStyle?.contentFont});return(e,t)=>(w(),u(Re,{"tag-widget-style":a.value},null,8,["tag-widget-style"]))}}),Fe=/* @__PURE__ */m({name:"FieldSelect",props:{design:Boolean,disabled:Boolean,readonly:Boolean,selectExtraProps:Object,fieldType:{type:String,required:!0},type:{type:String,required:!0},tagStyle:{type:Object,required:!0},options:Array,value:[String,Number],maxTagCount:{type:[Number,String],default:5},maxTagTextLength:{type:Number,default:6},selectOptionLabel:{type:String}},setup(e,{emit:t}){const l=r({get:()=>e.value,set(e){t("update:value",e)}}),o=(t,{name:a,iconExtraProps:l,otherParams:o={}})=>f(t,{tagWidgetStyle:e.tagStyle,type:e.fieldType,label:a,disabled:e.disabled,iconExtraProps:l,...o}),n=r(()=>(e.options??[]).map(t=>{const{iconColor:a,icon:l,textColor:n}=t._item||{};return{...t,[e.selectExtraProps?.optionLabelProp||"titleLabel"]:o(Re,{name:t.label,iconExtraProps:{[t.label]:{icon:l,iconColor:a,textColor:n}}})}}));function i(e,t){const{_DICT:a={}}=e,l=e[t];return a[t]?.[l]?.join(",")??l??e.id_}const s=r(()=>{if(e.readonly){const t=n.value?.filter(t=>"multiple"===e.selectExtraProps?.mode?Array.isArray(l.value)&&l.value.includes(t.value):t.value===l.value)??[],a=Object.fromEntries(t?.map(e=>[e.label,U(e?._item||{},["iconColor","icon","textColor"])])??[]);return{labels:t.map(e=>e.label),icons:a}}return{}}),u={option:t=>{const{label:l,_item:n={}}=t;return e.type===a.Userpicker?y("div",{class:"flex items-center"},[y(D,{size:30,style:"margin: 0 8px;min-width:32px",src:q(n.avatar)},null),y("div",{style:"width:calc(100% - 35px)"},[y("div",{class:" w100% ell",title:l},[l]),y("div",{class:"text-[#8F8F8F] text-[12px] mt2px"},[n.masterOrgName])])]):o(Re,{name:e.selectOptionLabel?i(n,e.selectOptionLabel):l,iconExtraProps:{[l]:U(n,["iconColor","icon","textColor"])},otherParams:{showTagStyle:!1}})}},c=t=>{const{label:a,option:l,closable:o,onClose:n}=t,{_item:i={}}=l||{};return(({name:t,title:a,iconExtraProps:l,avatar:o,otherParams:n={}})=>y(Be,x({tagWidgetStyle:e.tagStyle,type:e.fieldType,label:t,avatar:o,title:a?.length>e.maxTagTextLength?a:null,disabled:e.disabled,iconExtraProps:l},n),null))({name:a,title:l?.label,avatar:l?._item?.avatar,iconExtraProps:{[a]:U(i,["iconColor","icon","textColor"])},otherParams:{closable:o,"onOn-close":n,style:"margin-right: 4px"}})};return()=>e.readonly?o(je,{name:s.value?.labels,iconExtraProps:s.value?.icons}):y(X,x({class:["field-select","w100%"],value:l.value,"onUpdate:value":e=>l.value=e,options:n.value,disabled:e.disabled,optionLabelProp:"titleLabel",tagRender:c,showArrow:!0,maxTagCount:e.maxTagCount,maxTagTextLength:e.maxTagTextLength,dropdownMatchSelectWidth:180,dropdownClassName:"multiple"===e.selectExtraProps?.mode?"gct-project-select-dropdown gct-project-select-multiple vxe-table--ignore-clear":"gct-project-select-dropdown vxe-table--ignore-clear"},e.selectExtraProps),e.selectExtraProps?.optionNoStyle?null:u)}}),$e=/* @__PURE__ */m({name:"FieldRadio",props:{design:Boolean,disabled:Boolean,readonly:Boolean,fieldType:{type:Object,required:!0},tagStyle:{type:Object,required:!0},options:Array,value:[String,Number]},setup(e,{emit:t}){const a=r({get:()=>e.value,set(e){t("update:value",e)}});return()=>{let t;return y(Q,{value:a.value,"onUpdate:value":e=>a.value=e,disabled:e.disabled,class:["field-radio-group",e.readonly?"field-radio-group--readonly":""]},"function"==typeof(l=t=(e.options??[]).map(t=>{const a=t,{icon:l,iconColor:o,textColor:n}=a?._item||{};return y(Y,{key:a.value,value:a.value},{default:()=>[y(je,{tagWidgetStyle:e.tagStyle,type:e.fieldType,label:a.label,disabled:e.disabled,iconExtraProps:{[a.label]:{icon:l,iconColor:o,textColor:n}}},null)]})}))||"[object Object]"===Object.prototype.toString.call(l)&&!b(l)?t:{default:()=>[t]});var l}}}),Ue=/* @__PURE__ */m({name:"FieldCheckbox",props:{design:Boolean,disabled:Boolean,readonly:Boolean,fieldType:{type:Object,required:!0},tagStyle:{type:Object,required:!0},options:Array,value:[String,Number]},setup(e,{emit:a}){const l=e.fieldType===t.BOOLEAN,o=r({get:()=>l?[e.value]:Array.isArray(e.value)?e.value:e.value?e.value.split(","):void 0,set(e){if(l){const t=e?.[0];a("update:value",null==t||"boolean"!=typeof t?Boolean(t):!!t)}else a("update:value",e)}}),n=r(()=>l?(e.options??[]).filter(e=>e.value):e.options??[]);return()=>y(Z,{value:o.value,"onUpdate:value":e=>o.value=e,disabled:e.disabled,class:["field-checkbox-group",e.readonly?"field-checkbox-group--readonly":""]},{default:()=>[n.value?.map(t=>{const a=t,{icon:l,iconColor:o,textColor:n}=a?._item||{};return y(G,{key:a.value,value:a.value},{default:()=>[y(je,{tagWidgetStyle:e.tagStyle,type:e.fieldType,label:a.label,disabled:e.disabled,iconExtraProps:{[a.label]:{icon:l,iconColor:o,textColor:n}}},null)]})})]})}}),Ke=new URL("./index.min.css",import.meta.url);n.load(Ke.href);export{Ue as FieldCheckbox,$e as FieldRadio,Fe as FieldSelect,ae as I18Modal,de as I18nSelectBtn,Ce as I18nSelectInput,Te as I18nSelectInputForm,Ie as I18nSelectTextarea,Pe as I18nSelectTextareaForm,je as fieldReadonly,Be as selectTag,Re as taglabel,re as useI18nSelect};
|
|
1
|
+
import{FIELD_TYPE as e,FormComponents as t,TagTypeEnum as l,cssLoader as a,t as o}from"@gct-paas/core";import{Fragment as r,computed as s,createBlock as n,createCommentVNode as i,createElementBlock as d,createElementVNode as p,createTextVNode as c,createVNode as u,defineComponent as y,h as g,inject as b,isVNode as m,mergeProps as v,normalizeClass as x,normalizeStyle as f,openBlock as S,ref as h,renderList as _,renderSlot as C,resolveComponent as T,toDisplayString as E,toRef as P,unref as w,useCssVars as L,withCtx as O,withModifiers as k}from"vue";import{Avatar as W,Checkbox as B,CheckboxGroup as j,Radio as N,RadioGroup as A,Select as F}from"ant-design-vue";import{isString as U,pick as M}from"lodash-es";import{IconNext as R,transformUrl as q}from"@gct-paas/core-web";import{schemaToStyle as D,transformField2Component as I}from"@gct-paas/design";var $=(e,t)=>{const l=e.__vccOpts||e;for(const[a,o]of t)l[a]=o;return l},z=/* @__PURE__ */$(/* @__PURE__ */y({__name:"tag-span",props:{tagStyle:{}},setup(e){L(e=>({v650d3ac5:o.value}));const t=e,a=P(()=>t.tagStyle?.tagType||l.RADIUS),o=P(()=>t.tagStyle?.color||"#f0f0f0"),r=P(()=>`tag-${a.value}`);return(e,t)=>(S(),d("span",{class:x(["tag cursor-pointer",r.value])},[C(e.$slots,"default",{},void 0,!0)],2))}}),[["__scopeId","data-v-3bf855f6"]]),V=/* @__PURE__ */$(/* @__PURE__ */y({__name:"tag-layout",props:{labelLayout:{},disabled:{type:Boolean}},setup:e=>(t,l)=>(S(),d("span",{class:x([e.disabled?"tag-label-disabled":null,!e.labelLayout?.hasLabelWidth||"left"!==e.labelLayout?.layout.label&&"horizontal"!=e.labelLayout?.layout?"":"ellipsis"==e.labelLayout?.overLabelDisplay?"label-ellipsis":"label-wrap"])},[C(t.$slots,"default",{},void 0,!0)],2))}),[["__scopeId","data-v-85e6a8f5"]]),H={class:"select-text"},G={class:"select-text"},J={key:0},K=/* @__PURE__ */$(/* @__PURE__ */y({__name:"tag-label",props:{tagWidgetStyle:{},type:{},disabled:{type:Boolean},label:{},isDesign:{type:Boolean},closable:{type:Boolean},showTagStyle:{type:Boolean,default:!0},avatar:{},iconExtraProps:{},iconProps:{}},emits:["on-close"],setup(t){const l=t,a=_gct.platformStore.themeSetting,y=b("labelLayout",{}),m=s(()=>{let t=l.label??"";if((!t||t.length<=0)&&l.isDesign){const e=l.type&&I(l.type)?.example||"";t=e?U(e)?o(e):e.map(e=>o(e)):""}return l.showTagStyle&&l.tagWidgetStyle?.tagStyleOpen||l.type===e.ENUM_MULTI||l.type===e.ENUM?t?U(t)?t.split(","):t:[]:t instanceof Array?t.join(","):t+""}),v=P(()=>{const e=l.tagWidgetStyle?.contentFont;return e?D(e):{}}),x=(e="")=>{const t=l.iconExtraProps?.[e]||{},a={};return t?.textColor&&Object.assign(a,{color:t?.textColor}),v.value?.color?v.value:{wordBreak:"break-all",...v.value,...a}},h={render:({$attrs:e})=>{if(e.labelName){const t=l.iconExtraProps?.[e.labelName]||l.iconProps||{};if(!t?.icon)return;return g(R,{size:16,value:t?.icon,color:t?.iconColor||a.themeColor,style:"vertical-align: text-bottom; margin-right: 3px"})}}};return(a,o)=>t.showTagStyle&&t.tagWidgetStyle?.tagStyleOpen?(S(),n(V,{key:0,disabled:!!t.disabled,"label-layout":w(y)},{default:O(()=>[(S(!0),d(r,null,_(m.value,(e,r)=>(S(),n(z,{key:r,"tag-style":t.tagWidgetStyle.tagStyle,style:f(x(e))},{default:O(()=>[l.avatar?(S(),n(w(W),{key:0,src:w(q)(l.avatar),size:20,style:{"margin-top":"-5px"},class:"mr4px"},null,8,["src"])):i("",!0),u(h,{"label-name":e},null,8,["label-name"]),p("span",H,E(e),1),t.closable?(S(),n(w(R),{key:1,size:15,value:"icon-park:close-small",style:{verticalAlign:"text-bottom","--color":"rgba(0,0,0,.45)",lineHeight:"1",marginLeft:"2px"},onClick:o[0]||(o[0]=k(e=>a.$emit("on-close"),["prevent","stop"]))})):i("",!0)]),_:2},1032,["tag-style","style"]))),128))]),_:1},8,["disabled","label-layout"])):t.type===w(e).ENUM_MULTI||t.type===w(e).ENUM?(S(),n(V,{key:1,disabled:!!t.disabled,"label-layout":w(y)},{default:O(()=>[(S(!0),d(r,null,_(m.value,(e,l)=>(S(),d("span",{key:l,style:f(x(e)),class:"mr-5px"},[u(h,{"label-name":e},null,8,["label-name"]),p("span",G,E(e)+E(!t.tagWidgetStyle?.tagStyleOpen&&l<m.value.length-1?",":""),1)],4))),128)),m.value.length?i("",!0):(S(),d("span",J," "))]),_:1},8,["disabled","label-layout"])):(S(),n(V,{key:2,style:f(x(m.value)),disabled:!!t.disabled,"label-layout":w(y),class:"select-text leading-none ell"},{default:O(()=>[c(E(m.value||" "),1)]),_:1},8,["style","disabled","label-layout"]))}}),[["__scopeId","data-v-a1ded441"]]),Q={key:0,class:"w100% ell"},X={key:0,class:"gct-custom-tag ml8px"},Y=/* @__PURE__ */y({__name:"field-readonly",props:{isTooltip:{type:Boolean},label:{},type:{},modelValue:{},tagWidgetStyle:{},disabled:{type:Boolean},iconExtraProps:{}},setup(t){const l=t,a=h(!1),o=s(()=>Array.isArray(l.label)?l.label.join(","):l.label),r=s(()=>K);function p(e){if(!l.isTooltip)return;const t=e.target?.parentNode;console.log(),t.scrollWidth>t.clientWidth&&(a.value=!0)}function y(){a.value=!1}return(s,g)=>{const b=T("a-tooltip");return S(),n(b,{placement:"topLeft",visible:a.value},{title:O(()=>[c(E(o.value),1)]),default:O(()=>[l.type===w(e).RDO_REF?(S(),d("div",Q,[u(w(r),v(s.$attrs,{label:t.label,"tag-widget-style":l.tagWidgetStyle,disabled:l.disabled,"icon-extra-props":l.iconExtraProps,onMouseenter:p,onMouseleave:y}),null,16,["label","tag-widget-style","disabled","icon-extra-props"]),l.type===w(e).RDO_REF&&l.modelValue&&!l.modelValue?.includes(":")?(S(),d("span",X," 默认 ")):i("",!0)])):(S(),n(w(r),v({key:1},s.$attrs,{label:t.label,"tag-widget-style":l.tagWidgetStyle,disabled:l.disabled,"icon-extra-props":l.iconExtraProps,onMouseenter:p,onMouseleave:y}),null,16,["label","tag-widget-style","disabled","icon-extra-props"]))]),_:1},8,["visible"])}}}),Z=/* @__PURE__ */y({__name:"selectTag",props:{tagWidgetStyle:{}},setup(e){const t=e,l=P(()=>t.tagWidgetStyle.tagStyleOpen?t.tagWidgetStyle:{tagStyleOpen:!0,contentFont:t.tagWidgetStyle?.contentFont});return(e,t)=>(S(),n(K,{"tag-widget-style":l.value},null,8,["tag-widget-style"]))}}),ee=/* @__PURE__ */y({name:"FieldSelect",props:{design:Boolean,disabled:Boolean,readonly:Boolean,selectExtraProps:Object,fieldType:{type:String,required:!0},type:{type:String,required:!0},tagStyle:{type:Object,required:!0},options:Array,value:[String,Number],maxTagCount:{type:[Number,String],default:5},maxTagTextLength:{type:Number,default:6},selectOptionLabel:{type:String}},setup(e,{emit:l}){const a=s({get:()=>e.value,set(e){l("update:value",e)}}),o=(t,{name:l,iconExtraProps:a,otherParams:o={}})=>g(t,{tagWidgetStyle:e.tagStyle,type:e.fieldType,label:l,disabled:e.disabled,iconExtraProps:a,...o}),r=s(()=>(e.options??[]).map(t=>{const{iconColor:l,icon:a,textColor:r}=t._item||{};return{...t,[e.selectExtraProps?.optionLabelProp||"titleLabel"]:o(K,{name:t.label,iconExtraProps:{[t.label]:{icon:a,iconColor:l,textColor:r}}})}}));function n(e,t){const{_DICT:l={}}=e,a=e[t];return l[t]?.[a]?.join(",")??a??e.id_}const i=s(()=>{if(e.readonly){const t=r.value?.filter(t=>"multiple"===e.selectExtraProps?.mode?Array.isArray(a.value)&&a.value.includes(t.value):t.value===a.value)??[],l=Object.fromEntries(t?.map(e=>[e.label,M(e?._item||{},["iconColor","icon","textColor"])])??[]);return{labels:t.map(e=>e.label),icons:l}}return{}}),d={option:l=>{const{label:a,_item:r={}}=l;return e.type===t.Userpicker?u("div",{class:"flex items-center"},[u(W,{size:30,style:"margin: 0 8px;min-width:32px",src:q(r.avatar)},null),u("div",{style:"width:calc(100% - 35px)"},[u("div",{class:" w100% ell",title:a},[a]),u("div",{class:"text-[#8F8F8F] text-[12px] mt2px"},[r.masterOrgName])])]):o(K,{name:e.selectOptionLabel?n(r,e.selectOptionLabel):a,iconExtraProps:{[a]:M(r,["iconColor","icon","textColor"])},otherParams:{showTagStyle:!1}})}},p=t=>{const{label:l,option:a,closable:o,onClose:r}=t,{_item:s={}}=a||{};return(({name:t,title:l,iconExtraProps:a,avatar:o,otherParams:r={}})=>u(Z,v({tagWidgetStyle:e.tagStyle,type:e.fieldType,label:t,avatar:o,title:l?.length>e.maxTagTextLength?l:null,disabled:e.disabled,iconExtraProps:a},r),null))({name:l,title:a?.label,avatar:a?._item?.avatar,iconExtraProps:{[l]:M(s,["iconColor","icon","textColor"])},otherParams:{closable:o,"onOn-close":r,style:"margin-right: 4px"}})};return()=>e.readonly?o(Y,{name:i.value?.labels,iconExtraProps:i.value?.icons}):u(F,v({class:["field-select","w100%"],value:a.value,"onUpdate:value":e=>a.value=e,options:r.value,disabled:e.disabled,optionLabelProp:"titleLabel",tagRender:p,showArrow:!0,maxTagCount:e.maxTagCount,maxTagTextLength:e.maxTagTextLength,dropdownMatchSelectWidth:180,dropdownClassName:"multiple"===e.selectExtraProps?.mode?"gct-project-select-dropdown gct-project-select-multiple vxe-table--ignore-clear":"gct-project-select-dropdown vxe-table--ignore-clear"},e.selectExtraProps),e.selectExtraProps?.optionNoStyle?null:d)}}),te=/* @__PURE__ */y({name:"FieldRadio",props:{design:Boolean,disabled:Boolean,readonly:Boolean,fieldType:{type:Object,required:!0},tagStyle:{type:Object,required:!0},options:Array,value:[String,Number]},setup(e,{emit:t}){const l=s({get:()=>e.value,set(e){t("update:value",e)}});return()=>{let t;return u(A,{value:l.value,"onUpdate:value":e=>l.value=e,disabled:e.disabled,class:["field-radio-group",e.readonly?"field-radio-group--readonly":""]},"function"==typeof(a=t=(e.options??[]).map(t=>{const l=t,{icon:a,iconColor:o,textColor:r}=l?._item||{};return u(N,{key:l.value,value:l.value},{default:()=>[u(Y,{tagWidgetStyle:e.tagStyle,type:e.fieldType,label:l.label,disabled:e.disabled,iconExtraProps:{[l.label]:{icon:a,iconColor:o,textColor:r}}},null)]})}))||"[object Object]"===Object.prototype.toString.call(a)&&!m(a)?t:{default:()=>[t]});var a}}}),le=/* @__PURE__ */y({name:"FieldCheckbox",props:{design:Boolean,disabled:Boolean,readonly:Boolean,fieldType:{type:Object,required:!0},tagStyle:{type:Object,required:!0},options:Array,value:[String,Number]},setup(t,{emit:l}){const a=t.fieldType===e.BOOLEAN,o=s({get:()=>a?[t.value]:Array.isArray(t.value)?t.value:t.value?t.value.split(","):void 0,set(e){if(a){const t=e?.[0];l("update:value",null==t||"boolean"!=typeof t?Boolean(t):!!t)}else l("update:value",e)}}),r=s(()=>a?(t.options??[]).filter(e=>e.value):t.options??[]);return()=>u(j,{value:o.value,"onUpdate:value":e=>o.value=e,disabled:t.disabled,class:["field-checkbox-group",t.readonly?"field-checkbox-group--readonly":""]},{default:()=>[r.value?.map(e=>{const l=e,{icon:a,iconColor:o,textColor:r}=l?._item||{};return u(B,{key:l.value,value:l.value},{default:()=>[u(Y,{tagWidgetStyle:t.tagStyle,type:t.fieldType,label:l.label,disabled:t.disabled,iconExtraProps:{[l.label]:{icon:a,iconColor:o,textColor:r}}},null)]})})]})}}),ae=new URL("./index.min.css",import.meta.url);a.load(ae.href);export{le as FieldCheckbox,te as FieldRadio,ee as FieldSelect,Y as fieldReadonly,Z as selectTag,K as taglabel};
|
|
@@ -32,7 +32,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
32
32
|
value: (StringConstructor | NumberConstructor)[];
|
|
33
33
|
}>> & Readonly<{}>, {
|
|
34
34
|
disabled: boolean;
|
|
35
|
-
readonly: boolean;
|
|
36
35
|
design: boolean;
|
|
36
|
+
readonly: boolean;
|
|
37
37
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
38
38
|
export default _default;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import field_readonly_default from "./field-readonly.vue.mjs";
|
|
2
2
|
import './index.css';/* empty css */
|
|
3
3
|
import { computed, createVNode, defineComponent } from "vue";
|
|
4
|
-
import { FIELD_TYPE } from "@gct-paas/core";
|
|
5
4
|
import { Checkbox, CheckboxGroup } from "ant-design-vue";
|
|
5
|
+
import { FIELD_TYPE } from "@gct-paas/core";
|
|
6
6
|
//#region src/components/form-component/FieldCheckbox.tsx
|
|
7
7
|
var FieldCheckbox_default = /* @__PURE__ */ defineComponent({
|
|
8
8
|
name: "FieldCheckbox",
|
|
@@ -32,7 +32,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
32
32
|
value: (StringConstructor | NumberConstructor)[];
|
|
33
33
|
}>> & Readonly<{}>, {
|
|
34
34
|
disabled: boolean;
|
|
35
|
-
readonly: boolean;
|
|
36
35
|
design: boolean;
|
|
36
|
+
readonly: boolean;
|
|
37
37
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
38
38
|
export default _default;
|
|
@@ -74,9 +74,9 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
74
74
|
};
|
|
75
75
|
}>> & Readonly<{}>, {
|
|
76
76
|
disabled: boolean;
|
|
77
|
-
readonly: boolean;
|
|
78
77
|
maxTagCount: string | number;
|
|
79
78
|
maxTagTextLength: number;
|
|
80
79
|
design: boolean;
|
|
80
|
+
readonly: boolean;
|
|
81
81
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
82
82
|
export default _default;
|
|
@@ -3,10 +3,10 @@ import field_readonly_default from "./field-readonly.vue.mjs";
|
|
|
3
3
|
import selectTag_default from "./field-label/selectTag.vue.mjs";
|
|
4
4
|
import './index.css';/* empty css */
|
|
5
5
|
import { computed, createVNode, defineComponent, h, mergeProps } from "vue";
|
|
6
|
+
import { Avatar, Select } from "ant-design-vue";
|
|
7
|
+
import { FormComponents } from "@gct-paas/core";
|
|
6
8
|
import { pick } from "lodash-es";
|
|
7
9
|
import { transformUrl } from "@gct-paas/core-web";
|
|
8
|
-
import { FormComponents } from "@gct-paas/core";
|
|
9
|
-
import { Avatar, Select } from "ant-design-vue";
|
|
10
10
|
//#region src/components/form-component/FieldSelect.tsx
|
|
11
11
|
var FieldSelect_default = /* @__PURE__ */ defineComponent({
|
|
12
12
|
name: "FieldSelect",
|
package/es/components/form-component/field-label/tag-label.vue_vue_type_script_setup_true_lang.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import tag_span_default from "./tag-span.vue.mjs";
|
|
2
2
|
import tag_layout_default from "./tag-layout.vue.mjs";
|
|
3
3
|
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, h, inject, normalizeStyle, openBlock, renderList, toDisplayString, toRef, unref, withCtx, withModifiers } from "vue";
|
|
4
|
+
import { Avatar } from "ant-design-vue";
|
|
5
|
+
import { FIELD_TYPE, t } from "@gct-paas/core";
|
|
4
6
|
import { isString } from "lodash-es";
|
|
5
7
|
import { IconNext, transformUrl } from "@gct-paas/core-web";
|
|
6
|
-
import { FIELD_TYPE, t } from "@gct-paas/core";
|
|
7
|
-
import { Avatar } from "ant-design-vue";
|
|
8
8
|
import { schemaToStyle, transformField2Component } from "@gct-paas/design";
|
|
9
9
|
//#region src/components/form-component/field-label/tag-label.vue?vue&type=script&setup=true&lang.ts
|
|
10
10
|
var _hoisted_1 = { class: "select-text" };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
2
1
|
import tag_span_vue_vue_type_script_setup_true_lang_default from "./tag-span.vue_vue_type_script_setup_true_lang.mjs";
|
|
3
2
|
import './tag-span.vue_vue_type_style_index_0_scoped_3bf855f6_lang.css';/* empty css */
|
|
3
|
+
import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
4
|
//#region src/components/form-component/field-label/tag-span.vue
|
|
5
5
|
var tag_span_default = /* @__PURE__ */ _plugin_vue_export_helper_default(tag_span_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-3bf855f6"]]);
|
|
6
6
|
//#endregion
|
package/es/components/index.d.ts
CHANGED
package/es/components/index.mjs
CHANGED
|
@@ -1,11 +1,3 @@
|
|
|
1
|
-
import "./I18nSelect/src/i18n-modal.vue.mjs";
|
|
2
|
-
import "./I18nSelect/src/useI18nSelect.mjs";
|
|
3
|
-
import "./I18nSelect/src/i18n-select-btn.vue.mjs";
|
|
4
|
-
import "./I18nSelect/src/i18n-select-input.vue.mjs";
|
|
5
|
-
import "./I18nSelect/src/i18n-select-input-form.vue.mjs";
|
|
6
|
-
import "./I18nSelect/src/i18n-select-textarea.vue.mjs";
|
|
7
|
-
import "./I18nSelect/src/i18n-select-textarea-form.vue.mjs";
|
|
8
|
-
import "./I18nSelect/index.mjs";
|
|
9
1
|
import "./form-component/field-label/tag-label.vue.mjs";
|
|
10
2
|
import "./form-component/field-readonly.vue.mjs";
|
|
11
3
|
import "./form-component/field-label/selectTag.vue.mjs";
|
package/es/index.mjs
CHANGED
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
import i18n_modal_default from "./components/I18nSelect/src/i18n-modal.vue.mjs";
|
|
2
|
-
import { useI18nSelect } from "./components/I18nSelect/src/useI18nSelect.mjs";
|
|
3
|
-
import i18n_select_btn_default from "./components/I18nSelect/src/i18n-select-btn.vue.mjs";
|
|
4
|
-
import i18n_select_input_default from "./components/I18nSelect/src/i18n-select-input.vue.mjs";
|
|
5
|
-
import i18n_select_input_form_default from "./components/I18nSelect/src/i18n-select-input-form.vue.mjs";
|
|
6
|
-
import i18n_select_textarea_default from "./components/I18nSelect/src/i18n-select-textarea.vue.mjs";
|
|
7
|
-
import i18n_select_textarea_form_default from "./components/I18nSelect/src/i18n-select-textarea-form.vue.mjs";
|
|
8
1
|
import tag_label_default from "./components/form-component/field-label/tag-label.vue.mjs";
|
|
9
2
|
import field_readonly_default from "./components/form-component/field-readonly.vue.mjs";
|
|
10
3
|
import selectTag_default from "./components/form-component/field-label/selectTag.vue.mjs";
|
|
@@ -17,4 +10,4 @@ var src_default = { install(app) {
|
|
|
17
10
|
console.log("Design Web install", app);
|
|
18
11
|
} };
|
|
19
12
|
//#endregion
|
|
20
|
-
export { FieldCheckbox_default as FieldCheckbox, FieldRadio_default as FieldRadio, FieldSelect_default as FieldSelect,
|
|
13
|
+
export { FieldCheckbox_default as FieldCheckbox, FieldRadio_default as FieldRadio, FieldSelect_default as FieldSelect, src_default as default, field_readonly_default as fieldReadonly, selectTag_default as selectTag, tag_label_default as taglabel };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gct-paas/design-web",
|
|
3
|
-
"version": "0.1.4-dev.
|
|
3
|
+
"version": "0.1.4-dev.17",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "paas 平台设计界面移动端底包",
|
|
6
6
|
"loader": "dist/loader.esm.min.js",
|
|
@@ -44,11 +44,11 @@
|
|
|
44
44
|
"dependencies": {
|
|
45
45
|
"@ant-design/icons-vue": "^6.1.0",
|
|
46
46
|
"@gct-paas/api": "^0.1.2-dev.1",
|
|
47
|
-
"@gct-paas/core": "0.1.4-dev.
|
|
48
|
-
"@gct-paas/core-web": "0.1.4-dev.
|
|
49
|
-
"@gct-paas/design": "0.1.4-dev.
|
|
50
|
-
"@gct-paas/schema": "0.1.4-dev.
|
|
51
|
-
"@gct-paas/scss": "0.1.4-dev.
|
|
47
|
+
"@gct-paas/core": "0.1.4-dev.17",
|
|
48
|
+
"@gct-paas/core-web": "0.1.4-dev.17",
|
|
49
|
+
"@gct-paas/design": "0.1.4-dev.17",
|
|
50
|
+
"@gct-paas/schema": "0.1.4-dev.17",
|
|
51
|
+
"@gct-paas/scss": "0.1.4-dev.17",
|
|
52
52
|
"@vueuse/core": "^14.1.0",
|
|
53
53
|
"ant-design-vue": "~3.2.20",
|
|
54
54
|
"vue": "^3.5.30"
|
|
@@ -62,5 +62,5 @@
|
|
|
62
62
|
"@gct-paas/scss": "*",
|
|
63
63
|
"vue": ">=3"
|
|
64
64
|
},
|
|
65
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "386e2564d23891fd28c72e649788697ad12b7768"
|
|
66
66
|
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export { useI18nSelect } from './src/useI18nSelect';
|
|
2
|
-
export { default as I18Modal } from './src/i18n-modal.vue';
|
|
3
|
-
export { default as I18nSelectBtn } from './src/i18n-select-btn.vue';
|
|
4
|
-
export { default as I18nSelectInput } from './src/i18n-select-input.vue';
|
|
5
|
-
export { default as I18nSelectInputForm } from './src/i18n-select-input-form.vue';
|
|
6
|
-
export { default as I18nSelectTextarea } from './src/i18n-select-textarea.vue';
|
|
7
|
-
export { default as I18nSelectTextareaForm } from './src/i18n-select-textarea-form.vue';
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import "./src/i18n-modal.vue.mjs";
|
|
2
|
-
import "./src/useI18nSelect.mjs";
|
|
3
|
-
import "./src/i18n-select-btn.vue.mjs";
|
|
4
|
-
import "./src/i18n-select-input.vue.mjs";
|
|
5
|
-
import "./src/i18n-select-input-form.vue.mjs";
|
|
6
|
-
import "./src/i18n-select-textarea.vue.mjs";
|
|
7
|
-
import "./src/i18n-select-textarea-form.vue.mjs";
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
export interface I18nState {
|
|
2
|
-
id: string;
|
|
3
|
-
[key: string]: string;
|
|
4
|
-
}
|
|
5
|
-
type __VLS_Props = {
|
|
6
|
-
lang: {
|
|
7
|
-
title: string;
|
|
8
|
-
dataIndex: string;
|
|
9
|
-
}[];
|
|
10
|
-
getContainer: () => HTMLElement;
|
|
11
|
-
};
|
|
12
|
-
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
13
|
-
ok: (...args: any[]) => void;
|
|
14
|
-
register: (...args: any[]) => void;
|
|
15
|
-
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
16
|
-
onOk?: ((...args: any[]) => any) | undefined;
|
|
17
|
-
onRegister?: ((...args: any[]) => any) | undefined;
|
|
18
|
-
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
19
|
-
formRef: unknown;
|
|
20
|
-
}, any>;
|
|
21
|
-
export default _default;
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import i18n_modal_vue_vue_type_script_setup_true_lang_default from "./i18n-modal.vue_vue_type_script_setup_true_lang.mjs";
|
|
2
|
-
//#region src/components/I18nSelect/src/i18n-modal.vue
|
|
3
|
-
var i18n_modal_default = i18n_modal_vue_vue_type_script_setup_true_lang_default;
|
|
4
|
-
//#endregion
|
|
5
|
-
export { i18n_modal_default as default };
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
import { Fragment, createBlock, createElementBlock, createVNode, defineComponent, mergeProps, openBlock, reactive, ref, renderList, resolveComponent, toRaw, unref, withCtx } from "vue";
|
|
2
|
-
import { useModalInner } from "@gct-paas/core-web";
|
|
3
|
-
import { t } from "@gct-paas/core";
|
|
4
|
-
//#region src/components/I18nSelect/src/i18n-modal.vue?vue&type=script&setup=true&lang.ts
|
|
5
|
-
var i18n_modal_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
|
|
6
|
-
__name: "i18n-modal",
|
|
7
|
-
props: {
|
|
8
|
-
lang: {},
|
|
9
|
-
getContainer: { type: Function }
|
|
10
|
-
},
|
|
11
|
-
emits: ["ok", "register"],
|
|
12
|
-
setup(__props, { emit: __emit }) {
|
|
13
|
-
const props = __props;
|
|
14
|
-
const emit = __emit;
|
|
15
|
-
const formRef = ref();
|
|
16
|
-
const i18nState = reactive({ id: "" });
|
|
17
|
-
const isEdit = ref(false);
|
|
18
|
-
const handleShow = (visible) => {
|
|
19
|
-
if (visible) isEdit.value = false;
|
|
20
|
-
};
|
|
21
|
-
const [registerInner, { closeModal }] = useModalInner((data) => {
|
|
22
|
-
data && onDataReceive(data);
|
|
23
|
-
});
|
|
24
|
-
const onDataReceive = (data) => {
|
|
25
|
-
isEdit.value = true;
|
|
26
|
-
i18nState.id = data.key;
|
|
27
|
-
const { lang } = props;
|
|
28
|
-
console.log(lang, "lang========");
|
|
29
|
-
for (const item of lang) {
|
|
30
|
-
const key = item.dataIndex;
|
|
31
|
-
i18nState[key] = data[key];
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
const validateSpecialCharacters = (_, value, callback) => {
|
|
35
|
-
if (!/^[a-zA-Z_.]*$/.test(value)) callback(t("sys.i18n.validated18nKeyErrorMsg"));
|
|
36
|
-
callback();
|
|
37
|
-
};
|
|
38
|
-
const validateLang = async (_rule, value) => {
|
|
39
|
-
if (/^\s*$/g.test(value)) return Promise.reject(t("sys.notEmptySth", { sth: t("sys.i18n") }));
|
|
40
|
-
else return Promise.resolve();
|
|
41
|
-
};
|
|
42
|
-
const handleOk = () => {
|
|
43
|
-
formRef.value?.validate().then(() => {
|
|
44
|
-
emit("ok", { ...toRaw(i18nState) }, isEdit.value);
|
|
45
|
-
closeModal();
|
|
46
|
-
});
|
|
47
|
-
};
|
|
48
|
-
const handleClose = () => {
|
|
49
|
-
formRef.value?.resetFields();
|
|
50
|
-
};
|
|
51
|
-
return (_ctx, _cache) => {
|
|
52
|
-
const _component_a_input = resolveComponent("a-input");
|
|
53
|
-
const _component_a_form_item = resolveComponent("a-form-item");
|
|
54
|
-
const _component_a_form = resolveComponent("a-form");
|
|
55
|
-
const _component_BasicModal = resolveComponent("BasicModal");
|
|
56
|
-
return openBlock(), createBlock(_component_BasicModal, mergeProps(_ctx.$attrs, {
|
|
57
|
-
title: isEdit.value ? unref(t)("sys.edit") : unref(t)("sys.new"),
|
|
58
|
-
centered: "",
|
|
59
|
-
width: "640px",
|
|
60
|
-
"min-height": 100,
|
|
61
|
-
"mask-closable": false,
|
|
62
|
-
"after-close": handleClose,
|
|
63
|
-
"get-container": __props.getContainer,
|
|
64
|
-
onRegister: unref(registerInner),
|
|
65
|
-
onOk: handleOk,
|
|
66
|
-
onVisibleChange: handleShow
|
|
67
|
-
}), {
|
|
68
|
-
default: withCtx(() => [createVNode(_component_a_form, {
|
|
69
|
-
ref_key: "formRef",
|
|
70
|
-
ref: formRef,
|
|
71
|
-
model: i18nState,
|
|
72
|
-
"label-col": { span: 6 },
|
|
73
|
-
"wrapper-col": { span: 16 },
|
|
74
|
-
autocomplete: "off",
|
|
75
|
-
layout: "horizontal"
|
|
76
|
-
}, {
|
|
77
|
-
default: withCtx(() => [createVNode(_component_a_form_item, {
|
|
78
|
-
label: unref(t)("sys.i18n.resourceIdentification"),
|
|
79
|
-
name: "id",
|
|
80
|
-
rules: [{
|
|
81
|
-
required: true,
|
|
82
|
-
message: unref(t)("sys.pleaseInputSth", { sth: unref(t)("sys.i18n.resourceIdentification") })
|
|
83
|
-
}, { validator: validateSpecialCharacters }]
|
|
84
|
-
}, {
|
|
85
|
-
default: withCtx(() => [createVNode(_component_a_input, {
|
|
86
|
-
value: i18nState.id,
|
|
87
|
-
"onUpdate:value": _cache[0] || (_cache[0] = ($event) => i18nState.id = $event),
|
|
88
|
-
"show-count": "",
|
|
89
|
-
maxlength: 128,
|
|
90
|
-
disabled: isEdit.value
|
|
91
|
-
}, null, 8, ["value", "disabled"])]),
|
|
92
|
-
_: 1
|
|
93
|
-
}, 8, ["label", "rules"]), (openBlock(true), createElementBlock(Fragment, null, renderList(props.lang, (item) => {
|
|
94
|
-
return openBlock(), createBlock(_component_a_form_item, {
|
|
95
|
-
key: item.dataIndex,
|
|
96
|
-
label: item.title,
|
|
97
|
-
name: item.dataIndex,
|
|
98
|
-
rules: [{
|
|
99
|
-
required: true,
|
|
100
|
-
message: unref(t)("sys.pleaseInputSth", { sth: item.title })
|
|
101
|
-
}, { validator: validateLang }]
|
|
102
|
-
}, {
|
|
103
|
-
default: withCtx(() => [createVNode(_component_a_input, {
|
|
104
|
-
value: i18nState[item.dataIndex],
|
|
105
|
-
"onUpdate:value": ($event) => i18nState[item.dataIndex] = $event,
|
|
106
|
-
"show-count": "",
|
|
107
|
-
maxlength: 300
|
|
108
|
-
}, null, 8, ["value", "onUpdate:value"])]),
|
|
109
|
-
_: 2
|
|
110
|
-
}, 1032, [
|
|
111
|
-
"label",
|
|
112
|
-
"name",
|
|
113
|
-
"rules"
|
|
114
|
-
]);
|
|
115
|
-
}), 128))]),
|
|
116
|
-
_: 1
|
|
117
|
-
}, 8, ["model"])]),
|
|
118
|
-
_: 1
|
|
119
|
-
}, 16, [
|
|
120
|
-
"title",
|
|
121
|
-
"get-container",
|
|
122
|
-
"onRegister"
|
|
123
|
-
]);
|
|
124
|
-
};
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
//#endregion
|
|
128
|
-
export { i18n_modal_vue_vue_type_script_setup_true_lang_default as default };
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
interface Props {
|
|
2
|
-
i18nValue?: string;
|
|
3
|
-
buttonExtraProps?: IObject;
|
|
4
|
-
size?: string;
|
|
5
|
-
i18nModalKey?: string;
|
|
6
|
-
simpleBtn?: boolean;
|
|
7
|
-
btnHeight?: string;
|
|
8
|
-
btnWidth?: string;
|
|
9
|
-
}
|
|
10
|
-
declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
11
|
-
"on-select-i18n": (...args: any[]) => void;
|
|
12
|
-
closed: (...args: any[]) => void;
|
|
13
|
-
}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
|
|
14
|
-
"onOn-select-i18n"?: ((...args: any[]) => any) | undefined;
|
|
15
|
-
onClosed?: ((...args: any[]) => any) | undefined;
|
|
16
|
-
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
17
|
-
export default _default;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
2
|
-
import i18n_select_btn_vue_vue_type_script_setup_true_name_i18n_select_btn_lang_default from "./i18n-select-btn.vue_vue_type_script_setup_true_name_i18n-select-btn_lang.mjs";
|
|
3
|
-
import './i18n-select-btn.vue_vue_type_style_index_0_scoped_dc8ffb2c_lang.css';/* empty css */
|
|
4
|
-
//#region src/components/I18nSelect/src/i18n-select-btn.vue
|
|
5
|
-
var i18n_select_btn_default = /* @__PURE__ */ _plugin_vue_export_helper_default(i18n_select_btn_vue_vue_type_script_setup_true_name_i18n_select_btn_lang_default, [["__scopeId", "data-v-dc8ffb2c"]]);
|
|
6
|
-
//#endregion
|
|
7
|
-
export { i18n_select_btn_default as default };
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import { useI18nSelect } from "./useI18nSelect.mjs";
|
|
2
|
-
import { Fragment, computed, createBlock, createElementBlock, createElementVNode, createVNode, defineComponent, mergeProps, normalizeClass, openBlock, reactive, ref, renderList, resolveComponent, toDisplayString, watch, withCtx } from "vue";
|
|
3
|
-
import { isEmpty } from "lodash-es";
|
|
4
|
-
//#region src/components/I18nSelect/src/i18n-select-btn.vue?vue&type=script&setup=true&name=i18n-select-btn&lang.ts
|
|
5
|
-
var _hoisted_1 = { class: "i18n-tooltip-title" };
|
|
6
|
-
var _hoisted_2 = { style: { "margin-left": "4px" } };
|
|
7
|
-
var i18n_select_btn_vue_vue_type_script_setup_true_name_i18n_select_btn_lang_default = /* @__PURE__ */ defineComponent({
|
|
8
|
-
__name: "i18n-select-btn",
|
|
9
|
-
props: {
|
|
10
|
-
i18nValue: {},
|
|
11
|
-
buttonExtraProps: {},
|
|
12
|
-
size: {},
|
|
13
|
-
i18nModalKey: {},
|
|
14
|
-
simpleBtn: { type: Boolean },
|
|
15
|
-
btnHeight: {},
|
|
16
|
-
btnWidth: {}
|
|
17
|
-
},
|
|
18
|
-
emits: ["on-select-i18n", "closed"],
|
|
19
|
-
setup(__props, { emit: __emit }) {
|
|
20
|
-
const getEnableLocaleList = ref();
|
|
21
|
-
const i18nInstance = useI18nSelect();
|
|
22
|
-
const props = __props;
|
|
23
|
-
const emit = __emit;
|
|
24
|
-
const i18nMap = reactive({});
|
|
25
|
-
const isHighlight = computed(() => {
|
|
26
|
-
return !isEmpty(props.i18nValue);
|
|
27
|
-
});
|
|
28
|
-
const getTableData = async (keyword) => {
|
|
29
|
-
const result = await _api.apaas.i18NInfo.getPageList({
|
|
30
|
-
pageNo: 1,
|
|
31
|
-
pageSize: 20,
|
|
32
|
-
searchKey: keyword
|
|
33
|
-
});
|
|
34
|
-
if (result && result.data) {
|
|
35
|
-
const row = result.data.find((item) => item.key === props.i18nValue);
|
|
36
|
-
if (row) Object.assign(i18nMap, Object.fromEntries(Object.entries(JSON.parse(row.info)).map(([_, item]) => [item.locale, item.info])));
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
watch(() => props.i18nValue, () => {
|
|
40
|
-
if (!isEmpty(props.i18nValue)) getTableData(props.i18nValue);
|
|
41
|
-
}, { immediate: true });
|
|
42
|
-
const handleOpenI18nSelectModal = () => {
|
|
43
|
-
i18nInstance.open({
|
|
44
|
-
i18nModalKey: props.i18nModalKey,
|
|
45
|
-
saveCallback: (params) => {
|
|
46
|
-
emit("on-select-i18n", { ...params });
|
|
47
|
-
},
|
|
48
|
-
destroyCallback: () => {
|
|
49
|
-
emit("closed");
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
};
|
|
53
|
-
return (_ctx, _cache) => {
|
|
54
|
-
const _component_Icon = resolveComponent("Icon");
|
|
55
|
-
const _component_a_button = resolveComponent("a-button");
|
|
56
|
-
const _component_a_tooltip = resolveComponent("a-tooltip");
|
|
57
|
-
return __props.simpleBtn ? (openBlock(), createBlock(_component_Icon, {
|
|
58
|
-
key: 0,
|
|
59
|
-
class: normalizeClass(["i18n-icon simple-btn", { "is-highlight": isHighlight.value }]),
|
|
60
|
-
icon: "ion:language",
|
|
61
|
-
onClick: handleOpenI18nSelectModal
|
|
62
|
-
}, null, 8, ["class"])) : isHighlight.value ? (openBlock(), createBlock(_component_a_tooltip, {
|
|
63
|
-
key: 1,
|
|
64
|
-
color: "#fff",
|
|
65
|
-
placement: "topRight"
|
|
66
|
-
}, {
|
|
67
|
-
title: withCtx(() => [createElementVNode("div", _hoisted_1, "语言标识:" + toDisplayString(__props.i18nValue), 1), (openBlock(true), createElementBlock(Fragment, null, renderList(getEnableLocaleList.value, (item) => {
|
|
68
|
-
return openBlock(), createElementBlock("div", {
|
|
69
|
-
key: item.id,
|
|
70
|
-
class: "i18n-tooltip-item"
|
|
71
|
-
}, [createElementVNode("strong", null, toDisplayString(item.language) + ": ", 1), createElementVNode("span", _hoisted_2, toDisplayString(i18nMap[item.languageTag]), 1)]);
|
|
72
|
-
}), 128))]),
|
|
73
|
-
default: withCtx(() => [createVNode(_component_a_button, mergeProps(__props.buttonExtraProps, {
|
|
74
|
-
class: { "is-highlight": isHighlight.value },
|
|
75
|
-
style: {
|
|
76
|
-
"--btn-width": __props.btnWidth,
|
|
77
|
-
"--btn-height": __props.btnHeight
|
|
78
|
-
},
|
|
79
|
-
size: __props.size,
|
|
80
|
-
onClick: handleOpenI18nSelectModal
|
|
81
|
-
}), {
|
|
82
|
-
icon: withCtx(() => [createVNode(_component_Icon, {
|
|
83
|
-
class: "i18n-icon",
|
|
84
|
-
icon: "ion:language"
|
|
85
|
-
})]),
|
|
86
|
-
_: 1
|
|
87
|
-
}, 16, [
|
|
88
|
-
"class",
|
|
89
|
-
"style",
|
|
90
|
-
"size"
|
|
91
|
-
])]),
|
|
92
|
-
_: 1
|
|
93
|
-
})) : (openBlock(), createBlock(_component_a_button, mergeProps({ key: 2 }, __props.buttonExtraProps, {
|
|
94
|
-
class: { "is-highlight": isHighlight.value },
|
|
95
|
-
style: {
|
|
96
|
-
"--btn-width": __props.btnWidth,
|
|
97
|
-
"--btn-height": __props.btnHeight
|
|
98
|
-
},
|
|
99
|
-
size: __props.size,
|
|
100
|
-
onClick: handleOpenI18nSelectModal
|
|
101
|
-
}), {
|
|
102
|
-
icon: withCtx(() => [createVNode(_component_Icon, {
|
|
103
|
-
class: "i18n-icon",
|
|
104
|
-
icon: "ion:language"
|
|
105
|
-
})]),
|
|
106
|
-
_: 1
|
|
107
|
-
}, 16, [
|
|
108
|
-
"class",
|
|
109
|
-
"style",
|
|
110
|
-
"size"
|
|
111
|
-
]));
|
|
112
|
-
};
|
|
113
|
-
}
|
|
114
|
-
});
|
|
115
|
-
//#endregion
|
|
116
|
-
export { i18n_select_btn_vue_vue_type_script_setup_true_name_i18n_select_btn_lang_default as default };
|