293 Commits
Author SHA1 Message Date
Alex Hunt 8edd9be3b8 Clean up legacy rn_inspector entry point (#236) 2026-02-23 17:34:33 +00:00
Alex Hunt c85f7e933a Add FB only network event coverage notice (#228) 2025-12-16 11:36:22 +00:00
Alex Hunt d37d4264b8 Add experimental Perf Issues sub-panel (#217) 2025-11-06 18:01:59 +00:00
Ruslan Lesiutin 68cfd0ae84 feat: restore Performance landing page (#179) 2025-06-11 19:20:10 +01:00
Ruslan Lesiutin b73d2d5cbf Merge remote-tracking branch 'chromedevtools/chromium/7103' into repo-sync 2025-06-10 18:46:44 +01:00
Danil Somsikov 305ec9b563 [eslint] Fix strict tsc issues in the no-imperative-dom-api
Bug: 407085691
Change-Id: If07beab48274b5491e78576556434db3b3670495
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6414778
Commit-Queue: Danil Somsikov <dsv@chromium.org>
Reviewed-by: Nikolay Vitkov <nvitkov@chromium.org>
2025-03-31 08:59:28 -07:00
Danil Somsikov 2a7a29655f Add support for the rest of DOM API that has some usage in the codebase
Bug: 400353541
Change-Id: Ib9dd04e483a56d6f592ab1ec55bc391cfe164f56
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6411011
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-31 08:21:31 -07:00
Nikolay Vitkov 02606bd150 [eslint] Fix type assertions in custom Rules
Last batch, all other issue are on the `no-imperative-dom-api`

Bug: 407085691
Change-Id: I25c70e66d3749978faed3e602f3524e656171f16
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6416090
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Danil Somsikov <dsv@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
2025-03-31 07:09:10 -07:00
Nikolay Vitkov b00393cd97 [eslint] Fix type checking in custom EsLint rules
Either fix or suppress the errors for now

Bug: 407085691
Change-Id: I45c5bd4c3644571ddaebcba45914c209ebfa46f5
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6415909
Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Danil Somsikov <dsv@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-31 04:42:11 -07:00
Danil Somsikov bbd3ef7096 Do not replace function parameters
Bug: 400353541
Change-Id: Ia77304e4cde91b216b9e4f90bfc2fba645c576ad
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6409254
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-31 02:28:04 -07:00
Nikolay Vitkov 4eac8f8231 [eslint] Run type checking on custom rules
Currently behind a flag, as there are a lot of error.
This CL fixes some of them.

Bug: 407085691
Change-Id: I736472ff5a9d8c46e45a1ce89a42199774d9075f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6410471
Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Danil Somsikov <dsv@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
2025-03-28 16:08:54 -07:00
Danil Somsikov d3465fc604 Replace top-level variables with a lit template
Bug: 400353541
Change-Id: Iab1b2a5b596ca7efe4922124253947419d41a2d2
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6407493
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-28 04:29:23 -07:00
Danil Somsikov f83ed266a9 Support external expressions as children of DOM fragments
Bug: 400353541
Change-Id: Id29c4fa82500507fcde454afe21de6e0cac9d1e8
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6405673
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-28 04:19:35 -07:00
Danil Somsikov 282ff278ad Only remove processed references to DOM fragments
Bug: 400353541
Change-Id: I9b93a605c7ae90705539a9293c4c9b1a9c998582
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6405493
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-28 04:15:41 -07:00
Danil Somsikov 1675d4de76 An abstraction to track class members and distinguish the class they belong to
Bug: 400353541
Change-Id: I5f8c6577407299d2c91980b40e1cc93ca74ef043
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6403237
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-28 03:36:29 -07:00
Danil Somsikov c14787393e Reduce the number of casts to Node in preferTemplateLiterals
The problem is that ESLint defines a `parent` property on the estree Node. However specific estree Node subtypes, such as MemberExpression, have properties with estree Node subtypes, such as Identifier. The value in practice does have a `parent` property but this is not reflected in types.

This CL makes subrules unaware of the difference by exposing only the estree type to them and makes "core" libraries do the casting where necessary.

Bug: 400353541
Change-Id: I84db45bb35bbfb09f0d6bbde8f730d0f61f09c71
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6400633
Commit-Queue: Danil Somsikov <dsv@chromium.org>
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
2025-03-27 08:29:54 -07:00
Danil Somsikov 555cc4ba2b Extract "subrules" out of preferTemplateLiterals
Bug: 400353541
Change-Id: I068797f4ed37071a655b767f2d22e65b3dd8e72b
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6394682
Reviewed-by: Nikolay Vitkov <nvitkov@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-27 08:25:05 -07:00
Danil Somsikov 8c395f4474 Extract DOM fragment and AST libraries from preferTemplateLiterals rule
Bug: 400353541
Change-Id: Id52ceaa205579096a7b9d845bc3d521a3e7bb303
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6396062
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-26 08:09:24 -07:00
Danil Somsikov dd60dc9c8a Support class properties as DOM fragments in the preferTemplateLiterals
Bug: 400353541
Change-Id: I0d0724f752d75a262da31deaf0662221cc8442d4
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6387921
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-25 14:06:41 -07:00
Danil Somsikov e4192641bb Support toolbar buttons in the preferTemplateLiterals
Tighten up types along the way.

Bug: 400353541
Change-Id: I23b644e7ebc2c19194486817ac98c39498ae1679
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6387112
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-25 13:40:50 -07:00
Danil Somsikov 0832829c9c Support ToolbarInput and Adorner in the preferTemplateLiterals
Bug: 400353541
Change-Id: Ibb13f752eb215b3a01b8d0ad16ced080b98a68ac
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6387797
Commit-Queue: Danil Somsikov <dsv@chromium.org>
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
2025-03-25 03:23:06 -07:00
Danil Somsikov 715d95eb9d Remove all the references to the processed DOM fragments
Bug: 400353541
Change-Id: Ie86c6e6e8810f34ed51fd22dd43f3e62fe540534
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6381538
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-24 03:47:24 -07:00
Nikolay Vitkov efd6594929 [eslint] Support no used for NotTranslated
Bug: none
Change-Id: Ia1dec1d28bbbd63e2e192ff2d8f7556fc743ffd7
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6367218
Reviewed-by: Ergün Erdoğmuş <ergunsh@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Simon Zünd <szuend@chromium.org>
2025-03-19 02:47:55 -07:00
Benedikt Meurer 5307d4dd45 [unified-css] Rename cssContent to cssText.
The name `cssText` is more aligned with the Web Platform APIs (both
`CSSRule` and `CSSStyleDeclaration` have a `cssText` property).
Otherwise this change is neutral.

Bug: 391381439
Change-Id: Iae65bd4cc0fe96078cdd8c2847573551fd3f80f9
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6357196
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Nikolay Vitkov <nvitkov@chromium.org>
2025-03-17 05:45:06 -07:00
Danil Somsikov 469b8180fc Support createChild and toolbar items in the preferTemplateLiterals rule
Bug: 400353541
Change-Id: I27a18bb4829336dfaba4dcdd697c84d6591fb60e
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6357270
Commit-Queue: Philip Pfaffe <pfaffe@chromium.org>
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Auto-Submit: Danil Somsikov <dsv@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-03-14 06:01:58 -07:00
Danil Somsikov fe93423539 Handle variables in the preferTemplateLiterals lint rule
Bug: 400353541
Change-Id: I47bacbb4b844e2499f138be88448171841f9b0a0
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6353440
Commit-Queue: Philip Pfaffe <pfaffe@chromium.org>
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Auto-Submit: Danil Somsikov <dsv@chromium.org>
2025-03-14 01:36:00 -07:00
Danil Somsikov 8ef31f7858 Improve DOM API parsing for preferTemplateLiterals rule
- parse the event listeners
- parse the property methods like .classList.add
- fix the rendering for empty elements

Bug: 400353541
Change-Id: I9d734f156ee45bd10856b3354fc10a11b589339a
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6352081
Commit-Queue: Danil Somsikov <dsv@chromium.org>
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Commit-Queue: Philip Pfaffe <pfaffe@chromium.org>
Auto-Submit: Danil Somsikov <dsv@chromium.org>
2025-03-13 10:48:27 -07:00
Danil Somsikov b90c04ffaa Eslint rule for identifying and templatizing manually constructed DOM
This is not yet enabled and will be further expanded to handle more imperative API and variables

Bug: 400353541
Change-Id: Ie1d514bc2a1813a5cadf98b1a46579c386f22203
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6346607
Auto-Submit: Danil Somsikov <dsv@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Reviewed-by: Nikolay Vitkov <nvitkov@chromium.org>
2025-03-13 04:54:40 -07:00
Nikolay Vitkov d1ebd9e14d [EsLint] Don't use empty blocks
Bug: 397260638
Change-Id: Ibf4389ce952333a7af1877450ded87a480d2041f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6298125
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
2025-02-26 08:30:00 -08:00
Ergun Erdogmus 5efc7e9be2 [Eslint] Add a custom rule for enforcing as const in UIStrings
We needed to update other l10n related eslint rules and
`collect-strings` script to look for `as const` definitions as well.

Fixed: 397381592
Change-Id: Ia3eb9a97fa1595093fb332525f996039f7546d8e
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6287325
Commit-Queue: Ergün Erdoğmuş <ergunsh@chromium.org>
Reviewed-by: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Reviewed-by: Simon Zünd <szuend@chromium.org>
2025-02-21 04:46:52 -08:00
Nikolay Vitkov 2801cc647a [eslint] Add new test case for html tagged template
With the new change of allowing destruction in the import,
create a test case for this rule as well.

Bug: 397260638
Change-Id: I276d185beb377599cec2cd7fdb526fc33fae98f1
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6278525
Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
2025-02-18 05:55:06 -08:00
Nikolay Vitkov f1e3bd8d99 [eslint] Introduce eslint-plugin-eslint-plugin
Bug: none
Change-Id: I733528d699da8aa749d19d249e7752895c5a8195
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6259394
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
2025-02-13 04:23:19 -08:00
Nikolay Vitkov 49d12de8b5 Revert "Remove custom_element_definitions_location lint rule."
This reverts commit dc5df3fd69.

Reason for revert: Actually this is fully inline with the UI eng vision. Not sure what I was thinking.

Original change's description:
> Remove custom_element_definitions_location lint rule.
>
> It is hard to justify this requiement in the light of UI engineering
> approach we are taking.
>
> Bug: 301364727
> Change-Id: I9f8f42255aab5dd41858e5840e048e47719f8520
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/5899035
> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
> Auto-Submit: Danil Somsikov <dsv@chromium.org>

Bug: 301364727
Change-Id: I5096f996bb1ca22d8e1a26535dc3aa742fb84c02
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6252746
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
2025-02-12 09:56:48 -08:00
Benedikt Meurer 84b0fcc58c [eslint] Replace prefer-readonly-keyword with @typescript-eslint/array-type.
We had our own homegrown ESLint rule that was trying to enforce some
consistency around `ReadonlyArray<T>` vs. `readonly T[]`, but that was
fairly limited and still allowed for `Array<T>` vs `T[]` with no shared
discipline.

We now use the `@typescript-eslint/array-type` rule instead and enforce
that for simple types the `T[]` (and `readonly T[]`) syntax is used,
while for complex types the `Array<A & B>` (and `ReadonlyArray<A & B>`)
syntax is used.

Bug: none
Change-Id: I8933869f98577d4afc4141c5736fccb2159924a6
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6257990
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Nikolay Vitkov <nvitkov@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
2025-02-12 07:40:43 -08:00
Nikolay Vitkov c406636a87 [eslint] Extract runner into a util file
Also fixes the running of the test locally

Bug: none
Change-Id: Icbed012aeee6bddf5eebcffda9703693191ab4bc
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6235032
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
2025-02-06 02:12:05 -08:00
Connor Clark 39e54309b8 Export all UIStrings in insight models, for external usage
We should have no i18n strings defined in insight component modules,
since Lighthouse (and any other future external usages) should be able
to utilize the exact same translated strings. This was already the case
for title/description, but now every translated string has been moved.

Bug: 388723721
Change-Id: Ic3e72acb4b697a225b102f64383660b5a0f275af
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6227699
Auto-Submit: Connor Clark <cjamcl@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Adam Raine <asraine@chromium.org>
2025-02-05 01:08:53 -08:00
Danil Somsikov a98dbb7be2 Remove lit-host-this elint rule.
According to the go/chrome-devtools:ui-engineering-proposal view function needs to call event handles on the view input.

Bug: 301364727
Change-Id: I2f13f7bbea9292d8e4a0bbdff2d6e2d326ca623d
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6226799
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Auto-Submit: Danil Somsikov <dsv@chromium.org>
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Danil Somsikov <dsv@chromium.org>
2025-02-03 09:37:08 -08:00
Benedikt Meurer beeb30b6d8 [cleanup] Improve ergonomics for importing Lit functions.
Instead of the cumbersome

```
import * as Lit from '../../ui/lit/lit.js';

// ...

const {render, html} = Lit;
```

you can now simply use

```
import {render, html} from '../../ui/lit/lit.js';
```

directly.

Bug: 301364727
Change-Id: If3441bd120dbce8902caab17bc4bf1703ed77270
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6216537
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Nikolay Vitkov <nvitkov@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
2025-01-31 07:58:32 -08:00
Nikolay Vitkov 41c69115b8 [eslint] Enable import/sort rule
This provides consistency of how imports are order,
reducing differences in authored files.

Bug: none
Change-Id: I45ddd71e3e0004aca32f101cb926101544a34157
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6218490
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
2025-01-31 07:48:10 -08:00
Benedikt Meurer d604ae2d17 [unified-css] Rename .css.legacy.js to .css.js.
This also removes the logic to generate the constructed style sheet
`.css.js` files, and with it the solution for CSS hot reloading (which
never worked for the "legacy CSS" approach).

Bug: 391381439
Change-Id: I7492f7d1b55dcb4f071a7c55974565a79dbbdb17
Doc: https://goo.gle/devtools-unified-css-design
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6218494
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Nikolay Vitkov <nvitkov@chromium.org>
2025-01-31 07:13:57 -08:00
Benedikt Meurer b218462d8b [unified-css] Only generate "legacy CSS" files.
This is the first step in the CSS unification, which adjusts the build
system to only spit out "legacy CSS" files, which we still turn into
constructed style sheets in various places, and which will be migrated
in a follow-up step.

In a follow up step, the `.css.legacy.js` files will also be renamed to
just `.css.js`, but for this change, it was easier to stick to this
naming scheme.

Bug: 391381439
Change-Id: I11e99c9dfcfd6adfca95242cbe152fed5ac3c107
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6219314
Reviewed-by: Alex Rudenko <alexrudenko@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
2025-01-31 01:47:27 -08:00
Benedikt Meurer 36cb033ce2 [unified-css] Migrate icon_button component.
Now that we have an agreement on how to proceed with the CSS in the
front-end, migrate the `icon_button` component as the first guinea
pig, and remove the offending ESLint rule.

Bug: 391381439
Change-Id: Ie996db09fcf9dfc329206f62b136fad62583b730
Doc: https://goo.gle/devtools-unified-css-design
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6216261
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Danil Somsikov <dsv@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
2025-01-30 09:24:19 -08:00
Benedikt Meurer 6e53408a5e [cleanup] Shorten LitHtml to Lit (lit-html to lit).
There's no benefit in the long version and the underlying package is
also just called `lit` these days, and `LitHtml` is really annoying
on the eyes.

Bug: 301364727
Change-Id: I38d90b8332af2c792063e318d3e0b11121501df1
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6211898
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Kim-Anh Tran <kimanh@chromium.org>
2025-01-29 03:09:15 -08:00
Nikolay Vitkov 99a9104ae9 [test] Add scripts folder to runner
Prototype for run.ts to include all scripts files as well.
This will make it easier to just run a single command.

Bug: none
Change-Id: I0e7e623a777330d320a003a0099518aeeed88821
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6187112
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
2025-01-23 07:10:53 -08:00
Nikolay Vitkov de07efad99 [eslint] Update lint to include .mjs files
EsLint support .mjs file by default now. But we exclude them from
running previously in our script.

Disabled the `es-modules-import` rule for our script folder
as it's not relevant there.

Added types comment to the EsLint rules.
This should make it easier to build and understand the current rules.

Bug: none
Change-Id: I448efdb055c9cc107e3bced9b3febe5eb226bcf6
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6177719
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
2025-01-17 06:45:29 -08:00
Benedikt Meurer d2325939f7 [cleanup] Remove LitElement dependency from Protocol Monitor.
The `JSONEditor` was previously using `LitElement`, which is not in line
with how we want to build UI in the future. This does the minimal
changes to turn it into a `UI.Widget.Widget` instead and also fixes the
build dependencies accordingly.

Bug: 390071004, 301364727
Change-Id: Ia01fb731e437ffb6fd8c435b905fe5973ad5f48a
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6170726
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Simon Zünd <szuend@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
2025-01-15 02:09:58 -08:00
Jack Franklin 8996ce6060 Lint: add test case for double slash in import path
Accidentally importing something as `foo//bar.js` (rather than
`foo/bar.js`) should not matter, and indeed both the TS build and
ESBuild compile fine. However you get an error when running DevTools at
runtime. What's unfortunate is that the error is very non obvious and it
took me ages to realise that the root of it was an accidental `//`.

This CL adds a check for this to the existing import rule and a test.

Fixed: 346966388
Change-Id: I3922a58b89ce639fc619c0e2b83cd14f3fe993cb
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6157259
Commit-Queue: Andres Olivares <andoli@chromium.org>
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Andres Olivares <andoli@chromium.org>
2025-01-08 07:00:08 -08:00
Nikolay Vitkov 1f49d6a42b [tools] Fix test for EsLint and Stylelint
After the latest update to the deps these test started failing.

Bug: none
Change-Id: Ifd4a4099e465aa61087675f2fb564272e277ced0
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6148217
Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
2025-01-08 01:56:59 -08:00
Benedikt Meurer 39e5133b95 [test] Introduce Platform.DevToolsPath.urlString helper.
This adds a helper function to avoid sprinkling casts to
`Platform.DevToolsPath.UrlString` all over our unit test
suite, combined with an ESLint rule to enforce that we
use this helper consistently.

This leads to much more readable test code for unit tests
that are concerned with APIs that take `UrlString`s, and
the code is more consistent.

Bug: 323797639
Change-Id: I6d797c0db9e5bd2fd019b83b9a7a269c7437ebdf
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6148578
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Danil Somsikov <dsv@chromium.org>
2025-01-07 05:49:23 -08:00
Nikolay Vitkov b4e8dc7ac2 Update EsLint v9
Bug: none
Change-Id: Iebcc53c0f70a51242f22e4df167cd588b08cefcd
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6140633
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
2025-01-07 05:41:31 -08:00