1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

update polymer components

This commit is contained in:
Luke Pulverenti 2015-10-29 19:23:43 -04:00
parent 39b96c14d1
commit 15b68f5f4b
17 changed files with 1592 additions and 1227 deletions

View file

@ -39,6 +39,6 @@
"commit": "cec8e49744a1e18b14a711eea77e201bb70de544" "commit": "cec8e49744a1e18b14a711eea77e201bb70de544"
}, },
"_source": "git://github.com/desandro/doc-ready.git", "_source": "git://github.com/desandro/doc-ready.git",
"_target": "1.0.x", "_target": "~1.0.4",
"_originalSource": "doc-ready" "_originalSource": "doc-ready"
} }

View file

@ -1,6 +1,6 @@
{ {
"name": "paper-drawer-panel", "name": "paper-drawer-panel",
"version": "1.0.3", "version": "1.0.4",
"description": "A responsive drawer panel", "description": "A responsive drawer panel",
"authors": [ "authors": [
"The Polymer Authors" "The Polymer Authors"
@ -19,22 +19,25 @@
"license": "http://polymer.github.io/LICENSE.txt", "license": "http://polymer.github.io/LICENSE.txt",
"homepage": "https://github.com/PolymerElements/paper-drawer-panel", "homepage": "https://github.com/PolymerElements/paper-drawer-panel",
"dependencies": { "dependencies": {
"polymer": "Polymer/polymer#^1.0.0", "iron-media-query": "PolymerElements/iron-media-query#^1.0.0",
"iron-resizable-behavior": "PolymerElements/iron-resizable-behavior#^1.0.0",
"iron-selector": "PolymerElements/iron-selector#^1.0.0", "iron-selector": "PolymerElements/iron-selector#^1.0.0",
"iron-media-query": "PolymerElements/iron-media-query#^1.0.0" "polymer": "Polymer/polymer#^1.1.0"
}, },
"devDependencies": { "devDependencies": {
"iron-component-page": "PolymerElements/iron-component-page#^1.0.0", "iron-component-page": "PolymerElements/iron-component-page#^1.0.0",
"paper-button": "PolymerElements/paper-button#^1.0.0", "paper-button": "PolymerElements/paper-button#^1.0.0",
"paper-styles": "PolymerElements/paper-styles#^1.0.0", "paper-styles": "PolymerElements/paper-styles#^1.0.0",
"test-fixture": "PolymerElements/test-fixture#^1.0.0",
"web-component-tester": "*", "web-component-tester": "*",
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0" "webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
}, },
"_release": "1.0.3", "main": "paper-drawer-panel.html",
"_release": "1.0.4",
"_resolution": { "_resolution": {
"type": "version", "type": "version",
"tag": "v1.0.3", "tag": "v1.0.4",
"commit": "92713b61eb8eec378db63af61b73341453b8180d" "commit": "9d4a4c737d8e2e5d23baee39128625e476f2b051"
}, },
"_source": "git://github.com/PolymerElements/paper-drawer-panel.git", "_source": "git://github.com/PolymerElements/paper-drawer-panel.git",
"_target": "~1.0.2", "_target": "~1.0.2",

View file

@ -1,6 +1,6 @@
{ {
"name": "paper-drawer-panel", "name": "paper-drawer-panel",
"version": "1.0.3", "version": "1.0.4",
"description": "A responsive drawer panel", "description": "A responsive drawer panel",
"authors": [ "authors": [
"The Polymer Authors" "The Polymer Authors"
@ -19,15 +19,18 @@
"license": "http://polymer.github.io/LICENSE.txt", "license": "http://polymer.github.io/LICENSE.txt",
"homepage": "https://github.com/PolymerElements/paper-drawer-panel", "homepage": "https://github.com/PolymerElements/paper-drawer-panel",
"dependencies": { "dependencies": {
"polymer": "Polymer/polymer#^1.0.0", "iron-media-query": "PolymerElements/iron-media-query#^1.0.0",
"iron-resizable-behavior": "PolymerElements/iron-resizable-behavior#^1.0.0",
"iron-selector": "PolymerElements/iron-selector#^1.0.0", "iron-selector": "PolymerElements/iron-selector#^1.0.0",
"iron-media-query": "PolymerElements/iron-media-query#^1.0.0" "polymer": "Polymer/polymer#^1.1.0"
}, },
"devDependencies": { "devDependencies": {
"iron-component-page": "PolymerElements/iron-component-page#^1.0.0", "iron-component-page": "PolymerElements/iron-component-page#^1.0.0",
"paper-button": "PolymerElements/paper-button#^1.0.0", "paper-button": "PolymerElements/paper-button#^1.0.0",
"paper-styles": "PolymerElements/paper-styles#^1.0.0", "paper-styles": "PolymerElements/paper-styles#^1.0.0",
"test-fixture": "PolymerElements/test-fixture#^1.0.0",
"web-component-tester": "*", "web-component-tester": "*",
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0" "webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
} },
"main": "paper-drawer-panel.html"
} }

View file

@ -1,152 +0,0 @@
/**
@license
Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
*/
:host {
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden;
}
iron-selector > #drawer {
position: absolute;
top: 0;
left: 0;
height: 100%;
background-color: white;
-moz-box-sizing: border-box;
box-sizing: border-box;
@apply(--paper-drawer-panel-drawer-container);
}
.transition > #drawer {
transition: -webkit-transform ease-in-out 0.3s, width ease-in-out 0.3s, visibility 0.3s;
transition: transform ease-in-out 0.3s, width ease-in-out 0.3s, visibility 0.3s;
}
.left-drawer > #drawer {
@apply(--paper-drawer-panel-left-drawer-container);
}
.right-drawer > #drawer {
left: auto;
right: 0;
@apply(--paper-drawer-panel-right-drawer-container);
}
iron-selector > #main {
position: absolute;
top: 0;
right: 0;
bottom: 0;
@apply(--paper-drawer-panel-main-container);
}
.transition > #main {
transition: left ease-in-out 0.3s, padding ease-in-out 0.3s;
}
.right-drawer > #main {
left: 0;
}
.right-drawer.transition > #main {
transition: right ease-in-out 0.3s, padding ease-in-out 0.3s;
}
#main > ::content > [main] {
height: 100%;
}
#drawer > ::content > [drawer] {
height: 100%;
}
#scrim {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
visibility: hidden;
opacity: 0;
transition: opacity ease-in-out 0.38s, visibility ease-in-out 0.38s;
background-color: rgba(0, 0, 0, 0.3);
}
.narrow-layout > #drawer {
will-change: transform;
}
.narrow-layout > #drawer.iron-selected {
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.15);
}
.right-drawer.narrow-layout > #drawer.iron-selected {
box-shadow: -2px 2px 4px rgba(0, 0, 0, 0.15);
}
.narrow-layout > #drawer > ::content > [drawer] {
border: 0;
}
.left-drawer.narrow-layout > #drawer:not(.iron-selected) {
-webkit-transform: translateX(-100%);
transform: translateX(-100%);
}
.right-drawer.narrow-layout > #drawer:not(.iron-selected) {
left: auto;
visibility: hidden;
-webkit-transform: translateX(100%);
transform: translateX(100%);
}
.right-drawer.narrow-layout.dragging > #drawer:not(.iron-selected),
.right-drawer.narrow-layout.peeking > #drawer:not(.iron-selected) {
visibility: visible;
}
.narrow-layout > #main {
padding: 0;
}
.right-drawer.narrow-layout > #main {
left: 0;
right: 0;
}
.narrow-layout > #main:not(.iron-selected) > #scrim,
.dragging > #main > #scrim {
visibility: visible;
opacity: var(--paper-drawer-panel-scrim-opacity, 1);
}
.narrow-layout > #main > * {
margin: 0;
min-height: 100%;
left: 0;
right: 0;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
display: none;
}

View file

@ -10,8 +10,11 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
<link rel="import" href="../polymer/polymer.html"> <link rel="import" href="../polymer/polymer.html">
<link rel="import" href="../iron-media-query/iron-media-query.html"> <link rel="import" href="../iron-media-query/iron-media-query.html">
<link rel="import" href="../iron-selector/iron-selector.html"> <link rel="import" href="../iron-selector/iron-selector.html">
<link rel="import" href="../iron-resizable-behavior/iron-resizable-behavior.html">
<!-- <!--
Material design: [Navigation drawer](https://www.google.com/design/spec/patterns/navigation-drawer.html)
`paper-drawer-panel` contains a drawer panel and a main panel. The drawer `paper-drawer-panel` contains a drawer panel and a main panel. The drawer
and the main panel are side-by-side with drawer on the left. When the browser and the main panel are side-by-side with drawer on the left. When the browser
window size is smaller than the `responsiveWidth`, `paper-drawer-panel` window size is smaller than the `responsiveWidth`, `paper-drawer-panel`
@ -74,7 +77,7 @@ To position the drawer to the right, add `right-drawer` attribute.
<div main> Main panel... </div> <div main> Main panel... </div>
</paper-drawer-panel> </paper-drawer-panel>
Styling `paper-drawer-panel` ### Styling
To change the main container: To change the main container:
@ -100,6 +103,25 @@ To change the drawer container when it's in the right side:
}; };
} }
To customize the scrim:
paper-drawer-panel {
--paper-drawer-panel-scrim: {
background-color: red;
};
}
The following custom properties and mixins are available for styling:
Custom property | Description | Default
----------------|-------------|----------
`--paper-drawer-panel-scrim-opacity` | Scrim opacity | 1
`--paper-drawer-panel-drawer-container` | Mixin applied to drawer container | {}
`--paper-drawer-panel-left-drawer-container` | Mixin applied to container when it's in the left side | {}
`--paper-drawer-panel-main-container` | Mixin applied to main container | {}
`--paper-drawer-panel-right-drawer-container` | Mixin applied to container when it's in the right side | {}
`--paper-drawer-panel-scrim` | Mixin applied to scrim | {}
@group Paper elements @group Paper elements
@element paper-drawer-panel @element paper-drawer-panel
@demo demo/index.html @demo demo/index.html
@ -107,9 +129,154 @@ To change the drawer container when it's in the right side:
--> -->
<dom-module id="paper-drawer-panel"> <dom-module id="paper-drawer-panel">
<link rel="import" type="css" href="paper-drawer-panel.css">
<template> <template>
<style>
:host {
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden;
}
iron-selector > #drawer {
position: absolute;
top: 0;
left: 0;
height: 100%;
background-color: white;
-moz-box-sizing: border-box;
box-sizing: border-box;
@apply(--paper-drawer-panel-drawer-container);
}
.transition > #drawer {
transition: -webkit-transform ease-in-out 0.3s, width ease-in-out 0.3s, visibility 0.3s;
transition: transform ease-in-out 0.3s, width ease-in-out 0.3s, visibility 0.3s;
}
.left-drawer > #drawer {
@apply(--paper-drawer-panel-left-drawer-container);
}
.right-drawer > #drawer {
left: auto;
right: 0;
@apply(--paper-drawer-panel-right-drawer-container);
}
iron-selector > #main {
position: absolute;
top: 0;
right: 0;
bottom: 0;
@apply(--paper-drawer-panel-main-container);
}
.transition > #main {
transition: left ease-in-out 0.3s, padding ease-in-out 0.3s;
}
.right-drawer > #main {
left: 0;
}
.right-drawer.transition > #main {
transition: right ease-in-out 0.3s, padding ease-in-out 0.3s;
}
#main > ::content > [main] {
height: 100%;
}
#drawer > ::content > [drawer] {
height: 100%;
}
#scrim {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
visibility: hidden;
opacity: 0;
transition: opacity ease-in-out 0.38s, visibility ease-in-out 0.38s;
background-color: rgba(0, 0, 0, 0.3);
@apply(--paper-drawer-panel-scrim);
}
.narrow-layout > #drawer {
will-change: transform;
}
.narrow-layout > #drawer.iron-selected {
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.15);
}
.right-drawer.narrow-layout > #drawer.iron-selected {
box-shadow: -2px 2px 4px rgba(0, 0, 0, 0.15);
}
.narrow-layout > #drawer > ::content > [drawer] {
border: 0;
}
.left-drawer.narrow-layout > #drawer:not(.iron-selected) {
-webkit-transform: translateX(-100%);
transform: translateX(-100%);
}
.right-drawer.narrow-layout > #drawer:not(.iron-selected) {
left: auto;
visibility: hidden;
-webkit-transform: translateX(100%);
transform: translateX(100%);
}
.right-drawer.narrow-layout.dragging > #drawer:not(.iron-selected),
.right-drawer.narrow-layout.peeking > #drawer:not(.iron-selected) {
visibility: visible;
}
.narrow-layout > #main {
padding: 0;
}
.right-drawer.narrow-layout > #main {
left: 0;
right: 0;
}
.narrow-layout > #main:not(.iron-selected) > #scrim,
.dragging > #main > #scrim {
visibility: visible;
opacity: var(--paper-drawer-panel-scrim-opacity, 1);
}
.narrow-layout > #main > * {
margin: 0;
min-height: 100%;
left: 0;
right: 0;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
display: none;
}
</style>
<iron-media-query <iron-media-query
id="mq" id="mq"
on-query-matches-changed="_onQueryMatchesChanged" on-query-matches-changed="_onQueryMatchesChanged"
@ -122,7 +289,7 @@ To change the drawer container when it's in the right side:
activate-event="" activate-event=""
selected="[[selected]]"> selected="[[selected]]">
<div id="main" style$="[[_computeMainStyle(narrow, rightDrawer, drawerWidth)]]"> <div id="main" style$="[[_computeMainStyle(narrow, rightDrawer, drawerWidth)]]" on-transitionend="_onMainTransitionEnd">
<content select="[main]"></content> <content select="[main]"></content>
<div id="scrim" on-tap="closeDrawer"></div> <div id="scrim" on-tap="closeDrawer"></div>
</div> </div>
@ -134,12 +301,8 @@ To change the drawer container when it's in the right side:
</iron-selector> </iron-selector>
</template> </template>
</dom-module> <script>
<script>
(function() { (function() {
'use strict'; 'use strict';
// this would be the only `paper-drawer-panel` in // this would be the only `paper-drawer-panel` in
@ -161,6 +324,8 @@ To change the drawer container when it's in the right side:
is: 'paper-drawer-panel', is: 'paper-drawer-panel',
behaviors: [Polymer.IronResizableBehavior],
/** /**
* Fired when the narrow layout changes. * Fired when the narrow layout changes.
* *
@ -199,7 +364,7 @@ To change the drawer container when it's in the right side:
}, },
/** /**
* If true, swipe from the edge is disable. * If true, swipe from the edge is disabled.
*/ */
disableEdgeSwipe: { disableEdgeSwipe: {
type: Boolean, type: Boolean,
@ -296,7 +461,7 @@ To change the drawer container when it's in the right side:
*/ */
responsiveWidth: { responsiveWidth: {
type: String, type: String,
value: '640px' value: '600px'
}, },
/** /**
@ -368,7 +533,6 @@ To change the drawer container when it's in the right side:
*/ */
openDrawer: function() { openDrawer: function() {
this.selected = 'drawer'; this.selected = 'drawer';
this.fire('paper-drawer-panel-open');
}, },
/** /**
@ -378,7 +542,6 @@ To change the drawer container when it's in the right side:
*/ */
closeDrawer: function() { closeDrawer: function() {
this.selected = 'main'; this.selected = 'main';
this.fire('paper-drawer-panel-close');
}, },
ready: function() { ready: function() {
@ -387,6 +550,12 @@ To change the drawer container when it's in the right side:
this.transition = true; this.transition = true;
}, },
_onMainTransitionEnd: function (e) {
if (e.currentTarget === this.$.main && (e.propertyName === 'left' || e.propertyName === 'right')) {
this.notifyResize();
}
},
_computeIronSelectorClass: function(narrow, transition, dragging, rightDrawer, peeking) { _computeIronSelectorClass: function(narrow, transition, dragging, rightDrawer, peeking) {
return classNames({ return classNames({
dragging: dragging, dragging: dragging,
@ -562,7 +731,6 @@ To change the drawer container when it's in the right side:
// Ignore trackx until we move past the edge peek. // Ignore trackx until we move past the edge peek.
return; return;
} }
this._moveDrawer(this._translateXForDeltaX(dx)); this._moveDrawer(this._translateXForDeltaX(dx));
} }
}, },
@ -601,7 +769,6 @@ To change the drawer container when it's in the right side:
} }
}); });
}()); }());
</script>
</script> </dom-module>

View file

@ -0,0 +1,26 @@
<!doctype html>
<!--
@license
Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
<title>paper-drawer-panel tests</title>
<script src="../../web-component-tester/browser.js"></script>
</head>
<body>
<script>
WCT.loadSuites([
'positioning.html',
'small-devices.html'
]);
</script>
</body>
</html>

View file

@ -0,0 +1,96 @@
<!doctype html>
<!--
@license
Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
<html>
<head>
<meta charset="UTF-8">
<title>paper-drawer-panel tests</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<script src="../../webcomponentsjs/webcomponents-lite.js"></script>
<script src="../../web-component-tester/browser.js"></script>
<script src="../../test-fixture/test-fixture-mocha.js"></script>
<link rel="import" href="../../test-fixture/test-fixture.html">
<link rel="import" href="../paper-drawer-panel.html">
</head>
<style>
body {
margin: 0;
padding: 0;
}
</style>
<body>
<test-fixture id="left-drawer">
<template>
<paper-drawer-panel>
<div drawer></div>
<div main></div>
</paper-drawer-panel>
</template>
</test-fixture>
<test-fixture id="right-drawer">
<template>
<paper-drawer-panel right-drawer>
<div drawer></div>
<div main></div>
</paper-drawer-panel>
</template>
</test-fixture>
<script>
suite('positioning', function() {
test('drawer is positioned correctly', function(done) {
var f, drawer, main;
f = fixture('left-drawer');
drawer = f.querySelector('#drawer');
main = f.querySelector('#main');
Polymer.Base.async(function() {
var drawerStyle = window.getComputedStyle(drawer);
expect(drawerStyle.left).to.be.equal('0px');
try {
expect(drawerStyle.right).to.be.equal('auto');
} catch(e) {
// Firefox
expect(drawerStyle.right).to.be.equal(f.offsetWidth - drawer.offsetWidth + 'px');
}
done();
});
});
test('right-drawer is positioned correctly', function(done) {
var f, drawer, main;
f = fixture('right-drawer');
drawer = f.querySelector('#drawer');
main = f.querySelector('#main');
Polymer.Base.async(function() {
var drawerStyle = window.getComputedStyle(drawer);
expect(drawerStyle.right).to.be.equal('0px');
try {
expect(drawerStyle.left).to.be.equal('auto');
} catch(e) {
// Firefox
expect(drawerStyle.left).to.be.equal(f.offsetWidth - drawer.offsetWidth + 'px');
}
done();
});
});
});
</script>
</body>
</html>

View file

@ -0,0 +1,141 @@
<!doctype html>
<!--
@license
Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
<html>
<head>
<meta charset="UTF-8">
<title>paper-drawer-panel tests</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<script src="../../webcomponentsjs/webcomponents-lite.js"></script>
<script src="../../web-component-tester/browser.js"></script>
<script src="../../test-fixture/test-fixture-mocha.js"></script>
<link rel="import" href="../../test-fixture/test-fixture.html">
<link rel="import" href="../paper-drawer-panel.html">
</head>
<style>
body {
margin: 0;
padding: 0;
}
.notransition,
.notransition * {
-webkit-transition: none !important;
-moz-transition: none !important;
-o-transition: none !important;
-ms-transition: none !important;
transition: none !important;
}
</style>
<body>
<test-fixture id="left-drawer">
<template>
<paper-drawer-panel class="notransition">
<div drawer></div>
<div main></div>
</paper-drawer-panel>
</template>
</test-fixture>
<test-fixture id="right-drawer">
<template>
<paper-drawer-panel right-drawer class="notransition">
<div drawer></div>
<div main></div>
</paper-drawer-panel>
</template>
</test-fixture>
<script>
suite('on small devices', function() {
test('drawer is hidden by default', function(done) {
var f, panel, drawer, main;
f = fixture('left-drawer');
drawer = f.querySelector('#drawer');
main = f.querySelector('#main');
f.set('forceNarrow', true);
f._forceNarrowChanged();
Polymer.Base.async(function() {
var drawerBoundingRect = drawer.getBoundingClientRect();
var mainStyle = window.getComputedStyle(main);
expect(f._isMainSelected()).to.be.equal(true);
expect(drawerBoundingRect.left).to.be.equal(-256);
expect(drawerBoundingRect.width).to.be.equal(256);
done();
});
});
test('right-drawer is hidden by default', function(done) {
var f, panel, drawer, main;
f = fixture('right-drawer');
drawer = f.querySelector('#drawer');
main = f.querySelector('#main');
f.set('forceNarrow', true);
f._forceNarrowChanged();
Polymer.Base.async(function() {
var drawerBoundingRect = drawer.getBoundingClientRect();
var mainStyle = window.getComputedStyle(main);
expect(drawerBoundingRect.right).to.be.equal(f.offsetWidth + 256);
expect(drawerBoundingRect.width).to.be.equal(256);
done();
});
});
test('drawer is can be opened', function(done) {
var f, panel, drawer, main;
f = fixture('left-drawer');
drawer = f.querySelector('#drawer');
main = f.querySelector('#main');
f.set('forceNarrow', true);
f._forceNarrowChanged();
f.openDrawer();
Polymer.Base.async(function() {
var drawerBoundingRect = drawer.getBoundingClientRect();
var mainStyle = window.getComputedStyle(main);
expect(f.selected).to.be.equal('drawer');
expect(f._isMainSelected()).to.be.equal(false);
expect(drawerBoundingRect.left).to.be.equal(0);
expect(drawerBoundingRect.width).to.be.equal(256);
done();
});
});
test('right-drawer can be closed', function(done) {
var f, panel, drawer, main;
f = fixture('right-drawer');
drawer = f.querySelector('#drawer');
main = f.querySelector('#main');
f.set('forceNarrow', true);
f._forceNarrowChanged();
f.openDrawer();
Polymer.Base.async(function() {
var drawerBoundingRect = drawer.getBoundingClientRect();
var mainStyle = window.getComputedStyle(main);
expect(drawerBoundingRect.right).to.be.equal(f.offsetWidth);
expect(drawerBoundingRect.width).to.be.equal(256);
done();
});
});
});
</script>
</body>
</html>

View file

@ -1,6 +1,6 @@
{ {
"name": "paper-tabs", "name": "paper-tabs",
"version": "1.0.4", "version": "1.0.5",
"license": "http://polymer.github.io/LICENSE.txt", "license": "http://polymer.github.io/LICENSE.txt",
"description": "Material design tabs", "description": "Material design tabs",
"private": true, "private": true,
@ -39,11 +39,11 @@
"web-component-tester": "*" "web-component-tester": "*"
}, },
"homepage": "https://github.com/PolymerElements/paper-tabs", "homepage": "https://github.com/PolymerElements/paper-tabs",
"_release": "1.0.4", "_release": "1.0.5",
"_resolution": { "_resolution": {
"type": "version", "type": "version",
"tag": "v1.0.4", "tag": "v1.0.5",
"commit": "b07b594cc08e7c97cda7e9b30b0bdd6c8969226c" "commit": "5c47302763d9cbb5fbbbf777a49b3ccc5f5a16bf"
}, },
"_source": "git://github.com/PolymerElements/paper-tabs.git", "_source": "git://github.com/PolymerElements/paper-tabs.git",
"_target": "~1.0.0", "_target": "~1.0.0",

View file

@ -0,0 +1,72 @@
<!--
This file is autogenerated based on
https://github.com/PolymerElements/ContributionGuide/blob/master/CONTRIBUTING.md
If you edit that file, it will get updated everywhere else.
If you edit this file, your changes will get overridden :)
-->
# Polymer Elements
## Guide for Contributors
Polymer Elements are built in the open, and the Polymer authors eagerly encourage any and all forms of community contribution. When contributing, please follow these guidelines:
### Filing Issues
**If you are filing an issue to request a feature**, please provide a clear description of the feature. It can be helpful to describe answers to the following questions:
1. **Who will use the feature?** _“As someone filling out a form…”_
2. **When will they use the feature?** _“When I enter an invalid value…”_
3. **What is the users goal?** _“I want to be visually notified that the value needs to be corrected…”_
**If you are filing an issue to report a bug**, please provide:
1. **A clear description of the bug and related expectations.** Consider using the following example template for reporting a bug:
```markdown
The `paper-foo` element causes the page to turn pink when clicked.
## Expected outcome
The page stays the same color.
## Actual outcome
The page turns pink.
## Steps to reproduce
1. Put a `paper-foo` element in the page.
2. Open the page in a web browser.
3. Click the `paper-foo` element.
```
2. **A reduced test case that demonstrates the problem.** If possible, please include the test case as a JSBin. Start with this template to easily import and use relevant Polymer Elements: [http://jsbin.com/cagaye](http://jsbin.com/cagaye/edit?html,output).
3. **A list of browsers where the problem occurs.** This can be skipped if the problem is the same across all browsers.
### Submitting Pull Requests
**Before creating a pull request**, please ensure that an issue exists for the corresponding change in the pull request that you intend to make. **If an issue does not exist, please create one per the guidelines above**. The goal is to discuss the design and necessity of the proposed change with Polymer authors and community before diving into a pull request.
When submitting pull requests, please provide:
1. **A reference to the corresponding issue** or issues that will be closed by the pull request. Please refer to these issues using the following syntax:
```markdown
(For a single issue)
Fixes #20
(For multiple issues)
Fixes #32, #40
```
2. **A succinct description of the design** used to fix any related issues. For example:
```markdown
This fixes #20 by removing styles that leaked which would cause the page to turn pink whenever `paper-foo` is clicked.
```
3. **At least one test for each bug fixed or feature added** as part of the pull request. Pull requests that fix bugs or add features without accompanying tests will not be considered.
If a proposed change contains multiple commits, please [squash commits](https://www.google.com/url?q=http://blog.steveklabnik.com/posts/2012-11-08-how-to-squash-commits-in-a-github-pull-request) to as few as is necessary to succinctly express the change. A Polymer author can help you squash commits, so dont be afraid to ask us if you need help with that!

View file

@ -1,6 +1,6 @@
{ {
"name": "paper-tabs", "name": "paper-tabs",
"version": "1.0.4", "version": "1.0.5",
"license": "http://polymer.github.io/LICENSE.txt", "license": "http://polymer.github.io/LICENSE.txt",
"description": "Material design tabs", "description": "Material design tabs",
"private": true, "private": true,

View file

@ -131,8 +131,10 @@ Custom property | Description | Default
} }
paper-icon-button { paper-icon-button {
width: 24px; width: 48px;
padding: 16px; height: 48px;
padding: 12px;
margin: 0 4px;
} }
#selectionBar { #selectionBar {

View file

@ -77,27 +77,38 @@
amt: price amt: price
}; };
var promise;
if (enteredEmail) { if (enteredEmail) {
postData.email = enteredEmail; postData.email = enteredEmail;
postData.storeId = enteredEmail; postData.storeId = enteredEmail;
postData.feature = "MBSClubMonthly"; postData.feature = "MBSClubMonthly";
}
ApiClient.ajax({
promise = ApiClient.ajax({
type: "POST", type: "POST",
url: ApiClient.getUrl("Appstore/Register"), url: ApiClient.getUrl("Appstore/Register"),
data: { data: {
Parameters: JSON.stringify(postData) Parameters: JSON.stringify(postData)
} }
}).done(function () { });
} else {
promise = ApiClient.ajax({
type: "POST",
url: "http://mb3admin.com/admin/service/appstore/register",
data: JSON.stringify(postData),
contentType: "application/json"
});
}
promise.done(function () {
callback(true, product); callback(true, product);
}).fail(function (e) { }).fail(function (e) {
if (e.status == 402) { if (e.status == 402) {
alert('validate fail - expired');
callback(false, { callback(false, {
code: store.PURCHASE_EXPIRED, code: store.PURCHASE_EXPIRED,
@ -105,6 +116,7 @@
message: "Subscription Expired" message: "Subscription Expired"
} }
}); });
} else { } else {
alert('validate fail - other'); alert('validate fail - other');
@ -155,7 +167,7 @@
if (requiresVerification) { if (requiresVerification) {
//product.verify(); //product.verify();
if (product.owned) { if (product.owned) {
alert('sub owned!'); //alert('sub owned!');
} }
} else { } else {
product.finish(); product.finish();

View file

@ -1220,6 +1220,8 @@ span.itemCommunityRating:not(:empty) + .userDataIcons {
background: #43A047; background: #43A047;
z-index: 1000; z-index: 1000;
padding: 0 .75em 0 .25em; padding: 0 .75em 0 .25em;
display: flex;
align-items: center;
} }
.selectionCommandsPanel paper-icon-button { .selectionCommandsPanel paper-icon-button {
@ -1235,11 +1237,6 @@ span.itemCommunityRating:not(:empty) + .userDataIcons {
padding-top: 1px; padding-top: 1px;
} }
.selectionCommandsPanel paper-icon-button {
height: 32px;
width: 32px;
}
@media all and (min-height: 480px) { @media all and (min-height: 480px) {
.alphabetPicker { .alphabetPicker {

View file

@ -1139,7 +1139,7 @@
html += '<span class="itemSelectionCount"></span>'; html += '<span class="itemSelectionCount"></span>';
html += '</div>'; html += '</div>';
html += '<paper-icon-button class="btnSelectionPanelOptions" icon="more-vert" style="float:right;"></paper-icon-button>'; html += '<paper-icon-button class="btnSelectionPanelOptions" icon="more-vert" style="margin-left:auto;"></paper-icon-button>';
selectionCommandsPanel.innerHTML = html; selectionCommandsPanel.innerHTML = html;

View file

@ -223,15 +223,20 @@
document.querySelector('.mainDrawerPanel #drawer').classList.add('verticalScrollingDrawer'); document.querySelector('.mainDrawerPanel #drawer').classList.add('verticalScrollingDrawer');
} }
function onMainDrawerClosed() {
document.body.classList.remove('bodyWithPopupOpen');
document.querySelector('.mainDrawerPanel #drawer').classList.remove('verticalScrollingDrawer');
}
function closeMainDrawer() { function closeMainDrawer() {
document.querySelector('.mainDrawerPanel').closeDrawer(); document.querySelector('.mainDrawerPanel').closeDrawer();
} }
function onMainDrawerSelect() {
if (this.selected == 'main') {
document.body.classList.remove('bodyWithPopupOpen');
document.querySelector('.mainDrawerPanel #drawer').classList.remove('verticalScrollingDrawer');
} else {
onMainDrawerOpened();
}
}
function ensureDrawerStructure(drawer) { function ensureDrawerStructure(drawer) {
@ -994,8 +999,7 @@
}); });
var mainDrawerPanel = document.querySelector('.mainDrawerPanel'); var mainDrawerPanel = document.querySelector('.mainDrawerPanel');
Events.on(mainDrawerPanel, 'paper-drawer-panel-open', onMainDrawerOpened); Events.on(mainDrawerPanel, 'iron-select', onMainDrawerSelect);
Events.on(mainDrawerPanel, 'paper-drawer-panel-close', onMainDrawerClosed);
}); });
})(window, document, jQuery, window.devicePixelRatio); })(window, document, jQuery, window.devicePixelRatio);

