mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
update components
This commit is contained in:
parent
5f5a748b37
commit
18c23db5c9
7 changed files with 150 additions and 27 deletions
|
@ -32,14 +32,14 @@
|
||||||
"web-component-tester": "^4.0.0",
|
"web-component-tester": "^4.0.0",
|
||||||
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
|
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/PolymerElements/iron-icon",
|
"homepage": "https://github.com/polymerelements/iron-icon",
|
||||||
"_release": "1.0.8",
|
"_release": "1.0.8",
|
||||||
"_resolution": {
|
"_resolution": {
|
||||||
"type": "version",
|
"type": "version",
|
||||||
"tag": "v1.0.8",
|
"tag": "v1.0.8",
|
||||||
"commit": "f36b38928849ef3853db727faa8c9ef104d611eb"
|
"commit": "f36b38928849ef3853db727faa8c9ef104d611eb"
|
||||||
},
|
},
|
||||||
"_source": "git://github.com/PolymerElements/iron-icon.git",
|
"_source": "git://github.com/polymerelements/iron-icon.git",
|
||||||
"_target": "^1.0.0",
|
"_target": "^1.0.0",
|
||||||
"_originalSource": "PolymerElements/iron-icon"
|
"_originalSource": "polymerelements/iron-icon"
|
||||||
}
|
}
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "iron-overlay-behavior",
|
"name": "iron-overlay-behavior",
|
||||||
"version": "1.5.1",
|
"version": "1.5.2",
|
||||||
"license": "http://polymer.github.io/LICENSE.txt",
|
"license": "http://polymer.github.io/LICENSE.txt",
|
||||||
"description": "Provides a behavior for making an element an overlay",
|
"description": "Provides a behavior for making an element an overlay",
|
||||||
"private": true,
|
"private": true,
|
||||||
|
@ -35,11 +35,11 @@
|
||||||
},
|
},
|
||||||
"ignore": [],
|
"ignore": [],
|
||||||
"homepage": "https://github.com/polymerelements/iron-overlay-behavior",
|
"homepage": "https://github.com/polymerelements/iron-overlay-behavior",
|
||||||
"_release": "1.5.1",
|
"_release": "1.5.2",
|
||||||
"_resolution": {
|
"_resolution": {
|
||||||
"type": "version",
|
"type": "version",
|
||||||
"tag": "v1.5.1",
|
"tag": "v1.5.2",
|
||||||
"commit": "b6f4126ecbfdc9dc149beac8e7fbe201bbd14ad5"
|
"commit": "740705930a3d30c8381e75f379aeea5eae89847b"
|
||||||
},
|
},
|
||||||
"_source": "git://github.com/polymerelements/iron-overlay-behavior.git",
|
"_source": "git://github.com/polymerelements/iron-overlay-behavior.git",
|
||||||
"_target": "^1.0.0",
|
"_target": "^1.0.0",
|
||||||
|
|
33
dashboard-ui/bower_components/iron-overlay-behavior/.github/ISSUE_TEMPLATE.md
vendored
Normal file
33
dashboard-ui/bower_components/iron-overlay-behavior/.github/ISSUE_TEMPLATE.md
vendored
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
<!-- Instructions: https://github.com/PolymerElements/iron-overlay-behavior/CONTRIBUTING.md#filing-issues -->
|
||||||
|
### Description
|
||||||
|
<!-- Example: The `paper-foo` element causes the page to turn pink when clicked. -->
|
||||||
|
|
||||||
|
### Expected outcome
|
||||||
|
|
||||||
|
<!-- Example: The page stays the same color. -->
|
||||||
|
|
||||||
|
### Actual outcome
|
||||||
|
|
||||||
|
<!-- Example: The page turns pink. -->
|
||||||
|
|
||||||
|
### Live Demo
|
||||||
|
<!-- Example: https://jsbin.com/cagaye/edit?html,output -->
|
||||||
|
|
||||||
|
### Steps to reproduce
|
||||||
|
|
||||||
|
<!-- Example
|
||||||
|
1. Put a `paper-foo` element in the page.
|
||||||
|
2. Open the page in a web browser.
|
||||||
|
3. Click the `paper-foo` element.
|
||||||
|
-->
|
||||||
|
|
||||||
|
### Browsers Affected
|
||||||
|
<!-- Check all that apply -->
|
||||||
|
- [ ] Chrome
|
||||||
|
- [ ] Firefox
|
||||||
|
- [ ] Safari 9
|
||||||
|
- [ ] Safari 8
|
||||||
|
- [ ] Safari 7
|
||||||
|
- [ ] Edge
|
||||||
|
- [ ] IE 11
|
||||||
|
- [ ] IE 10
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "iron-overlay-behavior",
|
"name": "iron-overlay-behavior",
|
||||||
"version": "1.5.1",
|
"version": "1.5.2",
|
||||||
"license": "http://polymer.github.io/LICENSE.txt",
|
"license": "http://polymer.github.io/LICENSE.txt",
|
||||||
"description": "Provides a behavior for making an element an overlay",
|
"description": "Provides a behavior for making an element an overlay",
|
||||||
"private": true,
|
"private": true,
|
||||||
|
|
|
@ -306,16 +306,13 @@ context. You should place this element as a child of `<body>` whenever possible.
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this._manager.addOrRemoveOverlay(this);
|
||||||
|
|
||||||
this.__isAnimating = true;
|
this.__isAnimating = true;
|
||||||
|
|
||||||
if (this.opened) {
|
if (this.opened) {
|
||||||
this._prepareRenderOpened();
|
this._prepareRenderOpened();
|
||||||
} else {
|
|
||||||
this._manager.removeOverlay(this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this._manager.trackBackdrop(this);
|
|
||||||
|
|
||||||
if (this._openChangedAsync) {
|
if (this._openChangedAsync) {
|
||||||
this.cancelAsync(this._openChangedAsync);
|
this.cancelAsync(this._openChangedAsync);
|
||||||
}
|
}
|
||||||
|
@ -350,7 +347,7 @@ context. You should place this element as a child of `<body>` whenever possible.
|
||||||
this.__shouldRemoveTabIndex = false;
|
this.__shouldRemoveTabIndex = false;
|
||||||
}
|
}
|
||||||
if (this.opened) {
|
if (this.opened) {
|
||||||
this._manager.trackBackdrop(this);
|
this._manager.trackBackdrop();
|
||||||
if (this.withBackdrop) {
|
if (this.withBackdrop) {
|
||||||
this.backdropElement.prepare();
|
this.backdropElement.prepare();
|
||||||
// Give time to be added to document.
|
// Give time to be added to document.
|
||||||
|
@ -369,8 +366,6 @@ context. You should place this element as a child of `<body>` whenever possible.
|
||||||
*/
|
*/
|
||||||
_prepareRenderOpened: function() {
|
_prepareRenderOpened: function() {
|
||||||
|
|
||||||
this._manager.addOverlay(this);
|
|
||||||
|
|
||||||
// Needed to calculate the size of the overlay so that transitions on its size
|
// Needed to calculate the size of the overlay so that transitions on its size
|
||||||
// will have the correct starting points.
|
// will have the correct starting points.
|
||||||
this._preparePositioning();
|
this._preparePositioning();
|
||||||
|
|
|
@ -77,11 +77,56 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
||||||
return active;
|
return active;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Brings the overlay at the specified index to the front.
|
||||||
|
* @param {number} i
|
||||||
|
* @private
|
||||||
|
*/
|
||||||
|
_bringOverlayAtIndexToFront: function(i) {
|
||||||
|
var overlay = this._overlays[i];
|
||||||
|
var lastI = this._overlays.length - 1;
|
||||||
|
// If already the top element, return.
|
||||||
|
if (!overlay || i === lastI) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// Update z-index to be on top.
|
||||||
|
var minimumZ = Math.max(this.currentOverlayZ(), this._minimumZ);
|
||||||
|
if (this._getZ(overlay) <= minimumZ) {
|
||||||
|
this._applyOverlayZ(overlay, minimumZ);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Shift other overlays behind the new on top.
|
||||||
|
while (i < lastI) {
|
||||||
|
this._overlays[i] = this._overlays[i + 1];
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
this._overlays[lastI] = overlay;
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds the overlay and updates its z-index if it's opened, or removes it if it's closed.
|
||||||
|
* Also updates the backdrop z-index.
|
||||||
|
* @param {Element} overlay
|
||||||
|
*/
|
||||||
|
addOrRemoveOverlay: function(overlay) {
|
||||||
|
if (overlay.opened) {
|
||||||
|
this.addOverlay(overlay);
|
||||||
|
} else {
|
||||||
|
this.removeOverlay(overlay);
|
||||||
|
}
|
||||||
|
this.trackBackdrop();
|
||||||
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Tracks overlays for z-index and focus management.
|
* Tracks overlays for z-index and focus management.
|
||||||
* @param {Element} overlay
|
* @param {Element} overlay
|
||||||
*/
|
*/
|
||||||
addOverlay: function(overlay) {
|
addOverlay: function(overlay) {
|
||||||
|
var i = this._overlays.indexOf(overlay);
|
||||||
|
if (i >= 0) {
|
||||||
|
this._bringOverlayAtIndexToFront(i);
|
||||||
|
return;
|
||||||
|
}
|
||||||
var minimumZ = Math.max(this.currentOverlayZ(), this._minimumZ);
|
var minimumZ = Math.max(this.currentOverlayZ(), this._minimumZ);
|
||||||
this._overlays.push(overlay);
|
this._overlays.push(overlay);
|
||||||
var newZ = this.currentOverlayZ();
|
var newZ = this.currentOverlayZ();
|
||||||
|
@ -97,16 +142,17 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
||||||
*/
|
*/
|
||||||
removeOverlay: function(overlay) {
|
removeOverlay: function(overlay) {
|
||||||
var i = this._overlays.indexOf(overlay);
|
var i = this._overlays.indexOf(overlay);
|
||||||
if (i >= 0) {
|
if (i === -1) {
|
||||||
this._overlays.splice(i, 1);
|
return;
|
||||||
this._setZ(overlay, '');
|
}
|
||||||
|
this._overlays.splice(i, 1);
|
||||||
|
this._setZ(overlay, '');
|
||||||
|
|
||||||
var node = overlay.restoreFocusOnClose ? overlay.restoreFocusNode : null;
|
var node = overlay.restoreFocusOnClose ? overlay.restoreFocusNode : null;
|
||||||
overlay.restoreFocusNode = null;
|
overlay.restoreFocusNode = null;
|
||||||
// Focus back only if still contained in document.body
|
// Focus back only if still contained in document.body
|
||||||
if (node && Polymer.dom(document.body).deepContains(node)) {
|
if (node && Polymer.dom(document.body).deepContains(node)) {
|
||||||
node.focus();
|
node.focus();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -152,9 +198,9 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {Element} overlay The overlay that updated its withBackdrop.
|
* Updates the backdrop z-index.
|
||||||
*/
|
*/
|
||||||
trackBackdrop: function(overlay) {
|
trackBackdrop: function() {
|
||||||
this.backdropElement.style.zIndex = this.backdropZ();
|
this.backdropElement.style.zIndex = this.backdropZ();
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -751,6 +751,55 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
||||||
done();
|
done();
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
suite('Manager overlays in sync', function() {
|
||||||
|
var overlay1, overlay2;
|
||||||
|
var overlays;
|
||||||
|
|
||||||
|
setup(function() {
|
||||||
|
var f = fixture('multiple');
|
||||||
|
overlay1 = f[0];
|
||||||
|
overlay2 = f[1];
|
||||||
|
overlays = Polymer.IronOverlayManager._overlays;
|
||||||
|
});
|
||||||
|
|
||||||
|
test('no duplicates after attached', function(done) {
|
||||||
|
overlay1 = document.createElement('test-overlay');
|
||||||
|
overlay1.addEventListener('iron-overlay-opened',function() {
|
||||||
|
assert.equal(overlays.length, 1, 'correct count after open and attached');
|
||||||
|
document.body.removeChild(overlay1);
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
overlay1.opened = true;
|
||||||
|
assert.equal(overlays.length, 1, 'immediately updated');
|
||||||
|
document.body.appendChild(overlay1);
|
||||||
|
});
|
||||||
|
|
||||||
|
test('open twice handled', function() {
|
||||||
|
overlay1.open();
|
||||||
|
assert.equal(overlays.length, 1, '1 overlay after open');
|
||||||
|
overlay1.open();
|
||||||
|
assert.equal(overlays.length, 1, '1 overlay after second open');
|
||||||
|
});
|
||||||
|
|
||||||
|
test('close handled', function() {
|
||||||
|
overlay1.open();
|
||||||
|
overlay1.close();
|
||||||
|
assert.equal(overlays.length, 0, '0 overlays after close');
|
||||||
|
});
|
||||||
|
|
||||||
|
test('open/close brings overlay on top', function() {
|
||||||
|
overlay1.open();
|
||||||
|
overlay2.open();
|
||||||
|
assert.equal(overlays.indexOf(overlay1), 0, 'overlay1 at index 0');
|
||||||
|
assert.equal(overlays.indexOf(overlay2), 1, 'overlay2 at index 1');
|
||||||
|
overlay1.close();
|
||||||
|
overlay1.open();
|
||||||
|
assert.equal(overlays.indexOf(overlay1), 1, 'overlay1 moved at index 1');
|
||||||
|
assert.isAbove(parseInt(overlay1.style.zIndex), parseInt(overlay2.style.zIndex), 'overlay1 on top of overlay2');
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
suite('z-ordering', function() {
|
suite('z-ordering', function() {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue