├── .drone.sec ├── .drone.yml ├── .editorconfig ├── .gitattributes ├── .github └── ISSUE_TEMPLATE.md ├── .gitignore ├── .jscsrc ├── .jshintrc ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── bower.json ├── docs ├── _assets │ ├── android-desktop.png │ ├── app-icon.png │ ├── button_degradation.png │ ├── codepen-logo.png │ ├── codepen.js │ ├── colors.svg │ ├── comp_badges.png │ ├── comp_buttons.png │ ├── comp_cards.png │ ├── comp_chips.png │ ├── comp_dialog.png │ ├── comp_layout.png │ ├── comp_lists.png │ ├── comp_loading.png │ ├── comp_menus.png │ ├── comp_sliders.png │ ├── comp_snackbar.png │ ├── comp_tables.png │ ├── comp_textfields.png │ ├── comp_toggles.png │ ├── comp_tooltips.png │ ├── compindex.png │ ├── compindex_2x.png │ ├── components.css │ ├── components.js │ ├── components.png │ ├── components.svg │ ├── components_2x.png │ ├── components_mo.svg │ ├── customize.png │ ├── customize.svg │ ├── customize_2x.png │ ├── customize_mo.svg │ ├── customizer.css │ ├── customizer.js │ ├── customizer.png │ ├── demos │ │ ├── dog.png │ │ ├── image_card.jpg │ │ ├── transparent.jpg │ │ └── welcome_card.jpg │ ├── faq │ │ └── subscribe-single-issue.png │ ├── favicon.png │ ├── github_white_24.svg │ ├── google-services.png │ ├── header.jpg │ ├── header_2x.jpg │ ├── icons.svg │ ├── ie.css │ ├── img-1.png │ ├── img-2.png │ ├── index.js │ ├── ios-desktop.png │ ├── logo.png │ ├── logo.svg │ ├── main.css │ ├── main.js │ ├── mo.svg │ ├── rich-media-gallery.png │ ├── shapes.svg │ ├── showcase │ │ ├── contributor.jpg │ │ ├── contributor_2x.jpg │ │ ├── developers.jpg │ │ ├── developers_2x.jpg │ │ ├── rework.jpg │ │ ├── rework_2x.jpg │ │ ├── sunroof.jpg │ │ ├── sunroof_2x.jpg │ │ ├── wallet.jpg │ │ ├── wallet_2x.jpg │ │ ├── work_partners.jpg │ │ └── work_partners_2x.jpg │ ├── sliders_degradation.png │ ├── snippets.js │ ├── styles.png │ ├── styles.svg │ ├── styles_2x.png │ ├── styles_mo.svg │ ├── table_degradation.png │ ├── template-preview.png │ ├── templates.png │ ├── templates.svg │ ├── templates │ │ ├── android-dot-com.jpg │ │ ├── android-dot-com_2x.jpg │ │ ├── article.jpg │ │ ├── article_2x.jpg │ │ ├── blog.jpg │ │ ├── blog_2x.jpg │ │ ├── dashboard.jpg │ │ ├── dashboard_2x.jpg │ │ ├── general.jpg │ │ ├── general_2x.jpg │ │ ├── portfolio.jpg │ │ ├── portfolio_2x.jpg │ │ ├── product.jpg │ │ ├── product_2x.jpg │ │ ├── text-only.jpg │ │ └── text-only_2x.jpg │ ├── templates_2x.png │ └── templates_mo.svg ├── _pages │ ├── components.md │ ├── customize.md │ ├── faq.md │ ├── index.md │ ├── showcase.md │ ├── started.md │ ├── styles.md │ └── templates.md └── _templates │ ├── component.html │ ├── components.html │ ├── customize.html │ ├── demo.html │ ├── layout.html │ ├── page.html │ ├── showcase.html │ ├── snippets.html │ ├── started.html │ ├── styles.html │ └── templates.html ├── gulpfile.babel.js ├── package.json ├── src ├── INTRODUCTION.md ├── _color-definitions.scss ├── _functions.scss ├── _mixins.scss ├── _variables.scss ├── animation │ ├── _animation.scss │ ├── demo.css │ ├── demo.html │ └── demo.js ├── badge │ ├── README.md │ ├── _badge.scss │ └── snippets │ │ ├── badge-on-icon-icon-demo.html │ │ ├── badge-on-icon-icon.html │ │ ├── badge-on-icon-text-demo.html │ │ ├── badge-on-icon-text.html │ │ ├── badge-on-text-icon-demo.html │ │ ├── badge-on-text-icon.html │ │ ├── badge-on-text-text-demo.html │ │ └── badge-on-text-text.html ├── button │ ├── README.md │ ├── _button.scss │ ├── button.js │ └── snippets │ │ ├── fab-colored-ripple.html │ │ ├── fab-colored.html │ │ ├── fab-disabled.html │ │ ├── fab-mini-colored.html │ │ ├── fab-mini.html │ │ ├── fab-ripple.html │ │ ├── fab.html │ │ ├── flat-accent.html │ │ ├── flat-disabled.html │ │ ├── flat-primary.html │ │ ├── flat-ripple.html │ │ ├── flat.html │ │ ├── icon-colored.html │ │ ├── icon.html │ │ ├── raised-accent.html │ │ ├── raised-colored.html │ │ ├── raised-disabled.html │ │ ├── raised-ripple-accent.html │ │ ├── raised-ripple.html │ │ └── raised.html ├── card │ ├── README.md │ ├── _card.scss │ └── snippets │ │ ├── event.html │ │ ├── image.html │ │ ├── square.html │ │ └── wide.html ├── checkbox │ ├── README.md │ ├── _checkbox.scss │ ├── checkbox.js │ └── snippets │ │ ├── check-off.html │ │ └── check-on.html ├── chip │ ├── README.md │ ├── _chip.scss │ └── snippets │ │ ├── basic.html │ │ ├── button.html │ │ ├── contact.html │ │ ├── deletable-contact.html │ │ └── deletable.html ├── data-table │ ├── README.md │ ├── _data-table.scss │ ├── data-table.js │ └── snippets │ │ └── data-table.html ├── demos.css ├── dialog │ ├── README.md │ └── _dialog.scss ├── expansion │ ├── README.md │ ├── _expansion.scss │ └── snippets │ │ └── expansion.html ├── footer │ ├── README.md │ ├── _mega_footer.scss │ ├── _mini_footer.scss │ └── snippets │ │ ├── mega-footer.html │ │ └── mini-footer.html ├── grid │ ├── README.md │ ├── _grid.scss │ └── snippets │ │ ├── codepen-grid.css │ │ ├── grid-demo.html │ │ └── grid.html ├── icon-toggle │ ├── README.md │ ├── _icon-toggle.scss │ ├── icon-toggle.js │ └── snippets │ │ ├── icon-off.html │ │ └── icon-on.html ├── images │ ├── buffer.svg │ ├── tick-mask.svg │ └── tick.svg ├── index.html ├── layout │ ├── README.md │ ├── _layout.scss │ ├── layout.js │ └── snippets │ │ ├── fixed-drawer-demo.html │ │ ├── fixed-drawer.html │ │ ├── fixed-header-demo.html │ │ ├── fixed-header-drawer-demo.html │ │ ├── fixed-header-drawer.html │ │ ├── fixed-header.html │ │ ├── fixed-tabs-demo.html │ │ ├── fixed-tabs.html │ │ ├── scrollable-tabs-demo.html │ │ ├── scrollable-tabs.html │ │ ├── scrolling-header-demo.html │ │ ├── scrolling-header.html │ │ ├── transparent-demo.html │ │ ├── transparent.html │ │ ├── waterfall-header-demo.html │ │ └── waterfall-header.html ├── list │ ├── README.md │ ├── _list.scss │ └── snippets │ │ ├── action.html │ │ ├── icon.html │ │ ├── list-control.html │ │ ├── list-item.html │ │ ├── three-line.html │ │ └── two-line.html ├── material-design-lite-grid.scss ├── material-design-lite.scss ├── mdlComponentHandler.js ├── menu │ ├── README.md │ ├── _menu.scss │ ├── menu.js │ └── snippets │ │ ├── codepen-lower-buttons.css │ │ ├── codepen-top-buttons.css │ │ ├── lower-left-demo.html │ │ ├── lower-left.html │ │ ├── lower-right-demo.html │ │ ├── lower-right.html │ │ ├── top-left-demo.html │ │ ├── top-left.html │ │ ├── top-right-demo.html │ │ └── top-right.html ├── palette │ ├── _palette.scss │ ├── demo.css │ └── demo.html ├── progress │ ├── README.md │ ├── _progress.scss │ ├── progress.js │ └── snippets │ │ ├── progress-buffering-demo.html │ │ ├── progress-buffering.html │ │ ├── progress-default-demo.html │ │ ├── progress-default.html │ │ ├── progress-indeterminate-demo.html │ │ └── progress-indeterminate.html ├── radio │ ├── README.md │ ├── _radio.scss │ ├── radio.js │ └── snippets │ │ ├── radio-off.html │ │ └── radio-on.html ├── resets │ ├── _h5bp.scss │ ├── _mobile.scss │ └── _resets.scss ├── ripple │ ├── _ripple.scss │ └── ripple.js ├── shadow │ ├── README.md │ ├── _shadow.scss │ ├── demo.css │ └── demo.html ├── slider │ ├── README.md │ ├── _slider.scss │ ├── slider.js │ └── snippets │ │ ├── demo.html │ │ ├── slider-default-demo.html │ │ ├── slider-default.html │ │ ├── slider-starting-value-demo.html │ │ └── slider-starting-value.html ├── snackbar │ ├── README.md │ ├── _snackbar.scss │ ├── snackbar.js │ └── snippets │ │ ├── snackbar.html │ │ └── toast.html ├── spinner │ ├── README.md │ ├── _spinner.scss │ ├── snippets │ │ ├── spinner-default.html │ │ └── spinner-single-color.html │ └── spinner.js ├── styleguide.scss ├── switch │ ├── README.md │ ├── _switch.scss │ ├── snippets │ │ ├── switch-off.html │ │ └── switch-on.html │ └── switch.js ├── tabs │ ├── README.md │ ├── _tabs.scss │ ├── snippets │ │ └── tabs.html │ └── tabs.js ├── template.scss ├── textfield │ ├── README.md │ ├── _textfield.scss │ ├── snippets │ │ ├── textfield-expanding-demo.html │ │ ├── textfield-expanding.html │ │ ├── textfield-floating-numeric-demo.html │ │ ├── textfield-floating-numeric.html │ │ ├── textfield-floating-text-demo.html │ │ ├── textfield-floating-text.html │ │ ├── textfield-multi-line-demo.html │ │ ├── textfield-multi-line.html │ │ ├── textfield-numeric-demo.html │ │ ├── textfield-numeric.html │ │ ├── textfield-text-demo.html │ │ └── textfield-text.html │ └── textfield.js ├── third_party │ └── rAF.js ├── tooltip │ ├── README.md │ ├── _tooltip.scss │ ├── snippets │ │ ├── tooltip-large.html │ │ ├── tooltip-multiline.html │ │ ├── tooltip-rich.html │ │ └── tooltip-simple.html │ └── tooltip.js └── typography │ ├── README.md │ ├── _typography.scss │ ├── demo.css │ └── demo.html ├── templates ├── android-dot-com │ ├── README.md │ ├── images │ │ ├── android-logo-white.png │ │ ├── android-logo.png │ │ ├── andy.png │ │ ├── auto-on.jpg │ │ ├── devices.jpg │ │ ├── more-from-1.png │ │ ├── more-from-2.png │ │ ├── more-from-3.png │ │ ├── more-from-4.png │ │ ├── nexus6-on.jpg │ │ ├── nexus9-on.jpg │ │ ├── slide01.jpg │ │ ├── tv-on.jpg │ │ ├── wear-black-on.png │ │ ├── wear-silver-on.png │ │ └── wear.png │ ├── index.html │ ├── material.scss │ └── styles.css ├── article │ ├── images │ │ ├── android-desktop.png │ │ ├── favicon.png │ │ └── ios-desktop.png │ ├── index.html │ └── styles.css ├── blog │ ├── entry.html │ ├── images │ │ ├── android-desktop.png │ │ ├── avatar.png │ │ ├── bg_1024.jpg │ │ ├── bg_2048.jpg │ │ ├── bg_2880.jpg │ │ ├── co1.jpg │ │ ├── co2.jpg │ │ ├── coffee.jpg │ │ ├── favicon.png │ │ ├── ios-desktop.png │ │ ├── logo.png │ │ ├── road.jpg │ │ ├── road_big.jpg │ │ └── shopping.jpg │ ├── index.html │ └── styles.css ├── dashboard │ ├── images │ │ ├── android-desktop.png │ │ ├── dog.png │ │ ├── favicon.png │ │ ├── ios-desktop.png │ │ └── user.jpg │ ├── index.html │ └── styles.css ├── portfolio │ ├── Tutorial │ │ ├── images │ │ │ ├── example-work01.jpg │ │ │ ├── example-work02.jpg │ │ │ ├── example-work03.jpg │ │ │ ├── example-work04.jpg │ │ │ ├── example-work05.jpg │ │ │ ├── example-work06.jpg │ │ │ ├── example-work07.jpg │ │ │ ├── example-work08.jpg │ │ │ ├── example-work09.jpg │ │ │ ├── header-bg.jpg │ │ │ ├── photo-wide.jpg │ │ │ └── photo.jpg │ │ ├── step01-initial-HTML-setup.html │ │ ├── step02-MDL-layout-component.html │ │ ├── step03-the-grid-component.html │ │ ├── step04-customising-the-layout.html │ │ ├── step05-individual-pages │ │ │ ├── about.html │ │ │ ├── blog.html │ │ │ ├── contact.html │ │ │ ├── index.html │ │ │ └── portfolio-example01.html │ │ └── styles.css │ ├── about.html │ ├── blog.html │ ├── contact.html │ ├── images │ │ ├── about-header.jpg │ │ ├── contact-image.jpg │ │ ├── example-blog01.jpg │ │ ├── example-blog02.jpg │ │ ├── example-blog03.jpg │ │ ├── example-blog04.jpg │ │ ├── example-blog05.jpg │ │ ├── example-blog06.jpg │ │ ├── example-blog07.jpg │ │ ├── example-work01.jpg │ │ ├── example-work02.jpg │ │ ├── example-work03.jpg │ │ ├── example-work04.jpg │ │ ├── example-work05.jpg │ │ ├── example-work06.jpg │ │ ├── example-work07.jpg │ │ ├── example-work08.jpg │ │ ├── example-work09.jpg │ │ ├── footer-background.png │ │ ├── header-bg.jpg │ │ ├── logo.png │ │ ├── photo-wide.jpg │ │ ├── photo.jpg │ │ ├── portfolio-example-01.jpg │ │ ├── portfolio-example-02.jpg │ │ ├── portfolio-example-03.jpg │ │ ├── portfolio-example-04.jpg │ │ ├── portfolio-example-05.jpg │ │ └── portfolio-example-06.jpg │ ├── index.html │ ├── portfolio-example01.html │ └── styles.css └── text-only │ ├── images │ ├── android-desktop.png │ ├── favicon.png │ └── ios-desktop.png │ ├── index.html │ └── styles.css ├── test ├── index.html ├── memory │ ├── blank.html │ ├── menu.js │ ├── snackbar.js │ ├── test.js │ ├── upgrade-downgrade.js │ └── utils.js ├── unit │ ├── button.js │ ├── checkbox.js │ ├── componentHandler.js │ ├── data-table.js │ ├── icon-toggle.js │ ├── layout.js │ ├── menu.js │ ├── progress.js │ ├── radio.js │ ├── ripple.js │ ├── slider.js │ ├── snackbar.js │ ├── spinner.js │ ├── switch.js │ ├── tabs.js │ ├── textfield.js │ └── tooltip.js └── visual │ ├── index.html │ ├── style.css │ └── welcome.html └── utils └── uniffe.js /.drone.yml: -------------------------------------------------------------------------------- 1 | # Note: if you modify this file, don't forget to update 2 | # checksum in .drone.sec with: 3 | # drone secure --repo google/material-design-lite --checksum 4 | clone: 5 | depth: 1 6 | cache: 7 | mount: 8 | - node_modules 9 | matrix: 10 | NODE_VERSION: 11 | - 4 12 | - 5 13 | build: 14 | image: crhym3/ci:node$$NODE_VERSION-go15 15 | environment: 16 | - CHROME=https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb 17 | - WEBDRIVER=http://chromedriver.storage.googleapis.com/2.16/chromedriver_linux64.zip 18 | - DISPLAY=:99 19 | commands: 20 | - npm update -qq 21 | # build and unit test 22 | - gulp all 23 | - gulp mocha:closure 24 | # additional browser tests 25 | # do this after the build and unit tests to fail fast 26 | - Xvfb $DISPLAY & 27 | - curl -sSLo chrome.deb $CHROME && dpkg -i chrome.deb 28 | - curl -sSLo driver.zip $WEBDRIVER && unzip -q driver.zip -d /usr/bin 29 | publish: 30 | # see http://addons.drone.io/google_cloud_storage/ for details 31 | gcs: 32 | when: 33 | repo: google/material-design-lite 34 | branch: master 35 | event: push 36 | matrix: 37 | NODE_VERSION: 5 38 | auth_key: > 39 | $$SERVICE_ACCOUNT_KEY 40 | source: dist 41 | target: mdl-staging 42 | cache_control: public,max-age=0 43 | acl: 44 | - allUsers:READER 45 | gzip: 46 | - html 47 | - css 48 | - js 49 | - svg 50 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ** PLEASE READ THIS BEFORE FILING AN ISSUE ** 2 | 3 | ## Feature Requests / Breaking Changes in mdl-1.x 4 | 5 | The MDL core team has actively begun work on the next major version of MDL, dubbed **MDL v2**. Because we are a small team that's hyper-focused on delivering the best Material Design Library possible for the web, _it is highly unlikely that we will be actively working on new features or making backwards-incompatible changes for MDL as it currently exists._ 6 | 7 | If there is a non-breaking feature you would like to see implemented in `mdl-1.x` and are willing to contribute, we'd be happy to offer assistance with you doing so. But we will not personally be actively working on said features. 8 | 9 | While we are just getting started with our next version of MDL, you can see our current progress on [master](https://github.com/google/material-design-lite/tree/master) as well as an overview of the direction we're headed in our [(WIP) developer guide](https://github.com/google/material-design-lite/blob/master/docs/DEVELOPER.md) as well as our [initial POC branch](https://github.com/google/material-design-lite/tree/experimental/v2-architecture-poc) for our new architecture. 10 | 11 | If you're interested in information for a specific MDL v2 component, check out our [v2-component issues](https://github.com/google/material-design-lite/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20label%3Av2-component) to see which v2 milestone it's associated with and feel free to subscribe to that issue for updates. 12 | 13 | ## Bugs 14 | 15 | Please include the following information with your bug report: 16 | 17 | > What MDL Version are you using? (please be specific, e.g. _major.minor.patch_) 18 | 19 | 20 | > What browser(s) is this bug affecting (including version)? 21 | 22 | 23 | > What OS (and version) are you using? 24 | 25 | 26 | > What are the steps to reproduce the bug? Can you create a plunker/codepen/jsfiddle which reproduces it? 27 | 28 | 29 | > What is the expected behavior? 30 | 31 | 32 | > What is the actual behavior? 33 | 34 | 35 | > Any other information you believe would be useful? -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .tmp 3 | gulp-cache 4 | .DS_Store 5 | docs/out 6 | .publish 7 | /dist 8 | .drone.sec.yml 9 | -------------------------------------------------------------------------------- /.jscsrc: -------------------------------------------------------------------------------- 1 | { 2 | "preset": "google", 3 | "disallowSpacesInAnonymousFunctionExpression": null, 4 | "validateLineBreaks": "LF", 5 | "validateIndentation": 2, 6 | "excludeFiles": ["node_modules/**"], 7 | "maximumLineLength": 130, 8 | "validateQuoteMarks": "'", 9 | "requireDotNotation": false, 10 | "requireCamelCaseOrUpperCaseIdentifiers": {"allowedPrefixes": ["opt_"]}, 11 | "jsDoc": { 12 | "checkAnnotations": { 13 | "preset": "closurecompiler", 14 | "extra": { 15 | "type": true, 16 | "suppress": true 17 | } 18 | }, 19 | "checkTypes": "strictNativeCase", 20 | "enforceExistence": "exceptExports" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "node": true, 3 | "browser": true, 4 | "esnext": true, 5 | "bitwise": true, 6 | "curly": true, 7 | "eqeqeq": true, 8 | "immed": true, 9 | "newcap": true, 10 | "noarg": true, 11 | "undef": true, 12 | "unused": "vars", 13 | "strict": true, 14 | "sub": true, 15 | "globals": { 16 | "componentHandler": true 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "material-design-lite", 3 | "version": "1.3.0", 4 | "homepage": "https://github.com/google/material-design-lite", 5 | "authors": [ 6 | "Material Design Lite team" 7 | ], 8 | "description": "Material Design Components in CSS, JS and HTML", 9 | "main": [ 10 | "material.min.css", 11 | "material.min.js" 12 | ], 13 | "keywords": [ 14 | "material", 15 | "design", 16 | "styleguide", 17 | "style", 18 | "guide" 19 | ], 20 | "license": "Apache-2", 21 | "ignore": [ 22 | "**/.*", 23 | "node_modules", 24 | "bower_components", 25 | "./lib/.bower_components", 26 | "test", 27 | "tests" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /docs/_assets/android-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/android-desktop.png -------------------------------------------------------------------------------- /docs/_assets/app-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/app-icon.png -------------------------------------------------------------------------------- /docs/_assets/button_degradation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/button_degradation.png -------------------------------------------------------------------------------- /docs/_assets/codepen-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/codepen-logo.png -------------------------------------------------------------------------------- /docs/_assets/colors.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Oval 43 + Oval 43 + Oval 43 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /docs/_assets/comp_badges.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_badges.png -------------------------------------------------------------------------------- /docs/_assets/comp_buttons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_buttons.png -------------------------------------------------------------------------------- /docs/_assets/comp_cards.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_cards.png -------------------------------------------------------------------------------- /docs/_assets/comp_chips.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_chips.png -------------------------------------------------------------------------------- /docs/_assets/comp_dialog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_dialog.png -------------------------------------------------------------------------------- /docs/_assets/comp_layout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_layout.png -------------------------------------------------------------------------------- /docs/_assets/comp_lists.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_lists.png -------------------------------------------------------------------------------- /docs/_assets/comp_loading.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_loading.png -------------------------------------------------------------------------------- /docs/_assets/comp_menus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_menus.png -------------------------------------------------------------------------------- /docs/_assets/comp_sliders.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_sliders.png -------------------------------------------------------------------------------- /docs/_assets/comp_snackbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_snackbar.png -------------------------------------------------------------------------------- /docs/_assets/comp_tables.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_tables.png -------------------------------------------------------------------------------- /docs/_assets/comp_textfields.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_textfields.png -------------------------------------------------------------------------------- /docs/_assets/comp_toggles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_toggles.png -------------------------------------------------------------------------------- /docs/_assets/comp_tooltips.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/comp_tooltips.png -------------------------------------------------------------------------------- /docs/_assets/compindex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/compindex.png -------------------------------------------------------------------------------- /docs/_assets/compindex_2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/compindex_2x.png -------------------------------------------------------------------------------- /docs/_assets/components.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/components.png -------------------------------------------------------------------------------- /docs/_assets/components.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | components 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /docs/_assets/components_2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/components_2x.png -------------------------------------------------------------------------------- /docs/_assets/components_mo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | components_mo 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /docs/_assets/customize.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/customize.png -------------------------------------------------------------------------------- /docs/_assets/customize.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | customize 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /docs/_assets/customize_2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/customize_2x.png -------------------------------------------------------------------------------- /docs/_assets/customizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/customizer.png -------------------------------------------------------------------------------- /docs/_assets/demos/dog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/demos/dog.png -------------------------------------------------------------------------------- /docs/_assets/demos/image_card.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/demos/image_card.jpg -------------------------------------------------------------------------------- /docs/_assets/demos/transparent.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/demos/transparent.jpg -------------------------------------------------------------------------------- /docs/_assets/demos/welcome_card.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/demos/welcome_card.jpg -------------------------------------------------------------------------------- /docs/_assets/faq/subscribe-single-issue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/faq/subscribe-single-issue.png -------------------------------------------------------------------------------- /docs/_assets/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/favicon.png -------------------------------------------------------------------------------- /docs/_assets/google-services.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/google-services.png -------------------------------------------------------------------------------- /docs/_assets/header.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/header.jpg -------------------------------------------------------------------------------- /docs/_assets/header_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/header_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/icons.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Shape 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /docs/_assets/ie.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /* Header navigation fix to ensure display */ 18 | .docs-layout .docs-layout-header.mdl-layout__header { 19 | display: block; 20 | } 21 | 22 | body > div.mdl-layout__container > div > main > div > section.about-panel.about-panel--components.mdl-color-text--white.mdl-cell.mdl-cell--6-col, 23 | body > div.mdl-layout__container > div > main > div > section.about-panel.about-panel--styles.mdl-color-text--white.mdl-cell.mdl-cell--6-col { 24 | width: 50%; 25 | float: left; 26 | } 27 | -------------------------------------------------------------------------------- /docs/_assets/img-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/img-1.png -------------------------------------------------------------------------------- /docs/_assets/img-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/img-2.png -------------------------------------------------------------------------------- /docs/_assets/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | (function() { 18 | Array.prototype.forEach.call(document.querySelectorAll('[data-target]'), function(el) { 19 | var target = el.getAttribute('data-target'); 20 | el.addEventListener('click', function() { 21 | location.href = target; 22 | }); 23 | }); 24 | })(); 25 | -------------------------------------------------------------------------------- /docs/_assets/ios-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/ios-desktop.png -------------------------------------------------------------------------------- /docs/_assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/logo.png -------------------------------------------------------------------------------- /docs/_assets/logo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Shape 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /docs/_assets/mo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | mo 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /docs/_assets/rich-media-gallery.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/rich-media-gallery.png -------------------------------------------------------------------------------- /docs/_assets/showcase/contributor.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/contributor.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/contributor_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/contributor_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/developers.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/developers.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/developers_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/developers_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/rework.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/rework.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/rework_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/rework_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/sunroof.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/sunroof.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/sunroof_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/sunroof_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/wallet.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/wallet.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/wallet_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/wallet_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/work_partners.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/work_partners.jpg -------------------------------------------------------------------------------- /docs/_assets/showcase/work_partners_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/showcase/work_partners_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/sliders_degradation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/sliders_degradation.png -------------------------------------------------------------------------------- /docs/_assets/styles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/styles.png -------------------------------------------------------------------------------- /docs/_assets/styles.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | styles 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /docs/_assets/styles_2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/styles_2x.png -------------------------------------------------------------------------------- /docs/_assets/styles_mo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | styles 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /docs/_assets/table_degradation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/table_degradation.png -------------------------------------------------------------------------------- /docs/_assets/template-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/template-preview.png -------------------------------------------------------------------------------- /docs/_assets/templates.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates.png -------------------------------------------------------------------------------- /docs/_assets/templates.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | templates_mo 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /docs/_assets/templates/android-dot-com.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/android-dot-com.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/android-dot-com_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/android-dot-com_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/article.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/article.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/article_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/article_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/blog.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/blog.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/blog_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/blog_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/dashboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/dashboard.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/dashboard_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/dashboard_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/general.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/general.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/general_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/general_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/portfolio.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/portfolio.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/portfolio_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/portfolio_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/product.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/product.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/product_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/product_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/text-only.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/text-only.jpg -------------------------------------------------------------------------------- /docs/_assets/templates/text-only_2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates/text-only_2x.jpg -------------------------------------------------------------------------------- /docs/_assets/templates_2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/docs/_assets/templates_2x.png -------------------------------------------------------------------------------- /docs/_assets/templates_mo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | templates_mo 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /docs/_pages/customize.md: -------------------------------------------------------------------------------- 1 | --- 2 | layout: customize 3 | title: Customize & Download 4 | bodyclass: customize 5 | include_prefix: ../ 6 | --- 7 | -------------------------------------------------------------------------------- /docs/_pages/showcase.md: -------------------------------------------------------------------------------- 1 | --- 2 | layout: showcase 3 | title: 'Showcase: sites using MDL' 4 | bodyclass: showcase 5 | include_prefix: ../ 6 | sites: 7 | - name: wallet 8 | title: Google Wallet 9 | description: Google Wallet allows you to send money to anyone in the US with an email address. It's fast, easy, and free to send directly from your debit card, bank account, or Wallet Balance. 10 | url: https://www.google.com/wallet/ 11 | - name: contributor 12 | title: Google Contributor 13 | description: Contribute a few dollars each month. See fewer ads. It's that simple. The money you contribute helps fund the sites you visit. 14 | url: https://www.google.com/contributor/welcome/ 15 | - name: work_partners 16 | title: Google for Work 17 | description: The Google for Work Partner Program enables you to sell, service, and innovate by leveraging our products and platforms across the Google for Work suite. 18 | url: https://www.google.com/work/partners/ 19 | - name: rework 20 | title: reWork with Google 21 | description: Practices, research, and ideas from Google and other organizations to put people first. 22 | url: https://rework.withgoogle.com/ 23 | - name: developers 24 | title: Google Developers 25 | description: Web Fundamentals is a comprehensive resource for multi-device web development hosted by Google Developers. 26 | url: https://developers.google.com/web/fundamentals/ 27 | - name: sunroof 28 | title: Google Project Sunroof 29 | description: Project Sunroof puts Google's expansive data in mapping and computing resources to use, helping calculate the best solar plan for you. 30 | url: https://www.google.com/get/sunroof/about/ 31 | --- 32 |
33 |

