This commit is contained in:
Seth Call 2015-06-09 20:30:34 -05:00
parent ea0c2015d1
commit c26e596d2f
11 changed files with 23 additions and 94 deletions

View File

@ -90,7 +90,7 @@ gem 'influxdb-rails', '0.1.10'
gem 'sitemap_generator'
gem 'bower-rails', "~> 0.9.2"
gem 'react-rails', '~> 1.0'
gem "browserify-rails", "~> 0.7"
#gem "browserify-rails", "~> 0.7"
source 'https://rails-assets.org' do
gem 'rails-assets-reflux'

View File

@ -51,6 +51,9 @@
//= require utils
//= require subscription_utils
//= require custom_controls
//= require react
//= require react_ujs
//= require react-init
//= require react-components
//= require web/signup_helper
//= require web/signin_helper

View File

@ -3,7 +3,7 @@
$ = jQuery
context = window
context.JK ||= {};
broadcastActions = context.JK.Actions.broadcast
broadcastActions = context.JK.Actions.Broadcast
context.JK.ClientInit = class ClientInit
constructor: () ->

View File

@ -1,30 +1,3 @@
//= require_self
//= require react_ujs
// this pulls in react + addons (like CSS transitions)
React = require('react/addons');
context = window
var actions = {}
var stores = {}
var components = {}
// create globally available references to all actions, stores, and components
context.JK.Actions = actions
context.JK.Stores = stores
context.JK.Components = components
// FLUX ACTIONS
actions.broadcast = require('./react-components/actions/BroadcastActions')
// FLUX STORES
stores.broadcast = require('./react-components/stores/BroadcastStore');
// REACT COMPONENTS
// NOTE: be sure to give each component a global name so that you can use the <%= react_component "ComponentName" %> directive or in JSX
components.broadcastHolder = BroadcastHolder = require('./react-components/BroadcastHolder')
components.broadcast = Broadcast = require('./react-components/Broadcast')
//= require ./react-components/actions/BroadcastActions
//= require ./react-components/stores/BroadcastStore
//= require_directory ./react-components

View File

@ -1,6 +1,6 @@
var React = require('react');
context = window
var broadcastActions = window.JK.Actions.broadcast;
var broadcastActions = window.JK.Actions.Broadcast;
var rest = window.JK.Rest();
var Broadcast = React.createClass({
@ -48,4 +48,5 @@ var Broadcast = React.createClass({
});
// each file will export exactly one component
module.exports = Broadcast;
context.JK.Components.Broadcast = Broadcast
context.Broadcast = Broadcast

View File

@ -1,11 +1,9 @@
var React = require('react');
context = window
var ReactCSSTransitionGroup = React.addons.CSSTransitionGroup;
var broadcastStore = window.JK.Stores.broadcast;
var BroadcastHolder = React.createClass({displayName: 'Broadcast Notification Holder',
mixins: [Reflux.connect(broadcastStore, 'notification')],
mixins: [Reflux.connect(context.JK.Stores.Broadcast, 'notification')],
render: function() {
var notification = []
@ -24,4 +22,5 @@ var BroadcastHolder = React.createClass({displayName: 'Broadcast Notification Ho
});
// each file will export exactly one component
module.exports = BroadcastHolder;
context.JK.Components.BroadcastHolder = BroadcastHolder
context.BroadcastHolder = BroadcastHolder

View File

@ -1,8 +1,8 @@
context = window
BroadcastActions = Reflux.createActions({
load: {asyncResult: true},
hide: {}
})
module.exports = BroadcastActions
context.JK.Actions.Broadcast = BroadcastActions

View File

@ -1,7 +1,7 @@
$ = jQuery
context = window
logger = context.JK.logger
broadcastActions = context.JK.Actions.broadcast
broadcastActions = context.JK.Actions.Broadcast
rest = context.JK.Rest()
@ -27,5 +27,5 @@ BroadcastStore = Reflux.createStore(
}
)
module.exports = BroadcastStore
context.JK.Stores.Broadcast = BroadcastStore

View File

@ -0,0 +1,3 @@
window.JK.Actions = {}
window.JK.Stores = {}
window.JK.Components = {}

View File

@ -33,9 +33,6 @@ echo "updating dependencies"
bundle install --path vendor/bundle
#bundle update
# make sure we have node dependencies (needed for react)
npm install
set +e
echo "cleaning assets from last build"
# clean assets, because they may be lingering from last build

View File

@ -86,52 +86,6 @@ if defined?(Bundler)
config.assets.precompile += %w( web/web.js web/web.css )
config.assets.precompile += %w( minimal/minimal.js minimal/minimal.css )
########
######## https://github.com/browserify-rails/browserify-rails
########
# Paths, that should be browserified. We browserify everything, that
# matches (===) one of the paths. So you will most likely put lambdas
# regexes in here.
#
# By default only files in /app and /node_modules are browserified,
# vendor stuff is normally not made for browserification and may stop
# working.
# config.browserify_rails.paths << /vendor\/assets\/javascripts\/module.js/
# Environments, in which to generate source maps
#
# The default is none
# config.browserify_rails.source_map_environments << "development"
# Should the node_modules directory be evaluated for changes on page load
#
# The default is `false`
# config.browserify_rails.evaluate_node_modules = true
# Force browserify on every found JavaScript asset
#
# The default is `false`
# config.browserify_rails.force = true
# Command line options used when running browserify
#
# can be provided as an array:
# config.browserify_rails.commandline_options = ["-t browserify-shim", "--fast"]
# or as a string:
# config.browserify_rails.commandline_options = "-t browserify-shim --fast"
# Define NODE_ENV to be used with envify
#
# defaults to Rails.env
# config.browserify_rails.node_env = "production"
# where is rabbitmq?
config.rabbitmq_host = "localhost"
config.rabbitmq_port = 5672
@ -397,6 +351,5 @@ if defined?(Bundler)
config.react.variant = :production
config.react.addons = true
config.browserify_rails.commandline_options = " --transform reactify --extension=\".jsx\" "
end
end