(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
| import React, { ReactChild } from 'react'; | |
| import { Database } from '@nozbe/watermelondb'; | |
| import { getWatermelon } from 'app/utils/DBWatermelonOld/DBWatermelonOld'; | |
| import DatabaseProvider from '@nozbe/watermelondb/DatabaseProvider'; | |
| const WatermelonProvider = (props) => { | |
| const watermelonRef = React.useRef(); | |
| const [database, setDatabase] = React.useState(); | |
| if (!watermelonRef.current) { |
| import { forEachObjIndexed } from "ramda"; | |
| import * as React from "react"; | |
| import { | |
| Animated, | |
| ScrollView, | |
| View, | |
| ViewStyle, | |
| LayoutChangeEvent, | |
| NativeScrollEvent, | |
| } from "react-native"; |
| import { StatusBar } from 'react-native'; | |
| import { Audio, FileSystem } from 'expo'; | |
| export default class CachedAudio { | |
| constructor(uri) { | |
| this.uri = uri; | |
| this.fileUri = null; | |
| this.sound = null; | |
| this.downloadResumable = null; | |
| } |
| const admin = require("admin"); | |
| function getFirebaseUser(req, res, next) { | |
| console.log("Check if request is authorized with Firebase ID token"); | |
| if ( | |
| !req.headers.authorization || | |
| !req.headers.authorization.startsWith("Bearer ") | |
| ) { | |
| console.error( | |
| "No Firebase ID token was passed as a Bearer token in the Authorization header.", |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
| // ==UserScript== | |
| // @name SCRIPT_NAME_HERE | |
| // @namespace NAMESPACE | |
| // @version 0.1 | |
| // @description WIDGET_DESCRIPTION_HERE | |
| // @match http*://*/* | |
| // @include http*://*/* | |
| // @copyright 2013+, YOURNAME | |
| // ==/UserScript== |