Material Design Lite is used on a wide range of sites. Below are just a small selection of the Google.com sites that have launched using us. We hope to expand the showcase to cover third-party and community sites built using MDL in the near future. To request your site be added, please file a new issue on our GitHub issue tracker.

34 |
35 | 36 | -------------------------------------------------------------------------------- /docs/_pages/started.md: -------------------------------------------------------------------------------- 1 | --- 2 | layout: started 3 | title: Getting started 4 | bodyclass: started 5 | include_prefix: ../ 6 | snippets: 7 | - component_name: button 8 | snippet_group: 9 | - caption: Raised button 10 | file: raised-ripple-accent.html 11 | - caption: Colored FAB 12 | file: fab-colored.html 13 | --- 14 | -------------------------------------------------------------------------------- /docs/_pages/templates.md: -------------------------------------------------------------------------------- 1 | --- 2 | layout: templates 3 | title: Templates 4 | bodyclass: templates 5 | include_prefix: ../ 6 | templates: 7 | - name: blog 8 | title: Blog 9 | description: A mobile focused responsive template that showcases image or text based blog entries, a subscription CTA, search & share links, and an expanded article page with comments, counters and bookmarking capabilities built-in. 10 | - name: android-dot-com 11 | title: Android.com MDL skin 12 | description: A Material Design Lite version of the current android.com site, using the same content with a horizontal navigation, feature carousel and long form scrolling sub pages. 13 | - name: dashboard 14 | title: Dashboard 15 | description: A modular responsive template built to display data visualizations and information with a clear vertical nav, user profile, search and dedicated space for updates and filters. 16 | - name: portfolio 17 | title: Portfolio 18 | description: A modern and clean looking template for a portfolio/blog build with Material Design Lite. Included are a top nav bar that comes with the waterfall header component, cards to display different types of content and a footer. 19 | - name: text-only 20 | title: Text-heavy webpage 21 | description: Built for presenting content that is information dense, easily updatable, and optimized for legibility, this template has a sticky horizontal top nav on mobile, feature callouts, cards and a site map footer with a deep-linked table of contents. 22 | - name: article 23 | title: Stand-alone article 24 | description: A clean layout optimized for presenting text-based content with a breadcrumb nav, search, clear headers and a footer that utilizes a card-like structure to showcase the content. 25 | --- 26 | -------------------------------------------------------------------------------- /docs/_templates/component.html: -------------------------------------------------------------------------------- 1 | 2 | {% block content %} 3 | 4 | {{content|safe}} 5 | {% endblock %} 6 | -------------------------------------------------------------------------------- /docs/_templates/demo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | {{ page.component }} test 9 | 10 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | {% set demo_css = "../../dist/components/" + page.component + "/demo.css" %} 22 | 25 | 26 | 27 | 28 | 29 |
30 | {% block content %} 31 | {{content|safe}} 32 | {% endblock %} 33 |
34 | 35 | 36 | {% set demo_js = "../../dist/components/" + page.component + "/demo.js" %} 37 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /docs/_templates/page.html: -------------------------------------------------------------------------------- 1 | {% extends 'layout.html' %} 2 | 3 | {% block content %} 4 | 5 | {{content|safe}} 6 | 7 | {% endblock %} 8 | -------------------------------------------------------------------------------- /docs/_templates/showcase.html: -------------------------------------------------------------------------------- 1 | {% extends 'layout.html' %} 2 | {% block content %} 3 | {{content|safe}} 4 | {% for template in page.sites %} 5 |
6 | 9 |
10 |

