UNPKG

welcome-ui

Version:

Customizable design system with react, typescript, tailwindcss and ariakit.

78 lines (77 loc) 2.63 kB
"use client"; import { jsxs as f, jsx as a } from "react/jsx-runtime"; import z, { forwardRef as $ } from "react"; import { CloseButton as E } from "./CloseButton.js"; import { useField as R } from "./Field.js"; import { c as S } from "./index-PAaZGbyz.js"; const j = "_root_1fbzc_8", D = "_transparent_1fbzc_72", F = "_clearable_1fbzc_97", L = { "input-text-wrapper": "_input-text-wrapper_1fbzc_2", root: j, "variant-danger": "_variant-danger_1fbzc_42", "variant-warning": "_variant-warning_1fbzc_48", "variant-success": "_variant-success_1fbzc_54", "placement-left": "_placement-left_1fbzc_60", "size-xs": "_size-xs_1fbzc_60", "size-sm": "_size-sm_1fbzc_63", "size-md": "_size-md_1fbzc_63", "size-lg": "_size-lg_1fbzc_63", "placement-right": "_placement-right_1fbzc_66", transparent: D, clearable: F, "icon-wrapper": "_icon-wrapper_1fbzc_100", "icon-placement-left-xs": "_icon-placement-left-xs_1fbzc_121", "icon-placement-left-sm": "_icon-placement-left-sm_1fbzc_124", "icon-placement-right-xs": "_icon-placement-right-xs_1fbzc_127", "icon-placement-right-sm": "_icon-placement-right-sm_1fbzc_130" }, s = S(L), T = { lg: "sm", md: "sm", sm: "sm", xs: "xs" }, q = $( ({ className: b, icon: t, iconPlacement: e = "left", isClearable: i, name: l, onChange: c, size: _ = "md", transparent: u, type: x = "text", value: o, variant: d, ...g }, v) => { const { getInputProps: h, variant: w } = R(), p = w || d, r = t && e, m = r && e === "right", I = r && e === "left", n = T[_], N = () => { c && c({ preventDefault: () => null, target: { name: l, value: "" } }); }; return /* @__PURE__ */ f("div", { className: s("input-text-wrapper"), children: [ /* @__PURE__ */ a( "input", { ...h(g), className: s( "root", `size-${_}`, p && `variant-${p}`, u && "transparent", r && `placement-${e}`, b ), name: l, onChange: c, ref: v, type: x, value: o } ), I ? /* @__PURE__ */ a("div", { className: s("icon-wrapper", `icon-placement-left-${n}`), children: z.cloneElement(t, { ...t.props, size: n }) }) : null, i || m ? /* @__PURE__ */ f("div", { className: s("icon-wrapper", `icon-placement-right-${n}`), children: [ i && o ? /* @__PURE__ */ a(E, { onClick: N, size: "xs" }) : null, m ? z.cloneElement(t, { ...t.props, size: n }) : null ] }) : null ] }); } ); export { q as InputText };