git.iko.soy/purescript-stream
on 6b75d2f help sign in
40 files changed+1654−5494
since splitsnapshots
unifiedsplit
.eslintignore+1 .gitignore−2 CHANGELOG.md−28 README.md−28 bower.json+3−4 ffi/Control/Stream/LinkedList.js+47 ffi/Control/Stream/Stream.js+5 ffi/Control/Stream/combinators/drain.js+4 ffi/Control/Stream/combinators/index.js+2 ffi/Control/Stream/combinators/mergeConcurrently.js+123 ffi/Control/Stream/combinators/tap.js+50 ffi/Control/Stream/disposables/Disposable.js+15 ffi/Control/Stream/disposables/MemoizedDisposable.js+17 ffi/Control/Stream/disposables/SettableDisposable.js+29 ffi/Control/Stream/disposables/disposeSafely.js+3 ffi/Control/Stream/disposables/index.js+12 ffi/Control/Stream/index.js+4 ffi/Control/Stream/runEffects.js+28 ffi/Control/Stream/scheduler/ClockTimer.js+48 ffi/Control/Stream/scheduler/PropagateTask.js+30 ffi/Control/Stream/scheduler/ScheduledTask.js+14 ffi/Control/Stream/scheduler/Scheduler.js+99 ffi/Control/Stream/scheduler/Timeline.js+124 ffi/Control/Stream/scheduler/index.js+16 ffi/Control/Stream/sink/IndexSink.js+24 ffi/Control/Stream/sink/index.js+1 package.json+12−23 rollup.config.js+14 src/Control/Disposable/Disposable.js−32 src/Control/Disposable/Disposable.purs−10 src/Control/Scheduler/Scheduler.js−370 src/Control/Scheduler/Scheduler.purs−32 src/Control/Sink/Sink.purs−9 src/Control/Stream.js+688 src/Control/Stream.purs+123−52 src/Control/Stream/Stream.js−1244 src/Control/Stream/Stream.purs−340 src/Control/Time.purs−3 test/Main.purs−9 yarn.lock+118−3308
.eslintignore+1
@@ -1 +1,2 @@
11output/
2+src/
.gitignore−2
@@ -5,5 +5,3 @@
55/generated-docs/
66/.psc*
77/.psa*
8−src/Main.purs
9−.npm-debug.log*
CHANGELOG.mddeleted−28
@@ -1,28 +0,0 @@
1−<a name="0.2.0"></a>
2−# [0.2.0](https://github.com/TylorS/purescript-stream/compare/v0.1.0...v0.2.0) (2017-03-21)
3−
4−
5−### Bug Fixes
6−
7−* **Stream:** add missing filter import ([d4e1c8e](https://github.com/TylorS/purescript-stream/commit/d4e1c8e))
8−
9−
10−
11−<a name="0.1.0"></a>
12−# [0.1.0](https://github.com/TylorS/purescript-stream/compare/6b75d2f...v0.1.0) (2017-03-16)
13−
14−
15−### Bug Fixes
16−
17−* **Stream:** add missing exports ([13c18b7](https://github.com/TylorS/purescript-stream/commit/13c18b7))
18−
19−
20−### Features
21−
22−* **stream:** implement more helpers and combinators ([8e8b516](https://github.com/TylorS/purescript-stream/commit/8e8b516))
23−* **stream:** more combinators ([a50a246](https://github.com/TylorS/purescript-stream/commit/a50a246))
24−* **stream:** reimplement ([0813a54](https://github.com/TylorS/purescript-stream/commit/0813a54))
25−* **stream:** start of a stream library ([6b75d2f](https://github.com/TylorS/purescript-stream/commit/6b75d2f))
26−
27−
28−
README.mddeleted−28
@@ -1,28 +0,0 @@
1−# Purescript Stream
2−
3−> An ultra-fast reactive stream library for purescript
4−
5−## Let me have it
6−```sh
7−bower install --save purescript-stream
8−```
9−
10−## Basic usage
11−```purescript
12−module Main where
13−
14−import Prelude
15−import Control.Monad.Eff (Eff)
16−import Control.Monad.Eff.Console (CONSOLE, logShow, log)
17−import Control.Stream (STREAM, periodic, constant, scan, tapEvent, tapEnd, drain)
18−import Data.Unit (Unit)
19−
20−main :: Eff (stream :: STREAM, console :: CONSOLE) Unit
21−main = do
22− periodic 1000.0 -- Stream Unit
23− # constant 1 -- Stream Int
24− # scan (+) 0 -- Stream Int
25− # tapEvent logShow -- Perform side-effects on events
26− # tapEnd (log "done") -- Perform a side-effect on stream completion
27− # drain -- activate your stream
28−```
bower.json+3−4
@@ -1,5 +1,5 @@
11{
2− "name": "purescript-stream",
2+ "name": "tempest",
33 "ignore": [
44 "**/.*",
55 "node_modules",
@@ -9,9 +9,8 @@
99 "dependencies": {
1010 "purescript-eff": "^2.0.0",
1111 "purescript-prelude": "^2.5.0",
12− "purescript-refs": "^2.0.0",
13− "purescript-maybe": "^2.1.1",
14− "purescript-partial": "^1.2.0"
12+ "purescript-aff-promise": "^0.4.0",
13+ "purescript-aff": "^2.0.3"
1514 },
1615 "devDependencies": {
1716 "purescript-console": "^2.0.0",
ffi/Control/Stream/LinkedList.jsnew file+47
@@ -0,0 +1,47 @@
1+export class LinkedList {
2+ constructor () {
3+ this.head = null
4+ this.length = 0
5+ }
6+
7+ add (x) {
8+ if (this.head !== null) {
9+ this.head.prev = x
10+ x.next = this.head
11+ }
12+ this.head = x
13+ ++this.length
14+ }
15+
16+ remove (x) { // eslint-disable-line complexity
17+ --this.length
18+ if (x === this.head) {
19+ this.head = this.head.next
20+ }
21+ if (x.next !== null) {
22+ x.next.prev = x.prev
23+ x.next = null
24+ }
25+ if (x.prev !== null) {
26+ x.prev.next = x.next
27+ x.prev = null
28+ }
29+ }
30+
31+ isEmpty () {
32+ return this.length === 0
33+ }
34+
35+ dispose () {
36+ if (this.isEmpty()) return
37+
38+ var x = this.head
39+ this.head = null
40+ this.length = 0
41+
42+ while (x !== null) {
43+ x.dispose()
44+ x = x.next
45+ }
46+ }
47+}
ffi/Control/Stream/Stream.jsnew file+5
@@ -0,0 +1,5 @@
1+export class Stream {
2+ constructor (source) {
3+ this.source = source
4+ }
5+}
ffi/Control/Stream/combinators/drain.jsnew file+4
@@ -0,0 +1,4 @@
1+import { defaultScheduler } from '../scheduler'
2+import { runEffects } from '../runEffects'
3+
4+export const drain = stream => () => runEffects(stream, defaultScheduler)
ffi/Control/Stream/combinators/index.jsnew file+2
@@ -0,0 +1,2 @@
1+export * from './tap'
2+export * from './drain'
ffi/Control/Stream/combinators/mergeConcurrently.jsnew file+123
@@ -0,0 +1,123 @@
1+/** @license MIT License (c) copyright 2010-2016 original author or authors */
2+/** @author Brian Cavalier */
3+/** @author John Hann */
4+
5+import { LinkedList } from '../LinkedList'
6+import { MemoizedDisosable } from '../disposables/MemoizedDisposable'
7+import { id as identity } from '@most/prelude'
8+
9+export const mergeConcurrently = (concurrency, stream) =>
10+ mergeMapConcurrently(identity, concurrency, stream)
11+
12+export const mergeMapConcurrently = (f, concurrency, stream) =>
13+ new MergeConcurrently(f, concurrency, stream)
14+
15+class MergeConcurrently {
16+ constructor (f, concurrency, source) {
17+ this.f = f
18+ this.concurrency = concurrency
19+ this.source = source
20+ }
21+
22+ run (sink, scheduler) {
23+ return new Outer(this.f, this.concurrency, this.source, sink, scheduler)
24+ }
25+}
26+
27+class Outer {
28+ constructor (f, concurrency, source, sink, scheduler) {
29+ this.f = f
30+ this.concurrency = concurrency
31+ this.sink = sink
32+ this.scheduler = scheduler
33+ this.pending = []
34+ this.current = new LinkedList()
35+ this.disposable = new MemoizedDisosable(source.run(this, scheduler))
36+ this.active = true
37+ }
38+
39+ event (t, x) {
40+ this._addInner(t, x)
41+ }
42+
43+ _addInner (t, x) {
44+ if (this.current.length < this.concurrency) {
45+ this._startInner(t, x)
46+ } else {
47+ this.pending.push(x)
48+ }
49+ }
50+
51+ _startInner (t, x) {
52+ try {
53+ this._initInner(t, x)
54+ } catch (e) {
55+ this.error(t, e)
56+ }
57+ }
58+
59+ _initInner (t, x) {
60+ const innerSink = new Inner(t, this, this.sink)
61+ innerSink.disposable = mapAndRun(this.f, x, innerSink, this.scheduler)
62+ this.current.add(innerSink)
63+ }
64+
65+ end (t, x) {
66+ this.active = false
67+ this.disposable.dispose()
68+ this._checkEnd(t, x)
69+ }
70+
71+ dispose () {
72+ this.active = false
73+ this.pending.length = 0
74+ this.disposable.dispose()
75+ this.current.dispose()
76+ }
77+
78+ _endInner (t, x, inner) {
79+ this.current.remove(inner)
80+ inner.dispose()
81+
82+ if (this.pending.length === 0) {
83+ this._checkEnd(t, x)
84+ } else {
85+ this._startInner(t, this.pending.shift())
86+ }
87+ }
88+
89+ _checkEnd (t, x) {
90+ if (!this.active && this.current.isEmpty()) {
91+ this.sink.end(t, x)
92+ }
93+ }
94+}
95+
96+const mapAndRun = (f, x, sink, scheduler) =>
97+ f(x).run(sink, scheduler)
98+
99+class Inner {
100+ constructor (time, outer, sink) {
101+ this.prev = this.next = null
102+ this.time = time
103+ this.outer = outer
104+ this.sink = sink
105+ this.disposable = void 0
106+ }
107+
108+ event (t, x) {
109+ this.sink.event(Math.max(t, this.time), x)
110+ }
111+
112+ end (t, x) {
113+ this.outer._endInner(Math.max(t, this.time), x, this)
114+ }
115+
116+ error (t, e) {
117+ this.outer.error(Math.max(t, this.time), e)
118+ }
119+
120+ dispose () {
121+ return this.disposable.dispose()
122+ }
123+}
ffi/Control/Stream/combinators/tap.jsnew file+50
@@ -0,0 +1,50 @@
1+import { Stream } from '../Stream'
2+import { curry2 } from '@most/prelude'
3+
4+export const tapEnd = curry2((f, stream) => new Stream(new TapEnd(f, stream.source)))
5+
6+export const tapEvent = curry2((f, stream) => new Stream(new TapEvent(f, stream.source)))
7+
8+class TapEvent {
9+ constructor (f, source) {
10+ this.source = source
11+ this.f = f
12+
13+ this.run = sink => scheduler =>
14+ source.run(new TapSink(f, sink))(scheduler)
15+ }
16+}
17+
18+class TapSink {
19+ constructor (f, sink) {
20+ this.event = t => x => {
21+ f(x)()
22+ sink.event(t)(x)
23+ }
24+
25+ this.end = t => {
26+ sink.end(t)
27+ }
28+ }
29+}
30+
31+class TapEnd {
32+ constructor (f, source) {
33+ this.source = source
34+ this.f = f
35+
36+ this.run = sink => scheduler =>
37+ source.run(new TapEndSink(f, sink))(scheduler)
38+ }
39+}
40+
41+class TapEndSink {
42+ constructor (f, sink) {
43+ this.event = t => x => sink.event(t)(x)
44+
45+ this.end = t => {
46+ f()
47+ sink.end(t)
48+ }
49+ }
50+}
ffi/Control/Stream/disposables/Disposable.jsnew file+15
@@ -0,0 +1,15 @@
1+export class Disposable {
2+ /**
3+ * Create a new Disposable which will dispose its underlying resource.
4+ * @param {function} dispose function
5+ * @param {*?} data any data to be passed to disposer function
6+ */
7+ constructor (dispose, data) {
8+ this._dispose = dispose
9+ this._data = data
10+ }
11+
12+ dispose () {
13+ return this._dispose(this._data)
14+ }
15+}
ffi/Control/Stream/disposables/MemoizedDisposable.jsnew file+17
@@ -0,0 +1,17 @@
1+export class MemoizedDisposable {
2+ constructor (disposable) {
3+ this.disposed = false
4+ this.value = undefined
5+ this.disposable = disposable
6+ }
7+
8+ dispose () {
9+ if (!this.disposed) {
10+ this.disposed = true
11+ this.value = disposeSafely(this.disposable)
12+ this.disposable = undefined
13+ }
14+
15+ return this.value
16+ }
17+}
ffi/Control/Stream/disposables/SettableDisposable.jsnew file+29
@@ -0,0 +1,29 @@
1+export class SettableDisposable {
2+ constructor () {
3+ this.disposable = void 0
4+ this.disposed = false
5+ this.result = void 0
6+ }
7+
8+ setDisposable (disposable) {
9+ this.disposable = disposable
10+
11+ if (this.disposed) {
12+ this.result = disposable.dispose()
13+ }
14+ }
15+
16+ dispose () {
17+ if (this.disposed) {
18+ return this.result
19+ }
20+
21+ this.disposed = true
22+
23+ if (this.disposable !== void 0) {
24+ this.result = this.disposable.dispose()
25+ }
26+
27+ return this.result
28+ }
29+}
ffi/Control/Stream/disposables/disposeSafely.jsnew file+3
@@ -0,0 +1,3 @@
1+export function disposeSafely (disposable) {
2+ disposable.dispose()
3+}
ffi/Control/Stream/disposables/index.jsnew file+12
@@ -0,0 +1,12 @@
1+import { curry2, id, map } from '@most/prelude'
2+
3+import { Disposable } from './Disposable'
4+import { MemoizedDisposable } from './MemoizedDisposable'
5+import { disposeSafely } from './disposeSafely'
6+
7+export const createDisposable = curry2((dispose, data) => new MemoizedDisposable(new Disposable(dispose, data)))
8+
9+export const emptyDisposable = new Disposable(id, undefined)
10+
11+export const disposeAll = disposables =>
12+ createDisposable(map(disposeSafely, disposables), disposables)
ffi/Control/Stream/index.jsnew file+4
@@ -0,0 +1,4 @@
1+/* @flow */
2+export * from './disposables'
3+export * from './scheduler'
4+export * from './combinators'
ffi/Control/Stream/runEffects.jsnew file+28
@@ -0,0 +1,28 @@
1+import { SettableDisposable } from './disposables/SettableDisposable'
2+
3+export function runEffects (stream, scheduler) {
4+ return runSourceEffects(stream.source, scheduler)
5+}
6+
7+const runSourceEffects = (source, scheduler) => runSource(source, scheduler)
8+
9+function runSource (source, scheduler) {
10+ const disposable = new SettableDisposable()
11+ const observer = new RunEffectsSink(disposable)
12+
13+ disposable.setDisposable(source.run(observer)(scheduler))
14+}
15+
16+var RunEffectsSink = function RunEffectsSink (disposable) {
17+ this._disposable = disposable
18+ this.active = true
19+}
20+
21+RunEffectsSink.prototype.event = function event (t) {
22+ return function (x) {}
23+}
24+
25+RunEffectsSink.prototype.end = function end (t) {
26+ this.active = false
27+ Promise.resolve(this._disposable).then(d => d.dispose())
28+}
ffi/Control/Stream/scheduler/ClockTimer.jsnew file+48
@@ -0,0 +1,48 @@
1+/** @license MIT License (c) copyright 2010-2016 original author or authors */
2+/** @author Brian Cavalier */
3+/** @author John Hann */
4+
5+/*global setTimeout, clearTimeout*/
6+
7+export function defer (task) {
8+ return Promise.resolve(task).then(runTask)
9+}
10+
11+export function runTask (task) {
12+ return task.run()
13+}
14+
15+export class ClockTimer {
16+ constructor () {
17+ this.now = Date.now
18+ }
19+
20+ setTimer (f, dt) {
21+ return dt <= 0 ? runAsap(f) : setTimeout(f, dt)
22+ }
23+
24+ clearTimer (t) {
25+ return t instanceof Asap ? t.cancel() : clearTimeout(t)
26+ }
27+}
28+
29+class Asap {
30+ constructor (f) {
31+ this.f = f
32+ this.active = true
33+ }
34+
35+ run () {
36+ return this.active && this.f()
37+ }
38+
39+ cancel () {
40+ this.active = false
41+ }
42+}
43+
44+function runAsap (f) {
45+ const task = new Asap(f)
46+ defer(task)
47+ return task
48+}
ffi/Control/Stream/scheduler/PropagateTask.jsnew file+30
@@ -0,0 +1,30 @@
1+import { curry2, curry3 } from '@most/prelude'
2+
3+const propagateTask =
4+ curry3((run, value, sink) => new PropagateTask(run, value, sink))
5+
6+export const eventTask =
7+ curry2((value, sink) => propagateTask(runEvent, value, sink))
8+
9+export const endTask = sink => propagateTask(runEnd, void 0, sink)
10+
11+class PropagateTask {
12+ constructor (run, value, sink) {
13+ let active = true
14+
15+ this.dispose = () => { active = false }
16+ this.run = t => {
17+ if (!active) return
18+
19+ run(t, value, sink)
20+ }
21+ }
22+}
23+
24+function runEvent (time, value, sink) {
25+ sink.event(time)(value)
26+}
27+
28+function runEnd (time, value, sink) {
29+ sink.end(time, value)
30+}
ffi/Control/Stream/scheduler/ScheduledTask.jsnew file+14
@@ -0,0 +1,14 @@
1+/* @flow */
2+export function ScheduledTask (delay, period, task, scheduler) {
3+ this.time = delay
4+ this.period = period
5+ this.task = task
6+ this.scheduler = scheduler
7+ this.active = true
8+
9+ this.run = () => task.run(this.time)
10+ this.dispose = () => {
11+ scheduler.cancel(this)
12+ task.dispose()
13+ }
14+}
ffi/Control/Stream/scheduler/Scheduler.jsnew file+99
@@ -0,0 +1,99 @@
1+/* @flow */
2+import { ScheduledTask } from './ScheduledTask'
3+
4+function runTask (task) {
5+ try {
6+ return task.run()
7+ } catch (e) {
8+ console.error(e)
9+ }
10+}
11+
12+export class Scheduler {
13+ constructor (timer, timeline) {
14+ this.timer = timer
15+ this.timeline = timeline
16+
17+ this._timer = null
18+ this._nextArrival = Infinity
19+
20+ this._runReadyTasksBound = () => this._runReadyTasks(this.now())
21+ }
22+
23+ now () {
24+ return this.timer.now()
25+ }
26+
27+ asap (task) {
28+ return this.schedule(0, -1, task)
29+ }
30+
31+ delay (delay, task) {
32+ return this.schedule(delay, -1, task)
33+ }
34+
35+ periodic (period, task) {
36+ return this.schedule(0, period, task)
37+ }
38+
39+ schedule (delay, period, task) {
40+ const now = this.now()
41+ const st = new ScheduledTask(now + Math.max(0, delay), period, task, this)
42+
43+ this.timeline.add(st)
44+ this._scheduleNextRun(now)
45+ return st
46+ }
47+
48+ cancel (task) {
49+ task.active = false
50+ if (this.timeline.remove(task)) {
51+ this._reschedule()
52+ }
53+ }
54+
55+ cancelAll (f) {
56+ this.timeline.removeAll(f)
57+ this._reschedule()
58+ }
59+
60+ _reschedule () {
61+ if (this.timeline.isEmpty()) {
62+ this._unschedule()
63+ } else {
64+ this._scheduleNextRun(this.now())
65+ }
66+ }
67+
68+ _unschedule () {
69+ this.timer.clearTimer(this._timer)
70+ this._timer = null
71+ }
72+
73+ _scheduleNextRun (now) { // eslint-disable-line complexity
74+ if (this.timeline.isEmpty()) {
75+ return
76+ }
77+
78+ const nextArrival = this.timeline.nextArrival()
79+
80+ if (this._timer === null) {
81+ this._scheduleNextArrival(nextArrival, now)
82+ } else if (nextArrival < this._nextArrival) {
83+ this._unschedule()
84+ this._scheduleNextArrival(nextArrival, now)
85+ }
86+ }
87+
88+ _scheduleNextArrival (nextArrival, now) {
89+ this._nextArrival = nextArrival
90+ const delay = Math.max(0, nextArrival - now)
91+ this._timer = this.timer.setTimer(this._runReadyTasksBound, delay)
92+ }
93+
94+ _runReadyTasks (now) {
95+ this._timer = null
96+ this.timeline.runTasks(now, runTask)
97+ this._scheduleNextRun(this.now())
98+ }
99+}
ffi/Control/Stream/scheduler/Timeline.jsnew file+124
@@ -0,0 +1,124 @@
1+/** @license MIT License (c) copyright 2010-2016 original author or authors */
2+/** @author Brian Cavalier */
3+/** @author John Hann */
4+
5+import * as base from '@most/prelude'
6+
7+export class Timeline {
8+ constructor () {
9+ this.tasks = []
10+ }
11+
12+ nextArrival () {
13+ return this.isEmpty() ? Infinity : this.tasks[0].time
14+ }
15+
16+ isEmpty () {
17+ return this.tasks.length === 0
18+ }
19+
20+ add (st) {
21+ insertByTime(st, this.tasks)
22+ }
23+
24+ remove (st) {
25+ const i = binarySearch(st.time, this.tasks)
26+
27+ if (i >= 0 && i < this.tasks.length) {
28+ const at = base.findIndex(st, this.tasks[i].events)
29+ if (at >= 0) {
30+ this.tasks[i].events.splice(at, 1)
31+ return true
32+ }
33+ }
34+
35+ return false
36+ }
37+
38+ removeAll (f) {
39+ for (let i = 0; i < this.tasks.length; ++i) {
40+ removeAllFrom(f, this.tasks[i])
41+ }
42+ }
43+
44+ runTasks (t, runTask) {
45+ const tasks = this.tasks
46+ const l = tasks.length
47+ let i = 0
48+
49+ while (i < l && tasks[i].time <= t) {
50+ ++i
51+ }
52+
53+ this.tasks = tasks.slice(i)
54+
55+ // Run all ready tasks
56+ for (let j = 0; j < i; ++j) {
57+ this.tasks = runReadyTasks(runTask, tasks[j].events, this.tasks)
58+ }
59+ }
60+}
61+
62+function runReadyTasks (runTask, events, tasks) { // eslint-disable-line complexity
63+ for (let i = 0; i < events.length; ++i) {
64+ const task = events[i]
65+
66+ if (task.active) {
67+ runTask(task)
68+
69+ // Reschedule periodic repeating tasks
70+ // Check active again, since a task may have canceled itself
71+ if (task.period >= 0 && task.active) {
72+ task.time = task.time + task.period
73+ insertByTime(task, tasks)
74+ }
75+ }
76+ }
77+
78+ return tasks
79+}
80+
81+function insertByTime (task, timeslots) { // eslint-disable-line complexity
82+ const l = timeslots.length
83+
84+ if (l === 0) {
85+ timeslots.push(newTimeslot(task.time, [task]))
86+ return
87+ }
88+
89+ const i = binarySearch(task.time, timeslots)
90+
91+ if (i >= l) {
92+ timeslots.push(newTimeslot(task.time, [task]))
93+ } else if (task.time === timeslots[i].time) {
94+ timeslots[i].events.push(task)
95+ } else {
96+ timeslots.splice(i, 0, newTimeslot(task.time, [task]))
97+ }
98+}
99+
100+function removeAllFrom (f, timeslot) {
101+ timeslot.events = base.removeAll(f, timeslot.events)
102+}
103+
104+function binarySearch (t, sortedArray) { // eslint-disable-line complexity
105+ let lo = 0
106+ let hi = sortedArray.length
107+ let mid, y
108+
109+ while (lo < hi) {
110+ mid = Math.floor((lo + hi) / 2)
111+ y = sortedArray[mid]
112+
113+ if (t === y.time) {
114+ return mid
115+ } else if (t < y.time) {
116+ hi = mid
117+ } else {
118+ lo = mid + 1
119+ }
120+ }
121+ return hi
122+}
123+
124+const newTimeslot = (t, events) => ({ time: t, events: events })
ffi/Control/Stream/scheduler/index.jsnew file+16
@@ -0,0 +1,16 @@
1+import { ClockTimer } from './ClockTimer'
2+import { Scheduler } from './Scheduler'
3+import { Timeline } from './Timeline'
4+import { curry2 } from '@most/prelude'
5+
6+export { endTask, eventTask } from './PropagateTask'
7+
8+export const defaultScheduler = new Scheduler(new ClockTimer(), new Timeline())
9+
10+export const scheduleTasks = curry2((tasks, scheduler) => {
11+ const scheduledTasks = tasks.map(task => scheduler.asap(task))
12+
13+ return {
14+ dispose: () => scheduledTasks.forEach(task => task.dispose())
15+ }
16+})
ffi/Control/Stream/sink/IndexSink.jsnew file+24
@@ -0,0 +1,24 @@
1+export class IndexSink {
2+ constructor (i, sink) {
3+ this.sink = sink
4+ this.index = i
5+ this.active = true
6+ this.value = void 0
7+ }
8+
9+ event (t) {
10+ return x => {
11+ if (!this.active) return
12+
13+ this.value = x
14+ this.sink.event(t)(this)
15+ }
16+ }
17+
18+ end (t, x) {
19+ if (!this.active) return
20+
21+ this.active = false
22+ this.sink.end(t, { index: this.index, value: x })
23+ }
24+}
ffi/Control/Stream/sink/index.jsnew file+1
@@ -0,0 +1 @@
1+export * from './IndexSink'
package.json+12−23
@@ -1,38 +1,27 @@
11{
2− "name": "purescript-stream",
3− "version": "0.2.0",
2+ "name": "purescript-tempest",
3+ "version": "0.0.0",
44 "description": "",
55 "main": "index.js",
66 "scripts": {
7− "start": "yarn build && pulp run",
8− "build": "pulp build",
9− "changelog": "conventional-changelog -i CHANGELOG.md -s -r 0 -p angular",
10− "clean": "rimraf lib lib.es2015",
11− "commit": "git-cz",
12− "commitmsg": "validate-commit-msg",
13− "postchangelog": "git add CHANGELOG.md && git commit -m 'docs(CHANGELOG): amend changelog'",
14− "postversion": "npm run changelog && git push origin master --tags",
15− "preversion": "yarn test && yarn build && yarn login",
16− "release:major": "npm version major -m 'chore(package): v%s'",
17− "release:minor": "npm version minor -m 'chore(package): v%s'",
18− "test": "pulp test"
7+ "test": "echo \"Error: no test specified\" && exit 1",
8+ "build": "rollup -c && pulp build"
199 },
2010 "author": "Tylor Steinberger",
2111 "license": "MIT",
2212 "devDependencies": {
2313 "@most/eslint-config-most": "^1.0.3",
24− "bower": "^1.8.0",
25− "commitizen": "^2.9.6",
26− "conventional-changelog-cli": "^1.3.1",
27− "cz-conventional-changelog": "^2.0.0",
2814 "eslint": "^3.17.1",
2915 "eslint-config-standard": "^7.0.1",
3016 "eslint-plugin-promise": "^3.5.0",
3117 "eslint-plugin-standard": "^2.1.1",
32− "husky": "^0.13.2",
33− "pulp": "^10.0.4",
34− "purescript": "^0.10.7",
35− "uglify-js": "^2.8.11",
36− "validate-commit-msg": "^2.11.2"
18+ "rollup": "^0.41.4",
19+ "rollup-plugin-buble": "^0.15.0",
20+ "rollup-plugin-flow": "^1.1.1",
21+ "rollup-plugin-node-resolve": "^2.0.0",
22+ "uglify-js": "^2.8.11"
23+ },
24+ "dependencies": {
25+ "@most/prelude": "^1.5.0"
3726 }
3827}
rollup.config.jsnew file+14
@@ -0,0 +1,14 @@
1+import buble from 'rollup-plugin-buble'
2+import flow from 'rollup-plugin-flow'
3+import resolve from 'rollup-plugin-node-resolve'
4+
5+export default {
6+ entry: 'ffi/Control/Stream/index.js',
7+ dest: 'src/Control/Stream.js',
8+ format: 'cjs',
9+ plugins: [
10+ flow(),
11+ buble(),
12+ resolve({ module: true, jsnext: true })
13+ ]
14+}
src/Control/Disposable/Disposable.jsdeleted−32
@@ -1,32 +0,0 @@
1−exports.emptyDisposable = { dispose: function () { return {} } }
2−
3−exports.disposeAll = function (disposables) {
4− var disposed = false
5−
6− function dispose () {
7− if (disposed) return
8−
9− disposables.forEach(function (disposable) {
10− disposable.dispose()
11− })
12−
13− disposed = true
14− }
15−
16− return { dispose: dispose }
17−}
18−
19−exports.lazyDisposable = function (f) {
20− var disposed = false
21−
22− function dispose () {
23− if (disposed) return
24− var disposable = f()
25−
26− disposable.dispose()
27−
28− disposed = true
29− }
30−
31− return { dispose: dispose }
32−}
src/Control/Disposable/Disposable.pursdeleted−10
@@ -1,10 +0,0 @@
1−module Control.Stream.Disposable where
2−
3−import Control.Monad.Eff (Pure)
4−import Data.Unit (Unit)
5−
6−type Disposable = { dispose :: Pure Unit }
7−
8−foreign import emptyDisposable :: Disposable
9−foreign import disposeAll :: Array Disposable -> Disposable
10−foreign import lazyDisposable :: (Unit -> Disposable) -> Disposable
src/Control/Scheduler/Scheduler.jsdeleted−370
@@ -1,370 +0,0 @@
1−exports.scheduleTasks = function (f) {
2− return function (tasks) {
3− var scheduledTasks = tasks.map(f.bind(scheduler))
4−
5− function dispose () {
6− scheduledTasks.forEach(function (task) {
7− task.dispose()
8− })
9− }
10−
11− return { dispose: dispose }
12− }
13−}
14−
15−exports.eventTask = function (sink) {
16− return function (value) {
17− return new PropagateTask(runEvent, value, sink)
18− }
19−}
20−
21−exports.endTask = function (sink) {
22− return new PropagateTask(runEnd, void 0, sink)
23−}
24−
25−function PropagateTask (run, value, sink) {
26− this.active = true
27− this._run = run
28− this.value = value
29− this.sink = sink
30−}
31−
32−PropagateTask.prototype.dispose = function () {
33− this.active = false
34−}
35−
36−PropagateTask.prototype.run = function (time) {
37− if (!this.active) return
38−
39− this._run(time, this.value, this.sink)
40−}
41−
42−function runEvent (time, value, sink) {
43− sink.event(time)(value)
44−}
45−
46−function runEnd (time, value, sink) {
47− sink.end(time)
48−}
49−
50−function defer (task) {
51− return Promise.resolve(task).then(runTask)
52−}
53−
54−function runTask (task) {
55− return task.run()
56−}
57−
58−var ClockTimer = function ClockTimer () {
59− this.now = Date.now
60−}
61−
62−ClockTimer.prototype.setTimer = function setTimer (f, dt) {
63− return dt <= 0 ? runAsap(f) : setTimeout(f, dt)
64−}
65−
66−ClockTimer.prototype.clearTimer = function clearTimer (t) {
67− return t instanceof Asap ? t.cancel() : clearTimeout(t)
68−}
69−
70−var Asap = function Asap (f) {
71− this.f = f
72− this.active = true
73−}
74−
75−Asap.prototype.run = function run () {
76− return this.active && this.f()
77−}
78−
79−Asap.prototype.cancel = function cancel () {
80− this.active = false
81−}
82−
83−function runAsap (f) {
84− var task = new Asap(f)
85− defer(task)
86− return task
87−}
88−
89−var ScheduledTask = function ScheduledTask (delay, period, task, scheduler) {
90− this.time = delay
91− this.period = period
92− this.task = task
93− this.scheduler = scheduler
94− this.active = true
95−}
96−
97−ScheduledTask.prototype.run = function run () {
98− this.task.run(this.time)
99−}
100−
101−ScheduledTask.prototype.dispose = function dispose () {
102− this.scheduler.cancel(this)
103− this.task.dispose()
104−}
105−
106−function runTask$1 (task) {
107− try {
108− return task.run()
109− } catch (e) {
110− console.error(e)
111− }
112−}
113−
114−var Scheduler = function Scheduler (timer, timeline) {
115− var this$1 = this
116−
117− this.timer = timer
118− this.timeline = timeline
119−
120− this._timer = null
121− this._nextArrival = Infinity
122−
123− this._runReadyTasksBound = function () { return this$1._runReadyTasks(this$1.now()) }
124−}
125−
126−Scheduler.prototype.now = function now () {
127− return this.timer.now()
128−}
129−
130−Scheduler.prototype.asap = function asap (task) {
131− return this.schedule(0)(-1)(task)
132−}
133−
134−Scheduler.prototype.delay = function delay (delay$1) {
135− var this$1 = this
136−
137− return function (task) { return this$1.schedule(delay$1)(-1)(task) }
138−}
139−
140−Scheduler.prototype.periodic = function periodic (period) {
141− var this$1 = this
142−
143− return function (task) { return this$1.schedule(0)(period)(task) }
144−}
145−
146−Scheduler.prototype.schedule = function schedule (delay) {
147− var this$1 = this
148−
149− return function (period) {
150− return function (task) {
151− var now = this$1.now()
152− var st = new ScheduledTask(now + Math.max(0, delay), period, task, this$1)
153−
154− st.run = st.run.bind(st)
155− st.dispose = st.dispose.bind(st)
156−
157− this$1.timeline.add(st)
158− this$1._scheduleNextRun(now)
159− return st
160− }
161− }
162−}
163−
164−Scheduler.prototype.cancel = function cancel (task) {
165− task.active = false
166− if (this.timeline.remove(task)) {
167− this._reschedule()
168− }
169−}
170−
171−Scheduler.prototype.cancelAll = function cancelAll (f) {
172− this.timeline.removeAll(f)
173− this._reschedule()
174−}
175−
176−Scheduler.prototype._reschedule = function _reschedule () {
177− if (this.timeline.isEmpty()) {
178− this._unschedule()
179− } else {
180− this._scheduleNextRun(this.now())
181− }
182−}
183−
184−Scheduler.prototype._unschedule = function _unschedule () {
185− this.timer.clearTimer(this._timer)
186− this._timer = null
187−}
188−
189−Scheduler.prototype._scheduleNextRun = function _scheduleNextRun (now) { // eslint-disable-line complexity
190− if (this.timeline.isEmpty()) {
191− return
192− }
193−
194− var nextArrival = this.timeline.nextArrival()
195−
196− if (this._timer === null) {
197− this._scheduleNextArrival(nextArrival, now)
198− } else if (nextArrival < this._nextArrival) {
199− this._unschedule()
200− this._scheduleNextArrival(nextArrival, now)
201− }
202−}
203−
204−Scheduler.prototype._scheduleNextArrival = function _scheduleNextArrival (nextArrival, now) {
205− this._nextArrival = nextArrival
206− var delay = Math.max(0, nextArrival - now)
207− this._timer = this.timer.setTimer(this._runReadyTasksBound, delay)
208−}
209−
210−Scheduler.prototype._runReadyTasks = function _runReadyTasks (now) {
211− this._timer = null
212− this.timeline.runTasks(now, runTask$1)
213− this._scheduleNextRun(this.now())
214−}
215−
216−/** @license MIT License (c) copyright 2010-2016 original author or authors */
217−/** @author Brian Cavalier */
218−/** @author John Hann */
219−
220−var Timeline = function Timeline () {
221− this.tasks = []
222−}
223−
224−Timeline.prototype.nextArrival = function nextArrival () {
225− return this.isEmpty() ? Infinity : this.tasks[0].time
226−}
227−
228−Timeline.prototype.isEmpty = function isEmpty () {
229− return this.tasks.length === 0
230−}
231−
232−Timeline.prototype.add = function add (st) {
233− insertByTime(st, this.tasks)
234−}
235−
236−Timeline.prototype.remove = function remove$$1 (st) {
237− var i = binarySearch(st.time, this.tasks)
238−
239− if (i >= 0 && i < this.tasks.length) {
240− var at = findIndex(st, this.tasks[i].events)
241− if (at >= 0) {
242− this.tasks[i].events.splice(at, 1)
243− return true
244− }
245− }
246−
247− return false
248−}
249−
250−Timeline.prototype.removeAll = function removeAll$$1 (f) {
251− var this$1 = this
252−
253− for (var i = 0; i < this.tasks.length; ++i) {
254− removeAllFrom(f, this$1.tasks[i])
255− }
256−}
257−
258−Timeline.prototype.runTasks = function runTasks (t, runTask) {
259− var this$1 = this
260−
261− var tasks = this.tasks
262− var l = tasks.length
263− var i = 0
264−
265− while (i < l && tasks[i].time <= t) {
266− ++i
267− }
268−
269− this.tasks = tasks.slice(i)
270−
271− // Run all ready tasks
272− for (var j = 0; j < i; ++j) {
273− this$1.tasks = runReadyTasks(runTask, tasks[j].events, this$1.tasks)
274− }
275−}
276−
277−function runReadyTasks (runTask, events, tasks) { // eslint-disable-line complexity
278− for (var i = 0; i < events.length; ++i) {
279− var task = events[i]
280−
281− if (task.active) {
282− runTask(task)
283−
284− // Reschedule periodic repeating tasks
285− // Check active again, since a task may have canceled itself
286− if (task.period >= 0 && task.active) {
287− task.time = task.time + task.period
288− insertByTime(task, tasks)
289− }
290− }
291− }
292−
293− return tasks
294−}
295−
296−function insertByTime (task, timeslots) { // eslint-disable-line complexity
297− var l = timeslots.length
298−
299− if (l === 0) {
300− timeslots.push(newTimeslot(task.time, [task]))
301− return
302− }
303−
304− var i = binarySearch(task.time, timeslots)
305−
306− if (i >= l) {
307− timeslots.push(newTimeslot(task.time, [task]))
308− } else if (task.time === timeslots[i].time) {
309− timeslots[i].events.push(task)
310− } else {
311− timeslots.splice(i, 0, newTimeslot(task.time, [task]))
312− }
313−}
314−
315−function removeAllFrom (f, timeslot) {
316− timeslot.events = removeAll(f, timeslot.events)
317−}
318−
319−function binarySearch (t, sortedArray) { // eslint-disable-line complexity
320− var lo = 0
321− var hi = sortedArray.length
322− var mid, y
323−
324− while (lo < hi) {
325− mid = Math.floor((lo + hi) / 2)
326− y = sortedArray[mid]
327−
328− if (t === y.time) {
329− return mid
330− } else if (t < y.time) {
331− hi = mid
332− } else {
333− lo = mid + 1
334− }
335− }
336− return hi
337−}
338−
339−var newTimeslot = function (t, events) { return ({ time: t, events: events }) }
340−
341−function removeAll (f, a) {
342− var l = a.length
343− var b = new Array(l)
344− var j = 0
345− for (var x = (void 0), i = 0; i < l; ++i) {
346− x = a[i]
347− if (!f(x)) {
348− b[j] = x
349− ++j
350− }
351− }
352−
353− b.length = j
354− return b
355−}
356−
357−// findIndex :: a -> [a] -> Int
358−// find index of x in a, from the left
359−function findIndex (x, a) {
360− for (var i = 0, l = a.length; i < l; ++i) {
361− if (x === a[i]) {
362− return i
363− }
364− }
365− return -1
366−}
367−
368−var scheduler = new Scheduler(new ClockTimer(), new Timeline())
369−
370−exports.scheduler = scheduler
src/Control/Scheduler/Scheduler.pursdeleted−32
@@ -1,32 +0,0 @@
1−module Control.Stream.Scheduler where
2−
3−import Control.Monad.Eff (Pure)
4−import Control.Stream.Disposable (Disposable)
5−import Control.Stream.Sink (Sink)
6−import Control.Stream.Time (Time)
7−import Data.Unit (Unit)
8−
9−newtype Scheduler = Scheduler
10− { now :: Pure Time
11− , asap :: Task -> ScheduledTask
12− , delay :: Number -> Task -> ScheduledTask
13− , periodic :: Number -> Task -> ScheduledTask
14− , schedule :: Number -> Number -> Task -> ScheduledTask
15− , cancel :: ScheduledTask -> Unit
16− , cancelAll :: (ScheduledTask -> Boolean) -> Unit
17− }
18−
19−type Task =
20− { run :: Time -> Unit
21− , dispose :: Pure Unit
22− }
23−
24−type ScheduledTask =
25− { run :: Pure Unit
26− , dispose :: Pure Unit
27− }
28−
29−foreign import scheduler :: Scheduler
30−foreign import scheduleTasks :: (Task -> ScheduledTask) -> Array Task -> Disposable
31−foreign import eventTask :: forall a. Sink a -> a -> Task
32−foreign import endTask :: forall a. Sink a -> Task
src/Control/Sink/Sink.pursdeleted−9
@@ -1,9 +0,0 @@
1−module Control.Stream.Sink (Sink(..)) where
2−
3−import Control.Stream.Time (Time)
4−import Data.Unit (Unit)
5−
6−newtype Sink a = Sink
7− { event :: Time -> a -> Unit
8− , end :: Time -> Unit
9− }
src/Control/Stream.jsnew file+688
@@ -0,0 +1,688 @@
1+'use strict';
2+
3+Object.defineProperty(exports, '__esModule', { value: true });
4+
5+/** @license MIT License (c) copyright 2010-2016 original author or authors */
6+
7+// Non-mutating array operations
8+
9+// cons :: a -> [a] -> [a]
10+// a with x prepended
11+
12+
13+// append :: a -> [a] -> [a]
14+// a with x appended
15+
16+
17+// drop :: Int -> [a] -> [a]
18+// drop first n elements
19+
20+
21+// tail :: [a] -> [a]
22+// drop head element
23+
24+
25+// copy :: [a] -> [a]
26+// duplicate a (shallow duplication)
27+
28+
29+// map :: (a -> b) -> [a] -> [b]
30+// transform each element with f
31+function map (f, a) {
32+ var l = a.length;
33+ var b = new Array(l);
34+ for (var i = 0; i < l; ++i) {
35+ b[i] = f(a[i]);
36+ }
37+ return b
38+}
39+
40+// reduce :: (a -> b -> a) -> a -> [b] -> a
41+// accumulate via left-fold
42+
43+
44+// replace :: a -> Int -> [a]
45+// replace element at index
46+
47+
48+// remove :: Int -> [a] -> [a]
49+// remove element at index
50+
51+
52+// removeAll :: (a -> boolean) -> [a] -> [a]
53+// remove all elements matching a predicate
54+function removeAll (f, a) {
55+ var l = a.length;
56+ var b = new Array(l);
57+ var j = 0;
58+ for (var x = (void 0), i = 0; i < l; ++i) {
59+ x = a[i];
60+ if (!f(x)) {
61+ b[j] = x;
62+ ++j;
63+ }
64+ }
65+
66+ b.length = j;
67+ return b
68+}
69+
70+// findIndex :: a -> [a] -> Int
71+// find index of x in a, from the left
72+function findIndex (x, a) {
73+ for (var i = 0, l = a.length; i < l; ++i) {
74+ if (x === a[i]) {
75+ return i
76+ }
77+ }
78+ return -1
79+}
80+
81+// isArrayLike :: * -> boolean
82+// Return true iff x is array-like
83+
84+/** @license MIT License (c) copyright 2010-2016 original author or authors */
85+
86+// id :: a -> a
87+var id = function (x) { return x; };
88+
89+// compose :: (b -> c) -> (a -> b) -> (a -> c)
90+
91+
92+// apply :: (a -> b) -> a -> b
93+
94+
95+// curry2 :: ((a, b) -> c) -> (a -> b -> c)
96+function curry2 (f) {
97+ function curried (a, b) {
98+ switch (arguments.length) {
99+ case 0: return curried
100+ case 1: return function (b) { return f(a, b); }
101+ default: return f(a, b)
102+ }
103+ }
104+ return curried
105+}
106+
107+// curry3 :: ((a, b, c) -> d) -> (a -> b -> c -> d)
108+function curry3 (f) {
109+ function curried (a, b, c) { // eslint-disable-line complexity
110+ switch (arguments.length) {
111+ case 0: return curried
112+ case 1: return curry2(function (b, c) { return f(a, b, c); })
113+ case 2: return function (c) { return f(a, b, c); }
114+ default:return f(a, b, c)
115+ }
116+ }
117+ return curried
118+}
119+
120+// curry4 :: ((a, b, c, d) -> e) -> (a -> b -> c -> d -> e)
121+
122+/** @license MIT License (c) copyright 2016 original author or authors */
123+
124+var Disposable = function Disposable (dispose, data) {
125+ this._dispose = dispose;
126+ this._data = data;
127+};
128+
129+Disposable.prototype.dispose = function dispose () {
130+ return this._dispose(this._data)
131+};
132+
133+var MemoizedDisposable = function MemoizedDisposable (disposable) {
134+ this.disposed = false;
135+ this.value = undefined;
136+ this.disposable = disposable;
137+};
138+
139+MemoizedDisposable.prototype.dispose = function dispose () {
140+ if (!this.disposed) {
141+ this.disposed = true;
142+ this.value = disposeSafely(this.disposable);
143+ this.disposable = undefined;
144+ }
145+
146+ return this.value
147+};
148+
149+function disposeSafely$1 (disposable) {
150+ disposable.dispose();
151+}
152+
153+var createDisposable = curry2(function (dispose, data) { return new MemoizedDisposable(new Disposable(dispose, data)); });
154+
155+var emptyDisposable = new Disposable(id, undefined);
156+
157+var disposeAll = function (disposables) { return createDisposable(map(disposeSafely$1, disposables), disposables); };
158+
159+/** @license MIT License (c) copyright 2010-2016 original author or authors */
160+/** @author Brian Cavalier */
161+/** @author John Hann */
162+
163+/*global setTimeout, clearTimeout*/
164+
165+function defer (task) {
166+ return Promise.resolve(task).then(runTask)
167+}
168+
169+function runTask (task) {
170+ return task.run()
171+}
172+
173+var ClockTimer = function ClockTimer () {
174+ this.now = Date.now;
175+};
176+
177+ClockTimer.prototype.setTimer = function setTimer (f, dt) {
178+ return dt <= 0 ? runAsap(f) : setTimeout(f, dt)
179+};
180+
181+ClockTimer.prototype.clearTimer = function clearTimer (t) {
182+ return t instanceof Asap ? t.cancel() : clearTimeout(t)
183+};
184+
185+var Asap = function Asap (f) {
186+ this.f = f;
187+ this.active = true;
188+};
189+
190+Asap.prototype.run = function run () {
191+ return this.active && this.f()
192+};
193+
194+Asap.prototype.cancel = function cancel () {
195+ this.active = false;
196+};
197+
198+function runAsap (f) {
199+ var task = new Asap(f);
200+ defer(task);
201+ return task
202+}
203+
204+/* */
205+function ScheduledTask (delay, period, task, scheduler) {
206+ var this$1 = this;
207+
208+ this.time = delay;
209+ this.period = period;
210+ this.task = task;
211+ this.scheduler = scheduler;
212+ this.active = true;
213+
214+ this.run = function () { return task.run(this$1.time); };
215+ this.dispose = function () {
216+ scheduler.cancel(this$1);
217+ task.dispose();
218+ };
219+}
220+
221+/* */
222+function runTask$1 (task) {
223+ try {
224+ return task.run()
225+ } catch (e) {
226+ console.error(e);
227+ }
228+}
229+
230+var Scheduler = function Scheduler (timer, timeline) {
231+ var this$1 = this;
232+
233+ this.timer = timer;
234+ this.timeline = timeline;
235+
236+ this._timer = null;
237+ this._nextArrival = Infinity;
238+
239+ this._runReadyTasksBound = function () { return this$1._runReadyTasks(this$1.now()); };
240+};
241+
242+Scheduler.prototype.now = function now () {
243+ return this.timer.now()
244+};
245+
246+Scheduler.prototype.asap = function asap (task) {
247+ return this.schedule(0, -1, task)
248+};
249+
250+Scheduler.prototype.delay = function delay (delay$1, task) {
251+ return this.schedule(delay$1, -1, task)
252+};
253+
254+Scheduler.prototype.periodic = function periodic (period, task) {
255+ return this.schedule(0, period, task)
256+};
257+
258+Scheduler.prototype.schedule = function schedule (delay, period, task) {
259+ var now = this.now();
260+ var st = new ScheduledTask(now + Math.max(0, delay), period, task, this);
261+
262+ this.timeline.add(st);
263+ this._scheduleNextRun(now);
264+ return st
265+};
266+
267+Scheduler.prototype.cancel = function cancel (task) {
268+ task.active = false;
269+ if (this.timeline.remove(task)) {
270+ this._reschedule();
271+ }
272+};
273+
274+Scheduler.prototype.cancelAll = function cancelAll (f) {
275+ this.timeline.removeAll(f);
276+ this._reschedule();
277+};
278+
279+Scheduler.prototype._reschedule = function _reschedule () {
280+ if (this.timeline.isEmpty()) {
281+ this._unschedule();
282+ } else {
283+ this._scheduleNextRun(this.now());
284+ }
285+};
286+
287+Scheduler.prototype._unschedule = function _unschedule () {
288+ this.timer.clearTimer(this._timer);
289+ this._timer = null;
290+};
291+
292+Scheduler.prototype._scheduleNextRun = function _scheduleNextRun (now) { // eslint-disable-line complexity
293+ if (this.timeline.isEmpty()) {
294+ return
295+ }
296+
297+ var nextArrival = this.timeline.nextArrival();
298+
299+ if (this._timer === null) {
300+ this._scheduleNextArrival(nextArrival, now);
301+ } else if (nextArrival < this._nextArrival) {
302+ this._unschedule();
303+ this._scheduleNextArrival(nextArrival, now);
304+ }
305+};
306+
307+Scheduler.prototype._scheduleNextArrival = function _scheduleNextArrival (nextArrival, now) {
308+ this._nextArrival = nextArrival;
309+ var delay = Math.max(0, nextArrival - now);
310+ this._timer = this.timer.setTimer(this._runReadyTasksBound, delay);
311+};
312+
313+Scheduler.prototype._runReadyTasks = function _runReadyTasks (now) {
314+ this._timer = null;
315+ this.timeline.runTasks(now, runTask$1);
316+ this._scheduleNextRun(this.now());
317+};
318+
319+/** @license MIT License (c) copyright 2010-2016 original author or authors */
320+/** @author Brian Cavalier */
321+/** @author John Hann */
322+
323+var Timeline = function Timeline () {
324+ this.tasks = [];
325+};
326+
327+Timeline.prototype.nextArrival = function nextArrival () {
328+ return this.isEmpty() ? Infinity : this.tasks[0].time
329+};
330+
331+Timeline.prototype.isEmpty = function isEmpty () {
332+ return this.tasks.length === 0
333+};
334+
335+Timeline.prototype.add = function add (st) {
336+ insertByTime(st, this.tasks);
337+};
338+
339+Timeline.prototype.remove = function remove$$1 (st) {
340+ var i = binarySearch(st.time, this.tasks);
341+
342+ if (i >= 0 && i < this.tasks.length) {
343+ var at = findIndex(st, this.tasks[i].events);
344+ if (at >= 0) {
345+ this.tasks[i].events.splice(at, 1);
346+ return true
347+ }
348+ }
349+
350+ return false
351+};
352+
353+Timeline.prototype.removeAll = function removeAll$$1 (f) {
354+ var this$1 = this;
355+
356+ for (var i = 0; i < this.tasks.length; ++i) {
357+ removeAllFrom(f, this$1.tasks[i]);
358+ }
359+};
360+
361+Timeline.prototype.runTasks = function runTasks (t, runTask) {
362+ var this$1 = this;
363+
364+ var tasks = this.tasks;
365+ var l = tasks.length;
366+ var i = 0;
367+
368+ while (i < l && tasks[i].time <= t) {
369+ ++i;
370+ }
371+
372+ this.tasks = tasks.slice(i);
373+
374+ // Run all ready tasks
375+ for (var j = 0; j < i; ++j) {
376+ this$1.tasks = runReadyTasks(runTask, tasks[j].events, this$1.tasks);
377+ }
378+};
379+
380+function runReadyTasks (runTask, events, tasks) { // eslint-disable-line complexity
381+ for (var i = 0; i < events.length; ++i) {
382+ var task = events[i];
383+
384+ if (task.active) {
385+ runTask(task);
386+
387+ // Reschedule periodic repeating tasks
388+ // Check active again, since a task may have canceled itself
389+ if (task.period >= 0 && task.active) {
390+ task.time = task.time + task.period;
391+ insertByTime(task, tasks);
392+ }
393+ }
394+ }
395+
396+ return tasks
397+}
398+
399+function insertByTime (task, timeslots) { // eslint-disable-line complexity
400+ var l = timeslots.length;
401+
402+ if (l === 0) {
403+ timeslots.push(newTimeslot(task.time, [task]));
404+ return
405+ }
406+
407+ var i = binarySearch(task.time, timeslots);
408+
409+ if (i >= l) {
410+ timeslots.push(newTimeslot(task.time, [task]));
411+ } else if (task.time === timeslots[i].time) {
412+ timeslots[i].events.push(task);
413+ } else {
414+ timeslots.splice(i, 0, newTimeslot(task.time, [task]));
415+ }
416+}
417+
418+function removeAllFrom (f, timeslot) {
419+ timeslot.events = removeAll(f, timeslot.events);
420+}
421+
422+function binarySearch (t, sortedArray) { // eslint-disable-line complexity
423+ var lo = 0;
424+ var hi = sortedArray.length;
425+ var mid, y;
426+
427+ while (lo < hi) {
428+ mid = Math.floor((lo + hi) / 2);
429+ y = sortedArray[mid];
430+
431+ if (t === y.time) {
432+ return mid
433+ } else if (t < y.time) {
434+ hi = mid;
435+ } else {
436+ lo = mid + 1;
437+ }
438+ }
439+ return hi
440+}
441+
442+var newTimeslot = function (t, events) { return ({ time: t, events: events }); };
443+
444+var propagateTask =
445+ curry3(function (run, value, sink) { return new PropagateTask(run, value, sink); });
446+
447+var eventTask =
448+ curry2(function (value, sink) { return propagateTask(runEvent, value, sink); });
449+
450+var endTask = function (sink) { return propagateTask(runEnd, void 0, sink); };
451+
452+var PropagateTask = function PropagateTask (run, value, sink) {
453+ var active = true;
454+
455+ this.dispose = function () { active = false; };
456+ this.run = function (t) {
457+ if (!active) { return }
458+
459+ run(t, value, sink);
460+ };
461+};
462+
463+function runEvent (time, value, sink) {
464+ sink.event(time)(value);
465+}
466+
467+function runEnd (time, value, sink) {
468+ sink.end(time, value);
469+}
470+
471+var defaultScheduler = new Scheduler(new ClockTimer(), new Timeline());
472+
473+var scheduleTasks = curry2(function (tasks, scheduler) {
474+ var scheduledTasks = tasks.map(function (task) { return scheduler.asap(task); });
475+
476+ return {
477+ dispose: function () { return scheduledTasks.forEach(function (task) { return task.dispose(); }); }
478+ }
479+});
480+
481+var Stream = function Stream (source) {
482+ this.source = source;
483+};
484+
485+var tapEnd = curry2(function (f, stream) { return new Stream(new TapEnd(f, stream.source)); });
486+
487+var tapEvent = curry2(function (f, stream) { return new Stream(new TapEvent(f, stream.source)); });
488+
489+var TapEvent = function TapEvent (f, source) {
490+ this.source = source;
491+ this.f = f;
492+
493+ this.run = function (sink) { return function (scheduler) { return source.run(new TapSink(f, sink))(scheduler); }; };
494+};
495+
496+var TapSink = function TapSink (f, sink) {
497+ this.event = function (t) { return function (x) {
498+ f(x)();
499+ sink.event(t)(x);
500+ }; };
501+
502+ this.end = function (t) {
503+ sink.end(t);
504+ };
505+};
506+
507+var TapEnd = function TapEnd (f, source) {
508+ this.source = source;
509+ this.f = f;
510+
511+ this.run = function (sink) { return function (scheduler) { return source.run(new TapEndSink(f, sink))(scheduler); }; };
512+};
513+
514+var TapEndSink = function TapEndSink (f, sink) {
515+ this.event = function (t) { return function (x) { return sink.event(t)(x); }; };
516+
517+ this.end = function (t) {
518+ f();
519+ sink.end(t);
520+ };
521+};
522+
523+var SettableDisposable = function SettableDisposable () {
524+ this.disposable = void 0;
525+ this.disposed = false;
526+ this.result = void 0;
527+};
528+
529+SettableDisposable.prototype.setDisposable = function setDisposable (disposable) {
530+ this.disposable = disposable;
531+
532+ if (this.disposed) {
533+ this.result = disposable.dispose();
534+ }
535+};
536+
537+SettableDisposable.prototype.dispose = function dispose () {
538+ if (this.disposed) {
539+ return this.result
540+ }
541+
542+ this.disposed = true;
543+
544+ if (this.disposable !== void 0) {
545+ this.result = this.disposable.dispose();
546+ }
547+
548+ return this.result
549+};
550+
551+function runEffects (stream, scheduler) {
552+ return runSourceEffects(stream.source, scheduler)
553+}
554+
555+var runSourceEffects = function (source, scheduler) { return runSource(source, scheduler); };
556+
557+function runSource (source, scheduler) {
558+ var disposable = new SettableDisposable();
559+ var observer = new RunEffectsSink(disposable);
560+
561+ disposable.setDisposable(source.run(observer)(scheduler));
562+}
563+
564+var RunEffectsSink = function RunEffectsSink (disposable) {
565+ this._disposable = disposable;
566+ this.active = true;
567+};
568+
569+RunEffectsSink.prototype.event = function event (t) {
570+ return function (x) {}
571+};
572+
573+RunEffectsSink.prototype.end = function end (t) {
574+ this.active = false;
575+ Promise.resolve(this._disposable).then(function (d) { return d.dispose(); });
576+};
577+
578+var drain = function (stream) { return function () { return runEffects(stream, defaultScheduler); }; };
579+
580+var combine =
581+ curry3(function (f, stream1, stream2) { return new Stream(new Combine(f, stream1.source, stream2.source)); });
582+
583+var Combine = function Combine (f, source1, source2) {
584+ this.f = f;
585+ this.source1 = source1;
586+ this.source2 = source2;
587+};
588+
589+Combine.prototype.run = function run (sink) {
590+ var this$1 = this;
591+
592+ return function (scheduler) {
593+ var disposables = Array(2);
594+ var sinks = Array(2);
595+
596+ var mergeSink = new CombineSink(disposables, sinks, sink, this$1.f);
597+
598+ sinks[0] = new IndexSink(0, mergeSink);
599+ sinks[1] = new IndexSink(1, mergeSink);
600+ disposables[0] = this$1.source1.run(sinks[0])(scheduler);
601+ disposables[1] = this$1.source2.run(sinks[1])(scheduler);
602+
603+ return disposeAll(disposables)
604+ }
605+};
606+
607+var IndexSink = function IndexSink () {};
608+
609+IndexSink.prototype.cosntructor = function cosntructor (i, sink) {
610+ this.i = i;
611+ this.sink = sink;
612+};
613+
614+IndexSink.prototype.event = function event (t) {
615+ var this$1 = this;
616+
617+ return function (x) {
618+ this$1.sink.event(t)({ index: this$1.i, value: x });
619+ }
620+};
621+
622+IndexSink.prototype.end = function end (t) {
623+ this.sink.end(t, this.i);
624+};
625+
626+var CombineSink = function CombineSink (disposables, sinks, sink, f) {
627+ this.disposables = disposables;
628+ this.sinks = sinks;
629+ this.sink = sink;
630+ this.f = f;
631+
632+ this.awaiting = 2;
633+ this.values = Array(2);
634+ this.hasValue = [false, false];
635+ this.activeCount = 2;
636+};
637+
638+CombineSink.prototype.event = function event (t) {
639+ var this$1 = this;
640+
641+ return function (ref) {
642+ var index = ref.index;
643+ var value = ref.value;
644+
645+ var f = this$1.f;
646+ var awaiting = this$1._updateReady(index);
647+ this$1.values[index] = value;
648+
649+ if (awaiting === 0) {
650+ var result = f(this$1.values[0])(this$1.values[1]);
651+ this$1.sink.event(t)(result);
652+ }
653+ }
654+};
655+
656+CombineSink.prototype._updateReady = function _updateReady (index) {
657+ if (this.awaiting > 0) {
658+ if (!this.hasValue[index]) {
659+ this.hasValue[index] = true;
660+ this.awaiting -= 1;
661+ }
662+ }
663+
664+ return this.awaiting
665+};
666+
667+CombineSink.prototype.end = function end (t, ref) {
668+ var index = ref.index;
669+ var value = ref.value;
670+
671+ this.disposables[index].dispose();
672+
673+ if (--this.activeCount === 0) { this.sink.end(t); }
674+};
675+
676+/* */
677+
678+exports.createDisposable = createDisposable;
679+exports.emptyDisposable = emptyDisposable;
680+exports.disposeAll = disposeAll;
681+exports.defaultScheduler = defaultScheduler;
682+exports.scheduleTasks = scheduleTasks;
683+exports.endTask = endTask;
684+exports.eventTask = eventTask;
685+exports.tapEnd = tapEnd;
686+exports.tapEvent = tapEvent;
687+exports.drain = drain;
688+exports.combine = combine;
src/Control/Stream.purs+123−52
@@ -1,59 +1,130 @@
11module Control.Stream
2− ( module Control.Stream.Stream
3− , module Control.Stream.Disposable
4− , module Control.Stream.Scheduler
5− , module Control.Stream.Sink
6− , module Control.Stream.Time
7− ) where
8−
9−import Control.Stream.Stream
10− (STREAM
2+ ( STREAM
113 , EffStream
12− , Stream(..)
13− , just
14− , empty
15− , never
16− , periodic
17− , createCombinator
18− , createEventCombinator
19− , createEndCombinator
4+ , PureStream
5+ , Stream
6+ , Source
7+ , Sink
8+ , Scheduler
9+ , Task
10+ , ScheduledTask
11+ , Disposable
12+ , Time
13+ , createStream
14+ , getSource
15+ , runSource
16+ , defaultScheduler
17+ , eventTask
18+ , endTask
19+ , createDisposable
20+ , emptyDisposable
21+ , disposeAll
22+ , scheduleTasks
2023 , drain
2124 , tapEvent
2225 , tapEnd
26+ , just
2327 , fromArray
24− , filter
25− , take
26− , skip
27− , constant
28− , continueWith
29− , concat
30− , startWith
31− , scan
32− , loop
33− , chain
34− , mergeConcurrently
35− , join
36− , mergeMapConcurrently
37− , concatMap
38− , switch
39− , combine2
40− , combine3
41− , combine4
42− , combine5
43− , combineArray
44− , merge
45− , skipRepeatsWith
46− , skipRepeats
47− , until
48− , since
49− , during
50− , sample
51− , debounce
52− , throttle
53− , delay
54− , multicast
5528 )
56−import Control.Stream.Disposable (Disposable, emptyDisposable)
57−import Control.Stream.Scheduler (Scheduler(..), Task, ScheduledTask, scheduler, scheduleTasks, eventTask, endTask)
58−import Control.Stream.Sink (Sink(..))
59−import Control.Stream.Time (Time)
29+ where
30+
31+import Control.Monad.Eff (Eff, Pure)
32+import Data.Array (snoc)
33+import Data.Functor (class Functor, map)
34+import Data.Unit (Unit)
35+import Prelude (flip)
36+
37+newtype Time = Time Int
38+
39+foreign import data STREAM :: !
40+
41+type EffStream e a = Eff (stream :: STREAM | e) a
42+type PureStream a = EffStream () a
43+
44+newtype Stream a = Stream { source :: Source a }
45+
46+type Source a = { run :: Sink a -> Scheduler -> Disposable }
47+
48+type Sink a =
49+ { event :: Time -> a -> Unit
50+ , end :: Time -> Unit
51+ }
52+
53+type Scheduler =
54+ { now :: Pure Time
55+ , asap :: Task -> ScheduledTask
56+ , delay :: Number -> Task -> ScheduledTask
57+ , period :: Number -> Task -> ScheduledTask
58+ , schedule :: Number -> Number -> Task -> ScheduledTask
59+ , cancel :: ScheduledTask -> Unit
60+ , cancelAll :: (ScheduledTask -> Boolean) -> Unit
61+ }
62+
63+type Task =
64+ { run :: Time -> Unit
65+ , dispose :: Pure Unit
66+ }
67+
68+type ScheduledTask =
69+ { run :: Pure Unit
70+ , dispose :: Pure Unit
71+ }
72+
73+type Disposable = { dispose :: Pure Unit }
74+
75+instance functorStream :: Functor Stream where
76+ map = _map
77+
78+createStream :: forall a. (Sink a -> Scheduler -> Disposable) -> Stream a
79+createStream run = Stream { source: { run } }
80+
81+getSource :: forall a. Stream a -> Source a
82+getSource stream = case stream of Stream a -> a.source
83+
84+runSource :: forall a. Stream a -> Sink a -> Scheduler -> Disposable
85+runSource stream sink scheduler = (getSource stream).run sink scheduler
86+
87+just :: forall a. a -> Stream a
88+just a = createStream (runJust a)
89+
90+runJust :: forall a. a -> Sink a -> Scheduler -> Disposable
91+runJust a sink scheduler =
92+ scheduleTasks [ eventTask a sink, endTask sink ] scheduler
93+
94+-- TODO: remove fromArray because it's not a real event stream
95+-- replace with a fromArray combinator
96+fromArray :: forall a. Array a -> Stream a
97+fromArray arr = createStream (runFromArray arr)
98+
99+runFromArray :: forall a. Array a -> Sink a -> Scheduler -> Disposable
100+runFromArray arr sink scheduler = scheduleTasks tasks scheduler
101+ where
102+ tasks :: Array Task
103+ tasks = snoc eventTasks (endTask sink)
104+
105+ eventTasks :: Array Task
106+ eventTasks = map (flip eventTask sink) arr
107+
108+_map :: forall a b. (a -> b) -> Stream a -> Stream b
109+_map f stream = createStream runMap
110+ where
111+ runMap :: Sink b -> Scheduler -> Disposable
112+ runMap sink scheduler =
113+ runSource stream (mapSink f sink) scheduler
114+
115+mapSink :: forall a b. (a -> b) -> Sink b -> Sink a
116+mapSink f sink = { event: mapEvent, end: sink.end }
117+ where
118+ mapEvent :: Time -> a -> Unit
119+ mapEvent time value = sink.event time (f value)
120+
121+foreign import defaultScheduler :: Scheduler
122+foreign import eventTask :: forall a. a -> Sink a -> Task
123+foreign import endTask :: forall a. Sink a -> Task
124+foreign import createDisposable :: forall a. (a -> Unit) -> a -> Disposable
125+foreign import emptyDisposable :: Disposable
126+foreign import disposeAll :: Array Disposable -> Disposable
127+foreign import scheduleTasks :: Array Task -> Scheduler -> Disposable
128+foreign import drain :: forall e a. Stream a -> EffStream e Unit
129+foreign import tapEvent :: forall e a. (a -> EffStream e Unit) -> Stream a -> Stream a
130+foreign import tapEnd :: forall e a. EffStream e Unit -> Stream a -> Stream a
src/Control/Stream/Stream.jsdeleted−1244
@@ -1,1244 +0,0 @@
1−var ControlStreamScheduler = require('../Control.Stream.Scheduler')
2−var ControlStreamStream = require('../Control.Stream.Stream')
3−
4−exports.drain = function (stream) { return function () { return runSource(stream, ControlStreamScheduler.scheduler) } }
5−
6−exports.subscribe = function (event) {
7− return function (end) {
8− return function (stream) {
9− return function () {
10− var disposable = new SettableDisposable()
11−
12− var observer = { event: event, end: end }
13−
14− var d = stream.run(observer)(ControlStreamScheduler.scheduler)
15−
16− disposable.setDisposable(d)
17−
18− return {}
19− }
20− }
21− }
22−}
23−
24−function runSource (source, scheduler) {
25− var disposable = new SettableDisposable()
26−
27− function event (t) {
28− return function (x) {
29− return {}
30− }
31− }
32−
33− function end (t) {
34− disposable.dispose()
35− return {}
36− }
37−
38− var observer = { event: event, end: end }
39−
40− var d = source.run(observer)(scheduler)
41−
42− disposable.setDisposable(d)
43−
44− return {}
45−}
46−
47−var SettableDisposable = function SettableDisposable () {
48− this.disposable = void 0
49− this.disposed = false
50− this.result = void 0
51−}
52−
53−SettableDisposable.prototype.setDisposable = function setDisposable (disposable) {
54− this.disposable = disposable
55−
56− if (this.disposed) {
57− this.result = disposable.dispose()
58− }
59−}
60−
61−SettableDisposable.prototype.dispose = function dispose () {
62− if (this.disposed) {
63− return this.result
64− }
65−
66− this.disposed = true
67−
68− if (this.disposable !== void 0) {
69− this.result = this.disposable.dispose()
70− }
71−
72− return this.result
73−}
74−
75−exports.fromArray = function (array) {
76− return function (stream) {
77− return new FromArray(array, stream)
78− }
79−}
80−
81−function FromArray (array, stream) {
82− this.array = array
83− this.stream = stream
84−}
85−
86−FromArray.prototype.run = function (sink) {
87− var that = this
88−
89− return function (scheduler) {
90− return that.stream.run(new FromArraySink(sink, that.array))(scheduler)
91− }
92−}
93−
94−function FromArraySink (sink, array) {
95− this.sink = sink
96− this.array = array
97−}
98−
99−FromArraySink.prototype.event = function (time) {
100− var array = this.array
101− var sink = this.sink
102− return function (x) {
103− var value = array.shift()
104−
105− if (value) {
106− sink.event(time)(value)
107− } else {
108− sink.end(time)
109− }
110− }
111−}
112−
113−FromArraySink.prototype.end = function (time) {
114− this.sink.end(time)
115−}
116−
117−var LinkedList = function LinkedList () {
118− this.head = null
119− this.length = 0
120−}
121−
122−LinkedList.prototype.add = function add (x) {
123− if (this.head !== null) {
124− this.head.prev = x
125− x.next = this.head
126− }
127− this.head = x
128− ++this.length
129−}
130−
131−LinkedList.prototype.remove = function remove (x) { // eslint-disable-line complexity
132− --this.length
133− if (x === this.head) {
134− this.head = this.head.next
135− }
136− if (x.next !== null) {
137− x.next.prev = x.prev
138− x.next = null
139− }
140− if (x.prev !== null) {
141− x.prev.next = x.next
142− x.prev = null
143− }
144−}
145−
146−LinkedList.prototype.isEmpty = function isEmpty () {
147− return this.length === 0
148−}
149−
150−LinkedList.prototype.dispose = function dispose () {
151− if (this.isEmpty()) { return }
152−
153− var x = this.head
154− this.head = null
155− this.length = 0
156−
157− while (x !== null) {
158− x.dispose()
159− x = x.next
160− }
161−}
162−
163−exports.chain = function (f) {
164− return function (stream) {
165− return mergeMapConcurrently(f)(Infinity)(stream)
166− }
167−}
168−
169−exports.mergeConcurrently = mergeConcurrently
170−
171−function mergeConcurrently (concurrency) {
172− return function (stream) {
173− return mergeMapConcurrently(function (x) { return x })(concurrency)(stream)
174− }
175−}
176−
177−exports.join = mergeConcurrently(Infinity)
178−
179−exports.mergeMapConcurrently = mergeMapConcurrently
180−
181−function mergeMapConcurrently (f) {
182− return function (concurrency) {
183− return function (stream) {
184− var mstream = new MergeConcurrently(f, concurrency, stream)
185−
186− mstream.run.bind(mstream)
187−
188− return mstream
189− }
190− }
191−}
192−
193−function MergeConcurrently (f, concurrency, source) {
194− this.f = f
195− this.concurrency = concurrency
196− this.source = source
197−}
198−
199−MergeConcurrently.prototype.run = function run (sink) {
200− var this$1 = this
201−
202− return function (scheduler) { return new Outer(this$1.f, this$1.concurrency, this$1.source, sink, scheduler) }
203−}
204−
205−var Outer = function Outer (f, concurrency, source, sink, scheduler) {
206− this.f = f
207− this.concurrency = concurrency
208− this.sink = sink
209− this.scheduler = scheduler
210− this.pending = []
211− this.current = new LinkedList()
212−
213− var disposed = false
214− var disposable = source.run(this)(scheduler)
215−
216− this.disposable = {
217− dispose: function () {
218− if (disposed) return
219−
220− disposed = true
221− disposable.dispose()
222− }
223− }
224−
225− this.active = true
226−}
227−
228−Outer.prototype.event = function event (t) {
229− var this$1 = this
230−
231− return function (x) { return this$1._addInner(t, x) }
232−}
233−
234−Outer.prototype._addInner = function _addInner (t, x) {
235− if (this.current.length < this.concurrency) {
236− this._startInner(t, x)
237− } else {
238− this.pending.push(x)
239− }
240−}
241−
242−Outer.prototype._startInner = function _startInner (t, x) {
243− this._initInner(t, x)
244−}
245−
246−Outer.prototype._initInner = function _initInner (t, x) {
247− var innerSink = new Inner(t, this, this.sink)
248− innerSink.disposable = mapAndRun(this.f, x, innerSink, this.scheduler)
249− this.current.add(innerSink)
250−}
251−
252−Outer.prototype.end = function end (t) {
253− this.active = false
254− this.disposable.dispose()
255− this._checkEnd(t)
256−}
257−
258−Outer.prototype.dispose = function dispose () {
259− this.active = false
260− this.pending.length = 0
261− this.disposable.dispose()
262− this.current.dispose()
263−}
264−
265−Outer.prototype._endInner = function _endInner (t, inner) {
266− this.current.remove(inner)
267− inner.dispose()
268−
269− if (this.pending.length === 0) {
270− this._checkEnd(t)
271− } else {
272− this._startInner(t, this.pending.shift())
273− }
274−}
275−
276−Outer.prototype._checkEnd = function _checkEnd (t) {
277− if (!this.active && this.current.isEmpty()) {
278− this.sink.end(t)
279− }
280−}
281−
282−var mapAndRun = function (f, x, sink, scheduler) { return f(x).run(sink)(scheduler) }
283−
284−var Inner = function Inner (time, outer, sink) {
285− this.prev = this.next = null
286− this.time = time
287− this.outer = outer
288− this.sink = sink
289− this.disposable = void 0
290−}
291−
292−Inner.prototype.event = function event (t) {
293− var this$1 = this
294−
295− return function (x) { return this$1.sink.event(Math.max(t, this$1.time))(x) }
296−}
297−
298−Inner.prototype.end = function end (t) {
299− this.outer._endInner(Math.max(t, this.time), this)
300−}
301−
302−Inner.prototype.dispose = function dispose () {
303− return this.disposable.dispose()
304−}
305−
306−exports.switch = function switchLatest (stream) {
307− return new Switch(stream)
308−}
309−
310−function Switch (source) {
311− this.source = source
312−}
313−
314−Switch.prototype.run = function (sink) {
315− var this$1 = this
316−
317− return function (scheduler) {
318− var switchSink = new SwitchSink(sink, scheduler)
319− var disposable = this$1.source.run(switchSink)(scheduler)
320−
321− return {
322− dispose: function () {
323− switchSink.dispose()
324− disposable.dispose()
325− }
326− }
327− }
328−}
329−
330−function SwitchSink (sink, scheduler) {
331− this.sink = sink
332− this.scheduler = scheduler
333− this.current = null
334− this.ended = false
335−}
336−
337−SwitchSink.prototype.event = function (t) {
338− var this$1 = this
339−
340− return function (stream) {
341− this$1._disposeCurrent(t) // TODO: capture the result of this dispose
342− this$1.current = new Segment(t, Infinity, this$1, this$1.sink)
343− this$1.current.disposable = stream.run(this$1.current)(this$1.scheduler)
344− }
345−}
346−
347−SwitchSink.prototype.end = function (t, x) {
348− this.ended = true
349− this._checkEnd(t, x)
350−}
351−
352−SwitchSink.prototype.dispose = function () {
353− return this._disposeCurrent(this.scheduler.now())
354−}
355−
356−SwitchSink.prototype._disposeCurrent = function (t) {
357− if (this.current !== null) {
358− return this.current._dispose(t)
359− }
360−}
361−
362−SwitchSink.prototype._disposeInner = function (t, inner) {
363− inner._dispose(t) // TODO: capture the result of this dispose
364− if (inner === this.current) {
365− this.current = null
366− }
367−}
368−
369−SwitchSink.prototype._checkEnd = function (t, x) {
370− if (this.ended && this.current === null) {
371− this.sink.end(t, x)
372− }
373−}
374−
375−SwitchSink.prototype._endInner = function (t, x, inner) {
376− this._disposeInner(t, inner)
377− this._checkEnd(t, x)
378−}
379−
380−function Segment (min, max, outer, sink) {
381− this.min = min
382− this.max = max
383− this.outer = outer
384− this.sink = sink
385− this.disposable = { dispose: Function.prototype }
386−}
387−
388−Segment.prototype.event = function (t) {
389− var this$1 = this
390−
391− return function (x) {
392− if (t < this$1.max) {
393− this$1.sink.event(Math.max(t, this$1.min))(x)
394− }
395− }
396−}
397−
398−Segment.prototype.end = function (t, x) {
399− this.outer._endInner(Math.max(t, this.min), x, this)
400−}
401−
402−Segment.prototype._dispose = function (t) {
403− this.max = t
404− this.disposable.dispose()
405−}
406−
407−exports.continueWith = function continueWith (f) {
408− return function (stream) {
409− return new ContinueWith(f, stream)
410− }
411−}
412−
413−function ContinueWith (f, source) {
414− this.f = f
415− this.source = source
416−}
417−
418−ContinueWith.prototype.run = function (sink) {
419− var that = this
420− return function (scheduler) {
421− return new ContinueWithSink(that.f, that.source, sink, scheduler)
422− }
423−}
424−
425−function ContinueWithSink (f, source, sink, scheduler) {
426− this.f = f
427− this.sink = sink
428− this.scheduler = scheduler
429− this.active = true
430− this.disposable = source.run(this)(scheduler)
431−}
432−
433−ContinueWithSink.prototype.event = function (t) {
434− var that = this
435−
436− return function (x) {
437− if (!that.active) {
438− return
439− }
440− that.sink.event(t)(x)
441− }
442−}
443−
444−ContinueWithSink.prototype.end = function (t, x) {
445− if (!this.active) {
446− return
447− }
448−
449− this.disposable.dispose()
450−
451− this._startNext(t, x, this.sink)
452−}
453−
454−ContinueWithSink.prototype._startNext = function (t, x, sink) {
455− try {
456− this.disposable = this._continue(this.f, x, sink)
457− } catch (e) {
458− sink.error(t, e)
459− }
460−}
461−
462−ContinueWithSink.prototype._continue = function (f, x, sink) {
463− return f(x).run(sink)(this.scheduler)
464−}
465−
466−ContinueWithSink.prototype.dispose = function () {
467− this.active = false
468− return this.disposable.dispose()
469−}
470−
471−exports.combine2 = function (f) { return function (s1) { return function (s2) { return combineArray(f, [s1, s2]) } } }
472−exports.combine3 = function (f) { return function (s1) { return function (s2) { return function (s3) { return combineArray(f, [s1, s2, s3]) } } } }
473−exports.combine4 = function (f) { return function (s1) { return function (s2) { return function (s3) { return function (s4) { return combineArray(f, [s1, s2, s3, s4]) } } } } }
474−exports.combine5 = function (f) { return function (s1) { return function (s2) { return function (s3) { return function (s4) { return function (s5) { return combineArray(f, [s1, s2, s3, s4, s5]) } } } } } }
475−
476−exports.combineArray = function (streams) {
477− return combineArray(Array, streams)
478−}
479−
480−function combineArray (f, streams) {
481− return new Combine(f, streams)
482−}
483−
484−function Combine (f, sources) {
485− this.f = f
486− this.sources = sources
487−}
488−
489−Combine.prototype.run = function (sink) {
490− var this$1 = this
491−
492− return function (scheduler) {
493− var l = this$1.sources.length
494− var disposables = new Array(l)
495− var sinks = new Array(l)
496−
497− var mergeSink = new CombineSink(disposables, sinks, sink, this$1.f)
498−
499− for (var indexSink, i = 0; i < l; ++i) {
500− indexSink = sinks[i] = new IndexSink(i, mergeSink)
501− disposables[i] = this$1.sources[i].run(indexSink)(scheduler)
502− }
503−
504− return {
505− dispose: function () {
506− disposables.forEach(function (d) {
507− d.dispose()
508− })
509− }
510− }
511− }
512−}
513−
514−function CombineSink (disposables, sinks, sink, f) {
515− var this$1 = this
516−
517− this.sink = sink
518− this.disposables = disposables
519− this.sinks = sinks
520− this.f = f
521−
522− var l = sinks.length
523− this.awaiting = l
524− this.values = new Array(l)
525− this.hasValue = new Array(l)
526−
527− for (var i = 0; i < l; ++i) {
528− this$1.hasValue[i] = false
529− }
530−
531− this.activeCount = sinks.length
532−}
533−
534−CombineSink.prototype.event = function (t) {
535− var this$1 = this
536−
537− return function (indexedValue) {
538− var i = indexedValue.index
539− var awaiting = this$1._updateReady(i)
540−
541− this$1.values[i] = indexedValue.value
542− if (awaiting === 0) {
543− var value = tail(this$1.values).reduce(function (f, x) { return f(x) }, this$1.f(this$1.values[0]))
544− this$1.sink.event(t)(value)
545− }
546− }
547−}
548−
549−CombineSink.prototype._updateReady = function (index) {
550− if (this.awaiting > 0) {
551− if (!this.hasValue[index]) {
552− this.hasValue[index] = true
553− this.awaiting -= 1
554− }
555− }
556− return this.awaiting
557−}
558−
559−CombineSink.prototype.end = function (t, indexedValue) {
560− this.disposables[indexedValue.index].dispose()
561−
562− if (--this.activeCount === 0) {
563− this.sink.end(t)
564− }
565−}
566−
567−var IndexSink = function IndexSink (i, sink) {
568− this.sink = sink
569− this.index = i
570− this.active = true
571− this.value = void 0
572−}
573−
574−IndexSink.prototype.event = function event (t) {
575− var this$1 = this
576−
577− return function (x) {
578− if (!this$1.active) { return }
579−
580− this$1.value = x
581− this$1.sink.event(t)(this$1)
582− }
583−}
584−
585−IndexSink.prototype.end = function end (t) {
586− if (!this.active) { return }
587−
588− this.active = false
589− this.sink.end(t, { index: this.index })
590−}
591−
592−function drop (n, a) { // eslint-disable-line complexity
593− if (n < 0) {
594− throw new TypeError('n must be >= 0')
595− }
596−
597− var l = a.length
598− if (n === 0 || l === 0) {
599− return a
600− }
601−
602− if (n >= l) {
603− return []
604− }
605−
606− return unsafeDrop(n, a, l - n)
607−}
608−
609−// unsafeDrop :: Int -> [a] -> Int -> [a]
610−// Internal helper for drop
611−function unsafeDrop (n, a, l) {
612− var b = new Array(l)
613− for (var i = 0; i < l; ++i) {
614− b[i] = a[n + i]
615− }
616− return b
617−}
618−
619−// tail :: [a] -> [a]
620−// drop head element
621−function tail (a) {
622− return drop(1, a)
623−}
624−
625−exports.merge = function merge (streams) {
626− return mergeSources(streams)
627−}
628−
629−/**
630− * This implements fusion/flattening for merge. It will
631− * fuse adjacent merge operations. For example:
632− * - a.merge(b).merge(c) effectively becomes merge(a, b, c)
633− * - merge(a, merge(b, c)) effectively becomes merge(a, b, c)
634− * It does this by concatenating the sources arrays of
635− * any nested Merge sources, in effect "flattening" nested
636− * merge operations into a single merge.
637− */
638−function mergeSources (streams) {
639− return new Merge(reduce(appendSources, [], streams))
640−}
641−
642−function appendSources (sources, stream) {
643− return stream instanceof Merge
644− ? sources.concat(stream.sources)
645− : sources.concat(stream)
646−}
647−
648−function Merge (sources) {
649− this.sources = sources
650−}
651−
652−Merge.prototype.run = function (sink) {
653− var this$1 = this
654−
655− return function (scheduler) {
656− var l = this.sources.length
657− var disposables = new Array(l)
658− var sinks = new Array(l)
659−
660− var mergeSink = new MergeSink(disposables, sinks, sink)
661−
662− for (var indexSink, i = 0; i < l; ++i) {
663− indexSink = sinks[i] = new IndexSink(i, mergeSink)
664− disposables[i] = this$1.sources[i].run(indexSink, scheduler)
665− }
666−
667− return all(disposables)
668− }
669−}
670−
671−function all (disposables) {
672− return {
673− dispose: function () {
674− disposables.forEach(function (d) {
675− d.dispose()
676− })
677− }
678− }
679−}
680−
681−function MergeSink (disposables, sinks, sink) {
682− this.sink = sink
683− this.disposables = disposables
684− this.activeCount = sinks.length
685−}
686−
687−MergeSink.prototype.event = function (t) {
688− var that = this
689− return function (indexValue) {
690− that.sink.event(t)(indexValue.value)
691− }
692−}
693−
694−MergeSink.prototype.end = function (t, indexedValue) {
695− this.disposables[indexedValue.index].dispose()
696− if (--this.activeCount === 0) {
697− this.sink.end(t, indexedValue.value)
698− }
699−}
700−
701−function reduce (f, z, a) {
702− var r = z
703− for (var i = 0, l = a.length; i < l; ++i) {
704− r = f(r, a[i], i)
705− }
706− return r
707−}
708−
709−exports.until = function takeUntil (signal) {
710− return function (stream) {
711− return new Until(signal, stream)
712− }
713−}
714−
715−exports.since = function skipUntil (signal) {
716− return function (stream) {
717− return new Since(signal, stream)
718− }
719−}
720−
721−function Until (maxSignal, source) {
722− this.maxSignal = maxSignal
723− this.source = source
724−}
725−
726−Until.prototype.run = function (sink) {
727− var that = this
728− return function (scheduler) {
729− var min = new Bound(-Infinity, sink)
730− var max = new UpperBound(that.maxSignal, sink, scheduler)
731− var disposable = that.source.run(new TimeWindowSink(min, max, sink), scheduler)
732−
733− return all([min, max, disposable])
734− }
735−}
736−
737−function Since (minSignal, source) {
738− this.minSignal = minSignal
739− this.source = source
740−}
741−
742−Since.prototype.run = function (sink) {
743− var that = this
744− return function (scheduler) {
745− var min = new LowerBound(that.minSignal, sink, scheduler)
746− var max = new Bound(Infinity, sink)
747− var disposable = that.source.run(new TimeWindowSink(min, max, sink))(scheduler)
748−
749− return all([min, max, disposable])
750− }
751−}
752−
753−function Bound (value, sink) {
754− this.value = value
755− this.sink = sink
756−}
757−
758−Bound.prototype.event = noop
759−Bound.prototype.end = noop
760−Bound.prototype.dispose = noop
761−
762−function TimeWindowSink (min, max, sink) {
763− this.min = min
764− this.max = max
765− this.sink = sink
766−}
767−
768−TimeWindowSink.prototype.event = function (t, x) {
769− var that = this
770− return function (x) {
771− if (t >= that.min.value && t < that.max.value) {
772− that.sink.event(t)(x)
773− }
774− }
775−}
776−
777−TimeWindowSink.prototype.end = function (time) {
778− this.sink.end(time)
779−}
780−
781−function LowerBound (signal, sink, scheduler) {
782− this.value = Infinity
783− this.sink = sink
784− this.disposable = signal.run(this)(scheduler)
785−}
786−
787−LowerBound.prototype.event = function (t /*, x */) {
788− return function () {
789− if (t < this.value) {
790− this.value = t
791− }
792− }
793−}
794−
795−LowerBound.prototype.end = noop
796−
797−LowerBound.prototype.dispose = function () {
798− return this.disposable.dispose()
799−}
800−
801−function UpperBound (signal, sink, scheduler) {
802− this.value = Infinity
803− this.sink = sink
804− this.disposable = signal.run(this)(scheduler)
805−}
806−
807−UpperBound.prototype.event = function (t) {
808− var that = this
809−
810− return function (x) {
811− if (t < this.value) {
812− that.value = t
813− that.sink.end(t)
814− }
815− }
816−}
817−
818−UpperBound.prototype.end = noop
819−
820−UpperBound.prototype.dispose = function () {
821− return this.disposable.dispose()
822−}
823−
824−function noop () { }
825−
826−exports.throttle = function throttle (period) {
827− return function (stream) {
828− return throttleSource(period, stream)
829− }
830−}
831−
832−function throttleSource (period, source) {
833− return source instanceof Throttle
834− ? fuseThrottle(period, source)
835− : new Throttle(period, source)
836−}
837−
838−function fuseThrottle (period, source) {
839− return new Throttle(Math.max(period, source.period), source.source)
840−}
841−
842−function Throttle (period, source) {
843− this.period = period
844− this.source = source
845−}
846−
847−Throttle.prototype.run = function (sink) {
848− var that = this
849− return function (scheduler) {
850− return that.source.run(new ThrottleSink(that.period, sink), scheduler)
851− }
852−}
853−
854−function ThrottleSink (period, sink) {
855− this.time = 0
856− this.period = period
857− this.sink = sink
858−}
859−
860−ThrottleSink.prototype.event = function (t) {
861− var that = this
862− return function (x) {
863− if (t >= this.time) {
864− that.time = t + this.period
865− that.sink.event(t)(x)
866− }
867− }
868−}
869−
870−ThrottleSink.prototype.end = function (t) { this.sink.end(t) }
871−
872−exports.debounce = function debounce (period) {
873− return function (stream) {
874− return new Debounce(period, stream)
875− }
876−}
877−
878−function Debounce (dt, source) {
879− this.dt = dt
880− this.source = source
881−}
882−
883−Debounce.prototype.run = function (sink) {
884− var that = this
885− return function (scheduler) {
886− return new DebounceSink(that.dt, that.source, sink, scheduler)
887− }
888−}
889−
890−function DebounceSink (dt, source, sink, scheduler) {
891− this.dt = dt
892− this.sink = sink
893− this.scheduler = scheduler
894− this.value = void 0
895− this.timer = null
896−
897− var sourceDisposable = source.run(this)(scheduler)
898− this.disposable = all([this, sourceDisposable])
899−}
900−
901−DebounceSink.prototype.event = function (t) {
902− var that = this
903− return function (x) {
904− that._clearTimer()
905− that.value = x
906− var task = ControlStreamScheduler.eventTask(that.sink)(x)
907− that.timer = this.scheduler.delay(this.dt, task)
908− }
909−}
910−
911−DebounceSink.prototype.end = function (t, x) {
912− if (this._clearTimer()) {
913− this.sink.event(t, this.value)
914− this.value = void 0
915− }
916− this.sink.end(t, x)
917−}
918−
919−DebounceSink.prototype.dispose = function () {
920− this._clearTimer()
921−}
922−
923−DebounceSink.prototype._clearTimer = function () {
924− if (this.timer === null) {
925− return false
926− }
927− this.timer.dispose()
928− this.timer = null
929− return true
930−}
931−
932−exports.delay = function delay (delayTime) {
933− return function (stream) {
934− return delayTime <= 0 ? stream : new Delay(delayTime, stream)
935− }
936−}
937−
938−function Delay (dt, source) {
939− this.dt = dt
940− this.source = source
941−}
942−
943−Delay.prototype.run = function (sink) {
944− var that = this
945−
946− return function (scheduler) {
947− var delaySink = new DelaySink(that.dt, sink, scheduler)
948− return all([delaySink, that.source.run(delaySink)(scheduler)])
949− }
950−}
951−
952−function DelaySink (dt, sink, scheduler) {
953− this.dt = dt
954− this.sink = sink
955− this.scheduler = scheduler
956−}
957−
958−DelaySink.prototype.dispose = function () {
959− var self = this
960− this.scheduler.cancelAll(function (task) {
961− return task.sink === self.sink
962− })
963−}
964−
965−DelaySink.prototype.event = function (t) {
966− var that = this
967− return function (x) {
968− that.scheduler.delay(that.dt)(ControlStreamScheduler.eventTask(that.sink)(x))
969− }
970−}
971−
972−DelaySink.prototype.end = function (t, x) {
973− this.scheduler.delay(this.dt)(ControlStreamScheduler.endTask(this.sink))
974−}
975−
976−var MulticastDisposable = function MulticastDisposable (source, sink) {
977− this.source = source
978− this.sink = sink
979− this.disposed = false
980−}
981−
982−MulticastDisposable.prototype.dispose = function dispose () {
983− if (this.disposed) {
984− return
985− }
986− this.disposed = true
987− var remaining = this.source.remove(this.sink)
988− return remaining === 0 && this.source._dispose()
989−}
990−
991−var dispose = function (disposable) { return disposable.dispose() }
992−
993−var emptyDisposable = {
994− dispose: function dispose$1 () { }
995−}
996−
997−function MulticastSource (source) {
998− this.source = source
999− this.sinks = []
1000− this._disposable = emptyDisposable
1001−}
1002−
1003−MulticastSource.prototype.run = function run (sink) {
1004− var that = this
1005− return function (scheduler) {
1006− var n = that.add(sink)
1007− if (n === 1) {
1008− that._disposable = that.source.run(that)(scheduler)
1009− }
1010− return new MulticastDisposable(that, sink)
1011− }
1012−}
1013−
1014−MulticastSource.prototype._dispose = function _dispose () {
1015− var disposable = this._disposable
1016− this._disposable = emptyDisposable
1017− return Promise.resolve(disposable).then(dispose)
1018−}
1019−
1020−MulticastSource.prototype.add = function add (sink) {
1021− this.sinks = append(sink, this.sinks)
1022− return this.sinks.length
1023−}
1024−
1025−function append (x, a) {
1026− var l = a.length
1027− var b = new Array(l + 1)
1028− for (var i = 0; i < l; ++i) {
1029− b[i] = a[i]
1030− }
1031−
1032− b[l] = x
1033− return b
1034−}
1035−
1036−MulticastSource.prototype.remove = function remove$1 (sink) {
1037− var i = findIndex(sink, this.sinks)
1038− // istanbul ignore next
1039− if (i >= 0) {
1040− this.sinks = remove(i, this.sinks)
1041− }
1042−
1043− return this.sinks.length
1044−}
1045−
1046−function findIndex (x, a) {
1047− for (var i = 0, l = a.length; i < l; ++i) {
1048− if (x === a[i]) {
1049− return i
1050− }
1051− }
1052− return -1
1053−}
1054−
1055−function remove (i, a) { // eslint-disable-line complexity
1056− if (i < 0) {
1057− throw new TypeError('i must be >= 0')
1058− }
1059−
1060− var l = a.length
1061− if (l === 0 || i >= l) { // exit early if index beyond end of array
1062− return a
1063− }
1064−
1065− if (l === 1) { // exit early if index in bounds and length === 1
1066− return []
1067− }
1068−
1069− return unsafeRemove(i, a, l - 1)
1070−}
1071−
1072−// unsafeRemove :: Int -> [a] -> Int -> [a]
1073−// Internal helper to remove element at index
1074−function unsafeRemove (i, a, l) {
1075− var b = new Array(l)
1076− var j
1077− for (j = 0; j < i; ++j) {
1078− b[j] = a[j]
1079− }
1080− for (j = i; j < l; ++j) {
1081− b[j] = a[j + 1]
1082− }
1083−
1084− return b
1085−}
1086−
1087−MulticastSource.prototype.event = function event (time) {
1088− var that = this
1089− return function (value) {
1090− var s = that.sinks
1091− if (s.length === 1) {
1092− return s[0].event(time)(value)
1093− }
1094− for (var i = 0; i < s.length; ++i) {
1095− s[i].event(time)(value)
1096− }
1097− }
1098−}
1099−
1100−MulticastSource.prototype.end = function end (time) {
1101− var s = this.sinks
1102− for (var i = 0; i < s.length; ++i) {
1103− s[i].end(time)
1104− }
1105−}
1106−
1107−MulticastSource.prototype.until = function (signal) {
1108− return exports.until(signal)(this)
1109−}
1110−
1111−exports.multicast = function multicast (stream) {
1112− return new MulticastSource(stream)
1113−}
1114−
1115−function __extends (d, b) { // eslint-disable-line complexity
1116− for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]
1117− function __ () { this.constructor = d }
1118− d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __())
1119−}
1120−
1121−var HoldSubjectSource = (function (_super) {
1122− __extends(HoldSubjectSource, _super)
1123− function HoldSubjectSource (source, bufferSize) {
1124− var _this = _super.call(this, source) || this
1125− _this.has = false
1126− _this.buffer = []
1127− _this.bufferSize = bufferSize
1128− return _this
1129− }
1130− HoldSubjectSource.prototype.add = function (sink) {
1131− if (this.has) {
1132− pushEvents(this.buffer, sink)
1133− }
1134− return _super.prototype.add.call(this, sink)
1135− }
1136− HoldSubjectSource.prototype.event = function (time) {
1137− var that = this
1138− return function (value) {
1139− that.has = true
1140− that.buffer = dropAndAppend(value, that.buffer, that.bufferSize)
1141− return _super.prototype.event.call(that, time)(value)
1142− }
1143− }
1144− return HoldSubjectSource
1145−}(MulticastSource))
1146−
1147−function pushEvents (buffer, sink) {
1148− var length = buffer.length
1149− for (var i = 0; i < length; ++i) {
1150− sink.event(ControlStreamScheduler.scheduler.now(), buffer[i])
1151− }
1152−}
1153−
1154−function dropAndAppend (value, buffer, bufferSize) {
1155− if (buffer.length === bufferSize) {
1156− return append(value, drop(1, buffer))
1157− }
1158− return append(value, buffer)
1159−}
1160−
1161−exports.hold = function hold (bufferSize) {
1162− return function (stream) {
1163− return new HoldSubjectSource(stream, bufferSize)
1164− }
1165−}
1166−
1167−exports.toSubject = function (stream) {
1168− return exports.multicast(stream)
1169−}
1170−
1171−exports.toHoldSubject = exports.hold
1172−
1173−exports.fromSubject = function (subject) {
1174− return subject
1175−}
1176−
1177−exports.subjectEvent = function (value) {
1178− return function (subject) {
1179− ControlStreamScheduler.eventTask(subject)(value)
1180− return subject
1181− }
1182−}
1183−
1184−exports.subjectEnd = function (value) {
1185− return function (subject) {
1186− subject.end(Date.now())
1187− return subject
1188− }
1189−}
1190−
1191−exports.proxy = function (value) {
1192− var stream = new ProxyStream(value)
1193−
1194− function attach (original) {
1195− stream.attach(original)
1196− return original
1197− }
1198−
1199− return { attach: attach, stream: stream }
1200−}
1201−
1202−var ProxyStream = (function (_super) {
1203− __extends(ProxyStream, _super)
1204− function ProxyStream (value) {
1205− var _this = _super.call(this, ControlStreamStream.never, 1) || this
1206− _this.attached = false
1207− _this.running = false
1208− _this.buffer.push(value)
1209− return _this
1210− }
1211− ProxyStream.prototype.run = function (sink) {
1212− var that = this
1213−
1214− that.add(sink)
1215−
1216− return function (scheduler) {
1217− if (that.attached && !that.running) {
1218− that.running = true
1219− that._disposable = that.source.run(that)(scheduler)
1220− return that._disposable
1221− }
1222−
1223− return new MulticastDisposable(that, sink)
1224− }
1225− }
1226−
1227− ProxyStream.prototype.attach = function (source) {
1228− if (this.attached) throw new Error('Can only proxy 1 stream')
1229− this.attached = true
1230−
1231− this.source = source
1232−
1233− if (this.sinks.length) { this._disposable = source.run(this)(ControlStreamScheduler.scheduler) }
1234− }
1235−
1236− ProxyStream.prototype.end = function end (time) {
1237− this.attached = false
1238− this.running = false
1239−
1240− return _super.prototype.end.call(this, time)
1241− }
1242−
1243− return ProxyStream
1244−}(HoldSubjectSource))
src/Control/Stream/Stream.pursdeleted−340
@@ -1,340 +0,0 @@
1−module Control.Stream.Stream
2− ( STREAM
3− , EffStream
4− , Stream(..)
5− , just
6− , empty
7− , never
8− , periodic
9− , createCombinator
10− , createEventCombinator
11− , createEndCombinator
12− , drain
13− , tapEvent
14− , tapEnd
15− , fromArray
16− , filter
17− , take
18− , skip
19− , constant
20− , continueWith
21− , concat
22− , startWith
23− , scan
24− , loop
25− , chain
26− , mergeConcurrently
27− , join
28− , mergeMapConcurrently
29− , concatMap
30− , switch
31− , combine2
32− , combine3
33− , combine4
34− , combine5
35− , combineArray
36− , merge
37− , skipRepeatsWith
38− , skipRepeats
39− , until
40− , since
41− , during
42− , sample
43− , debounce
44− , throttle
45− , delay
46− , multicast
47− , hold
48− , Subject
49− , toSubject
50− , toHoldSubject
51− , fromSubject
52− , subjectEvent
53− , subjectEnd
54− , subscribe
55− ) where
56−
57−import Control.Alternative (class Apply)
58−import Control.Bind (class Bind)
59−import Control.Category (id)
60−import Control.Monad.Eff (Eff, Pure, runPure)
61−import Control.Monad.Eff.Ref (Ref, modifyRef', newRef, readRef)
62−import Control.Monad.Eff.Unsafe (unsafeCoerceEff, unsafePerformEff)
63−import Control.MonadPlus (class Alt, class Alternative, class MonadPlus, class Plus)
64−import Control.MonadZero (class Applicative, class MonadZero)
65−import Control.Stream.Disposable (Disposable, emptyDisposable, disposeAll)
66−import Control.Stream.Scheduler (Scheduler(..), endTask, eventTask, scheduleTasks)
67−import Control.Stream.Sink (Sink(..))
68−import Control.Stream.Stream (Stream(..), EffStream, empty, just)
69−import Control.Stream.Time (Time)
70−import Data.Eq ((==))
71−import Data.EuclideanRing ((-))
72−import Data.Functor (class Functor)
73−import Data.Maybe (Maybe(..), fromJust, isNothing)
74−import Data.Monoid (class Monoid)
75−import Data.Unit (Unit, unit)
76−import Partial.Unsafe (unsafePartial)
77−import Prelude (class Eq, class Monad, class Semigroup, eq)
78−
79−foreign import data STREAM :: !
80−
81−type EffStream e a = Eff (stream :: STREAM | e) a
82−
83−foreign import data Subject :: * -> *
84−
85−newtype Stream a = Stream { run :: Sink a -> Scheduler -> Disposable }
86−
87−instance functorStream :: Functor Stream where
88− map = mapStream
89−
90−instance applyStream :: Apply Stream where
91− apply = combine2 id
92−
93−instance applicativeStream :: Applicative Stream where
94− pure = just
95−
96−instance bindStream :: Bind Stream where
97− bind = chain
98−
99−instance monadStream :: Monad Stream
100−
101−instance semigroupStream :: Semigroup (Stream a) where
102− append = concat
103−
104−instance altStream :: Alt Stream where
105− alt = \s1 s2 -> merge [s1, s2]
106−
107−instance monoidStream :: Monoid (Stream a) where
108− mempty = empty
109−
110−instance plusStream :: Plus Stream where
111− empty = empty
112−
113−instance alternativeStream :: Alternative Stream
114−
115−instance monadZeroStream :: MonadZero Stream
116−
117−instance monadPlusStream :: MonadPlus Stream
118−
119−just :: forall a. a -> Stream a
120−just a = Stream { run } where
121− run :: Sink a -> Scheduler -> Disposable
122− run sink (Scheduler scheduler) =
123− scheduleTasks scheduler.asap [ (eventTask sink a), (endTask sink) ]
124−
125−empty :: forall a. Stream a
126−empty = Stream { run } where
127− run :: Sink a -> Scheduler -> Disposable
128− run sink (Scheduler scheduler) = scheduleTasks scheduler.asap [ endTask sink ]
129−
130−never :: forall a. Stream a
131−never = Stream { run: \sink scheduler -> emptyDisposable }
132−
133−periodic :: Number -> Stream Unit
134−periodic period = Stream { run } where
135− run :: Sink Unit -> Scheduler -> Disposable
136− run sink (Scheduler scheduler) = do
137− let task = eventTask sink unit
138− let scheduledTask = scheduler.periodic period task
139− { dispose : scheduledTask.dispose }
140−
141−createCombinator :: forall a b. (Sink b -> Time -> a -> Unit) -> (Sink b -> Time -> Unit) -> Stream a -> Stream b
142−createCombinator event end (Stream stream) = Stream { run } where
143− run :: Sink b -> Scheduler -> Disposable
144− run sink scheduler = stream.run (Sink { event: (event sink), end: (end sink) }) scheduler
145−
146−createEventCombinator :: forall a b. (Sink b -> Time -> a -> Unit) -> Stream a -> Stream b
147−createEventCombinator event stream = createCombinator event end stream where
148− end (Sink sink) time = sink.end time
149−
150−createEndCombinator :: forall a. (Sink a -> Time -> Unit) -> Stream a -> Stream a
151−createEndCombinator end stream = createCombinator event end stream where
152− event (Sink sink) time value = sink.event time value
153−
154−tapEvent :: forall e a. (a -> Eff e Unit) -> Stream a -> Stream a
155−tapEvent f stream = createEventCombinator event stream where
156− event :: Sink a -> Time -> a -> Unit
157− event (Sink sink) time value = sink.event time (always value (unsafePerformEff (f value)))
158−
159−tapEnd :: forall e a. Eff e Unit -> Stream a -> Stream a
160−tapEnd f stream = createEndCombinator end stream where
161− end :: Sink a -> Time -> Unit
162− end (Sink sink) time = sink.end (always time (unsafePerformEff f))
163−
164−take :: forall a. Int -> Stream a -> Stream a
165−take 0 stream = empty
166−take amount (Stream stream) = Stream { run } where
167− run (Sink sink) scheduler = disposable where
168− disposable = stream.run (Sink { event, end }) scheduler where
169− state :: State Int
170− state = createState amount
171−
172− event ::Time -> a -> Unit
173− event time value = do
174− let amountLeft = (getState state)
175− if amountLeft == 0
176− then unit
177− else do
178− let newAmountLeft = state.set \x -> x - 1
179− let x = sink.event time value
180− if newAmountLeft == 0
181− then sink.end (always time (runPure disposable.dispose))
182− else unit
183−
184− end time = sink.end time
185−
186−skip :: forall a. Int -> Stream a -> Stream a
187−skip 0 stream = stream
188−skip amount stream = createEventCombinator event stream where
189− state :: State Int
190− state = createState amount
191−
192− event :: Sink a -> Time -> a -> Unit
193− event (Sink sink) time value = do
194− let amountLeft = runPure state.get
195− if (amountLeft == 0)
196− then sink.event time value
197− else always unit (state.set \x -> x - 1)
198−
199−mapStream :: forall a b. (a -> b) -> Stream a -> Stream b
200−mapStream f stream = createEventCombinator event stream where
201− event :: Sink b -> Time -> a -> Unit
202− event (Sink sink) time value = sink.event time (f value)
203−
204−filter :: forall a. (a -> Boolean) -> Stream a -> Stream a
205−filter predicate stream = createEventCombinator event stream where
206− event (Sink sink) time value = if predicate value
207− then sink.event time value
208− else unit
209−
210−skipRepeatsWith :: forall a. (a -> a -> Boolean) -> Stream a -> Stream a
211−skipRepeatsWith compare stream = createEventCombinator event stream where
212− state :: State (Maybe a)
213− state = createState Nothing
214−
215− event (Sink sink) time value = do
216− let currentState = (getState state)
217− if (isNothing currentState)
218− then sink.event time value
219− else do
220− let currentValue = unsafePartial (fromJust currentState)
221− if (compare currentValue value)
222− then unit
223− else sink.event time value
224−
225−skipRepeats :: forall a. (Eq a) => Stream a -> Stream a
226−skipRepeats = skipRepeatsWith (eq)
227−
228−constant :: forall a b. b -> Stream a -> Stream b
229−constant b stream = createEventCombinator event stream where
230− event :: Sink b -> Time -> a -> Unit
231− event (Sink sink) time value = sink.event time b
232−
233−concat :: forall a. Stream a -> Stream a -> Stream a
234−concat s1 s2 = continueWith(\_ -> s2) s1
235−
236−startWith :: forall a. a -> Stream a -> Stream a
237−startWith seed stream = concat (just seed) stream
238−
239−scan :: forall a b. (b -> a -> b) -> b -> Stream a -> Stream b
240−scan f initial stream = startWith initial (createEventCombinator event stream) where
241− seed :: State b
242− seed = createState initial
243−
244− event :: Sink b -> Time -> a -> Unit
245− event (Sink sink) time value = sink.event time (seed.set \x -> f x value)
246−
247−loop :: forall a b c. (b -> a -> { seed :: b, value :: c }) -> b -> Stream a -> Stream c
248−loop f initial stream = createEventCombinator event stream where
249− seed :: State b
250− seed = createState initial
251−
252− event :: Sink c -> Time -> a -> Unit
253− event (Sink sink) time x = do
254− let seedValue = f (getState seed) x
255− sink.event time (always seedValue.value (seed.set \_ -> seedValue.seed))
256−
257−concatMap :: forall a b. (a -> Stream b) -> Stream a -> Stream b
258−concatMap f stream = mergeMapConcurrently f 1 stream
259−
260−ap :: forall a b. (Stream (a -> b)) -> Stream a -> Stream b
261−ap fs xs = combine2 (\f x -> f x) fs xs
262−
263−during :: forall a b. Stream (Stream b) -> Stream a -> Stream a
264−during timeWindow stream = until (join timeWindow) (since timeWindow stream)
265−
266−sample :: forall a b c. (a -> b -> c) -> Stream a -> Stream b -> Stream c
267−sample f (Stream sampler) (Stream stream) = Stream { run: runSample (createState Nothing) } where
268− runSample :: State (Maybe b) -> Sink c -> Scheduler -> Disposable
269− runSample state sink scheduler = disposeAll
270− [ stream.run (createHoldSink state) scheduler
271− , sampler.run (createSampleSink state sink f) scheduler
272− ]
273−
274−createHoldSink :: forall a. State (Maybe a) -> Sink a
275−createHoldSink state = Sink { event, end } where
276− event time value = always unit (state.set \_ -> Just value)
277− end time = unit
278−
279−createSampleSink :: forall a b c. State (Maybe b) -> Sink c -> (a -> b -> c) -> Sink a
280−createSampleSink state (Sink sink) f = Sink { event, end } where
281− end time = sink.end time
282− event time value =
283− if isNothing (runPure state.get)
284− then unit
285− else sink.event time (f value (unsafePartial (fromJust (runPure state.get))))
286−
287−sampleWith :: forall a b. Stream b -> Stream a -> Stream a
288−sampleWith signal stream = sample (\_ y -> y) signal stream
289−
290−-- find a better way to perform these side effects
291−always :: forall a b. a -> b -> a
292−always a b = a
293−
294−type State a = { get:: Pure a, set :: (a -> a) -> a }
295−
296−getState :: forall a. State a -> a
297−getState state = runPure state.get
298−
299−createState :: forall a. a -> State a
300−createState seed = { set, get }
301− where
302− ref :: Ref a
303− ref = unsafePerformEff (unsafeCoerceEff (newRef seed))
304−
305− set :: (a -> a) -> a
306− set f = unsafePerformEff (unsafeCoerceEff (modifyRef' ref \x -> { state: (f x), value: (f x) }))
307−
308− get :: Pure a
309− get = unsafeCoerceEff (readRef ref)
310−
311−foreign import drain :: forall e a. Stream a -> EffStream e Unit
312−foreign import subscribe :: forall e a. (a -> Eff e Unit) -> (Unit -> Eff e Unit) -> Stream a -> EffStream e Unit
313−foreign import fromArray :: forall a b. Array a -> Stream b -> Stream a
314−foreign import chain :: forall a b. Stream a -> (a -> Stream b) -> Stream b
315−foreign import mergeConcurrently :: forall a. Int -> Stream (Stream a) -> Stream a
316−foreign import join :: forall a. Stream (Stream a) -> Stream a
317−foreign import mergeMapConcurrently :: forall a b. (a -> Stream b) -> Int -> Stream a -> Stream b
318−foreign import switch :: forall a. Stream (Stream a) -> Stream a
319−foreign import continueWith :: forall a. (Unit -> Stream a) -> Stream a -> Stream a
320−foreign import combine2 :: forall a b c. (a -> b -> c) -> Stream a -> Stream b -> Stream c
321−foreign import combine3 :: forall a b c d. (a -> b -> c -> d) -> Stream a -> Stream b -> Stream c -> Stream d
322−foreign import combine4 :: forall a b c d e. (a -> b -> c -> d -> e) -> Stream a -> Stream b -> Stream c -> Stream d -> Stream e
323−foreign import combine5 :: forall a b c d e f. (a -> b -> c -> d -> e -> f) -> Stream a -> Stream b -> Stream c -> Stream d -> Stream e -> Stream f
324−foreign import combineArray :: forall a. Array (Stream a) -> Stream (Array a)
325−foreign import merge :: forall a. Array (Stream a) -> Stream a
326−foreign import until :: forall a b. Stream b -> Stream a -> Stream a
327−foreign import since :: forall a b. Stream b -> Stream a -> Stream a
328−foreign import debounce :: forall a. Number -> Stream a -> Stream a
329−foreign import throttle :: forall a. Number -> Stream a -> Stream a
330−foreign import delay :: forall a. Number -> Stream a -> Stream a
331−foreign import multicast :: forall a. Stream a -> Stream a
332−foreign import hold :: forall a. Stream a -> Stream a
333−foreign import proxy :: forall a. a -> { attach :: (Stream a -> Stream a), stream :: Stream a }
334−
335−-- Sad subject types :/
336−foreign import toSubject :: forall a. Stream a -> Subject a
337−foreign import toHoldSubject :: forall a. Int -> Stream a -> Subject a
338−foreign import fromSubject :: forall a. Subject a -> Stream a
339−foreign import subjectEvent :: forall a. a -> Subject a -> Subject a
340−foreign import subjectEnd :: forall a. a -> Subject a -> Subject a
src/Control/Time.pursdeleted−3
@@ -1,3 +0,0 @@
1−module Control.Stream.Time where
2−
3−newtype Time = Time Int
test/Main.pursdeleted−9
@@ -1,9 +0,0 @@
1−module Test.Main where
2−
3−import Control.Monad.Eff (Eff)
4−import Control.Monad.Eff.Console (CONSOLE, logShow)
5−import Data.Unit (Unit)
6−
7−main :: Eff (console :: CONSOLE) Unit
8−main = do
9− logShow "Write tests. You're a bad developer!"
yarn.lock+118−3308
@@ -14,24 +14,6 @@
1414 version "1.5.0"
1515 resolved "https://registry.yarnpkg.com/@most/prelude/-/prelude-1.5.0.tgz#0c8ce09f305039d4055d3deb59c9e44cd337854d"
1616
17−JSONStream@^0.10.0:
18− version "0.10.0"
19− resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-0.10.0.tgz#74349d0d89522b71f30f0a03ff9bd20ca6f12ac0"
20− dependencies:
21− jsonparse "0.0.5"
22− through ">=2.2.7 <3"
23−
24−JSONStream@^1.0.3, JSONStream@^1.0.4:
25− version "1.3.1"
26− resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.1.tgz#707f761e01dae9e16f1bcf93703b78c70966579a"
27− dependencies:
28− jsonparse "^1.2.0"
29− through ">=2.2.7 <3"
30−
31−abbrev@1:
32− version "1.1.0"
33− resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f"
34−
3517acorn-jsx@^3.0.0, acorn-jsx@^3.0.1:
3618 version "3.0.1"
3719 resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b"
@@ -44,7 +26,7 @@ acorn-object-spread@^1.0.0:
4426 dependencies:
4527 acorn "^3.1.0"
4628
47−acorn@4.0.4, acorn@^4.0.3:
29+acorn@4.0.4:
4830 version "4.0.4"
4931 resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.4.tgz#17a8d6a7a6c4ef538b814ec9abac2779293bf30a"
5032
@@ -52,15 +34,11 @@ acorn@^3.0.4, acorn@^3.1.0, acorn@^3.3.0:
5234 version "3.3.0"
5335 resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a"
5436
55−add-stream@^1.0.0:
56− version "1.0.0"
57− resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa"
58−
5937ajv-keywords@^1.0.0:
6038 version "1.5.1"
6139 resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c"
6240
63−ajv@^4.7.0, ajv@^4.9.1:
41+ajv@^4.7.0:
6442 version "4.11.4"
6543 resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.4.tgz#ebf3a55d4b132ea60ff5847ae85d2ef069960b45"
6644 dependencies:
@@ -75,10 +53,6 @@ align-text@^0.1.1, align-text@^0.1.3:
7553 longest "^1.0.1"
7654 repeat-string "^1.5.2"
7755
78−amdefine@>=0.0.4:
79− version "1.0.1"
80− resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
81−
8256ansi-escapes@^1.1.0:
8357 version "1.4.0"
8458 resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e"
@@ -91,150 +65,26 @@ ansi-styles@^2.2.1:
9165 version "2.2.1"
9266 resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
9367
94−anymatch@^1.3.0:
95− version "1.3.0"
96− resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.0.tgz#a3e52fa39168c825ff57b0248126ce5a8ff95507"
97− dependencies:
98− arrify "^1.0.0"
99− micromatch "^2.1.5"
100−
101−aproba@^1.0.3:
102− version "1.1.1"
103− resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.1.tgz#95d3600f07710aa0e9298c726ad5ecf2eacbabab"
104−
105−archive-type@^3.0.0, archive-type@^3.0.1:
106− version "3.2.0"
107− resolved "https://registry.yarnpkg.com/archive-type/-/archive-type-3.2.0.tgz#9cd9c006957ebe95fadad5bd6098942a813737f6"
108− dependencies:
109− file-type "^3.1.0"
110−
111−are-we-there-yet@~1.1.2:
112− version "1.1.2"
113− resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.2.tgz#80e470e95a084794fe1899262c5667c6e88de1b3"
114− dependencies:
115− delegates "^1.0.0"
116− readable-stream "^2.0.0 || ^1.1.13"
117−
11868argparse@^1.0.7:
11969 version "1.0.9"
12070 resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86"
12171 dependencies:
12272 sprintf-js "~1.0.2"
12373
124−arr-diff@^2.0.0:
125− version "2.0.0"
126− resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf"
127− dependencies:
128− arr-flatten "^1.0.1"
129−
130−arr-flatten@^1.0.1:
131− version "1.0.1"
132− resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.1.tgz#e5ffe54d45e19f32f216e91eb99c8ce892bb604b"
133−
134−array-differ@^1.0.0:
135− version "1.0.0"
136− resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031"
137−
138−array-filter@~0.0.0:
139− version "0.0.1"
140− resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec"
141−
142−array-find-index@^1.0.1:
143− version "1.0.2"
144− resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1"
145−
146−array-ify@^1.0.0:
147− version "1.0.0"
148− resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece"
149−
150−array-map@~0.0.0:
151− version "0.0.0"
152− resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662"
153−
154−array-reduce@~0.0.0:
155− version "0.0.0"
156− resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b"
157−
15874array-union@^1.0.1:
15975 version "1.0.2"
16076 resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
16177 dependencies:
16278 array-uniq "^1.0.1"
16379
164−array-uniq@^1.0.0, array-uniq@^1.0.1, array-uniq@^1.0.2:
80+array-uniq@^1.0.1:
16581 version "1.0.3"
16682 resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
16783
168−array-unique@^0.2.1:
169− version "0.2.1"
170− resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53"
171−
17284arrify@^1.0.0:
17385 version "1.0.1"
17486 resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
17587
176−asn1.js@^4.0.0:
177− version "4.9.1"
178− resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.1.tgz#48ba240b45a9280e94748990ba597d216617fd40"
179− dependencies:
180− bn.js "^4.0.0"
181− inherits "^2.0.1"
182− minimalistic-assert "^1.0.0"
183−
184−asn1@~0.2.3:
185− version "0.2.3"
186− resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86"
187−
188−assert-plus@^0.2.0:
189− version "0.2.0"
190− resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234"
191−
192−assert-plus@^1.0.0:
193− version "1.0.0"
194− resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
195−
196−assert@^1.4.0:
197− version "1.4.1"
198− resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91"
199− dependencies:
200− util "0.10.3"
201−
202−astw@^2.0.0:
203− version "2.2.0"
204− resolved "https://registry.yarnpkg.com/astw/-/astw-2.2.0.tgz#7bd41784d32493987aeb239b6b4e1c57a873b917"
205− dependencies:
206− acorn "^4.0.3"
207−
208−async-each-series@^1.0.0, async-each-series@^1.1.0:
209− version "1.1.0"
210− resolved "https://registry.yarnpkg.com/async-each-series/-/async-each-series-1.1.0.tgz#f42fd8155d38f21a5b8ea07c28e063ed1700b138"
211−
212−async-each@^1.0.0:
213− version "1.0.1"
214− resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
215−
216−async@^1.4.0, async@^1.5.2:
217− version "1.5.2"
218− resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
219−
220−async@^2.1.2:
221− version "2.1.5"
222− resolved "https://registry.yarnpkg.com/async/-/async-2.1.5.tgz#e587c68580994ac67fc56ff86d3ac56bdbe810bc"
223− dependencies:
224− lodash "^4.14.0"
225−
226−asynckit@^0.4.0:
227− version "0.4.0"
228− resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
229−
230−aws-sign2@~0.6.0:
231− version "0.6.0"
232− resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f"
233−
234−aws4@^1.2.1:
235− version "1.6.0"
236− resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e"
237−
23888babel-code-frame@^6.16.0:
23989 version "6.22.0"
24090 resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4"
@@ -251,94 +101,6 @@ balanced-match@^0.4.1:
251101 version "0.4.2"
252102 resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838"
253103
254−base64-js@^1.0.2:
255− version "1.2.0"
256− resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1"
257−
258−bcrypt-pbkdf@^1.0.0:
259− version "1.0.1"
260− resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d"
261− dependencies:
262− tweetnacl "^0.14.3"
263−
264−beeper@^1.0.0:
265− version "1.1.1"
266− resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809"
267−
268−bin-build@^2.2.0:
269− version "2.2.0"
270− resolved "https://registry.yarnpkg.com/bin-build/-/bin-build-2.2.0.tgz#11f8dd61f70ffcfa2bdcaa5b46f5e8fedd4221cc"
271− dependencies:
272− archive-type "^3.0.1"
273− decompress "^3.0.0"
274− download "^4.1.2"
275− exec-series "^1.0.0"
276− rimraf "^2.2.6"
277− tempfile "^1.0.0"
278− url-regex "^3.0.0"
279−
280−bin-check@^2.0.0:
281− version "2.0.0"
282− resolved "https://registry.yarnpkg.com/bin-check/-/bin-check-2.0.0.tgz#86f8e6f4253893df60dc316957f5af02acb05930"
283− dependencies:
284− executable "^1.0.0"
285−
286−bin-version-check@^2.1.0:
287− version "2.1.0"
288− resolved "https://registry.yarnpkg.com/bin-version-check/-/bin-version-check-2.1.0.tgz#e4e5df290b9069f7d111324031efc13fdd11a5b0"
289− dependencies:
290− bin-version "^1.0.0"
291− minimist "^1.1.0"
292− semver "^4.0.3"
293− semver-truncate "^1.0.0"
294−
295−bin-version@^1.0.0:
296− version "1.0.4"
297− resolved "https://registry.yarnpkg.com/bin-version/-/bin-version-1.0.4.tgz#9eb498ee6fd76f7ab9a7c160436f89579435d78e"
298− dependencies:
299− find-versions "^1.0.0"
300−
301−bin-wrapper@^3.0.2:
302− version "3.0.2"
303− resolved "https://registry.yarnpkg.com/bin-wrapper/-/bin-wrapper-3.0.2.tgz#67d3306262e4b1a5f2f88ee23464f6a655677aeb"
304− dependencies:
305− bin-check "^2.0.0"
306− bin-version-check "^2.1.0"
307− download "^4.0.0"
308− each-async "^1.1.1"
309− lazy-req "^1.0.0"
310− os-filter-obj "^1.0.0"
311−
312−binary-extensions@^1.0.0:
313− version "1.8.0"
314− resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.8.0.tgz#48ec8d16df4377eae5fa5884682480af4d95c774"
315−
316−bl@^1.0.0:
317− version "1.2.0"
318− resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.0.tgz#1397e7ec42c5f5dc387470c500e34a9f6be9ea98"
319− dependencies:
320− readable-stream "^2.0.5"
321−
322−block-stream@*:
323− version "0.0.9"
324− resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a"
325− dependencies:
326− inherits "~2.0.0"
327−
328−bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0:
329− version "4.11.6"
330− resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215"
331−
332−boom@2.x.x:
333− version "2.10.1"
334− resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f"
335− dependencies:
336− hoek "2.x.x"
337−
338−bower@^1.8.0:
339− version "1.8.0"
340− resolved "https://registry.yarnpkg.com/bower/-/bower-1.8.0.tgz#55dbebef0ad9155382d9e9d3e497c1372345b44a"
341−
342104brace-expansion@^1.0.0:
343105 version "1.1.6"
344106 resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.6.tgz#7197d7eaa9b87e648390ea61fc66c84427420df9"
@@ -346,154 +108,12 @@ brace-expansion@^1.0.0:
346108 balanced-match "^0.4.1"
347109 concat-map "0.0.1"
348110
349−braces@^1.8.2:
350− version "1.8.5"
351− resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7"
352− dependencies:
353− expand-range "^1.8.1"
354− preserve "^0.2.0"
355− repeat-element "^1.1.2"
356−
357−brorand@^1.0.1:
358− version "1.1.0"
359− resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
360−
361−browser-pack@^6.0.1:
362− version "6.0.2"
363− resolved "https://registry.yarnpkg.com/browser-pack/-/browser-pack-6.0.2.tgz#f86cd6cef4f5300c8e63e07a4d512f65fbff4531"
364− dependencies:
365− JSONStream "^1.0.3"
366− combine-source-map "~0.7.1"
367− defined "^1.0.0"
368− through2 "^2.0.0"
369− umd "^3.0.0"
370−
371−browser-resolve@^1.11.0, browser-resolve@^1.7.0:
111+browser-resolve@^1.11.0:
372112 version "1.11.2"
373113 resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce"
374114 dependencies:
375115 resolve "1.1.7"
376116
377−browserify-aes@^1.0.0, browserify-aes@^1.0.4:
378− version "1.0.6"
379− resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.0.6.tgz#5e7725dbdef1fd5930d4ebab48567ce451c48a0a"
380− dependencies:
381− buffer-xor "^1.0.2"
382− cipher-base "^1.0.0"
383− create-hash "^1.1.0"
384− evp_bytestokey "^1.0.0"
385− inherits "^2.0.1"
386−
387−browserify-cache-api@^3.0.0:
388− version "3.0.1"
389− resolved "https://registry.yarnpkg.com/browserify-cache-api/-/browserify-cache-api-3.0.1.tgz#96247e853f068fd6e0d45cc73f0bb2cd9778ef02"
390− dependencies:
391− async "^1.5.2"
392− through2 "^2.0.0"
393− xtend "^4.0.0"
394−
395−browserify-cipher@^1.0.0:
396− version "1.0.0"
397− resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz#9988244874bf5ed4e28da95666dcd66ac8fc363a"
398− dependencies:
399− browserify-aes "^1.0.4"
400− browserify-des "^1.0.0"
401− evp_bytestokey "^1.0.0"
402−
403−browserify-des@^1.0.0:
404− version "1.0.0"
405− resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz#daa277717470922ed2fe18594118a175439721dd"
406− dependencies:
407− cipher-base "^1.0.1"
408− des.js "^1.0.0"
409− inherits "^2.0.1"
410−
411−browserify-incremental@^3.0.1:
412− version "3.1.1"
413− resolved "https://registry.yarnpkg.com/browserify-incremental/-/browserify-incremental-3.1.1.tgz#0713cb7587247a632a9f08cf1bd169b878b62a8a"
414− dependencies:
415− JSONStream "^0.10.0"
416− browserify-cache-api "^3.0.0"
417− through2 "^2.0.0"
418− xtend "^4.0.0"
419−
420−browserify-rsa@^4.0.0:
421− version "4.0.1"
422− resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524"
423− dependencies:
424− bn.js "^4.1.0"
425− randombytes "^2.0.1"
426−
427−browserify-sign@^4.0.0:
428− version "4.0.0"
429− resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.0.tgz#10773910c3c206d5420a46aad8694f820b85968f"
430− dependencies:
431− bn.js "^4.1.1"
432− browserify-rsa "^4.0.0"
433− create-hash "^1.1.0"
434− create-hmac "^1.1.2"
435− elliptic "^6.0.0"
436− inherits "^2.0.1"
437− parse-asn1 "^5.0.0"
438−
439−browserify-zlib@~0.1.2:
440− version "0.1.4"
441− resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.1.4.tgz#bb35f8a519f600e0fa6b8485241c979d0141fb2d"
442− dependencies:
443− pako "~0.2.0"
444−
445−browserify@^13.1.0:
446− version "13.3.0"
447− resolved "https://registry.yarnpkg.com/browserify/-/browserify-13.3.0.tgz#b5a9c9020243f0c70e4675bec8223bc627e415ce"
448− dependencies:
449− JSONStream "^1.0.3"
450− assert "^1.4.0"
451− browser-pack "^6.0.1"
452− browser-resolve "^1.11.0"
453− browserify-zlib "~0.1.2"
454− buffer "^4.1.0"
455− cached-path-relative "^1.0.0"
456− concat-stream "~1.5.1"
457− console-browserify "^1.1.0"
458− constants-browserify "~1.0.0"
459− crypto-browserify "^3.0.0"
460− defined "^1.0.0"
461− deps-sort "^2.0.0"
462− domain-browser "~1.1.0"
463− duplexer2 "~0.1.2"
464− events "~1.1.0"
465− glob "^7.1.0"
466− has "^1.0.0"
467− htmlescape "^1.1.0"
468− https-browserify "~0.0.0"
469− inherits "~2.0.1"
470− insert-module-globals "^7.0.0"
471− labeled-stream-splicer "^2.0.0"
472− module-deps "^4.0.8"
473− os-browserify "~0.1.1"
474− parents "^1.0.1"
475− path-browserify "~0.0.0"
476− process "~0.11.0"
477− punycode "^1.3.2"
478− querystring-es3 "~0.2.0"
479− read-only-stream "^2.0.0"
480− readable-stream "^2.0.2"
481− resolve "^1.1.4"
482− shasum "^1.0.0"
483− shell-quote "^1.6.1"
484− stream-browserify "^2.0.0"
485− stream-http "^2.0.0"
486− string_decoder "~0.10.0"
487− subarg "^1.0.0"
488− syntax-error "^1.1.1"
489− through2 "^2.0.0"
490− timers-browserify "^1.0.1"
491− tty-browserify "~0.0.0"
492− url "~0.11.0"
493− util "~0.10.1"
494− vm-browserify "~0.0.1"
495− xtend "^4.0.0"
496−
497117buble@^0.15.0:
498118 version "0.15.2"
499119 resolved "https://registry.yarnpkg.com/buble/-/buble-0.15.2.tgz#547fc47483f8e5e8176d82aa5ebccb183b02d613"
@@ -506,53 +126,14 @@ buble@^0.15.0:
506126 minimist "^1.2.0"
507127 os-homedir "^1.0.1"
508128
509−buffer-crc32@~0.2.3:
510− version "0.2.13"
511− resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242"
512−
513129buffer-shims@^1.0.0:
514130 version "1.0.0"
515131 resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51"
516132
517−buffer-to-vinyl@^1.0.0:
518− version "1.1.0"
519− resolved "https://registry.yarnpkg.com/buffer-to-vinyl/-/buffer-to-vinyl-1.1.0.tgz#00f15faee3ab7a1dda2cde6d9121bffdd07b2262"
520− dependencies:
521− file-type "^3.1.0"
522− readable-stream "^2.0.2"
523− uuid "^2.0.1"
524− vinyl "^1.0.0"
525−
526−buffer-xor@^1.0.2:
527− version "1.0.3"
528− resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"
529−
530−buffer@^4.1.0:
531− version "4.9.1"
532− resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298"
533− dependencies:
534− base64-js "^1.0.2"
535− ieee754 "^1.1.4"
536− isarray "^1.0.0"
537−
538−builtin-modules@^1.0.0, builtin-modules@^1.1.0:
133+builtin-modules@^1.1.0:
539134 version "1.1.1"
540135 resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
541136
542−builtin-status-codes@^3.0.0:
543− version "3.0.0"
544− resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
545−
546−cached-path-relative@^1.0.0:
547− version "1.0.1"
548− resolved "https://registry.yarnpkg.com/cached-path-relative/-/cached-path-relative-1.0.1.tgz#d09c4b52800aa4c078e2dd81a869aac90d2e54e7"
549−
550−cachedir@^1.1.0:
551− version "1.1.1"
552− resolved "https://registry.yarnpkg.com/cachedir/-/cachedir-1.1.1.tgz#e1363075ea206a12767d92bb711c8a2f76a10f62"
553− dependencies:
554− os-homedir "^1.0.1"
555−
556137caller-path@^0.1.0:
557138 version "0.1.0"
558139 resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f"
@@ -563,38 +144,10 @@ callsites@^0.2.0:
563144 version "0.2.0"
564145 resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca"
565146
566−camelcase-keys@^2.0.0:
567− version "2.1.0"
568− resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7"
569− dependencies:
570− camelcase "^2.0.0"
571− map-obj "^1.0.0"
572−
573147camelcase@^1.0.2:
574148 version "1.2.1"
575149 resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
576150
577−camelcase@^2.0.0:
578− version "2.1.1"
579− resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f"
580−
581−capture-stack-trace@^1.0.0:
582− version "1.0.0"
583− resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d"
584−
585−caseless@~0.12.0:
586− version "0.12.0"
587− resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
588−
589−caw@^1.0.1:
590− version "1.2.0"
591− resolved "https://registry.yarnpkg.com/caw/-/caw-1.2.0.tgz#ffb226fe7efc547288dc62ee3e97073c212d1034"
592− dependencies:
593− get-proxy "^1.0.1"
594− is-obj "^1.0.0"
595− object-assign "^3.0.0"
596− tunnel-agent "^0.4.0"
597−
598151center-align@^0.1.1:
599152 version "0.1.3"
600153 resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad"
@@ -602,7 +155,7 @@ center-align@^0.1.1:
602155 align-text "^0.1.3"
603156 lazy-cache "^1.0.3"
604157
605−chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3:
158+chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3:
606159 version "1.1.3"
607160 resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
608161 dependencies:
@@ -612,31 +165,6 @@ chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3:
612165 strip-ansi "^3.0.0"
613166 supports-color "^2.0.0"
614167
615−chokidar@^1.4.3:
616− version "1.6.1"
617− resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.6.1.tgz#2f4447ab5e96e50fb3d789fd90d4c72e0e4c70c2"
618− dependencies:
619− anymatch "^1.3.0"
620− async-each "^1.0.0"
621− glob-parent "^2.0.0"
622− inherits "^2.0.1"
623− is-binary-path "^1.0.0"
624− is-glob "^2.0.0"
625− path-is-absolute "^1.0.0"
626− readdirp "^2.0.0"
627− optionalDependencies:
628− fsevents "^1.0.0"
629−
630−ci-info@^1.0.0:
631− version "1.0.0"
632− resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.0.0.tgz#dc5285f2b4e251821683681c381c3388f46ec534"
633−
634−cipher-base@^1.0.0, cipher-base@^1.0.1:
635− version "1.0.3"
636− resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.3.tgz#eeabf194419ce900da3018c207d212f2a6df0a07"
637− dependencies:
638− inherits "^2.0.1"
639−
640168circular-json@^0.3.1:
641169 version "0.3.1"
642170 resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.1.tgz#be8b36aefccde8b3ca7aa2d6afc07a37242c0d2d"
@@ -659,22 +187,6 @@ cliui@^2.1.0:
659187 right-align "^0.1.1"
660188 wordwrap "0.0.2"
661189
662−clone-stats@^0.0.1:
663− version "0.0.1"
664− resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1"
665−
666−clone@^0.2.0:
667− version "0.2.0"
668− resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f"
669−
670−clone@^1.0.0:
671− version "1.0.2"
672− resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149"
673−
674−co@3.1.0:
675− version "3.1.0"
676− resolved "https://registry.yarnpkg.com/co/-/co-3.1.0.tgz#4ea54ea5a08938153185e15210c68d9092bc1b78"
677−
678190co@^4.6.0:
679191 version "4.6.0"
680192 resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
@@ -683,71 +195,11 @@ code-point-at@^1.0.0:
683195 version "1.1.0"
684196 resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
685197
686−colors@>=0.6.0:
687− version "1.1.2"
688− resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63"
689−
690−colors@~0.6.0-1:
691− version "0.6.2"
692− resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc"
693−
694−combine-source-map@~0.7.1:
695− version "0.7.2"
696− resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.7.2.tgz#0870312856b307a87cc4ac486f3a9a62aeccc09e"
697− dependencies:
698− convert-source-map "~1.1.0"
699− inline-source-map "~0.6.0"
700− lodash.memoize "~3.0.3"
701− source-map "~0.5.3"
702−
703−combined-stream@^1.0.5, combined-stream@~1.0.5:
704− version "1.0.5"
705− resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009"
706− dependencies:
707− delayed-stream "~1.0.0"
708−
709−commander@~2.1.0:
710− version "2.1.0"
711− resolved "https://registry.yarnpkg.com/commander/-/commander-2.1.0.tgz#d121bbae860d9992a3d517ba96f56588e47c6781"
712−
713−commander@~2.8.1:
714− version "2.8.1"
715− resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4"
716− dependencies:
717− graceful-readlink ">= 1.0.0"
718−
719−commitizen@^2.9.6:
720− version "2.9.6"
721− resolved "https://registry.yarnpkg.com/commitizen/-/commitizen-2.9.6.tgz#c0d00535ef264da7f63737edfda4228983fa2291"
722− dependencies:
723− cachedir "^1.1.0"
724− chalk "1.1.3"
725− cz-conventional-changelog "1.2.0"
726− dedent "0.6.0"
727− detect-indent "4.0.0"
728− find-node-modules "1.0.4"
729− find-root "1.0.0"
730− fs-extra "^1.0.0"
731− glob "7.1.1"
732− inquirer "1.2.3"
733− lodash "4.17.2"
734− minimist "1.2.0"
735− path-exists "2.1.0"
736− shelljs "0.7.6"
737− strip-json-comments "2.0.1"
738−
739−compare-func@^1.3.1:
740− version "1.3.2"
741− resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-1.3.2.tgz#99dd0ba457e1f9bc722b12c08ec33eeab31fa648"
742− dependencies:
743− array-ify "^1.0.0"
744− dot-prop "^3.0.0"
745−
746198concat-map@0.0.1:
747199 version "0.0.1"
748200 resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
749201
750−concat-stream@^1.4.6, concat-stream@^1.4.7:
202+concat-stream@^1.4.6:
751203 version "1.6.0"
752204 resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7"
753205 dependencies:
@@ -755,563 +207,67 @@ concat-stream@^1.4.6, concat-stream@^1.4.7:
755207 readable-stream "^2.2.2"
756208 typedarray "^0.0.6"
757209
758−concat-stream@~1.5.0, concat-stream@~1.5.1:
759− version "1.5.2"
760− resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.5.2.tgz#708978624d856af41a5a741defdd261da752c266"
761− dependencies:
762− inherits "~2.0.1"
763− readable-stream "~2.0.0"
764− typedarray "~0.0.5"
765−
766−console-browserify@^1.1.0:
767− version "1.1.0"
768− resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10"
769− dependencies:
770− date-now "^0.1.4"
771−
772−console-control-strings@^1.0.0, console-control-strings@~1.1.0:
773− version "1.1.0"
774− resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
210+core-util-is@~1.0.0:
211+ version "1.0.2"
212+ resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
775213
776−console-stream@^0.1.1:
214+d@^0.1.1, d@~0.1.1:
777215 version "0.1.1"
778− resolved "https://registry.yarnpkg.com/console-stream/-/console-stream-0.1.1.tgz#a095fe07b20465955f2fafd28b5d72bccd949d44"
779−
780−constants-browserify@~1.0.0:
781− version "1.0.0"
782− resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
783−
784−conventional-changelog-angular@^1.3.3:
785− version "1.3.3"
786− resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-1.3.3.tgz#e7ce807a85dd4750e1b417f766045497511e0726"
787− dependencies:
788− compare-func "^1.3.1"
789− github-url-from-git "^1.4.0"
790− q "^1.4.1"
791−
792−conventional-changelog-atom@^0.1.0:
793− version "0.1.0"
794− resolved "https://registry.yarnpkg.com/conventional-changelog-atom/-/conventional-changelog-atom-0.1.0.tgz#67a47c66a42b2f8909ef1587c9989ae1de730b92"
216+ resolved "https://registry.yarnpkg.com/d/-/d-0.1.1.tgz#da184c535d18d8ee7ba2aa229b914009fae11309"
795217 dependencies:
796− q "^1.4.1"
218+ es5-ext "~0.10.2"
797219
798−conventional-changelog-cli@^1.3.1:
799− version "1.3.1"
800− resolved "https://registry.yarnpkg.com/conventional-changelog-cli/-/conventional-changelog-cli-1.3.1.tgz#1cd5a9dbae25ffb5ffe67afef1e136eaceefd2d5"
220+debug@^2.1.1:
221+ version "2.6.1"
222+ resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.1.tgz#79855090ba2c4e3115cc7d8769491d58f0491351"
801223 dependencies:
802− add-stream "^1.0.0"
803− conventional-changelog "^1.1.3"
804− lodash "^4.1.0"
805− meow "^3.7.0"
806− tempfile "^1.1.1"
224+ ms "0.7.2"
807225
808−conventional-changelog-codemirror@^0.1.0:
809− version "0.1.0"
810− resolved "https://registry.yarnpkg.com/conventional-changelog-codemirror/-/conventional-changelog-codemirror-0.1.0.tgz#7577a591dbf9b538e7a150a7ee62f65a2872b334"
811− dependencies:
812− q "^1.4.1"
226+decamelize@^1.0.0:
227+ version "1.2.0"
228+ resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
813229
814−conventional-changelog-core@^1.8.0:
815− version "1.8.0"
816− resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-1.8.0.tgz#977848b416caf15fb09f20b12a62d40ef145b957"
817− dependencies:
818− conventional-changelog-writer "^1.1.0"
819− conventional-commits-parser "^1.0.0"
820− dateformat "^1.0.12"
821− get-pkg-repo "^1.0.0"
822− git-raw-commits "^1.2.0"
823− git-remote-origin-url "^2.0.0"
824− git-semver-tags "^1.2.0"
825− lodash "^4.0.0"
826− normalize-package-data "^2.3.5"
827− q "^1.4.1"
828− read-pkg "^1.1.0"
829− read-pkg-up "^1.0.1"
830− through2 "^2.0.0"
831−
832−conventional-changelog-ember@^0.2.5:
833− version "0.2.5"
834− resolved "https://registry.yarnpkg.com/conventional-changelog-ember/-/conventional-changelog-ember-0.2.5.tgz#ce21d5cf83cd5ebe05d23fdf232d8844f4b56a4f"
835− dependencies:
836− q "^1.4.1"
230+deep-is@~0.1.3:
231+ version "0.1.3"
232+ resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
837233
838−conventional-changelog-eslint@^0.1.0:
839− version "0.1.0"
840− resolved "https://registry.yarnpkg.com/conventional-changelog-eslint/-/conventional-changelog-eslint-0.1.0.tgz#a52411e999e0501ce500b856b0a643d0330907e2"
234+del@^2.0.2:
235+ version "2.2.2"
236+ resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8"
841237 dependencies:
842− q "^1.4.1"
238+ globby "^5.0.0"
239+ is-path-cwd "^1.0.0"
240+ is-path-in-cwd "^1.0.0"
241+ object-assign "^4.0.1"
242+ pify "^2.0.0"
243+ pinkie-promise "^2.0.0"
244+ rimraf "^2.2.8"
843245
844−conventional-changelog-express@^0.1.0:
845− version "0.1.0"
846− resolved "https://registry.yarnpkg.com/conventional-changelog-express/-/conventional-changelog-express-0.1.0.tgz#55c6c841c811962036c037bdbd964a54ae310fce"
246+doctrine@^1.2.2:
247+ version "1.5.0"
248+ resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
847249 dependencies:
848− q "^1.4.1"
250+ esutils "^2.0.2"
251+ isarray "^1.0.0"
849252
850−conventional-changelog-jquery@^0.1.0:
851− version "0.1.0"
852− resolved "https://registry.yarnpkg.com/conventional-changelog-jquery/-/conventional-changelog-jquery-0.1.0.tgz#0208397162e3846986e71273b6c79c5b5f80f510"
253+es5-ext@^0.10.7, es5-ext@^0.10.8, es5-ext@~0.10.11, es5-ext@~0.10.2, es5-ext@~0.10.7:
254+ version "0.10.12"
255+ resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.12.tgz#aa84641d4db76b62abba5e45fd805ecbab140047"
853256 dependencies:
854− q "^1.4.1"
257+ es6-iterator "2"
258+ es6-symbol "~3.1"
855259
856−conventional-changelog-jscs@^0.1.0:
857− version "0.1.0"
858− resolved "https://registry.yarnpkg.com/conventional-changelog-jscs/-/conventional-changelog-jscs-0.1.0.tgz#0479eb443cc7d72c58bf0bcf0ef1d444a92f0e5c"
260+es6-iterator@2:
261+ version "2.0.0"
262+ resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.0.tgz#bd968567d61635e33c0b80727613c9cb4b096bac"
859263 dependencies:
860− q "^1.4.1"
264+ d "^0.1.1"
265+ es5-ext "^0.10.7"
266+ es6-symbol "3"
861267
862−conventional-changelog-jshint@^0.1.0:
863− version "0.1.0"
864− resolved "https://registry.yarnpkg.com/conventional-changelog-jshint/-/conventional-changelog-jshint-0.1.0.tgz#00cab8e9a3317487abd94c4d84671342918d2a07"
865− dependencies:
866− compare-func "^1.3.1"
867− q "^1.4.1"
868−
869−conventional-changelog-writer@^1.1.0:
870− version "1.4.1"
871− resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-1.4.1.tgz#3f4cb4d003ebb56989d30d345893b52a43639c8e"
872− dependencies:
873− compare-func "^1.3.1"
874− conventional-commits-filter "^1.0.0"
875− dateformat "^1.0.11"
876− handlebars "^4.0.2"
877− json-stringify-safe "^5.0.1"
878− lodash "^4.0.0"
879− meow "^3.3.0"
880− semver "^5.0.1"
881− split "^1.0.0"
882− through2 "^2.0.0"
883−
884−conventional-changelog@^1.1.3:
885− version "1.1.3"
886− resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-1.1.3.tgz#26283078ac38c094df2af1604b0a46bbc0165c4d"
887− dependencies:
888− conventional-changelog-angular "^1.3.3"
889− conventional-changelog-atom "^0.1.0"
890− conventional-changelog-codemirror "^0.1.0"
891− conventional-changelog-core "^1.8.0"
892− conventional-changelog-ember "^0.2.5"
893− conventional-changelog-eslint "^0.1.0"
894− conventional-changelog-express "^0.1.0"
895− conventional-changelog-jquery "^0.1.0"
896− conventional-changelog-jscs "^0.1.0"
897− conventional-changelog-jshint "^0.1.0"
898−
899−conventional-commit-types@^2.0.0:
900− version "2.1.0"
901− resolved "https://registry.yarnpkg.com/conventional-commit-types/-/conventional-commit-types-2.1.0.tgz#45d860386c9a2e6537ee91d8a1b61bd0411b3d04"
902−
903−conventional-commits-filter@^1.0.0:
904− version "1.0.0"
905− resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-1.0.0.tgz#6fc2a659372bc3f2339cf9ffff7e1b0344b93039"
906− dependencies:
907− is-subset "^0.1.1"
908− modify-values "^1.0.0"
909−
910−conventional-commits-parser@^1.0.0:
911− version "1.3.0"
912− resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-1.3.0.tgz#e327b53194e1a7ad5dc63479ee9099a52b024865"
913− dependencies:
914− JSONStream "^1.0.4"
915− is-text-path "^1.0.0"
916− lodash "^4.2.1"
917− meow "^3.3.0"
918− split2 "^2.0.0"
919− through2 "^2.0.0"
920− trim-off-newlines "^1.0.0"
921−
922−convert-source-map@^1.1.1, convert-source-map@~1.1.0:
923− version "1.1.3"
924− resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.1.3.tgz#4829c877e9fe49b3161f3bf3673888e204699860"
925−
926−core-util-is@~1.0.0:
927− version "1.0.2"
928− resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
929−
930−create-ecdh@^4.0.0:
931− version "4.0.0"
932− resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d"
933− dependencies:
934− bn.js "^4.1.0"
935− elliptic "^6.0.0"
936−
937−create-error-class@^3.0.1:
938− version "3.0.2"
939− resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6"
940− dependencies:
941− capture-stack-trace "^1.0.0"
942−
943−create-hash@^1.1.0, create-hash@^1.1.1:
944− version "1.1.2"
945− resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.2.tgz#51210062d7bb7479f6c65bb41a92208b1d61abad"
946− dependencies:
947− cipher-base "^1.0.1"
948− inherits "^2.0.1"
949− ripemd160 "^1.0.0"
950− sha.js "^2.3.6"
951−
952−create-hmac@^1.1.0, create-hmac@^1.1.2:
953− version "1.1.4"
954− resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.4.tgz#d3fb4ba253eb8b3f56e39ea2fbcb8af747bd3170"
955− dependencies:
956− create-hash "^1.1.0"
957− inherits "^2.0.1"
958−
959−cryptiles@2.x.x:
960− version "2.0.5"
961− resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8"
962− dependencies:
963− boom "2.x.x"
964−
965−crypto-browserify@^3.0.0:
966− version "3.11.0"
967− resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.11.0.tgz#3652a0906ab9b2a7e0c3ce66a408e957a2485522"
968− dependencies:
969− browserify-cipher "^1.0.0"
970− browserify-sign "^4.0.0"
971− create-ecdh "^4.0.0"
972− create-hash "^1.1.0"
973− create-hmac "^1.1.0"
974− diffie-hellman "^5.0.0"
975− inherits "^2.0.1"
976− pbkdf2 "^3.0.3"
977− public-encrypt "^4.0.0"
978− randombytes "^2.0.0"
979−
980−currently-unhandled@^0.4.1:
981− version "0.4.1"
982− resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
983− dependencies:
984− array-find-index "^1.0.1"
985−
986−cz-conventional-changelog@1.2.0:
987− version "1.2.0"
988− resolved "https://registry.yarnpkg.com/cz-conventional-changelog/-/cz-conventional-changelog-1.2.0.tgz#2bca04964c8919b23f3fd6a89ef5e6008b31b3f8"
989− dependencies:
990− conventional-commit-types "^2.0.0"
991− lodash.map "^4.5.1"
992− longest "^1.0.1"
993− pad-right "^0.2.2"
994− right-pad "^1.0.1"
995− word-wrap "^1.0.3"
996−
997−cz-conventional-changelog@^2.0.0:
998− version "2.0.0"
999− resolved "https://registry.yarnpkg.com/cz-conventional-changelog/-/cz-conventional-changelog-2.0.0.tgz#55a979afdfe95e7024879d2a0f5924630170b533"
1000− dependencies:
1001− conventional-commit-types "^2.0.0"
1002− lodash.map "^4.5.1"
1003− longest "^1.0.1"
1004− pad-right "^0.2.2"
1005− right-pad "^1.0.1"
1006− word-wrap "^1.0.3"
1007−
1008−d@^0.1.1, d@~0.1.1:
1009− version "0.1.1"
1010− resolved "https://registry.yarnpkg.com/d/-/d-0.1.1.tgz#da184c535d18d8ee7ba2aa229b914009fae11309"
1011− dependencies:
1012− es5-ext "~0.10.2"
1013−
1014−dargs@^4.0.1:
1015− version "4.1.0"
1016− resolved "https://registry.yarnpkg.com/dargs/-/dargs-4.1.0.tgz#03a9dbb4b5c2f139bf14ae53f0b8a2a6a86f4e17"
1017− dependencies:
1018− number-is-nan "^1.0.0"
1019−
1020−dashdash@^1.12.0:
1021− version "1.14.1"
1022− resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
1023− dependencies:
1024− assert-plus "^1.0.0"
1025−
1026−date-now@^0.1.4:
1027− version "0.1.4"
1028− resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
1029−
1030−dateformat@^1.0.11, dateformat@^1.0.12:
1031− version "1.0.12"
1032− resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.12.tgz#9f124b67594c937ff706932e4a642cca8dbbfee9"
1033− dependencies:
1034− get-stdin "^4.0.1"
1035− meow "^3.3.0"
1036−
1037−dateformat@^2.0.0:
1038− version "2.0.0"
1039− resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17"
1040−
1041−debug@^2.1.1:
1042− version "2.6.1"
1043− resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.1.tgz#79855090ba2c4e3115cc7d8769491d58f0491351"
1044− dependencies:
1045− ms "0.7.2"
1046−
1047−debug@~2.2.0:
1048− version "2.2.0"
1049− resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
1050− dependencies:
1051− ms "0.7.1"
1052−
1053−decamelize@^1.0.0, decamelize@^1.1.2:
1054− version "1.2.0"
1055− resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
1056−
1057−decompress-tar@^3.0.0:
1058− version "3.1.0"
1059− resolved "https://registry.yarnpkg.com/decompress-tar/-/decompress-tar-3.1.0.tgz#217c789f9b94450efaadc5c5e537978fc333c466"
1060− dependencies:
1061− is-tar "^1.0.0"
1062− object-assign "^2.0.0"
1063− strip-dirs "^1.0.0"
1064− tar-stream "^1.1.1"
1065− through2 "^0.6.1"
1066− vinyl "^0.4.3"
1067−
1068−decompress-tarbz2@^3.0.0:
1069− version "3.1.0"
1070− resolved "https://registry.yarnpkg.com/decompress-tarbz2/-/decompress-tarbz2-3.1.0.tgz#8b23935681355f9f189d87256a0f8bdd96d9666d"
1071− dependencies:
1072− is-bzip2 "^1.0.0"
1073− object-assign "^2.0.0"
1074− seek-bzip "^1.0.3"
1075− strip-dirs "^1.0.0"
1076− tar-stream "^1.1.1"
1077− through2 "^0.6.1"
1078− vinyl "^0.4.3"
1079−
1080−decompress-targz@^3.0.0:
1081− version "3.1.0"
1082− resolved "https://registry.yarnpkg.com/decompress-targz/-/decompress-targz-3.1.0.tgz#b2c13df98166268991b715d6447f642e9696f5a0"
1083− dependencies:
1084− is-gzip "^1.0.0"
1085− object-assign "^2.0.0"
1086− strip-dirs "^1.0.0"
1087− tar-stream "^1.1.1"
1088− through2 "^0.6.1"
1089− vinyl "^0.4.3"
1090−
1091−decompress-unzip@^3.0.0:
1092− version "3.4.0"
1093− resolved "https://registry.yarnpkg.com/decompress-unzip/-/decompress-unzip-3.4.0.tgz#61475b4152066bbe3fee12f9d629d15fe6478eeb"
1094− dependencies:
1095− is-zip "^1.0.0"
1096− read-all-stream "^3.0.0"
1097− stat-mode "^0.2.0"
1098− strip-dirs "^1.0.0"
1099− through2 "^2.0.0"
1100− vinyl "^1.0.0"
1101− yauzl "^2.2.1"
1102−
1103−decompress@^3.0.0:
1104− version "3.0.0"
1105− resolved "https://registry.yarnpkg.com/decompress/-/decompress-3.0.0.tgz#af1dd50d06e3bfc432461d37de11b38c0d991bed"
1106− dependencies:
1107− buffer-to-vinyl "^1.0.0"
1108− concat-stream "^1.4.6"
1109− decompress-tar "^3.0.0"
1110− decompress-tarbz2 "^3.0.0"
1111− decompress-targz "^3.0.0"
1112− decompress-unzip "^3.0.0"
1113− stream-combiner2 "^1.1.1"
1114− vinyl-assign "^1.0.1"
1115− vinyl-fs "^2.2.0"
1116−
1117−dedent@0.6.0:
1118− version "0.6.0"
1119− resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.6.0.tgz#0e6da8f0ce52838ef5cec5c8f9396b0c1b64a3cb"
1120−
1121−deep-extend@~0.4.0:
1122− version "0.4.1"
1123− resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253"
1124−
1125−deep-is@~0.1.3:
1126− version "0.1.3"
1127− resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
1128−
1129−defined@^1.0.0:
1130− version "1.0.0"
1131− resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693"
1132−
1133−del@^2.0.2:
1134− version "2.2.2"
1135− resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8"
1136− dependencies:
1137− globby "^5.0.0"
1138− is-path-cwd "^1.0.0"
1139− is-path-in-cwd "^1.0.0"
1140− object-assign "^4.0.1"
1141− pify "^2.0.0"
1142− pinkie-promise "^2.0.0"
1143− rimraf "^2.2.8"
1144−
1145−delayed-stream@~1.0.0:
1146− version "1.0.0"
1147− resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
1148−
1149−delegates@^1.0.0:
1150− version "1.0.0"
1151− resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
1152−
1153−deps-sort@^2.0.0:
1154− version "2.0.0"
1155− resolved "https://registry.yarnpkg.com/deps-sort/-/deps-sort-2.0.0.tgz#091724902e84658260eb910748cccd1af6e21fb5"
1156− dependencies:
1157− JSONStream "^1.0.3"
1158− shasum "^1.0.0"
1159− subarg "^1.0.0"
1160− through2 "^2.0.0"
1161−
1162−des.js@^1.0.0:
1163− version "1.0.0"
1164− resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc"
1165− dependencies:
1166− inherits "^2.0.1"
1167− minimalistic-assert "^1.0.0"
1168−
1169−detect-file@^0.1.0:
1170− version "0.1.0"
1171− resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-0.1.0.tgz#4935dedfd9488648e006b0129566e9386711ea63"
1172− dependencies:
1173− fs-exists-sync "^0.1.0"
1174−
1175−detect-indent@4.0.0:
1176− version "4.0.0"
1177− resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208"
1178− dependencies:
1179− repeating "^2.0.0"
1180−
1181−detective@^4.0.0:
1182− version "4.5.0"
1183− resolved "https://registry.yarnpkg.com/detective/-/detective-4.5.0.tgz#6e5a8c6b26e6c7a254b1c6b6d7490d98ec91edd1"
1184− dependencies:
1185− acorn "^4.0.3"
1186− defined "^1.0.0"
1187−
1188−diffie-hellman@^5.0.0:
1189− version "5.0.2"
1190− resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e"
1191− dependencies:
1192− bn.js "^4.1.0"
1193− miller-rabin "^4.0.0"
1194− randombytes "^2.0.0"
1195−
1196−doctrine@^1.2.2:
1197− version "1.5.0"
1198− resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
1199− dependencies:
1200− esutils "^2.0.2"
1201− isarray "^1.0.0"
1202−
1203−domain-browser@~1.1.0:
1204− version "1.1.7"
1205− resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc"
1206−
1207−dot-prop@^3.0.0:
1208− version "3.0.0"
1209− resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177"
1210− dependencies:
1211− is-obj "^1.0.0"
1212−
1213−download@^4.0.0, download@^4.1.2:
1214− version "4.4.3"
1215− resolved "https://registry.yarnpkg.com/download/-/download-4.4.3.tgz#aa55fdad392d95d4b68e8c2be03e0c2aa21ba9ac"
1216− dependencies:
1217− caw "^1.0.1"
1218− concat-stream "^1.4.7"
1219− each-async "^1.0.0"
1220− filenamify "^1.0.1"
1221− got "^5.0.0"
1222− gulp-decompress "^1.2.0"
1223− gulp-rename "^1.2.0"
1224− is-url "^1.2.0"
1225− object-assign "^4.0.1"
1226− read-all-stream "^3.0.0"
1227− readable-stream "^2.0.2"
1228− stream-combiner2 "^1.1.1"
1229− vinyl "^1.0.0"
1230− vinyl-fs "^2.2.0"
1231− ware "^1.2.0"
1232−
1233−duplexer2@0.0.2:
1234− version "0.0.2"
1235− resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db"
1236− dependencies:
1237− readable-stream "~1.1.9"
1238−
1239−duplexer2@^0.1.2, duplexer2@^0.1.4, duplexer2@~0.1.0, duplexer2@~0.1.2:
1240− version "0.1.4"
1241− resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1"
1242− dependencies:
1243− readable-stream "^2.0.2"
1244−
1245−duplexify@^3.2.0:
1246− version "3.5.0"
1247− resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.0.tgz#1aa773002e1578457e9d9d4a50b0ccaaebcbd604"
1248− dependencies:
1249− end-of-stream "1.0.0"
1250− inherits "^2.0.1"
1251− readable-stream "^2.0.0"
1252− stream-shift "^1.0.0"
1253−
1254−each-async@^1.0.0, each-async@^1.1.1:
1255− version "1.1.1"
1256− resolved "https://registry.yarnpkg.com/each-async/-/each-async-1.1.1.tgz#dee5229bdf0ab6ba2012a395e1b869abf8813473"
1257− dependencies:
1258− onetime "^1.0.0"
1259− set-immediate-shim "^1.0.0"
1260−
1261−ecc-jsbn@~0.1.1:
1262− version "0.1.1"
1263− resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505"
1264− dependencies:
1265− jsbn "~0.1.0"
1266−
1267−elliptic@^6.0.0:
1268− version "6.4.0"
1269− resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df"
1270− dependencies:
1271− bn.js "^4.4.0"
1272− brorand "^1.0.1"
1273− hash.js "^1.0.0"
1274− hmac-drbg "^1.0.0"
1275− inherits "^2.0.1"
1276− minimalistic-assert "^1.0.0"
1277− minimalistic-crypto-utils "^1.0.0"
1278−
1279−end-of-stream@1.0.0:
1280− version "1.0.0"
1281− resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.0.0.tgz#d4596e702734a93e40e9af864319eabd99ff2f0e"
1282− dependencies:
1283− once "~1.3.0"
1284−
1285−end-of-stream@^1.0.0:
1286− version "1.2.0"
1287− resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.2.0.tgz#bce82685eab6262e2a780ae740e6334027c01622"
1288− dependencies:
1289− once "~1.3.0"
1290−
1291−error-ex@^1.2.0:
1292− version "1.3.1"
1293− resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc"
1294− dependencies:
1295− is-arrayish "^0.2.1"
1296−
1297−es5-ext@^0.10.7, es5-ext@^0.10.8, es5-ext@~0.10.11, es5-ext@~0.10.2, es5-ext@~0.10.7:
1298− version "0.10.12"
1299− resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.12.tgz#aa84641d4db76b62abba5e45fd805ecbab140047"
1300− dependencies:
1301− es6-iterator "2"
1302− es6-symbol "~3.1"
1303−
1304−es6-iterator@2:
1305− version "2.0.0"
1306− resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.0.tgz#bd968567d61635e33c0b80727613c9cb4b096bac"
1307− dependencies:
1308− d "^0.1.1"
1309− es5-ext "^0.10.7"
1310− es6-symbol "3"
1311−
1312−es6-map@^0.1.3:
1313− version "0.1.4"
1314− resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.4.tgz#a34b147be224773a4d7da8072794cefa3632b897"
268+es6-map@^0.1.3:
269+ version "0.1.4"
270+ resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.4.tgz#a34b147be224773a4d7da8072794cefa3632b897"
1315271 dependencies:
1316272 d "~0.1.1"
1317273 es5-ext "~0.10.11"
@@ -1459,96 +415,14 @@ event-emitter@~0.3.4:
1459415 d "~0.1.1"
1460416 es5-ext "~0.10.7"
1461417
1462−events@~1.1.0:
1463− version "1.1.1"
1464− resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924"
1465−
1466−evp_bytestokey@^1.0.0:
1467− version "1.0.0"
1468− resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz#497b66ad9fef65cd7c08a6180824ba1476b66e53"
1469− dependencies:
1470− create-hash "^1.1.1"
1471−
1472−exec-series@^1.0.0:
1473− version "1.0.3"
1474− resolved "https://registry.yarnpkg.com/exec-series/-/exec-series-1.0.3.tgz#6d257a9beac482a872c7783bc8615839fc77143a"
1475− dependencies:
1476− async-each-series "^1.1.0"
1477− object-assign "^4.1.0"
1478−
1479−executable@^1.0.0:
1480− version "1.1.0"
1481− resolved "https://registry.yarnpkg.com/executable/-/executable-1.1.0.tgz#877980e9112f3391066da37265de7ad8434ab4d9"
1482− dependencies:
1483− meow "^3.1.0"
1484−
1485418exit-hook@^1.0.0:
1486419 version "1.1.1"
1487420 resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8"
1488421
1489−expand-brackets@^0.1.4:
1490− version "0.1.5"
1491− resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b"
1492− dependencies:
1493− is-posix-bracket "^0.1.0"
1494−
1495−expand-range@^1.8.1:
1496− version "1.8.2"
1497− resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337"
1498− dependencies:
1499− fill-range "^2.1.0"
1500−
1501−expand-tilde@^1.2.2:
1502− version "1.2.2"
1503− resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-1.2.2.tgz#0b81eba897e5a3d31d1c3d102f8f01441e559449"
1504− dependencies:
1505− os-homedir "^1.0.1"
1506−
1507−extend-shallow@^2.0.1:
1508− version "2.0.1"
1509− resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
1510− dependencies:
1511− is-extendable "^0.1.0"
1512−
1513−extend@^3.0.0, extend@~3.0.0:
1514− version "3.0.0"
1515− resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4"
1516−
1517−external-editor@^1.1.0:
1518− version "1.1.1"
1519− resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-1.1.1.tgz#12d7b0db850f7ff7e7081baf4005700060c4600b"
1520− dependencies:
1521− extend "^3.0.0"
1522− spawn-sync "^1.0.15"
1523− tmp "^0.0.29"
1524−
1525−extglob@^0.3.1:
1526− version "0.3.2"
1527− resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1"
1528− dependencies:
1529− is-extglob "^1.0.0"
1530−
1531−extsprintf@1.0.2:
1532− version "1.0.2"
1533− resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550"
1534−
1535−fancy-log@^1.1.0:
1536− version "1.3.0"
1537− resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.0.tgz#45be17d02bb9917d60ccffd4995c999e6c8c9948"
1538− dependencies:
1539− chalk "^1.1.1"
1540− time-stamp "^1.0.0"
1541−
1542422fast-levenshtein@~2.0.4:
1543423 version "2.0.6"
1544424 resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
1545425
1546−fd-slicer@~1.0.1:
1547− version "1.0.1"
1548− resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65"
1549− dependencies:
1550− pend "~1.2.0"
1551−
1552426figures@^1.3.5:
1553427 version "1.7.0"
1554428 resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e"
@@ -1563,87 +437,6 @@ file-entry-cache@^2.0.0:
1563437 flat-cache "^1.2.1"
1564438 object-assign "^4.0.1"
1565439
1566−file-type@^3.1.0:
1567− version "3.9.0"
1568− resolved "https://registry.yarnpkg.com/file-type/-/file-type-3.9.0.tgz#257a078384d1db8087bc449d107d52a52672b9e9"
1569−
1570−filename-regex@^2.0.0:
1571− version "2.0.0"
1572− resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.0.tgz#996e3e80479b98b9897f15a8a58b3d084e926775"
1573−
1574−filename-reserved-regex@^1.0.0:
1575− version "1.0.0"
1576− resolved "https://registry.yarnpkg.com/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz#e61cf805f0de1c984567d0386dc5df50ee5af7e4"
1577−
1578−filenamify@^1.0.1:
1579− version "1.2.1"
1580− resolved "https://registry.yarnpkg.com/filenamify/-/filenamify-1.2.1.tgz#a9f2ffd11c503bed300015029272378f1f1365a5"
1581− dependencies:
1582− filename-reserved-regex "^1.0.0"
1583− strip-outer "^1.0.0"
1584− trim-repeated "^1.0.0"
1585−
1586−fill-range@^2.1.0:
1587− version "2.2.3"
1588− resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723"
1589− dependencies:
1590− is-number "^2.1.0"
1591− isobject "^2.0.0"
1592− randomatic "^1.1.3"
1593− repeat-element "^1.1.2"
1594− repeat-string "^1.5.2"
1595−
1596−find-node-modules@1.0.4:
1597− version "1.0.4"
1598− resolved "https://registry.yarnpkg.com/find-node-modules/-/find-node-modules-1.0.4.tgz#b6deb3cccb699c87037677bcede2c5f5862b2550"
1599− dependencies:
1600− findup-sync "0.4.2"
1601− merge "^1.2.0"
1602−
1603−find-parent-dir@^0.3.0:
1604− version "0.3.0"
1605− resolved "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz#33c44b429ab2b2f0646299c5f9f718f376ff8d54"
1606−
1607−find-root@1.0.0:
1608− version "1.0.0"
1609− resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.0.0.tgz#962ff211aab25c6520feeeb8d6287f8f6e95807a"
1610−
1611−find-up@^1.0.0:
1612− version "1.1.2"
1613− resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
1614− dependencies:
1615− path-exists "^2.0.0"
1616− pinkie-promise "^2.0.0"
1617−
1618−find-versions@^1.0.0:
1619− version "1.2.1"
1620− resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-1.2.1.tgz#cbde9f12e38575a0af1be1b9a2c5d5fd8f186b62"
1621− dependencies:
1622− array-uniq "^1.0.0"
1623− get-stdin "^4.0.1"
1624− meow "^3.5.0"
1625− semver-regex "^1.0.0"
1626−
1627−findup-sync@0.4.2:
1628− version "0.4.2"
1629− resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.4.2.tgz#a8117d0f73124f5a4546839579fe52d7129fb5e5"
1630− dependencies:
1631− detect-file "^0.1.0"
1632− is-glob "^2.0.1"
1633− micromatch "^2.3.7"
1634− resolve-dir "^0.1.0"
1635−
1636−findup@0.1.5:
1637− version "0.1.5"
1638− resolved "https://registry.yarnpkg.com/findup/-/findup-0.1.5.tgz#8ad929a3393bac627957a7e5de4623b06b0e2ceb"
1639− dependencies:
1640− colors "~0.6.0-1"
1641− commander "~2.1.0"
1642−
1643−first-chunk-stream@^1.0.0:
1644− version "1.0.0"
1645− resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e"
1646−
1647440flat-cache@^1.2.1:
1648441 version "1.2.2"
1649442 resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96"
@@ -1660,88 +453,13 @@ flow-remove-types@^1.1.0:
1660453 babylon "^6.15.0"
1661454 vlq "^0.2.1"
1662455
1663−for-in@^1.0.1:
1664− version "1.0.2"
1665− resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
1666−
1667−for-own@^0.1.4:
1668− version "0.1.5"
1669− resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce"
1670− dependencies:
1671− for-in "^1.0.1"
456+fs.realpath@^1.0.0:
457+ version "1.0.0"
458+ resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
1672459
1673−forever-agent@~0.6.1:
1674− version "0.6.1"
1675− resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
1676−
1677−form-data@~2.1.1:
1678− version "2.1.2"
1679− resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.2.tgz#89c3534008b97eada4cbb157d58f6f5df025eae4"
1680− dependencies:
1681− asynckit "^0.4.0"
1682− combined-stream "^1.0.5"
1683− mime-types "^2.1.12"
1684−
1685−fs-exists-sync@^0.1.0:
1686− version "0.1.0"
1687− resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add"
1688−
1689−fs-extra@^1.0.0:
1690− version "1.0.0"
1691− resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-1.0.0.tgz#cd3ce5f7e7cb6145883fcae3191e9877f8587950"
1692− dependencies:
1693− graceful-fs "^4.1.2"
1694− jsonfile "^2.1.0"
1695− klaw "^1.0.0"
1696−
1697−fs.realpath@^1.0.0:
1698− version "1.0.0"
1699− resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
1700−
1701−fsevents@^1.0.0:
1702− version "1.1.1"
1703− resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.1.tgz#f19fd28f43eeaf761680e519a203c4d0b3d31aff"
1704− dependencies:
1705− nan "^2.3.0"
1706− node-pre-gyp "^0.6.29"
1707−
1708−fstream-ignore@~1.0.5:
1709− version "1.0.5"
1710− resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105"
1711− dependencies:
1712− fstream "^1.0.0"
1713− inherits "2"
1714− minimatch "^3.0.0"
1715−
1716−fstream@^1.0.0, fstream@^1.0.2, fstream@~1.0.10:
1717− version "1.0.11"
1718− resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171"
1719− dependencies:
1720− graceful-fs "^4.1.2"
1721− inherits "~2.0.0"
1722− mkdirp ">=0.5 0"
1723− rimraf "2"
1724−
1725−function-bind@^1.0.2:
1726− version "1.1.0"
1727− resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771"
1728−
1729−gauge@~2.7.1:
1730− version "2.7.3"
1731− resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.3.tgz#1c23855f962f17b3ad3d0dc7443f304542edfe09"
1732− dependencies:
1733− aproba "^1.0.3"
1734− console-control-strings "^1.0.0"
1735− has-unicode "^2.0.0"
1736− object-assign "^4.1.0"
1737− signal-exit "^3.0.0"
1738− string-width "^1.0.1"
1739− strip-ansi "^3.0.1"
1740− wide-align "^1.1.0"
1741−
1742−generate-function@^2.0.0:
1743− version "2.0.0"
1744− resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74"
460+generate-function@^2.0.0:
461+ version "2.0.0"
462+ resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74"
1745463
1746464generate-object-property@^1.1.0:
1747465 version "1.2.0"
@@ -1749,100 +467,7 @@ generate-object-property@^1.1.0:
1749467 dependencies:
1750468 is-property "^1.0.0"
1751469
1752−get-pkg-repo@^1.0.0:
1753− version "1.3.0"
1754− resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-1.3.0.tgz#43c6b4c048b75dd604fc5388edecde557f6335df"
1755− dependencies:
1756− hosted-git-info "^2.1.4"
1757− meow "^3.3.0"
1758− normalize-package-data "^2.3.0"
1759− parse-github-repo-url "^1.3.0"
1760− through2 "^2.0.0"
1761−
1762−get-proxy@^1.0.1:
1763− version "1.1.0"
1764− resolved "https://registry.yarnpkg.com/get-proxy/-/get-proxy-1.1.0.tgz#894854491bc591b0f147d7ae570f5c678b7256eb"
1765− dependencies:
1766− rc "^1.1.2"
1767−
1768−get-stdin@^4.0.1:
1769− version "4.0.1"
1770− resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
1771−
1772−getpass@^0.1.1:
1773− version "0.1.6"
1774− resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.6.tgz#283ffd9fc1256840875311c1b60e8c40187110e6"
1775− dependencies:
1776− assert-plus "^1.0.0"
1777−
1778−git-raw-commits@^1.2.0:
1779− version "1.2.0"
1780− resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-1.2.0.tgz#0f3a8bfd99ae0f2d8b9224d58892975e9a52d03c"
1781− dependencies:
1782− dargs "^4.0.1"
1783− lodash.template "^4.0.2"
1784− meow "^3.3.0"
1785− split2 "^2.0.0"
1786− through2 "^2.0.0"
1787−
1788−git-remote-origin-url@^2.0.0:
1789− version "2.0.0"
1790− resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f"
1791− dependencies:
1792− gitconfiglocal "^1.0.0"
1793− pify "^2.3.0"
1794−
1795−git-semver-tags@^1.2.0:
1796− version "1.2.0"
1797− resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-1.2.0.tgz#b31fd02c8ab578bd6c9b5cacca5e1c64c1177ac1"
1798− dependencies:
1799− meow "^3.3.0"
1800− semver "^5.0.1"
1801−
1802−gitconfiglocal@^1.0.0:
1803− version "1.0.0"
1804− resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b"
1805− dependencies:
1806− ini "^1.3.2"
1807−
1808−github-url-from-git@^1.4.0:
1809− version "1.5.0"
1810− resolved "https://registry.yarnpkg.com/github-url-from-git/-/github-url-from-git-1.5.0.tgz#f985fedcc0a9aa579dc88d7aff068d55cc6251a0"
1811−
1812−glob-base@^0.3.0:
1813− version "0.3.0"
1814− resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4"
1815− dependencies:
1816− glob-parent "^2.0.0"
1817− is-glob "^2.0.0"
1818−
1819−glob-parent@^2.0.0:
1820− version "2.0.0"
1821− resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28"
1822− dependencies:
1823− is-glob "^2.0.0"
1824−
1825−glob-parent@^3.0.0:
1826− version "3.1.0"
1827− resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
1828− dependencies:
1829− is-glob "^3.1.0"
1830− path-dirname "^1.0.0"
1831−
1832−glob-stream@^5.3.2:
1833− version "5.3.5"
1834− resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-5.3.5.tgz#a55665a9a8ccdc41915a87c701e32d4e016fad22"
1835− dependencies:
1836− extend "^3.0.0"
1837− glob "^5.0.3"
1838− glob-parent "^3.0.0"
1839− micromatch "^2.3.7"
1840− ordered-read-streams "^0.3.0"
1841− through2 "^0.6.0"
1842− to-absolute-glob "^0.1.1"
1843− unique-stream "^2.0.2"
1844−
1845−glob@7.1.1, glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.0, glob@^7.1.1:
470+glob@^7.0.0, glob@^7.0.3, glob@^7.0.5:
1846471 version "7.1.1"
1847472 resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8"
1848473 dependencies:
@@ -1853,32 +478,6 @@ glob@7.1.1, glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.0, glob@^7.1.1:
1853478 once "^1.3.0"
1854479 path-is-absolute "^1.0.0"
1855480
1856−glob@^5.0.3:
1857− version "5.0.15"
1858− resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1"
1859− dependencies:
1860− inflight "^1.0.4"
1861− inherits "2"
1862− minimatch "2 || 3"
1863− once "^1.3.0"
1864− path-is-absolute "^1.0.0"
1865−
1866−global-modules@^0.2.3:
1867− version "0.2.3"
1868− resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-0.2.3.tgz#ea5a3bed42c6d6ce995a4f8a1269b5dae223828d"
1869− dependencies:
1870− global-prefix "^0.1.4"
1871− is-windows "^0.2.0"
1872−
1873−global-prefix@^0.1.4:
1874− version "0.1.5"
1875− resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.5.tgz#8d3bc6b8da3ca8112a160d8d496ff0462bfef78f"
1876− dependencies:
1877− homedir-polyfill "^1.0.0"
1878− ini "^1.3.4"
1879− is-windows "^0.2.0"
1880− which "^1.2.12"
1881−
1882481globals@^9.14.0:
1883482 version "9.16.0"
1884483 resolved "https://registry.yarnpkg.com/globals/-/globals-9.16.0.tgz#63e903658171ec2d9f51b1d31de5e2b8dc01fb80"
@@ -1894,201 +493,16 @@ globby@^5.0.0:
1894493 pify "^2.0.0"
1895494 pinkie-promise "^2.0.0"
1896495
1897−glogg@^1.0.0:
1898− version "1.0.0"
1899− resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.0.tgz#7fe0f199f57ac906cf512feead8f90ee4a284fc5"
1900− dependencies:
1901− sparkles "^1.0.0"
1902−
1903−got@^5.0.0:
1904− version "5.7.1"
1905− resolved "https://registry.yarnpkg.com/got/-/got-5.7.1.tgz#5f81635a61e4a6589f180569ea4e381680a51f35"
1906− dependencies:
1907− create-error-class "^3.0.1"
1908− duplexer2 "^0.1.4"
1909− is-redirect "^1.0.0"
1910− is-retry-allowed "^1.0.0"
1911− is-stream "^1.0.0"
1912− lowercase-keys "^1.0.0"
1913− node-status-codes "^1.0.0"
1914− object-assign "^4.0.1"
1915− parse-json "^2.1.0"
1916− pinkie-promise "^2.0.0"
1917− read-all-stream "^3.0.0"
1918− readable-stream "^2.0.5"
1919− timed-out "^3.0.0"
1920− unzip-response "^1.0.2"
1921− url-parse-lax "^1.0.0"
1922−
1923−graceful-fs@^4.0.0, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9:
496+graceful-fs@^4.1.2:
1924497 version "4.1.11"
1925498 resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
1926499
1927−"graceful-readlink@>= 1.0.0":
1928− version "1.0.1"
1929− resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725"
1930−
1931−gulp-decompress@^1.2.0:
1932− version "1.2.0"
1933− resolved "https://registry.yarnpkg.com/gulp-decompress/-/gulp-decompress-1.2.0.tgz#8eeb65a5e015f8ed8532cafe28454960626f0dc7"
1934− dependencies:
1935− archive-type "^3.0.0"
1936− decompress "^3.0.0"
1937− gulp-util "^3.0.1"
1938− readable-stream "^2.0.2"
1939−
1940−gulp-rename@^1.2.0:
1941− version "1.2.2"
1942− resolved "https://registry.yarnpkg.com/gulp-rename/-/gulp-rename-1.2.2.tgz#3ad4428763f05e2764dec1c67d868db275687817"
1943−
1944−gulp-sourcemaps@1.6.0:
1945− version "1.6.0"
1946− resolved "https://registry.yarnpkg.com/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz#b86ff349d801ceb56e1d9e7dc7bbcb4b7dee600c"
1947− dependencies:
1948− convert-source-map "^1.1.1"
1949− graceful-fs "^4.1.2"
1950− strip-bom "^2.0.0"
1951− through2 "^2.0.0"
1952− vinyl "^1.0.0"
1953−
1954−gulp-util@^3.0.1:
1955− version "3.0.8"
1956− resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f"
1957− dependencies:
1958− array-differ "^1.0.0"
1959− array-uniq "^1.0.2"
1960− beeper "^1.0.0"
1961− chalk "^1.0.0"
1962− dateformat "^2.0.0"
1963− fancy-log "^1.1.0"
1964− gulplog "^1.0.0"
1965− has-gulplog "^0.1.0"
1966− lodash._reescape "^3.0.0"
1967− lodash._reevaluate "^3.0.0"
1968− lodash._reinterpolate "^3.0.0"
1969− lodash.template "^3.0.0"
1970− minimist "^1.1.0"
1971− multipipe "^0.1.2"
1972− object-assign "^3.0.0"
1973− replace-ext "0.0.1"
1974− through2 "^2.0.0"
1975− vinyl "^0.5.0"
1976−
1977−gulplog@^1.0.0:
1978− version "1.0.0"
1979− resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5"
1980− dependencies:
1981− glogg "^1.0.0"
1982−
1983−handlebars@^4.0.2:
1984− version "4.0.6"
1985− resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.6.tgz#2ce4484850537f9c97a8026d5399b935c4ed4ed7"
1986− dependencies:
1987− async "^1.4.0"
1988− optimist "^0.6.1"
1989− source-map "^0.4.4"
1990− optionalDependencies:
1991− uglify-js "^2.6"
1992−
1993−har-schema@^1.0.5:
1994− version "1.0.5"
1995− resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e"
1996−
1997−har-validator@~4.2.1:
1998− version "4.2.1"
1999− resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a"
2000− dependencies:
2001− ajv "^4.9.1"
2002− har-schema "^1.0.5"
2003−
2004500has-ansi@^2.0.0:
2005501 version "2.0.0"
2006502 resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
2007503 dependencies:
2008504 ansi-regex "^2.0.0"
2009505
2010−has-gulplog@^0.1.0:
2011− version "0.1.0"
2012− resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce"
2013− dependencies:
2014− sparkles "^1.0.0"
2015−
2016−has-unicode@^2.0.0:
2017− version "2.0.1"
2018− resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
2019−
2020−has@^1.0.0:
2021− version "1.0.1"
2022− resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28"
2023− dependencies:
2024− function-bind "^1.0.2"
2025−
2026−hash.js@^1.0.0, hash.js@^1.0.3:
2027− version "1.0.3"
2028− resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.0.3.tgz#1332ff00156c0a0ffdd8236013d07b77a0451573"
2029− dependencies:
2030− inherits "^2.0.1"
2031−
2032−hawk@~3.1.3:
2033− version "3.1.3"
2034− resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4"
2035− dependencies:
2036− boom "2.x.x"
2037− cryptiles "2.x.x"
2038− hoek "2.x.x"
2039− sntp "1.x.x"
2040−
2041−hmac-drbg@^1.0.0:
2042− version "1.0.0"
2043− resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.0.tgz#3db471f45aae4a994a0688322171f51b8b91bee5"
2044− dependencies:
2045− hash.js "^1.0.3"
2046− minimalistic-assert "^1.0.0"
2047− minimalistic-crypto-utils "^1.0.1"
2048−
2049−hoek@2.x.x:
2050− version "2.16.3"
2051− resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed"
2052−
2053−homedir-polyfill@^1.0.0:
2054− version "1.0.1"
2055− resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc"
2056− dependencies:
2057− parse-passwd "^1.0.0"
2058−
2059−hosted-git-info@^2.1.4:
2060− version "2.2.0"
2061− resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.2.0.tgz#7a0d097863d886c0fabbdcd37bf1758d8becf8a5"
2062−
2063−htmlescape@^1.1.0:
2064− version "1.1.1"
2065− resolved "https://registry.yarnpkg.com/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351"
2066−
2067−http-signature@~1.1.0:
2068− version "1.1.1"
2069− resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf"
2070− dependencies:
2071− assert-plus "^0.2.0"
2072− jsprim "^1.2.2"
2073− sshpk "^1.7.0"
2074−
2075−https-browserify@~0.0.0:
2076− version "0.0.1"
2077− resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-0.0.1.tgz#3f91365cabe60b77ed0ebba24b454e3e09d95a82"
2078−
2079−husky@^0.13.2:
2080− version "0.13.2"
2081− resolved "https://registry.yarnpkg.com/husky/-/husky-0.13.2.tgz#9dcf212f88e61dba36f17be1a202ed61ff6c0661"
2082− dependencies:
2083− chalk "^1.1.3"
2084− find-parent-dir "^0.3.0"
2085− is-ci "^1.0.9"
2086− normalize-path "^1.0.0"
2087−
2088−ieee754@^1.1.4:
2089− version "1.1.8"
2090− resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4"
2091−
2092506ignore@^3.2.0:
2093507 version "3.2.4"
2094508 resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.2.4.tgz#4055e03596729a8fabe45a43c100ad5ed815c4e8"
@@ -2097,16 +511,6 @@ imurmurhash@^0.1.4:
2097511 version "0.1.4"
2098512 resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
2099513
2100−indent-string@^2.1.0:
2101− version "2.1.0"
2102− resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80"
2103− dependencies:
2104− repeating "^2.0.0"
2105−
2106−indexof@0.0.1:
2107− version "0.0.1"
2108− resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d"
2109−
2110514inflight@^1.0.4:
2111515 version "1.0.6"
2112516 resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
@@ -2114,43 +518,10 @@ inflight@^1.0.4:
2114518 once "^1.3.0"
2115519 wrappy "1"
2116520
2117−inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1:
521+inherits@2, inherits@^2.0.3, inherits@~2.0.1:
2118522 version "2.0.3"
2119523 resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
2120524
2121−inherits@2.0.1:
2122− version "2.0.1"
2123− resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
2124−
2125−ini@^1.3.2, ini@^1.3.4, ini@~1.3.0:
2126− version "1.3.4"
2127− resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e"
2128−
2129−inline-source-map@~0.6.0:
2130− version "0.6.2"
2131− resolved "https://registry.yarnpkg.com/inline-source-map/-/inline-source-map-0.6.2.tgz#f9393471c18a79d1724f863fa38b586370ade2a5"
2132− dependencies:
2133− source-map "~0.5.3"
2134−
2135−inquirer@1.2.3:
2136− version "1.2.3"
2137− resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-1.2.3.tgz#4dec6f32f37ef7bb0b2ed3f1d1a5c3f545074918"
2138− dependencies:
2139− ansi-escapes "^1.1.0"
2140− chalk "^1.0.0"
2141− cli-cursor "^1.0.1"
2142− cli-width "^2.0.0"
2143− external-editor "^1.1.0"
2144− figures "^1.3.5"
2145− lodash "^4.3.0"
2146− mute-stream "0.0.6"
2147− pinkie-promise "^2.0.0"
2148− run-async "^2.2.0"
2149− rx "^4.1.0"
2150− string-width "^1.0.1"
2151− strip-ansi "^3.0.0"
2152− through "^2.3.6"
2153−
2154525inquirer@^0.12.0:
2155526 version "0.12.0"
2156527 resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz#1ef2bfd63504df0bc75785fff8c2c41df12f077e"
@@ -2169,91 +540,14 @@ inquirer@^0.12.0:
2169540 strip-ansi "^3.0.0"
2170541 through "^2.3.6"
2171542
2172−insert-module-globals@^7.0.0:
2173− version "7.0.1"
2174− resolved "https://registry.yarnpkg.com/insert-module-globals/-/insert-module-globals-7.0.1.tgz#c03bf4e01cb086d5b5e5ace8ad0afe7889d638c3"
2175− dependencies:
2176− JSONStream "^1.0.3"
2177− combine-source-map "~0.7.1"
2178− concat-stream "~1.5.1"
2179− is-buffer "^1.1.0"
2180− lexical-scope "^1.2.0"
2181− process "~0.11.0"
2182− through2 "^2.0.0"
2183− xtend "^4.0.0"
2184−
2185543interpret@^1.0.0:
2186544 version "1.0.1"
2187545 resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.1.tgz#d579fb7f693b858004947af39fa0db49f795602c"
2188546
2189−ip-regex@^1.0.1:
2190− version "1.0.3"
2191− resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-1.0.3.tgz#dc589076f659f419c222039a33316f1c7387effd"
2192−
2193−is-absolute@^0.1.5:
2194− version "0.1.7"
2195− resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-0.1.7.tgz#847491119fccb5fb436217cc737f7faad50f603f"
2196− dependencies:
2197− is-relative "^0.1.0"
2198−
2199−is-arrayish@^0.2.1:
2200− version "0.2.1"
2201− resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
2202−
2203−is-binary-path@^1.0.0:
2204− version "1.0.1"
2205− resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898"
2206− dependencies:
2207− binary-extensions "^1.0.0"
2208−
2209−is-buffer@^1.0.2, is-buffer@^1.1.0:
547+is-buffer@^1.0.2:
2210548 version "1.1.4"
2211549 resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.4.tgz#cfc86ccd5dc5a52fa80489111c6920c457e2d98b"
2212550
2213−is-builtin-module@^1.0.0:
2214− version "1.0.0"
2215− resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
2216− dependencies:
2217− builtin-modules "^1.0.0"
2218−
2219−is-bzip2@^1.0.0:
2220− version "1.0.0"
2221− resolved "https://registry.yarnpkg.com/is-bzip2/-/is-bzip2-1.0.0.tgz#5ee58eaa5a2e9c80e21407bedf23ae5ac091b3fc"
2222−
2223−is-ci@^1.0.9:
2224− version "1.0.10"
2225− resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e"
2226− dependencies:
2227− ci-info "^1.0.0"
2228−
2229−is-dotfile@^1.0.0:
2230− version "1.0.2"
2231− resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.2.tgz#2c132383f39199f8edc268ca01b9b007d205cc4d"
2232−
2233−is-equal-shallow@^0.1.3:
2234− version "0.1.3"
2235− resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534"
2236− dependencies:
2237− is-primitive "^2.0.0"
2238−
2239−is-extendable@^0.1.0, is-extendable@^0.1.1:
2240− version "0.1.1"
2241− resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
2242−
2243−is-extglob@^1.0.0:
2244− version "1.0.0"
2245− resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0"
2246−
2247−is-extglob@^2.1.0:
2248− version "2.1.1"
2249− resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
2250−
2251−is-finite@^1.0.0:
2252− version "1.0.2"
2253− resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
2254− dependencies:
2255− number-is-nan "^1.0.0"
2256−
2257551is-fullwidth-code-point@^1.0.0:
2258552 version "1.0.0"
2259553 resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
@@ -2264,22 +558,6 @@ is-fullwidth-code-point@^2.0.0:
2264558 version "2.0.0"
2265559 resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
2266560
2267−is-glob@^2.0.0, is-glob@^2.0.1:
2268− version "2.0.1"
2269− resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863"
2270− dependencies:
2271− is-extglob "^1.0.0"
2272−
2273−is-glob@^3.1.0:
2274− version "3.1.0"
2275− resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a"
2276− dependencies:
2277− is-extglob "^2.1.0"
2278−
2279−is-gzip@^1.0.0:
2280− version "1.0.0"
2281− resolved "https://registry.yarnpkg.com/is-gzip/-/is-gzip-1.0.0.tgz#6ca8b07b99c77998025900e555ced8ed80879a83"
2282−
2283561is-my-json-valid@^2.10.0:
2284562 version "2.16.0"
2285563 resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz#f079dd9bfdae65ee2038aae8acbc86ab109e3693"
@@ -2289,20 +567,6 @@ is-my-json-valid@^2.10.0:
2289567 jsonpointer "^4.0.0"
2290568 xtend "^4.0.0"
2291569
2292−is-natural-number@^2.0.0:
2293− version "2.1.1"
2294− resolved "https://registry.yarnpkg.com/is-natural-number/-/is-natural-number-2.1.1.tgz#7d4c5728377ef386c3e194a9911bf57c6dc335e7"
2295−
2296−is-number@^2.0.2, is-number@^2.1.0:
2297− version "2.1.0"
2298− resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f"
2299− dependencies:
2300− kind-of "^3.0.2"
2301−
2302−is-obj@^1.0.0:
2303− version "1.0.1"
2304− resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
2305−
2306570is-path-cwd@^1.0.0:
2307571 version "1.0.0"
2308572 resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d"
@@ -2319,209 +583,55 @@ is-path-inside@^1.0.0:
2319583 dependencies:
2320584 path-is-inside "^1.0.1"
2321585
2322−is-posix-bracket@^0.1.0:
2323− version "0.1.1"
2324− resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4"
2325−
2326−is-primitive@^2.0.0:
2327− version "2.0.0"
2328− resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575"
2329−
2330−is-promise@^2.1.0:
2331− version "2.1.0"
2332− resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"
2333−
2334586is-property@^1.0.0:
2335587 version "1.0.2"
2336588 resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84"
2337589
2338−is-redirect@^1.0.0:
2339− version "1.0.0"
2340− resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24"
2341−
2342−is-relative@^0.1.0:
2343− version "0.1.3"
2344− resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-0.1.3.tgz#905fee8ae86f45b3ec614bc3c15c869df0876e82"
2345−
2346590is-resolvable@^1.0.0:
2347591 version "1.0.0"
2348592 resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62"
2349593 dependencies:
2350594 tryit "^1.0.1"
2351595
2352−is-retry-allowed@^1.0.0:
2353− version "1.1.0"
2354− resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34"
2355−
2356−is-stream@^1.0.0, is-stream@^1.0.1:
2357− version "1.1.0"
2358− resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
596+isarray@^1.0.0, isarray@~1.0.0:
597+ version "1.0.0"
598+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
2359599
2360−is-subset@^0.1.1:
2361− version "0.1.1"
2362− resolved "https://registry.yarnpkg.com/is-subset/-/is-subset-0.1.1.tgz#8a59117d932de1de00f245fcdd39ce43f1e939a6"
600+js-tokens@^3.0.0:
601+ version "3.0.1"
602+ resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7"
2363603
2364−is-tar@^1.0.0:
2365− version "1.0.0"
2366− resolved "https://registry.yarnpkg.com/is-tar/-/is-tar-1.0.0.tgz#2f6b2e1792c1f5bb36519acaa9d65c0d26fe853d"
604+js-yaml@^3.5.1:
605+ version "3.8.2"
606+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.2.tgz#02d3e2c0f6beab20248d412c352203827d786721"
607+ dependencies:
608+ argparse "^1.0.7"
609+ esprima "^3.1.1"
2367610
2368−is-text-path@^1.0.0:
611+json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1:
2369612 version "1.0.1"
2370− resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e"
613+ resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
2371614 dependencies:
2372− text-extensions "^1.0.0"
615+ jsonify "~0.0.0"
2373616
2374−is-typedarray@~1.0.0:
2375− version "1.0.0"
2376− resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
617+jsonify@~0.0.0:
618+ version "0.0.0"
619+ resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
2377620
2378−is-url@^1.2.0:
2379− version "1.2.2"
2380− resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.2.tgz#498905a593bf47cc2d9e7f738372bbf7696c7f26"
621+jsonpointer@^4.0.0:
622+ version "4.0.1"
623+ resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
2381624
2382−is-utf8@^0.2.0:
2383− version "0.2.1"
2384− resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
2385−
2386−is-valid-glob@^0.3.0:
2387− version "0.3.0"
2388− resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-0.3.0.tgz#d4b55c69f51886f9b65c70d6c2622d37e29f48fe"
2389−
2390−is-windows@^0.2.0:
2391− version "0.2.0"
2392− resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c"
2393−
2394−is-zip@^1.0.0:
2395− version "1.0.0"
2396− resolved "https://registry.yarnpkg.com/is-zip/-/is-zip-1.0.0.tgz#47b0a8ff4d38a76431ccfd99a8e15a4c86ba2325"
2397−
2398−isarray@0.0.1, isarray@~0.0.1:
2399− version "0.0.1"
2400− resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
2401−
2402−isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
2403− version "1.0.0"
2404− resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
2405−
2406−isexe@^1.1.1:
2407− version "1.1.2"
2408− resolved "https://registry.yarnpkg.com/isexe/-/isexe-1.1.2.tgz#36f3e22e60750920f5e7241a476a8c6a42275ad0"
2409−
2410−isobject@^2.0.0:
2411− version "2.1.0"
2412− resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
2413− dependencies:
2414− isarray "1.0.0"
2415−
2416−isstream@~0.1.2:
2417− version "0.1.2"
2418− resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
2419−
2420−jodid25519@^1.0.0:
2421− version "1.0.2"
2422− resolved "https://registry.yarnpkg.com/jodid25519/-/jodid25519-1.0.2.tgz#06d4912255093419477d425633606e0e90782967"
2423− dependencies:
2424− jsbn "~0.1.0"
2425−
2426−js-tokens@^3.0.0:
2427− version "3.0.1"
2428− resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7"
2429−
2430−js-yaml@^3.5.1:
2431− version "3.8.2"
2432− resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.2.tgz#02d3e2c0f6beab20248d412c352203827d786721"
2433− dependencies:
2434− argparse "^1.0.7"
2435− esprima "^3.1.1"
2436−
2437−jsbn@~0.1.0:
2438− version "0.1.1"
2439− resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
2440−
2441−json-schema@0.2.3:
2442− version "0.2.3"
2443− resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
2444−
2445−json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1:
2446− version "1.0.1"
2447− resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
2448− dependencies:
2449− jsonify "~0.0.0"
2450−
2451−json-stable-stringify@~0.0.0:
2452− version "0.0.1"
2453− resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz#611c23e814db375527df851193db59dd2af27f45"
2454− dependencies:
2455− jsonify "~0.0.0"
2456−
2457−json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1:
2458− version "5.0.1"
2459− resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
2460−
2461−jsonfile@^2.1.0:
2462− version "2.4.0"
2463− resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8"
2464− optionalDependencies:
2465− graceful-fs "^4.1.6"
2466−
2467−jsonify@~0.0.0:
2468− version "0.0.0"
2469− resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
2470−
2471−jsonparse@0.0.5:
2472− version "0.0.5"
2473− resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-0.0.5.tgz#330542ad3f0a654665b778f3eb2d9a9fa507ac64"
2474−
2475−jsonparse@^1.2.0:
2476− version "1.3.0"
2477− resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.0.tgz#85fc245b1d9259acc6941960b905adf64e7de0e8"
2478−
2479−jsonpointer@^4.0.0:
2480− version "4.0.1"
2481− resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
2482−
2483−jsprim@^1.2.2:
2484− version "1.3.1"
2485− resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.3.1.tgz#2a7256f70412a29ee3670aaca625994c4dcff252"
2486− dependencies:
2487− extsprintf "1.0.2"
2488− json-schema "0.2.3"
2489− verror "1.3.6"
2490−
2491−kind-of@^3.0.2:
2492− version "3.1.0"
2493− resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.1.0.tgz#475d698a5e49ff5e53d14e3e732429dc8bf4cf47"
2494− dependencies:
2495− is-buffer "^1.0.2"
2496−
2497−klaw@^1.0.0:
2498− version "1.3.1"
2499− resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439"
2500− optionalDependencies:
2501− graceful-fs "^4.1.9"
2502−
2503−labeled-stream-splicer@^2.0.0:
2504− version "2.0.0"
2505− resolved "https://registry.yarnpkg.com/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz#a52e1d138024c00b86b1c0c91f677918b8ae0a59"
2506− dependencies:
2507− inherits "^2.0.1"
2508− isarray "~0.0.1"
2509− stream-splicer "^2.0.0"
625+kind-of@^3.0.2:
626+ version "3.1.0"
627+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.1.0.tgz#475d698a5e49ff5e53d14e3e732429dc8bf4cf47"
628+ dependencies:
629+ is-buffer "^1.0.2"
2510630
2511631lazy-cache@^1.0.3:
2512632 version "1.0.4"
2513633 resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
2514634
2515−lazy-req@^1.0.0:
2516− version "1.1.0"
2517− resolved "https://registry.yarnpkg.com/lazy-req/-/lazy-req-1.1.0.tgz#bdaebead30f8d824039ce0ce149d4daa07ba1fac"
2518−
2519−lazystream@^1.0.0:
2520− version "1.0.0"
2521− resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4"
2522− dependencies:
2523− readable-stream "^2.0.5"
2524−
2525635levn@^0.3.0, levn@~0.3.0:
2526636 version "0.3.0"
2527637 resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
@@ -2529,437 +639,70 @@ levn@^0.3.0, levn@~0.3.0:
2529639 prelude-ls "~1.1.2"
2530640 type-check "~0.3.2"
2531641
2532−lexical-scope@^1.2.0:
2533− version "1.2.0"
2534− resolved "https://registry.yarnpkg.com/lexical-scope/-/lexical-scope-1.2.0.tgz#fcea5edc704a4b3a8796cdca419c3a0afaf22df4"
2535− dependencies:
2536− astw "^2.0.0"
2537−
2538−load-json-file@^1.0.0:
2539− version "1.1.0"
2540− resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
2541− dependencies:
2542− graceful-fs "^4.1.2"
2543− parse-json "^2.2.0"
2544− pify "^2.0.0"
2545− pinkie-promise "^2.0.0"
2546− strip-bom "^2.0.0"
2547−
2548−lodash._basecopy@^3.0.0:
2549− version "3.0.1"
2550− resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36"
2551−
2552−lodash._basetostring@^3.0.0:
2553− version "3.0.1"
2554− resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5"
2555−
2556−lodash._basevalues@^3.0.0:
2557− version "3.0.0"
2558− resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7"
2559−
2560−lodash._getnative@^3.0.0:
2561− version "3.9.1"
2562− resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5"
2563−
2564−lodash._isiterateecall@^3.0.0:
2565− version "3.0.9"
2566− resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c"
2567−
2568−lodash._reescape@^3.0.0:
2569− version "3.0.0"
2570− resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a"
2571−
2572−lodash._reevaluate@^3.0.0:
2573− version "3.0.0"
2574− resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed"
2575−
2576−lodash._reinterpolate@^3.0.0, lodash._reinterpolate@~3.0.0:
2577− version "3.0.0"
2578− resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
2579−
2580−lodash._root@^3.0.0:
2581− version "3.0.1"
2582− resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692"
2583−
2584−lodash.escape@^3.0.0:
2585− version "3.2.0"
2586− resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698"
2587− dependencies:
2588− lodash._root "^3.0.0"
2589−
2590−lodash.isarguments@^3.0.0:
2591− version "3.1.0"
2592− resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a"
2593−
2594−lodash.isarray@^3.0.0:
2595− version "3.0.4"
2596− resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55"
2597−
2598−lodash.isequal@^4.0.0:
2599− version "4.5.0"
2600− resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0"
2601−
2602−lodash.keys@^3.0.0:
2603− version "3.1.2"
2604− resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a"
2605− dependencies:
2606− lodash._getnative "^3.0.0"
2607− lodash.isarguments "^3.0.0"
2608− lodash.isarray "^3.0.0"
2609−
2610−lodash.map@^4.5.1:
2611− version "4.6.0"
2612− resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3"
2613−
2614−lodash.memoize@~3.0.3:
2615− version "3.0.4"
2616− resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-3.0.4.tgz#2dcbd2c287cbc0a55cc42328bd0c736150d53e3f"
2617−
2618−lodash.restparam@^3.0.0:
2619− version "3.6.1"
2620− resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805"
2621−
2622−lodash.template@^3.0.0:
2623− version "3.6.2"
2624− resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f"
2625− dependencies:
2626− lodash._basecopy "^3.0.0"
2627− lodash._basetostring "^3.0.0"
2628− lodash._basevalues "^3.0.0"
2629− lodash._isiterateecall "^3.0.0"
2630− lodash._reinterpolate "^3.0.0"
2631− lodash.escape "^3.0.0"
2632− lodash.keys "^3.0.0"
2633− lodash.restparam "^3.0.0"
2634− lodash.templatesettings "^3.0.0"
2635−
2636−lodash.template@^4.0.2:
2637− version "4.4.0"
2638− resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.4.0.tgz#e73a0385c8355591746e020b99679c690e68fba0"
2639− dependencies:
2640− lodash._reinterpolate "~3.0.0"
2641− lodash.templatesettings "^4.0.0"
2642−
2643−lodash.templatesettings@^3.0.0:
2644− version "3.1.1"
2645− resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5"
2646− dependencies:
2647− lodash._reinterpolate "^3.0.0"
2648− lodash.escape "^3.0.0"
2649−
2650−lodash.templatesettings@^4.0.0:
2651− version "4.1.0"
2652− resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz#2b4d4e95ba440d915ff08bc899e4553666713316"
2653− dependencies:
2654− lodash._reinterpolate "~3.0.0"
2655−
2656−lodash@4.17.2:
2657− version "4.17.2"
2658− resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.2.tgz#34a3055babe04ce42467b607d700072c7ff6bf42"
2659−
2660−lodash@^4.0.0, lodash@^4.1.0, lodash@^4.14.0, lodash@^4.2.1, lodash@^4.3.0:
642+lodash@^4.0.0, lodash@^4.3.0:
2661643 version "4.17.4"
2662644 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
2663645
2664−logalot@^2.1.0:
2665− version "2.1.0"
2666− resolved "https://registry.yarnpkg.com/logalot/-/logalot-2.1.0.tgz#5f8e8c90d304edf12530951a5554abb8c5e3f552"
2667− dependencies:
2668− figures "^1.3.5"
2669− squeak "^1.0.0"
2670−
2671−longest@^1.0.0, longest@^1.0.1:
646+longest@^1.0.1:
2672647 version "1.0.1"
2673648 resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
2674649
2675−loud-rejection@^1.0.0:
2676− version "1.6.0"
2677− resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f"
2678− dependencies:
2679− currently-unhandled "^0.4.1"
2680− signal-exit "^3.0.0"
2681−
2682−lowercase-keys@^1.0.0:
2683− version "1.0.0"
2684− resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306"
2685−
2686−lpad-align@^1.0.1:
2687− version "1.1.0"
2688− resolved "https://registry.yarnpkg.com/lpad-align/-/lpad-align-1.1.0.tgz#27fa786bcb695fc434ea1500723eb8d0bdc82bf4"
2689− dependencies:
2690− get-stdin "^4.0.1"
2691− longest "^1.0.0"
2692− lpad "^2.0.1"
2693− meow "^3.3.0"
2694−
2695−lpad@^2.0.1:
2696− version "2.0.1"
2697− resolved "https://registry.yarnpkg.com/lpad/-/lpad-2.0.1.tgz#28316b4e7b2015f511f6591459afc0e5944008ad"
2698−
2699650magic-string@^0.14.0:
2700651 version "0.14.0"
2701652 resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.14.0.tgz#57224aef1701caeed273b17a39a956e72b172462"
2702653 dependencies:
2703654 vlq "^0.2.1"
2704655
2705−map-obj@^1.0.0, map-obj@^1.0.1:
2706− version "1.0.1"
2707− resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
2708−
2709−meow@^3.1.0, meow@^3.3.0, meow@^3.5.0, meow@^3.7.0:
2710− version "3.7.0"
2711− resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb"
2712− dependencies:
2713− camelcase-keys "^2.0.0"
2714− decamelize "^1.1.2"
2715− loud-rejection "^1.0.0"
2716− map-obj "^1.0.1"
2717− minimist "^1.1.3"
2718− normalize-package-data "^2.3.4"
2719− object-assign "^4.0.1"
2720− read-pkg-up "^1.0.1"
2721− redent "^1.0.0"
2722− trim-newlines "^1.0.0"
2723−
2724−merge-stream@^1.0.0:
2725− version "1.0.1"
2726− resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1"
2727− dependencies:
2728− readable-stream "^2.0.1"
2729−
2730−merge@^1.2.0:
2731− version "1.2.0"
2732− resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da"
2733−
2734−micromatch@^2.1.5, micromatch@^2.3.7:
2735− version "2.3.11"
2736− resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565"
2737− dependencies:
2738− arr-diff "^2.0.0"
2739− array-unique "^0.2.1"
2740− braces "^1.8.2"
2741− expand-brackets "^0.1.4"
2742− extglob "^0.3.1"
2743− filename-regex "^2.0.0"
2744− is-extglob "^1.0.0"
2745− is-glob "^2.0.1"
2746− kind-of "^3.0.2"
2747− normalize-path "^2.0.1"
2748− object.omit "^2.0.0"
2749− parse-glob "^3.0.4"
2750− regex-cache "^0.4.2"
2751−
2752−miller-rabin@^4.0.0:
2753− version "4.0.0"
2754− resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.0.tgz#4a62fb1d42933c05583982f4c716f6fb9e6c6d3d"
2755− dependencies:
2756− bn.js "^4.0.0"
2757− brorand "^1.0.1"
2758−
2759−mime-db@~1.26.0:
2760− version "1.26.0"
2761− resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.26.0.tgz#eaffcd0e4fc6935cf8134da246e2e6c35305adff"
2762−
2763−mime-types@^2.1.12, mime-types@~2.1.7:
2764− version "2.1.14"
2765− resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.14.tgz#f7ef7d97583fcaf3b7d282b6f8b5679dab1e94ee"
2766− dependencies:
2767− mime-db "~1.26.0"
2768−
2769−mime@>=1.2.9:
2770− version "1.3.4"
2771− resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53"
2772−
2773−minimalistic-assert@^1.0.0:
2774− version "1.0.0"
2775− resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3"
2776−
2777−minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1:
2778− version "1.0.1"
2779− resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
2780−
2781−"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3:
656+minimatch@^3.0.2:
2782657 version "3.0.3"
2783658 resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774"
2784659 dependencies:
2785660 brace-expansion "^1.0.0"
2786661
2787−minimist@0.0.8, minimist@~0.0.1:
662+minimist@0.0.8:
2788663 version "0.0.8"
2789664 resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
2790665
2791−minimist@1.2.0, minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0:
666+minimist@^1.2.0:
2792667 version "1.2.0"
2793668 resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
2794669
2795−"mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1:
670+mkdirp@^0.5.0, mkdirp@^0.5.1:
2796671 version "0.5.1"
2797672 resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
2798673 dependencies:
2799674 minimist "0.0.8"
2800675
2801−modify-values@^1.0.0:
2802− version "1.0.0"
2803− resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.0.tgz#e2b6cdeb9ce19f99317a53722f3dbf5df5eaaab2"
2804−
2805−module-deps@^4.0.8:
2806− version "4.1.1"
2807− resolved "https://registry.yarnpkg.com/module-deps/-/module-deps-4.1.1.tgz#23215833f1da13fd606ccb8087b44852dcb821fd"
2808− dependencies:
2809− JSONStream "^1.0.3"
2810− browser-resolve "^1.7.0"
2811− cached-path-relative "^1.0.0"
2812− concat-stream "~1.5.0"
2813− defined "^1.0.0"
2814− detective "^4.0.0"
2815− duplexer2 "^0.1.2"
2816− inherits "^2.0.1"
2817− parents "^1.0.0"
2818− readable-stream "^2.0.2"
2819− resolve "^1.1.3"
2820− stream-combiner2 "^1.1.1"
2821− subarg "^1.0.0"
2822− through2 "^2.0.0"
2823− xtend "^4.0.0"
2824−
2825−ms@0.7.1:
2826− version "0.7.1"
2827− resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098"
2828−
2829676ms@0.7.2:
2830677 version "0.7.2"
2831678 resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765"
2832679
2833−multipipe@^0.1.2:
2834− version "0.1.2"
2835− resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b"
2836− dependencies:
2837− duplexer2 "0.0.2"
2838−
2839−mute-stream@0.0.5, mute-stream@~0.0.4:
680+mute-stream@0.0.5:
2840681 version "0.0.5"
2841682 resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0"
2842683
2843−mute-stream@0.0.6:
2844− version "0.0.6"
2845− resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.6.tgz#48962b19e169fd1dfc240b3f1e7317627bbc47db"
2846−
2847−nan@^2.3.0:
2848− version "2.5.1"
2849− resolved "https://registry.yarnpkg.com/nan/-/nan-2.5.1.tgz#d5b01691253326a97a2bbee9e61c55d8d60351e2"
2850−
2851684natural-compare@^1.4.0:
2852685 version "1.4.0"
2853686 resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
2854687
2855−node-pre-gyp@^0.6.29:
2856− version "0.6.33"
2857− resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.33.tgz#640ac55198f6a925972e0c16c4ac26a034d5ecc9"
2858− dependencies:
2859− mkdirp "~0.5.1"
2860− nopt "~3.0.6"
2861− npmlog "^4.0.1"
2862− rc "~1.1.6"
2863− request "^2.79.0"
2864− rimraf "~2.5.4"
2865− semver "~5.3.0"
2866− tar "~2.2.1"
2867− tar-pack "~3.3.0"
2868−
2869−node-static@^0.7.9:
2870− version "0.7.9"
2871− resolved "https://registry.yarnpkg.com/node-static/-/node-static-0.7.9.tgz#9bb69fce2281f7ae3cd1fb983e9ea0ec0cd9fecb"
2872− dependencies:
2873− colors ">=0.6.0"
2874− mime ">=1.2.9"
2875− optimist ">=0.3.4"
2876−
2877−node-status-codes@^1.0.0:
2878− version "1.0.0"
2879− resolved "https://registry.yarnpkg.com/node-status-codes/-/node-status-codes-1.0.0.tgz#5ae5541d024645d32a58fcddc9ceecea7ae3ac2f"
2880−
2881−nopt@~3.0.6:
2882− version "3.0.6"
2883− resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
2884− dependencies:
2885− abbrev "1"
2886−
2887−normalize-package-data@^2.3.0, normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.3.5:
2888− version "2.3.6"
2889− resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.6.tgz#498fa420c96401f787402ba21e600def9f981fff"
2890− dependencies:
2891− hosted-git-info "^2.1.4"
2892− is-builtin-module "^1.0.0"
2893− semver "2 || 3 || 4 || 5"
2894− validate-npm-package-license "^3.0.1"
2895−
2896−normalize-path@^1.0.0:
2897− version "1.0.0"
2898− resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-1.0.0.tgz#32d0e472f91ff345701c15a8311018d3b0a90379"
2899−
2900−normalize-path@^2.0.1:
2901− version "2.0.1"
2902− resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.0.1.tgz#47886ac1662760d4261b7d979d241709d3ce3f7a"
2903−
2904−npmlog@^4.0.1:
2905− version "4.0.2"
2906− resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f"
2907− dependencies:
2908− are-we-there-yet "~1.1.2"
2909− console-control-strings "~1.1.0"
2910− gauge "~2.7.1"
2911− set-blocking "~2.0.0"
2912−
2913688number-is-nan@^1.0.0:
2914689 version "1.0.1"
2915690 resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
2916691
2917−oauth-sign@~0.8.1:
2918− version "0.8.2"
2919− resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43"
2920−
2921−object-assign@^2.0.0:
2922− version "2.1.1"
2923− resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-2.1.1.tgz#43c36e5d569ff8e4816c4efa8be02d26967c18aa"
2924−
2925−object-assign@^3.0.0:
2926− version "3.0.0"
2927− resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2"
2928−
2929−object-assign@^4.0.0, object-assign@^4.0.1, object-assign@^4.1.0:
692+object-assign@^4.0.1, object-assign@^4.1.0:
2930693 version "4.1.1"
2931694 resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
2932695
2933−object.omit@^2.0.0:
2934− version "2.0.1"
2935− resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa"
2936− dependencies:
2937− for-own "^0.1.4"
2938− is-extendable "^0.1.1"
2939−
2940696once@^1.3.0:
2941697 version "1.4.0"
2942698 resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
2943699 dependencies:
2944700 wrappy "1"
2945701
2946−once@~1.3.0, once@~1.3.3:
2947− version "1.3.3"
2948− resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20"
2949− dependencies:
2950− wrappy "1"
2951−
2952702onetime@^1.0.0:
2953703 version "1.1.0"
2954704 resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789"
2955705
2956−optimist@>=0.3.4, optimist@^0.6.1:
2957− version "0.6.1"
2958− resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686"
2959− dependencies:
2960− minimist "~0.0.1"
2961− wordwrap "~0.0.2"
2962−
2963706optionator@^0.8.2:
2964707 version "0.8.2"
2965708 resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64"
@@ -2971,96 +714,10 @@ optionator@^0.8.2:
2971714 type-check "~0.3.2"
2972715 wordwrap "~1.0.0"
2973716
2974−ordered-read-streams@^0.3.0:
2975− version "0.3.0"
2976− resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz#7137e69b3298bb342247a1bbee3881c80e2fd78b"
2977− dependencies:
2978− is-stream "^1.0.1"
2979− readable-stream "^2.0.1"
2980−
2981−os-browserify@~0.1.1:
2982− version "0.1.2"
2983− resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.1.2.tgz#49ca0293e0b19590a5f5de10c7f265a617d8fe54"
2984−
2985−os-filter-obj@^1.0.0:
2986− version "1.0.3"
2987− resolved "https://registry.yarnpkg.com/os-filter-obj/-/os-filter-obj-1.0.3.tgz#5915330d90eced557d2d938a31c6dd214d9c63ad"
2988−
2989717os-homedir@^1.0.0, os-homedir@^1.0.1:
2990718 version "1.0.2"
2991719 resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
2992720
2993−os-shim@^0.1.2:
2994− version "0.1.3"
2995− resolved "https://registry.yarnpkg.com/os-shim/-/os-shim-0.1.3.tgz#6b62c3791cf7909ea35ed46e17658bb417cb3917"
2996−
2997−os-tmpdir@^1.0.0, os-tmpdir@~1.0.1:
2998− version "1.0.2"
2999− resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
3000−
3001−pad-right@^0.2.2:
3002− version "0.2.2"
3003− resolved "https://registry.yarnpkg.com/pad-right/-/pad-right-0.2.2.tgz#6fbc924045d244f2a2a244503060d3bfc6009774"
3004− dependencies:
3005− repeat-string "^1.5.2"
3006−
3007−pako@~0.2.0:
3008− version "0.2.9"
3009− resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75"
3010−
3011−parents@^1.0.0, parents@^1.0.1:
3012− version "1.0.1"
3013− resolved "https://registry.yarnpkg.com/parents/-/parents-1.0.1.tgz#fedd4d2bf193a77745fe71e371d73c3307d9c751"
3014− dependencies:
3015− path-platform "~0.11.15"
3016−
3017−parse-asn1@^5.0.0:
3018− version "5.0.0"
3019− resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.0.0.tgz#35060f6d5015d37628c770f4e091a0b5a278bc23"
3020− dependencies:
3021− asn1.js "^4.0.0"
3022− browserify-aes "^1.0.0"
3023− create-hash "^1.1.0"
3024− evp_bytestokey "^1.0.0"
3025− pbkdf2 "^3.0.3"
3026−
3027−parse-github-repo-url@^1.3.0:
3028− version "1.4.0"
3029− resolved "https://registry.yarnpkg.com/parse-github-repo-url/-/parse-github-repo-url-1.4.0.tgz#286c53e2c9962e0641649ee3ac9508fca4dd959c"
3030−
3031−parse-glob@^3.0.4:
3032− version "3.0.4"
3033− resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c"
3034− dependencies:
3035− glob-base "^0.3.0"
3036− is-dotfile "^1.0.0"
3037− is-extglob "^1.0.0"
3038− is-glob "^2.0.0"
3039−
3040−parse-json@^2.1.0, parse-json@^2.2.0:
3041− version "2.2.0"
3042− resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
3043− dependencies:
3044− error-ex "^1.2.0"
3045−
3046−parse-passwd@^1.0.0:
3047− version "1.0.0"
3048− resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
3049−
3050−path-browserify@~0.0.0:
3051− version "0.0.0"
3052− resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a"
3053−
3054−path-dirname@^1.0.0:
3055− version "1.0.2"
3056− resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
3057−
3058−path-exists@2.1.0, path-exists@^2.0.0:
3059− version "2.1.0"
3060− resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
3061− dependencies:
3062− pinkie-promise "^2.0.0"
3063−
3064721path-is-absolute@^1.0.0:
3065722 version "1.0.1"
3066723 resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
@@ -3073,33 +730,7 @@ path-parse@^1.0.5:
3073730 version "1.0.5"
3074731 resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1"
3075732
3076−path-platform@~0.11.15:
3077− version "0.11.15"
3078− resolved "https://registry.yarnpkg.com/path-platform/-/path-platform-0.11.15.tgz#e864217f74c36850f0852b78dc7bf7d4a5721bf2"
3079−
3080−path-type@^1.0.0:
3081− version "1.1.0"
3082− resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
3083− dependencies:
3084− graceful-fs "^4.1.2"
3085− pify "^2.0.0"
3086− pinkie-promise "^2.0.0"
3087−
3088−pbkdf2@^3.0.3:
3089− version "3.0.9"
3090− resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.9.tgz#f2c4b25a600058b3c3773c086c37dbbee1ffe693"
3091− dependencies:
3092− create-hmac "^1.1.2"
3093−
3094−pend@~1.2.0:
3095− version "1.2.0"
3096− resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
3097−
3098−performance-now@^0.2.0:
3099− version "0.2.0"
3100− resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5"
3101−
3102−pify@^2.0.0, pify@^2.3.0:
733+pify@^2.0.0:
3103734 version "2.3.0"
3104735 resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
3105736
@@ -3121,187 +752,17 @@ prelude-ls@~1.1.2:
3121752 version "1.1.2"
3122753 resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
3123754
3124−prepend-http@^1.0.1:
3125− version "1.0.4"
3126− resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc"
3127−
3128−preserve@^0.2.0:
3129− version "0.2.0"
3130− resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
3131−
3132755process-nextick-args@~1.0.6:
3133756 version "1.0.7"
3134757 resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3"
3135758
3136−process@~0.11.0:
3137− version "0.11.9"
3138− resolved "https://registry.yarnpkg.com/process/-/process-0.11.9.tgz#7bd5ad21aa6253e7da8682264f1e11d11c0318c1"
3139−
3140−progress@^1.1.8:
3141− version "1.1.8"
3142− resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be"
3143−
3144−public-encrypt@^4.0.0:
3145− version "4.0.0"
3146− resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz#39f699f3a46560dd5ebacbca693caf7c65c18cc6"
3147− dependencies:
3148− bn.js "^4.1.0"
3149− browserify-rsa "^4.0.0"
3150− create-hash "^1.1.0"
3151− parse-asn1 "^5.0.0"
3152− randombytes "^2.0.1"
3153−
3154−pulp@^10.0.4:
3155− version "10.0.4"
3156− resolved "https://registry.yarnpkg.com/pulp/-/pulp-10.0.4.tgz#4ae64fcf1c8f93102278ba8db3cbd4b893099636"
3157− dependencies:
3158− browserify "^13.1.0"
3159− browserify-incremental "^3.0.1"
3160− concat-stream "^1.4.6"
3161− glob "^7.1.1"
3162− minimatch "^3.0.3"
3163− node-static "^0.7.9"
3164− read "^1.0.7"
3165− string-stream "0.0.7"
3166− temp "^0.8.1"
3167− through "^2.3.8"
3168− tree-kill "^1.0.0"
3169− watchpack "^1.0.1"
3170− which "^1.2.1"
3171− wordwrap "1.0.0"
3172−
3173−punycode@1.3.2:
3174− version "1.3.2"
3175− resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
3176−
3177−punycode@^1.3.2, punycode@^1.4.1:
3178− version "1.4.1"
3179− resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
3180−
3181−purescript@^0.10.7:
3182− version "0.10.7"
3183− resolved "https://registry.yarnpkg.com/purescript/-/purescript-0.10.7.tgz#88cb57821a9e91b4e5f42186bd3fdecc1113a1ab"
3184− dependencies:
3185− async-each-series "^1.0.0"
3186− bin-build "^2.2.0"
3187− bin-wrapper "^3.0.2"
3188− logalot "^2.1.0"
3189− to-executable-name "^1.0.0"
3190−
3191−q@^1.4.1:
3192− version "1.4.1"
3193− resolved "https://registry.yarnpkg.com/q/-/q-1.4.1.tgz#55705bcd93c5f3673530c2c2cbc0c2b3addc286e"
3194−
3195−qs@~6.4.0:
3196− version "6.4.0"
3197− resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
3198−
3199−querystring-es3@~0.2.0:
3200− version "0.2.1"
3201− resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
3202−
3203−querystring@0.2.0:
3204− version "0.2.0"
3205− resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620"
3206−
3207−randomatic@^1.1.3:
3208− version "1.1.6"
3209− resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.6.tgz#110dcabff397e9dcff7c0789ccc0a49adf1ec5bb"
3210− dependencies:
3211− is-number "^2.0.2"
3212− kind-of "^3.0.2"
3213−
3214−randombytes@^2.0.0, randombytes@^2.0.1:
3215− version "2.0.3"
3216− resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.3.tgz#674c99760901c3c4112771a31e521dc349cc09ec"
3217−
3218−rc@^1.1.2, rc@~1.1.6:
3219− version "1.1.7"
3220− resolved "https://registry.yarnpkg.com/rc/-/rc-1.1.7.tgz#c5ea564bb07aff9fd3a5b32e906c1d3a65940fea"
3221− dependencies:
3222− deep-extend "~0.4.0"
3223− ini "~1.3.0"
3224− minimist "^1.2.0"
3225− strip-json-comments "~2.0.1"
3226−
3227−read-all-stream@^3.0.0:
3228− version "3.1.0"
3229− resolved "https://registry.yarnpkg.com/read-all-stream/-/read-all-stream-3.1.0.tgz#35c3e177f2078ef789ee4bfafa4373074eaef4fa"
3230− dependencies:
3231− pinkie-promise "^2.0.0"
3232− readable-stream "^2.0.0"
3233−
3234−read-only-stream@^2.0.0:
3235− version "2.0.0"
3236− resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-2.0.0.tgz#2724fd6a8113d73764ac288d4386270c1dbf17f0"
3237− dependencies:
3238− readable-stream "^2.0.2"
3239−
3240−read-pkg-up@^1.0.1:
3241− version "1.0.1"
3242− resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
3243− dependencies:
3244− find-up "^1.0.0"
3245− read-pkg "^1.0.0"
3246−
3247−read-pkg@^1.0.0, read-pkg@^1.1.0:
3248− version "1.1.0"
3249− resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
3250− dependencies:
3251− load-json-file "^1.0.0"
3252− normalize-package-data "^2.3.2"
3253− path-type "^1.0.0"
3254−
3255−read@^1.0.7:
3256− version "1.0.7"
3257− resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4"
3258− dependencies:
3259− mute-stream "~0.0.4"
3260−
3261−"readable-stream@>=1.0.33-1 <1.1.0-0":
3262− version "1.0.34"
3263− resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c"
3264− dependencies:
3265− core-util-is "~1.0.0"
3266− inherits "~2.0.1"
3267− isarray "0.0.1"
3268− string_decoder "~0.10.x"
3269−
3270−readable-stream@^2.0.0, "readable-stream@^2.0.0 || ^1.1.13", readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.1.0, readable-stream@^2.1.5, readable-stream@^2.2.2:
3271− version "2.2.3"
3272− resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.3.tgz#9cf49463985df016c8ae8813097a9293a9b33729"
3273− dependencies:
3274− buffer-shims "^1.0.0"
3275− core-util-is "~1.0.0"
3276− inherits "~2.0.1"
3277− isarray "~1.0.0"
3278− process-nextick-args "~1.0.6"
3279− string_decoder "~0.10.x"
3280− util-deprecate "~1.0.1"
3281−
3282−readable-stream@~1.1.9:
3283− version "1.1.14"
3284− resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
3285− dependencies:
3286− core-util-is "~1.0.0"
3287− inherits "~2.0.1"
3288− isarray "0.0.1"
3289− string_decoder "~0.10.x"
3290−
3291−readable-stream@~2.0.0:
3292− version "2.0.6"
3293− resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e"
3294− dependencies:
3295− core-util-is "~1.0.0"
3296− inherits "~2.0.1"
3297− isarray "~1.0.0"
3298− process-nextick-args "~1.0.6"
3299− string_decoder "~0.10.x"
3300− util-deprecate "~1.0.1"
759+progress@^1.1.8:
760+ version "1.1.8"
761+ resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be"
3301762
3302−readable-stream@~2.1.4:
3303− version "2.1.5"
3304− resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0"
763+readable-stream@^2.2.2:
764+ version "2.2.3"
765+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.3.tgz#9cf49463985df016c8ae8813097a9293a9b33729"
3305766 dependencies:
3306767 buffer-shims "^1.0.0"
3307768 core-util-is "~1.0.0"
@@ -3311,15 +772,6 @@ readable-stream@~2.1.4:
3311772 string_decoder "~0.10.x"
3312773 util-deprecate "~1.0.1"
3313774
3314−readdirp@^2.0.0:
3315− version "2.1.0"
3316− resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78"
3317− dependencies:
3318− graceful-fs "^4.1.2"
3319− minimatch "^3.0.2"
3320− readable-stream "^2.0.2"
3321− set-immediate-shim "^1.0.1"
3322−
3323775readline2@^1.0.1:
3324776 version "1.0.1"
3325777 resolved "https://registry.yarnpkg.com/readline2/-/readline2-1.0.1.tgz#41059608ffc154757b715d9989d199ffbf372e35"
@@ -3334,65 +786,10 @@ rechoir@^0.6.2:
3334786 dependencies:
3335787 resolve "^1.1.6"
3336788
3337−redent@^1.0.0:
3338− version "1.0.0"
3339− resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde"
3340− dependencies:
3341− indent-string "^2.1.0"
3342− strip-indent "^1.0.1"
3343−
3344−regex-cache@^0.4.2:
3345− version "0.4.3"
3346− resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145"
3347− dependencies:
3348− is-equal-shallow "^0.1.3"
3349− is-primitive "^2.0.0"
3350−
3351−repeat-element@^1.1.2:
3352− version "1.1.2"
3353− resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a"
3354−
3355789repeat-string@^1.5.2:
3356790 version "1.6.1"
3357791 resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
3358792
3359−repeating@^2.0.0:
3360− version "2.0.1"
3361− resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
3362− dependencies:
3363− is-finite "^1.0.0"
3364−
3365−replace-ext@0.0.1:
3366− version "0.0.1"
3367− resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924"
3368−
3369−request@^2.79.0:
3370− version "2.81.0"
3371− resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0"
3372− dependencies:
3373− aws-sign2 "~0.6.0"
3374− aws4 "^1.2.1"
3375− caseless "~0.12.0"
3376− combined-stream "~1.0.5"
3377− extend "~3.0.0"
3378− forever-agent "~0.6.1"
3379− form-data "~2.1.1"
3380− har-validator "~4.2.1"
3381− hawk "~3.1.3"
3382− http-signature "~1.1.0"
3383− is-typedarray "~1.0.0"
3384− isstream "~0.1.2"
3385− json-stringify-safe "~5.0.1"
3386− mime-types "~2.1.7"
3387− oauth-sign "~0.8.1"
3388− performance-now "^0.2.0"
3389− qs "~6.4.0"
3390− safe-buffer "^5.0.1"
3391− stringstream "~0.0.4"
3392− tough-cookie "~2.3.0"
3393− tunnel-agent "^0.6.0"
3394− uuid "^3.0.0"
3395−
3396793require-uncached@^1.0.2:
3397794 version "1.0.3"
3398795 resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3"
@@ -3400,13 +797,6 @@ require-uncached@^1.0.2:
3400797 caller-path "^0.1.0"
3401798 resolve-from "^1.0.0"
3402799
3403−resolve-dir@^0.1.0:
3404− version "0.1.1"
3405− resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-0.1.1.tgz#b219259a5602fac5c5c496ad894a6e8cc430261e"
3406− dependencies:
3407− expand-tilde "^1.2.2"
3408− global-modules "^0.2.3"
3409−
3410800resolve-from@^1.0.0:
3411801 version "1.0.1"
3412802 resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226"
@@ -3415,7 +805,7 @@ resolve@1.1.7:
3415805 version "1.1.7"
3416806 resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
3417807
3418−resolve@^1.1.3, resolve@^1.1.4, resolve@^1.1.6:
808+resolve@^1.1.6:
3419809 version "1.3.2"
3420810 resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.2.tgz#1f0442c9e0cbb8136e87b9305f932f46c7f28235"
3421811 dependencies:
@@ -3434,24 +824,12 @@ right-align@^0.1.1:
3434824 dependencies:
3435825 align-text "^0.1.1"
3436826
3437−right-pad@^1.0.1:
3438− version "1.0.1"
3439− resolved "https://registry.yarnpkg.com/right-pad/-/right-pad-1.0.1.tgz#8ca08c2cbb5b55e74dafa96bf7fd1a27d568c8d0"
3440−
3441−rimraf@2, rimraf@~2.5.1, rimraf@~2.5.4:
3442− version "2.5.4"
3443− resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04"
827+rimraf@^2.2.8:
828+ version "2.6.1"
829+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d"
3444830 dependencies:
3445831 glob "^7.0.5"
3446832
3447−rimraf@^2.2.6, rimraf@^2.2.8, rimraf@~2.2.6:
3448− version "2.2.8"
3449− resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582"
3450−
3451−ripemd160@^1.0.0:
3452− version "1.0.1"
3453− resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-1.0.1.tgz#93a4bbd4942bc574b69a8fa57c71de10ecca7d6e"
3454−
3455833rollup-plugin-buble@^0.15.0:
3456834 version "0.15.0"
3457835 resolved "https://registry.yarnpkg.com/rollup-plugin-buble/-/rollup-plugin-buble-0.15.0.tgz#83c3e89c7fd2266c7918f41ba3980313519c7fd0"
@@ -3493,79 +871,11 @@ run-async@^0.1.0:
3493871 dependencies:
3494872 once "^1.3.0"
3495873
3496−run-async@^2.2.0:
3497− version "2.3.0"
3498− resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0"
3499− dependencies:
3500− is-promise "^2.1.0"
3501−
3502874rx-lite@^3.1.2:
3503875 version "3.1.2"
3504876 resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102"
3505877
3506−rx@^4.1.0:
3507− version "4.1.0"
3508− resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782"
3509−
3510−safe-buffer@^5.0.1:
3511− version "5.0.1"
3512− resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7"
3513−
3514−seek-bzip@^1.0.3:
3515− version "1.0.5"
3516− resolved "https://registry.yarnpkg.com/seek-bzip/-/seek-bzip-1.0.5.tgz#cfe917cb3d274bcffac792758af53173eb1fabdc"
3517− dependencies:
3518− commander "~2.8.1"
3519−
3520−semver-regex@1.0.0, semver-regex@^1.0.0:
3521− version "1.0.0"
3522− resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-1.0.0.tgz#92a4969065f9c70c694753d55248fc68f8f652c9"
3523−
3524−semver-truncate@^1.0.0:
3525− version "1.1.2"
3526− resolved "https://registry.yarnpkg.com/semver-truncate/-/semver-truncate-1.1.2.tgz#57f41de69707a62709a7e0104ba2117109ea47e8"
3527− dependencies:
3528− semver "^5.3.0"
3529−
3530−"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.3.0, semver@~5.3.0:
3531− version "5.3.0"
3532− resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
3533−
3534−semver@^4.0.3:
3535− version "4.3.6"
3536− resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da"
3537−
3538−set-blocking@~2.0.0:
3539− version "2.0.0"
3540− resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
3541−
3542−set-immediate-shim@^1.0.0, set-immediate-shim@^1.0.1:
3543− version "1.0.1"
3544− resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61"
3545−
3546−sha.js@^2.3.6, sha.js@~2.4.4:
3547− version "2.4.8"
3548− resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.8.tgz#37068c2c476b6baf402d14a49c67f597921f634f"
3549− dependencies:
3550− inherits "^2.0.1"
3551−
3552−shasum@^1.0.0:
3553− version "1.0.2"
3554− resolved "https://registry.yarnpkg.com/shasum/-/shasum-1.0.2.tgz#e7012310d8f417f4deb5712150e5678b87ae565f"
3555− dependencies:
3556− json-stable-stringify "~0.0.0"
3557− sha.js "~2.4.4"
3558−
3559−shell-quote@^1.6.1:
3560− version "1.6.1"
3561− resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767"
3562− dependencies:
3563− array-filter "~0.0.0"
3564− array-map "~0.0.0"
3565− array-reduce "~0.0.0"
3566− jsonify "~0.0.0"
3567−
3568−shelljs@0.7.6, shelljs@^0.7.5:
878+shelljs@^0.7.5:
3569879 version "0.7.6"
3570880 resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.6.tgz#379cccfb56b91c8601e4793356eb5382924de9ad"
3571881 dependencies:
@@ -3573,143 +883,24 @@ shelljs@0.7.6, shelljs@^0.7.5:
3573883 interpret "^1.0.0"
3574884 rechoir "^0.6.2"
3575885
3576−signal-exit@^3.0.0:
3577− version "3.0.2"
3578− resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
3579−
3580886slice-ansi@0.0.4:
3581887 version "0.0.4"
3582888 resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35"
3583889
3584−sntp@1.x.x:
3585− version "1.0.9"
3586− resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198"
3587− dependencies:
3588− hoek "2.x.x"
3589−
3590890source-map-support@^0.4.0:
3591891 version "0.4.11"
3592892 resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.11.tgz#647f939978b38535909530885303daf23279f322"
3593893 dependencies:
3594894 source-map "^0.5.3"
3595895
3596−source-map@^0.4.4:
3597− version "0.4.4"
3598− resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
3599− dependencies:
3600− amdefine ">=0.0.4"
3601−
3602−source-map@^0.5.3, source-map@~0.5.1, source-map@~0.5.3:
896+source-map@^0.5.3, source-map@~0.5.1:
3603897 version "0.5.6"
3604898 resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
3605899
3606−sparkles@^1.0.0:
3607− version "1.0.0"
3608− resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3"
3609−
3610−spawn-sync@^1.0.15:
3611− version "1.0.15"
3612− resolved "https://registry.yarnpkg.com/spawn-sync/-/spawn-sync-1.0.15.tgz#b00799557eb7fb0c8376c29d44e8a1ea67e57476"
3613− dependencies:
3614− concat-stream "^1.4.7"
3615− os-shim "^0.1.2"
3616−
3617−spdx-correct@~1.0.0:
3618− version "1.0.2"
3619− resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40"
3620− dependencies:
3621− spdx-license-ids "^1.0.2"
3622−
3623−spdx-expression-parse@~1.0.0:
3624− version "1.0.4"
3625− resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c"
3626−
3627−spdx-license-ids@^1.0.2:
3628− version "1.2.2"
3629− resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57"
3630−
3631−split2@^2.0.0:
3632− version "2.1.1"
3633− resolved "https://registry.yarnpkg.com/split2/-/split2-2.1.1.tgz#7a1f551e176a90ecd3345f7246a0cfe175ef4fd0"
3634− dependencies:
3635− through2 "^2.0.2"
3636−
3637−split@^1.0.0:
3638− version "1.0.0"
3639− resolved "https://registry.yarnpkg.com/split/-/split-1.0.0.tgz#c4395ce683abcd254bc28fe1dabb6e5c27dcffae"
3640− dependencies:
3641− through "2"
3642−
3643900sprintf-js@~1.0.2:
3644901 version "1.0.3"
3645902 resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
3646903
3647−squeak@^1.0.0:
3648− version "1.3.0"
3649− resolved "https://registry.yarnpkg.com/squeak/-/squeak-1.3.0.tgz#33045037b64388b567674b84322a6521073916c3"
3650− dependencies:
3651− chalk "^1.0.0"
3652− console-stream "^0.1.1"
3653− lpad-align "^1.0.1"
3654−
3655−sshpk@^1.7.0:
3656− version "1.11.0"
3657− resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.11.0.tgz#2d8d5ebb4a6fab28ffba37fa62a90f4a3ea59d77"
3658− dependencies:
3659− asn1 "~0.2.3"
3660− assert-plus "^1.0.0"
3661− dashdash "^1.12.0"
3662− getpass "^0.1.1"
3663− optionalDependencies:
3664− bcrypt-pbkdf "^1.0.0"
3665− ecc-jsbn "~0.1.1"
3666− jodid25519 "^1.0.0"
3667− jsbn "~0.1.0"
3668− tweetnacl "~0.14.0"
3669−
3670−stat-mode@^0.2.0:
3671− version "0.2.2"
3672− resolved "https://registry.yarnpkg.com/stat-mode/-/stat-mode-0.2.2.tgz#e6c80b623123d7d80cf132ce538f346289072502"
3673−
3674−stream-browserify@^2.0.0:
3675− version "2.0.1"
3676− resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db"
3677− dependencies:
3678− inherits "~2.0.1"
3679− readable-stream "^2.0.2"
3680−
3681−stream-combiner2@^1.1.1:
3682− version "1.1.1"
3683− resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.1.1.tgz#fb4d8a1420ea362764e21ad4780397bebcb41cbe"
3684− dependencies:
3685− duplexer2 "~0.1.0"
3686− readable-stream "^2.0.2"
3687−
3688−stream-http@^2.0.0:
3689− version "2.6.3"
3690− resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.6.3.tgz#4c3ddbf9635968ea2cfd4e48d43de5def2625ac3"
3691− dependencies:
3692− builtin-status-codes "^3.0.0"
3693− inherits "^2.0.1"
3694− readable-stream "^2.1.0"
3695− to-arraybuffer "^1.0.0"
3696− xtend "^4.0.0"
3697−
3698−stream-shift@^1.0.0:
3699− version "1.0.0"
3700− resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952"
3701−
3702−stream-splicer@^2.0.0:
3703− version "2.0.0"
3704− resolved "https://registry.yarnpkg.com/stream-splicer/-/stream-splicer-2.0.0.tgz#1b63be438a133e4b671cc1935197600175910d83"
3705− dependencies:
3706− inherits "^2.0.1"
3707− readable-stream "^2.0.2"
3708−
3709−string-stream@0.0.7:
3710− version "0.0.7"
3711− resolved "https://registry.yarnpkg.com/string-stream/-/string-stream-0.0.7.tgz#cfcde82799fa62f303429aaa79336ee8834332fe"
3712−
3713904string-width@^1.0.1:
3714905 version "1.0.2"
3715906 resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
@@ -3725,86 +916,28 @@ string-width@^2.0.0:
3725916 is-fullwidth-code-point "^2.0.0"
3726917 strip-ansi "^3.0.0"
3727918
3728−string_decoder@~0.10.0, string_decoder@~0.10.x:
919+string_decoder@~0.10.x:
3729920 version "0.10.31"
3730921 resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
3731922
3732−stringstream@~0.0.4:
3733− version "0.0.5"
3734− resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878"
3735−
3736−strip-ansi@^3.0.0, strip-ansi@^3.0.1:
923+strip-ansi@^3.0.0:
3737924 version "3.0.1"
3738925 resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
3739926 dependencies:
3740927 ansi-regex "^2.0.0"
3741928
3742−strip-bom-stream@^1.0.0:
3743− version "1.0.0"
3744− resolved "https://registry.yarnpkg.com/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz#e7144398577d51a6bed0fa1994fa05f43fd988ee"
3745− dependencies:
3746− first-chunk-stream "^1.0.0"
3747− strip-bom "^2.0.0"
3748−
3749−strip-bom@^2.0.0:
3750− version "2.0.0"
3751− resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
3752− dependencies:
3753− is-utf8 "^0.2.0"
3754−
3755929strip-bom@^3.0.0:
3756930 version "3.0.0"
3757931 resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
3758932
3759−strip-dirs@^1.0.0:
3760− version "1.1.1"
3761− resolved "https://registry.yarnpkg.com/strip-dirs/-/strip-dirs-1.1.1.tgz#960bbd1287844f3975a4558aa103a8255e2456a0"
3762− dependencies:
3763− chalk "^1.0.0"
3764− get-stdin "^4.0.1"
3765− is-absolute "^0.1.5"
3766− is-natural-number "^2.0.0"
3767− minimist "^1.1.0"
3768− sum-up "^1.0.1"
3769−
3770−strip-indent@^1.0.1:
3771− version "1.0.1"
3772− resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2"
3773− dependencies:
3774− get-stdin "^4.0.1"
3775−
3776−strip-json-comments@2.0.1, strip-json-comments@~2.0.1:
933+strip-json-comments@~2.0.1:
3777934 version "2.0.1"
3778935 resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
3779936
3780−strip-outer@^1.0.0:
3781− version "1.0.0"
3782− resolved "https://registry.yarnpkg.com/strip-outer/-/strip-outer-1.0.0.tgz#aac0ba60d2e90c5d4f275fd8869fd9a2d310ffb8"
3783− dependencies:
3784− escape-string-regexp "^1.0.2"
3785−
3786−subarg@^1.0.0:
3787− version "1.0.0"
3788− resolved "https://registry.yarnpkg.com/subarg/-/subarg-1.0.0.tgz#f62cf17581e996b48fc965699f54c06ae268b8d2"
3789− dependencies:
3790− minimist "^1.1.0"
3791−
3792−sum-up@^1.0.1:
3793− version "1.0.3"
3794− resolved "https://registry.yarnpkg.com/sum-up/-/sum-up-1.0.3.tgz#1c661f667057f63bcb7875aa1438bc162525156e"
3795− dependencies:
3796− chalk "^1.0.0"
3797−
3798937supports-color@^2.0.0:
3799938 version "2.0.0"
3800939 resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
3801940
3802−syntax-error@^1.1.1:
3803− version "1.3.0"
3804− resolved "https://registry.yarnpkg.com/syntax-error/-/syntax-error-1.3.0.tgz#1ed9266c4d40be75dc55bf9bb1cb77062bb96ca1"
3805− dependencies:
3806− acorn "^4.0.3"
3807−
3808941table@^3.7.8:
3809942 version "3.8.3"
3810943 resolved "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz#2bbc542f0fda9861a755d3947fefd8b3f513855f"
@@ -3816,174 +949,29 @@ table@^3.7.8:
3816949 slice-ansi "0.0.4"
3817950 string-width "^2.0.0"
3818951
3819−tar-pack@~3.3.0:
3820− version "3.3.0"
3821− resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.3.0.tgz#30931816418f55afc4d21775afdd6720cee45dae"
3822− dependencies:
3823− debug "~2.2.0"
3824− fstream "~1.0.10"
3825− fstream-ignore "~1.0.5"
3826− once "~1.3.3"
3827− readable-stream "~2.1.4"
3828− rimraf "~2.5.1"
3829− tar "~2.2.1"
3830− uid-number "~0.0.6"
3831−
3832−tar-stream@^1.1.1:
3833− version "1.5.2"
3834− resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.5.2.tgz#fbc6c6e83c1a19d4cb48c7d96171fc248effc7bf"
3835− dependencies:
3836− bl "^1.0.0"
3837− end-of-stream "^1.0.0"
3838− readable-stream "^2.0.0"
3839− xtend "^4.0.0"
3840−
3841−tar@~2.2.1:
3842− version "2.2.1"
3843− resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1"
3844− dependencies:
3845− block-stream "*"
3846− fstream "^1.0.2"
3847− inherits "2"
3848−
3849−temp@^0.8.1:
3850− version "0.8.3"
3851− resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.3.tgz#e0c6bc4d26b903124410e4fed81103014dfc1f59"
3852− dependencies:
3853− os-tmpdir "^1.0.0"
3854− rimraf "~2.2.6"
3855−
3856−tempfile@^1.0.0, tempfile@^1.1.1:
3857− version "1.1.1"
3858− resolved "https://registry.yarnpkg.com/tempfile/-/tempfile-1.1.1.tgz#5bcc4eaecc4ab2c707d8bc11d99ccc9a2cb287f2"
3859− dependencies:
3860− os-tmpdir "^1.0.0"
3861− uuid "^2.0.1"
3862−
3863−text-extensions@^1.0.0:
3864− version "1.4.0"
3865− resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.4.0.tgz#c385d2e80879fe6ef97893e1709d88d9453726e9"
3866−
3867952text-table@~0.2.0:
3868953 version "0.2.0"
3869954 resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
3870955
3871−through2-filter@^2.0.0:
3872− version "2.0.0"
3873− resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-2.0.0.tgz#60bc55a0dacb76085db1f9dae99ab43f83d622ec"
3874− dependencies:
3875− through2 "~2.0.0"
3876− xtend "~4.0.0"
3877−
3878−through2@^0.6.0, through2@^0.6.1:
3879− version "0.6.5"
3880− resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48"
3881− dependencies:
3882− readable-stream ">=1.0.33-1 <1.1.0-0"
3883− xtend ">=4.0.0 <4.1.0-0"
3884−
3885−through2@^2.0.0, through2@^2.0.2, through2@~2.0.0:
3886− version "2.0.3"
3887− resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be"
3888− dependencies:
3889− readable-stream "^2.1.5"
3890− xtend "~4.0.1"
3891−
3892−through@2, "through@>=2.2.7 <3", through@^2.3.6, through@^2.3.8:
956+through@^2.3.6:
3893957 version "2.3.8"
3894958 resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
3895959
3896−time-stamp@^1.0.0:
3897− version "1.0.1"
3898− resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.0.1.tgz#9f4bd23559c9365966f3302dbba2b07c6b99b151"
3899−
3900−timed-out@^3.0.0:
3901− version "3.1.3"
3902− resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-3.1.3.tgz#95860bfcc5c76c277f8f8326fd0f5b2e20eba217"
3903−
3904−timers-browserify@^1.0.1:
3905− version "1.4.2"
3906− resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-1.4.2.tgz#c9c58b575be8407375cb5e2462dacee74359f41d"
3907− dependencies:
3908− process "~0.11.0"
3909−
3910−tmp@^0.0.29:
3911− version "0.0.29"
3912− resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.29.tgz#f25125ff0dd9da3ccb0c2dd371ee1288bb9128c0"
3913− dependencies:
3914− os-tmpdir "~1.0.1"
3915−
3916−to-absolute-glob@^0.1.1:
3917− version "0.1.1"
3918− resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz#1cdfa472a9ef50c239ee66999b662ca0eb39937f"
3919− dependencies:
3920− extend-shallow "^2.0.1"
3921−
3922−to-arraybuffer@^1.0.0:
3923− version "1.0.1"
3924− resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
3925−
3926−to-executable-name@^1.0.0:
3927− version "1.1.0"
3928− resolved "https://registry.yarnpkg.com/to-executable-name/-/to-executable-name-1.1.0.tgz#3efbf9a370e5d7fb7820530df76f085959b27778"
3929−
3930−tough-cookie@~2.3.0:
3931− version "2.3.2"
3932− resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a"
3933− dependencies:
3934− punycode "^1.4.1"
3935−
3936−tree-kill@^1.0.0:
3937− version "1.1.0"
3938− resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.1.0.tgz#c963dcf03722892ec59cba569e940b71954d1729"
3939−
3940−trim-newlines@^1.0.0:
3941− version "1.0.0"
3942− resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
3943−
3944−trim-off-newlines@^1.0.0:
3945− version "1.0.1"
3946− resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3"
3947−
3948−trim-repeated@^1.0.0:
3949− version "1.0.0"
3950− resolved "https://registry.yarnpkg.com/trim-repeated/-/trim-repeated-1.0.0.tgz#e3646a2ea4e891312bf7eace6cfb05380bc01c21"
3951− dependencies:
3952− escape-string-regexp "^1.0.2"
3953−
3954960tryit@^1.0.1:
3955961 version "1.0.3"
3956962 resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb"
3957963
3958−tty-browserify@~0.0.0:
3959− version "0.0.0"
3960− resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
3961−
3962−tunnel-agent@^0.4.0:
3963− version "0.4.3"
3964− resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb"
3965−
3966−tunnel-agent@^0.6.0:
3967− version "0.6.0"
3968− resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
3969− dependencies:
3970− safe-buffer "^5.0.1"
3971−
3972−tweetnacl@^0.14.3, tweetnacl@~0.14.0:
3973− version "0.14.5"
3974− resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
3975−
3976964type-check@~0.3.2:
3977965 version "0.3.2"
3978966 resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
3979967 dependencies:
3980968 prelude-ls "~1.1.2"
3981969
3982−typedarray@^0.0.6, typedarray@~0.0.5:
970+typedarray@^0.0.6:
3983971 version "0.0.6"
3984972 resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
3985973
3986−uglify-js@^2.6, uglify-js@^2.8.11:
974+uglify-js@^2.8.11:
3987975 version "2.8.11"
3988976 resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.11.tgz#11a51c43d810b47bc00aee4d512cb3947ddd1ac4"
3989977 dependencies:
@@ -3995,44 +983,6 @@ uglify-to-browserify@~1.0.0:
3995983 version "1.0.2"
3996984 resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
3997985
3998−uid-number@~0.0.6:
3999− version "0.0.6"
4000− resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81"
4001−
4002−umd@^3.0.0:
4003− version "3.0.1"
4004− resolved "https://registry.yarnpkg.com/umd/-/umd-3.0.1.tgz#8ae556e11011f63c2596708a8837259f01b3d60e"
4005−
4006−unique-stream@^2.0.2:
4007− version "2.2.1"
4008− resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.2.1.tgz#5aa003cfbe94c5ff866c4e7d668bb1c4dbadb369"
4009− dependencies:
4010− json-stable-stringify "^1.0.0"
4011− through2-filter "^2.0.0"
4012−
4013−unzip-response@^1.0.2:
4014− version "1.0.2"
4015− resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe"
4016−
4017−url-parse-lax@^1.0.0:
4018− version "1.0.0"
4019− resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73"
4020− dependencies:
4021− prepend-http "^1.0.1"
4022−
4023−url-regex@^3.0.0:
4024− version "3.2.0"
4025− resolved "https://registry.yarnpkg.com/url-regex/-/url-regex-3.2.0.tgz#dbad1e0c9e29e105dd0b1f09f6862f7fdb482724"
4026− dependencies:
4027− ip-regex "^1.0.1"
4028−
4029−url@~0.11.0:
4030− version "0.11.0"
4031− resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1"
4032− dependencies:
4033− punycode "1.3.2"
4034− querystring "0.2.0"
4035−
4036986user-home@^2.0.0:
4037987 version "2.0.0"
4038988 resolved "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f"
@@ -4043,155 +993,22 @@ util-deprecate@~1.0.1:
4043993 version "1.0.2"
4044994 resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
4045995
4046−util@0.10.3, util@~0.10.1:
4047− version "0.10.3"
4048− resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
4049− dependencies:
4050− inherits "2.0.1"
4051−
4052−uuid@^2.0.1:
4053− version "2.0.3"
4054− resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a"
4055−
4056−uuid@^3.0.0:
4057− version "3.0.1"
4058− resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1"
4059−
4060−vali-date@^1.0.0:
4061− version "1.0.0"
4062− resolved "https://registry.yarnpkg.com/vali-date/-/vali-date-1.0.0.tgz#1b904a59609fb328ef078138420934f6b86709a6"
4063−
4064−validate-commit-msg@^2.11.2:
4065− version "2.11.2"
4066− resolved "https://registry.yarnpkg.com/validate-commit-msg/-/validate-commit-msg-2.11.2.tgz#63bd15c2cd8fb782b230a9f51d0f4e9d31f7ee24"
4067− dependencies:
4068− conventional-commit-types "^2.0.0"
4069− findup "0.1.5"
4070− semver-regex "1.0.0"
4071−
4072−validate-npm-package-license@^3.0.1:
4073− version "3.0.1"
4074− resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc"
4075− dependencies:
4076− spdx-correct "~1.0.0"
4077− spdx-expression-parse "~1.0.0"
4078−
4079−verror@1.3.6:
4080− version "1.3.6"
4081− resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c"
4082− dependencies:
4083− extsprintf "1.0.2"
4084−
4085−vinyl-assign@^1.0.1:
4086− version "1.2.1"
4087− resolved "https://registry.yarnpkg.com/vinyl-assign/-/vinyl-assign-1.2.1.tgz#4d198891b5515911d771a8cd9c5480a46a074a45"
4088− dependencies:
4089− object-assign "^4.0.1"
4090− readable-stream "^2.0.0"
4091−
4092−vinyl-fs@^2.2.0:
4093− version "2.4.4"
4094− resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-2.4.4.tgz#be6ff3270cb55dfd7d3063640de81f25d7532239"
4095− dependencies:
4096− duplexify "^3.2.0"
4097− glob-stream "^5.3.2"
4098− graceful-fs "^4.0.0"
4099− gulp-sourcemaps "1.6.0"
4100− is-valid-glob "^0.3.0"
4101− lazystream "^1.0.0"
4102− lodash.isequal "^4.0.0"
4103− merge-stream "^1.0.0"
4104− mkdirp "^0.5.0"
4105− object-assign "^4.0.0"
4106− readable-stream "^2.0.4"
4107− strip-bom "^2.0.0"
4108− strip-bom-stream "^1.0.0"
4109− through2 "^2.0.0"
4110− through2-filter "^2.0.0"
4111− vali-date "^1.0.0"
4112− vinyl "^1.0.0"
4113−
4114−vinyl@^0.4.3:
4115− version "0.4.6"
4116− resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847"
4117− dependencies:
4118− clone "^0.2.0"
4119− clone-stats "^0.0.1"
4120−
4121−vinyl@^0.5.0:
4122− version "0.5.3"
4123− resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde"
4124− dependencies:
4125− clone "^1.0.0"
4126− clone-stats "^0.0.1"
4127− replace-ext "0.0.1"
4128−
4129−vinyl@^1.0.0:
4130− version "1.2.0"
4131− resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-1.2.0.tgz#5c88036cf565e5df05558bfc911f8656df218884"
4132− dependencies:
4133− clone "^1.0.0"
4134− clone-stats "^0.0.1"
4135− replace-ext "0.0.1"
4136−
4137996vlq@^0.2.1:
4138997 version "0.2.1"
4139998 resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.1.tgz#14439d711891e682535467f8587c5630e4222a6c"
4140999
4141−vm-browserify@~0.0.1:
4142− version "0.0.4"
4143− resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73"
4144− dependencies:
4145− indexof "0.0.1"
4146−
4147−ware@^1.2.0:
4148− version "1.3.0"
4149− resolved "https://registry.yarnpkg.com/ware/-/ware-1.3.0.tgz#d1b14f39d2e2cb4ab8c4098f756fe4b164e473d4"
4150− dependencies:
4151− wrap-fn "^0.1.0"
4152−
4153−watchpack@^1.0.1:
4154− version "1.3.1"
4155− resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.3.1.tgz#7d8693907b28ce6013e7f3610aa2a1acf07dad87"
4156− dependencies:
4157− async "^2.1.2"
4158− chokidar "^1.4.3"
4159− graceful-fs "^4.1.2"
4160−
4161−which@^1.2.1, which@^1.2.12:
4162− version "1.2.12"
4163− resolved "https://registry.yarnpkg.com/which/-/which-1.2.12.tgz#de67b5e450269f194909ef23ece4ebe416fa1192"
4164− dependencies:
4165− isexe "^1.1.1"
4166−
4167−wide-align@^1.1.0:
4168− version "1.1.0"
4169− resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.0.tgz#40edde802a71fea1f070da3e62dcda2e7add96ad"
4170− dependencies:
4171− string-width "^1.0.1"
4172−
41731000window-size@0.1.0:
41741001 version "0.1.0"
41751002 resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
41761003
4177−word-wrap@^1.0.3:
4178− version "1.2.1"
4179− resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.1.tgz#248f459b465d179a17bc407c854d3151d07e45d8"
4180−
4181−wordwrap@0.0.2, wordwrap@~0.0.2:
1004+wordwrap@0.0.2:
41821005 version "0.0.2"
41831006 resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
41841007
4185−wordwrap@1.0.0, wordwrap@~1.0.0:
1008+wordwrap@~1.0.0:
41861009 version "1.0.0"
41871010 resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
41881011
4189−wrap-fn@^0.1.0:
4190− version "0.1.5"
4191− resolved "https://registry.yarnpkg.com/wrap-fn/-/wrap-fn-0.1.5.tgz#f21b6e41016ff4a7e31720dbc63a09016bdf9845"
4192− dependencies:
4193− co "3.1.0"
4194−
41951012wrappy@1:
41961013 version "1.0.2"
41971014 resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
@@ -4202,7 +1019,7 @@ write@^0.2.1:
42021019 dependencies:
42031020 mkdirp "^0.5.1"
42041021
4205−"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@~4.0.0, xtend@~4.0.1:
1022+xtend@^4.0.0:
42061023 version "4.0.1"
42071024 resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
42081025
@@ -4214,10 +1031,3 @@ yargs@~3.10.0:
42141031 cliui "^2.1.0"
42151032 decamelize "^1.0.0"
42161033 window-size "0.1.0"
4217−
4218−yauzl@^2.2.1:
4219− version "2.7.0"
4220− resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.7.0.tgz#e21d847868b496fc29eaec23ee87fdd33e9b2bce"
4221− dependencies:
4222− buffer-crc32 "~0.2.3"
4223− fd-slicer "~1.0.1"