ember-inspector 4.13.1-alpha.2024.8.8 → 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.152107b52f1d9b56abd2.js +0 -28
  468. package/dist/bookmarklet/panes-3-16-0/assets/chunk.178.fd17fd3a54b4e3a24554.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.152107b52f1d9b56abd2.js +0 -28
  476. package/dist/chrome/panes-3-16-0/assets/chunk.178.fd17fd3a54b4e3a24554.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.152107b52f1d9b56abd2.js +0 -28
  484. package/dist/firefox/panes-3-16-0/assets/chunk.178.fd17fd3a54b4e3a24554.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.152107b52f1d9b56abd2.js +0 -28
  492. package/dist/websocket/assets/chunk.178.fd17fd3a54b4e3a24554.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
1
  import Controller from '@ember/controller';
2
2
  import { action } from '@ember/object';
3
+ import type RouterService from '@ember/routing/router-service';
3
4
  import { inject as service } from '@ember/service';
4
5
 
6
+ import type PortService from '../../services/port';
7
+
5
8
  export default class ContainerTypesIndexController extends Controller {
6
- @service port;
7
- @service router;
9
+ @service declare port: PortService;
10
+ @service declare router: RouterService;
8
11
 
9
12
  @action
10
13
  refresh() {
@@ -1,3 +1,4 @@
1
+ // eslint-disable-next-line ember/no-computed-properties-in-native-classes
1
2
  import { sort } from '@ember/object/computed';
2
3
  import { inject as service } from '@ember/service';
3
4
  import Controller from '@ember/controller';
@@ -5,11 +6,7 @@ import Controller from '@ember/controller';
5
6
  export default class ContainerTypesController extends Controller {
6
7
  @service router;
7
8
 
8
- @sort('model', 'sortProperties') sorted;
9
-
10
- constructor() {
11
- super(...arguments);
9
+ sortProperties = ['name'];
12
10
 
13
- this.sortProperties = ['name'];
14
- }
11
+ @sort('model', 'sortProperties') sorted;
15
12
  }
@@ -1,6 +1,10 @@
1
- import { action, computed, set } from '@ember/object';
1
+ import { action } from '@ember/object';
2
2
  import { inject as service } from '@ember/service';
3
3
  import Controller from '@ember/controller';
4
+ import { tracked } from '@glimmer/tracking';
5
+
6
+ import { TrackedArray } from 'tracked-built-ins';
7
+
4
8
  import debounceComputed from 'ember-inspector/computed/debounce';
5
9
  import searchMatch from 'ember-inspector/utils/search-match';
6
10
 
@@ -8,32 +12,33 @@ export default class DeprecationsController extends Controller {
8
12
  @service adapter;
9
13
  @service port;
10
14
 
11
- search = null;
12
- toggleDeprecationWorkflow = false;
15
+ deprecations = new TrackedArray([]);
16
+ @tracked search = null;
17
+ @tracked toggleDeprecationWorkflow = false;
13
18
 
14
19
  @debounceComputed('search', 300) searchValue;
15
20
 
16
- constructor() {
17
- super(...arguments);
18
- set(this, 'deprecations', []);
19
- }
20
-
21
21
  @action
22
22
  changeDeprecationWorkflow(e) {
23
- this.set('toggleDeprecationWorkflow', e.target.checked);
23
+ this.toggleDeprecationWorkflow = e.target.checked;
24
24
 
25
25
  this.port.send('deprecation:setOptions', {
26
26
  options: { toggleDeprecationWorkflow: this.toggleDeprecationWorkflow },
27
27
  });
28
28
  }
29
29
 
30
- @computed('deprecations.@each.message', 'search')
31
30
  get filtered() {
32
31
  return this.deprecations.filter((item) =>
33
- searchMatch(item.message, this.search)
32
+ searchMatch(item.message, this.search),
34
33
  );
35
34
  }
36
35
 
36
+ @action
37
+ clear() {
38
+ this.port.send('deprecation:clear');
39
+ this.deprecations.splice(0, this.deprecations.length);
40
+ }
41
+
37
42
  @action
38
43
  openResource(item) {
39
44
  this.adapter.openResource(item.fullSource, item.line);
@@ -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,3 +1,4 @@
1
+ /* eslint-disable ember/no-computed-properties-in-native-classes */
1
2
  import Controller from '@ember/controller';
2
3
  import { action, computed } from '@ember/object';
3
4
  import { sort } from '@ember/object/computed';
@@ -0,0 +1,149 @@
1
+ import { action } from '@ember/object';
2
+ import Controller from '@ember/controller';
3
+ import { inject as service } from '@ember/service';
4
+ import { debounce, once } from '@ember/runloop';
5
+ import { tracked } from '@glimmer/tracking';
6
+
7
+ // @ts-expect-error We should move away from observers.
8
+ import { observes } from '@ember-decorators/object';
9
+
10
+ import type PortService from '../services/port';
11
+ import type PromiseModel from '../models/promise';
12
+ import type WebExtension from '../services/adapters/web-extension';
13
+ import { isNullish } from 'ember-inspector/utils/nullish';
14
+
15
+ export default class PromiseTreeController extends Controller {
16
+ queryParams = ['filter'];
17
+
18
+ declare model: Array<PromiseModel>;
19
+
20
+ @service declare adapter: WebExtension;
21
+ @service declare port: PortService;
22
+
23
+ @tracked createdAfter: Date | null = null;
24
+ @tracked effectiveSearch: string | null = null;
25
+ @tracked filter = 'all';
26
+ // Keep track of promise stack traces.
27
+ // It is opt-in due to performance reasons.
28
+ @tracked instrumentWithStack = false;
29
+ @tracked searchValue: string | null = null;
30
+
31
+ // below used to show the "refresh" message
32
+ get isEmpty() {
33
+ return this.model.length === 0;
34
+ }
35
+
36
+ get neverCleared() {
37
+ return !this.wasCleared;
38
+ }
39
+
40
+ get shouldRefresh() {
41
+ return this.isEmpty && this.neverCleared;
42
+ }
43
+
44
+ get wasCleared() {
45
+ return Boolean(this.createdAfter);
46
+ }
47
+
48
+ get filtered() {
49
+ return this.model.filter((item) => {
50
+ // exclude cleared promises
51
+ if (this.createdAfter && item.createdAt < this.createdAfter) {
52
+ return false;
53
+ }
54
+
55
+ if (!item.isVisible) {
56
+ return false;
57
+ }
58
+
59
+ // Exclude non-filter complying promises
60
+ // If at least one of their children passes the filter,
61
+ // then they pass
62
+ let include = true;
63
+ if (this.filter === 'pending') {
64
+ include = item.pendingBranch;
65
+ } else if (this.filter === 'rejected') {
66
+ include = item.rejectedBranch;
67
+ } else if (this.filter === 'fulfilled') {
68
+ include = item.fulfilledBranch;
69
+ }
70
+ if (!include) {
71
+ return false;
72
+ }
73
+
74
+ // Search filter
75
+ // If they or at least one of their children
76
+ // match the search, then include them
77
+ const search = this.effectiveSearch;
78
+ if (!isNullish(search)) {
79
+ return item.matches(search);
80
+ }
81
+ return true;
82
+ });
83
+ }
84
+
85
+ // eslint-disable-next-line ember/no-observers, @typescript-eslint/no-unsafe-call
86
+ @observes('searchValue')
87
+ searchChanged() {
88
+ // eslint-disable-next-line ember/no-runloop
89
+ debounce(this, this.updateEffectiveSearch, 500);
90
+ }
91
+
92
+ updateEffectiveSearch = () => {
93
+ this.effectiveSearch = this.searchValue;
94
+ };
95
+
96
+ @action
97
+ toggleExpand(promise: PromiseModel) {
98
+ const isExpanded = !promise.isExpanded;
99
+ promise.isManuallyExpanded = isExpanded;
100
+ promise.recalculateExpanded();
101
+ const children = promise._allChildren();
102
+ if (isExpanded) {
103
+ children.forEach((child) => {
104
+ if (isNullish(child.isManuallyExpanded)) {
105
+ child.isManuallyExpanded = isExpanded;
106
+ child.recalculateExpanded();
107
+ }
108
+ });
109
+ }
110
+ }
111
+
112
+ @action
113
+ tracePromise(promise: PromiseModel) {
114
+ this.port.send('promise:tracePromise', { promiseId: promise.guid });
115
+ }
116
+
117
+ @action
118
+ inspectObject() {
119
+ // @ts-expect-error TODO: figure this out later
120
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call, prefer-rest-params
121
+ this.target.send('inspectObject', ...arguments);
122
+ }
123
+
124
+ @action
125
+ sendValueToConsole(promise: PromiseModel) {
126
+ this.port.send('promise:sendValueToConsole', {
127
+ promiseId: promise.guid,
128
+ });
129
+ }
130
+
131
+ @action
132
+ setFilter(filter: string) {
133
+ this.filter = filter;
134
+ }
135
+
136
+ @action
137
+ updateInstrumentWithStack(instrumentWithStack: boolean) {
138
+ this.port.send('promise:setInstrumentWithStack', {
139
+ instrumentWithStack,
140
+ });
141
+ }
142
+
143
+ @action
144
+ clear() {
145
+ this.createdAfter = new Date();
146
+ // eslint-disable-next-line ember/no-runloop
147
+ once(this, this.updateEffectiveSearch);
148
+ }
149
+ }
@@ -1,17 +1,22 @@
1
1
  import { isEmpty } from '@ember/utils';
2
- import { action, computed, get } from '@ember/object';
2
+ import { action, get, set } from '@ember/object';
3
3
  import Controller, { inject as controller } from '@ember/controller';
4
4
  import { inject as service } from '@ember/service';
5
- import escapeRegExp from 'ember-inspector/utils/escape-reg-exp';
5
+ import { tracked } from '@glimmer/tracking';
6
+
7
+ import escapeRegExp from '../utils/escape-reg-exp';
6
8
 
7
9
  export default class RecordsController extends Controller {
10
+ queryParams = ['filterValue', 'searchValue'];
11
+
8
12
  @controller application;
9
13
  @service port;
10
14
 
11
- queryParams = ['filterValue', 'searchValue'];
12
-
13
- searchValue = '';
14
- filterValue = null;
15
+ @tracked filterValue = null;
16
+ @tracked filters = [];
17
+ @tracked modelType;
18
+ @tracked searchValue = '';
19
+ @tracked sorts = undefined;
15
20
 
16
21
  recordToString(record) {
17
22
  return (record.searchKeywords || []).join(' ').toLowerCase();
@@ -32,22 +37,16 @@ export default class RecordsController extends Controller {
32
37
  * @property schema
33
38
  * @type {Object}
34
39
  */
35
- @computed('modelType.columns')
36
40
  get columns() {
37
- return this.get('modelType.columns').map(({ desc, name }) => ({
41
+ return this.modelType.columns.map(({ desc, name }) => ({
38
42
  valuePath: `columnValues.${name}`,
39
43
  name: desc,
40
44
  }));
41
45
  }
42
46
 
43
- @computed(
44
- 'searchValue',
45
- 'model.@each.{columnValues,filterValues}',
46
- 'filterValue'
47
- )
48
47
  get filteredRecords() {
49
- let search = this.searchValue;
50
- let filter = this.filterValue;
48
+ const search = this.searchValue;
49
+ const filter = this.filterValue;
51
50
 
52
51
  return this.model.filter((item) => {
53
52
  // check filters
@@ -59,34 +58,27 @@ export default class RecordsController extends Controller {
59
58
  if (!isEmpty(search)) {
60
59
  let searchString = this.recordToString(item);
61
60
  return !!searchString.match(
62
- new RegExp(`.*${escapeRegExp(search.toLowerCase())}.*`)
61
+ new RegExp(`.*${escapeRegExp(search.toLowerCase())}.*`),
63
62
  );
64
63
  }
65
64
  return true;
66
65
  });
67
66
  }
68
67
 
69
- constructor() {
70
- super(...arguments);
71
-
72
- this.filters = [];
73
- this.sorts = undefined;
74
- }
75
-
76
68
  @action
77
69
  setFilter(val) {
78
70
  val = val || null;
79
- this.set('filterValue', val);
71
+ this.filterValue = val;
80
72
  }
81
73
 
82
74
  @action
83
75
  inspectModel([record]) {
84
- this.set('selection', record);
76
+ set(this, 'selection', record);
85
77
  this.port.send('data:inspectModel', { objectId: record.objectId });
86
78
  }
87
79
 
88
80
  @action
89
81
  updateSorts(newSorts) {
90
- this.set('sorts', newSorts);
82
+ this.sorts = newSorts;
91
83
  }
92
84
  }
@@ -1,65 +1,71 @@
1
+ /* eslint-disable ember/no-computed-properties-in-native-classes */
1
2
  import { action, computed } from '@ember/object';
2
3
  import { tracked } from '@glimmer/tracking';
3
- import { isEmpty } from '@ember/utils';
4
4
  import Controller from '@ember/controller';
5
5
  import { inject as service } from '@ember/service';
6
- import escapeRegExp from 'ember-inspector/utils/escape-reg-exp';
7
- import debounceComputed from 'ember-inspector/computed/debounce';
8
- import { and, equal } from '@ember/object/computed';
6
+
7
+ import escapeRegExp from '../utils/escape-reg-exp';
8
+ import debounceComputed from '../computed/debounce';
9
+ import type WebExtension from '../services/adapters/web-extension';
10
+ import type PortService from '../services/port';
11
+ import type StorageService from '../services/storage';
12
+ import type { RenderTreeModel } from '../routes/render-tree';
13
+ import { isNullish } from '../utils/nullish';
9
14
 
10
15
  export default class RenderTreeController extends Controller {
11
- @service adapter;
12
- @service port;
16
+ @service declare adapter: WebExtension;
17
+ @service declare port: PortService;
13
18
  /**
14
19
  * Storage is needed for remembering if the user closed the warning
15
- *
16
- * @property storage
17
- * @type {Service}
18
20
  */
19
- @service storage;
21
+ @service declare storage: StorageService;
22
+
23
+ declare model: RenderTreeModel;
20
24
 
21
- initialEmpty = false;
25
+ @tracked initialEmpty = false;
22
26
  @tracked shouldHighlightRender = false;
23
27
  @tracked search = '';
24
28
 
25
- @equal('model.profiles.length', 0)
26
- modelEmpty;
29
+ get escapedSearch() {
30
+ return escapeRegExp(this.search?.toLowerCase());
31
+ }
27
32
 
28
- @and('initialEmpty', 'modelEmpty')
29
- showEmpty;
33
+ /**
34
+ * Indicate the table's header's height in pixels.
35
+ *
36
+ * @property headerHeight
37
+ * @type {Number}
38
+ */
39
+ get headerHeight() {
40
+ return this.isWarningClosed ? 31 : 56;
41
+ }
30
42
 
31
43
  /**
32
44
  * Checks if the user previously closed the warning by referencing localStorage
33
- *
34
- * @property isWarningClosed
35
- * @type {Boolean}
36
45
  */
37
46
  get isWarningClosed() {
38
- return !!this.storage.getItem('is-render-tree-warning-closed');
47
+ return !!this.storage.getItem(
48
+ 'is-render-tree-warning-closed' as keyof object,
49
+ );
39
50
  }
40
51
 
41
52
  set isWarningClosed(value) {
53
+ // @ts-expect-error Ignore this boolean/string mismatch for now.
42
54
  this.storage.setItem('is-render-tree-warning-closed', value);
43
55
  }
44
56
 
45
- /**
46
- * Indicate the table's header's height in pixels.
47
- *
48
- * @property headerHeight
49
- * @type {Number}
50
- */
51
- get headerHeight() {
52
- return this.isWarningClosed ? 31 : 56;
57
+ get modelEmpty() {
58
+ return this.model.profiles.length === 0;
59
+ }
60
+
61
+ get showEmpty() {
62
+ return this.initialEmpty && this.modelEmpty;
53
63
  }
54
64
 
55
65
  // bound to the input field, updates the `search` property
56
66
  // 300ms after changing
57
67
  @debounceComputed('search', 300)
58
- searchValue;
59
-
60
- get escapedSearch() {
61
- return escapeRegExp(this.search?.toLowerCase());
62
- }
68
+ declare searchValue: string;
63
69
 
64
70
  @computed('model.isHighlightSupported')
65
71
  get isHighlightEnabled() {
@@ -68,14 +74,16 @@ export default class RenderTreeController extends Controller {
68
74
 
69
75
  @computed('escapedSearch', 'model.profiles.@each.name', 'search')
70
76
  get filtered() {
71
- if (isEmpty(this.escapedSearch)) {
77
+ if (isNullish(this.escapedSearch)) {
72
78
  return this.model.profiles;
73
79
  }
74
80
 
75
- return this.model.profiles.filter((item) => {
76
- const regExp = new RegExp(this.escapedSearch);
77
- return recursiveMatch(item, regExp);
78
- });
81
+ return this.model.profiles.filter(
82
+ (item: RenderTreeModel['profiles'][number]) => {
83
+ const regExp = new RegExp(this.escapedSearch as string);
84
+ return recursiveMatch(item, regExp);
85
+ },
86
+ );
79
87
  }
80
88
 
81
89
  @action
@@ -85,7 +93,7 @@ export default class RenderTreeController extends Controller {
85
93
 
86
94
  @action
87
95
  closeWarning() {
88
- this.set('isWarningClosed', true);
96
+ this.isWarningClosed = true;
89
97
  }
90
98
 
91
99
  @action
@@ -98,18 +106,19 @@ export default class RenderTreeController extends Controller {
98
106
  }
99
107
  }
100
108
 
101
- function recursiveMatch(item, regExp) {
102
- let children, child;
103
- let name = item.name;
104
- if (name.toLowerCase().match(regExp)) {
109
+ function recursiveMatch(
110
+ item: RenderTreeModel['profiles'][number],
111
+ regExp: string | RegExp,
112
+ ) {
113
+ if (item.name.toLowerCase().match(regExp)) {
105
114
  return true;
106
115
  }
107
- children = item.children;
108
- for (let i = 0; i < children.length; i++) {
109
- child = children[i];
116
+
117
+ for (const child of item.children) {
110
118
  if (recursiveMatch(child, regExp)) {
111
119
  return true;
112
120
  }
113
121
  }
122
+
114
123
  return false;
115
124
  }
@@ -1,4 +1,6 @@
1
+ // eslint-disable-next-line ember/no-computed-properties-in-native-classes
1
2
  import { alias } from '@ember/object/computed';
3
+ // eslint-disable-next-line ember/no-computed-properties-in-native-classes
2
4
  import { action, computed, set } from '@ember/object';
3
5
  import Controller, { inject as controller } from '@ember/controller';
4
6
  import { inject as service } from '@ember/service';
@@ -22,7 +24,7 @@ export default class RouteTreeController extends Controller {
22
24
  'model.[]',
23
25
  'options.{hideRoutes,hideSubstates}',
24
26
  'currentRoute.{name,url}',
25
- 'searchValue'
27
+ 'searchValue',
26
28
  )
27
29
  get filtered() {
28
30
  if (!Array.isArray(this.model)) {
@@ -30,8 +32,8 @@ export default class RouteTreeController extends Controller {
30
32
  }
31
33
  return this.model.filter((routeItem) => {
32
34
  let currentRoute = this.currentRoute;
33
- let hideRoutes = this.get('options.hideRoutes');
34
- let hideSubstates = this.get('options.hideSubstates');
35
+ let hideRoutes = this.options.hideRoutes;
36
+ let hideSubstates = this.options.hideSubstates;
35
37
 
36
38
  if (hideRoutes && currentRoute) {
37
39
  return checkCurrentRoute(currentRoute, routeItem.value);
@@ -60,8 +62,8 @@ export default class RouteTreeController extends Controller {
60
62
  });
61
63
  }
62
64
 
63
- init() {
64
- super.init(...arguments);
65
+ constructor() {
66
+ super(...arguments);
65
67
 
66
68
  set(this, 'model', []);
67
69
  set(this, 'options', {
@@ -15,7 +15,7 @@ const { keys } = Object;
15
15
 
16
16
  export function buildStyle(_, options) {
17
17
  return htmlSafe(
18
- keys(options).reduce((style, key) => `${style}${key}:${options[key]};`, '')
18
+ keys(options).reduce((style, key) => `${style}${key}:${options[key]};`, ''),
19
19
  );
20
20
  }
21
21
 
package/app/index.html CHANGED
@@ -8,30 +8,12 @@
8
8
 
9
9
  {{content-for "head"}}
10
10
 
11
- <style type="text/css">
12
- @font-face {
13
- font-display: swap;
14
- font-family: 'Inter';
15
- font-style: normal;
16
- font-weight: 400;
17
- src: url("{{rootURL}}assets/fonts/Inter-Regular.woff2?v=3.12") format("woff2"), url("{{rootURL}}assets/fonts/Inter-Regular.woff?v=3.12") format("woff");
18
- }
19
-
20
- @font-face {
21
- font-display: swap;
22
- font-family: 'Inter';
23
- font-style: normal;
24
- font-weight: 700;
25
- src: url("{{rootURL}}assets/fonts/Inter-Bold.woff2?v=3.12") format("woff2"), url("{{rootURL}}assets/fonts/Inter-Bold.woff?v=3.12") format("woff");
26
- }
27
- </style>
28
-
29
11
  <link integrity="" rel="stylesheet" href="{{rootURL}}assets/vendor.css">
30
12
  <link integrity="" rel="stylesheet" href="{{rootURL}}assets/ember-inspector.css">
31
13
 
32
14
  {{content-for "head-footer"}}
33
15
  </head>
34
- <body class="theme--light">
16
+ <body class="theme-light">
35
17
  {{content-for "body"}}
36
18
 
37
19
  <script src="{{rootURL}}assets/vendor.js"></script>
@@ -5,7 +5,7 @@ export default {
5
5
  initialize(instance) {
6
6
  // {{EMBER_DIST}} is replaced by the build process (basic, chrome, etc)
7
7
  let Adapter = instance.resolveRegistration(
8
- `service:adapters/{{EMBER_DIST}}`
8
+ `service:adapters/{{EMBER_DIST}}`,
9
9
  );
10
10
 
11
11
  // register the adapter service