restoring

This commit is contained in:
Pablo Henrique Penha Silva 2017-06-19 12:57:10 -03:00
commit b992c27a3b
1073 changed files with 81537 additions and 0 deletions

19
.babelrc Normal file
View file

@ -0,0 +1,19 @@
{
"presets": [
"es2015",
"es2017",
"stage-0",
[
"env",
{
"targets": {
"browsers": ["last 3 versions", "not IE < 10"]
}
}
]
],
"plugins": [
"transform-runtime",
"add-module-exports"
]
}

141
.eslintrc Normal file
View file

@ -0,0 +1,141 @@
{
"plugins": [
"html"
],
"ecmaFeatures": {
"arrowFunctions": true,
"destructuring": true,
"classes": true,
"defaultParams": true,
"blockBindings": true,
"modules": true,
"objectLiteralComputedProperties": true,
"objectLiteralShorthandMethods": true,
"objectLiteralShorthandProperties": true,
"restParams": true,
"spread": true,
"forOf": true,
"generators": true,
"templateStrings": true,
"superInFunctions": true,
"experimentalObjectRestSpread": true
},
"env": {
"browser": true,
"node": true
},
"globals": {
"arguments": true,
"window": true,
"Promise": true
},
"root": true,
"parserOptions": {
"sourceType": "module"
},
"parser": "babel-eslint",
"rules": {
"arrow-parens": 2,
"arrow-spacing": [2, {
"before": true,
"after": true
}],
"brace-style": [2, "1tbs", {
"allowSingleLine": false
}],
"comma-dangle": [1, "never"],
"comma-spacing": [1, {
"before": false,
"after": true
}],
"comma-style": [2, "last"],
"consistent-this": [2, "self"],
"constructor-super": 2,
"curly": 2,
"default-case": 2,
"dot-location": [2, "property"],
"eol-last": 2,
"eqeqeq": [2, "smart"],
"indent": [2, 2, {
"SwitchCase": 1
}],
"key-spacing": [1, {
"beforeColon": false,
"afterColon": true
}],
"max-nested-callbacks": [1, 4],
"new-cap": 1,
"new-parens": 1,
"newline-after-var": [2, "always"],
"no-array-constructor": 2,
"no-class-assign": 2,
"no-cond-assign": 2,
"no-const-assign": 2,
"no-constant-condition": 2,
"no-delete-var": 2,
"no-dupe-args": 2,
"no-dupe-class-members": 2,
"no-dupe-keys": 2,
"no-duplicate-case": 2,
"no-else-return": 1,
"no-empty": 2,
"no-eq-null": 2,
"no-eval": 2,
"no-ex-assign": 2,
"no-extend-native": 2,
"no-extra-boolean-cast": 2,
"no-extra-parens": 1,
"no-extra-semi": 2,
"no-floating-decimal": 2,
"no-func-assign": 2,
"no-implied-eval": 2,
"no-inner-declarations": 2,
"no-lonely-if": 2,
"no-loop-func": 2,
"no-mixed-spaces-and-tabs": 2,
"no-multi-spaces": 1,
"no-multi-str": 2,
"no-multiple-empty-lines": [1, {
"max": 2
}],
"no-negated-in-lhs": 2,
"no-nested-ternary": 2,
"no-new": 2,
"no-new-func": 2,
"no-new-object": 2,
"no-new-wrappers": 2,
"no-obj-calls": 2,
"no-redeclare": 2,
"no-script-url": 2,
"no-self-compare": 2,
"no-spaced-func": 1,
"no-sparse-arrays": 2,
"no-this-before-super": 2,
"no-trailing-spaces": 1,
"no-undef": 2,
"no-undef-init": 2,
"no-unexpected-multiline": 2,
"no-unneeded-ternary": 2,
"no-unreachable": 2,
"no-unused-vars": 1,
"no-use-before-define": 1,
"one-var": [2, "never"],
"quote-props": [1, "as-needed"],
"quotes": [2, "single"],
"radix": 2,
"semi": [2, "always"],
"semi-spacing": [1, {
"before": false,
"after": true
}],
"keyword-spacing": 2,
"space-before-blocks": 2,
"space-before-function-paren": [2, "never"],
"space-infix-ops": 2,
"space-unary-ops": 2,
"strict": 0,
"use-isnan": 2,
"wrap-regex": 2,
"yoda": [2, "never"]
}
}

66
.github/CONTRIBUTING.md vendored Normal file
View file

@ -0,0 +1,66 @@
# Vue Material Contributing Guide
Before submitting your contribution please read the guidelines.
- [Issue Reporting Guidelines](#issue-reporting-guidelines)
- [Pull Request Guidelines](#pull-request-guidelines)
- [Development Setup](#development-setup)
## Issue Reporting Guidelines
- Do not create questions. The issue list is exclusively for reports, bugs and feature requests. Use the [Gitter Channel]( https://gitter.im/vuematerial/questions) instead.
- Always search for your issue first. It may have already been answered, planned or fixed in some branch. New components and features will be planned on [Milestones](https://github.com/marcosmoura/vue-material/milestones) or on [Projects](https://github.com/marcosmoura/vue-material/projects).
- Only create issues for the newest version. For now. Until 1.0.0.
- Create a declarative title and describe clearly the steps necessary to reproduce the issue. If an issue labeled "need repro" receives no further input from the issue author for more than 3 days, it will be closed.
- If you want to show your code please use [Codepen](http://codepen.io/pen/) or [JSFiddle](https://jsfiddle.net/). You could start with [this template](http://codepen.io/vue-material/pen/WGavBE).
- In case you found a solution by yourself try to explain how you fixed it. It could be useful for somebody else. :)
## Pull Request Guidelines
- The `master` branch is basically just a snapshot of the latest stable release. All development should be done in dedicated branches. **Do not submit PRs against the `master` branch.**
- Work in the `src` or `docs` folder and **DO NOT** add `dist` in the commits.
- Make small commits as you work on the PR. They will be automatically squashed before merging.
- Provide convincing reason to add a new feature. Ideally you should open a suggestion/request issue first and have it greenlighted before working on it.
- If fixing a bug:
- If you are resolving a special issue, add the GitHub ID to your commit. E.g. `(fix something really ugly #xxx)`
- Provide detailed description of the bug in the PR.
## Development Setup
You will need [Node.js](http://nodejs.org) **version 6+**
After cloning the repo, run:
``` bash
$ npm install
```
### Commonly used NPM scripts
``` bash
### Start dev server with hot reload
npm run dev
### Check for errors
npm run lint
### Build everything
npm run build
### Build docs only
npm run build:docs
### Build lib only
npm run build:lib
```
The other tasks on package.json **SHOULD NOT** be executed.

45
.github/ISSUE_TEMPLATE.md vendored Normal file
View file

@ -0,0 +1,45 @@
<!--
Reporting a bug?
================
- Always search for your issue first. It may have already been answered, planned or fixed in some branch.
- Make sure to only create issues for the newest version.
- Create a declarative title and describe clearly the steps necessary to reproduce the issue. If an issue labeled "need repro" receives no further input from the issue author for more than 3 days, it will be closed.
- If you want to show your code please use [Codepen](http://codepen.io/pen/) or [JSFiddle](https://jsfiddle.net/). You could start with [this template](http://codepen.io/vue-material/pen/WGavBE).
- In case you found a solution by yourself, it could be helpful to explain how you fixed it.
- For bugs that involves build setups, you can create a reproduction repository with steps in the README.
- If your issue is resolved but still open, dont hesitate to close it. In case you found a solution by yourself, it could be helpful to explain how you fixed it.
Have a feature request?
=======================
- Remove the template from below and provide thoughtful commentary.
- Answer those questions:
- What will it allow you to do that you can't do today?
- How will it make current work-arounds straightforward?
- What potential bugs and edge cases does it help to avoid?
Do not create new features based on a problem that will only solve edge cases for your project. Remember that Vue Material aims to be lightweight and clean. :)
-->
<!-- BUG REPORT TEMPLATE -->
### Steps to reproduce
### Which browser?
<!-- Which versions of Vue, Vue Material, OS, browsers are affected? -->
### What is expected?
### What is actually happening?
<!-- Is there anything else we should know? -->
### Reproduction Link
<!-- If you want to show your code please use Codepen or JSFiddle. -->
<!-- You could start with this template: http://codepen.io/vue-material/pen/WGavBE. -->

4
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View file

@ -0,0 +1,4 @@
<!--
Please make sure to read the Pull Request Guidelines:
https://github.com/marcosmoura/vue-material/blob/master/.github/CONTRIBUTING.md#pull-request-guidelines
-->

4
.gitignore vendored Normal file
View file

@ -0,0 +1,4 @@
.DS_Store
node_modules/
npm-debug.log
nbproject

128
README.md Normal file
View file

@ -0,0 +1,128 @@
<p align="center">
<a href="https://vuematerial.github.io/" target="_blank">
<img width="150" src="https://vuematerial.github.io/assets/logo-vue-material-default.png">
</a>
</p>
<p align="center">Material Design for Vue.js</p>
<p align="center">
<a href="https://www.npmjs.com/package/vue-material">
<img src="https://img.shields.io/npm/dt/vue-material.svg" alt="Downloads">
</a>
<a href="https://www.npmjs.com/package/vue-material">
<img src="https://img.shields.io/npm/v/vue-material.svg" alt="Version">
</a>
<a href="https://cdnjs.com/libraries/vue-material">
<img src="https://img.shields.io/cdnjs/v/vue-material.svg" alt="Version">
</a>
<a href="https://cdnjs.com/libraries/vue-material">
<img src="https://img.shields.io/cdnjs/v/vue-material.svg" alt="Version">
</a>
<a href="https://www.npmjs.com/package/vue-material">
<img src="https://img.shields.io/npm/l/vue-material.svg" alt="License">
</a>
<a href="https://gitter.im/vuematerial">
<img src="https://img.shields.io/gitter/room/vuematerial/home.svg" alt="Gitter Chat">
</a>
</p>
Vue Material is lightweight framework built exactly according to the <a href="http://material.google.com" target="_blank">Material Design</a> specs.
It aims to deliver a collection of reusable components and a series of UI Elements to build applications with support to all modern Web Browsers through Vue 2.
Build powerful and well-designed web apps that can fit on every screen. You can generate and use themes dynamically, use components on demand, take advantage of UI Elements and Components with an ease-to-use API.
## Demo and Documentation
<a href="https://vuematerial.github.io/" target="_blank">Demo</a>
## Installation
Import Roboto and Material Icons from Google CDN:
``` html
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:300,400,500,700,400italic">
<link rel="stylesheet" href="//fonts.googleapis.com/icon?family=Material+Icons">
```
Install Vue Material through npm or yarn
``` bash
npm install --save vue-material
yarn add vue-material
```
<small>* Others package managers like JSPM and Bower are not supported yet.</small>
Import or require Vue and Vue Material in your code:
``` javascript
import Vue from 'vue'
import VueMaterial from 'vue-material'
import 'vue-material/dist/vue-material.css'
// OR
var Vue = require('vue')
var VueMaterial = require('vue-material')
require('vue-material/dist/vue-material.css')
```
Alternativelly you can <a href="https://github.com/marcosmoura/vue-material/archive/master.zip" target="_blank" rel="noopener">download</a> and reference the script and the stylesheet in your HTML:
``` html
<link rel="stylesheet" href="path/to/vue-material.css">
<script src="path/to/vue-material.js"></script>
```
## Usage
Enable Vue Material in your application using ```Vue.use()```. You can always enable individual components:
``` javascript
Vue.use(VueMaterial)
// OR
Vue.use(VueMaterial.MdCore) //Required to boot vue material
Vue.use(VueMaterial.MdButton)
Vue.use(VueMaterial.MdIcon)
Vue.use(VueMaterial.MdSidenav)
Vue.use(VueMaterial.MdToolbar)
```
## Changelog
<a href="https://vuematerial.github.io/#/changelog" target="_blank">Changelog</a>
## Questions
The issue list is exclusively for reports, bugs and feature requests. Use the [Gitter Channel]( https://gitter.im/vuematerial) instead.
## Contributing
Please make sure to read the [Contributing Guide](https://github.com/marcosmoura/vue-material/blob/master/.github/CONTRIBUTING.md) before making a pull request.
## Browser Support
Vue Material supports the latest version of all Browsers. This means:
* Google Chrome 52+
* Firefox 48+
* Safari 9+
* Opera 38+
* Edge 12+
* IE 11
<small>May work in other browsers but it's untested.</small>
## Credits and Thanks
* This library aims to delivery components using almost the same API of <a href="https://material.angularjs.org/latest/" target="_blank">Angular Material</a>
* Thanks a lot to <a href="https://github.com/elviskang" target="_blank">elviskang</a> for donating the npm package name!
* Thanks to <a href="https://github.com/yyx990803" target="_blank">Evan You</a> for allowing me to use Vue.js Logo.
## Internal Dependencies
You don't need to include any other library to work with vue-material. The focus of this project is to have a standalone build with no external dependence, but aiming to deliver the best experience without break the compatibility with the Vue.js core.
* <a href="http://vuejs.org" target="_blank">vue</a>
* <a href="http://www.jacklmoore.com/autosize/" target="_blank">autosize</a>
* <a href="https://www.npmjs.com/package/element.scrollintoviewifneeded-polyfill" target="_blank">element.scrollintoviewifneeded-polyfill</a>
## License
MIT

35
build/config.js Normal file
View file

@ -0,0 +1,35 @@
import path from 'path';
const config = {
projectRoot: path.join(__dirname, '../'),
rootPath: path.join(__dirname, '../dist'),
nodePath: path.join(__dirname, '../node_modules'),
srcPath: 'src',
docsPath: 'docs',
indexPath: 'docs/index.html',
publicPath: '/',
assetsPath: 'docs/src/assets'
};
let dev = {
server: {
port: process.env.PORT || '8080'
},
env: {
NODE_ENV: '"development"'
}
};
let prod = {
env: {
NODE_ENV: '"production"'
}
};
if (config.env === 'production') {
Object.assign(config, prod);
} else {
Object.assign(config, dev);
}
export default config;

62
build/release.sh Normal file
View file

@ -0,0 +1,62 @@
# Based on Vue.js Release file
# https://github.com/vuejs/vue/blob/dev/build/release.sh
set -e
function get_package_version {
echo $(cat package.json \
| grep version \
| head -1 \
| awk -F: '{ print $2 }' \
| sed 's/[",]//g')
}
# init the process
if [[ -z $1 ]]; then
echo "Enter new version: "
read VERSION
else
VERSION=$1
fi
read -p "Releasing $VERSION - are you sure? (y/n) " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
echo "Releasing $VERSION ..."
# check errors
npm run lint
# generate old docs tree
PACKAGE_VERSION=$(get_package_version)
cp -Rf dist/docs/releases tmp-releases
cp -Rf dist/docs tmp-releases/v$PACKAGE_VERSION
rm -Rf tmp-releases/v$PACKAGE_VERSION/releases
# append version
sed -i '' -e "s|\"]|\", \"$VERSION\"]|g" docs/versions.json
# build
VERSION=$VERSION npm run build
cp -Rf tmp-releases dist/docs/releases
rm -Rf tmp-releases
# commit
git add -A
git commit -m "[build] $VERSION"
npm version $VERSION --message "[release] $VERSION"
# publish
git push origin refs/tags/v$VERSION
git push
# deploy
if [ "`git remote| grep site`" == "site" ] ; then
git remote remove site
fi
git remote add site https://github.com/vuematerial/vuematerial.github.io.git
git push site `git subtree split --prefix dist/docs master`:master --force --progress
npm publish
fi

View file

@ -0,0 +1,27 @@
import ora from 'ora';
import chalk from 'chalk';
import webpack from 'webpack';
import webpackConfig from '../webpack/prod-docs';
const spinner = ora(chalk.cyan('Building website'));
process.stdout.write('\n');
spinner.start();
webpack(webpackConfig, (error, stats) => {
if (error) {
spinner.fail(chalk.red('Something wrong happened:\n'));
throw error;
}
process.stdout.write('\n\n' + stats.toString({
colors: true,
modules: false,
children: false,
chunks: false,
chunkModules: false
}) + '\n\n');
spinner.succeed(chalk.green('Documentation builded with success!\n'));
});

28
build/server/build-lib.js Normal file
View file

@ -0,0 +1,28 @@
import ora from 'ora';
import chalk from 'chalk';
import webpack from 'webpack';
import webpackConfig from '../webpack/prod-lib';
import webpackDebugConfig from '../webpack/debug-lib';
const spinner = ora(chalk.cyan('Building library'));
process.stdout.write('\n');
spinner.start();
webpack([webpackConfig, webpackDebugConfig], (error, stats) => {
if (error) {
spinner.fail(chalk.red('Something wrong happened:\n'));
throw error;
}
process.stdout.write('\n\n' + stats.toString({
colors: true,
modules: false,
children: false,
chunks: false,
chunkModules: false
}) + '\n\n');
spinner.succeed(chalk.green('Build finished with success!\n'));
});

49
build/server/index.js Normal file
View file

@ -0,0 +1,49 @@
import path from 'path';
import express from 'express';
import chalk from 'chalk';
import webpack from 'webpack';
import devMiddleware from 'webpack-dev-middleware';
import hotMiddleware from 'webpack-hot-middleware';
import historyApiFallback from 'connect-history-api-fallback';
import config from '../config';
import webpackConfig from '../webpack/dev';
const app = express();
const compiler = webpack(webpackConfig);
const rootPath = path.join(__dirname, '..', '..');
const devMiddlewareInstance = devMiddleware(compiler, {
quiet: true,
publicPath: config.publicPath,
index: config.indexPath
});
const hotMiddlewareInstance = hotMiddleware(compiler, {
log() { }
});
compiler.plugin('compilation', (compilation) => {
compilation.plugin('html-webpack-plugin-after-emit', (data, done) => {
hotMiddlewareInstance.publish({ action: 'reload' });
done();
});
});
app.use(historyApiFallback());
app.use(devMiddlewareInstance);
app.use(hotMiddlewareInstance);
app.use('/', express.static(path.join(rootPath, config.docsPath)));
app.use('/assets', express.static(path.join(rootPath, config.assetsPath)));
devMiddlewareInstance.waitUntilValid(() => {
let uri = 'http://localhost:' + config.server.port;
console.log(chalk.blue('> Listening at ' + uri + '\n'));
});
export default app.listen(config.server.port, (error) => {
if (error) {
console.log(chalk.red(error));
return;
}
});

69
build/webpack/base.js Normal file
View file

@ -0,0 +1,69 @@
import path from 'path';
import webpack from 'webpack';
import eslintFormatter from 'eslint-friendly-formatter';
import config from '../config';
const resolvePath = (dir) => {
return path.resolve(__dirname, '..', '..', dir);
};
export default {
entry: {
docs: './docs/src/index.js'
},
output: {
path: config.rootPath,
publicPath: config.publicPath,
filename: '[name].js'
},
resolve: {
extensions: ['.js', '.vue', '.json'],
alias: {
assets: resolvePath('docs/src/assets')
}
},
module: {
rules: [
{
test: /\.(js|vue)$/,
loader: 'eslint-loader',
enforce: 'pre',
include: [
resolvePath('build'),
resolvePath('src'),
resolvePath('docs')
],
options: {
fix: true,
formatter: eslintFormatter
}
},
{
test: /\.js$/,
loader: 'babel-loader',
include: [
resolvePath('build'),
resolvePath('src'),
resolvePath('docs')
]
},
{
test: /\.theme$/,
use: ['raw-loader', 'sass-loader']
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
query: {
limit: 10000,
name: '/assets/[name].[hash:8].[ext]'
}
}
]
},
plugins: [
new webpack.DefinePlugin({
'process.env': config.env
})
]
};

View file

@ -0,0 +1,18 @@
import merge from 'webpack-merge';
import ExtractTextPlugin from 'extract-text-webpack-plugin';
import OptimizeJsPlugin from 'optimize-js-plugin';
import prodConfig from './prod-lib';
const devConfig = merge(prodConfig, {
output: {
filename: '[name].debug.js'
},
devtool: 'source-map'
});
devConfig.plugins = [
new OptimizeJsPlugin(),
new ExtractTextPlugin('[name].css')
];
export default devConfig;

47
build/webpack/dev.js Normal file
View file

@ -0,0 +1,47 @@
import webpack from 'webpack';
import merge from 'webpack-merge';
import HtmlWebpackPlugin from 'html-webpack-plugin';
import FriendlyErrorsPlugin from 'friendly-errors-webpack-plugin';
import baseWebpackConfig from './base';
import config from '../config';
Object.keys(baseWebpackConfig.entry).forEach((name) => {
baseWebpackConfig.entry[name] = ['./build/server/client', ...[baseWebpackConfig.entry[name]]];
});
export default merge(baseWebpackConfig, {
devtool: '#cheap-module-eval-source-map',
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
loaders: {
css: 'vue-style-loader!css-loader',
scss: 'vue-style-loader!css-loader!sass-loader'
}
}
},
{
test: /\.css$/,
use: ['vue-style-loader', 'css-loader']
},
{
test: /\.scss$/,
use: ['vue-style-loader', 'css-loader', 'sass-loader']
}
]
},
plugins: [
new webpack.WatchIgnorePlugin([config.nodePath]),
new webpack.HotModuleReplacementPlugin(),
new webpack.NoEmitOnErrorsPlugin(),
new HtmlWebpackPlugin({
filename: 'index.html',
template: 'docs/index.html',
inject: true
}),
new FriendlyErrorsPlugin()
]
});

152
build/webpack/prod-docs.js Normal file
View file

@ -0,0 +1,152 @@
import webpack from 'webpack';
import path from 'path';
import merge from 'webpack-merge';
import autoprefixer from 'autoprefixer';
import ExtractTextPlugin from 'extract-text-webpack-plugin';
import CopyWebpackPlugin from 'copy-webpack-plugin';
import HtmlWebpackPlugin from 'html-webpack-plugin';
import OptimizeJsPlugin from 'optimize-js-plugin';
import OptimizeCssAssetsPlugin from 'optimize-css-assets-webpack-plugin';
import mediaPacker from 'css-mqpacker';
import config from '../config';
import baseConfig from './base';
const docsPath = path.join(config.rootPath, config.docsPath);
const conf = merge(baseConfig, {
output: {
path: docsPath,
publicPath: '',
filename: '[name].[chunkhash:8].js',
chunkFilename: '[name].[chunkhash:8].js'
},
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
loaders: {
css: ExtractTextPlugin.extract({
use: 'css-loader',
fallback: 'vue-style-loader'
}),
scss: ExtractTextPlugin.extract({
use: 'css-loader!sass-loader',
fallback: 'vue-style-loader'
})
},
postcss: [
autoprefixer({
browsers: ['last 3 versions', 'not IE < 10']
}),
mediaPacker()
]
}
},
{
test: /\.css$/,
loader: ExtractTextPlugin.extract({
use: 'css-loader',
fallback: 'vue-style-loader'
})
},
{
test: /\.scss$/,
loader: ExtractTextPlugin.extract({
use: 'css-loader!sass-loader',
fallback: 'vue-style-loader'
})
}
]
},
plugins: [
new webpack.LoaderOptionsPlugin({
minimize: true,
debug: true
}),
new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false,
screw_ie8: true,
conditionals: true,
unused: true,
comparisons: true,
sequences: true,
dead_code: true,
evaluate: true,
join_vars: true,
if_return: true
},
output: {
comments: false
},
sourceMap: false
}),
new OptimizeJsPlugin({
sourceMap: false
}),
new ExtractTextPlugin('[name].[contenthash:8].css'),
new CopyWebpackPlugin([
{
context: config.assetsPath,
from: '**/*',
to: path.join(docsPath, 'assets')
},
{
context: config.docsPath,
from: 'changelog.html',
to: docsPath
},
{
context: config.docsPath,
from: 'versions.json',
to: docsPath
}
]),
new HtmlWebpackPlugin({
filename: 'index.html',
template: config.indexPath,
inject: true,
minify: {
caseSensitive: true,
collapseBooleanAttributes: true,
collapseWhitespace: true,
minifyCSS: true,
minifyJS: true,
preventAttributesEscaping: true,
removeAttributeQuotes: true,
removeComments: true,
removeCommentsFromCDATA: true,
removeEmptyAttributes: true,
removeOptionalTags: true,
removeRedundantAttributes: true,
removeScriptTypeAttributes: true,
removeStyleLinkTypeAttributes: true,
useShortDoctype: true
},
chunksSortMode: 'dependency'
}),
new webpack.optimize.CommonsChunkPlugin({
name: 'vendor',
minChunks(module) {
let resource = module.resource;
if (resource && (/\.js$/).test(resource)) {
return resource.indexOf(config.nodePath) >= 0;
}
return false;
}
}),
new webpack.optimize.CommonsChunkPlugin({
name: 'manifest',
chunks: ['vendor']
}),
new OptimizeCssAssetsPlugin({
canPrint: false
})
]
});
export default conf;

