@touchvue/ui 1.0.0-beta.46 → 1.0.0-beta.48

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.
Files changed (46) hide show
  1. package/es/components/float/index.d.ts +15 -0
  2. package/es/components/float/src/Float.vue.d.ts +9 -0
  3. package/es/components/float/src/float.d.ts +4 -0
  4. package/es/components/grid/src/grid-item.vue.d.ts +2 -9
  5. package/es/components/scroll/index.d.ts +3 -3
  6. package/es/components/scroll/src/Scroll.vue.d.ts +1 -1
  7. package/es/components/select/src/select.d.ts +14 -0
  8. package/es/components/select/src/select.vue.d.ts +18 -0
  9. package/es/packages/components/float/src/Float.vue2.mjs +141 -122
  10. package/es/packages/components/float/src/Float.vue2.mjs.map +1 -1
  11. package/es/packages/components/float/src/float.mjs +2 -1
  12. package/es/packages/components/float/src/float.mjs.map +1 -1
  13. package/es/packages/components/grid/src/grid-item.vue2.mjs +9 -52
  14. package/es/packages/components/grid/src/grid-item.vue2.mjs.map +1 -1
  15. package/es/packages/components/select/src/hooks/use-select-class-style.mjs +3 -0
  16. package/es/packages/components/select/src/hooks/use-select-class-style.mjs.map +1 -1
  17. package/es/packages/components/select/src/select.mjs +14 -0
  18. package/es/packages/components/select/src/select.mjs.map +1 -1
  19. package/es/packages/components/select/src/select.vue2.mjs +28 -8
  20. package/es/packages/components/select/src/select.vue2.mjs.map +1 -1
  21. package/es/packages/hooks/useDevice.mjs.map +1 -1
  22. package/lib/components/float/index.d.ts +15 -0
  23. package/lib/components/float/src/Float.vue.d.ts +9 -0
  24. package/lib/components/float/src/float.d.ts +4 -0
  25. package/lib/components/grid/src/grid-item.vue.d.ts +2 -9
  26. package/lib/components/scroll/index.d.ts +3 -3
  27. package/lib/components/scroll/src/Scroll.vue.d.ts +1 -1
  28. package/lib/components/select/src/select.d.ts +14 -0
  29. package/lib/components/select/src/select.vue.d.ts +18 -0
  30. package/lib/packages/components/float/src/Float.vue2.js +140 -121
  31. package/lib/packages/components/float/src/Float.vue2.js.map +1 -1
  32. package/lib/packages/components/float/src/float.js +2 -1
  33. package/lib/packages/components/float/src/float.js.map +1 -1
  34. package/lib/packages/components/grid/src/grid-item.vue2.js +8 -51
  35. package/lib/packages/components/grid/src/grid-item.vue2.js.map +1 -1
  36. package/lib/packages/components/select/src/hooks/use-select-class-style.js +3 -0
  37. package/lib/packages/components/select/src/hooks/use-select-class-style.js.map +1 -1
  38. package/lib/packages/components/select/src/select.js +14 -0
  39. package/lib/packages/components/select/src/select.js.map +1 -1
  40. package/lib/packages/components/select/src/select.vue2.js +27 -7
  41. package/lib/packages/components/select/src/select.vue2.js.map +1 -1
  42. package/lib/packages/hooks/useDevice.js.map +1 -1
  43. package/package.json +1 -1
  44. package/theme/components/index.css +41 -3
  45. package/theme/index.css +41 -3
  46. package/theme/skin/default.css +41 -3
