@astrolimit/vue3-web-hooks 25.11.1 → 25.12.14
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.
- package/dist/index.d.ts +21 -4
- package/dist/index.js +65 -2
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -33,7 +33,7 @@ declare const useDivSize: (target?: Ref<HTMLDivElement | undefined> | HTMLDivEle
|
|
|
33
33
|
* @returns
|
|
34
34
|
*/
|
|
35
35
|
declare const useDrawerWidth: (percentage?: number, minWidth?: number) => {
|
|
36
|
-
drawerWidth: vue0.ComputedRef<number
|
|
36
|
+
drawerWidth: vue0.ComputedRef<number>;
|
|
37
37
|
};
|
|
38
38
|
//#endregion
|
|
39
39
|
//#region src/hooks/useMitt.d.ts
|
|
@@ -41,8 +41,8 @@ type AnyRecord$1 = Record<string, any>;
|
|
|
41
41
|
type R<T extends AnyRecord$1> = ReturnType<typeof mitt<T>> & {
|
|
42
42
|
stop(key: keyof T): void;
|
|
43
43
|
pause(key: keyof T): void;
|
|
44
|
-
subscribe<P
|
|
45
|
-
once<P
|
|
44
|
+
subscribe<P extends keyof T>(key: P, cb: (data: T[P]) => void): void;
|
|
45
|
+
once<P extends keyof T>(key: P, cb: (data: T[P]) => void): void;
|
|
46
46
|
};
|
|
47
47
|
/**
|
|
48
48
|
* 在父祖组件中使用
|
|
@@ -78,6 +78,23 @@ declare const useNow: (immediate?: boolean) => {
|
|
|
78
78
|
meridiem: vue0.Ref<string, string>;
|
|
79
79
|
};
|
|
80
80
|
//#endregion
|
|
81
|
+
//#region src/hooks/usePageSize.d.ts
|
|
82
|
+
/**
|
|
83
|
+
* @example
|
|
84
|
+
* const pagita = usePageSize()
|
|
85
|
+
* @returns
|
|
86
|
+
*/
|
|
87
|
+
declare const usePageSize: () => {
|
|
88
|
+
total: vue0.WritableComputedRef<number, number>;
|
|
89
|
+
page: vue0.WritableComputedRef<number, number>;
|
|
90
|
+
pageNo: vue0.WritableComputedRef<number, number>;
|
|
91
|
+
limit: vue0.WritableComputedRef<number, number>;
|
|
92
|
+
pageSize: vue0.WritableComputedRef<number, number>;
|
|
93
|
+
pending: vue0.WritableComputedRef<boolean, boolean>;
|
|
94
|
+
loading: vue0.WritableComputedRef<boolean, boolean>;
|
|
95
|
+
resetPageAndFetch(fn: () => Promise<void>): Promise<void>;
|
|
96
|
+
};
|
|
97
|
+
//#endregion
|
|
81
98
|
//#region src/hooks/useStyleSheetLink.d.ts
|
|
82
99
|
/**
|
|
83
100
|
* 基于vue3组合式api的样式注入(动态创建link标签)
|
|
@@ -187,4 +204,4 @@ type ExtractComponentProps<C> = C extends (new (...args: any[]) => {
|
|
|
187
204
|
*/
|
|
188
205
|
type IVueProps<T> = Partial<ExtractComponentProps<T>>;
|
|
189
206
|
//#endregion
|
|
190
|
-
export { type ExtractFirstParam, type IVueComponent, type IVueProps, useDivSize, useDrawerWidth, useInjectMitt, useNetwork, useNewMitt, useNow, useSortable, useStyleSheetLink, useViewRefresh, useVueInterval, useWatermark };
|
|
207
|
+
export { type ExtractFirstParam, type IVueComponent, type IVueProps, useDivSize, useDrawerWidth, useInjectMitt, useNetwork, useNewMitt, useNow, usePageSize, useSortable, useStyleSheetLink, useViewRefresh, useVueInterval, useWatermark };
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@ import _, { cloneDeep } from "lodash";
|
|
|
2
2
|
import { computed, createElementVNode, defineComponent, inject, isRef, nextTick, onBeforeUnmount, onMounted, onUnmounted, provide, reactive, ref, toRefs, unref, watch } from "vue";
|
|
3
3
|
import { tryOnMounted, tryOnUnmounted, useDebounceFn, useWindowSize } from "@vueuse/core";
|
|
4
4
|
import mitt from "mitt";
|
|
5
|
-
import { get, isInteger, isNil } from "lodash-es";
|
|
5
|
+
import { get, isInteger, isNil, toSafeInteger } from "lodash-es";
|
|
6
6
|
import dayjs from "dayjs";
|
|
7
7
|
import Sortable from "sortablejs";
|
|
8
8
|
|
|
@@ -227,6 +227,69 @@ const useNow = (immediate = true) => {
|
|
|
227
227
|
};
|
|
228
228
|
};
|
|
229
229
|
|
|
230
|
+
//#endregion
|
|
231
|
+
//#region src/hooks/usePageSize.ts
|
|
232
|
+
/**
|
|
233
|
+
* @example
|
|
234
|
+
* const pagita = usePageSize()
|
|
235
|
+
* @returns
|
|
236
|
+
*/
|
|
237
|
+
const usePageSize = () => {
|
|
238
|
+
const _data = reactive({
|
|
239
|
+
pending: false,
|
|
240
|
+
total: 0,
|
|
241
|
+
page: 1,
|
|
242
|
+
limit: 10
|
|
243
|
+
});
|
|
244
|
+
const total = computed({
|
|
245
|
+
get() {
|
|
246
|
+
return _data.total;
|
|
247
|
+
},
|
|
248
|
+
set(val) {
|
|
249
|
+
_data.total = toSafeInteger(val);
|
|
250
|
+
}
|
|
251
|
+
});
|
|
252
|
+
const page = computed({
|
|
253
|
+
get() {
|
|
254
|
+
return _data.page;
|
|
255
|
+
},
|
|
256
|
+
set(val) {
|
|
257
|
+
_data.page = toSafeInteger(val);
|
|
258
|
+
}
|
|
259
|
+
});
|
|
260
|
+
const limit = computed({
|
|
261
|
+
get() {
|
|
262
|
+
return _data.limit;
|
|
263
|
+
},
|
|
264
|
+
set(val) {
|
|
265
|
+
_data.limit = toSafeInteger(val);
|
|
266
|
+
}
|
|
267
|
+
});
|
|
268
|
+
const pending = computed({
|
|
269
|
+
get() {
|
|
270
|
+
return _data.pending;
|
|
271
|
+
},
|
|
272
|
+
set(val) {
|
|
273
|
+
_data.pending = val ? true : false;
|
|
274
|
+
}
|
|
275
|
+
});
|
|
276
|
+
return {
|
|
277
|
+
total,
|
|
278
|
+
page,
|
|
279
|
+
pageNo: page,
|
|
280
|
+
limit,
|
|
281
|
+
pageSize: limit,
|
|
282
|
+
pending,
|
|
283
|
+
loading: pending,
|
|
284
|
+
async resetPageAndFetch(fn) {
|
|
285
|
+
_data.pending = true;
|
|
286
|
+
_data.page = 1;
|
|
287
|
+
await fn();
|
|
288
|
+
_data.pending = false;
|
|
289
|
+
}
|
|
290
|
+
};
|
|
291
|
+
};
|
|
292
|
+
|
|
230
293
|
//#endregion
|
|
231
294
|
//#region src/hooks/useStyleSheetLink.ts
|
|
232
295
|
/**
|
|
@@ -468,4 +531,4 @@ function useWatermark(opts) {
|
|
|
468
531
|
}
|
|
469
532
|
|
|
470
533
|
//#endregion
|
|
471
|
-
export { useDivSize, useDrawerWidth, useInjectMitt, useNetwork, useNewMitt, useNow, useSortable, useStyleSheetLink, useViewRefresh, useVueInterval, useWatermark };
|
|
534
|
+
export { useDivSize, useDrawerWidth, useInjectMitt, useNetwork, useNewMitt, useNow, usePageSize, useSortable, useStyleSheetLink, useViewRefresh, useVueInterval, useWatermark };
|