Commit graph

412 commits

Author SHA1 Message Date
Avcharov Hryhorii
a3f808d7c8 fix: remove refresh button from transfer state tab (#63592)
TransferState is only written into the DOM once during SSR and is not kept in sync with the runtime state on the client. Pressing the refresh button always re-reads the initial serialized script tag, which never changes after bootstrap.

PR Close #63592
2025-09-04 09:23:24 -07:00
Hongxu Xu
b549cd28ae refactor(bazel): reduce build deps (#63348)
clean up deps in bazel build scripts

PR Close #63348
2025-08-28 09:16:10 -07:00
Avcharov Hryhorii
c9b0f45690 fix(devtools): prevent profiler bars flickering after change detection (#63350)
Without trackBy cdkVirtualFor rerenders full list after in each update

PR Close #63350
2025-08-26 09:41:09 -07:00
Joey Perrott
9a27c5befb build: rename defaults2.bzl to defaults.bzl (#63384)
Use defaults.bzl for the common macros

PR Close #63384
2025-08-25 15:45:46 -07:00
AleksanderBodurri
3f247f1256 fix(devtools): correct path to load fonts for devtools devserver (#63358)
This broke in c35c0c7f2f. This commit changes the path to load the external stylesheet to reflect the new directory path.

PR Close #63358
2025-08-25 08:31:56 -07:00
Joey Perrott
10b0927e15 refactor: various build and import specificer fixes for strict deps (#63324)
Change direct deps in bazel targets and import specifiers within files to maintain strict deps requirements ahead of enabling strict deps tests in the repo

PR Close #63324
2025-08-22 14:45:34 -07:00
Joey Perrott
9bdb4fe8cc build: reenable firefox tests for devtools (#63288)
Reenable firefox tests for devtools as the spaces issues with path names is addressed post v7 of bazel

PR Close #63288
2025-08-20 16:08:22 +00:00
AleksanderBodurri
5be80d33a3 fix(devtools): DOM traversal bug (#62719)
Previously, Angular devtools would mistakenly traverse the same DOM elements multiple times while doing traversal for the component tree explorer. This error case would occur when more than 1 Angular application root component was present on the same page and in distinct DOM branches.

Some example cases that did work previously:

```html
<app-root>
...
</app-root>
```

```html
<app-root>
...
<app-root-2></app-root-2>
...
</app-root>
```

An example of where it would enter the irregular behaviour

```html
<app-root>
...
</app-root>
<app-root-2>
...
</app-root-2>
```

Now, we properly ignore duplicate DOM paths when looking for application and non-application root component to begin the Angular DevTools component discovery logic.

PR Close #62719
2025-08-18 15:43:09 +00:00
Joey Perrott
a6a2e38e5c build: update to bazel 7.6.0 (#63096)
Update to later version of bazel

PR Close #63096
2025-08-14 13:01:32 +02:00
Andrew Scott
d9f0e6b27c Revert "feat(platform-browser): Add IsolatedShadowDom encapsulation method (#62723)" (#63142)
This reverts commit d24d5742db. A
legitimate issue was raised in the original commit
(see d24d5742db (commitcomment-163853393))

PR Close #63142
2025-08-13 11:12:59 -07:00
hawkgs
c0bfe23bc9 refactor(devtools): save theme preference (#63050)
Save the theme preference in the settings store.

PR Close #63050
2025-08-08 08:58:14 -07:00
Doug Parker
e524b333a3 docs(devtools): update pnpm install command (#63040)
The `install` subcommand is necessary for `--frozen-lockfile` to work.

PR Close #63040
2025-08-07 09:11:22 -07:00
Doug Parker
3a320bdec9 release: bump Angular DevTools version to 1.0.42 (#63036)
PR Close #63036
2025-08-06 14:56:26 -07:00
Ryan Bendel
d24d5742db feat(platform-browser): Add IsolatedShadowDom encapsulation method (#62723)
IsolatedShadowDom encapsulation fixes style leakage in Shadowdom encapsulation by removing sharedstyleshost from dom-renderer IsolatedShadowdom class. Updates docs.

PR Close #62723
2025-08-06 16:48:37 +02:00
hawkgs
533f8e48fd refactor(devtools): save transfer state tab state in the settings store (#62429)
Save the Transfer State tab state in the Settings store.

PR Close #62429
2025-08-06 15:12:00 +02:00
hawkgs
b66ad99020 refactor(devtools): implement a migration mechanism for the settings store (#62429)
Implement a simple mechanism that allows settings store data to be migrated, if needed.

PR Close #62429
2025-08-06 15:12:00 +02:00
hawkgs
cb8d30a293 refactor(devtools): save user settings in the settings store (#62429)
Save user settings in the `SettingsStore`.

NOTE: The theme is omitted since the change is not trivial and it will be handled in a separate PR.

PR Close #62429
2025-08-06 15:12:00 +02:00
hawkgs
1cdb54559d refactor(devtools): implement settings store (#62429)
Introduces a set of services tasked with saving user settings.

PR Close #62429
2025-08-06 15:12:00 +02:00
Matthieu Riegler
9a76a6540d refactor(devtools): add support for afterRenderEffect on the signal graph (#63005)
Prior to this change, the `afterRenderEffect` phases were not represented in the signal graph.

PR Close #63005
2025-08-06 15:08:33 +02:00
Matthieu Riegler
4b183c7708 refactor(devtools): add explicit error message when ng is not available (#63008)
This makes the error more explicit in the console.

PR Close #63008
2025-08-05 18:14:12 +02:00
Joey Perrott
2960722951 build: drop usage of pkg_web (#62990)
Drop usages of pkg_web as it comes from our previous toolchain

PR Close #62990
2025-08-05 10:08:47 +02:00
hawkgs
3d9fc3e09c fix(devtools): injector tree root refocus on CD (#62987)
Fixes the unwanted root node refocus on change detection in the Injector Tree visualizations.

PR Close #62987
2025-08-05 10:07:29 +02:00
Doug Parker
9db1179e21 docs(devtools): fix pnpm install command (#62956)
`--immutable` only works for `yarn`, `pnpm` needs `--frozen-lockfile`.

PR Close #62956
2025-08-04 11:38:38 +02:00
Matthieu Riegler
65f587bc5d fix(devtools): Display falsy signal values correctly (#62919)
falsy value would display their preview because of the logical or.

fixes #55727

PR Close #62919
2025-08-01 12:36:45 +02:00
Milo
b0f0b6d836 refactor(devtools): update graph effect colors, fix graph animations (#62912)
make effects purple instead of invisible, fix epoch animations for new nodes, and remove graph transitions when switching between two components in the component tree

PR Close #62912
2025-08-01 12:36:09 +02:00
Doug Parker
d05138a975 release: bump Angular DevTools version to 1.0.41 (#62932)
PR Close #62932
2025-07-31 15:52:37 -07:00
Joey Perrott
82cc576e6f build: use pnpm as the package manager instead of yarn (#62924)
Use pnpm instead of yarn as the package manager and interaction tool for the repo

PR Close #62924
2025-07-31 22:06:27 +00:00
hawkgs
b5fc949840 fix(devtools): MessageBus.on return type (#62898)
It appears that the intent is to return an unlisten function when `on` is called. The message bus implementations indicate that. However, the `MessageBus` abstract class returns `void` instead.

Change to `on: () => void`.

PR Close #62898
2025-07-31 09:16:15 +00:00
Joey Perrott
cbc258eec8 build: remove ts_project_interop infrastructure (#62908)
Remove the interop macros and final usages

PR Close #62908
2025-07-31 09:12:58 +00:00
Joey Perrott
008ed216d3 build: remove usages of runtime_rnjs_interop (#62908)
Remove all usages of the runtime_rnjs_interop feature

PR Close #62908
2025-07-31 09:12:58 +00:00
Joey Perrott
49b7729e88 build: remove usages of rules_nodejs (#62885)
Remove rules_nodejs usages with direct migrations to rule_js alternatives

PR Close #62885
2025-07-30 08:51:27 +00:00
hawkgs
a1318af71a fix(devtools): truncate text in the property tab header (#62868)
Handle very long component names when the "Show Signal Graph" button is visible.

PR Close #62868
2025-07-29 12:17:07 +00:00
Jessica Janiuk
e599fdd458 Revert "test(devtools): write some e2e tests for the transfer state tab (#62843)" (#62867)
This reverts commit 3a1a6cc20d.

PR Close #62867
2025-07-29 09:30:30 +00:00
AleksanderBodurri
3a1a6cc20d test(devtools): write some e2e tests for the transfer state tab (#62843)
Tests validate the current behaviour of the transfer state feature:

- Tab can be made visible by enabling in the settings menu
- Transfer state component displays keys total and size
- Validates the existence of the mock content present in https://github.com/angular/angular/tree/main/devtools/src/app/transfer-state.ts

PR Close #62843
2025-07-29 06:44:28 +02:00
hawkgs
82d585f49b fix(devtools): transfer state settings menu item text size (#62851)
Fix the text size of the transfer state settings menu item. Also, rename "Show" to "Enable" to match the rest of the non-default tabs text.

PR Close #62851
2025-07-28 14:15:46 +02:00
Joey Perrott
c19d0aef4f build: use ts_config rule from rules_ts only and always load from common location (#62808)
Only use the ts_config rule from rules_ts, and always load the rule from tools/defaults2.bzl

PR Close #62808
2025-07-25 10:08:13 +02:00
Milo
3f720044f9 refactor(devtools): cleanup a few devtools bazel files (#62786)
remove unused styles, update to es2022

PR Close #62786
2025-07-25 10:03:42 +02:00
Milo
e4ed6d6783 refactor(devtools): cleanup iframe-message-bus (#62785)
remove unused function and cleanup private readonly properties

PR Close #62785
2025-07-25 10:03:03 +02:00
Matthieu Riegler
61eeb9b021 refactor(devtools): simular transfer cache data in the devtools demo app. (#62665)
With the commit we mimic server-side behavior and serialize a bunch of transfer cache data.

fixes #62664

PR Close #62665
2025-07-24 15:51:12 +00:00
Milo
ffd4407a41 refactor(devtools): add cookies signal demo (#62749)
add a new component that includes a small signal graph and explicitly calls .set on a signal.

PR Close #62749
2025-07-24 09:18:26 +00:00
Jan Martin
deec4c16fd docs: call out cleanup steps in devtools release process (#62769)
PR Close #62769
2025-07-24 09:16:12 +00:00
Jan Martin
a4a4f7f850 release: bump Angular DevTools version to 1.0.40 (#62767)
PR Close #62767
2025-07-23 09:25:24 -07:00
Hryhorii Avcharov
a2f366f629 feat(devtools): add transfer state tab (#62465)
Add transfer state tab, which is taking transfer state script by using APP_ID. Created internal api ɵgetTransferState to retrieve transfer state value from app into devtools app.

PR Close #62465
2025-07-22 08:41:10 -04:00
AleksanderBodurri
d0cf8fc3c6 test(devtools): bump cypress timeout to 10 seconds (#62726)
By default this is 4 seconds. In CI we have unreliable runtime performance so we this change gives us a bit of wiggle room to validate application behaviour.

PR Close #62726
2025-07-21 16:35:39 -04:00
hawkgs
cc468efc74 refactor(devtools): introduce docs-ref-button (#62685)
Used for external Angular docs links.

PR Close #62685
2025-07-21 12:21:55 -04:00
hawkgs
009a27df3f refactor(devtools): make the component metadata menu more prominent (#62685)
Add an arrow icon to indicate that this is an expansion panel. Reduce the active area (which toggles the menu) to the text only.

PR Close #62685
2025-07-21 12:21:55 -04:00
AleksanderBodurri
08d37649af fix(devtools): stop reseting currentlyMatchedIndex when a node is selected in the component explorer (#62727)
This was causing some unintended behaviour when paired with our new zoneless configuration. I'm not sure why currentlyMatchedIndex was getting set to -1 here. With this removed it seems like things are working as expected. Previously a select call would reset this index *after* a search filter was applied, which would cause weird behaviour with the "next" and "prev" buttons.

PR Close #62727
2025-07-21 12:15:02 -04:00
Matthieu Riegler
a6b2d7dd10 fix(devtools): add event tagging to prevent DDOS (#62645)
One common problem encountered by the devtools content script is that it accepted almost any message send over the message bus. Some websites like `auth.openai.com` were spamming the bus and DDOS the devtools app.

By introducing event tagging and skipping non-devtools events we prevent DDOS of the Angular devtools content script by on forward tagged events.

PR Close #62645
2025-07-21 10:09:03 -04:00
hawkgs
d441ac4533 fix(devtools): make some containers scrollable (#62703)
Add scrolling to some containers in the app.

PR Close #62703
2025-07-21 09:32:58 -04:00
hawkgs
d3b770d636 refactor(devtools): restyle the signal details panel (#62681)
Restyle the details panel to match and be inline with the existing UI/style.

PR Close #62681
2025-07-18 07:00:57 -04:00