129
build/webpack/prod-lib.js Normal file
View file

@ -0,0 +1,129 @@
import fs from 'fs';
import path from 'path';
import webpack from 'webpack';
import merge from 'webpack-merge';
import autoprefixer from 'autoprefixer';
import ExtractTextPlugin from 'extract-text-webpack-plugin';
import OptimizeJsPlugin from 'optimize-js-plugin';
import OptimizeCssAssetsPlugin from 'optimize-css-assets-webpack-plugin';
import mediaPacker from 'css-mqpacker';
import config from '../config';
import baseConfig from './base';
const version = process.env.VERSION || require('../../package.json').version;
function getDirectories(src) {
return fs.readdirSync(src).filter((file) => {
return fs.statSync(path.join(src, file)).isDirectory();
});
}
const componentsPath = 'src/components';
const components = getDirectories(path.resolve(__dirname, '../../', componentsPath));
baseConfig.entry = {
'vue-material': ['./src/index.js'],
'components/mdCore/index': ['./src/core']
};
components.forEach((component) => {
baseConfig.entry[path.join('components', component, 'index')] = ['./' + path.join(componentsPath, component)];
});
export default merge(baseConfig, {
output: {
path: config.rootPath,
filename: '[name].js',
library: 'VueMaterial',
libraryTarget: 'umd'
},
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
loaders: {
css: ExtractTextPlugin.extract({
use: 'css-loader',
fallback: 'vue-style-loader'
}),
scss: ExtractTextPlugin.extract({
use: 'css-loader!sass-loader',
fallback: 'vue-style-loader'
})
},
postcss: [
autoprefixer({
browsers: ['last 3 versions', 'not IE < 10']
}),
mediaPacker()
]
}
},
{
test: /\.css$/,
loader: ExtractTextPlugin.extract({
use: 'css-loader',
fallback: 'vue-style-loader'
})
},
{
test: /\.scss$/,
loader: ExtractTextPlugin.extract({
use: 'css-loader!sass-loader',
fallback: 'vue-style-loader'
})
}
]
},
externals: {
vue: {
commonjs: 'vue',
commonjs2: 'vue',
amd: 'vue',
root: 'Vue',
var: 'Vue'
}
},
plugins: [
new webpack.LoaderOptionsPlugin({
minimize: true,
debug: false
}),
new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false,
screw_ie8: true,
conditionals: true,
unused: true,
comparisons: true,
sequences: true,
dead_code: true,
evaluate: true,
join_vars: true,
if_return: true
},
output: {
comments: false
},
sourceMap: false
}),
new OptimizeJsPlugin({
sourceMap: false
}),
new webpack.BannerPlugin({
banner: `/*!
* Vue Material v${version}
* Made with love by Marcos Moura
* Released under the MIT License.
*/ `,
raw: true,
entryOnly: true
}),
new ExtractTextPlugin('[name].css'),
new OptimizeCssAssetsPlugin({
canPrint: false
})
]
});

5
dist/components/mdAvatar/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-avatar{width:40px;min-width:40px;height:40px;min-height:40px;margin:auto;display:inline-block;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;border-radius:40px;vertical-align:middle}.md-avatar.md-large{width:64px;min-width:64px;height:64px;min-height:64px;border-radius:64px}.md-avatar.md-large .md-icon{width:40px;min-width:40px;height:40px;min-height:40px;font-size:40px;line-height:40px}.md-avatar.md-avatar-icon{background-color:rgba(0,0,0,.38)}.md-avatar.md-avatar-icon .md-icon{color:#fff}.md-avatar .md-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.md-avatar img{width:100%;height:100%;display:block}.md-avatar .md-ink-ripple{border-radius:50%}.md-avatar .md-ink-ripple .md-ripple.md-active{animation-duration:.9s}.md-avatar-tooltip.md-tooltip-top{margin-top:-8px}.md-avatar-tooltip.md-tooltip-right{margin-left:8px}.md-avatar-tooltip.md-tooltip-bottom{margin-top:8px}.md-avatar-tooltip.md-tooltip-left{margin-left:-8px}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdAvatar/index.css","sourceRoot":""}

339
dist/components/mdAvatar/index.debug.js vendored Normal file
View file

@ -0,0 +1,339 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 397);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 1:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = {
props: {
mdTheme: String
},
data: function data() {
return {
closestThemedParent: false
};
},
methods: {
getClosestThemedParent: function getClosestThemedParent($parent) {
if (!$parent || !$parent.$el || $parent._uid === 0) {
return false;
}
if ($parent.mdTheme || $parent.mdName) {
return $parent;
}
return this.getClosestThemedParent($parent.$parent);
}
},
computed: {
themeClass: function themeClass() {
if (this.mdTheme) {
return 'md-theme-' + this.mdTheme;
}
var theme = this.closestThemedParent.mdTheme;
if (!theme) {
if (this.closestThemedParent) {
theme = this.closestThemedParent.mdName;
} else {
theme = this.$material.currentTheme;
}
}
return 'md-theme-' + theme;
}
},
mounted: function mounted() {
this.closestThemedParent = this.getClosestThemedParent(this.$parent);
if (!this.$material.currentTheme) {
this.$material.setCurrentTheme('default');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 131:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mixin = __webpack_require__(1);
var _mixin2 = _interopRequireDefault(_mixin);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
mixins: [_mixin2.default]
}; //
//
//
//
//
//
//
//
module.exports = exports['default'];
/***/ }),
/***/ 215:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 233:
/***/ (function(module, exports) {
module.exports = ".THEME_NAME.md-avatar.md-primary.md-avatar-icon {\n background-color: PRIMARY-COLOR; }\n .THEME_NAME.md-avatar.md-primary.md-avatar-icon .md-icon {\n color: PRIMARY-CONTRAST-0.99999; }\n\n.THEME_NAME.md-avatar.md-accent.md-avatar-icon {\n background-color: ACCENT-COLOR; }\n .THEME_NAME.md-avatar.md-accent.md-avatar-icon .md-icon {\n color: ACCENT-CONTRAST-0.99999; }\n\n.THEME_NAME.md-avatar.md-warn.md-avatar-icon {\n background-color: WARN-COLOR; }\n .THEME_NAME.md-avatar.md-warn.md-avatar-icon .md-icon {\n color: WARN-CONTRAST-0.99999; }\n"
/***/ }),
/***/ 260:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(215)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(131),
/* template */
__webpack_require__(364),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdAvatar/mdAvatar.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdAvatar.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-4fb5ecf8", Component.options)
} else {
hotAPI.reload("data-v-4fb5ecf8", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 364:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-avatar",
class: [_vm.themeClass]
}, [_vm._t("default")], 2)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-4fb5ecf8", module.exports)
}
}
/***/ }),
/***/ 397:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(90);
/***/ }),
/***/ 90:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdAvatar = __webpack_require__(260);
var _mdAvatar2 = _interopRequireDefault(_mdAvatar);
var _mdAvatar3 = __webpack_require__(233);
var _mdAvatar4 = _interopRequireDefault(_mdAvatar3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-avatar', _mdAvatar2.default);
Vue.material.styles.push(_mdAvatar4.default);
}
module.exports = exports['default'];
/***/ })
/******/ });
}));

6
dist/components/mdAvatar/index.js vendored Normal file
View file

@ -0,0 +1,6 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/
!(function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VueMaterial=t():e.VueMaterial=t()})(this,(function(){return (function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var r={};return t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s=397)})({0:function(e,t){e.exports=function(e,t,r,n){var o,a=e=e||{},u=typeof e.default;"object"!==u&&"function"!==u||(o=e,a=e.default);var d="function"==typeof a?a.options:a;if(t&&(d.render=t.render,d.staticRenderFns=t.staticRenderFns),r&&(d._scopeId=r),n){var c=d.computed||(d.computed={});Object.keys(n).forEach((function(e){var t=n[e];c[e]=function(){return t}}))}return{esModule:o,exports:a,options:d}}},1:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={props:{mdTheme:String},data:function(){return{closestThemedParent:!1}},methods:{getClosestThemedParent:function(e){return!(!e||!e.$el||0===e._uid)&&(e.mdTheme||e.mdName?e:this.getClosestThemedParent(e.$parent))}},computed:{themeClass:function(){if(this.mdTheme)return"md-theme-"+this.mdTheme;var e=this.closestThemedParent.mdTheme;return e||(e=this.closestThemedParent?this.closestThemedParent.mdName:this.$material.currentTheme),"md-theme-"+e}},mounted:function(){this.closestThemedParent=this.getClosestThemedParent(this.$parent),this.$material.currentTheme||this.$material.setCurrentTheme("default")}},e.exports=t.default},131:function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),a=n(o);t.default={mixins:[a.default]},e.exports=t.default},215:function(e,t){},233:function(e,t){e.exports=".THEME_NAME.md-avatar.md-primary.md-avatar-icon{background-color:PRIMARY-COLOR}.THEME_NAME.md-avatar.md-primary.md-avatar-icon .md-icon{color:PRIMARY-CONTRAST-0.99999}.THEME_NAME.md-avatar.md-accent.md-avatar-icon{background-color:ACCENT-COLOR}.THEME_NAME.md-avatar.md-accent.md-avatar-icon .md-icon{color:ACCENT-CONTRAST-0.99999}.THEME_NAME.md-avatar.md-warn.md-avatar-icon{background-color:WARN-COLOR}.THEME_NAME.md-avatar.md-warn.md-avatar-icon .md-icon{color:WARN-CONTRAST-0.99999}\n"},260:function(e,t,r){r(215);var n=r(0)(r(131),r(364),null,null);e.exports=n.exports},364:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{staticClass:"md-avatar",class:[e.themeClass]},[e._t("default")],2)},staticRenderFns:[]}},397:function(e,t,r){e.exports=r(90)},90:function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e){e.component("md-avatar",u.default),e.material.styles.push(c.default)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o;var a=r(260),u=n(a),d=r(233),c=n(d);e.exports=t.default}})}));

5
dist/components/mdBackdrop/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background-color:rgba(0,0,0,.54);transform:translateZ(0);opacity:0;transition:all .5s cubic-bezier(.35,0,.25,1)}.md-backdrop.md-active{opacity:1;pointer-events:auto}.md-backdrop.md-transparent{background:rgba(0,0,0,.005)}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdBackdrop/index.css","sourceRoot":""}

View file

@ -0,0 +1,266 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 398);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 132:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
//
//
//
//
//
//
exports.default = {
methods: {
close: function close() {
this.$emit('close');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 232:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 261:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(232)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(132),
/* template */
__webpack_require__(393),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdBackdrop/mdBackdrop.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdBackdrop.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-e09d01b8", Component.options)
} else {
hotAPI.reload("data-v-e09d01b8", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 393:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-backdrop",
on: {
"click": _vm.close,
"keyup": function($event) {
if (_vm._k($event.keyCode, "esc", 27)) { return; }
_vm.close($event)
}
}
})
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-e09d01b8", module.exports)
}
}
/***/ }),
/***/ 398:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(91);
/***/ }),
/***/ 91:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdBackdrop = __webpack_require__(261);
var _mdBackdrop2 = _interopRequireDefault(_mdBackdrop);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-backdrop', _mdBackdrop2.default);
}
module.exports = exports['default'];
/***/ })
/******/ });
}));

6
dist/components/mdBackdrop/index.js vendored Normal file
View file

@ -0,0 +1,6 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/
!(function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VueMaterial=t():e.VueMaterial=t()})(this,(function(){return (function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s=398)})({0:function(e,t){e.exports=function(e,t,n,o){var r,u=e=e||{},c=typeof e.default;"object"!==c&&"function"!==c||(r=e,u=e.default);var i="function"==typeof u?u.options:u;if(t&&(i.render=t.render,i.staticRenderFns=t.staticRenderFns),n&&(i._scopeId=n),o){var f=i.computed||(i.computed={});Object.keys(o).forEach((function(e){var t=o[e];f[e]=function(){return t}}))}return{esModule:r,exports:u,options:i}}},132:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={methods:{close:function(){this.$emit("close")}}},e.exports=t.default},232:function(e,t){},261:function(e,t,n){n(232);var o=n(0)(n(132),n(393),null,null);e.exports=o.exports},393:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-backdrop",on:{click:e.close,keyup:function(t){e._k(t.keyCode,"esc",27)||e.close(t)}}})},staticRenderFns:[]}},398:function(e,t,n){e.exports=n(91)},91:function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){e.component("md-backdrop",c.default)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var u=n(261),c=o(u);e.exports=t.default}})}));

5
dist/components/mdBottomBar/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-bottom-bar{width:100%;min-width:100%;height:56px;-ms-flex-pack:center;justify-content:center;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-bottom-bar,.md-bottom-bar-item{position:relative;display:-ms-flexbox;display:flex}.md-bottom-bar-item{max-width:168px;min-width:80px;height:100%;padding:8px 12px 10px;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;-ms-flex:1;flex:1;cursor:pointer;border:none;background:transparent;transform:translateZ(0);color:currentColor;font-family:inherit;font-size:14px;line-height:1em;text-decoration:none}.md-bottom-bar-item.md-active{padding-top:6px}.md-bottom-bar-item.md-active .md-text{transform:scale(1) translateZ(0)}.md-bottom-bar-item.md-active .md-icon,.md-bottom-bar-item.md-active .md-text{color:currentColor}.md-bottom-bar-item[disabled]{opacity:.38}.md-bottom-bar.md-shift .md-bottom-bar-item{min-width:56px;max-width:96px;position:static;-ms-flex:1 1 32px;flex:1 1 32px;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:flex,min-width,max-width;transition-property:flex,min-width,max-width,-ms-flex}.md-bottom-bar.md-shift .md-bottom-bar-item .md-icon{transform:translate3d(0,8px,0)}.md-bottom-bar.md-shift .md-bottom-bar-item .md-text{opacity:0;transform:scale(1) translate3d(0,6px,0)}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active{min-width:96px;max-width:168px;-ms-flex:1 1 72px;flex:1 1 72px}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-icon,.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-text{opacity:1}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-icon{transform:scale(1) translateZ(0)}.md-bottom-bar.md-shift .md-bottom-bar-item.md-active .md-text{transform:scale(1) translate3d(0,2px,0)}.md-bottom-bar-item .md-text{transform:scale(.8571) translateY(2px);transition:all .4s cubic-bezier(.25,.8,.25,1),color .15s linear,opacity .15s linear}.md-bottom-bar-item .md-icon{transition:all .4s cubic-bezier(.25,.8,.25,1),color .15s linear}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdBottomBar/index.css","sourceRoot":""}

View file

@ -0,0 +1,540 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 399);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 1:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = {
props: {
mdTheme: String
},
data: function data() {
return {
closestThemedParent: false
};
},
methods: {
getClosestThemedParent: function getClosestThemedParent($parent) {
if (!$parent || !$parent.$el || $parent._uid === 0) {
return false;
}
if ($parent.mdTheme || $parent.mdName) {
return $parent;
}
return this.getClosestThemedParent($parent.$parent);
}
},
computed: {
themeClass: function themeClass() {
if (this.mdTheme) {
return 'md-theme-' + this.mdTheme;
}
var theme = this.closestThemedParent.mdTheme;
if (!theme) {
if (this.closestThemedParent) {
theme = this.closestThemedParent.mdName;
} else {
theme = this.$material.currentTheme;
}
}
return 'md-theme-' + theme;
}
},
mounted: function mounted() {
this.closestThemedParent = this.getClosestThemedParent(this.$parent);
if (!this.$material.currentTheme) {
this.$material.setCurrentTheme('default');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 133:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mixin = __webpack_require__(1);
var _mixin2 = _interopRequireDefault(_mixin);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
props: {
mdShift: Boolean
},
mixins: [_mixin2.default],
computed: {
classes: function classes() {
return this.mdShift ? 'md-shift' : 'md-fixed';
}
},
methods: {
setActive: function setActive(item) {
this.$children.forEach((function (child) {
child.active = child === item;
}));
this.$emit('change', this.$children.findIndex((function (i) {
return i === item;
})));
}
}
}; //
//
//
//
//
//
//
//
module.exports = exports['default'];
/***/ }),
/***/ 134:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
exports.default = {
props: {
mdIcon: String,
mdIconSrc: String,
mdIconset: String,
mdActive: Boolean,
disabled: String,
href: String
},
data: function data() {
return {
active: false
};
},
computed: {
classes: function classes() {
return {
'md-active': this.active
};
}
},
watch: {
mdActive: function mdActive(active) {
this.setActive(active);
}
},
methods: {
setActive: function setActive(active) {
if (active) {
this.$parent.setActive(this);
}
}
},
mounted: function mounted() {
if (!this.$parent.$el.classList.contains('md-bottom-bar')) {
this.$destroy();
throw new Error('You should wrap the md-bottom-bar-item in a md-bottom-bar');
}
if (this.mdActive) {
this.active = true;
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 205:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 234:
/***/ (function(module, exports) {
module.exports = ".THEME_NAME.md-bottom-bar.md-fixed {\n background-color: BACKGROUND-COLOR; }\n .THEME_NAME.md-bottom-bar.md-fixed .md-bottom-bar-item {\n color: BACKGROUND-CONTRAST-0.54; }\n .THEME_NAME.md-bottom-bar.md-fixed .md-bottom-bar-item:hover:not([disabled]):not(.md-active) {\n color: BACKGROUND-CONTRAST-0.87; }\n .THEME_NAME.md-bottom-bar.md-fixed .md-bottom-bar-item.md-active {\n color: PRIMARY-COLOR; }\n .THEME_NAME.md-bottom-bar.md-fixed.md-accent .md-bottom-bar-item.md-active {\n color: ACCENT-COLOR; }\n .THEME_NAME.md-bottom-bar.md-fixed.md-warn .md-bottom-bar-item.md-active {\n color: WARN-COLOR; }\n .THEME_NAME.md-bottom-bar.md-fixed.md-transparent .md-bottom-bar-item.md-active {\n color: BACKGROUND-CONTRAST; }\n\n.THEME_NAME.md-bottom-bar.md-shift {\n background-color: PRIMARY-COLOR;\n color: PRIMARY-CONTRAST; }\n .THEME_NAME.md-bottom-bar.md-shift .md-bottom-bar-item {\n color: PRIMARY-CONTRAST-0.54; }\n .THEME_NAME.md-bottom-bar.md-shift .md-bottom-bar-item:hover:not([disabled]):not(.md-active) {\n color: PRIMARY-CONTRAST-0.87; }\n .THEME_NAME.md-bottom-bar.md-shift .md-bottom-bar-item.md-active {\n color: PRIMARY-CONTRAST; }\n .THEME_NAME.md-bottom-bar.md-shift.md-accent {\n background-color: ACCENT-COLOR; }\n .THEME_NAME.md-bottom-bar.md-shift.md-accent .md-bottom-bar-item {\n color: ACCENT-CONTRAST-0.54; }\n .THEME_NAME.md-bottom-bar.md-shift.md-accent .md-bottom-bar-item:hover:not([disabled]):not(.md-active) {\n color: ACCENT-CONTRAST-0.87; }\n .THEME_NAME.md-bottom-bar.md-shift.md-accent .md-bottom-bar-item.md-active {\n color: ACCENT-CONTRAST; }\n .THEME_NAME.md-bottom-bar.md-shift.md-warn {\n background-color: WARN-COLOR; }\n .THEME_NAME.md-bottom-bar.md-shift.md-warn .md-bottom-bar-item {\n color: WARN-CONTRAST-0.54; }\n .THEME_NAME.md-bottom-bar.md-shift.md-warn .md-bottom-bar-item:hover:not([disabled]):not(.md-active) {\n color: WARN-CONTRAST-0.87; }\n .THEME_NAME.md-bottom-bar.md-shift.md-warn .md-bottom-bar-item.md-active {\n color: WARN-CONTRAST; }\n .THEME_NAME.md-bottom-bar.md-shift.md-transparent {\n background-color: transparent; }\n .THEME_NAME.md-bottom-bar.md-shift.md-transparent .md-bottom-bar-item {\n color: BACKGROUND-CONTRAST-0.54; }\n .THEME_NAME.md-bottom-bar.md-shift.md-transparent .md-bottom-bar-item:hover:not([disabled]):not(.md-active) {\n color: BACKGROUND-CONTRAST-0.87; }\n .THEME_NAME.md-bottom-bar.md-shift.md-transparent .md-bottom-bar-item.md-active {\n color: BACKGROUND-CONTRAST; }\n"
/***/ }),
/***/ 262:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(205)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(133),
/* template */
__webpack_require__(343),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdBottomBar/mdBottomBar.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdBottomBar.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-197179a8", Component.options)
} else {
hotAPI.reload("data-v-197179a8", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 263:
/***/ (function(module, exports, __webpack_require__) {
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(134),
/* template */
__webpack_require__(345),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdBottomBar/mdBottomBarItem.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdBottomBarItem.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-1b798f5b", Component.options)
} else {
hotAPI.reload("data-v-1b798f5b", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 343:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-bottom-bar",
class: [_vm.themeClass, _vm.classes]
}, [_vm._t("default")], 2)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-197179a8", module.exports)
}
}
/***/ }),
/***/ 345:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return (_vm.href) ? _c('a', {
staticClass: "md-bottom-bar-item",
class: _vm.classes,
attrs: {
"href": _vm.href,
"disabled": _vm.disabled
},
on: {
"click": _vm.setActive
}
}, [(_vm.mdIcon || _vm.mdIconSrc || _vm.mdIconset) ? _c('md-icon', {
attrs: {
"md-icon-src": _vm.mdIconSrc,
"md-iconset": _vm.mdIconset
}
}, [_vm._v(_vm._s(_vm.mdIcon))]) : _vm._e(), _vm._v(" "), _c('md-ink-ripple', {
attrs: {
"md-disabled": _vm.disabled
}
}), _vm._v(" "), _c('span', {
staticClass: "md-text"
}, [_vm._t("default")], 2)], 1) : _c('button', {
staticClass: "md-bottom-bar-item",
class: _vm.classes,
attrs: {
"type": "button",
"disabled": _vm.disabled
},
on: {
"click": _vm.setActive
}
}, [(_vm.mdIcon || _vm.mdIconSrc || _vm.mdIconset) ? _c('md-icon', {
attrs: {
"md-src": _vm.mdIconSrc,
"md-iconset": _vm.mdIconset
}
}, [_vm._v(_vm._s(_vm.mdIcon))]) : _vm._e(), _vm._v(" "), _c('md-ink-ripple', {
attrs: {
"md-disabled": _vm.disabled
}
}), _vm._v(" "), _c('span', {
staticClass: "md-text"
}, [_vm._t("default")], 2)], 1)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-1b798f5b", module.exports)
}
}
/***/ }),
/***/ 399:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(92);
/***/ }),
/***/ 92:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdBottomBar = __webpack_require__(262);
var _mdBottomBar2 = _interopRequireDefault(_mdBottomBar);
var _mdBottomBarItem = __webpack_require__(263);
var _mdBottomBarItem2 = _interopRequireDefault(_mdBottomBarItem);
var _mdBottomBar3 = __webpack_require__(234);
var _mdBottomBar4 = _interopRequireDefault(_mdBottomBar3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-bottom-bar', _mdBottomBar2.default);
Vue.component('md-bottom-bar-item', _mdBottomBarItem2.default);
Vue.material.styles.push(_mdBottomBar4.default);
}
module.exports = exports['default'];
/***/ })
/******/ });
}));

