@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
57 lines (56 loc) • 1.69 kB
JavaScript
import { RADIOGROUP_CONTEXT as f, useCheck as b, withInstall as y } from "../common/index.esm.js";
import { defineComponent as R, inject as g, onMounted as h, createVNode as l, Fragment as k } from "vue";
const C = {
disabled: { type: Boolean, default: !1 },
value: { type: String, default: "" },
/** 值 */
modelValue: { type: String, default: "" },
/** name值 */
name: { type: String, default: "" },
/** 标签名 */
label: { type: String, default: "" },
/** 标识 */
id: { type: String, default: "" }
}, S = /* @__PURE__ */ R({
name: "FRadio",
props: C,
emits: ["update:value"],
setup(t, a) {
const e = g(f, null), {
buttonClass: i,
checked: r,
disabled: c,
name: m,
shouldRenderButton: p,
shouldRenderNative: v,
onClickRadio: d
} = b(t, a, e == null ? void 0 : e.parentProps, e == null ? void 0 : e.parentContext);
return h(() => {
}), () => {
var n, s, o, u;
return l(k, null, [p.value && l("div", {
class: i.value,
style: "border-radius:0;border: 1px solid #E8EBF2;",
onClick: d
}, [(s = (n = a.slots).default) == null ? void 0 : s.call(n)]), v.value && l("div", {
class: "custom-control custom-radio",
onClick: d
}, [l("input", {
type: "radio",
class: "custom-control-input",
name: m.value,
id: t.id,
value: t.value,
checked: r.value,
disabled: c.value
}, null), l("div", {
class: "custom-control-label"
}, [(u = (o = a.slots).default) == null ? void 0 : u.call(o)])])]);
};
}
}), E = y(S);
export {
S as FRadio,
E as default,
C as radioProps
};