@lytjs/devtools 4.0.4 → 4.1.0
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/dist/index.cjs +55 -55
- package/dist/index.mjs +46 -46
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types/batch-analyzer.d.ts +150 -0
- package/dist/types/batch-analyzer.d.ts.map +1 -0
- package/dist/types/component-profiler.d.ts +144 -0
- package/dist/types/component-profiler.d.ts.map +1 -0
- package/dist/types/component-tree.d.ts +69 -0
- package/dist/types/component-tree.d.ts.map +1 -0
- package/dist/types/event-panel.d.ts +129 -0
- package/dist/types/event-panel.d.ts.map +1 -0
- package/dist/types/event-tracker.d.ts +80 -0
- package/dist/types/event-tracker.d.ts.map +1 -0
- package/dist/types/hooks.d.ts +177 -0
- package/dist/types/hooks.d.ts.map +1 -0
- package/dist/types/index.d.ts +185 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/memory-tracker.d.ts +148 -0
- package/dist/types/memory-tracker.d.ts.map +1 -0
- package/dist/types/panel.d.ts +182 -0
- package/dist/types/panel.d.ts.map +1 -0
- package/dist/types/perf-collector.d.ts +328 -0
- package/dist/types/perf-collector.d.ts.map +1 -0
- package/dist/types/perf-panel.d.ts +231 -0
- package/dist/types/perf-panel.d.ts.map +1 -0
- package/dist/types/render-tracker.d.ts +147 -0
- package/dist/types/render-tracker.d.ts.map +1 -0
- package/dist/types/route-panel.d.ts +68 -0
- package/dist/types/route-panel.d.ts.map +1 -0
- package/dist/types/router-panel-enhanced.d.ts +118 -0
- package/dist/types/router-panel-enhanced.d.ts.map +1 -0
- package/dist/types/state-inspector.d.ts +80 -0
- package/dist/types/state-inspector.d.ts.map +1 -0
- package/dist/types/time-travel.d.ts +189 -0
- package/dist/types/time-travel.d.ts.map +1 -0
- package/dist/types/virtual-tree.d.ts +168 -0
- package/dist/types/virtual-tree.d.ts.map +1 -0
- package/package.json +5 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"fileNames":["../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.full.d.ts","../src/batch-analyzer.ts","../src/component-profiler.ts","../src/hooks.ts","../src/panel.ts","../src/component-tree.ts","../src/event-panel.ts","../src/event-tracker.ts","../src/state-inspector.ts","../src/time-travel.ts","../src/route-panel.ts","../src/perf-collector.ts","../src/perf-panel.ts","../src/router-panel-enhanced.ts","../src/virtual-tree.ts","../src/memory-tracker.ts","../src/render-tracker.ts","../src/index.ts"],"fileIdsList":[[66,67],[64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79],[65,74]],"fileInfos":[{"version":"bcd24271a113971ba9eb71ff8cb01bc6b0f872a85c23fdbe5d93065b375933cd","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3f88bedbeb09c6f5a6645cb24c7c55f1aa22d19ae96c8e6959cbd8b85a707bc6","signature":false,"impliedFormat":1},{"version":"7fe93b39b810eadd916be8db880dd7f0f7012a5cc6ffb62de8f62a2117fa6f1f","signature":false,"impliedFormat":1},{"version":"bb0074cc08b84a2374af33d8bf044b80851ccc9e719a5e202eacf40db2c31600","signature":false,"impliedFormat":1},{"version":"1a7daebe4f45fb03d9ec53d60008fbf9ac45a697fdc89e4ce218bc94b94f94d6","signature":false,"impliedFormat":1},{"version":"f94b133a3cb14a288803be545ac2683e0d0ff6661bcd37e31aaaec54fc382aed","signature":false,"impliedFormat":1},{"version":"f59d0650799f8782fd74cf73c19223730c6d1b9198671b1c5b3a38e1188b5953","signature":false,"impliedFormat":1},{"version":"8a15b4607d9a499e2dbeed9ec0d3c0d7372c850b2d5f1fb259e8f6d41d468a84","signature":false,"impliedFormat":1},{"version":"26e0fe14baee4e127f4365d1ae0b276f400562e45e19e35fd2d4c296684715e6","signature":false,"impliedFormat":1},{"version":"d6b1eba8496bdd0eed6fc8a685768fe01b2da4a0388b5fe7df558290bffcf32f","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","signature":false,"impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","signature":false,"impliedFormat":1},{"version":"2a2de5b9459b3fc44decd9ce6100b72f1b002ef523126c1d3d8b2a4a63d74d78","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"f13f4b465c99041e912db5c44129a94588e1aafee35a50eab51044833f50b4ee","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"eadcffda2aa84802c73938e589b9e58248d74c59cb7fcbca6474e3435ac15504","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"105ba8ff7ba746404fe1a2e189d1d3d2e0eb29a08c18dded791af02f29fb4711","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"00343ca5b2e3d48fa5df1db6e32ea2a59afab09590274a6cccb1dbae82e60c7c","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ebd9f816d4002697cb2864bea1f0b70a103124e18a8cd9645eeccc09bdf80ab4","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"2c1afac30a01772cd2a9a298a7ce7706b5892e447bb46bdbeef720f7b5da77ad","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"7b0225f483e4fa685625ebe43dd584bb7973bbd84e66a6ba7bbe175ee1048b4f","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"c0a4b8ac6ce74679c1da2b3795296f5896e31c38e888469a8e0f99dc3305de60","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3084a7b5f569088e0146533a00830e206565de65cae2239509168b11434cd84f","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"c5079c53f0f141a0698faa903e76cb41cd664e3efb01cc17a5c46ec2eb0bef42","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"32cafbc484dea6b0ab62cf8473182bbcb23020d70845b406f80b7526f38ae862","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"fca4cdcb6d6c5ef18a869003d02c9f0fd95df8cfaf6eb431cd3376bc034cad36","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"b93ec88115de9a9dc1b602291b85baf825c85666bf25985cc5f698073892b467","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c06dcc3fe849fcb297c247865a161f995cc29de7aa823afdd75aaaddc1419b","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"b77e16112127a4b169ef0b8c3a4d730edf459c5f25fe52d5e436a6919206c4d7","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"fbffd9337146eff822c7c00acbb78b01ea7ea23987f6c961eba689349e744f8c","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"a995c0e49b721312f74fdfb89e4ba29bd9824c770bbb4021d74d2bf560e4c6bd","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"c7b3542146734342e440a84b213384bfa188835537ddbda50d30766f0593aff9","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ce6180fa19b1cccd07ee7f7dbb9a367ac19c0ed160573e4686425060b6df7f57","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3f02e2476bccb9dbe21280d6090f0df17d2f66b74711489415a8aa4df73c9675","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"45e3ab34c1c013c8ab2dc1ba4c80c780744b13b5676800ae2e3be27ae862c40c","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"805c86f6cca8d7702a62a844856dbaa2a3fd2abef0536e65d48732441dde5b5b","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"e42e397f1a5a77994f0185fd1466520691456c772d06bf843e5084ceb879a0ad","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"f4c2b41f90c95b1c532ecc874bd3c111865793b23aebcc1c3cbbabcd5d76ffb0","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ab26191cfad5b66afa11b8bf935ef1cd88fabfcb28d30b2dfa6fad877d050332","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"2088bc26531e38fb05eedac2951480db5309f6be3fa4a08d2221abb0f5b4200d","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"cb9d366c425fea79716a8fb3af0d78e6b22ebbab3bd64d25063b42dc9f531c1e","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"500934a8089c26d57ebdb688fc9757389bb6207a3c8f0674d68efa900d2abb34","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"689da16f46e647cef0d64b0def88910e818a5877ca5379ede156ca3afb780ac3","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"bc21cc8b6fee4f4c2440d08035b7ea3c06b3511314c8bab6bef7a92de58a2593","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"7ca53d13d2957003abb47922a71866ba7cb2068f8d154877c596d63c359fed25","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"54725f8c4df3d900cb4dac84b64689ce29548da0b4e9b7c2de61d41c79293611","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"e5594bc3076ac29e6c1ebda77939bc4c8833de72f654b6e376862c0473199323","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"2f3eb332c2d73e729f3364fcc0c2b375e72a121e8157d25a82d67a138c83a95c","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"6f4427f9642ce8d500970e4e69d1397f64072ab73b97e476b4002a646ac743b1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"48915f327cd1dea4d7bd358d9dc7732f58f9e1626a29cc0c05c8c692419d9bb7","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"b7bf9377723203b5a6a4b920164df22d56a43f593269ba6ae1fdc97774b68855","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"db9709688f82c9e5f65a119c64d835f906efe5f559d08b11642d56eb85b79357","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"4b25b8c874acd1a4cf8444c3617e037d444d19080ac9f634b405583fd10ce1f7","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"37be57d7c90cf1f8112ee2636a068d8fd181289f82b744160ec56a7dc158a9f5","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"a917a49ac94cd26b754ab84e113369a75d1a47a710661d7cd25e961cc797065f","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3261badeb7843d157ef3e6f5d1427d0eeb0af0cf9df84a62cfd29fd47ac86e","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"195daca651dde22f2167ac0d0a05e215308119a3100f5e6268e8317d05a92526","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8b11e4285cd2bb164a4dc09248bdec69e9842517db4ca47c1ba913011e44ff2f","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0508571a52475e245b02bc50fa1394065a0a3d05277fbf5120c3784b85651799","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8f9af488f510c3015af3cc8c267a9e9d96c4dd38a1fdff0e11dc5a544711415b","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"fc611fea8d30ea72c6bbfb599c9b4d393ce22e2f5bfef2172534781e7d138104","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"1ce14b81c5cc821994aa8ec1d42b220dd41b27fcc06373bce3958af7421b77d4","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"b3a048b3e9302ef9a34ef4ebb9aecfb28b66abb3bce577206a79fee559c230da","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"01a30f9e8582b369075c0808df71121e6855cb06fd8d3d39511d9ebb66405205","signature":false,"impliedFormat":1},{"version":"a6e041a2780a8aecbd78274c9ddcefb9f87f178efc1bb4c752747755f6f88d32","signature":false},{"version":"1980e611643cbb1e03db5429245d28ae907c1098bfeff814abe10522740bfb54","signature":false},{"version":"e02f404f1c2c8238b50a66e3e2601d99de949d807894f0e938cc693d376ef965","signature":false},{"version":"b5952addff5e2bb10647961e41e722feeaf11e25dcbeeecf62b827e2c86740dd","signature":false},{"version":"ed243a888f0b125f8404f2e25fa79a6f3ddddc3e5ae4ab33e21fb3b2596a4275","signature":false},{"version":"33c7bddaa41e86cd099c5326a515bb8614dd318c379e50c068f882214306bd55","signature":false},{"version":"08cb3609412f056a01a59e58dd59db3f671c7d73ddf70b5a38cd0dff45c86440","signature":false},{"version":"1ae68744045ed9c25bf0e3c54bb41f24a05c59485cc859775ccca2edae783a25","signature":false},{"version":"df766caaf137b6e009a5e0cdef1936e5b646c787f303d9e9b9ec55781bc2a902","signature":false},{"version":"4ec28514c6995550629804743d6288c13ccbbfc811433c0bb6d48bcdcf0a48b2","signature":false},{"version":"c848a83dcf3a660f3eda553d25f9efaa84288c3594c84f67491fa5311f119878","signature":false},{"version":"d7fe8ff5925664cfe1e96a14db0da41301b382fd3c81d3a775fb73c60ae0b374","signature":false},{"version":"9c844a007f3763d2b054fdd1faa45cf7772d8f0305f27b78ca4b799f60a44acf","signature":false},{"version":"7ef3d46ef5274dc468c796dd017f5764b6528033ffad230d142f0a76fda14a42","signature":false},{"version":"2ea5761a27a10b12199fb0f13012b23f70e229051bb967b451b8e132e849494b","signature":false},{"version":"c3b09e54200b221ab8804947e33a54a397ed9424c1c749481f3711d0ba7ff96a","signature":false},{"version":"4fd36dfd569bd844134322138cc8fce60741ec2c3ad340419762f64975b25b18","signature":false}],"root":[[64,80]],"options":{"allowImportingTsExtensions":true,"composite":true,"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"exactOptionalPropertyTypes":true,"module":99,"noEmitOnError":false,"noFallthroughCasesInSwitch":true,"noImplicitOverride":true,"noImplicitReturns":true,"noUncheckedIndexedAccess":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./types","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9,"useDefineForClassFields":true,"verbatimModuleSyntax":true},"referencedMap":[[68,1],[70,1],[80,2],[75,3],[71,1],[72,1]],"changeFileSet":[61,62,12,10,11,16,15,2,17,18,19,20,21,22,23,24,3,25,26,4,27,31,28,29,30,32,33,34,5,35,36,37,38,6,42,39,40,41,43,7,44,49,50,45,46,47,48,8,54,51,52,53,55,9,56,63,57,58,60,59,1,14,13,64,65,68,69,70,66,80,78,67,74,75,79,73,76,71,72,77],"version":"6.0.2"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lyt.js DevTools - 批量操作分析器
|
|
3
|
+
*
|
|
4
|
+
* 追踪批量操作的执行时间和频率,提供统计分析和异常检测。
|
|
5
|
+
* 使用环形缓冲区限制内存占用。
|
|
6
|
+
*
|
|
7
|
+
* 纯原生零依赖实现。
|
|
8
|
+
*/
|
|
9
|
+
/** 批量操作记录 */
|
|
10
|
+
export interface BatchRecord {
|
|
11
|
+
/** 操作名称 */
|
|
12
|
+
name: string;
|
|
13
|
+
/** 开始时间戳 */
|
|
14
|
+
startTime: number;
|
|
15
|
+
/** 结束时间戳 */
|
|
16
|
+
endTime: number;
|
|
17
|
+
/** 持续时间 (ms) */
|
|
18
|
+
duration: number;
|
|
19
|
+
/** 操作序号 */
|
|
20
|
+
index: number;
|
|
21
|
+
}
|
|
22
|
+
/** 批量操作统计(按名称分组) */
|
|
23
|
+
export interface BatchNameStats {
|
|
24
|
+
/** 操作名称 */
|
|
25
|
+
name: string;
|
|
26
|
+
/** 执行次数 */
|
|
27
|
+
count: number;
|
|
28
|
+
/** 平均持续时间 (ms) */
|
|
29
|
+
avgDuration: number;
|
|
30
|
+
/** 最大持续时间 (ms) */
|
|
31
|
+
maxDuration: number;
|
|
32
|
+
/** 最小持续时间 (ms) */
|
|
33
|
+
minDuration: number;
|
|
34
|
+
/** 总持续时间 (ms) */
|
|
35
|
+
totalDuration: number;
|
|
36
|
+
/** 标准差 (ms) */
|
|
37
|
+
stdDev: number;
|
|
38
|
+
}
|
|
39
|
+
/** 整体批量操作统计 */
|
|
40
|
+
export interface BatchStats {
|
|
41
|
+
/** 总操作次数 */
|
|
42
|
+
totalBatches: number;
|
|
43
|
+
/** 总持续时间 (ms) */
|
|
44
|
+
totalDuration: number;
|
|
45
|
+
/** 平均持续时间 (ms) */
|
|
46
|
+
avgDuration: number;
|
|
47
|
+
/** 最大持续时间 (ms) */
|
|
48
|
+
maxDuration: number;
|
|
49
|
+
/** 最小持续时间 (ms) */
|
|
50
|
+
minDuration: number;
|
|
51
|
+
/** 按名称分组的统计 */
|
|
52
|
+
byName: BatchNameStats[];
|
|
53
|
+
}
|
|
54
|
+
/** 异常批量操作条目 */
|
|
55
|
+
export interface AnomalousBatch {
|
|
56
|
+
/** 操作名称 */
|
|
57
|
+
name: string;
|
|
58
|
+
/** 持续时间 (ms) */
|
|
59
|
+
duration: number;
|
|
60
|
+
/** 时间戳 */
|
|
61
|
+
timestamp: number;
|
|
62
|
+
/** 异常类型 */
|
|
63
|
+
anomalyType: 'slow' | 'fast' | 'outlier';
|
|
64
|
+
/** 异常描述 */
|
|
65
|
+
description: string;
|
|
66
|
+
/** 偏离平均值的标准差倍数 */
|
|
67
|
+
deviationSigma: number;
|
|
68
|
+
}
|
|
69
|
+
/** 批量操作分析器配置 */
|
|
70
|
+
export interface BatchAnalyzerConfig {
|
|
71
|
+
/** 环形缓冲区容量,默认 100 */
|
|
72
|
+
bufferSize?: number;
|
|
73
|
+
/** 异常检测的慢操作阈值 (ms),默认 1000 */
|
|
74
|
+
slowThreshold?: number;
|
|
75
|
+
/** 异常检测的标准差倍数阈值,默认 2 */
|
|
76
|
+
outlierSigmaThreshold?: number;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* 批量操作分析器
|
|
80
|
+
*
|
|
81
|
+
* 追踪批量操作的执行时间和频率,提供统计分析和异常检测。
|
|
82
|
+
*/
|
|
83
|
+
export declare class BatchAnalyzer {
|
|
84
|
+
/** 批量操作记录缓冲区 */
|
|
85
|
+
private records;
|
|
86
|
+
/** 正在进行的操作映射 */
|
|
87
|
+
private pending;
|
|
88
|
+
/** 记录计数器(单调递增) */
|
|
89
|
+
private counter;
|
|
90
|
+
/** 配置 */
|
|
91
|
+
private readonly config;
|
|
92
|
+
constructor(config?: BatchAnalyzerConfig);
|
|
93
|
+
/**
|
|
94
|
+
* 开始一个批量操作
|
|
95
|
+
*
|
|
96
|
+
* @param name - 操作名称
|
|
97
|
+
* @returns 是否成功开始(如果同名操作已在进行中,返回 false)
|
|
98
|
+
*/
|
|
99
|
+
startBatch(name: string): boolean;
|
|
100
|
+
/**
|
|
101
|
+
* 结束一个批量操作
|
|
102
|
+
*
|
|
103
|
+
* @param name - 操作名称
|
|
104
|
+
* @returns 操作记录,如果操作未开始则返回 null
|
|
105
|
+
*/
|
|
106
|
+
endBatch(name: string): BatchRecord | null;
|
|
107
|
+
/**
|
|
108
|
+
* 获取批量操作统计
|
|
109
|
+
*
|
|
110
|
+
* @returns 批量操作统计信息
|
|
111
|
+
*/
|
|
112
|
+
getBatchStats(): BatchStats;
|
|
113
|
+
/**
|
|
114
|
+
* 检测异常批量操作
|
|
115
|
+
*
|
|
116
|
+
* 基于以下规则检测异常:
|
|
117
|
+
* - 慢操作:持续时间超过慢操作阈值
|
|
118
|
+
* - 离群值:持续时间偏离同组平均值超过指定标准差倍数
|
|
119
|
+
*
|
|
120
|
+
* @returns 异常批量操作数组
|
|
121
|
+
*/
|
|
122
|
+
detectAnomalousBatches(): AnomalousBatch[];
|
|
123
|
+
/**
|
|
124
|
+
* 获取所有批量操作记录
|
|
125
|
+
*
|
|
126
|
+
* @returns 批量操作记录数组
|
|
127
|
+
*/
|
|
128
|
+
getRecords(): BatchRecord[];
|
|
129
|
+
/**
|
|
130
|
+
* 获取记录数量
|
|
131
|
+
*
|
|
132
|
+
* @returns 记录数量
|
|
133
|
+
*/
|
|
134
|
+
getRecordCount(): number;
|
|
135
|
+
/**
|
|
136
|
+
* 获取正在进行的操作名称列表
|
|
137
|
+
*
|
|
138
|
+
* @returns 正在进行的操作名称数组
|
|
139
|
+
*/
|
|
140
|
+
getPendingBatches(): string[];
|
|
141
|
+
/**
|
|
142
|
+
* 清除所有记录和进行中的操作
|
|
143
|
+
*/
|
|
144
|
+
clear(): void;
|
|
145
|
+
/**
|
|
146
|
+
* 销毁分析器
|
|
147
|
+
*/
|
|
148
|
+
destroy(): void;
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=batch-analyzer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batch-analyzer.d.ts","sourceRoot":"","sources":["../../src/batch-analyzer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,aAAa;AACb,MAAM,WAAW,WAAW;IAC1B,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,oBAAoB;AACpB,MAAM,WAAW,cAAc;IAC7B,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAe;AACf,MAAM,WAAW,UAAU;IACzB,YAAY;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe;IACf,MAAM,EAAE,cAAc,EAAE,CAAC;CAC1B;AAED,eAAe;AACf,MAAM,WAAW,cAAc;IAC7B,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACzC,WAAW;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,gBAAgB;AAChB,MAAM,WAAW,mBAAmB;IAClC,qBAAqB;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAwED;;;;GAIG;AACH,qBAAa,aAAa;IACxB,gBAAgB;IAChB,OAAO,CAAC,OAAO,CAA0B;IACzC,gBAAgB;IAChB,OAAO,CAAC,OAAO,CAAkC;IACjD,kBAAkB;IAClB,OAAO,CAAC,OAAO,CAAa;IAC5B,SAAS;IACT,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgC;gBAE3C,MAAM,CAAC,EAAE,mBAAmB;IAaxC;;;;;OAKG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQjC;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAsB1C;;;;OAIG;IACH,aAAa,IAAI,UAAU;IAsF3B;;;;;;;;OAQG;IACH,sBAAsB,IAAI,cAAc,EAAE;IAuD1C;;;;OAIG;IACH,UAAU,IAAI,WAAW,EAAE;IAI3B;;;;OAIG;IACH,cAAc,IAAI,MAAM;IAIxB;;;;OAIG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAI7B;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACH,OAAO,IAAI,IAAI;CAGhB"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lyt.js DevTools - 组件性能分析器
|
|
3
|
+
*
|
|
4
|
+
* 对单个组件进行详细的性能分析,追踪:
|
|
5
|
+
* - 渲染次数
|
|
6
|
+
* - 平均渲染时间
|
|
7
|
+
* - 最大渲染时间
|
|
8
|
+
* - 总渲染时间
|
|
9
|
+
* - 慢渲染自动检测(>16ms)
|
|
10
|
+
*
|
|
11
|
+
* 纯原生零依赖实现。
|
|
12
|
+
*/
|
|
13
|
+
/** 单次渲染记录 */
|
|
14
|
+
export interface RenderRecord {
|
|
15
|
+
/** 渲染耗时 (ms) */
|
|
16
|
+
duration: number;
|
|
17
|
+
/** 渲染时间戳 */
|
|
18
|
+
timestamp: number;
|
|
19
|
+
/** 是否为慢渲染 (>16ms) */
|
|
20
|
+
isSlow: boolean;
|
|
21
|
+
}
|
|
22
|
+
/** 组件分析结果 */
|
|
23
|
+
export interface ProfileResult {
|
|
24
|
+
/** 组件名称 */
|
|
25
|
+
componentName: string;
|
|
26
|
+
/** 渲染次数 */
|
|
27
|
+
renderCount: number;
|
|
28
|
+
/** 平均渲染时间 (ms) */
|
|
29
|
+
avgRenderTime: number;
|
|
30
|
+
/** 最大渲染时间 (ms) */
|
|
31
|
+
maxRenderTime: number;
|
|
32
|
+
/** 最小渲染时间 (ms) */
|
|
33
|
+
minRenderTime: number;
|
|
34
|
+
/** 总渲染时间 (ms) */
|
|
35
|
+
totalRenderTime: number;
|
|
36
|
+
/** 慢渲染次数 */
|
|
37
|
+
slowRenderCount: number;
|
|
38
|
+
/** 慢渲染阈值 (ms) */
|
|
39
|
+
slowThreshold: number;
|
|
40
|
+
/** 所有渲染记录 */
|
|
41
|
+
records: RenderRecord[];
|
|
42
|
+
/** 分析持续时间 (ms) */
|
|
43
|
+
profileDuration: number;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* 组件性能分析器
|
|
47
|
+
*
|
|
48
|
+
* 对指定组件进行性能分析,自动检测慢渲染。
|
|
49
|
+
* 支持同时分析多个组件。
|
|
50
|
+
*/
|
|
51
|
+
export declare class ComponentProfiler {
|
|
52
|
+
/** 活跃的分析会话映射(组件名 -> 会话) */
|
|
53
|
+
private activeProfiles;
|
|
54
|
+
/** 慢渲染阈值 (ms) */
|
|
55
|
+
private slowThreshold;
|
|
56
|
+
constructor(slowThreshold?: number);
|
|
57
|
+
/**
|
|
58
|
+
* 开始分析指定组件
|
|
59
|
+
*
|
|
60
|
+
* @param componentName - 组件名称
|
|
61
|
+
* @returns 是否成功开始(如果已经在分析中则返回 false)
|
|
62
|
+
*/
|
|
63
|
+
startProfile(componentName: string): boolean;
|
|
64
|
+
/**
|
|
65
|
+
* 停止分析指定组件并返回结果
|
|
66
|
+
*
|
|
67
|
+
* @param componentName - 组件名称
|
|
68
|
+
* @returns 分析结果,如果组件未被分析则返回 null
|
|
69
|
+
*/
|
|
70
|
+
stopProfile(componentName: string): ProfileResult | null;
|
|
71
|
+
/**
|
|
72
|
+
* 停止所有分析并返回所有结果
|
|
73
|
+
*
|
|
74
|
+
* @returns 所有分析结果数组
|
|
75
|
+
*/
|
|
76
|
+
stopAllProfiles(): ProfileResult[];
|
|
77
|
+
/**
|
|
78
|
+
* 记录一次组件渲染
|
|
79
|
+
*
|
|
80
|
+
* 如果组件正在被分析中,则记录此次渲染。
|
|
81
|
+
*
|
|
82
|
+
* @param componentName - 组件名称
|
|
83
|
+
* @param duration - 渲染耗时 (ms)
|
|
84
|
+
*/
|
|
85
|
+
recordRender(componentName: string, duration: number): void;
|
|
86
|
+
/**
|
|
87
|
+
* 获取指定组件的当前分析快照(不停止分析)
|
|
88
|
+
*
|
|
89
|
+
* @param componentName - 组件名称
|
|
90
|
+
* @returns 当前分析快照,如果组件未被分析则返回 null
|
|
91
|
+
*/
|
|
92
|
+
getSnapshot(componentName: string): ProfileResult | null;
|
|
93
|
+
/**
|
|
94
|
+
* 检查指定组件是否正在被分析
|
|
95
|
+
*
|
|
96
|
+
* @param componentName - 组件名称
|
|
97
|
+
* @returns 是否正在分析中
|
|
98
|
+
*/
|
|
99
|
+
isProfiling(componentName: string): boolean;
|
|
100
|
+
/**
|
|
101
|
+
* 获取所有正在分析的组件名称
|
|
102
|
+
*
|
|
103
|
+
* @returns 组件名称数组
|
|
104
|
+
*/
|
|
105
|
+
getActiveProfileNames(): string[];
|
|
106
|
+
/**
|
|
107
|
+
* 获取正在分析的组件数量
|
|
108
|
+
*
|
|
109
|
+
* @returns 组件数量
|
|
110
|
+
*/
|
|
111
|
+
getActiveProfileCount(): number;
|
|
112
|
+
/**
|
|
113
|
+
* 获取指定组件的慢渲染列表(仅当前活跃分析中的)
|
|
114
|
+
*
|
|
115
|
+
* @param componentName - 组件名称
|
|
116
|
+
* @returns 慢渲染记录数组
|
|
117
|
+
*/
|
|
118
|
+
getSlowRenders(componentName: string): RenderRecord[];
|
|
119
|
+
/**
|
|
120
|
+
* 设置慢渲染阈值
|
|
121
|
+
*
|
|
122
|
+
* @param threshold - 新的阈值 (ms)
|
|
123
|
+
*/
|
|
124
|
+
setSlowThreshold(threshold: number): void;
|
|
125
|
+
/**
|
|
126
|
+
* 获取当前慢渲染阈值
|
|
127
|
+
*
|
|
128
|
+
* @returns 阈值 (ms)
|
|
129
|
+
*/
|
|
130
|
+
getSlowThreshold(): number;
|
|
131
|
+
/**
|
|
132
|
+
* 清除所有分析数据
|
|
133
|
+
*/
|
|
134
|
+
clear(): void;
|
|
135
|
+
/**
|
|
136
|
+
* 销毁分析器
|
|
137
|
+
*/
|
|
138
|
+
destroy(): void;
|
|
139
|
+
/**
|
|
140
|
+
* 从分析会话构建结果对象
|
|
141
|
+
*/
|
|
142
|
+
private buildResult;
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=component-profiler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component-profiler.d.ts","sourceRoot":"","sources":["../../src/component-profiler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,aAAa;AACb,MAAM,WAAW,YAAY;IAC3B,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,qBAAqB;IACrB,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,aAAa;AACb,MAAM,WAAW,aAAa;IAC5B,WAAW;IACX,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW;IACX,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,kBAAkB;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,kBAAkB;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,iBAAiB;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY;IACZ,eAAe,EAAE,MAAM,CAAA;IACvB,iBAAiB;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa;IACb,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,kBAAkB;IAClB,eAAe,EAAE,MAAM,CAAA;CACxB;AAqBD;;;;;GAKG;AACH,qBAAa,iBAAiB;IAC5B,2BAA2B;IAC3B,OAAO,CAAC,cAAc,CAAwC;IAE9D,iBAAiB;IACjB,OAAO,CAAC,aAAa,CAAQ;gBAEjB,aAAa,GAAE,MAA+B;IAQ1D;;;;;OAKG;IACH,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;IAe5C;;;;;OAKG;IACH,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAWxD;;;;OAIG;IACH,eAAe,IAAI,aAAa,EAAE;IAelC;;;;;;;OAOG;IACH,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAa3D;;;;;OAKG;IACH,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAaxD;;;;;OAKG;IACH,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;IAI3C;;;;OAIG;IACH,qBAAqB,IAAI,MAAM,EAAE;IAIjC;;;;OAIG;IACH,qBAAqB,IAAI,MAAM;IAI/B;;;;;OAKG;IACH,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,YAAY,EAAE;IAUrD;;;;OAIG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAYzC;;;;OAIG;IACH,gBAAgB,IAAI,MAAM;IAQ1B;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,OAAO,IAAI,IAAI;IAQf;;OAEG;IACH,OAAO,CAAC,WAAW;CAuBpB"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lyt.js DevTools — 组件树检查器
|
|
3
|
+
*
|
|
4
|
+
* 遍历应用组件树,生成可视化的树形结构,支持组件选择、搜索过滤和高亮。
|
|
5
|
+
*
|
|
6
|
+
* 核心功能:
|
|
7
|
+
* - ComponentTreeInspector 类
|
|
8
|
+
* - 遍历应用组件树,生成树形结构
|
|
9
|
+
* - 显示每个组件的名称、状态数量、是否有更新、渲染耗时
|
|
10
|
+
* - 点击组件节点显示详情
|
|
11
|
+
* - 高亮选中组件(给对应 DOM 元素加边框)
|
|
12
|
+
* - 组件搜索/过滤功能
|
|
13
|
+
*
|
|
14
|
+
* 纯原生零依赖实现。
|
|
15
|
+
*/
|
|
16
|
+
import type { DevToolsPanel } from './panel';
|
|
17
|
+
/** 组件选中回调 */
|
|
18
|
+
type ComponentSelectCallback = (componentId: string | null) => void;
|
|
19
|
+
/**
|
|
20
|
+
* 组件树检查器
|
|
21
|
+
*
|
|
22
|
+
* 负责渲染和管理组件树视图,包括搜索、过滤、选择等功能。
|
|
23
|
+
*/
|
|
24
|
+
export declare class ComponentTreeInspector {
|
|
25
|
+
/** 面板引用 */
|
|
26
|
+
private panel;
|
|
27
|
+
/** 组件选中回调 */
|
|
28
|
+
private onSelect;
|
|
29
|
+
/** 搜索关键词 */
|
|
30
|
+
private searchKeyword;
|
|
31
|
+
/** 展开的节点 ID 集合 */
|
|
32
|
+
private expandedNodes;
|
|
33
|
+
/** 当前内容容器 */
|
|
34
|
+
private container;
|
|
35
|
+
/** 更新定时器 */
|
|
36
|
+
private updateTimer;
|
|
37
|
+
constructor(panel: DevToolsPanel, onSelect?: ComponentSelectCallback);
|
|
38
|
+
/**
|
|
39
|
+
* 渲染组件树到指定容器
|
|
40
|
+
*/
|
|
41
|
+
render(container: HTMLElement): void;
|
|
42
|
+
/**
|
|
43
|
+
* 渲染完整组件树
|
|
44
|
+
*/
|
|
45
|
+
private renderTree;
|
|
46
|
+
/**
|
|
47
|
+
* 构建组件树形数据结构
|
|
48
|
+
*/
|
|
49
|
+
private buildTree;
|
|
50
|
+
/**
|
|
51
|
+
* 渲染单个树节点
|
|
52
|
+
*/
|
|
53
|
+
private renderTreeNode;
|
|
54
|
+
/**
|
|
55
|
+
* 全局更新事件处理
|
|
56
|
+
* 使用防抖避免频繁更新
|
|
57
|
+
*/
|
|
58
|
+
private onUpdate;
|
|
59
|
+
/**
|
|
60
|
+
* 强制刷新组件树
|
|
61
|
+
*/
|
|
62
|
+
refresh(): void;
|
|
63
|
+
/**
|
|
64
|
+
* 销毁检查器
|
|
65
|
+
*/
|
|
66
|
+
destroy(): void;
|
|
67
|
+
}
|
|
68
|
+
export {};
|
|
69
|
+
//# sourceMappingURL=component-tree.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component-tree.d.ts","sourceRoot":"","sources":["../../src/component-tree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAWH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAkB7C,aAAa;AACb,KAAK,uBAAuB,GAAG,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;AAMpE;;;;GAIG;AACH,qBAAa,sBAAsB;IACjC,WAAW;IACX,OAAO,CAAC,KAAK,CAAgB;IAC7B,aAAa;IACb,OAAO,CAAC,QAAQ,CAA0B;IAC1C,YAAY;IACZ,OAAO,CAAC,aAAa,CAAc;IACnC,kBAAkB;IAClB,OAAO,CAAC,aAAa,CAAqB;IAC1C,aAAa;IACb,OAAO,CAAC,SAAS,CAA4B;IAC7C,YAAY;IACZ,OAAO,CAAC,WAAW,CAA8C;gBAErD,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,uBAAuB;IAoBpE;;OAEG;IACH,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;IAKpC;;OAEG;IACH,OAAO,CAAC,UAAU;IA6ClB;;OAEG;IACH,OAAO,CAAC,SAAS;IAuCjB;;OAEG;IACH,OAAO,CAAC,cAAc;IAyLtB;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAOd;IAEF;;OAEG;IACH,OAAO,IAAI,IAAI;IAQf;;OAEG;IACH,OAAO,IAAI,IAAI;CAShB"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lyt.js DevTools — 事件面板
|
|
3
|
+
*
|
|
4
|
+
* 独立的事件检查器,捕获和展示组件事件(emit 调用)。
|
|
5
|
+
* 支持过滤、暂停/恢复、环形缓冲区、导出 JSON 等功能。
|
|
6
|
+
*
|
|
7
|
+
* 纯原生零依赖实现。
|
|
8
|
+
*/
|
|
9
|
+
/** 捕获的事件 */
|
|
10
|
+
export interface CapturedEvent {
|
|
11
|
+
/** 事件名称 */
|
|
12
|
+
name: string;
|
|
13
|
+
/** 事件载荷 */
|
|
14
|
+
payload: any;
|
|
15
|
+
/** 来源组件 */
|
|
16
|
+
sourceComponent?: string;
|
|
17
|
+
/** 捕获时间戳 */
|
|
18
|
+
timestamp: number;
|
|
19
|
+
/** 事件序号 */
|
|
20
|
+
index: number;
|
|
21
|
+
}
|
|
22
|
+
/** 事件面板配置 */
|
|
23
|
+
export interface EventPanelConfig {
|
|
24
|
+
/** 最大缓冲区大小(环形缓冲区),默认 200 */
|
|
25
|
+
maxBuffer?: number;
|
|
26
|
+
/** 是否自动滚动到最新事件,默认 true */
|
|
27
|
+
autoScroll?: boolean;
|
|
28
|
+
/** 面板标题,默认 "事件面板" */
|
|
29
|
+
title?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* 事件面板
|
|
33
|
+
*
|
|
34
|
+
* 捕获和展示组件事件,支持过滤、暂停/恢复、环形缓冲区和导出。
|
|
35
|
+
*/
|
|
36
|
+
export declare class EventPanel {
|
|
37
|
+
/** 事件缓冲区 */
|
|
38
|
+
private buffer;
|
|
39
|
+
/** 最大缓冲区大小 */
|
|
40
|
+
private maxBuffer;
|
|
41
|
+
/** 是否自动滚动 */
|
|
42
|
+
private autoScroll;
|
|
43
|
+
/** 面板标题 */
|
|
44
|
+
private title;
|
|
45
|
+
/** 是否暂停 */
|
|
46
|
+
private _paused;
|
|
47
|
+
/** 过滤模式 */
|
|
48
|
+
private filterPattern;
|
|
49
|
+
/** 事件计数器(单调递增) */
|
|
50
|
+
private counter;
|
|
51
|
+
/** 环形缓冲区写入位置 */
|
|
52
|
+
private writeIndex;
|
|
53
|
+
/** 缓冲区是否已满 */
|
|
54
|
+
private bufferFull;
|
|
55
|
+
/** DOM 根元素 */
|
|
56
|
+
private element;
|
|
57
|
+
constructor(config?: EventPanelConfig);
|
|
58
|
+
/**
|
|
59
|
+
* 捕获一个事件
|
|
60
|
+
*
|
|
61
|
+
* @param name - 事件名称
|
|
62
|
+
* @param payload - 事件载荷
|
|
63
|
+
* @param sourceComponent - 来源组件名称(可选)
|
|
64
|
+
*/
|
|
65
|
+
captureEvent(name: string, payload: any, sourceComponent?: string): void;
|
|
66
|
+
/**
|
|
67
|
+
* 获取所有事件(经过过滤)
|
|
68
|
+
*
|
|
69
|
+
* @returns 过滤后的事件数组
|
|
70
|
+
*/
|
|
71
|
+
getEvents(): CapturedEvent[];
|
|
72
|
+
/**
|
|
73
|
+
* 获取所有事件(不经过过滤)
|
|
74
|
+
*
|
|
75
|
+
* @returns 全部事件数组
|
|
76
|
+
*/
|
|
77
|
+
getAllEvents(): CapturedEvent[];
|
|
78
|
+
/**
|
|
79
|
+
* 清除所有事件
|
|
80
|
+
*/
|
|
81
|
+
clear(): void;
|
|
82
|
+
/**
|
|
83
|
+
* 设置过滤模式
|
|
84
|
+
*
|
|
85
|
+
* @param pattern - 过滤字符串
|
|
86
|
+
*/
|
|
87
|
+
setFilter(pattern: string): void;
|
|
88
|
+
/**
|
|
89
|
+
* 获取当前过滤模式
|
|
90
|
+
*/
|
|
91
|
+
getFilter(): string;
|
|
92
|
+
/**
|
|
93
|
+
* 暂停事件捕获
|
|
94
|
+
*/
|
|
95
|
+
pause(): void;
|
|
96
|
+
/**
|
|
97
|
+
* 恢复事件捕获
|
|
98
|
+
*/
|
|
99
|
+
resume(): void;
|
|
100
|
+
/**
|
|
101
|
+
* 是否暂停中
|
|
102
|
+
*/
|
|
103
|
+
isPaused(): boolean;
|
|
104
|
+
/**
|
|
105
|
+
* 导出事件为 JSON 字符串
|
|
106
|
+
*
|
|
107
|
+
* @returns JSON 字符串
|
|
108
|
+
*/
|
|
109
|
+
exportJSON(): string;
|
|
110
|
+
/**
|
|
111
|
+
* 获取缓冲区中的事件总数
|
|
112
|
+
*/
|
|
113
|
+
getCount(): number;
|
|
114
|
+
/**
|
|
115
|
+
* 获取最大缓冲区大小
|
|
116
|
+
*/
|
|
117
|
+
getMaxBuffer(): number;
|
|
118
|
+
/**
|
|
119
|
+
* 渲染面板 DOM 元素
|
|
120
|
+
*
|
|
121
|
+
* @returns 面板 DOM 元素
|
|
122
|
+
*/
|
|
123
|
+
render(): HTMLElement;
|
|
124
|
+
/**
|
|
125
|
+
* 销毁面板
|
|
126
|
+
*/
|
|
127
|
+
destroy(): void;
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=event-panel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-panel.d.ts","sourceRoot":"","sources":["../../src/event-panel.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,YAAY;AACZ,MAAM,WAAW,aAAa;IAC5B,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,OAAO,EAAE,GAAG,CAAC;IACb,WAAW;IACX,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,aAAa;AACb,MAAM,WAAW,gBAAgB;IAC/B,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD;;;;GAIG;AACH,qBAAa,UAAU;IACrB,YAAY;IACZ,OAAO,CAAC,MAAM,CAAuB;IACrC,cAAc;IACd,OAAO,CAAC,SAAS,CAAS;IAC1B,aAAa;IACb,OAAO,CAAC,UAAU,CAAU;IAC5B,WAAW;IACX,OAAO,CAAC,KAAK,CAAS;IACtB,WAAW;IACX,OAAO,CAAC,OAAO,CAAkB;IACjC,WAAW;IACX,OAAO,CAAC,aAAa,CAAc;IACnC,kBAAkB;IAClB,OAAO,CAAC,OAAO,CAAa;IAC5B,gBAAgB;IAChB,OAAO,CAAC,UAAU,CAAa;IAC/B,cAAc;IACd,OAAO,CAAC,UAAU,CAAkB;IACpC,cAAc;IACd,OAAO,CAAC,OAAO,CAA4B;gBAE/B,MAAM,CAAC,EAAE,gBAAgB;IAUrC;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI;IAuBxE;;;;OAIG;IACH,SAAS,IAAI,aAAa,EAAE;IAiB5B;;;;OAIG;IACH,YAAY,IAAI,aAAa,EAAE;IAM/B;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIhC;;OAEG;IACH,SAAS,IAAI,MAAM;IAInB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,MAAM,IAAI,IAAI;IAId;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;;;OAIG;IACH,UAAU,IAAI,MAAM;IAKpB;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,YAAY,IAAI,MAAM;IAQtB;;;;OAIG;IACH,MAAM,IAAI,WAAW;IAkIrB;;OAEG;IACH,OAAO,IAAI,IAAI;CAOhB"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lyt.js DevTools — 事件追踪器
|
|
3
|
+
*
|
|
4
|
+
* 拦截和记录所有组件事件,提供事件列表实时显示、过滤和回放功能。
|
|
5
|
+
*
|
|
6
|
+
* 核心功能:
|
|
7
|
+
* - EventTracker 类
|
|
8
|
+
* - 拦截和记录所有组件事件(事件名称、触发时间、事件参数、来源组件)
|
|
9
|
+
* - 事件列表实时显示
|
|
10
|
+
* - 事件过滤(按名称/组件)
|
|
11
|
+
* - 事件回放功能(点击事件条目显示详情)
|
|
12
|
+
*
|
|
13
|
+
* 纯原生零依赖实现。
|
|
14
|
+
*/
|
|
15
|
+
import type { DevToolsPanel } from './panel';
|
|
16
|
+
/**
|
|
17
|
+
* 事件追踪器
|
|
18
|
+
*
|
|
19
|
+
* 负责显示和过滤组件事件记录,支持事件详情查看。
|
|
20
|
+
*/
|
|
21
|
+
export declare class EventTracker {
|
|
22
|
+
/** 面板引用 */
|
|
23
|
+
private panel;
|
|
24
|
+
/** 当前内容容器 */
|
|
25
|
+
private container;
|
|
26
|
+
/** 事件名称过滤关键词 */
|
|
27
|
+
private nameFilter;
|
|
28
|
+
/** 组件名称过滤关键词 */
|
|
29
|
+
private componentFilter;
|
|
30
|
+
/** 是否暂停记录 */
|
|
31
|
+
private paused;
|
|
32
|
+
/** 当前选中的事件 ID(用于显示详情) */
|
|
33
|
+
private selectedEventId;
|
|
34
|
+
/** 更新定时器 */
|
|
35
|
+
private updateTimer;
|
|
36
|
+
/** 自动滚动定时器 */
|
|
37
|
+
private autoScrollTimer;
|
|
38
|
+
constructor(panel: DevToolsPanel);
|
|
39
|
+
/**
|
|
40
|
+
* 渲染事件追踪器到指定容器
|
|
41
|
+
*/
|
|
42
|
+
render(container: HTMLElement): void;
|
|
43
|
+
/**
|
|
44
|
+
* 渲染事件列表
|
|
45
|
+
*/
|
|
46
|
+
private renderEvents;
|
|
47
|
+
/**
|
|
48
|
+
* 渲染事件详情
|
|
49
|
+
*/
|
|
50
|
+
private renderEventDetail;
|
|
51
|
+
/**
|
|
52
|
+
* HTML 转义
|
|
53
|
+
*/
|
|
54
|
+
private escapeHtml;
|
|
55
|
+
/**
|
|
56
|
+
* 清空事件记录
|
|
57
|
+
*/
|
|
58
|
+
private clearEvents;
|
|
59
|
+
/**
|
|
60
|
+
* 设置暂停状态
|
|
61
|
+
*/
|
|
62
|
+
setPaused(paused: boolean): void;
|
|
63
|
+
/**
|
|
64
|
+
* 获取暂停状态
|
|
65
|
+
*/
|
|
66
|
+
isPaused(): boolean;
|
|
67
|
+
/**
|
|
68
|
+
* 全局更新事件处理
|
|
69
|
+
*/
|
|
70
|
+
private onUpdate;
|
|
71
|
+
/**
|
|
72
|
+
* 强制刷新
|
|
73
|
+
*/
|
|
74
|
+
refresh(): void;
|
|
75
|
+
/**
|
|
76
|
+
* 销毁追踪器
|
|
77
|
+
*/
|
|
78
|
+
destroy(): void;
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=event-tracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-tracker.d.ts","sourceRoot":"","sources":["../../src/event-tracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAOH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAuD7C;;;;GAIG;AACH,qBAAa,YAAY;IACvB,WAAW;IACX,OAAO,CAAC,KAAK,CAAgB;IAC7B,aAAa;IACb,OAAO,CAAC,SAAS,CAA4B;IAC7C,gBAAgB;IAChB,OAAO,CAAC,UAAU,CAAc;IAChC,gBAAgB;IAChB,OAAO,CAAC,eAAe,CAAc;IACrC,aAAa;IACb,OAAO,CAAC,MAAM,CAAkB;IAChC,yBAAyB;IACzB,OAAO,CAAC,eAAe,CAAuB;IAC9C,YAAY;IACZ,OAAO,CAAC,WAAW,CAA8C;IACjE,cAAc;IACd,OAAO,CAAC,eAAe,CAA+C;gBAE1D,KAAK,EAAE,aAAa;IAahC;;OAEG;IACH,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;IAKpC;;OAEG;IACH,OAAO,CAAC,YAAY;IA0OpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA0FzB;;OAEG;IACH,OAAO,CAAC,UAAU;IAYlB;;OAEG;IACH,OAAO,CAAC,WAAW;IAOnB;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAIhC;;OAEG;IACH,QAAQ,IAAI,OAAO;IAQnB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAQd;IAEF;;OAEG;IACH,OAAO,IAAI,IAAI;IAQf;;OAEG;IACH,OAAO,IAAI,IAAI;CAYhB"}
|