{"version":3,"file":"index.umd.cjs","sources":["../src/log.ts","../node_modules/tslib/tslib.es6.js","../node_modules/rxjs/dist/esm5/internal/util/isFunction.js","../node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js","../node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js","../node_modules/rxjs/dist/esm5/internal/util/arrRemove.js","../node_modules/rxjs/dist/esm5/internal/Subscription.js","../node_modules/rxjs/dist/esm5/internal/config.js","../node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js","../node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js","../node_modules/rxjs/dist/esm5/internal/util/noop.js","../node_modules/rxjs/dist/esm5/internal/util/errorContext.js","../node_modules/rxjs/dist/esm5/internal/Subscriber.js","../node_modules/rxjs/dist/esm5/internal/symbol/observable.js","../node_modules/rxjs/dist/esm5/internal/util/identity.js","../node_modules/rxjs/dist/esm5/internal/util/pipe.js","../node_modules/rxjs/dist/esm5/internal/Observable.js","../node_modules/rxjs/dist/esm5/internal/util/ObjectUnsubscribedError.js","../node_modules/rxjs/dist/esm5/internal/Subject.js","../node_modules/@microsoft/signalr/dist/esm/Utils.js","../node_modules/@microsoft/signalr/dist/esm/Subject.js","../src/types/HubConnectionMock.ts","../src/utils.ts","../src/cypress-commands.ts","../src/index.ts"],"sourcesContent":["export default class Log {\n  private static _prefix: string = \"[Cypress-SignalR-Mock] - \";\n  private static _logLevel: number = 3;\n\n  public static debug(message: string) {\n    if (this._logLevel >= 4) {\n      console.debug(this._prefix + message);\n    }\n  }\n\n  public static info(message: string, value?: any) {\n    if (this._logLevel >= 3) {\n      if (value !== undefined) {\n        console.info(this._prefix + message, value);\n      } else {\n        console.info(this._prefix + message);\n      }\n    }\n  }\n\n  public static warn(message: string) {\n    if (this._logLevel >= 1) {\n      console.warn(this._prefix + message);\n    }\n  }\n\n  public static error(message: string, throwError: boolean = true) {\n    if (this._logLevel >= 0) {\n      if (throwError) {\n        throw new Error(this._prefix + message);\n      } else {\n        console.error(this._prefix + message);\n      }\n    }\n  }\n\n  static setLogLevel(logLevel: number): void {\n    this._logLevel = logLevel;\n  }\n}\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n    extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n    return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n    if (typeof b !== \"function\" && b !== null)\r\n        throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n    extendStatics(d, b);\r\n    function __() { this.constructor = d; }\r\n    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n    __assign = Object.assign || function __assign(t) {\r\n        for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n            s = arguments[i];\r\n            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n        }\r\n        return t;\r\n    }\r\n    return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n    var t = {};\r\n    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n        t[p] = s[p];\r\n    if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n                t[p[i]] = s[p[i]];\r\n        }\r\n    return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n    return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n    function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n    var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n    var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n    var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n    var _, done = false;\r\n    for (var i = decorators.length - 1; i >= 0; i--) {\r\n        var context = {};\r\n        for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n        for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n        context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n        var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n        if (kind === \"accessor\") {\r\n            if (result === void 0) continue;\r\n            if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n            if (_ = accept(result.get)) descriptor.get = _;\r\n            if (_ = accept(result.set)) descriptor.set = _;\r\n            if (_ = accept(result.init)) initializers.push(_);\r\n        }\r\n        else if (_ = accept(result)) {\r\n            if (kind === \"field\") initializers.push(_);\r\n            else descriptor[key] = _;\r\n        }\r\n    }\r\n    if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n    done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n    var useValue = arguments.length > 2;\r\n    for (var i = 0; i < initializers.length; i++) {\r\n        value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n    }\r\n    return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n    return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n    if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n    return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n    if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n    return new (P || (P = Promise))(function (resolve, reject) {\r\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n    });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n    return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n    function verb(n) { return function (v) { return step([n, v]); }; }\r\n    function step(op) {\r\n        if (f) throw new TypeError(\"Generator is already executing.\");\r\n        while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n            if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n            if (y = 0, t) op = [op[0] & 2, t.value];\r\n            switch (op[0]) {\r\n                case 0: case 1: t = op; break;\r\n                case 4: _.label++; return { value: op[1], done: false };\r\n                case 5: _.label++; y = op[1]; op = [0]; continue;\r\n                case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n                default:\r\n                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n                    if (t[2]) _.ops.pop();\r\n                    _.trys.pop(); continue;\r\n            }\r\n            op = body.call(thisArg, _);\r\n        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n    }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n    if (k2 === undefined) k2 = k;\r\n    var desc = Object.getOwnPropertyDescriptor(m, k);\r\n    if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n        desc = { enumerable: true, get: function() { return m[k]; } };\r\n    }\r\n    Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n    if (k2 === undefined) k2 = k;\r\n    o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n    for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n    var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n    if (m) return m.call(o);\r\n    if (o && typeof o.length === \"number\") return {\r\n        next: function () {\r\n            if (o && i >= o.length) o = void 0;\r\n            return { value: o && o[i++], done: !o };\r\n        }\r\n    };\r\n    throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n    var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n    if (!m) return o;\r\n    var i = m.call(o), r, ar = [], e;\r\n    try {\r\n        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n    }\r\n    catch (error) { e = { error: error }; }\r\n    finally {\r\n        try {\r\n            if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n        }\r\n        finally { if (e) throw e.error; }\r\n    }\r\n    return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n    for (var ar = [], i = 0; i < arguments.length; i++)\r\n        ar = ar.concat(__read(arguments[i]));\r\n    return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n    for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n    for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n        for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n            r[k] = a[j];\r\n    return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n        if (ar || !(i in from)) {\r\n            if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n            ar[i] = from[i];\r\n        }\r\n    }\r\n    return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n    return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n    if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n    var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n    return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n    function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n    function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n    function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n    function fulfill(value) { resume(\"next\", value); }\r\n    function reject(value) { resume(\"throw\", value); }\r\n    function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n    var i, p;\r\n    return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n    function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n    if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n    var m = o[Symbol.asyncIterator], i;\r\n    return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n    function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n    function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n    if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n    return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n    Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n    o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n    if (mod && mod.__esModule) return mod;\r\n    var result = {};\r\n    if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n    __setModuleDefault(result, mod);\r\n    return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n    return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n    if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n    if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n    return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n    if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n    if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n    if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n    return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n    if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n    return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","export function isFunction(value) {\n    return typeof value === 'function';\n}\n//# sourceMappingURL=isFunction.js.map","export function createErrorClass(createImpl) {\n    var _super = function (instance) {\n        Error.call(instance);\n        instance.stack = new Error().stack;\n    };\n    var ctorFunc = createImpl(_super);\n    ctorFunc.prototype = Object.create(Error.prototype);\n    ctorFunc.prototype.constructor = ctorFunc;\n    return ctorFunc;\n}\n//# sourceMappingURL=createErrorClass.js.map","import { createErrorClass } from './createErrorClass';\nexport var UnsubscriptionError = createErrorClass(function (_super) {\n    return function UnsubscriptionErrorImpl(errors) {\n        _super(this);\n        this.message = errors\n            ? errors.length + \" errors occurred during unsubscription:\\n\" + errors.map(function (err, i) { return i + 1 + \") \" + err.toString(); }).join('\\n  ')\n            : '';\n        this.name = 'UnsubscriptionError';\n        this.errors = errors;\n    };\n});\n//# sourceMappingURL=UnsubscriptionError.js.map","export function arrRemove(arr, item) {\n    if (arr) {\n        var index = arr.indexOf(item);\n        0 <= index && arr.splice(index, 1);\n    }\n}\n//# sourceMappingURL=arrRemove.js.map","import { __read, __spreadArray, __values } from \"tslib\";\nimport { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { arrRemove } from './util/arrRemove';\nvar Subscription = (function () {\n    function Subscription(initialTeardown) {\n        this.initialTeardown = initialTeardown;\n        this.closed = false;\n        this._parentage = null;\n        this._finalizers = null;\n    }\n    Subscription.prototype.unsubscribe = function () {\n        var e_1, _a, e_2, _b;\n        var errors;\n        if (!this.closed) {\n            this.closed = true;\n            var _parentage = this._parentage;\n            if (_parentage) {\n                this._parentage = null;\n                if (Array.isArray(_parentage)) {\n                    try {\n                        for (var _parentage_1 = __values(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) {\n                            var parent_1 = _parentage_1_1.value;\n                            parent_1.remove(this);\n                        }\n                    }\n                    catch (e_1_1) { e_1 = { error: e_1_1 }; }\n                    finally {\n                        try {\n                            if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) _a.call(_parentage_1);\n                        }\n                        finally { if (e_1) throw e_1.error; }\n                    }\n                }\n                else {\n                    _parentage.remove(this);\n                }\n            }\n            var initialFinalizer = this.initialTeardown;\n            if (isFunction(initialFinalizer)) {\n                try {\n                    initialFinalizer();\n                }\n                catch (e) {\n                    errors = e instanceof UnsubscriptionError ? e.errors : [e];\n                }\n            }\n            var _finalizers = this._finalizers;\n            if (_finalizers) {\n                this._finalizers = null;\n                try {\n                    for (var _finalizers_1 = __values(_finalizers), _finalizers_1_1 = _finalizers_1.next(); !_finalizers_1_1.done; _finalizers_1_1 = _finalizers_1.next()) {\n                        var finalizer = _finalizers_1_1.value;\n                        try {\n                            execFinalizer(finalizer);\n                        }\n                        catch (err) {\n                            errors = errors !== null && errors !== void 0 ? errors : [];\n                            if (err instanceof UnsubscriptionError) {\n                                errors = __spreadArray(__spreadArray([], __read(errors)), __read(err.errors));\n                            }\n                            else {\n                                errors.push(err);\n                            }\n                        }\n                    }\n                }\n                catch (e_2_1) { e_2 = { error: e_2_1 }; }\n                finally {\n                    try {\n                        if (_finalizers_1_1 && !_finalizers_1_1.done && (_b = _finalizers_1.return)) _b.call(_finalizers_1);\n                    }\n                    finally { if (e_2) throw e_2.error; }\n                }\n            }\n            if (errors) {\n                throw new UnsubscriptionError(errors);\n            }\n        }\n    };\n    Subscription.prototype.add = function (teardown) {\n        var _a;\n        if (teardown && teardown !== this) {\n            if (this.closed) {\n                execFinalizer(teardown);\n            }\n            else {\n                if (teardown instanceof Subscription) {\n                    if (teardown.closed || teardown._hasParent(this)) {\n                        return;\n                    }\n                    teardown._addParent(this);\n                }\n                (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown);\n            }\n        }\n    };\n    Subscription.prototype._hasParent = function (parent) {\n        var _parentage = this._parentage;\n        return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n    };\n    Subscription.prototype._addParent = function (parent) {\n        var _parentage = this._parentage;\n        this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n    };\n    Subscription.prototype._removeParent = function (parent) {\n        var _parentage = this._parentage;\n        if (_parentage === parent) {\n            this._parentage = null;\n        }\n        else if (Array.isArray(_parentage)) {\n            arrRemove(_parentage, parent);\n        }\n    };\n    Subscription.prototype.remove = function (teardown) {\n        var _finalizers = this._finalizers;\n        _finalizers && arrRemove(_finalizers, teardown);\n        if (teardown instanceof Subscription) {\n            teardown._removeParent(this);\n        }\n    };\n    Subscription.EMPTY = (function () {\n        var empty = new Subscription();\n        empty.closed = true;\n        return empty;\n    })();\n    return Subscription;\n}());\nexport { Subscription };\nexport var EMPTY_SUBSCRIPTION = Subscription.EMPTY;\nexport function isSubscription(value) {\n    return (value instanceof Subscription ||\n        (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe)));\n}\nfunction execFinalizer(finalizer) {\n    if (isFunction(finalizer)) {\n        finalizer();\n    }\n    else {\n        finalizer.unsubscribe();\n    }\n}\n//# sourceMappingURL=Subscription.js.map","export var config = {\n    onUnhandledError: null,\n    onStoppedNotification: null,\n    Promise: undefined,\n    useDeprecatedSynchronousErrorHandling: false,\n    useDeprecatedNextContext: false,\n};\n//# sourceMappingURL=config.js.map","import { __read, __spreadArray } from \"tslib\";\nexport var timeoutProvider = {\n    setTimeout: function (handler, timeout) {\n        var args = [];\n        for (var _i = 2; _i < arguments.length; _i++) {\n            args[_i - 2] = arguments[_i];\n        }\n        var delegate = timeoutProvider.delegate;\n        if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) {\n            return delegate.setTimeout.apply(delegate, __spreadArray([handler, timeout], __read(args)));\n        }\n        return setTimeout.apply(void 0, __spreadArray([handler, timeout], __read(args)));\n    },\n    clearTimeout: function (handle) {\n        var delegate = timeoutProvider.delegate;\n        return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle);\n    },\n    delegate: undefined,\n};\n//# sourceMappingURL=timeoutProvider.js.map","import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\nexport function reportUnhandledError(err) {\n    timeoutProvider.setTimeout(function () {\n        var onUnhandledError = config.onUnhandledError;\n        if (onUnhandledError) {\n            onUnhandledError(err);\n        }\n        else {\n            throw err;\n        }\n    });\n}\n//# sourceMappingURL=reportUnhandledError.js.map","export function noop() { }\n//# sourceMappingURL=noop.js.map","import { config } from '../config';\nvar context = null;\nexport function errorContext(cb) {\n    if (config.useDeprecatedSynchronousErrorHandling) {\n        var isRoot = !context;\n        if (isRoot) {\n            context = { errorThrown: false, error: null };\n        }\n        cb();\n        if (isRoot) {\n            var _a = context, errorThrown = _a.errorThrown, error = _a.error;\n            context = null;\n            if (errorThrown) {\n                throw error;\n            }\n        }\n    }\n    else {\n        cb();\n    }\n}\nexport function captureError(err) {\n    if (config.useDeprecatedSynchronousErrorHandling && context) {\n        context.errorThrown = true;\n        context.error = err;\n    }\n}\n//# sourceMappingURL=errorContext.js.map","import { __extends } from \"tslib\";\nimport { isFunction } from './util/isFunction';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\nvar Subscriber = (function (_super) {\n    __extends(Subscriber, _super);\n    function Subscriber(destination) {\n        var _this = _super.call(this) || this;\n        _this.isStopped = false;\n        if (destination) {\n            _this.destination = destination;\n            if (isSubscription(destination)) {\n                destination.add(_this);\n            }\n        }\n        else {\n            _this.destination = EMPTY_OBSERVER;\n        }\n        return _this;\n    }\n    Subscriber.create = function (next, error, complete) {\n        return new SafeSubscriber(next, error, complete);\n    };\n    Subscriber.prototype.next = function (value) {\n        if (this.isStopped) {\n            handleStoppedNotification(nextNotification(value), this);\n        }\n        else {\n            this._next(value);\n        }\n    };\n    Subscriber.prototype.error = function (err) {\n        if (this.isStopped) {\n            handleStoppedNotification(errorNotification(err), this);\n        }\n        else {\n            this.isStopped = true;\n            this._error(err);\n        }\n    };\n    Subscriber.prototype.complete = function () {\n        if (this.isStopped) {\n            handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n        }\n        else {\n            this.isStopped = true;\n            this._complete();\n        }\n    };\n    Subscriber.prototype.unsubscribe = function () {\n        if (!this.closed) {\n            this.isStopped = true;\n            _super.prototype.unsubscribe.call(this);\n            this.destination = null;\n        }\n    };\n    Subscriber.prototype._next = function (value) {\n        this.destination.next(value);\n    };\n    Subscriber.prototype._error = function (err) {\n        try {\n            this.destination.error(err);\n        }\n        finally {\n            this.unsubscribe();\n        }\n    };\n    Subscriber.prototype._complete = function () {\n        try {\n            this.destination.complete();\n        }\n        finally {\n            this.unsubscribe();\n        }\n    };\n    return Subscriber;\n}(Subscription));\nexport { Subscriber };\nvar _bind = Function.prototype.bind;\nfunction bind(fn, thisArg) {\n    return _bind.call(fn, thisArg);\n}\nvar ConsumerObserver = (function () {\n    function ConsumerObserver(partialObserver) {\n        this.partialObserver = partialObserver;\n    }\n    ConsumerObserver.prototype.next = function (value) {\n        var partialObserver = this.partialObserver;\n        if (partialObserver.next) {\n            try {\n                partialObserver.next(value);\n            }\n            catch (error) {\n                handleUnhandledError(error);\n            }\n        }\n    };\n    ConsumerObserver.prototype.error = function (err) {\n        var partialObserver = this.partialObserver;\n        if (partialObserver.error) {\n            try {\n                partialObserver.error(err);\n            }\n            catch (error) {\n                handleUnhandledError(error);\n            }\n        }\n        else {\n            handleUnhandledError(err);\n        }\n    };\n    ConsumerObserver.prototype.complete = function () {\n        var partialObserver = this.partialObserver;\n        if (partialObserver.complete) {\n            try {\n                partialObserver.complete();\n            }\n            catch (error) {\n                handleUnhandledError(error);\n            }\n        }\n    };\n    return ConsumerObserver;\n}());\nvar SafeSubscriber = (function (_super) {\n    __extends(SafeSubscriber, _super);\n    function SafeSubscriber(observerOrNext, error, complete) {\n        var _this = _super.call(this) || this;\n        var partialObserver;\n        if (isFunction(observerOrNext) || !observerOrNext) {\n            partialObserver = {\n                next: (observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : undefined),\n                error: error !== null && error !== void 0 ? error : undefined,\n                complete: complete !== null && complete !== void 0 ? complete : undefined,\n            };\n        }\n        else {\n            var context_1;\n            if (_this && config.useDeprecatedNextContext) {\n                context_1 = Object.create(observerOrNext);\n                context_1.unsubscribe = function () { return _this.unsubscribe(); };\n                partialObserver = {\n                    next: observerOrNext.next && bind(observerOrNext.next, context_1),\n                    error: observerOrNext.error && bind(observerOrNext.error, context_1),\n                    complete: observerOrNext.complete && bind(observerOrNext.complete, context_1),\n                };\n            }\n            else {\n                partialObserver = observerOrNext;\n            }\n        }\n        _this.destination = new ConsumerObserver(partialObserver);\n        return _this;\n    }\n    return SafeSubscriber;\n}(Subscriber));\nexport { SafeSubscriber };\nfunction handleUnhandledError(error) {\n    if (config.useDeprecatedSynchronousErrorHandling) {\n        captureError(error);\n    }\n    else {\n        reportUnhandledError(error);\n    }\n}\nfunction defaultErrorHandler(err) {\n    throw err;\n}\nfunction handleStoppedNotification(notification, subscriber) {\n    var onStoppedNotification = config.onStoppedNotification;\n    onStoppedNotification && timeoutProvider.setTimeout(function () { return onStoppedNotification(notification, subscriber); });\n}\nexport var EMPTY_OBSERVER = {\n    closed: true,\n    next: noop,\n    error: defaultErrorHandler,\n    complete: noop,\n};\n//# sourceMappingURL=Subscriber.js.map","export var observable = (function () { return (typeof Symbol === 'function' && Symbol.observable) || '@@observable'; })();\n//# sourceMappingURL=observable.js.map","export function identity(x) {\n    return x;\n}\n//# sourceMappingURL=identity.js.map","import { identity } from './identity';\nexport function pipe() {\n    var fns = [];\n    for (var _i = 0; _i < arguments.length; _i++) {\n        fns[_i] = arguments[_i];\n    }\n    return pipeFromArray(fns);\n}\nexport function pipeFromArray(fns) {\n    if (fns.length === 0) {\n        return identity;\n    }\n    if (fns.length === 1) {\n        return fns[0];\n    }\n    return function piped(input) {\n        return fns.reduce(function (prev, fn) { return fn(prev); }, input);\n    };\n}\n//# sourceMappingURL=pipe.js.map","import { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription } from './Subscription';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nimport { errorContext } from './util/errorContext';\nvar Observable = (function () {\n    function Observable(subscribe) {\n        if (subscribe) {\n            this._subscribe = subscribe;\n        }\n    }\n    Observable.prototype.lift = function (operator) {\n        var observable = new Observable();\n        observable.source = this;\n        observable.operator = operator;\n        return observable;\n    };\n    Observable.prototype.subscribe = function (observerOrNext, error, complete) {\n        var _this = this;\n        var subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n        errorContext(function () {\n            var _a = _this, operator = _a.operator, source = _a.source;\n            subscriber.add(operator\n                ?\n                    operator.call(subscriber, source)\n                : source\n                    ?\n                        _this._subscribe(subscriber)\n                    :\n                        _this._trySubscribe(subscriber));\n        });\n        return subscriber;\n    };\n    Observable.prototype._trySubscribe = function (sink) {\n        try {\n            return this._subscribe(sink);\n        }\n        catch (err) {\n            sink.error(err);\n        }\n    };\n    Observable.prototype.forEach = function (next, promiseCtor) {\n        var _this = this;\n        promiseCtor = getPromiseCtor(promiseCtor);\n        return new promiseCtor(function (resolve, reject) {\n            var subscriber = new SafeSubscriber({\n                next: function (value) {\n                    try {\n                        next(value);\n                    }\n                    catch (err) {\n                        reject(err);\n                        subscriber.unsubscribe();\n                    }\n                },\n                error: reject,\n                complete: resolve,\n            });\n            _this.subscribe(subscriber);\n        });\n    };\n    Observable.prototype._subscribe = function (subscriber) {\n        var _a;\n        return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber);\n    };\n    Observable.prototype[Symbol_observable] = function () {\n        return this;\n    };\n    Observable.prototype.pipe = function () {\n        var operations = [];\n        for (var _i = 0; _i < arguments.length; _i++) {\n            operations[_i] = arguments[_i];\n        }\n        return pipeFromArray(operations)(this);\n    };\n    Observable.prototype.toPromise = function (promiseCtor) {\n        var _this = this;\n        promiseCtor = getPromiseCtor(promiseCtor);\n        return new promiseCtor(function (resolve, reject) {\n            var value;\n            _this.subscribe(function (x) { return (value = x); }, function (err) { return reject(err); }, function () { return resolve(value); });\n        });\n    };\n    Observable.create = function (subscribe) {\n        return new Observable(subscribe);\n    };\n    return Observable;\n}());\nexport { Observable };\nfunction getPromiseCtor(promiseCtor) {\n    var _a;\n    return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config.Promise) !== null && _a !== void 0 ? _a : Promise;\n}\nfunction isObserver(value) {\n    return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\nfunction isSubscriber(value) {\n    return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n//# sourceMappingURL=Observable.js.map","import { createErrorClass } from './createErrorClass';\nexport var ObjectUnsubscribedError = createErrorClass(function (_super) {\n    return function ObjectUnsubscribedErrorImpl() {\n        _super(this);\n        this.name = 'ObjectUnsubscribedError';\n        this.message = 'object unsubscribed';\n    };\n});\n//# sourceMappingURL=ObjectUnsubscribedError.js.map","import { __extends, __values } from \"tslib\";\nimport { Observable } from './Observable';\nimport { Subscription, EMPTY_SUBSCRIPTION } from './Subscription';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { arrRemove } from './util/arrRemove';\nimport { errorContext } from './util/errorContext';\nvar Subject = (function (_super) {\n    __extends(Subject, _super);\n    function Subject() {\n        var _this = _super.call(this) || this;\n        _this.closed = false;\n        _this.currentObservers = null;\n        _this.observers = [];\n        _this.isStopped = false;\n        _this.hasError = false;\n        _this.thrownError = null;\n        return _this;\n    }\n    Subject.prototype.lift = function (operator) {\n        var subject = new AnonymousSubject(this, this);\n        subject.operator = operator;\n        return subject;\n    };\n    Subject.prototype._throwIfClosed = function () {\n        if (this.closed) {\n            throw new ObjectUnsubscribedError();\n        }\n    };\n    Subject.prototype.next = function (value) {\n        var _this = this;\n        errorContext(function () {\n            var e_1, _a;\n            _this._throwIfClosed();\n            if (!_this.isStopped) {\n                if (!_this.currentObservers) {\n                    _this.currentObservers = Array.from(_this.observers);\n                }\n                try {\n                    for (var _b = __values(_this.currentObservers), _c = _b.next(); !_c.done; _c = _b.next()) {\n                        var observer = _c.value;\n                        observer.next(value);\n                    }\n                }\n                catch (e_1_1) { e_1 = { error: e_1_1 }; }\n                finally {\n                    try {\n                        if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n                    }\n                    finally { if (e_1) throw e_1.error; }\n                }\n            }\n        });\n    };\n    Subject.prototype.error = function (err) {\n        var _this = this;\n        errorContext(function () {\n            _this._throwIfClosed();\n            if (!_this.isStopped) {\n                _this.hasError = _this.isStopped = true;\n                _this.thrownError = err;\n                var observers = _this.observers;\n                while (observers.length) {\n                    observers.shift().error(err);\n                }\n            }\n        });\n    };\n    Subject.prototype.complete = function () {\n        var _this = this;\n        errorContext(function () {\n            _this._throwIfClosed();\n            if (!_this.isStopped) {\n                _this.isStopped = true;\n                var observers = _this.observers;\n                while (observers.length) {\n                    observers.shift().complete();\n                }\n            }\n        });\n    };\n    Subject.prototype.unsubscribe = function () {\n        this.isStopped = this.closed = true;\n        this.observers = this.currentObservers = null;\n    };\n    Object.defineProperty(Subject.prototype, \"observed\", {\n        get: function () {\n            var _a;\n            return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0;\n        },\n        enumerable: false,\n        configurable: true\n    });\n    Subject.prototype._trySubscribe = function (subscriber) {\n        this._throwIfClosed();\n        return _super.prototype._trySubscribe.call(this, subscriber);\n    };\n    Subject.prototype._subscribe = function (subscriber) {\n        this._throwIfClosed();\n        this._checkFinalizedStatuses(subscriber);\n        return this._innerSubscribe(subscriber);\n    };\n    Subject.prototype._innerSubscribe = function (subscriber) {\n        var _this = this;\n        var _a = this, hasError = _a.hasError, isStopped = _a.isStopped, observers = _a.observers;\n        if (hasError || isStopped) {\n            return EMPTY_SUBSCRIPTION;\n        }\n        this.currentObservers = null;\n        observers.push(subscriber);\n        return new Subscription(function () {\n            _this.currentObservers = null;\n            arrRemove(observers, subscriber);\n        });\n    };\n    Subject.prototype._checkFinalizedStatuses = function (subscriber) {\n        var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, isStopped = _a.isStopped;\n        if (hasError) {\n            subscriber.error(thrownError);\n        }\n        else if (isStopped) {\n            subscriber.complete();\n        }\n    };\n    Subject.prototype.asObservable = function () {\n        var observable = new Observable();\n        observable.source = this;\n        return observable;\n    };\n    Subject.create = function (destination, source) {\n        return new AnonymousSubject(destination, source);\n    };\n    return Subject;\n}(Observable));\nexport { Subject };\nvar AnonymousSubject = (function (_super) {\n    __extends(AnonymousSubject, _super);\n    function AnonymousSubject(destination, source) {\n        var _this = _super.call(this) || this;\n        _this.destination = destination;\n        _this.source = source;\n        return _this;\n    }\n    AnonymousSubject.prototype.next = function (value) {\n        var _a, _b;\n        (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value);\n    };\n    AnonymousSubject.prototype.error = function (err) {\n        var _a, _b;\n        (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err);\n    };\n    AnonymousSubject.prototype.complete = function () {\n        var _a, _b;\n        (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a);\n    };\n    AnonymousSubject.prototype._subscribe = function (subscriber) {\n        var _a, _b;\n        return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : EMPTY_SUBSCRIPTION;\n    };\n    return AnonymousSubject;\n}(Subject));\nexport { AnonymousSubject };\n//# sourceMappingURL=Subject.js.map","// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { NullLogger } from \"./Loggers\";\r\nimport { VERSION } from \"./pkg-version\";\r\n// Version token that will be replaced by the prepack command\r\n/** The version of the SignalR client. */\r\nexport { VERSION };\r\n/** @private */\r\nexport class Arg {\r\n    static isRequired(val, name) {\r\n        if (val === null || val === undefined) {\r\n            throw new Error(`The '${name}' argument is required.`);\r\n        }\r\n    }\r\n    static isNotEmpty(val, name) {\r\n        if (!val || val.match(/^\\s*$/)) {\r\n            throw new Error(`The '${name}' argument should not be empty.`);\r\n        }\r\n    }\r\n    static isIn(val, values, name) {\r\n        // TypeScript enums have keys for **both** the name and the value of each enum member on the type itself.\r\n        if (!(val in values)) {\r\n            throw new Error(`Unknown ${name} value: ${val}.`);\r\n        }\r\n    }\r\n}\r\n/** @private */\r\nexport class Platform {\r\n    // react-native has a window but no document so we should check both\r\n    static get isBrowser() {\r\n        return !Platform.isNode && typeof window === \"object\" && typeof window.document === \"object\";\r\n    }\r\n    // WebWorkers don't have a window object so the isBrowser check would fail\r\n    static get isWebWorker() {\r\n        return !Platform.isNode && typeof self === \"object\" && \"importScripts\" in self;\r\n    }\r\n    // react-native has a window but no document\r\n    static get isReactNative() {\r\n        return !Platform.isNode && typeof window === \"object\" && typeof window.document === \"undefined\";\r\n    }\r\n    // Node apps shouldn't have a window object, but WebWorkers don't either\r\n    // so we need to check for both WebWorker and window\r\n    static get isNode() {\r\n        return typeof process !== \"undefined\" && process.release && process.release.name === \"node\";\r\n    }\r\n}\r\n/** @private */\r\nexport function getDataDetail(data, includeContent) {\r\n    let detail = \"\";\r\n    if (isArrayBuffer(data)) {\r\n        detail = `Binary data of length ${data.byteLength}`;\r\n        if (includeContent) {\r\n            detail += `. Content: '${formatArrayBuffer(data)}'`;\r\n        }\r\n    }\r\n    else if (typeof data === \"string\") {\r\n        detail = `String data of length ${data.length}`;\r\n        if (includeContent) {\r\n            detail += `. Content: '${data}'`;\r\n        }\r\n    }\r\n    return detail;\r\n}\r\n/** @private */\r\nexport function formatArrayBuffer(data) {\r\n    const view = new Uint8Array(data);\r\n    // Uint8Array.map only supports returning another Uint8Array?\r\n    let str = \"\";\r\n    view.forEach((num) => {\r\n        const pad = num < 16 ? \"0\" : \"\";\r\n        str += `0x${pad}${num.toString(16)} `;\r\n    });\r\n    // Trim of trailing space.\r\n    return str.substr(0, str.length - 1);\r\n}\r\n// Also in signalr-protocol-msgpack/Utils.ts\r\n/** @private */\r\nexport function isArrayBuffer(val) {\r\n    return val && typeof ArrayBuffer !== \"undefined\" &&\r\n        (val instanceof ArrayBuffer ||\r\n            // Sometimes we get an ArrayBuffer that doesn't satisfy instanceof\r\n            (val.constructor && val.constructor.name === \"ArrayBuffer\"));\r\n}\r\n/** @private */\r\nexport async function sendMessage(logger, transportName, httpClient, url, content, options) {\r\n    const headers = {};\r\n    const [name, value] = getUserAgentHeader();\r\n    headers[name] = value;\r\n    logger.log(LogLevel.Trace, `(${transportName} transport) sending data. ${getDataDetail(content, options.logMessageContent)}.`);\r\n    const responseType = isArrayBuffer(content) ? \"arraybuffer\" : \"text\";\r\n    const response = await httpClient.post(url, {\r\n        content,\r\n        headers: { ...headers, ...options.headers },\r\n        responseType,\r\n        timeout: options.timeout,\r\n        withCredentials: options.withCredentials,\r\n    });\r\n    logger.log(LogLevel.Trace, `(${transportName} transport) request complete. Response status: ${response.statusCode}.`);\r\n}\r\n/** @private */\r\nexport function createLogger(logger) {\r\n    if (logger === undefined) {\r\n        return new ConsoleLogger(LogLevel.Information);\r\n    }\r\n    if (logger === null) {\r\n        return NullLogger.instance;\r\n    }\r\n    if (logger.log !== undefined) {\r\n        return logger;\r\n    }\r\n    return new ConsoleLogger(logger);\r\n}\r\n/** @private */\r\nexport class SubjectSubscription {\r\n    constructor(subject, observer) {\r\n        this._subject = subject;\r\n        this._observer = observer;\r\n    }\r\n    dispose() {\r\n        const index = this._subject.observers.indexOf(this._observer);\r\n        if (index > -1) {\r\n            this._subject.observers.splice(index, 1);\r\n        }\r\n        if (this._subject.observers.length === 0 && this._subject.cancelCallback) {\r\n            this._subject.cancelCallback().catch((_) => { });\r\n        }\r\n    }\r\n}\r\n/** @private */\r\nexport class ConsoleLogger {\r\n    constructor(minimumLogLevel) {\r\n        this._minLevel = minimumLogLevel;\r\n        this.out = console;\r\n    }\r\n    log(logLevel, message) {\r\n        if (logLevel >= this._minLevel) {\r\n            const msg = `[${new Date().toISOString()}] ${LogLevel[logLevel]}: ${message}`;\r\n            switch (logLevel) {\r\n                case LogLevel.Critical:\r\n                case LogLevel.Error:\r\n                    this.out.error(msg);\r\n                    break;\r\n                case LogLevel.Warning:\r\n                    this.out.warn(msg);\r\n                    break;\r\n                case LogLevel.Information:\r\n                    this.out.info(msg);\r\n                    break;\r\n                default:\r\n                    // console.debug only goes to attached debuggers in Node, so we use console.log for Trace and Debug\r\n                    this.out.log(msg);\r\n                    break;\r\n            }\r\n        }\r\n    }\r\n}\r\n/** @private */\r\nexport function getUserAgentHeader() {\r\n    let userAgentHeaderName = \"X-SignalR-User-Agent\";\r\n    if (Platform.isNode) {\r\n        userAgentHeaderName = \"User-Agent\";\r\n    }\r\n    return [userAgentHeaderName, constructUserAgent(VERSION, getOsName(), getRuntime(), getRuntimeVersion())];\r\n}\r\n/** @private */\r\nexport function constructUserAgent(version, os, runtime, runtimeVersion) {\r\n    // Microsoft SignalR/[Version] ([Detailed Version]; [Operating System]; [Runtime]; [Runtime Version])\r\n    let userAgent = \"Microsoft SignalR/\";\r\n    const majorAndMinor = version.split(\".\");\r\n    userAgent += `${majorAndMinor[0]}.${majorAndMinor[1]}`;\r\n    userAgent += ` (${version}; `;\r\n    if (os && os !== \"\") {\r\n        userAgent += `${os}; `;\r\n    }\r\n    else {\r\n        userAgent += \"Unknown OS; \";\r\n    }\r\n    userAgent += `${runtime}`;\r\n    if (runtimeVersion) {\r\n        userAgent += `; ${runtimeVersion}`;\r\n    }\r\n    else {\r\n        userAgent += \"; Unknown Runtime Version\";\r\n    }\r\n    userAgent += \")\";\r\n    return userAgent;\r\n}\r\n// eslint-disable-next-line spaced-comment\r\n/*#__PURE__*/ function getOsName() {\r\n    if (Platform.isNode) {\r\n        switch (process.platform) {\r\n            case \"win32\":\r\n                return \"Windows NT\";\r\n            case \"darwin\":\r\n                return \"macOS\";\r\n            case \"linux\":\r\n                return \"Linux\";\r\n            default:\r\n                return process.platform;\r\n        }\r\n    }\r\n    else {\r\n        return \"\";\r\n    }\r\n}\r\n// eslint-disable-next-line spaced-comment\r\n/*#__PURE__*/ function getRuntimeVersion() {\r\n    if (Platform.isNode) {\r\n        return process.versions.node;\r\n    }\r\n    return undefined;\r\n}\r\nfunction getRuntime() {\r\n    if (Platform.isNode) {\r\n        return \"NodeJS\";\r\n    }\r\n    else {\r\n        return \"Browser\";\r\n    }\r\n}\r\n/** @private */\r\nexport function getErrorString(e) {\r\n    if (e.stack) {\r\n        return e.stack;\r\n    }\r\n    else if (e.message) {\r\n        return e.message;\r\n    }\r\n    return `${e}`;\r\n}\r\n/** @private */\r\nexport function getGlobalThis() {\r\n    // globalThis is semi-new and not available in Node until v12\r\n    if (typeof globalThis !== \"undefined\") {\r\n        return globalThis;\r\n    }\r\n    if (typeof self !== \"undefined\") {\r\n        return self;\r\n    }\r\n    if (typeof window !== \"undefined\") {\r\n        return window;\r\n    }\r\n    if (typeof global !== \"undefined\") {\r\n        return global;\r\n    }\r\n    throw new Error(\"could not find global\");\r\n}\r\n//# sourceMappingURL=Utils.js.map","// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { SubjectSubscription } from \"./Utils\";\r\n/** Stream implementation to stream items to the server. */\r\nexport class Subject {\r\n    constructor() {\r\n        this.observers = [];\r\n    }\r\n    next(item) {\r\n        for (const observer of this.observers) {\r\n            observer.next(item);\r\n        }\r\n    }\r\n    error(err) {\r\n        for (const observer of this.observers) {\r\n            if (observer.error) {\r\n                observer.error(err);\r\n            }\r\n        }\r\n    }\r\n    complete() {\r\n        for (const observer of this.observers) {\r\n            if (observer.complete) {\r\n                observer.complete();\r\n            }\r\n        }\r\n    }\r\n    subscribe(observer) {\r\n        this.observers.push(observer);\r\n        return new SubjectSubscription(this, observer);\r\n    }\r\n}\r\n//# sourceMappingURL=Subject.js.map","import Log from \"../log\";\nimport { Subject } from \"rxjs\";\nimport IPayload from \"./IPayload\";\nimport { IHubConnectionData } from \"./IHubConnectionData\";\nimport IServerInvoke from \"./IServerInvoke\";\nimport { IStreamResult, Subject as SignalrSubject } from \"@microsoft/signalr\";\n\n/**\n * Mock implementation of HubConnection,\n * Based on \"@microsoft/signalr\": \"7.0.5\" - \"@microsoft/signalr/src/HubConnection.ts\",\n */\nexport default class HubConnectionMock {\n  private _hubConnectionData: IHubConnectionData[] = [];\n  private _serverInvokes: IServerInvoke[] = [];\n  private _invokeResponses: { [key: string]: any } = {};\n  public name: string;\n\n  constructor(name: string) {\n    this.name = name;\n  }\n\n  public publish(messageType: string, ...values: any[]): void {\n    messageType = messageType.toLowerCase();\n\n    const channels = this._hubConnectionData.filter(\n      (x) => x.messageType === messageType\n    );\n    if (channels.length === 0) {\n      Log.warn(`No subscribers for ${messageType}`);\n      return;\n    }\n    Log.debug(\n      `Publishing action: ${messageType} to ${channels.length} subscribers`\n    );\n    channels.forEach((x) => {\n      x.channel.next({ name: messageType, values });\n    });\n  }\n\n  public verify(\n    messageType: string,\n    callback?: (invokes: IServerInvoke[]) => void\n  ): void {\n    messageType = messageType.toLowerCase();\n\n    const currentInvokes = this._serverInvokes.filter(\n      (s) => s.action === messageType\n    );\n\n    if (callback) {\n      callback(currentInvokes);\n    }\n  }\n\n  public mockInvoke(methodName: string, payload: any) {\n    this._invokeResponses[methodName] = payload;\n  }\n\n  public unmockInvoke(methodName: string) {\n    delete this._invokeResponses[methodName];\n  }\n\n  // region Native SignalR methods\n\n  /** Registers a handler that will be invoked when the hub method with the specified method name is invoked.\n   *\n   * @param {string} methodName The name of the hub method to define.\n   * @param {Function} newMethod The handler that will be raised when the hub method is invoked.\n   */\n  public on(methodName: string, newMethod: (...args: any[]) => any): void;\n  public on(methodName: string, newMethod: (...args: any[]) => void): void {\n    methodName = methodName.toLowerCase();\n\n    // Create if it doesn't exist yet\n    if (!this._hubConnectionData.some((x) => x.messageType === methodName)) {\n      this._hubConnectionData.push({\n        messageType: methodName,\n        isStream: false,\n        channel: new Subject<any>(),\n        subscriptions: [],\n      });\n    }\n\n    // Find the connection data\n    let connectionData = this._hubConnectionData.find(\n      (x) => x.messageType === methodName\n    );\n\n    if (!connectionData) {\n      throw new Error(`Could not find connection data for ${methodName}`);\n    }\n\n    // Subscribe to the channel\n    let subscription = connectionData.channel.subscribe((payload: IPayload) => {\n      newMethod(...payload.values);\n    });\n\n    connectionData.subscriptions.push({\n      handler: newMethod,\n      subscription,\n    });\n  }\n\n  /** Invokes a streaming hub method on the server using the specified name and arguments.\n   *\n   * @typeparam T The type of the items returned by the server.\n   * @param {string} methodName The name of the server method to invoke.\n   * @param {any[]} args The arguments used to invoke the server method.\n   * @returns {IStreamResult<T>} An object that yields results from the server as they are received.\n   */\n  // @ts-ignore\n  public stream<T = any>(methodName: string, ...args: any[]): IStreamResult<T> {\n    methodName = methodName.toLowerCase();\n\n    // Create if it doesn't exist yet\n    if (!this._hubConnectionData.some((x) => x.messageType === methodName)) {\n      this._hubConnectionData.push({\n        messageType: methodName,\n        isStream: true,\n        channel: new Subject<T>(),\n        subscriptions: [],\n      });\n    }\n\n    // Find the connection data\n    let connectionData = this._hubConnectionData.find(\n      (x) => x.messageType === methodName\n    );\n\n    if (!connectionData) {\n      throw new Error(`Could not find connection data for ${methodName}`);\n    }\n\n    const signalrSubject = new SignalrSubject<T>();\n\n    // SignalR has a custom subject\n    connectionData.channel.subscribe({\n      next: (x) => signalrSubject.next(x),\n      error: (err) => signalrSubject.error(err),\n      complete: () => signalrSubject.complete(),\n    });\n\n    return signalrSubject;\n  }\n\n  /** Invokes a hub method on the server using the specified name and arguments.\n   *\n   * The Promise returned by this method resolves when the server indicates it has finished invoking the method. When the promise\n   * resolves, the server has finished invoking the method. If the server method returns a result, it is produced as the result of\n   * resolving the Promise.\n   *\n   * @typeparam T The expected return type.\n   * @param {string} methodName The name of the server method to invoke.\n   * @param {any[]} args The arguments used to invoke the server method.\n   * @returns {Promise<T>} A Promise that resolves with the result of the server method (if any), or rejects with an error.\n   */\n  invoke<T = any>(methodName: string, ...args: any[]): Promise<T> {\n    return new Promise<T>((resolve) => {\n      this._serverInvokes.push({\n        action: methodName,\n        args,\n      });\n      const mockedResponse = this._invokeResponses[methodName];\n      if(mockedResponse !== undefined){\n        resolve(mockedResponse as T);\n      } else {\n        resolve(0 as any);\n      }\n    });\n  }\n\n  /** Removes all handlers for the specified hub method.\n   *\n   * @param {string} methodName The name of the method to remove handlers for.\n   */\n  public off(methodName: string): void;\n  /** Removes the specified handler for the specified hub method.\n   *\n   * You must pass the exact same Function instance as was previously passed to {@link @microsoft/signalr.HubConnection.on}. Passing a different instance (even if the function\n   * body is the same) will not remove the handler.\n   *\n   * @param {string} methodName The name of the method to remove handlers for.\n   * @param {Function} method The handler to remove. This must be the same Function instance as the one passed to {@link @microsoft/signalr.HubConnection.on}.\n   */\n  public off(methodName: string, method: (...args: any[]) => void): void;\n  public off(methodName: string, method?: (...args: any[]) => void): void {\n    methodName = methodName.toLowerCase();\n\n    const index = this._hubConnectionData.findIndex(\n      (x) => x.messageType === methodName\n    );\n    if (index == -1) {\n      Log.warn(`No channels registered for action name: ${methodName}`);\n      return;\n    }\n\n    if (method) {\n      const handlerIndex = this._hubConnectionData[\n        index\n      ].subscriptions.findIndex((x) => x.handler === method);\n\n      if (handlerIndex == -1) {\n        Log.warn(\n          `Could not find the handler to delete for action name: ${methodName}`\n        );\n        return;\n      }\n\n      this._hubConnectionData[index].subscriptions.splice(handlerIndex, 1);\n\n      if (this._hubConnectionData[index].subscriptions.length === 0) {\n        this._hubConnectionData.splice(index, 1);\n      }\n    } else {\n      this._hubConnectionData.splice(index, 1);\n    }\n  }\n\n  /** Registers a handler that will be invoked when the connection is closed.\n   *\n   * @param {Function} callback The handler that will be invoked when the connection is closed. Optionally receives a single argument containing the error that caused the connection to close (if any).\n   */\n  // @ts-ignore\n  public onclose(callback: (error?: Error) => void): void {\n    return;\n  }\n\n  /** Starts the connection.\n   *\n   * @returns {Promise<void>} A Promise that resolves when the connection has been successfully established, or rejects with an error.\n   */\n  public start(): Promise<void> {\n    return Promise.resolve();\n  }\n\n  /** Stops the connection.\n   *\n   * @returns {Promise<void>} A Promise that resolves when the connection has been successfully terminated, or rejects with an error.\n   */\n  public async stop(): Promise<void> {\n    return Promise.resolve();\n  }\n\n  /** Registers a handler that will be invoked when the connection starts reconnecting.\n   *\n   * @param {Function} callback The handler that will be invoked when the connection starts reconnecting. Optionally receives a single argument containing the error that caused the connection to start reconnecting (if any).\n   */\n  // @ts-ignore\n  public onreconnecting(callback: (error?: Error) => void): void {\n    return;\n  }\n\n  /** Registers a handler that will be invoked when the connection successfully reconnects.\n   *\n   * @param {Function} callback The handler that will be invoked when the connection successfully reconnects.\n   */\n  // @ts-ignore\n  public onreconnected(callback: (connectionId?: string) => void): void {\n    return;\n  }\n\n  /** Invokes a hub method on the server using the specified name and arguments. Does not wait for a response from the receiver.\n   *\n   * The Promise returned by this method resolves when the client has sent the invocation to the server. The server may still\n   * be processing the invocation.\n   *\n   * @param {string} methodName The name of the server method to invoke.\n   * @param {any[]} args The arguments used to invoke the server method.\n   * @returns {Promise<void>} A Promise that resolves when the invocation has been successfully sent, or rejects with an error.\n   */\n  // @ts-ignore\n  public send(methodName: string, ...args: any[]): Promise<void> {\n    return Promise.resolve();\n  }\n\n  // endregion\n}\n","import HubConnectionMock from \"./types/HubConnectionMock.ts\";\nimport IMockData from \"./types/IMockData.ts\";\nimport Log from \"./log.ts\";\n\nexport function isCypressRunning(): boolean {\n  if (isSSR()) {\n    return false;\n  }\n\n  // Cypress's Test Replay data capture sets a default Cypress property on window\n  // for all iframes, which allows window.Cypress to be overridden. However, even\n  // with this property present, window.Cypress may remain undefined.\n  //\n  // We use !! to ensure we return true only if window.Cypress is truly defined,\n  // rather than relying solely on the presence of the property. This prevents\n  // runtime errors when the property exists but is actually undefined.\n  // @ts-ignore - Cypress is not defined in the type system\n  return !!window[\"Cypress\"];\n}\n\nexport function getCypressSignalrMockData(): IMockData {\n  if (!isSSR() && window[\"cypress-signalr-mock\"]) {\n    return window[\"cypress-signalr-mock\"];\n  }\n  // Initialize the global object\n  clearCypressSignalrMockData();\n  return getCypressSignalrMockData();\n}\n\nexport function setCypressSignalrMockData(value: IMockData): void {\n  if (isSSR()) {\n    return;\n  }\n  window[\"cypress-signalr-mock\"] = value;\n}\n\nexport function clearCypressSignalrMockData(): void {\n  setCypressSignalrMockData(defaultCypressSignalrMockData());\n}\n\nexport function defaultCypressSignalrMockData(): IMockData {\n  return {\n    mocks: [],\n  };\n}\n\nexport function getHubConnectionMock(\n  hubName: string,\n): HubConnectionMock | null {\n  const data = getCypressSignalrMockData();\n  return data.mocks.find((x) => x.name === hubName) ?? null;\n}\n\nexport function isSSR(): boolean {\n  if (typeof window === \"undefined\") {\n    Log.error(\n      \"window is not defined. This most likely happens during SSR, which is not supported\",\n      false,\n    );\n    return true;\n  }\n  return false;\n}\n\nexport function isInVitestMode(): boolean {\n  return (\n    typeof process !== \"undefined\" &&\n    process?.env?.hasOwnProperty(\"VITEST\") &&\n    process.env.VITEST === \"true\"\n  );\n}\n","/// <reference types=\"cypress\" />\nimport Log from \"./log\";\nimport IServerInvoke from \"./types/IServerInvoke\";\nimport {\n  clearCypressSignalrMockData,\n  getCypressSignalrMockData,\n  getHubConnectionMock,\n  isCypressRunning,\n} from \"./utils.ts\";\n\nexport function setupCypressCommands() {\n  if (!isCypressRunning()) {\n    Log.debug(\"Cypress is not running, skipping setup of Cypress commands\");\n    return;\n  }\n\n  // @ts-ignore\n  const cypress = window.Cypress;\n\n  cypress.Commands.add(\"hubMockInvoke\", hubMockInvoke);\n\n  cypress.Commands.add(\"hubUnmockInvoke\", hubUnmockInvoke);\n\n  cypress.Commands.add(\"hubPublish\", hubPublish);\n\n  cypress.Commands.add(\"hubVerifyInvokes\", hubVerify);\n\n  cypress.Commands.add(\"hubClear\", hubClear);\n\n  cypress.Commands.add(\"hubPrintData\", hubPrintData);\n}\n\nexport function hubMockInvoke(hubName: string, methodName: string, payload: any) {\n  const hubConnectionMock = getHubConnectionMock(hubName);\n  if (!hubConnectionMock) {\n    Log.error(`[cy.hubMockInvoke] - HubConnectionMock not found for ${hubName}`);\n    return;\n  }\n  hubConnectionMock.mockInvoke(methodName, payload);\n}\n\nexport function hubUnmockInvoke(hubName: string, methodName: string) {\n  const hubConnectionMock = getHubConnectionMock(hubName);\n  if (!hubConnectionMock) {\n    Log.error(`[cy.hubUnmockInvoke] - HubConnectionMock not found for ${hubName}`);\n    return;\n  }\n  hubConnectionMock.unmockInvoke(methodName);\n}\n\nexport function hubPublish(hubName: string, messageType: string, ...payload: any[]) {\n  const hubConnectionMock = getHubConnectionMock(hubName);\n  if (!hubConnectionMock) {\n    Log.error(`[cy.hubPublish] - HubConnectionMock not found for ${hubName}`);\n    return;\n  }\n  hubConnectionMock.publish(messageType, ...payload);\n}\n\nexport function hubVerify(\n  hubName: string,\n  messageType: string,\n  callback?: (invokes: IServerInvoke[]) => void\n) {\n  const hubConnectionMock = getHubConnectionMock(hubName);\n  if (!hubConnectionMock) {\n    Log.error(\n      `[cy.hubVerify] - HubConnectionMock not found for hub with name: ${hubName}`\n    );\n    return;\n  }\n  hubConnectionMock.verify(messageType, callback);\n}\n\nexport function hubPrintData() {\n  Log.info(\n    'Current window[\"cypress-signalr-mock\"] data:',\n    getCypressSignalrMockData()\n  );\n}\n\nexport function hubClear() {\n  clearCypressSignalrMockData();\n}\n","// load type definitions that come with Cypress module\n// and then add our new commands to the \"cy\" object\n/// <reference types=\"cypress\" />\n\nimport { HubConnection } from \"@microsoft/signalr\";\nimport HubConnectionMock from \"./types/HubConnectionMock\";\nimport { setupCypressCommands } from \"./cypress-commands\";\nimport IMockData from \"./types/IMockData\";\nimport IServerInvoke from \"./types/IServerInvoke\";\nimport {\n  getCypressSignalrMockData,\n  isCypressRunning,\n  isInVitestMode,\n} from \"./utils.ts\";\nimport Log from \"./log.ts\";\n\nsetupCypressCommands();\nuseCypressSignalRMock(\"default\");\n\n/**\n * Initializes a mock SignalR HubConnection when running in Cypress\n * or when enableForVitest is true and running in Vitest\n * @param name\n * @param debug\n * @param enableForVitest\n */\nexport function useCypressSignalRMock(\n  name: string,\n  options?: { debug?: boolean; enableForVitest?: boolean }\n): HubConnection | null {\n  const { debug, enableForVitest } = options ?? {};\n  if (debug) {\n    Log.setLogLevel(4);\n  }\n  if (!enableForVitest && isInVitestMode()) {\n    Log.info(\n      `Vitest detected. To enable CypressSignalRMock in Vitest, pass { enableForVitest: true } to useCypressSignalRMock(). Skipping...`\n    );\n  }\n\n  if (isCypressRunning() || (enableForVitest && isInVitestMode())) {\n    const mock = new HubConnectionMock(name);\n    getCypressSignalrMockData().mocks.push(mock);\n    return <HubConnection>(mock as unknown);\n  }\n  return null;\n}\n\n/**\n * Typings\n */\n// This cannot be in a index.d.ts file otherwise it will not be loaded in by Cypress\ndeclare global {\n  interface Window {\n    \"cypress-signalr-mock\": IMockData;\n  }\n\n  namespace Cypress {\n    interface Chainable<Subject = any> {\n      /**\n       * Simulates a message sent from the Server => Client\n       * @param hubName The name of the hub\n       * @param messageType The name of the message type\n       * @param payload The payload to send with the action\n       */\n      hubPublish(\n        hubName: string,\n        messageType: string,\n        ...payload: any[]\n      ): Chainable<Subject>;\n\n      /**\n       * Verifies that a message was sent from the Client => Server\n       * @param hubName The name of the hub\n       * @param messageType The name of the message type\n       * @param callback A callback function that will be called with the invokes\n       */\n      hubVerifyInvokes(\n        hubName: string,\n        messageType: string,\n        callback?: (invokes: IServerInvoke[]) => void\n      ): Chainable<Subject>;\n\n      /**\n       * Clears all data from the window[\"cypress-signalr-mock\"] object\n       */\n      hubClear(): Chainable<Subject>;\n\n      /**\n       * Prints the current data to console in the window[\"cypress-signalr-mock\"] object\n       */\n      hubPrintData(): Chainable<Subject>;\n    }\n  }\n}\n\nexport {\n  hubMockInvoke,\n  hubPublish,\n  hubUnmockInvoke,\n  hubVerify,\n  hubClear,\n  hubPrintData,\n} from \"./cypress-commands\";\n"],"names":["Log","message","value","throwError","logLevel","__publicField","extendStatics","d","b","p","__extends","__","__values","o","s","m","i","__read","n","r","ar","e","error","__spreadArray","to","from","pack","l","isFunction","createErrorClass","createImpl","_super","instance","ctorFunc","UnsubscriptionError","errors","err","arrRemove","arr","item","index","Subscription","initialTeardown","e_1","_a","e_2","_b","_parentage","_parentage_1","_parentage_1_1","parent_1","e_1_1","initialFinalizer","_finalizers","_finalizers_1","_finalizers_1_1","finalizer","execFinalizer","e_2_1","teardown","parent","empty","EMPTY_SUBSCRIPTION","isSubscription","config","timeoutProvider","handler","timeout","args","_i","handle","reportUnhandledError","noop","errorContext","cb","Subscriber","destination","_this","EMPTY_OBSERVER","next","complete","SafeSubscriber","ConsumerObserver","partialObserver","handleUnhandledError","observerOrNext","defaultErrorHandler","observable","identity","x","pipeFromArray","fns","input","prev","fn","Observable","subscribe","operator","subscriber","isSubscriber","source","sink","promiseCtor","getPromiseCtor","resolve","reject","Symbol_observable","operations","isObserver","ObjectUnsubscribedError","Subject","subject","AnonymousSubject","_c","observer","observers","hasError","isStopped","thrownError","SubjectSubscription","_","HubConnectionMock","name","messageType","values","channels","callback","currentInvokes","methodName","payload","newMethod","connectionData","subscription","signalrSubject","SignalrSubject","mockedResponse","method","handlerIndex","isCypressRunning","isSSR","getCypressSignalrMockData","clearCypressSignalrMockData","setCypressSignalrMockData","defaultCypressSignalrMockData","getHubConnectionMock","hubName","isInVitestMode","setupCypressCommands","cypress","hubMockInvoke","hubUnmockInvoke","hubPublish","hubVerify","hubClear","hubPrintData","hubConnectionMock","useCypressSignalRMock","options","debug","enableForVitest","mock"],"mappings":"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","x_google_ignoreList":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]}