@@ -1 +1 @@
1
- {"version":3,"file":"useDevice.mjs","sources":["../../../../packages/hooks/useDevice.ts"],"sourcesContent":["import { ref, computed, onMounted, onUnmounted } from 'vue';\nimport { getMedia } from '@touchvue/utils';\n\n/**\n * 设备类型\n */\nexport type DeviceType = 'pc' | 'pad' | 'phone';\n\n/**\n * 全局设备检测管理器\n * 使用单例模式避免重复注册resize事件\n */\nclass DeviceManager {\n private static instance: DeviceManager;\n private deviceType = ref<DeviceType>(getMedia());\n private listeners = new Set<() => void>();\n private resizeHandler: (() => void) | null = null;\n\n private constructor() {\n this.initResizeListener();\n }\n\n static getInstance(): DeviceManager {\n if (!DeviceManager.instance) {\n DeviceManager.instance = new DeviceManager();\n }\n return DeviceManager.instance;\n }\n\n private initResizeListener() {\n if (typeof window !== 'undefined') {\n this.resizeHandler = () => {\n const newDeviceType = getMedia();\n if (this.deviceType.value !== newDeviceType) {\n this.deviceType.value = newDeviceType;\n // 通知所有监听器\n this.listeners.forEach(listener => listener());\n }\n };\n window.addEventListener('resize', this.resizeHandler);\n }\n }\n\n getDeviceType() {\n return this.deviceType;\n }\n\n addListener(listener: () => void) {\n this.listeners.add(listener);\n }\n\n removeListener(listener: () => void) {\n this.listeners.delete(listener);\n\n // 如果没有监听器了,移除resize事件\n if (this.listeners.size === 0 && this.resizeHandler && typeof window !== 'undefined') {\n window.removeEventListener('resize', this.resizeHandler);\n this.resizeHandler = null;\n }\n }\n\n destroy() {\n if (this.resizeHandler && typeof window !== 'undefined') {\n window.removeEventListener('resize', this.resizeHandler);\n }\n this.listeners.clear();\n this.resizeHandler = null;\n }\n}\n\n/**\n * 设备检测 Hook\n * 提供响应式的设备类型判断,替代 Vue2 中的 $phone、$pc、$pad\n * 使用单例模式避免重复注册resize事件监听器\n */\nexport function useDevice() {\n const manager = DeviceManager.getInstance();\n const deviceType = manager.getDeviceType();\n\n // 计算属性:是否为手机\n const isPhone = computed(() => deviceType.value === 'phone');\n\n // 计算属性:是否为平板\n const isPad = computed(() => deviceType.value === 'pad');\n\n // 计算属性:是否为PC\n const isPc = computed(() => deviceType.value === 'pc');\n\n // 计算属性:是否为移动设备(手机或平板)\n const isMobile = computed(() => deviceType.value === 'phone' || deviceType.value === 'pad');\n\n // 更新设备类型的回调\n const updateCallback = () => {\n // 这里不需要做任何事情,因为deviceType是响应式的\n // 当manager更新deviceType时,所有计算属性会自动更新\n };\n\n // 手动更新设备类型\n const updateDeviceType = () => {\n const newDeviceType = getMedia();\n if (deviceType.value !== newDeviceType) {\n // 直接更新manager中的deviceType\n (deviceType as any).value = newDeviceType;\n }\n };\n\n // 组件挂载时添加监听器\n onMounted(() => {\n manager.addListener(updateCallback);\n });\n\n // 组件卸载时移除监听器\n onUnmounted(() => {\n manager.removeListener(updateCallback);\n });\n\n return {\n // 设备类型(响应式)\n deviceType,\n\n // 响应式判断\n isPhone,\n isPad,\n isPc,\n isMobile,\n\n // 手动更新设备类型\n updateDeviceType,\n };\n}\n\n/**\n * 获取当前设备类型(非响应式)\n * @returns 设备类型字符串\n */\nexport function getDeviceType(): DeviceType {\n return getMedia();\n}\n\n/**\n * 判断是否为手机设备(非响应式)\n * @returns 是否为手机\n */\nexport function isPhoneDevice(): boolean {\n return getMedia() === 'phone';\n}\n\n/**\n * 判断是否为平板设备(非响应式)\n * @returns 是否为平板\n */\nexport function isPadDevice(): boolean {\n return getMedia() === 'pad';\n}\n\n/**\n * 判断是否为PC设备(非响应式)\n * @returns 是否为PC\n */\nexport function isPcDevice(): boolean {\n return getMedia() === 'pc';\n}\n\n/**\n * 判断是否为移动设备(非响应式)\n * @returns 是否为移动设备(手机或平板)\n */\nexport function isMobileDevice(): boolean {\n const device = getMedia();\n return device === 'phone' || device === 'pad';\n}\n"],"names":[],"mappings":";;;AAYA,MAAM,aAAc,CAAA;AAAA,EAMV,WAAc,GAAA;AAJtB,IAAQ,IAAA,CAAA,UAAA,GAAa,GAAgB,CAAA,QAAA,EAAU,CAAA,CAAA;AAC/C,IAAQ,IAAA,CAAA,SAAA,uBAAgB,GAAgB,EAAA,CAAA;AACxC,IAAA,IAAA,CAAQ,aAAqC,GAAA,IAAA,CAAA;AAG3C,IAAA,IAAA,CAAK,kBAAmB,EAAA,CAAA;AAAA,GAC1B;AAAA,EAEA,OAAO,WAA6B,GAAA;AAClC,IAAI,IAAA,CAAC,cAAc,QAAU,EAAA;AAC3B,MAAc,aAAA,CAAA,QAAA,GAAW,IAAI,aAAc,EAAA,CAAA;AAAA,KAC7C;AACA,IAAA,OAAO,aAAc,CAAA,QAAA,CAAA;AAAA,GACvB;AAAA,EAEQ,kBAAqB,GAAA;AAC3B,IAAI,IAAA,OAAO,WAAW,WAAa,EAAA;AACjC,MAAA,IAAA,CAAK,gBAAgB,MAAM;AACzB,QAAA,MAAM,gBAAgB,QAAS,EAAA,CAAA;AAC/B,QAAI,IAAA,IAAA,CAAK,UAAW,CAAA,KAAA,KAAU,aAAe,EAAA;AAC3C,UAAA,IAAA,CAAK,WAAW,KAAQ,GAAA,aAAA,CAAA;AAExB,UAAA,IAAA,CAAK,SAAU,CAAA,OAAA,CAAQ,CAAY,QAAA,KAAA,QAAA,EAAU,CAAA,CAAA;AAAA,SAC/C;AAAA,OACF,CAAA;AACA,MAAO,MAAA,CAAA,gBAAA,CAAiB,QAAU,EAAA,IAAA,CAAK,aAAa,CAAA,CAAA;AAAA,KACtD;AAAA,GACF;AAAA,EAEA,aAAgB,GAAA;AACd,IAAA,OAAO,IAAK,CAAA,UAAA,CAAA;AAAA,GACd;AAAA,EAEA,YAAY,QAAsB,EAAA;AAChC,IAAK,IAAA,CAAA,SAAA,CAAU,IAAI,QAAQ,CAAA,CAAA;AAAA,GAC7B;AAAA,EAEA,eAAe,QAAsB,EAAA;AACnC,IAAK,IAAA,CAAA,SAAA,CAAU,OAAO,QAAQ,CAAA,CAAA;AAG9B,IAAI,IAAA,IAAA,CAAK,UAAU,IAAS,KAAA,CAAA,IAAK,KAAK,aAAiB,IAAA,OAAO,WAAW,WAAa,EAAA;AACpF,MAAO,MAAA,CAAA,mBAAA,CAAoB,QAAU,EAAA,IAAA,CAAK,aAAa,CAAA,CAAA;AACvD,MAAA,IAAA,CAAK,aAAgB,GAAA,IAAA,CAAA;AAAA,KACvB;AAAA,GACF;AAAA,EAEA,OAAU,GAAA;AACR,IAAA,IAAI,IAAK,CAAA,aAAA,IAAiB,OAAO,MAAA,KAAW,WAAa,EAAA;AACvD,MAAO,MAAA,CAAA,mBAAA,CAAoB,QAAU,EAAA,IAAA,CAAK,aAAa,CAAA,CAAA;AAAA,KACzD;AACA,IAAA,IAAA,CAAK,UAAU,KAAM,EAAA,CAAA;AACrB,IAAA,IAAA,CAAK,aAAgB,GAAA,IAAA,CAAA;AAAA,GACvB;AACF,CAAA;AAOO,SAAS,SAAY,GAAA;AAC1B,EAAM,MAAA,OAAA,GAAU,cAAc,WAAY,EAAA,CAAA;AAC1C,EAAM,MAAA,UAAA,GAAa,QAAQ,aAAc,EAAA,CAAA;AAGzC,EAAA,MAAM,OAAU,GAAA,QAAA,CAAS,MAAM,UAAA,CAAW,UAAU,OAAO,CAAA,CAAA;AAG3D,EAAA,MAAM,KAAQ,GAAA,QAAA,CAAS,MAAM,UAAA,CAAW,UAAU,KAAK,CAAA,CAAA;AAGvD,EAAA,MAAM,IAAO,GAAA,QAAA,CAAS,MAAM,UAAA,CAAW,UAAU,IAAI,CAAA,CAAA;AAGrD,EAAM,MAAA,QAAA,GAAW,SAAS,MAAM,UAAA,CAAW,UAAU,OAAW,IAAA,UAAA,CAAW,UAAU,KAAK,CAAA,CAAA;AAG1F,EAAA,MAAM,iBAAiB,MAAM;AAAA,GAG7B,CAAA;AAGA,EAAA,MAAM,mBAAmB,MAAM;AAC7B,IAAA,MAAM,gBAAgB,QAAS,EAAA,CAAA;AAC/B,IAAI,IAAA,UAAA,CAAW,UAAU,aAAe,EAAA;AAEtC,MAAC,WAAmB,KAAQ,GAAA,aAAA,CAAA;AAAA,KAC9B;AAAA,GACF,CAAA;AAGA,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,OAAA,CAAQ,YAAY,cAAc,CAAA,CAAA;AAAA,GACnC,CAAA,CAAA;AAGD,EAAA,WAAA,CAAY,MAAM;AAChB,IAAA,OAAA,CAAQ,eAAe,cAAc,CAAA,CAAA;AAAA,GACtC,CAAA,CAAA;AAED,EAAO,OAAA;AAAA;AAAA,IAEL,UAAA;AAAA;AAAA,IAGA,OAAA;AAAA,IACA,KAAA;AAAA,IACA,IAAA;AAAA,IACA,QAAA;AAAA;AAAA,IAGA,gBAAA;AAAA,GACF,CAAA;AACF,CAAA;AAMO,SAAS,aAA4B,GAAA;AAC1C,EAAA,OAAO,QAAS,EAAA,CAAA;AAClB,CAAA;AAMO,SAAS,aAAyB,GAAA;AACvC,EAAA,OAAO,UAAe,KAAA,OAAA,CAAA;AACxB,CAAA;AAMO,SAAS,WAAuB,GAAA;AACrC,EAAA,OAAO,UAAe,KAAA,KAAA,CAAA;AACxB,CAAA;AAMO,SAAS,UAAsB,GAAA;AACpC,EAAA,OAAO,UAAe,KAAA,IAAA,CAAA;AACxB,CAAA;AAMO,SAAS,cAA0B,GAAA;AACxC,EAAA,MAAM,SAAS,QAAS,EAAA,CAAA;AACxB,EAAO,OAAA,MAAA,KAAW,WAAW,MAAW,KAAA,KAAA,CAAA;AAC1C;;;;"}
1
+ {"version":3,"file":"useDevice.mjs","sources":["../../../../packages/hooks/useDevice.ts"],"sourcesContent":["import { ref, computed, onMounted, onUnmounted } from 'vue'\nimport { getMedia } from '@touchvue/utils'\n\n/**\n * 设备类型\n */\nexport type DeviceType = 'pc' | 'pad' | 'phone'\n\n/**\n * 全局设备检测管理器\n * 使用单例模式避免重复注册resize事件\n */\nclass DeviceManager {\n\tprivate static instance: DeviceManager\n\tprivate deviceType = ref<DeviceType>(getMedia())\n\tprivate listeners = new Set<() => void>()\n\tprivate resizeHandler: (() => void) | null = null\n\n\tprivate constructor() {\n\t\tthis.initResizeListener()\n\t}\n\n\tstatic getInstance(): DeviceManager {\n\t\tif (!DeviceManager.instance) {\n\t\t\tDeviceManager.instance = new DeviceManager()\n\t\t}\n\t\treturn DeviceManager.instance\n\t}\n\n\tprivate initResizeListener() {\n\t\tif (typeof window !== 'undefined') {\n\t\t\tthis.resizeHandler = () => {\n\t\t\t\tconst newDeviceType = getMedia()\n\t\t\t\tif (this.deviceType.value !== newDeviceType) {\n\t\t\t\t\tthis.deviceType.value = newDeviceType\n\t\t\t\t\t// 通知所有监听器\n\t\t\t\t\tthis.listeners.forEach(listener => listener())\n\t\t\t\t}\n\t\t\t}\n\t\t\twindow.addEventListener('resize', this.resizeHandler)\n\t\t}\n\t}\n\n\tgetDeviceType() {\n\t\treturn this.deviceType\n\t}\n\n\taddListener(listener: () => void) {\n\t\tthis.listeners.add(listener)\n\t}\n\n\tremoveListener(listener: () => void) {\n\t\tthis.listeners.delete(listener)\n\n\t\t// 如果没有监听器了,移除resize事件\n\t\tif (this.listeners.size === 0 && this.resizeHandler && typeof window !== 'undefined') {\n\t\t\twindow.removeEventListener('resize', this.resizeHandler)\n\t\t\tthis.resizeHandler = null\n\t\t}\n\t}\n\n\tdestroy() {\n\t\tif (this.resizeHandler && typeof window !== 'undefined') {\n\t\t\twindow.removeEventListener('resize', this.resizeHandler)\n\t\t}\n\t\tthis.listeners.clear()\n\t\tthis.resizeHandler = null\n\t}\n}\n\n/**\n * 设备检测 Hook\n * 提供响应式的设备类型判断,替代 Vue2 中的 $phone、$pc、$pad\n * 使用单例模式避免重复注册resize事件监听器\n */\nexport function useDevice() {\n\tconst manager = DeviceManager.getInstance()\n\tconst deviceType = manager.getDeviceType()\n\n\t// 计算属性:是否为手机\n\tconst isPhone = computed(() => deviceType.value === 'phone')\n\n\t// 计算属性:是否为平板\n\tconst isPad = computed(() => deviceType.value === 'pad')\n\n\t// 计算属性:是否为PC\n\tconst isPc = computed(() => deviceType.value === 'pc')\n\n\t// 计算属性:是否为移动设备(手机或平板)\n\tconst isMobile = computed(() => deviceType.value === 'phone' || deviceType.value === 'pad')\n\n\t// 更新设备类型的回调\n\tconst updateCallback = () => {\n\t\t// 这里不需要做任何事情,因为deviceType是响应式的\n\t\t// 当manager更新deviceType时,所有计算属性会自动更新\n\t}\n\n\t// 手动更新设备类型\n\tconst updateDeviceType = () => {\n\t\tconst newDeviceType = getMedia()\n\t\tif (deviceType.value !== newDeviceType) {\n\t\t\t// 直接更新manager中的deviceType\n\t\t\t;(deviceType as any).value = newDeviceType\n\t\t}\n\t}\n\n\t// 组件挂载时添加监听器\n\tonMounted(() => {\n\t\tmanager.addListener(updateCallback)\n\t})\n\n\t// 组件卸载时移除监听器\n\tonUnmounted(() => {\n\t\tmanager.removeListener(updateCallback)\n\t})\n\n\treturn {\n\t\t// 设备类型(响应式)\n\t\tdeviceType,\n\n\t\t// 响应式判断\n\t\tisPhone,\n\t\tisPad,\n\t\tisPc,\n\t\tisMobile,\n\n\t\t// 手动更新设备类型\n\t\tupdateDeviceType\n\t}\n}\n\n/**\n * 获取当前设备类型(非响应式)\n * @returns 设备类型字符串\n */\nexport function getDeviceType(): DeviceType {\n\treturn getMedia()\n}\n\n/**\n * 判断是否为手机设备(非响应式)\n * @returns 是否为手机\n */\nexport function isPhoneDevice(): boolean {\n\treturn getMedia() === 'phone'\n}\n\n/**\n * 判断是否为平板设备(非响应式)\n * @returns 是否为平板\n */\nexport function isPadDevice(): boolean {\n\treturn getMedia() === 'pad'\n}\n\n/**\n * 判断是否为PC设备(非响应式)\n * @returns 是否为PC\n */\nexport function isPcDevice(): boolean {\n\treturn getMedia() === 'pc'\n}\n\n/**\n * 判断是否为移动设备(非响应式)\n * @returns 是否为移动设备(手机或平板)\n */\nexport function isMobileDevice(): boolean {\n\tconst device = getMedia()\n\treturn device === 'phone' || device === 'pad'\n}\n"],"names":[],"mappings":"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"}
@@ -76,6 +76,10 @@ export declare const ToFloat: import("@touchvue/ui/lib/utils").SFCWithInstall<{
76
76
  type: BooleanConstructor;
77
77
  default: boolean;
78
78
  };
