made with requirebin
Last active
August 29, 2015 14:08
-
-
Save angus-c/39c7331fee5bacf7ef7b to your computer and use it in GitHub Desktop.
requirebin sketch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var reflux = require('reflux'); | |
console.log(reflux.createAction); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require=function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s}({1:[function(require,module,exports){"use strict";function EE(fn,context,once){this.fn=fn;this.context=context;this.once=once||false}function EventEmitter(){}EventEmitter.prototype._events=undefined;EventEmitter.prototype.listeners=function listeners(event){if(!this._events||!this._events[event])return[];for(var i=0,l=this._events[event].length,ee=[];i<l;i++){ee.push(this._events[event][i].fn)}return ee};EventEmitter.prototype.emit=function emit(event,a1,a2,a3,a4,a5){if(!this._events||!this._events[event])return false;var listeners=this._events[event],length=listeners.length,len=arguments.length,ee=listeners[0],args,i,j;if(1===length){if(ee.once)this.removeListener(event,ee.fn,true);switch(len){case 1:return ee.fn.call(ee.context),true;case 2:return ee.fn.call(ee.context,a1),true;case 3:return ee.fn.call(ee.context,a1,a2),true;case 4:return ee.fn.call(ee.context,a1,a2,a3),true;case 5:return ee.fn.call(ee.context,a1,a2,a3,a4),true;case 6:return ee.fn.call(ee.context,a1,a2,a3,a4,a5),true}for(i=1,args=new Array(len-1);i<len;i++){args[i-1]=arguments[i]}ee.fn.apply(ee.context,args)}else{for(i=0;i<length;i++){if(listeners[i].once)this.removeListener(event,listeners[i].fn,true);switch(len){case 1:listeners[i].fn.call(listeners[i].context);break;case 2:listeners[i].fn.call(listeners[i].context,a1);break;case 3:listeners[i].fn.call(listeners[i].context,a1,a2);break;default:if(!args)for(j=1,args=new Array(len-1);j<len;j++){args[j-1]=arguments[j]}listeners[i].fn.apply(listeners[i].context,args)}}}return true};EventEmitter.prototype.on=function on(event,fn,context){if(!this._events)this._events={};if(!this._events[event])this._events[event]=[];this._events[event].push(new EE(fn,context||this));return this};EventEmitter.prototype.once=function once(event,fn,context){if(!this._events)this._events={};if(!this._events[event])this._events[event]=[];this._events[event].push(new EE(fn,context||this,true));return this};EventEmitter.prototype.removeListener=function removeListener(event,fn,once){if(!this._events||!this._events[event])return this;var listeners=this._events[event],events=[];if(fn)for(var i=0,length=listeners.length;i<length;i++){if(listeners[i].fn!==fn&&listeners[i].once!==once){events.push(listeners[i])}}if(events.length)this._events[event]=events;else this._events[event]=null;return this};EventEmitter.prototype.removeAllListeners=function removeAllListeners(event){if(!this._events)return this;if(event)this._events[event]=null;else this._events={};return this};EventEmitter.prototype.off=EventEmitter.prototype.removeListener;EventEmitter.prototype.addListener=EventEmitter.prototype.on;EventEmitter.prototype.setMaxListeners=function setMaxListeners(){return this};EventEmitter.EventEmitter=EventEmitter;EventEmitter.EventEmitter2=EventEmitter;EventEmitter.EventEmitter3=EventEmitter;if("object"===typeof module&&module.exports){module.exports=EventEmitter}},{}],2:[function(require,module,exports){exports.createdStores=[];exports.createdActions=[];exports.reset=function(){while(exports.createdStores.length){exports.createdStores.pop()}while(exports.createdActions.length){exports.createdActions.pop()}}},{}],3:[function(require,module,exports){var _=require("./utils"),maker=require("./joins").instanceJoinCreator;module.exports={hasListener:function(listenable){var i=0,listener;for(;i<(this.subscriptions||[]).length;++i){listener=this.subscriptions[i].listenable;if(listener===listenable||listener.hasListener&&listener.hasListener(listenable)){return true}}return false},listenToMany:function(listenables){for(var key in listenables){var cbname=_.callbackName(key),localname=this[cbname]?cbname:this[key]?key:undefined;if(localname){this.listenTo(listenables[key],localname,this[cbname+"Default"]||this[localname+"Default"]||localname)}}},validateListening:function(listenable){if(listenable===this){return"Listener is not able to listen to itself"}if(!_.isFunction(listenable.listen)){return listenable+" is missing a listen method"}if(listenable.hasListener&&listenable.hasListener(this)){return"Listener cannot listen to this listenable because of circular loop"}},listenTo:function(listenable,callback,defaultCallback){var desub,unsubscriber,subscriptionobj,subs=this.subscriptions=this.subscriptions||[];_.throwIf(this.validateListening(listenable));this.fetchDefaultData(listenable,defaultCallback);desub=listenable.listen(this[callback]||callback,this);unsubscriber=function(){var index=subs.indexOf(subscriptionobj);_.throwIf(index===-1,"Tried to remove listen already gone from subscriptions list!");subs.splice(index,1);desub()};subscriptionobj={stop:unsubscriber,listenable:listenable};subs.push(subscriptionobj);return subscriptionobj},stopListeningTo:function(listenable){var sub,i=0,subs=this.subscriptions||[];for(;i<subs.length;i++){sub=subs[i];if(sub.listenable===listenable){sub.stop();_.throwIf(subs.indexOf(sub)!==-1,"Failed to remove listen from subscriptions list!");return true}}return false},stopListeningToAll:function(){var remaining,subs=this.subscriptions||[];while(remaining=subs.length){subs[0].stop();_.throwIf(subs.length!==remaining-1,"Failed to remove listen from subscriptions list!")}},fetchDefaultData:function(listenable,defaultCallback){defaultCallback=defaultCallback&&this[defaultCallback]||defaultCallback;var me=this;if(_.isFunction(defaultCallback)&&_.isFunction(listenable.getDefaultData)){data=listenable.getDefaultData();if(data&&_.isFunction(data.then)){data.then(function(){defaultCallback.apply(me,arguments)})}else{defaultCallback.call(this,data)}}},joinTrailing:maker("last"),joinLeading:maker("first"),joinConcat:maker("all"),joinStrict:maker("strict")}},{"./joins":9,"./utils":12}],4:[function(require,module,exports){var _=require("./utils"),ListenerMethods=require("./ListenerMethods");module.exports=_.extend({componentWillUnmount:ListenerMethods.stopListeningToAll},ListenerMethods)},{"./ListenerMethods":3,"./utils":12}],5:[function(require,module,exports){var _=require("./utils");module.exports={preEmit:function(){},shouldEmit:function(){return true},listen:function(callback,bindContext){var eventHandler=function(args){callback.apply(bindContext,args)},me=this;this.emitter.addListener(this.eventLabel,eventHandler);return function(){me.emitter.removeListener(me.eventLabel,eventHandler)}},trigger:function(){var args=arguments,pre=this.preEmit.apply(this,args);args=pre===undefined?args:_.isArguments(pre)?pre:[].concat(pre);if(this.shouldEmit.apply(this,args)){this.emitter.emit(this.eventLabel,args)}},triggerAsync:function(){var args=arguments,me=this;_.nextTick(function(){me.trigger.apply(me,args)})}}},{"./utils":12}],6:[function(require,module,exports){var Reflux=require("../src"),_=require("./utils");module.exports=function(listenable,key){return{componentDidMount:function(){for(var m in Reflux.ListenerMethods){if(this[m]!==Reflux.ListenerMethods[m]){if(this[m]){throw"Can't have other property '"+m+"' when using Reflux.listenTo!"}this[m]=Reflux.ListenerMethods[m]}}var me=this,cb=key===undefined?this.setState:function(v){me.setState(_.object([key],[v]))};this.listenTo(listenable,cb,cb)},componentWillUnmount:Reflux.ListenerMixin.componentWillUnmount}}},{"../src":undefined,"./utils":12}],7:[function(require,module,exports){var _=require("./utils"),Reflux=require("../src"),Keep=require("./Keep"),allowed={preEmit:1,shouldEmit:1};module.exports=function(definition){definition=definition||{};for(var d in definition){if(!allowed[d]&&Reflux.PublisherMethods[d]){throw new Error("Cannot override API method "+d+" in action creation. Use another method name or override it on Reflux.PublisherMethods instead.")}}var context=_.extend({eventLabel:"action",emitter:new _.EventEmitter,_isAction:true},Reflux.PublisherMethods,definition);var functor=function(){functor[functor.sync?"trigger":"triggerAsync"].apply(functor,arguments)};_.extend(functor,context);Keep.createdActions.push(functor);return functor}},{"../src":undefined,"./Keep":2,"./utils":12}],8:[function(require,module,exports){var _=require("./utils"),Reflux=require("../src"),Keep=require("./Keep"),allowed={preEmit:1,shouldEmit:1};module.exports=function(definition){definition=definition||{};for(var d in definition){if(!allowed[d]&&(Reflux.PublisherMethods[d]||Reflux.ListenerMethods[d])){throw new Error("Cannot override API method "+d+" in store creation. Use another method name or override it on Reflux.PublisherMethods / Reflux.ListenerMethods instead.")}}function Store(){var i=0,arr;this.subscriptions=[];this.emitter=new _.EventEmitter;this.eventLabel="change";if(this.init&&_.isFunction(this.init)){this.init()}if(this.listenables){arr=[].concat(this.listenables);for(;i<arr.length;i++){this.listenToMany(arr[i])}}}_.extend(Store.prototype,Reflux.ListenerMethods,Reflux.PublisherMethods,definition);var store=new Store;Keep.createdStores.push(store);return store}},{"../src":undefined,"./Keep":2,"./utils":12}],9:[function(require,module,exports){var slice=Array.prototype.slice,createStore=require("./createStore"),strategyMethodNames={strict:"joinStrict",first:"joinLeading",last:"joinTrailing",all:"joinConcat"};exports.staticJoinCreator=function(strategy){return function(){var listenables=slice.call(arguments);return createStore({init:function(){this[strategyMethodNames[strategy]].apply(this,listenables.concat("triggerAsync"))}})}};exports.instanceJoinCreator=function(strategy){return function(){var listenables=slice.call(arguments),callback=listenables.pop(),numberOfListenables=listenables.length,join={numberOfListenables:numberOfListenables,callback:this[callback]||callback,listener:this,strategy:strategy};for(var i=0;i<numberOfListenables;i++){this.listenTo(listenables[i],newListener(i,join))}reset(join)}};function reset(join){join.listenablesEmitted=new Array(join.numberOfListenables);join.args=new Array(join.numberOfListenables)}function newListener(i,join){return function(){var callargs=slice.call(arguments);if(join.listenablesEmitted[i]){switch(join.strategy){case"strict":throw new Error("Strict join failed because listener triggered twice.");case"last":join.args[i]=callargs;break;case"all":join.args[i].push(callargs)}}else{join.listenablesEmitted[i]=true;join.args[i]=join.strategy==="all"?[callargs]:callargs}emitIfAllListenablesEmitted(join)}}function emitIfAllListenablesEmitted(join){for(var i=0;i<join.numberOfListenables;i++){if(!join.listenablesEmitted[i]){return}}join.callback.apply(join.listener,join.args);reset(join)}},{"./createStore":8}],10:[function(require,module,exports){var Reflux=require("../src");module.exports=function(listenable,callback,initial){return{componentDidMount:function(){for(var m in Reflux.ListenerMethods){if(this[m]!==Reflux.ListenerMethods[m]){if(this[m]){throw"Can't have other property '"+m+"' when using Reflux.listenTo!"}this[m]=Reflux.ListenerMethods[m]}}this.listenTo(listenable,callback,initial)},componentWillUnmount:Reflux.ListenerMethods.stopListeningToAll}}},{"../src":undefined}],11:[function(require,module,exports){var Reflux=require("../src");module.exports=function(listenables){return{componentDidMount:function(){for(var m in Reflux.ListenerMethods){if(this[m]!==Reflux.ListenerMethods[m]){if(this[m]){throw"Can't have other property '"+m+"' when using Reflux.listenToMany!"}this[m]=Reflux.ListenerMethods[m]}}this.listenToMany(listenables)},componentWillUnmount:Reflux.ListenerMethods.stopListeningToAll}}},{"../src":undefined}],12:[function(require,module,exports){var isObject=exports.isObject=function(obj){var type=typeof obj;return type==="function"||type==="object"&&!!obj};exports.extend=function(obj){if(!isObject(obj)){return obj}var source,prop;for(var i=1,length=arguments.length;i<length;i++){source=arguments[i];for(prop in source){obj[prop]=source[prop]}}return obj};exports.isFunction=function(value){return typeof value==="function"};exports.EventEmitter=require("eventemitter3");exports.nextTick=function(callback){setTimeout(callback,0)};exports.callbackName=function(string){return"on"+string.charAt(0).toUpperCase()+string.slice(1)};exports.object=function(keys,vals){var o={},i=0;for(;i<keys.length;i++){o[keys[i]]=vals[i]}return o};exports.isArguments=function(value){return value&&typeof value=="object"&&typeof value.length=="number"&&(toString.call(value)==="[object Arguments]"||hasOwnProperty.call(value,"callee"&&!propertyIsEnumerable.call(value,"callee")))||false};exports.throwIf=function(val,msg){if(val){throw Error(msg||val)}}},{eventemitter3:1}],reflux:[function(require,module,exports){exports.ListenerMethods=require("./ListenerMethods");exports.PublisherMethods=require("./PublisherMethods");exports.createAction=require("./createAction");exports.createStore=require("./createStore");exports.connect=require("./connect");exports.ListenerMixin=require("./ListenerMixin");exports.listenTo=require("./listenTo");exports.listenToMany=require("./listenToMany");var maker=require("./joins").staticJoinCreator;exports.joinTrailing=exports.all=maker("last");exports.joinLeading=maker("first");exports.joinStrict=maker("strict");exports.joinConcat=maker("all");exports.createActions=function(actionNames){var i=0,actions={};for(;i<actionNames.length;i++){actions[actionNames[i]]=exports.createAction()}return actions};exports.setEventEmitter=function(ctx){var _=require("./utils");_.EventEmitter=ctx};exports.nextTick=function(nextTick){var _=require("./utils");_.nextTick=nextTick};exports.__keep=require("./Keep")},{"./Keep":2,"./ListenerMethods":3,"./ListenerMixin":4,"./PublisherMethods":5,"./connect":6,"./createAction":7,"./createStore":8,"./joins":9,"./listenTo":10,"./listenToMany":11,"./utils":12}]},{},[]);var reflux=require("reflux");console.log(reflux.createAction); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"name": "requirebin-sketch", | |
"version": "1.0.0", | |
"dependencies": { | |
"reflux": "0.1.13" | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<style type='text/css'>html, body { margin: 0; padding: 0; border: 0; } | |
body, html { height: 100%; width: 100%; }</style> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment