1 | import { Observable } from 'rxjs';
|
2 | import { checkAvailability, getPlugin } from './common';
|
3 | function overrideFunction(pluginObj, methodName) {
|
4 | return new Observable(function (observer) {
|
5 | var availabilityCheck = checkAvailability(pluginObj, methodName);
|
6 | if (availabilityCheck === true) {
|
7 | var pluginInstance_1 = getPlugin(pluginObj.constructor.getPluginRef());
|
8 | pluginInstance_1[methodName] = observer.next.bind(observer);
|
9 | return function () { return (pluginInstance_1[methodName] = function () { }); };
|
10 | }
|
11 | else {
|
12 | observer.error(availabilityCheck);
|
13 | observer.complete();
|
14 | }
|
15 | });
|
16 | }
|
17 | export function cordovaFunctionOverride(pluginObj, methodName, args) {
|
18 | if (args === void 0) { args = []; }
|
19 | return overrideFunction(pluginObj, methodName);
|
20 | }
|
21 |
|
\ | No newline at end of file |