79
+ speed: {
80
+ type: (NumberConstructor | StringConstructor)[];
81
+ default: number;
82
+ };
79
83
  }>> & Readonly<{}>, {
80
84
  open: (by?: any) => void;
81
85
  close: (e?: Event) => void;
@@ -101,6 +105,7 @@ export declare const ToFloat: import("@touchvue/ui/lib/utils").SFCWithInstall<{
101
105
  mask: boolean;
102
106
  dx: string | number;
103
107
  dy: string | number;
108
+ speed: string | number;
104
109
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
105
110
  P: {};
106
111
  B: {};
@@ -185,6 +190,10 @@ export declare const ToFloat: import("@touchvue/ui/lib/utils").SFCWithInstall<{
185
190
  type: BooleanConstructor;
186
191
  default: boolean;
187
192
  };
193
+ speed: {
194
+ type: (NumberConstructor | StringConstructor)[];
195
+ default: number;
196
+ };
188
197
  }>> & Readonly<{}>, {
189
198
  open: (by?: any) => void;
190
199
  close: (e?: Event) => void;
@@ -210,6 +219,7 @@ export declare const ToFloat: import("@touchvue/ui/lib/utils").SFCWithInstall<{
210
219
  mask: boolean;
211
220
  dx: string | number;
212
221
  dy: string | number;
222
+ speed: string | number;
213
223
  }>;
214
224
  __isFragment?: never;
215
225
  __isTeleport?: never;
@@ -291,6 +301,10 @@ export declare const ToFloat: import("@touchvue/ui/lib/utils").SFCWithInstall<{
291
301
  type: BooleanConstructor;
292
302
  default: boolean;
293
303
  };
304
+ speed: {
305
+ type: (NumberConstructor | StringConstructor)[];
306
+ default: number;
307
+ };
294
308
  }>> & Readonly<{}>, {
295
309
  open: (by?: any) => void;
296
310
  close: (e?: Event) => void;
@@ -316,6 +330,7 @@ export declare const ToFloat: import("@touchvue/ui/lib/utils").SFCWithInstall<{
316
330
  mask: boolean;
317
331
  dx: string | number;
318
332
  dy: string | number;
333
+ speed: string | number;
319
334
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
320
335
  $slots: {
321
336
  default?(_: {}): any;
@@ -82,6 +82,10 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
82
82
  type: BooleanConstructor;
83
83
  default: boolean;
84
84
  };
85
+ speed: {
86
+ type: (NumberConstructor | StringConstructor)[];
87
+ default: number;
88
+ };
85
89
  }>, {
86
90
  open: typeof open;
87
91
  close: typeof close;
@@ -164,6 +168,10 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
164
168
  type: BooleanConstructor;
165
169
  default: boolean;
166
170
  };
171
+ speed: {
172
+ type: (NumberConstructor | StringConstructor)[];
173
+ default: number;
174
+ };
167
175
  }>> & Readonly<{}>, {
168
176
  mode: string;
169
177
  left: string | number;
@@ -184,6 +192,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
184
192
  mask: boolean;
185
193
  dx: string | number;
186
194
  dy: string | number;
195
+ speed: string | number;
187
196
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
188
197
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
189
198
  export default _default;
@@ -76,6 +76,10 @@ export declare const floatProps: {
76
76
  type: BooleanConstructor;
77
77
  default: boolean;
78
78
  };
79
+ speed: {
80
+ type: (NumberConstructor | StringConstructor)[];
81
+ default: number;
82
+ };
79
83
  };
80
84
  export type FloatProps = ExtractPropTypes<typeof floatProps>;
81
85
  export declare const floatEmits: string[];
@@ -1,20 +1,13 @@
1
- export interface GridProps {
2
- space?: number | string;
3
- spaceX?: number | string;
4
- spaceY?: number | string;
5
- }
6
1
  export interface Props {
7
- merge?: number | string;
8
2
  width?: number | string;
9
- side?: boolean;
3
+ flex?: boolean;
10
4
  }
11
5
  declare function __VLS_template(): {
12
6
  default?(_: {}): any;
13
7
  };
14
8
  declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
9
+ flex: boolean;
15
10
  width: number | string;
16
- merge: number | string;
17
- side: boolean;
18
11
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
19
12
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
20
13
  export default _default;
@@ -88,8 +88,8 @@ export declare const ToScroll: import("@touchvue/ui/lib/utils").SFCWithInstall<{
88
88
  modelValue: string | number;
89
89
  bottom: string | number;
90
90
  top: string | number;
91
- virtual: boolean;
92
91
  speed: number;
92
+ virtual: boolean;
93
93
  barDisplay: string;
94
94
  except: string;
95
95
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
@@ -180,8 +180,8 @@ export declare const ToScroll: import("@touchvue/ui/lib/utils").SFCWithInstall<{
180
180
  modelValue: string | number;
181
181
  bottom: string | number;
182
182
  top: string | number;
183
- virtual: boolean;
184
183
  speed: number;
184
+ virtual: boolean;
185
185
  barDisplay: string;
186
186
  except: string;
187
187
  }>;
@@ -277,8 +277,8 @@ export declare const ToScroll: import("@touchvue/ui/lib/utils").SFCWithInstall<{
277
277
  modelValue: string | number;
278
278
  bottom: string | number;
279
279
  top: string | number;
280
- virtual: boolean;
281
280
  speed: number;
281
+ virtual: boolean;
282
282
  barDisplay: string;
283
283
  except: string;
284
284
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
@@ -145,8 +145,8 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
145
145
  modelValue: string | number;
146
146
  bottom: string | number;
147
147
  top: string | number;
148
- virtual: boolean;
149
148
  speed: number;
149
+ virtual: boolean;
150
150
  barDisplay: string;
151
151
  except: string;
152
152
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -431,6 +431,20 @@ export declare const selectProps: {
431
431
  type: StringConstructor;
432
432
  default: string;
433
433
  };
434
+ /**
435
+ * 是否开启远程搜索
436
+ */
437
+ remote: {
438
+ type: BooleanConstructor;
439
+ default: boolean;
440
+ };
441
+ /**
442
+ * 远程搜索方法
443
+ */
444
+ remoteMethod: {
445
+ type: FunctionConstructor;
446
+ default: any;
447
+ };
434
448
  };
435
449
  export type SelectProps = ExtractPropTypes<typeof selectProps>;
436
450
  export {};
@@ -242,6 +242,14 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
242
242
  type: StringConstructor;
243
243
  default: string;
244
244
  };
245
+ remote: {
246
+ type: BooleanConstructor;
247
+ default: boolean;
248
+ };
249
+ remoteMethod: {
250
+ type: FunctionConstructor;
251
+ default: any;
252
+ };
245
253
  }>, {
246
254
  closeLayer: () => void;
247
255
  setSelected: (val: any) => void;
@@ -486,6 +494,14 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
486
494
  type: StringConstructor;
487
495
  default: string;
488
496
  };
