@paulirish/trace_engine 0.0.37 → 0.0.39
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/.tmp/tsbuildinfo/tsconfig.tsbuildinfo +1 -1
- package/core/platform/NumberUtilities.d.ts +0 -1
- package/core/platform/NumberUtilities.js +0 -17
- package/core/platform/NumberUtilities.js.map +1 -1
- package/core/platform/PromiseUtilities.d.ts +10 -0
- package/core/platform/PromiseUtilities.js +18 -0
- package/core/platform/PromiseUtilities.js.map +1 -0
- package/core/platform/SetUtilities.d.ts +2 -0
- package/core/platform/SetUtilities.js +23 -0
- package/core/platform/SetUtilities.js.map +1 -0
- package/generated/protocol.d.ts +36 -8
- package/locales/af.json +62 -0
- package/locales/am.json +62 -0
- package/locales/ar.json +62 -0
- package/locales/as.json +62 -0
- package/locales/az.json +62 -0
- package/locales/be.json +62 -0
- package/locales/bg.json +62 -0
- package/locales/bn.json +62 -0
- package/locales/bs.json +62 -0
- package/locales/ca.json +62 -0
- package/locales/cs.json +62 -0
- package/locales/cy.json +62 -0
- package/locales/da.json +62 -0
- package/locales/de.json +62 -0
- package/locales/el.json +62 -0
- package/locales/en-GB.json +62 -0
- package/locales/en-US.json +68 -0
- package/locales/en-XL.json +68 -0
- package/locales/es-419.json +62 -0
- package/locales/es.json +62 -0
- package/locales/et.json +62 -0
- package/locales/eu.json +62 -0
- package/locales/fa.json +62 -0
- package/locales/fi.json +62 -0
- package/locales/fil.json +62 -0
- package/locales/fr-CA.json +62 -0
- package/locales/fr.json +62 -0
- package/locales/gl.json +62 -0
- package/locales/gu.json +62 -0
- package/locales/he.json +62 -0
- package/locales/hi.json +62 -0
- package/locales/hr.json +62 -0
- package/locales/hu.json +62 -0
- package/locales/hy.json +62 -0
- package/locales/id.json +62 -0
- package/locales/is.json +62 -0
- package/locales/it.json +62 -0
- package/locales/ja.json +62 -0
- package/locales/ka.json +62 -0
- package/locales/kk.json +62 -0
- package/locales/km.json +62 -0
- package/locales/kn.json +62 -0
- package/locales/ko.json +62 -0
- package/locales/ky.json +62 -0
- package/locales/lo.json +62 -0
- package/locales/lt.json +62 -0
- package/locales/lv.json +62 -0
- package/locales/mk.json +62 -0
- package/locales/ml.json +62 -0
- package/locales/mn.json +62 -0
- package/locales/mr.json +62 -0
- package/locales/ms.json +62 -0
- package/locales/my.json +62 -0
- package/locales/ne.json +62 -0
- package/locales/nl.json +62 -0
- package/locales/no.json +62 -0
- package/locales/or.json +62 -0
- package/locales/pa.json +62 -0
- package/locales/pl.json +62 -0
- package/locales/pt-PT.json +62 -0
- package/locales/pt.json +62 -0
- package/locales/ro.json +62 -0
- package/locales/ru.json +62 -0
- package/locales/si.json +62 -0
- package/locales/sk.json +62 -0
- package/locales/sl.json +62 -0
- package/locales/sq.json +62 -0
- package/locales/sr-Latn.json +62 -0
- package/locales/sr.json +62 -0
- package/locales/sv.json +62 -0
- package/locales/sw.json +62 -0
- package/locales/ta.json +62 -0
- package/locales/te.json +62 -0
- package/locales/th.json +62 -0
- package/locales/tr.json +62 -0
- package/locales/uk.json +62 -0
- package/locales/ur.json +62 -0
- package/locales/uz.json +62 -0
- package/locales/vi.json +62 -0
- package/locales/zh-HK.json +62 -0
- package/locales/zh-TW.json +62 -0
- package/locales/zh.json +62 -0
- package/locales/zu.json +62 -0
- package/models/trace/EntriesFilter.d.ts +72 -0
- package/models/trace/EntriesFilter.js +296 -0
- package/models/trace/EntriesFilter.js.map +1 -0
- package/models/trace/LegacyTracingModel.js.map +1 -0
- package/models/trace/extras/Metadata.d.ts +2 -1
- package/models/trace/extras/Metadata.js +23 -4
- package/models/trace/extras/Metadata.js.map +1 -1
- package/models/trace/extras/TraceTree.d.ts +10 -7
- package/models/trace/extras/TraceTree.js +30 -15
- package/models/trace/extras/TraceTree.js.map +1 -1
- package/models/trace/extras/URLForEntry.d.ts +6 -5
- package/models/trace/extras/URLForEntry.js +6 -5
- package/models/trace/extras/URLForEntry.js.map +1 -1
- package/models/trace/handlers/EnhancedTracesHandler.d.ts +48 -0
- package/models/trace/handlers/EnhancedTracesHandler.js +165 -0
- package/models/trace/handlers/EnhancedTracesHandler.js.map +1 -0
- package/models/trace/handlers/FlowsHandler.d.ts +7 -0
- package/models/trace/handlers/FlowsHandler.js +157 -0
- package/models/trace/handlers/FlowsHandler.js.map +1 -0
- package/models/trace/handlers/ImagePaintingHandler.d.ts +1 -0
- package/models/trace/handlers/ImagePaintingHandler.js +8 -0
- package/models/trace/handlers/ImagePaintingHandler.js.map +1 -1
- package/models/trace/handlers/ModelHandlers.d.ts +1 -0
- package/models/trace/handlers/ModelHandlers.js +1 -0
- package/models/trace/handlers/ModelHandlers.js.map +1 -1
- package/models/trace/handlers/PageLoadMetricsHandler.d.ts +2 -1
- package/models/trace/handlers/PageLoadMetricsHandler.js.map +1 -1
- package/models/trace/handlers/handlers-tsconfig.json +1 -0
- package/models/trace/helpers/Timing.d.ts +1 -0
- package/models/trace/helpers/Timing.js +7 -0
- package/models/trace/helpers/Timing.js.map +1 -1
- package/models/trace/insights/CLSCulprits.d.ts +1 -1
- package/models/trace/insights/CLSCulprits.js +32 -3
- package/models/trace/insights/CLSCulprits.js.map +1 -1
- package/models/trace/insights/CumulativeLayoutShift.d.ts +13 -36
- package/models/trace/insights/CumulativeLayoutShift.js +73 -199
- package/models/trace/insights/CumulativeLayoutShift.js.map +1 -1
- package/models/trace/insights/DocumentLatency.d.ts +1 -1
- package/models/trace/insights/DocumentLatency.js +31 -3
- package/models/trace/insights/DocumentLatency.js.map +1 -1
- package/models/trace/insights/FontDisplay.d.ts +1 -1
- package/models/trace/insights/FontDisplay.js +23 -2
- package/models/trace/insights/FontDisplay.js.map +1 -1
- package/models/trace/insights/ImageDelivery.d.ts +23 -0
- package/models/trace/insights/ImageDelivery.js +130 -0
- package/models/trace/insights/ImageDelivery.js.map +1 -0
- package/models/trace/insights/InsightRunners.d.ts +0 -3
- package/models/trace/insights/InsightRunners.js +0 -3
- package/models/trace/insights/InsightRunners.js.map +1 -1
- package/models/trace/insights/InteractionToNextPaint.d.ts +1 -1
- package/models/trace/insights/InteractionToNextPaint.js +26 -3
- package/models/trace/insights/InteractionToNextPaint.js.map +1 -1
- package/models/trace/insights/LCPDiscovery.js +36 -9
- package/models/trace/insights/LCPDiscovery.js.map +1 -1
- package/models/trace/insights/LCPPhases.js +40 -8
- package/models/trace/insights/LCPPhases.js.map +1 -1
- package/models/trace/insights/LargestContentfulPaint.d.ts +7 -20
- package/models/trace/insights/LargestContentfulPaint.js +37 -57
- package/models/trace/insights/LargestContentfulPaint.js.map +1 -1
- package/models/trace/insights/Models.d.ts +1 -0
- package/models/trace/insights/Models.js +1 -0
- package/models/trace/insights/Models.js.map +1 -1
- package/models/trace/insights/RenderBlocking.js +31 -7
- package/models/trace/insights/RenderBlocking.js.map +1 -1
- package/models/trace/insights/SlowCSSSelector.d.ts +1 -1
- package/models/trace/insights/SlowCSSSelector.js +27 -4
- package/models/trace/insights/SlowCSSSelector.js.map +1 -1
- package/models/trace/insights/ThirdParties.d.ts +1 -1
- package/models/trace/insights/ThirdParties.js +25 -2
- package/models/trace/insights/ThirdParties.js.map +1 -1
- package/models/trace/insights/Viewport.js +27 -7
- package/models/trace/insights/Viewport.js.map +1 -1
- package/models/trace/insights/insights-tsconfig.json +1 -0
- package/models/trace/insights/types.d.ts +12 -0
- package/models/trace/insights/types.js +7 -0
- package/models/trace/insights/types.js.map +1 -1
- package/models/trace/lantern/BaseNode.d.ts +91 -0
- package/models/trace/lantern/BaseNode.js +268 -0
- package/models/trace/lantern/BaseNode.js.map +1 -0
- package/models/trace/lantern/CPUNode.d.ts +24 -0
- package/models/trace/lantern/CPUNode.js +64 -0
- package/models/trace/lantern/CPUNode.js.map +1 -0
- package/models/trace/lantern/LanternError.d.ts +3 -0
- package/models/trace/lantern/LanternError.js +7 -0
- package/models/trace/lantern/LanternError.js.map +1 -0
- package/models/trace/lantern/MetricsModule.d.ts +11 -0
- package/models/trace/lantern/MetricsModule.js +14 -0
- package/models/trace/lantern/MetricsModule.js.map +1 -0
- package/models/trace/lantern/NetworkNode.d.ts +22 -0
- package/models/trace/lantern/NetworkNode.js +83 -0
- package/models/trace/lantern/NetworkNode.js.map +1 -0
- package/models/trace/lantern/PageDependencyGraph.d.ts +43 -0
- package/models/trace/lantern/PageDependencyGraph.js +509 -0
- package/models/trace/lantern/PageDependencyGraph.js.map +1 -0
- package/models/trace/lantern/SimulationModule.d.ts +17 -0
- package/models/trace/lantern/SimulationModule.js +13 -0
- package/models/trace/lantern/SimulationModule.js.map +1 -0
- package/models/trace/lantern/simulation/NetworkAnalyzer.d.ts +112 -0
- package/models/trace/lantern/simulation/NetworkAnalyzer.js +486 -0
- package/models/trace/lantern/simulation/NetworkAnalyzer.js.map +1 -0
- package/models/trace/types/File.d.ts +5 -0
- package/models/trace/types/File.js +3 -0
- package/models/trace/types/File.js.map +1 -1
- package/models/trace/types/TraceEvents.d.ts +5 -0
- package/models/trace/types/TraceEvents.js +12 -2
- package/models/trace/types/TraceEvents.js.map +1 -1
- package/models/trace/types/types-tsconfig.json +6 -0
- package/package.json +1 -1
- package/test/test-trace-engine.mjs +10 -4
- package/.tmp/tsbuildinfo/models/trace/LanternComputationData.d.ts +0 -46
- package/.tmp/tsbuildinfo/models/trace/LanternComputationData.d.ts.map +0 -1
- package/.tmp/tsbuildinfo/models/trace/LegacyTracingModel.d.ts +0 -2
- package/.tmp/tsbuildinfo/models/trace/LegacyTracingModel.d.ts.map +0 -1
- package/.tmp/tsbuildinfo/models/trace/ModelImpl.d.ts +0 -72
- package/.tmp/tsbuildinfo/models/trace/ModelImpl.d.ts.map +0 -1
- package/.tmp/tsbuildinfo/models/trace/Processor.d.ts +0 -25
- package/.tmp/tsbuildinfo/models/trace/Processor.d.ts.map +0 -1
- package/.tmp/tsbuildinfo/models/trace/TracingManager.d.ts +0 -2
- package/.tmp/tsbuildinfo/models/trace/TracingManager.d.ts.map +0 -1
- package/.tmp/tsbuildinfo/models/trace/trace.d.ts +0 -13
- package/.tmp/tsbuildinfo/models/trace/trace.d.ts.map +0 -1
- package/models/trace/insights/ThirdPartyWeb.d.ts +0 -13
- package/models/trace/insights/ThirdPartyWeb.js +0 -42
- package/models/trace/insights/ThirdPartyWeb.js.map +0 -1
package/locales/vi.json
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"models/trace/insights/CLSCulprits.ts | description": {
|
|
3
|
+
"message": "B\u1ed1 c\u1ee5c thay \u0111\u1ed5i khi ph\u1ea7n t\u1eed di chuy\u1ec3n m\u00e0 kh\u00f4ng c\u00f3 s\u1ef1 t\u01b0\u01a1ng t\u00e1c c\u1ee7a ng\u01b0\u1eddi d\u00f9ng. [H\u00e3y t\u00ecm hi\u1ec3u nguy\u00ean nh\u00e2n b\u1ed1 c\u1ee5c thay \u0111\u1ed5i](https://web.dev/articles/optimize-cls), ch\u1eb3ng h\u1ea1n nh\u01b0 ph\u1ea7n t\u1eed \u0111\u01b0\u1ee3c th\u00eam, b\u1ecb xo\u00e1 ho\u1eb7c ph\u00f4ng ch\u1eef c\u1ee7a ph\u1ea7n t\u1eed thay \u0111\u1ed5i khi trang t\u1ea3i."
|
|
4
|
+
},
|
|
5
|
+
"models/trace/insights/CLSCulprits.ts | title": {
|
|
6
|
+
"message": "Nguy\u00ean nh\u00e2n l\u00e0m thay \u0111\u1ed5i b\u1ed1 c\u1ee5c"
|
|
7
|
+
},
|
|
8
|
+
"models/trace/insights/DocumentLatency.ts | description": {
|
|
9
|
+
"message": "Y\u00eau c\u1ea7u m\u1ea1ng \u0111\u1ea7u ti\u00ean l\u00e0 quan tr\u1ecdng nh\u1ea5t. Gi\u1ea3m \u0111\u1ed9 tr\u1ec5 b\u1eb1ng c\u00e1ch tr\u00e1nh d\u00f9ng \u0111\u01b0\u1eddng li\u00ean k\u1ebft chuy\u1ec3n h\u01b0\u1edbng, \u0111\u1ea3m b\u1ea3o m\u00e1y ch\u1ee7 ph\u1ea3n h\u1ed3i nhanh v\u00e0 b\u1eadt t\u00ednh n\u0103ng n\u00e9n v\u0103n b\u1ea3n."
|
|
10
|
+
},
|
|
11
|
+
"models/trace/insights/DocumentLatency.ts | title": {
|
|
12
|
+
"message": "\u0110\u1ed9 tr\u1ec5 khi y\u00eau c\u1ea7u t\u00e0i li\u1ec7u"
|
|
13
|
+
},
|
|
14
|
+
"models/trace/insights/FontDisplay.ts | description": {
|
|
15
|
+
"message": "H\u00e3y c\u00e2n nh\u1eafc \u0111\u1eb7t [font-display](https://developer.chrome.com/blog/font-display) th\u00e0nh swap ho\u1eb7c optional \u0111\u1ec3 \u0111\u1ea3m b\u1ea3o v\u0103n b\u1ea3n hi\u1ec3n th\u1ecb nh\u1ea5t qu\u00e1n. C\u00f3 th\u1ec3 t\u1ed1i \u01b0u ho\u00e1 swap h\u01a1n n\u1eefa \u0111\u1ec3 gi\u1ea3m thi\u1ec3u thay \u0111\u1ed5i b\u1ed1 c\u1ee5c b\u1eb1ng thu\u1ed9c t\u00ednh [ghi \u0111\u00e8 ch\u1ec9 s\u1ed1 ph\u00f4ng ch\u1eef](https://developer.chrome.com/blog/font-fallbacks)."
|
|
16
|
+
},
|
|
17
|
+
"models/trace/insights/FontDisplay.ts | title": {
|
|
18
|
+
"message": "Hi\u1ec3n th\u1ecb ph\u00f4ng ch\u1eef"
|
|
19
|
+
},
|
|
20
|
+
"models/trace/insights/InteractionToNextPaint.ts | description": {
|
|
21
|
+
"message": "B\u1eaft \u0111\u1ea7u ki\u1ec3m tra giai \u0111o\u1ea1n d\u00e0i nh\u1ea5t. [C\u00f3 th\u1ec3 gi\u1ea3m thi\u1ec3u s\u1ef1 ch\u1eadm tr\u1ec5](https://web.dev/articles/optimize-inp#optimize_interactions). \u0110\u1ec3 gi\u1ea3m th\u1eddi gian x\u1eed l\u00fd, [h\u00e3y t\u1ed1i \u01b0u ho\u00e1 hi\u1ec7u su\u1ea5t c\u1ee7a lu\u1ed3ng ch\u00ednh](https://web.dev/articles/optimize-long-tasks), th\u01b0\u1eddng l\u00e0 JS."
|
|
22
|
+
},
|
|
23
|
+
"models/trace/insights/InteractionToNextPaint.ts | title": {
|
|
24
|
+
"message": "INP theo pha"
|
|
25
|
+
},
|
|
26
|
+
"models/trace/insights/LCPDiscovery.ts | description": {
|
|
27
|
+
"message": "T\u1ed1i \u01b0u ho\u00e1 LCP (N\u1ed9i dung l\u1edbn nh\u1ea5t hi\u1ec3n th\u1ecb) b\u1eb1ng c\u00e1ch gi\u00fap tr\u00ecnh duy\u1ec7t [c\u00f3 th\u1ec3 t\u00ecm th\u1ea5y](https://web.dev/articles/optimize-lcp#1_eliminate_resource_load_delay) h\u00ecnh \u1ea3nh LCP d\u1ef1a v\u00e0o HTML ngay l\u1eadp t\u1ee9c v\u00e0 [tr\u00e1nh t\u1ea3i t\u1eebng ph\u1ea7n](https://web.dev/articles/lcp-lazy-loading)"
|
|
28
|
+
},
|
|
29
|
+
"models/trace/insights/LCPDiscovery.ts | title": {
|
|
30
|
+
"message": "Ph\u00e1t hi\u1ec7n y\u00eau c\u1ea7u LCP"
|
|
31
|
+
},
|
|
32
|
+
"models/trace/insights/LCPPhases.ts | description": {
|
|
33
|
+
"message": "M\u1ed7i [giai \u0111o\u1ea1n c\u00f3 m\u1ed9t chi\u1ebfn l\u01b0\u1ee3c c\u1ea3i thi\u1ec7n c\u1ee5 th\u1ec3](https://web.dev/articles/optimize-lcp#lcp-breakdown). T\u1ed1t nh\u1ea5t l\u00e0 th\u1eddi gian hi\u1ec3n th\u1ecb LCP (N\u1ed9i dung l\u1edbn nh\u1ea5t hi\u1ec3n th\u1ecb) n\u00ean \u0111\u01b0\u1ee3c d\u00f9ng \u0111\u1ec3 t\u1ea3i c\u00e1c t\u00e0i nguy\u00ean thay v\u00ec b\u1ecb ch\u1eadm tr\u1ec5."
|
|
34
|
+
},
|
|
35
|
+
"models/trace/insights/LCPPhases.ts | title": {
|
|
36
|
+
"message": "LCP theo pha"
|
|
37
|
+
},
|
|
38
|
+
"models/trace/insights/RenderBlocking.ts | description": {
|
|
39
|
+
"message": "C\u00e1c y\u00eau c\u1ea7u \u0111ang ch\u1eb7n qu\u00e1 tr\u00ecnh k\u1ebft xu\u1ea5t ban \u0111\u1ea7u c\u1ee7a trang, \u0111i\u1ec1u n\u00e0y c\u00f3 th\u1ec3 l\u00e0m tr\u1ec5 LCP. [Vi\u1ec7c ho\u00e3n ho\u1eb7c d\u00f9ng c\u00f9ng d\u00f2ng](https://web.dev/learn/performance/understanding-the-critical-path#render-blocking_resources/) c\u00f3 th\u1ec3 di chuy\u1ec3n c\u00e1c y\u00eau c\u1ea7u m\u1ea1ng n\u00e0y ra kh\u1ecfi \u0111\u01b0\u1eddng d\u1eabn quan tr\u1ecdng."
|
|
40
|
+
},
|
|
41
|
+
"models/trace/insights/RenderBlocking.ts | title": {
|
|
42
|
+
"message": "Y\u00eau c\u1ea7u ch\u1eb7n qu\u00e1 tr\u00ecnh hi\u1ec3n th\u1ecb"
|
|
43
|
+
},
|
|
44
|
+
"models/trace/insights/SlowCSSSelector.ts | description": {
|
|
45
|
+
"message": "N\u1ebfu th\u1ea5y chi ph\u00ed c\u1ee7a T\u00ednh to\u00e1n l\u1ea1i ki\u1ec3u v\u1eabn cao, b\u1ea1n c\u00f3 th\u1ec3 t\u1ed1i \u01b0u ho\u00e1 b\u1ed9 ch\u1ecdn \u0111\u1ec3 gi\u1ea3m chi ph\u00ed. [T\u1ed1i \u01b0u ho\u00e1 b\u1ed9 ch\u1ecdn](https://developer.chrome.com/docs/devtools/performance/selector-stats) c\u00f3 t\u1ef7 l\u1ec7 ph\u1ea7n tr\u0103m \u0111\u01b0\u1eddng d\u1eabn ch\u1eadm v\u00e0 th\u1eddi gian tr\u00f4i qua \u0111\u1ec1u cao. B\u1ed9 ch\u1ecdn \u0111\u01a1n gi\u1ea3n h\u01a1n, s\u1ed1 l\u01b0\u1ee3ng b\u1ed9 ch\u1ecdn \u00edt h\u01a1n, DOM nh\u1ecf h\u01a1n v\u00e0 DOM n\u00f4ng h\u01a1n s\u1ebd gi\u00fap gi\u1ea3m chi ph\u00ed kh\u1edbp."
|
|
46
|
+
},
|
|
47
|
+
"models/trace/insights/SlowCSSSelector.ts | title": {
|
|
48
|
+
"message": "Hi\u1ec7u su\u1ea5t c\u1ee7a B\u1ed9 ch\u1ecdn CSS"
|
|
49
|
+
},
|
|
50
|
+
"models/trace/insights/ThirdParties.ts | description": {
|
|
51
|
+
"message": "M\u00e3 c\u1ee7a b\u00ean th\u1ee9 ba c\u00f3 th\u1ec3 t\u00e1c \u0111\u1ed9ng \u0111\u00e1ng k\u1ec3 \u0111\u1ebfn hi\u1ec7u su\u1ea5t t\u1ea3i. [Gi\u1ea3m v\u00e0 tr\u00ec ho\u00e3n vi\u1ec7c t\u1ea3i m\u00e3 c\u1ee7a b\u00ean th\u1ee9 ba](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/) \u0111\u1ec3 \u01b0u ti\u00ean n\u1ed9i dung tr\u00ean trang c\u1ee7a b\u1ea1n."
|
|
52
|
+
},
|
|
53
|
+
"models/trace/insights/ThirdParties.ts | title": {
|
|
54
|
+
"message": "B\u00ean th\u1ee9 ba"
|
|
55
|
+
},
|
|
56
|
+
"models/trace/insights/Viewport.ts | description": {
|
|
57
|
+
"message": "Khung nh\u00ecn c\u1ee7a trang n\u00e0y ch\u01b0a \u0111\u01b0\u1ee3c t\u1ed1i \u01b0u ho\u00e1 cho thi\u1ebft b\u1ecb di \u0111\u1ed9ng n\u00ean c\u00e1c t\u01b0\u01a1ng t\u00e1c nh\u1ea5n c\u00f3 th\u1ec3 [b\u1ecb ch\u1eadm t\u1edbi 300\u00a0mili gi\u00e2y](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/)."
|
|
58
|
+
},
|
|
59
|
+
"models/trace/insights/Viewport.ts | title": {
|
|
60
|
+
"message": "Khung nh\u00ecn ch\u01b0a \u0111\u01b0\u1ee3c t\u1ed1i \u01b0u ho\u00e1 cho thi\u1ebft b\u1ecb di \u0111\u1ed9ng"
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"models/trace/insights/CLSCulprits.ts | description": {
|
|
3
|
+
"message": "\u7576\u5143\u7d20\u5728\u7121\u4f7f\u7528\u8005\u4e92\u52d5\u4e0b\u79fb\u52d5\uff0c\u5c31\u6703\u51fa\u73fe\u7248\u9762\u914d\u7f6e\u8f49\u79fb\u3002\u8acb[\u8abf\u67e5\u7248\u9762\u914d\u7f6e\u8f49\u79fb\u7684\u539f\u56e0](https://web.dev/articles/optimize-cls)\uff0c\u4f8b\u5982\u96a8\u9801\u9762\u8f09\u5165\u6709\u5143\u7d20\u52a0\u5165\u3001\u79fb\u9664\u6216\u5b57\u578b\u8b8a\u66f4\u3002"
|
|
4
|
+
},
|
|
5
|
+
"models/trace/insights/CLSCulprits.ts | title": {
|
|
6
|
+
"message": "\u7248\u9762\u914d\u7f6e\u8f49\u63db\u8d77\u56e0"
|
|
7
|
+
},
|
|
8
|
+
"models/trace/insights/DocumentLatency.ts | description": {
|
|
9
|
+
"message": "\u9996\u500b\u7db2\u7d61\u8981\u6c42\u81f3\u95dc\u91cd\u8981\u3002\u907f\u514d\u91cd\u65b0\u5c0e\u5411\u3001\u78ba\u4fdd\u4f3a\u670d\u5668\u5feb\u901f\u56de\u61c9\uff0c\u4e26\u555f\u7528\u6587\u5b57\u58d3\u7e2e\u529f\u80fd\uff0c\u90fd\u6709\u52a9\u7e2e\u77ed\u5ef6\u9072\u6642\u9593\u3002"
|
|
10
|
+
},
|
|
11
|
+
"models/trace/insights/DocumentLatency.ts | title": {
|
|
12
|
+
"message": "\u6587\u4ef6\u8981\u6c42\u5ef6\u9072\u6642\u9593"
|
|
13
|
+
},
|
|
14
|
+
"models/trace/insights/FontDisplay.ts | description": {
|
|
15
|
+
"message": "\u5efa\u8b70\u5c07 [font-display](https://developer.chrome.com/blog/font-display) \u8a2d\u5b9a\u70ba swap \u6216 optional\uff0c\u78ba\u4fdd\u6587\u5b57\u80fd\u6301\u7e8c\u986f\u793a\u3002\u5982\u8981\u9032\u4e00\u6b65\u512a\u5316 swap\uff0c\u4f60\u53ef[\u8986\u5beb\u5b57\u578b\u6578\u64da](https://developer.chrome.com/blog/font-fallbacks)\u4f86\u7de9\u89e3\u7248\u9762\u914d\u7f6e\u8f49\u63db\u554f\u984c\u3002"
|
|
16
|
+
},
|
|
17
|
+
"models/trace/insights/FontDisplay.ts | title": {
|
|
18
|
+
"message": "\u5b57\u578b\u986f\u793a"
|
|
19
|
+
},
|
|
20
|
+
"models/trace/insights/InteractionToNextPaint.ts | description": {
|
|
21
|
+
"message": "\u7531\u6700\u9577\u7684\u968e\u6bb5\u958b\u59cb\u8abf\u67e5\uff0c[\u76e1\u91cf\u7e2e\u77ed\u5ef6\u9072\u6642\u9593](https://web.dev/articles/optimize-inp#optimize_interactions)\u3002\u8981\u6e1b\u5c11\u8655\u7406\u6642\u9577\uff0c\u5efa\u8b70[\u512a\u5316\u4e3b\u8981\u57f7\u884c\u7dd2\u6210\u672c](https://web.dev/articles/optimize-long-tasks) (\u901a\u5e38\u70ba JavaScript)\u3002"
|
|
22
|
+
},
|
|
23
|
+
"models/trace/insights/InteractionToNextPaint.ts | title": {
|
|
24
|
+
"message": "\u6309\u968e\u6bb5\u5283\u5206 INP"
|
|
25
|
+
},
|
|
26
|
+
"models/trace/insights/LCPDiscovery.ts | description": {
|
|
27
|
+
"message": "\u5982\u8981\u63d0\u5347 LCP\uff0c\u8acb\u8b93 LCP \u5716\u7247\u7acb\u5373[\u986f\u793a](https://web.dev/articles/optimize-lcp#1_eliminate_resource_load_delay)\u5728 HTML \u4e2d\uff0c[\u907f\u514d\u5ef6\u9072\u8f09\u5165](https://web.dev/articles/lcp-lazy-loading)"
|
|
28
|
+
},
|
|
29
|
+
"models/trace/insights/LCPDiscovery.ts | title": {
|
|
30
|
+
"message": "LCP \u8981\u6c42\u63a2\u7d22"
|
|
31
|
+
},
|
|
32
|
+
"models/trace/insights/LCPPhases.ts | description": {
|
|
33
|
+
"message": "\u6bcf\u500b[\u968e\u6bb5\u90fd\u6709\u7279\u5b9a\u7684\u6539\u5584\u7b56\u7565](https://web.dev/articles/optimize-lcp#lcp-breakdown)\u3002\u7406\u60f3\u72c0\u614b\u4e0b\uff0c\u5927\u90e8\u5206\u7684 LCP \u6642\u9593\u61c9\u8a72\u7528\u65bc\u8f09\u5165\u8cc7\u6e90\uff0c\u800c\u975e\u5ef6\u9072\u3002"
|
|
34
|
+
},
|
|
35
|
+
"models/trace/insights/LCPPhases.ts | title": {
|
|
36
|
+
"message": "\u6309\u968e\u6bb5\u5283\u5206 LCP"
|
|
37
|
+
},
|
|
38
|
+
"models/trace/insights/RenderBlocking.ts | description": {
|
|
39
|
+
"message": "\u8981\u6c42\u6703\u5c01\u9396\u9801\u9762\u7684\u521d\u59cb\u8f38\u51fa\uff0c\u53ef\u80fd\u6703\u5c0e\u81f4 LCP \u5ef6\u9072\u3002[\u5ef6\u9072\u6216\u5167\u5d4c](https://web.dev/learn/performance/understanding-the-critical-path#render-blocking_resources/)\u53ef\u4ee5\u5c07\u9019\u4e9b\u7db2\u7d61\u8981\u6c42\u79fb\u96e2\u95dc\u9375\u8def\u5f91\u3002"
|
|
40
|
+
},
|
|
41
|
+
"models/trace/insights/RenderBlocking.ts | title": {
|
|
42
|
+
"message": "\u8f38\u51fa\u5c01\u9396\u8981\u6c42"
|
|
43
|
+
},
|
|
44
|
+
"models/trace/insights/SlowCSSSelector.ts | description": {
|
|
45
|
+
"message": "\u5982\u679c\u300c\u91cd\u65b0\u8a08\u7b97\u6a23\u5f0f\u300d\u7684\u6210\u672c\u4ecd\u7136\u504f\u9ad8\uff0c\u53ef\u4ee5\u4f7f\u7528\u9078\u53d6\u5668\u512a\u5316\u529f\u80fd\u964d\u4f4e\u6210\u672c\u3002\u91dd\u5c0d\u7d93\u904e\u6642\u9593\u504f\u9577\u53ca\u6162\u901f\u8def\u5f91\u767e\u5206\u6bd4\u504f\u9ad8\u7684[\u9078\u53d6\u5668\u4f5c\u51fa\u512a\u5316](https://developer.chrome.com/docs/devtools/performance/selector-stats)\uff0c\u4f8b\u5982\u7c21\u5316\u9078\u53d6\u5668\u548c\u6e1b\u5c11\u6578\u91cf\uff0c\u4ee5\u53ca\u7e2e\u6e1b DOM \u5927\u5c0f\u548c\u7d50\u69cb\uff0c\u90fd\u6709\u52a9\u964d\u4f4e\u914d\u5c0d\u6210\u672c\u3002"
|
|
46
|
+
},
|
|
47
|
+
"models/trace/insights/SlowCSSSelector.ts | title": {
|
|
48
|
+
"message": "CSS \u9078\u53d6\u5668\u6210\u672c"
|
|
49
|
+
},
|
|
50
|
+
"models/trace/insights/ThirdParties.ts | description": {
|
|
51
|
+
"message": "\u7b2c\u4e09\u65b9\u7a0b\u5f0f\u78bc\u53ef\u80fd\u6703\u56b4\u91cd\u5f71\u97ff\u8f09\u5165\u6548\u80fd\u3002\u5efa\u8b70[\u6e1b\u5c11\u7b2c\u4e09\u65b9\u7a0b\u5f0f\u78bc\u548c\u5ef6\u9072\u8f09\u5165](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/)\uff0c\u512a\u5148\u8f09\u5165\u7db2\u9801\u5167\u5bb9\u3002"
|
|
52
|
+
},
|
|
53
|
+
"models/trace/insights/ThirdParties.ts | title": {
|
|
54
|
+
"message": "\u7b2c\u4e09\u65b9"
|
|
55
|
+
},
|
|
56
|
+
"models/trace/insights/Viewport.ts | description": {
|
|
57
|
+
"message": "\u9801\u9762\u7684\u6aa2\u8996\u5340\u4e26\u672a\u91dd\u5c0d\u6d41\u52d5\u88dd\u7f6e\u512a\u5316\uff0c\u56e0\u6b64\u8f15\u6309\u4e92\u52d5\u53ef\u80fd\u6703[\u5ef6\u9072\u6700\u591a 300 \u6beb\u79d2](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/)\u3002"
|
|
58
|
+
},
|
|
59
|
+
"models/trace/insights/Viewport.ts | title": {
|
|
60
|
+
"message": "\u6aa2\u8996\u5340\u4e26\u672a\u91dd\u5c0d\u6d41\u52d5\u88dd\u7f6e\u512a\u5316"
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"models/trace/insights/CLSCulprits.ts | description": {
|
|
3
|
+
"message": "\u7248\u9762\u914d\u7f6e\u4f4d\u79fb\u662f\u6307\u5143\u7d20\u5728\u4f7f\u7528\u8005\u672a\u9032\u884c\u4efb\u4f55\u4e92\u52d5\u6642\u79fb\u52d5\u3002[\u8abf\u67e5\u7248\u9762\u914d\u7f6e\u4f4d\u79fb\u7684\u539f\u56e0](https://web.dev/articles/optimize-cls)\uff0c\u4f8b\u5982\u5728\u7db2\u9801\u8f09\u5165\u671f\u9593\u65b0\u589e\u3001\u79fb\u9664\u5143\u7d20\uff0c\u6216\u8b8a\u66f4\u5b57\u578b\u3002"
|
|
4
|
+
},
|
|
5
|
+
"models/trace/insights/CLSCulprits.ts | title": {
|
|
6
|
+
"message": "\u7248\u9762\u914d\u7f6e\u4f4d\u79fb\u4e3b\u56e0"
|
|
7
|
+
},
|
|
8
|
+
"models/trace/insights/DocumentLatency.ts | description": {
|
|
9
|
+
"message": "\u7b2c\u4e00\u500b\u7db2\u8def\u8981\u6c42\u6700\u70ba\u91cd\u8981\u3002\u907f\u514d\u91cd\u65b0\u5c0e\u5411\u3001\u78ba\u4fdd\u4f3a\u670d\u5668\u5feb\u901f\u56de\u61c9\uff0c\u4e26\u555f\u7528\u6587\u5b57\u58d3\u7e2e\u529f\u80fd\uff0c\u5373\u53ef\u7e2e\u77ed\u5ef6\u9072\u6642\u9593\u3002"
|
|
10
|
+
},
|
|
11
|
+
"models/trace/insights/DocumentLatency.ts | title": {
|
|
12
|
+
"message": "\u6587\u4ef6\u8981\u6c42\u5ef6\u9072"
|
|
13
|
+
},
|
|
14
|
+
"models/trace/insights/FontDisplay.ts | description": {
|
|
15
|
+
"message": "\u5efa\u8b70\u5c07 [font-display](https://developer.chrome.com/blog/font-display) \u8a2d\u70ba swap \u6216 optional\uff0c\u78ba\u4fdd\u6587\u5b57\u59cb\u7d42\u53ef\u898b\u3002swap \u53ef\u900f\u904e[\u5b57\u578b\u6307\u6a19\u8986\u5beb](https://developer.chrome.com/blog/font-fallbacks)\uff0c\u9032\u4e00\u6b65\u6e1b\u5c11\u7248\u9762\u914d\u7f6e\u4f4d\u79fb\u3002"
|
|
16
|
+
},
|
|
17
|
+
"models/trace/insights/FontDisplay.ts | title": {
|
|
18
|
+
"message": "\u5b57\u578b\u986f\u793a"
|
|
19
|
+
},
|
|
20
|
+
"models/trace/insights/InteractionToNextPaint.ts | description": {
|
|
21
|
+
"message": "\u5f9e\u6700\u9577\u7684\u968e\u6bb5\u958b\u59cb\u8abf\u67e5\uff0c[\u53ef\u76e1\u91cf\u7e2e\u77ed\u5ef6\u9072\u6642\u9593](https://web.dev/articles/optimize-inp#optimize_interactions)\u3002\u5982\u8981\u7e2e\u77ed\u8655\u7406\u6642\u9593\uff0c\u8acb[\u76e1\u91cf\u964d\u4f4e\u4e3b\u57f7\u884c\u7dd2\u7684\u6210\u672c](https://web.dev/articles/optimize-long-tasks)\uff0c\u901a\u5e38\u662f\u91dd\u5c0d JavaScript\u3002"
|
|
22
|
+
},
|
|
23
|
+
"models/trace/insights/InteractionToNextPaint.ts | title": {
|
|
24
|
+
"message": "\u4f9d\u968e\u6bb5\u986f\u793a INP"
|
|
25
|
+
},
|
|
26
|
+
"models/trace/insights/LCPDiscovery.ts | description": {
|
|
27
|
+
"message": "\u5982\u8981\u63d0\u5347 LCP\uff0c\u8acb\u8b93 LCP \u5716\u7247\u7acb\u5373[\u986f\u793a](https://web.dev/articles/optimize-lcp#1_eliminate_resource_load_delay)\u5728 HTML \u4e2d\uff0c[\u907f\u514d\u5ef6\u9072\u8f09\u5165](https://web.dev/articles/lcp-lazy-loading)"
|
|
28
|
+
},
|
|
29
|
+
"models/trace/insights/LCPDiscovery.ts | title": {
|
|
30
|
+
"message": "LCP \u8981\u6c42\u63a2\u7d22"
|
|
31
|
+
},
|
|
32
|
+
"models/trace/insights/LCPPhases.ts | description": {
|
|
33
|
+
"message": "\u6bcf\u500b[\u968e\u6bb5\u90fd\u6709\u7279\u5b9a\u6539\u5584\u7b56\u7565](https://web.dev/articles/optimize-lcp#lcp-breakdown)\u3002\u7406\u60f3\u72c0\u614b\u4e0b\uff0c\u5927\u90e8\u5206\u7684 LCP \u6642\u9593\u61c9\u8a72\u7528\u65bc\u8f09\u5165\u8cc7\u6e90\uff0c\u800c\u975e\u5ef6\u9072\u3002"
|
|
34
|
+
},
|
|
35
|
+
"models/trace/insights/LCPPhases.ts | title": {
|
|
36
|
+
"message": "\u4f9d\u968e\u6bb5\u986f\u793a LCP"
|
|
37
|
+
},
|
|
38
|
+
"models/trace/insights/RenderBlocking.ts | description": {
|
|
39
|
+
"message": "\u8981\u6c42\u6703\u963b\u7919\u7db2\u9801\u7684\u521d\u59cb\u8f49\u8b6f\u4f5c\u696d\uff0c\u9032\u800c\u5c0e\u81f4 LCP \u5ef6\u9072\u3002\u4f60\u53ef\u4ee5\u900f\u904e[\u5ef6\u5f8c\u6216\u5167\u5d4c](https://web.dev/learn/performance/understanding-the-critical-path#render-blocking_resources/)\u7684\u65b9\u5f0f\uff0c\u5c07\u9019\u4e9b\u7db2\u8def\u8981\u6c42\u79fb\u51fa\u95dc\u9375\u8def\u5f91\u3002"
|
|
40
|
+
},
|
|
41
|
+
"models/trace/insights/RenderBlocking.ts | title": {
|
|
42
|
+
"message": "\u8f49\u8b6f\u5c01\u9396\u8981\u6c42"
|
|
43
|
+
},
|
|
44
|
+
"models/trace/insights/SlowCSSSelector.ts | description": {
|
|
45
|
+
"message": "\u5982\u679c\u300c\u91cd\u65b0\u8a08\u7b97\u6a23\u5f0f\u300d\u7684\u6210\u672c\u4ecd\u7136\u504f\u9ad8\uff0c\u53ef\u4ee5\u4f7f\u7528\u9078\u53d6\u5668\u6700\u4f73\u5316\u529f\u80fd\u964d\u4f4e\u6210\u672c\u3002\u91dd\u5c0d\u7d93\u904e\u6642\u9593\u504f\u9577\u53ca\u6162\u901f\u8def\u5f91\u767e\u5206\u6bd4\u504f\u9ad8\u7684[\u9078\u53d6\u5668\u9032\u884c\u6700\u4f73\u5316](https://developer.chrome.com/docs/devtools/performance/selector-stats)\u3002\u9078\u53d6\u5668\u8d8a\u7c21\u55ae\u3001\u6578\u91cf\u8d8a\u5c11\uff0cDOM \u7684\u898f\u6a21\u8d8a\u5c0f\u3001\u7d50\u69cb\u8d8a\u55ae\u7d14\uff0c\u8d8a\u80fd\u964d\u4f4e\u6bd4\u5c0d\u6210\u672c\u3002"
|
|
46
|
+
},
|
|
47
|
+
"models/trace/insights/SlowCSSSelector.ts | title": {
|
|
48
|
+
"message": "CSS \u9078\u53d6\u5668\u6210\u672c"
|
|
49
|
+
},
|
|
50
|
+
"models/trace/insights/ThirdParties.ts | description": {
|
|
51
|
+
"message": "\u7b2c\u4e09\u65b9\u7a0b\u5f0f\u78bc\u53ef\u80fd\u6703\u56b4\u91cd\u5f71\u97ff\u8f09\u5165\u6548\u80fd\u3002\u5efa\u8b70[\u6e1b\u5c11\u7b2c\u4e09\u65b9\u7a0b\u5f0f\u78bc\u4e26\u5ef6\u9072\u8f09\u5165](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/)\uff0c\u512a\u5148\u8f09\u5165\u7db2\u9801\u5167\u5bb9\u3002"
|
|
52
|
+
},
|
|
53
|
+
"models/trace/insights/ThirdParties.ts | title": {
|
|
54
|
+
"message": "\u7b2c\u4e09\u65b9"
|
|
55
|
+
},
|
|
56
|
+
"models/trace/insights/Viewport.ts | description": {
|
|
57
|
+
"message": "\u7db2\u9801\u7684\u53ef\u8996\u5340\u57df\u4e26\u672a\u91dd\u5c0d\u884c\u52d5\u88dd\u7f6e\u6700\u4f73\u5316\uff0c\u56e0\u6b64\u8f15\u89f8\u4e92\u52d5\u53ef\u80fd\u6703[\u5ef6\u9072\u6700\u591a 300 \u6beb\u79d2](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/)\u3002"
|
|
58
|
+
},
|
|
59
|
+
"models/trace/insights/Viewport.ts | title": {
|
|
60
|
+
"message": "\u53ef\u8996\u5340\u57df\u672a\u91dd\u5c0d\u884c\u52d5\u88dd\u7f6e\u5b8c\u6210\u6700\u4f73\u5316\u8abf\u6574"
|
|
61
|
+
}
|
|
62
|
+
}
|
package/locales/zh.json
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"models/trace/insights/CLSCulprits.ts | description": {
|
|
3
|
+
"message": "\u5f53\u5143\u7d20\u5728\u6ca1\u6709\u4efb\u4f55\u7528\u6237\u4e92\u52a8\u7684\u60c5\u51b5\u4e0b\u79fb\u52a8\u65f6\uff0c\u5c31\u4f1a\u53d1\u751f\u5e03\u5c40\u504f\u79fb\u3002[\u8c03\u67e5\u5e03\u5c40\u504f\u79fb\u7684\u539f\u56e0](https://web.dev/articles/optimize-cls)\uff0c\u4f8b\u5982\u5728\u7f51\u9875\u52a0\u8f7d\u65f6\u6dfb\u52a0\u3001\u79fb\u9664\u5143\u7d20\u6216\u5143\u7d20\u5b57\u4f53\u53d1\u751f\u4e86\u53d8\u5316\u3002"
|
|
4
|
+
},
|
|
5
|
+
"models/trace/insights/CLSCulprits.ts | title": {
|
|
6
|
+
"message": "\u5e03\u5c40\u504f\u79fb\u539f\u56e0"
|
|
7
|
+
},
|
|
8
|
+
"models/trace/insights/DocumentLatency.ts | description": {
|
|
9
|
+
"message": "\u60a8\u7684\u7b2c\u4e00\u4e2a\u7f51\u7edc\u8bf7\u6c42\u6700\u4e3a\u91cd\u8981\u3002\u60a8\u53ef\u901a\u8fc7\u907f\u514d\u91cd\u5b9a\u5411\u3001\u786e\u4fdd\u670d\u52a1\u5668\u5feb\u901f\u54cd\u5e94\u4ee5\u53ca\u542f\u7528\u6587\u672c\u538b\u7f29\uff0c\u7f29\u77ed\u5176\u5ef6\u8fdf\u65f6\u95f4\u3002"
|
|
10
|
+
},
|
|
11
|
+
"models/trace/insights/DocumentLatency.ts | title": {
|
|
12
|
+
"message": "\u6587\u6863\u8bf7\u6c42\u5ef6\u8fdf"
|
|
13
|
+
},
|
|
14
|
+
"models/trace/insights/FontDisplay.ts | description": {
|
|
15
|
+
"message": "\u5efa\u8bae\u60a8\u5c06 [font-display](https://developer.chrome.com/blog/font-display) \u8bbe\u4e3a swap \u6216 optional\uff0c\u786e\u4fdd\u6587\u672c\u59cb\u7ec8\u53ef\u89c1\u3002\u901a\u8fc7[\u66ff\u6362\u5b57\u4f53\u6307\u6807](https://developer.chrome.com/blog/font-fallbacks)\u53ef\u8fdb\u4e00\u6b65\u4f18\u5316 swap\uff0c\u7f13\u89e3\u5e03\u5c40\u504f\u79fb\u3002"
|
|
16
|
+
},
|
|
17
|
+
"models/trace/insights/FontDisplay.ts | title": {
|
|
18
|
+
"message": "\u5b57\u4f53\u663e\u793a"
|
|
19
|
+
},
|
|
20
|
+
"models/trace/insights/InteractionToNextPaint.ts | description": {
|
|
21
|
+
"message": "\u8bf7\u4ece\u6301\u7eed\u65f6\u95f4\u6700\u957f\u7684\u9636\u6bb5\u5f00\u59cb\u68c0\u67e5\u3002[\u51e0\u5904\u5ef6\u8fdf\u53ef\u964d\u4f4e\u5230\u6700\u5c0f](https://web.dev/articles/optimize-inp#optimize_interactions)\u3002\u5982\u9700\u7f29\u77ed\u5904\u7406\u65f6\u957f\uff0c\u8bf7[\u4f18\u5316\u4e3b\u7ebf\u7a0b\uff08\u901a\u5e38\u662f JS\uff09\u6210\u672c](https://web.dev/articles/optimize-long-tasks)\u3002"
|
|
22
|
+
},
|
|
23
|
+
"models/trace/insights/InteractionToNextPaint.ts | title": {
|
|
24
|
+
"message": "\u6309\u9636\u6bb5\u5212\u5206\u7684 INP"
|
|
25
|
+
},
|
|
26
|
+
"models/trace/insights/LCPDiscovery.ts | description": {
|
|
27
|
+
"message": "\u4f7f LCP \u56fe\u50cf\u80fd\u591f\u7acb\u5373\u4ece HTML \u4e2d[\u88ab\u53d1\u73b0](https://web.dev/articles/optimize-lcp#1_eliminate_resource_load_delay)\uff0c\u5e76[\u907f\u514d\u5ef6\u8fdf\u52a0\u8f7d](https://web.dev/articles/lcp-lazy-loading)\uff0c\u4ee5\u6b64\u4f18\u5316 LCP"
|
|
28
|
+
},
|
|
29
|
+
"models/trace/insights/LCPDiscovery.ts | title": {
|
|
30
|
+
"message": "\u53d1\u73b0 LCP \u8bf7\u6c42"
|
|
31
|
+
},
|
|
32
|
+
"models/trace/insights/LCPPhases.ts | description": {
|
|
33
|
+
"message": "\u6bcf\u4e2a[\u9636\u6bb5\u90fd\u6709\u7279\u5b9a\u7684\u6539\u8fdb\u7b56\u7565](https://web.dev/articles/optimize-lcp#lcp-breakdown)\u3002\u7406\u60f3\u60c5\u51b5\u4e0b\uff0c\u5927\u90e8\u5206 LCP \u65f6\u95f4\u5e94\u8be5\u82b1\u5728\u52a0\u8f7d\u8d44\u6e90\u4e0a\uff0c\u800c\u4e0d\u662f\u6d6a\u8d39\u5728\u5ef6\u8fdf\u4e0a\u3002"
|
|
34
|
+
},
|
|
35
|
+
"models/trace/insights/LCPPhases.ts | title": {
|
|
36
|
+
"message": "\u6309\u9636\u6bb5\u5212\u5206\u7684 LCP"
|
|
37
|
+
},
|
|
38
|
+
"models/trace/insights/RenderBlocking.ts | description": {
|
|
39
|
+
"message": "\u8bf7\u6c42\u6b63\u5728\u5c4f\u853d\u7f51\u9875\u7684\u521d\u59cb\u6e32\u67d3\uff0c\u8fd9\u53ef\u80fd\u4f1a\u5ef6\u8fdf LCP\u3002[\u5ef6\u8fdf\u6216\u5185\u5d4c](https://web.dev/learn/performance/understanding-the-critical-path#render-blocking_resources/)\u53ef\u4ee5\u5c06\u8fd9\u4e9b\u7f51\u7edc\u8bf7\u6c42\u79fb\u51fa\u5173\u952e\u8def\u5f84\u3002"
|
|
40
|
+
},
|
|
41
|
+
"models/trace/insights/RenderBlocking.ts | title": {
|
|
42
|
+
"message": "\u6e32\u67d3\u5c4f\u853d\u8bf7\u6c42"
|
|
43
|
+
},
|
|
44
|
+
"models/trace/insights/SlowCSSSelector.ts | description": {
|
|
45
|
+
"message": "\u5982\u679c\u201c\u91cd\u65b0\u8ba1\u7b97\u6837\u5f0f\u201d\u7684\u6210\u672c\u4ecd\u7136\u5f88\u9ad8\uff0c\u4f18\u5316\u9009\u62e9\u5668\u53ef\u4ee5\u964d\u4f4e\u6b64\u6210\u672c\u3002\u8bf7\u5bf9\u7528\u65f6\u8f83\u957f\u53ca\u6162\u8def\u5f84\u6240\u5360\u767e\u5206\u6bd4\u8f83\u9ad8\u7684[\u9009\u62e9\u5668\u8fdb\u884c\u4f18\u5316](https://developer.chrome.com/docs/devtools/performance/selector-stats)\u3002\u9009\u62e9\u5668\u8d8a\u7b80\u5355\u3001\u6570\u91cf\u8d8a\u5c11\uff0cDOM \u7684\u89c4\u6a21\u8d8a\u5c0f\u3001\u7ed3\u6784\u8d8a\u7b80\u5355\uff0c\u8d8a\u80fd\u964d\u4f4e\u5339\u914d\u6210\u672c\u3002"
|
|
46
|
+
},
|
|
47
|
+
"models/trace/insights/SlowCSSSelector.ts | title": {
|
|
48
|
+
"message": "CSS \u9009\u62e9\u5668\u6210\u672c"
|
|
49
|
+
},
|
|
50
|
+
"models/trace/insights/ThirdParties.ts | description": {
|
|
51
|
+
"message": "\u7b2c\u4e09\u65b9\u4ee3\u7801\u53ef\u80fd\u4f1a\u663e\u8457\u5f71\u54cd\u52a0\u8f7d\u6027\u80fd\u3002[\u8bf7\u51cf\u5c11\u5e76\u63a8\u8fdf\u52a0\u8f7d\u7b2c\u4e09\u65b9\u4ee3\u7801](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/)\uff0c\u4ee5\u4f18\u5148\u6e32\u67d3\u60a8\u7684\u7f51\u9875\u5185\u5bb9\u3002"
|
|
52
|
+
},
|
|
53
|
+
"models/trace/insights/ThirdParties.ts | title": {
|
|
54
|
+
"message": "\u7b2c\u4e09\u65b9"
|
|
55
|
+
},
|
|
56
|
+
"models/trace/insights/Viewport.ts | description": {
|
|
57
|
+
"message": "\u6b64\u7f51\u9875\u7684\u89c6\u53e3\u672a\u9488\u5bf9\u79fb\u52a8\u8bbe\u5907\u8fdb\u884c\u4f18\u5316\uff0c\u56e0\u6b64\u70b9\u6309\u4e92\u52a8\u53ef\u80fd\u4f1a[\u5ef6\u8fdf\u6700\u591a 300\u00a0\u6beb\u79d2](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/)\u3002"
|
|
58
|
+
},
|
|
59
|
+
"models/trace/insights/Viewport.ts | title": {
|
|
60
|
+
"message": "\u89c6\u53e3\u672a\u9488\u5bf9\u79fb\u52a8\u8bbe\u5907\u8fdb\u884c\u4f18\u5316"
|
|
61
|
+
}
|
|
62
|
+
}
|
package/locales/zu.json
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"models/trace/insights/CLSCulprits.ts | description": {
|
|
3
|
+
"message": "Ukushintsha kwesakhiwo kwenzeka lapho ama-elementi enza ukuxhumana komsebenzisi kungabi khona. [Phenya ngezimbangela zokushintsha kohlaka](https://web.dev/articles/optimize-cls), njengezinto ezengezwayo, ezikhishwayo, noma amafonti awo ashintshayo njengoba ikhasi lilayisha."
|
|
4
|
+
},
|
|
5
|
+
"models/trace/insights/CLSCulprits.ts | title": {
|
|
6
|
+
"message": "Izimbangela zeshift yohlaka"
|
|
7
|
+
},
|
|
8
|
+
"models/trace/insights/DocumentLatency.ts | description": {
|
|
9
|
+
"message": "Isicelo sakho sokuqala senethiwekhi sibaluleke kakhulu. Nciphisa ukubambezeleka kwayo ngokugwema ukuqondiswa kabusha, okuqinisekisa impendulo esheshayo yeseva, nokunika amandla ukuminyaniswa kombhalo."
|
|
10
|
+
},
|
|
11
|
+
"models/trace/insights/DocumentLatency.ts | title": {
|
|
12
|
+
"message": "Ukubambezeleka kwesicelo sedokhumenti"
|
|
13
|
+
},
|
|
14
|
+
"models/trace/insights/FontDisplay.ts | description": {
|
|
15
|
+
"message": "Cabanga ukusetha i-[font-display](https://developer.chrome.com/blog/font-display) ibe yi-swap noma i-optional ukuze uqinisekise ukuthi umbhalo ubonakala ngokulandelanayo. I-swap ingaqhubeka ilungiselelwe ukuze kungenelelwe ekushintsheni kohlaka [ngokukhishwa kwemethrikhi yefonti](https://developer.chrome.com/blog/font-fallbacks)."
|
|
16
|
+
},
|
|
17
|
+
"models/trace/insights/FontDisplay.ts | title": {
|
|
18
|
+
"message": "Ukubonisa ifonti"
|
|
19
|
+
},
|
|
20
|
+
"models/trace/insights/InteractionToNextPaint.ts | description": {
|
|
21
|
+
"message": "Qala ukuphenya ngesigaba eside kakhulu. [Ukulibaziseka kungancishiswa](https://web.dev/articles/optimize-inp#optimize_interactions). Ukuze unciphise ukucubungula ubude besikhathi, [lungiselela izindleko zochungechunge olukhulu](https://web.dev/articles/optimize-long-tasks), ngokuvamile i-JS."
|
|
22
|
+
},
|
|
23
|
+
"models/trace/insights/InteractionToNextPaint.ts | title": {
|
|
24
|
+
"message": "I-INP ngokwesigaba"
|
|
25
|
+
},
|
|
26
|
+
"models/trace/insights/LCPDiscovery.ts | description": {
|
|
27
|
+
"message": "Lungiselela i-LCP ngokwenza isithombe se-LCP [sitholakale](https://web.dev/articles/optimize-lcp#1_eliminate_resource_load_delay) ku-HTML ngokushesha, futhi [ugweme ukulayisha okulengayo](https://web.dev/articles/lcp-lazy-loading)"
|
|
28
|
+
},
|
|
29
|
+
"models/trace/insights/LCPDiscovery.ts | title": {
|
|
30
|
+
"message": "Ukutholwa kwesicelo se-LCP"
|
|
31
|
+
},
|
|
32
|
+
"models/trace/insights/LCPPhases.ts | description": {
|
|
33
|
+
"message": "Isigaba [ngasinye sinamasu athile okuthuthukiswa](https://web.dev/articles/optimize-lcp#lcp-breakdown). Ngokufanelekile, iningi lesikhathi se-LCP kumele lichithwe ekulayisheni izinsiza, hhayi ngaphakathi kokulibaziseka."
|
|
34
|
+
},
|
|
35
|
+
"models/trace/insights/LCPPhases.ts | title": {
|
|
36
|
+
"message": "I-LCP ngesigaba"
|
|
37
|
+
},
|
|
38
|
+
"models/trace/insights/RenderBlocking.ts | description": {
|
|
39
|
+
"message": "Izicelo zivimbela umnikezi wasekuqaleni wekhasi, okungase kubambezele i-LCP. [Ukuhlehlisa noma ukuqondanisa](https://web.dev/learn/performance/understanding-the-critical-path#render-blocking_resources/) kungasusa lezi zicelo zenethiwekhi emzileni obucayi."
|
|
40
|
+
},
|
|
41
|
+
"models/trace/insights/RenderBlocking.ts | title": {
|
|
42
|
+
"message": "Nikeza izicelo zokuvimbela"
|
|
43
|
+
},
|
|
44
|
+
"models/trace/insights/SlowCSSSelector.ts | description": {
|
|
45
|
+
"message": "Uma izindleko Zesitayela Sokuphinda kubalwe sihlala siphezulu, ukulungiselelwa kwesikhethi kungazinciphisa. [Lungiselela izikhethi](https://developer.chrome.com/docs/devtools/performance/selector-stats) nakho kokubili isikhathi esedlule esiphezulu nendlela ehamba kancane ephezulu engu-%. Izikhethi ezilula, izikhethi ezimbalwa, i-DOM encane, kanye ne-DOM engajulile konke kuzonciphisa izindleko ezifanayo."
|
|
46
|
+
},
|
|
47
|
+
"models/trace/insights/SlowCSSSelector.ts | title": {
|
|
48
|
+
"message": "Izindleko Zesikhethi se-CSS"
|
|
49
|
+
},
|
|
50
|
+
"models/trace/insights/ThirdParties.ts | description": {
|
|
51
|
+
"message": "Ikhodi yenkampani engahlangene ngqo ingathonya kakhulu ukusebenza kokulayisha. [Nciphisa uphinde uhlehlise ukulayisha noma iyiphi ikhodi yenkampani engahlangene ngqo](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/) ukuze wenze kubaluleke okuqukethwe kwekhasi lakho."
|
|
52
|
+
},
|
|
53
|
+
"models/trace/insights/ThirdParties.ts | title": {
|
|
54
|
+
"message": "Izinkampani ezingahlangene ngqo"
|
|
55
|
+
},
|
|
56
|
+
"models/trace/insights/Viewport.ts | description": {
|
|
57
|
+
"message": "Imbobo yokubuka yekhasi ayilungiselelwe iselula, ngakho-ke ukuxhumana kokuthepha kungenzeka[kulibaziseke kuze kube ngu-300\u00a0ms](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/)."
|
|
58
|
+
},
|
|
59
|
+
"models/trace/insights/Viewport.ts | title": {
|
|
60
|
+
"message": "Imbobo yokubuka ayizange ilungiselelwe iselula"
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import * as Helpers from './helpers/helpers.js';
|
|
2
|
+
import * as Types from './types/types.js';
|
|
3
|
+
type EntryToNodeMap = Map<Types.TraceEvents.SyntheticTraceEntry, Helpers.TreeHelpers.TraceEntryNode>;
|
|
4
|
+
export declare const enum FilterAction {
|
|
5
|
+
MERGE_FUNCTION = "MERGE_FUNCTION",
|
|
6
|
+
COLLAPSE_FUNCTION = "COLLAPSE_FUNCTION",
|
|
7
|
+
COLLAPSE_REPEATING_DESCENDANTS = "COLLAPSE_REPEATING_DESCENDANTS",
|
|
8
|
+
RESET_CHILDREN = "RESET_CHILDREN",
|
|
9
|
+
UNDO_ALL_ACTIONS = "UNDO_ALL_ACTIONS"
|
|
10
|
+
}
|
|
11
|
+
export interface UserFilterAction {
|
|
12
|
+
type: FilterAction;
|
|
13
|
+
entry: Types.TraceEvents.SyntheticTraceEntry;
|
|
14
|
+
}
|
|
15
|
+
export interface PossibleFilterActions {
|
|
16
|
+
[FilterAction.MERGE_FUNCTION]: boolean;
|
|
17
|
+
[FilterAction.COLLAPSE_FUNCTION]: boolean;
|
|
18
|
+
[FilterAction.COLLAPSE_REPEATING_DESCENDANTS]: boolean;
|
|
19
|
+
[FilterAction.RESET_CHILDREN]: boolean;
|
|
20
|
+
[FilterAction.UNDO_ALL_ACTIONS]: boolean;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* This class can take in a thread that has been generated by the
|
|
24
|
+
* RendererHandler and apply certain actions to it in order to modify what is
|
|
25
|
+
* shown to the user. These actions can be automatically applied by DevTools or
|
|
26
|
+
* applied by the user.
|
|
27
|
+
*
|
|
28
|
+
* Once actions are applied, the invisibleEntries() method will return the
|
|
29
|
+
* entries that are invisible, and this is the list of entries that should be
|
|
30
|
+
* removed before rendering the resulting thread on the timeline.
|
|
31
|
+
*/
|
|
32
|
+
export declare class EntriesFilter {
|
|
33
|
+
#private;
|
|
34
|
+
constructor(entryToNodeMap: EntryToNodeMap);
|
|
35
|
+
/**
|
|
36
|
+
* Checks which actions can be applied on an entry. This allows us to only show possible actions in the Context Menu.
|
|
37
|
+
* For example, if an entry has no children, COLLAPSE_FUNCTION will not change the FlameChart, therefore there is no need to show this action as an option.
|
|
38
|
+
*/
|
|
39
|
+
findPossibleActions(entry: Types.TraceEvents.SyntheticTraceEntry): PossibleFilterActions;
|
|
40
|
+
/**
|
|
41
|
+
* Returns the amount of entry descendants that belong to the hidden entries array.
|
|
42
|
+
* */
|
|
43
|
+
findHiddenDescendantsAmount(entry: Types.TraceEvents.SyntheticTraceEntry): number;
|
|
44
|
+
/**
|
|
45
|
+
* Returns the set of entries that are invisible given the set of applied actions.
|
|
46
|
+
*/
|
|
47
|
+
invisibleEntries(): Types.TraceEvents.TraceEventData[];
|
|
48
|
+
/**
|
|
49
|
+
* Sets hidden and expandable. Called when a trace with modifications is loaded and some entries are set as hidden and expandable.
|
|
50
|
+
* Both arrays are set together because if there is one, the other must be present too.
|
|
51
|
+
*/
|
|
52
|
+
setHiddenAndExpandableEntries(invisibleEntries: Types.TraceEvents.TraceEventData[], expandableEntries: Types.TraceEvents.TraceEventData[]): void;
|
|
53
|
+
inEntryInvisible(entry: Types.TraceEvents.TraceEventData): boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Returns the array of entries that have a sign indicating that entries below are hidden,
|
|
56
|
+
* and so that they can be "expanded" to reveal their hidden children.
|
|
57
|
+
*/
|
|
58
|
+
expandableEntries(): Types.TraceEvents.TraceEventData[];
|
|
59
|
+
/**
|
|
60
|
+
* Applies an action to hide entries or removes entries
|
|
61
|
+
* from hidden entries array depending on the action.
|
|
62
|
+
*/
|
|
63
|
+
applyFilterAction(action: UserFilterAction): Types.TraceEvents.TraceEventData[];
|
|
64
|
+
/**
|
|
65
|
+
* If an entry was selected from a link instead of clicking on it,
|
|
66
|
+
* it might be in the invisible entries array.
|
|
67
|
+
* If it is, reveal it by resetting clidren the closest expandable entry,
|
|
68
|
+
*/
|
|
69
|
+
revealEntry(entry: Types.TraceEvents.SyntheticTraceEntry): void;
|
|
70
|
+
isEntryExpandable(event: Types.TraceEvents.TraceEventData): boolean;
|
|
71
|
+
}
|
|
72
|
+
export {};
|