diff --git a/client/lib/dom-effects/link-replace.dom-effect.ts b/client/lib/dom-effects/link-replace.dom-effect.ts index 17501d13a..52f70639c 100644 --- a/client/lib/dom-effects/link-replace.dom-effect.ts +++ b/client/lib/dom-effects/link-replace.dom-effect.ts @@ -2,7 +2,7 @@ import { map } from "rxjs/operators/map"; import { Inputs } from "../index"; import { filter } from "rxjs/operators/filter"; import { withLatestFrom } from "rxjs/operators/withLatestFrom"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import * as Log from "../log"; import { pluck } from "rxjs/operators/pluck"; import { Events } from "../dom-effects"; diff --git a/client/lib/dom-effects/prop-set.dom-effect.ts b/client/lib/dom-effects/prop-set.dom-effect.ts index 580eaa4c1..cb3501a97 100644 --- a/client/lib/dom-effects/prop-set.dom-effect.ts +++ b/client/lib/dom-effects/prop-set.dom-effect.ts @@ -1,6 +1,6 @@ import { map } from "rxjs/operators/map"; import { tap } from "rxjs/operators/tap"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { Events } from "../dom-effects"; import * as Log from "../log"; diff --git a/client/lib/dom-effects/set-scroll.dom-effect.ts b/client/lib/dom-effects/set-scroll.dom-effect.ts index c8a7ab216..0de08ba84 100644 --- a/client/lib/dom-effects/set-scroll.dom-effect.ts +++ b/client/lib/dom-effects/set-scroll.dom-effect.ts @@ -2,7 +2,7 @@ import { Inputs } from "../index"; import { ignoreElements } from "rxjs/operators/ignoreElements"; import { withLatestFrom } from "rxjs/operators/withLatestFrom"; import { tap } from "rxjs/operators/tap"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { Events } from "../dom-effects"; export type SetScrollPayload = { x: number; y: number }; diff --git a/client/lib/dom-effects/set-window-name.dom-effect.ts b/client/lib/dom-effects/set-window-name.dom-effect.ts index 98a79c3c6..56ac206ce 100644 --- a/client/lib/dom-effects/set-window-name.dom-effect.ts +++ b/client/lib/dom-effects/set-window-name.dom-effect.ts @@ -2,7 +2,7 @@ import { Inputs } from "../index"; import { ignoreElements } from "rxjs/operators/ignoreElements"; import { withLatestFrom } from "rxjs/operators/withLatestFrom"; import { tap } from "rxjs/operators/tap"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { Events } from "../dom-effects"; export function setWindowNameDomEffect(xs: Observable, inputs: Inputs) { diff --git a/client/lib/dom-effects/style-set.dom-effect.ts b/client/lib/dom-effects/style-set.dom-effect.ts index c1e4b414f..feeea5084 100644 --- a/client/lib/dom-effects/style-set.dom-effect.ts +++ b/client/lib/dom-effects/style-set.dom-effect.ts @@ -1,7 +1,7 @@ import { map } from "rxjs/operators/map"; import { Events } from "../dom-effects"; import { tap } from "rxjs/operators/tap"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import * as Log from "../log"; export interface StyleSetPayload { diff --git a/client/lib/log.ts b/client/lib/log.ts index f228ef638..dadf7ebf5 100644 --- a/client/lib/log.ts +++ b/client/lib/log.ts @@ -97,12 +97,14 @@ export const logHandler$ = new BehaviorSubject({ * Now remove the element after the given timeout */ switchMap(([event, options, element, document]) => { - return timer(event[1] || 2000).do(() => { - element.style.display = "none"; - if (element.parentNode) { - document.body.removeChild(element); - } - }); + return timer(event[1] || 2000).pipe( + tap(() => { + element.style.display = "none"; + if (element.parentNode) { + document.body.removeChild(element); + } + }) + ); }) ); } diff --git a/client/lib/messages/BrowserLocation.ts b/client/lib/messages/BrowserLocation.ts index 8d49ffdc5..8dd1c0ef9 100644 --- a/client/lib/messages/BrowserLocation.ts +++ b/client/lib/messages/BrowserLocation.ts @@ -2,7 +2,7 @@ import { Inputs } from "../index"; import { pluck } from "rxjs/operators/pluck"; import { filter } from "rxjs/operators/filter"; import { map } from "rxjs/operators/map"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { withLatestFrom } from "rxjs/operators/withLatestFrom"; import { browserSetLocation } from "../effects/browser-set-location.effect"; diff --git a/client/lib/messages/BrowserNotify.ts b/client/lib/messages/BrowserNotify.ts index c403f6612..a208f4d72 100644 --- a/client/lib/messages/BrowserNotify.ts +++ b/client/lib/messages/BrowserNotify.ts @@ -1,5 +1,5 @@ import { map } from "rxjs/operators/map"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import * as Log from "../log"; export interface IncomingPayload { diff --git a/client/lib/messages/BrowserReload.ts b/client/lib/messages/BrowserReload.ts index b4f7008aa..268e02b37 100644 --- a/client/lib/messages/BrowserReload.ts +++ b/client/lib/messages/BrowserReload.ts @@ -1,6 +1,6 @@ import { Inputs } from "../index"; import { filter } from "rxjs/operators/filter"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { withLatestFrom } from "rxjs/operators/withLatestFrom"; import { mergeMap } from "rxjs/operators/mergeMap"; import { concat } from "rxjs/observable/concat"; diff --git a/client/lib/messages/ClickEvent.ts b/client/lib/messages/ClickEvent.ts index 0c493794b..4d6c173c3 100644 --- a/client/lib/messages/ClickEvent.ts +++ b/client/lib/messages/ClickEvent.ts @@ -1,6 +1,6 @@ import { OutgoingSocketEvents } from "../socket-messages"; import { Inputs } from "../index"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { pluck } from "rxjs/operators/pluck"; import { filter } from "rxjs/operators/filter"; import { map } from "rxjs/operators/map"; diff --git a/client/lib/messages/Connection.ts b/client/lib/messages/Connection.ts index f92b60433..a601089b6 100644 --- a/client/lib/messages/Connection.ts +++ b/client/lib/messages/Connection.ts @@ -1,7 +1,7 @@ import { Inputs } from "../index"; import { pluck } from "rxjs/operators/pluck"; import { of } from "rxjs/observable/of"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import * as Log from "../log"; import { withLatestFrom } from "rxjs/operators/withLatestFrom"; import { mergeMap } from "rxjs/operators/mergeMap"; diff --git a/client/lib/messages/Disconnect.ts b/client/lib/messages/Disconnect.ts index b774a6d83..70b1cd727 100644 --- a/client/lib/messages/Disconnect.ts +++ b/client/lib/messages/Disconnect.ts @@ -1,5 +1,5 @@ import { ignoreElements } from "rxjs/operators/ignoreElements"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { tap } from "rxjs/operators/tap"; export function incomingDisconnect(xs: Observable) { diff --git a/client/lib/messages/FileReload.ts b/client/lib/messages/FileReload.ts index 92420a67e..b3288783e 100644 --- a/client/lib/messages/FileReload.ts +++ b/client/lib/messages/FileReload.ts @@ -4,7 +4,7 @@ import { empty } from "rxjs/observable/empty"; import { isBlacklisted } from "../utils"; import { FileReloadEventPayload } from "../../types/socket"; import { of } from "rxjs/observable/of"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { withLatestFrom } from "rxjs/operators/withLatestFrom"; import { mergeMap } from "rxjs/operators/mergeMap"; import { fileReload } from "../effects/file-reload.effect"; diff --git a/client/lib/messages/FormToggleEvent.ts b/client/lib/messages/FormToggleEvent.ts index e82e20914..063f4b874 100644 --- a/client/lib/messages/FormToggleEvent.ts +++ b/client/lib/messages/FormToggleEvent.ts @@ -4,7 +4,7 @@ import { Inputs } from "../index"; import { pluck } from "rxjs/operators/pluck"; import { filter } from "rxjs/operators/filter"; import { map } from "rxjs/operators/map"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { withLatestFrom } from "rxjs/operators/withLatestFrom"; import { setElementToggleValue } from "../effects/set-element-toggle-value.effect"; diff --git a/client/lib/messages/KeyupEvent.ts b/client/lib/messages/KeyupEvent.ts index fa7fb27fb..1f83ac3c0 100644 --- a/client/lib/messages/KeyupEvent.ts +++ b/client/lib/messages/KeyupEvent.ts @@ -4,7 +4,7 @@ import { Inputs } from "../index"; import { pluck } from "rxjs/operators/pluck"; import { filter } from "rxjs/operators/filter"; import { map } from "rxjs/operators/map"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { withLatestFrom } from "rxjs/operators/withLatestFrom"; import { setElementValue } from "../effects/set-element-value.effect"; diff --git a/client/lib/messages/OptionsSet.ts b/client/lib/messages/OptionsSet.ts index 759d9862a..0d7c090dd 100644 --- a/client/lib/messages/OptionsSet.ts +++ b/client/lib/messages/OptionsSet.ts @@ -1,5 +1,5 @@ import { map } from "rxjs/operators/map"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { setOptions } from "../effects/set-options.effect"; import { tap } from "rxjs/operators/tap"; diff --git a/client/lib/messages/ScrollEvent.ts b/client/lib/messages/ScrollEvent.ts index 08b277131..baa966616 100644 --- a/client/lib/messages/ScrollEvent.ts +++ b/client/lib/messages/ScrollEvent.ts @@ -3,7 +3,7 @@ import { Inputs } from "../index"; import { pluck } from "rxjs/operators/pluck"; import { filter } from "rxjs/operators/filter"; import { map } from "rxjs/operators/map"; -import { Observable } from "rxjs/Rx"; +import { Observable } from "rxjs/Observable"; import { withLatestFrom } from "rxjs/operators/withLatestFrom"; import { EffectNames } from "../effects"; diff --git a/client/lib/socket.ts b/client/lib/socket.ts index 4ae7980c8..9a7d1105f 100644 --- a/client/lib/socket.ts +++ b/client/lib/socket.ts @@ -1,5 +1,5 @@ import socket = require("socket.io-client"); -import { Observable } from "rxjs"; +import { Observable } from "rxjs/Observable"; import { BehaviorSubject } from "rxjs/BehaviorSubject"; import { of } from "rxjs/observable/of"; import { share } from "rxjs/operators/share"; diff --git a/client/lib/utils.ts b/client/lib/utils.ts index cf7fdb13c..48e03a7ec 100644 --- a/client/lib/utils.ts +++ b/client/lib/utils.ts @@ -3,6 +3,7 @@ import { timer } from "rxjs/observable/timer"; import { of } from "rxjs/observable/of"; import { switchMap } from "rxjs/operators/switchMap"; import { startWith } from "rxjs/operators/startWith"; +import { mapTo } from "rxjs/operators/mapTo"; export function each(incoming) { return [].slice.call(incoming || []); @@ -143,7 +144,7 @@ export function isBlacklisted(incoming) { export function createTimedBooleanSwitch(source$, timeout = 1000) { return source$.pipe( switchMap(() => { - return concat(of(false), timer(timeout).mapTo(true)); + return concat(of(false), timer(timeout).pipe(mapTo(true))); }), startWith(true) ); diff --git a/client/vendor/Reloader.ts b/client/vendor/Reloader.ts index b186c5837..f3652e639 100644 --- a/client/vendor/Reloader.ts +++ b/client/vendor/Reloader.ts @@ -8,6 +8,7 @@ import {getLocation, pathFromUrl, pathsMatch, pickBestMatch, splitUrl, updateSea import {empty} from "rxjs/observable/empty"; import {Observable} from "rxjs/Observable"; import {merge} from "rxjs/observable/merge"; +import {timer} from "rxjs/observable/timer"; import {from} from "rxjs/observable/from"; import {filter} from "rxjs/operators/filter"; import {map} from "rxjs/operators/map"; @@ -126,10 +127,12 @@ export function reload(document: Document, navigator: Navigator) { from(IMAGE_STYLES) .pipe( mergeMap(({ selector, styleNames }) => { - return from(document.querySelectorAll(`[style*=${selector}]`)) - .flatMap((img: HTMLImageElement) => { + return from(document.querySelectorAll(`[style*=${selector}]`)).pipe( + mergeMap((img: HTMLImageElement) => { return reloadStyleImages(img.style, styleNames, path, expando); }) + ) + }) ) ); @@ -292,8 +295,7 @@ export function reload(document: Document, navigator: Navigator) { .pipe( take(1) , mergeMap(() => { - return Observable - .timer(additionalWaitingTime) + return timer(additionalWaitingTime) .pipe( tap(() => { if (link && !link.parentNode) { @@ -329,7 +331,7 @@ export function reload(document: Document, navigator: Navigator) { link.parentNode.insertBefore(tempLink, link); } - return Observable.timer(200) + return timer(200) .pipe( tap(() => { if (tempLink.parentNode) { tempLink.parentNode.removeChild(tempLink); } @@ -345,13 +347,14 @@ export function reload(document: Document, navigator: Navigator) { rule.__LiveReload_newHref = href; }) , mergeMap(() => { - return Observable.timer(200) - .do(() => { + return timer(200).pipe( + tap(() => { // if another reattachImportedRule call is in progress, abandon this one if (rule.__LiveReload_newHref !== href) { return; } parent.insertRule(newRule, index); return parent.deleteRule(index+1); - }); + }) + ) }) ); } diff --git a/client/webpack.config.js b/client/webpack.config.js index 3c4068ba1..25cf8b807 100644 --- a/client/webpack.config.js +++ b/client/webpack.config.js @@ -13,6 +13,7 @@ module.exports = { path: path.join.apply(null, context.concat("dist")), filename: 'index.js', }, + devtool: "source-map", plugins: [ // new webpack.NoEmitOnErrorsPlugin(), ],