View file

@ -16214,18 +16214,9 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
</script> </script>
</dom-module> </dom-module>
<dom-module id="paper-drawer-panel" assetpath="bower_components/paper-drawer-panel/"> <dom-module id="paper-drawer-panel" assetpath="bower_components/paper-drawer-panel/">
<template>
<style> <style>
/** :host {
@license
Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
*/
:host {
display: block; display: block;
position: absolute; position: absolute;
top: 0; top: 0;
@ -16233,9 +16224,9 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
width: 100%; width: 100%;
height: 100%; height: 100%;
overflow: hidden; overflow: hidden;
} }
iron-selector > #drawer { iron-selector > #drawer {
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
@ -16246,54 +16237,54 @@ iron-selector > #drawer {
box-sizing: border-box; box-sizing: border-box;
@apply(--paper-drawer-panel-drawer-container); @apply(--paper-drawer-panel-drawer-container);
} }
.transition > #drawer { .transition > #drawer {
transition: -webkit-transform ease-in-out 0.3s, width ease-in-out 0.3s, visibility 0.3s; transition: -webkit-transform ease-in-out 0.3s, width ease-in-out 0.3s, visibility 0.3s;
transition: transform ease-in-out 0.3s, width ease-in-out 0.3s, visibility 0.3s; transition: transform ease-in-out 0.3s, width ease-in-out 0.3s, visibility 0.3s;
} }
.left-drawer > #drawer { .left-drawer > #drawer {
@apply(--paper-drawer-panel-left-drawer-container); @apply(--paper-drawer-panel-left-drawer-container);
} }
.right-drawer > #drawer { .right-drawer > #drawer {
left: auto; left: auto;
right: 0; right: 0;
@apply(--paper-drawer-panel-right-drawer-container); @apply(--paper-drawer-panel-right-drawer-container);
} }
iron-selector > #main { iron-selector > #main {
position: absolute; position: absolute;
top: 0; top: 0;
right: 0; right: 0;
bottom: 0; bottom: 0;
@apply(--paper-drawer-panel-main-container); @apply(--paper-drawer-panel-main-container);
} }
.transition > #main { .transition > #main {
transition: left ease-in-out 0.3s, padding ease-in-out 0.3s; transition: left ease-in-out 0.3s, padding ease-in-out 0.3s;
} }
.right-drawer > #main { .right-drawer > #main {
left: 0; left: 0;
} }
.right-drawer.transition > #main { .right-drawer.transition > #main {
transition: right ease-in-out 0.3s, padding ease-in-out 0.3s; transition: right ease-in-out 0.3s, padding ease-in-out 0.3s;
} }
#main > ::content > [main] { #main > ::content > [main] {
height: 100%; height: 100%;
} }
#drawer > ::content > [drawer] { #drawer > ::content > [drawer] {
height: 100%; height: 100%;
} }
#scrim { #scrim {
position: absolute; position: absolute;
top: 0; top: 0;
right: 0; right: 0;
@ -16303,58 +16294,60 @@ iron-selector > #main {
opacity: 0; opacity: 0;
transition: opacity ease-in-out 0.38s, visibility ease-in-out 0.38s; transition: opacity ease-in-out 0.38s, visibility ease-in-out 0.38s;
background-color: rgba(0, 0, 0, 0.3); background-color: rgba(0, 0, 0, 0.3);
}
.narrow-layout > #drawer { @apply(--paper-drawer-panel-scrim);
}
.narrow-layout > #drawer {
will-change: transform; will-change: transform;
} }
.narrow-layout > #drawer.iron-selected { .narrow-layout > #drawer.iron-selected {
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.15); box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.15);
} }
.right-drawer.narrow-layout > #drawer.iron-selected { .right-drawer.narrow-layout > #drawer.iron-selected {
box-shadow: -2px 2px 4px rgba(0, 0, 0, 0.15); box-shadow: -2px 2px 4px rgba(0, 0, 0, 0.15);
} }
.narrow-layout > #drawer > ::content > [drawer] { .narrow-layout > #drawer > ::content > [drawer] {
border: 0; border: 0;
} }
.left-drawer.narrow-layout > #drawer:not(.iron-selected) { .left-drawer.narrow-layout > #drawer:not(.iron-selected) {
-webkit-transform: translateX(-100%); -webkit-transform: translateX(-100%);
transform: translateX(-100%); transform: translateX(-100%);
} }
.right-drawer.narrow-layout > #drawer:not(.iron-selected) { .right-drawer.narrow-layout > #drawer:not(.iron-selected) {
left: auto; left: auto;
visibility: hidden; visibility: hidden;
-webkit-transform: translateX(100%); -webkit-transform: translateX(100%);
transform: translateX(100%); transform: translateX(100%);
} }
.right-drawer.narrow-layout.dragging > #drawer:not(.iron-selected), .right-drawer.narrow-layout.dragging > #drawer:not(.iron-selected),
.right-drawer.narrow-layout.peeking > #drawer:not(.iron-selected) { .right-drawer.narrow-layout.peeking > #drawer:not(.iron-selected) {
visibility: visible; visibility: visible;
} }
.narrow-layout > #main { .narrow-layout > #main {
padding: 0; padding: 0;
} }
.right-drawer.narrow-layout > #main { .right-drawer.narrow-layout > #main {
left: 0; left: 0;
right: 0; right: 0;
} }
.narrow-layout > #main:not(.iron-selected) > #scrim, .narrow-layout > #main:not(.iron-selected) > #scrim,
.dragging > #main > #scrim { .dragging > #main > #scrim {
visibility: visible; visibility: visible;
opacity: var(--paper-drawer-panel-scrim-opacity, 1); opacity: var(--paper-drawer-panel-scrim-opacity, 1);
} }
.narrow-layout > #main > * { .narrow-layout > #main > * {
margin: 0; margin: 0;
min-height: 100%; min-height: 100%;
left: 0; left: 0;
@ -16362,20 +16355,19 @@ iron-selector > #main {
-moz-box-sizing: border-box; -moz-box-sizing: border-box;
box-sizing: border-box; box-sizing: border-box;
} }
iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
display: none; display: none;
} }
</style> </style>
<template>
<iron-media-query id="mq" on-query-matches-changed="_onQueryMatchesChanged" query="[[_computeMediaQuery(forceNarrow, responsiveWidth)]]"> <iron-media-query id="mq" on-query-matches-changed="_onQueryMatchesChanged" query="[[_computeMediaQuery(forceNarrow, responsiveWidth)]]">
</iron-media-query> </iron-media-query>
<iron-selector attr-for-selected="id" class$="[[_computeIronSelectorClass(narrow, transition, dragging, rightDrawer, peeking)]]" activate-event="" selected="[[selected]]"> <iron-selector attr-for-selected="id" class$="[[_computeIronSelectorClass(narrow, transition, dragging, rightDrawer, peeking)]]" activate-event="" selected="[[selected]]">
<div id="main" style$="[[_computeMainStyle(narrow, rightDrawer, drawerWidth)]]"> <div id="main" style$="[[_computeMainStyle(narrow, rightDrawer, drawerWidth)]]" on-transitionend="_onMainTransitionEnd">
<content select="[main]"></content> <content select="[main]"></content>
<div id="scrim" on-tap="closeDrawer"></div> <div id="scrim" on-tap="closeDrawer"></div>
</div> </div>
@ -16387,12 +16379,8 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
</iron-selector> </iron-selector>
</template> </template>
</dom-module> <script>
<script>
(function() { (function() {
'use strict'; 'use strict';
// this would be the only `paper-drawer-panel` in // this would be the only `paper-drawer-panel` in
@ -16414,6 +16402,8 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
is: 'paper-drawer-panel', is: 'paper-drawer-panel',
behaviors: [Polymer.IronResizableBehavior],
/** /**
* Fired when the narrow layout changes. * Fired when the narrow layout changes.
* *
@ -16452,7 +16442,7 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
}, },
/** /**
* If true, swipe from the edge is disable. * If true, swipe from the edge is disabled.
*/ */
disableEdgeSwipe: { disableEdgeSwipe: {
type: Boolean, type: Boolean,
@ -16549,7 +16539,7 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
*/ */
responsiveWidth: { responsiveWidth: {
type: String, type: String,
value: '640px' value: '600px'
}, },
/** /**
@ -16621,7 +16611,6 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
*/ */
openDrawer: function() { openDrawer: function() {
this.selected = 'drawer'; this.selected = 'drawer';
this.fire('paper-drawer-panel-open');
}, },
/** /**
@ -16631,7 +16620,6 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
*/ */
closeDrawer: function() { closeDrawer: function() {
this.selected = 'main'; this.selected = 'main';
this.fire('paper-drawer-panel-close');
}, },
ready: function() { ready: function() {
@ -16640,6 +16628,12 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
this.transition = true; this.transition = true;
}, },
_onMainTransitionEnd: function (e) {
if (e.currentTarget === this.$.main && (e.propertyName === 'left' || e.propertyName === 'right')) {
this.notifyResize();
}
},
_computeIronSelectorClass: function(narrow, transition, dragging, rightDrawer, peeking) { _computeIronSelectorClass: function(narrow, transition, dragging, rightDrawer, peeking) {
return classNames({ return classNames({
dragging: dragging, dragging: dragging,
@ -16815,7 +16809,6 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
// Ignore trackx until we move past the edge peek. // Ignore trackx until we move past the edge peek.
return; return;
} }
this._moveDrawer(this._translateXForDeltaX(dx)); this._moveDrawer(this._translateXForDeltaX(dx));
} }
}, },
@ -16854,10 +16847,9 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
} }
}); });
}()); }());
</script>
</script> </dom-module>
<iron-iconset-svg name="paper-tabs" size="24"> <iron-iconset-svg name="paper-tabs" size="24">
<svg><defs> <svg><defs>
<g id="chevron-left"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"></path></g> <g id="chevron-left"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"></path></g>
@ -17034,8 +17026,10 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
} }
paper-icon-button { paper-icon-button {
width: 24px; width: 48px;
padding: 16px; height: 48px;
padding: 12px;
margin: 0 4px;
} }
#selectionBar { #selectionBar {