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/cjs/internal/observable/connectable.js | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 node_modules/rxjs/dist/cjs/internal/observable/connectable.js (limited to 'node_modules/rxjs/dist/cjs/internal/observable/connectable.js') diff --git a/node_modules/rxjs/dist/cjs/internal/observable/connectable.js b/node_modules/rxjs/dist/cjs/internal/observable/connectable.js new file mode 100644 index 0000000..5952e6a --- /dev/null +++ b/node_modules/rxjs/dist/cjs/internal/observable/connectable.js @@ -0,0 +1,31 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.connectable = void 0; +var Subject_1 = require("../Subject"); +var Observable_1 = require("../Observable"); +var defer_1 = require("./defer"); +var DEFAULT_CONFIG = { + connector: function () { return new Subject_1.Subject(); }, + resetOnDisconnect: true, +}; +function connectable(source, config) { + if (config === void 0) { config = DEFAULT_CONFIG; } + var connection = null; + var connector = config.connector, _a = config.resetOnDisconnect, resetOnDisconnect = _a === void 0 ? true : _a; + var subject = connector(); + var result = new Observable_1.Observable(function (subscriber) { + return subject.subscribe(subscriber); + }); + result.connect = function () { + if (!connection || connection.closed) { + connection = defer_1.defer(function () { return source; }).subscribe(subject); + if (resetOnDisconnect) { + connection.add(function () { return (subject = connector()); }); + } + } + return connection; + }; + return result; +} +exports.connectable = connectable; +//# sourceMappingURL=connectable.js.map \ No newline at end of file -- cgit v1.2.3