js: implement keyboard related api
This commit is contained in:
@@ -3409,6 +3409,18 @@ function notch(context) {
|
||||
};
|
||||
}
|
||||
|
||||
function keyboard(context) {
|
||||
return {
|
||||
subscribe: function (callback) {
|
||||
return context.callNative('keyboard', 'subscribe', context.function2Id(callback));
|
||||
},
|
||||
unsubscribe: function (subscribeId) {
|
||||
context.removeFuncById(subscribeId);
|
||||
return context.callNative('keyboard', 'unsubscribe', subscribeId);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
var __values = (undefined && undefined.__values) || function(o) {
|
||||
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
||||
if (m) { return m.call(o); }
|
||||
@@ -3603,6 +3615,7 @@ exports.hlayout = hlayout;
|
||||
exports.image = image;
|
||||
exports.input = input;
|
||||
exports.internalScheme = internalScheme;
|
||||
exports.keyboard = keyboard;
|
||||
exports.layoutConfig = layoutConfig;
|
||||
exports.list = list;
|
||||
exports.listItem = listItem;
|
||||
|
@@ -2643,6 +2643,18 @@ function notch(context) {
|
||||
};
|
||||
}
|
||||
|
||||
function keyboard(context) {
|
||||
return {
|
||||
subscribe: (callback) => {
|
||||
return context.callNative('keyboard', 'subscribe', context.function2Id(callback));
|
||||
},
|
||||
unsubscribe: (subscribeId) => {
|
||||
context.removeFuncById(subscribeId);
|
||||
return context.callNative('keyboard', 'unsubscribe', subscribeId);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
class Observable {
|
||||
constructor(provider, clz) {
|
||||
this.observers = new Set;
|
||||
@@ -2789,6 +2801,7 @@ exports.hlayout = hlayout;
|
||||
exports.image = image;
|
||||
exports.input = input;
|
||||
exports.internalScheme = internalScheme;
|
||||
exports.keyboard = keyboard;
|
||||
exports.layoutConfig = layoutConfig;
|
||||
exports.list = list;
|
||||
exports.listItem = listItem;
|
||||
|
@@ -4142,6 +4142,18 @@ function notch(context) {
|
||||
};
|
||||
}
|
||||
|
||||
function keyboard(context) {
|
||||
return {
|
||||
subscribe: (callback) => {
|
||||
return context.callNative('keyboard', 'subscribe', context.function2Id(callback));
|
||||
},
|
||||
unsubscribe: (subscribeId) => {
|
||||
context.removeFuncById(subscribeId);
|
||||
return context.callNative('keyboard', 'unsubscribe', subscribeId);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
class Observable {
|
||||
constructor(provider, clz) {
|
||||
this.observers = new Set;
|
||||
@@ -4529,6 +4541,7 @@ exports.hlayout = hlayout;
|
||||
exports.image = image;
|
||||
exports.input = input;
|
||||
exports.internalScheme = internalScheme;
|
||||
exports.keyboard = keyboard;
|
||||
exports.layoutConfig = layoutConfig;
|
||||
exports.list = list;
|
||||
exports.listItem = listItem;
|
||||
|
11
doric-js/index.d.ts
vendored
11
doric-js/index.d.ts
vendored
@@ -101,6 +101,7 @@ declare module 'doric/lib/src/native/index.native' {
|
||||
export * from 'doric/lib/src/native/statusbar';
|
||||
export * from 'doric/lib/src/native/coordinator';
|
||||
export * from 'doric/lib/src/native/notch';
|
||||
export * from 'doric/lib/src/native/keyboard';
|
||||
}
|
||||
|
||||
declare module 'doric/lib/src/util/index.util' {
|
||||
@@ -991,6 +992,16 @@ declare module 'doric/lib/src/native/notch' {
|
||||
};
|
||||
}
|
||||
|
||||
declare module 'doric/lib/src/native/keyboard' {
|
||||
import { BridgeContext } from "doric/lib/src/runtime/global";
|
||||
export function keyboard(context: BridgeContext): {
|
||||
subscribe: (callback: (data: {
|
||||
height: number;
|
||||
}) => void) => Promise<string>;
|
||||
unsubscribe: (subscribeId: string) => Promise<any>;
|
||||
};
|
||||
}
|
||||
|
||||
declare module 'doric/lib/src/util/color' {
|
||||
import { Modeling } from "doric/lib/src/util/types";
|
||||
/**
|
||||
|
1
doric-js/lib/src/native/index.native.d.ts
vendored
1
doric-js/lib/src/native/index.native.d.ts
vendored
@@ -9,3 +9,4 @@ export * from './notification';
|
||||
export * from './statusbar';
|
||||
export * from './coordinator';
|
||||
export * from './notch';
|
||||
export * from './keyboard';
|
||||
|
@@ -24,3 +24,4 @@ export * from './notification';
|
||||
export * from './statusbar';
|
||||
export * from './coordinator';
|
||||
export * from './notch';
|
||||
export * from './keyboard';
|
||||
|
7
doric-js/lib/src/native/keyboard.d.ts
vendored
Normal file
7
doric-js/lib/src/native/keyboard.d.ts
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
import { BridgeContext } from "../runtime/global";
|
||||
export declare function keyboard(context: BridgeContext): {
|
||||
subscribe: (callback: (data: {
|
||||
height: number;
|
||||
}) => void) => Promise<string>;
|
||||
unsubscribe: (subscribeId: string) => Promise<any>;
|
||||
};
|
11
doric-js/lib/src/native/keyboard.js
Normal file
11
doric-js/lib/src/native/keyboard.js
Normal file
@@ -0,0 +1,11 @@
|
||||
export function keyboard(context) {
|
||||
return {
|
||||
subscribe: (callback) => {
|
||||
return context.callNative('keyboard', 'subscribe', context.function2Id(callback));
|
||||
},
|
||||
unsubscribe: (subscribeId) => {
|
||||
context.removeFuncById(subscribeId);
|
||||
return context.callNative('keyboard', 'unsubscribe', subscribeId);
|
||||
}
|
||||
};
|
||||
}
|
@@ -23,4 +23,5 @@ export * from './animate'
|
||||
export * from './notification'
|
||||
export * from './statusbar'
|
||||
export * from './coordinator'
|
||||
export * from './notch'
|
||||
export * from './notch'
|
||||
export * from './keyboard'
|
27
doric-js/src/native/keyboard.ts
Normal file
27
doric-js/src/native/keyboard.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
/*
|
||||
* Copyright [2019] [Doric.Pub]
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { BridgeContext } from "../runtime/global"
|
||||
export function keyboard(context: BridgeContext) {
|
||||
return {
|
||||
subscribe: (callback: (data: { height: number }) => void) => {
|
||||
return context.callNative('keyboard', 'subscribe', context.function2Id(callback)) as Promise<string>
|
||||
},
|
||||
unsubscribe: (subscribeId: string) => {
|
||||
context.removeFuncById(subscribeId)
|
||||
return context.callNative('keyboard', 'unsubscribe', subscribeId)
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user