ember-inspector 4.13.1-alpha.2024.8.9 → 4.13.1-alpha.2025.10.1

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.
Files changed (548) hide show
  1. package/PRIVACY.md +3 -0
  2. package/README.md +10 -2
  3. package/app/components/app-picker.hbs +2 -2
  4. package/app/components/component-tree-item.hbs +14 -14
  5. package/app/components/component-tree-toolbar.hbs +17 -3
  6. package/app/components/{date-property-field.js → date-property-field.ts} +6 -5
  7. package/app/components/deprecation-item-source.hbs +1 -1
  8. package/app/components/deprecation-item.hbs +1 -1
  9. package/app/components/deprecations-toolbar.hbs +1 -1
  10. package/app/components/item-types.hbs +7 -7
  11. package/app/components/list-cell.hbs +3 -3
  12. package/app/components/list-content.hbs +4 -3
  13. package/app/components/list-content.ts +96 -0
  14. package/app/components/list.hbs +3 -3
  15. package/app/components/list.js +7 -7
  16. package/app/components/model-types-toolbar.hbs +3 -3
  17. package/app/components/object-inspector/component-parents.hbs +33 -0
  18. package/app/components/object-inspector/component-parents.js +43 -0
  19. package/app/components/object-inspector/dependent-keys.hbs +4 -4
  20. package/app/components/object-inspector/errors.hbs +4 -4
  21. package/app/components/object-inspector/properties-all.hbs +1 -1
  22. package/app/components/object-inspector/properties-base.js +2 -0
  23. package/app/components/object-inspector/properties-grouped.hbs +5 -5
  24. package/app/components/object-inspector/property.hbs +36 -34
  25. package/app/components/object-inspector/property.ts +34 -17
  26. package/app/components/object-inspector/sort-properties.js +12 -4
  27. package/app/components/object-inspector/toggle.hbs +9 -0
  28. package/app/components/object-inspector/toggle.js +6 -0
  29. package/app/components/object-inspector.hbs +11 -9
  30. package/app/components/object-inspector.js +1 -1
  31. package/app/components/promise-item.hbs +11 -11
  32. package/app/components/promise-item.js +8 -6
  33. package/app/components/promise-tree-toolbar.hbs +5 -5
  34. package/app/components/records-toolbar.hbs +2 -2
  35. package/app/components/render-item.hbs +4 -4
  36. package/app/components/render-item.ts +12 -9
  37. package/app/components/render-tree-toolbar.hbs +1 -1
  38. package/app/components/route-cell-name.hbs +1 -1
  39. package/app/components/route-cell-name.js +3 -2
  40. package/app/components/route-tree-toolbar.hbs +2 -2
  41. package/app/components/scroll-container.js +2 -0
  42. package/app/components/side-nav.hbs +5 -5
  43. package/app/components/side-nav.js +1 -1
  44. package/{lib/ui/addon/components → app/components/ui}/drag-handle.hbs +4 -4
  45. package/{lib/ui/addon/components → app/components/ui}/drag-handle.js +3 -1
  46. package/{lib/ui/addon/components → app/components/ui}/empty-message.hbs +1 -1
  47. package/{lib/ui/addon/components → app/components/ui}/error-page.hbs +3 -3
  48. package/{lib/ui/addon/components → app/components/ui}/resizable-column.js +1 -1
  49. package/{lib/ui/addon/components → app/components/ui}/toolbar-clear-button.hbs +1 -1
  50. package/{lib/ui/addon/components → app/components/ui}/toolbar-reload-button.hbs +1 -1
  51. package/{lib/ui/addon/components → app/components/ui}/toolbar-search-field.hbs +2 -2
  52. package/app/computed/{debounce.js → debounce.ts} +7 -5
  53. package/app/config/environment.d.ts +5 -2
  54. package/app/controllers/app-config.js +1 -0
  55. package/app/controllers/application.js +36 -71
  56. package/app/controllers/component-tree.js +26 -7
  57. package/app/controllers/container-type.js +2 -1
  58. package/app/controllers/container-types/{index.js → index.ts} +5 -2
  59. package/app/controllers/container-types.js +3 -6
  60. package/app/controllers/deprecations.js +16 -11
  61. package/app/controllers/libraries.js +1 -0
  62. package/app/controllers/model-types.js +1 -0
  63. package/app/controllers/promise-tree.ts +149 -0
  64. package/app/controllers/records.js +18 -26
  65. package/app/controllers/{render-tree.js → render-tree.ts} +54 -45
  66. package/app/controllers/route-tree.js +7 -5
  67. package/app/helpers/build-style.js +1 -1
  68. package/app/index.html +1 -19
  69. package/app/initializers/setup.js +1 -1
  70. package/app/libs/promise-assembler.ts +249 -0
  71. package/app/libs/resizable-columns.js +10 -10
  72. package/app/models/{promise.js → promise.ts} +72 -69
  73. package/app/{router.js → router.ts} +1 -1
  74. package/app/routes/app-detected.js +3 -5
  75. package/app/routes/application.js +9 -13
  76. package/app/routes/deprecations.js +7 -16
  77. package/app/routes/launch.js +2 -1
  78. package/app/routes/libraries.js +2 -1
  79. package/app/routes/model-type.js +2 -3
  80. package/app/routes/model-types.ts +57 -0
  81. package/app/routes/promise-tree.ts +63 -0
  82. package/app/routes/records.ts +78 -0
  83. package/app/routes/render-tree.ts +93 -0
  84. package/app/routes/route-tree.js +0 -1
  85. package/app/routes/{tab.js → tab.ts} +9 -2
  86. package/app/routes/whats-new.js +2 -2
  87. package/app/services/adapters/{basic.js → basic.ts} +36 -30
  88. package/app/services/adapters/{bookmarklet.js → bookmarklet.ts} +17 -24
  89. package/app/services/adapters/{chrome.js → chrome.ts} +1 -2
  90. package/app/services/adapters/{web-extension.js → web-extension.ts} +46 -46
  91. package/app/services/adapters/websocket.ts +40 -0
  92. package/app/services/layout.ts +124 -0
  93. package/app/services/port.ts +195 -0
  94. package/app/services/storage/{local.js → local.ts} +7 -20
  95. package/app/services/storage/{memory.js → memory.ts} +6 -21
  96. package/app/services/{storage.js → storage.ts} +9 -20
  97. package/app/styles/app.scss +1 -0
  98. package/app/styles/base.scss +6 -2
  99. package/app/styles/colors.scss +33 -31
  100. package/app/styles/component_tree.scss +56 -51
  101. package/app/styles/dropdown.scss +2 -2
  102. package/app/styles/ember-table.scss +3 -3
  103. package/app/styles/mixin.scss +26 -26
  104. package/app/styles/object_inspector.scss +30 -21
  105. package/{lib/ui/addon/styles → app/styles/ui}/_disclosure-triangle.scss +3 -1
  106. package/{lib/ui/addon/styles → app/styles/ui}/_drag-handle.scss +7 -7
  107. package/{lib/ui/addon/styles → app/styles/ui}/_empty-message.scss +1 -1
  108. package/{lib/ui/addon/styles → app/styles/ui}/_error-page.scss +8 -7
  109. package/{lib/ui/addon/styles → app/styles/ui}/_list.scss +46 -45
  110. package/{lib/ui/addon/styles → app/styles/ui}/_nav.scss +29 -27
  111. package/app/styles/ui/_object-inspector-toggle.scss +4 -0
  112. package/{lib/ui/addon/styles → app/styles/ui}/_pill.scss +4 -4
  113. package/{lib/ui/addon/styles → app/styles/ui}/_send-to-console.scss +1 -1
  114. package/{lib/ui/addon/styles → app/styles/ui}/_split.scss +26 -20
  115. package/app/styles/ui/_ui.scss +13 -0
  116. package/{lib/ui/addon/styles → app/styles/ui}/toolbar/_checkbox.scss +5 -5
  117. package/app/styles/ui/toolbar/_icon-button.scss +80 -0
  118. package/{lib/ui/addon/styles → app/styles/ui}/toolbar/_index.scss +6 -5
  119. package/{lib/ui/addon/styles → app/styles/ui}/toolbar/_radio.scss +10 -10
  120. package/{lib/ui/addon/styles → app/styles/ui}/toolbar/_search.scss +5 -3
  121. package/app/styles/utils.scss +408 -122
  122. package/app/templates/application.hbs +21 -19
  123. package/app/templates/component-tree.hbs +4 -1
  124. package/app/templates/deprecations.hbs +2 -3
  125. package/app/templates/info.hbs +10 -10
  126. package/app/templates/promise-tree.hbs +1 -1
  127. package/app/templates/render-tree.hbs +1 -1
  128. package/app/templates/route-tree.hbs +1 -1
  129. package/app/utils/escape-reg-exp.ts +3 -2
  130. package/app/utils/nullish.ts +7 -0
  131. package/app/utils/parse-text.ts +4 -5
  132. package/app/utils/truncate.js +0 -1
  133. package/config/ember-cli-update.json +5 -3
  134. package/config/ember-try.js +117 -72
  135. package/config/environment.js +1 -1
  136. package/config/optional-features.json +2 -1
  137. package/dist/bookmarklet/load_inspector.js +31 -11
  138. package/dist/bookmarklet/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js +1135 -0
  139. package/dist/bookmarklet/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js.LICENSE.txt +18 -0
  140. package/dist/bookmarklet/panes-3-16-0/assets/chunk.524.3530526ca8a0822af855.js +40 -0
  141. package/dist/bookmarklet/panes-3-16-0/assets/chunk.582.0ae94a39ca88591dff80.js +42 -0
  142. package/dist/bookmarklet/panes-3-16-0/assets/ember-inspector.css +997 -156
  143. package/dist/bookmarklet/panes-3-16-0/assets/ember-inspector.js +557 -609
  144. package/dist/bookmarklet/panes-3-16-0/assets/svg/ellipsis.svg +3 -3
  145. package/dist/bookmarklet/panes-3-16-0/assets/svg/focus-point-round.svg +9 -0
  146. package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-bug.svg +1 -1
  147. package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-components.svg +2 -2
  148. package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-container.svg +1 -1
  149. package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-data.svg +1 -1
  150. package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-deprecations.svg +3 -3
  151. package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-info.svg +3 -3
  152. package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-promises.svg +2 -2
  153. package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-render-performance.svg +2 -2
  154. package/dist/bookmarklet/panes-3-16-0/assets/svg/nav-route-tree.svg +7 -7
  155. package/dist/bookmarklet/panes-3-16-0/assets/svg/sidebar-toggle-trailing.svg +9 -0
  156. package/dist/bookmarklet/panes-3-16-0/assets/vendor.css +4 -841
  157. package/dist/bookmarklet/panes-3-16-0/assets/vendor.js +4277 -5152
  158. package/dist/bookmarklet/panes-3-16-0/base-object-HAEdWjmg.js +59 -0
  159. package/dist/bookmarklet/panes-3-16-0/basic-DfbgtngO.js +144 -0
  160. package/dist/bookmarklet/panes-3-16-0/basic-debug.js +6 -0
  161. package/dist/bookmarklet/panes-3-16-0/bookmarklet-debug.js +34 -0
  162. package/dist/bookmarklet/panes-3-16-0/chrome-debug.js +12 -0
  163. package/dist/bookmarklet/panes-3-16-0/ember.js +115 -0
  164. package/dist/bookmarklet/panes-3-16-0/ember_debug.js +24 -11011
  165. package/dist/bookmarklet/panes-3-16-0/evented-BCTya3yE.js +62 -0
  166. package/dist/bookmarklet/panes-3-16-0/firefox-debug.js +32 -0
  167. package/dist/bookmarklet/panes-3-16-0/index.html +4 -23
  168. package/dist/bookmarklet/panes-3-16-0/internals-CRmXMEzb.js +12 -0
  169. package/dist/bookmarklet/panes-3-16-0/main.js +7663 -0
  170. package/dist/bookmarklet/panes-3-16-0/port.js +108 -0
  171. package/dist/bookmarklet/panes-3-16-0/profile-node.js +60 -0
  172. package/dist/bookmarklet/panes-3-16-0/promise-assembler.js +218 -0
  173. package/dist/bookmarklet/panes-3-16-0/runloop-CF-Qpqgy.js +1138 -0
  174. package/dist/bookmarklet/panes-3-16-0/start-inspector-BPAW_WLv.js +376 -0
  175. package/dist/bookmarklet/panes-3-16-0/type-check.js +119 -0
  176. package/dist/bookmarklet/panes-3-16-0/version.js +90 -0
  177. package/dist/bookmarklet/panes-3-16-0/versions.js +4 -0
  178. package/dist/bookmarklet/panes-3-16-0/web-extension-C3pMNVSY.js +144 -0
  179. package/dist/bookmarklet/panes-3-16-0/websocket-debug.js +60 -0
  180. package/dist/chrome/background.js +26 -21
  181. package/dist/chrome/boot.js +1 -1
  182. package/dist/chrome/content-script.js +12 -11
  183. package/dist/chrome/devtools.js +12 -3
  184. package/dist/chrome/manifest.json +3 -3
  185. package/dist/chrome/options.js +17 -12
  186. package/dist/chrome/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js +1135 -0
  187. package/dist/chrome/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js.LICENSE.txt +18 -0
  188. package/dist/chrome/panes-3-16-0/assets/chunk.524.3530526ca8a0822af855.js +40 -0
  189. package/dist/chrome/panes-3-16-0/assets/chunk.582.0ae94a39ca88591dff80.js +42 -0
  190. package/dist/chrome/panes-3-16-0/assets/ember-inspector.css +997 -156
  191. package/dist/chrome/panes-3-16-0/assets/ember-inspector.js +557 -609
  192. package/dist/chrome/panes-3-16-0/assets/svg/ellipsis.svg +3 -3
  193. package/dist/chrome/panes-3-16-0/assets/svg/focus-point-round.svg +9 -0
  194. package/dist/chrome/panes-3-16-0/assets/svg/nav-bug.svg +1 -1
  195. package/dist/chrome/panes-3-16-0/assets/svg/nav-components.svg +2 -2
  196. package/dist/chrome/panes-3-16-0/assets/svg/nav-container.svg +1 -1
  197. package/dist/chrome/panes-3-16-0/assets/svg/nav-data.svg +1 -1
  198. package/dist/chrome/panes-3-16-0/assets/svg/nav-deprecations.svg +3 -3
  199. package/dist/chrome/panes-3-16-0/assets/svg/nav-info.svg +3 -3
  200. package/dist/chrome/panes-3-16-0/assets/svg/nav-promises.svg +2 -2
  201. package/dist/chrome/panes-3-16-0/assets/svg/nav-render-performance.svg +2 -2
  202. package/dist/chrome/panes-3-16-0/assets/svg/nav-route-tree.svg +7 -7
  203. package/dist/chrome/panes-3-16-0/assets/svg/sidebar-toggle-trailing.svg +9 -0
  204. package/dist/chrome/panes-3-16-0/assets/vendor.css +4 -841
  205. package/dist/chrome/panes-3-16-0/assets/vendor.js +4277 -5152
  206. package/dist/chrome/panes-3-16-0/base-object-HAEdWjmg.js +59 -0
  207. package/dist/chrome/panes-3-16-0/basic-DfbgtngO.js +144 -0
  208. package/dist/chrome/panes-3-16-0/basic-debug.js +6 -0
  209. package/dist/chrome/panes-3-16-0/bookmarklet-debug.js +34 -0
  210. package/dist/chrome/panes-3-16-0/chrome-debug.js +12 -0
  211. package/dist/chrome/panes-3-16-0/ember.js +115 -0
  212. package/dist/chrome/panes-3-16-0/ember_debug.js +12 -11021
  213. package/dist/chrome/panes-3-16-0/evented-BCTya3yE.js +62 -0
  214. package/dist/chrome/panes-3-16-0/firefox-debug.js +32 -0
  215. package/dist/chrome/panes-3-16-0/index.html +4 -23
  216. package/dist/chrome/panes-3-16-0/internals-CRmXMEzb.js +12 -0
  217. package/dist/chrome/panes-3-16-0/main.js +7663 -0
  218. package/dist/chrome/panes-3-16-0/port.js +108 -0
  219. package/dist/chrome/panes-3-16-0/profile-node.js +60 -0
  220. package/dist/chrome/panes-3-16-0/promise-assembler.js +218 -0
  221. package/dist/chrome/panes-3-16-0/runloop-CF-Qpqgy.js +1138 -0
  222. package/dist/chrome/panes-3-16-0/start-inspector-BPAW_WLv.js +376 -0
  223. package/dist/chrome/panes-3-16-0/type-check.js +119 -0
  224. package/dist/chrome/panes-3-16-0/version.js +90 -0
  225. package/dist/chrome/panes-3-16-0/versions.js +4 -0
  226. package/dist/chrome/panes-3-16-0/web-extension-C3pMNVSY.js +144 -0
  227. package/dist/chrome/panes-3-16-0/websocket-debug.js +60 -0
  228. package/dist/chrome/scripts/in-page-script.js +19 -13
  229. package/dist/firefox/background.js +26 -21
  230. package/dist/firefox/boot.js +1 -1
  231. package/dist/firefox/content-script.js +12 -11
  232. package/dist/firefox/devtools.js +12 -3
  233. package/dist/firefox/manifest.json +3 -3
  234. package/dist/firefox/options.js +17 -12
  235. package/dist/firefox/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js +1135 -0
  236. package/dist/firefox/panes-3-16-0/assets/chunk.443.86a005e528b587663b78.js.LICENSE.txt +18 -0
  237. package/dist/firefox/panes-3-16-0/assets/chunk.524.3530526ca8a0822af855.js +40 -0
  238. package/dist/firefox/panes-3-16-0/assets/chunk.582.0ae94a39ca88591dff80.js +42 -0
  239. package/dist/firefox/panes-3-16-0/assets/ember-inspector.css +997 -156
  240. package/dist/firefox/panes-3-16-0/assets/ember-inspector.js +557 -609
  241. package/dist/firefox/panes-3-16-0/assets/svg/ellipsis.svg +3 -3
  242. package/dist/firefox/panes-3-16-0/assets/svg/focus-point-round.svg +9 -0
  243. package/dist/firefox/panes-3-16-0/assets/svg/nav-bug.svg +1 -1
  244. package/dist/firefox/panes-3-16-0/assets/svg/nav-components.svg +2 -2
  245. package/dist/firefox/panes-3-16-0/assets/svg/nav-container.svg +1 -1
  246. package/dist/firefox/panes-3-16-0/assets/svg/nav-data.svg +1 -1
  247. package/dist/firefox/panes-3-16-0/assets/svg/nav-deprecations.svg +3 -3
  248. package/dist/firefox/panes-3-16-0/assets/svg/nav-info.svg +3 -3
  249. package/dist/firefox/panes-3-16-0/assets/svg/nav-promises.svg +2 -2
  250. package/dist/firefox/panes-3-16-0/assets/svg/nav-render-performance.svg +2 -2
  251. package/dist/firefox/panes-3-16-0/assets/svg/nav-route-tree.svg +7 -7
  252. package/dist/firefox/panes-3-16-0/assets/svg/sidebar-toggle-trailing.svg +9 -0
  253. package/dist/firefox/panes-3-16-0/assets/vendor.css +4 -841
  254. package/dist/firefox/panes-3-16-0/assets/vendor.js +4277 -5152
  255. package/dist/firefox/panes-3-16-0/base-object-HAEdWjmg.js +59 -0
  256. package/dist/firefox/panes-3-16-0/basic-DfbgtngO.js +144 -0
  257. package/dist/firefox/panes-3-16-0/basic-debug.js +6 -0
  258. package/dist/firefox/panes-3-16-0/bookmarklet-debug.js +34 -0
  259. package/dist/firefox/panes-3-16-0/chrome-debug.js +12 -0
  260. package/dist/firefox/panes-3-16-0/ember.js +115 -0
  261. package/dist/firefox/panes-3-16-0/ember_debug.js +27 -11016
  262. package/dist/firefox/panes-3-16-0/evented-BCTya3yE.js +62 -0
  263. package/dist/firefox/panes-3-16-0/firefox-debug.js +32 -0
  264. package/dist/firefox/panes-3-16-0/index.html +4 -23
  265. package/dist/firefox/panes-3-16-0/internals-CRmXMEzb.js +12 -0
  266. package/dist/firefox/panes-3-16-0/main.js +7663 -0
  267. package/dist/firefox/panes-3-16-0/port.js +108 -0
  268. package/dist/firefox/panes-3-16-0/profile-node.js +60 -0
  269. package/dist/firefox/panes-3-16-0/promise-assembler.js +218 -0
  270. package/dist/firefox/panes-3-16-0/runloop-CF-Qpqgy.js +1138 -0
  271. package/dist/firefox/panes-3-16-0/start-inspector-BPAW_WLv.js +376 -0
  272. package/dist/firefox/panes-3-16-0/type-check.js +119 -0
  273. package/dist/firefox/panes-3-16-0/version.js +90 -0
  274. package/dist/firefox/panes-3-16-0/versions.js +4 -0
  275. package/dist/firefox/panes-3-16-0/web-extension-C3pMNVSY.js +144 -0
  276. package/dist/firefox/panes-3-16-0/websocket-debug.js +60 -0
  277. package/dist/firefox/scripts/in-page-script.js +19 -13
  278. package/dist/websocket/assets/chunk.443.86a005e528b587663b78.js +1135 -0
  279. package/dist/websocket/assets/chunk.443.86a005e528b587663b78.js.LICENSE.txt +18 -0
  280. package/dist/websocket/assets/chunk.524.3530526ca8a0822af855.js +40 -0
  281. package/dist/websocket/assets/chunk.582.0ae94a39ca88591dff80.js +42 -0
  282. package/dist/websocket/assets/ember-inspector.css +997 -156
  283. package/dist/websocket/assets/ember-inspector.js +557 -609
  284. package/dist/websocket/assets/svg/ellipsis.svg +3 -3
  285. package/dist/websocket/assets/svg/focus-point-round.svg +9 -0
  286. package/dist/websocket/assets/svg/nav-bug.svg +1 -1
  287. package/dist/websocket/assets/svg/nav-components.svg +2 -2
  288. package/dist/websocket/assets/svg/nav-container.svg +1 -1
  289. package/dist/websocket/assets/svg/nav-data.svg +1 -1
  290. package/dist/websocket/assets/svg/nav-deprecations.svg +3 -3
  291. package/dist/websocket/assets/svg/nav-info.svg +3 -3
  292. package/dist/websocket/assets/svg/nav-promises.svg +2 -2
  293. package/dist/websocket/assets/svg/nav-render-performance.svg +2 -2
  294. package/dist/websocket/assets/svg/nav-route-tree.svg +7 -7
  295. package/dist/websocket/assets/svg/sidebar-toggle-trailing.svg +9 -0
  296. package/dist/websocket/assets/vendor.css +4 -841
  297. package/dist/websocket/assets/vendor.js +4277 -5152
  298. package/dist/websocket/base-object-HAEdWjmg.js +59 -0
  299. package/dist/websocket/basic-DfbgtngO.js +144 -0
  300. package/dist/websocket/basic-debug.js +6 -0
  301. package/dist/websocket/bookmarklet-debug.js +34 -0
  302. package/dist/websocket/chrome-debug.js +12 -0
  303. package/dist/websocket/ember.js +115 -0
  304. package/dist/websocket/ember_debug.js +48 -11009
  305. package/dist/websocket/evented-BCTya3yE.js +62 -0
  306. package/dist/websocket/firefox-debug.js +32 -0
  307. package/dist/websocket/index.html +4 -23
  308. package/dist/websocket/internals-CRmXMEzb.js +12 -0
  309. package/dist/websocket/main.js +7663 -0
  310. package/dist/websocket/port.js +108 -0
  311. package/dist/websocket/profile-node.js +60 -0
  312. package/dist/websocket/promise-assembler.js +218 -0
  313. package/dist/websocket/runloop-CF-Qpqgy.js +1138 -0
  314. package/dist/websocket/start-inspector-BPAW_WLv.js +376 -0
  315. package/dist/websocket/type-check.js +119 -0
  316. package/dist/websocket/version.js +90 -0
  317. package/dist/websocket/versions.js +4 -0
  318. package/dist/websocket/web-extension-C3pMNVSY.js +144 -0
  319. package/dist/websocket/websocket-debug.js +60 -0
  320. package/ember-cli-build.js +31 -140
  321. package/ember_debug/adapters/basic.js +10 -29
  322. package/ember_debug/adapters/bookmarklet.js +1 -0
  323. package/ember_debug/adapters/firefox.js +3 -3
  324. package/ember_debug/adapters/web-extension.js +6 -5
  325. package/ember_debug/adapters/websocket.js +2 -2
  326. package/ember_debug/babel.config.cjs +11 -0
  327. package/ember_debug/container-debug.js +1 -1
  328. package/ember_debug/data-debug.js +7 -8
  329. package/ember_debug/debug-port.js +1 -1
  330. package/ember_debug/deprecation-debug.js +14 -14
  331. package/ember_debug/entrypoints/basic-debug.js +6 -0
  332. package/ember_debug/entrypoints/bookmarklet-debug.js +6 -0
  333. package/ember_debug/entrypoints/chrome-debug.js +6 -0
  334. package/ember_debug/entrypoints/firefox-debug.js +6 -0
  335. package/ember_debug/entrypoints/websocket-debug.js +6 -0
  336. package/ember_debug/general-debug.js +4 -4
  337. package/ember_debug/lib/boot-ember-inspector.js +9 -0
  338. package/ember_debug/lib/get-applications.js +27 -0
  339. package/ember_debug/lib/load-ember-debug-in-webpage.js +30 -0
  340. package/ember_debug/lib/send-apps.js +14 -0
  341. package/ember_debug/lib/send-version-miss.js +39 -0
  342. package/ember_debug/lib/setup-instance-initializer.js +16 -0
  343. package/ember_debug/lib/start-inspector.js +211 -0
  344. package/ember_debug/lib/version-test.js +73 -0
  345. package/ember_debug/lib/versions.js +3 -0
  346. package/ember_debug/libs/capture-render-tree.js +1 -2
  347. package/ember_debug/libs/promise-assembler.js +5 -4
  348. package/ember_debug/libs/render-tree.js +37 -44
  349. package/ember_debug/libs/source-map.js +7 -6
  350. package/ember_debug/libs/view-inspection.js +25 -17
  351. package/ember_debug/main.js +18 -21
  352. package/ember_debug/models/profile-manager.js +6 -6
  353. package/ember_debug/models/profile-node.js +1 -1
  354. package/ember_debug/models/promise.js +2 -2
  355. package/ember_debug/object-inspector.js +71 -65
  356. package/ember_debug/package.json +27 -0
  357. package/ember_debug/port.js +5 -4
  358. package/ember_debug/promise-debug.js +5 -5
  359. package/ember_debug/render-debug.js +5 -5
  360. package/ember_debug/rollup.config.js +24 -0
  361. package/ember_debug/route-debug.js +10 -9
  362. package/ember_debug/services/session.js +2 -2
  363. package/ember_debug/utils/classify.js +1 -1
  364. package/ember_debug/utils/ember/object/internals.js +1 -11
  365. package/ember_debug/utils/ember/own-runloop.js +1 -1
  366. package/ember_debug/utils/ember/runloop.js +7 -10
  367. package/ember_debug/utils/ember-object-names.js +7 -8
  368. package/ember_debug/utils/ember.js +120 -14
  369. package/ember_debug/utils/evented.js +1 -1
  370. package/ember_debug/utils/get-object-name.js +3 -3
  371. package/ember_debug/utils/type-check.js +9 -5
  372. package/ember_debug/view-debug.js +12 -6
  373. package/eslint.config.mjs +173 -0
  374. package/gulpfile.js +1 -1
  375. package/package.json +97 -95
  376. package/pnpm-workspace.yaml +3 -0
  377. package/public/assets/svg/ellipsis.svg +3 -3
  378. package/public/assets/svg/focus-point-round.svg +9 -0
  379. package/public/assets/svg/nav-bug.svg +1 -1
  380. package/public/assets/svg/nav-components.svg +2 -2
  381. package/public/assets/svg/nav-container.svg +1 -1
  382. package/public/assets/svg/nav-data.svg +1 -1
  383. package/public/assets/svg/nav-deprecations.svg +3 -3
  384. package/public/assets/svg/nav-info.svg +3 -3
  385. package/public/assets/svg/nav-promises.svg +2 -2
  386. package/public/assets/svg/nav-render-performance.svg +2 -2
  387. package/public/assets/svg/nav-route-tree.svg +7 -7
  388. package/public/assets/svg/sidebar-toggle-trailing.svg +9 -0
  389. package/scripts/download-panes.js +1 -1
  390. package/skeletons/bookmarklet/load_inspector.js +31 -11
  391. package/skeletons/web-extension/background.js +26 -21
  392. package/skeletons/web-extension/boot.js +1 -1
  393. package/skeletons/web-extension/content-script.js +12 -11
  394. package/skeletons/web-extension/devtools.js +12 -3
  395. package/skeletons/web-extension/manifest.json +3 -3
  396. package/skeletons/web-extension/options.js +17 -12
  397. package/skeletons/web-extension/scripts/in-page-script.js +19 -13
  398. package/testem.js +0 -1
  399. package/tests/acceptance/app-picker-test.js +4 -4
  400. package/tests/acceptance/component-tree-test.js +96 -57
  401. package/tests/acceptance/container-test.js +0 -2
  402. package/tests/acceptance/data-test.js +8 -10
  403. package/tests/acceptance/deprecation-test.js +8 -12
  404. package/tests/acceptance/info-test.js +2 -2
  405. package/tests/acceptance/object-inspector-test.js +62 -110
  406. package/tests/acceptance/promise-test.js +1 -11
  407. package/tests/acceptance/render-tree-test.js +2 -2
  408. package/tests/acceptance/route-tree-test.js +12 -14
  409. package/tests/acceptance/whats-new-test.js +4 -4
  410. package/tests/ember_debug/container-debug-test.js +4 -4
  411. package/tests/ember_debug/deprecation-debug-test.js +8 -5
  412. package/tests/ember_debug/ember-debug-test.js +1 -4
  413. package/tests/ember_debug/object-inspector-test.js +108 -49
  414. package/tests/ember_debug/profile-manager-test.js +142 -169
  415. package/tests/ember_debug/profile-node-test.js +4 -4
  416. package/tests/ember_debug/promise-assembler-test.js +13 -10
  417. package/tests/ember_debug/promise-debug-test.js +5 -6
  418. package/tests/ember_debug/route-debug-test.js +8 -7
  419. package/tests/ember_debug/view-debug-test.js +257 -182
  420. package/tests/helpers/{index.js → index.ts} +6 -5
  421. package/tests/helpers/setup-ember-debug-test.js +14 -0
  422. package/tests/index.html +1 -2
  423. package/tests/integration/injection-test.js +14 -15
  424. package/tests/test-adapter.js +15 -15
  425. package/tests/test-helper.js +6 -4
  426. package/tests/unit/check-current-route-test.js +0 -4
  427. package/tests/unit/resizable-columns-test.js +53 -51
  428. package/tests/unit/utils/parse-text-test.js +3 -3
  429. package/tests/unit/utils/search-match-test.js +5 -5
  430. package/tests/unit/utils/type-check-test.js +22 -0
  431. package/tsconfig.json +3 -1
  432. package/types/ember-inspector/index.d.ts +2 -1
  433. package/types/global.d.ts +1 -7
  434. package/.editorconfig +0 -19
  435. package/.ember-cli +0 -15
  436. package/.eslintignore +0 -33
  437. package/.eslintrc.js +0 -86
  438. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -30
  439. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
  440. package/.github/dependabot.yml +0 -14
  441. package/.github/pull_request_template.md +0 -4
  442. package/.github/workflows/build.yml +0 -339
  443. package/.github/workflows/plan-release.yml +0 -83
  444. package/.github/workflows/publish.yml +0 -60
  445. package/.prettierignore +0 -25
  446. package/.prettierrc.js +0 -14
  447. package/.release-plan.json +0 -17
  448. package/.stylelintrc.js +0 -3
  449. package/.template-lintrc.js +0 -12
  450. package/.tool-versions +0 -2
  451. package/.watchmanconfig +0 -3
  452. package/app/components/.gitkeep +0 -0
  453. package/app/components/list-content.js +0 -130
  454. package/app/controllers/.gitkeep +0 -0
  455. package/app/controllers/promise-tree.js +0 -130
  456. package/app/helpers/.gitkeep +0 -0
  457. package/app/libs/promise-assembler.js +0 -169
  458. package/app/models/.gitkeep +0 -0
  459. package/app/routes/.gitkeep +0 -0
  460. package/app/routes/model-types.js +0 -47
  461. package/app/routes/promise-tree.js +0 -48
  462. package/app/routes/records.js +0 -55
  463. package/app/routes/render-tree.js +0 -66
  464. package/app/services/adapters/websocket.js +0 -31
  465. package/app/services/layout.js +0 -39
  466. package/app/services/port.js +0 -90
  467. package/dist/bookmarklet/panes-3-16-0/assets/chunk.143.143ca772b0b28102c74a.js +0 -28
  468. package/dist/bookmarklet/panes-3-16-0/assets/chunk.178.b50e140d1ed8777b583e.js +0 -9
  469. package/dist/bookmarklet/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js +0 -2620
  470. package/dist/bookmarklet/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js.LICENSE.txt +0 -67
  471. package/dist/bookmarklet/panes-3-16-0/assets/fonts/Inter-Bold.woff +0 -0
  472. package/dist/bookmarklet/panes-3-16-0/assets/fonts/Inter-Bold.woff2 +0 -0
  473. package/dist/bookmarklet/panes-3-16-0/assets/fonts/Inter-Regular.woff +0 -0
  474. package/dist/bookmarklet/panes-3-16-0/assets/fonts/Inter-Regular.woff2 +0 -0
  475. package/dist/chrome/panes-3-16-0/assets/chunk.143.143ca772b0b28102c74a.js +0 -28
  476. package/dist/chrome/panes-3-16-0/assets/chunk.178.b50e140d1ed8777b583e.js +0 -9
  477. package/dist/chrome/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js +0 -2620
  478. package/dist/chrome/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js.LICENSE.txt +0 -67
  479. package/dist/chrome/panes-3-16-0/assets/fonts/Inter-Bold.woff +0 -0
  480. package/dist/chrome/panes-3-16-0/assets/fonts/Inter-Bold.woff2 +0 -0
  481. package/dist/chrome/panes-3-16-0/assets/fonts/Inter-Regular.woff +0 -0
  482. package/dist/chrome/panes-3-16-0/assets/fonts/Inter-Regular.woff2 +0 -0
  483. package/dist/firefox/panes-3-16-0/assets/chunk.143.143ca772b0b28102c74a.js +0 -28
  484. package/dist/firefox/panes-3-16-0/assets/chunk.178.b50e140d1ed8777b583e.js +0 -9
  485. package/dist/firefox/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js +0 -2620
  486. package/dist/firefox/panes-3-16-0/assets/chunk.359.0be5d21f60d2b5d6d423.js.LICENSE.txt +0 -67
  487. package/dist/firefox/panes-3-16-0/assets/fonts/Inter-Bold.woff +0 -0
  488. package/dist/firefox/panes-3-16-0/assets/fonts/Inter-Bold.woff2 +0 -0
  489. package/dist/firefox/panes-3-16-0/assets/fonts/Inter-Regular.woff +0 -0
  490. package/dist/firefox/panes-3-16-0/assets/fonts/Inter-Regular.woff2 +0 -0
  491. package/dist/websocket/assets/chunk.143.143ca772b0b28102c74a.js +0 -28
  492. package/dist/websocket/assets/chunk.178.b50e140d1ed8777b583e.js +0 -9
  493. package/dist/websocket/assets/chunk.359.0be5d21f60d2b5d6d423.js +0 -2620
  494. package/dist/websocket/assets/chunk.359.0be5d21f60d2b5d6d423.js.LICENSE.txt +0 -67
  495. package/dist/websocket/assets/fonts/Inter-Bold.woff +0 -0
  496. package/dist/websocket/assets/fonts/Inter-Bold.woff2 +0 -0
  497. package/dist/websocket/assets/fonts/Inter-Regular.woff +0 -0
  498. package/dist/websocket/assets/fonts/Inter-Regular.woff2 +0 -0
  499. package/ember_debug/.eslintrc.js +0 -13
  500. package/ember_debug/utils/ember/debug.js +0 -20
  501. package/ember_debug/utils/ember/instrumentation.js +0 -11
  502. package/ember_debug/utils/ember/loader.js +0 -22
  503. package/ember_debug/utils/rsvp.js +0 -20
  504. package/ember_debug/vendor/loader.js +0 -54
  505. package/ember_debug/vendor/startup-wrapper.js +0 -399
  506. package/lib/ui/addon/styles/_object-inspector-toggle.scss +0 -12
  507. package/lib/ui/addon/styles/addon.scss +0 -13
  508. package/lib/ui/addon/styles/toolbar/_icon-button.scss +0 -61
  509. package/lib/ui/app/components/ui/disclosure-triangle.js +0 -1
  510. package/lib/ui/app/components/ui/disclosure.js +0 -1
  511. package/lib/ui/app/components/ui/drag-handle.js +0 -1
  512. package/lib/ui/app/components/ui/draggable-column.js +0 -1
  513. package/lib/ui/app/components/ui/empty-message.js +0 -1
  514. package/lib/ui/app/components/ui/error-page.js +0 -1
  515. package/lib/ui/app/components/ui/open-links-in-new-window.js +0 -1
  516. package/lib/ui/app/components/ui/resizable-column.js +0 -1
  517. package/lib/ui/app/components/ui/send-to-console.js +0 -1
  518. package/lib/ui/app/components/ui/toolbar-clear-button.js +0 -1
  519. package/lib/ui/app/components/ui/toolbar-divider.js +0 -1
  520. package/lib/ui/app/components/ui/toolbar-reload-button.js +0 -1
  521. package/lib/ui/app/components/ui/toolbar-search-field.js +0 -1
  522. package/lib/ui/app/components/ui/warning-message.js +0 -1
  523. package/lib/ui/index.js +0 -34
  524. package/lib/ui/package.json +0 -13
  525. package/public/assets/fonts/Inter-Bold.woff +0 -0
  526. package/public/assets/fonts/Inter-Bold.woff2 +0 -0
  527. package/public/assets/fonts/Inter-Regular.woff +0 -0
  528. package/public/assets/fonts/Inter-Regular.woff2 +0 -0
  529. package/tests/helpers/trigger-port.js +0 -6
  530. package/tests/unit/.gitkeep +0 -0
  531. /package/app/{app.js → app.ts} +0 -0
  532. /package/{lib/ui/addon/components → app/components/ui}/disclosure-triangle.hbs +0 -0
  533. /package/{lib/ui/addon/components → app/components/ui}/disclosure.hbs +0 -0
  534. /package/{lib/ui/addon/components → app/components/ui}/disclosure.js +0 -0
  535. /package/{lib/ui/addon/components → app/components/ui}/draggable-column.hbs +0 -0
  536. /package/{lib/ui/addon/components → app/components/ui}/draggable-column.js +0 -0
  537. /package/{lib/ui/addon/components → app/components/ui}/open-links-in-new-window.hbs +0 -0
  538. /package/{lib/ui/addon/components → app/components/ui}/open-links-in-new-window.js +0 -0
  539. /package/{lib/ui/addon/components → app/components/ui}/resizable-column.hbs +0 -0
  540. /package/{lib/ui/addon/components → app/components/ui}/send-to-console.hbs +0 -0
  541. /package/{lib/ui/addon/components → app/components/ui}/toolbar-divider.hbs +0 -0
  542. /package/{lib/ui/addon/components → app/components/ui}/toolbar-search-field.js +0 -0
  543. /package/{lib/ui/addon/components → app/components/ui}/warning-message.hbs +0 -0
  544. /package/app/controllers/{info.js → info.ts} +0 -0
  545. /package/app/services/adapters/{firefox.js → firefox.ts} +0 -0
  546. /package/{lib/ui/addon/styles → app/styles/ui}/_goto-source.scss +0 -0
  547. /package/{lib/ui/addon/styles → app/styles/ui}/_warning.scss +0 -0
  548. /package/{lib/ui/addon/styles → app/styles/ui}/toolbar/_divider.scss +0 -0
