UNPKG

11.7 kBJavaScriptView Raw
1module.exports =
2/******/ (function(modules) { // webpackBootstrap
3/******/ // The module cache
4/******/ var installedModules = {};
5/******/
6/******/ // The require function
7/******/ function __webpack_require__(moduleId) {
8/******/
9/******/ // Check if module is in cache
10/******/ if(installedModules[moduleId]) {
11/******/ return installedModules[moduleId].exports;
12/******/ }
13/******/ // Create a new module (and put it into the cache)
14/******/ var module = installedModules[moduleId] = {
15/******/ i: moduleId,
16/******/ l: false,
17/******/ exports: {}
18/******/ };
19/******/
20/******/ // Execute the module function
21/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
22/******/
23/******/ // Flag the module as loaded
24/******/ module.l = true;
25/******/
26/******/ // Return the exports of the module
27/******/ return module.exports;
28/******/ }
29/******/
30/******/
31/******/ // expose the modules object (__webpack_modules__)
32/******/ __webpack_require__.m = modules;
33/******/
34/******/ // expose the module cache
35/******/ __webpack_require__.c = installedModules;
36/******/
37/******/ // define getter function for harmony exports
38/******/ __webpack_require__.d = function(exports, name, getter) {
39/******/ if(!__webpack_require__.o(exports, name)) {
40/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
41/******/ }
42/******/ };
43/******/
44/******/ // define __esModule on exports
45/******/ __webpack_require__.r = function(exports) {
46/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
47/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
48/******/ }
49/******/ Object.defineProperty(exports, '__esModule', { value: true });
50/******/ };
51/******/
52/******/ // create a fake namespace object
53/******/ // mode & 1: value is a module id, require it
54/******/ // mode & 2: merge all properties of value into the ns
55/******/ // mode & 4: return value when already ns object
56/******/ // mode & 8|1: behave like require
57/******/ __webpack_require__.t = function(value, mode) {
58/******/ if(mode & 1) value = __webpack_require__(value);
59/******/ if(mode & 8) return value;
60/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
61/******/ var ns = Object.create(null);
62/******/ __webpack_require__.r(ns);
63/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
64/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
65/******/ return ns;
66/******/ };
67/******/
68/******/ // getDefaultExport function for compatibility with non-harmony modules
69/******/ __webpack_require__.n = function(module) {
70/******/ var getter = module && module.__esModule ?
71/******/ function getDefault() { return module['default']; } :
72/******/ function getModuleExports() { return module; };
73/******/ __webpack_require__.d(getter, 'a', getter);
74/******/ return getter;
75/******/ };
76/******/
77/******/ // Object.prototype.hasOwnProperty.call
78/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
79/******/
80/******/ // __webpack_public_path__
81/******/ __webpack_require__.p = "/dist/";
82/******/
83/******/
84/******/ // Load entry module and return exports
85/******/ return __webpack_require__(__webpack_require__.s = 88);
86/******/ })
87/************************************************************************/
88/******/ ({
89
90/***/ 0:
91/***/ (function(module, __webpack_exports__, __webpack_require__) {
92
93"use strict";
94/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
95/* globals __VUE_SSR_CONTEXT__ */
96
97// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
98// This module is a runtime utility for cleaner component module output and will
99// be included in the final webpack user bundle.
100
101function normalizeComponent (
102 scriptExports,
103 render,
104 staticRenderFns,
105 functionalTemplate,
106 injectStyles,
107 scopeId,
108 moduleIdentifier, /* server only */
109 shadowMode /* vue-cli only */
110) {
111 // Vue.extend constructor export interop
112 var options = typeof scriptExports === 'function'
113 ? scriptExports.options
114 : scriptExports
115
116 // render functions
117 if (render) {
118 options.render = render
119 options.staticRenderFns = staticRenderFns
120 options._compiled = true
121 }
122
123 // functional template
124 if (functionalTemplate) {
125 options.functional = true
126 }
127
128 // scopedId
129 if (scopeId) {
130 options._scopeId = 'data-v-' + scopeId
131 }
132
133 var hook
134 if (moduleIdentifier) { // server build
135 hook = function (context) {
136 // 2.3 injection
137 context =
138 context || // cached call
139 (this.$vnode && this.$vnode.ssrContext) || // stateful
140 (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
141 // 2.2 with runInNewContext: true
142 if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
143 context = __VUE_SSR_CONTEXT__
144 }
145 // inject component styles
146 if (injectStyles) {
147 injectStyles.call(this, context)
148 }
149 // register component module identifier for async chunk inferrence
150 if (context && context._registeredComponents) {
151 context._registeredComponents.add(moduleIdentifier)
152 }
153 }
154 // used by ssr in case component is cached and beforeCreate
155 // never gets called
156 options._ssrRegister = hook
157 } else if (injectStyles) {
158 hook = shadowMode
159 ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
160 : injectStyles
161 }
162
163 if (hook) {
164 if (options.functional) {
165 // for template-only hot-reload because in that case the render fn doesn't
166 // go through the normalizer
167 options._injectStyles = hook
168 // register for functioal component in vue file
169 var originalRender = options.render
170 options.render = function renderWithStyleInjection (h, context) {
171 hook.call(context)
172 return originalRender(h, context)
173 }
174 } else {
175 // inject component registration as beforeCreate hook
176 var existing = options.beforeCreate
177 options.beforeCreate = existing
178 ? [].concat(existing, hook)
179 : [hook]
180 }
181 }
182
183 return {
184 exports: scriptExports,
185 options: options
186 }
187}
188
189
190/***/ }),
191
192/***/ 4:
193/***/ (function(module, exports) {
194
195module.exports = require("element-ui/lib/mixins/emitter");
196
197/***/ }),
198
199/***/ 88:
200/***/ (function(module, __webpack_exports__, __webpack_require__) {
201
202"use strict";
203__webpack_require__.r(__webpack_exports__);
204
205// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/radio/src/radio-group.vue?vue&type=template&id=818a704c&
206var render = function() {
207 var _vm = this
208 var _h = _vm.$createElement
209 var _c = _vm._self._c || _h
210 return _c(
211 _vm._elTag,
212 {
213 tag: "component",
214 staticClass: "el-radio-group",
215 attrs: { role: "radiogroup" },
216 on: { keydown: _vm.handleKeydown }
217 },
218 [_vm._t("default")],
219 2
220 )
221}
222var staticRenderFns = []
223render._withStripped = true
224
225
226// CONCATENATED MODULE: ./packages/radio/src/radio-group.vue?vue&type=template&id=818a704c&
227
228// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
229var emitter_ = __webpack_require__(4);
230var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
231
232// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/radio/src/radio-group.vue?vue&type=script&lang=js&
233//
234//
235//
236//
237//
238//
239//
240//
241//
242//
243
244
245
246var keyCode = Object.freeze({
247 LEFT: 37,
248 UP: 38,
249 RIGHT: 39,
250 DOWN: 40
251});
252/* harmony default export */ var radio_groupvue_type_script_lang_js_ = ({
253 name: 'ElRadioGroup',
254
255 componentName: 'ElRadioGroup',
256
257 inject: {
258 elFormItem: {
259 default: ''
260 }
261 },
262
263 mixins: [emitter_default.a],
264
265 props: {
266 value: {},
267 size: String,
268 fill: String,
269 textColor: String,
270 disabled: Boolean
271 },
272
273 computed: {
274 _elFormItemSize: function _elFormItemSize() {
275 return (this.elFormItem || {}).elFormItemSize;
276 },
277 _elTag: function _elTag() {
278 var tag = (this.$vnode.data || {}).tag;
279 if (!tag || tag === 'component') tag = 'div';
280 return tag;
281 },
282 radioGroupSize: function radioGroupSize() {
283 return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
284 }
285 },
286
287 created: function created() {
288 var _this = this;
289
290 this.$on('handleChange', function (value) {
291 _this.$emit('change', value);
292 });
293 },
294 mounted: function mounted() {
295 // 当radioGroup没有默认选项时,第一个可以选中Tab导航
296 var radios = this.$el.querySelectorAll('[type=radio]');
297 var firstLabel = this.$el.querySelectorAll('[role=radio]')[0];
298 if (![].some.call(radios, function (radio) {
299 return radio.checked;
300 }) && firstLabel) {
301 firstLabel.tabIndex = 0;
302 }
303 },
304
305 methods: {
306 handleKeydown: function handleKeydown(e) {
307 // 左右上下按键 可以在radio组内切换不同选项
308 var target = e.target;
309 var className = target.nodeName === 'INPUT' ? '[type=radio]' : '[role=radio]';
310 var radios = this.$el.querySelectorAll(className);
311 var length = radios.length;
312 var index = [].indexOf.call(radios, target);
313 var roleRadios = this.$el.querySelectorAll('[role=radio]');
314 switch (e.keyCode) {
315 case keyCode.LEFT:
316 case keyCode.UP:
317 e.stopPropagation();
318 e.preventDefault();
319 if (index === 0) {
320 roleRadios[length - 1].click();
321 roleRadios[length - 1].focus();
322 } else {
323 roleRadios[index - 1].click();
324 roleRadios[index - 1].focus();
325 }
326 break;
327 case keyCode.RIGHT:
328 case keyCode.DOWN:
329 if (index === length - 1) {
330 e.stopPropagation();
331 e.preventDefault();
332 roleRadios[0].click();
333 roleRadios[0].focus();
334 } else {
335 roleRadios[index + 1].click();
336 roleRadios[index + 1].focus();
337 }
338 break;
339 default:
340 break;
341 }
342 }
343 },
344 watch: {
345 value: function value(_value) {
346 this.dispatch('ElFormItem', 'el.form.change', [this.value]);
347 }
348 }
349});
350// CONCATENATED MODULE: ./packages/radio/src/radio-group.vue?vue&type=script&lang=js&
351 /* harmony default export */ var src_radio_groupvue_type_script_lang_js_ = (radio_groupvue_type_script_lang_js_);
352// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
353var componentNormalizer = __webpack_require__(0);
354
355// CONCATENATED MODULE: ./packages/radio/src/radio-group.vue
356
357
358
359
360
361/* normalize component */
362
363var component = Object(componentNormalizer["a" /* default */])(
364 src_radio_groupvue_type_script_lang_js_,
365 render,
366 staticRenderFns,
367 false,
368 null,
369 null,
370 null
371
372)
373
374/* hot reload */
375if (false) { var api; }
376component.options.__file = "packages/radio/src/radio-group.vue"
377/* harmony default export */ var radio_group = (component.exports);
378// CONCATENATED MODULE: ./packages/radio-group/index.js
379
380
381/* istanbul ignore next */
382radio_group.install = function (Vue) {
383 Vue.component(radio_group.name, radio_group);
384};
385
386/* harmony default export */ var packages_radio_group = __webpack_exports__["default"] = (radio_group);
387
388/***/ })
389
390/******/ });
\No newline at end of file