6
dist/components/mdBottomBar/index.js vendored Normal file

File diff suppressed because one or more lines are too long

5
dist/components/mdButton/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-button{min-width:88px;min-height:36px;margin:6px 8px;padding:0 16px;display:inline-block;position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;background:none;border:0;border-radius:2px;transition:all .4s cubic-bezier(.25,.8,.25,1);color:currentColor;font-family:inherit;font-size:14px;font-style:inherit;font-variant:inherit;font-weight:500;letter-spacing:inherit;line-height:36px;text-align:center;text-transform:uppercase;text-decoration:none;vertical-align:top;white-space:nowrap}.md-button,.md-button:focus{outline:none}.md-button::-moz-focus-inner{border:0}.md-button:hover:not([disabled]):not(.md-raised){background-color:hsla(0,0%,60%,.2);text-decoration:none}.md-button:hover:not([disabled]).md-raised{background-color:rgba(0,0,0,.12)}.md-button:active:not([disabled]){background-color:hsla(0,0%,60%,.4)}.md-button.md-raised:not([disabled]){box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-button.md-dense{min-height:32px;line-height:32px;font-size:13px}.md-button.md-fab .md-icon,.md-button.md-icon-button .md-icon{position:absolute;top:1px;right:0;bottom:0;left:0}.md-button.md-icon-button{width:40px;min-width:40px;height:40px;margin:0 6px;padding:8px;border-radius:50%;line-height:24px}.md-button.md-icon-button:not([disabled]):hover{background:none}.md-button.md-icon-button.md-dense{width:32px;min-width:32px;height:32px;min-height:32px;padding:4px;line-height:32px}.md-button.md-icon-button .md-ink-ripple{border-radius:50%}.md-button.md-icon-button .md-ink-ripple .md-ripple{top:0!important;right:0!important;bottom:0!important;left:0!important}.md-button.md-icon-button .md-ripple.md-active{animation-duration:.9s}.md-button.md-fab{width:56px;height:56px;padding:0;min-width:0;overflow:hidden;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);border-radius:56px;line-height:56px;background-clip:padding-box;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:background-color,box-shadow,transform}.md-button.md-fab:focus,.md-button.md-fab:hover{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px rgba(0,0,0,.14),0 1px 14px rgba(0,0,0,.12)}.md-button.md-fab.md-mini{width:40px;height:40px;line-height:40px}.md-button.md-fab .md-ink-ripple{border-radius:56px}.md-button[disabled]{color:rgba(0,0,0,.26);cursor:default;pointer-events:none}.md-button[disabled].md-fab,.md-button[disabled].md-raised{background-color:rgba(0,0,0,.12)}.md-button[disabled].md-fab{box-shadow:none}.md-button:after{transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-button .md-ink-ripple{border-radius:2px;background-clip:padding-box;overflow:hidden}.md-button.md-fab .md-icon,.md-button.md-icon-button .md-icon{display:block}.md-fab.md-fab-bottom-center,.md-fab.md-fab-bottom-left,.md-fab.md-fab-bottom-right,.md-fab.md-fab-top-center,.md-fab.md-fab-top-left,.md-fab.md-fab-top-right,.md-speed-dial.md-fab-bottom-center,.md-speed-dial.md-fab-bottom-left,.md-speed-dial.md-fab-bottom-right,.md-speed-dial.md-fab-top-center,.md-speed-dial.md-fab-top-left,.md-speed-dial.md-fab-top-right{margin:0;position:absolute;z-index:1}.md-fab.md-fab-top-left,.md-speed-dial.md-fab-top-left{top:24px;left:24px}.md-fab.md-fab-top-center,.md-speed-dial.md-fab-top-center{top:24px;left:50%;transform:translateX(-50%)}.md-fab.md-fab-top-right,.md-speed-dial.md-fab-top-right{top:24px;right:24px}.md-fab.md-fab-bottom-left,.md-speed-dial.md-fab-bottom-left{bottom:24px;left:24px}.md-fab.md-fab-bottom-center,.md-speed-dial.md-fab-bottom-center{bottom:24px;left:50%;transform:translateX(-50%)}.md-fab.md-fab-bottom-right,.md-speed-dial.md-fab-bottom-right{right:24px;bottom:24px}.md-button-tooltip.md-tooltip-top{margin-top:-8px}.md-button-tooltip.md-tooltip-right{margin-left:8px}.md-button-tooltip.md-tooltip-bottom{margin-top:8px}.md-button-tooltip.md-tooltip-left{margin-left:-8px}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdButton/index.css","sourceRoot":""}

385
dist/components/mdButton/index.debug.js vendored Normal file
View file

@ -0,0 +1,385 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 400);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 1:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = {
props: {
mdTheme: String
},
data: function data() {
return {
closestThemedParent: false
};
},
methods: {
getClosestThemedParent: function getClosestThemedParent($parent) {
if (!$parent || !$parent.$el || $parent._uid === 0) {
return false;
}
if ($parent.mdTheme || $parent.mdName) {
return $parent;
}
return this.getClosestThemedParent($parent.$parent);
}
},
computed: {
themeClass: function themeClass() {
if (this.mdTheme) {
return 'md-theme-' + this.mdTheme;
}
var theme = this.closestThemedParent.mdTheme;
if (!theme) {
if (this.closestThemedParent) {
theme = this.closestThemedParent.mdName;
} else {
theme = this.$material.currentTheme;
}
}
return 'md-theme-' + theme;
}
},
mounted: function mounted() {
this.closestThemedParent = this.getClosestThemedParent(this.$parent);
if (!this.$material.currentTheme) {
this.$material.setCurrentTheme('default');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 135:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mixin = __webpack_require__(1);
var _mixin2 = _interopRequireDefault(_mixin);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
props: {
href: String,
target: String,
rel: String,
type: {
type: String,
default: 'button'
},
disabled: Boolean
},
mixins: [_mixin2.default],
computed: {
newRel: function newRel() {
if (this.target === '_blank') {
return this.rel || 'noopener';
}
return this.rel;
}
}
}; //
//
//
//
//
//
//
//
//
//
//
//
//
//
module.exports = exports['default'];
/***/ }),
/***/ 223:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 235:
/***/ (function(module, exports) {
module.exports = ".THEME_NAME.md-button:not([disabled]).md-raised:not(.md-icon-button) {\n color: BACKGROUND-CONTRAST;\n background-color: BACKGROUND-COLOR; }\n .THEME_NAME.md-button:not([disabled]).md-raised:not(.md-icon-button):hover {\n background-color: BACKGROUND-COLOR-200; }\n\n.THEME_NAME.md-button:not([disabled]).md-raised.md-icon-button:not(.md-raised) {\n color: BACKGROUND-CONTRAST; }\n\n.THEME_NAME.md-button:not([disabled]).md-fab {\n color: ACCENT-CONTRAST;\n background-color: ACCENT-COLOR; }\n .THEME_NAME.md-button:not([disabled]).md-fab:hover {\n background-color: ACCENT-COLOR-600; }\n .THEME_NAME.md-button:not([disabled]).md-fab.md-clean {\n color: BACKGROUND-CONTRAST;\n background-color: BACKGROUND-COLOR; }\n .THEME_NAME.md-button:not([disabled]).md-fab.md-clean:hover {\n background-color: BACKGROUND-COLOR-200; }\n\n.THEME_NAME.md-button:not([disabled]).md-primary:not(.md-icon-button) {\n color: PRIMARY-COLOR; }\n\n.THEME_NAME.md-button:not([disabled]).md-primary.md-raised, .THEME_NAME.md-button:not([disabled]).md-primary.md-fab {\n background-color: PRIMARY-COLOR;\n color: PRIMARY-CONTRAST; }\n .THEME_NAME.md-button:not([disabled]).md-primary.md-raised:hover, .THEME_NAME.md-button:not([disabled]).md-primary.md-fab:hover {\n background-color: PRIMARY-COLOR-600; }\n\n.THEME_NAME.md-button:not([disabled]).md-primary.md-icon-button:not(.md-raised) {\n color: PRIMARY-COLOR; }\n\n.THEME_NAME.md-button:not([disabled]).md-accent:not(.md-icon-button) {\n color: ACCENT-COLOR; }\n\n.THEME_NAME.md-button:not([disabled]).md-accent.md-raised {\n background-color: ACCENT-COLOR;\n color: ACCENT-CONTRAST; }\n .THEME_NAME.md-button:not([disabled]).md-accent.md-raised:hover {\n background-color: ACCENT-COLOR-600; }\n\n.THEME_NAME.md-button:not([disabled]).md-accent.md-icon-button:not(.md-raised) {\n color: ACCENT-COLOR; }\n\n.THEME_NAME.md-button:not([disabled]).md-warn:not(.md-icon-button) {\n color: WARN-COLOR; }\n\n.THEME_NAME.md-button:not([disabled]).md-warn.md-raised, .THEME_NAME.md-button:not([disabled]).md-warn.md-fab {\n background-color: WARN-COLOR;\n color: WARN-CONTRAST; }\n .THEME_NAME.md-button:not([disabled]).md-warn.md-raised:hover, .THEME_NAME.md-button:not([disabled]).md-warn.md-fab:hover {\n background-color: WARN-COLOR-600; }\n\n.THEME_NAME.md-button:not([disabled]).md-warn.md-icon-button:not(.md-raised) {\n color: WARN-COLOR; }\n"
/***/ }),
/***/ 264:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(223)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(135),
/* template */
__webpack_require__(381),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdButton/mdButton.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdButton.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-6dc87da4", Component.options)
} else {
hotAPI.reload("data-v-6dc87da4", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 381:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return (!_vm.href) ? _c('button', {
staticClass: "md-button",
class: [_vm.themeClass],
attrs: {
"type": _vm.type,
"disabled": _vm.disabled
}
}, [_c('md-ink-ripple', {
attrs: {
"md-disabled": _vm.disabled
}
}), _vm._v(" "), _vm._t("default")], 2) : _c('a', {
staticClass: "md-button",
class: [_vm.themeClass],
attrs: {
"href": _vm.href,
"disabled": _vm.disabled,
"target": _vm.target,
"rel": _vm.newRel
}
}, [_c('md-ink-ripple', {
attrs: {
"md-disabled": _vm.disabled
}
}), _vm._v(" "), _vm._t("default")], 2)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-6dc87da4", module.exports)
}
}
/***/ }),
/***/ 400:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(93);
/***/ }),
/***/ 93:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdButton = __webpack_require__(264);
var _mdButton2 = _interopRequireDefault(_mdButton);
var _mdButton3 = __webpack_require__(235);
var _mdButton4 = _interopRequireDefault(_mdButton3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-button', _mdButton2.default);
Vue.material.styles.push(_mdButton4.default);
}
module.exports = exports['default'];
/***/ })
/******/ });
}));

6
dist/components/mdButton/index.js vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-button-toggle{width:auto;display:-ms-flexbox;display:flex}.md-button-toggle>.md-button{margin:0;overflow:hidden;border-width:1px 0 1px 1px;border-radius:0;text-align:center;text-overflow:ellipsis;white-space:nowrap}.md-button-toggle>.md-button:first-child{border-radius:2px 0 0 2px}.md-button-toggle>.md-button:last-child{border-right-width:1px;border-radius:0 2px 2px 0}.md-button-toggle>.md-button:not([disabled]){color:rgba(0,0,0,.54)}.md-button-toggle>.md-button:not([disabled]):hover:not(.md-toggle):not(.md-raised){background-color:hsla(0,0%,60%,.2);text-decoration:none}.md-button-toggle>.md-button .md-ink-ripple{border-radius:2px}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdButtonToggle/index.css","sourceRoot":""}

View file

@ -0,0 +1,376 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 401);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 1:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = {
props: {
mdTheme: String
},
data: function data() {
return {
closestThemedParent: false
};
},
methods: {
getClosestThemedParent: function getClosestThemedParent($parent) {
if (!$parent || !$parent.$el || $parent._uid === 0) {
return false;
}
if ($parent.mdTheme || $parent.mdName) {
return $parent;
}
return this.getClosestThemedParent($parent.$parent);
}
},
computed: {
themeClass: function themeClass() {
if (this.mdTheme) {
return 'md-theme-' + this.mdTheme;
}
var theme = this.closestThemedParent.mdTheme;
if (!theme) {
if (this.closestThemedParent) {
theme = this.closestThemedParent.mdName;
} else {
theme = this.$material.currentTheme;
}
}
return 'md-theme-' + theme;
}
},
mounted: function mounted() {
this.closestThemedParent = this.getClosestThemedParent(this.$parent);
if (!this.$material.currentTheme) {
this.$material.setCurrentTheme('default');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 136:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mixin = __webpack_require__(1);
var _mixin2 = _interopRequireDefault(_mixin);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var onClickButton = void 0; //
//
//
//
//
//
//
//
exports.default = {
props: {
mdSingle: Boolean
},
mixins: [_mixin2.default],
mounted: function mounted() {
var _this = this;
this.$children.forEach((function (child) {
var element = child.$el;
var toggleClass = 'md-toggle';
onClickButton = function onClickButton() {
if (_this.mdSingle) {
_this.$children.forEach((function (child) {
child.$el.classList.remove(toggleClass);
}));
element.classList.add(toggleClass);
} else {
element.classList.toggle(toggleClass);
}
};
if (element && element.classList.contains('md-button')) {
element.addEventListener('click', onClickButton);
}
}));
},
beforeDestroy: function beforeDestroy() {
this.$children.forEach((function (child) {
var element = child.$el;
if (element && element.classList.contains('md-button')) {
element.removeEventListener('click', onClickButton);
}
}));
}
};
module.exports = exports['default'];
/***/ }),
/***/ 202:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 236:
/***/ (function(module, exports) {
module.exports = ".THEME_NAME.md-button-toggle .md-button:after {\n width: 1px;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n content: \" \"; }\n\n.THEME_NAME.md-button-toggle .md-toggle {\n color: BACKGROUND-CONTRAST-0.54;\n background-color: BACKGROUND-CONTRAST-0.26; }\n .THEME_NAME.md-button-toggle .md-toggle:hover:not([disabled]) {\n background-color: BACKGROUND-CONTRAST-0.38; }\n .THEME_NAME.md-button-toggle .md-toggle + .md-toggle:after {\n background-color: BACKGROUND-CONTRAST-0.12; }\n\n.THEME_NAME.md-button-toggle.md-primary .md-toggle {\n color: PRIMARY-CONTRAST;\n background-color: PRIMARY-COLOR; }\n .THEME_NAME.md-button-toggle.md-primary .md-toggle:hover:not([disabled]) {\n background-color: PRIMARY-COLOR; }\n .THEME_NAME.md-button-toggle.md-primary .md-toggle + .md-toggle:after {\n background-color: PRIMARY-COLOR-600; }\n\n.THEME_NAME.md-button-toggle.md-accent .md-toggle {\n color: ACCENT-CONTRAST;\n background-color: ACCENT-COLOR; }\n .THEME_NAME.md-button-toggle.md-accent .md-toggle:hover:not([disabled]) {\n background-color: ACCENT-COLOR; }\n .THEME_NAME.md-button-toggle.md-accent .md-toggle + .md-toggle:after {\n background-color: ACCENT-COLOR-600; }\n\n.THEME_NAME.md-button-toggle.md-warn .md-toggle {\n color: WARN-CONTRAST;\n background-color: WARN-COLOR; }\n .THEME_NAME.md-button-toggle.md-warn .md-toggle:hover:not([disabled]) {\n background-color: WARN-COLOR; }\n .THEME_NAME.md-button-toggle.md-warn .md-toggle + .md-toggle:after {\n background-color: WARN-COLOR-600; }\n\n.THEME_NAME.md-button-toggle [disabled] {\n color: rgba(0, 0, 0, 0.26); }\n .THEME_NAME.md-button-toggle [disabled].md-toggle {\n color: BACKGROUND-CONTRAST-0.2;\n background-color: rgba(0, 0, 0, 0.26); }\n"
/***/ }),
/***/ 265:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(202)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(136),
/* template */
__webpack_require__(335),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdButtonToggle/mdButtonToggle.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdButtonToggle.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-0c5891b8", Component.options)
} else {
hotAPI.reload("data-v-0c5891b8", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 335:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-button-toggle",
class: [_vm.themeClass]
}, [_vm._t("default")], 2)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-0c5891b8", module.exports)
}
}
/***/ }),
/***/ 401:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(94);
/***/ }),
/***/ 94:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdButtonToggle = __webpack_require__(265);
var _mdButtonToggle2 = _interopRequireDefault(_mdButtonToggle);
var _mdButtonToggle3 = __webpack_require__(236);
var _mdButtonToggle4 = _interopRequireDefault(_mdButtonToggle3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-button-toggle', _mdButtonToggle2.default);
Vue.material.styles.push(_mdButtonToggle4.default);
}
module.exports = exports['default'];
/***/ })
/******/ });
}));

