zcw-shared 1.28.0 → 1.30.0

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 (50) hide show
  1. package/README.md +87 -55
  2. package/dist/functions/image/generatePlaceholderImage.d.ts +43 -0
  3. package/dist/functions/image/generatePlaceholderImage.js +331 -0
  4. package/dist/functions/image/generatePlaceholderImage.js.map +1 -0
  5. package/dist/functions/vue/dynamicMount.d.ts +6 -4
  6. package/dist/functions/vue/isVNode.d.ts +1 -1
  7. package/dist/functions/vue/isVueComponent.d.ts +1 -1
  8. package/dist/vue-hooks/browser/useBattery.d.ts +1 -1
  9. package/dist/vue-hooks/browser/useBluetooth.d.ts +1 -1
  10. package/dist/vue-hooks/browser/useCamera.d.ts +1 -1
  11. package/dist/vue-hooks/browser/useClipboard.d.ts +1 -1
  12. package/dist/vue-hooks/browser/useFileUpload.d.ts +25 -0
  13. package/dist/vue-hooks/browser/useFileUpload.js +81 -0
  14. package/dist/vue-hooks/browser/useFileUpload.js.map +1 -0
  15. package/dist/vue-hooks/browser/useFullscreen.d.ts +1 -1
  16. package/dist/vue-hooks/browser/useGamepad.d.ts +1 -1
  17. package/dist/vue-hooks/browser/useGeolocation.d.ts +1 -1
  18. package/dist/vue-hooks/browser/useMediaSession.d.ts +1 -1
  19. package/dist/vue-hooks/browser/useMicrophone.d.ts +1 -1
  20. package/dist/vue-hooks/browser/useNetwork.d.ts +1 -1
  21. package/dist/vue-hooks/browser/useOrientation.d.ts +1 -1
  22. package/dist/vue-hooks/browser/usePageVisibility.d.ts +1 -1
  23. package/dist/vue-hooks/browser/useScreenOrientation.d.ts +1 -1
  24. package/dist/vue-hooks/browser/useScreenWakeLock.d.ts +1 -1
  25. package/dist/vue-hooks/browser/useShare.d.ts +1 -1
  26. package/dist/vue-hooks/browser/useVibration.d.ts +1 -1
  27. package/dist/vue-hooks/dom/useAutoUpdate.d.ts +1 -1
  28. package/dist/vue-hooks/dom/useClickOutside.d.ts +1 -1
  29. package/dist/vue-hooks/dom/useDraggable.d.ts +4 -4
  30. package/dist/vue-hooks/dom/useEventListener.d.ts +1 -1
  31. package/dist/vue-hooks/dom/useResizable.d.ts +8 -3
  32. package/dist/vue-hooks/history/useDebouncedRefHistory.d.ts +1 -1
  33. package/dist/vue-hooks/history/useManualRefHistory.d.ts +1 -1
  34. package/dist/vue-hooks/history/useRefHistory.d.ts +1 -1
  35. package/dist/vue-hooks/state/injectLocal.d.ts +1 -1
  36. package/dist/vue-hooks/state/provideLocal.d.ts +1 -1
  37. package/dist/vue-hooks/state/useAsyncState.d.ts +1 -1
  38. package/dist/vue-hooks/state/useCounter.d.ts +1 -1
  39. package/dist/vue-hooks/state/useFileUpload.d.ts +23 -0
  40. package/dist/vue-hooks/state/useFileUpload.js +93 -0
  41. package/dist/vue-hooks/state/useFileUpload.js.map +1 -0
  42. package/dist/vue-hooks/state/useToggle.d.ts +1 -1
  43. package/dist/vue-hooks/time/useInterval.d.ts +1 -1
  44. package/dist/vue-hooks/time/useTimeout.d.ts +1 -1
  45. package/dist/vue-hooks/worker/useWebWorker.d.ts +4 -4
  46. package/dist/vue-hooks/worker/useWorkerFunction.d.ts +4 -4
  47. package/dist/vue-hooks/worker/useWorkerPool.d.ts +4 -4
  48. package/package.json +4 -2
  49. package/types/vue.d.ts +1 -1
  50. package/references/vue.d.ts +0 -242
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generatePlaceholderImage.js","sourceRoot":"","sources":["../../../src/functions/image/generatePlaceholderImage.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,17 @@
1
- import type { VueRuntime, VNode, Component, AppContext } from '../../../references/vue.d';
1
+ import type { VNode, createVNode, render, Component, AppContext } from 'vue';
2
2
  import type { HTMLElement, Document } from '../../../references/dom.d';
