ember-inspector 4.13.1 → 4.15.0
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/.ember-cli +1 -9
- package/.github/workflows/build.yml +33 -112
- package/.github/workflows/plan-release.yml +26 -48
- package/.github/workflows/publish.yml +129 -31
- package/.prettierignore +2 -13
- package/.prettierrc.js +10 -4
- package/.release-plan.json +13 -4
- package/.stylelintignore +8 -0
- package/.stylelintrc.js +10 -1
- package/.template-lintrc.js +2 -1
- package/.tool-versions +2 -2
- package/.watchmanconfig +1 -1
- package/CHANGELOG.md +137 -0
- package/DEVELOPMENT.md +50 -0
- package/PRIVACY.md +3 -0
- package/README.md +14 -50
- package/RELEASE.md +15 -50
- package/app/components/app-picker.hbs +2 -2
- package/app/components/component-tree-item.hbs +14 -14
- package/app/components/component-tree-toolbar.hbs +17 -3
- package/app/components/{date-property-field.js → date-property-field.ts} +6 -5
- package/app/components/deprecation-item-source.hbs +1 -1
- package/app/components/deprecation-item.hbs +1 -1
- package/app/components/deprecations-toolbar.hbs +1 -1
- package/app/components/item-types.hbs +7 -7
- package/app/components/list-cell.hbs +3 -3
- package/app/components/list-content.hbs +4 -3
- package/app/components/list-content.ts +96 -0
- package/app/components/list.hbs +3 -3
- package/app/components/list.js +7 -7
- package/app/components/model-types-toolbar.hbs +3 -3
- package/app/components/object-inspector/component-parents.hbs +33 -0
- package/app/components/object-inspector/component-parents.js +43 -0
- package/app/components/object-inspector/dependent-keys.hbs +4 -4
- package/app/components/object-inspector/errors.hbs +4 -4
- package/app/components/object-inspector/properties-all.hbs +1 -1
- package/app/components/object-inspector/properties-base.js +2 -0
- package/app/components/object-inspector/properties-grouped.hbs +5 -5
- package/app/components/object-inspector/property.hbs +36 -34
- package/app/components/object-inspector/property.ts +34 -17
- package/app/components/object-inspector/sort-properties.js +12 -4
- package/app/components/object-inspector/toggle.hbs +9 -0
- package/app/components/object-inspector/toggle.js +6 -0
- package/app/components/object-inspector.hbs +11 -9
- package/app/components/object-inspector.js +1 -1
- package/app/components/promise-item.hbs +11 -11
- package/app/components/promise-item.js +8 -6
- package/app/components/promise-tree-toolbar.hbs +5 -5
- package/app/components/records-toolbar.hbs +2 -2
- package/app/components/render-item.hbs +4 -4
- package/app/components/render-item.ts +12 -9
- package/app/components/render-tree-toolbar.hbs +1 -1
- package/app/components/route-cell-name.hbs +1 -1
- package/app/components/route-cell-name.js +3 -2
- package/app/components/route-tree-toolbar.hbs +2 -2
- package/app/components/scroll-container.js +2 -0
- package/app/components/side-nav.hbs +5 -5
- package/app/components/side-nav.js +1 -1
- package/{lib/ui/addon/components → app/components/ui}/drag-handle.hbs +4 -4
- package/{lib/ui/addon/components → app/components/ui}/drag-handle.js +3 -1
- package/{lib/ui/addon/components → app/components/ui}/empty-message.hbs +1 -1
- package/{lib/ui/addon/components → app/components/ui}/error-page.hbs +3 -3
- package/{lib/ui/addon/components → app/components/ui}/resizable-column.js +1 -1
- package/{lib/ui/addon/components → app/components/ui}/toolbar-clear-button.hbs +1 -1
- package/{lib/ui/addon/components → app/components/ui}/toolbar-reload-button.hbs +1 -1
- package/{lib/ui/addon/components → app/components/ui}/toolbar-search-field.hbs +2 -2
- package/app/computed/{debounce.js → debounce.ts} +7 -5
- package/app/config/environment.d.ts +5 -2
- package/app/controllers/app-config.js +1 -0
- package/app/controllers/application.js +36 -71
- package/app/controllers/component-tree.js +26 -7
- package/app/controllers/container-type.js +2 -1
- package/app/controllers/container-types/{index.js → index.ts} +5 -2
- package/app/controllers/container-types.js +3 -6
- package/app/controllers/deprecations.js +16 -11
- package/app/controllers/libraries.js +1 -0
- package/app/controllers/model-types.js +7 -13
- package/app/controllers/promise-tree.ts +149 -0
- package/app/controllers/records.js +18 -26
- package/app/controllers/{render-tree.js → render-tree.ts} +54 -45
- package/app/controllers/route-tree.js +7 -5
- package/app/helpers/build-style.js +1 -1
- package/app/index.html +1 -19
- package/app/initializers/setup.js +1 -1
- package/app/libs/promise-assembler.ts +249 -0
- package/app/libs/resizable-columns.js +10 -10
- package/app/models/{promise.js → promise.ts} +72 -69
- package/app/{router.js → router.ts} +1 -1
- package/app/routes/app-detected.js +3 -5
- package/app/routes/application.js +9 -13
- package/app/routes/deprecations.js +7 -16
- package/app/routes/launch.js +2 -1
- package/app/routes/libraries.js +2 -1
- package/app/routes/model-type.js +2 -3
- package/app/routes/model-types.ts +57 -0
- package/app/routes/promise-tree.ts +63 -0
- package/app/routes/records.ts +78 -0
- package/app/routes/render-tree.ts +93 -0
- package/app/routes/route-tree.js +0 -1
- package/app/routes/{tab.js → tab.ts} +9 -2
- package/app/routes/whats-new.js +6 -4
- package/app/services/adapters/{basic.js → basic.ts} +36 -30
- package/app/services/adapters/{bookmarklet.js → bookmarklet.ts} +17 -24
- package/app/services/adapters/{chrome.js → chrome.ts} +1 -2
- package/app/services/adapters/{web-extension.js → web-extension.ts} +46 -46
- package/app/services/adapters/websocket.ts +40 -0
- package/app/services/layout.ts +124 -0
- package/app/services/port.ts +195 -0
- package/app/services/storage/{local.js → local.ts} +7 -20
- package/app/services/storage/{memory.js → memory.ts} +6 -21
- package/app/services/{storage.js → storage.ts} +25 -23
- package/app/styles/app.scss +1 -0
- package/app/styles/base.scss +6 -2
- package/app/styles/colors.scss +33 -31
- package/app/styles/component_tree.scss +56 -51
- package/app/styles/dropdown.scss +2 -2
- package/app/styles/ember-table.scss +3 -3
- package/app/styles/mixin.scss +26 -26
- package/app/styles/object_inspector.scss +30 -21
- package/{lib/ui/addon/styles → app/styles/ui}/_disclosure-triangle.scss +3 -1
- package/{lib/ui/addon/styles → app/styles/ui}/_drag-handle.scss +7 -7
- package/{lib/ui/addon/styles → app/styles/ui}/_empty-message.scss +1 -1
- package/{lib/ui/addon/styles → app/styles/ui}/_error-page.scss +8 -7
- package/{lib/ui/addon/styles → app/styles/ui}/_list.scss +46 -45
- package/{lib/ui/addon/styles → app/styles/ui}/_nav.scss +29 -27
- package/app/styles/ui/_object-inspector-toggle.scss +4 -0
- package/{lib/ui/addon/styles → app/styles/ui}/_pill.scss +4 -4
- package/{lib/ui/addon/styles → app/styles/ui}/_send-to-console.scss +1 -1
- package/{lib/ui/addon/styles → app/styles/ui}/_split.scss +26 -20
- package/app/styles/ui/_ui.scss +13 -0
- package/{lib/ui/addon/styles → app/styles/ui}/toolbar/_checkbox.scss +5 -5
- package/app/styles/ui/toolbar/_icon-button.scss +80 -0
- package/{lib/ui/addon/styles → app/styles/ui}/toolbar/_index.scss +6 -5
- package/{lib/ui/addon/styles → app/styles/ui}/toolbar/_radio.scss +10 -10
- package/{lib/ui/addon/styles → app/styles/ui}/toolbar/_search.scss +5 -3
- package/app/styles/utils.scss +408 -122
- package/app/templates/application.hbs +22 -19
- package/app/templates/component-tree.hbs +4 -1
- package/app/templates/deprecations.hbs +2 -3
- package/app/templates/info.hbs +10 -10
- package/app/templates/promise-tree.hbs +1 -1
- package/app/templates/render-tree.hbs +1 -1
- package/app/templates/route-tree.hbs +1 -1
- package/app/utils/escape-reg-exp.ts +3 -2
- package/app/utils/nullish.ts +7 -0
- package/app/utils/parse-text.ts +4 -5
- package/app/utils/truncate.js +0 -1
- package/config/ember-cli-update.json +5 -3
- package/config/ember-try.js +117 -72
- package/config/environment.js +1 -1
- package/config/optional-features.json +2 -1
- package/dist/bookmarklet/load_inspector.js +31 -11
- package/dist/bookmarklet/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js +1135 -0
- package/dist/bookmarklet/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js.LICENSE.txt +18 -0
- package/dist/bookmarklet/panes-3-16-0/assets/chunk.524.aca67dc376e8cd35b522.js +40 -0
- package/dist/bookmarklet/panes-3-16-0/assets/chunk.582.d3d80e94c4f59dc3b65d.js +42 -0
- package/dist/bookmarklet/panes-3-16-0/assets/ember-inspector.css +997 -156
- package/dist/bookmarklet/panes-3-16-0/assets/ember-inspector.js +560 -613
- package/dist/bookmarklet/panes-3-16-0/assets/svg/ellipsis.svg +3 -3
- package/dist/bookmarklet/panes-3-16-0/assets/svg/focus-point-round.svg +9 -0
- package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-bug.svg +1 -1
- package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-components.svg +2 -2
- package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-container.svg +1 -1
- package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-data.svg +1 -1
- package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-deprecations.svg +3 -3
- package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-info.svg +3 -3
- package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-promises.svg +2 -2
- package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-render-performance.svg +2 -2
- package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-route-tree.svg +7 -7
- package/dist/bookmarklet/panes-3-16-0/assets/svg/sidebar-toggle-trailing.svg +9 -0
- package/dist/bookmarklet/panes-3-16-0/assets/vendor.css +4 -841
- package/dist/bookmarklet/panes-3-16-0/assets/vendor.js +4277 -5152
- package/dist/bookmarklet/panes-3-16-0/base-object-HAEdWjmg.js +59 -0
- package/dist/bookmarklet/panes-3-16-0/basic-B1dkgN3d.js +149 -0
- package/dist/bookmarklet/panes-3-16-0/basic-debug.js +10 -0
- package/dist/bookmarklet/panes-3-16-0/bookmarklet-BZWtwuX-.js +32 -0
- package/dist/bookmarklet/panes-3-16-0/bookmarklet-debug.js +10 -0
- package/dist/bookmarklet/panes-3-16-0/chrome-P6FSEUf1.js +10 -0
- package/dist/bookmarklet/panes-3-16-0/chrome-debug.js +10 -0
- package/dist/bookmarklet/panes-3-16-0/ember.js +166 -0
- package/dist/bookmarklet/panes-3-16-0/ember_debug.js +7 -11018
- package/dist/bookmarklet/panes-3-16-0/evented-BCTya3yE.js +62 -0
- package/dist/bookmarklet/panes-3-16-0/firefox-8F84zphP.js +30 -0
- package/dist/bookmarklet/panes-3-16-0/firefox-debug.js +10 -0
- package/dist/bookmarklet/panes-3-16-0/index.html +4 -23
- package/dist/bookmarklet/panes-3-16-0/internals-CRmXMEzb.js +12 -0
- package/dist/bookmarklet/panes-3-16-0/load-ember-debug-in-webpage-DCWcJhQm.js +29 -0
- package/dist/bookmarklet/panes-3-16-0/main.js +7669 -0
- package/dist/bookmarklet/panes-3-16-0/port.js +108 -0
- package/dist/bookmarklet/panes-3-16-0/profile-node.js +60 -0
- package/dist/bookmarklet/panes-3-16-0/promise-assembler.js +218 -0
- package/dist/bookmarklet/panes-3-16-0/runloop-6_0lpzTA.js +1138 -0
- package/dist/bookmarklet/panes-3-16-0/start-inspector-BIYQArZn.js +334 -0
- package/dist/bookmarklet/panes-3-16-0/type-check.js +119 -0
- package/dist/bookmarklet/panes-3-16-0/version.js +90 -0
- package/dist/bookmarklet/panes-3-16-0/versions.js +4 -0
- package/dist/bookmarklet/panes-3-16-0/web-extension-OWnXJ_XK.js +144 -0
- package/dist/bookmarklet/panes-3-16-0/websocket-BSUvUqER.js +58 -0
- package/dist/bookmarklet/panes-3-16-0/websocket-debug.js +10 -0
- package/dist/chrome/background.js +26 -21
- package/dist/chrome/boot.js +1 -1
- package/dist/chrome/content-script.js +12 -11
- package/dist/chrome/devtools.js +12 -3
- package/dist/chrome/manifest.json +4 -2
- package/dist/chrome/options.js +17 -12
- package/dist/chrome/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js +1135 -0
- package/dist/chrome/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js.LICENSE.txt +18 -0
- package/dist/chrome/panes-3-16-0/assets/chunk.524.aca67dc376e8cd35b522.js +40 -0
- package/dist/chrome/panes-3-16-0/assets/chunk.582.d3d80e94c4f59dc3b65d.js +42 -0
- package/dist/chrome/panes-3-16-0/assets/ember-inspector.css +997 -156
- package/dist/chrome/panes-3-16-0/assets/ember-inspector.js +560 -613
- package/dist/chrome/panes-3-16-0/assets/svg/ellipsis.svg +3 -3
- package/dist/chrome/panes-3-16-0/assets/svg/focus-point-round.svg +9 -0
- package/dist/chrome/panes-3-16-0/assets/svg/nav-bug.svg +1 -1
- package/dist/chrome/panes-3-16-0/assets/svg/nav-components.svg +2 -2
- package/dist/chrome/panes-3-16-0/assets/svg/nav-container.svg +1 -1
- package/dist/chrome/panes-3-16-0/assets/svg/nav-data.svg +1 -1
- package/dist/chrome/panes-3-16-0/assets/svg/nav-deprecations.svg +3 -3
- package/dist/chrome/panes-3-16-0/assets/svg/nav-info.svg +3 -3
- package/dist/chrome/panes-3-16-0/assets/svg/nav-promises.svg +2 -2
- package/dist/chrome/panes-3-16-0/assets/svg/nav-render-performance.svg +2 -2
- package/dist/chrome/panes-3-16-0/assets/svg/nav-route-tree.svg +7 -7
- package/dist/chrome/panes-3-16-0/assets/svg/sidebar-toggle-trailing.svg +9 -0
- package/dist/chrome/panes-3-16-0/assets/vendor.css +4 -841
- package/dist/chrome/panes-3-16-0/assets/vendor.js +4277 -5152
- package/dist/chrome/panes-3-16-0/base-object-HAEdWjmg.js +59 -0
- package/dist/chrome/panes-3-16-0/basic-B1dkgN3d.js +149 -0
- package/dist/chrome/panes-3-16-0/basic-debug.js +10 -0
- package/dist/chrome/panes-3-16-0/bookmarklet-BZWtwuX-.js +32 -0
- package/dist/chrome/panes-3-16-0/bookmarklet-debug.js +10 -0
- package/dist/chrome/panes-3-16-0/chrome-P6FSEUf1.js +10 -0
- package/dist/chrome/panes-3-16-0/chrome-debug.js +10 -0
- package/dist/chrome/panes-3-16-0/ember.js +166 -0
- package/dist/chrome/panes-3-16-0/ember_debug.js +7 -11018
- package/dist/chrome/panes-3-16-0/evented-BCTya3yE.js +62 -0
- package/dist/chrome/panes-3-16-0/firefox-8F84zphP.js +30 -0
- package/dist/chrome/panes-3-16-0/firefox-debug.js +10 -0
- package/dist/chrome/panes-3-16-0/index.html +4 -23
- package/dist/chrome/panes-3-16-0/internals-CRmXMEzb.js +12 -0
- package/dist/chrome/panes-3-16-0/load-ember-debug-in-webpage-DCWcJhQm.js +29 -0
- package/dist/chrome/panes-3-16-0/main.js +7669 -0
- package/dist/chrome/panes-3-16-0/port.js +108 -0
- package/dist/chrome/panes-3-16-0/profile-node.js +60 -0
- package/dist/chrome/panes-3-16-0/promise-assembler.js +218 -0
- package/dist/chrome/panes-3-16-0/runloop-6_0lpzTA.js +1138 -0
- package/dist/chrome/panes-3-16-0/start-inspector-BIYQArZn.js +334 -0
- package/dist/chrome/panes-3-16-0/type-check.js +119 -0
- package/dist/chrome/panes-3-16-0/version.js +90 -0
- package/dist/chrome/panes-3-16-0/versions.js +4 -0
- package/dist/chrome/panes-3-16-0/web-extension-OWnXJ_XK.js +144 -0
- package/dist/chrome/panes-3-16-0/websocket-BSUvUqER.js +58 -0
- package/dist/chrome/panes-3-16-0/websocket-debug.js +10 -0
- package/dist/chrome/scripts/in-page-script.js +19 -13
- package/dist/firefox/background.js +26 -21
- package/dist/firefox/boot.js +1 -1
- package/dist/firefox/content-script.js +12 -11
- package/dist/firefox/devtools.js +12 -3
- package/dist/firefox/manifest.json +4 -2
- package/dist/firefox/options.js +17 -12
- package/dist/firefox/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js +1135 -0
- package/dist/firefox/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js.LICENSE.txt +18 -0
- package/dist/firefox/panes-3-16-0/assets/chunk.524.aca67dc376e8cd35b522.js +40 -0
- package/dist/firefox/panes-3-16-0/assets/chunk.582.d3d80e94c4f59dc3b65d.js +42 -0
- package/dist/firefox/panes-3-16-0/assets/ember-inspector.css +997 -156
- package/dist/firefox/panes-3-16-0/assets/ember-inspector.js +560 -613
- package/dist/firefox/panes-3-16-0/assets/svg/ellipsis.svg +3 -3
- package/dist/firefox/panes-3-16-0/assets/svg/focus-point-round.svg +9 -0
- package/dist/firefox/panes-3-16-0/assets/svg/nav-bug.svg +1 -1
- package/dist/firefox/panes-3-16-0/assets/svg/nav-components.svg +2 -2
- package/dist/firefox/panes-3-16-0/assets/svg/nav-container.svg +1 -1
- package/dist/firefox/panes-3-16-0/assets/svg/nav-data.svg +1 -1
- package/dist/firefox/panes-3-16-0/assets/svg/nav-deprecations.svg +3 -3
- package/dist/firefox/panes-3-16-0/assets/svg/nav-info.svg +3 -3
- package/dist/firefox/panes-3-16-0/assets/svg/nav-promises.svg +2 -2
- package/dist/firefox/panes-3-16-0/assets/svg/nav-render-performance.svg +2 -2
- package/dist/firefox/panes-3-16-0/assets/svg/nav-route-tree.svg +7 -7
- package/dist/firefox/panes-3-16-0/assets/svg/sidebar-toggle-trailing.svg +9 -0
- package/dist/firefox/panes-3-16-0/assets/vendor.css +4 -841
- package/dist/firefox/panes-3-16-0/assets/vendor.js +4277 -5152
- package/dist/firefox/panes-3-16-0/base-object-HAEdWjmg.js +59 -0
- package/dist/firefox/panes-3-16-0/basic-B1dkgN3d.js +149 -0
- package/dist/firefox/panes-3-16-0/basic-debug.js +10 -0
- package/dist/firefox/panes-3-16-0/bookmarklet-BZWtwuX-.js +32 -0
- package/dist/firefox/panes-3-16-0/bookmarklet-debug.js +10 -0
- package/dist/firefox/panes-3-16-0/chrome-P6FSEUf1.js +10 -0
- package/dist/firefox/panes-3-16-0/chrome-debug.js +10 -0
- package/dist/firefox/panes-3-16-0/ember.js +166 -0
- package/dist/firefox/panes-3-16-0/ember_debug.js +7 -11018
- package/dist/firefox/panes-3-16-0/evented-BCTya3yE.js +62 -0
- package/dist/firefox/panes-3-16-0/firefox-8F84zphP.js +30 -0
- package/dist/firefox/panes-3-16-0/firefox-debug.js +10 -0
- package/dist/firefox/panes-3-16-0/index.html +4 -23
- package/dist/firefox/panes-3-16-0/internals-CRmXMEzb.js +12 -0
- package/dist/firefox/panes-3-16-0/load-ember-debug-in-webpage-DCWcJhQm.js +29 -0
- package/dist/firefox/panes-3-16-0/main.js +7669 -0
- package/dist/firefox/panes-3-16-0/port.js +108 -0
- package/dist/firefox/panes-3-16-0/profile-node.js +60 -0
- package/dist/firefox/panes-3-16-0/promise-assembler.js +218 -0
- package/dist/firefox/panes-3-16-0/runloop-6_0lpzTA.js +1138 -0
- package/dist/firefox/panes-3-16-0/start-inspector-BIYQArZn.js +334 -0
- package/dist/firefox/panes-3-16-0/type-check.js +119 -0
- package/dist/firefox/panes-3-16-0/version.js +90 -0
- package/dist/firefox/panes-3-16-0/versions.js +4 -0
- package/dist/firefox/panes-3-16-0/web-extension-OWnXJ_XK.js +144 -0
- package/dist/firefox/panes-3-16-0/websocket-BSUvUqER.js +58 -0
- package/dist/firefox/panes-3-16-0/websocket-debug.js +10 -0
- package/dist/firefox/scripts/in-page-script.js +19 -13
- package/dist/websocket/assets/chunk.443.86a005e528b587663b78.js +1135 -0
- package/dist/websocket/assets/chunk.443.86a005e528b587663b78.js.LICENSE.txt +18 -0
- package/dist/websocket/assets/chunk.524.aca67dc376e8cd35b522.js +40 -0
- package/dist/websocket/assets/chunk.582.d3d80e94c4f59dc3b65d.js +42 -0
- package/dist/websocket/assets/ember-inspector.css +997 -156
- package/dist/websocket/assets/ember-inspector.js +560 -613
- package/dist/websocket/assets/svg/ellipsis.svg +3 -3
- package/dist/websocket/assets/svg/focus-point-round.svg +9 -0
- package/dist/websocket/assets/svg/nav-bug.svg +1 -1
- package/dist/websocket/assets/svg/nav-components.svg +2 -2
- package/dist/websocket/assets/svg/nav-container.svg +1 -1
- package/dist/websocket/assets/svg/nav-data.svg +1 -1
- package/dist/websocket/assets/svg/nav-deprecations.svg +3 -3
- package/dist/websocket/assets/svg/nav-info.svg +3 -3
- package/dist/websocket/assets/svg/nav-promises.svg +2 -2
- package/dist/websocket/assets/svg/nav-render-performance.svg +2 -2
- package/dist/websocket/assets/svg/nav-route-tree.svg +7 -7
- package/dist/websocket/assets/svg/sidebar-toggle-trailing.svg +9 -0
- package/dist/websocket/assets/vendor.css +4 -841
- package/dist/websocket/assets/vendor.js +4277 -5152
- package/dist/websocket/base-object-HAEdWjmg.js +59 -0
- package/dist/websocket/basic-B1dkgN3d.js +149 -0
- package/dist/websocket/basic-debug.js +10 -0
- package/dist/websocket/bookmarklet-BZWtwuX-.js +32 -0
- package/dist/websocket/bookmarklet-debug.js +10 -0
- package/dist/websocket/chrome-P6FSEUf1.js +10 -0
- package/dist/websocket/chrome-debug.js +10 -0
- package/dist/websocket/ember.js +166 -0
- package/dist/websocket/ember_debug.js +7 -11018
- package/dist/websocket/evented-BCTya3yE.js +62 -0
- package/dist/websocket/firefox-8F84zphP.js +30 -0
- package/dist/websocket/firefox-debug.js +10 -0
- package/dist/websocket/index.html +4 -23
- package/dist/websocket/internals-CRmXMEzb.js +12 -0
- package/dist/websocket/load-ember-debug-in-webpage-DCWcJhQm.js +29 -0
- package/dist/websocket/main.js +7669 -0
- package/dist/websocket/port.js +108 -0
- package/dist/websocket/profile-node.js +60 -0
- package/dist/websocket/promise-assembler.js +218 -0
- package/dist/websocket/runloop-6_0lpzTA.js +1138 -0
- package/dist/websocket/start-inspector-BIYQArZn.js +334 -0
- package/dist/websocket/type-check.js +119 -0
- package/dist/websocket/version.js +90 -0
- package/dist/websocket/versions.js +4 -0
- package/dist/websocket/web-extension-OWnXJ_XK.js +144 -0
- package/dist/websocket/websocket-BSUvUqER.js +58 -0
- package/dist/websocket/websocket-debug.js +10 -0
- package/ember-cli-build.js +31 -140
- package/ember_debug/adapters/basic.js +10 -29
- package/ember_debug/adapters/bookmarklet.js +1 -0
- package/ember_debug/adapters/firefox.js +3 -3
- package/ember_debug/adapters/web-extension.js +6 -5
- package/ember_debug/adapters/websocket.js +2 -2
- package/ember_debug/babel.config.cjs +11 -0
- package/ember_debug/container-debug.js +1 -1
- package/ember_debug/data-debug.js +7 -8
- package/ember_debug/debug-port.js +1 -1
- package/ember_debug/deprecation-debug.js +14 -14
- package/ember_debug/entrypoints/basic-debug.js +10 -0
- package/ember_debug/entrypoints/bookmarklet-debug.js +10 -0
- package/ember_debug/entrypoints/chrome-debug.js +10 -0
- package/ember_debug/entrypoints/firefox-debug.js +10 -0
- package/ember_debug/entrypoints/websocket-debug.js +10 -0
- package/ember_debug/general-debug.js +4 -4
- package/ember_debug/lib/boot-ember-inspector.js +9 -0
- package/ember_debug/lib/get-applications.js +28 -0
- package/ember_debug/lib/load-ember-debug-in-webpage.js +32 -0
- package/ember_debug/lib/send-apps.js +14 -0
- package/ember_debug/lib/send-version-miss.js +38 -0
- package/ember_debug/lib/setup-instance-initializer.js +17 -0
- package/ember_debug/lib/start-inspector.js +195 -0
- package/ember_debug/lib/version-test.js +73 -0
- package/ember_debug/lib/versions.js +3 -0
- package/ember_debug/libs/capture-render-tree.js +1 -2
- package/ember_debug/libs/promise-assembler.js +5 -4
- package/ember_debug/libs/render-tree.js +37 -44
- package/ember_debug/libs/source-map.js +7 -6
- package/ember_debug/libs/view-inspection.js +25 -17
- package/ember_debug/main.js +18 -21
- package/ember_debug/models/profile-manager.js +6 -6
- package/ember_debug/models/profile-node.js +1 -1
- package/ember_debug/models/promise.js +2 -2
- package/ember_debug/object-inspector.js +74 -65
- package/ember_debug/package.json +27 -0
- package/ember_debug/port.js +5 -4
- package/ember_debug/promise-debug.js +5 -5
- package/ember_debug/render-debug.js +5 -5
- package/ember_debug/rollup.config.js +24 -0
- package/ember_debug/route-debug.js +10 -9
- package/ember_debug/services/session.js +2 -2
- package/ember_debug/utils/classify.js +1 -1
- package/ember_debug/utils/ember/object/internals.js +1 -11
- package/ember_debug/utils/ember/own-runloop.js +1 -1
- package/ember_debug/utils/ember/runloop.js +7 -10
- package/ember_debug/utils/ember-object-names.js +11 -9
- package/ember_debug/utils/ember.js +222 -40
- package/ember_debug/utils/evented.js +1 -1
- package/ember_debug/utils/get-object-name.js +3 -3
- package/ember_debug/utils/type-check.js +9 -5
- package/ember_debug/view-debug.js +12 -6
- package/eslint.config.mjs +173 -0
- package/gulpfile.js +1 -1
- package/package.json +97 -95
- package/patches/ember-cli-inject-live-reload.patch +16 -0
- package/pnpm-workspace.yaml +3 -0
- package/public/assets/svg/ellipsis.svg +3 -3
- package/public/assets/svg/focus-point-round.svg +9 -0
- package/public/assets/svg/nav-bug.svg +1 -1
- package/public/assets/svg/nav-components.svg +2 -2
- package/public/assets/svg/nav-container.svg +1 -1
- package/public/assets/svg/nav-data.svg +1 -1
- package/public/assets/svg/nav-deprecations.svg +3 -3
- package/public/assets/svg/nav-info.svg +3 -3
- package/public/assets/svg/nav-promises.svg +2 -2
- package/public/assets/svg/nav-render-performance.svg +2 -2
- package/public/assets/svg/nav-route-tree.svg +7 -7
- package/public/assets/svg/sidebar-toggle-trailing.svg +9 -0
- package/scripts/download-panes.js +1 -1
- package/skeletons/bookmarklet/load_inspector.js +31 -11
- package/skeletons/web-extension/background.js +26 -21
- package/skeletons/web-extension/boot.js +1 -1
- package/skeletons/web-extension/content-script.js +12 -11
- package/skeletons/web-extension/devtools.js +12 -3
- package/skeletons/web-extension/manifest.json +3 -1
- package/skeletons/web-extension/options.js +17 -12
- package/skeletons/web-extension/scripts/in-page-script.js +19 -13
- package/testem.js +0 -1
- package/tests/acceptance/app-picker-test.js +4 -4
- package/tests/acceptance/component-tree-test.js +96 -57
- package/tests/acceptance/container-test.js +0 -2
- package/tests/acceptance/data-test.js +14 -11
- package/tests/acceptance/deprecation-test.js +8 -12
- package/tests/acceptance/info-test.js +2 -2
- package/tests/acceptance/object-inspector-test.js +62 -110
- package/tests/acceptance/promise-test.js +1 -11
- package/tests/acceptance/render-tree-test.js +2 -2
- package/tests/acceptance/route-tree-test.js +12 -14
- package/tests/acceptance/whats-new-test.js +11 -11
- package/tests/ember_debug/container-debug-test.js +5 -14
- package/tests/ember_debug/deprecation-debug-test.js +15 -6
- package/tests/ember_debug/ember-data-test.js +7 -1
- package/tests/ember_debug/ember-debug-test.js +13 -13
- package/tests/ember_debug/object-inspector-test.js +115 -50
- package/tests/ember_debug/profile-manager-test.js +153 -170
- package/tests/ember_debug/profile-node-test.js +9 -5
- package/tests/ember_debug/promise-assembler-test.js +18 -10
- package/tests/ember_debug/promise-debug-test.js +19 -15
- package/tests/ember_debug/render-debug-test.js +8 -1
- package/tests/ember_debug/route-debug-test.js +14 -8
- package/tests/ember_debug/view-debug-test.js +267 -183
- package/tests/helpers/{index.js → index.ts} +6 -5
- package/tests/helpers/setup-ember-debug-test.js +22 -2
- package/tests/index.html +1 -2
- package/tests/integration/injection-test.js +37 -81
- package/tests/test-adapter.js +15 -15
- package/tests/test-helper.js +6 -4
- package/tests/unit/check-current-route-test.js +0 -4
- package/tests/unit/resizable-columns-test.js +53 -51
- package/tests/unit/utils/parse-text-test.js +3 -3
- package/tests/unit/utils/search-match-test.js +5 -5
- package/tests/unit/utils/type-check-test.js +27 -0
- package/tsconfig.json +3 -1
- package/types/ember-inspector/index.d.ts +2 -1
- package/types/global.d.ts +1 -7
- package/.eslintignore +0 -33
- package/.eslintrc.js +0 -86
- package/app/components/list-content.js +0 -130
- package/app/controllers/promise-tree.js +0 -130
- package/app/libs/promise-assembler.js +0 -169
- package/app/routes/model-types.js +0 -47
- package/app/routes/promise-tree.js +0 -48
- package/app/routes/records.js +0 -55
- package/app/routes/render-tree.js +0 -66
- package/app/services/adapters/websocket.js +0 -31
- package/app/services/layout.js +0 -39
- package/app/services/port.js +0 -90
- package/dist/bookmarklet/panes-3-16-0/assets/chunk.143.76a242242ec46a377266.js +0 -28
- package/dist/bookmarklet/panes-3-16-0/assets/chunk.178.b6064b368cf24cc346ec.js +0 -9
- package/dist/bookmarklet/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js +0 -2620
- package/dist/bookmarklet/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js.LICENSE.txt +0 -67
- package/dist/bookmarklet/panes-3-16-0/assets/fonts/Inter-Bold.woff +0 -0
- package/dist/bookmarklet/panes-3-16-0/assets/fonts/Inter-Bold.woff2 +0 -0
- package/dist/bookmarklet/panes-3-16-0/assets/fonts/Inter-Regular.woff +0 -0
- package/dist/bookmarklet/panes-3-16-0/assets/fonts/Inter-Regular.woff2 +0 -0
- package/dist/chrome/panes-3-16-0/assets/chunk.143.76a242242ec46a377266.js +0 -28
- package/dist/chrome/panes-3-16-0/assets/chunk.178.b6064b368cf24cc346ec.js +0 -9
- package/dist/chrome/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js +0 -2620
- package/dist/chrome/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js.LICENSE.txt +0 -67
- package/dist/chrome/panes-3-16-0/assets/fonts/Inter-Bold.woff +0 -0
- package/dist/chrome/panes-3-16-0/assets/fonts/Inter-Bold.woff2 +0 -0
- package/dist/chrome/panes-3-16-0/assets/fonts/Inter-Regular.woff +0 -0
- package/dist/chrome/panes-3-16-0/assets/fonts/Inter-Regular.woff2 +0 -0
- package/dist/firefox/panes-3-16-0/assets/chunk.143.76a242242ec46a377266.js +0 -28
- package/dist/firefox/panes-3-16-0/assets/chunk.178.b6064b368cf24cc346ec.js +0 -9
- package/dist/firefox/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js +0 -2620
- package/dist/firefox/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js.LICENSE.txt +0 -67
- package/dist/firefox/panes-3-16-0/assets/fonts/Inter-Bold.woff +0 -0
- package/dist/firefox/panes-3-16-0/assets/fonts/Inter-Bold.woff2 +0 -0
- package/dist/firefox/panes-3-16-0/assets/fonts/Inter-Regular.woff +0 -0
- package/dist/firefox/panes-3-16-0/assets/fonts/Inter-Regular.woff2 +0 -0
- package/dist/websocket/assets/chunk.143.76a242242ec46a377266.js +0 -28
- package/dist/websocket/assets/chunk.178.b6064b368cf24cc346ec.js +0 -9
- package/dist/websocket/assets/chunk.359.0be5d21f60d2b5d6d423.js +0 -2620
- package/dist/websocket/assets/chunk.359.0be5d21f60d2b5d6d423.js.LICENSE.txt +0 -67
- package/dist/websocket/assets/fonts/Inter-Bold.woff +0 -0
- package/dist/websocket/assets/fonts/Inter-Bold.woff2 +0 -0
- package/dist/websocket/assets/fonts/Inter-Regular.woff +0 -0
- package/dist/websocket/assets/fonts/Inter-Regular.woff2 +0 -0
- package/ember_debug/.eslintrc.js +0 -13
- package/ember_debug/utils/ember/debug.js +0 -20
- package/ember_debug/utils/ember/instrumentation.js +0 -11
- package/ember_debug/utils/ember/loader.js +0 -22
- package/ember_debug/utils/rsvp.js +0 -20
- package/ember_debug/vendor/loader.js +0 -54
- package/ember_debug/vendor/startup-wrapper.js +0 -399
- package/lib/ui/addon/styles/_object-inspector-toggle.scss +0 -12
- package/lib/ui/addon/styles/addon.scss +0 -13
- package/lib/ui/addon/styles/toolbar/_icon-button.scss +0 -61
- package/lib/ui/app/components/ui/disclosure-triangle.js +0 -1
- package/lib/ui/app/components/ui/disclosure.js +0 -1
- package/lib/ui/app/components/ui/drag-handle.js +0 -1
- package/lib/ui/app/components/ui/draggable-column.js +0 -1
- package/lib/ui/app/components/ui/empty-message.js +0 -1
- package/lib/ui/app/components/ui/error-page.js +0 -1
- package/lib/ui/app/components/ui/open-links-in-new-window.js +0 -1
- package/lib/ui/app/components/ui/resizable-column.js +0 -1
- package/lib/ui/app/components/ui/send-to-console.js +0 -1
- package/lib/ui/app/components/ui/toolbar-clear-button.js +0 -1
- package/lib/ui/app/components/ui/toolbar-divider.js +0 -1
- package/lib/ui/app/components/ui/toolbar-reload-button.js +0 -1
- package/lib/ui/app/components/ui/toolbar-search-field.js +0 -1
- package/lib/ui/app/components/ui/warning-message.js +0 -1
- package/lib/ui/index.js +0 -34
- package/lib/ui/package.json +0 -13
- package/public/assets/fonts/Inter-Bold.woff +0 -0
- package/public/assets/fonts/Inter-Bold.woff2 +0 -0
- package/public/assets/fonts/Inter-Regular.woff +0 -0
- package/public/assets/fonts/Inter-Regular.woff2 +0 -0
- package/tests/helpers/trigger-port.js +0 -6
- /package/app/{app.js → app.ts} +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/disclosure-triangle.hbs +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/disclosure.hbs +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/disclosure.js +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/draggable-column.hbs +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/draggable-column.js +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/open-links-in-new-window.hbs +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/open-links-in-new-window.js +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/resizable-column.hbs +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/send-to-console.hbs +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/toolbar-divider.hbs +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/toolbar-search-field.js +0 -0
- /package/{lib/ui/addon/components → app/components/ui}/warning-message.hbs +0 -0
- /package/app/controllers/{info.js → info.ts} +0 -0
- /package/app/services/adapters/{firefox.js → firefox.ts} +0 -0
- /package/{lib/ui/addon/styles → app/styles/ui}/_goto-source.scss +0 -0
- /package/{lib/ui/addon/styles → app/styles/ui}/_warning.scss +0 -0
- /package/{lib/ui/addon/styles → app/styles/ui}/toolbar/_divider.scss +0 -0
|
@@ -84,7 +84,7 @@ function TopLevel({ id }, ...children) {
|
|
|
84
84
|
instance: null,
|
|
85
85
|
template: 'packages/@ember/-internals/glimmer/lib/templates/outlet.hbs',
|
|
86
86
|
},
|
|
87
|
-
...children
|
|
87
|
+
...children,
|
|
88
88
|
);
|
|
89
89
|
}
|
|
90
90
|
|
|
@@ -109,7 +109,7 @@ function getRenderTree({ withChildren, withManyChildren } = {}) {
|
|
|
109
109
|
if (withChildren) {
|
|
110
110
|
children.push(
|
|
111
111
|
Component({ id: 5, name: 'sub-task' }),
|
|
112
|
-
Component({ id: 6, name: 'sub-task' })
|
|
112
|
+
Component({ id: 6, name: 'sub-task' }),
|
|
113
113
|
);
|
|
114
114
|
}
|
|
115
115
|
if (withManyChildren) {
|
|
@@ -133,11 +133,11 @@ function getRenderTree({ withChildren, withManyChildren } = {}) {
|
|
|
133
133
|
args: Args({ names: ['subTasks'], positionals: 0 }),
|
|
134
134
|
instance: Serialized('ember789'),
|
|
135
135
|
},
|
|
136
|
-
...children
|
|
137
|
-
)
|
|
138
|
-
)
|
|
139
|
-
)
|
|
140
|
-
)
|
|
136
|
+
...children,
|
|
137
|
+
),
|
|
138
|
+
),
|
|
139
|
+
),
|
|
140
|
+
),
|
|
141
141
|
),
|
|
142
142
|
];
|
|
143
143
|
}
|
|
@@ -165,7 +165,7 @@ module('Component Tab', function (hooks) {
|
|
|
165
165
|
assert.strictEqual(
|
|
166
166
|
expandedNodes.length,
|
|
167
167
|
3,
|
|
168
|
-
'all nodes should be expanded except the leaf node'
|
|
168
|
+
'all nodes should be expanded except the leaf node',
|
|
169
169
|
);
|
|
170
170
|
|
|
171
171
|
let names = [];
|
|
@@ -183,7 +183,7 @@ module('Component Tab', function (hooks) {
|
|
|
183
183
|
'TodoList',
|
|
184
184
|
'TodoItem @subTasks ={{ ... }}',
|
|
185
185
|
],
|
|
186
|
-
'expected names for all views/components'
|
|
186
|
+
'expected names for all views/components',
|
|
187
187
|
);
|
|
188
188
|
});
|
|
189
189
|
|
|
@@ -193,7 +193,7 @@ module('Component Tab', function (hooks) {
|
|
|
193
193
|
let treeNodes = findAll('.component-tree-item');
|
|
194
194
|
assert.strictEqual(treeNodes.length, 4, 'expected some tree nodes');
|
|
195
195
|
|
|
196
|
-
let expanders = findAll('.component-tree-
|
|
196
|
+
let expanders = findAll('.component-tree-item-expand');
|
|
197
197
|
let expanderEl = expanders[expanders.length - 1];
|
|
198
198
|
await click(expanderEl);
|
|
199
199
|
|
|
@@ -230,8 +230,6 @@ module('Component Tab', function (hooks) {
|
|
|
230
230
|
});
|
|
231
231
|
|
|
232
232
|
test('It allows users to navigate nodes with arrow keys', async function (assert) {
|
|
233
|
-
assert.expect(6);
|
|
234
|
-
|
|
235
233
|
await visit('/component-tree');
|
|
236
234
|
|
|
237
235
|
// select first node with down arrow key
|
|
@@ -286,31 +284,31 @@ module('Component Tab', function (hooks) {
|
|
|
286
284
|
test('It allows users to expand and collapse children with alt key', async function (assert) {
|
|
287
285
|
await visit('/component-tree');
|
|
288
286
|
|
|
289
|
-
let expanders = findAll('.component-tree-
|
|
287
|
+
let expanders = findAll('.component-tree-item-expand.expanded');
|
|
290
288
|
assert.strictEqual(
|
|
291
289
|
expanders.length,
|
|
292
290
|
3,
|
|
293
|
-
'disclosure triangles all in expanded state'
|
|
291
|
+
'disclosure triangles all in expanded state',
|
|
294
292
|
);
|
|
295
293
|
|
|
296
294
|
// Click second component with alt key;
|
|
297
295
|
// this should collapse itself and children
|
|
298
296
|
let expanderEl = expanders[1];
|
|
299
297
|
await click(expanderEl, { altKey: true });
|
|
300
|
-
expanders = findAll('.component-tree-
|
|
298
|
+
expanders = findAll('.component-tree-item-expand.expanded');
|
|
301
299
|
assert.strictEqual(
|
|
302
300
|
expanders.length,
|
|
303
301
|
1,
|
|
304
|
-
'clicked disclosure triangle no longer expanded'
|
|
302
|
+
'clicked disclosure triangle no longer expanded',
|
|
305
303
|
);
|
|
306
304
|
|
|
307
|
-
expanders = findAll('.component-tree-
|
|
305
|
+
expanders = findAll('.component-tree-item-expand');
|
|
308
306
|
expanderEl = expanders[1];
|
|
309
307
|
await click(expanderEl);
|
|
310
308
|
|
|
311
309
|
// After expanding second component without alt key
|
|
312
310
|
// the children should be collapsed
|
|
313
|
-
expanders = findAll('.component-tree-
|
|
311
|
+
expanders = findAll('.component-tree-item-expand');
|
|
314
312
|
expanderEl = expanders[2];
|
|
315
313
|
assert
|
|
316
314
|
.dom(expanderEl)
|
|
@@ -335,10 +333,63 @@ module('Component Tab', function (hooks) {
|
|
|
335
333
|
assert.deepEqual(
|
|
336
334
|
visibleComponentNames,
|
|
337
335
|
['application route', 'todos route', 'TodoList'],
|
|
338
|
-
'expected names for all views/components'
|
|
336
|
+
'expected names for all views/components',
|
|
339
337
|
);
|
|
340
338
|
});
|
|
341
339
|
|
|
340
|
+
test('it should only show parents and children of selected item in focus mode', async function (assert) {
|
|
341
|
+
await visit('/component-tree');
|
|
342
|
+
|
|
343
|
+
function findTreeItem(children, id) {
|
|
344
|
+
for (const child of children) {
|
|
345
|
+
if (child.id.includes(`render-node:${id}`)) {
|
|
346
|
+
return child;
|
|
347
|
+
}
|
|
348
|
+
const found = findTreeItem(child.children, id);
|
|
349
|
+
if (found) {
|
|
350
|
+
return found;
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
function getCustomRenderTree() {
|
|
356
|
+
const tree = getRenderTree({ withChildren: true });
|
|
357
|
+
const subtask = findTreeItem(tree, 6);
|
|
358
|
+
const todo = findTreeItem(tree, 3);
|
|
359
|
+
subtask.children.push(Component({ id: 7, name: 'sub-task-child' }));
|
|
360
|
+
subtask.children.push(Component({ id: 8, name: 'sub-task-child' }));
|
|
361
|
+
todo.children.push(Component({ id: 9, name: 'todo-list-2' }));
|
|
362
|
+
return tree;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
await sendMessage({
|
|
366
|
+
type: 'view:renderTree',
|
|
367
|
+
tree: getCustomRenderTree(),
|
|
368
|
+
});
|
|
369
|
+
|
|
370
|
+
await rerender();
|
|
371
|
+
|
|
372
|
+
let treeNodes = findAll('.component-tree-item');
|
|
373
|
+
assert.strictEqual(treeNodes.length, 5, 'expected all tree nodes');
|
|
374
|
+
|
|
375
|
+
let expanders = findAll('.component-tree-item-expand');
|
|
376
|
+
let expanderEl = expanders[expanders.length - 1];
|
|
377
|
+
await click(expanderEl);
|
|
378
|
+
|
|
379
|
+
treeNodes = findAll('.component-tree-item');
|
|
380
|
+
const subTask = treeNodes
|
|
381
|
+
.filter((t) => t.textContent.toLowerCase().includes('subtask'))
|
|
382
|
+
.at(-1);
|
|
383
|
+
|
|
384
|
+
respondWith('view:showInspection', false, { count: 1 });
|
|
385
|
+
await click(subTask);
|
|
386
|
+
|
|
387
|
+
await click('[data-test-toggle-focus]');
|
|
388
|
+
|
|
389
|
+
treeNodes = findAll('.component-tree-item');
|
|
390
|
+
assert.strictEqual(treeNodes.length, 6, 'expected all tree nodes');
|
|
391
|
+
});
|
|
392
|
+
|
|
342
393
|
test('It should clear the search filter when the clear button is clicked', async function (assert) {
|
|
343
394
|
await visit('/component-tree');
|
|
344
395
|
|
|
@@ -357,7 +408,7 @@ module('Component Tab', function (hooks) {
|
|
|
357
408
|
test('It should update the view tree when the port triggers a change, preserving the expanded state of existing nodes', async function (assert) {
|
|
358
409
|
await visit('/component-tree');
|
|
359
410
|
|
|
360
|
-
let expanders = findAll('.component-tree-
|
|
411
|
+
let expanders = findAll('.component-tree-item-expand');
|
|
361
412
|
let expanderEl = expanders[expanders.length - 1];
|
|
362
413
|
await click(expanderEl);
|
|
363
414
|
|
|
@@ -385,7 +436,7 @@ module('Component Tab', function (hooks) {
|
|
|
385
436
|
.exists({ count: 4 }, 'the last node should still be collapsed');
|
|
386
437
|
|
|
387
438
|
assert
|
|
388
|
-
.dom('.component-tree-
|
|
439
|
+
.dom('.component-tree-item-expand')
|
|
389
440
|
.exists({ count: 3 }, 'last item should not have expander yet');
|
|
390
441
|
|
|
391
442
|
// send a view tree with children
|
|
@@ -395,14 +446,14 @@ module('Component Tab', function (hooks) {
|
|
|
395
446
|
});
|
|
396
447
|
|
|
397
448
|
assert
|
|
398
|
-
.dom('.component-tree-
|
|
449
|
+
.dom('.component-tree-item-expand')
|
|
399
450
|
.exists({ count: 4 }, 'it should have a new expander');
|
|
400
451
|
|
|
401
452
|
assert
|
|
402
453
|
.dom('.component-tree-item')
|
|
403
454
|
.exists({ count: 4 }, 'the last node should still be collapsed');
|
|
404
455
|
|
|
405
|
-
let expanders = findAll('.component-tree-
|
|
456
|
+
let expanders = findAll('.component-tree-item-expand');
|
|
406
457
|
let expanderEl = expanders[expanders.length - 1];
|
|
407
458
|
await click(expanderEl);
|
|
408
459
|
|
|
@@ -437,14 +488,14 @@ module('Component Tab', function (hooks) {
|
|
|
437
488
|
await settled();
|
|
438
489
|
|
|
439
490
|
assert
|
|
440
|
-
.dom('.component-tree-item
|
|
491
|
+
.dom('.component-tree-item-pinned')
|
|
441
492
|
.exists({ count: 1 }, 'it should pinn the selected item');
|
|
442
493
|
|
|
443
494
|
assert.true(
|
|
444
495
|
isInViewport(
|
|
445
|
-
document.getElementsByClassName('component-tree-item
|
|
496
|
+
document.getElementsByClassName('component-tree-item-pinned').item(0),
|
|
446
497
|
),
|
|
447
|
-
'it should show the pinned item'
|
|
498
|
+
'it should show the pinned item',
|
|
448
499
|
);
|
|
449
500
|
|
|
450
501
|
await sendMessage({
|
|
@@ -455,16 +506,16 @@ module('Component Tab', function (hooks) {
|
|
|
455
506
|
await settled();
|
|
456
507
|
|
|
457
508
|
assert
|
|
458
|
-
.dom('.component-tree-item
|
|
509
|
+
.dom('.component-tree-item-highlighted')
|
|
459
510
|
.exists({ count: 1 }, 'it should show the previewing item');
|
|
460
511
|
|
|
461
512
|
assert.true(
|
|
462
513
|
isInViewport(
|
|
463
514
|
document
|
|
464
|
-
.getElementsByClassName('component-tree-item
|
|
465
|
-
.item(0)
|
|
515
|
+
.getElementsByClassName('component-tree-item-highlighted')
|
|
516
|
+
.item(0),
|
|
466
517
|
),
|
|
467
|
-
'it should show the preview item'
|
|
518
|
+
'it should show the preview item',
|
|
468
519
|
);
|
|
469
520
|
|
|
470
521
|
await sendMessage({
|
|
@@ -475,10 +526,10 @@ module('Component Tab', function (hooks) {
|
|
|
475
526
|
await settled();
|
|
476
527
|
|
|
477
528
|
assert
|
|
478
|
-
.dom('.component-tree-item
|
|
529
|
+
.dom('.component-tree-item-pinned')
|
|
479
530
|
.exists(
|
|
480
531
|
{ count: 0 },
|
|
481
|
-
'it should not scroll back to the pinned component after preview finished'
|
|
532
|
+
'it should not scroll back to the pinned component after preview finished',
|
|
482
533
|
);
|
|
483
534
|
|
|
484
535
|
await sendMessage({
|
|
@@ -489,10 +540,10 @@ module('Component Tab', function (hooks) {
|
|
|
489
540
|
await settled();
|
|
490
541
|
|
|
491
542
|
assert
|
|
492
|
-
.dom('.component-tree-item
|
|
543
|
+
.dom('.component-tree-item-pinned')
|
|
493
544
|
.exists(
|
|
494
545
|
{ count: 0 },
|
|
495
|
-
'it should not scroll back to the pinned component after new render tree'
|
|
546
|
+
'it should not scroll back to the pinned component after new render tree',
|
|
496
547
|
);
|
|
497
548
|
|
|
498
549
|
const scrollTarget = document
|
|
@@ -515,20 +566,18 @@ module('Component Tab', function (hooks) {
|
|
|
515
566
|
await settled();
|
|
516
567
|
|
|
517
568
|
assert
|
|
518
|
-
.dom('.component-tree-item
|
|
569
|
+
.dom('.component-tree-item-pinned')
|
|
519
570
|
.exists({ count: 1 }, 'it should show the pinned item after scrolling');
|
|
520
571
|
|
|
521
572
|
assert.true(
|
|
522
573
|
isInViewport(
|
|
523
|
-
document.getElementsByClassName('component-tree-item
|
|
574
|
+
document.getElementsByClassName('component-tree-item-pinned').item(0),
|
|
524
575
|
),
|
|
525
|
-
'it should show the pinned item'
|
|
576
|
+
'it should show the pinned item',
|
|
526
577
|
);
|
|
527
578
|
});
|
|
528
579
|
|
|
529
580
|
test('Previewing / showing a view on the client', async function (assert) {
|
|
530
|
-
assert.expect(2);
|
|
531
|
-
|
|
532
581
|
await visit('/component-tree');
|
|
533
582
|
|
|
534
583
|
respondWith('view:showInspection', ({ id, pin }) => {
|
|
@@ -545,8 +594,6 @@ module('Component Tab', function (hooks) {
|
|
|
545
594
|
});
|
|
546
595
|
|
|
547
596
|
test('Scrolling an element into view', async function (assert) {
|
|
548
|
-
assert.expect(1);
|
|
549
|
-
|
|
550
597
|
await visit('/component-tree');
|
|
551
598
|
|
|
552
599
|
respondWith('view:scrollIntoView', ({ id }) => {
|
|
@@ -558,8 +605,6 @@ module('Component Tab', function (hooks) {
|
|
|
558
605
|
});
|
|
559
606
|
|
|
560
607
|
test('View DOM element in Elements panel', async function (assert) {
|
|
561
|
-
assert.expect(1);
|
|
562
|
-
|
|
563
608
|
await visit('/component-tree');
|
|
564
609
|
|
|
565
610
|
respondWith('view:inspectElement', ({ id }) => {
|
|
@@ -571,8 +616,6 @@ module('Component Tab', function (hooks) {
|
|
|
571
616
|
});
|
|
572
617
|
|
|
573
618
|
test('Inspects the component in the object inspector on click and shows tooltip', async function (assert) {
|
|
574
|
-
assert.expect(3);
|
|
575
|
-
|
|
576
619
|
await visit('/component-tree');
|
|
577
620
|
|
|
578
621
|
respondWith('view:showInspection', ({ id, pin }) => {
|
|
@@ -585,24 +628,22 @@ module('Component Tab', function (hooks) {
|
|
|
585
628
|
assert.strictEqual(
|
|
586
629
|
objectId,
|
|
587
630
|
'ember456',
|
|
588
|
-
'Client asked to inspect the application controller'
|
|
631
|
+
'Client asked to inspect the application controller',
|
|
589
632
|
);
|
|
590
633
|
return false;
|
|
591
634
|
});
|
|
592
635
|
|
|
593
|
-
await click('.component-tree-item
|
|
636
|
+
await click('.component-tree-item-component code');
|
|
594
637
|
});
|
|
595
638
|
|
|
596
639
|
test('Selects a component in the tree in response to a message from the context menu', async function (assert) {
|
|
597
|
-
assert.expect(8);
|
|
598
|
-
|
|
599
640
|
// Go to the component tree and populate it before sending the message from the context menu
|
|
600
641
|
// also collapse the tree to test auto expanding to pinned item
|
|
601
642
|
await visit('/component-tree');
|
|
602
643
|
let treeNodes = findAll('.component-tree-item');
|
|
603
644
|
assert.strictEqual(treeNodes.length, 4, 'expected some tree nodes');
|
|
604
645
|
|
|
605
|
-
let expanders = findAll('.component-tree-
|
|
646
|
+
let expanders = findAll('.component-tree-item-expand');
|
|
606
647
|
let expanderEl = expanders[expanders.length - 1];
|
|
607
648
|
await click(expanderEl);
|
|
608
649
|
|
|
@@ -619,7 +660,7 @@ module('Component Tab', function (hooks) {
|
|
|
619
660
|
assert.strictEqual(
|
|
620
661
|
objectId,
|
|
621
662
|
'ember789',
|
|
622
|
-
'Client asked to inspect the <TodoItem> component'
|
|
663
|
+
'Client asked to inspect the <TodoItem> component',
|
|
623
664
|
);
|
|
624
665
|
return false;
|
|
625
666
|
});
|
|
@@ -632,16 +673,16 @@ module('Component Tab', function (hooks) {
|
|
|
632
673
|
assert.strictEqual(
|
|
633
674
|
currentURL(),
|
|
634
675
|
'/component-tree?pinned=render-node%3A4',
|
|
635
|
-
'It pins the element id as a query param'
|
|
676
|
+
'It pins the element id as a query param',
|
|
636
677
|
);
|
|
637
678
|
|
|
638
679
|
await settled();
|
|
639
680
|
|
|
640
681
|
assert
|
|
641
|
-
.dom('.component-tree-item
|
|
682
|
+
.dom('.component-tree-item-pinned')
|
|
642
683
|
.hasText(
|
|
643
684
|
'TodoItem @subTasks ={{ ... }}',
|
|
644
|
-
'It selects the item in the tree corresponding to the element'
|
|
685
|
+
'It selects the item in the tree corresponding to the element',
|
|
645
686
|
);
|
|
646
687
|
|
|
647
688
|
treeNodes = findAll('.component-tree-item');
|
|
@@ -649,15 +690,13 @@ module('Component Tab', function (hooks) {
|
|
|
649
690
|
});
|
|
650
691
|
|
|
651
692
|
test('Can inspect component arguments that are objects in component tree', async function (assert) {
|
|
652
|
-
assert.expect(1);
|
|
653
|
-
|
|
654
693
|
await visit('/component-tree');
|
|
655
694
|
|
|
656
695
|
respondWith('objectInspector:inspectById', ({ objectId }) => {
|
|
657
696
|
assert.strictEqual(
|
|
658
697
|
objectId,
|
|
659
698
|
'ember1',
|
|
660
|
-
'Client asked to inspect the <TodoList> component argument'
|
|
699
|
+
'Client asked to inspect the <TodoList> component argument',
|
|
661
700
|
);
|
|
662
701
|
return false;
|
|
663
702
|
});
|
|
@@ -161,8 +161,6 @@ module('Container Tab', function (outer) {
|
|
|
161
161
|
});
|
|
162
162
|
|
|
163
163
|
test('Successfully redirects if the container type is not found', async function (assert) {
|
|
164
|
-
assert.expect(1);
|
|
165
|
-
|
|
166
164
|
respondWith('container:getInstances', ({ containerType }) => {
|
|
167
165
|
if (containerType === 'random-type') {
|
|
168
166
|
return {
|
|
@@ -34,7 +34,7 @@ function getModelTypes() {
|
|
|
34
34
|
|
|
35
35
|
function recordFactory(
|
|
36
36
|
{ objectId, ...attrs },
|
|
37
|
-
filterValues = { isNew: false }
|
|
37
|
+
filterValues = { isNew: false },
|
|
38
38
|
) {
|
|
39
39
|
filterValues = filterValues || { isNew: false };
|
|
40
40
|
let searchKeywords = [];
|
|
@@ -60,7 +60,7 @@ function getRecords(type) {
|
|
|
60
60
|
}),
|
|
61
61
|
recordFactory(
|
|
62
62
|
{ objectId: 'post-2', id: 2, title: 'Hello', body: '' },
|
|
63
|
-
{ isNew: true }
|
|
63
|
+
{ isNew: true },
|
|
64
64
|
),
|
|
65
65
|
];
|
|
66
66
|
}
|
|
@@ -91,11 +91,16 @@ module('Data Tab', function (outer) {
|
|
|
91
91
|
test('Model types are successfully listed and bound', async function (assert) {
|
|
92
92
|
respondWith('data:getModelTypes', {
|
|
93
93
|
type: 'data:modelTypesAdded',
|
|
94
|
-
modelTypes:
|
|
94
|
+
modelTypes: [],
|
|
95
95
|
});
|
|
96
96
|
|
|
97
97
|
await visit('/data/model-types');
|
|
98
98
|
|
|
99
|
+
await sendMessage({
|
|
100
|
+
type: 'data:modelTypesAdded',
|
|
101
|
+
modelTypes: getModelTypes(),
|
|
102
|
+
});
|
|
103
|
+
|
|
99
104
|
assert.dom('.js-model-type').exists({ count: 2 });
|
|
100
105
|
|
|
101
106
|
// they should be sorted alphabetically
|
|
@@ -250,7 +255,7 @@ module('Data Tab', function (outer) {
|
|
|
250
255
|
applicationId,
|
|
251
256
|
applicationName,
|
|
252
257
|
modelTypes: getModelTypes(),
|
|
253
|
-
})
|
|
258
|
+
}),
|
|
254
259
|
);
|
|
255
260
|
|
|
256
261
|
await click('[data-test-reload-container-btn]');
|
|
@@ -259,8 +264,6 @@ module('Data Tab', function (outer) {
|
|
|
259
264
|
});
|
|
260
265
|
|
|
261
266
|
test('Can inspect store in data pane', async function (assert) {
|
|
262
|
-
assert.expect(1);
|
|
263
|
-
|
|
264
267
|
respondWith('data:getModelTypes', {
|
|
265
268
|
type: 'data:modelTypesAdded',
|
|
266
269
|
modelTypes: getModelTypes(),
|
|
@@ -321,7 +324,7 @@ module('Data Tab', function (outer) {
|
|
|
321
324
|
|
|
322
325
|
let secondRow = recordRows[1];
|
|
323
326
|
let secondRowColumns = secondRow.querySelectorAll(
|
|
324
|
-
'[data-test-table-cell]'
|
|
327
|
+
'[data-test-table-cell]',
|
|
325
328
|
);
|
|
326
329
|
assert.dom(secondRowColumns[0]).hasText('2');
|
|
327
330
|
assert.dom(secondRowColumns[1]).hasText('Hello');
|
|
@@ -350,7 +353,7 @@ module('Data Tab', function (outer) {
|
|
|
350
353
|
},
|
|
351
354
|
{
|
|
352
355
|
isNew: true,
|
|
353
|
-
}
|
|
356
|
+
},
|
|
354
357
|
),
|
|
355
358
|
],
|
|
356
359
|
});
|
|
@@ -461,7 +464,7 @@ module('Data Tab', function (outer) {
|
|
|
461
464
|
let filters = findAll('.js-filter');
|
|
462
465
|
assert.strictEqual(filters.length, 2);
|
|
463
466
|
let newFilter = [...filters].find(
|
|
464
|
-
(e) => e.textContent.indexOf('New') > -1
|
|
467
|
+
(e) => e.textContent.indexOf('New') > -1,
|
|
465
468
|
);
|
|
466
469
|
await click(newFilter);
|
|
467
470
|
|
|
@@ -517,7 +520,7 @@ module('Data Tab', function (outer) {
|
|
|
517
520
|
test('Columns successfully updated when switching model types', async function (assert) {
|
|
518
521
|
await visit('/data/model-types/App.Post/records');
|
|
519
522
|
let columns = findAll('[data-test-table-header-column]');
|
|
520
|
-
assert.dom(columns
|
|
523
|
+
assert.dom(columns.at(-1)).includesText('Body');
|
|
521
524
|
|
|
522
525
|
respondWith('data:getFilters', {
|
|
523
526
|
type: 'data:filters',
|
|
@@ -531,7 +534,7 @@ module('Data Tab', function (outer) {
|
|
|
531
534
|
|
|
532
535
|
await visit('/data/model-types/App.Comment/records');
|
|
533
536
|
columns = findAll('[data-test-table-header-column]');
|
|
534
|
-
assert.dom(columns
|
|
537
|
+
assert.dom(columns.at(-1)).includesText('Content');
|
|
535
538
|
});
|
|
536
539
|
});
|
|
537
540
|
});
|
|
@@ -90,8 +90,6 @@ module('Deprecation Tab', function (outer) {
|
|
|
90
90
|
});
|
|
91
91
|
|
|
92
92
|
test('No source map', async function (assert) {
|
|
93
|
-
assert.expect(6);
|
|
94
|
-
|
|
95
93
|
await visit('/deprecations');
|
|
96
94
|
|
|
97
95
|
await toggleDeprecationSource();
|
|
@@ -131,8 +129,6 @@ module('Deprecation Tab', function (outer) {
|
|
|
131
129
|
});
|
|
132
130
|
|
|
133
131
|
test("With source map, source found, can't open resource", async function (assert) {
|
|
134
|
-
assert.expect(12);
|
|
135
|
-
|
|
136
132
|
await visit('/deprecations');
|
|
137
133
|
|
|
138
134
|
await toggleDeprecationSource();
|
|
@@ -149,14 +145,14 @@ module('Deprecation Tab', function (outer) {
|
|
|
149
145
|
assert.strictEqual(sources.length, 2, 'shows all sources');
|
|
150
146
|
assert.notOk(
|
|
151
147
|
sources[0].querySelector('[data-test-deprecation-source-link]'),
|
|
152
|
-
'source not clickable'
|
|
148
|
+
'source not clickable',
|
|
153
149
|
);
|
|
154
150
|
assert
|
|
155
151
|
.dom(sources[0].querySelector('[data-test-deprecation-source-text]'))
|
|
156
152
|
.hasText('path-to-file.js:1');
|
|
157
153
|
assert.notOk(
|
|
158
154
|
sources[1].querySelector('[data-test-deprecation-source-link]'),
|
|
159
|
-
'source not clickable'
|
|
155
|
+
'source not clickable',
|
|
160
156
|
);
|
|
161
157
|
assert
|
|
162
158
|
.dom(sources[1].querySelector('[data-test-deprecation-source-text]'))
|
|
@@ -169,7 +165,7 @@ module('Deprecation Tab', function (outer) {
|
|
|
169
165
|
});
|
|
170
166
|
|
|
171
167
|
await click(
|
|
172
|
-
sources[0].querySelector('[data-test-trace-deprecations-btn]')
|
|
168
|
+
sources[0].querySelector('[data-test-trace-deprecations-btn]'),
|
|
173
169
|
);
|
|
174
170
|
|
|
175
171
|
respondWith('deprecation:sendStackTraces', ({ deprecation }) => {
|
|
@@ -179,7 +175,7 @@ module('Deprecation Tab', function (outer) {
|
|
|
179
175
|
});
|
|
180
176
|
|
|
181
177
|
await click(
|
|
182
|
-
sources[1].querySelector('[data-test-trace-deprecations-btn]')
|
|
178
|
+
sources[1].querySelector('[data-test-trace-deprecations-btn]'),
|
|
183
179
|
);
|
|
184
180
|
});
|
|
185
181
|
|
|
@@ -202,14 +198,14 @@ module('Deprecation Tab', function (outer) {
|
|
|
202
198
|
assert.strictEqual(sources.length, 2, 'shows all sources');
|
|
203
199
|
assert.notOk(
|
|
204
200
|
sources[0].querySelector('[data-test-deprecation-source-text]'),
|
|
205
|
-
'source clickable'
|
|
201
|
+
'source clickable',
|
|
206
202
|
);
|
|
207
203
|
assert
|
|
208
204
|
.dom(sources[0].querySelector('[data-test-deprecation-source-link]'))
|
|
209
205
|
.hasText('path-to-file.js:1');
|
|
210
206
|
assert.notOk(
|
|
211
207
|
sources[1].querySelector('[data-test-deprecation-source-text]'),
|
|
212
|
-
'source clickable'
|
|
208
|
+
'source clickable',
|
|
213
209
|
);
|
|
214
210
|
assert
|
|
215
211
|
.dom(sources[1].querySelector('[data-test-deprecation-source-link]'))
|
|
@@ -218,13 +214,13 @@ module('Deprecation Tab', function (outer) {
|
|
|
218
214
|
expectOpenResource('http://path-to-file.js', 1);
|
|
219
215
|
|
|
220
216
|
await click(
|
|
221
|
-
sources[0].querySelector('[data-test-deprecation-source-link]')
|
|
217
|
+
sources[0].querySelector('[data-test-deprecation-source-link]'),
|
|
222
218
|
);
|
|
223
219
|
|
|
224
220
|
expectOpenResource('http://path-to-second-file.js', 2);
|
|
225
221
|
|
|
226
222
|
await click(
|
|
227
|
-
sources[1].querySelector('[data-test-deprecation-source-link]')
|
|
223
|
+
sources[1].querySelector('[data-test-deprecation-source-link]'),
|
|
228
224
|
);
|
|
229
225
|
});
|
|
230
226
|
|
|
@@ -23,7 +23,7 @@ module('Info Tab', function (hooks) {
|
|
|
23
23
|
assert.strictEqual(
|
|
24
24
|
libraries.length,
|
|
25
25
|
3,
|
|
26
|
-
'The correct number of libraries is displayed'
|
|
26
|
+
'The correct number of libraries is displayed',
|
|
27
27
|
);
|
|
28
28
|
assert
|
|
29
29
|
.dom(libraries[0].querySelector('.js-lib-library'))
|
|
@@ -54,7 +54,7 @@ module('Info Tab', function (hooks) {
|
|
|
54
54
|
assert.strictEqual(
|
|
55
55
|
configs.length,
|
|
56
56
|
2,
|
|
57
|
-
'The correct number of configurations is displayed'
|
|
57
|
+
'The correct number of configurations is displayed',
|
|
58
58
|
);
|
|
59
59
|
assert
|
|
60
60
|
.dom(configs[0].querySelector('.js-config-key'))
|