@@ -1,10 +1,13 @@
1
+ /* eslint-disable @typescript-eslint/no-unsafe-member-access */
1
2
  import Component from '@glimmer/component';
2
3
  import { isEmpty } from '@ember/utils';
3
4
  import { htmlSafe } from '@ember/template';
4
5
  import escapeRegExp from 'ember-inspector/utils/escape-reg-exp';
5
6
 
6
7
  interface RenderItemArgs {
8
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
7
9
  list: any;
10
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
8
11
  model: any;
9
12
  search: string;
10
13
  target: { level: number };
@@ -16,7 +19,7 @@ export default class RenderItem extends Component<RenderItemArgs> {
16
19
  }
17
20
 
18
21
  get level() {
19
- let parentLevel = this.args.target?.level ?? -1;
22
+ const parentLevel = this.args.target?.level ?? -1;
20
23
 
21
24
  return parentLevel + 1;
22
25
  }
@@ -34,26 +37,26 @@ export default class RenderItem extends Component<RenderItemArgs> {
34
37
  }
35
38
 
36
39
  get readableTime() {
37
- let d = new Date(this.args.model?.timestamp);
38
- let ms = d.getMilliseconds();
39
- let seconds = d.getSeconds();
40
- let minutes =
40
+ const d = new Date(this.args.model?.timestamp as string);
41
+ const ms = d.getMilliseconds();
42
+ const seconds = d.getSeconds();
43
+ const minutes =
41
44
  d.getMinutes().toString().length === 1
42
45
  ? `0${d.getMinutes()}`
43
46
  : d.getMinutes();
44
- let hours =
47
+ const hours =
45
48
  d.getHours().toString().length === 1 ? `0${d.getHours()}` : d.getHours();
46
49
 
47
50
  return `${hours}:${minutes}:${seconds}:${ms}`;
48
51
  }
49
52
 
50
53
  get searchMatch() {
51
- let search = this.args.search;
54
+ const search = this.args.search;
52
55
  if (isEmpty(search)) {
53
56
  return true;
54
57
  }
55
- let name = this.args.model?.name;
56
- let regExp = new RegExp(escapeRegExp(search.toLowerCase()) as string);
58
+ const name = this.args.model?.name as string;
59
+ const regExp = new RegExp(escapeRegExp(search.toLowerCase()) as string);
57
60
  return !!name.toLowerCase().match(regExp);
58
61
  }
59
62
  }
