ember-inspector 4.4.1 → 4.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +1 -0
- package/.eslintrc.js +20 -12
- package/.github/workflows/build.yml +1 -0
- package/.tool-versions +1 -0
- package/CHANGELOG.md +31 -2
- package/app/{templates → components}/component-tree-toolbar.hbs +5 -5
- package/app/{templates → components}/container-type-toolbar.hbs +3 -3
- package/app/{templates/container-types/index-toolbar.hbs → components/container-types-toolbar.hbs} +2 -2
- package/app/components/date-property-field.js +4 -10
- package/app/{templates → components}/deprecations-toolbar.hbs +4 -4
- package/app/{templates → components}/libraries-toolbar.hbs +0 -0
- package/app/{templates → components}/model-types-toolbar.hbs +4 -4
- package/app/{templates → components}/promise-tree-toolbar.hbs +13 -13
- package/app/components/records-toolbar.hbs +26 -0
- package/app/components/render-tree-toolbar.hbs +33 -0
- package/app/components/route-cell-name.js +1 -1
- package/app/{templates → components}/route-tree-toolbar.hbs +3 -3
- package/app/components/scroll-container.js +3 -1
- package/app/computed/debounce.js +1 -3
- package/app/controllers/deprecations.js +1 -0
- package/app/controllers/render-tree.js +19 -4
- package/app/controllers/route-tree.js +51 -44
- package/app/initializers/setup.js +7 -18
- package/app/models/promise.js +3 -4
- package/app/routes/application.js +2 -14
- package/app/routes/component-tree.js +3 -0
- package/app/routes/deprecations.js +4 -0
- package/app/routes/launch.js +1 -0
- package/app/routes/libraries.js +1 -0
- package/app/routes/promise-tree.js +6 -0
- package/app/routes/render-tree.js +27 -10
- package/app/routes/route-tree.js +3 -2
- package/app/routes/tab.js +9 -9
- package/app/routes/whats-new.js +2 -0
- package/app/{adapters → services/adapters}/basic.js +3 -3
- package/app/{adapters → services/adapters}/bookmarklet.js +0 -0
- package/app/{adapters → services/adapters}/chrome.js +0 -0
- package/app/{adapters → services/adapters}/firefox.js +0 -0
- package/app/{adapters → services/adapters}/web-extension.js +0 -0
- package/app/{adapters → services/adapters}/websocket.js +0 -0
- package/app/services/port.js +3 -2
- package/app/templates/application.hbs +1 -1
- package/app/templates/component-tree.hbs +20 -4
- package/app/templates/container-type.hbs +10 -0
- package/app/templates/container-types/index.hbs +10 -0
- package/app/templates/deprecations.hbs +13 -10
- package/app/templates/libraries.hbs +12 -11
- package/app/templates/model-types.hbs +15 -2
- package/app/templates/promise-tree.hbs +22 -7
- package/app/templates/records.hbs +15 -7
- package/app/templates/render-tree.hbs +32 -9
- package/app/templates/route-tree.hbs +23 -14
- package/app/templates/whats-new.hbs +8 -4
- package/config/ember-cli-update.json +1 -1
- package/config/ember-try.js +8 -0
- package/config/targets.js +14 -6
- package/dist/bookmarklet/panes-3-4-0/assets/chunk.143.701794df61367d9c0beb.js +146 -0
- package/dist/bookmarklet/panes-3-4-0/assets/chunk.178.1fa501a69a8888639ff4.js +20 -0
- package/dist/bookmarklet/panes-3-4-0/assets/chunk.916.cfdae71ef87e943d7ad0.js +505 -0
- package/dist/bookmarklet/panes-3-4-0/assets/chunk.916.cfdae71ef87e943d7ad0.js.LICENSE.txt +8 -0
- package/dist/bookmarklet/panes-3-4-0/assets/ember-inspector.js +617 -1512
- package/dist/bookmarklet/panes-3-4-0/assets/vendor.css +9 -2
- package/dist/bookmarklet/panes-3-4-0/assets/vendor.js +6132 -7501
- package/dist/bookmarklet/panes-3-4-0/ember_debug.js +731 -416
- package/dist/bookmarklet/panes-3-4-0/index.html +2 -1
- package/dist/chrome/manifest.json +1 -1
- package/dist/chrome/panes-3-4-0/assets/chunk.143.701794df61367d9c0beb.js +146 -0
- package/dist/chrome/panes-3-4-0/assets/chunk.178.1fa501a69a8888639ff4.js +20 -0
- package/dist/chrome/panes-3-4-0/assets/chunk.916.cfdae71ef87e943d7ad0.js +505 -0
- package/dist/chrome/panes-3-4-0/assets/chunk.916.cfdae71ef87e943d7ad0.js.LICENSE.txt +8 -0
- package/dist/chrome/panes-3-4-0/assets/ember-inspector.js +617 -1512
- package/dist/chrome/panes-3-4-0/assets/vendor.css +9 -2
- package/dist/chrome/panes-3-4-0/assets/vendor.js +6132 -7501
- package/dist/chrome/panes-3-4-0/ember_debug.js +731 -416
- package/dist/chrome/panes-3-4-0/index.html +2 -1
- package/dist/firefox/manifest.json +1 -1
- package/dist/firefox/panes-3-4-0/assets/chunk.143.701794df61367d9c0beb.js +146 -0
- package/dist/firefox/panes-3-4-0/assets/chunk.178.1fa501a69a8888639ff4.js +20 -0
- package/dist/firefox/panes-3-4-0/assets/chunk.916.cfdae71ef87e943d7ad0.js +505 -0
- package/dist/firefox/panes-3-4-0/assets/chunk.916.cfdae71ef87e943d7ad0.js.LICENSE.txt +8 -0
- package/dist/firefox/panes-3-4-0/assets/ember-inspector.js +617 -1512
- package/dist/firefox/panes-3-4-0/assets/vendor.css +9 -2
- package/dist/firefox/panes-3-4-0/assets/vendor.js +6132 -7501
- package/dist/firefox/panes-3-4-0/ember_debug.js +731 -416
- package/dist/firefox/panes-3-4-0/index.html +2 -1
- package/dist/websocket/assets/chunk.143.701794df61367d9c0beb.js +146 -0
- package/dist/websocket/assets/chunk.178.1fa501a69a8888639ff4.js +20 -0
- package/dist/websocket/assets/chunk.916.cfdae71ef87e943d7ad0.js +505 -0
- package/dist/websocket/assets/chunk.916.cfdae71ef87e943d7ad0.js.LICENSE.txt +8 -0
- package/dist/websocket/assets/ember-inspector.js +617 -1512
- package/dist/websocket/assets/vendor.css +9 -2
- package/dist/websocket/assets/vendor.js +6132 -7501
- package/dist/websocket/ember_debug.js +731 -416
- package/dist/websocket/index.html +2 -1
- package/ember_debug/adapters/basic.js +4 -3
- package/ember_debug/adapters/web-extension.js +2 -1
- package/ember_debug/adapters/websocket.js +4 -7
- package/ember_debug/container-debug.js +2 -3
- package/ember_debug/data-debug.js +4 -3
- package/ember_debug/deprecation-debug.js +12 -15
- package/ember_debug/general-debug.js +3 -4
- package/ember_debug/libs/promise-assembler.js +12 -14
- package/ember_debug/libs/source-map.js +3 -8
- package/ember_debug/main.js +11 -11
- package/ember_debug/mixins/port-mixin.js +1 -3
- package/ember_debug/models/profile-manager.js +135 -3
- package/ember_debug/models/profile-node.js +2 -4
- package/ember_debug/models/promise.js +3 -4
- package/ember_debug/object-inspector.js +15 -19
- package/ember_debug/port.js +7 -5
- package/ember_debug/promise-debug.js +16 -17
- package/ember_debug/render-debug.js +11 -4
- package/ember_debug/route-debug.js +5 -10
- package/ember_debug/services/session.js +1 -3
- package/ember_debug/utils/ember/application.js +11 -0
- package/ember_debug/utils/ember/array/index.js +11 -0
- package/ember_debug/utils/ember/array/mutable.js +11 -0
- package/ember_debug/utils/ember/array/proxy.js +11 -0
- package/ember_debug/utils/ember/component.js +11 -0
- package/ember_debug/utils/ember/debug.js +15 -0
- package/ember_debug/utils/{ember.js → ember/index.js} +1 -0
- package/ember_debug/utils/ember/instrumentation.js +11 -0
- package/ember_debug/utils/ember/object/computed.js +11 -0
- package/ember_debug/utils/ember/object/evented.js +11 -0
- package/ember_debug/utils/ember/object/index.js +15 -0
- package/ember_debug/utils/ember/object/internals.js +11 -0
- package/ember_debug/utils/ember/object/mixin.js +11 -0
- package/ember_debug/utils/ember/object/observable.js +11 -0
- package/ember_debug/utils/ember/object/promise-proxy-mixin.js +13 -0
- package/ember_debug/utils/ember/runloop.js +17 -0
- package/ember_debug/utils/ember/utils.js +11 -0
- package/ember_debug/utils/rsvp.js +14 -0
- package/ember_debug/vendor/startup-wrapper.js +21 -12
- package/ember_debug/view-debug.js +2 -3
- package/package.json +43 -37
- package/tests/acceptance/app-picker-test.js +3 -3
- package/tests/acceptance/component-tree-test.js +17 -3
- package/tests/acceptance/container-test.js +8 -6
- package/tests/acceptance/data-test.js +2 -0
- package/tests/acceptance/deprecation-test.js +4 -0
- package/tests/acceptance/object-inspector-test.js +29 -1
- package/tests/acceptance/promise-test.js +11 -1
- package/tests/acceptance/route-tree-test.js +10 -0
- package/tests/acceptance/whats-new-test.js +1 -1
- package/tests/ember_debug/ember-debug-test.js +2 -0
- package/tests/ember_debug/object-inspector-test.js +54 -22
- package/tests/ember_debug/profile-manager-test.js +563 -6
- package/tests/ember_debug/profile-node-test.js +5 -5
- package/tests/ember_debug/promise-assembler-test.js +2 -0
- package/tests/ember_debug/promise-debug-test.js +7 -5
- package/tests/ember_debug/render-debug-test.js +1 -1
- package/tests/ember_debug/view-debug-test.js +8 -8
- package/tests/helpers/setup-ember-debug-test.js +11 -6
- package/tests/index.html +8 -1
- package/tests/integration/components/component-tree-arg-test.js +1 -1
- package/tests/test-adapter.js +1 -1
- package/tests/test-helper.js +5 -1
- package/tests/unit/check-current-route-test.js +4 -0
- package/tests/unit/is-route-substate-test.js +8 -8
- package/tests/unit/match-test.js +2 -2
- package/app/templates/records-toolbar.hbs +0 -26
- package/app/templates/render-tree-toolbar.hbs +0 -20
- package/tests/.eslintrc.js +0 -8
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
{{#if this.toolbarContainer}}
|
|
2
|
+
{{#in-element this.toolbarContainer}}
|
|
3
|
+
<RenderTreeToolbar
|
|
4
|
+
@clearProfiles={{action send "clearProfiles"}}
|
|
5
|
+
@refreshPage={{action send "refreshPage"}}
|
|
6
|
+
@searchValue={{this.searchValue}}
|
|
7
|
+
@showEmpty={{this.showEmpty}}
|
|
8
|
+
@shouldHighlightRender={{this.shouldHighlightRender}}
|
|
9
|
+
@updateShouldHighlightRender={{this.updateShouldHighlightRender}}
|
|
10
|
+
@isHighlightEnabled={{this.isHighlightEnabled}}
|
|
11
|
+
/>
|
|
12
|
+
{{/in-element}}
|
|
13
|
+
{{/if}}
|
|
14
|
+
|
|
1
15
|
{{#unless this.isWarningClosed}}
|
|
2
16
|
<Ui::WarningMessage @close={{this.closeWarning}}>
|
|
3
17
|
Render times may be inaccurate due to instrumentation and environment
|
|
@@ -6,9 +20,22 @@
|
|
|
6
20
|
|
|
7
21
|
{{#if this.showEmpty}}
|
|
8
22
|
<Ui::EmptyMessage class="js-render-tree-empty">
|
|
9
|
-
<p>
|
|
10
|
-
|
|
11
|
-
|
|
23
|
+
<p>
|
|
24
|
+
No rendering metrics have been collected. Try reloading or navigating around your application.
|
|
25
|
+
</p>
|
|
26
|
+
<p>
|
|
27
|
+
<strong>
|
|
28
|
+
Note:
|
|
29
|
+
</strong>
|
|
30
|
+
Very fast rendering times (<1ms) are excluded.
|
|
31
|
+
</p>
|
|
32
|
+
<button
|
|
33
|
+
class="js-toolbar-page-refresh-btn"
|
|
34
|
+
type="button"
|
|
35
|
+
{{action "refreshPage"}}
|
|
36
|
+
>
|
|
37
|
+
Reload
|
|
38
|
+
</button>
|
|
12
39
|
</Ui::EmptyMessage>
|
|
13
40
|
{{else}}
|
|
14
41
|
<List
|
|
@@ -18,12 +45,8 @@
|
|
|
18
45
|
>
|
|
19
46
|
<tbody>
|
|
20
47
|
{{#each this.filtered as |item|}}
|
|
21
|
-
<RenderItem
|
|
22
|
-
@model={{item}}
|
|
23
|
-
@search={{this.search}}
|
|
24
|
-
@list={{list}}
|
|
25
|
-
/>
|
|
48
|
+
<RenderItem @model={{item}} @search={{this.search}} @list={{list}} />
|
|
26
49
|
{{/each}}
|
|
27
50
|
</tbody>
|
|
28
51
|
</List>
|
|
29
|
-
{{/if}}
|
|
52
|
+
{{/if}}
|
|
@@ -1,24 +1,33 @@
|
|
|
1
|
+
{{#if this.toolbarContainer}}
|
|
2
|
+
{{#in-element this.toolbarContainer}}
|
|
3
|
+
<RouteTreeToolbar
|
|
4
|
+
@options={{this.options}}
|
|
5
|
+
@searchValue={{this.searchValue}}
|
|
6
|
+
/>
|
|
7
|
+
{{/in-element}}
|
|
8
|
+
{{/if}}
|
|
9
|
+
|
|
1
10
|
<EmberTable as |t|>
|
|
2
|
-
<t.head
|
|
3
|
-
@columns={{schema-for "route-tree"}}
|
|
4
|
-
@enableReorder={{false}}
|
|
5
|
-
/>
|
|
11
|
+
<t.head @columns={{schema-for "route-tree"}} @enableReorder={{false}} />
|
|
6
12
|
|
|
7
|
-
<t.body
|
|
8
|
-
@rows={{this.rows}}
|
|
9
|
-
@checkboxSelectionMode="none"
|
|
10
|
-
as |b|
|
|
11
|
-
>
|
|
13
|
+
<t.body @rows={{this.rows}} @checkboxSelectionMode="none" as |b|>
|
|
12
14
|
<b.row
|
|
13
|
-
class={{
|
|
14
|
-
|
|
15
|
+
class={{
|
|
16
|
+
concat
|
|
17
|
+
"list__row js-route-tree-item"
|
|
18
|
+
(if (mod b.rowMeta.index 2) " striped")
|
|
19
|
+
}} as |r|
|
|
15
20
|
>
|
|
16
21
|
<r.cell as |route|>
|
|
17
|
-
{{#let
|
|
22
|
+
{{#let
|
|
23
|
+
(component (concat "route-cell-" r.columnValue.valuePath)) as |Cell|
|
|
24
|
+
}}
|
|
18
25
|
<Cell
|
|
19
26
|
@route={{route}}
|
|
20
27
|
@currentRoute={{this.currentRoute}}
|
|
21
|
-
@inspectController={{
|
|
28
|
+
@inspectController={{
|
|
29
|
+
fn this.inspectController route.value.controller
|
|
30
|
+
}}
|
|
22
31
|
@inspectRoute={{fn this.inspectRoute route.value.routeHandler.name}}
|
|
23
32
|
@sendControllerToConsole={{this.sendControllerToConsole}}
|
|
24
33
|
@sendRouteHandlerToConsole={{this.sendRouteHandlerToConsole}}
|
|
@@ -27,4 +36,4 @@
|
|
|
27
36
|
</r.cell>
|
|
28
37
|
</b.row>
|
|
29
38
|
</t.body>
|
|
30
|
-
</EmberTable>
|
|
39
|
+
</EmberTable>
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
<div class="whats-new">
|
|
2
|
-
<h1>
|
|
2
|
+
<h1>
|
|
3
|
+
What's New in Ember Inspector
|
|
4
|
+
</h1>
|
|
3
5
|
{{#if this.error}}
|
|
4
|
-
<p>
|
|
6
|
+
<p>
|
|
7
|
+
Changelog could not be loaded
|
|
8
|
+
</p>
|
|
5
9
|
{{else}}
|
|
6
10
|
<Ui::OpenLinksInNewWindow>
|
|
7
|
-
{{
|
|
11
|
+
<MarkdownToHtml @markdown={{this.model}} />
|
|
8
12
|
</Ui::OpenLinksInNewWindow>
|
|
9
13
|
{{/if}}
|
|
10
|
-
</div>
|
|
14
|
+
</div>
|
package/config/ember-try.js
CHANGED
package/config/targets.js
CHANGED
|
@@ -6,12 +6,20 @@ const browsers = [
|
|
|
6
6
|
'last 1 Safari versions',
|
|
7
7
|
];
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
// Ember's browser support policy is changing, and IE11 support will end in
|
|
10
|
+
// v4.0 onwards.
|
|
11
|
+
//
|
|
12
|
+
// See https://deprecations.emberjs.com/v3.x#toc_3-0-browser-support-policy
|
|
13
|
+
//
|
|
14
|
+
// If you need IE11 support on a version of Ember that still offers support
|
|
15
|
+
// for it, uncomment the code block below.
|
|
16
|
+
//
|
|
17
|
+
// const isCI = Boolean(process.env.CI);
|
|
18
|
+
// const isProduction = process.env.EMBER_ENV === 'production';
|
|
19
|
+
//
|
|
20
|
+
// if (isCI || isProduction) {
|
|
21
|
+
// browsers.push('ie 11');
|
|
22
|
+
// }
|
|
15
23
|
|
|
16
24
|
module.exports = {
|
|
17
25
|
browsers,
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
var __ember_auto_import__;(()=>{var e={62:(e,t,n)=>{"use strict"
|
|
2
|
+
var i=n(389)
|
|
3
|
+
function r(){var e={},t=0,n=0,i=0
|
|
4
|
+
return{add:function(r,o){o||(o=r,r=0),r>n?n=r:r<i&&(i=r),e[r]||(e[r]=[]),e[r].push(o),t++},process:function(){for(var t=i;t<=n;t++)for(var r=e[t],o=0;o<r.length;o++)(0,r[o])()},size:function(){return t}}}e.exports=function(e){var t=(e=e||{}).reporter,n=i.getOption(e,"async",!0),o=i.getOption(e,"auto",!0)
|
|
5
|
+
o&&!n&&(t&&t.warn("Invalid options combination. auto=true and async=false is invalid. Setting async=true."),n=!0)
|
|
6
|
+
var a,s=r(),l=!1
|
|
7
|
+
function c(){for(l=!0;s.size();){var e=s
|
|
8
|
+
s=r(),e.process()}l=!1}function d(){a=setTimeout(c,0)}return{add:function(e,t){!l&&o&&n&&0===s.size()&&d(),s.add(e,t)},force:function(e){l||(void 0===e&&(e=n),a&&(clearTimeout(a),a=null),e?d():c())}}}},389:e=>{"use strict";(e.exports={}).getOption=function(e,t,n){var i=e[t]
|
|
9
|
+
return null==i&&void 0!==n?n:i}},422:e=>{"use strict"
|
|
10
|
+
var t=e.exports={}
|
|
11
|
+
t.isIE=function(e){return!(-1===(t=navigator.userAgent.toLowerCase()).indexOf("msie")&&-1===t.indexOf("trident")&&-1===t.indexOf(" edge/")||e&&e!==function(){var e=3,t=document.createElement("div"),n=t.getElementsByTagName("i")
|
|
12
|
+
do{t.innerHTML="\x3c!--[if gt IE "+ ++e+"]><i></i><![endif]--\x3e"}while(n[0])
|
|
13
|
+
return e>4?e:void 0}())
|
|
14
|
+
var t},t.isLegacyOpera=function(){return!!window.opera}},785:e=>{"use strict";(e.exports={}).forEach=function(e,t){for(var n=0;n<e.length;n++){var i=t(e[n])
|
|
15
|
+
if(i)return i}}},325:(e,t,n)=>{"use strict"
|
|
16
|
+
var i=n(422)
|
|
17
|
+
e.exports=function(e){var t=(e=e||{}).reporter,n=e.batchProcessor,r=e.stateHandler.getState
|
|
18
|
+
if(!t)throw new Error("Missing required dependency: reporter.")
|
|
19
|
+
function o(t){var n=e.important?" !important; ":"; "
|
|
20
|
+
return(t.join(n)+n).trim()}function a(e){return r(e).object}return{makeDetectable:function(e,a,s){s||(s=a,a=e,e=null),(e=e||{}).debug,i.isIE(8)?s(a):function(a,s){var l=o(["display: block","position: absolute","top: 0","left: 0","width: 100%","height: 100%","border: none","padding: 0","margin: 0","opacity: 0","z-index: -1000","pointer-events: none"]),c=!1,d=window.getComputedStyle(a),u=a.offsetWidth,f=a.offsetHeight
|
|
21
|
+
function h(){function n(){if("static"===d.position){a.style.setProperty("position","relative",e.important?"important":"")
|
|
22
|
+
var n=function(t,n,i,r){var o=i[r]
|
|
23
|
+
"auto"!==o&&"0"!==function(e){return e.replace(/[^-\d\.]/g,"")}(o)&&(t.warn("An element that is positioned static has style."+r+"="+o+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+r+" will be set to 0. Element: ",n),n.style.setProperty(r,"0",e.important?"important":""))}
|
|
24
|
+
n(t,a,d,"top"),n(t,a,d,"right"),n(t,a,d,"bottom"),n(t,a,d,"left")}}""!==d.position&&(n(),c=!0)
|
|
25
|
+
var o=document.createElement("object")
|
|
26
|
+
o.style.cssText=l,o.tabIndex=-1,o.type="text/html",o.setAttribute("aria-hidden","true"),o.onload=function(){c||n(),function e(t,n){if(!t.contentDocument){var i=r(t)
|
|
27
|
+
return i.checkForObjectDocumentTimeoutId&&window.clearTimeout(i.checkForObjectDocumentTimeoutId),void(i.checkForObjectDocumentTimeoutId=setTimeout((function(){i.checkForObjectDocumentTimeoutId=0,e(t,n)}),100))}n(t.contentDocument)}(this,(function(e){s(a)}))},i.isIE()||(o.data="about:blank"),r(a)&&(a.appendChild(o),r(a).object=o,i.isIE()&&(o.data="about:blank"))}r(a).startSize={width:u,height:f},n?n.add(h):h()}(a,s)},addListener:function(e,t){function n(){t(e)}if(i.isIE(8))r(e).object={proxy:n},e.attachEvent("onresize",n)
|
|
28
|
+
else{var o=a(e)
|
|
29
|
+
if(!o)throw new Error("Element is not detectable by this strategy.")
|
|
30
|
+
o.contentDocument.defaultView.addEventListener("resize",n)}},uninstall:function(e){if(r(e)){var t=a(e)
|
|
31
|
+
t&&(i.isIE(8)?e.detachEvent("onresize",t.proxy):e.removeChild(t),r(e).checkForObjectDocumentTimeoutId&&window.clearTimeout(r(e).checkForObjectDocumentTimeoutId),delete r(e).object)}}}}},659:(e,t,n)=>{"use strict"
|
|
32
|
+
var i=n(785).forEach
|
|
33
|
+
e.exports=function(e){var t=(e=e||{}).reporter,n=e.batchProcessor,r=e.stateHandler.getState,o=(e.stateHandler.hasState,e.idHandler)
|
|
34
|
+
if(!n)throw new Error("Missing required dependency: batchProcessor")
|
|
35
|
+
if(!t)throw new Error("Missing required dependency: reporter.")
|
|
36
|
+
var a=function(){var e=document.createElement("div")
|
|
37
|
+
e.style.cssText=c(["position: absolute","width: 1000px","height: 1000px","visibility: hidden","margin: 0","padding: 0"])
|
|
38
|
+
var t=document.createElement("div")
|
|
39
|
+
t.style.cssText=c(["position: absolute","width: 500px","height: 500px","overflow: scroll","visibility: none","top: -1500px","left: -1500px","visibility: hidden","margin: 0","padding: 0"]),t.appendChild(e),document.body.insertBefore(t,document.body.firstChild)
|
|
40
|
+
var n=500-t.clientWidth,i=500-t.clientHeight
|
|
41
|
+
return document.body.removeChild(t),{width:n,height:i}}(),s="erd_scroll_detection_container"
|
|
42
|
+
function l(e){!function(e,t,n){if(!e.getElementById(t)){var i=n+"_animation",r="/* Created by the element-resize-detector library. */\n"
|
|
43
|
+
r+="."+n+" > div::-webkit-scrollbar { "+c(["display: none"])+" }\n\n",r+=".erd_scroll_detection_container_animation_active { "+c(["-webkit-animation-duration: 0.1s","animation-duration: 0.1s","-webkit-animation-name: "+i,"animation-name: "+i])+" }\n",r+="@-webkit-keyframes "+i+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\n",function(n,i){i=i||function(t){e.head.appendChild(t)}
|
|
44
|
+
var r=e.createElement("style")
|
|
45
|
+
r.innerHTML=n,r.id=t,i(r)}(r+="@keyframes "+i+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }")}}(e,"erd_scroll_detection_scrollbar_style",s)}function c(t){var n=e.important?" !important; ":"; "
|
|
46
|
+
return(t.join(n)+n).trim()}function d(e,n,i){if(e.addEventListener)e.addEventListener(n,i)
|
|
47
|
+
else{if(!e.attachEvent)return t.error("[scroll] Don't know how to add event listeners.")
|
|
48
|
+
e.attachEvent("on"+n,i)}}function u(e,n,i){if(e.removeEventListener)e.removeEventListener(n,i)
|
|
49
|
+
else{if(!e.detachEvent)return t.error("[scroll] Don't know how to remove event listeners.")
|
|
50
|
+
e.detachEvent("on"+n,i)}}function f(e){return r(e).container.childNodes[0].childNodes[0].childNodes[0]}function h(e){return r(e).container.childNodes[0].childNodes[0].childNodes[1]}return l(window.document),{makeDetectable:function(e,l,u){function p(){if(e.debug){var n=Array.prototype.slice.call(arguments)
|
|
51
|
+
if(n.unshift(o.get(l),"Scroll: "),t.log.apply)t.log.apply(null,n)
|
|
52
|
+
else for(var i=0;i<n.length;i++)t.log(n[i])}}function m(e){var t=r(e).container.childNodes[0],n=window.getComputedStyle(t)
|
|
53
|
+
return!n.width||-1===n.width.indexOf("px")}function g(){var e=window.getComputedStyle(l),t={}
|
|
54
|
+
return t.position=e.position,t.width=l.offsetWidth,t.height=l.offsetHeight,t.top=e.top,t.right=e.right,t.bottom=e.bottom,t.left=e.left,t.widthCSS=e.width,t.heightCSS=e.height,t}function v(){if(p("storeStyle invoked."),r(l)){var e=g()
|
|
55
|
+
r(l).style=e}else p("Aborting because element has been uninstalled")}function b(e,t,n){r(e).lastWidth=t,r(e).lastHeight=n}function y(){return 2*a.width+1}function w(){return 2*a.height+1}function x(e){return e+10+y()}function E(e){return e+10+w()}function S(e,t,n){var i=f(e),r=h(e),o=x(t),a=E(n),s=function(e){return 2*e+y()}(t),l=function(e){return 2*e+w()}(n)
|
|
56
|
+
i.scrollLeft=o,i.scrollTop=a,r.scrollLeft=s,r.scrollTop=l}function _(){var e=r(l).container
|
|
57
|
+
if(!e){(e=document.createElement("div")).className=s,e.style.cssText=c(["visibility: hidden","display: inline","width: 0px","height: 0px","z-index: -1","overflow: hidden","margin: 0","padding: 0"]),r(l).container=e,function(e){e.className+=" "+s+"_animation_active"}(e),l.appendChild(e)
|
|
58
|
+
var t=function(){r(l).onRendered&&r(l).onRendered()}
|
|
59
|
+
d(e,"animationstart",t),r(l).onAnimationStart=t}return e}function A(){if(p("Injecting elements"),r(l)){!function(){var n=r(l).style
|
|
60
|
+
if("static"===n.position){l.style.setProperty("position","relative",e.important?"important":"")
|
|
61
|
+
var i=function(e,t,n,i){var r=n[i]
|
|
62
|
+
"auto"!==r&&"0"!==function(e){return e.replace(/[^-\d\.]/g,"")}(r)&&(e.warn("An element that is positioned static has style."+i+"="+r+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+i+" will be set to 0. Element: ",t),t.style[i]=0)}
|
|
63
|
+
i(t,l,n,"top"),i(t,l,n,"right"),i(t,l,n,"bottom"),i(t,l,n,"left")}}()
|
|
64
|
+
var n=r(l).container
|
|
65
|
+
n||(n=_())
|
|
66
|
+
var i,o,u,f,h=a.width,m=a.height,g=c(["position: absolute","flex: none","overflow: hidden","z-index: -1","visibility: hidden","width: 100%","height: 100%","left: 0px","top: 0px"]),v=c(["position: absolute","flex: none","overflow: hidden","z-index: -1","visibility: hidden"].concat(["left: "+(i=(i=-(1+h))?i+"px":"0"),"top: "+(o=(o=-(1+m))?o+"px":"0"),"right: "+(f=(f=-h)?f+"px":"0"),"bottom: "+(u=(u=-m)?u+"px":"0")])),b=c(["position: absolute","flex: none","overflow: scroll","z-index: -1","visibility: hidden","width: 100%","height: 100%"]),y=c(["position: absolute","flex: none","overflow: scroll","z-index: -1","visibility: hidden","width: 100%","height: 100%"]),w=c(["position: absolute","left: 0","top: 0"]),x=c(["position: absolute","width: 200%","height: 200%"]),E=document.createElement("div"),S=document.createElement("div"),A=document.createElement("div"),k=document.createElement("div"),z=document.createElement("div"),D=document.createElement("div")
|
|
67
|
+
E.dir="ltr",E.style.cssText=g,E.className=s,S.className=s,S.style.cssText=v,A.style.cssText=b,k.style.cssText=w,z.style.cssText=y,D.style.cssText=x,A.appendChild(k),z.appendChild(D),S.appendChild(A),S.appendChild(z),E.appendChild(S),n.appendChild(E),d(A,"scroll",T),d(z,"scroll",I),r(l).onExpandScroll=T,r(l).onShrinkScroll=I}else p("Aborting because element has been uninstalled")
|
|
68
|
+
function T(){r(l).onExpand&&r(l).onExpand()}function I(){r(l).onShrink&&r(l).onShrink()}}function k(){function a(t,n,i){var r=function(e){return f(e).childNodes[0]}(t),o=x(n),a=E(i)
|
|
69
|
+
r.style.setProperty("width",o+"px",e.important?"important":""),r.style.setProperty("height",a+"px",e.important?"important":"")}function s(i){var s=l.offsetWidth,d=l.offsetHeight,u=s!==r(l).lastWidth||d!==r(l).lastHeight
|
|
70
|
+
p("Storing current size",s,d),b(l,s,d),n.add(0,(function(){if(u)if(r(l))if(c()){if(e.debug){var n=l.offsetWidth,i=l.offsetHeight
|
|
71
|
+
n===s&&i===d||t.warn(o.get(l),"Scroll: Size changed before updating detector elements.")}a(l,s,d)}else p("Aborting because element container has not been initialized")
|
|
72
|
+
else p("Aborting because element has been uninstalled")})),n.add(1,(function(){r(l)?c()?S(l,s,d):p("Aborting because element container has not been initialized"):p("Aborting because element has been uninstalled")})),u&&i&&n.add(2,(function(){r(l)?c()?i():p("Aborting because element container has not been initialized"):p("Aborting because element has been uninstalled")}))}function c(){return!!r(l).container}function d(){p("notifyListenersIfNeeded invoked")
|
|
73
|
+
var e=r(l)
|
|
74
|
+
return void 0===r(l).lastNotifiedWidth&&e.lastWidth===e.startSize.width&&e.lastHeight===e.startSize.height?p("Not notifying: Size is the same as the start size, and there has been no notification yet."):e.lastWidth===e.lastNotifiedWidth&&e.lastHeight===e.lastNotifiedHeight?p("Not notifying: Size already notified"):(p("Current size not notified, notifying..."),e.lastNotifiedWidth=e.lastWidth,e.lastNotifiedHeight=e.lastHeight,void i(r(l).listeners,(function(e){e(l)})))}function u(){p("Scroll detected."),m(l)?p("Scroll event fired while unrendered. Ignoring..."):s(d)}if(p("registerListenersAndPositionElements invoked."),r(l)){r(l).onRendered=function(){if(p("startanimation triggered."),m(l))p("Ignoring since element is still unrendered...")
|
|
75
|
+
else{p("Element rendered.")
|
|
76
|
+
var e=f(l),t=h(l)
|
|
77
|
+
0!==e.scrollLeft&&0!==e.scrollTop&&0!==t.scrollLeft&&0!==t.scrollTop||(p("Scrollbars out of sync. Updating detector elements..."),s(d))}},r(l).onExpand=u,r(l).onShrink=u
|
|
78
|
+
var g=r(l).style
|
|
79
|
+
a(l,g.width,g.height)}else p("Aborting because element has been uninstalled")}function z(){if(p("finalizeDomMutation invoked."),r(l)){var e=r(l).style
|
|
80
|
+
b(l,e.width,e.height),S(l,e.width,e.height)}else p("Aborting because element has been uninstalled")}function D(){u(l)}function T(){var e
|
|
81
|
+
p("Installing..."),r(l).listeners=[],e=g(),r(l).startSize={width:e.width,height:e.height},p("Element start size",r(l).startSize),n.add(0,v),n.add(1,A),n.add(2,k),n.add(3,z),n.add(4,D)}u||(u=l,l=e,e=null),e=e||{},p("Making detectable..."),function(e){return!function(e){var t=e.getRootNode&&e.getRootNode().contains(e)
|
|
82
|
+
return e===e.ownerDocument.body||e.ownerDocument.body.contains(e)||t}(e)||null===window.getComputedStyle(e)}(l)?(p("Element is detached"),_(),p("Waiting until element is attached..."),r(l).onRendered=function(){p("Element is now attached"),T()}):T()},addListener:function(e,t){if(!r(e).listeners.push)throw new Error("Cannot add listener to an element that is not detectable.")
|
|
83
|
+
r(e).listeners.push(t)},uninstall:function(e){var t=r(e)
|
|
84
|
+
t&&(t.onExpandScroll&&u(f(e),"scroll",t.onExpandScroll),t.onShrinkScroll&&u(h(e),"scroll",t.onShrinkScroll),t.onAnimationStart&&u(t.container,"animationstart",t.onAnimationStart),t.container&&e.removeChild(t.container))},initDocument:l}}},923:(e,t,n)=>{"use strict"
|
|
85
|
+
var i=n(785).forEach,r=n(234),o=n(382),a=n(383),s=n(318),l=n(962),c=n(422),d=n(62),u=n(510),f=n(325),h=n(659)
|
|
86
|
+
function p(e){return Array.isArray(e)||void 0!==e.length}function m(e){if(Array.isArray(e))return e
|
|
87
|
+
var t=[]
|
|
88
|
+
return i(e,(function(e){t.push(e)})),t}function g(e){return e&&1===e.nodeType}function v(e,t,n){var i=e[t]
|
|
89
|
+
return null==i&&void 0!==n?n:i}e.exports=function(e){var t
|
|
90
|
+
if((e=e||{}).idHandler)t={get:function(t){return e.idHandler.get(t,!0)},set:e.idHandler.set}
|
|
91
|
+
else{var n=a(),b=s({idGenerator:n,stateHandler:u})
|
|
92
|
+
t=b}var y=e.reporter
|
|
93
|
+
y||(y=l(!1===y))
|
|
94
|
+
var w=v(e,"batchProcessor",d({reporter:y})),x={}
|
|
95
|
+
x.callOnAdd=!!v(e,"callOnAdd",!0),x.debug=!!v(e,"debug",!1)
|
|
96
|
+
var E,S=o(t),_=r({stateHandler:u}),A=v(e,"strategy","object"),k=v(e,"important",!1),z={reporter:y,batchProcessor:w,stateHandler:u,idHandler:t,important:k}
|
|
97
|
+
if("scroll"===A&&(c.isLegacyOpera()?(y.warn("Scroll strategy is not supported on legacy Opera. Changing to object strategy."),A="object"):c.isIE(9)&&(y.warn("Scroll strategy is not supported on IE9. Changing to object strategy."),A="object")),"scroll"===A)E=h(z)
|
|
98
|
+
else{if("object"!==A)throw new Error("Invalid strategy name: "+A)
|
|
99
|
+
E=f(z)}var D={}
|
|
100
|
+
return{listenTo:function(e,n,r){function o(e){var t=S.get(e)
|
|
101
|
+
i(t,(function(t){t(e)}))}function a(e,t,n){S.add(t,n),e&&n(t)}if(r||(r=n,n=e,e={}),!n)throw new Error("At least one element required.")
|
|
102
|
+
if(!r)throw new Error("Listener required.")
|
|
103
|
+
if(g(n))n=[n]
|
|
104
|
+
else{if(!p(n))return y.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.")
|
|
105
|
+
n=m(n)}var s=0,l=v(e,"callOnAdd",x.callOnAdd),c=v(e,"onReady",(function(){})),d=v(e,"debug",x.debug)
|
|
106
|
+
i(n,(function(e){u.getState(e)||(u.initState(e),t.set(e))
|
|
107
|
+
var f=t.get(e)
|
|
108
|
+
if(d&&y.log("Attaching listener to element",f,e),!_.isDetectable(e))return d&&y.log(f,"Not detectable."),_.isBusy(e)?(d&&y.log(f,"System busy making it detectable"),a(l,e,r),D[f]=D[f]||[],void D[f].push((function(){++s===n.length&&c()}))):(d&&y.log(f,"Making detectable..."),_.markBusy(e,!0),E.makeDetectable({debug:d,important:k},e,(function(e){if(d&&y.log(f,"onElementDetectable"),u.getState(e)){_.markAsDetectable(e),_.markBusy(e,!1),E.addListener(e,o),a(l,e,r)
|
|
109
|
+
var t=u.getState(e)
|
|
110
|
+
if(t&&t.startSize){var h=e.offsetWidth,p=e.offsetHeight
|
|
111
|
+
t.startSize.width===h&&t.startSize.height===p||o(e)}D[f]&&i(D[f],(function(e){e()}))}else d&&y.log(f,"Element uninstalled before being detectable.")
|
|
112
|
+
delete D[f],++s===n.length&&c()})))
|
|
113
|
+
d&&y.log(f,"Already detecable, adding listener."),a(l,e,r),s++})),s===n.length&&c()},removeListener:S.removeListener,removeAllListeners:S.removeAllListeners,uninstall:function(e){if(!e)return y.error("At least one element is required.")
|
|
114
|
+
if(g(e))e=[e]
|
|
115
|
+
else{if(!p(e))return y.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.")
|
|
116
|
+
e=m(e)}i(e,(function(e){S.removeAllListeners(e),E.uninstall(e),u.cleanState(e)}))},initDocument:function(e){E.initDocument&&E.initDocument(e)}}}},234:e=>{"use strict"
|
|
117
|
+
e.exports=function(e){var t=e.stateHandler.getState
|
|
118
|
+
return{isDetectable:function(e){var n=t(e)
|
|
119
|
+
return n&&!!n.isDetectable},markAsDetectable:function(e){t(e).isDetectable=!0},isBusy:function(e){return!!t(e).busy},markBusy:function(e,n){t(e).busy=!!n}}}},383:e=>{"use strict"
|
|
120
|
+
e.exports=function(){var e=1
|
|
121
|
+
return{generate:function(){return e++}}}},318:e=>{"use strict"
|
|
122
|
+
e.exports=function(e){var t=e.idGenerator,n=e.stateHandler.getState
|
|
123
|
+
return{get:function(e){var t=n(e)
|
|
124
|
+
return t&&void 0!==t.id?t.id:null},set:function(e){var i=n(e)
|
|
125
|
+
if(!i)throw new Error("setId required the element to have a resize detection state.")
|
|
126
|
+
var r=t.generate()
|
|
127
|
+
return i.id=r,r}}}},382:e=>{"use strict"
|
|
128
|
+
e.exports=function(e){var t={}
|
|
129
|
+
function n(n){var i=e.get(n)
|
|
130
|
+
return void 0===i?[]:t[i]||[]}return{get:n,add:function(n,i){var r=e.get(n)
|
|
131
|
+
t[r]||(t[r]=[]),t[r].push(i)},removeListener:function(e,t){for(var i=n(e),r=0,o=i.length;r<o;++r)if(i[r]===t){i.splice(r,1)
|
|
132
|
+
break}},removeAllListeners:function(e){var t=n(e)
|
|
133
|
+
t&&(t.length=0)}}}},962:e=>{"use strict"
|
|
134
|
+
e.exports=function(e){function t(){}var n={log:t,warn:t,error:t}
|
|
135
|
+
if(!e&&window.console){var i=function(e,t){e[t]=function(){var e=console[t]
|
|
136
|
+
if(e.apply)e.apply(console,arguments)
|
|
137
|
+
else for(var n=0;n<arguments.length;n++)e(arguments[n])}}
|
|
138
|
+
i(n,"log"),i(n,"warn"),i(n,"error")}return n}},510:e=>{"use strict"
|
|
139
|
+
function t(e){return e._erd}e.exports={initState:function(e){return e._erd={},t(e)},getState:t,cleanState:function(e){delete e._erd}}},788:(e,t,n)=>{var i,r
|
|
140
|
+
e.exports=(i=_eai_d,r=_eai_r,window.emberAutoImportDynamic=function(e){return 1===arguments.length?r("_eai_dyn_"+e):r("_eai_dynt_"+e)(Array.prototype.slice.call(arguments,1))},window.emberAutoImportSync=function(e){return r("_eai_sync_"+e)(Array.prototype.slice.call(arguments,1))},void i("element-resize-detector",[],(function(){return n(923)})))},189:function(e,t){window._eai_r=require,window._eai_d=define}},t={}
|
|
141
|
+
function n(i){var r=t[i]
|
|
142
|
+
if(void 0!==r)return r.exports
|
|
143
|
+
var o=t[i]={exports:{}}
|
|
144
|
+
return e[i].call(o.exports,o,o.exports,n),o.exports}n(189)
|
|
145
|
+
var i=n(788)
|
|
146
|
+
__ember_auto_import__=i})()
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
var __ember_auto_import__;(()=>{var r,e={189:function(r,e){window._eai_r=require,window._eai_d=define},536:(r,e,o)=>{var i,t
|
|
2
|
+
r.exports=(i=_eai_d,t=_eai_r,window.emberAutoImportDynamic=function(r){return 1===arguments.length?t("_eai_dyn_"+r):t("_eai_dynt_"+r)(Array.prototype.slice.call(arguments,1))},window.emberAutoImportSync=function(r){return t("_eai_sync_"+r)(Array.prototype.slice.call(arguments,1))},void i("qunit",[],(function(){return o(916)})))}},o={}
|
|
3
|
+
function i(r){var t=o[r]
|
|
4
|
+
if(void 0!==t)return t.exports
|
|
5
|
+
var n=o[r]={id:r,loaded:!1,exports:{}}
|
|
6
|
+
return e[r].call(n.exports,n,n.exports,i),n.loaded=!0,n.exports}i.m=e,r=[],i.O=(e,o,t,n)=>{if(!o){var a=1/0
|
|
7
|
+
for(u=0;u<r.length;u++){for(var[o,t,n]=r[u],_=!0,l=0;l<o.length;l++)(!1&n||a>=n)&&Object.keys(i.O).every((r=>i.O[r](o[l])))?o.splice(l--,1):(_=!1,n<a&&(a=n))
|
|
8
|
+
if(_){r.splice(u--,1)
|
|
9
|
+
var p=t()
|
|
10
|
+
void 0!==p&&(e=p)}}return e}n=n||0
|
|
11
|
+
for(var u=r.length;u>0&&r[u-1][2]>n;u--)r[u]=r[u-1]
|
|
12
|
+
r[u]=[o,t,n]},i.o=(r,e)=>Object.prototype.hasOwnProperty.call(r,e),i.nmd=r=>(r.paths=[],r.children||(r.children=[]),r),(()=>{var r={178:0}
|
|
13
|
+
i.O.j=e=>0===r[e]
|
|
14
|
+
var e=(e,o)=>{var t,n,[a,_,l]=o,p=0
|
|
15
|
+
if(a.some((e=>0!==r[e]))){for(t in _)i.o(_,t)&&(i.m[t]=_[t])
|
|
16
|
+
if(l)var u=l(i)}for(e&&e(o);p<a.length;p++)n=a[p],i.o(r,n)&&r[n]&&r[n][0](),r[a[p]]=0
|
|
17
|
+
return i.O(u)},o=globalThis.webpackChunk_ember_auto_import_=globalThis.webpackChunk_ember_auto_import_||[]
|
|
18
|
+
o.forEach(e.bind(null,0)),o.push=e.bind(null,o.push.bind(o))})(),i.O(void 0,[916],(()=>i(189)))
|
|
19
|
+
var t=i.O(void 0,[916],(()=>i(536)))
|
|
20
|
+
t=i.O(t),__ember_auto_import__=t})()
|