cy-element-ui 1.1.15 → 1.1.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -8
- package/lib/{alert.js → Alert.js} +2 -2
- package/lib/{aside.js → Aside.js} +2 -2
- package/lib/Autocomplete.js +2051 -0
- package/lib/{avatar.js → Avatar.js} +2 -2
- package/lib/{backtop.js → Backtop.js} +4 -4
- package/lib/{badge.js → Badge.js} +2 -2
- package/lib/{breadcrumb.js → Breadcrumb.js} +2 -2
- package/lib/{breadcrumb-item.js → BreadcrumbItem.js} +2 -2
- package/lib/{button.js → Button.js} +2 -2
- package/lib/{button-group.js → ButtonGroup.js} +2 -2
- package/lib/{calendar.js → Calendar.js} +238 -25
- package/lib/{card.js → Card.js} +2 -2
- package/lib/{carousel.js → Carousel.js} +12 -12
- package/lib/{carousel-item.js → CarouselItem.js} +2 -2
- package/lib/Cascader.js +4641 -0
- package/lib/{cascader-panel.js → CascaderPanel.js} +1101 -57
- package/lib/{checkbox.js → Checkbox.js} +9 -9
- package/lib/{checkbox-button.js → CheckboxButton.js} +2 -2
- package/lib/{checkbox-group.js → CheckboxGroup.js} +9 -9
- package/lib/{col.js → Col.js} +2 -2
- package/lib/{collapse.js → Collapse.js} +2 -2
- package/lib/{collapse-item.js → CollapseItem.js} +4 -4
- package/lib/{color-picker.js → ColorPicker.js} +967 -25
- package/lib/{container.js → Container.js} +2 -2
- package/lib/{selectDisplayInput.js → CySelectDisplayInput.js} +8 -8
- package/lib/{subTitle.js → CySubTitle.js} +8 -8
- package/lib/{tabDialog.js → CyTabDialog.js} +26 -26
- package/lib/{treeSelect.js → CyTreeSelect.js} +3161 -3169
- package/lib/{date-picker.js → DatePicker.js} +1372 -139
- package/lib/{descriptions.js → Descriptions.js} +4 -4
- package/lib/{descriptions-item.js → DescriptionsItem.js} +2 -2
- package/lib/{dialog.js → Dialog.js} +12 -12
- package/lib/{divider.js → Divider.js} +2 -2
- package/lib/{drawer.js → Drawer.js} +4 -4
- package/lib/{dropdown.js → Dropdown.js} +244 -31
- package/lib/{dropdown-item.js → DropdownItem.js} +2 -2
- package/lib/{dropdown-menu.js → DropdownMenu.js} +2 -2
- package/lib/{empty.js → Empty.js} +4 -4
- package/lib/{footer.js → Footer.js} +2 -2
- package/lib/{form.js → Form.js} +10 -10
- package/lib/{form-item.js → FormItem.js} +12 -12
- package/lib/{header.js → Header.js} +2 -2
- package/lib/{icon.js → Icon.js} +2 -2
- package/lib/{image.js → Image.js} +22 -22
- package/lib/{infinite-scroll.js → InfiniteScroll.js} +16 -16
- package/lib/{input.js → Input.js} +27 -26
- package/lib/InputNumber.js +1552 -0
- package/lib/{link.js → Link.js} +2 -2
- package/lib/{loading.js → Loading.js} +15 -15
- package/lib/{main.js → Main.js} +2 -2
- package/lib/{menu.js → Menu.js} +10 -10
- package/lib/{menu-item.js → MenuItem.js} +339 -12
- package/lib/{menu-item-group.js → MenuItemGroup.js} +2 -2
- package/lib/{message.js → Message.js} +16 -16
- package/lib/{message-box.js → MessageBox.js} +973 -31
- package/lib/{notification.js → Notification.js} +11 -11
- package/lib/{option.js → Option.js} +11 -11
- package/lib/{option-group.js → OptionGroup.js} +2 -2
- package/lib/{page-header.js → PageHeader.js} +4 -4
- package/lib/Pagination.js +4123 -0
- package/lib/Popconfirm.js +1025 -0
- package/lib/{popover.js → Popover.js} +6 -6
- package/lib/{progress.js → Progress.js} +2 -2
- package/lib/{radio.js → Radio.js} +9 -9
- package/lib/{radio-button.js → RadioButton.js} +2 -2
- package/lib/{radio-group.js → RadioGroup.js} +2 -2
- package/lib/{rate.js → Rate.js} +20 -20
- package/lib/{result.js → Result.js} +2 -2
- package/lib/{row.js → Row.js} +2 -2
- package/lib/{scrollbar.js → Scrollbar.js} +26 -26
- package/lib/{select.js → Select.js} +1371 -170
- package/lib/{skeleton.js → Skeleton.js} +2 -2
- package/lib/{skeleton-item.js → SkeletonItem.js} +2 -2
- package/lib/Slider.js +2854 -0
- package/lib/{spinner.js → Spinner.js} +2 -2
- package/lib/{statistic.js → Statistic.js} +4 -4
- package/lib/{step.js → Step.js} +2 -2
- package/lib/{steps.js → Steps.js} +4 -4
- package/lib/{submenu.js → Submenu.js} +13 -13
- package/lib/{switch.js → Switch.js} +10 -10
- package/lib/{tab-pane.js → TabPane.js} +2 -2
- package/lib/{table.js → Table.js} +1231 -121
- package/lib/{table-column.js → TableColumn.js} +824 -295
- package/lib/{tabs.js → Tabs.js} +4 -4
- package/lib/{tag.js → Tag.js} +2 -2
- package/lib/{time-picker.js → TimePicker.js} +1183 -91
- package/lib/{time-select.js → TimeSelect.js} +1132 -26
- package/lib/{timeline.js → Timeline.js} +2 -2
- package/lib/{timeline-item.js → TimelineItem.js} +2 -2
- package/lib/{tooltip.js → Tooltip.js} +27 -27
- package/lib/Transfer.js +2557 -0
- package/lib/{tree.js → Tree.js} +436 -19
- package/lib/{upload.js → Upload.js} +411 -19
- package/lib/element-ui.common.js +32182 -32332
- package/lib/index.js +1 -1
- package/lib/theme-chalk/BreadcrumbItem.css +0 -0
- package/lib/theme-chalk/ButtonGroup.css +0 -0
- package/lib/theme-chalk/CarouselItem.css +0 -0
- package/lib/theme-chalk/CascaderPanel.css +0 -0
- package/lib/theme-chalk/CheckboxButton.css +0 -0
- package/lib/theme-chalk/CheckboxGroup.css +0 -0
- package/lib/theme-chalk/CollapseItem.css +0 -0
- package/lib/theme-chalk/ColorPicker.css +0 -0
- package/lib/theme-chalk/DatePicker.css +0 -0
- package/lib/theme-chalk/DescriptionsItem.css +0 -0
- package/lib/theme-chalk/DropdownItem.css +0 -0
- package/lib/theme-chalk/DropdownMenu.css +0 -0
- package/lib/theme-chalk/FormItem.css +0 -0
- package/lib/theme-chalk/InputNumber.css +0 -0
- package/lib/theme-chalk/MenuItem.css +0 -0
- package/lib/theme-chalk/MenuItemGroup.css +0 -0
- package/lib/theme-chalk/MessageBox.css +0 -0
- package/lib/theme-chalk/OptionGroup.css +0 -0
- package/lib/theme-chalk/PageHeader.css +0 -0
- package/lib/theme-chalk/RadioButton.css +0 -0
- package/lib/theme-chalk/RadioGroup.css +0 -0
- package/lib/theme-chalk/SkeletonItem.css +0 -0
- package/lib/theme-chalk/TabPane.css +0 -0
- package/lib/theme-chalk/TableColumn.css +0 -0
- package/lib/theme-chalk/TimePicker.css +0 -0
- package/lib/theme-chalk/TimeSelect.css +0 -0
- package/lib/theme-chalk/TimelineItem.css +0 -0
- package/package.json +6 -23
- package/packages/{tabDialog → cy/tabDialog}/src/main.vue +1 -1
- package/packages/{treeSelect → cy/treeSelect}/src/main.vue +4 -4
- package/packages/theme-chalk/src/BreadcrumbItem.scss +0 -0
- package/packages/theme-chalk/src/ButtonGroup.scss +0 -0
- package/packages/theme-chalk/src/CarouselItem.scss +0 -0
- package/packages/theme-chalk/src/CascaderPanel.scss +0 -0
- package/packages/theme-chalk/src/CheckboxButton.scss +0 -0
- package/packages/theme-chalk/src/CheckboxGroup.scss +0 -0
- package/packages/theme-chalk/src/CollapseItem.scss +0 -0
- package/packages/theme-chalk/src/ColorPicker.scss +0 -0
- package/packages/theme-chalk/src/DatePicker.scss +0 -0
- package/packages/theme-chalk/src/DescriptionsItem.scss +0 -0
- package/packages/theme-chalk/src/DropdownItem.scss +0 -0
- package/packages/theme-chalk/src/DropdownMenu.scss +0 -0
- package/packages/theme-chalk/src/FormItem.scss +0 -0
- package/packages/theme-chalk/src/InputNumber.scss +0 -0
- package/packages/theme-chalk/src/MenuItem.scss +0 -0
- package/packages/theme-chalk/src/MenuItemGroup.scss +0 -0
- package/packages/theme-chalk/src/MessageBox.scss +0 -0
- package/packages/theme-chalk/src/OptionGroup.scss +0 -0
- package/packages/theme-chalk/src/PageHeader.scss +0 -0
- package/packages/theme-chalk/src/RadioButton.scss +0 -0
- package/packages/theme-chalk/src/RadioGroup.scss +0 -0
- package/packages/theme-chalk/src/SkeletonItem.scss +0 -0
- package/packages/theme-chalk/src/TabPane.scss +0 -0
- package/packages/theme-chalk/src/TableColumn.scss +0 -0
- package/packages/theme-chalk/src/TimePicker.scss +0 -0
- package/packages/theme-chalk/src/TimeSelect.scss +0 -0
- package/packages/theme-chalk/src/TimelineItem.scss +0 -0
- package/packages/theme-chalk/src/index.scss +89 -87
- package/src/index.js +16 -16
- package/types/cy/cy-element-ui.d.ts +31 -0
- package/types/cy/cy-select-display-input.d.ts +7 -0
- package/types/cy/cy-sub-title.d.ts +7 -0
- package/types/cy/cy-tab-dialog.d.ts +7 -0
- package/types/cy/cy-tree-select.d.ts +7 -0
- package/types/cy/index.d.ts +1 -0
- package/types/cy/select-display-input.d.ts +19 -0
- package/types/cy/sub-title.d.ts +10 -0
- package/types/cy/tab-dialog.d.ts +51 -0
- package/types/cy/tree-select.d.ts +44 -0
- package/types/index.d.ts +1 -0
- package/lib/autocomplete.js +0 -952
- package/lib/cascader.js +0 -1439
- package/lib/input-number.js +0 -757
- package/lib/locale/lang/en.js +0 -126
- package/lib/locale/lang/zh-TW.js +0 -126
- package/lib/pagination.js +0 -950
- package/lib/popconfirm.js +0 -457
- package/lib/slider.js +0 -1199
- package/lib/transfer.js +0 -1102
- package/lib/umd/locale/en.js +0 -142
- package/lib/umd/locale/zh-TW.js +0 -142
- package/src/locale/lang/en.js +0 -123
- package/src/locale/lang/zh-TW.js +0 -123
- /package/packages/{selectDisplayInput → cy/selectDisplayInput}/index.js +0 -0
- /package/packages/{selectDisplayInput → cy/selectDisplayInput}/src/main.vue +0 -0
- /package/packages/{subTitle → cy/subTitle}/index.js +0 -0
- /package/packages/{subTitle → cy/subTitle}/src/main.vue +0 -0
- /package/packages/{tabDialog → cy/tabDialog}/index.js +0 -0
- /package/packages/{tabDialog → cy/tabDialog}/src/dialog/drag.js +0 -0
- /package/packages/{tabDialog → cy/tabDialog}/src/dialog/dragHeight.js +0 -0
- /package/packages/{tabDialog → cy/tabDialog}/src/dialog/dragWidth.js +0 -0
- /package/packages/{treeSelect → cy/treeSelect}/index.js +0 -0
|
@@ -0,0 +1,2051 @@
|
|
|
1
|
+
module.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 = 63);
|
|
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
|
+
|
|
101
|
+
function 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 =
|
|
113
|
+
typeof scriptExports === 'function' ? scriptExports.options : scriptExports
|
|
114
|
+
|
|
115
|
+
// render functions
|
|
116
|
+
if (render) {
|
|
117
|
+
options.render = render
|
|
118
|
+
options.staticRenderFns = staticRenderFns
|
|
119
|
+
options._compiled = true
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
// functional template
|
|
123
|
+
if (functionalTemplate) {
|
|
124
|
+
options.functional = true
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// scopedId
|
|
128
|
+
if (scopeId) {
|
|
129
|
+
options._scopeId = 'data-v-' + scopeId
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
var hook
|
|
133
|
+
if (moduleIdentifier) {
|
|
134
|
+
// 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 () {
|
|
160
|
+
injectStyles.call(
|
|
161
|
+
this,
|
|
162
|
+
(options.functional ? this.parent : this).$root.$options.shadowRoot
|
|
163
|
+
)
|
|
164
|
+
}
|
|
165
|
+
: injectStyles
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
if (hook) {
|
|
169
|
+
if (options.functional) {
|
|
170
|
+
// for template-only hot-reload because in that case the render fn doesn't
|
|
171
|
+
// go through the normalizer
|
|
172
|
+
options._injectStyles = hook
|
|
173
|
+
// register for functional component in vue file
|
|
174
|
+
var originalRender = options.render
|
|
175
|
+
options.render = function renderWithStyleInjection(h, context) {
|
|
176
|
+
hook.call(context)
|
|
177
|
+
return originalRender(h, context)
|
|
178
|
+
}
|
|
179
|
+
} else {
|
|
180
|
+
// inject component registration as beforeCreate hook
|
|
181
|
+
var existing = options.beforeCreate
|
|
182
|
+
options.beforeCreate = existing ? [].concat(existing, hook) : [hook]
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
return {
|
|
187
|
+
exports: scriptExports,
|
|
188
|
+
options: options
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
/***/ }),
|
|
194
|
+
|
|
195
|
+
/***/ 1:
|
|
196
|
+
/***/ (function(module, exports) {
|
|
197
|
+
|
|
198
|
+
module.exports = require("element-ui/lib/utils/dom");
|
|
199
|
+
|
|
200
|
+
/***/ }),
|
|
201
|
+
|
|
202
|
+
/***/ 10:
|
|
203
|
+
/***/ (function(module, exports) {
|
|
204
|
+
|
|
205
|
+
module.exports = require("element-ui/lib/utils/resize-event");
|
|
206
|
+
|
|
207
|
+
/***/ }),
|
|
208
|
+
|
|
209
|
+
/***/ 11:
|
|
210
|
+
/***/ (function(module, exports) {
|
|
211
|
+
|
|
212
|
+
module.exports = require("element-ui/lib/utils/shared");
|
|
213
|
+
|
|
214
|
+
/***/ }),
|
|
215
|
+
|
|
216
|
+
/***/ 13:
|
|
217
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
218
|
+
|
|
219
|
+
"use strict";
|
|
220
|
+
// ESM COMPAT FLAG
|
|
221
|
+
__webpack_require__.r(__webpack_exports__);
|
|
222
|
+
|
|
223
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/input/src/input.vue?vue&type=template&id=048a9cde
|
|
224
|
+
var render = function () {
|
|
225
|
+
var _vm = this
|
|
226
|
+
var _h = _vm.$createElement
|
|
227
|
+
var _c = _vm._self._c || _h
|
|
228
|
+
return _c(
|
|
229
|
+
"div",
|
|
230
|
+
{
|
|
231
|
+
class: [
|
|
232
|
+
_vm.type === "textarea" ? "el-textarea" : "el-input",
|
|
233
|
+
_vm.inputSize ? "el-input--" + _vm.inputSize : "",
|
|
234
|
+
{
|
|
235
|
+
"is-disabled": _vm.inputDisabled,
|
|
236
|
+
"is-exceed": _vm.inputExceed,
|
|
237
|
+
"el-input-group": _vm.$slots.prepend || _vm.$slots.append,
|
|
238
|
+
"el-input-group--append": _vm.$slots.append,
|
|
239
|
+
"el-input-group--prepend": _vm.$slots.prepend,
|
|
240
|
+
"el-input--prefix": _vm.$slots.prefix || _vm.prefixIcon,
|
|
241
|
+
"el-input--suffix":
|
|
242
|
+
_vm.$slots.suffix ||
|
|
243
|
+
_vm.suffixIcon ||
|
|
244
|
+
_vm.clearable ||
|
|
245
|
+
_vm.showPassword,
|
|
246
|
+
},
|
|
247
|
+
],
|
|
248
|
+
on: {
|
|
249
|
+
mouseenter: function ($event) {
|
|
250
|
+
_vm.hovering = true
|
|
251
|
+
},
|
|
252
|
+
mouseleave: function ($event) {
|
|
253
|
+
_vm.hovering = false
|
|
254
|
+
},
|
|
255
|
+
},
|
|
256
|
+
},
|
|
257
|
+
[
|
|
258
|
+
_vm.type !== "textarea"
|
|
259
|
+
? [
|
|
260
|
+
_vm.$slots.prepend
|
|
261
|
+
? _c(
|
|
262
|
+
"div",
|
|
263
|
+
{ staticClass: "el-input-group__prepend" },
|
|
264
|
+
[_vm._t("prepend")],
|
|
265
|
+
2
|
|
266
|
+
)
|
|
267
|
+
: _vm._e(),
|
|
268
|
+
_vm.type !== "textarea"
|
|
269
|
+
? _c(
|
|
270
|
+
"input",
|
|
271
|
+
_vm._b(
|
|
272
|
+
{
|
|
273
|
+
ref: "input",
|
|
274
|
+
staticClass: "el-input__inner",
|
|
275
|
+
attrs: {
|
|
276
|
+
tabindex: _vm.tabindex,
|
|
277
|
+
type: _vm.showPassword
|
|
278
|
+
? _vm.passwordVisible
|
|
279
|
+
? "text"
|
|
280
|
+
: "password"
|
|
281
|
+
: _vm.type,
|
|
282
|
+
disabled: _vm.inputDisabled,
|
|
283
|
+
readonly: _vm.readonly,
|
|
284
|
+
autocomplete: _vm.autoComplete || _vm.autocomplete,
|
|
285
|
+
"aria-label": _vm.label,
|
|
286
|
+
},
|
|
287
|
+
on: {
|
|
288
|
+
compositionstart: _vm.handleCompositionStart,
|
|
289
|
+
compositionupdate: _vm.handleCompositionUpdate,
|
|
290
|
+
compositionend: _vm.handleCompositionEnd,
|
|
291
|
+
input: _vm.handleInput,
|
|
292
|
+
focus: _vm.handleFocus,
|
|
293
|
+
blur: _vm.handleBlur,
|
|
294
|
+
change: _vm.handleChange,
|
|
295
|
+
},
|
|
296
|
+
},
|
|
297
|
+
"input",
|
|
298
|
+
_vm.$attrs,
|
|
299
|
+
false
|
|
300
|
+
)
|
|
301
|
+
)
|
|
302
|
+
: _vm._e(),
|
|
303
|
+
_vm.$slots.prefix || _vm.prefixIcon
|
|
304
|
+
? _c(
|
|
305
|
+
"span",
|
|
306
|
+
{ staticClass: "el-input__prefix" },
|
|
307
|
+
[
|
|
308
|
+
_vm._t("prefix"),
|
|
309
|
+
_vm.prefixIcon
|
|
310
|
+
? _c("i", {
|
|
311
|
+
staticClass: "el-input__icon",
|
|
312
|
+
class: _vm.prefixIcon,
|
|
313
|
+
})
|
|
314
|
+
: _vm._e(),
|
|
315
|
+
],
|
|
316
|
+
2
|
|
317
|
+
)
|
|
318
|
+
: _vm._e(),
|
|
319
|
+
_vm.getSuffixVisible()
|
|
320
|
+
? _c("span", { staticClass: "el-input__suffix" }, [
|
|
321
|
+
_c(
|
|
322
|
+
"span",
|
|
323
|
+
{ staticClass: "el-input__suffix-inner" },
|
|
324
|
+
[
|
|
325
|
+
!_vm.showClear ||
|
|
326
|
+
!_vm.showPwdVisible ||
|
|
327
|
+
!_vm.isWordLimitVisible
|
|
328
|
+
? [
|
|
329
|
+
_vm._t("suffix"),
|
|
330
|
+
_vm.suffixIcon
|
|
331
|
+
? _c("i", {
|
|
332
|
+
staticClass: "el-input__icon",
|
|
333
|
+
class: _vm.suffixIcon,
|
|
334
|
+
})
|
|
335
|
+
: _vm._e(),
|
|
336
|
+
]
|
|
337
|
+
: _vm._e(),
|
|
338
|
+
_vm.showClear
|
|
339
|
+
? _c("i", {
|
|
340
|
+
staticClass:
|
|
341
|
+
"el-input__icon el-icon-circle-close el-input__clear",
|
|
342
|
+
on: {
|
|
343
|
+
mousedown: function ($event) {
|
|
344
|
+
$event.preventDefault()
|
|
345
|
+
},
|
|
346
|
+
click: _vm.clear,
|
|
347
|
+
},
|
|
348
|
+
})
|
|
349
|
+
: _vm._e(),
|
|
350
|
+
_vm.showPwdVisible
|
|
351
|
+
? _c("i", {
|
|
352
|
+
staticClass:
|
|
353
|
+
"el-input__icon el-icon-view el-input__clear",
|
|
354
|
+
on: { click: _vm.handlePasswordVisible },
|
|
355
|
+
})
|
|
356
|
+
: _vm._e(),
|
|
357
|
+
_vm.isWordLimitVisible
|
|
358
|
+
? _c("span", { staticClass: "el-input__count" }, [
|
|
359
|
+
_c(
|
|
360
|
+
"span",
|
|
361
|
+
{ staticClass: "el-input__count-inner" },
|
|
362
|
+
[
|
|
363
|
+
_vm._v(
|
|
364
|
+
"\n\t\t\t\t\t\t\t" +
|
|
365
|
+
_vm._s(_vm.textLength) +
|
|
366
|
+
"/" +
|
|
367
|
+
_vm._s(_vm.upperLimit) +
|
|
368
|
+
"\n\t\t\t\t\t\t"
|
|
369
|
+
),
|
|
370
|
+
]
|
|
371
|
+
),
|
|
372
|
+
])
|
|
373
|
+
: _vm._e(),
|
|
374
|
+
],
|
|
375
|
+
2
|
|
376
|
+
),
|
|
377
|
+
_vm.validateState
|
|
378
|
+
? _c("i", {
|
|
379
|
+
staticClass: "el-input__icon",
|
|
380
|
+
class: ["el-input__validateIcon", _vm.validateIcon],
|
|
381
|
+
})
|
|
382
|
+
: _vm._e(),
|
|
383
|
+
])
|
|
384
|
+
: _vm._e(),
|
|
385
|
+
_vm.$slots.append
|
|
386
|
+
? _c(
|
|
387
|
+
"div",
|
|
388
|
+
{ staticClass: "el-input-group__append" },
|
|
389
|
+
[_vm._t("append")],
|
|
390
|
+
2
|
|
391
|
+
)
|
|
392
|
+
: _vm._e(),
|
|
393
|
+
]
|
|
394
|
+
: _c(
|
|
395
|
+
"textarea",
|
|
396
|
+
_vm._b(
|
|
397
|
+
{
|
|
398
|
+
ref: "textarea",
|
|
399
|
+
staticClass: "el-textarea__inner",
|
|
400
|
+
style: _vm.textareaStyle,
|
|
401
|
+
attrs: {
|
|
402
|
+
tabindex: _vm.tabindex,
|
|
403
|
+
disabled: _vm.inputDisabled,
|
|
404
|
+
readonly: _vm.readonly,
|
|
405
|
+
autocomplete: _vm.autoComplete || _vm.autocomplete,
|
|
406
|
+
"aria-label": _vm.label,
|
|
407
|
+
},
|
|
408
|
+
on: {
|
|
409
|
+
compositionstart: _vm.handleCompositionStart,
|
|
410
|
+
compositionupdate: _vm.handleCompositionUpdate,
|
|
411
|
+
compositionend: _vm.handleCompositionEnd,
|
|
412
|
+
input: _vm.handleInput,
|
|
413
|
+
focus: _vm.handleFocus,
|
|
414
|
+
blur: _vm.handleBlur,
|
|
415
|
+
change: _vm.handleChange,
|
|
416
|
+
},
|
|
417
|
+
},
|
|
418
|
+
"textarea",
|
|
419
|
+
_vm.$attrs,
|
|
420
|
+
false
|
|
421
|
+
)
|
|
422
|
+
),
|
|
423
|
+
_vm.isWordLimitVisible && _vm.type === "textarea"
|
|
424
|
+
? _c("span", { staticClass: "el-input__count" }, [
|
|
425
|
+
_vm._v(_vm._s(_vm.textLength) + "/" + _vm._s(_vm.upperLimit)),
|
|
426
|
+
])
|
|
427
|
+
: _vm._e(),
|
|
428
|
+
],
|
|
429
|
+
2
|
|
430
|
+
)
|
|
431
|
+
}
|
|
432
|
+
var staticRenderFns = []
|
|
433
|
+
render._withStripped = true
|
|
434
|
+
|
|
435
|
+
|
|
436
|
+
// CONCATENATED MODULE: ./packages/input/src/input.vue?vue&type=template&id=048a9cde
|
|
437
|
+
|
|
438
|
+
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
|
|
439
|
+
var emitter_ = __webpack_require__(4);
|
|
440
|
+
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
|
|
441
|
+
|
|
442
|
+
// EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"
|
|
443
|
+
var migrating_ = __webpack_require__(7);
|
|
444
|
+
var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);
|
|
445
|
+
|
|
446
|
+
// CONCATENATED MODULE: ./packages/input/src/calcTextareaHeight.js
|
|
447
|
+
var hiddenTextarea = void 0;
|
|
448
|
+
|
|
449
|
+
var HIDDEN_STYLE = '\n height:0 !important;\n visibility:hidden !important;\n overflow:hidden !important;\n position:absolute !important;\n z-index:-1000 !important;\n top:0 !important;\n right:0 !important\n';
|
|
450
|
+
|
|
451
|
+
var CONTEXT_STYLE = ['letter-spacing', 'line-height', 'padding-top', 'padding-bottom', 'font-family', 'font-weight', 'font-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-left', 'padding-right', 'border-width', 'box-sizing'];
|
|
452
|
+
|
|
453
|
+
function calculateNodeStyling(targetElement) {
|
|
454
|
+
var style = window.getComputedStyle(targetElement);
|
|
455
|
+
|
|
456
|
+
var boxSizing = style.getPropertyValue('box-sizing');
|
|
457
|
+
|
|
458
|
+
var paddingSize = parseFloat(style.getPropertyValue('padding-bottom')) + parseFloat(style.getPropertyValue('padding-top'));
|
|
459
|
+
|
|
460
|
+
var borderSize = parseFloat(style.getPropertyValue('border-bottom-width')) + parseFloat(style.getPropertyValue('border-top-width'));
|
|
461
|
+
|
|
462
|
+
var contextStyle = CONTEXT_STYLE.map(function (name) {
|
|
463
|
+
return name + ':' + style.getPropertyValue(name);
|
|
464
|
+
}).join(';');
|
|
465
|
+
|
|
466
|
+
return { contextStyle: contextStyle, paddingSize: paddingSize, borderSize: borderSize, boxSizing: boxSizing };
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
function calcTextareaHeight(targetElement) {
|
|
470
|
+
var minRows = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
471
|
+
var maxRows = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
|
472
|
+
|
|
473
|
+
if (!hiddenTextarea) {
|
|
474
|
+
hiddenTextarea = document.createElement('textarea');
|
|
475
|
+
document.body.appendChild(hiddenTextarea);
|
|
476
|
+
}
|
|
477
|
+
|
|
478
|
+
var _calculateNodeStyling = calculateNodeStyling(targetElement),
|
|
479
|
+
paddingSize = _calculateNodeStyling.paddingSize,
|
|
480
|
+
borderSize = _calculateNodeStyling.borderSize,
|
|
481
|
+
boxSizing = _calculateNodeStyling.boxSizing,
|
|
482
|
+
contextStyle = _calculateNodeStyling.contextStyle;
|
|
483
|
+
|
|
484
|
+
hiddenTextarea.setAttribute('style', contextStyle + ';' + HIDDEN_STYLE);
|
|
485
|
+
hiddenTextarea.value = targetElement.value || targetElement.placeholder || '';
|
|
486
|
+
|
|
487
|
+
var height = hiddenTextarea.scrollHeight;
|
|
488
|
+
var result = {};
|
|
489
|
+
|
|
490
|
+
if (boxSizing === 'border-box') {
|
|
491
|
+
height = height + borderSize;
|
|
492
|
+
} else if (boxSizing === 'content-box') {
|
|
493
|
+
height = height - paddingSize;
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
hiddenTextarea.value = '';
|
|
497
|
+
var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;
|
|
498
|
+
|
|
499
|
+
if (minRows !== null) {
|
|
500
|
+
var minHeight = singleRowHeight * minRows;
|
|
501
|
+
if (boxSizing === 'border-box') {
|
|
502
|
+
minHeight = minHeight + paddingSize + borderSize;
|
|
503
|
+
}
|
|
504
|
+
height = Math.max(minHeight, height);
|
|
505
|
+
result.minHeight = minHeight + 'px';
|
|
506
|
+
}
|
|
507
|
+
if (maxRows !== null) {
|
|
508
|
+
var maxHeight = singleRowHeight * maxRows;
|
|
509
|
+
if (boxSizing === 'border-box') {
|
|
510
|
+
maxHeight = maxHeight + paddingSize + borderSize;
|
|
511
|
+
}
|
|
512
|
+
height = Math.min(maxHeight, height);
|
|
513
|
+
}
|
|
514
|
+
result.height = height + 'px';
|
|
515
|
+
hiddenTextarea.parentNode && hiddenTextarea.parentNode.removeChild(hiddenTextarea);
|
|
516
|
+
hiddenTextarea = null;
|
|
517
|
+
return result;
|
|
518
|
+
};
|
|
519
|
+
// EXTERNAL MODULE: external "element-ui/lib/utils/merge"
|
|
520
|
+
var merge_ = __webpack_require__(6);
|
|
521
|
+
var merge_default = /*#__PURE__*/__webpack_require__.n(merge_);
|
|
522
|
+
|
|
523
|
+
// EXTERNAL MODULE: external "element-ui/lib/utils/shared"
|
|
524
|
+
var shared_ = __webpack_require__(11);
|
|
525
|
+
|
|
526
|
+
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/input/src/input.vue?vue&type=script&lang=js
|
|
527
|
+
//
|
|
528
|
+
//
|
|
529
|
+
//
|
|
530
|
+
//
|
|
531
|
+
//
|
|
532
|
+
//
|
|
533
|
+
//
|
|
534
|
+
//
|
|
535
|
+
//
|
|
536
|
+
//
|
|
537
|
+
//
|
|
538
|
+
//
|
|
539
|
+
//
|
|
540
|
+
//
|
|
541
|
+
//
|
|
542
|
+
//
|
|
543
|
+
//
|
|
544
|
+
//
|
|
545
|
+
//
|
|
546
|
+
//
|
|
547
|
+
//
|
|
548
|
+
//
|
|
549
|
+
//
|
|
550
|
+
//
|
|
551
|
+
//
|
|
552
|
+
//
|
|
553
|
+
//
|
|
554
|
+
//
|
|
555
|
+
//
|
|
556
|
+
//
|
|
557
|
+
//
|
|
558
|
+
//
|
|
559
|
+
//
|
|
560
|
+
//
|
|
561
|
+
//
|
|
562
|
+
//
|
|
563
|
+
//
|
|
564
|
+
//
|
|
565
|
+
//
|
|
566
|
+
//
|
|
567
|
+
//
|
|
568
|
+
//
|
|
569
|
+
//
|
|
570
|
+
//
|
|
571
|
+
//
|
|
572
|
+
//
|
|
573
|
+
//
|
|
574
|
+
//
|
|
575
|
+
//
|
|
576
|
+
//
|
|
577
|
+
//
|
|
578
|
+
//
|
|
579
|
+
//
|
|
580
|
+
//
|
|
581
|
+
//
|
|
582
|
+
//
|
|
583
|
+
//
|
|
584
|
+
//
|
|
585
|
+
//
|
|
586
|
+
//
|
|
587
|
+
//
|
|
588
|
+
//
|
|
589
|
+
//
|
|
590
|
+
//
|
|
591
|
+
//
|
|
592
|
+
//
|
|
593
|
+
//
|
|
594
|
+
//
|
|
595
|
+
//
|
|
596
|
+
//
|
|
597
|
+
//
|
|
598
|
+
//
|
|
599
|
+
//
|
|
600
|
+
//
|
|
601
|
+
//
|
|
602
|
+
//
|
|
603
|
+
//
|
|
604
|
+
//
|
|
605
|
+
//
|
|
606
|
+
//
|
|
607
|
+
//
|
|
608
|
+
//
|
|
609
|
+
//
|
|
610
|
+
//
|
|
611
|
+
//
|
|
612
|
+
//
|
|
613
|
+
//
|
|
614
|
+
//
|
|
615
|
+
//
|
|
616
|
+
//
|
|
617
|
+
//
|
|
618
|
+
//
|
|
619
|
+
//
|
|
620
|
+
//
|
|
621
|
+
//
|
|
622
|
+
//
|
|
623
|
+
//
|
|
624
|
+
//
|
|
625
|
+
//
|
|
626
|
+
//
|
|
627
|
+
//
|
|
628
|
+
//
|
|
629
|
+
//
|
|
630
|
+
//
|
|
631
|
+
//
|
|
632
|
+
//
|
|
633
|
+
//
|
|
634
|
+
//
|
|
635
|
+
//
|
|
636
|
+
|
|
637
|
+
|
|
638
|
+
|
|
639
|
+
|
|
640
|
+
|
|
641
|
+
|
|
642
|
+
|
|
643
|
+
/* harmony default export */ var inputvue_type_script_lang_js = ({
|
|
644
|
+
name: 'ElInput',
|
|
645
|
+
|
|
646
|
+
componentName: 'ElInput',
|
|
647
|
+
|
|
648
|
+
mixins: [emitter_default.a, migrating_default.a],
|
|
649
|
+
|
|
650
|
+
inheritAttrs: false,
|
|
651
|
+
|
|
652
|
+
inject: {
|
|
653
|
+
elForm: {
|
|
654
|
+
default: ''
|
|
655
|
+
},
|
|
656
|
+
elFormItem: {
|
|
657
|
+
default: ''
|
|
658
|
+
}
|
|
659
|
+
},
|
|
660
|
+
|
|
661
|
+
data: function data() {
|
|
662
|
+
return {
|
|
663
|
+
textareaCalcStyle: {},
|
|
664
|
+
hovering: false,
|
|
665
|
+
focused: false,
|
|
666
|
+
isComposing: false,
|
|
667
|
+
passwordVisible: false
|
|
668
|
+
};
|
|
669
|
+
},
|
|
670
|
+
|
|
671
|
+
|
|
672
|
+
props: {
|
|
673
|
+
value: [String, Number],
|
|
674
|
+
size: String,
|
|
675
|
+
resize: String,
|
|
676
|
+
form: String,
|
|
677
|
+
disabled: Boolean,
|
|
678
|
+
readonly: Boolean,
|
|
679
|
+
type: {
|
|
680
|
+
type: String,
|
|
681
|
+
default: 'text'
|
|
682
|
+
},
|
|
683
|
+
autosize: {
|
|
684
|
+
type: [Boolean, Object],
|
|
685
|
+
default: false
|
|
686
|
+
},
|
|
687
|
+
autocomplete: {
|
|
688
|
+
type: String,
|
|
689
|
+
default: 'off'
|
|
690
|
+
},
|
|
691
|
+
/** @Deprecated in next major version */
|
|
692
|
+
autoComplete: {
|
|
693
|
+
type: String,
|
|
694
|
+
validator: function validator(val) {
|
|
695
|
+
false && false;
|
|
696
|
+
return true;
|
|
697
|
+
}
|
|
698
|
+
},
|
|
699
|
+
validateEvent: {
|
|
700
|
+
type: Boolean,
|
|
701
|
+
default: true
|
|
702
|
+
},
|
|
703
|
+
suffixIcon: String,
|
|
704
|
+
prefixIcon: String,
|
|
705
|
+
label: String,
|
|
706
|
+
clearable: {
|
|
707
|
+
type: Boolean,
|
|
708
|
+
default: false
|
|
709
|
+
},
|
|
710
|
+
showPassword: {
|
|
711
|
+
type: Boolean,
|
|
712
|
+
default: false
|
|
713
|
+
},
|
|
714
|
+
showWordLimit: {
|
|
715
|
+
type: Boolean,
|
|
716
|
+
default: false
|
|
717
|
+
},
|
|
718
|
+
tabindex: String
|
|
719
|
+
},
|
|
720
|
+
|
|
721
|
+
computed: {
|
|
722
|
+
_elFormItemSize: function _elFormItemSize() {
|
|
723
|
+
return (this.elFormItem || {}).elFormItemSize;
|
|
724
|
+
},
|
|
725
|
+
validateState: function validateState() {
|
|
726
|
+
return this.elFormItem ? this.elFormItem.validateState : '';
|
|
727
|
+
},
|
|
728
|
+
needStatusIcon: function needStatusIcon() {
|
|
729
|
+
return this.elForm ? this.elForm.statusIcon : false;
|
|
730
|
+
},
|
|
731
|
+
validateIcon: function validateIcon() {
|
|
732
|
+
return {
|
|
733
|
+
validating: 'el-icon-loading',
|
|
734
|
+
success: 'el-icon-circle-check',
|
|
735
|
+
error: 'el-icon-circle-close'
|
|
736
|
+
}[this.validateState];
|
|
737
|
+
},
|
|
738
|
+
textareaStyle: function textareaStyle() {
|
|
739
|
+
return merge_default()({}, this.textareaCalcStyle, { resize: this.resize });
|
|
740
|
+
},
|
|
741
|
+
inputSize: function inputSize() {
|
|
742
|
+
return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
|
|
743
|
+
},
|
|
744
|
+
inputDisabled: function inputDisabled() {
|
|
745
|
+
return this.disabled || (this.elForm || {}).disabled;
|
|
746
|
+
},
|
|
747
|
+
nativeInputValue: function nativeInputValue() {
|
|
748
|
+
return this.value === null || this.value === undefined ? '' : String(this.value);
|
|
749
|
+
},
|
|
750
|
+
showClear: function showClear() {
|
|
751
|
+
return this.clearable && !this.inputDisabled && !this.readonly && this.nativeInputValue && (this.focused || this.hovering);
|
|
752
|
+
},
|
|
753
|
+
showPwdVisible: function showPwdVisible() {
|
|
754
|
+
return this.showPassword && !this.inputDisabled && !this.readonly && (!!this.nativeInputValue || this.focused);
|
|
755
|
+
},
|
|
756
|
+
isWordLimitVisible: function isWordLimitVisible() {
|
|
757
|
+
return this.showWordLimit && this.$attrs.maxlength && (this.type === 'text' || this.type === 'textarea') && !this.inputDisabled && !this.readonly && !this.showPassword;
|
|
758
|
+
},
|
|
759
|
+
upperLimit: function upperLimit() {
|
|
760
|
+
return this.$attrs.maxlength;
|
|
761
|
+
},
|
|
762
|
+
textLength: function textLength() {
|
|
763
|
+
if (typeof this.value === 'number') {
|
|
764
|
+
return String(this.value).length;
|
|
765
|
+
}
|
|
766
|
+
|
|
767
|
+
return (this.value || '').length;
|
|
768
|
+
},
|
|
769
|
+
inputExceed: function inputExceed() {
|
|
770
|
+
// show exceed style if length of initial value greater then maxlength
|
|
771
|
+
return this.isWordLimitVisible && this.textLength > this.upperLimit;
|
|
772
|
+
}
|
|
773
|
+
},
|
|
774
|
+
|
|
775
|
+
watch: {
|
|
776
|
+
value: function value(val) {
|
|
777
|
+
this.$nextTick(this.resizeTextarea);
|
|
778
|
+
if (this.validateEvent) {
|
|
779
|
+
this.dispatch('ElFormItem', 'el.form.change', [val]);
|
|
780
|
+
}
|
|
781
|
+
},
|
|
782
|
+
|
|
783
|
+
// native input value is set explicitly
|
|
784
|
+
// do not use v-model / :value in template
|
|
785
|
+
// see: https://github.com/ElemeFE/element/issues/14521
|
|
786
|
+
nativeInputValue: function nativeInputValue() {
|
|
787
|
+
this.setNativeInputValue();
|
|
788
|
+
},
|
|
789
|
+
|
|
790
|
+
// when change between <input> and <textarea>,
|
|
791
|
+
// update DOM dependent value and styles
|
|
792
|
+
// https://github.com/ElemeFE/element/issues/14857
|
|
793
|
+
type: function type() {
|
|
794
|
+
var _this = this;
|
|
795
|
+
|
|
796
|
+
this.$nextTick(function () {
|
|
797
|
+
_this.setNativeInputValue();
|
|
798
|
+
_this.resizeTextarea();
|
|
799
|
+
_this.updateIconOffset();
|
|
800
|
+
});
|
|
801
|
+
}
|
|
802
|
+
},
|
|
803
|
+
|
|
804
|
+
methods: {
|
|
805
|
+
focus: function focus() {
|
|
806
|
+
this.getInput().focus();
|
|
807
|
+
},
|
|
808
|
+
blur: function blur() {
|
|
809
|
+
this.getInput().blur();
|
|
810
|
+
},
|
|
811
|
+
getMigratingConfig: function getMigratingConfig() {
|
|
812
|
+
return {
|
|
813
|
+
props: {
|
|
814
|
+
'icon': 'icon is removed, use suffix-icon / prefix-icon instead.',
|
|
815
|
+
'on-icon-click': 'on-icon-click is removed.'
|
|
816
|
+
},
|
|
817
|
+
events: {
|
|
818
|
+
'click': 'click is removed.'
|
|
819
|
+
}
|
|
820
|
+
};
|
|
821
|
+
},
|
|
822
|
+
handleBlur: function handleBlur(event) {
|
|
823
|
+
this.focused = false;
|
|
824
|
+
this.$emit('blur', event);
|
|
825
|
+
if (this.validateEvent) {
|
|
826
|
+
this.dispatch('ElFormItem', 'el.form.blur', [this.value]);
|
|
827
|
+
}
|
|
828
|
+
},
|
|
829
|
+
select: function select() {
|
|
830
|
+
this.getInput().select();
|
|
831
|
+
},
|
|
832
|
+
resizeTextarea: function resizeTextarea() {
|
|
833
|
+
if (this.$isServer) return;
|
|
834
|
+
var autosize = this.autosize,
|
|
835
|
+
type = this.type;
|
|
836
|
+
|
|
837
|
+
if (type !== 'textarea') return;
|
|
838
|
+
if (!autosize) {
|
|
839
|
+
this.textareaCalcStyle = {
|
|
840
|
+
minHeight: calcTextareaHeight(this.$refs.textarea).minHeight
|
|
841
|
+
};
|
|
842
|
+
return;
|
|
843
|
+
}
|
|
844
|
+
var minRows = autosize.minRows;
|
|
845
|
+
var maxRows = autosize.maxRows;
|
|
846
|
+
|
|
847
|
+
this.textareaCalcStyle = calcTextareaHeight(this.$refs.textarea, minRows, maxRows);
|
|
848
|
+
},
|
|
849
|
+
setNativeInputValue: function setNativeInputValue() {
|
|
850
|
+
var input = this.getInput();
|
|
851
|
+
if (!input) return;
|
|
852
|
+
if (input.value === this.nativeInputValue) return;
|
|
853
|
+
input.value = this.nativeInputValue;
|
|
854
|
+
},
|
|
855
|
+
handleFocus: function handleFocus(event) {
|
|
856
|
+
this.focused = true;
|
|
857
|
+
this.$emit('focus', event);
|
|
858
|
+
},
|
|
859
|
+
handleCompositionStart: function handleCompositionStart(event) {
|
|
860
|
+
this.$emit('compositionstart', event);
|
|
861
|
+
this.isComposing = true;
|
|
862
|
+
},
|
|
863
|
+
handleCompositionUpdate: function handleCompositionUpdate(event) {
|
|
864
|
+
this.$emit('compositionupdate', event);
|
|
865
|
+
var text = event.target.value;
|
|
866
|
+
var lastCharacter = text[text.length - 1] || '';
|
|
867
|
+
this.isComposing = !Object(shared_["isKorean"])(lastCharacter);
|
|
868
|
+
},
|
|
869
|
+
handleCompositionEnd: function handleCompositionEnd(event) {
|
|
870
|
+
this.$emit('compositionend', event);
|
|
871
|
+
if (this.isComposing) {
|
|
872
|
+
this.isComposing = false;
|
|
873
|
+
this.handleInput(event);
|
|
874
|
+
}
|
|
875
|
+
},
|
|
876
|
+
handleInput: function handleInput(event) {
|
|
877
|
+
// should not emit input during composition
|
|
878
|
+
// see: https://github.com/ElemeFE/element/issues/10516
|
|
879
|
+
if (this.isComposing) return;
|
|
880
|
+
|
|
881
|
+
// hack for https://github.com/ElemeFE/element/issues/8548
|
|
882
|
+
// should remove the following line when we don't support IE
|
|
883
|
+
if (event.target.value === this.nativeInputValue) return;
|
|
884
|
+
|
|
885
|
+
this.$emit('input', event.target.value);
|
|
886
|
+
|
|
887
|
+
// ensure native input value is controlled
|
|
888
|
+
// see: https://github.com/ElemeFE/element/issues/12850
|
|
889
|
+
this.$nextTick(this.setNativeInputValue);
|
|
890
|
+
},
|
|
891
|
+
handleChange: function handleChange(event) {
|
|
892
|
+
this.$emit('change', event.target.value);
|
|
893
|
+
},
|
|
894
|
+
calcIconOffset: function calcIconOffset(place) {
|
|
895
|
+
var elList = [].slice.call(this.$el.querySelectorAll('.el-input__' + place) || []);
|
|
896
|
+
if (!elList.length) return;
|
|
897
|
+
var el = null;
|
|
898
|
+
for (var i = 0; i < elList.length; i++) {
|
|
899
|
+
if (elList[i].parentNode === this.$el) {
|
|
900
|
+
el = elList[i];
|
|
901
|
+
break;
|
|
902
|
+
}
|
|
903
|
+
}
|
|
904
|
+
if (!el) return;
|
|
905
|
+
var pendantMap = {
|
|
906
|
+
suffix: 'append',
|
|
907
|
+
prefix: 'prepend'
|
|
908
|
+
};
|
|
909
|
+
|
|
910
|
+
var pendant = pendantMap[place];
|
|
911
|
+
if (this.$slots[pendant]) {
|
|
912
|
+
el.style.transform = 'translateX(' + (place === 'suffix' ? '-' : '') + this.$el.querySelector('.el-input-group__' + pendant).offsetWidth + 'px)';
|
|
913
|
+
} else {
|
|
914
|
+
el.removeAttribute('style');
|
|
915
|
+
}
|
|
916
|
+
},
|
|
917
|
+
updateIconOffset: function updateIconOffset() {
|
|
918
|
+
this.calcIconOffset('prefix');
|
|
919
|
+
this.calcIconOffset('suffix');
|
|
920
|
+
},
|
|
921
|
+
clear: function clear() {
|
|
922
|
+
this.$emit('input', '');
|
|
923
|
+
this.$emit('change', '');
|
|
924
|
+
this.$emit('clear');
|
|
925
|
+
},
|
|
926
|
+
handlePasswordVisible: function handlePasswordVisible() {
|
|
927
|
+
var _this2 = this;
|
|
928
|
+
|
|
929
|
+
this.passwordVisible = !this.passwordVisible;
|
|
930
|
+
this.$nextTick(function () {
|
|
931
|
+
_this2.focus();
|
|
932
|
+
});
|
|
933
|
+
},
|
|
934
|
+
getInput: function getInput() {
|
|
935
|
+
return this.$refs.input || this.$refs.textarea;
|
|
936
|
+
},
|
|
937
|
+
getSuffixVisible: function getSuffixVisible() {
|
|
938
|
+
return this.$slots.suffix || this.suffixIcon || this.showClear || this.showPassword || this.isWordLimitVisible || this.validateState && this.needStatusIcon;
|
|
939
|
+
}
|
|
940
|
+
},
|
|
941
|
+
|
|
942
|
+
created: function created() {
|
|
943
|
+
this.$on('inputSelect', this.select);
|
|
944
|
+
},
|
|
945
|
+
mounted: function mounted() {
|
|
946
|
+
this.setNativeInputValue();
|
|
947
|
+
this.resizeTextarea();
|
|
948
|
+
this.updateIconOffset();
|
|
949
|
+
},
|
|
950
|
+
updated: function updated() {
|
|
951
|
+
this.$nextTick(this.updateIconOffset);
|
|
952
|
+
}
|
|
953
|
+
});
|
|
954
|
+
// CONCATENATED MODULE: ./packages/input/src/input.vue?vue&type=script&lang=js
|
|
955
|
+
/* harmony default export */ var src_inputvue_type_script_lang_js = (inputvue_type_script_lang_js);
|
|
956
|
+
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
|
|
957
|
+
var componentNormalizer = __webpack_require__(0);
|
|
958
|
+
|
|
959
|
+
// CONCATENATED MODULE: ./packages/input/src/input.vue
|
|
960
|
+
|
|
961
|
+
|
|
962
|
+
|
|
963
|
+
|
|
964
|
+
|
|
965
|
+
/* normalize component */
|
|
966
|
+
|
|
967
|
+
var component = Object(componentNormalizer["a" /* default */])(
|
|
968
|
+
src_inputvue_type_script_lang_js,
|
|
969
|
+
render,
|
|
970
|
+
staticRenderFns,
|
|
971
|
+
false,
|
|
972
|
+
null,
|
|
973
|
+
null,
|
|
974
|
+
null
|
|
975
|
+
|
|
976
|
+
)
|
|
977
|
+
|
|
978
|
+
/* harmony default export */ var input = (component.exports);
|
|
979
|
+
// CONCATENATED MODULE: ./packages/input/index.js
|
|
980
|
+
|
|
981
|
+
|
|
982
|
+
/* istanbul ignore next */
|
|
983
|
+
input.install = function (Vue) {
|
|
984
|
+
Vue.component(input.name, input);
|
|
985
|
+
};
|
|
986
|
+
|
|
987
|
+
/* harmony default export */ var packages_input = __webpack_exports__["default"] = (input);
|
|
988
|
+
|
|
989
|
+
/***/ }),
|
|
990
|
+
|
|
991
|
+
/***/ 14:
|
|
992
|
+
/***/ (function(module, exports) {
|
|
993
|
+
|
|
994
|
+
module.exports = require("element-ui/lib/utils/clickoutside");
|
|
995
|
+
|
|
996
|
+
/***/ }),
|
|
997
|
+
|
|
998
|
+
/***/ 15:
|
|
999
|
+
/***/ (function(module, exports) {
|
|
1000
|
+
|
|
1001
|
+
module.exports = require("throttle-debounce/debounce");
|
|
1002
|
+
|
|
1003
|
+
/***/ }),
|
|
1004
|
+
|
|
1005
|
+
/***/ 17:
|
|
1006
|
+
/***/ (function(module, exports) {
|
|
1007
|
+
|
|
1008
|
+
module.exports = require("element-ui/lib/utils/scrollbar-width");
|
|
1009
|
+
|
|
1010
|
+
/***/ }),
|
|
1011
|
+
|
|
1012
|
+
/***/ 18:
|
|
1013
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
1014
|
+
|
|
1015
|
+
"use strict";
|
|
1016
|
+
// ESM COMPAT FLAG
|
|
1017
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1018
|
+
|
|
1019
|
+
// EXTERNAL MODULE: external "element-ui/lib/utils/resize-event"
|
|
1020
|
+
var resize_event_ = __webpack_require__(10);
|
|
1021
|
+
|
|
1022
|
+
// EXTERNAL MODULE: external "element-ui/lib/utils/scrollbar-width"
|
|
1023
|
+
var scrollbar_width_ = __webpack_require__(17);
|
|
1024
|
+
var scrollbar_width_default = /*#__PURE__*/__webpack_require__.n(scrollbar_width_);
|
|
1025
|
+
|
|
1026
|
+
// EXTERNAL MODULE: external "element-ui/lib/utils/util"
|
|
1027
|
+
var util_ = __webpack_require__(3);
|
|
1028
|
+
|
|
1029
|
+
// EXTERNAL MODULE: external "element-ui/lib/utils/dom"
|
|
1030
|
+
var dom_ = __webpack_require__(1);
|
|
1031
|
+
|
|
1032
|
+
// CONCATENATED MODULE: ./packages/scrollbar/src/util.js
|
|
1033
|
+
var BAR_MAP = {
|
|
1034
|
+
vertical: {
|
|
1035
|
+
offset: 'offsetHeight',
|
|
1036
|
+
scroll: 'scrollTop',
|
|
1037
|
+
scrollSize: 'scrollHeight',
|
|
1038
|
+
size: 'height',
|
|
1039
|
+
key: 'vertical',
|
|
1040
|
+
axis: 'Y',
|
|
1041
|
+
client: 'clientY',
|
|
1042
|
+
direction: 'top'
|
|
1043
|
+
},
|
|
1044
|
+
horizontal: {
|
|
1045
|
+
offset: 'offsetWidth',
|
|
1046
|
+
scroll: 'scrollLeft',
|
|
1047
|
+
scrollSize: 'scrollWidth',
|
|
1048
|
+
size: 'width',
|
|
1049
|
+
key: 'horizontal',
|
|
1050
|
+
axis: 'X',
|
|
1051
|
+
client: 'clientX',
|
|
1052
|
+
direction: 'left'
|
|
1053
|
+
}
|
|
1054
|
+
};
|
|
1055
|
+
|
|
1056
|
+
function renderThumbStyle(_ref) {
|
|
1057
|
+
var move = _ref.move,
|
|
1058
|
+
size = _ref.size,
|
|
1059
|
+
bar = _ref.bar;
|
|
1060
|
+
|
|
1061
|
+
var style = {};
|
|
1062
|
+
var translate = 'translate' + bar.axis + '(' + move + '%)';
|
|
1063
|
+
|
|
1064
|
+
style[bar.size] = size;
|
|
1065
|
+
style.transform = translate;
|
|
1066
|
+
style.msTransform = translate;
|
|
1067
|
+
style.webkitTransform = translate;
|
|
1068
|
+
|
|
1069
|
+
return style;
|
|
1070
|
+
};
|
|
1071
|
+
// CONCATENATED MODULE: ./packages/scrollbar/src/bar.js
|
|
1072
|
+
|
|
1073
|
+
|
|
1074
|
+
|
|
1075
|
+
/* istanbul ignore next */
|
|
1076
|
+
/* harmony default export */ var src_bar = ({
|
|
1077
|
+
name: 'Bar',
|
|
1078
|
+
|
|
1079
|
+
props: {
|
|
1080
|
+
vertical: Boolean,
|
|
1081
|
+
size: String,
|
|
1082
|
+
move: Number
|
|
1083
|
+
},
|
|
1084
|
+
|
|
1085
|
+
computed: {
|
|
1086
|
+
bar: function bar() {
|
|
1087
|
+
return BAR_MAP[this.vertical ? 'vertical' : 'horizontal'];
|
|
1088
|
+
},
|
|
1089
|
+
wrap: function wrap() {
|
|
1090
|
+
return this.$parent.wrap;
|
|
1091
|
+
}
|
|
1092
|
+
},
|
|
1093
|
+
|
|
1094
|
+
render: function render(h) {
|
|
1095
|
+
var size = this.size,
|
|
1096
|
+
move = this.move,
|
|
1097
|
+
bar = this.bar;
|
|
1098
|
+
|
|
1099
|
+
|
|
1100
|
+
return h(
|
|
1101
|
+
'div',
|
|
1102
|
+
{
|
|
1103
|
+
'class': ['el-scrollbar__bar', 'is-' + bar.key],
|
|
1104
|
+
on: {
|
|
1105
|
+
'mousedown': this.clickTrackHandler
|
|
1106
|
+
}
|
|
1107
|
+
},
|
|
1108
|
+
[h('div', {
|
|
1109
|
+
ref: 'thumb',
|
|
1110
|
+
'class': 'el-scrollbar__thumb',
|
|
1111
|
+
on: {
|
|
1112
|
+
'mousedown': this.clickThumbHandler
|
|
1113
|
+
},
|
|
1114
|
+
|
|
1115
|
+
style: renderThumbStyle({ size: size, move: move, bar: bar }) })]
|
|
1116
|
+
);
|
|
1117
|
+
},
|
|
1118
|
+
|
|
1119
|
+
|
|
1120
|
+
methods: {
|
|
1121
|
+
clickThumbHandler: function clickThumbHandler(e) {
|
|
1122
|
+
// prevent click event of right button
|
|
1123
|
+
if (e.ctrlKey || e.button === 2) {
|
|
1124
|
+
return;
|
|
1125
|
+
}
|
|
1126
|
+
this.startDrag(e);
|
|
1127
|
+
this[this.bar.axis] = e.currentTarget[this.bar.offset] - (e[this.bar.client] - e.currentTarget.getBoundingClientRect()[this.bar.direction]);
|
|
1128
|
+
},
|
|
1129
|
+
clickTrackHandler: function clickTrackHandler(e) {
|
|
1130
|
+
var offset = Math.abs(e.target.getBoundingClientRect()[this.bar.direction] - e[this.bar.client]);
|
|
1131
|
+
var thumbHalf = this.$refs.thumb[this.bar.offset] / 2;
|
|
1132
|
+
var thumbPositionPercentage = (offset - thumbHalf) * 100 / this.$el[this.bar.offset];
|
|
1133
|
+
|
|
1134
|
+
this.wrap[this.bar.scroll] = thumbPositionPercentage * this.wrap[this.bar.scrollSize] / 100;
|
|
1135
|
+
},
|
|
1136
|
+
startDrag: function startDrag(e) {
|
|
1137
|
+
e.stopImmediatePropagation();
|
|
1138
|
+
this.cursorDown = true;
|
|
1139
|
+
|
|
1140
|
+
Object(dom_["on"])(document, 'mousemove', this.mouseMoveDocumentHandler);
|
|
1141
|
+
Object(dom_["on"])(document, 'mouseup', this.mouseUpDocumentHandler);
|
|
1142
|
+
document.onselectstart = function () {
|
|
1143
|
+
return false;
|
|
1144
|
+
};
|
|
1145
|
+
},
|
|
1146
|
+
mouseMoveDocumentHandler: function mouseMoveDocumentHandler(e) {
|
|
1147
|
+
if (this.cursorDown === false) return;
|
|
1148
|
+
var prevPage = this[this.bar.axis];
|
|
1149
|
+
|
|
1150
|
+
if (!prevPage) return;
|
|
1151
|
+
|
|
1152
|
+
var offset = (this.$el.getBoundingClientRect()[this.bar.direction] - e[this.bar.client]) * -1;
|
|
1153
|
+
var thumbClickPosition = this.$refs.thumb[this.bar.offset] - prevPage;
|
|
1154
|
+
var thumbPositionPercentage = (offset - thumbClickPosition) * 100 / this.$el[this.bar.offset];
|
|
1155
|
+
|
|
1156
|
+
this.wrap[this.bar.scroll] = thumbPositionPercentage * this.wrap[this.bar.scrollSize] / 100;
|
|
1157
|
+
},
|
|
1158
|
+
mouseUpDocumentHandler: function mouseUpDocumentHandler(e) {
|
|
1159
|
+
this.cursorDown = false;
|
|
1160
|
+
this[this.bar.axis] = 0;
|
|
1161
|
+
Object(dom_["off"])(document, 'mousemove', this.mouseMoveDocumentHandler);
|
|
1162
|
+
document.onselectstart = null;
|
|
1163
|
+
}
|
|
1164
|
+
},
|
|
1165
|
+
|
|
1166
|
+
destroyed: function destroyed() {
|
|
1167
|
+
Object(dom_["off"])(document, 'mouseup', this.mouseUpDocumentHandler);
|
|
1168
|
+
}
|
|
1169
|
+
});
|
|
1170
|
+
// CONCATENATED MODULE: ./packages/scrollbar/src/main.js
|
|
1171
|
+
// reference https://github.com/noeldelgado/gemini-scrollbar/blob/master/index.js
|
|
1172
|
+
|
|
1173
|
+
|
|
1174
|
+
|
|
1175
|
+
|
|
1176
|
+
|
|
1177
|
+
|
|
1178
|
+
/* istanbul ignore next */
|
|
1179
|
+
/* harmony default export */ var main = ({
|
|
1180
|
+
name: 'ElScrollbar',
|
|
1181
|
+
|
|
1182
|
+
components: { Bar: src_bar },
|
|
1183
|
+
|
|
1184
|
+
props: {
|
|
1185
|
+
native: Boolean,
|
|
1186
|
+
wrapStyle: {},
|
|
1187
|
+
wrapClass: {},
|
|
1188
|
+
viewClass: {},
|
|
1189
|
+
viewStyle: {},
|
|
1190
|
+
noresize: Boolean, // 如果 container 尺寸不会发生变化,最好设置它可以优化性能
|
|
1191
|
+
tag: {
|
|
1192
|
+
type: String,
|
|
1193
|
+
default: 'div'
|
|
1194
|
+
}
|
|
1195
|
+
},
|
|
1196
|
+
|
|
1197
|
+
data: function data() {
|
|
1198
|
+
return {
|
|
1199
|
+
sizeWidth: '0',
|
|
1200
|
+
sizeHeight: '0',
|
|
1201
|
+
moveX: 0,
|
|
1202
|
+
moveY: 0
|
|
1203
|
+
};
|
|
1204
|
+
},
|
|
1205
|
+
|
|
1206
|
+
|
|
1207
|
+
computed: {
|
|
1208
|
+
wrap: function wrap() {
|
|
1209
|
+
return this.$refs.wrap;
|
|
1210
|
+
}
|
|
1211
|
+
},
|
|
1212
|
+
|
|
1213
|
+
render: function render(h) {
|
|
1214
|
+
var gutter = scrollbar_width_default()();
|
|
1215
|
+
var style = this.wrapStyle;
|
|
1216
|
+
|
|
1217
|
+
if (gutter) {
|
|
1218
|
+
var gutterWith = '-' + gutter + 'px';
|
|
1219
|
+
var gutterStyle = 'margin-bottom: ' + gutterWith + '; margin-right: ' + gutterWith + ';';
|
|
1220
|
+
|
|
1221
|
+
if (Array.isArray(this.wrapStyle)) {
|
|
1222
|
+
style = Object(util_["toObject"])(this.wrapStyle);
|
|
1223
|
+
style.marginRight = style.marginBottom = gutterWith;
|
|
1224
|
+
} else if (typeof this.wrapStyle === 'string') {
|
|
1225
|
+
style += gutterStyle;
|
|
1226
|
+
} else {
|
|
1227
|
+
style = gutterStyle;
|
|
1228
|
+
}
|
|
1229
|
+
}
|
|
1230
|
+
var view = h(this.tag, {
|
|
1231
|
+
class: ['el-scrollbar__view', this.viewClass],
|
|
1232
|
+
style: this.viewStyle,
|
|
1233
|
+
ref: 'resize'
|
|
1234
|
+
}, this.$slots.default);
|
|
1235
|
+
var wrap = h(
|
|
1236
|
+
'div',
|
|
1237
|
+
{
|
|
1238
|
+
ref: 'wrap',
|
|
1239
|
+
style: style,
|
|
1240
|
+
on: {
|
|
1241
|
+
'scroll': this.handleScroll
|
|
1242
|
+
},
|
|
1243
|
+
|
|
1244
|
+
'class': [this.wrapClass, 'el-scrollbar__wrap', gutter ? '' : 'el-scrollbar__wrap--hidden-default'] },
|
|
1245
|
+
[[view]]
|
|
1246
|
+
);
|
|
1247
|
+
var nodes = void 0;
|
|
1248
|
+
|
|
1249
|
+
if (!this.native) {
|
|
1250
|
+
nodes = [wrap, h(src_bar, {
|
|
1251
|
+
attrs: {
|
|
1252
|
+
move: this.moveX,
|
|
1253
|
+
size: this.sizeWidth }
|
|
1254
|
+
}), h(src_bar, {
|
|
1255
|
+
attrs: {
|
|
1256
|
+
vertical: true,
|
|
1257
|
+
move: this.moveY,
|
|
1258
|
+
size: this.sizeHeight }
|
|
1259
|
+
})];
|
|
1260
|
+
} else {
|
|
1261
|
+
nodes = [h(
|
|
1262
|
+
'div',
|
|
1263
|
+
{
|
|
1264
|
+
ref: 'wrap',
|
|
1265
|
+
'class': [this.wrapClass, 'el-scrollbar__wrap'],
|
|
1266
|
+
style: style },
|
|
1267
|
+
[[view]]
|
|
1268
|
+
)];
|
|
1269
|
+
}
|
|
1270
|
+
return h('div', { class: 'el-scrollbar' }, nodes);
|
|
1271
|
+
},
|
|
1272
|
+
|
|
1273
|
+
|
|
1274
|
+
methods: {
|
|
1275
|
+
handleScroll: function handleScroll() {
|
|
1276
|
+
var wrap = this.wrap;
|
|
1277
|
+
|
|
1278
|
+
this.moveY = wrap.scrollTop * 100 / wrap.clientHeight;
|
|
1279
|
+
this.moveX = wrap.scrollLeft * 100 / wrap.clientWidth;
|
|
1280
|
+
},
|
|
1281
|
+
update: function update() {
|
|
1282
|
+
var heightPercentage = void 0,
|
|
1283
|
+
widthPercentage = void 0;
|
|
1284
|
+
var wrap = this.wrap;
|
|
1285
|
+
if (!wrap) return;
|
|
1286
|
+
|
|
1287
|
+
heightPercentage = wrap.clientHeight * 100 / wrap.scrollHeight;
|
|
1288
|
+
widthPercentage = wrap.clientWidth * 100 / wrap.scrollWidth;
|
|
1289
|
+
|
|
1290
|
+
this.sizeHeight = heightPercentage < 100 ? heightPercentage + '%' : '';
|
|
1291
|
+
this.sizeWidth = widthPercentage < 100 ? widthPercentage + '%' : '';
|
|
1292
|
+
}
|
|
1293
|
+
},
|
|
1294
|
+
|
|
1295
|
+
mounted: function mounted() {
|
|
1296
|
+
if (this.native) return;
|
|
1297
|
+
this.$nextTick(this.update);
|
|
1298
|
+
!this.noresize && Object(resize_event_["addResizeListener"])(this.$refs.resize, this.update);
|
|
1299
|
+
},
|
|
1300
|
+
beforeDestroy: function beforeDestroy() {
|
|
1301
|
+
if (this.native) return;
|
|
1302
|
+
!this.noresize && Object(resize_event_["removeResizeListener"])(this.$refs.resize, this.update);
|
|
1303
|
+
}
|
|
1304
|
+
});
|
|
1305
|
+
// CONCATENATED MODULE: ./packages/scrollbar/index.js
|
|
1306
|
+
|
|
1307
|
+
|
|
1308
|
+
/* istanbul ignore next */
|
|
1309
|
+
main.install = function (Vue) {
|
|
1310
|
+
Vue.component(main.name, main);
|
|
1311
|
+
};
|
|
1312
|
+
|
|
1313
|
+
/* harmony default export */ var scrollbar = __webpack_exports__["default"] = (main);
|
|
1314
|
+
|
|
1315
|
+
/***/ }),
|
|
1316
|
+
|
|
1317
|
+
/***/ 23:
|
|
1318
|
+
/***/ (function(module, exports) {
|
|
1319
|
+
|
|
1320
|
+
module.exports = require("element-ui/lib/mixins/focus");
|
|
1321
|
+
|
|
1322
|
+
/***/ }),
|
|
1323
|
+
|
|
1324
|
+
/***/ 3:
|
|
1325
|
+
/***/ (function(module, exports) {
|
|
1326
|
+
|
|
1327
|
+
module.exports = require("element-ui/lib/utils/util");
|
|
1328
|
+
|
|
1329
|
+
/***/ }),
|
|
1330
|
+
|
|
1331
|
+
/***/ 4:
|
|
1332
|
+
/***/ (function(module, exports) {
|
|
1333
|
+
|
|
1334
|
+
module.exports = require("element-ui/lib/mixins/emitter");
|
|
1335
|
+
|
|
1336
|
+
/***/ }),
|
|
1337
|
+
|
|
1338
|
+
/***/ 5:
|
|
1339
|
+
/***/ (function(module, exports) {
|
|
1340
|
+
|
|
1341
|
+
module.exports = require("element-ui/lib/utils/vue-popper");
|
|
1342
|
+
|
|
1343
|
+
/***/ }),
|
|
1344
|
+
|
|
1345
|
+
/***/ 6:
|
|
1346
|
+
/***/ (function(module, exports) {
|
|
1347
|
+
|
|
1348
|
+
module.exports = require("element-ui/lib/utils/merge");
|
|
1349
|
+
|
|
1350
|
+
/***/ }),
|
|
1351
|
+
|
|
1352
|
+
/***/ 63:
|
|
1353
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
1354
|
+
|
|
1355
|
+
"use strict";
|
|
1356
|
+
// ESM COMPAT FLAG
|
|
1357
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1358
|
+
|
|
1359
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete.vue?vue&type=template&id=1a2b2cb6
|
|
1360
|
+
var render = function () {
|
|
1361
|
+
var _vm = this
|
|
1362
|
+
var _h = _vm.$createElement
|
|
1363
|
+
var _c = _vm._self._c || _h
|
|
1364
|
+
return _c(
|
|
1365
|
+
"div",
|
|
1366
|
+
{
|
|
1367
|
+
directives: [
|
|
1368
|
+
{
|
|
1369
|
+
name: "clickoutside",
|
|
1370
|
+
rawName: "v-clickoutside",
|
|
1371
|
+
value: _vm.close,
|
|
1372
|
+
expression: "close",
|
|
1373
|
+
},
|
|
1374
|
+
],
|
|
1375
|
+
staticClass: "el-autocomplete",
|
|
1376
|
+
attrs: {
|
|
1377
|
+
"aria-haspopup": "listbox",
|
|
1378
|
+
role: "combobox",
|
|
1379
|
+
"aria-expanded": _vm.suggestionVisible,
|
|
1380
|
+
"aria-owns": _vm.id,
|
|
1381
|
+
},
|
|
1382
|
+
},
|
|
1383
|
+
[
|
|
1384
|
+
_c(
|
|
1385
|
+
"el-input",
|
|
1386
|
+
_vm._b(
|
|
1387
|
+
{
|
|
1388
|
+
ref: "input",
|
|
1389
|
+
on: {
|
|
1390
|
+
input: _vm.handleInput,
|
|
1391
|
+
change: _vm.handleChange,
|
|
1392
|
+
focus: _vm.handleFocus,
|
|
1393
|
+
blur: _vm.handleBlur,
|
|
1394
|
+
clear: _vm.handleClear,
|
|
1395
|
+
},
|
|
1396
|
+
nativeOn: {
|
|
1397
|
+
keydown: [
|
|
1398
|
+
function ($event) {
|
|
1399
|
+
if (
|
|
1400
|
+
!("button" in $event) &&
|
|
1401
|
+
_vm._k($event.keyCode, "up", 38, $event.key, [
|
|
1402
|
+
"Up",
|
|
1403
|
+
"ArrowUp",
|
|
1404
|
+
])
|
|
1405
|
+
) {
|
|
1406
|
+
return null
|
|
1407
|
+
}
|
|
1408
|
+
$event.preventDefault()
|
|
1409
|
+
_vm.highlight(_vm.highlightedIndex - 1)
|
|
1410
|
+
},
|
|
1411
|
+
function ($event) {
|
|
1412
|
+
if (
|
|
1413
|
+
!("button" in $event) &&
|
|
1414
|
+
_vm._k($event.keyCode, "down", 40, $event.key, [
|
|
1415
|
+
"Down",
|
|
1416
|
+
"ArrowDown",
|
|
1417
|
+
])
|
|
1418
|
+
) {
|
|
1419
|
+
return null
|
|
1420
|
+
}
|
|
1421
|
+
$event.preventDefault()
|
|
1422
|
+
_vm.highlight(_vm.highlightedIndex + 1)
|
|
1423
|
+
},
|
|
1424
|
+
function ($event) {
|
|
1425
|
+
if (
|
|
1426
|
+
!("button" in $event) &&
|
|
1427
|
+
_vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
|
|
1428
|
+
) {
|
|
1429
|
+
return null
|
|
1430
|
+
}
|
|
1431
|
+
return _vm.handleKeyEnter($event)
|
|
1432
|
+
},
|
|
1433
|
+
function ($event) {
|
|
1434
|
+
if (
|
|
1435
|
+
!("button" in $event) &&
|
|
1436
|
+
_vm._k($event.keyCode, "tab", 9, $event.key, "Tab")
|
|
1437
|
+
) {
|
|
1438
|
+
return null
|
|
1439
|
+
}
|
|
1440
|
+
return _vm.close($event)
|
|
1441
|
+
},
|
|
1442
|
+
],
|
|
1443
|
+
},
|
|
1444
|
+
},
|
|
1445
|
+
"el-input",
|
|
1446
|
+
[_vm.$props, _vm.$attrs],
|
|
1447
|
+
false
|
|
1448
|
+
),
|
|
1449
|
+
[
|
|
1450
|
+
_vm.$slots.prepend
|
|
1451
|
+
? _c("template", { slot: "prepend" }, [_vm._t("prepend")], 2)
|
|
1452
|
+
: _vm._e(),
|
|
1453
|
+
_vm.$slots.append
|
|
1454
|
+
? _c("template", { slot: "append" }, [_vm._t("append")], 2)
|
|
1455
|
+
: _vm._e(),
|
|
1456
|
+
_vm.$slots.prefix
|
|
1457
|
+
? _c("template", { slot: "prefix" }, [_vm._t("prefix")], 2)
|
|
1458
|
+
: _vm._e(),
|
|
1459
|
+
_vm.$slots.suffix
|
|
1460
|
+
? _c("template", { slot: "suffix" }, [_vm._t("suffix")], 2)
|
|
1461
|
+
: _vm._e(),
|
|
1462
|
+
],
|
|
1463
|
+
2
|
|
1464
|
+
),
|
|
1465
|
+
_c(
|
|
1466
|
+
"el-autocomplete-suggestions",
|
|
1467
|
+
{
|
|
1468
|
+
ref: "suggestions",
|
|
1469
|
+
class: [_vm.popperClass ? _vm.popperClass : ""],
|
|
1470
|
+
attrs: {
|
|
1471
|
+
"visible-arrow": "",
|
|
1472
|
+
"popper-options": _vm.popperOptions,
|
|
1473
|
+
"append-to-body": _vm.popperAppendToBody,
|
|
1474
|
+
placement: _vm.placement,
|
|
1475
|
+
id: _vm.id,
|
|
1476
|
+
},
|
|
1477
|
+
},
|
|
1478
|
+
_vm._l(_vm.suggestions, function (item, index) {
|
|
1479
|
+
return _c(
|
|
1480
|
+
"li",
|
|
1481
|
+
{
|
|
1482
|
+
key: index,
|
|
1483
|
+
class: { highlighted: _vm.highlightedIndex === index },
|
|
1484
|
+
attrs: {
|
|
1485
|
+
id: _vm.id + "-item-" + index,
|
|
1486
|
+
role: "option",
|
|
1487
|
+
"aria-selected": _vm.highlightedIndex === index,
|
|
1488
|
+
},
|
|
1489
|
+
on: {
|
|
1490
|
+
click: function ($event) {
|
|
1491
|
+
_vm.select(item)
|
|
1492
|
+
},
|
|
1493
|
+
},
|
|
1494
|
+
},
|
|
1495
|
+
[
|
|
1496
|
+
_vm._t(
|
|
1497
|
+
"default",
|
|
1498
|
+
[
|
|
1499
|
+
_vm._v(
|
|
1500
|
+
"\n\t\t\t\t" + _vm._s(item[_vm.valueKey]) + "\n\t\t\t"
|
|
1501
|
+
),
|
|
1502
|
+
],
|
|
1503
|
+
{ item: item }
|
|
1504
|
+
),
|
|
1505
|
+
],
|
|
1506
|
+
2
|
|
1507
|
+
)
|
|
1508
|
+
}),
|
|
1509
|
+
0
|
|
1510
|
+
),
|
|
1511
|
+
],
|
|
1512
|
+
1
|
|
1513
|
+
)
|
|
1514
|
+
}
|
|
1515
|
+
var staticRenderFns = []
|
|
1516
|
+
render._withStripped = true
|
|
1517
|
+
|
|
1518
|
+
|
|
1519
|
+
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue?vue&type=template&id=1a2b2cb6
|
|
1520
|
+
|
|
1521
|
+
// EXTERNAL MODULE: external "throttle-debounce/debounce"
|
|
1522
|
+
var debounce_ = __webpack_require__(15);
|
|
1523
|
+
var debounce_default = /*#__PURE__*/__webpack_require__.n(debounce_);
|
|
1524
|
+
|
|
1525
|
+
// EXTERNAL MODULE: ./packages/input/index.js + 6 modules
|
|
1526
|
+
var input = __webpack_require__(13);
|
|
1527
|
+
|
|
1528
|
+
// EXTERNAL MODULE: external "element-ui/lib/utils/clickoutside"
|
|
1529
|
+
var clickoutside_ = __webpack_require__(14);
|
|
1530
|
+
var clickoutside_default = /*#__PURE__*/__webpack_require__.n(clickoutside_);
|
|
1531
|
+
|
|
1532
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=template&id=8de9f0a6
|
|
1533
|
+
var autocomplete_suggestionsvue_type_template_id_8de9f0a6_render = function () {
|
|
1534
|
+
var _vm = this
|
|
1535
|
+
var _h = _vm.$createElement
|
|
1536
|
+
var _c = _vm._self._c || _h
|
|
1537
|
+
return _c(
|
|
1538
|
+
"transition",
|
|
1539
|
+
{ attrs: { name: "el-zoom-in-top" }, on: { "after-leave": _vm.doDestroy } },
|
|
1540
|
+
[
|
|
1541
|
+
_c(
|
|
1542
|
+
"div",
|
|
1543
|
+
{
|
|
1544
|
+
directives: [
|
|
1545
|
+
{
|
|
1546
|
+
name: "show",
|
|
1547
|
+
rawName: "v-show",
|
|
1548
|
+
value: _vm.showPopper,
|
|
1549
|
+
expression: "showPopper",
|
|
1550
|
+
},
|
|
1551
|
+
],
|
|
1552
|
+
staticClass: "el-autocomplete-suggestion el-popper",
|
|
1553
|
+
class: {
|
|
1554
|
+
"is-loading": !_vm.parent.hideLoading && _vm.parent.loading,
|
|
1555
|
+
},
|
|
1556
|
+
style: { width: _vm.dropdownWidth },
|
|
1557
|
+
attrs: { role: "region" },
|
|
1558
|
+
},
|
|
1559
|
+
[
|
|
1560
|
+
_c(
|
|
1561
|
+
"el-scrollbar",
|
|
1562
|
+
{
|
|
1563
|
+
attrs: {
|
|
1564
|
+
tag: "ul",
|
|
1565
|
+
"wrap-class": "el-autocomplete-suggestion__wrap",
|
|
1566
|
+
"view-class": "el-autocomplete-suggestion__list",
|
|
1567
|
+
},
|
|
1568
|
+
},
|
|
1569
|
+
[
|
|
1570
|
+
!_vm.parent.hideLoading && _vm.parent.loading
|
|
1571
|
+
? _c("li", [_c("i", { staticClass: "el-icon-loading" })])
|
|
1572
|
+
: _vm._t("default"),
|
|
1573
|
+
],
|
|
1574
|
+
2
|
|
1575
|
+
),
|
|
1576
|
+
],
|
|
1577
|
+
1
|
|
1578
|
+
),
|
|
1579
|
+
]
|
|
1580
|
+
)
|
|
1581
|
+
}
|
|
1582
|
+
var autocomplete_suggestionsvue_type_template_id_8de9f0a6_staticRenderFns = []
|
|
1583
|
+
autocomplete_suggestionsvue_type_template_id_8de9f0a6_render._withStripped = true
|
|
1584
|
+
|
|
1585
|
+
|
|
1586
|
+
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=template&id=8de9f0a6
|
|
1587
|
+
|
|
1588
|
+
// EXTERNAL MODULE: external "element-ui/lib/utils/vue-popper"
|
|
1589
|
+
var vue_popper_ = __webpack_require__(5);
|
|
1590
|
+
var vue_popper_default = /*#__PURE__*/__webpack_require__.n(vue_popper_);
|
|
1591
|
+
|
|
1592
|
+
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
|
|
1593
|
+
var emitter_ = __webpack_require__(4);
|
|
1594
|
+
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
|
|
1595
|
+
|
|
1596
|
+
// EXTERNAL MODULE: ./packages/scrollbar/index.js + 3 modules
|
|
1597
|
+
var scrollbar = __webpack_require__(18);
|
|
1598
|
+
|
|
1599
|
+
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=script&lang=js
|
|
1600
|
+
//
|
|
1601
|
+
//
|
|
1602
|
+
//
|
|
1603
|
+
//
|
|
1604
|
+
//
|
|
1605
|
+
//
|
|
1606
|
+
//
|
|
1607
|
+
//
|
|
1608
|
+
//
|
|
1609
|
+
//
|
|
1610
|
+
//
|
|
1611
|
+
//
|
|
1612
|
+
//
|
|
1613
|
+
//
|
|
1614
|
+
//
|
|
1615
|
+
//
|
|
1616
|
+
//
|
|
1617
|
+
//
|
|
1618
|
+
//
|
|
1619
|
+
|
|
1620
|
+
|
|
1621
|
+
|
|
1622
|
+
|
|
1623
|
+
|
|
1624
|
+
/* harmony default export */ var autocomplete_suggestionsvue_type_script_lang_js = ({
|
|
1625
|
+
components: { ElScrollbar: scrollbar["default"] },
|
|
1626
|
+
mixins: [vue_popper_default.a, emitter_default.a],
|
|
1627
|
+
|
|
1628
|
+
componentName: 'ElAutocompleteSuggestions',
|
|
1629
|
+
|
|
1630
|
+
data: function data() {
|
|
1631
|
+
return {
|
|
1632
|
+
parent: this.$parent,
|
|
1633
|
+
dropdownWidth: ''
|
|
1634
|
+
};
|
|
1635
|
+
},
|
|
1636
|
+
|
|
1637
|
+
|
|
1638
|
+
props: {
|
|
1639
|
+
options: {
|
|
1640
|
+
default: function _default() {
|
|
1641
|
+
return {
|
|
1642
|
+
gpuAcceleration: false
|
|
1643
|
+
};
|
|
1644
|
+
}
|
|
1645
|
+
},
|
|
1646
|
+
id: String
|
|
1647
|
+
},
|
|
1648
|
+
|
|
1649
|
+
methods: {
|
|
1650
|
+
select: function select(item) {
|
|
1651
|
+
this.dispatch('ElAutocomplete', 'item-click', item);
|
|
1652
|
+
}
|
|
1653
|
+
},
|
|
1654
|
+
|
|
1655
|
+
updated: function updated() {
|
|
1656
|
+
var _this = this;
|
|
1657
|
+
|
|
1658
|
+
this.$nextTick(function (_) {
|
|
1659
|
+
_this.popperJS && _this.updatePopper();
|
|
1660
|
+
});
|
|
1661
|
+
},
|
|
1662
|
+
mounted: function mounted() {
|
|
1663
|
+
this.$parent.popperElm = this.popperElm = this.$el;
|
|
1664
|
+
this.referenceElm = this.$parent.$refs.input.$refs.input || this.$parent.$refs.input.$refs.textarea;
|
|
1665
|
+
this.referenceList = this.$el.querySelector('.el-autocomplete-suggestion__list');
|
|
1666
|
+
this.referenceList.setAttribute('role', 'listbox');
|
|
1667
|
+
this.referenceList.setAttribute('id', this.id);
|
|
1668
|
+
},
|
|
1669
|
+
created: function created() {
|
|
1670
|
+
var _this2 = this;
|
|
1671
|
+
|
|
1672
|
+
this.$on('visible', function (val, inputWidth) {
|
|
1673
|
+
_this2.dropdownWidth = inputWidth + 'px';
|
|
1674
|
+
_this2.showPopper = val;
|
|
1675
|
+
});
|
|
1676
|
+
}
|
|
1677
|
+
});
|
|
1678
|
+
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=script&lang=js
|
|
1679
|
+
/* harmony default export */ var src_autocomplete_suggestionsvue_type_script_lang_js = (autocomplete_suggestionsvue_type_script_lang_js);
|
|
1680
|
+
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
|
|
1681
|
+
var componentNormalizer = __webpack_require__(0);
|
|
1682
|
+
|
|
1683
|
+
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue
|
|
1684
|
+
|
|
1685
|
+
|
|
1686
|
+
|
|
1687
|
+
|
|
1688
|
+
|
|
1689
|
+
/* normalize component */
|
|
1690
|
+
|
|
1691
|
+
var component = Object(componentNormalizer["a" /* default */])(
|
|
1692
|
+
src_autocomplete_suggestionsvue_type_script_lang_js,
|
|
1693
|
+
autocomplete_suggestionsvue_type_template_id_8de9f0a6_render,
|
|
1694
|
+
autocomplete_suggestionsvue_type_template_id_8de9f0a6_staticRenderFns,
|
|
1695
|
+
false,
|
|
1696
|
+
null,
|
|
1697
|
+
null,
|
|
1698
|
+
null
|
|
1699
|
+
|
|
1700
|
+
)
|
|
1701
|
+
|
|
1702
|
+
/* harmony default export */ var autocomplete_suggestions = (component.exports);
|
|
1703
|
+
// EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"
|
|
1704
|
+
var migrating_ = __webpack_require__(7);
|
|
1705
|
+
var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);
|
|
1706
|
+
|
|
1707
|
+
// EXTERNAL MODULE: external "element-ui/lib/utils/util"
|
|
1708
|
+
var util_ = __webpack_require__(3);
|
|
1709
|
+
|
|
1710
|
+
// EXTERNAL MODULE: external "element-ui/lib/mixins/focus"
|
|
1711
|
+
var focus_ = __webpack_require__(23);
|
|
1712
|
+
var focus_default = /*#__PURE__*/__webpack_require__.n(focus_);
|
|
1713
|
+
|
|
1714
|
+
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete.vue?vue&type=script&lang=js
|
|
1715
|
+
//
|
|
1716
|
+
//
|
|
1717
|
+
//
|
|
1718
|
+
//
|
|
1719
|
+
//
|
|
1720
|
+
//
|
|
1721
|
+
//
|
|
1722
|
+
//
|
|
1723
|
+
//
|
|
1724
|
+
//
|
|
1725
|
+
//
|
|
1726
|
+
//
|
|
1727
|
+
//
|
|
1728
|
+
//
|
|
1729
|
+
//
|
|
1730
|
+
//
|
|
1731
|
+
//
|
|
1732
|
+
//
|
|
1733
|
+
//
|
|
1734
|
+
//
|
|
1735
|
+
//
|
|
1736
|
+
//
|
|
1737
|
+
//
|
|
1738
|
+
//
|
|
1739
|
+
//
|
|
1740
|
+
//
|
|
1741
|
+
//
|
|
1742
|
+
//
|
|
1743
|
+
//
|
|
1744
|
+
//
|
|
1745
|
+
//
|
|
1746
|
+
//
|
|
1747
|
+
//
|
|
1748
|
+
//
|
|
1749
|
+
//
|
|
1750
|
+
//
|
|
1751
|
+
//
|
|
1752
|
+
//
|
|
1753
|
+
//
|
|
1754
|
+
//
|
|
1755
|
+
//
|
|
1756
|
+
//
|
|
1757
|
+
//
|
|
1758
|
+
//
|
|
1759
|
+
//
|
|
1760
|
+
//
|
|
1761
|
+
//
|
|
1762
|
+
//
|
|
1763
|
+
//
|
|
1764
|
+
//
|
|
1765
|
+
//
|
|
1766
|
+
//
|
|
1767
|
+
//
|
|
1768
|
+
//
|
|
1769
|
+
//
|
|
1770
|
+
//
|
|
1771
|
+
//
|
|
1772
|
+
//
|
|
1773
|
+
//
|
|
1774
|
+
|
|
1775
|
+
|
|
1776
|
+
|
|
1777
|
+
|
|
1778
|
+
|
|
1779
|
+
|
|
1780
|
+
|
|
1781
|
+
|
|
1782
|
+
|
|
1783
|
+
|
|
1784
|
+
/* harmony default export */ var autocompletevue_type_script_lang_js = ({
|
|
1785
|
+
name: 'ElAutocomplete',
|
|
1786
|
+
|
|
1787
|
+
mixins: [emitter_default.a, focus_default()('input'), migrating_default.a],
|
|
1788
|
+
|
|
1789
|
+
inheritAttrs: false,
|
|
1790
|
+
|
|
1791
|
+
componentName: 'ElAutocomplete',
|
|
1792
|
+
|
|
1793
|
+
components: {
|
|
1794
|
+
ElInput: input["default"],
|
|
1795
|
+
ElAutocompleteSuggestions: autocomplete_suggestions
|
|
1796
|
+
},
|
|
1797
|
+
|
|
1798
|
+
directives: { Clickoutside: clickoutside_default.a },
|
|
1799
|
+
|
|
1800
|
+
props: {
|
|
1801
|
+
valueKey: {
|
|
1802
|
+
type: String,
|
|
1803
|
+
default: 'value'
|
|
1804
|
+
},
|
|
1805
|
+
popperClass: String,
|
|
1806
|
+
popperOptions: Object,
|
|
1807
|
+
placeholder: String,
|
|
1808
|
+
clearable: {
|
|
1809
|
+
type: Boolean,
|
|
1810
|
+
default: false
|
|
1811
|
+
},
|
|
1812
|
+
disabled: Boolean,
|
|
1813
|
+
name: String,
|
|
1814
|
+
size: String,
|
|
1815
|
+
value: String,
|
|
1816
|
+
maxlength: Number,
|
|
1817
|
+
minlength: Number,
|
|
1818
|
+
autofocus: Boolean,
|
|
1819
|
+
fetchSuggestions: Function,
|
|
1820
|
+
triggerOnFocus: {
|
|
1821
|
+
type: Boolean,
|
|
1822
|
+
default: true
|
|
1823
|
+
},
|
|
1824
|
+
customItem: String,
|
|
1825
|
+
selectWhenUnmatched: {
|
|
1826
|
+
type: Boolean,
|
|
1827
|
+
default: false
|
|
1828
|
+
},
|
|
1829
|
+
prefixIcon: String,
|
|
1830
|
+
suffixIcon: String,
|
|
1831
|
+
label: String,
|
|
1832
|
+
debounce: {
|
|
1833
|
+
type: Number,
|
|
1834
|
+
default: 300
|
|
1835
|
+
},
|
|
1836
|
+
placement: {
|
|
1837
|
+
type: String,
|
|
1838
|
+
default: 'bottom-start'
|
|
1839
|
+
},
|
|
1840
|
+
hideLoading: Boolean,
|
|
1841
|
+
popperAppendToBody: {
|
|
1842
|
+
type: Boolean,
|
|
1843
|
+
default: true
|
|
1844
|
+
},
|
|
1845
|
+
highlightFirstItem: {
|
|
1846
|
+
type: Boolean,
|
|
1847
|
+
default: false
|
|
1848
|
+
}
|
|
1849
|
+
},
|
|
1850
|
+
data: function data() {
|
|
1851
|
+
return {
|
|
1852
|
+
activated: false,
|
|
1853
|
+
suggestions: [],
|
|
1854
|
+
loading: false,
|
|
1855
|
+
highlightedIndex: -1,
|
|
1856
|
+
suggestionDisabled: false
|
|
1857
|
+
};
|
|
1858
|
+
},
|
|
1859
|
+
|
|
1860
|
+
computed: {
|
|
1861
|
+
suggestionVisible: function suggestionVisible() {
|
|
1862
|
+
var suggestions = this.suggestions;
|
|
1863
|
+
var isValidData = Array.isArray(suggestions) && suggestions.length > 0;
|
|
1864
|
+
return (isValidData || this.loading) && this.activated;
|
|
1865
|
+
},
|
|
1866
|
+
id: function id() {
|
|
1867
|
+
return 'el-autocomplete-' + Object(util_["generateId"])();
|
|
1868
|
+
}
|
|
1869
|
+
},
|
|
1870
|
+
watch: {
|
|
1871
|
+
suggestionVisible: function suggestionVisible(val) {
|
|
1872
|
+
var $input = this.getInput();
|
|
1873
|
+
if ($input) {
|
|
1874
|
+
this.broadcast('ElAutocompleteSuggestions', 'visible', [val, $input.offsetWidth]);
|
|
1875
|
+
}
|
|
1876
|
+
}
|
|
1877
|
+
},
|
|
1878
|
+
methods: {
|
|
1879
|
+
getMigratingConfig: function getMigratingConfig() {
|
|
1880
|
+
return {
|
|
1881
|
+
props: {
|
|
1882
|
+
'custom-item': 'custom-item is removed, use scoped slot instead.',
|
|
1883
|
+
'props': 'props is removed, use value-key instead.'
|
|
1884
|
+
}
|
|
1885
|
+
};
|
|
1886
|
+
},
|
|
1887
|
+
getData: function getData(queryString) {
|
|
1888
|
+
var _this = this;
|
|
1889
|
+
|
|
1890
|
+
if (this.suggestionDisabled) {
|
|
1891
|
+
return;
|
|
1892
|
+
}
|
|
1893
|
+
this.loading = true;
|
|
1894
|
+
this.fetchSuggestions(queryString, function (suggestions) {
|
|
1895
|
+
_this.loading = false;
|
|
1896
|
+
if (_this.suggestionDisabled) {
|
|
1897
|
+
return;
|
|
1898
|
+
}
|
|
1899
|
+
if (Array.isArray(suggestions)) {
|
|
1900
|
+
_this.suggestions = suggestions;
|
|
1901
|
+
_this.highlightedIndex = _this.highlightFirstItem ? 0 : -1;
|
|
1902
|
+
} else {
|
|
1903
|
+
console.error('[Element Error][Autocomplete]autocomplete suggestions must be an array');
|
|
1904
|
+
}
|
|
1905
|
+
});
|
|
1906
|
+
},
|
|
1907
|
+
handleInput: function handleInput(value) {
|
|
1908
|
+
this.$emit('input', value);
|
|
1909
|
+
this.suggestionDisabled = false;
|
|
1910
|
+
if (!this.triggerOnFocus && !value) {
|
|
1911
|
+
this.suggestionDisabled = true;
|
|
1912
|
+
this.suggestions = [];
|
|
1913
|
+
return;
|
|
1914
|
+
}
|
|
1915
|
+
this.debouncedGetData(value);
|
|
1916
|
+
},
|
|
1917
|
+
handleChange: function handleChange(value) {
|
|
1918
|
+
this.$emit('change', value);
|
|
1919
|
+
},
|
|
1920
|
+
handleFocus: function handleFocus(event) {
|
|
1921
|
+
this.activated = true;
|
|
1922
|
+
this.$emit('focus', event);
|
|
1923
|
+
if (this.triggerOnFocus) {
|
|
1924
|
+
this.debouncedGetData(this.value);
|
|
1925
|
+
}
|
|
1926
|
+
},
|
|
1927
|
+
handleBlur: function handleBlur(event) {
|
|
1928
|
+
this.$emit('blur', event);
|
|
1929
|
+
},
|
|
1930
|
+
handleClear: function handleClear() {
|
|
1931
|
+
this.activated = false;
|
|
1932
|
+
this.$emit('clear');
|
|
1933
|
+
},
|
|
1934
|
+
close: function close(e) {
|
|
1935
|
+
this.activated = false;
|
|
1936
|
+
},
|
|
1937
|
+
handleKeyEnter: function handleKeyEnter(e) {
|
|
1938
|
+
var _this2 = this;
|
|
1939
|
+
|
|
1940
|
+
if (this.suggestionVisible && this.highlightedIndex >= 0 && this.highlightedIndex < this.suggestions.length) {
|
|
1941
|
+
e.preventDefault();
|
|
1942
|
+
this.select(this.suggestions[this.highlightedIndex]);
|
|
1943
|
+
} else if (this.selectWhenUnmatched) {
|
|
1944
|
+
this.$emit('select', { value: this.value });
|
|
1945
|
+
this.$nextTick(function (_) {
|
|
1946
|
+
_this2.suggestions = [];
|
|
1947
|
+
_this2.highlightedIndex = -1;
|
|
1948
|
+
});
|
|
1949
|
+
}
|
|
1950
|
+
},
|
|
1951
|
+
select: function select(item) {
|
|
1952
|
+
var _this3 = this;
|
|
1953
|
+
|
|
1954
|
+
this.$emit('input', item[this.valueKey]);
|
|
1955
|
+
this.$emit('select', item);
|
|
1956
|
+
this.$nextTick(function (_) {
|
|
1957
|
+
_this3.suggestions = [];
|
|
1958
|
+
_this3.highlightedIndex = -1;
|
|
1959
|
+
});
|
|
1960
|
+
},
|
|
1961
|
+
highlight: function highlight(index) {
|
|
1962
|
+
if (!this.suggestionVisible || this.loading) {
|
|
1963
|
+
return;
|
|
1964
|
+
}
|
|
1965
|
+
if (index < 0) {
|
|
1966
|
+
this.highlightedIndex = -1;
|
|
1967
|
+
return;
|
|
1968
|
+
}
|
|
1969
|
+
if (index >= this.suggestions.length) {
|
|
1970
|
+
index = this.suggestions.length - 1;
|
|
1971
|
+
}
|
|
1972
|
+
var suggestion = this.$refs.suggestions.$el.querySelector('.el-autocomplete-suggestion__wrap');
|
|
1973
|
+
var suggestionList = suggestion.querySelectorAll('.el-autocomplete-suggestion__list li');
|
|
1974
|
+
|
|
1975
|
+
var highlightItem = suggestionList[index];
|
|
1976
|
+
var scrollTop = suggestion.scrollTop;
|
|
1977
|
+
var offsetTop = highlightItem.offsetTop;
|
|
1978
|
+
|
|
1979
|
+
if (offsetTop + highlightItem.scrollHeight > scrollTop + suggestion.clientHeight) {
|
|
1980
|
+
suggestion.scrollTop += highlightItem.scrollHeight;
|
|
1981
|
+
}
|
|
1982
|
+
if (offsetTop < scrollTop) {
|
|
1983
|
+
suggestion.scrollTop -= highlightItem.scrollHeight;
|
|
1984
|
+
}
|
|
1985
|
+
this.highlightedIndex = index;
|
|
1986
|
+
var $input = this.getInput();
|
|
1987
|
+
$input.setAttribute('aria-activedescendant', this.id + '-item-' + this.highlightedIndex);
|
|
1988
|
+
},
|
|
1989
|
+
getInput: function getInput() {
|
|
1990
|
+
return this.$refs.input.getInput();
|
|
1991
|
+
}
|
|
1992
|
+
},
|
|
1993
|
+
mounted: function mounted() {
|
|
1994
|
+
var _this4 = this;
|
|
1995
|
+
|
|
1996
|
+
this.debouncedGetData = debounce_default()(this.debounce, this.getData);
|
|
1997
|
+
this.$on('item-click', function (item) {
|
|
1998
|
+
_this4.select(item);
|
|
1999
|
+
});
|
|
2000
|
+
var $input = this.getInput();
|
|
2001
|
+
$input.setAttribute('role', 'textbox');
|
|
2002
|
+
$input.setAttribute('aria-autocomplete', 'list');
|
|
2003
|
+
$input.setAttribute('aria-controls', 'id');
|
|
2004
|
+
$input.setAttribute('aria-activedescendant', this.id + '-item-' + this.highlightedIndex);
|
|
2005
|
+
},
|
|
2006
|
+
beforeDestroy: function beforeDestroy() {
|
|
2007
|
+
this.$refs.suggestions.$destroy();
|
|
2008
|
+
}
|
|
2009
|
+
});
|
|
2010
|
+
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue?vue&type=script&lang=js
|
|
2011
|
+
/* harmony default export */ var src_autocompletevue_type_script_lang_js = (autocompletevue_type_script_lang_js);
|
|
2012
|
+
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue
|
|
2013
|
+
|
|
2014
|
+
|
|
2015
|
+
|
|
2016
|
+
|
|
2017
|
+
|
|
2018
|
+
/* normalize component */
|
|
2019
|
+
|
|
2020
|
+
var autocomplete_component = Object(componentNormalizer["a" /* default */])(
|
|
2021
|
+
src_autocompletevue_type_script_lang_js,
|
|
2022
|
+
render,
|
|
2023
|
+
staticRenderFns,
|
|
2024
|
+
false,
|
|
2025
|
+
null,
|
|
2026
|
+
null,
|
|
2027
|
+
null
|
|
2028
|
+
|
|
2029
|
+
)
|
|
2030
|
+
|
|
2031
|
+
/* harmony default export */ var autocomplete = (autocomplete_component.exports);
|
|
2032
|
+
// CONCATENATED MODULE: ./packages/autocomplete/index.js
|
|
2033
|
+
|
|
2034
|
+
|
|
2035
|
+
/* istanbul ignore next */
|
|
2036
|
+
autocomplete.install = function (Vue) {
|
|
2037
|
+
Vue.component(autocomplete.name, autocomplete);
|
|
2038
|
+
};
|
|
2039
|
+
|
|
2040
|
+
/* harmony default export */ var packages_autocomplete = __webpack_exports__["default"] = (autocomplete);
|
|
2041
|
+
|
|
2042
|
+
/***/ }),
|
|
2043
|
+
|
|
2044
|
+
/***/ 7:
|
|
2045
|
+
/***/ (function(module, exports) {
|
|
2046
|
+
|
|
2047
|
+
module.exports = require("element-ui/lib/mixins/migrating");
|
|
2048
|
+
|
|
2049
|
+
/***/ })
|
|
2050
|
+
|
|
2051
|
+
/******/ });
|