Skip to content

Instantly share code, notes, and snippets.

@Raynos
Created May 30, 2014 04:05
Show Gist options
  • Save Raynos/3cf862caa7d4f9b62db5 to your computer and use it in GitHub Desktop.
Save Raynos/3cf862caa7d4f9b62db5 to your computer and use it in GitHub Desktop.
requirebin sketch
var GithubWidget = require('github-widget/element')
document.body.appendChild(GithubWidget('Raynos'))
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);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.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){var util=require("util/");var pSlice=Array.prototype.slice;var hasOwn=Object.prototype.hasOwnProperty;var assert=module.exports=ok;assert.AssertionError=function AssertionError(options){this.name="AssertionError";this.actual=options.actual;this.expected=options.expected;this.operator=options.operator;if(options.message){this.message=options.message;this.generatedMessage=false}else{this.message=getMessage(this);this.generatedMessage=true}var stackStartFunction=options.stackStartFunction||fail;if(Error.captureStackTrace){Error.captureStackTrace(this,stackStartFunction)}else{var err=new Error;if(err.stack){var out=err.stack;var fn_name=stackStartFunction.name;var idx=out.indexOf("\n"+fn_name);if(idx>=0){var next_line=out.indexOf("\n",idx+1);out=out.substring(next_line+1)}this.stack=out}}};util.inherits(assert.AssertionError,Error);function replacer(key,value){if(util.isUndefined(value)){return""+value}if(util.isNumber(value)&&(isNaN(value)||!isFinite(value))){return value.toString()}if(util.isFunction(value)||util.isRegExp(value)){return value.toString()}return value}function truncate(s,n){if(util.isString(s)){return s.length<n?s:s.slice(0,n)}else{return s}}function getMessage(self){return truncate(JSON.stringify(self.actual,replacer),128)+" "+self.operator+" "+truncate(JSON.stringify(self.expected,replacer),128)}function fail(actual,expected,message,operator,stackStartFunction){throw new assert.AssertionError({message:message,actual:actual,expected:expected,operator:operator,stackStartFunction:stackStartFunction})}assert.fail=fail;function ok(value,message){if(!value)fail(value,true,message,"==",assert.ok)}assert.ok=ok;assert.equal=function equal(actual,expected,message){if(actual!=expected)fail(actual,expected,message,"==",assert.equal)};assert.notEqual=function notEqual(actual,expected,message){if(actual==expected){fail(actual,expected,message,"!=",assert.notEqual)}};assert.deepEqual=function deepEqual(actual,expected,message){if(!_deepEqual(actual,expected)){fail(actual,expected,message,"deepEqual",assert.deepEqual)}};function _deepEqual(actual,expected){if(actual===expected){return true}else if(util.isBuffer(actual)&&util.isBuffer(expected)){if(actual.length!=expected.length)return false;for(var i=0;i<actual.length;i++){if(actual[i]!==expected[i])return false}return true}else if(util.isDate(actual)&&util.isDate(expected)){return actual.getTime()===expected.getTime()}else if(util.isRegExp(actual)&&util.isRegExp(expected)){return actual.source===expected.source&&actual.global===expected.global&&actual.multiline===expected.multiline&&actual.lastIndex===expected.lastIndex&&actual.ignoreCase===expected.ignoreCase}else if(!util.isObject(actual)&&!util.isObject(expected)){return actual==expected}else{return objEquiv(actual,expected)}}function isArguments(object){return Object.prototype.toString.call(object)=="[object Arguments]"}function objEquiv(a,b){if(util.isNullOrUndefined(a)||util.isNullOrUndefined(b))return false;if(a.prototype!==b.prototype)return false;if(isArguments(a)){if(!isArguments(b)){return false}a=pSlice.call(a);b=pSlice.call(b);return _deepEqual(a,b)}try{var ka=objectKeys(a),kb=objectKeys(b),key,i}catch(e){return false}if(ka.length!=kb.length)return false;ka.sort();kb.sort();for(i=ka.length-1;i>=0;i--){if(ka[i]!=kb[i])return false}for(i=ka.length-1;i>=0;i--){key=ka[i];if(!_deepEqual(a[key],b[key]))return false}return true}assert.notDeepEqual=function notDeepEqual(actual,expected,message){if(_deepEqual(actual,expected)){fail(actual,expected,message,"notDeepEqual",assert.notDeepEqual)}};assert.strictEqual=function strictEqual(actual,expected,message){if(actual!==expected){fail(actual,expected,message,"===",assert.strictEqual)}};assert.notStrictEqual=function notStrictEqual(actual,expected,message){if(actual===expected){fail(actual,expected,message,"!==",assert.notStrictEqual)}};function expectedException(actual,expected){if(!actual||!expected){return false}if(Object.prototype.toString.call(expected)=="[object RegExp]"){return expected.test(actual)}else if(actual instanceof expected){return true}else if(expected.call({},actual)===true){return true}return false}function _throws(shouldThrow,block,expected,message){var actual;if(util.isString(expected)){message=expected;expected=null}try{block()}catch(e){actual=e}message=(expected&&expected.name?" ("+expected.name+").":".")+(message?" "+message:".");if(shouldThrow&&!actual){fail(actual,expected,"Missing expected exception"+message)}if(!shouldThrow&&expectedException(actual,expected)){fail(actual,expected,"Got unwanted exception"+message)}if(shouldThrow&&actual&&expected&&!expectedException(actual,expected)||!shouldThrow&&actual){throw actual}}assert.throws=function(block,error,message){_throws.apply(this,[true].concat(pSlice.call(arguments)))};assert.doesNotThrow=function(block,message){_throws.apply(this,[false].concat(pSlice.call(arguments)))};assert.ifError=function(err){if(err){throw err}};var objectKeys=Object.keys||function(obj){var keys=[];for(var key in obj){if(hasOwn.call(obj,key))keys.push(key)}return keys}},{"util/":3}],2:[function(require,module,exports){module.exports=function isBuffer(arg){return arg&&typeof arg==="object"&&typeof arg.copy==="function"&&typeof arg.fill==="function"&&typeof arg.readUInt8==="function"}},{}],3:[function(require,module,exports){(function(process,global){var formatRegExp=/%[sdj%]/g;exports.format=function(f){if(!isString(f)){var objects=[];for(var i=0;i<arguments.length;i++){objects.push(inspect(arguments[i]))}return objects.join(" ")}var i=1;var args=arguments;var len=args.length;var str=String(f).replace(formatRegExp,function(x){if(x==="%%")return"%";if(i>=len)return x;switch(x){case"%s":return String(args[i++]);case"%d":return Number(args[i++]);case"%j":try{return JSON.stringify(args[i++])}catch(_){return"[Circular]"}default:return x}});for(var x=args[i];i<len;x=args[++i]){if(isNull(x)||!isObject(x)){str+=" "+x}else{str+=" "+inspect(x)}}return str};exports.deprecate=function(fn,msg){if(isUndefined(global.process)){return function(){return exports.deprecate(fn,msg).apply(this,arguments)}}if(process.noDeprecation===true){return fn}var warned=false;function deprecated(){if(!warned){if(process.throwDeprecation){throw new Error(msg)}else if(process.traceDeprecation){console.trace(msg)}else{console.error(msg)}warned=true}return fn.apply(this,arguments)}return deprecated};var debugs={};var debugEnviron;exports.debuglog=function(set){if(isUndefined(debugEnviron))debugEnviron=process.env.NODE_DEBUG||"";set=set.toUpperCase();if(!debugs[set]){if(new RegExp("\\b"+set+"\\b","i").test(debugEnviron)){var pid=process.pid;debugs[set]=function(){var msg=exports.format.apply(exports,arguments);console.error("%s %d: %s",set,pid,msg)}}else{debugs[set]=function(){}}}return debugs[set]};function inspect(obj,opts){var ctx={seen:[],stylize:stylizeNoColor};if(arguments.length>=3)ctx.depth=arguments[2];if(arguments.length>=4)ctx.colors=arguments[3];if(isBoolean(opts)){ctx.showHidden=opts}else if(opts){exports._extend(ctx,opts)}if(isUndefined(ctx.showHidden))ctx.showHidden=false;if(isUndefined(ctx.depth))ctx.depth=2;if(isUndefined(ctx.colors))ctx.colors=false;if(isUndefined(ctx.customInspect))ctx.customInspect=true;if(ctx.colors)ctx.stylize=stylizeWithColor;return formatValue(ctx,obj,ctx.depth)}exports.inspect=inspect;inspect.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};inspect.styles={special:"cyan",number:"yellow","boolean":"yellow",undefined:"grey","null":"bold",string:"green",date:"magenta",regexp:"red"};function stylizeWithColor(str,styleType){var style=inspect.styles[styleType];if(style){return"["+inspect.colors[style][0]+"m"+str+"["+inspect.colors[style][1]+"m"}else{return str}}function stylizeNoColor(str,styleType){return str}function arrayToHash(array){var hash={};array.forEach(function(val,idx){hash[val]=true});return hash}function formatValue(ctx,value,recurseTimes){if(ctx.customInspect&&value&&isFunction(value.inspect)&&value.inspect!==exports.inspect&&!(value.constructor&&value.constructor.prototype===value)){var ret=value.inspect(recurseTimes,ctx);if(!isString(ret)){ret=formatValue(ctx,ret,recurseTimes)}return ret}var primitive=formatPrimitive(ctx,value);if(primitive){return primitive}var keys=Object.keys(value);var visibleKeys=arrayToHash(keys);if(ctx.showHidden){keys=Object.getOwnPropertyNames(value)}if(isError(value)&&(keys.indexOf("message")>=0||keys.indexOf("description")>=0)){return formatError(value)}if(keys.length===0){if(isFunction(value)){var name=value.name?": "+value.name:"";return ctx.stylize("[Function"+name+"]","special")}if(isRegExp(value)){return ctx.stylize(RegExp.prototype.toString.call(value),"regexp")}if(isDate(value)){return ctx.stylize(Date.prototype.toString.call(value),"date")}if(isError(value)){return formatError(value)}}var base="",array=false,braces=["{","}"];if(isArray(value)){array=true;braces=["[","]"]}if(isFunction(value)){var n=value.name?": "+value.name:"";base=" [Function"+n+"]"}if(isRegExp(value)){base=" "+RegExp.prototype.toString.call(value)}if(isDate(value)){base=" "+Date.prototype.toUTCString.call(value)}if(isError(value)){base=" "+formatError(value)}if(keys.length===0&&(!array||value.length==0)){return braces[0]+base+braces[1]}if(recurseTimes<0){if(isRegExp(value)){return ctx.stylize(RegExp.prototype.toString.call(value),"regexp")}else{return ctx.stylize("[Object]","special")}}ctx.seen.push(value);var output;if(array){output=formatArray(ctx,value,recurseTimes,visibleKeys,keys)}else{output=keys.map(function(key){return formatProperty(ctx,value,recurseTimes,visibleKeys,key,array)})}ctx.seen.pop();return reduceToSingleString(output,base,braces)}function formatPrimitive(ctx,value){if(isUndefined(value))return ctx.stylize("undefined","undefined");if(isString(value)){var simple="'"+JSON.stringify(value).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return ctx.stylize(simple,"string")}if(isNumber(value))return ctx.stylize(""+value,"number");if(isBoolean(value))return ctx.stylize(""+value,"boolean");if(isNull(value))return ctx.stylize("null","null")}function formatError(value){return"["+Error.prototype.toString.call(value)+"]"}function formatArray(ctx,value,recurseTimes,visibleKeys,keys){var output=[];for(var i=0,l=value.length;i<l;++i){if(hasOwnProperty(value,String(i))){output.push(formatProperty(ctx,value,recurseTimes,visibleKeys,String(i),true))}else{output.push("")}}keys.forEach(function(key){if(!key.match(/^\d+$/)){output.push(formatProperty(ctx,value,recurseTimes,visibleKeys,key,true))}});return output}function formatProperty(ctx,value,recurseTimes,visibleKeys,key,array){var name,str,desc;desc=Object.getOwnPropertyDescriptor(value,key)||{value:value[key]};if(desc.get){if(desc.set){str=ctx.stylize("[Getter/Setter]","special")}else{str=ctx.stylize("[Getter]","special")}}else{if(desc.set){str=ctx.stylize("[Setter]","special")}}if(!hasOwnProperty(visibleKeys,key)){name="["+key+"]"}if(!str){if(ctx.seen.indexOf(desc.value)<0){if(isNull(recurseTimes)){str=formatValue(ctx,desc.value,null)}else{str=formatValue(ctx,desc.value,recurseTimes-1)}if(str.indexOf("\n")>-1){if(array){str=str.split("\n").map(function(line){return" "+line}).join("\n").substr(2)}else{str="\n"+str.split("\n").map(function(line){return" "+line}).join("\n")}}}else{str=ctx.stylize("[Circular]","special")}}if(isUndefined(name)){if(array&&key.match(/^\d+$/)){return str}name=JSON.stringify(""+key);if(name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)){name=name.substr(1,name.length-2);name=ctx.stylize(name,"name")}else{name=name.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'");name=ctx.stylize(name,"string")}}return name+": "+str}function reduceToSingleString(output,base,braces){var numLinesEst=0;var length=output.reduce(function(prev,cur){numLinesEst++;if(cur.indexOf("\n")>=0)numLinesEst++;return prev+cur.replace(/\u001b\[\d\d?m/g,"").length+1},0);if(length>60){return braces[0]+(base===""?"":base+"\n ")+" "+output.join(",\n ")+" "+braces[1]}return braces[0]+base+" "+output.join(", ")+" "+braces[1]}function isArray(ar){return Array.isArray(ar)}exports.isArray=isArray;function isBoolean(arg){return typeof arg==="boolean"}exports.isBoolean=isBoolean;function isNull(arg){return arg===null}exports.isNull=isNull;function isNullOrUndefined(arg){return arg==null}exports.isNullOrUndefined=isNullOrUndefined;function isNumber(arg){return typeof arg==="number"}exports.isNumber=isNumber;function isString(arg){return typeof arg==="string"}exports.isString=isString;function isSymbol(arg){return typeof arg==="symbol"}exports.isSymbol=isSymbol;function isUndefined(arg){return arg===void 0}exports.isUndefined=isUndefined;function isRegExp(re){return isObject(re)&&objectToString(re)==="[object RegExp]"}exports.isRegExp=isRegExp;function isObject(arg){return typeof arg==="object"&&arg!==null}exports.isObject=isObject;function isDate(d){return isObject(d)&&objectToString(d)==="[object Date]"}exports.isDate=isDate;function isError(e){return isObject(e)&&(objectToString(e)==="[object Error]"||e instanceof Error)}exports.isError=isError;function isFunction(arg){return typeof arg==="function"}exports.isFunction=isFunction;function isPrimitive(arg){return arg===null||typeof arg==="boolean"||typeof arg==="number"||typeof arg==="string"||typeof arg==="symbol"||typeof arg==="undefined"}exports.isPrimitive=isPrimitive;exports.isBuffer=require("./support/isBuffer");function objectToString(o){return Object.prototype.toString.call(o)}function pad(n){return n<10?"0"+n.toString(10):n.toString(10)}var months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function timestamp(){var d=new Date;var time=[pad(d.getHours()),pad(d.getMinutes()),pad(d.getSeconds())].join(":");return[d.getDate(),months[d.getMonth()],time].join(" ")}exports.log=function(){console.log("%s - %s",timestamp(),exports.format.apply(exports,arguments))};exports.inherits=require("inherits");exports._extend=function(origin,add){if(!add||!isObject(add))return origin;var keys=Object.keys(add);var i=keys.length;while(i--){origin[keys[i]]=add[keys[i]]}return origin};function hasOwnProperty(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop)}}).call(this,require("/home/admin/browserify-cdn/node_modules/browserify/node_modules/insert-module-globals/node_modules/process/browser.js"),typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"./support/isBuffer":2,"/home/admin/browserify-cdn/node_modules/browserify/node_modules/insert-module-globals/node_modules/process/browser.js":7,inherits:6}],4:[function(require,module,exports){},{}],5:[function(require,module,exports){(function(global){var util=require("util");var assert=require("assert");var slice=Array.prototype.slice;var console;var times={};if(typeof global!=="undefined"&&global.console){console=global.console}else if(typeof window!=="undefined"&&window.console){console=window.console}else{console={}}var functions=[[log,"log"],[info,"info"],[warn,"warn"],[error,"error"],[time,"time"],[timeEnd,"timeEnd"],[trace,"trace"],[dir,"dir"],[assert,"assert"]];for(var i=0;i<functions.length;i++){var tuple=functions[i];var f=tuple[0];var name=tuple[1];if(!console[name]){console[name]=f}}module.exports=console;function log(){}function info(){console.log.apply(console,arguments)}function warn(){console.log.apply(console,arguments)}function error(){console.warn.apply(console,arguments)}function time(label){times[label]=Date.now()}function timeEnd(label){var time=times[label];if(!time){throw new Error("No such label: "+label)}var duration=Date.now()-time;console.log(label+": "+duration+"ms")}function trace(){var err=new Error;err.name="Trace";err.message=util.format.apply(null,arguments);console.error(err.stack)}function dir(object){console.log(util.inspect(object)+"\n")}function assert(expression){if(!expression){var arr=slice.call(arguments,1);assert.ok(false,util.format.apply(null,arr))}}}).call(this,typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{assert:1,util:9}],6:[function(require,module,exports){if(typeof Object.create==="function"){module.exports=function inherits(ctor,superCtor){ctor.super_=superCtor;ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:false,writable:true,configurable:true}})}}else{module.exports=function inherits(ctor,superCtor){ctor.super_=superCtor;var TempCtor=function(){};TempCtor.prototype=superCtor.prototype;ctor.prototype=new TempCtor;ctor.prototype.constructor=ctor}}},{}],7:[function(require,module,exports){var process=module.exports={};process.nextTick=function(){var canSetImmediate=typeof window!=="undefined"&&window.setImmediate;var canPost=typeof window!=="undefined"&&window.postMessage&&window.addEventListener;if(canSetImmediate){return function(f){return window.setImmediate(f)}}if(canPost){var queue=[];window.addEventListener("message",function(ev){var source=ev.source;if((source===window||source===null)&&ev.data==="process-tick"){ev.stopPropagation();if(queue.length>0){var fn=queue.shift();fn()}}},true);return function nextTick(fn){queue.push(fn);window.postMessage("process-tick","*")}}return function nextTick(fn){setTimeout(fn,0)}}();process.title="browser";process.browser=true;process.env={};process.argv=[];function noop(){}process.on=noop;process.once=noop;process.off=noop;process.emit=noop;process.binding=function(name){throw new Error("process.binding is not supported")};process.cwd=function(){return"/"};process.chdir=function(dir){throw new Error("process.chdir is not supported")}},{}],8:[function(require,module,exports){module.exports=require(2)},{}],9:[function(require,module,exports){module.exports=require(3)},{"./support/isBuffer":8,"/home/admin/browserify-cdn/node_modules/browserify/node_modules/insert-module-globals/node_modules/process/browser.js":7,inherits:6}],"github-widget/element":[function(require,module,exports){module.exports=require("DZGKOU")},{}],DZGKOU:[function(require,module,exports){var mercury=require("mercury");var document=require("global/document");var Widget=require("./index.js");module.exports=GithubElement;function GithubElement(userName){var elem=document.createElement("div");var widget=Widget(userName);mercury.app(elem,widget.state,Widget.render);return elem}},{"./index.js":12,"global/document":14,mercury:15}],12:[function(require,module,exports){var mercury=require("mercury");var xhr=require("xhr");var console=require("console");var h=mercury.h;var liftThunkLatest=require("./lib/observ-lift-thunk-latest.js");GithubWidget.render=Render;module.exports=GithubWidget;function GithubWidget(userName){var state=mercury.hash({userName:mercury.value(userName),user:mercury.hash({userName:mercury.value(""),avatar_url:mercury.value("")}),repos:mercury.array([])});window.state=state;var events={user:liftThunkLatest(state.userName,fetchUser)};events.user(function(tuple){if(tuple.error){console.error(tuple.error);return}console.log("tuple",tuple);state.user.userName.set(tuple.user.login);state.user.avatar_url.set(tuple.user.avatar_url);tuple.repos.forEach(function(repo){state.repos.push(repo)})});return{state:state}}function fetchUser(userName){return function(send){var uri="https://api.github.com/users/"+userName+"/repos?sort=pushed";xhr({uri:uri,method:"GET",json:true},onResponse);function onResponse(err,resp){if(err){return send({error:err.message})}send({user:resp.body[0].owner,repos:resp.body})}}}function Render(state){return h(".panel .panel-default",{style:{width:"350px"}},[h("link",{rel:"stylesheet",href:"https://netdna.bootstrapcdn.com/bootstrap"+"/3.1.1/css/bootstrap.min.css"}),h("link",{rel:"stylesheet",href:"https://cdnjs.cloudflare.com/ajax/libs/"+"font-awesome/4.0.3/css/font-awesome.min.css"}),h(".panel-heading","Github repos"),h(".panel-body",[body(state)]),content(state),h(".panel-footer",[footer(state)])])}function body(state){return h(".media",[h("a.pull-left",{href:"https://github.com/"+state.user.userName},[h("img.media-object",{src:state.user.avatar_url,width:"64",height:"64",alt:state.user.userName})]),h(".media-body",[h("h4.media-heading",state.user.userName),h("span",state.repos.length+" "+"repos ("),h("a",{href:"https://github.com/"+state.user.userName+"?tab=repositories"},"see all"),h("span",")")])])}function content(state){return h("ul.list-group",state.repos.map(function(repo){return h("li.list-group-item",[h("a",{href:repo.html_url},repo.full_name),h("span.pull-right",[h("i.fa.fa-eye",String(repo.watchers_count))," ",h("i.fa.fa-star",String(repo.stargazers_count))," ",h("i.fa.fa-code-fork",String(repo.forks))]),h("br"),repo.description])}))}function footer(state){return h("div",[h("a",{href:"https://github.com/"+state.user.userName},state.user.userName),h("span"," @ Github")])}},{"./lib/observ-lift-thunk-latest.js":13,console:5,mercury:15,xhr:83}],13:[function(require,module,exports){var value=require("observ");module.exports=liftThunkLatest;function liftThunkLatest(source,lambda){var observ=value(null);var counter=0;var latest=0;handleValue(source());source(handleValue);return observ;function handleValue(value){var myCounter=++counter;latest=myCounter;var thunk=lambda(value);if(thunk){thunk(onvalue)}function onvalue(newValue){if(latest===myCounter){observ.set(newValue)}}}}},{observ:82}],14:[function(require,module,exports){(function(global){var topLevel=typeof global!=="undefined"?global:typeof window!=="undefined"?window:{};var minDoc=require("min-document");if(typeof document!=="undefined"){module.exports=document}else{var doccy=topLevel["__GLOBAL_DOCUMENT_CACHE@4"];if(!doccy){doccy=topLevel["__GLOBAL_DOCUMENT_CACHE@4"]=minDoc}module.exports=doccy}}).call(this,typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"min-document":4}],15:[function(require,module,exports){var SingleEvent=require("geval/single");var MultipleEvent=require("geval/multiple");var mercury=module.exports={main:require("main-loop"),Delegator:require("dom-delegator"),input:input,event:require("value-event/event"),valueEvent:require("value-event/value"),submitEvent:require("value-event/submit"),changeEvent:require("value-event/change"),keyEvent:require("value-event/key"),array:require("observ-array"),hash:require("observ-hash"),value:require("observ"),computed:require("observ/computed"),diff:require("virtual-dom/diff"),patch:require("virtual-dom/patch"),partial:require("vdom-thunk"),create:require("virtual-dom/create-element"),h:require("virtual-hyperscript"),svg:require("virtual-hyperscript/svg"),app:app};function input(names){if(!names){return SingleEvent()}return MultipleEvent(names)}function app(elem,observ,render){mercury.Delegator();var loop=mercury.main(observ(),render);observ(loop.update);elem.appendChild(loop.target)}},{"dom-delegator":18,"geval/multiple":28,"geval/single":29,"main-loop":30,observ:82,"observ-array":34,"observ-hash":36,"observ/computed":81,"value-event/change":38,"value-event/event":39,"value-event/key":40,"value-event/submit":46,"value-event/value":47,"vdom-thunk":48,"virtual-dom/create-element":49,"virtual-dom/diff":50,"virtual-dom/patch":54,"virtual-hyperscript":73,"virtual-hyperscript/svg":80}],16:[function(require,module,exports){var DataSet=require("data-set");module.exports=addEvent;function addEvent(target,type,handler){var ds=DataSet(target);var events=ds[type];if(!events){ds[type]=handler}else if(Array.isArray(events)){if(events.indexOf(handler)===-1){events.push(handler)}}else if(events!==handler){ds[type]=[events,handler]}}},{"data-set":20}],17:[function(require,module,exports){var document=require("global/document");var DataSet=require("data-set");var addEvent=require("./add-event.js");var removeEvent=require("./remove-event.js");var ProxyEvent=require("./proxy-event.js");module.exports=DOMDelegator;function DOMDelegator(){this.target=document.documentElement;this.events={};this.rawEventListeners={};this.globalListeners={}}DOMDelegator.prototype.addEventListener=addEvent;DOMDelegator.prototype.removeEventListener=removeEvent;DOMDelegator.prototype.addGlobalEventListener=function addGlobalEventListener(eventName,fn){var listeners=this.globalListeners[eventName];if(!listeners){listeners=this.globalListeners[eventName]=[]}if(listeners.indexOf(fn)===-1){listeners.push(fn)}};DOMDelegator.prototype.removeGlobalEventListener=function removeGlobalEventListener(eventName,fn){var listeners=this.globalListeners[eventName];if(!listeners){return}var index=listeners.indexOf(fn);if(index!==-1){listeners.splice(index,1)}};DOMDelegator.prototype.listenTo=function listenTo(eventName){if(this.events[eventName]){return}this.events[eventName]=true;listen(this,eventName)};DOMDelegator.prototype.unlistenTo=function unlistenTo(eventName){if(!this.events[eventName]){return}this.events[eventName]=false;unlisten(this,eventName)};function listen(delegator,eventName){var listener=delegator.rawEventListeners[eventName];if(!listener){listener=delegator.rawEventListeners[eventName]=createHandler(eventName,delegator.globalListeners)}delegator.target.addEventListener(eventName,listener,true)}function unlisten(delegator,eventName){var listener=delegator.rawEventListeners[eventName];if(!listener){throw new Error("dom-delegator#unlistenTo: cannot "+"unlisten to "+eventName)}delegator.target.removeEventListener(eventName,listener,true)}function createHandler(eventName,globalListeners){return handler;function handler(ev){var globalHandlers=globalListeners[eventName]||[];var listener=getListener(ev.target,eventName);var handlers=globalHandlers.concat(listener?listener.handlers:[]);if(handlers.length===0){return}var arg=new ProxyEvent(ev,listener);handlers.forEach(function(handler){typeof handler==="function"?handler(arg):handler.handleEvent(arg)})}}function getListener(target,type){if(target===null){return null}var ds=DataSet(target);var handler=ds[type];var allHandler=ds.event;if(!handler&&!allHandler){return getListener(target.parentNode,type)}var handlers=[].concat(handler||[],allHandler||[]);return new Listener(target,handlers)}function Listener(target,handlers){this.currentTarget=target;this.handlers=handlers}},{"./add-event.js":16,"./proxy-event.js":25,"./remove-event.js":26,"data-set":20,"global/document":14}],18:[function(require,module,exports){var Individual=require("individual");var DOMDelegator=require("./dom-delegator.js");var delegatorCache=Individual("__DOM_DELEGATOR_CACHE@7",{});var commonEvents=["blur","change","click","contextmenu","dblclick","error","focus","focusin","focusout","input","keydown","keypress","keyup","load","mousedown","mouseup","resize","scroll","select","submit","unload"];module.exports=Delegator;function Delegator(opts){opts=opts||{};var delegator=delegatorCache.delegator;if(!delegator){delegator=delegatorCache.delegator=new DOMDelegator}if(opts.defaultEvents!==false){for(var i=0;i<commonEvents.length;i++){delegator.listenTo(commonEvents[i])}}return delegator}},{"./dom-delegator.js":17,individual:23}],19:[function(require,module,exports){module.exports=createHash;function createHash(elem){var attributes=elem.attributes;var hash={};if(attributes===null||attributes===undefined){return hash}for(var i=0;i<attributes.length;i++){var attr=attributes[i];if(attr.name.substr(0,5)!=="data-"){continue}hash[attr.name.substr(5)]=attr.value}return hash}},{}],20:[function(require,module,exports){var createStore=require("weakmap-shim/create-store");var Individual=require("individual");var createHash=require("./create-hash.js");var hashStore=Individual("__DATA_SET_WEAKMAP@3",createStore());module.exports=DataSet;function DataSet(elem){var store=hashStore(elem);if(!store.hash){store.hash=createHash(elem)}return store.hash}},{"./create-hash.js":19,individual:23,"weakmap-shim/create-store":21}],21:[function(require,module,exports){var hiddenStore=require("./hidden-store.js");module.exports=createStore;function createStore(){var key={};return function(obj){if(typeof obj!=="object"||obj===null){throw new Error("Weakmap-shim: Key must be object")}var store=obj.valueOf(key);return store&&store.identity===key?store:hiddenStore(obj,key)}}},{"./hidden-store.js":22}],22:[function(require,module,exports){module.exports=hiddenStore;function hiddenStore(obj,key){var store={identity:key};var valueOf=obj.valueOf;Object.defineProperty(obj,"valueOf",{value:function(value){return value!==key?valueOf.apply(this,arguments):store},writable:true});return store}},{}],23:[function(require,module,exports){(function(global){var root=typeof window!=="undefined"?window:typeof global!=="undefined"?global:{};module.exports=Individual;function Individual(key,value){if(root[key]){return root[key]}Object.defineProperty(root,key,{value:value,configurable:true});return value}}).call(this,typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],24:[function(require,module,exports){module.exports=require(6)},{}],25:[function(require,module,exports){var inherits=require("inherits");var ALL_PROPS=["altKey","bubbles","cancelable","ctrlKey","eventPhase","metaKey","relatedTarget","shiftKey","target","timeStamp","type","view","which"];var KEY_PROPS=["char","charCode","key","keyCode"];var MOUSE_PROPS=["button","buttons","clientX","clientY","layerX","layerY","offsetX","offsetY","pageX","pageY","screenX","screenY","toElement"];var rkeyEvent=/^key|input/;var rmouseEvent=/^(?:mouse|pointer|contextmenu)|click/;module.exports=ProxyEvent;function ProxyEvent(ev,listener){if(!(this instanceof ProxyEvent)){return new ProxyEvent(ev,listener)}if(rkeyEvent.test(ev.type)){return new KeyEvent(ev,listener)}else if(rmouseEvent.test(ev.type)){return new MouseEvent(ev,listener)}for(var i=0;i<ALL_PROPS.length;i++){var propKey=ALL_PROPS[i];this[propKey]=ev[propKey]}this._rawEvent=ev;this.currentTarget=listener?listener.currentTarget:null}ProxyEvent.prototype.preventDefault=function(){this._rawEvent.preventDefault()};function MouseEvent(ev,listener){for(var i=0;i<ALL_PROPS.length;i++){var propKey=ALL_PROPS[i];this[propKey]=ev[propKey]}for(var j=0;j<MOUSE_PROPS.length;j++){var mousePropKey=MOUSE_PROPS[j];this[mousePropKey]=ev[mousePropKey]}this._rawEvent=ev;this.currentTarget=listener?listener.currentTarget:null}inherits(MouseEvent,ProxyEvent);function KeyEvent(ev,listener){for(var i=0;i<ALL_PROPS.length;i++){var propKey=ALL_PROPS[i];this[propKey]=ev[propKey]}for(var j=0;j<KEY_PROPS.length;j++){var keyPropKey=KEY_PROPS[j];this[keyPropKey]=ev[keyPropKey]}this._rawEvent=ev;this.currentTarget=listener?listener.currentTarget:null}inherits(KeyEvent,ProxyEvent)},{inherits:24}],26:[function(require,module,exports){var DataSet=require("data-set");module.exports=removeEvent;function removeEvent(target,type,handler){var ds=DataSet(target);var events=ds[type];if(!events){return}else if(Array.isArray(events)){var index=events.indexOf(handler);if(index!==-1){events.splice(index,1)}}else if(events===handler){ds[type]=null}}},{"data-set":20}],27:[function(require,module,exports){module.exports=Event;function Event(){var listeners=[];return{broadcast:broadcast,listen:event};function broadcast(value){for(var i=0;i<listeners.length;i++){listeners[i](value)}}function event(listener){listeners.push(listener);return removeListener;function removeListener(){var index=listeners.indexOf(listener);if(index!==-1){listeners.splice(index,1)}}}}},{}],28:[function(require,module,exports){var event=require("./single.js");module.exports=multiple;function multiple(names){return names.reduce(function(acc,name){acc[name]=event();
return acc},{})}},{"./single.js":29}],29:[function(require,module,exports){var Event=require("./event.js");module.exports=Single;function Single(){var tuple=Event();return function event(value){if(typeof value==="function"){return tuple.listen(value)}else{return tuple.broadcast(value)}}}},{"./event.js":27}],30:[function(require,module,exports){var raf=require("raf/polyfill");var vdomCreate=require("virtual-dom/create-element");var vdomDiff=require("virtual-dom/diff");var vdomPatch=require("virtual-dom/patch");module.exports=main;function main(initialState,view,opts){opts=opts||{};var currentState=initialState;var create=opts.create||vdomCreate;var diff=opts.diff||vdomDiff;var patch=opts.patch||vdomPatch;var redrawScheduled=false;var tree=view(currentState);var target=create(tree,opts);currentState=null;return{target:target,update:update};function update(state){if(currentState===null&&!redrawScheduled){redrawScheduled=true;raf(redraw)}currentState=state}function redraw(){redrawScheduled=false;if(currentState===null){return}var newTree=view(currentState);if(opts.createOnly){create(newTree,opts)}else{var patches=diff(tree,newTree,opts);patch(target,patches,opts)}tree=newTree;currentState=null}}},{"raf/polyfill":31,"virtual-dom/create-element":49,"virtual-dom/diff":50,"virtual-dom/patch":54}],31:[function(require,module,exports){var global=typeof window==="undefined"?this:window;var _raf=global.requestAnimationFrame||global.webkitRequestAnimationFrame||global.mozRequestAnimationFrame||global.msRequestAnimationFrame||global.oRequestAnimationFrame||(global.setImmediate?function(fn,el){setImmediate(fn)}:function(fn,el){setTimeout(fn,0)});module.exports=_raf},{}],32:[function(require,module,exports){module.exports=addListener;function addListener(observArray,observ){var list=observArray._list;return observ(function(value){var valueList=observArray().slice();var index=list.indexOf(observ);if(index===-1){var message="observ-array: Unremoved observ listener";var err=new Error(message);err.list=list;err.index=index;err.observ=observ;throw err}valueList.splice(index,1,value);valueList._diff=[index,1,value];observArray.set(valueList)})}},{}],33:[function(require,module,exports){var ObservArray=require("./index.js");var slice=Array.prototype.slice;var ARRAY_METHODS=["concat","slice","every","filter","forEach","indexOf","join","lastIndexOf","map","reduce","reduceRight","some","toString","toLocaleString"];var methods=ARRAY_METHODS.map(function(name){return[name,function(){var res=this._list[name].apply(this._list,arguments);if(res&&Array.isArray(res)){res=ObservArray(res)}return res}]});module.exports=ArrayMethods;function ArrayMethods(obs){obs.push=observArrayPush;obs.pop=observArrayPop;obs.shift=observArrayShift;obs.unshift=observArrayUnshift;obs.reverse=notImplemented;obs.sort=notImplemented;methods.forEach(function(tuple){obs[tuple[0]]=tuple[1]});return obs}function observArrayPush(){var args=slice.call(arguments);args.unshift(this._list.length,0);this.splice.apply(this,args);return this._list.length}function observArrayPop(){return this.splice(this._list.length-1,1)[0]}function observArrayShift(){return this.splice(0,1)[0]}function observArrayUnshift(){var args=slice.call(arguments);args.unshift(0,0);this.splice.apply(this,args);return this._list.length}function notImplemented(){throw new Error("Pull request welcome")}},{"./index.js":34}],34:[function(require,module,exports){var Observ=require("observ");module.exports=ObservArray;var splice=require("./splice.js");var ArrayMethods=require("./array-methods.js");var addListener=require("./add-listener.js");function ObservArray(initialList){var list=initialList;var initialState=[];list.forEach(function(observ,index){initialState[index]=typeof observ==="function"?observ():observ});var obs=Observ(initialState);obs.splice=splice;obs.get=get;obs.getLength=getLength;obs.put=put;obs._list=list;var removeListeners=list.map(function(observ){return typeof observ==="function"?addListener(obs,observ):null});obs._removeListeners=removeListeners;return ArrayMethods(obs,list)}function get(index){return this._list[index]}function put(index,value){this.splice(index,1,value)}function getLength(){return this._list.length}},{"./add-listener.js":32,"./array-methods.js":33,"./splice.js":35,observ:82}],35:[function(require,module,exports){var slice=Array.prototype.slice;var addListener=require("./add-listener.js");module.exports=splice;function splice(index,amount){var obs=this;var args=slice.call(arguments,0);var valueList=obs().slice();var valueArgs=args.map(function(value,index){if(index===0||index===1){return value}return typeof value==="function"?value():value});valueList.splice.apply(valueList,valueArgs);var removed=obs._list.splice.apply(obs._list,args);var extraRemoveListeners=args.slice(2).map(function(observ){return typeof observ==="function"?addListener(obs,observ):null});extraRemoveListeners.unshift(args[0],args[1]);var removedListeners=obs._removeListeners.splice.apply(obs._removeListeners,extraRemoveListeners);removedListeners.forEach(function(removeObservListener){if(removeObservListener){removeObservListener()}});valueList._diff=valueArgs;obs.set(valueList);return removed}},{"./add-listener.js":32}],36:[function(require,module,exports){var Observ=require("observ");var extend=require("xtend");module.exports=ObservHash;function ObservHash(hash){var keys=Object.keys(hash);var initialState={};keys.forEach(function(key){var observ=hash[key];initialState[key]=typeof observ==="function"?observ():observ});var obs=Observ(initialState);keys.forEach(function(key){var observ=hash[key];obs[key]=observ;if(typeof observ==="function"){observ(function(value){var state=extend(obs());state[key]=value;var diff={};diff[key]=value&&value._diff?value._diff:value;state._diff=diff;obs.set(state)})}});return obs}},{observ:82,xtend:37}],37:[function(require,module,exports){module.exports=extend;function extend(){var target={};for(var i=0;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(source.hasOwnProperty(key)){target[key]=source[key]}}}return target}},{}],38:[function(require,module,exports){var extend=require("xtend");var getFormData=require("form-data-set/element");module.exports=ChangeSinkHandler;function ChangeSinkHandler(sink,data){if(!(this instanceof ChangeSinkHandler)){return new ChangeSinkHandler(sink,data)}this.sink=sink;this.data=data;this.type="change";this.id=sink.id}ChangeSinkHandler.prototype.handleEvent=handleEvent;function handleEvent(ev){var target=ev.target;var isValid=ev.type==="change"&&target.type==="checkbox"||ev.type==="input"&&target.type==="text"||ev.type==="change"&&target.type==="range";if(!isValid){return}var value=getFormData(ev.currentTarget);var data=extend(value,this.data);if(typeof this.sink==="function"){this.sink(data)}else{this.sink.write(data)}}},{"form-data-set/element":42,xtend:45}],39:[function(require,module,exports){module.exports=SinkEventHandler;function SinkEventHandler(sink,data){if(!(this instanceof SinkEventHandler)){return new SinkEventHandler(sink,data)}this.sink=sink;this.id=sink.id;this.data=data}SinkEventHandler.prototype.handleEvent=handleEvent;function handleEvent(ev){if(typeof this.sink==="function"){this.sink(this.data)}else{this.sink.write(this.data)}}},{}],40:[function(require,module,exports){module.exports=KeyEventHandler;function KeyEventHandler(fn,key,data){if(!(this instanceof KeyEventHandler)){return new KeyEventHandler(fn,key,data)}this.fn=fn;this.data=data;this.key=key}KeyEventHandler.prototype.handleEvent=handleEvent;function handleEvent(ev){if(ev.keyCode===this.key){this.fn(this.data)}}},{}],41:[function(require,module,exports){var slice=Array.prototype.slice;module.exports=iterativelyWalk;function iterativelyWalk(nodes,cb){if(!("length"in nodes)){nodes=[nodes]}nodes=slice.call(nodes);while(nodes.length){var node=nodes.shift(),ret=cb(node);if(ret){return ret}if(node.childNodes.length){nodes=slice.call(node.childNodes).concat(nodes)}}}},{}],42:[function(require,module,exports){var walk=require("dom-walk");var FormData=require("./index.js");module.exports=getFormData;function buildElems(rootElem){var hash={};walk(rootElem,function(child){if(child.name){hash[child.name]=child}});return hash}function getFormData(rootElem){var elements=buildElems(rootElem);return FormData(elements)}},{"./index.js":43,"dom-walk":41}],43:[function(require,module,exports){module.exports=FormData;function FormData(elements){return Object.keys(elements).reduce(function(acc,key){var elem=elements[key];acc[key]=valueOfElement(elem);return acc},{})}function valueOfElement(elem){if(typeof elem==="function"){return elem()}else if(containsRadio(elem)){var elems=toList(elem);var checked=elems.filter(function(elem){return elem.checked})[0]||null;return checked?checked.value:null}else if(Array.isArray(elem)){return elem.map(valueOfElement).filter(filterNull)}else if(elem.tagName===undefined&&elem.nodeType===undefined){return FormData(elem)}else if(elem.tagName==="INPUT"&&isChecked(elem)){if(elem.hasAttribute("value")){return elem.checked?elem.value:null}else{return elem.checked}}else if(elem.tagName==="INPUT"){return elem.value}else if(elem.tagName==="TEXTAREA"){return elem.value}else if(elem.tagName==="SELECT"){return elem.value}}function isChecked(elem){return elem.type==="checkbox"||elem.type==="radio"}function containsRadio(value){if(value.tagName||value.nodeType){return false}var elems=toList(value);return elems.some(function(elem){return elem.tagName==="INPUT"&&elem.type==="radio"})}function toList(value){if(Array.isArray(value)){return value}return Object.keys(value).map(prop,value)}function prop(x){return this[x]}function filterNull(val){return val!==null}},{}],44:[function(require,module,exports){module.exports=hasKeys;function hasKeys(source){return source!==null&&(typeof source==="object"||typeof source==="function")}},{}],45:[function(require,module,exports){var hasKeys=require("./has-keys");module.exports=extend;function extend(){var target={};for(var i=0;i<arguments.length;i++){var source=arguments[i];if(!hasKeys(source)){continue}for(var key in source){if(source.hasOwnProperty(key)){target[key]=source[key]}}}return target}},{"./has-keys":44}],46:[function(require,module,exports){var extend=require("xtend");var getFormData=require("form-data-set/element");var ENTER=13;module.exports=SubmitSinkHandler;function SubmitSinkHandler(sink,data){if(!(this instanceof SubmitSinkHandler)){return new SubmitSinkHandler(sink,data)}this.sink=sink;this.data=data;this.id=sink.id;this.type="submit"}SubmitSinkHandler.prototype.handleEvent=handleEvent;function handleEvent(ev){var target=ev.target;var isValid=ev.type==="click"&&target.tagName==="BUTTON"||(target.type==="text"||target.tagName==="TEXTAREA")&&(ev.keyCode===ENTER&&!ev.shiftKey&&ev.type==="keydown");if(!isValid){return}var value=getFormData(ev.currentTarget);var data=extend(value,this.data);if(typeof this.sink==="function"){this.sink(data)}else{this.sink.write(data)}}},{"form-data-set/element":42,xtend:45}],47:[function(require,module,exports){var extend=require("xtend");var getFormData=require("form-data-set/element");module.exports=ValueEventHandler;function ValueEventHandler(sink,data){if(!(this instanceof ValueEventHandler)){return new ValueEventHandler(sink,data)}this.sink=sink;this.data=data;this.id=sink.id}ValueEventHandler.prototype.handleEvent=handleEvent;function handleEvent(ev){var value=getFormData(ev.currentTarget);var data=extend(value,this.data);if(typeof this.sink==="function"){this.sink(data)}else{this.sink.write(data)}}},{"form-data-set/element":42,xtend:45}],48:[function(require,module,exports){var createElement=require("virtual-dom/create-element");var diff=require("virtual-dom/diff");var patch=require("virtual-dom/patch");var MESSAGE="partial() cannot cache on values. "+"You must specify object arguments. partial(";function copyOver(list,offset){var newList=[];for(var i=offset;i<list.length;i++){newList[i-offset]=list[i]}return newList}module.exports=partial;function partial(fn){var args=copyOver(arguments,1);var firstArg=args[0];var hasObjects=args.length===0;var key;if(typeof firstArg==="object"&&firstArg!==null){hasObjects=true;if("key"in firstArg){key=firstArg.key}else if("id"in firstArg){key=firstArg.id}}for(var i=1;!hasObjects&&i<args.length;i++){var arg=args[i];if(typeof arg==="object"&&arg!==null){hasObjects=true}}if(!hasObjects){throw new Error(MESSAGE+args+")")}return new Thunk(fn,args,key)}function Thunk(fn,args,key){this.fn=fn;this.args=args;this.vnode=null;this.key=key}Thunk.prototype.type="immutable-thunk";Thunk.prototype.update=update;Thunk.prototype.init=init;function shouldUpdate(current,previous){if(current.fn!==previous.fn){return true}var cargs=current.args;var pargs=previous.args;if(cargs.length===0&&pargs.length===0){return false}if(cargs.length!==pargs.length){return true}var max=cargs.length>pargs.length?cargs.length:pargs.length;for(var i=0;i<max;i++){if(cargs[i]!==pargs[i]){return true}}return false}function update(previous,domNode){if(!shouldUpdate(this,previous)){this.vnode=previous.vnode;return}if(!this.vnode){this.vnode=this.fn.apply(null,this.args)}var patches=diff(previous.vnode,this.vnode);patch(domNode,patches)}function init(){this.vnode=this.fn.apply(null,this.args);return createElement(this.vnode)}},{"virtual-dom/create-element":49,"virtual-dom/diff":50,"virtual-dom/patch":54}],49:[function(require,module,exports){var createElement=require("./vdom/create-element");module.exports=createElement},{"./vdom/create-element":56}],50:[function(require,module,exports){var diff=require("./vtree/diff");module.exports=diff},{"./vtree/diff":61}],51:[function(require,module,exports){if(typeof document!=="undefined"){module.exports=document}else{module.exports=require("min-document")}},{"min-document":4}],52:[function(require,module,exports){module.exports=isObject;function isObject(x){return typeof x==="object"&&x!==null}},{}],53:[function(require,module,exports){var nativeIsArray=Array.isArray;var toString=Object.prototype.toString;module.exports=nativeIsArray||isArray;function isArray(obj){return toString.call(obj)==="[object Array]"}},{}],54:[function(require,module,exports){var patch=require("./vdom/patch");module.exports=patch},{"./vdom/patch":59}],55:[function(require,module,exports){var isObject=require("is-object");var isHook=require("../vtree/is-vhook");module.exports=applyProperties;function applyProperties(node,props,previous){for(var propName in props){var propValue=props[propName];if(isHook(propValue)){propValue.hook(node,propName,previous?previous[propName]:undefined)}else{if(isObject(propValue)){if(!isObject(node[propName])){node[propName]={}}for(var k in propValue){node[propName][k]=propValue[k]}}else if(propValue!==undefined){node[propName]=propValue}}}}},{"../vtree/is-vhook":62,"is-object":52}],56:[function(require,module,exports){var document=require("global/document");var applyProperties=require("./apply-properties");var isVNode=require("../vtree/is-vnode");var isVText=require("../vtree/is-vtext");var isWidget=require("../vtree/is-widget");module.exports=createElement;function createElement(vnode,opts){var doc=opts?opts.document||document:document;var warn=opts?opts.warn:null;if(isWidget(vnode)){return vnode.init()}else if(isVText(vnode)){return doc.createTextNode(vnode.text)}else if(!isVNode(vnode)){if(warn){warn("Item is not a valid virtual dom node",vnode)}return null}var node=vnode.namespace===null?doc.createElement(vnode.tagName):doc.createElementNS(vnode.namespace,vnode.tagName);var props=vnode.properties;applyProperties(node,props);var children=vnode.children;for(var i=0;i<children.length;i++){var childNode=createElement(children[i],opts);if(childNode){node.appendChild(childNode)}}return node}},{"../vtree/is-vnode":63,"../vtree/is-vtext":64,"../vtree/is-widget":65,"./apply-properties":55,"global/document":51}],57:[function(require,module,exports){var noChild={};module.exports=domIndex;function domIndex(rootNode,tree,indices,nodes){if(!indices||indices.length===0){return{}}else{indices.sort(ascending);return recurse(rootNode,tree,indices,nodes,0)}}function recurse(rootNode,tree,indices,nodes,rootIndex){nodes=nodes||{};if(rootNode){if(indexInRange(indices,rootIndex,rootIndex)){nodes[rootIndex]=rootNode}var vChildren=tree.children;if(vChildren){var childNodes=rootNode.childNodes;for(var i=0;i<tree.children.length;i++){rootIndex+=1;var vChild=vChildren[i]||noChild;var nextIndex=rootIndex+(vChild.count||0);if(indexInRange(indices,rootIndex,nextIndex)){recurse(childNodes[i],vChild,indices,nodes,rootIndex)}rootIndex=nextIndex}}}return nodes}function indexInRange(indices,left,right){if(indices.length===0){return false}var minIndex=0;var maxIndex=indices.length-1;var currentIndex;var currentItem;while(minIndex<=maxIndex){currentIndex=(maxIndex+minIndex)/2>>0;currentItem=indices[currentIndex];if(minIndex===maxIndex){return currentItem>=left&&currentItem<=right}else if(currentItem<left){minIndex=currentIndex+1}else if(currentItem>right){maxIndex=currentIndex-1}else{return true}}return false}function ascending(a,b){return a>b?1:-1}},{}],58:[function(require,module,exports){var applyProperties=require("./apply-properties");var isWidget=require("../vtree/is-widget");var VPatch=require("../vtree/vpatch");var render=require("./create-element");var updateWidget=require("./update-widget");module.exports=applyPatch;function applyPatch(vpatch,domNode,renderOptions){var type=vpatch.type;var vNode=vpatch.vNode;var patch=vpatch.patch;switch(type){case VPatch.REMOVE:return removeNode(domNode,vNode);case VPatch.INSERT:return insertNode(domNode,patch,renderOptions);case VPatch.VTEXT:return stringPatch(domNode,vNode,patch,renderOptions);case VPatch.WIDGET:return widgetPatch(domNode,vNode,patch,renderOptions);case VPatch.VNODE:return vNodePatch(domNode,vNode,patch,renderOptions);case VPatch.ORDER:reorderChildren(domNode,patch);return domNode;case VPatch.PROPS:applyProperties(domNode,patch,vNode.propeties);return domNode;default:return domNode}}function removeNode(domNode,vNode){var parentNode=domNode.parentNode;if(parentNode){parentNode.removeChild(domNode)}destroyWidget(domNode,vNode);return null}function insertNode(parentNode,vNode,renderOptions){var newNode=render(vNode,renderOptions);if(parentNode){parentNode.appendChild(newNode)}return parentNode}function stringPatch(domNode,leftVNode,vText,renderOptions){var newNode;if(domNode.nodeType===3){domNode.replaceData(0,domNode.length,vText.text);newNode=domNode}else{var parentNode=domNode.parentNode;newNode=render(vText,renderOptions);if(parentNode){parentNode.replaceChild(newNode,domNode)}}destroyWidget(domNode,leftVNode);return newNode}function widgetPatch(domNode,leftVNode,widget,renderOptions){if(updateWidget(leftVNode,widget)){return widget.update(leftVNode,domNode)||domNode}var parentNode=domNode.parentNode;var newWidget=render(widget,renderOptions);if(parentNode){parentNode.replaceChild(newWidget,domNode)}destroyWidget(domNode,leftVNode);return newWidget}function vNodePatch(domNode,leftVNode,vNode,renderOptions){var parentNode=domNode.parentNode;var newNode=render(vNode,renderOptions);if(parentNode){parentNode.replaceChild(newNode,domNode)}destroyWidget(domNode,leftVNode);return newNode}function destroyWidget(domNode,w){if(typeof w.destroy==="function"&&isWidget(w)){w.destroy(domNode)}}function reorderChildren(domNode,bIndex){var children=[];var childNodes=domNode.childNodes;var len=childNodes.length;var i;for(i=0;i<len;i++){children.push(domNode.childNodes[i])}for(i=0;i<len;i++){var move=bIndex[i];if(move!==undefined){var node=children[move];domNode.removeChild(node);domNode.insertBefore(node,childNodes[i])}}}},{"../vtree/is-widget":65,"../vtree/vpatch":68,"./apply-properties":55,"./create-element":56,"./update-widget":60}],59:[function(require,module,exports){var document=require("global/document");var isArray=require("x-is-array");var domIndex=require("./dom-index");var patchOp=require("./patch-op");module.exports=patch;function patch(rootNode,patches){var indices=patchIndices(patches);if(indices.length===0){return rootNode}var index=domIndex(rootNode,patches.a,indices);var ownerDocument=rootNode.ownerDocument;var renderOptions;if(ownerDocument!==document){renderOptions={document:ownerDocument}}for(var i=0;i<indices.length;i++){var nodeIndex=indices[i];rootNode=applyPatch(rootNode,index[nodeIndex],patches[nodeIndex],renderOptions)}return rootNode}function applyPatch(rootNode,domNode,patchList,renderOptions){if(!domNode){return rootNode}var newNode;if(isArray(patchList)){for(var i=0;i<patchList.length;i++){newNode=patchOp(patchList[i],domNode,renderOptions);if(domNode===rootNode){rootNode=newNode}}}else{newNode=patchOp(patchList,domNode,renderOptions);if(domNode===rootNode){rootNode=newNode}}return rootNode}function patchIndices(patches){var indices=[];for(var key in patches){if(key!=="a"){indices.push(Number(key))}}return indices}},{"./dom-index":57,"./patch-op":58,"global/document":51,"x-is-array":53}],60:[function(require,module,exports){var isWidget=require("../vtree/is-widget");module.exports=updateWidget;function updateWidget(a,b){if(isWidget(a)&&isWidget(b)){if("type"in a&&"type"in b){return a.type===b.type}else{return a.init===b.init}}return false}},{"../vtree/is-widget":65}],61:[function(require,module,exports){var isArray=require("x-is-array");var isObject=require("is-object");var VPatch=require("./vpatch");var isVNode=require("./is-vnode");var isVText=require("./is-vtext");var isWidget=require("./is-widget");module.exports=diff;function diff(a,b){var patch={a:a};walk(a,b,patch,0);return patch}function walk(a,b,patch,index){if(a===b){hooks(b,patch,index);return}var apply=patch[index];if(isWidget(b)){apply=appendPatch(apply,new VPatch(VPatch.WIDGET,a,b));if(!isWidget(a)){destroyWidgets(a,patch,index)}}else if(isVText(b)){if(!isVText(a)){apply=appendPatch(apply,new VPatch(VPatch.VTEXT,a,b));destroyWidgets(a,patch,index)}else if(a.text!==b.text){apply=appendPatch(apply,new VPatch(VPatch.VTEXT,a,b))}}else if(isVNode(b)){if(isVNode(a)){if(a.tagName===b.tagName&&a.namespace===b.namespace&&a.key===b.key){var propsPatch=diffProps(a.properties,b.properties,b.hooks);if(propsPatch){apply=appendPatch(apply,new VPatch(VPatch.PROPS,a,propsPatch))}}else{apply=appendPatch(apply,new VPatch(VPatch.VNODE,a,b));destroyWidgets(a,patch,index)}apply=diffChildren(a,b,patch,apply,index)}else{apply=appendPatch(apply,new VPatch(VPatch.VNODE,a,b));destroyWidgets(a,patch,index)}}else if(b==null){apply=appendPatch(apply,new VPatch(VPatch.REMOVE,a,b));destroyWidgets(a,patch,index)}if(apply){patch[index]=apply}}function diffProps(a,b,hooks){var diff;for(var aKey in a){if(!(aKey in b)){continue}var aValue=a[aKey];var bValue=b[aKey];if(hooks&&aKey in hooks){diff=diff||{};diff[aKey]=bValue}else{if(isObject(aValue)&&isObject(bValue)){if(getPrototype(bValue)!==getPrototype(aValue)){diff=diff||{};diff[aKey]=bValue}else{var objectDiff=diffProps(aValue,bValue);if(objectDiff){diff=diff||{};diff[aKey]=objectDiff}}}else if(aValue!==bValue&&bValue!==undefined){diff=diff||{};diff[aKey]=bValue}}}for(var bKey in b){if(!(bKey in a)){diff=diff||{};diff[bKey]=b[bKey]}}return diff}function getPrototype(value){if(Object.getPrototypeOf){return Object.getPrototypeOf(value)}else if(value.__proto__){return value.__proto__}else if(value.constructor){return value.constructor.prototype}}function diffChildren(a,b,patch,apply,index){var aChildren=a.children;var bChildren=reorder(aChildren,b.children);var aLen=aChildren.length;var bLen=bChildren.length;var len=aLen>bLen?aLen:bLen;for(var i=0;i<len;i++){var leftNode=aChildren[i];var rightNode=bChildren[i];index+=1;if(!leftNode){if(rightNode){apply=appendPatch(apply,new VPatch(VPatch.INSERT,null,rightNode))}}else if(!rightNode){if(leftNode){patch[index]=new VPatch(VPatch.REMOVE,leftNode,null);destroyWidgets(leftNode,patch,index)}}else{walk(leftNode,rightNode,patch,index)}if(isVNode(leftNode)&&leftNode.count){index+=leftNode.count}}if(bChildren.moves){apply=appendPatch(apply,new VPatch(VPatch.ORDER,a,bChildren.moves))}return apply}function destroyWidgets(vNode,patch,index){if(isWidget(vNode)){if(typeof vNode.destroy==="function"){patch[index]=new VPatch(VPatch.REMOVE,vNode,null)}}else if(isVNode(vNode)&&vNode.hasWidgets){var children=vNode.children;var len=children.length;for(var i=0;i<len;i++){var child=children[i];index+=1;destroyWidgets(child,patch,index);if(isVNode(child)&&child.count){index+=child.count}}}}function hooks(vNode,patch,index){if(isVNode(vNode)){if(vNode.hooks){patch[index]=new VPatch(VPatch.PROPS,vNode.hooks,vNode.hooks)}if(vNode.descendantHooks){var children=vNode.children;var len=children.length;for(var i=0;i<len;i++){var child=children[i];index+=1;hooks(child,patch,index);if(isVNode(child)&&child.count){index+=child.count}}}}}function reorder(aChildren,bChildren){var bKeys=keyIndex(bChildren);if(!bKeys){return bChildren}var aKeys=keyIndex(aChildren);if(!aKeys){return bChildren}var bMatch={},aMatch={};for(var key in bKeys){bMatch[bKeys[key]]=aKeys[key]}for(var key in aKeys){aMatch[aKeys[key]]=bKeys[key]}var aLen=aChildren.length;var bLen=bChildren.length;var len=aLen>bLen?aLen:bLen;var shuffle=[];var freeIndex=0;var i=0;var moveIndex=0;var moves=shuffle.moves={};while(freeIndex<len){var move=aMatch[i];if(move!==undefined){shuffle[i]=bChildren[move];moves[move]=moveIndex++}else if(i in aMatch){shuffle[i]=undefined}else{while(bMatch[freeIndex]!==undefined){freeIndex++}if(freeIndex<len){moves[freeIndex]=moveIndex++;shuffle[i]=bChildren[freeIndex];freeIndex++}}i++}return shuffle}function keyIndex(children){var i,keys;for(i=0;i<children.length;i++){var child=children[i];if(child.key!==undefined){keys=keys||{};keys[child.key]=i}}return keys}function appendPatch(apply,patch){if(apply){if(isArray(apply)){apply.push(patch)}else{apply=[apply,patch]}return apply}else{return patch}}},{"./is-vnode":63,"./is-vtext":64,"./is-widget":65,"./vpatch":68,"is-object":52,"x-is-array":53}],62:[function(require,module,exports){module.exports=isHook;function isHook(hook){return hook&&typeof hook.hook==="function"&&!hook.hasOwnProperty("hook")}},{}],63:[function(require,module,exports){var version=require("./version");module.exports=isVirtualNode;function isVirtualNode(x){if(!x){return false}return x.type==="VirtualNode"&&x.version===version}},{"./version":66}],64:[function(require,module,exports){var version=require("./version");module.exports=isVirtualText;function isVirtualText(x){if(!x){return false}return x.type==="VirtualText"&&x.version===version}},{"./version":66}],65:[function(require,module,exports){module.exports=isWidget;function isWidget(w){return w&&typeof w.init==="function"&&typeof w.update==="function"}},{}],66:[function(require,module,exports){module.exports="1"},{}],67:[function(require,module,exports){var version=require("./version");var isVNode=require("./is-vnode");var isWidget=require("./is-widget");var isVHook=require("./is-vhook");module.exports=VirtualNode;var noProperties={};var noChildren=[];function VirtualNode(tagName,properties,children,key,namespace){this.tagName=tagName;this.properties=properties||noProperties;this.children=children||noChildren;this.key=key!=null?String(key):undefined;this.namespace=typeof namespace==="string"?namespace:null;var count=children&&children.length||0;var descendants=0;var hasWidgets=false;var descendantHooks=false;var hooks;for(var propName in properties){if(properties.hasOwnProperty(propName)){var property=properties[propName];if(isVHook(property)){if(!hooks){hooks={}}hooks[propName]=property}}}for(var i=0;i<count;i++){var child=children[i];if(isVNode(child)){descendants+=child.count||0;if(!hasWidgets&&child.hasWidgets){hasWidgets=true}if(!descendantHooks&&(child.hooks||child.descendantHooks)){descendantHooks=true}}else if(!hasWidgets&&isWidget(child)){if(typeof child.destroy==="function"){hasWidgets=true}}}this.count=count+descendants;this.hasWidgets=hasWidgets;this.hooks=hooks;this.descendantHooks=descendantHooks}VirtualNode.prototype.version=version;VirtualNode.prototype.type="VirtualNode"},{"./is-vhook":62,"./is-vnode":63,"./is-widget":65,"./version":66}],68:[function(require,module,exports){var version=require("./version");VirtualPatch.NONE=0;VirtualPatch.VTEXT=1;VirtualPatch.VNODE=2;VirtualPatch.WIDGET=3;VirtualPatch.PROPS=4;VirtualPatch.ORDER=5;VirtualPatch.INSERT=6;VirtualPatch.REMOVE=7;module.exports=VirtualPatch;function VirtualPatch(type,vNode,patch){this.type=Number(type);this.vNode=vNode;this.patch=patch}VirtualPatch.prototype.version=version.split(".");VirtualPatch.prototype.type="VirtualPatch"},{"./version":66}],69:[function(require,module,exports){var version=require("./version");module.exports=VirtualText;function VirtualText(text){this.text=String(text)}VirtualText.prototype.version=version;VirtualText.prototype.type="VirtualText"},{"./version":66}],70:[function(require,module,exports){module.exports=AttributeHook;function AttributeHook(value){if(!(this instanceof AttributeHook)){return new AttributeHook(value)}this.value=value}AttributeHook.prototype.hook=function(node,prop,prev){if(prev&&prev.value===this.value){return}node.setAttributeNS(null,prop,this.value)}},{}],71:[function(require,module,exports){var DataSet=require("data-set");module.exports=DataSetHook;function DataSetHook(value){if(!(this instanceof DataSetHook)){return new DataSetHook(value)}this.value=value}DataSetHook.prototype.hook=function(node,propertyName){var ds=DataSet(node);var propName=propertyName.substr(5);ds[propName]=this.value}},{"data-set":75}],72:[function(require,module,exports){module.exports=SoftSetHook;function SoftSetHook(value){if(!(this instanceof SoftSetHook)){return new SoftSetHook(value)}this.value=value}SoftSetHook.prototype.hook=function(node,propertyName){if(node[propertyName]!==this.value){node[propertyName]=this.value}}},{}],73:[function(require,module,exports){var VNode=require("virtual-dom/vtree/vnode.js");var VText=require("virtual-dom/vtree/vtext.js");var isVNode=require("virtual-dom/vtree/is-vnode");var isVText=require("virtual-dom/vtree/is-vtext");var isWidget=require("virtual-dom/vtree/is-widget");var isHook=require("virtual-dom/vtree/is-vhook");var parseTag=require("./parse-tag.js");var softSetHook=require("./hooks/soft-set-hook.js");var dataSetHook=require("./hooks/data-set-hook.js");module.exports=h;function h(tagName,properties,children){var childNodes=[];var tag,props,key,namespace;if(!children&&isChildren(properties)){children=properties;props={}}props=props||properties||{};tag=parseTag(tagName,props);if(children){addChild(children,childNodes)}if("key"in props){key=props.key;props.key=undefined}if("namespace"in props){namespace=props.namespace;props.namespace=undefined}if(tag==="input"&&"value"in props&&props.value!==undefined&&!isHook(props.value)){props.value=softSetHook(props.value)}var keys=Object.keys(props);for(var j=0;j<keys.length;j++){var propName=keys[j];var value=props[propName];if(!isHook(value)&&propName.substr(0,5)==="data-"){props[propName]=dataSetHook(value)}}return new VNode(tag,props,childNodes,key,namespace)}function addChild(c,childNodes){if(typeof c==="string"){childNodes.push(new VText(c))}else if(isChild(c)){childNodes.push(c)}else if(Array.isArray(c)){for(var i=0;i<c.length;i++){addChild(c[i],childNodes)}}}function isChild(x){return isVNode(x)||isVText(x)||isWidget(x)}function isChildren(x){return typeof x==="string"||Array.isArray(x)}},{"./hooks/data-set-hook.js":71,"./hooks/soft-set-hook.js":72,"./parse-tag.js":79,"virtual-dom/vtree/is-vhook":62,"virtual-dom/vtree/is-vnode":63,"virtual-dom/vtree/is-vtext":64,"virtual-dom/vtree/is-widget":65,"virtual-dom/vtree/vnode.js":67,"virtual-dom/vtree/vtext.js":69}],74:[function(require,module,exports){module.exports=require(19)},{}],75:[function(require,module,exports){module.exports=require(20)},{"./create-hash.js":74,individual:76,"weakmap-shim/create-store":77}],76:[function(require,module,exports){module.exports=require(23)
},{}],77:[function(require,module,exports){module.exports=require(21)},{"./hidden-store.js":78}],78:[function(require,module,exports){module.exports=require(22)},{}],79:[function(require,module,exports){var classIdSplit=/([\.#]?[a-zA-Z0-9_:-]+)/;var notClassId=/^\.|#/;module.exports=parseTag;function parseTag(tag,props){if(!tag){return"div"}var noId=!("id"in props);var tagParts=tag.split(classIdSplit);var tagName=null;if(notClassId.test(tagParts[1])){tagName="div"}var classes,part,type,i;for(i=0;i<tagParts.length;i++){part=tagParts[i];if(!part){continue}type=part.charAt(0);if(!tagName){tagName=part}else if(type==="."){classes=classes||[];classes.push(part.substring(1,part.length))}else if(type==="#"&&noId){props.id=part.substring(1,part.length)}}if(classes){if(props.className){classes.push(props.className)}props.className=classes.join(" ")}return tagName?tagName.toLowerCase():"div"}},{}],80:[function(require,module,exports){var attributeHook=require("./hooks/attribute-hook.js");var h=require("./index.js");var BLACKLISTED_KEYS={style:true,namespace:true,key:true};var SVG_NAMESPACE="http://www.w3.org/2000/svg";module.exports=svg;function svg(tagName,properties,children){if(!children&&isChildren(properties)){children=properties;properties={}}properties=properties||{};properties.namespace=SVG_NAMESPACE;for(var key in properties){if(!properties.hasOwnProperty(key)){continue}if(BLACKLISTED_KEYS[key]){continue}var value=properties[key];if(typeof value!=="string"&&typeof value!=="number"&&typeof value!=="boolean"){continue}properties[key]=attributeHook(value)}return h(tagName,properties,children)}function isChildren(x){return typeof x==="string"||Array.isArray(x)}},{"./hooks/attribute-hook.js":70,"./index.js":73}],81:[function(require,module,exports){var Observable=require("./index.js");module.exports=computed;function computed(observables,lambda){var values=observables.map(function(o){return o()});var result=Observable(lambda.apply(null,values));observables.forEach(function(o,index){o(function(newValue){values[index]=newValue;result.set(lambda.apply(null,values))})});return result}},{"./index.js":82}],82:[function(require,module,exports){module.exports=Observable;function Observable(value){var listeners=[];value=value===undefined?null:value;observable.set=function(v){value=v;listeners.forEach(function(f){f(v)})};return observable;function observable(listener){if(!listener){return value}listeners.push(listener);return function remove(){listeners.splice(listeners.indexOf(listener),1)}}}},{}],83:[function(require,module,exports){var window=require("global/window");var once=require("once");var messages={0:"Internal XMLHttpRequest Error",4:"4xx Client Error",5:"5xx Server Error"};var XHR=window.XMLHttpRequest||noop;var XDR="withCredentials"in new XHR?window.XMLHttpRequest:window.XDomainRequest;module.exports=createXHR;function createXHR(options,callback){if(typeof options==="string"){options={uri:options}}options=options||{};callback=once(callback);var xhr=options.xhr||null;if(!xhr&&options.cors){xhr=new XDR}else if(!xhr){xhr=new XHR}var uri=xhr.url=options.uri||options.url;var method=xhr.method=options.method||"GET";var body=options.body||options.data;var headers=xhr.headers=options.headers||{};var sync=!!options.sync;var isJson=false;var key;if("json"in options){isJson=true;if(method!=="GET"&&method!=="HEAD"){headers["Content-Type"]="application/json";body=JSON.stringify(options.json)}}xhr.onreadystatechange=readystatechange;xhr.onload=load;xhr.onerror=error;xhr.onprogress=function(){};xhr.ontimeout=noop;xhr.open(method,uri,!sync);if(options.cors){xhr.withCredentials=true}if(!sync){xhr.timeout="timeout"in options?options.timeout:5e3}if(xhr.setRequestHeader){for(key in headers){if(headers.hasOwnProperty(key)){xhr.setRequestHeader(key,headers[key])}}}if("responseType"in options){xhr.responseType=options.responseType}xhr.send(body);return xhr;function readystatechange(){if(xhr.readyState===4){load()}}function load(){var error=null;var status=xhr.statusCode=xhr.status;var body=xhr.body=xhr.response||xhr.responseText||xhr.responseXML;if(status===1223){status=204}if(status===0||status>=400&&status<600){var message=xhr.responseText||messages[String(xhr.status).charAt(0)];error=new Error(message);error.statusCode=xhr.status}if(isJson){try{body=xhr.body=JSON.parse(body)}catch(e){}}callback(error,xhr,body)}function error(evt){callback(evt,xhr)}}function noop(){}},{"global/window":84,once:85}],84:[function(require,module,exports){(function(global){if(typeof window!=="undefined"){module.exports=window}else if(typeof global!=="undefined"){module.exports=global}else{module.exports={}}}).call(this,typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],85:[function(require,module,exports){module.exports=once;once.proto=once(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return once(this)},configurable:true})});function once(fn){var called=false;return function(){if(called)return;called=true;return fn.apply(this,arguments)}}},{}]},{},[]);var GithubWidget=require("github-widget/element");document.body.appendChild(GithubWidget("Raynos"));
{
"name": "requirebin-sketch",
"version": "1.0.0",
"dependencies": {
"github-widget": "1.0.0"
}
}
<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