ember-inspector 4.13.1-alpha.2025.6.19 → 4.13.1-alpha.2025.6.20
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/dist/bookmarklet/panes-3-16-0/assets/{chunk.524.7b97a9e9caaec2bf8dd7.js → chunk.524.f5503c59582d162b92bb.js} +4 -4
- package/dist/{firefox/panes-3-16-0/assets/chunk.582.fb8575406d3fbe1d4a24.js → bookmarklet/panes-3-16-0/assets/chunk.582.4c00a70d81949891d2b3.js} +5 -5
- package/dist/bookmarklet/panes-3-16-0/assets/ember-inspector.js +2 -2
- package/dist/bookmarklet/panes-3-16-0/ember_debug.js +62 -47
- package/dist/bookmarklet/panes-3-16-0/index.html +2 -2
- package/dist/chrome/manifest.json +2 -2
- package/dist/{firefox/panes-3-16-0/assets/chunk.524.7b97a9e9caaec2bf8dd7.js → chrome/panes-3-16-0/assets/chunk.524.f5503c59582d162b92bb.js} +4 -4
- package/dist/{bookmarklet/panes-3-16-0/assets/chunk.582.fb8575406d3fbe1d4a24.js → chrome/panes-3-16-0/assets/chunk.582.4c00a70d81949891d2b3.js} +5 -5
- package/dist/chrome/panes-3-16-0/assets/ember-inspector.js +2 -2
- package/dist/chrome/panes-3-16-0/ember_debug.js +62 -47
- package/dist/chrome/panes-3-16-0/index.html +2 -2
- package/dist/firefox/manifest.json +2 -2
- package/dist/{chrome/panes-3-16-0/assets/chunk.524.7b97a9e9caaec2bf8dd7.js → firefox/panes-3-16-0/assets/chunk.524.f5503c59582d162b92bb.js} +4 -4
- package/dist/{websocket/assets/chunk.582.fb8575406d3fbe1d4a24.js → firefox/panes-3-16-0/assets/chunk.582.4c00a70d81949891d2b3.js} +5 -5
- package/dist/firefox/panes-3-16-0/assets/ember-inspector.js +2 -2
- package/dist/firefox/panes-3-16-0/ember_debug.js +62 -47
- package/dist/firefox/panes-3-16-0/index.html +2 -2
- package/dist/websocket/assets/{chunk.524.7b97a9e9caaec2bf8dd7.js → chunk.524.f5503c59582d162b92bb.js} +4 -4
- package/dist/{chrome/panes-3-16-0/assets/chunk.582.fb8575406d3fbe1d4a24.js → websocket/assets/chunk.582.4c00a70d81949891d2b3.js} +5 -5
- package/dist/websocket/assets/ember-inspector.js +2 -2
- package/dist/websocket/ember_debug.js +62 -47
- package/dist/websocket/index.html +2 -2
- package/ember_debug/libs/render-tree.js +16 -16
- package/ember_debug/libs/view-inspection.js +10 -2
- package/ember_debug/object-inspector.js +15 -30
- package/ember_debug/utils/ember-object-names.js +4 -5
- package/ember_debug/utils/ember.js +20 -0
- package/ember_debug/utils/type-check.js +2 -2
- package/ember_debug/view-debug.js +5 -0
- package/package.json +1 -1
- package/skeletons/web-extension/manifest.json +2 -2
- package/tests/ember_debug/view-debug-test.js +75 -0
@@ -56,11 +56,21 @@ let captureRenderTree = Ember._captureRenderTree;
|
|
56
56
|
let getEnv = () => Ember.ENV;
|
57
57
|
|
58
58
|
let Debug = emberSafeRequire('@ember/debug');
|
59
|
+
let InternalsMetal = emberSafeRequire('@ember/-internals/metal');
|
60
|
+
let InternalsRuntime = emberSafeRequire('@ember/-internals/runtime');
|
59
61
|
let InternalsUtils = emberSafeRequire('@ember/-internals/utils');
|
62
|
+
let InternalsViews = emberSafeRequire('@ember/-internals/views');
|
63
|
+
let EmberDestroyable = emberSafeRequire('@ember/destroyable');
|
60
64
|
let ObjectInternals = emberSafeRequire('@ember/object/internals');
|
61
65
|
let Instrumentation = emberSafeRequire('@ember/instrumentation');
|
62
66
|
let Runloop = emberSafeRequire('@ember/runloop');
|
63
67
|
let RSVP = emberSafeRequire('rsvp');
|
68
|
+
let GlimmerComponent = emberSafeRequire('@glimmer/component');
|
69
|
+
let GlimmerManager = emberSafeRequire('@glimmer/manager');
|
70
|
+
let GlimmerReference = emberSafeRequire('@glimmer/reference');
|
71
|
+
let GlimmerRuntime = emberSafeRequire('@glimmer/runtime');
|
72
|
+
let GlimmerUtil = emberSafeRequire('@glimmer/util');
|
73
|
+
let GlimmerValidator = emberSafeRequire('@glimmer/validator');
|
64
74
|
|
65
75
|
if (!Ember) {
|
66
76
|
captureRenderTree = emberSafeRequire('@ember/debug')?.captureRenderTree;
|
@@ -94,7 +104,10 @@ if (!Ember) {
|
|
94
104
|
export {
|
95
105
|
Runloop,
|
96
106
|
Debug,
|
107
|
+
InternalsMetal,
|
108
|
+
InternalsRuntime,
|
97
109
|
InternalsUtils,
|
110
|
+
InternalsViews,
|
98
111
|
ObjectInternals,
|
99
112
|
Instrumentation,
|
100
113
|
RSVP,
|
@@ -113,6 +126,7 @@ export {
|
|
113
126
|
Evented,
|
114
127
|
Service,
|
115
128
|
PromiseProxyMixin,
|
129
|
+
EmberDestroyable,
|
116
130
|
EmberObject,
|
117
131
|
VERSION,
|
118
132
|
ComputedProperty,
|
@@ -122,6 +136,12 @@ export {
|
|
122
136
|
set,
|
123
137
|
captureRenderTree,
|
124
138
|
getEnv,
|
139
|
+
GlimmerComponent,
|
140
|
+
GlimmerManager,
|
141
|
+
GlimmerReference,
|
142
|
+
GlimmerRuntime,
|
143
|
+
GlimmerUtil,
|
144
|
+
GlimmerValidator,
|
125
145
|
};
|
126
146
|
|
127
147
|
export default Ember;
|
@@ -3,7 +3,7 @@ import {
|
|
3
3
|
ComputedProperty,
|
4
4
|
EmberObject,
|
5
5
|
meta as emberMeta,
|
6
|
-
|
6
|
+
InternalsMetal,
|
7
7
|
} from 'ember-debug/utils/ember';
|
8
8
|
|
9
9
|
/**
|
@@ -41,7 +41,7 @@ export function getDescriptorFor(object, key) {
|
|
41
41
|
// exists longer than ember 3.10
|
42
42
|
if (Debug.isComputed) {
|
43
43
|
const { descriptorForDecorator, descriptorForProperty } =
|
44
|
-
|
44
|
+
InternalsMetal || {};
|
45
45
|
return (
|
46
46
|
descriptorForDecorator?.(object[key]) ||
|
47
47
|
descriptorForProperty?.(object, key)
|
@@ -103,6 +103,11 @@ export default class extends DebugPort {
|
|
103
103
|
onRightClick(event) {
|
104
104
|
if (event.button === 2) {
|
105
105
|
this.lastRightClicked = event.target;
|
106
|
+
if (event.target.shadowRoot) {
|
107
|
+
this.lastRightClicked =
|
108
|
+
event.target.shadowRoot.elementFromPoint(event.x, event.y) ||
|
109
|
+
event.target;
|
110
|
+
}
|
106
111
|
}
|
107
112
|
}
|
108
113
|
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "ember-inspector",
|
3
|
-
"version": "4.13.1-alpha.2025.6.
|
3
|
+
"version": "4.13.1-alpha.2025.6.20+c8550c0",
|
4
4
|
"description": "Extends developer tools to allow you to better inspect your Ember.js apps.",
|
5
5
|
"repository": "https://github.com/emberjs/ember-inspector",
|
6
6
|
"license": "MIT",
|
@@ -2,7 +2,7 @@
|
|
2
2
|
"manifest_version": 3,
|
3
3
|
"name": "Ember Inspector (Nightly)",
|
4
4
|
"description": "Tool for debugging Ember applications.",
|
5
|
-
"version": "2025.6.
|
5
|
+
"version": "2025.6.20",
|
6
6
|
"icons": {
|
7
7
|
"16": "{{PANE_ROOT}}/assets/images/icon16.png",
|
8
8
|
"38": "{{PANE_ROOT}}/assets/images/icon38.png",
|
@@ -74,5 +74,5 @@
|
|
74
74
|
]
|
75
75
|
}
|
76
76
|
],
|
77
|
-
"version_name": "4.13.1 (nightly build 2025.6.
|
77
|
+
"version_name": "4.13.1 (nightly build 2025.6.20 / c8550c0)"
|
78
78
|
}
|
@@ -22,6 +22,8 @@ import EmberDebug from 'ember-debug/main';
|
|
22
22
|
import setupEmberDebugTest from '../helpers/setup-ember-debug-test';
|
23
23
|
import { isInVersionSpecifier } from 'ember-debug/version';
|
24
24
|
import { VERSION } from 'ember-debug/ember';
|
25
|
+
import GlimmerComponent from '@glimmer/component';
|
26
|
+
import { tracked } from '@glimmer/tracking';
|
25
27
|
|
26
28
|
let templateOnlyComponent = null;
|
27
29
|
try {
|
@@ -373,6 +375,7 @@ module('Ember Debug - View', function (hooks) {
|
|
373
375
|
this.route('test-component-in-in-element');
|
374
376
|
this.route('wormhole');
|
375
377
|
this.route('inputs');
|
378
|
+
this.route('component-in-shadow-dom');
|
376
379
|
this.route('comments', { resetNamespace: true }, function () {});
|
377
380
|
this.route('posts', { resetNamespace: true });
|
378
381
|
},
|
@@ -499,6 +502,31 @@ module('Ember Debug - View', function (hooks) {
|
|
499
502
|
}),
|
500
503
|
);
|
501
504
|
|
505
|
+
this.owner.register(
|
506
|
+
'component:shadow-dom',
|
507
|
+
setComponentTemplate(
|
508
|
+
hbs(
|
509
|
+
`<div {{did-insert this.setupRoot}} />
|
510
|
+
{{#if this.shadow}}
|
511
|
+
{{#in-element this.shadow}}
|
512
|
+
{{yield}}
|
513
|
+
{{/in-element}}
|
514
|
+
{{/if}}
|
515
|
+
`,
|
516
|
+
{
|
517
|
+
moduleName: 'my-app/components/shadow-dom.hbs',
|
518
|
+
},
|
519
|
+
),
|
520
|
+
class extends GlimmerComponent {
|
521
|
+
@tracked shadow;
|
522
|
+
setupRoot = (element) => {
|
523
|
+
this.shadow = element.attachShadow({ mode: 'open' });
|
524
|
+
window.testShadow = this.shadow;
|
525
|
+
};
|
526
|
+
},
|
527
|
+
),
|
528
|
+
);
|
529
|
+
|
502
530
|
this.owner.register(
|
503
531
|
'component:test-foo',
|
504
532
|
setComponentTemplate(
|
@@ -635,6 +663,13 @@ module('Ember Debug - View', function (hooks) {
|
|
635
663
|
}),
|
636
664
|
);
|
637
665
|
|
666
|
+
this.owner.register(
|
667
|
+
'template:component-in-shadow-dom',
|
668
|
+
hbs('<ShadowDom><TestFoo /></ShadowDom>', {
|
669
|
+
moduleName: 'my-app/templates/component-in-shadow-dom.hbs',
|
670
|
+
}),
|
671
|
+
);
|
672
|
+
|
638
673
|
this.owner.register(
|
639
674
|
'template:comments/index',
|
640
675
|
hbs('{{#each this.comments as |comment|}}{{comment}}{{/each}}', {
|
@@ -1200,5 +1235,45 @@ module('Ember Debug - View', function (hooks) {
|
|
1200
1235
|
.dom('.ember-inspector-tooltip-detail-instance', tooltip)
|
1201
1236
|
.hasText(/ember-wormhole/);
|
1202
1237
|
});
|
1238
|
+
|
1239
|
+
test('component inside shadow dom', async function (assert) {
|
1240
|
+
if (isInVersionSpecifier('^5.8.0', VERSION)) {
|
1241
|
+
assert.expect(2);
|
1242
|
+
return;
|
1243
|
+
}
|
1244
|
+
await visit('component-in-shadow-dom');
|
1245
|
+
await rerender();
|
1246
|
+
await getRenderTree();
|
1247
|
+
|
1248
|
+
const inShadow = window.testShadow.querySelector('.simple-component');
|
1249
|
+
|
1250
|
+
await click(window.testShadow.host, {
|
1251
|
+
clientX: inShadow.getBoundingClientRect().x,
|
1252
|
+
clientY: inShadow.getBoundingClientRect().y,
|
1253
|
+
});
|
1254
|
+
|
1255
|
+
assert
|
1256
|
+
.dom('.ember-inspector-tooltip-header', tooltip)
|
1257
|
+
.hasText('<TestFoo>');
|
1258
|
+
|
1259
|
+
let actual = highlight.getBoundingClientRect();
|
1260
|
+
let expected = inShadow.getBoundingClientRect();
|
1261
|
+
|
1262
|
+
assert.ok(isVisible(tooltip), 'tooltip is visible');
|
1263
|
+
assert.ok(isVisible(highlight), 'highlight is visible');
|
1264
|
+
|
1265
|
+
assert.deepEqual(actual.x, expected.x, 'same x as component');
|
1266
|
+
assert.deepEqual(actual.y, expected.y, 'same y as component');
|
1267
|
+
assert.deepEqual(actual.width, expected.width, 'same width as component');
|
1268
|
+
assert.deepEqual(
|
1269
|
+
actual.height,
|
1270
|
+
expected.height,
|
1271
|
+
'same height as component',
|
1272
|
+
);
|
1273
|
+
|
1274
|
+
assert
|
1275
|
+
.dom('.ember-inspector-tooltip-detail-instance', tooltip)
|
1276
|
+
.hasText('App.TestFooComponent');
|
1277
|
+
});
|
1203
1278
|
});
|
1204
1279
|
});
|