@@ -17,7 +17,7 @@
17
17
  class="js-render-profiles-search"
18
18
  />
19
19
  {{#if @isHighlightEnabled}}
20
- <div class="toolbar__checkbox js-hightlight-render">
20
+ <div class="toolbar-checkbox js-hightlight-render">
21
21
  <label>
22
22
  <Input
23
23
  data-test-options-highlight-render
@@ -3,7 +3,7 @@
3
3
  title={{@route.value.name}}
4
4
  class={{concat
5
5
  "js-route-name"
6
- (if this.isCurrent " pill pill--blue pill--text font-bold")
6
+ (if this.isCurrent " pill pill-blue pill-text font-bold")
7
7
  }}
8
8
  >
9
9
  {{@route.value.name}}
@@ -1,4 +1,5 @@
1
- import { computed, get } from '@ember/object';
1
+ // eslint-disable-next-line ember/no-computed-properties-in-native-classes
2
+ import { computed } from '@ember/object';
2
3
  import Component from '@glimmer/component';
3
4
  import { htmlSafe } from '@ember/template';
4
5
  import checkCurrentRoute from 'ember-inspector/utils/check-current-route';
@@ -7,7 +8,7 @@ export default class RouteCellName extends Component {
7
8
  @computed('args.route.parentCount')
8
9
  get labelStyle() {
9
10
  return htmlSafe(
10
- `padding-left: ${+get(this, 'args.route.parentCount') * 20 + 5}px;`
11
+ `padding-left: ${+this.args.route?.parentCount * 20 + 5}px;`,
11
12
  );
12
13
  }
13
14
 
@@ -1,12 +1,12 @@
1
1
  <div class="toolbar">
2
- <div class="toolbar__checkbox js-filter-hide-routes">
2
+ <div class="toolbar-checkbox js-filter-hide-routes">
3
3
  <label>
4
4
  <Input @type="checkbox" @checked={{@options.hideRoutes}} />
5
5
  Current Route only
6
6
  </label>
7
7
  </div>
8
8
 
9
- <div class="toolbar__checkbox js-filter-hide-substates">
9
+ <div class="toolbar-checkbox js-filter-hide-substates">
10
10
  <label title="Hide loading and error substates">
11
11
  <Input @type="checkbox" @checked={{@options.hideSubstates}} />
12
12
  Hide Substates
@@ -1,4 +1,5 @@
1
1
  /* eslint-disable ember/require-tagless-components */
2
+ // eslint-disable-next-line ember/no-classic-components
2
3
  import Component from '@ember/component';
3
4
  import { action } from '@ember/object';
4
5
  import { debounce } from '@ember/runloop';
@@ -60,6 +61,7 @@ export default class ScrollContainerComponent extends Component {
60
61
  this.lastIndex = index;
61
62
  this.lastItem = currentItem;
62
63
 
64
+ // eslint-disable-next-line ember/no-runloop
63
65
  debounce(this, this.scrollIntoViewIfNeeded, 50);
64
66
  }
65
67
  }
@@ -3,13 +3,13 @@
3
3
  {{did-insert this.setupListeners}}
4
4
  {{will-destroy this.destroyListeners}}
5
5
  >
6
- <nav class="absolute inset-0 nav nav--main {{if @collapsed "nav--collapsed overflow-hidden"}}">
6
+ <nav class="absolute inset-0 nav nav-main {{if @collapsed "nav-collapsed overflow-hidden"}}">
7
7
  <ul>
8
8
  {{#each this.itemsToDisplay as |item|}}
9
9
  <li>
10
- <LinkTo @route={{item.route}} class="nav__item" title={{item.title}}>
11
- {{svg-jar item.icon width="20px" height="20px" class="nav__item-icon"}}
12
- <span class="nav__item-label">{{item.label}}</span>
10
+ <LinkTo @route={{item.route}} class="nav-item" title={{item.title}}>
11
+ {{svg-jar item.icon width="20px" height="20px" class="nav-item-icon"}}
12
+ <span class="nav-item-label">{{item.label}}</span>
13
13
  {{#if item.pillCount}}
14
14
  <span class="pill">{{item.pillCount}}</span>
15
15
  {{/if}}
@@ -18,7 +18,7 @@
18
18
  {{/each}}
19
19
  {{#if (and @collapsed this.overflowItems.length)}}
20
20
  <li
21
- class="{{if this.overflowItemIsActive "nav__overflow--active"}} nav__overflow relative flex items-center justify-center cursor-pointer"
21
+ class="{{if this.overflowItemIsActive "nav-overflow-active"}} nav-overflow relative flex items-center justify-center cursor-pointer"
22
22
  title="More options"
23
23
  >
24
24
  <select
@@ -92,7 +92,7 @@ export default class SideNav extends Component {
92
92
 
93
93
  handleResize() {
94
94
  const containerHeight = this.element.clientHeight;
95
- const item = this.element.querySelector('.nav__item');
95
+ const item = this.element.querySelector('.nav-item');
96
96
  const itemHeight = item.clientHeight;
97
97
 
98
98
  this.displayCount = Math.floor(containerHeight / itemHeight) - 1;
@@ -1,13 +1,13 @@
1
1
  {{! template-lint-disable no-pointer-down-event-binding }}
2
2
  <div
3
3
  class="drag-handle absolute top-0 bottom-0 cursor-col-resize {{
4
- if this.isLeft "drag-handle--left"
5
- }} {{if this.isRight "drag-handle--right"}} {{
6
- if @faded "drag-handle--faded"
4
+ if this.isLeft "drag-handle-left"
5
+ }} {{if this.isRight "drag-handle-right"}} {{
6
+ if @faded "drag-handle-faded"
7
7
  }}"
8
8
  role="button"
9
9
  style={{this.style}}
10
10
  {{on "mousedown" this.mouseDownHandler}}
11
11
  >
12
- <div class="drag-handle__border h-full pointer-events-none"></div>
12
+ <div class="drag-handle-border h-full pointer-events-none"></div>
13
13
  </div>
@@ -1,8 +1,10 @@
1
1
  import { equal } from '@ember/object/computed';
2
+ // eslint-disable-next-line ember/no-classic-components
2
3
  import Component from '@ember/component';
3
4
  import { action, computed } from '@ember/object';
4
5
  import { htmlSafe } from '@ember/template';
5
6
 
7
+ // eslint-disable-next-line ember/no-classic-classes
6
8
  export default Component.extend({
7
9
  tagName: '',
8
10
  position: 0,
@@ -83,7 +85,7 @@ export default Component.extend({
83
85
 
84
86
  style: computed('side', 'position', 'left', function () {
85
87
  return htmlSafe(
86
- this.side ? `${this.side}: ${this.position + this.left}px;` : ''
88
+ this.side ? `${this.side}: ${this.position + this.left}px;` : '',
87
89
  );
88
90
  }),
89
91
 
@@ -1,5 +1,5 @@
1
1
  <div class="empty-message flex flex-col items-center justify-center h-full text-center text-base11 text-4xl" ...attributes>
2
2
  {{svg-jar "ember-icon-empty" width="129px" height="129px"}}
3
- <div class="empty-message__content pt-4 px-6">{{yield}}</div>
3
+ <div class="empty-message-content pt-4 px-6">{{yield}}</div>
4
4
  </div>
5
5
 
@@ -1,13 +1,13 @@
1
1
  <div class="error-page box-border overflow-auto absolute inset-0 flex text-base13 text-md bg-base02">
2
- <div class="error-page__content box-border relative m-auto px-6 pb-6 rounded bg-base00">
3
- <div class="error-page__header overflow-hidden relative flex items-center font-bold text-4xl">
2
+ <div class="error-page-content box-border relative m-auto px-6 pb-6 rounded bg-base00">
3
+ <div class="error-page-header overflow-hidden relative flex items-center font-bold text-4xl">
4
4
  <div class="flex-grow pt-6">
5
5
  {{@description}}
6
6
  </div>
7
7
  <img class="tomster" src="assets/images/fishy_tomster.png" alt="Fishy Tomster">
8
8
  </div>
9
9
 
10
- <div class="error-page__body pb-2">
10
+ <div class="error-page-body pb-2">
11
11
  <div class="font-bold">
12
12
  Here are some common reasons this happens:
13
13
  </div>
@@ -4,7 +4,7 @@ import { htmlSafe } from '@ember/template';
4
4
  export default class ResizableColumn extends Component {
5
5
  get style() {
6
6
  return htmlSafe(
7
- `-webkit-flex: none; flex: none; width: ${this.args.width}px;`
7
+ `-webkit-flex: none; flex: none; width: ${this.args.width}px;`,
8
8
  );
9
9
  }
10
10
  }
@@ -1,6 +1,6 @@
1
1
  <button
2
2
  title="clear"
3
- class="toolbar__icon-button"
3
+ class="toolbar-icon-button"
4
4
  ...attributes
5
5
  {{on "click" @action}}
6
6
  type="button"
@@ -1,6 +1,6 @@
1
1
  <button
2
2
  title="Reload"
3
- class="toolbar__icon-button"
3
+ class="toolbar-icon-button"
4
4
  ...attributes
5
5
  {{on "click" @action}}
6
6
  type="button"
@@ -1,4 +1,4 @@
1
- <div class="toolbar__search relative mx-1" ...attributes>
1
+ <div class="toolbar-search relative mx-1" ...attributes>
2
2
  <Input
3
3
  id={{this.inputId}}
4
4
  @type="text"
@@ -9,7 +9,7 @@
9
9
 
10
10
  {{#if @value}}
11
11
  <button
12
- class="toolbar__icon-button toolbar__search-clear-button absolute right-0 w-auto h-auto"
12
+ class="toolbar-icon-button toolbar-search-clear-button absolute right-0 w-auto h-auto"
13
13
  title="clear"
14
14
  data-test-search-field-clear-button
15
15
  {{on "click" this.clear}}
@@ -1,15 +1,16 @@
1
1
  import { debounce } from '@ember/runloop';
2
- import { computed } from '@ember/object';
2
+ import { computed, set } from '@ember/object';
3
+ import type { AnyFn } from '@ember/-internals/utility-types';
3
4
 
4
5
  // Use this if you want a property to debounce
5
6
  // another property with a certain delay.
6
7
  // This means that every time this prop changes,
7
8
  // the other prop will change to the same val after [delay]
8
- export default function (prop, delay, callback) {
9
- let value;
9
+ export default function (prop: string, delay: number, callback?: AnyFn) {
10
+ let value: unknown;
10
11
 
11
- let updateVal = function () {
12
- this.set(prop, value);
12
+ const updateVal = function (this: object) {
13
+ set(this, prop, value);
13
14
  if (callback) {
14
15
  callback.call(this);
15
16
  }
@@ -20,6 +21,7 @@ export default function (prop, delay, callback) {
20
21
  get() {},
21
22
  set(key, val) {
22
23
  value = val;
24
+ // eslint-disable-next-line ember/no-runloop
23
25
  debounce(this, updateVal, delay);
24
26
  return val;
25
27
  },
@@ -1,14 +1,17 @@
1
1
  /**
2
2
  * Type declarations for
3
- * import config from 'my-app/config/environment'
3
+ * import config from 'ember-inspector/config/environment'
4
4
  */
5
5
  declare const config: {
6
+ emberVersionsSupported: [fromVersion: string, tillVersion: string];
6
7
  environment: string;
7
8
  modulePrefix: string;
8
9
  podModulePrefix: string;
9
- locationType: 'history' | 'hash' | 'none' | 'auto';
10
+ locationType: 'history' | 'hash' | 'none';
11
+ previousEmberVersionsSupported: Array<string>;
10
12
  rootURL: string;
11
13
  APP: Record<string, unknown>;
14
+ VERSION: string;
12
15
  };
13
16
 
14
17
  export default config;
@@ -1,3 +1,4 @@
1
+ // eslint-disable-next-line ember/no-computed-properties-in-native-classes
1
2
  import { computed } from '@ember/object';
2
3
  import Controller from '@ember/controller';
3
4
 
@@ -1,19 +1,19 @@
1
- import Controller from '@ember/controller';
1
+ import Controller, { inject as controller } from '@ember/controller';
2
2
  import { tracked } from '@glimmer/tracking';
3
3
  import { action } from '@ember/object';
4
- import { equal } from '@ember/object/computed';
5
4
  import { debounce, schedule } from '@ember/runloop';
6
5
  import { inject as service } from '@ember/service';
7
6
 
7
+ import { TrackedArray, TrackedObject } from 'tracked-built-ins';
8
+
8
9
  export default class ApplicationController extends Controller {
10
+ @controller('component-tree') componentTreeController;
11
+
9
12
  /**
10
13
  * Service used to broadcast changes to the application's layout
11
14
  * such as toggling of the object inspector.
12
- *
13
- * @property layoutService
14
- * @type {Service}
15
15
  */
16
- @service('layout') layoutService;
16
+ @service layout;
17
17
  @service port;
18
18
 
19
19
  // Indicates that the extension window is focused,
@@ -21,17 +21,16 @@ export default class ApplicationController extends Controller {
21
21
  @tracked isDragging = false;
22
22
  @tracked contentHeight = null;
23
23
  @tracked deprecationCount = 0;
24
- @tracked inspectorExpanded = false;
25
24
  @tracked inspectorWidth = 360;
26
25
  /**
27
26
  * Indicates if the inspector has detected an ember app.
28
- *
29
- * @type {Boolean}
30
27
  */
31
28
  isEmberApplication = false;
32
29
  @tracked _navWidthExpanded = 180;
33
30
  @tracked _navWidthCollapsed = 48;
34
31
  @tracked navIsCollapsed = false;
32
+ @tracked mixinDetails = new TrackedObject({});
33
+ @tracked mixinStack = new TrackedArray([]);
35
34
 
36
35
  get navWidth() {
37
36
  return this.navIsCollapsed
@@ -43,14 +42,8 @@ export default class ApplicationController extends Controller {
43
42
  this._navWidthExpanded = value;
44
43
  }
45
44
 
46
- @equal('port.adapter.name', 'chrome')
47
- isChrome;
48
-
49
- constructor() {
50
- super(...arguments);
51
-
52
- this.mixinStack = [];
53
- this.mixinDetails = [];
45
+ get isChrome() {
46
+ return this.port?.adapter?.name === 'chrome';
54
47
  }
55
48
 
56
49
  /*
@@ -67,76 +60,44 @@ export default class ApplicationController extends Controller {
67
60
  errors,
68
61
  };
69
62
 
70
- this.mixinStack.pushObject(details);
71
- this.set('mixinDetails', details);
63
+ this.mixinStack.push(details);
64
+ this.mixinDetails = details;
72
65
  }
73
66
 
74
67
  @action
75
68
  popMixinDetails() {
76
- let mixinStack = this.mixinStack;
77
- let item = mixinStack.popObject();
78
- this.set('mixinDetails', mixinStack.get('lastObject'));
69
+ const item = this.mixinStack.pop();
70
+ this.mixinDetails = this.mixinStack.at(-1);
79
71
  this.port.send('objectInspector:releaseObject', {
80
72
  objectId: item.objectId,
81
73
  });
82
74
  }
83
75
 
84
- @action
85
- showInspector() {
86
- if (this.inspectorExpanded === false) {
87
- this.set('inspectorExpanded', true);
88
- // Broadcast that tables have been resized (used by `x-list`).
89
- schedule('afterRender', () => {
90
- this.layoutService.trigger('resize', { source: 'object-inspector' });
91
- });
92
- }
93
- }
94
-
95
- @action
96
- hideInspector() {
97
- if (this.inspectorExpanded === true) {
98
- this.set('inspectorExpanded', false);
99
- // Broadcast that tables have been resized (used by `x-list`).
100
- schedule('afterRender', () => {
101
- this.layoutService.trigger('resize', { source: 'object-inspector' });
102
- });
103
- }
104
- }
105
-
106
- @action
107
- toggleInspector() {
108
- if (this.inspectorExpanded) {
109
- this.hideInspector();
110
- } else {
111
- this.showInspector();
112
- }
113
- }
114
-
115
76
  @action
116
77
  setActive(bool) {
78
+ // eslint-disable-next-line ember/no-runloop
117
79
  schedule('afterRender', () => {
118
- this.set('active', bool);
80
+ this.active = bool;
119
81
  });
120
82
  }
121
83
 
122
84
  @action
123
85
  setupContentElement(element) {
124
86
  this.contentElement = element;
125
- this.layoutService.updateContentHeight(this.contentElement.clientHeight);
87
+ this.layout.updateContentHeight(this.contentElement.clientHeight);
126
88
  }
127
89
 
128
90
  @action
129
91
  _windowDidResize() {
92
+ // eslint-disable-next-line ember/no-runloop
130
93
  schedule('afterRender', () => {
131
94
  if (!this.isDestroyed && !this.isDestroying) {
132
- this.layoutService.trigger('resize', {
95
+ this.layout.trigger('resize', {
133
96
  source: 'application-controller',
134
97
  });
135
98
 
136
99
  if (this.contentElement) {
137
- this.layoutService.updateContentHeight(
138
- this.contentElement.clientHeight
139
- );
100
+ this.layout.updateContentHeight(this.contentElement.clientHeight);
140
101
  }
141
102
  }
142
103
  });
@@ -144,14 +105,16 @@ export default class ApplicationController extends Controller {
144
105
 
145
106
  @action
146
107
  windowDidResize() {
108
+ // eslint-disable-next-line ember/no-runloop
147
109
  debounce(this, this._windowDidResize, 250);
148
110
  }
149
111
 
150
112
  @action
151
113
  toggleNavCollapsed() {
152
- this.set('navIsCollapsed', !this.navIsCollapsed);
114
+ this.navIsCollapsed = !this.navIsCollapsed;
115
+ // eslint-disable-next-line ember/no-runloop
153
116
  schedule('afterRender', () => {
154
- this.layoutService.trigger('resize', { source: 'navigation' });
117
+ this.layout.trigger('resize', { source: 'navigation' });
155
118
  });
156
119
  }
157
120
 
@@ -166,28 +129,30 @@ export default class ApplicationController extends Controller {
166
129
  });
167
130
  });
168
131
 
169
- this.set('mixinStack', []);
132
+ this.mixinStack = new TrackedArray([]);
170
133
  this.pushMixinDetails(name, undefined, objectId, details, errors);
171
134
  }
172
135
 
173
136
  @action
174
137
  droppedObject(objectId) {
175
- let mixinStack = this.mixinStack;
176
- let obj = mixinStack.findBy('objectId', objectId);
138
+ let obj = this.mixinStack.find((mixin) => mixin.objectId === objectId);
177
139
  if (obj) {
178
- let index = mixinStack.indexOf(obj);
179
- let objectsToRemove = [];
140
+ let index = this.mixinStack.indexOf(obj);
141
+ let objectsToRemove = new TrackedArray([]);
180
142
  for (let i = index; i >= 0; i--) {
181
- objectsToRemove.pushObject(mixinStack.objectAt(i));
143
+ objectsToRemove.push(this.mixinStack.at(i));
182
144
  }
183
145
  objectsToRemove.forEach((item) => {
184
- mixinStack.removeObject(item);
146
+ const index = this.mixinStack.indexOf(item);
147
+ if (index !== -1) {
148
+ this.mixinStack.splice(index, 1);
149
+ }
185
150
  });
186
151
  }
187
- if (mixinStack.get('length') > 0) {
188
- this.set('mixinDetails', mixinStack.get('lastObject'));
152
+ if (this.mixinStack.length > 0) {
153
+ this.mixinDetails = this.mixinStack.at(-1);
189
154
  } else {
190
- this.set('mixinDetails', null);
155
+ this.mixinDetails = null;
191
156
  }
192
157
  }
193
158
  }
@@ -1,4 +1,4 @@
1
- import Controller, { inject as controller } from '@ember/controller';
1
+ import Controller from '@ember/controller';
2
2
  import { action } from '@ember/object';
3
3
  import { debounce } from '@ember/runloop';
4
4
  import { inject as service } from '@ember/service';
@@ -14,11 +14,12 @@ export default class ComponentTreeController extends Controller {
14
14
  // Estimated height for each row
15
15
  itemHeight = 22;
16
16
 
17
- @controller application;
18
17
  @service port;
18
+ @service layout;
19
19
 
20
20
  @tracked query = '';
21
21
  @tracked isInspecting = false;
22
+ @tracked showParentsOnly = false;
22
23
  @tracked renderItems = [];
23
24
 
24
25
  @tracked _pinned = undefined;
@@ -53,7 +54,7 @@ export default class ComponentTreeController extends Controller {
53
54
  renderNode.children.some((c) => c.type === 'modifier')
54
55
  ) {
55
56
  const idx = renderNode.children.findLastIndex(
56
- (c) => c.type === 'modifier'
57
+ (c) => c.type === 'modifier',
57
58
  );
58
59
  renderNode.children.splice(idx + 1, 0, {
59
60
  type: 'placeholder-closing-tag',
@@ -145,14 +146,14 @@ export default class ComponentTreeController extends Controller {
145
146
  objectId: item.instance,
146
147
  });
147
148
  } else {
148
- this.application.hideInspector();
149
+ this.layout.hideInspector();
149
150
  }
150
151
  } else {
151
152
  this._pinned = undefined;
152
153
  this._previewing = undefined;
153
154
 
154
155
  this.port.send('view:hideInspection');
155
- this.application.hideInspector();
156
+ this.layout.hideInspector();
156
157
  }
157
158
 
158
159
  this.syncInspection();
@@ -182,6 +183,7 @@ export default class ComponentTreeController extends Controller {
182
183
  }
183
184
 
184
185
  syncInspection() {
186
+ // eslint-disable-next-line ember/no-runloop
185
187
  debounce(this, this._syncInspection, 50);
186
188
  }
187
189
 
@@ -268,6 +270,10 @@ export default class ComponentTreeController extends Controller {
268
270
  @action arrowKeysTeardown() {
269
271
  document.removeEventListener('keydown', this.handleKeyDown);
270
272
  }
273
+
274
+ @action toggleParentsOnly() {
275
+ this.showParentsOnly = !this.showParentsOnly;
276
+ }
271
277
  }
272
278
 
273
279
  function isInternalRenderNode(renderNode) {
@@ -279,7 +285,7 @@ function isInternalRenderNode(renderNode) {
279
285
 
280
286
  function focusedInInput() {
281
287
  return ['input', 'textarea'].includes(
282
- document.activeElement.tagName.toLowerCase()
288
+ document.activeElement.tagName.toLowerCase(),
283
289
  );
284
290
  }
285
291
 
@@ -287,7 +293,7 @@ function arrowKeyPressed(keyCode) {
287
293
  return [KEYS.up, KEYS.right, KEYS.down, KEYS.left].includes(keyCode);
288
294
  }
289
295
 
290
- class RenderItem {
296
+ export class RenderItem {
291
297
  @tracked isExpanded;
292
298
  @tracked renderNode;
293
299
 
@@ -416,11 +422,24 @@ class RenderItem {
416
422
  get isVisible() {
417
423
  if (this.isRoot) {
418
424
  return true;
425
+ } else if (this.controller.showParentsOnly) {
426
+ return (
427
+ this.hasPinnedChild() ||
428
+ (this.hasPinnedParent() && this.parentItem.isExpanded)
429
+ );
419
430
  } else {
420
431
  return this.parentItem.isVisible && this.parentItem.isExpanded;
421
432
  }
422
433
  }
423
434
 
435
+ hasPinnedParent() {
436
+ return this.isPinned || this.parentItem?.hasPinnedParent();
437
+ }
438
+
439
+ hasPinnedChild() {
440
+ return this.isPinned || this.childItems.some((c) => c.hasPinnedChild());
441
+ }
442
+
424
443
  get isPinned() {
425
444
  return this.id === this.controller.pinned;
426
445
  }
@@ -1,5 +1,6 @@
1
1
  import Controller, { inject as controller } from '@ember/controller';
2
2
  import { inject as service } from '@ember/service';
3
+ // eslint-disable-next-line ember/no-computed-properties-in-native-classes
3
4
  import { action, computed, set } from '@ember/object';
4
5
  import debounceComputed from 'ember-inspector/computed/debounce';
5
6
  import searchMatch from 'ember-inspector/utils/search-match';
@@ -17,7 +18,7 @@ export default class ContainerTypeContoller extends Controller {
17
18
  @computed('model.@each.name', 'search')
18
19
  get rows() {
19
20
  return this.model.filter((instance) =>
20
- searchMatch(instance.name, this.search)
21
+ searchMatch(instance.name, this.search),
21
22
  );
22
23
  }
23
24