Commit graph

132 commits

Author SHA1 Message Date
mgechev
42ecb7a0d5 fix(devtools): do not attempt to initialize devtools if not ivy 2020-05-20 15:51:30 -07:00
mgechev
5c5345fdd4 fix(devtools): remove forgotten markers causing slowdown 2020-05-11 15:40:33 -07:00
mgechev
5c0031d944 fix(devtools): broken virtual scroll layout on resize
Fix rangle/angular-devtools#342
2020-05-11 14:31:34 -07:00
AleksanderBodurri
dd71a52466 feat(devtools): Implement basic configuration UI and use it to toggle Timing API 2020-05-09 18:15:48 -07:00
mgechev
6422b60568 fix(devtools): preserve the expansion status of moved items 2020-05-07 16:25:36 -07:00
mgechev
4fc8a075c0 fix(devtools): initialization and popup logic
- Rename the popups and introduce a new one - supported version but no ivy
- Change the initialization logic to reflect the latest profiling updates
2020-05-04 18:33:17 -04:00
mgechev
c17b5fdc3e refactor(devtools): temporarily disable timingg API 2020-05-04 18:33:17 -04:00
mgechev
288ecfd994 fix(devtools): consider change detection completed after a microtask 2020-05-04 18:33:17 -04:00
mgechev
be6ffb4f23 refactor(devtools): use single change detection tracker 2020-05-04 18:33:17 -04:00
mgechev
ccee9302a0 refactor(devtools): observer logic so that we can have a single instance
We currently have a single instance of the directive forest observer. It's shared between the identity tracker and the capturer.
2020-05-04 18:33:17 -04:00
mgechev
2eb4771ea6 refactor(devtools): use different hook mechanism 2020-05-04 18:33:17 -04:00
mgechev
df5857ddc2 feat(devtools): introduce timing API support 2020-05-04 18:33:17 -04:00
AleksanderBodurri
8d319dd486 feat(devtools): make devtools fail elegantly for view engine apps 2020-05-04 10:33:23 -07:00
mgechev
d4fc65504b fix(devtools): ensure compatibility with angular v10.0.0+ 2020-05-02 20:24:15 -04:00
AleksanderBodurri
9f9fcdc128 refactor(devtools): rename selected-component.ts to set-console-reference.ts to better describe usage 2020-04-21 12:18:22 -07:00
AleksanderBodurri
4b9031263f feat(devtools): add ivy check 2020-04-20 12:35:24 -07:00
AleksanderBodurri
b5e95ce468 feat(devtools): inform user that devtools has limited functionality in production mode 2020-04-20 12:35:24 -07:00
AleksanderBodurri
502ab94003 feat(devtools): remove timeout and add new loading/error state message (rangle/angular-devtools#291) 2020-04-16 13:32:12 -07:00
AleksanderBodurri
0613d7e4f2 build(devtools): add linting to ci (rangle/angular-devtools#285)
* chore: fix lint errors

* build: add linting to ci pipeline
2020-04-15 14:22:49 -07:00
AleksanderBodurri
363f7954c4 feat(devtools): clicking on element with component inspector enabled will select that component in the directive explorer 2020-04-14 15:27:59 -07:00
AleksanderBodurri
285b5dbe91 feat(devtools): allow user to view change detection strategy and view encapsulation of a component in the property explorer (rangle/angular-devtools#257) 2020-04-08 11:35:50 -07:00
Minko Gechev
544d82fcc3 fix(devtools): debounce dirty notifications and ignore vendorChunk (rangle/angular-devtools#264)
1. On scroll event we can very aggressively request updates. Although we have throttling logic, it still can be quite a heavy operation in the front end. Here we introduce 50ms throttling.
2. Do not produce `vendorChunk` in development (and production) modes.
2020-04-08 11:34:25 -07:00
AleksanderBodurri
0ba899bfd5 refactor(devtools): remove ng.getComponent calls in places it is no longer needed 2020-04-01 15:17:52 -07:00
mgechev
f848ef8d1b feat(devtools): add functionality for visualizing change detection 2020-03-31 18:31:27 -04:00
mgechev
691e495b6b feat(devtools): add duration field to the ProfilerFrame
This way we open the door for further optimizations and make it possible to introduce customization of the output of the formatters per component-level.
2020-03-31 18:31:27 -04:00
mgechev
54c14c251a feat(devtools): optionally show change detection duration only when run 2020-03-31 18:31:27 -04:00
AleksanderBodurri
7d89324441 refactor(devtools): remove unused import 2020-03-30 12:36:55 -07:00
AleksanderBodurri
43df052e5c refactor(devtools): remove unused ng debug objects 2020-03-30 12:34:03 -07:00
AleksanderBodurri
97f88712e6 fix(devtools): drag and drop when selecting input; fix: console warning on update state error (rangle/angular-devtools#205)
* fix: console warn correct variable on update state failure

* fix: prevent drag from occuring on property edit inputs
2020-03-27 15:59:03 -07:00
AleksanderBodurri
74eb888efe feat(devtools): create ConsoleReferenceNode interface to fix typing issues in selected-component.ts 2020-03-23 17:41:52 -07:00
AleksanderBodurri
4df2b2b91e refactor(devtools): type node properly; simplify logic in select-component.ts 2020-03-23 17:41:52 -07:00
AleksanderBodurri
a8ba83cd30 fix(devtools): fix tests and leave todo related to possible typing refactor 2020-03-23 17:41:52 -07:00
AleksanderBodurri
a25cd0ed15 feat(devtools): show the console reference key on each selected element 2020-03-23 17:41:52 -07:00
AleksanderBodurri
4120c551e8 fix(devtools): catch selection edge cases for selecting the same node and selecting a node already in the array 2020-03-23 17:41:52 -07:00
AleksanderBodurri
1d55622f3a feat(devtools): implement component selection functionality for $ng0 - $ng4 similarly to how chrome devtools does with html elements 2020-03-23 17:41:52 -07:00
AleksanderBodurri
0b5e892d84 build(devtools): enable no-unused-variable lint check with warning severity 2020-03-23 17:41:10 -07:00
AleksanderBodurri
3a6b5b0bd9 refactor(devtools): remove old unused methods from property tab body, client event subscribers, and directive property resolver 2020-03-22 19:59:30 -07:00
AleksanderBodurri
f8bb080157 feat(devtools): pass input/output data through from application to devtools UI 2020-03-22 19:59:30 -07:00
mgechev
4b40752cb9 refactor(devtools): type safe serialization 2020-03-22 03:59:27 -04:00
mgechev
b127cdc211 fix(devtools): prevent race condition between getting nested props and refresh 2020-03-21 19:09:12 -07:00
mgechev
b010784b21 fix(devtools): do not expand HTML Comments and preserve state for selected nodes 2020-03-21 19:09:12 -07:00
mgechev
5f5307e610 fix(devtools): flicker properties when update selected node
Fix rangle/angular-devtools#171

The PR includes few changes:
1. Fixes a race condition between two competing async calls
2. Simplifies the message bus, now we have one method for getting the component tree instead of one for getting the component tree and another for getting properties. Similarly to GraphQL we send a query for exactly what we need.
3. Fixes the way we update properties in the UI once we receive new items
2020-03-21 19:09:12 -07:00
Minko Gechev
6a6059d2b1 build(devtools): enable strictNullChecks (rangle/angular-devtools#167) 2020-03-20 11:54:37 -07:00
mgechev
48c140038b fix(devtools): refresh & reinitialize on navigation 2020-03-13 18:49:46 -07:00
AleksanderBodurri
1871c34743 fix(devtools): get ng debug object whenever it is required through a function to prevent an issue where it would be set to undefined on page refresh 2020-03-12 15:54:47 -07:00
mgechev
07344cd4b3 feat(devtools): implement "force refresh" when the user presses the refresh button 2020-03-12 15:13:34 -07:00
mgechev
57f6f26b52 refactor(devtools): add comments and remove useless npm scripts 2020-03-12 15:13:15 -07:00
mgechev
3340caf648 fix(devtools): show report for replaced nodes in the same tile and get lifecycle hook name 2020-03-12 15:13:15 -07:00
mgechev
82a8d5c0aa fix(devtools): show elements nested in app elements 2020-03-12 15:13:15 -07:00
mgechev
387b2f34fd refactor(devtools): show more meaningful warning message to help us debug cases 2020-03-12 15:13:15 -07:00