paper-drawer-panel

WebJar for paper-drawer-panel

License

License

BSD 3-Clause
GroupId

GroupId

org.webjars.bowergithub.polymerelements
ArtifactId

ArtifactId

paper-drawer-panel
Last Version

Last Version

3.0.1
Release Date

Release Date

Type

Type

jar
Description

Description

paper-drawer-panel
WebJar for paper-drawer-panel
Project URL

Project URL

http://webjars.org
Source Code Management

Source Code Management

https://github.com/PolymerElements/paper-drawer-panel

Download paper-drawer-panel

How to add to project

<!-- https://jarcasting.com/artifacts/org.webjars.bowergithub.polymerelements/paper-drawer-panel/ -->
<dependency>
    <groupId>org.webjars.bowergithub.polymerelements</groupId>
    <artifactId>paper-drawer-panel</artifactId>
    <version>3.0.1</version>
</dependency>
// https://jarcasting.com/artifacts/org.webjars.bowergithub.polymerelements/paper-drawer-panel/
implementation 'org.webjars.bowergithub.polymerelements:paper-drawer-panel:3.0.1'
// https://jarcasting.com/artifacts/org.webjars.bowergithub.polymerelements/paper-drawer-panel/
implementation ("org.webjars.bowergithub.polymerelements:paper-drawer-panel:3.0.1")
'org.webjars.bowergithub.polymerelements:paper-drawer-panel:jar:3.0.1'
<dependency org="org.webjars.bowergithub.polymerelements" name="paper-drawer-panel" rev="3.0.1">
  <artifact name="paper-drawer-panel" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.webjars.bowergithub.polymerelements', module='paper-drawer-panel', version='3.0.1')
)
libraryDependencies += "org.webjars.bowergithub.polymerelements" % "paper-drawer-panel" % "3.0.1"
[org.webjars.bowergithub.polymerelements/paper-drawer-panel "3.0.1"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

There are no modules declared in this project.

Published on NPM Build status Published on webcomponents.org

<paper-drawer-panel>

This element has been deprecated in favor of app-layout.

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 window size is smaller than the responsiveWidth, paper-drawer-panel changes to narrow layout. In narrow layout, the drawer will be stacked on top of the main panel. The drawer will slide in/out to hide/reveal the main panel.

Use the attribute drawer to indicate that the element is the drawer panel and main to indicate that the element is the main panel.

Example:

<paper-drawer-panel>
  <div slot="drawer"> Drawer panel... </div>
  <div slot="main"> Main panel... </div>
</paper-drawer-panel>

The drawer and the main panels are not scrollable. You can set CSS overflow property on the elements to make them scrollable or use paper-header-panel.

Example:

<paper-drawer-panel>
  <paper-header-panel slot="drawer">
    <paper-toolbar></paper-toolbar>
    <div> Drawer content... </div>
  </paper-header-panel>
  <paper-header-panel slot="main">
    <paper-toolbar></paper-toolbar>
    <div> Main content... </div>
  </paper-header-panel>
</paper-drawer-panel>

To position the drawer to the right, add right-drawer attribute.

<paper-drawer-panel right-drawer>
  <div slot="drawer"> Drawer panel... </div>
  <div slot="main"> Main panel... </div>
</paper-drawer-panel>

Styling

To change the main container:

paper-drawer-panel {
  --paper-drawer-panel-main-container: {
    background-color: gray;
  };
}

To change the drawer container when it's in the left side:

paper-drawer-panel {
  --paper-drawer-panel-left-drawer-container: {
    background-color: white;
  };
}

To change the drawer container when it's in the right side:

paper-drawer-panel {
  --paper-drawer-panel-right-drawer-container: {
    background-color: white;
  };
}

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 {}

See: Documentation, Demo.

Usage

Installation

npm install --save @polymer/paper-drawer-panel

In an html file

<html>
  <head>
    <script type="module">
      import '@polymer/paper-drawer-panel/paper-drawer-panel.js';
    </script>
  </head>
  <body>
    <paper-drawer-panel>
      <div slot="drawer"> Drawer panel... </div>
      <div slot="main"> Main panel... </div>
    </paper-drawer-panel>
  </body>
</html>

In a Polymer 3 element

import {PolymerElement, html} from '@polymer/polymer';
import '@polymer/paper-drawer-panel/paper-drawer-panel.js';

class SampleElement extends PolymerElement {
  static get template() {
    return html`
      <paper-drawer-panel>
        <div slot="drawer"> Drawer panel... </div>
        <div slot="main"> Main panel... </div>
      </paper-drawer-panel>
    `;
  }
}
customElements.define('sample-element', SampleElement);

Contributing

If you want to send a PR to this element, here are the instructions for running the tests and demo locally:

Installation

git clone https://github.com/PolymerElements/paper-drawer-panel
cd paper-drawer-panel
npm install
npm install -g polymer-cli

Running the demo locally

polymer serve --npm
open http://127.0.0.1:<port>/demo/

Running the tests

polymer test --npm
org.webjars.bowergithub.polymerelements

Versions

Version
3.0.1