@openreplay/tracker 5.0.2-beta → 5.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/app/guards.d.ts +21 -0
- package/cjs/app/guards.js +37 -0
- package/cjs/app/index.d.ts +118 -0
- package/cjs/app/index.js +438 -0
- package/cjs/app/logger.d.ts +26 -0
- package/cjs/app/logger.js +45 -0
- package/cjs/app/messages.gen.d.ts +63 -0
- package/cjs/app/messages.gen.js +551 -0
- package/cjs/app/nodes.d.ts +18 -0
- package/cjs/app/nodes.js +82 -0
- package/cjs/app/observer/iframe_observer.d.ts +4 -0
- package/cjs/app/observer/iframe_observer.js +23 -0
- package/cjs/app/observer/iframe_offsets.d.ts +8 -0
- package/cjs/app/observer/iframe_offsets.js +59 -0
- package/cjs/app/observer/observer.d.ts +23 -0
- package/cjs/app/observer/observer.js +340 -0
- package/cjs/app/observer/shadow_root_observer.d.ts +4 -0
- package/cjs/app/observer/shadow_root_observer.js +21 -0
- package/cjs/app/observer/top_observer.d.ts +24 -0
- package/cjs/app/observer/top_observer.js +113 -0
- package/cjs/app/sanitizer.d.ts +24 -0
- package/cjs/app/sanitizer.js +76 -0
- package/cjs/app/session.d.ts +38 -0
- package/cjs/app/session.js +114 -0
- package/cjs/app/ticker.d.ts +12 -0
- package/cjs/app/ticker.js +42 -0
- package/cjs/common/interaction.d.ts +24 -0
- package/cjs/common/interaction.js +2 -0
- package/cjs/common/messages.gen.d.ts +427 -0
- package/cjs/common/messages.gen.js +4 -0
- package/cjs/index.d.ts +47 -0
- package/cjs/index.js +254 -0
- package/cjs/modules/connection.d.ts +2 -0
- package/cjs/modules/connection.js +15 -0
- package/cjs/modules/console.d.ts +6 -0
- package/cjs/modules/console.js +119 -0
- package/cjs/modules/constructedStyleSheets.d.ts +4 -0
- package/cjs/modules/constructedStyleSheets.js +131 -0
- package/cjs/modules/cssrules.d.ts +2 -0
- package/cjs/modules/cssrules.js +99 -0
- package/cjs/modules/exception.d.ts +16 -0
- package/cjs/modules/exception.js +77 -0
- package/cjs/modules/focus.d.ts +2 -0
- package/cjs/modules/focus.js +45 -0
- package/cjs/modules/fonts.d.ts +2 -0
- package/cjs/modules/fonts.js +57 -0
- package/cjs/modules/img.d.ts +2 -0
- package/cjs/modules/img.js +110 -0
- package/cjs/modules/input.d.ts +16 -0
- package/cjs/modules/input.js +163 -0
- package/cjs/modules/mouse.d.ts +2 -0
- package/cjs/modules/mouse.js +148 -0
- package/cjs/modules/network.d.ts +28 -0
- package/cjs/modules/network.js +203 -0
- package/cjs/modules/performance.d.ts +7 -0
- package/cjs/modules/performance.js +53 -0
- package/cjs/modules/scroll.d.ts +2 -0
- package/cjs/modules/scroll.js +79 -0
- package/cjs/modules/timing.d.ts +7 -0
- package/cjs/modules/timing.js +160 -0
- package/cjs/modules/viewport.d.ts +2 -0
- package/cjs/modules/viewport.js +43 -0
- package/cjs/package.json +1 -0
- package/cjs/utils.d.ts +13 -0
- package/cjs/utils.js +71 -0
- package/cjs/vendors/finder/finder.d.ts +12 -0
- package/cjs/vendors/finder/finder.js +352 -0
- package/lib/app/guards.d.ts +21 -0
- package/lib/app/guards.js +26 -0
- package/lib/app/index.d.ts +118 -0
- package/lib/app/index.js +434 -0
- package/lib/app/logger.d.ts +26 -0
- package/lib/app/logger.js +41 -0
- package/lib/app/messages.gen.d.ts +63 -0
- package/lib/app/messages.gen.js +486 -0
- package/lib/app/nodes.d.ts +18 -0
- package/lib/app/nodes.js +79 -0
- package/lib/app/observer/iframe_observer.d.ts +4 -0
- package/lib/app/observer/iframe_observer.js +20 -0
- package/lib/app/observer/iframe_offsets.d.ts +8 -0
- package/lib/app/observer/iframe_offsets.js +56 -0
- package/lib/app/observer/observer.d.ts +23 -0
- package/lib/app/observer/observer.js +337 -0
- package/lib/app/observer/shadow_root_observer.d.ts +4 -0
- package/lib/app/observer/shadow_root_observer.js +18 -0
- package/lib/app/observer/top_observer.d.ts +24 -0
- package/lib/app/observer/top_observer.js +110 -0
- package/lib/app/sanitizer.d.ts +24 -0
- package/lib/app/sanitizer.js +72 -0
- package/lib/app/session.d.ts +38 -0
- package/lib/app/session.js +111 -0
- package/lib/app/ticker.d.ts +12 -0
- package/lib/app/ticker.js +39 -0
- package/lib/common/interaction.d.ts +24 -0
- package/lib/common/interaction.js +1 -0
- package/lib/common/messages.gen.d.ts +427 -0
- package/lib/common/messages.gen.js +3 -0
- package/lib/common/tsconfig.tsbuildinfo +1 -0
- package/lib/index.d.ts +47 -0
- package/lib/index.js +248 -0
- package/lib/modules/connection.d.ts +2 -0
- package/lib/modules/connection.js +12 -0
- package/lib/modules/console.d.ts +6 -0
- package/lib/modules/console.js +116 -0
- package/lib/modules/constructedStyleSheets.d.ts +4 -0
- package/lib/modules/constructedStyleSheets.js +126 -0
- package/lib/modules/cssrules.d.ts +2 -0
- package/lib/modules/cssrules.js +97 -0
- package/lib/modules/exception.d.ts +16 -0
- package/lib/modules/exception.js +71 -0
- package/lib/modules/focus.d.ts +2 -0
- package/lib/modules/focus.js +42 -0
- package/lib/modules/fonts.d.ts +2 -0
- package/lib/modules/fonts.js +54 -0
- package/lib/modules/img.d.ts +2 -0
- package/lib/modules/img.js +107 -0
- package/lib/modules/input.d.ts +16 -0
- package/lib/modules/input.js +158 -0
- package/lib/modules/mouse.d.ts +2 -0
- package/lib/modules/mouse.js +145 -0
- package/lib/modules/network.d.ts +28 -0
- package/lib/modules/network.js +200 -0
- package/lib/modules/performance.d.ts +7 -0
- package/lib/modules/performance.js +49 -0
- package/lib/modules/scroll.d.ts +2 -0
- package/lib/modules/scroll.js +76 -0
- package/lib/modules/timing.d.ts +7 -0
- package/lib/modules/timing.js +157 -0
- package/lib/modules/viewport.d.ts +2 -0
- package/lib/modules/viewport.js +40 -0
- package/lib/utils.d.ts +13 -0
- package/lib/utils.js +61 -0
- package/lib/vendors/finder/finder.d.ts +12 -0
- package/lib/vendors/finder/finder.js +348 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../src/common/messages.gen.ts","../../src/common/interaction.ts","../../node_modules/@types/babel__generator/node_modules/@babel/types/lib/index.d.ts","../../node_modules/@types/babel__generator/index.d.ts","../../node_modules/@babel/types/lib/index.d.ts","../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../node_modules/@types/babel__template/node_modules/@babel/types/lib/index.d.ts","../../node_modules/@types/babel__template/node_modules/@babel/parser/typings/babel-parser.d.ts","../../node_modules/@types/babel__template/index.d.ts","../../node_modules/@types/babel__traverse/node_modules/@babel/types/lib/index.d.ts","../../node_modules/@types/babel__traverse/index.d.ts","../../node_modules/@types/babel__core/index.d.ts","../../node_modules/@types/estree/index.d.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/dom-events.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/readline/promises.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/test.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts","../../node_modules/@types/minimatch/index.d.ts","../../node_modules/@types/glob/index.d.ts","../../node_modules/@types/graceful-fs/index.d.ts","../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../node_modules/@types/istanbul-lib-report/index.d.ts","../../node_modules/@types/istanbul-reports/index.d.ts","../../node_modules/parse5/dist/cjs/common/html.d.ts","../../node_modules/parse5/dist/cjs/common/token.d.ts","../../node_modules/parse5/dist/cjs/common/error-codes.d.ts","../../node_modules/parse5/dist/cjs/tokenizer/preprocessor.d.ts","../../node_modules/parse5/dist/cjs/tokenizer/index.d.ts","../../node_modules/parse5/dist/cjs/tree-adapters/interface.d.ts","../../node_modules/parse5/dist/cjs/parser/open-element-stack.d.ts","../../node_modules/parse5/dist/cjs/parser/formatting-element-list.d.ts","../../node_modules/parse5/dist/cjs/parser/index.d.ts","../../node_modules/parse5/dist/cjs/tree-adapters/default.d.ts","../../node_modules/parse5/dist/cjs/serializer/index.d.ts","../../node_modules/parse5/dist/cjs/common/foreign-content.d.ts","../../node_modules/parse5/dist/cjs/index.d.ts","../../node_modules/@types/tough-cookie/index.d.ts","../../node_modules/@types/jsdom/base.d.ts","../../node_modules/@types/jsdom/index.d.ts","../../node_modules/@types/json-schema/index.d.ts","../../node_modules/@types/prettier/index.d.ts","../../node_modules/@types/resolve/index.d.ts","../../node_modules/@types/semver/classes/semver.d.ts","../../node_modules/@types/semver/functions/parse.d.ts","../../node_modules/@types/semver/functions/valid.d.ts","../../node_modules/@types/semver/functions/clean.d.ts","../../node_modules/@types/semver/functions/inc.d.ts","../../node_modules/@types/semver/functions/diff.d.ts","../../node_modules/@types/semver/functions/major.d.ts","../../node_modules/@types/semver/functions/minor.d.ts","../../node_modules/@types/semver/functions/patch.d.ts","../../node_modules/@types/semver/functions/prerelease.d.ts","../../node_modules/@types/semver/functions/compare.d.ts","../../node_modules/@types/semver/functions/rcompare.d.ts","../../node_modules/@types/semver/functions/compare-loose.d.ts","../../node_modules/@types/semver/functions/compare-build.d.ts","../../node_modules/@types/semver/functions/sort.d.ts","../../node_modules/@types/semver/functions/rsort.d.ts","../../node_modules/@types/semver/functions/gt.d.ts","../../node_modules/@types/semver/functions/lt.d.ts","../../node_modules/@types/semver/functions/eq.d.ts","../../node_modules/@types/semver/functions/neq.d.ts","../../node_modules/@types/semver/functions/gte.d.ts","../../node_modules/@types/semver/functions/lte.d.ts","../../node_modules/@types/semver/functions/cmp.d.ts","../../node_modules/@types/semver/functions/coerce.d.ts","../../node_modules/@types/semver/classes/comparator.d.ts","../../node_modules/@types/semver/classes/range.d.ts","../../node_modules/@types/semver/functions/satisfies.d.ts","../../node_modules/@types/semver/ranges/max-satisfying.d.ts","../../node_modules/@types/semver/ranges/min-satisfying.d.ts","../../node_modules/@types/semver/ranges/to-comparators.d.ts","../../node_modules/@types/semver/ranges/min-version.d.ts","../../node_modules/@types/semver/ranges/valid.d.ts","../../node_modules/@types/semver/ranges/outside.d.ts","../../node_modules/@types/semver/ranges/gtr.d.ts","../../node_modules/@types/semver/ranges/ltr.d.ts","../../node_modules/@types/semver/ranges/intersects.d.ts","../../node_modules/@types/semver/ranges/simplify.d.ts","../../node_modules/@types/semver/ranges/subset.d.ts","../../node_modules/@types/semver/internals/identifiers.d.ts","../../node_modules/@types/semver/index.d.ts","../../node_modules/@types/stack-utils/index.d.ts","../../node_modules/@types/yargs-parser/index.d.ts","../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","impliedFormat":1},{"version":"7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","impliedFormat":1},{"version":"8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","impliedFormat":1},{"version":"5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","impliedFormat":1},{"version":"4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","impliedFormat":1},{"version":"1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","impliedFormat":1},{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3d4da15233e593eacb3965cde7960f3fddf5878528d882bcedd5cbaba0193c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true,"impliedFormat":1},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true,"impliedFormat":1},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true,"impliedFormat":1},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true,"impliedFormat":1},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true,"impliedFormat":1},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true,"impliedFormat":1},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true,"impliedFormat":1},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true,"impliedFormat":1},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true,"impliedFormat":1},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true,"impliedFormat":1},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true,"impliedFormat":1},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true,"impliedFormat":1},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true,"impliedFormat":1},{"version":"5e5e095c4470c8bab227dbbc61374878ecead104c74ab9960d3adcccfee23205","affectsGlobalScope":true,"impliedFormat":1},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true,"impliedFormat":1},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true,"impliedFormat":1},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true,"impliedFormat":1},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true,"impliedFormat":1},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true,"impliedFormat":1},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true,"impliedFormat":1},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"602621789a7807ee16c2dd04a9d7417684e7e6dab5884fdd935bfa31fd514181","signature":"01a8fc33223f37459ddbac2b0518935db0886d42a36ed43dbab84b766c42eeaf","impliedFormat":99},{"version":"58d11525135fe2d2deb7707e8581aee24348d438f1f3cdef3aa0bc0fa595eac3","signature":"a8f97556bc61c36900c9a9fcac6e6fe91c842ede87d386f86b6df0e787ff3c67","impliedFormat":99},{"version":"3078727fed04c123165efdb42deeac5dceaa42ac62216ca13cb809dc7e13415f","impliedFormat":1},{"version":"cc957354aa3c94c9961ebf46282cfde1e81d107fc5785a61f62c67f1dd3ac2eb","impliedFormat":1},{"version":"f4617bbd5403ec5b058db53b242dcb1421952e2652bd5c80abf6a1c4ea5656d6","impliedFormat":1},{"version":"230d323ef7f2ffadfc0ceae494492c4d2faa2b4eaec07a4b71424d084b97ebb8","impliedFormat":1},{"version":"3078727fed04c123165efdb42deeac5dceaa42ac62216ca13cb809dc7e13415f","impliedFormat":1},{"version":"b4f76b34637d79cefad486127115fed843762c69512d7101b7096e1293699679","impliedFormat":1},{"version":"93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","impliedFormat":1},{"version":"3078727fed04c123165efdb42deeac5dceaa42ac62216ca13cb809dc7e13415f","impliedFormat":1},{"version":"dae3d1adc67ac3dbd1cd471889301339ec439837b5df565982345be20c8fca9a","impliedFormat":1},{"version":"b6ddf3a46ccfa4441d8be84d2e9bf3087573c48804196faedbd4a25b60631beb","impliedFormat":1},{"version":"89ccbe04e737ce613f5f04990271cfa84901446350b8551b0555ddf19319723b","impliedFormat":1},{"version":"7e771891adaa85b690266bc37bd6eb43bc57eecc4b54693ead36467e7369952a","impliedFormat":1},{"version":"a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a","impliedFormat":1},{"version":"ca72190df0eb9b09d4b600821c8c7b6c9747b75a1c700c4d57dc0bb72abc074c","affectsGlobalScope":true,"impliedFormat":1},{"version":"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9","impliedFormat":1},{"version":"bb65c6267c5d6676be61acbf6604cf0a4555ac4b505df58ac15c831fcbff4e3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"374ca798f244e464346f14301dc2a8b4b111af1a83b49fffef5906c338a1f922","impliedFormat":1},{"version":"5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713","impliedFormat":1},{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true,"impliedFormat":1},{"version":"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","impliedFormat":1},{"version":"dab86d9604fe40854ef3c0a6f9e8948873dc3509213418e5e457f410fd11200f","impliedFormat":1},{"version":"bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","impliedFormat":1},{"version":"489532ff54b714f0e0939947a1c560e516d3ae93d51d639ab02e907a0e950114","impliedFormat":1},{"version":"f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","impliedFormat":1},{"version":"14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","impliedFormat":1},{"version":"5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea","impliedFormat":1},{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true,"impliedFormat":1},{"version":"816ad2e607a96de5bcac7d437f843f5afd8957f1fa5eefa6bba8e4ed7ca8fd84","affectsGlobalScope":true,"impliedFormat":1},{"version":"cec36af22f514322f870e81d30675c78df82ae8bf4863f5fd4e4424c040c678d","impliedFormat":1},{"version":"d903fafe96674bc0b2ac38a5be4a8fc07b14c2548d1cdb165a80ea24c44c0c54","impliedFormat":1},{"version":"5eec82ac21f84d83586c59a16b9b8502d34505d1393393556682fe7e7fde9ef2","impliedFormat":1},{"version":"04eb6578a588d6a46f50299b55f30e3a04ef27d0c5a46c57d8fcc211cd530faa","impliedFormat":1},{"version":"8d3c583a07e0c37e876908c2d5da575019f689df8d9fa4c081d99119d53dba22","impliedFormat":1},{"version":"2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58","impliedFormat":1},{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true,"impliedFormat":1},{"version":"d076fede3cb042e7b13fc29442aaa03a57806bc51e2b26a67a01fbc66a7c0c12","impliedFormat":1},{"version":"7c013aa892414a7fdcfd861ae524a668eaa3ede8c7c0acafaf611948122c8d93","impliedFormat":1},{"version":"b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30","impliedFormat":1},{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3624aed92dab6da8484280d3cb3e2f4130ec3f4ef3f8201c95144ae9e898bb6","affectsGlobalScope":true,"impliedFormat":1},{"version":"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","impliedFormat":1},{"version":"210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","impliedFormat":1},{"version":"36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","impliedFormat":1},{"version":"0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","impliedFormat":1},{"version":"25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","impliedFormat":1},{"version":"fd93cee2621ff42dabe57b7be402783fd1aa69ece755bcba1e0290547ae60513","impliedFormat":1},{"version":"1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","impliedFormat":1},{"version":"69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","impliedFormat":1},{"version":"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","impliedFormat":1},{"version":"23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","impliedFormat":1},{"version":"223c37f62ce09a3d99e77498acdee7b2705a4ae14552fbdb4093600cd9164f3f","impliedFormat":1},{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true,"impliedFormat":1},{"version":"e10177274a35a9d07c825615340b2fcde2f610f53f3fb40269fd196b4288dda6","impliedFormat":1},{"version":"4c8525f256873c7ba3135338c647eaf0ca7115a1a2805ae2d0056629461186ce","impliedFormat":1},{"version":"3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","impliedFormat":1},{"version":"5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2","impliedFormat":1},{"version":"f0900cd5d00fe1263ff41201fb8073dbeb984397e4af3b8002a5c207a30bdc33","affectsGlobalScope":true,"impliedFormat":1},{"version":"4c50342e1b65d3bee2ed4ab18f84842d5724ad11083bd666d8705dc7a6079d80","affectsGlobalScope":true,"impliedFormat":1},{"version":"06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","impliedFormat":1},{"version":"ec4bd1b200670fb567920db572d6701ed42a9641d09c4ff6869768c8f81b404c","impliedFormat":1},{"version":"e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa","impliedFormat":1},{"version":"da26af7362f53d122283bc69fed862b9a9fe27e01bc6a69d1d682e0e5a4df3e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"8dbe725f8d237e70310977afcfa011629804d101ebaa0266cafda6b61ad72236","impliedFormat":1},{"version":"963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","impliedFormat":1},{"version":"fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","impliedFormat":1},{"version":"bf88ef4208a770ca39a844b182b3695df536326ea566893fdc5b8418702a331e","impliedFormat":1},{"version":"8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","impliedFormat":1},{"version":"7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","impliedFormat":1},{"version":"f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","impliedFormat":1},{"version":"ba600bf38b5c1a5dffa1b99dd7a783549082bbba3b4fe9497eaaf5e4c1764b20","impliedFormat":1},{"version":"ae8cd6af37275eac75f5369cdb5f01063bcf1f48d74cb434303ee50ec446acfe","impliedFormat":1},{"version":"2518830a2fda9c272ba48798d0e7b857037443b06594db8e42c87e86944ee9e4","impliedFormat":1},{"version":"95c1cf650d16b197525b5bfdf8dd7abba0a49d99ddb12a4ba66466a8a6903e49","impliedFormat":1},{"version":"1fe0aabe758d56ad72495d6e6c7b6ae75619faaeaaf03f0ddf1948eea4cfac84","impliedFormat":1},{"version":"bbc57966c8c48ee78fd58aadb893784025be056ae538ae22d1e83c502a987e68","impliedFormat":1},{"version":"5e5d6f6697e378b0660b567866bf67d099d0ea754f8810c0dabe737805f5cf03","impliedFormat":1},{"version":"99ab49d4732fdc98cf5c495925e65e796544cb4086fe42afc235dfc02bcf2351","impliedFormat":1},{"version":"af8339d509c40da075088e544c28ed37b519876e5c4d36a48644ebfb3c6ae6c8","impliedFormat":1},{"version":"d393adc32e520d4274bb4c3dfdcdb342b806a230b66ef0f82b35bffbc4aa2590","impliedFormat":1},{"version":"c26af7eaedb4f710984634e419ab15e54e5bb99a0b3cae71188c2fff572276de","impliedFormat":1},{"version":"38b58ef018d0aeee42ef74c42978bb5805503233fdeeb82cd2aed2199fb0d013","impliedFormat":1},{"version":"3b6040253231d44e6778eb6861cc86c1758562e77783d21b7ecbc73322ded539","impliedFormat":1},{"version":"cc256fd958b33576ed32c7338c64adb0d08fc0c2c6525010202fab83f32745da","impliedFormat":1},{"version":"fd0589ca571ad090b531d8c095e26caa53d4825c64d3ff2b2b1ab95d72294175","impliedFormat":1},{"version":"669843ecafb89ae1e944df06360e8966219e4c1c34c0d28aa2503272cdd444a7","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3e604694b624fa3f83f6684185452992088f5efb2cf136b62474aa106d6f1b6","impliedFormat":1},{"version":"bc88e4049153bc4dddb4503ed7e624eb141edfa9064b3659d6c86e900fe9e621","impliedFormat":1},{"version":"8a19491eba2108d5c333c249699f40aff05ad312c04a17504573b27d91f0aede","impliedFormat":1},{"version":"2b93035328f7778d200252681c1d86285d501ed424825a18f81e4c3028aa51d9","impliedFormat":1},{"version":"2ac9c8332c5f8510b8bdd571f8271e0f39b0577714d5e95c1e79a12b2616f069","impliedFormat":1},{"version":"42c21aa963e7b86fa00801d96e88b36803188018d5ad91db2a9101bccd40b3ff","impliedFormat":1},{"version":"d31eb848cdebb4c55b4893b335a7c0cca95ad66dee13cbb7d0893810c0a9c301","impliedFormat":1},{"version":"77c1d91a129ba60b8c405f9f539e42df834afb174fe0785f89d92a2c7c16b77a","impliedFormat":1},{"version":"7a9e0a564fee396cacf706523b5aeed96e04c6b871a8bebefad78499fbffc5bc","impliedFormat":1},{"version":"906c751ef5822ec0dadcea2f0e9db64a33fb4ee926cc9f7efa38afe5d5371b2a","impliedFormat":1},{"version":"5387c049e9702f2d2d7ece1a74836a14b47fbebe9bbeb19f94c580a37c855351","impliedFormat":1},{"version":"c68391fb9efad5d99ff332c65b1606248c4e4a9f1dd9a087204242b56c7126d6","impliedFormat":1},{"version":"e9cf02252d3a0ced987d24845dcb1f11c1be5541f17e5daa44c6de2d18138d0c","impliedFormat":1},{"version":"e8b02b879754d85f48489294f99147aeccc352c760d95a6fe2b6e49cd400b2fe","impliedFormat":1},{"version":"9f6908ab3d8a86c68b86e38578afc7095114e66b2fc36a2a96e9252aac3998e0","impliedFormat":1},{"version":"0eedb2344442b143ddcd788f87096961cd8572b64f10b4afc3356aa0460171c6","impliedFormat":1},{"version":"71405cc70f183d029cc5018375f6c35117ffdaf11846c35ebf85ee3956b1b2a6","impliedFormat":1},{"version":"c68baff4d8ba346130e9753cefe2e487a16731bf17e05fdacc81e8c9a26aae9d","impliedFormat":1},{"version":"2cd15528d8bb5d0453aa339b4b52e0696e8b07e790c153831c642c3dea5ac8af","impliedFormat":1},{"version":"479d622e66283ffa9883fbc33e441f7fc928b2277ff30aacbec7b7761b4e9579","impliedFormat":1},{"version":"ade307876dc5ca267ca308d09e737b611505e015c535863f22420a11fffc1c54","impliedFormat":1},{"version":"f8cdefa3e0dee639eccbe9794b46f90291e5fd3989fcba60d2f08fde56179fb9","impliedFormat":1},{"version":"86c5a62f99aac7053976e317dbe9acb2eaf903aaf3d2e5bb1cafe5c2df7b37a8","impliedFormat":1},{"version":"2b300954ce01a8343866f737656e13243e86e5baef51bd0631b21dcef1f6e954","impliedFormat":1},{"version":"a2d409a9ffd872d6b9d78ead00baa116bbc73cfa959fce9a2f29d3227876b2a1","impliedFormat":1},{"version":"b288936f560cd71f4a6002953290de9ff8dfbfbf37f5a9391be5c83322324898","impliedFormat":1},{"version":"61178a781ef82e0ff54f9430397e71e8f365fc1e3725e0e5346f2de7b0d50dfa","impliedFormat":1},{"version":"6a6ccb37feb3aad32d9be026a3337db195979cd5727a616fc0f557e974101a54","impliedFormat":1},{"version":"c649ea79205c029a02272ef55b7ab14ada0903db26144d2205021f24727ac7a3","impliedFormat":1},{"version":"38e2b02897c6357bbcff729ef84c736727b45cc152abe95a7567caccdfad2a1d","impliedFormat":1},{"version":"d6610ea7e0b1a7686dba062a1e5544dd7d34140f4545305b7c6afaebfb348341","impliedFormat":1},{"version":"3dee35db743bdba2c8d19aece7ac049bde6fa587e195d86547c882784e6ba34c","impliedFormat":1},{"version":"b15e55c5fa977c2f25ca0b1db52cfa2d1fd4bf0baf90a8b90d4a7678ca462ff1","impliedFormat":1},{"version":"f41d30972724714763a2698ae949fbc463afb203b5fa7c4ad7e4de0871129a17","impliedFormat":1},{"version":"843dd7b6a7c6269fd43827303f5cbe65c1fecabc30b4670a50d5a15d57daeeb9","impliedFormat":1},{"version":"f06d8b8567ee9fd799bf7f806efe93b67683ef24f4dea5b23ef12edff4434d9d","impliedFormat":1},{"version":"6017384f697ff38bc3ef6a546df5b230c3c31329db84cbfe686c83bec011e2b2","impliedFormat":1},{"version":"e1a5b30d9248549ca0c0bb1d653bafae20c64c4aa5928cc4cd3017b55c2177b0","impliedFormat":1},{"version":"a593632d5878f17295bd53e1c77f27bf4c15212822f764a2bfc1702f4b413fa0","impliedFormat":1},{"version":"a868a534ba1c2ca9060b8a13b0ffbbbf78b4be7b0ff80d8c75b02773f7192c29","impliedFormat":1},{"version":"da7545aba8f54a50fde23e2ede00158dc8112560d934cee58098dfb03aae9b9d","impliedFormat":1},{"version":"34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0","impliedFormat":1},{"version":"6aee496bf0ecfbf6731aa8cca32f4b6e92cdc0a444911a7d88410408a45ecc5d","impliedFormat":1},{"version":"b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","impliedFormat":1},{"version":"70e9a18da08294f75bf23e46c7d69e67634c0765d355887b9b41f0d959e1426e","impliedFormat":1},{"version":"ae84439d1ae42b30ced3df38c4285f35b805be40dfc95b0647d0e59c70b11f97","impliedFormat":1}],"options":{"alwaysStrict":true,"composite":true,"declaration":true,"module":5,"noImplicitAny":true,"noImplicitThis":true,"outDir":"..","rootDir":"../../src","strictNullChecks":true,"target":2},"fileIdsList":[[48,103],[103],[47,48,49,52,54,103],[46,103],[46,51,103],[73,74,103,110,111],[74,103,110],[103,114],[103,115],[73,103,105,110,129,130,132],[103,131],[57,103],[60,103],[61,66,94,103],[62,73,74,81,91,102,103],[62,63,73,81,103],[64,103],[65,66,74,82,103],[66,91,99,103],[67,69,73,81,103],[68,103],[69,70,103],[73,103],[71,73,103],[73,74,75,91,102,103],[73,74,75,88,91,94,103],[103,107],[69,76,81,91,102,103],[73,74,76,77,81,91,99,102,103],[76,78,91,99,102,103],[57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109],[73,79,103],[80,102,103],[69,73,81,91,103],[82,103],[83,103],[60,84,103],[85,101,103,107],[86,103],[87,103],[73,88,89,103],[88,90,103,105],[61,73,91,92,93,94,103],[61,91,93,103],[91,92,103],[94,103],[95,103],[73,97,98,103],[97,98,103],[66,81,91,99,103],[100,103],[81,101,103],[61,76,87,102,103],[66,103],[91,103,104],[103,105],[103,106],[61,66,73,75,84,91,102,103,105,107],[91,103,108],[103,110],[103,136,175],[103,136,160,175],[103,175],[103,136],[103,136,161,175],[103,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174],[103,161,175],[103,177],[103,118],[103,117,118],[103,117],[103,117,118,119,121,122,125,126,127,128],[103,118,122],[103,117,118,119,121,122,123,124],[103,117,122],[103,122,126],[103,118,119,120],[103,119],[103,117,118,122],[44,103],[44]],"referencedMap":[[49,1],[48,2],[55,3],[47,4],[46,2],[52,5],[51,4],[50,2],[54,4],[53,2],[56,2],[112,6],[113,7],[114,2],[115,8],[116,9],[131,10],[132,11],[133,2],[111,2],[57,12],[58,12],[60,13],[61,14],[62,15],[63,16],[64,17],[65,18],[66,19],[67,20],[68,21],[69,22],[70,22],[72,23],[71,24],[73,23],[74,25],[75,26],[59,27],[109,2],[76,28],[77,29],[78,30],[110,31],[79,32],[80,33],[81,34],[82,35],[83,36],[84,37],[85,38],[86,39],[87,40],[88,41],[89,41],[90,42],[91,43],[93,44],[92,45],[94,46],[95,47],[96,2],[97,48],[98,49],[99,50],[100,51],[101,52],[102,53],[103,54],[104,55],[105,56],[106,57],[107,58],[108,59],[134,2],[135,60],[160,61],[161,62],[136,63],[139,63],[158,61],[159,61],[149,61],[148,64],[146,61],[141,61],[154,61],[152,61],[156,61],[140,61],[153,61],[157,61],[142,61],[143,61],[155,61],[137,61],[144,61],[145,61],[147,61],[151,61],[162,65],[150,61],[138,61],[175,66],[174,2],[169,65],[171,67],[170,65],[163,65],[164,65],[166,65],[168,65],[172,67],[173,67],[165,67],[167,67],[176,2],[130,2],[177,2],[178,68],[119,69],[128,70],[117,2],[118,71],[129,72],[124,73],[125,74],[123,75],[127,76],[121,77],[120,78],[126,79],[122,70],[8,2],[9,2],[11,2],[10,2],[2,2],[12,2],[13,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[3,2],[4,2],[23,2],[20,2],[21,2],[22,2],[24,2],[25,2],[26,2],[5,2],[27,2],[28,2],[29,2],[30,2],[6,2],[34,2],[31,2],[32,2],[33,2],[35,2],[7,2],[36,2],[41,2],[42,2],[37,2],[38,2],[39,2],[40,2],[1,2],[43,2],[45,80],[44,2]],"exportedModulesMap":[[49,1],[48,2],[55,3],[47,4],[46,2],[52,5],[51,4],[50,2],[54,4],[53,2],[56,2],[112,6],[113,7],[114,2],[115,8],[116,9],[131,10],[132,11],[133,2],[111,2],[57,12],[58,12],[60,13],[61,14],[62,15],[63,16],[64,17],[65,18],[66,19],[67,20],[68,21],[69,22],[70,22],[72,23],[71,24],[73,23],[74,25],[75,26],[59,27],[109,2],[76,28],[77,29],[78,30],[110,31],[79,32],[80,33],[81,34],[82,35],[83,36],[84,37],[85,38],[86,39],[87,40],[88,41],[89,41],[90,42],[91,43],[93,44],[92,45],[94,46],[95,47],[96,2],[97,48],[98,49],[99,50],[100,51],[101,52],[102,53],[103,54],[104,55],[105,56],[106,57],[107,58],[108,59],[134,2],[135,60],[160,61],[161,62],[136,63],[139,63],[158,61],[159,61],[149,61],[148,64],[146,61],[141,61],[154,61],[152,61],[156,61],[140,61],[153,61],[157,61],[142,61],[143,61],[155,61],[137,61],[144,61],[145,61],[147,61],[151,61],[162,65],[150,61],[138,61],[175,66],[174,2],[169,65],[171,67],[170,65],[163,65],[164,65],[166,65],[168,65],[172,67],[173,67],[165,67],[167,67],[176,2],[130,2],[177,2],[178,68],[119,69],[128,70],[117,2],[118,71],[129,72],[124,73],[125,74],[123,75],[127,76],[121,77],[120,78],[126,79],[122,70],[8,2],[9,2],[11,2],[10,2],[2,2],[12,2],[13,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[3,2],[4,2],[23,2],[20,2],[21,2],[22,2],[24,2],[25,2],[26,2],[5,2],[27,2],[28,2],[29,2],[30,2],[6,2],[34,2],[31,2],[32,2],[33,2],[35,2],[7,2],[36,2],[41,2],[42,2],[37,2],[38,2],[39,2],[40,2],[1,2],[43,2],[45,81]],"semanticDiagnosticsPerFile":[49,48,55,47,46,52,51,50,54,53,56,112,113,114,115,116,131,132,133,111,57,58,60,61,62,63,64,65,66,67,68,69,70,72,71,73,74,75,59,109,76,77,78,110,79,80,81,82,83,84,85,86,87,88,89,90,91,93,92,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,134,135,160,161,136,139,158,159,149,148,146,141,154,152,156,140,153,157,142,143,155,137,144,145,147,151,162,150,138,175,174,169,171,170,163,164,166,168,172,173,165,167,176,130,177,178,119,128,117,118,129,124,125,123,127,121,120,126,122,8,9,11,10,2,12,13,14,15,16,17,18,19,3,4,23,20,21,22,24,25,26,5,27,28,29,30,6,34,31,32,33,35,7,36,41,42,37,38,39,40,1,43,45,44],"latestChangedDtsFile":"./interaction.d.ts"},"version":"4.9.5"}
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import App from './app/index.js';
|
|
2
|
+
export { default as App } from './app/index.js';
|
|
3
|
+
import * as _Messages from './app/messages.gen.js';
|
|
4
|
+
export declare const Messages: typeof _Messages;
|
|
5
|
+
export { SanitizeLevel } from './app/sanitizer.js';
|
|
6
|
+
import type { Options as AppOptions } from './app/index.js';
|
|
7
|
+
import type { Options as ConsoleOptions } from './modules/console.js';
|
|
8
|
+
import type { Options as ExceptionOptions } from './modules/exception.js';
|
|
9
|
+
import type { Options as InputOptions } from './modules/input.js';
|
|
10
|
+
import type { Options as PerformanceOptions } from './modules/performance.js';
|
|
11
|
+
import type { Options as TimingOptions } from './modules/timing.js';
|
|
12
|
+
import type { Options as NetworkOptions } from './modules/network.js';
|
|
13
|
+
import type { StartOptions } from './app/index.js';
|
|
14
|
+
import type { StartPromiseReturn } from './app/index.js';
|
|
15
|
+
export type Options = Partial<AppOptions & ConsoleOptions & ExceptionOptions & InputOptions & PerformanceOptions & TimingOptions> & {
|
|
16
|
+
projectID?: number;
|
|
17
|
+
projectKey: string;
|
|
18
|
+
sessionToken?: string;
|
|
19
|
+
respectDoNotTrack?: boolean;
|
|
20
|
+
autoResetOnWindowOpen?: boolean;
|
|
21
|
+
network?: NetworkOptions;
|
|
22
|
+
__DISABLE_SECURE_MODE?: boolean;
|
|
23
|
+
};
|
|
24
|
+
export default class API {
|
|
25
|
+
private readonly options;
|
|
26
|
+
private readonly app;
|
|
27
|
+
constructor(options: Options);
|
|
28
|
+
use<T>(fn: (app: App | null, options?: Options) => T): T;
|
|
29
|
+
isActive(): boolean;
|
|
30
|
+
start(startOpts?: Partial<StartOptions>): Promise<StartPromiseReturn>;
|
|
31
|
+
stop(): string | undefined;
|
|
32
|
+
getSessionToken(): string | null | undefined;
|
|
33
|
+
getSessionID(): string | null | undefined;
|
|
34
|
+
sessionID(): string | null | undefined;
|
|
35
|
+
getSessionURL(options?: {
|
|
36
|
+
withCurrentTime?: boolean;
|
|
37
|
+
}): string | undefined;
|
|
38
|
+
setUserID(id: string): void;
|
|
39
|
+
userID(id: string): void;
|
|
40
|
+
setUserAnonymousID(id: string): void;
|
|
41
|
+
userAnonymousID(id: string): void;
|
|
42
|
+
setMetadata(key: string, value: string): void;
|
|
43
|
+
metadata(key: string, value: string): void;
|
|
44
|
+
event(key: string, payload?: any, issue?: boolean): void;
|
|
45
|
+
issue(key: string, payload?: any): void;
|
|
46
|
+
handleError: (e: Error | ErrorEvent | PromiseRejectionEvent, metadata?: Record<string, any>) => void;
|
|
47
|
+
}
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
import App, { DEFAULT_INGEST_POINT } from './app/index.js';
|
|
2
|
+
export { default as App } from './app/index.js';
|
|
3
|
+
import { UserAnonymousID, CustomEvent, CustomIssue } from './app/messages.gen.js';
|
|
4
|
+
import * as _Messages from './app/messages.gen.js';
|
|
5
|
+
export const Messages = _Messages;
|
|
6
|
+
export { SanitizeLevel } from './app/sanitizer.js';
|
|
7
|
+
import Connection from './modules/connection.js';
|
|
8
|
+
import Console from './modules/console.js';
|
|
9
|
+
import Exception, { getExceptionMessageFromEvent, getExceptionMessage, } from './modules/exception.js';
|
|
10
|
+
import Img from './modules/img.js';
|
|
11
|
+
import Input from './modules/input.js';
|
|
12
|
+
import Mouse from './modules/mouse.js';
|
|
13
|
+
import Timing from './modules/timing.js';
|
|
14
|
+
import Performance from './modules/performance.js';
|
|
15
|
+
import Scroll from './modules/scroll.js';
|
|
16
|
+
import Viewport from './modules/viewport.js';
|
|
17
|
+
import CSSRules from './modules/cssrules.js';
|
|
18
|
+
import Focus from './modules/focus.js';
|
|
19
|
+
import Fonts from './modules/fonts.js';
|
|
20
|
+
import Network from './modules/network.js';
|
|
21
|
+
import ConstructedStyleSheets from './modules/constructedStyleSheets.js';
|
|
22
|
+
import { IN_BROWSER, deprecationWarn, DOCS_HOST } from './utils.js';
|
|
23
|
+
const DOCS_SETUP = '/installation/javascript-sdk';
|
|
24
|
+
function processOptions(obj) {
|
|
25
|
+
if (obj == null) {
|
|
26
|
+
console.error(`OpenReplay: invalid options argument type. Please, check documentation on ${DOCS_HOST}${DOCS_SETUP}`);
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
if (typeof obj.projectKey !== 'string') {
|
|
30
|
+
if (typeof obj.projectKey !== 'number') {
|
|
31
|
+
if (typeof obj.projectID !== 'number') {
|
|
32
|
+
// Back compatability
|
|
33
|
+
console.error(`OpenReplay: projectKey is missing or wrong type (string is expected). Please, check ${DOCS_HOST}${DOCS_SETUP} for more information.`);
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
obj.projectKey = obj.projectID.toString();
|
|
38
|
+
deprecationWarn('`projectID` option', '`projectKey` option', DOCS_SETUP);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
console.warn('OpenReplay: projectKey is expected to have a string type.');
|
|
43
|
+
obj.projectKey = obj.projectKey.toString();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (obj.sessionToken != null) {
|
|
47
|
+
deprecationWarn('`sessionToken` option', '`sessionHash` start() option', '/');
|
|
48
|
+
}
|
|
49
|
+
return true;
|
|
50
|
+
}
|
|
51
|
+
export default class API {
|
|
52
|
+
constructor(options) {
|
|
53
|
+
this.options = options;
|
|
54
|
+
this.app = null;
|
|
55
|
+
this.handleError = (e, metadata = {}) => {
|
|
56
|
+
if (this.app === null) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
if (e instanceof Error) {
|
|
60
|
+
const msg = getExceptionMessage(e, [], metadata);
|
|
61
|
+
this.app.send(msg);
|
|
62
|
+
}
|
|
63
|
+
else if (e instanceof ErrorEvent ||
|
|
64
|
+
('PromiseRejectionEvent' in window && e instanceof PromiseRejectionEvent)) {
|
|
65
|
+
const msg = getExceptionMessageFromEvent(e, undefined, metadata);
|
|
66
|
+
if (msg != null) {
|
|
67
|
+
this.app.send(msg);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
if (!IN_BROWSER || !processOptions(options)) {
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
if (window.__OPENREPLAY__) {
|
|
75
|
+
console.error('OpenReplay: one tracker instance has been initialised already');
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
if (!options.__DISABLE_SECURE_MODE && location.protocol !== 'https:') {
|
|
79
|
+
console.error('OpenReplay: Your website must be publicly accessible and running on SSL in order for OpenReplay to properly capture and replay the user session. You can disable this check by setting `__DISABLE_SECURE_MODE` option to `true` if you are testing in localhost. Keep in mind, that asset files on a local machine are not available to the outside world. This might affect tracking if you use css files.');
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
const doNotTrack = options.respectDoNotTrack &&
|
|
83
|
+
(navigator.doNotTrack == '1' ||
|
|
84
|
+
// @ts-ignore
|
|
85
|
+
window.doNotTrack == '1');
|
|
86
|
+
const app = (this.app =
|
|
87
|
+
doNotTrack ||
|
|
88
|
+
!('Map' in window) ||
|
|
89
|
+
!('Set' in window) ||
|
|
90
|
+
!('MutationObserver' in window) ||
|
|
91
|
+
!('performance' in window) ||
|
|
92
|
+
!('timing' in performance) ||
|
|
93
|
+
!('startsWith' in String.prototype) ||
|
|
94
|
+
!('Blob' in window) ||
|
|
95
|
+
!('Worker' in window)
|
|
96
|
+
? null
|
|
97
|
+
: new App(options.projectKey, options.sessionToken, options));
|
|
98
|
+
if (app !== null) {
|
|
99
|
+
Viewport(app);
|
|
100
|
+
CSSRules(app);
|
|
101
|
+
ConstructedStyleSheets(app);
|
|
102
|
+
Connection(app);
|
|
103
|
+
Console(app, options);
|
|
104
|
+
Exception(app, options);
|
|
105
|
+
Img(app);
|
|
106
|
+
Input(app, options);
|
|
107
|
+
Mouse(app);
|
|
108
|
+
Timing(app, options);
|
|
109
|
+
Performance(app, options);
|
|
110
|
+
Scroll(app);
|
|
111
|
+
Focus(app);
|
|
112
|
+
Fonts(app);
|
|
113
|
+
Network(app, options.network);
|
|
114
|
+
window.__OPENREPLAY__ = this;
|
|
115
|
+
if (options.autoResetOnWindowOpen) {
|
|
116
|
+
const wOpen = window.open;
|
|
117
|
+
app.attachStartCallback(() => {
|
|
118
|
+
// @ts-ignore ?
|
|
119
|
+
window.open = function (...args) {
|
|
120
|
+
app.resetNextPageSession(true);
|
|
121
|
+
wOpen.call(window, ...args);
|
|
122
|
+
app.resetNextPageSession(false);
|
|
123
|
+
};
|
|
124
|
+
});
|
|
125
|
+
app.attachStopCallback(() => {
|
|
126
|
+
window.open = wOpen;
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
console.log("OpenReplay: browser doesn't support API required for tracking or doNotTrack is set to 1.");
|
|
132
|
+
const req = new XMLHttpRequest();
|
|
133
|
+
const orig = options.ingestPoint || DEFAULT_INGEST_POINT;
|
|
134
|
+
req.open('POST', orig + '/v1/web/not-started');
|
|
135
|
+
// no-cors issue only with text/plain or not-set Content-Type
|
|
136
|
+
// req.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
|
|
137
|
+
req.send(JSON.stringify({
|
|
138
|
+
trackerVersion: '5.0.2',
|
|
139
|
+
projectKey: options.projectKey,
|
|
140
|
+
doNotTrack,
|
|
141
|
+
// TODO: add precise reason (an exact API missing)
|
|
142
|
+
}));
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
use(fn) {
|
|
146
|
+
return fn(this.app, this.options);
|
|
147
|
+
}
|
|
148
|
+
isActive() {
|
|
149
|
+
if (this.app === null) {
|
|
150
|
+
return false;
|
|
151
|
+
}
|
|
152
|
+
return this.app.active();
|
|
153
|
+
}
|
|
154
|
+
start(startOpts) {
|
|
155
|
+
if (!IN_BROWSER) {
|
|
156
|
+
console.error(`OpenReplay: you are trying to start Tracker on a node.js environment. If you want to use OpenReplay with SSR, please, use componentDidMount or useEffect API for placing the \`tracker.start()\` line. Check documentation on ${DOCS_HOST}${DOCS_SETUP}`);
|
|
157
|
+
return Promise.reject('Trying to start not in browser.');
|
|
158
|
+
}
|
|
159
|
+
if (this.app === null) {
|
|
160
|
+
return Promise.reject("Browser doesn't support required api, or doNotTrack is active.");
|
|
161
|
+
}
|
|
162
|
+
// TODO: check argument type
|
|
163
|
+
return this.app.start(startOpts);
|
|
164
|
+
}
|
|
165
|
+
stop() {
|
|
166
|
+
if (this.app === null) {
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
this.app.stop();
|
|
170
|
+
return this.app.session.getSessionHash();
|
|
171
|
+
}
|
|
172
|
+
getSessionToken() {
|
|
173
|
+
if (this.app === null) {
|
|
174
|
+
return null;
|
|
175
|
+
}
|
|
176
|
+
return this.app.getSessionToken();
|
|
177
|
+
}
|
|
178
|
+
getSessionID() {
|
|
179
|
+
if (this.app === null) {
|
|
180
|
+
return null;
|
|
181
|
+
}
|
|
182
|
+
return this.app.getSessionID();
|
|
183
|
+
}
|
|
184
|
+
sessionID() {
|
|
185
|
+
deprecationWarn("'sessionID' method", "'getSessionID' method", '/');
|
|
186
|
+
return this.getSessionID();
|
|
187
|
+
}
|
|
188
|
+
getSessionURL(options) {
|
|
189
|
+
if (this.app === null) {
|
|
190
|
+
return undefined;
|
|
191
|
+
}
|
|
192
|
+
return this.app.getSessionURL(options);
|
|
193
|
+
}
|
|
194
|
+
setUserID(id) {
|
|
195
|
+
if (typeof id === 'string' && this.app !== null) {
|
|
196
|
+
this.app.session.setUserID(id);
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
userID(id) {
|
|
200
|
+
deprecationWarn("'userID' method", "'setUserID' method", '/');
|
|
201
|
+
this.setUserID(id);
|
|
202
|
+
}
|
|
203
|
+
setUserAnonymousID(id) {
|
|
204
|
+
if (typeof id === 'string' && this.app !== null) {
|
|
205
|
+
this.app.send(UserAnonymousID(id));
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
userAnonymousID(id) {
|
|
209
|
+
deprecationWarn("'userAnonymousID' method", "'setUserAnonymousID' method", '/');
|
|
210
|
+
this.setUserAnonymousID(id);
|
|
211
|
+
}
|
|
212
|
+
setMetadata(key, value) {
|
|
213
|
+
if (typeof key === 'string' && typeof value === 'string' && this.app !== null) {
|
|
214
|
+
this.app.session.setMetadata(key, value);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
metadata(key, value) {
|
|
218
|
+
deprecationWarn("'metadata' method", "'setMetadata' method", '/');
|
|
219
|
+
this.setMetadata(key, value);
|
|
220
|
+
}
|
|
221
|
+
event(key, payload = null, issue = false) {
|
|
222
|
+
if (typeof key === 'string' && this.app !== null) {
|
|
223
|
+
if (issue) {
|
|
224
|
+
return this.issue(key, payload);
|
|
225
|
+
}
|
|
226
|
+
else {
|
|
227
|
+
try {
|
|
228
|
+
payload = JSON.stringify(payload);
|
|
229
|
+
}
|
|
230
|
+
catch (e) {
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
this.app.send(CustomEvent(key, payload));
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
issue(key, payload = null) {
|
|
238
|
+
if (typeof key === 'string' && this.app !== null) {
|
|
239
|
+
try {
|
|
240
|
+
payload = JSON.stringify(payload);
|
|
241
|
+
}
|
|
242
|
+
catch (e) {
|
|
243
|
+
return;
|
|
244
|
+
}
|
|
245
|
+
this.app.send(CustomIssue(key, payload));
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ConnectionInformation } from '../app/messages.gen.js';
|
|
2
|
+
export default function (app) {
|
|
3
|
+
const connection = navigator.connection ||
|
|
4
|
+
navigator.mozConnection ||
|
|
5
|
+
navigator.webkitConnection;
|
|
6
|
+
if (connection === undefined) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
const sendConnectionInformation = () => app.send(ConnectionInformation(Math.round(connection.downlink * 1000), connection.type || 'unknown'));
|
|
10
|
+
sendConnectionInformation();
|
|
11
|
+
connection.addEventListener('change', sendConnectionInformation);
|
|
12
|
+
}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { IN_BROWSER } from '../utils.js';
|
|
2
|
+
import { ConsoleLog } from '../app/messages.gen.js';
|
|
3
|
+
const printError = IN_BROWSER && 'InstallTrigger' in window // detect Firefox
|
|
4
|
+
? (e) => e.message + '\n' + e.stack
|
|
5
|
+
: (e) => e.stack || e.message;
|
|
6
|
+
function printString(arg) {
|
|
7
|
+
if (arg === undefined) {
|
|
8
|
+
return 'undefined';
|
|
9
|
+
}
|
|
10
|
+
if (arg === null) {
|
|
11
|
+
return 'null';
|
|
12
|
+
}
|
|
13
|
+
if (arg instanceof Error) {
|
|
14
|
+
return printError(arg);
|
|
15
|
+
}
|
|
16
|
+
if (Array.isArray(arg)) {
|
|
17
|
+
return `Array(${arg.length})`;
|
|
18
|
+
}
|
|
19
|
+
return String(arg);
|
|
20
|
+
}
|
|
21
|
+
function printFloat(arg) {
|
|
22
|
+
if (typeof arg !== 'number')
|
|
23
|
+
return 'NaN';
|
|
24
|
+
return arg.toString();
|
|
25
|
+
}
|
|
26
|
+
function printInt(arg) {
|
|
27
|
+
if (typeof arg !== 'number')
|
|
28
|
+
return 'NaN';
|
|
29
|
+
return Math.floor(arg).toString();
|
|
30
|
+
}
|
|
31
|
+
function printObject(arg) {
|
|
32
|
+
if (arg === undefined) {
|
|
33
|
+
return 'undefined';
|
|
34
|
+
}
|
|
35
|
+
if (arg === null) {
|
|
36
|
+
return 'null';
|
|
37
|
+
}
|
|
38
|
+
if (arg instanceof Error) {
|
|
39
|
+
return printError(arg);
|
|
40
|
+
}
|
|
41
|
+
if (Array.isArray(arg)) {
|
|
42
|
+
const length = arg.length;
|
|
43
|
+
const values = arg.slice(0, 10).map(printString).join(', ');
|
|
44
|
+
return `Array(${length})[${values}]`;
|
|
45
|
+
}
|
|
46
|
+
if (typeof arg === 'object') {
|
|
47
|
+
const res = [];
|
|
48
|
+
let i = 0;
|
|
49
|
+
for (const k in arg) {
|
|
50
|
+
if (++i === 10) {
|
|
51
|
+
break;
|
|
52
|
+
}
|
|
53
|
+
const v = arg[k];
|
|
54
|
+
res.push(k + ': ' + printString(v));
|
|
55
|
+
}
|
|
56
|
+
return '{' + res.join(', ') + '}';
|
|
57
|
+
}
|
|
58
|
+
return arg.toString();
|
|
59
|
+
}
|
|
60
|
+
function printf(args) {
|
|
61
|
+
if (typeof args[0] === 'string') {
|
|
62
|
+
args.unshift(args.shift().replace(/%(o|s|f|d|i)/g, (s, t) => {
|
|
63
|
+
const arg = args.shift();
|
|
64
|
+
if (arg === undefined)
|
|
65
|
+
return s;
|
|
66
|
+
switch (t) {
|
|
67
|
+
case 'o':
|
|
68
|
+
return printObject(arg);
|
|
69
|
+
case 's':
|
|
70
|
+
return printString(arg);
|
|
71
|
+
case 'f':
|
|
72
|
+
return printFloat(arg);
|
|
73
|
+
case 'd':
|
|
74
|
+
case 'i':
|
|
75
|
+
return printInt(arg);
|
|
76
|
+
default:
|
|
77
|
+
return s;
|
|
78
|
+
}
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
return args.map(printObject).join(' ');
|
|
82
|
+
}
|
|
83
|
+
const consoleMethods = ['log', 'info', 'warn', 'error', 'debug', 'assert'];
|
|
84
|
+
export default function (app, opts) {
|
|
85
|
+
const options = Object.assign({
|
|
86
|
+
consoleMethods,
|
|
87
|
+
consoleThrottling: 30,
|
|
88
|
+
}, opts);
|
|
89
|
+
if (!Array.isArray(options.consoleMethods) || options.consoleMethods.length === 0) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
const sendConsoleLog = app.safe((level, args) => app.send(ConsoleLog(level, printf(args))));
|
|
93
|
+
let n;
|
|
94
|
+
const reset = () => {
|
|
95
|
+
n = 0;
|
|
96
|
+
};
|
|
97
|
+
app.attachStartCallback(reset);
|
|
98
|
+
app.ticker.attach(reset, 33, false);
|
|
99
|
+
const patchConsole = (console) => options.consoleMethods.forEach((method) => {
|
|
100
|
+
if (consoleMethods.indexOf(method) === -1) {
|
|
101
|
+
app.debug.error(`OpenReplay: unsupported console method "${method}"`);
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
const fn = console[method];
|
|
105
|
+
console[method] = function (...args) {
|
|
106
|
+
fn.apply(this, args);
|
|
107
|
+
if (n++ > options.consoleThrottling) {
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
sendConsoleLog(method, args);
|
|
111
|
+
};
|
|
112
|
+
});
|
|
113
|
+
const patchContext = app.safe((context) => patchConsole(context.console));
|
|
114
|
+
patchContext(window);
|
|
115
|
+
app.observer.attachContextCallback(patchContext);
|
|
116
|
+
}
|