497
+ remote: {
498
+ type: BooleanConstructor;
499
+ default: boolean;
500
+ };
501
+ remoteMethod: {
502
+ type: FunctionConstructor;
503
+ default: any;
504
+ };
489
505
  }>> & Readonly<{
490
506
  onSelect?: (value: string | number) => any;
491
507
  onChange?: (value: SelectValueType, option: any) => any;
@@ -550,6 +566,8 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
550
566
  focusWhenClear: boolean;
551
567
  beforeChange: Function;
552
568
  valueType: string;
569
+ remote: boolean;
570
+ remoteMethod: Function;
553
571
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
554
572
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
555
573
  export default _default;
@@ -63,6 +63,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
63
63
  arr.push("is-mask");
64
64
  return arr;
65
65
  });
66
+ const transitionTransform = vue.computed(() => `transform ${props.speed}ms ease-out`);
66
67
  const setStyle = vue.computed(() => {
67
68
  var _a;
68
69
  const obj = {};
@@ -151,6 +152,10 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
151
152
  } else if (link2) {
152
153
  if (wrapper.value)
153
154
  wrapper.value.style.height = "";
155
+ if (el.value) {
156
+ el.value.style.transition = "none";
157
+ el.value.style.transform = "";
158
+ }
154
159
  vue.nextTick(() => {
155
160
  var _a, _b;
156
161
  if (!props.width && el.value) {
@@ -213,71 +218,77 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
213
218
  }
214
219
  }
215
220
  }
216
- if (el.value === null)
217
- return;
218
- if (iposition.value === "top") {
219
- el.value.style.top = "";
220
- el.value.style.bottom = bottomSpace + linkHeight - 1 - dy + "px";
221
- }
222
- if (iposition.value === "bottom") {
223
- el.value.style.top = topSpace + linkHeight - 1 + dy + "px";
224
- el.value.style.bottom = "";
225
- }
226
- if (iposition.value === "top" || iposition.value === "bottom") {
227
- if (ialign.value === "left") {
228
- el.value.style.left = leftSpace + dx + "px";
229
- el.value.style.right = "";
230
- } else if (ialign.value === "center") {
231
- el.value.style.left = leftSpace - wrapperWidth / 2 + linkWidth / 2 + "px";
232
- el.value.style.right = "";
233
- } else {
234
- el.value.style.right = rightSpace - dx + "px";
235
- el.value.style.left = "";
236
- }
237
- }
238
- if (iposition.value === "left") {
239
- el.value.style.right = rightSpace + linkWidth - dx - 1 + "px";
240
- el.value.style.left = "";
241
- }
242
- if (iposition.value === "right") {
243
- el.value.style.left = leftSpace + linkWidth + dx - 1 + "px";
244
- el.value.style.right = "";
245
- }
246
- if (iposition.value === "left" || iposition.value === "right") {
247
- if (ialign.value === "bottom") {
221
+ if (el.value) {
222
+ if (iposition.value === "top") {
248
223
  el.value.style.top = "";
249
- el.value.style.bottom = bottomSpace - dy + "px";
250
- } else {
251
- el.value.style.top = topSpace + dy + "px";
224
+ el.value.style.bottom = bottomSpace + linkHeight - 1 - dy + "px";
225
+ }
226
+ if (iposition.value === "bottom") {
227
+ el.value.style.top = topSpace + linkHeight - 1 + dy + "px";
252
228
  el.value.style.bottom = "";
253
229
  }
254
- }
255
- if (iposition.value === "bottom") {
256
- useSpace = bottomSpace;
257
- origin.value = "top";
258
- } else if (iposition.value === "top") {
259
- useSpace = topSpace;
260
- origin.value = "bottom";
261
- } else {
262
- if (ialign.value === "bottom") {
263
- useSpace = topSpace + linkHeight;
264
- origin.value = "bottom";
265
- } else if (ialign.value === "top") {
266
- useSpace = bottomSpace + linkHeight;
230
+ if (iposition.value === "top" || iposition.value === "bottom") {
231
+ if (ialign.value === "left") {
232
+ el.value.style.left = leftSpace + dx + "px";
233
+ el.value.style.right = "";
234
+ } else if (ialign.value === "center") {
235
+ el.value.style.left = leftSpace - wrapperWidth / 2 + linkWidth / 2 + "px";
236
+ el.value.style.right = "";
237
+ } else {
238
+ el.value.style.right = rightSpace - dx + "px";
239
+ el.value.style.left = "";
240
+ }
241
+ }
242
+ if (iposition.value === "left") {
243
+ el.value.style.right = rightSpace + linkWidth - dx - 1 + "px";
244
+ el.value.style.left = "";
245
+ }
246
+ if (iposition.value === "right") {
247
+ el.value.style.left = leftSpace + linkWidth + dx - 1 + "px";
248
+ el.value.style.right = "";
249
+ }
250
+ if (iposition.value === "left" || iposition.value === "right") {
251
+ if (ialign.value === "bottom") {
252
+ el.value.style.top = "";
253
+ el.value.style.bottom = bottomSpace - dy + "px";
254
+ } else {
255
+ el.value.style.top = topSpace + dy + "px";
256
+ el.value.style.bottom = "";
257
+ }
258
+ }
259
+ if (iposition.value === "bottom") {
260
+ useSpace = bottomSpace;
267
261
  origin.value = "top";
262
+ } else if (iposition.value === "top") {
263
+ useSpace = topSpace;
264
+ origin.value = "bottom";
268
265
  } else {
269
- console.error("[ToFloat] \u6D6E\u5C42\u5BF9\u9F50\u65B9\u5F0F\u8BBE\u7F6E\u9519\u8BEF\uFF01position \u5728\u5DE6\u53F3\u4E24\u4FA7\u65F6\uFF0C\u5BF9\u9F50\u65B9\u5F0F\u5E94\u662F\u9876\u90E8\u6216\u5E95\u90E8");
266
+ if (ialign.value === "bottom") {
267
+ useSpace = topSpace + linkHeight;
268
+ origin.value = "bottom";
269
+ } else if (ialign.value === "top") {
270
+ useSpace = bottomSpace + linkHeight;
271
+ origin.value = "top";
272
+ } else {
273
+ console.error("[ToFloat] \u6D6E\u5C42\u5BF9\u9F50\u65B9\u5F0F\u8BBE\u7F6E\u9519\u8BEF\uFF01position \u5728\u5DE6\u53F3\u4E24\u4FA7\u65F6\uFF0C\u5BF9\u9F50\u65B9\u5F0F\u5E94\u662F\u9876\u90E8\u6216\u5E95\u90E8");
274
+ }
275
+ }
276
+ if (useSpace < wrapperHeight && wrapper.value) {
277
+ isOver.value = true;
278
+ wrapper.value.style.height = useSpace + "px";
279
+ }
280
+ if (link2) {
281
+ const ratio = link2.getBoundingClientRect().width / link2.offsetWidth;
282
+ const ratio2 = Number(getComputedStyle(link2).fontSize.trim().toLowerCase().replace(/px$/, "")) / Number(getComputedStyle(document.body).fontSize.trim().toLowerCase().replace(/px$/, ""));
283
+ size.value = ratio * ratio2;
270
284
  }
271
285
  }
272
- if (useSpace < wrapperHeight && wrapper.value) {
273
- isOver.value = true;
274
- wrapper.value.style.height = useSpace + "px";
275
- }
276
- if (link2) {
277
- const ratio = link2.getBoundingClientRect().width / link2.offsetWidth;
278
- const ratio2 = Number(getComputedStyle(link2).fontSize.trim().toLowerCase().replace(/px$/, "")) / Number(getComputedStyle(document.body).fontSize.trim().toLowerCase().replace(/px$/, ""));
279
- size.value = ratio * ratio2;
280
- }
286
+ }
287
+ if (el.value) {
288
+ setOpenStyle();
289
+ }
290
+ if (link2 && !("x" in link2) && !("touches" in link2)) {
291
+ setScrollStatus();
281
292
  }
282
293
  });
283
294
  }
@@ -318,7 +329,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
318
329
  emit("opened");
319
330
  clearTimeout(timer);
320
331
  timer = null;
321
- }, 100);
332
+ }, Number(props.speed));
322
333
  isOpen.value = true;
