vft 0.0.412 → 0.0.413

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.
@@ -11,7 +11,7 @@ import "../../hooks/use-model-toggle/index.js";
11
11
  import { useOrderedChildren as ge } from "../../hooks/use-ordered-children/index.js";
12
12
  import "@popperjs/core";
13
13
  import "../../hooks/use-z-index/index.js";
14
- import { carouselContextKey as Se, CAROUSEL_ITEM_NAME as H } from "./constants.js";
14
+ import { CAROUSEL_ITEM_NAME as H, carouselContextKey as Se } from "./constants.js";
15
15
  const L = 300, ze = (t, O, M) => {
16
16
  const {
17
17
  children: o,
@@ -1,7 +1,7 @@
1
1
  import { keysOf as f } from "@vft/utils";
2
2
  import "@vueuse/core";
3
3
  import { debugWarn as v } from "../../../utils/error.js";
4
- import { getCurrentInstance as l, computed as i, unref as p, provide as g, ref as C, inject as x } from "vue";
4
+ import { ref as g, getCurrentInstance as l, computed as i, unref as p, provide as C, inject as x } from "vue";
5
5
  import "lodash-es";
6
6
  import "../../form/index.js";
7
7
  import { namespaceContextKey as I, useNamespace as b, defaultNamespace as y } from "../../../hooks/use-namespace/index.js";
@@ -9,7 +9,7 @@ import "../../../hooks/use-model-toggle/index.js";
9
9
  import "@popperjs/core";
10
10
  import { zIndexContextKey as G, useZIndex as z, defaultInitialZIndex as K } from "../../../hooks/use-z-index/index.js";
11
11
  import { configProviderContextKey as m } from "../constants.js";
12
- const a = C();
12
+ const a = g();
13
13
  function d(o, e = void 0) {
14
14
  const n = l() ? x(m, a) : a;
15
15
  return o ? i(() => n?.value?.[o] ?? e) : n;
@@ -27,7 +27,7 @@ function B(o) {
27
27
  };
28
28
  }
29
29
  const S = (o, e, n = !1) => {
30
- const t = !!l(), r = t ? d() : void 0, u = e?.provide ?? (t ? g : void 0);
30
+ const t = !!l(), r = t ? d() : void 0, u = e?.provide ?? (t ? C : void 0);
31
31
  if (!u) {
32
32
  v(
33
33
  "provideGlobalConfig",
@@ -1,25 +1,25 @@
1
- import { defineComponent as w, getCurrentInstance as L, ref as B, computed as k, createBlock as T, openBlock as a, unref as e, withCtx as u, createVNode as f, Transition as O, withDirectives as N, createElementVNode as h, mergeProps as M, withModifiers as P, createElementBlock as r, createCommentVNode as d, normalizeClass as l, renderSlot as p, toDisplayString as q, vShow as H } from "vue";
2
- import { isBoolean as U } from "@vft/utils";
1
+ import { defineComponent as g, getCurrentInstance as L, ref as b, computed as k, createBlock as h, openBlock as l, unref as e, withCtx as d, createVNode as m, Transition as T, withDirectives as O, createElementVNode as w, mergeProps as N, withModifiers as M, createElementBlock as n, createCommentVNode as r, normalizeClass as a, renderSlot as i, toDisplayString as P, vShow as q } from "vue";
2
+ import { isBoolean as H } from "@vft/utils";
3
3
  import "../dialog/index.js";
4
- import j from "../focus-trap/focus-trap.vue.js";
4
+ import U from "../focus-trap/focus-trap.vue.js";
5
5
  import "../focus-trap/utils.js";
6
- import { VftIcon as G } from "../icon/index.js";
7
- import { VftOverlay as J } from "../overlay/index.js";
8
- import { UPDATE_MODEL_EVENT as K } from "../../constants/event.js";
6
+ import { VftIcon as j } from "../icon/index.js";
7
+ import { VftOverlay as G } from "../overlay/index.js";
8
+ import { UPDATE_MODEL_EVENT as J } from "../../constants/event.js";
9
9
  import "@vueuse/core";
10
- import { addUnit as Q } from "../../utils/helper.js";
10
+ import { addUnit as K } from "../../utils/helper.js";
11
11
  import "lodash-es";
12
12
  import "../form/index.js";
13
- import { useNamespace as W } from "../../hooks/use-namespace/index.js";
13
+ import { useNamespace as Q } from "../../hooks/use-namespace/index.js";
14
14
  import "../../hooks/use-model-toggle/index.js";
15
15
  import "@popperjs/core";
16
16
  import "../../hooks/use-z-index/index.js";
17
- import { VftTeleport as X } from "../teleport/index.js";
18
- import { useDialog as Y } from "../dialog/hooks/use-dialog.js";
19
- const Z = ["aria-label", "aria-labelledby", "aria-describedby"], _ = ["id"], x = ["id"], ee = w({
17
+ import { VftTeleport as W } from "../teleport/index.js";
18
+ import { useDialog as X } from "../dialog/hooks/use-dialog.js";
19
+ const Y = ["aria-label", "aria-labelledby", "aria-describedby"], Z = ["id"], _ = ["id"], x = g({
20
20
  name: "vft-drawer"
21
- }), Re = /* @__PURE__ */ w({
22
- ...ee,
21
+ }), Ae = /* @__PURE__ */ g({
22
+ ...x,
23
23
  props: {
24
24
  direction: { default: "rtl" },
25
25
  size: { default: "30%" },
@@ -50,7 +50,7 @@ const Z = ["aria-label", "aria-labelledby", "aria-describedby"], _ = ["id"], x =
50
50
  title: { default: "" }
51
51
  },
52
52
  emits: {
53
- [K]: (s) => U(s),
53
+ [J]: (s) => H(s),
54
54
  open: () => !0,
55
55
  opened: () => !0,
56
56
  close: () => !0,
@@ -58,128 +58,122 @@ const Z = ["aria-label", "aria-labelledby", "aria-describedby"], _ = ["id"], x =
58
58
  openAutoFocus: () => !0,
59
59
  closeAutoFocus: () => !0
60
60
  },
61
- setup(s, { expose: g }) {
62
- const t = W("drawer"), E = L(), c = B(), {
63
- afterEnter: z,
64
- afterLeave: A,
65
- beforeLeave: R,
66
- handleClose: n,
67
- onModalClick: V,
68
- close: oe,
69
- doClose: te,
70
- onOpenAutoFocus: le,
71
- onCloseAutoFocus: ae,
72
- onCloseRequested: D,
73
- onFocusoutPrevented: se,
74
- titleId: m,
75
- bodyId: b,
76
- closed: re,
77
- style: de,
78
- overlayDialogStyle: ne,
79
- rendered: F,
80
- visible: y,
81
- zIndex: I
82
- } = Y(E.props, c), v = B(), S = k(() => s.direction === "rtl" || s.direction === "ltr"), C = k(() => Q(s.size));
83
- return g({
84
- close: n
85
- }), (o, i) => (a(), T(e(X), {
61
+ setup(s, { expose: E }) {
62
+ const t = Q("drawer"), z = L(), u = b(), {
63
+ afterEnter: A,
64
+ afterLeave: R,
65
+ beforeLeave: V,
66
+ handleClose: f,
67
+ onModalClick: D,
68
+ close: ee,
69
+ doClose: oe,
70
+ onOpenAutoFocus: te,
71
+ onCloseAutoFocus: le,
72
+ onCloseRequested: F,
73
+ onFocusoutPrevented: ae,
74
+ titleId: c,
75
+ bodyId: y,
76
+ closed: se,
77
+ style: re,
78
+ overlayDialogStyle: de,
79
+ rendered: I,
80
+ visible: p,
81
+ zIndex: S
82
+ } = X(z.props, u), C = b(), $ = k(() => s.direction === "rtl" || s.direction === "ltr"), v = k(() => K(s.size));
83
+ return E({
84
+ close: f
85
+ }), (o, B) => (l(), h(e(W), {
86
86
  to: "body",
87
87
  disabled: !o.appendToBody
88
88
  }, {
89
- default: u(() => [
90
- f(O, {
89
+ default: d(() => [
90
+ m(T, {
91
91
  name: e(t).b("fade"),
92
- onAfterEnter: e(z),
93
- onAfterLeave: e(A),
94
- onBeforeLeave: e(R)
92
+ onAfterEnter: e(A),
93
+ onAfterLeave: e(R),
94
+ onBeforeLeave: e(V)
95
95
  }, {
96
- default: u(() => [
97
- N(f(e(J), {
96
+ default: d(() => [
97
+ O(m(e(G), {
98
98
  mask: o.modal,
99
99
  "overlay-class": o.modalClass,
100
- "z-index": e(I),
101
- onClick: e(V)
100
+ "z-index": e(S),
101
+ onClick: e(D)
102
102
  }, {
103
- default: u(() => [
104
- f(e(j), {
103
+ default: d(() => [
104
+ m(e(U), {
105
105
  loop: "",
106
- trapped: e(y),
107
- "focus-trap-el": c.value,
108
- "focus-start-el": v.value,
109
- onReleaseRequested: e(D)
106
+ trapped: e(p),
107
+ "focus-trap-el": u.value,
108
+ "focus-start-el": C.value,
109
+ onReleaseRequested: e(F)
110
110
  }, {
111
- default: u(() => [
112
- h("div", M({
111
+ default: d(() => [
112
+ w("div", N({
113
113
  ref_key: "drawerRef",
114
- ref: c,
114
+ ref: u,
115
115
  "aria-modal": "true",
116
116
  "aria-label": o.title || void 0,
117
- "aria-labelledby": o.title ? void 0 : e(m),
118
- "aria-describedby": e(b)
117
+ "aria-labelledby": o.title ? void 0 : e(c),
118
+ "aria-describedby": e(y)
119
119
  }, o.$attrs, {
120
- class: [e(t).b(), o.direction, e(y) && "open", o.customClass],
121
- style: S.value ? "width: " + C.value : "height: " + C.value,
120
+ class: [e(t).b(), o.direction, e(p) && "open", o.customClass],
121
+ style: $.value ? "width: " + v.value : "height: " + v.value,
122
122
  role: "dialog",
123
- onClick: i[1] || (i[1] = P(() => {
123
+ onClick: B[0] || (B[0] = M(() => {
124
124
  }, ["stop"]))
125
125
  }), [
126
- h("span", {
126
+ w("span", {
127
127
  ref_key: "focusStartRef",
128
- ref: v,
129
- class: l(e(t).e("sr-focus")),
128
+ ref: C,
129
+ class: a(e(t).e("sr-focus")),
130
130
  tabindex: "-1"
131
131
  }, null, 2),
132
- o.withHeader ? (a(), r("header", {
132
+ o.withHeader ? (l(), n("header", {
133
133
  key: 0,
134
- class: l(e(t).e("header"))
134
+ class: a(e(t).e("header"))
135
135
  }, [
136
- o.$slots.title ? p(o.$slots, "title", { key: 1 }) : p(o.$slots, "header", {
136
+ o.$slots.title ? i(o.$slots, "title", { key: 1 }) : i(o.$slots, "header", {
137
137
  key: 0,
138
- close: e(n),
139
- titleId: e(m),
138
+ close: e(f),
139
+ titleId: e(c),
140
140
  titleClass: e(t).e("title")
141
141
  }, () => [
142
- o.$slots.title ? d("", !0) : (a(), r("span", {
142
+ o.$slots.title ? r("", !0) : (l(), n("span", {
143
143
  key: 0,
144
- id: e(m),
144
+ id: e(c),
145
145
  role: "heading",
146
- class: l(e(t).e("title"))
147
- }, q(o.title), 11, _))
146
+ class: a(e(t).e("title"))
147
+ }, P(o.title), 11, Z))
148
148
  ]),
149
- o.showClose ? (a(), r("button", {
149
+ o.showClose ? (l(), h(e(j), {
150
150
  key: 2,
151
- class: l(e(t).e("close-btn")),
152
- type: "button",
153
- onClick: i[0] || (i[0] = //@ts-ignore
154
- (...$) => e(n) && e(n)(...$))
155
- }, [
156
- f(e(G), {
157
- icon: "icon-close",
158
- class: l(e(t).e("close"))
159
- }, null, 8, ["class"])
160
- ], 2)) : d("", !0)
161
- ], 2)) : d("", !0),
162
- e(F) ? (a(), r("div", {
151
+ onClick: e(f),
152
+ icon: "icon-close",
153
+ class: a(e(t).e("close"))
154
+ }, null, 8, ["onClick", "class"])) : r("", !0)
155
+ ], 2)) : r("", !0),
156
+ e(I) ? (l(), n("div", {
163
157
  key: 1,
164
- id: e(b),
165
- class: l(e(t).e("body"))
158
+ id: e(y),
159
+ class: a(e(t).e("body"))
166
160
  }, [
167
- p(o.$slots, "default")
168
- ], 10, x)) : d("", !0),
169
- o.$slots.footer ? (a(), r("div", {
161
+ i(o.$slots, "default")
162
+ ], 10, _)) : r("", !0),
163
+ o.$slots.footer ? (l(), n("div", {
170
164
  key: 2,
171
- class: l(e(t).e("footer"))
165
+ class: a(e(t).e("footer"))
172
166
  }, [
173
- p(o.$slots, "footer")
174
- ], 2)) : d("", !0)
175
- ], 16, Z)
167
+ i(o.$slots, "footer")
168
+ ], 2)) : r("", !0)
169
+ ], 16, Y)
176
170
  ]),
177
171
  _: 3
178
172
  }, 8, ["trapped", "focus-trap-el", "focus-start-el", "onReleaseRequested"])
179
173
  ]),
180
174
  _: 3
181
175
  }, 8, ["mask", "overlay-class", "z-index", "onClick"]), [
182
- [H, e(y)]
176
+ [q, e(p)]
183
177
  ])
184
178
  ]),
185
179
  _: 3
@@ -190,5 +184,5 @@ const Z = ["aria-label", "aria-labelledby", "aria-describedby"], _ = ["id"], x =
190
184
  }
191
185
  });
192
186
  export {
193
- Re as default
187
+ Ae as default
194
188
  };
@@ -13,8 +13,8 @@ import "../../hooks/use-z-index/index.js";
13
13
  import { UPDATE_MODEL_EVENT as Q } from "@vft/constants";
14
14
  import { useAttrs as Ze, useCursor as _e } from "@vft/use";
15
15
  import { calcTextareaHeight as ye } from "./utils.js";
16
- import { useFormItem as et, useFormItemInputId as tt } from "../form/hooks/use-form-item.js";
17
- import { useFormSize as at, useFormDisabled as ot } from "../form/hooks/use-form-common-props.js";
16
+ import { useFormSize as et, useFormDisabled as tt } from "../form/hooks/use-form-common-props.js";
17
+ import { useFormItem as at, useFormItemInputId as ot } from "../form/hooks/use-form-item.js";
18
18
  const nt = ["role"], lt = ["id", "type", "disabled", "formatter", "parser", "readonly", "autocomplete", "tabindex", "aria-label", "placeholder", "form"], st = ["id", "tabindex", "disabled", "readonly", "autocomplete", "aria-label", "placeholder", "form"], It = /* @__PURE__ */ Oe({
19
19
  __name: "input",
20
20
  props: {
@@ -85,9 +85,9 @@ const nt = ["role"], lt = ["id", "type", "disabled", "formatter", "parser", "rea
85
85
  o.is("focus", v.value)
86
86
  ]), d = Ze({
87
87
  excludeKeys: l(() => Object.keys(X.value))
88
- }), { form: Ce, formItem: F } = et(), { inputId: Y } = tt(xe.props, {
88
+ }), { form: Ce, formItem: F } = at(), { inputId: Y } = ot(xe.props, {
89
89
  formItemContext: F
90
- }), ke = at(), h = ot(), o = pe("input"), Z = pe("textarea"), M = H(), b = H(), v = S(!1), N = S(!1), C = S(!1), K = S(!1), _ = S(), O = H(e.inputStyle), k = l(() => M.value || b.value), T = l(() => G(e.prefixIcon, "icon", { size: 16 })), ee = l(() => G(e.suffixIcon, "icon", { size: 16 })), Ie = l(() => G(e.clearIcon, "icon", {
90
+ }), ke = et(), h = tt(), o = pe("input"), Z = pe("textarea"), M = H(), b = H(), v = S(!1), N = S(!1), C = S(!1), K = S(!1), _ = S(), O = H(e.inputStyle), k = l(() => M.value || b.value), T = l(() => G(e.prefixIcon, "icon", { size: 16 })), ee = l(() => G(e.suffixIcon, "icon", { size: 16 })), Ie = l(() => G(e.clearIcon, "icon", {
91
91
  icon: "icon-circle-close",
92
92
  size: 16
93
93
  })), te = l(() => Ce?.statusIcon ?? !1), I = l(() => F?.validateState || ""), ae = l(
@@ -1,6 +1,6 @@
1
1
  import { shallowRef as B, ref as L, computed as c, watch as G } from "vue";
2
2
  import { EVENT_CODE as g } from "../../../constants/aria.js";
3
- import { CHANGE_EVENT as i, UPDATE_MODEL_EVENT as d, INPUT_EVENT as H } from "../../../constants/event.js";
3
+ import { CHANGE_EVENT as i, INPUT_EVENT as H, UPDATE_MODEL_EVENT as d } from "../../../constants/event.js";
4
4
  import "@vueuse/core";
5
5
  import { isUndefined as K } from "@vft/utils";
6
6
  import { debugWarn as C } from "../../../utils/error.js";
@@ -1,4 +1,4 @@
1
- import { defineComponent as Q, computed as v, ref as re, unref as c, useSlots as oe, createVNode as s, mergeProps as L, withDirectives as ie, vShow as ne, createTextVNode as G, isVNode as le, resolveComponent as V } from "vue";
1
+ import { defineComponent as Q, computed as v, ref as re, unref as c, useSlots as oe, createVNode as s, mergeProps as L, withDirectives as ie, vShow as ne, isVNode as le, createTextVNode as G, resolveComponent as V } from "vue";
2
2
  import "../alert/index.js";
3
3
  import "../avatar/index.js";
4
4
  import "../avatar-stack/index.js";
@@ -2,14 +2,14 @@ import "@vueuse/core";
2
2
  import { isNumber as m, isClient as p } from "@vft/utils";
3
3
  import { debugWarn as l } from "../../utils/error.js";
4
4
  import "../../components/config-provider/hooks/use-global-config.js";
5
- import { getCurrentInstance as i, inject as e, computed as c, unref as v, ref as Z } from "vue";
5
+ import { ref as v, getCurrentInstance as i, inject as e, computed as c, unref as Z } from "vue";
6
6
  import "lodash-es";
7
7
  import "../../components/form/index.js";
8
8
  const s = {
9
9
  current: 0
10
- }, u = Z(0), f = 2e3, d = Symbol("vftZIndexContextKey"), y = Symbol("zIndexContextKey"), K = (I) => {
10
+ }, u = v(0), f = 2e3, d = Symbol("vftZIndexContextKey"), y = Symbol("zIndexContextKey"), K = (I) => {
11
11
  const n = i() ? e(d, s) : s, x = I || (i() ? e(y, void 0) : void 0), t = c(() => {
12
- const r = v(x);
12
+ const r = Z(x);
13
13
  return m(r) ? r : f;
14
14
  }), o = c(() => t.value + u.value), a = () => (n.current++, u.value = n.current, o.value);
15
15
  return !p && !e(d) && l(
@@ -1,6 +1,6 @@
1
1
  declare const _default: {
2
2
  "name": "vft",
3
- "version": "0.0.412",
3
+ "version": "0.0.413",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
@@ -1,4 +1,4 @@
1
- const o = "0.0.412";
1
+ const o = "0.0.413";
2
2
  export {
3
3
  o as version
4
4
  };
@@ -1,4 +1,4 @@
1
- import { hasOwn as m, camelize as N, isArray as E } from "@vft/utils";
1
+ import { isArray as E, hasOwn as m, camelize as N } from "@vft/utils";
2
2
  import { isVNode as o, Fragment as S, Comment as A, Text as s, createCommentVNode as L, createBlock as _, openBlock as C } from "vue";
3
3
  import { debugWarn as O } from "../error.js";
4
4
  const R = "utils/vue/vnode";
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),w=require("@vft/utils");require("../dialog/index.cjs");const V=require("../focus-trap/focus-trap.vue.cjs");require("../focus-trap/utils.cjs");const z=require("../icon/index.cjs"),E=require("../overlay/index.cjs"),g=require("../../constants/event.cjs");require("@vueuse/core");const N=require("../../utils/helper.cjs");require("lodash-es");require("../form/index.cjs");const S=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const $=require("../teleport/index.cjs"),A=require("../dialog/hooks/use-dialog.cjs"),D=["aria-label","aria-labelledby","aria-describedby"],R=["id"],I=["id"],T=e.defineComponent({name:"vft-drawer"}),F=e.defineComponent({...T,props:{direction:{default:"rtl"},size:{default:"30%"},withHeader:{type:Boolean,default:!0},modalFade:{type:Boolean,default:!0},appendToBody:{type:Boolean,default:!1},beforeClose:{},destroyOnClose:{type:Boolean,default:!1},closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},openDelay:{default:0},closeDelay:{default:0},top:{},modelValue:{type:Boolean,default:!1},modalClass:{},width:{},zIndex:{},trapFocus:{type:Boolean,default:!1},center:{type:Boolean,default:!1},alignCenter:{type:Boolean,default:!1},closeIcon:{},customClass:{default:""},draggable:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1},showClose:{type:Boolean,default:!0},title:{default:""}},emits:{[g.UPDATE_MODEL_EVENT]:l=>w.isBoolean(l),open:()=>!0,opened:()=>!0,close:()=>!0,closed:()=>!0,openAutoFocus:()=>!0,closeAutoFocus:()=>!0},setup(l,{expose:c}){const t=S.useNamespace("drawer"),p=e.getCurrentInstance(),n=e.ref(),{afterEnter:m,afterLeave:y,beforeLeave:C,handleClose:r,onModalClick:B,close:L,doClose:O,onOpenAutoFocus:M,onCloseAutoFocus:P,onCloseRequested:k,onFocusoutPrevented:H,titleId:s,bodyId:d,closed:U,style:j,overlayDialogStyle:G,rendered:v,visible:u,zIndex:b}=A.useDialog(p.props,n),i=e.ref(),h=e.computed(()=>l.direction==="rtl"||l.direction==="ltr"),f=e.computed(()=>N.addUnit(l.size));return c({close:r}),(o,a)=>(e.openBlock(),e.createBlock(e.unref($.VftTeleport),{to:"body",disabled:!o.appendToBody},{default:e.withCtx(()=>[e.createVNode(e.Transition,{name:e.unref(t).b("fade"),onAfterEnter:e.unref(m),onAfterLeave:e.unref(y),onBeforeLeave:e.unref(C)},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(E.VftOverlay),{mask:o.modal,"overlay-class":o.modalClass,"z-index":e.unref(b),onClick:e.unref(B)},{default:e.withCtx(()=>[e.createVNode(e.unref(V.default),{loop:"",trapped:e.unref(u),"focus-trap-el":n.value,"focus-start-el":i.value,onReleaseRequested:e.unref(k)},{default:e.withCtx(()=>[e.createElementVNode("div",e.mergeProps({ref_key:"drawerRef",ref:n,"aria-modal":"true","aria-label":o.title||void 0,"aria-labelledby":o.title?void 0:e.unref(s),"aria-describedby":e.unref(d)},o.$attrs,{class:[e.unref(t).b(),o.direction,e.unref(u)&&"open",o.customClass],style:h.value?"width: "+f.value:"height: "+f.value,role:"dialog",onClick:a[1]||(a[1]=e.withModifiers(()=>{},["stop"]))}),[e.createElementVNode("span",{ref_key:"focusStartRef",ref:i,class:e.normalizeClass(e.unref(t).e("sr-focus")),tabindex:"-1"},null,2),o.withHeader?(e.openBlock(),e.createElementBlock("header",{key:0,class:e.normalizeClass(e.unref(t).e("header"))},[o.$slots.title?e.renderSlot(o.$slots,"title",{key:1}):e.renderSlot(o.$slots,"header",{key:0,close:e.unref(r),titleId:e.unref(s),titleClass:e.unref(t).e("title")},()=>[o.$slots.title?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",{key:0,id:e.unref(s),role:"heading",class:e.normalizeClass(e.unref(t).e("title"))},e.toDisplayString(o.title),11,R))]),o.showClose?(e.openBlock(),e.createElementBlock("button",{key:2,class:e.normalizeClass(e.unref(t).e("close-btn")),type:"button",onClick:a[0]||(a[0]=(...q)=>e.unref(r)&&e.unref(r)(...q))},[e.createVNode(e.unref(z.VftIcon),{icon:"icon-close",class:e.normalizeClass(e.unref(t).e("close"))},null,8,["class"])],2)):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),e.unref(v)?(e.openBlock(),e.createElementBlock("div",{key:1,id:e.unref(d),class:e.normalizeClass(e.unref(t).e("body"))},[e.renderSlot(o.$slots,"default")],10,I)):e.createCommentVNode("",!0),o.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(t).e("footer"))},[e.renderSlot(o.$slots,"footer")],2)):e.createCommentVNode("",!0)],16,D)]),_:3},8,["trapped","focus-trap-el","focus-start-el","onReleaseRequested"])]),_:3},8,["mask","overlay-class","z-index","onClick"]),[[e.vShow,e.unref(u)]])]),_:3},8,["name","onAfterEnter","onAfterLeave","onBeforeLeave"])]),_:3},8,["disabled"]))}});exports.default=F;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),q=require("@vft/utils");require("../dialog/index.cjs");const w=require("../focus-trap/focus-trap.vue.cjs");require("../focus-trap/utils.cjs");const V=require("../icon/index.cjs"),g=require("../overlay/index.cjs"),z=require("../../constants/event.cjs");require("@vueuse/core");const E=require("../../utils/helper.cjs");require("lodash-es");require("../form/index.cjs");const S=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const N=require("../teleport/index.cjs"),$=require("../dialog/hooks/use-dialog.cjs"),A=["aria-label","aria-labelledby","aria-describedby"],D=["id"],R=["id"],I=e.defineComponent({name:"vft-drawer"}),T=e.defineComponent({...I,props:{direction:{default:"rtl"},size:{default:"30%"},withHeader:{type:Boolean,default:!0},modalFade:{type:Boolean,default:!0},appendToBody:{type:Boolean,default:!1},beforeClose:{},destroyOnClose:{type:Boolean,default:!1},closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},openDelay:{default:0},closeDelay:{default:0},top:{},modelValue:{type:Boolean,default:!1},modalClass:{},width:{},zIndex:{},trapFocus:{type:Boolean,default:!1},center:{type:Boolean,default:!1},alignCenter:{type:Boolean,default:!1},closeIcon:{},customClass:{default:""},draggable:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1},showClose:{type:Boolean,default:!0},title:{default:""}},emits:{[z.UPDATE_MODEL_EVENT]:l=>q.isBoolean(l),open:()=>!0,opened:()=>!0,close:()=>!0,closed:()=>!0,openAutoFocus:()=>!0,closeAutoFocus:()=>!0},setup(l,{expose:c}){const t=S.useNamespace("drawer"),p=e.getCurrentInstance(),r=e.ref(),{afterEnter:m,afterLeave:y,beforeLeave:C,handleClose:a,onModalClick:B,close:F,doClose:L,onOpenAutoFocus:O,onCloseAutoFocus:M,onCloseRequested:k,onFocusoutPrevented:P,titleId:n,bodyId:u,closed:H,style:U,overlayDialogStyle:j,rendered:v,visible:s,zIndex:b}=$.useDialog(p.props,r),d=e.ref(),h=e.computed(()=>l.direction==="rtl"||l.direction==="ltr"),i=e.computed(()=>E.addUnit(l.size));return c({close:a}),(o,f)=>(e.openBlock(),e.createBlock(e.unref(N.VftTeleport),{to:"body",disabled:!o.appendToBody},{default:e.withCtx(()=>[e.createVNode(e.Transition,{name:e.unref(t).b("fade"),onAfterEnter:e.unref(m),onAfterLeave:e.unref(y),onBeforeLeave:e.unref(C)},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(g.VftOverlay),{mask:o.modal,"overlay-class":o.modalClass,"z-index":e.unref(b),onClick:e.unref(B)},{default:e.withCtx(()=>[e.createVNode(e.unref(w.default),{loop:"",trapped:e.unref(s),"focus-trap-el":r.value,"focus-start-el":d.value,onReleaseRequested:e.unref(k)},{default:e.withCtx(()=>[e.createElementVNode("div",e.mergeProps({ref_key:"drawerRef",ref:r,"aria-modal":"true","aria-label":o.title||void 0,"aria-labelledby":o.title?void 0:e.unref(n),"aria-describedby":e.unref(u)},o.$attrs,{class:[e.unref(t).b(),o.direction,e.unref(s)&&"open",o.customClass],style:h.value?"width: "+i.value:"height: "+i.value,role:"dialog",onClick:f[0]||(f[0]=e.withModifiers(()=>{},["stop"]))}),[e.createElementVNode("span",{ref_key:"focusStartRef",ref:d,class:e.normalizeClass(e.unref(t).e("sr-focus")),tabindex:"-1"},null,2),o.withHeader?(e.openBlock(),e.createElementBlock("header",{key:0,class:e.normalizeClass(e.unref(t).e("header"))},[o.$slots.title?e.renderSlot(o.$slots,"title",{key:1}):e.renderSlot(o.$slots,"header",{key:0,close:e.unref(a),titleId:e.unref(n),titleClass:e.unref(t).e("title")},()=>[o.$slots.title?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",{key:0,id:e.unref(n),role:"heading",class:e.normalizeClass(e.unref(t).e("title"))},e.toDisplayString(o.title),11,D))]),o.showClose?(e.openBlock(),e.createBlock(e.unref(V.VftIcon),{key:2,onClick:e.unref(a),icon:"icon-close",class:e.normalizeClass(e.unref(t).e("close"))},null,8,["onClick","class"])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),e.unref(v)?(e.openBlock(),e.createElementBlock("div",{key:1,id:e.unref(u),class:e.normalizeClass(e.unref(t).e("body"))},[e.renderSlot(o.$slots,"default")],10,R)):e.createCommentVNode("",!0),o.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(t).e("footer"))},[e.renderSlot(o.$slots,"footer")],2)):e.createCommentVNode("",!0)],16,A)]),_:3},8,["trapped","focus-trap-el","focus-start-el","onReleaseRequested"])]),_:3},8,["mask","overlay-class","z-index","onClick"]),[[e.vShow,e.unref(s)]])]),_:3},8,["name","onAfterEnter","onAfterLeave","onBeforeLeave"])]),_:3},8,["disabled"]))}});exports.default=T;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../form/index.cjs");const k=require("../icon/index.cjs"),Y=require("@vueuse/core"),s=require("@vft/utils"),T=require("../../utils/error.cjs");require("../config-provider/hooks/use-global-config.cjs");const Be=require("lodash-es"),Z=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const q=require("@vft/constants"),_=require("@vft/use"),ee=require("./utils.cjs"),te=require("../form/hooks/use-form-item.cjs"),oe=require("../form/hooks/use-form-common-props.cjs"),Ve=["role"],Ie=["id","type","disabled","formatter","parser","readonly","autocomplete","tabindex","aria-label","placeholder","form"],Se=["id","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form"],ze=e.defineComponent({__name:"input",props:{id:{},size:{default:""},disabled:{type:Boolean},modelValue:{},type:{default:"text"},resize:{},autosize:{type:[Object,Boolean],default:!1},autocomplete:{default:"off"},formatter:{},parser:{},placeholder:{},form:{},readonly:{type:Boolean},clearable:{type:Boolean},showPassword:{type:Boolean},showWordLimit:{type:Boolean},suffixIcon:{},prefixIcon:{},clearIcon:{},containerRole:{},label:{},tabindex:{default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:[Boolean,null,String,Object,Array]}},emits:{[q.UPDATE_MODEL_EVENT]:t=>s.isString(t),input:t=>s.isString(t),change:t=>s.isString(t),suffixClick:t=>s.isString(t),prefixClick:t=>s.isString(t),focus:t=>t instanceof FocusEvent,blur:t=>t instanceof FocusEvent,clear:()=>!0,enter:()=>!0,mouseleave:t=>t instanceof MouseEvent,mouseenter:t=>t instanceof MouseEvent,keydown:t=>t instanceof Event,compositionstart:t=>t instanceof CompositionEvent,compositionupdate:t=>t instanceof CompositionEvent,compositionend:t=>t instanceof CompositionEvent},setup(t,{expose:ne,emit:ae}){const l=ae,v=e.useAttrs(),i=e.useSlots(),M=e.computed(()=>{const o={};return t.containerRole==="combobox"&&(o["aria-haspopup"]=v["aria-haspopup"],o["aria-owns"]=v["aria-owns"],o["aria-expanded"]=v["aria-expanded"]),o}),le=e.computed(()=>[t.type==="textarea"?A.b():n.b(),n.m(ie.value),n.is("disabled",m.value),n.is("exceed",fe.value),n.is("focus",c.value),{[n.b("group")]:i.prepend||i.append,[n.bm("group","append")]:i.append,[n.bm("group","prepend")]:i.prepend,[n.m("prefix")]:i.prefix||t.prefixIcon,[n.m("suffix")]:i.suffix||t.suffixIcon||t.clearable||t.showPassword,[n.bm("suffix","password-clear")]:E.value&&z.value},v.class]),se=e.getCurrentInstance(),re=e.computed(()=>[n.e("wrapper"),n.is("focus",c.value)]),r=_.useAttrs({excludeKeys:e.computed(()=>Object.keys(M.value))}),{form:ue,formItem:C}=te.useFormItem(),{inputId:F}=te.useFormItemInputId(se.props,{formItemContext:C}),ie=oe.useFormSize(),m=oe.useFormDisabled(),n=Z.useNamespace("input"),A=Z.useNamespace("textarea"),w=e.shallowRef(),f=e.shallowRef(),c=e.ref(!1),V=e.ref(!1),y=e.ref(!1),x=e.ref(!1),D=e.ref(),I=e.shallowRef(t.inputStyle),h=e.computed(()=>w.value||f.value),S=e.computed(()=>s.singleAttrToObj(t.prefixIcon,"icon",{size:16})),O=e.computed(()=>s.singleAttrToObj(t.suffixIcon,"icon",{size:16})),ce=e.computed(()=>s.singleAttrToObj(t.clearIcon,"icon",{icon:"icon-circle-close",size:16})),R=e.computed(()=>ue?.statusIcon??!1),g=e.computed(()=>C?.validateState||""),K=e.computed(()=>g.value&&{validating:"icon-loading",success:"icon-circle-check",error:"icon-circle-close"}[g.value]),de=e.computed(()=>x.value?{icon:"icon-view",size:16}:{icon:"icon-hide",size:16}),me=e.computed(()=>[v.style,t.inputStyle]),$=e.computed(()=>[t.inputStyle,I.value,{resize:t.resize}]),u=e.computed(()=>Be.isNil(t.modelValue)?"":String(t.modelValue)),E=e.computed(()=>t.clearable&&!m.value&&!t.readonly&&!!u.value&&(c.value||V.value)),z=e.computed(()=>t.showPassword&&!m.value&&!t.readonly&&!!u.value&&(!!u.value||c.value)),p=e.computed(()=>t.showWordLimit&&!!r.value.maxlength&&(t.type==="text"||t.type==="textarea")&&!m.value&&!t.readonly&&!t.showPassword),N=e.computed(()=>Array.from(u.value).length),fe=e.computed(()=>!!p.value&&N.value>Number(r.value.maxlength)),pe=e.computed(()=>!!i.suffix||!!t.suffixIcon||E.value||t.showPassword||p.value||!!g.value&&R.value),[ve,ye]=_.useCursor(w);Y.useResizeObserver(f,o=>{if(!p.value||t.resize!=="both")return;const a=o[0],{width:d}=a.contentRect;D.value={right:`calc(100% - ${d+15+6}px)`}});const B=()=>{if(!(!Y.isClient||t.type!=="textarea"))if(t.autosize){const o=s.isObject(t.autosize)?t.autosize.minRows:void 0,a=s.isObject(t.autosize)?t.autosize.maxRows:void 0;I.value={...ee.calcTextareaHeight(f.value,o,a)}}else I.value={minHeight:ee.calcTextareaHeight(f.value).minHeight}},b=()=>{const o=h.value;!o||o.value===u.value||(o.value=u.value)},P=async o=>{ve();let{value:a}=o.target;if(r.value.maxlength&&a.length>=r.value.maxlength&&(a=a.slice(0,Number(r.value.maxlength))),t.formatter&&(a=t.parser?t.parser(a):a,a=t.formatter(a)),!y.value){if(a===u.value){b();return}l(q.UPDATE_MODEL_EVENT,a),l("input",a),await e.nextTick(),b(),ye()}},j=o=>{l("change",o.target.value)},he=()=>{l("suffixClick",t.modelValue)},ge=()=>{l("prefixClick",t.modelValue)},L=o=>{l("compositionstart",o),y.value=!0},be=o=>/([(\uAC00-\uD7AF)|\u3130-\u318F])+/.test(o),W=o=>{l("compositionupdate",o);const a=o.target?.value,d=a[a.length-1]||"";y.value=!be(d)},H=o=>{l("compositionend",o),y.value&&(y.value=!1,P(o))},ke=()=>{x.value=!x.value,U()},U=async()=>{await e.nextTick(),h.value?.focus()},Ce=()=>h.value?.blur(),G=o=>{c.value=!0,l("focus",o)},J=o=>{c.value=!1,l("blur",o),t.validateEvent&&C?.validate?.("blur").catch(a=>T.debugWarn(a))},we=o=>{V.value=!1,l("mouseleave",o)},xe=o=>{V.value=!0,l("mouseenter",o)},Q=o=>{let a=o.key;if(o.target.type==="number"&&["e","+","-0","E"].includes(a))return o.returnValue=!1,!1;l("keydown",o)},Ee=()=>{h.value?.select()},X=()=>{l(q.UPDATE_MODEL_EVENT,""),l("change",""),l("clear"),l("input","")};return e.watch(()=>t.modelValue,()=>{e.nextTick(()=>B()),t.validateEvent&&C?.validate?.("change").catch(o=>T.debugWarn(o))}),e.watch(u,()=>b()),e.watch(()=>t.type,async()=>{await e.nextTick(),b(),B()}),e.onMounted(()=>{!t.formatter&&t.parser&&T.debugWarn("VftInput","If you set the parser, you also need to set the formatter."),b(),e.nextTick(B)}),ne({input:w,textarea:f,ref:h,textareaStyle:$,autosize:t.autosize,focus:U,blur:Ce,select:Ee,clear:X,resizeTextarea:B}),(o,a)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps(M.value,{class:le.value,style:me.value,role:o.containerRole,onMouseenter:xe,onMouseleave:we,onMousewheel:a[1]||(a[1]=d=>o.type==="number"&&c.value?d.preventDefault():null)}),[o.type!=="textarea"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.$slots.prepend?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(n).be("group","prepend"))},[e.renderSlot(o.$slots,"prepend")],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(re.value)},[o.$slots.prefix||S.value?.icon?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(e.unref(n).e("prefix"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("prefix-inner")),onClick:ge},[e.renderSlot(o.$slots,"prefix"),S.value?.icon?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:0,pointer:""},S.value,{class:e.unref(n).e("icon")}),null,16,["class"])):e.createCommentVNode("",!0)],2)],2)):e.createCommentVNode("",!0),e.createElementVNode("input",e.mergeProps({id:e.unref(F),ref_key:"input",ref:w,class:e.unref(n).e("inner")},e.unref(r),{type:o.showPassword?x.value?"text":"password":o.type,disabled:e.unref(m),formatter:o.formatter,parser:o.parser,readonly:o.readonly,autocomplete:o.autocomplete,tabindex:o.tabindex,"aria-label":o.label,placeholder:o.placeholder,style:o.inputStyle,form:o.form,onCompositionstart:L,onCompositionupdate:W,onCompositionend:H,onInput:P,onFocus:G,onBlur:J,onChange:j,onKeydown:Q,onKeyup:a[0]||(a[0]=e.withKeys(d=>l("enter"),["enter"]))}),null,16,Ie),pe.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(e.unref(n).e("suffix"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("suffix-inner")),onClick:he},[!E.value||!z.value||!p.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.renderSlot(o.$slots,"suffix"),O.value?.icon?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:0},O.value,{class:e.unref(n).e("icon")}),null,16,["class"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),E.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:1,pointer:"",class:[e.unref(n).e("icon"),e.unref(n).e("clear")]},ce.value,{onMousedown:e.withModifiers(e.unref(s.noop),["prevent"]),onClick:e.withModifiers(X,["stop"])}),null,16,["class","onMousedown"])):e.createCommentVNode("",!0),z.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:2},de.value,{class:[e.unref(n).e("icon"),e.unref(n).e("password")],onClick:ke}),null,16,["class"])):e.createCommentVNode("",!0),p.value?(e.openBlock(),e.createElementBlock("span",{key:3,class:e.normalizeClass(e.unref(n).e("count"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("count-inner"))},e.toDisplayString(N.value)+" / "+e.toDisplayString(e.unref(r).maxlength),3)],2)):e.createCommentVNode("",!0),g.value&&K.value&&R.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),{key:4,icon:K.value,class:e.normalizeClass([e.unref(n).e("icon"),e.unref(n).e("validateIcon"),e.unref(n).is("loading",g.value==="validating")])},null,8,["icon","class"])):e.createCommentVNode("",!0)],2)],2)):e.createCommentVNode("",!0)],2),o.$slots.append?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(n).be("group","append"))},[e.renderSlot(o.$slots,"append")],2)):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("textarea",e.mergeProps({id:e.unref(F),ref_key:"textarea",ref:f,class:e.unref(A).e("inner")},e.unref(r),{tabindex:o.tabindex,disabled:e.unref(m),readonly:o.readonly,autocomplete:o.autocomplete,style:$.value,"aria-label":o.label,placeholder:o.placeholder,form:o.form,onCompositionstart:L,onCompositionupdate:W,onCompositionend:H,onInput:P,onFocus:G,onBlur:J,onChange:j,onKeydown:Q}),null,16,Se),p.value?(e.openBlock(),e.createElementBlock("span",{key:0,style:e.normalizeStyle(D.value),class:e.normalizeClass(e.unref(n).e("count"))},e.toDisplayString(N.value)+" / "+e.toDisplayString(e.unref(r).maxlength),7)):e.createCommentVNode("",!0)],64))],16,Ve)),[[e.vShow,o.type!=="hidden"]])}});exports.default=ze;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../form/index.cjs");const k=require("../icon/index.cjs"),Y=require("@vueuse/core"),s=require("@vft/utils"),T=require("../../utils/error.cjs");require("../config-provider/hooks/use-global-config.cjs");const Be=require("lodash-es"),Z=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const q=require("@vft/constants"),_=require("@vft/use"),ee=require("./utils.cjs"),te=require("../form/hooks/use-form-common-props.cjs"),oe=require("../form/hooks/use-form-item.cjs"),Ve=["role"],Ie=["id","type","disabled","formatter","parser","readonly","autocomplete","tabindex","aria-label","placeholder","form"],Se=["id","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form"],ze=e.defineComponent({__name:"input",props:{id:{},size:{default:""},disabled:{type:Boolean},modelValue:{},type:{default:"text"},resize:{},autosize:{type:[Object,Boolean],default:!1},autocomplete:{default:"off"},formatter:{},parser:{},placeholder:{},form:{},readonly:{type:Boolean},clearable:{type:Boolean},showPassword:{type:Boolean},showWordLimit:{type:Boolean},suffixIcon:{},prefixIcon:{},clearIcon:{},containerRole:{},label:{},tabindex:{default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:[Boolean,null,String,Object,Array]}},emits:{[q.UPDATE_MODEL_EVENT]:t=>s.isString(t),input:t=>s.isString(t),change:t=>s.isString(t),suffixClick:t=>s.isString(t),prefixClick:t=>s.isString(t),focus:t=>t instanceof FocusEvent,blur:t=>t instanceof FocusEvent,clear:()=>!0,enter:()=>!0,mouseleave:t=>t instanceof MouseEvent,mouseenter:t=>t instanceof MouseEvent,keydown:t=>t instanceof Event,compositionstart:t=>t instanceof CompositionEvent,compositionupdate:t=>t instanceof CompositionEvent,compositionend:t=>t instanceof CompositionEvent},setup(t,{expose:ne,emit:ae}){const l=ae,v=e.useAttrs(),i=e.useSlots(),M=e.computed(()=>{const o={};return t.containerRole==="combobox"&&(o["aria-haspopup"]=v["aria-haspopup"],o["aria-owns"]=v["aria-owns"],o["aria-expanded"]=v["aria-expanded"]),o}),le=e.computed(()=>[t.type==="textarea"?A.b():n.b(),n.m(ie.value),n.is("disabled",m.value),n.is("exceed",fe.value),n.is("focus",c.value),{[n.b("group")]:i.prepend||i.append,[n.bm("group","append")]:i.append,[n.bm("group","prepend")]:i.prepend,[n.m("prefix")]:i.prefix||t.prefixIcon,[n.m("suffix")]:i.suffix||t.suffixIcon||t.clearable||t.showPassword,[n.bm("suffix","password-clear")]:E.value&&z.value},v.class]),se=e.getCurrentInstance(),re=e.computed(()=>[n.e("wrapper"),n.is("focus",c.value)]),r=_.useAttrs({excludeKeys:e.computed(()=>Object.keys(M.value))}),{form:ue,formItem:C}=oe.useFormItem(),{inputId:F}=oe.useFormItemInputId(se.props,{formItemContext:C}),ie=te.useFormSize(),m=te.useFormDisabled(),n=Z.useNamespace("input"),A=Z.useNamespace("textarea"),w=e.shallowRef(),f=e.shallowRef(),c=e.ref(!1),V=e.ref(!1),y=e.ref(!1),x=e.ref(!1),D=e.ref(),I=e.shallowRef(t.inputStyle),h=e.computed(()=>w.value||f.value),S=e.computed(()=>s.singleAttrToObj(t.prefixIcon,"icon",{size:16})),O=e.computed(()=>s.singleAttrToObj(t.suffixIcon,"icon",{size:16})),ce=e.computed(()=>s.singleAttrToObj(t.clearIcon,"icon",{icon:"icon-circle-close",size:16})),R=e.computed(()=>ue?.statusIcon??!1),g=e.computed(()=>C?.validateState||""),K=e.computed(()=>g.value&&{validating:"icon-loading",success:"icon-circle-check",error:"icon-circle-close"}[g.value]),de=e.computed(()=>x.value?{icon:"icon-view",size:16}:{icon:"icon-hide",size:16}),me=e.computed(()=>[v.style,t.inputStyle]),$=e.computed(()=>[t.inputStyle,I.value,{resize:t.resize}]),u=e.computed(()=>Be.isNil(t.modelValue)?"":String(t.modelValue)),E=e.computed(()=>t.clearable&&!m.value&&!t.readonly&&!!u.value&&(c.value||V.value)),z=e.computed(()=>t.showPassword&&!m.value&&!t.readonly&&!!u.value&&(!!u.value||c.value)),p=e.computed(()=>t.showWordLimit&&!!r.value.maxlength&&(t.type==="text"||t.type==="textarea")&&!m.value&&!t.readonly&&!t.showPassword),N=e.computed(()=>Array.from(u.value).length),fe=e.computed(()=>!!p.value&&N.value>Number(r.value.maxlength)),pe=e.computed(()=>!!i.suffix||!!t.suffixIcon||E.value||t.showPassword||p.value||!!g.value&&R.value),[ve,ye]=_.useCursor(w);Y.useResizeObserver(f,o=>{if(!p.value||t.resize!=="both")return;const a=o[0],{width:d}=a.contentRect;D.value={right:`calc(100% - ${d+15+6}px)`}});const B=()=>{if(!(!Y.isClient||t.type!=="textarea"))if(t.autosize){const o=s.isObject(t.autosize)?t.autosize.minRows:void 0,a=s.isObject(t.autosize)?t.autosize.maxRows:void 0;I.value={...ee.calcTextareaHeight(f.value,o,a)}}else I.value={minHeight:ee.calcTextareaHeight(f.value).minHeight}},b=()=>{const o=h.value;!o||o.value===u.value||(o.value=u.value)},P=async o=>{ve();let{value:a}=o.target;if(r.value.maxlength&&a.length>=r.value.maxlength&&(a=a.slice(0,Number(r.value.maxlength))),t.formatter&&(a=t.parser?t.parser(a):a,a=t.formatter(a)),!y.value){if(a===u.value){b();return}l(q.UPDATE_MODEL_EVENT,a),l("input",a),await e.nextTick(),b(),ye()}},j=o=>{l("change",o.target.value)},he=()=>{l("suffixClick",t.modelValue)},ge=()=>{l("prefixClick",t.modelValue)},L=o=>{l("compositionstart",o),y.value=!0},be=o=>/([(\uAC00-\uD7AF)|\u3130-\u318F])+/.test(o),W=o=>{l("compositionupdate",o);const a=o.target?.value,d=a[a.length-1]||"";y.value=!be(d)},H=o=>{l("compositionend",o),y.value&&(y.value=!1,P(o))},ke=()=>{x.value=!x.value,U()},U=async()=>{await e.nextTick(),h.value?.focus()},Ce=()=>h.value?.blur(),G=o=>{c.value=!0,l("focus",o)},J=o=>{c.value=!1,l("blur",o),t.validateEvent&&C?.validate?.("blur").catch(a=>T.debugWarn(a))},we=o=>{V.value=!1,l("mouseleave",o)},xe=o=>{V.value=!0,l("mouseenter",o)},Q=o=>{let a=o.key;if(o.target.type==="number"&&["e","+","-0","E"].includes(a))return o.returnValue=!1,!1;l("keydown",o)},Ee=()=>{h.value?.select()},X=()=>{l(q.UPDATE_MODEL_EVENT,""),l("change",""),l("clear"),l("input","")};return e.watch(()=>t.modelValue,()=>{e.nextTick(()=>B()),t.validateEvent&&C?.validate?.("change").catch(o=>T.debugWarn(o))}),e.watch(u,()=>b()),e.watch(()=>t.type,async()=>{await e.nextTick(),b(),B()}),e.onMounted(()=>{!t.formatter&&t.parser&&T.debugWarn("VftInput","If you set the parser, you also need to set the formatter."),b(),e.nextTick(B)}),ne({input:w,textarea:f,ref:h,textareaStyle:$,autosize:t.autosize,focus:U,blur:Ce,select:Ee,clear:X,resizeTextarea:B}),(o,a)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps(M.value,{class:le.value,style:me.value,role:o.containerRole,onMouseenter:xe,onMouseleave:we,onMousewheel:a[1]||(a[1]=d=>o.type==="number"&&c.value?d.preventDefault():null)}),[o.type!=="textarea"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.$slots.prepend?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(n).be("group","prepend"))},[e.renderSlot(o.$slots,"prepend")],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(re.value)},[o.$slots.prefix||S.value?.icon?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(e.unref(n).e("prefix"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("prefix-inner")),onClick:ge},[e.renderSlot(o.$slots,"prefix"),S.value?.icon?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:0,pointer:""},S.value,{class:e.unref(n).e("icon")}),null,16,["class"])):e.createCommentVNode("",!0)],2)],2)):e.createCommentVNode("",!0),e.createElementVNode("input",e.mergeProps({id:e.unref(F),ref_key:"input",ref:w,class:e.unref(n).e("inner")},e.unref(r),{type:o.showPassword?x.value?"text":"password":o.type,disabled:e.unref(m),formatter:o.formatter,parser:o.parser,readonly:o.readonly,autocomplete:o.autocomplete,tabindex:o.tabindex,"aria-label":o.label,placeholder:o.placeholder,style:o.inputStyle,form:o.form,onCompositionstart:L,onCompositionupdate:W,onCompositionend:H,onInput:P,onFocus:G,onBlur:J,onChange:j,onKeydown:Q,onKeyup:a[0]||(a[0]=e.withKeys(d=>l("enter"),["enter"]))}),null,16,Ie),pe.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(e.unref(n).e("suffix"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("suffix-inner")),onClick:he},[!E.value||!z.value||!p.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.renderSlot(o.$slots,"suffix"),O.value?.icon?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:0},O.value,{class:e.unref(n).e("icon")}),null,16,["class"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),E.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:1,pointer:"",class:[e.unref(n).e("icon"),e.unref(n).e("clear")]},ce.value,{onMousedown:e.withModifiers(e.unref(s.noop),["prevent"]),onClick:e.withModifiers(X,["stop"])}),null,16,["class","onMousedown"])):e.createCommentVNode("",!0),z.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:2},de.value,{class:[e.unref(n).e("icon"),e.unref(n).e("password")],onClick:ke}),null,16,["class"])):e.createCommentVNode("",!0),p.value?(e.openBlock(),e.createElementBlock("span",{key:3,class:e.normalizeClass(e.unref(n).e("count"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("count-inner"))},e.toDisplayString(N.value)+" / "+e.toDisplayString(e.unref(r).maxlength),3)],2)):e.createCommentVNode("",!0),g.value&&K.value&&R.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),{key:4,icon:K.value,class:e.normalizeClass([e.unref(n).e("icon"),e.unref(n).e("validateIcon"),e.unref(n).is("loading",g.value==="validating")])},null,8,["icon","class"])):e.createCommentVNode("",!0)],2)],2)):e.createCommentVNode("",!0)],2),o.$slots.append?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(n).be("group","append"))},[e.renderSlot(o.$slots,"append")],2)):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("textarea",e.mergeProps({id:e.unref(F),ref_key:"textarea",ref:f,class:e.unref(A).e("inner")},e.unref(r),{tabindex:o.tabindex,disabled:e.unref(m),readonly:o.readonly,autocomplete:o.autocomplete,style:$.value,"aria-label":o.label,placeholder:o.placeholder,form:o.form,onCompositionstart:L,onCompositionupdate:W,onCompositionend:H,onInput:P,onFocus:G,onBlur:J,onChange:j,onKeydown:Q}),null,16,Se),p.value?(e.openBlock(),e.createElementBlock("span",{key:0,style:e.normalizeStyle(D.value),class:e.normalizeClass(e.unref(n).e("count"))},e.toDisplayString(N.value)+" / "+e.toDisplayString(e.unref(r).maxlength),7)):e.createCommentVNode("",!0)],64))],16,Ve)),[[e.vShow,o.type!=="hidden"]])}});exports.default=ze;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.412";exports.version=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.413";exports.version=e;
@@ -1,6 +1,6 @@
1
1
  declare const _default: {
2
2
  "name": "vft",
3
- "version": "0.0.412",
3
+ "version": "0.0.413",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vft",
3
- "version": "0.0.412",
3
+ "version": "0.0.413",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
@@ -55,11 +55,11 @@
55
55
  "resize-detector": "0.3.0",
56
56
  "sortablejs": "1.15.0",
57
57
  "photoswipe": "5.4.4",
58
- "@vft/router": "0.0.67",
59
58
  "@vft/constants": "0.0.72",
60
- "@vft/store": "0.0.54",
61
59
  "@vft/utils": "0.0.140",
62
60
  "@vft/use": "0.0.83",
61
+ "@vft/store": "0.0.54",
62
+ "@vft/router": "0.0.67",
63
63
  "@vft/directives": "0.0.36"
64
64
  },
65
65
  "vetur": {