sygnal 2.6.9 → 2.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +72 -21
- package/dist/index.esm.js +72 -21
- package/dist/sygnal.min.js +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -3210,6 +3210,7 @@ class Component {
|
|
|
3210
3210
|
// DOMSourceName
|
|
3211
3211
|
// stateSourceName
|
|
3212
3212
|
// requestSourceName
|
|
3213
|
+
// debug
|
|
3213
3214
|
|
|
3214
3215
|
// [ PRIVATE / CALCULATED VALUES ]
|
|
3215
3216
|
// sourceNames
|
|
@@ -3223,6 +3224,7 @@ class Component {
|
|
|
3223
3224
|
// subComponentSink$
|
|
3224
3225
|
// unmountRequest$
|
|
3225
3226
|
// unmount()
|
|
3227
|
+
// stateCache
|
|
3226
3228
|
|
|
3227
3229
|
// [ INSTANTIATED STREAM OPERATOR ]
|
|
3228
3230
|
// log
|
|
@@ -3230,7 +3232,7 @@ class Component {
|
|
|
3230
3232
|
// [ OUTPUT ]
|
|
3231
3233
|
// sinks
|
|
3232
3234
|
|
|
3233
|
-
constructor({ name='NO NAME', sources, intent, request, model, response, view, children={}, components={}, initialState, calculated, storeCalculatedInState=true, DOMSourceName='DOM', stateSourceName='STATE', requestSourceName='HTTP' }) {
|
|
3235
|
+
constructor({ name='NO NAME', sources, intent, request, model, response, view, children={}, components={}, initialState, calculated, storeCalculatedInState=true, DOMSourceName='DOM', stateSourceName='STATE', requestSourceName='HTTP', debug=false }) {
|
|
3234
3236
|
if (!sources || typeof sources != 'object') throw new Error('Missing or invalid sources')
|
|
3235
3237
|
|
|
3236
3238
|
this.name = name;
|
|
@@ -3249,6 +3251,7 @@ class Component {
|
|
|
3249
3251
|
this.stateSourceName = stateSourceName;
|
|
3250
3252
|
this.requestSourceName = requestSourceName;
|
|
3251
3253
|
this.sourceNames = Object.keys(sources);
|
|
3254
|
+
this._debug = debug;
|
|
3252
3255
|
|
|
3253
3256
|
this.isSubComponent = this.sourceNames.includes('props$');
|
|
3254
3257
|
|
|
@@ -3272,6 +3275,7 @@ class Component {
|
|
|
3272
3275
|
};
|
|
3273
3276
|
}
|
|
3274
3277
|
|
|
3278
|
+
this.addCalculated = this.createMemoizedAddCalculated();
|
|
3275
3279
|
this.log = makeLog(name);
|
|
3276
3280
|
|
|
3277
3281
|
this.initIntent$();
|
|
@@ -3288,11 +3292,15 @@ class Component {
|
|
|
3288
3292
|
|
|
3289
3293
|
this.sinks.__index = COMPONENT_COUNT++;
|
|
3290
3294
|
|
|
3291
|
-
if (
|
|
3295
|
+
if (debug) {
|
|
3292
3296
|
console.log(`[${ this.name }] Instantiated (#${ this.sinks.__index })`);
|
|
3293
3297
|
}
|
|
3294
3298
|
}
|
|
3295
3299
|
|
|
3300
|
+
get debug() {
|
|
3301
|
+
return this._debug || (ENVIRONMENT.DEBUG === 'true' || ENVIRONMENT.DEBUG === true)
|
|
3302
|
+
}
|
|
3303
|
+
|
|
3296
3304
|
initIntent$() {
|
|
3297
3305
|
if (!this.intent) {
|
|
3298
3306
|
return
|
|
@@ -3390,7 +3398,7 @@ class Component {
|
|
|
3390
3398
|
|
|
3391
3399
|
console.log(`${ timestamp } ${ ip } ${ req.method } ${ req.url }`);
|
|
3392
3400
|
|
|
3393
|
-
if (
|
|
3401
|
+
if (this.debug) {
|
|
3394
3402
|
this.action$.setDebugListener({next: ({ type }) => console.log(`[${ this.name }] Action from ${ this.requestSourceName } request: <${ type }>`)});
|
|
3395
3403
|
}
|
|
3396
3404
|
|
|
@@ -3696,20 +3704,39 @@ class Component {
|
|
|
3696
3704
|
}
|
|
3697
3705
|
}
|
|
3698
3706
|
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
|
|
3702
|
-
|
|
3703
|
-
|
|
3704
|
-
if (typeof
|
|
3705
|
-
|
|
3706
|
-
|
|
3707
|
-
} catch(e) {
|
|
3708
|
-
console.warn(`Calculated field '${ field }' threw an error during calculation: ${ e.message }`);
|
|
3707
|
+
createMemoizedAddCalculated() {
|
|
3708
|
+
let lastState;
|
|
3709
|
+
let lastResult;
|
|
3710
|
+
|
|
3711
|
+
return function(state) {
|
|
3712
|
+
if (!this.calculated || typeof state !== 'object' || state instanceof Array) return state
|
|
3713
|
+
if (state === lastState) {
|
|
3714
|
+
return lastResult
|
|
3709
3715
|
}
|
|
3710
|
-
|
|
3711
|
-
|
|
3712
|
-
|
|
3716
|
+
if (typeof this.calculated !== 'object') throw new Error(`'calculated' parameter must be an object mapping calculated state field named to functions`)
|
|
3717
|
+
const entries = Object.entries(this.calculated);
|
|
3718
|
+
if (entries.length === 0) {
|
|
3719
|
+
lastState = state;
|
|
3720
|
+
lastResult = state;
|
|
3721
|
+
return state
|
|
3722
|
+
}
|
|
3723
|
+
const calculated = entries.reduce((acc, [field, fn]) => {
|
|
3724
|
+
if (typeof fn !== 'function') throw new Error(`Missing or invalid calculator function for calculated field '${ field }`)
|
|
3725
|
+
try {
|
|
3726
|
+
acc[field] = fn(state);
|
|
3727
|
+
} catch(e) {
|
|
3728
|
+
console.warn(`Calculated field '${ field }' threw an error during calculation: ${ e.message }`);
|
|
3729
|
+
}
|
|
3730
|
+
return acc
|
|
3731
|
+
}, {});
|
|
3732
|
+
|
|
3733
|
+
const newState = { ...state, ...calculated };
|
|
3734
|
+
|
|
3735
|
+
lastState = state;
|
|
3736
|
+
lastResult = newState;
|
|
3737
|
+
|
|
3738
|
+
return newState
|
|
3739
|
+
}
|
|
3713
3740
|
}
|
|
3714
3741
|
|
|
3715
3742
|
cleanupCalculated(incomingState) {
|
|
@@ -3736,15 +3763,33 @@ class Component {
|
|
|
3736
3763
|
const enhancedState = state && state.isolateSource(state, { get: state => this.addCalculated(state) });
|
|
3737
3764
|
const stateStream = (enhancedState && enhancedState.stream) || xs$1.never();
|
|
3738
3765
|
|
|
3739
|
-
|
|
3740
|
-
|
|
3766
|
+
const objRepeatChecker = (a, b) => {
|
|
3767
|
+
const { state, sygnalFactory, __props, __children, ...sanitized } = a;
|
|
3768
|
+
const keys = Object.keys(sanitized);
|
|
3769
|
+
if (keys.length === 0) {
|
|
3770
|
+
const { state, sygnalFactory, __props, __children, ...sanitizedB } = b;
|
|
3771
|
+
return Object.keys(sanitizedB).length === 0
|
|
3772
|
+
}
|
|
3773
|
+
return keys.every(key => a[key] === b[key])
|
|
3774
|
+
};
|
|
3775
|
+
|
|
3776
|
+
const arrRepeatChecker = (a, b) => {
|
|
3777
|
+
if (a === b) return true
|
|
3778
|
+
if (a.length !== b.length) return false
|
|
3779
|
+
for (let i=0; i < a.length; i++) {
|
|
3780
|
+
if (a[i] !== b[i]) return false
|
|
3781
|
+
}
|
|
3782
|
+
return true
|
|
3783
|
+
};
|
|
3784
|
+
|
|
3785
|
+
renderParams.state = stateStream.compose(_default$5(objRepeatChecker));
|
|
3741
3786
|
|
|
3742
3787
|
if (this.sources.props$) {
|
|
3743
|
-
renderParams.__props = this.sources.props
|
|
3788
|
+
renderParams.__props = this.sources.props$.compose(_default$5(objRepeatChecker));
|
|
3744
3789
|
}
|
|
3745
3790
|
|
|
3746
3791
|
if (this.sources.children$) {
|
|
3747
|
-
renderParams.__children = this.sources.children
|
|
3792
|
+
renderParams.__children = this.sources.children$.compose(_default$5(arrRepeatChecker));
|
|
3748
3793
|
}
|
|
3749
3794
|
|
|
3750
3795
|
const names = [];
|
|
@@ -3760,6 +3805,7 @@ class Component {
|
|
|
3760
3805
|
.map(arr => {
|
|
3761
3806
|
return names.reduce((acc, name, index) => {
|
|
3762
3807
|
acc[name] = arr[index];
|
|
3808
|
+
if (name === 'state') acc[this.stateSourceName] = arr[index];
|
|
3763
3809
|
return acc
|
|
3764
3810
|
}, {})
|
|
3765
3811
|
});
|
|
@@ -3768,6 +3814,7 @@ class Component {
|
|
|
3768
3814
|
}
|
|
3769
3815
|
|
|
3770
3816
|
instantiateSubComponents(vDom$) {
|
|
3817
|
+
let count = 0;
|
|
3771
3818
|
return vDom$.fold((previousComponents, vDom) => {
|
|
3772
3819
|
const componentNames = Object.keys(this.components);
|
|
3773
3820
|
const foundComponents = getComponents(vDom, componentNames);
|
|
@@ -3798,6 +3845,7 @@ class Component {
|
|
|
3798
3845
|
|
|
3799
3846
|
|
|
3800
3847
|
if (previousComponents[id]) {
|
|
3848
|
+
if (this.debug) console.log(this.name, 'sameful', count++);
|
|
3801
3849
|
const entry = previousComponents[id];
|
|
3802
3850
|
acc[id] = entry;
|
|
3803
3851
|
entry.props$.shamefullySendNext(props);
|
|
@@ -3806,6 +3854,8 @@ class Component {
|
|
|
3806
3854
|
return acc
|
|
3807
3855
|
}
|
|
3808
3856
|
|
|
3857
|
+
if (this.debug) console.log(this.name, 'non-shameful', count++);
|
|
3858
|
+
|
|
3809
3859
|
const props$ = xs$1.create().startWith(props);
|
|
3810
3860
|
const children$ = xs$1.create().startWith(children);
|
|
3811
3861
|
|
|
@@ -3869,6 +3919,7 @@ class Component {
|
|
|
3869
3919
|
|
|
3870
3920
|
const stateSource = new state.StateSource(combined$);
|
|
3871
3921
|
const stateField = props.from;
|
|
3922
|
+
props.filter;
|
|
3872
3923
|
let lense;
|
|
3873
3924
|
|
|
3874
3925
|
const factory = typeof props.of === 'function' ? props.of : this.components[props.of];
|
|
@@ -4162,7 +4213,7 @@ class Component {
|
|
|
4162
4213
|
const fixedMsg = (typeof msg === 'function') ? msg : _ => msg;
|
|
4163
4214
|
return stream => {
|
|
4164
4215
|
return stream.debug(msg => {
|
|
4165
|
-
if (
|
|
4216
|
+
if (this.debug) {
|
|
4166
4217
|
console.log(`[${context}] ${fixedMsg(msg)}`);
|
|
4167
4218
|
}
|
|
4168
4219
|
})
|
package/dist/index.esm.js
CHANGED
|
@@ -3210,6 +3210,7 @@ class Component {
|
|
|
3210
3210
|
// DOMSourceName
|
|
3211
3211
|
// stateSourceName
|
|
3212
3212
|
// requestSourceName
|
|
3213
|
+
// debug
|
|
3213
3214
|
|
|
3214
3215
|
// [ PRIVATE / CALCULATED VALUES ]
|
|
3215
3216
|
// sourceNames
|
|
@@ -3223,6 +3224,7 @@ class Component {
|
|
|
3223
3224
|
// subComponentSink$
|
|
3224
3225
|
// unmountRequest$
|
|
3225
3226
|
// unmount()
|
|
3227
|
+
// stateCache
|
|
3226
3228
|
|
|
3227
3229
|
// [ INSTANTIATED STREAM OPERATOR ]
|
|
3228
3230
|
// log
|
|
@@ -3230,7 +3232,7 @@ class Component {
|
|
|
3230
3232
|
// [ OUTPUT ]
|
|
3231
3233
|
// sinks
|
|
3232
3234
|
|
|
3233
|
-
constructor({ name='NO NAME', sources, intent, request, model, response, view, children={}, components={}, initialState, calculated, storeCalculatedInState=true, DOMSourceName='DOM', stateSourceName='STATE', requestSourceName='HTTP' }) {
|
|
3235
|
+
constructor({ name='NO NAME', sources, intent, request, model, response, view, children={}, components={}, initialState, calculated, storeCalculatedInState=true, DOMSourceName='DOM', stateSourceName='STATE', requestSourceName='HTTP', debug=false }) {
|
|
3234
3236
|
if (!sources || typeof sources != 'object') throw new Error('Missing or invalid sources')
|
|
3235
3237
|
|
|
3236
3238
|
this.name = name;
|
|
@@ -3249,6 +3251,7 @@ class Component {
|
|
|
3249
3251
|
this.stateSourceName = stateSourceName;
|
|
3250
3252
|
this.requestSourceName = requestSourceName;
|
|
3251
3253
|
this.sourceNames = Object.keys(sources);
|
|
3254
|
+
this._debug = debug;
|
|
3252
3255
|
|
|
3253
3256
|
this.isSubComponent = this.sourceNames.includes('props$');
|
|
3254
3257
|
|
|
@@ -3272,6 +3275,7 @@ class Component {
|
|
|
3272
3275
|
};
|
|
3273
3276
|
}
|
|
3274
3277
|
|
|
3278
|
+
this.addCalculated = this.createMemoizedAddCalculated();
|
|
3275
3279
|
this.log = makeLog(name);
|
|
3276
3280
|
|
|
3277
3281
|
this.initIntent$();
|
|
@@ -3288,11 +3292,15 @@ class Component {
|
|
|
3288
3292
|
|
|
3289
3293
|
this.sinks.__index = COMPONENT_COUNT++;
|
|
3290
3294
|
|
|
3291
|
-
if (
|
|
3295
|
+
if (debug) {
|
|
3292
3296
|
console.log(`[${ this.name }] Instantiated (#${ this.sinks.__index })`);
|
|
3293
3297
|
}
|
|
3294
3298
|
}
|
|
3295
3299
|
|
|
3300
|
+
get debug() {
|
|
3301
|
+
return this._debug || (ENVIRONMENT.DEBUG === 'true' || ENVIRONMENT.DEBUG === true)
|
|
3302
|
+
}
|
|
3303
|
+
|
|
3296
3304
|
initIntent$() {
|
|
3297
3305
|
if (!this.intent) {
|
|
3298
3306
|
return
|
|
@@ -3390,7 +3398,7 @@ class Component {
|
|
|
3390
3398
|
|
|
3391
3399
|
console.log(`${ timestamp } ${ ip } ${ req.method } ${ req.url }`);
|
|
3392
3400
|
|
|
3393
|
-
if (
|
|
3401
|
+
if (this.debug) {
|
|
3394
3402
|
this.action$.setDebugListener({next: ({ type }) => console.log(`[${ this.name }] Action from ${ this.requestSourceName } request: <${ type }>`)});
|
|
3395
3403
|
}
|
|
3396
3404
|
|
|
@@ -3696,20 +3704,39 @@ class Component {
|
|
|
3696
3704
|
}
|
|
3697
3705
|
}
|
|
3698
3706
|
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
|
|
3702
|
-
|
|
3703
|
-
|
|
3704
|
-
if (typeof
|
|
3705
|
-
|
|
3706
|
-
|
|
3707
|
-
} catch(e) {
|
|
3708
|
-
console.warn(`Calculated field '${ field }' threw an error during calculation: ${ e.message }`);
|
|
3707
|
+
createMemoizedAddCalculated() {
|
|
3708
|
+
let lastState;
|
|
3709
|
+
let lastResult;
|
|
3710
|
+
|
|
3711
|
+
return function(state) {
|
|
3712
|
+
if (!this.calculated || typeof state !== 'object' || state instanceof Array) return state
|
|
3713
|
+
if (state === lastState) {
|
|
3714
|
+
return lastResult
|
|
3709
3715
|
}
|
|
3710
|
-
|
|
3711
|
-
|
|
3712
|
-
|
|
3716
|
+
if (typeof this.calculated !== 'object') throw new Error(`'calculated' parameter must be an object mapping calculated state field named to functions`)
|
|
3717
|
+
const entries = Object.entries(this.calculated);
|
|
3718
|
+
if (entries.length === 0) {
|
|
3719
|
+
lastState = state;
|
|
3720
|
+
lastResult = state;
|
|
3721
|
+
return state
|
|
3722
|
+
}
|
|
3723
|
+
const calculated = entries.reduce((acc, [field, fn]) => {
|
|
3724
|
+
if (typeof fn !== 'function') throw new Error(`Missing or invalid calculator function for calculated field '${ field }`)
|
|
3725
|
+
try {
|
|
3726
|
+
acc[field] = fn(state);
|
|
3727
|
+
} catch(e) {
|
|
3728
|
+
console.warn(`Calculated field '${ field }' threw an error during calculation: ${ e.message }`);
|
|
3729
|
+
}
|
|
3730
|
+
return acc
|
|
3731
|
+
}, {});
|
|
3732
|
+
|
|
3733
|
+
const newState = { ...state, ...calculated };
|
|
3734
|
+
|
|
3735
|
+
lastState = state;
|
|
3736
|
+
lastResult = newState;
|
|
3737
|
+
|
|
3738
|
+
return newState
|
|
3739
|
+
}
|
|
3713
3740
|
}
|
|
3714
3741
|
|
|
3715
3742
|
cleanupCalculated(incomingState) {
|
|
@@ -3736,15 +3763,33 @@ class Component {
|
|
|
3736
3763
|
const enhancedState = state && state.isolateSource(state, { get: state => this.addCalculated(state) });
|
|
3737
3764
|
const stateStream = (enhancedState && enhancedState.stream) || xs$1.never();
|
|
3738
3765
|
|
|
3739
|
-
|
|
3740
|
-
|
|
3766
|
+
const objRepeatChecker = (a, b) => {
|
|
3767
|
+
const { state, sygnalFactory, __props, __children, ...sanitized } = a;
|
|
3768
|
+
const keys = Object.keys(sanitized);
|
|
3769
|
+
if (keys.length === 0) {
|
|
3770
|
+
const { state, sygnalFactory, __props, __children, ...sanitizedB } = b;
|
|
3771
|
+
return Object.keys(sanitizedB).length === 0
|
|
3772
|
+
}
|
|
3773
|
+
return keys.every(key => a[key] === b[key])
|
|
3774
|
+
};
|
|
3775
|
+
|
|
3776
|
+
const arrRepeatChecker = (a, b) => {
|
|
3777
|
+
if (a === b) return true
|
|
3778
|
+
if (a.length !== b.length) return false
|
|
3779
|
+
for (let i=0; i < a.length; i++) {
|
|
3780
|
+
if (a[i] !== b[i]) return false
|
|
3781
|
+
}
|
|
3782
|
+
return true
|
|
3783
|
+
};
|
|
3784
|
+
|
|
3785
|
+
renderParams.state = stateStream.compose(_default$5(objRepeatChecker));
|
|
3741
3786
|
|
|
3742
3787
|
if (this.sources.props$) {
|
|
3743
|
-
renderParams.__props = this.sources.props
|
|
3788
|
+
renderParams.__props = this.sources.props$.compose(_default$5(objRepeatChecker));
|
|
3744
3789
|
}
|
|
3745
3790
|
|
|
3746
3791
|
if (this.sources.children$) {
|
|
3747
|
-
renderParams.__children = this.sources.children
|
|
3792
|
+
renderParams.__children = this.sources.children$.compose(_default$5(arrRepeatChecker));
|
|
3748
3793
|
}
|
|
3749
3794
|
|
|
3750
3795
|
const names = [];
|
|
@@ -3760,6 +3805,7 @@ class Component {
|
|
|
3760
3805
|
.map(arr => {
|
|
3761
3806
|
return names.reduce((acc, name, index) => {
|
|
3762
3807
|
acc[name] = arr[index];
|
|
3808
|
+
if (name === 'state') acc[this.stateSourceName] = arr[index];
|
|
3763
3809
|
return acc
|
|
3764
3810
|
}, {})
|
|
3765
3811
|
});
|
|
@@ -3768,6 +3814,7 @@ class Component {
|
|
|
3768
3814
|
}
|
|
3769
3815
|
|
|
3770
3816
|
instantiateSubComponents(vDom$) {
|
|
3817
|
+
let count = 0;
|
|
3771
3818
|
return vDom$.fold((previousComponents, vDom) => {
|
|
3772
3819
|
const componentNames = Object.keys(this.components);
|
|
3773
3820
|
const foundComponents = getComponents(vDom, componentNames);
|
|
@@ -3798,6 +3845,7 @@ class Component {
|
|
|
3798
3845
|
|
|
3799
3846
|
|
|
3800
3847
|
if (previousComponents[id]) {
|
|
3848
|
+
if (this.debug) console.log(this.name, 'sameful', count++);
|
|
3801
3849
|
const entry = previousComponents[id];
|
|
3802
3850
|
acc[id] = entry;
|
|
3803
3851
|
entry.props$.shamefullySendNext(props);
|
|
@@ -3806,6 +3854,8 @@ class Component {
|
|
|
3806
3854
|
return acc
|
|
3807
3855
|
}
|
|
3808
3856
|
|
|
3857
|
+
if (this.debug) console.log(this.name, 'non-shameful', count++);
|
|
3858
|
+
|
|
3809
3859
|
const props$ = xs$1.create().startWith(props);
|
|
3810
3860
|
const children$ = xs$1.create().startWith(children);
|
|
3811
3861
|
|
|
@@ -3869,6 +3919,7 @@ class Component {
|
|
|
3869
3919
|
|
|
3870
3920
|
const stateSource = new StateSource(combined$);
|
|
3871
3921
|
const stateField = props.from;
|
|
3922
|
+
props.filter;
|
|
3872
3923
|
let lense;
|
|
3873
3924
|
|
|
3874
3925
|
const factory = typeof props.of === 'function' ? props.of : this.components[props.of];
|
|
@@ -4162,7 +4213,7 @@ class Component {
|
|
|
4162
4213
|
const fixedMsg = (typeof msg === 'function') ? msg : _ => msg;
|
|
4163
4214
|
return stream => {
|
|
4164
4215
|
return stream.debug(msg => {
|
|
4165
|
-
if (
|
|
4216
|
+
if (this.debug) {
|
|
4166
4217
|
console.log(`[${context}] ${fixedMsg(msg)}`);
|
|
4167
4218
|
}
|
|
4168
4219
|
})
|
package/dist/sygnal.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).Sygnal={})}(this,(function(t){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n={},r={};!function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(t){var e,n=t.Symbol;if("function"==typeof n)if(n.observable)e=n.observable;else{e=n.for("https://github.com/benlesh/symbol-observable");try{n.observable=e}catch(t){}}else e="@@observable";return e}}(r);var o,i,s=r,a=Object.prototype.toString,c=function(t){var e=a.call(t),n="[object Arguments]"===e;return n||(n="[object Array]"!==e&&null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Function]"===a.call(t.callee)),n};var u=Array.prototype.slice,l=c,p=Object.keys,f=p?function(t){return p(t)}:function(){if(i)return o;var t;if(i=1,!Object.keys){var e=Object.prototype.hasOwnProperty,n=Object.prototype.toString,r=c,s=Object.prototype.propertyIsEnumerable,a=!s.call({toString:null},"toString"),u=s.call((function(){}),"prototype"),l=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],p=function(t){var e=t.constructor;return e&&e.prototype===t},f={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},h=function(){if("undefined"==typeof window)return!1;for(var t in window)try{if(!f["$"+t]&&e.call(window,t)&&null!==window[t]&&"object"==typeof window[t])try{p(window[t])}catch(t){return!0}}catch(t){return!0}return!1}();t=function(t){var o=null!==t&&"object"==typeof t,i="[object Function]"===n.call(t),s=r(t),c=o&&"[object String]"===n.call(t),f=[];if(!o&&!i&&!s)throw new TypeError("Object.keys called on a non-object");var d=u&&i;if(c&&t.length>0&&!e.call(t,0))for(var y=0;y<t.length;++y)f.push(String(y));if(s&&t.length>0)for(var m=0;m<t.length;++m)f.push(String(m));else for(var v in t)d&&"prototype"===v||!e.call(t,v)||f.push(String(v));if(a)for(var _=function(t){if("undefined"==typeof window||!h)return p(t);try{return p(t)}catch(t){return!1}}(t),g=0;g<l.length;++g)_&&"constructor"===l[g]||!e.call(t,l[g])||f.push(l[g]);return f}}return o=t}(),h=Object.keys;f.shim=function(){if(Object.keys){var t=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);t||(Object.keys=function(t){return l(t)?h(u.call(t)):h(t)})}else Object.keys=f;return Object.keys||f};var d,y=f,m="undefined"!=typeof Symbol&&Symbol,v=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var t={},e=Symbol("test"),n=Object(e);if("string"==typeof e)return!1;if("[object Symbol]"!==Object.prototype.toString.call(e))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(e in t[e]=42,t)return!1;if("function"==typeof Object.keys&&0!==Object.keys(t).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(t).length)return!1;var r=Object.getOwnPropertySymbols(t);if(1!==r.length||r[0]!==e)return!1;if(!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var o=Object.getOwnPropertyDescriptor(t,e);if(42!==o.value||!0!==o.enumerable)return!1}return!0},_={foo:{}},g=Object,b=Array.prototype.slice,w=Object.prototype.toString,S=function(t){var e=this;if("function"!=typeof e||"[object Function]"!==w.call(e))throw new TypeError("Function.prototype.bind called on incompatible "+e);for(var n,r=b.call(arguments,1),o=Math.max(0,e.length-r.length),i=[],s=0;s<o;s++)i.push("$"+s);if(n=Function("binder","return function ("+i.join(",")+"){ return binder.apply(this,arguments); }")((function(){if(this instanceof n){var o=e.apply(this,r.concat(b.call(arguments)));return Object(o)===o?o:this}return e.apply(t,r.concat(b.call(arguments)))})),e.prototype){var a=function(){};a.prototype=e.prototype,n.prototype=new a,a.prototype=null}return n},A=Function.prototype.bind||S,O=A.call(Function.call,Object.prototype.hasOwnProperty),E=SyntaxError,$=Function,j=TypeError,N=function(t){try{return $('"use strict"; return ('+t+").constructor;")()}catch(t){}},C=Object.getOwnPropertyDescriptor;if(C)try{C({},"")}catch(t){C=null}var k=function(){throw new j},x=C?function(){try{return k}catch(t){try{return C(arguments,"callee").get}catch(t){return k}}}():k,I="function"==typeof m&&"function"==typeof Symbol&&"symbol"==typeof m("foo")&&"symbol"==typeof Symbol("bar")&&v(),P={__proto__:_}.foo===_.foo&&!({__proto__:null}instanceof g),T=Object.getPrototypeOf||(P?function(t){return t.__proto__}:null),M={},D="undefined"!=typeof Uint8Array&&T?T(Uint8Array):d,L={"%AggregateError%":"undefined"==typeof AggregateError?d:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?d:ArrayBuffer,"%ArrayIteratorPrototype%":I&&T?T([][Symbol.iterator]()):d,"%AsyncFromSyncIteratorPrototype%":d,"%AsyncFunction%":M,"%AsyncGenerator%":M,"%AsyncGeneratorFunction%":M,"%AsyncIteratorPrototype%":M,"%Atomics%":"undefined"==typeof Atomics?d:Atomics,"%BigInt%":"undefined"==typeof BigInt?d:BigInt,"%BigInt64Array%":"undefined"==typeof BigInt64Array?d:BigInt64Array,"%BigUint64Array%":"undefined"==typeof BigUint64Array?d:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?d:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":"undefined"==typeof Float32Array?d:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?d:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?d:FinalizationRegistry,"%Function%":$,"%GeneratorFunction%":M,"%Int8Array%":"undefined"==typeof Int8Array?d:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?d:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?d:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":I&&T?T(T([][Symbol.iterator]())):d,"%JSON%":"object"==typeof JSON?JSON:d,"%Map%":"undefined"==typeof Map?d:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&I&&T?T((new Map)[Symbol.iterator]()):d,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?d:Promise,"%Proxy%":"undefined"==typeof Proxy?d:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":"undefined"==typeof Reflect?d:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?d:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&I&&T?T((new Set)[Symbol.iterator]()):d,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?d:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":I&&T?T(""[Symbol.iterator]()):d,"%Symbol%":I?Symbol:d,"%SyntaxError%":E,"%ThrowTypeError%":x,"%TypedArray%":D,"%TypeError%":j,"%Uint8Array%":"undefined"==typeof Uint8Array?d:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?d:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?d:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?d:Uint32Array,"%URIError%":URIError,"%WeakMap%":"undefined"==typeof WeakMap?d:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?d:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?d:WeakSet};if(T)try{null.error}catch(t){var F=T(T(t));L["%Error.prototype%"]=F}var B=function t(e){var n;if("%AsyncFunction%"===e)n=N("async function () {}");else if("%GeneratorFunction%"===e)n=N("function* () {}");else if("%AsyncGeneratorFunction%"===e)n=N("async function* () {}");else if("%AsyncGenerator%"===e){var r=t("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if("%AsyncIteratorPrototype%"===e){var o=t("%AsyncGenerator%");o&&T&&(n=T(o.prototype))}return L[e]=n,n},R={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},q=A,U=O,W=q.call(Function.call,Array.prototype.concat),G=q.call(Function.apply,Array.prototype.splice),V=q.call(Function.call,String.prototype.replace),H=q.call(Function.call,String.prototype.slice),J=q.call(Function.call,RegExp.prototype.exec),z=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,X=/\\(\\)?/g,Y=function(t,e){var n,r=t;if(U(R,r)&&(r="%"+(n=R[r])[0]+"%"),U(L,r)){var o=L[r];if(o===M&&(o=B(r)),void 0===o&&!e)throw new j("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:n,name:r,value:o}}throw new E("intrinsic "+t+" does not exist!")},Z=function(t,e){if("string"!=typeof t||0===t.length)throw new j("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof e)throw new j('"allowMissing" argument must be a boolean');if(null===J(/^%?[^%]*%?$/,t))throw new E("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(t){var e=H(t,0,1),n=H(t,-1);if("%"===e&&"%"!==n)throw new E("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==e)throw new E("invalid intrinsic syntax, expected opening `%`");var r=[];return V(t,z,(function(t,e,n,o){r[r.length]=n?V(o,X,"$1"):e||t})),r}(t),r=n.length>0?n[0]:"",o=Y("%"+r+"%",e),i=o.name,s=o.value,a=!1,c=o.alias;c&&(r=c[0],G(n,W([0,1],c)));for(var u=1,l=!0;u<n.length;u+=1){var p=n[u],f=H(p,0,1),h=H(p,-1);if(('"'===f||"'"===f||"`"===f||'"'===h||"'"===h||"`"===h)&&f!==h)throw new E("property names with quotes must have matching quotes");if("constructor"!==p&&l||(a=!0),U(L,i="%"+(r+="."+p)+"%"))s=L[i];else if(null!=s){if(!(p in s)){if(!e)throw new j("base intrinsic for "+t+" exists, but the property is not available.");return}if(C&&u+1>=n.length){var d=C(s,p);s=(l=!!d)&&"get"in d&&!("originalValue"in d.get)?d.get:s[p]}else l=U(s,p),s=s[p];l&&!a&&(L[i]=s)}}return s},K=Z("%Object.defineProperty%",!0),Q=function(){if(K)try{return K({},"a",{value:1}),!0}catch(t){return!1}return!1};Q.hasArrayLengthDefineBug=function(){if(!Q())return null;try{return 1!==K([],"length",{value:1}).length}catch(t){return!0}};var tt=Q,et=y,nt="function"==typeof Symbol&&"symbol"==typeof Symbol("foo"),rt=Object.prototype.toString,ot=Array.prototype.concat,it=Object.defineProperty,st=tt(),at=it&&st,ct=function(t,e,n,r){if(e in t)if(!0===r){if(t[e]===n)return}else if("function"!=typeof(o=r)||"[object Function]"!==rt.call(o)||!r())return;var o;at?it(t,e,{configurable:!0,enumerable:!1,value:n,writable:!0}):t[e]=n},ut=function(t,e){var n=arguments.length>2?arguments[2]:{},r=et(e);nt&&(r=ot.call(r,Object.getOwnPropertySymbols(e)));for(var o=0;o<r.length;o+=1)ct(t,r[o],e[r[o]],n[r[o]])};ut.supportsDescriptors=!!at;var lt=e,pt=function(){return"object"==typeof e&&e&&e.Math===Math&&e.Array===Array?e:lt},ft=ut,ht=pt,dt=ut,yt=e,mt=pt,vt=function(){var t=ht();if(ft.supportsDescriptors){var e=Object.getOwnPropertyDescriptor(t,"globalThis");e&&(!e.configurable||!e.enumerable&&e.writable&&globalThis===t)||Object.defineProperty(t,"globalThis",{configurable:!0,enumerable:!1,value:t,writable:!0})}else"object"==typeof globalThis&&globalThis===t||(t.globalThis=t);return t},_t=mt(),gt=function(){return _t};dt(gt,{getPolyfill:mt,implementation:yt,shim:vt});var bt,wt=gt,St=e&&e.__extends||(bt=function(t,e){return bt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])},bt(t,e)},function(t,e){function n(){this.constructor=t}bt(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(n,"__esModule",{value:!0}),n.NO_IL=n.NO=n.MemoryStream=ee=n.Stream=void 0;var At=s.default(wt.getPolyfill()),Ot={},Et=n.NO=Ot;function $t(){}function jt(t){for(var e=t.length,n=Array(e),r=0;r<e;++r)n[r]=t[r];return n}function Nt(t,e,n){try{return t.f(e)}catch(t){return n._e(t),Ot}}var Ct={_n:$t,_e:$t,_c:$t};function kt(t){t._start=function(t){t.next=t._n,t.error=t._e,t.complete=t._c,this.start(t)},t._stop=t.stop}n.NO_IL=Ct;var xt=function(){function t(t,e){this._stream=t,this._listener=e}return t.prototype.unsubscribe=function(){this._stream._remove(this._listener)},t}(),It=function(){function t(t){this._listener=t}return t.prototype.next=function(t){this._listener._n(t)},t.prototype.error=function(t){this._listener._e(t)},t.prototype.complete=function(){this._listener._c()},t}(),Pt=function(){function t(t){this.type="fromObservable",this.ins=t,this.active=!1}return t.prototype._start=function(t){this.out=t,this.active=!0,this._sub=this.ins.subscribe(new It(t)),this.active||this._sub.unsubscribe()},t.prototype._stop=function(){this._sub&&this._sub.unsubscribe(),this.active=!1},t}(),Tt=function(){function t(t){this.type="merge",this.insArr=t,this.out=Ot,this.ac=0}return t.prototype._start=function(t){this.out=t;var e=this.insArr,n=e.length;this.ac=n;for(var r=0;r<n;r++)e[r]._add(this)},t.prototype._stop=function(){for(var t=this.insArr,e=t.length,n=0;n<e;n++)t[n]._remove(this);this.out=Ot},t.prototype._n=function(t){var e=this.out;e!==Ot&&e._n(t)},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){if(--this.ac<=0){var t=this.out;if(t===Ot)return;t._c()}},t}(),Mt=function(){function t(t,e,n){this.i=t,this.out=e,this.p=n,n.ils.push(this)}return t.prototype._n=function(t){var e=this.p,n=this.out;if(n!==Ot&&e.up(t,this.i)){var r=jt(e.vals);n._n(r)}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.p;t.out!==Ot&&0==--t.Nc&&t.out._c()},t}(),Dt=function(){function t(t){this.type="combine",this.insArr=t,this.out=Ot,this.ils=[],this.Nc=this.Nn=0,this.vals=[]}return t.prototype.up=function(t,e){var n=this.vals[e],r=this.Nn?n===Ot?--this.Nn:this.Nn:0;return this.vals[e]=t,0===r},t.prototype._start=function(t){this.out=t;var e=this.insArr,n=this.Nc=this.Nn=e.length,r=this.vals=new Array(n);if(0===n)t._n([]),t._c();else for(var o=0;o<n;o++)r[o]=Ot,e[o]._add(new Mt(o,t,this))},t.prototype._stop=function(){for(var t=this.insArr,e=t.length,n=this.ils,r=0;r<e;r++)t[r]._remove(n[r]);this.out=Ot,this.ils=[],this.vals=[]},t}(),Lt=function(){function t(t){this.type="fromArray",this.a=t}return t.prototype._start=function(t){for(var e=this.a,n=0,r=e.length;n<r;n++)t._n(e[n]);t._c()},t.prototype._stop=function(){},t}(),Ft=function(){function t(t){this.type="fromPromise",this.on=!1,this.p=t}return t.prototype._start=function(t){var e=this;this.on=!0,this.p.then((function(n){e.on&&(t._n(n),t._c())}),(function(e){t._e(e)})).then($t,(function(t){setTimeout((function(){throw t}))}))},t.prototype._stop=function(){this.on=!1},t}(),Bt=function(){function t(t){this.type="periodic",this.period=t,this.intervalID=-1,this.i=0}return t.prototype._start=function(t){var e=this;this.intervalID=setInterval((function(){t._n(e.i++)}),this.period)},t.prototype._stop=function(){-1!==this.intervalID&&clearInterval(this.intervalID),this.intervalID=-1,this.i=0},t}(),Rt=function(){function t(t,e){this.type="debug",this.ins=t,this.out=Ot,this.s=$t,this.l="","string"==typeof e?this.l=e:"function"==typeof e&&(this.s=e)}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=this.s,r=this.l;if(n!==$t)try{n(t)}catch(t){e._e(t)}else r?console.log(r+":",t):console.log(t);e._n(t)}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),qt=function(){function t(t,e){this.type="drop",this.ins=e,this.out=Ot,this.max=t,this.dropped=0}return t.prototype._start=function(t){this.out=t,this.dropped=0,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;e!==Ot&&this.dropped++>=this.max&&e._n(t)},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),Ut=function(){function t(t,e){this.out=t,this.op=e}return t.prototype._n=function(){this.op.end()},t.prototype._e=function(t){this.out._e(t)},t.prototype._c=function(){this.op.end()},t}(),Wt=function(){function t(t,e){this.type="endWhen",this.ins=e,this.out=Ot,this.o=t,this.oil=Ct}return t.prototype._start=function(t){this.out=t,this.o._add(this.oil=new Ut(t,this)),this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.o._remove(this.oil),this.out=Ot,this.oil=Ct},t.prototype.end=function(){var t=this.out;t!==Ot&&t._c()},t.prototype._n=function(t){var e=this.out;e!==Ot&&e._n(t)},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){this.end()},t}(),Gt=function(){function t(t,e){this.type="filter",this.ins=e,this.out=Ot,this.f=t}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=Nt(this,t,e);n!==Ot&&n&&e._n(t)}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),Vt=function(){function t(t,e){this.out=t,this.op=e}return t.prototype._n=function(t){this.out._n(t)},t.prototype._e=function(t){this.out._e(t)},t.prototype._c=function(){this.op.inner=Ot,this.op.less()},t}(),Ht=function(){function t(t){this.type="flatten",this.ins=t,this.out=Ot,this.open=!0,this.inner=Ot,this.il=Ct}return t.prototype._start=function(t){this.out=t,this.open=!0,this.inner=Ot,this.il=Ct,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.inner!==Ot&&this.inner._remove(this.il),this.out=Ot,this.open=!0,this.inner=Ot,this.il=Ct},t.prototype.less=function(){var t=this.out;t!==Ot&&(this.open||this.inner!==Ot||t._c())},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=this.inner,r=this.il;n!==Ot&&r!==Ct&&n._remove(r),(this.inner=t)._add(this.il=new Vt(e,this))}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){this.open=!1,this.less()},t}(),Jt=function(){function t(t,e,n){var r=this;this.type="fold",this.ins=n,this.out=Ot,this.f=function(e){return t(r.acc,e)},this.acc=this.seed=e}return t.prototype._start=function(t){this.out=t,this.acc=this.seed,t._n(this.acc),this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot,this.acc=this.seed},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=Nt(this,t,e);n!==Ot&&e._n(this.acc=n)}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),zt=function(){function t(t){this.type="last",this.ins=t,this.out=Ot,this.has=!1,this.val=Ot}return t.prototype._start=function(t){this.out=t,this.has=!1,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot,this.val=Ot},t.prototype._n=function(t){this.has=!0,this.val=t},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&(this.has?(t._n(this.val),t._c()):t._e(new Error("last() failed because input stream completed")))},t}(),Xt=function(){function t(t,e){this.type="map",this.ins=e,this.out=Ot,this.f=t}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=Nt(this,t,e);n!==Ot&&e._n(n)}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),Yt=function(){function t(t){this.type="remember",this.ins=t,this.out=Ot}return t.prototype._start=function(t){this.out=t,this.ins._add(t)},t.prototype._stop=function(){this.ins._remove(this.out),this.out=Ot},t}(),Zt=function(){function t(t,e){this.type="replaceError",this.ins=e,this.out=Ot,this.f=t}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;e!==Ot&&e._n(t)},t.prototype._e=function(t){var e=this.out;if(e!==Ot)try{this.ins._remove(this),(this.ins=this.f(t))._add(this)}catch(t){e._e(t)}},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),Kt=function(){function t(t,e){this.type="startWith",this.ins=t,this.out=Ot,this.val=e}return t.prototype._start=function(t){this.out=t,this.out._n(this.val),this.ins._add(t)},t.prototype._stop=function(){this.ins._remove(this.out),this.out=Ot},t}(),Qt=function(){function t(t,e){this.type="take",this.ins=e,this.out=Ot,this.max=t,this.taken=0}return t.prototype._start=function(t){this.out=t,this.taken=0,this.max<=0?t._c():this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=++this.taken;n<this.max?e._n(t):n===this.max&&(e._n(t),e._c())}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),te=function(){function t(t){this._prod=t||Ot,this._ils=[],this._stopID=Ot,this._dl=Ot,this._d=!1,this._target=null,this._err=Ot}return t.prototype._n=function(t){var e=this._ils,n=e.length;if(this._d&&this._dl._n(t),1==n)e[0]._n(t);else{if(0==n)return;for(var r=jt(e),o=0;o<n;o++)r[o]._n(t)}},t.prototype._e=function(t){if(this._err===Ot){this._err=t;var e=this._ils,n=e.length;if(this._x(),this._d&&this._dl._e(t),1==n)e[0]._e(t);else{if(0==n)return;for(var r=jt(e),o=0;o<n;o++)r[o]._e(t)}if(!this._d&&0==n)throw this._err}},t.prototype._c=function(){var t=this._ils,e=t.length;if(this._x(),this._d&&this._dl._c(),1==e)t[0]._c();else{if(0==e)return;for(var n=jt(t),r=0;r<e;r++)n[r]._c()}},t.prototype._x=function(){0!==this._ils.length&&(this._prod!==Ot&&this._prod._stop(),this._err=Ot,this._ils=[])},t.prototype._stopNow=function(){this._prod._stop(),this._err=Ot,this._stopID=Ot},t.prototype._add=function(t){var e=this._target;if(e)return e._add(t);var n=this._ils;if(n.push(t),!(n.length>1))if(this._stopID!==Ot)clearTimeout(this._stopID),this._stopID=Ot;else{var r=this._prod;r!==Ot&&r._start(this)}},t.prototype._remove=function(t){var e=this,n=this._target;if(n)return n._remove(t);var r=this._ils,o=r.indexOf(t);o>-1&&(r.splice(o,1),this._prod!==Ot&&r.length<=0?(this._err=Ot,this._stopID=setTimeout((function(){return e._stopNow()}))):1===r.length&&this._pruneCycles())},t.prototype._pruneCycles=function(){this._hasNoSinks(this,[])&&this._remove(this._ils[0])},t.prototype._hasNoSinks=function(t,e){if(-1!==e.indexOf(t))return!0;if(t.out===this)return!0;if(t.out&&t.out!==Ot)return this._hasNoSinks(t.out,e.concat(t));if(t._ils){for(var n=0,r=t._ils.length;n<r;n++)if(!this._hasNoSinks(t._ils[n],e.concat(t)))return!1;return!0}return!1},t.prototype.ctor=function(){return this instanceof ne?ne:t},t.prototype.addListener=function(t){t._n=t.next||$t,t._e=t.error||$t,t._c=t.complete||$t,this._add(t)},t.prototype.removeListener=function(t){this._remove(t)},t.prototype.subscribe=function(t){return this.addListener(t),new xt(this,t)},t.prototype[At]=function(){return this},t.create=function(e){if(e){if("function"!=typeof e.start||"function"!=typeof e.stop)throw new Error("producer requires both start and stop functions");kt(e)}return new t(e)},t.createWithMemory=function(t){return t&&kt(t),new ne(t)},t.never=function(){return new t({_start:$t,_stop:$t})},t.empty=function(){return new t({_start:function(t){t._c()},_stop:$t})},t.throw=function(e){return new t({_start:function(t){t._e(e)},_stop:$t})},t.from=function(e){if("function"==typeof e[At])return t.fromObservable(e);if("function"==typeof e.then)return t.fromPromise(e);if(Array.isArray(e))return t.fromArray(e);throw new TypeError("Type of input to from() must be an Array, Promise, or Observable")},t.of=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return t.fromArray(e)},t.fromArray=function(e){return new t(new Lt(e))},t.fromPromise=function(e){return new t(new Ft(e))},t.fromObservable=function(e){if(void 0!==e.endWhen)return e;var n="function"==typeof e[At]?e[At]():e;return new t(new Pt(n))},t.periodic=function(e){return new t(new Bt(e))},t.prototype._map=function(t){return new(this.ctor())(new Xt(t,this))},t.prototype.map=function(t){return this._map(t)},t.prototype.mapTo=function(t){var e=this.map((function(){return t}));return e._prod.type="mapTo",e},t.prototype.filter=function(e){var n,r,o=this._prod;return new t(o instanceof Gt?new Gt((n=o.f,r=e,function(t){return n(t)&&r(t)}),o.ins):new Gt(e,this))},t.prototype.take=function(t){return new(this.ctor())(new Qt(t,this))},t.prototype.drop=function(e){return new t(new qt(e,this))},t.prototype.last=function(){return new t(new zt(this))},t.prototype.startWith=function(t){return new ne(new Kt(this,t))},t.prototype.endWhen=function(t){return new(this.ctor())(new Wt(t,this))},t.prototype.fold=function(t,e){return new ne(new Jt(t,e,this))},t.prototype.replaceError=function(t){return new(this.ctor())(new Zt(t,this))},t.prototype.flatten=function(){return new t(new Ht(this))},t.prototype.compose=function(t){return t(this)},t.prototype.remember=function(){return new ne(new Yt(this))},t.prototype.debug=function(t){return new(this.ctor())(new Rt(this,t))},t.prototype.imitate=function(t){if(t instanceof ne)throw new Error("A MemoryStream was given to imitate(), but it only supports a Stream. Read more about this restriction here: https://github.com/staltz/xstream#faq");this._target=t;for(var e=this._ils,n=e.length,r=0;r<n;r++)t._add(e[r]);this._ils=[]},t.prototype.shamefullySendNext=function(t){this._n(t)},t.prototype.shamefullySendError=function(t){this._e(t)},t.prototype.shamefullySendComplete=function(){this._c()},t.prototype.setDebugListener=function(t){t?(this._d=!0,t._n=t.next||$t,t._e=t.error||$t,t._c=t.complete||$t,this._dl=t):(this._d=!1,this._dl=Ot)},t.merge=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return new t(new Tt(e))},t.combine=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return new t(new Dt(e))},t}(),ee=n.Stream=te,ne=function(t){function e(e){var n=t.call(this,e)||this;return n._has=!1,n}return St(e,t),e.prototype._n=function(e){this._v=e,this._has=!0,t.prototype._n.call(this,e)},e.prototype._add=function(t){var e=this._target;if(e)return e._add(t);var n=this._ils;if(n.push(t),n.length>1)this._has&&t._n(this._v);else if(this._stopID!==Ot)this._has&&t._n(this._v),clearTimeout(this._stopID),this._stopID=Ot;else if(this._has)t._n(this._v);else{var r=this._prod;r!==Ot&&r._start(this)}},e.prototype._stopNow=function(){this._has=!1,t.prototype._stopNow.call(this)},e.prototype._x=function(){this._has=!1,t.prototype._x.call(this)},e.prototype.map=function(t){return this._map(t)},e.prototype.mapTo=function(e){return t.prototype.mapTo.call(this,e)},e.prototype.take=function(e){return t.prototype.take.call(this,e)},e.prototype.endWhen=function(e){return t.prototype.endWhen.call(this,e)},e.prototype.replaceError=function(e){return t.prototype.replaceError.call(this,e)},e.prototype.remember=function(){return this},e.prototype.debug=function(e){return t.prototype.debug.call(this,e)},e}(te);n.MemoryStream=ne;var re=te,oe=n.default=re,ie={};function se(){var t;return(t="undefined"!=typeof window?window:void 0!==e?e:this).Cyclejs=t.Cyclejs||{},(t=t.Cyclejs).adaptStream=t.adaptStream||function(t){return t},t}Object.defineProperty(ie,"__esModule",{value:!0}),ie.setAdapt=function(t){se().adaptStream=t};var ae=ie.adapt=function(t){return se().adaptStream(t)};var ce=0;function ue(){return"cycle"+ ++ce}function le(t,e){void 0===e&&(e=ue()),function(t,e){if("function"!=typeof t)throw new Error("First argument given to isolate() must be a 'dataflowComponent' function");if(null===e)throw new Error("Second argument given to isolate() must not be null")}(t,e);var n="object"==typeof e?ue():"",r="string"==typeof e||"object"==typeof e?e:e.toString();return function(e){for(var o=[],i=1;i<arguments.length;i++)o[i-1]=arguments[i];var s=function(t,e,n){var r={};return Object.keys(t).forEach((function(t){if("string"!=typeof e){var o=e[t];if(void 0===o){var i=e["*"];r[t]=void 0===i?n:i}else r[t]=o}else r[t]=e})),r}(e,r,n),a=function(t,e){var n={};for(var r in t){var o=t[r];t.hasOwnProperty(r)&&o&&null!==e[r]&&"function"==typeof o.isolateSource?n[r]=o.isolateSource(o,e[r]):t.hasOwnProperty(r)&&(n[r]=t[r])}return n}(e,s),c=function(t,e,n){var r={};for(var o in e){var i=t[o],s=e[o];e.hasOwnProperty(o)&&i&&null!==n[o]&&"function"==typeof i.isolateSink?r[o]=ae(i.isolateSink(oe.fromObservable(s),n[o])):e.hasOwnProperty(o)&&(r[o]=e[o])}return r}(e,t.apply(void 0,[a].concat(o)),s);return c}}le.reset=function(){return ce=0};var pe={};Object.defineProperty(pe,"__esModule",{value:!0}),pe.DropRepeatsOperator=void 0;var fe=n,he={},de=function(){function t(t,e){this.ins=t,this.type="dropRepeats",this.out=null,this.v=he,this.isEq=e||function(t,e){return t===e}}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=null,this.v=he},t.prototype._n=function(t){var e=this.out;if(e){var n=this.v;n!==he&&this.isEq(t,n)||(this.v=t,e._n(t))}},t.prototype._e=function(t){var e=this.out;e&&e._e(t)},t.prototype._c=function(){var t=this.out;t&&t._c()},t}();pe.DropRepeatsOperator=de;var ye=pe.default=function(t){return void 0===t&&(t=void 0),function(e){return new fe.Stream(new de(e,t))}},me=function(){return me=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},me.apply(this,arguments)};function ve(t){return"string"==typeof t||"number"==typeof t?function(e){return void 0===e?void 0:e[t]}:t.get}function _e(t){return"string"==typeof t||"number"==typeof t?function(e,n){var r,o;return Array.isArray(e)?function(t,e,n){if(n===t[e])return t;var r=parseInt(e);return void 0===n?t.filter((function(t,e){return e!==r})):t.map((function(t,e){return e===r?n:t}))}(e,t,n):void 0===e?((r={})[t]=n,r):me({},e,((o={})[t]=n,o))}:t.set}function ge(t,e){return t.select(e)}function be(t,e){var n=ve(e),r=_e(e);return t.map((function(t){return function(e){var o=n(e),i=t(o);return o===i?e:r(e,i)}}))}var we=function(){function t(t,e){this.isolateSource=ge,this.isolateSink=be,this._stream=t.filter((function(t){return void 0!==t})).compose(ye()).remember(),this._name=e,this.stream=ae(this._stream),this._stream._isCycleSource=e}return t.prototype.select=function(e){var n=ve(e);return new t(this._stream.map(n),this._name)},t}(),Se=function(){function t(t,e,n){this.ins=n,this.out=t,this.p=e}return t.prototype._n=function(t){this.p;var e=this.out;null!==e&&e._n(t)},t.prototype._e=function(t){var e=this.out;null!==e&&e._e(t)},t.prototype._c=function(){},t}(),Ae=function(){function t(t,e){this.type="pickMerge",this.ins=e,this.out=null,this.sel=t,this.ils=new Map,this.inst=null}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this);var t=this.ils;t.forEach((function(e,n){e.ins._remove(e),e.ins=null,e.out=null,t.delete(n)})),t.clear(),this.out=null,this.ils=new Map,this.inst=null},t.prototype._n=function(t){this.inst=t;for(var e=t.arr,n=this.ils,r=this.out,o=this.sel,i=e.length,s=0;s<i;++s){var a=e[s],c=a._key,u=oe.fromObservable(a[o]||oe.never());n.has(c)||(n.set(c,new Se(r,this,u)),u._add(n.get(c)))}n.forEach((function(e,r){t.dict.has(r)&&t.dict.get(r)||(e.ins._remove(e),e.ins=null,e.out=null,n.delete(r))}))},t.prototype._e=function(t){var e=this.out;null!==e&&e._e(t)},t.prototype._c=function(){var t=this.out;null!==t&&t._c()},t}();var Oe=function(){function t(t,e,n,r){this.key=t,this.out=e,this.p=n,this.val=Et,this.ins=r}return t.prototype._n=function(t){this.p;var e=this.out;this.val=t,null!==e&&this.p.up()},t.prototype._e=function(t){var e=this.out;null!==e&&e._e(t)},t.prototype._c=function(){},t}(),Ee=function(){function t(t,e){this.type="combine",this.ins=e,this.sel=t,this.out=null,this.ils=new Map,this.inst=null}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this);var t=this.ils;t.forEach((function(t){t.ins._remove(t),t.ins=null,t.out=null,t.val=null})),t.clear(),this.out=null,this.ils=new Map,this.inst=null},t.prototype.up=function(){for(var t=this.inst.arr,e=t.length,n=this.ils,r=Array(e),o=0;o<e;++o){var i=t[o]._key;if(!n.has(i))return;var s=n.get(i).val;if(s===Et)return;r[o]=s}this.out._n(r)},t.prototype._n=function(t){this.inst=t;var e=t.arr,n=this.ils,r=this.out,o=this.sel,i=t.dict,s=e.length,a=!1;if(n.forEach((function(t,e){i.has(e)||(t.ins._remove(t),t.ins=null,t.out=null,t.val=null,n.delete(e),a=!0)})),0!==s){for(var c=0;c<s;++c){var u=e[c],l=u._key;if(!u[o])throw new Error("pickCombine found an undefined child sink stream");var p=oe.fromObservable(u[o]);n.has(l)||(n.set(l,new Oe(l,r,this,p)),p._add(n.get(l)))}a&&this.up()}else r._n([])},t.prototype._e=function(t){var e=this.out;null!==e&&e._e(t)},t.prototype._c=function(){var t=this.out;null!==t&&t._c()},t}();var $e=function(){return $e=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},$e.apply(this,arguments)},je=function(){function t(t){this._instances$=t}return t.prototype.pickMerge=function(t){return ae(this._instances$.compose(function(t){return function(e){return new ee(new Ae(t,e))}}(t)))},t.prototype.pickCombine=function(t){return ae(this._instances$.compose(function(t){return function(e){return new ee(new Ee(t,e))}}(t)))},t}();function Ne(t){return{"*":null}}function Ce(t,e){return{get:function(n){if(void 0!==n)for(var r=0,o=n.length;r<o;++r)if(""+t(n[r],r)===e)return n[r]},set:function(n,r){return void 0===n?[r]:void 0===r?n.filter((function(n,r){return""+t(n,r)!==e})):n.map((function(n,o){return""+t(n,o)===e?r:n}))}}}var ke={get:function(t){return t},set:function(t,e){return e}};var xe={};Object.defineProperty(xe,"__esModule",{value:!0});var Ie=n,Pe=function(){function t(t){this.streams=t,this.type="concat",this.out=null,this.i=0}return t.prototype._start=function(t){this.out=t,this.streams[this.i]._add(this)},t.prototype._stop=function(){var t=this.streams;this.i<t.length&&t[this.i]._remove(this),this.i=0,this.out=null},t.prototype._n=function(t){var e=this.out;e&&e._n(t)},t.prototype._e=function(t){var e=this.out;e&&e._e(t)},t.prototype._c=function(){var t=this.out;if(t){var e=this.streams;e[this.i]._remove(this),++this.i<e.length?e[this.i]._add(this):t._c()}},t}();var Te=xe.default=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new Ie.Stream(new Pe(t))},Me={};Object.defineProperty(Me,"__esModule",{value:!0});var De=Me.default=function(){return"undefined"!=typeof queueMicrotask?queueMicrotask:"undefined"!=typeof setImmediate?setImmediate:"undefined"!=typeof process?process.nextTick:setTimeout},Le=De();function Fe(t,e,n={}){const{combineList:r=["DOM"],globalList:o=["EVENTS"],stateSourceName:i="STATE",domSourceName:s="DOM",container:a="div",containerClass:c}=n;return n=>{const u=Date.now(),l={item:t,itemKey:(t,e)=>void 0!==t.id?t.id:e,itemScope:t=>t,channel:i,collectSinks:t=>Object.entries(n).reduce(((e,[n,o])=>{if(r.includes(n)){const r=t.pickCombine(n);n===s&&a?e[s]=r.map((t=>({sel:a,data:c?{props:{className:c}}:{},children:t,key:u,text:void 0,elm:void 0}))):e[n]=r}else e[n]=t.pickMerge(n);return e}),{})},p={[i]:e};return o.forEach((t=>p[t]=null)),r.forEach((t=>p[t]=null)),function(t,e,n){return le(function(t){return function(e){var n=t.channel||"state",r=t.itemKey,o=t.itemScope||Ne,i=oe.fromObservable(e[n].stream).fold((function(i,s){var a,c,u,l,p,f=i.dict;if(Array.isArray(s)){for(var h=Array(s.length),d=new Set,y=0,m=s.length;y<m;++y){var v=""+(r?r(s[y],y):y);if(d.add(v),f.has(v))h[y]=f.get(v);else{var _=r?Ce(r,v):""+y,g="string"==typeof(p=o(v))?((a={"*":p})[n]=_,a):$e({},p,((c={})[n]=_,c)),b=le(t.itemFactory?t.itemFactory(s[y],y):t.item,g)(e);f.set(v,b),h[y]=b}h[y]._key=v}return f.forEach((function(t,e){d.has(e)||f.delete(e)})),d.clear(),{dict:f,arr:h}}return f.clear(),v=""+(r?r(s,0):"this"),_=ke,g="string"==typeof(p=o(v))?((u={"*":p})[n]=_,u):$e({},p,((l={})[n]=_,l)),b=le(t.itemFactory?t.itemFactory(s,0):t.item,g)(e),f.set(v,b),{dict:f,arr:[b]}}),{dict:new Map,arr:[]});return t.collectSinks(new je(i))}}(t),e)(n)}(l,p,n)}}function Be(t,e,n,r={}){const{switched:o=["DOM"],stateSourceName:i="STATE"}=r,s=typeof e;if(!e)throw new Error("Missing 'name$' parameter for switchable()");if(!("string"===s||"function"===s||e instanceof ee))throw new Error("Invalid 'name$' parameter for switchable(): expects Stream, String, or Function");if(e instanceof ee){const r=e.compose(ye()).startWith(n).remember();return e=>Re(t,e,r,o)}{const r="function"===s&&e||(t=>t[e]);return e=>{const s=e&&("string"==typeof i&&e[i]||e.STATE||e.state).stream;if(!s instanceof ee)throw new Error(`Could not find the state source: ${i}`);const a=s.map(r).filter((t=>"string"==typeof t)).compose(ye()).startWith(n).remember();return Re(t,e,a,o,i)}}}function Re(t,e,n,r=["DOM"],o="STATE"){"string"==typeof r&&(r=[r]);const i=Object.entries(t).map((([t,r])=>{if(e[o]){const i=e[o].stream,s=oe.combine(n,i).filter((([e,n])=>e==t)).map((([t,e])=>e)).remember(),a=new e[o].constructor(s,e[o]._name);return[t,r({...e,state:a})]}return[t,r(e)]}));return Object.keys(e).reduce(((t,e)=>{if(r.includes(e))t[e]=n.map((t=>{const n=i.find((([e,n])=>e===t));return n&&n[1][e]||oe.never()})).flatten().remember().startWith(void 0);else{const n=i.filter((([t,n])=>void 0!==n[e])).map((([t,n])=>n[e]));t[e]=oe.merge(...n)}return t}),{})}var qe={};Object.defineProperty(qe,"__esModule",{value:!0});var Ue=n,We=function(){function t(t,e){this.dt=t,this.ins=e,this.type="delay",this.out=null}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=null},t.prototype._n=function(t){var e=this.out;if(e)var n=setInterval((function(){e._n(t),clearInterval(n)}),this.dt)},t.prototype._e=function(t){var e=this.out;if(e)var n=setInterval((function(){e._e(t),clearInterval(n)}),this.dt)},t.prototype._c=function(){var t=this.out;if(t)var e=setInterval((function(){t._c(),clearInterval(e)}),this.dt)},t}();var Ge=qe.default=function(t){return function(e){return new Ue.Stream(new We(t,e))}},Ve={};Object.defineProperty(Ve,"__esModule",{value:!0});var He=n,Je=function(){function t(t,e){this.dt=t,this.ins=e,this.type="debounce",this.out=null,this.id=null,this.t=He.NO}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=null,this.clearInterval()},t.prototype.clearInterval=function(){var t=this.id;null!==t&&clearInterval(t),this.id=null},t.prototype._n=function(t){var e=this,n=this.out;n&&(this.clearInterval(),this.t=t,this.id=setInterval((function(){e.clearInterval(),n._n(t),e.t=He.NO}),this.dt))},t.prototype._e=function(t){var e=this.out;e&&(this.clearInterval(),e._e(t))},t.prototype._c=function(){var t=this.out;t&&(this.clearInterval(),this.t!=He.NO&&t._n(this.t),this.t=He.NO,t._c())},t}();var ze=Ve.default=function(t){return function(e){return new He.Stream(new Je(t,e))}};const Xe="undefined"!=typeof window&&window||process&&process.env||{},Ye="request",Ze="INITIALIZE";let Ke=0;const Qe="~#~#~ABORT~#~#~";class tn{constructor({name:t="NO NAME",sources:e,intent:n,request:r,model:o,response:i,view:s,children:a={},components:c={},initialState:u,calculated:l,storeCalculatedInState:p=!0,DOMSourceName:f="DOM",stateSourceName:h="STATE",requestSourceName:d="HTTP"}){if(!e||"object"!=typeof e)throw new Error("Missing or invalid sources");this.name=t,this.sources=e,this.intent=n,this.request=r,this.model=o,this.response=i,this.view=s,this.children=a,this.components=c,this.initialState=u,this.calculated=l,this.storeCalculatedInState=p,this.DOMSourceName=f,this.stateSourceName=h,this.requestSourceName=d,this.sourceNames=Object.keys(e),this.isSubComponent=this.sourceNames.includes("props$");const y=e[h]&&e[h].stream;var m;y&&(this.currentState=u||{},this.sources[this.stateSourceName]=new we(y.map((t=>(this.currentState=t,t))))),this.isSubComponent||void 0!==this.intent||void 0!==this.model||(this.initialState=u||!0,this.intent=t=>({__NOOP_ACTION__:oe.never()}),this.model={__NOOP_ACTION__:t=>t}),this.log=(m=t,function(t){const e="function"==typeof t?t:e=>t;return t=>t.debug((t=>{"true"!=Xe.DEBUG&&!0!==Xe.DEBUG||console.log(`[${m}] ${e(t)}`)}))}),this.initIntent$(),this.initAction$(),this.initResponse$(),this.initState(),this.initModel$(),this.initSendResponse$(),this.initChildren$(),this.initSubComponentSink$(),this.initSubComponentsRendered$(),this.initVdom$(),this.initSinks(),this.sinks.__index=Ke++,!0===Xe.DEBUG&&console.log(`[${this.name}] Instantiated (#${this.sinks.__index})`)}initIntent$(){if(this.intent){if("function"!=typeof this.intent)throw new Error("Intent must be a function");if(this.intent$=this.intent(this.sources),!(this.intent$ instanceof ee)&&"object"!=typeof this.intent$)throw new Error("Intent must return either an action$ stream or map of event streams")}}initAction$(){const t=this.sources&&this.sources[this.requestSourceName]||null;if(!this.intent$)return void(this.action$=oe.never());let e;if(this.intent$ instanceof ee)e=this.intent$;else{const t=Object.entries(this.intent$).map((([t,e])=>e.map((e=>({type:t,data:e})))));e=oe.merge(oe.never(),...t)}const n=e instanceof ee?e:e.apply&&e(this.sources)||oe.never(),r=oe.of({type:"BOOTSTRAP"}).compose(Ge(10)),o=Te(r,n);let i;i=t&&"function"==typeof t.select?t.select("initial").flatten():oe.never();const s=i.map((t=>({type:"HYDRATE",data:t})));this.action$=oe.merge(o,s).compose(this.log((({type:t})=>`Action triggered: <${t}>`)))}initResponse$(){if(void 0===this.request)return;if("object"!=typeof this.request)throw new Error("The request parameter must be an object");const t=this.sources[this.requestSourceName],e=Object.entries(this.request).reduce(((e,[n,r])=>{const o=n.toLowerCase();if("function"!=typeof t[o])throw new Error("Invalid method in request object:",n);const i=Object.entries(r).reduce(((e,[n,r])=>{const i=`[${o.toUpperCase()}]:${n||"none"}`,s=typeof r;if("undefined"===s)throw new Error(`Action for '${n}' route in request object not specified`);if("string"!==s&&"function"!==s)throw new Error(`Invalid action for '${n}' route: expecting string or function`);const a="function"===s?"[ FUNCTION ]":`< ${r} >`;console.log(`[${this.name}] Adding ${this.requestSourceName} route:`,o.toUpperCase(),`'${n}' <${a}>`);const c=t[o](n).compose(ye(((t,e)=>t.id==e.id))).map((t=>{if(!t||!t.id)throw new Error(`No id found in request: ${i}`);try{const e=t.id,n=(t.params,t.body),o=(t.cookies,"function"===s?"FUNCTION":r),i={type:o,data:n,req:t,_reqId:e,_action:o},a=(new Date).toISOString(),c=t.get?t.get("host"):"0.0.0.0";if(console.log(`${a} ${c} ${t.method} ${t.url}`),Xe.DEBUG&&this.action$.setDebugListener({next:({type:t})=>console.log(`[${this.name}] Action from ${this.requestSourceName} request: <${t}>`)}),"function"===s){const e=this.addCalculated(this.currentState),n=r(e,t);return oe.of({...i,data:n})}{this.action$.shamefullySendNext(i);const t=Object.entries(this.sources).reduce(((t,[n,r])=>{if(!r||"function"!=typeof r[Ye])return t;const o=r[Ye](e);return[...t,o]}),[]);return oe.merge(...t)}}catch(t){console.error(t)}})).flatten();return[...e,c]}),[]);return[...e,oe.merge(...i)]}),[]);if(this.response$=oe.merge(...e).compose(this.log((t=>t._action?`[${this.requestSourceName}] response data received for Action: <${t._action}>`:`[${this.requestSourceName}] response data received from FUNCTION`))),void 0!==this.response&&void 0===this.response$)throw new Error("Cannot have a response parameter without a request parameter")}initState(){null!=this.model&&(void 0===this.model[Ze]?this.model[Ze]={[this.stateSourceName]:(t,e)=>({...this.addCalculated(e)})}:Object.keys(this.model[Ze]).forEach((t=>{t!==this.stateSourceName&&(console.warn(`${Ze} can only be used with the ${this.stateSourceName} source... disregarding ${t}`),delete this.model[Ze][t])})))}initModel$(){if(void 0===this.model)return void(this.model$=this.sourceNames.reduce(((t,e)=>(t[e]=oe.never(),t)),{}));const t={type:Ze,data:this.initialState};this.isSubComponent&&this.initialState&&console.warn(`[${this.name}] Initial state provided to sub-component. This will overwrite any state provided by the parent component.`);const e=this.initialState?Te(oe.of(t),this.action$).compose(Ge(0)):this.action$,n=()=>this.makeOnAction(e,!0,this.action$),r=()=>this.makeOnAction(this.action$,!1,this.action$),o=Object.entries(this.model),i={};o.forEach((t=>{let[e,o]=t;if("function"==typeof o&&(o={[this.stateSourceName]:o}),"object"!=typeof o)throw new Error(`Entry for each action must be an object: ${this.name} ${e}`);Object.entries(o).forEach((t=>{const[o,s]=t,a=o==this.stateSourceName,c=(a?n():r())(e,s).compose(this.log((t=>{if(a)return`State reducer added: <${e}>`;{const n=t&&(t.type||t.command||t.name||t.key||Array.isArray(t)&&"Array"||t);return`Data sent to [${o}]: <${e}> ${n}`}})));Array.isArray(i[o])?i[o].push(c):i[o]=[c]}))}));const s=Object.entries(i).reduce(((t,e)=>{const[n,r]=e;return t[n]=oe.merge(oe.never(),...r),t}),{});this.model$=s}initSendResponse$(){const t=typeof this.response;if("function"!=t&&"undefined"!=t)throw new Error("The response parameter must be a function");if("undefined"==t)return this.response$&&this.response$.subscribe({next:this.log((({_reqId:t,_action:e})=>`Unhandled response for request: ${e} ${t}`))}),void(this.sendResponse$=oe.never());const e={select:t=>void 0===t?this.response$:(Array.isArray(t)||(t=[t]),this.response$.filter((({_action:e})=>!(t.length>0)||("FUNCTION"===e||t.includes(e)))))},n=this.response(e);if("object"!=typeof n)throw new Error("The response function must return an object");const r=Object.entries(n).reduce(((t,[e,n])=>[...t,n.map((({_reqId:t,_action:n,data:r})=>{if(!t)throw new Error(`No request id found for response for: ${e}`);return{_reqId:t,_action:n,command:e,data:r}}))]),[]);this.sendResponse$=oe.merge(...r).compose(this.log((({_reqId:t,_action:e})=>`[${this.requestSourceName}] response sent for: <${e}>`)))}initChildren$(){const t=this.sourceNames.reduce(((t,e)=>(e==this.DOMSourceName?t[e]={}:t[e]=[],t)),{});this.children$=Object.entries(this.children).reduce(((t,[e,n])=>{const r=n(this.sources);return this.sourceNames.forEach((n=>{n==this.DOMSourceName?t[n][e]=r[n]:t[n].push(r[n])})),t}),t)}initSubComponentSink$(){const t=oe.create({start:t=>{this.newSubComponentSinks=t.next.bind(t)},stop:t=>{}});t.subscribe({next:t=>t}),this.subComponentSink$=t.filter((t=>Object.keys(t).length>0))}initSubComponentsRendered$(){const t=oe.create({start:t=>{this.triggerSubComponentsRendered=t.next.bind(t)},stop:t=>{}});this.subComponentsRendered$=t.startWith(null)}initVdom$(){if("function"!=typeof this.view)return void(this.vdom$=oe.of(null));const t=this.collectRenderParameters();this.vdom$=t.map(this.view).map((t=>t||{sel:"div",data:{},children:[]})).compose(this.instantiateSubComponents.bind(this)).filter((t=>void 0!==t)).compose(this.renderVdom.bind(this))}initSinks(){this.sinks=this.sourceNames.reduce(((t,e)=>{if(e==this.DOMSourceName)return t;const n=this.subComponentSink$?this.subComponentSink$.map((t=>t[e])).filter((t=>!!t)).flatten():oe.never();return e===this.stateSourceName?t[e]=oe.merge(this.model$[e]||oe.never(),n,this.sources[this.stateSourceName].stream.filter((t=>!1)),...this.children$[e]):t[e]=oe.merge(this.model$[e]||oe.never(),n,...this.children$[e]),t}),{}),this.sinks[this.DOMSourceName]=this.vdom$,this.sinks[this.requestSourceName]=oe.merge(this.sendResponse$,this.sinks[this.requestSourceName])}makeOnAction(t,e=!0,n){return n=n||t,(r,o)=>{const i=t.filter((({type:t})=>t==r));let s;if("function"==typeof o)s=i.map((t=>{const i=(e,o,i=10)=>{if("number"!=typeof i)throw new Error(`[${this.name} ] Invalid delay value provided to next() function in model action '${r}'. Must be a number in ms.`);const s=t._reqId||t.req&&t.req.id,a=s?"object"==typeof o?{...o,_reqId:s,_action:r}:{data:o,_reqId:s,_action:r}:o;setTimeout((()=>{n.shamefullySendNext({type:e,data:a})}),i)};let s=t.data;if(s&&s.data&&s._reqId&&(s=s.data),e)return e=>{const n=this.isSubComponent?this.currentState:e,r=this.addCalculated(n),a=o(r,s,i,t.req);return a==Qe?n:this.cleanupCalculated(a)};{const e=this.addCalculated(this.currentState),n=o(e,s,i,t.req),a=typeof n,c=t._reqId||t.req&&t.req.id;if(["string","number","boolean","function"].includes(a))return n;if("object"==a)return{...n,_reqId:c,_action:r};if("undefined"==a)return console.warn(`'undefined' value sent to ${r}`),n;throw new Error(`Invalid reducer type for ${r} ${a}`)}})).filter((t=>t!=Qe));else if(void 0===o||!0===o)s=i.map((({data:t})=>t));else{const t=o;s=i.mapTo(t)}return s}}addCalculated(t){if(!this.calculated||"object"!=typeof t||t instanceof Array)return t;if("object"!=typeof this.calculated)throw new Error("'calculated' parameter must be an object mapping calculated state field named to functions");const e=Object.entries(this.calculated).reduce(((e,[n,r])=>{if("function"!=typeof r)throw new Error(`Missing or invalid calculator function for calculated field '${n}`);try{e[n]=r(t)}catch(t){console.warn(`Calculated field '${n}' threw an error during calculation: ${t.message}`)}return e}),{});return{...t,...e}}cleanupCalculated(t){if(!t||"object"!=typeof t||t instanceof Array)return t;const e=this.storeCalculatedInState?this.addCalculated(t):t,{__props:n,__children:r,...o}=e,i={...o};if(!this.calculated)return i;return Object.keys(this.calculated).forEach((t=>{this.initialState&&void 0!==this.initialState[t]?i[t]=this.initialState[t]:delete i[t]})),i}collectRenderParameters(){const t=this.sources[this.stateSourceName],e={...this.children$[this.DOMSourceName]},n=t&&t.isolateSource(t,{get:t=>this.addCalculated(t)}),r=n&&n.stream||oe.never();e.state=r,e[this.stateSourceName]=r,this.sources.props$&&(e.__props=this.sources.props$),this.sources.children$&&(e.__children=this.sources.children$);const o=[],i=[];Object.entries(e).forEach((([t,e])=>{o.push(t),i.push(e)}));return oe.combine(...i).map((t=>o.reduce(((e,n,r)=>(e[n]=t[r],e)),{})))}instantiateSubComponents(t){return t.fold(((t,e)=>{const n=en(e,Object.keys(this.components)),r=Object.entries(n),o={"::ROOT::":e};if(0===r.length)return o;const i={},s=r.reduce(((e,[n,r])=>{const o=r.data,s=o.props||{},a=r.children||[],c=o.isCollection||!1,u=o.isSwitchable||!1,l=t=>{Object.entries(t).map((([t,e])=>{i[t]||=[],t!==this.DOMSourceName&&i[t].push(e)}))};if(t[n]){const r=t[n];return e[n]=r,r.props$.shamefullySendNext(s),r.children$.shamefullySendNext(a),l(r.sink$),e}const p=oe.create().startWith(s),f=oe.create().startWith(a);let h;h=c?this.instantiateCollection.bind(this):u?this.instantiateSwitchable.bind(this):this.instantiateCustomComponent.bind(this);const d=h(r,p,f);return d[this.DOMSourceName]=d[this.DOMSourceName]?this.makeCoordinatedSubComponentDomSink(d[this.DOMSourceName]):oe.never(),e[n]={sink$:d,props$:p,children$:f},l(d),e}),o),a=Object.entries(i).reduce(((t,[e,n])=>(0===n.length||(t[e]=1===n.length?n[0]:oe.merge(...n)),t)),{});return this.newSubComponentSinks(a),s}),{})}makeCoordinatedSubComponentDomSink(t){const e=t.remember(),n=this.sources[this.stateSourceName].stream.compose(ye(((t,e)=>JSON.stringify(t)===JSON.stringify(e)))).map((t=>e)).compose(ze(10)).flatten().debug((t=>this.triggerSubComponentsRendered())).remember();return n}instantiateCollection(t,e,n){const r=t.data.props||{};t.children;const o=oe.combine(this.sources[this.stateSourceName].stream.startWith(this.currentState),e,n).map((([t,e,n])=>"object"==typeof t?{...this.addCalculated(t),__props:e,__children:n}:{value:t,__props:e,__children:n})),i=new we(o),s=r.from;let a;const c="function"==typeof r.of?r.of:this.components[r.of],u=t=>{if("object"==typeof t){const{__props:e,__children:n,...r}=t;return r}return t},l={get:t=>{const{__props:e,__children:n}=t;return Array.isArray(t[s])?t[s].map((t=>"object"==typeof t?{...t,__props:e,__children:n}:{value:t,__props:e,__children:n})):[]},set:(t,e)=>this.calculated&&s in this.calculated?(console.warn(`Collection sub-component of ${this.name} attempted to update state on a calculated field '${s}': Update ignored`),t):{...t,[s]:e.map(u)}};void 0===s?a={get:t=>!(t instanceof Array)&&t.value&&t.value instanceof Array?t.value:t,set:(t,e)=>e}:"string"==typeof s?"object"==typeof this.currentState?s in this.currentState||s in this.calculated?(Array.isArray(this.currentState[s])||console.warn(`State property '${s}' in collection comopnent of ${this.name} is not an array: No components will be instantiated in the collection.`),a=l):(console.error(`Collection component in ${this.name} is attempting to use non-existent state property '${s}': To fix this error, specify a valid array property on the state. Attempting to use parent component state.`),a=void 0):(Array.isArray(this.currentState[s])||console.warn(`State property '${s}' in collection component of ${this.name} is not an array: No components will be instantiated in the collection.`),a=l):"object"==typeof s?"function"!=typeof s.get?(console.error(`Collection component in ${this.name} has an invalid 'from' field: Expecting 'undefined', a string indicating an array property in the state, or an object with 'get' and 'set' functions for retrieving and setting child state from the current state. Attempting to use parent component state.`),a=void 0):a={get:t=>{const e=s.get(t);return Array.isArray(e)?e:(console.warn(`State getter function in collection component of ${this.name} did not return an array: No components will be instantiated in the collection. Returned value:`,e),[])},set:s.set}:(console.error(`Collection component in ${this.name} has an invalid 'from' field: Expecting 'undefined', a string indicating an array property in the state, or an object with 'get' and 'set' functions for retrieving and setting child state from the current state. Attempting to use parent component state.`),a=void 0);const p={...this.sources,[this.stateSourceName]:i,props$:e,children$:n},f=Fe(c,a,{container:null})(p);if("object"!=typeof f)throw new Error("Invalid sinks returned from component factory of collection element");return f}instantiateSwitchable(t,e,n){const r=t.data.props||{};t.children;const o=oe.combine(this.sources[this.stateSourceName].stream.startWith(this.currentState),e,n).map((([t,e,n])=>"object"==typeof t?{...this.addCalculated(t),__props:e,__children:n}:{value:t,__props:e,__children:n})),i=new we(o),s=r.state;let a;const c={get:t=>t,set:(t,e)=>{if("object"!=typeof e||e instanceof Array)return e;const{__props:n,__children:r,...o}=e;return o}};void 0===s?a=c:"string"==typeof s?a={get:t=>{const{__props:e,__children:n}=t;return"object"!=typeof t[s]||t[s]instanceof Array?{value:t[s],__props:e,__children:n}:{...t[s],__props:e,__children:n}},set:(t,e)=>{if(this.calculated&&s in this.calculated)return console.warn(`Switchable sub-component of ${this.name} attempted to update state on a calculated field '${s}': Update ignored`),t;if("object"!=typeof e||e instanceof Array)return{...t,[s]:e};const{__props:n,__children:r,...o}=e;return{...t,[s]:o}}}:"object"==typeof s?"function"!=typeof s.get?(console.error(`Switchable component in ${this.name} has an invalid 'state' field: Expecting 'undefined', a string indicating an array property in the state, or an object with 'get' and 'set' functions for retrieving and setting sub-component state from the current state. Attempting to use parent component state.`),a=c):a={get:s.get,set:s.set}:(console.error(`Invalid state provided to switchable sub-component of ${this.name}: Expecting string, object, or undefined, but found ${typeof s}. Attempting to use parent component state.`),a=c);const u=r.of,l={...this.sources,[this.stateSourceName]:i,props$:e,children$:n},p=le(Be(u,e.map((t=>t.current))),{[this.stateSourceName]:a})(l);if("object"!=typeof p)throw new Error("Invalid sinks returned from component factory of switchable element");return p}instantiateCustomComponent(t,e,n){const r=t.sel,o=t.data.props||{};t.children;const i=oe.combine(this.sources[this.stateSourceName].stream.startWith(this.currentState),e,n).map((([t,e,n])=>"object"==typeof t?{...this.addCalculated(t),__props:e,__children:n}:{value:t,__props:e,__children:n})),s=new we(i),a=o.state,c="sygnal-factory"===r?o.sygnalFactory:this.components[r]||o.sygnalFactory;if(!c){if("sygnal-factory"===r)throw new Error("Component not found on element with Capitalized selector and nameless function: JSX transpilation replaces selectors starting with upper case letters with functions in-scope with the same name, Sygnal cannot see the name of the resulting component.");throw new Error(`Component not found: ${r}`)}let u;const l={get:t=>t,set:(t,e)=>{if("object"!=typeof e||e instanceof Array)return e;const{__props:n,__children:r,...o}=e;return o}};void 0===a?u=l:"string"==typeof a?u={get:t=>{const{__props:e,__children:n}=t;return"object"==typeof t[a]?{...t[a],__props:e,__children:n}:{value:t[a],__props:e,__children:n}},set:(t,e)=>this.calculated&&a in this.calculated?(console.warn(`Sub-component of ${this.name} attempted to update state on a calculated field '${a}': Update ignored`),t):{...t,[a]:e}}:"object"==typeof a?"function"!=typeof a.get?(console.error(`Sub-component in ${this.name} has an invalid 'state' field: Expecting 'undefined', a string indicating an array property in the state, or an object with 'get' and 'set' functions for retrieving and setting sub-component state from the current state. Attempting to use parent component state.`),u=l):u={get:a.get,set:a.set}:(console.error(`Invalid state provided to sub-component of ${this.name}: Expecting string, object, or undefined, but found ${typeof a}. Attempting to use parent component state.`),u=l);const p={...this.sources,[this.stateSourceName]:s,props$:e,children$:n},f=le(c,{[this.stateSourceName]:u})(p);if("object"!=typeof f){throw new Error("Invalid sinks returned from component factory:","sygnal-factory"===r?"custom element":r)}return f}renderVdom(t){return oe.combine(this.subComponentsRendered$,t).compose(ze(5)).map((([t,e])=>{const n=Object.keys(this.components),r=e["::ROOT::"],o=Object.entries(e).filter((([t])=>"::ROOT::"!==t));if(0===o.length)return oe.of(r);const i=[],s=o.map((([t,e])=>(i.push(t),e.sink$[this.DOMSourceName].startWith(void 0))));return 0===s.length?oe.of(r):oe.combine(...s).compose(ze(10)).map((t=>{const e=t.reduce(((t,e,n)=>(t[i[n]]=e,t)),{});return nn(sn(r),e,n)}))})).flatten().filter((t=>!!t)).remember().compose(this.log("View Rendered"))}}function en(t,e,n=0,r=0){if(!t)return{};if(t.data?.componentsProcessed)return{};0===n&&(t.data.componentsProcessed=!0);const o=t.sel,i=o&&"collection"===o.toLowerCase(),s=o&&"switchable"===o.toLowerCase(),a=o&&["collection","switchable","sygnal-factory",...e].includes(t.sel)||"function"==typeof t.data?.props?.sygnalFactory,c=t.data&&t.data.props||{};t.data&&t.data.attrs;const u=t.children||[];let l={};if(a){const o=on(t,n,r);if(i){if(!c.of)throw new Error("Collection element missing required 'component' property");if("string"!=typeof c.of&&"function"!=typeof c.of)throw new Error(`Invalid 'component' property of collection element: found ${typeof c.of} requires string or component factory function`);if("function"!=typeof c.of&&!e.includes(c.of))throw new Error(`Specified component for collection not found: ${c.of}`);void 0===c.from||"string"==typeof c.from||Array.isArray(c.from)||"function"==typeof c.from.get||console.warn(`No valid array found for collection ${"string"==typeof c.of?c.of:"function component"}: no collection components will be created`,c.from),t.data.isCollection=!0,t.data.props||={}}else if(s){if(!c.of)throw new Error("Switchable element missing required 'of' property");if("object"!=typeof c.of)throw new Error(`Invalid 'of' property of switchable element: found ${typeof c.of} requires object mapping names to component factories`);if(!Object.values(c.of).every((t=>"function"==typeof t)))throw new Error("One or more components provided to switchable element is not a valid component factory");if(!c.current||"string"!=typeof c.current&&"function"!=typeof c.current)throw new Error(`Missing or invalid 'current' property for switchable element: found '${typeof c.current}' requires string or function`);if(!Object.keys(c.of).includes(c.current))throw new Error(`Component '${c.current}' not found in switchable element`);t.data.isSwitchable=!0}void 0===c.key&&(t.data.props.key=o),l[o]=t}return u.length>0&&u.map(((t,o)=>en(t,e,n+1,r+o))).forEach((t=>{Object.entries(t).forEach((([t,e])=>l[t]=e))})),l}function nn(t,e,n,r=0,o=0){if(!t)return;if(t.data?.componentsInjected)return t;0===r&&t.data&&(t.data.componentsInjected=!0);const i=t.sel||"NO SELECTOR",s=["collection","switchable","sygnal-factory",...n].includes(i)||"function"==typeof t.data?.props?.sygnalFactory,a=t?.data?.isCollection;t.data&&t.data.props;const c=t.children||[];if(s){const n=on(t,r,o),i=e[n];return a?(t.sel="div",t.children=Array.isArray(i)?i:[i],t):i}return c.length>0?(t.children=c.map(((t,i)=>nn(t,e,n,r+1,o+i))).flat(),t):t}const rn=new Map;function on(t,e,n){const r=t.sel,o="string"==typeof r?r:"functionComponent";let i=rn.get(r);if(!i){i=`${Date.now()}-${Math.floor(1e4*Math.random())}`,rn.set(r,i)}const s=`${i}-${e}-${n}`,a=t.data&&t.data.props||{};return`${o}::${a.id&&JSON.stringify(a.id)||s}`}function sn(t){return void 0===t?t:{...t,children:Array.isArray(t.children)?t.children.map(sn):void 0,data:t.data&&{...t.data,componentsInjected:!1}}}function an(t){return function(){var t;return(t="undefined"!=typeof window?window:"undefined"!=typeof global?global:this).Cyclejs=t.Cyclejs||{},(t=t.Cyclejs).adaptStream=t.adaptStream||function(t){return t},t}().adaptStream(t)}function cn(t){return 0===Object.keys(t).length}function un(t,e){if("function"!=typeof t)throw new Error("First argument given to Cycle must be the 'main' function.");if("object"!=typeof e||null===e)throw new Error("Second argument given to Cycle must be an object with driver functions as properties.");if(cn(e))throw new Error("Second argument given to Cycle must be an object with at least one driver function declared as a property.");var n=function(t){if("object"!=typeof t||null===t)throw new Error("Argument given to setupReusable must be an object with driver functions as properties.");if(cn(t))throw new Error("Argument given to setupReusable must be an object with at least one driver function declared as a property.");var e=function(t){var e={};for(var n in t)t.hasOwnProperty(n)&&(e[n]=oe.create());return e}(t),n=function(t,e){var n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r](e[r],r),n[r]&&"object"==typeof n[r]&&(n[r]._isCycleSource=r));return n}(t,e),r=function(t){for(var e in t)t.hasOwnProperty(e)&&t[e]&&"function"==typeof t[e].shamefullySendNext&&(t[e]=an(t[e]));return t}(n);function o(t){return function(t,e){var n=De(),r=Object.keys(t).filter((function(t){return!!e[t]})),o={},i={};r.forEach((function(t){o[t]={_n:[],_e:[]},i[t]={next:function(e){return o[t]._n.push(e)},error:function(e){return o[t]._e.push(e)},complete:function(){}}}));var s=r.map((function(e){return oe.fromObservable(t[e]).subscribe(i[e])}));return r.forEach((function(t){var r=e[t],s=function(t){n((function(){return r._n(t)}))},a=function(t){n((function(){(console.error||console.log)(t),r._e(t)}))};o[t]._n.forEach(s),o[t]._e.forEach(a),i[t].next=s,i[t].error=a,i[t]._n=s,i[t]._e=a})),o=null,function(){s.forEach((function(t){return t.unsubscribe()}))}}(t,e)}function i(){!function(t){for(var e in t)t.hasOwnProperty(e)&&t[e]&&t[e].dispose&&t[e].dispose()}(r),function(t){Object.keys(t).forEach((function(e){return t[e]._c()}))}(e)}return{sources:r,run:o,dispose:i}}(e),r=t(n.sources);return"undefined"!=typeof window&&(window.Cyclejs=window.Cyclejs||{},window.Cyclejs.sinks=r),{sinks:r,sources:n.sources,run:function(){var t=n.run(r);return function(){t(),n.dispose()}}}}function ln(t){if(pn(t)){for(;t&&pn(t);){t=fn(t).parent}return null!=t?t:null}return t.parentNode}function pn(t){return 11===t.nodeType}function fn(t,e){var n,r,o;const i=t;return null!==(n=i.parent)&&void 0!==n||(i.parent=null!=e?e:null),null!==(r=i.firstChildNode)&&void 0!==r||(i.firstChildNode=t.firstChild),null!==(o=i.lastChildNode)&&void 0!==o||(i.lastChildNode=t.lastChild),i}const hn={createElement:function(t,e){return document.createElement(t,e)},createElementNS:function(t,e,n){return document.createElementNS(t,e,n)},createTextNode:function(t){return document.createTextNode(t)},createDocumentFragment:function(){return fn(document.createDocumentFragment())},createComment:function(t){return document.createComment(t)},insertBefore:function(t,e,n){if(pn(t)){let e=t;for(;e&&pn(e);){e=fn(e).parent}t=null!=e?e:t}pn(e)&&(e=fn(e,t)),n&&pn(n)&&(n=fn(n).firstChildNode),t.insertBefore(e,n)},removeChild:function(t,e){t.removeChild(e)},appendChild:function(t,e){pn(e)&&(e=fn(e,t)),t.appendChild(e)},parentNode:ln,nextSibling:function(t){var e;if(pn(t)){const n=fn(t),r=ln(n);if(r&&n.lastChildNode){const t=Array.from(r.childNodes),o=t.indexOf(n.lastChildNode);return null!==(e=t[o+1])&&void 0!==e?e:null}return null}return t.nextSibling},tagName:function(t){return t.tagName},setTextContent:function(t,e){t.textContent=e},getTextContent:function(t){return t.textContent},isElement:function(t){return 1===t.nodeType},isText:function(t){return 3===t.nodeType},isComment:function(t){return 8===t.nodeType},isDocumentFragment:pn};function dn(t,e,n,r,o){return{sel:t,data:e,children:n,text:r,elm:o,key:void 0===e?void 0:e.key}}const yn=Array.isArray;function mn(t){return"string"==typeof t||"number"==typeof t||t instanceof String||t instanceof Number}function vn(t){return void 0===t}function _n(t){return void 0!==t}const gn=dn("",{},[],void 0,void 0);function bn(t,e){var n,r;const o=t.key===e.key,i=(null===(n=t.data)||void 0===n?void 0:n.is)===(null===(r=e.data)||void 0===r?void 0:r.is),s=t.sel===e.sel,a=!(!t.sel&&t.sel===e.sel)||typeof t.text==typeof e.text;return s&&o&&i&&a}function wn(){throw new Error("The document fragment is not supported on this platform.")}function Sn(t,e,n){var r;const o={};for(let i=e;i<=n;++i){const e=null===(r=t[i])||void 0===r?void 0:r.key;void 0!==e&&(o[e]=i)}return o}const An=["create","update","remove","destroy","pre","post"];function On(t,e,n){const r={create:[],update:[],remove:[],destroy:[],pre:[],post:[]},o=void 0!==e?e:hn;for(const e of An)for(const n of t){const t=n[e];void 0!==t&&r[e].push(t)}function i(t){const e=t.id?"#"+t.id:"",n=t.getAttribute("class"),r=n?"."+n.split(" ").join("."):"";return dn(o.tagName(t).toLowerCase()+e+r,{},[],void 0,t)}function s(t){return dn(void 0,{},[],void 0,t)}function a(t,e){return function(){if(0==--e){const e=o.parentNode(t);o.removeChild(e,t)}}}function c(t,e){var i,s,a,u;let l,p=t.data;if(void 0!==p){const e=null===(i=p.hook)||void 0===i?void 0:i.init;_n(e)&&(e(t),p=t.data)}const f=t.children,h=t.sel;if("!"===h)vn(t.text)&&(t.text=""),t.elm=o.createComment(t.text);else if(void 0!==h){const n=h.indexOf("#"),i=h.indexOf(".",n),a=n>0?n:h.length,u=i>0?i:h.length,d=-1!==n||-1!==i?h.slice(0,Math.min(a,u)):h,y=t.elm=_n(p)&&_n(l=p.ns)?o.createElementNS(l,d,p):o.createElement(d,p);for(a<u&&y.setAttribute("id",h.slice(a+1,u)),i>0&&y.setAttribute("class",h.slice(u+1).replace(/\./g," ")),l=0;l<r.create.length;++l)r.create[l](gn,t);if(yn(f))for(l=0;l<f.length;++l){const t=f[l];null!=t&&o.appendChild(y,c(t,e))}else mn(t.text)&&o.appendChild(y,o.createTextNode(t.text));const m=t.data.hook;_n(m)&&(null===(s=m.create)||void 0===s||s.call(m,gn,t),m.insert&&e.push(t))}else if((null===(a=null==n?void 0:n.experimental)||void 0===a?void 0:a.fragments)&&t.children){for(t.elm=(null!==(u=o.createDocumentFragment)&&void 0!==u?u:wn)(),l=0;l<r.create.length;++l)r.create[l](gn,t);for(l=0;l<t.children.length;++l){const n=t.children[l];null!=n&&o.appendChild(t.elm,c(n,e))}}else t.elm=o.createTextNode(t.text);return t.elm}function u(t,e,n,r,i,s){for(;r<=i;++r){const i=n[r];null!=i&&o.insertBefore(t,c(i,s),e)}}function l(t){var e,n;const o=t.data;if(void 0!==o){null===(n=null===(e=null==o?void 0:o.hook)||void 0===e?void 0:e.destroy)||void 0===n||n.call(e,t);for(let e=0;e<r.destroy.length;++e)r.destroy[e](t);if(void 0!==t.children)for(let e=0;e<t.children.length;++e){const n=t.children[e];null!=n&&"string"!=typeof n&&l(n)}}}function p(t,e,n,i){for(var s,c;n<=i;++n){let i,u;const f=e[n];if(null!=f)if(_n(f.sel)){l(f),i=r.remove.length+1,u=a(f.elm,i);for(let t=0;t<r.remove.length;++t)r.remove[t](f,u);const t=null===(c=null===(s=null==f?void 0:f.data)||void 0===s?void 0:s.hook)||void 0===c?void 0:c.remove;_n(t)?t(f,u):u()}else f.children?(l(f),p(t,f.children,0,f.children.length-1)):o.removeChild(t,f.elm)}}function f(t,e,n){var i,s,a,l,h,d,y,m;const v=null===(i=e.data)||void 0===i?void 0:i.hook;null===(s=null==v?void 0:v.prepatch)||void 0===s||s.call(v,t,e);const _=e.elm=t.elm;if(t===e)return;if(void 0!==e.data||_n(e.text)&&e.text!==t.text){null!==(a=e.data)&&void 0!==a||(e.data={}),null!==(l=t.data)&&void 0!==l||(t.data={});for(let n=0;n<r.update.length;++n)r.update[n](t,e);null===(y=null===(d=null===(h=e.data)||void 0===h?void 0:h.hook)||void 0===d?void 0:d.update)||void 0===y||y.call(d,t,e)}const g=t.children,b=e.children;vn(e.text)?_n(g)&&_n(b)?g!==b&&function(t,e,n,r){let i,s,a,l,h=0,d=0,y=e.length-1,m=e[0],v=e[y],_=n.length-1,g=n[0],b=n[_];for(;h<=y&&d<=_;)null==m?m=e[++h]:null==v?v=e[--y]:null==g?g=n[++d]:null==b?b=n[--_]:bn(m,g)?(f(m,g,r),m=e[++h],g=n[++d]):bn(v,b)?(f(v,b,r),v=e[--y],b=n[--_]):bn(m,b)?(f(m,b,r),o.insertBefore(t,m.elm,o.nextSibling(v.elm)),m=e[++h],b=n[--_]):bn(v,g)?(f(v,g,r),o.insertBefore(t,v.elm,m.elm),v=e[--y],g=n[++d]):(void 0===i&&(i=Sn(e,h,y)),s=i[g.key],vn(s)?o.insertBefore(t,c(g,r),m.elm):(a=e[s],a.sel!==g.sel?o.insertBefore(t,c(g,r),m.elm):(f(a,g,r),e[s]=void 0,o.insertBefore(t,a.elm,m.elm))),g=n[++d]);d<=_&&(l=null==n[_+1]?null:n[_+1].elm,u(t,l,n,d,_,r)),h<=y&&p(t,e,h,y)}(_,g,b,n):_n(b)?(_n(t.text)&&o.setTextContent(_,""),u(_,null,b,0,b.length-1,n)):_n(g)?p(_,g,0,g.length-1):_n(t.text)&&o.setTextContent(_,""):t.text!==e.text&&(_n(g)&&p(_,g,0,g.length-1),o.setTextContent(_,e.text)),null===(m=null==v?void 0:v.postpatch)||void 0===m||m.call(v,t,e)}return function(t,e){let n,a,u;const l=[];for(n=0;n<r.pre.length;++n)r.pre[n]();for(!function(t,e){return t.isElement(e)}(o,t)?function(t,e){return t.isDocumentFragment(e)}(o,t)&&(t=s(t)):t=i(t),bn(t,e)?f(t,e,l):(a=t.elm,u=o.parentNode(a),c(e,l),null!==u&&(o.insertBefore(u,e.elm,o.nextSibling(a)),p(u,[t],0,0))),n=0;n<l.length;++n)l[n].data.hook.insert(l[n]);for(n=0;n<r.post.length;++n)r.post[n]();return e}}function En(t,e,n){if(t.ns="http://www.w3.org/2000/svg","foreignObject"!==n&&void 0!==e)for(let t=0;t<e.length;++t){const n=e[t];if("string"==typeof n)continue;const r=n.data;void 0!==r&&En(r,n.children,n.sel)}}function $n(t,e,n){let r,o,i,s={};if(void 0!==n?(null!==e&&(s=e),yn(n)?r=n:mn(n)?o=n.toString():n&&n.sel&&(r=[n])):null!=e&&(yn(e)?r=e:mn(e)?o=e.toString():e&&e.sel?r=[e]:s=e),void 0!==r)for(i=0;i<r.length;++i)mn(r[i])&&(r[i]=dn(void 0,void 0,void 0,r[i],void 0));return"s"!==t[0]||"v"!==t[1]||"g"!==t[2]||3!==t.length&&"."!==t[3]&&"#"!==t[3]||En(s,r,t),dn(t,s,r,o,void 0)}function jn(t,e){const n=void 0!==e?e:hn;let r;if(n.isElement(t)){const r=t.id?"#"+t.id:"",o=t.getAttribute("class"),i=o?"."+o.split(" ").join("."):"",s=n.tagName(t).toLowerCase()+r+i,a={},c={},u={},l=[];let p,f,h;const d=t.attributes,y=t.childNodes;for(f=0,h=d.length;f<h;f++)p=d[f].nodeName,"d"===p[0]&&"a"===p[1]&&"t"===p[2]&&"a"===p[3]&&"-"===p[4]?c[p.slice(5)]=d[f].nodeValue||"":"id"!==p&&"class"!==p&&(a[p]=d[f].nodeValue);for(f=0,h=y.length;f<h;f++)l.push(jn(y[f],e));return Object.keys(a).length>0&&(u.attrs=a),Object.keys(c).length>0&&(u.dataset=c),"s"!==s[0]||"v"!==s[1]||"g"!==s[2]||3!==s.length&&"."!==s[3]&&"#"!==s[3]||En(u,l,s),dn(s,u,l,void 0,t)}return n.isText(t)?(r=n.getTextContent(t),dn(void 0,void 0,void 0,r,t)):n.isComment(t)?(r=n.getTextContent(t),dn("!",{},[],r,t)):dn("",{},[],void 0,t)}function Nn(t,e){let n;const r=e.elm;let o=t.data.attrs,i=e.data.attrs;if((o||i)&&o!==i){for(n in o=o||{},i=i||{},i){const t=i[n];o[n]!==t&&(!0===t?r.setAttribute(n,""):!1===t?r.removeAttribute(n):120!==n.charCodeAt(0)?r.setAttribute(n,t):58===n.charCodeAt(3)?r.setAttributeNS("http://www.w3.org/XML/1998/namespace",n,t):58===n.charCodeAt(5)?r.setAttributeNS("http://www.w3.org/1999/xlink",n,t):r.setAttribute(n,t))}for(n in o)n in i||r.removeAttribute(n)}}const Cn={create:Nn,update:Nn};function kn(t,e){let n,r;const o=e.elm;let i=t.data.class,s=e.data.class;if((i||s)&&i!==s){for(r in i=i||{},s=s||{},i)i[r]&&!Object.prototype.hasOwnProperty.call(s,r)&&o.classList.remove(r);for(r in s)n=s[r],n!==i[r]&&o.classList[n?"add":"remove"](r)}}const xn={create:kn,update:kn},In=/[A-Z]/g;function Pn(t,e){const n=e.elm;let r,o=t.data.dataset,i=e.data.dataset;if(!o&&!i)return;if(o===i)return;o=o||{},i=i||{};const s=n.dataset;for(r in o)i[r]||(s?r in s&&delete s[r]:n.removeAttribute("data-"+r.replace(In,"-$&").toLowerCase()));for(r in i)o[r]!==i[r]&&(s?s[r]=i[r]:n.setAttribute("data-"+r.replace(In,"-$&").toLowerCase(),i[r]))}const Tn={create:Pn,update:Pn};function Mn(t,e){let n,r,o;const i=e.elm;let s=t.data.props,a=e.data.props;if((s||a)&&s!==a)for(n in s=s||{},a=a||{},a)r=a[n],o=s[n],o===r||"value"===n&&i[n]===r||(i[n]=r)}const Dn={create:Mn,update:Mn},Ln="undefined"!=typeof window&&window.requestAnimationFrame.bind(window)||setTimeout,Fn=function(t){Ln((function(){Ln(t)}))};let Bn=!1;function Rn(t,e,n){Fn((function(){t[e]=n}))}function qn(t,e){let n,r;const o=e.elm;let i=t.data.style,s=e.data.style;if(!i&&!s)return;if(i===s)return;i=i||{},s=s||{};const a="delayed"in i;for(r in i)s[r]||("-"===r[0]&&"-"===r[1]?o.style.removeProperty(r):o.style[r]="");for(r in s)if(n=s[r],"delayed"===r&&s.delayed)for(const t in s.delayed)n=s.delayed[t],a&&n===i.delayed[t]||Rn(o.style,t,n);else"remove"!==r&&n!==i[r]&&("-"===r[0]&&"-"===r[1]?o.style.setProperty(r,n):o.style[r]=n)}const Un={pre:function(){Bn=!1},create:qn,update:qn,destroy:function(t){let e,n;const r=t.elm,o=t.data.style;if(o&&(e=o.destroy))for(n in e)r.style[n]=e[n]},remove:function(t,e){const n=t.data.style;if(!n||!n.remove)return void e();let r;Bn||(t.elm.offsetLeft,Bn=!0);const o=t.elm;let i=0;const s=n.remove;let a=0;const c=[];for(r in s)c.push(r),o.style[r]=s[r];const u=getComputedStyle(o)["transition-property"].split(", ");for(;i<u.length;++i)-1!==c.indexOf(u[i])&&a++;o.addEventListener("transitionend",(function(t){t.target===o&&--a,0===a&&e()}))}};function Wn(t,e){e.elm=t.elm,t.data.fn=e.data.fn,t.data.args=e.data.args,t.data.isolate=e.data.isolate,e.data=t.data,e.children=t.children,e.text=t.text,e.elm=t.elm}function Gn(t){var e=t.data;Wn(e.fn.apply(void 0,e.args),t)}function Vn(t,e){var n,r=t.data,o=e.data,i=r.args,s=o.args;for(r.fn===o.fn&&i.length===s.length||Wn(o.fn.apply(void 0,s),e),n=0;n<s.length;++n)if(i[n]!==s[n])return void Wn(o.fn.apply(void 0,s),e);Wn(t,e)}function Hn(t,e,n,r,o){void 0===n&&(n=!1),void 0===r&&(r=!1),void 0===o&&(o=!1);var i=null;return ee.create({start:function(s){i=r?function(t){zn(t,r),s.next(t)}:function(t){s.next(t)},t.addEventListener(e,i,{capture:n,passive:o})},stop:function(){t.removeEventListener(e,i,n),i=null}})}function Jn(t,e){for(var n=Object.keys(t),r=n.length,o=0;o<r;o++){var i=n[o];if("object"==typeof t[i]&&"object"==typeof e[i]){if(!Jn(t[i],e[i]))return!1}else if(t[i]!==e[i])return!1}return!0}function zn(t,e){if(e)if("boolean"==typeof e)t.preventDefault();else if("function"==typeof e)e(t)&&t.preventDefault();else{if("object"!=typeof e)throw new Error("preventDefault has to be either a boolean, predicate function or object");Jn(e,t)&&t.preventDefault()}}var Xn=function(){function t(t){this._name=t}return t.prototype.select=function(t){return this},t.prototype.elements=function(){var t=ae(oe.of([document]));return t._isCycleSource=this._name,t},t.prototype.element=function(){var t=ae(oe.of(document));return t._isCycleSource=this._name,t},t.prototype.events=function(t,e,n){var r;void 0===e&&(e={}),r=Hn(document,t,e.useCapture,e.preventDefault);var o=ae(r);return o._isCycleSource=this._name,o},t}(),Yn=function(){function t(t){this._name=t}return t.prototype.select=function(t){return this},t.prototype.elements=function(){var t=ae(oe.of([document.body]));return t._isCycleSource=this._name,t},t.prototype.element=function(){var t=ae(oe.of(document.body));return t._isCycleSource=this._name,t},t.prototype.events=function(t,e,n){var r;void 0===e&&(e={}),r=Hn(document.body,t,e.useCapture,e.preventDefault);var o=ae(r);return o._isCycleSource=this._name,o},t}();function Zn(t){if("string"!=typeof t&&(e=t,!("object"==typeof HTMLElement?e instanceof HTMLElement||e instanceof DocumentFragment:e&&"object"==typeof e&&null!==e&&(1===e.nodeType||11===e.nodeType)&&"string"==typeof e.nodeName)))throw new Error("Given container is not a DOM element neither a selector string.");var e}function Kn(t){for(var e="",n=t.length-1;n>=0&&"selector"===t[n].type;n--)e=t[n].scope+" "+e;return e.trim()}function Qn(t,e){if(!Array.isArray(t)||!Array.isArray(e)||t.length!==e.length)return!1;for(var n=0;n<t.length;n++)if(t[n].type!==e[n].type||t[n].scope!==e[n].scope)return!1;return!0}var tr=function(){function t(t,e){this.namespace=t,this.isolateModule=e,this._namespace=t.filter((function(t){return"selector"!==t.type}))}return t.prototype.isDirectlyInScope=function(t){var e=this.isolateModule.getNamespace(t);if(!e)return!1;if(this._namespace.length>e.length||!Qn(this._namespace,e.slice(0,this._namespace.length)))return!1;for(var n=this._namespace.length;n<e.length;n++)if("total"===e[n].type)return!1;return!0},t}();var er=function(){function t(t,e){this.namespace=t,this.isolateModule=e}return t.prototype.call=function(){var t=this.namespace,e=Kn(t),n=new tr(t,this.isolateModule),r=this.isolateModule.getElement(t.filter((function(t){return"selector"!==t.type})));return void 0===r?[]:""===e?[r]:function(t){return Array.prototype.slice.call(t)}(r.querySelectorAll(e)).filter(n.isDirectlyInScope,n).concat(r.matches(e)?[r]:[])},t}(),nr=function(){return nr=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},nr.apply(this,arguments)};function rr(t){return{type:(e=t,e.length>1&&("."===e[0]||"#"===e[0])?"sibling":"total"),scope:t};var e}var or=function(){function t(e,n,r,o,i,s){var a;void 0===r&&(r=[]),this._rootElement$=e,this._sanitation$=n,this._namespace=r,this._isolateModule=o,this._eventDelegator=i,this._name=s,this.isolateSource=function(e,n){return new t(e._rootElement$,e._sanitation$,e._namespace.concat(rr(n)),e._isolateModule,e._eventDelegator,e._name)},this.isolateSink=(a=this._namespace,function(t,e){return":root"===e?t:t.map((function(t){if(!t)return t;var n=rr(e),r=nr({},t,{data:nr({},t.data,{isolate:t.data&&Array.isArray(t.data.isolate)?t.data.isolate:a.concat([n])})});return nr({},r,{key:void 0!==r.key?r.key:JSON.stringify(r.data.isolate)})}))})}return t.prototype._elements=function(){if(0===this._namespace.length)return this._rootElement$.map((function(t){return[t]}));var t=new er(this._namespace,this._isolateModule);return this._rootElement$.map((function(){return t.call()}))},t.prototype.elements=function(){var t=ae(this._elements().remember());return t._isCycleSource=this._name,t},t.prototype.element=function(){var t=ae(this._elements().filter((function(t){return t.length>0})).map((function(t){return t[0]})).remember());return t._isCycleSource=this._name,t},Object.defineProperty(t.prototype,"namespace",{get:function(){return this._namespace},enumerable:!0,configurable:!0}),t.prototype.select=function(e){if("string"!=typeof e)throw new Error("DOM driver's select() expects the argument to be a string as a CSS selector");if("document"===e)return new Xn(this._name);if("body"===e)return new Yn(this._name);var n=":root"===e?[]:this._namespace.concat({type:"selector",scope:e.trim()});return new t(this._rootElement$,this._sanitation$,n,this._isolateModule,this._eventDelegator,this._name)},t.prototype.events=function(t,e,n){if(void 0===e&&(e={}),"string"!=typeof t)throw new Error("DOM driver's events() expects argument to be a string representing the event type to listen for.");var r=this._eventDelegator.addEventListener(t,this._namespace,e,n),o=ae(r);return o._isCycleSource=this._name,o},t.prototype.dispose=function(){this._sanitation$.shamefullySendNext(null)},t}(),ir={},sr=e&&e.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var r=Array(t),o=0;for(e=0;e<n;e++)for(var i=arguments[e],s=0,a=i.length;s<a;s++,o++)r[o]=i[s];return r};Object.defineProperty(ir,"__esModule",{value:!0}),ir.SampleCombineOperator=ir.SampleCombineListener=void 0;var ar=n,cr={},ur=function(){function t(t,e){this.i=t,this.p=e,e.ils[t]=this}return t.prototype._n=function(t){var e=this.p;e.out!==cr&&e.up(t,this.i)},t.prototype._e=function(t){this.p._e(t)},t.prototype._c=function(){this.p.down(this.i,this)},t}();ir.SampleCombineListener=ur;var lr,pr=function(){function t(t,e){this.type="sampleCombine",this.ins=t,this.others=e,this.out=cr,this.ils=[],this.Nn=0,this.vals=[]}return t.prototype._start=function(t){this.out=t;for(var e=this.others,n=this.Nn=e.length,r=this.vals=new Array(n),o=0;o<n;o++)r[o]=cr,e[o]._add(new ur(o,this));this.ins._add(this)},t.prototype._stop=function(){var t=this.others,e=t.length,n=this.ils;this.ins._remove(this);for(var r=0;r<e;r++)t[r]._remove(n[r]);this.out=cr,this.vals=[],this.ils=[]},t.prototype._n=function(t){var e=this.out;e!==cr&&(this.Nn>0||e._n(sr([t],this.vals)))},t.prototype._e=function(t){var e=this.out;e!==cr&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==cr&&t._c()},t.prototype.up=function(t,e){var n=this.vals[e];this.Nn>0&&n===cr&&this.Nn--,this.vals[e]=t},t.prototype.down=function(t,e){this.others[t]._remove(e)},t}();ir.SampleCombineOperator=pr,lr=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return function(e){return new ar.Stream(new pr(e,t))}};var fr=ir.default=lr;function hr(t){if(!t.sel)return{tagName:"",id:"",className:""};var e=t.sel,n=e.indexOf("#"),r=e.indexOf(".",n),o=n>0?n:e.length,i=r>0?r:e.length;return{tagName:-1!==n||-1!==r?e.slice(0,Math.min(o,i)):e,id:o<i?e.slice(o+1,i):void 0,className:r>0?e.slice(i+1).replace(/\./g," "):void 0}}Object.assign;var dr=("undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:Function("return this")()).Symbol;"function"==typeof dr&&dr("parent");var yr=function(){function t(t){this.rootElement=t}return t.prototype.call=function(t){if(11===this.rootElement.nodeType)return this.wrapDocFrag(null===t?[]:[t]);if(null===t)return this.wrap([]);var e=hr(t),n=e.tagName,r=e.id,o=function(t){var e=hr(t).className,n=void 0===e?"":e;if(!t.data)return n;var r=t.data,o=r.class,i=r.props;return o&&(n+=" "+Object.keys(o).filter((function(t){return o[t]})).join(" ")),i&&i.className&&(n+=" "+i.className),n&&n.trim()}(t),i=((t.data||{}).props||{}).id,s=void 0===i?r:i;return"string"==typeof s&&s.toUpperCase()===this.rootElement.id.toUpperCase()&&n.toUpperCase()===this.rootElement.tagName.toUpperCase()&&o.toUpperCase()===this.rootElement.className.toUpperCase()?t:this.wrap([t])},t.prototype.wrapDocFrag=function(t){return dn("",{isolate:[]},t,void 0,this.rootElement)},t.prototype.wrap=function(t){var e=this.rootElement,n=e.tagName,r=e.id,o=e.className,i=r?"#"+r:"",s=o?"."+o.split(" ").join("."):"",a=$n(""+n.toLowerCase()+i+s,{},t);return a.data=a.data||{},a.data.isolate=a.data.isolate||[],a},t}(),mr=[Un,xn,Dn,Cn,Tn],vr=function(){function t(t){this.mapper=t,this.tree=[void 0,{}]}return t.prototype.set=function(t,e,n){for(var r=this.tree,o=void 0!==n?n:t.length,i=0;i<o;i++){var s=this.mapper(t[i]),a=r[1][s];a||(a=[void 0,{}],r[1][s]=a),r=a}r[0]=e},t.prototype.getDefault=function(t,e,n){return this.get(t,e,n)},t.prototype.get=function(t,e,n){for(var r=this.tree,o=void 0!==n?n:t.length,i=0;i<o;i++){var s=this.mapper(t[i]),a=r[1][s];if(!a){if(!e)return;a=[void 0,{}],r[1][s]=a}r=a}return e&&!r[0]&&(r[0]=e()),r[0]},t.prototype.delete=function(t){for(var e=this.tree,n=0;n<t.length-1;n++){var r=e[1][this.mapper(t[n])];if(!r)return;e=r}delete e[1][this.mapper(t[t.length-1])]},t}(),_r=function(){function t(){this.namespaceTree=new vr((function(t){return t.scope})),this.namespaceByElement=new Map,this.vnodesBeingRemoved=[]}return t.prototype.setEventDelegator=function(t){this.eventDelegator=t},t.prototype.insertElement=function(t,e){this.namespaceByElement.set(e,t),this.namespaceTree.set(t,e)},t.prototype.removeElement=function(t){this.namespaceByElement.delete(t);var e=this.getNamespace(t);e&&this.namespaceTree.delete(e)},t.prototype.getElement=function(t,e){return this.namespaceTree.get(t,void 0,e)},t.prototype.getRootElement=function(t){if(this.namespaceByElement.has(t))return t;for(var e=t;!this.namespaceByElement.has(e);){if(!(e=e.parentNode))return;if("HTML"===e.tagName)throw new Error("No root element found, this should not happen at all")}return e},t.prototype.getNamespace=function(t){var e=this.getRootElement(t);if(e)return this.namespaceByElement.get(e)},t.prototype.createModule=function(){var t=this;return{create:function(e,n){var r=n.elm,o=n.data,i=(void 0===o?{}:o).isolate;Array.isArray(i)&&t.insertElement(i,r)},update:function(e,n){var r=e.elm,o=e.data,i=void 0===o?{}:o,s=n.elm,a=n.data,c=void 0===a?{}:a,u=i.isolate,l=c.isolate;Qn(u,l)||Array.isArray(u)&&t.removeElement(r),Array.isArray(l)&&t.insertElement(l,s)},destroy:function(e){t.vnodesBeingRemoved.push(e)},remove:function(e,n){t.vnodesBeingRemoved.push(e),n()},post:function(){for(var e=t.vnodesBeingRemoved,n=e.length-1;n>=0;n--){var r=e[n],o=void 0!==r.data?r.data.isolation:void 0;void 0!==o&&t.removeElement(o),t.eventDelegator.removeElement(r.elm,o)}t.vnodesBeingRemoved=[]}}},t}(),gr=function(){function t(){this.arr=[],this.prios=[]}return t.prototype.add=function(t,e){for(var n=0;n<this.arr.length;n++)if(this.prios[n]<e)return this.arr.splice(n,0,t),void this.prios.splice(n,0,e);this.arr.push(t),this.prios.push(e)},t.prototype.forEach=function(t){for(var e=0;e<this.arr.length;e++)t(this.arr[e],e,this.arr)},t.prototype.delete=function(t){for(var e=0;e<this.arr.length;e++)if(this.arr[e]===t)return this.arr.splice(e,1),void this.prios.splice(e,1)},t}(),br=function(){return br=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},br.apply(this,arguments)},wr=["blur","canplay","canplaythrough","durationchange","emptied","ended","focus","load","loadeddata","loadedmetadata","mouseenter","mouseleave","pause","play","playing","ratechange","reset","scroll","seeked","seeking","stalled","submit","suspend","timeupdate","unload","volumechange","waiting"],Sr=function(){function t(t,e){var n=this;this.rootElement$=t,this.isolateModule=e,this.virtualListeners=new vr((function(t){return t.scope})),this.nonBubblingListenersToAdd=new Set,this.virtualNonBubblingListener=[],this.isolateModule.setEventDelegator(this),this.domListeners=new Map,this.domListenersToAdd=new Map,this.nonBubblingListeners=new Map,t.addListener({next:function(t){n.origin!==t&&(n.origin=t,n.resetEventListeners(),n.domListenersToAdd.forEach((function(t,e){return n.setupDOMListener(e,t)})),n.domListenersToAdd.clear()),n.nonBubblingListenersToAdd.forEach((function(t){n.setupNonBubblingListener(t)}))}})}return t.prototype.addEventListener=function(t,e,n,r){var o,i=oe.never(),s=new tr(e,this.isolateModule);if(void 0===r?-1===wr.indexOf(t):r)return this.domListeners.has(t)||this.setupDOMListener(t,!!n.passive),o=this.insertListener(i,s,t,n),i;var a=[];this.nonBubblingListenersToAdd.forEach((function(t){return a.push(t)}));for(var c=void 0,u=0,l=a.length,p=function(n){n[0];var r=n[1],o=n[2];return n[3],t===r&&Qn(o.namespace,e)};!c&&u<l;){var f=a[u];c=p(f)?f:c,u++}var h,d=c;if(d){var y=d[0];h=y}else{var m=new er(e,this.isolateModule);o=this.insertListener(i,s,t,n),d=[i,t,m,o],h=i,this.nonBubblingListenersToAdd.add(d),this.setupNonBubblingListener(d)}var v=this,_=null;return oe.create({start:function(t){_=h.subscribe(t)},stop:function(){d[0];var t=d[1],e=d[2];d[3],e.call().forEach((function(e){var n=e.subs;n&&n[t]&&(n[t].unsubscribe(),delete n[t])})),v.nonBubblingListenersToAdd.delete(d),_.unsubscribe()}})},t.prototype.removeElement=function(t,e){void 0!==e&&this.virtualListeners.delete(e);var n=[];this.nonBubblingListeners.forEach((function(e,r){if(e.has(t)){n.push([r,t]);var o=t.subs;o&&Object.keys(o).forEach((function(t){o[t].unsubscribe()}))}}));for(var r=0;r<n.length;r++){var o=this.nonBubblingListeners.get(n[r][0]);o&&(o.delete(n[r][1]),0===o.size?this.nonBubblingListeners.delete(n[r][0]):this.nonBubblingListeners.set(n[r][0],o))}},t.prototype.insertListener=function(t,e,n,r){var o=[],i=e._namespace,s=i.length;do{o.push(this.getVirtualListeners(n,i,!0,s)),s--}while(s>=0&&"total"!==i[s].type);for(var a=br({},r,{scopeChecker:e,subject:t,bubbles:!!r.bubbles,useCapture:!!r.useCapture,passive:!!r.passive}),c=0;c<o.length;c++)o[c].add(a,i.length);return a},t.prototype.getVirtualListeners=function(t,e,n,r){void 0===n&&(n=!1);var o=void 0!==r?r:e.length;if(!n)for(var i=o-1;i>=0;i--){if("total"===e[i].type){o=i+1;break}o=i}var s=this.virtualListeners.getDefault(e,(function(){return new Map}),o);return s.has(t)||s.set(t,new gr),s.get(t)},t.prototype.setupDOMListener=function(t,e){var n=this;if(this.origin){var r=Hn(this.origin,t,!1,!1,e).subscribe({next:function(r){return n.onEvent(t,r,e)},error:function(){},complete:function(){}});this.domListeners.set(t,{sub:r,passive:e})}else this.domListenersToAdd.set(t,e)},t.prototype.setupNonBubblingListener=function(t){t[0];var e=t[1],n=t[2],r=t[3];if(this.origin){var o=n.call();if(o.length){var i=this;o.forEach((function(t){var n,o=t.subs;if(!o||!o[e]){var s=Hn(t,e,!1,!1,r.passive).subscribe({next:function(t){return i.onEvent(e,t,!!r.passive,!1)},error:function(){},complete:function(){}});i.nonBubblingListeners.has(e)||i.nonBubblingListeners.set(e,new Map);var a=i.nonBubblingListeners.get(e);if(!a)return;a.set(t,{sub:s,destination:r}),t.subs=br({},o,((n={})[e]=s,n))}}))}}},t.prototype.resetEventListeners=function(){for(var t=this.domListeners.entries(),e=t.next();!e.done;){var n=e.value,r=n[0],o=n[1],i=o.sub,s=o.passive;i.unsubscribe(),this.setupDOMListener(r,s),e=t.next()}},t.prototype.putNonBubblingListener=function(t,e,n,r){var o=this.nonBubblingListeners.get(t);if(o){var i=o.get(e);i&&i.destination.passive===r&&i.destination.useCapture===n&&(this.virtualNonBubblingListener[0]=i.destination)}},t.prototype.onEvent=function(t,e,n,r){void 0===r&&(r=!0);var o=this.patchEvent(e),i=this.isolateModule.getRootElement(e.target);if(r){var s=this.isolateModule.getNamespace(e.target);if(!s)return;var a=this.getVirtualListeners(t,s);this.bubble(t,e.target,i,o,a,s,s.length-1,!0,n),this.bubble(t,e.target,i,o,a,s,s.length-1,!1,n)}else this.putNonBubblingListener(t,e.target,!0,n),this.doBubbleStep(t,e.target,i,o,this.virtualNonBubblingListener,!0,n),this.putNonBubblingListener(t,e.target,!1,n),this.doBubbleStep(t,e.target,i,o,this.virtualNonBubblingListener,!1,n),e.stopPropagation()},t.prototype.bubble=function(t,e,n,r,o,i,s,a,c){a||r.propagationHasBeenStopped||this.doBubbleStep(t,e,n,r,o,a,c);var u=n,l=s;if(e===n){if(!(s>=0&&"sibling"===i[s].type))return;u=this.isolateModule.getElement(i,s),l--}e.parentNode&&u&&this.bubble(t,e.parentNode,u,r,o,i,l,a,c),a&&!r.propagationHasBeenStopped&&this.doBubbleStep(t,e,n,r,o,a,c)},t.prototype.doBubbleStep=function(t,e,n,r,o,i,s){n&&(this.mutateEventCurrentTarget(r,e),o.forEach((function(t){if(t.passive===s&&t.useCapture===i){var o=Kn(t.scopeChecker.namespace);!r.propagationHasBeenStopped&&t.scopeChecker.isDirectlyInScope(e)&&(""!==o&&e.matches(o)||""===o&&e===n)&&(zn(r,t.preventDefault),t.subject.shamefullySendNext(r))}})))},t.prototype.patchEvent=function(t){var e=t;e.propagationHasBeenStopped=!1;var n=e.stopPropagation;return e.stopPropagation=function(){n.call(this),this.propagationHasBeenStopped=!0},e},t.prototype.mutateEventCurrentTarget=function(t,e){try{Object.defineProperty(t,"currentTarget",{value:e,configurable:!0})}catch(t){console.log("please use event.ownerTarget")}t.ownerTarget=e},t}();function Ar(t){return oe.merge(t,oe.never())}function Or(t){return t.elm}function Er(t){(console.error||console.log)(t)}function $r(t,e){void 0===e&&(e={}),Zn(t);var n=e.modules||mr;!function(t){if(!Array.isArray(t))throw new Error("Optional modules option must be an array for snabbdom modules")}(n);var r,o,i=new _r,s=e&&e.snabbdomOptions||void 0,a=On([i.createModule()].concat(n),void 0,s),c=oe.create({start:function(t){"loading"===document.readyState?document.addEventListener("readystatechange",(function(){var e=document.readyState;"interactive"!==e&&"complete"!==e||(t.next(null),t.complete())})):(t.next(null),t.complete())},stop:function(){}}),u=oe.create({start:function(t){o=new MutationObserver((function(){return t.next(null)}))},stop:function(){o.disconnect()}});return function(n,s){void 0===s&&(s="DOM"),function(t){if(!t||"function"!=typeof t.addListener||"function"!=typeof t.fold)throw new Error("The DOM driver function expects as input a Stream of virtual DOM elements")}(n);var l=oe.create(),p=c.map((function(){var e=function(t){var e="string"==typeof t?document.querySelector(t):t;if("string"==typeof t&&null===e)throw new Error("Cannot render into unknown element `"+t+"`");return e}(t)||document.body;return r=new yr(e),e})),f=n.remember();f.addListener({}),u.addListener({});var h=p.map((function(t){return oe.merge(f.endWhen(l),l).map((function(t){return r.call(t)})).startWith(function(t){return t.data=t.data||{},t.data.isolate=[],t}(jn(t))).fold(a,jn(t)).drop(1).map(Or).startWith(t).map((function(t){return o.observe(t,{childList:!0,attributes:!0,characterData:!0,subtree:!0,attributeOldValue:!0,characterDataOldValue:!0}),t})).compose(Ar)})).flatten(),d=Te(c,u).endWhen(l).compose(fr(h)).map((function(t){return t[1]})).remember();d.addListener({error:e.reportSnabbdomError||Er});var y=new Sr(d,i);return new or(d,l,[],i,y,s)}}var jr="___",Nr=function(){function t(t){this._mockConfig=t,t.elements?this._elements=t.elements:this._elements=ae(oe.empty())}return t.prototype.elements=function(){var t=this._elements;return t._isCycleSource="MockedDOM",t},t.prototype.element=function(){var t=this.elements().filter((function(t){return t.length>0})).map((function(t){return t[0]})).remember(),e=ae(t);return e._isCycleSource="MockedDOM",e},t.prototype.events=function(t,e,n){var r=this._mockConfig[t],o=ae(r||oe.empty());return o._isCycleSource="MockedDOM",o},t.prototype.select=function(e){return new t(this._mockConfig[e]||{})},t.prototype.isolateSource=function(t,e){return t.select("."+jr+e)},t.prototype.isolateSink=function(t,e){return ae(oe.fromObservable(t).map((function(t){return t.sel&&-1!==t.sel.indexOf(jr+e)||(t.sel+="."+jr+e),t})))},t}();function Cr(t){return function(t){return"string"==typeof t&&t.length>0}(t)&&("."===t[0]||"#"===t[0])}function kr(t){return function(e,n,r){var o=void 0!==e,i=void 0!==n,s=void 0!==r;return Cr(e)?i&&s?$n(t+e,n,r):$n(t+e,i?n:{}):s?$n(t+e,n,r):i?$n(t,e,n):$n(t,o?e:{})}}var xr=["a","altGlyph","altGlyphDef","altGlyphItem","animate","animateColor","animateMotion","animateTransform","circle","clipPath","colorProfile","cursor","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotlight","feTile","feTurbulence","filter","font","fontFace","fontFaceFormat","fontFaceName","fontFaceSrc","fontFaceUri","foreignObject","g","glyph","glyphRef","hkern","image","line","linearGradient","marker","mask","metadata","missingGlyph","mpath","path","pattern","polygon","polyline","radialGradient","rect","script","set","stop","style","switch","symbol","text","textPath","title","tref","tspan","use","view","vkern"],Ir=kr("svg");xr.forEach((function(t){Ir[t]=kr(t)}));var Pr=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dir","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","meta","nav","noscript","object","ol","optgroup","option","p","param","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","u","ul","video"],Tr={SVG_TAG_NAMES:xr,TAG_NAMES:Pr,svg:Ir,isSelector:Cr,createTagFunction:kr};Pr.forEach((function(t){Tr[t]=kr(t)}));var Mr=Tr.svg,Dr=Tr.a,Lr=Tr.abbr,Fr=Tr.address,Br=Tr.area,Rr=Tr.article,qr=Tr.aside,Ur=Tr.audio,Wr=Tr.b,Gr=Tr.base,Vr=Tr.bdi,Hr=Tr.bdo,Jr=Tr.blockquote,zr=Tr.body,Xr=Tr.br,Yr=Tr.button,Zr=Tr.canvas,Kr=Tr.caption,Qr=Tr.cite,to=Tr.code,eo=Tr.col,no=Tr.colgroup,ro=Tr.dd,oo=Tr.del,io=Tr.dfn,so=Tr.dir,ao=Tr.div,co=Tr.dl,uo=Tr.dt,lo=Tr.em,po=Tr.embed,fo=Tr.fieldset,ho=Tr.figcaption,yo=Tr.figure,mo=Tr.footer,vo=Tr.form,_o=Tr.h1,go=Tr.h2,bo=Tr.h3,wo=Tr.h4,So=Tr.h5,Ao=Tr.h6,Oo=Tr.head,Eo=Tr.header,$o=Tr.hgroup,jo=Tr.hr,No=Tr.html,Co=Tr.i,ko=Tr.iframe,xo=Tr.img,Io=Tr.input,Po=Tr.ins,To=Tr.kbd,Mo=Tr.keygen,Do=Tr.label,Lo=Tr.legend,Fo=Tr.li,Bo=Tr.link,Ro=Tr.main,qo=Tr.map,Uo=Tr.mark,Wo=Tr.menu,Go=Tr.meta,Vo=Tr.nav,Ho=Tr.noscript,Jo=Tr.object,zo=Tr.ol,Xo=Tr.optgroup,Yo=Tr.option,Zo=Tr.p,Ko=Tr.param,Qo=Tr.pre,ti=Tr.progress,ei=Tr.q,ni=Tr.rp,ri=Tr.rt,oi=Tr.ruby,ii=Tr.s,si=Tr.samp,ai=Tr.script,ci=Tr.section,ui=Tr.select,li=Tr.small,pi=Tr.source,fi=Tr.span,hi=Tr.strong,di=Tr.style,yi=Tr.sub,mi=Tr.sup,vi=Tr.table,_i=Tr.tbody,gi=Tr.td,bi=Tr.textarea,wi=Tr.tfoot,Si=Tr.th,Ai=Tr.thead,Oi=Tr.title,Ei=Tr.tr,$i=Tr.u,ji=Tr.ul,Ni=Tr.video;function Ci(t){const e=new EventTarget;return t.subscribe({next:t=>e.dispatchEvent(new CustomEvent("data",{detail:t}))}),{select:t=>{const n=!t,r=Array.isArray(t)?t:[t];let o;const i=oe.create({start:t=>{o=({detail:e})=>{const o=e&&e.data||null;(n||r.includes(e.type))&&t.next(o)},e.addEventListener("data",o)},stop:t=>e.removeEventListener("data",o)});return ae(i)}}}function ki(t){t.addListener({next:t=>{console.log(t)}})}function xi(t){return/^[a-zA-Z0-9-_]+$/.test(t)}function Ii(t){if("string"!=typeof t)throw new Error("Class name must be a string");return t.trim().split(" ").reduce(((t,e)=>{if(0===e.trim().length)return t;if(!xi(e))throw new Error(`${e} is not a valid CSS class name`);return t.push(e),t}),[])}var Pi={};Object.defineProperty(Pi,"__esModule",{value:!0});var Ti=n,Mi=function(){function t(t,e){this.dt=t,this.ins=e,this.type="throttle",this.out=null,this.id=null}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=null,this.id=null},t.prototype.clearInterval=function(){var t=this.id;null!==t&&clearInterval(t),this.id=null},t.prototype._n=function(t){var e=this,n=this.out;n&&(this.id||(n._n(t),this.id=setInterval((function(){e.clearInterval()}),this.dt)))},t.prototype._e=function(t){var e=this.out;e&&(this.clearInterval(),e._e(t))},t.prototype._c=function(){var t=this.out;t&&(this.clearInterval(),t._c())},t}();var Di=Pi.default=function(t){return function(e){return new Ti.Stream(new Mi(t,e))}};t.ABORT=Qe,t.MainDOMSource=or,t.MockedDOMSource=Nr,t.a=Dr,t.abbr=Lr,t.address=Fr,t.area=Br,t.article=Rr,t.aside=qr,t.audio=Ur,t.b=Wr,t.base=Gr,t.bdi=Vr,t.bdo=Hr,t.blockquote=Jr,t.body=zr,t.br=Xr,t.button=Yr,t.canvas=Zr,t.caption=Kr,t.cite=Qr,t.classes=function(...t){return t.reduce(((t,e)=>{var n,r;return"string"!=typeof e||t.includes(e)?Array.isArray(e)?t.push(...(r=e,r.map(Ii).flat())):"object"==typeof e&&t.push(...(n=e,Object.entries(n).filter((([t,e])=>"function"==typeof e?e():!!e)).map((([t,e])=>{const n=t.trim();if(!xi(n))throw new Error(`${n} is not a valid CSS class name`);return n})))):t.push(...Ii(e)),t}),[]).join(" ")},t.code=to,t.col=eo,t.colgroup=no,t.collection=Fe,t.component=function(t){const{name:e,sources:n,isolateOpts:r,stateSourceName:o="STATE"}=t;if(n&&"object"!=typeof n)throw new Error("Sources must be a Cycle.js sources object:",e);let i;i="string"==typeof r?{[o]:r}:!0===r?{}:r;const s=void 0===n;let a;if("object"==typeof i){const e=e=>{const n={...t,sources:e};return new tn(n).sinks};a=s?le(e,i):le(e,i)(n)}else a=s?e=>new tn({...t,sources:e}).sinks:new tn(t).sinks;return a},t.dd=ro,t.debounce=ze,t.del=oo,t.delay=Ge,t.dfn=io,t.dir=so,t.div=ao,t.dl=co,t.driverFromAsync=function(t,e={}){const{selector:n="category",args:r="value",return:o="value",pre:i=(t=>t),post:s=(t=>t)}=e,a=t.name||"[anonymous function]",c=typeof r;if(!("string"===c||"function"===c||Array.isArray(r)&&r.every((t=>"string"==typeof t))))throw new Error(`The 'args' option for driverFromAsync(${a}) must be a string, array of strings, or a function. Received ${c}`);if("string"!=typeof n)throw new Error(`The 'selector' option for driverFromAsync(${a}) must be a string. Received ${typeof n}`);return e=>{let c=null;const u=oe.create({start:t=>{c=t.next.bind(t)},stop:()=>{}});return e.addListener({next:e=>{const u=i(e);let l=[];if("object"==typeof u&&null!==u){if("function"==typeof r){const t=r(u);l=Array.isArray(t)?t:[t]}"string"==typeof r&&(l=[u[r]]),Array.isArray(r)&&(l=r.map((t=>u[t])))}const p=`Error in driver created using driverFromAsync(${a})`;t(...l).then((t=>{const r=t=>{let r;if(void 0===o)r=t,"object"==typeof r&&null!==r?r[n]=e[n]:console.warn(`The 'return' option for driverFromAsync(${a}) was not set, but the promise returned an non-object. The result will be returned as-is, but the '${n}' property will not be set, so will not be filtered by the 'select' method of the driver.`);else{if("string"!=typeof o)throw new Error(`The 'return' option for driverFromAsync(${a}) must be a string. Received ${typeof o}`);r={[o]:t,[n]:e[n]}}return r};if("function"==typeof t.then)t.then((t=>{const n=s(t,e);"function"==typeof n.then?n.then((t=>{c(r(t))})).catch((t=>console.error(`${p}: ${t}`))):c(r(rocessedOutgoing))})).catch((t=>console.error(`${p}: ${t}`)));else{const n=s(t,e);"function"==typeof n.then?n.then((t=>{c(r(t))})).catch((t=>console.error(`${p}: ${t}`))):c(r(n))}})).catch((t=>console.error(`${p}: ${t}`)))},error:t=>{console.error(`Error recieved from sink stream in driver created using driverFromAsync(${a}): ${t}`)},complete:()=>{console.warn(`Unexpected completion of sink stream to driver created using driverFromAsync(${a})`)}}),{select:t=>void 0===t?u:"function"==typeof t?u.filter(t):u.filter((e=>e?.[n]===t))}}},t.dropRepeats=ye,t.dt=uo,t.em=lo,t.embed=po,t.fieldset=fo,t.figcaption=ho,t.figure=yo,t.footer=mo,t.form=vo,t.h=$n,t.h1=_o,t.h2=go,t.h3=bo,t.h4=wo,t.h5=So,t.h6=Ao,t.head=Oo,t.header=Eo,t.hgroup=$o,t.hr=jo,t.html=No,t.i=Co,t.iframe=ko,t.img=xo,t.input=Io,t.ins=Po,t.kbd=To,t.keygen=Mo,t.label=Do,t.legend=Lo,t.li=Fo,t.link=Bo,t.main=Ro,t.makeDOMDriver=$r,t.map=qo,t.mark=Uo,t.menu=Wo,t.meta=Go,t.mockDOMSource=function(t){return new Nr(t)},t.nav=Vo,t.noscript=Ho,t.object=Jo,t.ol=zo,t.optgroup=Xo,t.option=Yo,t.p=Zo,t.param=Ko,t.pre=Qo,t.processForm=function(t,e={}){let{events:n=["input","submit"],preventDefault:r=!0}=e;"string"==typeof n&&(n=[n]);const o=n.map((e=>t.events(e)));return oe.merge(...o).map((t=>{r&&t.preventDefault();const e="submit"===t.type?t.srcElement:t.currentTarget,n=new FormData(e);let o={};o.event=t,o.eventType=t.type;const i=e.querySelector("input[type=submit]:focus");if(i){const{name:t,value:e}=i;o[t||"submit"]=e}for(let[t,e]of n.entries())o[t]=e;return o}))},t.progress=ti,t.q=ei,t.rp=ni,t.rt=ri,t.ruby=oi,t.run=function(t,e={},n={}){const{mountPoint:r="#root",fragments:o=!0}=n,i=function(t,e){return void 0===e&&(e="state"),function(n){var r=oe.create(),o=r.fold((function(t,e){return e(t)}),void 0).drop(1),i=n;i[e]=new we(o,e);var s=t(i);return s[e]&&Te(oe.fromObservable(s[e]),oe.never()).subscribe({next:function(t){return Le((function(){return r._n(t)}))},error:function(t){return Le((function(){return r._e(t)}))},complete:function(){return Le((function(){return r._c()}))}}),s}}(t,"STATE");return function(t,e){var n=un(t,e);return"undefined"!=typeof window&&window.CyclejsDevTool_startGraphSerializer&&window.CyclejsDevTool_startGraphSerializer(n.sinks),n.run()}(i,{...{EVENTS:Ci,DOM:$r(r,{snabbdomOptions:{experimental:{fragments:o}}}),LOG:ki},...e})},t.s=ii,t.samp=si,t.sampleCombine=fr,t.script=ai,t.section=ci,t.select=ui,t.small=li,t.source=pi,t.span=fi,t.strong=hi,t.style=di,t.sub=yi,t.sup=mi,t.svg=Mr,t.switchable=Be,t.table=vi,t.tbody=_i,t.td=gi,t.textarea=bi,t.tfoot=wi,t.th=Si,t.thead=Ai,t.throttle=Di,t.thunk=function(t,e,n,r){return void 0===r&&(r=n,n=e,e=void 0),$n(t,{key:e,hook:{init:Gn,prepatch:Vn},fn:n,args:r})},t.title=Oi,t.tr=Ei,t.u=$i,t.ul=ji,t.video=Ni,t.xs=oe}));
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).Sygnal={})}(this,(function(t){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n={},r={};!function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(t){var e,n=t.Symbol;if("function"==typeof n)if(n.observable)e=n.observable;else{e=n.for("https://github.com/benlesh/symbol-observable");try{n.observable=e}catch(t){}}else e="@@observable";return e}}(r);var o,i,s=r,a=Object.prototype.toString,c=function(t){var e=a.call(t),n="[object Arguments]"===e;return n||(n="[object Array]"!==e&&null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Function]"===a.call(t.callee)),n};var u=Array.prototype.slice,l=c,p=Object.keys,f=p?function(t){return p(t)}:function(){if(i)return o;var t;if(i=1,!Object.keys){var e=Object.prototype.hasOwnProperty,n=Object.prototype.toString,r=c,s=Object.prototype.propertyIsEnumerable,a=!s.call({toString:null},"toString"),u=s.call((function(){}),"prototype"),l=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],p=function(t){var e=t.constructor;return e&&e.prototype===t},f={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},h=function(){if("undefined"==typeof window)return!1;for(var t in window)try{if(!f["$"+t]&&e.call(window,t)&&null!==window[t]&&"object"==typeof window[t])try{p(window[t])}catch(t){return!0}}catch(t){return!0}return!1}();t=function(t){var o=null!==t&&"object"==typeof t,i="[object Function]"===n.call(t),s=r(t),c=o&&"[object String]"===n.call(t),f=[];if(!o&&!i&&!s)throw new TypeError("Object.keys called on a non-object");var d=u&&i;if(c&&t.length>0&&!e.call(t,0))for(var y=0;y<t.length;++y)f.push(String(y));if(s&&t.length>0)for(var m=0;m<t.length;++m)f.push(String(m));else for(var v in t)d&&"prototype"===v||!e.call(t,v)||f.push(String(v));if(a)for(var g=function(t){if("undefined"==typeof window||!h)return p(t);try{return p(t)}catch(t){return!1}}(t),_=0;_<l.length;++_)g&&"constructor"===l[_]||!e.call(t,l[_])||f.push(l[_]);return f}}return o=t}(),h=Object.keys;f.shim=function(){if(Object.keys){var t=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);t||(Object.keys=function(t){return l(t)?h(u.call(t)):h(t)})}else Object.keys=f;return Object.keys||f};var d,y=f,m="undefined"!=typeof Symbol&&Symbol,v=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var t={},e=Symbol("test"),n=Object(e);if("string"==typeof e)return!1;if("[object Symbol]"!==Object.prototype.toString.call(e))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(e in t[e]=42,t)return!1;if("function"==typeof Object.keys&&0!==Object.keys(t).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(t).length)return!1;var r=Object.getOwnPropertySymbols(t);if(1!==r.length||r[0]!==e)return!1;if(!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var o=Object.getOwnPropertyDescriptor(t,e);if(42!==o.value||!0!==o.enumerable)return!1}return!0},g={foo:{}},_=Object,b=Array.prototype.slice,w=Object.prototype.toString,S=function(t){var e=this;if("function"!=typeof e||"[object Function]"!==w.call(e))throw new TypeError("Function.prototype.bind called on incompatible "+e);for(var n,r=b.call(arguments,1),o=Math.max(0,e.length-r.length),i=[],s=0;s<o;s++)i.push("$"+s);if(n=Function("binder","return function ("+i.join(",")+"){ return binder.apply(this,arguments); }")((function(){if(this instanceof n){var o=e.apply(this,r.concat(b.call(arguments)));return Object(o)===o?o:this}return e.apply(t,r.concat(b.call(arguments)))})),e.prototype){var a=function(){};a.prototype=e.prototype,n.prototype=new a,a.prototype=null}return n},A=Function.prototype.bind||S,O=A.call(Function.call,Object.prototype.hasOwnProperty),E=SyntaxError,$=Function,j=TypeError,C=function(t){try{return $('"use strict"; return ('+t+").constructor;")()}catch(t){}},N=Object.getOwnPropertyDescriptor;if(N)try{N({},"")}catch(t){N=null}var k=function(){throw new j},x=N?function(){try{return k}catch(t){try{return N(arguments,"callee").get}catch(t){return k}}}():k,I="function"==typeof m&&"function"==typeof Symbol&&"symbol"==typeof m("foo")&&"symbol"==typeof Symbol("bar")&&v(),P={__proto__:g}.foo===g.foo&&!({__proto__:null}instanceof _),M=Object.getPrototypeOf||(P?function(t){return t.__proto__}:null),T={},D="undefined"!=typeof Uint8Array&&M?M(Uint8Array):d,L={"%AggregateError%":"undefined"==typeof AggregateError?d:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?d:ArrayBuffer,"%ArrayIteratorPrototype%":I&&M?M([][Symbol.iterator]()):d,"%AsyncFromSyncIteratorPrototype%":d,"%AsyncFunction%":T,"%AsyncGenerator%":T,"%AsyncGeneratorFunction%":T,"%AsyncIteratorPrototype%":T,"%Atomics%":"undefined"==typeof Atomics?d:Atomics,"%BigInt%":"undefined"==typeof BigInt?d:BigInt,"%BigInt64Array%":"undefined"==typeof BigInt64Array?d:BigInt64Array,"%BigUint64Array%":"undefined"==typeof BigUint64Array?d:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?d:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":"undefined"==typeof Float32Array?d:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?d:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?d:FinalizationRegistry,"%Function%":$,"%GeneratorFunction%":T,"%Int8Array%":"undefined"==typeof Int8Array?d:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?d:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?d:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":I&&M?M(M([][Symbol.iterator]())):d,"%JSON%":"object"==typeof JSON?JSON:d,"%Map%":"undefined"==typeof Map?d:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&I&&M?M((new Map)[Symbol.iterator]()):d,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?d:Promise,"%Proxy%":"undefined"==typeof Proxy?d:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":"undefined"==typeof Reflect?d:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?d:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&I&&M?M((new Set)[Symbol.iterator]()):d,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?d:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":I&&M?M(""[Symbol.iterator]()):d,"%Symbol%":I?Symbol:d,"%SyntaxError%":E,"%ThrowTypeError%":x,"%TypedArray%":D,"%TypeError%":j,"%Uint8Array%":"undefined"==typeof Uint8Array?d:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?d:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?d:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?d:Uint32Array,"%URIError%":URIError,"%WeakMap%":"undefined"==typeof WeakMap?d:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?d:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?d:WeakSet};if(M)try{null.error}catch(t){var F=M(M(t));L["%Error.prototype%"]=F}var B=function t(e){var n;if("%AsyncFunction%"===e)n=C("async function () {}");else if("%GeneratorFunction%"===e)n=C("function* () {}");else if("%AsyncGeneratorFunction%"===e)n=C("async function* () {}");else if("%AsyncGenerator%"===e){var r=t("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if("%AsyncIteratorPrototype%"===e){var o=t("%AsyncGenerator%");o&&M&&(n=M(o.prototype))}return L[e]=n,n},R={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},q=A,U=O,W=q.call(Function.call,Array.prototype.concat),G=q.call(Function.apply,Array.prototype.splice),V=q.call(Function.call,String.prototype.replace),z=q.call(Function.call,String.prototype.slice),H=q.call(Function.call,RegExp.prototype.exec),J=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,X=/\\(\\)?/g,Y=function(t,e){var n,r=t;if(U(R,r)&&(r="%"+(n=R[r])[0]+"%"),U(L,r)){var o=L[r];if(o===T&&(o=B(r)),void 0===o&&!e)throw new j("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:n,name:r,value:o}}throw new E("intrinsic "+t+" does not exist!")},Z=function(t,e){if("string"!=typeof t||0===t.length)throw new j("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof e)throw new j('"allowMissing" argument must be a boolean');if(null===H(/^%?[^%]*%?$/,t))throw new E("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(t){var e=z(t,0,1),n=z(t,-1);if("%"===e&&"%"!==n)throw new E("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==e)throw new E("invalid intrinsic syntax, expected opening `%`");var r=[];return V(t,J,(function(t,e,n,o){r[r.length]=n?V(o,X,"$1"):e||t})),r}(t),r=n.length>0?n[0]:"",o=Y("%"+r+"%",e),i=o.name,s=o.value,a=!1,c=o.alias;c&&(r=c[0],G(n,W([0,1],c)));for(var u=1,l=!0;u<n.length;u+=1){var p=n[u],f=z(p,0,1),h=z(p,-1);if(('"'===f||"'"===f||"`"===f||'"'===h||"'"===h||"`"===h)&&f!==h)throw new E("property names with quotes must have matching quotes");if("constructor"!==p&&l||(a=!0),U(L,i="%"+(r+="."+p)+"%"))s=L[i];else if(null!=s){if(!(p in s)){if(!e)throw new j("base intrinsic for "+t+" exists, but the property is not available.");return}if(N&&u+1>=n.length){var d=N(s,p);s=(l=!!d)&&"get"in d&&!("originalValue"in d.get)?d.get:s[p]}else l=U(s,p),s=s[p];l&&!a&&(L[i]=s)}}return s},K=Z("%Object.defineProperty%",!0),Q=function(){if(K)try{return K({},"a",{value:1}),!0}catch(t){return!1}return!1};Q.hasArrayLengthDefineBug=function(){if(!Q())return null;try{return 1!==K([],"length",{value:1}).length}catch(t){return!0}};var tt=Q,et=y,nt="function"==typeof Symbol&&"symbol"==typeof Symbol("foo"),rt=Object.prototype.toString,ot=Array.prototype.concat,it=Object.defineProperty,st=tt(),at=it&&st,ct=function(t,e,n,r){if(e in t)if(!0===r){if(t[e]===n)return}else if("function"!=typeof(o=r)||"[object Function]"!==rt.call(o)||!r())return;var o;at?it(t,e,{configurable:!0,enumerable:!1,value:n,writable:!0}):t[e]=n},ut=function(t,e){var n=arguments.length>2?arguments[2]:{},r=et(e);nt&&(r=ot.call(r,Object.getOwnPropertySymbols(e)));for(var o=0;o<r.length;o+=1)ct(t,r[o],e[r[o]],n[r[o]])};ut.supportsDescriptors=!!at;var lt=e,pt=function(){return"object"==typeof e&&e&&e.Math===Math&&e.Array===Array?e:lt},ft=ut,ht=pt,dt=ut,yt=e,mt=pt,vt=function(){var t=ht();if(ft.supportsDescriptors){var e=Object.getOwnPropertyDescriptor(t,"globalThis");e&&(!e.configurable||!e.enumerable&&e.writable&&globalThis===t)||Object.defineProperty(t,"globalThis",{configurable:!0,enumerable:!1,value:t,writable:!0})}else"object"==typeof globalThis&&globalThis===t||(t.globalThis=t);return t},gt=mt(),_t=function(){return gt};dt(_t,{getPolyfill:mt,implementation:yt,shim:vt});var bt,wt=_t,St=e&&e.__extends||(bt=function(t,e){return bt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])},bt(t,e)},function(t,e){function n(){this.constructor=t}bt(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(n,"__esModule",{value:!0}),n.NO_IL=n.NO=n.MemoryStream=ee=n.Stream=void 0;var At=s.default(wt.getPolyfill()),Ot={},Et=n.NO=Ot;function $t(){}function jt(t){for(var e=t.length,n=Array(e),r=0;r<e;++r)n[r]=t[r];return n}function Ct(t,e,n){try{return t.f(e)}catch(t){return n._e(t),Ot}}var Nt={_n:$t,_e:$t,_c:$t};function kt(t){t._start=function(t){t.next=t._n,t.error=t._e,t.complete=t._c,this.start(t)},t._stop=t.stop}n.NO_IL=Nt;var xt=function(){function t(t,e){this._stream=t,this._listener=e}return t.prototype.unsubscribe=function(){this._stream._remove(this._listener)},t}(),It=function(){function t(t){this._listener=t}return t.prototype.next=function(t){this._listener._n(t)},t.prototype.error=function(t){this._listener._e(t)},t.prototype.complete=function(){this._listener._c()},t}(),Pt=function(){function t(t){this.type="fromObservable",this.ins=t,this.active=!1}return t.prototype._start=function(t){this.out=t,this.active=!0,this._sub=this.ins.subscribe(new It(t)),this.active||this._sub.unsubscribe()},t.prototype._stop=function(){this._sub&&this._sub.unsubscribe(),this.active=!1},t}(),Mt=function(){function t(t){this.type="merge",this.insArr=t,this.out=Ot,this.ac=0}return t.prototype._start=function(t){this.out=t;var e=this.insArr,n=e.length;this.ac=n;for(var r=0;r<n;r++)e[r]._add(this)},t.prototype._stop=function(){for(var t=this.insArr,e=t.length,n=0;n<e;n++)t[n]._remove(this);this.out=Ot},t.prototype._n=function(t){var e=this.out;e!==Ot&&e._n(t)},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){if(--this.ac<=0){var t=this.out;if(t===Ot)return;t._c()}},t}(),Tt=function(){function t(t,e,n){this.i=t,this.out=e,this.p=n,n.ils.push(this)}return t.prototype._n=function(t){var e=this.p,n=this.out;if(n!==Ot&&e.up(t,this.i)){var r=jt(e.vals);n._n(r)}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.p;t.out!==Ot&&0==--t.Nc&&t.out._c()},t}(),Dt=function(){function t(t){this.type="combine",this.insArr=t,this.out=Ot,this.ils=[],this.Nc=this.Nn=0,this.vals=[]}return t.prototype.up=function(t,e){var n=this.vals[e],r=this.Nn?n===Ot?--this.Nn:this.Nn:0;return this.vals[e]=t,0===r},t.prototype._start=function(t){this.out=t;var e=this.insArr,n=this.Nc=this.Nn=e.length,r=this.vals=new Array(n);if(0===n)t._n([]),t._c();else for(var o=0;o<n;o++)r[o]=Ot,e[o]._add(new Tt(o,t,this))},t.prototype._stop=function(){for(var t=this.insArr,e=t.length,n=this.ils,r=0;r<e;r++)t[r]._remove(n[r]);this.out=Ot,this.ils=[],this.vals=[]},t}(),Lt=function(){function t(t){this.type="fromArray",this.a=t}return t.prototype._start=function(t){for(var e=this.a,n=0,r=e.length;n<r;n++)t._n(e[n]);t._c()},t.prototype._stop=function(){},t}(),Ft=function(){function t(t){this.type="fromPromise",this.on=!1,this.p=t}return t.prototype._start=function(t){var e=this;this.on=!0,this.p.then((function(n){e.on&&(t._n(n),t._c())}),(function(e){t._e(e)})).then($t,(function(t){setTimeout((function(){throw t}))}))},t.prototype._stop=function(){this.on=!1},t}(),Bt=function(){function t(t){this.type="periodic",this.period=t,this.intervalID=-1,this.i=0}return t.prototype._start=function(t){var e=this;this.intervalID=setInterval((function(){t._n(e.i++)}),this.period)},t.prototype._stop=function(){-1!==this.intervalID&&clearInterval(this.intervalID),this.intervalID=-1,this.i=0},t}(),Rt=function(){function t(t,e){this.type="debug",this.ins=t,this.out=Ot,this.s=$t,this.l="","string"==typeof e?this.l=e:"function"==typeof e&&(this.s=e)}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=this.s,r=this.l;if(n!==$t)try{n(t)}catch(t){e._e(t)}else r?console.log(r+":",t):console.log(t);e._n(t)}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),qt=function(){function t(t,e){this.type="drop",this.ins=e,this.out=Ot,this.max=t,this.dropped=0}return t.prototype._start=function(t){this.out=t,this.dropped=0,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;e!==Ot&&this.dropped++>=this.max&&e._n(t)},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),Ut=function(){function t(t,e){this.out=t,this.op=e}return t.prototype._n=function(){this.op.end()},t.prototype._e=function(t){this.out._e(t)},t.prototype._c=function(){this.op.end()},t}(),Wt=function(){function t(t,e){this.type="endWhen",this.ins=e,this.out=Ot,this.o=t,this.oil=Nt}return t.prototype._start=function(t){this.out=t,this.o._add(this.oil=new Ut(t,this)),this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.o._remove(this.oil),this.out=Ot,this.oil=Nt},t.prototype.end=function(){var t=this.out;t!==Ot&&t._c()},t.prototype._n=function(t){var e=this.out;e!==Ot&&e._n(t)},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){this.end()},t}(),Gt=function(){function t(t,e){this.type="filter",this.ins=e,this.out=Ot,this.f=t}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=Ct(this,t,e);n!==Ot&&n&&e._n(t)}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),Vt=function(){function t(t,e){this.out=t,this.op=e}return t.prototype._n=function(t){this.out._n(t)},t.prototype._e=function(t){this.out._e(t)},t.prototype._c=function(){this.op.inner=Ot,this.op.less()},t}(),zt=function(){function t(t){this.type="flatten",this.ins=t,this.out=Ot,this.open=!0,this.inner=Ot,this.il=Nt}return t.prototype._start=function(t){this.out=t,this.open=!0,this.inner=Ot,this.il=Nt,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.inner!==Ot&&this.inner._remove(this.il),this.out=Ot,this.open=!0,this.inner=Ot,this.il=Nt},t.prototype.less=function(){var t=this.out;t!==Ot&&(this.open||this.inner!==Ot||t._c())},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=this.inner,r=this.il;n!==Ot&&r!==Nt&&n._remove(r),(this.inner=t)._add(this.il=new Vt(e,this))}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){this.open=!1,this.less()},t}(),Ht=function(){function t(t,e,n){var r=this;this.type="fold",this.ins=n,this.out=Ot,this.f=function(e){return t(r.acc,e)},this.acc=this.seed=e}return t.prototype._start=function(t){this.out=t,this.acc=this.seed,t._n(this.acc),this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot,this.acc=this.seed},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=Ct(this,t,e);n!==Ot&&e._n(this.acc=n)}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),Jt=function(){function t(t){this.type="last",this.ins=t,this.out=Ot,this.has=!1,this.val=Ot}return t.prototype._start=function(t){this.out=t,this.has=!1,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot,this.val=Ot},t.prototype._n=function(t){this.has=!0,this.val=t},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&(this.has?(t._n(this.val),t._c()):t._e(new Error("last() failed because input stream completed")))},t}(),Xt=function(){function t(t,e){this.type="map",this.ins=e,this.out=Ot,this.f=t}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=Ct(this,t,e);n!==Ot&&e._n(n)}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),Yt=function(){function t(t){this.type="remember",this.ins=t,this.out=Ot}return t.prototype._start=function(t){this.out=t,this.ins._add(t)},t.prototype._stop=function(){this.ins._remove(this.out),this.out=Ot},t}(),Zt=function(){function t(t,e){this.type="replaceError",this.ins=e,this.out=Ot,this.f=t}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;e!==Ot&&e._n(t)},t.prototype._e=function(t){var e=this.out;if(e!==Ot)try{this.ins._remove(this),(this.ins=this.f(t))._add(this)}catch(t){e._e(t)}},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),Kt=function(){function t(t,e){this.type="startWith",this.ins=t,this.out=Ot,this.val=e}return t.prototype._start=function(t){this.out=t,this.out._n(this.val),this.ins._add(t)},t.prototype._stop=function(){this.ins._remove(this.out),this.out=Ot},t}(),Qt=function(){function t(t,e){this.type="take",this.ins=e,this.out=Ot,this.max=t,this.taken=0}return t.prototype._start=function(t){this.out=t,this.taken=0,this.max<=0?t._c():this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=Ot},t.prototype._n=function(t){var e=this.out;if(e!==Ot){var n=++this.taken;n<this.max?e._n(t):n===this.max&&(e._n(t),e._c())}},t.prototype._e=function(t){var e=this.out;e!==Ot&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==Ot&&t._c()},t}(),te=function(){function t(t){this._prod=t||Ot,this._ils=[],this._stopID=Ot,this._dl=Ot,this._d=!1,this._target=null,this._err=Ot}return t.prototype._n=function(t){var e=this._ils,n=e.length;if(this._d&&this._dl._n(t),1==n)e[0]._n(t);else{if(0==n)return;for(var r=jt(e),o=0;o<n;o++)r[o]._n(t)}},t.prototype._e=function(t){if(this._err===Ot){this._err=t;var e=this._ils,n=e.length;if(this._x(),this._d&&this._dl._e(t),1==n)e[0]._e(t);else{if(0==n)return;for(var r=jt(e),o=0;o<n;o++)r[o]._e(t)}if(!this._d&&0==n)throw this._err}},t.prototype._c=function(){var t=this._ils,e=t.length;if(this._x(),this._d&&this._dl._c(),1==e)t[0]._c();else{if(0==e)return;for(var n=jt(t),r=0;r<e;r++)n[r]._c()}},t.prototype._x=function(){0!==this._ils.length&&(this._prod!==Ot&&this._prod._stop(),this._err=Ot,this._ils=[])},t.prototype._stopNow=function(){this._prod._stop(),this._err=Ot,this._stopID=Ot},t.prototype._add=function(t){var e=this._target;if(e)return e._add(t);var n=this._ils;if(n.push(t),!(n.length>1))if(this._stopID!==Ot)clearTimeout(this._stopID),this._stopID=Ot;else{var r=this._prod;r!==Ot&&r._start(this)}},t.prototype._remove=function(t){var e=this,n=this._target;if(n)return n._remove(t);var r=this._ils,o=r.indexOf(t);o>-1&&(r.splice(o,1),this._prod!==Ot&&r.length<=0?(this._err=Ot,this._stopID=setTimeout((function(){return e._stopNow()}))):1===r.length&&this._pruneCycles())},t.prototype._pruneCycles=function(){this._hasNoSinks(this,[])&&this._remove(this._ils[0])},t.prototype._hasNoSinks=function(t,e){if(-1!==e.indexOf(t))return!0;if(t.out===this)return!0;if(t.out&&t.out!==Ot)return this._hasNoSinks(t.out,e.concat(t));if(t._ils){for(var n=0,r=t._ils.length;n<r;n++)if(!this._hasNoSinks(t._ils[n],e.concat(t)))return!1;return!0}return!1},t.prototype.ctor=function(){return this instanceof ne?ne:t},t.prototype.addListener=function(t){t._n=t.next||$t,t._e=t.error||$t,t._c=t.complete||$t,this._add(t)},t.prototype.removeListener=function(t){this._remove(t)},t.prototype.subscribe=function(t){return this.addListener(t),new xt(this,t)},t.prototype[At]=function(){return this},t.create=function(e){if(e){if("function"!=typeof e.start||"function"!=typeof e.stop)throw new Error("producer requires both start and stop functions");kt(e)}return new t(e)},t.createWithMemory=function(t){return t&&kt(t),new ne(t)},t.never=function(){return new t({_start:$t,_stop:$t})},t.empty=function(){return new t({_start:function(t){t._c()},_stop:$t})},t.throw=function(e){return new t({_start:function(t){t._e(e)},_stop:$t})},t.from=function(e){if("function"==typeof e[At])return t.fromObservable(e);if("function"==typeof e.then)return t.fromPromise(e);if(Array.isArray(e))return t.fromArray(e);throw new TypeError("Type of input to from() must be an Array, Promise, or Observable")},t.of=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return t.fromArray(e)},t.fromArray=function(e){return new t(new Lt(e))},t.fromPromise=function(e){return new t(new Ft(e))},t.fromObservable=function(e){if(void 0!==e.endWhen)return e;var n="function"==typeof e[At]?e[At]():e;return new t(new Pt(n))},t.periodic=function(e){return new t(new Bt(e))},t.prototype._map=function(t){return new(this.ctor())(new Xt(t,this))},t.prototype.map=function(t){return this._map(t)},t.prototype.mapTo=function(t){var e=this.map((function(){return t}));return e._prod.type="mapTo",e},t.prototype.filter=function(e){var n,r,o=this._prod;return new t(o instanceof Gt?new Gt((n=o.f,r=e,function(t){return n(t)&&r(t)}),o.ins):new Gt(e,this))},t.prototype.take=function(t){return new(this.ctor())(new Qt(t,this))},t.prototype.drop=function(e){return new t(new qt(e,this))},t.prototype.last=function(){return new t(new Jt(this))},t.prototype.startWith=function(t){return new ne(new Kt(this,t))},t.prototype.endWhen=function(t){return new(this.ctor())(new Wt(t,this))},t.prototype.fold=function(t,e){return new ne(new Ht(t,e,this))},t.prototype.replaceError=function(t){return new(this.ctor())(new Zt(t,this))},t.prototype.flatten=function(){return new t(new zt(this))},t.prototype.compose=function(t){return t(this)},t.prototype.remember=function(){return new ne(new Yt(this))},t.prototype.debug=function(t){return new(this.ctor())(new Rt(this,t))},t.prototype.imitate=function(t){if(t instanceof ne)throw new Error("A MemoryStream was given to imitate(), but it only supports a Stream. Read more about this restriction here: https://github.com/staltz/xstream#faq");this._target=t;for(var e=this._ils,n=e.length,r=0;r<n;r++)t._add(e[r]);this._ils=[]},t.prototype.shamefullySendNext=function(t){this._n(t)},t.prototype.shamefullySendError=function(t){this._e(t)},t.prototype.shamefullySendComplete=function(){this._c()},t.prototype.setDebugListener=function(t){t?(this._d=!0,t._n=t.next||$t,t._e=t.error||$t,t._c=t.complete||$t,this._dl=t):(this._d=!1,this._dl=Ot)},t.merge=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return new t(new Mt(e))},t.combine=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return new t(new Dt(e))},t}(),ee=n.Stream=te,ne=function(t){function e(e){var n=t.call(this,e)||this;return n._has=!1,n}return St(e,t),e.prototype._n=function(e){this._v=e,this._has=!0,t.prototype._n.call(this,e)},e.prototype._add=function(t){var e=this._target;if(e)return e._add(t);var n=this._ils;if(n.push(t),n.length>1)this._has&&t._n(this._v);else if(this._stopID!==Ot)this._has&&t._n(this._v),clearTimeout(this._stopID),this._stopID=Ot;else if(this._has)t._n(this._v);else{var r=this._prod;r!==Ot&&r._start(this)}},e.prototype._stopNow=function(){this._has=!1,t.prototype._stopNow.call(this)},e.prototype._x=function(){this._has=!1,t.prototype._x.call(this)},e.prototype.map=function(t){return this._map(t)},e.prototype.mapTo=function(e){return t.prototype.mapTo.call(this,e)},e.prototype.take=function(e){return t.prototype.take.call(this,e)},e.prototype.endWhen=function(e){return t.prototype.endWhen.call(this,e)},e.prototype.replaceError=function(e){return t.prototype.replaceError.call(this,e)},e.prototype.remember=function(){return this},e.prototype.debug=function(e){return t.prototype.debug.call(this,e)},e}(te);n.MemoryStream=ne;var re=te,oe=n.default=re,ie={};function se(){var t;return(t="undefined"!=typeof window?window:void 0!==e?e:this).Cyclejs=t.Cyclejs||{},(t=t.Cyclejs).adaptStream=t.adaptStream||function(t){return t},t}Object.defineProperty(ie,"__esModule",{value:!0}),ie.setAdapt=function(t){se().adaptStream=t};var ae=ie.adapt=function(t){return se().adaptStream(t)};var ce=0;function ue(){return"cycle"+ ++ce}function le(t,e){void 0===e&&(e=ue()),function(t,e){if("function"!=typeof t)throw new Error("First argument given to isolate() must be a 'dataflowComponent' function");if(null===e)throw new Error("Second argument given to isolate() must not be null")}(t,e);var n="object"==typeof e?ue():"",r="string"==typeof e||"object"==typeof e?e:e.toString();return function(e){for(var o=[],i=1;i<arguments.length;i++)o[i-1]=arguments[i];var s=function(t,e,n){var r={};return Object.keys(t).forEach((function(t){if("string"!=typeof e){var o=e[t];if(void 0===o){var i=e["*"];r[t]=void 0===i?n:i}else r[t]=o}else r[t]=e})),r}(e,r,n),a=function(t,e){var n={};for(var r in t){var o=t[r];t.hasOwnProperty(r)&&o&&null!==e[r]&&"function"==typeof o.isolateSource?n[r]=o.isolateSource(o,e[r]):t.hasOwnProperty(r)&&(n[r]=t[r])}return n}(e,s),c=function(t,e,n){var r={};for(var o in e){var i=t[o],s=e[o];e.hasOwnProperty(o)&&i&&null!==n[o]&&"function"==typeof i.isolateSink?r[o]=ae(i.isolateSink(oe.fromObservable(s),n[o])):e.hasOwnProperty(o)&&(r[o]=e[o])}return r}(e,t.apply(void 0,[a].concat(o)),s);return c}}le.reset=function(){return ce=0};var pe={};Object.defineProperty(pe,"__esModule",{value:!0}),pe.DropRepeatsOperator=void 0;var fe=n,he={},de=function(){function t(t,e){this.ins=t,this.type="dropRepeats",this.out=null,this.v=he,this.isEq=e||function(t,e){return t===e}}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=null,this.v=he},t.prototype._n=function(t){var e=this.out;if(e){var n=this.v;n!==he&&this.isEq(t,n)||(this.v=t,e._n(t))}},t.prototype._e=function(t){var e=this.out;e&&e._e(t)},t.prototype._c=function(){var t=this.out;t&&t._c()},t}();pe.DropRepeatsOperator=de;var ye=pe.default=function(t){return void 0===t&&(t=void 0),function(e){return new fe.Stream(new de(e,t))}},me=function(){return me=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},me.apply(this,arguments)};function ve(t){return"string"==typeof t||"number"==typeof t?function(e){return void 0===e?void 0:e[t]}:t.get}function ge(t){return"string"==typeof t||"number"==typeof t?function(e,n){var r,o;return Array.isArray(e)?function(t,e,n){if(n===t[e])return t;var r=parseInt(e);return void 0===n?t.filter((function(t,e){return e!==r})):t.map((function(t,e){return e===r?n:t}))}(e,t,n):void 0===e?((r={})[t]=n,r):me({},e,((o={})[t]=n,o))}:t.set}function _e(t,e){return t.select(e)}function be(t,e){var n=ve(e),r=ge(e);return t.map((function(t){return function(e){var o=n(e),i=t(o);return o===i?e:r(e,i)}}))}var we=function(){function t(t,e){this.isolateSource=_e,this.isolateSink=be,this._stream=t.filter((function(t){return void 0!==t})).compose(ye()).remember(),this._name=e,this.stream=ae(this._stream),this._stream._isCycleSource=e}return t.prototype.select=function(e){var n=ve(e);return new t(this._stream.map(n),this._name)},t}(),Se=function(){function t(t,e,n){this.ins=n,this.out=t,this.p=e}return t.prototype._n=function(t){this.p;var e=this.out;null!==e&&e._n(t)},t.prototype._e=function(t){var e=this.out;null!==e&&e._e(t)},t.prototype._c=function(){},t}(),Ae=function(){function t(t,e){this.type="pickMerge",this.ins=e,this.out=null,this.sel=t,this.ils=new Map,this.inst=null}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this);var t=this.ils;t.forEach((function(e,n){e.ins._remove(e),e.ins=null,e.out=null,t.delete(n)})),t.clear(),this.out=null,this.ils=new Map,this.inst=null},t.prototype._n=function(t){this.inst=t;for(var e=t.arr,n=this.ils,r=this.out,o=this.sel,i=e.length,s=0;s<i;++s){var a=e[s],c=a._key,u=oe.fromObservable(a[o]||oe.never());n.has(c)||(n.set(c,new Se(r,this,u)),u._add(n.get(c)))}n.forEach((function(e,r){t.dict.has(r)&&t.dict.get(r)||(e.ins._remove(e),e.ins=null,e.out=null,n.delete(r))}))},t.prototype._e=function(t){var e=this.out;null!==e&&e._e(t)},t.prototype._c=function(){var t=this.out;null!==t&&t._c()},t}();var Oe=function(){function t(t,e,n,r){this.key=t,this.out=e,this.p=n,this.val=Et,this.ins=r}return t.prototype._n=function(t){this.p;var e=this.out;this.val=t,null!==e&&this.p.up()},t.prototype._e=function(t){var e=this.out;null!==e&&e._e(t)},t.prototype._c=function(){},t}(),Ee=function(){function t(t,e){this.type="combine",this.ins=e,this.sel=t,this.out=null,this.ils=new Map,this.inst=null}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this);var t=this.ils;t.forEach((function(t){t.ins._remove(t),t.ins=null,t.out=null,t.val=null})),t.clear(),this.out=null,this.ils=new Map,this.inst=null},t.prototype.up=function(){for(var t=this.inst.arr,e=t.length,n=this.ils,r=Array(e),o=0;o<e;++o){var i=t[o]._key;if(!n.has(i))return;var s=n.get(i).val;if(s===Et)return;r[o]=s}this.out._n(r)},t.prototype._n=function(t){this.inst=t;var e=t.arr,n=this.ils,r=this.out,o=this.sel,i=t.dict,s=e.length,a=!1;if(n.forEach((function(t,e){i.has(e)||(t.ins._remove(t),t.ins=null,t.out=null,t.val=null,n.delete(e),a=!0)})),0!==s){for(var c=0;c<s;++c){var u=e[c],l=u._key;if(!u[o])throw new Error("pickCombine found an undefined child sink stream");var p=oe.fromObservable(u[o]);n.has(l)||(n.set(l,new Oe(l,r,this,p)),p._add(n.get(l)))}a&&this.up()}else r._n([])},t.prototype._e=function(t){var e=this.out;null!==e&&e._e(t)},t.prototype._c=function(){var t=this.out;null!==t&&t._c()},t}();var $e=function(){return $e=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},$e.apply(this,arguments)},je=function(){function t(t){this._instances$=t}return t.prototype.pickMerge=function(t){return ae(this._instances$.compose(function(t){return function(e){return new ee(new Ae(t,e))}}(t)))},t.prototype.pickCombine=function(t){return ae(this._instances$.compose(function(t){return function(e){return new ee(new Ee(t,e))}}(t)))},t}();function Ce(t){return{"*":null}}function Ne(t,e){return{get:function(n){if(void 0!==n)for(var r=0,o=n.length;r<o;++r)if(""+t(n[r],r)===e)return n[r]},set:function(n,r){return void 0===n?[r]:void 0===r?n.filter((function(n,r){return""+t(n,r)!==e})):n.map((function(n,o){return""+t(n,o)===e?r:n}))}}}var ke={get:function(t){return t},set:function(t,e){return e}};var xe={};Object.defineProperty(xe,"__esModule",{value:!0});var Ie=n,Pe=function(){function t(t){this.streams=t,this.type="concat",this.out=null,this.i=0}return t.prototype._start=function(t){this.out=t,this.streams[this.i]._add(this)},t.prototype._stop=function(){var t=this.streams;this.i<t.length&&t[this.i]._remove(this),this.i=0,this.out=null},t.prototype._n=function(t){var e=this.out;e&&e._n(t)},t.prototype._e=function(t){var e=this.out;e&&e._e(t)},t.prototype._c=function(){var t=this.out;if(t){var e=this.streams;e[this.i]._remove(this),++this.i<e.length?e[this.i]._add(this):t._c()}},t}();var Me=xe.default=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new Ie.Stream(new Pe(t))},Te={};Object.defineProperty(Te,"__esModule",{value:!0});var De=Te.default=function(){return"undefined"!=typeof queueMicrotask?queueMicrotask:"undefined"!=typeof setImmediate?setImmediate:"undefined"!=typeof process?process.nextTick:setTimeout},Le=De();function Fe(t,e,n={}){const{combineList:r=["DOM"],globalList:o=["EVENTS"],stateSourceName:i="STATE",domSourceName:s="DOM",container:a="div",containerClass:c}=n;return n=>{const u=Date.now(),l={item:t,itemKey:(t,e)=>void 0!==t.id?t.id:e,itemScope:t=>t,channel:i,collectSinks:t=>Object.entries(n).reduce(((e,[n,o])=>{if(r.includes(n)){const r=t.pickCombine(n);n===s&&a?e[s]=r.map((t=>({sel:a,data:c?{props:{className:c}}:{},children:t,key:u,text:void 0,elm:void 0}))):e[n]=r}else e[n]=t.pickMerge(n);return e}),{})},p={[i]:e};return o.forEach((t=>p[t]=null)),r.forEach((t=>p[t]=null)),function(t,e,n){return le(function(t){return function(e){var n=t.channel||"state",r=t.itemKey,o=t.itemScope||Ce,i=oe.fromObservable(e[n].stream).fold((function(i,s){var a,c,u,l,p,f=i.dict;if(Array.isArray(s)){for(var h=Array(s.length),d=new Set,y=0,m=s.length;y<m;++y){var v=""+(r?r(s[y],y):y);if(d.add(v),f.has(v))h[y]=f.get(v);else{var g=r?Ne(r,v):""+y,_="string"==typeof(p=o(v))?((a={"*":p})[n]=g,a):$e({},p,((c={})[n]=g,c)),b=le(t.itemFactory?t.itemFactory(s[y],y):t.item,_)(e);f.set(v,b),h[y]=b}h[y]._key=v}return f.forEach((function(t,e){d.has(e)||f.delete(e)})),d.clear(),{dict:f,arr:h}}return f.clear(),v=""+(r?r(s,0):"this"),g=ke,_="string"==typeof(p=o(v))?((u={"*":p})[n]=g,u):$e({},p,((l={})[n]=g,l)),b=le(t.itemFactory?t.itemFactory(s,0):t.item,_)(e),f.set(v,b),{dict:f,arr:[b]}}),{dict:new Map,arr:[]});return t.collectSinks(new je(i))}}(t),e)(n)}(l,p,n)}}function Be(t,e,n,r={}){const{switched:o=["DOM"],stateSourceName:i="STATE"}=r,s=typeof e;if(!e)throw new Error("Missing 'name$' parameter for switchable()");if(!("string"===s||"function"===s||e instanceof ee))throw new Error("Invalid 'name$' parameter for switchable(): expects Stream, String, or Function");if(e instanceof ee){const r=e.compose(ye()).startWith(n).remember();return e=>Re(t,e,r,o)}{const r="function"===s&&e||(t=>t[e]);return e=>{const s=e&&("string"==typeof i&&e[i]||e.STATE||e.state).stream;if(!s instanceof ee)throw new Error(`Could not find the state source: ${i}`);const a=s.map(r).filter((t=>"string"==typeof t)).compose(ye()).startWith(n).remember();return Re(t,e,a,o,i)}}}function Re(t,e,n,r=["DOM"],o="STATE"){"string"==typeof r&&(r=[r]);const i=Object.entries(t).map((([t,r])=>{if(e[o]){const i=e[o].stream,s=oe.combine(n,i).filter((([e,n])=>e==t)).map((([t,e])=>e)).remember(),a=new e[o].constructor(s,e[o]._name);return[t,r({...e,state:a})]}return[t,r(e)]}));return Object.keys(e).reduce(((t,e)=>{if(r.includes(e))t[e]=n.map((t=>{const n=i.find((([e,n])=>e===t));return n&&n[1][e]||oe.never()})).flatten().remember().startWith(void 0);else{const n=i.filter((([t,n])=>void 0!==n[e])).map((([t,n])=>n[e]));t[e]=oe.merge(...n)}return t}),{})}var qe={};Object.defineProperty(qe,"__esModule",{value:!0});var Ue=n,We=function(){function t(t,e){this.dt=t,this.ins=e,this.type="delay",this.out=null}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=null},t.prototype._n=function(t){var e=this.out;if(e)var n=setInterval((function(){e._n(t),clearInterval(n)}),this.dt)},t.prototype._e=function(t){var e=this.out;if(e)var n=setInterval((function(){e._e(t),clearInterval(n)}),this.dt)},t.prototype._c=function(){var t=this.out;if(t)var e=setInterval((function(){t._c(),clearInterval(e)}),this.dt)},t}();var Ge=qe.default=function(t){return function(e){return new Ue.Stream(new We(t,e))}},Ve={};Object.defineProperty(Ve,"__esModule",{value:!0});var ze=n,He=function(){function t(t,e){this.dt=t,this.ins=e,this.type="debounce",this.out=null,this.id=null,this.t=ze.NO}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=null,this.clearInterval()},t.prototype.clearInterval=function(){var t=this.id;null!==t&&clearInterval(t),this.id=null},t.prototype._n=function(t){var e=this,n=this.out;n&&(this.clearInterval(),this.t=t,this.id=setInterval((function(){e.clearInterval(),n._n(t),e.t=ze.NO}),this.dt))},t.prototype._e=function(t){var e=this.out;e&&(this.clearInterval(),e._e(t))},t.prototype._c=function(){var t=this.out;t&&(this.clearInterval(),this.t!=ze.NO&&t._n(this.t),this.t=ze.NO,t._c())},t}();var Je=Ve.default=function(t){return function(e){return new ze.Stream(new He(t,e))}};const Xe="undefined"!=typeof window&&window||process&&process.env||{},Ye="request",Ze="INITIALIZE";let Ke=0;const Qe="~#~#~ABORT~#~#~";class tn{constructor({name:t="NO NAME",sources:e,intent:n,request:r,model:o,response:i,view:s,children:a={},components:c={},initialState:u,calculated:l,storeCalculatedInState:p=!0,DOMSourceName:f="DOM",stateSourceName:h="STATE",requestSourceName:d="HTTP",debug:y=!1}){if(!e||"object"!=typeof e)throw new Error("Missing or invalid sources");this.name=t,this.sources=e,this.intent=n,this.request=r,this.model=o,this.response=i,this.view=s,this.children=a,this.components=c,this.initialState=u,this.calculated=l,this.storeCalculatedInState=p,this.DOMSourceName=f,this.stateSourceName=h,this.requestSourceName=d,this.sourceNames=Object.keys(e),this._debug=y,this.isSubComponent=this.sourceNames.includes("props$");const m=e[h]&&e[h].stream;var v;m&&(this.currentState=u||{},this.sources[this.stateSourceName]=new we(m.map((t=>(this.currentState=t,t))))),this.isSubComponent||void 0!==this.intent||void 0!==this.model||(this.initialState=u||!0,this.intent=t=>({__NOOP_ACTION__:oe.never()}),this.model={__NOOP_ACTION__:t=>t}),this.addCalculated=this.createMemoizedAddCalculated(),this.log=(v=t,function(t){const e="function"==typeof t?t:e=>t;return t=>t.debug((t=>{this.debug&&console.log(`[${v}] ${e(t)}`)}))}),this.initIntent$(),this.initAction$(),this.initResponse$(),this.initState(),this.initModel$(),this.initSendResponse$(),this.initChildren$(),this.initSubComponentSink$(),this.initSubComponentsRendered$(),this.initVdom$(),this.initSinks(),this.sinks.__index=Ke++,y&&console.log(`[${this.name}] Instantiated (#${this.sinks.__index})`)}get debug(){return this._debug||"true"===Xe.DEBUG||!0===Xe.DEBUG}initIntent$(){if(this.intent){if("function"!=typeof this.intent)throw new Error("Intent must be a function");if(this.intent$=this.intent(this.sources),!(this.intent$ instanceof ee)&&"object"!=typeof this.intent$)throw new Error("Intent must return either an action$ stream or map of event streams")}}initAction$(){const t=this.sources&&this.sources[this.requestSourceName]||null;if(!this.intent$)return void(this.action$=oe.never());let e;if(this.intent$ instanceof ee)e=this.intent$;else{const t=Object.entries(this.intent$).map((([t,e])=>e.map((e=>({type:t,data:e})))));e=oe.merge(oe.never(),...t)}const n=e instanceof ee?e:e.apply&&e(this.sources)||oe.never(),r=oe.of({type:"BOOTSTRAP"}).compose(Ge(10)),o=Me(r,n);let i;i=t&&"function"==typeof t.select?t.select("initial").flatten():oe.never();const s=i.map((t=>({type:"HYDRATE",data:t})));this.action$=oe.merge(o,s).compose(this.log((({type:t})=>`Action triggered: <${t}>`)))}initResponse$(){if(void 0===this.request)return;if("object"!=typeof this.request)throw new Error("The request parameter must be an object");const t=this.sources[this.requestSourceName],e=Object.entries(this.request).reduce(((e,[n,r])=>{const o=n.toLowerCase();if("function"!=typeof t[o])throw new Error("Invalid method in request object:",n);const i=Object.entries(r).reduce(((e,[n,r])=>{const i=`[${o.toUpperCase()}]:${n||"none"}`,s=typeof r;if("undefined"===s)throw new Error(`Action for '${n}' route in request object not specified`);if("string"!==s&&"function"!==s)throw new Error(`Invalid action for '${n}' route: expecting string or function`);const a="function"===s?"[ FUNCTION ]":`< ${r} >`;console.log(`[${this.name}] Adding ${this.requestSourceName} route:`,o.toUpperCase(),`'${n}' <${a}>`);const c=t[o](n).compose(ye(((t,e)=>t.id==e.id))).map((t=>{if(!t||!t.id)throw new Error(`No id found in request: ${i}`);try{const e=t.id,n=(t.params,t.body),o=(t.cookies,"function"===s?"FUNCTION":r),i={type:o,data:n,req:t,_reqId:e,_action:o},a=(new Date).toISOString(),c=t.get?t.get("host"):"0.0.0.0";if(console.log(`${a} ${c} ${t.method} ${t.url}`),this.debug&&this.action$.setDebugListener({next:({type:t})=>console.log(`[${this.name}] Action from ${this.requestSourceName} request: <${t}>`)}),"function"===s){const e=this.addCalculated(this.currentState),n=r(e,t);return oe.of({...i,data:n})}{this.action$.shamefullySendNext(i);const t=Object.entries(this.sources).reduce(((t,[n,r])=>{if(!r||"function"!=typeof r[Ye])return t;const o=r[Ye](e);return[...t,o]}),[]);return oe.merge(...t)}}catch(t){console.error(t)}})).flatten();return[...e,c]}),[]);return[...e,oe.merge(...i)]}),[]);if(this.response$=oe.merge(...e).compose(this.log((t=>t._action?`[${this.requestSourceName}] response data received for Action: <${t._action}>`:`[${this.requestSourceName}] response data received from FUNCTION`))),void 0!==this.response&&void 0===this.response$)throw new Error("Cannot have a response parameter without a request parameter")}initState(){null!=this.model&&(void 0===this.model[Ze]?this.model[Ze]={[this.stateSourceName]:(t,e)=>({...this.addCalculated(e)})}:Object.keys(this.model[Ze]).forEach((t=>{t!==this.stateSourceName&&(console.warn(`${Ze} can only be used with the ${this.stateSourceName} source... disregarding ${t}`),delete this.model[Ze][t])})))}initModel$(){if(void 0===this.model)return void(this.model$=this.sourceNames.reduce(((t,e)=>(t[e]=oe.never(),t)),{}));const t={type:Ze,data:this.initialState};this.isSubComponent&&this.initialState&&console.warn(`[${this.name}] Initial state provided to sub-component. This will overwrite any state provided by the parent component.`);const e=this.initialState?Me(oe.of(t),this.action$).compose(Ge(0)):this.action$,n=()=>this.makeOnAction(e,!0,this.action$),r=()=>this.makeOnAction(this.action$,!1,this.action$),o=Object.entries(this.model),i={};o.forEach((t=>{let[e,o]=t;if("function"==typeof o&&(o={[this.stateSourceName]:o}),"object"!=typeof o)throw new Error(`Entry for each action must be an object: ${this.name} ${e}`);Object.entries(o).forEach((t=>{const[o,s]=t,a=o==this.stateSourceName,c=(a?n():r())(e,s).compose(this.log((t=>{if(a)return`State reducer added: <${e}>`;{const n=t&&(t.type||t.command||t.name||t.key||Array.isArray(t)&&"Array"||t);return`Data sent to [${o}]: <${e}> ${n}`}})));Array.isArray(i[o])?i[o].push(c):i[o]=[c]}))}));const s=Object.entries(i).reduce(((t,e)=>{const[n,r]=e;return t[n]=oe.merge(oe.never(),...r),t}),{});this.model$=s}initSendResponse$(){const t=typeof this.response;if("function"!=t&&"undefined"!=t)throw new Error("The response parameter must be a function");if("undefined"==t)return this.response$&&this.response$.subscribe({next:this.log((({_reqId:t,_action:e})=>`Unhandled response for request: ${e} ${t}`))}),void(this.sendResponse$=oe.never());const e={select:t=>void 0===t?this.response$:(Array.isArray(t)||(t=[t]),this.response$.filter((({_action:e})=>!(t.length>0)||("FUNCTION"===e||t.includes(e)))))},n=this.response(e);if("object"!=typeof n)throw new Error("The response function must return an object");const r=Object.entries(n).reduce(((t,[e,n])=>[...t,n.map((({_reqId:t,_action:n,data:r})=>{if(!t)throw new Error(`No request id found for response for: ${e}`);return{_reqId:t,_action:n,command:e,data:r}}))]),[]);this.sendResponse$=oe.merge(...r).compose(this.log((({_reqId:t,_action:e})=>`[${this.requestSourceName}] response sent for: <${e}>`)))}initChildren$(){const t=this.sourceNames.reduce(((t,e)=>(e==this.DOMSourceName?t[e]={}:t[e]=[],t)),{});this.children$=Object.entries(this.children).reduce(((t,[e,n])=>{const r=n(this.sources);return this.sourceNames.forEach((n=>{n==this.DOMSourceName?t[n][e]=r[n]:t[n].push(r[n])})),t}),t)}initSubComponentSink$(){const t=oe.create({start:t=>{this.newSubComponentSinks=t.next.bind(t)},stop:t=>{}});t.subscribe({next:t=>t}),this.subComponentSink$=t.filter((t=>Object.keys(t).length>0))}initSubComponentsRendered$(){const t=oe.create({start:t=>{this.triggerSubComponentsRendered=t.next.bind(t)},stop:t=>{}});this.subComponentsRendered$=t.startWith(null)}initVdom$(){if("function"!=typeof this.view)return void(this.vdom$=oe.of(null));const t=this.collectRenderParameters();this.vdom$=t.map(this.view).map((t=>t||{sel:"div",data:{},children:[]})).compose(this.instantiateSubComponents.bind(this)).filter((t=>void 0!==t)).compose(this.renderVdom.bind(this))}initSinks(){this.sinks=this.sourceNames.reduce(((t,e)=>{if(e==this.DOMSourceName)return t;const n=this.subComponentSink$?this.subComponentSink$.map((t=>t[e])).filter((t=>!!t)).flatten():oe.never();return e===this.stateSourceName?t[e]=oe.merge(this.model$[e]||oe.never(),n,this.sources[this.stateSourceName].stream.filter((t=>!1)),...this.children$[e]):t[e]=oe.merge(this.model$[e]||oe.never(),n,...this.children$[e]),t}),{}),this.sinks[this.DOMSourceName]=this.vdom$,this.sinks[this.requestSourceName]=oe.merge(this.sendResponse$,this.sinks[this.requestSourceName])}makeOnAction(t,e=!0,n){return n=n||t,(r,o)=>{const i=t.filter((({type:t})=>t==r));let s;if("function"==typeof o)s=i.map((t=>{const i=(e,o,i=10)=>{if("number"!=typeof i)throw new Error(`[${this.name} ] Invalid delay value provided to next() function in model action '${r}'. Must be a number in ms.`);const s=t._reqId||t.req&&t.req.id,a=s?"object"==typeof o?{...o,_reqId:s,_action:r}:{data:o,_reqId:s,_action:r}:o;setTimeout((()=>{n.shamefullySendNext({type:e,data:a})}),i)};let s=t.data;if(s&&s.data&&s._reqId&&(s=s.data),e)return e=>{const n=this.isSubComponent?this.currentState:e,r=this.addCalculated(n),a=o(r,s,i,t.req);return a==Qe?n:this.cleanupCalculated(a)};{const e=this.addCalculated(this.currentState),n=o(e,s,i,t.req),a=typeof n,c=t._reqId||t.req&&t.req.id;if(["string","number","boolean","function"].includes(a))return n;if("object"==a)return{...n,_reqId:c,_action:r};if("undefined"==a)return console.warn(`'undefined' value sent to ${r}`),n;throw new Error(`Invalid reducer type for ${r} ${a}`)}})).filter((t=>t!=Qe));else if(void 0===o||!0===o)s=i.map((({data:t})=>t));else{const t=o;s=i.mapTo(t)}return s}}createMemoizedAddCalculated(){let t,e;return function(n){if(!this.calculated||"object"!=typeof n||n instanceof Array)return n;if(n===t)return e;if("object"!=typeof this.calculated)throw new Error("'calculated' parameter must be an object mapping calculated state field named to functions");const r=Object.entries(this.calculated);if(0===r.length)return t=n,e=n,n;const o=r.reduce(((t,[e,r])=>{if("function"!=typeof r)throw new Error(`Missing or invalid calculator function for calculated field '${e}`);try{t[e]=r(n)}catch(t){console.warn(`Calculated field '${e}' threw an error during calculation: ${t.message}`)}return t}),{}),i={...n,...o};return t=n,e=i,i}}cleanupCalculated(t){if(!t||"object"!=typeof t||t instanceof Array)return t;const e=this.storeCalculatedInState?this.addCalculated(t):t,{__props:n,__children:r,...o}=e,i={...o};if(!this.calculated)return i;return Object.keys(this.calculated).forEach((t=>{this.initialState&&void 0!==this.initialState[t]?i[t]=this.initialState[t]:delete i[t]})),i}collectRenderParameters(){const t=this.sources[this.stateSourceName],e={...this.children$[this.DOMSourceName]},n=t&&t.isolateSource(t,{get:t=>this.addCalculated(t)}),r=n&&n.stream||oe.never(),o=(t,e)=>{const{state:n,sygnalFactory:r,__props:o,__children:i,...s}=t,a=Object.keys(s);if(0===a.length){const{state:t,sygnalFactory:n,__props:r,__children:o,...i}=e;return 0===Object.keys(i).length}return a.every((n=>t[n]===e[n]))},i=(t,e)=>{if(t===e)return!0;if(t.length!==e.length)return!1;for(let n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0};e.state=r.compose(ye(o)),this.sources.props$&&(e.__props=this.sources.props$.compose(ye(o))),this.sources.children$&&(e.__children=this.sources.children$.compose(ye(i)));const s=[],a=[];Object.entries(e).forEach((([t,e])=>{s.push(t),a.push(e)}));return oe.combine(...a).map((t=>s.reduce(((e,n,r)=>(e[n]=t[r],"state"===n&&(e[this.stateSourceName]=t[r]),e)),{})))}instantiateSubComponents(t){let e=0;return t.fold(((t,n)=>{const r=en(n,Object.keys(this.components)),o=Object.entries(r),i={"::ROOT::":n};if(0===o.length)return i;const s={},a=o.reduce(((n,[r,o])=>{const i=o.data,a=i.props||{},c=o.children||[],u=i.isCollection||!1,l=i.isSwitchable||!1,p=t=>{Object.entries(t).map((([t,e])=>{s[t]||=[],t!==this.DOMSourceName&&s[t].push(e)}))};if(t[r]){this.debug&&console.log(this.name,"sameful",e++);const o=t[r];return n[r]=o,o.props$.shamefullySendNext(a),o.children$.shamefullySendNext(c),p(o.sink$),n}this.debug&&console.log(this.name,"non-shameful",e++);const f=oe.create().startWith(a),h=oe.create().startWith(c);let d;d=u?this.instantiateCollection.bind(this):l?this.instantiateSwitchable.bind(this):this.instantiateCustomComponent.bind(this);const y=d(o,f,h);return y[this.DOMSourceName]=y[this.DOMSourceName]?this.makeCoordinatedSubComponentDomSink(y[this.DOMSourceName]):oe.never(),n[r]={sink$:y,props$:f,children$:h},p(y),n}),i),c=Object.entries(s).reduce(((t,[e,n])=>(0===n.length||(t[e]=1===n.length?n[0]:oe.merge(...n)),t)),{});return this.newSubComponentSinks(c),a}),{})}makeCoordinatedSubComponentDomSink(t){const e=t.remember(),n=this.sources[this.stateSourceName].stream.compose(ye(((t,e)=>JSON.stringify(t)===JSON.stringify(e)))).map((t=>e)).compose(Je(10)).flatten().debug((t=>this.triggerSubComponentsRendered())).remember();return n}instantiateCollection(t,e,n){const r=t.data.props||{};t.children;const o=oe.combine(this.sources[this.stateSourceName].stream.startWith(this.currentState),e,n).map((([t,e,n])=>"object"==typeof t?{...this.addCalculated(t),__props:e,__children:n}:{value:t,__props:e,__children:n})),i=new we(o),s=r.from;let a;r.filter;const c="function"==typeof r.of?r.of:this.components[r.of],u=t=>{if("object"==typeof t){const{__props:e,__children:n,...r}=t;return r}return t},l={get:t=>{const{__props:e,__children:n}=t;return Array.isArray(t[s])?t[s].map((t=>"object"==typeof t?{...t,__props:e,__children:n}:{value:t,__props:e,__children:n})):[]},set:(t,e)=>this.calculated&&s in this.calculated?(console.warn(`Collection sub-component of ${this.name} attempted to update state on a calculated field '${s}': Update ignored`),t):{...t,[s]:e.map(u)}};void 0===s?a={get:t=>!(t instanceof Array)&&t.value&&t.value instanceof Array?t.value:t,set:(t,e)=>e}:"string"==typeof s?"object"==typeof this.currentState?s in this.currentState||s in this.calculated?(Array.isArray(this.currentState[s])||console.warn(`State property '${s}' in collection comopnent of ${this.name} is not an array: No components will be instantiated in the collection.`),a=l):(console.error(`Collection component in ${this.name} is attempting to use non-existent state property '${s}': To fix this error, specify a valid array property on the state. Attempting to use parent component state.`),a=void 0):(Array.isArray(this.currentState[s])||console.warn(`State property '${s}' in collection component of ${this.name} is not an array: No components will be instantiated in the collection.`),a=l):"object"==typeof s?"function"!=typeof s.get?(console.error(`Collection component in ${this.name} has an invalid 'from' field: Expecting 'undefined', a string indicating an array property in the state, or an object with 'get' and 'set' functions for retrieving and setting child state from the current state. Attempting to use parent component state.`),a=void 0):a={get:t=>{const e=s.get(t);return Array.isArray(e)?e:(console.warn(`State getter function in collection component of ${this.name} did not return an array: No components will be instantiated in the collection. Returned value:`,e),[])},set:s.set}:(console.error(`Collection component in ${this.name} has an invalid 'from' field: Expecting 'undefined', a string indicating an array property in the state, or an object with 'get' and 'set' functions for retrieving and setting child state from the current state. Attempting to use parent component state.`),a=void 0);const p={...this.sources,[this.stateSourceName]:i,props$:e,children$:n},f=Fe(c,a,{container:null})(p);if("object"!=typeof f)throw new Error("Invalid sinks returned from component factory of collection element");return f}instantiateSwitchable(t,e,n){const r=t.data.props||{};t.children;const o=oe.combine(this.sources[this.stateSourceName].stream.startWith(this.currentState),e,n).map((([t,e,n])=>"object"==typeof t?{...this.addCalculated(t),__props:e,__children:n}:{value:t,__props:e,__children:n})),i=new we(o),s=r.state;let a;const c={get:t=>t,set:(t,e)=>{if("object"!=typeof e||e instanceof Array)return e;const{__props:n,__children:r,...o}=e;return o}};void 0===s?a=c:"string"==typeof s?a={get:t=>{const{__props:e,__children:n}=t;return"object"!=typeof t[s]||t[s]instanceof Array?{value:t[s],__props:e,__children:n}:{...t[s],__props:e,__children:n}},set:(t,e)=>{if(this.calculated&&s in this.calculated)return console.warn(`Switchable sub-component of ${this.name} attempted to update state on a calculated field '${s}': Update ignored`),t;if("object"!=typeof e||e instanceof Array)return{...t,[s]:e};const{__props:n,__children:r,...o}=e;return{...t,[s]:o}}}:"object"==typeof s?"function"!=typeof s.get?(console.error(`Switchable component in ${this.name} has an invalid 'state' field: Expecting 'undefined', a string indicating an array property in the state, or an object with 'get' and 'set' functions for retrieving and setting sub-component state from the current state. Attempting to use parent component state.`),a=c):a={get:s.get,set:s.set}:(console.error(`Invalid state provided to switchable sub-component of ${this.name}: Expecting string, object, or undefined, but found ${typeof s}. Attempting to use parent component state.`),a=c);const u=r.of,l={...this.sources,[this.stateSourceName]:i,props$:e,children$:n},p=le(Be(u,e.map((t=>t.current))),{[this.stateSourceName]:a})(l);if("object"!=typeof p)throw new Error("Invalid sinks returned from component factory of switchable element");return p}instantiateCustomComponent(t,e,n){const r=t.sel,o=t.data.props||{};t.children;const i=oe.combine(this.sources[this.stateSourceName].stream.startWith(this.currentState),e,n).map((([t,e,n])=>"object"==typeof t?{...this.addCalculated(t),__props:e,__children:n}:{value:t,__props:e,__children:n})),s=new we(i),a=o.state,c="sygnal-factory"===r?o.sygnalFactory:this.components[r]||o.sygnalFactory;if(!c){if("sygnal-factory"===r)throw new Error("Component not found on element with Capitalized selector and nameless function: JSX transpilation replaces selectors starting with upper case letters with functions in-scope with the same name, Sygnal cannot see the name of the resulting component.");throw new Error(`Component not found: ${r}`)}let u;const l={get:t=>t,set:(t,e)=>{if("object"!=typeof e||e instanceof Array)return e;const{__props:n,__children:r,...o}=e;return o}};void 0===a?u=l:"string"==typeof a?u={get:t=>{const{__props:e,__children:n}=t;return"object"==typeof t[a]?{...t[a],__props:e,__children:n}:{value:t[a],__props:e,__children:n}},set:(t,e)=>this.calculated&&a in this.calculated?(console.warn(`Sub-component of ${this.name} attempted to update state on a calculated field '${a}': Update ignored`),t):{...t,[a]:e}}:"object"==typeof a?"function"!=typeof a.get?(console.error(`Sub-component in ${this.name} has an invalid 'state' field: Expecting 'undefined', a string indicating an array property in the state, or an object with 'get' and 'set' functions for retrieving and setting sub-component state from the current state. Attempting to use parent component state.`),u=l):u={get:a.get,set:a.set}:(console.error(`Invalid state provided to sub-component of ${this.name}: Expecting string, object, or undefined, but found ${typeof a}. Attempting to use parent component state.`),u=l);const p={...this.sources,[this.stateSourceName]:s,props$:e,children$:n},f=le(c,{[this.stateSourceName]:u})(p);if("object"!=typeof f){throw new Error("Invalid sinks returned from component factory:","sygnal-factory"===r?"custom element":r)}return f}renderVdom(t){return oe.combine(this.subComponentsRendered$,t).compose(Je(5)).map((([t,e])=>{const n=Object.keys(this.components),r=e["::ROOT::"],o=Object.entries(e).filter((([t])=>"::ROOT::"!==t));if(0===o.length)return oe.of(r);const i=[],s=o.map((([t,e])=>(i.push(t),e.sink$[this.DOMSourceName].startWith(void 0))));return 0===s.length?oe.of(r):oe.combine(...s).compose(Je(10)).map((t=>{const e=t.reduce(((t,e,n)=>(t[i[n]]=e,t)),{});return nn(sn(r),e,n)}))})).flatten().filter((t=>!!t)).remember().compose(this.log("View Rendered"))}}function en(t,e,n=0,r=0){if(!t)return{};if(t.data?.componentsProcessed)return{};0===n&&(t.data.componentsProcessed=!0);const o=t.sel,i=o&&"collection"===o.toLowerCase(),s=o&&"switchable"===o.toLowerCase(),a=o&&["collection","switchable","sygnal-factory",...e].includes(t.sel)||"function"==typeof t.data?.props?.sygnalFactory,c=t.data&&t.data.props||{};t.data&&t.data.attrs;const u=t.children||[];let l={};if(a){const o=on(t,n,r);if(i){if(!c.of)throw new Error("Collection element missing required 'component' property");if("string"!=typeof c.of&&"function"!=typeof c.of)throw new Error(`Invalid 'component' property of collection element: found ${typeof c.of} requires string or component factory function`);if("function"!=typeof c.of&&!e.includes(c.of))throw new Error(`Specified component for collection not found: ${c.of}`);void 0===c.from||"string"==typeof c.from||Array.isArray(c.from)||"function"==typeof c.from.get||console.warn(`No valid array found for collection ${"string"==typeof c.of?c.of:"function component"}: no collection components will be created`,c.from),t.data.isCollection=!0,t.data.props||={}}else if(s){if(!c.of)throw new Error("Switchable element missing required 'of' property");if("object"!=typeof c.of)throw new Error(`Invalid 'of' property of switchable element: found ${typeof c.of} requires object mapping names to component factories`);if(!Object.values(c.of).every((t=>"function"==typeof t)))throw new Error("One or more components provided to switchable element is not a valid component factory");if(!c.current||"string"!=typeof c.current&&"function"!=typeof c.current)throw new Error(`Missing or invalid 'current' property for switchable element: found '${typeof c.current}' requires string or function`);if(!Object.keys(c.of).includes(c.current))throw new Error(`Component '${c.current}' not found in switchable element`);t.data.isSwitchable=!0}void 0===c.key&&(t.data.props.key=o),l[o]=t}return u.length>0&&u.map(((t,o)=>en(t,e,n+1,r+o))).forEach((t=>{Object.entries(t).forEach((([t,e])=>l[t]=e))})),l}function nn(t,e,n,r=0,o=0){if(!t)return;if(t.data?.componentsInjected)return t;0===r&&t.data&&(t.data.componentsInjected=!0);const i=t.sel||"NO SELECTOR",s=["collection","switchable","sygnal-factory",...n].includes(i)||"function"==typeof t.data?.props?.sygnalFactory,a=t?.data?.isCollection;t.data&&t.data.props;const c=t.children||[];if(s){const n=on(t,r,o),i=e[n];return a?(t.sel="div",t.children=Array.isArray(i)?i:[i],t):i}return c.length>0?(t.children=c.map(((t,i)=>nn(t,e,n,r+1,o+i))).flat(),t):t}const rn=new Map;function on(t,e,n){const r=t.sel,o="string"==typeof r?r:"functionComponent";let i=rn.get(r);if(!i){i=`${Date.now()}-${Math.floor(1e4*Math.random())}`,rn.set(r,i)}const s=`${i}-${e}-${n}`,a=t.data&&t.data.props||{};return`${o}::${a.id&&JSON.stringify(a.id)||s}`}function sn(t){return void 0===t?t:{...t,children:Array.isArray(t.children)?t.children.map(sn):void 0,data:t.data&&{...t.data,componentsInjected:!1}}}function an(t){return function(){var t;return(t="undefined"!=typeof window?window:"undefined"!=typeof global?global:this).Cyclejs=t.Cyclejs||{},(t=t.Cyclejs).adaptStream=t.adaptStream||function(t){return t},t}().adaptStream(t)}function cn(t){return 0===Object.keys(t).length}function un(t,e){if("function"!=typeof t)throw new Error("First argument given to Cycle must be the 'main' function.");if("object"!=typeof e||null===e)throw new Error("Second argument given to Cycle must be an object with driver functions as properties.");if(cn(e))throw new Error("Second argument given to Cycle must be an object with at least one driver function declared as a property.");var n=function(t){if("object"!=typeof t||null===t)throw new Error("Argument given to setupReusable must be an object with driver functions as properties.");if(cn(t))throw new Error("Argument given to setupReusable must be an object with at least one driver function declared as a property.");var e=function(t){var e={};for(var n in t)t.hasOwnProperty(n)&&(e[n]=oe.create());return e}(t),n=function(t,e){var n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r](e[r],r),n[r]&&"object"==typeof n[r]&&(n[r]._isCycleSource=r));return n}(t,e),r=function(t){for(var e in t)t.hasOwnProperty(e)&&t[e]&&"function"==typeof t[e].shamefullySendNext&&(t[e]=an(t[e]));return t}(n);function o(t){return function(t,e){var n=De(),r=Object.keys(t).filter((function(t){return!!e[t]})),o={},i={};r.forEach((function(t){o[t]={_n:[],_e:[]},i[t]={next:function(e){return o[t]._n.push(e)},error:function(e){return o[t]._e.push(e)},complete:function(){}}}));var s=r.map((function(e){return oe.fromObservable(t[e]).subscribe(i[e])}));return r.forEach((function(t){var r=e[t],s=function(t){n((function(){return r._n(t)}))},a=function(t){n((function(){(console.error||console.log)(t),r._e(t)}))};o[t]._n.forEach(s),o[t]._e.forEach(a),i[t].next=s,i[t].error=a,i[t]._n=s,i[t]._e=a})),o=null,function(){s.forEach((function(t){return t.unsubscribe()}))}}(t,e)}function i(){!function(t){for(var e in t)t.hasOwnProperty(e)&&t[e]&&t[e].dispose&&t[e].dispose()}(r),function(t){Object.keys(t).forEach((function(e){return t[e]._c()}))}(e)}return{sources:r,run:o,dispose:i}}(e),r=t(n.sources);return"undefined"!=typeof window&&(window.Cyclejs=window.Cyclejs||{},window.Cyclejs.sinks=r),{sinks:r,sources:n.sources,run:function(){var t=n.run(r);return function(){t(),n.dispose()}}}}function ln(t){if(pn(t)){for(;t&&pn(t);){t=fn(t).parent}return null!=t?t:null}return t.parentNode}function pn(t){return 11===t.nodeType}function fn(t,e){var n,r,o;const i=t;return null!==(n=i.parent)&&void 0!==n||(i.parent=null!=e?e:null),null!==(r=i.firstChildNode)&&void 0!==r||(i.firstChildNode=t.firstChild),null!==(o=i.lastChildNode)&&void 0!==o||(i.lastChildNode=t.lastChild),i}const hn={createElement:function(t,e){return document.createElement(t,e)},createElementNS:function(t,e,n){return document.createElementNS(t,e,n)},createTextNode:function(t){return document.createTextNode(t)},createDocumentFragment:function(){return fn(document.createDocumentFragment())},createComment:function(t){return document.createComment(t)},insertBefore:function(t,e,n){if(pn(t)){let e=t;for(;e&&pn(e);){e=fn(e).parent}t=null!=e?e:t}pn(e)&&(e=fn(e,t)),n&&pn(n)&&(n=fn(n).firstChildNode),t.insertBefore(e,n)},removeChild:function(t,e){t.removeChild(e)},appendChild:function(t,e){pn(e)&&(e=fn(e,t)),t.appendChild(e)},parentNode:ln,nextSibling:function(t){var e;if(pn(t)){const n=fn(t),r=ln(n);if(r&&n.lastChildNode){const t=Array.from(r.childNodes),o=t.indexOf(n.lastChildNode);return null!==(e=t[o+1])&&void 0!==e?e:null}return null}return t.nextSibling},tagName:function(t){return t.tagName},setTextContent:function(t,e){t.textContent=e},getTextContent:function(t){return t.textContent},isElement:function(t){return 1===t.nodeType},isText:function(t){return 3===t.nodeType},isComment:function(t){return 8===t.nodeType},isDocumentFragment:pn};function dn(t,e,n,r,o){return{sel:t,data:e,children:n,text:r,elm:o,key:void 0===e?void 0:e.key}}const yn=Array.isArray;function mn(t){return"string"==typeof t||"number"==typeof t||t instanceof String||t instanceof Number}function vn(t){return void 0===t}function gn(t){return void 0!==t}const _n=dn("",{},[],void 0,void 0);function bn(t,e){var n,r;const o=t.key===e.key,i=(null===(n=t.data)||void 0===n?void 0:n.is)===(null===(r=e.data)||void 0===r?void 0:r.is),s=t.sel===e.sel,a=!(!t.sel&&t.sel===e.sel)||typeof t.text==typeof e.text;return s&&o&&i&&a}function wn(){throw new Error("The document fragment is not supported on this platform.")}function Sn(t,e,n){var r;const o={};for(let i=e;i<=n;++i){const e=null===(r=t[i])||void 0===r?void 0:r.key;void 0!==e&&(o[e]=i)}return o}const An=["create","update","remove","destroy","pre","post"];function On(t,e,n){const r={create:[],update:[],remove:[],destroy:[],pre:[],post:[]},o=void 0!==e?e:hn;for(const e of An)for(const n of t){const t=n[e];void 0!==t&&r[e].push(t)}function i(t){const e=t.id?"#"+t.id:"",n=t.getAttribute("class"),r=n?"."+n.split(" ").join("."):"";return dn(o.tagName(t).toLowerCase()+e+r,{},[],void 0,t)}function s(t){return dn(void 0,{},[],void 0,t)}function a(t,e){return function(){if(0==--e){const e=o.parentNode(t);o.removeChild(e,t)}}}function c(t,e){var i,s,a,u;let l,p=t.data;if(void 0!==p){const e=null===(i=p.hook)||void 0===i?void 0:i.init;gn(e)&&(e(t),p=t.data)}const f=t.children,h=t.sel;if("!"===h)vn(t.text)&&(t.text=""),t.elm=o.createComment(t.text);else if(void 0!==h){const n=h.indexOf("#"),i=h.indexOf(".",n),a=n>0?n:h.length,u=i>0?i:h.length,d=-1!==n||-1!==i?h.slice(0,Math.min(a,u)):h,y=t.elm=gn(p)&&gn(l=p.ns)?o.createElementNS(l,d,p):o.createElement(d,p);for(a<u&&y.setAttribute("id",h.slice(a+1,u)),i>0&&y.setAttribute("class",h.slice(u+1).replace(/\./g," ")),l=0;l<r.create.length;++l)r.create[l](_n,t);if(yn(f))for(l=0;l<f.length;++l){const t=f[l];null!=t&&o.appendChild(y,c(t,e))}else mn(t.text)&&o.appendChild(y,o.createTextNode(t.text));const m=t.data.hook;gn(m)&&(null===(s=m.create)||void 0===s||s.call(m,_n,t),m.insert&&e.push(t))}else if((null===(a=null==n?void 0:n.experimental)||void 0===a?void 0:a.fragments)&&t.children){for(t.elm=(null!==(u=o.createDocumentFragment)&&void 0!==u?u:wn)(),l=0;l<r.create.length;++l)r.create[l](_n,t);for(l=0;l<t.children.length;++l){const n=t.children[l];null!=n&&o.appendChild(t.elm,c(n,e))}}else t.elm=o.createTextNode(t.text);return t.elm}function u(t,e,n,r,i,s){for(;r<=i;++r){const i=n[r];null!=i&&o.insertBefore(t,c(i,s),e)}}function l(t){var e,n;const o=t.data;if(void 0!==o){null===(n=null===(e=null==o?void 0:o.hook)||void 0===e?void 0:e.destroy)||void 0===n||n.call(e,t);for(let e=0;e<r.destroy.length;++e)r.destroy[e](t);if(void 0!==t.children)for(let e=0;e<t.children.length;++e){const n=t.children[e];null!=n&&"string"!=typeof n&&l(n)}}}function p(t,e,n,i){for(var s,c;n<=i;++n){let i,u;const f=e[n];if(null!=f)if(gn(f.sel)){l(f),i=r.remove.length+1,u=a(f.elm,i);for(let t=0;t<r.remove.length;++t)r.remove[t](f,u);const t=null===(c=null===(s=null==f?void 0:f.data)||void 0===s?void 0:s.hook)||void 0===c?void 0:c.remove;gn(t)?t(f,u):u()}else f.children?(l(f),p(t,f.children,0,f.children.length-1)):o.removeChild(t,f.elm)}}function f(t,e,n){var i,s,a,l,h,d,y,m;const v=null===(i=e.data)||void 0===i?void 0:i.hook;null===(s=null==v?void 0:v.prepatch)||void 0===s||s.call(v,t,e);const g=e.elm=t.elm;if(t===e)return;if(void 0!==e.data||gn(e.text)&&e.text!==t.text){null!==(a=e.data)&&void 0!==a||(e.data={}),null!==(l=t.data)&&void 0!==l||(t.data={});for(let n=0;n<r.update.length;++n)r.update[n](t,e);null===(y=null===(d=null===(h=e.data)||void 0===h?void 0:h.hook)||void 0===d?void 0:d.update)||void 0===y||y.call(d,t,e)}const _=t.children,b=e.children;vn(e.text)?gn(_)&&gn(b)?_!==b&&function(t,e,n,r){let i,s,a,l,h=0,d=0,y=e.length-1,m=e[0],v=e[y],g=n.length-1,_=n[0],b=n[g];for(;h<=y&&d<=g;)null==m?m=e[++h]:null==v?v=e[--y]:null==_?_=n[++d]:null==b?b=n[--g]:bn(m,_)?(f(m,_,r),m=e[++h],_=n[++d]):bn(v,b)?(f(v,b,r),v=e[--y],b=n[--g]):bn(m,b)?(f(m,b,r),o.insertBefore(t,m.elm,o.nextSibling(v.elm)),m=e[++h],b=n[--g]):bn(v,_)?(f(v,_,r),o.insertBefore(t,v.elm,m.elm),v=e[--y],_=n[++d]):(void 0===i&&(i=Sn(e,h,y)),s=i[_.key],vn(s)?o.insertBefore(t,c(_,r),m.elm):(a=e[s],a.sel!==_.sel?o.insertBefore(t,c(_,r),m.elm):(f(a,_,r),e[s]=void 0,o.insertBefore(t,a.elm,m.elm))),_=n[++d]);d<=g&&(l=null==n[g+1]?null:n[g+1].elm,u(t,l,n,d,g,r)),h<=y&&p(t,e,h,y)}(g,_,b,n):gn(b)?(gn(t.text)&&o.setTextContent(g,""),u(g,null,b,0,b.length-1,n)):gn(_)?p(g,_,0,_.length-1):gn(t.text)&&o.setTextContent(g,""):t.text!==e.text&&(gn(_)&&p(g,_,0,_.length-1),o.setTextContent(g,e.text)),null===(m=null==v?void 0:v.postpatch)||void 0===m||m.call(v,t,e)}return function(t,e){let n,a,u;const l=[];for(n=0;n<r.pre.length;++n)r.pre[n]();for(!function(t,e){return t.isElement(e)}(o,t)?function(t,e){return t.isDocumentFragment(e)}(o,t)&&(t=s(t)):t=i(t),bn(t,e)?f(t,e,l):(a=t.elm,u=o.parentNode(a),c(e,l),null!==u&&(o.insertBefore(u,e.elm,o.nextSibling(a)),p(u,[t],0,0))),n=0;n<l.length;++n)l[n].data.hook.insert(l[n]);for(n=0;n<r.post.length;++n)r.post[n]();return e}}function En(t,e,n){if(t.ns="http://www.w3.org/2000/svg","foreignObject"!==n&&void 0!==e)for(let t=0;t<e.length;++t){const n=e[t];if("string"==typeof n)continue;const r=n.data;void 0!==r&&En(r,n.children,n.sel)}}function $n(t,e,n){let r,o,i,s={};if(void 0!==n?(null!==e&&(s=e),yn(n)?r=n:mn(n)?o=n.toString():n&&n.sel&&(r=[n])):null!=e&&(yn(e)?r=e:mn(e)?o=e.toString():e&&e.sel?r=[e]:s=e),void 0!==r)for(i=0;i<r.length;++i)mn(r[i])&&(r[i]=dn(void 0,void 0,void 0,r[i],void 0));return"s"!==t[0]||"v"!==t[1]||"g"!==t[2]||3!==t.length&&"."!==t[3]&&"#"!==t[3]||En(s,r,t),dn(t,s,r,o,void 0)}function jn(t,e){const n=void 0!==e?e:hn;let r;if(n.isElement(t)){const r=t.id?"#"+t.id:"",o=t.getAttribute("class"),i=o?"."+o.split(" ").join("."):"",s=n.tagName(t).toLowerCase()+r+i,a={},c={},u={},l=[];let p,f,h;const d=t.attributes,y=t.childNodes;for(f=0,h=d.length;f<h;f++)p=d[f].nodeName,"d"===p[0]&&"a"===p[1]&&"t"===p[2]&&"a"===p[3]&&"-"===p[4]?c[p.slice(5)]=d[f].nodeValue||"":"id"!==p&&"class"!==p&&(a[p]=d[f].nodeValue);for(f=0,h=y.length;f<h;f++)l.push(jn(y[f],e));return Object.keys(a).length>0&&(u.attrs=a),Object.keys(c).length>0&&(u.dataset=c),"s"!==s[0]||"v"!==s[1]||"g"!==s[2]||3!==s.length&&"."!==s[3]&&"#"!==s[3]||En(u,l,s),dn(s,u,l,void 0,t)}return n.isText(t)?(r=n.getTextContent(t),dn(void 0,void 0,void 0,r,t)):n.isComment(t)?(r=n.getTextContent(t),dn("!",{},[],r,t)):dn("",{},[],void 0,t)}function Cn(t,e){let n;const r=e.elm;let o=t.data.attrs,i=e.data.attrs;if((o||i)&&o!==i){for(n in o=o||{},i=i||{},i){const t=i[n];o[n]!==t&&(!0===t?r.setAttribute(n,""):!1===t?r.removeAttribute(n):120!==n.charCodeAt(0)?r.setAttribute(n,t):58===n.charCodeAt(3)?r.setAttributeNS("http://www.w3.org/XML/1998/namespace",n,t):58===n.charCodeAt(5)?r.setAttributeNS("http://www.w3.org/1999/xlink",n,t):r.setAttribute(n,t))}for(n in o)n in i||r.removeAttribute(n)}}const Nn={create:Cn,update:Cn};function kn(t,e){let n,r;const o=e.elm;let i=t.data.class,s=e.data.class;if((i||s)&&i!==s){for(r in i=i||{},s=s||{},i)i[r]&&!Object.prototype.hasOwnProperty.call(s,r)&&o.classList.remove(r);for(r in s)n=s[r],n!==i[r]&&o.classList[n?"add":"remove"](r)}}const xn={create:kn,update:kn},In=/[A-Z]/g;function Pn(t,e){const n=e.elm;let r,o=t.data.dataset,i=e.data.dataset;if(!o&&!i)return;if(o===i)return;o=o||{},i=i||{};const s=n.dataset;for(r in o)i[r]||(s?r in s&&delete s[r]:n.removeAttribute("data-"+r.replace(In,"-$&").toLowerCase()));for(r in i)o[r]!==i[r]&&(s?s[r]=i[r]:n.setAttribute("data-"+r.replace(In,"-$&").toLowerCase(),i[r]))}const Mn={create:Pn,update:Pn};function Tn(t,e){let n,r,o;const i=e.elm;let s=t.data.props,a=e.data.props;if((s||a)&&s!==a)for(n in s=s||{},a=a||{},a)r=a[n],o=s[n],o===r||"value"===n&&i[n]===r||(i[n]=r)}const Dn={create:Tn,update:Tn},Ln="undefined"!=typeof window&&window.requestAnimationFrame.bind(window)||setTimeout,Fn=function(t){Ln((function(){Ln(t)}))};let Bn=!1;function Rn(t,e,n){Fn((function(){t[e]=n}))}function qn(t,e){let n,r;const o=e.elm;let i=t.data.style,s=e.data.style;if(!i&&!s)return;if(i===s)return;i=i||{},s=s||{};const a="delayed"in i;for(r in i)s[r]||("-"===r[0]&&"-"===r[1]?o.style.removeProperty(r):o.style[r]="");for(r in s)if(n=s[r],"delayed"===r&&s.delayed)for(const t in s.delayed)n=s.delayed[t],a&&n===i.delayed[t]||Rn(o.style,t,n);else"remove"!==r&&n!==i[r]&&("-"===r[0]&&"-"===r[1]?o.style.setProperty(r,n):o.style[r]=n)}const Un={pre:function(){Bn=!1},create:qn,update:qn,destroy:function(t){let e,n;const r=t.elm,o=t.data.style;if(o&&(e=o.destroy))for(n in e)r.style[n]=e[n]},remove:function(t,e){const n=t.data.style;if(!n||!n.remove)return void e();let r;Bn||(t.elm.offsetLeft,Bn=!0);const o=t.elm;let i=0;const s=n.remove;let a=0;const c=[];for(r in s)c.push(r),o.style[r]=s[r];const u=getComputedStyle(o)["transition-property"].split(", ");for(;i<u.length;++i)-1!==c.indexOf(u[i])&&a++;o.addEventListener("transitionend",(function(t){t.target===o&&--a,0===a&&e()}))}};function Wn(t,e){e.elm=t.elm,t.data.fn=e.data.fn,t.data.args=e.data.args,t.data.isolate=e.data.isolate,e.data=t.data,e.children=t.children,e.text=t.text,e.elm=t.elm}function Gn(t){var e=t.data;Wn(e.fn.apply(void 0,e.args),t)}function Vn(t,e){var n,r=t.data,o=e.data,i=r.args,s=o.args;for(r.fn===o.fn&&i.length===s.length||Wn(o.fn.apply(void 0,s),e),n=0;n<s.length;++n)if(i[n]!==s[n])return void Wn(o.fn.apply(void 0,s),e);Wn(t,e)}function zn(t,e,n,r,o){void 0===n&&(n=!1),void 0===r&&(r=!1),void 0===o&&(o=!1);var i=null;return ee.create({start:function(s){i=r?function(t){Jn(t,r),s.next(t)}:function(t){s.next(t)},t.addEventListener(e,i,{capture:n,passive:o})},stop:function(){t.removeEventListener(e,i,n),i=null}})}function Hn(t,e){for(var n=Object.keys(t),r=n.length,o=0;o<r;o++){var i=n[o];if("object"==typeof t[i]&&"object"==typeof e[i]){if(!Hn(t[i],e[i]))return!1}else if(t[i]!==e[i])return!1}return!0}function Jn(t,e){if(e)if("boolean"==typeof e)t.preventDefault();else if("function"==typeof e)e(t)&&t.preventDefault();else{if("object"!=typeof e)throw new Error("preventDefault has to be either a boolean, predicate function or object");Hn(e,t)&&t.preventDefault()}}var Xn=function(){function t(t){this._name=t}return t.prototype.select=function(t){return this},t.prototype.elements=function(){var t=ae(oe.of([document]));return t._isCycleSource=this._name,t},t.prototype.element=function(){var t=ae(oe.of(document));return t._isCycleSource=this._name,t},t.prototype.events=function(t,e,n){var r;void 0===e&&(e={}),r=zn(document,t,e.useCapture,e.preventDefault);var o=ae(r);return o._isCycleSource=this._name,o},t}(),Yn=function(){function t(t){this._name=t}return t.prototype.select=function(t){return this},t.prototype.elements=function(){var t=ae(oe.of([document.body]));return t._isCycleSource=this._name,t},t.prototype.element=function(){var t=ae(oe.of(document.body));return t._isCycleSource=this._name,t},t.prototype.events=function(t,e,n){var r;void 0===e&&(e={}),r=zn(document.body,t,e.useCapture,e.preventDefault);var o=ae(r);return o._isCycleSource=this._name,o},t}();function Zn(t){if("string"!=typeof t&&(e=t,!("object"==typeof HTMLElement?e instanceof HTMLElement||e instanceof DocumentFragment:e&&"object"==typeof e&&null!==e&&(1===e.nodeType||11===e.nodeType)&&"string"==typeof e.nodeName)))throw new Error("Given container is not a DOM element neither a selector string.");var e}function Kn(t){for(var e="",n=t.length-1;n>=0&&"selector"===t[n].type;n--)e=t[n].scope+" "+e;return e.trim()}function Qn(t,e){if(!Array.isArray(t)||!Array.isArray(e)||t.length!==e.length)return!1;for(var n=0;n<t.length;n++)if(t[n].type!==e[n].type||t[n].scope!==e[n].scope)return!1;return!0}var tr=function(){function t(t,e){this.namespace=t,this.isolateModule=e,this._namespace=t.filter((function(t){return"selector"!==t.type}))}return t.prototype.isDirectlyInScope=function(t){var e=this.isolateModule.getNamespace(t);if(!e)return!1;if(this._namespace.length>e.length||!Qn(this._namespace,e.slice(0,this._namespace.length)))return!1;for(var n=this._namespace.length;n<e.length;n++)if("total"===e[n].type)return!1;return!0},t}();var er=function(){function t(t,e){this.namespace=t,this.isolateModule=e}return t.prototype.call=function(){var t=this.namespace,e=Kn(t),n=new tr(t,this.isolateModule),r=this.isolateModule.getElement(t.filter((function(t){return"selector"!==t.type})));return void 0===r?[]:""===e?[r]:function(t){return Array.prototype.slice.call(t)}(r.querySelectorAll(e)).filter(n.isDirectlyInScope,n).concat(r.matches(e)?[r]:[])},t}(),nr=function(){return nr=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},nr.apply(this,arguments)};function rr(t){return{type:(e=t,e.length>1&&("."===e[0]||"#"===e[0])?"sibling":"total"),scope:t};var e}var or=function(){function t(e,n,r,o,i,s){var a;void 0===r&&(r=[]),this._rootElement$=e,this._sanitation$=n,this._namespace=r,this._isolateModule=o,this._eventDelegator=i,this._name=s,this.isolateSource=function(e,n){return new t(e._rootElement$,e._sanitation$,e._namespace.concat(rr(n)),e._isolateModule,e._eventDelegator,e._name)},this.isolateSink=(a=this._namespace,function(t,e){return":root"===e?t:t.map((function(t){if(!t)return t;var n=rr(e),r=nr({},t,{data:nr({},t.data,{isolate:t.data&&Array.isArray(t.data.isolate)?t.data.isolate:a.concat([n])})});return nr({},r,{key:void 0!==r.key?r.key:JSON.stringify(r.data.isolate)})}))})}return t.prototype._elements=function(){if(0===this._namespace.length)return this._rootElement$.map((function(t){return[t]}));var t=new er(this._namespace,this._isolateModule);return this._rootElement$.map((function(){return t.call()}))},t.prototype.elements=function(){var t=ae(this._elements().remember());return t._isCycleSource=this._name,t},t.prototype.element=function(){var t=ae(this._elements().filter((function(t){return t.length>0})).map((function(t){return t[0]})).remember());return t._isCycleSource=this._name,t},Object.defineProperty(t.prototype,"namespace",{get:function(){return this._namespace},enumerable:!0,configurable:!0}),t.prototype.select=function(e){if("string"!=typeof e)throw new Error("DOM driver's select() expects the argument to be a string as a CSS selector");if("document"===e)return new Xn(this._name);if("body"===e)return new Yn(this._name);var n=":root"===e?[]:this._namespace.concat({type:"selector",scope:e.trim()});return new t(this._rootElement$,this._sanitation$,n,this._isolateModule,this._eventDelegator,this._name)},t.prototype.events=function(t,e,n){if(void 0===e&&(e={}),"string"!=typeof t)throw new Error("DOM driver's events() expects argument to be a string representing the event type to listen for.");var r=this._eventDelegator.addEventListener(t,this._namespace,e,n),o=ae(r);return o._isCycleSource=this._name,o},t.prototype.dispose=function(){this._sanitation$.shamefullySendNext(null)},t}(),ir={},sr=e&&e.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var r=Array(t),o=0;for(e=0;e<n;e++)for(var i=arguments[e],s=0,a=i.length;s<a;s++,o++)r[o]=i[s];return r};Object.defineProperty(ir,"__esModule",{value:!0}),ir.SampleCombineOperator=ir.SampleCombineListener=void 0;var ar=n,cr={},ur=function(){function t(t,e){this.i=t,this.p=e,e.ils[t]=this}return t.prototype._n=function(t){var e=this.p;e.out!==cr&&e.up(t,this.i)},t.prototype._e=function(t){this.p._e(t)},t.prototype._c=function(){this.p.down(this.i,this)},t}();ir.SampleCombineListener=ur;var lr,pr=function(){function t(t,e){this.type="sampleCombine",this.ins=t,this.others=e,this.out=cr,this.ils=[],this.Nn=0,this.vals=[]}return t.prototype._start=function(t){this.out=t;for(var e=this.others,n=this.Nn=e.length,r=this.vals=new Array(n),o=0;o<n;o++)r[o]=cr,e[o]._add(new ur(o,this));this.ins._add(this)},t.prototype._stop=function(){var t=this.others,e=t.length,n=this.ils;this.ins._remove(this);for(var r=0;r<e;r++)t[r]._remove(n[r]);this.out=cr,this.vals=[],this.ils=[]},t.prototype._n=function(t){var e=this.out;e!==cr&&(this.Nn>0||e._n(sr([t],this.vals)))},t.prototype._e=function(t){var e=this.out;e!==cr&&e._e(t)},t.prototype._c=function(){var t=this.out;t!==cr&&t._c()},t.prototype.up=function(t,e){var n=this.vals[e];this.Nn>0&&n===cr&&this.Nn--,this.vals[e]=t},t.prototype.down=function(t,e){this.others[t]._remove(e)},t}();ir.SampleCombineOperator=pr,lr=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return function(e){return new ar.Stream(new pr(e,t))}};var fr=ir.default=lr;function hr(t){if(!t.sel)return{tagName:"",id:"",className:""};var e=t.sel,n=e.indexOf("#"),r=e.indexOf(".",n),o=n>0?n:e.length,i=r>0?r:e.length;return{tagName:-1!==n||-1!==r?e.slice(0,Math.min(o,i)):e,id:o<i?e.slice(o+1,i):void 0,className:r>0?e.slice(i+1).replace(/\./g," "):void 0}}Object.assign;var dr=("undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:Function("return this")()).Symbol;"function"==typeof dr&&dr("parent");var yr=function(){function t(t){this.rootElement=t}return t.prototype.call=function(t){if(11===this.rootElement.nodeType)return this.wrapDocFrag(null===t?[]:[t]);if(null===t)return this.wrap([]);var e=hr(t),n=e.tagName,r=e.id,o=function(t){var e=hr(t).className,n=void 0===e?"":e;if(!t.data)return n;var r=t.data,o=r.class,i=r.props;return o&&(n+=" "+Object.keys(o).filter((function(t){return o[t]})).join(" ")),i&&i.className&&(n+=" "+i.className),n&&n.trim()}(t),i=((t.data||{}).props||{}).id,s=void 0===i?r:i;return"string"==typeof s&&s.toUpperCase()===this.rootElement.id.toUpperCase()&&n.toUpperCase()===this.rootElement.tagName.toUpperCase()&&o.toUpperCase()===this.rootElement.className.toUpperCase()?t:this.wrap([t])},t.prototype.wrapDocFrag=function(t){return dn("",{isolate:[]},t,void 0,this.rootElement)},t.prototype.wrap=function(t){var e=this.rootElement,n=e.tagName,r=e.id,o=e.className,i=r?"#"+r:"",s=o?"."+o.split(" ").join("."):"",a=$n(""+n.toLowerCase()+i+s,{},t);return a.data=a.data||{},a.data.isolate=a.data.isolate||[],a},t}(),mr=[Un,xn,Dn,Nn,Mn],vr=function(){function t(t){this.mapper=t,this.tree=[void 0,{}]}return t.prototype.set=function(t,e,n){for(var r=this.tree,o=void 0!==n?n:t.length,i=0;i<o;i++){var s=this.mapper(t[i]),a=r[1][s];a||(a=[void 0,{}],r[1][s]=a),r=a}r[0]=e},t.prototype.getDefault=function(t,e,n){return this.get(t,e,n)},t.prototype.get=function(t,e,n){for(var r=this.tree,o=void 0!==n?n:t.length,i=0;i<o;i++){var s=this.mapper(t[i]),a=r[1][s];if(!a){if(!e)return;a=[void 0,{}],r[1][s]=a}r=a}return e&&!r[0]&&(r[0]=e()),r[0]},t.prototype.delete=function(t){for(var e=this.tree,n=0;n<t.length-1;n++){var r=e[1][this.mapper(t[n])];if(!r)return;e=r}delete e[1][this.mapper(t[t.length-1])]},t}(),gr=function(){function t(){this.namespaceTree=new vr((function(t){return t.scope})),this.namespaceByElement=new Map,this.vnodesBeingRemoved=[]}return t.prototype.setEventDelegator=function(t){this.eventDelegator=t},t.prototype.insertElement=function(t,e){this.namespaceByElement.set(e,t),this.namespaceTree.set(t,e)},t.prototype.removeElement=function(t){this.namespaceByElement.delete(t);var e=this.getNamespace(t);e&&this.namespaceTree.delete(e)},t.prototype.getElement=function(t,e){return this.namespaceTree.get(t,void 0,e)},t.prototype.getRootElement=function(t){if(this.namespaceByElement.has(t))return t;for(var e=t;!this.namespaceByElement.has(e);){if(!(e=e.parentNode))return;if("HTML"===e.tagName)throw new Error("No root element found, this should not happen at all")}return e},t.prototype.getNamespace=function(t){var e=this.getRootElement(t);if(e)return this.namespaceByElement.get(e)},t.prototype.createModule=function(){var t=this;return{create:function(e,n){var r=n.elm,o=n.data,i=(void 0===o?{}:o).isolate;Array.isArray(i)&&t.insertElement(i,r)},update:function(e,n){var r=e.elm,o=e.data,i=void 0===o?{}:o,s=n.elm,a=n.data,c=void 0===a?{}:a,u=i.isolate,l=c.isolate;Qn(u,l)||Array.isArray(u)&&t.removeElement(r),Array.isArray(l)&&t.insertElement(l,s)},destroy:function(e){t.vnodesBeingRemoved.push(e)},remove:function(e,n){t.vnodesBeingRemoved.push(e),n()},post:function(){for(var e=t.vnodesBeingRemoved,n=e.length-1;n>=0;n--){var r=e[n],o=void 0!==r.data?r.data.isolation:void 0;void 0!==o&&t.removeElement(o),t.eventDelegator.removeElement(r.elm,o)}t.vnodesBeingRemoved=[]}}},t}(),_r=function(){function t(){this.arr=[],this.prios=[]}return t.prototype.add=function(t,e){for(var n=0;n<this.arr.length;n++)if(this.prios[n]<e)return this.arr.splice(n,0,t),void this.prios.splice(n,0,e);this.arr.push(t),this.prios.push(e)},t.prototype.forEach=function(t){for(var e=0;e<this.arr.length;e++)t(this.arr[e],e,this.arr)},t.prototype.delete=function(t){for(var e=0;e<this.arr.length;e++)if(this.arr[e]===t)return this.arr.splice(e,1),void this.prios.splice(e,1)},t}(),br=function(){return br=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},br.apply(this,arguments)},wr=["blur","canplay","canplaythrough","durationchange","emptied","ended","focus","load","loadeddata","loadedmetadata","mouseenter","mouseleave","pause","play","playing","ratechange","reset","scroll","seeked","seeking","stalled","submit","suspend","timeupdate","unload","volumechange","waiting"],Sr=function(){function t(t,e){var n=this;this.rootElement$=t,this.isolateModule=e,this.virtualListeners=new vr((function(t){return t.scope})),this.nonBubblingListenersToAdd=new Set,this.virtualNonBubblingListener=[],this.isolateModule.setEventDelegator(this),this.domListeners=new Map,this.domListenersToAdd=new Map,this.nonBubblingListeners=new Map,t.addListener({next:function(t){n.origin!==t&&(n.origin=t,n.resetEventListeners(),n.domListenersToAdd.forEach((function(t,e){return n.setupDOMListener(e,t)})),n.domListenersToAdd.clear()),n.nonBubblingListenersToAdd.forEach((function(t){n.setupNonBubblingListener(t)}))}})}return t.prototype.addEventListener=function(t,e,n,r){var o,i=oe.never(),s=new tr(e,this.isolateModule);if(void 0===r?-1===wr.indexOf(t):r)return this.domListeners.has(t)||this.setupDOMListener(t,!!n.passive),o=this.insertListener(i,s,t,n),i;var a=[];this.nonBubblingListenersToAdd.forEach((function(t){return a.push(t)}));for(var c=void 0,u=0,l=a.length,p=function(n){n[0];var r=n[1],o=n[2];return n[3],t===r&&Qn(o.namespace,e)};!c&&u<l;){var f=a[u];c=p(f)?f:c,u++}var h,d=c;if(d){var y=d[0];h=y}else{var m=new er(e,this.isolateModule);o=this.insertListener(i,s,t,n),d=[i,t,m,o],h=i,this.nonBubblingListenersToAdd.add(d),this.setupNonBubblingListener(d)}var v=this,g=null;return oe.create({start:function(t){g=h.subscribe(t)},stop:function(){d[0];var t=d[1],e=d[2];d[3],e.call().forEach((function(e){var n=e.subs;n&&n[t]&&(n[t].unsubscribe(),delete n[t])})),v.nonBubblingListenersToAdd.delete(d),g.unsubscribe()}})},t.prototype.removeElement=function(t,e){void 0!==e&&this.virtualListeners.delete(e);var n=[];this.nonBubblingListeners.forEach((function(e,r){if(e.has(t)){n.push([r,t]);var o=t.subs;o&&Object.keys(o).forEach((function(t){o[t].unsubscribe()}))}}));for(var r=0;r<n.length;r++){var o=this.nonBubblingListeners.get(n[r][0]);o&&(o.delete(n[r][1]),0===o.size?this.nonBubblingListeners.delete(n[r][0]):this.nonBubblingListeners.set(n[r][0],o))}},t.prototype.insertListener=function(t,e,n,r){var o=[],i=e._namespace,s=i.length;do{o.push(this.getVirtualListeners(n,i,!0,s)),s--}while(s>=0&&"total"!==i[s].type);for(var a=br({},r,{scopeChecker:e,subject:t,bubbles:!!r.bubbles,useCapture:!!r.useCapture,passive:!!r.passive}),c=0;c<o.length;c++)o[c].add(a,i.length);return a},t.prototype.getVirtualListeners=function(t,e,n,r){void 0===n&&(n=!1);var o=void 0!==r?r:e.length;if(!n)for(var i=o-1;i>=0;i--){if("total"===e[i].type){o=i+1;break}o=i}var s=this.virtualListeners.getDefault(e,(function(){return new Map}),o);return s.has(t)||s.set(t,new _r),s.get(t)},t.prototype.setupDOMListener=function(t,e){var n=this;if(this.origin){var r=zn(this.origin,t,!1,!1,e).subscribe({next:function(r){return n.onEvent(t,r,e)},error:function(){},complete:function(){}});this.domListeners.set(t,{sub:r,passive:e})}else this.domListenersToAdd.set(t,e)},t.prototype.setupNonBubblingListener=function(t){t[0];var e=t[1],n=t[2],r=t[3];if(this.origin){var o=n.call();if(o.length){var i=this;o.forEach((function(t){var n,o=t.subs;if(!o||!o[e]){var s=zn(t,e,!1,!1,r.passive).subscribe({next:function(t){return i.onEvent(e,t,!!r.passive,!1)},error:function(){},complete:function(){}});i.nonBubblingListeners.has(e)||i.nonBubblingListeners.set(e,new Map);var a=i.nonBubblingListeners.get(e);if(!a)return;a.set(t,{sub:s,destination:r}),t.subs=br({},o,((n={})[e]=s,n))}}))}}},t.prototype.resetEventListeners=function(){for(var t=this.domListeners.entries(),e=t.next();!e.done;){var n=e.value,r=n[0],o=n[1],i=o.sub,s=o.passive;i.unsubscribe(),this.setupDOMListener(r,s),e=t.next()}},t.prototype.putNonBubblingListener=function(t,e,n,r){var o=this.nonBubblingListeners.get(t);if(o){var i=o.get(e);i&&i.destination.passive===r&&i.destination.useCapture===n&&(this.virtualNonBubblingListener[0]=i.destination)}},t.prototype.onEvent=function(t,e,n,r){void 0===r&&(r=!0);var o=this.patchEvent(e),i=this.isolateModule.getRootElement(e.target);if(r){var s=this.isolateModule.getNamespace(e.target);if(!s)return;var a=this.getVirtualListeners(t,s);this.bubble(t,e.target,i,o,a,s,s.length-1,!0,n),this.bubble(t,e.target,i,o,a,s,s.length-1,!1,n)}else this.putNonBubblingListener(t,e.target,!0,n),this.doBubbleStep(t,e.target,i,o,this.virtualNonBubblingListener,!0,n),this.putNonBubblingListener(t,e.target,!1,n),this.doBubbleStep(t,e.target,i,o,this.virtualNonBubblingListener,!1,n),e.stopPropagation()},t.prototype.bubble=function(t,e,n,r,o,i,s,a,c){a||r.propagationHasBeenStopped||this.doBubbleStep(t,e,n,r,o,a,c);var u=n,l=s;if(e===n){if(!(s>=0&&"sibling"===i[s].type))return;u=this.isolateModule.getElement(i,s),l--}e.parentNode&&u&&this.bubble(t,e.parentNode,u,r,o,i,l,a,c),a&&!r.propagationHasBeenStopped&&this.doBubbleStep(t,e,n,r,o,a,c)},t.prototype.doBubbleStep=function(t,e,n,r,o,i,s){n&&(this.mutateEventCurrentTarget(r,e),o.forEach((function(t){if(t.passive===s&&t.useCapture===i){var o=Kn(t.scopeChecker.namespace);!r.propagationHasBeenStopped&&t.scopeChecker.isDirectlyInScope(e)&&(""!==o&&e.matches(o)||""===o&&e===n)&&(Jn(r,t.preventDefault),t.subject.shamefullySendNext(r))}})))},t.prototype.patchEvent=function(t){var e=t;e.propagationHasBeenStopped=!1;var n=e.stopPropagation;return e.stopPropagation=function(){n.call(this),this.propagationHasBeenStopped=!0},e},t.prototype.mutateEventCurrentTarget=function(t,e){try{Object.defineProperty(t,"currentTarget",{value:e,configurable:!0})}catch(t){console.log("please use event.ownerTarget")}t.ownerTarget=e},t}();function Ar(t){return oe.merge(t,oe.never())}function Or(t){return t.elm}function Er(t){(console.error||console.log)(t)}function $r(t,e){void 0===e&&(e={}),Zn(t);var n=e.modules||mr;!function(t){if(!Array.isArray(t))throw new Error("Optional modules option must be an array for snabbdom modules")}(n);var r,o,i=new gr,s=e&&e.snabbdomOptions||void 0,a=On([i.createModule()].concat(n),void 0,s),c=oe.create({start:function(t){"loading"===document.readyState?document.addEventListener("readystatechange",(function(){var e=document.readyState;"interactive"!==e&&"complete"!==e||(t.next(null),t.complete())})):(t.next(null),t.complete())},stop:function(){}}),u=oe.create({start:function(t){o=new MutationObserver((function(){return t.next(null)}))},stop:function(){o.disconnect()}});return function(n,s){void 0===s&&(s="DOM"),function(t){if(!t||"function"!=typeof t.addListener||"function"!=typeof t.fold)throw new Error("The DOM driver function expects as input a Stream of virtual DOM elements")}(n);var l=oe.create(),p=c.map((function(){var e=function(t){var e="string"==typeof t?document.querySelector(t):t;if("string"==typeof t&&null===e)throw new Error("Cannot render into unknown element `"+t+"`");return e}(t)||document.body;return r=new yr(e),e})),f=n.remember();f.addListener({}),u.addListener({});var h=p.map((function(t){return oe.merge(f.endWhen(l),l).map((function(t){return r.call(t)})).startWith(function(t){return t.data=t.data||{},t.data.isolate=[],t}(jn(t))).fold(a,jn(t)).drop(1).map(Or).startWith(t).map((function(t){return o.observe(t,{childList:!0,attributes:!0,characterData:!0,subtree:!0,attributeOldValue:!0,characterDataOldValue:!0}),t})).compose(Ar)})).flatten(),d=Me(c,u).endWhen(l).compose(fr(h)).map((function(t){return t[1]})).remember();d.addListener({error:e.reportSnabbdomError||Er});var y=new Sr(d,i);return new or(d,l,[],i,y,s)}}var jr="___",Cr=function(){function t(t){this._mockConfig=t,t.elements?this._elements=t.elements:this._elements=ae(oe.empty())}return t.prototype.elements=function(){var t=this._elements;return t._isCycleSource="MockedDOM",t},t.prototype.element=function(){var t=this.elements().filter((function(t){return t.length>0})).map((function(t){return t[0]})).remember(),e=ae(t);return e._isCycleSource="MockedDOM",e},t.prototype.events=function(t,e,n){var r=this._mockConfig[t],o=ae(r||oe.empty());return o._isCycleSource="MockedDOM",o},t.prototype.select=function(e){return new t(this._mockConfig[e]||{})},t.prototype.isolateSource=function(t,e){return t.select("."+jr+e)},t.prototype.isolateSink=function(t,e){return ae(oe.fromObservable(t).map((function(t){return t.sel&&-1!==t.sel.indexOf(jr+e)||(t.sel+="."+jr+e),t})))},t}();function Nr(t){return function(t){return"string"==typeof t&&t.length>0}(t)&&("."===t[0]||"#"===t[0])}function kr(t){return function(e,n,r){var o=void 0!==e,i=void 0!==n,s=void 0!==r;return Nr(e)?i&&s?$n(t+e,n,r):$n(t+e,i?n:{}):s?$n(t+e,n,r):i?$n(t,e,n):$n(t,o?e:{})}}var xr=["a","altGlyph","altGlyphDef","altGlyphItem","animate","animateColor","animateMotion","animateTransform","circle","clipPath","colorProfile","cursor","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotlight","feTile","feTurbulence","filter","font","fontFace","fontFaceFormat","fontFaceName","fontFaceSrc","fontFaceUri","foreignObject","g","glyph","glyphRef","hkern","image","line","linearGradient","marker","mask","metadata","missingGlyph","mpath","path","pattern","polygon","polyline","radialGradient","rect","script","set","stop","style","switch","symbol","text","textPath","title","tref","tspan","use","view","vkern"],Ir=kr("svg");xr.forEach((function(t){Ir[t]=kr(t)}));var Pr=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dir","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","meta","nav","noscript","object","ol","optgroup","option","p","param","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","u","ul","video"],Mr={SVG_TAG_NAMES:xr,TAG_NAMES:Pr,svg:Ir,isSelector:Nr,createTagFunction:kr};Pr.forEach((function(t){Mr[t]=kr(t)}));var Tr=Mr.svg,Dr=Mr.a,Lr=Mr.abbr,Fr=Mr.address,Br=Mr.area,Rr=Mr.article,qr=Mr.aside,Ur=Mr.audio,Wr=Mr.b,Gr=Mr.base,Vr=Mr.bdi,zr=Mr.bdo,Hr=Mr.blockquote,Jr=Mr.body,Xr=Mr.br,Yr=Mr.button,Zr=Mr.canvas,Kr=Mr.caption,Qr=Mr.cite,to=Mr.code,eo=Mr.col,no=Mr.colgroup,ro=Mr.dd,oo=Mr.del,io=Mr.dfn,so=Mr.dir,ao=Mr.div,co=Mr.dl,uo=Mr.dt,lo=Mr.em,po=Mr.embed,fo=Mr.fieldset,ho=Mr.figcaption,yo=Mr.figure,mo=Mr.footer,vo=Mr.form,go=Mr.h1,_o=Mr.h2,bo=Mr.h3,wo=Mr.h4,So=Mr.h5,Ao=Mr.h6,Oo=Mr.head,Eo=Mr.header,$o=Mr.hgroup,jo=Mr.hr,Co=Mr.html,No=Mr.i,ko=Mr.iframe,xo=Mr.img,Io=Mr.input,Po=Mr.ins,Mo=Mr.kbd,To=Mr.keygen,Do=Mr.label,Lo=Mr.legend,Fo=Mr.li,Bo=Mr.link,Ro=Mr.main,qo=Mr.map,Uo=Mr.mark,Wo=Mr.menu,Go=Mr.meta,Vo=Mr.nav,zo=Mr.noscript,Ho=Mr.object,Jo=Mr.ol,Xo=Mr.optgroup,Yo=Mr.option,Zo=Mr.p,Ko=Mr.param,Qo=Mr.pre,ti=Mr.progress,ei=Mr.q,ni=Mr.rp,ri=Mr.rt,oi=Mr.ruby,ii=Mr.s,si=Mr.samp,ai=Mr.script,ci=Mr.section,ui=Mr.select,li=Mr.small,pi=Mr.source,fi=Mr.span,hi=Mr.strong,di=Mr.style,yi=Mr.sub,mi=Mr.sup,vi=Mr.table,gi=Mr.tbody,_i=Mr.td,bi=Mr.textarea,wi=Mr.tfoot,Si=Mr.th,Ai=Mr.thead,Oi=Mr.title,Ei=Mr.tr,$i=Mr.u,ji=Mr.ul,Ci=Mr.video;function Ni(t){const e=new EventTarget;return t.subscribe({next:t=>e.dispatchEvent(new CustomEvent("data",{detail:t}))}),{select:t=>{const n=!t,r=Array.isArray(t)?t:[t];let o;const i=oe.create({start:t=>{o=({detail:e})=>{const o=e&&e.data||null;(n||r.includes(e.type))&&t.next(o)},e.addEventListener("data",o)},stop:t=>e.removeEventListener("data",o)});return ae(i)}}}function ki(t){t.addListener({next:t=>{console.log(t)}})}function xi(t){return/^[a-zA-Z0-9-_]+$/.test(t)}function Ii(t){if("string"!=typeof t)throw new Error("Class name must be a string");return t.trim().split(" ").reduce(((t,e)=>{if(0===e.trim().length)return t;if(!xi(e))throw new Error(`${e} is not a valid CSS class name`);return t.push(e),t}),[])}var Pi={};Object.defineProperty(Pi,"__esModule",{value:!0});var Mi=n,Ti=function(){function t(t,e){this.dt=t,this.ins=e,this.type="throttle",this.out=null,this.id=null}return t.prototype._start=function(t){this.out=t,this.ins._add(this)},t.prototype._stop=function(){this.ins._remove(this),this.out=null,this.id=null},t.prototype.clearInterval=function(){var t=this.id;null!==t&&clearInterval(t),this.id=null},t.prototype._n=function(t){var e=this,n=this.out;n&&(this.id||(n._n(t),this.id=setInterval((function(){e.clearInterval()}),this.dt)))},t.prototype._e=function(t){var e=this.out;e&&(this.clearInterval(),e._e(t))},t.prototype._c=function(){var t=this.out;t&&(this.clearInterval(),t._c())},t}();var Di=Pi.default=function(t){return function(e){return new Mi.Stream(new Ti(t,e))}};t.ABORT=Qe,t.MainDOMSource=or,t.MockedDOMSource=Cr,t.a=Dr,t.abbr=Lr,t.address=Fr,t.area=Br,t.article=Rr,t.aside=qr,t.audio=Ur,t.b=Wr,t.base=Gr,t.bdi=Vr,t.bdo=zr,t.blockquote=Hr,t.body=Jr,t.br=Xr,t.button=Yr,t.canvas=Zr,t.caption=Kr,t.cite=Qr,t.classes=function(...t){return t.reduce(((t,e)=>{var n,r;return"string"!=typeof e||t.includes(e)?Array.isArray(e)?t.push(...(r=e,r.map(Ii).flat())):"object"==typeof e&&t.push(...(n=e,Object.entries(n).filter((([t,e])=>"function"==typeof e?e():!!e)).map((([t,e])=>{const n=t.trim();if(!xi(n))throw new Error(`${n} is not a valid CSS class name`);return n})))):t.push(...Ii(e)),t}),[]).join(" ")},t.code=to,t.col=eo,t.colgroup=no,t.collection=Fe,t.component=function(t){const{name:e,sources:n,isolateOpts:r,stateSourceName:o="STATE"}=t;if(n&&"object"!=typeof n)throw new Error("Sources must be a Cycle.js sources object:",e);let i;i="string"==typeof r?{[o]:r}:!0===r?{}:r;const s=void 0===n;let a;if("object"==typeof i){const e=e=>{const n={...t,sources:e};return new tn(n).sinks};a=s?le(e,i):le(e,i)(n)}else a=s?e=>new tn({...t,sources:e}).sinks:new tn(t).sinks;return a},t.dd=ro,t.debounce=Je,t.del=oo,t.delay=Ge,t.dfn=io,t.dir=so,t.div=ao,t.dl=co,t.driverFromAsync=function(t,e={}){const{selector:n="category",args:r="value",return:o="value",pre:i=(t=>t),post:s=(t=>t)}=e,a=t.name||"[anonymous function]",c=typeof r;if(!("string"===c||"function"===c||Array.isArray(r)&&r.every((t=>"string"==typeof t))))throw new Error(`The 'args' option for driverFromAsync(${a}) must be a string, array of strings, or a function. Received ${c}`);if("string"!=typeof n)throw new Error(`The 'selector' option for driverFromAsync(${a}) must be a string. Received ${typeof n}`);return e=>{let c=null;const u=oe.create({start:t=>{c=t.next.bind(t)},stop:()=>{}});return e.addListener({next:e=>{const u=i(e);let l=[];if("object"==typeof u&&null!==u){if("function"==typeof r){const t=r(u);l=Array.isArray(t)?t:[t]}"string"==typeof r&&(l=[u[r]]),Array.isArray(r)&&(l=r.map((t=>u[t])))}const p=`Error in driver created using driverFromAsync(${a})`;t(...l).then((t=>{const r=t=>{let r;if(void 0===o)r=t,"object"==typeof r&&null!==r?r[n]=e[n]:console.warn(`The 'return' option for driverFromAsync(${a}) was not set, but the promise returned an non-object. The result will be returned as-is, but the '${n}' property will not be set, so will not be filtered by the 'select' method of the driver.`);else{if("string"!=typeof o)throw new Error(`The 'return' option for driverFromAsync(${a}) must be a string. Received ${typeof o}`);r={[o]:t,[n]:e[n]}}return r};if("function"==typeof t.then)t.then((t=>{const n=s(t,e);"function"==typeof n.then?n.then((t=>{c(r(t))})).catch((t=>console.error(`${p}: ${t}`))):c(r(rocessedOutgoing))})).catch((t=>console.error(`${p}: ${t}`)));else{const n=s(t,e);"function"==typeof n.then?n.then((t=>{c(r(t))})).catch((t=>console.error(`${p}: ${t}`))):c(r(n))}})).catch((t=>console.error(`${p}: ${t}`)))},error:t=>{console.error(`Error recieved from sink stream in driver created using driverFromAsync(${a}): ${t}`)},complete:()=>{console.warn(`Unexpected completion of sink stream to driver created using driverFromAsync(${a})`)}}),{select:t=>void 0===t?u:"function"==typeof t?u.filter(t):u.filter((e=>e?.[n]===t))}}},t.dropRepeats=ye,t.dt=uo,t.em=lo,t.embed=po,t.fieldset=fo,t.figcaption=ho,t.figure=yo,t.footer=mo,t.form=vo,t.h=$n,t.h1=go,t.h2=_o,t.h3=bo,t.h4=wo,t.h5=So,t.h6=Ao,t.head=Oo,t.header=Eo,t.hgroup=$o,t.hr=jo,t.html=Co,t.i=No,t.iframe=ko,t.img=xo,t.input=Io,t.ins=Po,t.kbd=Mo,t.keygen=To,t.label=Do,t.legend=Lo,t.li=Fo,t.link=Bo,t.main=Ro,t.makeDOMDriver=$r,t.map=qo,t.mark=Uo,t.menu=Wo,t.meta=Go,t.mockDOMSource=function(t){return new Cr(t)},t.nav=Vo,t.noscript=zo,t.object=Ho,t.ol=Jo,t.optgroup=Xo,t.option=Yo,t.p=Zo,t.param=Ko,t.pre=Qo,t.processForm=function(t,e={}){let{events:n=["input","submit"],preventDefault:r=!0}=e;"string"==typeof n&&(n=[n]);const o=n.map((e=>t.events(e)));return oe.merge(...o).map((t=>{r&&t.preventDefault();const e="submit"===t.type?t.srcElement:t.currentTarget,n=new FormData(e);let o={};o.event=t,o.eventType=t.type;const i=e.querySelector("input[type=submit]:focus");if(i){const{name:t,value:e}=i;o[t||"submit"]=e}for(let[t,e]of n.entries())o[t]=e;return o}))},t.progress=ti,t.q=ei,t.rp=ni,t.rt=ri,t.ruby=oi,t.run=function(t,e={},n={}){const{mountPoint:r="#root",fragments:o=!0}=n,i=function(t,e){return void 0===e&&(e="state"),function(n){var r=oe.create(),o=r.fold((function(t,e){return e(t)}),void 0).drop(1),i=n;i[e]=new we(o,e);var s=t(i);return s[e]&&Me(oe.fromObservable(s[e]),oe.never()).subscribe({next:function(t){return Le((function(){return r._n(t)}))},error:function(t){return Le((function(){return r._e(t)}))},complete:function(){return Le((function(){return r._c()}))}}),s}}(t,"STATE");return function(t,e){var n=un(t,e);return"undefined"!=typeof window&&window.CyclejsDevTool_startGraphSerializer&&window.CyclejsDevTool_startGraphSerializer(n.sinks),n.run()}(i,{...{EVENTS:Ni,DOM:$r(r,{snabbdomOptions:{experimental:{fragments:o}}}),LOG:ki},...e})},t.s=ii,t.samp=si,t.sampleCombine=fr,t.script=ai,t.section=ci,t.select=ui,t.small=li,t.source=pi,t.span=fi,t.strong=hi,t.style=di,t.sub=yi,t.sup=mi,t.svg=Tr,t.switchable=Be,t.table=vi,t.tbody=gi,t.td=_i,t.textarea=bi,t.tfoot=wi,t.th=Si,t.thead=Ai,t.throttle=Di,t.thunk=function(t,e,n,r){return void 0===r&&(r=n,n=e,e=void 0),$n(t,{key:e,hook:{init:Gn,prepatch:Vn},fn:n,args:r})},t.title=Oi,t.tr=Ei,t.u=$i,t.ul=ji,t.video=Ci,t.xs=oe}));
|
package/package.json
CHANGED