ember-inspector 4.13.1-alpha.2024.8.9 → 4.13.1-alpha.2025.6.8
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/README.md +10 -2
- package/app/components/app-picker.hbs +2 -2
- package/app/components/component-tree-item.hbs +13 -13
- package/app/components/component-tree-toolbar.hbs +3 -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/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-grouped.hbs +5 -5
- package/app/components/object-inspector/property.hbs +16 -16
- package/app/components/object-inspector/property.ts +26 -17
- package/app/components/object-inspector/sort-properties.js +12 -4
- package/app/components/object-inspector.hbs +8 -8
- 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/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 +33 -34
- package/app/controllers/component-tree.js +3 -2
- 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 +1 -0
- 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/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 +6 -12
- 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 +1 -1
- 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} +43 -46
- package/app/services/adapters/websocket.ts +40 -0
- package/app/services/layout.ts +88 -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} +9 -20
- package/app/styles/base.scss +4 -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 +22 -21
- package/app/styles/utils.scss +408 -122
- package/app/templates/application.hbs +11 -11
- package/app/templates/component-tree.hbs +1 -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 +30 -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.c8707b06d2f496a0d15d.js +40 -0
- package/dist/bookmarklet/panes-3-16-0/assets/chunk.582.6d68f76dc5c8ba2b48a8.js +42 -0
- package/dist/bookmarklet/panes-3-16-0/assets/ember-inspector.css +150 -155
- package/dist/bookmarklet/panes-3-16-0/assets/ember-inspector.js +486 -590
- package/dist/bookmarklet/panes-3-16-0/assets/svg/ellipsis.svg +3 -3
- 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/vendor.css +147 -148
- package/dist/bookmarklet/panes-3-16-0/assets/vendor.js +5153 -5980
- package/dist/bookmarklet/panes-3-16-0/ember_debug.js +250 -268
- package/dist/bookmarklet/panes-3-16-0/index.html +3 -4
- package/dist/chrome/background.js +26 -21
- package/dist/chrome/boot.js +1 -1
- package/dist/chrome/content-script.js +11 -11
- package/dist/chrome/devtools.js +12 -3
- package/dist/chrome/manifest.json +2 -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.c8707b06d2f496a0d15d.js +40 -0
- package/dist/chrome/panes-3-16-0/assets/chunk.582.6d68f76dc5c8ba2b48a8.js +42 -0
- package/dist/chrome/panes-3-16-0/assets/ember-inspector.css +150 -155
- package/dist/chrome/panes-3-16-0/assets/ember-inspector.js +486 -590
- package/dist/chrome/panes-3-16-0/assets/svg/ellipsis.svg +3 -3
- 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/vendor.css +147 -148
- package/dist/chrome/panes-3-16-0/assets/vendor.js +5153 -5980
- package/dist/chrome/panes-3-16-0/ember_debug.js +250 -268
- package/dist/chrome/panes-3-16-0/index.html +3 -4
- 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 +11 -11
- package/dist/firefox/devtools.js +12 -3
- package/dist/firefox/manifest.json +2 -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.c8707b06d2f496a0d15d.js +40 -0
- package/dist/firefox/panes-3-16-0/assets/chunk.582.6d68f76dc5c8ba2b48a8.js +42 -0
- package/dist/firefox/panes-3-16-0/assets/ember-inspector.css +150 -155
- package/dist/firefox/panes-3-16-0/assets/ember-inspector.js +486 -590
- package/dist/firefox/panes-3-16-0/assets/svg/ellipsis.svg +3 -3
- 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/vendor.css +147 -148
- package/dist/firefox/panes-3-16-0/assets/vendor.js +5153 -5980
- package/dist/firefox/panes-3-16-0/ember_debug.js +250 -268
- package/dist/firefox/panes-3-16-0/index.html +3 -4
- 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.c8707b06d2f496a0d15d.js +40 -0
- package/dist/websocket/assets/chunk.582.6d68f76dc5c8ba2b48a8.js +42 -0
- package/dist/websocket/assets/ember-inspector.css +150 -155
- package/dist/websocket/assets/ember-inspector.js +486 -590
- package/dist/websocket/assets/svg/ellipsis.svg +3 -3
- 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/vendor.css +147 -148
- package/dist/websocket/assets/vendor.js +5153 -5980
- package/dist/websocket/ember_debug.js +250 -268
- package/dist/websocket/index.html +3 -4
- package/ember-cli-build.js +11 -11
- package/ember_debug/adapters/basic.js +2 -1
- package/ember_debug/adapters/bookmarklet.js +1 -0
- package/ember_debug/adapters/firefox.js +3 -3
- package/ember_debug/adapters/web-extension.js +2 -1
- package/ember_debug/data-debug.js +5 -6
- package/ember_debug/deprecation-debug.js +8 -8
- package/ember_debug/general-debug.js +1 -1
- package/ember_debug/libs/capture-render-tree.js +0 -1
- package/ember_debug/libs/promise-assembler.js +1 -0
- package/ember_debug/libs/render-tree.js +13 -12
- package/ember_debug/libs/source-map.js +5 -4
- package/ember_debug/libs/view-inspection.js +12 -12
- package/ember_debug/main.js +1 -1
- package/ember_debug/models/profile-manager.js +2 -1
- package/ember_debug/object-inspector.js +19 -18
- package/ember_debug/port.js +1 -0
- package/ember_debug/promise-debug.js +1 -1
- package/ember_debug/route-debug.js +3 -2
- package/ember_debug/services/session.js +1 -1
- package/ember_debug/utils/classify.js +1 -1
- package/ember_debug/utils/ember/debug.js +2 -0
- package/ember_debug/utils/ember/loader.js +2 -2
- package/ember_debug/utils/ember/runloop.js +2 -0
- package/ember_debug/utils/ember-object-names.js +2 -2
- package/ember_debug/utils/ember.js +9 -3
- package/ember_debug/utils/evented.js +1 -1
- package/ember_debug/utils/get-object-name.js +2 -2
- package/ember_debug/utils/rsvp.js +1 -0
- package/ember_debug/utils/type-check.js +5 -1
- package/ember_debug/vendor/startup-wrapper.js +4 -1
- package/ember_debug/view-debug.js +3 -2
- package/eslint.config.mjs +172 -0
- package/gulpfile.js +1 -1
- package/lib/ui/addon/components/drag-handle.hbs +4 -4
- package/lib/ui/addon/components/drag-handle.js +3 -1
- package/lib/ui/addon/components/empty-message.hbs +1 -1
- package/lib/ui/addon/components/error-page.hbs +3 -3
- package/lib/ui/addon/components/resizable-column.js +1 -1
- package/lib/ui/addon/components/toolbar-clear-button.hbs +1 -1
- package/lib/ui/addon/components/toolbar-reload-button.hbs +1 -1
- package/lib/ui/addon/components/toolbar-search-field.hbs +2 -2
- package/lib/ui/addon/styles/_disclosure-triangle.scss +3 -1
- package/lib/ui/addon/styles/_drag-handle.scss +7 -7
- package/lib/ui/addon/styles/_empty-message.scss +1 -1
- package/lib/ui/addon/styles/_error-page.scss +8 -7
- package/lib/ui/addon/styles/_list.scss +46 -45
- package/lib/ui/addon/styles/_nav.scss +29 -27
- package/lib/ui/addon/styles/_object-inspector-toggle.scss +5 -5
- package/lib/ui/addon/styles/_pill.scss +4 -4
- package/lib/ui/addon/styles/_send-to-console.scss +1 -1
- package/lib/ui/addon/styles/_split.scss +17 -20
- package/lib/ui/addon/styles/addon.scss +13 -13
- package/lib/ui/addon/styles/toolbar/_checkbox.scss +5 -5
- package/lib/ui/addon/styles/toolbar/_icon-button.scss +44 -25
- package/lib/ui/addon/styles/toolbar/_index.scss +6 -5
- package/lib/ui/addon/styles/toolbar/_radio.scss +10 -10
- package/lib/ui/addon/styles/toolbar/_search.scss +5 -3
- package/package.json +85 -86
- package/public/assets/svg/ellipsis.svg +3 -3
- 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/scripts/download-panes.js +1 -1
- package/skeletons/bookmarklet/load_inspector.js +30 -11
- package/skeletons/web-extension/background.js +26 -21
- package/skeletons/web-extension/boot.js +1 -1
- package/skeletons/web-extension/content-script.js +11 -11
- package/skeletons/web-extension/devtools.js +12 -3
- package/skeletons/web-extension/manifest.json +2 -2
- 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 +43 -57
- package/tests/acceptance/container-test.js +0 -2
- package/tests/acceptance/data-test.js +8 -10
- 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 +3 -3
- package/tests/ember_debug/container-debug-test.js +4 -4
- package/tests/ember_debug/deprecation-debug-test.js +8 -5
- package/tests/ember_debug/ember-debug-test.js +1 -4
- package/tests/ember_debug/object-inspector-test.js +44 -44
- package/tests/ember_debug/profile-manager-test.js +140 -165
- package/tests/ember_debug/profile-node-test.js +3 -3
- package/tests/ember_debug/promise-assembler-test.js +12 -9
- package/tests/ember_debug/promise-debug-test.js +5 -6
- package/tests/ember_debug/route-debug-test.js +8 -7
- package/tests/ember_debug/view-debug-test.js +179 -181
- package/tests/helpers/{index.js → index.ts} +6 -5
- package/tests/helpers/setup-ember-debug-test.js +14 -0
- package/tests/integration/injection-test.js +12 -13
- package/tests/test-adapter.js +15 -15
- package/tests/test-helper.js +6 -1
- 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 +22 -0
- package/tsconfig.json +3 -1
- package/types/ember-inspector/index.d.ts +2 -1
- package/types/global.d.ts +1 -7
- package/.editorconfig +0 -19
- package/.ember-cli +0 -15
- package/.eslintignore +0 -33
- package/.eslintrc.js +0 -86
- package/.github/ISSUE_TEMPLATE/bug_report.md +0 -30
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
- package/.github/dependabot.yml +0 -14
- package/.github/pull_request_template.md +0 -4
- package/.github/workflows/build.yml +0 -339
- package/.github/workflows/plan-release.yml +0 -83
- package/.github/workflows/publish.yml +0 -60
- package/.prettierignore +0 -25
- package/.prettierrc.js +0 -14
- package/.release-plan.json +0 -17
- package/.stylelintrc.js +0 -3
- package/.template-lintrc.js +0 -12
- package/.tool-versions +0 -2
- package/.watchmanconfig +0 -3
- package/app/components/.gitkeep +0 -0
- package/app/components/list-content.js +0 -130
- package/app/controllers/.gitkeep +0 -0
- package/app/controllers/promise-tree.js +0 -130
- package/app/helpers/.gitkeep +0 -0
- package/app/libs/promise-assembler.js +0 -169
- package/app/models/.gitkeep +0 -0
- package/app/routes/.gitkeep +0 -0
- 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.143ca772b0b28102c74a.js +0 -28
- package/dist/bookmarklet/panes-3-16-0/assets/chunk.178.b50e140d1ed8777b583e.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/chrome/panes-3-16-0/assets/chunk.143.143ca772b0b28102c74a.js +0 -28
- package/dist/chrome/panes-3-16-0/assets/chunk.178.b50e140d1ed8777b583e.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/firefox/panes-3-16-0/assets/chunk.143.143ca772b0b28102c74a.js +0 -28
- package/dist/firefox/panes-3-16-0/assets/chunk.178.b50e140d1ed8777b583e.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/websocket/assets/chunk.143.143ca772b0b28102c74a.js +0 -28
- package/dist/websocket/assets/chunk.178.b50e140d1ed8777b583e.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/ember_debug/.eslintrc.js +0 -13
- package/tests/helpers/trigger-port.js +0 -6
- package/tests/unit/.gitkeep +0 -0
- /package/app/{app.js → app.ts} +0 -0
- /package/app/controllers/{info.js → info.ts} +0 -0
- /package/app/services/adapters/{firefox.js → firefox.ts} +0 -0
package/README.md
CHANGED
@@ -60,13 +60,21 @@ Internet explorer will open an iframe instead of a popup due to the lack of supp
|
|
60
60
|
|
61
61
|
For development:
|
62
62
|
|
63
|
-
-
|
64
|
-
-
|
63
|
+
- In a terminal:
|
64
|
+
- run `pnpm serve:bookmarklet`
|
65
|
+
- In your browser:
|
66
|
+
- If Ember Inspector is installed as an active extension, deactivate it
|
67
|
+
- Visit the Ember app you want to inspect
|
68
|
+
- Open the developer tool console and execute the following (make sure you unblock the popup when you run the bookmarklet):
|
65
69
|
|
66
70
|
```javascript
|
67
71
|
javascript: (function() { var s = document.createElement('script'); s.src = 'http://localhost:9191/bookmarklet/load_inspector.js'; document.body.appendChild(s); }());
|
68
72
|
```
|
69
73
|
|
74
|
+
Or to do this more easily in the future, create a new bookmark in your browser, and copy the above script as the URL.
|
75
|
+
|
76
|
+
The expected behavior is a new window opening with the URL `http://localhost:9191/bookmarklet/<pane-root>/index.html?inspectedWindowURL=<inspected-app-url>`, running your local ember-inspector. The content should be the same as the one you see when using the published extension, but not properly styled.
|
77
|
+
|
70
78
|
## Building and Testing:
|
71
79
|
|
72
80
|
Run `pnpm install && pnpm add -g ember-cli` to install the required modules.
|
@@ -16,9 +16,9 @@
|
|
16
16
|
</select>
|
17
17
|
|
18
18
|
{{#if @collapsed}}
|
19
|
-
{{svg-jar "e-logo" width="15" height="13" class="
|
19
|
+
{{svg-jar "e-logo" width="15" height="13" class="dropdown-collapsed-icon fill-current absolute pointer-events-none"}}
|
20
20
|
{{/if}}
|
21
21
|
|
22
|
-
{{svg-jar "dropdown-arrow" class="
|
22
|
+
{{svg-jar "dropdown-arrow" class="dropdown-arrow fill-current absolute opacity-75 pointer-events-none"}}
|
23
23
|
</div>
|
24
24
|
</div>
|
@@ -4,9 +4,9 @@
|
|
4
4
|
class="
|
5
5
|
component-tree-item relative flex items-center mx-1 rounded
|
6
6
|
{{if @item.hasInstance "cursor-pointer" "cursor-default"}}
|
7
|
-
{{if @item.isComponent "component-tree-item
|
8
|
-
{{if @item.isPinned "component-tree-item
|
9
|
-
{{if @item.isHighlighted "component-tree-item
|
7
|
+
{{if @item.isComponent "component-tree-item-component"}}
|
8
|
+
{{if @item.isPinned "component-tree-item-pinned"}}
|
9
|
+
{{if @item.isHighlighted "component-tree-item-highlighted"}}"
|
10
10
|
{{on "click" @item.toggleInspection}}
|
11
11
|
{{on "mouseenter" @item.showPreview}}
|
12
12
|
{{on "mouseleave" @item.hidePreview}}
|
@@ -14,7 +14,7 @@
|
|
14
14
|
<div class="component-tree-item-background flex items-center pr-2 rounded">
|
15
15
|
{{#if @item.hasChildren}}
|
16
16
|
<Ui::DisclosureTriangle
|
17
|
-
class="component-tree-
|
17
|
+
class="component-tree-item-expand self-stretch px-1 cursor-pointer"
|
18
18
|
title="Click to toggle (alt/option click to toggle with children)"
|
19
19
|
@toggle={{@item.toggleExpansion}}
|
20
20
|
@expanded={{@item.isExpanded}}
|
@@ -22,18 +22,18 @@
|
|
22
22
|
{{/if}}
|
23
23
|
|
24
24
|
<code
|
25
|
-
class="component-tree-
|
26
|
-
{{if @item.isClosingTag 'component-tree-
|
27
|
-
{{if @item.hasModifiers 'component-tree-
|
25
|
+
class="component-tree-item-tag flex whitespace-no-wrap
|
26
|
+
{{if @item.isClosingTag 'component-tree-item-closing'}}
|
27
|
+
{{if @item.hasModifiers 'component-tree-item-has-modifier'}}
|
28
28
|
{{if
|
29
29
|
(or @item.isComponent @item.isModifier @item.isHtmlTag)
|
30
30
|
(if
|
31
31
|
@item.isCurlyInvocation
|
32
|
-
"component-tree-item-
|
32
|
+
"component-tree-item-classic-bracket"
|
33
33
|
(if
|
34
34
|
@item.hasChildren
|
35
|
-
"component-tree-
|
36
|
-
"component-tree-
|
35
|
+
"component-tree-item-bracket"
|
36
|
+
"component-tree-item-bracket component-tree-item-bracket-self-closing"
|
37
37
|
)
|
38
38
|
)
|
39
39
|
}}"
|
@@ -104,9 +104,9 @@
|
|
104
104
|
</div>
|
105
105
|
|
106
106
|
{{#if @item.hasBounds}}
|
107
|
-
<div class="component-tree-
|
107
|
+
<div class="component-tree-item-actions sticky flex items-center pr-1 whitespace-no-wrap">
|
108
108
|
<button
|
109
|
-
class="component-tree-
|
109
|
+
class="component-tree-item-action inline-flex items-center h-full p-0 border-0 cursor-pointer bg-transparent z-10"
|
110
110
|
title="Scroll into view"
|
111
111
|
data-test-scroll-into-view
|
112
112
|
{{on "click" @item.scrollIntoView}}
|
@@ -116,7 +116,7 @@
|
|
116
116
|
</button>
|
117
117
|
|
118
118
|
<button
|
119
|
-
class="component-tree-
|
119
|
+
class="component-tree-item-action inline-flex items-center h-full ml-2 p-0 border-0 cursor-pointer bg-transparent z-10"
|
120
120
|
title="View in Elements panel"
|
121
121
|
data-test="view-dom-element"
|
122
122
|
{{on "click" @item.inspectElement}}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<div class="toolbar">
|
2
2
|
<button
|
3
|
-
class="{{if @isInspecting "active"}}
|
3
|
+
class="{{if @isInspecting "active"}} toolbar-icon-button"
|
4
4
|
type="button"
|
5
5
|
{{on "click" @toggleInspect}}
|
6
6
|
>
|
@@ -10,7 +10,7 @@
|
|
10
10
|
<Ui::ToolbarDivider />
|
11
11
|
|
12
12
|
<button
|
13
|
-
class="
|
13
|
+
class="toolbar-icon-button"
|
14
14
|
title="expand all"
|
15
15
|
type="button"
|
16
16
|
{{on "click" @expandAll}}
|
@@ -19,7 +19,7 @@
|
|
19
19
|
</button>
|
20
20
|
|
21
21
|
<button
|
22
|
-
class="
|
22
|
+
class="toolbar-icon-button"
|
23
23
|
title="collapse all"
|
24
24
|
type="button"
|
25
25
|
{{on "click" @collapseAll}}
|
@@ -1,16 +1,17 @@
|
|
1
1
|
import { scheduleOnce } from '@ember/runloop';
|
2
2
|
import { action } from '@ember/object';
|
3
|
-
import DatePicker from 'ember-
|
3
|
+
import DatePicker from 'ember-flatpickr/components/ember-flatpickr';
|
4
4
|
|
5
5
|
export default class DatePropertyFieldComponent extends DatePicker {
|
6
6
|
@action
|
7
|
-
onInsert(element) {
|
7
|
+
onInsert(element: HTMLInputElement) {
|
8
8
|
super.onInsert(element);
|
9
9
|
|
10
|
+
// eslint-disable-next-line ember/no-runloop
|
10
11
|
scheduleOnce('afterRender', this, this._openFlatpickr);
|
11
12
|
}
|
12
13
|
|
13
|
-
_openFlatpickr() {
|
14
|
-
this.flatpickrRef
|
15
|
-
}
|
14
|
+
_openFlatpickr = () => {
|
15
|
+
this.flatpickrRef?.open();
|
16
|
+
};
|
16
17
|
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<div class="deprecation-source pb-2" data-test-deprecation-source>
|
2
2
|
<button
|
3
|
-
class="send-to-console send-to-console
|
3
|
+
class="send-to-console send-to-console-chevron-only mr-3"
|
4
4
|
title="Trace deprecations in console"
|
5
5
|
data-test-trace-deprecations-btn
|
6
6
|
{{on "click" this.handleClick}}
|
@@ -26,7 +26,7 @@
|
|
26
26
|
|
27
27
|
{{#if (not @model.hasSourceMap)}}
|
28
28
|
<button
|
29
|
-
class="send-to-console send-to-console
|
29
|
+
class="send-to-console send-to-console-chevron-only mr-2"
|
30
30
|
title="Trace deprecations in console"
|
31
31
|
data-test-full-trace-deprecations-btn
|
32
32
|
type="button"
|
@@ -1,11 +1,11 @@
|
|
1
1
|
<div class="split">
|
2
2
|
<Ui::DraggableColumn
|
3
|
-
@classes="
|
3
|
+
@classes="split-panel split-panel-sidebar-2 nav"
|
4
4
|
@side="left"
|
5
5
|
@width={{@width}}
|
6
6
|
>
|
7
|
-
<div class="
|
8
|
-
<h1 class="
|
7
|
+
<div class="split-panel-bd">
|
8
|
+
<h1 class="nav-title">{{@header}}</h1>
|
9
9
|
|
10
10
|
<ul>
|
11
11
|
{{#each @sorted as |itemType|}}
|
@@ -13,9 +13,9 @@
|
|
13
13
|
<LinkTo
|
14
14
|
@route={{if (eq @type "model") "records" "container-type"}}
|
15
15
|
@model={{escape-url itemType.name}}
|
16
|
-
class="
|
16
|
+
class="nav-item"
|
17
17
|
>
|
18
|
-
<span class={{concat this.typeClass "-name" "
|
18
|
+
<span class={{concat this.typeClass "-name" " nav-item-label"}}>
|
19
19
|
{{itemType.name}}
|
20
20
|
</span>
|
21
21
|
|
@@ -27,8 +27,8 @@
|
|
27
27
|
</div>
|
28
28
|
</Ui::DraggableColumn>
|
29
29
|
|
30
|
-
<div class="
|
31
|
-
<div class="
|
30
|
+
<div class="split-panel">
|
31
|
+
<div class="split-panel-bd">
|
32
32
|
{{yield}}
|
33
33
|
</div>
|
34
34
|
</div>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<td
|
2
|
-
class="
|
3
|
-
{{if this.clickable '
|
4
|
-
{{if this.highlight '
|
2
|
+
class="list-cell
|
3
|
+
{{if this.clickable 'list-cell-clickable'}}
|
4
|
+
{{if this.highlight 'list-cell-highlight'}}"
|
5
5
|
role="button"
|
6
6
|
style={{this.safeStyle}}
|
7
7
|
title={{this.title}}
|
@@ -1,12 +1,13 @@
|
|
1
1
|
<div
|
2
|
-
class="
|
2
|
+
class="list-content js-list-content"
|
3
3
|
style={{this.style}}
|
4
4
|
{{did-insert this.elementInserted}}
|
5
|
+
...attributes
|
5
6
|
>
|
6
|
-
<div class="
|
7
|
+
<div class="list-table-container">
|
7
8
|
<table>
|
8
9
|
<colgroup>
|
9
|
-
{{#each
|
10
|
+
{{#each @columns as |column|}}
|
10
11
|
<col style={{build-style width=(concat column.width "px")}} />
|
11
12
|
{{/each}}
|
12
13
|
</colgroup>
|
@@ -0,0 +1,96 @@
|
|
1
|
+
import { action } from '@ember/object';
|
2
|
+
import { inject as service } from '@ember/service';
|
3
|
+
import Component from '@glimmer/component';
|
4
|
+
import { htmlSafe } from '@ember/template';
|
5
|
+
import { schedule } from '@ember/runloop';
|
6
|
+
import { tracked } from '@glimmer/tracking';
|
7
|
+
|
8
|
+
import type LayoutService from '../services/layout';
|
9
|
+
|
10
|
+
interface ListContentSignature {
|
11
|
+
Element: HTMLDivElement;
|
12
|
+
Args: {
|
13
|
+
/**
|
14
|
+
* Array of objects representing the columns to render
|
15
|
+
* and their corresponding widths. This array is passed
|
16
|
+
* through the template.
|
17
|
+
*
|
18
|
+
* Each item in the array has `width` and `id` properties.
|
19
|
+
*/
|
20
|
+
columns: Array<{ id: string; width: number }>;
|
21
|
+
/**
|
22
|
+
* Number passed from `list`. Indicates the header height
|
23
|
+
* in pixels.
|
24
|
+
*/
|
25
|
+
headerHeight: number;
|
26
|
+
};
|
27
|
+
}
|
28
|
+
|
29
|
+
/**
|
30
|
+
* Base list view config
|
31
|
+
*/
|
32
|
+
export default class ListContent extends Component<ListContentSignature> {
|
33
|
+
/**
|
34
|
+
* The layout service. Used to observe the app's content height.
|
35
|
+
*/
|
36
|
+
@service('layout') declare layoutService: LayoutService;
|
37
|
+
|
38
|
+
@tracked contentHeight: number | null = null;
|
39
|
+
|
40
|
+
/**
|
41
|
+
* Hook called before destruction. Clean up events listeners.
|
42
|
+
*/
|
43
|
+
willDestroy() {
|
44
|
+
this.layoutService.off(
|
45
|
+
'content-height-update',
|
46
|
+
this,
|
47
|
+
this.updateContentHeight,
|
48
|
+
);
|
49
|
+
return super.willDestroy();
|
50
|
+
}
|
51
|
+
|
52
|
+
get height() {
|
53
|
+
// In testing list-view is created before `contentHeight` is set
|
54
|
+
// which will trigger an exception
|
55
|
+
if (!this.contentHeight) {
|
56
|
+
return 1;
|
57
|
+
}
|
58
|
+
return this.contentHeight - this.args.headerHeight;
|
59
|
+
}
|
60
|
+
|
61
|
+
get style() {
|
62
|
+
return htmlSafe(`height:${this.height}px`);
|
63
|
+
}
|
64
|
+
|
65
|
+
/**
|
66
|
+
* Hook called when content element is inserted.
|
67
|
+
*/
|
68
|
+
@action
|
69
|
+
elementInserted() {
|
70
|
+
// eslint-disable-next-line ember/no-runloop
|
71
|
+
schedule('afterRender', this, this.setupHeight);
|
72
|
+
}
|
73
|
+
|
74
|
+
/**
|
75
|
+
* Set up the content height and listen to any updates to that property.
|
76
|
+
*/
|
77
|
+
setupHeight = () => {
|
78
|
+
this.contentHeight = this.layoutService.contentHeight;
|
79
|
+
this.layoutService.on(
|
80
|
+
'content-height-update',
|
81
|
+
this,
|
82
|
+
this.updateContentHeight,
|
83
|
+
);
|
84
|
+
};
|
85
|
+
|
86
|
+
/**
|
87
|
+
* Triggered whenever the app's content height changes. This usually happens
|
88
|
+
* when the window is resized. Once we detect a change we update this
|
89
|
+
* component's `contentHeight` property and consequently its `height` style.
|
90
|
+
*
|
91
|
+
* @param height The app's new content height
|
92
|
+
*/
|
93
|
+
updateContentHeight = (height: number) => {
|
94
|
+
this.contentHeight = height;
|
95
|
+
};
|
96
|
+
}
|
package/app/components/list.hbs
CHANGED
@@ -5,8 +5,8 @@
|
|
5
5
|
{{did-update this.schemaUpdated this.schema}}
|
6
6
|
>
|
7
7
|
{{#if this.schema.columns.length}}
|
8
|
-
<div class="
|
9
|
-
<div class="
|
8
|
+
<div class="list-header">
|
9
|
+
<div class="list-table-container">
|
10
10
|
<table>
|
11
11
|
<colgroup>
|
12
12
|
{{#each this.columns key="id" as |column|}}
|
@@ -14,7 +14,7 @@
|
|
14
14
|
{{/each}}
|
15
15
|
</colgroup>
|
16
16
|
<tbody>
|
17
|
-
<tr class="
|
17
|
+
<tr class="list-row">
|
18
18
|
{{#each this.columns key="id" as |column|}}
|
19
19
|
<ListCell class="js-header-column" @tagName="th">
|
20
20
|
{{column.name}}
|
package/app/components/list.js
CHANGED
@@ -13,9 +13,6 @@ export default class ListComponent extends Component {
|
|
13
13
|
/**
|
14
14
|
* Layout service used to listen to changes to the application
|
15
15
|
* layout such as resizing of the main nav or object inspector.
|
16
|
-
*
|
17
|
-
* @property layoutService
|
18
|
-
* @type {Service}
|
19
16
|
*/
|
20
17
|
@service('layout') layoutService;
|
21
18
|
|
@@ -120,6 +117,7 @@ export default class ListComponent extends Component {
|
|
120
117
|
let oldSchema = this.oldSchema;
|
121
118
|
let newSchema = this.schema;
|
122
119
|
if (newSchema && newSchema !== oldSchema) {
|
120
|
+
// eslint-disable-next-line ember/no-runloop
|
123
121
|
scheduleOnce('actions', this, this.setupColumns);
|
124
122
|
}
|
125
123
|
this.oldSchema = newSchema;
|
@@ -128,6 +126,7 @@ export default class ListComponent extends Component {
|
|
128
126
|
@action
|
129
127
|
elementInserted(el) {
|
130
128
|
this.el = el;
|
129
|
+
// eslint-disable-next-line ember/no-runloop
|
131
130
|
scheduleOnce('afterRender', this, this.setupColumns);
|
132
131
|
this.onResize = () => {
|
133
132
|
this.debounceColumnWidths.perform();
|
@@ -157,6 +156,7 @@ export default class ListComponent extends Component {
|
|
157
156
|
arr.push({
|
158
157
|
name,
|
159
158
|
title: name,
|
159
|
+
// eslint-disable-next-line ember/no-runloop
|
160
160
|
fn: bind(this, this.toggleColumnVisibility, id),
|
161
161
|
});
|
162
162
|
return arr;
|
@@ -166,7 +166,7 @@ export default class ListComponent extends Component {
|
|
166
166
|
basicContext.show(menu, e);
|
167
167
|
};
|
168
168
|
|
169
|
-
const listHeader = this.el.querySelector('.
|
169
|
+
const listHeader = this.el.querySelector('.list-header');
|
170
170
|
if (listHeader) {
|
171
171
|
listHeader.addEventListener('contextmenu', this.showBasicContext);
|
172
172
|
}
|
@@ -184,7 +184,7 @@ export default class ListComponent extends Component {
|
|
184
184
|
@action
|
185
185
|
toggleColumnVisibility(id) {
|
186
186
|
this.resizableColumns.toggleVisibility(id);
|
187
|
-
const listHeader = this.el.querySelector('.
|
187
|
+
const listHeader = this.el.querySelector('.list-header');
|
188
188
|
if (listHeader) {
|
189
189
|
listHeader.removeEventListener('contextmenu', this.showBasicContext);
|
190
190
|
}
|
@@ -212,7 +212,7 @@ export default class ListComponent extends Component {
|
|
212
212
|
* @method willDestroy
|
213
213
|
*/
|
214
214
|
willDestroy() {
|
215
|
-
const listHeader = this.el.querySelector('.
|
215
|
+
const listHeader = this.el.querySelector('.list-header');
|
216
216
|
if (listHeader) {
|
217
217
|
listHeader.removeEventListener('contextmenu', this.showBasicContext);
|
218
218
|
}
|
@@ -228,7 +228,7 @@ export default class ListComponent extends Component {
|
|
228
228
|
*/
|
229
229
|
@action
|
230
230
|
getTableWidth() {
|
231
|
-
return this.el.querySelector('.
|
231
|
+
return this.el.querySelector('.list-table-container').clientWidth;
|
232
232
|
}
|
233
233
|
|
234
234
|
/**
|
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
<Ui::ToolbarDivider />
|
8
8
|
|
9
|
-
<div class="
|
9
|
+
<div class="toolbar-checkbox js-filter-hide-empty-model-types">
|
10
10
|
<label>
|
11
11
|
<Input
|
12
12
|
data-test-options-hideEmptyModelTypes
|
@@ -16,7 +16,7 @@
|
|
16
16
|
Hide Empty Model Types
|
17
17
|
</label>
|
18
18
|
</div>
|
19
|
-
<div class="
|
19
|
+
<div class="toolbar-checkbox js-filter-order-records-by-count">
|
20
20
|
<label>
|
21
21
|
<Input
|
22
22
|
data-test-options-orderByRecordCount
|
@@ -26,7 +26,7 @@
|
|
26
26
|
Order Models By Record Count
|
27
27
|
</label>
|
28
28
|
</div>
|
29
|
-
<button class="
|
29
|
+
<button class="toolbar-radio js-filter" {{on "click" @getStore}} data-test-inspect-store type="button">
|
30
30
|
Inspect Store
|
31
31
|
</button>
|
32
32
|
</div>
|
@@ -1,14 +1,14 @@
|
|
1
|
-
<li class="
|
1
|
+
<li class="mixin-property-dependency-list relative">
|
2
2
|
{{svg-jar "dependent-key-connection" width="20px" height="10px"}}
|
3
3
|
<ul class="m-0 p-0 list-none">
|
4
4
|
{{#each @keys as |dep|}}
|
5
5
|
<li
|
6
|
-
class="
|
6
|
+
class="mixin-property-dependency-item relative text-base12 text-sm {{if dep.changed 'text-spec01'}}"
|
7
7
|
title={{if dep.changed 'this property changed'}}
|
8
8
|
>
|
9
9
|
{{#if dep.child}}
|
10
10
|
<span
|
11
|
-
class="
|
11
|
+
class="mixin-property-dependency-name subkey"
|
12
12
|
data-label="object-property-name"
|
13
13
|
>
|
14
14
|
• -- {{dep.child}}
|
@@ -20,7 +20,7 @@
|
|
20
20
|
height="9px"
|
21
21
|
}}
|
22
22
|
<span
|
23
|
-
class="
|
23
|
+
class="mixin-property-dependency-name"
|
24
24
|
data-label="object-property-name"
|
25
25
|
>
|
26
26
|
{{dep.name}}
|
@@ -1,9 +1,9 @@
|
|
1
|
-
<div class="mixin
|
2
|
-
<h2 class="
|
1
|
+
<div class="mixin mixin-props-no" data-test-object-inspector-errors>
|
2
|
+
<h2 class="mixin-name mixin-name--errors bg-base00">
|
3
3
|
Errors
|
4
4
|
<button
|
5
5
|
data-test-send-errors-to-console
|
6
|
-
class="send-to-console send-to-console
|
6
|
+
class="send-to-console send-to-console-chevron-only ml-1"
|
7
7
|
type="button"
|
8
8
|
{{on "click" @traceErrors}}
|
9
9
|
>
|
@@ -11,7 +11,7 @@
|
|
11
11
|
Trace in the Console
|
12
12
|
</button>
|
13
13
|
</h2>
|
14
|
-
<div class="
|
14
|
+
<div class="mixin-properties m-0 text-base font-mono">
|
15
15
|
{{#each @errors as |error|}}
|
16
16
|
<div class="py-0 px-5 mr-1 text-spec01" data-test-object-inspector-error>
|
17
17
|
Error while computing: {{error.property}}
|
@@ -1,13 +1,13 @@
|
|
1
1
|
{{#each @model.mixins as |mixin|}}
|
2
2
|
<ObjectInspector::Accordion @mixin={{mixin}} as |accordion|>
|
3
3
|
<div
|
4
|
-
class="mixin {{mixin.type}} {{if accordion.isExpanded "
|
4
|
+
class="mixin {{mixin.type}} {{if accordion.isExpanded "mixin-state-expanded"}} {{if mixin.properties.length "mixin-props-yes" "mixin-props-no"}}"
|
5
5
|
data-test-object-detail
|
6
6
|
>
|
7
7
|
{{#if mixin.properties.length}}
|
8
8
|
<h2
|
9
9
|
data-test-object-detail-name
|
10
|
-
class="
|
10
|
+
class="mixin-name sticky top-0 truncate select-none cursor-default text-base15 bg-base01"
|
11
11
|
role="button"
|
12
12
|
{{on "click" accordion.toggle}}
|
13
13
|
>
|
@@ -15,14 +15,14 @@
|
|
15
15
|
</h2>
|
16
16
|
{{else}}
|
17
17
|
<h2
|
18
|
-
class="
|
18
|
+
class="mixin-name mixin-name--no-props sticky top-0 truncate select-none text-base09 cursor-default bg-base01"
|
19
19
|
data-test-object-detail-name
|
20
20
|
>
|
21
21
|
{{mixin.name}}
|
22
22
|
</h2>
|
23
23
|
{{/if}}
|
24
24
|
{{#if accordion.isExpanded}}
|
25
|
-
<ul class="
|
25
|
+
<ul class="mixin-properties m-0 text-base font-mono list-none">
|
26
26
|
<ObjectInspector::SortProperties
|
27
27
|
@properties={{mixin.properties}} as |sortedProperties|
|
28
28
|
>
|
@@ -36,7 +36,7 @@
|
|
36
36
|
@gotoSource={{fn this.gotoSource prop}}
|
37
37
|
/>
|
38
38
|
{{else}}
|
39
|
-
<li class="
|
39
|
+
<li class="mixin-property flex relative flex-row items-center truncate">No Properties</li>
|
40
40
|
{{/each}}
|
41
41
|
</ObjectInspector::SortProperties>
|
42
42
|
</ul>
|