Skip to content

Instantly share code, notes, and snippets.

View mcavaliere's full-sized avatar

Mike Cavaliere mcavaliere

View GitHub Profile
import Utils from 'utils.js';
// Load the config.
let config = Utils.initConfig();
// Later, use it
if ( ! Utils.configSettingExists( config, 'foo' ) ) {
Utils.printConfigFormatInstructions();
}
// Old
export default {
// ...
}
// New
export default class {
// ...
}
@mcavaliere
mcavaliere / AsyncStorageSupplement.js
Last active July 2, 2018 22:09
Workaround for promise issues with AsyncStorage multiSet/multiGet/multiRemove in React Native (unresolved as of 2018-07-02). See: https://github.com/facebook/react-native/issues/14101
export default class AsyncStorageSupplement {
static multiGet(keys) {
return Promise.all(
keys.map(key => AsyncStorage.getItem(key))
)
}
static multiRemove(keys) {
return Promise.all(
keys.map(key => AsyncStorage.removeItem(key))
var MyApp = {};
MyApp.namespace = function() {
var ln = arguments.length, i, value, split, x, xln, parts, object;
for (i = 0; i < ln; i++) {
value = arguments[i];
parts = value.split(".");
object = window[parts[0]] = Object(window[parts[0]]);
// Less Coupled
var CountrySelectClass = function() {
var countriesIveBeenTo = {
'BE': 'Belgium',
'CR': 'Costa Rica',
'IT': 'Italy',
'US': 'United States of America',
'UK': 'United Kingdom'
};
@mcavaliere
mcavaliere / rn-design-systems-color-constants.js
Last active April 25, 2018 16:19
React Native Design Systems: Typography Constants
import Colors from './colors';
export default const Typography = {
heading1: {
fontSize: 30,
fontWeight: 'bold',
lineHeight: 32,
color: Colors.black
},
@mcavaliere
mcavaliere / rn-design-systems-clean-component.js
Last active April 25, 2018 16:17
React Native Design Systems: A Cleaner Component
import React, { Component } from 'react';
import { Text, View } from 'react-native';
import Styles from './Card.style';
class Card extends Component {
render() {
return (
<View style={ Styles.container }>
<View style={ Styles.titleContainer }>
@mcavaliere
mcavaliere / rn-design-systems-simple-component-without-literals.js
Last active April 25, 2018 16:12
React Native Design Systems: SimpleComponentWithoutLiterals
let Style = StyleSheet.create({
container: { borderRadius: 5 },
heading: { backgroundColor: 'beige', padding: 5 },
headingText: { color: 'black', fontSize: 16, fontWeight: 'bold' },
body: { padding: 5 },
bodyText: { color: 'black', fontSize: 12 }
})
class SimpleComponentWithoutLiterals extends Component {
render() {
@mcavaliere
mcavaliere / rn-design-systems-simple-component.js
Last active April 25, 2018 16:12
React Native Design Systems: SimpleComponent
class SimpleComponent extends Component {
render() {
return (
<View style={{ borderRadius: 5 }}>
<View style={{ backgroundColor: 'beige', padding: 5 }}>
<Text style={{ color: 'black', fontSize: 16, fontWeight: 'bold' }}>{ this.props.title }</Text>
</View>
<View style={{ padding: 5 }}>
<Text style={{ color: 'black', fontSize: 12 }}>{ this.props.bodyText }</Text>
</View>
@mcavaliere
mcavaliere / rn-design-systems-simple-component-with-cascade.js
Last active April 25, 2018 15:39
React Native Design Systems: SimpleComponentWithCascade
class SimpleComponentWithCascade extends Component {
render() {
return (
<View style={[ ComponentStyles.container, LayoutStyles.marginBottom ]}>
<View style={[ ComponentStyles.heading, LayoutStyles.paddingSm ]}>
<Text style={[ ComponentStyles.headingText, TypographyStyles.heading3, TextColors.black ]}>{ this.props.title }</Text>
</View>
<View style={[ ComponentStyles.body, LayoutStyles.paddingSm ]}>
<Text style={[ ComponentStyles.bodyText, TypographyStyles.bodyText, TextColors.darkGrey ]}>{ this.props.bodyText }</Text>
</View>