3
3
  export interface DynamicMountOptions {
4
4
  props: Record<string, any>;
5
5
  container: HTMLElement;
6
6
  appContext: AppContext;
7
- createVNode: VueRuntime['createVNode'];
8
- render: VueRuntime['render'];
7
+ createVNode: typeof createVNode;
8
+ render: typeof render;
9
9
  createElement: Document['createElement'];
10
10
  }
11
11
  export declare function dynamicMount(Comp: Component, options: DynamicMountOptions): {
12
- vnode: VNode;
12
+ vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
13
+ [key: string]: any;
14
+ }>;
13
15
  update: (newProps: typeof options.props) => void;
14
16
  destroy: () => void;
15
17
  el: HTMLElement;
@@ -1,2 +1,2 @@
1
- import type { VNode } from '../../../references/vue.d';
1
+ import type { VNode } from 'vue';
2
2
  export declare function isVNode(content: unknown): content is VNode;
@@ -1,2 +1,2 @@
1
- import type { Component } from '../../../references/vue.d';
1
+ import type { Component } from 'vue';
2
2
  export declare function isVueComponent(content: unknown): content is Component;
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { Navigator } from '../../../references/device.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseBatteryDeps {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { Bluetooth, BluetoothDevice } from '../../../references/device.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseBluetoothDeps {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { MediaDevices, MediaStream } from '../../../references/device.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseCameraDeps {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { Navigator } from '../../../references/browser.d';
3
3
  import type { setTimeout, clearTimeout } from '../../../references/timer.d';
4
4
  import type { VueCompositionAPI } from '../../../types/vue.d';
@@ -0,0 +1,25 @@
1
+ import type { Ref } from 'vue';
2
+ import type { VueCompositionAPI } from '../../../types/vue.d';
3
+ import type { Window, File } from '../../../references/browser.d';
4
+ export interface FileUploadItem {
5
+ uid: string;
6
+ originFile: File;
7
+ status: 'ready' | 'uploading' | 'success' | 'failed';
8
+ localPreview?: string;
9
+ onlinePreview?: string;
10
+ }
11
+ export interface UseFileUploadEnvironment {
12
+ vue: Pick<Required<VueCompositionAPI>, 'ref' | 'shallowRef' | 'onUnmounted'>;
13
+ host: {
14
+ createObjectURL: Window['URL']['createObjectURL'];
15
+ revokeObjectURL: Window['URL']['revokeObjectURL'];
16
+ };
17
+ }
18
+ export interface UseFileUploadReturn {
19
+ fileList: Ref<FileUploadItem[]>;
20
+ clear: () => void;
21
+ append: (files: File | File[]) => void;
22
+ replaceAt: (index: number, file: File) => void;
23
+ }
24
+ export declare function useFileUpload(initialFileList: FileUploadItem[], asyncBeforeUpload: (file: File) => Promise<boolean> | boolean, asyncUpload: (file: File) => Promise<string>, asyncAfterUpload: (file: File, url: string) => Promise<void> | void, env: UseFileUploadEnvironment): UseFileUploadReturn;
25
+ export default useFileUpload;
@@ -0,0 +1,81 @@
1
+ export function useFileUpload(initialFileList, asyncBeforeUpload, asyncUpload, asyncAfterUpload, env) {
2
+ const fileList = env.vue.shallowRef(initialFileList || []);
3
+ function generateUID() {
4
+ return `${Date.now()}-${Math.random().toString(36).slice(2, 11)}`;
5
+ }
6
+ function createFileItem(file) {
7
+ const uid = generateUID();
8
+ const localPreview = env.host.createObjectURL(file);
9
+ return {
10
+ uid,
11
+ originFile: file,
12
+ status: 'ready',
13
+ localPreview
14
+ };
15
+ }
16
+ async function handleUpload(fileItem) {
17
+ try {
18
+ const shouldUpload = await asyncBeforeUpload(fileItem.originFile);
19
+ if (!shouldUpload) {
20
+ fileItem.status = 'failed';
21
+ return;
22
+ }
23
+ fileItem.status = 'uploading';
24
+ const url = await asyncUpload(fileItem.originFile);
25
+ fileItem.status = 'success';
26
+ fileItem.onlinePreview = url;
27
+ await asyncAfterUpload(fileItem.originFile, url);
28
+ }
29
+ catch (error) {
30
+ fileItem.status = 'failed';
31
+ throw error;
32
+ }
33
+ }
34
+ function clear() {
35
+ fileList.value.forEach(item => {
36
+ if (item.localPreview) {
37
+ env.host.revokeObjectURL(item.localPreview);
38
+ }
39
+ });
40
+ fileList.value = [];
41
+ }
42
+ function append(files) {
43
+ const filesArray = Array.isArray(files) ? files : [files];
44
+ const newItems = filesArray.map(file => createFileItem(file));
45
+ fileList.value = [...fileList.value, ...newItems];
46
+ newItems.forEach(item => {
47
+ handleUpload(item).catch(() => {
48
+ });
49
+ });
50
+ }
51
+ function replaceAt(index, file) {
52
+ if (index < 0 || index >= fileList.value.length) {
53
+ throw new Error(`索引 ${index} 超出范围`);
54
+ }
55
+ const oldItem = fileList.value[index];
56
+ if (oldItem.localPreview) {
57
+ env.host.revokeObjectURL(oldItem.localPreview);
58
+ }
59
+ const newItem = createFileItem(file);
60
+ const newList = [...fileList.value];
61
+ newList[index] = newItem;
62
+ fileList.value = newList;
63
+ handleUpload(newItem).catch(() => {
64
+ });
65
+ }
66
+ env.vue.onUnmounted(() => {
67
+ fileList.value.forEach(item => {
68
+ if (item.localPreview) {
69
+ env.host.revokeObjectURL(item.localPreview);
70
+ }
71
+ });
72
+ });
73
+ return {
74
+ fileList,
75
+ clear,
76
+ append,
77
+ replaceAt
78
+ };
79
+ }
80
+ export default useFileUpload;
81
+ //# sourceMappingURL=useFileUpload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFileUpload.js","sourceRoot":"","sources":["../../../src/vue-hooks/browser/useFileUpload.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Element } from 'references/dom';
2
- import type { Ref } from '../../../references/vue.d';
2
+ import type { Ref } from 'vue';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseFullscreenDeps {
5
5
  vue: Pick<Required<VueCompositionAPI>, 'ref' | 'onMounted' | 'onUnmounted'>;
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { Gamepad, GamepadButton } from '../../../references/device.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseGamepadDeps {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { Geolocation, GeolocationPosition } from '../../../references/device.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseGeolocationDeps {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { MediaSession, MediaMetadataInit } from '../../../references/device.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export type MediaSessionAction = 'play' | 'pause' | 'seekbackward' | 'seekforward' | 'previoustrack' | 'nexttrack' | 'stop' | 'seekto';
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { MediaDevices, MediaStream } from '../../../references/device.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseMicrophoneDeps {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { NetworkInformation } from '../../../references/device.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseNetworkDeps {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { VueCompositionAPI } from '../../../types/vue.d';
3
3
  export interface UseOrientationDeps {
4
4
  vue: Pick<Required<VueCompositionAPI>, 'ref' | 'onMounted' | 'onUnmounted'>;
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { VueCompositionAPI } from '../../../types/vue.d';
3
3
  export interface UsePageVisibilityDeps {
4
4
  vue: Pick<Required<VueCompositionAPI>, 'ref' | 'onMounted' | 'onUnmounted'>;
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { VueCompositionAPI } from '../../../types/vue.d';
3
3
  export type OrientationType = 'portrait-primary' | 'portrait-secondary' | 'landscape-primary' | 'landscape-secondary';
4
4
  export type OrientationLockType = 'any' | 'natural' | 'landscape' | 'portrait' | 'portrait-primary' | 'portrait-secondary' | 'landscape-primary' | 'landscape-secondary';
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { WakeLockSentinel } from '../../../references/device.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseScreenWakeLockDeps {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { File } from '../../../references/browser.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface ShareData {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { NavigatorVibration } from '../../../references/device.d';
3
3
  import type { setTimeout } from '../../../references/timer.d';
4
4
  import type { VueCompositionAPI } from '../../../types/vue.d';
@@ -1,4 +1,4 @@
1
- import type { UnwrapRef } from '../../../references/vue.d';
1
+ import type { UnwrapRef } from 'vue';
2
2
  import type { VueCompositionAPI } from '../../../types/vue.d';
3
3
  import type { CreateThrottledEventListenerDeps } from '../../functions/dom/createThrottledEventListener';
4
4
  export interface StateData {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { Document, HTMLElement, Event } from '../../../references/dom.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseClickOutsideDeps {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { HTMLElement, Document, MouseEvent, TouchEvent } from '../../../references/dom.d';
3
3
  import type { Window } from '../../../references/browser.d';
4
4
  import type { VueCompositionAPI } from '../../../types/vue.d';
@@ -25,9 +25,9 @@ export interface UseDraggableOptions {
25
25
  };
26
26
  }
27
27
  export declare function useDraggable(targetRef: Ref<HTMLElement | null>, options: UseDraggableOptions | undefined, env: DraggableEnvironment): {
28
- position: Ref<Position>;
29
- isDragging: Ref<boolean>;
30
- style: Ref<Record<string, string>>;
28
+ position: Ref<Position, Position>;
29
+ isDragging: Ref<boolean, boolean>;
30
+ style: Ref<Record<string, string>, Record<string, string>>;
31
31
  cleanup: () => void;
32
32
  };
33
33
  export default useDraggable;
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { EventListener, AddEventListenerOptions, EventListenerOptions } from '../../../references/dom.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface EventTarget {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { HTMLElement, Document, MouseEvent, TouchEvent } from '../../../references/dom.d';
3
3
  import type { Window } from '../../../references/browser.d';
4
4
  import type { VueCompositionAPI } from '../../../types/vue.d';
@@ -36,14 +36,19 @@ export interface UseResizableOptions {
36
36
  };
37
37
  }
38
38
  export declare function useResizable(targetRef: Ref<HTMLElement | null>, options: UseResizableOptions | undefined, env: ResizableEnvironment): {
39
- size: Ref<Size>;
39
+ size: Ref<Size, Size>;
40
40
  style: Ref<{
41
41
  width: string;
42
42
  height: string;
43
43
  left?: string;
44
44
  top?: string;
45
+ }, {
46
+ width: string;
47
+ height: string;
48
+ left?: string;
49
+ top?: string;
45
50
  }>;
46
- isResizing: Ref<boolean>;
51
+ isResizing: Ref<boolean, boolean>;
47
52
  onResizeHandleMouseDown: (e: MouseEvent | TouchEvent, direction?: string) => void;
48
53
  reset: () => void;
49
54
  cleanupEventListeners: () => void;
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import { type UseManualRefHistoryReturn, type UseManualRefHistoryOptions } from './useManualRefHistory';
3
3
  import type { setTimeout, clearTimeout } from '../../../references/timer.d';
4
4
  import type { VueCompositionAPI } from '../../../types/vue.d';
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  export interface RefHistoryRecord<T> {
3
3
  snapshot: T;
4
4
  timestamp: number;
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { UseManualRefHistoryReturn } from './useManualRefHistory';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface RefHistoryEnvironment {
@@ -1,4 +1,4 @@
1
- import type { InjectionKey } from '../../../references/vue.d';
1
+ import type { InjectionKey } from 'vue';
2
2
  import type { VueCompositionAPI } from '../../../types/vue.d';
3
3
  export interface InjectLocalEnvironment {
4
4
  vue: Pick<Required<VueCompositionAPI>, 'inject'>;
@@ -1,4 +1,4 @@
1
- import type { InjectionKey } from '../../../references/vue.d';
1
+ import type { InjectionKey } from 'vue';
2
2
  import type { VueCompositionAPI } from '../../../types/vue.d';
3
3
  export interface ProvideLocalEnvironment {
4
4
  vue: Pick<Required<VueCompositionAPI>, 'provide'>;
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { setTimeout } from '../../../references/timer.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface AsyncStateEnvironment {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { VueCompositionAPI } from '../../../types/vue.d';
3
3
  export interface UseCounterDeps {
4
4
  vue: Pick<Required<VueCompositionAPI>, 'ref'>;
@@ -0,0 +1,23 @@
1
+ import type { Ref } from '../../../references/vue.d';
2
+ import type { VueCompositionAPI } from '../../../types/vue.d';
3
+ import type { UploadFile, BeforeUploadHandler, UploadHandler, AfterUploadHandler } from '../../../types/file-upload.d';
4
+ import type { File } from '../../../references/browser.d';
5
+ export interface UseFileUploadEnvironment {
6
+ vue: Pick<Required<VueCompositionAPI>, 'ref' | 'shallowRef' | 'watch'>;
7
+ }
8
+ export interface UseFileUploadOptions {
9
+ fileList?: UploadFile[];
10
+ maxCount?: number;
11
+ beforeUpload?: BeforeUploadHandler;
12
+ upload?: UploadHandler;
13
+ afterUpload?: AfterUploadHandler;
14
+ }
15
+ export interface UseFileUploadReturn {
16
+ readonly fileList: Ref<UploadFile[]>;
17
+ readonly: (list: UploadFile[]) => void;
18
+ appendFileAt: (file: UploadFile, index?: number) => void;
19
+ replaceFileAt: (file: UploadFile, index: number) => void;
20
+ addFile: (file: File) => Promise<void>;
21
+ }
22
+ export declare function useFileUpload(options: UseFileUploadOptions, env: UseFileUploadEnvironment): UseFileUploadReturn;
23
+ export default useFileUpload;
@@ -0,0 +1,93 @@
1
+ export function useFileUpload(options, env) {
2
+ const { fileList: initialFileList = [], maxCount, beforeUpload, upload, afterUpload } = options;
3
+ const fileList = env.vue.shallowRef(initialFileList);
4
+ function readonly(list) {
5
+ fileList.value = list;
6
+ }
7
+ function checkMaxCount() {
8
+ if (maxCount !== undefined && fileList.value.length >= maxCount) {
9
+ return false;
10
+ }
11
+ return true;
12
+ }
13
+ function generateUid() {
14
+ return `${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
15
+ }
16
+ function appendFileAt(file, index) {
17
+ if (!checkMaxCount()) {
18
+ throw new Error(`文件数量已达到最大限制 ${maxCount}`);
19
+ }
20
+ if (index === undefined || index === null) {
21
+ fileList.value = [...fileList.value, file];
22
+ }
23
+ else {
24
+ if (index < 0 || index > fileList.value.length) {
25
+ throw new Error(`索引 ${index} 超出范围`);
26
+ }
27
+ const newList = [...fileList.value];
28
+ newList.splice(index, 0, file);
29
+ fileList.value = newList;
30
+ }
31
+ }
32
+ function replaceFileAt(file, index) {
33
+ if (index < 0 || index >= fileList.value.length) {
34
+ throw new Error(`索引 ${index} 超出范围`);
35
+ }
36
+ const newList = [...fileList.value];
37
+ newList[index] = file;
38
+ fileList.value = newList;
39
+ }
40
+ async function addFile(file) {
41
+ if (!checkMaxCount()) {
42
+ throw new Error(`文件数量已达到最大限制 ${maxCount}`);
43
+ }
44
+ let processedFile = file;
45
+ if (beforeUpload) {
46
+ processedFile = await beforeUpload(file);
47
+ }
48
+ if (processedFile === false) {
49
+ return;
50
+ }
51
+ const finalFile = (processedFile || file);
52
+ const uploadFile = {
53
+ uid: generateUid(),
54
+ file: finalFile,
55
+ state: 'ready'
56
+ };
57
+ appendFileAt(uploadFile);
58
+ if (!upload) {
59
+ uploadFile.state = 'done';
60
+ return;
61
+ }
62
+ try {
63
+ uploadFile.state = 'uploading';
64
+ const result = await upload(finalFile);
65
+ if (result) {
66
+ uploadFile.onlinePreview = result;
67
+ }
68
+ uploadFile.state = 'done';
69
+ if (afterUpload) {
70
+ await afterUpload(finalFile, result);
71
+ }
72
+ }
73
+ catch (error) {
74
+ uploadFile.state = 'failed';
75
+ throw error;
76
+ }
77
+ finally {
78
+ const currentIndex = fileList.value.findIndex(item => item.uid === uploadFile.uid);
79
+ if (currentIndex !== -1) {
80
+ replaceFileAt(uploadFile, currentIndex);
81
+ }
82
+ }
83
+ }
84
+ return {
85
+ fileList: fileList,
86
+ readonly,
87
+ appendFileAt,
88
+ replaceFileAt,
89
+ addFile
90
+ };
91
+ }
92
+ export default useFileUpload;
93
+ //# sourceMappingURL=useFileUpload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFileUpload.js","sourceRoot":"","sources":["../../../src/vue-hooks/state/useFileUpload.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { VueCompositionAPI } from '../../../types/vue.d';
3
3
  export interface UseToggleDeps {
4
4
  vue: Pick<Required<VueCompositionAPI>, 'ref'>;
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { setInterval, clearInterval } from '../../../references/timer.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseIntervalDeps {
@@ -1,4 +1,4 @@
1
- import type { Ref } from '../../../references/vue.d';
1
+ import type { Ref } from 'vue';
2
2
  import type { setTimeout, clearTimeout } from '../../../references/timer.d';
3
3
  import type { VueCompositionAPI } from '../../../types/vue.d';
4
4
  export interface UseTimeoutDeps {
@@ -1,6 +1,6 @@
1
1
  import type { Transferable, WorkerConstructor } from '../../../references/worker.d';
2
2
  import type { setTimeout, clearTimeout } from '../../../references/timer.d';
3
- import type { Ref } from '../../../references/vue.d';
3
+ import type { Ref } from 'vue';
4
4
  import type { WebWorkerOptions, WebWorkerResult } from '../../../types/worker';
5
5
  export interface WebWorkerDeps {
6
6
  Worker: WorkerConstructor;
@@ -9,9 +9,9 @@ export interface WebWorkerDeps {
9
9
  ref: <T>(value: T) => Ref<T>;
10
10
  }
11
11
  export default function useWebWorker(deps: WebWorkerDeps, options: WebWorkerOptions): {
12
- isReady: Ref<boolean>;
13
- isLoading: Ref<boolean>;
14
- error: Ref<Error | null>;
12
+ isReady: Ref<boolean, boolean>;
13
+ isLoading: Ref<boolean, boolean>;
14
+ error: Ref<Error | null, Error | null>;
15
15
  postMessage: <T>(data: unknown, transfer?: Transferable[]) => Promise<WebWorkerResult<T>>;
16
16
  postMessages: <T>(messages: any[], transfer?: Transferable[][]) => Promise<WebWorkerResult<T>[]>;
17
17
  terminate: () => void;
@@ -1,7 +1,7 @@
1
1
  import type { Window } from '../../../references/browser.d';
2
2
  import type { WorkerConstructor } from '../../../references/worker.d';
3
3
  import type { setTimeout, clearTimeout } from '../../../references/timer.d';
4
- import type { Ref } from '../../../references/vue.d';
4
+ import type { Ref } from 'vue';
5
5
  import type { WorkerFunction, WorkerFunctionOptions, WorkerFunctionResult } from '../../../types/worker';
6
6
  export interface WorkerFunctionDeps {
7
7
  Worker: WorkerConstructor;
@@ -12,9 +12,9 @@ export interface WorkerFunctionDeps {
12
12
  ref: <T>(value: T) => Ref<T>;
13
13
  }
14
14
  export default function useWorkerFunction<T extends any[], R>(deps: WorkerFunctionDeps, options: WorkerFunctionOptions, fn: WorkerFunction<T, R>): {
15
- isReady: Ref<boolean>;
16
- isLoading: Ref<boolean>;
17
- error: Ref<Error | null>;
15
+ isReady: Ref<boolean, boolean>;
16
+ isLoading: Ref<boolean, boolean>;
17
+ error: Ref<Error | null, Error | null>;
18
18
  execute: (...args: T) => Promise<WorkerFunctionResult<R>>;
19
19
  terminate: () => void;
20
20
  getStatus: () => {