UNPKG

vuetify

Version:

Vue.js 2 Semantic Component Framework

1,752 lines (1,388 loc) 551 kB
(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["Vuetify"] = factory(); else root["Vuetify"] = factory(); })(typeof self !== 'undefined' ? self : 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; /******/ /******/ // 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 = "/dist/"; /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = 69); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); exports.default = { name: 'colorable', props: { color: String }, data: function data() { return { defaultColor: null }; }, computed: { computedColor: function computedColor() { return this.color || this.defaultColor; } }, methods: { addBackgroundColorClassChecks: function addBackgroundColorClassChecks() { var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var color = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.computedColor; var classes = Object.assign({}, obj); if (color) { classes[color] = true; } return classes; }, addTextColorClassChecks: function addTextColorClassChecks() { var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var color = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.computedColor; var classes = Object.assign({}, obj); if (color) { var _color$trim$split = color.trim().split(' '), _color$trim$split2 = _slicedToArray(_color$trim$split, 2), colorName = _color$trim$split2[0], colorModifier = _color$trim$split2[1]; classes[colorName + '--text'] = true; colorModifier && (classes['text--' + colorModifier] = true); } return classes; } } }; /***/ }), /* 1 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = { name: 'themeable', props: { dark: Boolean, light: Boolean }, computed: { themeClasses: function themeClasses() { return { 'theme--light': this.light, 'theme--dark': this.dark }; } } }; /***/ }), /* 2 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; exports.createSimpleFunctional = createSimpleFunctional; exports.createSimpleTransition = createSimpleTransition; exports.createJavaScriptTransition = createJavaScriptTransition; exports.directiveConfig = directiveConfig; exports.addOnceEventListener = addOnceEventListener; exports.getObjectValueByPath = getObjectValueByPath; exports.createRange = createRange; exports.getZIndex = getZIndex; exports.escapeHTML = escapeHTML; exports.filterObjectOnKeys = filterObjectOnKeys; exports.filterChildren = filterChildren; function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } function createSimpleFunctional(c) { var el = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'div'; var name = arguments[2]; name = name || c.replace(/__/g, '-'); return { name: 'v-' + name, functional: true, render: function render(h, _ref) { var data = _ref.data, children = _ref.children; data.staticClass = (c + ' ' + (data.staticClass || '')).trim(); return h(el, data, children); } }; } function createSimpleTransition(name) { var origin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top center 0'; var mode = arguments[2]; return { name: name, functional: true, props: { origin: { type: String, default: origin } }, render: function render(h, context) { context.data = context.data || {}; context.data.props = { name: name }; context.data.on = context.data.on || {}; if (!Object.isExtensible(context.data.on)) { context.data.on = _extends({}, context.data.on); } if (mode) context.data.props.mode = mode; context.data.on.beforeEnter = function (el) { el.style.transformOrigin = context.props.origin; el.style.webkitTransformOrigin = context.props.origin; }; return h('transition', context.data, context.children); } }; } function createJavaScriptTransition(name, functions) { var css = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; var mode = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'in-out'; return { name: name, functional: true, props: { css: { type: Boolean, default: css }, mode: { type: String, default: mode } }, render: function render(h, context) { var data = { props: _extends({}, context.props, { name: name }), on: functions }; return h('transition', data, context.children); } }; } function directiveConfig(binding) { var defaults = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; return Object.assign({}, defaults, binding.modifiers, { value: binding.arg }, binding.value || {}); } function addOnceEventListener(el, event, cb) { var once = function once() { cb(); el.removeEventListener(event, once, false); }; el.addEventListener(event, once, false); } function getObjectValueByPath(obj, path) { // credit: http://stackoverflow.com/questions/6491463/accessing-nested-javascript-objects-with-string-key#comment55278413_6491621 if (!path || path.constructor !== String) return; path = path.replace(/\[(\w+)\]/g, '.$1'); // convert indexes to properties path = path.replace(/^\./, ''); // strip a leading dot var a = path.split('.'); for (var i = 0, n = a.length; i < n; ++i) { var k = a[i]; if (obj instanceof Object && k in obj) { obj = obj[k]; } else { return; } } return obj; } function createRange(length) { return [].concat(_toConsumableArray(Array.from({ length: length }, function (v, k) { return k; }))); } function getZIndex(el) { if (!el || el.nodeType !== Node.ELEMENT_NODE) return 0; var zi = document.defaultView.getComputedStyle(el).getPropertyValue('z-index'); if (isNaN(zi)) return getZIndex(el.parentNode); return zi; } var tagsToReplace = { '&': '&amp;', '<': '&lt;', '>': '&gt;' }; function escapeHTML(str) { return str.replace(/[&<>]/g, function (tag) { return tagsToReplace[tag] || tag; }); } function filterObjectOnKeys(obj, keys) { var filtered = {}; for (var i = 0; i < keys.length; i++) { var key = keys[i]; if (typeof obj[key] !== 'undefined') { filtered[key] = obj[key]; } } return filtered; } function filterChildren() { var array = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var tag = arguments[1]; return array.filter(function (child) { return child.componentOptions && child.componentOptions.Ctor.options.name === tag; }); } /***/ }), /* 3 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _VIcon = __webpack_require__(91); var _VIcon2 = _interopRequireDefault(_VIcon); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /* istanbul ignore next */ _VIcon2.default.install = function install(Vue) { Vue.component(_VIcon2.default.name, _VIcon2.default); }; exports.default = _VIcon2.default; /***/ }), /* 4 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.inject = inject; exports.provide = provide; var _console = __webpack_require__(6); function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function generateWarning(child, parent) { return function () { return (0, _console.consoleWarn)('The ' + child + ' component must be used inside a ' + parent); }; } function inject(namespace, child, parent) { var defaultImpl = child && parent ? { register: generateWarning(child, parent), unregister: generateWarning(child, parent) } : null; return { name: 'registrable-inject', inject: _defineProperty({}, namespace, { default: defaultImpl }) }; } function provide(namespace) { return { name: 'registrable-provide', methods: { register: null, unregister: null }, provide: function provide() { return _defineProperty({}, namespace, { register: this.register, unregister: this.unregister }); } }; } /***/ }), /* 5 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.factory = factory; function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function factory() { var _watch; var prop = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'value'; var event = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'input'; return { name: 'toggleable', model: { prop: prop, event: event }, props: _defineProperty({}, prop, { required: false }), data: function data() { return { isActive: !!this[prop] }; }, watch: (_watch = {}, _defineProperty(_watch, prop, function (val) { this.isActive = !!val; }), _defineProperty(_watch, 'isActive', function isActive(val) { !!val !== this[prop] && this.$emit(event, val); }), _watch) }; } var Toggleable = factory(); exports.default = Toggleable; /***/ }), /* 6 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.consoleWarn = consoleWarn; exports.consoleError = consoleError; function createMessage(message, componentInstance) { var componentInfo = componentInstance ? ' in "' + componentInstance.$options.name + '"' : ''; return '[Vuetify] ' + message + componentInfo; } function consoleWarn(message) { var componentInstance = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; console.warn(createMessage(message, componentInstance)); } function consoleError(message) { var componentInstance = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; console.error(createMessage(message, componentInstance)); } /***/ }), /* 7 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.VRowExpandTransition = exports.VExpandTransition = exports.VSlideYReverseTransition = exports.VSlideYTransition = exports.VSlideXReverseTransition = exports.VSlideXTransition = exports.VScaleTransition = exports.VFadeTransition = exports.VDialogBottomTransition = exports.VDialogTransition = exports.VFabTransition = exports.VMenuTransition = exports.VTabReverseTransition = exports.VTabTransition = exports.VCarouselReverseTransition = exports.VCarouselTransition = exports.VBottomSheetTranstion = undefined; var _helpers = __webpack_require__(2); var _expandTransition = __webpack_require__(39); var _expandTransition2 = _interopRequireDefault(_expandTransition); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } // Component specific transitions var VBottomSheetTranstion = exports.VBottomSheetTranstion = (0, _helpers.createSimpleTransition)('bottom-sheet-transition'); var VCarouselTransition = exports.VCarouselTransition = (0, _helpers.createSimpleTransition)('carousel-transition'); var VCarouselReverseTransition = exports.VCarouselReverseTransition = (0, _helpers.createSimpleTransition)('carousel-reverse-transition'); var VTabTransition = exports.VTabTransition = (0, _helpers.createSimpleTransition)('tab-transition'); var VTabReverseTransition = exports.VTabReverseTransition = (0, _helpers.createSimpleTransition)('tab-reverse-transition'); var VMenuTransition = exports.VMenuTransition = (0, _helpers.createSimpleTransition)('menu-transition'); var VFabTransition = exports.VFabTransition = (0, _helpers.createSimpleTransition)('fab-transition', 'center center', 'out-in'); // Generic transitions var VDialogTransition = exports.VDialogTransition = (0, _helpers.createSimpleTransition)('dialog-transition'); var VDialogBottomTransition = exports.VDialogBottomTransition = (0, _helpers.createSimpleTransition)('dialog-bottom-transition'); var VFadeTransition = exports.VFadeTransition = (0, _helpers.createSimpleTransition)('fade-transition'); var VScaleTransition = exports.VScaleTransition = (0, _helpers.createSimpleTransition)('scale-transition'); var VSlideXTransition = exports.VSlideXTransition = (0, _helpers.createSimpleTransition)('slide-x-transition'); var VSlideXReverseTransition = exports.VSlideXReverseTransition = (0, _helpers.createSimpleTransition)('slide-x-reverse-transition'); var VSlideYTransition = exports.VSlideYTransition = (0, _helpers.createSimpleTransition)('slide-y-transition'); var VSlideYReverseTransition = exports.VSlideYReverseTransition = (0, _helpers.createSimpleTransition)('slide-y-reverse-transition'); // JavaScript transitions var VExpandTransition = exports.VExpandTransition = (0, _helpers.createJavaScriptTransition)('expand-transition', (0, _expandTransition2.default)()); var VRowExpandTransition = exports.VRowExpandTransition = (0, _helpers.createJavaScriptTransition)('row-expand-transition', (0, _expandTransition2.default)('datatable__expand-col--expanded')); exports.default = install; /* istanbul ignore next */ function install(Vue) { Vue.component('v-bottom-sheet-transition', VBottomSheetTranstion); Vue.component('v-carousel-transition', VCarouselTransition); Vue.component('v-carousel-reverse-transition', VCarouselReverseTransition); Vue.component('v-dialog-transition', VDialogTransition); Vue.component('v-dialog-bottom-transition', VDialogBottomTransition); Vue.component('v-fab-transition', VFabTransition); Vue.component('v-fade-transition', VFadeTransition); Vue.component('v-menu-transition', VMenuTransition); Vue.component('v-scale-transition', VScaleTransition); Vue.component('v-slide-x-transition', VSlideXTransition); Vue.component('v-slide-x-reverse-transition', VSlideXReverseTransition); Vue.component('v-slide-y-transition', VSlideYTransition); Vue.component('v-slide-y-reverse-transition', VSlideYReverseTransition); Vue.component('v-tab-reverse-transition', VTabReverseTransition); Vue.component('v-tab-transition', VTabTransition); Vue.component('v-expand-transition', VExpandTransition); Vue.component('v-row-expand-transition', VRowExpandTransition); } /***/ }), /* 8 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function closeConditional() { return false; } function directive(e, el, binding) { // Args may not always be supplied binding.args = binding.args || {}; // If no closeConditional was supplied assign a default var isActive = binding.args.closeConditional || closeConditional; // The include element callbacks below can be expensive // so we should avoid calling them when we're not active. // Explicitly check for false to allow fallback compatibility // with non-toggleable components if (!e || isActive(e) === false) return; // If click was triggered programmaticaly (domEl.click()) then // it shouldn't be treated as click-outside // Chrome/Firefox support isTrusted property // IE/Edge support pointerType property (empty if not triggered // by pointing device) if ('isTrusted' in e && !e.isTrusted || 'pointerType' in e && !e.pointerType) return; // Check if additional elements were passed to be included in check // (click must be outside all included elements, if any) var elements = (binding.args.include || function () { return []; })(); // Add the root element for the component this directive was defined on elements.push(el); // Check if it's a click outside our elements, and then if our callback returns true. // Non-toggleable components should take action in their callback and return falsy. // Toggleable can return true if it wants to deactivate. // Note that, because we're in the capture phase, this callback will occure before // the bubbling click event on any outside elements. !clickedInEls(e, elements) && setTimeout(function () { isActive(e) && binding.value(); }, 0); } function clickedInEls(e, elements) { // Get position of click var x = e.clientX, y = e.clientY; // Loop over all included elements to see if click was in any of them var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { for (var _iterator = elements[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { var el = _step.value; if (clickedInEl(el, x, y)) return true; } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } return false; } function clickedInEl(el, x, y) { // Get bounding rect for element // (we're in capturing event and we want to check for multiple elements, // so can't use target.) var b = el.getBoundingClientRect(); // Check if the click was in the element's bounding rect return x >= b.left && x <= b.right && y >= b.top && y <= b.bottom; } exports.default = { name: 'click-outside', // [data-app] may not be found // if using bind, inserted makes // sure that the root element is // available, iOS does not support // clicks on body inserted: function inserted(el, binding) { var onClick = function onClick(e) { return directive(e, el, binding); }; // iOS does not recognize click events on document // or body, this is the entire purpose of the v-app // component and [data-app], stop removing this var app = document.querySelector('[data-app]') || document.body; // This is only for unit tests app.addEventListener('click', onClick, true); el._clickOutside = onClick; }, unbind: function unbind(el) { var app = document.querySelector('[data-app]') || document.body; // This is only for unit tests app && app.removeEventListener('click', el._clickOutside, true); delete el._clickOutside; } }; /***/ }), /* 9 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var _touchstart = function _touchstart(event, wrapper) { var touch = event.changedTouches[0]; wrapper.touchstartX = touch.clientX; wrapper.touchstartY = touch.clientY; wrapper.start && wrapper.start(Object.assign(event, wrapper)); }; var _touchend = function _touchend(event, wrapper) { var touch = event.changedTouches[0]; wrapper.touchendX = touch.clientX; wrapper.touchendY = touch.clientY; wrapper.end && wrapper.end(Object.assign(event, wrapper)); handleGesture(wrapper); }; var _touchmove = function _touchmove(event, wrapper) { var touch = event.changedTouches[0]; wrapper.touchmoveX = touch.clientX; wrapper.touchmoveY = touch.clientY; wrapper.move && wrapper.move(Object.assign(event, wrapper)); }; var handleGesture = function handleGesture(wrapper) { var touchstartX = wrapper.touchstartX, touchendX = wrapper.touchendX, touchstartY = wrapper.touchstartY, touchendY = wrapper.touchendY; var dirRatio = 0.5; var minDistance = 16; wrapper.offsetX = touchendX - touchstartX; wrapper.offsetY = touchendY - touchstartY; if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) { wrapper.left && touchendX < touchstartX - minDistance && wrapper.left(wrapper); wrapper.right && touchendX > touchstartX + minDistance && wrapper.right(wrapper); } if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) { wrapper.up && touchendY < touchstartY - minDistance && wrapper.up(wrapper); wrapper.down && touchendY > touchstartY + minDistance && wrapper.down(wrapper); } }; function inserted(el, _ref, _ref2) { var value = _ref.value; var context = _ref2.context; var wrapper = { touchstartX: 0, touchstartY: 0, touchendX: 0, touchendY: 0, touchmoveX: 0, touchmoveY: 0, offsetX: 0, offsetY: 0, left: value.left, right: value.right, up: value.up, down: value.down, start: value.start, move: value.move, end: value.end }; var target = value.parent ? el.parentNode : el; var options = value.options || { passive: true // Needed to pass unit tests };if (!target) return; var handlers = { touchstart: function touchstart(e) { return _touchstart(e, wrapper); }, touchend: function touchend(e) { return _touchend(e, wrapper); }, touchmove: function touchmove(e) { return _touchmove(e, wrapper); } }; target._touchHandlers = Object.assign(Object(target._touchHandlers), _defineProperty({}, context._uid, handlers)); var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { for (var _iterator = Object.keys(handlers)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { var eventName = _step.value; target.addEventListener(eventName, handlers[eventName], options); } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } } function unbind(el, _ref3, _ref4) { var value = _ref3.value; var context = _ref4.context; var target = value.parent ? el.parentNode : el; if (!target) return; var handlers = target._touchHandlers[context._uid]; var _iteratorNormalCompletion2 = true; var _didIteratorError2 = false; var _iteratorError2 = undefined; try { for (var _iterator2 = Object.keys(handlers)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { var eventName = _step2.value; target.removeEventListener(eventName, handlers[eventName]); } } catch (err) { _didIteratorError2 = true; _iteratorError2 = err; } finally { try { if (!_iteratorNormalCompletion2 && _iterator2.return) { _iterator2.return(); } } finally { if (_didIteratorError2) { throw _iteratorError2; } } } delete target._touchHandlers[context._uid]; } exports.default = { name: 'touch', inserted: inserted, unbind: unbind }; /***/ }), /* 10 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _VBtn = __webpack_require__(110); var _VBtn2 = _interopRequireDefault(_VBtn); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /* istanbul ignore next */ _VBtn2.default.install = function install(Vue) { Vue.component(_VBtn2.default.name, _VBtn2.default); }; exports.default = _VBtn2.default; /***/ }), /* 11 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function inserted(el, binding) { var callback = binding.value; var options = binding.options || { passive: true }; window.addEventListener('resize', callback, options); el._onResize = { callback: callback, options: options }; if (!binding.modifiers || !binding.modifiers.quiet) { callback(); } } function unbind(el, binding) { var _el$_onResize = el._onResize, callback = _el$_onResize.callback, options = _el$_onResize.options; window.removeEventListener('resize', callback, options); delete el._onResize; } exports.default = { name: 'resize', inserted: inserted, unbind: unbind }; /***/ }), /* 12 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.factory = factory; var _helpers = __webpack_require__(2); function factory() { var selected = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var props = { absolute: Boolean, bottom: Boolean, fixed: Boolean, left: Boolean, right: Boolean, top: Boolean }; return { name: 'positionable', props: selected.length ? (0, _helpers.filterObjectOnKeys)(props, selected) : props }; } exports.default = factory(); /***/ }), /* 13 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; var _ripple = __webpack_require__(17); var _ripple2 = _interopRequireDefault(_ripple); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } exports.default = { name: 'routable', directives: { Ripple: _ripple2.default }, props: { activeClass: String, append: Boolean, disabled: Boolean, exact: { type: Boolean, default: undefined }, exactActiveClass: String, href: [String, Object], to: [String, Object], nuxt: Boolean, replace: Boolean, ripple: [Boolean, Object], tag: String, target: String }, methods: { click: function click() {}, generateRouteLink: function generateRouteLink() { var exact = this.exact; var tag = void 0; var data = _defineProperty({ attrs: { disabled: this.disabled }, class: this.classes, props: {}, directives: [{ name: 'ripple', value: this.ripple && !this.disabled ? this.ripple : false }] }, this.to ? 'nativeOn' : 'on', _extends({}, this.$listeners, { click: this.click })); if (typeof this.exact === 'undefined') { exact = this.to === '/' || this.to === Object(this.to) && this.to.path === '/'; } if (this.to) { // Add a special activeClass hook // for component level styles var activeClass = this.activeClass; var exactActiveClass = this.exactActiveClass || activeClass; if (this.proxyClass) { activeClass += ' ' + this.proxyClass; exactActiveClass += ' ' + this.proxyClass; } tag = this.nuxt ? 'nuxt-link' : 'router-link'; Object.assign(data.props, { to: this.to, exact: exact, activeClass: activeClass, exactActiveClass: exactActiveClass, append: this.append, replace: this.replace }); } else { tag = this.href && 'a' || this.tag || 'a'; if (tag === 'a') { if (this.href) data.attrs.href = this.href; if (this.target) data.attrs.target = this.target; } } return { tag: tag, data: data }; } } }; /***/ }), /* 14 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.pad = exports.monthChange = exports.createNativeLocaleFormatter = undefined; var _createNativeLocaleFormatter = __webpack_require__(171); var _createNativeLocaleFormatter2 = _interopRequireDefault(_createNativeLocaleFormatter); var _monthChange = __webpack_require__(172); var _monthChange2 = _interopRequireDefault(_monthChange); var _pad = __webpack_require__(23); var _pad2 = _interopRequireDefault(_pad); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.createNativeLocaleFormatter = _createNativeLocaleFormatter2.default; exports.monthChange = _monthChange2.default; exports.pad = _pad2.default; /***/ }), /* 15 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = applicationable; var _positionable = __webpack_require__(12); function applicationable(value) { var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; return { name: 'applicationable', mixins: [(0, _positionable.factory)(['absolute', 'fixed'])], props: { app: Boolean }, computed: { applicationProperty: function applicationProperty() { return value; } }, watch: { // If previous value was app // reset the provided prop app: function app(x, prev) { prev ? this.removeApplication() : this.callUpdate(); } }, created: function created() { for (var i = 0, length = events.length; i < length; i++) { this.$watch(events[i], this.callUpdate); } }, mounted: function mounted() { this.callUpdate(); }, destroyed: function destroyed() { this.app && this.removeApplication(); }, methods: { callUpdate: function callUpdate() { if (!this.app) return; this.$vuetify.application[this.applicationProperty] = this.updateApplication(); }, removeApplication: function removeApplication() { this.$vuetify.application[this.applicationProperty] = 0; }, updateApplication: function updateApplication() {} } }; } /***/ }), /* 16 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /** * Bootable * @mixin * * Used to add lazy content functionality to components * Looks for change in "isActive" to automatically boot * Otherwise can be set manually */ exports.default = { name: 'bootable', data: function data() { return { isBooted: false }; }, props: { lazy: Boolean }, watch: { isActive: function isActive() { this.isBooted = true; } }, methods: { showLazyContent: function showLazyContent(content) { return this.isBooted || !this.lazy ? content : null; } } }; /***/ }), /* 17 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function style(el, value) { el.style['transform'] = value; el.style['webkitTransform'] = value; } var RippleDataAttribute = 'data-ripple'; var ripple = { /** * @param {Event} e * @param {Element} el * @param {{ class?: string, center?: boolean }} [value={}] */ show: function show(e, el, _ref) { var _ref$value = _ref.value, value = _ref$value === undefined ? {} : _ref$value; if (el.getAttribute(RippleDataAttribute) !== 'true') { return; } var container = document.createElement('span'); var animation = document.createElement('span'); container.appendChild(animation); container.className = 'ripple__container'; if (value.class) { container.className += ' ' + value.class; } var size = el.clientWidth > el.clientHeight ? el.clientWidth : el.clientHeight; animation.className = 'ripple__animation'; animation.style.width = size * (value.center ? 1 : 2) + 'px'; animation.style.height = animation.style.width; el.appendChild(container); var computed = window.getComputedStyle(el); if (computed.position !== 'absolute' && computed.position !== 'fixed') el.style.position = 'relative'; var offset = el.getBoundingClientRect(); var x = value.center ? '50%' : e.clientX - offset.left + 'px'; var y = value.center ? '50%' : e.clientY - offset.top + 'px'; animation.classList.add('ripple__animation--enter'); animation.classList.add('ripple__animation--visible'); style(animation, 'translate(-50%, -50%) translate(' + x + ', ' + y + ') scale3d(0.01,0.01,0.01)'); animation.dataset.activated = Date.now(); setTimeout(function () { animation.classList.remove('ripple__animation--enter'); style(animation, 'translate(-50%, -50%) translate(' + x + ', ' + y + ') scale3d(0.99,0.99,0.99)'); }, 0); }, hide: function hide(el) { if (el.getAttribute(RippleDataAttribute) !== 'true') { return; } var ripples = el.getElementsByClassName('ripple__animation'); if (ripples.length === 0) return; var animation = ripples[ripples.length - 1]; var diff = Date.now() - Number(animation.dataset.activated); var delay = 400 - diff; delay = delay < 0 ? 0 : delay; setTimeout(function () { animation.classList.remove('ripple__animation--visible'); setTimeout(function () { // Need to figure out a new way to do this try { if (ripples.length < 1) el.style.position = null; animation.parentNode && el.removeChild(animation.parentNode); } catch (e) {} }, 300); }, delay); } }; function isRippleEnabled(binding) { return typeof binding.value === 'undefined' || !!binding.value; } function directive(el, binding) { el.setAttribute(RippleDataAttribute, isRippleEnabled(binding)); if ('ontouchstart' in window) { el.addEventListener('touchend', function () { return ripple.hide(el); }, false); el.addEventListener('touchcancel', function () { return ripple.hide(el); }, false); } el.addEventListener('mousedown', function (e) { return ripple.show(e, el, binding); }, false); el.addEventListener('mouseup', function () { return ripple.hide(el); }, false); el.addEventListener('mouseleave', function () { return ripple.hide(el); }, false); // Anchor tags can be dragged, causes other hides to fail - #1537 el.addEventListener('dragstart', function () { return ripple.hide(el); }, false); } function unbind(el, binding) { el.removeEventListener('touchstart', function (e) { return ripple.show(e, el, binding); }, false); el.removeEventListener('mousedown', function (e) { return ripple.show(e, el, binding); }, false); el.removeEventListener('touchend', function () { return ripple.hide(el); }, false); el.removeEventListener('touchcancel', function () { return ripple.hide(el); }, false); el.removeEventListener('mouseup', function () { return ripple.hide(el); }, false); el.removeEventListener('mouseleave', function () { return ripple.hide(el); }, false); el.removeEventListener('dragstart', function () { return ripple.hide(el); }, false); } function update(el, binding) { if (binding.value === binding.oldValue) { return; } el.setAttribute(RippleDataAttribute, isRippleEnabled(binding)); } exports.default = { name: 'ripple', bind: directive, unbind: unbind, update: update }; /***/ }), /* 18 */ /***/ (function(module, exports) { // removed by extract-text-webpack-plugin /***/ }), /* 19 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _loadable = __webpack_require__(41); var _loadable2 = _interopRequireDefault(_loadable); var _themeable = __webpack_require__(1); var _themeable2 = _interopRequireDefault(_themeable); var _validatable = __webpack_require__(126); var _validatable2 = _interopRequireDefault(_validatable); var _VIcon = __webpack_require__(3); var _VIcon2 = _interopRequireDefault(_VIcon); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } exports.default = { name: 'input', components: { VIcon: _VIcon2.default }, mixins: [_loadable2.default, _themeable2.default, _validatable2.default], data: function data() { return { isFocused: false, tabFocused: false, internalTabIndex: null, lazyValue: this.value }; }, props: { appendIcon: String, appendIconCb: Function, disabled: Boolean, hint: String, hideDetails: Boolean, label: String, persistentHint: Boolean, placeholder: String, prependIcon: String, prependIconCb: Function, readonly: Boolean, required: Boolean, tabindex: { default: 0 }, toggleKeys: { type: Array, default: function _default() { return [13, 32]; } }, value: { required: false } }, computed: { inputGroupClasses: function inputGroupClasses() { return Object.assign({ 'input-group': true, 'input-group--async-loading': this.loading !== false, 'input-group--focused': this.isFocused, 'input-group--dirty': this.isDirty, 'input-group--tab-focused': this.tabFocused, 'input-group--disabled': this.disabled, 'input-group--error': this.hasError, 'input-group--append-icon': this.appendIcon, 'input-group--prepend-icon': this.prependIcon, 'input-group--required': this.required, 'input-group--hide-details': this.hideDetails, 'input-group--placeholder': !!this.placeholder, 'theme--dark': this.dark, 'theme--light': this.light }, this.classes); }, isDirty: function isDirty() { return !!this.inputValue; } }, methods: { groupFocus: function groupFocus(e) {}, groupBlur: function groupBlur(e) { this.tabFocused = false; }, genLabel: function genLabel() { return this.$createElement('label', { attrs: { for: this.$attrs.id } }, this.$slots.label || this.label); }, genMessages: function genMessages() { var messages = null; if (this.hint && (this.isFocused || this.persistentHint) && !this.validations.length) { messages = [this.genHint()]; } else if (this.validations.length) { messages = [this.genError(this.validations[0])]; } return this.$createElement('transition', { props: { name: 'slide-y-transition' } }, messages); }, genHint: function genHint() { return this.$createElement('div', { 'class': 'input-group__messages input-group__hint', domProps: { innerHTML: this.hint } }); }, genError: function genError(error) { return this.$createElement('div', { 'class': 'input-group__messages input-group__error' }, error); }, genIcon: function genIcon(type) { var _class; var defaultCallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; var shouldClear = type === 'append' && this.clearable && this.isDirty; var icon = shouldClear ? 'clear' : this[type + 'Icon']; var callback = shouldClear ? this.clearableCallback : this[type + 'IconCb'] || defaultCallback; return this.$createElement('v-icon', { 'class': (_class = {}, _defineProperty(_class, 'input-group__' + type + '-icon', true), _defineProperty(_class, 'input-group__icon-cb', !!callback), _defineProperty(_class, 'input-group__icon-clearable', shouldClear), _class), props: { disabled: this.disabled }, on: { click: function click(e) { if (!callback) return; e.stopPropagation(); callback(); } } }, icon); }, genInputGroup: function genInputGroup(input) { var _this = this; var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var defaultAppendCallback = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; var children = []; var wrapperChildren = []; var detailsChildren = []; data = Object.assign({}, { 'class': this.inputGroupClasses, attrs: { tabindex: this.disabled ? -1 : this.internalTabIndex || this.tabindex }, on: { focus: this.groupFocus, blur: this.groupBlur, click: function click() { return _this.tabFocused = false; }, keyup: function keyup(e) { if ([9, 16].includes(e.keyCode)) { _this.tabFocused = true; } }, keydown: function keydown(e) { if (!_this.toggle) return; if (_this.toggleKeys.includes(e.keyCode)) { e.preventDefault(); _this.toggle(); } } } }, data); if (this.$slots.label || this.label) { children.push(this.genLabel()); } wrapperChildren.push(input); if (this.prependIcon) { wrapperChildren.unshift(this.genIcon('prepend')); } if (this.appendIcon || this.clearable) { wrapperChildren.push(this.genIcon('append', defaultAppendCallback)); } var progress = this.genProgress(); progress && detailsChildren.push(progress); children.push(this.$createElement('div', { 'class': 'input-group__input' }, wrapperChildren)); !this.hideDetails && detailsChildren.push(this.genMessages()); if (this.counter) { detailsChildren.push(this.genCounter()); } children.push(this.$createElement('div', { 'class': 'input-group__details' }, detailsChildren)); return this.$createElement('div', data, children); } } }; /***/ }), /* 20 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } function searchChildren(children) { var results = []; for (var index = 0; index < children.length; index++) { var child = children[index]; if (child.isActive && child.isDependent) { results.push(child); } else { results.push.apply(results, _toConsumableArray(searchChildren(child.$children))); } } return results; } exports.default = { name: 'dependent', data: function data() { return { closeDependents: true, isDependent: true }; }, methods: { getOpenDependents: function getOpenDependents() { if (this.closeDependents) return searchChildren(this.$children); return []; }, getOpenDependentElements: function getOpenDependentElements() { var result = []; var openDependents = this.getOpenDependents(); for (var index = 0; index < openDependents.length; index++) { result.push.apply(result, _toConsumableArray(openDependents[index].getClickableDependentElements())); } return result; }, getClickableDependentElements: function getClickableDependentElements() { var result = [this.$el]; if (this.$refs.content) result.push(this.$refs.content); result.push.apply(result, _toConsumableArray(this.getOpenDependentElements())); return result; } }, watch: { isActive: function isActive(val) { if (val) return; var openDependents = this.getOpenDependents(); for (var index = 0; index < openDependents.length; index++) { openDependents[index].isActive = false; } } } }; /***/ }), /* 21 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.VCardText = exports.VCardActions = exports.VCardTitle = exports.VCardMedia = exports.VCard = undefined; var _helpers = __webpack_require__(2); var _VCard = __webpack_require__(115); var _VCard2 = _interopRequireDefault(_VCard); var _VCardMedia = __webpack_require__(117); var _VCardMedia2 = _interopRequireDefault(_VCardMedia); var _VCardTitle = __webpack_require__(118); var _VCardTitle2 = _interopRequireDefault(_VCardTitle); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var VCardActions = (0, _helpers.createSimpleFunctional)('card__actions'); var VCardText = (0, _helpers.createSimpleFunctional)('card__text'); exports.VCard = _VCard2.default; exports.VCardMedia = _VCardMedia2.default; exports.VCardTitle = _VCardTitle2.default; exports.VCardActions = VCardActions; exports.VCardText = VCardText; /* istanbul ignore next */ _VCard2.default.install = function install(Vue) { Vue.component(_VCard2.default.name, _VCard2.default); Vue.component(_VCardMedia2.default.name, _VCardMedia2.default); Vue.component(_VCardTitle2.default.name, _VCardTitle2.default); Vue.component(VCardActions.name, VCardActions); Vue.component(VCardText.name, VCardText); }; exports.default = _VCard2.default; /***/ }),