UNPKG

matrix-react-sdk

Version:
30 lines (27 loc) 2.89 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getCircularReplacer = void 0; /* Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only Please see LICENSE files in the repository root for full details. */ // From https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Cyclic_object_value#circular_references // Injects `<$ cycle-trimmed $>` wherever it cuts a cyclical object relationship const getCircularReplacer = () => { const seen = new WeakSet(); return (key, value) => { if (typeof value === "object" && value !== null) { if (seen.has(value)) { return "<$ cycle-trimmed $>"; } seen.add(value); } return value; }; }; exports.getCircularReplacer = getCircularReplacer; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRDaXJjdWxhclJlcGxhY2VyIiwic2VlbiIsIldlYWtTZXQiLCJrZXkiLCJ2YWx1ZSIsImhhcyIsImFkZCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvSlNPTi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMjQgTmV3IFZlY3RvciBMdGQuXG5Db3B5cmlnaHQgMjAyMiBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG50eXBlIFN0cmluZ2lmeVJlcGxhY2VyID0gKHRoaXM6IGFueSwga2V5OiBzdHJpbmcsIHZhbHVlOiBhbnkpID0+IGFueTtcblxuLy8gRnJvbSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9FcnJvcnMvQ3ljbGljX29iamVjdF92YWx1ZSNjaXJjdWxhcl9yZWZlcmVuY2VzXG4vLyBJbmplY3RzIGA8JCBjeWNsZS10cmltbWVkICQ+YCB3aGVyZXZlciBpdCBjdXRzIGEgY3ljbGljYWwgb2JqZWN0IHJlbGF0aW9uc2hpcFxuZXhwb3J0IGNvbnN0IGdldENpcmN1bGFyUmVwbGFjZXIgPSAoKTogU3RyaW5naWZ5UmVwbGFjZXIgPT4ge1xuICAgIGNvbnN0IHNlZW4gPSBuZXcgV2Vha1NldCgpO1xuICAgIHJldHVybiAoa2V5OiBzdHJpbmcsIHZhbHVlOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcIm9iamVjdFwiICYmIHZhbHVlICE9PSBudWxsKSB7XG4gICAgICAgICAgICBpZiAoc2Vlbi5oYXModmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiPCQgY3ljbGUtdHJpbW1lZCAkPlwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2Vlbi5hZGQodmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBSUE7QUFDQTtBQUNPLE1BQU1BLG1CQUFtQixHQUFHQSxDQUFBLEtBQXlCO0VBQ3hELE1BQU1DLElBQUksR0FBRyxJQUFJQyxPQUFPLENBQUMsQ0FBQztFQUMxQixPQUFPLENBQUNDLEdBQVcsRUFBRUMsS0FBVSxLQUFVO0lBQ3JDLElBQUksT0FBT0EsS0FBSyxLQUFLLFFBQVEsSUFBSUEsS0FBSyxLQUFLLElBQUksRUFBRTtNQUM3QyxJQUFJSCxJQUFJLENBQUNJLEdBQUcsQ0FBQ0QsS0FBSyxDQUFDLEVBQUU7UUFDakIsT0FBTyxxQkFBcUI7TUFDaEM7TUFDQUgsSUFBSSxDQUFDSyxHQUFHLENBQUNGLEtBQUssQ0FBQztJQUNuQjtJQUNBLE9BQU9BLEtBQUs7RUFDaEIsQ0FBQztBQUNMLENBQUM7QUFBQ0csT0FBQSxDQUFBUCxtQkFBQSxHQUFBQSxtQkFBQSIsImlnbm9yZUxpc3QiOltdfQ==