cy-element-ui 1.1.25 → 1.1.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +265 -42
- package/lib/Alert.js +420 -0
- package/lib/Aside.js +277 -0
- package/lib/Autocomplete.js +2051 -0
- package/lib/Avatar.js +363 -0
- package/lib/Backtop.js +404 -0
- package/lib/Badge.js +334 -0
- package/lib/Breadcrumb.js +293 -0
- package/lib/BreadcrumbItem.js +322 -0
- package/lib/Button.js +357 -0
- package/lib/ButtonGroup.js +262 -0
- package/lib/Calendar.js +1146 -0
- package/lib/Card.js +297 -0
- package/lib/Carousel.js +707 -0
- package/lib/CarouselItem.js +434 -0
- package/lib/Cascader.js +4641 -0
- package/lib/CascaderPanel.js +2602 -0
- package/lib/Checkbox.js +627 -0
- package/lib/CheckboxButton.js +583 -0
- package/lib/CheckboxGroup.js +313 -0
- package/lib/Col.js +177 -0
- package/lib/Collapse.js +329 -0
- package/lib/CollapseItem.js +497 -0
- package/lib/ColorPicker.js +2885 -0
- package/lib/Container.js +288 -0
- package/lib/CySelectDisplayInput.js +383 -0
- package/lib/CySubTitle.js +304 -0
- package/lib/CyTabDialog.js +1228 -0
- package/lib/CyTreeSelect.js +4524 -0
- package/lib/DatePicker.js +7574 -0
- package/lib/Descriptions.js +457 -0
- package/lib/DescriptionsItem.js +140 -0
- package/lib/Dialog.js +598 -0
- package/lib/Divider.js +313 -0
- package/lib/Drawer.js +592 -0
- package/lib/Dropdown.js +856 -0
- package/lib/DropdownItem.js +316 -0
- package/lib/DropdownMenu.js +351 -0
- package/lib/Empty.js +730 -0
- package/lib/Footer.js +277 -0
- package/lib/Form.js +466 -0
- package/lib/FormItem.js +826 -0
- package/lib/Header.js +277 -0
- package/lib/Icon.js +265 -0
- package/lib/Image.js +1138 -0
- package/lib/InfiniteScroll.js +301 -0
- package/lib/Input.js +999 -0
- package/lib/InputNumber.js +1552 -0
- package/lib/Link.js +332 -0
- package/lib/Loading.js +631 -0
- package/lib/Main.js +264 -0
- package/lib/Menu.js +865 -0
- package/lib/MenuItem.js +818 -0
- package/lib/MenuItemGroup.js +308 -0
- package/lib/Message.js +548 -0
- package/lib/MessageBox.js +2134 -0
- package/lib/Notification.js +615 -0
- package/lib/Option.js +474 -0
- package/lib/OptionGroup.js +344 -0
- package/lib/PageHeader.js +319 -0
- package/lib/Pagination.js +4123 -0
- package/lib/Popconfirm.js +1025 -0
- package/lib/Popover.js +617 -0
- package/lib/Progress.js +595 -0
- package/lib/Radio.js +497 -0
- package/lib/RadioButton.js +463 -0
- package/lib/RadioGroup.js +391 -0
- package/lib/Rate.js +670 -0
- package/lib/Result.js +578 -0
- package/lib/Row.js +149 -0
- package/lib/Scrollbar.js +423 -0
- package/lib/Select.js +3368 -0
- package/lib/Skeleton.js +372 -0
- package/lib/SkeletonItem.js +342 -0
- package/lib/Slider.js +2854 -0
- package/lib/Spinner.js +301 -0
- package/lib/Statistic.js +533 -0
- package/lib/Step.js +522 -0
- package/lib/Steps.js +342 -0
- package/lib/Submenu.js +700 -0
- package/lib/Switch.js +554 -0
- package/lib/TabPane.js +332 -0
- package/lib/Table.js +6125 -0
- package/lib/TableColumn.js +1481 -0
- package/lib/Tabs.js +920 -0
- package/lib/Tag.js +304 -0
- package/lib/TimePicker.js +4059 -0
- package/lib/TimeSelect.js +2871 -0
- package/lib/Timeline.js +275 -0
- package/lib/TimelineItem.js +371 -0
- package/lib/Tooltip.js +425 -0
- package/lib/Transfer.js +2557 -0
- package/lib/Tree.js +2680 -0
- package/lib/Upload.js +1782 -0
- package/lib/directives/mousewheel.js +26 -0
- package/lib/directives/repeat-click.js +33 -0
- package/lib/element-ui.common.js +294 -248
- package/lib/index.js +2 -2
- package/lib/locale/format.js +55 -0
- package/lib/locale/index.js +63 -0
- package/lib/locale/lang/zh-CN.js +126 -0
- package/lib/mixins/emitter.js +36 -0
- package/lib/mixins/focus.js +15 -0
- package/lib/mixins/locale.js +17 -0
- package/lib/mixins/migrating.js +69 -0
- package/lib/theme-chalk/alert.css +1 -1
- package/lib/theme-chalk/button.css +1 -1
- package/lib/theme-chalk/calendar.css +1 -1
- package/lib/theme-chalk/cascader-panel.css +1 -1
- package/lib/theme-chalk/cascader.css +1 -1
- package/lib/theme-chalk/checkbox.css +1 -1
- package/lib/theme-chalk/color-picker.css +1 -1
- package/lib/theme-chalk/date-picker.css +1 -1
- package/lib/theme-chalk/dropdown.css +1 -1
- package/lib/theme-chalk/icon.css +1 -1
- package/lib/theme-chalk/index.css +1 -1
- package/lib/theme-chalk/link.css +1 -1
- package/lib/theme-chalk/menu.css +1 -1
- package/lib/theme-chalk/message-box.css +1 -1
- package/lib/theme-chalk/message.css +1 -1
- package/lib/theme-chalk/pagination.css +1 -1
- package/lib/theme-chalk/reset.css +1 -1
- package/lib/theme-chalk/select-dropdown.css +1 -1
- package/lib/theme-chalk/select.css +1 -1
- package/lib/theme-chalk/table-column.css +1 -1
- package/lib/theme-chalk/table.css +1 -1
- package/lib/theme-chalk/tag.css +1 -1
- package/lib/theme-chalk/time-picker.css +1 -1
- package/lib/theme-chalk/transfer.css +1 -1
- package/lib/theme-chalk/tree.css +1 -1
- package/lib/transitions/collapse-transition.js +91 -0
- package/lib/umd/locale/zh-CN.js +142 -0
- package/lib/utils/after-leave.js +35 -0
- package/lib/utils/aria-dialog.js +104 -0
- package/lib/utils/aria-utils.js +126 -0
- package/lib/utils/clickoutside.js +79 -0
- package/lib/utils/date-util.js +310 -0
- package/lib/utils/date.js +369 -0
- package/lib/utils/dom.js +234 -0
- package/lib/utils/lodash.js +9421 -0
- package/lib/utils/menu/aria-menubar.js +24 -0
- package/lib/utils/menu/aria-menuitem.js +62 -0
- package/lib/utils/menu/aria-submenu.js +69 -0
- package/lib/utils/merge.js +21 -0
- package/lib/utils/popper.js +1261 -0
- package/lib/utils/popup/index.js +233 -0
- package/lib/utils/popup/popup-manager.js +205 -0
- package/lib/utils/resize-event.js +59 -0
- package/lib/utils/scroll-into-view.js +38 -0
- package/lib/utils/scrollbar-width.js +39 -0
- package/lib/utils/shared.js +12 -0
- package/lib/utils/types.js +52 -0
- package/lib/utils/util.js +272 -0
- package/lib/utils/vdom.js +13 -0
- package/lib/utils/vue-popper.js +202 -0
- package/package.json +123 -135
- package/packages/alert/index.js +8 -8
- package/packages/alert/src/main.vue +94 -94
- package/packages/aside/index.js +8 -8
- package/packages/aside/src/main.vue +20 -20
- package/packages/autocomplete/index.js +8 -8
- package/packages/autocomplete/src/autocomplete-suggestions.vue +76 -76
- package/packages/autocomplete/src/autocomplete.vue +285 -285
- package/packages/avatar/index.js +8 -8
- package/packages/avatar/src/main.vue +107 -107
- package/packages/backtop/index.js +8 -8
- package/packages/backtop/src/main.vue +110 -110
- package/packages/badge/index.js +8 -8
- package/packages/badge/src/main.vue +53 -53
- package/packages/breadcrumb/index.js +8 -8
- package/packages/breadcrumb/src/breadcrumb-item.vue +41 -41
- package/packages/breadcrumb/src/breadcrumb.vue +34 -34
- package/packages/breadcrumb-item/index.js +8 -8
- package/packages/button/index.js +8 -8
- package/packages/button/src/button-group.vue +10 -10
- package/packages/button/src/button.vue +78 -78
- package/packages/button-group/index.js +8 -8
- package/packages/calendar/index.js +8 -8
- package/packages/calendar/src/date-table.vue +200 -200
- package/packages/calendar/src/main.vue +280 -280
- package/packages/card/index.js +8 -8
- package/packages/card/src/main.vue +23 -23
- package/packages/carousel/index.js +8 -8
- package/packages/carousel/src/item.vue +138 -138
- package/packages/carousel/src/main.vue +315 -315
- package/packages/carousel-item/index.js +8 -8
- package/packages/cascader/index.js +8 -8
- package/packages/cascader/src/cascader.vue +663 -663
- package/packages/cascader-panel/index.js +8 -8
- package/packages/cascader-panel/src/cascader-menu.vue +138 -138
- package/packages/cascader-panel/src/cascader-node.vue +246 -246
- package/packages/cascader-panel/src/cascader-panel.vue +391 -391
- package/packages/cascader-panel/src/node.js +165 -165
- package/packages/cascader-panel/src/store.js +57 -57
- package/packages/checkbox/index.js +8 -8
- package/packages/checkbox/src/checkbox-button.vue +199 -199
- package/packages/checkbox/src/checkbox-group.vue +48 -48
- package/packages/checkbox/src/checkbox.vue +222 -222
- package/packages/checkbox-button/index.js +8 -8
- package/packages/checkbox-group/index.js +8 -8
- package/packages/col/index.js +9 -9
- package/packages/col/src/col.js +71 -71
- package/packages/collapse/index.js +9 -9
- package/packages/collapse/src/collapse-item.vue +114 -114
- package/packages/collapse/src/collapse.vue +73 -73
- package/packages/collapse-item/index.js +8 -8
- package/packages/color-picker/index.js +8 -8
- package/packages/color-picker/src/color.js +317 -317
- package/packages/color-picker/src/components/alpha-slider.vue +132 -132
- package/packages/color-picker/src/components/hue-slider.vue +123 -123
- package/packages/color-picker/src/components/picker-dropdown.vue +121 -121
- package/packages/color-picker/src/components/predefine.vue +61 -61
- package/packages/color-picker/src/components/sv-panel.vue +100 -100
- package/packages/color-picker/src/draggable.js +36 -36
- package/packages/color-picker/src/main.vue +188 -188
- package/packages/container/index.js +8 -8
- package/packages/container/src/main.vue +33 -33
- package/packages/cy/selectDisplayInput/index.js +8 -8
- package/packages/cy/selectDisplayInput/src/main.vue +23 -11
- package/packages/cy/subTitle/index.js +7 -7
- package/packages/cy/subTitle/src/main.vue +9 -0
- package/packages/cy/tabDialog/index.js +23 -23
- package/packages/cy/tabDialog/src/dialog/drag.js +63 -63
- package/packages/cy/tabDialog/src/dialog/dragHeight.js +34 -34
- package/packages/cy/tabDialog/src/dialog/dragWidth.js +30 -30
- package/packages/cy/tabDialog/src/main.vue +61 -23
- package/packages/cy/treeSelect/index.js +7 -7
- package/packages/cy/treeSelect/src/main.vue +93 -5
- package/packages/date-picker/index.js +8 -8
- package/packages/date-picker/src/basic/date-table.vue +441 -441
- package/packages/date-picker/src/basic/month-table.vue +268 -268
- package/packages/date-picker/src/basic/time-spinner.vue +304 -304
- package/packages/date-picker/src/basic/year-table.vue +111 -111
- package/packages/date-picker/src/panel/date-range.vue +680 -680
- package/packages/date-picker/src/panel/date.vue +609 -609
- package/packages/date-picker/src/panel/month-range.vue +289 -289
- package/packages/date-picker/src/panel/time-range.vue +248 -248
- package/packages/date-picker/src/panel/time-select.vue +178 -178
- package/packages/date-picker/src/panel/time.vue +186 -186
- package/packages/date-picker/src/picker/date-picker.js +43 -43
- package/packages/date-picker/src/picker/time-picker.js +39 -39
- package/packages/date-picker/src/picker/time-select.js +21 -21
- package/packages/date-picker/src/picker.vue +956 -956
- package/packages/descriptions/index.js +8 -8
- package/packages/descriptions/src/descriptions-item.js +30 -30
- package/packages/descriptions/src/descriptions-row.js +116 -116
- package/packages/descriptions/src/index.js +180 -180
- package/packages/descriptions-item/index.js +8 -8
- package/packages/dialog/index.js +8 -8
- package/packages/dialog/src/component.vue +212 -212
- package/packages/divider/index.js +8 -8
- package/packages/divider/src/main.vue +37 -37
- package/packages/drawer/index.js +8 -8
- package/packages/drawer/src/main.vue +205 -205
- package/packages/dropdown/index.js +8 -8
- package/packages/dropdown/src/dropdown-item.vue +37 -37
- package/packages/dropdown/src/dropdown-menu.vue +63 -63
- package/packages/dropdown/src/dropdown.vue +293 -293
- package/packages/dropdown-item/index.js +8 -8
- package/packages/dropdown-menu/index.js +8 -8
- package/packages/empty/index.js +7 -7
- package/packages/empty/src/img-empty.vue +132 -132
- package/packages/empty/src/index.vue +50 -50
- package/packages/footer/index.js +8 -8
- package/packages/footer/src/main.vue +20 -20
- package/packages/form/index.js +8 -8
- package/packages/form/src/form-item.vue +324 -324
- package/packages/form/src/form.vue +182 -182
- package/packages/form/src/label-wrap.vue +78 -78
- package/packages/form-item/index.js +8 -8
- package/packages/header/index.js +8 -8
- package/packages/header/src/main.vue +20 -20
- package/packages/icon/index.js +8 -8
- package/packages/icon/src/icon.vue +13 -13
- package/packages/image/index.js +8 -8
- package/packages/image/src/image-viewer.vue +330 -330
- package/packages/image/src/main.vue +249 -249
- package/packages/infinite-scroll/index.js +8 -8
- package/packages/infinite-scroll/src/main.js +149 -149
- package/packages/input/index.js +8 -8
- package/packages/input/src/calcTextareaHeight.js +104 -104
- package/packages/input/src/input.vue +440 -440
- package/packages/input-number/index.js +8 -8
- package/packages/input-number/src/input-number.vue +286 -286
- package/packages/link/index.js +8 -8
- package/packages/link/src/main.vue +53 -53
- package/packages/loading/index.js +11 -11
- package/packages/loading/src/directive.js +133 -133
- package/packages/loading/src/index.js +106 -106
- package/packages/loading/src/loading.vue +41 -41
- package/packages/main/index.js +8 -8
- package/packages/main/src/main.vue +12 -12
- package/packages/menu/index.js +8 -8
- package/packages/menu/src/menu-item-group.vue +45 -45
- package/packages/menu/src/menu-item.vue +112 -112
- package/packages/menu/src/menu-mixin.js +44 -44
- package/packages/menu/src/menu.vue +325 -325
- package/packages/menu/src/submenu.vue +348 -348
- package/packages/menu-item/index.js +8 -8
- package/packages/menu-item-group/index.js +8 -8
- package/packages/message/index.js +2 -2
- package/packages/message/src/main.js +91 -91
- package/packages/message/src/main.vue +117 -117
- package/packages/message-box/index.js +2 -2
- package/packages/message-box/src/main.js +216 -216
- package/packages/message-box/src/main.vue +332 -332
- package/packages/notification/index.js +2 -2
- package/packages/notification/src/main.js +94 -94
- package/packages/notification/src/main.vue +152 -152
- package/packages/option/index.js +8 -8
- package/packages/option-group/index.js +8 -8
- package/packages/page-header/index.js +8 -8
- package/packages/page-header/src/main.vue +30 -30
- package/packages/pagination/index.js +8 -8
- package/packages/pagination/src/pager.vue +163 -163
- package/packages/pagination/src/pagination.js +386 -386
- package/packages/popconfirm/index.js +8 -8
- package/packages/popconfirm/src/main.vue +104 -104
- package/packages/popover/index.js +14 -14
- package/packages/popover/src/directive.js +20 -20
- package/packages/popover/src/main.vue +237 -237
- package/packages/progress/index.js +8 -8
- package/packages/progress/src/progress.vue +235 -235
- package/packages/radio/index.js +8 -8
- package/packages/radio/src/radio-button.vue +115 -115
- package/packages/radio/src/radio-group.vue +113 -113
- package/packages/radio/src/radio.vue +134 -134
- package/packages/radio-button/index.js +8 -8
- package/packages/radio-group/index.js +8 -8
- package/packages/rate/index.js +8 -8
- package/packages/rate/src/main.vue +348 -348
- package/packages/result/index.js +8 -8
- package/packages/result/src/icon-error.vue +13 -13
- package/packages/result/src/icon-info.vue +13 -13
- package/packages/result/src/icon-success.vue +13 -13
- package/packages/result/src/icon-warning.vue +13 -13
- package/packages/result/src/index.vue +65 -65
- package/packages/row/index.js +9 -9
- package/packages/row/src/row.js +44 -44
- package/packages/scrollbar/index.js +8 -8
- package/packages/scrollbar/src/bar.js +92 -92
- package/packages/scrollbar/src/main.js +130 -130
- package/packages/scrollbar/src/util.js +34 -34
- package/packages/select/index.js +8 -8
- package/packages/select/src/navigation-mixin.js +54 -54
- package/packages/select/src/option-group.vue +60 -60
- package/packages/select/src/option.vue +168 -168
- package/packages/select/src/select-dropdown.vue +74 -74
- package/packages/select/src/select.vue +900 -900
- package/packages/skeleton/index.js +8 -8
- package/packages/skeleton/src/img-placeholder.vue +16 -16
- package/packages/skeleton/src/index.vue +76 -76
- package/packages/skeleton/src/item.vue +22 -22
- package/packages/skeleton-item/index.js +8 -8
- package/packages/slider/index.js +8 -8
- package/packages/slider/src/button.vue +238 -238
- package/packages/slider/src/main.vue +427 -427
- package/packages/slider/src/marker.js +18 -18
- package/packages/spinner/index.js +8 -8
- package/packages/spinner/src/spinner.vue +27 -27
- package/packages/statistic/index.js +8 -8
- package/packages/statistic/src/main.vue +203 -203
- package/packages/step/index.js +8 -8
- package/packages/steps/README.md +69 -69
- package/packages/steps/index.js +8 -8
- package/packages/steps/src/step.vue +184 -184
- package/packages/steps/src/steps.vue +68 -68
- package/packages/submenu/index.js +8 -8
- package/packages/switch/index.js +9 -9
- package/packages/switch/src/component.vue +174 -174
- package/packages/tab-pane/index.js +8 -8
- package/packages/table/index.js +8 -8
- package/packages/table/src/config.js +124 -124
- package/packages/table/src/dropdown.js +28 -28
- package/packages/table/src/filter-panel.vue +194 -194
- package/packages/table/src/layout-observer.js +68 -68
- package/packages/table/src/store/current.js +76 -76
- package/packages/table/src/store/expand.js +65 -65
- package/packages/table/src/store/helper.js +41 -41
- package/packages/table/src/store/index.js +147 -147
- package/packages/table/src/store/tree.js +209 -209
- package/packages/table/src/store/watcher.js +381 -381
- package/packages/table/src/table-body.js +469 -469
- package/packages/table/src/table-column.js +319 -319
- package/packages/table/src/table-footer.js +153 -153
- package/packages/table/src/table-header.js +511 -511
- package/packages/table/src/table-layout.js +249 -249
- package/packages/table/src/table-row.js +101 -101
- package/packages/table/src/table.vue +712 -712
- package/packages/table/src/util.js +273 -273
- package/packages/table-column/index.js +8 -8
- package/packages/tabs/index.js +8 -8
- package/packages/tabs/src/tab-bar.vue +57 -57
- package/packages/tabs/src/tab-nav.vue +294 -294
- package/packages/tabs/src/tab-pane.vue +56 -56
- package/packages/tabs/src/tabs.vue +191 -191
- package/packages/tag/index.js +8 -8
- package/packages/tag/src/tag.vue +58 -58
- package/packages/theme-chalk/README.md +33 -33
- package/packages/theme-chalk/gulpfile.js +24 -24
- package/packages/theme-chalk/package.json +35 -35
- package/packages/theme-chalk/src/alert.scss +147 -147
- package/packages/theme-chalk/src/aside.scss +7 -7
- package/packages/theme-chalk/src/autocomplete.scss +80 -80
- package/packages/theme-chalk/src/avatar.scss +51 -51
- package/packages/theme-chalk/src/backtop.scss +22 -22
- package/packages/theme-chalk/src/badge.scss +57 -57
- package/packages/theme-chalk/src/base.scss +2 -2
- package/packages/theme-chalk/src/breadcrumb.scss +55 -55
- package/packages/theme-chalk/src/button.scss +262 -262
- package/packages/theme-chalk/src/calendar.scss +79 -79
- package/packages/theme-chalk/src/card.scss +32 -32
- package/packages/theme-chalk/src/carousel-item.scss +49 -49
- package/packages/theme-chalk/src/carousel.scss +161 -161
- package/packages/theme-chalk/src/cascader-panel.scss +120 -120
- package/packages/theme-chalk/src/cascader.scss +182 -182
- package/packages/theme-chalk/src/checkbox.scss +359 -359
- package/packages/theme-chalk/src/col.scss +155 -155
- package/packages/theme-chalk/src/collapse.scss +63 -63
- package/packages/theme-chalk/src/color-picker.scss +384 -384
- package/packages/theme-chalk/src/common/popup.scss +42 -42
- package/packages/theme-chalk/src/common/transition.scss +98 -98
- package/packages/theme-chalk/src/common/var.scss +1028 -1028
- package/packages/theme-chalk/src/container.scss +14 -14
- package/packages/theme-chalk/src/cy/base.scss +3 -3
- package/packages/theme-chalk/src/cy/index.scss +5 -6
- package/packages/theme-chalk/src/cy/selectDisplayInput.scss +75 -75
- package/packages/theme-chalk/src/cy/subTitle.scss +26 -26
- package/packages/theme-chalk/src/cy/tabDialog.scss +43 -43
- package/packages/theme-chalk/src/cy/treeSelect.scss +131 -131
- package/packages/theme-chalk/src/date-picker/date-picker.scss +97 -97
- package/packages/theme-chalk/src/date-picker/date-range-picker.scss +101 -101
- package/packages/theme-chalk/src/date-picker/date-table.scss +151 -151
- package/packages/theme-chalk/src/date-picker/month-table.scss +82 -82
- package/packages/theme-chalk/src/date-picker/picker-panel.scss +117 -117
- package/packages/theme-chalk/src/date-picker/picker.scss +197 -197
- package/packages/theme-chalk/src/date-picker/time-picker.scss +85 -85
- package/packages/theme-chalk/src/date-picker/time-range-picker.scss +31 -31
- package/packages/theme-chalk/src/date-picker/time-spinner.scss +110 -110
- package/packages/theme-chalk/src/date-picker/year-table.scss +51 -51
- package/packages/theme-chalk/src/date-picker.scss +11 -11
- package/packages/theme-chalk/src/descriptions-item.scss +42 -42
- package/packages/theme-chalk/src/descriptions.scss +111 -111
- package/packages/theme-chalk/src/dialog.scss +123 -123
- package/packages/theme-chalk/src/display.scss +12 -12
- package/packages/theme-chalk/src/divider.scss +46 -46
- package/packages/theme-chalk/src/drawer.scss +219 -219
- package/packages/theme-chalk/src/dropdown.scss +182 -182
- package/packages/theme-chalk/src/empty.scss +45 -45
- package/packages/theme-chalk/src/footer.scss +8 -8
- package/packages/theme-chalk/src/form.scss +167 -167
- package/packages/theme-chalk/src/header.scss +8 -8
- package/packages/theme-chalk/src/icon.scss +1167 -1167
- package/packages/theme-chalk/src/image.scss +179 -179
- package/packages/theme-chalk/src/input-number.scss +261 -261
- package/packages/theme-chalk/src/input.scss +360 -360
- package/packages/theme-chalk/src/link.scss +81 -81
- package/packages/theme-chalk/src/loading.scss +96 -96
- package/packages/theme-chalk/src/main.scss +12 -12
- package/packages/theme-chalk/src/menu.scss +289 -289
- package/packages/theme-chalk/src/message-box.scss +226 -226
- package/packages/theme-chalk/src/message.scss +120 -120
- package/packages/theme-chalk/src/mixins/_button.scss +81 -81
- package/packages/theme-chalk/src/mixins/config.scss +4 -4
- package/packages/theme-chalk/src/mixins/function.scss +44 -44
- package/packages/theme-chalk/src/mixins/mixins.scss +191 -191
- package/packages/theme-chalk/src/mixins/utils.scss +38 -38
- package/packages/theme-chalk/src/notification.scss +99 -99
- package/packages/theme-chalk/src/option-group.scss +42 -42
- package/packages/theme-chalk/src/option.scss +36 -36
- package/packages/theme-chalk/src/page-header.scss +41 -41
- package/packages/theme-chalk/src/pagination.scss +295 -295
- package/packages/theme-chalk/src/popconfirm.scss +16 -16
- package/packages/theme-chalk/src/popover.scss +40 -40
- package/packages/theme-chalk/src/popper.scss +100 -100
- package/packages/theme-chalk/src/progress.scss +141 -141
- package/packages/theme-chalk/src/radio-button.scss +113 -113
- package/packages/theme-chalk/src/radio-group.scss +9 -9
- package/packages/theme-chalk/src/radio.scss +199 -199
- package/packages/theme-chalk/src/rate.scss +49 -49
- package/packages/theme-chalk/src/reset.scss +79 -79
- package/packages/theme-chalk/src/result.scss +61 -61
- package/packages/theme-chalk/src/row.scss +43 -43
- package/packages/theme-chalk/src/scrollbar.scss +72 -72
- package/packages/theme-chalk/src/select-dropdown.scss +62 -62
- package/packages/theme-chalk/src/select.scss +152 -152
- package/packages/theme-chalk/src/skeleton-item.scss +84 -84
- package/packages/theme-chalk/src/skeleton.scss +40 -40
- package/packages/theme-chalk/src/slider.scss +250 -250
- package/packages/theme-chalk/src/spinner.scss +44 -44
- package/packages/theme-chalk/src/statistic.scss +38 -38
- package/packages/theme-chalk/src/step.scss +317 -317
- package/packages/theme-chalk/src/steps.scss +20 -20
- package/packages/theme-chalk/src/switch.scss +116 -116
- package/packages/theme-chalk/src/table-column.scss +96 -96
- package/packages/theme-chalk/src/table.scss +564 -564
- package/packages/theme-chalk/src/tabs.scss +602 -602
- package/packages/theme-chalk/src/tag.scss +163 -163
- package/packages/theme-chalk/src/time-picker.scss +8 -8
- package/packages/theme-chalk/src/time-select.scss +37 -37
- package/packages/theme-chalk/src/timeline-item.scss +86 -86
- package/packages/theme-chalk/src/timeline.scss +14 -14
- package/packages/theme-chalk/src/tooltip.scss +141 -141
- package/packages/theme-chalk/src/transfer.scss +227 -227
- package/packages/theme-chalk/src/tree.scss +123 -123
- package/packages/theme-chalk/src/upload.scss +603 -603
- package/packages/time-picker/index.js +8 -8
- package/packages/time-select/index.js +8 -8
- package/packages/timeline/index.js +8 -8
- package/packages/timeline/src/item.vue +73 -73
- package/packages/timeline/src/main.vue +33 -33
- package/packages/timeline-item/index.js +8 -8
- package/packages/tooltip/index.js +8 -8
- package/packages/tooltip/src/main.js +242 -242
- package/packages/transfer/index.js +8 -8
- package/packages/transfer/src/main.vue +231 -231
- package/packages/transfer/src/transfer-panel.vue +251 -251
- package/packages/tree/index.js +8 -8
- package/packages/tree/src/model/node.js +484 -484
- package/packages/tree/src/model/tree-store.js +340 -340
- package/packages/tree/src/model/util.js +27 -27
- package/packages/tree/src/tree-node.vue +279 -279
- package/packages/tree/src/tree.vue +496 -496
- package/packages/upload/index.js +8 -8
- package/packages/upload/src/ajax.js +85 -85
- package/packages/upload/src/index.vue +338 -338
- package/packages/upload/src/upload-dragger.vue +70 -70
- package/packages/upload/src/upload-list.vue +105 -105
- package/packages/upload/src/upload.vue +211 -211
- package/src/directives/mousewheel.js +18 -18
- package/src/directives/repeat-click.js +26 -26
- package/src/index.js +4 -7
- package/src/locale/format.js +45 -45
- package/src/locale/index.js +48 -48
- package/src/locale/lang/zh-CN.js +123 -123
- package/src/mixins/emitter.js +33 -33
- package/src/mixins/focus.js +9 -9
- package/src/mixins/locale.js +9 -9
- package/src/mixins/migrating.js +54 -54
- package/src/transitions/collapse-transition.js +77 -77
- package/src/utils/after-leave.js +27 -27
- package/src/utils/aria-dialog.js +90 -90
- package/src/utils/aria-utils.js +122 -122
- package/src/utils/clickoutside.js +76 -76
- package/src/utils/date-util.js +282 -282
- package/src/utils/date.js +368 -368
- package/src/utils/dom.js +227 -227
- package/src/utils/lodash.js +18075 -18075
- package/src/utils/menu/aria-menubar.js +14 -14
- package/src/utils/menu/aria-menuitem.js +49 -49
- package/src/utils/menu/aria-submenu.js +59 -59
- package/src/utils/merge.js +15 -15
- package/src/utils/popper.js +1276 -1276
- package/src/utils/popup/index.js +218 -218
- package/src/utils/popup/popup-manager.js +194 -194
- package/src/utils/resize-event.js +36 -36
- package/src/utils/scroll-into-view.js +27 -27
- package/src/utils/scrollbar-width.js +29 -29
- package/src/utils/shared.js +7 -7
- package/src/utils/types.js +40 -40
- package/src/utils/util.js +245 -245
- package/src/utils/vdom.js +5 -5
- package/src/utils/vue-popper.js +198 -198
- package/types/alert.d.ts +31 -31
- package/types/aside.d.ts +7 -7
- package/types/autocomplete.d.ts +78 -78
- package/types/avatar.d.ts +20 -20
- package/types/backtop.d.ts +16 -16
- package/types/badge.d.ts +16 -16
- package/types/breadcrumb-item.d.ts +10 -10
- package/types/breadcrumb.d.ts +10 -10
- package/types/button-group.d.ts +4 -4
- package/types/button.d.ts +37 -37
- package/types/calendar.d.ts +15 -15
- package/types/card.d.ts +26 -26
- package/types/carousel-item.d.ts +10 -10
- package/types/carousel.d.ts +57 -57
- package/types/cascader-panel.d.ts +72 -72
- package/types/cascader.d.ts +65 -65
- package/types/checkbox-button.d.ts +22 -22
- package/types/checkbox-group.d.ts +22 -22
- package/types/checkbox.d.ts +34 -34
- package/types/col.d.ts +46 -46
- package/types/collapse-item.d.ts +26 -26
- package/types/collapse.d.ts +10 -10
- package/types/color-picker.d.ts +21 -21
- package/types/component.d.ts +13 -13
- package/types/container.d.ts +7 -7
- package/types/cy/cy-element-ui.d.ts +0 -4
- package/types/date-picker.d.ts +124 -124
- package/types/descriptions-item.d.ts +37 -37
- package/types/descriptions.d.ts +52 -52
- package/types/dialog.d.ts +62 -62
- package/types/divider.d.ts +12 -12
- package/types/drawer.d.ts +63 -63
- package/types/dropdown-item.d.ts +16 -16
- package/types/dropdown-menu.d.ts +4 -4
- package/types/dropdown.d.ts +38 -38
- package/types/empty.d.ts +31 -31
- package/types/footer.d.ts +7 -7
- package/types/form-item.d.ts +37 -37
- package/types/form.d.ts +82 -82
- package/types/header.d.ts +7 -7
- package/types/icon.d.ts +7 -7
- package/types/image.d.ts +43 -43
- package/types/index.d.ts +5 -5
- package/types/infinite-scroll.d.ts +5 -5
- package/types/input-number.d.ts +47 -47
- package/types/input.d.ts +107 -107
- package/types/link.d.ts +25 -25
- package/types/loading.d.ts +62 -62
- package/types/main.d.ts +4 -4
- package/types/menu-item-group.d.ts +7 -7
- package/types/menu-item.d.ts +10 -10
- package/types/menu.d.ts +46 -46
- package/types/message-box.d.ts +176 -176
- package/types/message.d.ts +90 -90
- package/types/notification.d.ts +84 -84
- package/types/option-group.d.ts +10 -10
- package/types/option.d.ts +13 -13
- package/types/page-header.d.ts +10 -10
- package/types/pagination.d.ts +43 -43
- package/types/popconfirm.d.ts +29 -29
- package/types/popover.d.ts +71 -71
- package/types/progress.d.ts +37 -37
- package/types/radio-button.d.ts +16 -16
- package/types/radio-group.d.ts +18 -18
- package/types/radio.d.ts +19 -19
- package/types/rate.d.ts +64 -64
- package/types/result.d.ts +33 -33
- package/types/row.d.ts +25 -25
- package/types/select.d.ts +90 -90
- package/types/skeleton-item.d.ts +7 -7
- package/types/skeleton.d.ts +33 -33
- package/types/slider.d.ts +68 -68
- package/types/spinner.d.ts +16 -16
- package/types/statistic.d.ts +37 -37
- package/types/step.d.ts +34 -34
- package/types/steps.d.ts +28 -28
- package/types/submenu.d.ts +22 -22
- package/types/switch.d.ts +43 -43
- package/types/tab-pane.d.ts +19 -19
- package/types/table-column.d.ts +117 -117
- package/types/table.d.ts +177 -177
- package/types/tabs.d.ts +31 -31
- package/types/tag.d.ts +28 -28
- package/types/time-picker.d.ts +63 -63
- package/types/time-select.d.ts +56 -56
- package/types/timeline-item.d.ts +20 -20
- package/types/timeline.d.ts +6 -6
- package/types/tooltip.d.ts +52 -52
- package/types/transfer.d.ts +73 -73
- package/types/tree.d.ts +266 -266
- package/types/upload.d.ts +124 -124
- package/web-types.json +4910 -4195
- package/lib/theme-chalk/testComponent.css +0 -1
- package/packages/cy/testComponent/index.js +0 -8
- package/packages/cy/testComponent/src/main.vue +0 -44
- package/packages/examples/demo-styles/cy/testComponent.scss +0 -3
- package/packages/examples/docs/en-US/cy/cy-testComponent.md +0 -1
- package/packages/examples/docs/zh-CN/cy/cy-testComponent.md +0 -1
- package/packages/packages/theme-chalk/src/cy/testComponent.scss +0 -4
- package/packages/theme-chalk/src/cy/testComponent.scss +0 -76
- package/types/cy/test-component.d.ts +0 -7
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
The MIT License (MIT)
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2016-present ElemeFE
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2016-present ElemeFE
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# cy-element-ui 组件开发指南
|
|
2
2
|
|
|
3
|
+
## 环境要求
|
|
4
|
+
|
|
5
|
+
| 工具 | 版本要求 | 说明 |
|
|
6
|
+
|------|---------|------|
|
|
7
|
+
| **Node.js** | >= 14.x(推荐 16.x) | 项目使用 webpack 4 + Babel 6,需 Node.js 支持 |
|
|
8
|
+
| **npm** | >= 6.x | 包管理器,也可使用 yarn |
|
|
9
|
+
| **Git** | 任意版本 | 用于版本管理和发布流程 |
|
|
10
|
+
| **Make** | 可选 | Linux/macOS 原生支持;Windows 下可用 [Gow](https://github.com/bmatzku/gow)、[MinGW](http://www.mingw.org/) 或直接用 `node build/bin/new-cy.js` 替代 make 命令 |
|
|
11
|
+
|
|
12
|
+
> Windows 用户注意:`make new-cy xxx` 可替换为 `node build/bin/new-cy.js xxx`,效果完全相同。
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
3
16
|
## 一、在项目中安装使用
|
|
4
17
|
|
|
5
18
|
### 1.1 安装依赖
|
|
@@ -129,13 +142,14 @@ export default {
|
|
|
129
142
|
### 2.1 整体架构
|
|
130
143
|
|
|
131
144
|
```
|
|
132
|
-
|
|
145
|
+
chanyan-ui/ # 项目根目录
|
|
133
146
|
├── build/ # 构建工具目录
|
|
134
147
|
│ ├── bin/ # 脚本命令
|
|
135
148
|
│ │ ├── build-entry.js # 生成入口文件脚本
|
|
136
149
|
│ │ ├── gen-cy-types.js # 生成cy组件类型定义
|
|
137
150
|
│ │ ├── new.js # 创建el组件脚本
|
|
138
151
|
│ │ └── new-cy.js # 创建cy组件脚本
|
|
152
|
+
│ ├── dist.js # 完整构建脚本(Node API方式,替代CLI)
|
|
139
153
|
│ ├── webpack.conf.js # UMD构建配置
|
|
140
154
|
│ ├── webpack.common.js # CommonJS构建配置
|
|
141
155
|
│ ├── webpack.component.js # 组件单独构建配置
|
|
@@ -144,8 +158,12 @@ element-dev/ # 项目根目录
|
|
|
144
158
|
│ ├── docs/ # 文档内容
|
|
145
159
|
│ │ └── zh-CN/ # 中文文档
|
|
146
160
|
│ │ └── cy/ # 产研组件文档
|
|
161
|
+
│ ├── pages/zh-CN/ # 页面容器
|
|
162
|
+
│ │ ├── component.vue # 组件页容器(Element UI组件+开发指南等)
|
|
163
|
+
│ │ ├── independent.vue # 独立菜单通用容器(如产研)
|
|
164
|
+
│ │ └── index.vue # 首页
|
|
147
165
|
│ ├── nav.config.json # 导航配置
|
|
148
|
-
│ └── route.config.js #
|
|
166
|
+
│ └── route.config.js # 路由配置(自动识别独立菜单标记)
|
|
149
167
|
├── packages/ # 组件源码目录
|
|
150
168
|
│ ├── cy/ # 产研自定义组件
|
|
151
169
|
│ │ ├── treeSelect/ # 树形选择器
|
|
@@ -169,8 +187,10 @@ element-dev/ # 项目根目录
|
|
|
169
187
|
|----------|----------|------|----------|
|
|
170
188
|
| 一级 | `build/` | 构建工具 | 包含所有构建脚本和webpack配置文件 |
|
|
171
189
|
| 二级 | `build/bin/` | 命令脚本 | new.js创建el组件,new-cy.js创建cy组件 |
|
|
190
|
+
| 二级 | `build/dist.js` | 完整构建脚本 | 统一管理完整构建流程(替代CLI方式) |
|
|
172
191
|
| 一级 | `examples/` | 示例站点 | 组件展示文档和示例代码 |
|
|
173
192
|
| 二级 | `examples/docs/zh-CN/cy/` | 产研组件文档 | cy组件的中文文档目录 |
|
|
193
|
+
| 二级 | `examples/pages/zh-CN/` | 页面容器 | component.vue(组件页)、independent.vue(独立菜单通用容器) |
|
|
174
194
|
| 一级 | `packages/` | 组件源码 | 所有el和cy组件的源代码 |
|
|
175
195
|
| 二级 | `packages/cy/` | 产研组件 | 自定义的cy-*组件,独立目录管理 |
|
|
176
196
|
| 三级 | `packages/cy/treeSelect/` | 树形选择器 | CyTreeSelect组件源码 |
|
|
@@ -223,7 +243,7 @@ make new-cy advancedSelect 高级选择器
|
|
|
223
243
|
|----------|------|-------------|
|
|
224
244
|
| `packages/cy/advancedSelect/index.js` | 组件导出文件 | 否(自动生成) |
|
|
225
245
|
| `packages/cy/advancedSelect/src/main.vue` | 组件实现文件 | 是(必须编写逻辑) |
|
|
226
|
-
| `examples/docs/zh-CN/cy/
|
|
246
|
+
| `examples/docs/zh-CN/cy/advancedSelect.md` | 中文文档文件 | 是(必须编写文档) |
|
|
227
247
|
| `packages/theme-chalk/src/cy/advancedSelect.scss` | 组件样式文件 | 是(必须编写样式) |
|
|
228
248
|
| `examples/demo-styles/cy/advancedSelect.scss` | 示例页面样式文件 | 否(可选) |
|
|
229
249
|
| `types/cy/advancedSelect.d.ts` | 类型定义文件(不带 cy- 前缀) | 否(自动生成) |
|
|
@@ -243,7 +263,7 @@ make new-cy advancedSelect 高级选择器
|
|
|
243
263
|
|------|---------|------|--------|
|
|
244
264
|
| 1 | 编写组件逻辑和模板 | `packages/cy/advancedSelect/src/main.vue` | 高 |
|
|
245
265
|
| 2 | 编写组件样式 | `packages/theme-chalk/src/cy/advancedSelect.scss` | 高 |
|
|
246
|
-
| 3 | 编写组件文档 | `examples/docs/zh-CN/cy/
|
|
266
|
+
| 3 | 编写组件文档 | `examples/docs/zh-CN/cy/advancedSelect.md` | 高 |
|
|
247
267
|
| 4 | 重新生成入口 | `npm run build:file` | 必须 |
|
|
248
268
|
|
|
249
269
|
#### 3.1.4 生成的文件内容示例
|
|
@@ -358,7 +378,7 @@ make new custom-button 自定义按钮
|
|
|
358
378
|
| 组件目录(el) | - | 小写连字符 | `custom-button` |
|
|
359
379
|
| 组件目录(cy) | - | 驼峰式 | `treeSelect` |
|
|
360
380
|
| 样式文件 | - | 小写连字符 | `button.scss`, `tree-select.scss` |
|
|
361
|
-
| 文档文件 | - |
|
|
381
|
+
| 文档文件 | - | 驼峰式 | `treeSelect.md` |
|
|
362
382
|
|
|
363
383
|
---
|
|
364
384
|
|
|
@@ -432,7 +452,7 @@ export default {
|
|
|
432
452
|
**中文文档路径:**
|
|
433
453
|
|
|
434
454
|
```
|
|
435
|
-
examples/docs/zh-CN/cy
|
|
455
|
+
examples/docs/zh-CN/cy/<component-name>.md
|
|
436
456
|
```
|
|
437
457
|
|
|
438
458
|
**文档内容结构:**
|
|
@@ -489,27 +509,37 @@ export default {
|
|
|
489
509
|
|
|
490
510
|
修改 `examples/nav.config.json`:
|
|
491
511
|
|
|
512
|
+
> **注意**:产研等独立菜单使用 `independent` + `pathPrefix` 标记,路由会自动处理。详见 [九、新增独立菜单](#九新增独立菜单类似产研)。
|
|
513
|
+
|
|
514
|
+
**普通组件(添加到"组件"菜单下):**
|
|
515
|
+
|
|
516
|
+
在 `"name": "组件"` 的 groups 中找到对应分组,添加一项:
|
|
517
|
+
|
|
492
518
|
```json
|
|
493
519
|
{
|
|
494
|
-
"
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
520
|
+
"path": "/advancedSelect",
|
|
521
|
+
"title": "AdvancedSelect 高级选择器"
|
|
522
|
+
}
|
|
523
|
+
```
|
|
524
|
+
|
|
525
|
+
**独立菜单(如"产研"):**
|
|
526
|
+
|
|
527
|
+
```json
|
|
528
|
+
{
|
|
529
|
+
"name": "产研",
|
|
530
|
+
"independent": true,
|
|
531
|
+
"pathPrefix": "/cy",
|
|
532
|
+
"groups": [
|
|
533
|
+
{
|
|
534
|
+
"groupName": "基础组件",
|
|
535
|
+
"list": [
|
|
536
|
+
{ "path": "/cy/treeSelect", "title": "TreeSelect 下拉树" },
|
|
537
|
+
{ "path": "/cy/tabDialog", "title": "TabDialog 页签对话框" },
|
|
538
|
+
{ "path": "/cy/subTitle", "title": "SubTitle 副标题" },
|
|
539
|
+
{ "path": "/cy/selectDisplayInput", "title": "SelectDisplayInput 选择显示输入框" }
|
|
540
|
+
]
|
|
541
|
+
}
|
|
542
|
+
]
|
|
513
543
|
}
|
|
514
544
|
```
|
|
515
545
|
|
|
@@ -534,26 +564,43 @@ npm run dist
|
|
|
534
564
|
|
|
535
565
|
### 6.2 分步构建
|
|
536
566
|
|
|
567
|
+
> **注意**:当前 `dist` 命令已统一由 `build/dist.js` 管理(使用 webpack Node API),以下为内部流程说明。
|
|
568
|
+
|
|
569
|
+
**完整构建(推荐):**
|
|
570
|
+
|
|
537
571
|
```bash
|
|
538
|
-
|
|
539
|
-
|
|
572
|
+
npm run dist
|
|
573
|
+
```
|
|
540
574
|
|
|
541
|
-
|
|
542
|
-
|
|
575
|
+
该命令自动依次执行:
|
|
576
|
+
|
|
577
|
+
| 步骤 | 命令/操作 | 说明 |
|
|
578
|
+
|------|----------|------|
|
|
579
|
+
| 1 | `npm run clean` | 清理 lib 目录 |
|
|
580
|
+
| 2 | `npm run build:file` | 自动生成 src/index.js 入口文件 |
|
|
581
|
+
| 3 | eslint + lint | 代码质量检查 |
|
|
582
|
+
| 4 | Webpack UMD | 打包 lib/index.js |
|
|
583
|
+
| 5 | Webpack CommonJS | 打包 lib/element-ui.common.js |
|
|
584
|
+
| 6 | Webpack Component | 各组件单独打包到 lib/ |
|
|
585
|
+
| 7 | `npm run build:utils` | 构建工具函数 |
|
|
586
|
+
| 8 | `npm run build:umd` | UMD 补充处理 |
|
|
587
|
+
| 9 | `npm run build:theme` | 编译 SCSS 主题样式 |
|
|
543
588
|
|
|
544
|
-
|
|
545
|
-
npx webpack --config build/webpack.conf.js
|
|
589
|
+
**手动单步执行(调试用):**
|
|
546
590
|
|
|
547
|
-
|
|
548
|
-
|
|
591
|
+
```bash
|
|
592
|
+
# 清理
|
|
593
|
+
npm run clean
|
|
549
594
|
|
|
550
|
-
#
|
|
551
|
-
|
|
595
|
+
# 生成入口文件
|
|
596
|
+
npm run build:file
|
|
552
597
|
|
|
553
|
-
#
|
|
554
|
-
|
|
598
|
+
# 单独执行某一步webpack构建
|
|
599
|
+
npx webpack --config build/webpack.conf.js # UMD
|
|
600
|
+
npx webpack --config build/webpack.common.js # CommonJS
|
|
601
|
+
npx webpack --config build/webpack.component.js # 组件单独打包
|
|
555
602
|
|
|
556
|
-
#
|
|
603
|
+
# 样式编译
|
|
557
604
|
npm run build:theme
|
|
558
605
|
```
|
|
559
606
|
|
|
@@ -596,7 +643,18 @@ npm login
|
|
|
596
643
|
### 7.3 发布
|
|
597
644
|
|
|
598
645
|
```bash
|
|
599
|
-
|
|
646
|
+
# 发布(scoped 包需要 --access public)
|
|
647
|
+
npm publish --access public
|
|
648
|
+
```
|
|
649
|
+
|
|
650
|
+
**发布后在其他项目中更新:**
|
|
651
|
+
|
|
652
|
+
```bash
|
|
653
|
+
# 清除缓存,确保拉取最新版
|
|
654
|
+
rmdir /s /q node_modules\cy-element-ui
|
|
655
|
+
npm cache clean --force
|
|
656
|
+
del package-lock.json
|
|
657
|
+
npm install cy-element-ui@latest
|
|
600
658
|
```
|
|
601
659
|
|
|
602
660
|
---
|
|
@@ -609,7 +667,7 @@ npm publish
|
|
|
609
667
|
1. 创建组件 → make new-cy <name> [中文名]
|
|
610
668
|
2. 编写代码 → 修改 packages/cy/<name>/src/main.vue
|
|
611
669
|
3. 编写样式 → 修改 packages/theme-chalk/src/cy/<name>.scss
|
|
612
|
-
4. 编写文档 → 修改 examples/docs/zh-CN/cy
|
|
670
|
+
4. 编写文档 → 修改 examples/docs/zh-CN/cy/<name>.md
|
|
613
671
|
5. 生成入口 → npm run build:file
|
|
614
672
|
6. 启动开发 → npm run dev
|
|
615
673
|
7. 完整构建 → npm run dist
|
|
@@ -622,8 +680,173 @@ npm publish
|
|
|
622
680
|
2. **类型定义**:cy组件的类型定义文件不带 `cy-` 前缀,使用连字符命名(如 `tree-select.d.ts`)
|
|
623
681
|
3. **样式命名**:使用 BEM 命名规范,cy组件样式类名以 `cy-` 开头
|
|
624
682
|
4. **文档语言**:仅提供中文文档,不提供其他语言版本
|
|
683
|
+
5. **async/await**:项目支持 async/await(babel-preset-env + stage-2 自动转译)
|
|
684
|
+
|
|
685
|
+
---
|
|
686
|
+
|
|
687
|
+
## 九、新增独立菜单(类似产研)
|
|
688
|
+
|
|
689
|
+
### 9.1 概念说明
|
|
690
|
+
|
|
691
|
+
本项目支持在顶部导航栏中添加**独立的菜单分类**,与"组件"菜单完全隔离。例如现有的"产研"菜单就是一个独立菜单——它有自己的路由容器、侧边栏、文档目录,不会与"组件"页面混在一起。
|
|
692
|
+
|
|
693
|
+
### 9.2 工作原理
|
|
694
|
+
|
|
695
|
+
| 文件 | 作用 |
|
|
696
|
+
|------|------|
|
|
697
|
+
| `examples/nav.config.json` | 通过 `independent: true` + `pathPrefix` 标记独立菜单 |
|
|
698
|
+
| `examples/route.config.js` | 自动识别标记,生成独立父路由 + 容器 |
|
|
699
|
+
| `examples/pages/zh-CN/independent.vue` | 通用容器组件(自动过滤侧边栏数据) |
|
|
700
|
+
|
|
701
|
+
**无需为每个独立菜单单独创建 vue 文件!**
|
|
702
|
+
|
|
703
|
+
### 9.3 新增步骤详解
|
|
704
|
+
|
|
705
|
+
以新增一个名为"数据平台"、路径前缀 `/dp` 的独立菜单为例:
|
|
706
|
+
|
|
707
|
+
#### 步骤 1:修改 nav.config.json
|
|
708
|
+
|
|
709
|
+
在 `"zh-CN"` 数组末尾添加一个新对象:
|
|
710
|
+
|
|
711
|
+
```json
|
|
712
|
+
{
|
|
713
|
+
"name": "数据平台",
|
|
714
|
+
"independent": true,
|
|
715
|
+
"pathPrefix": "/dp",
|
|
716
|
+
"groups": [
|
|
717
|
+
{
|
|
718
|
+
"groupName": "基础组件",
|
|
719
|
+
"list": [
|
|
720
|
+
{
|
|
721
|
+
"path": "/dp/dataTable",
|
|
722
|
+
"title": "DataTable 数据表格"
|
|
723
|
+
},
|
|
724
|
+
{
|
|
725
|
+
"path": "/dp/dataChart",
|
|
726
|
+
"title": "DataChart 数据图表"
|
|
727
|
+
}
|
|
728
|
+
]
|
|
729
|
+
}
|
|
730
|
+
]
|
|
731
|
+
}
|
|
732
|
+
```
|
|
733
|
+
|
|
734
|
+
**关键字段说明:**
|
|
735
|
+
|
|
736
|
+
| 字段 | 是否必须 | 说明 |
|
|
737
|
+
|------|---------|------|
|
|
738
|
+
| `name` | 必须 | 导航栏显示名称,也是容器匹配的标识 |
|
|
739
|
+
| `independent` | 必须 | 固定为 `true`,标记为独立菜单 |
|
|
740
|
+
| `pathPrefix` | 必须 | URL 路径前缀,如 `/dp` → 最终路径 `/zh-CN/dp/dataTable` |
|
|
741
|
+
| `groups` | 必须(或用 children) | 子项分组列表(与组件菜单结构一致) |
|
|
742
|
+
| `groups[].list[].path` | 必须 | **必须以 pathPrefix 开头**,如 `/dp/dataTable` |
|
|
743
|
+
|
|
744
|
+
#### 步骤 2:创建文档文件
|
|
745
|
+
|
|
746
|
+
每个子组件需要对应的 md 文档:
|
|
747
|
+
|
|
748
|
+
```
|
|
749
|
+
examples/docs/zh-CN/
|
|
750
|
+
├── dp/ # 新建目录(与 pathPrefix 对应)
|
|
751
|
+
│ ├── dataTable.md # DataTable 组件文档
|
|
752
|
+
│ └── dataChart.md # DataChart 组件文档
|
|
753
|
+
└── cy/ # 已有的产研文档
|
|
754
|
+
├── treeSelect.md
|
|
755
|
+
└── ...
|
|
756
|
+
```
|
|
757
|
+
|
|
758
|
+
文档格式参照 [五、编写组件文档](#五编写组件文档)。
|
|
759
|
+
|
|
760
|
+
#### 步骤 3:创建组件源码(如果是有代码的新组件)
|
|
761
|
+
|
|
762
|
+
如果这个独立菜单下包含全新的自定义组件:
|
|
763
|
+
|
|
764
|
+
```bash
|
|
765
|
+
# 使用 Makefile 创建组件
|
|
766
|
+
make new-cy dataTable 数据表格
|
|
767
|
+
make new-cy dataChart 数据图表
|
|
768
|
+
```
|
|
769
|
+
|
|
770
|
+
这会自动创建:
|
|
771
|
+
- `packages/cy/dataTable/src/main.vue`
|
|
772
|
+
- `packages/theme-chalk/src/cy/dataTable.scss`
|
|
773
|
+
- 并更新 `components.json`、样式 index.scss 等
|
|
774
|
+
|
|
775
|
+
> 如果只是引用已有组件做展示页,则不需要创建组件源码,只需写文档即可。
|
|
776
|
+
|
|
777
|
+
#### 步骤 4:(可选)添加 i18n 翻译
|
|
778
|
+
|
|
779
|
+
如果导航栏文字需要国际化,修改 `examples/i18n/component.json`:
|
|
780
|
+
|
|
781
|
+
```json
|
|
782
|
+
[
|
|
783
|
+
{
|
|
784
|
+
"lang": "zh-CN",
|
|
785
|
+
"header": {
|
|
786
|
+
"guide": "指南",
|
|
787
|
+
"components": "组件",
|
|
788
|
+
"chanyan": "产研",
|
|
789
|
+
"dataPlatform": "数据平台", // ← 新增
|
|
790
|
+
...
|
|
791
|
+
}
|
|
792
|
+
}
|
|
793
|
+
]
|
|
794
|
+
```
|
|
795
|
+
|
|
796
|
+
然后修改 `examples/components/header.vue` 中的导航链接:
|
|
797
|
+
|
|
798
|
+
```html
|
|
799
|
+
<li class="nav-item">
|
|
800
|
+
<router-link :to="`/${ lang }/dp`">{{ langConfig.dataPlatform }}</router-link>
|
|
801
|
+
</li>
|
|
802
|
+
```
|
|
803
|
+
|
|
804
|
+
#### 步骤 5:验证
|
|
805
|
+
|
|
806
|
+
```bash
|
|
807
|
+
# 启动开发服务器
|
|
808
|
+
npm run dev
|
|
809
|
+
```
|
|
810
|
+
|
|
811
|
+
访问 `http://localhost:8086/#/zh-CN/dp`,应能看到:
|
|
812
|
+
1. 顶部导航栏新增"数据平台"入口
|
|
813
|
+
2. 点击后进入独立页面,侧边栏只显示"基础组件"分组下的子项
|
|
814
|
+
3. 点击子项能正常显示对应文档内容
|
|
815
|
+
|
|
816
|
+
### 9.4 路由生成规则
|
|
817
|
+
|
|
818
|
+
当 `route.config.js` 遇到 `independent: true` 的菜单时,自动执行以下操作:
|
|
819
|
+
|
|
820
|
+
```
|
|
821
|
+
输入:name="数据平台", pathPrefix="/dp"
|
|
822
|
+
|
|
823
|
+
自动生成的路由结构:
|
|
824
|
+
/zh-CN/dp (redirect → /zh-CN/dp/dataTable)
|
|
825
|
+
├── dataTable → examples/docs/zh-CN/dp/dataTable.md
|
|
826
|
+
└── dataChart → examples/docs/zh-CN/dp/dataChart.md
|
|
827
|
+
```
|
|
828
|
+
|
|
829
|
+
与"产研"的路由完全平行:
|
|
830
|
+
|
|
831
|
+
```
|
|
832
|
+
/zh-CN/component (component.vue 容器)
|
|
833
|
+
├── installation, button, ... (Element UI 组件)
|
|
834
|
+
|
|
835
|
+
/zh-CN/cy (independent.vue 容器)
|
|
836
|
+
├── treeSelect, tabDialog, ... (产研组件)
|
|
837
|
+
|
|
838
|
+
/zh-CN/dp (independent.vue 容器) ← 新增
|
|
839
|
+
├── dataTable, dataChart (数据平台组件)
|
|
840
|
+
```
|
|
841
|
+
|
|
842
|
+
### 9.5 注意事项
|
|
843
|
+
|
|
844
|
+
1. **pathPrefix 必须唯一**:不能有两个独立菜单使用相同的 `pathPrefix`
|
|
845
|
+
2. **子项 path 必须以 pathPrefix 开头**:否则路由无法正确剥离前缀
|
|
846
|
+
3. **文档目录名与 pathPrefix 一致**:如 `/dp` 的文档放在 `docs/zh-CN/dp/` 下
|
|
847
|
+
4. **不需要手动改 route.config.js 或创建新的 vue 容器**:全部自动处理
|
|
625
848
|
|
|
626
849
|
---
|
|
627
850
|
|
|
628
|
-
**版本**: v1.
|
|
629
|
-
**最后更新**:
|
|
851
|
+
**版本**: v1.1.26
|
|
852
|
+
**最后更新**: 2026年5月
|