fluekit 2.8.0 → 2.8.1

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.
@@ -62,3 +62,4 @@ export declare const StackFit: {
62
62
  };
63
63
  export type StackFit = Valueof<typeof StackFit>;
64
64
  export declare function flexBoxToStyle(props: FlexBoxProps): CSSProperties;
65
+ export declare function withFlexDirection(flexDirection: CSSProperties["flexDirection"], props: CSSProperties): CSSProperties;
@@ -25,14 +25,14 @@ declare const _default: import('vue').DefineComponent<LiquidGlassDialogProps, {
25
25
  close: () => void;
26
26
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
27
27
  close: () => any;
28
+ afterClose: () => any;
28
29
  "update:modelValue": (value: boolean) => any;
29
30
  action: (payload: LiquidGlassDialogActionPayload) => any;
30
- afterClose: () => any;
31
31
  }, string, import('vue').PublicProps, Readonly<LiquidGlassDialogProps> & Readonly<{
32
32
  onClose?: (() => any) | undefined;
33
+ onAfterClose?: (() => any) | undefined;
33
34
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
34
35
  onAction?: ((payload: LiquidGlassDialogActionPayload) => any) | undefined;
35
- onAfterClose?: (() => any) | undefined;
36
36
  }>, {
37
37
  title: string;
38
38
  alignment: Alignment;
package/dist/Modal.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Alignment } from './Alignment';
2
- interface ModalProps {
2
+ export interface ModalProps {
3
3
  barrierDismissible?: boolean;
4
4
  barrierColor?: string;
5
5
  alignment?: Alignment;
@@ -23,8 +23,10 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_PublicProps,
23
23
  "update:visible": (value: boolean) => any;
24
24
  } & {
25
25
  close: () => any;
26
+ afterClose: () => any;
26
27
  }, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
27
28
  onClose?: (() => any) | undefined;
29
+ onAfterClose?: (() => any) | undefined;
28
30
  "onUpdate:visible"?: ((value: boolean) => any) | undefined;
29
31
  }>, {
30
32
  alignment: Alignment;
package/dist/device.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export declare const isBrowser: boolean;
2
+ export declare const isClient: boolean;
2
3
  export declare const userAgent: string;
3
4
  export declare const isAndroid: boolean;
4
5
  export declare const isHarmonyOS: boolean;
package/dist/index.d.ts CHANGED
@@ -19,6 +19,7 @@ export { default as Image } from './Image';
19
19
  export { default as Icon } from './Icon';
20
20
  export { default as ListView } from './ListView';
21
21
  export { default as Modal } from './Modal';
22
+ export * from './showModal';
22
23
  export { default as Padding } from './Padding';
23
24
  export { default as Positioned } from './Positioned';
24
25
  export { default as Row } from './Row';
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { Comment, Fragment, Teleport, Text, Transition, TransitionGroup, cloneVNode, computed, createApp, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createTextVNode, createVNode, defineComponent, guardReactiveProps, h, inject, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onMounted, onUnmounted, openBlock, provide, reactive, ref, render, renderList, renderSlot, resolveDynamicComponent, shallowRef, toDisplayString, toRefs, unref, useAttrs, useModel, useSlots, warn, watch, watchEffect, withCtx, withModifiers } from "vue";
1
+ import { Comment, Fragment, Teleport, Text, Transition, TransitionGroup, cloneVNode, computed, createApp, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createTextVNode, createVNode, defineComponent, guardReactiveProps, h, inject, isVNode, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onMounted, onUnmounted, openBlock, provide, reactive, ref, render, renderList, renderSlot, resolveDynamicComponent, shallowRef, toDisplayString, toRefs, unref, useAttrs, useModel, useSlots, warn, watch, watchEffect, withCtx, withModifiers } from "vue";
2
2
  var BackdropFilter_default = /* @__PURE__ */ defineComponent({
3
3
  __name: "BackdropFilter",
4
4
  props: {
@@ -1343,6 +1343,13 @@ function flexBoxToStyle(e) {
1343
1343
  };
1344
1344
  return e.gap !== void 0 && e.gap != null && (r.gap = px2vw$1(e.gap)), r;
1345
1345
  }
1346
+ function withFlexDirection(e, t) {
1347
+ return {
1348
+ display: "flex",
1349
+ flexDirection: e,
1350
+ ...t
1351
+ };
1352
+ }
1346
1353
  var FlexBox_default = /* @__PURE__ */ defineComponent({
1347
1354
  name: "FlexBox",
1348
1355
  inheritAttrs: !1,
@@ -1481,20 +1488,20 @@ function useZIndex() {
1481
1488
  function usePositionStyle(e, t = "absolute") {
1482
1489
  let n = ref();
1483
1490
  return onMounted(() => n.value = zIndexManager.next()), computed(() => {
1484
- let r = {
1485
- position: t,
1491
+ let r = unref(e), i = {
1492
+ position: r.position ?? unref(t),
1486
1493
  boxSizing: "border-box",
1487
- zIndex: e.zIndex ?? n.value,
1494
+ zIndex: r.zIndex ?? n.value,
1488
1495
  pointerEvents: "auto",
1489
- transform: e.transform
1496
+ transform: r.transform
1490
1497
  };
1491
- e.size === void 0 ? (r.width = px2vw$1(e.width), r.height = px2vw$1(e.height)) : Object.assign(r, sizeToStyle(e.size));
1492
- let i = e.inset;
1493
- if (i != null) {
1494
- if (typeof i == "number") return r.top = px2vw$1(i), r.bottom = px2vw$1(i), r.left = px2vw$1(i), r.right = px2vw$1(i), r;
1495
- typeof i == "string" && Object.assign(r, insetToStyle(i));
1496
- } else r.top = px2vw$1(e.top), r.bottom = px2vw$1(e.bottom), r.left = px2vw$1(e.left), r.right = px2vw$1(e.right);
1497
- return r;
1498
+ r.size === void 0 ? (i.width = px2vw$1(r.width), i.height = px2vw$1(r.height)) : Object.assign(i, sizeToStyle(r.size));
1499
+ let a = r.inset;
1500
+ if (a != null) {
1501
+ if (typeof a == "number") return i.top = px2vw$1(a), i.bottom = px2vw$1(a), i.left = px2vw$1(a), i.right = px2vw$1(a), i;
1502
+ typeof a == "string" && Object.assign(i, insetToStyle(a));
1503
+ } else i.top = px2vw$1(r.top), i.bottom = px2vw$1(r.bottom), i.left = px2vw$1(r.left), i.right = px2vw$1(r.right);
1504
+ return i;
1498
1505
  });
1499
1506
  }
1500
1507
  function insetToStyle(e) {
@@ -2434,11 +2441,13 @@ var CupertinoActivityIndicator_default = /* @__PURE__ */ defineComponent({
2434
2441
  easing: "ease-out"
2435
2442
  });
2436
2443
  n.onfinish = t;
2437
- }, f = computed(() => ({
2438
- backgroundColor: resolveColor(n.color),
2439
- zIndex: n.zIndex,
2440
- position: n.position,
2444
+ }, f = usePositionStyle(computed(() => ({
2441
2445
  inset: 0,
2446
+ zIndex: n.zIndex,
2447
+ position: n.position
2448
+ }))), p = computed(() => ({
2449
+ backgroundColor: resolveColor(n.color),
2450
+ ...f.value,
2442
2451
  pointerEvents: "auto",
2443
2452
  cursor: "auto"
2444
2453
  }));
@@ -2449,7 +2458,7 @@ var CupertinoActivityIndicator_default = /* @__PURE__ */ defineComponent({
2449
2458
  }, {
2450
2459
  default: withCtx(() => [e.visible ? (openBlock(), createElementBlock("div", {
2451
2460
  key: 0,
2452
- style: normalizeStyle(f.value),
2461
+ style: normalizeStyle(p.value),
2453
2462
  onClick: a
2454
2463
  }, [renderSlot(t.$slots, "default")], 4)) : createCommentVNode("", !0)]),
2455
2464
  _: 3
@@ -2473,97 +2482,81 @@ var CupertinoActivityIndicator_default = /* @__PURE__ */ defineComponent({
2473
2482
  },
2474
2483
  visibleModifiers: {}
2475
2484
  }),
2476
- emits: /* @__PURE__ */ mergeModels(["close"], ["update:visible"]),
2485
+ emits: /* @__PURE__ */ mergeModels(["close", "afterClose"], ["update:visible"]),
2477
2486
  setup(e, { emit: n }) {
2478
2487
  let r = useModel(e, "visible"), a = e, o = n, c = () => {
2479
2488
  r.value = !1, o("close");
2480
- };
2481
- function f(e) {
2489
+ }, l = usePositionStyle(computed(() => ({
2490
+ inset: "0",
2491
+ zIndex: a.zIndex,
2492
+ position: "fixed",
2493
+ width: "100%",
2494
+ height: "100%"
2495
+ }))), f = computed(() => withFlexDirection("column", {
2496
+ ...l.value,
2497
+ ...alignmentToFlex(a.alignment, "column")
2498
+ }));
2499
+ function p(e) {
2482
2500
  isBrowser && (e ? document.body.style.overflow = "hidden" : document.body.style.overflow = "auto");
2483
2501
  }
2484
- watch(() => r.value, (e) => f(e));
2485
- let p = computed(() => {
2486
- switch (a.alignment) {
2487
- case Alignment.topLeft: return {
2488
- top: "0",
2489
- left: "0"
2490
- };
2491
- case Alignment.centerLeft: return {
2492
- top: "50%",
2493
- left: "0",
2494
- transform: "translate(0%,-50%)"
2495
- };
2496
- case Alignment.bottomLeft: return {
2497
- bottom: "0%",
2498
- left: "0%"
2499
- };
2500
- case Alignment.topCenter: return {
2501
- top: "0%",
2502
- left: "50%",
2503
- transform: "translate(-50%,0%)"
2504
- };
2505
- case Alignment.bottomCenter: return {
2506
- bottom: "0%",
2507
- left: "50%",
2508
- transform: "translate(-50%,0%)"
2509
- };
2510
- case Alignment.center: return {
2511
- top: "50%",
2512
- left: "50%",
2513
- transform: "translate(-50%,-50%)"
2514
- };
2515
- case Alignment.topRight: return {
2516
- top: "0",
2517
- right: "0"
2518
- };
2519
- case Alignment.centerRight: return {
2520
- top: "50%",
2521
- right: "0",
2522
- transform: "translate(0%,-50%)"
2523
- };
2524
- case Alignment.bottomRight: return {
2525
- bottom: "0%",
2526
- right: "0%"
2527
- };
2528
- default: return {
2529
- top: "50%",
2530
- left: "50%",
2531
- transform: "translate(-50%,-50%)"
2532
- };
2533
- }
2534
- }), m = () => {
2502
+ watch(() => r.value, (e) => p(e));
2503
+ let m = () => {
2535
2504
  a.barrierDismissible && c();
2536
- }, _ = (e, t) => {
2537
- let n = e.animate([{ opacity: 0 }, { opacity: 1 }], {
2505
+ }, _ = (e) => {
2506
+ e.target === e.currentTarget && m();
2507
+ }, v = (e) => {
2508
+ switch (e) {
2509
+ case Alignment.topCenter: return "translateY(-100%)";
2510
+ case Alignment.bottomCenter: return "translateY(100%)";
2511
+ case Alignment.topLeft: return "translate(-100%, -100%)";
2512
+ case Alignment.topRight: return "translate(100%, -100%)";
2513
+ case Alignment.bottomLeft: return "translate(-100%, 100%)";
2514
+ case Alignment.bottomRight: return "translate(100%, 100%)";
2515
+ case Alignment.centerLeft: return "translateX(-100%)";
2516
+ case Alignment.centerRight: return "translateX(100%)";
2517
+ case Alignment.center:
2518
+ default: return "scale(0)";
2519
+ }
2520
+ }, y = (e, t) => {
2521
+ let n = e, r = v(a.alignment), i = n.animate([{
2522
+ opacity: 0,
2523
+ transform: r
2524
+ }, {
2525
+ opacity: 1,
2526
+ transform: "none"
2527
+ }], {
2538
2528
  duration: 300,
2539
2529
  easing: "ease"
2540
2530
  });
2541
- n.onfinish = t;
2542
- }, v = (e, t) => {
2543
- let n = e.animate([{ opacity: 1 }, { opacity: 0 }], {
2531
+ i.onfinish = () => {
2532
+ t();
2533
+ };
2534
+ }, b = (e, t) => {
2535
+ let n = e, r = v(a.alignment), i = n.animate([{
2536
+ opacity: 1,
2537
+ transform: "none"
2538
+ }, {
2539
+ opacity: 0,
2540
+ transform: r
2541
+ }], {
2544
2542
  duration: 300,
2545
2543
  easing: "ease"
2546
2544
  });
2547
- n.onfinish = t;
2545
+ i.onfinish = () => {
2546
+ t(), o("afterClose");
2547
+ };
2548
2548
  };
2549
2549
  return (n, a) => (openBlock(), createElementBlock(Fragment, null, [createVNode(Transition, {
2550
2550
  css: !1,
2551
- onEnter: _,
2552
- onLeave: v
2551
+ onEnter: y,
2552
+ onLeave: b
2553
2553
  }, {
2554
- default: withCtx(() => [r.value ? (openBlock(), createBlock(Fixed_default, mergeProps({
2554
+ default: withCtx(() => [r.value ? (openBlock(), createElementBlock("div", {
2555
2555
  key: 0,
2556
- "z-index": e.zIndex
2557
- }, p.value), {
2558
- default: withCtx(() => [createVNode(Container_default, {
2559
- width: "100%",
2560
- height: "100%"
2561
- }, {
2562
- default: withCtx(() => [renderSlot(n.$slots, "default")]),
2563
- _: 3
2564
- })]),
2565
- _: 3
2566
- }, 16, ["z-index"])) : createCommentVNode("", !0)]),
2556
+ style: normalizeStyle(f.value),
2557
+ class: "modal-core",
2558
+ onClick: _
2559
+ }, [renderSlot(n.$slots, "default")], 4)) : createCommentVNode("", !0)]),
2567
2560
  _: 3
2568
2561
  }), createVNode(Overlay_default, {
2569
2562
  visible: r.value,
@@ -2577,7 +2570,31 @@ var CupertinoActivityIndicator_default = /* @__PURE__ */ defineComponent({
2577
2570
  "color"
2578
2571
  ])], 64));
2579
2572
  }
2580
- }), Padding_default = defineComponent({
2573
+ });
2574
+ const showModal = (e) => {
2575
+ let t = document.createElement("div");
2576
+ document.body.appendChild(t);
2577
+ let n = () => {
2578
+ render(null, t), document.body.contains(t) && document.body.removeChild(t), e.onAfterClose?.();
2579
+ }, r = () => {
2580
+ i(!1), e.onClose?.();
2581
+ }, i = (r) => {
2582
+ let { content: a, contentProps: o, onClose: s, onAfterClose: c, ...l } = e, u;
2583
+ u = typeof a == "string" || isVNode(a) ? () => a : a ? () => createVNode(a, o) : () => null;
2584
+ function d(e) {
2585
+ e || i(!1);
2586
+ }
2587
+ render(createVNode(Modal_default, {
2588
+ ...l,
2589
+ visible: r,
2590
+ "onUpdate:visible": d,
2591
+ onClose: e.onClose,
2592
+ onAfterClose: n
2593
+ }, { default: u }), t);
2594
+ };
2595
+ return i(!0), { close: r };
2596
+ };
2597
+ var Padding_default = defineComponent({
2581
2598
  name: "Padding",
2582
2599
  inheritAttrs: !1,
2583
2600
  props: {
@@ -2982,18 +2999,18 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
2982
2999
  }), x = computed(() => {
2983
3000
  let e = n.decoration?.floatingLabelBehavior || FloatingLabelBehavior.auto;
2984
3001
  return e === FloatingLabelBehavior.never ? !1 : e === FloatingLabelBehavior.always ? !0 : o.value || n.modelValue !== "" && n.modelValue !== null && n.modelValue !== void 0;
2985
- }), S = computed(() => !(n.decoration?.floatingLabelBehavior === FloatingLabelBehavior.never && (n.modelValue !== "" && n.modelValue !== null && n.modelValue !== void 0 || o.value))), w = computed(() => n.decoration?.labelText && S.value && !x.value ? "" : n.decoration?.hintText || "");
3002
+ }), S = computed(() => !(n.decoration?.floatingLabelBehavior === FloatingLabelBehavior.never && (n.modelValue !== "" && n.modelValue !== null && n.modelValue !== void 0 || o.value))), C = computed(() => n.decoration?.labelText && S.value && !x.value ? "" : n.decoration?.hintText || "");
2986
3003
  function T() {
2987
3004
  nextTick(v);
2988
3005
  }
2989
3006
  watch(() => n.modelValue, T), watch(y, (e) => e && nextTick(v)), watch(() => n.maxLines, T), watch(() => n.minLines, T), watch(() => n.autoGrow, T);
2990
- let O = computed(() => {
3007
+ let E = computed(() => {
2991
3008
  if (n.decoration?.errorText) {
2992
3009
  if (o.value && n.decoration.focusedErrorBorder) return n.decoration.focusedErrorBorder;
2993
3010
  if (n.decoration.errorBorder) return n.decoration.errorBorder;
2994
3011
  }
2995
3012
  return !n.enabled && n.decoration?.disabledBorder ? n.decoration.disabledBorder : o.value && n.decoration?.focusedBorder ? n.decoration.focusedBorder : n.enabled && n.decoration?.enabledBorder ? n.decoration.enabledBorder : n.decoration?.border;
2996
- }), k = computed(() => n.decoration?.prefixText), A = computed(() => n.decoration?.errorText), j = computed(() => n.decoration?.helperText), $a = computed(() => n.decoration?.counterText || `${String(n.modelValue).length} / ${n.maxLength}`), P = computed(() => A.value || n.decoration?.alwaysShowError), F = computed(() => {
3013
+ }), k = computed(() => n.decoration?.prefixText), A = computed(() => n.decoration?.errorText), j = computed(() => n.decoration?.helperText), N = computed(() => n.decoration?.counterText || `${String(n.modelValue).length} / ${n.maxLength}`), to = computed(() => A.value || n.decoration?.alwaysShowError), P = computed(() => {
2997
3014
  if (n.decoration?.isCollapsed) return {
2998
3015
  display: "flex",
2999
3016
  alignItems: y.value ? "flex-start" : "center",
@@ -3007,7 +3024,7 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3007
3024
  transition: "all 0.2s ease",
3008
3025
  width: "100%",
3009
3026
  ...boxConstraintsToStyle(n.decoration?.constraints)
3010
- }, t = O.value || UnderlineInputBorder();
3027
+ }, t = E.value || UnderlineInputBorder();
3011
3028
  if (t.isOutline) {
3012
3029
  let r = t.borderSide || BorderSide({
3013
3030
  width: 1,
@@ -3026,40 +3043,40 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3026
3043
  isEdgeInsets(n.decoration?.contentPadding) ? Object.assign(e, paddingToStyle(n.decoration.contentPadding)) : e.padding = `${i}px 0`;
3027
3044
  }
3028
3045
  return n.decoration?.filled && (e.backgroundColor = resolveColor(n.decoration.fillColor) || "#f0f0f0"), e;
3029
- }), I = computed(() => ({
3046
+ }), F = computed(() => ({
3030
3047
  display: "flex",
3031
3048
  flexDirection: "row",
3032
3049
  position: "relative",
3033
3050
  fontFamily: "inherit",
3034
3051
  width: "100%"
3035
- })), L = computed(() => ({
3052
+ })), io = computed(() => ({
3036
3053
  marginRight: "16px",
3037
3054
  marginTop: "12px",
3038
3055
  display: "flex",
3039
3056
  alignItems: "center",
3040
3057
  color: resolveColor(n.decoration?.iconColor) || "inherit"
3041
- })), R = {
3058
+ })), I = {
3042
3059
  flex: 1,
3043
3060
  position: "relative",
3044
3061
  display: "flex",
3045
3062
  flexDirection: "column"
3046
- }, B = computed(() => ({
3063
+ }, L = computed(() => ({
3047
3064
  display: "flex",
3048
3065
  alignItems: "center",
3049
3066
  padding: "0 8px",
3050
3067
  color: resolveColor(n.decoration?.prefixIconColor) || "#666",
3051
3068
  paddingLeft: 0
3052
- })), H = computed(() => ({
3069
+ })), z = computed(() => ({
3053
3070
  display: "flex",
3054
3071
  alignItems: "center",
3055
3072
  padding: "0 8px",
3056
3073
  color: resolveColor(n.decoration?.suffixIconColor) || "#666",
3057
3074
  paddingRight: 0
3058
- })), U = {
3075
+ })), V = {
3059
3076
  flex: 1,
3060
3077
  position: "relative",
3061
3078
  display: "flex"
3062
- }, W = computed(() => {
3079
+ }, H = computed(() => {
3063
3080
  let e = {
3064
3081
  flex: 1,
3065
3082
  border: "none",
@@ -3075,14 +3092,14 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3075
3092
  ...textStyleToStyle(n.style)
3076
3093
  };
3077
3094
  return n.cursorColor && (e.caretColor = resolveColor(n.cursorColor)), n.textAlign && (e.textAlign = n.textAlign), e;
3078
- }), G = computed(() => {
3095
+ }), U = computed(() => {
3079
3096
  let e = {
3080
3097
  position: "absolute",
3081
3098
  left: 0,
3082
3099
  right: 0,
3083
3100
  pointerEvents: "none",
3084
- color: Z.value,
3085
- fontSize: eo.value,
3101
+ color: Y.value,
3102
+ fontSize: X.value,
3086
3103
  textAlign: n.textAlign || "start",
3087
3104
  whiteSpace: y.value ? "pre-wrap" : "nowrap",
3088
3105
  overflow: "hidden",
@@ -3090,24 +3107,24 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3090
3107
  ...textStyleToStyle(n.decoration?.hintStyle)
3091
3108
  };
3092
3109
  return y.value ? e.top = "0" : (e.top = "50%", e.transform = "translateY(-50%)"), e;
3093
- }), K = {
3110
+ }), W = {
3094
3111
  display: "flex",
3095
3112
  justifyContent: "space-between",
3096
3113
  marginTop: "4px"
3097
- }, q = computed(() => {
3114
+ }, G = computed(() => {
3098
3115
  let e = {
3099
3116
  position: "absolute",
3100
3117
  zIndex: 1,
3101
- left: `${(O.value?.isOutline ? 12 : 0) + (p.value || 0) + (n.decoration?.prefixIcon || r.prefixIcon ? 40 : 0)}px`,
3102
- top: O.value?.isOutline ? "50%" : "0",
3118
+ left: `${(E.value?.isOutline ? 12 : 0) + (p.value || 0) + (n.decoration?.prefixIcon || r.prefixIcon ? 40 : 0)}px`,
3119
+ top: E.value?.isOutline ? "50%" : "0",
3103
3120
  transform: "translateY(-50%)",
3104
3121
  pointerEvents: "none",
3105
3122
  transition: "all 0.2s ease",
3106
3123
  color: "#666",
3107
3124
  ...textStyleToStyle(n.decoration?.labelStyle)
3108
3125
  };
3109
- return x.value && (e.top = "0", e.transform = "translateY(-100%) scale(0.75)", e.transformOrigin = "left bottom", o.value && (e.color = "#2196F3"), n.decoration?.floatingLabelStyle && Object.assign(e, textStyleToStyle(n.decoration.floatingLabelStyle)), O.value?.isOutline && (e.transform = "translateY(-50%) scale(0.75)", e.backgroundColor = n.decoration?.fillColor ? resolveColor(n.decoration.fillColor) : "#fff", e.padding = "0 4px", e.marginLeft = "-4px")), e;
3110
- }), J = computed(() => {
3126
+ return x.value && (e.top = "0", e.transform = "translateY(-100%) scale(0.75)", e.transformOrigin = "left bottom", o.value && (e.color = "#2196F3"), n.decoration?.floatingLabelStyle && Object.assign(e, textStyleToStyle(n.decoration.floatingLabelStyle)), E.value?.isOutline && (e.transform = "translateY(-50%) scale(0.75)", e.backgroundColor = n.decoration?.fillColor ? resolveColor(n.decoration.fillColor) : "#fff", e.padding = "0 4px", e.marginLeft = "-4px")), e;
3127
+ }), K = computed(() => {
3111
3128
  let e = {
3112
3129
  flex: 1,
3113
3130
  fontSize: "12px",
@@ -3115,7 +3132,7 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3115
3132
  ...textStyleToStyle(n.decoration?.helperStyle)
3116
3133
  };
3117
3134
  return n.decoration?.helperTextAlign && (e.textAlign = n.decoration.helperTextAlign), n.decoration?.helperMaxLines && (e.display = "-webkit-box", e.WebkitLineClamp = n.decoration.helperMaxLines.toString(), e.WebkitBoxOrient = "vertical", e.overflow = "hidden"), n.decoration?.helperConstraints && Object.assign(e, boxConstraintsToStyle(n.decoration.helperConstraints)), e;
3118
- }), Y = computed(() => {
3135
+ }), q = computed(() => {
3119
3136
  let e = {
3120
3137
  flex: 1,
3121
3138
  fontSize: "12px",
@@ -3123,31 +3140,31 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3123
3140
  ...textStyleToStyle(n.decoration?.errorStyle)
3124
3141
  };
3125
3142
  return n.decoration?.errorTextAlign && (e.textAlign = n.decoration.errorTextAlign), n.decoration?.errorMaxLines && (e.display = "-webkit-box", e.WebkitLineClamp = n.decoration.errorMaxLines.toString(), e.WebkitBoxOrient = "vertical", e.overflow = "hidden"), n.decoration?.errorConstraints && Object.assign(e, boxConstraintsToStyle(n.decoration.errorConstraints)), e;
3126
- }), X = computed(() => ({
3143
+ }), J = computed(() => ({
3127
3144
  fontSize: "12px",
3128
3145
  color: "#666",
3129
3146
  marginLeft: "auto",
3130
3147
  ...textStyleToStyle(n.decoration?.counterStyle)
3131
- })), Z = computed(() => n.decoration?.hintStyle?.color ? resolveColor(n.decoration.hintStyle.color) : "#999"), eo = computed(() => n.decoration?.hintStyle?.fontSize ? `${n.decoration.hintStyle.fontSize}px` : n.style?.fontSize ? typeof n.style.fontSize == "number" ? `${n.style.fontSize}px` : n.style.fontSize : "16px"), Q = computed(() => n.maxLength && n.maxLength > 0 || n.decoration?.counterText), to = computed(() => n.decoration?.errorText || n.decoration?.helperText || Q.value || n.decoration?.alwaysShowError), $ = (e) => {
3148
+ })), Y = computed(() => n.decoration?.hintStyle?.color ? resolveColor(n.decoration.hintStyle.color) : "#999"), X = computed(() => n.decoration?.hintStyle?.fontSize ? `${n.decoration.hintStyle.fontSize}px` : n.style?.fontSize ? typeof n.style.fontSize == "number" ? `${n.style.fontSize}px` : n.style.fontSize : "16px"), Z = computed(() => n.maxLength && n.maxLength > 0 || n.decoration?.counterText), ao = computed(() => n.decoration?.errorText || n.decoration?.helperText || Z.value || n.decoration?.alwaysShowError), Q = (e) => {
3132
3149
  if (n.modelModifiers?.trim && typeof e == "string" && (e = e.trim()), n.modelModifiers?.number) {
3133
3150
  let t = parseFloat(e);
3134
3151
  isNaN(t) || (e = t);
3135
3152
  }
3136
3153
  i("update:modelValue", e);
3137
- }, no = (e) => {
3154
+ }, $ = (e) => {
3138
3155
  let t = e.target;
3139
- nextTick(v), n.modelModifiers?.lazy || $(t.value);
3140
- }, ro = (e) => {
3156
+ nextTick(v), n.modelModifiers?.lazy || Q(t.value);
3157
+ }, oo = (e) => {
3141
3158
  let t = e.target;
3142
- n.modelModifiers?.lazy && $(t.value);
3143
- }, io = (e) => {
3159
+ n.modelModifiers?.lazy && Q(t.value);
3160
+ }, so = (e) => {
3144
3161
  o.value = !0, i("focus", e);
3145
- }, ao = (e) => {
3162
+ }, co = (e) => {
3146
3163
  o.value = !1, i("blur", e);
3147
3164
  };
3148
- return (t, n) => (openBlock(), createElementBlock("div", { style: normalizeStyle(I.value) }, [t.$slots.icon || e.decoration?.icon ? (openBlock(), createElementBlock("div", {
3165
+ return (t, n) => (openBlock(), createElementBlock("div", { style: normalizeStyle(F.value) }, [t.$slots.icon || e.decoration?.icon ? (openBlock(), createElementBlock("div", {
3149
3166
  key: 0,
3150
- style: normalizeStyle(L.value)
3167
+ style: normalizeStyle(io.value)
3151
3168
  }, [renderSlot(t.$slots, "icon", {}, () => [createVNode(Icon_default, {
3152
3169
  icon: e.decoration?.icon,
3153
3170
  size: e.decoration?.iconSize,
@@ -3156,14 +3173,14 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3156
3173
  "icon",
3157
3174
  "size",
3158
3175
  "color"
3159
- ])])], 4)) : createCommentVNode("", !0), createElementVNode("div", { style: R }, [createElementVNode("div", { style: normalizeStyle(F.value) }, [
3176
+ ])])], 4)) : createCommentVNode("", !0), createElementVNode("div", { style: I }, [createElementVNode("div", { style: normalizeStyle(P.value) }, [
3160
3177
  e.decoration?.labelText && S.value ? (openBlock(), createElementBlock("label", {
3161
3178
  key: 0,
3162
- style: normalizeStyle(q.value)
3179
+ style: normalizeStyle(G.value)
3163
3180
  }, toDisplayString(e.decoration.labelText), 5)) : createCommentVNode("", !0),
3164
3181
  t.$slots.prefixIcon || e.decoration?.prefixIcon ? (openBlock(), createElementBlock("div", {
3165
3182
  key: 1,
3166
- style: normalizeStyle(B.value)
3183
+ style: normalizeStyle(L.value)
3167
3184
  }, [renderSlot(t.$slots, "prefixIcon", {}, () => [createVNode(Icon_default, {
3168
3185
  icon: e.decoration?.prefixIcon,
3169
3186
  size: e.decoration?.prefixIconSize,
@@ -3178,10 +3195,10 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3178
3195
  ref_key: "prefixRef",
3179
3196
  ref: c
3180
3197
  }, [renderSlot(t.$slots, "prefix", {}, () => [createTextVNode(toDisplayString(k.value), 1)])], 512)) : createCommentVNode("", !0),
3181
- createElementVNode("div", { style: U }, [!e.modelValue && w.value ? (openBlock(), createElementBlock("div", {
3198
+ createElementVNode("div", { style: V }, [!e.modelValue && C.value ? (openBlock(), createElementBlock("div", {
3182
3199
  key: 0,
3183
- style: normalizeStyle(G.value)
3184
- }, toDisplayString(w.value), 5)) : createCommentVNode("", !0), (openBlock(), createBlock(resolveDynamicComponent(y.value ? "textarea" : "input"), {
3200
+ style: normalizeStyle(U.value)
3201
+ }, toDisplayString(C.value), 5)) : createCommentVNode("", !0), (openBlock(), createBlock(resolveDynamicComponent(y.value ? "textarea" : "input"), {
3185
3202
  ref_key: "inputRef",
3186
3203
  ref: a,
3187
3204
  value: e.modelValue,
@@ -3189,16 +3206,16 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3189
3206
  readonly: e.readOnly,
3190
3207
  type: b.value,
3191
3208
  rows: e.minLines || 1,
3192
- style: normalizeStyle(W.value),
3209
+ style: normalizeStyle(H.value),
3193
3210
  maxlength: e.maxLength,
3194
3211
  autocapitalize: e.textCapitalization,
3195
3212
  enterkeyhint: e.textInputAction,
3196
3213
  autocorrect: e.autocorrect ? "on" : "off",
3197
3214
  autocomplete: e.autocomplete,
3198
- onInput: no,
3199
- onChange: ro,
3200
- onFocus: io,
3201
- onBlur: ao
3215
+ onInput: $,
3216
+ onChange: oo,
3217
+ onFocus: so,
3218
+ onBlur: co
3202
3219
  }, null, 40, [
3203
3220
  "value",
3204
3221
  "disabled",
@@ -3215,7 +3232,7 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3215
3232
  t.$slots.suffix || e.decoration?.suffixText ? (openBlock(), createElementBlock("div", _hoisted_1$10, [renderSlot(t.$slots, "suffix", {}, () => [createTextVNode(toDisplayString(e.decoration?.suffixText), 1)])])) : createCommentVNode("", !0),
3216
3233
  t.$slots.suffixIcon || e.decoration?.suffixIcon ? (openBlock(), createElementBlock("div", {
3217
3234
  key: 4,
3218
- style: normalizeStyle(H.value)
3235
+ style: normalizeStyle(z.value)
3219
3236
  }, [renderSlot(t.$slots, "suffixIcon", {}, () => [createVNode(Icon_default, {
3220
3237
  icon: e.decoration?.suffixIcon,
3221
3238
  size: e.decoration?.suffixIconSize,
@@ -3225,19 +3242,19 @@ var _hoisted_1$10 = { key: 3 }, _hoisted_2$4 = {
3225
3242
  "size",
3226
3243
  "color"
3227
3244
  ])])], 4)) : createCommentVNode("", !0)
3228
- ], 4), to.value ? (openBlock(), createElementBlock("div", {
3245
+ ], 4), ao.value ? (openBlock(), createElementBlock("div", {
3229
3246
  key: 0,
3230
- style: K
3231
- }, [P.value ? (openBlock(), createElementBlock("div", {
3247
+ style: W
3248
+ }, [to.value ? (openBlock(), createElementBlock("div", {
3232
3249
  key: 0,
3233
- style: normalizeStyle(Y.value)
3250
+ style: normalizeStyle(q.value)
3234
3251
  }, toDisplayString(A.value || "\xA0"), 5)) : j.value ? (openBlock(), createElementBlock("div", {
3235
3252
  key: 1,
3236
- style: normalizeStyle(J.value)
3237
- }, toDisplayString(j.value), 5)) : (openBlock(), createElementBlock("div", _hoisted_2$4)), Q.value ? (openBlock(), createElementBlock("div", {
3253
+ style: normalizeStyle(K.value)
3254
+ }, toDisplayString(j.value), 5)) : (openBlock(), createElementBlock("div", _hoisted_2$4)), Z.value ? (openBlock(), createElementBlock("div", {
3238
3255
  key: 3,
3239
- style: normalizeStyle(X.value)
3240
- }, toDisplayString($a.value), 5)) : createCommentVNode("", !0)])) : createCommentVNode("", !0)])], 4));
3256
+ style: normalizeStyle(J.value)
3257
+ }, toDisplayString(N.value), 5)) : createCommentVNode("", !0)])) : createCommentVNode("", !0)])], 4));
3241
3258
  }
3242
3259
  }), TextArea_default = /* @__PURE__ */ defineComponent({
3243
3260
  inheritAttrs: !1,
@@ -3592,7 +3609,7 @@ var _hoisted_1$9 = { style: {
3592
3609
  n.onfinish = () => {
3593
3610
  t(), _("afterClose");
3594
3611
  };
3595
- }, Qa = (e, t) => {
3612
+ }, j = (e, t) => {
3596
3613
  let n = e.animate([{
3597
3614
  opacity: 0,
3598
3615
  transform: "scale(0.85) translateY(10px)"
@@ -3605,7 +3622,7 @@ var _hoisted_1$9 = { style: {
3605
3622
  fill: "both"
3606
3623
  });
3607
3624
  n.onfinish = () => t();
3608
- }, j = (e, t) => {
3625
+ }, M = (e, t) => {
3609
3626
  let n = e.animate([{
3610
3627
  opacity: 1,
3611
3628
  transform: "scale(1) translateY(0)"
@@ -3629,8 +3646,8 @@ var _hoisted_1$9 = { style: {
3629
3646
  style: normalizeStyle(D.value)
3630
3647
  }, [createVNode(Transition, {
3631
3648
  css: !1,
3632
- onEnter: Qa,
3633
- onLeave: j
3649
+ onEnter: j,
3650
+ onLeave: M
3634
3651
  }, {
3635
3652
  default: withCtx(() => [e.modelValue ? (openBlock(), createElementBlock("div", {
3636
3653
  key: 0,
@@ -7862,7 +7879,7 @@ var FlueConfigProvider_default = /* @__PURE__ */ defineComponent({
7862
7879
  }
7863
7880
  let e = b.value;
7864
7881
  return e ? e.label : r.placeholder;
7865
- }), C = computed(() => r.icon || Icons.caretBottom), w = computed(() => r.iconColor || (v.value ? Colors.blue : Colors.black54)), T = computed(() => v.value ? CupertinoColors.systemBlue : Colors.blue), E = computed(() => EdgeInsets.symmetric({
7882
+ }), S = computed(() => r.icon || Icons.caretBottom), w = computed(() => r.iconColor || (v.value ? Colors.blue : Colors.black54)), T = computed(() => v.value ? CupertinoColors.systemBlue : Colors.blue), E = computed(() => EdgeInsets.symmetric({
7866
7883
  horizontal: 12,
7867
7884
  vertical: 12
7868
7885
  })), D = computed(() => v.value ? BoxDecoration({
@@ -7900,7 +7917,7 @@ var FlueConfigProvider_default = /* @__PURE__ */ defineComponent({
7900
7917
  fontSize: 16,
7901
7918
  color: r.textColor || Colors.black87,
7902
7919
  fontWeight: v.value ? FontWeight.w500 : FontWeight.w400
7903
- })), A = computed(() => v.value ? Colors.grey200 : Colors.grey100), j = BoxConstraints({ minWidth: 120 }), M = computed(() => {
7920
+ })), A = computed(() => v.value ? Colors.grey200 : Colors.grey100), j = BoxConstraints({ minWidth: 120 }), N = computed(() => {
7904
7921
  let e = {
7905
7922
  position: "absolute",
7906
7923
  zIndex: useZIndex(),
@@ -7908,7 +7925,7 @@ var FlueConfigProvider_default = /* @__PURE__ */ defineComponent({
7908
7925
  ...p.value
7909
7926
  };
7910
7927
  return v.value && (e.backdropFilter = "blur(20px)", e.webkitBackdropFilter = "blur(20px)"), e;
7911
- }), N = (e) => {
7928
+ }), no = (e) => {
7912
7929
  let t;
7913
7930
  return t = v.value ? Border.only({ bottom: BorderSide({
7914
7931
  width: 1,
@@ -7924,28 +7941,28 @@ var FlueConfigProvider_default = /* @__PURE__ */ defineComponent({
7924
7941
  vertical: 12
7925
7942
  })
7926
7943
  };
7927
- }, P = (e) => {
7944
+ }, ro = (e) => {
7928
7945
  let t = e.value === r.modelValue;
7929
7946
  return TextStyle({
7930
7947
  fontSize: 16,
7931
7948
  color: t ? T.value : Colors.black87,
7932
7949
  fontWeight: t ? FontWeight.w500 : FontWeight.w400
7933
7950
  });
7934
- }, F = (e) => r.multiple ? Array.isArray(r.modelValue) && r.modelValue.includes(e.value) : e.value === r.modelValue, L = () => {
7951
+ }, P = (e) => r.multiple ? Array.isArray(r.modelValue) && r.modelValue.includes(e.value) : e.value === r.modelValue, F = () => {
7935
7952
  let e = f.value?.$el || f.value;
7936
7953
  if (!e || !e.getBoundingClientRect) return;
7937
7954
  let t = e.getBoundingClientRect(), { innerWidth: n, innerHeight: i } = window, a = i - t.bottom, o = t.top, s = t.left, c = n - t.right, l = {}, u = "top", d = "center";
7938
7955
  a < 250 && o > a ? (l.bottom = "100%", l.top = "auto", u = "bottom", l.marginBottom = `${r.offset.y}px`) : (l.top = "100%", l.bottom = "auto", u = "top", l.marginTop = `${r.offset.y}px`), s < 100 ? (l.left = "0", l.right = "auto", l.transform = "none", d = "left", l.marginLeft = `${r.offset.x}px`) : c < 100 ? (l.right = "0", l.left = "auto", l.transform = "none", d = "right", l.marginRight = `${-r.offset.x}px`) : (l.left = "50%", l.right = "auto", l.transform = "translateX(-50%)", d = "center", l.marginLeft = `${r.offset.x}px`), _.value = `${u} ${d}`, p.value = l;
7939
- }, R = async () => {
7940
- o.value || L(), o.value = !o.value;
7941
- }, z = () => {
7956
+ }, I = async () => {
7957
+ o.value || F(), o.value = !o.value;
7958
+ }, L = () => {
7942
7959
  o.value = !1;
7943
- }, B = (e) => {
7960
+ }, R = (e) => {
7944
7961
  if (r.multiple) {
7945
7962
  let t = Array.isArray(r.modelValue) ? [...r.modelValue] : [], n = t.indexOf(e.value);
7946
7963
  n === -1 ? t.push(e.value) : t.splice(n, 1), a("update:modelValue", t), a("change", t);
7947
- } else a("update:modelValue", e.value), a("change", e.value), z();
7948
- }, V = (e, t) => {
7964
+ } else a("update:modelValue", e.value), a("change", e.value), L();
7965
+ }, z = (e, t) => {
7949
7966
  let n = e;
7950
7967
  n.style.transformOrigin = _.value;
7951
7968
  let r = (n.style.transform || "").trim();
@@ -7961,7 +7978,7 @@ var FlueConfigProvider_default = /* @__PURE__ */ defineComponent({
7961
7978
  easing: "cubic-bezier(0.175, 0.885, 0.32, 1.275)"
7962
7979
  };
7963
7980
  n.animate(i, a).onfinish = t;
7964
- }, H = (e, t) => {
7981
+ }, B = (e, t) => {
7965
7982
  let n = e;
7966
7983
  n.style.transformOrigin = _.value;
7967
7984
  let r = (n.style.transform || "").trim();
@@ -7983,7 +8000,7 @@ var FlueConfigProvider_default = /* @__PURE__ */ defineComponent({
7983
8000
  ref: f
7984
8001
  }, {
7985
8002
  default: withCtx(() => [
7986
- createVNode(GestureDetector_default, { onTap: R }, {
8003
+ createVNode(GestureDetector_default, { onTap: I }, {
7987
8004
  default: withCtx(() => [createVNode(Container_default, {
7988
8005
  decoration: D.value,
7989
8006
  padding: E.value,
@@ -7997,7 +8014,7 @@ var FlueConfigProvider_default = /* @__PURE__ */ defineComponent({
7997
8014
  default: withCtx(() => [createTextVNode(toDisplayString(x.value), 1)]),
7998
8015
  _: 1
7999
8016
  }, 8, ["style"]), createVNode(Icon_default, {
8000
- icon: C.value,
8017
+ icon: S.value,
8001
8018
  color: w.value,
8002
8019
  size: 24
8003
8020
  }, null, 8, ["icon", "color"])]),
@@ -8015,17 +8032,17 @@ var FlueConfigProvider_default = /* @__PURE__ */ defineComponent({
8015
8032
  visible: o.value,
8016
8033
  color: "transparent",
8017
8034
  zIndex: 999,
8018
- onTap: z,
8035
+ onTap: L,
8019
8036
  position: "fixed"
8020
8037
  }, null, 8, ["visible"]),
8021
8038
  createVNode(Transition, {
8022
8039
  css: !1,
8023
- onEnter: V,
8024
- onLeave: H
8040
+ onEnter: z,
8041
+ onLeave: B
8025
8042
  }, {
8026
8043
  default: withCtx(() => [o.value ? (openBlock(), createElementBlock("div", {
8027
8044
  key: 0,
8028
- style: normalizeStyle(M.value)
8045
+ style: normalizeStyle(N.value)
8029
8046
  }, [createVNode(Container_default, {
8030
8047
  constraints: unref(j),
8031
8048
  decoration: O.value
@@ -8034,14 +8051,14 @@ var FlueConfigProvider_default = /* @__PURE__ */ defineComponent({
8034
8051
  key: t,
8035
8052
  onPanStart: (e) => c.value = t,
8036
8053
  onPanEnd: r[0] ||= (e) => c.value = -1,
8037
- onClick: (t) => B(e)
8054
+ onClick: (t) => R(e)
8038
8055
  }, {
8039
- default: withCtx(() => [createVNode(Container_default, mergeProps({ ref_for: !0 }, N(t)), {
8056
+ default: withCtx(() => [createVNode(Container_default, mergeProps({ ref_for: !0 }, no(t)), {
8040
8057
  default: withCtx(() => [createVNode(Row_default, { mainAxisAlignment: unref(MainAxisAlignment).spaceBetween }, {
8041
- default: withCtx(() => [createVNode(Text_default, { style: normalizeStyle(P(e)) }, {
8058
+ default: withCtx(() => [createVNode(Text_default, { style: normalizeStyle(ro(e)) }, {
8042
8059
  default: withCtx(() => [createTextVNode(toDisplayString(e.label), 1)]),
8043
8060
  _: 2
8044
- }, 1032, ["style"]), F(e) ? (openBlock(), createBlock(Icon_default, {
8061
+ }, 1032, ["style"]), P(e) ? (openBlock(), createBlock(Icon_default, {
8045
8062
  key: 0,
8046
8063
  icon: unref(Icons).check,
8047
8064
  size: 18,
@@ -8531,4 +8548,4 @@ function setDefaultVW(e) {
8531
8548
  function setTransform(e) {
8532
8549
  console.warn("setTransform is no longer supported. Please use <FlueConfigProvider :transform='transform'/> instead.");
8533
8550
  }
8534
- export { ActionChip_default as ActionChip, AlertDialog_default as AlertDialog, Align_default as Align, Alignment, AnimatedContainer_default as AnimatedContainer, AnimatedOpacity, Animation_default as AnimationWidget, Animator, AppBar_default as AppBar, AspectRatio_default as AspectRatio, AssetImage, BackdropFilter_default as BackdropFilter, BlurStyle, Border, BorderRadius, BorderSide, BottomNavigationBar_default as BottomNavigationBar, BottomSheet_default as BottomSheet, Box_default as Box, BoxAlignment, BoxConstraints, BoxDecoration, BoxFit, BoxShadow, BoxShape, Builder_default as Builder, Button_default as Button, ButtonStyle, ButtonStylePreset, Card_default as Card, Center_default as Center, Checkbox_default as Checkbox, CheckboxGroup_default as CheckboxGroup, Chip_default as Chip, ChoiceChip_default as ChoiceChip, CircleAvatar_default as CircleAvatar, CircularProgressIndicator_default as CircularProgressIndicator, Clip, ClipOval_default as ClipOval, ClipRRect_default as ClipRRect, Color, ColorUtils, Colors, Column_default as Column, ConstrainedBox_default as ConstrainedBox, Container_default as Container, CrossAxisAlignment, CupertinoActivityIndicator_default as CupertinoActivityIndicator, CupertinoColors, CupertinoContextMenu_default as CupertinoContextMenu, CupertinoNavigationBar_default as CupertinoNavigationBar, CupertinoPageScaffold_default as CupertinoPageScaffold, DecorationImage, Divider_default as Divider, Drawer_default as Drawer, DropdownButton_default as DropdownButton, EdgeInsets, ElevatedButton_default as ElevatedButton, Expanded_default as Expanded, Fixed_default as Fixed, FlexBox_default as FlexBox, FlexItem_default as FlexItem, FloatingLabelBehavior, FlueConfigProvider_default as FlueConfigProvider, FontStyle, FontWeight, GestureDetector_default as GestureDetector, GridView_default as GridView, Icon_default as Icon, IconButton_default as IconButton, Icons, IgnorePointer_default as IgnorePointer, Image_default as Image, ImageColorBackground_default as ImageColorBackground, ImageFilter, ImageProvider, ImageUtils, InkWell_default as InkWell, InputBorder, InputDecoration, LayoutBuilder_default as LayoutBuilder, LinearGradient, LinearProgressIndicator_default as LinearProgressIndicator, LiquidGlassDialog_default as LiquidGlassDialog, ListTile_default as ListTile, ListView_default as ListView, MainAxisAlignment, Matrix4, MediaQuery_default as MediaQuery, MediaQueryKey, MemoryImage, Modal_default as Modal, NetworkImage, NoInputBorder, Offset, Opacity, Orientation, OutlineInputBorder, OutlinedButton_default as OutlinedButton, Overlay_default as Overlay, Padding_default as Padding, PopupMenuButton_default as PopupMenuButton, Positioned_default as Positioned, RadialGradient, Radio_default as Radio, RadioGroup_default as RadioGroup, RadioListTile_default as RadioListTile, RangeSlider_default as RangeSlider, RatingBar_default as RatingBar, RefreshIndicator_default as RefreshIndicator, Row_default as Row, SafeArea_default as SafeArea, Scaffold_default as Scaffold, ScrollView_default as ScrollView, SegmentedControl_default as SegmentedControl, Size, SizedBox_default as SizedBox, Slider_default as Slider, SlidingSegmentedControl_default as SlidingSegmentedControl, SnackBar, Spacer_default as Spacer, Stack_default as Stack, StackFit, Sticky_default as Sticky, StyleProvider, Switch_default as Switch, TabBar_default as TabBar, TabBarView_default as TabBarView, Table_default as Table, Text_default as Text, TextAlign, TextArea_default as TextArea, TextBaseline, TextButton_default as TextButton, TextButtonWithIcon_default as TextButtonWithIcon, TextDecoration, TextDecorationStyle, TextDirection, TextField_default as TextField, TextOverflow, TextStyle, TextStylePreset, TileMode, Toast, Toast as toast, Transform_default as Transform, UnderlineInputBorder, Upload_default as Upload, Wrap_default as Wrap, animationToStyle, borderRadiusToStyle, borderSideToStyle, borderToStyle, boxConstraintsToStyle, boxDecorationToStyle, boxShadowToCSS, buttonStyleToStyle, computeLuminance, createAssetImageProvider, createNetworkImageProvider, darken, decorationImageToStyle, defineKeyframes, edgeInsetsToStyle, extractDominantColor, hideToast, isBorderRadius, isBorderSide, isBorders, isBoxConstraints, isBoxDecoration, isBoxShadow, isEdgeInsets, isImageFilter, isImageProvider, isInputDecoration, isTextStyle, keep, lighten, marginToStyle, matrix4ToCSSStyle, normalizeSrc, paddingToStyle, px2vw, registerKeyframes, resolveColor, setAssetBaseURL, setDefaultVW, setTransform, showAlertDialog, showLiquidGlassDialog, showToast, sizeToStyle, textStyleToStyle, useMediaQuery, withAlpha, withBlue, withGreen, withOpacity, withRed };
8551
+ export { ActionChip_default as ActionChip, AlertDialog_default as AlertDialog, Align_default as Align, Alignment, AnimatedContainer_default as AnimatedContainer, AnimatedOpacity, Animation_default as AnimationWidget, Animator, AppBar_default as AppBar, AspectRatio_default as AspectRatio, AssetImage, BackdropFilter_default as BackdropFilter, BlurStyle, Border, BorderRadius, BorderSide, BottomNavigationBar_default as BottomNavigationBar, BottomSheet_default as BottomSheet, Box_default as Box, BoxAlignment, BoxConstraints, BoxDecoration, BoxFit, BoxShadow, BoxShape, Builder_default as Builder, Button_default as Button, ButtonStyle, ButtonStylePreset, Card_default as Card, Center_default as Center, Checkbox_default as Checkbox, CheckboxGroup_default as CheckboxGroup, Chip_default as Chip, ChoiceChip_default as ChoiceChip, CircleAvatar_default as CircleAvatar, CircularProgressIndicator_default as CircularProgressIndicator, Clip, ClipOval_default as ClipOval, ClipRRect_default as ClipRRect, Color, ColorUtils, Colors, Column_default as Column, ConstrainedBox_default as ConstrainedBox, Container_default as Container, CrossAxisAlignment, CupertinoActivityIndicator_default as CupertinoActivityIndicator, CupertinoColors, CupertinoContextMenu_default as CupertinoContextMenu, CupertinoNavigationBar_default as CupertinoNavigationBar, CupertinoPageScaffold_default as CupertinoPageScaffold, DecorationImage, Divider_default as Divider, Drawer_default as Drawer, DropdownButton_default as DropdownButton, EdgeInsets, ElevatedButton_default as ElevatedButton, Expanded_default as Expanded, Fixed_default as Fixed, FlexBox_default as FlexBox, FlexItem_default as FlexItem, FloatingLabelBehavior, FlueConfigProvider_default as FlueConfigProvider, FontStyle, FontWeight, GestureDetector_default as GestureDetector, GridView_default as GridView, Icon_default as Icon, IconButton_default as IconButton, Icons, IgnorePointer_default as IgnorePointer, Image_default as Image, ImageColorBackground_default as ImageColorBackground, ImageFilter, ImageProvider, ImageUtils, InkWell_default as InkWell, InputBorder, InputDecoration, LayoutBuilder_default as LayoutBuilder, LinearGradient, LinearProgressIndicator_default as LinearProgressIndicator, LiquidGlassDialog_default as LiquidGlassDialog, ListTile_default as ListTile, ListView_default as ListView, MainAxisAlignment, Matrix4, MediaQuery_default as MediaQuery, MediaQueryKey, MemoryImage, Modal_default as Modal, NetworkImage, NoInputBorder, Offset, Opacity, Orientation, OutlineInputBorder, OutlinedButton_default as OutlinedButton, Overlay_default as Overlay, Padding_default as Padding, PopupMenuButton_default as PopupMenuButton, Positioned_default as Positioned, RadialGradient, Radio_default as Radio, RadioGroup_default as RadioGroup, RadioListTile_default as RadioListTile, RangeSlider_default as RangeSlider, RatingBar_default as RatingBar, RefreshIndicator_default as RefreshIndicator, Row_default as Row, SafeArea_default as SafeArea, Scaffold_default as Scaffold, ScrollView_default as ScrollView, SegmentedControl_default as SegmentedControl, Size, SizedBox_default as SizedBox, Slider_default as Slider, SlidingSegmentedControl_default as SlidingSegmentedControl, SnackBar, Spacer_default as Spacer, Stack_default as Stack, StackFit, Sticky_default as Sticky, StyleProvider, Switch_default as Switch, TabBar_default as TabBar, TabBarView_default as TabBarView, Table_default as Table, Text_default as Text, TextAlign, TextArea_default as TextArea, TextBaseline, TextButton_default as TextButton, TextButtonWithIcon_default as TextButtonWithIcon, TextDecoration, TextDecorationStyle, TextDirection, TextField_default as TextField, TextOverflow, TextStyle, TextStylePreset, TileMode, Toast, Toast as toast, Transform_default as Transform, UnderlineInputBorder, Upload_default as Upload, Wrap_default as Wrap, animationToStyle, borderRadiusToStyle, borderSideToStyle, borderToStyle, boxConstraintsToStyle, boxDecorationToStyle, boxShadowToCSS, buttonStyleToStyle, computeLuminance, createAssetImageProvider, createNetworkImageProvider, darken, decorationImageToStyle, defineKeyframes, edgeInsetsToStyle, extractDominantColor, hideToast, isBorderRadius, isBorderSide, isBorders, isBoxConstraints, isBoxDecoration, isBoxShadow, isEdgeInsets, isImageFilter, isImageProvider, isInputDecoration, isTextStyle, keep, lighten, marginToStyle, matrix4ToCSSStyle, normalizeSrc, paddingToStyle, px2vw, registerKeyframes, resolveColor, setAssetBaseURL, setDefaultVW, setTransform, showAlertDialog, showLiquidGlassDialog, showModal, showToast, sizeToStyle, textStyleToStyle, useMediaQuery, withAlpha, withBlue, withGreen, withOpacity, withRed };
@@ -0,0 +1,11 @@
1
+ import { Component, VNode } from 'vue';
2
+ import { ModalProps } from './Modal';
3
+ export interface ModalOptions extends Omit<ModalProps, "visible"> {
4
+ content?: string | Component | VNode;
5
+ contentProps?: Record<string, any>;
6
+ onClose?: () => void;
7
+ onAfterClose?: () => void;
8
+ }
9
+ export declare const showModal: (options: ModalOptions) => {
10
+ close: () => void;
11
+ };
@@ -1,4 +1,4 @@
1
- import { CSSProperties } from 'vue';
1
+ import { CSSProperties, ComputedRef } from 'vue';
2
2
  import { SizeType } from './Size';
3
3
  export declare function useZIndex(): number;
4
4
  export interface PositionProps {
@@ -21,4 +21,9 @@ export interface PositionProps {
21
21
  size?: SizeType;
22
22
  transform?: string;
23
23
  }
24
- export declare function usePositionStyle(props: PositionProps, position?: "absolute" | "fixed" | "sticky" | "relative"): import('vue').ComputedRef<CSSProperties>;
24
+ type CSSPositionType = "absolute" | "fixed" | "sticky" | "relative";
25
+ type CSSPositionProps = PositionProps & {
26
+ position?: CSSPositionType;
27
+ };
28
+ export declare function usePositionStyle(props: CSSPositionProps | ComputedRef<CSSPositionProps>, position?: CSSPositionType | ComputedRef<CSSPositionType>): ComputedRef<CSSProperties>;
29
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fluekit",
3
- "version": "2.8.0",
3
+ "version": "2.8.1",
4
4
  "description": "A Flutter-style Layout UI kit for Vue",
5
5
  "homepage": "https://fi2zz.github.io/fluekit/",
6
6
  "repository": {
@@ -36,6 +36,9 @@
36
36
  "vitest": "^4.0.16",
37
37
  "vue-tsc": "^3.1.4"
38
38
  },
39
+ "dependencies": {
40
+ "@vue/shared": "^3.5.27"
41
+ },
39
42
  "scripts": {
40
43
  "build": "vite build",
41
44
  "test": "vitest"