From c74a5d5f428f41667508d493ae1a72030605d8a9 Mon Sep 17 00:00:00 2001 From: DCloud_LXH <283700113@qq.com> Date: Wed, 27 Jul 2022 16:16:28 +0800 Subject: [PATCH] feat(app): openAppAuthorizeSetting --- package.json | 2 +- packages/uni-api/src/index.ts | 1 + .../device/openAppAuthorizeSetting.ts | 3 +++ .../api/device/openAppAuthorizeSetting.ts | 24 +++++++++++++++++++ .../uni-app-plus/src/service/api/index.ts | 1 + pnpm-lock.yaml | 8 +++---- 6 files changed, 34 insertions(+), 5 deletions(-) create mode 100644 packages/uni-api/src/protocols/device/openAppAuthorizeSetting.ts create mode 100644 packages/uni-app-plus/src/service/api/device/openAppAuthorizeSetting.ts diff --git a/package.json b/package.json index 4e125e277..ac351361f 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "devDependencies": { "@babel/core": "^7.17.10", "@babel/preset-env": "^7.16.11", - "@dcloudio/types": "^3.0.10", + "@dcloudio/types": "^3.0.11", "@dcloudio/uni-api": "3.0.0-alpha-3050220220719003", "@dcloudio/uni-app": "3.0.0-alpha-3050220220719003", "@jest/types": "^27.0.2", diff --git a/packages/uni-api/src/index.ts b/packages/uni-api/src/index.ts index 01a47e253..534828561 100644 --- a/packages/uni-api/src/index.ts +++ b/packages/uni-api/src/index.ts @@ -43,6 +43,7 @@ export * from './protocols/device/soterAuthentication' export * from './protocols/device/scanCode' export * from './protocols/device/getSystemSetting' export * from './protocols/device/getAppAuthorizeSetting' +export * from './protocols/device/openAppAuthorizeSetting' export * from './protocols/storage/storage' diff --git a/packages/uni-api/src/protocols/device/openAppAuthorizeSetting.ts b/packages/uni-api/src/protocols/device/openAppAuthorizeSetting.ts new file mode 100644 index 000000000..7b8da7eef --- /dev/null +++ b/packages/uni-api/src/protocols/device/openAppAuthorizeSetting.ts @@ -0,0 +1,3 @@ +export const API_OPEN_APP_AUTHORIZE_SETTING = 'openAppAuthorizeSetting' +export type API_TYPE_OPEN_APP_AUTHORIZE_SETTING = + typeof uni.openAppAuthorizeSetting diff --git a/packages/uni-app-plus/src/service/api/device/openAppAuthorizeSetting.ts b/packages/uni-app-plus/src/service/api/device/openAppAuthorizeSetting.ts new file mode 100644 index 000000000..8582eca25 --- /dev/null +++ b/packages/uni-app-plus/src/service/api/device/openAppAuthorizeSetting.ts @@ -0,0 +1,24 @@ +import { + API_OPEN_APP_AUTHORIZE_SETTING, + API_TYPE_OPEN_APP_AUTHORIZE_SETTING, + defineAsyncApi, +} from '@dcloudio/uni-api' +type OpenAppAuthorizeSetting = ( + cb: (res: { type: string; code: number }) => void +) => void + +export const openAppAuthorizeSetting = + defineAsyncApi( + API_OPEN_APP_AUTHORIZE_SETTING, + (_, { resolve, reject }) => { + const { openAppAuthorizeSetting } = weex.requireModule('plus') + const fn = openAppAuthorizeSetting as OpenAppAuthorizeSetting + fn((ret) => { + if (ret.type === 'success') { + resolve() + } else { + reject() + } + }) + } + ) diff --git a/packages/uni-app-plus/src/service/api/index.ts b/packages/uni-app-plus/src/service/api/index.ts index b2d4899e7..4aa49c19a 100644 --- a/packages/uni-app-plus/src/service/api/index.ts +++ b/packages/uni-app-plus/src/service/api/index.ts @@ -26,6 +26,7 @@ export * from './device/brightness' export * from './device/getWindowInfo' export * from './device/getSystemSetting' export * from './device/getAppAuthorizeSetting' +export * from './device/openAppAuthorizeSetting' export * from './media/getImageInfo' export * from './media/getVideoInfo' diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 05c0a36d8..f3aa52b03 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,7 +6,7 @@ importers: specifiers: '@babel/core': ^7.17.10 '@babel/preset-env': ^7.16.11 - '@dcloudio/types': ^3.0.10 + '@dcloudio/types': ^3.0.11 '@dcloudio/uni-api': 3.0.0-alpha-3050220220719003 '@dcloudio/uni-app': 3.0.0-alpha-3050220220719003 '@jest/types': ^27.0.2 @@ -57,7 +57,7 @@ importers: devDependencies: '@babel/core': 7.18.5 '@babel/preset-env': 7.18.2_@babel+core@7.18.5 - '@dcloudio/types': 3.0.10 + '@dcloudio/types': 3.0.11 '@dcloudio/uni-api': link:packages/uni-api '@dcloudio/uni-app': link:packages/uni-app '@jest/types': 27.5.1 @@ -2137,8 +2137,8 @@ packages: resolution: {integrity: sha512-mrCMwcINy1IFjU9VUqLeWBkj404yWs5paLDttBcA+eqUjanuUQbBcTVPqlrGgkyzLXDcV2oDDZRSNxNpXi4kMQ==} dev: true - /@dcloudio/types/3.0.10: - resolution: {integrity: sha512-FPffL88ogSqYeobvV0v7F9qYoMJajMfpILCipKHyO73DLSNbWNAbuDg+4tif+qMFeFRroKdLIkKOiYJT5oLSng==} + /@dcloudio/types/3.0.11: + resolution: {integrity: sha512-ggXrnqpROuLwubjp5/IZvGd4f8l6MsXGPzU45WoQ4UGStxpStwnu3dDgdLgXJMyWnGPZetcsjl+hcQrD7mjAiw==} dev: true /@dcloudio/uni-cli-i18n/2.0.0-alpha-33020211130001: -- GitLab