| 1234567891011121314151617181920212223242526 | import { Subject } from '../Subject';import { Observable } from '../Observable';import { defer } from './defer';const DEFAULT_CONFIG = {    connector: () => new Subject(),    resetOnDisconnect: true,};export function connectable(source, config = DEFAULT_CONFIG) {    let connection = null;    const { connector, resetOnDisconnect = true } = config;    let subject = connector();    const result = new Observable((subscriber) => {        return subject.subscribe(subscriber);    });    result.connect = () => {        if (!connection || connection.closed) {            connection = defer(() => source).subscribe(subject);            if (resetOnDisconnect) {                connection.add(() => (subject = connector()));            }        }        return connection;    };    return result;}//# sourceMappingURL=connectable.js.map
 |