Skip to content

Instantly share code, notes, and snippets.

View chadwilken's full-sized avatar

Chad Wilken chadwilken

View GitHub Profile
import { Controller } from 'stimulus';
import React from 'react';
import ReactDOM from 'react-dom';
import AppContainer from 'components/core/AppContainer';
export default class extends Controller {
connect() {
const Component = window.ReactComponents[this.data.get('component')];
let props = this.data.get('props') || {};
if (typeof props === 'string') {
module ReactHelper
def react_component(name, props: {}, html_class: nil)
content_tag(
'div',
nil,
class: html_class,
data: { controller: 'react', 'react-component' => name, 'react-props' => react_props(props) }
)
end
import { Controller } from 'stimulus';
export default class extends Controller {
static targets = ['message']
connect() {
this.timeout = setTimeout(this.closeFlash, 2500);
}
disconnect() {
import { Controller } from 'stimulus';
export default class extends Controller {
connect() {
this.select2Mount();
document.addEventListener('turbolinks:before-cache', this.handleCache);
}
disconnect() {
{
"parser": "babel-eslint",
"extends": "airbnb",
"globals": {
"alert": true,
"document": true,
"FormData": true,
"window": true
},
"plugins": [
@chadwilken
chadwilken / example-request.json
Created August 23, 2017 17:10
An example request body for creating a project
{
"project": {
"name": "The Office",
"address": {
"street_address_1": "3793 West Trickery Rd",
"city": "Lincoln",
"state": "NE",
"postal_code": "68512",
"country": "US"
},
@chadwilken
chadwilken / project.rb
Created July 20, 2017 18:42
The Project JSON Partial
json = {
id: project.id,
name: project.name,
street_address_1: project.street_address_1,
street_address_2: project.street_address_2,
city: project.city,
state: project.state,
postal_code: project.postal_code,
country: project.country,
company_id: project.company_id,
can_view_users_photos = current_user.has_permission?(Permission::VIEW_USERS_PHOTOS)
@projects.map do |project|
Rails.cache.fetch(['v1', "can-view-all-photo-#{can_view_users_photos}", 'recent', project]) do
render partial: 'v1/locations/recent/project', locals: { project: project, can_view_users: can_view_users_photos }
end
end