From e4fa1e69e7ebfb627c7198fd1a9881e9327ec4d4 Mon Sep 17 00:00:00 2001 From: Pinapelz Date: Sat, 28 Jun 2025 17:26:46 -0700 Subject: initial commit: scaffolding --- .../dist/esm/internal/observable/connectable.js | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 node_modules/rxjs/dist/esm/internal/observable/connectable.js (limited to 'node_modules/rxjs/dist/esm/internal/observable/connectable.js') diff --git a/node_modules/rxjs/dist/esm/internal/observable/connectable.js b/node_modules/rxjs/dist/esm/internal/observable/connectable.js new file mode 100644 index 0000000..c4cb530 --- /dev/null +++ b/node_modules/rxjs/dist/esm/internal/observable/connectable.js @@ -0,0 +1,26 @@ +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 \ No newline at end of file -- cgit v1.2.3