323
334
  } else {
324
335
  document.body.addEventListener("mousedown", blur);
@@ -347,10 +358,6 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
347
358
  }
348
359
  setTimeout(() => {
349
360
  set(link.value);
350
- setOpenStyle();
351
- if (link.value && !("x" in link.value) && !("touches" in link.value)) {
352
- setScrollStatus();
353
- }
354
361
  }, 0);
355
362
  if (props.afterOpen && Object.prototype.toString.call(props.afterOpen) === "[object Function]") {
356
363
  props.afterOpen();
@@ -376,22 +383,24 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
376
383
  wrapper.value.style.transform = "translateX(-100%)";
377
384
  }
378
385
  setTimeout(() => {
379
- wrapper.value.style.transition = "transform 100ms ease-out";
386
+ wrapper.value.style.transition = transitionTransform.value;
380
387
  wrapper.value.style.transform = "translateY(0)";
381
388
  setTimeout(() => {
382
389
  wrapper.value.style.transform = "";
383
- }, 100);
390
+ }, Number(props.speed));
384
391
  }, 0);
385
392
  } else {
393
+ el.value.style.transition = "none";
386
394
  el.value.style.transform = "scale(1, 0)";
387
395
  el.value.style.visibility = "visible";
388
- setTimeout(() => {
389
- el.value.style.transition = "transform 100ms ease-out";
396
+ requestAnimationFrame(() => {
397
+ el.value.style.transition = transitionTransform.value;
390
398
  el.value.style.transform = "scale(1)";
391
399
  setTimeout(() => {
392
400
  el.value.style.transform = "";
393
- }, 100);
394
- }, 0);
401
+ el.value.style.transition = "";
402
+ }, Number(props.speed));
403
+ });
395
404
  }
