Skip to content

Instantly share code, notes, and snippets.

View erezrokah's full-sized avatar

Erez Rokah erezrokah

View GitHub Profile

Keybase proof

I hereby claim:

  • I am erezrokah on github.
  • I am erezro (https://keybase.io/erezro) on keybase.
  • I have a public key whose fingerprint is 533F 1D72 4E2C 80E7 16EA 4D8D CE44 664A 4B99 0197

To claim this, I am signing this object:

@erezrokah
erezrokah / datenow.js
Created June 13, 2019 14:49
Testing Date.now vs Date.parse(new Date().toUTCString())
const sleep = async seconds => {
return new Promise((resolve, reject) => setTimeout(resolve, seconds * 1000));
};
(async () => {
for (let i = 0; i < 10; i++) {
console.log('-----------------------------');
console.log(Date.now());
console.log(Date.parse(new Date().toUTCString()));
console.log('-----------------------------');
@erezrokah
erezrokah / googleSignin.js
Last active November 16, 2017 06:32
Firebase google sign-in
function getCredential(token) {
return { token, secret: 'SomeRandomNumber', provider: 'google' };
}
function signInWithCredential(token) {
return firebase.auth().signInWithCredential(getCredential(token))
.then(user => {
console.log('signed in');
})
}
//import mocked RNFirebase
import RNFirebase from 'react-native-firebase'
//reset mocks
beforeEach(() => {
RNFirebase.reset()
})
//set mocked data
const ref = RNFirebase.firebase.database().ref('users/')
export function listenToMessages() {
return listenToPath(metaTypes.messages, 'messages')
}
//@flow
import firebase from '../firebase'
firebase.database().ref('messages').on('value', (snap) => {
//do something with snap
})
['FIREBASE_LISTEN_REQUESTED'](state, action) {
const newState = {
...state,
[action.metaType]: {
...state[action.metaType],
inProgress: true, error: '', ref: action.ref
}
}
return newState
},
//@flow
export function listenRemoved(metaType: string) {
return {
type: 'FIREBASE_LISTEN_REMOVED',
metaType,
}
}
//@flow
import createReducer from '../createReducer'
const initialState = { messages: { inProgress: false, items: { } } }
//createReducer taken from here http://redux.js.org/docs/recipes/ReducingBoilerplate.html
export const reducer = createReducer(initialState, {
['MESSAGES_REQUESTED'](state, action) {
const newState = { ...state,
//@flow
import firebase from '../firebase'
export function messagesRequested() {
return {
type: 'MESSAGES_REQUESTED'
}
}