diff --git a/package.json b/package.json index 4e125e2775bfb0680c87cd7fecd7c8f462f391c8..ac351361f71a746831ba3a6fa5500c4bdaa72b53 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 01a47e253986a5bc8c6d89c38421941fe6f945a8..5348285619810c986580ab8c9acdec09aaeb5ff6 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 0000000000000000000000000000000000000000..7b8da7eef12878ba76a5e01f7fee58bdee02307b --- /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 0000000000000000000000000000000000000000..8582eca25b3e42234ed9c5a14e6358dfe76d40cb --- /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 b2d4899e7a841421dbb4038a3be7635b9d419bb6..4aa49c19a125d7753007df0aa86f2ae76fa6b9c2 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 05c0a36d8f228fee69bc8af2babe73a2da8e7a52..f3aa52b032e2d272d794f560a69f87a366ee6b29 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: