chushihua

This commit is contained in:
li
2026-01-26 23:20:48 +08:00
commit 7b5aab0206
22521 changed files with 3300090 additions and 0 deletions
+953
View File
@@ -0,0 +1,953 @@
## Changelog
### 2.6.1
*2019-03-03*
#### Bug fixes
- **Don't specify node version** (by @iamkun in #14546)
- Fix doc directory in `deloy-faas.sh` (by @ziyoung in #14553)
- Fix date style issue in changelog for 2.6.0 (by @island205 in #14547)
- Fix doc typo (by @wack6 in #14552)
### 2.6.0
*2019-03-01*
#### New features
- Timeline
- Add timeline component (by @jikkai in #14248)
- DropdownItem
- Add icon prop to `el-dropdown-item` (by @gabrielboliveira in #14088)
- Input
- Add show-password props (by @phshy0607 in #13966)
- Select
- Add slot `empty` (by @elfman in #13785)
- Autocomplete
- Add highlight-first-item prop (by @YamenSharaf in #14269)
- I18n
- Created Armenian locale (by @hamletbarsamyan in #14214)
- Docs
- French translation (by @smalesys in #12153, #14418, #14434)
#### Optimization
- Alert
- Update alert description default slot class (by @iamkun in #14488)
- Input
- Update input password (by @iamkun in #14480)
- InputNumber
- Remove unnecessary parseFloat (by @JuniorTour in #14172)
- Menu
- Add support for `el-menu-item` without index (by @georgyfarniev in #13298)
- Table
- Remove some html DOM operations (by @elfman in #13643)
- Upload
- Optimize code (by @elfman in #13973)
- Popup
- Optimize code (by @KAionro in #14413)
- Docs
- Add more detail about how to run play mode for contribution (by @island205 in #14355)
- Warn input as a controlled component. (by @wacky6 in #14463)
- Update Table doc (by @luguokong in #14329)
- Update input doc (by @iamkun in #14437)
- Update custom-theme docs (by @wangguohao in #14297)
- Make the icon style change when hover on it (by @tuxinghuan in #14295)
- Build
- Minimizing css and js for Element doc site (by @iamkun in #14430)
- Speeding up webpack (by @hetech in #14484)
- Use cli to select release version (by @hetech in #14354)
- Install stale for issue handling (by @island205 in #14392)
#### Bug fixes
- Menu
- Fix subMenu focus bug when switch browser tab (by @liupl in #13976)
- MessageBox
- Fix type definition (by @NateScarlet in #14278)
- ScrollBar
- Prevent right button click on thumb (by @xifeiwu in #14196)
- Switch
- Trigger form validation if value changes (by @hetech in #14426)
- Table
- Make toggleAllSelection method an instance method (by @letanure in #14075)
- Tabs & Dropdown
- Fix style (by @hetech in #14452)
- Tree
- Empty-text tips are different from tables (by @ColinCll in #14331)
- Docs
- Fix DatetimePicker format doc error (by @iamkun in #14290)
- Spelling issue in datepicker documentation (by @helmut in #14481)
- Fix pagination doc style (by @liuchuzhang in #14451)
### 2.5.4
*2019-02-01*
#### Bug fixes
- Build: Fix babel config issue which lead to collapse transition broken (by @island205 in #14282)
### 2.5.3
*2019-01-31*
#### Optimization
- Optimize code of Message (by @vok123 in #14029)
- Retire gh-pages (by @ziyoung in #14266)
- Add IssueHunt link (by @island205 in #14261)
#### Bug fixes
- Fix UMD module error on server side (by @island205 in #14242)
- Fix active TabBar style (by @iamkun in #14240)
- Fix Table demo code error (by @xunmeng in #14253)
### 2.5.2
*2019-01-27*
#### Optimization
- Docs:
- Update ChangeLog ES 2.5.1 (by @Gonzalo2310 in #14231)
#### Bug fixes
- Build:
- Delete unremoved comments in umd module `lib/index.js` (by @island205 in #14233)
- Fix export error fired in commonjs module used in nuxt.js (by @island205 in #14232)
- Fix 2.5.1 build issues (by @iamkun in #14228)
### 2.5.1
*2019-01-26*
#### Optimization
- DatePicker: highlight current month and year (by @Debiancc in #14211)
- Update 2.5.0 changelog (by @wacky6 in #14217)
#### Bug fixes
- Fix export issue generate by webpack upgrading (by @island205 in #14220)
- Keep 2.4.11 docs && new sub folder for 2.5+ (by @iamkun in #14222)
### 2.5.0
*2019-01-25*
#### New features
- DatePicker
- Add `validate-event` attribute (by @ziyoung in #13531)
- DateTimePicker
- `pickerOptions` support `selectableRange` option (by @eeeeeeeason)
- Tag
- Add `click` event (by @licdream in #14106)
- I18n
- support Kyrgyz language (by @zzjframework in #14174)
#### Optimization
- Upgrade to webpack@4 (by @jikkai in #14173)
- Input
- Simplify implementation, follow one-way data flow. Fix several related bugs. (by @wacky6 in #13471)
- Update Axure fileadd new components (by @ziyoung in #13773)
#### Bug fixes
- Autocomplete
- Fix dropdown's last line beging clipped (by @ziyoung in #13597)
- Fix missing popper arrow (by @liuchuzhang in #13762)
- Carousel
- Cleanup timer when component is destroyed (by @elfman in #13820)
- Cascader
- Remove deprecated property of computed props (by @iamkun in #13737)
- Fix CascaderOption's type definition in TypeScript (by @NateScarlet in #13613)
- Fix icon covering the text (by @ziyoung in #13596)
- Checkbox
- Refine style (by @PanJiaChen)
- DatePicker
- Add missing v-for `key` in TimeSpinner (by @Ende93 in #13547)
- Fix week highlight on year boundary (by @suyi91 in #13883)
- Input
- Fix textarea DOM node reference (by @laomu1988 @island205 in #13803)
- Pagination
- Input value won't be less than 1 (by @elfman in #13727)
- Popover
- Fix popover issues with hover trigger (by @goldengecko in #13104)
- Fix popper instance memory leak (by @qpxtWhite in #13988)
- Radio
- Refine style (by @ohhoney1)
- Table
- Enhanced table sorting when clicking on the sorting arrow (by @ohhoney1 in #12890)
- Fix empty text vertical alignment issue on IE10+ (by @imzjy in #13638)
- Fix index type documentation (by @ilovefafa in #13628)
- Fix `show-summary` display issue when multilevel header has fixed attr (by @luckyCao in #13914)
- Tabs
- Fix auto scroll bug (by @iamkun in #13696)
- Get the correct tab through tab name (by @iamkun in #13705)
- Use paneName instead of name to determine pane style (by @iamkun in #13733)
- Tree
- Fix `showCheckbox` prop on `Tree` can not affect their children `tree-node` (by @KidneyFlower)
- Update doc and definition file (by @ziyoung in #13540)
- Upload
- Add `url` prop to upload file when `list-type` changed (by @elfman in #13771)
- Slider
- Fix source code indentation (by @wacky6 in #13955)
- I18n
- Add missing Catalan translations (by @jaumesala)
- Add missing ru translation (by @justlp in #13658)
- Fix Finnish translations (by @jenkrisu in #14137)
- Doc
- Update Spanish doc 2.4.11 (by @Gonzalo2310 in #13522)
- Others
- Remove unnecessary script (by @ziyoung)
- Fix error anchor link (by @iamkun in #13753)
- Fix inconsistent capitalization in documentation (by @wonderjar)
- Add DingDing chat group qr code to readme (by @iamkun in #13957)
- Add yarn logs to .gitignore (by @mimimi in #13922)
- Remove sponsor duotai (by @island205 in #14156)
- Update readme qr code src (by @iamkun in #13960)
- Update CDN link, fix typo (by @ziyoung)
### 2.4.11
*2018-11-21*
- Revert pr #13296. Fixed clicking on Menu external causing Submenu collapsed, #13478
- Adjust small screen (xs) media query breakpoints, #13468 (by @alekoshen712)
### 2.4.10
*2018-11-16*
- Fixed multiple clicks on Select to display the drop-down list, #13268
- The clear icon for input is not displayed when Form is disabled, #13208
- Adjust the style of Select, Progress, Autocomplete, Tooltip, Collaspe, TimePicker, #13188 (by @porcelainHeart) #13210 #13266 #13257 #13290 #13347 (by @PanJiaChen)
- Carousel component added `loop` attribute, #13217
- When the data of Table changes, the highlighted line will remain, #13200
- Table header scoped slot can receive parameters, #13263
- Table's `clearFilter` method supports arguments, #13176
- Tooltip is no longer created when there is no content in the Table cell, #13152 (by @rongxingsun)
- The input box contents of the ColorPicker panel can be displayed correctly, #13278
- ColorPicker no longer triggers form validation when dragging, #13299
- InputNumber added `select `method, #13286 (by @st-sloth)
- Autocomplete added `clear` event, #12171(by arthurdenner) #13326
- You can close Menu by clicking on Menu outside, #13296
- Form's `validateField` method can receive arguments, #13319
- Cascader added `visible-change` event, #13415
- DatePicker added range-separator slot, #13272 (by @milworm)
- Tree adds `iconClass` and `currentNodeKey` properties, #13337 #13197 (by @isnifer)
- Progress's` status` added text #13198 (by @ali-master)
- Fixing tree's `defaultCheckedKeys` caused an error, #13349 (by @dive2Pro)
### 2.4.9
*2018-10-26*
- The parameter of Form's `clearValidate` supports string, #12990 (by @codinglobster)
- Added type attribute for Badge, #12991
- Users can use scoped-slot to customize table column header #13012 (by @ivanseidel)
- Fixed the input box of Select unable to type text under IE, #13034 (by @GaliMU)
- Select option does not wrap when space is enough, #12329 (by @akki-jat)
- When dropdown list of Select is expanded, the arrow icon will also display correctly, #12353 (by @firesh)
- Fixed that the size attribute of Select does not work, #13070
- Select multiple values can be cleared, #13049 (by @ZSkycat)
- Fixed the last TabNav unable be deleted, #13039
- Fixed that TabNav label is not displayed correctly, #13178
- Added title slot for Alert, #13082 (by @Kingwl)
- Fixed an issue where the tooltip content in Table was incorrect, #13159 (by @elfman)
- Optimize the animation of Upload when file is deleted, #12987
- Adjusted style of InputNumber when control button is not displayed, #13052
### 2.4.8
- Not displaying outline when Switch is focused, #12771
- Fixed Dropdown's style in ButtonGroup, #12819 (by @bluejfox)
- Added opened event for Dialog, #12828
- Fixed the incorrect display order of TabNav, #12846
- Fixed the problem that Tabs did not scroll to the selected tab, #12948
- Fixed the problem that the identifier does not display when the Tree node is dragged, #12854
- The validate event parameter of Form contains the validation message, #12860 (by @YamenSharaf)
- Fixed DatePicker not to verify the validity of user input time, #12898
- Fixed the problem that `render-header` attribute of Table header doesn't work, #12914
### 2.4.7
*2018-09-14*
- Fixed DatePicker not triggering form validation, #12328 #12348
- Fixed DatePicker throwing errors in multiple mode, #12347
- Fixed incorrect position of DatePicker spinner, #12415 (by @rang-ali)
- Fixed automatic filling of DatePicker input box, #12521 (by @abdallanayer)
- Fixed Input not highlighted in Cascader, #12341
- Fixed wrong order of Tabpane, #12346
- Fixed incorrect position of ColorPicker cursor, #12376 (by @cnwhy)
- Fixed the style of Submenu, #2457
- Fixed not highlighted after Submenu is selected, #12479
- Fixed incorrect values selected by Cascader, #12508 (by @huangjinqiang)
- Fixed incorrect value of Pagination input box, #12525
- Fixed order that Pagination triggers events, #12530
- Fixed Table Filter not displayed, #12539
- Fixed Tree unable to delete nodes, #12684
- Fixed height of Select Input changing in single mode, #12719
- Fixed style of FormItem label in nested Form, #12748
- Added `autocomplete` attribute for Input, deprecated `auto-complete`, #12514 (by @axetroy)
- Added slots-scope for Form to display validation information, #12715 (by @YamenSharaf)
### 2.4.6
*2018-08-09*
- Fixed Table not showing filter icon when `filters` is assigned empty array, #12165
- Fixed Menu not saving active state when `collapse` is changed, #12178 (by @elfman)
- Fixed Cascader not escaping special characters for Regexp, #12248
- Fixed disabled RadioButton showing box-shadow when clicked, #12262
- Fixed arrow key not effect when default value is `undefined`,#12322
- Fixed query function of Select not debounced in multi mode, #12181
- Fixed query keyword of Select disappearing in multi mode, #12304
- Fixed incorrect width of Dialog when it is displayed in full screen, #12203
- Fixed incorrect display of Main on IE, #12237
- Fixed Input triggering two form validations, #12260
- Fixed adding new Tree node causing nodes to disappear, #12256
- Fixed Tree node not deleted after dragging, #12279
- Fixed Popover not visible when InputNumber focuses, #12284
- Added `popper-append-to-body` attribute for Autocomplete, #12241
- Added `sync` modifier support for Pagination's `page-size` attribute, #12281
### 2.4.5
*2018-07-26*
- Fixed Table setting `class-name` does not work for `expand` column, #12006
- Added `toggleAllSelection` method for Table, #12047
- Fixed wrong position of suffix slot when Input contains Select, #12108
- Fixed `line-height` of Option unable to set, #12120
- Fixed TimeSelect with default value of `null` could not be assigned after executing `resetField`, #12010
- Fixed keydown event which is not arrow key does not work in Tree, #12008
- Fixed parent node checked in lazy mode, #12106
- Added `includeHalfChecked` parameter for getCheckedNodes of Tree, #12014
### 2.4.4
*2018-07-13*
- Fixed triggering Select validation after Form resetting, #11837
- Fixed wrong position of Input `suffix` slot when `suffix` slot with `append` slot, #11951
- Fixed clearable Input still displaying the clear icon when readonly, #11967
- Fixed Tree node checked when it's disabled, #11847
- Fixed Tree's `default-checked-keys` not working, #11971
- Fixed `empty-text` not visible when Tree node filtered, #11971
- Fixed the position of oversized `empty-text` in Table, #11965
- Fixed Table row not be unhighlighted when `current-row-key` is assigned to `null`, #11866
- Fixed showing filter dropdown when `filters` is an empty array, #11864
- Fixed Radio's label does not stop event propagation, #11912
### 2.4.3
*2018-07-03*
- Fixed `allow-drop` not working properly when Tree nodes have a custom height, #11797
- Now you can pass a parameter to the `clearValidate` method of Form, specifying which FormItems' validation results need to be cleared, #11821
- Added `distinguishCancelAndClose` attribute for MessageBox, #11831
### 2.4.2
*2018-06-26*
- Now `class-name` and `label-class-name` of Table are reactive, #11626
- Fixed Table still highlighting clicked row when `highlight-current-row` is `false`, #11646
- Fixed a style bug of ButtonGroup when it has only one `round` or `circle` Button, #11605
- Fixed style of page size Select of Pagination, #11622
- Fixed Menu's `open` method error when `collapse` is dynamically changed, #11646
- Added `activeName` and `oldActiveName` parameters to the before-leave hook of Tabs, #11713
- Fixed Cascader focused after outside clicked, #11588
- Fixed Cascader not closing when option is clicked when `change-on-select` is true, #11623
- Now updating Select's value programmatically will trigger form validation, #11672
### 2.4.1
*2018-06-08*
- Removed Autocomplete's duplicate type declaration, #11388
- Fixed Select's dropdown arrow style in FireFox when nested in Form, #11427
- Fixed clear icon of Select still showing when the initial value is `null`, #11460
- Fixed disabled radio showing box-shadow when clicked, #11462
- Added `iconClass` attribute for MessageBox, #11499
- Added `stretch` attribute for Tabs, #11476
- Fixed rendering order issue of TabPane when Tabs is `lazy`, #11461
- Fixed Table not retaining current highlight row when expanded, #11464
- Fixed focusing state when `before-leave` returns a resolved promise, #11386
- Fixed disabled Popover still creating poppers, #11426
- Fixed Tree's endless loop when a new node is added in lazy mode, #11430 (by @wangjingf)
- Added `closed` event for Dialog, #11490
### 2.4.0 Fullerene
*2018-05-28*
#### New features
- General
- Dev tool and bundler is switched to native webpack, #11216
- Now you can globally set the initial z-index of popups, #11257
- Autocomplete
- Added `hide-loading` attribute, #11260
- Button
- Now you can use the `size` attribute on circle buttons to control their sizes, #11275
- InputNumber
- Added `precision` attribute, #11281
- Tabs
- Added `before-leave` attribute, #11259
- Added `lazy` attribute, #11167(by @Kingwl)
- Table
- Added `sort` method to manually sort the table, #11311
#### Bug fixes
- Input
- Fixed an issue that causes a re-render when using the Chinese IME to quickly input text, #11235 (by @STLighter)
- Popover
- Fixed the console error when the triggering element is Radio or Checkbox, #11265
- Breadcrumb
- Fixed the `to` attribute not supporting dynamic update, #11286
- Upload
- Fixed the console error when a File is resolved in the returned Promise of the `beforeUpload` method, #11297 (by @qusiba)
- Tooltip
- Fixed arrow not positioned correctly when content is empty, #11335
- Autocomplete
- Fixed incorrect input suggestions after deleting keyword quickly, #11323
- ColorPicker
- Fixed `active-change` event incorrectly triggering when picker dropdown is closed, #11304
- Table
- Fixed style error of oversized filter panel, #11314
- Fixed currently selected row not retained when the table is sorted, #11348
- Checkbox
- Fixed single checkbox not supporting validation, #11271
- Radio
- Fixed disabled Radio still being selected when pressing space key, #11303
- MessageBox
- Fixed the `el-popup-parent--hidden` class not removed when opening MessageBox in succession, #11371
### 2.3.9
*2018-05-18*
- Fixed when the source data does not have the field specified by a TableColumn's `prop` attribute, an error would occur when the mouse moves into that column's cells, #11137
- The `lockScroll` attribute of pop up components no longer adds an inline style to the parent element, but instead adds a class name, #11114
- Fixed the icon of Progress not displaying when its `status` is exception, #11172
- Fixed options' `disabled` attribute not working in filterable Cascader's filter result list, #11185
- Fixed an issue where Table's expanded row cannot be collapsed if the data source is updated after its expansion, #11186
- `setCurrentKey` of Tree now accepts `null` as its param to cancel the currently highlighted node, #11205
### 2.3.8
*2018-05-11*
- Fixed DatePicker panel jumping to the current month after picking a date in a non-current month when `type` is dates, #10973
- Fixed clearable Input still displaying the clear icon when readonly, #10912
- Fixed closing the DatePicker panel without changing the value incorrectly triggering the `change` event, #11017
- Fixed keyboard navigation not working properly when Select has grouped options, #11058
- Added `prefix` named slot for Select, #11063
- Added 'clearValidate` method for FormItem, #11076
- Added `checkOnClickNode` attribute for Tree, #11111
### 2.3.7
*2018-04-29*
- Fixed Table not updating its header widths when the scroll bar disappears due to filtering, #10834
- Fixed clearable Input still showing the clear icon when its initial value is `null`, #10912
- Fixed incorrect trigger of the `active-change` event after changing ColorPicker's binding value programatically, #10903 (by @zhangbobell)
- Fixed filterable Select causing an infinite loop when navigating options using keyboard if all options are disabled, #10945
### 2.3.6
*2018-04-21*
- Fixed wrong behavior of Tree's `allow-drop` callback when `type` parameter is used, #10821
- Now you can properly enter keywords in filterable single Select in IE11, #10822
- Fixed single Select incorrectly triggering `blur` event after clicking an option, #10822
### 2.3.5
*2018-04-20*
- Fixed incorrect highlights in DatePicker panel when `type` is week, #10712
- Fixed InputNumber being empty when its initial value is 0, #10714
- Added `automatic-dropdown` attribute for Select, #10042 (by @Seebiscuit)
- Fixed disabled Rate's value still being updated by navigation keys, #10726 (by @Richard-Choooou)
- Now DatePicker's `type` attribute can be `'dates'`, where you can pick multiple dates in one picker, #10650 (by @Mini256)
- Added `prev-click` and `next-click` events for Pagination, #10755
- Added `pager-count` attribute for Pagination, #10493 (by @chongjohn716)
- Added `type` as the 3rd param of Tree's `allow-drop` attribute callback, #10792
- Now we use ResizeObserver to detect DOM element resizing, #10779
### 2.3.4
*2018-04-12*
- Deleted duplicate `showTimeout` attribute in SubMenu's TypeScript declaration, #10566 (by @kimond)
- Now you can customize Transfer's data item using scoped slot, #10577
- Fixed clicking disabled prev and next button of Pagination still triggers `current-change` event, #10628
- Fixed Textarea displaying `undefined` in SSR when its value is not set, #10630
- Fixed disabled TabItem style when `type` is border-card, #10640
- Added `$index` as `formatter`'s fourth param of Table, #10645
- Fixed CheckboxButton not exported in TypeScript declaration, #10666
### 2.3.3
*2018-04-04*
- Added `shadow` attribute for Card, #10418 (by @YunYouJun)
- Fixed Badge being hidden when `value` is `0`, #10470
- Fixed some bugs of draggable Tree, #10474 #10494
- Added `placement` for Autocomplete, #10475
- Now `default-time` attribute also works in non-range DateTimePicker, #10321 (by @RickMacTurk)
- Removed the blue outline of TabItem after the browser blurs or is minimized, #10503
- Added `popper-append-to-body` attribute for SubMenu, #10515
- Removed visual feedback when hovering on non-link BreadcrumbItem, #10551
- Fixed InputNumber's `change` event to ensure the component's binding value is updated in the event handler, #10553
### 2.3.2
*2018-03-29*
- Fixed an Autocomplete regression, #10442
### 2.3.1
*2018-03-29*
- Fixed a regression that `type` of Input is not passed down to the native input element, #10415
- Added `blur` method for Select, #10416
### 2.3.0 Diamond
*2018-03-28*
#### New features
- Table
- Now `formatter` of TableColumn can be dynamically updated, #10184 (by @elfman)
- Added `select-on-indeterminate` attribute, #9924 (by @syn-zeta)
- Menu
- Added `collapse-transition` attribute, #8809 (by @limichange)
- Input
- Added `select` method, #10229
- Added `blur` method, #10356
- ColorPicker
- Added `predefine` attribute, #10170 (by @elfman)
- Tree
- Added `draggable`, `allow-drop` and `allow-drag` attributes, and `node-drag-start`, `node-drag-enter`, `node-drag-leave`, `node-drag-over`, `node-drag-end` and `node-drop` events, #9251 #10372 (by @elfman)
- Form
- `validate` method now has a second parameter, containing information of form items that failed the validation, #10279
- Added `validate` event, #10351
- Progress
- Added `color` attribute, #10352 (by @YunYouJun)
- Button
- Added `circle` attribute, #10359 (by @YunYouJun)
#### Bug fixes
- Form
- Fixed label of FormItem not align with mixed Input, #10189
- Menu
- Now collapsed Menu will only show the Tooltip when the `title` slot of MenuItem is set, #10193 (by @PanJiaChen)
- Pagination
- Fixed `current-change` event wrongly triggering without user interaction, #10247
- DatePicker
- Now the date and time value in the dropdown panel are correctly formatted based on the `format` attribute, #10174(by @remizovvv)
- Upload
- Fixed `accept` attribute not working when `drag` is true, #10278
### 2.2.2
*2018-03-14*
- Added `clear` event for Input, #9988 (by @blackmiaool)
- Now manual input of ColorPicker supports `hsl`, `hsv` and `rgb` modes, #9991
- Fixed DatePicker not triggering `change` event when its initial value is cleared, #9986
- Now icon class related attributes of Rate support dynamic updates, #10003
- Fixed Table with fixed columns not updating its height correctly if `max-height` is set, #10034
- Now DatePicker's range mode supports reverse selection (clicking the end date, then clicking the start date), #8156 (by @earlymeme)
- Added `disabled` attribute for Pagination, #10006
- Added `after-enter` and ` after-leave` events for Popover, #10047
- Fixed Select not triggering validation when user selects an option after executing `resetFields` of Form, #10105
- Fixed incorrect widths of fixed columns of Table in some cases, #10130
- Fixed MessageBox inheriting the `title` attribute of its previous instance when called without `title`, #10126 (by @Pochodaydayup)
- Added `input-size` attribute for Slider, #10154
- Added `left-check-change` and `right-check-change` events for Transfer, #10156
### 2.2.1
*2018-03-02*
- Fixed Aside, Header and Footer shrinking in some layout, #9812
- Fixed Table with a `height` attribute not rendering in SSR, #9876
- Fixed expandable Table not calculating its height when a row is expanded, #9848
- Fixed `change` event not trigger when manually typing date in DateTimePicker, #9913
- Fixed Select showing its options when the input box is right-clicked, #9894 (by @openks)
- Added `tooltip-class` attribute for Slider, #9957
- Now Select will stay focused after selection, #9857 (by @Seebiscuit)
- Added `target-order` attribute for Transfer, #9960
### 2.2.0 Graphite
*2018-02-12*
#### New features
- Menu
- Added `popper-class` and `disabled` attributes for SubMenu, #9604 #9771
- Horizontal Menu now supports multi-layered SubMenu, #9741
- Tree
- Added `node-contextmenu` event, #9678
- Now you can customize node template using scoped slot, #9686
- Added `getNode`, `remove`, `append`, `insertBefore`, `insertAfter`, `getCheckedKeys`, `getHalfCheckedNodes`, `getHalfCheckedKeys` methods and `check` event, #9718 #9730
- Transfer
- Added `clearQuery` method, #9753
- Select
- Added `popper-append-to-body` attribute, #9782
#### Bug fixes
- Table
- Fixed clicking expanding icon of an expandable row triggers `row-click` event, #9654
- Fixed layout not update when column width is changed by user dragging, #9668
- Fixed style issue when summary row co-exists with fixed columns, #9667
- Container
- Fixed container components not stretching in IE11, #9655
- Loading
- Fixed Loading not showing when the value of `v-loading` is changed to true in the `mounted` hook, #9722
- Switch
- Fixed two native click events are triggered when Switch is clicked, #9760
### 2.1.0 Charcoal
*2018-01-31*
#### New features
- Cascader
- Added `focus` and `blur` events, #9184 (by @viewweiwu)
- Table
- The `filter-method` now has a third param `column`, #9196 (by @liyanlong)
- DatePicker
- Added `prefix-icon` and `clear-icon` attributes, #9237 (by @AdamSGit)
- Added `default-time` attribute, #9094 (by @nighca)
- `value-format` now supports `timestamp`, #9319 (by @wacky6)
- InputNumber
- Now the binding value can be `undefined`, #9361
- Select
- Added `auto-complete` attribute, #9388
- Form
- Added `disabled` attribute, #9529
- Added `validateOnRuleChange` attribute, #8141
- Notificaition
- Added `closeAll` method, #9514
#### Bug fixes
- InputNumber
- Fixed value resetting when typing decimal point, #9116
- Dropdown
- Fixed dropdown menu incorrect positioning when the page only has a horizontal scrollbar in some browsers, #9138 (by @banzhuanmei)
- Table
- Fixed an error in calculating number of fixed columns after the column data changes, #9188(by @kolesoffac)
- Fixed the border of the last column of the grouped header not properly displayed, #9326
- Fixed incorrect positioning of table header in Safari, #9327
- Fixed expanded row collapsing when the table data changes, #9462
- Fixed unnecessary multiple renders in some conditions, #9426
- Fixed column width calculation error when `width` of TableColumn changes, #9426
- Loading
- Fixed Loading not hiding correctly in some conditions, #9313
- DatePicker
- Fixed `focus` method not working in range mode, #9437
- Fixed clicking the "now" button still selecting the current date even if it is disabled, #9470 (by @wacky6)
- Fixed date clamping when navigating, #9577 (by @wacky6)
- Steps
- Fixed style error in IE 11, #9454
#### Breaking changes
- Menu
- The popup menu in `collapse` mode now appends directly to `body`, so that it is visible when nested in Aside, #9263
- Table
- Now checking the checkboxes in multi-selection Table doesn't trigger `row-click` event, #9467
- Loading
- The `z-index` of non-fullscreen loading mask is changed to 2000. The `z-index` of fullscreen loading mask will update dynamically with the popup components, #9522
- Dropdown
- `show-timeout` and `hide-timeout` attributes now only works when trigger is `hover`, #9573
### 2.0.11
*2018-01-08*
- Fixed border color issue of Select when in `prepend` or `append` slot of Input, #9089
- Fixed `remove-tag` event's parameter of Select, #9090
- Added `show-timeout` and `hide-timeout` attributes for SubMenu, #8934 (by @HugoLew)
- Fixed missing Tooltip style of `show-overflow-tooltip` when Table is imported on demand, #9130
- Fixed Table column's sorting malfunctioning after `clearSort` is executed on that column, #9100 (by @zEmily)
- i18n config file for Czech is renamed from `cz` to `cs-CZ`, #9164
### 2.0.10
*2017-12-29*
- Fixed wrong max height calculation of Table when fixed column and summary row co-exist, #9026
- Fixed uncompiled color style of empty text in Table, #9028
- Now DatePicker only emits `change` event when value is truly changed, #9029 (by @remizovvv)
- Added `tabindex` attribute for Input, #9041 (by @dicklwm)
### 2.0.9🎄
*2017-12-24*
- Added `before-remove` hook function for Upload, #8788 (by @firesh)
- Fixed initial value of `error` not working for FormItem, #8840
- Now Loading directive supports custom class name by assigning `element-loading-custom-class` attribute, #8826 (by @earlymeme)
- Fixed CarouselItem becoming invisible when data is asynchronously updated, #8921
- Added `renderAfterExpand` attribute for Tree, #8972
### 2.0.8
*2017-12-12*
- Added Spanish documentation
- Fixed `show-timeout` of Dropdown not working when trigger is click, #8734 (by @presidenten)
- Fixed Form validation timing for rules whose trigger is blur, #8776
- Fixed blur event of ranged DatePicker, #8784
- `format` of TimePicker now supports AM/PM, #8620 (by @firesh)
### 2.0.7
*2017-11-29*
- Fixed disabled text button style, #8570
### 2.0.6
*2017-11-29*
- Fixed style bug of Table's sorting icons, #8405
- Fixed trigger mechanism for Popover when its `trigger` is manual, #8467
- Added `prefix-icon` and `suffix-icon` attributes for Autocomplete, #8446 (by @liyanlong)
- Added `separator` attribute for Cascader, #8501
- Added `clearable` attribute for Input, #8509 (by @lbogdan)
- Added `background` attribute for Pagination, #8553
### 2.0.5
*2017-11-17*
- Fixed Popover, Tree, Breadcrumb and Cascader regression in 2.0.4, #8188 #8217 #8283
- Fixed memory leak of clickoutside directive, #8168 #8225 (by @badpunman @STLighter)
- Fixed multiple Select height when its value is cleared, #8317 (by @luciy)
- Added `collapse-tags` attribute for multiple Select to replace tags with one line of text, #8190
- Fixed high CPU consumption caused by hidden Table, #8351
- Now you can use `doLayout` method of Table to update its layout, #8351
### 2.0.4
*2017-11-10*
- Improved accessibility for Cascader, Dropdown, Message, Notification, Popover, Tooltip and Tree
- Fixed Container resize when the width of viewport decreases, #8042
- Fixed Tree's `updateKeyChildren` incorrectly deleting child nodes, #8100
- Fixed bordered CheckboxButton's height when nested in a Form, #8100
- Fixed Menu's parsing error for custom colors, #8153 (by @zhouyixiang)
### 2.0.3
*2017-11-03*
- Fixed `editable` and `readonly` attributes for ranged DatePicker, #7922
- Fixed style error of nested Tabs, #7941
- Fixed style error of the last Step of vertical Steps, #7980
- Fixed trigger timing of `current-change` event for Pagination, #7995
- Fixed unregistered Tooltip in Menu, #7995
### 2.0.2
*2017-10-31*
- Now right-clicking the buttons of InputNumber won't change its value, #7817
- `validate` method of Form can now wait for asynchronous validations before executing its callback, #7774 (by @Allenice)
- Fixed range selection of DatePicker not working in Chromium 53-57 browsers, #7838
- Fixed missing preview and delete icons of Upload when its `list-type` is picture-card, #7857
- Added `sort-by` attribute for TableColumn, #7828 (by @wangfengming)
- Fixed DatePicker sometimes displaying wrong year number when selecting the first week in week mode, #7860 (by @hh23485)
- Fixed icon style error of vertical Steps, #7891
- The hot area for node arrows in Tree is expanded, #7891
### 2.0.1
*2017-10-28*
- Fixed style error of RadioButton and CheckboxButton, #7793
- Fixed TimePicker not respond to mouse scroll in some conditions, #7811
- Fixed incomplete styles of some components when imported on demand, #7811
### 2.0.0 Carbon
*2017-10-27*
#### New features
- General
- A new theme: `theme-chalk`
- Accessibility of the following components are improved: Alert, AutoComplete, Breadcrumb, Button, Checkbox, Collapse, Input, InputNumber, Menu, Progress, Radio, Rate, Slider, Switch, Upload
- Added TypeScript typings
- All existing icons are redesigned. Some new icons are added
- Added a series of breakpoint-based utility classes that hide elements when the viewport size meets certain conditions
- Added layout components: Container, Header, Aside, Main, Footer
- Now you can configure component sizes globally. When importing Element, you can add a global config object with a `size` prop to configure default sizes for all components.
- Button
- Added `round` attribute. It's used for round-cornered Buttons #6643
- TimeSelect
- Now can be navigated by `Up` and `Down`, and hitting `Enter` selects the time #6023
- TimePicker
- Now can be navigated by arrow keys, and hitting `Enter` selects the time #6050
- Added `start-placeholder` and `end-placeholder`. They're placeholders for the two input boxes in range mode #7169
- Added `arrow-control` attribute to spin the time with arrows #7438
- Tree
- Now child nodes don't render before the first expand #6257
- Added `check-descendants` attribute. It determines if child nodes are checked when checking their parent node in `lazy` mode #6235
- Tag
- Added `size` attribute #7203
- Datepicker
- Now `timeFormat` can format the TimePicker when type is set to `datetimerange` #6052
- Added `start-placeholder` and `end-placeholder`. They're placeholders for the two input boxes in range mode #7169
- Added `value-format` attribute to customize the format of the binding value, #7367
- Added `unlink-panels` attribute to unlink the two date panels when selecting a date range
- MessageBox
- Added `closeOnHashChange` attribute #6043
- Added `center` attribute so that the content can be centered #7029
- Added `roundButton` attribute to display round Buttons #7029
- Added `dangerouslyUseHTMLString` attribute. When set to `true`, `message` will be parsed as HTML string<sup>*</sup> #6043
- Added `inputType` attribute to assign type for the inner input box, #7651
- Dialog
- Added `width``fullscreen``append-to-body` attributes. Now Dialog can be nested
- Added `center` attribute so that the content can be centered #7042
- Added `focus-after-closed``focus-after-open` to improve accessibility #6511
- ColorPicker
- Now you can type colors in the input box #6167
- Added `size` and `disabled` attributes #7026
- Added `popper-class` attribute #7351
- Message
- Now color of the icons can be overridden by CSS #6207
- Added `dangerouslyUseHTMLString` attribute. When set to `true`, `message` will be parsed as HTML string<sup>*</sup> #6207
- Added `center` attribute so that the content can be centered #6875
- Notification
- Added `position` attribute to configure where Notification pops up #6231
- Added `dangerouslyUseHTMLString` attribute. When set to `true`, `message` will be parsed as HTML string<sup>*</sup> #6231
- Added `showClose` attribute to hide the close button #6402
- Rate
- Added `show-score` attribute to determine if current score is displayed #6295
- Tabs
- Added `tab-position` attribute #6096
- Radio
- Added `border` and `size` attributes #6690
- Checkbox
- Added `border` and `size` attributes #6690
- Alert
- Added `center` attribute so that the content can be centered #6876
- Menu
- Added `background-color`, `text-color` and `active-text-color` attributes #7064
- Added `open` and `close` methods to open and close SubMenu programmatically, #7412
- Form
- Added `inline-message` attribute to determine if the validation message is displayed in inline style #7032
- Added `status-icon` attribute to display a feedback icon when validated #7032
- Form and FormItem now have a `size` attribute. Inner components will inherit this size if not specified on themselves, #7428
- `validate` method will now return a promise if the callback is omitted, #7405
- Added `clearValidate` method for clearing validating results for all form items, #7623
- Input
- Added `suffix` and `prefix` named slots, `suffixIcon` and `prefixIcon` attributes to add contents inside the input box #7032
- Breadcrumb
- Added `separator-class` attribute to support icons as item separators #7203
- Steps
- Added `simple` attribute to activate simple-styled Steps #7274
- Pagination
- Added `prev-text` and `next-text` attributes to customize texts of previous page and next page #7005
- Loading
- Now you can customize spinner icon and background color with `spinner` and `background` prop, #7390
- Autocomplete
- Added `debounce` attribute, #7413
- Upload
- Added `limit` and `on-exceed` attributes to limit the amount of files, #7405
- DateTimePicker
- Added `time-arrow-control` attribute to activate `arrow-control` of the nesting TimePicker, #7438
- Layout
- Added a new breakpoint `xl` for viewport wider than 1920px
- Table
- Added `span-method` attribute for merging cells
- Added `clearSort` method to clear sorting programmatically
- Added `clearFilter` method to clear filter programmatically
- For expandable rows, when a row is expanded, a `.expanded` class will be added to its class list, so that you can customize its style
- Added `size` attribute
- Added `toggleRowExpansion` method to expand or collapse expandable rows programmatically
- Added `cell-class-name` attribute to assign class name for cells
- Added `cell-style` attribute to style cells
- Added `header-row-class-name` attribute to assign class name for header rows
- Added `header-row-style` attribute to style header rows
- Added `header-cell-class-name` attribute to assign class name for header cells
- Added `header-cell-style` attribute to style header cells
- TableColumn's `prop` attribute now accepts `object[key]` notations
- Added `index` attribute for TableColumn to customize row indices
- Select
- Added `reserve-keyword` attribute for reserving current search keyword after selecting an option
#### Bug fixes
- DatePicker
- Fixed `v-model` returning the second day of the selected week in week mode #6038
- Fixed the first input being cleared in `daterange` type #6021
- DateTimePicker
- Fixed DateTimePicker and TimePicker affecting each other when picked #6090
- Fixed hour and second can be beyond limit when selecting time #6076
- TimePicker
- Fixed `v-model` not update correctly when blurred #6023
- Dialog
- Fixed texts having blurry edges when opening and closing nesting dropdowns #6088
- Select
- Improved performance. Now Vue dev-tool won't crash when a large number of Selects are destroyed #6151
- Table
- Fixed a bug that Table remains hiding when its parent element appears from `display: none`
- Fixed Table expanding its width when its parent element has `display: flex`
- Fixed a bug that fixed columns of a Table with `append` slot would disappear when data is dynamically fetched
- Fixed `expand-row-keys` attribute not working with initial value
- Fixed filter failing when `data` updates
- Fixed a calculation error of fixed columns layout with grouped headers
- Fixed a dynamic `max-height` bug
- Fixed some style calculation errors
#### Breaking changes
- General
- Removed `theme-default`
- Compatible with Vue 2.5.2+ and IE 10+
- `change` event of form components and `current-change` event of Pagination now only trigger on user interaction
- `size` attribute of Button and form components now accept `medium`, `small` and `mini`
- To facilitate the use of third-party icons, `icon` attribute of Button and Steps, `prefix-icon` and `suffix-icon` attributes of Input now require a full class name
- Dialog
- Removed `size` attribute. Now the size of Dialog can be configured by `width` and `fullscreen`
- Now the visibility of Dialog cannot be controlled by `v-model`
- Rate
- `text-template` is renamed to `score-template`
- Dropdown
- `menu-align` is renamed to `placement`. Now it supports more positions
- Transfer
- `footer-format` is renamed to `format`
- Switch
- Attributes starting with `on-*` will be parsed to events in JSX, making all `on-*` attributes of Switch not
able to work in JSX. So `on-*` attributes are renamed to `active-*`, and accordingly `off-*` attributes are renamed to `inactive-*`. This change affects the following attributes: `on-icon-class`, `off-icon-class`, `on-text`, `off-text`, `on-color`, `off-color`, `on-value`, `off-value`
- `active-text` and `inactive-text` attributes now don't have default values
- Tag
- `type` attribute now accepts `success`, `info`, `warning` and `danger`
- Menu
- Removed `theme` attribute. The color of Menu can be configured using `background-color`, `text-color` and `active-text-color`
- Input
- Removed `icon` attribute. Now the suffix icon can be configured using `suffix-icon` attribute or `suffix` named slot
- Removed `on-icon-click` attribute and `click` event. Now to add click handler on icons, please use named slots
- `change` event now behaves like the native input element, which triggers only on blur or pressing enter. If you need to respond to user input in real time, you can use `input` event.
- Autocomplete
- Removed `custom-item` attribute. Now the template of input suggestions can be customized using `scoped slot`
- Removed `props` attribute. Now you can use `value-key` attribute to designate key name of the input suggestion object for display
- Steps
- Removed `center` attribute
- Now the Steps will fill its parent container by default
- DatePicker
- The params of DatePicker's `change` event is now the binding value itself. Its format is controlled by `value-format`
- Table
- Removed support for customizing column template using `inline-template`
- `sort-method` now aligns with `Array.sort`. It should return a number instead of a boolean
- `append` slot is moved outside the `tbody` element to avoid multiple rendering
- `expand` event is renamed to `expand-change`
- The params of `row-class-name` and `row-style` method is now an object
##
<i><sup>*</sup> Dynamically rendering arbitrary HTML on your website can be very dangerous because it can easily lead to [XSS attacks](https://en.wikipedia.org/wiki/Cross-site_scripting). So when `dangerouslyUseHTMLString` is on, please make sure the content of `message` is trusted, and **never** assign `message` to user-provided content.</i>
+948
View File
@@ -0,0 +1,948 @@
## Changelog
### 2.6.1
*2019-03-03*
#### Bug fixes
- **Don't specify node version** (by @iamkun in #14546)
- Fix doc directory in `deloy-faas.sh` (by @ziyoung in #14553)
- Fix date style issue in changelog for 2.6.0 (by @island205 in #14547)
- Fix doc typo (by @wack6 in #14552)
### 2.6.0
*2019-03-01*
#### New features
- Timeline
- Add timeline component (by @jikkai in #14248)
- DropdownItem
- Add icon prop to `el-dropdown-item` (by @gabrielboliveira in #14088)
- Input
- Add show-password props (by @phshy0607 in #13966)
- Select
- Add slot `empty` (by @elfman in #13785)
- Autocomplete
- Add highlight-first-item prop (by @YamenSharaf in #14269)
- I18n
- Created Armenian locale (by @hamletbarsamyan in #14214)
- Docs
- French translation (by @smalesys in #12153, #14418, #14434)
#### Optimization
- Alert
- Update alert description default slot class (by @iamkun in #14488)
- Input
- Update input password (by @iamkun in #14480)
- InputNumber
- Remove unnecessary parseFloat (by @JuniorTour in #14172)
- Menu
- Add support for `el-menu-item` without index (by @georgyfarniev in #13298)
- Table
- Remove some html DOM operations (by @elfman in #13643)
- Upload
- Optimize code (by @elfman in #13973)
- Popup
- Optimize code (by @KAionro in #14413)
- Docs
- Add more detail about how to run play mode for contribution (by @island205 in #14355)
- Warn input as a controlled component. (by @wacky6 in #14463)
- Update Table doc (by @luguokong in #14329)
- Update input doc (by @iamkun in #14437)
- Update custom-theme docs (by @wangguohao in #14297)
- Make the icon style change when hover on it (by @tuxinghuan in #14295)
- Build
- Minimizing css and js for Element doc site (by @iamkun in #14430)
- Speeding up webpack (by @hetech in #14484)
- Use cli to select release version (by @hetech in #14354)
- Install stale for issue handling (by @island205 in #14392)
#### Bug fixes
- Menu
- Fix subMenu focus bug when switch browser tab (by @liupl in #13976)
- MessageBox
- Fix type definition (by @NateScarlet in #14278)
- ScrollBar
- Prevent right button click on thumb (by @xifeiwu in #14196)
- Switch
- Trigger form validation if value changes (by @hetech in #14426)
- Table
- Make toggleAllSelection method an instance method (by @letanure in #14075)
- Tabs & Dropdown
- Fix style (by @hetech in #14452)
- Tree
- Empty-text tips are different from tables (by @ColinCll in #14331)
- Docs
- Fix DatetimePicker format doc error (by @iamkun in #14290)
- Spelling issue in datepicker documentation (by @helmut in #14481)
- Fix pagination doc style (by @liuchuzhang in #14451)
### 2.5.4
*2019-02-01*
#### Bug fixes
- Build: Fix babel config issue which lead to collapse transition broken (by @island205 in #14282)
### 2.5.3
*2019-01-31*
#### Optimization
- Optimize code of Message (by @vok123 in #14029)
- Retire gh-pages (by @ziyoung in #14266)
- Add IssueHunt link (by @island205 in #14261)
#### Bug fixes
- Fix UMD module error on server side (by @island205 in #14242)
- Fix active TabBar style (by @iamkun in #14240)
- Fix Table demo code error (by @xunmeng in #14253)
#### Bug fixes
### 2.5.2
*2019-01-27*
#### Optimization
- Docs:
- Update ChangeLog ES 2.5.1 (by @Gonzalo2310 in #14231)
#### Bug fixes
- Build:
- Delete unremoved comments in umd module `lib/index.js` (by @island205 in #14233)
- Fix export error fired in commonjs module used in nuxt.js (by @island205 in #14232)
- Fix 2.5.1 build issues (by @iamkun in #14228)
### 2.5.1
*2019-01-26*
#### Optimization
- DatePicker: resalta el mes y año actual (por @Debiancc en #14211)
- Actualizacion del changelog 2.5.0 (por @wacky6 en #14217)
#### Bug fixes
- Arreglado el problema de exportación generado por la actualización de webpack (por @island205 en #14220)
- Guardados los documentos 2.4.11 y la nueva subcarpeta para 2.5+ (por @iamkun en #14222)
### 2.5.0
*2019-01-25*
#### Bug fixes
- Autocompletar
- Corregida la última línea del menú desplegable que comenzaba recortada (#13597) (por @ziyoung)
- Arreglada la popper arrow que faltaba (#13762) (por @liuchuzhang)
- Carrusel
- Contador de limpieza cuando el componente es destruido (#13820) (por @elfman)
- Cascader
- Retirada de los props computados obsoletos (#13737) (por @iamkun)
- Se corrigió la definición de tipo de las opciónes de Cascader en TypeScript (#13613) (por @NateScarlet)
- Corregido icono que cubre el texto (#13596) (por @ziyoung)
- Checkbox
- Refinado el estilo (por @PanJiaChen)
- DatePicker
- Añade el `key` en v-for de TimeSpinner (#13547) (por @Ende93)
- Corregido el resaltado de la semana en el límite del año (#13883) (por @suyi91)
- Input
- Corregida la referencia del nodo DOM del textarea (#13803) (por @laomu1988 @island205)
- Pagination
- El valor de entrada no será menor que 1 (#13727) (por @elfman)
- Popover
- Corrección de problemas de popover con el disparador de hover (#13104) (por @goldengecko)
- Corregido el fallo de memoria de instancia de popper (#13988) (por @qpxtWhite)
- Radio
- Refinado el estilo (por @ohhoney1)
- Table
- Mejorada la ordenación de tablas al hacer clic en la flecha de ordenación (#12890) (por @ohhoney1)
- Solucionado el problema de alineación vertical de texto vacío en IE10+ (#13638) (por @imzjjy)
- Corregida la documentación del tipo de índice (#13628) (por @ilovefafa)
- Corrección del problema de visualización de `show-summary` cuando el encabezado multinivel tiene el attr fixed (#13914) (por @luckyCao)
- Tabs
- Corregido error de autodesplazamiento (#13696) (por @iamkun)
- Obtener la tab correcta a través del nombre de tab (#13705) (por @iamkun)
- Uso de paneName en lugar de name para determinar el estilo del panel (#13733) (por @iamkun)
- Tree
- Corregido que `showCheckbox` prop en `Tree` no puede afectar a los hijos `tree-node` (por @KidneyFlower)
- Actualizado documento y archivo de definición (#13540) (por @ziyoung)
- Upload
- Agregada la prop `url` para subir el archivo cuando `list-type` cambia (#13771) (por @elfman)
- Slider
- Corrección de la sangría del código fuente (#13955) (por @wacky6)
- I18n
- Añadidas las traducciones de catalán que faltaban (por @jaumesala)
- Añadidas las traducciónes de ruso que faltaban (#13658) (por @justlp)
- Corrección de las traducciones al finés (#14137) (por @jenkrisu)
- Doc
- Actualización del documento 2.4.11 (#13522) (por @Gonzalo2310)
- Otros
- Eliminar scripts innecesarios (por @ziyoung)
- Corregido el error de anchor link (#13753) (por @iamkun)
- Corrección de la capitalización inconsistente en la documentación (por @wonderjar)
- Añadido código qr del grupo de chat DingDing al readme (by @iamkun in #13957)
- Añadido logs de hilo a .gitignore (#13922) (por @mimimi)
- Eliminada la cuota de patrocinadores (#14156) (por @island205)
- Actualizado readme qr code src (#13960) (por @iamkun)
- Actualizado enlace CDN, corregido error tipográfico (por @ziyoung)
### 2.4.11
*2018-11-21*
- Revertido pr #13296. Arreglado que al hacer clic fuera del Menú causaba que el Submenú colapsara, #13478
- Ajustados los media query breakpoints de las pantallas pequeñas (xs), #13468 (por @alekoshen712)
### 2.4.10
*2018-11-16*
- Se corrigio que se necesitaban varios clics en Select para mostrar la lista desplegable, #13268
- El icono de limpiado para el input no se muestraba cuando Form estaba deshabilitado, #13208
- Ajustados los estilos de Select, Progress, Autocomplete, Tooltip, Collaspe, TimePicker, #13188 (by @porcelainHeart) #13210 #13266 #13257 #13290 #13347 (by @PanJiaChen)
- Se agregó el atributo `loop` al componente carrusel, #13217
- Cuando los datos de Table cambian, la línea resaltada permanecerá, #13200
- Table header scoped slot puede recibir parámetros, #13263
- El método `clearFilter` de la tabla soporta argumentos, #13176
- El tooltip ya no se crea cuando no hay contenido en la celda de Table, #13152 (por @rongxingsun)
- El contenido del input del panel ColorPicker se muestra correctamente, #13278
- ColorPicker ya no activa la validación de formularios al arrastrar, #13299
- InputNumber se le ha añadido el método `select`, #13286 (por @st-sloth)
- Autocompletar agregó el evento `clear`, #12171(by arthurdenner) #13326
- Puede cerrar Menú haciendo clic fuera del Menú, #13296
- El método `validateField` de Form puede recibir argumentos, #13319
- Cascader añadió el evento `visible-change`, #13415
- DatePicker agregó slot para separador de rango, #13272 (por @milworm)
- Tree añade las propiedades `iconClass` y `currentNodeKey`, #13337 #13197 (por @isnifer)
- Progress permite texto en el atributo `status` #13198 (por @ali-master)
- Corregidas las `defaultCheckedKeys` de Tree que causaba un error, #13349 (por @dive2Pro)
### 2.4.9
*2018-10-26*
- El parámetro de Form's `clearValidate` soporta cadenas, #12990 (by @codinglobster)
- Se agregó el atributo `type` para Badge, #12991
- Ser puede usar scoped-slot para personalizar el encabezado de la columna de Table #13012 (por @ivanseidel)
- Arreglado que el input box de Select no se podia escrbir en IE, #13034 (by @GaliMU)
- La opción Seleccionar no se cerraba cuando el espacio era insuficiente, #12329 (by @akki-jat)
- Cuando se expande la lista desplegable de Seleccionar, el icono de flecha también se mostrará correctamente, #12353 (by @firesh)
- Arreglado que el atributo size de Select no funcionaba, #13070
- Select multiple values pueden ser limpiado en lote, #13049 (by @ZSkycat)
- Arreglado el último TabNav que no se podía borrar, #13039
- Arreglado que la etiqueta del TabNav no se mostraba correctamente, #13178
- Añadido title slot para Alert, #13082 (by @Kingwl)
- Corregido un problema por el cual el contenido del tooltip en Table era incorrecto, #13159 (by @elfman)
- Optimizada la animación de Upload cuando el archivo es eliminado, #12987
- Ajustado el estilo de InputNumber cuando no se muestra el botón de control, #13052
### 2.4.8
- No se muestra el contorno cuando Switch está enfocado, #12771
- Arreglado el estilo del Dropdown en ButtonGroup, #12819 (por @bluejfox)
- Añadido evento opened para Dialog, #12828
- Corregido el orden incorrecto de visualización de TabNav, #12846
- Corregido el problema de que Tabs no se desplazaba a la pestaña seleccionada, #12948
- Corregido el problema de que el identificador no se mostraba cuando se arrastraba el Tree node, #12854
- El parámetro validar evento de Form contiene el mensaje de validación, #12860 (por @YamenSharaf)
- Se ha corregido el DatePicker que no verificaba la validez de la hora de entrada del usuario, #12898
- Arreglado el problema de que el atributo `render-header` del encabezado de Table no funcionaba, #12914
### 2.4.7
*2018-09-14*
- Corregido que DatePicker no activaba la validación del Form, #12328 #12348
- Corregidos el lanzamiento de errores del DatePicker en modo múltiple, #12347
- Corregida la posición incorrecta del spinner del DatePicker, #12415 (por @rang-ali)
- Se ha corregido el llenado automático del input del DatePicker, #12521 (por @abdallanayer)
- Corregida el input no resaltada en Cascader, #12341
- Corregido el orden incorrecto de Tabpane, #12346
- Corregida la posición incorrecta del cursor de ColorPicker, #12376 (por @cnwhy)
- Corregido el estilo del Submenú, #2457
- Corregido el resaltado después de seleccionar el Submenú, #12479
- Corregidos los valores incorrectos seleccionados por Cascader, #12508 (por @huangjinqiang)
- Corregido el valor incorrecto del input de Paginación, #12525
- Se ha corregido el orden en que la paginación desencadena los eventos, #12530
- Corregido que no se mostraba el Table Filter, #12539
- Corregido Tree que era incapaz de borrar nodos, #12684
- Corregida la altura de los Select Input que cambiaba en modo simple, #12719
- Arreglado el estilo de la etiqueta FormItem en Form anidado, #12748
- Añadido el atributo `autocomplete` para Input, obsoleto `auto-complete`, #12514 (por @axetroy)
- Añadido el slots-scope de Form para mostrar la información de validación, #12715 (por @YamenSharaf)
### 2.4.6
*2018-08-09*
- Arreglada la tabla que no mostraba el ícono del filtro cuando a `filter` se les asignaba un array vacío, #12165
- Arreglado Menu que no guardaba el estado activo cuando cambiaba `collapse` #12178 (por @elfman)
- Se ha corregido que Cascader no escapaba a los caracteres especiales para Regexp, #12248
- Se ha corregido que el RadioBotón deshabilitado mostraba la sombra de la caja cuando se hacía clic, #12262
- Arreglado el efecto de la tecla de flecha en Select cuando el valor por defecto es `undefined`,#12322
- Corregida la función de consulta de Select not debounced en modo multi, #12181
- Corregida que la palabra clave de consulta de Select desaparecía en modo multi, #12304
- Corregido el ancho incorrecto de Dialog cuando se muestra a pantalla completa, #12203
- Corregida la visualización incorrecta de Main en IE, #12237
- Corregido el trigger de Input con dos validaciones de Form, #12260
- Arreglado el añadir un nuevo nodo de árbol que causaba que los nodos desaparecieran, #12256
- Arreglado el nodo Tree no se borraba después de arrastrar, #12279
- Popover corregido porque no era visible cuando InputNumber no enfocaba, #12284
- Añadido el atributo `popper-append-to-body` para Autocompletar, #12241
- Añadido el modificador `sync` para el atributo `page-size` de Pagination, #12281
### 2.4.5
*2018-07-26*
- Se ha corregido en Table que `class-name` no funcionaba para las columnas `expand`, #12006
- Se ha añadido el método `toggleAllSelection` para Table, #12047
- Corregida la posición incorrecta del `suffix slot` cuando Input contiene Select, #12108
- Corregido que el `line-height` de Option no se establecia, #12120
- Corregido que TimeSelect con valor por defecto `null` no podia ser asignado después de ejecutar `resetField`, #12010
- Arreglado el evento `keydown` que cuando no era una tecla de flecha no funciona en Tree, #12008
- Corregido nodo padre checked en modo lazy, #12106
- Añadido el parámetro `includeHalfChecked` para getCheckedNodes de Tree, #12014
### 2.4.4
*2018-07-13*
- Corregido que se disparaba la validacion del Select después de reajustar el formulario, #11837
- Corregida la posición incorrecta del slot Input `suffix` cuando se usaba el slot `suffix` con el slot `append` , #11951
- Corregido el clearable Input que muestraba el icono de borrado cuando era readonly, #11967
- Arreglado el nodo Tree checked cuando estaba disabled, #11847
- Corregido que `default-checked-keys` no funcionaba en Tree, #11971
- Corregido que el `empty-text` no era visible cuando el nodo Tree se filtraba, #11971
- Arreglada la posición de texto vacío sobredimensionado en Table, #11965
- Corregido que la fila de la tabla no se modificado el resaltado cuando `current-row-key` era asignada a null, #11866
- Arreglado que mostraba el filtro del dropdown cuando los filtros eran un array vacío, #11864
- Corregido que el cambio de label de Radio no detenia propagacion de eventos, #11912
### 2.4.3
*2018-07-03*
- Corregido `allow-drop` que no funcionaba correctamente cuando los nodos de árbol tenian una altura personalizada, #11797
- Ahora puede pasar un parámetro al método `clearValidate` de Form, especificando qué resultados de validación de `FormItems` necesita borrar, #11821
- Añadido el atributo `distinguishCancelAndClose` para MessageBox, #11831
### 2.4.2
*2018-06-26*
- Ahora el `class-name` y el `label-class-name` de la tabla son reactivos, #11626
- Arreglado que Table seguia resaltando la fila en la que se había hecho clic cuando `highlight-current-row` era `false`, #11646
- Corregido un error de estilo de ButtonGroup cuando sólo habia un botón `round` o `circle`, #11605
- Arreglado estilo del tamaño de página del Select de Pagination, #11622
- Corregido un error del método `open` de los Menús cuando se cambiaba dinámicamente `collapse`, #11646
- Añadidos los parámetros `activeName` y `oldActiveName` al gancho before-leave de Tabs, #11713
- Arreglado el focus en Cascader después de hacer clic fuera, #11588
- Arreglado que Cascader no se cerraba cuando se hacia clic en la opción estando `change-on-select` como `true`, #11623
- Ahora la actualización del valor de Select programáticamente activará la validación de formulario, #11672
### 2.4.1
*2018-06-08*
- Removida la declaración duplicada de type en Autocompletar, #11388
- Corregido el estilo de flecha en el dropdown de Select en FireFox cuando se anidaba en el formulario, #11427
- Corregido que el ícono `clear` de Select seguia apareciendo cuando el valor inicial era `null`, #11460
- Arreglado que cuando el radio estaba `disabled` mostraba el box-shadow al hacer click, #11462
- Añadido el atributo `iconClass` para MessageBox, #11499
- Añadido el atributo `stretch` para Tabs, #11476
- Arreglado el problema de orden de renderizado de TabPane cuando Tabs es `lazy`, #11461
- Arreglado que Table no retenia la fila actual de resaltados cuando se expandia, #11464
- Arreglado que focusing state cuando `before-leave` devolvia una promesa resuelta, #11386
- Arreglado que Popover deshabilitado seguia creando poppers, #11426
- Arreglado el bucle sin fin de Tree cuando se añadia un nuevo nodo en modo `lazy`, #11430 (por @wangjingf)
- Añadido el evento `closed` para Dialog, #11490
### 2.4.0 Fullerene
*2018-05-28*
#### Nuevas características
- Generalidades
- La herramienta de desarrollo y el empaquetador se cambiaron a webpack nativo, #11216
- Ahora puede configurar globalmente el z-index inicial de los popups, #11257
- Autocomplete
- Añadido el atributo `hide-loading`, #11260
- Button
- Ahora se puede usar el atributo `size` en los botones circulares para controlar sus tamaños, #11275
- InputNumber
- Añadido el atributo `precision`, #11281
- Tabs
- Añadido el atributo `before-leave`, #11259
- Añadido el atributo `lazy`, #11167by @Kingwl
- Table
- Añadido el método `sort` para ordenar manualmente la tabla, #11311
#### Corrección de errores
- Input
- Se ha corregido un problema que provocaba que se volviera a procesar al utilizar el IME chino para introducir texto rápidamente, #11235 (por @STLighter).
- Popover
- Corregido el error de la consola cuando el elemento disparador es Radio o Checkbox, #11265
- Breadcrumb
- Arreglado el atributo `to` que no soportaba la actualización dinámica, #11286
- Upload
- Corregido el error de la consola cuando se resolvia el Archivo en la Promesa devuelta del método `beforeUpload`, #11297 (por @qusiba)
- Tooltip
- Solucionado que la flecha no se posicionaba correctamente cuando el contenido estaba vacío, #11335
- Autocompletar
- Corregido que las sugerencias de entrada eran incorrectas después de eliminar la palabra clave rápidamente, #11323
- ColorPicker
- Corregido el evento `active-change` que se disparaba incorrectamente cuando el menú desplegable del picker estaba cerrado, #11304
- Table
- Corregido el error de estilo del panel de filtro cuando se sobredimensionaba, #11314
- Corregida que la fila seleccionada actualmente no se retenia cuando se ordenaba la tabla, #11348
- CheckBox
- Arreglado que cuando el checkbox era único no soportaba validación, #11271
- Radio
- Arreglado que el Radio desactivado seguia estando seleccionada cuando se pulsaba la tecla espaciadora, #11303
- MessageBox
- Corregida la clase `el-popup-parent--hidden` que no se eliminaba al abrir MessageBox sucesivamente, #11371
### 2.3.9
*2018-05-18*
- Corregido que cuando los datos de origen no tenian el campo especificado por el atributo `prop` de una TableColumn, se producía un error al moverse el ratón dentro de las celdas de esa columna, #11137.
- El atributo `lockScroll` de los componentes pop-up ya no añade un inline style al elemento padre, sino que añade un nombre de clase, #1111114.
- Arreglado el icono de Progreso que no se mostraba cuando su `status` era `exception`, #11172
- El atributo `disabled` no funcionaba en la lista de resultados del filtro de Cascader, #11185
- Se ha corregido un problema por el que la fila expandida de la Tabla no se podía contraer si los datos de origen se actualizaban después de su expansión, #11186.
- `setCurrentKey` de Tree ahora acepta `null` como parámetro para cancelar el nodo actualmente resaltado, #11205
### 2.3.8
*2018-05-11*
- Corregido que el panel DatePicker saltaba al mes actual después de escoger una fecha en un mes diferente cuando el tipo era `dates`, #10973
- Arreglado que el `clearable Input` seguía mostrando el icono de borrado cuando era sólo de lectura, #10912
- Arreglado que al cerrar el panel DatePicker sin modificar el valor se desencadenaba incorrectamente el evento `change`, #11017
- Arreglado que la navegación por el teclado no funcionaba correctamente cuando Select tenia opciones agrupadas, #11058
- Agregado el `slot named` `prefix` para Select, #11063
- Agregado el metodo `clearValidate` para FormItem, #11076
- Agregado el atributo `checkOnClickNode` para Tree, #11111
### 2.3.7
*2018-04-29*
- Corregido que Table no actualizaba el ancho de encabezado cuando la barra de desplazamiento desaparecia debido al filtrado, #10834
- Corregido input borrable que mostraba el icono de borrado cuando su valor inicial era `nulo`, #10912
- Corregido el disparador incorrecto del evento `active-change` después de cambiar el valor enlazado de ColorPicker programáticamente, #10903 (por @zhangbobell)
- Corregido filterable Select que causaba un bucle infinito al navegar por las opciones usando el teclado si todas las opciones estában deshabilitadas, #10945
### 2.3.6
*2018-04-21*
- Corregido el comportamiento incorrecto del callback `allow-drop` de Tree cuando se usaba el parámetro `type`, #10821
- Ahora puede introducir correctamente las palabras clave en filterable Single Select en IE11, #10822
- Corregido Single Select activaba incorrectamente el evento `blur` después de hacer clic en una opción, #10822
### 2.3.5
*2018-04-20*
- Arreglado los incorrectos realces en el panel de DatePicker cuando `type` es week, #10712
- Arreglado que InputNumber comenzaba vacio cuando el valor inicial era 0, #10714
- Agregado el atributo `automatic-dropdown` para Select, #10042 (by @Seebiscuit)
- Arreglado que el valor del Rate pasaba a `disabled` cuando se comenzaba a actualizar con las teclas de navegacion, #10726 (by @Richard-Choooou)
- Ahora el atributo `type` de DatePicker's puede ser `'dates'`, donde puede elegir varias fechas en un solo picker, #10650 (by @Mini256)
- Agregados los eventos `prev-click` y `next-click` para Pagination, #10755
- Agregado el atributo `pager-count` para Pagination, #10493 (by @chongjohn716)
- Agregado `type` como 3rd parametro del atributo `allow-drop` de Tree, #10792
- Ahora usamos ResizeObserver para detectar el redimensionamiento de elementos DOM, #10779
### 2.3.4
*2018-04-12*
- Eliminado el atributo duplicado `showTimeout` en SubMenu's en la declaracion TypeScript, #10566 (by @kimond)
- Ahora se puede personalizar los datos de los items de Transfer usando scoped slot, #10577
- Arreglado que los click de los botones `next` y `prev` en Pagination se deshabilitaban cuando se disparaba el evento `current-change`, #10628
- Arreglado que Textarea mostraba `undefined` en SSR cuando el valor no era asignado, #10630
- Arreglado que se deshabilitaba el estilo del TabItem cuando `type` era border-card, #10640
- Agregado `$index` como cuarto parametro en el atributo de las columnas de Table `formatter` , #10645
- Arreglado que CheckboxButton no se exportaba en la declaracion de TypeScript, #10666
### 2.3.3
*2018-04-04*
- Agregar atributo `shadow` para Card, #10418 (by @YunYouJun)
- Se ha corregido el error de ocultar Badge cuando `value` es `0`, #10470
- Arreglados algunos bugs del draggable Tree, #10474 #10494
- Agregado `placement` para Autocomplete, #10475
- Ahora el atributo `default-time` también funciona en un rango que no es el rango DateTimePicker, #10321 (by @RickMacTurk)
- Eliminado el contorno azul de TabItem después de que el navegador se desdibuja o se minimiza, #10503
- Agregado el atributo `popper-append-to-body` para SubMenu, #10515
- Eliminado el feedback visual cuando se desplaza sobre non-link BreadcrumbItem, #10551
- Se ha corregido el evento `change` de InputNumber para garantizar que el valor de ligado del componente se actualiza en el control de eventos, #10553
### 2.3.2
*2018-03-29*
- Arreglada una regresión de Autocompletar, #10442
### 2.3.1
*2018-03-29*
- Se ha corregido una regresión por la que el `type` de input no se transmitia al elemento de entrada nativo, #10415
- Agregado el metodo `blur` para Select, #10416
### 2.3.0 Diamond
*2018-03-28*
#### Nuevas características
- Table
- Ahora `formatter` de TableColumn puede ser actualizado dinámicamente, #10184 (by @elfman)
- Agregado el atributo `select-on-indeterminate`, #9924 (by @syn-zeta)
- Menu
- Agregado el atributo `collapse-transition`, #8809 (by @limichange)
- Input
- Agregado el metodo `select` , #10229
- Agregado el metodo `blur`, #10356
- ColorPicker
- Agregado el atributo `predefine`, #10170 (by @elfman)
- Tree
- Agregados los atributos `draggable`, `allow-drop` y `allow-drag`, y los eventos `node-drag-start`, `node-drag-enter`, `node-drag-leave`, `node-drag-over`, `node-drag-end` y `node-drop`, #9251 #10372 (by @elfman)
- Form
- El metodo `validate` ahora acepta un segundo parametro, que contiene información de los ítems del formulario que no superaron la validación, #10279
- Agregado el evento `validate`, #10351
- Progress
- Agregado el atributo `color`, #10352 (by @YunYouJun)
- Button
- Agregado el atributo `circle`, #10359 (by @YunYouJun)
#### Bug's arreglados
- Form
- Solucionado: Label del FormItem no se alineaba adecuadamente con Input mixto, #10189
- Menu
- Ahora collapsed Menu sólo mostrará el Tooltip cuando el slot `title` de MenuItem esté configurado, #10193 (by @PanJiaChen)
- Pagination
- Corregido el evento `current-change` que se disparaba erróneamente sin interacción del usuario, #10247
- DatePicker
- Ahora la fecha y la hora en el panel desplegable están correctamente formateadas según el atributo `format`, #10174by @remizovvv
- Upload
- Solucionado el atributo `accept` no trabajaba cuando `drag` era true, #10278
### 2.2.2
*2018-03-14*
- Agregado el evento `clear` para Input, #9988 (by @blackmiaool)
- Ahora la entrada manual de ColorPicker soporta los modos `hsl`, `hsv` y `rgb`, #9991
- Arreglado DatePicker no desencadenaba el evento `change` cuando se borraba su valor inicial, #9986
- Ahora la clase de iconos relacionadas con los atributos de Rate soporta actualizaciones dinamicas, #10003
- Arreglado Table que con columnas `fixed` no actualizaban correctamente su altura si se fijaba `max-height`, #10034
- Ahora DatePicker en modo rango admite la selección inversa (haciendo clic en la fecha final y, a continuación, haciendo clic en la fecha de inicio), #8156 (by @earlymeme)
- Agregado el atributo `disabled` para Pagination, #10006
- Agregados los eventos `after-enter` y ` after-leave` para Popover, #10047
- Arreglado Select no disparaba validación cuando el usuario seleccionaba una opción después de ejecutar `resetFields` de Form, #10105
- Arreglado anchos incorrectos de columnas fijas de Table en algunos casos, #10130
- Corregido MessageBox heredaba el atributo `title` de su instancia anterior cuando se llamaba sin `title`, #10126 (by @Pochodaydayup)
- Agregado el atributo `input-size` para Slider, #10154
- Agregados los eventos `left-check-change` y `right-check-change` para Transfer, #10156
### 2.2.1
*2018-03-02*
- Corregido Aside, Header y Footer que se contraia en algunos layout, #9812
- Corregido Table con un atributo `height` no renderizaba en SSR, #9876
- Corregido Table con fila expandible no calculaba la altura cuando la fila era expandida, #9484
- Corregido que cuando se escribia la fecha de forma manual en DateTimePicker no se disparaba el evento `change`, #9913
- Corregido que Select mostraba sus opciones cuando se hacia click con el botón derecho del mouse en el Input, #9894 (by @openks)
- Agregado el atributo `tooltip-class` para Slider, #9957
- Ahora Select permanecera enfocado despues de la selección, #9857 (by @Seebiscuit)
- Agregado el atributo `target-order` para Transfer, #9960
### 2.2.0 Graphite
*2018-02-12*
#### New features
- Menu
- Agregados los atributos `popper-class` y `disabled` para SubMenu, #9604 #9771
- Menu Horizontal ahora soporta SubMenu multi-capas, #9741
- Tree
- Agregado el evento `node-contextmenu`, #9678
- Ahora se puede personalizar el template del nodo usando scoped slot, #9686
- Agregados los metodos `getNode`, `remove`, `append`, `insertBefore`, `insertAfter`, `getCheckedKeys`, `getHalfCheckedNodes`, `getHalfCheckedKeys` y el evento `check`, #9718 #9730
- Transfer
- Agregado el metodo `clearQuery`, #9753
- Select
- Agregado el atributo `popper-append-to-body`, #9782
#### Bug fixes
- Table
- Corregido el icono de expansión de una fila expandible que al hacer click activaba el evento `row-click`, #9654
- Corregido el layout que no se actualizaba cuando el ancho de columna era cambiado por el usuario arrastrando, #9668
- Corregido problema de estilo cuando la fila de resumen coexistia con columnas fijas, #9667
- Container
- Corregido componentes del Container que no se estiraban en IE11, #9655
- Loading
- Corregido Loading no se mostraba cuando el valor de `v-loading` era cambiado a true en el `hook` `mounted`, #9722
- Switch
- Corregido se disparaban los dos eventos nativos de click cuando se hacia click en el Switch, #9760
### 2.1.0 Charcoal
*2018-01-31*
#### New features
- Cascader
- Agregados los eventos `focus` y `blur`, #9184 (by @viewweiwu)
- Table
- El `filter-method` ahora tiene un tercer parámetro `column`, #9196 (by @liyanlong)
- DatePicker
- Agregados los atributos `prefix-icon` y `clear-icon`, #9237 (by @AdamSGit)
- Agregado el atributo `default-time`, #9094 (by @nighca)
- `value-format` ahora soporta `timestamp`, #9319 (by @wacky6)
- InputNumber
- Ahora el valor vinculado puede ser `undefined`, #9361
- Select
- Agregado el atributo `auto-complete`, #9388
- Form
- Agregado el atributo `disabled`, #9529
- Agregado el atributo `validateOnRuleChange`, #8141
- Notification
- Agregado el metodo `closeAll`, #9514
#### Bug fixes
- InputNumber
- Arreglado el reseteo del valor cuando tiene punto decimal, #9116
- Dropdown
- Arreglado el dropdown menu que tenia un posicionamiento incorrecto cuando la página sólo tiene una barra de desplazamiento horizontal en algunos navegadores, #9138 (by @banzhuanmei)
- Table
- Corregido un error en el cálculo del número de columnas fijas después de que los datos de la columna cambian, #9188by @kolesoffac
- Corregido el borde de la última columna de la cabecera agrupada que no se visualizaba correctamente., #9326
- Corregido el posicionamiento incorrecto del header de la tabla en Safari, #9327
- Corregido fila expandida colapsaba cuando cambiaban los datos de la tabla, #9462
- Corregido renders múltiples innecesarios en algunas condiciones, #9426
- Corregido un error de calculo en el ancho de la columna cuando `width` cambiaba en TableColumn, #9426
- Loading
- Corregido que en algunas ocasiones el loading no se ocultaba correctamente, #9313
- DatePicker
- Corregido el metodo `focus` que no funcionaba en modo `range`, #9437
- Corregido si se hacia clic en el botón "now" seguia seleccionando la fecha actual aunque estuviera desactivado, #9470 (by @wacky6)
- Corregido fijación de fechas al navegar, #9577 (by @wacky6)
- Steps
- Corregido error de estilos en IE 11, #9454
#### Breaking changes
- Menu
- El menú desplegable en modo `collapse` ahora se agrega directamente al `body`, de modo que es visible cuando está anidado en Aside, #9263
- Table
- Ahora, al marcar los checkboxes en la Tabla de selección múltiple no se activa el evento `row-click`, #9467
- Loading
- El `z-index` de la máscara de carga non-fullscreen se cambia a 2000. El `z-index` de la máscara de carga fullscreen se actualiza dinámicamente con los componentes emergentes, #9522
- Dropdown
- Los atributos `show-timeout` y `hide-timeout` ahora solo trabajan si se dispara `hover`, #9573
### 2.0.11
*2018-01-08*
- Corregido el problema de color del borde del Select cuando está el slot `prepend` o `append` del Input, #9089
- Corregido el parámetro `remove-tag` de Select, #9090
- Añadido los atributos `show-timeout` y `hide-timeout` para SubMenu, #8934 (por @HugoLew)
- Corregido el estilo de Tooltip de `show-overflow-tooltip` que faltaba cuando Table era importada bajo demanda, #9130
- Se ha corregido el mal funcionamiento de ordenación de la columna de Table despues que `clearSort` era ejecutado en esa columna, #9100 (por @zEmily)
- El fichero de configuración i18n para el checo se renombra de `cz` a `cs-CZ`, #9164
### 2.0.10
*2017-12-29*
- Corregido el calculo incorrecto de la altura máxima de Table cuando fixed column y summary row coexisten, #9026
- Solucionado el estilo de color que no lo compilaba para textos vacíos en Table, #9028
- Ahora DatePicker sólo emite el evento `change` cuando el valor cambia verdaderamente, #9029 (by @remizovvv)
- Añadido atributo `tabindex` para Input, #9041 (by @dicklwm)
### 2.0.9🎄
*2017-12-24*
- Añadida la función de enganche (hook) `before-remove` para Upload, #8788 (by @firesh)
- Arreglado el valor inicial de error que no funcionaba para FormItem, #8840
- Ahora la directiva Loading soporta nombre de clase personalizado asignando el atributo `element-loading-custom-class`, #8826 (por @earlymeme)
- Arreglado CarouselItem que se ponía invisible cuando los datos eran actualizados asincrónicamente, #8921
- Añadido el atributo `renderAfterExpand` para Tree, #8972
### 2.0.8
*2017-12-12*
- Agregada la documentacion en español
- Arreglado `show-timeout` de Dropdown que no funcionaba cuando se disparaba el click, #8734 (por @presidenten)
- Arreglado el tiempo de validacion del Form cuando se disparaba el blur, #8776
- Arreglado el evento de perdida de foco (blur) del DatePicker por rangos, #8784
- `format` de TimePicker ahora soporta AM/PM, #8620 (por @firesh)
### 2.0.7
*2017-11-29*
- Solucionado el estilo disabled en el texto de button, #8570
### 2.0.6
*2017-11-29*
- Corregido error de estilo de los iconos de ordenación de Table, #8405
- Corregido activacion para Popover cuando `trigger` es manual, #8467
- Añadidos los atributos `prefix-icon` y `suffix-icon` para Autocomplete, #8446 (por @liyanlong)
- Añadido el atributo `separator` para Cascader, #8501
- Añadido atributo `clearable` para Input, #8509 (por @lbogdan)
- Añadido atributo `background` para Pagination, #8553
### 2.0.5
*2017-11-17*
- Solucionado regresion en 2.0.4 de Popover, Tree, Breadcrumb and Cascader, #8188 #8217 #8283
- Solucionado Fuga de memoria de la directiva clickoutside, #8168 #8225 (por @badpunman @STLighter)
- Solucionada la altura en multiple Select cuando se borra su valor, #8317 (por @luciy)
- Añadido el atributo `collapse-tags` para multiple Select para reemplazar las tags con una línea de texto, #8190
- Solucionado el alto consumo de CPU causado por Table cuando esta oculta, #8351
- Ahora puede usar el método `doLayout` de Table para actualizar su diseño, #8351
### 2.0.4
*2017-11-10*
- Accesibilidad mejorada para Cascader, Dropdown, Message, Notification, Popover, Tooltip y Tree
- Arreglado el cambio de tamaño del Container cuando el ancho de la vista disminuye, #8042
- Arreglado Tree's `updateKeyChildren` borraba incorrectamente los nodos hijos, #8100
- Arreglado la altura de los bordes de CheckboxBotón's cuando esta anidado en un Form, #8100
- Arreglado error de análisis de los Menu's para los colores personalizados, #8153 (por @zhouyixiang)
### 2.0.3
*2017-11-03*
- Solucionado atributos `editable` and `readonly` de DatePicker de los rangos, #7922
- Corregido error de estilo de los Tabs anidados, #7941
- Corregido error de estilo del último Step de Steps verticales, #7980
- Corregido el tiempo de activación del evento `current-change` para Pagination, #7995
- Corregido Tooltip no registrado en el Menu, #7995
### 2.0.2
*2017-10-31*
- Ahora haciendo clic con el botón derecho del ratón en los botones de InputNumber no cambiará su valor, #7817
- El metodo `validate` de Form ahora puede esperar por validaciones asíncronas antes de ejecutar su devolución de llamada, #7774 (por @Allenice)
- Corregido la selección de rango de DatePicker no funcionaba en los navegadores Chromium 53-57, #7838
- Corregido la perdida de previsualización e iconos de eliminar de Upload cuando su `list-type` es picture-card, #7857
- Añadido el atributo `sort-by` para TableColumn, #7828 (por @wangfengming)
- Corregido que a veces DatePicker muestra un número de año incorrecto al seleccionar la primera semana en modo week, #7860 (por @hh23485)
- Corregido error de estilo de icono de Step vertical, #7891
- El área hot para las flechas de nodo en Tree se expandia, #7891
### 2.0.1
*2017-10-28*
- Corregido error de estilo de RadioButton y CheckboxButton, #7793
- Corregido TimePicker no responde al desplazamiento del ratón en algunas condiciones, #7811
- Corregido estilos incompletos de algunos componentes cuando se importan bajo demanda, #7811
### 2.0.0 Carbon
*2017-10-27*
#### New features
- General
- Un nuevo tema: `theme-chalk`
- Se ha mejorado la accesibilidad de los siguientes componentes: Alert, AutoComplete, Breadcrumb, Button, Checkbox, Collapse, Input, InputNumber, Menu, Progress, Radio, Rate, Slider, Switch, Upload
- Añadido tipografías TypeScript
- Todos los iconos existentes son rediseñados. Se han añadido algunos iconos nuevos
- Añadida una serie de clases de utilidades basadas en puntos de ruptura que ocultan elementos cuando el tamaño del viewport cumple ciertas condiciones
- Componentes de diseño añadidos: Container, Header, Aside, Main, Footer.
- Ahora puede configurar los tamaños de componentes a nivel global. Al importar Element, puede añadir un objeto de configuración global con un prop `size` para configurar tamaños predeterminados para todos los componentes.
- Button
- Atributo `round` añadido. Se usa para botones de esquinas redondas #6643
- TimeSelect
- Ahora puede ser navegado por `Up` y `Down`, y presionando `Enter` selecciona la hora #6023
- TimePicker
- Ahora puede ser navegado por `Up` y `Down`, y presionando `Enter` selecciona la hora #6050
- Añadido `start-placeholder` y `end-placeholder`. Son placeholder's para las dos casillas de input en modo range #7169
- Añadido el atributo `arrow-control` para hacer girar el tiempo con las flechas #7438
- Tree
- Ahora los nodos hijo no se renderizan antes de la primera expansión #6257
- Añadido el atributo `check-descendants`. Determina si los nodos hijo se seleccionan al seleccionar su nodo padre en modo `lazy` #6235
- Tag
- Atributo `size` añadido #7203
- Datepicker
- Ahora `timeFormat` puede dar formato al TimePicker cuando type está configurado en `datetimerange` #6052
- Añadido `start-placeholder` y `end-placeholder`. Son placeholder's para las dos casillas de input en modo range #7169
- Atributo `value-format` añadido para personalizar el formato del valor enlazado, #7367
- Añadido el atributo `unlink-panels` para desacoplar los dos paneles de fechas al seleccionar un rango.
- MessageBox
- Añadido el atributo `closeOnHashChange` #6043
- Atributo `center` agregado para que el contenido pueda ser centrado #7029
- Añadido atributo `roundButton` para mostrar Botones redondeados #7029
- Añadido atributo `dangerouslyUseHTMLString`. Cuando está configurado en true, el mensaje será analizado como cadena HTML<sup>*</sup> #6043
- Añadido atributo `inputType` para asignar el tipo para el input interno, #7651
- Dialog
- Añadidos los atributos `width`, `fullscreen`, `append-to-body`. Ahora Dialog puede ser anidado
- Atributo `center` agregado para que el contenido pueda ser centrado #7042
- Añadidos `focus-after-closed`, `focus-after-open` para mejorar la accesibilidad #6511
- ColorPicker
- Ahora puede escribir colores en el input #6167
- Añadidos atributos `size` y `disabled` #7026
- Añadido atributo `popper-class` #7351
- Message
- Ahora el color de los iconos puede ser sustituido por CSS #6207
- Añadido atributo `dangerouslyUseHTMLString`. Cuando está configurado en true, el mensaje será analizado como cadena HTML<sup>*</sup> #6207
- Atributo `center` agregado para que el contenido pueda ser centrado #6875
- Notification
- Añadido atributo `position` para configurar donde aparece Notification #6231
- Añadido atributo `dangerouslyUseHTMLString` . Cuando está configurado en true, el mensaje será analizado como cadena HTML<sup>*</sup> #6231
- Añadido el atributo `showClose` para ocultar el botón de cierre #6402
- Rate
- Añadido el atributo `show-score` para determinar si la puntuación actual se muestra #6295
- Tabs
- Añadido el atributo `tab-position` #6096
- Radio
- Añadidos los atributos `border` y `size` #6690
- Checkbox
- Añadidos los atributos `border` y `size` #6690
- Alert
- Atributo `center` agregado para que el contenido pueda ser centrado #6876
- Menu
- Añadidos los atributos `background-color`, `text-color` y `active-text-color` #7064
- Añadidos los methods `open` and `close` para abrir y cerrar los SubMenu con programación, #7412
- Form
- Añadido el atributo `inline-message` para determinar si el mensaje de validación se muestra inline #7032
- Añadido el atributo `status-icon` para mostrar un icono de retroalimentación cuando se valida #7032
- Form y FormItem ahora tienen un atributo `size`. Los componentes internos heredarán este tamaño si no se especifica en ellos mismos, #7428
- Método `validate` devolverá ahora una promesa si se omite la llamada de retorno, #7405
- Añadido método `clearValidate` para limpiar los resultados de las validaciones de todos los form items, #7623
- Input
- Añadido slots con nombres `suffix` y `prefix` y atributos `suffixIcon` y `prefixIcon` para añadir contenido dentro del input #7032
- Breadcrumb
- Añadido el atributo `separator-class` para dar soporte a los iconos como separadores de items #7203
- Steps
- Añadido atributo `simple` para activar Steps de estilo sencillo #7274
- Pagination
- Añadidos los atributos `prev-text` y `next-text` para personalizar los textos de la página anterior y de la página siguiente #7005
- Loading
- Ahora usted puede personalizar el ícono del spinner y el color de fondo con los props `spinner` y `background` , #7390
- Autocomplete
- Añadido atributo `debounce`, #7413
- Upload
- Añadidos los atributos `limit` and `on-exceed` para limitar la cantidad de archivos, #7405
- DateTimePicker
- Añadido el atributo `time-arrow-control` para activar `arrow-control` del TimePicker anidado, #7438
- Layout
- Añadido un nuevo breakpoint `xl` para viewport más ancho que 1920px
- Table
- Añadido el atributo `span-method` para combinar celdas
- Añadido el método `clearSort` para borrar la clasificación programáticamente
- Añadido el método `clearFilter` para limpiar el filtro de forma programática
- Para las filas ampliables, cuando se amplía una fila, se añadirá una clase `.expanded` a su lista de clases, para que pueda personalizar su estilo.
- Atributo de `size` añadido
- Añadido el método `toggleRowExpansion` para expandir o contraer filas expandibles programáticamente.
- Añadido el atributo `cell-class-name` para asignar el nombre de la clase para las celdas
- Añadido atributo `cell-style` para dar estilo a las celdas
- Añadido atributo `header-row-class-name` para asignar el nombre de clase para las filas de encabezado.
- Añadido un atributo `header-row-style` para el estilo de encabezado
- Añadido el atributo `header-cell-class-name` para asignar el nombre de la clase para las celdas de encabezado.
- Añadido el atributo `header-cell-style` a las celdas de encabezado de estilo
- El atributo prop de TableColumn ahora acepta las notaciones `object[key]`
- Atributo de `index` añadido para TableColumn para personalizar índices de filas
- Select
- Añadido el atributo `reserve-keyword` para reservar la palabra clave de búsqueda actual después de seleccionar una opción.
#### Bug fixes
- DatePicker
- Arreglado `v-model` que devolvia el segundo día de la semana seleccionada en modo week #6038
- Arreglado el primer input comenzaba borrado con el type `daterange` #6021
- DateTimePicker
- Arreglado DateTimePicker y TimePicker que se afectaban entre sí cuando se seleccionaban #6090
- Arreglado la hora y el segundo podian estar más allá del límite al seleccionar el tiempo #6076
- TimePicker
- Arreglado `v-model` que no se actualizaba correctamente cuando no tenia el foco #6023
- Dialog
- Arreglado textos que tenian bordes borrosos al abrir y cerrar dropdowns anidados #6088
- Select
- Rendimiento mejorado. Ahora Vue dev-tool no se bloqueará cuando un gran número de Selects sean destruidos #6151
- Table
- Corregido un bug de Table permanecía oculto cuando su elemento padre tenia el atributo `display: none`
- Arreglado Table ahora amplia su ancho cuando el elemento padre tiene `display: flex`
- Arreglado un bug que corregía las columnas de una tabla con slot con nombre `append` que desaparecia cuando los datos eran recuperados dinámicamente.
- Arreglado el atributo `expand-row-keys` que no funcionan con el valor inicial
- Fallo del filtro corregido al actualizar los datos
- Se ha corregido un error de cálculo de la disposición de columnas fijas con cabeceras agrupadas.
- Corregido un error de `max-height` dinámico
- Corregidos algunos errores de cálculo de estilo
#### Breaking changes
- General
- Eliminado `theme-default`
- Compatible con Vue 2.5.2+ e IE 10+
- Evento `change` de componentes del formulario y evento `current-change` de Pagination ahora sólo se activa en la interacción del usuario.
- El atributo `size` del botón y los componentes del formulario aceptan ahora los tamaños `medium`, `small` y `mini`.
- Para facilitar el uso de iconos de terceros, los atributos `icon` de Button y Steps y los atributos `prefix-icon` y `suffix-icon` del input ahora requieren un nombre de clase completo.
- Dialog
- Atributo `size` eliminado. Ahora el tamaño de Dialog se puede configurar con `width` y `fullscreen`
- Ahora la visibilidad del Diálogo no puede ser controlada por `v-model`
- Rate
- `text-template` a sido renombrado a `score-template`
- Dropdown
- `menu-align` a sido renombrado a `placement`. Ahora soporta más posiciones
- Transfer
- `footer-format` a sido renombrado a `format`
- Switch
- Los atributos que comienzan con `on*` serán analizados en eventos en JSX, haciendo que todos los atributos `on*` de Switch no puedan trabajar en JSX. Por lo tanto, los atributos `on*` se renombran a `active-*`, y por consiguiente los atributos `off-*` se renombran a `inactivado-*`. Este cambio afecta a los siguientes atributos: `on-icon-class`, `off-icon-class`, `on-text`, `off-text`, `on-color`, `off-color`, `on-value`, `off-value`.
- Los atributos `active-text` y `inactive-text` ahora no tienen valores por defecto.
- Tag
- El atributo type acepta ahora `success`, `info`, `warning` y `danger`
- Menu
- Atributo `theme` eliminado. El color de Menu se puede configurar utilizando `background-color`, `text-color` y `active-text-color`
- Input
- Atributo `icon` eliminado. Ahora el icono del sufijo puede configurarse usando el atributo `suffix-icon` o el slot con nombre `suffix`.
- Eliminado el atributo `on-icon-click` y el evento `click`. Ahora para añadir el manejador de clics en los iconos, por favor use los slots con nombre.
- El evento `change` se comporta ahora como el nativo, que se activa sólo en la perdida del foco o presionando enter. Si necesita responder a las entradas de usuario en tiempo real, puede utilizar el evento `input`.
- Autocomplete
- Atributo `custom-item` eliminado. Ahora la plantilla de sugerencias del input se puede personalizar utilizando `scoped slot`
- Atributo `props` eliminado. Ahora puede utilizar el atributo `value-key` para designar el nombre de la clave del objeto de sugerencia del input para su visualización.
- Steps
- Atributo `center` eliminado
- Ahora Steps llenara su contenedor padre por defecto
- DatePicker
- Los parámetros del evento `change` de DatePicker son ahora el valor vinculante en sí mismo. Su formato es controlado por `value-format`
- Table
- Soporte eliminado para personalizar la plantilla de columnas mediante `inline-template`
- `sort-method` ahora se alinea con `Array.sort`. Debería devolver un número en lugar de un booleano
- El slot `append` se desplazo fuera del elemento `tbody` para evitar múltiples renderizados.
- Evento `expand` se renombro a `expand-change`
- Los parametros de los métodos `row-class-name` y `row-style` son ahora un objeto
# #
<i><sup>*</sup> El procesamiento dinámico de HTML arbitrario en su sitio web puede ser muy peligroso porque puede conducir fácilmente a [ataques XSS](https://en.wikipedia.org/wiki/Cross-site_scripting). Por lo tanto, cuando `dangerouslyUseHTMLString` está encendido, por favor asegúrese de que el contenido de `message` es confiable, y **nunca** asigne el `message` al contenido proporcionado por el usuario.</i>``
+952
View File
@@ -0,0 +1,952 @@
## Changelog
### 2.6.1
*2019-03-03*
#### Bug fixes
- **Don't specify node version** (by @iamkun in #14546)
- Fix doc directory in `deloy-faas.sh` (by @ziyoung in #14553)
- Fix date style issue in changelog for 2.6.0 (by @island205 in #14547)
- Fix doc typo (by @wack6 in #14552)
### 2.6.0
*2019-03-01*
#### New features
- Timeline
- Add timeline component (by @jikkai in #14248)
- DropdownItem
- Add icon prop to `el-dropdown-item` (by @gabrielboliveira in #14088)
- Input
- Add show-password props (by @phshy0607 in #13966)
- Select
- Add slot `empty` (by @elfman in #13785)
- Autocomplete
- Add highlight-first-item prop (by @YamenSharaf in #14269)
- I18n
- Created Armenian locale (by @hamletbarsamyan in #14214)
- Docs
- French translation (by @smalesys in #12153, #14418, #14434)
#### Optimization
- Alert
- Update alert description default slot class (by @iamkun in #14488)
- Input
- Update input password (by @iamkun in #14480)
- InputNumber
- Remove unnecessary parseFloat (by @JuniorTour in #14172)
- Menu
- Add support for `el-menu-item` without index (by @georgyfarniev in #13298)
- Table
- Remove some html DOM operations (by @elfman in #13643)
- Upload
- Optimize code (by @elfman in #13973)
- Popup
- Optimize code (by @KAionro in #14413)
- Docs
- Add more detail about how to run play mode for contribution (by @island205 in #14355)
- Warn input as a controlled component. (by @wacky6 in #14463)
- Update Table doc (by @luguokong in #14329)
- Update input doc (by @iamkun in #14437)
- Update custom-theme docs (by @wangguohao in #14297)
- Make the icon style change when hover on it (by @tuxinghuan in #14295)
- Build
- Minimizing css and js for Element doc site (by @iamkun in #14430)
- Speeding up webpack (by @hetech in #14484)
- Use cli to select release version (by @hetech in #14354)
- Install stale for issue handling (by @island205 in #14392)
#### Bug fixes
- Menu
- Fix subMenu focus bug when switch browser tab (by @liupl in #13976)
- MessageBox
- Fix type definition (by @NateScarlet in #14278)
- ScrollBar
- Prevent right button click on thumb (by @xifeiwu in #14196)
- Switch
- Trigger form validation if value changes (by @hetech in #14426)
- Table
- Make toggleAllSelection method an instance method (by @letanure in #14075)
- Tabs & Dropdown
- Fix style (by @hetech in #14452)
- Tree
- Empty-text tips are different from tables (by @ColinCll in #14331)
- Docs
- Fix DatetimePicker format doc error (by @iamkun in #14290)
- Spelling issue in datepicker documentation (by @helmut in #14481)
- Fix pagination doc style (by @liuchuzhang in #14451)
### 2.5.4
*2019-02-01*
#### Corrections de bugs
- Build: Correction d'un problème de configuration de babel qui cassait la transition collapse (par @island205 dans #14282)
### 2.5.3
*2019-01-31*
#### Optimisation
- Optimisation du code de Message (par @vok123 dans #14029)
- Suppression des gh-pages (par @ziyoung dans #14266)
- Ajout du lien IssueHunt (par @island205 dans #14261)
#### Corrections de bugs
- Correction d'une erreur du module UMD côté serveur (par @island205 dans #14242)
- Correction du style du TabBar actif (par @iamkun dans #14240)
- Correction d'une erreur de code dans la démo de Table (par @xunmeng dans #14253)
### 2.5.2
*2019-01-27*
#### Optimisation
- Docs:
- Mise à jour du ChangeLog ES 2.5.1 (par @Gonzalo2310 dans #14231)
#### Corrections de bugs
- Build:
- Suppression des commentaires non supprimés dans le module umd `lib/index.js` (par @island205 dans #14233)
- Correction d'une erreur d'exportation dans le module commonjs utilisé dans nuxt.js (par @island205 dans #14232)
- Correction des problèmes de build 2.5.1 (par @iamkun dans #14228)
### 2.5.1
*2019-01-26*
#### Optimisation
- DatePicker: surbrillance du mois et de l'année courants (par @Debiancc dans #14211)
- Mise à jour du changelog 2.5.0 (par @wacky6 dans #14217)
#### Corrections de bugs
- Correction d'un problème d'exportation due par la mise à jour du webpack (par @island205 dans #14220)
- Conservation de la docs 2.4.11 && nouveau sous-dossier pour 2.5+ (par @iamkun dans #14222)
### 2.5.0
*2019-01-25*
#### Nouvelles fonctionnalités
- DatePicker
- Ajout de l'attribut `validate-event` (par @ziyoung dans #13531)
- DateTimePicker
- `pickerOptions` supporte l'option `selectableRange` (par @eeeeeeeeeeeason)
- Tag
- Ajout de l'événement `click` (par @licdream dans #14106)
- I18n
- Support de la langue kirghize (par @zzjframework dans #14174)
#### Optimisation
- Mise à niveau vers webpack@4 (par @jikkai dans #14173)
- Input
- Simplification de l'implémentation, suivant un flux de données à sens unique. Correction de plusieurs bugs liés. (par @wacky6 dans #13471)
- Mise à jour du fichier Axure avec de nouveaux composants (par @ziyoung dans #13773)
#### Corrections de bugs
- Autocomplete
- Correction de la dernière ligne du menu déroulant qui était coupée (#13597) (par @ziyoung)
- Correction d'une flèche de popper manquante (#13762) (par @liuchuzhang)
- Carrousel
- Nettoyage du timer lorsque le composant est détruit (#13820) (par @elfman)
- Cascader
- Suppression de la propriété obsolète des props calculées (#13737) (par @iamkun)
- Correction de la définition du type CascaderOption dans TypeScript (#13613) (par @NateScarlet)
- Correction de l'icône couvrant le texte (#13596) (par @ziyoung)
- Checkbox
- Refonte du style (par @PanJiaChen)
- DatePicker
- Ajout d'un `key` de v-for manquant dans TimeSpinner (#13547) (par @Ende93)
- Correction du surlignage de la semaine dans la bordure de l'année (#13883) (par @suyi91)
- Input
- Correction de la référence de textarea dans le DOM (#13803) (par @laomu1988 @island205)
- Pagination
- La valeur d'entrée ne sera pas inférieure à 1 (#13727) (par @elfman)
- Popover
- Correction d'un problème de popover avec le déclencheur de hover (#13104) (par @goldengecko)
- Correction d'une fuite de mémoire de l'instance popper (#13988) (par @qpxtWhite)
- Radio
- Refonte du style (par @ohhhoney1)
- Table
- Amélioration du tri des tables en cliquant sur la flèche de tri (#12890) (par @ohhoney1)
- Correction d'un problème d'alignement vertical du texte vide sur IE10+ (#13638) (par @imzjy)
- Correction de la documentation sur le type d'index (#13628) (par @ilovefafafa)
- Correction du problème d'affichage `show-summary` lorsque le header multi-niveaux est fixe (#13914) (par @luckyCao)
- Tabs
- Correction d'un bug de défilement automatique (#13696) (par @iamkun)
- Obtenir l'onglet correct par le nom de l'onglet (#13705) (par @iamkun)
- Utilisez paneName au lieu de name pour déterminer le style du panneau (#13733) (par @iamkun)
- Tree
- Correction de la propriété `showCheckbox` sur `Tree` qui ne pouvait pas affecter leurs `tree-node` enfants(par @KidneyFlower)
- Mise à jour des fichiers de doc et de définition (#13540) (par @ziyoung)
- Upload
- Ajout de le propriété `url` au fichier uploadé lorsque `list-type` est modifié (#13771) (par @elfman)
- Slider
- Correction de l'indentation du code source (#13955) (par @wacky6)
- I18n
- Ajout des traductions manquantes en catalan (par @jaumesala)
- Ajout de la traduction russe manquante (#13658) (par @justlp)
- Correction des traductions en finnois (#14137) (par @jenkrisu)
- Doc
- Mise à jour de la documentation espagnol depuis la 2.4.11 (#13522) (par @Gonzalo2310)
- Autres
- Suppression d'un script inutile (par @ziyoung)
- Correction des ancres (#13753) (par @iamkun)
- Correction de l'incohérence des majuscules dans la documentation (par @wonderjar)
- Ajout du QR code du chat DingDing au readme (#13957) (par @iamkun)
- Ajout des logs yarn au .gitignore (#13922) (par @mimimi)
- Suppression du sponsor duotai (#14156) (par @island205)
- Mise à jour du QR code dans le readme (#13960) (par @iamkun)
- Mise à jour du lien CDN, correction d'une typo (par @ziyoung)
### 2.4.11
*2018-11-21*
- Revert pr #13296. Correction d'un clic sur Menu externe causant l'effondrement du SubMenu, #13478
- Ajustement des points de rupture media query sur petit écran (xs), #13468 (par @alekoshen712)
### 2.4.10
*2018-11-16*
- Correction des clics multiples sur Select pour afficher la liste déroulante, #13268
- L'icône d'effacement des champs n'est pas affichée lorsque Form est désactivé, #13208
- Ajustement des styles de Select, Progress, Autocomplete, Tooltip, Collaspe, TimePicker, #13188 (par @porcelainHeart) #13210 #13266 #13266 #13257 #13290 #13347 (par @PanJiaChen)
- Ajout de l'attribut `loop` dans le composant Carrousel, #13217
- Lorsque les données de Table changent, la ligne en surbrillance reste, #13200
- Le slot du header de Table peut recevoir des paramètres, #13263
- La méthode `clearFilter` de Table peut recevoir des arguments, #13176
- La bulle d'aide n'est plus créée lorsqu'il n'y a pas de contenu dans la cellule de Table, #13152 (par @rongxingsun)
- Le contenu de la zone de saisie du panneau ColorPicker peut être affiché correctement, #13278
- ColorPicker ne déclenche plus la validation des formulaires lors du glisser-déposer, #13299
- InputNumber: ajout de la méthode `select`, #13286 (par @st-sloth)
- AutoComplete: ajout de l'événement `clear`, #12171(par arthurdenner) #13326
- Vous pouvez fermer Menu en cliquant à l'extérieur, #13296
- La méthode `validateField` du formulaire peut recevoir des arguments, #13319
- Cascader: ajout de l'événement `visible-change`, #13415
- DatePicker: a ajout d'un slot pour les séparateurs d'intervalle, #13272 (par @milworm)
- Tree: ajout des propriétés `iconClass` et `currentNodeKey`, #13337 #13197 (par @isnifer)
- Progress: ajout du texte de statut #13198 (par @ali-master)
- Correction de `defaultCheckedKeys` de Tree, #13349 (par @dive2Pro)
### 2.4.9
*2018-10-26*
- Le paramètre `clearValidate` de Form supporte les strings #12990 (par @codinglobster)
- Ajout de l'attribut `type` pour Badge, #12991
- Les utilisateurs peuvent utiliser scoped-slot pour personnaliser l'en-tête de colonne de Table #13012 (par @ivanseidel)
- Correction du champ de Select incapable d'entrer du texte sous IE, #13034 (par @GaliMU)
- Les options Select ne s'enroule pas lorsque l'espace est suffisant, #12329 (par @akki-jat)
- Lorsque la liste déroulante de Select est ouverte, l'icône de la flèche s'affichera également correctement, #12353 (par @firesh)
- Correction de l'attribut de taille de Select qui ne fonctionnait pas, #13070
- La sélection de plusieurs valeurs peut aussi être effacée, #13049 (par @ZSkycat)
- Correction du dernier TabNav qui ne pouvait pas être supprimé, #13039
- Correction d'un problème d'affichage du label TabNav, #13178
- Ajout d'un slot de titre pour Alert, #13082 (par @Kingwl)
- Correction d'un problème où le contenu de l'infobulle de Table était incorrect, #13159 (par @elfman)
- Optimisation de l'animation de Upload lorsque le fichier est supprimé, #12987
- Style ajusté pour InputNumber lorsque le bouton de commande n'est pas affiché, #13052
### 2.4.8
- Ne pas afficher le contour lorsque le Switch est focus, #12771
- Correction du style de Dropdown dans ButtonGroup, #12819 (par @bluejfox)
- Ajout d'un événement d'ouverture pour Dialog, #12828
- Correction de l'ordre d'affichage incorrect de TabNav, #12846
- Correction d'un problème qui empêchait les Tabs de défiler jusqu'à l'onglet sélectionné, #12948
- Correction d'un problème de l'identificateur qui ne s'affiche pas lorsque le noeud de Tree est glissé, #12854
- Le paramètre de l'événement validation du formulaire contient le message de validation #12860 (par @YamenSharaf).
- Correction de DatePicker pour ne pas vérifier la validité du temps d'entrée de l'utilisateur, #12898
- Correction d'un problème avec l'attribut `render-header` de l'en-tête de table qui ne fonctionnait pas, #12914
### 2.4.7
*2018-09-14*
- Correction de DatePicker ne déclenchant pas la validation du formulaire, #12328 #12348
- Correction des erreurs lancées par DatePicker en mode multiple, #12347
- Correction d'une position incorrecte du spinner de DatePicker, #12415 (par @rang-ali)
- Correction du remplissage automatique de la zone de saisie de DatePicker, #12521 (par @abdallanayer)
- Correction du champ non-subrillant dans Cascader, #12341
- Correction d'un mauvais ordre de Tabpane, #12346
- Correction d'une position incorrecte du curseur ColorPicker, #12376 (par @cnwhy)
- Correction du style de SubMenu, #2457
- Correction de la surbrillance après la sélection de SubMenu, #12479
- Correction des valeurs incorrectes sélectionnées par Cascader, #12508 (par @huangjinqiang)
- Correction d'une valeur incorrecte dans le champ d'entrée Pagination, #12525
- Correction de l'ordre dans lequel la Pagination déclenche les événements, #12530
- Correction des filtres de table non-affichés, #12539
- Correction de l'arbre incapable de supprimer des nœuds, #12684
- Correction de la hauteur de Select Input changeant en mode simple, #12719
- Correction d'un style du label de FormItem sous forme imbriquée, #12748
- Ajout de l'attribut `autocomplete` pour Input, `auto-complete` devenant obsolète, #12514 (par @axetroy)
- Ajout des slots-scope pour Form pour afficher les informations de validation, #12715 (par @YamenSharaf)
### 2.4.6
*2018-08-09*
- Correction de Table n'affichant pas l'icône de filtre lorsque `filters` est un tableau vide, #12165
- Correction de Menu ne sauvegardant pas l'état actif lorsque `collapse` change, #12178 (par @elfman)
- Correction du Cascader n'échappant pas les caractères spéciaux poue les Regexp, #12248
- Correction d'un bouton Radio désactivé affichant l'ombre d'une case lorsqu'on clique dessus, #12262
- Correction de arrow key qui n'a pas d'effet lorsque la valeur par défaut est `undefined`, #12322
- Correction de la fonction de requête de Select non-stabilisée en mode multi, #12181
- Correction du mot-clé de la requête Select disparaissant en mode multi, #12304
- Correction d'une largeur incorrecte de Dialog lorsqu'il est affiché en plein écran, #12203
- Correction de l'affichage incorrect de Main sur IE, #12237
- Correction de Input déclenchant deux validations de formulaire, #12260
- Correction de l'ajout d'un nouveau nœud d'arborescence provoquant la disparition des nœuds, #12256
- Correction d'un nœud d'arborescence non supprimé après avoir glissé, #12279
- Correction du Popover non-visible quand InputNumber a le focus, #12284
- Ajout de l'attribut `popper-append-to-body` pour Autocomplete, #12241
- Ajout du support du modificateur `sync` pour l'attribut `page-size` de Pagination, #12281
### 2.4.5
*2018-07-26*
- Correction du réglage de Table `class-name` qui ne fonctionne pas pour les colonnes `expand`, #12006
- Ajout de la méthode `toggleAllSelection` pour Table, #12047
- Correction d'une mauvaise position du slot de suffixe lorsque Input contient Select, #12108
- Correction de `line-height` de l'option impossible à régler, #12120
- Correction de TimeSelect avec la valeur par défaut `null` ne pouvant être assigné après avoir exécuté `resetField`, #12010
- Correction d'un événement keydown qui n'étant pas arrow key ne fonctionne pas dans Tree, #12008
- Correction d'un nœud parent vérifié en mode lazy, #12106
- Ajout du paramètre `includeHalfChecked` pour getCheckedNodes de Tree, #12014
### 2.4.4
*2018-07-13*
- Correction du déclenchement de la validation de Select après la réinitialisation du formulaire, #11837
- Correction d'une mauvaise position du slot `suffix` de Input lorsque le slot `suffixe` est avec le slot `append`, #11951
- Correction de Input affichant toujours l'icône clear même en lecture seule, #11967
- Correction d'un nœud d'arborescence coché lorsqu'il est désactivé, #11847
- Correction des `default-checked-keys` qui ne fonctionnait pas, #11971
- Correction de `empty-text` non visible lorsque le noeud de Tree est filtré, #11971
- Correction de la position du `empty-text` surdimensionné dans Table, #11965
- Correction de la surbrillance de la ligne de Table lorsque `current-row-key` est assignée à `null`, #11866
- Correction de l'affichage de la liste déroulante des filtres lorsque `filters` est un tableau vide, #11864
- Correction du label de Radio qui n'arrête pas la propagation des événements, #11912
### 2.4.3
*2018-07-03*
- Correction de `allow-drop` qui ne fonctionnait pas correctement lorsque les nœuds de Tree avaient une hauteur personnalisée, #11797
- Maintenant vous pouvez passer un paramètre à la méthode `clearValidate` du formulaire, en spécifiant quels résultats de validation FormItems doivent être effacés, #11821
- Ajout de l'attribut `distinguishCancelAndClose` pour MessageBox, #11831
### 2.4.2
*2018-06-26*
- Maintenant `class-name` et `label-class-name` de Table sont réactifs, #11626
- Correction de Table qui mettait toujours en surbrillance la ligne cliquée lorsque `highlight-current-row` était `false`, #11646
- Correction d'un bug de style de ButtonGroup lorsqu'il n'a qu'un seul bouton `round` ou `circle`, #11605
- Correction du style du Select de Pagination, #11622
- Correction de la méthode `open` du menu quand `collapse` est dynamiquement changé, #11646
- Ajout des paramètres `activeName` et `oldActiveName` au hook before-leave de Tabs, #11713
- Correction de Cascader ayant le focus après avoir cliqué à l'extérieur, #11588
- Correction de Cascader ne se fermant pas quand l'option est cliquée quand `change-on-select` est `true`, #11623
- La mise à jour programmatique de la valeur de Select déclenchera la validation du formulaire, #11672
### 2.4.1
*2018-06-08*
- Suppression du duplicata de la déclaration de type pour Autocomplete, #11388
- Correction du style de flèche déroulante de Select dans FireFox lorsqu'il est imbriqué dans Form, #11427
- Correction de l'icône de l'option de Select qui s'affiche toujours lorsque la valeur initiale est `null`, #11460
- Correction d'un Radio désactivé affichant l'ombre de la boîte quand on clique dessus, #11462
- Ajout de l'attribut `iconClass` pour MessageBox, #11499
- Ajout de l'attribut `stretch` pour Tabs, #11476
- Correction d'un problème d'ordre de rendu de TabPane lorsque Tabs est `lazy`, #11461
- Correction de Table ne conservant pas la surbrillance de la ligne actuelle lors de son ouverture, #11464
- Correction de l'état de la mise au point lorsque `before-leave` renvoie une promesse résolue, #11386
- Correction de la désactivation du Popover qui créait encore des poppers, #11426
- Correction de la boucle sans fin de Tree lorsqu'un nouveau noeud est ajouté en mode lazy, #11430 (par @wangjingf)
- Ajout de l'événement `closed` pour Dialog, #11490
### 2.4.0 Fullerene
*2018-05-28*
#### Nouvelles fonctionnalités
- Général
- L'outil de développement et le bundler sont basculés vers le webpack natif, #11216
- Vous pouvez maintenant définir globalement l'index z initial des popups, #11257
- Autocomplete
- Ajout de l'attribut `hide-loading`, #11260
- Button
- Vous pouvez maintenant utiliser l'attribut `size` sur les boutons circulaires pour contrôler leur taille, #11275
- InputNumber
- Ajout de l'attribut `precision`, #11281
- Tabs
- Ajout de l'attribut `before-leave`, #11259
- Ajout de l'attribut `lazy`, #11167by @Kingwl
- Table
- Ajout de la méthode `sort` pour trier manuellement la table, #11311
#### Corrections de bugs
- Input
- Correction d'un problème qui provoquait un re-rendu lors de l'utilisation de l'IME chinois pour saisir rapidement du texte, #11235 (par @STLighter)
- Popover
- Correction de l'erreur de console lorsque l'élément déclencheur est Radio ou Checkbox, #11265
- Breadcrumb
- Correction de l'attribut `to` ne supportant pas la mise à jour dynamique, #11286
- Upload
- Correction de l'erreur de console lorsqu'un fichier est résolu dans la promesse retournée de la méthode `beforeUpload`, #11297 (par @qusiba)
- Infobulle
- Correction d'une flèche mal positionnée lorsque le contenu est vide, #11335
- Autocomplete
- Correction de suggestions d'entrée incorrectes après la suppression rapide d'un mot-clé, #11323
- ColorPicker
- Correction d'un événement `active-change` se déclenchant incorrectement lorsque le menu déroulant du picker est fermé, #11304
- Table
- Correction d'une erreur de style du panneau de filtre surdimensionné, #11314
- Correction de la ligne actuellement sélectionnée qui n'était pas conservée lors du tri de la table, #11348
- Checkbox
- Correction d'une checkbox unique ne supportant pas la validation, #11271
- Radio
- Correction du Radio désactivé quand même sélectionné en appuyant sur la touche espace, #11303
- MessageBox
- Correction de la classe `el-popup-parent-hidden` qui n'était pas supprimée à l'ouverture successive de MessageBox, #11371
### 2.3.9
*2018-05-18*
- Correction d'une erreur lorsque les données source n'ont pas le champ spécifié par l'attribut `prop` d'une TableColumn, lorsque la souris se déplace dans les cellules de cette colonne, #11137
- L'attribut `lockScroll` des composants popup n'ajoute plus un style en ligne à l'élément parent, mais ajoute un nom de classe, #1111114
- Correction de l'icône de Progression qui ne s'affichait pas quand son `status` était une exception, #11172
- Correction de l'attribut `désactivé` qui ne fonctionnait pas dans la liste des résultats de filtrage du Cascader filtrable, #11185
- Correction d'un problème où la ligne étendue de la table ne peut pas être réduite si la source de données est mise à jour après son extension, #11186
- `setCurrentKey` de Tree accepte maintenant `null` comme paramètre pour annuler le noeud actuellement mis en surbrillance, #11205
### 2.3.8
*2018-05-11*
- Correction du saut du panneau DatePicker au mois courant après avoir choisi une date dans un mois non courant quand `type` est dates, #10973
- Correction de l'Input effaçable affichant toujours l'icône d'effacement en lecture seule, #10912
- Correction de la fermeture du panneau DatePicker sans changer la valeur déclenchant incorrectement l'événement `change`, #11017
- Correction d'un problème de navigation du clavier lorsque Select a regroupé les options, #11058
- Ajout du slot nommé `préfixe` pour Select, #11063
- Ajout de la méthode `clearValidate` pour FormItem, #11076
- Ajout de l'attribut `checkOnClickNode` pour Tree, #1111111
### 2.3.7
*2018-04-29*
- Correction d'une table qui ne mettait pas à jour ses largeurs de headers lorsque la barre de défilement disparaissait à cause du filtrage, #10834
- Correction de l'Input effaçable affichant toujours l'icône d'effacement lorsque sa valeur initiale est `null`, #10912
- Correction d'un déclencheur incorrect de l'événement `active-change` après avoir changé la valeur liée de ColorPicker par programmation, #10903 (par @zhangbobell)
- Correction du Select filtrable qui provoquait une boucle infinie lors de la navigation dans les options à l'aide du clavier si toutes les options sont désactivées, #10945
### 2.3.6
*2018-04-21*
- Correction d'un comportement incorrect du callback `allow-drop` de Tree lorsque le paramètre `type` est utilisé, #10821
- Maintenant vous pouvez entrer correctement les mots-clés dans le Select simple filtrable dans IE11, #10822
- Correction d'un Select simple déclenchant incorrectement un événement `blur` après avoir cliqué sur une option, #10822
### 2.3.5
*2018-04-20*
- Correction d'une surbrillance incorrecte dans le panneau DatePicker lorsque `type` est la semaine, #10712
- Correction d'un InputNumber vide lorsque sa valeur initiale est 0, #10714
- Ajout de l'attribut `automatic-dropdown` pour Select, #10042 (par @Seebiscuit)
- Correction de Rate désactivé quand même mis à jour par les touches de navigation, #10726 (par @Richard-Choooou)
- L'attribut `type` de DatePicker peut être `dates`, où vous pouvez choisir plusieurs dates dans un sélecteur, #10650 (par @Mini256)
- Ajout des événements `prev-click` et `next-click` pour Pagination, #10755
- Ajout de l'attribut `pager-count` pour Pagination, #10493 (par @chongjohn716)
- Ajout de `type` comme 3ème paramètre de l'attribut `allow-drop` de Tree, #10792
- Nous utilisons maintenant ResizeObserver pour détecter le redimensionnement des éléments DOM, #10779
### 2.3.4
*2018-04-12*
- Suppression du double de l'attribut `showTimeout` dans la déclaration TypeScript de SubMenu, #10566 (par @kimond)
- Vous pouvez maintenant personnaliser les éléments de Transfert en utilisant le scoped slot, #10577
- Correction d'un clic sur le bouton précédent désactivé et le bouton suivant de la pagination déclenchant toujours l'événement `current-current-change`, #10628
- Correction de Textarea affichant `undefined` dans le SSR lorsque sa valeur n'est pas définie, #10630
- Correction de la désactivation du style TabItem lorsque `type` est border-card, #10640
- Ajout de `$index` comme quatrième paramètre du `formatter` de la Table, #10645
- Correction de CheckboxButton non exporté dans la déclaration TypeScript, #10666
### 2.3.3
*2018-04-04*
- Ajout de l'attribut `shadow` pour Card, #10418 (par @YunYouJun)
- Correction de Badge masqué lorsque `value` est `0`, #10470
- Correction de quelques bugs de Tree, #10474 #10494
- Ajout de `placement` pour Autocomplete, #10475
- L'attribut `default-time` fonctionne également dans DateTimePicker, #10321 (par @RickMacTurk)
- Suppression du contour bleu de TabItem après que le navigateur n'ait plus le focus ou soit minimisé, #10503
- Ajout de l'attribut `popper-append-to-body` pour SubMenu, #10515
- Suppression du feedback visuel lors du survol d'un élément BreadcrumbItem non lié, #10551
- Correction de l'événement `change` d'InputNumber pour s'assurer que la valeur liée du composant est mise à jour dans le gestionnaire d'événements, #10553
### 2.3.2
*2018-03-29*
- Correction d'une régression d'Autocomplete, #10442
### 2.3.1
*2018-03-29*
- Correction d'une régression de `type` d'Inputqui n'était pas transmis à l'élément natif, #10415
- Ajout de la méthode `blur` pour Select, #10416
#### 2.3.0 Diamant
*2018-03-28*
#### Nouvelles fonctionnalités
- Table
- Maintenant le `formatter` de TableColumn peut être mis à jour dynamiquement, #10184 (par @elfman)
- Ajout de l'attribut `select-on-indeterminate`, #9924 (par @syn-zeta)
- Menu
- Ajout de l'attribut `collapse-transition`, #8809 (par @limichange)
- Input
- Ajout de la méthode `select`, #10229
- Ajout de la méthode `blur`, #10356
- ColorPicker
- Ajout de l'attribut `predefine`, #10170 (par @elfman)
- Tree
- Ajout des attributs `draggable`, `allow-drop` et `allow-drag`, et `node-drag-start`, `node-drag-enter`, `node-drag-leave`, `node-drag-leave`, `node-drag-over`, `node-drag-end` et `node-drop`, #9251 #10372 (par @elfman)
- Form
- La méthode `validate` a maintenant un deuxième paramètre, contenant l'information des éléments de formulaire qui ont échoué à la validation, #10279
- Ajout de l'événement `validate`, #10351
- Progress
- Ajout de l'attribut `color`, #10352 (par @YunYouJun)
- Button
- Ajout de l'attribut `circle`, #10359 (par @YunYouJun)
#### Corrections de bugs
- Form
- Correction du label de FormItem non aligné avec l'Input mixte, #10189
- Menu
- Désormais, le menu réduit n'affichera la bulle d'aide que lorsque le slot `title` de l'élément MenuItem est défini, #10193 (par @PanJiaChen).
- Pagination
- Correction d'un événement `current-current-change` qui se déclenchait incorrectement sans interaction de l'utilisateur, #10247
- DatePicker
- Maintenant, la date et l'heure dans le panneau déroulant sont correctement formatées en fonction de l'attribut `format`, #10174by @remizovvv
- Upload
- Correction de l'attribut `accept` qui ne fonctionnait pas quand `drag` est vrai, #10278
### 2.2.2
*2018-03-14*
- Ajout de l'événement `clear` pour Input, #9988 (par @blackmiaool)
- Maintenant la saisie manuelle de ColorPicker supporte les modes `hsl`, `hsv` et `rgb`, #9991
- Correction de DatePicker ne déclenchant pas l'événement `change` lorsque sa valeur initiale est effacée, #9986
- Maintenant les attributs liés à la classe d'icônes de Rate supportent les mises à jour dynamiques, #10003
- Correction de Table avec des colonnes fixes dont la hauteur n'est pas mise à jour correctement si `max-height` est réglé, #10034
- Maintenant le mode plage de DatePicker supporte la sélection inverse (en cliquant sur la date de fin, puis sur la date de début), #8156 (par @earlymeme)
- Ajout de l'attribut `désactivé` pour Pagination, #10006
- Ajout des événements `after-enter` et `after-leave` pour Popover, #10047
- Correction de Select ne déclenchant pas la validation lorsque l'utilisateur sélectionne une option après avoir exécuté `resetFields` du formulaire, #10105
- Correction des largeurs incorrectes des colonnes fixes de Table dans certains cas, #10130
- Correction de MessageBox héritant de l'attribut `title` de son instance précédente lorsqu'il était appelé sans `title`, #10126 (par @Pochodaydaydayup)
- Ajout de l'attribut `input-size` pour Slider, #10154
- Ajout des événements `left-check-change` et `right-check-change` pour Transfer, #10156
### 2.2.1
*2018-03-02*
- Correction d'un rétrécissement de Aside, Header et Footer dans certaines mises en page, #9812
- Correction de Table avec un attribut `height` qui ne rendait pas dans SSR, #9876
- Correction d'une Table extensible ne calculant pas sa hauteur lorsqu'une rangée est agrandie, #9848
- Correction d'un événement `change` qui ne se déclenchait pas lors de la saisie manuelle de la date dans DateTimePicker, #9913
- Correction de Select affichant ses options lorsque la boîte de saisie est cliquée avec le bouton droit de la souris, #9894 (par @openks)
- Ajout de l'attribut `tooltip-class` pour Slider, #9957
- Maintenant Select garde le focus après la sélection, #9857 (par @Seebiscuit)
- Ajout de l'attribut `target-order` pour Transfer, #9960
### 2.2.0 Graphite
*2018-02-12*
#### Nouvelles fonctionnalités
- Menu
- Ajout des attributs `popper-class` et `disabled` pour le sous-menu, #9604 #9771
- Le menu horizontal prend maintenant en charge le sous-menu multicouche, #9741
- Tree
- Ajout de l'évènement `node-contextmenu`, #9678
- Vous pouvez maintenant personnaliser le modèle de nœud en utilisant un slot avec portée, #9686
- Ajout des méthodes `getNode`, `remove`, `remove`, `append`, `insertBefore`, `insertAfter`, `getCheckedKeys`, `getHalfCheckedNodes`, `getHalfCheckedNodes`, `getHalfCheckedKeys` et de l'événement `check`, #9718 #9730
- Transfer
- Ajout de la méthode `clearQuery`, #9753
- Select
- Ajout de l'attribut `popper-append-to-body`, #9782
#### Corrections de bugs
- Table
- Correction d'un clic sur l'icône d'expansion d'une ligne extensible qui déclenche l'événement `row-click`, #9654
- Correction de la mise en page non mise à jour lorsque la largeur des colonnes est modifiée par glisser-déposer de l'utilisateur, #9668
- Correction d'un problème de style lorsque la ligne de résumé coexiste avec des colonnes fixes, #9667
- Container
- Les composants fixes de Container ne s'étirent pas dans IE11, #9655
- Loading
- Correction du chargement n'apparaissant pas lorsque la valeur de `v-loading` est changée en true dans le hook `mounted`, #9722
- Switch
- Correction de deux événements de clics natifs déclenchés lorsque Switch est cliqué, #9760
### 2.1.0 Charcoal
*2018-01-31*
#### Nouvelles fonctionnalités
- Cascader
- Ajout des événements `focus` et `blur`, #9184 (par @viewweiwu)
- Table
- La méthode `filter-method` a maintenant un troisième paramètre `column`, #9196 (par @liyanlong)
- DatePicker
- Ajout des attributs `prefix-icon` et `clear-icon`, #9237 (par @AdamSGit)
- Ajout de l'attribut `default-time`, #9094 (par @nighca)
- Le format `value-format` supporte maintenant `timestamp`, #9319 (par @wacky6)
- InputNumber
- Maintenant la valeur liée peut être `undefined`, #9361
- Select
- Ajouté l'attribut `auto-complete`, #9388
- Form
- Ajout de l'attribut `désactivé`, #9529
- Ajout de l'attribut `validateOnRuleChange`, #8141
- Notification
- Ajout de la méthode `closeAll`, #9514
#### Corrections de bugs
- InputNumber
- Correstion du reset lors de la saisie du point des nombres décimaux, #9116
- Dropdown
- Correction du mauvais positionnement du menu déroulant lorsque la page n'a qu'une barre de défilement horizontale dans certains navigateurs, #9138 (par @banzhuanmei)
- Table
- Correction d'une erreur dans le calcul du nombre de colonnes fixes après les changements de données des colonnes, #9188by @kolesoffac
- Correction de la bordure de la dernière colonne de l'en-tête groupé qui n'était pas correctement affichée, #9326
- Correction d'un positionnement incorrect de l'en-tête du tableau dans Safari, #9327
- Correction de la réduction des lignes extensibles lorsque les données de la table changent, #9462
- Correction de rendus multiples inutiles dans certaines conditions, #9426
- Correction d'une erreur de calcul de la largeur de colonne lors de la modification de `width` de TableColumn, #9426
- Loading
- Correction de Loading ne se cachant pas correctement dans certaines conditions, #9313
- DatePicker
- Correction de la méthode `focus` qui ne fonctionnait pas en mode "range", #9437
- Correction du clic sur le bouton "now" qui sélectionnait toujours la date actuelle même si elle était désactivée, #9470 (par @wacky6)
- Correction d'une date trop serrée lors de la navigation, #9577 (par @wacky6)
- Steps
- Correction d'une erreur de style dans IE 11, #9454
#### Changements
- Menu
- Le menu contextuel en mode `collapse` s'ajoute maintenant directement à `body`, de sorte qu'il est visible lorsqu'il est imbriqué dans Aside, #9263
- Table
- Maintenant, cocher les cases dans la Table multi-sélection ne déclenche pas l'événement `row-click`, #9467
- Loading
- Le `z-index` du masque de chargement non plein écran est changé à 2000. Le `z-index` du masque de chargement plein écran se mettra à jour dynamiquement avec les composants popup, #9522
- Dropdown
- Les attributs `show-timeout` et `hide-timeout` ne fonctionnent maintenant que lorsque le déclencheur est `hover`, #9573
### 2.0.11
*2018-01-08*
- Correction d'un problème de couleur de bordure de Select dans les slots `prepend` ou `append` de Input, #9089
- Correction du paramètre `remove-tag` de l'événement Select, #909090
- Ajout des attributs `show-timeout` et `hide-timeout` pour le sous-menu, #8934 (par @HugoLew)
- Correction d'un style Tooltip manquant de `show-overflow-tooltip` lors de l'importation de Table sur demande, #9130
- Correction d'un dysfonctionnement du tri des colonnes de la table après l'exécution de `clearSort` sur cette colonne, #9100 (par @zEmily)
- Le fichier de configuration i18n pour le tchèque est renommé de `cz` en `cs-CZ`, #9164
### 2.0.10
*2017-12-29*
- Calcul erroné de la hauteur du tableau lorsque la colonne fixe et la ligne de somme coexistent, #9026
- Correction d'un style de couleur non compilé du texte vide dans le tableau, #9028
- Maintenant, DatePicker n'émet que l'événement `change` quand la valeur est vraiment changée, #9029 (par @remizovvvv)
- Ajout de l'attribut `tabindex` pour Input, #9041 (par @dicklwm)
### 2.0.9🎄
*2017-12-24*
- Ajouté la fonction de hook "avant suppression" pour Upload, #8788 (par @firesh)
- Correction de la valeur initiale de `error` qui ne fonctionnait pas pour FormItem, #8840
- La directive Loading prend maintenant en charge le nom de classe personnalisé grâce à l'attribut `element-loading-custom-class`, #8826 (par @earlymeme)
- Correction CarouselItem devenant invisible lorsque les données sont mises à jour de manière asynchrone, #8921
- Ajout de l'attribut `renderAfterExpand` pour Tree, #8972
### 2.0.8
*2017-12-12*
- Ajout de la documentation en espagnol
- Correction du `show-timeout` de Dropdown qui ne fonctionnait pas quand le déclencheur est click, #8734 (par @presidenten)
- Correction du temps de validation des formulaires pour les règles dont le déclencheur est blur, #8776
- Correction d'un événement de blur de DatePicker avec intervalle, #8784
- L'attribut `format` de TimePicker supporte maintenant AM/PM, #8620 (par @firesh)
### 2.0.7
*2017-11-29*
- Correction du style du bouton de type texte désactivé, #8570
### 2.0.6
*2017-11-29*
- Correction d'un bug de style des icônes de tri de la table, #8405
- Correction du mécanisme de déclenchement de Popover lorsque son `trigger` est manuel, #8467
- Ajout des attributs `prefix-icon` et `suffix-icon` pour Autocomplete, #8446 (par @liyanlong)
- Ajout de l'attribut `separator` pour Cascader, #8501
- Ajout de l'attribut `clearable` pour Input, #8509 (par @lbogdan)
- Ajout de l'attribut `background` pour Pagination, #8553
### 2.0.5
*2017-11-17*
- Correction de la régression Popover, Tree, Breadcrumb et Cascader dans 2.0.4, #8188 #8217 #8283
- Correction d'une fuite de mémoire de la directive `clickoutside`, #8168 #8225 (par @badpunman @STLighter)
- Correction de la hauteur du Select multiple lorsque sa valeur est effacée, #8317 (par @luciy)
- Ajout de l'attribut `collapse-tags` pour plusieurs Sélectionner pour remplacer les balises par une ligne de texte, #8190
- Correction d'une consommation CPU élevée causée par la table cachée, #8351
- Maintenant vous pouvez utiliser la méthode `doLayout` de la Table pour mettre à jour sa disposition, #8351
### 2.0.4
*2017-11-10*
- Accessibilité améliorée pour Cascader, Dropdown, Message, Notification, Popover, Tooltip et Tree.
- Correction du redimensionnement de Container lorsque la largeur de la fenêtre d'affichage diminue, #8042
- Correction de la suppression incorrecte de `updateKeyChildren` dans Tree, #8100
- Correction de la hauteur de la CheckboxButton avec bordure lorsque le bouton est imbriqué dans un formulaire, #8100
- Correction d'une erreur d'analyse du menu pour les couleurs personnalisées, #8153 (par @zhouyixiang)
### 2.0.3
*2017-11-03*
- Correction des attributs `éditable` et `readonly` pour DatePicker avec intervalle, #7922
- Correction d'une erreur de style des Tabs imbriqués, #7941
- Correction d'une erreur de style de la dernière étape des Steps verticales, #7980
- Correction de la synchronisation du déclenchement de l'événement `current-current-change` pour Pagination, #7995
- Correction d'une infobulle non enregistrée dans Menu, #7995
### 2.0.2
*2017-10-31*
- Un clic droit sur les boutons de InputNumber ne changera pas sa valeur, #7817
- La méthode `validate` de Form peut maintenant attendre des validations asynchrones avant d'exécuter son callback, #7774 (par @Allenice)
- Correction de la plage de sélection de DatePicker ne fonctionnant pas dans les navigateurs Chromium 53-57, #7838
- Correction des icônes manquantes de prévisualisation et de suppression de Upload lorsque son `list-type` est picture-card, #7857
- Ajout de l'attribut `sort-by` pour TableColumn, #7828 (par @wangfengming)
- Correction de DatePicker affichant parfois un mauvais numéro d'année lors de la sélection de la première semaine en mode semaine, #7860 (par @hhh23485)
- Correction d'une erreur de style d'icône des Steps verticales, #7891
- La 'hot area' pour les flèches de nœud dans Tree est étendue, #7891
### 2.0.1
*2017-10-28*
- Correction d'une erreur de style de RadioButton et CheckboxButton, #7793
- Correction de TimePicker qui ne répondait pas au défilement de la souris dans certaines conditions, #7811
- Correction des styles incomplets de certains composants lors de l'importation à la demande, #7811
### 2.0.0 Carbon
*2017-10-27*
#### Nouvelles fonctionnalités
- Général
- Un nouveau thème : `theme-chalk`.
- L'accessibilité des éléments suivants est améliorée : Alert, AutoComplete, Breadcrumb, Button, Checkbox, Collapse, Input, InputNumber, Menu, Progress, Radio, Rate, Slider, Switch, Upload
- Ajout du typage TypeScript
- Toutes les icônes existantes sont redessinées. De nouvelles icônes sont ajoutées
- Ajout d'une série de classes basées sur les breakpoints qui masquent les éléments lorsque la taille de la fenêtre remplit certaines conditions
- Ajout des composants de mise en page : Container, Header, Aside, Main, Footer
- Vous pouvez maintenant configurer la taille des composants de manière globale. Lors de l'importation d'un élément, vous pouvez ajouter un objet de configuration global avec une propriété `size` pour configurer les tailles par défaut pour tous les composants.
- Button
- Ajout de l'attribut `round`. Il est utilisé pour les boutons à coins ronds #6643
- TimeSelect
- Vous pouvez maintenant naviguer en appuyant sur les touches `Up` et `Down`, et en appuyant sur `Enter` vous sélectionnez l'heure #6023.
- TimePicker
- Vous pouvez maintenant naviguer à l'aide des touches fléchées, et en appuyant sur `Entrée` vous sélectionnez l'heure #6050.
- Ajout de `start-placeholder` et de `end-placeholder`. Ce sont des placeholders pour les deux champs en mode intervalle #7169
- Ajout de l'attribut `farrow-control` pour faire tourner le temps avec les flèches #7438
- Tree
- Maintenant les noeuds enfants ne font pas de rendu avant la première ouverture #6257
- Ajout de l'attribut `check-descendants`. Il détermine si les nœuds enfants sont vérifiés lors du contrôle de leur nœud parent en mode `lazy` #6235
- Tag
- Ajouté l'attribut `size` #7203
- Datepicker
- Maintenant `timeFormat` peut formater le TimePicker quand le type est réglé sur `datetimerange` #6052
- Ajout de `start-placeholder` et de `end-placeholder`. Ce sont des placeholders pour les deux champs en mode intervalle #7169
- Ajout de l'attribut `value-format` pour personnaliser le format de la valeur liée, #7367
- Ajout de l'attribut `unlink-panels` pour dissocier les deux panneaux de date lors de la sélection d'une plage de dates
- MessageBox
- Ajout de l'attribut `closeOnHashChange` #6043
- Ajout de l'attribut `center` pour que le contenu puisse être centré #7029
- Ajout de l'attribut `roundButton` pour afficher les boutons ronds #7029
- Ajout de l'attribut `dangerouslyUseHTMLString`. Lorsqu'il est réglé sur `true`, `message` sera interprété comme une chaîne HTML<sup>\*</sup> #6043
- Ajout de l'attribut `inputType` pour assigner le type de l'input intérieur, #7651
- Dialog
- Ajout des attributs `width``fullscreen``append-to-body`. La boîte de dialogue peut maintenant être imbriquée
- Ajout de l'attribut `center` pour que le contenu puisse être centré #7042
- Ajout de `focus-after-closed``focus-after-open` pour améliorer l'accessibilité #6511
- ColorPicker
- Maintenant vous pouvez taper les couleurs dans le champ de saisie #6167
- Ajout des attributs `size` et `disabled` #7026
- Ajout de l'attribut `popper-class` #7351
- Message
- Maintenant la couleur des icônes peut être modifiée par CSS #6207
- Ajout de l'attribut `dangerouslyUseHTMLString`. Lorsqu'il est réglé sur `true`, `message` sera interprété comme une chaîne HTML<sup>\*</sup> #6207
- Ajout de l'attribut `center` pour que le contenu puisse être centré #6875
- Notification
- Ajout de l'attribut `position` pour configurer où Notification apparaît #6231
- Ajout de l'attribut `dangerouslyUseHTMLString`. Lorsqu'il est réglé sur `true`, `message` sera interprété comme une chaîne HTML<sup>\*</sup> #6231
- Ajout de l'attribut `showClose` pour cacher le bouton de fermeture #6402
- Rate
- Ajout de l'attribut `show-score` pour déterminer si le score actuel est affiché #6295
- Tabs
- Ajout de l'attribut `tab-position` #6096
- Radio
- Ajout des attributs `border` et `size` #6690
- Checkbox
- Ajout des attributs `border` et `size` #6690
- Alert
- Ajout de l'attribut `center` pour que le contenu puisse être centré #6876
- Menu
- Ajout des attributs `background-color`, `text-color` et `active-text-color` #7064
- Ajout des méthodes `open` et `close` pour ouvrir et fermer les sous-menus par programmation, #7412
- Form
- Ajout de l'attribut `inline-message` pour déterminer si le message de validation est affiché en ligne #7032
- Ajout de l'attribut `status-icon` pour afficher une icône de feedback après validation #7032
- Form et FormItem ont maintenant un attribut `size`. Les composants internes hériteront de cette taille s'ils ne sont pas spécifiés sur eux-mêmes, #7428
- La méthode `validate` retournera maintenant une promesse si le rappel est omis, #7405
- Ajout de la méthode `clearValidate` pour la validation des résultats pour tous les éléments de formulaire, #7623
- Input
- Ajout des attributs `suffixe` et `préfixe` des slots nommés, `suffixIcon` et `prefixIcon` pour ajouter du contenu dans la zone de saisie #7032
- Breadcrumb
- Ajout de l'attribut `separator-class` pour supporter les icônes comme séparateurs d'éléments #7203
- Steps
- Ajout de l'attribut `simple` pour activer les étapes de style simple #7274
- Pagination
- Ajout des attributs `prev-text` et `next-text` pour personnaliser les textes des pages précédente et suivante #7005
- Loading
- Maintenant vous pouvez personnaliser l'icône et la couleur de fond avec les propriétés `spinner` et `background` #7390
- Autocomplete
- Ajout de l'attribut `debounce`, #7413
- Upload
- Ajout des attributs `limit` et `on-exceed` pour limiter le nombre de fichiers, #7405
- DateTimePicker
- Ajout de l'attribut `time-arrow-control` pour activer `arrow-control` du TimePicker imbriqué, #743838
- Layout
- Ajout d'un nouveau point d'arrêt `xl` pour les fenêtres plus larges que 1920px
- Table
- Ajout de l'attribut `span-method` pour la fusion de cellules
- Ajout de la méthode `clearSort` pour effacer le tri par programmation
- Ajout de la méthode `clearFilter` pour effacer le filtre par programmation
- Pour les lignes extensibles, lorsqu'une ligne est étendue, une classe `.expanded` sera ajoutée à sa liste de classes, afin que vous puissiez personnaliser son style
- Ajout de l'attribut `size`
- Ajout de la méthode `toggleRowExpansionRowExpansion` pour ouvrir ou réduire les lignes extensibles par programmation
- Ajout de l'attribut `cell-class-name` pour assigner un nom de classe aux cellules
- Ajout de l'attribut `cell-style` pour le style des cellules
- Ajout de l'attribut `header-row-class-name` pour assigner un nom de classe aux lignes d'en-tête
- Ajout de l'attribut `header-row-style` pour le style d'en-tête
- Ajout de l'attribut `header-cell-class-name` pour assigner un nom de classe aux cellules d'en-tête
- Ajout de l'attribut `header-cell-style` pour le style des cellules d'en-tête
- L'attribut `prop` de la tableColumn accepte maintenant les notations `object[key]`
- Ajout de l'attribut `index` pour TableColumn pour personnaliser les index de lignes
- Select
- Ajout de l'attribut `reserve-keyword` pour réserver le mot-clé de la recherche courante après avoir sélectionné une option.
#### Corrections de bugs
- DatePicker
- Correction de `v-model` retournant le deuxième jour de la semaine sélectionnée en mode semaine #6038
- Correction de la première entrée effacée dans le type `daterange` #6021
- DateTimePicker
- Correction de DateTimePicker et TimePicker s'affectant l'un l'autre lors de la sélection #6090
- Correction de l'heure et de la seconde qui peuvent être au-delà de la limite en sélectionnant l'heure #6076
- TimePicker
- Correction de `v-model` qui ne se mettait pas à jour correctement lors du blur #6023
- Dialog
- Correction des textes ayant des bords flous lors de l'ouverture et de la fermeture des listes déroulantes imbriquées #6088
- Select
- Performances améliorées. Maintenant Vue dev-tool ne crashera pas quand un grand nombre de Select sont détruits #6151
- Table
- Correction d'un bug ou la table reste masquée lorsque son élément parent apparaît depuis `display : none`
- Correction de l'extension de la largeur de la table lorsque l'élément parent a `display : flex`
- Correction d'un bug qui corrigeait le fait que les colonnes d'une table avec l'emplacement `append` disparaissaient lorsque les données étaient récupérées dynamiquement
- Correction de l'attribut `expand-row-keys` qui ne fonctionnait pas avec la valeur initiale
- Correction d'une défaillance du filtre lors de la mise à jour de `data`
- Correction d'une erreur de calcul dans la mise en page des colonnes fixes avec en-têtes groupés
- Correction d'un bug dynamique de `max-height`
- Correction de quelques erreurs de calcul de style
#### Breaking changes
- Général
- Suppression de `theme-default`.
- Compatible avec Vue 2.5.2+ et IE 10+
- L'événement `change` des composants de formulaire et l'événement `current-current-change` de la pagination ne se déclenchent plus que lors de l'interaction de l'utilisateur
- L'attribut `size` de Button et les composants de formulaire acceptent maintenant `medium`, `small` et `mini`
- Pour faciliter l'utilisation d'icônes tierces, les attributs `icon` du bouton et des étapes, `prefix-icon` et `suffix-icon` d'Input nécessitent maintenant un nom de classe complet
- Dialog
- Suppression de l'attribut `taille`. Maintenant la taille de Dialog peut être configurée par `width` et `fullscreen`
- Maintenant la visibilité de Dialog ne peut plus être contrôlée par `v-model`
- Rate
- Le `text-template` est renommé `score-template`
- Dropdown
- `menu-align` est renommé en `placement`. Maintenant il supporte plus de positions
- Transfert
- le `footer-format` est renommé en `format`
- Switch
- Les attributs commençant par `on-**` seront analysés pour les événements dans JSX, ce qui rend tous les attributs `on-*` de Switch incapable de fonctionner en JSX. Ainsi, les attributs `on-**` sont renommés en `active-*`, et par conséquent les attributs `off-*` sont renommés en `inactive-*`. Cette modification affecte les attributs suivants: `on-icon-class`, `off-icon-class`, `on-text`, `off-text`, `off-text`, `on-color`, `off-color`, `on-value`, `off-value`
- Les attributs `active-text` et `inactive-text` n'ont plus de valeurs par défaut
- Tag
- L'attribut `type` accepte maintenant `success`, `info`, ` warning` et `danger`
- Menu
- Suppression de l'attribut `theme`. La couleur du menu peut être configurée en utilisant `background-color`, `text-color` et `active-text-color`
- Input
- Suppression de l'attribut `icon`. L'icône du suffixe peut maintenant être configurée à l'aide de l'attribut `suffix-icon` ou du slot `suffix-icon`
- Suppression de l'attribut `on-icon-click` et de l'événement `click`. Maintenant pour ajouter le gestionnaire de clic sur les icônes, veuillez utiliser les slots nommés
- L'événement `change` se comporte maintenant comme dans l'input natif, qui ne se déclenche qu'en cas de blur ou en appuyant sur Entrée. Si vous avez besoin de répondre à l'entrée de l'utilisateur en temps réel, vous pouvez utiliser l'événement `input`
- Autocomplete
- Suppression de l'attribut `custom-item`. Le template de suggestions d'entrée peut maintenant être personnalisé en utilisant `scoped slot`.
- Suppression de l'attribut `props`. Vous pouvez maintenant utiliser l'attribut `value-key` pour désigner le nom de clé de l'objet de suggestion d'entrée pour l'affichage.
- Steps
- Suppression de l'attribut `center`
- Maintenant le Steps va remplir son conteneur parent par défaut
- DatePicker
- Le paramètre de l'événement `change` de DatePicker est maintenant la valeur liée elle-même. Son format est contrôlé par `value-format`
- Table
- Suppression de la prise en charge de la personnalisation du modèle de colonne à l'aide de `inline-template`
- `sort-method` s'aligne maintenant avec `Array.sort`. Il devrait retourner un nombre au lieu d'un booléen
- L'emplacement `append` est déplacé à l'extérieur de l'élément `tbody` pour éviter les rendus multiples
- L'événement `expand` est renommé en `expand-change`
- Les paramètres de la méthode `row-class-name` et `row-style` sont maintenant un objet
##
<i><sup>*</sup> Rendre du HTML arbitraire de façon dynamique sur votre site Web peut être très dangereux car cela peut facilement mener à[des attaques XSS](https://en.wikipedia.org/wiki/Cross-site_scripting). Donc quand `dangerouslyUseHTMLString' est activé, assurez-vous que le contenu du `message' est fiable, et **ne jamais** assigner `message` au contenu fourni par l'utilisateur.</i>.
+953
View File
@@ -0,0 +1,953 @@
## 更新日志
### 2.6.1
*2019-03-03*
#### 修复
- **不再指定 node 版本** (by @iamkun in #14546)
- 调整 `deloy-faas.sh` 中的文档目录 (by @ziyoung in #14553)
- 调整 2.6.0 中 changelog 日期样式 (by @island205 in #14547)
- 修复拼写错误 (by @wack6 in #14552)
### 2.6.0
*2019-03-01*
#### 新特性
- Timeline
- 添加 Timeline 组件 (by @jikkai in #14248)
- DropdownItem
- `el-dropdown-item` 支持添加 icon (by @gabrielboliveira in #14088)
- Input
- 添加 `show-password` 属性,支持配置显示密码按钮 (by @phshy0607 in #13966)
- Select
- 添加 slot `empty` (by @elfman in #13785)
- Autocomplete
- 添加 `highlight-first-item` 属性,控制是否默认突出显示远程搜索建议中的第一项 (by @YamenSharaf in #14269)
- I18n
- 添加亚美尼亚语支持 (by @hamletbarsamyan in #14214)
- Docs
- 新增法语文档 (by @smalesys in #12153, #14418, #14434)
#### 优化
- Alert
- 组件对通过 slot 传入的 description 也应用默认样式类 (by @iamkun in #14488)
- InputNumber
-移除多余的 `parseFloat` (by @JuniorTour in #14172)
- Menu
- 支持 `el-menu-item` 不添加 index (by @georgyfarniev in #13298)
- Table
- 移除无用的 DOM 操作 (by @elfman in #13643)
- Upload
- 代码优化 (by @elfman in #13973)
- Popup
- 移除无用代码 (by @KAionro in #14413)
- Docs
- 添加更多文档说明如何贡献代码 (by @island205 in #14355)
- 添加 `el-input` 是受控组件的警示 (by @wacky6 in #14463)
- 优化 Table 的文档 (by @luguokong in #14329)
- 更新 Input 文档 (by @iamkun in #14437)
- 优化自定义主题文档 (by @wangguohao in #14297)
- 为 Icon 文档添加 hover 效果 (by @tuxinghuan in #14295)
- Build
- 压缩 Element 文档站的 JS 和 CSS 文件 (by @iamkun in #14430)
- 优化 Webpack 打包速度,从6分钟优化到1分多 (by @hetech in #14484)
- 添加 CLI 工具,选择版本号 (by @hetech in #14354)
- 使用 Stale 来管理过时(暂定1年)的 Issue 和 PR (by @island205 in #14392)
#### 问题修复
- Menu
- 修复浏览器标签切换引起的 focus 问题 (by @liupl in #13976)
- MessageBox
- 修复 TS 定义 (by @NateScarlet in #14278)
- ScrollBar
- 修复点击鼠标右键导致拖动的问题 (by @xifeiwu in #14196)
- Switch
- 添加 `validate-event` 属性,设置改变 Switch 状态时是否触发表单的校验 (by @hetech in #14426)
- Table
- 修复多 Table 实例共享 `toggleAllSelection` 方法,造成无法切换问题 (by @letanure in #14075)
- Tabs & Dropdown
- 修复样式问题 (by @hetech in #14452)
- Tree
- 与 Table 统一占位文样式 (by @ColinCll in #14331)
- Docs
- 修复 DatetimePicker 文档问题 (by @iamkun in #14290)
- 修复 DatePicker 文档拼写问题 (by @helmut in #14481)
- 修复分页组件文档样式问题 (by @liuchuzhang in #14451)
### 2.5.4
*2019-02-01*
#### 修复
- 构建: 修复 `.babelrc` 配置问题——导致 Tree 等组件没有动画 (by @island205 in #14282)
### 2.5.3
*2019-01-31*
#### 优化
- 优化 Message 的代码 (by @vok123 in #14029)
- 移除 gh-pages (by @ziyoung in #14266)
- 添加 IssueHunt 的链接 (by @island205 in #14261)
#### 修复
- 修复 UMD 包在服务器端运行出错的问题 (by @island205 in #14242)
- 修复 Tabbar 高亮时的样式 (by @iamkun in #14240)
- 修复 Table 示例代码的错误 (by @xunmeng in #14253)
### 2.5.2
*2019-01-27*
#### 优化
- 文档:
- 2.5.1 版本西班牙语文档更新 (by @Gonzalo2310 in #14231)
#### 修复
- 构建:
- 删除 umd 模块 `lib/index.js` 中本没有的注释 (by @island205 in #14233)
- 修复 nuxt.js 中关于 `export` 关键字的报错 (by @island205 in #14232)
- 修复发布 2.5.1 过程中的错误 (by @iamkun in #14228)
### 2.5.1
*2019-01-26*
#### 优化
- DatePicker:添加月、年高亮的样式(by @Debiancc in #14211
- 更新 2.5.0 changelog by @wacky6 in #14217
#### 修复
- 修复升级 Webpack 4 产生的问题,无法具名 `import` 组件,`ELEMENT.locale()` 调用报错。(by @island205 in #14220
- 恢复 2.4.11 文档 (by @iamkun in #14222)
### 2.5.0
*2019-01-25*
#### 新特性
- DatePicker
- 新增 `validate-event` 属性 (by @ziyoung in #13531)
- DateTimePicker
- `pickerOptions` 支持 `selectableRange` 选项 (by @eeeeeeeason)
- Tag
- 新增 `click` 事件 (by @licdream in #14106)
- I18n
- 新增 柯尔克孜语 (Kyrgyz) (by @zzjframework in #14174)
#### 优化
- 升级到 webpack@4 (by @jikkai in #14173)
- Input
- 简化内部实现,遵循单向数据流;修复若干相关 Bug (by @wacky6 in #13471)
- 更新 Axure 文件,增加新组件 (by @ziyoung in #13773)
#### 修复
- Autocomplete
- 修正下拉框最后一行显示不完整的问题 (by @ziyoung in #13597)
- 修正下拉框箭头 (by @liuchuzhang in #13762)
- Carousel
- 组件销毁时释放内部 Timer (by @elfman in #13820)
- Cascader
- 移除已废弃的计算属性的 cache 属性 (by @iamkun in #13737)
- 修正 TypeScript 中 CascaderOption 类型定义 (by @NateScarlet in #13613)
- 修正图标覆盖文字的问题 (by @ziyoung in #13596)
- Checkbox
- 改进显示样式 (by @PanJiaChen)
- DatePicker
- 修正 TimeSpinner 中缺失的 v-for `key` 属性 (by @Ende93 in #13547)
- 修正周选择器在跨年时的高亮行为 (by @suyi91 in #13883)
- Input
- 修复 textarea 时的 DOM 节点引用 (by @laomu1988 @island205 in #13803)
- Pagination
- 输入框的值不会小于 1 (by @elfman in #13727)
- Popover
- 修正 hover 的触发行为 (by @goldengecko in #13104)
- 修正弹出框的内存泄漏 (by @qpxtWhite in #13988)
- Radio
- 改进显示样式 (by @ohhoney1)
- Table
- 改进点击排序箭头时的行为 (by @ohhoney1 in #12890)
- 修正 IE10+ 中 “暂无数据” 提示的垂直布局 (by @imzjy in #13638)
- 修正文档中 `index` 的类型说明 (by @ilovefafa in #13628)
- 修正多级表头使用 `fixed` 属性时,表尾合计行的显示样式 (by @luckyCao in #13914)
- Tabs
- 修正自动滚动 (by @iamkun in #13696)
- 通过面板名称查找面板 (by @iamkun in #13705)
- 使用 `paneName` 计算面板样式 (by @iamkun in #13733)
- Tree
- 修正 `showCheckbox` 不能影响子节点的问题 (by @KidneyFlower)
- 更新文档和 TypeScript 定义 (by @ziyoung in #13540)
- Upload
- `list-type` 改变时,保留 `url` 属性 (by @elfman in #13771)
- Slider
- 修正源代码缩进 (by @wacky6 in #13955)
- I18n
- 补充加泰罗尼亚语 (Catalan) 翻译 (by @jaumesala)
- 补充俄语 (Russian) 翻译 (by @justlp in #13658)
- 补充芬兰语 (Finnish) 翻译 (by @jenkrisu in #14137)
- Doc
- 更新西班牙语文档至 2.4.11 (by @Gonzalo2310 in #13522)
- 其它
- 移除多余的构建脚本 (by @ziyoung)
- 修正文档超链接 (by @iamkun in #13753)
- 修正文档中不一致的大小写 (by @wonderjar)
- 增加钉钉群的二维码 (by @iamkun in #13957)
- .gitignore 增加 yarn 日志文件 (by @mimimi in #13922)
- 移除赞助商 多态 (by @island205 in #14156)
- Update readme qr code src (by @iamkun in #13960)
- 更新 CDN 链接,修正错别字 (by @ziyoung)
### 2.4.11
*2018-11-21*
- 撤销 pr #13296,修复点击 Menu 外部导致 Submenu 收起的问题,#13478
- 调整小屏幕(xs)媒体查询断点,#13468 by @alekoshen712
### 2.4.10
*2018-11-16*
- 修复多次点击 Select 才显示下拉列表的问题,#13268
- Form 禁用时不显示 Input 的 clear 图标,#13208
- 调整 SelectProgressAutocompleteTooltipCollaspeTimePicker 的样式,#13188 (by @porcelainHeart) #13210 #13266 #13257 #13290 #13347 (by @PanJiaChen)
- Carousel 组件新增 `loop` 属性,#13217
- Table 的 data 改变时,高亮行会继续保留,#13200
- Table 的 header slot 可以接收参数,#13263
- Table 的 `clearFilter` 方法支持参数,#13176
- Table 单元格内没有内容时不再创建 Tooltip,#13152 (by @rongxingsun)
- ColorPicker 面板的输入框内容可以正常显示了,#13278
- 在拖拽时,ColorPicker 不再触发表单校验,#13299
- InputNumber 新增 `select` 方法,#13286 (by @st-sloth)
- Autocomplete 新增 `clear` 事件,#12171(by arthurdenner) #13326
- 可以通过点击 Menu 外部来关闭 Menu,#13296
- Form 的 `validateField` 方法可以接收参数,#13319
- Cascader 新增 `visible-change` 事件,#13415
- DatePicker 新增 range-separator slot #13272 (by @milworm)
- Tree 新增 `iconClass``currentNodeKey` 属性,#13337 #13197 (by @isnifer)
- Progress 的 `status` 添加了 text #13198 (by @ali-master)
- 修复 Tree 的 `defaultCheckedKeys` 导致显示的错误,#13349 (by @dive2Pro)
### 2.4.9
*2018-10-26*
- Form 组件 clearValidate 方法参数支持字符串,#12990 by @codinglobster
- Badge 新增 type 属性,#12991
- 用户可以使用 scoped-slot 来自定义表头,#13012by @ivanseidel
- 修复 IE 下 Select 输入框不能输入的问题,#13034by @GaliMU
- Select 多选时,选项不换行,#12329 by @akki-jat
- Select 下拉列表展开后,箭头图标也可以正确显示,#12353by @firesh
- 修复 Select 的 size 属性不生效的问题,#13070
- 多选时可以清除 Select 已选中的值,#13049by @ZSkycat
- 修复最后一个 TabNav 不能删除的问题,#13039
- 修复 TabNav 中 label 显示不正确的问题,#13178
- Alert 新增 title slot#13082by @Kingwl
- 修复 Table 中的 tooltip 内容不正确的问题,#13159by @elfman
- 优化 Upload 文件列表删除时的动画,#12987
- 当 InputNumber 控制按钮不显示时,调整了边距,#13052
### 2.4.8
- Switch 聚焦时不显示轮廓,#12771
- 修复 Dropdown 在 ButtonGroup 中样式问题,#12819 by @bluejfox
- Dialog 新增 opened 事件,#12828
- 修复 TabNav 显示顺序不正确的问题,#12846
- 修复 Tabs 没有滑动到选中 tab 的问题,#12948
- 修复 Tree 节点在拖拽时标识符不显示的问题,#12854
- Form 的 validate 事件参数中包含了校验的信息,#12860 by @YamenSharaf
- 修复 DatePicker 没有校验用户输入时间的合法性问题,#12898
- 修复 Table 表头的 `render-header`属性不生效的问题,#12914
### 2.4.7
*2018-09-14*
- 修复 DatePicker 未触发表单检验的问题,#12328#12348
- 修复 DatePicker 多选时报错的问题,#12347
- 修复 DatePicker 选择时间时 spinner 位置不正确的问题,#12415 by @rang-ali
- 修复 Datepicker 输入框自动填充的问题,#12521 by @abdallanayer
- 修复 Cascader 中 Input 未高亮的问题,#12341
- 修复 Tabpane 顺序不正确的问题,#12346
- 修复 ColorPicker 取色光标位置不正确的问题,#12376 by @cnwhy
- 调整 Submenu 的样式,#12457
- 修复 Submenu 选中后没有高亮的问题,#12479
- 修复 Cascader 选择值不正确的问题,#12508 by @huangjinqiang
- 修复 Pagination 输入框值不正确的问题,#12525
- 调整 Pagination 触发事件的顺序,#12530
- 修复 Table 的 filter 不显示的问题,#12539
- 修复 Tree 无法删除节点的问题,#12684
- 修复 Select 在单选时 Input 高度变化的问题,#12719
- 修复 Form 在嵌套时 label 显示不正确的问题,#12748
- 新增 Input 的 autocomplete 属性,废弃 auto-complete 属性,#12514 by @axetroy
- 新增 Form 的 slot-scope 展示表单校验信息,#12715 by @YamenSharaf
### 2.4.6
*2018-08-09*
- 修复 Table 的 filter 初始值为空数组时不显示筛选图标的问题,#12165
- 修复 Menu 在更改 `collapse` 时不保存菜单激活状态的问题,#12178 (by @elfman)
- 修复 Cascader 未转义特殊字符的问题,#12248
- 修复禁用的 RadioButton 在点击时显示 box-shadow 的问题,#12262
- 修复 Select 初始值为 `undefined` 时方向键失效的问题,#12322
- 修复 Select 多选时输入的关键字消失的问题,#12304
- 修复 Select 多选时查询函数没有去抖的问题,#12181
- 修复 Dialog 在全屏显示时宽度不正确的问题,#12203
- 修复 Main 在 IE 下的显示不正确的问题,#12237
- 修复 Input 触发两次表单校验的问题,#12260
- 修复 Tree 在懒加载时添加节点导致节点消失的问题,#12256
- 修复 Tree 节点在拖拽后无法删除的问题,#12279
- 修复 Popover 在 InputNumber 聚焦时不显示的问题,#12284
- 添加 Autocomplete 的 popper-append-to-body 属性,#12241
- 添加 Pagination 的 `page-size` 属性 `sync` 修饰符的支持,#12281
### 2.4.5
*2018-07-26*
- 修复 Table 设置 `class-name``expand` 列不生效的问题,#12006
- 新增 Table 的 `toggleAllSelection` 方法,#12047
- 修复 Input 包含 Select 时,suffix 插槽位置显示不正确的问题,#12108
- 修复 Option 的 `line-height` 无法设置的问题,#12120
- 修复初始值为 `null` 的 TimeSelect 在执行 `resetField` 后无法再赋值的问题,#12010
- 修复 Tree 组件中不响应方向键以外 keydown 事件的问题,#12008
- 修复 Tree 在懒加载情况下选中父节点的问题,#12106
- Tree 的 `getCheckedNodes` 方法新增 `includeHalfChecked` 参数,#12014
### 2.4.4
*2018-07-13*
- 修复重置表单后触发 Select 组件校验问题,#11837
- 修复 Input 组件 `suffix``append` 共存时样式错乱问题,#11951
- 修复可清空的只读 Input 仍会显示清空图标的问题,#11967
- 修复 Tree 节点禁用时仍可以选中的问题,#11847
- 修复 Tree `default-checked-keys` 属性不生效的问题,#11971
- 修复 Tree 在过滤节点时下 `empty-text` 不显示的问题,#11971
- 修复 Table 的 `empty-text` 过长时的位置样式问题,#11965
- 修复 Table 的 `current-row-key` 设置为 `null` 时高亮行不清除的问题,#11866
- 修复当 `filters` 为空数组时显示过滤器下拉列表的问题,#11864
- 修复 Radio 的 label 不阻止事件冒泡的问题,#11912
### 2.4.3
*2018-07-03*
- 修复当自定义 Tree 节点高度时,`allow-drop` 不能正常工作的问题,#11797
- 现在 Form 的 `clearValidate` 方法支持传入参数,指定需要清空校验结果的 FormItem,#11821
- 新增 MessageBox 的 `distinguishCancelAndClose` 属性,#11831
### 2.4.2
*2018-06-26*
- 修复 Table 的 `class-name``label-class-name` 属性不支持动态更新的问题,#11626
- 修复 Table 在 `highlight-current-row``false` 时点击行也会触发高亮的问题,#11691 #11563
- 修复 ButtonGroup 中只有一个 `round``circle` 的 Button 时的样式错误,#11605
- 修复在某些情况下 Pagination 的条目数选择器的样式错误,#11622
- 修复 Menu 的 `collapse` 属性变化后无法使用 `open` 方法的问题,#11646
- Tabs 的 `before-leave` 钩子添加了 `activeName``oldActiveName` 参数,#11713
- 修复 Cascader 关闭后的聚焦问题,#11588
- 修复 Cascader 在 `change-on-select` 状态下点击选项不关闭的问题,#11623
- 现在通过代码改变 Select 的值后会触发表单校验,与 Input 行为一致,#11672
### 2.4.1
*2018-06-08*
- 移除 Autocomplete 的重复类型声明,#11388
- 修复嵌套在 Form 内的 Select 在 FireFox 浏览器中下拉箭头错位的问题,#11427
- 修复 Select 的初始值为 `null` 时仍然显示清除图标的问题,#11460
- 修复禁用的 Radio 在点击时显示 box-shadow 的问题,#11462
- 新增 MessageBox 的 `iconClass` 属性,#11499
- 新增 Tabs 的 `stretch` 属性,#11476
- 修复 Tabs 开启 `lazy` 时渲染顺序异常的问题,#11461
- 修复 Table 展开行时无法保留选中行样式的问题,#11464
- 修复 Tabs 调用 `before-leave` 并返回 Promise 的时候,Tabs 会存在 focus 状态的问题,#11386
- 修复 Popover 禁用状态下创建弹出框的问题,#11426
- 修复 Tree 在懒加载状态下添加新节点造成无限循环的问题,#11430 by @wangjingf
- 新增 Dialog 的 `closed` 事件,#11490
### 2.4.0 Fullerene
*2018-05-28*
#### 新特性
- 综合
- 使用原生 webpack 作为构建和打包工具,#11216
- 可以全局配置弹出层的初始 z-index,#11257
- Autocomplete
- 新增 `hide-loading` 属性,#11260
- Button
- 现在圆形按钮也支持通过 `size` 属性改变其尺寸了,#11275
- InputNumber
- 新增 `precision` 属性,#11281
- Tabs
- 新增 `before-leave` 钩子,#11259
- 新增 `lazy` 属性,#11167by @Kingwl
- Table
- 新增 `sort` 方法,支持手动排序,#11311
#### 修复
- Input
- 修复使用中文输入法快速输入文字时会导致视图重新渲染的问题,#11235by @STLighter
- Popover
- 修复当触发元素为 Radio 或 Checkbox 时控制台报错的问题,#11265
- Breadcrumb
- 修复 `to` 属性不支持动态更新的问题,#11286
- Upload
- 修复在 `beforeUpload` 方法返回的 Promise 中 resolve 一个 File 时控制台报错的问题,#11297by @qusiba
- Tooltip
- 修复内容为空时箭头错位的问题,#11335
- Autocomplete
- 修复在快速删除搜索内容后输入建议不正确的问题,#11323
- ColorPicker
- 修复关闭选色器时触发 `active-change` 事件的问题,#11304
- Table
- 修复筛选列表过长导致样式超出的问题,#11314
- 修复排序后导致无法正常显示选中行样式的问题,#11348
- Checkbox
- 修复单个 Checkbox 不支持表单验证的问题,#11271
- Radio
- 修复通过空格可以选中被禁用的 Radio 的问题,#11303
- MessageBox
- 修复连续打开两个 MessageBox 时 `el-popup-parent--hidden` 无法移除的问题,#11371
### 2.3.9
*2018-05-18*
- 修复当 TableColumn 的 `prop` 属性指定的字段在数据源中不存在时,鼠标移入该列单元格会报错的问题,#11137
- 弹出类组件的 `lockScroll` 属性不再为父元素添加内联样式,而是添加相应类名,#11114
- 修复 Progress 在 `status` 为 exception 时图标不显示的问题,#11172
- 修复可搜索的 Cascader 在输入关键词后,选项的 `disabled` 属性失效的问题,#11185
- 修复可展开的 Table 在展开某一行后更新数据源会造成该行无法收起的问题,#11186
- Tree 的 `setCurrentKey` 方法支持传入 `null`,可取消当前高亮的节点,#11205
### 2.3.8
*2018-05-11*
- 修复 `type` 为 dates 的 DatePicker 在选择非当前月的日期后,面板会跳转至当前月的问题,#10973
- 修复可清空的只读 Input 仍会显示清空图标的问题,#10912
- 修复范围选择的 DatePicker 在未改变值的情况下关闭下拉面板仍会触发 `change` 事件的问题,#11017
- 修复 Select 在有分组选项时不能正确通过键盘导航的问题,#11058
- 新增 Select 的 `prefix` 具名 slot#11063
- 新增 FormItem 的 `clearValidate` 方法,#11076
- 新增 Tree 的 `checkOnClickNode` 属性,#11111
### 2.3.7
*2018-04-29*
- 修复 Table 在由于筛选而使原有的滚动条消失后表头各列宽度未及时更新的问题,#10834
- 修复可清空的 Input 在初始值为 `null` 时仍然显示清空图标的问题,#10912
- 修复在通过代码改变 ColorPicker 的绑定值后错误地触发 `active-change` 事件的问题,#10903by @zhangbobell
- 修复可搜索的 Select 在备选项均被禁用时,通过键盘导航会造成无限循环的问题,#10945
### 2.3.6
*2018-04-21*
- 修复 Tree 的 `allow-drop` 回调在使用 `type` 参数后的错误行为,#10821
- 修复可搜索的单选 Select 在 IE11 中无法输入搜索关键词的问题,#10822
- 修复单选 Select 在使用鼠标选中某个选项后错误地触发 `blur` 事件的问题,#10822
### 2.3.5
*2018-04-20*
- 修复 DatePicker 的 `type` 为 week 时面板错误高亮的问题,#10712
- 修复 InputNumber 初始值为 0 时输入框为空的问题,#10714
- 新增 Select 的 `automatic-dropdown` 属性,#10042by @Seebiscuit
- 修复 `disabled` 的 Rate 仍能通过键盘左右键改变组件值的问题,#10726by @Richard-Choooou
- 现在 DatePicker 的 `type` 属性可以接收 `'dates'`,用于选择多个日期,#10650by @Mini256
- 新增 Pagination 的 `prev-click``next-click` 事件,#10755
- 新增 Pagination 的 `pager-count` 属性,#10493by @chongjohn716
- 新增 `type` 作为 Tree 的 `allow-drop` 属性回调的第三个参数,#10792
- 改用 ResizeObserver 对元素的尺寸变化进行监测,#10779
### 2.3.4
*2018-04-12*
- 删除 SubMenu 在 TypeScript 类型声明中重复的 `showTimeout` 属性,#10566by @kimond
- 现在 Transfer 数据项的渲染支持通过 scoped slot 自定义,#10577
- 修复点击 Pagination 禁用的上一页、下一页按钮仍会触发 `current-change` 事件的问题,#10628
- 修复未绑定值的 Textarea 在 SSR 中会显示 `undefined` 的问题,#10630
- 修复 `type` 为 border-card 的 Tabs 中被禁用标签项的样式,#10640
- 新增 `$index` 作为 Table 的 `formatter` 属性回调的第四个参数,#10645
- 修复 TypeScript 类型声明未导出 CheckboxButton 的问题,#10666
### 2.3.3
*2018-04-04*
- 新增 Card 的 `shadow` 属性,#10418by @YunYouJun
- 修复 Badge 在 `value` 属性为 `0` 时不显示上标的问题,#10470
- 修复 Tree 节点拖拽相关的问题,#10474 #10494
- 新增 Autocomplete 的 `placement` 属性,#10475
- 现在 `default-time` 属性也可用于非范围选择的 DateTimePicker 了,#10321by @RickMacTurk
- 修复 TabItem 在浏览器失焦和隐藏后出现蓝色边框的问题,#10503
- 新增 SubMenu 的 `popper-append-to-body` 属性,#10515
- 现在非链接的 BreadcrumbItem 在 hover 时不再具有视觉反馈,#10551
- 调整 InputNumber `change` 事件的触发时机,使得在回调中能够取得最新的组件绑定值,#10553
### 2.3.2
*2018-03-29*
- 修复 Autocomplete 报错的问题,#10442
### 2.3.1
*2018-03-29*
- 修复 Input 的 `type` 属性未传递至原生 input 元素的问题,#10415
- 新增 Select 的 `blur` 方法,#10416
### 2.3.0 Diamond
*2018-03-28*
#### 新特性
- Table
- 现在 TableColumn 的 `formatter` 属性可以是动态的,#10184by @elfman
- 新增 `select-on-indeterminate` 属性,#9924by @syn-zeta
- Menu
- 新增 `collapse-transition` 属性,#8809by @limichange
- Input
- 新增 `select` 方法,#10229
- 新增 `blur` 方法,#10356
- ColorPicker
- 新增 `predefine` 属性,#10170by @elfman
- Tree
- 新增 `draggable``allow-drop``allow-drag` 属性,以及 `node-drag-start``node-drag-enter``node-drag-leave``node-drag-over``node-drag-end``node-drop` 事件,#9251 #10372by @elfman
- Form
- `validate` 方法新增第二个参数,包含未通过本次校验的表单项信息,#10279
- 新增 `validate` 事件,#10351
- Progress
- 新增 `color` 属性,#10352by @YunYouJun
- Button
- 新增 `circle` 属性,#10359by @YunYouJun
#### 修复
- Form
- 修复嵌套复合型 Input 时,FormItem 标签与输入框未对齐的问题,#10189
- Menu
- 现在折叠状态的菜单项仅在传入 `title` slot 时才显示 Tooltip#10193by @PanJiaChen
- Pagination
- 修复 `current-change` 在未发生用户交互时错误触发的问题,#10247
- DatePicker
- 现在时间日期选择器下拉面板中的值能够正确地从 `format` 属性中获取对应格式了,#10174by @remizovvv
- Upload
- 现在拖拽上传会拦截不在 `accept` 属性范围内的文件,#10278
### 2.2.2
*2018-03-14*
- 新增 Input 的 `clear` 事件,#9988by @blackmiaool
- 现在 ColorPicker 的手动输入支持 `hsl``hsv``rgb` 格式了,#9991
- 修复 DatePicker 在清除初始值时不触发 `change` 事件的问题,#9986
- 现在 Rate 的图标类相关属性支持动态更新了,#10003
- 修复含有固定列的 Table 在设置 `max-height` 属性后有时不能及时更新布局高度的问题,#10034
- 现在 DatePicker 的范围选择支持先点选结束日期,再点选开始日期了,#8156by @earlymeme
- 新增 Pagination 的 `disabled` 属性,#10006
- 新增 Popover 的 `after-enter``after-leave` 事件,#10047
- 修复重置表单后,用户第一次改变 Select 的值时不触发校验的问题,#10105
- 修复 Table 的固定列在某些情况下宽度不正确的问题,#10130
- 修复调用 MessageBox 未传入 `title` 时,打开的 MessageBox 会继承上一个实例的 `title` 属性的问题,#10126by @Pochodaydayup
- 新增 Slider 的 `input-size` 属性,#10154
- 新增 Transfer 的 `left-check-change``right-check-change` 事件,#10156
### 2.2.1
*2018-03-02*
- 修复 Aside、Header 和 Footer 在某些布局中被压缩的问题,#9812
- 修复设置了 `height` 属性的 Table 在服务端渲染时无法加载的问题,#9876
- 修复可展开的 Table 在展开某一行后高度未重新计算的问题,#9848
- 修复在 DateTimePicker 中手动输入日期后不能正确触发 `change` 事件的问题,#9913
- 修复鼠标右键点击 Select 的输入框会展开选项的问题,#9894by @openks
- 新增 Slider 的 `tooltip-class` 属性,#9957
- 现在的 Select 在选中选项后仍然处于 focus 状态,#9857by @Seebiscuit
- 新增 Transfer 的 `target-order` 属性,#9960
### 2.2.0 Graphite
*2018-02-12*
#### 新特性
- Menu
- SubMenu 新增 `popper-class``disabled` 属性,#9604 #9771
- 现在水平模式下的 Menu 支持多级 SubMenu 了,#9741
- Tree
- 新增 `node-contextmenu` 事件,#9678
- 现在可以使用 scoped slot 自定义树节点的模板了,#9686
- 新增 `getNode``remove``append``insertBefore``insertAfter``getCheckedKeys``getHalfCheckedNodes``getHalfCheckedKeys` 方法和 `check` 事件,#9718 #9730
- Transfer
- 新增 `clearQuery` 方法,#9753
- Select
- 新增 `popper-append-to-body` 属性,#9782
#### 修复
- Table
- 修复点击可展开行的展开图标会触发 `row-click` 事件的问题,#9654
- 修复某些情况下通过拖动改变列宽后,布局没有同步更新的问题,#9668
- 修复合计行与固定列并存时的样式问题,#9667
- Container
- 修复布局组件在 IE11 中无法自动填充可用空间的问题,#9655
- Loading
- 修复在 `mounted` 中修改 `v-loading` 的值为 true 时不能正确显示 Loading 的问题,#9722
- Switch
- 修复点击时会触发两次原生 click 事件的问题,#9760
### 2.1.0 Charcoal
*2018-01-31*
#### 新特性
- Cascader
- 新增 `focus``blur` 事件,#9184by @viewweiwu
- Table
- `filter-method` 方法加入第三个参数 `column`#9196by @liyanlong
- DatePicker
- 新增 `prefix-icon``clear-icon` 属性,#9237by @AdamSGit
- 新增 `default-time` 属性,#9094by @nighca
- `value-format` 属性增加对 `timestamp` 的支持,#9319by @wacky6
- InputNumber
- 组件绑定变量的值支持 `undefined`#9361
- Select
- 新增 `auto-complete` 属性,#9388
- Form
- 新增 `disabled` 属性,#9529
- 新增 `validateOnRuleChange` 属性,#8141
- Notificaition
- 新增 `closeAll` 方法,#9514
#### 修复
- InputNumber
- 修复初始输入小数点时被重置的问题,#9116
- Dropdown
- 修复当页面仅有水平滚动条时,某些浏览器下拉菜单定位错误的问题,#9138by @banzhuanmei
- Table
- 修复带有固定列的 Table 在列数据变化后固定列的个数计算错误的问题,#9188by @kolesoffac
- 修复多级表头最后一列的边框不能正确显示的问题,#9326
- 修复在 Safari 浏览器中表头错位的问题,#9327
- 修复带有展开行的表格在展开某一行后,当表格数据更新但 `row-key` 值不变时,该行会自动收起的问题,#9462
- 修复在一些情况下不必要的多次渲染问题,#9426
- 修复动态改变 TableColumn 的 `width` 属性时,其宽度计算错误的问题,#9426
- Loading
- 修复某些情况下 Loading 不能被正确隐藏的问题,#9313
- DatePicker
- 修复 `focus` 方法在范围选择时无效的问题,#9437
- 修复当目前时刻处于不可选择的范围内时,点击面板上的「此刻」按钮仍能选中目前时刻的问题,#9470by @wacky6
- 修复当在月选择面板中选中天数较少的月份时,日期面板呈现下一个月的问题,#9577by @wacky6
- Steps
- 修复在 IE 11 中的样式问题,#9454
#### 非兼容性更新
- Menu
- `collapse` 状态下的弹出菜单现在会插入至 body 元素,修复其位于 Aside 内时弹出菜单不可见的问题,#9263
- Table
- 勾选多选表格的 checkbox 时不再同时触发 `row-click` 事件,#9467
- Loading
- 非全屏 Loading 遮罩层的 `z-index` 修改为 2000;全屏 Loading 遮罩层的 `z-index` 值会随页面上的弹出组件动态更新,#9522
- Dropdown
- `show-timeout``hide-timeout` 属性现在仅在 trigger 为 `hover` 时生效,#9573
### 2.0.11
*2018-01-08*
- 修复 Input 的 `prepend``append` slot 中 Select 的边框颜色错误,#9089
- 修复 Select 的 `remove-tag` 事件参数与文档不符的问题,#9090
- 新增 SubMenu 的 `show-timeout``hide-timeout` 属性,#8934by @HugoLew
- 修复按需引入 Table 时 `show-overflow-tooltip` 的 Tooltip 样式丢失的问题,#9130
- 修复 Table 在执行 `clearSort` 后点击对应列的排序图标无法正常排序的问题,#9100by @zEmily
- 捷克语的 i18n 配置文件由 `cz` 重命名为 `cs-CZ`#9164
### 2.0.10
*2017-12-29*
- 修复了 Table 在固定列和合计行并存时的高度计算错误的问题,#9026
- 修复了 Table 样式 SCSS 文件错误编译的问题,#9028
- 现在 DatePicker 的 `change` 事件只会在 `value` 真正改变的时候触发,#9029by @remizovvv
- 新增 Input 的 `tabindex` 属性,#9041by @dicklwm
### 2.0.9🎄
*2017-12-24*
- 新增 Upload 的 `before-remove` 钩子方法,#8788by @firesh
- 修复 FormItem 的 `error` 属性初始值无效的问题,#8840
- 通过指令调用的 Loading 现在支持以 `element-loading-custom-class` 属性的方式设置自定义类名,#8826by @earlymeme
- 修复 CarouselItem 为异步获取时被隐藏的问题,#8921
- 新增 Tree 的 `renderAfterExpand` 属性,#8972
### 2.0.8
*2017-12-12*
- 新增西班牙语文档
- 修复 `show-timeout` 对点击触发的 Dropdown 无效的问题,#8734by @presidenten
- 修复 Form 对于 `trigger` 为 blur 的校验规则触发时机有误的问题,#8776
- 修复 DatePicker 在范围选择时 blur 事件触发时机有误的问题,#8784
- TimePicker 的 `format` 新增对 AM/PM 的支持,#8620by @firesh
### 2.0.7
*2017-11-29*
- 修复禁用文字按钮的样式问题,#8570
### 2.0.6
*2017-11-29*
- 修复 Table 排序图标的样式问题,#8405
- 修复 `trigger` 为 manual 的 Popover 的触发问题,#8467
- 新增 Autocomplete 的 `prefix-icon``suffix-icon` 属性,#8446by @liyanlong
- 新增 Cascader 的 `separator` 属性,#8501
- 新增 Input 的 `clearable` 属性,#8509by @lbogdan
- 新增 Pagination 的 `background` 属性,#8553
### 2.0.5
*2017-11-17*
- 修复上个版本引入的 Popover、Tree、Breadcrumb、Cascader 的 bug#8188 #8217 #8283
- 修复 clickoutside 指令的内存泄露问题,#8168 #8225by @badpunman @STLighter
- 修复默认尺寸的多选 Select 在清空选项后输入框高度不随之更新的问题,#8317by @luciy
- 新增 Select 的 `collapse-tags` 属性,用于在多选时以文字代替 Tag,避免组件高度的增大,#8190
- 修复被隐藏的 Table 会造成 CPU 占用持续增加的问题,#8351
- 开放 Table 的 `doLayout` 方法,用于重新计算 Table 的布局,#8351
### 2.0.4
*2017-11-10*
- 提升 Cascader、Dropdown、Message、Notification、Popover、Tooltip、Tree 的可访问性
- 修复当视口变窄时 Container 无法同步更新其宽度的问题,#8042
- 修复 Tree 的 `updateKeyChildren` 在删除子节点时的行为错误,#8100
- 修复带有边框的 CheckboxButton 在 Form 中高度错误的问题,#8100
- 修复 Menu 在解析自定义颜色时的错误,#8153by @zhouyixiang
### 2.0.3
*2017-11-03*
- 修复范围选择的 DatePicker `editable``readonly` 属性无法正常工作的问题,#7922
- 修复嵌套的 Tabs 的样式错误,#7941
- 修复纵向 Steps 中最后一个 Step 的样式错误,#7980
- 修复 Pagination 的 `current-change` 事件触发时机错误的问题,#7995
- 修复由于 Menu 使用了未注册的 Tooltip 造成其在按需引入时报错的问题,#7995
### 2.0.2
*2017-10-31*
- 在 InputNumber 的加减按钮上单击鼠标右键不再触发值的改变,#7817
- Form 的 `validate` 方法现在能够正确地在异步校验完成后执行回调了,#7774by @Allenice
- 修复 DatePicker 的范围选择在内核为 Chromium 53-57 的浏览器中无法使用的问题,#7838
- 修复 `list-type` 为 picture-card 的 Upload 预览和删除图标丢失的问题,#7857
- 新增 TableColumn 的 `sort-by` 属性,#7828by @wangfengming
- 修复周模式下的 DatePicker 在选择某年第一周可能会显示为前一年第一周的问题,#7860by @hh23485
- 修复垂直模式的 Steps 中图标宽度的样式错误,#7891
- 增大了 Tree 中展开箭头的点击热区,#7891
### 2.0.1
*2017-10-28*
- 修复 RadioButton 和 CheckboxButton 的样式问题,#7793
- 修复 TimePicker 在某些情况下无法滚动的问题,#7811
- 修复部分组件在按需引入时样式不完整的问题,#7811
### 2.0.0 Carbon
*2017-10-27*
#### 新特性
- 综合
- 新增 `theme-chalk` 主题
- 增强以下组件的可访问性:Alert、AutoComplete、Breadcrumb、Button、Checkbox、Collapse、Input、InputNumber、Menu、Progress、Radio、Rate、Slider、Switch 和 Upload
- 新增布局组件 Container、Header、Aside、Main 和 Footer
- 新增 TypeScript 类型声明
- 重绘了全部图标,并新增了部分图标
- 新增了一系列基于断点的工具类,用于当视口尺寸满足一定条件时隐藏元素
- 新增全局配置组件尺寸的功能。在引入 Element 时,配置 `size` 字段可以改变所有组件的默认尺寸
- Button
- 新增 `round` 属性,用于圆角按钮 #6643
- TimeSelect
- 可以用 `Up``Down` 导航,用 `Enter` 选中时间 #6023
- TimePicker
- 可以用方向键导航,用 `Enter` 选中时间 #6050
- 新增 `start-placeholder``end-placeholder`,用于设置范围选择时两个输入框的占位符 #7169
- 新增 `arrow-control` 属性,提供另一种交互形式,#7438
- Tree
- 子节点在首次被展开之前不进行渲染 #6257
- 新增 `check-descendants` 属性,设置 `lazy` 模式下勾选节点时,是否完全展开整个子树 #6235
- Tag
- 新增 `size` 属性 #7203
- Datepicker
- type 为 `datetimerange` 时可以使用 `timeFormat` 格式化时间选择器 #6052
- 新增 `start-placeholder``end-placeholder`,用于设置范围选择时两个输入框的占位符 #7169
- 新增 `value-format` 属性,支持对绑定值的格式进行自定义,#7367
- 新增 `unlink-panels` 属性,用于在选择日期范围时取消两个日期面板之间的联动
- MessageBox
- 新增 `closeOnHashChange` 属性 #6043
- 新增 `center` 属性,提供居中布局 #7029
- 新增 `roundButton` 属性,使得内部按钮为圆角按钮 #7029
- 新增 `dangerouslyUseHTMLString` 属性,使得 `message` 支持传入 HTML 字符串<sup>*</sup> #6043
- 新增 `inputType` 属性,用户指定内部输入框的类型,#7651
- Dialog
- 新增 `width``fullscreen``append-to-body` 属性,支持嵌套使用
- 新增 `center` 属性,提供居中布局 #7042
- 新增 `focus-after-closed``focus-after-open`属性,支持无障碍访问 #6511
- ColorPicker
- 增加手动输入色值的支持 #6167
- 新增 `size` 属性,用于控制组件的大小 #7026
- 新增 `disabled` 属性,用于禁用组件 #7026
- 新增 `popper-class` 属性,#7351
- Message
- 图标部分使用 icon 代替图片,从而支持通过 CSS 修改图标背景色 #6207
- 新增 `dangerouslyUseHTMLString` 属性,使得 `message` 属性支持传入 HTML 字符串<sup>*</sup> #6207
- 新增 `center` 属性,提供居中布局 #6875
- Notification
- 新增 `position` 属性,用于配置 Notification 出现的位置 #6231
- 新增 `dangerouslyUseHTMLString` 属性,使得 `message` 属性支持传入 HTML 字符串<sup>*</sup> #6231
- 新增 `showClose` 属性,用于隐藏关闭按钮 #6402
- Rate
- 新增 `show-score` 属性,控制是否在右侧显示当前分数 #6295
- Tabs
- 新增 `tab-position` 属性,控制选项面板内容显示的上、下、左、右四个方向 #6096
- Radio
- 增加 `border` 属性和 `size` 属性 #6690
- Checkbox
- 增加 `border` 属性和 `size` 属性 #6690
- Alert
- 新增 `center` 属性,提供居中布局 #6876
- Menu
- 新增 `background-color``text-color``active-text-color` 属性,分别用于设置菜单的背景色、菜单的文字颜色和当前激活菜单的文字颜色 #7064
- 新增 `open``close` 方法,支持手动打开和关闭 SubMenu,#7412
- Form
- 新增 `inline-message` 属性,设置后校验信息会以行内样式显示 #7032
- 新增 `status-icon` 属性,用于在输入框中显示校验结果反馈图标 #7032
- Form 和 FormItem 新增 `size` 属性,用于控制表单内组件的尺寸,#7428
- `validate` 方法在不传入 callback 的情况下返回 promise#7405
- 新增 `clearValidate` 方法,用于清空所有表单项的验证信息,#7623
- Input
- 新增 `suffix``prefix` 的 slot,以及 `suffixIcon``prefixIcon` 属性,用于给输入框内部增加前置和后置内容 #7032
- Breadcrumb
- 新增 `separator-class` 属性,可使用图标作为分隔符 #7203
- Steps
- 新增 `simple` 属性,用于开启简洁风格的步骤条 #7274
- Pagination
- 新增 `prev-text``next-text` 属性,用于自定义上一页和下一页的文本 #7005
- Loading
- 配置对象新增 `spinner``background` 字段,支持自定义加载图标和背景色,#7390
- Autocomplete
- 新增 `debounce` 属性,#7413
- Upload
- 新增 `limit``on-exceed` 属性,支持对上传文件的个数进行限制,#7405
- DateTimePicker
- 新增 `time-arrow-control` 属性,用于开启时间选择器的 `arrow-control`#7438
- Layout
- 新增断点 `xl`,适用于宽度大于 1920px 的视口
- Table
- 新增 `span-method` 属性,用于合并行或列
- 新增 `clearSort` 方法,用于清空排序状态
- 新增 `clearFilter` 方法,用于清空过滤状态
- 对于可展开行,当该行展开时会获得一个 `.expanded` 类名,方便自定义样式
- 新增 `size` 属性,用于控制表格尺寸
- 新增 `toggleRowExpansion` 方法,用于手动展开或关闭行
- 新增 `cell-class-name` 属性,用于指定单元格的类名
- 新增 `cell-style` 属性,用于指定单元格的样式
- 新增 `header-row-class-name` 属性,用于指定表头行的类名
- 新增 `header-row-style` 属性,用于指定表头行的样式
- 新增 `header-cell-class-name` 属性,用于指定表头单元格的类名
- 新增 `header-cell-style` 属性,用于指定表头单元格的样式
- TableColumn 的 `prop` 属性支持 `object[key]` 格式
- TableColumn 新增 `index` 属性,用于自定义索引值
- Select
- 新增 `reserve-keyword` 属性,用于在选择某个选项后保留当前的搜索关键词
#### 修复
- DatePicker
- 选择周数时,`v-model` 结果返回该周第二天的问题 #6038
-`daterange` 类型中,第一次的输入会被清空的问题 #6021
- DateTimePicker
- 和 TimePicker 相互影响的问题 #6090
- 选择时间小时和秒可超出限制的问题 #6076
- TimePicker
- 失去焦点时无法正确改变 `v-model` 值的问题 #6023
- Dialog
- 当含有下拉框时,下拉框的打开和关闭会造成文字虚晃的问题 #6088
- Select
- 提升性能,修复组件销毁时可能导致 Vue dev-tool 卡死的问题 #6151
- Table
- 修复 Table 在父元素从 `display: none` 变成其他状态时会隐藏的问题
- 修复 Table 在父元素为 `display: flex` 时可能出现的宽度逐渐变大的问题
- 修复 `append` 具名 slot 和固定列并存时,动态获取表格数据会导致固定列消失的问题
- 修复 `expand-row-keys` 属性初始化无效的问题
- 修复 `data` 改变时过滤条件失效的问题
- 修复多级表头时固定列隐藏情况计算错误的问题
- 修复 `max-height` 变更后无法恢复的问题
- 修复一些样式上的计算错误
#### 非兼容性更新
- 综合
- 移除 `theme-default`
- 最低兼容 Vue 2.5.2 和 IE 10
- 表单组件的 `change` 事件和 Pagination 的 `current-change` 事件现在仅响应用户交互
- Button 和表单组件的 `size` 属性现在可接受 `medium``small``mini`
- 为了方便使用第三方图标,Button 的 `icon` 属性、Input 的 `prefix-icon``suffix-icon` 属性、Steps 的 `icon` 属性现在需要传入完整的图标类名
- Dialog
- 移除 `size` 属性。现在 Dialog 的尺寸由 `width``fullscreen` 控制
- 移除通过 `v-model` 控制 Dialog 显示和隐藏的功能
- Rate
- `text-template` 属性更名为 `score-template`
- Dropdown
- `menu-align` 属性变更为 `placement`,增加更多方位属性
- Transfer
- `footer-format` 属性更名为 `format`
- Switch
- 由于 `on-*` 属性在 JSX 中会被识别为事件,导致 Switch 所有 `on-*` 属性在 JSX 中无法正常工作,所以 `on-*` 属性更名为 `active-*`,对应地,`off-*` 属性更名为 `inactive-*`。受到影响的属性有:`on-icon-class``off-icon-class``on-text``off-text``on-color``off-color``on-value``off-value`
- `active-text``inactive-text` 属性不再有默认值
- Tag
- `type` 属性现在支持 `success``info``warning``danger` 四个值
- Menu
- 移除 `theme` 属性。现在通过 `background-color``text-color``active-text-color` 属性进行颜色的自定义
- Input
- 移除 `icon` 属性。现在通过 `suffix-icon` 属性或者 `suffix` 具名 slot 来加入尾部图标
- 移除 `on-icon-click` 属性和 `click` 事件。现在如果需要为输入框中的图标添加点击事件,请以具名 slot 的方式添加图标
- `change` 事件现在仅在输入框失去焦点或用户按下回车时触发,与原生 input 元素一致。如果需要实时响应用户的输入,可以使用 `input` 事件
- Autocomplete
- 移除 `custom-item` 属性。现在通过 `scoped slot` 自定义输入建议列表项的内容
- 移除 `props` 属性,现在使用 `value-key` 属性指定输入建议对象中用于显示的键名
- Steps
- 移除 `center` 属性
- 现在步骤条将默认充满父容器
- DatePicker
- `change` 事件参数现在为组件的绑定值,格式由 `value-format` 控制
- Table
- 移除通过 `inline-template` 自定义列模板的功能
- `sort-method` 现在和 `Array.sort` 保持一致的逻辑,要求返回一个数字
-`append` slot 移至 `tbody` 元素以外,以保证其只被渲染一次
- `expand` 事件更名为 `expand-change`,以保证 API 的命名一致性
- `row-class-name``row-style` 的函数参数改为对象,以保证 API 的一致性
##
<i><sup>*</sup> 在网站上动态渲染任意 HTML 是非常危险的,因为容易导致 [XSS 攻击](https://en.wikipedia.org/wiki/Cross-site_scripting)。因此请在 `dangerouslyUseHTMLString` 打开的情况下,确保 `message` 的内容是可信的,**永远不要**将用户提交的内容赋值给 `message` 属性。</i>
+21
View File
@@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2016-present ElemeFE
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+240
View File
@@ -0,0 +1,240 @@
<p align="center">
<img src="https://cdn.rawgit.com/ElemeFE/element/dev/element_logo.svg">
</p>
<p align="center">
<a href="https://travis-ci.org/ElemeFE/element">
<img src="https://travis-ci.org/ElemeFE/element.svg?branch=master">
</a>
<a href="https://coveralls.io/github/ElemeFE/element?branch=master">
<img src="https://coveralls.io/repos/github/ElemeFE/element/badge.svg?branch=master">
</a>
<a href="https://cdnjs.com/libraries/element-ui">
<img src="https://img.shields.io/cdnjs/v/element-ui.svg">
</a>
<a href="https://www.npmjs.org/package/element-ui">
<img src="https://img.shields.io/npm/v/element-ui.svg">
</a>
<a href="https://npmcharts.com/compare/element-ui?minimal=true">
<img src="http://img.shields.io/npm/dm/element-ui.svg">
</a>
<br>
<a href="http://img.badgesize.io/https://unpkg.com/element-ui/lib/index.js?compression=gzip&label=gzip%20size:%20JS">
<img src="http://img.badgesize.io/https://unpkg.com/element-ui/lib/index.js?compression=gzip&label=gzip%20size:%20JS">
</a>
<a href="http://img.badgesize.io/https://unpkg.com/element-ui/lib/theme-chalk/index.css?compression=gzip&label=gzip%20size:%20CSS">
<img src="http://img.badgesize.io/https://unpkg.com/element-ui/lib/theme-chalk/index.css?compression=gzip&label=gzip%20size:%20CSS">
</a>
<a href="#backers">
<img src="https://opencollective.com/element/backers/badge.svg">
</a>
<a href="#sponsors">
<img src="https://opencollective.com/element/sponsors/badge.svg">
</a>
<a href="LICENSE">
<img src="https://img.shields.io/badge/License-MIT-yellow.svg">
</a>
</p>
<p align="center">
<b>Special thanks to the generous sponsorship by:</b>
</p>
<table>
<tbody>
<tr>
<td align="center" valign="middle">
<a href="https://tipe.io/?ref=element" target="_blank">
<img width="150px" src="https://user-images.githubusercontent.com/1016365/34124854-48fafa06-e3e9-11e7-8c04-251055feebee.png">
</a>
</td>
<td align="center" valign="middle">
<a href="https://www.duohui.cn/?utm_source=element&utm_medium=web&utm_campaign=element-index" target="_blank">
<img width="150px" src="https://user-images.githubusercontent.com/10095631/35603534-bb24470c-0678-11e8-8bcc-17ceaef8cbef.png">
</a>
</td>
<td align="center" valign="middle">
<a href="https://bitsrc.io/" target="_blank">
<img width="150px" src="https://user-images.githubusercontent.com/10095631/41342907-e44e7196-6f2f-11e8-92f2-47702dc8f059.png">
</a>
</td>
</tr>
</tbody>
</table>
> A Vue.js 2.0 UI Toolkit for Web.
## Links
- Homepage and documentation
- [International users](http://element.eleme.io/#/en-US)
- [Chinese users](http://element-cn.eleme.io/#/zh-CN)
- [Spanish users](http://element.eleme.io/#/es)
- [French users](http://element.eleme.io/#/fr-FR)
- [awesome-element](https://github.com/ElementUI/awesome-element)
- [FAQ](./FAQ.md)
- [Customize theme](http://element.eleme.io/#/en-US/component/custom-theme)
- [Preview and generate theme online](https://elementui.github.io/theme-chalk-preview)
- [Element for React](https://github.com/elemefe/element-react)
- [Element for Angular](https://github.com/ElemeFE/element-angular)
- [Atom helper](https://github.com/ElemeFE/element-helper)
- [Visual Studio Code helper](https://github.com/ElemeFE/vscode-element-helper)
- Starter kit
- [element-starter](https://github.com/ElementUI/element-starter)
- [element-in-laravel-starter](https://github.com/ElementUI/element-in-laravel-starter)
- [Design resources](https://github.com/ElementUI/Resources)
- Gitter
- [International users](https://gitter.im/element-en/Lobby)
- [Chinese users](https://gitter.im/ElemeFE/element)
## Install
```shell
npm install element-ui -S
```
## Quick Start
``` javascript
import Vue from 'vue'
import Element from 'element-ui'
Vue.use(Element)
// or
import {
Select,
Button
// ...
} from 'element-ui'
Vue.component(Select.name, Select)
Vue.component(Button.name, Button)
```
For more information, please refer to [Quick Start](http://element.eleme.io/#/en-US/component/quickstart) in our documentation.
## Browser Support
Modern browsers and Internet Explorer 10+.
## Development
Skip this part if you just want to use Element.
For those who are interested in contributing to Element, please refer to our contributing guide ([中文](https://github.com/ElemeFE/element/blob/master/.github/CONTRIBUTING.zh-CN.md) | [English](https://github.com/ElemeFE/element/blob/master/.github/CONTRIBUTING.en-US.md) | [Español](https://github.com/ElemeFE/element/blob/master/.github/CONTRIBUTING.es.md) | [Français](https://github.com/ElemeFE/element/blob/master/.github/CONTRIBUTING.fr-FR.md)) to see how to run this project.
## Changelog
Detailed changes for each release are documented in the [release notes](https://github.com/ElemeFE/element/releases).
## FAQ
We have collected some [frequently asked questions](https://github.com/ElemeFE/element/blob/master/FAQ.md). Before reporting an issue, please search if the FAQ has the answer to your problem.
## Contribution
Please make sure to read the contributing guide ([中文](https://github.com/ElemeFE/element/blob/master/.github/CONTRIBUTING.zh-CN.md) | [English](https://github.com/ElemeFE/element/blob/master/.github/CONTRIBUTING.en-US.md) | [Español](https://github.com/ElemeFE/element/blob/master/.github/CONTRIBUTING.es.md) | [Français](https://github.com/ElemeFE/element/blob/master/.github/CONTRIBUTING.fr-FR.md)) before making a pull request.
[![Let's fund issues in this repository](https://issuehunt.io/static/embed/issuehunt-button-v1.svg)](https://issuehunt.io/repos/67274736)
## Special Thanks
English documentation is brought to you by SwiftGG Translation Team:
- [raychenfj](https://github.com/raychenfj)
- [kevin](http://thekevin.cn/)
- [曾小涛](https://github.com/zengxiaotao)
- [湾仔王二](https://github.com/wanzaiwanger)
- [BlooDLine](http://www.ibloodline.com/)
- [陈铭嘉](https://chenmingjia.github.io/)
- [千叶知风](http://mpc6.com/)
- [梁杰](http://numbbbbb.com)
- [Changing](https://github.com/sunzhuo11)
- [mmoaay](https://github.com/mmoaay)
Spanish documentation is made possible by these community developers:
- [adavie1](https://github.com/adavie1)
- [carmencitaqiu](https://github.com/carmencitaqiu)
- [coderdiaz](https://github.com/coderdiaz)
- [fedegar33](https://github.com/fedegar33)
- [Gonzalo2310](https://github.com/Gonzalo2310)
- [lesterbx](https://github.com/lesterbx)
- [ProgramerGuy](https://github.com/ProgramerGuy)
- [SantiagoGdaR](https://github.com/SantiagoGdaR)
- [sigfriedCub1990](https://github.com/sigfriedCub1990)
- [thechosenjuan](https://github.com/thechosenjuan)
## Donation
If you find Element useful, you can buy us a cup of coffee
<img width="650" src="https://user-images.githubusercontent.com/14025786/44833997-5d7c4d80-ac62-11e8-8445-1dffec0eb13c.png" alt="donation">
## Backers
Support us with a monthly donation and help us continue our activities. [[Become a backer](https://opencollective.com/element#backer)]
<a href="https://opencollective.com/element/backer/0/website" target="_blank"><img src="https://opencollective.com/element/backer/0/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/1/website" target="_blank"><img src="https://opencollective.com/element/backer/1/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/2/website" target="_blank"><img src="https://opencollective.com/element/backer/2/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/3/website" target="_blank"><img src="https://opencollective.com/element/backer/3/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/4/website" target="_blank"><img src="https://opencollective.com/element/backer/4/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/5/website" target="_blank"><img src="https://opencollective.com/element/backer/5/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/6/website" target="_blank"><img src="https://opencollective.com/element/backer/6/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/7/website" target="_blank"><img src="https://opencollective.com/element/backer/7/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/8/website" target="_blank"><img src="https://opencollective.com/element/backer/8/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/9/website" target="_blank"><img src="https://opencollective.com/element/backer/9/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/10/website" target="_blank"><img src="https://opencollective.com/element/backer/10/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/11/website" target="_blank"><img src="https://opencollective.com/element/backer/11/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/12/website" target="_blank"><img src="https://opencollective.com/element/backer/12/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/13/website" target="_blank"><img src="https://opencollective.com/element/backer/13/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/14/website" target="_blank"><img src="https://opencollective.com/element/backer/14/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/15/website" target="_blank"><img src="https://opencollective.com/element/backer/15/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/16/website" target="_blank"><img src="https://opencollective.com/element/backer/16/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/17/website" target="_blank"><img src="https://opencollective.com/element/backer/17/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/18/website" target="_blank"><img src="https://opencollective.com/element/backer/18/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/19/website" target="_blank"><img src="https://opencollective.com/element/backer/19/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/20/website" target="_blank"><img src="https://opencollective.com/element/backer/20/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/21/website" target="_blank"><img src="https://opencollective.com/element/backer/21/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/22/website" target="_blank"><img src="https://opencollective.com/element/backer/22/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/23/website" target="_blank"><img src="https://opencollective.com/element/backer/23/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/24/website" target="_blank"><img src="https://opencollective.com/element/backer/24/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/25/website" target="_blank"><img src="https://opencollective.com/element/backer/25/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/26/website" target="_blank"><img src="https://opencollective.com/element/backer/26/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/27/website" target="_blank"><img src="https://opencollective.com/element/backer/27/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/28/website" target="_blank"><img src="https://opencollective.com/element/backer/28/avatar.svg"></a>
<a href="https://opencollective.com/element/backer/29/website" target="_blank"><img src="https://opencollective.com/element/backer/29/avatar.svg"></a>
## Sponsors
Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/element#sponsor)]
<a href="https://opencollective.com/element/sponsor/0/website" target="_blank"><img src="https://opencollective.com/element/sponsor/0/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/1/website" target="_blank"><img src="https://opencollective.com/element/sponsor/1/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/2/website" target="_blank"><img src="https://opencollective.com/element/sponsor/2/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/3/website" target="_blank"><img src="https://opencollective.com/element/sponsor/3/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/4/website" target="_blank"><img src="https://opencollective.com/element/sponsor/4/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/5/website" target="_blank"><img src="https://opencollective.com/element/sponsor/5/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/6/website" target="_blank"><img src="https://opencollective.com/element/sponsor/6/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/7/website" target="_blank"><img src="https://opencollective.com/element/sponsor/7/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/8/website" target="_blank"><img src="https://opencollective.com/element/sponsor/8/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/9/website" target="_blank"><img src="https://opencollective.com/element/sponsor/9/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/10/website" target="_blank"><img src="https://opencollective.com/element/sponsor/10/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/11/website" target="_blank"><img src="https://opencollective.com/element/sponsor/11/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/12/website" target="_blank"><img src="https://opencollective.com/element/sponsor/12/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/13/website" target="_blank"><img src="https://opencollective.com/element/sponsor/13/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/14/website" target="_blank"><img src="https://opencollective.com/element/sponsor/14/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/15/website" target="_blank"><img src="https://opencollective.com/element/sponsor/15/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/16/website" target="_blank"><img src="https://opencollective.com/element/sponsor/16/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/17/website" target="_blank"><img src="https://opencollective.com/element/sponsor/17/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/18/website" target="_blank"><img src="https://opencollective.com/element/sponsor/18/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/19/website" target="_blank"><img src="https://opencollective.com/element/sponsor/19/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/20/website" target="_blank"><img src="https://opencollective.com/element/sponsor/20/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/21/website" target="_blank"><img src="https://opencollective.com/element/sponsor/21/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/22/website" target="_blank"><img src="https://opencollective.com/element/sponsor/22/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/23/website" target="_blank"><img src="https://opencollective.com/element/sponsor/23/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/24/website" target="_blank"><img src="https://opencollective.com/element/sponsor/24/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/25/website" target="_blank"><img src="https://opencollective.com/element/sponsor/25/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/26/website" target="_blank"><img src="https://opencollective.com/element/sponsor/26/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/27/website" target="_blank"><img src="https://opencollective.com/element/sponsor/27/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/28/website" target="_blank"><img src="https://opencollective.com/element/sponsor/28/avatar.svg"></a>
<a href="https://opencollective.com/element/sponsor/29/website" target="_blank"><img src="https://opencollective.com/element/sponsor/29/avatar.svg"></a>
## Join Discusion Group
Scan the QR code using [Dingtalk App](https://www.dingtalk.com/) to join in discusion group :
<img alt="Join Discusion Group" src="https://user-images.githubusercontent.com/17680888/50588415-d9aaca00-0ebc-11e9-92e2-f71960346f85.png" width="300">
## LICENSE
[MIT](LICENSE)
+408
View File
@@ -0,0 +1,408 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 89);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 89:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/alert/src/main.vue?vue&type=template&id=6e53341b&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c("transition", { attrs: { name: "el-alert-fade" } }, [
_c(
"div",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.visible,
expression: "visible"
}
],
staticClass: "el-alert",
class: [_vm.typeClass, _vm.center ? "is-center" : ""],
attrs: { role: "alert" }
},
[
_vm.showIcon
? _c("i", {
staticClass: "el-alert__icon",
class: [_vm.iconClass, _vm.isBigIcon]
})
: _vm._e(),
_c("div", { staticClass: "el-alert__content" }, [
_vm.title || _vm.$slots.title
? _c(
"span",
{ staticClass: "el-alert__title", class: [_vm.isBoldTitle] },
[_vm._t("title", [_vm._v(_vm._s(_vm.title))])],
2
)
: _vm._e(),
_vm.$slots.default && !_vm.description
? _c(
"p",
{ staticClass: "el-alert__description" },
[_vm._t("default")],
2
)
: _vm._e(),
_vm.description && !_vm.$slots.default
? _c("p", { staticClass: "el-alert__description" }, [
_vm._v(_vm._s(_vm.description))
])
: _vm._e(),
_c(
"i",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.closable,
expression: "closable"
}
],
staticClass: "el-alert__closebtn",
class: {
"is-customed": _vm.closeText !== "",
"el-icon-close": _vm.closeText === ""
},
on: {
click: function($event) {
_vm.close()
}
}
},
[_vm._v(_vm._s(_vm.closeText))]
)
])
]
)
])
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/alert/src/main.vue?vue&type=template&id=6e53341b&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/alert/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
var TYPE_CLASSES_MAP = {
'success': 'el-icon-success',
'warning': 'el-icon-warning',
'error': 'el-icon-error'
};
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
name: 'ElAlert',
props: {
title: {
type: String,
default: ''
},
description: {
type: String,
default: ''
},
type: {
type: String,
default: 'info'
},
closable: {
type: Boolean,
default: true
},
closeText: {
type: String,
default: ''
},
showIcon: Boolean,
center: Boolean
},
data: function data() {
return {
visible: true
};
},
methods: {
close: function close() {
this.visible = false;
this.$emit('close');
}
},
computed: {
typeClass: function typeClass() {
return 'el-alert--' + this.type;
},
iconClass: function iconClass() {
return TYPE_CLASSES_MAP[this.type] || 'el-icon-info';
},
isBigIcon: function isBigIcon() {
return this.description || this.$slots.default ? 'is-big' : '';
},
isBoldTitle: function isBoldTitle() {
return this.description || this.$slots.default ? 'is-bold' : '';
}
}
});
// CONCATENATED MODULE: ./packages/alert/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/alert/src/main.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_mainvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/alert/src/main.vue"
/* harmony default export */ var main = (component.exports);
// CONCATENATED MODULE: ./packages/alert/index.js
/* istanbul ignore next */
main.install = function (Vue) {
Vue.component(main.name, main);
};
/* harmony default export */ var packages_alert = __webpack_exports__["default"] = (main);
/***/ })
/******/ });
+276
View File
@@ -0,0 +1,276 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 104);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 104:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/aside/src/main.vue?vue&type=template&id=03411dbf&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"aside",
{ staticClass: "el-aside", style: { width: _vm.width } },
[_vm._t("default")],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/aside/src/main.vue?vue&type=template&id=03411dbf&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/aside/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
name: 'ElAside',
componentName: 'ElAside',
props: {
width: {
type: String,
default: '300px'
}
}
});
// CONCATENATED MODULE: ./packages/aside/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/aside/src/main.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_mainvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/aside/src/main.vue"
/* harmony default export */ var main = (component.exports);
// CONCATENATED MODULE: ./packages/aside/index.js
/* istanbul ignore next */
main.install = function (Vue) {
Vue.component(main.name, main);
};
/* harmony default export */ var aside = __webpack_exports__["default"] = (main);
/***/ })
/******/ });
+947
View File
@@ -0,0 +1,947 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 54);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 10:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/migrating");
/***/ }),
/***/ 11:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/clickoutside");
/***/ }),
/***/ 14:
/***/ (function(module, exports) {
module.exports = require("throttle-debounce/debounce");
/***/ }),
/***/ 19:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/scrollbar");
/***/ }),
/***/ 21:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/focus");
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 4:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/util");
/***/ }),
/***/ 5:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/vue-popper");
/***/ }),
/***/ 54:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// 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=152f2ee6&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
directives: [
{
name: "clickoutside",
rawName: "v-clickoutside",
value: _vm.close,
expression: "close"
}
],
staticClass: "el-autocomplete",
attrs: {
"aria-haspopup": "listbox",
role: "combobox",
"aria-expanded": _vm.suggestionVisible,
"aria-owns": _vm.id
}
},
[
_c(
"el-input",
_vm._b(
{
ref: "input",
on: {
input: _vm.handleChange,
focus: _vm.handleFocus,
blur: _vm.handleBlur,
clear: _vm.handleClear
},
nativeOn: {
keydown: [
function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "up", 38, $event.key, [
"Up",
"ArrowUp"
])
) {
return null
}
$event.preventDefault()
_vm.highlight(_vm.highlightedIndex - 1)
},
function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "down", 40, $event.key, [
"Down",
"ArrowDown"
])
) {
return null
}
$event.preventDefault()
_vm.highlight(_vm.highlightedIndex + 1)
},
function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
) {
return null
}
return _vm.handleKeyEnter($event)
},
function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "tab", 9, $event.key, "Tab")
) {
return null
}
return _vm.close($event)
}
]
}
},
"el-input",
[_vm.$props, _vm.$attrs],
false
),
[
_vm.$slots.prepend
? _c("template", { slot: "prepend" }, [_vm._t("prepend")], 2)
: _vm._e(),
_vm.$slots.append
? _c("template", { slot: "append" }, [_vm._t("append")], 2)
: _vm._e(),
_vm.$slots.prefix
? _c("template", { slot: "prefix" }, [_vm._t("prefix")], 2)
: _vm._e(),
_vm.$slots.suffix
? _c("template", { slot: "suffix" }, [_vm._t("suffix")], 2)
: _vm._e()
],
2
),
_c(
"el-autocomplete-suggestions",
{
ref: "suggestions",
class: [_vm.popperClass ? _vm.popperClass : ""],
attrs: {
"visible-arrow": "",
"popper-options": _vm.popperOptions,
"append-to-body": _vm.popperAppendToBody,
placement: _vm.placement,
id: _vm.id
}
},
_vm._l(_vm.suggestions, function(item, index) {
return _c(
"li",
{
key: index,
class: { highlighted: _vm.highlightedIndex === index },
attrs: {
id: _vm.id + "-item-" + index,
role: "option",
"aria-selected": _vm.highlightedIndex === index
},
on: {
click: function($event) {
_vm.select(item)
}
}
},
[
_vm._t(
"default",
[
_vm._v("\n " + _vm._s(item[_vm.valueKey]) + "\n ")
],
{ item: item }
)
],
2
)
}),
0
)
],
1
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue?vue&type=template&id=152f2ee6&
// EXTERNAL MODULE: external "throttle-debounce/debounce"
var debounce_ = __webpack_require__(14);
var debounce_default = /*#__PURE__*/__webpack_require__.n(debounce_);
// EXTERNAL MODULE: external "element-ui/lib/input"
var input_ = __webpack_require__(9);
var input_default = /*#__PURE__*/__webpack_require__.n(input_);
// EXTERNAL MODULE: external "element-ui/lib/utils/clickoutside"
var clickoutside_ = __webpack_require__(11);
var clickoutside_default = /*#__PURE__*/__webpack_require__.n(clickoutside_);
// 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=cd10dcf0&
var autocomplete_suggestionsvue_type_template_id_cd10dcf0_render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"transition",
{ attrs: { name: "el-zoom-in-top" }, on: { "after-leave": _vm.doDestroy } },
[
_c(
"div",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.showPopper,
expression: "showPopper"
}
],
staticClass: "el-autocomplete-suggestion el-popper",
class: {
"is-loading": !_vm.parent.hideLoading && _vm.parent.loading
},
style: { width: _vm.dropdownWidth },
attrs: { role: "region" }
},
[
_c(
"el-scrollbar",
{
attrs: {
tag: "ul",
"wrap-class": "el-autocomplete-suggestion__wrap",
"view-class": "el-autocomplete-suggestion__list"
}
},
[
!_vm.parent.hideLoading && _vm.parent.loading
? _c("li", [_c("i", { staticClass: "el-icon-loading" })])
: _vm._t("default")
],
2
)
],
1
)
]
)
}
var autocomplete_suggestionsvue_type_template_id_cd10dcf0_staticRenderFns = []
autocomplete_suggestionsvue_type_template_id_cd10dcf0_render._withStripped = true
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=template&id=cd10dcf0&
// EXTERNAL MODULE: external "element-ui/lib/utils/vue-popper"
var vue_popper_ = __webpack_require__(5);
var vue_popper_default = /*#__PURE__*/__webpack_require__.n(vue_popper_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// EXTERNAL MODULE: external "element-ui/lib/scrollbar"
var scrollbar_ = __webpack_require__(19);
var scrollbar_default = /*#__PURE__*/__webpack_require__.n(scrollbar_);
// 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&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var autocomplete_suggestionsvue_type_script_lang_js_ = ({
components: { ElScrollbar: scrollbar_default.a },
mixins: [vue_popper_default.a, emitter_default.a],
componentName: 'ElAutocompleteSuggestions',
data: function data() {
return {
parent: this.$parent,
dropdownWidth: ''
};
},
props: {
options: {
default: function _default() {
return {
gpuAcceleration: false
};
}
},
id: String
},
methods: {
select: function select(item) {
this.dispatch('ElAutocomplete', 'item-click', item);
}
},
updated: function updated() {
var _this = this;
this.$nextTick(function (_) {
_this.popperJS && _this.updatePopper();
});
},
mounted: function mounted() {
this.$parent.popperElm = this.popperElm = this.$el;
this.referenceElm = this.$parent.$refs.input.$refs.input;
this.referenceList = this.$el.querySelector('.el-autocomplete-suggestion__list');
this.referenceList.setAttribute('role', 'listbox');
this.referenceList.setAttribute('id', this.id);
},
created: function created() {
var _this2 = this;
this.$on('visible', function (val, inputWidth) {
_this2.dropdownWidth = inputWidth + 'px';
_this2.showPopper = val;
});
}
});
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=script&lang=js&
/* harmony default export */ var src_autocomplete_suggestionsvue_type_script_lang_js_ = (autocomplete_suggestionsvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_autocomplete_suggestionsvue_type_script_lang_js_,
autocomplete_suggestionsvue_type_template_id_cd10dcf0_render,
autocomplete_suggestionsvue_type_template_id_cd10dcf0_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/autocomplete/src/autocomplete-suggestions.vue"
/* harmony default export */ var autocomplete_suggestions = (component.exports);
// EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"
var migrating_ = __webpack_require__(10);
var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);
// EXTERNAL MODULE: external "element-ui/lib/utils/util"
var util_ = __webpack_require__(4);
// EXTERNAL MODULE: external "element-ui/lib/mixins/focus"
var focus_ = __webpack_require__(21);
var focus_default = /*#__PURE__*/__webpack_require__.n(focus_);
// 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&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var autocompletevue_type_script_lang_js_ = ({
name: 'ElAutocomplete',
mixins: [emitter_default.a, focus_default()('input'), migrating_default.a],
inheritAttrs: false,
componentName: 'ElAutocomplete',
components: {
ElInput: input_default.a,
ElAutocompleteSuggestions: autocomplete_suggestions
},
directives: { Clickoutside: clickoutside_default.a },
props: {
valueKey: {
type: String,
default: 'value'
},
popperClass: String,
popperOptions: Object,
placeholder: String,
clearable: {
type: Boolean,
default: false
},
disabled: Boolean,
name: String,
size: String,
value: String,
maxlength: Number,
minlength: Number,
autofocus: Boolean,
fetchSuggestions: Function,
triggerOnFocus: {
type: Boolean,
default: true
},
customItem: String,
selectWhenUnmatched: {
type: Boolean,
default: false
},
prefixIcon: String,
suffixIcon: String,
label: String,
debounce: {
type: Number,
default: 300
},
placement: {
type: String,
default: 'bottom-start'
},
hideLoading: Boolean,
popperAppendToBody: {
type: Boolean,
default: true
},
highlightFirstItem: {
type: Boolean,
default: false
}
},
data: function data() {
return {
activated: false,
suggestions: [],
loading: false,
highlightedIndex: -1,
suggestionDisabled: false
};
},
computed: {
suggestionVisible: function suggestionVisible() {
var suggestions = this.suggestions;
var isValidData = Array.isArray(suggestions) && suggestions.length > 0;
return (isValidData || this.loading) && this.activated;
},
id: function id() {
return 'el-autocomplete-' + Object(util_["generateId"])();
}
},
watch: {
suggestionVisible: function suggestionVisible(val) {
var $input = this.getInput();
if ($input) {
this.broadcast('ElAutocompleteSuggestions', 'visible', [val, $input.offsetWidth]);
}
}
},
methods: {
getMigratingConfig: function getMigratingConfig() {
return {
props: {
'custom-item': 'custom-item is removed, use scoped slot instead.',
'props': 'props is removed, use value-key instead.'
}
};
},
getData: function getData(queryString) {
var _this = this;
if (this.suggestionDisabled) {
return;
}
this.loading = true;
this.fetchSuggestions(queryString, function (suggestions) {
_this.loading = false;
if (_this.suggestionDisabled) {
return;
}
if (Array.isArray(suggestions)) {
_this.suggestions = suggestions;
_this.highlightedIndex = _this.highlightFirstItem ? 0 : -1;
} else {
console.error('[Element Error][Autocomplete]autocomplete suggestions must be an array');
}
});
},
handleChange: function handleChange(value) {
this.$emit('input', value);
this.suggestionDisabled = false;
if (!this.triggerOnFocus && !value) {
this.suggestionDisabled = true;
this.suggestions = [];
return;
}
this.debouncedGetData(value);
},
handleFocus: function handleFocus(event) {
this.activated = true;
this.$emit('focus', event);
if (this.triggerOnFocus) {
this.debouncedGetData(this.value);
}
},
handleBlur: function handleBlur(event) {
this.$emit('blur', event);
},
handleClear: function handleClear() {
this.activated = false;
this.$emit('clear');
},
close: function close(e) {
this.activated = false;
},
handleKeyEnter: function handleKeyEnter(e) {
var _this2 = this;
if (this.suggestionVisible && this.highlightedIndex >= 0 && this.highlightedIndex < this.suggestions.length) {
e.preventDefault();
this.select(this.suggestions[this.highlightedIndex]);
} else if (this.selectWhenUnmatched) {
this.$emit('select', { value: this.value });
this.$nextTick(function (_) {
_this2.suggestions = [];
_this2.highlightedIndex = -1;
});
}
},
select: function select(item) {
var _this3 = this;
this.$emit('input', item[this.valueKey]);
this.$emit('select', item);
this.$nextTick(function (_) {
_this3.suggestions = [];
_this3.highlightedIndex = -1;
});
},
highlight: function highlight(index) {
if (!this.suggestionVisible || this.loading) {
return;
}
if (index < 0) {
this.highlightedIndex = -1;
return;
}
if (index >= this.suggestions.length) {
index = this.suggestions.length - 1;
}
var suggestion = this.$refs.suggestions.$el.querySelector('.el-autocomplete-suggestion__wrap');
var suggestionList = suggestion.querySelectorAll('.el-autocomplete-suggestion__list li');
var highlightItem = suggestionList[index];
var scrollTop = suggestion.scrollTop;
var offsetTop = highlightItem.offsetTop;
if (offsetTop + highlightItem.scrollHeight > scrollTop + suggestion.clientHeight) {
suggestion.scrollTop += highlightItem.scrollHeight;
}
if (offsetTop < scrollTop) {
suggestion.scrollTop -= highlightItem.scrollHeight;
}
this.highlightedIndex = index;
var $input = this.getInput();
$input.setAttribute('aria-activedescendant', this.id + '-item-' + this.highlightedIndex);
},
getInput: function getInput() {
return this.$refs.input.getInput();
}
},
mounted: function mounted() {
var _this4 = this;
this.debouncedGetData = debounce_default()(this.debounce, this.getData);
this.$on('item-click', function (item) {
_this4.select(item);
});
var $input = this.getInput();
$input.setAttribute('role', 'textbox');
$input.setAttribute('aria-autocomplete', 'list');
$input.setAttribute('aria-controls', 'id');
$input.setAttribute('aria-activedescendant', this.id + '-item-' + this.highlightedIndex);
},
beforeDestroy: function beforeDestroy() {
this.$refs.suggestions.$destroy();
}
});
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue?vue&type=script&lang=js&
/* harmony default export */ var src_autocompletevue_type_script_lang_js_ = (autocompletevue_type_script_lang_js_);
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue
/* normalize component */
var autocomplete_component = Object(componentNormalizer["a" /* default */])(
src_autocompletevue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var autocomplete_api; }
autocomplete_component.options.__file = "packages/autocomplete/src/autocomplete.vue"
/* harmony default export */ var autocomplete = (autocomplete_component.exports);
// CONCATENATED MODULE: ./packages/autocomplete/index.js
/* istanbul ignore next */
autocomplete.install = function (Vue) {
Vue.component(autocomplete.name, autocomplete);
};
/* harmony default export */ var packages_autocomplete = __webpack_exports__["default"] = (autocomplete);
/***/ }),
/***/ 9:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/input");
/***/ })
/******/ });
+333
View File
@@ -0,0 +1,333 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 93);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 93:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/badge/src/main.vue?vue&type=template&id=7ccb6598&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{ staticClass: "el-badge" },
[
_vm._t("default"),
_c("transition", { attrs: { name: "el-zoom-in-center" } }, [
_c("sup", {
directives: [
{
name: "show",
rawName: "v-show",
value:
!_vm.hidden && (_vm.content || _vm.content === 0 || _vm.isDot),
expression: "!hidden && (content || content === 0 || isDot)"
}
],
staticClass: "el-badge__content",
class: [
"el-badge__content--" + _vm.type,
{
"is-fixed": _vm.$slots.default,
"is-dot": _vm.isDot
}
],
domProps: { textContent: _vm._s(_vm.content) }
})
])
],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/badge/src/main.vue?vue&type=template&id=7ccb6598&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/badge/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
name: 'ElBadge',
props: {
value: {},
max: Number,
isDot: Boolean,
hidden: Boolean,
type: {
type: String,
validator: function validator(val) {
return ['primary', 'success', 'warning', 'info', 'danger'].indexOf(val) > -1;
}
}
},
computed: {
content: function content() {
if (this.isDot) return;
var value = this.value;
var max = this.max;
if (typeof value === 'number' && typeof max === 'number') {
return max < value ? max + '+' : value;
}
return value;
}
}
});
// CONCATENATED MODULE: ./packages/badge/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/badge/src/main.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_mainvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/badge/src/main.vue"
/* harmony default export */ var main = (component.exports);
// CONCATENATED MODULE: ./packages/badge/index.js
/* istanbul ignore next */
main.install = function (Vue) {
Vue.component(main.name, main);
};
/* harmony default export */ var badge = __webpack_exports__["default"] = (main);
/***/ })
/******/ });
+321
View File
@@ -0,0 +1,321 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 85);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 85:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/breadcrumb/src/breadcrumb-item.vue?vue&type=template&id=fcf9eaac&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c("span", { staticClass: "el-breadcrumb__item" }, [
_c(
"span",
{
ref: "link",
class: ["el-breadcrumb__inner", _vm.to ? "is-link" : ""],
attrs: { role: "link" }
},
[_vm._t("default")],
2
),
_vm.separatorClass
? _c("i", {
staticClass: "el-breadcrumb__separator",
class: _vm.separatorClass
})
: _c(
"span",
{
staticClass: "el-breadcrumb__separator",
attrs: { role: "presentation" }
},
[_vm._v(_vm._s(_vm.separator))]
)
])
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb-item.vue?vue&type=template&id=fcf9eaac&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/breadcrumb/src/breadcrumb-item.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var breadcrumb_itemvue_type_script_lang_js_ = ({
name: 'ElBreadcrumbItem',
props: {
to: {},
replace: Boolean
},
data: function data() {
return {
separator: '',
separatorClass: ''
};
},
inject: ['elBreadcrumb'],
mounted: function mounted() {
var _this = this;
this.separator = this.elBreadcrumb.separator;
this.separatorClass = this.elBreadcrumb.separatorClass;
var link = this.$refs.link;
link.setAttribute('role', 'link');
link.addEventListener('click', function (_) {
var to = _this.to,
$router = _this.$router;
if (!to || !$router) return;
_this.replace ? $router.replace(to) : $router.push(to);
});
}
});
// CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb-item.vue?vue&type=script&lang=js&
/* harmony default export */ var src_breadcrumb_itemvue_type_script_lang_js_ = (breadcrumb_itemvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb-item.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_breadcrumb_itemvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/breadcrumb/src/breadcrumb-item.vue"
/* harmony default export */ var breadcrumb_item = (component.exports);
// CONCATENATED MODULE: ./packages/breadcrumb-item/index.js
/* istanbul ignore next */
breadcrumb_item.install = function (Vue) {
Vue.component(breadcrumb_item.name, breadcrumb_item);
};
/* harmony default export */ var packages_breadcrumb_item = __webpack_exports__["default"] = (breadcrumb_item);
/***/ })
/******/ });
+292
View File
@@ -0,0 +1,292 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 84);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 84:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/breadcrumb/src/breadcrumb.vue?vue&type=template&id=4b464c06&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
staticClass: "el-breadcrumb",
attrs: { "aria-label": "Breadcrumb", role: "navigation" }
},
[_vm._t("default")],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb.vue?vue&type=template&id=4b464c06&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/breadcrumb/src/breadcrumb.vue?vue&type=script&lang=js&
//
//
//
//
//
/* harmony default export */ var breadcrumbvue_type_script_lang_js_ = ({
name: 'ElBreadcrumb',
props: {
separator: {
type: String,
default: '/'
},
separatorClass: {
type: String,
default: ''
}
},
provide: function provide() {
return {
elBreadcrumb: this
};
},
mounted: function mounted() {
var items = this.$el.querySelectorAll('.el-breadcrumb__item');
if (items.length) {
items[items.length - 1].setAttribute('aria-current', 'page');
}
}
});
// CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb.vue?vue&type=script&lang=js&
/* harmony default export */ var src_breadcrumbvue_type_script_lang_js_ = (breadcrumbvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/breadcrumb/src/breadcrumb.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_breadcrumbvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/breadcrumb/src/breadcrumb.vue"
/* harmony default export */ var breadcrumb = (component.exports);
// CONCATENATED MODULE: ./packages/breadcrumb/index.js
/* istanbul ignore next */
breadcrumb.install = function (Vue) {
Vue.component(breadcrumb.name, breadcrumb);
};
/* harmony default export */ var packages_breadcrumb = __webpack_exports__["default"] = (breadcrumb);
/***/ })
/******/ });
+261
View File
@@ -0,0 +1,261 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 83);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 83:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/button/src/button-group.vue?vue&type=template&id=3d8661d0&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c("div", { staticClass: "el-button-group" }, [_vm._t("default")], 2)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/button/src/button-group.vue?vue&type=template&id=3d8661d0&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/button/src/button-group.vue?vue&type=script&lang=js&
//
//
//
//
//
/* harmony default export */ var button_groupvue_type_script_lang_js_ = ({
name: 'ElButtonGroup'
});
// CONCATENATED MODULE: ./packages/button/src/button-group.vue?vue&type=script&lang=js&
/* harmony default export */ var src_button_groupvue_type_script_lang_js_ = (button_groupvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/button/src/button-group.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_button_groupvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/button/src/button-group.vue"
/* harmony default export */ var button_group = (component.exports);
// CONCATENATED MODULE: ./packages/button-group/index.js
/* istanbul ignore next */
button_group.install = function (Vue) {
Vue.component(button_group.name, button_group);
};
/* harmony default export */ var packages_button_group = __webpack_exports__["default"] = (button_group);
/***/ })
/******/ });
+356
View File
@@ -0,0 +1,356 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 82);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 82:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/button/src/button.vue?vue&type=template&id=ca859fb4&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"button",
{
staticClass: "el-button",
class: [
_vm.type ? "el-button--" + _vm.type : "",
_vm.buttonSize ? "el-button--" + _vm.buttonSize : "",
{
"is-disabled": _vm.buttonDisabled,
"is-loading": _vm.loading,
"is-plain": _vm.plain,
"is-round": _vm.round,
"is-circle": _vm.circle
}
],
attrs: {
disabled: _vm.buttonDisabled || _vm.loading,
autofocus: _vm.autofocus,
type: _vm.nativeType
},
on: { click: _vm.handleClick }
},
[
_vm.loading ? _c("i", { staticClass: "el-icon-loading" }) : _vm._e(),
_vm.icon && !_vm.loading ? _c("i", { class: _vm.icon }) : _vm._e(),
_vm.$slots.default ? _c("span", [_vm._t("default")], 2) : _vm._e()
]
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/button/src/button.vue?vue&type=template&id=ca859fb4&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/button/src/button.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var buttonvue_type_script_lang_js_ = ({
name: 'ElButton',
inject: {
elForm: {
default: ''
},
elFormItem: {
default: ''
}
},
props: {
type: {
type: String,
default: 'default'
},
size: String,
icon: {
type: String,
default: ''
},
nativeType: {
type: String,
default: 'button'
},
loading: Boolean,
disabled: Boolean,
plain: Boolean,
autofocus: Boolean,
round: Boolean,
circle: Boolean
},
computed: {
_elFormItemSize: function _elFormItemSize() {
return (this.elFormItem || {}).elFormItemSize;
},
buttonSize: function buttonSize() {
return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
},
buttonDisabled: function buttonDisabled() {
return this.disabled || (this.elForm || {}).disabled;
}
},
methods: {
handleClick: function handleClick(evt) {
this.$emit('click', evt);
}
}
});
// CONCATENATED MODULE: ./packages/button/src/button.vue?vue&type=script&lang=js&
/* harmony default export */ var src_buttonvue_type_script_lang_js_ = (buttonvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/button/src/button.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_buttonvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/button/src/button.vue"
/* harmony default export */ var src_button = (component.exports);
// CONCATENATED MODULE: ./packages/button/index.js
/* istanbul ignore next */
src_button.install = function (Vue) {
Vue.component(src_button.name, src_button);
};
/* harmony default export */ var packages_button = __webpack_exports__["default"] = (src_button);
/***/ })
/******/ });
+296
View File
@@ -0,0 +1,296 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 94);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 94:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/card/src/main.vue?vue&type=template&id=59a4a40f&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
staticClass: "el-card",
class: _vm.shadow ? "is-" + _vm.shadow + "-shadow" : "is-always-shadow"
},
[
_vm.$slots.header || _vm.header
? _c(
"div",
{ staticClass: "el-card__header" },
[_vm._t("header", [_vm._v(_vm._s(_vm.header))])],
2
)
: _vm._e(),
_c(
"div",
{ staticClass: "el-card__body", style: _vm.bodyStyle },
[_vm._t("default")],
2
)
]
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/card/src/main.vue?vue&type=template&id=59a4a40f&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/card/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
name: 'ElCard',
props: {
header: {},
bodyStyle: {},
shadow: {
type: String
}
}
});
// CONCATENATED MODULE: ./packages/card/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/card/src/main.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_mainvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/card/src/main.vue"
/* harmony default export */ var main = (component.exports);
// CONCATENATED MODULE: ./packages/card/index.js
/* istanbul ignore next */
main.install = function (Vue) {
Vue.component(main.name, main);
};
/* harmony default export */ var card = __webpack_exports__["default"] = (main);
/***/ })
/******/ });
+408
View File
@@ -0,0 +1,408 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 99);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 99:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/carousel/src/item.vue?vue&type=template&id=1801ae19&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.ready,
expression: "ready"
}
],
staticClass: "el-carousel__item",
class: {
"is-active": _vm.active,
"el-carousel__item--card": _vm.$parent.type === "card",
"is-in-stage": _vm.inStage,
"is-hover": _vm.hover,
"is-animating": _vm.animating
},
style: {
msTransform:
"translateX(" + _vm.translate + "px) scale(" + _vm.scale + ")",
webkitTransform:
"translateX(" + _vm.translate + "px) scale(" + _vm.scale + ")",
transform:
"translateX(" + _vm.translate + "px) scale(" + _vm.scale + ")"
},
on: { click: _vm.handleItemClick }
},
[
_vm.$parent.type === "card"
? _c("div", {
directives: [
{
name: "show",
rawName: "v-show",
value: !_vm.active,
expression: "!active"
}
],
staticClass: "el-carousel__mask"
})
: _vm._e(),
_vm._t("default")
],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/carousel/src/item.vue?vue&type=template&id=1801ae19&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/carousel/src/item.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
var CARD_SCALE = 0.83;
/* harmony default export */ var itemvue_type_script_lang_js_ = ({
name: 'ElCarouselItem',
props: {
name: String,
label: {
type: [String, Number],
default: ''
}
},
data: function data() {
return {
hover: false,
translate: 0,
scale: 1,
active: false,
ready: false,
inStage: false,
animating: false
};
},
methods: {
processIndex: function processIndex(index, activeIndex, length) {
if (activeIndex === 0 && index === length - 1) {
return -1;
} else if (activeIndex === length - 1 && index === 0) {
return length;
} else if (index < activeIndex - 1 && activeIndex - index >= length / 2) {
return length + 1;
} else if (index > activeIndex + 1 && index - activeIndex >= length / 2) {
return -2;
}
return index;
},
calculateTranslate: function calculateTranslate(index, activeIndex, parentWidth) {
if (this.inStage) {
return parentWidth * ((2 - CARD_SCALE) * (index - activeIndex) + 1) / 4;
} else if (index < activeIndex) {
return -(1 + CARD_SCALE) * parentWidth / 4;
} else {
return (3 + CARD_SCALE) * parentWidth / 4;
}
},
translateItem: function translateItem(index, activeIndex, oldIndex) {
var parentWidth = this.$parent.$el.offsetWidth;
var length = this.$parent.items.length;
if (this.$parent.type !== 'card' && oldIndex !== undefined) {
this.animating = index === activeIndex || index === oldIndex;
}
if (index !== activeIndex && length > 2 && this.$parent.loop) {
index = this.processIndex(index, activeIndex, length);
}
if (this.$parent.type === 'card') {
this.inStage = Math.round(Math.abs(index - activeIndex)) <= 1;
this.active = index === activeIndex;
this.translate = this.calculateTranslate(index, activeIndex, parentWidth);
this.scale = this.active ? 1 : CARD_SCALE;
} else {
this.active = index === activeIndex;
this.translate = parentWidth * (index - activeIndex);
}
this.ready = true;
},
handleItemClick: function handleItemClick() {
var parent = this.$parent;
if (parent && parent.type === 'card') {
var index = parent.items.indexOf(this);
parent.setActiveItem(index);
}
}
},
created: function created() {
this.$parent && this.$parent.updateItems();
},
destroyed: function destroyed() {
this.$parent && this.$parent.updateItems();
}
});
// CONCATENATED MODULE: ./packages/carousel/src/item.vue?vue&type=script&lang=js&
/* harmony default export */ var src_itemvue_type_script_lang_js_ = (itemvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/carousel/src/item.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_itemvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/carousel/src/item.vue"
/* harmony default export */ var item = (component.exports);
// CONCATENATED MODULE: ./packages/carousel-item/index.js
/* istanbul ignore next */
item.install = function (Vue) {
Vue.component(item.name, item);
};
/* harmony default export */ var carousel_item = __webpack_exports__["default"] = (item);
/***/ })
/******/ });
+665
View File
@@ -0,0 +1,665 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 98);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 15:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/resize-event");
/***/ }),
/***/ 38:
/***/ (function(module, exports) {
module.exports = require("throttle-debounce/throttle");
/***/ }),
/***/ 98:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/carousel/src/main.vue?vue&type=template&id=5d5d1482&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
staticClass: "el-carousel",
class: { "el-carousel--card": _vm.type === "card" },
on: {
mouseenter: function($event) {
$event.stopPropagation()
return _vm.handleMouseEnter($event)
},
mouseleave: function($event) {
$event.stopPropagation()
return _vm.handleMouseLeave($event)
}
}
},
[
_c(
"div",
{
staticClass: "el-carousel__container",
style: { height: _vm.height }
},
[
_c("transition", { attrs: { name: "carousel-arrow-left" } }, [
_vm.arrow !== "never"
? _c(
"button",
{
directives: [
{
name: "show",
rawName: "v-show",
value:
(_vm.arrow === "always" || _vm.hover) &&
(_vm.loop || _vm.activeIndex > 0),
expression:
"(arrow === 'always' || hover) && (loop || activeIndex > 0)"
}
],
staticClass: "el-carousel__arrow el-carousel__arrow--left",
attrs: { type: "button" },
on: {
mouseenter: function($event) {
_vm.handleButtonEnter("left")
},
mouseleave: _vm.handleButtonLeave,
click: function($event) {
$event.stopPropagation()
_vm.throttledArrowClick(_vm.activeIndex - 1)
}
}
},
[_c("i", { staticClass: "el-icon-arrow-left" })]
)
: _vm._e()
]),
_c("transition", { attrs: { name: "carousel-arrow-right" } }, [
_vm.arrow !== "never"
? _c(
"button",
{
directives: [
{
name: "show",
rawName: "v-show",
value:
(_vm.arrow === "always" || _vm.hover) &&
(_vm.loop || _vm.activeIndex < _vm.items.length - 1),
expression:
"(arrow === 'always' || hover) && (loop || activeIndex < items.length - 1)"
}
],
staticClass: "el-carousel__arrow el-carousel__arrow--right",
attrs: { type: "button" },
on: {
mouseenter: function($event) {
_vm.handleButtonEnter("right")
},
mouseleave: _vm.handleButtonLeave,
click: function($event) {
$event.stopPropagation()
_vm.throttledArrowClick(_vm.activeIndex + 1)
}
}
},
[_c("i", { staticClass: "el-icon-arrow-right" })]
)
: _vm._e()
]),
_vm._t("default")
],
2
),
_vm.indicatorPosition !== "none"
? _c(
"ul",
{
staticClass: "el-carousel__indicators",
class: {
"el-carousel__indicators--labels": _vm.hasLabel,
"el-carousel__indicators--outside":
_vm.indicatorPosition === "outside" || _vm.type === "card"
}
},
_vm._l(_vm.items, function(item, index) {
return _c(
"li",
{
staticClass: "el-carousel__indicator",
class: { "is-active": index === _vm.activeIndex },
on: {
mouseenter: function($event) {
_vm.throttledIndicatorHover(index)
},
click: function($event) {
$event.stopPropagation()
_vm.handleIndicatorClick(index)
}
}
},
[
_c("button", { staticClass: "el-carousel__button" }, [
_vm.hasLabel
? _c("span", [_vm._v(_vm._s(item.label))])
: _vm._e()
])
]
)
}),
0
)
: _vm._e()
]
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/carousel/src/main.vue?vue&type=template&id=5d5d1482&
// EXTERNAL MODULE: external "throttle-debounce/throttle"
var throttle_ = __webpack_require__(38);
var throttle_default = /*#__PURE__*/__webpack_require__.n(throttle_);
// EXTERNAL MODULE: external "element-ui/lib/utils/resize-event"
var resize_event_ = __webpack_require__(15);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/carousel/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
name: 'ElCarousel',
props: {
initialIndex: {
type: Number,
default: 0
},
height: String,
trigger: {
type: String,
default: 'hover'
},
autoplay: {
type: Boolean,
default: true
},
interval: {
type: Number,
default: 3000
},
indicatorPosition: String,
indicator: {
type: Boolean,
default: true
},
arrow: {
type: String,
default: 'hover'
},
type: String,
loop: {
type: Boolean,
default: true
}
},
data: function data() {
return {
items: [],
activeIndex: -1,
containerWidth: 0,
timer: null,
hover: false
};
},
computed: {
hasLabel: function hasLabel() {
return this.items.some(function (item) {
return item.label.toString().length > 0;
});
}
},
watch: {
items: function items(val) {
if (val.length > 0) this.setActiveItem(this.initialIndex);
},
activeIndex: function activeIndex(val, oldVal) {
this.resetItemPosition(oldVal);
this.$emit('change', val, oldVal);
},
autoplay: function autoplay(val) {
val ? this.startTimer() : this.pauseTimer();
},
loop: function loop() {
this.setActiveItem(this.activeIndex);
}
},
methods: {
handleMouseEnter: function handleMouseEnter() {
this.hover = true;
this.pauseTimer();
},
handleMouseLeave: function handleMouseLeave() {
this.hover = false;
this.startTimer();
},
itemInStage: function itemInStage(item, index) {
var length = this.items.length;
if (index === length - 1 && item.inStage && this.items[0].active || item.inStage && this.items[index + 1] && this.items[index + 1].active) {
return 'left';
} else if (index === 0 && item.inStage && this.items[length - 1].active || item.inStage && this.items[index - 1] && this.items[index - 1].active) {
return 'right';
}
return false;
},
handleButtonEnter: function handleButtonEnter(arrow) {
var _this = this;
this.items.forEach(function (item, index) {
if (arrow === _this.itemInStage(item, index)) {
item.hover = true;
}
});
},
handleButtonLeave: function handleButtonLeave() {
this.items.forEach(function (item) {
item.hover = false;
});
},
updateItems: function updateItems() {
this.items = this.$children.filter(function (child) {
return child.$options.name === 'ElCarouselItem';
});
},
resetItemPosition: function resetItemPosition(oldIndex) {
var _this2 = this;
this.items.forEach(function (item, index) {
item.translateItem(index, _this2.activeIndex, oldIndex);
});
},
playSlides: function playSlides() {
if (this.activeIndex < this.items.length - 1) {
this.activeIndex++;
} else if (this.loop) {
this.activeIndex = 0;
}
},
pauseTimer: function pauseTimer() {
if (this.timer) {
clearInterval(this.timer);
this.timer = null;
}
},
startTimer: function startTimer() {
if (this.interval <= 0 || !this.autoplay || this.timer) return;
this.timer = setInterval(this.playSlides, this.interval);
},
setActiveItem: function setActiveItem(index) {
if (typeof index === 'string') {
var filteredItems = this.items.filter(function (item) {
return item.name === index;
});
if (filteredItems.length > 0) {
index = this.items.indexOf(filteredItems[0]);
}
}
index = Number(index);
if (isNaN(index) || index !== Math.floor(index)) {
false && false;
return;
}
var length = this.items.length;
var oldIndex = this.activeIndex;
if (index < 0) {
this.activeIndex = this.loop ? length - 1 : 0;
} else if (index >= length) {
this.activeIndex = this.loop ? 0 : length - 1;
} else {
this.activeIndex = index;
}
if (oldIndex === this.activeIndex) {
this.resetItemPosition(oldIndex);
}
},
prev: function prev() {
this.setActiveItem(this.activeIndex - 1);
},
next: function next() {
this.setActiveItem(this.activeIndex + 1);
},
handleIndicatorClick: function handleIndicatorClick(index) {
this.activeIndex = index;
},
handleIndicatorHover: function handleIndicatorHover(index) {
if (this.trigger === 'hover' && index !== this.activeIndex) {
this.activeIndex = index;
}
}
},
created: function created() {
var _this3 = this;
this.throttledArrowClick = throttle_default()(300, true, function (index) {
_this3.setActiveItem(index);
});
this.throttledIndicatorHover = throttle_default()(300, function (index) {
_this3.handleIndicatorHover(index);
});
},
mounted: function mounted() {
var _this4 = this;
this.updateItems();
this.$nextTick(function () {
Object(resize_event_["addResizeListener"])(_this4.$el, _this4.resetItemPosition);
if (_this4.initialIndex < _this4.items.length && _this4.initialIndex >= 0) {
_this4.activeIndex = _this4.initialIndex;
}
_this4.startTimer();
});
},
beforeDestroy: function beforeDestroy() {
if (this.$el) Object(resize_event_["removeResizeListener"])(this.$el, this.resetItemPosition);
this.pauseTimer();
}
});
// CONCATENATED MODULE: ./packages/carousel/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/carousel/src/main.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_mainvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/carousel/src/main.vue"
/* harmony default export */ var main = (component.exports);
// CONCATENATED MODULE: ./packages/carousel/index.js
/* istanbul ignore next */
main.install = function (Vue) {
Vue.component(main.name, main);
};
/* harmony default export */ var carousel = __webpack_exports__["default"] = (main);
/***/ })
/******/ });
+1433
View File
File diff suppressed because it is too large Load Diff
+572
View File
@@ -0,0 +1,572 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 78);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 78:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox-button.vue?vue&type=template&id=478e906e&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"label",
{
staticClass: "el-checkbox-button",
class: [
_vm.size ? "el-checkbox-button--" + _vm.size : "",
{ "is-disabled": _vm.isDisabled },
{ "is-checked": _vm.isChecked },
{ "is-focus": _vm.focus }
],
attrs: {
role: "checkbox",
"aria-checked": _vm.isChecked,
"aria-disabled": _vm.isDisabled
}
},
[
_vm.trueLabel || _vm.falseLabel
? _c("input", {
directives: [
{
name: "model",
rawName: "v-model",
value: _vm.model,
expression: "model"
}
],
staticClass: "el-checkbox-button__original",
attrs: {
type: "checkbox",
name: _vm.name,
disabled: _vm.isDisabled,
"true-value": _vm.trueLabel,
"false-value": _vm.falseLabel
},
domProps: {
checked: Array.isArray(_vm.model)
? _vm._i(_vm.model, null) > -1
: _vm._q(_vm.model, _vm.trueLabel)
},
on: {
change: [
function($event) {
var $$a = _vm.model,
$$el = $event.target,
$$c = $$el.checked ? _vm.trueLabel : _vm.falseLabel
if (Array.isArray($$a)) {
var $$v = null,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 && (_vm.model = $$a.concat([$$v]))
} else {
$$i > -1 &&
(_vm.model = $$a
.slice(0, $$i)
.concat($$a.slice($$i + 1)))
}
} else {
_vm.model = $$c
}
},
_vm.handleChange
],
focus: function($event) {
_vm.focus = true
},
blur: function($event) {
_vm.focus = false
}
}
})
: _c("input", {
directives: [
{
name: "model",
rawName: "v-model",
value: _vm.model,
expression: "model"
}
],
staticClass: "el-checkbox-button__original",
attrs: {
type: "checkbox",
name: _vm.name,
disabled: _vm.isDisabled
},
domProps: {
value: _vm.label,
checked: Array.isArray(_vm.model)
? _vm._i(_vm.model, _vm.label) > -1
: _vm.model
},
on: {
change: [
function($event) {
var $$a = _vm.model,
$$el = $event.target,
$$c = $$el.checked ? true : false
if (Array.isArray($$a)) {
var $$v = _vm.label,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 && (_vm.model = $$a.concat([$$v]))
} else {
$$i > -1 &&
(_vm.model = $$a
.slice(0, $$i)
.concat($$a.slice($$i + 1)))
}
} else {
_vm.model = $$c
}
},
_vm.handleChange
],
focus: function($event) {
_vm.focus = true
},
blur: function($event) {
_vm.focus = false
}
}
}),
_vm.$slots.default || _vm.label
? _c(
"span",
{
staticClass: "el-checkbox-button__inner",
style: _vm.isChecked ? _vm.activeStyle : null
},
[_vm._t("default", [_vm._v(_vm._s(_vm.label))])],
2
)
: _vm._e()
]
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox-button.vue?vue&type=template&id=478e906e&
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox-button.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var checkbox_buttonvue_type_script_lang_js_ = ({
name: 'ElCheckboxButton',
mixins: [emitter_default.a],
inject: {
elForm: {
default: ''
},
elFormItem: {
default: ''
}
},
data: function data() {
return {
selfModel: false,
focus: false,
isLimitExceeded: false
};
},
props: {
value: {},
label: {},
disabled: Boolean,
checked: Boolean,
name: String,
trueLabel: [String, Number],
falseLabel: [String, Number]
},
computed: {
model: {
get: function get() {
return this._checkboxGroup ? this.store : this.value !== undefined ? this.value : this.selfModel;
},
set: function set(val) {
if (this._checkboxGroup) {
this.isLimitExceeded = false;
this._checkboxGroup.min !== undefined && val.length < this._checkboxGroup.min && (this.isLimitExceeded = true);
this._checkboxGroup.max !== undefined && val.length > this._checkboxGroup.max && (this.isLimitExceeded = true);
this.isLimitExceeded === false && this.dispatch('ElCheckboxGroup', 'input', [val]);
} else if (this.value !== undefined) {
this.$emit('input', val);
} else {
this.selfModel = val;
}
}
},
isChecked: function isChecked() {
if ({}.toString.call(this.model) === '[object Boolean]') {
return this.model;
} else if (Array.isArray(this.model)) {
return this.model.indexOf(this.label) > -1;
} else if (this.model !== null && this.model !== undefined) {
return this.model === this.trueLabel;
}
},
_checkboxGroup: function _checkboxGroup() {
var parent = this.$parent;
while (parent) {
if (parent.$options.componentName !== 'ElCheckboxGroup') {
parent = parent.$parent;
} else {
return parent;
}
}
return false;
},
store: function store() {
return this._checkboxGroup ? this._checkboxGroup.value : this.value;
},
activeStyle: function activeStyle() {
return {
backgroundColor: this._checkboxGroup.fill || '',
borderColor: this._checkboxGroup.fill || '',
color: this._checkboxGroup.textColor || '',
'box-shadow': '-1px 0 0 0 ' + this._checkboxGroup.fill
};
},
_elFormItemSize: function _elFormItemSize() {
return (this.elFormItem || {}).elFormItemSize;
},
size: function size() {
return this._checkboxGroup.checkboxGroupSize || this._elFormItemSize || (this.$ELEMENT || {}).size;
},
isDisabled: function isDisabled() {
return this._checkboxGroup ? this._checkboxGroup.disabled || this.disabled || (this.elForm || {}).disabled : this.disabled || (this.elForm || {}).disabled;
}
},
methods: {
addToStore: function addToStore() {
if (Array.isArray(this.model) && this.model.indexOf(this.label) === -1) {
this.model.push(this.label);
} else {
this.model = this.trueLabel || true;
}
},
handleChange: function handleChange(ev) {
var _this = this;
if (this.isLimitExceeded) return;
var value = void 0;
if (ev.target.checked) {
value = this.trueLabel === undefined ? true : this.trueLabel;
} else {
value = this.falseLabel === undefined ? false : this.falseLabel;
}
this.$emit('change', value, ev);
this.$nextTick(function () {
if (_this._checkboxGroup) {
_this.dispatch('ElCheckboxGroup', 'change', [_this._checkboxGroup.value]);
}
});
}
},
created: function created() {
this.checked && this.addToStore();
}
});
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox-button.vue?vue&type=script&lang=js&
/* harmony default export */ var src_checkbox_buttonvue_type_script_lang_js_ = (checkbox_buttonvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox-button.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_checkbox_buttonvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/checkbox/src/checkbox-button.vue"
/* harmony default export */ var checkbox_button = (component.exports);
// CONCATENATED MODULE: ./packages/checkbox-button/index.js
/* istanbul ignore next */
checkbox_button.install = function (Vue) {
Vue.component(checkbox_button.name, checkbox_button);
};
/* harmony default export */ var packages_checkbox_button = __webpack_exports__["default"] = (checkbox_button);
/***/ })
/******/ });
+312
View File
@@ -0,0 +1,312 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 79);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 79:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox-group.vue?vue&type=template&id=7289a290&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
staticClass: "el-checkbox-group",
attrs: { role: "group", "aria-label": "checkbox-group" }
},
[_vm._t("default")],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox-group.vue?vue&type=template&id=7289a290&
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox-group.vue?vue&type=script&lang=js&
/* harmony default export */ var checkbox_groupvue_type_script_lang_js_ = ({
name: 'ElCheckboxGroup',
componentName: 'ElCheckboxGroup',
mixins: [emitter_default.a],
inject: {
elFormItem: {
default: ''
}
},
props: {
value: {},
disabled: Boolean,
min: Number,
max: Number,
size: String,
fill: String,
textColor: String
},
computed: {
_elFormItemSize: function _elFormItemSize() {
return (this.elFormItem || {}).elFormItemSize;
},
checkboxGroupSize: function checkboxGroupSize() {
return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
}
},
watch: {
value: function value(_value) {
this.dispatch('ElFormItem', 'el.form.change', [_value]);
}
}
});
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox-group.vue?vue&type=script&lang=js&
/* harmony default export */ var src_checkbox_groupvue_type_script_lang_js_ = (checkbox_groupvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox-group.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_checkbox_groupvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/checkbox/src/checkbox-group.vue"
/* harmony default export */ var checkbox_group = (component.exports);
// CONCATENATED MODULE: ./packages/checkbox-group/index.js
/* istanbul ignore next */
checkbox_group.install = function (Vue) {
Vue.component(checkbox_group.name, checkbox_group);
};
/* harmony default export */ var packages_checkbox_group = __webpack_exports__["default"] = (checkbox_group);
/***/ })
/******/ });
+618
View File
@@ -0,0 +1,618 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 77);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 77:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox.vue?vue&type=template&id=d0387074&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"label",
{
staticClass: "el-checkbox",
class: [
_vm.border && _vm.checkboxSize
? "el-checkbox--" + _vm.checkboxSize
: "",
{ "is-disabled": _vm.isDisabled },
{ "is-bordered": _vm.border },
{ "is-checked": _vm.isChecked }
],
attrs: {
role: "checkbox",
"aria-checked": _vm.indeterminate ? "mixed" : _vm.isChecked,
"aria-disabled": _vm.isDisabled,
id: _vm.id
}
},
[
_c(
"span",
{
staticClass: "el-checkbox__input",
class: {
"is-disabled": _vm.isDisabled,
"is-checked": _vm.isChecked,
"is-indeterminate": _vm.indeterminate,
"is-focus": _vm.focus
},
attrs: { "aria-checked": "mixed" }
},
[
_c("span", { staticClass: "el-checkbox__inner" }),
_vm.trueLabel || _vm.falseLabel
? _c("input", {
directives: [
{
name: "model",
rawName: "v-model",
value: _vm.model,
expression: "model"
}
],
staticClass: "el-checkbox__original",
attrs: {
type: "checkbox",
"aria-hidden": "true",
name: _vm.name,
disabled: _vm.isDisabled,
"true-value": _vm.trueLabel,
"false-value": _vm.falseLabel
},
domProps: {
checked: Array.isArray(_vm.model)
? _vm._i(_vm.model, null) > -1
: _vm._q(_vm.model, _vm.trueLabel)
},
on: {
change: [
function($event) {
var $$a = _vm.model,
$$el = $event.target,
$$c = $$el.checked ? _vm.trueLabel : _vm.falseLabel
if (Array.isArray($$a)) {
var $$v = null,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 && (_vm.model = $$a.concat([$$v]))
} else {
$$i > -1 &&
(_vm.model = $$a
.slice(0, $$i)
.concat($$a.slice($$i + 1)))
}
} else {
_vm.model = $$c
}
},
_vm.handleChange
],
focus: function($event) {
_vm.focus = true
},
blur: function($event) {
_vm.focus = false
}
}
})
: _c("input", {
directives: [
{
name: "model",
rawName: "v-model",
value: _vm.model,
expression: "model"
}
],
staticClass: "el-checkbox__original",
attrs: {
type: "checkbox",
"aria-hidden": "true",
disabled: _vm.isDisabled,
name: _vm.name
},
domProps: {
value: _vm.label,
checked: Array.isArray(_vm.model)
? _vm._i(_vm.model, _vm.label) > -1
: _vm.model
},
on: {
change: [
function($event) {
var $$a = _vm.model,
$$el = $event.target,
$$c = $$el.checked ? true : false
if (Array.isArray($$a)) {
var $$v = _vm.label,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 && (_vm.model = $$a.concat([$$v]))
} else {
$$i > -1 &&
(_vm.model = $$a
.slice(0, $$i)
.concat($$a.slice($$i + 1)))
}
} else {
_vm.model = $$c
}
},
_vm.handleChange
],
focus: function($event) {
_vm.focus = true
},
blur: function($event) {
_vm.focus = false
}
}
})
]
),
_vm.$slots.default || _vm.label
? _c(
"span",
{ staticClass: "el-checkbox__label" },
[
_vm._t("default"),
!_vm.$slots.default ? [_vm._v(_vm._s(_vm.label))] : _vm._e()
],
2
)
: _vm._e()
]
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox.vue?vue&type=template&id=d0387074&
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/checkbox/src/checkbox.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var checkboxvue_type_script_lang_js_ = ({
name: 'ElCheckbox',
mixins: [emitter_default.a],
inject: {
elForm: {
default: ''
},
elFormItem: {
default: ''
}
},
componentName: 'ElCheckbox',
data: function data() {
return {
selfModel: false,
focus: false,
isLimitExceeded: false
};
},
computed: {
model: {
get: function get() {
return this.isGroup ? this.store : this.value !== undefined ? this.value : this.selfModel;
},
set: function set(val) {
if (this.isGroup) {
this.isLimitExceeded = false;
this._checkboxGroup.min !== undefined && val.length < this._checkboxGroup.min && (this.isLimitExceeded = true);
this._checkboxGroup.max !== undefined && val.length > this._checkboxGroup.max && (this.isLimitExceeded = true);
this.isLimitExceeded === false && this.dispatch('ElCheckboxGroup', 'input', [val]);
} else {
this.$emit('input', val);
this.selfModel = val;
}
}
},
isChecked: function isChecked() {
if ({}.toString.call(this.model) === '[object Boolean]') {
return this.model;
} else if (Array.isArray(this.model)) {
return this.model.indexOf(this.label) > -1;
} else if (this.model !== null && this.model !== undefined) {
return this.model === this.trueLabel;
}
},
isGroup: function isGroup() {
var parent = this.$parent;
while (parent) {
if (parent.$options.componentName !== 'ElCheckboxGroup') {
parent = parent.$parent;
} else {
this._checkboxGroup = parent;
return true;
}
}
return false;
},
store: function store() {
return this._checkboxGroup ? this._checkboxGroup.value : this.value;
},
isDisabled: function isDisabled() {
return this.isGroup ? this._checkboxGroup.disabled || this.disabled || (this.elForm || {}).disabled : this.disabled || (this.elForm || {}).disabled;
},
_elFormItemSize: function _elFormItemSize() {
return (this.elFormItem || {}).elFormItemSize;
},
checkboxSize: function checkboxSize() {
var temCheckboxSize = this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
return this.isGroup ? this._checkboxGroup.checkboxGroupSize || temCheckboxSize : temCheckboxSize;
}
},
props: {
value: {},
label: {},
indeterminate: Boolean,
disabled: Boolean,
checked: Boolean,
name: String,
trueLabel: [String, Number],
falseLabel: [String, Number],
id: String, /* 当indeterminate为真时,为controls提供相关连的checkbox的id,表明元素间的控制关系*/
controls: String, /* 当indeterminate为真时,为controls提供相关连的checkbox的id,表明元素间的控制关系*/
border: Boolean,
size: String
},
methods: {
addToStore: function addToStore() {
if (Array.isArray(this.model) && this.model.indexOf(this.label) === -1) {
this.model.push(this.label);
} else {
this.model = this.trueLabel || true;
}
},
handleChange: function handleChange(ev) {
var _this = this;
if (this.isLimitExceeded) return;
var value = void 0;
if (ev.target.checked) {
value = this.trueLabel === undefined ? true : this.trueLabel;
} else {
value = this.falseLabel === undefined ? false : this.falseLabel;
}
this.$emit('change', value, ev);
this.$nextTick(function () {
if (_this.isGroup) {
_this.dispatch('ElCheckboxGroup', 'change', [_this._checkboxGroup.value]);
}
});
}
},
created: function created() {
this.checked && this.addToStore();
},
mounted: function mounted() {
// 为indeterminate元素 添加aria-controls 属性
if (this.indeterminate) {
this.$el.setAttribute('aria-controls', this.controls);
}
},
watch: {
value: function value(_value) {
this.dispatch('ElFormItem', 'el.form.change', _value);
}
}
});
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox.vue?vue&type=script&lang=js&
/* harmony default export */ var src_checkboxvue_type_script_lang_js_ = (checkboxvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/checkbox/src/checkbox.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_checkboxvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/checkbox/src/checkbox.vue"
/* harmony default export */ var src_checkbox = (component.exports);
// CONCATENATED MODULE: ./packages/checkbox/index.js
/* istanbul ignore next */
src_checkbox.install = function (Vue) {
Vue.component(src_checkbox.name, src_checkbox);
};
/* harmony default export */ var packages_checkbox = __webpack_exports__["default"] = (src_checkbox);
/***/ })
/******/ });
+176
View File
@@ -0,0 +1,176 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 116);
/******/ })
/************************************************************************/
/******/ ({
/***/ 116:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./packages/col/src/col.js
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
/* harmony default export */ var col = ({
name: 'ElCol',
props: {
span: {
type: Number,
default: 24
},
tag: {
type: String,
default: 'div'
},
offset: Number,
pull: Number,
push: Number,
xs: [Number, Object],
sm: [Number, Object],
md: [Number, Object],
lg: [Number, Object],
xl: [Number, Object]
},
computed: {
gutter: function gutter() {
var parent = this.$parent;
while (parent && parent.$options.componentName !== 'ElRow') {
parent = parent.$parent;
}
return parent ? parent.gutter : 0;
}
},
render: function render(h) {
var _this = this;
var classList = [];
var style = {};
if (this.gutter) {
style.paddingLeft = this.gutter / 2 + 'px';
style.paddingRight = style.paddingLeft;
}
['span', 'offset', 'pull', 'push'].forEach(function (prop) {
if (_this[prop] || _this[prop] === 0) {
classList.push(prop !== 'span' ? 'el-col-' + prop + '-' + _this[prop] : 'el-col-' + _this[prop]);
}
});
['xs', 'sm', 'md', 'lg', 'xl'].forEach(function (size) {
if (typeof _this[size] === 'number') {
classList.push('el-col-' + size + '-' + _this[size]);
} else if (_typeof(_this[size]) === 'object') {
var props = _this[size];
Object.keys(props).forEach(function (prop) {
classList.push(prop !== 'span' ? 'el-col-' + size + '-' + prop + '-' + props[prop] : 'el-col-' + size + '-' + props[prop]);
});
}
});
return h(this.tag, {
class: ['el-col', classList],
style: style
}, this.$slots.default);
}
});
// CONCATENATED MODULE: ./packages/col/index.js
/* istanbul ignore next */
col.install = function (Vue) {
Vue.component(col.name, col);
};
/* harmony default export */ var packages_col = __webpack_exports__["default"] = (col);
/***/ })
/******/ });
+492
View File
@@ -0,0 +1,492 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 101);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 101:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/collapse/src/collapse-item.vue?vue&type=template&id=2d05faac&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{ staticClass: "el-collapse-item", class: { "is-active": _vm.isActive } },
[
_c(
"div",
{
attrs: {
role: "tab",
"aria-expanded": _vm.isActive,
"aria-controls": "el-collapse-content-" + _vm.id,
"aria-describedby": "el-collapse-content-" + _vm.id
}
},
[
_c(
"div",
{
staticClass: "el-collapse-item__header",
class: {
focusing: _vm.focusing,
"is-active": _vm.isActive
},
attrs: {
role: "button",
id: "el-collapse-head-" + _vm.id,
tabindex: "0"
},
on: {
click: _vm.handleHeaderClick,
keyup: function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "space", 32, $event.key, [
" ",
"Spacebar"
]) &&
_vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
) {
return null
}
$event.stopPropagation()
return _vm.handleEnterClick($event)
},
focus: _vm.handleFocus,
blur: function($event) {
_vm.focusing = false
}
}
},
[
_vm._t("title", [_vm._v(_vm._s(_vm.title))]),
_c("i", {
staticClass: "el-collapse-item__arrow el-icon-arrow-right",
class: { "is-active": _vm.isActive }
})
],
2
)
]
),
_c("el-collapse-transition", [
_c(
"div",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.isActive,
expression: "isActive"
}
],
staticClass: "el-collapse-item__wrap",
attrs: {
role: "tabpanel",
"aria-hidden": !_vm.isActive,
"aria-labelledby": "el-collapse-head-" + _vm.id,
id: "el-collapse-content-" + _vm.id
}
},
[
_c(
"div",
{ staticClass: "el-collapse-item__content" },
[_vm._t("default")],
2
)
]
)
])
],
1
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/collapse/src/collapse-item.vue?vue&type=template&id=2d05faac&
// EXTERNAL MODULE: external "element-ui/lib/transitions/collapse-transition"
var collapse_transition_ = __webpack_require__(23);
var collapse_transition_default = /*#__PURE__*/__webpack_require__.n(collapse_transition_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// EXTERNAL MODULE: external "element-ui/lib/utils/util"
var util_ = __webpack_require__(4);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/collapse/src/collapse-item.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var collapse_itemvue_type_script_lang_js_ = ({
name: 'ElCollapseItem',
componentName: 'ElCollapseItem',
mixins: [emitter_default.a],
components: { ElCollapseTransition: collapse_transition_default.a },
data: function data() {
return {
contentWrapStyle: {
height: 'auto',
display: 'block'
},
contentHeight: 0,
focusing: false,
isClick: false
};
},
inject: ['collapse'],
props: {
title: String,
name: {
type: [String, Number],
default: function _default() {
return this._uid;
}
}
},
computed: {
isActive: function isActive() {
return this.collapse.activeNames.indexOf(this.name) > -1;
},
id: function id() {
return Object(util_["generateId"])();
}
},
methods: {
handleFocus: function handleFocus() {
var _this = this;
setTimeout(function () {
if (!_this.isClick) {
_this.focusing = true;
} else {
_this.isClick = false;
}
}, 50);
},
handleHeaderClick: function handleHeaderClick() {
this.dispatch('ElCollapse', 'item-click', this);
this.focusing = false;
this.isClick = true;
},
handleEnterClick: function handleEnterClick() {
this.dispatch('ElCollapse', 'item-click', this);
}
}
});
// CONCATENATED MODULE: ./packages/collapse/src/collapse-item.vue?vue&type=script&lang=js&
/* harmony default export */ var src_collapse_itemvue_type_script_lang_js_ = (collapse_itemvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/collapse/src/collapse-item.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_collapse_itemvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/collapse/src/collapse-item.vue"
/* harmony default export */ var collapse_item = (component.exports);
// CONCATENATED MODULE: ./packages/collapse-item/index.js
/* istanbul ignore next */
collapse_item.install = function (Vue) {
Vue.component(collapse_item.name, collapse_item);
};
/* harmony default export */ var packages_collapse_item = __webpack_exports__["default"] = (collapse_item);
/***/ }),
/***/ 23:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/transitions/collapse-transition");
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 4:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/util");
/***/ })
/******/ });
+328
View File
@@ -0,0 +1,328 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 100);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 100:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/collapse/src/collapse.vue?vue&type=template&id=461d57f4&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
staticClass: "el-collapse",
attrs: { role: "tablist", "aria-multiselectable": "true" }
},
[_vm._t("default")],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/collapse/src/collapse.vue?vue&type=template&id=461d57f4&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/collapse/src/collapse.vue?vue&type=script&lang=js&
//
//
//
//
//
/* harmony default export */ var collapsevue_type_script_lang_js_ = ({
name: 'ElCollapse',
componentName: 'ElCollapse',
props: {
accordion: Boolean,
value: {
type: [Array, String, Number],
default: function _default() {
return [];
}
}
},
data: function data() {
return {
activeNames: [].concat(this.value)
};
},
provide: function provide() {
return {
collapse: this
};
},
watch: {
value: function value(_value) {
this.activeNames = [].concat(_value);
}
},
methods: {
setActiveNames: function setActiveNames(activeNames) {
activeNames = [].concat(activeNames);
var value = this.accordion ? activeNames[0] : activeNames;
this.activeNames = activeNames;
this.$emit('input', value);
this.$emit('change', value);
},
handleItemClick: function handleItemClick(item) {
if (this.accordion) {
this.setActiveNames((this.activeNames[0] || this.activeNames[0] === 0) && this.activeNames[0] === item.name ? '' : item.name);
} else {
var activeNames = this.activeNames.slice(0);
var index = activeNames.indexOf(item.name);
if (index > -1) {
activeNames.splice(index, 1);
} else {
activeNames.push(item.name);
}
this.setActiveNames(activeNames);
}
}
},
created: function created() {
this.$on('item-click', this.handleItemClick);
}
});
// CONCATENATED MODULE: ./packages/collapse/src/collapse.vue?vue&type=script&lang=js&
/* harmony default export */ var src_collapsevue_type_script_lang_js_ = (collapsevue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/collapse/src/collapse.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_collapsevue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/collapse/src/collapse.vue"
/* harmony default export */ var collapse = (component.exports);
// CONCATENATED MODULE: ./packages/collapse/index.js
/* istanbul ignore next */
collapse.install = function (Vue) {
Vue.component(collapse.name, collapse);
};
/* harmony default export */ var packages_collapse = __webpack_exports__["default"] = (collapse);
/***/ })
/******/ });
+1956
View File
File diff suppressed because it is too large Load Diff
+287
View File
@@ -0,0 +1,287 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 102);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 102:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/container/src/main.vue?vue&type=template&id=5bf181d4&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"section",
{ staticClass: "el-container", class: { "is-vertical": _vm.isVertical } },
[_vm._t("default")],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/container/src/main.vue?vue&type=template&id=5bf181d4&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/container/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
name: 'ElContainer',
componentName: 'ElContainer',
props: {
direction: String
},
computed: {
isVertical: function isVertical() {
if (this.direction === 'vertical') {
return true;
} else if (this.direction === 'horizontal') {
return false;
}
return this.$slots && this.$slots.default ? this.$slots.default.some(function (vnode) {
var tag = vnode.componentOptions && vnode.componentOptions.tag;
return tag === 'el-header' || tag === 'el-footer';
}) : false;
}
}
});
// CONCATENATED MODULE: ./packages/container/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/container/src/main.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_mainvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/container/src/main.vue"
/* harmony default export */ var main = (component.exports);
// CONCATENATED MODULE: ./packages/container/index.js
/* istanbul ignore next */
main.install = function (Vue) {
Vue.component(main.name, main);
};
/* harmony default export */ var container = __webpack_exports__["default"] = (main);
/***/ })
/******/ });
+5986
View File
File diff suppressed because it is too large Load Diff
+585
View File
@@ -0,0 +1,585 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 68);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 10:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/migrating");
/***/ }),
/***/ 13:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/popup");
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 68:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/dialog/src/component.vue?vue&type=template&id=60140e62&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"transition",
{
attrs: { name: "dialog-fade" },
on: { "after-enter": _vm.afterEnter, "after-leave": _vm.afterLeave }
},
[
_c(
"div",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.visible,
expression: "visible"
}
],
staticClass: "el-dialog__wrapper",
on: {
click: function($event) {
if ($event.target !== $event.currentTarget) {
return null
}
return _vm.handleWrapperClick($event)
}
}
},
[
_c(
"div",
{
ref: "dialog",
staticClass: "el-dialog",
class: [
{
"is-fullscreen": _vm.fullscreen,
"el-dialog--center": _vm.center
},
_vm.customClass
],
style: _vm.style,
attrs: {
role: "dialog",
"aria-modal": "true",
"aria-label": _vm.title || "dialog"
}
},
[
_c(
"div",
{ staticClass: "el-dialog__header" },
[
_vm._t("title", [
_c("span", { staticClass: "el-dialog__title" }, [
_vm._v(_vm._s(_vm.title))
])
]),
_vm.showClose
? _c(
"button",
{
staticClass: "el-dialog__headerbtn",
attrs: { type: "button", "aria-label": "Close" },
on: { click: _vm.handleClose }
},
[
_c("i", {
staticClass:
"el-dialog__close el-icon el-icon-close"
})
]
)
: _vm._e()
],
2
),
_vm.rendered
? _c(
"div",
{ staticClass: "el-dialog__body" },
[_vm._t("default")],
2
)
: _vm._e(),
_vm.$slots.footer
? _c(
"div",
{ staticClass: "el-dialog__footer" },
[_vm._t("footer")],
2
)
: _vm._e()
]
)
]
)
]
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/dialog/src/component.vue?vue&type=template&id=60140e62&
// EXTERNAL MODULE: external "element-ui/lib/utils/popup"
var popup_ = __webpack_require__(13);
var popup_default = /*#__PURE__*/__webpack_require__.n(popup_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"
var migrating_ = __webpack_require__(10);
var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dialog/src/component.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var componentvue_type_script_lang_js_ = ({
name: 'ElDialog',
mixins: [popup_default.a, emitter_default.a, migrating_default.a],
props: {
title: {
type: String,
default: ''
},
modal: {
type: Boolean,
default: true
},
modalAppendToBody: {
type: Boolean,
default: true
},
appendToBody: {
type: Boolean,
default: false
},
lockScroll: {
type: Boolean,
default: true
},
closeOnClickModal: {
type: Boolean,
default: true
},
closeOnPressEscape: {
type: Boolean,
default: true
},
showClose: {
type: Boolean,
default: true
},
width: String,
fullscreen: Boolean,
customClass: {
type: String,
default: ''
},
top: {
type: String,
default: '15vh'
},
beforeClose: Function,
center: {
type: Boolean,
default: false
}
},
data: function data() {
return {
closed: false
};
},
watch: {
visible: function visible(val) {
var _this = this;
if (val) {
this.closed = false;
this.$emit('open');
this.$el.addEventListener('scroll', this.updatePopper);
this.$nextTick(function () {
_this.$refs.dialog.scrollTop = 0;
});
if (this.appendToBody) {
document.body.appendChild(this.$el);
}
} else {
this.$el.removeEventListener('scroll', this.updatePopper);
if (!this.closed) this.$emit('close');
}
}
},
computed: {
style: function style() {
var style = {};
if (!this.fullscreen) {
style.marginTop = this.top;
if (this.width) {
style.width = this.width;
}
}
return style;
}
},
methods: {
getMigratingConfig: function getMigratingConfig() {
return {
props: {
'size': 'size is removed.'
}
};
},
handleWrapperClick: function handleWrapperClick() {
if (!this.closeOnClickModal) return;
this.handleClose();
},
handleClose: function handleClose() {
if (typeof this.beforeClose === 'function') {
this.beforeClose(this.hide);
} else {
this.hide();
}
},
hide: function hide(cancel) {
if (cancel !== false) {
this.$emit('update:visible', false);
this.$emit('close');
this.closed = true;
}
},
updatePopper: function updatePopper() {
this.broadcast('ElSelectDropdown', 'updatePopper');
this.broadcast('ElDropdownMenu', 'updatePopper');
},
afterEnter: function afterEnter() {
this.$emit('opened');
},
afterLeave: function afterLeave() {
this.$emit('closed');
}
},
mounted: function mounted() {
if (this.visible) {
this.rendered = true;
this.open();
if (this.appendToBody) {
document.body.appendChild(this.$el);
}
}
},
destroyed: function destroyed() {
// if appendToBody is true, remove DOM node after destroy
if (this.appendToBody && this.$el && this.$el.parentNode) {
this.$el.parentNode.removeChild(this.$el);
}
}
});
// CONCATENATED MODULE: ./packages/dialog/src/component.vue?vue&type=script&lang=js&
/* harmony default export */ var src_componentvue_type_script_lang_js_ = (componentvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/dialog/src/component.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_componentvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/dialog/src/component.vue"
/* harmony default export */ var src_component = (component.exports);
// CONCATENATED MODULE: ./packages/dialog/index.js
/* istanbul ignore next */
src_component.install = function (Vue) {
Vue.component(src_component.name, src_component);
};
/* harmony default export */ var dialog = __webpack_exports__["default"] = (src_component);
/***/ })
/******/ });
+26
View File
@@ -0,0 +1,26 @@
'use strict';
exports.__esModule = true;
var _normalizeWheel = require('normalize-wheel');
var _normalizeWheel2 = _interopRequireDefault(_normalizeWheel);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var isFirefox = typeof navigator !== 'undefined' && navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
var mousewheel = function mousewheel(element, callback) {
if (element && element.addEventListener) {
element.addEventListener(isFirefox ? 'DOMMouseScroll' : 'mousewheel', function (event) {
var normalized = (0, _normalizeWheel2.default)(event);
callback && callback.apply(this, [event, normalized]);
});
}
};
exports.default = {
bind: function bind(el, binding) {
mousewheel(el, binding.value);
}
};
+30
View File
@@ -0,0 +1,30 @@
'use strict';
exports.__esModule = true;
var _dom = require('element-ui/lib/utils/dom');
exports.default = {
bind: function bind(el, binding, vnode) {
var interval = null;
var startTime = void 0;
var handler = function handler() {
return vnode.context[binding.expression].apply();
};
var clear = function clear() {
if (new Date() - startTime < 100) {
handler();
}
clearInterval(interval);
interval = null;
};
(0, _dom.on)(el, 'mousedown', function (e) {
if (e.button !== 0) return;
startTime = new Date();
(0, _dom.once)(document, 'mouseup', clear);
clearInterval(interval);
interval = setInterval(handler, 100);
});
}
};
+315
View File
@@ -0,0 +1,315 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 70);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 70:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-item.vue?vue&type=template&id=6359102a&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"li",
{
staticClass: "el-dropdown-menu__item",
class: {
"is-disabled": _vm.disabled,
"el-dropdown-menu__item--divided": _vm.divided
},
attrs: {
"aria-disabled": _vm.disabled,
tabindex: _vm.disabled ? null : -1
},
on: { click: _vm.handleClick }
},
[_vm.icon ? _c("i", { class: _vm.icon }) : _vm._e(), _vm._t("default")],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-item.vue?vue&type=template&id=6359102a&
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-item.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var dropdown_itemvue_type_script_lang_js_ = ({
name: 'ElDropdownItem',
mixins: [emitter_default.a],
props: {
command: {},
disabled: Boolean,
divided: Boolean,
icon: String
},
methods: {
handleClick: function handleClick(e) {
this.dispatch('ElDropdown', 'menu-item-click', [this.command, this]);
}
}
});
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-item.vue?vue&type=script&lang=js&
/* harmony default export */ var src_dropdown_itemvue_type_script_lang_js_ = (dropdown_itemvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-item.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_dropdown_itemvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/dropdown/src/dropdown-item.vue"
/* harmony default export */ var dropdown_item = (component.exports);
// CONCATENATED MODULE: ./packages/dropdown-item/index.js
/* istanbul ignore next */
dropdown_item.install = function (Vue) {
Vue.component(dropdown_item.name, dropdown_item);
};
/* harmony default export */ var packages_dropdown_item = __webpack_exports__["default"] = (dropdown_item);
/***/ })
/******/ });
+347
View File
@@ -0,0 +1,347 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 69);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 5:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/vue-popper");
/***/ }),
/***/ 69:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-menu.vue?vue&type=template&id=0da6b714&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"transition",
{ attrs: { name: "el-zoom-in-top" }, on: { "after-leave": _vm.doDestroy } },
[
_c(
"ul",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.showPopper,
expression: "showPopper"
}
],
staticClass: "el-dropdown-menu el-popper",
class: [_vm.size && "el-dropdown-menu--" + _vm.size]
},
[_vm._t("default")],
2
)
]
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-menu.vue?vue&type=template&id=0da6b714&
// EXTERNAL MODULE: external "element-ui/lib/utils/vue-popper"
var vue_popper_ = __webpack_require__(5);
var vue_popper_default = /*#__PURE__*/__webpack_require__.n(vue_popper_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-menu.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
/* harmony default export */ var dropdown_menuvue_type_script_lang_js_ = ({
name: 'ElDropdownMenu',
componentName: 'ElDropdownMenu',
mixins: [vue_popper_default.a],
props: {
visibleArrow: {
type: Boolean,
default: true
},
arrowOffset: {
type: Number,
default: 0
}
},
data: function data() {
return {
size: this.dropdown.dropdownSize
};
},
inject: ['dropdown'],
created: function created() {
var _this = this;
this.$on('updatePopper', function () {
if (_this.showPopper) _this.updatePopper();
});
this.$on('visible', function (val) {
_this.showPopper = val;
});
},
mounted: function mounted() {
this.$parent.popperElm = this.popperElm = this.$el;
this.referenceElm = this.$parent.$el;
},
watch: {
'dropdown.placement': {
immediate: true,
handler: function handler(val) {
this.currentPlacement = val;
}
}
}
});
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-menu.vue?vue&type=script&lang=js&
/* harmony default export */ var src_dropdown_menuvue_type_script_lang_js_ = (dropdown_menuvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-menu.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_dropdown_menuvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/dropdown/src/dropdown-menu.vue"
/* harmony default export */ var dropdown_menu = (component.exports);
// CONCATENATED MODULE: ./packages/dropdown-menu/index.js
/* istanbul ignore next */
dropdown_menu.install = function (Vue) {
Vue.component(dropdown_menu.name, dropdown_menu);
};
/* harmony default export */ var packages_dropdown_menu = __webpack_exports__["default"] = (dropdown_menu);
/***/ })
/******/ });
+614
View File
@@ -0,0 +1,614 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 109);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 10:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/migrating");
/***/ }),
/***/ 109:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// EXTERNAL MODULE: external "element-ui/lib/utils/clickoutside"
var clickoutside_ = __webpack_require__(11);
var clickoutside_default = /*#__PURE__*/__webpack_require__.n(clickoutside_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"
var migrating_ = __webpack_require__(10);
var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);
// EXTERNAL MODULE: external "element-ui/lib/button"
var button_ = __webpack_require__(18);
var button_default = /*#__PURE__*/__webpack_require__.n(button_);
// EXTERNAL MODULE: external "element-ui/lib/button-group"
var button_group_ = __webpack_require__(41);
var button_group_default = /*#__PURE__*/__webpack_require__.n(button_group_);
// EXTERNAL MODULE: external "element-ui/lib/utils/util"
var util_ = __webpack_require__(4);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown.vue?vue&type=script&lang=js&
/* harmony default export */ var dropdownvue_type_script_lang_js_ = ({
name: 'ElDropdown',
componentName: 'ElDropdown',
mixins: [emitter_default.a, migrating_default.a],
directives: { Clickoutside: clickoutside_default.a },
components: {
ElButton: button_default.a,
ElButtonGroup: button_group_default.a
},
provide: function provide() {
return {
dropdown: this
};
},
props: {
trigger: {
type: String,
default: 'hover'
},
type: String,
size: {
type: String,
default: ''
},
splitButton: Boolean,
hideOnClick: {
type: Boolean,
default: true
},
placement: {
type: String,
default: 'bottom-end'
},
visibleArrow: {
default: true
},
showTimeout: {
type: Number,
default: 250
},
hideTimeout: {
type: Number,
default: 150
}
},
data: function data() {
return {
timeout: null,
visible: false,
triggerElm: null,
menuItems: null,
menuItemsArray: null,
dropdownElm: null,
focusing: false,
listId: 'dropdown-menu-' + Object(util_["generateId"])()
};
},
computed: {
dropdownSize: function dropdownSize() {
return this.size || (this.$ELEMENT || {}).size;
}
},
mounted: function mounted() {
this.$on('menu-item-click', this.handleMenuItemClick);
this.initEvent();
this.initAria();
},
watch: {
visible: function visible(val) {
this.broadcast('ElDropdownMenu', 'visible', val);
this.$emit('visible-change', val);
},
focusing: function focusing(val) {
var selfDefine = this.$el.querySelector('.el-dropdown-selfdefine');
if (selfDefine) {
// 自定义
if (val) {
selfDefine.className += ' focusing';
} else {
selfDefine.className = selfDefine.className.replace('focusing', '');
}
}
}
},
methods: {
getMigratingConfig: function getMigratingConfig() {
return {
props: {
'menu-align': 'menu-align is renamed to placement.'
}
};
},
show: function show() {
var _this = this;
if (this.triggerElm.disabled) return;
clearTimeout(this.timeout);
this.timeout = setTimeout(function () {
_this.visible = true;
}, this.trigger === 'click' ? 0 : this.showTimeout);
},
hide: function hide() {
var _this2 = this;
if (this.triggerElm.disabled) return;
this.removeTabindex();
this.resetTabindex(this.triggerElm);
clearTimeout(this.timeout);
this.timeout = setTimeout(function () {
_this2.visible = false;
}, this.trigger === 'click' ? 0 : this.hideTimeout);
},
handleClick: function handleClick() {
if (this.triggerElm.disabled) return;
if (this.visible) {
this.hide();
} else {
this.show();
}
},
handleTriggerKeyDown: function handleTriggerKeyDown(ev) {
var keyCode = ev.keyCode;
if ([38, 40].indexOf(keyCode) > -1) {
// up/down
this.removeTabindex();
this.resetTabindex(this.menuItems[0]);
this.menuItems[0].focus();
ev.preventDefault();
ev.stopPropagation();
} else if (keyCode === 13) {
// space enter选中
this.handleClick();
} else if ([9, 27].indexOf(keyCode) > -1) {
// tab || esc
this.hide();
}
return;
},
handleItemKeyDown: function handleItemKeyDown(ev) {
var keyCode = ev.keyCode;
var target = ev.target;
var currentIndex = this.menuItemsArray.indexOf(target);
var max = this.menuItemsArray.length - 1;
var nextIndex = void 0;
if ([38, 40].indexOf(keyCode) > -1) {
// up/down
if (keyCode === 38) {
// up
nextIndex = currentIndex !== 0 ? currentIndex - 1 : 0;
} else {
// down
nextIndex = currentIndex < max ? currentIndex + 1 : max;
}
this.removeTabindex();
this.resetTabindex(this.menuItems[nextIndex]);
this.menuItems[nextIndex].focus();
ev.preventDefault();
ev.stopPropagation();
} else if (keyCode === 13) {
// enter选中
this.triggerElm.focus();
target.click();
if (this.hideOnClick) {
// click关闭
this.visible = false;
}
} else if ([9, 27].indexOf(keyCode) > -1) {
// tab // esc
this.hide();
this.triggerElm.focus();
}
return;
},
resetTabindex: function resetTabindex(ele) {
// 下次tab时组件聚焦元素
this.removeTabindex();
ele.setAttribute('tabindex', '0'); // 下次期望的聚焦元素
},
removeTabindex: function removeTabindex() {
this.triggerElm.setAttribute('tabindex', '-1');
this.menuItemsArray.forEach(function (item) {
item.setAttribute('tabindex', '-1');
});
},
initAria: function initAria() {
this.dropdownElm.setAttribute('id', this.listId);
this.triggerElm.setAttribute('aria-haspopup', 'list');
this.triggerElm.setAttribute('aria-controls', this.listId);
this.menuItems = this.dropdownElm.querySelectorAll("[tabindex='-1']");
this.menuItemsArray = Array.prototype.slice.call(this.menuItems);
if (!this.splitButton) {
// 自定义
this.triggerElm.setAttribute('role', 'button');
this.triggerElm.setAttribute('tabindex', '0');
this.triggerElm.setAttribute('class', (this.triggerElm.getAttribute('class') || '') + ' el-dropdown-selfdefine'); // 控制
}
},
initEvent: function initEvent() {
var _this3 = this;
var trigger = this.trigger,
show = this.show,
hide = this.hide,
handleClick = this.handleClick,
splitButton = this.splitButton,
handleTriggerKeyDown = this.handleTriggerKeyDown,
handleItemKeyDown = this.handleItemKeyDown;
this.triggerElm = splitButton ? this.$refs.trigger.$el : this.$slots.default[0].elm;
var dropdownElm = this.dropdownElm = this.$slots.dropdown[0].elm;
this.triggerElm.addEventListener('keydown', handleTriggerKeyDown); // triggerElm keydown
dropdownElm.addEventListener('keydown', handleItemKeyDown, true); // item keydown
// 控制自定义元素的样式
if (!splitButton) {
this.triggerElm.addEventListener('focus', function () {
_this3.focusing = true;
});
this.triggerElm.addEventListener('blur', function () {
_this3.focusing = false;
});
this.triggerElm.addEventListener('click', function () {
_this3.focusing = false;
});
}
if (trigger === 'hover') {
this.triggerElm.addEventListener('mouseenter', show);
this.triggerElm.addEventListener('mouseleave', hide);
dropdownElm.addEventListener('mouseenter', show);
dropdownElm.addEventListener('mouseleave', hide);
} else if (trigger === 'click') {
this.triggerElm.addEventListener('click', handleClick);
}
},
handleMenuItemClick: function handleMenuItemClick(command, instance) {
if (this.hideOnClick) {
this.visible = false;
}
this.$emit('command', command, instance);
},
focus: function focus() {
this.triggerElm.focus && this.triggerElm.focus();
}
},
render: function render(h) {
var _this4 = this;
var hide = this.hide,
splitButton = this.splitButton,
type = this.type,
dropdownSize = this.dropdownSize;
var handleMainButtonClick = function handleMainButtonClick(event) {
_this4.$emit('click', event);
hide();
};
var triggerElm = !splitButton ? this.$slots.default : h('el-button-group', [h(
'el-button',
{
attrs: { type: type, size: dropdownSize },
nativeOn: {
'click': handleMainButtonClick
}
},
[this.$slots.default]
), h(
'el-button',
{ ref: 'trigger', attrs: { type: type, size: dropdownSize },
'class': 'el-dropdown__caret-button' },
[h('i', { 'class': 'el-dropdown__icon el-icon-arrow-down' })]
)]);
return h(
'div',
{ 'class': 'el-dropdown', directives: [{
name: 'clickoutside',
value: hide
}]
},
[triggerElm, this.$slots.dropdown]
);
}
});
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown.vue?vue&type=script&lang=js&
/* harmony default export */ var src_dropdownvue_type_script_lang_js_ = (dropdownvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown.vue
var render, staticRenderFns
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_dropdownvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/dropdown/src/dropdown.vue"
/* harmony default export */ var dropdown = (component.exports);
// CONCATENATED MODULE: ./packages/dropdown/index.js
/* istanbul ignore next */
dropdown.install = function (Vue) {
Vue.component(dropdown.name, dropdown);
};
/* harmony default export */ var packages_dropdown = __webpack_exports__["default"] = (dropdown);
/***/ }),
/***/ 11:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/clickoutside");
/***/ }),
/***/ 18:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/button");
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 4:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/util");
/***/ }),
/***/ 41:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/button-group");
/***/ })
/******/ });
+35651
View File
File diff suppressed because it is too large Load Diff
+276
View File
@@ -0,0 +1,276 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 106);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 106:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/footer/src/main.vue?vue&type=template&id=80210338&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"footer",
{ staticClass: "el-footer", style: { height: _vm.height } },
[_vm._t("default")],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/footer/src/main.vue?vue&type=template&id=80210338&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/footer/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
name: 'ElFooter',
componentName: 'ElFooter',
props: {
height: {
type: String,
default: '60px'
}
}
});
// CONCATENATED MODULE: ./packages/footer/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/footer/src/main.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_mainvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/footer/src/main.vue"
/* harmony default export */ var main = (component.exports);
// CONCATENATED MODULE: ./packages/footer/index.js
/* istanbul ignore next */
main.install = function (Vue) {
Vue.component(main.name, main);
};
/* harmony default export */ var footer = __webpack_exports__["default"] = (main);
/***/ })
/******/ });
+673
View File
@@ -0,0 +1,673 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 87);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 4:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/util");
/***/ }),
/***/ 44:
/***/ (function(module, exports) {
module.exports = require("async-validator");
/***/ }),
/***/ 8:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/merge");
/***/ }),
/***/ 87:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/form-item.vue?vue&type=template&id=b6f3db6c&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
staticClass: "el-form-item",
class: [
{
"el-form-item--feedback": _vm.elForm && _vm.elForm.statusIcon,
"is-error": _vm.validateState === "error",
"is-validating": _vm.validateState === "validating",
"is-success": _vm.validateState === "success",
"is-required": _vm.isRequired || _vm.required,
"is-no-asterisk": _vm.elForm && _vm.elForm.hideRequiredAsterisk
},
_vm.sizeClass ? "el-form-item--" + _vm.sizeClass : ""
]
},
[
_vm.label || _vm.$slots.label
? _c(
"label",
{
staticClass: "el-form-item__label",
style: _vm.labelStyle,
attrs: { for: _vm.labelFor }
},
[
_vm._t("label", [
_vm._v(_vm._s(_vm.label + _vm.form.labelSuffix))
])
],
2
)
: _vm._e(),
_c(
"div",
{ staticClass: "el-form-item__content", style: _vm.contentStyle },
[
_vm._t("default"),
_c(
"transition",
{ attrs: { name: "el-zoom-in-top" } },
[
_vm.validateState === "error" &&
_vm.showMessage &&
_vm.form.showMessage
? _vm._t(
"error",
[
_c(
"div",
{
staticClass: "el-form-item__error",
class: {
"el-form-item__error--inline":
typeof _vm.inlineMessage === "boolean"
? _vm.inlineMessage
: (_vm.elForm && _vm.elForm.inlineMessage) ||
false
}
},
[
_vm._v(
"\n " +
_vm._s(_vm.validateMessage) +
"\n "
)
]
)
],
{ error: _vm.validateMessage }
)
: _vm._e()
],
2
)
],
2
)
]
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/form/src/form-item.vue?vue&type=template&id=b6f3db6c&
// EXTERNAL MODULE: external "async-validator"
var external_async_validator_ = __webpack_require__(44);
var external_async_validator_default = /*#__PURE__*/__webpack_require__.n(external_async_validator_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// EXTERNAL MODULE: external "element-ui/lib/utils/merge"
var merge_ = __webpack_require__(8);
var merge_default = /*#__PURE__*/__webpack_require__.n(merge_);
// EXTERNAL MODULE: external "element-ui/lib/utils/util"
var util_ = __webpack_require__(4);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/form-item.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var form_itemvue_type_script_lang_js_ = ({
name: 'ElFormItem',
componentName: 'ElFormItem',
mixins: [emitter_default.a],
provide: function provide() {
return {
elFormItem: this
};
},
inject: ['elForm'],
props: {
label: String,
labelWidth: String,
prop: String,
required: {
type: Boolean,
default: undefined
},
rules: [Object, Array],
error: String,
validateStatus: String,
for: String,
inlineMessage: {
type: [String, Boolean],
default: ''
},
showMessage: {
type: Boolean,
default: true
},
size: String
},
watch: {
error: {
immediate: true,
handler: function handler(value) {
this.validateMessage = value;
this.validateState = value ? 'error' : '';
}
},
validateStatus: function validateStatus(value) {
this.validateState = value;
}
},
computed: {
labelFor: function labelFor() {
return this.for || this.prop;
},
labelStyle: function labelStyle() {
var ret = {};
if (this.form.labelPosition === 'top') return ret;
var labelWidth = this.labelWidth || this.form.labelWidth;
if (labelWidth) {
ret.width = labelWidth;
}
return ret;
},
contentStyle: function contentStyle() {
var ret = {};
var label = this.label;
if (this.form.labelPosition === 'top' || this.form.inline) return ret;
if (!label && !this.labelWidth && this.isNested) return ret;
var labelWidth = this.labelWidth || this.form.labelWidth;
if (labelWidth) {
ret.marginLeft = labelWidth;
}
return ret;
},
form: function form() {
var parent = this.$parent;
var parentName = parent.$options.componentName;
while (parentName !== 'ElForm') {
if (parentName === 'ElFormItem') {
this.isNested = true;
}
parent = parent.$parent;
parentName = parent.$options.componentName;
}
return parent;
},
fieldValue: function fieldValue() {
var model = this.form.model;
if (!model || !this.prop) {
return;
}
var path = this.prop;
if (path.indexOf(':') !== -1) {
path = path.replace(/:/, '.');
}
return Object(util_["getPropByPath"])(model, path, true).v;
},
isRequired: function isRequired() {
var rules = this.getRules();
var isRequired = false;
if (rules && rules.length) {
rules.every(function (rule) {
if (rule.required) {
isRequired = true;
return false;
}
return true;
});
}
return isRequired;
},
_formSize: function _formSize() {
return this.elForm.size;
},
elFormItemSize: function elFormItemSize() {
return this.size || this._formSize;
},
sizeClass: function sizeClass() {
return this.elFormItemSize || (this.$ELEMENT || {}).size;
}
},
data: function data() {
return {
validateState: '',
validateMessage: '',
validateDisabled: false,
validator: {},
isNested: false
};
},
methods: {
validate: function validate(trigger) {
var _this = this;
var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : util_["noop"];
this.validateDisabled = false;
var rules = this.getFilteredRule(trigger);
if ((!rules || rules.length === 0) && this.required === undefined) {
callback();
return true;
}
this.validateState = 'validating';
var descriptor = {};
if (rules && rules.length > 0) {
rules.forEach(function (rule) {
delete rule.trigger;
});
}
descriptor[this.prop] = rules;
var validator = new external_async_validator_default.a(descriptor);
var model = {};
model[this.prop] = this.fieldValue;
validator.validate(model, { firstFields: true }, function (errors, invalidFields) {
_this.validateState = !errors ? 'success' : 'error';
_this.validateMessage = errors ? errors[0].message : '';
callback(_this.validateMessage, invalidFields);
_this.elForm && _this.elForm.$emit('validate', _this.prop, !errors, _this.validateMessage || null);
});
},
clearValidate: function clearValidate() {
this.validateState = '';
this.validateMessage = '';
this.validateDisabled = false;
},
resetField: function resetField() {
this.validateState = '';
this.validateMessage = '';
var model = this.form.model;
var value = this.fieldValue;
var path = this.prop;
if (path.indexOf(':') !== -1) {
path = path.replace(/:/, '.');
}
var prop = Object(util_["getPropByPath"])(model, path, true);
this.validateDisabled = true;
if (Array.isArray(value)) {
prop.o[prop.k] = [].concat(this.initialValue);
} else {
prop.o[prop.k] = this.initialValue;
}
this.broadcast('ElTimeSelect', 'fieldReset', this.initialValue);
},
getRules: function getRules() {
var formRules = this.form.rules;
var selfRules = this.rules;
var requiredRule = this.required !== undefined ? { required: !!this.required } : [];
var prop = Object(util_["getPropByPath"])(formRules, this.prop || '');
formRules = formRules ? prop.o[this.prop || ''] || prop.v : [];
return [].concat(selfRules || formRules || []).concat(requiredRule);
},
getFilteredRule: function getFilteredRule(trigger) {
var rules = this.getRules();
return rules.filter(function (rule) {
if (!rule.trigger || trigger === '') return true;
if (Array.isArray(rule.trigger)) {
return rule.trigger.indexOf(trigger) > -1;
} else {
return rule.trigger === trigger;
}
}).map(function (rule) {
return merge_default()({}, rule);
});
},
onFieldBlur: function onFieldBlur() {
this.validate('blur');
},
onFieldChange: function onFieldChange() {
if (this.validateDisabled) {
this.validateDisabled = false;
return;
}
this.validate('change');
}
},
mounted: function mounted() {
if (this.prop) {
this.dispatch('ElForm', 'el.form.addField', [this]);
var initialValue = this.fieldValue;
if (Array.isArray(initialValue)) {
initialValue = [].concat(initialValue);
}
Object.defineProperty(this, 'initialValue', {
value: initialValue
});
var rules = this.getRules();
if (rules.length || this.required !== undefined) {
this.$on('el.form.blur', this.onFieldBlur);
this.$on('el.form.change', this.onFieldChange);
}
}
},
beforeDestroy: function beforeDestroy() {
this.dispatch('ElForm', 'el.form.removeField', [this]);
}
});
// CONCATENATED MODULE: ./packages/form/src/form-item.vue?vue&type=script&lang=js&
/* harmony default export */ var src_form_itemvue_type_script_lang_js_ = (form_itemvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/form/src/form-item.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_form_itemvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/form/src/form-item.vue"
/* harmony default export */ var form_item = (component.exports);
// CONCATENATED MODULE: ./packages/form-item/index.js
/* istanbul ignore next */
form_item.install = function (Vue) {
Vue.component(form_item.name, form_item);
};
/* harmony default export */ var packages_form_item = __webpack_exports__["default"] = (form_item);
/***/ })
/******/ });
+431
View File
@@ -0,0 +1,431 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 86);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 8:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/merge");
/***/ }),
/***/ 86:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/form.vue?vue&type=template&id=a1b5ff34&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"form",
{
staticClass: "el-form",
class: [
_vm.labelPosition ? "el-form--label-" + _vm.labelPosition : "",
{ "el-form--inline": _vm.inline }
]
},
[_vm._t("default")],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/form/src/form.vue?vue&type=template&id=a1b5ff34&
// EXTERNAL MODULE: external "element-ui/lib/utils/merge"
var merge_ = __webpack_require__(8);
var merge_default = /*#__PURE__*/__webpack_require__.n(merge_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/form.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
/* harmony default export */ var formvue_type_script_lang_js_ = ({
name: 'ElForm',
componentName: 'ElForm',
provide: function provide() {
return {
elForm: this
};
},
props: {
model: Object,
rules: Object,
labelPosition: String,
labelWidth: String,
labelSuffix: {
type: String,
default: ''
},
inline: Boolean,
inlineMessage: Boolean,
statusIcon: Boolean,
showMessage: {
type: Boolean,
default: true
},
size: String,
disabled: Boolean,
validateOnRuleChange: {
type: Boolean,
default: true
},
hideRequiredAsterisk: {
type: Boolean,
default: false
}
},
watch: {
rules: function rules() {
if (this.validateOnRuleChange) {
this.validate(function () {});
}
}
},
data: function data() {
return {
fields: []
};
},
created: function created() {
var _this = this;
this.$on('el.form.addField', function (field) {
if (field) {
_this.fields.push(field);
}
});
/* istanbul ignore next */
this.$on('el.form.removeField', function (field) {
if (field.prop) {
_this.fields.splice(_this.fields.indexOf(field), 1);
}
});
},
methods: {
resetFields: function resetFields() {
if (!this.model) {
console.warn('[Element Warn][Form]model is required for resetFields to work.');
return;
}
this.fields.forEach(function (field) {
field.resetField();
});
},
clearValidate: function clearValidate() {
var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
var fields = props.length ? typeof props === 'string' ? this.fields.filter(function (field) {
return props === field.prop;
}) : this.fields.filter(function (field) {
return props.indexOf(field.prop) > -1;
}) : this.fields;
fields.forEach(function (field) {
field.clearValidate();
});
},
validate: function validate(callback) {
var _this2 = this;
if (!this.model) {
console.warn('[Element Warn][Form]model is required for validate to work!');
return;
}
var promise = void 0;
// if no callback, return promise
if (typeof callback !== 'function' && window.Promise) {
promise = new window.Promise(function (resolve, reject) {
callback = function callback(valid) {
valid ? resolve(valid) : reject(valid);
};
});
}
var valid = true;
var count = 0;
// 如果需要验证的fields为空,调用验证时立刻返回callback
if (this.fields.length === 0 && callback) {
callback(true);
}
var invalidFields = {};
this.fields.forEach(function (field) {
field.validate('', function (message, field) {
if (message) {
valid = false;
}
invalidFields = merge_default()({}, invalidFields, field);
if (typeof callback === 'function' && ++count === _this2.fields.length) {
callback(valid, invalidFields);
}
});
});
if (promise) {
return promise;
}
},
validateField: function validateField(props, cb) {
props = [].concat(props);
var fields = this.fields.filter(function (field) {
return props.indexOf(field.prop) !== -1;
});
if (!fields.length) {
console.warn('[Element Warn]please pass correct props!');
return;
}
fields.forEach(function (field) {
field.validate('', cb);
});
}
}
});
// CONCATENATED MODULE: ./packages/form/src/form.vue?vue&type=script&lang=js&
/* harmony default export */ var src_formvue_type_script_lang_js_ = (formvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/form/src/form.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_formvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/form/src/form.vue"
/* harmony default export */ var src_form = (component.exports);
// CONCATENATED MODULE: ./packages/form/index.js
/* istanbul ignore next */
src_form.install = function (Vue) {
Vue.component(src_form.name, src_form);
};
/* harmony default export */ var packages_form = __webpack_exports__["default"] = (src_form);
/***/ })
/******/ });
+276
View File
@@ -0,0 +1,276 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 103);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 103:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/header/src/main.vue?vue&type=template&id=2b296ab2&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"header",
{ staticClass: "el-header", style: { height: _vm.height } },
[_vm._t("default")],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/header/src/main.vue?vue&type=template&id=2b296ab2&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/header/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
name: 'ElHeader',
componentName: 'ElHeader',
props: {
height: {
type: String,
default: '60px'
}
}
});
// CONCATENATED MODULE: ./packages/header/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/header/src/main.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_mainvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/header/src/main.vue"
/* harmony default export */ var main = (component.exports);
// CONCATENATED MODULE: ./packages/header/index.js
/* istanbul ignore next */
main.install = function (Vue) {
Vue.component(main.name, main);
};
/* harmony default export */ var header = __webpack_exports__["default"] = (main);
/***/ })
/******/ });
+264
View File
@@ -0,0 +1,264 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 90);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 90:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/icon/src/icon.vue?vue&type=template&id=cb3fe7f4&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c("i", { class: "el-icon-" + _vm.name })
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/icon/src/icon.vue?vue&type=template&id=cb3fe7f4&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/icon/src/icon.vue?vue&type=script&lang=js&
//
//
//
//
/* harmony default export */ var iconvue_type_script_lang_js_ = ({
name: 'ElIcon',
props: {
name: String
}
});
// CONCATENATED MODULE: ./packages/icon/src/icon.vue?vue&type=script&lang=js&
/* harmony default export */ var src_iconvue_type_script_lang_js_ = (iconvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/icon/src/icon.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_iconvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/icon/src/icon.vue"
/* harmony default export */ var icon = (component.exports);
// CONCATENATED MODULE: ./packages/icon/index.js
/* istanbul ignore next */
icon.install = function (Vue) {
Vue.component(icon.name, icon);
};
/* harmony default export */ var packages_icon = __webpack_exports__["default"] = (icon);
/***/ })
/******/ });
+1
View File
File diff suppressed because one or more lines are too long
+719
View File
@@ -0,0 +1,719 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 73);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 2:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/dom");
/***/ }),
/***/ 21:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/focus");
/***/ }),
/***/ 25:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony import */ var element_ui_src_utils_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
/* harmony import */ var element_ui_src_utils_dom__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(element_ui_src_utils_dom__WEBPACK_IMPORTED_MODULE_0__);
/* harmony default export */ __webpack_exports__["a"] = ({
bind: function bind(el, binding, vnode) {
var interval = null;
var startTime = void 0;
var handler = function handler() {
return vnode.context[binding.expression].apply();
};
var clear = function clear() {
if (new Date() - startTime < 100) {
handler();
}
clearInterval(interval);
interval = null;
};
Object(element_ui_src_utils_dom__WEBPACK_IMPORTED_MODULE_0__["on"])(el, 'mousedown', function (e) {
if (e.button !== 0) return;
startTime = new Date();
Object(element_ui_src_utils_dom__WEBPACK_IMPORTED_MODULE_0__["once"])(document, 'mouseup', clear);
clearInterval(interval);
interval = setInterval(handler, 100);
});
}
});
/***/ }),
/***/ 73:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/input-number/src/input-number.vue?vue&type=template&id=42f8cf66&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
class: [
"el-input-number",
_vm.inputNumberSize ? "el-input-number--" + _vm.inputNumberSize : "",
{ "is-disabled": _vm.inputNumberDisabled },
{ "is-without-controls": !_vm.controls },
{ "is-controls-right": _vm.controlsAtRight }
],
on: {
dragstart: function($event) {
$event.preventDefault()
}
}
},
[
_vm.controls
? _c(
"span",
{
directives: [
{
name: "repeat-click",
rawName: "v-repeat-click",
value: _vm.decrease,
expression: "decrease"
}
],
staticClass: "el-input-number__decrease",
class: { "is-disabled": _vm.minDisabled },
attrs: { role: "button" },
on: {
keydown: function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
) {
return null
}
return _vm.decrease($event)
}
}
},
[
_c("i", {
class:
"el-icon-" + (_vm.controlsAtRight ? "arrow-down" : "minus")
})
]
)
: _vm._e(),
_vm.controls
? _c(
"span",
{
directives: [
{
name: "repeat-click",
rawName: "v-repeat-click",
value: _vm.increase,
expression: "increase"
}
],
staticClass: "el-input-number__increase",
class: { "is-disabled": _vm.maxDisabled },
attrs: { role: "button" },
on: {
keydown: function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
) {
return null
}
return _vm.increase($event)
}
}
},
[
_c("i", {
class: "el-icon-" + (_vm.controlsAtRight ? "arrow-up" : "plus")
})
]
)
: _vm._e(),
_c("el-input", {
ref: "input",
attrs: {
value: _vm.displayValue,
placeholder: _vm.placeholder,
disabled: _vm.inputNumberDisabled,
size: _vm.inputNumberSize,
max: _vm.max,
min: _vm.min,
name: _vm.name,
label: _vm.label
},
on: {
blur: _vm.handleBlur,
focus: _vm.handleFocus,
input: _vm.handleInput,
change: _vm.handleInputChange
},
nativeOn: {
keydown: [
function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "up", 38, $event.key, ["Up", "ArrowUp"])
) {
return null
}
$event.preventDefault()
return _vm.increase($event)
},
function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "down", 40, $event.key, [
"Down",
"ArrowDown"
])
) {
return null
}
$event.preventDefault()
return _vm.decrease($event)
}
]
}
})
],
1
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/input-number/src/input-number.vue?vue&type=template&id=42f8cf66&
// EXTERNAL MODULE: external "element-ui/lib/input"
var input_ = __webpack_require__(9);
var input_default = /*#__PURE__*/__webpack_require__.n(input_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/focus"
var focus_ = __webpack_require__(21);
var focus_default = /*#__PURE__*/__webpack_require__.n(focus_);
// EXTERNAL MODULE: ./src/directives/repeat-click.js
var repeat_click = __webpack_require__(25);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/input-number/src/input-number.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var input_numbervue_type_script_lang_js_ = ({
name: 'ElInputNumber',
mixins: [focus_default()('input')],
inject: {
elForm: {
default: ''
},
elFormItem: {
default: ''
}
},
directives: {
repeatClick: repeat_click["a" /* default */]
},
components: {
ElInput: input_default.a
},
props: {
step: {
type: Number,
default: 1
},
max: {
type: Number,
default: Infinity
},
min: {
type: Number,
default: -Infinity
},
value: {},
disabled: Boolean,
size: String,
controls: {
type: Boolean,
default: true
},
controlsPosition: {
type: String,
default: ''
},
name: String,
label: String,
placeholder: String,
precision: {
type: Number,
validator: function validator(val) {
return val >= 0 && val === parseInt(val, 10);
}
}
},
data: function data() {
return {
currentValue: 0,
userInput: null
};
},
watch: {
value: {
immediate: true,
handler: function handler(value) {
var newVal = value === undefined ? value : Number(value);
if (newVal !== undefined) {
if (isNaN(newVal)) {
return;
}
if (this.precision !== undefined) {
newVal = this.toPrecision(newVal, this.precision);
}
}
if (newVal >= this.max) newVal = this.max;
if (newVal <= this.min) newVal = this.min;
this.currentValue = newVal;
this.userInput = null;
this.$emit('input', newVal);
}
}
},
computed: {
minDisabled: function minDisabled() {
return this._decrease(this.value, this.step) < this.min;
},
maxDisabled: function maxDisabled() {
return this._increase(this.value, this.step) > this.max;
},
numPrecision: function numPrecision() {
var value = this.value,
step = this.step,
getPrecision = this.getPrecision,
precision = this.precision;
var stepPrecision = getPrecision(step);
if (precision !== undefined) {
if (stepPrecision > precision) {
console.warn('[Element Warn][InputNumber]precision should not be less than the decimal places of step');
}
return precision;
} else {
return Math.max(getPrecision(value), stepPrecision);
}
},
controlsAtRight: function controlsAtRight() {
return this.controls && this.controlsPosition === 'right';
},
_elFormItemSize: function _elFormItemSize() {
return (this.elFormItem || {}).elFormItemSize;
},
inputNumberSize: function inputNumberSize() {
return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
},
inputNumberDisabled: function inputNumberDisabled() {
return this.disabled || (this.elForm || {}).disabled;
},
displayValue: function displayValue() {
if (this.userInput !== null) {
return this.userInput;
}
var currentValue = this.currentValue;
if (typeof currentValue === 'number' && this.precision !== undefined) {
return currentValue.toFixed(this.precision);
} else {
return currentValue;
}
}
},
methods: {
toPrecision: function toPrecision(num, precision) {
if (precision === undefined) precision = this.numPrecision;
return parseFloat(Number(num).toFixed(precision));
},
getPrecision: function getPrecision(value) {
if (value === undefined) return 0;
var valueString = value.toString();
var dotPosition = valueString.indexOf('.');
var precision = 0;
if (dotPosition !== -1) {
precision = valueString.length - dotPosition - 1;
}
return precision;
},
_increase: function _increase(val, step) {
if (typeof val !== 'number' && val !== undefined) return this.currentValue;
var precisionFactor = Math.pow(10, this.numPrecision);
// Solve the accuracy problem of JS decimal calculation by converting the value to integer.
return this.toPrecision((precisionFactor * val + precisionFactor * step) / precisionFactor);
},
_decrease: function _decrease(val, step) {
if (typeof val !== 'number' && val !== undefined) return this.currentValue;
var precisionFactor = Math.pow(10, this.numPrecision);
return this.toPrecision((precisionFactor * val - precisionFactor * step) / precisionFactor);
},
increase: function increase() {
if (this.inputNumberDisabled || this.maxDisabled) return;
var value = this.value || 0;
var newVal = this._increase(value, this.step);
this.setCurrentValue(newVal);
},
decrease: function decrease() {
if (this.inputNumberDisabled || this.minDisabled) return;
var value = this.value || 0;
var newVal = this._decrease(value, this.step);
this.setCurrentValue(newVal);
},
handleBlur: function handleBlur(event) {
this.$emit('blur', event);
},
handleFocus: function handleFocus(event) {
this.$emit('focus', event);
},
setCurrentValue: function setCurrentValue(newVal) {
var oldVal = this.currentValue;
if (typeof newVal === 'number' && this.precision !== undefined) {
newVal = this.toPrecision(newVal, this.precision);
}
if (newVal >= this.max) newVal = this.max;
if (newVal <= this.min) newVal = this.min;
if (oldVal === newVal) return;
this.userInput = null;
this.$emit('input', newVal);
this.$emit('change', newVal, oldVal);
this.currentValue = newVal;
},
handleInput: function handleInput(value) {
this.userInput = value;
},
handleInputChange: function handleInputChange(value) {
var newVal = value === '' ? undefined : Number(value);
if (!isNaN(newVal) || value === '') {
this.setCurrentValue(newVal);
}
this.userInput = null;
},
select: function select() {
this.$refs.input.select();
}
},
mounted: function mounted() {
var innerInput = this.$refs.input.$refs.input;
innerInput.setAttribute('role', 'spinbutton');
innerInput.setAttribute('aria-valuemax', this.max);
innerInput.setAttribute('aria-valuemin', this.min);
innerInput.setAttribute('aria-valuenow', this.currentValue);
innerInput.setAttribute('aria-disabled', this.inputNumberDisabled);
},
updated: function updated() {
if (!this.$refs || !this.$refs.input) return;
var innerInput = this.$refs.input.$refs.input;
innerInput.setAttribute('aria-valuenow', this.currentValue);
}
});
// CONCATENATED MODULE: ./packages/input-number/src/input-number.vue?vue&type=script&lang=js&
/* harmony default export */ var src_input_numbervue_type_script_lang_js_ = (input_numbervue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/input-number/src/input-number.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_input_numbervue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/input-number/src/input-number.vue"
/* harmony default export */ var input_number = (component.exports);
// CONCATENATED MODULE: ./packages/input-number/index.js
/* istanbul ignore next */
input_number.install = function (Vue) {
Vue.component(input_number.name, input_number);
};
/* harmony default export */ var packages_input_number = __webpack_exports__["default"] = (input_number);
/***/ }),
/***/ 9:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/input");
/***/ })
/******/ });
+896
View File
@@ -0,0 +1,896 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 61);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 10:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/migrating");
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 61:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// 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=343dd774&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
class: [
_vm.type === "textarea" ? "el-textarea" : "el-input",
_vm.inputSize ? "el-input--" + _vm.inputSize : "",
{
"is-disabled": _vm.inputDisabled,
"el-input-group": _vm.$slots.prepend || _vm.$slots.append,
"el-input-group--append": _vm.$slots.append,
"el-input-group--prepend": _vm.$slots.prepend,
"el-input--prefix": _vm.$slots.prefix || _vm.prefixIcon,
"el-input--suffix":
_vm.$slots.suffix ||
_vm.suffixIcon ||
_vm.clearable ||
_vm.showPassword
}
],
on: {
mouseenter: function($event) {
_vm.hovering = true
},
mouseleave: function($event) {
_vm.hovering = false
}
}
},
[
_vm.type !== "textarea"
? [
_vm.$slots.prepend
? _c(
"div",
{ staticClass: "el-input-group__prepend" },
[_vm._t("prepend")],
2
)
: _vm._e(),
_vm.type !== "textarea"
? _c(
"input",
_vm._b(
{
ref: "input",
staticClass: "el-input__inner",
attrs: {
tabindex: _vm.tabindex,
type: _vm.showPassword
? _vm.passwordVisible
? "text"
: "password"
: _vm.type,
disabled: _vm.inputDisabled,
readonly: _vm.readonly,
autocomplete: _vm.autoComplete || _vm.autocomplete,
"aria-label": _vm.label
},
domProps: { value: _vm.nativeInputValue },
on: {
compositionstart: _vm.handleComposition,
compositionupdate: _vm.handleComposition,
compositionend: _vm.handleComposition,
input: _vm.handleInput,
focus: _vm.handleFocus,
blur: _vm.handleBlur,
change: _vm.handleChange
}
},
"input",
_vm.$attrs,
false
)
)
: _vm._e(),
_vm.$slots.prefix || _vm.prefixIcon
? _c(
"span",
{ staticClass: "el-input__prefix" },
[
_vm._t("prefix"),
_vm.prefixIcon
? _c("i", {
staticClass: "el-input__icon",
class: _vm.prefixIcon
})
: _vm._e()
],
2
)
: _vm._e(),
_vm.$slots.suffix ||
_vm.suffixIcon ||
_vm.showClear ||
_vm.showPassword ||
(_vm.validateState && _vm.needStatusIcon)
? _c("span", { staticClass: "el-input__suffix" }, [
_c(
"span",
{ staticClass: "el-input__suffix-inner" },
[
!_vm.showClear || !_vm.showPwdVisible
? [
_vm._t("suffix"),
_vm.suffixIcon
? _c("i", {
staticClass: "el-input__icon",
class: _vm.suffixIcon
})
: _vm._e()
]
: _vm._e(),
_vm.showClear
? _c("i", {
staticClass:
"el-input__icon el-icon-circle-close el-input__clear",
on: { click: _vm.clear }
})
: _vm._e(),
_vm.showPwdVisible
? _c("i", {
staticClass:
"el-input__icon el-icon-view el-input__clear",
on: { click: _vm.handlePasswordVisible }
})
: _vm._e()
],
2
),
_vm.validateState
? _c("i", {
staticClass: "el-input__icon",
class: ["el-input__validateIcon", _vm.validateIcon]
})
: _vm._e()
])
: _vm._e(),
_vm.$slots.append
? _c(
"div",
{ staticClass: "el-input-group__append" },
[_vm._t("append")],
2
)
: _vm._e()
]
: _c(
"textarea",
_vm._b(
{
ref: "textarea",
staticClass: "el-textarea__inner",
style: _vm.textareaStyle,
attrs: {
tabindex: _vm.tabindex,
disabled: _vm.inputDisabled,
readonly: _vm.readonly,
autocomplete: _vm.autoComplete || _vm.autocomplete,
"aria-label": _vm.label
},
domProps: { value: _vm.nativeInputValue },
on: {
compositionstart: _vm.handleComposition,
compositionupdate: _vm.handleComposition,
compositionend: _vm.handleComposition,
input: _vm.handleInput,
focus: _vm.handleFocus,
blur: _vm.handleBlur,
change: _vm.handleChange
}
},
"textarea",
_vm.$attrs,
false
)
)
],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/input/src/input.vue?vue&type=template&id=343dd774&
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"
var migrating_ = __webpack_require__(10);
var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);
// CONCATENATED MODULE: ./packages/input/src/calcTextareaHeight.js
var hiddenTextarea = void 0;
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';
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'];
function calculateNodeStyling(targetElement) {
var style = window.getComputedStyle(targetElement);
var boxSizing = style.getPropertyValue('box-sizing');
var paddingSize = parseFloat(style.getPropertyValue('padding-bottom')) + parseFloat(style.getPropertyValue('padding-top'));
var borderSize = parseFloat(style.getPropertyValue('border-bottom-width')) + parseFloat(style.getPropertyValue('border-top-width'));
var contextStyle = CONTEXT_STYLE.map(function (name) {
return name + ':' + style.getPropertyValue(name);
}).join(';');
return { contextStyle: contextStyle, paddingSize: paddingSize, borderSize: borderSize, boxSizing: boxSizing };
}
function calcTextareaHeight(targetElement) {
var minRows = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
var maxRows = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
if (!hiddenTextarea) {
hiddenTextarea = document.createElement('textarea');
document.body.appendChild(hiddenTextarea);
}
var _calculateNodeStyling = calculateNodeStyling(targetElement),
paddingSize = _calculateNodeStyling.paddingSize,
borderSize = _calculateNodeStyling.borderSize,
boxSizing = _calculateNodeStyling.boxSizing,
contextStyle = _calculateNodeStyling.contextStyle;
hiddenTextarea.setAttribute('style', contextStyle + ';' + HIDDEN_STYLE);
hiddenTextarea.value = targetElement.value || targetElement.placeholder || '';
var height = hiddenTextarea.scrollHeight;
var result = {};
if (boxSizing === 'border-box') {
height = height + borderSize;
} else if (boxSizing === 'content-box') {
height = height - paddingSize;
}
hiddenTextarea.value = '';
var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;
if (minRows !== null) {
var minHeight = singleRowHeight * minRows;
if (boxSizing === 'border-box') {
minHeight = minHeight + paddingSize + borderSize;
}
height = Math.max(minHeight, height);
result.minHeight = minHeight + 'px';
}
if (maxRows !== null) {
var maxHeight = singleRowHeight * maxRows;
if (boxSizing === 'border-box') {
maxHeight = maxHeight + paddingSize + borderSize;
}
height = Math.min(maxHeight, height);
}
result.height = height + 'px';
hiddenTextarea.parentNode && hiddenTextarea.parentNode.removeChild(hiddenTextarea);
hiddenTextarea = null;
return result;
};
// EXTERNAL MODULE: external "element-ui/lib/utils/merge"
var merge_ = __webpack_require__(8);
var merge_default = /*#__PURE__*/__webpack_require__.n(merge_);
// 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&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var inputvue_type_script_lang_js_ = ({
name: 'ElInput',
componentName: 'ElInput',
mixins: [emitter_default.a, migrating_default.a],
inheritAttrs: false,
inject: {
elForm: {
default: ''
},
elFormItem: {
default: ''
}
},
data: function data() {
return {
textareaCalcStyle: {},
hovering: false,
focused: false,
isOnComposition: false,
passwordVisible: false
};
},
props: {
value: [String, Number],
size: String,
resize: String,
form: String,
disabled: Boolean,
readonly: Boolean,
type: {
type: String,
default: 'text'
},
autosize: {
type: [Boolean, Object],
default: false
},
autocomplete: {
type: String,
default: 'off'
},
/** @Deprecated in next major version */
autoComplete: {
type: String,
validator: function validator(val) {
false && false;
return true;
}
},
validateEvent: {
type: Boolean,
default: true
},
suffixIcon: String,
prefixIcon: String,
label: String,
clearable: {
type: Boolean,
default: false
},
showPassword: {
type: Boolean,
default: false
},
tabindex: String
},
computed: {
_elFormItemSize: function _elFormItemSize() {
return (this.elFormItem || {}).elFormItemSize;
},
validateState: function validateState() {
return this.elFormItem ? this.elFormItem.validateState : '';
},
needStatusIcon: function needStatusIcon() {
return this.elForm ? this.elForm.statusIcon : false;
},
validateIcon: function validateIcon() {
return {
validating: 'el-icon-loading',
success: 'el-icon-circle-check',
error: 'el-icon-circle-close'
}[this.validateState];
},
textareaStyle: function textareaStyle() {
return merge_default()({}, this.textareaCalcStyle, { resize: this.resize });
},
inputSize: function inputSize() {
return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
},
inputDisabled: function inputDisabled() {
return this.disabled || (this.elForm || {}).disabled;
},
nativeInputValue: function nativeInputValue() {
return this.value === null || this.value === undefined ? '' : this.value;
},
showClear: function showClear() {
return this.clearable && !this.inputDisabled && !this.readonly && this.nativeInputValue && (this.focused || this.hovering);
},
showPwdVisible: function showPwdVisible() {
return this.showPassword && !this.inputDisabled && !this.readonly && (!!this.nativeInputValue || this.focused);
}
},
watch: {
value: function value(val) {
this.$nextTick(this.resizeTextarea);
if (this.validateEvent) {
this.dispatch('ElFormItem', 'el.form.change', [val]);
}
}
},
methods: {
focus: function focus() {
this.getInput().focus();
},
blur: function blur() {
this.getInput().blur();
},
getMigratingConfig: function getMigratingConfig() {
return {
props: {
'icon': 'icon is removed, use suffix-icon / prefix-icon instead.',
'on-icon-click': 'on-icon-click is removed.'
},
events: {
'click': 'click is removed.'
}
};
},
handleBlur: function handleBlur(event) {
this.focused = false;
this.$emit('blur', event);
if (this.validateEvent) {
this.dispatch('ElFormItem', 'el.form.blur', [this.value]);
}
},
select: function select() {
this.getInput().select();
},
resizeTextarea: function resizeTextarea() {
if (this.$isServer) return;
var autosize = this.autosize,
type = this.type;
if (type !== 'textarea') return;
if (!autosize) {
this.textareaCalcStyle = {
minHeight: calcTextareaHeight(this.$refs.textarea).minHeight
};
return;
}
var minRows = autosize.minRows;
var maxRows = autosize.maxRows;
this.textareaCalcStyle = calcTextareaHeight(this.$refs.textarea, minRows, maxRows);
},
handleFocus: function handleFocus(event) {
this.focused = true;
this.$emit('focus', event);
},
handleComposition: function handleComposition(event) {
if (event.type === 'compositionstart') {
this.isOnComposition = true;
}
if (event.type === 'compositionend') {
this.isOnComposition = false;
this.handleInput(event);
}
},
handleInput: function handleInput(event) {
var _this = this;
if (this.isOnComposition) return;
// hack for https://github.com/ElemeFE/element/issues/8548
// should remove the following line when we don't support IE
if (event.target.value === this.nativeInputValue) return;
this.$emit('input', event.target.value);
// set input's value, in case parent refuses the change
// see: https://github.com/ElemeFE/element/issues/12850
this.$nextTick(function () {
var input = _this.getInput();
input.value = _this.value;
});
},
handleChange: function handleChange(event) {
this.$emit('change', event.target.value);
},
calcIconOffset: function calcIconOffset(place) {
var elList = [].slice.call(this.$el.querySelectorAll('.el-input__' + place) || []);
if (!elList.length) return;
var el = null;
for (var i = 0; i < elList.length; i++) {
if (elList[i].parentNode === this.$el) {
el = elList[i];
break;
}
}
if (!el) return;
var pendantMap = {
suffix: 'append',
prefix: 'prepend'
};
var pendant = pendantMap[place];
if (this.$slots[pendant]) {
el.style.transform = 'translateX(' + (place === 'suffix' ? '-' : '') + this.$el.querySelector('.el-input-group__' + pendant).offsetWidth + 'px)';
} else {
el.removeAttribute('style');
}
},
updateIconOffset: function updateIconOffset() {
this.calcIconOffset('prefix');
this.calcIconOffset('suffix');
},
clear: function clear() {
this.$emit('input', '');
this.$emit('change', '');
this.$emit('clear');
},
handlePasswordVisible: function handlePasswordVisible() {
this.passwordVisible = !this.passwordVisible;
this.focus();
},
getInput: function getInput() {
return this.$refs.input || this.$refs.textarea;
}
},
created: function created() {
this.$on('inputSelect', this.select);
},
mounted: function mounted() {
this.resizeTextarea();
this.updateIconOffset();
},
updated: function updated() {
this.$nextTick(this.updateIconOffset);
}
});
// CONCATENATED MODULE: ./packages/input/src/input.vue?vue&type=script&lang=js&
/* harmony default export */ var src_inputvue_type_script_lang_js_ = (inputvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/input/src/input.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_inputvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/input/src/input.vue"
/* harmony default export */ var input = (component.exports);
// CONCATENATED MODULE: ./packages/input/index.js
/* istanbul ignore next */
input.install = function (Vue) {
Vue.component(input.name, input);
};
/* harmony default export */ var packages_input = __webpack_exports__["default"] = (input);
/***/ }),
/***/ 8:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/merge");
/***/ })
/******/ });
+626
View File
@@ -0,0 +1,626 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 59);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 13:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/popup");
/***/ }),
/***/ 2:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/dom");
/***/ }),
/***/ 36:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/after-leave");
/***/ }),
/***/ 59:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// EXTERNAL MODULE: external "vue"
var external_vue_ = __webpack_require__(6);
var external_vue_default = /*#__PURE__*/__webpack_require__.n(external_vue_);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/loading/src/loading.vue?vue&type=template&id=eee0a7ac&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"transition",
{
attrs: { name: "el-loading-fade" },
on: { "after-leave": _vm.handleAfterLeave }
},
[
_c(
"div",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.visible,
expression: "visible"
}
],
staticClass: "el-loading-mask",
class: [_vm.customClass, { "is-fullscreen": _vm.fullscreen }],
style: { backgroundColor: _vm.background || "" }
},
[
_c("div", { staticClass: "el-loading-spinner" }, [
!_vm.spinner
? _c(
"svg",
{
staticClass: "circular",
attrs: { viewBox: "25 25 50 50" }
},
[
_c("circle", {
staticClass: "path",
attrs: { cx: "50", cy: "50", r: "20", fill: "none" }
})
]
)
: _c("i", { class: _vm.spinner }),
_vm.text
? _c("p", { staticClass: "el-loading-text" }, [
_vm._v(_vm._s(_vm.text))
])
: _vm._e()
])
]
)
]
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/loading/src/loading.vue?vue&type=template&id=eee0a7ac&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/loading/src/loading.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var loadingvue_type_script_lang_js_ = ({
data: function data() {
return {
text: null,
spinner: null,
background: null,
fullscreen: true,
visible: false,
customClass: ''
};
},
methods: {
handleAfterLeave: function handleAfterLeave() {
this.$emit('after-leave');
},
setText: function setText(text) {
this.text = text;
}
}
});
// CONCATENATED MODULE: ./packages/loading/src/loading.vue?vue&type=script&lang=js&
/* harmony default export */ var src_loadingvue_type_script_lang_js_ = (loadingvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/loading/src/loading.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_loadingvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/loading/src/loading.vue"
/* harmony default export */ var loading = (component.exports);
// EXTERNAL MODULE: external "element-ui/lib/utils/dom"
var dom_ = __webpack_require__(2);
// EXTERNAL MODULE: external "element-ui/lib/utils/popup"
var popup_ = __webpack_require__(13);
// EXTERNAL MODULE: external "element-ui/lib/utils/after-leave"
var after_leave_ = __webpack_require__(36);
var after_leave_default = /*#__PURE__*/__webpack_require__.n(after_leave_);
// CONCATENATED MODULE: ./packages/loading/src/directive.js
var Mask = external_vue_default.a.extend(loading);
var loadingDirective = {};
loadingDirective.install = function (Vue) {
if (Vue.prototype.$isServer) return;
var toggleLoading = function toggleLoading(el, binding) {
if (binding.value) {
Vue.nextTick(function () {
if (binding.modifiers.fullscreen) {
el.originalPosition = Object(dom_["getStyle"])(document.body, 'position');
el.originalOverflow = Object(dom_["getStyle"])(document.body, 'overflow');
el.maskStyle.zIndex = popup_["PopupManager"].nextZIndex();
Object(dom_["addClass"])(el.mask, 'is-fullscreen');
insertDom(document.body, el, binding);
} else {
Object(dom_["removeClass"])(el.mask, 'is-fullscreen');
if (binding.modifiers.body) {
el.originalPosition = Object(dom_["getStyle"])(document.body, 'position');
['top', 'left'].forEach(function (property) {
var scroll = property === 'top' ? 'scrollTop' : 'scrollLeft';
el.maskStyle[property] = el.getBoundingClientRect()[property] + document.body[scroll] + document.documentElement[scroll] - parseInt(Object(dom_["getStyle"])(document.body, 'margin-' + property), 10) + 'px';
});
['height', 'width'].forEach(function (property) {
el.maskStyle[property] = el.getBoundingClientRect()[property] + 'px';
});
insertDom(document.body, el, binding);
} else {
el.originalPosition = Object(dom_["getStyle"])(el, 'position');
insertDom(el, el, binding);
}
}
});
} else {
after_leave_default()(el.instance, function (_) {
el.domVisible = false;
var target = binding.modifiers.fullscreen || binding.modifiers.body ? document.body : el;
Object(dom_["removeClass"])(target, 'el-loading-parent--relative');
Object(dom_["removeClass"])(target, 'el-loading-parent--hidden');
el.instance.hiding = false;
}, 300, true);
el.instance.visible = false;
el.instance.hiding = true;
}
};
var insertDom = function insertDom(parent, el, binding) {
if (!el.domVisible && Object(dom_["getStyle"])(el, 'display') !== 'none' && Object(dom_["getStyle"])(el, 'visibility') !== 'hidden') {
Object.keys(el.maskStyle).forEach(function (property) {
el.mask.style[property] = el.maskStyle[property];
});
if (el.originalPosition !== 'absolute' && el.originalPosition !== 'fixed') {
Object(dom_["addClass"])(parent, 'el-loading-parent--relative');
}
if (binding.modifiers.fullscreen && binding.modifiers.lock) {
Object(dom_["addClass"])(parent, 'el-loading-parent--hidden');
}
el.domVisible = true;
parent.appendChild(el.mask);
Vue.nextTick(function () {
if (el.instance.hiding) {
el.instance.$emit('after-leave');
} else {
el.instance.visible = true;
}
});
el.domInserted = true;
}
};
Vue.directive('loading', {
bind: function bind(el, binding, vnode) {
var textExr = el.getAttribute('element-loading-text');
var spinnerExr = el.getAttribute('element-loading-spinner');
var backgroundExr = el.getAttribute('element-loading-background');
var customClassExr = el.getAttribute('element-loading-custom-class');
var vm = vnode.context;
var mask = new Mask({
el: document.createElement('div'),
data: {
text: vm && vm[textExr] || textExr,
spinner: vm && vm[spinnerExr] || spinnerExr,
background: vm && vm[backgroundExr] || backgroundExr,
customClass: vm && vm[customClassExr] || customClassExr,
fullscreen: !!binding.modifiers.fullscreen
}
});
el.instance = mask;
el.mask = mask.$el;
el.maskStyle = {};
binding.value && toggleLoading(el, binding);
},
update: function update(el, binding) {
el.instance.setText(el.getAttribute('element-loading-text'));
if (binding.oldValue !== binding.value) {
toggleLoading(el, binding);
}
},
unbind: function unbind(el, binding) {
if (el.domInserted) {
el.mask && el.mask.parentNode && el.mask.parentNode.removeChild(el.mask);
toggleLoading(el, { value: false, modifiers: binding.modifiers });
}
el.instance && el.instance.$destroy();
}
});
};
/* harmony default export */ var directive = (loadingDirective);
// EXTERNAL MODULE: external "element-ui/lib/utils/merge"
var merge_ = __webpack_require__(8);
var merge_default = /*#__PURE__*/__webpack_require__.n(merge_);
// CONCATENATED MODULE: ./packages/loading/src/index.js
var LoadingConstructor = external_vue_default.a.extend(loading);
var defaults = {
text: null,
fullscreen: true,
body: false,
lock: false,
customClass: ''
};
var fullscreenLoading = void 0;
LoadingConstructor.prototype.originalPosition = '';
LoadingConstructor.prototype.originalOverflow = '';
LoadingConstructor.prototype.close = function () {
var _this = this;
if (this.fullscreen) {
fullscreenLoading = undefined;
}
after_leave_default()(this, function (_) {
var target = _this.fullscreen || _this.body ? document.body : _this.target;
Object(dom_["removeClass"])(target, 'el-loading-parent--relative');
Object(dom_["removeClass"])(target, 'el-loading-parent--hidden');
if (_this.$el && _this.$el.parentNode) {
_this.$el.parentNode.removeChild(_this.$el);
}
_this.$destroy();
}, 300);
this.visible = false;
};
var src_addStyle = function addStyle(options, parent, instance) {
var maskStyle = {};
if (options.fullscreen) {
instance.originalPosition = Object(dom_["getStyle"])(document.body, 'position');
instance.originalOverflow = Object(dom_["getStyle"])(document.body, 'overflow');
maskStyle.zIndex = popup_["PopupManager"].nextZIndex();
} else if (options.body) {
instance.originalPosition = Object(dom_["getStyle"])(document.body, 'position');
['top', 'left'].forEach(function (property) {
var scroll = property === 'top' ? 'scrollTop' : 'scrollLeft';
maskStyle[property] = options.target.getBoundingClientRect()[property] + document.body[scroll] + document.documentElement[scroll] + 'px';
});
['height', 'width'].forEach(function (property) {
maskStyle[property] = options.target.getBoundingClientRect()[property] + 'px';
});
} else {
instance.originalPosition = Object(dom_["getStyle"])(parent, 'position');
}
Object.keys(maskStyle).forEach(function (property) {
instance.$el.style[property] = maskStyle[property];
});
};
var src_Loading = function Loading() {
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
if (external_vue_default.a.prototype.$isServer) return;
options = merge_default()({}, defaults, options);
if (typeof options.target === 'string') {
options.target = document.querySelector(options.target);
}
options.target = options.target || document.body;
if (options.target !== document.body) {
options.fullscreen = false;
} else {
options.body = true;
}
if (options.fullscreen && fullscreenLoading) {
return fullscreenLoading;
}
var parent = options.body ? document.body : options.target;
var instance = new LoadingConstructor({
el: document.createElement('div'),
data: options
});
src_addStyle(options, parent, instance);
if (instance.originalPosition !== 'absolute' && instance.originalPosition !== 'fixed') {
Object(dom_["addClass"])(parent, 'el-loading-parent--relative');
}
if (options.fullscreen && options.lock) {
Object(dom_["addClass"])(parent, 'el-loading-parent--hidden');
}
parent.appendChild(instance.$el);
external_vue_default.a.nextTick(function () {
instance.visible = true;
});
if (options.fullscreen) {
fullscreenLoading = instance;
}
return instance;
};
/* harmony default export */ var src = (src_Loading);
// CONCATENATED MODULE: ./packages/loading/index.js
/* harmony default export */ var packages_loading = __webpack_exports__["default"] = ({
install: function install(Vue) {
Vue.use(directive);
Vue.prototype.$loading = src;
},
directive: directive,
service: src
});
/***/ }),
/***/ 6:
/***/ (function(module, exports) {
module.exports = require("vue");
/***/ }),
/***/ 8:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/merge");
/***/ })
/******/ });
+56
View File
@@ -0,0 +1,56 @@
'use strict';
exports.__esModule = true;
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
exports.default = function (Vue) {
/**
* template
*
* @param {String} string
* @param {Array} ...args
* @return {String}
*/
function template(string) {
for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
args[_key - 1] = arguments[_key];
}
if (args.length === 1 && _typeof(args[0]) === 'object') {
args = args[0];
}
if (!args || !args.hasOwnProperty) {
args = {};
}
return string.replace(RE_NARGS, function (match, prefix, i, index) {
var result = void 0;
if (string[index - 1] === '{' && string[index + match.length] === '}') {
return i;
} else {
result = (0, _util.hasOwn)(args, i) ? args[i] : null;
if (result === null || result === undefined) {
return '';
}
return result;
}
});
}
return template;
};
var _util = require('element-ui/lib/utils/util');
var RE_NARGS = /(%|)\{([0-9a-zA-Z_]+)\}/g;
/**
* String format template
* - Inspired:
* https://github.com/Matt-Esch/string-template/index.js
*/
+63
View File
@@ -0,0 +1,63 @@
'use strict';
exports.__esModule = true;
exports.i18n = exports.use = exports.t = undefined;
var _zhCN = require('element-ui/lib/locale/lang/zh-CN');
var _zhCN2 = _interopRequireDefault(_zhCN);
var _vue = require('vue');
var _vue2 = _interopRequireDefault(_vue);
var _deepmerge = require('deepmerge');
var _deepmerge2 = _interopRequireDefault(_deepmerge);
var _format = require('./format');
var _format2 = _interopRequireDefault(_format);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var format = (0, _format2.default)(_vue2.default);
var lang = _zhCN2.default;
var merged = false;
var i18nHandler = function i18nHandler() {
var vuei18n = Object.getPrototypeOf(this || _vue2.default).$t;
if (typeof vuei18n === 'function' && !!_vue2.default.locale) {
if (!merged) {
merged = true;
_vue2.default.locale(_vue2.default.config.lang, (0, _deepmerge2.default)(lang, _vue2.default.locale(_vue2.default.config.lang) || {}, { clone: true }));
}
return vuei18n.apply(this, arguments);
}
};
var t = exports.t = function t(path, options) {
var value = i18nHandler.apply(this, arguments);
if (value !== null && value !== undefined) return value;
var array = path.split('.');
var current = lang;
for (var i = 0, j = array.length; i < j; i++) {
var property = array[i];
value = current[property];
if (i === j - 1) return format(value, options);
if (!value) return '';
current = value;
}
return '';
};
var use = exports.use = function use(l) {
lang = l || lang;
};
var i18n = exports.i18n = function i18n(fn) {
i18nHandler = fn || i18nHandler;
};
exports.default = { use: use, t: t, i18n: i18n };
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Bevestig',
clear: 'Maak skoon'
},
datepicker: {
now: 'Nou',
today: 'Vandag',
cancel: 'Kanselleer',
clear: 'Maak skoon',
confirm: 'Bevestig',
selectDate: 'Kies datum',
selectTime: 'Kies tyd',
startDate: 'Begindatum',
startTime: 'Begintyd',
endDate: 'Einddatum',
endTime: 'Eindtyd',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: 'Jaar',
month1: 'Jan',
month2: 'Feb',
month3: 'Mrt',
month4: 'Apr',
month5: 'Mei',
month6: 'Jun',
month7: 'Jul',
month8: 'Aug',
month9: 'Sep',
month10: 'Okt',
month11: 'Nov',
month12: 'Des',
// week: 'week',
weeks: {
sun: 'So',
mon: 'Ma',
tue: 'Di',
wed: 'Wo',
thu: 'Do',
fri: 'Vr',
sat: 'Sa'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Mrt',
apr: 'Apr',
may: 'Mei',
jun: 'Jun',
jul: 'Jul',
aug: 'Aug',
sep: 'Sep',
oct: 'Okt',
nov: 'Nov',
dec: 'Des'
}
},
select: {
loading: 'Laai',
noMatch: 'Geen toepaslike data',
noData: 'Geen data',
placeholder: 'Kies'
},
cascader: {
noMatch: 'Geen toepaslike data',
loading: 'Laai',
placeholder: 'Kies'
},
pagination: {
goto: 'Gaan na',
pagesize: '/page',
total: 'Totaal {total}',
pageClassifier: ''
},
messagebox: {
title: 'Boodskap',
confirm: 'Bevestig',
cancel: 'Kanselleer',
error: 'Ongeldige invoer'
},
upload: {
deleteTip: 'press delete to remove', // to be translated
delete: 'Verwyder',
preview: 'Voorskou',
continue: 'Gaan voort'
},
table: {
emptyText: 'Geen Data',
confirmFilter: 'Bevestig',
resetFilter: 'Herstel',
clearFilter: 'Alles',
sumText: 'Som'
},
tree: {
emptyText: 'Geen Data'
},
transfer: {
noMatch: 'Geen toepaslike data',
noData: 'Geen data',
titles: ['Lys 1', 'Lys 2'],
filterPlaceholder: 'Voer sleutelwoord in',
noCheckedFormat: '{total} items',
hasCheckedFormat: '{checked}/{total} gekies'
}
}
};
+111
View File
@@ -0,0 +1,111 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'موافق',
clear: 'إزالة'
},
datepicker: {
now: 'الآن',
today: 'اليوم',
cancel: 'إلغاء',
clear: 'إزالة',
confirm: 'موافق',
selectDate: 'أختر التاريخ',
selectTime: 'أختر الوقت',
startDate: 'تاريخ البدء',
startTime: 'وقت البدء',
endDate: 'تاريخ الانتهاء',
endTime: 'وقت الانتهاء',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: '',
month1: 'يناير',
month2: 'فبراير',
month3: 'مارس',
month4: 'ابريل',
month5: 'مايو',
month6: 'يونيو',
month7: 'يوليو',
month8: 'أغسطس',
month9: 'سبتمبر',
month10: 'أكتوبر',
month11: 'نوفمبر',
month12: 'ديسمبر',
week: 'أسبوع',
weeks: {
sun: 'الأحد',
mon: 'الأثنين',
tue: 'الثلاثاء',
wed: 'الأربعاء',
thu: 'الخميس',
fri: 'الجمعة',
sat: 'السبت'
},
months: {
jan: 'يناير',
feb: 'فبراير',
mar: 'مارس',
apr: 'أبريل',
may: 'مايو',
jun: 'يونيو',
jul: 'يوليو',
aug: 'أغسطس',
sep: 'سبتمبر',
oct: 'أكتوبر',
nov: 'نوفمبر',
dec: 'ديسمبر'
}
},
select: {
loading: 'جار التحميل',
noMatch: 'لايوجد بيانات مطابقة',
noData: 'لايوجد بيانات',
placeholder: 'أختر'
},
cascader: {
noMatch: 'لايوجد بيانات مطابقة',
loading: 'جار التحميل',
placeholder: 'أختر'
},
pagination: {
goto: 'أذهب إلى',
pagesize: '/صفحة',
total: 'الكل {total}',
pageClassifier: ''
},
messagebox: {
title: 'الرسالة',
confirm: 'موافق',
cancel: 'إلغاء',
error: 'مدخل غير صحيح'
},
upload: {
delete: 'حذف',
preview: 'عرض',
continue: 'إستمرار'
},
table: {
emptyText: 'لايوجد بيانات',
confirmFilter: 'تأكيد',
resetFilter: 'حذف',
clearFilter: 'الكل',
sumText: 'المجموع'
},
tree: {
emptyText: 'لايوجد بيانات'
},
transfer: {
noMatch: 'لايوجد بيانات مطابقة',
noData: 'لايوجد بيانات',
titles: ['قائمة 1', 'قائمة 2'],
filterPlaceholder: 'ادخل كلمة',
noCheckedFormat: '{total} عناصر',
hasCheckedFormat: '{checked}/{total} مختار'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Изчисти'
},
datepicker: {
now: 'Сега',
today: 'Днес',
cancel: 'Откажи',
clear: 'Изчисти',
confirm: 'ОК',
selectDate: 'Избери дата',
selectTime: 'Избери час',
startDate: 'Начална дата',
startTime: 'Начален час',
endDate: 'Крайна дата',
endTime: 'Краен час',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: '',
month1: 'Януари',
month2: 'Февруари',
month3: 'Март',
month4: 'Април',
month5: 'Май',
month6: 'Юни',
month7: 'Юли',
month8: 'Август',
month9: 'Септември',
month10: 'Октомври',
month11: 'Ноември',
month12: 'Декември',
// week: 'Седмица',
weeks: {
sun: 'Нед',
mon: 'Пон',
tue: 'Вто',
wed: 'Сря',
thu: 'Чет',
fri: 'Пет',
sat: 'Съб'
},
months: {
jan: 'Яну',
feb: 'Фев',
mar: 'Мар',
apr: 'Апр',
may: 'Май',
jun: 'Юни',
jul: 'Юли',
aug: 'Авг',
sep: 'Сеп',
oct: 'Окт',
nov: 'Ное',
dec: 'Дек'
}
},
select: {
loading: 'Зареждане',
noMatch: 'Няма намерени',
noData: 'Няма данни',
placeholder: 'Избери'
},
cascader: {
noMatch: 'Няма намерени',
loading: 'Зареждане',
placeholder: 'Избери'
},
pagination: {
goto: 'Иди на',
pagesize: '/страница',
total: 'Общо {total}',
pageClassifier: ''
},
messagebox: {
title: 'Съобщение',
confirm: 'ОК',
cancel: 'Откажи',
error: 'Невалидни данни'
},
upload: {
deleteTip: 'press delete to remove', // to be translated
delete: 'Изтрий',
preview: 'Прегледай',
continue: 'Продължи'
},
table: {
emptyText: 'Няма данни',
confirmFilter: 'Потвърди',
resetFilter: 'Изчисти',
clearFilter: 'Всички',
sumText: 'Sum' // to be translated
},
tree: {
emptyText: 'Няма данни'
},
transfer: {
noMatch: 'Няма намерени',
noData: 'Няма данни',
titles: ['List 1', 'List 2'], // to be translated
filterPlaceholder: 'Enter keyword', // to be translated
noCheckedFormat: '{total} items', // to be translated
hasCheckedFormat: '{checked}/{total} checked' // to be translated
}
}
};
+111
View File
@@ -0,0 +1,111 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Confirmar',
clear: 'Netejar'
},
datepicker: {
now: 'Ara',
today: 'Avui',
cancel: 'Cancel·lar',
clear: 'Netejar',
confirm: 'Confirmar',
selectDate: 'Seleccionar data',
selectTime: 'Seleccionar hora',
startDate: 'Data Inici',
startTime: 'Hora Inici',
endDate: 'Data Final',
endTime: 'Hora Final',
prevYear: 'Any anterior',
nextYear: 'Pròxim Any',
prevMonth: 'Mes anterior',
nextMonth: 'Pròxim Mes',
year: 'Any',
month1: 'Gener',
month2: 'Febrer',
month3: 'Març',
month4: 'Abril',
month5: 'Maig',
month6: 'Juny',
month7: 'Juliol',
month8: 'Agost',
month9: 'Setembre',
month10: 'Octubre',
month11: 'Novembre',
month12: 'Desembre',
// week: 'setmana',
weeks: {
sun: 'Dg',
mon: 'Dl',
tue: 'Dt',
wed: 'Dc',
thu: 'Dj',
fri: 'Dv',
sat: 'Ds'
},
months: {
jan: 'Gen',
feb: 'Febr',
mar: 'Març',
apr: 'Abr',
may: 'Maig',
jun: 'Juny',
jul: 'Jul',
aug: 'Ag',
sep: 'Set',
oct: 'Oct',
nov: 'Nov',
dec: 'Des'
}
},
select: {
loading: 'Carregant',
noMatch: 'No hi ha dades que coincideixin',
noData: 'Sense Dades',
placeholder: 'Seleccionar'
},
cascader: {
noMatch: 'No hi ha dades que coincideixin',
loading: 'Carregant',
placeholder: 'Seleccionar'
},
pagination: {
goto: 'Anar a',
pagesize: '/pagina',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
confirm: 'Acceptar',
cancel: 'Cancel·lar',
error: 'Entrada invàlida'
},
upload: {
deleteTip: 'premi eliminar per descartar',
delete: 'Eliminar',
preview: 'Vista Prèvia',
continue: 'Continuar'
},
table: {
emptyText: 'Sense Dades',
confirmFilter: 'Confirmar',
resetFilter: 'Netejar',
clearFilter: 'Tot',
sumText: 'Tot'
},
tree: {
emptyText: 'Sense Dades'
},
transfer: {
noMatch: 'No hi ha dades que coincideixin',
noData: 'Sense Dades',
titles: ['Llista 1', 'Llista 2'],
filterPlaceholder: 'Introdueix la paraula clau',
noCheckedFormat: '{total} ítems',
hasCheckedFormat: '{checked}/{total} seleccionats'
}
}
};
+114
View File
@@ -0,0 +1,114 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Vymazat'
},
datepicker: {
now: 'Teď',
today: 'Dnes',
cancel: 'Zrušit',
clear: 'Vymazat',
confirm: 'OK',
selectDate: 'Vybrat datum',
selectTime: 'Vybrat čas',
startDate: 'Datum začátku',
startTime: 'Čas začátku',
endDate: 'Datum konce',
endTime: 'Čas konce',
prevYear: 'Předchozí rok',
nextYear: 'Příští rok',
prevMonth: 'Předchozí měsíc',
nextMonth: 'Příští měsíc',
day: 'Den',
week: 'Týden',
month: 'Měsíc',
year: 'Rok',
month1: 'Leden',
month2: 'Únor',
month3: 'Březen',
month4: 'Duben',
month5: 'Květen',
month6: 'Červen',
month7: 'Červenec',
month8: 'Srpen',
month9: 'Září',
month10: 'Říjen',
month11: 'Listopad',
month12: 'Prosinec',
weeks: {
sun: 'Ne',
mon: 'Po',
tue: 'Út',
wed: 'St',
thu: 'Čt',
fri: 'Pá',
sat: 'So'
},
months: {
jan: 'Led',
feb: 'Úno',
mar: 'Bře',
apr: 'Dub',
may: 'Kvě',
jun: 'Čer',
jul: 'Čvc',
aug: 'Srp',
sep: 'Zář',
oct: 'Říj',
nov: 'Lis',
dec: 'Pro'
}
},
select: {
loading: 'Načítání',
noMatch: 'Žádná shoda',
noData: 'Žádná data',
placeholder: 'Vybrat'
},
cascader: {
noMatch: 'Žádná shoda',
loading: 'Načítání',
placeholder: 'Vybrat'
},
pagination: {
goto: 'Jít na',
pagesize: 'na stranu',
total: 'Celkem {total}',
pageClassifier: ''
},
messagebox: {
title: 'Zpráva',
confirm: 'OK',
cancel: 'Zrušit',
error: 'Neplatný vstup'
},
upload: {
deleteTip: 'Stisknout pro smazání',
delete: 'Vymazat',
preview: 'Náhled',
continue: 'Pokračovat'
},
table: {
emptyText: 'Žádná data',
confirmFilter: 'Potvrdit',
resetFilter: 'Resetovat',
clearFilter: 'Vše',
sumText: 'Celkem'
},
tree: {
emptyText: 'Žádná data'
},
transfer: {
noMatch: 'Žádná shoda',
noData: 'Žádná data',
titles: ['Seznam 1', 'Seznam 2'],
filterPlaceholder: 'Klíčové slovo',
noCheckedFormat: '{total} položek',
hasCheckedFormat: '{checked}/{total} vybráno'
}
}
};
+111
View File
@@ -0,0 +1,111 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Ryd'
},
datepicker: {
now: 'Nu',
today: 'I dag',
cancel: 'Annuller',
clear: 'Ryd',
confirm: 'OK',
selectDate: 'Vælg dato',
selectTime: 'Vælg tidspunkt',
startDate: 'Startdato',
startTime: 'Starttidspunkt',
endDate: 'Slutdato',
endTime: 'Sluttidspunkt',
prevYear: 'Forrige år',
nextYear: 'Næste år',
prevMonth: 'Forrige måned',
nextMonth: 'Næste måned',
year: '',
month1: 'Januar',
month2: 'Februar',
month3: 'Marts',
month4: 'April',
month5: 'Maj',
month6: 'Juni',
month7: 'Juli',
month8: 'August',
month9: 'September',
month10: 'Oktober',
month11: 'November',
month12: 'December',
week: 'uge',
weeks: {
sun: 'Søn',
mon: 'Man',
tue: 'Tir',
wed: 'Ons',
thu: 'Tor',
fri: 'Fre',
sat: 'Lør'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Mar',
apr: 'Apr',
may: 'Maj',
jun: 'Jun',
jul: 'Jul',
aug: 'Aug',
sep: 'Sep',
oct: 'Okt',
nov: 'Nov',
dec: 'Dec'
}
},
select: {
loading: 'Henter',
noMatch: 'Ingen matchende data',
noData: 'Ingen data',
placeholder: 'Vælg'
},
cascader: {
noMatch: 'Ingen matchende data',
loading: 'Henter',
placeholder: 'Vælg'
},
pagination: {
goto: 'Gå til',
pagesize: '/side',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
confirm: 'OK',
cancel: 'Annuller',
error: 'Ugyldig input'
},
upload: {
deleteTip: 'tryk slet for at fjerne',
delete: 'Slet',
preview: 'Forhåndsvisning',
continue: 'Fortsæt'
},
table: {
emptyText: 'Ingen data',
confirmFilter: 'Bekræft',
resetFilter: 'Nulstil',
clearFilter: 'Alle',
sumText: 'Sum'
},
tree: {
emptyText: 'Ingen data'
},
transfer: {
noMatch: 'Ingen matchende data',
noData: 'Ingen data',
titles: ['Liste 1', 'Liste 2'],
filterPlaceholder: 'Indtast søgeord',
noCheckedFormat: '{total} emner',
hasCheckedFormat: '{checked}/{total} valgt'
}
}
};
+113
View File
@@ -0,0 +1,113 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Leeren'
},
datepicker: {
now: 'Jetzt',
today: 'Heute',
cancel: 'Abbrechen',
clear: 'Leeren',
confirm: 'OK',
selectDate: 'Datum wählen',
selectTime: 'Uhrzeit wählen',
startDate: 'Startdatum',
startTime: 'Startzeit',
endDate: 'Enddatum',
endTime: 'Endzeit',
prevYear: 'Letztes Jahr',
nextYear: 'Nächtes Jahr',
prevMonth: 'Letzter Monat',
nextMonth: 'Nächster Monat',
day: 'Tag',
week: 'Woche',
month: 'Monat',
year: '',
month1: 'Januar',
month2: 'Februar',
month3: 'März',
month4: 'April',
month5: 'Mai',
month6: 'Juni',
month7: 'Juli',
month8: 'August',
month9: 'September',
month10: 'Oktober',
month11: 'November',
month12: 'Dezember',
weeks: {
sun: 'So',
mon: 'Mo',
tue: 'Di',
wed: 'Mi',
thu: 'Do',
fri: 'Fr',
sat: 'Sa'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Mär',
apr: 'Apr',
may: 'Mai',
jun: 'Jun',
jul: 'Jul',
aug: 'Aug',
sep: 'Sep',
oct: 'Okt',
nov: 'Nov',
dec: 'Dez'
}
},
select: {
loading: 'Lädt.',
noMatch: 'Nichts gefunden.',
noData: 'Keine Daten',
placeholder: 'Daten wählen'
},
cascader: {
noMatch: 'Nichts gefunden.',
loading: 'Lädt.',
placeholder: 'Daten wählen'
},
pagination: {
goto: 'Gehe zu',
pagesize: ' pro Seite',
total: 'Gesamt {total}',
pageClassifier: ''
},
messagebox: {
confirm: 'OK',
cancel: 'Abbrechen',
error: 'Fehler'
},
upload: {
deleteTip: 'Klicke löschen zum entfernen',
delete: 'Löschen',
preview: 'Vorschau',
continue: 'Fortsetzen'
},
table: {
emptyText: 'Keine Daten',
confirmFilter: 'Anwenden',
resetFilter: 'Zurücksetzen',
clearFilter: 'Alles ',
sumText: 'Summe'
},
tree: {
emptyText: 'Keine Einträge'
},
transfer: {
noMatch: 'Nichts gefunden.',
noData: 'Keine Einträge',
titles: ['Liste 1', 'Liste 2'],
filterPlaceholder: 'Einträge filtern',
noCheckedFormat: '{total} Einträge',
hasCheckedFormat: '{checked}/{total} ausgewählt'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Tühjenda'
},
datepicker: {
now: 'Praegu',
today: 'Täna',
cancel: 'Tühista',
clear: 'Tühjenda',
confirm: 'OK',
selectDate: 'Vali kuupäev',
selectTime: 'Vali kellaaeg',
startDate: 'Alguskuupäev',
startTime: 'Algusaeg',
endDate: 'Lõpukuupäev',
endTime: 'Lõpuaeg',
prevYear: 'Eelmine aasta',
nextYear: 'Järgmine aasta',
prevMonth: 'Eelmine kuu',
nextMonth: 'Järgmine kuu',
year: '',
month1: 'Jaanuar',
month2: 'Veebruar',
month3: 'Märts',
month4: 'Aprill',
month5: 'Mai',
month6: 'Juuni',
month7: 'Juuli',
month8: 'August',
month9: 'September',
month10: 'Oktoober',
month11: 'November',
month12: 'Detsember',
// week: 'nädal',
weeks: {
sun: 'P',
mon: 'E',
tue: 'T',
wed: 'K',
thu: 'N',
fri: 'R',
sat: 'L'
},
months: {
jan: 'Jaan',
feb: 'Veeb',
mar: 'Mär',
apr: 'Apr',
may: 'Mai',
jun: 'Juun',
jul: 'Juul',
aug: 'Aug',
sep: 'Sept',
oct: 'Okt',
nov: 'Nov',
dec: 'Dets'
}
},
select: {
loading: 'Laadimine',
noMatch: 'Sobivad andmed puuduvad',
noData: 'Andmed puuduvad',
placeholder: 'Vali'
},
cascader: {
noMatch: 'Sobivad andmed puuduvad',
loading: 'Laadimine',
placeholder: 'Vali'
},
pagination: {
goto: 'Mine lehele',
pagesize: '/page',
total: 'Kokku {total}',
pageClassifier: ''
},
messagebox: {
title: 'Teade',
confirm: 'OK',
cancel: 'Tühista',
error: 'Vigane sisend'
},
upload: {
deleteTip: 'Vajuta "Kustuta", et eemaldada',
delete: 'Kustuta',
preview: 'Eelvaate',
continue: 'Jätka'
},
table: {
emptyText: 'Andmed puuduvad',
confirmFilter: 'Kinnita',
resetFilter: 'Taasta',
clearFilter: 'Kõik',
sumText: 'Summa'
},
tree: {
emptyText: 'Andmed puuduvad'
},
transfer: {
noMatch: 'Sobivad andmed puuduvad',
noData: 'Andmed puuduvad',
titles: ['Loend 1', 'Loend 2'],
filterPlaceholder: 'Sisesta märksõna',
noCheckedFormat: '{total} objekti',
hasCheckedFormat: '{checked}/{total} valitud'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Εντάξει',
clear: 'Καθαρισμός'
},
datepicker: {
now: 'Τώρα',
today: 'Σήμερα',
cancel: 'Ακύρωση',
clear: 'Καθαρισμός',
confirm: 'Εντάξει',
selectDate: 'Επιλέξτε ημέρα',
selectTime: 'Επιλέξτε ώρα',
startDate: 'Ημερομηνία Έναρξης',
startTime: 'Ωρα Έναρξης',
endDate: 'Ημερομηνία Λήξης',
endTime: 'Ωρα Λήξης',
prevYear: 'Προηγούμενο Έτος',
nextYear: 'Επόμενο Έτος',
prevMonth: 'Προηγούμενος Μήνας',
nextMonth: 'Επόμενος Μήνας',
year: 'Έτος',
month1: 'Ιανουάριος',
month2: 'Φεβρουάριος',
month3: 'Μάρτιος',
month4: 'Απρίλιος',
month5: 'Μάιος',
month6: 'Ιούνιος',
month7: 'Ιούλιος',
month8: 'Αύγουστος',
month9: 'Σεπτέμβριος',
month10: 'Οκτώβριος',
month11: 'Νοέμβριος',
month12: 'Δεκέμβριος',
// week: 'εβδομάδα',
weeks: {
sun: 'Κυρ',
mon: 'Δευ',
tue: 'Τρι',
wed: 'Τετ',
thu: 'Πεμ',
fri: 'Παρ',
sat: 'Σαβ'
},
months: {
jan: 'Ιαν',
feb: 'Φεβ',
mar: 'Μαρ',
apr: 'Απρ',
may: 'Μαϊ',
jun: 'Ιουν',
jul: 'Ιουλ',
aug: 'Αυγ',
sep: 'Σεπ',
oct: 'Οκτ',
nov: 'Νοε',
dec: 'Δεκ'
}
},
select: {
loading: 'Φόρτωση',
noMatch: 'Δεν βρέθηκαν αποτελέσματα',
noData: 'Χωρίς δεδομένα',
placeholder: 'Επιλογή'
},
cascader: {
noMatch: 'Δεν βρέθηκαν αποτελέσματα',
loading: 'Φόρτωση',
placeholder: 'Επιλογή'
},
pagination: {
goto: 'Μετάβαση σε',
pagesize: '/σελίδα',
total: 'Σύνολο {total}',
pageClassifier: ''
},
messagebox: {
title: 'Μήνυμα',
confirm: 'Εντάξει',
cancel: 'Ακύρωση',
error: 'Άκυρη εισαγωγή'
},
upload: {
deleteTip: 'Πάτησε Διαγραφή για αφαίρεση',
delete: 'Διαγραφή',
preview: 'Προεπισκόπηση',
continue: 'Συνέχεια'
},
table: {
emptyText: 'Χωρίς Δεδομένα',
confirmFilter: 'Επιβεβαίωση',
resetFilter: 'Επαναφορά',
clearFilter: 'Όλα',
sumText: 'Σύνολο'
},
tree: {
emptyText: 'Χωρίς Δεδομένα'
},
transfer: {
noMatch: 'Δεν βρέθηκαν αποτελέσματα',
noData: 'Χωρίς δεδομένα',
titles: ['Λίστα 1', 'Λίστα 2'],
filterPlaceholder: 'Αναζήτηση',
noCheckedFormat: '{total} Αντικείμενα',
hasCheckedFormat: '{checked}/{total} επιλεγμένα'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Clear'
},
datepicker: {
now: 'Now',
today: 'Today',
cancel: 'Cancel',
clear: 'Clear',
confirm: 'OK',
selectDate: 'Select date',
selectTime: 'Select time',
startDate: 'Start Date',
startTime: 'Start Time',
endDate: 'End Date',
endTime: 'End Time',
prevYear: 'Previous Year',
nextYear: 'Next Year',
prevMonth: 'Previous Month',
nextMonth: 'Next Month',
year: '',
month1: 'January',
month2: 'February',
month3: 'March',
month4: 'April',
month5: 'May',
month6: 'June',
month7: 'July',
month8: 'August',
month9: 'September',
month10: 'October',
month11: 'November',
month12: 'December',
week: 'week',
weeks: {
sun: 'Sun',
mon: 'Mon',
tue: 'Tue',
wed: 'Wed',
thu: 'Thu',
fri: 'Fri',
sat: 'Sat'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Mar',
apr: 'Apr',
may: 'May',
jun: 'Jun',
jul: 'Jul',
aug: 'Aug',
sep: 'Sep',
oct: 'Oct',
nov: 'Nov',
dec: 'Dec'
}
},
select: {
loading: 'Loading',
noMatch: 'No matching data',
noData: 'No data',
placeholder: 'Select'
},
cascader: {
noMatch: 'No matching data',
loading: 'Loading',
placeholder: 'Select'
},
pagination: {
goto: 'Go to',
pagesize: '/page',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
title: 'Message',
confirm: 'OK',
cancel: 'Cancel',
error: 'Illegal input'
},
upload: {
deleteTip: 'press delete to remove',
delete: 'Delete',
preview: 'Preview',
continue: 'Continue'
},
table: {
emptyText: 'No Data',
confirmFilter: 'Confirm',
resetFilter: 'Reset',
clearFilter: 'All',
sumText: 'Sum'
},
tree: {
emptyText: 'No Data'
},
transfer: {
noMatch: 'No matching data',
noData: 'No data',
titles: ['List 1', 'List 2'], // to be translated
filterPlaceholder: 'Enter keyword', // to be translated
noCheckedFormat: '{total} items', // to be translated
hasCheckedFormat: '{checked}/{total} checked' // to be translated
}
}
};
+111
View File
@@ -0,0 +1,111 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Confirmar',
clear: 'Despejar'
},
datepicker: {
now: 'Ahora',
today: 'Hoy',
cancel: 'Cancelar',
clear: 'Despejar',
confirm: 'Confirmar',
selectDate: 'Seleccionar fecha',
selectTime: 'Seleccionar hora',
startDate: 'Fecha Incial',
startTime: 'Hora Inicial',
endDate: 'Fecha Final',
endTime: 'Hora Final',
prevYear: 'Año Anterior',
nextYear: 'Próximo Año',
prevMonth: 'Mes Anterior',
nextMonth: 'Próximo Mes',
year: '',
month1: 'enero',
month2: 'febrero',
month3: 'marzo',
month4: 'abril',
month5: 'mayo',
month6: 'junio',
month7: 'julio',
month8: 'agosto',
month9: 'septiembre',
month10: 'octubre',
month11: 'noviembre',
month12: 'diciembre',
// week: 'semana',
weeks: {
sun: 'dom',
mon: 'lun',
tue: 'mar',
wed: 'mié',
thu: 'jue',
fri: 'vie',
sat: 'sáb'
},
months: {
jan: 'ene',
feb: 'feb',
mar: 'mar',
apr: 'abr',
may: 'may',
jun: 'jun',
jul: 'jul',
aug: 'ago',
sep: 'sep',
oct: 'oct',
nov: 'nov',
dec: 'dic'
}
},
select: {
loading: 'Cargando',
noMatch: 'No hay datos que coincidan',
noData: 'Sin datos',
placeholder: 'Seleccionar'
},
cascader: {
noMatch: 'No hay datos que coincidan',
loading: 'Cargando',
placeholder: 'Seleccionar'
},
pagination: {
goto: 'Ir a',
pagesize: '/página',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
confirm: 'Aceptar',
cancel: 'Cancelar',
error: 'Entrada inválida'
},
upload: {
deleteTip: 'Pulse Eliminar para retirar',
delete: 'Eliminar',
preview: 'Vista Previa',
continue: 'Continuar'
},
table: {
emptyText: 'Sin Datos',
confirmFilter: 'Confirmar',
resetFilter: 'Reiniciar',
clearFilter: 'Despejar',
sumText: 'Suma'
},
tree: {
emptyText: 'Sin Datos'
},
transfer: {
noMatch: 'No hay datos que coincidan',
noData: 'Sin datos',
titles: ['Lista 1', 'Lista 2'],
filterPlaceholder: 'Ingresar palabra clave',
noCheckedFormat: '{total} artículos',
hasCheckedFormat: '{checked}/{total} revisados'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Ados',
clear: 'Garbitu'
},
datepicker: {
now: 'Orain',
today: 'Gaur',
cancel: 'Utzi',
clear: 'Garbitu',
confirm: 'Ados',
selectDate: 'Hautatu data',
selectTime: 'Hautatu ordua',
startDate: 'Hasierako data',
startTime: 'Hasierako ordua',
endDate: 'Amaierako data',
endTime: 'Amaierako ordua',
prevYear: 'Aurreko urtea',
nextYear: 'Hurrengo urtea',
prevMonth: 'Aurreko hilabetea',
nextMonth: 'Hurrengo hilabetea',
year: '',
month1: 'Urtarrila',
month2: 'Otsaila',
month3: 'Martxoa',
month4: 'Apirila',
month5: 'Maiatza',
month6: 'Ekaina',
month7: 'Uztaila',
month8: 'Abuztua',
month9: 'Iraila',
month10: 'Urria',
month11: 'Azaroa',
month12: 'Abendua',
// week: 'astea',
weeks: {
sun: 'ig.',
mon: 'al.',
tue: 'ar.',
wed: 'az.',
thu: 'og.',
fri: 'ol.',
sat: 'lr.'
},
months: {
jan: 'urt',
feb: 'ots',
mar: 'mar',
apr: 'api',
may: 'mai',
jun: 'eka',
jul: 'uzt',
aug: 'abu',
sep: 'ira',
oct: 'urr',
nov: 'aza',
dec: 'abe'
}
},
select: {
loading: 'Kargatzen',
noMatch: 'Bat datorren daturik ez',
noData: 'Daturik ez',
placeholder: 'Hautatu'
},
cascader: {
noMatch: 'Bat datorren daturik ez',
loading: 'Kargatzen',
placeholder: 'Hautatu'
},
pagination: {
goto: 'Joan',
pagesize: '/orria',
total: 'Guztira {total}',
pageClassifier: ''
},
messagebox: {
title: 'Mezua',
confirm: 'Ados',
cancel: 'Utzi',
error: 'Sarrera baliogabea'
},
upload: {
deleteTip: 'sakatu Ezabatu kentzeko',
delete: 'Ezabatu',
preview: 'Aurrebista',
continue: 'Jarraitu'
},
table: {
emptyText: 'Daturik ez',
confirmFilter: 'Baieztatu',
resetFilter: 'Berrezarri',
clearFilter: 'Guztia',
sumText: 'Batura'
},
tree: {
emptyText: 'Daturik ez'
},
transfer: {
noMatch: 'Bat datorren daturik ez',
noData: 'Daturik ez',
titles: ['Zerrenda 1', 'Zerrenda 2'], // to be translated
filterPlaceholder: 'Sartu gako-hitza', // to be translated
noCheckedFormat: '{total} elementu', // to be translated
hasCheckedFormat: '{checked}/{total} hautatuta' // to be translated
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'باشد',
clear: 'حذف'
},
datepicker: {
now: 'اکنون',
today: 'امروز',
cancel: 'لغو',
clear: 'حذف',
confirm: 'باشه',
selectDate: 'انتخاب تاریخ',
selectTime: 'انتخاب زمان',
startDate: 'تاریخ شروع',
startTime: 'زمان شروع',
endDate: 'تاریخ پایان',
endTime: 'زمان پایان',
prevYear: 'سال قبل',
nextYear: 'سال بعد',
prevMonth: 'ماه قبل',
nextMonth: 'ماه بعد',
year: 'سال',
month1: 'ژانویه',
month2: 'فوریه',
month3: 'مارس',
month4: 'آوریل',
month5: 'مه',
month6: 'ژوئن',
month7: 'جولای',
month8: 'اوت',
month9: 'سپتامبر',
month10: 'اکتبر',
month11: 'نوامبر',
month12: 'دسامبر',
// week: 'week',
weeks: {
sun: 'یکشنبه',
mon: 'دوشنبه',
tue: 'سه​شنبه',
wed: 'چهارشنبه',
thu: 'پنج​شنبه',
fri: 'جمعه',
sat: 'شنبه'
},
months: {
jan: 'ژانویه',
feb: 'فوریه',
mar: 'مارس',
apr: 'آوریل',
may: 'مه',
jun: 'ژوئن',
jul: 'جولای',
aug: 'اوت',
sep: 'سپتامبر',
oct: 'اکتبر',
nov: 'نوامبر',
dec: 'دسامبر'
}
},
select: {
loading: 'بارگیری',
noMatch: 'هیچ داده‌ای پیدا نشد',
noData: 'اطلاعاتی وجود ندارد',
placeholder: 'انتخاب کنید'
},
cascader: {
noMatch: 'هیچ داده‌ای پیدا نشد',
loading: 'بارگیری',
placeholder: 'انتخاب کنید'
},
pagination: {
goto: 'برو به',
pagesize: '/صفحه',
total: 'مجموع {total}',
pageClassifier: ''
},
messagebox: {
title: 'پیام',
confirm: 'باشه',
cancel: 'لغو',
error: 'ورودی غیر مجاز'
},
upload: {
deleteTip: 'برای پاک کردن حذف را فشار دهید',
delete: 'حذف',
preview: 'پیش‌نمایش',
continue: 'ادامه'
},
table: {
emptyText: 'اطلاعاتی وجود ندارد',
confirmFilter: 'تایید',
resetFilter: 'حذف',
clearFilter: 'همه',
sumText: 'جمع'
},
tree: {
emptyText: 'اطلاعاتی وجود ندارد'
},
transfer: {
noMatch: 'هیچ داده‌ای پیدا نشد',
noData: 'اطلاعاتی وجود ندارد',
titles: ['لیست 1', 'لیست 2'],
filterPlaceholder: 'کلید واژه هارو وارد کن',
noCheckedFormat: '{total} مورد',
hasCheckedFormat: '{checked} مورد از {total} مورد انتخاب شده است'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Tyhjennä'
},
datepicker: {
now: 'Nyt',
today: 'Tänään',
cancel: 'Peruuta',
clear: 'Tyhjennä',
confirm: 'OK',
selectDate: 'Valitse päivä',
selectTime: 'Valitse aika',
startDate: 'Aloituspäivä',
startTime: 'Aloitusaika',
endDate: 'Lopetuspäivä',
endTime: 'Lopetusaika',
prevYear: 'Edellinen vuosi',
nextYear: 'Seuraava vuosi',
prevMonth: 'Edellinen kuukausi',
nextMonth: 'Seuraava kuukausi',
year: '',
month1: 'tammikuu',
month2: 'helmikuu',
month3: 'maaliskuu',
month4: 'huhtikuu',
month5: 'toukokuu',
month6: 'kesäkuu',
month7: 'heinäkuu',
month8: 'elokuu',
month9: 'syyskuu',
month10: 'lokakuu',
month11: 'marraskuu',
month12: 'joulukuu',
// week: 'week',
weeks: {
sun: 'su',
mon: 'ma',
tue: 'ti',
wed: 'ke',
thu: 'to',
fri: 'pe',
sat: 'la'
},
months: {
jan: 'tammi',
feb: 'helmi',
mar: 'maalis',
apr: 'huhti',
may: 'touko',
jun: 'kesä',
jul: 'heinä',
aug: 'elo',
sep: 'syys',
oct: 'loka',
nov: 'marras',
dec: 'joulu'
}
},
select: {
loading: 'Lataa',
noMatch: 'Ei vastaavia tietoja',
noData: 'Ei tietoja',
placeholder: 'Valitse'
},
cascader: {
noMatch: 'Ei vastaavia tietoja',
loading: 'Lataa',
placeholder: 'Valitse'
},
pagination: {
goto: 'Mene',
pagesize: '/sivu',
total: 'Yhteensä {total}',
pageClassifier: ''
},
messagebox: {
title: 'Viesti',
confirm: 'OK',
cancel: 'Peruuta',
error: 'Virheellinen syöte'
},
upload: {
deleteTip: 'Poista Delete-näppäimellä',
delete: 'Poista',
preview: 'Esikatsele',
continue: 'Jatka'
},
table: {
emptyText: 'Ei tietoja',
confirmFilter: 'Vahvista',
resetFilter: 'Tyhjennä',
clearFilter: 'Kaikki',
sumText: 'Summa'
},
tree: {
emptyText: 'Ei tietoja'
},
transfer: {
noMatch: 'Ei vastaavia tietoja',
noData: 'Ei tietoja',
titles: ['Luettelo 1', 'Luettelo 2'],
filterPlaceholder: 'Syötä hakusana',
noCheckedFormat: '{total} kohdetta',
hasCheckedFormat: '{checked}/{total} valittu'
}
}
};
+111
View File
@@ -0,0 +1,111 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Effacer'
},
datepicker: {
now: 'Maintenant',
today: 'Auj.',
cancel: 'Annuler',
clear: 'Effacer',
confirm: 'OK',
selectDate: 'Choisir date',
selectTime: 'Choisir horaire',
startDate: 'Date début',
startTime: 'Horaire début',
endDate: 'Date fin',
endTime: 'Horaire fin',
prevYear: 'Année précédente',
nextYear: 'Année suivante',
prevMonth: 'Mois précédent',
nextMonth: 'Mois suivant',
year: '', // In french, like in english, we don't say "Année" after the year number.
month1: 'Janvier',
month2: 'Février',
month3: 'Mars',
month4: 'Avril',
month5: 'Mai',
month6: 'Juin',
month7: 'Juillet',
month8: 'Août',
month9: 'Septembre',
month10: 'Octobre',
month11: 'Novembre',
month12: 'Décembre',
// week: 'Semaine',
weeks: {
sun: 'Dim',
mon: 'Lun',
tue: 'Mar',
wed: 'Mer',
thu: 'Jeu',
fri: 'Ven',
sat: 'Sam'
},
months: {
jan: 'Jan',
feb: 'Fév',
mar: 'Mar',
apr: 'Avr',
may: 'Mai',
jun: 'Jun',
jul: 'Jul',
aug: 'Aoû',
sep: 'Sep',
oct: 'Oct',
nov: 'Nov',
dec: 'Déc'
}
},
select: {
loading: 'Chargement',
noMatch: 'Aucune correspondance',
noData: 'Aucune donnée',
placeholder: 'Choisir'
},
cascader: {
noMatch: 'Aucune correspondance',
loading: 'Chargement',
placeholder: 'Choisir'
},
pagination: {
goto: 'Aller à',
pagesize: '/page',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
confirm: 'Confirmer',
cancel: 'Annuler',
error: 'Erreur'
},
upload: {
deleteTip: 'Cliquer sur supprimer pour retirer le fichier',
delete: 'Supprimer',
preview: 'Aperçu',
continue: 'Continuer'
},
table: {
emptyText: 'Aucune donnée',
confirmFilter: 'Confirmer',
resetFilter: 'Réinitialiser',
clearFilter: 'Tous',
sumText: 'Somme'
},
tree: {
emptyText: 'Aucune donnée'
},
transfer: {
noMatch: 'Aucune correspondance',
noData: 'Aucune donnée',
titles: ['Liste 1', 'Liste 2'],
filterPlaceholder: 'Entrer un mot clef',
noCheckedFormat: '{total} elements',
hasCheckedFormat: '{checked}/{total} coché(s)'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'אישור',
clear: 'נקה'
},
datepicker: {
now: 'כעת',
today: 'היום',
cancel: 'בטל',
clear: 'נקה',
confirm: 'אישור',
selectDate: 'בחר תאריך',
selectTime: 'בחר זמן',
startDate: 'תאריך התחלה',
startTime: 'זמן התחלה',
endDate: 'תאריך סיום',
endTime: 'זמן סיום',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: '',
month1: 'ינואר',
month2: 'פברואר',
month3: 'מרץ',
month4: 'אפריל',
month5: 'מאי',
month6: 'יוני',
month7: 'יולי',
month8: 'אוגוסט',
month9: 'ספטמבר',
month10: 'אוקטובר',
month11: 'נובמבר',
month12: 'דצמבר',
// week: 'week',
weeks: {
sun: 'א׳',
mon: 'ב׳',
tue: 'ג׳',
wed: 'ד׳',
thu: 'ה׳',
fri: 'ו׳',
sat: 'שבת'
},
months: {
jan: 'ינואר',
feb: 'פברואר',
mar: 'מרץ',
apr: 'אפריל',
may: 'מאי',
jun: 'יוני',
jul: 'יולי',
aug: 'אוגוסט',
sep: 'ספטמבר',
oct: 'אוקטובר',
nov: 'נובמבר',
dec: 'דצמבר'
}
},
select: {
loading: 'טוען',
noMatch: 'לא נמצאו נתונים',
noData: 'ללא נתונים',
placeholder: 'בחר'
},
cascader: {
noMatch: 'ללא נתונים מתאימים',
loading: 'טוען',
placeholder: 'בחר'
},
pagination: {
goto: 'עבור ל',
pagesize: '/page',
total: 'כולל {total}',
pageClassifier: ''
},
messagebox: {
title: 'הודעה',
confirm: 'אישור',
cancel: 'בטל',
error: 'קלט לא תקין'
},
upload: {
deleteTip: 'press delete to remove', // to be translated
delete: 'מחק',
preview: 'תצוגה מקדימה',
continue: 'המשך'
},
table: {
emptyText: 'אין נתונים',
confirmFilter: 'אישור',
resetFilter: 'נקה',
clearFilter: 'הכל',
sumText: 'סך'
},
tree: {
emptyText: 'אין נתונים'
},
transfer: {
noMatch: 'אין נתונים מתאימים',
noData: 'ללא נתונים',
titles: ['רשימה 1', 'רשימה 2'],
filterPlaceholder: 'הקלד',
noCheckedFormat: 'פריטים {total}',
hasCheckedFormat: ' אישור {checked}/{total}'
}
}
};
+111
View File
@@ -0,0 +1,111 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Törlés'
},
datepicker: {
now: 'Most',
today: 'Ma',
cancel: 'Mégse',
clear: 'Törlés',
confirm: 'OK',
selectDate: 'Dátum',
selectTime: 'Időpont',
startDate: 'Dátum-tól',
startTime: 'Időpont-tól',
endDate: 'Dátum-ig',
endTime: 'Időpont-ig',
prevYear: 'Előző év',
nextYear: 'Következő év',
prevMonth: 'Előző hónap',
nextMonth: 'Következő hónap',
year: '',
month1: 'Január',
month2: 'Február',
month3: 'Március',
month4: 'Április',
month5: 'Május',
month6: 'Június',
month7: 'Július',
month8: 'Augusztus',
month9: 'Szeptember',
month10: 'Október',
month11: 'November',
month12: 'December',
weeks: {
sun: 'Vas',
mon: 'Hét',
tue: 'Ked',
wed: 'Sze',
thu: 'Csü',
fri: 'Pén',
sat: 'Szo'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Már',
apr: 'Ápr',
may: 'Máj',
jun: 'Jún',
jul: 'Júl',
aug: 'Aug',
sep: 'Szep',
oct: 'Okt',
nov: 'Nov',
dec: 'Dec'
}
},
select: {
loading: 'Betöltés',
noMatch: 'Nincs találat',
noData: 'Nincs adat',
placeholder: 'Válassz'
},
cascader: {
noMatch: 'Nincs találat',
loading: 'Betöltés',
placeholder: 'Válassz'
},
pagination: {
goto: 'Ugrás',
pagesize: '/oldal',
total: 'Össz {total}',
pageClassifier: ''
},
messagebox: {
title: 'Üzenet',
confirm: 'OK',
cancel: 'Mégse',
error: 'Hibás adat'
},
upload: {
deleteTip: 'kattints a törléshez',
delete: 'Törlés',
preview: 'Előnézet',
continue: 'Tovább'
},
table: {
emptyText: 'Nincs adat',
confirmFilter: 'Megerősít',
resetFilter: 'Alaphelyet',
clearFilter: 'Mind',
sumText: 'Összeg'
},
tree: {
emptyText: 'Nincs adat'
},
transfer: {
noMatch: 'Nincs találat',
noData: 'Nincs adat',
titles: ['Lista 1', 'Lista 2'],
filterPlaceholder: 'Kulcsszó',
noCheckedFormat: '{total} elem',
hasCheckedFormat: '{checked}/{total} kiválasztva'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Լաւ',
clear: 'Մաքրել'
},
datepicker: {
now: 'Հիմա',
today: 'Այսօր',
cancel: 'Չեղարկել',
clear: 'Մաքրել',
confirm: 'Լաւ',
selectDate: 'Ընտրեք ամսաթիւը',
selectTime: 'Ընտրեք ժամանակը',
startDate: 'Սկզբ. ամսաթիւը',
startTime: 'Սկզբ. ժամանակը',
endDate: 'Վերջ. ամսաթիվը',
endTime: 'Վերջ. ժամանակը',
prevYear: 'Նախորդ տարի',
nextYear: 'Յաջորդ տարի',
prevMonth: 'Նախորդ ամիս',
nextMonth: 'Յաջորդ ամիս',
year: 'Տարի',
month1: 'Յունուար',
month2: 'Փետրուար',
month3: 'Մարտ',
month4: 'Ապրիլ',
month5: 'Մայիս',
month6: 'Յունիս',
month7: 'Յուլիս',
month8: 'Օգոստոս',
month9: 'Սեպտեմբեր',
month10: 'Յոկտեմբեր',
month11: 'Նոյեմբեր',
month12: 'Դեկտեմբեր',
week: 'Շաբաթ',
weeks: {
sun: 'Կիր',
mon: 'Երկ',
tue: 'Եր',
wed: 'Չոր',
thu: 'Հինգ',
fri: 'Ուրբ',
sat: 'Շաբ'
},
months: {
jan: 'Յունվ',
feb: 'Փետ',
mar: 'Մար',
apr: 'Ապր',
may: 'Մայ',
jun: 'Յուն',
jul: 'Յուլ',
aug: 'Օգ',
sep: 'Սեպտ',
oct: 'Յոկ',
nov: 'Նոյ',
dec: 'Դեկ'
}
},
select: {
loading: 'Բեռնում',
noMatch: 'Համապատասխան տուեալներ չկան',
noData: 'Տվյալներ չկան',
placeholder: 'Ընտրել'
},
cascader: {
noMatch: 'Համապատասխան տուեալներ չկան',
loading: 'Բեռնում',
placeholder: 'Ընտրել'
},
pagination: {
goto: 'Անցնել',
pagesize: ' էջում',
total: 'Ընդամենը {total}',
pageClassifier: ''
},
messagebox: {
title: 'Հաղորդագրութիւն',
confirm: 'Լաւ',
cancel: 'Չեղարկել',
error: 'Անվաւեր տուեալների մուտք'
},
upload: {
deleteTip: 'Սեղմեք [Ջնջել] ջնջելու համար',
delete: 'Ջնջել',
preview: 'Նախադիտում',
continue: 'Շարունակել'
},
table: {
emptyText: 'Տուեալներ չկան',
confirmFilter: 'Յաստատել',
resetFilter: 'Վերագործարկել',
clearFilter: 'Բոլորը',
sumText: 'Գումարը'
},
tree: {
emptyText: 'Տուեալներ չկան'
},
transfer: {
noMatch: 'Համապատասխան տուեալներ չկան',
noData: 'Տուեալներ չկան',
titles: ['Ցուցակ 1', 'Ցուցակ 2'],
filterPlaceholder: 'Մուտքագրեք բանալի բառ',
noCheckedFormat: '{total} միաւոր',
hasCheckedFormat: '{checked}/{total} ընտրուած է'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Pilih',
clear: 'Kosongkan'
},
datepicker: {
now: 'Sekarang',
today: 'Hari ini',
cancel: 'Batal',
clear: 'Kosongkan',
confirm: 'Ya',
selectDate: 'Pilih tanggal',
selectTime: 'Pilih waktu',
startDate: 'Tanggal Mulai',
startTime: 'Waktu Mulai',
endDate: 'Tanggal Selesai',
endTime: 'Waktu Selesai',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: 'Tahun',
month1: 'Januari',
month2: 'Februari',
month3: 'Maret',
month4: 'April',
month5: 'Mei',
month6: 'Juni',
month7: 'Juli',
month8: 'Agustus',
month9: 'September',
month10: 'Oktober',
month11: 'November',
month12: 'Desember',
// week: 'minggu',
weeks: {
sun: 'Min',
mon: 'Sen',
tue: 'Sel',
wed: 'Rab',
thu: 'Kam',
fri: 'Jum',
sat: 'Sab'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Mar',
apr: 'Apr',
may: 'Mei',
jun: 'Jun',
jul: 'Jul',
aug: 'Agu',
sep: 'Sep',
oct: 'Okt',
nov: 'Nov',
dec: 'Des'
}
},
select: {
loading: 'Memuat',
noMatch: 'Tidak ada data yg cocok',
noData: 'Tidak ada data',
placeholder: 'Pilih'
},
cascader: {
noMatch: 'Tidak ada data yg cocok',
loading: 'Memuat',
placeholder: 'Pilih'
},
pagination: {
goto: 'Pergi ke',
pagesize: '/laman',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
title: 'Pesan',
confirm: 'Ya',
cancel: 'Batal',
error: 'Masukan ilegal'
},
upload: {
deleteTip: 'press delete to remove', // to be translated
delete: 'Hapus',
preview: 'Pratinjau',
continue: 'Lanjutkan'
},
table: {
emptyText: 'Tidak ada data',
confirmFilter: 'Konfirmasi',
resetFilter: 'Atur ulang',
clearFilter: 'Semua',
sumText: 'Jml'
},
tree: {
emptyText: 'Tidak ada data'
},
transfer: {
noMatch: 'Tidak ada data yg cocok',
noData: 'Tidak ada data',
titles: ['Senarai 1', 'Senarai 2'],
filterPlaceholder: 'Masukan kata kunci',
noCheckedFormat: '{total} butir',
hasCheckedFormat: '{checked}/{total} terpilih'
}
}
};
+111
View File
@@ -0,0 +1,111 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Pulisci'
},
datepicker: {
now: 'Ora',
today: 'Oggi',
cancel: 'Cancella',
clear: 'Pulisci',
confirm: 'OK',
selectDate: 'Seleziona data',
selectTime: 'Seleziona ora',
startDate: 'Data inizio',
startTime: 'Ora inizio',
endDate: 'Data fine',
endTime: 'Ora fine',
prevYear: 'Anno precedente',
nextYear: 'Anno successivo',
prevMonth: 'Mese precedente',
nextMonth: 'Mese successivo',
year: '',
month1: 'Gennaio',
month2: 'Febbraio',
month3: 'Marzo',
month4: 'Aprile',
month5: 'Maggio',
month6: 'Giugno',
month7: 'Luglio',
month8: 'Agosto',
month9: 'Settembre',
month10: 'Ottobre',
month11: 'Novembre',
month12: 'Dicembre',
// week: 'settimana',
weeks: {
sun: 'Dom',
mon: 'Lun',
tue: 'Mar',
wed: 'Mer',
thu: 'Gio',
fri: 'Ven',
sat: 'Sab'
},
months: {
jan: 'Gen',
feb: 'Feb',
mar: 'Mar',
apr: 'Apr',
may: 'Mag',
jun: 'Giu',
jul: 'Lug',
aug: 'Ago',
sep: 'Set',
oct: 'Ott',
nov: 'Nov',
dec: 'Dic'
}
},
select: {
loading: 'Caricamento',
noMatch: 'Nessuna corrispondenza',
noData: 'Nessun dato',
placeholder: 'Seleziona'
},
cascader: {
noMatch: 'Nessuna corrispondenza',
loading: 'Caricamento',
placeholder: 'Seleziona'
},
pagination: {
goto: 'Vai a',
pagesize: '/page',
total: 'Totale {total}',
pageClassifier: ''
},
messagebox: {
confirm: 'OK',
cancel: 'Cancella',
error: 'Input non valido'
},
upload: {
deleteTip: 'Premi cancella per rimuovere',
delete: 'Cancella',
preview: 'Anteprima',
continue: 'Continua'
},
table: {
emptyText: 'Nessun dato',
confirmFilter: 'Conferma',
resetFilter: 'Reset',
clearFilter: 'Tutti',
sumText: 'Somma'
},
tree: {
emptyText: 'Nessun dato'
},
transfer: {
noMatch: 'Nessuna corrispondenza',
noData: 'Nessun dato',
titles: ['Lista 1', 'Lista 2'],
filterPlaceholder: 'Inserisci filtro',
noCheckedFormat: '{total} elementi',
hasCheckedFormat: '{checked}/{total} selezionati'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'クリア'
},
datepicker: {
now: '現在',
today: '今日',
cancel: 'キャンセル',
clear: 'クリア',
confirm: 'OK',
selectDate: '日付を選択',
selectTime: '時間を選択',
startDate: '開始日',
startTime: '開始時間',
endDate: '終了日',
endTime: '終了時間',
prevYear: '前年',
nextYear: '翌年',
prevMonth: '前月',
nextMonth: '翌月',
year: '年',
month1: '1月',
month2: '2月',
month3: '3月',
month4: '4月',
month5: '5月',
month6: '6月',
month7: '7月',
month8: '8月',
month9: '9月',
month10: '10月',
month11: '11月',
month12: '12月',
// week: '週次',
weeks: {
sun: '日',
mon: '月',
tue: '火',
wed: '水',
thu: '木',
fri: '金',
sat: '土'
},
months: {
jan: '1月',
feb: '2月',
mar: '3月',
apr: '4月',
may: '5月',
jun: '6月',
jul: '7月',
aug: '8月',
sep: '9月',
oct: '10月',
nov: '11月',
dec: '12月'
}
},
select: {
loading: 'ロード中',
noMatch: 'データなし',
noData: 'データなし',
placeholder: '選択してください'
},
cascader: {
noMatch: 'データなし',
loading: 'ロード中',
placeholder: '選択してください'
},
pagination: {
goto: '',
pagesize: '件/ページ',
total: '総計 {total} 件',
pageClassifier: 'ページ目へ'
},
messagebox: {
title: 'メッセージ',
confirm: 'OK',
cancel: 'キャンセル',
error: '正しくない入力'
},
upload: {
deleteTip: 'Delキーを押して削除する',
delete: '削除する',
preview: 'プレビュー',
continue: '続行する'
},
table: {
emptyText: 'データなし',
confirmFilter: '確認',
resetFilter: '初期化',
clearFilter: 'すべて',
sumText: '合計'
},
tree: {
emptyText: 'データなし'
},
transfer: {
noMatch: 'データなし',
noData: 'データなし',
titles: ['リスト 1', 'リスト 2'],
filterPlaceholder: 'キーワードを入力',
noCheckedFormat: '総計 {total} 件',
hasCheckedFormat: '{checked}/{total} を選択した'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Мурунку',
clear: 'ачык'
},
datepicker: {
now: 'азыр',
today: 'бүгүн',
cancel: 'жокко чыгарылды',
clear: 'ачык',
confirm: 'белгилөө',
selectDate: 'дата',
selectTime: 'тандоо убактысы',
startDate: 'Башталган датасы',
startTime: 'Start убакыт',
endDate: 'Бүткөн датасы',
endTime: 'End убакыт',
prevYear: 'өткөн жылы',
nextYear: 'бир жылдан кийин',
prevMonth: 'Өткөн айда',
nextMonth: 'Кийинки ай',
year: 'жыл',
month1: 'биринчи ай',
month2: 'Экинчи айда',
month3: 'Үчүнчү айда',
month4: 'Төртүнчү айда',
month5: 'бешинчи айда',
month6: 'Алгачкы алты ай',
month7: 'жетинчи айда',
month8: 'сегизинчи ай',
month9: 'Алгачкы тогуз ай',
month10: 'онунчу айда',
month11: 'он биринчи ай',
month12: 'он экинчи айда',
// week: '周次',
weeks: {
sun: 'жети жума',
mon: 'дүйшөмбү',
tue: 'шейшемби',
wed: 'шаршемби',
thu: 'бейшемби',
fri: 'жума',
sat: 'ишемби'
},
months: {
jan: 'биринчи ай',
feb: 'Экинчи айда',
mar: 'Үчүнчү айда',
apr: 'Төртүнчү айда',
may: 'бешинчи айда',
jun: 'Алгачкы алты ай',
jul: 'жетинчи айда',
aug: 'сегизинчи ай',
sep: 'Алгачкы тогуз ай',
oct: 'онунчу айда',
nov: 'он биринчи ай',
dec: 'он экинчи айда'
}
},
select: {
loading: 'Жүктөлүүдө',
noMatch: 'Дал келген маалыматтар',
noData: 'маалымат жок',
placeholder: 'тандоо'
},
cascader: {
noMatch: 'Дал келген маалыматтар',
loading: 'Жүктөлүүдө',
placeholder: 'тандоо'
},
pagination: {
goto: 'Мурунку',
pagesize: 'бир',
total: 'бүтүндөй {total} сан ',
pageClassifier: 'бет'
},
messagebox: {
title: 'тез',
confirm: 'белгилөө',
cancel: 'жокко чыгарылды',
error: 'Маалыматтарды киргизүү мыйзамдуу эмес!'
},
upload: {
deleteTip: 'Жок кылуу баскычын басуу жок',
delete: 'жок кылуу',
preview: 'ЖМКнын картинки',
continue: 'жүктөп бер'
},
table: {
emptyText: 'маалымат жок',
confirmFilter: 'чыпка',
resetFilter: 'кайра орнотуу',
clearFilter: 'бүткөн',
sumText: 'Бардыгы болуп'
},
tree: {
emptyText: 'маалымат жок'
},
transfer: {
noMatch: 'Дал келген маалыматтар',
noData: 'маалымат жок',
titles: ['1 тизмеси', '2 тизмеси'],
filterPlaceholder: 'Сураныч, издөө кирет',
noCheckedFormat: 'бүтүндөй {total} сан',
hasCheckedFormat: 'Тандалган {checked}/{total} сан'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'យល់ព្រម',
clear: 'លុប'
},
datepicker: {
now: 'ឥឡូវ​នេះ',
today: 'ថ្ងៃនេះ',
cancel: 'បោះបង់',
clear: 'លុប',
confirm: 'យល់ព្រម',
selectDate: 'ជ្រើសរើសថ្ងៃ',
selectTime: 'ជ្រើសរើសម៉ោង',
startDate: 'ថ្ងៃចាប់ផ្តើម',
startTime: 'ម៉ោងចាប់ផ្តើម',
endDate: 'ថ្ងៃបញ្ចប់',
endTime: 'ម៉ោងបញ្ចប់',
prevYear: 'ឆ្នាំមុន',
nextYear: 'ឆ្នាំក្រោយ',
prevMonth: 'ខែមុន',
nextMonth: 'ខែក្រោយ',
year: 'ឆ្នាំ',
month1: 'មករា',
month2: 'កុម្ភៈ',
month3: 'មីនា',
month4: 'មេសា',
month5: 'ឧសភា',
month6: 'មិថុនា',
month7: 'កក្កដា',
month8: 'សីហា',
month9: 'កញ្ញា',
month10: 'តុលា',
month11: 'វិច្ឆកា',
month12: 'ធ្នូ',
// week: 'week',
weeks: {
sun: 'អាទិត្យ',
mon: 'Mon',
tue: 'អង្គារ',
wed: 'ពុធ',
thu: 'ព្រ.ហ',
fri: 'សុក្រ',
sat: 'សៅរ៏'
},
months: {
jan: 'មករា',
feb: 'កុម្ភៈ',
mar: 'មីនា',
apr: 'មេសា',
may: 'ឧសភា',
jun: 'មិថុនា',
jul: 'កក្កដា',
aug: 'សីហា',
sep: 'កញ្ញា',
oct: 'តុលា',
nov: 'វិច្ឆកា',
dec: 'ធ្នូ'
}
},
select: {
loading: 'កំពុងផ្ទុក',
noMatch: 'គ្មានទិន្ន័យដូច',
noData: 'គ្មានទិន្ន័យ',
placeholder: 'ជ្រើសរើស'
},
cascader: {
noMatch: 'គ្មានទិន្ន័យដូច',
loading: 'កំពុងផ្ទុក',
placeholder: 'ជ្រើសរើស'
},
pagination: {
goto: 'ទៅកាន់',
pagesize: '/ទំព័រ',
total: 'សរុប {total}',
pageClassifier: ''
},
messagebox: {
title: 'សារ',
confirm: 'យល់ព្រម',
cancel: 'បោះបង់',
error: 'ការបញ្ចូលមិនអនុញ្ញាត'
},
upload: {
deleteTip: 'ចុចលុបដើម្បីដកចេញ',
delete: 'លុប',
preview: 'មើល',
continue: 'បន្ត'
},
table: {
emptyText: 'គ្មានទិន្ន័យ',
confirmFilter: 'យល់ព្រម',
resetFilter: 'កំណត់ឡើងវិញ',
clearFilter: 'ទាំងអស់',
sumText: 'បូក'
},
tree: {
emptyText: 'គ្មានទិន្ន័យ'
},
transfer: {
noMatch: 'គ្មានទិន្ន័យដូច',
noData: 'គ្មានទិន្ន័យ',
titles: ['បញ្ជី ១', 'បញ្ជី ២'],
filterPlaceholder: 'បញ្ចូលពាក្យ',
noCheckedFormat: '{total} ធាតុ',
hasCheckedFormat: '{checked}/{total} បានគូសធីក'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: '확인',
clear: '초기화'
},
datepicker: {
now: '지금',
today: '오늘',
cancel: '취소',
clear: '초기화',
confirm: '확인',
selectDate: '날짜 선택',
selectTime: '시간 선택',
startDate: '시작 날짜',
startTime: '시작 시간',
endDate: '종료 날짜',
endTime: '종료 시간',
prevYear: '지난해',
nextYear: '다음해',
prevMonth: '지난달',
nextMonth: '다음달',
year: '년',
month1: '1월',
month2: '2월',
month3: '3월',
month4: '4월',
month5: '5월',
month6: '6월',
month7: '7월',
month8: '8월',
month9: '9월',
month10: '10월',
month11: '11월',
month12: '12월',
// week: 'week',
weeks: {
sun: '일',
mon: '월',
tue: '화',
wed: '수',
thu: '목',
fri: '금',
sat: '토'
},
months: {
jan: '1월',
feb: '2월',
mar: '3월',
apr: '4월',
may: '5월',
jun: '6월',
jul: '7월',
aug: '8월',
sep: '9월',
oct: '10월',
nov: '11월',
dec: '12월'
}
},
select: {
loading: '불러오는 중',
noMatch: '맞는 데이터가 없습니다',
noData: '데이터 없음',
placeholder: '선택'
},
cascader: {
noMatch: '맞는 데이터가 없습니다',
loading: '불러오는 중',
placeholder: '선택'
},
pagination: {
goto: '이동',
pagesize: '/page',
total: '총 {total}',
pageClassifier: ''
},
messagebox: {
title: '메시지',
confirm: '확인',
cancel: '취소',
error: '올바르지 않은 입력'
},
upload: {
deleteTip: '클릭시 삭제됩니다',
delete: '삭제',
preview: '미리보기',
continue: '계속하기'
},
table: {
emptyText: '데이터 없음',
confirmFilter: '확인',
resetFilter: '초기화',
clearFilter: '전체',
sumText: '합'
},
tree: {
emptyText: '데이터 없음'
},
transfer: {
noMatch: '맞는 데이터가 없습니다',
noData: '데이터 없음',
titles: ['리스트 1', '리스트 2'],
filterPlaceholder: ' 입력하세요',
noCheckedFormat: '{total} 항목',
hasCheckedFormat: '{checked}/{total} 선택됨'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Temam',
clear: 'Paqij bike'
},
datepicker: {
now: 'Niha',
today: 'Îro',
cancel: 'Betal bike',
clear: 'Paqij bike',
confirm: 'Temam',
selectDate: 'Dîrokê bibijêre',
selectTime: 'Demê bibijêre',
startDate: 'Dîroka Destpêkê',
startTime: 'Dema Destpêkê',
endDate: 'Dîroka Dawî',
endTime: 'Dema Dawî',
prevYear: 'Sala Pêş',
nextYear: 'Sala Paş',
prevMonth: 'Meha Pêş',
nextMonth: 'Meha Paş',
year: 'Sal',
month1: 'Rêbendan',
month2: 'Reşemeh',
month3: 'Adar',
month4: 'Avrêl',
month5: 'Gulan',
month6: 'Pûşber',
month7: 'Tîrmeh',
month8: 'Gilavêj',
month9: 'Rezber',
month10: 'Kewçêr',
month11: 'Sarmawaz',
month12: 'Berfanbar',
// week: 'week',
weeks: {
sun: 'Yek',
mon: 'Duş',
tue: 'Sêş',
wed: 'Çar',
thu: 'Pên',
fri: 'În',
sat: 'Şem'
},
months: {
jan: 'Rêb',
feb: 'Reş',
mar: 'Ada',
apr: 'Avr',
may: 'Gul',
jun: 'Pûş',
jul: 'Tîr',
aug: 'Gil',
sep: 'Rez',
oct: 'Kew',
nov: 'Sar',
dec: 'Ber'
}
},
select: {
loading: 'Bardibe',
noMatch: 'Li hembere ve agahî tune',
noData: 'Agahî tune',
placeholder: 'Bibijêre'
},
cascader: {
noMatch: 'Li hembere ve agahî tune',
loading: 'Bardibe',
placeholder: 'Bibijêre'
},
pagination: {
goto: 'Biçe',
pagesize: '/rupel',
total: 'Tevahî {total}',
pageClassifier: ''
},
messagebox: {
title: 'Peyam',
confirm: 'Temam',
cancel: 'Betal bike',
error: 'Beyana çewt'
},
upload: {
deleteTip: 'ji bo rake pêl "delete" bike',
delete: 'Rake',
preview: 'Pêşdîtin',
continue: 'Berdewam'
},
table: {
emptyText: 'Agahî tune',
confirmFilter: 'Piştrast bike',
resetFilter: 'Jê bibe',
clearFilter: 'Hemû',
sumText: 'Kom'
},
tree: {
emptyText: 'Agahî tune'
},
transfer: {
noMatch: 'Li hembere ve agahî tune',
noData: 'Agahî tune',
titles: ['Lîste 1', 'Lîste 2'],
filterPlaceholder: 'Binivîse',
noCheckedFormat: '{total} lib',
hasCheckedFormat: '{checked}/{total} bijartin'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Қабылдау',
clear: 'Тазалау'
},
datepicker: {
now: 'Қазір',
today: 'Бүгін',
cancel: 'Болдырмау',
clear: 'Тазалау',
confirm: 'Қабылдау',
selectDate: 'Күнді таңдаңыз',
selectTime: 'Сағатты таңдаңыз',
startDate: 'Басталу күні',
startTime: 'Басталу сағаты',
endDate: 'Аяқталу күні',
endTime: 'Аяқталу сағаты',
prevYear: 'Алдыңғы жыл',
nextYear: 'Келесі жыл',
prevMonth: 'Алдыңғы ай',
nextMonth: 'Келесі ай',
year: 'Жыл',
month1: 'Қаңтар',
month2: 'Ақпан',
month3: 'Наурыз',
month4: 'Сәуір',
month5: 'Мамыр',
month6: 'Маусым',
month7: 'Шілде',
month8: 'Тамыз',
month9: 'Қыркүйек',
month10: 'Қазан',
month11: 'Қараша',
month12: 'Желтоқсан',
week: 'Апта',
weeks: {
sun: 'Жек',
mon: 'Дүй',
tue: 'Сей',
wed: 'Сәр',
thu: 'Бей',
fri: 'Жұм',
sat: 'Сен'
},
months: {
jan: 'Қаң',
feb: 'Ақп',
mar: 'Нау',
apr: 'Сәу',
may: 'Мам',
jun: 'Мау',
jul: 'Шіл',
aug: 'Там',
sep: 'Қыр',
oct: 'Қаз',
nov: 'Қар',
dec: 'Жел'
}
},
select: {
loading: 'Жүктелуде',
noMatch: 'Сәйкес деректер жоқ',
noData: 'Деректер жоқ',
placeholder: 'Таңдаңыз'
},
cascader: {
noMatch: 'Сәйкес деректер жоқ',
loading: 'Жүктелуде',
placeholder: 'Таңдаңыз'
},
pagination: {
goto: 'Бару',
pagesize: '/page',
total: 'Барлығы {total}',
pageClassifier: ''
},
messagebox: {
title: 'Хабар',
confirm: 'Қабылдау',
cancel: 'Болдырмау',
error: 'Жарамсыз енгізулер'
},
upload: {
deleteTip: 'Өшіруді басып өшіріңіз',
delete: 'Өшіру',
preview: 'Алдын ала қарау',
continue: 'Жалғастыру'
},
table: {
emptyText: 'Деректер жоқ',
confirmFilter: 'Қабылдау',
resetFilter: 'Қалпына келтіру',
clearFilter: 'Барлығы',
sumText: 'Сомасы'
},
tree: {
emptyText: 'Деректер жоқ'
},
transfer: {
noMatch: 'Сәйкес деректер жоқ',
noData: 'Деректер жоқ',
titles: ['List 1', 'List 2'],
filterPlaceholder: 'Кілт сөзді енгізіңіз',
noCheckedFormat: '{total} элэмэнт',
hasCheckedFormat: '{checked}/{total} құсбелгісі қойылды'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Valyti'
},
datepicker: {
now: 'Dabar',
today: 'Šiandien',
cancel: 'Atšaukti',
clear: 'Valyti',
confirm: 'OK',
selectDate: 'Pasirink datą',
selectTime: 'Pasirink laiką',
startDate: 'Data nuo',
startTime: 'Laikas nuo',
endDate: 'Data iki',
endTime: 'Laikas iki',
prevYear: 'Metai atgal',
nextYear: 'Metai į priekį',
prevMonth: 'Mėn. atgal',
nextMonth: 'Mėn. į priekį',
year: '',
month1: 'Sausis',
month2: 'Vasaris',
month3: 'Kovas',
month4: 'Balandis',
month5: 'Gegužė',
month6: 'Birželis',
month7: 'Liepa',
month8: 'Rugpjūtis',
month9: 'Rugsėjis',
month10: 'Spalis',
month11: 'Lapkritis',
month12: 'Gruodis',
// week: 'savaitė',
weeks: {
sun: 'S.',
mon: 'Pr.',
tue: 'A.',
wed: 'T.',
thu: 'K.',
fri: 'Pn.',
sat: 'Š.'
},
months: {
jan: 'Sau',
feb: 'Vas',
mar: 'Kov',
apr: 'Bal',
may: 'Geg',
jun: 'Bir',
jul: 'Lie',
aug: 'Rugp',
sep: 'Rugs',
oct: 'Spa',
nov: 'Lap',
dec: 'Gruo'
}
},
select: {
loading: 'Kraunasi',
noMatch: 'Duomenų nerasta',
noData: 'Nėra duomenų',
placeholder: 'Pasirink'
},
cascader: {
noMatch: 'Duomenų nerasta',
loading: 'Kraunasi',
placeholder: 'Pasirink'
},
pagination: {
goto: 'Eiti į',
pagesize: '/p',
total: 'Viso {total}',
pageClassifier: ''
},
messagebox: {
title: 'Žinutė',
confirm: 'OK',
cancel: 'Atšaukti',
error: 'Klaida įvestuose duomenyse'
},
upload: {
deleteTip: 'spauskite "Trinti" norėdami pašalinti',
delete: 'Trinti',
preview: 'Peržiūrėti',
continue: 'Toliau'
},
table: {
emptyText: 'Duomenų nerasta',
confirmFilter: 'Patvirtinti',
resetFilter: 'Atstatyti',
clearFilter: 'Išvalyti',
sumText: 'Suma'
},
tree: {
emptyText: 'Nėra duomenų'
},
transfer: {
noMatch: 'Duomenų nerasta',
noData: 'Nėra duomenų',
titles: ['Sąrašas 1', 'Sąrašas 2'],
filterPlaceholder: 'Įvesk raktažodį',
noCheckedFormat: 'Viso: {total}',
hasCheckedFormat: 'Pažymėta {checked} iš {total}'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Labi',
clear: 'Notīrīt'
},
datepicker: {
now: 'Tagad',
today: 'Šodien',
cancel: 'Atcelt',
clear: 'Notīrīt',
confirm: 'Labi',
selectDate: 'Izvēlēties datumu',
selectTime: 'Izvēlēties laiku',
startDate: 'Sākuma datums',
startTime: 'Sākuma laiks',
endDate: 'Beigu datums',
endTime: 'Beigu laiks',
prevYear: 'Iepriekšējais gads',
nextYear: 'Nākamais gads',
prevMonth: 'Iepriekšējais mēnesis',
nextMonth: 'Nākamais mēnesis',
year: '',
month1: 'Janvāris',
month2: 'Februāris',
month3: 'Marts',
month4: 'Aprīlis',
month5: 'Maijs',
month6: 'Jūnijs',
month7: 'Jūlijs',
month8: 'Augusts',
month9: 'Septembris',
month10: 'Oktobris',
month11: 'Novembris',
month12: 'Decembris',
// week: 'nedēļa',
weeks: {
sun: 'Sv',
mon: 'Pr',
tue: 'Ot',
wed: 'Tr',
thu: 'Ce',
fri: 'Pk',
sat: 'Se'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Mar',
apr: 'Apr',
may: 'Mai',
jun: 'Jūn',
jul: 'Jūl',
aug: 'Aug',
sep: 'Sep',
oct: 'Okt',
nov: 'Nov',
dec: 'Dec'
}
},
select: {
loading: 'Ielādē',
noMatch: 'Nav atbilstošu datu',
noData: 'Nav datu',
placeholder: 'Izvēlēties'
},
cascader: {
noMatch: 'Nav atbilstošu datu',
loading: 'Ielādē',
placeholder: 'Izvēlēties'
},
pagination: {
goto: 'Iet uz',
pagesize: '/lapa',
total: 'Kopā {total}',
pageClassifier: ''
},
messagebox: {
title: 'Paziņojums',
confirm: 'Labi',
cancel: 'Atcelt',
error: 'Nederīga ievade'
},
upload: {
deleteTip: 'Nospiediet dzēst lai izņemtu',
delete: 'Dzēst',
preview: 'Priekšskatīt',
continue: 'Turpināt'
},
table: {
emptyText: 'Nav datu',
confirmFilter: 'Apstiprināt',
resetFilter: 'Atiestatīt',
clearFilter: 'Visi',
sumText: 'Summa'
},
tree: {
emptyText: 'Nav datu'
},
transfer: {
noMatch: 'Nav atbilstošu datu',
noData: 'Nav datu',
titles: ['Saraksts 1', 'Saraksts 2'],
filterPlaceholder: 'Ievadīt atslēgvārdu',
noCheckedFormat: '{total} vienības',
hasCheckedFormat: '{checked}/{total} atzīmēti'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Тийм',
clear: 'Цэвэрлэх'
},
datepicker: {
now: 'Одоо',
today: 'Өнөөдөр',
cancel: 'Болих',
clear: 'Цэвэрлэх',
confirm: 'Тийм',
selectDate: 'Огноог сонго',
selectTime: 'Цагийг сонго',
startDate: 'Эхлэх огноо',
startTime: 'Эхлэх цаг',
endDate: 'Дуусах огноо',
endTime: 'Дуусах цаг',
prevYear: 'Өмнөх жил',
nextYear: 'Дараа жил',
prevMonth: 'Өмнөх сар',
nextMonth: 'Дараа сар',
year: 'он',
month1: '1 сар',
month2: '2 сар',
month3: '3 сар',
month4: '4 сар',
month5: '5 сар',
month6: '6 сар',
month7: '7 сар',
month8: '8 сар',
month9: '9 сар',
month10: '10 сар',
month11: '11 сар',
month12: '12 сар',
week: 'Долоо хоног',
weeks: {
sun: 'Ням',
mon: 'Дав',
tue: 'Мяг',
wed: 'Лха',
thu: 'Пүр',
fri: 'Баа',
sat: 'Бям'
},
months: {
jan: '1 сар',
feb: '2 сар',
mar: '3 сар',
apr: '4 сар',
may: '5 сар',
jun: '6 сар',
jul: '7 сар',
aug: '8 сар',
sep: '9 сар',
oct: '10 сар',
nov: '11 сар',
dec: '12 сар'
}
},
select: {
loading: 'Ачаалж байна',
noMatch: 'Тохирох өгөгдөл байхгүй',
noData: 'Өгөгдөл байхгүй',
placeholder: 'Сонгох'
},
cascader: {
noMatch: 'Тохирох өгөгдөл байхгүй',
loading: 'Ачаалж байна',
placeholder: 'Сонгох'
},
pagination: {
goto: 'Очих',
pagesize: '/хуудас',
total: 'Нийт {total}',
pageClassifier: ''
},
messagebox: {
title: 'Зурвас',
confirm: 'Тийм',
cancel: 'Болих',
error: 'Буруу утга'
},
upload: {
deleteTip: 'Устгахын дарж арилга',
delete: 'Устгах',
preview: 'Өмнөх',
continue: 'Үргэлжлүүлэх'
},
table: {
emptyText: 'Өгөгдөл байхгүй',
confirmFilter: 'Зөвшөөрөх',
resetFilter: 'Цэвэрлэх',
clearFilter: 'Бүгд',
sumText: 'Нийт'
},
tree: {
emptyText: 'Өгөгдөл байхгүй'
},
transfer: {
noMatch: 'Тохирох өгөгдөл байхгүй',
noData: 'Өгөгдөл байхгүй',
titles: ['Жагсаалт 1', 'Жагсаалт 2'],
filterPlaceholder: 'Утга оруул',
noCheckedFormat: '{total} өгөгдөл',
hasCheckedFormat: '{checked}/{total} сонгосон'
}
}
};
+111
View File
@@ -0,0 +1,111 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Tøm'
},
datepicker: {
now: 'Nå',
today: 'I dag',
cancel: 'Avbryt',
clear: 'Tøm',
confirm: 'OK',
selectDate: 'Velg dato',
selectTime: 'Velg tidspunkt',
startDate: 'Start Dato',
startTime: 'Start Tidspunkt',
endDate: 'Sluttdato',
endTime: 'Sluttidspunkt',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: '',
month1: 'Januar',
month2: 'Februar',
month3: 'Mars',
month4: 'April',
month5: 'Mai',
month6: 'Juni',
month7: 'Juli',
month8: 'August',
month9: 'September',
month10: 'Oktober',
month11: 'November',
month12: 'Desember',
// week: 'week',
weeks: {
sun: 'Søn',
mon: 'Man',
tue: 'Tir',
wed: 'Ons',
thu: 'Tor',
fri: 'Fre',
sat: 'Lør'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Mar',
apr: 'Apr',
may: 'Mai',
jun: 'Jun',
jul: 'Jul',
aug: 'Aug',
sep: 'Sep',
oct: 'Okt',
nov: 'Nov',
dec: 'Des'
}
},
select: {
loading: 'Laster',
noMatch: 'Ingen samsvarende data',
noData: 'Ingen data',
placeholder: 'Velg'
},
cascader: {
noMatch: 'Ingen samsvarende data',
loading: 'Laster',
placeholder: 'Velg'
},
pagination: {
goto: 'Gå til',
pagesize: '/side',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
confirm: 'OK',
cancel: 'Avbryt',
error: 'Ugyldig input'
},
upload: {
deleteTip: 'press delete to remove', // to be translated
delete: 'Slett',
preview: 'Forhåndsvisning',
continue: 'Fortsett'
},
table: {
emptyText: 'Ingen Data',
confirmFilter: 'Bekreft',
resetFilter: 'Tilbakestill',
clearFilter: 'Alle',
sumText: 'Sum' // to be translated
},
tree: {
emptyText: 'Ingen Data'
},
transfer: {
noMatch: 'Ingen samsvarende data',
noData: 'Ingen data',
titles: ['List 1', 'List 2'], // to be translated
filterPlaceholder: 'Enter keyword', // to be translated
noCheckedFormat: '{total} items', // to be translated
hasCheckedFormat: '{checked}/{total} checked' // to be translated
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Bevestig',
clear: 'Wissen'
},
datepicker: {
now: 'Nu',
today: 'Vandaag',
cancel: 'Annuleren',
clear: 'Legen',
confirm: 'Bevestig',
selectDate: 'Selecteer datum',
selectTime: 'Selecteer tijd',
startDate: 'Startdatum',
startTime: 'Starttijd',
endDate: 'Einddatum',
endTime: 'Eindtijd',
prevYear: 'Vorig jaar',
nextYear: 'Volgend jaar',
prevMonth: 'Vorige maand',
nextMonth: 'Volgende maand',
year: '',
month1: 'januari',
month2: 'februari',
month3: 'maart',
month4: 'april',
month5: 'mei',
month6: 'juni',
month7: 'juli',
month8: 'augustus',
month9: 'september',
month10: 'oktober',
month11: 'november',
month12: 'december',
// week: 'week',
weeks: {
sun: 'Zo',
mon: 'Ma',
tue: 'Di',
wed: 'Wo',
thu: 'Do',
fri: 'Vr',
sat: 'Za'
},
months: {
jan: 'jan',
feb: 'feb',
mar: 'maa',
apr: 'apr',
may: 'mei',
jun: 'jun',
jul: 'jul',
aug: 'aug',
sep: 'sep',
oct: 'okt',
nov: 'nov',
dec: 'dec'
}
},
select: {
loading: 'Laden',
noMatch: 'Geen overeenkomende resultaten',
noData: 'Geen data',
placeholder: 'Selecteer'
},
cascader: {
noMatch: 'Geen overeenkomende resultaten',
loading: 'Laden',
placeholder: 'Selecteer'
},
pagination: {
goto: 'Ga naar',
pagesize: '/pagina',
total: 'Totaal {total}',
pageClassifier: ''
},
messagebox: {
title: 'Bericht',
confirm: 'Bevestig',
cancel: 'Annuleren',
error: 'Ongeldige invoer'
},
upload: {
deleteTip: 'Kies verwijder om te wissen',
delete: 'Verwijder',
preview: 'Voorbeeld',
continue: 'Doorgaan'
},
table: {
emptyText: 'Geen data',
confirmFilter: 'Bevestigen',
resetFilter: 'Reset',
clearFilter: 'Alles',
sumText: 'Som'
},
tree: {
emptyText: 'Geen data'
},
transfer: {
noMatch: 'Geen overeenkomende resultaten',
noData: 'Geen data',
titles: ['Lijst 1', 'Lijst 2'],
filterPlaceholder: 'Geef zoekwoerd',
noCheckedFormat: '{total} items',
hasCheckedFormat: '{checked}/{total} geselecteerd'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Wyczyść'
},
datepicker: {
now: 'Teraz',
today: 'Dzisiaj',
cancel: 'Anuluj',
clear: 'Wyczyść',
confirm: 'OK',
selectDate: 'Wybierz datę',
selectTime: 'Wybierz godzinę',
startDate: 'Data początkowa',
startTime: 'Godzina początkowa',
endDate: 'Data końcowa',
endTime: 'Czas końcowa',
prevYear: 'Poprzedni rok',
nextYear: 'Następny rok',
prevMonth: 'Poprzedni miesiąc',
nextMonth: 'Następny miesiąc',
year: 'rok',
month1: 'styczeń',
month2: 'luty',
month3: 'marzec',
month4: 'kwiecień',
month5: 'maj',
month6: 'czerwiec',
month7: 'lipiec',
month8: 'sierpień',
month9: 'wrzesień',
month10: 'październik',
month11: 'listopad',
month12: 'grudzień',
week: 'tydzień',
weeks: {
sun: 'niedz.',
mon: 'pon.',
tue: 'wt.',
wed: 'śr.',
thu: 'czw.',
fri: 'pt.',
sat: 'sob.'
},
months: {
jan: 'STY',
feb: 'LUT',
mar: 'MAR',
apr: 'KWI',
may: 'MAJ',
jun: 'CZE',
jul: 'LIP',
aug: 'SIE',
sep: 'WRZ',
oct: 'PAŹ',
nov: 'LIS',
dec: 'GRU'
}
},
select: {
loading: 'Ładowanie',
noMatch: 'Brak dopasowań',
noData: 'Brak danych',
placeholder: 'Wybierz'
},
cascader: {
noMatch: 'Brak dopasowań',
loading: 'Ładowanie',
placeholder: 'Wybierz'
},
pagination: {
goto: 'Idź do',
pagesize: '/strona',
total: 'Wszystkich {total}',
pageClassifier: ''
},
messagebox: {
title: 'Wiadomość',
confirm: 'OK',
cancel: 'Anuluj',
error: 'Wiadomość zawiera niedozwolone znaki'
},
upload: {
deleteTip: 'kliknij kasuj aby usunąć',
delete: 'Kasuj',
preview: 'Podgląd',
continue: 'Kontynuuj'
},
table: {
emptyText: 'Brak danych',
confirmFilter: 'Potwierdź',
resetFilter: 'Resetuj',
clearFilter: 'Wszystko',
sumText: 'Razem'
},
tree: {
emptyText: 'Brak danych'
},
transfer: {
noMatch: 'Brak dopasowań',
noData: 'Brak danych',
titles: ['Lista 1', 'Lista 2'],
filterPlaceholder: 'Wpisz szukaną frazę',
noCheckedFormat: 'razem: {total}',
hasCheckedFormat: 'wybranych: {checked}/{total}'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Confirmar',
clear: 'Limpar'
},
datepicker: {
now: 'Agora',
today: 'Hoje',
cancel: 'Cancelar',
clear: 'Limpar',
confirm: 'Confirmar',
selectDate: 'Selecione a data',
selectTime: 'Selecione a hora',
startDate: 'Data inicial',
startTime: 'Hora inicial',
endDate: 'Data final',
endTime: 'Hora final',
prevYear: 'Ano anterior',
nextYear: 'Próximo ano',
prevMonth: 'Mês anterior',
nextMonth: 'Próximo mês',
year: '',
month1: 'Janeiro',
month2: 'Fevereiro',
month3: 'Março',
month4: 'Abril',
month5: 'Maio',
month6: 'Junho',
month7: 'Julho',
month8: 'Agosto',
month9: 'Setembro',
month10: 'Outubro',
month11: 'Novembro',
month12: 'Dezembro',
// week: 'semana',
weeks: {
sun: 'Dom',
mon: 'Seg',
tue: 'Ter',
wed: 'Qua',
thu: 'Qui',
fri: 'Sex',
sat: 'Sab'
},
months: {
jan: 'Jan',
feb: 'Fev',
mar: 'Mar',
apr: 'Abr',
may: 'Mai',
jun: 'Jun',
jul: 'Jul',
aug: 'Ago',
sep: 'Set',
oct: 'Out',
nov: 'Nov',
dec: 'Dez'
}
},
select: {
loading: 'Carregando',
noMatch: 'Sem resultados',
noData: 'Sem dados',
placeholder: 'Selecione'
},
cascader: {
noMatch: 'Sem resultados',
loading: 'Carregando',
placeholder: 'Selecione'
},
pagination: {
goto: 'Ir para',
pagesize: '/página',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
title: 'Mensagem',
confirm: 'Confirmar',
cancel: 'Cancelar',
error: 'Erro!'
},
upload: {
deleteTip: 'aperte delete para apagar',
delete: 'Apagar',
preview: 'Pré-visualizar',
continue: 'Continuar'
},
table: {
emptyText: 'Sem dados',
confirmFilter: 'Confirmar',
resetFilter: 'Limpar',
clearFilter: 'Todos',
sumText: 'Total'
},
tree: {
emptyText: 'Sem dados'
},
transfer: {
noMatch: 'Sem resultados',
noData: 'Sem dados',
titles: ['Lista 1', 'Lista 2'],
filterPlaceholder: 'Digite uma palavra-chave',
noCheckedFormat: '{total} itens',
hasCheckedFormat: '{checked}/{total} selecionados'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Confirmar',
clear: 'Limpar'
},
datepicker: {
now: 'Agora',
today: 'Hoje',
cancel: 'Cancelar',
clear: 'Limpar',
confirm: 'Confirmar',
selectDate: 'Selecione a data',
selectTime: 'Selecione a hora',
startDate: 'Data de inicio',
startTime: 'Hora de inicio',
endDate: 'Data de fim',
endTime: 'Hora de fim',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: '',
month1: 'Janeiro',
month2: 'Fevereiro',
month3: 'Março',
month4: 'Abril',
month5: 'Maio',
month6: 'Junho',
month7: 'Julho',
month8: 'Agosto',
month9: 'Setembro',
month10: 'Outubro',
month11: 'Novembro',
month12: 'Dezembro',
// week: 'semana',
weeks: {
sun: 'Dom',
mon: 'Seg',
tue: 'Ter',
wed: 'Qua',
thu: 'Qui',
fri: 'Sex',
sat: 'Sab'
},
months: {
jan: 'Jan',
feb: 'Fev',
mar: 'Mar',
apr: 'Abr',
may: 'Mai',
jun: 'Jun',
jul: 'Jul',
aug: 'Ago',
sep: 'Set',
oct: 'Out',
nov: 'Nov',
dec: 'Dez'
}
},
select: {
loading: 'A carregar',
noMatch: 'Sem correspondência',
noData: 'Sem dados',
placeholder: 'Selecione'
},
cascader: {
noMatch: 'Sem correspondência',
loading: 'A carregar',
placeholder: 'Selecione'
},
pagination: {
goto: 'Ir para',
pagesize: '/pagina',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
title: 'Mensagem',
confirm: 'Confirmar',
cancel: 'Cancelar',
error: 'Erro!'
},
upload: {
deleteTip: 'press delete to remove', // to be translated
delete: 'Apagar',
preview: 'Previsualizar',
continue: 'Continuar'
},
table: {
emptyText: 'Sem dados',
confirmFilter: 'Confirmar',
resetFilter: 'Limpar',
clearFilter: 'Todos',
sumText: 'Sum' // to be translated
},
tree: {
emptyText: 'Sem dados'
},
transfer: {
noMatch: 'Sem correspondência',
noData: 'Sem dados',
titles: ['List 1', 'List 2'], // to be translated
filterPlaceholder: 'Enter keyword', // to be translated
noCheckedFormat: '{total} items', // to be translated
hasCheckedFormat: '{checked}/{total} checked' // to be translated
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Șterge'
},
datepicker: {
now: 'Acum',
today: 'Azi',
cancel: 'Anulează',
clear: 'Șterge',
confirm: 'OK',
selectDate: 'Selectează data',
selectTime: 'Selectează ora',
startDate: 'Data de început',
startTime: 'Ora de început',
endDate: 'Data de sfârșit',
endTime: 'Ora de sfârșit',
prevYear: 'Anul trecut',
nextYear: 'Anul următor',
prevMonth: 'Luna trecută',
nextMonth: 'Luna următoare',
year: '',
month1: 'Ianuarie',
month2: 'Februarie',
month3: 'Martie',
month4: 'Aprilie',
month5: 'Mai',
month6: 'Iunie',
month7: 'Iulie',
month8: 'August',
month9: 'Septembrie',
month10: 'Octombrie',
month11: 'Noiembrie',
month12: 'Decembrie',
// week: 'week',
weeks: {
sun: 'Du',
mon: 'Lu',
tue: 'Ma',
wed: 'Mi',
thu: 'Jo',
fri: 'Vi',
sat: 'Sâ'
},
months: {
jan: 'Ian',
feb: 'Feb',
mar: 'Mar',
apr: 'Apr',
may: 'Mai',
jun: 'Iun',
jul: 'Iul',
aug: 'Aug',
sep: 'Sep',
oct: 'Oct',
nov: 'Noi',
dec: 'Dec'
}
},
select: {
loading: 'Se încarcă',
noMatch: 'Nu există date potrivite',
noData: 'Nu există date',
placeholder: 'Selectează'
},
cascader: {
noMatch: 'Nu există date potrivite',
loading: 'Se încarcă',
placeholder: 'Selectează'
},
pagination: {
goto: 'Go to',
pagesize: '/pagina',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
title: 'Mesaj',
confirm: 'OK',
cancel: 'Anulează',
error: 'Date introduse eronate'
},
upload: {
deleteTip: 'apăsați pe ștergeți pentru a elimina',
delete: 'șterge',
preview: 'previzualizare',
continue: 'continuă'
},
table: {
emptyText: 'Nu există date',
confirmFilter: 'Confirmă',
resetFilter: 'Resetează',
clearFilter: 'Tot',
sumText: 'Suma'
},
tree: {
emptyText: 'Nu există date'
},
transfer: {
noMatch: 'Nu există date potrivite',
noData: 'Nu există date',
titles: ['Lista 1', 'Lista 2'],
filterPlaceholder: 'Introduceți cuvântul cheie',
noCheckedFormat: '{total} elemente',
hasCheckedFormat: '{checked}/{total} verificate'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Очистить'
},
datepicker: {
now: 'Сейчас',
today: 'Сегодня',
cancel: 'Отмена',
clear: 'Очистить',
confirm: 'OK',
selectDate: 'Выбрать дату',
selectTime: 'Выбрать время',
startDate: 'Дата начала',
startTime: 'Время начала',
endDate: 'Дата окончания',
endTime: 'Время окончания',
prevYear: 'Предыдущий год',
nextYear: 'Следующий год',
prevMonth: 'Предыдущий месяц',
nextMonth: 'Следующий месяц',
year: '',
month1: 'Январь',
month2: 'Февраль',
month3: 'Март',
month4: 'Апрель',
month5: 'Май',
month6: 'Июнь',
month7: 'Июль',
month8: 'Август',
month9: 'Сентябрь',
month10: 'Октябрь',
month11: 'Ноябрь',
month12: 'Декабрь',
week: 'неделя',
weeks: {
sun: 'Вс',
mon: 'Пн',
tue: 'Вт',
wed: 'Ср',
thu: 'Чт',
fri: 'Пт',
sat: 'Сб'
},
months: {
jan: 'Янв',
feb: 'Фев',
mar: 'Мар',
apr: 'Апр',
may: 'Май',
jun: 'Июн',
jul: 'Июл',
aug: 'Авг',
sep: 'Сен',
oct: 'Окт',
nov: 'Ноя',
dec: 'Дек'
}
},
select: {
loading: 'Загрузка',
noMatch: 'Совпадений не найдено',
noData: 'Нет данных',
placeholder: 'Выбрать'
},
cascader: {
noMatch: 'Совпадений не найдено',
loading: 'Загрузка',
placeholder: 'Выбрать'
},
pagination: {
goto: 'Перейти',
pagesize: ' на странице',
total: 'Всего {total}',
pageClassifier: ''
},
messagebox: {
title: 'Сообщение',
confirm: 'OK',
cancel: 'Отмена',
error: 'Недопустимый ввод данных'
},
upload: {
deleteTip: 'Нажмите [Удалить] для удаления',
delete: 'Удалить',
preview: 'Превью',
continue: 'Продолжить'
},
table: {
emptyText: 'Нет данных',
confirmFilter: 'Подтвердить',
resetFilter: 'Сбросить',
clearFilter: 'Все',
sumText: 'Сумма'
},
tree: {
emptyText: 'Нет данных'
},
transfer: {
noMatch: 'Совпадений не найдено',
noData: 'Нет данных',
titles: ['Список 1', 'Список 2'],
filterPlaceholder: 'Введите ключевое слово',
noCheckedFormat: '{total} пунктов',
hasCheckedFormat: '{checked}/{total} выбрано'
}
}
};
+114
View File
@@ -0,0 +1,114 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Zmazať'
},
datepicker: {
now: 'Teraz',
today: 'Dnes',
cancel: 'Zrušiť',
clear: 'Zmazať',
confirm: 'OK',
selectDate: 'Vybrať dátum',
selectTime: 'Vybrať čas',
startDate: 'Dátum začiatku',
startTime: 'Čas začiatku',
endDate: 'Dátum konca',
endTime: 'Čas konca',
prevYear: 'Predošlý rok',
nextYear: 'Ďalší rok',
prevMonth: 'Predošlý mesiac',
nextMonth: 'Ďalší mesiac',
day: 'Deň',
week: 'Týždeň',
month: 'Mesiac',
year: 'Rok',
month1: 'Január',
month2: 'Február',
month3: 'Marec',
month4: 'Apríl',
month5: 'Máj',
month6: 'Jún',
month7: 'Júl',
month8: 'August',
month9: 'September',
month10: 'Október',
month11: 'November',
month12: 'December',
weeks: {
sun: 'Ne',
mon: 'Po',
tue: 'Ut',
wed: 'St',
thu: 'Št',
fri: 'Pi',
sat: 'So'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Mar',
apr: 'Apr',
may: 'Máj',
jun: 'Jún',
jul: 'Júl',
aug: 'Aug',
sep: 'Sep',
oct: 'Okt',
nov: 'Nov',
dec: 'Dec'
}
},
select: {
loading: 'Načítavanie',
noMatch: 'Žiadna zhoda',
noData: 'Žiadne dáta',
placeholder: 'Vybrať'
},
cascader: {
noMatch: 'Žiadna zhoda',
loading: 'Načítavanie',
placeholder: 'Vybrať'
},
pagination: {
goto: 'Choď na',
pagesize: 'na stranu',
total: 'Všetko {total}',
pageClassifier: ''
},
messagebox: {
title: 'Správa',
confirm: 'OK',
cancel: 'Zrušiť',
error: 'Neplatný vstup'
},
upload: {
deleteTip: 'pre odstránenie stisni klávesu Delete',
delete: 'Vymazať',
preview: 'Prehliadať',
continue: 'Pokračovať'
},
table: {
emptyText: 'Žiadne dáta',
confirmFilter: 'Potvrdiť',
resetFilter: 'Zresetovať',
clearFilter: 'Všetko',
sumText: 'Spolu'
},
tree: {
emptyText: 'Žiadne dáta'
},
transfer: {
noMatch: 'Žiadna zhoda',
noData: 'Žiadne dáta',
titles: ['Zoznam 1', 'Zoznam 2'],
filterPlaceholder: 'Filtrovať podľa',
noCheckedFormat: '{total} položiek',
hasCheckedFormat: '{checked}/{total} označených'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'V redu',
clear: 'Počisti'
},
datepicker: {
now: 'Zdaj',
today: 'Danes',
cancel: 'Prekliči',
clear: 'Počisti',
confirm: 'Potrdi',
selectDate: 'Izberi datum',
selectTime: 'Izberi čas',
startDate: 'Začetni datum',
startTime: 'Začetni čas',
endDate: 'Končni datum',
endTime: 'Končni čas',
prevYear: 'Prejšnje leto',
nextYear: 'Naslednje leto',
prevMonth: 'Prejšnji mesec',
nextMonth: 'Naslednji mesec',
year: '',
month1: 'Jan',
month2: 'Feb',
month3: 'Mar',
month4: 'Apr',
month5: 'Maj',
month6: 'Jun',
month7: 'Jul',
month8: 'Avg',
month9: 'Sep',
month10: 'Okt',
month11: 'Nov',
month12: 'Dec',
week: 'teden',
weeks: {
sun: 'Ned',
mon: 'Pon',
tue: 'Tor',
wed: 'Sre',
thu: 'Čet',
fri: 'Pet',
sat: 'Sob'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Mar',
apr: 'Apr',
may: 'Maj',
jun: 'Jun',
jul: 'Jul',
aug: 'Avg',
sep: 'Sep',
oct: 'Okt',
nov: 'Nov',
dec: 'Dec'
}
},
select: {
loading: 'Nalaganje',
noMatch: 'Ni ustreznih podatkov',
noData: 'Ni podatkov',
placeholder: 'Izberi'
},
cascader: {
noMatch: 'Ni ustreznih podatkov',
loading: 'Nalaganje',
placeholder: 'Izberi'
},
pagination: {
goto: 'Pojdi na',
pagesize: '/stran',
total: 'Skupno {total}',
pageClassifier: ''
},
messagebox: {
title: 'Sporočilo',
confirm: 'V redu',
cancel: 'Prekliči',
error: 'Nedovoljen vnos'
},
upload: {
deleteTip: 'press delete to remove', // to be translated
delete: 'Izbriši',
preview: 'Predogled',
continue: 'Nadaljuj'
},
table: {
emptyText: 'Ni podatkov',
confirmFilter: 'Potrdi',
resetFilter: 'Ponastavi',
clearFilter: 'Vse',
sumText: 'Skupno'
},
tree: {
emptyText: 'Ni podatkov'
},
transfer: {
noMatch: 'Ni ustreznih podatkov',
noData: 'Ni podatkov',
titles: ['Seznam 1', 'Seznam 2'],
filterPlaceholder: 'Vnesi ključno besedo',
noCheckedFormat: '{total} elementov',
hasCheckedFormat: '{checked}/{total} izbranih'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Поништи'
},
datepicker: {
now: 'Сад',
today: 'Данас',
cancel: 'Откажи',
clear: 'Бриши',
confirm: 'OK',
selectDate: 'Изабери датум',
selectTime: 'Изабери време',
startDate: 'Датум почетка',
startTime: 'Време почетка',
endDate: 'Датум завршетка',
endTime: 'Време завршетка',
prevYear: 'Претходна година',
nextYear: 'Следећа година',
prevMonth: 'Претходни месец',
nextMonth: 'Следећи месец',
year: 'година',
month1: 'јануар',
month2: 'фебруар',
month3: 'март',
month4: 'април',
month5: 'мај',
month6: 'јун',
month7: 'јул',
month8: 'август',
month9: 'септембар',
month10: 'октобар',
month11: 'новембар',
month12: 'децембар',
week: 'седмица',
weeks: {
sun: 'Нед',
mon: 'Пон',
tue: 'Уто',
wed: 'Сре',
thu: 'Чет',
fri: 'Пет',
sat: 'Суб'
},
months: {
jan: 'јан',
feb: 'феб',
mar: 'мар',
apr: 'апр',
may: 'мај',
jun: 'јун',
jul: 'јул',
aug: 'авг',
sep: 'сеп',
oct: 'окт',
nov: 'нов',
dec: 'дец'
}
},
select: {
loading: 'Учитавање',
noMatch: 'Нема резултата',
noData: 'Нема података',
placeholder: 'Изабери'
},
cascader: {
noMatch: 'Нема резултата',
loading: 'Учитавање',
placeholder: 'Изабери'
},
pagination: {
goto: 'Иди на',
pagesize: '/страни',
total: 'Укупно {total}',
pageClassifier: ''
},
messagebox: {
title: 'Порука',
confirm: 'OK',
cancel: 'Откажи',
error: 'Неисправан унос'
},
upload: {
deleteTip: 'притисни БРИШИ да обришеш',
delete: 'Бриши',
preview: 'Види',
continue: 'Настави'
},
table: {
emptyText: 'Нема података',
confirmFilter: 'Потврди',
resetFilter: 'Ресетуј',
clearFilter: 'Све',
sumText: 'Збир'
},
tree: {
emptyText: 'Нема података'
},
transfer: {
noMatch: 'Нема резултата',
noData: 'Нема података',
titles: ['Листа 1', 'Листа 2'], // to be translated
filterPlaceholder: 'Унеси кључну реч', // to be translated
noCheckedFormat: '{total} ставки', // to be translated
hasCheckedFormat: '{checked}/{total} обележених' // to be translated
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Töm'
},
datepicker: {
now: 'Nu',
today: 'Idag',
cancel: 'Avbryt',
clear: 'Töm',
confirm: 'OK',
selectDate: 'Välj datum',
selectTime: 'Välj tid',
startDate: 'Startdatum',
startTime: 'Starttid',
endDate: 'Slutdatum',
endTime: 'Sluttid',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: 'År',
month1: 'Januari',
month2: 'Februari',
month3: 'Mars',
month4: 'April',
month5: 'Maj',
month6: 'Juni',
month7: 'Juli',
month8: 'Augusti',
month9: 'September',
month10: 'Oktober',
month11: 'November',
month12: 'December',
// week: 'week',
weeks: {
sun: 'Sön',
mon: 'Mån',
tue: 'Tis',
wed: 'Ons',
thu: 'Tor',
fri: 'Fre',
sat: 'Lör'
},
months: {
jan: 'Jan',
feb: 'Feb',
mar: 'Mar',
apr: 'Apr',
may: 'Maj',
jun: 'Jun',
jul: 'Jul',
aug: 'Aug',
sep: 'Sep',
oct: 'Okt',
nov: 'Nov',
dec: 'Dec'
}
},
select: {
loading: 'Laddar',
noMatch: 'Hittade inget',
noData: 'Ingen data',
placeholder: 'Välj'
},
cascader: {
noMatch: 'Hittade inget',
loading: 'Laddar',
placeholder: 'Välj'
},
pagination: {
goto: 'Gå till',
pagesize: '/sida',
total: 'Total {total}',
pageClassifier: ''
},
messagebox: {
title: 'Meddelande',
confirm: 'OK',
cancel: 'Avbryt',
error: 'Felaktig inmatning'
},
upload: {
deleteTip: 'press delete to remove', // to be translated
delete: 'Radera',
preview: 'Förhandsvisa',
continue: 'Fortsätt'
},
table: {
emptyText: 'Inga Data',
confirmFilter: 'Bekräfta',
resetFilter: 'Återställ',
clearFilter: 'Alla',
sumText: 'Sum' // to be translated
},
tree: {
emptyText: 'Inga Data'
},
transfer: {
noMatch: 'Hittade inget',
noData: 'Ingen data',
titles: ['List 1', 'List 2'], // to be translated
filterPlaceholder: 'Enter keyword', // to be translated
noCheckedFormat: '{total} items', // to be translated
hasCheckedFormat: '{checked}/{total} checked' // to be translated
}
}
};
+111
View File
@@ -0,0 +1,111 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'உறுதி செய்',
clear: 'தெளிவாக்கு'
},
datepicker: {
now: 'தற்போது',
today: 'இன்று',
cancel: 'ரத்து செய்',
clear: 'சரி',
confirm: 'உறுதி செய்',
selectDate: 'தேதியை தேர்வு செய்',
selectTime: 'நேரத்தை தேர்வு செய்',
startDate: 'தொடங்கும் நாள்',
startTime: 'தொடங்கும் நேரம்',
endDate: 'முடியும் தேதி',
endTime: 'முடியும் நேரம்',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: 'வருடம்',
month1: 'ஜனவரி',
month2: 'பிப்ரவரி',
month3: 'மார்ச்',
month4: 'ஏப்ரல்',
month5: 'மே',
month6: 'ஜூன்',
month7: 'ஜூலை',
month8: 'ஆகஸ்ட்',
month9: 'செப்டம்பர்',
month10: 'அக்டோபர்',
month11: 'நவம்பர்',
month12: 'டிசம்பர்',
weeks: {
sun: 'ஞாயிறு',
mon: 'திங்கள்',
tue: 'செவ்வாய்',
wed: 'புதன்',
thu: 'வியாழன்',
fri: 'வெள்ளி',
sat: 'சனி'
},
months: {
jan: 'ஜனவரி',
feb: 'பிப்ரவரி',
mar: 'மார்ச்',
apr: 'ஏப்ரல்',
may: 'மே',
jun: 'ஜூன்',
jul: 'ஜூலை',
aug: 'ஆகஸ்ட்',
sep: 'செப்டம்பர்',
oct: 'அக்டோபர்',
nov: 'நவம்பர்',
dec: 'டிசம்பர்'
}
},
select: {
loading: 'தயாராகிக்கொண்டிருக்கிறது',
noMatch: 'பொருத்தமான தரவு கிடைக்கவில்லை',
noData: 'தரவு இல்லை',
placeholder: 'தேர்வு செய்'
},
cascader: {
noMatch: 'பொருத்தமான தரவு கிடைக்கவில்லை',
loading: 'தயாராகிக்கொண்டிருக்கிறது',
placeholder: 'தேர்வு செய்'
},
pagination: {
goto: 'தேவையான் பகுதிக்கு செல்',
pagesize: '/page',
total: 'மொத்தம் {total}',
pageClassifier: ''
},
messagebox: {
title: 'செய்தி',
confirm: 'உறுதி செய்',
cancel: 'ரத்து செய்',
error: 'பொருத்தாமில்லாத உள்ளீடு'
},
upload: {
deleteTip: 'press delete to remove', // to be translated
delete: 'நீக்கு',
preview: 'முன்னோட்டம் பார்',
continue: 'தொடரு'
},
table: {
emptyText: 'தரவு இல்லை',
confirmFilter: 'உறுதி செய்',
resetFilter: 'புதுமாற்றம் செய்',
clearFilter: 'அனைத்தும்',
sumText: 'கூட்டு'
},
tree: {
emptyText: 'தரவு இல்லை'
},
transfer: {
noMatch: 'பொருத்தமான தரவு கிடைக்கவில்லை',
noData: 'தரவு இல்லை',
titles: ['பட்டியல் 1', 'பட்டியல் 2'],
filterPlaceholder: 'சொல்லை உள்ளீடு செய்',
noCheckedFormat: '{total} items', // to be translated
hasCheckedFormat: '{checked}/{total} தேர்வு செய்யப்பட்டவைகள்'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'ตกลง',
clear: 'ล้างข้อมูล'
},
datepicker: {
now: 'ตอนนี้',
today: 'วันนี้',
cancel: 'ยกเลิก',
clear: 'ล้างข้อมูล',
confirm: 'ตกลง',
selectDate: 'เลือกวันที่',
selectTime: 'เลือกเวลา',
startDate: 'วันที่เริ่มต้น',
startTime: 'เวลาเริ่มต้น',
endDate: 'วันที่สิ้นสุด',
endTime: 'เวลาสิ้นสุด',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: 'ปี',
month1: 'มกราคม',
month2: 'กุมภาพันธ์',
month3: 'มีนาคม',
month4: 'เมษายน',
month5: 'พฤษภาคม',
month6: 'มิถุนายน',
month7: 'กรกฎาคม',
month8: 'สิงหาคม',
month9: 'กันยายน',
month10: 'ตุลาคม',
month11: 'พฤศจิกายน',
month12: 'ธันวาคม',
// week: 'week',
weeks: {
sun: 'อา',
mon: 'จ',
tue: 'อ',
wed: 'พ',
thu: 'พฤ',
fri: 'ศ',
sat: 'ส'
},
months: {
jan: 'มกรา',
feb: 'กุมภา',
mar: 'มีนา',
apr: 'เมษา',
may: 'พฤษภา',
jun: 'มิถุนา',
jul: 'กรกฎา',
aug: 'สิงหา',
sep: 'กันยา',
oct: 'ตุลา',
nov: 'พฤศจิกา',
dec: 'ธันวา'
}
},
select: {
loading: 'กำลังโหลด',
noMatch: 'ไม่พบข้อมูลที่ตรงกัน',
noData: 'ไม่พบข้อมูล',
placeholder: 'เลือก'
},
cascader: {
noMatch: 'ไม่พบข้อมูลที่ตรงกัน',
loading: 'กำลังโหลด',
placeholder: 'เลือก'
},
pagination: {
goto: 'ไปที่',
pagesize: '/หน้า',
total: 'ทั้งหมด {total}',
pageClassifier: ''
},
messagebox: {
title: 'ข้อความ',
confirm: 'ตกลง',
cancel: 'ยกเลิก',
error: 'คุณป้อนข้อมูลไม่ถูกต้อง'
},
upload: {
deleteTip: 'press delete to remove', // to be translated
delete: 'ลบ',
preview: 'ตัวอย่าง',
continue: 'ทำต่อ'
},
table: {
emptyText: 'ไม่พบข้อมูล',
confirmFilter: 'ยืนยัน',
resetFilter: 'รีเซ็ต',
clearFilter: 'ทั้งหมด',
sumText: 'Sum' // to be translated
},
tree: {
emptyText: 'ไม่พบข้อมูล'
},
transfer: {
noMatch: 'ไม่พบข้อมูลที่ตรงกัน',
noData: 'ไม่พบข้อมูล',
titles: ['List 1', 'List 2'], // to be translated
filterPlaceholder: 'Enter keyword', // to be translated
noCheckedFormat: '{total} items', // to be translated
hasCheckedFormat: '{checked}/{total} checked' // to be translated
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Arassala'
},
datepicker: {
now: 'Şuwagt',
today: 'Şügün',
cancel: 'Bes et',
clear: 'Arassala',
confirm: 'OK',
selectDate: 'Güni saýlaň',
selectTime: 'Wagty saýlaň',
startDate: 'Başlaýan güni',
startTime: 'Başlaýan wagty',
endDate: 'Gutarýan güni',
endTime: 'Gutarýan wagty',
prevYear: 'Previous Year', // to be translated
nextYear: 'Next Year', // to be translated
prevMonth: 'Previous Month', // to be translated
nextMonth: 'Next Month', // to be translated
year: '',
month1: 'Ýan',
month2: 'Few',
month3: 'Mar',
month4: 'Apr',
month5: 'Maý',
month6: 'Iýn',
month7: 'Iýl',
month8: 'Awg',
month9: 'Sen',
month10: 'Okt',
month11: 'Noý',
month12: 'Dek',
// week: 'week',
weeks: {
sun: 'Ýek',
mon: 'Duş',
tue: 'Siş',
wed: 'Çar',
thu: 'Pen',
fri: 'Ann',
sat: 'Şen'
},
months: {
jan: 'Ýan',
feb: 'Few',
mar: 'Mar',
apr: 'Apr',
may: 'Maý',
jun: 'Iýn',
jul: 'Iýl',
aug: 'Awg',
sep: 'Sep',
oct: 'Okt',
nov: 'Noý',
dec: 'Dek'
}
},
select: {
loading: 'Indirilýär',
noMatch: 'Hiçzat tapylmady',
noData: 'Hiçzat ýok',
placeholder: 'Saýla'
},
cascader: {
noMatch: 'Hiçzat tapylmady',
loading: 'Indirilýär',
placeholder: 'Saýlaň'
},
pagination: {
goto: 'Git',
pagesize: '/sahypa',
total: 'Umumy {total}',
pageClassifier: ''
},
messagebox: {
title: 'Hat',
confirm: 'OK',
cancel: 'Bes et',
error: 'Ýalňyş girizme'
},
upload: {
deleteTip: 'Pozmak üçin "poz" düwmä basyň',
delete: 'Poz',
preview: 'Gör',
continue: 'Dowam et'
},
table: {
emptyText: 'Maglumat ýok',
confirmFilter: 'Tassykla',
resetFilter: 'Arassala',
clearFilter: 'Hemmesi',
sumText: 'Jemi'
},
tree: {
emptyText: 'Maglumat ýok'
},
transfer: {
noMatch: 'Hiçzat tapylmady',
noData: 'Hiçzat ýok',
titles: ['Sanaw 1', 'Sanaw 2'],
filterPlaceholder: 'Gözleg sözlerini giriziň',
noCheckedFormat: '{total} sany',
hasCheckedFormat: '{checked}/{total} saýlanan'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'Onayla',
clear: 'Temizle'
},
datepicker: {
now: 'Şimdi',
today: 'Bugün',
cancel: 'İptal',
clear: 'Temizle',
confirm: 'Onayla',
selectDate: 'Tarih seç',
selectTime: 'Saat seç',
startDate: 'Başlangıç Tarihi',
startTime: 'Başlangıç Saati',
endDate: 'Bitiş Tarihi',
endTime: 'Bitiş Saati',
prevYear: 'Önceki Yıl',
nextYear: 'Sonraki Yıl',
prevMonth: 'Önceki Ay',
nextMonth: 'Sonraki Ay',
year: '',
month1: 'Ocak',
month2: 'Şubat',
month3: 'Mart',
month4: 'Nisan',
month5: 'Mayıs',
month6: 'Haziran',
month7: 'Temmuz',
month8: 'Ağustos',
month9: 'Eylül',
month10: 'Ekim',
month11: 'Kasım',
month12: 'Aralık',
// week: 'week',
weeks: {
sun: 'Paz',
mon: 'Pzt',
tue: 'Sal',
wed: 'Çar',
thu: 'Per',
fri: 'Cum',
sat: 'Cmt'
},
months: {
jan: 'Oca',
feb: 'Şub',
mar: 'Mar',
apr: 'Nis',
may: 'May',
jun: 'Haz',
jul: 'Tem',
aug: 'Ağu',
sep: 'Eyl',
oct: 'Eki',
nov: 'Kas',
dec: 'Ara'
}
},
select: {
loading: 'Yükleniyor',
noMatch: 'Eşleşen veri bulunamadı',
noData: 'Veri yok',
placeholder: 'Seç'
},
cascader: {
noMatch: 'Eşleşen veri bulunamadı',
loading: 'Yükleniyor',
placeholder: 'Seç'
},
pagination: {
goto: 'Git',
pagesize: '/sayfa',
total: 'Toplam {total}',
pageClassifier: ''
},
messagebox: {
title: 'Mesaj',
confirm: 'Onayla',
cancel: 'İptal',
error: 'İllegal giriş'
},
upload: {
deleteTip: 'kaldırmak için delete tuşuna bas',
delete: 'Sil',
preview: 'Görüntüle',
continue: 'Devam'
},
table: {
emptyText: 'Veri yok',
confirmFilter: 'Onayla',
resetFilter: 'Sıfırla',
clearFilter: 'Hepsi',
sumText: 'Sum'
},
tree: {
emptyText: 'Veri yok'
},
transfer: {
noMatch: 'Eşleşen veri bulunamadı',
noData: 'Veri yok',
titles: ['Liste 1', 'Liste 2'],
filterPlaceholder: 'Anahtar kelimeleri gir',
noCheckedFormat: '{total} adet',
hasCheckedFormat: '{checked}/{total} seçildi'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Очистити'
},
datepicker: {
now: 'Зараз',
today: 'Сьогодні',
cancel: 'Відміна',
clear: 'Очистити',
confirm: 'OK',
selectDate: 'Вибрати дату',
selectTime: 'Вибрати час',
startDate: 'Дата початку',
startTime: 'Час початку',
endDate: 'Дата завершення',
endTime: 'Час завершення',
prevYear: 'Попередній Рік',
nextYear: 'Наступний Рік',
prevMonth: 'Попередній Місяць',
nextMonth: 'Наступний Місяць',
year: '',
month1: 'Січень',
month2: 'Лютий',
month3: 'Березень',
month4: 'Квітень',
month5: 'Травень',
month6: 'Червень',
month7: 'Липень',
month8: 'Серпень',
month9: 'Вересень',
month10: 'Жовтень',
month11: 'Листопад',
month12: 'Грудень',
week: 'тиждень',
weeks: {
sun: 'Нд',
mon: 'Пн',
tue: 'Вт',
wed: 'Ср',
thu: 'Чт',
fri: 'Пт',
sat: 'Сб'
},
months: {
jan: 'Січ',
feb: 'Лют',
mar: 'Бер',
apr: 'Кві',
may: 'Тра',
jun: 'Чер',
jul: 'Лип',
aug: 'Сер',
sep: 'Вер',
oct: 'Жов',
nov: 'Лис',
dec: 'Гру'
}
},
select: {
loading: 'Завантаження',
noMatch: 'Співпадінь не знайдено',
noData: 'Немає даних',
placeholder: 'Обрати'
},
cascader: {
noMatch: 'Співпадінь не знайдено',
loading: 'Завантаження',
placeholder: 'Обрати'
},
pagination: {
goto: 'Перейти',
pagesize: 'на сторінці',
total: 'Всього {total}',
pageClassifier: ''
},
messagebox: {
title: 'Повідомлення',
confirm: 'OK',
cancel: 'Відміна',
error: 'Неприпустимий ввід даних'
},
upload: {
deleteTip: 'натисніть кнопку щоб видалити',
delete: 'Видалити',
preview: 'Перегляд',
continue: 'Продовжити'
},
table: {
emptyText: 'Немає даних',
confirmFilter: 'Підтвердити',
resetFilter: 'Скинути',
clearFilter: 'Все',
sumText: 'Сума'
},
tree: {
emptyText: 'Немає даних'
},
transfer: {
noMatch: 'Співпадінь не знайдено',
noData: 'Обрати',
titles: ['Список 1', 'Список 2'],
filterPlaceholder: 'Введіть ключове слово',
noCheckedFormat: '{total} пунктів',
hasCheckedFormat: '{checked}/{total} вибрано'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'جەزملەش',
clear: 'قۇرۇقداش'
},
datepicker: {
now: 'ھازىرقى ۋاقىت',
today: 'بۈگۈن',
cancel: 'بىكار قىلىش',
clear: 'قۇرۇقداش',
confirm: 'جەزملەش',
selectDate: 'چىسلا تاللاڭ',
selectTime: 'ۋاقىت تاللاڭ',
startDate: 'باشلانغان چىسلا',
startTime: 'باشلانغان ۋاقىت',
endDate: 'ئاخىرلاشقان چىسلا',
endTime: 'ئاخىرلاشقان ۋاقىت',
prevYear: 'ئالدىنقى يىل',
nextYear: 'كىيىنكى يىل',
prevMonth: 'ئالدىنقى ئاي',
nextMonth: 'كىيىنكى ئاي',
year: '- يىل',
month1: '1-ئاي',
month2: '2-ئاي',
month3: '3-ئاي',
month4: '4-ئاي',
month5: '5-ئاي',
month6: '6-ئاي',
month7: '7-ئاي',
month8: '8-ئاي',
month9: '9-ئاي',
month10: '10-ئاي',
month11: '11-ئاي',
month12: '12-ئاي',
// week: '周次',
weeks: {
sun: 'يەكشەنبە',
mon: 'دۈشەنبە',
tue: 'سەيشەنبە',
wed: 'چارشەنبە',
thu: 'پەيشەنبە',
fri: 'جۈمە',
sat: 'شەنبە'
},
months: {
jan: '1-ئاي',
feb: '2-ئاي',
mar: '3-ئاي',
apr: '4-ئاي',
may: '5-ئاي',
jun: '6-ئاي',
jul: '7-ئاي',
aug: '8-ئاي',
sep: '9-ئاي',
oct: '10-ئاي',
nov: '11-ئاي',
dec: '12-ئاي'
}
},
select: {
loading: 'يۈكلىنىۋاتىدۇ',
noMatch: 'ئۇچۇر تېپىلمىدى',
noData: 'ئۇچۇر يوق',
placeholder: 'تاللاڭ'
},
cascader: {
noMatch: 'ئۇچۇر تېپىلمىدى',
loading: 'يۈكلىنىۋاتىدۇ',
placeholder: 'تاللاڭ'
},
pagination: {
goto: 'كىيىنكى بەت',
pagesize: 'تال/بەت',
total: 'جەمئىي {total} تال',
pageClassifier: 'بەت'
},
messagebox: {
title: 'ئەسكەرتىش',
confirm: 'جەزملەش',
cancel: 'بىكار قىلىش',
error: 'كىرگۈزگەن ئۇچۇرىڭىزدا خاتالىق بار!'
},
upload: {
deleteTip: 'delete كۇنپكىسىنى بېسىپ ئۆچۈرەلەيسىز',
delete: 'ئۆچۈرۈش',
preview: 'رەسىمنى كۆرۈش',
continue: 'رەسىم يوللاش'
},
table: {
emptyText: 'ئۇچۇر يوق',
confirmFilter: 'سۈزگۈچ',
resetFilter: 'قايتا تولدۇرۇش',
clearFilter: 'ھەممە',
sumText: 'جەمئىي'
},
tree: {
emptyText: 'ئۇچۇر يوق'
},
transfer: {
noMatch: 'ئۇچۇر تېپىلمىدى',
noData: 'ئۇچۇر يوق',
titles: ['جەدۋەل 1', 'جەدۋەل 2'],
filterPlaceholder: 'ئىزدىمەكچى بولغان مەزمۇننى كىرگۈزۈڭ',
noCheckedFormat: 'جەمئىي {total} تۈر',
hasCheckedFormat: 'تاللانغىنى {checked}/{total} تۈر'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: 'OK',
clear: 'Xóa'
},
datepicker: {
now: 'Hiện tại',
today: 'Hôm nay',
cancel: 'Hủy',
clear: 'Xóa',
confirm: 'OK',
selectDate: 'Chọn ngày',
selectTime: 'Chọn giờ',
startDate: 'Ngày bắt đầu',
startTime: 'Thời gian bắt đầu',
endDate: 'Ngày kết thúc',
endTime: 'Thời gian kết thúc',
prevYear: 'Năm trước',
nextYear: 'Năm tới',
prevMonth: 'Tháng trước',
nextMonth: 'Tháng tới',
year: 'Năm',
month1: 'Tháng 1',
month2: 'Tháng 2',
month3: 'Tháng 3',
month4: 'Tháng 4',
month5: 'Tháng 5',
month6: 'Tháng 6',
month7: 'Tháng 7',
month8: 'Tháng 8',
month9: 'Tháng 9',
month10: 'Tháng 10',
month11: 'Tháng 11',
month12: 'Tháng 12',
// week: 'week',
weeks: {
sun: 'CN',
mon: 'T2',
tue: 'T3',
wed: 'T4',
thu: 'T5',
fri: 'T6',
sat: 'T7'
},
months: {
jan: 'Th.1',
feb: 'Th.2',
mar: 'Th.3',
apr: 'Th.4',
may: 'Th.5',
jun: 'Th.6',
jul: 'Th.7',
aug: 'Th.8',
sep: 'Th.9',
oct: 'Th.10',
nov: 'Th.11',
dec: 'Th.12'
}
},
select: {
loading: 'Đang tải',
noMatch: 'Dữ liệu không phù hợp',
noData: 'Không tìm thấy dữ liệu',
placeholder: 'Chọn'
},
cascader: {
noMatch: 'Dữ liệu không phù hợp',
loading: 'Đang tải',
placeholder: 'Chọn'
},
pagination: {
goto: 'Nhảy tới',
pagesize: '/trang',
total: 'Tổng {total}',
pageClassifier: ''
},
messagebox: {
title: 'Thông báo',
confirm: 'OK',
cancel: 'Hủy',
error: 'Dữ liệu không hợp lệ'
},
upload: {
deleteTip: 'Nhấn xoá để xoá',
delete: 'Xóa',
preview: 'Xem trước',
continue: 'Tiếp tục'
},
table: {
emptyText: 'Không có dữ liệu',
confirmFilter: 'Xác nhận',
resetFilter: 'Làm mới',
clearFilter: 'Xóa hết',
sumText: 'Tổng'
},
tree: {
emptyText: 'Không có dữ liệu'
},
transfer: {
noMatch: 'Dữ liệu không phù hợp',
noData: 'Không tìm thấy dữ liệu',
titles: ['Danh sách 1', 'Danh sách 2'],
filterPlaceholder: 'Nhập từ khóa',
noCheckedFormat: '{total} mục',
hasCheckedFormat: '{checked}/{total} đã chọn '
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: '确定',
clear: '清空'
},
datepicker: {
now: '此刻',
today: '今天',
cancel: '取消',
clear: '清空',
confirm: '确定',
selectDate: '选择日期',
selectTime: '选择时间',
startDate: '开始日期',
startTime: '开始时间',
endDate: '结束日期',
endTime: '结束时间',
prevYear: '前一年',
nextYear: '后一年',
prevMonth: '上个月',
nextMonth: '下个月',
year: '年',
month1: '1 月',
month2: '2 月',
month3: '3 月',
month4: '4 月',
month5: '5 月',
month6: '6 月',
month7: '7 月',
month8: '8 月',
month9: '9 月',
month10: '10 月',
month11: '11 月',
month12: '12 月',
// week: '周次',
weeks: {
sun: '日',
mon: '一',
tue: '二',
wed: '三',
thu: '四',
fri: '五',
sat: '六'
},
months: {
jan: '一月',
feb: '二月',
mar: '三月',
apr: '四月',
may: '五月',
jun: '六月',
jul: '七月',
aug: '八月',
sep: '九月',
oct: '十月',
nov: '十一月',
dec: '十二月'
}
},
select: {
loading: '加载中',
noMatch: '无匹配数据',
noData: '无数据',
placeholder: '请选择'
},
cascader: {
noMatch: '无匹配数据',
loading: '加载中',
placeholder: '请选择'
},
pagination: {
goto: '前往',
pagesize: '条/页',
total: '共 {total} 条',
pageClassifier: '页'
},
messagebox: {
title: '提示',
confirm: '确定',
cancel: '取消',
error: '输入的数据不合法!'
},
upload: {
deleteTip: '按 delete 键可删除',
delete: '删除',
preview: '查看图片',
continue: '继续上传'
},
table: {
emptyText: '暂无数据',
confirmFilter: '筛选',
resetFilter: '重置',
clearFilter: '全部',
sumText: '合计'
},
tree: {
emptyText: '暂无数据'
},
transfer: {
noMatch: '无匹配数据',
noData: '无数据',
titles: ['列表 1', '列表 2'],
filterPlaceholder: '请输入搜索内容',
noCheckedFormat: '共 {total} 项',
hasCheckedFormat: '已选 {checked}/{total} 项'
}
}
};
+112
View File
@@ -0,0 +1,112 @@
'use strict';
exports.__esModule = true;
exports.default = {
el: {
colorpicker: {
confirm: '確認',
clear: '清空'
},
datepicker: {
now: '現在',
today: '今天',
cancel: '取消',
clear: '清空',
confirm: '確認',
selectDate: '選擇日期',
selectTime: '選擇時間',
startDate: '開始日期',
startTime: '開始時間',
endDate: '結束日期',
endTime: '結束時間',
prevYear: '前一年',
nextYear: '後一年',
prevMonth: '上個月',
nextMonth: '下個月',
year: '年',
month1: '1 月',
month2: '2 月',
month3: '3 月',
month4: '4 月',
month5: '5 月',
month6: '6 月',
month7: '7 月',
month8: '8 月',
month9: '9 月',
month10: '10 月',
month11: '11 月',
month12: '12 月',
// week: '周次',
weeks: {
sun: '日',
mon: '一',
tue: '二',
wed: '三',
thu: '四',
fri: '五',
sat: '六'
},
months: {
jan: '一月',
feb: '二月',
mar: '三月',
apr: '四月',
may: '五月',
jun: '六月',
jul: '七月',
aug: '八月',
sep: '九月',
oct: '十月',
nov: '十一月',
dec: '十二月'
}
},
select: {
loading: '加載中',
noMatch: '無匹配資料',
noData: '無資料',
placeholder: '請選擇'
},
cascader: {
noMatch: '無匹配資料',
loading: '加載中',
placeholder: '請選擇'
},
pagination: {
goto: '前往',
pagesize: '項/頁',
total: '共 {total} 項',
pageClassifier: '頁'
},
messagebox: {
title: '提示',
confirm: '確定',
cancel: '取消',
error: '輸入的資料不符規定!'
},
upload: {
deleteTip: '按 delete 鍵可刪除',
delete: '刪除',
preview: '查看圖片',
continue: '繼續上傳'
},
table: {
emptyText: '暫無資料',
confirmFilter: '篩選',
resetFilter: '重置',
clearFilter: '全部',
sumText: 'Sum' // to be translated
},
tree: {
emptyText: '暫無資料'
},
transfer: {
noMatch: '無匹配資料',
noData: '無資料',
titles: ['List 1', 'List 2'], // to be translated
filterPlaceholder: 'Enter keyword', // to be translated
noCheckedFormat: '{total} items', // to be translated
hasCheckedFormat: '{checked}/{total} checked' // to be translated
}
}
};
+263
View File
@@ -0,0 +1,263 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 105);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 105:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/main/src/main.vue?vue&type=template&id=2a3a7406&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c("main", { staticClass: "el-main" }, [_vm._t("default")], 2)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/main/src/main.vue?vue&type=template&id=2a3a7406&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/main/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
name: 'ElMain',
componentName: 'ElMain'
});
// CONCATENATED MODULE: ./packages/main/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/main/src/main.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_mainvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/main/src/main.vue"
/* harmony default export */ var main = (component.exports);
// CONCATENATED MODULE: ./packages/main/index.js
/* istanbul ignore next */
main.install = function (Vue) {
Vue.component(main.name, main);
};
/* harmony default export */ var packages_main = __webpack_exports__["default"] = (main);
/***/ })
/******/ });
+307
View File
@@ -0,0 +1,307 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 72);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 72:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item-group.vue?vue&type=template&id=543b7bdc&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c("li", { staticClass: "el-menu-item-group" }, [
_c(
"div",
{
staticClass: "el-menu-item-group__title",
style: { paddingLeft: _vm.levelPadding + "px" }
},
[!_vm.$slots.title ? [_vm._v(_vm._s(_vm.title))] : _vm._t("title")],
2
),
_c("ul", [_vm._t("default")], 2)
])
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/menu/src/menu-item-group.vue?vue&type=template&id=543b7bdc&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item-group.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var menu_item_groupvue_type_script_lang_js_ = ({
name: 'ElMenuItemGroup',
componentName: 'ElMenuItemGroup',
inject: ['rootMenu'],
props: {
title: {
type: String
}
},
data: function data() {
return {
paddingLeft: 20
};
},
computed: {
levelPadding: function levelPadding() {
var padding = 20;
var parent = this.$parent;
if (this.rootMenu.collapse) return 20;
while (parent && parent.$options.componentName !== 'ElMenu') {
if (parent.$options.componentName === 'ElSubmenu') {
padding += 20;
}
parent = parent.$parent;
}
return padding;
}
}
});
// CONCATENATED MODULE: ./packages/menu/src/menu-item-group.vue?vue&type=script&lang=js&
/* harmony default export */ var src_menu_item_groupvue_type_script_lang_js_ = (menu_item_groupvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/menu/src/menu-item-group.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_menu_item_groupvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/menu/src/menu-item-group.vue"
/* harmony default export */ var menu_item_group = (component.exports);
// CONCATENATED MODULE: ./packages/menu-item-group/index.js
/* istanbul ignore next */
menu_item_group.install = function (Vue) {
Vue.component(menu_item_group.name, menu_item_group);
};
/* harmony default export */ var packages_menu_item_group = __webpack_exports__["default"] = (menu_item_group);
/***/ })
/******/ });
+490
View File
@@ -0,0 +1,490 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 71);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 24:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/tooltip");
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 32:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony default export */ __webpack_exports__["a"] = ({
inject: ['rootMenu'],
computed: {
indexPath: function indexPath() {
var path = [this.index];
var parent = this.$parent;
while (parent.$options.componentName !== 'ElMenu') {
if (parent.index) {
path.unshift(parent.index);
}
parent = parent.$parent;
}
return path;
},
parentMenu: function parentMenu() {
var parent = this.$parent;
while (parent && ['ElMenu', 'ElSubmenu'].indexOf(parent.$options.componentName) === -1) {
parent = parent.$parent;
}
return parent;
},
paddingStyle: function paddingStyle() {
if (this.rootMenu.mode !== 'vertical') return {};
var padding = 20;
var parent = this.$parent;
if (this.rootMenu.collapse) {
padding = 20;
} else {
while (parent && parent.$options.componentName !== 'ElMenu') {
if (parent.$options.componentName === 'ElSubmenu') {
padding += 20;
}
parent = parent.$parent;
}
}
return { paddingLeft: padding + 'px' };
}
}
});
/***/ }),
/***/ 71:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item.vue?vue&type=template&id=2a5dbfea&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"li",
{
staticClass: "el-menu-item",
class: {
"is-active": _vm.active,
"is-disabled": _vm.disabled
},
style: [
_vm.paddingStyle,
_vm.itemStyle,
{ backgroundColor: _vm.backgroundColor }
],
attrs: { role: "menuitem", tabindex: "-1" },
on: {
click: _vm.handleClick,
mouseenter: _vm.onMouseEnter,
focus: _vm.onMouseEnter,
blur: _vm.onMouseLeave,
mouseleave: _vm.onMouseLeave
}
},
[
_vm.parentMenu.$options.componentName === "ElMenu" &&
_vm.rootMenu.collapse &&
_vm.$slots.title
? _c("el-tooltip", { attrs: { effect: "dark", placement: "right" } }, [
_c(
"div",
{ attrs: { slot: "content" }, slot: "content" },
[_vm._t("title")],
2
),
_c(
"div",
{
staticStyle: {
position: "absolute",
left: "0",
top: "0",
height: "100%",
width: "100%",
display: "inline-block",
"box-sizing": "border-box",
padding: "0 20px"
}
},
[_vm._t("default")],
2
)
])
: [_vm._t("default"), _vm._t("title")]
],
2
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/menu/src/menu-item.vue?vue&type=template&id=2a5dbfea&
// EXTERNAL MODULE: ./packages/menu/src/menu-mixin.js
var menu_mixin = __webpack_require__(32);
// EXTERNAL MODULE: external "element-ui/lib/tooltip"
var tooltip_ = __webpack_require__(24);
var tooltip_default = /*#__PURE__*/__webpack_require__.n(tooltip_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var menu_itemvue_type_script_lang_js_ = ({
name: 'ElMenuItem',
componentName: 'ElMenuItem',
mixins: [menu_mixin["a" /* default */], emitter_default.a],
components: { ElTooltip: tooltip_default.a },
props: {
index: {
default: null,
validator: function validator(val) {
return typeof val === 'string' || val === null;
}
},
route: [String, Object],
disabled: Boolean
},
computed: {
active: function active() {
return this.index === this.rootMenu.activeIndex;
},
hoverBackground: function hoverBackground() {
return this.rootMenu.hoverBackground;
},
backgroundColor: function backgroundColor() {
return this.rootMenu.backgroundColor || '';
},
activeTextColor: function activeTextColor() {
return this.rootMenu.activeTextColor || '';
},
textColor: function textColor() {
return this.rootMenu.textColor || '';
},
mode: function mode() {
return this.rootMenu.mode;
},
itemStyle: function itemStyle() {
var style = {
color: this.active ? this.activeTextColor : this.textColor
};
if (this.mode === 'horizontal' && !this.isNested) {
style.borderBottomColor = this.active ? this.rootMenu.activeTextColor ? this.activeTextColor : '' : 'transparent';
}
return style;
},
isNested: function isNested() {
return this.parentMenu !== this.rootMenu;
}
},
methods: {
onMouseEnter: function onMouseEnter() {
if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
this.$el.style.backgroundColor = this.hoverBackground;
},
onMouseLeave: function onMouseLeave() {
if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
this.$el.style.backgroundColor = this.backgroundColor;
},
handleClick: function handleClick() {
if (!this.disabled) {
this.dispatch('ElMenu', 'item-click', this);
this.$emit('click', this);
}
}
},
mounted: function mounted() {
this.parentMenu.addItem(this);
this.rootMenu.addItem(this);
},
beforeDestroy: function beforeDestroy() {
this.parentMenu.removeItem(this);
this.rootMenu.removeItem(this);
}
});
// CONCATENATED MODULE: ./packages/menu/src/menu-item.vue?vue&type=script&lang=js&
/* harmony default export */ var src_menu_itemvue_type_script_lang_js_ = (menu_itemvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/menu/src/menu-item.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_menu_itemvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/menu/src/menu-item.vue"
/* harmony default export */ var menu_item = (component.exports);
// CONCATENATED MODULE: ./packages/menu-item/index.js
/* istanbul ignore next */
menu_item.install = function (Vue) {
Vue.component(menu_item.name, menu_item);
};
/* harmony default export */ var packages_menu_item = __webpack_exports__["default"] = (menu_item);
/***/ })
/******/ });
+854
View File
@@ -0,0 +1,854 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 58);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 10:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/migrating");
/***/ }),
/***/ 2:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/dom");
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 58:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"
var migrating_ = __webpack_require__(10);
var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);
// CONCATENATED MODULE: ./src/utils/aria-utils.js
var aria = aria || {};
aria.Utils = aria.Utils || {};
/**
* @desc Set focus on descendant nodes until the first focusable element is
* found.
* @param element
* DOM node for which to find the first focusable descendant.
* @returns
* true if a focusable element is found and focus is set.
*/
aria.Utils.focusFirstDescendant = function (element) {
for (var i = 0; i < element.childNodes.length; i++) {
var child = element.childNodes[i];
if (aria.Utils.attemptFocus(child) || aria.Utils.focusFirstDescendant(child)) {
return true;
}
}
return false;
};
/**
* @desc Find the last descendant node that is focusable.
* @param element
* DOM node for which to find the last focusable descendant.
* @returns
* true if a focusable element is found and focus is set.
*/
aria.Utils.focusLastDescendant = function (element) {
for (var i = element.childNodes.length - 1; i >= 0; i--) {
var child = element.childNodes[i];
if (aria.Utils.attemptFocus(child) || aria.Utils.focusLastDescendant(child)) {
return true;
}
}
return false;
};
/**
* @desc Set Attempt to set focus on the current node.
* @param element
* The node to attempt to focus on.
* @returns
* true if element is focused.
*/
aria.Utils.attemptFocus = function (element) {
if (!aria.Utils.isFocusable(element)) {
return false;
}
aria.Utils.IgnoreUtilFocusChanges = true;
try {
element.focus();
} catch (e) {}
aria.Utils.IgnoreUtilFocusChanges = false;
return document.activeElement === element;
};
aria.Utils.isFocusable = function (element) {
if (element.tabIndex > 0 || element.tabIndex === 0 && element.getAttribute('tabIndex') !== null) {
return true;
}
if (element.disabled) {
return false;
}
switch (element.nodeName) {
case 'A':
return !!element.href && element.rel !== 'ignore';
case 'INPUT':
return element.type !== 'hidden' && element.type !== 'file';
case 'BUTTON':
case 'SELECT':
case 'TEXTAREA':
return true;
default:
return false;
}
};
/**
* 触发一个事件
* mouseenter, mouseleave, mouseover, keyup, change, click
* @param {Element} elm
* @param {String} name
* @param {*} opts
*/
aria.Utils.triggerEvent = function (elm, name) {
var eventName = void 0;
if (/^mouse|click/.test(name)) {
eventName = 'MouseEvents';
} else if (/^key/.test(name)) {
eventName = 'KeyboardEvent';
} else {
eventName = 'HTMLEvents';
}
var evt = document.createEvent(eventName);
for (var _len = arguments.length, opts = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
opts[_key - 2] = arguments[_key];
}
evt.initEvent.apply(evt, [name].concat(opts));
elm.dispatchEvent ? elm.dispatchEvent(evt) : elm.fireEvent('on' + name, evt);
return elm;
};
aria.Utils.keys = {
tab: 9,
enter: 13,
space: 32,
left: 37,
up: 38,
right: 39,
down: 40
};
/* harmony default export */ var aria_utils = (aria.Utils);
// CONCATENATED MODULE: ./src/utils/menu/aria-submenu.js
var SubMenu = function SubMenu(parent, domNode) {
this.domNode = domNode;
this.parent = parent;
this.subMenuItems = [];
this.subIndex = 0;
this.init();
};
SubMenu.prototype.init = function () {
this.subMenuItems = this.domNode.querySelectorAll('li');
this.addListeners();
};
SubMenu.prototype.gotoSubIndex = function (idx) {
if (idx === this.subMenuItems.length) {
idx = 0;
} else if (idx < 0) {
idx = this.subMenuItems.length - 1;
}
this.subMenuItems[idx].focus();
this.subIndex = idx;
};
SubMenu.prototype.addListeners = function () {
var _this = this;
var keys = aria_utils.keys;
var parentNode = this.parent.domNode;
Array.prototype.forEach.call(this.subMenuItems, function (el) {
el.addEventListener('keydown', function (event) {
var prevDef = false;
switch (event.keyCode) {
case keys.down:
_this.gotoSubIndex(_this.subIndex + 1);
prevDef = true;
break;
case keys.up:
_this.gotoSubIndex(_this.subIndex - 1);
prevDef = true;
break;
case keys.tab:
aria_utils.triggerEvent(parentNode, 'mouseleave');
break;
case keys.enter:
case keys.space:
prevDef = true;
event.currentTarget.click();
break;
}
if (prevDef) {
event.preventDefault();
event.stopPropagation();
}
return false;
});
});
};
/* harmony default export */ var aria_submenu = (SubMenu);
// CONCATENATED MODULE: ./src/utils/menu/aria-menuitem.js
var MenuItem = function MenuItem(domNode) {
this.domNode = domNode;
this.submenu = null;
this.init();
};
MenuItem.prototype.init = function () {
this.domNode.setAttribute('tabindex', '0');
var menuChild = this.domNode.querySelector('.el-menu');
if (menuChild) {
this.submenu = new aria_submenu(this, menuChild);
}
this.addListeners();
};
MenuItem.prototype.addListeners = function () {
var _this = this;
var keys = aria_utils.keys;
this.domNode.addEventListener('keydown', function (event) {
var prevDef = false;
switch (event.keyCode) {
case keys.down:
aria_utils.triggerEvent(event.currentTarget, 'mouseenter');
_this.submenu && _this.submenu.gotoSubIndex(0);
prevDef = true;
break;
case keys.up:
aria_utils.triggerEvent(event.currentTarget, 'mouseenter');
_this.submenu && _this.submenu.gotoSubIndex(_this.submenu.subMenuItems.length - 1);
prevDef = true;
break;
case keys.tab:
aria_utils.triggerEvent(event.currentTarget, 'mouseleave');
break;
case keys.enter:
case keys.space:
prevDef = true;
event.currentTarget.click();
break;
}
if (prevDef) {
event.preventDefault();
}
});
};
/* harmony default export */ var aria_menuitem = (MenuItem);
// CONCATENATED MODULE: ./src/utils/menu/aria-menubar.js
var Menu = function Menu(domNode) {
this.domNode = domNode;
this.init();
};
Menu.prototype.init = function () {
var menuChildren = this.domNode.childNodes;
[].filter.call(menuChildren, function (child) {
return child.nodeType === 1;
}).forEach(function (child) {
new aria_menuitem(child); // eslint-disable-line
});
};
/* harmony default export */ var aria_menubar = (Menu);
// EXTERNAL MODULE: external "element-ui/lib/utils/dom"
var dom_ = __webpack_require__(2);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu.vue?vue&type=script&lang=js&
/* harmony default export */ var menuvue_type_script_lang_js_ = ({
name: 'ElMenu',
render: function render(h) {
var component = h(
'ul',
{
attrs: {
role: 'menubar'
},
key: +this.collapse,
style: { backgroundColor: this.backgroundColor || '' },
'class': {
'el-menu--horizontal': this.mode === 'horizontal',
'el-menu--collapse': this.collapse,
"el-menu": true
}
},
[this.$slots.default]
);
if (this.collapseTransition) {
return h('el-menu-collapse-transition', [component]);
} else {
return component;
}
},
componentName: 'ElMenu',
mixins: [emitter_default.a, migrating_default.a],
provide: function provide() {
return {
rootMenu: this
};
},
components: {
'el-menu-collapse-transition': {
functional: true,
render: function render(createElement, context) {
var data = {
props: {
mode: 'out-in'
},
on: {
beforeEnter: function beforeEnter(el) {
el.style.opacity = 0.2;
},
enter: function enter(el) {
Object(dom_["addClass"])(el, 'el-opacity-transition');
el.style.opacity = 1;
},
afterEnter: function afterEnter(el) {
Object(dom_["removeClass"])(el, 'el-opacity-transition');
el.style.opacity = '';
},
beforeLeave: function beforeLeave(el) {
if (!el.dataset) el.dataset = {};
if (Object(dom_["hasClass"])(el, 'el-menu--collapse')) {
Object(dom_["removeClass"])(el, 'el-menu--collapse');
el.dataset.oldOverflow = el.style.overflow;
el.dataset.scrollWidth = el.clientWidth;
Object(dom_["addClass"])(el, 'el-menu--collapse');
} else {
Object(dom_["addClass"])(el, 'el-menu--collapse');
el.dataset.oldOverflow = el.style.overflow;
el.dataset.scrollWidth = el.clientWidth;
Object(dom_["removeClass"])(el, 'el-menu--collapse');
}
el.style.width = el.scrollWidth + 'px';
el.style.overflow = 'hidden';
},
leave: function leave(el) {
Object(dom_["addClass"])(el, 'horizontal-collapse-transition');
el.style.width = el.dataset.scrollWidth + 'px';
}
}
};
return createElement('transition', data, context.children);
}
}
},
props: {
mode: {
type: String,
default: 'vertical'
},
defaultActive: {
type: String,
default: ''
},
defaultOpeneds: Array,
uniqueOpened: Boolean,
router: Boolean,
menuTrigger: {
type: String,
default: 'hover'
},
collapse: Boolean,
backgroundColor: String,
textColor: String,
activeTextColor: String,
collapseTransition: {
type: Boolean,
default: true
}
},
data: function data() {
return {
activeIndex: this.defaultActive,
openedMenus: this.defaultOpeneds && !this.collapse ? this.defaultOpeneds.slice(0) : [],
items: {},
submenus: {}
};
},
computed: {
hoverBackground: function hoverBackground() {
return this.backgroundColor ? this.mixColor(this.backgroundColor, 0.2) : '';
},
isMenuPopup: function isMenuPopup() {
return this.mode === 'horizontal' || this.mode === 'vertical' && this.collapse;
}
},
watch: {
defaultActive: 'updateActiveIndex',
defaultOpeneds: function defaultOpeneds(value) {
if (!this.collapse) {
this.openedMenus = value;
}
},
collapse: function collapse(value) {
if (value) this.openedMenus = [];
this.broadcast('ElSubmenu', 'toggle-collapse', value);
}
},
methods: {
updateActiveIndex: function updateActiveIndex(val) {
var item = this.items[val] || this.items[this.activeIndex] || this.items[this.defaultActive];
if (item) {
this.activeIndex = item.index;
this.initOpenedMenu();
} else {
this.activeIndex = null;
}
},
getMigratingConfig: function getMigratingConfig() {
return {
props: {
'theme': 'theme is removed.'
}
};
},
getColorChannels: function getColorChannels(color) {
color = color.replace('#', '');
if (/^[0-9a-fA-F]{3}$/.test(color)) {
color = color.split('');
for (var i = 2; i >= 0; i--) {
color.splice(i, 0, color[i]);
}
color = color.join('');
}
if (/^[0-9a-fA-F]{6}$/.test(color)) {
return {
red: parseInt(color.slice(0, 2), 16),
green: parseInt(color.slice(2, 4), 16),
blue: parseInt(color.slice(4, 6), 16)
};
} else {
return {
red: 255,
green: 255,
blue: 255
};
}
},
mixColor: function mixColor(color, percent) {
var _getColorChannels = this.getColorChannels(color),
red = _getColorChannels.red,
green = _getColorChannels.green,
blue = _getColorChannels.blue;
if (percent > 0) {
// shade given color
red *= 1 - percent;
green *= 1 - percent;
blue *= 1 - percent;
} else {
// tint given color
red += (255 - red) * percent;
green += (255 - green) * percent;
blue += (255 - blue) * percent;
}
return 'rgb(' + Math.round(red) + ', ' + Math.round(green) + ', ' + Math.round(blue) + ')';
},
addItem: function addItem(item) {
this.$set(this.items, item.index, item);
},
removeItem: function removeItem(item) {
delete this.items[item.index];
},
addSubmenu: function addSubmenu(item) {
this.$set(this.submenus, item.index, item);
},
removeSubmenu: function removeSubmenu(item) {
delete this.submenus[item.index];
},
openMenu: function openMenu(index, indexPath) {
var openedMenus = this.openedMenus;
if (openedMenus.indexOf(index) !== -1) return;
// 将不在该菜单路径下的其余菜单收起
// collapse all menu that are not under current menu item
if (this.uniqueOpened) {
this.openedMenus = openedMenus.filter(function (index) {
return indexPath.indexOf(index) !== -1;
});
}
this.openedMenus.push(index);
},
closeMenu: function closeMenu(index) {
var i = this.openedMenus.indexOf(index);
if (i !== -1) {
this.openedMenus.splice(i, 1);
}
},
handleSubmenuClick: function handleSubmenuClick(submenu) {
var index = submenu.index,
indexPath = submenu.indexPath;
var isOpened = this.openedMenus.indexOf(index) !== -1;
if (isOpened) {
this.closeMenu(index);
this.$emit('close', index, indexPath);
} else {
this.openMenu(index, indexPath);
this.$emit('open', index, indexPath);
}
},
handleItemClick: function handleItemClick(item) {
var _this = this;
var index = item.index,
indexPath = item.indexPath;
var oldActiveIndex = this.activeIndex;
var hasIndex = item.index !== null;
if (hasIndex) {
this.activeIndex = item.index;
}
this.$emit('select', index, indexPath, item);
if (this.mode === 'horizontal' || this.collapse) {
this.openedMenus = [];
}
if (this.router && hasIndex) {
this.routeToItem(item, function (error) {
_this.activeIndex = oldActiveIndex;
if (error) console.error(error);
});
}
},
// 初始化展开菜单
// initialize opened menu
initOpenedMenu: function initOpenedMenu() {
var _this2 = this;
var index = this.activeIndex;
var activeItem = this.items[index];
if (!activeItem || this.mode === 'horizontal' || this.collapse) return;
var indexPath = activeItem.indexPath;
// 展开该菜单项的路径上所有子菜单
// expand all submenus of the menu item
indexPath.forEach(function (index) {
var submenu = _this2.submenus[index];
submenu && _this2.openMenu(index, submenu.indexPath);
});
},
routeToItem: function routeToItem(item, onError) {
var route = item.route || item.index;
try {
this.$router.push(route, function () {}, onError);
} catch (e) {
console.error(e);
}
},
open: function open(index) {
var _this3 = this;
var indexPath = this.submenus[index.toString()].indexPath;
indexPath.forEach(function (i) {
return _this3.openMenu(i, indexPath);
});
},
close: function close(index) {
this.closeMenu(index);
}
},
mounted: function mounted() {
this.initOpenedMenu();
this.$on('item-click', this.handleItemClick);
this.$on('submenu-click', this.handleSubmenuClick);
if (this.mode === 'horizontal') {
new aria_menubar(this.$el); // eslint-disable-line
}
this.$watch('items', this.updateActiveIndex);
}
});
// CONCATENATED MODULE: ./packages/menu/src/menu.vue?vue&type=script&lang=js&
/* harmony default export */ var src_menuvue_type_script_lang_js_ = (menuvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/menu/src/menu.vue
var menu_render, staticRenderFns
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_menuvue_type_script_lang_js_,
menu_render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/menu/src/menu.vue"
/* harmony default export */ var menu = (component.exports);
// CONCATENATED MODULE: ./packages/menu/index.js
/* istanbul ignore next */
menu.install = function (Vue) {
Vue.component(menu.name, menu);
};
/* harmony default export */ var packages_menu = __webpack_exports__["default"] = (menu);
/***/ })
/******/ });
+1184
View File
File diff suppressed because it is too large Load Diff
+510
View File
@@ -0,0 +1,510 @@
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/dist/";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 67);
/******/ })
/************************************************************************/
/******/ ({
/***/ 0:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */
// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.
function normalizeComponent (
scriptExports,
render,
staticRenderFns,
functionalTemplate,
injectStyles,
scopeId,
moduleIdentifier, /* server only */
shadowMode /* vue-cli only */
) {
// Vue.extend constructor export interop
var options = typeof scriptExports === 'function'
? scriptExports.options
: scriptExports
// render functions
if (render) {
options.render = render
options.staticRenderFns = staticRenderFns
options._compiled = true
}
// functional template
if (functionalTemplate) {
options.functional = true
}
// scopedId
if (scopeId) {
options._scopeId = 'data-v-' + scopeId
}
var hook
if (moduleIdentifier) { // server build
hook = function (context) {
// 2.3 injection
context =
context || // cached call
(this.$vnode && this.$vnode.ssrContext) || // stateful
(this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
// 2.2 with runInNewContext: true
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
// inject component styles
if (injectStyles) {
injectStyles.call(this, context)
}
// register component module identifier for async chunk inferrence
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier)
}
}
// used by ssr in case component is cached and beforeCreate
// never gets called
options._ssrRegister = hook
} else if (injectStyles) {
hook = shadowMode
? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
: injectStyles
}
if (hook) {
if (options.functional) {
// for template-only hot-reload because in that case the render fn doesn't
// go through the normalizer
options._injectStyles = hook
// register for functioal component in vue file
var originalRender = options.render
options.render = function renderWithStyleInjection (h, context) {
hook.call(context)
return originalRender(h, context)
}
} else {
// inject component registration as beforeCreate hook
var existing = options.beforeCreate
options.beforeCreate = existing
? [].concat(existing, hook)
: [hook]
}
}
return {
exports: scriptExports,
options: options
}
}
/***/ }),
/***/ 13:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/popup");
/***/ }),
/***/ 20:
/***/ (function(module, exports) {
module.exports = require("element-ui/lib/utils/vdom");
/***/ }),
/***/ 6:
/***/ (function(module, exports) {
module.exports = require("vue");
/***/ }),
/***/ 67:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// EXTERNAL MODULE: external "vue"
var external_vue_ = __webpack_require__(6);
var external_vue_default = /*#__PURE__*/__webpack_require__.n(external_vue_);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/message/src/main.vue?vue&type=template&id=455b9f60&
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"transition",
{
attrs: { name: "el-message-fade" },
on: { "after-leave": _vm.handleAfterLeave }
},
[
_c(
"div",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.visible,
expression: "visible"
}
],
class: [
"el-message",
_vm.type && !_vm.iconClass ? "el-message--" + _vm.type : "",
_vm.center ? "is-center" : "",
_vm.showClose ? "is-closable" : "",
_vm.customClass
],
attrs: { role: "alert" },
on: { mouseenter: _vm.clearTimer, mouseleave: _vm.startTimer }
},
[
_vm.iconClass
? _c("i", { class: _vm.iconClass })
: _c("i", { class: _vm.typeClass }),
_vm._t("default", [
!_vm.dangerouslyUseHTMLString
? _c("p", { staticClass: "el-message__content" }, [
_vm._v(_vm._s(_vm.message))
])
: _c("p", {
staticClass: "el-message__content",
domProps: { innerHTML: _vm._s(_vm.message) }
})
]),
_vm.showClose
? _c("i", {
staticClass: "el-message__closeBtn el-icon-close",
on: { click: _vm.close }
})
: _vm._e()
],
2
)
]
)
}
var staticRenderFns = []
render._withStripped = true
// CONCATENATED MODULE: ./packages/message/src/main.vue?vue&type=template&id=455b9f60&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/message/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
var typeMap = {
success: 'success',
info: 'info',
warning: 'warning',
error: 'error'
};
/* harmony default export */ var mainvue_type_script_lang_js_ = ({
data: function data() {
return {
visible: false,
message: '',
duration: 3000,
type: 'info',
iconClass: '',
customClass: '',
onClose: null,
showClose: false,
closed: false,
timer: null,
dangerouslyUseHTMLString: false,
center: false
};
},
computed: {
typeClass: function typeClass() {
return this.type && !this.iconClass ? 'el-message__icon el-icon-' + typeMap[this.type] : '';
}
},
watch: {
closed: function closed(newVal) {
if (newVal) {
this.visible = false;
}
}
},
methods: {
handleAfterLeave: function handleAfterLeave() {
this.$destroy(true);
this.$el.parentNode.removeChild(this.$el);
},
close: function close() {
this.closed = true;
if (typeof this.onClose === 'function') {
this.onClose(this);
}
},
clearTimer: function clearTimer() {
clearTimeout(this.timer);
},
startTimer: function startTimer() {
var _this = this;
if (this.duration > 0) {
this.timer = setTimeout(function () {
if (!_this.closed) {
_this.close();
}
}, this.duration);
}
},
keydown: function keydown(e) {
if (e.keyCode === 27) {
// esc关闭消息
if (!this.closed) {
this.close();
}
}
}
},
mounted: function mounted() {
this.startTimer();
document.addEventListener('keydown', this.keydown);
},
beforeDestroy: function beforeDestroy() {
document.removeEventListener('keydown', this.keydown);
}
});
// CONCATENATED MODULE: ./packages/message/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/message/src/main.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
src_mainvue_type_script_lang_js_,
render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/message/src/main.vue"
/* harmony default export */ var main = (component.exports);
// EXTERNAL MODULE: external "element-ui/lib/utils/popup"
var popup_ = __webpack_require__(13);
// EXTERNAL MODULE: external "element-ui/lib/utils/vdom"
var vdom_ = __webpack_require__(20);
// CONCATENATED MODULE: ./packages/message/src/main.js
var MessageConstructor = external_vue_default.a.extend(main);
var instance = void 0;
var instances = [];
var seed = 1;
var main_Message = function Message(options) {
if (external_vue_default.a.prototype.$isServer) return;
options = options || {};
if (typeof options === 'string') {
options = {
message: options
};
}
var userOnClose = options.onClose;
var id = 'message_' + seed++;
options.onClose = function () {
Message.close(id, userOnClose);
};
instance = new MessageConstructor({
data: options
});
instance.id = id;
if (Object(vdom_["isVNode"])(instance.message)) {
instance.$slots.default = [instance.message];
instance.message = null;
}
instance.vm = instance.$mount();
document.body.appendChild(instance.vm.$el);
instance.vm.visible = true;
instance.dom = instance.vm.$el;
instance.dom.style.zIndex = popup_["PopupManager"].nextZIndex();
instances.push(instance);
return instance.vm;
};
['success', 'warning', 'info', 'error'].forEach(function (type) {
main_Message[type] = function (options) {
if (typeof options === 'string') {
options = {
message: options
};
}
options.type = type;
return main_Message(options);
};
});
main_Message.close = function (id, userOnClose) {
for (var i = 0, len = instances.length; i < len; i++) {
if (id === instances[i].id) {
if (typeof userOnClose === 'function') {
userOnClose(instances[i]);
}
instances.splice(i, 1);
break;
}
}
};
main_Message.closeAll = function () {
for (var i = instances.length - 1; i >= 0; i--) {
instances[i].close();
}
};
/* harmony default export */ var src_main = (main_Message);
// CONCATENATED MODULE: ./packages/message/index.js
/* harmony default export */ var message = __webpack_exports__["default"] = (src_main);
/***/ })
/******/ });

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