ant-design-x-vue
Version:
Craft AI-driven interfaces effortlessly
2 lines (1 loc) • 802 B
JavaScript
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("../../_util/hooks/use-state.js"),u=require("vue");function l(e){return typeof e=="string"}const g=(e,i,d,f)=>{const[n,o]=s.default(""),[a,v]=s.default(1),r=u.computed(()=>i.value&&l(e.value));return u.watch(e,()=>{const t=u.unref(n);o(e.value),!r.value&&l(e.value)?v(e.value.length):l(e.value)&&l(t)&&e.value.indexOf(t)!==0&&v(1)}),u.watch([a,i,e],()=>{if(r.value&&l(e.value)&&u.unref(a)<e.value.length){const t=setTimeout(()=>{v(u.unref(a)+d.value)},f.value);u.onWatcherCleanup(()=>{clearTimeout(t)})}},{immediate:!0}),[u.computed(()=>r.value&&l(e.value)?e.value.slice(0,u.unref(a)):e.value),u.computed(()=>r.value&&l(e.value)&&u.unref(a)<e.value.length)]};exports.default=g;
;