396
405
  el.value.style.zIndex = (_a = window.$TouchUI) == null ? void 0 : _a.zIndex;
397
406
  }
@@ -441,7 +450,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
441
450
  if (props.afterClose && Object.prototype.toString.call(props.afterClose) === "[object Function]") {
442
451
  props.afterClose();
443
452
  }
444
- }, 100);
453
+ }, Number(props.speed));
445
454
  }
446
455
  function setCloseStyle() {
447
456
  if (props.slide) {
@@ -458,7 +467,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
458
467
  wrapper.value.style.transform = "translateX(-100%)";
459
468
  }
460
469
  } else {
461
- el.value.style.transform = "scale(1,0)";
470
+ el.value.style.transition = transitionTransform.value;
471
+ el.value.style.transform = "scale(1, 0)";
462
472
  }
463
473
  }
464
474
  function toggle(by) {
@@ -517,63 +527,72 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
517
527
  }
518
528
  __expose({ open, close, toggle, set });
519
529
  return (_ctx, _cache) => {
520
- return vue.openBlock(), vue.createBlock(vue.Teleport, {
521
- to: "body",
522
- disabled: !_ctx.global
523
- }, [
524
- (_ctx.lazy ? ifShow.value : true) ? (vue.openBlock(), vue.createElementBlock("div", {
525
- key: 0,
526
- ref_key: "el",
527
- ref: el,
528
- class: vue.normalizeClass(["to-float", [setClass.value, vue.unref(attrs).class]]),
529
- style: vue.normalizeStyle([setStyle.value, vue.unref(attrs).style]),
530
- onMousedown: ($event) => _ctx.$emit("click"),
531
- onTouchstart: ($event) => _ctx.$emit("click"),
532
- onMouseenter: ($event) => _ctx.$emit("mouseenter"),
533
- onMouseleave: ($event) => _ctx.$emit("mouseleave"),
534
- onClick: vue.withModifiers(() => {
535
- }, ["stop"])
536
- }, [
537
- vue.createElementVNode(
538
- "div",
539
- {
540
- ref_key: "mask",
541
- ref: mask,
542
- class: "to-float-mask",
543
- onClick: maskClickHandle
544
- },
545
- null,
546
- 512
547
- /* NEED_PATCH */
548
- ),
549
- vue.createElementVNode(
550
- "div",
551
- {
552
- ref_key: "wrapper",
553
- ref: wrapper,
554
- class: "to-float-wrapper",
555
- style: vue.normalizeStyle(_ctx.slide ? wrapperStyle.value : null)
556
- },
557
- [
530
+ return vue.openBlock(), vue.createElementBlock(
531
+ vue.Fragment,
532
+ null,
533
+ [
534
+ vue.createElementVNode("div", null, "1"),
535
+ (vue.openBlock(), vue.createBlock(vue.Teleport, {
536
+ to: "body",
537
+ disabled: !_ctx.global
538
+ }, [
539
+ (_ctx.lazy ? ifShow.value : true) ? (vue.openBlock(), vue.createElementBlock("div", {
540
+ key: 0,
541
+ ref_key: "el",
542
+ ref: el,
543
+ class: vue.normalizeClass(["to-float", [setClass.value, vue.unref(attrs).class]]),
544
+ style: vue.normalizeStyle([setStyle.value, vue.unref(attrs).style]),
545
+ onMousedown: ($event) => _ctx.$emit("click"),
546
+ onTouchstart: ($event) => _ctx.$emit("click"),
547
+ onMouseenter: ($event) => _ctx.$emit("mouseenter"),
548
+ onMouseleave: ($event) => _ctx.$emit("mouseleave"),
549
+ onClick: vue.withModifiers(() => {
550
+ }, ["stop"])
551
+ }, [
558
552
  vue.createElementVNode(
559
553
  "div",
560
554
  {
561
- ref_key: "content",
562
- ref: content,
563
- class: "to-float-content"
555
+ ref_key: "mask",
556
+ ref: mask,
557
+ class: "to-float-mask",
558
+ onClick: maskClickHandle
564
559
  },
565
- [
566
- vue.renderSlot(_ctx.$slots, "default")
567
- ],
560
+ null,
568
561
  512
569
562
  /* NEED_PATCH */
563
+ ),
564
+ vue.createElementVNode(
565
+ "div",
566
+ {
567
+ ref_key: "wrapper",
568
+ ref: wrapper,
569
+ class: "to-float-wrapper",
570
+ style: vue.normalizeStyle(_ctx.slide ? wrapperStyle.value : null)
571
+ },
572
+ [
573
+ vue.createElementVNode(
574
+ "div",
575
+ {
576
+ ref_key: "content",
577
+ ref: content,
578
+ class: "to-float-content"
579
+ },
580
+ [
581
+ vue.renderSlot(_ctx.$slots, "default")
582
+ ],
583
+ 512
584
+ /* NEED_PATCH */
585
+ )
586
+ ],
587
+ 4
588
+ /* STYLE */
570
589
  )
571
- ],
572
- 4
573
- /* STYLE */
574
- )
575
- ], 46, ["onMousedown", "onTouchstart", "onMouseenter", "onMouseleave", "onClick"])) : vue.createCommentVNode("v-if", true)
576
- ], 8, ["disabled"]);
590
+ ], 46, ["onMousedown", "onTouchstart", "onMouseenter", "onMouseleave", "onClick"])) : vue.createCommentVNode("v-if", true)
591
+ ], 8, ["disabled"]))
592
+ ],
593
+ 64
594
+ /* STABLE_FRAGMENT */
595
+ );
577
596
  };
578
597
  }
579
598
  });