2 lines
2.7 KiB
Java
2 lines
2.7 KiB
Java
var I=Object.defineProperty;var G=Object.getOwnPropertySymbols;var L=Object.prototype.hasOwnProperty,N=Object.prototype.propertyIsEnumerable;var k=(e,t,a)=>t in e?I(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,A=(e,t)=>{for(var a in t||(t={}))L.call(t,a)&&k(e,a,t[a]);if(G)for(var a of G(t))N.call(t,a)&&k(e,a,t[a]);return e};var $=(e,t,a)=>new Promise((i,u)=>{var f=n=>{try{l(a.next(n))}catch(o){u(o)}},d=n=>{try{l(a.throw(n))}catch(o){u(o)}},l=n=>n.done?i(n.value):Promise.resolve(n.value).then(f,d);l((a=a.apply(e,t)).next())});import{as as c,aO as j,ad as z,b2 as K,c as P,bZ as U,au as V}from"./index-X7Y8jykP.js";import{useRuleFormItem as Z}from"./useFormItem-b_EqFlJz.js";import"./index-DfHu-LAS.js";import{R as v}from"./Group-DBzJABA_.js";import{e as q,w as H,h as J,r as g,c as M,u as b,K as h,y,z as p,A as F,C as w,F as S,D as Q,E as O,G as T,B as W}from"./vue-vendor-DNhG1Cve.js";import"./emoji-mart-vue-fast-R0uJEDq-.js";import"./RadioButton-DRBix2Fq.js";import"./Checkbox-Dbxs4we4.js";const X=q({name:"ApiRadioGroup",components:{RadioGroup:v.Group,RadioButton:v.Button,Radio:v},props:{api:{type:Function,default:null},params:{type:[Object,String],default:()=>({})},value:{type:[String,Number,Boolean]},isBtn:{type:[Boolean],default:!1},numberToString:c.bool,resultField:c.string.def(""),labelField:c.string.def("label"),valueField:c.string.def("value"),immediate:c.bool.def(!0)},emits:["options-change","change"],setup(e,{emit:t}){const a=g([]),i=g(!1),u=g(!0),f=g([]),d=j(),{t:l}=z(),[n]=Z(e),o=M(()=>{const{labelField:r,valueField:s,numberToString:E}=e;return b(a).reduce((_,m)=>{if(m){const C=m[s];_.push(A({label:m[r],value:E?`${C}`:C},K(m,[r,s])))}return _},[])});H(()=>{e.immediate&&R()}),J(()=>e.params,()=>{!b(u)&&R()},{deep:!0});function R(){return $(this,null,function*(){const r=e.api;if(!(!r||!P(r))){a.value=[];try{i.value=!0;const s=yield r(e.params);if(Array.isArray(s)){a.value=s,B();return}e.resultField&&(a.value=U(s,e.resultField)||[]),B()}catch(s){}finally{i.value=!1}}})}function B(){t("options-change",b(o))}function D(r,...s){f.value=s}return{state:n,getOptions:o,attrs:d,loading:i,t:l,handleChange:D,props:e}}});function Y(e,t,a,i,u,f){const d=h("RadioButton"),l=h("Radio"),n=h("RadioGroup");return p(),y(n,W(e.attrs,{value:e.state,"onUpdate:value":t[0]||(t[0]=o=>e.state=o),"button-style":"solid",onChange:e.handleChange}),{default:F(()=>[(p(!0),w(S,null,Q(e.getOptions,o=>(p(),w(S,{key:`${o.value}`},[e.props.isBtn?(p(),y(d,{key:0,value:o.value,disabled:o.disabled},{default:F(()=>[O(T(o.label),1)]),_:2},1032,["value","disabled"])):(p(),y(l,{key:1,value:o.value,disabled:o.disabled},{default:F(()=>[O(T(o.label),1)]),_:2},1032,["value","disabled"]))],64))),128))]),_:1},16,["value","onChange"])}const ie=V(X,[["render",Y]]);export{ie as default};
|