Rocky_Mountain_Vending/.pnpm-store/v10/files/f6/f3f1f73a98f7491dd8a17e1621a5ce3bfb1a3d6376a8e08fc2224a5477598b2ac42077d4d301d0bec00294801913a63f0185dd2f2cca6f22a7187c58d195c9
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
Next.js website for Rocky Mountain Vending company featuring:
- Product catalog with Stripe integration
- Service areas and parts pages
- Admin dashboard with Clerk authentication
- SEO optimized pages with JSON-LD structured data

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 16:22:15 -07:00

1 line
No EOL
5.9 KiB
Text

{"version":3,"file":"SelectorStatsHandler.js","sourceRoot":"","sources":["../../../../../../../front_end/models/trace/handlers/SelectorStatsHandler.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2024 The Chromium Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\nimport type * as Protocol from '../../../generated/protocol.js';\nimport * as Types from '../types/types.js';\n\ninterface SelectorWithStyleSheedId {\n selector: string;\n styleSheetId: string;\n}\n\ninterface InvalidatedNode {\n frame: string;\n backendNodeId: Protocol.DOM.BackendNodeId;\n type: Types.Events.InvalidationEventType;\n selectorList: SelectorWithStyleSheedId[];\n ts: Types.Timing.Micro;\n tts?: Types.Timing.Micro;\n subtree:\n boolean; // Indicates if the invalidation applies solely to the node (false) or extends to all its descendants (true)\n lastUpdateLayoutTreeEventTs: Types.Timing.Micro;\n}\n\nlet lastUpdateLayoutTreeEvent: Types.Events.UpdateLayoutTree|null = null;\nlet lastInvalidatedNode: InvalidatedNode|null = null;\n\nconst selectorDataForUpdateLayoutTree = new Map<Types.Events.UpdateLayoutTree, {\n timings: Types.Events.SelectorTiming[],\n}>();\n\nconst invalidatedNodeList = new Array<InvalidatedNode>();\n\nexport function reset(): void {\n lastUpdateLayoutTreeEvent = null;\n lastInvalidatedNode = null;\n selectorDataForUpdateLayoutTree.clear();\n invalidatedNodeList.length = 0;\n}\n\nexport function handleEvent(event: Types.Events.Event): void {\n if (Types.Events.isStyleRecalcInvalidationTracking(event)) {\n /**\n * CSS Style substree invalidation\n * A subtree invalidation comes with two records, 1) a StyleInvalidatorInvalidationTracking\n * event 2) following with a StyleRecalcInvalidationTracking event. List of selectors and style\n * sheet ID information is stored in the 1st event. Subtree flag is stored in the 2nd\n * event.\n */\n if (event.args.data.subtree &&\n event.args.data.reason === Types.Events.StyleRecalcInvalidationReason.RELATED_STYLE_RULE &&\n lastInvalidatedNode && event.args.data.nodeId === lastInvalidatedNode.backendNodeId) {\n lastInvalidatedNode.subtree = true;\n return;\n }\n }\n\n if (Types.Events.isSelectorStats(event) && lastUpdateLayoutTreeEvent && event.args.selector_stats) {\n selectorDataForUpdateLayoutTree.set(lastUpdateLayoutTreeEvent, {\n timings: event.args.selector_stats.selector_timings,\n });\n return;\n }\n\n if (Types.Events.isStyleInvalidatorInvalidationTracking(event)) {\n const selectorList = new Array<SelectorWithStyleSheedId>();\n event.args.data.selectors?.forEach(selector => {\n selectorList.push({\n selector: selector.selector,\n styleSheetId: selector.style_sheet_id,\n });\n });\n\n if (selectorList.length > 0) {\n lastInvalidatedNode = {\n frame: event.args.data.frame,\n backendNodeId: event.args.data.nodeId,\n type: Types.Events.InvalidationEventType.StyleInvalidatorInvalidationTracking,\n selectorList,\n ts: event.ts,\n tts: event.tts,\n subtree: false,\n lastUpdateLayoutTreeEventTs: lastUpdateLayoutTreeEvent ? lastUpdateLayoutTreeEvent.ts : Types.Timing.Micro(0),\n };\n invalidatedNodeList.push(lastInvalidatedNode);\n }\n }\n\n if (Types.Events.isUpdateLayoutTree(event)) {\n lastUpdateLayoutTreeEvent = event;\n return;\n }\n}\n\nexport async function finalize(): Promise<void> {\n}\n\nexport interface SelectorStatsData {\n dataForUpdateLayoutEvent: Map<Types.Events.UpdateLayoutTree, {\n timings: Types.Events.SelectorTiming[],\n }>;\n invalidatedNodeList: InvalidatedNode[];\n}\n\nexport function data(): SelectorStatsData {\n return {\n dataForUpdateLayoutEvent: selectorDataForUpdateLayoutTree,\n invalidatedNodeList,\n };\n}\n"]}