Comparing version
import { talkbackT, signalT } from '../Wonka_types.gen'; | ||
declare type talkbackCb = (tb: talkbackT) => void; | ||
export declare const pull: import("../shims/Js.shim").talkbackT; | ||
export declare const close: import("../shims/Js.shim").talkbackT; | ||
export declare const pull: talkbackT; | ||
export declare const close: talkbackT; | ||
export declare const start: <a>(tb: talkbackCb) => import("../shims/Js.shim").signalT<a>; | ||
@@ -6,0 +6,0 @@ export declare const push: <a>(x: a) => import("../shims/Js.shim").signalT<a>; |
@@ -5,6 +5,8 @@ export declare type Exn_t = Error; | ||
export declare type signalT<a> = ({ | ||
tag: 0; | ||
} & [(talkback: talkbackT) => void]) | ({ | ||
tag: 1; | ||
} & [a]) | 0; | ||
TAG: 0; | ||
_0: (talkback: talkbackT) => void; | ||
}) | ({ | ||
TAG: 1; | ||
_0: a; | ||
}) | 0; | ||
export interface observableSubscriptionT { | ||
@@ -11,0 +13,0 @@ unsubscribe(): void; |
1812
dist/wonka.js
'use strict'; | ||
function __(a, b) { | ||
b.tag = a; | ||
return b; | ||
} | ||
function talkbackPlaceholder(a) {} | ||
@@ -17,18 +12,25 @@ | ||
g = 0; | ||
b( | ||
__(0, [ | ||
function (h) { | ||
if (h) { | ||
e = !0; | ||
} else if (d) { | ||
f = !0; | ||
} else { | ||
for (d = f = !0; f && !e; ) { | ||
g < c ? ((h = a[g]), (g = (g + 1) | 0), (f = !1), b(__(1, [h]))) : ((e = !0), b(0)); | ||
} | ||
d = !1; | ||
b({ | ||
TAG: 0, | ||
_0: function (h) { | ||
if (h) { | ||
e = !0; | ||
} else if (d) { | ||
f = !0; | ||
} else { | ||
for (d = f = !0; f && !e; ) { | ||
g < c | ||
? ((h = a[g]), | ||
(g = (g + 1) | 0), | ||
(f = !1), | ||
b({ | ||
TAG: 1, | ||
_0: h, | ||
})) | ||
: ((e = !0), b(0)); | ||
} | ||
}, | ||
]) | ||
); | ||
d = !1; | ||
} | ||
}, | ||
}); | ||
}; | ||
@@ -45,28 +47,30 @@ } | ||
let b = !1; | ||
a( | ||
__(0, [ | ||
function (c) { | ||
c ? (b = !0) : b || a(0); | ||
}, | ||
]) | ||
); | ||
a({ | ||
TAG: 0, | ||
_0: function (c) { | ||
c ? (b = !0) : b || a(0); | ||
}, | ||
}); | ||
} | ||
function some(a) { | ||
if (void 0 === a) { | ||
return ((a = [undefinedHeader, 0]).tag = 256), a; | ||
} | ||
if (null === a || a[0] !== undefinedHeader) { | ||
return a; | ||
} | ||
(a = [undefinedHeader, (a[1] + 1) | 0]).tag = 256; | ||
return a; | ||
return void 0 === a | ||
? { | ||
BS_PRIVATE_NESTED_SOME_NONE: 0, | ||
} | ||
: null !== a && void 0 !== a.BS_PRIVATE_NESTED_SOME_NONE | ||
? { | ||
BS_PRIVATE_NESTED_SOME_NONE: (a.BS_PRIVATE_NESTED_SOME_NONE + 1) | 0, | ||
} | ||
: a; | ||
} | ||
function valFromOption(a) { | ||
if (null === a || a[0] !== undefinedHeader) { | ||
if (null === a || void 0 === a.BS_PRIVATE_NESTED_SOME_NONE) { | ||
return a; | ||
} | ||
if (0 !== (a = a[1])) { | ||
return [undefinedHeader, (a - 1) | 0]; | ||
if (0 !== (a = a.BS_PRIVATE_NESTED_SOME_NONE)) { | ||
return { | ||
BS_PRIVATE_NESTED_SOME_NONE: (a - 1) | 0, | ||
}; | ||
} | ||
@@ -87,5 +91,5 @@ } | ||
: g || ((g = !0), f(0))) | ||
: b.tag | ||
: b.TAG | ||
? k && (c(b), l ? (l = !1) : h(0)) | ||
: ((h = b = b[0]), (l = !1), b(0)); | ||
: ((h = b = b._0), (l = !1), b(0)); | ||
} | ||
@@ -108,19 +112,18 @@ let d = [], | ||
c(0)) | ||
: b.tag | ||
? m || ((b = b[0]), (g = !1), k ? d.push(b) : ((b = a(b)), (k = !0), b(e))) | ||
: (f = b[0]); | ||
: b.TAG | ||
? m || ((b = b._0), (g = !1), k ? d.push(b) : ((b = a(b)), (k = !0), b(e))) | ||
: (f = b._0); | ||
}); | ||
c( | ||
__(0, [ | ||
function (a) { | ||
if (a) { | ||
if ((m || ((m = !0), f(1)), k)) { | ||
return (k = !1), h(1); | ||
} | ||
} else { | ||
m || g || ((g = !0), f(0)), k && !l && ((l = !0), h(0)); | ||
c({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (a) { | ||
if ((m || ((m = !0), f(1)), k)) { | ||
return (k = !1), h(1); | ||
} | ||
}, | ||
]) | ||
); | ||
} else { | ||
m || g || ((g = !0), f(0)), k && !l && ((l = !0), h(0)); | ||
} | ||
}, | ||
}); | ||
}; | ||
@@ -152,3 +155,3 @@ }; | ||
? g || ((g = !0), 0 === f.length && c(0)) | ||
: b.tag | ||
: b.TAG | ||
? g || | ||
@@ -166,25 +169,29 @@ ((d = !1), | ||
g && a ? c(0) : !d && a && ((d = !0), e(0))) | ||
: a.tag | ||
? 0 !== f.length && (c(__(1, [a[0]])), k(0)) | ||
: ((k = a = a[0]), (f = f.concat(a)), a(0)); | ||
: a.TAG | ||
? 0 !== f.length && | ||
(c({ | ||
TAG: 1, | ||
_0: a._0, | ||
}), | ||
k(0)) | ||
: ((k = a = a._0), (f = f.concat(a)), a(0)); | ||
}; | ||
let k = talkbackPlaceholder; | ||
1 === a.length ? a(h) : a.bind(null, h); | ||
})(a(b[0])), | ||
})(a(b._0)), | ||
d || ((d = !0), e(0))) | ||
: (e = b[0]); | ||
: (e = b._0); | ||
}); | ||
c( | ||
__(0, [ | ||
function (a) { | ||
a | ||
? (g || ((g = !0), e(a)), | ||
f.forEach(function (c) { | ||
return c(a); | ||
}), | ||
(f = [])) | ||
: (d || g ? (d = !1) : ((d = !0), e(0)), f.forEach(_ref7)); | ||
}, | ||
]) | ||
); | ||
c({ | ||
TAG: 0, | ||
_0: function (a) { | ||
a | ||
? (g || ((g = !0), e(a)), | ||
f.forEach(function (c) { | ||
return c(a); | ||
}), | ||
(f = [])) | ||
: (d || g ? (d = !1) : ((d = !0), e(0)), f.forEach(_ref7)); | ||
}, | ||
}); | ||
}; | ||
@@ -213,15 +220,14 @@ }; | ||
e || ((e = !0), c(d)); | ||
} else if (d.tag) { | ||
e || (a(d[0]), c(d)); | ||
} else if (d.TAG) { | ||
e || (a(d._0), c(d)); | ||
} else { | ||
var g = d[0]; | ||
c( | ||
__(0, [ | ||
function (a) { | ||
if (!e) { | ||
return a && (e = !0), g(a); | ||
} | ||
}, | ||
]) | ||
); | ||
var g = d._0; | ||
c({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (!e) { | ||
return a && (e = !0), g(a); | ||
} | ||
}, | ||
}); | ||
} | ||
@@ -244,5 +250,5 @@ }); | ||
? ((h = !1), l ? c(a) : f || ((f = !0), d(0))) | ||
: a.tag | ||
: a.TAG | ||
? (c(a), k ? (k = !1) : g(0)) | ||
: ((g = a = a[0]), (k = !1), a(0))); | ||
: ((g = a = a._0), (k = !1), a(0))); | ||
} | ||
@@ -258,24 +264,23 @@ let d = talkbackPlaceholder, | ||
? l || ((l = !0), h || c(0)) | ||
: b.tag | ||
: b.TAG | ||
? l || | ||
(h && (g(1), (g = talkbackPlaceholder)), | ||
f ? (f = !1) : ((f = !0), d(0)), | ||
(b = a(b[0])), | ||
(b = a(b._0)), | ||
(h = !0), | ||
b(e)) | ||
: (d = b[0]); | ||
: (d = b._0); | ||
}); | ||
c( | ||
__(0, [ | ||
function (a) { | ||
if (a) { | ||
if ((l || ((l = !0), d(1)), h)) { | ||
return (h = !1), g(1); | ||
} | ||
} else { | ||
l || f || ((f = !0), d(0)), h && !k && ((k = !0), g(0)); | ||
c({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (a) { | ||
if ((l || ((l = !0), d(1)), h)) { | ||
return (h = !1), g(1); | ||
} | ||
}, | ||
]) | ||
); | ||
} else { | ||
l || f || ((f = !0), d(0)), h && !k && ((k = !0), g(0)); | ||
} | ||
}, | ||
}); | ||
}; | ||
@@ -297,5 +302,5 @@ }; | ||
? fromArray(e)(c) | ||
: b.tag | ||
? (e.length >= a && 0 < a && e.shift(), e.push(b[0]), d(0)) | ||
: ((b = b[0]), 0 >= a ? (b(1), empty(c)) : ((d = b), b(0))); | ||
: b.TAG | ||
? (e.length >= a && 0 < a && e.shift(), e.push(b._0), d(0)) | ||
: ((b = b._0), 0 >= a ? (b(1), empty(c)) : ((d = b), b(0))); | ||
}); | ||
@@ -311,3 +316,3 @@ }; | ||
b(function (b) { | ||
'number' == typeof b ? (e = !0) : b.tag ? e || (a(b[0]), c(0)) : ((c = b = b[0]), b(0)); | ||
'number' == typeof b ? (e = !0) : b.TAG ? e || (a(b._0), c(0)) : ((c = b = b._0), b(0)); | ||
}); | ||
@@ -336,52 +341,19 @@ return { | ||
var undefinedHeader, | ||
buffer$1, | ||
combine$1, | ||
concatMap$1, | ||
concatAll$1, | ||
concat$1, | ||
filter$1, | ||
map$1, | ||
mergeMap$1, | ||
merge$1, | ||
mergeAll$1, | ||
flatten$1, | ||
onEnd$1, | ||
onPush$1, | ||
tap$1, | ||
onStart$1, | ||
sample$1, | ||
scan$1, | ||
share$1, | ||
skip$1, | ||
skipUntil$1, | ||
skipWhile$1, | ||
switchMap$1, | ||
switchAll$1, | ||
take$1, | ||
takeLast$1, | ||
takeUntil$1, | ||
takeWhile$1, | ||
subscribe$1, | ||
forEach$1, | ||
publish$1, | ||
toArray$1, | ||
observableSymbol, | ||
fromObservable$2, | ||
toObservable$2, | ||
fromCallbag$2, | ||
toCallbag$2, | ||
debounce$1, | ||
delay$1, | ||
throttle$1, | ||
toPromise$1, | ||
interval$1, | ||
fromDomEvent$1, | ||
fromPromise$1, | ||
fromArray$1 = fromArray, | ||
empty$1 = empty; | ||
var fromArray$1 = fromArray, | ||
empty$1 = empty, | ||
concatMap$1 = concatMap, | ||
mergeMap$1 = mergeMap, | ||
mergeAll$1 = mergeAll, | ||
flatten$1 = mergeAll, | ||
onPush$1 = onPush, | ||
tap$1 = onPush, | ||
switchMap$1 = switchMap, | ||
takeLast$1 = takeLast, | ||
subscribe$1 = subscribe, | ||
observableSymbol = | ||
'function' == typeof Symbol | ||
? Symbol.observable || (Symbol.observable = Symbol('observable')) | ||
: '@@observable'; | ||
undefinedHeader = []; | ||
(buffer$1 = function (a) { | ||
exports.buffer = function (a) { | ||
return function (b) { | ||
@@ -391,6 +363,21 @@ return function (c) { | ||
'number' == typeof a | ||
? k || ((k = !0), f(1), 0 < d.length && c(__(1, [d])), c(0)) | ||
: a.tag | ||
? !k && 0 < d.length && ((a = d), (d = []), c(__(1, [a]))) | ||
: (g = a[0]); | ||
? k || | ||
((k = !0), | ||
f(1), | ||
0 < d.length && | ||
c({ | ||
TAG: 1, | ||
_0: d, | ||
}), | ||
c(0)) | ||
: a.TAG | ||
? !k && | ||
0 < d.length && | ||
((a = d), | ||
(d = []), | ||
c({ | ||
TAG: 1, | ||
_0: a, | ||
})) | ||
: (g = a._0); | ||
} | ||
@@ -404,715 +391,236 @@ let d = [], | ||
'number' == typeof b | ||
? k || ((k = !0), g(1), 0 < d.length && c(__(1, [d])), c(0)) | ||
: b.tag | ||
? k || (d.push(b[0]), h ? (h = !1) : ((h = !0), f(0), g(0))) | ||
: ((f = b[0]), a(e)); | ||
? k || | ||
((k = !0), | ||
g(1), | ||
0 < d.length && | ||
c({ | ||
TAG: 1, | ||
_0: d, | ||
}), | ||
c(0)) | ||
: b.TAG | ||
? k || (d.push(b._0), h ? (h = !1) : ((h = !0), f(0), g(0))) | ||
: ((f = b._0), a(e)); | ||
}); | ||
c( | ||
__(0, [ | ||
function (a) { | ||
if (!k) { | ||
if (a) { | ||
return (k = !0), f(1), g(1); | ||
} | ||
if (!h) { | ||
return (h = !0), f(0), g(0); | ||
} | ||
c({ | ||
TAG: 0, | ||
_0: function (c) { | ||
if (!k) { | ||
if (c) { | ||
return (k = !0), f(1), g(1); | ||
} | ||
}, | ||
]) | ||
); | ||
}; | ||
}; | ||
}), | ||
(combine$1 = function (a, b) { | ||
return (function (a, b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder, | ||
d = talkbackPlaceholder, | ||
f = void 0, | ||
g = void 0, | ||
h = !1, | ||
k = 0, | ||
l = !1; | ||
a(function (a) { | ||
var b = g; | ||
'number' == typeof a | ||
? 1 > k | ||
? (k = (k + 1) | 0) | ||
: l || ((l = !0), c(0)) | ||
: a.tag | ||
? ((a = a[0]), | ||
void 0 !== b | ||
? l || ((f = some(a)), (h = !1), c(__(1, [[a, valFromOption(b)]]))) | ||
: ((f = some(a)), h ? (h = !1) : d(0))) | ||
: (e = a[0]); | ||
}); | ||
b(function (a) { | ||
var b = f; | ||
'number' == typeof a | ||
? 1 > k | ||
? (k = (k + 1) | 0) | ||
: l || ((l = !0), c(0)) | ||
: a.tag | ||
? ((a = a[0]), | ||
void 0 !== b | ||
? l || ((g = some(a)), (h = !1), c(__(1, [[valFromOption(b), a]]))) | ||
: ((g = some(a)), h ? (h = !1) : e(0))) | ||
: (d = a[0]); | ||
}); | ||
c( | ||
__(0, [ | ||
function (a) { | ||
if (!l) { | ||
if (a) { | ||
return (l = !0), e(1), d(1); | ||
} | ||
if (!h) { | ||
return (h = !0), e(a), d(a); | ||
} | ||
} | ||
}, | ||
]) | ||
); | ||
}; | ||
})(a, b); | ||
}), | ||
(concatMap$1 = concatMap), | ||
(concatAll$1 = function (a) { | ||
return concatMap(_ref3)(a); | ||
}), | ||
(concat$1 = function (a) { | ||
return concatMap(_ref4$1)(fromArray(a)); | ||
}), | ||
(filter$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder; | ||
return b(function (d) { | ||
'number' == typeof d ? c(d) : d.tag ? (a(d[0]) ? c(d) : e(0)) : ((e = d[0]), c(d)); | ||
}); | ||
}; | ||
}; | ||
}), | ||
(map$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
return b(function (b) { | ||
b = 'number' == typeof b ? 0 : b.tag ? __(1, [a(b[0])]) : __(0, [b[0]]); | ||
c(b); | ||
}); | ||
}; | ||
}; | ||
}), | ||
(mergeMap$1 = mergeMap), | ||
(merge$1 = function (a) { | ||
return mergeMap(_ref8)(fromArray(a)); | ||
}), | ||
(mergeAll$1 = mergeAll), | ||
(flatten$1 = mergeAll), | ||
(onEnd$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = !1; | ||
return b(function (d) { | ||
if ('number' == typeof d) { | ||
if (e) { | ||
return; | ||
if (!h) { | ||
return (h = !0), f(0), g(0); | ||
} | ||
e = !0; | ||
c(d); | ||
return a(); | ||
} | ||
if (d.tag) { | ||
e || c(d); | ||
} else { | ||
var b = d[0]; | ||
c( | ||
__(0, [ | ||
function (c) { | ||
if (!e) { | ||
return c ? ((e = !0), b(c), a()) : b(c); | ||
} | ||
}, | ||
]) | ||
); | ||
} | ||
}); | ||
}; | ||
}, | ||
}); | ||
}; | ||
}), | ||
(onPush$1 = onPush), | ||
(tap$1 = onPush), | ||
(onStart$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
return b(function (b) { | ||
'number' == typeof b ? c(b) : b.tag ? c(b) : (c(b), a()); | ||
}); | ||
}; | ||
}; | ||
}), | ||
(sample$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder, | ||
d = talkbackPlaceholder, | ||
f = void 0, | ||
g = !1, | ||
h = !1; | ||
b(function (a) { | ||
'number' == typeof a | ||
? h || ((h = !0), d(1), c(0)) | ||
: a.tag | ||
? ((f = some(a[0])), g ? (g = !1) : ((g = !0), d(0), e(0))) | ||
: (e = a[0]); | ||
}); | ||
a(function (a) { | ||
var b = f; | ||
'number' == typeof a | ||
? h || ((h = !0), e(1), c(0)) | ||
: a.tag | ||
? void 0 === b || h || ((f = void 0), c(__(1, [valFromOption(b)]))) | ||
: (d = a[0]); | ||
}); | ||
c( | ||
__(0, [ | ||
function (a) { | ||
if (!h) { | ||
if (a) { | ||
return (h = !0), e(1), d(1); | ||
} | ||
if (!g) { | ||
return (g = !0), e(0), d(0); | ||
} | ||
} | ||
}, | ||
]) | ||
); | ||
}; | ||
}; | ||
}), | ||
(scan$1 = function (a, b) { | ||
return (function (a, b) { | ||
return function (c) { | ||
return function (e) { | ||
let d = b; | ||
return c(function (c) { | ||
'number' == typeof c | ||
? (c = 0) | ||
: c.tag | ||
? ((d = a(d, c[0])), (c = __(1, [d]))) | ||
: (c = __(0, [c[0]])); | ||
e(c); | ||
}); | ||
}; | ||
}; | ||
})(a, b); | ||
}), | ||
(share$1 = function (a) { | ||
function b(a) { | ||
'number' == typeof a | ||
? (c.forEach(_ref11), (c = [])) | ||
: a.tag | ||
? ((d = !1), | ||
c.forEach(function (c) { | ||
c(a); | ||
})) | ||
: (e = a[0]); | ||
} | ||
let c = [], | ||
e = talkbackPlaceholder, | ||
d = !1; | ||
return function (f) { | ||
function g(a) { | ||
return a !== f; | ||
} | ||
c = c.concat(f); | ||
1 === c.length && a(b); | ||
f( | ||
__(0, [ | ||
function (a) { | ||
}; | ||
}; | ||
exports.combine = function (a, b) { | ||
return (function (a, b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder, | ||
d = talkbackPlaceholder, | ||
f = void 0, | ||
g = void 0, | ||
h = !1, | ||
k = 0, | ||
l = !1; | ||
a(function (a) { | ||
var b = g; | ||
'number' == typeof a | ||
? 1 > k | ||
? (k = (k + 1) | 0) | ||
: l || ((l = !0), c(0)) | ||
: a.TAG | ||
? ((a = a._0), | ||
void 0 !== b | ||
? l || | ||
((f = some(a)), | ||
(h = !1), | ||
c({ | ||
TAG: 1, | ||
_0: [a, valFromOption(b)], | ||
})) | ||
: ((f = some(a)), h ? (h = !1) : d(0))) | ||
: (e = a._0); | ||
}); | ||
b(function (a) { | ||
var b = f; | ||
'number' == typeof a | ||
? 1 > k | ||
? (k = (k + 1) | 0) | ||
: l || ((l = !0), c(0)) | ||
: a.TAG | ||
? ((a = a._0), | ||
void 0 !== b | ||
? l || | ||
((g = some(a)), | ||
(h = !1), | ||
c({ | ||
TAG: 1, | ||
_0: [valFromOption(b), a], | ||
})) | ||
: ((g = some(a)), h ? (h = !1) : e(0))) | ||
: (d = a._0); | ||
}); | ||
c({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (!l) { | ||
if (a) { | ||
if (((c = c.filter(g)), 0 === c.length)) { | ||
return e(1); | ||
} | ||
} else { | ||
d || ((d = !0), e(a)); | ||
return (l = !0), e(1), d(1); | ||
} | ||
}, | ||
]) | ||
); | ||
}; | ||
}), | ||
(skip$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder, | ||
d = a; | ||
return b(function (a) { | ||
'number' == typeof a | ||
? c(a) | ||
: a.tag | ||
? 0 < d | ||
? ((d = (d - 1) | 0), e(0)) | ||
: c(a) | ||
: ((e = a[0]), c(a)); | ||
}); | ||
}; | ||
}; | ||
}), | ||
(skipUntil$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
function e(a) { | ||
'number' == typeof a | ||
? g && ((k = !0), d(1)) | ||
: a.tag | ||
? ((g = !1), f(1)) | ||
: ((f = a = a[0]), a(0)); | ||
} | ||
let d = talkbackPlaceholder, | ||
f = talkbackPlaceholder, | ||
g = !0, | ||
h = !1, | ||
k = !1; | ||
b(function (b) { | ||
'number' == typeof b | ||
? (g && f(1), (k = !0), c(0)) | ||
: b.tag | ||
? g || k | ||
? h | ||
? (h = !1) | ||
: ((h = !0), d(0), f(0)) | ||
: ((h = !1), c(b)) | ||
: ((d = b[0]), a(e)); | ||
}); | ||
c( | ||
__(0, [ | ||
function (a) { | ||
if (!k) { | ||
if (a) { | ||
if (((k = !0), d(1), g)) { | ||
return f(1); | ||
} | ||
} else { | ||
h || ((h = !0), g && f(0), d(0)); | ||
} | ||
} | ||
}, | ||
]) | ||
); | ||
}; | ||
}; | ||
}), | ||
(skipWhile$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder, | ||
d = !0; | ||
return b(function (b) { | ||
'number' == typeof b | ||
? c(b) | ||
: b.tag | ||
? d | ||
? a(b[0]) | ||
? e(0) | ||
: ((d = !1), c(b)) | ||
: c(b) | ||
: ((e = b[0]), c(b)); | ||
}); | ||
}; | ||
}; | ||
}), | ||
(switchMap$1 = switchMap), | ||
(switchAll$1 = function (a) { | ||
return switchMap(_ref16)(a); | ||
}), | ||
(take$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = !1, | ||
d = 0, | ||
f = talkbackPlaceholder; | ||
b(function (b) { | ||
'number' == typeof b | ||
? e || ((e = !0), c(0)) | ||
: b.tag | ||
? d < a && !e && ((d = (d + 1) | 0), c(b), !e && d >= a && ((e = !0), c(0), f(1))) | ||
: ((b = b[0]), 0 >= a ? ((e = !0), c(0), b(1)) : (f = b)); | ||
}); | ||
c( | ||
__(0, [ | ||
function (b) { | ||
if (!e) { | ||
if (b) { | ||
return (e = !0), f(1); | ||
} | ||
if (d < a) { | ||
return f(0); | ||
} | ||
} | ||
}, | ||
]) | ||
); | ||
}; | ||
}; | ||
}), | ||
(takeLast$1 = takeLast), | ||
(takeUntil$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
function e(a) { | ||
'number' != typeof a && (a.tag ? ((d = !0), f(1), c(0)) : ((g = a = a[0]), a(0))); | ||
} | ||
let d = !1, | ||
f = talkbackPlaceholder, | ||
g = talkbackPlaceholder; | ||
b(function (b) { | ||
'number' == typeof b | ||
? d || ((d = !0), g(1), c(0)) | ||
: b.tag | ||
? d || c(b) | ||
: ((f = b[0]), a(e)); | ||
}); | ||
c( | ||
__(0, [ | ||
function (a) { | ||
if (!d) { | ||
return a ? ((d = !0), f(1), g(1)) : f(0); | ||
} | ||
}, | ||
]) | ||
); | ||
}; | ||
}; | ||
}), | ||
(takeWhile$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder, | ||
d = !1; | ||
return b(function (b) { | ||
'number' == typeof b | ||
? d || ((d = !0), c(0)) | ||
: b.tag | ||
? d || (a(b[0]) ? c(b) : ((d = !0), c(0), e(1))) | ||
: ((e = b[0]), c(b)); | ||
}); | ||
}; | ||
}; | ||
}); | ||
(subscribe$1 = subscribe), | ||
(forEach$1 = function (a) { | ||
return function (b) { | ||
subscribe(a)(b); | ||
}; | ||
}), | ||
(publish$1 = function (a) { | ||
return subscribe(_ref$1)(a); | ||
}), | ||
(toArray$1 = function (a) { | ||
let b = [], | ||
c = talkbackPlaceholder, | ||
e = !1; | ||
a(function (a) { | ||
'number' == typeof a ? (e = !0) : a.tag ? (b.push(a[0]), c(0)) : ((c = a = a[0]), a(0)); | ||
}); | ||
e || c(1); | ||
return b; | ||
}); | ||
observableSymbol = | ||
'function' == typeof Symbol | ||
? Symbol.observable || (Symbol.observable = Symbol('observable')) | ||
: '@@observable'; | ||
(fromObservable$2 = function (a) { | ||
var b = void 0 !== a[observableSymbol] ? a[observableSymbol]() : a; | ||
return function (a) { | ||
var c = b.subscribe({ | ||
next: function (b) { | ||
a(__(1, [b])); | ||
}, | ||
complete: function () { | ||
a(0); | ||
}, | ||
error: _ref$2, | ||
}); | ||
a( | ||
__(0, [ | ||
function (a) { | ||
if (a) { | ||
return c.unsubscribe(); | ||
if (!h) { | ||
return (h = !0), e(a), d(a); | ||
} | ||
} | ||
}, | ||
]) | ||
); | ||
}; | ||
}), | ||
(toObservable$2 = function (a) { | ||
var b = { | ||
subscribe: function (b) { | ||
let c = talkbackPlaceholder, | ||
d = !1; | ||
a(function (a) { | ||
if ('number' == typeof a) { | ||
return (d = !0), b.complete(); | ||
} | ||
if (a.tag) { | ||
if (d) { | ||
return; | ||
} | ||
b.next(a[0]); | ||
return c(0); | ||
} | ||
c = a = a[0]; | ||
a(0); | ||
}); | ||
return { | ||
unsubscribe: function () { | ||
if (!d) { | ||
return (d = !0), c(1); | ||
} | ||
}, | ||
}; | ||
}, | ||
}); | ||
}; | ||
b[observableSymbol] = function (a) { | ||
return b; | ||
}; | ||
return b; | ||
}), | ||
(fromCallbag$2 = function (a) { | ||
return function (b) { | ||
var c = function (a, c) { | ||
switch (a) { | ||
case 0: | ||
b( | ||
__(0, [ | ||
function (a) { | ||
return a ? c(2) : c(1); | ||
}, | ||
]) | ||
); | ||
break; | ||
})(a, b); | ||
}; | ||
case 1: | ||
b(__(1, [c])); | ||
break; | ||
exports.concat = function (a) { | ||
return concatMap(_ref4$1)(fromArray(a)); | ||
}; | ||
case 2: | ||
b(0); | ||
} | ||
}; | ||
return 2 === a.length ? a(0, c) : a.bind(null, 0, c); | ||
}; | ||
}), | ||
(toCallbag$2 = function (a) { | ||
return function (b, c) { | ||
if (0 === b) { | ||
return a(function (a) { | ||
if ('number' == typeof a) { | ||
return 2 === c.length ? c(2, void 0) : c.bind(null, 2, void 0); | ||
} | ||
if (a.tag) { | ||
return (a = a[0]), 2 === c.length ? c(1, a) : c.bind(null, 1, a); | ||
} | ||
var b = a[0]; | ||
a = function (a) { | ||
switch (a) { | ||
case 1: | ||
b(0); | ||
break; | ||
exports.concatAll = function (a) { | ||
return concatMap(_ref3)(a); | ||
}; | ||
case 2: | ||
b(1); | ||
} | ||
}; | ||
return 2 === c.length ? c(0, a) : c.bind(null, 0, a); | ||
}); | ||
} | ||
}; | ||
}), | ||
(debounce$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = void 0, | ||
d = !1, | ||
f = !1; | ||
var g = function (a) { | ||
void 0 !== (a = e) && ((e = void 0), clearTimeout(valFromOption(a))); | ||
}; | ||
return b(function (b) { | ||
if ('number' == typeof b) { | ||
f || ((f = !0), void 0 !== e ? (d = !0) : c(0)); | ||
} else if (b.tag) { | ||
f || | ||
(g(), | ||
(e = some( | ||
setTimeout(function (a) { | ||
e = void 0; | ||
c(b); | ||
d && c(0); | ||
}, a(b[0])) | ||
))); | ||
} else { | ||
var l = b[0]; | ||
c( | ||
__(0, [ | ||
function (a) { | ||
if (!f) { | ||
return a ? ((f = !0), (d = !1), g(), l(1)) : l(0); | ||
} | ||
}, | ||
]) | ||
); | ||
} | ||
}); | ||
exports.concatMap = concatMap$1; | ||
exports.debounce = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = void 0, | ||
d = !1, | ||
f = !1; | ||
var g = function (a) { | ||
void 0 !== (a = e) && ((e = void 0), clearTimeout(valFromOption(a))); | ||
}; | ||
}; | ||
}), | ||
(delay$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = 0; | ||
return b(function (b) { | ||
'number' == typeof b || b.tag | ||
? ((e = (e + 1) | 0), | ||
return b(function (b) { | ||
if ('number' == typeof b) { | ||
f || ((f = !0), void 0 !== e ? (d = !0) : c(0)); | ||
} else if (b.TAG) { | ||
f || | ||
(g(), | ||
(e = some( | ||
setTimeout(function (a) { | ||
0 !== e && ((e = (e - 1) | 0), c(b)); | ||
}, a)) | ||
: c(b); | ||
}); | ||
}; | ||
}; | ||
}), | ||
(throttle$1 = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
function e(a) { | ||
f = void 0; | ||
d = !1; | ||
e = void 0; | ||
c(b); | ||
d && c(0); | ||
}, a(b._0)) | ||
))); | ||
} else { | ||
var l = b._0; | ||
c({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (!f) { | ||
return a ? ((f = !0), (d = !1), g(), l(1)) : l(0); | ||
} | ||
}, | ||
}); | ||
} | ||
let d = !1, | ||
f = void 0; | ||
var g = function (a) { | ||
void 0 !== (a = f) && clearTimeout(valFromOption(a)); | ||
}; | ||
return b(function (b) { | ||
if ('number' == typeof b) { | ||
g(), c(0); | ||
} else if (b.tag) { | ||
d || ((d = !0), g(), (f = some(setTimeout(e, a(b[0])))), c(b)); | ||
} else { | ||
var h = b[0]; | ||
c( | ||
__(0, [ | ||
function (a) { | ||
return a ? (g(), h(1)) : h(a); | ||
}, | ||
]) | ||
); | ||
} | ||
}); | ||
}; | ||
}; | ||
}), | ||
(toPromise$1 = function (a) { | ||
return new Promise(function (b, c) { | ||
takeLast(1)(a)(function (a) { | ||
if ('number' != typeof a) { | ||
if (a.tag) { | ||
b(a[0]); | ||
} else { | ||
a[0](0); | ||
} | ||
} | ||
}); | ||
}); | ||
}), | ||
(interval$1 = function (a) { | ||
return function (b) { | ||
let c = 0; | ||
var e = setInterval(function (a) { | ||
a = c; | ||
c = (c + 1) | 0; | ||
b(__(1, [a])); | ||
}, a); | ||
b( | ||
__(0, [ | ||
function (a) { | ||
a && clearInterval(e); | ||
}, | ||
]) | ||
); | ||
}; | ||
}), | ||
(fromDomEvent$1 = function (a, b) { | ||
return (function (a, b) { | ||
return function (c) { | ||
var e = _ref3$1, | ||
d = _ref4$2, | ||
f = function (a) { | ||
c(__(1, [a])); | ||
}; | ||
c( | ||
__(0, [ | ||
function (c) { | ||
if (c) { | ||
return d(a, b, f); | ||
} | ||
}, | ||
]) | ||
); | ||
return e(a, b, f); | ||
}; | ||
})(a, b); | ||
}), | ||
(fromPromise$1 = function (a) { | ||
return function (b) { | ||
let c = !1; | ||
a.then(function (a) { | ||
c || (b(__(1, [a])), b(0)); | ||
return Promise.resolve(void 0); | ||
}; | ||
}; | ||
exports.delay = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = 0; | ||
return b(function (b) { | ||
'number' == typeof b || b.TAG | ||
? ((e = (e + 1) | 0), | ||
setTimeout(function (a) { | ||
0 !== e && ((e = (e - 1) | 0), c(b)); | ||
}, a)) | ||
: c(b); | ||
}); | ||
b( | ||
__(0, [ | ||
function (a) { | ||
a && (c = !0); | ||
}, | ||
]) | ||
); | ||
}; | ||
}); | ||
}; | ||
}; | ||
exports.buffer = buffer$1; | ||
exports.combine = combine$1; | ||
exports.concat = concat$1; | ||
exports.concatAll = concatAll$1; | ||
exports.concatMap = concatMap$1; | ||
exports.debounce = debounce$1; | ||
exports.delay = delay$1; | ||
exports.empty = empty$1; | ||
exports.filter = filter$1; | ||
exports.filter = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder; | ||
return b(function (d) { | ||
'number' == typeof d ? c(d) : d.TAG ? (a(d._0) ? c(d) : e(0)) : ((e = d._0), c(d)); | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.flatten = flatten$1; | ||
exports.forEach = forEach$1; | ||
exports.forEach = function (a) { | ||
return function (b) { | ||
subscribe(a)(b); | ||
}; | ||
}; | ||
exports.fromArray = fromArray$1; | ||
exports.fromCallbag = fromCallbag$2; | ||
exports.fromCallbag = function (a) { | ||
return function (b) { | ||
var c = function (a, c) { | ||
switch (a) { | ||
case 0: | ||
b({ | ||
TAG: 0, | ||
_0: function (a) { | ||
return a ? c(2) : c(1); | ||
}, | ||
}); | ||
break; | ||
exports.fromDomEvent = fromDomEvent$1; | ||
case 1: | ||
b({ | ||
TAG: 1, | ||
_0: c, | ||
}); | ||
break; | ||
case 2: | ||
b(0); | ||
} | ||
}; | ||
return 2 === a.length ? a(0, c) : a.bind(null, 0, c); | ||
}; | ||
}; | ||
exports.fromDomEvent = function (a, b) { | ||
return (function (a, b) { | ||
return function (c) { | ||
var e = _ref3$1, | ||
d = _ref4$2, | ||
f = function (a) { | ||
c({ | ||
TAG: 1, | ||
_0: a, | ||
}); | ||
}; | ||
c({ | ||
TAG: 0, | ||
_0: function (c) { | ||
if (c) { | ||
return d(a, b, f); | ||
} | ||
}, | ||
}); | ||
return e(a, b, f); | ||
}; | ||
})(a, b); | ||
}; | ||
exports.fromList = function (a) { | ||
@@ -1124,24 +632,73 @@ return function (b) { | ||
f = a; | ||
b( | ||
__(0, [ | ||
function (a) { | ||
if (a) { | ||
c = !0; | ||
} else if (e) { | ||
d = !0; | ||
} else { | ||
for (e = d = !0; d && !c; ) { | ||
(a = f) ? ((f = a[1]), (d = !1), b(__(1, [a[0]]))) : ((c = !0), b(0)); | ||
} | ||
e = !1; | ||
b({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (a) { | ||
c = !0; | ||
} else if (e) { | ||
d = !0; | ||
} else { | ||
for (e = d = !0; d && !c; ) { | ||
(a = f) | ||
? ((f = a.tl), | ||
(d = !1), | ||
b({ | ||
TAG: 1, | ||
_0: a.hd, | ||
})) | ||
: ((c = !0), b(0)); | ||
} | ||
}, | ||
]) | ||
); | ||
e = !1; | ||
} | ||
}, | ||
}); | ||
}; | ||
}; | ||
exports.fromObservable = fromObservable$2; | ||
exports.fromObservable = function (a) { | ||
var b = void 0 !== a[observableSymbol] ? a[observableSymbol]() : a; | ||
return function (a) { | ||
var c = b.subscribe({ | ||
next: function (b) { | ||
a({ | ||
TAG: 1, | ||
_0: b, | ||
}); | ||
}, | ||
complete: function () { | ||
a(0); | ||
}, | ||
error: _ref$2, | ||
}); | ||
a({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (a) { | ||
return c.unsubscribe(); | ||
} | ||
}, | ||
}); | ||
}; | ||
}; | ||
exports.fromPromise = fromPromise$1; | ||
exports.fromPromise = function (a) { | ||
return function (b) { | ||
let c = !1; | ||
a.then(function (a) { | ||
c || | ||
(b({ | ||
TAG: 1, | ||
_0: a, | ||
}), | ||
b(0)); | ||
return Promise.resolve(void 0); | ||
}); | ||
b({ | ||
TAG: 0, | ||
_0: function (a) { | ||
a && (c = !0); | ||
}, | ||
}); | ||
}; | ||
}; | ||
@@ -1151,13 +708,38 @@ exports.fromValue = function (a) { | ||
let c = !1; | ||
b( | ||
__(0, [ | ||
function (e) { | ||
e ? (c = !0) : c || ((c = !0), b(__(1, [a])), b(0)); | ||
}, | ||
]) | ||
); | ||
b({ | ||
TAG: 0, | ||
_0: function (e) { | ||
e | ||
? (c = !0) | ||
: c || | ||
((c = !0), | ||
b({ | ||
TAG: 1, | ||
_0: a, | ||
}), | ||
b(0)); | ||
}, | ||
}); | ||
}; | ||
}; | ||
exports.interval = interval$1; | ||
exports.interval = function (a) { | ||
return function (b) { | ||
let c = 0; | ||
var e = setInterval(function (a) { | ||
a = c; | ||
c = (c + 1) | 0; | ||
b({ | ||
TAG: 1, | ||
_0: a, | ||
}); | ||
}, a); | ||
b({ | ||
TAG: 0, | ||
_0: function (a) { | ||
a && clearInterval(e); | ||
}, | ||
}); | ||
}; | ||
}; | ||
@@ -1170,3 +752,7 @@ exports.make = function (a) { | ||
next: function (d) { | ||
e || b(__(1, [d])); | ||
e || | ||
b({ | ||
TAG: 1, | ||
_0: d, | ||
}); | ||
}, | ||
@@ -1177,11 +763,10 @@ complete: function (d) { | ||
}); | ||
b( | ||
__(0, [ | ||
function (d) { | ||
if (d && !e) { | ||
return (e = !0), c(); | ||
} | ||
}, | ||
]) | ||
); | ||
b({ | ||
TAG: 0, | ||
_0: function (d) { | ||
if (d && !e) { | ||
return (e = !0), c(); | ||
} | ||
}, | ||
}); | ||
}; | ||
@@ -1194,14 +779,13 @@ }; | ||
return { | ||
source: function (a) { | ||
source: function (c) { | ||
function d(d) { | ||
return d !== a; | ||
return d !== c; | ||
} | ||
b = b.concat(a); | ||
a( | ||
__(0, [ | ||
function (a) { | ||
a && (b = b.filter(d)); | ||
}, | ||
]) | ||
); | ||
b = b.concat(c); | ||
c({ | ||
TAG: 0, | ||
_0: function (c) { | ||
c && (b = b.filter(d)); | ||
}, | ||
}); | ||
}, | ||
@@ -1211,3 +795,6 @@ next: function (a) { | ||
b.forEach(function (d) { | ||
d(__(1, [a])); | ||
d({ | ||
TAG: 1, | ||
_0: a, | ||
}); | ||
}); | ||
@@ -1221,5 +808,27 @@ }, | ||
exports.map = map$1; | ||
exports.map = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
return b(function (b) { | ||
b = | ||
'number' == typeof b | ||
? 0 | ||
: b.TAG | ||
? { | ||
TAG: 1, | ||
_0: a(b._0), | ||
} | ||
: { | ||
TAG: 0, | ||
_0: b._0, | ||
}; | ||
c(b); | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.merge = merge$1; | ||
exports.merge = function (a) { | ||
return mergeMap(_ref8)(fromArray(a)); | ||
}; | ||
@@ -1231,10 +840,50 @@ exports.mergeAll = mergeAll$1; | ||
exports.never = function (a) { | ||
a(__(0, [talkbackPlaceholder])); | ||
a({ | ||
TAG: 0, | ||
_0: talkbackPlaceholder, | ||
}); | ||
}; | ||
exports.onEnd = onEnd$1; | ||
exports.onEnd = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = !1; | ||
return b(function (d) { | ||
if ('number' == typeof d) { | ||
if (e) { | ||
return; | ||
} | ||
e = !0; | ||
c(d); | ||
return a(); | ||
} | ||
if (d.TAG) { | ||
e || c(d); | ||
} else { | ||
var b = d._0; | ||
c({ | ||
TAG: 0, | ||
_0: function (c) { | ||
if (!e) { | ||
return c ? ((e = !0), b(c), a()) : b(c); | ||
} | ||
}, | ||
}); | ||
} | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.onPush = onPush$1; | ||
exports.onStart = onStart$1; | ||
exports.onStart = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
return b(function (b) { | ||
'number' == typeof b ? c(b) : b.TAG ? c(b) : (c(b), a()); | ||
}); | ||
}; | ||
}; | ||
}; | ||
@@ -1248,40 +897,385 @@ exports.pipe = function () { | ||
exports.publish = publish$1; | ||
exports.publish = function (a) { | ||
return subscribe(_ref$1)(a); | ||
}; | ||
exports.sample = sample$1; | ||
exports.sample = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder, | ||
d = talkbackPlaceholder, | ||
f = void 0, | ||
g = !1, | ||
h = !1; | ||
b(function (a) { | ||
'number' == typeof a | ||
? h || ((h = !0), d(1), c(0)) | ||
: a.TAG | ||
? ((f = some(a._0)), g ? (g = !1) : ((g = !0), d(0), e(0))) | ||
: (e = a._0); | ||
}); | ||
a(function (a) { | ||
var b = f; | ||
'number' == typeof a | ||
? h || ((h = !0), e(1), c(0)) | ||
: a.TAG | ||
? void 0 === b || | ||
h || | ||
((f = void 0), | ||
c({ | ||
TAG: 1, | ||
_0: valFromOption(b), | ||
})) | ||
: (d = a._0); | ||
}); | ||
c({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (!h) { | ||
if (a) { | ||
return (h = !0), e(1), d(1); | ||
} | ||
if (!g) { | ||
return (g = !0), e(0), d(0); | ||
} | ||
} | ||
}, | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.scan = scan$1; | ||
exports.scan = function (a, b) { | ||
return (function (a, b) { | ||
return function (c) { | ||
return function (e) { | ||
let d = b; | ||
return c(function (c) { | ||
'number' == typeof c | ||
? (c = 0) | ||
: c.TAG | ||
? ((d = a(d, c._0)), | ||
(c = { | ||
TAG: 1, | ||
_0: d, | ||
})) | ||
: (c = { | ||
TAG: 0, | ||
_0: c._0, | ||
}); | ||
e(c); | ||
}); | ||
}; | ||
}; | ||
})(a, b); | ||
}; | ||
exports.share = share$1; | ||
exports.share = function (a) { | ||
function b(a) { | ||
'number' == typeof a | ||
? (c.forEach(_ref11), (c = [])) | ||
: a.TAG | ||
? ((d = !1), | ||
c.forEach(function (c) { | ||
c(a); | ||
})) | ||
: (e = a._0); | ||
} | ||
let c = [], | ||
e = talkbackPlaceholder, | ||
d = !1; | ||
return function (f) { | ||
function g(a) { | ||
return a !== f; | ||
} | ||
c = c.concat(f); | ||
1 === c.length && a(b); | ||
f({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (a) { | ||
if (((c = c.filter(g)), 0 === c.length)) { | ||
return e(1); | ||
} | ||
} else { | ||
d || ((d = !0), e(a)); | ||
} | ||
}, | ||
}); | ||
}; | ||
}; | ||
exports.skip = skip$1; | ||
exports.skip = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder, | ||
d = a; | ||
return b(function (a) { | ||
'number' == typeof a | ||
? c(a) | ||
: a.TAG | ||
? 0 < d | ||
? ((d = (d - 1) | 0), e(0)) | ||
: c(a) | ||
: ((e = a._0), c(a)); | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.skipUntil = skipUntil$1; | ||
exports.skipUntil = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
function e(a) { | ||
'number' == typeof a | ||
? g && ((k = !0), d(1)) | ||
: a.TAG | ||
? ((g = !1), f(1)) | ||
: ((f = a = a._0), a(0)); | ||
} | ||
let d = talkbackPlaceholder, | ||
f = talkbackPlaceholder, | ||
g = !0, | ||
h = !1, | ||
k = !1; | ||
b(function (b) { | ||
'number' == typeof b | ||
? (g && f(1), (k = !0), c(0)) | ||
: b.TAG | ||
? g || k | ||
? h | ||
? (h = !1) | ||
: ((h = !0), d(0), f(0)) | ||
: ((h = !1), c(b)) | ||
: ((d = b._0), a(e)); | ||
}); | ||
c({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (!k) { | ||
if (a) { | ||
if (((k = !0), d(1), g)) { | ||
return f(1); | ||
} | ||
} else { | ||
h || ((h = !0), g && f(0), d(0)); | ||
} | ||
} | ||
}, | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.skipWhile = skipWhile$1; | ||
exports.skipWhile = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder, | ||
d = !0; | ||
return b(function (b) { | ||
'number' == typeof b | ||
? c(b) | ||
: b.TAG | ||
? d | ||
? a(b._0) | ||
? e(0) | ||
: ((d = !1), c(b)) | ||
: c(b) | ||
: ((e = b._0), c(b)); | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.subscribe = subscribe$1; | ||
exports.switchAll = switchAll$1; | ||
exports.switchAll = function (a) { | ||
return switchMap(_ref16)(a); | ||
}; | ||
exports.switchMap = switchMap$1; | ||
exports.take = take$1; | ||
exports.take = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = !1, | ||
d = 0, | ||
f = talkbackPlaceholder; | ||
b(function (b) { | ||
'number' == typeof b | ||
? e || ((e = !0), c(0)) | ||
: b.TAG | ||
? d < a && !e && ((d = (d + 1) | 0), c(b), !e && d >= a && ((e = !0), c(0), f(1))) | ||
: ((b = b._0), 0 >= a ? ((e = !0), c(0), b(1)) : (f = b)); | ||
}); | ||
c({ | ||
TAG: 0, | ||
_0: function (b) { | ||
if (!e) { | ||
if (b) { | ||
return (e = !0), f(1); | ||
} | ||
if (d < a) { | ||
return f(0); | ||
} | ||
} | ||
}, | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.takeLast = takeLast$1; | ||
exports.takeUntil = takeUntil$1; | ||
exports.takeUntil = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
function e(a) { | ||
'number' != typeof a && (a.TAG ? ((d = !0), f(1), c(0)) : ((g = a = a._0), a(0))); | ||
} | ||
let d = !1, | ||
f = talkbackPlaceholder, | ||
g = talkbackPlaceholder; | ||
b(function (b) { | ||
'number' == typeof b ? d || ((d = !0), g(1), c(0)) : b.TAG ? d || c(b) : ((f = b._0), a(e)); | ||
}); | ||
c({ | ||
TAG: 0, | ||
_0: function (a) { | ||
if (!d) { | ||
return a ? ((d = !0), f(1), g(1)) : f(0); | ||
} | ||
}, | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.takeWhile = takeWhile$1; | ||
exports.takeWhile = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
let e = talkbackPlaceholder, | ||
d = !1; | ||
return b(function (b) { | ||
'number' == typeof b | ||
? d || ((d = !0), c(0)) | ||
: b.TAG | ||
? d || (a(b._0) ? c(b) : ((d = !0), c(0), e(1))) | ||
: ((e = b._0), c(b)); | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.tap = tap$1; | ||
exports.throttle = throttle$1; | ||
exports.throttle = function (a) { | ||
return function (b) { | ||
return function (c) { | ||
function e(a) { | ||
f = void 0; | ||
d = !1; | ||
} | ||
let d = !1, | ||
f = void 0; | ||
var g = function (a) { | ||
void 0 !== (a = f) && clearTimeout(valFromOption(a)); | ||
}; | ||
return b(function (b) { | ||
if ('number' == typeof b) { | ||
g(), c(0); | ||
} else if (b.TAG) { | ||
d || ((d = !0), g(), (f = some(setTimeout(e, a(b._0)))), c(b)); | ||
} else { | ||
var h = b._0; | ||
c({ | ||
TAG: 0, | ||
_0: function (a) { | ||
return a ? (g(), h(1)) : h(a); | ||
}, | ||
}); | ||
} | ||
}); | ||
}; | ||
}; | ||
}; | ||
exports.toArray = toArray$1; | ||
exports.toArray = function (a) { | ||
let b = [], | ||
c = talkbackPlaceholder, | ||
e = !1; | ||
a(function (a) { | ||
'number' == typeof a ? (e = !0) : a.TAG ? (b.push(a._0), c(0)) : ((c = a = a._0), a(0)); | ||
}); | ||
e || c(1); | ||
return b; | ||
}; | ||
exports.toCallbag = toCallbag$2; | ||
exports.toCallbag = function (a) { | ||
return function (b, c) { | ||
if (0 === b) { | ||
return a(function (a) { | ||
if ('number' == typeof a) { | ||
return 2 === c.length ? c(2, void 0) : c.bind(null, 2, void 0); | ||
} | ||
if (a.TAG) { | ||
return (a = a._0), 2 === c.length ? c(1, a) : c.bind(null, 1, a); | ||
} | ||
var b = a._0; | ||
a = function (a) { | ||
switch (a) { | ||
case 1: | ||
b(0); | ||
break; | ||
exports.toObservable = toObservable$2; | ||
case 2: | ||
b(1); | ||
} | ||
}; | ||
return 2 === c.length ? c(0, a) : c.bind(null, 0, a); | ||
}); | ||
} | ||
}; | ||
}; | ||
exports.toPromise = toPromise$1; | ||
exports.toObservable = function (a) { | ||
var b = { | ||
subscribe: function (b) { | ||
let c = talkbackPlaceholder, | ||
d = !1; | ||
a(function (a) { | ||
if ('number' == typeof a) { | ||
return (d = !0), b.complete(); | ||
} | ||
if (a.TAG) { | ||
if (d) { | ||
return; | ||
} | ||
b.next(a._0); | ||
return c(0); | ||
} | ||
c = a = a._0; | ||
a(0); | ||
}); | ||
return { | ||
unsubscribe: function () { | ||
if (!d) { | ||
return (d = !0), c(1); | ||
} | ||
}, | ||
}; | ||
}, | ||
}; | ||
b[observableSymbol] = function (a) { | ||
return b; | ||
}; | ||
return b; | ||
}; | ||
exports.toPromise = function (a) { | ||
return new Promise(function (b, c) { | ||
takeLast(1)(a)(function (a) { | ||
'number' != typeof a && (a.TAG ? b(a._0) : a._0(0)); | ||
}); | ||
}); | ||
}; |
@@ -1,1 +0,1 @@ | ||
"use strict";function n(n,t){return t.tag=n,t}function t(n){}function e(t){return function(e){var r=t.length;let u=!1,o=!1,i=!1,f=0;e(n(0,[function(c){if(c)u=!0;else if(o)i=!0;else{for(o=i=!0;i&&!u;)f<r?(c=t[f],f=f+1|0,i=!1,e(n(1,[c]))):(u=!0,e(0));o=!1}}]))}}function r(){}function u(n){n(0)}function o(t){let e=!1;t(n(0,[function(n){n?e=!0:e||t(0)}]))}var i=e,f=o,c=[];function l(n){return void 0===n?((n=[c,0]).tag=256,n):(null===n||n[0]!==c||((n=[c,n[1]+1|0]).tag=256),n)}function s(n){return null===n||n[0]!==c?n:0!==(n=n[1])?[c,n-1|0]:void 0}function a(e){return function(r){return function(u){function o(n){"number"==typeof n?a&&(a=!1,void 0!==(n=i.shift())?(n=e(s(n)),a=!0,n(o)):b?u(0):c||(c=!0,f(0))):n.tag?a&&(u(n),p?p=!1:l(0)):(l=n=n[0],p=!1,n(0))}let i=[],f=t,c=!1,l=t,a=!1,p=!1,b=!1;r((function(n){"number"==typeof n?b||(b=!0,!a&&function(n){return 0===n.length}(i)&&u(0)):n.tag?b||(n=n[0],c=!1,a?i.push(n):(n=e(n),a=!0,n(o))):f=n[0]})),u(n(0,[function(n){if(n){if(b||(b=!0,f(1)),a)return a=!1,l(1)}else b||c||(c=!0,f(0)),a&&!p&&(p=!0,l(0))}]))}}}function p(n){return n}function b(n){return n}function m(n){return n(0)}function g(e){return function(r){return function(u){let o=t,i=!1,f=[],c=!1;r((function(r){"number"==typeof r?c||(c=!0,0===f.length&&u(0)):r.tag?c||(i=!1,function(e){function r(n){return n!==s}var l=function(t){"number"==typeof t?0!==f.length&&(f=f.filter(r),t=0===f.length,c&&t?u(0):!i&&t&&(i=!0,o(0))):t.tag?0!==f.length&&(u(n(1,[t[0]])),s(0)):(s=t=t[0],f=f.concat(t),t(0))};let s=t;1===e.length?e(l):e.bind(null,l)}(e(r[0])),i||(i=!0,o(0))):o=r[0]})),u(n(0,[function(n){n?(c||(c=!0,o(n)),f.forEach((function(t){return t(n)})),f=[]):(i||c?i=!1:(i=!0,o(0)),f.forEach(m))}]))}}}function v(n){return n}function x(n){return n}function y(n){return g(x)(n)}function h(t){return function(e){return function(r){let u=!1;return e((function(e){if("number"==typeof e)u||(u=!0,r(e));else if(e.tag)u||(t(e[0]),r(e));else{var o=e[0];r(n(0,[function(n){if(!u)return n&&(u=!0),o(n)}]))}}))}}}function d(n){n(0)}function k(e){return function(r){return function(u){function o(n){l&&("number"==typeof n?(l=!1,a?u(n):f||(f=!0,i(0))):n.tag?(u(n),s?s=!1:c(0)):(c=n=n[0],s=!1,n(0)))}let i=t,f=!1,c=t,l=!1,s=!1,a=!1;r((function(n){"number"==typeof n?a||(a=!0,l||u(0)):n.tag?a||(l&&(c(1),c=t),f?f=!1:(f=!0,i(0)),n=e(n[0]),l=!0,n(o)):i=n[0]})),u(n(0,[function(n){if(n){if(a||(a=!0,i(1)),l)return l=!1,c(1)}else a||f||(f=!0,i(0)),l&&!s&&(s=!0,c(0))}]))}}}function E(n){return n}function S(n){return function(r){return function(u){let i=[],f=t;return r((function(t){"number"==typeof t?e(i)(u):t.tag?(i.length>=n&&0<n&&i.shift(),i.push(t[0]),f(0)):(t=t[0],0>=n?(t(1),o(u)):(f=t,t(0)))}))}}}var w=a,A=g,P=y,T=y,L=h,M=h,C=k,I=S;function O(n){return function(e){let r=t,u=!1;return e((function(t){"number"==typeof t?u=!0:t.tag?u||(n(t[0]),r(0)):(r=t=t[0],t(0))})),{unsubscribe:function(n){if(!u)return u=!0,r(1)}}}}function U(n){}var W=O,j="function"==typeof Symbol?Symbol.observable||(Symbol.observable=Symbol("observable")):"@@observable";function D(n){}function V(n,t,e){n.addEventListener(t,e)}function q(n,t,e){n.removeEventListener(t,e)}exports.buffer=function(e){return function(r){return function(u){function o(t){"number"==typeof t?s||(s=!0,f(1),0<i.length&&u(n(1,[i])),u(0)):t.tag?!s&&0<i.length&&(t=i,i=[],u(n(1,[t]))):c=t[0]}let i=[],f=t,c=t,l=!1,s=!1;r((function(t){"number"==typeof t?s||(s=!0,c(1),0<i.length&&u(n(1,[i])),u(0)):t.tag?s||(i.push(t[0]),l?l=!1:(l=!0,f(0),c(0))):(f=t[0],e(o))})),u(n(0,[function(n){if(!s){if(n)return s=!0,f(1),c(1);if(!l)return l=!0,f(0),c(0)}}]))}}},exports.combine=function(e,r){return function(e,r){return function(u){let o=t,i=t,f=void 0,c=void 0,a=!1,p=0,b=!1;e((function(t){var e=c;"number"==typeof t?1>p?p=p+1|0:b||(b=!0,u(0)):t.tag?(t=t[0],void 0!==e?b||(f=l(t),a=!1,u(n(1,[[t,s(e)]]))):(f=l(t),a?a=!1:i(0))):o=t[0]})),r((function(t){var e=f;"number"==typeof t?1>p?p=p+1|0:b||(b=!0,u(0)):t.tag?(t=t[0],void 0!==e?b||(c=l(t),a=!1,u(n(1,[[s(e),t]]))):(c=l(t),a?a=!1:o(0))):i=t[0]})),u(n(0,[function(n){if(!b){if(n)return b=!0,o(1),i(1);if(!a)return a=!0,o(n),i(n)}}]))}}(e,r)},exports.concat=function(n){return a(b)(e(n))},exports.concatAll=function(n){return a(p)(n)},exports.concatMap=w,exports.debounce=function(t){return function(e){return function(r){let u=void 0,o=!1,i=!1;var f=function(n){void 0!==(n=u)&&(u=void 0,clearTimeout(s(n)))};return e((function(e){if("number"==typeof e)i||(i=!0,void 0!==u?o=!0:r(0));else if(e.tag)i||(f(),u=l(setTimeout((function(n){u=void 0,r(e),o&&r(0)}),t(e[0]))));else{var c=e[0];r(n(0,[function(n){if(!i)return n?(i=!0,o=!1,f(),c(1)):c(0)}]))}}))}}},exports.delay=function(n){return function(t){return function(e){let r=0;return t((function(t){"number"==typeof t||t.tag?(r=r+1|0,setTimeout((function(n){0!==r&&(r=r-1|0,e(t))}),n)):e(t)}))}}},exports.empty=f,exports.filter=function(n){return function(e){return function(r){let u=t;return e((function(t){"number"==typeof t?r(t):t.tag?n(t[0])?r(t):u(0):(u=t[0],r(t))}))}}},exports.flatten=T,exports.forEach=function(n){return function(t){O(n)(t)}},exports.fromArray=i,exports.fromCallbag=function(t){return function(e){var r=function(t,r){switch(t){case 0:e(n(0,[function(n){return r(n?2:1)}]));break;case 1:e(n(1,[r]));break;case 2:e(0)}};return 2===t.length?t(0,r):t.bind(null,0,r)}},exports.fromDomEvent=function(t,e){return function(t,e){return function(r){var u=V,o=q,i=function(t){r(n(1,[t]))};return r(n(0,[function(n){if(n)return o(t,e,i)}])),u(t,e,i)}}(t,e)},exports.fromList=function(t){return function(e){let r=!1,u=!1,o=!1,i=t;e(n(0,[function(t){if(t)r=!0;else if(u)o=!0;else{for(u=o=!0;o&&!r;)(t=i)?(i=t[1],o=!1,e(n(1,[t[0]]))):(r=!0,e(0));u=!1}}]))}},exports.fromObservable=function(t){var e=void 0!==t[j]?t[j]():t;return function(t){var r=e.subscribe({next:function(e){t(n(1,[e]))},complete:function(){t(0)},error:D});t(n(0,[function(n){if(n)return r.unsubscribe()}]))}},exports.fromPromise=function(t){return function(e){let r=!1;t.then((function(t){return r||(e(n(1,[t])),e(0)),Promise.resolve(void 0)})),e(n(0,[function(n){n&&(r=!0)}]))}},exports.fromValue=function(t){return function(e){let r=!1;e(n(0,[function(u){u?r=!0:r||(r=!0,e(n(1,[t])),e(0))}]))}},exports.interval=function(t){return function(e){let r=0;var u=setInterval((function(t){t=r,r=r+1|0,e(n(1,[t]))}),t);e(n(0,[function(n){n&&clearInterval(u)}]))}},exports.make=function(t){return function(e){let u=r,o=!1;u=t({next:function(t){o||e(n(1,[t]))},complete:function(n){o||(o=!0,e(0))}}),e(n(0,[function(n){if(n&&!o)return o=!0,u()}]))}},exports.makeSubject=function(t){let e=[],r=!1;return{source:function(t){function r(n){return n!==t}e=e.concat(t),t(n(0,[function(n){n&&(e=e.filter(r))}]))},next:function(t){r||e.forEach((function(e){e(n(1,[t]))}))},complete:function(n){r||(r=!0,e.forEach(u))}}},exports.map=function(t){return function(e){return function(r){return e((function(e){e="number"==typeof e?0:e.tag?n(1,[t(e[0])]):n(0,[e[0]]),r(e)}))}}},exports.merge=function(n){return g(v)(e(n))},exports.mergeAll=P,exports.mergeMap=A,exports.never=function(e){e(n(0,[t]))},exports.onEnd=function(t){return function(e){return function(r){let u=!1;return e((function(e){if("number"==typeof e){if(u)return;return u=!0,r(e),t()}if(e.tag)u||r(e);else{var o=e[0];r(n(0,[function(n){if(!u)return n?(u=!0,o(n),t()):o(n)}]))}}))}}},exports.onPush=L,exports.onStart=function(n){return function(t){return function(e){return t((function(t){"number"==typeof t||t.tag?e(t):(e(t),n())}))}}},exports.pipe=function(){for(var n=arguments,t=arguments[0],e=1,r=arguments.length;e<r;e++)t=n[e](t);return t},exports.publish=function(n){return O(U)(n)},exports.sample=function(e){return function(r){return function(u){let o=t,i=t,f=void 0,c=!1,a=!1;r((function(n){"number"==typeof n?a||(a=!0,i(1),u(0)):n.tag?(f=l(n[0]),c?c=!1:(c=!0,i(0),o(0))):o=n[0]})),e((function(t){var e=f;"number"==typeof t?a||(a=!0,o(1),u(0)):t.tag?void 0===e||a||(f=void 0,u(n(1,[s(e)]))):i=t[0]})),u(n(0,[function(n){if(!a){if(n)return a=!0,o(1),i(1);if(!c)return c=!0,o(0),i(0)}}]))}}},exports.scan=function(t,e){return function(t,e){return function(r){return function(u){let o=e;return r((function(e){"number"==typeof e?e=0:e.tag?(o=t(o,e[0]),e=n(1,[o])):e=n(0,[e[0]]),u(e)}))}}}(t,e)},exports.share=function(e){function r(n){"number"==typeof n?(u.forEach(d),u=[]):n.tag?(i=!1,u.forEach((function(t){t(n)}))):o=n[0]}let u=[],o=t,i=!1;return function(t){function f(n){return n!==t}u=u.concat(t),1===u.length&&e(r),t(n(0,[function(n){if(n){if(u=u.filter(f),0===u.length)return o(1)}else i||(i=!0,o(n))}]))}},exports.skip=function(n){return function(e){return function(r){let u=t,o=n;return e((function(n){"number"==typeof n?r(n):n.tag?0<o?(o=o-1|0,u(0)):r(n):(u=n[0],r(n))}))}}},exports.skipUntil=function(e){return function(r){return function(u){function o(n){"number"==typeof n?c&&(s=!0,i(1)):n.tag?(c=!1,f(1)):(f=n=n[0],n(0))}let i=t,f=t,c=!0,l=!1,s=!1;r((function(n){"number"==typeof n?(c&&f(1),s=!0,u(0)):n.tag?c||s?l?l=!1:(l=!0,i(0),f(0)):(l=!1,u(n)):(i=n[0],e(o))})),u(n(0,[function(n){if(!s)if(n){if(s=!0,i(1),c)return f(1)}else l||(l=!0,c&&f(0),i(0))}]))}}},exports.skipWhile=function(n){return function(e){return function(r){let u=t,o=!0;return e((function(t){"number"==typeof t?r(t):t.tag?o?n(t[0])?u(0):(o=!1,r(t)):r(t):(u=t[0],r(t))}))}}},exports.subscribe=W,exports.switchAll=function(n){return k(E)(n)},exports.switchMap=C,exports.take=function(e){return function(r){return function(u){let o=!1,i=0,f=t;r((function(n){"number"==typeof n?o||(o=!0,u(0)):n.tag?i<e&&!o&&(i=i+1|0,u(n),!o&&i>=e&&(o=!0,u(0),f(1))):(n=n[0],0>=e?(o=!0,u(0),n(1)):f=n)})),u(n(0,[function(n){if(!o){if(n)return o=!0,f(1);if(i<e)return f(0)}}]))}}},exports.takeLast=I,exports.takeUntil=function(e){return function(r){return function(u){function o(n){"number"!=typeof n&&(n.tag?(i=!0,f(1),u(0)):(c=n=n[0],n(0)))}let i=!1,f=t,c=t;r((function(n){"number"==typeof n?i||(i=!0,c(1),u(0)):n.tag?i||u(n):(f=n[0],e(o))})),u(n(0,[function(n){if(!i)return n?(i=!0,f(1),c(1)):f(0)}]))}}},exports.takeWhile=function(n){return function(e){return function(r){let u=t,o=!1;return e((function(t){"number"==typeof t?o||(o=!0,r(0)):t.tag?o||(n(t[0])?r(t):(o=!0,r(0),u(1))):(u=t[0],r(t))}))}}},exports.tap=M,exports.throttle=function(t){return function(e){return function(r){function u(n){i=void 0,o=!1}let o=!1,i=void 0;var f=function(n){void 0!==(n=i)&&clearTimeout(s(n))};return e((function(e){if("number"==typeof e)f(),r(0);else if(e.tag)o||(o=!0,f(),i=l(setTimeout(u,t(e[0]))),r(e));else{var c=e[0];r(n(0,[function(n){return n?(f(),c(1)):c(n)}]))}}))}}},exports.toArray=function(n){let e=[],r=t,u=!1;return n((function(n){"number"==typeof n?u=!0:n.tag?(e.push(n[0]),r(0)):(r=n=n[0],n(0))})),u||r(1),e},exports.toCallbag=function(n){return function(t,e){if(0===t)return n((function(n){if("number"==typeof n)return 2===e.length?e(2,void 0):e.bind(null,2,void 0);if(n.tag)return n=n[0],2===e.length?e(1,n):e.bind(null,1,n);var t=n[0];return n=function(n){switch(n){case 1:t(0);break;case 2:t(1)}},2===e.length?e(0,n):e.bind(null,0,n)}))}},exports.toObservable=function(n){var e={subscribe:function(e){let r=t,u=!1;return n((function(n){if("number"==typeof n)return u=!0,e.complete();if(n.tag){if(u)return;return e.next(n[0]),r(0)}r=n=n[0],n(0)})),{unsubscribe:function(){if(!u)return u=!0,r(1)}}}};return e[j]=function(n){return e},e},exports.toPromise=function(n){return new Promise((function(t,e){S(1)(n)((function(n){"number"!=typeof n&&(n.tag?t(n[0]):n[0](0))}))}))}; | ||
"use strict";function n(n){}function t(n){return function(t){var e=n.length;let r=!1,u=!1,o=!1,i=0;t({TAG:0,_0:function(f){if(f)r=!0;else if(u)o=!0;else{for(u=o=!0;o&&!r;)i<e?(f=n[i],i=i+1|0,o=!1,t({TAG:1,_0:f})):(r=!0,t(0));u=!1}}})}}function e(){}function r(n){n(0)}function u(n){let t=!1;n({TAG:0,_0:function(e){e?t=!0:t||n(0)}})}var o=t,i=u;function f(n){return void 0===n?{BS_PRIVATE_NESTED_SOME_NONE:0}:null!==n&&void 0!==n.BS_PRIVATE_NESTED_SOME_NONE?{BS_PRIVATE_NESTED_SOME_NONE:n.BS_PRIVATE_NESTED_SOME_NONE+1|0}:n}function c(n){return null===n||void 0===n.BS_PRIVATE_NESTED_SOME_NONE?n:0!==(n=n.BS_PRIVATE_NESTED_SOME_NONE)?{BS_PRIVATE_NESTED_SOME_NONE:n-1|0}:void 0}function _(t){return function(e){return function(r){function u(n){"number"==typeof n?l&&(l=!1,void 0!==(n=o.shift())?(n=t(c(n)),l=!0,n(u)):p?r(0):f||(f=!0,i(0))):n.TAG?l&&(r(n),s?s=!1:_(0)):(_=n=n._0,s=!1,n(0))}let o=[],i=n,f=!1,_=n,l=!1,s=!1,p=!1;e((function(n){"number"==typeof n?p||(p=!0,!l&&function(n){return 0===n.length}(o)&&r(0)):n.TAG?p||(n=n._0,f=!1,l?o.push(n):(n=t(n),l=!0,n(u))):i=n._0})),r({TAG:0,_0:function(n){if(n){if(p||(p=!0,i(1)),l)return l=!1,_(1)}else p||f||(f=!0,i(0)),l&&!s&&(s=!0,_(0))}})}}}function l(n){return n}function s(n){return n}function p(n){return n(0)}function T(t){return function(e){return function(r){let u=n,o=!1,i=[],f=!1;e((function(e){"number"==typeof e?f||(f=!0,0===i.length&&r(0)):e.TAG?f||(o=!1,function(t){function e(n){return n!==_}var c=function(n){"number"==typeof n?0!==i.length&&(i=i.filter(e),n=0===i.length,f&&n?r(0):!o&&n&&(o=!0,u(0))):n.TAG?0!==i.length&&(r({TAG:1,_0:n._0}),_(0)):(_=n=n._0,i=i.concat(n),n(0))};let _=n;1===t.length?t(c):t.bind(null,c)}(t(e._0)),o||(o=!0,u(0))):u=e._0})),r({TAG:0,_0:function(n){n?(f||(f=!0,u(n)),i.forEach((function(t){return t(n)})),i=[]):(o||f?o=!1:(o=!0,u(0)),i.forEach(p))}})}}}function A(n){return n}function G(n){return n}function a(n){return T(G)(n)}function b(n){return function(t){return function(e){let r=!1;return t((function(t){if("number"==typeof t)r||(r=!0,e(t));else if(t.TAG)r||(n(t._0),e(t));else{var u=t._0;e({TAG:0,_0:function(n){if(!r)return n&&(r=!0),u(n)}})}}))}}}function m(n){n(0)}function v(t){return function(e){return function(r){function u(n){c&&("number"==typeof n?(c=!1,l?r(n):i||(i=!0,o(0))):n.TAG?(r(n),_?_=!1:f(0)):(f=n=n._0,_=!1,n(0)))}let o=n,i=!1,f=n,c=!1,_=!1,l=!1;e((function(e){"number"==typeof e?l||(l=!0,c||r(0)):e.TAG?l||(c&&(f(1),f=n),i?i=!1:(i=!0,o(0)),e=t(e._0),c=!0,e(u)):o=e._0})),r({TAG:0,_0:function(n){if(n){if(l||(l=!0,o(1)),c)return c=!1,f(1)}else l||i||(i=!0,o(0)),c&&!_&&(_=!0,f(0))}})}}}function x(n){return n}function E(e){return function(r){return function(o){let i=[],f=n;return r((function(n){"number"==typeof n?t(i)(o):n.TAG?(i.length>=e&&0<e&&i.shift(),i.push(n._0),f(0)):(n=n._0,0>=e?(n(1),u(o)):(f=n,n(0)))}))}}}var y=_,h=T,d=a,S=a,g=b,N=b,O=v,k=E;function P(t){return function(e){let r=n,u=!1;return e((function(n){"number"==typeof n?u=!0:n.TAG?u||(t(n._0),r(0)):(r=n=n._0,n(0))})),{unsubscribe:function(n){if(!u)return u=!0,r(1)}}}}function M(n){}var I=P,D="function"==typeof Symbol?Symbol.observable||(Symbol.observable=Symbol("observable")):"@@observable";function V(n){}function B(n,t,e){n.addEventListener(t,e)}function R(n,t,e){n.removeEventListener(t,e)}exports.buffer=function(t){return function(e){return function(r){function u(n){"number"==typeof n?_||(_=!0,i(1),0<o.length&&r({TAG:1,_0:o}),r(0)):n.TAG?!_&&0<o.length&&(n=o,o=[],r({TAG:1,_0:n})):f=n._0}let o=[],i=n,f=n,c=!1,_=!1;e((function(n){"number"==typeof n?_||(_=!0,f(1),0<o.length&&r({TAG:1,_0:o}),r(0)):n.TAG?_||(o.push(n._0),c?c=!1:(c=!0,i(0),f(0))):(i=n._0,t(u))})),r({TAG:0,_0:function(n){if(!_){if(n)return _=!0,i(1),f(1);if(!c)return c=!0,i(0),f(0)}}})}}},exports.combine=function(t,e){return function(t,e){return function(r){let u=n,o=n,i=void 0,_=void 0,l=!1,s=0,p=!1;t((function(n){var t=_;"number"==typeof n?1>s?s=s+1|0:p||(p=!0,r(0)):n.TAG?(n=n._0,void 0!==t?p||(i=f(n),l=!1,r({TAG:1,_0:[n,c(t)]})):(i=f(n),l?l=!1:o(0))):u=n._0})),e((function(n){var t=i;"number"==typeof n?1>s?s=s+1|0:p||(p=!0,r(0)):n.TAG?(n=n._0,void 0!==t?p||(_=f(n),l=!1,r({TAG:1,_0:[c(t),n]})):(_=f(n),l?l=!1:u(0))):o=n._0})),r({TAG:0,_0:function(n){if(!p){if(n)return p=!0,u(1),o(1);if(!l)return l=!0,u(n),o(n)}}})}}(t,e)},exports.concat=function(n){return _(s)(t(n))},exports.concatAll=function(n){return _(l)(n)},exports.concatMap=y,exports.debounce=function(n){return function(t){return function(e){let r=void 0,u=!1,o=!1;var i=function(n){void 0!==(n=r)&&(r=void 0,clearTimeout(c(n)))};return t((function(t){if("number"==typeof t)o||(o=!0,void 0!==r?u=!0:e(0));else if(t.TAG)o||(i(),r=f(setTimeout((function(n){r=void 0,e(t),u&&e(0)}),n(t._0))));else{var c=t._0;e({TAG:0,_0:function(n){if(!o)return n?(o=!0,u=!1,i(),c(1)):c(0)}})}}))}}},exports.delay=function(n){return function(t){return function(e){let r=0;return t((function(t){"number"==typeof t||t.TAG?(r=r+1|0,setTimeout((function(n){0!==r&&(r=r-1|0,e(t))}),n)):e(t)}))}}},exports.empty=i,exports.filter=function(t){return function(e){return function(r){let u=n;return e((function(n){"number"==typeof n?r(n):n.TAG?t(n._0)?r(n):u(0):(u=n._0,r(n))}))}}},exports.flatten=S,exports.forEach=function(n){return function(t){P(n)(t)}},exports.fromArray=o,exports.fromCallbag=function(n){return function(t){var e=function(n,e){switch(n){case 0:t({TAG:0,_0:function(n){return e(n?2:1)}});break;case 1:t({TAG:1,_0:e});break;case 2:t(0)}};return 2===n.length?n(0,e):n.bind(null,0,e)}},exports.fromDomEvent=function(n,t){return function(n,t){return function(e){var r=B,u=R,o=function(n){e({TAG:1,_0:n})};return e({TAG:0,_0:function(e){if(e)return u(n,t,o)}}),r(n,t,o)}}(n,t)},exports.fromList=function(n){return function(t){let e=!1,r=!1,u=!1,o=n;t({TAG:0,_0:function(n){if(n)e=!0;else if(r)u=!0;else{for(r=u=!0;u&&!e;)(n=o)?(o=n.tl,u=!1,t({TAG:1,_0:n.hd})):(e=!0,t(0));r=!1}}})}},exports.fromObservable=function(n){var t=void 0!==n[D]?n[D]():n;return function(n){var e=t.subscribe({next:function(t){n({TAG:1,_0:t})},complete:function(){n(0)},error:V});n({TAG:0,_0:function(n){if(n)return e.unsubscribe()}})}},exports.fromPromise=function(n){return function(t){let e=!1;n.then((function(n){return e||(t({TAG:1,_0:n}),t(0)),Promise.resolve(void 0)})),t({TAG:0,_0:function(n){n&&(e=!0)}})}},exports.fromValue=function(n){return function(t){let e=!1;t({TAG:0,_0:function(r){r?e=!0:e||(e=!0,t({TAG:1,_0:n}),t(0))}})}},exports.interval=function(n){return function(t){let e=0;var r=setInterval((function(n){n=e,e=e+1|0,t({TAG:1,_0:n})}),n);t({TAG:0,_0:function(n){n&&clearInterval(r)}})}},exports.make=function(n){return function(t){let r=e,u=!1;r=n({next:function(n){u||t({TAG:1,_0:n})},complete:function(n){u||(u=!0,t(0))}}),t({TAG:0,_0:function(n){if(n&&!u)return u=!0,r()}})}},exports.makeSubject=function(n){let t=[],e=!1;return{source:function(n){function e(t){return t!==n}t=t.concat(n),n({TAG:0,_0:function(n){n&&(t=t.filter(e))}})},next:function(n){e||t.forEach((function(t){t({TAG:1,_0:n})}))},complete:function(n){e||(e=!0,t.forEach(r))}}},exports.map=function(n){return function(t){return function(e){return t((function(t){t="number"==typeof t?0:t.TAG?{TAG:1,_0:n(t._0)}:{TAG:0,_0:t._0},e(t)}))}}},exports.merge=function(n){return T(A)(t(n))},exports.mergeAll=d,exports.mergeMap=h,exports.never=function(t){t({TAG:0,_0:n})},exports.onEnd=function(n){return function(t){return function(e){let r=!1;return t((function(t){if("number"==typeof t){if(r)return;return r=!0,e(t),n()}if(t.TAG)r||e(t);else{var u=t._0;e({TAG:0,_0:function(t){if(!r)return t?(r=!0,u(t),n()):u(t)}})}}))}}},exports.onPush=g,exports.onStart=function(n){return function(t){return function(e){return t((function(t){"number"==typeof t||t.TAG?e(t):(e(t),n())}))}}},exports.pipe=function(){for(var n=arguments,t=arguments[0],e=1,r=arguments.length;e<r;e++)t=n[e](t);return t},exports.publish=function(n){return P(M)(n)},exports.sample=function(t){return function(e){return function(r){let u=n,o=n,i=void 0,_=!1,l=!1;e((function(n){"number"==typeof n?l||(l=!0,o(1),r(0)):n.TAG?(i=f(n._0),_?_=!1:(_=!0,o(0),u(0))):u=n._0})),t((function(n){var t=i;"number"==typeof n?l||(l=!0,u(1),r(0)):n.TAG?void 0===t||l||(i=void 0,r({TAG:1,_0:c(t)})):o=n._0})),r({TAG:0,_0:function(n){if(!l){if(n)return l=!0,u(1),o(1);if(!_)return _=!0,u(0),o(0)}}})}}},exports.scan=function(n,t){return function(n,t){return function(e){return function(r){let u=t;return e((function(t){"number"==typeof t?t=0:t.TAG?(u=n(u,t._0),t={TAG:1,_0:u}):t={TAG:0,_0:t._0},r(t)}))}}}(n,t)},exports.share=function(t){function e(n){"number"==typeof n?(r.forEach(m),r=[]):n.TAG?(o=!1,r.forEach((function(t){t(n)}))):u=n._0}let r=[],u=n,o=!1;return function(n){function i(t){return t!==n}r=r.concat(n),1===r.length&&t(e),n({TAG:0,_0:function(n){if(n){if(r=r.filter(i),0===r.length)return u(1)}else o||(o=!0,u(n))}})}},exports.skip=function(t){return function(e){return function(r){let u=n,o=t;return e((function(n){"number"==typeof n?r(n):n.TAG?0<o?(o=o-1|0,u(0)):r(n):(u=n._0,r(n))}))}}},exports.skipUntil=function(t){return function(e){return function(r){function u(n){"number"==typeof n?f&&(_=!0,o(1)):n.TAG?(f=!1,i(1)):(i=n=n._0,n(0))}let o=n,i=n,f=!0,c=!1,_=!1;e((function(n){"number"==typeof n?(f&&i(1),_=!0,r(0)):n.TAG?f||_?c?c=!1:(c=!0,o(0),i(0)):(c=!1,r(n)):(o=n._0,t(u))})),r({TAG:0,_0:function(n){if(!_)if(n){if(_=!0,o(1),f)return i(1)}else c||(c=!0,f&&i(0),o(0))}})}}},exports.skipWhile=function(t){return function(e){return function(r){let u=n,o=!0;return e((function(n){"number"==typeof n?r(n):n.TAG?o?t(n._0)?u(0):(o=!1,r(n)):r(n):(u=n._0,r(n))}))}}},exports.subscribe=I,exports.switchAll=function(n){return v(x)(n)},exports.switchMap=O,exports.take=function(t){return function(e){return function(r){let u=!1,o=0,i=n;e((function(n){"number"==typeof n?u||(u=!0,r(0)):n.TAG?o<t&&!u&&(o=o+1|0,r(n),!u&&o>=t&&(u=!0,r(0),i(1))):(n=n._0,0>=t?(u=!0,r(0),n(1)):i=n)})),r({TAG:0,_0:function(n){if(!u){if(n)return u=!0,i(1);if(o<t)return i(0)}}})}}},exports.takeLast=k,exports.takeUntil=function(t){return function(e){return function(r){function u(n){"number"!=typeof n&&(n.TAG?(o=!0,i(1),r(0)):(f=n=n._0,n(0)))}let o=!1,i=n,f=n;e((function(n){"number"==typeof n?o||(o=!0,f(1),r(0)):n.TAG?o||r(n):(i=n._0,t(u))})),r({TAG:0,_0:function(n){if(!o)return n?(o=!0,i(1),f(1)):i(0)}})}}},exports.takeWhile=function(t){return function(e){return function(r){let u=n,o=!1;return e((function(n){"number"==typeof n?o||(o=!0,r(0)):n.TAG?o||(t(n._0)?r(n):(o=!0,r(0),u(1))):(u=n._0,r(n))}))}}},exports.tap=N,exports.throttle=function(n){return function(t){return function(e){function r(n){o=void 0,u=!1}let u=!1,o=void 0;var i=function(n){void 0!==(n=o)&&clearTimeout(c(n))};return t((function(t){if("number"==typeof t)i(),e(0);else if(t.TAG)u||(u=!0,i(),o=f(setTimeout(r,n(t._0))),e(t));else{var c=t._0;e({TAG:0,_0:function(n){return n?(i(),c(1)):c(n)}})}}))}}},exports.toArray=function(t){let e=[],r=n,u=!1;return t((function(n){"number"==typeof n?u=!0:n.TAG?(e.push(n._0),r(0)):(r=n=n._0,n(0))})),u||r(1),e},exports.toCallbag=function(n){return function(t,e){if(0===t)return n((function(n){if("number"==typeof n)return 2===e.length?e(2,void 0):e.bind(null,2,void 0);if(n.TAG)return n=n._0,2===e.length?e(1,n):e.bind(null,1,n);var t=n._0;return n=function(n){switch(n){case 1:t(0);break;case 2:t(1)}},2===e.length?e(0,n):e.bind(null,0,n)}))}},exports.toObservable=function(t){var e={subscribe:function(e){let r=n,u=!1;return t((function(n){if("number"==typeof n)return u=!0,e.complete();if(n.TAG){if(u)return;return e.next(n._0),r(0)}r=n=n._0,n(0)})),{unsubscribe:function(){if(!u)return u=!0,r(1)}}}};return e[D]=function(n){return e},e},exports.toPromise=function(n){return new Promise((function(t,e){E(1)(n)((function(n){"number"!=typeof n&&(n.TAG?t(n._0):n._0(0))}))}))}; |
{ | ||
"name": "wonka", | ||
"description": "A fast push & pull stream library for Reason/OCaml, Flow, and TypeScript", | ||
"version": "4.0.14", | ||
"version": "5.0.0-rc.0", | ||
"author": "Phil Pluckthun <phil@kitten.sh>", | ||
@@ -68,15 +68,15 @@ "source": "./src/Wonka.ts", | ||
"devDependencies": { | ||
"@ampproject/rollup-plugin-closure-compiler": "^0.25.2", | ||
"@babel/core": "^7.10.2", | ||
"@babel/plugin-syntax-typescript": "^7.10.1", | ||
"@babel/plugin-transform-modules-commonjs": "^7.10.1", | ||
"@babel/preset-env": "^7.10.2", | ||
"@ampproject/rollup-plugin-closure-compiler": "^0.26.0", | ||
"@babel/core": "^7.10.4", | ||
"@babel/plugin-syntax-typescript": "^7.10.4", | ||
"@babel/plugin-transform-modules-commonjs": "^7.10.4", | ||
"@babel/preset-env": "^7.10.4", | ||
"@glennsl/bs-jest": "^0.5.1", | ||
"@rollup/plugin-buble": "^0.21.3", | ||
"@rollup/plugin-commonjs": "^12.0.0", | ||
"@rollup/plugin-node-resolve": "^8.0.0", | ||
"@types/jest": "^25.2.3", | ||
"@rollup/plugin-commonjs": "^13.0.0", | ||
"@rollup/plugin-node-resolve": "^8.1.0", | ||
"@types/jest": "^26.0.3", | ||
"@types/zen-observable": "^0.8.0", | ||
"babel-plugin-closure-elimination": "^1.3.1", | ||
"bs-platform": "^7.3.2", | ||
"bs-platform": "^8.0.3", | ||
"callbag-from-iter": "^1.2.0", | ||
@@ -86,11 +86,11 @@ "callbag-iterate": "^1.0.0", | ||
"coveralls": "^3.1.0", | ||
"flow-bin": "^0.125.1", | ||
"flowgen": "^1.10.0", | ||
"gatsby": "^2.18.17", | ||
"gatsby-plugin-netlify": "^2.1.30", | ||
"flow-bin": "^0.128.0", | ||
"flowgen": "^1.11.0", | ||
"gatsby": "^2.23.17", | ||
"gatsby-plugin-netlify": "^2.3.10", | ||
"gatsby-theme-docs-system": "^0.2.2", | ||
"gentype": "^3.23.0", | ||
"globby": "^11.0.0", | ||
"gentype": "^3.26.0", | ||
"globby": "^11.0.1", | ||
"husky": "^4.2.5", | ||
"lint-staged": "^10.2.7", | ||
"lint-staged": "^10.2.11", | ||
"npm-run-all": "^4.1.5", | ||
@@ -101,3 +101,3 @@ "prettier": "^2.0.5", | ||
"rimraf": "^3.0.2", | ||
"rollup": "^2.12.0", | ||
"rollup": "^2.18.2", | ||
"rollup-plugin-babel": "^4.4.0", | ||
@@ -107,4 +107,4 @@ "rollup-plugin-prettier": "^2.1.0", | ||
"rollup-plugin-typescript2": "^0.27.1", | ||
"ts-jest": "^26.1.0", | ||
"typescript": "^3.9.2", | ||
"ts-jest": "^26.1.1", | ||
"typescript": "^3.9.6", | ||
"zen-observable": "^0.8.15" | ||
@@ -111,0 +111,0 @@ }, |
@@ -1,2 +0,1 @@ | ||
import { __ as block } from 'bs-platform/lib/es6/block'; | ||
import { talkbackPlaceholder } from './Wonka_helpers.bs'; | ||
@@ -11,19 +10,19 @@ | ||
export const pull = (0 as any as talkbackT); | ||
export const close = (1 as any as talkbackT); | ||
export const pull: talkbackT = 0; | ||
export const close: talkbackT = 1; | ||
export const start = <a>(tb: talkbackCb): signalT<a> => block(0, [tb]) as any; | ||
export const push = <a>(x: a): signalT<a> => block(1, [x]) as any; | ||
export const end = <a>(): signalT<a> => 0 as any; | ||
export const start = <a>(tb: talkbackCb): signalT<a> => ({TAG: 0, "_0": tb}); | ||
export const push = <a>(x: a): signalT<a> => ({TAG: 1, "_0": x}); | ||
export const end = <a>(): signalT<a> => 0; | ||
export const isStart = <a>(s: signalT<a>) => | ||
typeof s !== 'number' && (s as any).tag === 0; | ||
typeof s !== 'number' && s.TAG === 0; | ||
export const isPush = <a>(s: signalT<a>) => | ||
typeof s !== 'number' && (s as any).tag === 1; | ||
typeof s !== 'number' && s.TAG === 1; | ||
export const isEnd = <a>(s: signalT<a>) => | ||
typeof s === 'number' && (s as any) === 0; | ||
typeof s === 'number' && s === 0; | ||
export const unboxPush = <a>(s: signalT<a>): a | null => | ||
isPush(s) ? (s as any)[0] : null; | ||
isPush(s) ? s["_0"] : null; | ||
export const unboxStart = <a>(s: signalT<a>): talkbackCb => | ||
isStart(s) ? (s as any)[0] : (talkbackPlaceholder as any); | ||
isStart(s) ? s["_0"] : (talkbackPlaceholder as any); |
var Helpers = { }; | ||
var Helpers = {}; | ||
@@ -6,0 +6,0 @@ function isEmpty(stack) { |
@@ -7,4 +7,4 @@ export type Exn_t = Error; | ||
export type signalT<a> = | ||
| ({ tag: 0 } & [(talkback: talkbackT) => void]) | ||
| ({ tag: 1 } & [a]) | ||
| ({ TAG: 0, _0: (talkback: talkbackT) => void }) | ||
| ({ TAG: 1, _0: a }) | ||
| 0; | ||
@@ -11,0 +11,0 @@ |
import * as Block from "bs-platform/lib/es6/block.js"; | ||
import * as Curry from "bs-platform/lib/es6/curry.js"; | ||
function fromCallbag(callbag) { | ||
return (function (sink) { | ||
var wrappedSink = function (signal, data) { | ||
switch (signal) { | ||
case /* CALLBAG_START */0 : | ||
var wrappedTalkback = function (talkbackSignal) { | ||
if (talkbackSignal) { | ||
return data(/* CALLBAG_END */2); | ||
} else { | ||
return data(/* CALLBAG_DATA */1); | ||
} | ||
}; | ||
return sink(/* Start */Block.__(0, [wrappedTalkback])); | ||
case /* CALLBAG_DATA */1 : | ||
return sink(/* Push */Block.__(1, [data])); | ||
case /* CALLBAG_END */2 : | ||
return sink(/* End */0); | ||
} | ||
}; | ||
return Curry._2(callbag, /* CALLBAG_START */0, wrappedSink); | ||
}); | ||
return function (sink) { | ||
var wrappedSink = function (signal, data) { | ||
switch (signal) { | ||
case /* CALLBAG_START */0 : | ||
var wrappedTalkback = function (talkbackSignal) { | ||
if (talkbackSignal) { | ||
return data(/* CALLBAG_END */2); | ||
} else { | ||
return data(/* CALLBAG_DATA */1); | ||
} | ||
}; | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: wrappedTalkback | ||
}); | ||
case /* CALLBAG_DATA */1 : | ||
return sink({ | ||
TAG: /* Push */1, | ||
_0: data | ||
}); | ||
case /* CALLBAG_END */2 : | ||
return sink(/* End */0); | ||
} | ||
}; | ||
return Curry._2(callbag, /* CALLBAG_START */0, wrappedSink); | ||
}; | ||
} | ||
function toCallbag(source) { | ||
return (function (signal, data) { | ||
if (signal === /* CALLBAG_START */0) { | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
return Curry._2(data, /* CALLBAG_END */2, undefined); | ||
return function (signal, data) { | ||
if (signal === /* CALLBAG_START */0) { | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
return Curry._2(data, /* CALLBAG_END */2, undefined); | ||
} | ||
if (signal.TAG) { | ||
return Curry._2(data, /* CALLBAG_DATA */1, signal._0); | ||
} | ||
var talkbackFn = signal._0; | ||
var wrappedTalkbackFn = function (talkback) { | ||
switch (talkback) { | ||
case /* CALLBAG_START */0 : | ||
return ; | ||
case /* CALLBAG_DATA */1 : | ||
return talkbackFn(/* Pull */0); | ||
case /* CALLBAG_END */2 : | ||
return talkbackFn(/* Close */1); | ||
} | ||
if (signal.tag) { | ||
return Curry._2(data, /* CALLBAG_DATA */1, signal[0]); | ||
} | ||
var talkbackFn = signal[0]; | ||
var wrappedTalkbackFn = function (talkback) { | ||
switch (talkback) { | ||
case /* CALLBAG_START */0 : | ||
return ; | ||
case /* CALLBAG_DATA */1 : | ||
return talkbackFn(/* Pull */0); | ||
case /* CALLBAG_END */2 : | ||
return talkbackFn(/* Close */1); | ||
} | ||
}; | ||
return Curry._2(data, /* CALLBAG_START */0, wrappedTalkbackFn); | ||
})); | ||
} | ||
}); | ||
}; | ||
return Curry._2(data, /* CALLBAG_START */0, wrappedTalkbackFn); | ||
})); | ||
} | ||
}; | ||
} | ||
@@ -58,0 +63,0 @@ |
import * as Block from "bs-platform/lib/es6/block.js"; | ||
import * as Curry from "bs-platform/lib/es6/curry.js"; | ||
@@ -14,22 +13,28 @@ import * as Wonka_helpers from "../helpers/Wonka_helpers.bs.js"; | ||
var observable = match !== undefined ? input[observableSymbol]() : input; | ||
return (function (sink) { | ||
var observer = { | ||
next: (function (value) { | ||
return sink(/* Push */Block.__(1, [value])); | ||
}), | ||
complete: (function () { | ||
return sink(/* End */0); | ||
}), | ||
error: (function (param) { | ||
}) | ||
}; | ||
var subscription = observable.subscribe(observer); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
return subscription.unsubscribe(); | ||
} | ||
})])); | ||
}); | ||
return function (sink) { | ||
var observer = { | ||
next: (function (value) { | ||
return sink({ | ||
TAG: /* Push */1, | ||
_0: value | ||
}); | ||
}), | ||
complete: (function () { | ||
return sink(/* End */0); | ||
}), | ||
error: (function (param) { | ||
}) | ||
}; | ||
var subscription = observable.subscribe(observer); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
return subscription.unsubscribe(); | ||
} | ||
}) | ||
}); | ||
}; | ||
} | ||
@@ -49,5 +54,5 @@ | ||
} | ||
if (signal.tag) { | ||
if (signal.TAG) { | ||
if (!state.ended) { | ||
observer.next(signal[0]); | ||
observer.next(signal._0); | ||
return state.talkback(/* Pull */0); | ||
@@ -58,3 +63,3 @@ } else { | ||
} | ||
var x = signal[0]; | ||
var x = signal._0; | ||
state.talkback = x; | ||
@@ -61,0 +66,0 @@ return x(/* Pull */0); |
import * as Block from "bs-platform/lib/es6/block.js"; | ||
import * as Curry from "bs-platform/lib/es6/curry.js"; | ||
@@ -11,139 +10,145 @@ import * as Caml_option from "bs-platform/lib/es6/caml_option.js"; | ||
function debounce(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
id: undefined, | ||
deferredEnded: false, | ||
ended: false | ||
}; | ||
var $$clearTimeout$1 = function (param) { | ||
var timeoutId = state.id; | ||
if (timeoutId !== undefined) { | ||
state.id = undefined; | ||
clearTimeout(Caml_option.valFromOption(timeoutId)); | ||
return ; | ||
} | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (state.ended) { | ||
return ; | ||
} | ||
state.ended = true; | ||
var match = state.id; | ||
if (match !== undefined) { | ||
state.deferredEnded = true; | ||
return ; | ||
} else { | ||
return sink(/* End */0); | ||
} | ||
} | ||
if (signal.tag) { | ||
if (!state.ended) { | ||
$$clearTimeout$1(undefined); | ||
state.id = Caml_option.some(setTimeout((function (param) { | ||
state.id = undefined; | ||
sink(signal); | ||
if (state.deferredEnded) { | ||
return sink(/* End */0); | ||
} | ||
}), f(signal[0]))); | ||
return ; | ||
} else { | ||
return ; | ||
} | ||
} | ||
var tb = signal[0]; | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
state.deferredEnded = false; | ||
$$clearTimeout$1(undefined); | ||
return tb(/* Close */1); | ||
} else { | ||
return tb(/* Pull */0); | ||
} | ||
} | ||
})])); | ||
})); | ||
}); | ||
}); | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
id: undefined, | ||
deferredEnded: false, | ||
ended: false | ||
}; | ||
var $$clearTimeout$1 = function (param) { | ||
var timeoutId = state.id; | ||
if (timeoutId !== undefined) { | ||
state.id = undefined; | ||
clearTimeout(Caml_option.valFromOption(timeoutId)); | ||
return ; | ||
} | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (state.ended) { | ||
return ; | ||
} | ||
state.ended = true; | ||
var match = state.id; | ||
if (match !== undefined) { | ||
state.deferredEnded = true; | ||
return ; | ||
} else { | ||
return sink(/* End */0); | ||
} | ||
} | ||
if (signal.TAG) { | ||
if (!state.ended) { | ||
$$clearTimeout$1(undefined); | ||
state.id = Caml_option.some(setTimeout((function (param) { | ||
state.id = undefined; | ||
sink(signal); | ||
if (state.deferredEnded) { | ||
return sink(/* End */0); | ||
} | ||
}), f(signal._0))); | ||
return ; | ||
} else { | ||
return ; | ||
} | ||
} | ||
var tb = signal._0; | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
state.deferredEnded = false; | ||
$$clearTimeout$1(undefined); | ||
return tb(/* Close */1); | ||
} else { | ||
return tb(/* Pull */0); | ||
} | ||
} | ||
}) | ||
}); | ||
})); | ||
}; | ||
}; | ||
} | ||
function delay(wait) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var active = { | ||
contents: 0 | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal !== "number" && !signal.tag) { | ||
return sink(signal); | ||
} | ||
active.contents = active.contents + 1 | 0; | ||
setTimeout((function (param) { | ||
if (active.contents !== 0) { | ||
active.contents = active.contents - 1 | 0; | ||
return sink(signal); | ||
} | ||
}), wait); | ||
})); | ||
}); | ||
}); | ||
return function (source) { | ||
return function (sink) { | ||
var active = { | ||
contents: 0 | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal !== "number" && !signal.TAG) { | ||
return sink(signal); | ||
} | ||
active.contents = active.contents + 1 | 0; | ||
setTimeout((function (param) { | ||
if (active.contents !== 0) { | ||
active.contents = active.contents - 1 | 0; | ||
return sink(signal); | ||
} | ||
}), wait); | ||
})); | ||
}; | ||
}; | ||
} | ||
function throttle(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var skip = { | ||
contents: false | ||
}; | ||
var id = { | ||
contents: undefined | ||
}; | ||
var $$clearTimeout$1 = function (param) { | ||
var timeoutId = id.contents; | ||
if (timeoutId !== undefined) { | ||
clearTimeout(Caml_option.valFromOption(timeoutId)); | ||
return ; | ||
} | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
$$clearTimeout$1(undefined); | ||
return sink(/* End */0); | ||
} | ||
if (signal.tag) { | ||
if (!skip.contents) { | ||
skip.contents = true; | ||
$$clearTimeout$1(undefined); | ||
id.contents = Caml_option.some(setTimeout((function (param) { | ||
id.contents = undefined; | ||
skip.contents = false; | ||
}), f(signal[0]))); | ||
return sink(signal); | ||
} else { | ||
return ; | ||
} | ||
} | ||
var tb = signal[0]; | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
$$clearTimeout$1(undefined); | ||
return tb(/* Close */1); | ||
} else { | ||
return tb(signal); | ||
} | ||
})])); | ||
})); | ||
}); | ||
}); | ||
return function (source) { | ||
return function (sink) { | ||
var skip = { | ||
contents: false | ||
}; | ||
var id = { | ||
contents: undefined | ||
}; | ||
var $$clearTimeout$1 = function (param) { | ||
var timeoutId = id.contents; | ||
if (timeoutId !== undefined) { | ||
clearTimeout(Caml_option.valFromOption(timeoutId)); | ||
return ; | ||
} | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
$$clearTimeout$1(undefined); | ||
return sink(/* End */0); | ||
} | ||
if (signal.TAG) { | ||
if (!skip.contents) { | ||
skip.contents = true; | ||
$$clearTimeout$1(undefined); | ||
id.contents = Caml_option.some(setTimeout((function (param) { | ||
id.contents = undefined; | ||
skip.contents = false; | ||
}), f(signal._0))); | ||
return sink(signal); | ||
} else { | ||
return ; | ||
} | ||
} | ||
var tb = signal._0; | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
$$clearTimeout$1(undefined); | ||
return tb(/* Close */1); | ||
} else { | ||
return tb(signal); | ||
} | ||
}) | ||
}); | ||
})); | ||
}; | ||
}; | ||
} | ||
@@ -156,6 +161,6 @@ | ||
return ; | ||
} else if (signal.tag) { | ||
return resolve(signal[0]); | ||
} else if (signal.TAG) { | ||
return resolve(signal._0); | ||
} else { | ||
return signal[0](/* Pull */0); | ||
return signal._0(/* Pull */0); | ||
} | ||
@@ -168,62 +173,80 @@ })); | ||
function interval(p) { | ||
return (function (sink) { | ||
var i = { | ||
contents: 0 | ||
}; | ||
var id = setInterval((function (param) { | ||
var num = i.contents; | ||
i.contents = i.contents + 1 | 0; | ||
return sink(/* Push */Block.__(1, [num])); | ||
}), p); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
clearInterval(id); | ||
return ; | ||
} | ||
})])); | ||
}); | ||
return function (sink) { | ||
var i = { | ||
contents: 0 | ||
}; | ||
var id = setInterval((function (param) { | ||
var num = i.contents; | ||
i.contents = i.contents + 1 | 0; | ||
return sink({ | ||
TAG: /* Push */1, | ||
_0: num | ||
}); | ||
}), p); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
clearInterval(id); | ||
return ; | ||
} | ||
}) | ||
}); | ||
}; | ||
} | ||
function fromDomEvent(element, $$event) { | ||
return (function (sink) { | ||
var addEventListener = (function (element, event, handler) { | ||
return function (sink) { | ||
var addEventListener = (function (element, event, handler) { | ||
element.addEventListener(event, handler); | ||
}); | ||
var removeEventListener = (function (element, event, handler) { | ||
var removeEventListener = (function (element, event, handler) { | ||
element.removeEventListener(event, handler); | ||
}); | ||
var handler = function ($$event) { | ||
return sink(/* Push */Block.__(1, [$$event])); | ||
}; | ||
sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
return removeEventListener(element, $$event, handler); | ||
} | ||
})])); | ||
return addEventListener(element, $$event, handler); | ||
}); | ||
var handler = function ($$event) { | ||
return sink({ | ||
TAG: /* Push */1, | ||
_0: $$event | ||
}); | ||
}; | ||
sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
return removeEventListener(element, $$event, handler); | ||
} | ||
}) | ||
}); | ||
return addEventListener(element, $$event, handler); | ||
}; | ||
} | ||
function fromPromise(promise) { | ||
return (function (sink) { | ||
var ended = { | ||
contents: false | ||
}; | ||
promise.then((function (value) { | ||
if (!ended.contents) { | ||
sink(/* Push */Block.__(1, [value])); | ||
sink(/* End */0); | ||
} | ||
return Promise.resolve(undefined); | ||
})); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
ended.contents = true; | ||
return ; | ||
} | ||
})])); | ||
}); | ||
return function (sink) { | ||
var ended = { | ||
contents: false | ||
}; | ||
promise.then(function (value) { | ||
if (!ended.contents) { | ||
sink({ | ||
TAG: /* Push */1, | ||
_0: value | ||
}); | ||
sink(/* End */0); | ||
} | ||
return Promise.resolve(undefined); | ||
}); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
ended.contents = true; | ||
return ; | ||
} | ||
}) | ||
}); | ||
}; | ||
} | ||
@@ -230,0 +253,0 @@ |
import * as Block from "bs-platform/lib/es6/block.js"; | ||
import * as Curry from "bs-platform/lib/es6/curry.js"; | ||
@@ -11,656 +10,709 @@ import * as Caml_option from "bs-platform/lib/es6/caml_option.js"; | ||
function buffer(notifier) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
buffer: new Array(), | ||
sourceTalkback: Wonka_helpers.talkbackPlaceholder, | ||
notifierTalkback: Wonka_helpers.talkbackPlaceholder, | ||
pulled: false, | ||
ended: false | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.notifierTalkback(/* Close */1); | ||
if (state.buffer.length > 0) { | ||
sink(/* Push */Block.__(1, [state.buffer])); | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
buffer: new Array(), | ||
sourceTalkback: Wonka_helpers.talkbackPlaceholder, | ||
notifierTalkback: Wonka_helpers.talkbackPlaceholder, | ||
pulled: false, | ||
ended: false | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.notifierTalkback(/* Close */1); | ||
if (state.buffer.length > 0) { | ||
sink({ | ||
TAG: /* Push */1, | ||
_0: state.buffer | ||
}); | ||
} | ||
sink(/* End */0); | ||
} | ||
} else if (signal.TAG) { | ||
if (!state.ended) { | ||
state.buffer.push(signal._0); | ||
if (state.pulled) { | ||
state.pulled = false; | ||
} else { | ||
state.pulled = true; | ||
state.sourceTalkback(/* Pull */0); | ||
state.notifierTalkback(/* Pull */0); | ||
} | ||
} | ||
} else { | ||
state.sourceTalkback = signal._0; | ||
Curry._1(notifier, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
if (state.buffer.length > 0) { | ||
sink({ | ||
TAG: /* Push */1, | ||
_0: state.buffer | ||
}); | ||
} | ||
sink(/* End */0); | ||
} | ||
} else if (signal.TAG) { | ||
if (!state.ended && state.buffer.length > 0) { | ||
var buffer = state.buffer; | ||
state.buffer = new Array(); | ||
sink({ | ||
TAG: /* Push */1, | ||
_0: buffer | ||
}); | ||
} | ||
} else { | ||
state.notifierTalkback = signal._0; | ||
} | ||
})); | ||
} | ||
})); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
return state.notifierTalkback(/* Close */1); | ||
} else if (!state.pulled) { | ||
state.pulled = true; | ||
state.sourceTalkback(/* Pull */0); | ||
return state.notifierTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
sink(/* End */0); | ||
} | ||
} else if (signal.tag) { | ||
}) | ||
}); | ||
}; | ||
}; | ||
} | ||
function combine(sourceA, sourceB) { | ||
return function (sink) { | ||
var state = { | ||
talkbackA: Wonka_helpers.talkbackPlaceholder, | ||
talkbackB: Wonka_helpers.talkbackPlaceholder, | ||
lastValA: undefined, | ||
lastValB: undefined, | ||
gotSignal: false, | ||
endCounter: 0, | ||
ended: false | ||
}; | ||
Curry._1(sourceA, (function (signal) { | ||
var match = state.lastValB; | ||
if (typeof signal === "number") { | ||
if (state.endCounter < 1) { | ||
state.endCounter = state.endCounter + 1 | 0; | ||
return ; | ||
} else if (!state.ended) { | ||
state.ended = true; | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
if (!signal.TAG) { | ||
state.talkbackA = signal._0; | ||
return ; | ||
} | ||
var a = signal._0; | ||
if (match !== undefined) { | ||
if (!state.ended) { | ||
state.lastValA = Caml_option.some(a); | ||
state.gotSignal = false; | ||
return sink({ | ||
TAG: /* Push */1, | ||
_0: [ | ||
a, | ||
Caml_option.valFromOption(match) | ||
] | ||
}); | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
state.lastValA = Caml_option.some(a); | ||
if (state.gotSignal) { | ||
state.gotSignal = false; | ||
return ; | ||
} else { | ||
return state.talkbackB(/* Pull */0); | ||
} | ||
} | ||
})); | ||
Curry._1(sourceB, (function (signal) { | ||
var match = state.lastValA; | ||
if (typeof signal === "number") { | ||
if (state.endCounter < 1) { | ||
state.endCounter = state.endCounter + 1 | 0; | ||
return ; | ||
} else if (!state.ended) { | ||
state.ended = true; | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
if (!signal.TAG) { | ||
state.talkbackB = signal._0; | ||
return ; | ||
} | ||
var b = signal._0; | ||
if (match !== undefined) { | ||
if (!state.ended) { | ||
state.lastValB = Caml_option.some(b); | ||
state.gotSignal = false; | ||
return sink({ | ||
TAG: /* Push */1, | ||
_0: [ | ||
Caml_option.valFromOption(match), | ||
b | ||
] | ||
}); | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
state.lastValB = Caml_option.some(b); | ||
if (state.gotSignal) { | ||
state.gotSignal = false; | ||
return ; | ||
} else { | ||
return state.talkbackA(/* Pull */0); | ||
} | ||
} | ||
})); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (!state.ended) { | ||
state.buffer.push(signal[0]); | ||
if (state.pulled) { | ||
state.pulled = false; | ||
if (signal) { | ||
state.ended = true; | ||
state.talkbackA(/* Close */1); | ||
return state.talkbackB(/* Close */1); | ||
} else if (!state.gotSignal) { | ||
state.gotSignal = true; | ||
state.talkbackA(signal); | ||
return state.talkbackB(signal); | ||
} else { | ||
state.pulled = true; | ||
state.sourceTalkback(/* Pull */0); | ||
state.notifierTalkback(/* Pull */0); | ||
return ; | ||
} | ||
} | ||
} else { | ||
state.sourceTalkback = signal[0]; | ||
Curry._1(notifier, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
if (state.buffer.length > 0) { | ||
sink(/* Push */Block.__(1, [state.buffer])); | ||
} | ||
sink(/* End */0); | ||
} | ||
} else if (signal.tag) { | ||
if (!state.ended && state.buffer.length > 0) { | ||
var buffer = state.buffer; | ||
state.buffer = new Array(); | ||
sink(/* Push */Block.__(1, [buffer])); | ||
} | ||
} else { | ||
state.notifierTalkback = signal[0]; | ||
} | ||
})); | ||
} | ||
})); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
return state.notifierTalkback(/* Close */1); | ||
} else if (!state.pulled) { | ||
state.pulled = true; | ||
state.sourceTalkback(/* Pull */0); | ||
return state.notifierTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
})])); | ||
}); | ||
}); | ||
}) | ||
}); | ||
}; | ||
} | ||
function combine(sourceA, sourceB) { | ||
return (function (sink) { | ||
function concatMap(f) { | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
talkbackA: Wonka_helpers.talkbackPlaceholder, | ||
talkbackB: Wonka_helpers.talkbackPlaceholder, | ||
lastValA: undefined, | ||
lastValB: undefined, | ||
gotSignal: false, | ||
endCounter: 0, | ||
inputQueue: new Array(), | ||
outerTalkback: Wonka_helpers.talkbackPlaceholder, | ||
outerPulled: false, | ||
innerTalkback: Wonka_helpers.talkbackPlaceholder, | ||
innerActive: false, | ||
innerPulled: false, | ||
ended: false | ||
}; | ||
Curry._1(sourceA, (function (signal) { | ||
var match = state.lastValB; | ||
if (typeof signal === "number") { | ||
if (state.endCounter < 1) { | ||
state.endCounter = state.endCounter + 1 | 0; | ||
return ; | ||
} else if (!state.ended) { | ||
state.ended = true; | ||
return sink(/* End */0); | ||
var applyInnerSource = function (innerSource) { | ||
state.innerActive = true; | ||
Curry._1(innerSource, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (state.innerActive) { | ||
state.innerActive = false; | ||
var input = state.inputQueue.shift(); | ||
if (input !== undefined) { | ||
applyInnerSource(f(Caml_option.valFromOption(input))); | ||
} else if (state.ended) { | ||
sink(/* End */0); | ||
} else if (!state.outerPulled) { | ||
state.outerPulled = true; | ||
state.outerTalkback(/* Pull */0); | ||
} | ||
} | ||
} else if (signal.TAG) { | ||
if (state.innerActive) { | ||
sink(signal); | ||
if (state.innerPulled) { | ||
state.innerPulled = false; | ||
} else { | ||
state.innerTalkback(/* Pull */0); | ||
} | ||
} | ||
} else { | ||
return ; | ||
var tb = signal._0; | ||
state.innerTalkback = tb; | ||
state.innerPulled = false; | ||
tb(/* Pull */0); | ||
} | ||
} | ||
if (!signal.tag) { | ||
state.talkbackA = signal[0]; | ||
return ; | ||
} | ||
var a = signal[0]; | ||
if (match !== undefined) { | ||
})); | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.lastValA = Caml_option.some(a); | ||
state.gotSignal = false; | ||
return sink(/* Push */Block.__(1, [/* tuple */[ | ||
a, | ||
Caml_option.valFromOption(match) | ||
]])); | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
state.lastValA = Caml_option.some(a); | ||
if (state.gotSignal) { | ||
state.gotSignal = false; | ||
return ; | ||
} else { | ||
return state.talkbackB(/* Pull */0); | ||
} | ||
} | ||
})); | ||
Curry._1(sourceB, (function (signal) { | ||
var match = state.lastValA; | ||
if (typeof signal === "number") { | ||
if (state.endCounter < 1) { | ||
state.endCounter = state.endCounter + 1 | 0; | ||
return ; | ||
} else if (!state.ended) { | ||
state.ended = true; | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
if (!state.innerActive && MutableQueue_js.isEmpty(state.inputQueue)) { | ||
sink(/* End */0); | ||
} | ||
} | ||
} | ||
if (!signal.tag) { | ||
state.talkbackB = signal[0]; | ||
return ; | ||
} | ||
var b = signal[0]; | ||
if (match !== undefined) { | ||
} else if (signal.TAG) { | ||
if (!state.ended) { | ||
state.lastValB = Caml_option.some(b); | ||
state.gotSignal = false; | ||
return sink(/* Push */Block.__(1, [/* tuple */[ | ||
Caml_option.valFromOption(match), | ||
b | ||
]])); | ||
} else { | ||
return ; | ||
var x = signal._0; | ||
state.outerPulled = false; | ||
if (state.innerActive) { | ||
state.inputQueue.push(x); | ||
} else { | ||
applyInnerSource(f(x)); | ||
} | ||
} | ||
} else { | ||
state.lastValB = Caml_option.some(b); | ||
if (state.gotSignal) { | ||
state.gotSignal = false; | ||
return ; | ||
} else { | ||
return state.talkbackA(/* Pull */0); | ||
} | ||
state.outerTalkback = signal._0; | ||
} | ||
})); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
state.talkbackA(/* Close */1); | ||
return state.talkbackB(/* Close */1); | ||
} else if (!state.gotSignal) { | ||
state.gotSignal = true; | ||
state.talkbackA(signal); | ||
return state.talkbackB(signal); | ||
} else { | ||
return ; | ||
} | ||
state.ended = true; | ||
state.outerTalkback(/* Close */1); | ||
} | ||
})])); | ||
}); | ||
} | ||
function concatMap(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
inputQueue: new Array(), | ||
outerTalkback: Wonka_helpers.talkbackPlaceholder, | ||
outerPulled: false, | ||
innerTalkback: Wonka_helpers.talkbackPlaceholder, | ||
innerActive: false, | ||
innerPulled: false, | ||
ended: false | ||
}; | ||
var applyInnerSource = function (innerSource) { | ||
state.innerActive = true; | ||
Curry._1(innerSource, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (state.innerActive) { | ||
state.innerActive = false; | ||
var input = state.inputQueue.shift(); | ||
if (input !== undefined) { | ||
applyInnerSource(f(Caml_option.valFromOption(input))); | ||
} else if (state.ended) { | ||
sink(/* End */0); | ||
} else if (!state.outerPulled) { | ||
if (state.innerActive) { | ||
state.innerActive = false; | ||
return state.innerTalkback(/* Close */1); | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
if (!state.ended && !state.outerPulled) { | ||
state.outerPulled = true; | ||
state.outerTalkback(/* Pull */0); | ||
} | ||
} | ||
} else if (signal.tag) { | ||
if (state.innerActive) { | ||
sink(signal); | ||
if (state.innerPulled) { | ||
state.innerPulled = false; | ||
if (state.innerActive && !state.innerPulled) { | ||
state.innerPulled = true; | ||
return state.innerTalkback(/* Pull */0); | ||
} else { | ||
state.innerTalkback(/* Pull */0); | ||
return ; | ||
} | ||
} | ||
} else { | ||
var tb = signal[0]; | ||
state.innerTalkback = tb; | ||
state.innerPulled = false; | ||
tb(/* Pull */0); | ||
} | ||
})); | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
if (!state.innerActive && MutableQueue_js.isEmpty(state.inputQueue)) { | ||
sink(/* End */0); | ||
} | ||
} | ||
} else if (signal.tag) { | ||
if (!state.ended) { | ||
var x = signal[0]; | ||
state.outerPulled = false; | ||
if (state.innerActive) { | ||
state.inputQueue.push(x); | ||
} else { | ||
applyInnerSource(f(x)); | ||
} | ||
} | ||
} else { | ||
state.outerTalkback = signal[0]; | ||
} | ||
})); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.outerTalkback(/* Close */1); | ||
} | ||
if (state.innerActive) { | ||
state.innerActive = false; | ||
return state.innerTalkback(/* Close */1); | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
if (!state.ended && !state.outerPulled) { | ||
state.outerPulled = true; | ||
state.outerTalkback(/* Pull */0); | ||
} | ||
if (state.innerActive && !state.innerPulled) { | ||
state.innerPulled = true; | ||
return state.innerTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
})])); | ||
}); | ||
}); | ||
}) | ||
}); | ||
}; | ||
}; | ||
} | ||
function concatAll(source) { | ||
return concatMap((function (x) { | ||
return x; | ||
}))(source); | ||
return concatMap(function (x) { | ||
return x; | ||
})(source); | ||
} | ||
function concat(sources) { | ||
return concatMap((function (x) { | ||
return x; | ||
}))(Wonka_sources.fromArray(sources)); | ||
return concatMap(function (x) { | ||
return x; | ||
})(Wonka_sources.fromArray(sources)); | ||
} | ||
function filter(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var talkback = { | ||
contents: Wonka_helpers.talkbackPlaceholder | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
sink(signal); | ||
} else if (signal.tag) { | ||
if (f(signal[0])) { | ||
sink(signal); | ||
} else { | ||
talkback.contents(/* Pull */0); | ||
} | ||
} else { | ||
talkback.contents = signal[0]; | ||
sink(signal); | ||
} | ||
})); | ||
}); | ||
}); | ||
return function (source) { | ||
return function (sink) { | ||
var talkback = { | ||
contents: Wonka_helpers.talkbackPlaceholder | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
sink(signal); | ||
} else if (signal.TAG) { | ||
if (f(signal._0)) { | ||
sink(signal); | ||
} else { | ||
talkback.contents(/* Pull */0); | ||
} | ||
} else { | ||
talkback.contents = signal._0; | ||
sink(signal); | ||
} | ||
})); | ||
}; | ||
}; | ||
} | ||
function map(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
return Curry._1(source, (function (signal) { | ||
var tmp; | ||
tmp = typeof signal === "number" ? /* End */0 : ( | ||
signal.tag ? /* Push */Block.__(1, [f(signal[0])]) : /* Start */Block.__(0, [signal[0]]) | ||
); | ||
return sink(tmp); | ||
})); | ||
}); | ||
}); | ||
return function (source) { | ||
return function (sink) { | ||
return Curry._1(source, (function (signal) { | ||
var tmp; | ||
tmp = typeof signal === "number" ? /* End */0 : ( | ||
signal.TAG ? ({ | ||
TAG: /* Push */1, | ||
_0: f(signal._0) | ||
}) : ({ | ||
TAG: /* Start */0, | ||
_0: signal._0 | ||
}) | ||
); | ||
return sink(tmp); | ||
})); | ||
}; | ||
}; | ||
} | ||
function mergeMap(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
outerTalkback: Wonka_helpers.talkbackPlaceholder, | ||
outerPulled: false, | ||
innerTalkbacks: new Array(), | ||
ended: false | ||
}; | ||
var applyInnerSource = function (innerSource) { | ||
var talkback = { | ||
contents: Wonka_helpers.talkbackPlaceholder | ||
}; | ||
return Curry._1(innerSource, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (state.innerTalkbacks.length === 0) { | ||
return ; | ||
} | ||
state.innerTalkbacks = state.innerTalkbacks.filter((function (x) { | ||
return x !== talkback.contents; | ||
})); | ||
var exhausted = state.innerTalkbacks.length === 0; | ||
if (state.ended && exhausted) { | ||
return sink(/* End */0); | ||
} else if (!state.outerPulled && exhausted) { | ||
state.outerPulled = true; | ||
return state.outerTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
if (signal.tag) { | ||
if (state.innerTalkbacks.length !== 0) { | ||
sink(/* Push */Block.__(1, [signal[0]])); | ||
return talkback.contents(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
var tb = signal[0]; | ||
talkback.contents = tb; | ||
state.innerTalkbacks = state.innerTalkbacks.concat(tb); | ||
return tb(/* Pull */0); | ||
})); | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
if (state.innerTalkbacks.length === 0) { | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
outerTalkback: Wonka_helpers.talkbackPlaceholder, | ||
outerPulled: false, | ||
innerTalkbacks: new Array(), | ||
ended: false | ||
}; | ||
var applyInnerSource = function (innerSource) { | ||
var talkback = { | ||
contents: Wonka_helpers.talkbackPlaceholder | ||
}; | ||
return Curry._1(innerSource, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (state.innerTalkbacks.length === 0) { | ||
return ; | ||
} | ||
state.innerTalkbacks = state.innerTalkbacks.filter(function (x) { | ||
return x !== talkback.contents; | ||
}); | ||
var exhausted = state.innerTalkbacks.length === 0; | ||
if (state.ended && exhausted) { | ||
return sink(/* End */0); | ||
} else if (!state.outerPulled && exhausted) { | ||
state.outerPulled = true; | ||
return state.outerTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
} else { | ||
return ; | ||
} | ||
} else if (signal.tag) { | ||
if (!state.ended) { | ||
state.outerPulled = false; | ||
applyInnerSource(f(signal[0])); | ||
if (!state.outerPulled) { | ||
state.outerPulled = true; | ||
return state.outerTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
if (signal.TAG) { | ||
if (state.innerTalkbacks.length !== 0) { | ||
sink({ | ||
TAG: /* Push */1, | ||
_0: signal._0 | ||
}); | ||
return talkback.contents(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
} else { | ||
return ; | ||
} | ||
var tb = signal._0; | ||
talkback.contents = tb; | ||
state.innerTalkbacks = state.innerTalkbacks.concat(tb); | ||
return tb(/* Pull */0); | ||
})); | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
if (state.innerTalkbacks.length === 0) { | ||
return sink(/* End */0); | ||
} else { | ||
state.outerTalkback = signal[0]; | ||
return ; | ||
} | ||
})); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.outerTalkback(signal); | ||
} | ||
state.innerTalkbacks.forEach((function (tb) { | ||
return tb(signal); | ||
})); | ||
state.innerTalkbacks = new Array(); | ||
return ; | ||
} else { | ||
if (!state.outerPulled && !state.ended) { | ||
state.outerPulled = true; | ||
state.outerTalkback(/* Pull */0); | ||
} else { | ||
state.outerPulled = false; | ||
} | ||
state.innerTalkbacks.forEach((function (tb) { | ||
return tb(/* Pull */0); | ||
})); | ||
return ; | ||
} | ||
})])); | ||
}); | ||
}); | ||
} else { | ||
return ; | ||
} | ||
} else if (signal.TAG) { | ||
if (!state.ended) { | ||
state.outerPulled = false; | ||
applyInnerSource(f(signal._0)); | ||
if (!state.outerPulled) { | ||
state.outerPulled = true; | ||
return state.outerTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
state.outerTalkback = signal._0; | ||
return ; | ||
} | ||
})); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.outerTalkback(signal); | ||
} | ||
state.innerTalkbacks.forEach(function (tb) { | ||
return tb(signal); | ||
}); | ||
state.innerTalkbacks = new Array(); | ||
} else { | ||
if (!state.outerPulled && !state.ended) { | ||
state.outerPulled = true; | ||
state.outerTalkback(/* Pull */0); | ||
} else { | ||
state.outerPulled = false; | ||
} | ||
state.innerTalkbacks.forEach(function (tb) { | ||
return tb(/* Pull */0); | ||
}); | ||
} | ||
}) | ||
}); | ||
}; | ||
}; | ||
} | ||
function merge(sources) { | ||
return mergeMap((function (x) { | ||
return x; | ||
}))(Wonka_sources.fromArray(sources)); | ||
return mergeMap(function (x) { | ||
return x; | ||
})(Wonka_sources.fromArray(sources)); | ||
} | ||
function mergeAll(source) { | ||
return mergeMap((function (x) { | ||
return x; | ||
}))(source); | ||
return mergeMap(function (x) { | ||
return x; | ||
})(source); | ||
} | ||
function onEnd(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var ended = { | ||
contents: false | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!ended.contents) { | ||
ended.contents = true; | ||
sink(signal); | ||
return f(); | ||
} else { | ||
return ; | ||
} | ||
} | ||
if (signal.tag) { | ||
if (!ended.contents) { | ||
return sink(signal); | ||
} else { | ||
return ; | ||
} | ||
} | ||
var talkback = signal[0]; | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (!ended.contents) { | ||
if (signal) { | ||
ended.contents = true; | ||
talkback(signal); | ||
return f(); | ||
} else { | ||
return talkback(signal); | ||
} | ||
} | ||
})])); | ||
})); | ||
}); | ||
}); | ||
return function (source) { | ||
return function (sink) { | ||
var ended = { | ||
contents: false | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!ended.contents) { | ||
ended.contents = true; | ||
sink(signal); | ||
return f(); | ||
} else { | ||
return ; | ||
} | ||
} | ||
if (signal.TAG) { | ||
if (!ended.contents) { | ||
return sink(signal); | ||
} else { | ||
return ; | ||
} | ||
} | ||
var talkback = signal._0; | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (!ended.contents) { | ||
if (signal) { | ||
ended.contents = true; | ||
talkback(signal); | ||
return f(); | ||
} else { | ||
return talkback(signal); | ||
} | ||
} | ||
}) | ||
}); | ||
})); | ||
}; | ||
}; | ||
} | ||
function onPush(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var ended = { | ||
contents: false | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!ended.contents) { | ||
ended.contents = true; | ||
sink(signal); | ||
} | ||
} else if (signal.tag) { | ||
if (!ended.contents) { | ||
f(signal[0]); | ||
sink(signal); | ||
} | ||
} else { | ||
var talkback = signal[0]; | ||
sink(/* Start */Block.__(0, [(function (signal) { | ||
if (!ended.contents) { | ||
if (signal) { | ||
ended.contents = true; | ||
return talkback(signal); | ||
} else { | ||
return talkback(signal); | ||
} | ||
} | ||
})])); | ||
} | ||
})); | ||
}); | ||
}); | ||
return function (source) { | ||
return function (sink) { | ||
var ended = { | ||
contents: false | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!ended.contents) { | ||
ended.contents = true; | ||
sink(signal); | ||
} | ||
} else if (signal.TAG) { | ||
if (!ended.contents) { | ||
f(signal._0); | ||
sink(signal); | ||
} | ||
} else { | ||
var talkback = signal._0; | ||
sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (!ended.contents) { | ||
if (signal) { | ||
ended.contents = true; | ||
return talkback(signal); | ||
} else { | ||
return talkback(signal); | ||
} | ||
} | ||
}) | ||
}); | ||
} | ||
})); | ||
}; | ||
}; | ||
} | ||
function onStart(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
return sink(signal); | ||
} | ||
if (signal.tag) { | ||
return sink(signal); | ||
} | ||
sink(signal); | ||
return f(); | ||
})); | ||
}); | ||
}); | ||
} | ||
function sample(notifier) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
sourceTalkback: Wonka_helpers.talkbackPlaceholder, | ||
notifierTalkback: Wonka_helpers.talkbackPlaceholder, | ||
value: undefined, | ||
pulled: false, | ||
ended: false | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.notifierTalkback(/* Close */1); | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
return function (source) { | ||
return function (sink) { | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
return sink(signal); | ||
} | ||
} | ||
if (!signal.tag) { | ||
state.sourceTalkback = signal[0]; | ||
return ; | ||
} | ||
state.value = Caml_option.some(signal[0]); | ||
if (state.pulled) { | ||
state.pulled = false; | ||
return ; | ||
} else { | ||
state.pulled = true; | ||
state.notifierTalkback(/* Pull */0); | ||
return state.sourceTalkback(/* Pull */0); | ||
} | ||
})); | ||
Curry._1(notifier, (function (signal) { | ||
var match = state.value; | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
if (signal.TAG) { | ||
return sink(signal); | ||
} | ||
} else if (signal.tag) { | ||
if (match !== undefined && !state.ended) { | ||
state.value = undefined; | ||
return sink(/* Push */Block.__(1, [Caml_option.valFromOption(match)])); | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
state.notifierTalkback = signal[0]; | ||
return ; | ||
} | ||
})); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
return state.notifierTalkback(/* Close */1); | ||
} else if (!state.pulled) { | ||
state.pulled = true; | ||
state.sourceTalkback(/* Pull */0); | ||
return state.notifierTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
})])); | ||
}); | ||
}); | ||
sink(signal); | ||
return f(); | ||
})); | ||
}; | ||
}; | ||
} | ||
function scan(f, seed) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var acc = { | ||
contents: seed | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
var tmp; | ||
if (typeof signal === "number") { | ||
tmp = /* End */0; | ||
} else if (signal.tag) { | ||
acc.contents = f(acc.contents, signal[0]); | ||
tmp = /* Push */Block.__(1, [acc.contents]); | ||
function sample(notifier) { | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
sourceTalkback: Wonka_helpers.talkbackPlaceholder, | ||
notifierTalkback: Wonka_helpers.talkbackPlaceholder, | ||
value: undefined, | ||
pulled: false, | ||
ended: false | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.notifierTalkback(/* Close */1); | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
if (!signal.TAG) { | ||
state.sourceTalkback = signal._0; | ||
return ; | ||
} | ||
state.value = Caml_option.some(signal._0); | ||
if (state.pulled) { | ||
state.pulled = false; | ||
return ; | ||
} else { | ||
state.pulled = true; | ||
state.notifierTalkback(/* Pull */0); | ||
return state.sourceTalkback(/* Pull */0); | ||
} | ||
})); | ||
Curry._1(notifier, (function (signal) { | ||
var match = state.value; | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
} else if (signal.TAG) { | ||
if (match !== undefined && !state.ended) { | ||
state.value = undefined; | ||
return sink({ | ||
TAG: /* Push */1, | ||
_0: Caml_option.valFromOption(match) | ||
}); | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
state.notifierTalkback = signal._0; | ||
return ; | ||
} | ||
})); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
return state.notifierTalkback(/* Close */1); | ||
} else if (!state.pulled) { | ||
state.pulled = true; | ||
state.sourceTalkback(/* Pull */0); | ||
return state.notifierTalkback(/* Pull */0); | ||
} else { | ||
tmp = /* Start */Block.__(0, [signal[0]]); | ||
return ; | ||
} | ||
return sink(tmp); | ||
})); | ||
}); | ||
}); | ||
} | ||
}) | ||
}); | ||
}; | ||
}; | ||
} | ||
function scan(f, seed) { | ||
return function (source) { | ||
return function (sink) { | ||
var acc = { | ||
contents: seed | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
var tmp; | ||
if (typeof signal === "number") { | ||
tmp = /* End */0; | ||
} else if (signal.TAG) { | ||
acc.contents = f(acc.contents, signal._0); | ||
tmp = { | ||
TAG: /* Push */1, | ||
_0: acc.contents | ||
}; | ||
} else { | ||
tmp = { | ||
TAG: /* Start */0, | ||
_0: signal._0 | ||
}; | ||
} | ||
return sink(tmp); | ||
})); | ||
}; | ||
}; | ||
} | ||
function share(source) { | ||
@@ -672,469 +724,484 @@ var state = { | ||
}; | ||
return (function (sink) { | ||
state.sinks = state.sinks.concat(sink); | ||
if (state.sinks.length === 1) { | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
state.sinks.forEach((function (sink) { | ||
return sink(/* End */0); | ||
})); | ||
state.sinks = new Array(); | ||
return ; | ||
return function (sink) { | ||
state.sinks = state.sinks.concat(sink); | ||
if (state.sinks.length === 1) { | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
state.sinks.forEach(function (sink) { | ||
return sink(/* End */0); | ||
}); | ||
state.sinks = new Array(); | ||
return ; | ||
} | ||
if (!signal.TAG) { | ||
state.talkback = signal._0; | ||
return ; | ||
} | ||
state.gotSignal = false; | ||
state.sinks.forEach(function (sink) { | ||
return sink(signal); | ||
}); | ||
})); | ||
} | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
state.sinks = state.sinks.filter(function (x) { | ||
return x !== sink; | ||
}); | ||
if (state.sinks.length === 0) { | ||
return state.talkback(/* Close */1); | ||
} else { | ||
return ; | ||
} | ||
} else if (!state.gotSignal) { | ||
state.gotSignal = true; | ||
return state.talkback(signal); | ||
} else { | ||
return ; | ||
} | ||
}) | ||
}); | ||
}; | ||
} | ||
function skip(wait) { | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
talkback: Wonka_helpers.talkbackPlaceholder, | ||
rest: wait | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
return sink(signal); | ||
} | ||
if (signal.TAG) { | ||
if (state.rest > 0) { | ||
state.rest = state.rest - 1 | 0; | ||
return state.talkback(/* Pull */0); | ||
} else { | ||
return sink(signal); | ||
} | ||
} | ||
state.talkback = signal._0; | ||
return sink(signal); | ||
})); | ||
}; | ||
}; | ||
} | ||
function skipUntil(notifier) { | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
sourceTalkback: Wonka_helpers.talkbackPlaceholder, | ||
notifierTalkback: Wonka_helpers.talkbackPlaceholder, | ||
skip: true, | ||
pulled: false, | ||
ended: false | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (state.skip) { | ||
state.notifierTalkback(/* Close */1); | ||
} | ||
if (!signal.tag) { | ||
state.talkback = signal[0]; | ||
return ; | ||
state.ended = true; | ||
sink(/* End */0); | ||
} else if (signal.TAG) { | ||
if (!state.skip && !state.ended) { | ||
state.pulled = false; | ||
sink(signal); | ||
} else if (state.pulled) { | ||
state.pulled = false; | ||
} else { | ||
state.pulled = true; | ||
state.sourceTalkback(/* Pull */0); | ||
state.notifierTalkback(/* Pull */0); | ||
} | ||
state.gotSignal = false; | ||
state.sinks.forEach((function (sink) { | ||
return sink(signal); | ||
} else { | ||
state.sourceTalkback = signal._0; | ||
Curry._1(notifier, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (state.skip) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
} | ||
} else if (signal.TAG) { | ||
state.skip = false; | ||
state.notifierTalkback(/* Close */1); | ||
} else { | ||
var innerTb = signal._0; | ||
state.notifierTalkback = innerTb; | ||
innerTb(/* Pull */0); | ||
} | ||
})); | ||
})); | ||
} | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
} | ||
})); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.sinks = state.sinks.filter((function (x) { | ||
return x !== sink; | ||
})); | ||
if (state.sinks.length === 0) { | ||
return state.talkback(/* Close */1); | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
if (state.skip) { | ||
return state.notifierTalkback(/* Close */1); | ||
} else { | ||
return ; | ||
} | ||
} else if (!state.gotSignal) { | ||
state.gotSignal = true; | ||
return state.talkback(signal); | ||
} else if (!state.pulled) { | ||
state.pulled = true; | ||
if (state.skip) { | ||
state.notifierTalkback(/* Pull */0); | ||
} | ||
return state.sourceTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
})])); | ||
}); | ||
} | ||
}) | ||
}); | ||
}; | ||
}; | ||
} | ||
function skip(wait) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
talkback: Wonka_helpers.talkbackPlaceholder, | ||
rest: wait | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
function skipWhile(f) { | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
talkback: Wonka_helpers.talkbackPlaceholder, | ||
skip: true | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
return sink(signal); | ||
} | ||
if (signal.TAG) { | ||
if (state.skip) { | ||
if (f(signal._0)) { | ||
return state.talkback(/* Pull */0); | ||
} else { | ||
state.skip = false; | ||
return sink(signal); | ||
} | ||
if (signal.tag) { | ||
if (state.rest > 0) { | ||
state.rest = state.rest - 1 | 0; | ||
return state.talkback(/* Pull */0); | ||
} else { | ||
return sink(signal); | ||
} | ||
} | ||
state.talkback = signal[0]; | ||
} else { | ||
return sink(signal); | ||
})); | ||
}); | ||
}); | ||
} | ||
} | ||
state.talkback = signal._0; | ||
return sink(signal); | ||
})); | ||
}; | ||
}; | ||
} | ||
function skipUntil(notifier) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
sourceTalkback: Wonka_helpers.talkbackPlaceholder, | ||
notifierTalkback: Wonka_helpers.talkbackPlaceholder, | ||
skip: true, | ||
pulled: false, | ||
ended: false | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (state.skip) { | ||
state.notifierTalkback(/* Close */1); | ||
} | ||
state.ended = true; | ||
function switchMap(f) { | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
outerTalkback: Wonka_helpers.talkbackPlaceholder, | ||
outerPulled: false, | ||
innerTalkback: Wonka_helpers.talkbackPlaceholder, | ||
innerActive: false, | ||
innerPulled: false, | ||
ended: false | ||
}; | ||
var applyInnerSource = function (innerSource) { | ||
state.innerActive = true; | ||
Curry._1(innerSource, (function (signal) { | ||
if (!state.innerActive) { | ||
return ; | ||
} | ||
if (typeof signal === "number") { | ||
state.innerActive = false; | ||
if (state.ended) { | ||
return sink(signal); | ||
} else if (!state.outerPulled) { | ||
state.outerPulled = true; | ||
return state.outerTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
if (signal.TAG) { | ||
sink(signal); | ||
if (state.innerPulled) { | ||
state.innerPulled = false; | ||
return ; | ||
} else { | ||
return state.innerTalkback(/* Pull */0); | ||
} | ||
} | ||
var tb = signal._0; | ||
state.innerTalkback = tb; | ||
state.innerPulled = false; | ||
return tb(/* Pull */0); | ||
})); | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
if (!state.innerActive) { | ||
sink(/* End */0); | ||
} else if (signal.tag) { | ||
if (!state.skip && !state.ended) { | ||
state.pulled = false; | ||
sink(signal); | ||
} else if (state.pulled) { | ||
state.pulled = false; | ||
} else { | ||
state.pulled = true; | ||
state.sourceTalkback(/* Pull */0); | ||
state.notifierTalkback(/* Pull */0); | ||
} | ||
} | ||
} | ||
} else if (signal.TAG) { | ||
if (!state.ended) { | ||
if (state.innerActive) { | ||
state.innerTalkback(/* Close */1); | ||
state.innerTalkback = Wonka_helpers.talkbackPlaceholder; | ||
} | ||
if (state.outerPulled) { | ||
state.outerPulled = false; | ||
} else { | ||
state.sourceTalkback = signal[0]; | ||
Curry._1(notifier, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (state.skip) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
} | ||
} else if (signal.tag) { | ||
state.skip = false; | ||
state.notifierTalkback(/* Close */1); | ||
} else { | ||
var innerTb = signal[0]; | ||
state.notifierTalkback = innerTb; | ||
innerTb(/* Pull */0); | ||
} | ||
})); | ||
state.outerPulled = true; | ||
state.outerTalkback(/* Pull */0); | ||
} | ||
})); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
if (state.skip) { | ||
return state.notifierTalkback(/* Close */1); | ||
} else { | ||
return ; | ||
} | ||
} else if (!state.pulled) { | ||
state.pulled = true; | ||
if (state.skip) { | ||
state.notifierTalkback(/* Pull */0); | ||
} | ||
return state.sourceTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
})])); | ||
}); | ||
}); | ||
} | ||
function skipWhile(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
talkback: Wonka_helpers.talkbackPlaceholder, | ||
skip: true | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
return sink(signal); | ||
applyInnerSource(f(signal._0)); | ||
} | ||
} else { | ||
state.outerTalkback = signal._0; | ||
} | ||
})); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.outerTalkback(/* Close */1); | ||
} | ||
if (signal.tag) { | ||
if (state.skip) { | ||
if (f(signal[0])) { | ||
return state.talkback(/* Pull */0); | ||
} else { | ||
state.skip = false; | ||
return sink(signal); | ||
} | ||
} else { | ||
return sink(signal); | ||
} | ||
if (state.innerActive) { | ||
state.innerActive = false; | ||
return state.innerTalkback(/* Close */1); | ||
} else { | ||
return ; | ||
} | ||
state.talkback = signal[0]; | ||
return sink(signal); | ||
})); | ||
}); | ||
}); | ||
} | ||
function switchMap(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
outerTalkback: Wonka_helpers.talkbackPlaceholder, | ||
outerPulled: false, | ||
innerTalkback: Wonka_helpers.talkbackPlaceholder, | ||
innerActive: false, | ||
innerPulled: false, | ||
ended: false | ||
}; | ||
var applyInnerSource = function (innerSource) { | ||
state.innerActive = true; | ||
Curry._1(innerSource, (function (signal) { | ||
if (!state.innerActive) { | ||
return ; | ||
} | ||
if (typeof signal === "number") { | ||
state.innerActive = false; | ||
if (state.ended) { | ||
return sink(signal); | ||
} else if (!state.outerPulled) { | ||
state.outerPulled = true; | ||
return state.outerTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
if (!state.ended && !state.outerPulled) { | ||
state.outerPulled = true; | ||
state.outerTalkback(/* Pull */0); | ||
} | ||
if (state.innerActive && !state.innerPulled) { | ||
state.innerPulled = true; | ||
return state.innerTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
} | ||
if (signal.tag) { | ||
sink(signal); | ||
if (state.innerPulled) { | ||
state.innerPulled = false; | ||
return ; | ||
} else { | ||
return state.innerTalkback(/* Pull */0); | ||
} | ||
} | ||
var tb = signal[0]; | ||
state.innerTalkback = tb; | ||
state.innerPulled = false; | ||
return tb(/* Pull */0); | ||
})); | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
if (!state.innerActive) { | ||
sink(/* End */0); | ||
} | ||
} | ||
} else if (signal.tag) { | ||
if (!state.ended) { | ||
if (state.innerActive) { | ||
state.innerTalkback(/* Close */1); | ||
state.innerTalkback = Wonka_helpers.talkbackPlaceholder; | ||
} | ||
if (state.outerPulled) { | ||
state.outerPulled = false; | ||
} else { | ||
state.outerPulled = true; | ||
state.outerTalkback(/* Pull */0); | ||
} | ||
applyInnerSource(f(signal[0])); | ||
} | ||
} else { | ||
state.outerTalkback = signal[0]; | ||
} | ||
})); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.outerTalkback(/* Close */1); | ||
} | ||
if (state.innerActive) { | ||
state.innerActive = false; | ||
return state.innerTalkback(/* Close */1); | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
if (!state.ended && !state.outerPulled) { | ||
state.outerPulled = true; | ||
state.outerTalkback(/* Pull */0); | ||
} | ||
if (state.innerActive && !state.innerPulled) { | ||
state.innerPulled = true; | ||
return state.innerTalkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
})])); | ||
}); | ||
}); | ||
}) | ||
}); | ||
}; | ||
}; | ||
} | ||
function switchAll(source) { | ||
return switchMap((function (x) { | ||
return x; | ||
}))(source); | ||
return switchMap(function (x) { | ||
return x; | ||
})(source); | ||
} | ||
function take(max) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
ended: false, | ||
taken: 0, | ||
talkback: Wonka_helpers.talkbackPlaceholder | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
if (signal.tag) { | ||
if (state.taken < max && !state.ended) { | ||
state.taken = state.taken + 1 | 0; | ||
sink(signal); | ||
if (!state.ended && state.taken >= max) { | ||
state.ended = true; | ||
sink(/* End */0); | ||
return state.talkback(/* Close */1); | ||
} else { | ||
return ; | ||
} | ||
} else { | ||
return ; | ||
} | ||
} | ||
var tb = signal[0]; | ||
if (max <= 0) { | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
ended: false, | ||
taken: 0, | ||
talkback: Wonka_helpers.talkbackPlaceholder | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
if (signal.TAG) { | ||
if (state.taken < max && !state.ended) { | ||
state.taken = state.taken + 1 | 0; | ||
sink(signal); | ||
if (!state.ended && state.taken >= max) { | ||
state.ended = true; | ||
sink(/* End */0); | ||
return tb(/* Close */1); | ||
return state.talkback(/* Close */1); | ||
} else { | ||
state.talkback = tb; | ||
return ; | ||
} | ||
})); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
return state.talkback(/* Close */1); | ||
} else if (state.taken < max) { | ||
return state.talkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
})])); | ||
}); | ||
}); | ||
} | ||
function takeLast(max) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
queue: new Array(), | ||
talkback: Wonka_helpers.talkbackPlaceholder | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
Wonka_sources.fromArray(state.queue)(sink); | ||
} else if (signal.tag) { | ||
var size = state.queue.length; | ||
if (size >= max && max > 0) { | ||
state.queue.shift(); | ||
} | ||
state.queue.push(signal[0]); | ||
state.talkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
var tb = signal._0; | ||
if (max <= 0) { | ||
state.ended = true; | ||
sink(/* End */0); | ||
return tb(/* Close */1); | ||
} else { | ||
state.talkback = tb; | ||
return ; | ||
} | ||
})); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
return state.talkback(/* Close */1); | ||
} else if (state.taken < max) { | ||
return state.talkback(/* Pull */0); | ||
} else { | ||
var talkback = signal[0]; | ||
if (max <= 0) { | ||
talkback(/* Close */1); | ||
Wonka_sources.empty(sink); | ||
} else { | ||
state.talkback = talkback; | ||
talkback(/* Pull */0); | ||
} | ||
return ; | ||
} | ||
})); | ||
}); | ||
}); | ||
} | ||
}) | ||
}); | ||
}; | ||
}; | ||
} | ||
function takeUntil(notifier) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
ended: false, | ||
sourceTalkback: Wonka_helpers.talkbackPlaceholder, | ||
notifierTalkback: Wonka_helpers.talkbackPlaceholder | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.notifierTalkback(/* Close */1); | ||
sink(/* End */0); | ||
function takeLast(max) { | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
queue: new Array(), | ||
talkback: Wonka_helpers.talkbackPlaceholder | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
Wonka_sources.fromArray(state.queue)(sink); | ||
} else if (signal.TAG) { | ||
var size = state.queue.length; | ||
if (size >= max && max > 0) { | ||
state.queue.shift(); | ||
} | ||
state.queue.push(signal._0); | ||
state.talkback(/* Pull */0); | ||
} else { | ||
var talkback = signal._0; | ||
if (max <= 0) { | ||
talkback(/* Close */1); | ||
Wonka_sources.empty(sink); | ||
} else { | ||
state.talkback = talkback; | ||
talkback(/* Pull */0); | ||
} | ||
} | ||
} else if (signal.tag) { | ||
if (!state.ended) { | ||
sink(signal); | ||
} | ||
} else { | ||
state.sourceTalkback = signal[0]; | ||
Curry._1(notifier, (function (signal) { | ||
if (typeof signal !== "number") { | ||
if (signal.tag) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
sink(/* End */0); | ||
} else { | ||
var innerTb = signal[0]; | ||
state.notifierTalkback = innerTb; | ||
innerTb(/* Pull */0); | ||
} | ||
} | ||
})); | ||
} | ||
})); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
return state.notifierTalkback(/* Close */1); | ||
} else { | ||
return state.sourceTalkback(/* Pull */0); | ||
} | ||
} | ||
})])); | ||
}); | ||
}); | ||
})); | ||
}; | ||
}; | ||
} | ||
function takeWhile(f) { | ||
return (function (source) { | ||
return (function (sink) { | ||
var state = { | ||
talkback: Wonka_helpers.talkbackPlaceholder, | ||
ended: false | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
function takeUntil(notifier) { | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
ended: false, | ||
sourceTalkback: Wonka_helpers.talkbackPlaceholder, | ||
notifierTalkback: Wonka_helpers.talkbackPlaceholder | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
state.notifierTalkback(/* Close */1); | ||
sink(/* End */0); | ||
} | ||
} else if (signal.TAG) { | ||
if (!state.ended) { | ||
sink(signal); | ||
} | ||
} else { | ||
state.sourceTalkback = signal._0; | ||
Curry._1(notifier, (function (signal) { | ||
if (typeof signal !== "number") { | ||
if (signal.TAG) { | ||
state.ended = true; | ||
return sink(/* End */0); | ||
state.sourceTalkback(/* Close */1); | ||
sink(/* End */0); | ||
} else { | ||
return ; | ||
var innerTb = signal._0; | ||
state.notifierTalkback = innerTb; | ||
innerTb(/* Pull */0); | ||
} | ||
} | ||
if (signal.tag) { | ||
if (!state.ended) { | ||
if (f(signal[0])) { | ||
return sink(signal); | ||
} else { | ||
state.ended = true; | ||
sink(/* End */0); | ||
return state.talkback(/* Close */1); | ||
} | ||
} else { | ||
return ; | ||
} | ||
})); | ||
} | ||
})); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (!state.ended) { | ||
if (signal) { | ||
state.ended = true; | ||
state.sourceTalkback(/* Close */1); | ||
return state.notifierTalkback(/* Close */1); | ||
} else { | ||
return state.sourceTalkback(/* Pull */0); | ||
} | ||
state.talkback = signal[0]; | ||
return sink(signal); | ||
})); | ||
}); | ||
}); | ||
} | ||
}) | ||
}); | ||
}; | ||
}; | ||
} | ||
function takeWhile(f) { | ||
return function (source) { | ||
return function (sink) { | ||
var state = { | ||
talkback: Wonka_helpers.talkbackPlaceholder, | ||
ended: false | ||
}; | ||
return Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
if (!state.ended) { | ||
state.ended = true; | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
} | ||
if (signal.TAG) { | ||
if (!state.ended) { | ||
if (f(signal._0)) { | ||
return sink(signal); | ||
} else { | ||
state.ended = true; | ||
sink(/* End */0); | ||
return state.talkback(/* Close */1); | ||
} | ||
} else { | ||
return ; | ||
} | ||
} | ||
state.talkback = signal._0; | ||
return sink(signal); | ||
})); | ||
}; | ||
}; | ||
} | ||
var flatten = mergeAll; | ||
@@ -1141,0 +1208,0 @@ |
@@ -7,47 +7,47 @@ | ||
function subscribe(f) { | ||
return (function (source) { | ||
var state = { | ||
talkback: Wonka_helpers.talkbackPlaceholder, | ||
ended: false | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
state.ended = true; | ||
return function (source) { | ||
var state = { | ||
talkback: Wonka_helpers.talkbackPlaceholder, | ||
ended: false | ||
}; | ||
Curry._1(source, (function (signal) { | ||
if (typeof signal === "number") { | ||
state.ended = true; | ||
return ; | ||
} | ||
if (signal.TAG) { | ||
if (!state.ended) { | ||
f(signal._0); | ||
return state.talkback(/* Pull */0); | ||
} else { | ||
return ; | ||
} | ||
if (signal.tag) { | ||
} | ||
var x = signal._0; | ||
state.talkback = x; | ||
return x(/* Pull */0); | ||
})); | ||
return { | ||
unsubscribe: (function (param) { | ||
if (!state.ended) { | ||
f(signal[0]); | ||
return state.talkback(/* Pull */0); | ||
} else { | ||
return ; | ||
state.ended = true; | ||
return state.talkback(/* Close */1); | ||
} | ||
} | ||
var x = signal[0]; | ||
state.talkback = x; | ||
return x(/* Pull */0); | ||
})); | ||
return { | ||
unsubscribe: (function (param) { | ||
if (!state.ended) { | ||
state.ended = true; | ||
return state.talkback(/* Close */1); | ||
} | ||
}) | ||
}; | ||
}); | ||
}) | ||
}; | ||
}; | ||
} | ||
function forEach(f) { | ||
return (function (source) { | ||
subscribe(f)(source); | ||
}); | ||
return function (source) { | ||
subscribe(f)(source); | ||
}; | ||
} | ||
function publish(source) { | ||
return subscribe((function (param) { | ||
}))(source); | ||
return subscribe(function (param) { | ||
})(source); | ||
} | ||
@@ -67,7 +67,7 @@ | ||
} | ||
if (signal.tag) { | ||
state.values.push(signal[0]); | ||
if (signal.TAG) { | ||
state.values.push(signal._0); | ||
return state.talkback(/* Pull */0); | ||
} | ||
var x = signal[0]; | ||
var x = signal._0; | ||
state.talkback = x; | ||
@@ -74,0 +74,0 @@ return x(/* Pull */0); |
import * as Block from "bs-platform/lib/es6/block.js"; | ||
import * as Wonka_helpers from "./helpers/Wonka_helpers.bs.js"; | ||
function fromArray(arr) { | ||
return (function (sink) { | ||
var size = arr.length; | ||
var state = { | ||
ended: false, | ||
looping: false, | ||
pulled: false, | ||
current: 0 | ||
}; | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
var match = state.looping; | ||
if (signal) { | ||
state.ended = true; | ||
return ; | ||
} | ||
if (match) { | ||
state.pulled = true; | ||
return ; | ||
} | ||
state.pulled = true; | ||
state.looping = true; | ||
while(state.pulled && !state.ended) { | ||
if (state.current < size) { | ||
var x = arr[state.current]; | ||
state.current = state.current + 1 | 0; | ||
state.pulled = false; | ||
sink(/* Push */Block.__(1, [x])); | ||
} else { | ||
state.ended = true; | ||
sink(/* End */0); | ||
} | ||
}; | ||
state.looping = false; | ||
})])); | ||
}); | ||
return function (sink) { | ||
var size = arr.length; | ||
var state = { | ||
ended: false, | ||
looping: false, | ||
pulled: false, | ||
current: 0 | ||
}; | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
var match = state.looping; | ||
if (signal) { | ||
state.ended = true; | ||
return ; | ||
} | ||
if (match) { | ||
state.pulled = true; | ||
return ; | ||
} | ||
state.pulled = true; | ||
state.looping = true; | ||
while(state.pulled && !state.ended) { | ||
if (state.current < size) { | ||
var x = arr[state.current]; | ||
state.current = state.current + 1 | 0; | ||
state.pulled = false; | ||
sink({ | ||
TAG: /* Push */1, | ||
_0: x | ||
}); | ||
} else { | ||
state.ended = true; | ||
sink(/* End */0); | ||
} | ||
}; | ||
state.looping = false; | ||
}) | ||
}); | ||
}; | ||
} | ||
function fromList(ls) { | ||
return (function (sink) { | ||
var state = { | ||
ended: false, | ||
looping: false, | ||
pulled: false, | ||
current: ls | ||
}; | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
var match = state.looping; | ||
if (signal) { | ||
state.ended = true; | ||
return ; | ||
} | ||
if (match) { | ||
state.pulled = true; | ||
return ; | ||
} | ||
state.pulled = true; | ||
state.looping = true; | ||
while(state.pulled && !state.ended) { | ||
var match$1 = state.current; | ||
if (match$1) { | ||
state.current = match$1[1]; | ||
state.pulled = false; | ||
sink(/* Push */Block.__(1, [match$1[0]])); | ||
} else { | ||
state.ended = true; | ||
sink(/* End */0); | ||
} | ||
}; | ||
state.looping = false; | ||
})])); | ||
}); | ||
return function (sink) { | ||
var state = { | ||
ended: false, | ||
looping: false, | ||
pulled: false, | ||
current: ls | ||
}; | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
var match = state.looping; | ||
if (signal) { | ||
state.ended = true; | ||
return ; | ||
} | ||
if (match) { | ||
state.pulled = true; | ||
return ; | ||
} | ||
state.pulled = true; | ||
state.looping = true; | ||
while(state.pulled && !state.ended) { | ||
var match$1 = state.current; | ||
if (match$1) { | ||
state.current = match$1.tl; | ||
state.pulled = false; | ||
sink({ | ||
TAG: /* Push */1, | ||
_0: match$1.hd | ||
}); | ||
} else { | ||
state.ended = true; | ||
sink(/* End */0); | ||
} | ||
}; | ||
state.looping = false; | ||
}) | ||
}); | ||
}; | ||
} | ||
function fromValue(x) { | ||
return (function (sink) { | ||
var ended = { | ||
contents: false | ||
}; | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
ended.contents = true; | ||
return ; | ||
} else if (!ended.contents) { | ||
ended.contents = true; | ||
sink(/* Push */Block.__(1, [x])); | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
})])); | ||
}); | ||
return function (sink) { | ||
var ended = { | ||
contents: false | ||
}; | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
ended.contents = true; | ||
return ; | ||
} else if (!ended.contents) { | ||
ended.contents = true; | ||
sink({ | ||
TAG: /* Push */1, | ||
_0: x | ||
}); | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
}) | ||
}); | ||
}; | ||
} | ||
function make(f) { | ||
return (function (sink) { | ||
var state = { | ||
teardown: (function () { | ||
}), | ||
ended: false | ||
}; | ||
state.teardown = f({ | ||
next: (function (value) { | ||
if (!state.ended) { | ||
return sink(/* Push */Block.__(1, [value])); | ||
} | ||
}), | ||
complete: (function (param) { | ||
if (!state.ended) { | ||
state.ended = true; | ||
return sink(/* End */0); | ||
} | ||
}) | ||
}); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal && !state.ended) { | ||
state.ended = true; | ||
return state.teardown(); | ||
} | ||
})])); | ||
}); | ||
return function (sink) { | ||
var state = { | ||
teardown: (function () { | ||
}), | ||
ended: false | ||
}; | ||
state.teardown = f({ | ||
next: (function (value) { | ||
if (!state.ended) { | ||
return sink({ | ||
TAG: /* Push */1, | ||
_0: value | ||
}); | ||
} | ||
}), | ||
complete: (function (param) { | ||
if (!state.ended) { | ||
state.ended = true; | ||
return sink(/* End */0); | ||
} | ||
}) | ||
}); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal && !state.ended) { | ||
state.ended = true; | ||
return state.teardown(); | ||
} | ||
}) | ||
}); | ||
}; | ||
} | ||
@@ -141,17 +164,23 @@ | ||
state.sinks = state.sinks.concat(sink); | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
state.sinks = state.sinks.filter((function (x) { | ||
return x !== sink; | ||
})); | ||
return ; | ||
} | ||
})])); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
state.sinks = state.sinks.filter(function (x) { | ||
return x !== sink; | ||
}); | ||
return ; | ||
} | ||
}) | ||
}); | ||
}; | ||
var next = function (value) { | ||
if (!state.ended) { | ||
state.sinks.forEach((function (sink) { | ||
return sink(/* Push */Block.__(1, [value])); | ||
})); | ||
state.sinks.forEach(function (sink) { | ||
return sink({ | ||
TAG: /* Push */1, | ||
_0: value | ||
}); | ||
}); | ||
return ; | ||
@@ -164,5 +193,5 @@ } | ||
state.ended = true; | ||
state.sinks.forEach((function (sink) { | ||
return sink(/* End */0); | ||
})); | ||
state.sinks.forEach(function (sink) { | ||
return sink(/* End */0); | ||
}); | ||
return ; | ||
@@ -183,16 +212,22 @@ } | ||
}; | ||
return sink(/* Start */Block.__(0, [(function (signal) { | ||
if (signal) { | ||
ended.contents = true; | ||
return ; | ||
} else if (!ended.contents) { | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
})])); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: (function (signal) { | ||
if (signal) { | ||
ended.contents = true; | ||
return ; | ||
} else if (!ended.contents) { | ||
return sink(/* End */0); | ||
} else { | ||
return ; | ||
} | ||
}) | ||
}); | ||
} | ||
function never(sink) { | ||
return sink(/* Start */Block.__(0, [Wonka_helpers.talkbackPlaceholder])); | ||
return sink({ | ||
TAG: /* Start */0, | ||
_0: Wonka_helpers.talkbackPlaceholder | ||
}); | ||
} | ||
@@ -199,0 +234,0 @@ |
@@ -122,5 +122,5 @@ import * as deriving from './helpers/Wonka_deriving'; | ||
describe('fromList', () => { | ||
passesTrampoline(sources.fromList([1, [2]] as any)); | ||
passesColdPull(sources.fromList([0] as any)); | ||
passesActiveClose(sources.fromList([0] as any)); | ||
passesTrampoline(sources.fromList({hd: 1, tl: { hd: 2, tl: 0 } } as any)); | ||
passesColdPull(sources.fromList({ hd: 0, tl: 0 } as any)); | ||
passesActiveClose(sources.fromList({ hd: 1, tl: 0 } as any)); | ||
}); | ||
@@ -127,0 +127,0 @@ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
7792
2.88%403116
-0.72%1
Infinity%