{{ template.title }}

11 |

12 | {{ template.description }} 13 |

14 | 15 | 18 | Screenshot 19 | 20 | 21 | 24 | Visit 25 | 26 |
27 |
28 | {% endfor %} 29 | {% endblock %} 30 | -------------------------------------------------------------------------------- /docs/_templates/snippets.html: -------------------------------------------------------------------------------- 1 | {% if snippet_group.length === 1 && snippet_group[0].full_width %} 2 |
3 | {% else %} 4 |
5 | {% endif %} 6 |
7 |
8 |
9 | {% for snippet in snippet_group %} 10 | {% if snippet.demo_file %} 11 | {% set snippet_file = "../../src/" + component_name + "/snippets/" + snippet.demo_file %} 12 | {% else %} 13 | {% set snippet_file = "../../src/" + component_name + "/snippets/" + snippet.file %} 14 | {% endif %} 15 |
16 |
17 | {% include snippet_file ignore missing %} 18 |
19 |
20 | {%- endfor %} 21 |
22 |
23 |
24 |
25 | {% for snippet in snippet_group %} 26 |
27 | {{ snippet.caption }} 28 |
29 | {%- endfor %} 30 |
31 |
32 |
33 |
34 |
{% for snippet in snippet_group %}{% set snippet_file = "../../src/" + component_name + "/snippets/" + snippet.file %}{% filter e('html') %}{% include snippet_file ignore missing %}{% endfilter %}
<style>{% set extra_css_file = "../../src/" + component_name + "/snippets/" + snippet.extra_codepen_css %}{% include extra_css_file ignore missing %}</style>
{%- endfor %}{% if snippet_group.length !== 1 || !snippet_group[0].full_width %}
<style> 35 | body { 36 | padding: 20px; 37 | background: #fafafa; 38 | position: relative; 39 | } 40 | </style>
{% endif %}
41 |
42 |
43 | -------------------------------------------------------------------------------- /docs/_templates/styles.html: -------------------------------------------------------------------------------- 1 | {% extends 'layout.html' %} 2 | 3 | {% block content %} 4 | 5 |
6 |
7 | {{content|safe}} 8 |
9 |
10 | 11 | {% endblock %} 12 | -------------------------------------------------------------------------------- /docs/_templates/templates.html: -------------------------------------------------------------------------------- 1 | {% extends 'layout.html' %} 2 | {% block content %} 3 | {% for template in page.templates %} 4 |
5 | 8 |
9 |

{{ template.title }}

10 |

11 | {{ template.description }} 12 |

13 | 14 | 17 | Download 18 | 19 | 20 | 23 | Preview 24 | 25 |
26 |
27 | {% endfor %} 28 | {% endblock %} 29 | -------------------------------------------------------------------------------- /src/_functions.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @function strip-units($number) { 18 | @return $number / ($number * 0 + 1); 19 | } 20 | -------------------------------------------------------------------------------- /src/animation/_animation.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @import "../variables"; 18 | 19 | 20 | .mdl-animation--default { 21 | transition-timing-function: $animation-curve-default; 22 | } 23 | 24 | .mdl-animation--fast-out-slow-in { 25 | transition-timing-function: $animation-curve-fast-out-slow-in; 26 | } 27 | 28 | .mdl-animation--linear-out-slow-in { 29 | transition-timing-function: $animation-curve-linear-out-slow-in; 30 | } 31 | 32 | .mdl-animation--fast-out-linear-in { 33 | transition-timing-function: $animation-curve-fast-out-linear-in; 34 | } 35 | -------------------------------------------------------------------------------- /src/animation/demo.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
Click me to animate
4 |
5 |
6 |
7 |
8 | -------------------------------------------------------------------------------- /src/badge/_badge.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @import "../variables"; 18 | 19 | .mdl-badge { 20 | position : relative; 21 | white-space: nowrap; 22 | margin-right: ($badge-size + $badge-padding); 23 | 24 | &:not([data-badge]) { 25 | margin-right: auto; 26 | } 27 | 28 | &[data-badge]:after { 29 | content: attr(data-badge); 30 | 31 | display: flex; 32 | flex-direction: row; 33 | flex-wrap: wrap; 34 | justify-content: center; 35 | align-content: center; 36 | align-items: center; 37 | 38 | position: absolute; 39 | top: -($badge-size / 2); 40 | right: -($badge-size + $badge-padding); 41 | 42 | .mdl-button & { 43 | top: -10px; 44 | right: -5px; 45 | } 46 | 47 | font-family: $preferred_font; 48 | font-weight: 600; 49 | font-size: $badge-font-size; 50 | width: $badge-size; 51 | height: $badge-size; 52 | border-radius : 50%; 53 | 54 | background: $badge-background; 55 | color: $badge-color; 56 | } 57 | 58 | &.mdl-badge--no-background { 59 | &[data-badge]:after { 60 | color: $badge-color-inverse; 61 | background: $badge-background-inverse; 62 | 63 | box-shadow: 0 0 1px gray; 64 | } 65 | } 66 | &.mdl-badge--overlap { 67 | margin-right: ($badge-size - $badge-overlap); 68 | &:after { 69 | right: -($badge-size - $badge-overlap); 70 | } 71 | } 72 | } 73 | -------------------------------------------------------------------------------- /src/badge/snippets/badge-on-icon-icon-demo.html: -------------------------------------------------------------------------------- 1 | 9 | {% include "badge-on-icon-icon.html" %} 10 | -------------------------------------------------------------------------------- /src/badge/snippets/badge-on-icon-icon.html: -------------------------------------------------------------------------------- 1 | 2 |
account_box
3 | -------------------------------------------------------------------------------- /src/badge/snippets/badge-on-icon-text-demo.html: -------------------------------------------------------------------------------- 1 | 9 | {% include "badge-on-icon-text.html" %} 10 | -------------------------------------------------------------------------------- /src/badge/snippets/badge-on-icon-text.html: -------------------------------------------------------------------------------- 1 | 2 |
account_box
3 | -------------------------------------------------------------------------------- /src/badge/snippets/badge-on-text-icon-demo.html: -------------------------------------------------------------------------------- 1 | 6 | {% include "badge-on-text-icon.html" %} 7 | -------------------------------------------------------------------------------- /src/badge/snippets/badge-on-text-icon.html: -------------------------------------------------------------------------------- 1 | 2 | Mood 3 | -------------------------------------------------------------------------------- /src/badge/snippets/badge-on-text-text-demo.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | {% include "badge-on-text-text.html" %} 8 | -------------------------------------------------------------------------------- /src/badge/snippets/badge-on-text-text.html: -------------------------------------------------------------------------------- 1 | 2 | Inbox 3 | -------------------------------------------------------------------------------- /src/button/snippets/fab-colored-ripple.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/fab-colored.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/fab-disabled.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/fab-mini-colored.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/fab-mini.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/fab-ripple.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/fab.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/flat-accent.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/flat-disabled.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/flat-primary.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/flat-ripple.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/flat.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/icon-colored.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/icon.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/raised-accent.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/raised-colored.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/raised-disabled.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/raised-ripple-accent.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/raised-ripple.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/button/snippets/raised.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /src/card/snippets/event.html: -------------------------------------------------------------------------------- 1 | 2 | 31 | 32 |
33 |
34 |

35 | Featured event:
36 | May 24, 2016
37 | 7-11pm 38 |

39 |
40 |
41 | 42 | Add to Calendar 43 | 44 |
45 | event 46 |
47 |
48 | -------------------------------------------------------------------------------- /src/card/snippets/image.html: -------------------------------------------------------------------------------- 1 | 2 | 19 | 20 |
21 |
22 |
23 | Image.jpg 24 |
25 |
26 | -------------------------------------------------------------------------------- /src/card/snippets/square.html: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 |
15 |
16 |

Update

17 |
18 |
19 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. 20 | Aenan convallis. 21 |
22 | 27 |
28 | -------------------------------------------------------------------------------- /src/card/snippets/wide.html: -------------------------------------------------------------------------------- 1 | 2 | 15 | 16 |
17 |
18 |

Welcome

19 |
20 |
21 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. 22 | Mauris sagittis pellentesque lacus eleifend lacinia... 23 |
24 | 29 |
30 | 33 |
34 |
35 | -------------------------------------------------------------------------------- /src/checkbox/snippets/check-off.html: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /src/checkbox/snippets/check-on.html: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /src/chip/snippets/basic.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Basic Chip 4 | -------------------------------------------------------------------------------- /src/chip/snippets/button.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/chip/snippets/contact.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | A 4 | Contact Chip 5 | 6 | -------------------------------------------------------------------------------- /src/chip/snippets/deletable-contact.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Deletable Contact Chip 5 | cancel 6 | -------------------------------------------------------------------------------- /src/chip/snippets/deletable.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Deletable Chip 4 | 5 | -------------------------------------------------------------------------------- /src/data-table/snippets/data-table.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |
MaterialQuantityUnit price
Acrylic (Transparent)25$2.90
Plywood (Birch)50$1.25
Laminate (Gold on Blue)10$2.35
27 | -------------------------------------------------------------------------------- /src/demos.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | .demo-page { 18 | width: 100%; 19 | height: auto; 20 | 21 | margin: 0; 22 | padding: 0; 23 | 24 | padding: 24px; 25 | box-sizing: border-box; 26 | } 27 | 28 | .demo-preview-block { 29 | padding: 20px; 30 | padding-bottom: 0; 31 | margin-bottom: 0; 32 | box-sizing: border-box; 33 | width: 100%; 34 | } 35 | 36 | .demo-code { 37 | width: 100%; 38 | box-sizing: border-box; 39 | } 40 | -------------------------------------------------------------------------------- /src/dialog/_dialog.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @import "../variables"; 18 | @import "../mixins"; 19 | 20 | .mdl-dialog { 21 | border: none; 22 | @include shadow-24dp; 23 | @include dialog-width; 24 | 25 | &__title { 26 | padding: 24px 24px 0; 27 | margin: 0; 28 | font-size: 2.5rem; 29 | } 30 | &__actions { 31 | padding: 8px 8px 8px 24px; 32 | display: flex; 33 | flex-direction: row-reverse; 34 | flex-wrap: wrap; 35 | > * { 36 | margin-right: 8px; 37 | height: 36px; 38 | &:first-child { 39 | margin-right: 0; 40 | } 41 | } 42 | &--full-width { 43 | padding: 0 0 8px 0; 44 | > * { 45 | height: 48px; 46 | flex: 0 0 auto; 47 | width: 100%; //@see https://github.com/philipwalton/flexbugs#7-flex-basis-doesnt-account-for-box-sizingborder-box 48 | padding-right: 16px; 49 | margin-right: 0; 50 | text-align: right; 51 | } 52 | } 53 | } 54 | &__content { 55 | padding: 20px 24px 24px 24px; 56 | color: $dialog-content-color; 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /src/expansion/snippets/expansion.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | Trip name 4 | Caribbean Cruise 5 | 6 |
7 |
8 | 9 | Location 10 | Barbados 11 | 12 | 13 |
14 | 18 |
19 |
20 | 21 | 22 |
23 |
24 |
25 | 26 | Start and end dates 27 | Start date: Feb 29, 2016 28 | End date: Not set 29 | 30 |
31 |
32 | 33 | Carrier 34 | The best cruise line 35 | 36 |
37 |
38 | 39 | 40 | Meal preferences 41 | 42 | Optional 43 | 44 | 45 | 46 | Vegetarian 47 | 48 | 49 |
50 | -------------------------------------------------------------------------------- /src/footer/_mini_footer.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @import "../variables"; 18 | 19 | .mdl-mini-footer { 20 | display: flex; 21 | flex-flow: row wrap; 22 | justify-content: space-between; 23 | 24 | padding: ($padding * 2) $padding; 25 | 26 | color: $footer-color; 27 | background-color: $footer-bg-color; 28 | 29 | &:after { 30 | content: ''; 31 | display: block; 32 | } 33 | 34 | & .mdl-logo { 35 | line-height: $footer-btn-size; 36 | } 37 | } 38 | 39 | .mdl-mini-footer--link-list, 40 | .mdl-mini-footer__link-list { 41 | display: flex; 42 | flex-flow: row nowrap; 43 | 44 | list-style: none; 45 | 46 | margin: 0; 47 | padding: 0; 48 | 49 | & li { 50 | margin-bottom: 0; 51 | margin-right: $padding; 52 | 53 | @media screen and (min-width: 760px) { 54 | line-height: $footer-btn-size; 55 | } 56 | } 57 | 58 | & a { 59 | color: inherit; 60 | text-decoration: none; 61 | white-space: nowrap; 62 | } 63 | } 64 | 65 | .mdl-mini-footer--left-section, 66 | .mdl-mini-footer__left-section { 67 | display: inline-block; 68 | order: 0; 69 | } 70 | 71 | .mdl-mini-footer--right-section, 72 | .mdl-mini-footer__right-section { 73 | display: inline-block; 74 | order: 1; 75 | } 76 | 77 | .mdl-mini-footer--social-btn, 78 | .mdl-mini-footer__social-btn { 79 | width: $footer-btn-size; 80 | height: $footer-btn-size; 81 | 82 | padding: 0; 83 | margin: 0; 84 | 85 | background-color: $footer-button-fill-color; 86 | 87 | border: none; 88 | } 89 | -------------------------------------------------------------------------------- /src/footer/snippets/mega-footer.html: -------------------------------------------------------------------------------- 1 | 58 | -------------------------------------------------------------------------------- /src/footer/snippets/mini-footer.html: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /src/grid/snippets/codepen-grid.css: -------------------------------------------------------------------------------- 1 | .mdl-cell { 2 | box-sizing: border-box; 3 | background-color: #BDBDBD; 4 | height: 200px; 5 | padding-left: 8px; 6 | padding-top: 4px; 7 | color: white; 8 | } 9 | .mdl-grid:first-of-type .mdl-cell { 10 | height: 50px; 11 | } 12 | -------------------------------------------------------------------------------- /src/grid/snippets/grid-demo.html: -------------------------------------------------------------------------------- 1 | 14 | 15 | {% include "grid.html" %} 16 | -------------------------------------------------------------------------------- /src/grid/snippets/grid.html: -------------------------------------------------------------------------------- 1 |
2 |
1
3 |
1
4 |
1
5 |
1
6 |
1
7 |
1
8 |
1
9 |
1
10 |
1
11 |
1
12 |
1
13 |
1
14 |
15 |
16 |
4
17 |
4
18 |
4
19 |
20 |
21 |
6
22 |
4
23 |
2
24 |
25 |
26 |
6 (8 tablet)
27 |
4 (6 tablet)
28 |
2 (4 phone)
29 |
30 | -------------------------------------------------------------------------------- /src/icon-toggle/snippets/icon-off.html: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /src/icon-toggle/snippets/icon-on.html: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /src/images/buffer.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/images/tick-mask.svg: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | 16 | 17 | 18 | 21 | 22 | 23 | 30 | 31 | -------------------------------------------------------------------------------- /src/images/tick.svg: -------------------------------------------------------------------------------- 1 | 2 | 11 | 15 | 16 | -------------------------------------------------------------------------------- /src/layout/snippets/fixed-drawer-demo.html: -------------------------------------------------------------------------------- 1 | 14 | 15 | {% include "fixed-drawer.html" %} 16 | -------------------------------------------------------------------------------- /src/layout/snippets/fixed-drawer.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | Title 5 | 11 |
12 |
13 |
14 |
15 |
16 | -------------------------------------------------------------------------------- /src/layout/snippets/fixed-header-demo.html: -------------------------------------------------------------------------------- 1 | 14 | 15 | {% include "fixed-header.html" %} 16 | -------------------------------------------------------------------------------- /src/layout/snippets/fixed-header-drawer-demo.html: -------------------------------------------------------------------------------- 1 | 14 | 15 | {% include "fixed-header-drawer.html" %} 16 | -------------------------------------------------------------------------------- /src/layout/snippets/fixed-header-drawer.html: -------------------------------------------------------------------------------- 1 | 3 |
5 |
6 |
7 |
8 |
10 | 14 |
15 | 17 |
18 |
19 |
20 |
21 |
22 | Title 23 | 29 |
30 |
31 |
32 |
33 |
34 | -------------------------------------------------------------------------------- /src/layout/snippets/fixed-header.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 |
5 | 6 | Title 7 | 8 |
9 | 10 | 16 |
17 |
18 |
19 | Title 20 | 26 |
27 |
28 |
29 |
30 |
31 | -------------------------------------------------------------------------------- /src/layout/snippets/fixed-tabs-demo.html: -------------------------------------------------------------------------------- 1 | 14 | 15 | {% include "fixed-tabs.html" %} 16 | -------------------------------------------------------------------------------- /src/layout/snippets/fixed-tabs.html: -------------------------------------------------------------------------------- 1 | 2 |
4 |
5 |
6 | 7 | Title 8 |
9 | 10 |
11 | Tab 1 12 | Tab 2 13 | Tab 3 14 |
15 |
16 |
17 | Title 18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 | -------------------------------------------------------------------------------- /src/layout/snippets/scrollable-tabs-demo.html: -------------------------------------------------------------------------------- 1 | 14 | 15 | {% include "scrollable-tabs.html" %} 16 | -------------------------------------------------------------------------------- /src/layout/snippets/scrollable-tabs.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 |
5 | 6 | Title 7 |
8 | 9 |
10 | Tab 1 11 | Tab 2 12 | Tab 3 13 | Tab 4 14 | Tab 5 15 | Tab 6 16 |
17 |
18 |
19 | Title 20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 | -------------------------------------------------------------------------------- /src/layout/snippets/scrolling-header-demo.html: -------------------------------------------------------------------------------- 1 | 15 | 16 | {% include "scrolling-header.html" %} 17 | -------------------------------------------------------------------------------- /src/layout/snippets/scrolling-header.html: -------------------------------------------------------------------------------- 1 | 3 |
4 |
5 |
6 | 7 | Title 8 | 9 |
10 | 11 | 17 |
18 |
19 |
20 | Title 21 | 27 |
28 |
29 |
30 |
31 |
32 | -------------------------------------------------------------------------------- /src/layout/snippets/transparent-demo.html: -------------------------------------------------------------------------------- 1 | 11 | 12 | {% include "transparent.html" %} 13 | -------------------------------------------------------------------------------- /src/layout/snippets/transparent.html: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 |
15 |
16 |
17 | 18 | Title 19 | 20 |
21 | 22 | 28 |
29 |
30 |
31 | Title 32 | 38 |
39 |
40 |
41 |
42 | -------------------------------------------------------------------------------- /src/layout/snippets/waterfall-header-demo.html: -------------------------------------------------------------------------------- 1 | 15 | 16 | {% include "waterfall-header.html" %} 17 | -------------------------------------------------------------------------------- /src/layout/snippets/waterfall-header.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 |
9 |
10 | 11 |
12 | 13 | Title 14 |
15 |
17 | 21 |
22 | 24 |
25 |
26 |
27 | 28 |
29 |
30 | 31 | 37 |
38 |
39 |
40 | Title 41 | 47 |
48 |
49 |
50 |
51 |
52 | -------------------------------------------------------------------------------- /src/list/snippets/action.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 |
9 |
10 | 11 | person 12 | Bryan Cranston 13 | 14 | star 15 |
16 |
17 | 18 | person 19 | Aaron Paul 20 | 21 | star 22 |
23 |
24 | 25 | person 26 | Bob Odenkirk 27 | 28 | 29 | star 30 | 31 |
32 |
33 | -------------------------------------------------------------------------------- /src/list/snippets/icon.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 28 | -------------------------------------------------------------------------------- /src/list/snippets/list-control.html: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 47 | -------------------------------------------------------------------------------- /src/list/snippets/list-item.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 25 | -------------------------------------------------------------------------------- /src/list/snippets/three-line.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 49 | -------------------------------------------------------------------------------- /src/list/snippets/two-line.html: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 41 | -------------------------------------------------------------------------------- /src/material-design-lite-grid.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /* Material Design Lite Grid*/ 18 | 19 | @import "variables"; 20 | @import "mixins"; 21 | @import "grid/grid"; -------------------------------------------------------------------------------- /src/material-design-lite.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /* Material Design Lite */ 18 | 19 | // Variables and mixins 20 | @import "variables"; 21 | @import "mixins"; 22 | 23 | // Resets and dependencies 24 | @import "resets/resets"; 25 | @import "typography/typography"; 26 | 27 | // Components 28 | @import "palette/palette"; 29 | @import "ripple/ripple"; 30 | @import "animation/animation"; 31 | @import "badge/badge"; 32 | @import "button/button"; 33 | @import "card/card"; 34 | @import "checkbox/checkbox"; 35 | @import "chip/chip"; 36 | @import "data-table/data-table"; 37 | @import "dialog/dialog"; 38 | @import "expansion/expansion"; 39 | @import "footer/mega_footer"; 40 | @import "footer/mini_footer"; 41 | @import "icon-toggle/icon-toggle"; 42 | @import "list/list"; 43 | @import "menu/menu"; 44 | @import "progress/progress"; 45 | @import "layout/layout"; 46 | @import "radio/radio"; 47 | @import "slider/slider"; 48 | @import "snackbar/snackbar"; 49 | @import "spinner/spinner"; 50 | @import "switch/switch"; 51 | @import "tabs/tabs"; 52 | @import "textfield/textfield"; 53 | @import "tooltip/tooltip"; 54 | @import "shadow/shadow"; 55 | @import "grid/grid"; 56 | -------------------------------------------------------------------------------- /src/menu/snippets/codepen-lower-buttons.css: -------------------------------------------------------------------------------- 1 | #demo-menu-lower-left { 2 | margin-left: 40%; 3 | } 4 | -------------------------------------------------------------------------------- /src/menu/snippets/codepen-top-buttons.css: -------------------------------------------------------------------------------- 1 | #demo-menu-top-left { 2 | margin-left: 40%; 3 | } 4 | 5 | #demo-menu-top-left, 6 | #demo-menu-top-right { 7 | margin-top: 250px; 8 | } 9 | -------------------------------------------------------------------------------- /src/menu/snippets/lower-left-demo.html: -------------------------------------------------------------------------------- 1 | 19 | 20 |
21 |
22 | {% include "lower-left.html" %} 23 |
24 |
25 |
26 | -------------------------------------------------------------------------------- /src/menu/snippets/lower-left.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /src/menu/snippets/lower-right-demo.html: -------------------------------------------------------------------------------- 1 | 26 | 27 |
28 |
29 |
30 | {% include "lower-right.html" %} 31 |
32 |
33 |
34 |
35 | -------------------------------------------------------------------------------- /src/menu/snippets/lower-right.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /src/menu/snippets/top-left-demo.html: -------------------------------------------------------------------------------- 1 | 19 | 20 |
21 |
22 |
23 | {% include "top-left.html" %} 24 |
25 |
26 | -------------------------------------------------------------------------------- /src/menu/snippets/top-left.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /src/menu/snippets/top-right-demo.html: -------------------------------------------------------------------------------- 1 | 26 | 27 |
28 |
29 |
30 |
31 | {% include "top-right.html" %} 32 |
33 |
34 |
35 | -------------------------------------------------------------------------------- /src/menu/snippets/top-right.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 14 | -------------------------------------------------------------------------------- /src/palette/demo.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | .demo-page--palette.demo-preview-block { 18 | display: inline-block; 19 | } 20 | 21 | .demo-palette { 22 | margin-top: 15px; 23 | width: 360px; 24 | float: left; 25 | } 26 | 27 | @media screen and (max-width: 360px ) { 28 | .demo-palette { 29 | width: 272px; 30 | } 31 | } 32 | 33 | .demo-palette-color, .demo-palette-heading { 34 | max-width: 300px; 35 | padding: 15px; 36 | color: white; 37 | } 38 | 39 | .demo-palette .demo-palette--dark-text, 40 | .demo-palette-heading.demo-palette--dark-text .demo-palette-name { 41 | color: #000; 42 | } 43 | 44 | .demo-palette-name { 45 | padding: 0 0 60px 0; 46 | } 47 | 48 | .demo-palette-single { 49 | padding: 15px 15px 25px; 50 | } 51 | 52 | .demo-palette-single .demo-palette-name { 53 | padding: 0; 54 | float: left; 55 | } 56 | -------------------------------------------------------------------------------- /src/progress/snippets/progress-buffering-demo.html: -------------------------------------------------------------------------------- 1 | 7 | 8 | {% include "progress-buffering.html" %} 9 | -------------------------------------------------------------------------------- /src/progress/snippets/progress-buffering.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 9 | -------------------------------------------------------------------------------- /src/progress/snippets/progress-default-demo.html: -------------------------------------------------------------------------------- 1 | 7 | {% include "progress-default.html" %} 8 | -------------------------------------------------------------------------------- /src/progress/snippets/progress-default.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 8 | -------------------------------------------------------------------------------- /src/progress/snippets/progress-indeterminate-demo.html: -------------------------------------------------------------------------------- 1 | 7 | {% include "progress-indeterminate.html" %} 8 | -------------------------------------------------------------------------------- /src/progress/snippets/progress-indeterminate.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | -------------------------------------------------------------------------------- /src/radio/snippets/radio-off.html: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /src/radio/snippets/radio-on.html: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /src/resets/_mobile.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | /* Remove the unwanted box around FAB buttons */ 19 | /* More info: http://goo.gl/IPwKi */ 20 | a, .mdl-accordion, .mdl-button, .mdl-card, .mdl-checkbox, .mdl-dropdown-menu, 21 | .mdl-icon-toggle, .mdl-item, .mdl-radio, .mdl-slider, .mdl-switch, .mdl-tabs__tab { 22 | 23 | -webkit-tap-highlight-color: transparent; 24 | -webkit-tap-highlight-color: rgba(255, 255, 255, 0); 25 | } 26 | -------------------------------------------------------------------------------- /src/resets/_resets.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @import "h5bp"; 18 | @import "mobile"; 19 | 20 | /* 21 | * Make html take up the entire screen 22 | * Then set touch-action to avoid touch delay on mobile IE 23 | */ 24 | html { 25 | width: 100%; 26 | height: 100%; 27 | -ms-touch-action: manipulation; 28 | touch-action: manipulation; 29 | } 30 | 31 | /* 32 | * Make body take up the entire screen 33 | * Remove body margin so layout containers don't cause extra overflow. 34 | */ 35 | body { 36 | width: 100%; 37 | min-height: 100%; 38 | margin: 0; 39 | } 40 | 41 | /* 42 | * Main display reset for IE support. 43 | * Source: http://weblog.west-wind.com/posts/2015/Jan/12/main-HTML5-Tag-not-working-in-Internet-Explorer-91011 44 | */ 45 | main { 46 | display: block; 47 | } 48 | 49 | /* 50 | * Apply no display to elements with the hidden attribute. 51 | * IE 9 and 10 support. 52 | */ 53 | *[hidden] { 54 | display: none !important; 55 | } 56 | -------------------------------------------------------------------------------- /src/ripple/_ripple.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @import "../variables"; 18 | 19 | .mdl-ripple { 20 | background : $ripple-bg-color; 21 | border-radius : 50%; 22 | height : 50px; 23 | left : 0; 24 | opacity : 0; 25 | pointer-events : none; 26 | position : absolute; 27 | top : 0; 28 | transform : translate(-50%, -50%); 29 | width : 50px; 30 | overflow : hidden; 31 | 32 | &.is-animating { 33 | transition: transform 0.3s $animation-curve-linear-out-slow-in, 34 | width 0.3s $animation-curve-linear-out-slow-in, 35 | height 0.3s $animation-curve-linear-out-slow-in, 36 | opacity 0.6s $animation-curve-linear-out-slow-in; 37 | } 38 | 39 | &.is-visible { 40 | opacity: 0.3; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /src/shadow/_shadow.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @import "../variables"; 18 | @import "../mixins"; 19 | 20 | .mdl-shadow--2dp { 21 | @include shadow-2dp(); 22 | } 23 | 24 | .mdl-shadow--3dp { 25 | @include shadow-3dp(); 26 | } 27 | 28 | .mdl-shadow--4dp { 29 | @include shadow-4dp(); 30 | } 31 | 32 | .mdl-shadow--6dp { 33 | @include shadow-6dp(); 34 | } 35 | 36 | .mdl-shadow--8dp { 37 | @include shadow-8dp(); 38 | } 39 | 40 | .mdl-shadow--16dp { 41 | @include shadow-16dp(); 42 | } 43 | 44 | .mdl-shadow--24dp { 45 | @include shadow-24dp(); 46 | } 47 | -------------------------------------------------------------------------------- /src/shadow/demo.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | .demo-page--shadow .demo-preview-block { 18 | height: 100px; 19 | } 20 | 21 | .demo-shadow-card { 22 | background-color: #fff; 23 | border-radius: 2px; 24 | display: block; 25 | height: 72px; 26 | margin-bottom: 20px; 27 | margin-right: 32px; 28 | padding: 10px; 29 | text-align: center; 30 | float: left; 31 | color: #9E9E9E; 32 | display: flex; 33 | align-items: center; 34 | justify-content: center; 35 | transition-property: opacity, transform; 36 | width: 72px; 37 | } 38 | 39 | @media screen and (max-width: 360px ) { 40 | .demo-shadow-card { 41 | width: 27px; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /src/shadow/demo.html: -------------------------------------------------------------------------------- 1 |
2 |
2dp
3 |
3dp
4 |
4dp
5 |
6dp
6 |
8dp
7 |
16dp
8 |
9 | -------------------------------------------------------------------------------- /src/slider/snippets/demo.html: -------------------------------------------------------------------------------- 1 |
2 |

3 | 5 |

6 |

7 | 9 |

10 |
11 | -------------------------------------------------------------------------------- /src/slider/snippets/slider-default-demo.html: -------------------------------------------------------------------------------- 1 | 7 | {% include "slider-default.html" %} 8 | -------------------------------------------------------------------------------- /src/slider/snippets/slider-default.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | -------------------------------------------------------------------------------- /src/slider/snippets/slider-starting-value-demo.html: -------------------------------------------------------------------------------- 1 | 7 | 8 | {% include "slider-starting-value.html" %} 9 | -------------------------------------------------------------------------------- /src/slider/snippets/slider-starting-value.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | -------------------------------------------------------------------------------- /src/snackbar/snippets/snackbar.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 5 |
6 | 28 | -------------------------------------------------------------------------------- /src/snackbar/snippets/toast.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 5 |
6 | 19 | -------------------------------------------------------------------------------- /src/spinner/snippets/spinner-default.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | -------------------------------------------------------------------------------- /src/spinner/snippets/spinner-single-color.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | -------------------------------------------------------------------------------- /src/styleguide.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @import "material-design-lite"; 18 | 19 | $padding: 24px; 20 | 21 | body { 22 | margin: 0px; 23 | } 24 | 25 | .styleguide-demo h1 { 26 | margin: ($padding * 2) $padding 0 $padding; 27 | } 28 | 29 | .styleguide-demo h1:after { 30 | content: ''; 31 | 32 | display: block; 33 | width: 100%; 34 | 35 | border-bottom: 1px solid rgba(0,0,0,0.5); 36 | margin-top: $padding; 37 | } 38 | 39 | .styleguide-demo { 40 | opacity: 0; 41 | 42 | transition: opacity 0.6s ease; 43 | } 44 | 45 | .styleguide-masthead { 46 | height: 256px; 47 | background: unquote("rgb(#{nth($palette-grey, 10)})"); 48 | padding: 115px 16px 0; 49 | } 50 | 51 | .styleguide-container { 52 | position: relative; 53 | max-width: 960px; 54 | width: 100%; 55 | } 56 | 57 | .styleguide-title { 58 | color: #fff; 59 | bottom: auto; 60 | position: relative; 61 | font-size: 56px; 62 | font-weight: 300; 63 | line-height: 1; 64 | letter-spacing: -0.02em; 65 | 66 | &:after { 67 | border-bottom: 0px; 68 | } 69 | 70 | span { 71 | font-weight: 300; 72 | } 73 | } 74 | 75 | .mdl-styleguide .mdl-layout__drawer .mdl-navigation__link { 76 | padding: 10px 24px; 77 | } 78 | 79 | .demosLoaded .styleguide-demo { 80 | opacity: 1; 81 | } 82 | 83 | iframe { 84 | display: block; 85 | 86 | width: 100%; 87 | 88 | border: none; 89 | } 90 | 91 | iframe.heightSet { 92 | overflow: hidden; 93 | } 94 | 95 | .demo-wrapper { 96 | margin: $padding; 97 | 98 | iframe { 99 | border: 1px solid rgba(0,0,0,0.5); 100 | } 101 | } 102 | -------------------------------------------------------------------------------- /src/switch/snippets/switch-off.html: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /src/switch/snippets/switch-on.html: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /src/tabs/snippets/tabs.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | Starks 4 | Lannisters 5 | Targaryens 6 |
7 | 8 |
9 |
    10 |
  • Eddard
  • 11 |
  • Catelyn
  • 12 |
  • Robb
  • 13 |
  • Sansa
  • 14 |
  • Brandon
  • 15 |
  • Arya
  • 16 |
  • Rickon
  • 17 |
18 |
19 |
20 |
    21 |
  • Tywin
  • 22 |
  • Cersei
  • 23 |
  • Jamie
  • 24 |
  • Tyrion
  • 25 |
26 |
27 |
28 |
    29 |
  • Viserys
  • 30 |
  • Daenerys
  • 31 |
32 |
33 |
34 | -------------------------------------------------------------------------------- /src/template.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /* Material Design Lite */ 18 | 19 | $styleguide-generate-template: true; 20 | 21 | @import "styleguide"; 22 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-expanding-demo.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | {% include "textfield-expanding.html" %} 8 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-expanding.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 7 |
8 | 9 | 10 |
11 |
12 |
13 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-floating-numeric-demo.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | {% include "textfield-floating-numeric.html" %} 8 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-floating-numeric.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 5 | 6 | Input is not a number! 7 |
8 |
9 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-floating-text-demo.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | {% include "textfield-floating-text.html" %} 8 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-floating-text.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 | 6 | 7 |
8 |
9 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-multi-line-demo.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | {% include "textfield-multi-line.html" %} 8 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-multi-line.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 5 | 6 |
7 |
8 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-numeric-demo.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | {% include "textfield-numeric.html" %} 8 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-numeric.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 5 | 6 | Input is not a number! 7 |
8 |
9 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-text-demo.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | {% include "textfield-text.html" %} 8 | -------------------------------------------------------------------------------- /src/textfield/snippets/textfield-text.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 5 | 6 |
7 |
8 | -------------------------------------------------------------------------------- /src/third_party/rAF.js: -------------------------------------------------------------------------------- 1 | // Source: https://github.com/darius/requestAnimationFrame/blob/master/requestAnimationFrame.js 2 | // Adapted from https://gist.github.com/paulirish/1579671 which derived from 3 | // http://paulirish.com/2011/requestanimationframe-for-smart-animating/ 4 | // http://my.opera.com/emoller/blog/2011/12/20/requestanimationframe-for-smart-er-animating 5 | 6 | // requestAnimationFrame polyfill by Erik Möller. 7 | // Fixes from Paul Irish, Tino Zijdel, Andrew Mao, Klemen Slavič, Darius Bacon 8 | 9 | // MIT license 10 | 11 | (function() { 12 | 'use strict'; 13 | 14 | if (!Date.now) { 15 | /** 16 | * Date.now polyfill. 17 | * @return {number} the current Date 18 | */ 19 | Date.now = function() { return new Date().getTime(); }; 20 | Date['now'] = Date.now; 21 | } 22 | 23 | var vendors = ['webkit', 'moz']; 24 | for (var i = 0; i < vendors.length && !window.requestAnimationFrame; ++i) { 25 | var vp = vendors[i]; 26 | window.requestAnimationFrame = window[vp + 'RequestAnimationFrame']; 27 | window.cancelAnimationFrame = (window[vp + 'CancelAnimationFrame'] || 28 | window[vp + 'CancelRequestAnimationFrame']); 29 | window['requestAnimationFrame'] = window.requestAnimationFrame; 30 | window['cancelAnimationFrame'] = window.cancelAnimationFrame; 31 | } 32 | 33 | if (/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent) || !window.requestAnimationFrame || !window.cancelAnimationFrame) { 34 | var lastTime = 0; 35 | /** 36 | * requestAnimationFrame polyfill. 37 | * @param {!Function} callback the callback function. 38 | */ 39 | window.requestAnimationFrame = function(callback) { 40 | var now = Date.now(); 41 | var nextTime = Math.max(lastTime + 16, now); 42 | return setTimeout(function() { callback(lastTime = nextTime); }, 43 | nextTime - now); 44 | }; 45 | window.cancelAnimationFrame = clearTimeout; 46 | window['requestAnimationFrame'] = window.requestAnimationFrame; 47 | window['cancelAnimationFrame'] = window.cancelAnimationFrame; 48 | } 49 | 50 | })(); 51 | -------------------------------------------------------------------------------- /src/tooltip/_tooltip.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @import "../variables"; 18 | 19 | .mdl-tooltip { 20 | transform: scale(0); 21 | transform-origin: top center; 22 | z-index: 999; 23 | background: $tooltip-background-color; 24 | border-radius: 2px; 25 | color: $tooltip-text-color; 26 | display: inline-block; 27 | font-size: $tooltip-font-size; 28 | font-weight: 500; 29 | line-height: 14px; 30 | max-width: 170px; 31 | position: fixed; 32 | top: -500px; 33 | left: -500px; 34 | padding: 8px; 35 | text-align: center; 36 | } 37 | .mdl-tooltip.is-active { 38 | animation: pulse 200ms $animation-curve-linear-out-slow-in forwards; 39 | } 40 | 41 | .mdl-tooltip--large { 42 | line-height: 14px; 43 | font-size: $tooltip-font-size-large; 44 | padding: 16px; 45 | } 46 | 47 | @keyframes pulse { 48 | 0% { 49 | transform: scale(0); 50 | opacity: 0; 51 | } 52 | 50% { 53 | // Fixes a weird bug with the interaction between Safari and the result of 54 | // the SASS compilation for the animation. 55 | // Essentially, we need to make sure that "50%" and "100%" don't get merged 56 | // into a single "50%, 100%" entry, so we need to avoid them having any 57 | // matching properties. 58 | transform: scale(0.99); 59 | } 60 | 100% { 61 | transform: scale(1); 62 | opacity: 1; 63 | visibility: visible; 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /src/tooltip/snippets/tooltip-large.html: -------------------------------------------------------------------------------- 1 | 2 |
print
3 |
4 | Print 5 |
6 | -------------------------------------------------------------------------------- /src/tooltip/snippets/tooltip-multiline.html: -------------------------------------------------------------------------------- 1 | 2 |
share
3 |
4 | Share your content
via social media 5 |
6 | -------------------------------------------------------------------------------- /src/tooltip/snippets/tooltip-rich.html: -------------------------------------------------------------------------------- 1 | 2 |
cloud_upload
3 |
4 | Upload file.zip 5 |
6 | -------------------------------------------------------------------------------- /src/tooltip/snippets/tooltip-simple.html: -------------------------------------------------------------------------------- 1 | 2 |
add
3 |
4 | Follow 5 |
6 | -------------------------------------------------------------------------------- /src/typography/demo.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | .demo-page--typography { 18 | color: rgba(0, 0, 0, 0.87); 19 | } 20 | 21 | .demo-page--typography table th { 22 | padding-right: 80px; 23 | 24 | vertical-align: top; 25 | text-align: left; 26 | } 27 | 28 | .demo-typography--white { 29 | background-color: white; 30 | color: black; 31 | } 32 | 33 | .demo-typography--black { 34 | background-color: black; 35 | color: white; 36 | } 37 | 38 | .demo-typography--white, 39 | .demo-typography--black, 40 | .demo-typography--img-1, 41 | .demo-typography--img-2 { 42 | width: 360px; 43 | height: 272px; 44 | 45 | padding: 16px; 46 | box-sizing: border-box; 47 | } 48 | 49 | .demo-typography--img-1 { 50 | background-image: url(../demo-images/img-1.png); 51 | color: white; 52 | } 53 | 54 | .demo-typography--img-2 { 55 | background-image: url(../demo-images/img-2.png); 56 | color: white; 57 | } 58 | -------------------------------------------------------------------------------- /templates/android-dot-com/README.md: -------------------------------------------------------------------------------- 1 | # android.com sample 2 | 3 | ## Why this sample 4 | The goal of this sample is to illustrate implementing a real-world-looking site with **Material Design Lite**. 5 | 6 | We therefore decided to do a cover of the front page of the android.com website, which while not a 1:1 match illustrates MDL usage well. 7 | -------------------------------------------------------------------------------- /templates/android-dot-com/images/android-logo-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/android-logo-white.png -------------------------------------------------------------------------------- /templates/android-dot-com/images/android-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/android-logo.png -------------------------------------------------------------------------------- /templates/android-dot-com/images/andy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/andy.png -------------------------------------------------------------------------------- /templates/android-dot-com/images/auto-on.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/auto-on.jpg -------------------------------------------------------------------------------- /templates/android-dot-com/images/devices.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/devices.jpg -------------------------------------------------------------------------------- /templates/android-dot-com/images/more-from-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/more-from-1.png -------------------------------------------------------------------------------- /templates/android-dot-com/images/more-from-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/more-from-2.png -------------------------------------------------------------------------------- /templates/android-dot-com/images/more-from-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/more-from-3.png -------------------------------------------------------------------------------- /templates/android-dot-com/images/more-from-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/more-from-4.png -------------------------------------------------------------------------------- /templates/android-dot-com/images/nexus6-on.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/nexus6-on.jpg -------------------------------------------------------------------------------- /templates/android-dot-com/images/nexus9-on.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/nexus9-on.jpg -------------------------------------------------------------------------------- /templates/android-dot-com/images/slide01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/slide01.jpg -------------------------------------------------------------------------------- /templates/android-dot-com/images/tv-on.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/tv-on.jpg -------------------------------------------------------------------------------- /templates/android-dot-com/images/wear-black-on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/wear-black-on.png -------------------------------------------------------------------------------- /templates/android-dot-com/images/wear-silver-on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/wear-silver-on.png -------------------------------------------------------------------------------- /templates/android-dot-com/images/wear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/android-dot-com/images/wear.png -------------------------------------------------------------------------------- /templates/android-dot-com/material.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | @import '../../src/material-design-lite'; 18 | -------------------------------------------------------------------------------- /templates/article/images/android-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/article/images/android-desktop.png -------------------------------------------------------------------------------- /templates/article/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/article/images/favicon.png -------------------------------------------------------------------------------- /templates/article/images/ios-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/article/images/ios-desktop.png -------------------------------------------------------------------------------- /templates/article/styles.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | .demo-ribbon { 18 | width: 100%; 19 | height: 40vh; 20 | background-color: #3F51B5; 21 | flex-shrink: 0; 22 | } 23 | 24 | .demo-main { 25 | margin-top: -35vh; 26 | flex-shrink: 0; 27 | } 28 | 29 | .demo-header .mdl-layout__header-row { 30 | padding-left: 40px; 31 | } 32 | 33 | .demo-container { 34 | max-width: 1600px; 35 | width: calc(100% - 16px); 36 | margin: 0 auto; 37 | } 38 | 39 | .demo-content { 40 | border-radius: 2px; 41 | padding: 80px 56px; 42 | margin-bottom: 80px; 43 | } 44 | 45 | .demo-layout.is-small-screen .demo-content { 46 | padding: 40px 28px; 47 | } 48 | 49 | .demo-content h3 { 50 | margin-top: 48px; 51 | } 52 | 53 | .demo-footer { 54 | padding-left: 40px; 55 | } 56 | 57 | .demo-footer .mdl-mini-footer--link-list a { 58 | font-size: 13px; 59 | } 60 | -------------------------------------------------------------------------------- /templates/blog/images/android-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/android-desktop.png -------------------------------------------------------------------------------- /templates/blog/images/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/avatar.png -------------------------------------------------------------------------------- /templates/blog/images/bg_1024.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/bg_1024.jpg -------------------------------------------------------------------------------- /templates/blog/images/bg_2048.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/bg_2048.jpg -------------------------------------------------------------------------------- /templates/blog/images/bg_2880.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/bg_2880.jpg -------------------------------------------------------------------------------- /templates/blog/images/co1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/co1.jpg -------------------------------------------------------------------------------- /templates/blog/images/co2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/co2.jpg -------------------------------------------------------------------------------- /templates/blog/images/coffee.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/coffee.jpg -------------------------------------------------------------------------------- /templates/blog/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/favicon.png -------------------------------------------------------------------------------- /templates/blog/images/ios-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/ios-desktop.png -------------------------------------------------------------------------------- /templates/blog/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/logo.png -------------------------------------------------------------------------------- /templates/blog/images/road.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/road.jpg -------------------------------------------------------------------------------- /templates/blog/images/road_big.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/road_big.jpg -------------------------------------------------------------------------------- /templates/blog/images/shopping.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/blog/images/shopping.jpg -------------------------------------------------------------------------------- /templates/dashboard/images/android-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/dashboard/images/android-desktop.png -------------------------------------------------------------------------------- /templates/dashboard/images/dog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/dashboard/images/dog.png -------------------------------------------------------------------------------- /templates/dashboard/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/dashboard/images/favicon.png -------------------------------------------------------------------------------- /templates/dashboard/images/ios-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/dashboard/images/ios-desktop.png -------------------------------------------------------------------------------- /templates/dashboard/images/user.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/dashboard/images/user.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/example-work01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/example-work01.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/example-work02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/example-work02.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/example-work03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/example-work03.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/example-work04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/example-work04.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/example-work05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/example-work05.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/example-work06.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/example-work06.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/example-work07.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/example-work07.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/example-work08.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/example-work08.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/example-work09.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/example-work09.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/header-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/header-bg.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/photo-wide.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/photo-wide.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/images/photo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/Tutorial/images/photo.jpg -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/step01-initial-HTML-setup.html: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | MDL-Static Website 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /templates/portfolio/Tutorial/styles.css: -------------------------------------------------------------------------------- 1 | 2 | .portfolio-header { 3 | position: relative; 4 | background-color: #D8D8D8; 5 | background-image: url(images/header-bg.jpg); 6 | } 7 | 8 | .portfolio-header .mdl-layout__header-row { 9 | padding: 0; 10 | justify-content: center; 11 | } 12 | 13 | .portfolio-navigation-row { 14 | background-color: rgba(0, 0, 0, 0.08); 15 | text-transform: uppercase; 16 | height: 45px; 17 | } 18 | 19 | .portfolio-navigation-row .mdl-navigation { 20 | text-align: center; 21 | max-width: 900px; 22 | width: 100%; 23 | } 24 | 25 | .portfolio-navigation-row .mdl-navigation__link { 26 | flex: 1; 27 | line-height: 42px; 28 | } 29 | 30 | .portfolio-header .mdl-layout__drawer-button { 31 | background-color: rgba(197, 197, 197, 0.44); 32 | } 33 | 34 | .portfolio-navigation-row .is-active { 35 | position: relative; 36 | font-weight: bold; 37 | } 38 | 39 | .portfolio-navigation-row .is-active:after { 40 | content: ""; 41 | width: 70%; 42 | height: 2px; 43 | display: block; 44 | position: absolute; 45 | bottom: 0; 46 | left: 0; 47 | background-color: rgb(255,64,129); 48 | left: 15%; 49 | } 50 | 51 | 52 | img.article-image { 53 | width: 100%; 54 | height: auto; 55 | } 56 | 57 | .portfolio-max-width { 58 | max-width: 900px; 59 | margin: auto; 60 | } 61 | 62 | .portfolio-copy { 63 | max-width: 700px; 64 | } 65 | 66 | .portfolio-card .mdl-card__title { 67 | padding-bottom: 0; 68 | } 69 | 70 | .no-padding { 71 | padding: 0; 72 | } 73 | 74 | .no-left-padding{ 75 | padding-left: 0; 76 | } 77 | 78 | .no-bottom-padding { 79 | padding-bottom: 0; 80 | } 81 | 82 | .padding-top { 83 | padding: 10px 0 0; 84 | } 85 | 86 | .portfolio-share-btn { 87 | position: relative; 88 | float: right; 89 | top: -4px; 90 | } 91 | 92 | .demo-card-event > .mdl-card__actions { 93 | align-items: center; 94 | box-sizing: border-box; 95 | display: flex; 96 | } 97 | 98 | .portfolio-contact .mdl-textfield { 99 | width: 100%; 100 | } 101 | 102 | .portfolio-contact form { 103 | max-width: 700px; 104 | margin: auto; 105 | } -------------------------------------------------------------------------------- /templates/portfolio/images/about-header.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/about-header.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/contact-image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/contact-image.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-blog01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-blog01.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-blog02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-blog02.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-blog03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-blog03.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-blog04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-blog04.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-blog05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-blog05.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-blog06.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-blog06.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-blog07.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-blog07.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-work01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-work01.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-work02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-work02.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-work03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-work03.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-work04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-work04.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-work05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-work05.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-work06.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-work06.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-work07.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-work07.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-work08.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-work08.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/example-work09.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/example-work09.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/footer-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/footer-background.png -------------------------------------------------------------------------------- /templates/portfolio/images/header-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/header-bg.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/logo.png -------------------------------------------------------------------------------- /templates/portfolio/images/photo-wide.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/photo-wide.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/photo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/photo.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/portfolio-example-01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/portfolio-example-01.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/portfolio-example-02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/portfolio-example-02.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/portfolio-example-03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/portfolio-example-03.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/portfolio-example-04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/portfolio-example-04.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/portfolio-example-05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/portfolio-example-05.jpg -------------------------------------------------------------------------------- /templates/portfolio/images/portfolio-example-06.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/portfolio/images/portfolio-example-06.jpg -------------------------------------------------------------------------------- /templates/text-only/images/android-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/text-only/images/android-desktop.png -------------------------------------------------------------------------------- /templates/text-only/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/text-only/images/favicon.png -------------------------------------------------------------------------------- /templates/text-only/images/ios-desktop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/google/material-design-lite/60f441a22ed98ed2c03f6179adf460d888bf459f/templates/text-only/images/ios-desktop.png -------------------------------------------------------------------------------- /test/memory/blank.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /test/memory/menu.js: -------------------------------------------------------------------------------- 1 | var path = require('path'); 2 | var drool = require('drool'); 3 | var heapDiffPrinter = require('./utils.js').heapDiffPrinter; 4 | var webdriver = drool.webdriver; 5 | 6 | module.exports = function(stamps, i, driver) { 7 | drool.flow({ 8 | setup: function() { 9 | driver.get('file://' + path.join(__dirname, '../../dist/components/menu/demo.html')); 10 | }, 11 | action: function() { 12 | driver.findElement(webdriver.By.css('#demo-menu-lower-left')).click(); 13 | driver.sleep(1000); 14 | driver.findElement(webdriver.By.css('#demo-menu-lower-left')).click(); 15 | }, 16 | beforeAssert: function() { 17 | driver.sleep(1000); 18 | }, 19 | assert: function(after, initial) { 20 | heapDiffPrinter(after, initial, i, 'menu'); 21 | stamps.push([after.counts.jsEventListeners, initial.counts.jsEventListeners]); 22 | } 23 | }, driver); 24 | }; 25 | -------------------------------------------------------------------------------- /test/memory/snackbar.js: -------------------------------------------------------------------------------- 1 | var path = require('path'); 2 | var drool = require('drool'); 3 | var heapDiffPrinter = require('./utils.js').heapDiffPrinter; 4 | 5 | module.exports = function(stamps, i, driver) { 6 | drool.flow({ 7 | setup: function() { 8 | driver.get('file://' + path.join(__dirname, '../../dist/components/snackbar/demo.html')); 9 | }, 10 | action: function() { 11 | driver.executeScript('document.querySelector("#demo-snackbar-example").MaterialSnackbar.showSnackbar({message: "🐐", timeout: 300})'); 12 | driver.sleep(400); 13 | }, 14 | beforeAssert: function() { 15 | driver.sleep(400); 16 | }, 17 | assert: function(after, initial) { 18 | heapDiffPrinter(after, initial, i, 'snackbar'); 19 | stamps.push([after.counts.jsEventListeners, initial.counts.jsEventListeners]); 20 | } 21 | }, driver); 22 | } 23 | -------------------------------------------------------------------------------- /test/memory/test.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var drool = require('drool'); 4 | var assert = require('assert'); 5 | var webdriver = drool.webdriver; 6 | var controlFlow = webdriver.promise.controlFlow(); 7 | var measureSnackbar = require('./snackbar'); 8 | var measureMenu = require('./menu'); 9 | var measureUpgradeDowngrade = require('./upgrade-downgrade'); 10 | var driver = drool.start({chromeOptions: 'no-sandbox'}); 11 | var snackbarStamps = []; 12 | var menuStamps = []; 13 | 14 | // commented out tests require special DOM to bootstrap 15 | ['MaterialButton', 16 | 'MaterialSpinner', 17 | 'MaterialTooltip', 18 | // 'MaterialCheckbox', 19 | // 'MaterialIconToggle', 20 | 'MaterialDataTable', 21 | // 'MaterialIconToggle', 22 | // 'MaterialLayout', 23 | // 'MaterialMenu', 24 | 'MaterialProgress', 25 | // 'MaterialRadio', 26 | 'MaterialRipple', 27 | // 'MaterialSlider', 28 | // 'MaterialSnackbar', 29 | // 'MaterialSwitch', 30 | 'MaterialTabs', 31 | // 'MaterialTextfield', 32 | ].forEach(function(v) { 33 | measureUpgradeDowngrade([], 0, driver, v); 34 | }); 35 | 36 | for (var i = 0; i < 3; ++i) { 37 | measureSnackbar(snackbarStamps, i, driver); 38 | } 39 | 40 | for (var i = 0; i < 3; ++i) { 41 | measureMenu(menuStamps, i, driver); 42 | } 43 | 44 | controlFlow.execute(function() { 45 | snackbarStamps.some(function(stamp) { 46 | assert.equal(true, stamp[0] <= stamp[1]); 47 | return true; 48 | }); 49 | 50 | menuStamps.some(function(stamp) { 51 | assert.equal(true, stamp[0] <= stamp[1]); 52 | return true; 53 | }); 54 | }); 55 | 56 | driver.quit(); 57 | -------------------------------------------------------------------------------- /test/memory/upgrade-downgrade.js: -------------------------------------------------------------------------------- 1 | var path = require('path'); 2 | var drool = require('drool'); 3 | var heapDiffPrinter = require('./utils.js').heapDiffPrinter; 4 | var webdriver = drool.webdriver; 5 | 6 | module.exports = function(stamps, i, driver, component) { 7 | drool.flow({ 8 | setup: function() { 9 | driver.get('file://' + path.join(__dirname, 'blank.html')); 10 | }, 11 | action: function() { 12 | driver.executeScript("(function() { var e = document.createElement('div');" + 13 | "componentHandler.upgradeElement(e, '"+ component + "');" + 14 | "componentHandler.downgradeElements(e);})()"); 15 | }, 16 | assert: function(after, initial) { 17 | heapDiffPrinter(after, initial, i, component); 18 | } 19 | }, driver); 20 | }; 21 | -------------------------------------------------------------------------------- /test/memory/utils.js: -------------------------------------------------------------------------------- 1 | var humanize = require('humanize'); 2 | 3 | module.exports = { 4 | heapDiffPrinter: function(after, initial, i, title) { 5 | console.log('**' + title + '** .. run: ' + (i + 1) + '\n'); 6 | console.log('node delta | heap delta | event listener'); 7 | console.log('--- | --- | --- |'); 8 | console.log((after.counts.nodes - initial.counts.nodes) + '|' + 9 | humanize.filesize(after.counts.jsHeapSizeUsed - initial.counts.jsHeapSizeUsed) + '|' + 10 | (after.counts.jsEventListeners - initial.counts.jsEventListeners) + '\n'); 11 | } 12 | }; 13 | -------------------------------------------------------------------------------- /test/unit/button.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | describe('MaterialButton', function () { 18 | 19 | it('should be globally available', function () { 20 | expect(MaterialButton).to.be.a('function'); 21 | }); 22 | 23 | it('should ugprade successfully', function () { 24 | var el = document.createElement('button'); 25 | componentHandler.upgradeElement(el, 'MaterialButton'); 26 | expect($(el)).to.have.data('upgraded', ',MaterialButton'); 27 | }); 28 | 29 | it('should be upgrade to a raised button with ripples successfully', function () { 30 | var el = document.createElement('div'); 31 | el.innerHTML = ''; 32 | var btn = el.firstChild; 33 | componentHandler.upgradeElement(btn, 'MaterialButton'); 34 | expect($(btn.childNodes[1])).to.have.class('mdl-button__ripple-container'); 35 | expect($(btn.childNodes[1].firstChild)).to.have.class('mdl-ripple'); 36 | }); 37 | 38 | it('should be upgrade to a FAB with ripples successfully', function () { 39 | var el = document.createElement('div'); 40 | el.innerHTML = ''; 41 | var btn = el.firstChild; 42 | componentHandler.upgradeElement(btn, 'MaterialButton'); 43 | expect($(btn.childNodes[1])).to.have.class('mdl-button__ripple-container'); 44 | expect($(btn.childNodes[1].firstChild)).to.have.class('mdl-ripple'); 45 | }); 46 | 47 | }); 48 | -------------------------------------------------------------------------------- /test/unit/icon-toggle.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | describe('MaterialIconToggle', function () { 18 | 19 | function createToggle() { 20 | var label = document.createElement('label'); 21 | var input = document.createElement('input'); 22 | var icon = document.createElement('i'); 23 | label.className = 'mdl-icon-toggle mdl-js-icon-toggle'; 24 | label.for = 'testIconToggle'; 25 | input.id = label.for; 26 | input.type = 'checkbox'; 27 | input.className = 'mdl-icon-toggle__input'; 28 | label.appendChild(input); 29 | icon.className = 'mdl-icon-toggle__label material-icons'; 30 | icon.text = 'format_bold'; 31 | label.appendChild(icon); 32 | return label; 33 | }; 34 | 35 | it('should be globally available', function () { 36 | expect(MaterialIconToggle).to.be.a('function'); 37 | }); 38 | 39 | it('should upgrade successfully', function () { 40 | var el = createToggle(); 41 | componentHandler.upgradeElement(el, 'MaterialIconToggle'); 42 | expect($(el)).to.have.data('upgraded', ',MaterialIconToggle'); 43 | }); 44 | 45 | }); 46 | -------------------------------------------------------------------------------- /test/unit/progress.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | describe('MaterialProgress', function () { 18 | 19 | it('should be globally available', function () { 20 | expect(MaterialProgress).to.be.a('function'); 21 | }); 22 | 23 | it('should upgrade successfully', function () { 24 | var el = document.createElement('div'); 25 | componentHandler.upgradeElement(el, 'MaterialProgress'); 26 | expect($(el)).to.have.data('upgraded', ',MaterialProgress'); 27 | }); 28 | 29 | it('should be a widget', function () { 30 | var el = document.createElement('div'); 31 | componentHandler.upgradeElement(el, 'MaterialProgress'); 32 | expect(el.MaterialProgress).to.be.a('object'); 33 | }); 34 | 35 | it('should have public methods available', function () { 36 | var el = document.createElement('div'); 37 | componentHandler.upgradeElement(el, 'MaterialProgress'); 38 | methods = [ 39 | 'setBuffer', 40 | 'setProgress' 41 | ]; 42 | methods.forEach(function(item) { 43 | expect(el.MaterialProgress[item]).to.be.a('function'); 44 | }); 45 | }); 46 | 47 | }); 48 | -------------------------------------------------------------------------------- /test/unit/ripple.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | describe('MaterialRipple', function () { 18 | 19 | it('should be globally available', function () { 20 | expect(MaterialRipple).to.be.a('function'); 21 | }); 22 | 23 | }); 24 | -------------------------------------------------------------------------------- /test/unit/slider.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | describe('MaterialSlider', function () { 18 | 19 | it('should be globally available', function () { 20 | expect(MaterialSlider).to.be.a('function'); 21 | }); 22 | 23 | it('should upgrade successfully', function () { 24 | var el = document.createElement('input'); 25 | el.type = 'range'; 26 | 27 | var parent = document.createElement('div'); 28 | parent.appendChild(el); 29 | 30 | componentHandler.upgradeElement(el, 'MaterialSlider'); 31 | expect($(el)).to.have.data('upgraded', ',MaterialSlider'); 32 | }); 33 | 34 | }); 35 | -------------------------------------------------------------------------------- /test/unit/tooltip.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright 2015 Google Inc. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | describe('MaterialTooltip', function () { 18 | 19 | it('should be globally available', function () { 20 | expect(MaterialTooltip).to.be.a('function'); 21 | }); 22 | 23 | it('should upgrade successfully', function () { 24 | var parent = document.createElement('div'); 25 | parent.innerHTML = '
'; 26 | document.body.appendChild(parent); 27 | 28 | var el = parent.querySelector('#tooltip'); 29 | componentHandler.upgradeElement(el, 'MaterialTooltip'); 30 | expect($(el)).to.have.data('upgraded', ',MaterialTooltip'); 31 | }); 32 | 33 | }); 34 | -------------------------------------------------------------------------------- /test/visual/style.css: -------------------------------------------------------------------------------- 1 | .demo-container { 2 | width: 100%; 3 | float: left; 4 | margin: 0 40px 40px 0; 5 | border: 1px solid #888888; 6 | position: relative; 7 | height: 500px; 8 | } 9 | 10 | iframe { 11 | width: auto; 12 | } 13 | 14 | .mdl-layout__content { 15 | padding: 10px; 16 | } 17 | -------------------------------------------------------------------------------- /test/visual/welcome.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Menu 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 |

Material Design Lite is a light-weight implementation of Material Design targeted at static content-sites. Select a component on the left to preview it.

19 |
20 | 21 | 22 | -------------------------------------------------------------------------------- /utils/uniffe.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Material Design Lite 4 | * Copyright 2015 Google Inc. All rights reserved. 5 | * 6 | * Licensed under the Apache License, Version 2.0 (the "License"); 7 | * you may not use this file except in compliance with the License. 8 | * You may obtain a copy of the License at 9 | * 10 | * https://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, software 13 | * distributed under the License is distributed on an "AS IS" BASIS, 14 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | * See the License for the specific language governing permissions and 16 | * limitations under the License 17 | * 18 | */ 19 | 'use strict'; 20 | 21 | var through = require('through2'); 22 | var escodegen = require('escodegen'); 23 | var acorn = require('acorn'); 24 | 25 | function uniffe(contents) { 26 | var comments = []; 27 | var tokens = []; 28 | 29 | var ast = acorn.parse(contents, { 30 | ranges: true, 31 | onComment: comments, 32 | onToken: tokens 33 | }); 34 | 35 | escodegen.attachComments(ast, comments, tokens); 36 | 37 | if (ast.body[0].expression === undefined || 38 | ast.body[0].expression.callee === undefined) { 39 | return contents; 40 | } 41 | 42 | var rootProgram = ast.body[0].expression.callee.body; 43 | 44 | rootProgram.type = 'Program'; 45 | // drop use strict 46 | rootProgram.body = rootProgram.body.slice(1); 47 | // attach all leading comments from outside iffe 48 | rootProgram.leadingComments = ast.body[0].leadingComments; 49 | 50 | return escodegen.generate(rootProgram, {comment: true}); 51 | } 52 | 53 | module.exports = function() { 54 | return through.obj(function(file, enc, cb) { 55 | if (file.isBuffer()) { 56 | file.contents = new Buffer(uniffe(file.contents.toString(enc)), enc); 57 | } 58 | 59 | cb(null, file); 60 | }); 61 | }; 62 | --------------------------------------------------------------------------------