@cloudcome/utils-uni 1.2.8 → 1.3.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.
- package/dist/cloud.cjs +2 -1
- package/dist/cloud.cjs.map +1 -1
- package/dist/cloud.d.ts +13 -4
- package/dist/cloud.mjs +2 -1
- package/dist/cloud.mjs.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +4 -3
package/dist/cloud.cjs
CHANGED
|
@@ -3,13 +3,14 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const request = require("@cloudcome/utils-vue/request");
|
|
4
4
|
function createUseCloudObject(objectName, options) {
|
|
5
5
|
const server = (options == null ? void 0 : options._mockServer) || uniCloud.importObject(objectName, options);
|
|
6
|
-
|
|
6
|
+
const useCloudObject = (caller, options2) => {
|
|
7
7
|
return request.useRequest(async (...inputs) => {
|
|
8
8
|
const result = await caller(server, ...inputs);
|
|
9
9
|
if (!result.errCode) return result.data;
|
|
10
10
|
throw new Error(result.errMsg || "请求失败");
|
|
11
11
|
}, options2);
|
|
12
12
|
};
|
|
13
|
+
return useCloudObject;
|
|
13
14
|
}
|
|
14
15
|
function useCloudDatabase(caller, options) {
|
|
15
16
|
const db = (options == null ? void 0 : options._mockDatabase) || uniCloud.database();
|
package/dist/cloud.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud.cjs","sources":["../src/cloud.ts"],"sourcesContent":["import type { AnyArray } from '@cloudcome/utils-core/types';\nimport {
|
|
1
|
+
{"version":3,"file":"cloud.cjs","sources":["../src/cloud.ts"],"sourcesContent":["import type { AnyArray } from '@cloudcome/utils-core/types';\nimport {\n type UseRequestOptions,\n type UseRequestOutput,\n type UseRequestOutputFilled,\n useRequest,\n} from '@cloudcome/utils-vue/request';\n\ntype ImportObject = UniCloudNamespace.UniCloud['importObject'];\ntype ImportObjectArgs = Parameters<ImportObject>;\n\nexport type UniCloudObjectOutput<T> = {\n errCode?: number | string;\n errMsg?: string;\n data: T;\n};\n\nexport type UniCloudObjectServer<O> = Record<string, (...inputs: unknown[]) => Promise<UniCloudObjectOutput<O>>>;\n\nexport type CreateUseCloudObjectOptions = ImportObjectArgs[1] & {\n /**\n * 模拟云对象,用于单元测试\n * @private\n */\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n _mockServer?: any;\n};\n\nexport type UseCloudObject = {\n <I extends AnyArray, O>(\n caller: (server: UniCloudObjectServer<O>, ...inputs: I) => Promise<UniCloudObjectOutput<O>>,\n options: Omit<UseRequestOptions<I, O>, 'placeholder'> & { placeholder: () => O },\n ): UseRequestOutputFilled<I, O>;\n <I extends AnyArray, O>(\n caller: (server: UniCloudObjectServer<O>, ...inputs: I) => Promise<UniCloudObjectOutput<O>>,\n options?: UseRequestOptions<I, O>,\n ): UseRequestOutput<I, O>;\n};\n\n/**\n * 创建一个用于调用云对象的hook工厂函数\n * @param objectName 云对象名称,用于导入对应的云对象\n * @param options 导入云对象时的可选配置参数\n * @returns 返回一个函数,该函数可以用于创建云对象调用hook\n */\nexport function createUseCloudObject(objectName: ImportObjectArgs[0], options?: CreateUseCloudObjectOptions) {\n const server = options?._mockServer || uniCloud.importObject(objectName, options);\n const useCloudObject: UseCloudObject = (caller, options) => {\n // 使用请求hook处理云对象调用\n return useRequest(async (...inputs) => {\n const result = await caller(server, ...inputs);\n if (!result.errCode) return result.data;\n throw new Error(result.errMsg || '请求失败');\n }, options);\n };\n\n return useCloudObject;\n}\n\nexport type UniCloudDatabaseOutput<T> = {\n result: T & {\n errCode?: number | string;\n errMsg?: string;\n };\n};\n\nexport type UseCloudDatabaseOptions<I extends AnyArray, O> = UseRequestOptions<I, O> & {\n /**\n * 模拟数据库,用于单元测试\n */\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n _mockDatabase?: any;\n};\n\n/**\n * 创建一个用于调用云数据库的hook\n * @param caller 调用云数据库的函数,接收数据库实例和输入参数,返回Promise\n * @param options 配置选项\n * @returns 返回一个请求hook,用于处理云数据库调用\n */\nexport function useCloudDatabase<I extends AnyArray, O>(\n caller: (db: UniCloud.Database, ...inputs: I) => Promise<UniCloudDatabaseOutput<O>>,\n options: Omit<UseCloudDatabaseOptions<I, O>, 'placeholder'> & { placeholder: () => O },\n): UseRequestOutputFilled<I, O>;\nexport function useCloudDatabase<I extends AnyArray, O>(\n caller: (db: UniCloud.Database, ...inputs: I) => Promise<UniCloudDatabaseOutput<O>>,\n options?: UseCloudDatabaseOptions<I, O>,\n): UseRequestOutput<I, O>;\nexport function useCloudDatabase<I extends AnyArray, O>(\n caller: (db: UniCloud.Database, ...inputs: I) => Promise<UniCloudDatabaseOutput<O>>,\n options?: UseCloudDatabaseOptions<I, O>,\n): UseRequestOutput<I, O> {\n // 获取数据库实例,优先使用模拟数据库(用于测试),否则使用uniCloud数据库\n const db = options?._mockDatabase || uniCloud.database();\n return useRequest(async (...inputs: I) => {\n const { result } = await caller(db, ...inputs);\n if (!result.errCode) return result;\n throw new Error(result.errMsg || '请求失败');\n }, options);\n}\n"],"names":["options","useRequest"],"mappings":";;;AA6CgB,SAAA,qBAAqB,YAAiC,SAAuC;AAC3G,QAAM,UAAS,mCAAS,gBAAe,SAAS,aAAa,YAAY,OAAO;AAC1E,QAAA,iBAAiC,CAAC,QAAQA,aAAY;AAEnD,WAAAC,QAAA,WAAW,UAAU,WAAW;AACrC,YAAM,SAAS,MAAM,OAAO,QAAQ,GAAG,MAAM;AAC7C,UAAI,CAAC,OAAO,QAAS,QAAO,OAAO;AACnC,YAAM,IAAI,MAAM,OAAO,UAAU,MAAM;AAAA,OACtCD,QAAO;AAAA,EACZ;AAEO,SAAA;AACT;AA+BgB,SAAA,iBACd,QACA,SACwB;AAExB,QAAM,MAAK,mCAAS,kBAAiB,SAAS,SAAS;AAChD,SAAAC,QAAA,WAAW,UAAU,WAAc;AACxC,UAAM,EAAE,OAAO,IAAI,MAAM,OAAO,IAAI,GAAG,MAAM;AACzC,QAAA,CAAC,OAAO,QAAgB,QAAA;AAC5B,UAAM,IAAI,MAAM,OAAO,UAAU,MAAM;AAAA,KACtC,OAAO;AACZ;;;"}
|
package/dist/cloud.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AnyArray } from '@cloudcome/utils-core/types';
|
|
2
|
-
import { UseRequestOptions } from '@cloudcome/utils-vue/request';
|
|
2
|
+
import { UseRequestOptions, UseRequestOutput, UseRequestOutputFilled } from '@cloudcome/utils-vue/request';
|
|
3
3
|
type ImportObject = UniCloudNamespace.UniCloud['importObject'];
|
|
4
4
|
type ImportObjectArgs = Parameters<ImportObject>;
|
|
5
5
|
export type UniCloudObjectOutput<T> = {
|
|
@@ -7,7 +7,7 @@ export type UniCloudObjectOutput<T> = {
|
|
|
7
7
|
errMsg?: string;
|
|
8
8
|
data: T;
|
|
9
9
|
};
|
|
10
|
-
type UniCloudObjectServer<
|
|
10
|
+
export type UniCloudObjectServer<O> = Record<string, (...inputs: unknown[]) => Promise<UniCloudObjectOutput<O>>>;
|
|
11
11
|
export type CreateUseCloudObjectOptions = ImportObjectArgs[1] & {
|
|
12
12
|
/**
|
|
13
13
|
* 模拟云对象,用于单元测试
|
|
@@ -15,13 +15,19 @@ export type CreateUseCloudObjectOptions = ImportObjectArgs[1] & {
|
|
|
15
15
|
*/
|
|
16
16
|
_mockServer?: any;
|
|
17
17
|
};
|
|
18
|
+
export type UseCloudObject = {
|
|
19
|
+
<I extends AnyArray, O>(caller: (server: UniCloudObjectServer<O>, ...inputs: I) => Promise<UniCloudObjectOutput<O>>, options: Omit<UseRequestOptions<I, O>, 'placeholder'> & {
|
|
20
|
+
placeholder: () => O;
|
|
21
|
+
}): UseRequestOutputFilled<I, O>;
|
|
22
|
+
<I extends AnyArray, O>(caller: (server: UniCloudObjectServer<O>, ...inputs: I) => Promise<UniCloudObjectOutput<O>>, options?: UseRequestOptions<I, O>): UseRequestOutput<I, O>;
|
|
23
|
+
};
|
|
18
24
|
/**
|
|
19
25
|
* 创建一个用于调用云对象的hook工厂函数
|
|
20
26
|
* @param objectName 云对象名称,用于导入对应的云对象
|
|
21
27
|
* @param options 导入云对象时的可选配置参数
|
|
22
28
|
* @returns 返回一个函数,该函数可以用于创建云对象调用hook
|
|
23
29
|
*/
|
|
24
|
-
export declare function createUseCloudObject(objectName: ImportObjectArgs[0], options?: CreateUseCloudObjectOptions):
|
|
30
|
+
export declare function createUseCloudObject(objectName: ImportObjectArgs[0], options?: CreateUseCloudObjectOptions): UseCloudObject;
|
|
25
31
|
export type UniCloudDatabaseOutput<T> = {
|
|
26
32
|
result: T & {
|
|
27
33
|
errCode?: number | string;
|
|
@@ -40,5 +46,8 @@ export type UseCloudDatabaseOptions<I extends AnyArray, O> = UseRequestOptions<I
|
|
|
40
46
|
* @param options 配置选项
|
|
41
47
|
* @returns 返回一个请求hook,用于处理云数据库调用
|
|
42
48
|
*/
|
|
43
|
-
export declare function useCloudDatabase<I extends AnyArray, O>(caller: (db: UniCloud.Database, ...inputs: I) => Promise<UniCloudDatabaseOutput<O>>, options
|
|
49
|
+
export declare function useCloudDatabase<I extends AnyArray, O>(caller: (db: UniCloud.Database, ...inputs: I) => Promise<UniCloudDatabaseOutput<O>>, options: Omit<UseCloudDatabaseOptions<I, O>, 'placeholder'> & {
|
|
50
|
+
placeholder: () => O;
|
|
51
|
+
}): UseRequestOutputFilled<I, O>;
|
|
52
|
+
export declare function useCloudDatabase<I extends AnyArray, O>(caller: (db: UniCloud.Database, ...inputs: I) => Promise<UniCloudDatabaseOutput<O>>, options?: UseCloudDatabaseOptions<I, O>): UseRequestOutput<I, O>;
|
|
44
53
|
export {};
|
package/dist/cloud.mjs
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { useRequest } from "@cloudcome/utils-vue/request";
|
|
2
2
|
function createUseCloudObject(objectName, options) {
|
|
3
3
|
const server = (options == null ? void 0 : options._mockServer) || uniCloud.importObject(objectName, options);
|
|
4
|
-
|
|
4
|
+
const useCloudObject = (caller, options2) => {
|
|
5
5
|
return useRequest(async (...inputs) => {
|
|
6
6
|
const result = await caller(server, ...inputs);
|
|
7
7
|
if (!result.errCode) return result.data;
|
|
8
8
|
throw new Error(result.errMsg || "请求失败");
|
|
9
9
|
}, options2);
|
|
10
10
|
};
|
|
11
|
+
return useCloudObject;
|
|
11
12
|
}
|
|
12
13
|
function useCloudDatabase(caller, options) {
|
|
13
14
|
const db = (options == null ? void 0 : options._mockDatabase) || uniCloud.database();
|
package/dist/cloud.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud.mjs","sources":["../src/cloud.ts"],"sourcesContent":["import type { AnyArray } from '@cloudcome/utils-core/types';\nimport {
|
|
1
|
+
{"version":3,"file":"cloud.mjs","sources":["../src/cloud.ts"],"sourcesContent":["import type { AnyArray } from '@cloudcome/utils-core/types';\nimport {\n type UseRequestOptions,\n type UseRequestOutput,\n type UseRequestOutputFilled,\n useRequest,\n} from '@cloudcome/utils-vue/request';\n\ntype ImportObject = UniCloudNamespace.UniCloud['importObject'];\ntype ImportObjectArgs = Parameters<ImportObject>;\n\nexport type UniCloudObjectOutput<T> = {\n errCode?: number | string;\n errMsg?: string;\n data: T;\n};\n\nexport type UniCloudObjectServer<O> = Record<string, (...inputs: unknown[]) => Promise<UniCloudObjectOutput<O>>>;\n\nexport type CreateUseCloudObjectOptions = ImportObjectArgs[1] & {\n /**\n * 模拟云对象,用于单元测试\n * @private\n */\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n _mockServer?: any;\n};\n\nexport type UseCloudObject = {\n <I extends AnyArray, O>(\n caller: (server: UniCloudObjectServer<O>, ...inputs: I) => Promise<UniCloudObjectOutput<O>>,\n options: Omit<UseRequestOptions<I, O>, 'placeholder'> & { placeholder: () => O },\n ): UseRequestOutputFilled<I, O>;\n <I extends AnyArray, O>(\n caller: (server: UniCloudObjectServer<O>, ...inputs: I) => Promise<UniCloudObjectOutput<O>>,\n options?: UseRequestOptions<I, O>,\n ): UseRequestOutput<I, O>;\n};\n\n/**\n * 创建一个用于调用云对象的hook工厂函数\n * @param objectName 云对象名称,用于导入对应的云对象\n * @param options 导入云对象时的可选配置参数\n * @returns 返回一个函数,该函数可以用于创建云对象调用hook\n */\nexport function createUseCloudObject(objectName: ImportObjectArgs[0], options?: CreateUseCloudObjectOptions) {\n const server = options?._mockServer || uniCloud.importObject(objectName, options);\n const useCloudObject: UseCloudObject = (caller, options) => {\n // 使用请求hook处理云对象调用\n return useRequest(async (...inputs) => {\n const result = await caller(server, ...inputs);\n if (!result.errCode) return result.data;\n throw new Error(result.errMsg || '请求失败');\n }, options);\n };\n\n return useCloudObject;\n}\n\nexport type UniCloudDatabaseOutput<T> = {\n result: T & {\n errCode?: number | string;\n errMsg?: string;\n };\n};\n\nexport type UseCloudDatabaseOptions<I extends AnyArray, O> = UseRequestOptions<I, O> & {\n /**\n * 模拟数据库,用于单元测试\n */\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n _mockDatabase?: any;\n};\n\n/**\n * 创建一个用于调用云数据库的hook\n * @param caller 调用云数据库的函数,接收数据库实例和输入参数,返回Promise\n * @param options 配置选项\n * @returns 返回一个请求hook,用于处理云数据库调用\n */\nexport function useCloudDatabase<I extends AnyArray, O>(\n caller: (db: UniCloud.Database, ...inputs: I) => Promise<UniCloudDatabaseOutput<O>>,\n options: Omit<UseCloudDatabaseOptions<I, O>, 'placeholder'> & { placeholder: () => O },\n): UseRequestOutputFilled<I, O>;\nexport function useCloudDatabase<I extends AnyArray, O>(\n caller: (db: UniCloud.Database, ...inputs: I) => Promise<UniCloudDatabaseOutput<O>>,\n options?: UseCloudDatabaseOptions<I, O>,\n): UseRequestOutput<I, O>;\nexport function useCloudDatabase<I extends AnyArray, O>(\n caller: (db: UniCloud.Database, ...inputs: I) => Promise<UniCloudDatabaseOutput<O>>,\n options?: UseCloudDatabaseOptions<I, O>,\n): UseRequestOutput<I, O> {\n // 获取数据库实例,优先使用模拟数据库(用于测试),否则使用uniCloud数据库\n const db = options?._mockDatabase || uniCloud.database();\n return useRequest(async (...inputs: I) => {\n const { result } = await caller(db, ...inputs);\n if (!result.errCode) return result;\n throw new Error(result.errMsg || '请求失败');\n }, options);\n}\n"],"names":["options"],"mappings":";AA6CgB,SAAA,qBAAqB,YAAiC,SAAuC;AAC3G,QAAM,UAAS,mCAAS,gBAAe,SAAS,aAAa,YAAY,OAAO;AAC1E,QAAA,iBAAiC,CAAC,QAAQA,aAAY;AAEnD,WAAA,WAAW,UAAU,WAAW;AACrC,YAAM,SAAS,MAAM,OAAO,QAAQ,GAAG,MAAM;AAC7C,UAAI,CAAC,OAAO,QAAS,QAAO,OAAO;AACnC,YAAM,IAAI,MAAM,OAAO,UAAU,MAAM;AAAA,OACtCA,QAAO;AAAA,EACZ;AAEO,SAAA;AACT;AA+BgB,SAAA,iBACd,QACA,SACwB;AAExB,QAAM,MAAK,mCAAS,kBAAiB,SAAS,SAAS;AAChD,SAAA,WAAW,UAAU,WAAc;AACxC,UAAM,EAAE,OAAO,IAAI,MAAM,OAAO,IAAI,GAAG,MAAM;AACzC,QAAA,CAAC,OAAO,QAAgB,QAAA;AAC5B,UAAM,IAAI,MAAM,OAAO,UAAU,MAAM;AAAA,KACtC,OAAO;AACZ;"}
|
package/dist/index.cjs
CHANGED
package/dist/index.mjs
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcome/utils-uni",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.1",
|
|
4
4
|
"description": "cloudcome utils for uni-app",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=22"
|
|
@@ -42,8 +42,9 @@
|
|
|
42
42
|
"dist"
|
|
43
43
|
],
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@cloudcome/utils-core": "~1.
|
|
46
|
-
"@cloudcome/utils-vue": "~1.
|
|
45
|
+
"@cloudcome/utils-core": "~1.5.0",
|
|
46
|
+
"@cloudcome/utils-vue": "~1.9.1",
|
|
47
|
+
"@dcloudio/types": "^3.4.21",
|
|
47
48
|
"@dcloudio/uni-app": "vue3",
|
|
48
49
|
"vue": "^3.5.13"
|
|
49
50
|
},
|