made with requirebin
Created
December 7, 2015 02:28
-
-
Save davidchase/1e66ddaa55cac9a6b69c to your computer and use it in GitHub Desktop.
requirebin sketch
This file contains hidden or 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 most = require('most'); | |
var multicast = require('most').multicast; | |
var snabbdom = require('snabbdom'); | |
console.log(multicast); | |
var patch = snabbdom.init([ | |
require('snabbdom/modules/class'), | |
require('snabbdom/modules/props'), | |
require('snabbdom/modules/style'), | |
]); | |
var h = require('snabbdom/h'); | |
var generateModal = function generateModal(event) { | |
var id = event.target.getAttribute('data-modal'); | |
return h("div#" + id + ".md-modal.md-show." + id, [ | |
h('div.md-content', [ | |
h('h3', 'Modal Title ' + id), | |
h('div', [ | |
h('p', 'Some Modal Content'), | |
h('button.md-close', {attrs: {"data-id": "test-data-id"}}, 'Close') | |
]) | |
]) | |
]); | |
}; | |
var patchContainer = function(){ | |
return function(vnode){ | |
return patch(document.querySelector('.container'), h('div.container', [vnode, h('div.md-overlay')])); | |
} | |
}; | |
var match = function match(query) { | |
return function(event) { | |
return event.target.matches(query); | |
} | |
} | |
var container = document.querySelector('.container'); | |
var toggleModal = function toggleModal(modal) { | |
modal.classList.toggle('md-show'); | |
} | |
var overlay = most.fromEvent('click', document.body).filter(match('.md-overlay')); | |
var close = most.fromEvent('click', document.body).filter(match('.md-close')); | |
var modals = most.from(document.querySelectorAll('.md-trigger')); | |
modals.chain(function(el){ | |
return most.fromEvent('click', el); | |
}) | |
.map(generateModal) | |
.map(patchContainer(container)) | |
.drain(); | |
var closeStreams = most.merge(overlay, close); | |
closeStreams.map(function(event){ | |
toggleModal(document.body.querySelector('.md-modal')); | |
}).drain(); |
This file contains hidden or 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}({"snabbdom/modules/props":[function(require,module,exports){function updateProps(oldVnode,vnode){var key,cur,old,elm=vnode.elm,oldProps=oldVnode.data.props||{},props=vnode.data.props||{};for(key in props){cur=props[key];old=oldProps[key];if(old!==cur){elm[key]=cur}}}module.exports={create:updateProps,update:updateProps}},{}]},{},[]);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}({"snabbdom/modules/class":[function(require,module,exports){function updateClass(oldVnode,vnode){var cur,name,elm=vnode.elm,oldClass=oldVnode.data.class||{},klass=vnode.data.class||{};for(name in klass){cur=klass[name];if(cur!==oldClass[name]){elm.classList[cur?"add":"remove"](name)}}}module.exports={create:updateClass,update:updateClass}},{}]},{},[]);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}({"snabbdom/modules/style":[function(require,module,exports){var raf=requestAnimationFrame||setTimeout;var nextFrame=function(fn){raf(function(){raf(fn)})};function setNextFrame(obj,prop,val){nextFrame(function(){obj[prop]=val})}function updateStyle(oldVnode,vnode){var cur,name,elm=vnode.elm,oldStyle=oldVnode.data.style||{},style=vnode.data.style||{},oldHasDel="delayed"in oldStyle;for(name in style){cur=style[name];if(name==="delayed"){for(name in style.delayed){cur=style.delayed[name];if(!oldHasDel||cur!==oldStyle.delayed[name]){setNextFrame(elm.style,name,cur)}}}else if(name!=="remove"&&cur!==oldStyle[name]){elm.style[name]=cur}}}function applyDestroyStyle(vnode){var style,name,elm=vnode.elm,s=vnode.data.style;if(!s||!(style=s.destroy))return;for(name in style){elm.style[name]=style[name]}}function applyRemoveStyle(vnode,rm){var s=vnode.data.style;if(!s||!s.remove){rm();return}var name,elm=vnode.elm,idx,i=0,maxDur=0,compStyle,style=s.remove,amount=0,applied=[];for(name in style){applied.push(name);elm.style[name]=style[name]}compStyle=getComputedStyle(elm);var props=compStyle["transition-property"].split(", ");for(;i<props.length;++i){if(applied.indexOf(props[i])!==-1)amount++}elm.addEventListener("transitionend",function(ev){if(ev.target===elm)--amount;if(amount===0)rm()})}module.exports={create:updateStyle,update:updateStyle,destroy:applyDestroyStyle,remove:applyRemoveStyle}},{}]},{},[]);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){module.exports={array:Array.isArray,primitive:function(s){return typeof s==="string"||typeof s==="number"}}},{}],2:[function(require,module,exports){module.exports=function(sel,data,children,text,elm){var key=data===undefined?undefined:data.key;return{sel:sel,data:data,children:children,text:text,elm:elm,key:key}}},{}],"snabbdom/h":[function(require,module,exports){var VNode=require("./vnode");var is=require("./is");module.exports=function h(sel,b,c){var data={},children,text,i;if(arguments.length===3){data=b;if(is.array(c)){children=c}else if(is.primitive(c)){text=c}}else if(arguments.length===2){if(is.array(b)){children=b}else if(is.primitive(b)){text=b}else{data=b}}if(is.array(children)){for(i=0;i<children.length;++i){if(is.primitive(children[i]))children[i]=VNode(undefined,undefined,undefined,children[i])}}return VNode(sel,data,children,text,undefined)}},{"./is":1,"./vnode":2}]},{},[]);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){module.exports={array:Array.isArray,primitive:function(s){return typeof s==="string"||typeof s==="number"}}},{}],2:[function(require,module,exports){module.exports=function(sel,data,children,text,elm){var key=data===undefined?undefined:data.key;return{sel:sel,data:data,children:children,text:text,elm:elm,key:key}}},{}],snabbdom:[function(require,module,exports){"use strict";var VNode=require("./vnode");var is=require("./is");function isUndef(s){return s===undefined}function isDef(s){return s!==undefined}function emptyNodeAt(elm){return VNode(elm.tagName,{},[],undefined,elm)}var emptyNode=VNode("",{},[],undefined,undefined);function sameVnode(vnode1,vnode2){return vnode1.key===vnode2.key&&vnode1.sel===vnode2.sel}function createKeyToOldIdx(children,beginIdx,endIdx){var i,map={},key;for(i=beginIdx;i<=endIdx;++i){key=children[i].key;if(isDef(key))map[key]=i}return map}function createRmCb(childElm,listeners){return function(){if(--listeners===0)childElm.parentElement.removeChild(childElm)}}var hooks=["create","update","remove","destroy","pre","post"];function init(modules){var i,j,cbs={};for(i=0;i<hooks.length;++i){cbs[hooks[i]]=[];for(j=0;j<modules.length;++j){if(modules[j][hooks[i]]!==undefined)cbs[hooks[i]].push(modules[j][hooks[i]])}}function createElm(vnode,insertedVnodeQueue){var i,data=vnode.data;if(isDef(data)){if(isDef(i=data.hook)&&isDef(i=i.init))i(vnode);if(isDef(i=data.vnode))vnode=i}var elm,children=vnode.children,sel=vnode.sel;if(isDef(sel)){var hashIdx=sel.indexOf("#");var dotIdx=sel.indexOf(".",hashIdx);var hash=hashIdx>0?hashIdx:sel.length;var dot=dotIdx>0?dotIdx:sel.length;var tag=hashIdx!==-1||dotIdx!==-1?sel.slice(0,Math.min(hash,dot)):sel;elm=vnode.elm=isDef(data)&&isDef(i=data.ns)?document.createElementNS(i,tag):document.createElement(tag);if(hash<dot)elm.id=sel.slice(hash+1,dot);if(dotIdx>0)elm.className=sel.slice(dot+1).replace(/\./g," ");if(is.array(children)){for(i=0;i<children.length;++i){elm.appendChild(createElm(children[i],insertedVnodeQueue))}}else if(is.primitive(vnode.text)){elm.appendChild(document.createTextNode(vnode.text))}for(i=0;i<cbs.create.length;++i)cbs.create[i](emptyNode,vnode);i=vnode.data.hook;if(isDef(i)){if(i.create)i.create(emptyNode,vnode);if(i.insert)insertedVnodeQueue.push(vnode)}}else{elm=vnode.elm=document.createTextNode(vnode.text)}return vnode.elm}function addVnodes(parentElm,before,vnodes,startIdx,endIdx,insertedVnodeQueue){for(;startIdx<=endIdx;++startIdx){parentElm.insertBefore(createElm(vnodes[startIdx],insertedVnodeQueue),before)}}function invokeDestroyHook(vnode){var i=vnode.data,j;if(isDef(i)){if(isDef(i=i.hook)&&isDef(i=i.destroy))i(vnode);for(i=0;i<cbs.destroy.length;++i)cbs.destroy[i](vnode);if(isDef(i=vnode.children)){for(j=0;j<vnode.children.length;++j){invokeDestroyHook(vnode.children[j])}}}}function removeVnodes(parentElm,vnodes,startIdx,endIdx){for(;startIdx<=endIdx;++startIdx){var i,listeners,rm,ch=vnodes[startIdx];if(isDef(ch)){if(isDef(ch.sel)){invokeDestroyHook(ch);listeners=cbs.remove.length+1;rm=createRmCb(ch.elm,listeners);for(i=0;i<cbs.remove.length;++i)cbs.remove[i](ch,rm);if(isDef(i=ch.data)&&isDef(i=i.hook)&&isDef(i=i.remove)){i(ch,rm)}else{rm()}}else{parentElm.removeChild(ch.elm)}}}}function updateChildren(parentElm,oldCh,newCh,insertedVnodeQueue){var oldStartIdx=0,newStartIdx=0;var oldEndIdx=oldCh.length-1;var oldStartVnode=oldCh[0];var oldEndVnode=oldCh[oldEndIdx];var newEndIdx=newCh.length-1;var newStartVnode=newCh[0];var newEndVnode=newCh[newEndIdx];var oldKeyToIdx,idxInOld,elmToMove,before;while(oldStartIdx<=oldEndIdx&&newStartIdx<=newEndIdx){if(isUndef(oldStartVnode)){oldStartVnode=oldCh[++oldStartIdx]}else if(isUndef(oldEndVnode)){oldEndVnode=oldCh[--oldEndIdx]}else if(sameVnode(oldStartVnode,newStartVnode)){patchVnode(oldStartVnode,newStartVnode,insertedVnodeQueue);oldStartVnode=oldCh[++oldStartIdx];newStartVnode=newCh[++newStartIdx]}else if(sameVnode(oldEndVnode,newEndVnode)){patchVnode(oldEndVnode,newEndVnode,insertedVnodeQueue);oldEndVnode=oldCh[--oldEndIdx];newEndVnode=newCh[--newEndIdx]}else if(sameVnode(oldStartVnode,newEndVnode)){patchVnode(oldStartVnode,newEndVnode,insertedVnodeQueue);parentElm.insertBefore(oldStartVnode.elm,oldEndVnode.elm.nextSibling);oldStartVnode=oldCh[++oldStartIdx];newEndVnode=newCh[--newEndIdx]}else if(sameVnode(oldEndVnode,newStartVnode)){patchVnode(oldEndVnode,newStartVnode,insertedVnodeQueue);parentElm.insertBefore(oldEndVnode.elm,oldStartVnode.elm);oldEndVnode=oldCh[--oldEndIdx];newStartVnode=newCh[++newStartIdx]}else{if(isUndef(oldKeyToIdx))oldKeyToIdx=createKeyToOldIdx(oldCh,oldStartIdx,oldEndIdx);idxInOld=oldKeyToIdx[newStartVnode.key];if(isUndef(idxInOld)){parentElm.insertBefore(createElm(newStartVnode,insertedVnodeQueue),oldStartVnode.elm);newStartVnode=newCh[++newStartIdx]}else{elmToMove=oldCh[idxInOld];patchVnode(elmToMove,newStartVnode,insertedVnodeQueue);oldCh[idxInOld]=undefined;parentElm.insertBefore(elmToMove.elm,oldStartVnode.elm);newStartVnode=newCh[++newStartIdx]}}}if(oldStartIdx>oldEndIdx){before=isUndef(newCh[newEndIdx+1])?null:newCh[newEndIdx+1].elm;addVnodes(parentElm,before,newCh,newStartIdx,newEndIdx,insertedVnodeQueue)}else if(newStartIdx>newEndIdx){removeVnodes(parentElm,oldCh,oldStartIdx,oldEndIdx)}}function patchVnode(oldVnode,vnode,insertedVnodeQueue){var i,hook;if(isDef(i=vnode.data)&&isDef(hook=i.hook)&&isDef(i=hook.prepatch)){i(oldVnode,vnode)}if(isDef(i=oldVnode.data)&&isDef(i=i.vnode))oldVnode=i;if(isDef(i=vnode.data)&&isDef(i=i.vnode))vnode=i;var elm=vnode.elm=oldVnode.elm,oldCh=oldVnode.children,ch=vnode.children;if(oldVnode===vnode)return;if(isDef(vnode.data)){for(i=0;i<cbs.update.length;++i)cbs.update[i](oldVnode,vnode);i=vnode.data.hook;if(isDef(i)&&isDef(i=i.update))i(oldVnode,vnode)}if(isUndef(vnode.text)){if(isDef(oldCh)&&isDef(ch)){if(oldCh!==ch)updateChildren(elm,oldCh,ch,insertedVnodeQueue)}else if(isDef(ch)){addVnodes(elm,null,ch,0,ch.length-1,insertedVnodeQueue)}else if(isDef(oldCh)){removeVnodes(elm,oldCh,0,oldCh.length-1)}}else if(oldVnode.text!==vnode.text){elm.textContent=vnode.text}if(isDef(hook)&&isDef(i=hook.postpatch)){i(oldVnode,vnode)}}return function(oldVnode,vnode){var i;var insertedVnodeQueue=[];for(i=0;i<cbs.pre.length;++i)cbs.pre[i]();if(oldVnode instanceof Element){if(oldVnode.parentElement!==null){createElm(vnode,insertedVnodeQueue);oldVnode.parentElement.replaceChild(vnode.elm,oldVnode)}else{oldVnode=emptyNodeAt(oldVnode);patchVnode(oldVnode,vnode,insertedVnodeQueue)}}else{patchVnode(oldVnode,vnode,insertedVnodeQueue)}for(i=0;i<insertedVnodeQueue.length;++i){insertedVnodeQueue[i].data.hook.insert(insertedVnodeQueue[i])}for(i=0;i<cbs.post.length;++i)cbs.post[i]();return vnode}}module.exports={init:init}},{"./is":1,"./vnode":2}]},{},[]);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){var process=module.exports={};process.nextTick=function(){var canSetImmediate=typeof window!=="undefined"&&window.setImmediate;var canMutationObserver=typeof window!=="undefined"&&window.MutationObserver;var canPost=typeof window!=="undefined"&&window.postMessage&&window.addEventListener;if(canSetImmediate){return function(f){return window.setImmediate(f)}}var queue=[];if(canMutationObserver){var hiddenDiv=document.createElement("div");var observer=new MutationObserver(function(){var queueList=queue.slice();queue.length=0;queueList.forEach(function(fn){fn()})});observer.observe(hiddenDiv,{attributes:true});return function nextTick(fn){if(!queue.length){hiddenDiv.setAttribute("yes","no")}queue.push(fn)}}if(canPost){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.addListener=noop;process.once=noop;process.off=noop;process.removeListener=noop;process.removeAllListeners=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")}},{}],2:[function(require,module,exports){var Promise=require("./Promise");module.exports=LinkedList;function LinkedList(){this.head=null;this.length=0}LinkedList.prototype.add=function(x){if(this.head!==null){this.head.prev=x;x.next=this.head}this.head=x;++this.length};LinkedList.prototype.remove=function(x){--this.length;if(x===this.head){this.head=this.head.next}if(x.next!==null){x.next.prev=x.prev;x.next=null}if(x.prev!==null){x.prev.next=x.next;x.prev=null}};LinkedList.prototype.isEmpty=function(){return this.length===0};LinkedList.prototype.dispose=function(){if(this.isEmpty()){return Promise.resolve()}var promises=[];var x=this.head;this.head=null;this.length=0;while(x!==null){promises.push(x.dispose());x=x.next}return Promise.all(promises)}},{"./Promise":3}],3:[function(require,module,exports){var unhandledRejection=require("when/lib/decorators/unhandledRejection");module.exports=unhandledRejection(require("when/lib/Promise"))},{"when/lib/Promise":64,"when/lib/decorators/unhandledRejection":66}],4:[function(require,module,exports){module.exports=Queue;function Queue(capPow2){this._capacity=capPow2||32;this._length=0;this._head=0}Queue.prototype.push=function(x){var len=this._length;this._checkCapacity(len+1);var i=this._head+len&this._capacity-1;this[i]=x;this._length=len+1};Queue.prototype.shift=function(){var head=this._head;var x=this[head];this[head]=void 0;this._head=head+1&this._capacity-1;this._length--;return x};Queue.prototype.isEmpty=function(){return this._length===0};Queue.prototype.length=function(){return this._length};Queue.prototype._checkCapacity=function(size){if(this._capacity<size){this._ensureCapacity(this._capacity<<1)}};Queue.prototype._ensureCapacity=function(capacity){var oldCapacity=this._capacity;this._capacity=capacity;var last=this._head+this._length;if(last>oldCapacity){copy(this,0,this,oldCapacity,last&oldCapacity-1)}};function copy(src,srcIndex,dst,dstIndex,len){for(var j=0;j<len;++j){dst[j+dstIndex]=src[j+srcIndex];src[j+srcIndex]=void 0}}},{}],5:[function(require,module,exports){module.exports=Stream;function Stream(source){this.source=source}},{}],6:[function(require,module,exports){exports.noop=noop;exports.identity=identity;exports.compose=compose;exports.cons=cons;exports.append=append;exports.drop=drop;exports.tail=tail;exports.copy=copy;exports.map=map;exports.reduce=reduce;exports.replace=replace;exports.remove=remove;exports.removeAll=removeAll;exports.findIndex=findIndex;function noop(){}function identity(x){return x}function compose(f,g){return function(x){return f(g(x))}}function cons(x,array){var l=array.length;var a=new Array(l+1);a[0]=x;for(var i=0;i<l;++i){a[i+1]=array[i]}return a}function append(x,a){var l=a.length;var b=new Array(l+1);for(var i=0;i<l;++i){b[i]=a[i]}b[l]=x;return b}function drop(n,array){var l=array.length;if(n>=l){return[]}l-=n;var a=new Array(l);for(var i=0;i<l;++i){a[i]=array[n+i]}return a}function tail(array){return drop(1,array)}function copy(array){var l=array.length;var a=new Array(l);for(var i=0;i<l;++i){a[i]=array[i]}return a}function map(f,array){var l=array.length;var a=new Array(l);for(var i=0;i<l;++i){a[i]=f(array[i])}return a}function reduce(f,z,array){var r=z;for(var i=0,l=array.length;i<l;++i){r=f(r,array[i],i)}return r}function replace(x,i,array){var l=array.length;var a=new Array(l);for(var j=0;j<l;++j){a[j]=i===j?x:array[j]}return a}function remove(index,array){var l=array.length;if(index>=array){return array}if(l===1){return[]}l-=1;var b=new Array(l);var i;for(i=0;i<index;++i){b[i]=array[i]}for(i=index;i<l;++i){b[i]=array[i+1]}return b}function removeAll(f,a){var l=a.length;var b=new Array(l);for(var x,i=0,j=0;i<l;++i){x=a[i];if(!f(x)){b[j]=x;++j}}b.length=j;return b}function findIndex(x,a){for(var i=0,l=a.length;i<l;++i){if(x===a[i]){return i}}return-1}},{}],7:[function(require,module,exports){var Stream=require("../Stream");var Pipe=require("../sink/Pipe");var runSource=require("../runSource");var noop=require("../base").noop;exports.scan=scan;exports.reduce=reduce;function scan(f,initial,stream){return new Stream(new Scan(f,initial,stream.source))}function Scan(f,z,source){this.f=f;this.value=z;this.source=source}Scan.prototype.run=function(sink,scheduler){return this.source.run(new ScanSink(this.f,this.value,sink),scheduler)};function ScanSink(f,z,sink){this.f=f;this.value=z;this.sink=sink;this.init=true}ScanSink.prototype.event=function(t,x){if(this.init){this.init=false;this.sink.event(t,this.value)}var f=this.f;this.value=f(this.value,x);this.sink.event(t,this.value)};ScanSink.prototype.error=Pipe.prototype.error;ScanSink.prototype.end=function(t){this.sink.end(t,this.value)};function reduce(f,initial,stream){return runSource.withDefaultScheduler(noop,new Accumulate(f,initial,stream.source))}function Accumulate(f,z,source){this.f=f;this.value=z;this.source=source}Accumulate.prototype.run=function(sink,scheduler){return this.source.run(new AccumulateSink(this.f,this.value,sink),scheduler)};function AccumulateSink(f,z,sink){this.f=f;this.value=z;this.sink=sink}AccumulateSink.prototype.event=function(t,x){var f=this.f;this.value=f(this.value,x);this.sink.event(t,this.value)};AccumulateSink.prototype.error=Pipe.prototype.error;AccumulateSink.prototype.end=function(t){this.sink.end(t,this.value)}},{"../Stream":5,"../base":6,"../runSource":44,"../sink/Pipe":51}],8:[function(require,module,exports){var combine=require("./combine").combine;exports.ap=ap;function ap(fs,xs){return combine(apply,fs,xs)}function apply(f,x){return f(x)}},{"./combine":10}],9:[function(require,module,exports){var Stream=require("../Stream");var streamOf=require("../source/core").of;var fromArray=require("../source/fromArray").fromArray;var concatMap=require("./concatMap").concatMap;var Sink=require("../sink/Pipe");var Promise=require("../Promise");var identity=require("../base").identity;exports.concat=concat;exports.cycle=cycle;exports.cons=cons;function cons(x,stream){return concat(streamOf(x),stream)}function concat(left,right){return concatMap(identity,fromArray([left,right]))}function cycle(stream){return new Stream(new Cycle(stream.source))}function Cycle(source){this.source=source}Cycle.prototype.run=function(sink,scheduler){return new CycleSink(this.source,sink,scheduler)};function CycleSink(source,sink,scheduler){this.active=true;this.sink=sink;this.scheduler=scheduler;this.source=source;this.disposable=source.run(this,scheduler)}CycleSink.prototype.error=Sink.prototype.error;CycleSink.prototype.event=function(t,x){if(!this.active){return}this.sink.event(t,x)};CycleSink.prototype.end=function(t){if(!this.active){return}var self=this;Promise.resolve(this.disposable.dispose()).catch(function(e){self.error(t,e)});this.disposable=this.source.run(this,this.scheduler)};CycleSink.prototype.dispose=function(){this.active=false;return this.disposable.dispose()}},{"../Promise":3,"../Stream":5,"../base":6,"../sink/Pipe":51,"../source/core":54,"../source/fromArray":57,"./concatMap":11}],10:[function(require,module,exports){var Stream=require("../Stream");var transform=require("./transform");var core=require("../source/core");var Pipe=require("../sink/Pipe");var IndexSink=require("../sink/IndexSink");var CompoundDisposable=require("../disposable/CompoundDisposable");var base=require("../base");var invoke=require("../invoke");var hasValue=IndexSink.hasValue;var getValue=IndexSink.getValue;var map=base.map;var tail=base.tail;exports.combineArray=combineArray;exports.combine=combine;function combine(f){return new Stream(new Combine(f,map(getSource,tail(arguments))))}function combineArray(f,streams){return streams.length===0?core.empty():streams.length===1?transform.map(f,streams[0]):new Stream(new Combine(f,map(getSource,streams)))}function getSource(stream){return stream.source}function Combine(f,sources){this.f=f;this.sources=sources}Combine.prototype.run=function(sink,scheduler){var l=this.sources.length;var disposables=new Array(l);var sinks=new Array(l);var combineSink=new CombineSink(this.f,sinks,sink);for(var indexSink,i=0;i<l;++i){indexSink=sinks[i]=new IndexSink(i,combineSink);disposables[i]=this.sources[i].run(indexSink,scheduler)}return new CompoundDisposable(disposables)};function CombineSink(f,sinks,sink){this.f=f;this.sinks=sinks;this.sink=sink;this.ready=false;this.activeCount=sinks.length}CombineSink.prototype.event=function(t){if(!this.ready){this.ready=this.sinks.every(hasValue)}if(this.ready){this.sink.event(t,invoke(this.f,map(getValue,this.sinks)))}};CombineSink.prototype.end=function(t,indexedValue){if(--this.activeCount===0){this.sink.end(t,indexedValue.value)}};CombineSink.prototype.error=Pipe.prototype.error},{"../Stream":5,"../base":6,"../disposable/CompoundDisposable":35,"../invoke":42,"../sink/IndexSink":49,"../sink/Pipe":51,"../source/core":54,"./transform":31}],11:[function(require,module,exports){var mergeConcurrently=require("./mergeConcurrently").mergeConcurrently;var map=require("./transform").map;exports.concatMap=concatMap;function concatMap(f,stream){return mergeConcurrently(1,map(f,stream))}},{"./mergeConcurrently":21,"./transform":31}],12:[function(require,module,exports){var Stream=require("../Stream");var Sink=require("../sink/Pipe");var CompoundDisposable=require("../disposable/CompoundDisposable");var PropagateTask=require("../scheduler/PropagateTask");exports.delay=delay;function delay(delayTime,stream){return delayTime<=0?stream:new Stream(new Delay(delayTime,stream.source))}function Delay(dt,source){this.dt=dt;this.source=source}Delay.prototype.run=function(sink,scheduler){var delaySink=new DelaySink(this.dt,sink,scheduler);return new CompoundDisposable([delaySink,this.source.run(delaySink,scheduler)])};function DelaySink(dt,sink,scheduler){this.dt=dt;this.sink=sink;this.scheduler=scheduler}DelaySink.prototype.dispose=function(){var self=this;this.scheduler.cancelAll(function(task){return task.sink===self.sink})};DelaySink.prototype.event=function(t,x){this.scheduler.delay(this.dt,PropagateTask.event(x,this.sink))};DelaySink.prototype.end=function(t,x){this.scheduler.delay(this.dt,PropagateTask.end(x,this.sink))};DelaySink.prototype.error=Sink.prototype.error},{"../Stream":5,"../disposable/CompoundDisposable":35,"../scheduler/PropagateTask":45,"../sink/Pipe":51}],13:[function(require,module,exports){var Stream=require("../Stream");var ValueSource=require("../source/ValueSource");exports.flatMapError=flatMapError;exports.throwError=throwError;function flatMapError(f,stream){return new Stream(new FlatMapError(f,stream.source))}function throwError(e){return new Stream(new ValueSource(error,e))}function error(t,e,sink){sink.error(t,e)}function FlatMapError(f,source){this.f=f;this.source=source}FlatMapError.prototype.run=function(sink,scheduler){return new FlatMapErrorSink(this.f,this.source,sink,scheduler)};function FlatMapErrorSink(f,source,sink,scheduler){this.f=f;this.sink=sink;this.scheduler=scheduler;this.active=true;this.disposable=source.run(this,scheduler)}FlatMapErrorSink.prototype.error=function(t,e){if(!this.active){return}this.disposable.dispose();var f=this.f;var stream=f(e);this.disposable=stream.source.run(this.sink,this.scheduler)};FlatMapErrorSink.prototype.event=function(t,x){if(!this.active){return}this.sink.event(t,x)};FlatMapErrorSink.prototype.end=function(t,x){if(!this.active){return}this.sink.end(t,x)};FlatMapErrorSink.prototype.dispose=function(){this.active=false;return this.disposable.dispose()}},{"../Stream":5,"../source/ValueSource":53}],14:[function(require,module,exports){var Stream=require("../Stream");var Sink=require("../sink/Pipe");var Filter=require("../fusion/Filter");exports.filter=filter;exports.skipRepeats=skipRepeats;exports.skipRepeatsWith=skipRepeatsWith;function filter(p,stream){return new Stream(Filter.create(p,stream.source))}function skipRepeats(stream){return skipRepeatsWith(same,stream)}function skipRepeatsWith(equals,stream){return new Stream(new SkipRepeats(equals,stream.source))}function SkipRepeats(equals,source){this.equals=equals;this.source=source}SkipRepeats.prototype.run=function(sink,scheduler){return this.source.run(new SkipRepeatsSink(this.equals,sink),scheduler)};function SkipRepeatsSink(equals,sink){this.equals=equals;this.sink=sink;this.value=void 0;this.init=true}SkipRepeatsSink.prototype.end=Sink.prototype.end;SkipRepeatsSink.prototype.error=Sink.prototype.error;SkipRepeatsSink.prototype.event=function(t,x){if(this.init){this.init=false;this.value=x;this.sink.event(t,x)}else if(!this.equals(this.value,x)){this.value=x;this.sink.event(t,x)}};function same(a,b){return a===b}},{"../Stream":5,"../fusion/Filter":39,"../sink/Pipe":51}],15:[function(require,module,exports){var mergeConcurrently=require("./mergeConcurrently").mergeConcurrently;var map=require("./transform").map;exports.flatMap=flatMap;exports.join=join;function flatMap(f,stream){return join(map(f,stream))}function join(stream){return mergeConcurrently(Infinity,stream)}},{"./mergeConcurrently":21,"./transform":31}],16:[function(require,module,exports){var Stream=require("../Stream");var Sink=require("../sink/Pipe");var AwaitingDisposable=require("../disposable/AwaitingDisposable");var CompoundDisposable=require("../disposable/CompoundDisposable");exports.flatMapEnd=flatMapEnd;function flatMapEnd(f,stream){return new Stream(new FlatMapEnd(f,stream.source))}function FlatMapEnd(f,source){this.f=f;this.source=source}FlatMapEnd.prototype.run=function(sink,scheduler){return new FlatMapEndSink(this.f,this.source,sink,scheduler)};function FlatMapEndSink(f,source,sink,scheduler){this.f=f;this.sink=sink;this.scheduler=scheduler;this.active=true;this.disposable=new AwaitingDisposable(source.run(this,scheduler))}FlatMapEndSink.prototype.error=Sink.prototype.error;FlatMapEndSink.prototype.event=function(t,x){if(!this.active){return}this.sink.event(t,x)};FlatMapEndSink.prototype.end=function(t,x){if(!this.active){return}this.dispose();var f=this.f;var stream=f(x);var disposable=stream.source.run(this.sink,this.scheduler);this.disposable=new CompoundDisposable([this.disposable,disposable])};FlatMapEndSink.prototype.dispose=function(){this.active=false;return this.disposable.dispose()}},{"../Stream":5,"../disposable/AwaitingDisposable":34,"../disposable/CompoundDisposable":35,"../sink/Pipe":51}],17:[function(require,module,exports){var combine=require("./combine").combineArray;var paramsRx=/\(([^)]*)/;var liftedSuffix="_most$Stream$lifted";exports.lift=lift;function lift(f){var m=paramsRx.exec(f.toString());var body="return function "+f.name+liftedSuffix+" ("+m[1]+") {\n"+" return combine(f, arguments);\n"+"};";return new Function("combine","f",body)(combine,f)}},{"./combine":10}],18:[function(require,module,exports){var Stream=require("../Stream");var Sink=require("../sink/Pipe");var CompoundDisposable=require("../disposable/CompoundDisposable");var PropagateTask=require("../scheduler/PropagateTask");exports.throttle=throttle;exports.debounce=debounce;function throttle(period,stream){return new Stream(new Throttle(period,stream.source))}function Throttle(period,source){this.dt=period;this.source=source}Throttle.prototype.run=function(sink,scheduler){return this.source.run(new ThrottleSink(this.dt,sink),scheduler)};function ThrottleSink(dt,sink){this.time=0;this.dt=dt;this.sink=sink}ThrottleSink.prototype.event=function(t,x){if(t>=this.time){this.time=t+this.dt;this.sink.event(t,x)}};ThrottleSink.prototype.end=function(t,e){return Sink.prototype.end.call(this,t,e)};ThrottleSink.prototype.error=Sink.prototype.error;function debounce(period,stream){return new Stream(new Debounce(period,stream.source))}function Debounce(dt,source){this.dt=dt;this.source=source}Debounce.prototype.run=function(sink,scheduler){return new DebounceSink(this.dt,this.source,sink,scheduler)};function DebounceSink(dt,source,sink,scheduler){this.dt=dt;this.sink=sink;this.scheduler=scheduler;this.value=void 0;this.timer=null;var sourceDisposable=source.run(this,scheduler);this.disposable=new CompoundDisposable([this,sourceDisposable])}DebounceSink.prototype.event=function(t,x){this._clearTimer();this.value=x;this.timer=this.scheduler.delay(this.dt,PropagateTask.event(x,this.sink))};DebounceSink.prototype.end=function(t,x){if(this._clearTimer()){this.sink.event(t,this.value);this.value=void 0}this.sink.end(t,x)};DebounceSink.prototype.error=function(t,x){this._clearTimer();this.sink.error(t,x)};DebounceSink.prototype.dispose=function(){this._clearTimer()};DebounceSink.prototype._clearTimer=function(){if(this.timer===null){return false}this.timer.cancel();this.timer=null;return true}},{"../Stream":5,"../disposable/CompoundDisposable":35,"../scheduler/PropagateTask":45,"../sink/Pipe":51}],19:[function(require,module,exports){var Stream=require("../Stream");var Pipe=require("../sink/Pipe");exports.loop=loop;function loop(stepper,seed,stream){return new Stream(new Loop(stepper,seed,stream.source))}function Loop(stepper,seed,source){this.step=stepper;this.seed=seed;this.source=source}Loop.prototype.run=function(sink,scheduler){return this.source.run(new LoopSink(this.step,this.seed,sink),scheduler)};function LoopSink(stepper,seed,sink){this.step=stepper;this.seed=seed;this.sink=sink}LoopSink.prototype.error=Pipe.prototype.error;LoopSink.prototype.event=function(t,x){var result=this.step(this.seed,x);this.seed=result.seed;this.sink.event(t,result.value)};LoopSink.prototype.end=function(t){this.sink.end(t,this.seed)}},{"../Stream":5,"../sink/Pipe":51}],20:[function(require,module,exports){var empty=require("../Stream").empty;var fromArray=require("../source/fromArray").fromArray;var mergeConcurrently=require("./mergeConcurrently").mergeConcurrently;var copy=require("../base").copy;exports.merge=merge;exports.mergeArray=mergeArray;function merge(){return mergeArray(copy(arguments))}function mergeArray(streams){var l=streams.length;return l===0?empty():l===1?streams[0]:mergeConcurrently(l,fromArray(streams))}},{"../Stream":5, | |
"../base":6,"../source/fromArray":57,"./mergeConcurrently":21}],21:[function(require,module,exports){var Stream=require("../Stream");var AwaitingDisposable=require("../disposable/AwaitingDisposable");var LinkedList=require("../LinkedList");var Promise=require("../Promise");exports.mergeConcurrently=mergeConcurrently;function mergeConcurrently(concurrency,stream){return new Stream(new MergeConcurrently(concurrency,stream.source))}function MergeConcurrently(concurrency,source){this.concurrency=concurrency;this.source=source}MergeConcurrently.prototype.run=function(sink,scheduler){return new Outer(this.concurrency,this.source,sink,scheduler)};function Outer(concurrency,source,sink,scheduler){this.concurrency=concurrency;this.sink=sink;this.scheduler=scheduler;this.pending=[];this.current=new LinkedList;this.disposable=new AwaitingDisposable(source.run(this,scheduler));this.active=true}Outer.prototype.event=function(t,x){this._addInner(t,x)};Outer.prototype._addInner=function(t,stream){if(this.current.length<this.concurrency){this._startInner(t,stream)}else{this.pending.push(stream)}};Outer.prototype._startInner=function(t,stream){var innerSink=new Inner(t,this,this.sink);this.current.add(innerSink);innerSink.disposable=stream.source.run(innerSink,this.scheduler)};Outer.prototype.end=function(t,x){this.active=false;this.disposable.dispose();this._checkEnd(t,x)};Outer.prototype.error=function(t,e){this.active=false;this.sink.error(t,e)};Outer.prototype.dispose=function(){this.active=false;this.pending.length=0;return Promise.all([this.disposable.dispose(),this.current.dispose()])};Outer.prototype._endInner=function(t,x,inner){this.current.remove(inner);var self=this;Promise.resolve(inner.dispose()).catch(function(e){self.error(t,e)});if(this.pending.length===0){this._checkEnd(t,x)}else{this._startInner(t,this.pending.shift())}};Outer.prototype._checkEnd=function(t,x){if(!this.active&&this.current.isEmpty()){this.sink.end(t,x)}};function Inner(time,outer,sink){this.prev=this.next=null;this.time=time;this.outer=outer;this.sink=sink;this.disposable=void 0}Inner.prototype.event=function(t,x){this.sink.event(Math.max(t,this.time),x)};Inner.prototype.end=function(t,x){this.outer._endInner(Math.max(t,this.time),x,this)};Inner.prototype.error=function(t,e){this.outer.error(Math.max(t,this.time),e)};Inner.prototype.dispose=function(){return this.disposable.dispose()}},{"../LinkedList":2,"../Promise":3,"../Stream":5,"../disposable/AwaitingDisposable":34}],22:[function(require,module,exports){var Stream=require("../Stream");var MulticastSource=require("../source/MulticastSource");exports.multicast=multicast;function multicast(stream){var source=stream.source;return source instanceof MulticastSource?stream:new Stream(new MulticastSource(source))}},{"../Stream":5,"../source/MulticastSource":52}],23:[function(require,module,exports){var runSource=require("../runSource");var noop=require("../base").noop;exports.observe=observe;exports.drain=drain;function observe(f,stream){return runSource.withDefaultScheduler(f,stream.source)}function drain(stream){return runSource.withDefaultScheduler(noop,stream.source)}},{"../base":6,"../runSource":44}],24:[function(require,module,exports){var Stream=require("../Stream");var resolve=require("../Promise").resolve;var fatal=require("../fatalError");exports.fromPromise=fromPromise;exports.await=await;function fromPromise(p){return new Stream(new PromiseSource(p))}function PromiseSource(p){this.promise=p}PromiseSource.prototype.run=function(sink,scheduler){return new PromiseProducer(this.promise,sink,scheduler)};function PromiseProducer(p,sink,scheduler){this.sink=sink;this.scheduler=scheduler;this.active=true;var self=this;resolve(p).then(function(x){self._emit(self.scheduler.now(),x)}).catch(function(e){self._error(self.scheduler.now(),e)})}PromiseProducer.prototype._emit=function(t,x){if(!this.active){return}this.sink.event(t,x);this.sink.end(t,void 0)};PromiseProducer.prototype._error=function(t,e){if(!this.active){return}this.sink.error(t,e)};PromiseProducer.prototype.dispose=function(){this.active=false};function await(stream){return new Stream(new Await(stream.source))}function Await(source){this.source=source}Await.prototype.run=function(sink,scheduler){return this.source.run(new AwaitSink(sink,scheduler),scheduler)};function AwaitSink(sink,scheduler){this.sink=sink;this.scheduler=scheduler;this.queue=void 0}AwaitSink.prototype.event=function(t,promise){var self=this;this.queue=resolve(this.queue).then(function(){return self._event(t,promise)}).catch(function(e){return self._error(t,e)})};AwaitSink.prototype.end=function(t,x){var self=this;this.queue=resolve(this.queue).then(function(){return self._end(t,x)}).catch(function(e){return self._error(t,e)})};AwaitSink.prototype.error=function(t,e){var self=this;this.queue=resolve(this.queue).then(function(){return self._error(t,e)}).catch(fatal)};AwaitSink.prototype._error=function(t,e){try{this.sink.error(Math.max(t,this.scheduler.now()),e)}catch(e){fatal(e);throw e}};AwaitSink.prototype._event=function(t,promise){var self=this;return promise.then(function(x){self.sink.event(Math.max(t,self.scheduler.now()),x)})};AwaitSink.prototype._end=function(t,x){var self=this;return resolve(x).then(function(x){self.sink.end(Math.max(t,self.scheduler.now()),x)})}},{"../Promise":3,"../Stream":5,"../fatalError":38}],25:[function(require,module,exports){var Stream=require("../Stream");var Pipe=require("../sink/Pipe");var CompoundDisposable=require("../disposable/CompoundDisposable");var base=require("../base");var invoke=require("../invoke");exports.sample=sample;exports.sampleWith=sampleWith;exports.sampleArray=sampleArray;function sample(f,sampler){return sampleArray(f,sampler,base.drop(2,arguments))}function sampleWith(sampler,stream){return new Stream(new Sampler(base.identity,sampler.source,[stream.source]))}function sampleArray(f,sampler,streams){return new Stream(new Sampler(f,sampler.source,base.map(getSource,streams)))}function getSource(stream){return stream.source}function Sampler(f,sampler,sources){this.f=f;this.sampler=sampler;this.sources=sources}Sampler.prototype.run=function(sink,scheduler){var l=this.sources.length;var disposables=new Array(l+1);var sinks=new Array(l);var sampleSink=new SampleSink(this.f,sinks,sink);for(var hold,i=0;i<l;++i){hold=sinks[i]=new Hold(sampleSink);disposables[i]=this.sources[i].run(hold,scheduler)}disposables[i]=this.sampler.run(sampleSink,scheduler);return new CompoundDisposable(disposables)};function Hold(sink){this.sink=sink;this.hasValue=false}Hold.prototype.event=function(t,x){this.value=x;this.hasValue=true;this.sink._notify(this)};Hold.prototype.end=base.noop;Hold.prototype.error=Pipe.prototype.error;function SampleSink(f,sinks,sink){this.f=f;this.sinks=sinks;this.sink=sink;this.active=false}SampleSink.prototype._notify=function(){if(!this.active){this.active=this.sinks.every(hasValue)}};SampleSink.prototype.event=function(t){if(this.active){this.sink.event(t,invoke(this.f,base.map(getValue,this.sinks)))}};SampleSink.prototype.end=Pipe.prototype.end;SampleSink.prototype.error=Pipe.prototype.error;function hasValue(hold){return hold.hasValue}function getValue(hold){return hold.value}},{"../Stream":5,"../base":6,"../disposable/CompoundDisposable":35,"../invoke":42,"../sink/Pipe":51}],26:[function(require,module,exports){var Stream=require("../Stream");var Sink=require("../sink/Pipe");var core=require("../source/core");var AwaitingDisposable=require("../disposable/AwaitingDisposable");exports.take=take;exports.skip=skip;exports.slice=slice;exports.takeWhile=takeWhile;exports.skipWhile=skipWhile;function take(n,stream){return slice(0,n,stream)}function skip(n,stream){return slice(n,Infinity,stream)}function slice(start,end,stream){return end<=start?core.empty():new Stream(new Slice(start,end,stream.source))}function Slice(min,max,source){this.skip=min;this.take=max-min;this.source=source}Slice.prototype.run=function(sink,scheduler){return new SliceSink(this.skip,this.take,this.source,sink,scheduler)};function SliceSink(skip,take,source,sink,scheduler){this.skip=skip;this.take=take;this.sink=sink;this.disposable=new AwaitingDisposable(source.run(this,scheduler))}SliceSink.prototype.end=Sink.prototype.end;SliceSink.prototype.error=Sink.prototype.error;SliceSink.prototype.event=function(t,x){if(this.skip>0){this.skip-=1;return}if(this.take===0){return}this.take-=1;this.sink.event(t,x);if(this.take===0){this.dispose();this.sink.end(t,x)}};SliceSink.prototype.dispose=function(){return this.disposable.dispose()};function takeWhile(p,stream){return new Stream(new TakeWhile(p,stream.source))}function TakeWhile(p,source){this.p=p;this.source=source}TakeWhile.prototype.run=function(sink,scheduler){return new TakeWhileSink(this.p,this.source,sink,scheduler)};function TakeWhileSink(p,source,sink,scheduler){this.p=p;this.sink=sink;this.active=true;this.disposable=new AwaitingDisposable(source.run(this,scheduler))}TakeWhileSink.prototype.end=Sink.prototype.end;TakeWhileSink.prototype.error=Sink.prototype.error;TakeWhileSink.prototype.event=function(t,x){if(!this.active){return}var p=this.p;this.active=p(x);if(this.active){this.sink.event(t,x)}else{this.dispose();this.sink.end(t,x)}};TakeWhileSink.prototype.dispose=function(){return this.disposable.dispose()};function skipWhile(p,stream){return new Stream(new SkipWhile(p,stream.source))}function SkipWhile(p,source){this.p=p;this.source=source}SkipWhile.prototype.run=function(sink,scheduler){return this.source.run(new SkipWhileSink(this.p,sink),scheduler)};function SkipWhileSink(p,sink){this.p=p;this.sink=sink;this.skipping=true}SkipWhileSink.prototype.end=Sink.prototype.end;SkipWhileSink.prototype.error=Sink.prototype.error;SkipWhileSink.prototype.event=function(t,x){if(this.skipping){var p=this.p;this.skipping=p(x);if(this.skipping){return}}this.sink.event(t,x)}},{"../Stream":5,"../disposable/AwaitingDisposable":34,"../sink/Pipe":51,"../source/core":54}],27:[function(require,module,exports){var Stream=require("../Stream");var MulticastSource=require("../source/MulticastSource");var until=require("./timeslice").takeUntil;var mergeConcurrently=require("./mergeConcurrently").mergeConcurrently;var map=require("./transform").map;exports.switch=switchLatest;function switchLatest(stream){var upstream=new Stream(new MulticastSource(stream.source));return mergeConcurrently(1,map(untilNext,upstream));function untilNext(s){return until(upstream,s)}}},{"../Stream":5,"../source/MulticastSource":52,"./mergeConcurrently":21,"./timeslice":28,"./transform":31}],28:[function(require,module,exports){var Stream=require("../Stream");var Pipe=require("../sink/Pipe");var CompoundDisposable=require("../disposable/CompoundDisposable");var never=require("../source/core").never;var join=require("../combinator/flatMap").join;var take=require("../combinator/slice").take;var noop=require("../base").noop;exports.during=during;exports.takeUntil=takeUntil;exports.skipUntil=skipUntil;function takeUntil(signal,stream){return new Stream(new Until(signal.source,stream.source))}function skipUntil(signal,stream){return between(signal,never(),stream)}function during(timeWindow,stream){return between(timeWindow,join(timeWindow),stream)}function between(start,end,stream){return new Stream(new During(take(1,start).source,take(1,end).source,stream.source))}function Until(maxSignal,source){this.maxSignal=maxSignal;this.source=source}Until.prototype.run=function(sink,scheduler){var min=new MinBound(sink);var max=new UpperBound(this.maxSignal,sink,scheduler);var disposable=this.source.run(new TimeWindowSink(min,max,sink),scheduler);return new CompoundDisposable([min,max,disposable])};function MinBound(sink){this.value=-Infinity;this.sink=sink}MinBound.prototype.error=Pipe.prototype.error;MinBound.prototype.event=noop;MinBound.prototype.end=noop;MinBound.prototype.dispose=noop;function During(minSignal,maxSignal,source){this.minSignal=minSignal;this.maxSignal=maxSignal;this.source=source}During.prototype.run=function(sink,scheduler){var min=new LowerBound(this.minSignal,sink,scheduler);var max=new UpperBound(this.maxSignal,sink,scheduler);var disposable=this.source.run(new TimeWindowSink(min,max,sink),scheduler);return new CompoundDisposable([min,max,disposable])};function TimeWindowSink(min,max,sink){this.min=min;this.max=max;this.sink=sink}TimeWindowSink.prototype.event=function(t,x){if(t>=this.min.value&&t<this.max.value){this.sink.event(t,x)}};TimeWindowSink.prototype.error=Pipe.prototype.error;TimeWindowSink.prototype.end=Pipe.prototype.end;function LowerBound(signal,sink,scheduler){this.value=Infinity;this.sink=sink;this.disposable=signal.run(this,scheduler)}LowerBound.prototype.event=function(t){if(t<this.value){this.value=t}};LowerBound.prototype.end=noop;LowerBound.prototype.error=Pipe.prototype.error;LowerBound.prototype.dispose=function(){return this.disposable.dispose()};function UpperBound(signal,sink,scheduler){this.value=Infinity;this.sink=sink;this.disposable=signal.run(this,scheduler)}UpperBound.prototype.event=function(t,x){if(t<this.value){this.value=t;this.sink.end(t,x)}};UpperBound.prototype.end=noop;UpperBound.prototype.error=Pipe.prototype.error;UpperBound.prototype.dispose=function(){return this.disposable.dispose()}},{"../Stream":5,"../base":6,"../combinator/flatMap":15,"../combinator/slice":26,"../disposable/CompoundDisposable":35,"../sink/Pipe":51,"../source/core":54}],29:[function(require,module,exports){var Stream=require("../Stream");var Sink=require("../sink/Pipe");exports.timestamp=timestamp;function timestamp(stream){return new Stream(new Timestamp(stream.source))}function Timestamp(source){this.source=source}Timestamp.prototype.run=function(sink,scheduler){return this.source.run(new TimestampSink(sink),scheduler)};function TimestampSink(sink){this.sink=sink}TimestampSink.prototype.end=Sink.prototype.end;TimestampSink.prototype.error=Sink.prototype.error;TimestampSink.prototype.event=function(t,x){this.sink.event(t,{time:t,value:x})}},{"../Stream":5,"../sink/Pipe":51}],30:[function(require,module,exports){var Stream=require("../Stream");exports.transduce=transduce;function transduce(transducer,stream){return new Stream(new Transduce(transducer,stream.source))}function Transduce(transducer,source){this.transducer=transducer;this.source=source}Transduce.prototype.run=function(sink,scheduler){var xf=this.transducer(new Transformer(sink));return this.source.run(new TransduceSink(getTxHandler(xf),sink),scheduler)};function TransduceSink(adapter,sink){this.xf=adapter;this.sink=sink}TransduceSink.prototype.event=function(t,x){var next=this.xf.step(t,x);return this.xf.isReduced(next)?this.sink.end(t,this.xf.getResult(next)):next};TransduceSink.prototype.end=function(t,x){return this.xf.result(x)};TransduceSink.prototype.error=function(t,e){return this.sink.error(t,e)};function Transformer(sink){this.time=-Infinity;this.sink=sink}Transformer.prototype["@@transducer/init"]=Transformer.prototype.init=function(){};Transformer.prototype["@@transducer/step"]=Transformer.prototype.step=function(t,x){if(!isNaN(t)){this.time=Math.max(t,this.time)}return this.sink.event(this.time,x)};Transformer.prototype["@@transducer/result"]=Transformer.prototype.result=function(x){return this.sink.end(this.time,x)};function getTxHandler(tx){return typeof tx["@@transducer/step"]==="function"?new TxAdapter(tx):new LegacyTxAdapter(tx)}function TxAdapter(tx){this.tx=tx}TxAdapter.prototype.step=function(t,x){return this.tx["@@transducer/step"](t,x)};TxAdapter.prototype.result=function(x){return this.tx["@@transducer/result"](x)};TxAdapter.prototype.isReduced=function(x){return x!=null&&x["@@transducer/reduced"]};TxAdapter.prototype.getResult=function(x){return x["@@transducer/value"]};function LegacyTxAdapter(tx){this.tx=tx}LegacyTxAdapter.prototype.step=function(t,x){return this.tx.step(t,x)};LegacyTxAdapter.prototype.result=function(x){return this.tx.result(x)};LegacyTxAdapter.prototype.isReduced=function(x){return x!=null&&x.__transducers_reduced__};LegacyTxAdapter.prototype.getResult=function(x){return x.value}},{"../Stream":5}],31:[function(require,module,exports){var Stream=require("../Stream");var Map=require("../fusion/Map");exports.map=map;exports.constant=constant;exports.tap=tap;function map(f,stream){return new Stream(Map.create(f,stream.source))}function constant(x,stream){return map(function(){return x},stream)}function tap(f,stream){return map(function(x){f(x);return x},stream)}},{"../Stream":5,"../fusion/Map":41}],32:[function(require,module,exports){var Stream=require("../Stream");var transform=require("./transform");var core=require("../source/core");var Sink=require("../sink/Pipe");var IndexSink=require("../sink/IndexSink");var CompoundDisposable=require("../disposable/CompoundDisposable");var base=require("../base");var invoke=require("../invoke");var Queue=require("../Queue");var map=base.map;var tail=base.tail;exports.zip=zip;exports.zipArray=zipArray;function zip(f){return zipArray(f,tail(arguments))}function zipArray(f,streams){return streams.length===0?core.empty():streams.length===1?transform.map(f,streams[0]):new Stream(new Zip(f,map(getSource,streams)))}function getSource(stream){return stream.source}function Zip(f,sources){this.f=f;this.sources=sources}Zip.prototype.run=function(sink,scheduler){var l=this.sources.length;var disposables=new Array(l);var sinks=new Array(l);var buffers=new Array(l);var zipSink=new ZipSink(this.f,buffers,sinks,sink);for(var indexSink,i=0;i<l;++i){buffers[i]=new Queue;indexSink=sinks[i]=new IndexSink(i,zipSink);disposables[i]=this.sources[i].run(indexSink,scheduler)}return new CompoundDisposable(disposables)};function ZipSink(f,buffers,sinks,sink){this.f=f;this.sinks=sinks;this.sink=sink;this.buffers=buffers}ZipSink.prototype.event=function(t,indexedValue){var buffers=this.buffers;var buffer=buffers[indexedValue.index];buffer.push(indexedValue.value);if(buffer.length()===1){if(!ready(this.buffers)){return}emitZipped(this.f,t,buffers,this.sink);if(ended(this.buffers,this.sinks)){this.sink.end(t,void 0)}}};ZipSink.prototype.end=function(t,indexedValue){var buffer=this.buffers[indexedValue.index];if(buffer.isEmpty()){this.sink.end(t,indexedValue.value)}};ZipSink.prototype.error=Sink.prototype.error;function emitZipped(f,t,buffers,sink){sink.event(t,invoke(f,map(head,buffers)))}function head(buffer){return buffer.shift()}function ended(buffers,sinks){for(var i=0,l=buffers.length;i<l;++i){if(buffers[i].isEmpty()&&!sinks[i].active){return true}}return false}function ready(buffers){for(var i=0,l=buffers.length;i<l;++i){if(buffers[i].isEmpty()){return false}}return true}},{"../Queue":4,"../Stream":5,"../base":6,"../disposable/CompoundDisposable":35,"../invoke":42,"../sink/IndexSink":49,"../sink/Pipe":51,"../source/core":54,"./transform":31}],33:[function(require,module,exports){var Promise=require("./Promise");module.exports=defer;function defer(task){return Promise.resolve(task).then(runTask)}function runTask(task){try{return task.run()}catch(e){return task.error(e)}}},{"./Promise":3}],34:[function(require,module,exports){module.exports=AwaitingDisposable;function AwaitingDisposable(disposable){this.disposed=false;this.disposable=disposable;this.value=void 0}AwaitingDisposable.prototype.dispose=function(){if(!this.disposed){this.disposed=true;this.value=this.disposable.dispose()}return this.value}},{}],35:[function(require,module,exports){var all=require("../Promise").all;var map=require("../base").map;module.exports=CompoundDisposable;function CompoundDisposable(disposables){this.disposed=false;this.disposables=disposables}CompoundDisposable.prototype.dispose=function(){if(this.disposed){return}this.disposed=true;return all(map(dispose,this.disposables))};function dispose(disposable){return disposable.dispose()}},{"../Promise":3,"../base":6}],36:[function(require,module,exports){module.exports=Disposable;function Disposable(f,data){this.disposed=false;this._dispose=f;this._data=data}Disposable.prototype.dispose=function(){if(this.disposed){return}this.disposed=true;return this._dispose(this._data)}},{}],37:[function(require,module,exports){var noop=require("../base").noop;module.exports=EmptyDisposable;function EmptyDisposable(){}EmptyDisposable.prototype.dispose=noop},{"../base":6}],38:[function(require,module,exports){module.exports=fatalError;function fatalError(e){setTimeout(function(){throw e},0)}},{}],39:[function(require,module,exports){var Pipe=require("../sink/Pipe");module.exports=Filter;function Filter(p,source){this.p=p;this.source=source}Filter.create=function createFilter(p,source){if(source instanceof Filter){return new Filter(and(source.p,p),source.source)}return new Filter(p,source)};Filter.prototype.run=function(sink,scheduler){return this.source.run(new FilterSink(this.p,sink),scheduler)};function FilterSink(p,sink){this.p=p;this.sink=sink}FilterSink.prototype.end=Pipe.prototype.end;FilterSink.prototype.error=Pipe.prototype.error;FilterSink.prototype.event=function(t,x){var p=this.p;p(x)&&this.sink.event(t,x)};function and(p,q){return function(x){return p(x)&&q(x)}}},{"../sink/Pipe":51}],40:[function(require,module,exports){var Pipe=require("../sink/Pipe");module.exports=FilterMap;function FilterMap(p,f,source){this.p=p;this.f=f;this.source=source}FilterMap.prototype.run=function(sink,scheduler){return this.source.run(new FilterMapSink(this.p,this.f,sink),scheduler)};function FilterMapSink(p,f,sink){this.p=p;this.f=f;this.sink=sink}FilterMapSink.prototype.event=function(t,x){var f=this.f;var p=this.p;p(x)&&this.sink.event(t,f(x))};FilterMapSink.prototype.end=Pipe.prototype.end;FilterMapSink.prototype.error=Pipe.prototype.error},{"../sink/Pipe":51}],41:[function(require,module,exports){var Pipe=require("../sink/Pipe");var Filter=require("./Filter");var FilterMap=require("./FilterMap");var base=require("../base");module.exports=Map;function Map(f,source){this.f=f;this.source=source}Map.create=function createMap(f,source){if(source instanceof Map){return new Map(base.compose(f,source.f),source.source)}if(source instanceof Filter){return new FilterMap(source.p,f,source.source)}if(source instanceof FilterMap){return new FilterMap(source.p,base.compose(f,source.f),source.source)}return new Map(f,source)};Map.prototype.run=function(sink,scheduler){return this.source.run(new MapSink(this.f,sink),scheduler)};function MapSink(f,sink){this.f=f;this.sink=sink}MapSink.prototype.end=Pipe.prototype.end;MapSink.prototype.error=Pipe.prototype.error;MapSink.prototype.event=function(t,x){var f=this.f;this.sink.event(t,f(x))}},{"../base":6,"../sink/Pipe":51,"./Filter":39,"./FilterMap":40}],42:[function(require,module,exports){module.exports=invoke;function invoke(f,args){switch(args.length){case 0:return f();case 1:return f(args[0]);case 2:return f(args[0],args[1]);case 3:return f(args[0],args[1],args[2]);case 4:return f(args[0],args[1],args[2],args[3]);case 5:return f(args[0],args[1],args[2],args[3],args[4]);default:return f.apply(void 0,args)}}},{}],43:[function(require,module,exports){exports.isIterable=isIterable;exports.getIterator=getIterator;exports.makeIterable=makeIterable;var iteratorSymbol;if(typeof Set==="function"&&typeof(new Set)["@@iterator"]==="function"){iteratorSymbol="@@iterator"}else{iteratorSymbol=typeof Symbol==="function"&&Symbol.iterator||"_es6shim_iterator_"}function isIterable(o){return typeof o[iteratorSymbol]==="function"}function getIterator(o){return o[iteratorSymbol]()}function makeIterable(f,o){o[iteratorSymbol]=f;return o}},{}],44:[function(require,module,exports){var Promise=require("./Promise");var Observer=require("./sink/Observer");var defaultScheduler=require("./scheduler/defaultScheduler");exports.withDefaultScheduler=withDefaultScheduler;exports.withScheduler=withScheduler;function withDefaultScheduler(f,source){return withScheduler(f,source,defaultScheduler)}function withScheduler(f,source,scheduler){return new Promise(function(resolve,reject){var disposable;var observer=new Observer(f,function(x){disposeThen(resolve,reject,disposable,x)},function(e){disposeThen(reject,reject,disposable,e)});disposable=source.run(observer,scheduler)})}function disposeThen(resolve,reject,disposable,x){Promise.resolve(disposable.dispose()).then(function(){resolve(x)},reject)}},{"./Promise":3,"./scheduler/defaultScheduler":47,"./sink/Observer":50}],45:[function(require,module,exports){var fatal=require("../fatalError");module.exports=PropagateTask;function PropagateTask(run,value,sink){this._run=run;this.value=value;this.sink=sink;this.active=true}PropagateTask.event=function(value,sink){return new PropagateTask(emit,value,sink)};PropagateTask.end=function(value,sink){return new PropagateTask(end,value,sink)};PropagateTask.error=function(value,sink){return new PropagateTask(error,value,sink)};PropagateTask.prototype.dispose=function(){this.active=false};PropagateTask.prototype.run=function(t){if(!this.active){return}this._run(t,this.value,this.sink)};PropagateTask.prototype.error=function(t,e){if(!this.active){return fatal(e)}this.sink.error(t,e)};function error(t,e,sink){sink.error(t,e)}function emit(t,x,sink){sink.event(t,x)}function end(t,x,sink){sink.end(t,x)}},{"../fatalError":38}],46:[function(require,module,exports){var base=require("./../base");var findIndex=base.findIndex;module.exports=Scheduler;function ScheduledTask(delay,period,task,scheduler){this.time=delay;this.period=period;this.task=task;this.scheduler=scheduler;this.active=true}ScheduledTask.prototype.run=function(){return this.task.run(this.time)};ScheduledTask.prototype.error=function(e){return this.task.error(this.time,e)};ScheduledTask.prototype.cancel=function(){this.scheduler.cancel(this);return this.task.dispose()};function runTask(task){try{return task.run()}catch(e){return task.error(e)}}function Scheduler(setTimer,clearTimer,now){this.now=now;this._setTimer=setTimer;this._clearTimer=clearTimer;this._timer=null;this._nextArrival=0;this._tasks=[];var self=this;this._runReadyTasksBound=function(){self._runReadyTasks(self.now())}}Scheduler.prototype.asap=function(task){return this.schedule(0,-1,task)};Scheduler.prototype.delay=function(delay,task){return this.schedule(delay,-1,task)};Scheduler.prototype.periodic=function(period,task){return this.schedule(0,period,task)};Scheduler.prototype.schedule=function(delay,period,task){var now=this.now();var st=new ScheduledTask(now+Math.max(0,delay),period,task,this);insertByTime(st,this._tasks);this._scheduleNextRun(now);return st};Scheduler.prototype.cancel=function(task){task.active=false;var i=findIndex(task,this._tasks);if(i>=0){this._tasks.splice(i,1);this._reschedule()}};Scheduler.prototype.cancelAll=function(f){this._tasks=base.removeAll(f,this._tasks);this._reschedule()};Scheduler.prototype._reschedule=function(){if(this._tasks.length===0){this._unschedule()}else{this._scheduleNextRun(this.now())}};Scheduler.prototype._unschedule=function(){this._clearTimer(this._timer);this._timer=null};Scheduler.prototype._runReadyTasks=function(now){this._timer=null;this._runTasks(this._collectReadyTasks(now));this._scheduleNextRun(this.now())};Scheduler.prototype._collectReadyTasks=function(now){var tasks=this._tasks;var l=tasks.length;var toRun=[];var task,i;for(i=0;i<l;++i){task=tasks[i];if(task.time>now){break}if(task.active){toRun.push(task)}}this._tasks=base.drop(i,tasks);return toRun};Scheduler.prototype._runTasks=function(tasks){var l=tasks.length;var task;for(var i=0;i<l;++i){task=tasks[i];runTask(task);if(task.period>=0&&task.active){task.time=task.time+task.period;insertByTime(task,this._tasks)}}};Scheduler.prototype._scheduleNextRun=function(now){if(this._tasks.length===0){return}var nextArrival=this._tasks[0].time;if(this._timer===null){this._scheduleNextArrival(nextArrival,now)}else if(nextArrival<this._nextArrival){this._unschedule();this._scheduleNextArrival(nextArrival,now)}};Scheduler.prototype._scheduleNextArrival=function(nextArrival,now){this._nextArrival=nextArrival;var delay=Math.max(0,nextArrival-now);this._timer=this._setTimer(this._runReadyTasksBound,delay)};function insertByTime(task,tasks){tasks.splice(findInsertion(task,tasks),0,task)}function findInsertion(task,tasks){var i=binarySearch(task,tasks);var l=tasks.length;var t=task.time;while(i<l&&t===tasks[i].time){++i}return i}function binarySearch(x,sortedArray){var lo=0;var hi=sortedArray.length;var mid,y;while(lo<hi){mid=Math.floor((lo+hi)/2);y=sortedArray[mid];if(x.time===y.time){return mid}else if(x.time<y.time){hi=mid}else{lo=mid+1}}return hi}},{"./../base":6}],47:[function(require,module,exports){(function(process){var Scheduler=require("./Scheduler");var defer=require("../defer");var defaultSetTimer,defaultClearTimer;function Task(f){this.f=f;this.active=true}Task.prototype.run=function(){if(!this.active){return}var f=this.f;return f()};Task.prototype.error=function(e){throw e};Task.prototype.cancel=function(){this.active=false};function runAsTask(f){var task=new Task(f);defer(task);return task}if(typeof process==="object"&&typeof process.nextTick==="function"){defaultSetTimer=function(f,ms){return ms<=0?runAsTask(f):setTimeout(f,ms)};defaultClearTimer=function(t){return t instanceof Task?t.cancel():clearTimeout(t)}}else{defaultSetTimer=function(f,ms){return setTimeout(f,ms)};defaultClearTimer=function(t){return clearTimeout(t)}}module.exports=new Scheduler(defaultSetTimer,defaultClearTimer,Date.now)}).call(this,require("_process"))},{"../defer":33,"./Scheduler":46,_process:1}],48:[function(require,module,exports){var defer=require("../defer");module.exports=DeferredSink;function DeferredSink(sink){this.sink=sink;this.events=[];this.length=0;this.active=true}DeferredSink.prototype.event=function(t,x){if(!this.active){return}if(this.length===0){defer(new PropagateAllTask(this))}this.events[this.length++]={time:t,value:x}};DeferredSink.prototype.error=function(t,e){this.active=false;defer(new ErrorTask(t,e,this.sink))};DeferredSink.prototype.end=function(t,x){this.active=false;defer(new EndTask(t,x,this.sink))};function PropagateAllTask(deferred){this.deferred=deferred}PropagateAllTask.prototype.run=function(){var p=this.deferred;var events=p.events;var sink=p.sink;var event;for(var i=0,l=p.length;i<l;++i){event=events[i];sink.event(event.time,event.value);events[i]=void 0}p.length=0};PropagateAllTask.prototype.error=function(e){this.deferred.error(0,e)};function EndTask(t,x,sink){this.time=t;this.value=x;this.sink=sink}EndTask.prototype.run=function(){this.sink.end(this.time,this.value)};EndTask.prototype.error=function(e){this.sink.error(this.time,e)};function ErrorTask(t,e,sink){this.time=t;this.value=e;this.sink=sink}ErrorTask.prototype.run=function(){this.sink.error(this.time,this.value)};ErrorTask.prototype.error=function(e){throw e}},{"../defer":33}],49:[function(require,module,exports){var Sink=require("./Pipe");module.exports=IndexSink;IndexSink.hasValue=hasValue;IndexSink.getValue=getValue;function hasValue(indexSink){return indexSink.hasValue}function getValue(indexSink){return indexSink.value}function IndexSink(i,sink){this.index=i;this.sink=sink;this.active=true;this.hasValue=false;this.value=void 0}IndexSink.prototype.event=function(t,x){if(!this.active){return}this.value=x;this.hasValue=true;this.sink.event(t,this)};IndexSink.prototype.end=function(t,x){if(!this.active){return}this.active=false;this.sink.end(t,{index:this.index,value:x})};IndexSink.prototype.error=Sink.prototype.error},{"./Pipe":51}],50:[function(require,module,exports){module.exports=Observer;function Observer(event,end,error){this._event=event;this._end=end;this._error=error;this.active=true}Observer.prototype.event=function(t,x){if(!this.active){return}this._event(x)};Observer.prototype.end=function(t,x){if(!this.active){return}this.active=false;this._end(x)};Observer.prototype.error=function(t,e){this.active=false;this._error(e)}},{}],51:[function(require,module,exports){module.exports=Pipe;function Pipe(sink){this.sink=sink}Pipe.prototype.event=function(t,x){ | |
return this.sink.event(t,x)};Pipe.prototype.end=function(t,x){return this.sink.end(t,x)};Pipe.prototype.error=function(t,e){return this.sink.error(t,e)}},{}],52:[function(require,module,exports){var base=require("../base");var resolve=require("../Promise").resolve;module.exports=MulticastSource;function MulticastSource(source){this.source=source;this.sink=new MulticastSink;this._disposable=void 0}MulticastSource.prototype.run=function(sink,scheduler){var n=this.sink.add(sink);if(n===1){this._disposable=this.source.run(this.sink,scheduler)}return new MulticastDisposable(this,sink)};MulticastSource.prototype._dispose=function(){return resolve(this._disposable).then(dispose)};function dispose(disposable){if(disposable===void 0){return}return disposable.dispose()}function MulticastDisposable(source,sink){this.source=source;this.sink=sink}MulticastDisposable.prototype.dispose=function(){var s=this.source;var remaining=s.sink.remove(this.sink);return remaining===0&&s._dispose()};function MulticastSink(){this.sinks=[]}MulticastSink.prototype.add=function(sink){this.sinks=base.append(sink,this.sinks);return this.sinks.length};MulticastSink.prototype.remove=function(sink){this.sinks=base.remove(base.findIndex(sink,this.sinks),this.sinks);return this.sinks.length};MulticastSink.prototype.event=function(t,x){var s=this.sinks;if(s.length===1){s[0].event(t,x);return}for(var i=0;i<s.length;++i){s[i].event(t,x)}};MulticastSink.prototype.end=function(t,x){var s=this.sinks;if(s.length===1){s[0].end(t,x);return}for(var i=0;i<s.length;++i){s[i].end(t,x)}};MulticastSink.prototype.error=function(t,e){var s=this.sinks;if(s.length===1){s[0].error(t,e);return}for(var i=0;i<s.length;++i){s[i].error(t,e)}}},{"../Promise":3,"../base":6}],53:[function(require,module,exports){var PropagateTask=require("../scheduler/PropagateTask");module.exports=ValueSource;function ValueSource(emit,x){this.emit=emit;this.value=x}ValueSource.prototype.run=function(sink,scheduler){return new ValueProducer(this.emit,this.value,sink,scheduler)};function ValueProducer(emit,x,sink,scheduler){this.task=new PropagateTask(emit,x,sink);scheduler.asap(this.task)}ValueProducer.prototype.dispose=function(){return this.task.dispose()}},{"../scheduler/PropagateTask":45}],54:[function(require,module,exports){var Stream=require("../Stream");var ValueSource=require("../source/ValueSource");var Disposable=require("../disposable/Disposable");var EmptyDisposable=require("../disposable/EmptyDisposable");var PropagateTask=require("../scheduler/PropagateTask");exports.of=streamOf;exports.empty=empty;exports.never=never;function streamOf(x){return new Stream(new ValueSource(emit,x))}function emit(t,x,sink){sink.event(0,x);sink.end(0,void 0)}function empty(){return EMPTY}function EmptySource(){}EmptySource.prototype.run=function(sink,scheduler){var task=PropagateTask.end(void 0,sink);scheduler.asap(task);return new Disposable(dispose,task)};function dispose(task){return task.dispose()}var EMPTY=new Stream(new EmptySource);function never(){return NEVER}function NeverSource(){}NeverSource.prototype.run=function(){return new EmptyDisposable};var NEVER=new Stream(new NeverSource)},{"../Stream":5,"../disposable/Disposable":36,"../disposable/EmptyDisposable":37,"../scheduler/PropagateTask":45,"../source/ValueSource":53}],55:[function(require,module,exports){var Stream=require("../Stream");var MulticastSource=require("./MulticastSource");var DeferredSink=require("../sink/DeferredSink");exports.create=create;function create(run){return new Stream(new MulticastSource(new SubscriberSource(run)))}function SubscriberSource(subscribe){this._subscribe=subscribe}SubscriberSource.prototype.run=function(sink,scheduler){return new Subscription(new DeferredSink(sink),scheduler,this._subscribe)};function Subscription(sink,scheduler,subscribe){this.sink=sink;this.scheduler=scheduler;this.active=true;var s=this;try{this._unsubscribe=subscribe(add,end,error)}catch(e){error(e)}function add(x){s._add(x)}function end(x){s._end(x)}function error(e){s._error(e)}}Subscription.prototype._add=function(x){if(!this.active){return}tryEvent(this.scheduler.now(),x,this.sink)};Subscription.prototype._end=function(x){if(!this.active){return}this.active=false;tryEnd(this.scheduler.now(),x,this.sink)};Subscription.prototype._error=function(x){this.active=false;this.sink.error(this.scheduler.now(),x)};Subscription.prototype.dispose=function(){this.active=false;if(typeof this._unsubscribe==="function"){return this._unsubscribe()}};function tryEvent(t,x,sink){try{sink.event(t,x)}catch(e){sink.error(t,e)}}function tryEnd(t,x,sink){try{sink.end(t,x)}catch(e){sink.error(t,e)}}},{"../Stream":5,"../sink/DeferredSink":48,"./MulticastSource":52}],56:[function(require,module,exports){var fromArray=require("./fromArray").fromArray;var isIterable=require("../iterable").isIterable;var fromIterable=require("./fromIterable").fromIterable;exports.from=from;function from(a){if(Array.isArray(a)){return fromArray(a)}if(isIterable(a)){return fromIterable(a)}throw new TypeError("not iterable: "+a)}},{"../iterable":43,"./fromArray":57,"./fromIterable":59}],57:[function(require,module,exports){var Stream=require("../Stream");var PropagateTask=require("../scheduler/PropagateTask");exports.fromArray=fromArray;function fromArray(a){return new Stream(new ArraySource(a))}function ArraySource(a){this.array=a}ArraySource.prototype.run=function(sink,scheduler){return new ArrayProducer(this.array,sink,scheduler)};function ArrayProducer(array,sink,scheduler){this.scheduler=scheduler;this.task=new PropagateTask(runProducer,array,sink);scheduler.asap(this.task)}ArrayProducer.prototype.dispose=function(){return this.task.dispose()};function runProducer(t,array,sink){return produce(this,array,sink,0)}function produce(task,array,sink,k){for(var i=k,l=array.length;i<l&&task.active;++i){sink.event(0,array[i])}return end();function end(){return task.active&&sink.end(0)}}},{"../Stream":5,"../scheduler/PropagateTask":45}],58:[function(require,module,exports){var Stream=require("../Stream");var MulticastSource=require("./MulticastSource");var DeferredSink=require("../sink/DeferredSink");exports.fromEvent=fromEvent;function fromEvent(event,source){var s;if(typeof source.addEventListener==="function"&&typeof source.removeEventListener==="function"){s=new MulticastSource(new EventTargetSource(event,source))}else if(typeof source.addListener==="function"&&typeof source.removeListener==="function"){s=new EventEmitterSource(event,source)}else{throw new Error("source must support addEventListener/removeEventListener or addListener/removeListener")}return new Stream(s)}function EventTargetSource(event,source){this.event=event;this.source=source}EventTargetSource.prototype.run=function(sink,scheduler){return new EventAdapter(initEventTarget,this.event,this.source,sink,scheduler)};function initEventTarget(addEvent,event,source){source.addEventListener(event,addEvent,false);return function(event,target){target.removeEventListener(event,addEvent,false)}}function EventEmitterSource(event,source){this.event=event;this.source=source}EventEmitterSource.prototype.run=function(sink,scheduler){return new EventAdapter(initEventEmitter,this.event,this.source,new DeferredSink(sink),scheduler)};function initEventEmitter(addEvent,event,source){function addEventVariadic(a){var l=arguments.length;if(l>1){var arr=new Array(l);for(var i=0;i<l;++i){arr[i]=arguments[i]}addEvent(arr)}else{addEvent(a)}}source.addListener(event,addEventVariadic);return function(event,target){target.removeListener(event,addEventVariadic)}}function EventAdapter(init,event,source,sink,scheduler){this.event=event;this.source=source;function addEvent(ev){tryEvent(scheduler.now(),ev,sink)}this._dispose=init(addEvent,event,source)}EventAdapter.prototype.dispose=function(){return this._dispose(this.event,this.source)};function tryEvent(t,x,sink){try{sink.event(t,x)}catch(e){sink.error(t,e)}}},{"../Stream":5,"../sink/DeferredSink":48,"./MulticastSource":52}],59:[function(require,module,exports){var Stream=require("../Stream");var getIterator=require("../iterable").getIterator;var PropagateTask=require("../scheduler/PropagateTask");exports.fromIterable=fromIterable;function fromIterable(iterable){return new Stream(new IterableSource(iterable))}function IterableSource(iterable){this.iterable=iterable}IterableSource.prototype.run=function(sink,scheduler){return new IteratorProducer(getIterator(this.iterable),sink,scheduler)};function IteratorProducer(iterator,sink,scheduler){this.scheduler=scheduler;this.iterator=iterator;this.task=new PropagateTask(runProducer,this,sink);scheduler.asap(this.task)}IteratorProducer.prototype.dispose=function(){return this.task.dispose()};function runProducer(t,producer,sink){var x=producer.iterator.next();if(x.done){sink.end(t,x.value)}else{sink.event(t,x.value)}producer.scheduler.asap(producer.task)}},{"../Stream":5,"../iterable":43,"../scheduler/PropagateTask":45}],60:[function(require,module,exports){var Stream=require("../Stream");var Promise=require("../Promise");var base=require("../base");exports.generate=generate;function generate(f){return new Stream(new GenerateSource(f,base.tail(arguments)))}function GenerateSource(f,args){this.f=f;this.args=args}GenerateSource.prototype.run=function(sink,scheduler){return new Generate(this.f.apply(void 0,this.args),sink,scheduler)};function Generate(iterator,sink,scheduler){this.iterator=iterator;this.sink=sink;this.scheduler=scheduler;this.active=true;var self=this;function err(e){self.sink.error(self.scheduler.now(),e)}Promise.resolve(this).then(next).catch(err)}function next(generate,x){return generate.active?handle(generate,generate.iterator.next(x)):x}function handle(generate,result){if(result.done){return generate.sink.end(generate.scheduler.now(),result.value)}return Promise.resolve(result.value).then(function(x){return emit(generate,x)},function(e){return error(generate,e)})}function emit(generate,x){generate.sink.event(generate.scheduler.now(),x);return next(generate,x)}function error(generate,e){return handle(generate,generate.iterator.throw(e))}Generate.prototype.dispose=function(){this.active=false}},{"../Promise":3,"../Stream":5,"../base":6}],61:[function(require,module,exports){var Stream=require("../Stream");var Promise=require("../Promise");exports.iterate=iterate;function iterate(f,x){return new Stream(new IterateSource(f,x))}function IterateSource(f,x){this.f=f;this.value=x}IterateSource.prototype.run=function(sink,scheduler){return new Iterate(this.f,this.value,sink,scheduler)};function Iterate(f,initial,sink,scheduler){this.f=f;this.sink=sink;this.scheduler=scheduler;this.active=true;var x=initial;var self=this;function err(e){self.sink.error(self.scheduler.now(),e)}function start(iterate){return stepIterate(iterate,x)}Promise.resolve(this).then(start).catch(err)}Iterate.prototype.dispose=function(){this.active=false};function stepIterate(iterate,x){iterate.sink.event(iterate.scheduler.now(),x);if(!iterate.active){return x}var f=iterate.f;return Promise.resolve(f(x)).then(function(y){return continueIterate(iterate,y)})}function continueIterate(iterate,x){return!iterate.active?iterate.value:stepIterate(iterate,x)}},{"../Promise":3,"../Stream":5}],62:[function(require,module,exports){var Stream=require("../Stream");var Disposable=require("../disposable/Disposable");var MulticastSource=require("./MulticastSource");var PropagateTask=require("../scheduler/PropagateTask");exports.periodic=periodic;function periodic(period,value){return new Stream(new MulticastSource(new Periodic(period,value)))}function Periodic(period,value){this.period=period;this.value=value}Periodic.prototype.run=function(sink,scheduler){var task=scheduler.periodic(this.period,new PropagateTask(emit,this.value,sink));return new Disposable(cancelTask,task)};function cancelTask(task){task.cancel()}function emit(t,x,sink){sink.event(t,x)}},{"../Stream":5,"../disposable/Disposable":36,"../scheduler/PropagateTask":45,"./MulticastSource":52}],63:[function(require,module,exports){var Stream=require("../Stream");var Promise=require("../Promise");exports.unfold=unfold;function unfold(f,seed){return new Stream(new UnfoldSource(f,seed))}function UnfoldSource(f,seed){this.f=f;this.value=seed}UnfoldSource.prototype.run=function(sink,scheduler){return new Unfold(this.f,this.value,sink,scheduler)};function Unfold(f,x,sink,scheduler){this.f=f;this.sink=sink;this.scheduler=scheduler;this.active=true;var self=this;function err(e){self.sink.error(self.scheduler.now(),e)}function start(unfold){return stepUnfold(unfold,x)}Promise.resolve(this).then(start).catch(err)}Unfold.prototype.dispose=function(){this.active=false};function stepUnfold(unfold,x){var f=unfold.f;return Promise.resolve(f(x)).then(function(tuple){return continueUnfold(unfold,tuple)})}function continueUnfold(unfold,tuple){if(tuple.done){unfold.sink.end(unfold.scheduler.now(),tuple.value);return tuple.value}unfold.sink.event(unfold.scheduler.now(),tuple.value);if(!unfold.active){return tuple.value}return stepUnfold(unfold,tuple.seed)}},{"../Promise":3,"../Stream":5}],64:[function(require,module,exports){(function(define){"use strict";define(function(require){var makePromise=require("./makePromise");var Scheduler=require("./Scheduler");var async=require("./env").asap;return makePromise({scheduler:new Scheduler(async)})})})(typeof define==="function"&&define.amd?define:function(factory){module.exports=factory(require)})},{"./Scheduler":65,"./env":67,"./makePromise":69}],65:[function(require,module,exports){(function(define){"use strict";define(function(){function Scheduler(async){this._async=async;this._running=false;this._queue=this;this._queueLen=0;this._afterQueue={};this._afterQueueLen=0;var self=this;this.drain=function(){self._drain()}}Scheduler.prototype.enqueue=function(task){this._queue[this._queueLen++]=task;this.run()};Scheduler.prototype.afterQueue=function(task){this._afterQueue[this._afterQueueLen++]=task;this.run()};Scheduler.prototype.run=function(){if(!this._running){this._running=true;this._async(this.drain)}};Scheduler.prototype._drain=function(){var i=0;for(;i<this._queueLen;++i){this._queue[i].run();this._queue[i]=void 0}this._queueLen=0;this._running=false;for(i=0;i<this._afterQueueLen;++i){this._afterQueue[i].run();this._afterQueue[i]=void 0}this._afterQueueLen=0};return Scheduler})})(typeof define==="function"&&define.amd?define:function(factory){module.exports=factory()})},{}],66:[function(require,module,exports){(function(define){"use strict";define(function(require){var setTimer=require("../env").setTimer;var format=require("../format");return function unhandledRejection(Promise){var logError=noop;var logInfo=noop;var localConsole;if(typeof console!=="undefined"){localConsole=console;logError=typeof localConsole.error!=="undefined"?function(e){localConsole.error(e)}:function(e){localConsole.log(e)};logInfo=typeof localConsole.info!=="undefined"?function(e){localConsole.info(e)}:function(e){localConsole.log(e)}}Promise.onPotentiallyUnhandledRejection=function(rejection){enqueue(report,rejection)};Promise.onPotentiallyUnhandledRejectionHandled=function(rejection){enqueue(unreport,rejection)};Promise.onFatalRejection=function(rejection){enqueue(throwit,rejection.value)};var tasks=[];var reported=[];var running=null;function report(r){if(!r.handled){reported.push(r);logError("Potentially unhandled rejection ["+r.id+"] "+format.formatError(r.value))}}function unreport(r){var i=reported.indexOf(r);if(i>=0){reported.splice(i,1);logInfo("Handled previous rejection ["+r.id+"] "+format.formatObject(r.value))}}function enqueue(f,x){tasks.push(f,x);if(running===null){running=setTimer(flush,0)}}function flush(){running=null;while(tasks.length>0){tasks.shift()(tasks.shift())}}return Promise};function throwit(e){throw e}function noop(){}})})(typeof define==="function"&&define.amd?define:function(factory){module.exports=factory(require)})},{"../env":67,"../format":68}],67:[function(require,module,exports){(function(process){(function(define){"use strict";define(function(require){var MutationObs;var capturedSetTimeout=typeof setTimeout!=="undefined"&&setTimeout;var setTimer=function(f,ms){return setTimeout(f,ms)};var clearTimer=function(t){return clearTimeout(t)};var asap=function(f){return capturedSetTimeout(f,0)};if(isNode()){asap=function(f){return process.nextTick(f)}}else if(MutationObs=hasMutationObserver()){asap=initMutationObserver(MutationObs)}else if(!capturedSetTimeout){var vertxRequire=require;var vertx=vertxRequire("vertx");setTimer=function(f,ms){return vertx.setTimer(ms,f)};clearTimer=vertx.cancelTimer;asap=vertx.runOnLoop||vertx.runOnContext}return{setTimer:setTimer,clearTimer:clearTimer,asap:asap};function isNode(){return typeof process!=="undefined"&&Object.prototype.toString.call(process)==="[object process]"}function hasMutationObserver(){return typeof MutationObserver==="function"&&MutationObserver||typeof WebKitMutationObserver==="function"&&WebKitMutationObserver}function initMutationObserver(MutationObserver){var scheduled;var node=document.createTextNode("");var o=new MutationObserver(run);o.observe(node,{characterData:true});function run(){var f=scheduled;scheduled=void 0;f()}var i=0;return function(f){scheduled=f;node.data=i^=1}}})})(typeof define==="function"&&define.amd?define:function(factory){module.exports=factory(require)})}).call(this,require("_process"))},{_process:1}],68:[function(require,module,exports){(function(define){"use strict";define(function(){return{formatError:formatError,formatObject:formatObject,tryStringify:tryStringify};function formatError(e){var s=typeof e==="object"&&e!==null&&(e.stack||e.message)?e.stack||e.message:formatObject(e);return e instanceof Error?s:s+" (WARNING: non-Error used)"}function formatObject(o){var s=String(o);if(s==="[object Object]"&&typeof JSON!=="undefined"){s=tryStringify(o,s)}return s}function tryStringify(x,defaultValue){try{return JSON.stringify(x)}catch(e){return defaultValue}}})})(typeof define==="function"&&define.amd?define:function(factory){module.exports=factory()})},{}],69:[function(require,module,exports){(function(process){(function(define){"use strict";define(function(){return function makePromise(environment){var tasks=environment.scheduler;var emitRejection=initEmitRejection();var objectCreate=Object.create||function(proto){function Child(){}Child.prototype=proto;return new Child};function Promise(resolver,handler){this._handler=resolver===Handler?handler:init(resolver)}function init(resolver){var handler=new Pending;try{resolver(promiseResolve,promiseReject,promiseNotify)}catch(e){promiseReject(e)}return handler;function promiseResolve(x){handler.resolve(x)}function promiseReject(reason){handler.reject(reason)}function promiseNotify(x){handler.notify(x)}}Promise.resolve=resolve;Promise.reject=reject;Promise.never=never;Promise._defer=defer;Promise._handler=getHandler;function resolve(x){return isPromise(x)?x:new Promise(Handler,new Async(getHandler(x)))}function reject(x){return new Promise(Handler,new Async(new Rejected(x)))}function never(){return foreverPendingPromise}function defer(){return new Promise(Handler,new Pending)}Promise.prototype.then=function(onFulfilled,onRejected,onProgress){var parent=this._handler;var state=parent.join().state();if(typeof onFulfilled!=="function"&&state>0||typeof onRejected!=="function"&&state<0){return new this.constructor(Handler,parent)}var p=this._beget();var child=p._handler;parent.chain(child,parent.receiver,onFulfilled,onRejected,onProgress);return p};Promise.prototype["catch"]=function(onRejected){return this.then(void 0,onRejected)};Promise.prototype._beget=function(){return begetFrom(this._handler,this.constructor)};function begetFrom(parent,Promise){var child=new Pending(parent.receiver,parent.join().context);return new Promise(Handler,child)}Promise.all=all;Promise.race=race;Promise._traverse=traverse;function all(promises){return traverseWith(snd,null,promises)}function traverse(f,promises){return traverseWith(tryCatch2,f,promises)}function traverseWith(tryMap,f,promises){var handler=typeof f==="function"?mapAt:settleAt;var resolver=new Pending;var pending=promises.length>>>0;var results=new Array(pending);for(var i=0,x;i<promises.length&&!resolver.resolved;++i){x=promises[i];if(x===void 0&&!(i in promises)){--pending;continue}traverseAt(promises,handler,i,x,resolver)}if(pending===0){resolver.become(new Fulfilled(results))}return new Promise(Handler,resolver);function mapAt(i,x,resolver){if(!resolver.resolved){traverseAt(promises,settleAt,i,tryMap(f,x,i),resolver)}}function settleAt(i,x,resolver){results[i]=x;if(--pending===0){resolver.become(new Fulfilled(results))}}}function traverseAt(promises,handler,i,x,resolver){if(maybeThenable(x)){var h=getHandlerMaybeThenable(x);var s=h.state();if(s===0){h.fold(handler,i,void 0,resolver)}else if(s>0){handler(i,h.value,resolver)}else{resolver.become(h);visitRemaining(promises,i+1,h)}}else{handler(i,x,resolver)}}Promise._visitRemaining=visitRemaining;function visitRemaining(promises,start,handler){for(var i=start;i<promises.length;++i){markAsHandled(getHandler(promises[i]),handler)}}function markAsHandled(h,handler){if(h===handler){return}var s=h.state();if(s===0){h.visit(h,void 0,h._unreport)}else if(s<0){h._unreport()}}function race(promises){if(typeof promises!=="object"||promises===null){return reject(new TypeError("non-iterable passed to race()"))}return promises.length===0?never():promises.length===1?resolve(promises[0]):runRace(promises)}function runRace(promises){var resolver=new Pending;var i,x,h;for(i=0;i<promises.length;++i){x=promises[i];if(x===void 0&&!(i in promises)){continue}h=getHandler(x);if(h.state()!==0){resolver.become(h);visitRemaining(promises,i+1,h);break}else{h.visit(resolver,resolver.resolve,resolver.reject)}}return new Promise(Handler,resolver)}function getHandler(x){if(isPromise(x)){return x._handler.join()}return maybeThenable(x)?getHandlerUntrusted(x):new Fulfilled(x)}function getHandlerMaybeThenable(x){return isPromise(x)?x._handler.join():getHandlerUntrusted(x)}function getHandlerUntrusted(x){try{var untrustedThen=x.then;return typeof untrustedThen==="function"?new Thenable(untrustedThen,x):new Fulfilled(x)}catch(e){return new Rejected(e)}}function Handler(){}Handler.prototype.when=Handler.prototype.become=Handler.prototype.notify=Handler.prototype.fail=Handler.prototype._unreport=Handler.prototype._report=noop;Handler.prototype._state=0;Handler.prototype.state=function(){return this._state};Handler.prototype.join=function(){var h=this;while(h.handler!==void 0){h=h.handler}return h};Handler.prototype.chain=function(to,receiver,fulfilled,rejected,progress){this.when({resolver:to,receiver:receiver,fulfilled:fulfilled,rejected:rejected,progress:progress})};Handler.prototype.visit=function(receiver,fulfilled,rejected,progress){this.chain(failIfRejected,receiver,fulfilled,rejected,progress)};Handler.prototype.fold=function(f,z,c,to){this.when(new Fold(f,z,c,to))};function FailIfRejected(){}inherit(Handler,FailIfRejected);FailIfRejected.prototype.become=function(h){h.fail()};var failIfRejected=new FailIfRejected;function Pending(receiver,inheritedContext){Promise.createContext(this,inheritedContext);this.consumers=void 0;this.receiver=receiver;this.handler=void 0;this.resolved=false}inherit(Handler,Pending);Pending.prototype._state=0;Pending.prototype.resolve=function(x){this.become(getHandler(x))};Pending.prototype.reject=function(x){if(this.resolved){return}this.become(new Rejected(x))};Pending.prototype.join=function(){if(!this.resolved){return this}var h=this;while(h.handler!==void 0){h=h.handler;if(h===this){return this.handler=cycle()}}return h};Pending.prototype.run=function(){var q=this.consumers;var handler=this.handler;this.handler=this.handler.join();this.consumers=void 0;for(var i=0;i<q.length;++i){handler.when(q[i])}};Pending.prototype.become=function(handler){if(this.resolved){return}this.resolved=true;this.handler=handler;if(this.consumers!==void 0){tasks.enqueue(this)}if(this.context!==void 0){handler._report(this.context)}};Pending.prototype.when=function(continuation){if(this.resolved){tasks.enqueue(new ContinuationTask(continuation,this.handler))}else{if(this.consumers===void 0){this.consumers=[continuation]}else{this.consumers.push(continuation)}}};Pending.prototype.notify=function(x){if(!this.resolved){tasks.enqueue(new ProgressTask(x,this))}};Pending.prototype.fail=function(context){var c=typeof context==="undefined"?this.context:context;this.resolved&&this.handler.join().fail(c)};Pending.prototype._report=function(context){this.resolved&&this.handler.join()._report(context)};Pending.prototype._unreport=function(){this.resolved&&this.handler.join()._unreport()};function Async(handler){this.handler=handler}inherit(Handler,Async);Async.prototype.when=function(continuation){tasks.enqueue(new ContinuationTask(continuation,this))};Async.prototype._report=function(context){this.join()._report(context)};Async.prototype._unreport=function(){this.join()._unreport()};function Thenable(then,thenable){Pending.call(this);tasks.enqueue(new AssimilateTask(then,thenable,this))}inherit(Pending,Thenable);function Fulfilled(x){Promise.createContext(this);this.value=x}inherit(Handler,Fulfilled);Fulfilled.prototype._state=1;Fulfilled.prototype.fold=function(f,z,c,to){runContinuation3(f,z,this,c,to)};Fulfilled.prototype.when=function(cont){runContinuation1(cont.fulfilled,this,cont.receiver,cont.resolver)};var errorId=0;function Rejected(x){Promise.createContext(this);this.id=++errorId;this.value=x;this.handled=false;this.reported=false;this._report()}inherit(Handler,Rejected);Rejected.prototype._state=-1;Rejected.prototype.fold=function(f,z,c,to){to.become(this)};Rejected.prototype.when=function(cont){if(typeof cont.rejected==="function"){this._unreport()}runContinuation1(cont.rejected,this,cont.receiver,cont.resolver)};Rejected.prototype._report=function(context){tasks.afterQueue(new ReportTask(this,context))};Rejected.prototype._unreport=function(){if(this.handled){return}this.handled=true;tasks.afterQueue(new UnreportTask(this))};Rejected.prototype.fail=function(context){this.reported=true;emitRejection("unhandledRejection",this);Promise.onFatalRejection(this,context===void 0?this.context:context)};function ReportTask(rejection,context){this.rejection=rejection;this.context=context}ReportTask.prototype.run=function(){if(!this.rejection.handled&&!this.rejection.reported){this.rejection.reported=true;emitRejection("unhandledRejection",this.rejection)||Promise.onPotentiallyUnhandledRejection(this.rejection,this.context)}};function UnreportTask(rejection){this.rejection=rejection}UnreportTask.prototype.run=function(){if(this.rejection.reported){emitRejection("rejectionHandled",this.rejection)||Promise.onPotentiallyUnhandledRejectionHandled(this.rejection)}};Promise.createContext=Promise.enterContext=Promise.exitContext=Promise.onPotentiallyUnhandledRejection=Promise.onPotentiallyUnhandledRejectionHandled=Promise.onFatalRejection=noop;var foreverPendingHandler=new Handler;var foreverPendingPromise=new Promise(Handler,foreverPendingHandler);function cycle(){return new Rejected(new TypeError("Promise cycle"))}function ContinuationTask(continuation,handler){this.continuation=continuation;this.handler=handler}ContinuationTask.prototype.run=function(){this.handler.join().when(this.continuation)};function ProgressTask(value,handler){this.handler=handler;this.value=value}ProgressTask.prototype.run=function(){var q=this.handler.consumers;if(q===void 0){return}for(var c,i=0;i<q.length;++i){c=q[i];runNotify(c.progress,this.value,this.handler,c.receiver,c.resolver)}};function AssimilateTask(then,thenable,resolver){this._then=then;this.thenable=thenable;this.resolver=resolver}AssimilateTask.prototype.run=function(){var h=this.resolver;tryAssimilate(this._then,this.thenable,_resolve,_reject,_notify);function _resolve(x){h.resolve(x)}function _reject(x){h.reject(x)}function _notify(x){h.notify(x)}};function tryAssimilate(then,thenable,resolve,reject,notify){try{then.call(thenable,resolve,reject,notify)}catch(e){reject(e)}}function Fold(f,z,c,to){this.f=f;this.z=z;this.c=c;this.to=to;this.resolver=failIfRejected;this.receiver=this}Fold.prototype.fulfilled=function(x){this.f.call(this.c,this.z,x,this.to)};Fold.prototype.rejected=function(x){this.to.reject(x)};Fold.prototype.progress=function(x){this.to.notify(x)};function isPromise(x){return x instanceof Promise}function maybeThenable(x){return(typeof x==="object"||typeof x==="function")&&x!==null}function runContinuation1(f,h,receiver,next){if(typeof f!=="function"){return next.become(h)}Promise.enterContext(h);tryCatchReject(f,h.value,receiver,next);Promise.exitContext()}function runContinuation3(f,x,h,receiver,next){if(typeof f!=="function"){return next.become(h)}Promise.enterContext(h);tryCatchReject3(f,x,h.value,receiver,next);Promise.exitContext()}function runNotify(f,x,h,receiver,next){if(typeof f!=="function"){return next.notify(x)}Promise.enterContext(h);tryCatchReturn(f,x,receiver,next);Promise.exitContext()}function tryCatch2(f,a,b){try{return f(a,b)}catch(e){return reject(e)}}function tryCatchReject(f,x,thisArg,next){try{next.become(getHandler(f.call(thisArg,x)))}catch(e){next.become(new Rejected(e))}}function tryCatchReject3(f,x,y,thisArg,next){try{f.call(thisArg,x,y,next)}catch(e){next.become(new Rejected(e))}}function tryCatchReturn(f,x,thisArg,next){try{next.notify(f.call(thisArg,x))}catch(e){next.notify(e)}}function inherit(Parent,Child){Child.prototype=objectCreate(Parent.prototype);Child.prototype.constructor=Child}function snd(x,y){return y}function noop(){}function initEmitRejection(){if(typeof process!=="undefined"&&process!==null&&typeof process.emit==="function"){return function(type,rejection){return type==="unhandledRejection"?process.emit(type,rejection.value,rejection):process.emit(type,rejection)}}else if(typeof self!=="undefined"&&typeof CustomEvent==="function"){return function(noop,self,CustomEvent){var hasCustomEvent=false;try{var ev=new CustomEvent("unhandledRejection");hasCustomEvent=ev instanceof CustomEvent}catch(e){}return!hasCustomEvent?noop:function(type,rejection){var ev=new CustomEvent(type,{detail:{reason:rejection.value,key:rejection},bubbles:false,cancelable:true});return!self.dispatchEvent(ev)}}(noop,self,CustomEvent)}return noop}return Promise}})})(typeof define==="function"&&define.amd?define:function(factory){module.exports=factory()})}).call(this,require("_process"))},{_process:1}],most:[function(require,module,exports){var Stream=require("./lib/Stream");var base=require("./lib/base");var core=require("./lib/source/core");var from=require("./lib/source/from").from;var periodic=require("./lib/source/periodic").periodic;exports.Stream=Stream;exports.of=Stream.of=core.of;exports.just=core.of;exports.empty=Stream.empty=core.empty;exports.never=core.never;exports.from=from;exports.periodic=periodic;var create=require("./lib/source/create");exports.create=create.create;var events=require("./lib/source/fromEvent");exports.fromEvent=events.fromEvent;var lift=require("./lib/combinator/lift").lift;exports.lift=lift;var observe=require("./lib/combinator/observe");exports.observe=observe.observe;exports.forEach=observe.observe;exports.drain=observe.drain;Stream.prototype.observe=Stream.prototype.forEach=function(f){return observe.observe(f,this)};Stream.prototype.drain=function(){return observe.drain(this)};var loop=require("./lib/combinator/loop").loop;exports.loop=loop;Stream.prototype.loop=function(stepper,seed){return loop(stepper,seed,this)};var accumulate=require("./lib/combinator/accumulate");exports.scan=accumulate.scan;exports.reduce=accumulate.reduce;Stream.prototype.scan=function(f,initial){return accumulate.scan(f,initial,this)};Stream.prototype.reduce=function(f,initial){return accumulate.reduce(f,initial,this)};var unfold=require("./lib/source/unfold");var iterate=require("./lib/source/iterate"); | |
var generate=require("./lib/source/generate");var build=require("./lib/combinator/build");exports.unfold=unfold.unfold;exports.iterate=iterate.iterate;exports.generate=generate.generate;exports.concat=build.cycle;exports.concat=build.concat;exports.startWith=build.cons;Stream.prototype.cycle=function(){return build.cycle(this)};Stream.prototype.concat=function(tail){return build.concat(this,tail)};Stream.prototype.startWith=function(x){return build.cons(x,this)};var transform=require("./lib/combinator/transform");var applicative=require("./lib/combinator/applicative");exports.map=transform.map;exports.constant=transform.constant;exports.tap=transform.tap;exports.ap=applicative.ap;Stream.prototype.map=function(f){return transform.map(f,this)};Stream.prototype.ap=function(xs){return applicative.ap(this,xs)};Stream.prototype.constant=function(x){return transform.constant(x,this)};Stream.prototype.tap=function(f){return transform.tap(f,this)};var transduce=require("./lib/combinator/transduce");exports.transduce=transduce.transduce;Stream.prototype.transduce=function(transducer){return transduce.transduce(transducer,this)};var flatMap=require("./lib/combinator/flatMap");exports.flatMap=exports.chain=flatMap.flatMap;exports.join=flatMap.join;Stream.prototype.flatMap=Stream.prototype.chain=function(f){return flatMap.flatMap(f,this)};Stream.prototype.join=function(){return flatMap.join(this)};var flatMapEnd=require("./lib/combinator/flatMapEnd").flatMapEnd;exports.flatMapEnd=flatMapEnd;Stream.prototype.flatMapEnd=function(f){return flatMapEnd(f,this)};var concatMap=require("./lib/combinator/concatMap").concatMap;exports.concatMap=concatMap;Stream.prototype.concatMap=function(f){return concatMap(f,this)};var merge=require("./lib/combinator/merge");exports.merge=merge.merge;Stream.prototype.merge=function(){return merge.mergeArray(base.cons(this,arguments))};var combine=require("./lib/combinator/combine");exports.combine=combine.combine;Stream.prototype.combine=function(f){return combine.combineArray(f,base.replace(this,0,arguments))};var sample=require("./lib/combinator/sample");exports.sample=sample.sample;exports.sampleWith=sample.sampleWith;Stream.prototype.sampleWith=function(sampler){return sample.sampleWith(sampler,this)};Stream.prototype.sample=function(f){return sample.sampleArray(f,this,base.tail(arguments))};var zip=require("./lib/combinator/zip");exports.zip=zip.zip;Stream.prototype.zip=function(f){return zip.zipArray(f,base.replace(this,0,arguments))};var switchLatest=require("./lib/combinator/switch").switch;exports.switch=switchLatest;exports.switchLatest=switchLatest;Stream.prototype.switch=Stream.prototype.switchLatest=function(){return switchLatest(this)};var filter=require("./lib/combinator/filter");exports.filter=filter.filter;exports.skipRepeats=exports.distinct=filter.skipRepeats;exports.skipRepeatsWith=exports.distinctBy=filter.skipRepeatsWith;Stream.prototype.filter=function(p){return filter.filter(p,this)};Stream.prototype.skipRepeats=function(){return filter.skipRepeats(this)};Stream.prototype.skipRepeatsWith=function(equals){return filter.skipRepeatsWith(equals,this)};var slice=require("./lib/combinator/slice");exports.take=slice.take;exports.skip=slice.skip;exports.slice=slice.slice;exports.takeWhile=slice.takeWhile;exports.skipWhile=slice.skipWhile;Stream.prototype.take=function(n){return slice.take(n,this)};Stream.prototype.skip=function(n){return slice.skip(n,this)};Stream.prototype.slice=function(start,end){return slice.slice(start,end,this)};Stream.prototype.takeWhile=function(p){return slice.takeWhile(p,this)};Stream.prototype.skipWhile=function(p){return slice.skipWhile(p,this)};var timeslice=require("./lib/combinator/timeslice");exports.until=exports.takeUntil=timeslice.takeUntil;exports.since=exports.skipUntil=timeslice.skipUntil;exports.during=timeslice.during;Stream.prototype.until=Stream.prototype.takeUntil=function(signal){return timeslice.takeUntil(signal,this)};Stream.prototype.since=Stream.prototype.skipUntil=function(signal){return timeslice.skipUntil(signal,this)};Stream.prototype.during=function(timeWindow){return timeslice.during(timeWindow,this)};var delay=require("./lib/combinator/delay").delay;exports.delay=delay;Stream.prototype.delay=function(delayTime){return delay(delayTime,this)};var timestamp=require("./lib/combinator/timestamp").timestamp;exports.timestamp=timestamp;Stream.prototype.timestamp=function(){return timestamp(this)};var limit=require("./lib/combinator/limit");exports.throttle=limit.throttle;exports.debounce=limit.debounce;Stream.prototype.throttle=function(period){return limit.throttle(period,this)};Stream.prototype.debounce=function(period){return limit.debounce(period,this)};var promises=require("./lib/combinator/promises");exports.fromPromise=promises.fromPromise;exports.await=promises.await;Stream.prototype.await=function(){return promises.await(this)};var errors=require("./lib/combinator/errors");exports.flatMapError=errors.flatMapError;exports.throwError=errors.throwError;Stream.prototype.flatMapError=function(f){return errors.flatMapError(f,this)};var multicast=require("./lib/combinator/multicast").multicast;exports.multicast=multicast;Stream.prototype.multicast=function(){return multicast(this)}},{"./lib/Stream":5,"./lib/base":6,"./lib/combinator/accumulate":7,"./lib/combinator/applicative":8,"./lib/combinator/build":9,"./lib/combinator/combine":10,"./lib/combinator/concatMap":11,"./lib/combinator/delay":12,"./lib/combinator/errors":13,"./lib/combinator/filter":14,"./lib/combinator/flatMap":15,"./lib/combinator/flatMapEnd":16,"./lib/combinator/lift":17,"./lib/combinator/limit":18,"./lib/combinator/loop":19,"./lib/combinator/merge":20,"./lib/combinator/multicast":22,"./lib/combinator/observe":23,"./lib/combinator/promises":24,"./lib/combinator/sample":25,"./lib/combinator/slice":26,"./lib/combinator/switch":27,"./lib/combinator/timeslice":28,"./lib/combinator/timestamp":29,"./lib/combinator/transduce":30,"./lib/combinator/transform":31,"./lib/combinator/zip":32,"./lib/source/core":54,"./lib/source/create":55,"./lib/source/from":56,"./lib/source/fromEvent":58,"./lib/source/generate":60,"./lib/source/iterate":61,"./lib/source/periodic":62,"./lib/source/unfold":63}]},{},[]);var most=require("most");var multicast=require("most").multicast;var snabbdom=require("snabbdom");console.log(multicast);var patch=snabbdom.init([require("snabbdom/modules/class"),require("snabbdom/modules/props"),require("snabbdom/modules/style")]);var h=require("snabbdom/h");var generateModal=function generateModal(event){var id=event.target.getAttribute("data-modal");return h("div#"+id+".md-modal.md-show."+id,[h("div.md-content",[h("h3","Modal Title "+id),h("div",[h("p","Some Modal Content"),h("button.md-close",{attrs:{"data-id":"test-data-id"}},"Close")])])])};var patchContainer=function(){return function(vnode){return patch(document.querySelector(".container"),h("div.container",[vnode,h("div.md-overlay")]))}};var match=function match(query){return function(event){return event.target.matches(query)}};var container=document.querySelector(".container");var toggleModal=function toggleModal(modal){modal.classList.toggle("md-show")};var overlay=most.fromEvent("click",document.body).filter(match(".md-overlay"));var close=most.fromEvent("click",document.body).filter(match(".md-close"));var modals=most.from(document.querySelectorAll(".md-trigger"));modals.chain(function(el){return most.fromEvent("click",el)}).map(generateModal).map(patchContainer(container)).drain();var closeStreams=most.merge(overlay,close);closeStreams.map(function(event){toggleModal(document.body.querySelector(".md-modal"))}).drain(); |
This file contains hidden or 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": { | |
"snabbdom": "0.2.7", | |
"most": "0.15.0" | |
} | |
} |
This file contains hidden or 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
<button class="md-trigger" data-modal="modal-1">Fade in & Scale</button> | |
<button class="md-trigger" data-modal="modal-2">Example 2</button> | |
<div class="container"></div> |
This file contains hidden or 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> | |
/* General styles for the modal */ | |
/* | |
Styles for the html/body for special modal where we want 3d effects | |
Note that we need a container wrapping all content on the page for the | |
perspective effects (not including the modals and the overlay). | |
*/ | |
.md-perspective, | |
.md-perspective body { | |
height: 100%; | |
overflow: hidden; | |
} | |
body, html { | |
width:100%; | |
height: 100%; | |
} | |
.md-perspective body { | |
background: #222; | |
-webkit-perspective: 600px; | |
-moz-perspective: 600px; | |
perspective: 600px; | |
} | |
.container { | |
min-height: 100%; | |
} | |
.md-modal { | |
position: fixed; | |
top: 50%; | |
left: 50%; | |
width: 50%; | |
max-width: 630px; | |
min-width: 320px; | |
height: auto; | |
z-index: 2000; | |
visibility: hidden; | |
-webkit-backface-visibility: hidden; | |
-moz-backface-visibility: hidden; | |
backface-visibility: hidden; | |
-webkit-transform: translateX(-50%) translateY(-50%); | |
-moz-transform: translateX(-50%) translateY(-50%); | |
-ms-transform: translateX(-50%) translateY(-50%); | |
transform: translateX(-50%) translateY(-50%); | |
} | |
.md-show { | |
visibility: visible; | |
} | |
.md-overlay { | |
position: fixed; | |
width: 100%; | |
height: 100%; | |
visibility: hidden; | |
top: 0; | |
left: 0; | |
z-index: 1000; | |
opacity: 0; | |
background: rgba(143,27,15,0.8); | |
-webkit-transition: all 0.3s; | |
-moz-transition: all 0.3s; | |
transition: all 0.3s; | |
} | |
.md-show ~ .md-overlay { | |
opacity: 1; | |
visibility: visible; | |
} | |
/* Content styles */ | |
.md-content { | |
color: #fff; | |
background: #e74c3c; | |
position: relative; | |
border-radius: 3px; | |
margin: 0 auto; | |
} | |
.md-content h3 { | |
margin: 0; | |
padding: 0.4em; | |
text-align: center; | |
font-size: 2.4em; | |
font-weight: 300; | |
opacity: 0.8; | |
background: rgba(0,0,0,0.1); | |
border-radius: 3px 3px 0 0; | |
} | |
.md-content > div { | |
padding: 15px 40px 30px; | |
margin: 0; | |
font-weight: 300; | |
font-size: 1.15em; | |
} | |
.md-content > div p { | |
margin: 0; | |
padding: 10px 0; | |
} | |
.md-content > div ul { | |
margin: 0; | |
padding: 0 0 30px 20px; | |
} | |
.md-content > div ul li { | |
padding: 5px 0; | |
} | |
.md-content button { | |
display: block; | |
margin: 0 auto; | |
font-size: 0.8em; | |
} | |
/* Individual modal styles with animations/transitions */ | |
/* Effect 1: Fade in and scale up */ | |
.md-effect-1 .md-content { | |
-webkit-transform: scale(0.7); | |
-moz-transform: scale(0.7); | |
-ms-transform: scale(0.7); | |
transform: scale(0.7); | |
opacity: 0; | |
-webkit-transition: all 0.3s; | |
-moz-transition: all 0.3s; | |
transition: all 0.3s; | |
} | |
.md-show.md-effect-1 .md-content { | |
-webkit-transform: scale(1); | |
-moz-transform: scale(1); | |
-ms-transform: scale(1); | |
transform: scale(1); | |
opacity: 1; | |
} | |
/* Effect 2: Slide from the right */ | |
.md-effect-2 .md-content { | |
-webkit-transform: translateX(20%); | |
-moz-transform: translateX(20%); | |
-ms-transform: translateX(20%); | |
transform: translateX(20%); | |
opacity: 0; | |
-webkit-transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9); | |
-moz-transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9); | |
transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9); | |
} | |
.md-show.md-effect-2 .md-content { | |
-webkit-transform: translateX(0); | |
-moz-transform: translateX(0); | |
-ms-transform: translateX(0); | |
transform: translateX(0); | |
opacity: 1; | |
} | |
/* Effect 3: Slide from the bottom */ | |
.md-effect-3 .md-content { | |
-webkit-transform: translateY(20%); | |
-moz-transform: translateY(20%); | |
-ms-transform: translateY(20%); | |
transform: translateY(20%); | |
opacity: 0; | |
-webkit-transition: all 0.3s; | |
-moz-transition: all 0.3s; | |
transition: all 0.3s; | |
} | |
.md-show.md-effect-3 .md-content { | |
-webkit-transform: translateY(0); | |
-moz-transform: translateY(0); | |
-ms-transform: translateY(0); | |
transform: translateY(0); | |
opacity: 1; | |
} | |
/* Effect 4: Newspaper */ | |
.md-effect-4 .md-content { | |
-webkit-transform: scale(0) rotate(720deg); | |
-moz-transform: scale(0) rotate(720deg); | |
-ms-transform: scale(0) rotate(720deg); | |
transform: scale(0) rotate(720deg); | |
opacity: 0; | |
} | |
.md-show.md-effect-4 ~ .md-overlay, | |
.md-effect-4 .md-content { | |
-webkit-transition: all 0.5s; | |
-moz-transition: all 0.5s; | |
transition: all 0.5s; | |
} | |
.md-show.md-effect-4 .md-content { | |
-webkit-transform: scale(1) rotate(0deg); | |
-moz-transform: scale(1) rotate(0deg); | |
-ms-transform: scale(1) rotate(0deg); | |
transform: scale(1) rotate(0deg); | |
opacity: 1; | |
} | |
/* Effect 5: fall */ | |
.md-effect-5.md-modal { | |
-webkit-perspective: 1300px; | |
-moz-perspective: 1300px; | |
perspective: 1300px; | |
} | |
.md-effect-5 .md-content { | |
-webkit-transform-style: preserve-3d; | |
-moz-transform-style: preserve-3d; | |
transform-style: preserve-3d; | |
-webkit-transform: translateZ(600px) rotateX(20deg); | |
-moz-transform: translateZ(600px) rotateX(20deg); | |
-ms-transform: translateZ(600px) rotateX(20deg); | |
transform: translateZ(600px) rotateX(20deg); | |
opacity: 0; | |
} | |
.md-show.md-effect-5 .md-content { | |
-webkit-transition: all 0.3s ease-in; | |
-moz-transition: all 0.3s ease-in; | |
transition: all 0.3s ease-in; | |
-webkit-transform: translateZ(0px) rotateX(0deg); | |
-moz-transform: translateZ(0px) rotateX(0deg); | |
-ms-transform: translateZ(0px) rotateX(0deg); | |
transform: translateZ(0px) rotateX(0deg); | |
opacity: 1; | |
} | |
/* Effect 6: side fall */ | |
.md-effect-6.md-modal { | |
-webkit-perspective: 1300px; | |
-moz-perspective: 1300px; | |
perspective: 1300px; | |
} | |
.md-effect-6 .md-content { | |
-webkit-transform-style: preserve-3d; | |
-moz-transform-style: preserve-3d; | |
transform-style: preserve-3d; | |
-webkit-transform: translate(30%) translateZ(600px) rotate(10deg); | |
-moz-transform: translate(30%) translateZ(600px) rotate(10deg); | |
-ms-transform: translate(30%) translateZ(600px) rotate(10deg); | |
transform: translate(30%) translateZ(600px) rotate(10deg); | |
opacity: 0; | |
} | |
.md-show.md-effect-6 .md-content { | |
-webkit-transition: all 0.3s ease-in; | |
-moz-transition: all 0.3s ease-in; | |
transition: all 0.3s ease-in; | |
-webkit-transform: translate(0%) translateZ(0) rotate(0deg); | |
-moz-transform: translate(0%) translateZ(0) rotate(0deg); | |
-ms-transform: translate(0%) translateZ(0) rotate(0deg); | |
transform: translate(0%) translateZ(0) rotate(0deg); | |
opacity: 1; | |
} | |
/* Effect 7: slide and stick to top */ | |
.md-effect-7{ | |
top: 0; | |
-webkit-transform: translateX(-50%); | |
-moz-transform: translateX(-50%); | |
-ms-transform: translateX(-50%); | |
transform: translateX(-50%); | |
} | |
.md-effect-7 .md-content { | |
-webkit-transform: translateY(-200%); | |
-moz-transform: translateY(-200%); | |
-ms-transform: translateY(-200%); | |
transform: translateY(-200%); | |
-webkit-transition: all .3s; | |
-moz-transition: all .3s; | |
transition: all .3s; | |
opacity: 0; | |
} | |
.md-show.md-effect-7 .md-content { | |
-webkit-transform: translateY(0%); | |
-moz-transform: translateY(0%); | |
-ms-transform: translateY(0%); | |
transform: translateY(0%); | |
border-radius: 0 0 3px 3px; | |
opacity: 1; | |
} | |
/* Effect 8: 3D flip horizontal */ | |
.md-effect-8.md-modal { | |
-webkit-perspective: 1300px; | |
-moz-perspective: 1300px; | |
perspective: 1300px; | |
} | |
.md-effect-8 .md-content { | |
-webkit-transform-style: preserve-3d; | |
-moz-transform-style: preserve-3d; | |
transform-style: preserve-3d; | |
-webkit-transform: rotateY(-70deg); | |
-moz-transform: rotateY(-70deg); | |
-ms-transform: rotateY(-70deg); | |
transform: rotateY(-70deg); | |
-webkit-transition: all 0.3s; | |
-moz-transition: all 0.3s; | |
transition: all 0.3s; | |
opacity: 0; | |
} | |
.md-show.md-effect-8 .md-content { | |
-webkit-transform: rotateY(0deg); | |
-moz-transform: rotateY(0deg); | |
-ms-transform: rotateY(0deg); | |
transform: rotateY(0deg); | |
opacity: 1; | |
} | |
/* Effect 9: 3D flip vertical */ | |
.md-effect-9.md-modal { | |
-webkit-perspective: 1300px; | |
-moz-perspective: 1300px; | |
perspective: 1300px; | |
} | |
.md-effect-9 .md-content { | |
-webkit-transform-style: preserve-3d; | |
-moz-transform-style: preserve-3d; | |
transform-style: preserve-3d; | |
-webkit-transform: rotateX(-70deg); | |
-moz-transform: rotateX(-70deg); | |
-ms-transform: rotateX(-70deg); | |
transform: rotateX(-70deg); | |
-webkit-transition: all 0.3s; | |
-moz-transition: all 0.3s; | |
transition: all 0.3s; | |
opacity: 0; | |
} | |
.md-show.md-effect-9 .md-content { | |
-webkit-transform: rotateX(0deg); | |
-moz-transform: rotateX(0deg); | |
-ms-transform: rotateX(0deg); | |
transform: rotateX(0deg); | |
opacity: 1; | |
} | |
/* Effect 10: 3D sign */ | |
.md-effect-10.md-modal { | |
-webkit-perspective: 1300px; | |
-moz-perspective: 1300px; | |
perspective: 1300px; | |
} | |
.md-effect-10 .md-content { | |
-webkit-transform-style: preserve-3d; | |
-moz-transform-style: preserve-3d; | |
transform-style: preserve-3d; | |
-webkit-transform: rotateX(-60deg); | |
-moz-transform: rotateX(-60deg); | |
-ms-transform: rotateX(-60deg); | |
transform: rotateX(-60deg); | |
-webkit-transform-origin: 50% 0; | |
-moz-transform-origin: 50% 0; | |
transform-origin: 50% 0; | |
opacity: 0; | |
-webkit-transition: all 0.3s; | |
-moz-transition: all 0.3s; | |
transition: all 0.3s; | |
} | |
.md-show.md-effect-10 .md-content { | |
-webkit-transform: rotateX(0deg); | |
-moz-transform: rotateX(0deg); | |
-ms-transform: rotateX(0deg); | |
transform: rotateX(0deg); | |
opacity: 1; | |
} | |
/* Effect 11: Super scaled */ | |
.md-effect-11 .md-content { | |
-webkit-transform: scale(2); | |
-moz-transform: scale(2); | |
-ms-transform: scale(2); | |
transform: scale(2); | |
opacity: 0; | |
-webkit-transition: all 0.3s; | |
-moz-transition: all 0.3s; | |
transition: all 0.3s; | |
} | |
.md-show.md-effect-11 .md-content { | |
-webkit-transform: scale(1); | |
-moz-transform: scale(1); | |
-ms-transform: scale(1); | |
transform: scale(1); | |
opacity: 1; | |
} | |
/* Effect 12: Just me */ | |
.md-effect-12 .md-content { | |
-webkit-transform: scale(0.8); | |
-moz-transform: scale(0.8); | |
-ms-transform: scale(0.8); | |
transform: scale(0.8); | |
opacity: 0; | |
-webkit-transition: all 0.3s; | |
-moz-transition: all 0.3s; | |
transition: all 0.3s; | |
} | |
.md-show.md-effect-12 ~ .md-overlay { | |
background: #e74c3c; | |
} | |
.md-effect-12 .md-content h3, | |
.md-effect-12 .md-content { | |
background: transparent; | |
} | |
.md-show.md-effect-12 .md-content { | |
-webkit-transform: scale(1); | |
-moz-transform: scale(1); | |
-ms-transform: scale(1); | |
transform: scale(1); | |
opacity: 1; | |
} | |
/* Effect 13: 3D slit */ | |
.md-effect-13.md-modal { | |
-webkit-perspective: 1300px; | |
-moz-perspective: 1300px; | |
perspective: 1300px; | |
} | |
.md-effect-13 .md-content { | |
-webkit-transform-style: preserve-3d; | |
-moz-transform-style: preserve-3d; | |
transform-style: preserve-3d; | |
-webkit-transform: translateZ(-3000px) rotateY(90deg); | |
-moz-transform: translateZ(-3000px) rotateY(90deg); | |
-ms-transform: translateZ(-3000px) rotateY(90deg); | |
transform: translateZ(-3000px) rotateY(90deg); | |
opacity: 0; | |
} | |
.md-show.md-effect-13 .md-content { | |
-webkit-animation: slit .7s forwards ease-out; | |
-moz-animation: slit .7s forwards ease-out; | |
animation: slit .7s forwards ease-out; | |
} | |
@-webkit-keyframes slit { | |
50% { -webkit-transform: translateZ(-250px) rotateY(89deg); opacity: .5; -webkit-animation-timing-function: ease-out;} | |
100% { -webkit-transform: translateZ(0) rotateY(0deg); opacity: 1; } | |
} | |
@-moz-keyframes slit { | |
50% { -moz-transform: translateZ(-250px) rotateY(89deg); opacity: .5; -moz-animation-timing-function: ease-out;} | |
100% { -moz-transform: translateZ(0) rotateY(0deg); opacity: 1; } | |
} | |
@keyframes slit { | |
50% { transform: translateZ(-250px) rotateY(89deg); opacity: 1; animation-timing-function: ease-in;} | |
100% { transform: translateZ(0) rotateY(0deg); opacity: 1; } | |
} | |
/* Effect 14: 3D Rotate from bottom */ | |
.md-effect-14.md-modal { | |
-webkit-perspective: 1300px; | |
-moz-perspective: 1300px; | |
perspective: 1300px; | |
} | |
.md-effect-14 .md-content { | |
-webkit-transform-style: preserve-3d; | |
-moz-transform-style: preserve-3d; | |
transform-style: preserve-3d; | |
-webkit-transform: translateY(100%) rotateX(90deg); | |
-moz-transform: translateY(100%) rotateX(90deg); | |
-ms-transform: translateY(100%) rotateX(90deg); | |
transform: translateY(100%) rotateX(90deg); | |
-webkit-transform-origin: 0 100%; | |
-moz-transform-origin: 0 100%; | |
transform-origin: 0 100%; | |
opacity: 0; | |
-webkit-transition: all 0.3s ease-out; | |
-moz-transition: all 0.3s ease-out; | |
transition: all 0.3s ease-out; | |
} | |
.md-show.md-effect-14 .md-content { | |
-webkit-transform: translateY(0%) rotateX(0deg); | |
-moz-transform: translateY(0%) rotateX(0deg); | |
-ms-transform: translateY(0%) rotateX(0deg); | |
transform: translateY(0%) rotateX(0deg); | |
opacity: 1; | |
} | |
/* Effect 15: 3D Rotate in from left */ | |
.md-effect-15.md-modal { | |
-webkit-perspective: 1300px; | |
-moz-perspective: 1300px; | |
perspective: 1300px; | |
} | |
.md-effect-15 .md-content { | |
-webkit-transform-style: preserve-3d; | |
-moz-transform-style: preserve-3d; | |
transform-style: preserve-3d; | |
-webkit-transform: translateZ(100px) translateX(-30%) rotateY(90deg); | |
-moz-transform: translateZ(100px) translateX(-30%) rotateY(90deg); | |
-ms-transform: translateZ(100px) translateX(-30%) rotateY(90deg); | |
transform: translateZ(100px) translateX(-30%) rotateY(90deg); | |
-webkit-transform-origin: 0 100%; | |
-moz-transform-origin: 0 100%; | |
transform-origin: 0 100%; | |
opacity: 0; | |
-webkit-transition: all 0.3s; | |
-moz-transition: all 0.3s; | |
transition: all 0.3s; | |
} | |
.md-show.md-effect-15 .md-content { | |
-webkit-transform: translateZ(0px) translateX(0%) rotateY(0deg); | |
-moz-transform: translateZ(0px) translateX(0%) rotateY(0deg); | |
-ms-transform: translateZ(0px) translateX(0%) rotateY(0deg); | |
transform: translateZ(0px) translateX(0%) rotateY(0deg); | |
opacity: 1; | |
} | |
/* Effect 16: Blur */ | |
.md-show.md-effect-16 ~ .md-overlay { | |
background: rgba(180,46,32,0.5); | |
} | |
.md-show.md-effect-16 ~ .container { | |
-webkit-filter: blur(3px); | |
-moz-filter: blur(3px); | |
filter: blur(3px); | |
} | |
.md-effect-16 .md-content { | |
-webkit-transform: translateY(-5%); | |
-moz-transform: translateY(-5%); | |
-ms-transform: translateY(-5%); | |
transform: translateY(-5%); | |
opacity: 0; | |
} | |
.md-show.md-effect-16 ~ .container, | |
.md-effect-16 .md-content { | |
-webkit-transition: all 0.3s; | |
-moz-transition: all 0.3s; | |
transition: all 0.3s; | |
} | |
.md-show.md-effect-16 .md-content { | |
-webkit-transform: translateY(0); | |
-moz-transform: translateY(0); | |
-ms-transform: translateY(0); | |
transform: translateY(0); | |
opacity: 1; | |
} | |
/* Effect 17: Slide in from bottom with perspective on container */ | |
.md-show.md-effect-17 ~ .container { | |
height: 100%; | |
overflow: hidden; | |
-webkit-transition: -webkit-transform 0.3s; | |
-moz-transition: -moz-transform 0.3s; | |
transition: transform 0.3s; | |
} | |
.md-show.md-effect-17 ~ .container, | |
.md-show.md-effect-17 ~ .md-overlay { | |
-webkit-transform: rotateX(-2deg); | |
-moz-transform: rotateX(-2deg); | |
-ms-transform: rotateX(-2deg); | |
transform: rotateX(-2deg); | |
-webkit-transform-origin: 50% 0%; | |
-moz-transform-origin: 50% 0%; | |
transform-origin: 50% 0%; | |
-webkit-transform-style: preserve-3d; | |
-moz-transform-style: preserve-3d; | |
transform-style: preserve-3d; | |
} | |
.md-effect-17 .md-content { | |
opacity: 0; | |
-webkit-transform: translateY(200%); | |
-moz-transform: translateY(200%); | |
-ms-transform: translateY(200%); | |
transform: translateY(200%); | |
} | |
.md-show.md-effect-17 .md-content { | |
-webkit-transform: translateY(0); | |
-moz-transform: translateY(0); | |
-ms-transform: translateY(0); | |
transform: translateY(0); | |
opacity: 1; | |
-webkit-transition: all 0.3s 0.2s; | |
-moz-transition: all 0.3s 0.2s; | |
transition: all 0.3s 0.2s; | |
} | |
/* Effect 18: Slide from right with perspective on container */ | |
.md-show.md-effect-18 ~ .container { | |
height: 100%; | |
overflow: hidden; | |
} | |
.md-show.md-effect-18 ~ .md-overlay { | |
background: rgba(143,27,15,0.8); | |
-webkit-transition: all 0.5s; | |
-moz-transition: all 0.5s; | |
transition: all 0.5s; | |
} | |
.md-show.md-effect-18 ~ .container, | |
.md-show.md-effect-18 ~ .md-overlay { | |
-webkit-transform-style: preserve-3d; | |
-webkit-transform-origin: 0% 50%; | |
-webkit-animation: rotateRightSideFirst 0.5s forwards ease-in; | |
-moz-transform-style: preserve-3d; | |
-moz-transform-origin: 0% 50%; | |
-moz-animation: rotateRightSideFirst 0.5s forwards ease-in; | |
transform-style: preserve-3d; | |
transform-origin: 0% 50%; | |
animation: rotateRightSideFirst 0.5s forwards ease-in; | |
} | |
@-webkit-keyframes rotateRightSideFirst { | |
50% { -webkit-transform: translateZ(-50px) rotateY(5deg); -webkit-animation-timing-function: ease-out; } | |
100% { -webkit-transform: translateZ(-200px); } | |
} | |
@-moz-keyframes rotateRightSideFirst { | |
50% { -moz-transform: translateZ(-50px) rotateY(5deg); -moz-animation-timing-function: ease-out; } | |
100% { -moz-transform: translateZ(-200px); } | |
} | |
@keyframes rotateRightSideFirst { | |
50% { transform: translateZ(-50px) rotateY(5deg); animation-timing-function: ease-out; } | |
100% { transform: translateZ(-200px); } | |
} | |
.md-effect-18 .md-content { | |
-webkit-transform: translateX(200%); | |
-moz-transform: translateX(200%); | |
-ms-transform: translateX(200%); | |
transform: translateX(200%); | |
opacity: 0; | |
} | |
.md-show.md-effect-18 .md-content { | |
-webkit-transform: translateX(0); | |
-moz-transform: translateX(0); | |
-ms-transform: translateX(0); | |
transform: translateX(0); | |
opacity: 1; | |
-webkit-transition: all 0.5s 0.1s; | |
-moz-transition: all 0.5s 0.1s; | |
transition: all 0.5s 0.1s; | |
} | |
/* Effect 19: Slip in from the top with perspective on container */ | |
.md-show.md-effect-19 ~ .container { | |
height: 100%; | |
overflow: hidden; | |
} | |
.md-show.md-effect-19 ~ .md-overlay { | |
-webkit-transition: all 0.5s; | |
-moz-transition: all 0.5s; | |
transition: all 0.5s; | |
} | |
.md-show.md-effect-19 ~ .container, | |
.md-show.md-effect-19 ~ .md-overlay { | |
-webkit-transform-style: preserve-3d; | |
-webkit-transform-origin: 50% 100%; | |
-webkit-animation: OpenTop 0.5s forwards ease-in; | |
-moz-transform-style: preserve-3d; | |
-moz-transform-origin: 50% 100%; | |
-moz-animation: OpenTop 0.5s forwards ease-in; | |
transform-style: preserve-3d; | |
transform-origin: 50% 100%; | |
animation: OpenTop 0.5s forwards ease-in; | |
} | |
@-webkit-keyframes OpenTop { | |
50% { | |
-webkit-transform: rotateX(10deg); | |
-webkit-animation-timing-function: ease-out; | |
} | |
} | |
@-moz-keyframes OpenTop { | |
50% { | |
-moz-transform: rotateX(10deg); | |
-moz-animation-timing-function: ease-out; | |
} | |
} | |
@keyframes OpenTop { | |
50% { | |
transform: rotateX(10deg); | |
animation-timing-function: ease-out; | |
} | |
} | |
.md-effect-19 .md-content { | |
-webkit-transform: translateY(-200%); | |
-moz-transform: translateY(-200%); | |
-ms-transform: translateY(-200%); | |
transform: translateY(-200%); | |
opacity: 0; | |
} | |
.md-show.md-effect-19 .md-content { | |
-webkit-transform: translateY(0); | |
-moz-transform: translateY(0); | |
-ms-transform: translateY(0); | |
transform: translateY(0); | |
opacity: 1; | |
-webkit-transition: all 0.5s 0.1s; | |
-moz-transition: all 0.5s 0.1s; | |
transition: all 0.5s 0.1s; | |
} | |
@media screen and (max-width: 32em) { | |
body { font-size: 75%; } | |
} | |
</style> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment