UNPKG

@world-vision-canada/wvc-design-system

Version:

WVC Vue Design system is a fork of Vue Design System, an open-source tool for building Design Systems with Vue.js

623 lines (524 loc) 26.2 kB
((typeof self !== 'undefined' ? self : this)["webpackJsonpwvc"] = (typeof self !== 'undefined' ? self : this)["webpackJsonpwvc"] || []).push([[17],{ /***/ "079d": /***/ (function(module, exports) { module.exports = { functional: true, render(_h, _vm) { const { _c, _v, data, children = [] } = _vm; const { class: classNames, staticClass, style, staticStyle, attrs = {}, ...rest } = data; return _c( 'svg', { class: [classNames,staticClass], style: [style,staticStyle], attrs: Object.assign({"xmlns":"http://www.w3.org/2000/svg","width":"8","height":"12","fill":"none"}, attrs), ...rest, }, children.concat([_c('path',{attrs:{"fill":"currentColor","fill-rule":"evenodd","d":"M4.823 6L0 1.487 1.589 0 8 6l-6.411 6L0 10.513 4.823 6z","clip-rule":"evenodd"}})]) ) } } /***/ }), /***/ "2350": /***/ (function(module, exports) { /* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ // css base code, injected by the css-loader module.exports = function(useSourceMap) { var list = []; // return the list of modules as css string list.toString = function toString() { return this.map(function (item) { var content = cssWithMappingToString(item, useSourceMap); if(item[2]) { return "@media " + item[2] + "{" + content + "}"; } else { return content; } }).join(""); }; // import a list of modules into the list list.i = function(modules, mediaQuery) { if(typeof modules === "string") modules = [[null, modules, ""]]; var alreadyImportedModules = {}; for(var i = 0; i < this.length; i++) { var id = this[i][0]; if(typeof id === "number") alreadyImportedModules[id] = true; } for(i = 0; i < modules.length; i++) { var item = modules[i]; // skip already imported module // this implementation is not 100% perfect for weird media query combinations // when a module is imported multiple times with different media queries. // I hope this will never occur (Hey this way we have smaller bundles) if(typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) { if(mediaQuery && !item[2]) { item[2] = mediaQuery; } else if(mediaQuery) { item[2] = "(" + item[2] + ") and (" + mediaQuery + ")"; } list.push(item); } } }; return list; }; function cssWithMappingToString(item, useSourceMap) { var content = item[1] || ''; var cssMapping = item[3]; if (!cssMapping) { return content; } if (useSourceMap && typeof btoa === 'function') { var sourceMapping = toComment(cssMapping); var sourceURLs = cssMapping.sources.map(function (source) { return '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */' }); return [content].concat(sourceURLs).concat([sourceMapping]).join('\n'); } return [content].join('\n'); } // Adapted from convert-source-map (MIT) function toComment(sourceMap) { // eslint-disable-next-line no-undef var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))); var data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64; return '/*# ' + data + ' */'; } /***/ }), /***/ "2877": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; }); /* globals __VUE_SSR_CONTEXT__ */ // IMPORTANT: Do NOT use ES2015 features in this file (except for modules). // This module is a runtime utility for cleaner component module output and will // be included in the final webpack user bundle. function normalizeComponent ( scriptExports, render, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, /* server only */ shadowMode /* vue-cli only */ ) { // Vue.extend constructor export interop var options = typeof scriptExports === 'function' ? scriptExports.options : scriptExports // render functions if (render) { options.render = render options.staticRenderFns = staticRenderFns options._compiled = true } // functional template if (functionalTemplate) { options.functional = true } // scopedId if (scopeId) { options._scopeId = 'data-v-' + scopeId } var hook if (moduleIdentifier) { // server build hook = function (context) { // 2.3 injection context = context || // cached call (this.$vnode && this.$vnode.ssrContext) || // stateful (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional // 2.2 with runInNewContext: true if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { context = __VUE_SSR_CONTEXT__ } // inject component styles if (injectStyles) { injectStyles.call(this, context) } // register component module identifier for async chunk inferrence if (context && context._registeredComponents) { context._registeredComponents.add(moduleIdentifier) } } // used by ssr in case component is cached and beforeCreate // never gets called options._ssrRegister = hook } else if (injectStyles) { hook = shadowMode ? function () { injectStyles.call( this, (options.functional ? this.parent : this).$root.$options.shadowRoot ) } : injectStyles } if (hook) { if (options.functional) { // for template-only hot-reload because in that case the render fn doesn't // go through the normalizer options._injectStyles = hook // register for functional component in vue file var originalRender = options.render options.render = function renderWithStyleInjection (h, context) { hook.call(context) return originalRender(h, context) } } else { // inject component registration as beforeCreate hook var existing = options.beforeCreate options.beforeCreate = existing ? [].concat(existing, hook) : [hook] } } return { exports: scriptExports, options: options } } /***/ }), /***/ "35d6": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, "default", function() { return /* binding */ addStylesToShadowDOM; }); // CONCATENATED MODULE: ./node_modules/vue-style-loader/lib/listToStyles.js /** * Translates the list format produced by css-loader into something * easier to manipulate. */ function listToStyles (parentId, list) { var styles = [] var newStyles = {} for (var i = 0; i < list.length; i++) { var item = list[i] var id = item[0] var css = item[1] var media = item[2] var sourceMap = item[3] var part = { id: parentId + ':' + i, css: css, media: media, sourceMap: sourceMap } if (!newStyles[id]) { styles.push(newStyles[id] = { id: id, parts: [part] }) } else { newStyles[id].parts.push(part) } } return styles } // CONCATENATED MODULE: ./node_modules/vue-style-loader/lib/addStylesShadow.js function addStylesToShadowDOM(parentId, list, shadowRoot) { var styles = listToStyles(parentId, list); addStyles(styles, shadowRoot); } /* type StyleObject = { id: number; parts: Array<StyleObjectPart> } type StyleObjectPart = { css: string; media: string; sourceMap: ?string } */ function addStyles(styles /* Array<StyleObject> */ , shadowRoot) { var injectedStyles = shadowRoot._injectedStyles || (shadowRoot._injectedStyles = {}); for (var i = 0; i < styles.length; i++) { var item = styles[i]; var style = injectedStyles[item.id]; if (!style) { for (var j = 0; j < item.parts.length; j++) { addStyle(item.parts[j], shadowRoot); } injectedStyles[item.id] = true; } } } function createStyleElement(shadowRoot) { var styleElement = document.createElement('style'); styleElement.type = 'text/css'; shadowRoot.appendChild(styleElement); return styleElement; } function addStyle(obj /* StyleObjectPart */ , shadowRoot) { var styleElement = createStyleElement(shadowRoot); var css = obj.css; var media = obj.media; var sourceMap = obj.sourceMap; if (media) { styleElement.setAttribute('media', media); } if (sourceMap) { // https://developer.chrome.com/devtools/docs/javascript-debugging // this makes source maps inside style tags work properly in Chrome css += '\n/*# sourceURL=' + sourceMap.sources[0] + ' */'; // http://stackoverflow.com/a/26603875 css += '\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'; } if (styleElement.styleSheet) { styleElement.styleSheet.cssText = css; } else { while (styleElement.firstChild) { styleElement.removeChild(styleElement.firstChild); } styleElement.appendChild(document.createTextNode(css)); } } /***/ }), /***/ "40a8": /***/ (function(module, exports) { module.exports = { functional: true, render(_h, _vm) { const { _c, _v, data, children = [] } = _vm; const { class: classNames, staticClass, style, staticStyle, attrs = {}, ...rest } = data; return _c( 'svg', { class: [classNames,staticClass], style: [style,staticStyle], attrs: Object.assign({"xmlns":"http://www.w3.org/2000/svg","width":"6","height":"9","fill":"none"}, attrs), ...rest, }, children.concat([_c('path',{attrs:{"fill":"currentColor","fill-rule":"evenodd","d":"M3.617 4.5L0 1.115 1.192 0 6 4.5 1.192 9 0 7.885 3.617 4.5z","clip-rule":"evenodd"}})]) ) } } /***/ }), /***/ "5595": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_WvcButton_vue_vue_type_style_index_0_id_1b6fe3e5_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("de6c"); /* harmony import */ var _node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_WvcButton_vue_vue_type_style_index_0_id_1b6fe3e5_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_WvcButton_vue_vue_type_style_index_0_id_1b6fe3e5_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__); /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_WvcButton_vue_vue_type_style_index_0_id_1b6fe3e5_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_WvcButton_vue_vue_type_style_index_0_id_1b6fe3e5_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__)); /* harmony default export */ __webpack_exports__["default"] = (_node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_WvcButton_vue_vue_type_style_index_0_id_1b6fe3e5_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default.a); /***/ }), /***/ "de6c": /***/ (function(module, exports, __webpack_require__) { // style-loader: Adds some css to the DOM by adding a <style> tag // load the styles var content = __webpack_require__("ef59"); if(typeof content === 'string') content = [[module.i, content, '']]; if(content.locals) module.exports = content.locals; // add CSS to Shadow Root var add = __webpack_require__("35d6").default module.exports.__inject__ = function (shadowRoot) { add("4dbeb35a", content, shadowRoot) }; /***/ }), /***/ "ef59": /***/ (function(module, exports, __webpack_require__) { exports = module.exports = __webpack_require__("2350")(false); // imports exports.push([module.i, "@import url(https://fonts.googleapis.com/css2?family=Karla:wght@700&family=Lato:ital,wght@0,400;0,700;1,400&display=swap);", ""]); // module exports.push([module.i, ".button[data-v-1b6fe3e5]{box-sizing:border-box;padding:0;margin:0;will-change:transform;transition:all .2s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:600;font-family:Karla,Lato,Arial,sans-serif;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:4px;cursor:pointer;font-family:Karla;font-size:16px;letter-spacing:2.4px;line-height:24px;text-align:center;padding:12px 16px}.button[data-v-1b6fe3e5]:before{content:\"\";display:block;height:0;width:0;margin-top:-.1em}@media (max-width:1024px){.button[data-v-1b6fe3e5]{font-family:Karla;font-size:14px;letter-spacing:2.1px;line-height:24px;text-align:center;padding:8px 16px}}.button .icon-wrapper[data-v-1b6fe3e5],.button .icon-wrapper-sm[data-v-1b6fe3e5]{padding-left:8px;overflow:visible;align-items:center;height:100%}.button .icon-wrapper-sm>svg[data-v-1b6fe3e5],.button .icon-wrapper>svg[data-v-1b6fe3e5]{display:block;margin:0 auto;text-align:center}.button .icon-wrapper[data-v-1b6fe3e5]{display:flex}@media (max-width:1024px){.button .icon-wrapper[data-v-1b6fe3e5]{display:none}}.button .icon-wrapper-sm[data-v-1b6fe3e5]{display:none}@media (max-width:1024px){.button .icon-wrapper-sm[data-v-1b6fe3e5]{display:flex}}.button-primary.theme-light[data-v-1b6fe3e5],.button.theme-light[data-v-1b6fe3e5]{color:#fff;background-color:#0c6699;box-shadow:none;border:none}.button-primary.theme-light.hover[data-v-1b6fe3e5],.button-primary.theme-light[data-v-1b6fe3e5]:hover,.button.theme-light.hover[data-v-1b6fe3e5],.button.theme-light[data-v-1b6fe3e5]:hover{color:#fff;background-color:#0d4773;box-shadow:none}.button-primary.theme-light.focus[data-v-1b6fe3e5],.button-primary.theme-light[data-v-1b6fe3e5]:focus,.button.theme-light.focus[data-v-1b6fe3e5],.button.theme-light[data-v-1b6fe3e5]:focus{background-color:#0d4773;color:#fff;box-shadow:0 0 0 4px #0c6699;outline:none}.button-primary.theme-light.active[data-v-1b6fe3e5],.button-primary.theme-light.visited[data-v-1b6fe3e5],.button-primary.theme-light[data-v-1b6fe3e5]:active,.button-primary.theme-light[data-v-1b6fe3e5]:visited,.button.theme-light.active[data-v-1b6fe3e5],.button.theme-light.visited[data-v-1b6fe3e5],.button.theme-light[data-v-1b6fe3e5]:active,.button.theme-light[data-v-1b6fe3e5]:visited{transition:none;background-color:#337ab7;color:#fff;box-shadow:none}.button-primary.theme-light.disabled[data-v-1b6fe3e5],.button-primary.theme-light[data-v-1b6fe3e5]:disabled,.button.theme-light.disabled[data-v-1b6fe3e5],.button.theme-light[data-v-1b6fe3e5]:disabled{background-color:transparent;color:#999;box-shadow:none}.button-primary.theme-dark[data-v-1b6fe3e5],.button.theme-dark[data-v-1b6fe3e5]{color:#0c6699;background-color:#fff;box-shadow:none;border:none}.button-primary.theme-dark.hover[data-v-1b6fe3e5],.button-primary.theme-dark[data-v-1b6fe3e5]:hover,.button.theme-dark.hover[data-v-1b6fe3e5],.button.theme-dark[data-v-1b6fe3e5]:hover{color:#0d4773;background-color:#fff;box-shadow:none}.button-primary.theme-dark.focus[data-v-1b6fe3e5],.button-primary.theme-dark[data-v-1b6fe3e5]:focus,.button.theme-dark.focus[data-v-1b6fe3e5],.button.theme-dark[data-v-1b6fe3e5]:focus{background-color:#fff;color:#0d4773;box-shadow:0 0 0 4px #00acca;outline:none}.button-primary.theme-dark.active[data-v-1b6fe3e5],.button-primary.theme-dark.visited[data-v-1b6fe3e5],.button-primary.theme-dark[data-v-1b6fe3e5]:active,.button-primary.theme-dark[data-v-1b6fe3e5]:visited,.button.theme-dark.active[data-v-1b6fe3e5],.button.theme-dark.visited[data-v-1b6fe3e5],.button.theme-dark[data-v-1b6fe3e5]:active,.button.theme-dark[data-v-1b6fe3e5]:visited{transition:none;background-color:#0c6699;color:#fff;box-shadow:inset 0 0 0 2px #fff}.button-primary.theme-dark.disabled[data-v-1b6fe3e5],.button-primary.theme-dark[data-v-1b6fe3e5]:disabled,.button.theme-dark.disabled[data-v-1b6fe3e5],.button.theme-dark[data-v-1b6fe3e5]:disabled{background-color:transparent;color:#999;box-shadow:inset 0 0 0 2px #999}.button-secondary[data-v-1b6fe3e5]{text-align:left}.button-secondary.theme-light[data-v-1b6fe3e5]{color:#0c6699;background-color:#fff;box-shadow:inset 0 0 0 2px #0c6699;border:none}.button-secondary.theme-light.hover[data-v-1b6fe3e5],.button-secondary.theme-light[data-v-1b6fe3e5]:hover{color:#0d4773;background-color:#fff;box-shadow:inset 0 0 0 2px #0d4773}.button-secondary.theme-light.focus[data-v-1b6fe3e5],.button-secondary.theme-light[data-v-1b6fe3e5]:focus{background-color:#0d4773;color:#fff;box-shadow:0 0 0 4px #0c6699;outline:none}.button-secondary.theme-light.active[data-v-1b6fe3e5],.button-secondary.theme-light[data-v-1b6fe3e5]:active{transition:none;background-color:#fff;color:#337ab7;box-shadow:inset 0 0 0 2px #337ab7}.button-secondary.theme-light.disabled[data-v-1b6fe3e5],.button-secondary.theme-light[data-v-1b6fe3e5]:disabled{background-color:transparent;color:#999;box-shadow:inset 0 0 0 2px #999}.button-secondary.theme-dark[data-v-1b6fe3e5]{color:#fff;background-color:transparent;box-shadow:inset 0 0 0 2px #fff;border:none}.button-secondary.theme-dark.hover[data-v-1b6fe3e5],.button-secondary.theme-dark[data-v-1b6fe3e5]:hover{color:#333;background-color:#fff;box-shadow:inset 0 0 0 2px #fff}.button-secondary.theme-dark.focus[data-v-1b6fe3e5],.button-secondary.theme-dark[data-v-1b6fe3e5]:focus{background-color:#fff;box-shadow:0 0 0 4px #00acca;outline:none}.button-secondary.theme-dark.active[data-v-1b6fe3e5],.button-secondary.theme-dark[data-v-1b6fe3e5]:active{transition:none;background-color:transparent;color:#ccc;box-shadow:inset 0 0 0 2px #ccc}.button-secondary.theme-dark.disabled[data-v-1b6fe3e5],.button-secondary.theme-dark[data-v-1b6fe3e5]:disabled{background-color:transparent;color:#999;box-shadow:inset 0 0 0 2px #999}.full-width[data-v-1b6fe3e5]{width:100%}.button-submit-disabled.theme-light[data-v-1b6fe3e5]{color:#666!important;background-color:#f5f5f5!important;box-shadow:inset 0 0 0 2px #f5f5f5!important}.button-submit-disabled.theme-dark[data-v-1b6fe3e5]{color:#ccc!important;background-color:transparent!important;box-shadow:inset 0 0 0 2px #ccc!important}", ""]); // exports /***/ }), /***/ "f9fd": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"01f5881a-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/elements/WvcButton.vue?vue&type=template&id=1b6fe3e5&scoped=true& var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{class:['button', _vm.themeClass, _vm.state, _vm.classes],style:({ backgroundColor: _vm.backgroundColor, color: _vm.color }),attrs:{"aria-describedby":_vm.ariaDescribedby,"aria-label":_vm.ariaLabel,"aria-labelledby":_vm.ariaLabeledby,"disabled":_vm.disabled,"type":_vm.submit ? 'submit' : 'button',"role":'button'}},[_vm._t("default"),(_vm.hasIcon)?[_c('span',{staticClass:"icon-wrapper"},[_vm._t("icon")],2),_c('span',{staticClass:"icon-wrapper-sm"},[_vm._t("icon-sm")],2)]:_vm._e(),(!_vm.hasIcon && _vm.secondary)?[_c('span',{staticClass:"icon-wrapper"},[_c('IconChevron',{attrs:{"aria-hidden":"true"}})],1),_c('span',{staticClass:"icon-wrapper-sm"},[_c('IconChevronSm',{attrs:{"aria-hidden":"true"}})],1)]:_vm._e()],2)} var staticRenderFns = [] // CONCATENATED MODULE: ./src/elements/WvcButton.vue?vue&type=template&id=1b6fe3e5&scoped=true& // EXTERNAL MODULE: ./src/assets/icons/chevron.svg var chevron = __webpack_require__("079d"); var chevron_default = /*#__PURE__*/__webpack_require__.n(chevron); // EXTERNAL MODULE: ./src/assets/icons/chevronSm.svg var chevronSm = __webpack_require__("40a8"); var chevronSm_default = /*#__PURE__*/__webpack_require__.n(chevronSm); // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/elements/WvcButton.vue?vue&type=script&lang=js& // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /** * `Buttons` are generally used for interface actions. Suitable for all-purpose use. * Default appearance set to `primary` style. * `primary` style will be used only once per view for main call-to-action. */ /* harmony default export */ var WvcButtonvue_type_script_lang_js_ = ({ name: 'WvcButton', components: { IconChevron: chevron_default.a, IconChevronSm: chevronSm_default.a }, props: { ariaDescribedby: { type: String, default: null }, ariaLabel: { type: String, default: null }, ariaLabeledby: { type: String, default: null }, /** * Use dark theme for component. */ dark: { type: Boolean, default: false }, /** * If set, overrides the default light/dark theme's color for the button background color. */ backgroundColor: { type: String, default: null }, /** * If set, overrides the default light/dark theme's text color for the button. */ color: { type: String, default: null }, disabled: { type: Boolean, default: false }, fullWidth: { type: Boolean, default: false }, /** * Use the secondary styling for the button */ secondary: { type: Boolean, default: false }, /** * Manually trigger various states of the button. * @values hover, active, focus */ state: { type: String, default: null, validator: function validator(value) { return value.match(/(hover|focus|active|visited|disabled)/); } }, /** * Set the button’s type to “submit”. */ submit: { type: Boolean, default: false } }, computed: { classes: function classes() { return { 'button-primary': !this.secondary, 'button-secondary': this.secondary, 'full-width': this.fullWidth, 'button-submit-disabled': this.disabled && this.submit }; }, // TODO - can be refactored out of all components as shared module once we are using Vue 3 composition API // TODO - can also break out things like size props + classes, etc. themeClass: function themeClass() { return { 'theme-light': !this.dark, 'theme-dark': this.dark }; }, hasIcon: function hasIcon() { return this.$slots.icon; } } }); // CONCATENATED MODULE: ./src/elements/WvcButton.vue?vue&type=script&lang=js& /* harmony default export */ var elements_WvcButtonvue_type_script_lang_js_ = (WvcButtonvue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__("2877"); // CONCATENATED MODULE: ./src/elements/WvcButton.vue function injectStyles (context) { var style0 = __webpack_require__("5595") if (style0.__inject__) style0.__inject__(context) } /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( elements_WvcButtonvue_type_script_lang_js_, render, staticRenderFns, false, injectStyles, "1b6fe3e5", null ,true ) /* harmony default export */ var WvcButton = __webpack_exports__["default"] = (component.exports); /***/ }) }]); //# sourceMappingURL=wvc.common.17.js.map