Files
react-native-firebase/packages/indexing/lib/index.js
Ilja Daderko b40d44c57e Move commons into /app (#2486)
* stash

* move commons into the app
2019-08-14 13:42:08 +03:00

76 lines
2.0 KiB
JavaScript

/*
* Copyright (c) 2016-present Invertase Limited & Contributors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this library 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 { isFunction } from '@react-native-firebase/app/lib/common';
import {
createModuleNamespace,
FirebaseModule,
getFirebaseRoot,
} from '@react-native-firebase/app/lib/internal';
import { Linking } from 'react-native';
import version from './version';
const statics = {};
const namespace = 'indexing';
const nativeModuleName = 'RNFBIndexingModule';
class FirebaseIndexingModule extends FirebaseModule {
/**
*
*/
getInitialURL() {
return Linking.getInitialURL();
}
/**
*
* @param listener
* @returns {function(): *}
*/
onOpenURL(listener) {
if (!isFunction(listener)) {
throw new Error("firebase.indexing().onOpenURL(*) 'listener' must be a function.");
}
Linking.addEventListener('url', ({ url }) => listener(url));
return () => Linking.removeEventListener('url', listener);
}
}
// import { SDK_VERSION } from '@react-native-firebase/indexing';
export const SDK_VERSION = version;
// import indexing from '@react-native-firebase/indexing';
// indexing().X(...);
export default createModuleNamespace({
statics,
version,
namespace,
nativeModuleName,
nativeEvents: false,
hasMultiAppSupport: false,
hasCustomUrlOrRegionSupport: false,
ModuleClass: FirebaseIndexingModule,
});
// import indexing, { firebase } from '@react-native-firebase/indexing';
// indexing().X(...);
// firebase.indexing().X(...);
export const firebase = getFirebaseRoot();