View file

@ -0,0 +1,6 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/
!(function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.VueMaterial=e():t.VueMaterial=e()})(this,(function(){return (function(t){function e(n){if(o[n])return o[n].exports;var r=o[n]={i:n,l:!1,exports:{}};return t[n].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var o={};return e.m=t,e.c=o,e.i=function(t){return t},e.d=function(t,o,n){e.o(t,o)||Object.defineProperty(t,o,{configurable:!1,enumerable:!0,get:n})},e.n=function(t){var o=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(o,"a",o),o},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="/",e(e.s=401)})({0:function(t,e){t.exports=function(t,e,o,n){var r,d=t=t||{},l=typeof t.default;"object"!==l&&"function"!==l||(r=t,d=t.default);var u="function"==typeof d?d.options:d;if(e&&(u.render=e.render,u.staticRenderFns=e.staticRenderFns),o&&(u._scopeId=o),n){var c=u.computed||(u.computed={});Object.keys(n).forEach((function(t){var e=n[t];c[t]=function(){return e}}))}return{esModule:r,exports:d,options:u}}},1:function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={props:{mdTheme:String},data:function(){return{closestThemedParent:!1}},methods:{getClosestThemedParent:function(t){return!(!t||!t.$el||0===t._uid)&&(t.mdTheme||t.mdName?t:this.getClosestThemedParent(t.$parent))}},computed:{themeClass:function(){if(this.mdTheme)return"md-theme-"+this.mdTheme;var t=this.closestThemedParent.mdTheme;return t||(t=this.closestThemedParent?this.closestThemedParent.mdName:this.$material.currentTheme),"md-theme-"+t}},mounted:function(){this.closestThemedParent=this.getClosestThemedParent(this.$parent),this.$material.currentTheme||this.$material.setCurrentTheme("default")}},t.exports=e.default},136:function(t,e,o){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=o(1),d=n(r),l=void 0;e.default={props:{mdSingle:Boolean},mixins:[d.default],mounted:function(){var t=this;this.$children.forEach((function(e){var o=e.$el,n="md-toggle";l=function(){t.mdSingle?(t.$children.forEach((function(t){t.$el.classList.remove(n)})),o.classList.add(n)):o.classList.toggle(n)},o&&o.classList.contains("md-button")&&o.addEventListener("click",l)}))},beforeDestroy:function(){this.$children.forEach((function(t){var e=t.$el;e&&e.classList.contains("md-button")&&e.removeEventListener("click",l)}))}},t.exports=e.default},202:function(t,e){},236:function(t,e){t.exports='.THEME_NAME.md-button-toggle .md-button:after{width:1px;position:absolute;top:0;bottom:0;left:0;content:" "}.THEME_NAME.md-button-toggle .md-toggle{color:BACKGROUND-CONTRAST-0.54;background-color:BACKGROUND-CONTRAST-0.26}.THEME_NAME.md-button-toggle .md-toggle:hover:not([disabled]){background-color:BACKGROUND-CONTRAST-0.38}.THEME_NAME.md-button-toggle .md-toggle+.md-toggle:after{background-color:BACKGROUND-CONTRAST-0.12}.THEME_NAME.md-button-toggle.md-primary .md-toggle{color:PRIMARY-CONTRAST;background-color:PRIMARY-COLOR}.THEME_NAME.md-button-toggle.md-primary .md-toggle:hover:not([disabled]){background-color:PRIMARY-COLOR}.THEME_NAME.md-button-toggle.md-primary .md-toggle+.md-toggle:after{background-color:PRIMARY-COLOR-600}.THEME_NAME.md-button-toggle.md-accent .md-toggle{color:ACCENT-CONTRAST;background-color:ACCENT-COLOR}.THEME_NAME.md-button-toggle.md-accent .md-toggle:hover:not([disabled]){background-color:ACCENT-COLOR}.THEME_NAME.md-button-toggle.md-accent .md-toggle+.md-toggle:after{background-color:ACCENT-COLOR-600}.THEME_NAME.md-button-toggle.md-warn .md-toggle{color:WARN-CONTRAST;background-color:WARN-COLOR}.THEME_NAME.md-button-toggle.md-warn .md-toggle:hover:not([disabled]){background-color:WARN-COLOR}.THEME_NAME.md-button-toggle.md-warn .md-toggle+.md-toggle:after{background-color:WARN-COLOR-600}.THEME_NAME.md-button-toggle [disabled]{color:rgba(0,0,0,0.26)}.THEME_NAME.md-button-toggle [disabled].md-toggle{color:BACKGROUND-CONTRAST-0.2;background-color:rgba(0,0,0,0.26)}\n'},265:function(t,e,o){o(202);var n=o(0)(o(136),o(335),null,null);t.exports=n.exports},335:function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,o=t._self._c||e;return o("div",{staticClass:"md-button-toggle",class:[t.themeClass]},[t._t("default")],2)},staticRenderFns:[]}},401:function(t,e,o){t.exports=o(94)},94:function(t,e,o){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}function r(t){t.component("md-button-toggle",l.default),t.material.styles.push(c.default)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var d=o(265),l=n(d),u=o(236),c=n(u);t.exports=e.default}})}));

5
dist/components/mdCard/index.css vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/components/mdCard/index.css.map vendored Normal file
View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdCard/index.css","sourceRoot":""}

1189
dist/components/mdCard/index.debug.js vendored Normal file

File diff suppressed because one or more lines are too long

6
dist/components/mdCard/index.js vendored Normal file

File diff suppressed because one or more lines are too long

5
dist/components/mdCheckbox/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-checkbox{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-checkbox .md-checkbox-container{width:20px;height:20px;position:relative;border-radius:2px;border:2px solid rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-checkbox .md-checkbox-container:focus{outline:none}.md-checkbox .md-checkbox-container:before{width:48px;height:48px;position:absolute;top:50%;left:50%;border-radius:50%;transform:translate(-50%,-50%);transition:all .3s cubic-bezier(.55,0,.55,.2);content:" "}.md-checkbox .md-checkbox-container:after{width:6px;height:13px;position:absolute;top:0;left:5px;border:2px solid #fff;border-top:0;border-left:0;opacity:0;transform:rotate(45deg) scale3D(.15,.15,1);transition:all .3s cubic-bezier(.55,0,.55,.2);content:" "}.md-checkbox .md-checkbox-container input{position:absolute;left:-999em}.md-checkbox .md-checkbox-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-checkbox .md-checkbox-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-checkbox .md-checkbox-label{height:20px;padding-left:8px;line-height:20px}.md-checkbox.md-checked .md-checkbox-container:after{opacity:1;transform:rotate(45deg) scale3D(1,1,1);transition:all .4s cubic-bezier(.25,.8,.25,1)}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdCheckbox/index.css","sourceRoot":""}

View file

@ -0,0 +1,412 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 403);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 1:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = {
props: {
mdTheme: String
},
data: function data() {
return {
closestThemedParent: false
};
},
methods: {
getClosestThemedParent: function getClosestThemedParent($parent) {
if (!$parent || !$parent.$el || $parent._uid === 0) {
return false;
}
if ($parent.mdTheme || $parent.mdName) {
return $parent;
}
return this.getClosestThemedParent($parent.$parent);
}
},
computed: {
themeClass: function themeClass() {
if (this.mdTheme) {
return 'md-theme-' + this.mdTheme;
}
var theme = this.closestThemedParent.mdTheme;
if (!theme) {
if (this.closestThemedParent) {
theme = this.closestThemedParent.mdName;
} else {
theme = this.$material.currentTheme;
}
}
return 'md-theme-' + theme;
}
},
mounted: function mounted() {
this.closestThemedParent = this.getClosestThemedParent(this.$parent);
if (!this.$material.currentTheme) {
this.$material.setCurrentTheme('default');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 143:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mixin = __webpack_require__(1);
var _mixin2 = _interopRequireDefault(_mixin);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
props: {
name: String,
value: [String, Boolean],
id: String,
disabled: Boolean
},
mixins: [_mixin2.default],
data: function data() {
return {
checked: this.value
};
},
computed: {
classes: function classes() {
return {
'md-checked': this.checked,
'md-disabled': this.disabled
};
}
},
watch: {
value: function value() {
this.checked = !!this.value;
}
},
methods: {
toggleCheck: function toggleCheck($event) {
if (!this.disabled) {
this.checked = !this.checked;
this.$emit('change', this.checked, $event);
this.$emit('input', this.checked, $event);
}
}
}
}; //
//
//
//
//
//
//
//
//
//
//
//
//
//
//
module.exports = exports['default'];
/***/ }),
/***/ 225:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 238:
/***/ (function(module, exports) {
module.exports = ".THEME_NAME.md-checkbox.md-checked .md-checkbox-container {\n background-color: ACCENT-COLOR;\n border-color: ACCENT-COLOR; }\n .THEME_NAME.md-checkbox.md-checked .md-checkbox-container:after {\n border-color: ACCENT-CONTRAST; }\n\n.THEME_NAME.md-checkbox .md-ink-ripple {\n color: ACCENT-COLOR; }\n\n.THEME_NAME.md-checkbox .md-ripple {\n opacity: .26; }\n\n.THEME_NAME.md-checkbox.md-primary.md-checked .md-checkbox-container {\n background-color: PRIMARY-COLOR;\n border-color: PRIMARY-COLOR; }\n .THEME_NAME.md-checkbox.md-primary.md-checked .md-checkbox-container:after {\n border-color: PRIMARY-CONTRAST; }\n\n.THEME_NAME.md-checkbox.md-primary .md-ink-ripple {\n color: PRIMARY-COLOR; }\n\n.THEME_NAME.md-checkbox.md-warn.md-checked .md-checkbox-container {\n background-color: WARN-COLOR;\n border-color: WARN-COLOR; }\n .THEME_NAME.md-checkbox.md-warn.md-checked .md-checkbox-container:after {\n border-color: WARN-CONTRAST; }\n\n.THEME_NAME.md-checkbox.md-warn .md-ink-ripple {\n color: WARN-COLOR; }\n\n.THEME_NAME.md-checkbox.md-disabled.md-checked .md-checkbox-container {\n background-color: rgba(0, 0, 0, 0.26);\n border-color: transparent; }\n\n.THEME_NAME.md-checkbox.md-disabled:not(.md-checked) .md-checkbox-container {\n border-color: rgba(0, 0, 0, 0.26); }\n"
/***/ }),
/***/ 276:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(225)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(143),
/* template */
__webpack_require__(386),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdCheckbox/mdCheckbox.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdCheckbox.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-9f41cdf8", Component.options)
} else {
hotAPI.reload("data-v-9f41cdf8", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 386:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-checkbox",
class: [_vm.themeClass, _vm.classes]
}, [_c('div', {
staticClass: "md-checkbox-container",
attrs: {
"tabindex": "0"
},
on: {
"click": function($event) {
$event.stopPropagation();
_vm.toggleCheck($event)
}
}
}, [_c('input', {
attrs: {
"type": "checkbox",
"name": _vm.name,
"id": _vm.id,
"disabled": _vm.disabled,
"tabindex": "-1"
},
domProps: {
"value": _vm.value,
"checked": _vm.checked
}
}), _vm._v(" "), _c('md-ink-ripple', {
attrs: {
"md-disabled": _vm.disabled
}
})], 1), _vm._v(" "), (_vm.$slots.default) ? _c('label', {
staticClass: "md-checkbox-label",
attrs: {
"for": _vm.id || _vm.name
}
}, [_vm._t("default")], 2) : _vm._e()])
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-9f41cdf8", module.exports)
}
}
/***/ }),
/***/ 403:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(96);
/***/ }),
/***/ 96:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdCheckbox = __webpack_require__(276);
var _mdCheckbox2 = _interopRequireDefault(_mdCheckbox);
var _mdCheckbox3 = __webpack_require__(238);
var _mdCheckbox4 = _interopRequireDefault(_mdCheckbox3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-checkbox', _mdCheckbox2.default);
Vue.material.styles.push(_mdCheckbox4.default);
}
module.exports = exports['default'];
/***/ })
/******/ });
}));

6
dist/components/mdCheckbox/index.js vendored Normal file
View file

@ -0,0 +1,6 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/
!(function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VueMaterial=t():e.VueMaterial=t()})(this,(function(){return (function(e){function t(c){if(o[c])return o[c].exports;var r=o[c]={i:c,l:!1,exports:{}};return e[c].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var o={};return t.m=e,t.c=o,t.i=function(e){return e},t.d=function(e,o,c){t.o(e,o)||Object.defineProperty(e,o,{configurable:!1,enumerable:!0,get:c})},t.n=function(e){var o=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(o,"a",o),o},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s=403)})({0:function(e,t){e.exports=function(e,t,o,c){var r,n=e=e||{},d=typeof e.default;"object"!==d&&"function"!==d||(r=e,n=e.default);var i="function"==typeof n?n.options:n;if(t&&(i.render=t.render,i.staticRenderFns=t.staticRenderFns),o&&(i._scopeId=o),c){var a=i.computed||(i.computed={});Object.keys(c).forEach((function(e){var t=c[e];a[e]=function(){return t}}))}return{esModule:r,exports:n,options:i}}},1:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={props:{mdTheme:String},data:function(){return{closestThemedParent:!1}},methods:{getClosestThemedParent:function(e){return!(!e||!e.$el||0===e._uid)&&(e.mdTheme||e.mdName?e:this.getClosestThemedParent(e.$parent))}},computed:{themeClass:function(){if(this.mdTheme)return"md-theme-"+this.mdTheme;var e=this.closestThemedParent.mdTheme;return e||(e=this.closestThemedParent?this.closestThemedParent.mdName:this.$material.currentTheme),"md-theme-"+e}},mounted:function(){this.closestThemedParent=this.getClosestThemedParent(this.$parent),this.$material.currentTheme||this.$material.setCurrentTheme("default")}},e.exports=t.default},143:function(e,t,o){"use strict";function c(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=o(1),n=c(r);t.default={props:{name:String,value:[String,Boolean],id:String,disabled:Boolean},mixins:[n.default],data:function(){return{checked:this.value}},computed:{classes:function(){return{"md-checked":this.checked,"md-disabled":this.disabled}}},watch:{value:function(){this.checked=!!this.value}},methods:{toggleCheck:function(e){this.disabled||(this.checked=!this.checked,this.$emit("change",this.checked,e),this.$emit("input",this.checked,e))}}},e.exports=t.default},225:function(e,t){},238:function(e,t){e.exports=".THEME_NAME.md-checkbox.md-checked .md-checkbox-container{background-color:ACCENT-COLOR;border-color:ACCENT-COLOR}.THEME_NAME.md-checkbox.md-checked .md-checkbox-container:after{border-color:ACCENT-CONTRAST}.THEME_NAME.md-checkbox .md-ink-ripple{color:ACCENT-COLOR}.THEME_NAME.md-checkbox .md-ripple{opacity:.26}.THEME_NAME.md-checkbox.md-primary.md-checked .md-checkbox-container{background-color:PRIMARY-COLOR;border-color:PRIMARY-COLOR}.THEME_NAME.md-checkbox.md-primary.md-checked .md-checkbox-container:after{border-color:PRIMARY-CONTRAST}.THEME_NAME.md-checkbox.md-primary .md-ink-ripple{color:PRIMARY-COLOR}.THEME_NAME.md-checkbox.md-warn.md-checked .md-checkbox-container{background-color:WARN-COLOR;border-color:WARN-COLOR}.THEME_NAME.md-checkbox.md-warn.md-checked .md-checkbox-container:after{border-color:WARN-CONTRAST}.THEME_NAME.md-checkbox.md-warn .md-ink-ripple{color:WARN-COLOR}.THEME_NAME.md-checkbox.md-disabled.md-checked .md-checkbox-container{background-color:rgba(0,0,0,0.26);border-color:transparent}.THEME_NAME.md-checkbox.md-disabled:not(.md-checked) .md-checkbox-container{border-color:rgba(0,0,0,0.26)}\n"},276:function(e,t,o){o(225);var c=o(0)(o(143),o(386),null,null);e.exports=c.exports},386:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,o=e._self._c||t;return o("div",{staticClass:"md-checkbox",class:[e.themeClass,e.classes]},[o("div",{staticClass:"md-checkbox-container",attrs:{tabindex:"0"},on:{click:function(t){t.stopPropagation(),e.toggleCheck(t)}}},[o("input",{attrs:{type:"checkbox",name:e.name,id:e.id,disabled:e.disabled,tabindex:"-1"},domProps:{value:e.value,checked:e.checked}}),e._v(" "),o("md-ink-ripple",{attrs:{"md-disabled":e.disabled}})],1),e._v(" "),e.$slots.default?o("label",{staticClass:"md-checkbox-label",attrs:{for:e.id||e.name}},[e._t("default")],2):e._e()])},staticRenderFns:[]}},403:function(e,t,o){e.exports=o(96)},96:function(e,t,o){"use strict";function c(e){return e&&e.__esModule?e:{default:e}}function r(e){e.component("md-checkbox",d.default),e.material.styles.push(a.default)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var n=o(276),d=c(n),i=o(238),a=c(i);e.exports=t.default}})}));

5
dist/components/mdChips/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-chip{height:32px;padding:8px 12px;display:inline-block;border-radius:32px;transition:all .4s cubic-bezier(.25,.8,.25,1);font-size:13px;line-height:16px;white-space:nowrap}.md-chip.md-deletable{position:relative;padding-right:32px}.md-chip:active,.md-chip:focus{outline:none}.md-chip:active:not(.md-disabled),.md-chip:focus:not(.md-disabled){cursor:pointer;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-chip.md-disabled .md-button{pointer-events:none;cursor:default}.md-chip .md-button.md-delete{width:24px;min-width:24px;height:24px;min-height:24px;margin:0;padding:0;position:absolute;top:4px;right:4px;border-radius:24px;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-chip .md-button.md-delete .md-icon{width:20px;min-width:20px;height:20px;min-height:20px;margin:0;font-size:20px}.md-chip .md-button.md-delete .md-ink-ripple{border-radius:32px}.md-chip .md-button.md-delete .md-ripple{opacity:.54}.md-chips .md-chip{margin-right:8px;margin-bottom:4px}.md-chips .md-input-container{min-height:54px;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.md-chips .md-input{width:128px;-ms-flex:1;flex:1}

1
dist/components/mdChips/index.css.map vendored Normal file
View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdChips/index.css","sourceRoot":""}

652
dist/components/mdChips/index.debug.js vendored Normal file
View file

@ -0,0 +1,652 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 404);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 1:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = {
props: {
mdTheme: String
},
data: function data() {
return {
closestThemedParent: false
};
},
methods: {
getClosestThemedParent: function getClosestThemedParent($parent) {
if (!$parent || !$parent.$el || $parent._uid === 0) {
return false;
}
if ($parent.mdTheme || $parent.mdName) {
return $parent;
}
return this.getClosestThemedParent($parent.$parent);
}
},
computed: {
themeClass: function themeClass() {
if (this.mdTheme) {
return 'md-theme-' + this.mdTheme;
}
var theme = this.closestThemedParent.mdTheme;
if (!theme) {
if (this.closestThemedParent) {
theme = this.closestThemedParent.mdName;
} else {
theme = this.$material.currentTheme;
}
}
return 'md-theme-' + theme;
}
},
mounted: function mounted() {
this.closestThemedParent = this.getClosestThemedParent(this.$parent);
if (!this.$material.currentTheme) {
this.$material.setCurrentTheme('default');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 144:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mixin = __webpack_require__(1);
var _mixin2 = _interopRequireDefault(_mixin);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
props: {
disabled: Boolean,
mdDeletable: Boolean
},
mixins: [_mixin2.default],
computed: {
classes: function classes() {
return {
'md-deletable': this.mdDeletable,
'md-disabled': this.disabled
};
}
}
}; //
//
//
//
//
//
//
//
//
//
//
//
//
//
//
module.exports = exports['default'];
/***/ }),
/***/ 145:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mixin = __webpack_require__(1);
var _mixin2 = _interopRequireDefault(_mixin);
var _uniqueId = __webpack_require__(48);
var _uniqueId2 = _interopRequireDefault(_uniqueId);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
exports.default = {
props: {
value: Array,
disabled: Boolean,
mdInputId: String,
mdInputName: String,
mdInputPlaceholder: String,
mdInputType: {
type: String,
default: 'text'
},
mdStatic: Boolean,
mdMax: {
type: Number,
default: Infinity
}
},
mixins: [_mixin2.default],
data: function data() {
return {
currentChip: null,
selectedChips: this.value,
inputId: this.mdInputId || 'chips-' + (0, _uniqueId2.default)()
};
},
watch: {
value: function value(_value) {
this.selectedChips = _value;
}
},
computed: {
classes: function classes() {
return {
'md-static': this.mdStatic,
'md-disabled': this.disabled
};
}
},
methods: {
applyInputFocus: function applyInputFocus() {
var _this = this;
this.$nextTick((function () {
_this.$refs.input.$el.focus();
}));
},
addChip: function addChip() {
if (this.currentChip && this.selectedChips.length < this.mdMax) {
var value = this.currentChip.trim();
if (this.selectedChips.indexOf(value) < 0) {
this.selectedChips.push(value);
this.currentChip = null;
this.$emit('input', this.selectedChips);
this.$emit('change', this.selectedChips);
this.applyInputFocus();
}
}
},
deleteChip: function deleteChip(chip) {
var index = this.selectedChips.indexOf(chip);
if (index >= 0) {
this.selectedChips.splice(index, 1);
}
this.$emit('change', this.selectedChips);
this.applyInputFocus();
},
deleteLastChip: function deleteLastChip() {
if (!this.currentChip) {
this.selectedChips.pop();
this.$emit('change', this.selectedChips);
this.applyInputFocus();
}
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 219:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 239:
/***/ (function(module, exports) {
module.exports = ".THEME_NAME.md-chip {\n background-color: BACKGROUND-CONTRAST-0.12; }\n .THEME_NAME.md-chip.md-deletable:hover, .THEME_NAME.md-chip.md-deletable:focus {\n background-color: BACKGROUND-CONTRAST-0.54;\n color: BACKGROUND-COLOR; }\n .THEME_NAME.md-chip.md-deletable:hover .md-delete, .THEME_NAME.md-chip.md-deletable:focus .md-delete {\n color: BACKGROUND-COLOR; }\n .THEME_NAME.md-chip .md-delete {\n color: BACKGROUND-CONTRAST-0.38; }\n .THEME_NAME.md-chip .md-delete .md-ripple {\n color: BACKGROUND-COLOR; }\n"
/***/ }),
/***/ 277:
/***/ (function(module, exports, __webpack_require__) {
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(144),
/* template */
__webpack_require__(352),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdChips/mdChip.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdChip.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-2c2a829d", Component.options)
} else {
hotAPI.reload("data-v-2c2a829d", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 278:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(219)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(145),
/* template */
__webpack_require__(369),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdChips/mdChips.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdChips.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-5cd17226", Component.options)
} else {
hotAPI.reload("data-v-5cd17226", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 352:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-chip",
class: [_vm.themeClass, _vm.classes],
attrs: {
"tabindex": "0"
}
}, [_vm._t("default"), _vm._v(" "), (_vm.mdDeletable) ? _c('md-button', {
staticClass: "md-icon-button md-dense md-delete",
attrs: {
"tabindex": "-1"
},
nativeOn: {
"click": function($event) {
!_vm.disabled && _vm.$emit('delete')
},
"keyup": function($event) {
if (_vm._k($event.keyCode, "delete", [8, 46])) { return; }
!_vm.disabled && _vm.$emit('delete')
}
}
}, [_c('md-icon', {
staticClass: "md-icon-delete"
}, [_vm._v("cancel")])], 1) : _vm._e()], 2)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-2c2a829d", module.exports)
}
}
/***/ }),
/***/ 369:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-chips",
class: [_vm.themeClass, _vm.classes]
}, [_c('md-input-container', {
nativeOn: {
"click": function($event) {
_vm.applyInputFocus($event)
}
}
}, [_vm._l((_vm.selectedChips), (function(chip) {
return _c('md-chip', {
attrs: {
"md-deletable": !_vm.mdStatic,
"disabled": _vm.disabled
},
on: {
"delete": function($event) {
_vm.deleteChip(chip)
}
}
}, [_vm._t("default", null, {
value: chip
})], 2)
})), _vm._v(" "), _c('md-input', {
directives: [{
name: "show",
rawName: "v-show",
value: (!_vm.mdStatic),
expression: "!mdStatic"
}, {
name: "model",
rawName: "v-model",
value: (_vm.currentChip),
expression: "currentChip"
}],
ref: "input",
attrs: {
"type": _vm.mdInputType,
"placeholder": _vm.mdInputPlaceholder,
"id": _vm.inputId,
"name": _vm.mdInputName,
"disabled": _vm.disabled,
"tabindex": "0"
},
domProps: {
"value": (_vm.currentChip)
},
on: {
"input": function($event) {
_vm.currentChip = $event
}
},
nativeOn: {
"keydown": [function($event) {
if (_vm._k($event.keyCode, "delete", [8, 46])) { return; }
_vm.deleteLastChip($event)
}, function($event) {
if (_vm._k($event.keyCode, "enter", 13)) { return; }
$event.preventDefault();
_vm.addChip($event)
}, function($event) {
if ($event.keyCode !== 186) { return; }
$event.preventDefault();
_vm.addChip($event)
}]
}
})], 2)], 1)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-5cd17226", module.exports)
}
}
/***/ }),
/***/ 404:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(97);
/***/ }),
/***/ 48:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var uniqueId = function uniqueId() {
return Math.random().toString(36).slice(4);
};
exports.default = uniqueId;
module.exports = exports["default"];
/***/ }),
/***/ 97:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdChips = __webpack_require__(278);
var _mdChips2 = _interopRequireDefault(_mdChips);
var _mdChip = __webpack_require__(277);
var _mdChip2 = _interopRequireDefault(_mdChip);
var _mdChips3 = __webpack_require__(239);
var _mdChips4 = _interopRequireDefault(_mdChips3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-chips', _mdChips2.default);
Vue.component('md-chip', _mdChip2.default);
Vue.material.styles.push(_mdChips4.default);
}
module.exports = exports['default'];
/***/ })
/******/ });
}));

6
dist/components/mdChips/index.js vendored Normal file

File diff suppressed because one or more lines are too long

5
dist/components/mdCore/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-ink-ripple{pointer-events:none;overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:radial-gradient(circle,#fff 100%,#000 0);transition:all .3s cubic-bezier(.55,0,.55,.2)}.md-ripple{position:absolute;background-color:currentColor;border-radius:50%;opacity:.2;transform:scale(0) translateZ(0);transition:none;will-change:background-color,opacity,transform,width,height,top,left}.md-ripple.md-active{animation:a 1s cubic-bezier(.25,.8,.25,1) forwards}.md-ripple.md-active.md-fadeout{opacity:0!important;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.6s}@keyframes a{to{transform:scale(2.2) translateZ(0)}}html{height:100%;box-sizing:border-box}html *,html :after,html :before{box-sizing:inherit}body{min-height:100%;margin:0;position:relative;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:rgba(0,0,0,.87);font-family:Roboto,Noto Sans,Noto,sans-serif}ul:not(.md-list)>li+li{margin-top:8px}audio,canvas,embed,iframe,img,object,svg,video{max-width:100%;font-style:italic;vertical-align:middle}audio:not(.md-image),canvas:not(.md-image),embed:not(.md-image),iframe:not(.md-image),img:not(.md-image),object:not(.md-image),svg:not(.md-image),video:not(.md-image){height:auto}[tabindex="-1"]:focus{outline:none!important}.md-scrollbar::-webkit-scrollbar,.md-scrollbar ::-webkit-scrollbar{width:10px;height:10px;box-shadow:inset 1px 1px 0 rgba(0,0,0,.12);transition:all .5s cubic-bezier(.35,0,.25,1);background-color:rgba(0,0,0,.05)}.md-scrollbar::-webkit-scrollbar:hover,.md-scrollbar ::-webkit-scrollbar:hover{box-shadow:inset 1px 1px 0 rgba(0,0,0,.054),inset 0 -1px 0 rgba(0,0,0,.038);background-color:rgba(0,0,0,.087)}.md-scrollbar::-webkit-scrollbar-button,.md-scrollbar ::-webkit-scrollbar-button{display:none}.md-scrollbar::-webkit-scrollbar-corner,.md-scrollbar ::-webkit-scrollbar-corner{background-color:transparent}.md-scrollbar::-webkit-scrollbar-thumb,.md-scrollbar ::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.26);box-shadow:inset 1px 1px 0 rgba(0,0,0,.054),inset 0 -1px 0 rgba(0,0,0,.087);transition:all .5s cubic-bezier(.35,0,.25,1)}.md-caption{font-size:12px;font-weight:400;letter-spacing:.02em;line-height:17px}.md-body-1,body{font-weight:400;line-height:20px}.md-body-1,.md-body-2,body{font-size:14px;letter-spacing:.01em}.md-body-2{font-weight:500;line-height:24px}.md-subheading{font-size:16px;font-weight:400;letter-spacing:.01em;line-height:24px}.md-title{font-size:20px;font-weight:500;letter-spacing:.005em;line-height:26px}.md-headline{font-size:24px;line-height:32px}.md-display-1,.md-headline{font-weight:400;letter-spacing:0}.md-display-1{font-size:34px;line-height:40px}.md-display-2{font-size:45px;font-weight:400;letter-spacing:0;line-height:48px}.md-display-3{font-size:56px;font-weight:400;letter-spacing:-.005em;line-height:58px}.md-display-4{font-size:112px;font-weight:300;letter-spacing:-.01em;line-height:112px}a:not(.md-button):not(.md-bottom-bar-item){text-decoration:none}a:not(.md-button):not(.md-bottom-bar-item):hover{text-decoration:underline}button:focus{outline:none}

1
dist/components/mdCore/index.css.map vendored Normal file
View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdCore/index.css","sourceRoot":""}

1742
dist/components/mdCore/index.debug.js vendored Normal file

File diff suppressed because it is too large Load diff

6
dist/components/mdCore/index.js vendored Normal file

File diff suppressed because one or more lines are too long

5
dist/components/mdDialog/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-dialog-container{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1}.md-dialog-container.md-active{pointer-events:auto}.md-dialog-container.md-active .md-dialog{opacity:1!important;transform:scale(1)!important;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:opacity,transform}.md-dialog-backdrop{position:fixed;z-index:2}.md-dialog{min-width:280px;max-width:80%;max-height:80%;display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;overflow:hidden;position:relative;z-index:3;outline:none;border-radius:2px;opacity:0;box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12);transform:scale(.9,.85);transform-origin:center center;transition:opacity .4s cubic-bezier(.25,.8,.25,1),transform .4s cubic-bezier(.25,.8,.25,1) .05s;will-change:opacity,transform}.md-dialog.md-reference{transform-origin:top center}.md-dialog.md-transition-off{transition:none!important}.md-dialog p{margin:0}.md-dialog-title{margin-bottom:20px;padding:24px 24px 0}.md-dialog-content{padding:0 24px 24px;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;overflow:auto;position:relative;background:linear-gradient(180deg,#fff,#fff 1px,transparent 0),linear-gradient(0deg,#fff,#fff 3px,transparent 0),linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.12) 1px,transparent 0),linear-gradient(0deg,rgba(0,0,0,.2) 1px,rgba(0,0,0,.2) 2px,transparent 0);background-attachment:local,local,scroll,scroll}.md-dialog-content:first-child{padding-top:24px}.md-dialog-content p:first-child:not(:only-child){margin-top:0}.md-dialog-content p:last-child:not(:only-child){margin-bottom:0}.md-dialog-body{margin:0 -24px;padding:0 24px;overflow:auto}.md-dialog-actions{min-height:52px;padding:8px 8px 8px 24px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;position:relative}.md-dialog-actions:before{height:1px;position:absolute;top:-1px;right:0;left:0;background-color:#fff;content:" "}.md-dialog-actions .md-button{min-width:64px;margin:0;padding:0 8px}.md-dialog-actions .md-button+.md-button{margin-left:8px}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdDialog/index.css","sourceRoot":""}

1203
dist/components/mdDialog/index.debug.js vendored Normal file

File diff suppressed because it is too large Load diff

6
dist/components/mdDialog/index.js vendored Normal file

File diff suppressed because one or more lines are too long

5
dist/components/mdDivider/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-divider{height:1px;margin:0;padding:0;display:block;border:0;background-color:rgba(0,0,0,.12)}.md-divider.md-inset{margin-left:72px}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdDivider/index.css","sourceRoot":""}

232
dist/components/mdDivider/index.debug.js vendored Normal file
View file

@ -0,0 +1,232 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 406);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 220:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 286:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(220)
var Component = __webpack_require__(0)(
/* script */
null,
/* template */
__webpack_require__(371),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdDivider/mdDivider.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdDivider.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-5e9f054a", Component.options)
} else {
hotAPI.reload("data-v-5e9f054a", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 371:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('hr', {
staticClass: "md-divider"
})
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-5e9f054a", module.exports)
}
}
/***/ }),
/***/ 406:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(99);
/***/ }),
/***/ 99:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdDivider = __webpack_require__(286);
var _mdDivider2 = _interopRequireDefault(_mdDivider);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-divider', _mdDivider2.default);
}
module.exports = exports['default'];
/***/ })
/******/ });
}));

6
dist/components/mdDivider/index.js vendored Normal file
View file

@ -0,0 +1,6 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/
!(function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VueMaterial=t():e.VueMaterial=t()})(this,(function(){return (function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s=406)})({0:function(e,t){e.exports=function(e,t,n,r){var o,u=e=e||{},i=typeof e.default;"object"!==i&&"function"!==i||(o=e,u=e.default);var c="function"==typeof u?u.options:u;if(t&&(c.render=t.render,c.staticRenderFns=t.staticRenderFns),n&&(c._scopeId=n),r){var f=c.computed||(c.computed={});Object.keys(r).forEach((function(e){var t=r[e];f[e]=function(){return t}}))}return{esModule:o,exports:u,options:c}}},220:function(e,t){},286:function(e,t,n){n(220);var r=n(0)(null,n(371),null,null);e.exports=r.exports},371:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("hr",{staticClass:"md-divider"})},staticRenderFns:[]}},406:function(e,t,n){e.exports=n(99)},99:function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e){e.component("md-divider",i.default)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o;var u=n(286),i=r(u);e.exports=t.default}})}));

5
dist/components/mdFile/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-file{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1}.md-file input[type=file]{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-file .md-icon{cursor:pointer}

1
dist/components/mdFile/index.css.map vendored Normal file
View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdFile/index.css","sourceRoot":""}

1394
dist/components/mdFile/index.debug.js vendored Normal file

File diff suppressed because it is too large Load diff

6
dist/components/mdFile/index.js vendored Normal file

File diff suppressed because one or more lines are too long

5
dist/components/mdIcon/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-icon{width:24px;min-width:24px;height:24px;min-height:24px;font-size:24px;margin:auto;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;fill:currentColor;text-rendering:optimizeLegibility;vertical-align:middle}.md-icon.md-size-2x{width:48px;min-width:48px;height:48px;min-height:48px;font-size:48px}.md-icon.md-size-3x{width:72px;min-width:72px;height:72px;min-height:72px;font-size:72px}.md-icon.md-size-4x{width:96px;min-width:96px;height:96px;min-height:96px;font-size:96px}.md-icon.md-size-5x{width:120px;min-width:120px;height:120px;min-height:120px;font-size:120px}.md-icon svg{width:100%;height:100%}img.md-icon{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}

1
dist/components/mdIcon/index.css.map vendored Normal file
View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdIcon/index.css","sourceRoot":""}

442
dist/components/mdIcon/index.debug.js vendored Normal file
View file

@ -0,0 +1,442 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 408);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 1:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = {
props: {
mdTheme: String
},
data: function data() {
return {
closestThemedParent: false
};
},
methods: {
getClosestThemedParent: function getClosestThemedParent($parent) {
if (!$parent || !$parent.$el || $parent._uid === 0) {
return false;
}
if ($parent.mdTheme || $parent.mdName) {
return $parent;
}
return this.getClosestThemedParent($parent.$parent);
}
},
computed: {
themeClass: function themeClass() {
if (this.mdTheme) {
return 'md-theme-' + this.mdTheme;
}
var theme = this.closestThemedParent.mdTheme;
if (!theme) {
if (this.closestThemedParent) {
theme = this.closestThemedParent.mdName;
} else {
theme = this.$material.currentTheme;
}
}
return 'md-theme-' + theme;
}
},
mounted: function mounted() {
this.closestThemedParent = this.getClosestThemedParent(this.$parent);
if (!this.$material.currentTheme) {
this.$material.setCurrentTheme('default');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 101:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdIcon = __webpack_require__(288);
var _mdIcon2 = _interopRequireDefault(_mdIcon);
var _mdIcon3 = __webpack_require__(242);
var _mdIcon4 = _interopRequireDefault(_mdIcon3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-icon', _mdIcon2.default);
Vue.material.styles.push(_mdIcon4.default);
}
module.exports = exports['default'];
/***/ }),
/***/ 151:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mixin = __webpack_require__(1);
var _mixin2 = _interopRequireDefault(_mixin);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var registeredIcons = {}; //
//
//
//
//
//
//
//
//
//
//
//
exports.default = {
props: {
mdSrc: String,
mdIconset: {
type: String,
default: 'material-icons'
}
},
data: function data() {
return {
svgContent: null,
imageSrc: null
};
},
mixins: [_mixin2.default],
watch: {
mdSrc: function mdSrc() {
this.svgContent = null;
this.imageSrc = null;
this.checkSrc();
}
},
methods: {
isImage: function isImage(mimetype) {
return mimetype.indexOf('image') >= 0;
},
isSVG: function isSVG(mimetype) {
return mimetype.indexOf('svg') >= 0;
},
setSVGContent: function setSVGContent(value) {
var _this = this;
this.svgContent = value;
this.$nextTick((function () {
_this.$el.children[0].removeAttribute('fill');
}));
},
loadSVG: function loadSVG() {
var _this2 = this;
if (!registeredIcons[this.mdSrc]) {
(function () {
var request = new XMLHttpRequest();
var self = _this2;
request.open('GET', _this2.mdSrc, true);
request.onload = function () {
var mimetype = this.getResponseHeader('content-type');
if (this.status >= 200 && this.status < 400 && self.isImage(mimetype)) {
if (self.isSVG(mimetype)) {
registeredIcons[self.mdSrc] = this.response;
self.setSVGContent(this.response);
} else {
self.loadImage();
}
} else {
console.warn('The file ' + self.mdSrc + ' is not a valid image.');
}
};
request.send();
})();
} else {
this.setSVGContent(registeredIcons[this.mdSrc]);
}
},
loadImage: function loadImage() {
this.imageSrc = this.mdSrc;
},
checkSrc: function checkSrc() {
if (this.mdSrc) {
if (this.mdSrc.indexOf('.svg') >= 0) {
this.loadSVG();
} else {
this.loadImage();
}
}
}
},
mounted: function mounted() {
this.checkSrc();
}
};
module.exports = exports['default'];
/***/ }),
/***/ 207:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 242:
/***/ (function(module, exports) {
module.exports = ".THEME_NAME.md-icon.md-primary {\n color: PRIMARY-COLOR; }\n\n.THEME_NAME.md-icon.md-accent {\n color: ACCENT-COLOR; }\n\n.THEME_NAME.md-icon.md-warn {\n color: WARN-COLOR; }\n"
/***/ }),
/***/ 288:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(207)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(151),
/* template */
__webpack_require__(348),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdIcon/mdIcon.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdIcon.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-2423dfc4", Component.options)
} else {
hotAPI.reload("data-v-2423dfc4", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 348:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return (_vm.svgContent) ? _c('i', {
staticClass: "md-icon",
class: [_vm.themeClass],
domProps: {
"innerHTML": _vm._s(_vm.svgContent)
}
}) : (_vm.imageSrc) ? _c('md-image', {
staticClass: "md-icon",
class: [_vm.themeClass],
attrs: {
"md-src": _vm.imageSrc
}
}) : _c('i', {
staticClass: "md-icon",
class: [_vm.themeClass, _vm.mdIconset],
attrs: {
"aria-hidden": !!_vm.mdIconset
}
}, [_vm._t("default")], 2)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-2423dfc4", module.exports)
}
}
/***/ }),
/***/ 408:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(101);
/***/ })
/******/ });
}));

6
dist/components/mdIcon/index.js vendored Normal file
View file

@ -0,0 +1,6 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/
!(function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VueMaterial=t():e.VueMaterial=t()})(this,(function(){return (function(e){function t(r){if(n[r])return n[r].exports;var s=n[r]={i:r,l:!1,exports:{}};return e[r].call(s.exports,s,s.exports,t),s.l=!0,s.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s=408)})({0:function(e,t){e.exports=function(e,t,n,r){var s,o=e=e||{},i=typeof e.default;"object"!==i&&"function"!==i||(s=e,o=e.default);var c="function"==typeof o?o.options:o;if(t&&(c.render=t.render,c.staticRenderFns=t.staticRenderFns),n&&(c._scopeId=n),r){var a=c.computed||(c.computed={});Object.keys(r).forEach((function(e){var t=r[e];a[e]=function(){return t}}))}return{esModule:s,exports:o,options:c}}},1:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={props:{mdTheme:String},data:function(){return{closestThemedParent:!1}},methods:{getClosestThemedParent:function(e){return!(!e||!e.$el||0===e._uid)&&(e.mdTheme||e.mdName?e:this.getClosestThemedParent(e.$parent))}},computed:{themeClass:function(){if(this.mdTheme)return"md-theme-"+this.mdTheme;var e=this.closestThemedParent.mdTheme;return e||(e=this.closestThemedParent?this.closestThemedParent.mdName:this.$material.currentTheme),"md-theme-"+e}},mounted:function(){this.closestThemedParent=this.getClosestThemedParent(this.$parent),this.$material.currentTheme||this.$material.setCurrentTheme("default")}},e.exports=t.default},101:function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function s(e){e.component("md-icon",i.default),e.material.styles.push(a.default)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=s;var o=n(288),i=r(o),c=n(242),a=r(c);e.exports=t.default},151:function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var s=n(1),o=r(s),i={};t.default={props:{mdSrc:String,mdIconset:{type:String,default:"material-icons"}},data:function(){return{svgContent:null,imageSrc:null}},mixins:[o.default],watch:{mdSrc:function(){this.svgContent=null,this.imageSrc=null,this.checkSrc()}},methods:{isImage:function(e){return e.indexOf("image")>=0},isSVG:function(e){return e.indexOf("svg")>=0},setSVGContent:function(e){var t=this;this.svgContent=e,this.$nextTick((function(){t.$el.children[0].removeAttribute("fill")}))},loadSVG:function(){var e=this;i[this.mdSrc]?this.setSVGContent(i[this.mdSrc]):!(function(){var t=new XMLHttpRequest,n=e;t.open("GET",e.mdSrc,!0),t.onload=function(){var e=this.getResponseHeader("content-type");this.status>=200&&this.status<400&&n.isImage(e)?n.isSVG(e)?(i[n.mdSrc]=this.response,n.setSVGContent(this.response)):n.loadImage():console.warn("The file "+n.mdSrc+" is not a valid image.")},t.send()})()},loadImage:function(){this.imageSrc=this.mdSrc},checkSrc:function(){this.mdSrc&&(this.mdSrc.indexOf(".svg")>=0?this.loadSVG():this.loadImage())}},mounted:function(){this.checkSrc()}},e.exports=t.default},207:function(e,t){},242:function(e,t){e.exports=".THEME_NAME.md-icon.md-primary{color:PRIMARY-COLOR}.THEME_NAME.md-icon.md-accent{color:ACCENT-COLOR}.THEME_NAME.md-icon.md-warn{color:WARN-COLOR}\n"},288:function(e,t,n){n(207);var r=n(0)(n(151),n(348),null,null);e.exports=r.exports},348:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.svgContent?n("i",{staticClass:"md-icon",class:[e.themeClass],domProps:{innerHTML:e._s(e.svgContent)}}):e.imageSrc?n("md-image",{staticClass:"md-icon",class:[e.themeClass],attrs:{"md-src":e.imageSrc}}):n("i",{staticClass:"md-icon",class:[e.themeClass,e.mdIconset],attrs:{"aria-hidden":!!e.mdIconset}},[e._t("default")],2)},staticRenderFns:[]}},408:function(e,t,n){e.exports=n(101)}})}));

5
dist/components/mdImage/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-image{opacity:0;-webkit-filter:saturate(20%);filter:saturate(20%)}.md-image.md-black-output{-webkit-filter:brightness(.4) saturate(20%);filter:brightness(.4) saturate(20%)}.md-image.md-loaded{opacity:1;-webkit-filter:saturate(100%);filter:saturate(100%);transition:opacity 1.1s cubic-bezier(.25,.8,.25,1),-webkit-filter 2.2s cubic-bezier(.25,.8,.25,1) .3s;transition:opacity 1.1s cubic-bezier(.25,.8,.25,1),filter 2.2s cubic-bezier(.25,.8,.25,1) .3s;transition:opacity 1.1s cubic-bezier(.25,.8,.25,1),filter 2.2s cubic-bezier(.25,.8,.25,1) .3s,-webkit-filter 2.2s cubic-bezier(.25,.8,.25,1) .3s}

1
dist/components/mdImage/index.css.map vendored Normal file
View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdImage/index.css","sourceRoot":""}

388
dist/components/mdImage/index.debug.js vendored Normal file
View file

@ -0,0 +1,388 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 409);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 102:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdImage = __webpack_require__(289);
var _mdImage2 = _interopRequireDefault(_mdImage);
var _mdImage3 = __webpack_require__(243);
var _mdImage4 = _interopRequireDefault(_mdImage3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-image', _mdImage2.default);
Vue.material.styles.push(_mdImage4.default);
}
module.exports = exports['default'];
/***/ }),
/***/ 152:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getImageLightness = __webpack_require__(58);
var _getImageLightness2 = _interopRequireDefault(_getImageLightness);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
props: {
mdSrc: String
},
data: function data() {
return {
loaded: false,
applyBlack: true,
imageElement: null
};
},
watch: {
mdSrc: function mdSrc() {
this.createImage();
}
},
computed: {
classes: function classes() {
return {
'md-loaded': this.loaded,
'md-black-output': this.applyBlack
};
}
},
methods: {
analyzeLightness: function analyzeLightness(image) {
var _this = this;
var applyLoad = function applyLoad() {
_this.loaded = true;
};
(0, _getImageLightness2.default)(image, (function (lightness) {
var limit = 256;
var darkness = (Math.abs(limit - lightness) * 100 / limit + 15) / 100;
if (darkness >= 0.7) {
_this.applyBlack = true;
}
_this.$nextTick(applyLoad);
}), applyLoad);
},
createImage: function createImage() {
this.loaded = false;
this.applyBlack = false;
this.imageElement = null;
if (this.mdSrc) {
this.imageElement = document.createElement('img');
this.imageElement.crossOrigin = '';
this.imageElement.src = this.mdSrc;
this.analyzeLightness(this.imageElement);
}
}
},
created: function created() {
this.createImage();
}
}; //
//
//
//
//
//
module.exports = exports['default'];
/***/ }),
/***/ 229:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 243:
/***/ (function(module, exports) {
module.exports = ""
/***/ }),
/***/ 289:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(229)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(152),
/* template */
__webpack_require__(389),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdImage/mdImage.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdImage.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-b0fc1ce4", Component.options)
} else {
hotAPI.reload("data-v-b0fc1ce4", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 389:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('img', {
staticClass: "md-image",
class: _vm.classes,
attrs: {
"src": _vm.mdSrc
}
})
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-b0fc1ce4", module.exports)
}
}
/***/ }),
/***/ 409:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(102);
/***/ }),
/***/ 58:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var getImageLightness = function getImageLightness(image, onLoad, onError) {
var canvas = document.createElement('canvas');
image.crossOrigin = 'Anonymous';
image.onload = function () {
var colorSum = 0;
var ctx = void 0;
var imageData = void 0;
var imageMetadata = void 0;
var r = void 0;
var g = void 0;
var b = void 0;
var average = void 0;
canvas.width = this.width;
canvas.height = this.height;
ctx = canvas.getContext('2d');
ctx.drawImage(this, 0, 0);
imageData = ctx.getImageData(0, 0, canvas.width, canvas.height);
imageMetadata = imageData.data;
for (var x = 0, len = imageMetadata.length; x < len; x += 4) {
r = imageMetadata[x];
g = imageMetadata[x + 1];
b = imageMetadata[x + 2];
average = Math.floor((r + g + b) / 3);
colorSum += average;
}
onLoad(Math.floor(colorSum / (this.width * this.height)));
};
image.onerror = onError;
};
exports.default = getImageLightness;
module.exports = exports['default'];
/***/ })
/******/ });
}));

6
dist/components/mdImage/index.js vendored Normal file
View file

@ -0,0 +1,6 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/
!(function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VueMaterial=t():e.VueMaterial=t()})(this,(function(){return (function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s=409)})({0:function(e,t){e.exports=function(e,t,n,o){var r,i=e=e||{},a=typeof e.default;"object"!==a&&"function"!==a||(r=e,i=e.default);var u="function"==typeof i?i.options:i;if(t&&(u.render=t.render,u.staticRenderFns=t.staticRenderFns),n&&(u._scopeId=n),o){var s=u.computed||(u.computed={});Object.keys(o).forEach((function(e){var t=o[e];s[e]=function(){return t}}))}return{esModule:r,exports:i,options:u}}},102:function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){e.component("md-image",a.default),e.material.styles.push(s.default)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(289),a=o(i),u=n(243),s=o(u);e.exports=t.default},152:function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=n(58),i=o(r);t.default={props:{mdSrc:String},data:function(){return{loaded:!1,applyBlack:!0,imageElement:null}},watch:{mdSrc:function(){this.createImage()}},computed:{classes:function(){return{"md-loaded":this.loaded,"md-black-output":this.applyBlack}}},methods:{analyzeLightness:function(e){var t=this,n=function(){t.loaded=!0};(0,i.default)(e,(function(e){var o=256,r=(100*Math.abs(o-e)/o+15)/100;r>=.7&&(t.applyBlack=!0),t.$nextTick(n)}),n)},createImage:function(){this.loaded=!1,this.applyBlack=!1,this.imageElement=null,this.mdSrc&&(this.imageElement=document.createElement("img"),this.imageElement.crossOrigin="",this.imageElement.src=this.mdSrc,this.analyzeLightness(this.imageElement))}},created:function(){this.createImage()}},e.exports=t.default},229:function(e,t){},243:function(e,t){e.exports=""},289:function(e,t,n){n(229);var o=n(0)(n(152),n(389),null,null);e.exports=o.exports},389:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("img",{staticClass:"md-image",class:e.classes,attrs:{src:e.mdSrc}})},staticRenderFns:[]}},409:function(e,t,n){e.exports=n(102)},58:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=function(e,t,n){var o=document.createElement("canvas");e.crossOrigin="Anonymous",e.onload=function(){var e=0,n=void 0,r=void 0,i=void 0,a=void 0,u=void 0,s=void 0,c=void 0;o.width=this.width,o.height=this.height,n=o.getContext("2d"),n.drawImage(this,0,0),r=n.getImageData(0,0,o.width,o.height),i=r.data;for(var d=0,l=i.length;d<l;d+=4)a=i[d],u=i[d+1],s=i[d+2],c=Math.floor((a+u+s)/3),e+=c;t(Math.floor(e/(this.width*this.height)))},e.onerror=n};t.default=o,e.exports=t.default}})}));

View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-input-container{width:100%;min-height:48px;margin:4px 0 24px;padding-top:16px;display:-ms-flexbox;display:flex;position:relative}.md-input-container:after{height:1px;right:0;bottom:0;background-color:rgba(0,0,0,.12);content:" "}.md-input-container:after,.md-input-container label{position:absolute;left:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-input-container label{top:23px;pointer-events:none;transition-duration:.3s;color:rgba(0,0,0,.54);font-size:16px;line-height:20px}.md-input-container input,.md-input-container textarea{width:100%;height:32px;padding:0;display:block;-ms-flex:1;flex:1;border:none;background:none;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:font-size;color:rgba(0,0,0,.54);font-family:inherit;font-size:1px;line-height:32px}.md-input-container input:focus,.md-input-container textarea:focus{outline:none}.md-input-container input::-webkit-input-placeholder,.md-input-container textarea::-webkit-input-placeholder{color:rgba(0,0,0,.54);font-size:16px;text-shadow:none;-webkit-text-fill-color:initial}.md-input-container input~.md-icon:not(.md-icon-delete),.md-input-container textarea~.md-icon:not(.md-icon-delete){margin-left:12px}.md-input-container input~.md-icon:not(.md-icon-delete):after,.md-input-container textarea~.md-icon:not(.md-icon-delete):after{right:0;left:auto}.md-input-container textarea{min-height:32px;max-height:230px;padding:5px 0;resize:none;line-height:1.3em}.md-input-container .md-count,.md-input-container .md-error{height:20px;position:absolute;bottom:-22px;font-size:12px}.md-input-container .md-error{display:block!important;left:0;opacity:0;transform:translate3d(0,-8px,0);transition:all .3s cubic-bezier(.55,0,.55,.2)}.md-input-container .md-count{right:0}.md-input-container .md-icon:not(.md-icon-delete){margin:4px auto;color:rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-input-container .md-icon:not(.md-icon-delete):after{width:36px;height:2px;position:absolute;left:0;bottom:0;z-index:1;content:""}.md-input-container .md-icon:not(.md-icon-delete)~label{left:36px}.md-input-container .md-icon:not(.md-icon-delete)~.md-file,.md-input-container .md-icon:not(.md-icon-delete)~.md-input,.md-input-container .md-icon:not(.md-icon-delete)~.md-textarea{margin-left:12px}.md-input-container.md-input-placeholder label{pointer-events:auto;top:10px;opacity:0;font-size:12px}.md-input-container.md-input-placeholder input,.md-input-container.md-input-placeholder textarea{font-size:16px}.md-input-container.md-has-value label,.md-input-container.md-input-focused label{pointer-events:auto;top:0;opacity:1;font-size:12px}.md-input-container.md-has-value input,.md-input-container.md-has-value textarea,.md-input-container.md-input-focused input,.md-input-container.md-input-focused textarea{font-size:16px}.md-input-container.md-has-value input,.md-input-container.md-has-value textarea{color:rgba(0,0,0,.87)}.md-input-container.md-input-inline label{pointer-events:none}.md-input-container.md-input-inline.md-input-focused label{top:23px;font-size:16px}.md-input-container.md-input-inline.md-has-value label{opacity:0}.md-input-container.md-input-disabled:after{background:0 100% repeat-x;background-image:linear-gradient(90deg,rgba(0,0,0,.38),rgba(0,0,0,.38) 33%,transparent 0);background-size:4px 1px}.md-input-container.md-input-disabled input,.md-input-container.md-input-disabled label,.md-input-container.md-input-disabled textarea{color:rgba(0,0,0,.38)}.md-input-container.md-has-password.md-input-focused .md-toggle-password{color:rgba(0,0,0,.54)}.md-input-container.md-has-password .md-toggle-password{margin:0;position:absolute;right:0;bottom:-2px;color:rgba(0,0,0,.38)}.md-input-container.md-has-password .md-toggle-password .md-ink-ripple{color:rgba(0,0,0,.87)}.md-input-container.md-input-invalid .md-error{opacity:1;transform:translateZ(0)}.md-input-container.md-input-required label:after{position:absolute;top:2px;right:0;transform:translateX(calc(100% + 2px));content:"*";font-size:12px;line-height:1em;vertical-align:top}.md-input-container.md-has-select:hover .md-select:not(.md-disabled):after{color:rgba(0,0,0,.87)}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdInputContainer/index.css","sourceRoot":""}

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

5
dist/components/mdLayout/index.css vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdLayout/index.css","sourceRoot":""}

365
dist/components/mdLayout/index.debug.js vendored Normal file
View file

@ -0,0 +1,365 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 411);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 104:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdLayout = __webpack_require__(293);
var _mdLayout2 = _interopRequireDefault(_mdLayout);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-layout', _mdLayout2.default);
}
module.exports = exports['default'];
/***/ }),
/***/ 156:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
//
//
exports.default = {
props: {
mdTag: {
type: String,
default: 'div'
},
mdRow: Boolean,
mdRowXsmall: Boolean,
mdRowSmall: Boolean,
mdRowMedium: Boolean,
mdRowLarge: Boolean,
mdRowXlarge: Boolean,
mdColumn: Boolean,
mdColumnXsmall: Boolean,
mdColumnSmall: Boolean,
mdColumnMedium: Boolean,
mdColumnLarge: Boolean,
mdColumnXlarge: Boolean,
mdHideXsmall: Boolean,
mdHideSmall: Boolean,
mdHideMedium: Boolean,
mdHideLarge: Boolean,
mdHideXlarge: Boolean,
mdHideXsmallAndUp: Boolean,
mdHideSmallAndUp: Boolean,
mdHideMediumAndUp: Boolean,
mdHideLargeAndUp: Boolean,
mdHideXlargeAndUp: Boolean,
mdGutter: [String, Number, Boolean],
mdAlign: String,
mdAlignXsmall: String,
mdAlignSmall: String,
mdAlignMedium: String,
mdAlignLarge: String,
mdAlignXlarge: String,
mdFlex: [String, Number, Boolean],
mdFlexXsmall: [String, Number, Boolean],
mdFlexSmall: [String, Number, Boolean],
mdFlexMedium: [String, Number, Boolean],
mdFlexLarge: [String, Number, Boolean],
mdFlexXlarge: [String, Number, Boolean],
mdFlexOffset: [String, Number, Boolean],
mdFlexOffsetXsmall: [String, Number, Boolean],
mdFlexOffsetSmall: [String, Number, Boolean],
mdFlexOffsetMedium: [String, Number, Boolean],
mdFlexOffsetLarge: [String, Number, Boolean],
mdFlexOffsetXlarge: [String, Number, Boolean]
},
computed: {
classes: function classes() {
var classes = {
'md-row': this.mdRow,
'md-row-xsmall': this.mdRowXsmall,
'md-row-small': this.mdRowSmall,
'md-row-medium': this.mdRowMedium,
'md-row-large': this.mdRowLarge,
'md-row-xlarge': this.mdRowXlarge,
'md-column': this.mdColumn,
'md-column-xsmall': this.mdColumnXsmall,
'md-column-small': this.mdColumnSmall,
'md-column-medium': this.mdColumnMedium,
'md-column-large': this.mdColumnLarge,
'md-column-xlarge': this.mdColumnXlarge,
'md-hide-xsmall': this.mdHideXsmall,
'md-hide-small': this.mdHideSmall,
'md-hide-medium': this.mdHideMedium,
'md-hide-large': this.mdHideLarge,
'md-hide-xlarge': this.mdHideXlarge,
'md-hide-xsmall-and-up': this.mdHideXsmallAndUp,
'md-hide-small-and-up': this.mdHideSmallAndUp,
'md-hide-medium-and-up': this.mdHideMediumAndUp,
'md-hide-large-and-up': this.mdHideLargeAndUp,
'md-hide-xlarge-and-up': this.mdHideXlargeAndUp
};
if (this.mdGutter) {
if (typeof this.mdGutter === 'boolean') {
classes['md-gutter'] = true;
} else if (this.mdGutter) {
classes['md-gutter-' + this.mdGutter] = true;
}
}
/* Flex */
this.generatePropClasses('md-flex', '', 'mdFlex', classes);
this.generatePropClasses('md-flex', 'xsmall', 'mdFlexXsmall', classes);
this.generatePropClasses('md-flex', 'small', 'mdFlexSmall', classes);
this.generatePropClasses('md-flex', 'medium', 'mdFlexMedium', classes);
this.generatePropClasses('md-flex', 'large', 'mdFlexLarge', classes);
this.generatePropClasses('md-flex', 'xlarge', 'mdFlexXlarge', classes);
/* Flex Offset */
this.generatePropClasses('md-flex-offset', '', 'mdFlexOffset', classes);
this.generatePropClasses('md-flex-offset', 'xsmall', 'mdFlexOffsetXsmall', classes);
this.generatePropClasses('md-flex-offset', 'small', 'mdFlexOffsetSmall', classes);
this.generatePropClasses('md-flex-offset', 'medium', 'mdFlexOffsetMedium', classes);
this.generatePropClasses('md-flex-offset', 'large', 'mdFlexOffsetLarge', classes);
this.generatePropClasses('md-flex-offset', 'xlarge', 'mdFlexOffsetXlarge', classes);
/* Alignment */
this.generatePropClasses('md-align', '', 'mdAlign', classes);
this.generatePropClasses('md-align', 'xsmall', 'mdAlignXsmall', classes);
this.generatePropClasses('md-align', 'small', 'mdAlignSmall', classes);
this.generatePropClasses('md-align', 'medium', 'mdAlignMedium', classes);
this.generatePropClasses('md-align', 'large', 'mdAlignLarge', classes);
this.generatePropClasses('md-align', 'xlarge', 'mdAlignXlarge', classes);
return classes;
}
},
methods: {
generatePropClasses: function generatePropClasses(prop, size, name, object) {
if (size) {
size = '-' + size;
}
if (this[name]) {
if (typeof this[name] === 'boolean') {
if (!this[name]) {
object[prop + size + '-none'] = true;
} else {
object[prop + size] = true;
}
} else {
object[prop + size + '-' + this[name]] = true;
}
}
}
},
render: function render(createElement) {
return createElement(this.mdTag, {
staticClass: 'md-layout',
class: this.classes
}, this.$slots.default);
}
};
module.exports = exports['default'];
/***/ }),
/***/ 227:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 293:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(227)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(156),
/* template */
null,
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdLayout/mdLayout.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-a85016b8", Component.options)
} else {
hotAPI.reload("data-v-a85016b8", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 411:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(104);
/***/ })
/******/ });
}));

6
dist/components/mdLayout/index.js vendored Normal file

File diff suppressed because one or more lines are too long

5
dist/components/mdList/index.css vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/components/mdList/index.css.map vendored Normal file
View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdList/index.css","sourceRoot":""}

2786
dist/components/mdList/index.debug.js vendored Normal file

File diff suppressed because it is too large Load diff

6
dist/components/mdList/index.js vendored Normal file

File diff suppressed because one or more lines are too long

5
dist/components/mdMenu/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-menu{display:inline-block}.md-menu-content{width:168px;min-width:84px;max-width:392px;min-height:64px;max-height:calc(100vh - 32px);overflow-x:hidden;overflow-y:auto;position:absolute;z-index:2;transform:scale(.9,.85) translateZ(0);border-radius:2px;box-shadow:0 1px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12);opacity:0;transition:width .4s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.55,0,.55,.2),margin .3s cubic-bezier(.55,0,.55,.2),transform 0s cubic-bezier(.55,0,.55,.2) .4s;will-change:transform,opacity,width}.md-menu-content.md-direction-bottom-right{margin-top:-20px;margin-left:-8px;transform-origin:top left}.md-menu-content.md-direction-bottom-right.md-active{margin-top:-11px}.md-menu-content.md-direction-bottom-left{margin-top:-20px;margin-left:8px;transform-origin:top right}.md-menu-content.md-direction-bottom-left.md-active{margin-top:-11px}.md-menu-content.md-direction-top-right{margin-top:20px;margin-left:-8px;transform-origin:bottom left}.md-menu-content.md-direction-top-right.md-active{margin-top:11px}.md-menu-content.md-direction-top-left{margin-top:20px;margin-left:8px;transform-origin:bottom right}.md-menu-content.md-direction-top-left.md-active{margin-top:11px}.md-menu-content.md-align-trigger{margin:0}.md-menu-content.md-size-1{width:84px}.md-menu-content.md-size-2{width:112px}.md-menu-content.md-size-3{width:168px}.md-menu-content.md-size-4{width:224px}.md-menu-content.md-size-5{width:280px}.md-menu-content.md-size-6{width:336px}.md-menu-content.md-size-7{width:392px}.md-menu-content.md-active{pointer-events:auto;opacity:1;transform:scale(1) translateZ(0);transition:width .4s cubic-bezier(.25,.8,.25,1),opacity .4s cubic-bezier(.25,.8,.25,1),transform .3s cubic-bezier(.25,.8,.25,1)}.md-menu-content.md-active .md-list{opacity:1;transition:opacity .3s cubic-bezier(.25,.8,.25,1)}.md-menu-content .md-list{opacity:0;transition:opacity .3s cubic-bezier(.25,.8,.25,1)}.md-menu-item{cursor:pointer;font-size:16px;line-height:1.2em}.md-menu-item[disabled]{cursor:default}.md-menu-item .md-list-item-holder{overflow:hidden;text-overflow:ellipsis}.md-menu-backdrop{z-index:1}

1
dist/components/mdMenu/index.css.map vendored Normal file
View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdMenu/index.css","sourceRoot":""}

960
dist/components/mdMenu/index.debug.js vendored Normal file
View file

@ -0,0 +1,960 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 413);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 106:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdMenu = __webpack_require__(301);
var _mdMenu2 = _interopRequireDefault(_mdMenu);
var _mdMenuItem = __webpack_require__(303);
var _mdMenuItem2 = _interopRequireDefault(_mdMenuItem);
var _mdMenuContent = __webpack_require__(302);
var _mdMenuContent2 = _interopRequireDefault(_mdMenuContent);
var _mdMenu3 = __webpack_require__(246);
var _mdMenu4 = _interopRequireDefault(_mdMenu3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-menu', _mdMenu2.default);
Vue.component('md-menu-item', _mdMenuItem2.default);
Vue.component('md-menu-content', _mdMenuContent2.default);
Vue.material.styles.push(_mdMenu4.default);
}
module.exports = exports['default'];
/***/ }),
/***/ 12:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var getClosestVueParent = function getClosestVueParent($parent, cssClass) {
if (!$parent || !$parent.$el) {
return false;
}
if ($parent._uid === 0) {
return false;
}
if ($parent.$el.classList.contains(cssClass)) {
return $parent;
}
return getClosestVueParent($parent.$parent, cssClass);
};
exports.default = getClosestVueParent;
module.exports = exports["default"];
/***/ }),
/***/ 129:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var margin = 8;
var isAboveOfViewport = function isAboveOfViewport(element, position) {
return position.top <= margin - parseInt(getComputedStyle(element).marginTop, 10);
};
var isBelowOfViewport = function isBelowOfViewport(element, position) {
return position.top + element.offsetHeight + margin >= window.innerHeight - parseInt(getComputedStyle(element).marginTop, 10);
};
var isOnTheLeftOfViewport = function isOnTheLeftOfViewport(element, position) {
return position.left <= margin - parseInt(getComputedStyle(element).marginLeft, 10);
};
var isOnTheRightOfViewport = function isOnTheRightOfViewport(element, position) {
return position.left + element.offsetWidth + margin >= window.innerWidth - parseInt(getComputedStyle(element).marginLeft, 10);
};
var getInViewPosition = function getInViewPosition(element, position) {
var computedStyle = getComputedStyle(element);
if (isAboveOfViewport(element, position)) {
position.top = margin - parseInt(computedStyle.marginTop, 10);
}
if (isOnTheLeftOfViewport(element, position)) {
position.left = margin - parseInt(computedStyle.marginLeft, 10);
}
if (isOnTheRightOfViewport(element, position)) {
position.left = window.innerWidth - margin - element.offsetWidth - parseInt(computedStyle.marginLeft, 10);
}
if (isBelowOfViewport(element, position)) {
position.top = window.innerHeight - margin - element.offsetHeight - parseInt(computedStyle.marginTop, 10);
}
return position;
};
exports.default = getInViewPosition;
module.exports = exports["default"];
/***/ }),
/***/ 163:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _transitionEndEventName = __webpack_require__(39);
var _transitionEndEventName2 = _interopRequireDefault(_transitionEndEventName);
var _getInViewPosition = __webpack_require__(129);
var _getInViewPosition2 = _interopRequireDefault(_getInViewPosition);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//
//
//
//
//
//
//
//
//
//
exports.default = {
props: {
mdSize: {
type: [Number, String],
default: 0
},
mdDirection: {
type: String,
default: 'bottom right'
},
mdAlignTrigger: {
type: Boolean,
default: false
},
mdOffsetX: {
type: [Number, String],
default: 0
},
mdOffsetY: {
type: [Number, String],
default: 0
},
mdCloseOnSelect: {
type: Boolean,
default: true
}
},
data: function data() {
return {
active: false
};
},
watch: {
mdSize: function mdSize(current, previous) {
if (current >= 1 && current <= 7) {
this.removeLastSizeMenuContentClass(previous);
this.addNewSizeMenuContentClass(current);
}
},
mdDirection: function mdDirection(current, previous) {
this.removeLastDirectionMenuContentClass(previous);
this.addNewDirectionMenuContentClass(current);
},
mdAlignTrigger: function mdAlignTrigger(trigger) {
this.handleAlignTriggerClass(trigger);
}
},
methods: {
validateMenu: function validateMenu() {
if (!this.menuContent) {
this.$destroy();
throw new Error('You must have a md-menu-content inside your menu.');
}
if (!this.menuTrigger) {
this.$destroy();
throw new Error('You must have an element with a md-menu-trigger attribute inside your menu.');
}
},
removeLastSizeMenuContentClass: function removeLastSizeMenuContentClass(size) {
this.menuContent.classList.remove('md-size-' + size);
},
removeLastDirectionMenuContentClass: function removeLastDirectionMenuContentClass(direction) {
this.menuContent.classList.remove('md-direction-' + direction.replace(/ /g, '-'));
},
addNewSizeMenuContentClass: function addNewSizeMenuContentClass(size) {
this.menuContent.classList.add('md-size-' + size);
},
addNewDirectionMenuContentClass: function addNewDirectionMenuContentClass(direction) {
this.menuContent.classList.add('md-direction-' + direction.replace(/ /g, '-'));
},
handleAlignTriggerClass: function handleAlignTriggerClass(trigger) {
if (trigger) {
this.menuContent.classList.add('md-align-trigger');
}
},
getPosition: function getPosition(vertical, horizontal) {
var menuTriggerRect = this.menuTrigger.getBoundingClientRect();
var top = vertical === 'top' ? menuTriggerRect.top + menuTriggerRect.height - this.menuContent.offsetHeight : menuTriggerRect.top;
var left = horizontal === 'left' ? menuTriggerRect.left - this.menuContent.offsetWidth + menuTriggerRect.width : menuTriggerRect.left;
top += parseInt(this.mdOffsetY, 10);
left += parseInt(this.mdOffsetX, 10);
if (this.mdAlignTrigger) {
if (vertical === 'top') {
top -= menuTriggerRect.height + 11;
} else {
top += menuTriggerRect.height + 11;
}
}
return { top: top, left: left };
},
calculateMenuContentPos: function calculateMenuContentPos() {
var position = void 0;
if (!this.mdDirection) {
position = this.getPosition('bottom', 'right');
} else {
position = this.getPosition.apply(this, this.mdDirection.trim().split(' '));
}
position = (0, _getInViewPosition2.default)(this.menuContent, position);
this.menuContent.style.top = position.top + window.pageYOffset + 'px';
this.menuContent.style.left = position.left + window.pageXOffset + 'px';
},
recalculateOnResize: function recalculateOnResize() {
window.requestAnimationFrame(this.calculateMenuContentPos);
},
open: function open() {
if (document.body.contains(this.menuContent)) {
document.body.removeChild(this.menuContent);
}
document.body.appendChild(this.menuContent);
document.body.appendChild(this.backdropElement);
window.addEventListener('resize', this.recalculateOnResize);
this.calculateMenuContentPos();
getComputedStyle(this.menuContent).top;
this.menuContent.classList.add('md-active');
this.menuContent.focus();
this.active = true;
this.$emit('open');
},
close: function close() {
var _this = this;
var close = function close(event) {
if (_this.menuContent && event.target === _this.menuContent) {
var activeRipple = _this.menuContent.querySelector('.md-ripple.md-active');
_this.menuContent.removeEventListener(_transitionEndEventName2.default, close);
_this.menuTrigger.focus();
_this.active = false;
if (activeRipple) {
activeRipple.classList.remove('md-active');
}
document.body.removeChild(_this.menuContent);
document.body.removeChild(_this.backdropElement);
window.removeEventListener('resize', _this.recalculateOnResize);
}
};
this.menuContent.addEventListener(_transitionEndEventName2.default, close);
this.menuContent.classList.remove('md-active');
this.$emit('close');
},
toggle: function toggle() {
if (this.active) {
this.close();
} else {
this.open();
}
}
},
mounted: function mounted() {
var _this2 = this;
this.$nextTick((function () {
_this2.menuTrigger = _this2.$el.querySelector('[md-menu-trigger]');
_this2.menuContent = _this2.$el.querySelector('.md-menu-content');
_this2.backdropElement = _this2.$refs.backdrop.$el;
_this2.validateMenu();
_this2.handleAlignTriggerClass(_this2.mdAlignTrigger);
_this2.addNewSizeMenuContentClass(_this2.mdSize);
_this2.addNewDirectionMenuContentClass(_this2.mdDirection);
_this2.$el.removeChild(_this2.$refs.backdrop.$el);
_this2.menuContent.parentNode.removeChild(_this2.menuContent);
_this2.menuTrigger.addEventListener('click', _this2.toggle);
}));
},
beforeDestroy: function beforeDestroy() {
if (document.body.contains(this.menuContent)) {
document.body.removeChild(this.menuContent);
document.body.removeChild(this.backdropElement);
}
this.menuTrigger.removeEventListener('click', this.toggle);
window.removeEventListener('resize', this.recalculateOnResize);
}
};
module.exports = exports['default'];
/***/ }),
/***/ 164:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
exports.default = {
data: function data() {
return {
oldHighlight: false,
highlighted: false,
itemsAmount: 0
};
},
methods: {
close: function close() {
this.highlighted = false;
this.$parent.close();
},
highlightItem: function highlightItem(direction) {
this.oldHighlight = this.highlighted;
if (direction === 'up') {
if (this.highlighted === 1) {
this.highlighted = this.itemsAmount;
} else {
this.highlighted--;
}
}
if (direction === 'down') {
if (this.highlighted === this.itemsAmount) {
this.highlighted = 1;
} else {
this.highlighted++;
}
}
},
fireClick: function fireClick() {
if (this.highlighted > 0) {
this.$children[0].$children[this.highlighted - 1].$el.click();
}
}
},
mounted: function mounted() {
if (!this.$parent.$el.classList.contains('md-menu')) {
this.$destroy();
throw new Error('You must wrap the md-menu-content in a md-menu');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 165:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getClosestVueParent = __webpack_require__(12);
var _getClosestVueParent2 = _interopRequireDefault(_getClosestVueParent);
__webpack_require__(199);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//
//
//
//
//
//
//
//
//
//
//
//
exports.default = {
props: {
href: String,
target: String,
disabled: Boolean
},
data: function data() {
return {
parentContent: {},
index: 0
};
},
computed: {
classes: function classes() {
return {
'md-highlighted': this.highlighted
};
},
highlighted: function highlighted() {
if (this.index === this.parentContent.highlighted) {
if (this.disabled) {
if (this.parentContent.oldHighlight > this.parentContent.highlighted) {
this.parentContent.highlighted--;
} else {
this.parentContent.highlighted++;
}
}
if (this.index === 1) {
this.parentContent.$el.scrollTop = 0;
} else if (this.index === this.parentContent.itemsAmount) {
this.parentContent.$el.scrollTop = this.parentContent.$el.scrollHeight;
} else {
this.$el.scrollIntoViewIfNeeded(false);
}
return true;
}
return false;
}
},
methods: {
close: function close($event) {
if (!this.disabled) {
if (this.parentMenu.mdCloseOnSelect) {
this.parentContent.close();
}
this.$emit('selected', $event);
}
}
},
mounted: function mounted() {
this.parentContent = (0, _getClosestVueParent2.default)(this.$parent, 'md-menu-content');
this.parentMenu = (0, _getClosestVueParent2.default)(this.$parent, 'md-menu');
if (!this.parentContent) {
this.$destroy();
throw new Error('You must wrap the md-menu-item in a md-menu-content');
}
this.parentContent.itemsAmount++;
this.index = this.parentContent.itemsAmount;
}
};
module.exports = exports['default'];
/***/ }),
/***/ 199:
/***/ (function(module, exports) {
if (!Element.prototype.scrollIntoViewIfNeeded) {
Element.prototype.scrollIntoViewIfNeeded = function (centerIfNeeded) {
centerIfNeeded = arguments.length === 0 ? true : !!centerIfNeeded;
var parent = this.parentNode,
parentComputedStyle = window.getComputedStyle(parent, null),
parentBorderTopWidth = parseInt(parentComputedStyle.getPropertyValue('border-top-width')),
parentBorderLeftWidth = parseInt(parentComputedStyle.getPropertyValue('border-left-width')),
overTop = this.offsetTop - parent.offsetTop < parent.scrollTop,
overBottom = (this.offsetTop - parent.offsetTop + this.clientHeight - parentBorderTopWidth) > (parent.scrollTop + parent.clientHeight),
overLeft = this.offsetLeft - parent.offsetLeft < parent.scrollLeft,
overRight = (this.offsetLeft - parent.offsetLeft + this.clientWidth - parentBorderLeftWidth) > (parent.scrollLeft + parent.clientWidth),
alignWithTop = overTop && !overBottom;
if ((overTop || overBottom) && centerIfNeeded) {
parent.scrollTop = this.offsetTop - parent.offsetTop - parent.clientHeight / 2 - parentBorderTopWidth + this.clientHeight / 2;
}
if ((overLeft || overRight) && centerIfNeeded) {
parent.scrollLeft = this.offsetLeft - parent.offsetLeft - parent.clientWidth / 2 - parentBorderLeftWidth + this.clientWidth / 2;
}
if ((overTop || overBottom || overLeft || overRight) && !centerIfNeeded) {
this.scrollIntoView(alignWithTop);
}
};
}
/***/ }),
/***/ 231:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 246:
/***/ (function(module, exports) {
module.exports = ".THEME_NAME.md-menu-content .md-list {\n background-color: BACKGROUND-COLOR;\n color: BACKGROUND-CONTRAST; }\n .THEME_NAME.md-menu-content .md-list .md-menu-item:hover .md-button:not([disabled]), .THEME_NAME.md-menu-content .md-list .md-menu-item:focus .md-button:not([disabled]), .THEME_NAME.md-menu-content .md-list .md-menu-item.md-highlighted .md-button:not([disabled]) {\n background-color: BACKGROUND-CONTRAST-0.12; }\n .THEME_NAME.md-menu-content .md-list .md-menu-item[disabled] {\n color: BACKGROUND-CONTRAST-0.38; }\n"
/***/ }),
/***/ 301:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(231)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(163),
/* template */
__webpack_require__(391),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdMenu/mdMenu.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdMenu.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-c2b6ddf8", Component.options)
} else {
hotAPI.reload("data-v-c2b6ddf8", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 302:
/***/ (function(module, exports, __webpack_require__) {
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(164),
/* template */
__webpack_require__(384),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdMenu/mdMenuContent.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdMenuContent.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-863c0af6", Component.options)
} else {
hotAPI.reload("data-v-863c0af6", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 303:
/***/ (function(module, exports, __webpack_require__) {
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(165),
/* template */
__webpack_require__(342),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdMenu/mdMenuItem.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdMenuItem.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-185998b7", Component.options)
} else {
hotAPI.reload("data-v-185998b7", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 342:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('md-list-item', {
staticClass: "md-menu-item",
class: _vm.classes,
attrs: {
"href": _vm.href,
"target": _vm.target,
"disabled": _vm.disabled
},
nativeOn: {
"click": function($event) {
_vm.close($event)
}
}
}, [_vm._t("default")], 2)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-185998b7", module.exports)
}
}
/***/ }),
/***/ 384:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-menu-content",
attrs: {
"tabindex": "-1"
},
on: {
"keydown": [function($event) {
if (_vm._k($event.keyCode, "esc", 27)) { return; }
$event.preventDefault();
_vm.close($event)
}, function($event) {
if (_vm._k($event.keyCode, "tab", 9)) { return; }
$event.preventDefault();
_vm.close($event)
}, function($event) {
if (_vm._k($event.keyCode, "up", 38)) { return; }
$event.preventDefault();
_vm.highlightItem('up')
}, function($event) {
if (_vm._k($event.keyCode, "down", 40)) { return; }
$event.preventDefault();
_vm.highlightItem('down')
}, function($event) {
if (_vm._k($event.keyCode, "enter", 13)) { return; }
$event.preventDefault();
_vm.fireClick($event)
}, function($event) {
if (_vm._k($event.keyCode, "space", 32)) { return; }
$event.preventDefault();
_vm.fireClick($event)
}]
}
}, [_c('md-list', [_vm._t("default")], 2)], 1)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-863c0af6", module.exports)
}
}
/***/ }),
/***/ 39:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
function transitionEndEventName() {
var el = document.createElement('span');
var transitions = {
transition: 'transitionend',
OTransition: 'oTransitionEnd',
MozTransition: 'transitionend',
WebkitTransition: 'webkitTransitionEnd'
};
for (var transition in transitions) {
if (el.style[transition] !== undefined) {
return transitions[transition];
}
}
}
exports.default = transitionEndEventName();
module.exports = exports['default'];
/***/ }),
/***/ 391:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-menu"
}, [_vm._t("default"), _vm._v(" "), _c('md-backdrop', {
ref: "backdrop",
staticClass: "md-menu-backdrop md-transparent md-active",
on: {
"close": _vm.close
}
})], 2)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-c2b6ddf8", module.exports)
}
}
/***/ }),
/***/ 413:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(106);
/***/ })
/******/ });
}));

6
dist/components/mdMenu/index.js vendored Normal file

File diff suppressed because one or more lines are too long

