Skip to content

Instantly share code, notes, and snippets.

View srph's full-sized avatar
🛠️
Building @Stride-Labs Frontend

Kier Borromeo srph

🛠️
Building @Stride-Labs Frontend
View GitHub Profile
@srph
srph / index.js
Created January 26, 2018 11:19
React: Building permission HOCs
import React from 'react'
import history from '@/history'
import make from './make'
export default {
/**
* Only guests can enter this page
*/
guest: make((props) => {
if (props.auth.data == null) {
@srph
srph / auth.php
Last active January 10, 2018 18:51
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
<?php
class Auth {
/**
* Our unique session key
*/
protected $key = '__MY_APP_AUTH__';
/**
* PDO Instance
<template>
<div :ref="(el) => this.el = el"></div>
</template>
@srph
srph / Root.js
Created December 30, 2017 13:03
<template>
<autocomplete>
<input slot-scope="props" ref="props.inputRef" @change="props.change" :value="props.value"></input>
</autocomplete>
</template>
@srph
srph / Root.js
Created December 30, 2017 13:02
<template>
<autocomplete>
<autocomplete-input slot-scope="props" @input="props.onInput" :value="props.value">
</autocomplete-input>
</autocomplete>
</template>
<template>
<div>
<slot></slot>
</div>
</template>
<script>
export default {
name: 'autocomplete',
provide() {
import React, {Component} from 'react'
class Column extends Component {
state = {
list: [], // Let's pretend this is filled by some AJAX request
sorting: 0,
sorted: []
}
filter(sorting) {
import React, {Component} from 'react'
import SortingLayer from './SortingLayer'
class Column extends Component {
state = {
list: [], // Let's pretend this is filled by some AJAX request
sorting: 0
}
render() {
<SortingLayer list={list} sort={sort}>
{(list) => (
list.map((item, i) => (
<div key={i}>
{item.title}
</div>
))
)}
</SortingLayer>
@srph
srph / index.js
Last active December 26, 2017 09:48
react computed props
class MyComponent extends React.Component {
render() {
const {fullName} = this.props.computed
}
}
export default computed({
fullName(state, props) {
return `${props.user.firstName} ${props.user.lastName}`
}