5
dist/components/mdProgress/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-progress{width:100%;height:4px;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-progress.md-indeterminate .md-progress-track{right:0}.md-progress.md-indeterminate .md-progress-track:after,.md-progress.md-indeterminate .md-progress-track:before{position:absolute;top:0;bottom:0;left:0;will-change:left,right;content:""}.md-progress.md-indeterminate .md-progress-track:before{animation:a 2.3s cubic-bezier(.65,.815,.735,.395) infinite}.md-progress.md-indeterminate .md-progress-track:after{animation:b 2.3s cubic-bezier(.165,.84,.44,1) infinite;animation-delay:1.15s}.md-progress.md-progress-enter,.md-progress.md-progress-leave-active{opacity:0;transform:scaleY(0) translateZ(0)}.md-progress.md-progress-enter-active{transform:scaleY(1) translateZ(0)}.md-progress-track{position:absolute;top:0;bottom:0;left:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}@keyframes a{0%{right:100%;left:-35%}60%{right:-100%;left:100%}to{right:-100%;left:100%}}@keyframes b{0%{right:100%;left:-200%}60%{right:-8%;left:107%}to{right:-8%;left:107%}}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdProgress/index.css","sourceRoot":""}

View file

@ -0,0 +1,370 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 414);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 1:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = {
props: {
mdTheme: String
},
data: function data() {
return {
closestThemedParent: false
};
},
methods: {
getClosestThemedParent: function getClosestThemedParent($parent) {
if (!$parent || !$parent.$el || $parent._uid === 0) {
return false;
}
if ($parent.mdTheme || $parent.mdName) {
return $parent;
}
return this.getClosestThemedParent($parent.$parent);
}
},
computed: {
themeClass: function themeClass() {
if (this.mdTheme) {
return 'md-theme-' + this.mdTheme;
}
var theme = this.closestThemedParent.mdTheme;
if (!theme) {
if (this.closestThemedParent) {
theme = this.closestThemedParent.mdName;
} else {
theme = this.$material.currentTheme;
}
}
return 'md-theme-' + theme;
}
},
mounted: function mounted() {
this.closestThemedParent = this.getClosestThemedParent(this.$parent);
if (!this.$material.currentTheme) {
this.$material.setCurrentTheme('default');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 107:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdProgress = __webpack_require__(304);
var _mdProgress2 = _interopRequireDefault(_mdProgress);
var _mdProgress3 = __webpack_require__(247);
var _mdProgress4 = _interopRequireDefault(_mdProgress3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-progress', _mdProgress2.default);
Vue.material.styles.push(_mdProgress4.default);
}
module.exports = exports['default'];
/***/ }),
/***/ 166:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mixin = __webpack_require__(1);
var _mixin2 = _interopRequireDefault(_mixin);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
props: {
mdIndeterminate: Boolean,
mdProgress: {
type: Number,
default: 0
}
},
mixins: [_mixin2.default],
computed: {
classes: function classes() {
return {
'md-indeterminate': this.mdIndeterminate
};
},
styles: function styles() {
if (!this.mdIndeterminate) {
return {
width: this.mdProgress + '%'
};
}
}
}
}; //
//
//
//
//
//
//
//
//
//
module.exports = exports['default'];
/***/ }),
/***/ 209:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 247:
/***/ (function(module, exports) {
module.exports = ".THEME_NAME.md-progress {\n background-color: PRIMARY-COLOR-0.38; }\n .THEME_NAME.md-progress:not(.md-indeterminate) .md-progress-track {\n background-color: PRIMARY-COLOR; }\n .THEME_NAME.md-progress .md-progress-track:after, .THEME_NAME.md-progress .md-progress-track:before {\n background-color: PRIMARY-COLOR; }\n .THEME_NAME.md-progress.md-accent {\n background-color: ACCENT-COLOR-0.38; }\n .THEME_NAME.md-progress.md-accent:not(.md-indeterminate) .md-progress-track {\n background-color: ACCENT-COLOR; }\n .THEME_NAME.md-progress.md-accent .md-progress-track:after, .THEME_NAME.md-progress.md-accent .md-progress-track:before {\n background-color: ACCENT-COLOR; }\n .THEME_NAME.md-progress.md-warn {\n background-color: WARN-COLOR-0.38; }\n .THEME_NAME.md-progress.md-warn:not(.md-indeterminate) .md-progress-track {\n background-color: WARN-COLOR; }\n .THEME_NAME.md-progress.md-warn .md-progress-track:after, .THEME_NAME.md-progress.md-warn .md-progress-track:before {\n background-color: WARN-COLOR; }\n"
/***/ }),
/***/ 304:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(209)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(166),
/* template */
__webpack_require__(350),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdProgress/mdProgress.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdProgress.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-2816f2c4", Component.options)
} else {
hotAPI.reload("data-v-2816f2c4", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 350:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('transition', {
attrs: {
"name": "md-progress",
"appear": ""
}
}, [_c('div', {
staticClass: "md-progress",
class: [_vm.themeClass, _vm.classes]
}, [_c('div', {
staticClass: "md-progress-track",
style: (_vm.styles)
})])])
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-2816f2c4", module.exports)
}
}
/***/ }),
/***/ 414:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(107);
/***/ })
/******/ });
}));

6
dist/components/mdProgress/index.js vendored Normal file
View file

@ -0,0 +1,6 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/
!(function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VueMaterial=t():e.VueMaterial=t()})(this,(function(){return (function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var r={};return t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s=414)})({0:function(e,t){e.exports=function(e,t,r,n){var o,s=e=e||{},d=typeof e.default;"object"!==d&&"function"!==d||(o=e,s=e.default);var a="function"==typeof s?s.options:s;if(t&&(a.render=t.render,a.staticRenderFns=t.staticRenderFns),r&&(a._scopeId=r),n){var c=a.computed||(a.computed={});Object.keys(n).forEach((function(e){var t=n[e];c[e]=function(){return t}}))}return{esModule:o,exports:s,options:a}}},1:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={props:{mdTheme:String},data:function(){return{closestThemedParent:!1}},methods:{getClosestThemedParent:function(e){return!(!e||!e.$el||0===e._uid)&&(e.mdTheme||e.mdName?e:this.getClosestThemedParent(e.$parent))}},computed:{themeClass:function(){if(this.mdTheme)return"md-theme-"+this.mdTheme;var e=this.closestThemedParent.mdTheme;return e||(e=this.closestThemedParent?this.closestThemedParent.mdName:this.$material.currentTheme),"md-theme-"+e}},mounted:function(){this.closestThemedParent=this.getClosestThemedParent(this.$parent),this.$material.currentTheme||this.$material.setCurrentTheme("default")}},e.exports=t.default},107:function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e){e.component("md-progress",d.default),e.material.styles.push(c.default)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o;var s=r(304),d=n(s),a=r(247),c=n(a);e.exports=t.default},166:function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),s=n(o);t.default={props:{mdIndeterminate:Boolean,mdProgress:{type:Number,default:0}},mixins:[s.default],computed:{classes:function(){return{"md-indeterminate":this.mdIndeterminate}},styles:function(){if(!this.mdIndeterminate)return{width:this.mdProgress+"%"}}}},e.exports=t.default},209:function(e,t){},247:function(e,t){e.exports=".THEME_NAME.md-progress{background-color:PRIMARY-COLOR-0.38}.THEME_NAME.md-progress:not(.md-indeterminate) .md-progress-track{background-color:PRIMARY-COLOR}.THEME_NAME.md-progress .md-progress-track:after,.THEME_NAME.md-progress .md-progress-track:before{background-color:PRIMARY-COLOR}.THEME_NAME.md-progress.md-accent{background-color:ACCENT-COLOR-0.38}.THEME_NAME.md-progress.md-accent:not(.md-indeterminate) .md-progress-track{background-color:ACCENT-COLOR}.THEME_NAME.md-progress.md-accent .md-progress-track:after,.THEME_NAME.md-progress.md-accent .md-progress-track:before{background-color:ACCENT-COLOR}.THEME_NAME.md-progress.md-warn{background-color:WARN-COLOR-0.38}.THEME_NAME.md-progress.md-warn:not(.md-indeterminate) .md-progress-track{background-color:WARN-COLOR}.THEME_NAME.md-progress.md-warn .md-progress-track:after,.THEME_NAME.md-progress.md-warn .md-progress-track:before{background-color:WARN-COLOR}\n"},304:function(e,t,r){r(209);var n=r(0)(r(166),r(350),null,null);e.exports=n.exports},350:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("transition",{attrs:{name:"md-progress",appear:""}},[r("div",{staticClass:"md-progress",class:[e.themeClass,e.classes]},[r("div",{staticClass:"md-progress-track",style:e.styles})])])},staticRenderFns:[]}},414:function(e,t,r){e.exports=r(107)}})}));

5
dist/components/mdRadio/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-radio{width:auto;margin:16px 8px 16px 0;display:-ms-inline-flexbox;display:inline-flex;position:relative}.md-radio .md-radio-container{width:20px;height:20px;position:relative;border-radius:50%;border:2px solid rgba(0,0,0,.54);transition:all .4s cubic-bezier(.25,.8,.25,1)}.md-radio .md-radio-container:after{position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;opacity:0;transform:scale3D(.38,.38,1);transition:all .3s cubic-bezier(.55,0,.55,.2);content:" "}.md-radio .md-radio-container input{position:absolute;left:-999em}.md-radio .md-radio-container .md-ink-ripple{top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;color:rgba(0,0,0,.54)}.md-radio .md-radio-container .md-ink-ripple .md-ripple{width:48px!important;height:48px!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.md-radio .md-radio-label{height:20px;padding-left:8px;line-height:20px}.md-radio.md-checked .md-radio-container:after{opacity:1;transform:scale3D(1,1,1);transition:all .4s cubic-bezier(.25,.8,.25,1)}

1
dist/components/mdRadio/index.css.map vendored Normal file
View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdRadio/index.css","sourceRoot":""}

396
dist/components/mdRadio/index.debug.js vendored Normal file
View file

@ -0,0 +1,396 @@
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["VueMaterial"] = factory();
else
root["VueMaterial"] = factory();
})(this, (function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 415);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, exports) {
module.exports = function normalizeComponent (
rawScriptExports,
compiledTemplate,
scopeId,
cssModules
) {
var esModule
var scriptExports = rawScriptExports = rawScriptExports || {}
// ES6 modules interop
var type = typeof rawScriptExports.default
if (type === 'object' || type === 'function') {
esModule = rawScriptExports
scriptExports = rawScriptExports.default
}
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (compiledTemplate) {
options.render = compiledTemplate.render
options.staticRenderFns = compiledTemplate.staticRenderFns
}
// scopedId
if (scopeId) {
options._scopeId = scopeId
}
// inject cssModules
if (cssModules) {
var computed = options.computed || (options.computed = {})
Object.keys(cssModules).forEach((function (key) {
var module = cssModules[key]
computed[key] = function () { return module }
}))
}
return {
esModule: esModule,
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 1:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = {
props: {
mdTheme: String
},
data: function data() {
return {
closestThemedParent: false
};
},
methods: {
getClosestThemedParent: function getClosestThemedParent($parent) {
if (!$parent || !$parent.$el || $parent._uid === 0) {
return false;
}
if ($parent.mdTheme || $parent.mdName) {
return $parent;
}
return this.getClosestThemedParent($parent.$parent);
}
},
computed: {
themeClass: function themeClass() {
if (this.mdTheme) {
return 'md-theme-' + this.mdTheme;
}
var theme = this.closestThemedParent.mdTheme;
if (!theme) {
if (this.closestThemedParent) {
theme = this.closestThemedParent.mdName;
} else {
theme = this.$material.currentTheme;
}
}
return 'md-theme-' + theme;
}
},
mounted: function mounted() {
this.closestThemedParent = this.getClosestThemedParent(this.$parent);
if (!this.$material.currentTheme) {
this.$material.setCurrentTheme('default');
}
}
};
module.exports = exports['default'];
/***/ }),
/***/ 108:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;
var _mdRadio = __webpack_require__(305);
var _mdRadio2 = _interopRequireDefault(_mdRadio);
var _mdRadio3 = __webpack_require__(248);
var _mdRadio4 = _interopRequireDefault(_mdRadio3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function install(Vue) {
Vue.component('md-radio', _mdRadio2.default);
Vue.material.styles.push(_mdRadio4.default);
}
module.exports = exports['default'];
/***/ }),
/***/ 167:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _mixin = __webpack_require__(1);
var _mixin2 = _interopRequireDefault(_mixin);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
props: {
name: String,
id: String,
value: [String, Boolean, Number],
mdValue: {
type: [String, Boolean, Number],
required: true
},
disabled: Boolean
},
mixins: [_mixin2.default],
computed: {
classes: function classes() {
return {
'md-checked': typeof this.value !== 'undefined' && this.mdValue.toString() === this.value.toString(),
'md-disabled': this.disabled
};
}
},
methods: {
toggleCheck: function toggleCheck($event) {
if (!this.disabled) {
this.$emit('change', this.mdValue, $event);
this.$emit('input', this.mdValue, $event);
}
}
}
}; //
//
//
//
//
//
//
//
//
//
//
//
//
//
//
module.exports = exports['default'];
/***/ }),
/***/ 201:
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
/***/ }),
/***/ 248:
/***/ (function(module, exports) {
module.exports = ".THEME_NAME.md-radio .md-radio-container:after {\n background-color: ACCENT-COLOR; }\n\n.THEME_NAME.md-radio.md-checked .md-radio-container {\n border-color: ACCENT-COLOR; }\n\n.THEME_NAME.md-radio.md-checked .md-ink-ripple {\n color: ACCENT-COLOR; }\n\n.THEME_NAME.md-radio.md-checked .md-ripple {\n opacity: .38; }\n\n.THEME_NAME.md-radio.md-primary .md-radio-container:after {\n background-color: PRIMARY-COLOR; }\n\n.THEME_NAME.md-radio.md-primary.md-checked .md-radio-container {\n border-color: PRIMARY-COLOR; }\n\n.THEME_NAME.md-radio.md-primary.md-checked .md-ink-ripple {\n color: PRIMARY-COLOR; }\n\n.THEME_NAME.md-radio.md-warn .md-radio-container:after {\n background-color: WARN-COLOR; }\n\n.THEME_NAME.md-radio.md-warn.md-checked .md-radio-container {\n border-color: WARN-COLOR; }\n\n.THEME_NAME.md-radio.md-warn.md-checked .md-ink-ripple {\n color: WARN-COLOR; }\n\n.THEME_NAME.md-radio.md-disabled .md-radio-container {\n border-color: rgba(0, 0, 0, 0.26); }\n .THEME_NAME.md-radio.md-disabled .md-radio-container:after {\n background-color: rgba(0, 0, 0, 0.26); }\n\n.THEME_NAME.md-radio.md-disabled.md-checked .md-radio-container {\n border-color: rgba(0, 0, 0, 0.26); }\n"
/***/ }),
/***/ 305:
/***/ (function(module, exports, __webpack_require__) {
/* styles */
__webpack_require__(201)
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(167),
/* template */
__webpack_require__(332),
/* scopeId */
null,
/* cssModules */
null
)
Component.options.__file = "/Users/mrufino/Projects/personal/github/vue-material/src/components/mdRadio/mdRadio.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key !== "__esModule"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdRadio.vue: functional components are not supported with templates, they should use render functions.")}
/* hot reload */
if (false) {(function () {
var hotAPI = require("vue-hot-reload-api")
hotAPI.install(require("vue"), false)
if (!hotAPI.compatible) return
module.hot.accept()
if (!module.hot.data) {
hotAPI.createRecord("data-v-079386ce", Component.options)
} else {
hotAPI.reload("data-v-079386ce", Component.options)
}
})()}
module.exports = Component.exports
/***/ }),
/***/ 332:
/***/ (function(module, exports, __webpack_require__) {
module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-radio",
class: [_vm.themeClass, _vm.classes]
}, [_c('div', {
staticClass: "md-radio-container",
on: {
"click": _vm.toggleCheck
}
}, [_c('input', {
attrs: {
"type": "radio",
"name": _vm.name,
"id": _vm.id,
"disabled": _vm.disabled
},
domProps: {
"value": _vm.value
}
}), _vm._v(" "), _c('md-ink-ripple', {
attrs: {
"md-disabled": _vm.disabled
}
})], 1), _vm._v(" "), (_vm.$slots.default) ? _c('label', {
staticClass: "md-radio-label",
attrs: {
"for": _vm.id || _vm.name
}
}, [_vm._t("default")], 2) : _vm._e()])
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-079386ce", module.exports)
}
}
/***/ }),
/***/ 415:
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(108);
/***/ })
/******/ });
}));

6
dist/components/mdRadio/index.js vendored Normal file
View file

@ -0,0 +1,6 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/
!(function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VueMaterial=t():e.VueMaterial=t()})(this,(function(){return (function(e){function t(d){if(r[d])return r[d].exports;var o=r[d]={i:d,l:!1,exports:{}};return e[d].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var r={};return t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,r,d){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:d})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s=415)})({0:function(e,t){e.exports=function(e,t,r,d){var o,n=e=e||{},i=typeof e.default;"object"!==i&&"function"!==i||(o=e,n=e.default);var a="function"==typeof n?n.options:n;if(t&&(a.render=t.render,a.staticRenderFns=t.staticRenderFns),r&&(a._scopeId=r),d){var s=a.computed||(a.computed={});Object.keys(d).forEach((function(e){var t=d[e];s[e]=function(){return t}}))}return{esModule:o,exports:n,options:a}}},1:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={props:{mdTheme:String},data:function(){return{closestThemedParent:!1}},methods:{getClosestThemedParent:function(e){return!(!e||!e.$el||0===e._uid)&&(e.mdTheme||e.mdName?e:this.getClosestThemedParent(e.$parent))}},computed:{themeClass:function(){if(this.mdTheme)return"md-theme-"+this.mdTheme;var e=this.closestThemedParent.mdTheme;return e||(e=this.closestThemedParent?this.closestThemedParent.mdName:this.$material.currentTheme),"md-theme-"+e}},mounted:function(){this.closestThemedParent=this.getClosestThemedParent(this.$parent),this.$material.currentTheme||this.$material.setCurrentTheme("default")}},e.exports=t.default},108:function(e,t,r){"use strict";function d(e){return e&&e.__esModule?e:{default:e}}function o(e){e.component("md-radio",i.default),e.material.styles.push(s.default)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o;var n=r(305),i=d(n),a=r(248),s=d(a);e.exports=t.default},167:function(e,t,r){"use strict";function d(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),n=d(o);t.default={props:{name:String,id:String,value:[String,Boolean,Number],mdValue:{type:[String,Boolean,Number],required:!0},disabled:Boolean},mixins:[n.default],computed:{classes:function(){return{"md-checked":"undefined"!=typeof this.value&&this.mdValue.toString()===this.value.toString(),"md-disabled":this.disabled}}},methods:{toggleCheck:function(e){this.disabled||(this.$emit("change",this.mdValue,e),this.$emit("input",this.mdValue,e))}}},e.exports=t.default},201:function(e,t){},248:function(e,t){e.exports=".THEME_NAME.md-radio .md-radio-container:after{background-color:ACCENT-COLOR}.THEME_NAME.md-radio.md-checked .md-radio-container{border-color:ACCENT-COLOR}.THEME_NAME.md-radio.md-checked .md-ink-ripple{color:ACCENT-COLOR}.THEME_NAME.md-radio.md-checked .md-ripple{opacity:.38}.THEME_NAME.md-radio.md-primary .md-radio-container:after{background-color:PRIMARY-COLOR}.THEME_NAME.md-radio.md-primary.md-checked .md-radio-container{border-color:PRIMARY-COLOR}.THEME_NAME.md-radio.md-primary.md-checked .md-ink-ripple{color:PRIMARY-COLOR}.THEME_NAME.md-radio.md-warn .md-radio-container:after{background-color:WARN-COLOR}.THEME_NAME.md-radio.md-warn.md-checked .md-radio-container{border-color:WARN-COLOR}.THEME_NAME.md-radio.md-warn.md-checked .md-ink-ripple{color:WARN-COLOR}.THEME_NAME.md-radio.md-disabled .md-radio-container{border-color:rgba(0,0,0,0.26)}.THEME_NAME.md-radio.md-disabled .md-radio-container:after{background-color:rgba(0,0,0,0.26)}.THEME_NAME.md-radio.md-disabled.md-checked .md-radio-container{border-color:rgba(0,0,0,0.26)}\n"},305:function(e,t,r){r(201);var d=r(0)(r(167),r(332),null,null);e.exports=d.exports},332:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{staticClass:"md-radio",class:[e.themeClass,e.classes]},[r("div",{staticClass:"md-radio-container",on:{click:e.toggleCheck}},[r("input",{attrs:{type:"radio",name:e.name,id:e.id,disabled:e.disabled},domProps:{value:e.value}}),e._v(" "),r("md-ink-ripple",{attrs:{"md-disabled":e.disabled}})],1),e._v(" "),e.$slots.default?r("label",{staticClass:"md-radio-label",attrs:{for:e.id||e.name}},[e._t("default")],2):e._e()])},staticRenderFns:[]}},415:function(e,t,r){e.exports=r(108)}})}));

5
dist/components/mdSelect/index.css vendored Normal file
View file

@ -0,0 +1,5 @@
/*!
* Vue Material v0.7.1
* Made with love by Marcos Moura
* Released under the MIT License.
*/.md-select{width:100%;min-width:128px;height:32px;position:relative}.md-select:focus{outline:none}.md-select:after{margin-top:2px;position:absolute;top:50%;right:0;transform:translateY(-50%) scaleY(.45) scaleX(.85);transition:all .15s linear;content:"\25BC"}.md-select.md-active .md-select-menu{top:-8px;pointer-events:auto;opacity:1;transform:translateY(-8px) scale3D(1,1,1);transform-origin:center top;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.25s;transition-property:opacity,transform,top}.md-select.md-active .md-select-menu>*{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.15s;transition-delay:.1s}.md-select.md-disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;user-drag:none}.md-select select{position:absolute;left:-999em}.md-select .md-menu,.md-select .md-select-value{width:100%;height:32px;display:block;position:relative}.md-select .md-select-value{padding-right:24px;cursor:pointer;overflow:hidden;z-index:1;font-size:16px;line-height:33px;text-overflow:ellipsis;white-space:nowrap}.md-select .md-subheader{color:hsla(0,0%,46%,.87);text-transform:uppercase}.md-select .md-subheader:first-child{margin-top:-8px}.md-select-content{width:auto;max-height:256px}.md-select-content.md-direction-bottom-right{margin-top:-15px;margin-left:-16px}.md-select-content .md-menu-item .md-list-item-holder{overflow:visible;-ms-flex-pack:start;justify-content:flex-start}.md-select-content.md-multiple .md-checkbox{margin:0}.md-select-content.md-multiple .md-checkbox-label{padding-left:16px;cursor:pointer}

View file

@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"components/mdSelect/index.css","sourceRoot":""}

2239
dist/components/mdSelect/index.debug.js vendored Normal file

File diff suppressed because it is too large Load diff

Some files were not shown because too many files have changed in this diff Show more