├── .gitignore ├── .mvn └── wrapper │ ├── maven-wrapper.jar │ └── maven-wrapper.properties ├── README.md ├── README ├── 1.png ├── 2.png ├── 3.png └── 4.png ├── db ├── sys_data.sql └── sys_schema.sql ├── mvnw ├── mvnw.cmd ├── pom.xml └── src ├── main ├── java │ └── cn │ │ └── tycoding │ │ ├── SpringbootApplication.java │ │ ├── controller │ │ ├── HomeController.java │ │ └── admin │ │ │ ├── GoodsController.java │ │ │ ├── LoginController.java │ │ │ ├── UploadDownController.java │ │ │ └── UserController.java │ │ ├── entity │ │ ├── Goods.java │ │ ├── PageBean.java │ │ ├── Result.java │ │ └── User.java │ │ ├── interceptor │ │ └── MyInterceptor.java │ │ ├── mapper │ │ ├── GoodsMapper.java │ │ └── UserMapper.java │ │ └── service │ │ ├── BaseService.java │ │ ├── GoodsService.java │ │ ├── UserService.java │ │ └── impl │ │ ├── GoodsServiceImpl.java │ │ └── UserServiceImpl.java └── resources │ ├── application.yml │ ├── mapper │ ├── GoodsMapper.xml │ └── UserMapper.xml │ ├── static │ ├── css │ │ ├── goods.css │ │ ├── index.css │ │ ├── login.css │ │ └── public.css │ ├── image │ │ └── login.png │ ├── js │ │ ├── goods.js │ │ ├── index.js │ │ ├── login.js │ │ └── register.js │ ├── lib │ │ ├── element-ui │ │ │ ├── CHANGELOG.en-US.md │ │ │ ├── CHANGELOG.es.md │ │ │ ├── CHANGELOG.zh-CN.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── lib │ │ │ │ ├── alert.js │ │ │ │ ├── aside.js │ │ │ │ ├── autocomplete.js │ │ │ │ ├── badge.js │ │ │ │ ├── breadcrumb-item.js │ │ │ │ ├── breadcrumb.js │ │ │ │ ├── button-group.js │ │ │ │ ├── button.js │ │ │ │ ├── card.js │ │ │ │ ├── carousel-item.js │ │ │ │ ├── carousel.js │ │ │ │ ├── cascader.js │ │ │ │ ├── checkbox-button.js │ │ │ │ ├── checkbox-group.js │ │ │ │ ├── checkbox.js │ │ │ │ ├── col.js │ │ │ │ ├── collapse-item.js │ │ │ │ ├── collapse.js │ │ │ │ ├── color-picker.js │ │ │ │ ├── container.js │ │ │ │ ├── date-picker.js │ │ │ │ ├── dialog.js │ │ │ │ ├── directives │ │ │ │ │ ├── mousewheel.js │ │ │ │ │ └── repeat-click.js │ │ │ │ ├── dropdown-item.js │ │ │ │ ├── dropdown-menu.js │ │ │ │ ├── dropdown.js │ │ │ │ ├── element-ui.common.js │ │ │ │ ├── footer.js │ │ │ │ ├── form-item.js │ │ │ │ ├── form.js │ │ │ │ ├── header.js │ │ │ │ ├── icon.js │ │ │ │ ├── index.js │ │ │ │ ├── input-number.js │ │ │ │ ├── input.js │ │ │ │ ├── loading.js │ │ │ │ ├── locale │ │ │ │ │ ├── format.js │ │ │ │ │ ├── index.js │ │ │ │ │ └── lang │ │ │ │ │ │ ├── af-ZA.js │ │ │ │ │ │ ├── ar.js │ │ │ │ │ │ ├── bg.js │ │ │ │ │ │ ├── ca.js │ │ │ │ │ │ ├── cs-CZ.js │ │ │ │ │ │ ├── da.js │ │ │ │ │ │ ├── de.js │ │ │ │ │ │ ├── ee.js │ │ │ │ │ │ ├── el.js │ │ │ │ │ │ ├── en.js │ │ │ │ │ │ ├── es.js │ │ │ │ │ │ ├── fa.js │ │ │ │ │ │ ├── fi.js │ │ │ │ │ │ ├── fr.js │ │ │ │ │ │ ├── he.js │ │ │ │ │ │ ├── hu.js │ │ │ │ │ │ ├── id.js │ │ │ │ │ │ ├── it.js │ │ │ │ │ │ ├── ja.js │ │ │ │ │ │ ├── km.js │ │ │ │ │ │ ├── ko.js │ │ │ │ │ │ ├── ku.js │ │ │ │ │ │ ├── kz.js │ │ │ │ │ │ ├── lt.js │ │ │ │ │ │ ├── lv.js │ │ │ │ │ │ ├── mn.js │ │ │ │ │ │ ├── nb-NO.js │ │ │ │ │ │ ├── nl.js │ │ │ │ │ │ ├── pl.js │ │ │ │ │ │ ├── pt-br.js │ │ │ │ │ │ ├── pt.js │ │ │ │ │ │ ├── ro.js │ │ │ │ │ │ ├── ru-RU.js │ │ │ │ │ │ ├── sk.js │ │ │ │ │ │ ├── sl.js │ │ │ │ │ │ ├── sv-SE.js │ │ │ │ │ │ ├── ta.js │ │ │ │ │ │ ├── th.js │ │ │ │ │ │ ├── tk.js │ │ │ │ │ │ ├── tr-TR.js │ │ │ │ │ │ ├── ua.js │ │ │ │ │ │ ├── ug-CN.js │ │ │ │ │ │ ├── vi.js │ │ │ │ │ │ ├── zh-CN.js │ │ │ │ │ │ └── zh-TW.js │ │ │ │ ├── main.js │ │ │ │ ├── menu-item-group.js │ │ │ │ ├── menu-item.js │ │ │ │ ├── menu.js │ │ │ │ ├── message-box.js │ │ │ │ ├── message.js │ │ │ │ ├── mixins │ │ │ │ │ ├── emitter.js │ │ │ │ │ ├── focus.js │ │ │ │ │ ├── locale.js │ │ │ │ │ └── migrating.js │ │ │ │ ├── notification.js │ │ │ │ ├── option-group.js │ │ │ │ ├── option.js │ │ │ │ ├── pagination.js │ │ │ │ ├── popover.js │ │ │ │ ├── progress.js │ │ │ │ ├── radio-button.js │ │ │ │ ├── radio-group.js │ │ │ │ ├── radio.js │ │ │ │ ├── rate.js │ │ │ │ ├── row.js │ │ │ │ ├── scrollbar.js │ │ │ │ ├── select.js │ │ │ │ ├── slider.js │ │ │ │ ├── spinner.js │ │ │ │ ├── step.js │ │ │ │ ├── steps.js │ │ │ │ ├── submenu.js │ │ │ │ ├── switch.js │ │ │ │ ├── tab-pane.js │ │ │ │ ├── table-column.js │ │ │ │ ├── table.js │ │ │ │ ├── tabs.js │ │ │ │ ├── tag.js │ │ │ │ ├── theme-chalk │ │ │ │ │ ├── alert.css │ │ │ │ │ ├── aside.css │ │ │ │ │ ├── autocomplete.css │ │ │ │ │ ├── badge.css │ │ │ │ │ ├── base.css │ │ │ │ │ ├── breadcrumb-item.css │ │ │ │ │ ├── breadcrumb.css │ │ │ │ │ ├── button-group.css │ │ │ │ │ ├── button.css │ │ │ │ │ ├── card.css │ │ │ │ │ ├── carousel-item.css │ │ │ │ │ ├── carousel.css │ │ │ │ │ ├── cascader.css │ │ │ │ │ ├── checkbox-button.css │ │ │ │ │ ├── checkbox-group.css │ │ │ │ │ ├── checkbox.css │ │ │ │ │ ├── col.css │ │ │ │ │ ├── collapse-item.css │ │ │ │ │ ├── collapse.css │ │ │ │ │ ├── color-picker.css │ │ │ │ │ ├── container.css │ │ │ │ │ ├── date-picker.css │ │ │ │ │ ├── dialog.css │ │ │ │ │ ├── display.css │ │ │ │ │ ├── dropdown-item.css │ │ │ │ │ ├── dropdown-menu.css │ │ │ │ │ ├── dropdown.css │ │ │ │ │ ├── fonts │ │ │ │ │ │ ├── element-icons.ttf │ │ │ │ │ │ └── element-icons.woff │ │ │ │ │ ├── footer.css │ │ │ │ │ ├── form-item.css │ │ │ │ │ ├── form.css │ │ │ │ │ ├── header.css │ │ │ │ │ ├── icon.css │ │ │ │ │ ├── index.css │ │ │ │ │ ├── input-number.css │ │ │ │ │ ├── input.css │ │ │ │ │ ├── loading.css │ │ │ │ │ ├── main.css │ │ │ │ │ ├── menu-item-group.css │ │ │ │ │ ├── menu-item.css │ │ │ │ │ ├── menu.css │ │ │ │ │ ├── message-box.css │ │ │ │ │ ├── message.css │ │ │ │ │ ├── notification.css │ │ │ │ │ ├── option-group.css │ │ │ │ │ ├── option.css │ │ │ │ │ ├── pagination.css │ │ │ │ │ ├── popover.css │ │ │ │ │ ├── popper.css │ │ │ │ │ ├── progress.css │ │ │ │ │ ├── radio-button.css │ │ │ │ │ ├── radio-group.css │ │ │ │ │ ├── radio.css │ │ │ │ │ ├── rate.css │ │ │ │ │ ├── reset.css │ │ │ │ │ ├── row.css │ │ │ │ │ ├── scrollbar.css │ │ │ │ │ ├── select-dropdown.css │ │ │ │ │ ├── select.css │ │ │ │ │ ├── slider.css │ │ │ │ │ ├── spinner.css │ │ │ │ │ ├── step.css │ │ │ │ │ ├── steps.css │ │ │ │ │ ├── submenu.css │ │ │ │ │ ├── switch.css │ │ │ │ │ ├── tab-pane.css │ │ │ │ │ ├── table-column.css │ │ │ │ │ ├── table.css │ │ │ │ │ ├── tabs.css │ │ │ │ │ ├── tag.css │ │ │ │ │ ├── time-picker.css │ │ │ │ │ ├── time-select.css │ │ │ │ │ ├── tooltip.css │ │ │ │ │ ├── transfer.css │ │ │ │ │ ├── tree.css │ │ │ │ │ └── upload.css │ │ │ │ ├── time-picker.js │ │ │ │ ├── time-select.js │ │ │ │ ├── tooltip.js │ │ │ │ ├── transfer.js │ │ │ │ ├── transitions │ │ │ │ │ └── collapse-transition.js │ │ │ │ ├── tree.js │ │ │ │ ├── umd │ │ │ │ │ └── locale │ │ │ │ │ │ ├── af-ZA.js │ │ │ │ │ │ ├── ar.js │ │ │ │ │ │ ├── bg.js │ │ │ │ │ │ ├── ca.js │ │ │ │ │ │ ├── cs-CZ.js │ │ │ │ │ │ ├── da.js │ │ │ │ │ │ ├── de.js │ │ │ │ │ │ ├── ee.js │ │ │ │ │ │ ├── el.js │ │ │ │ │ │ ├── en.js │ │ │ │ │ │ ├── es.js │ │ │ │ │ │ ├── fa.js │ │ │ │ │ │ ├── fi.js │ │ │ │ │ │ ├── fr.js │ │ │ │ │ │ ├── he.js │ │ │ │ │ │ ├── hu.js │ │ │ │ │ │ ├── id.js │ │ │ │ │ │ ├── it.js │ │ │ │ │ │ ├── ja.js │ │ │ │ │ │ ├── km.js │ │ │ │ │ │ ├── ko.js │ │ │ │ │ │ ├── ku.js │ │ │ │ │ │ ├── kz.js │ │ │ │ │ │ ├── lt.js │ │ │ │ │ │ ├── lv.js │ │ │ │ │ │ ├── mn.js │ │ │ │ │ │ ├── nb-NO.js │ │ │ │ │ │ ├── nl.js │ │ │ │ │ │ ├── pl.js │ │ │ │ │ │ ├── pt-br.js │ │ │ │ │ │ ├── pt.js │ │ │ │ │ │ ├── ro.js │ │ │ │ │ │ ├── ru-RU.js │ │ │ │ │ │ ├── sk.js │ │ │ │ │ │ ├── sl.js │ │ │ │ │ │ ├── sv-SE.js │ │ │ │ │ │ ├── ta.js │ │ │ │ │ │ ├── th.js │ │ │ │ │ │ ├── tk.js │ │ │ │ │ │ ├── tr-TR.js │ │ │ │ │ │ ├── ua.js │ │ │ │ │ │ ├── ug-CN.js │ │ │ │ │ │ ├── vi.js │ │ │ │ │ │ ├── zh-CN.js │ │ │ │ │ │ └── zh-TW.js │ │ │ │ ├── upload.js │ │ │ │ └── utils │ │ │ │ │ ├── after-leave.js │ │ │ │ │ ├── aria-dialog.js │ │ │ │ │ ├── aria-utils.js │ │ │ │ │ ├── clickoutside.js │ │ │ │ │ ├── date.js │ │ │ │ │ ├── dom.js │ │ │ │ │ ├── menu │ │ │ │ │ ├── aria-menubar.js │ │ │ │ │ ├── aria-menuitem.js │ │ │ │ │ └── aria-submenu.js │ │ │ │ │ ├── merge.js │ │ │ │ │ ├── popper.js │ │ │ │ │ ├── popup │ │ │ │ │ ├── index.js │ │ │ │ │ └── popup-manager.js │ │ │ │ │ ├── resize-event.js │ │ │ │ │ ├── scroll-into-view.js │ │ │ │ │ ├── scrollbar-width.js │ │ │ │ │ ├── shared.js │ │ │ │ │ ├── util.js │ │ │ │ │ ├── vdom.js │ │ │ │ │ └── vue-popper.js │ │ │ ├── package.json │ │ │ ├── packages │ │ │ │ ├── alert │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── main.vue │ │ │ │ ├── aside │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── main.vue │ │ │ │ ├── autocomplete │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── autocomplete-suggestions.vue │ │ │ │ │ │ └── autocomplete.vue │ │ │ │ ├── badge │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── main.vue │ │ │ │ ├── breadcrumb-item │ │ │ │ │ └── index.js │ │ │ │ ├── breadcrumb │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── breadcrumb-item.vue │ │ │ │ │ │ └── breadcrumb.vue │ │ │ │ ├── button-group │ │ │ │ │ └── index.js │ │ │ │ ├── button │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── button-group.vue │ │ │ │ │ │ └── button.vue │ │ │ │ ├── card │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── main.vue │ │ │ │ ├── carousel-item │ │ │ │ │ └── index.js │ │ │ │ ├── carousel │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── item.vue │ │ │ │ │ │ └── main.vue │ │ │ │ ├── cascader │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── main.vue │ │ │ │ │ │ └── menu.vue │ │ │ │ ├── checkbox-button │ │ │ │ │ └── index.js │ │ │ │ ├── checkbox-group │ │ │ │ │ └── index.js │ │ │ │ ├── checkbox │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── checkbox-button.vue │ │ │ │ │ │ ├── checkbox-group.vue │ │ │ │ │ │ └── checkbox.vue │ │ │ │ ├── col │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── col.js │ │ │ │ ├── collapse-item │ │ │ │ │ └── index.js │ │ │ │ ├── collapse │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── collapse-item.vue │ │ │ │ │ │ └── collapse.vue │ │ │ │ ├── color-picker │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── color.js │ │ │ │ │ │ ├── components │ │ │ │ │ │ ├── alpha-slider.vue │ │ │ │ │ │ ├── hue-slider.vue │ │ │ │ │ │ ├── picker-dropdown.vue │ │ │ │ │ │ ├── predefine.vue │ │ │ │ │ │ └── sv-panel.vue │ │ │ │ │ │ ├── draggable.js │ │ │ │ │ │ └── main.vue │ │ │ │ ├── container │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── main.vue │ │ │ │ ├── date-picker │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── basic │ │ │ │ │ │ ├── date-table.vue │ │ │ │ │ │ ├── month-table.vue │ │ │ │ │ │ ├── time-spinner.vue │ │ │ │ │ │ └── year-table.vue │ │ │ │ │ │ ├── panel │ │ │ │ │ │ ├── date-range.vue │ │ │ │ │ │ ├── date.vue │ │ │ │ │ │ ├── time-range.vue │ │ │ │ │ │ ├── time-select.vue │ │ │ │ │ │ └── time.vue │ │ │ │ │ │ ├── picker.vue │ │ │ │ │ │ ├── picker │ │ │ │ │ │ ├── date-picker.js │ │ │ │ │ │ ├── time-picker.js │ │ │ │ │ │ └── time-select.js │ │ │ │ │ │ └── util │ │ │ │ │ │ └── index.js │ │ │ │ ├── dialog │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── component.vue │ │ │ │ ├── dropdown-item │ │ │ │ │ └── index.js │ │ │ │ ├── dropdown-menu │ │ │ │ │ └── index.js │ │ │ │ ├── dropdown │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── dropdown-item.vue │ │ │ │ │ │ ├── dropdown-menu.vue │ │ │ │ │ │ └── dropdown.vue │ │ │ │ ├── footer │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── main.vue │ │ │ │ ├── form-item │ │ │ │ │ └── index.js │ │ │ │ ├── form │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── form-item.vue │ │ │ │ │ │ └── form.vue │ │ │ │ ├── header │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── main.vue │ │ │ │ ├── icon │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── icon.vue │ │ │ │ ├── input-number │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── input-number.vue │ │ │ │ ├── input │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── calcTextareaHeight.js │ │ │ │ │ │ └── input.vue │ │ │ │ ├── loading │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── directive.js │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── loading.vue │ │ │ │ ├── main │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── main.vue │ │ │ │ ├── menu-item-group │ │ │ │ │ └── index.js │ │ │ │ ├── menu-item │ │ │ │ │ └── index.js │ │ │ │ ├── menu │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── menu-item-group.vue │ │ │ │ │ │ ├── menu-item.vue │ │ │ │ │ │ ├── menu-mixin.js │ │ │ │ │ │ ├── menu.vue │ │ │ │ │ │ └── submenu.vue │ │ │ │ ├── message-box │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── main.js │ │ │ │ │ │ └── main.vue │ │ │ │ ├── message │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── main.js │ │ │ │ │ │ └── main.vue │ │ │ │ ├── notification │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── main.js │ │ │ │ │ │ └── main.vue │ │ │ │ ├── option-group │ │ │ │ │ └── index.js │ │ │ │ ├── option │ │ │ │ │ └── index.js │ │ │ │ ├── pagination │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── pager.vue │ │ │ │ │ │ └── pagination.js │ │ │ │ ├── popover │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── directive.js │ │ │ │ │ │ └── main.vue │ │ │ │ ├── progress │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── progress.vue │ │ │ │ ├── radio-button │ │ │ │ │ └── index.js │ │ │ │ ├── radio-group │ │ │ │ │ └── index.js │ │ │ │ ├── radio │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── radio-button.vue │ │ │ │ │ │ ├── radio-group.vue │ │ │ │ │ │ └── radio.vue │ │ │ │ ├── rate │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── main.vue │ │ │ │ ├── row │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── row.js │ │ │ │ ├── scrollbar │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── bar.js │ │ │ │ │ │ ├── main.js │ │ │ │ │ │ └── util.js │ │ │ │ ├── select │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── navigation-mixin.js │ │ │ │ │ │ ├── option-group.vue │ │ │ │ │ │ ├── option.vue │ │ │ │ │ │ ├── select-dropdown.vue │ │ │ │ │ │ └── select.vue │ │ │ │ ├── slider │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── button.vue │ │ │ │ │ │ └── main.vue │ │ │ │ ├── spinner │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── spinner.vue │ │ │ │ ├── step │ │ │ │ │ └── index.js │ │ │ │ ├── steps │ │ │ │ │ ├── README.md │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── step.vue │ │ │ │ │ │ └── steps.vue │ │ │ │ ├── submenu │ │ │ │ │ └── index.js │ │ │ │ ├── switch │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── component.vue │ │ │ │ ├── tab-pane │ │ │ │ │ └── index.js │ │ │ │ ├── table-column │ │ │ │ │ └── index.js │ │ │ │ ├── table │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── dropdown.js │ │ │ │ │ │ ├── filter-panel.vue │ │ │ │ │ │ ├── layout-observer.js │ │ │ │ │ │ ├── table-body.js │ │ │ │ │ │ ├── table-column.js │ │ │ │ │ │ ├── table-footer.js │ │ │ │ │ │ ├── table-header.js │ │ │ │ │ │ ├── table-layout.js │ │ │ │ │ │ ├── table-store.js │ │ │ │ │ │ ├── table.vue │ │ │ │ │ │ └── util.js │ │ │ │ ├── tabs │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── tab-bar.vue │ │ │ │ │ │ ├── tab-nav.vue │ │ │ │ │ │ ├── tab-pane.vue │ │ │ │ │ │ └── tabs.vue │ │ │ │ ├── tag │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── tag.vue │ │ │ │ ├── theme-chalk │ │ │ │ │ ├── README.md │ │ │ │ │ ├── lib │ │ │ │ │ │ ├── alert.css │ │ │ │ │ │ ├── aside.css │ │ │ │ │ │ ├── autocomplete.css │ │ │ │ │ │ ├── badge.css │ │ │ │ │ │ ├── base.css │ │ │ │ │ │ ├── breadcrumb-item.css │ │ │ │ │ │ ├── breadcrumb.css │ │ │ │ │ │ ├── button-group.css │ │ │ │ │ │ ├── button.css │ │ │ │ │ │ ├── card.css │ │ │ │ │ │ ├── carousel-item.css │ │ │ │ │ │ ├── carousel.css │ │ │ │ │ │ ├── cascader.css │ │ │ │ │ │ ├── checkbox-button.css │ │ │ │ │ │ ├── checkbox-group.css │ │ │ │ │ │ ├── checkbox.css │ │ │ │ │ │ ├── col.css │ │ │ │ │ │ ├── collapse-item.css │ │ │ │ │ │ ├── collapse.css │ │ │ │ │ │ ├── color-picker.css │ │ │ │ │ │ ├── container.css │ │ │ │ │ │ ├── date-picker.css │ │ │ │ │ │ ├── dialog.css │ │ │ │ │ │ ├── display.css │ │ │ │ │ │ ├── dropdown-item.css │ │ │ │ │ │ ├── dropdown-menu.css │ │ │ │ │ │ ├── dropdown.css │ │ │ │ │ │ ├── fonts │ │ │ │ │ │ │ ├── element-icons.ttf │ │ │ │ │ │ │ └── element-icons.woff │ │ │ │ │ │ ├── footer.css │ │ │ │ │ │ ├── form-item.css │ │ │ │ │ │ ├── form.css │ │ │ │ │ │ ├── header.css │ │ │ │ │ │ ├── icon.css │ │ │ │ │ │ ├── index.css │ │ │ │ │ │ ├── input-number.css │ │ │ │ │ │ ├── input.css │ │ │ │ │ │ ├── loading.css │ │ │ │ │ │ ├── main.css │ │ │ │ │ │ ├── menu-item-group.css │ │ │ │ │ │ ├── menu-item.css │ │ │ │ │ │ ├── menu.css │ │ │ │ │ │ ├── message-box.css │ │ │ │ │ │ ├── message.css │ │ │ │ │ │ ├── notification.css │ │ │ │ │ │ ├── option-group.css │ │ │ │ │ │ ├── option.css │ │ │ │ │ │ ├── pagination.css │ │ │ │ │ │ ├── popover.css │ │ │ │ │ │ ├── popper.css │ │ │ │ │ │ ├── progress.css │ │ │ │ │ │ ├── radio-button.css │ │ │ │ │ │ ├── radio-group.css │ │ │ │ │ │ ├── radio.css │ │ │ │ │ │ ├── rate.css │ │ │ │ │ │ ├── reset.css │ │ │ │ │ │ ├── row.css │ │ │ │ │ │ ├── scrollbar.css │ │ │ │ │ │ ├── select-dropdown.css │ │ │ │ │ │ ├── select.css │ │ │ │ │ │ ├── slider.css │ │ │ │ │ │ ├── spinner.css │ │ │ │ │ │ ├── step.css │ │ │ │ │ │ ├── steps.css │ │ │ │ │ │ ├── submenu.css │ │ │ │ │ │ ├── switch.css │ │ │ │ │ │ ├── tab-pane.css │ │ │ │ │ │ ├── table-column.css │ │ │ │ │ │ ├── table.css │ │ │ │ │ │ ├── tabs.css │ │ │ │ │ │ ├── tag.css │ │ │ │ │ │ ├── time-picker.css │ │ │ │ │ │ ├── time-select.css │ │ │ │ │ │ ├── tooltip.css │ │ │ │ │ │ ├── transfer.css │ │ │ │ │ │ ├── tree.css │ │ │ │ │ │ └── upload.css │ │ │ │ │ └── src │ │ │ │ │ │ ├── alert.scss │ │ │ │ │ │ ├── aside.scss │ │ │ │ │ │ ├── autocomplete.scss │ │ │ │ │ │ ├── badge.scss │ │ │ │ │ │ ├── base.scss │ │ │ │ │ │ ├── breadcrumb-item.scss │ │ │ │ │ │ ├── breadcrumb.scss │ │ │ │ │ │ ├── button-group.scss │ │ │ │ │ │ ├── button.scss │ │ │ │ │ │ ├── card.scss │ │ │ │ │ │ ├── carousel-item.scss │ │ │ │ │ │ ├── carousel.scss │ │ │ │ │ │ ├── cascader.scss │ │ │ │ │ │ ├── checkbox-button.scss │ │ │ │ │ │ ├── checkbox-group.scss │ │ │ │ │ │ ├── checkbox.scss │ │ │ │ │ │ ├── col.scss │ │ │ │ │ │ ├── collapse-item.scss │ │ │ │ │ │ ├── collapse.scss │ │ │ │ │ │ ├── color-picker.scss │ │ │ │ │ │ ├── common │ │ │ │ │ │ ├── popup.scss │ │ │ │ │ │ ├── transition.scss │ │ │ │ │ │ └── var.scss │ │ │ │ │ │ ├── container.scss │ │ │ │ │ │ ├── date-picker.scss │ │ │ │ │ │ ├── date-picker │ │ │ │ │ │ ├── date-picker.scss │ │ │ │ │ │ ├── date-range-picker.scss │ │ │ │ │ │ ├── date-table.scss │ │ │ │ │ │ ├── month-table.scss │ │ │ │ │ │ ├── picker-panel.scss │ │ │ │ │ │ ├── picker.scss │ │ │ │ │ │ ├── time-picker.scss │ │ │ │ │ │ ├── time-range-picker.scss │ │ │ │ │ │ ├── time-spinner.scss │ │ │ │ │ │ └── year-table.scss │ │ │ │ │ │ ├── dialog.scss │ │ │ │ │ │ ├── display.scss │ │ │ │ │ │ ├── dropdown-item.scss │ │ │ │ │ │ ├── dropdown-menu.scss │ │ │ │ │ │ ├── dropdown.scss │ │ │ │ │ │ ├── fonts │ │ │ │ │ │ ├── element-icons.ttf │ │ │ │ │ │ └── element-icons.woff │ │ │ │ │ │ ├── footer.scss │ │ │ │ │ │ ├── form-item.scss │ │ │ │ │ │ ├── form.scss │ │ │ │ │ │ ├── header.scss │ │ │ │ │ │ ├── icon.scss │ │ │ │ │ │ ├── index.scss │ │ │ │ │ │ ├── input-number.scss │ │ │ │ │ │ ├── input.scss │ │ │ │ │ │ ├── loading.scss │ │ │ │ │ │ ├── main.scss │ │ │ │ │ │ ├── menu-item-group.scss │ │ │ │ │ │ ├── menu-item.scss │ │ │ │ │ │ ├── menu.scss │ │ │ │ │ │ ├── message-box.scss │ │ │ │ │ │ ├── message.scss │ │ │ │ │ │ ├── mixins │ │ │ │ │ │ ├── _button.scss │ │ │ │ │ │ ├── config.scss │ │ │ │ │ │ ├── function.scss │ │ │ │ │ │ ├── mixins.scss │ │ │ │ │ │ └── utils.scss │ │ │ │ │ │ ├── notification.scss │ │ │ │ │ │ ├── option-group.scss │ │ │ │ │ │ ├── option.scss │ │ │ │ │ │ ├── pagination.scss │ │ │ │ │ │ ├── popover.scss │ │ │ │ │ │ ├── popper.scss │ │ │ │ │ │ ├── progress.scss │ │ │ │ │ │ ├── radio-button.scss │ │ │ │ │ │ ├── radio-group.scss │ │ │ │ │ │ ├── radio.scss │ │ │ │ │ │ ├── rate.scss │ │ │ │ │ │ ├── reset.scss │ │ │ │ │ │ ├── row.scss │ │ │ │ │ │ ├── scrollbar.scss │ │ │ │ │ │ ├── select-dropdown.scss │ │ │ │ │ │ ├── select.scss │ │ │ │ │ │ ├── slider.scss │ │ │ │ │ │ ├── spinner.scss │ │ │ │ │ │ ├── step.scss │ │ │ │ │ │ ├── steps.scss │ │ │ │ │ │ ├── submenu.scss │ │ │ │ │ │ ├── switch.scss │ │ │ │ │ │ ├── tab-pane.scss │ │ │ │ │ │ ├── table-column.scss │ │ │ │ │ │ ├── table.scss │ │ │ │ │ │ ├── tabs.scss │ │ │ │ │ │ ├── tag.scss │ │ │ │ │ │ ├── time-picker.scss │ │ │ │ │ │ ├── time-select.scss │ │ │ │ │ │ ├── tooltip.scss │ │ │ │ │ │ ├── transfer.scss │ │ │ │ │ │ ├── tree.scss │ │ │ │ │ │ └── upload.scss │ │ │ │ ├── time-picker │ │ │ │ │ └── index.js │ │ │ │ ├── time-select │ │ │ │ │ └── index.js │ │ │ │ ├── tooltip │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ └── main.js │ │ │ │ ├── transfer │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── main.vue │ │ │ │ │ │ └── transfer-panel.vue │ │ │ │ ├── tree │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ │ ├── model │ │ │ │ │ │ ├── node.js │ │ │ │ │ │ ├── tree-store.js │ │ │ │ │ │ └── util.js │ │ │ │ │ │ ├── tree-node.vue │ │ │ │ │ │ └── tree.vue │ │ │ │ └── upload │ │ │ │ │ ├── index.js │ │ │ │ │ └── src │ │ │ │ │ ├── ajax.js │ │ │ │ │ ├── index.vue │ │ │ │ │ ├── upload-dragger.vue │ │ │ │ │ ├── upload-list.vue │ │ │ │ │ └── upload.vue │ │ │ ├── src │ │ │ │ ├── directives │ │ │ │ │ ├── mousewheel.js │ │ │ │ │ └── repeat-click.js │ │ │ │ ├── index.js │ │ │ │ ├── locale │ │ │ │ │ ├── format.js │ │ │ │ │ ├── index.js │ │ │ │ │ └── lang │ │ │ │ │ │ ├── af-ZA.js │ │ │ │ │ │ ├── ar.js │ │ │ │ │ │ ├── bg.js │ │ │ │ │ │ ├── ca.js │ │ │ │ │ │ ├── cs-CZ.js │ │ │ │ │ │ ├── da.js │ │ │ │ │ │ ├── de.js │ │ │ │ │ │ ├── ee.js │ │ │ │ │ │ ├── el.js │ │ │ │ │ │ ├── en.js │ │ │ │ │ │ ├── es.js │ │ │ │ │ │ ├── fa.js │ │ │ │ │ │ ├── fi.js │ │ │ │ │ │ ├── fr.js │ │ │ │ │ │ ├── he.js │ │ │ │ │ │ ├── hu.js │ │ │ │ │ │ ├── id.js │ │ │ │ │ │ ├── it.js │ │ │ │ │ │ ├── ja.js │ │ │ │ │ │ ├── km.js │ │ │ │ │ │ ├── ko.js │ │ │ │ │ │ ├── ku.js │ │ │ │ │ │ ├── kz.js │ │ │ │ │ │ ├── lt.js │ │ │ │ │ │ ├── lv.js │ │ │ │ │ │ ├── mn.js │ │ │ │ │ │ ├── nb-NO.js │ │ │ │ │ │ ├── nl.js │ │ │ │ │ │ ├── pl.js │ │ │ │ │ │ ├── pt-br.js │ │ │ │ │ │ ├── pt.js │ │ │ │ │ │ ├── ro.js │ │ │ │ │ │ ├── ru-RU.js │ │ │ │ │ │ ├── sk.js │ │ │ │ │ │ ├── sl.js │ │ │ │ │ │ ├── sv-SE.js │ │ │ │ │ │ ├── ta.js │ │ │ │ │ │ ├── th.js │ │ │ │ │ │ ├── tk.js │ │ │ │ │ │ ├── tr-TR.js │ │ │ │ │ │ ├── ua.js │ │ │ │ │ │ ├── ug-CN.js │ │ │ │ │ │ ├── vi.js │ │ │ │ │ │ ├── zh-CN.js │ │ │ │ │ │ └── zh-TW.js │ │ │ │ ├── mixins │ │ │ │ │ ├── emitter.js │ │ │ │ │ ├── focus.js │ │ │ │ │ ├── locale.js │ │ │ │ │ └── migrating.js │ │ │ │ ├── transitions │ │ │ │ │ └── collapse-transition.js │ │ │ │ └── utils │ │ │ │ │ ├── after-leave.js │ │ │ │ │ ├── aria-dialog.js │ │ │ │ │ ├── aria-utils.js │ │ │ │ │ ├── clickoutside.js │ │ │ │ │ ├── date.js │ │ │ │ │ ├── dom.js │ │ │ │ │ ├── menu │ │ │ │ │ ├── aria-menubar.js │ │ │ │ │ ├── aria-menuitem.js │ │ │ │ │ └── aria-submenu.js │ │ │ │ │ ├── merge.js │ │ │ │ │ ├── popper.js │ │ │ │ │ ├── popup │ │ │ │ │ ├── index.js │ │ │ │ │ └── popup-manager.js │ │ │ │ │ ├── resize-event.js │ │ │ │ │ ├── scroll-into-view.js │ │ │ │ │ ├── scrollbar-width.js │ │ │ │ │ ├── shared.js │ │ │ │ │ ├── util.js │ │ │ │ │ ├── vdom.js │ │ │ │ │ └── vue-popper.js │ │ │ └── types │ │ │ │ ├── alert.d.ts │ │ │ │ ├── aside.d.ts │ │ │ │ ├── autocomplete.d.ts │ │ │ │ ├── badge.d.ts │ │ │ │ ├── breadcrumb-item.d.ts │ │ │ │ ├── breadcrumb.d.ts │ │ │ │ ├── button-group.d.ts │ │ │ │ ├── button.d.ts │ │ │ │ ├── card.d.ts │ │ │ │ ├── carousel-item.d.ts │ │ │ │ ├── carousel.d.ts │ │ │ │ ├── cascader.d.ts │ │ │ │ ├── checkbox-button.d.ts │ │ │ │ ├── checkbox-group.d.ts │ │ │ │ ├── checkbox.d.ts │ │ │ │ ├── col.d.ts │ │ │ │ ├── collapse-item.d.ts │ │ │ │ ├── collapse.d.ts │ │ │ │ ├── color-picker.d.ts │ │ │ │ ├── component.d.ts │ │ │ │ ├── container.d.ts │ │ │ │ ├── date-picker.d.ts │ │ │ │ ├── dialog.d.ts │ │ │ │ ├── dropdown-item.d.ts │ │ │ │ ├── dropdown-menu.d.ts │ │ │ │ ├── dropdown.d.ts │ │ │ │ ├── element-ui.d.ts │ │ │ │ ├── footer.d.ts │ │ │ │ ├── form-item.d.ts │ │ │ │ ├── form.d.ts │ │ │ │ ├── header.d.ts │ │ │ │ ├── index.d.ts │ │ │ │ ├── input-number.d.ts │ │ │ │ ├── input.d.ts │ │ │ │ ├── loading.d.ts │ │ │ │ ├── main.d.ts │ │ │ │ ├── menu-item-group.d.ts │ │ │ │ ├── menu-item.d.ts │ │ │ │ ├── menu.d.ts │ │ │ │ ├── message-box.d.ts │ │ │ │ ├── message.d.ts │ │ │ │ ├── notification.d.ts │ │ │ │ ├── option-group.d.ts │ │ │ │ ├── option.d.ts │ │ │ │ ├── pagination.d.ts │ │ │ │ ├── popover.d.ts │ │ │ │ ├── progress.d.ts │ │ │ │ ├── radio-button.d.ts │ │ │ │ ├── radio-group.d.ts │ │ │ │ ├── radio.d.ts │ │ │ │ ├── rate.d.ts │ │ │ │ ├── row.d.ts │ │ │ │ ├── select.d.ts │ │ │ │ ├── slider.d.ts │ │ │ │ ├── step.d.ts │ │ │ │ ├── steps.d.ts │ │ │ │ ├── submenu.d.ts │ │ │ │ ├── switch.d.ts │ │ │ │ ├── tab-pane.d.ts │ │ │ │ ├── table-column.d.ts │ │ │ │ ├── table.d.ts │ │ │ │ ├── tabs.d.ts │ │ │ │ ├── tag.d.ts │ │ │ │ ├── time-picker.d.ts │ │ │ │ ├── time-select.d.ts │ │ │ │ ├── tooltip.d.ts │ │ │ │ ├── transfer.d.ts │ │ │ │ ├── tree.d.ts │ │ │ │ └── upload.d.ts │ │ ├── font │ │ │ ├── css │ │ │ │ └── font-awesome.min.css │ │ │ ├── fonts │ │ │ │ ├── FontAwesome.otf │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ ├── fontawesome-webfont.woff2 │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ └── icon │ │ │ │ ├── demo.css │ │ │ │ ├── iconfont.css │ │ │ │ ├── iconfont.eot │ │ │ │ ├── iconfont.js │ │ │ │ ├── iconfont.svg │ │ │ │ ├── iconfont.ttf │ │ │ │ └── iconfont.woff │ │ └── vue │ │ │ ├── vue-resource.js │ │ │ ├── vue-router.js │ │ │ ├── vue.js │ │ │ └── vuex.min.js │ └── store │ │ └── store.js │ └── templates │ ├── home │ ├── index.html │ ├── login.html │ └── register.html │ └── site │ └── goods.html └── test └── java └── cn └── tycoding └── springboot └── SpringbootApplicationTests.java /.gitignore: -------------------------------------------------------------------------------- 1 | /target/ 2 | !.mvn/wrapper/maven-wrapper.jar 3 | 4 | ### STS ### 5 | .apt_generated 6 | .classpath 7 | .factorypath 8 | .project 9 | .settings 10 | .springBeans 11 | .sts4-cache 12 | 13 | ### IntelliJ IDEA ### 14 | .idea 15 | *.iws 16 | *.iml 17 | *.ipr 18 | 19 | ### NetBeans ### 20 | /nbproject/private/ 21 | /build/ 22 | /nbbuild/ 23 | /dist/ 24 | /nbdist/ 25 | /.nb-gradle/ -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip 2 | -------------------------------------------------------------------------------- /README/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/README/1.png -------------------------------------------------------------------------------- /README/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/README/2.png -------------------------------------------------------------------------------- /README/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/README/3.png -------------------------------------------------------------------------------- /README/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/README/4.png -------------------------------------------------------------------------------- /db/sys_schema.sql: -------------------------------------------------------------------------------- 1 | -- CREATE DATABASE springboot DEFAULT CHARACTER SET utf8; 2 | 3 | DROP TABLE IF EXISTS tb_user; 4 | DROP TABLE IF EXISTS tb_goods; 5 | 6 | -- 用户表 7 | CREATE TABLE tb_user( 8 | id BIGINT AUTO_INCREMENT COMMENT '编号', 9 | username VARCHAR(100) COMMENT '用户名', 10 | password VARCHAR(100) COMMENT '密码', 11 | CONSTRAINT pk_sys_user PRIMARY KEY(id) 12 | ) CHARSET=utf8 ENGINE=InnoDB; 13 | 14 | INSERT INTO tb_user VALUES(1, 'tycoding', '123'); 15 | INSERT INTO tb_user VALUES(2, '涂陌', '123'); 16 | 17 | -- 商品表 18 | CREATE TABLE tb_goods( 19 | id BIGINT AUTO_INCREMENT COMMENT '编号', 20 | title VARCHAR(1000) COMMENT '商品标题', 21 | price VARCHAR(100) COMMENT '商品价格', 22 | image VARCHAR(1000) COMMENT '商品图片', 23 | brand VARCHAR(100) COMMENT '商品品牌', 24 | CONSTRAINT pk_sys_user PRIMARY KEY(id) 25 | ) CHARSET=utf8 ENGINE=InnoDB; 26 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/SpringbootApplication.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class SpringbootApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(SpringbootApplication.class, args); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/controller/HomeController.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.controller; 2 | 3 | import org.springframework.stereotype.Controller; 4 | import org.springframework.web.bind.annotation.GetMapping; 5 | 6 | /** 7 | * 首页控制器 8 | * 9 | * @auther TyCoding 10 | * @date 2018/9/28 11 | */ 12 | @Controller 13 | public class HomeController { 14 | 15 | /** 16 | * 系统首页 17 | * 18 | * @return 19 | */ 20 | @GetMapping(value = {"/", "/index"}) 21 | public String index() { 22 | return "home/index"; 23 | } 24 | 25 | /** 26 | * 商品列表页 27 | * 28 | * @return 29 | */ 30 | @GetMapping(value = {"/goods"}) 31 | public String user() { 32 | return "site/goods"; 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/controller/admin/UserController.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.controller.admin; 2 | 3 | import cn.tycoding.entity.User; 4 | import cn.tycoding.service.UserService; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.web.bind.annotation.RequestMapping; 7 | import org.springframework.web.bind.annotation.RestController; 8 | 9 | import java.util.List; 10 | 11 | /** 12 | * @auther TyCoding 13 | * @date 2018/9/29 14 | */ 15 | @RestController 16 | public class UserController { 17 | 18 | @Autowired 19 | private UserService userService; 20 | 21 | /** 22 | * 查询所有 23 | * 24 | * @return 25 | */ 26 | @RequestMapping("/findAll") 27 | public List findAll() { 28 | return userService.findAll(); 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/entity/Goods.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.entity; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 商品表 7 | * @auther TyCoding 8 | * @date 2018/9/29 9 | */ 10 | public class Goods implements Serializable { 11 | 12 | private Long id; //商品编号 13 | private String title; //商品标题 14 | private String price; //商品价格 15 | private String image; //商品图片 16 | private String brand; //商品品牌 17 | 18 | public Long getId() { 19 | return id; 20 | } 21 | 22 | public void setId(Long id) { 23 | this.id = id; 24 | } 25 | 26 | public String getPrice() { 27 | return price; 28 | } 29 | 30 | public void setPrice(String price) { 31 | this.price = price; 32 | } 33 | 34 | public String getBrand() { 35 | return brand; 36 | } 37 | 38 | public void setBrand(String brand) { 39 | this.brand = brand; 40 | } 41 | 42 | public String getTitle() { 43 | return title; 44 | } 45 | 46 | public void setTitle(String title) { 47 | this.title = title; 48 | } 49 | 50 | public String getImage() { 51 | return image; 52 | } 53 | 54 | public void setImage(String image) { 55 | this.image = image; 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/entity/PageBean.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.entity; 2 | 3 | import java.io.Serializable; 4 | import java.util.List; 5 | 6 | /** 7 | * @auther TyCoding 8 | * @date 2018/7/29 9 | */ 10 | public class PageBean implements Serializable { 11 | 12 | //当前页 13 | private long total; 14 | //当前页记录 15 | private List rows; 16 | 17 | public PageBean(long total, List rows) { 18 | this.total = total; 19 | this.rows = rows; 20 | } 21 | 22 | public long getTotal() { 23 | return total; 24 | } 25 | 26 | public void setTotal(long total) { 27 | this.total = total; 28 | } 29 | 30 | public List getRows() { 31 | return rows; 32 | } 33 | 34 | public void setRows(List rows) { 35 | this.rows = rows; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/entity/Result.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.entity; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * @auther TyCoding 7 | * @date 2018/9/28 8 | */ 9 | public class Result implements Serializable { 10 | 11 | //判断结果 12 | private boolean success; 13 | //返回信息 14 | private String message; 15 | 16 | public Result() { 17 | } 18 | 19 | public Result(boolean success, String message) { 20 | this.success = success; 21 | this.message = message; 22 | } 23 | 24 | public boolean isSuccess() { 25 | return success; 26 | } 27 | 28 | public void setSuccess(boolean success) { 29 | this.success = success; 30 | } 31 | 32 | public String getMessage() { 33 | return message; 34 | } 35 | 36 | public void setMessage(String message) { 37 | this.message = message; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/entity/User.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.entity; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * @auther TyCoding 7 | * @date 2018/9/28 8 | */ 9 | public class User implements Serializable { 10 | 11 | private Long id; //编号 12 | private String username; //用户名 13 | private String password; //密码 14 | 15 | public User() { 16 | } 17 | 18 | public User(String username, String password) { 19 | this.username = username; 20 | this.password = password; 21 | } 22 | 23 | public Long getId() { 24 | return id; 25 | } 26 | 27 | public void setId(Long id) { 28 | this.id = id; 29 | } 30 | 31 | public String getUsername() { 32 | return username; 33 | } 34 | 35 | public void setUsername(String username) { 36 | this.username = username; 37 | } 38 | 39 | public String getPassword() { 40 | return password; 41 | } 42 | 43 | public void setPassword(String password) { 44 | this.password = password; 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/mapper/GoodsMapper.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.mapper; 2 | 3 | import cn.tycoding.entity.Goods; 4 | import com.github.pagehelper.Page; 5 | import org.apache.ibatis.annotations.Mapper; 6 | 7 | import java.util.List; 8 | 9 | /** 10 | * @auther TyCoding 11 | * @date 2018/9/19 12 | */ 13 | @Mapper 14 | public interface GoodsMapper { 15 | 16 | List findAll(); 17 | 18 | Page findByPage(Goods goods); 19 | 20 | List findById(Long id); 21 | 22 | void create(Goods goods); 23 | 24 | void update(Goods goods); 25 | 26 | void delete(Long id); 27 | } 28 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/mapper/UserMapper.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.mapper; 2 | 3 | import cn.tycoding.entity.User; 4 | import org.apache.ibatis.annotations.Mapper; 5 | 6 | import java.util.List; 7 | 8 | /** 9 | * @auther TyCoding 10 | * @date 2018/9/28 11 | */ 12 | @Mapper 13 | public interface UserMapper { 14 | 15 | List findAll(); 16 | 17 | List findById(Long id); 18 | 19 | void create(User user); 20 | 21 | void delete(Long id); 22 | 23 | void update(User user); 24 | 25 | User findByName(String name); 26 | } 27 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/service/BaseService.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.service; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * 通用的Service层接口 7 | * 8 | * @auther TyCoding 9 | * @date 2018/9/28 10 | */ 11 | public interface BaseService { 12 | 13 | /** 14 | * 查询所有 15 | * 16 | * @return 17 | */ 18 | List findAll(); 19 | 20 | /** 21 | * 根据ID查询 22 | * 23 | * @param id 24 | * @return 25 | */ 26 | List findById(Long id); 27 | 28 | /** 29 | * 添加 30 | * 31 | * @param t 32 | */ 33 | void create(T t); 34 | 35 | /** 36 | * 删除(批量) 37 | * 38 | * @param ids 39 | */ 40 | void delete(Long... ids); 41 | 42 | /** 43 | * 修改 44 | * 45 | * @param t 46 | */ 47 | void update(T t); 48 | } 49 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/service/GoodsService.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.service; 2 | 3 | import cn.tycoding.entity.Goods; 4 | import cn.tycoding.entity.PageBean; 5 | 6 | /** 7 | * @auther TyCoding 8 | * @date 2018/9/19 9 | */ 10 | public interface GoodsService extends BaseService { 11 | 12 | /** 13 | * 分页查询 14 | * @param goods 查询条件 15 | * @param pageCode 当前页 16 | * @param pageSize 每页的记录数 17 | * @return 18 | */ 19 | PageBean findByPage(Goods goods, int pageCode, int pageSize); 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/service/UserService.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.service; 2 | 3 | import cn.tycoding.entity.User; 4 | 5 | /** 6 | * @auther TyCoding 7 | * @date 2018/9/28 8 | */ 9 | public interface UserService extends BaseService { 10 | 11 | User findByName(String name); 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/cn/tycoding/service/impl/UserServiceImpl.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.service.impl; 2 | 3 | import cn.tycoding.entity.User; 4 | import cn.tycoding.mapper.UserMapper; 5 | import cn.tycoding.service.UserService; 6 | import org.springframework.beans.factory.annotation.Autowired; 7 | import org.springframework.stereotype.Service; 8 | 9 | import java.util.List; 10 | 11 | /** 12 | * @auther TyCoding 13 | * @date 2018/9/28 14 | */ 15 | @Service 16 | public class UserServiceImpl implements UserService { 17 | 18 | @Autowired 19 | private UserMapper userMapper; 20 | 21 | @Override 22 | public List findAll() { 23 | return userMapper.findAll(); 24 | } 25 | 26 | @Override 27 | public List findById(Long id) { 28 | return userMapper.findById(id); 29 | } 30 | 31 | @Override 32 | public void create(User user) { 33 | userMapper.create(user); 34 | } 35 | 36 | @Override 37 | public void delete(Long... ids) { 38 | for (Long id : ids) { 39 | userMapper.delete(id); 40 | } 41 | } 42 | 43 | @Override 44 | public void update(User user) { 45 | userMapper.update(user); 46 | } 47 | 48 | @Override 49 | public User findByName(String name) { 50 | return userMapper.findByName(name); 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /src/main/resources/mapper/UserMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 15 | 16 | 17 | 18 | INSERT INTO tb_user(username, password) VALUES (#{username}, #{password}) 19 | 20 | 21 | 22 | 23 | DELETE FROM tb_user WHERE id = #{id} 24 | 25 | 26 | 27 | 28 | UPDATE tb_user SET WHERE 1=1 29 | 30 | username = #{username}, 31 | 32 | 33 | password = #{password} 34 | 35 | WHERE id = #{id} 36 | 37 | 38 | 39 | 42 | -------------------------------------------------------------------------------- /src/main/resources/static/css/goods.css: -------------------------------------------------------------------------------- 1 | a { 2 | text-decoration: none; 3 | } 4 | 5 | #author { 6 | float: right; 7 | border-bottom: none; 8 | } 9 | 10 | #logo { 11 | float: left; 12 | border-bottom: none; 13 | color: #409EFF; 14 | font-weight: bold; 15 | font-size: 18px; 16 | } 17 | 18 | #author > img { 19 | border: 1px solid #eee; 20 | border-radius: 100%; 21 | box-sizing: border-box; 22 | height: 30px; 23 | margin: 0 8px 0 10px; 24 | padding: 2px; 25 | width: 30px; 26 | } 27 | 28 | #author .el-dropdown { 29 | display: inline-block; 30 | position: relative; 31 | color: #606266; 32 | font-size: 14px; 33 | } 34 | 35 | .el-dropdown-menu__item a { 36 | list-style: none; 37 | line-height: 36px; 38 | /*padding: 0 20px;*/ 39 | margin: 0; 40 | font-size: 14px; 41 | color: #606266; 42 | cursor: pointer; 43 | outline: 0; 44 | text-decoration: none; 45 | } 46 | 47 | #main { 48 | display: inline-block; 49 | width: 100%; 50 | } 51 | 52 | .footer { 53 | width: 100%; 54 | /*bottom: 0;*/ 55 | } 56 | 57 | .footer .footer-inner { 58 | margin-top: 10px; 59 | color: rgb(153, 153, 153); 60 | margin-bottom: 25px; 61 | } 62 | 63 | .footer .footer-inner .copyright { 64 | margin-bottom: 3px; 65 | } 66 | 67 | .footer .footer-inner label { 68 | margin-left: -30%; 69 | } -------------------------------------------------------------------------------- /src/main/resources/static/css/login.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | padding: 0; 4 | width: 100%; 5 | height: 100%; 6 | } 7 | 8 | #login { 9 | background: url("../image/login.png"); 10 | background-position: center center; 11 | background-size: cover; 12 | background-repeat: no-repeat; 13 | z-index: -999; 14 | content: ""; 15 | position: absolute; 16 | left: 0; 17 | top: 0; 18 | width: 100%; 19 | height: 100%; 20 | overflow: hidden; 21 | } 22 | 23 | #main { 24 | font-family: Helvetica, sans-serif; 25 | margin-top: 8%; 26 | text-align: center; 27 | } 28 | 29 | .header { 30 | border-bottom: 1px solid #ebeef5; 31 | margin-bottom: 20px; 32 | padding: 15px 20px; 33 | } 34 | 35 | .header > .item { 36 | font-size: 23px; 37 | color: #3a8ee6; 38 | } 39 | 40 | .btn { 41 | width: 100%; 42 | border-radius: 28px; 43 | } 44 | 45 | #form { 46 | padding: 0 30px; 47 | } 48 | 49 | .check { 50 | float: left; 51 | } 52 | 53 | .tips { 54 | font-size: 13px; 55 | text-align: right; 56 | color: #409EFE; 57 | text-decoration: none; 58 | } 59 | 60 | .tips:hover { 61 | color: #3a8ee6; 62 | } -------------------------------------------------------------------------------- /src/main/resources/static/css/public.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | padding: 0; 4 | } 5 | 6 | a { 7 | text-decoration: none; 8 | } 9 | 10 | #tag { 11 | margin: -19px 0px 16px -4px; 12 | width: 106%; 13 | } 14 | 15 | .avue-tip { 16 | -webkit-box-align: center; 17 | align-items: center; 18 | display: flex; 19 | margin-bottom: 10px; 20 | margin-top: 20px; 21 | position: relative; 22 | width: 100%; 23 | } 24 | 25 | .pagination { 26 | margin-top: 18px; 27 | /*float: right;*/ 28 | padding: 0 15px; 29 | } 30 | 31 | .el-table-column { 32 | text-align: center; 33 | } 34 | 35 | .name { 36 | color: black; 37 | } 38 | 39 | .count { 40 | color: #409eff; 41 | font-size: 16px; 42 | font-weight: 700; 43 | padding: 0 6px; 44 | } -------------------------------------------------------------------------------- /src/main/resources/static/image/login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/image/login.png -------------------------------------------------------------------------------- /src/main/resources/static/js/index.js: -------------------------------------------------------------------------------- 1 | //设置全局表单提交格式 2 | // Vue.http.options.emulateJSON = true; 3 | 4 | //Vue实例 5 | new Vue({ 6 | el: '#app', 7 | data() { 8 | return { 9 | name: '', 10 | 11 | activeIndex: '1' 12 | } 13 | }, 14 | methods: { 15 | //从vuex中获取用户登录的用户名 16 | getName(){ 17 | this.name = sessionStorage.getItem("name"); 18 | } 19 | }, 20 | //声明周期钩子函数-->在data和methods渲染结束后执行 21 | created() { 22 | this.getName(); //获取用户登录名 23 | } 24 | }); -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 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. -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/directives/mousewheel.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | 5 | var _normalizeWheel = require('normalize-wheel'); 6 | 7 | var _normalizeWheel2 = _interopRequireDefault(_normalizeWheel); 8 | 9 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 10 | 11 | var isFirefox = typeof navigator !== 'undefined' && navigator.userAgent.toLowerCase().indexOf('firefox') > -1; 12 | 13 | var mousewheel = function mousewheel(element, callback) { 14 | if (element && element.addEventListener) { 15 | element.addEventListener(isFirefox ? 'DOMMouseScroll' : 'mousewheel', function (event) { 16 | var normalized = (0, _normalizeWheel2.default)(event); 17 | callback && callback.apply(this, [event, normalized]); 18 | }); 19 | } 20 | }; 21 | 22 | exports.default = { 23 | bind: function bind(el, binding) { 24 | mousewheel(el, binding.value); 25 | } 26 | }; -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/directives/repeat-click.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | 5 | var _dom = require('element-ui/lib/utils/dom'); 6 | 7 | exports.default = { 8 | bind: function bind(el, binding, vnode) { 9 | var interval = null; 10 | var startTime = void 0; 11 | var handler = function handler() { 12 | return vnode.context[binding.expression].apply(); 13 | }; 14 | var clear = function clear() { 15 | if (new Date() - startTime < 100) { 16 | handler(); 17 | } 18 | clearInterval(interval); 19 | interval = null; 20 | }; 21 | 22 | (0, _dom.on)(el, 'mousedown', function (e) { 23 | if (e.button !== 0) return; 24 | startTime = new Date(); 25 | (0, _dom.once)(document, 'mouseup', clear); 26 | clearInterval(interval); 27 | interval = setInterval(handler, 100); 28 | }); 29 | } 30 | }; -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/mixins/emitter.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | exports.__esModule = true; 4 | function _broadcast(componentName, eventName, params) { 5 | this.$children.forEach(function (child) { 6 | var name = child.$options.componentName; 7 | 8 | if (name === componentName) { 9 | child.$emit.apply(child, [eventName].concat(params)); 10 | } else { 11 | _broadcast.apply(child, [componentName, eventName].concat([params])); 12 | } 13 | }); 14 | } 15 | exports.default = { 16 | methods: { 17 | dispatch: function dispatch(componentName, eventName, params) { 18 | var parent = this.$parent || this.$root; 19 | var name = parent.$options.componentName; 20 | 21 | while (parent && (!name || name !== componentName)) { 22 | parent = parent.$parent; 23 | 24 | if (parent) { 25 | name = parent.$options.componentName; 26 | } 27 | } 28 | if (parent) { 29 | parent.$emit.apply(parent, [eventName].concat(params)); 30 | } 31 | }, 32 | broadcast: function broadcast(componentName, eventName, params) { 33 | _broadcast.call(this, componentName, eventName, params); 34 | } 35 | } 36 | }; -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/mixins/focus.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | exports.__esModule = true; 4 | 5 | exports.default = function (ref) { 6 | return { 7 | methods: { 8 | focus: function focus() { 9 | this.$refs[ref].focus(); 10 | } 11 | } 12 | }; 13 | }; 14 | 15 | ; -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/mixins/locale.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | 5 | var _locale = require('element-ui/lib/locale'); 6 | 7 | exports.default = { 8 | methods: { 9 | t: function t() { 10 | for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { 11 | args[_key] = arguments[_key]; 12 | } 13 | 14 | return _locale.t.apply(this, args); 15 | } 16 | } 17 | }; -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/alert.css: -------------------------------------------------------------------------------- 1 | .el-alert{width:100%;padding:8px 16px;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:4px;position:relative;background-color:#fff;overflow:hidden;opacity:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:opacity .2s;transition:opacity .2s}.el-alert.is-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-alert--success{background-color:#f0f9eb;color:#67c23a}.el-alert--success .el-alert__description{color:#67c23a}.el-alert--info{background-color:#f4f4f5;color:#909399}.el-alert--info .el-alert__description{color:#909399}.el-alert--warning{background-color:#fdf6ec;color:#e6a23c}.el-alert--warning .el-alert__description{color:#e6a23c}.el-alert--error{background-color:#fef0f0;color:#f56c6c}.el-alert--error .el-alert__description{color:#f56c6c}.el-alert__content{display:table-cell;padding:0 8px}.el-alert__icon{font-size:16px;width:16px}.el-alert__icon.is-big{font-size:28px;width:28px}.el-alert__title{font-size:13px;line-height:18px}.el-alert__title.is-bold{font-weight:700}.el-alert .el-alert__description{font-size:12px;margin:5px 0 0}.el-alert__closebtn{font-size:12px;color:#c0c4cc;opacity:1;position:absolute;top:12px;right:15px;cursor:pointer}.el-alert__closebtn.is-customed{font-style:normal;font-size:13px;top:9px}.el-alert-fade-enter,.el-alert-fade-leave-active{opacity:0} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/aside.css: -------------------------------------------------------------------------------- 1 | .el-aside{overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/badge.css: -------------------------------------------------------------------------------- 1 | .el-badge{position:relative;vertical-align:middle;display:inline-block}.el-badge__content{background-color:#f56c6c;border-radius:10px;color:#fff;display:inline-block;font-size:12px;height:18px;line-height:18px;padding:0 6px;text-align:center;white-space:nowrap;border:1px solid #fff}.el-badge__content.is-fixed{position:absolute;top:0;right:10px;-webkit-transform:translateY(-50%) translateX(100%);transform:translateY(-50%) translateX(100%)}.el-badge__content.is-fixed.is-dot{right:5px}.el-badge__content.is-dot{height:8px;width:8px;padding:0;right:0;border-radius:50%} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/breadcrumb-item.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/breadcrumb-item.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/breadcrumb.css: -------------------------------------------------------------------------------- 1 | .el-breadcrumb{font-size:14px;line-height:1}.el-breadcrumb::after,.el-breadcrumb::before{display:table;content:""}.el-breadcrumb::after{clear:both}.el-breadcrumb__separator{margin:0 9px;font-weight:700;color:#c0c4cc}.el-breadcrumb__separator[class*=icon]{margin:0 6px;font-weight:400}.el-breadcrumb__item{float:left}.el-breadcrumb__inner{color:#606266}.el-breadcrumb__inner a,.el-breadcrumb__inner.is-link{font-weight:700;text-decoration:none;-webkit-transition:color .2s cubic-bezier(.645,.045,.355,1);transition:color .2s cubic-bezier(.645,.045,.355,1);color:#303133}.el-breadcrumb__inner a:hover,.el-breadcrumb__inner.is-link:hover{color:#409EFF;cursor:pointer}.el-breadcrumb__item:last-child .el-breadcrumb__inner,.el-breadcrumb__item:last-child .el-breadcrumb__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover,.el-breadcrumb__item:last-child .el-breadcrumb__inner:hover{font-weight:400;color:#606266;cursor:text}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/button-group.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/button-group.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/card.css: -------------------------------------------------------------------------------- 1 | .el-card{border-radius:4px;border:1px solid #ebeef5;background-color:#fff;overflow:hidden;color:#303133;-webkit-transition:.3s;transition:.3s}.el-card.is-always-shadow,.el-card.is-hover-shadow:focus,.el-card.is-hover-shadow:hover{-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-card__header{padding:18px 20px;border-bottom:1px solid #ebeef5;-webkit-box-sizing:border-box;box-sizing:border-box}.el-card__body{padding:20px} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/carousel-item.css: -------------------------------------------------------------------------------- 1 | .el-carousel__item,.el-carousel__mask{position:absolute;height:100%;top:0;left:0}.el-carousel__item{width:100%;display:inline-block;overflow:hidden;z-index:0}.el-carousel__item.is-active{z-index:2}.el-carousel__item.is-animating{-webkit-transition:-webkit-transform .4s ease-in-out;transition:-webkit-transform .4s ease-in-out;transition:transform .4s ease-in-out;transition:transform .4s ease-in-out,-webkit-transform .4s ease-in-out}.el-carousel__item--card{width:50%;-webkit-transition:-webkit-transform .4s ease-in-out;transition:-webkit-transform .4s ease-in-out;transition:transform .4s ease-in-out;transition:transform .4s ease-in-out,-webkit-transform .4s ease-in-out}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:1}.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask,.el-carousel__item--card.is-in-stage:hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:2}.el-carousel__mask{width:100%;background-color:#fff;opacity:.24;-webkit-transition:.2s;transition:.2s} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/checkbox-button.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/checkbox-button.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/checkbox-group.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/checkbox-group.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/collapse-item.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/collapse-item.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/container.css: -------------------------------------------------------------------------------- 1 | .el-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;-webkit-box-sizing:border-box;box-sizing:border-box;min-width:0}.el-container.is-vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/display.css: -------------------------------------------------------------------------------- 1 | @media only screen and (max-width:767px){.hidden-xs-only{display:none!important}}@media only screen and (min-width:768px){.hidden-sm-and-up{display:none!important}}@media only screen and (min-width:768px) and (max-width:991px){.hidden-sm-only{display:none!important}}@media only screen and (max-width:991px){.hidden-sm-and-down{display:none!important}}@media only screen and (min-width:992px){.hidden-md-and-up{display:none!important}}@media only screen and (min-width:992px) and (max-width:1199px){.hidden-md-only{display:none!important}}@media only screen and (max-width:1199px){.hidden-md-and-down{display:none!important}}@media only screen and (min-width:1200px){.hidden-lg-and-up{display:none!important}}@media only screen and (min-width:1200px) and (max-width:1919px){.hidden-lg-only{display:none!important}}@media only screen and (max-width:1919px){.hidden-lg-and-down{display:none!important}}@media only screen and (min-width:1920px){.hidden-xl-only{display:none!important}} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/dropdown-item.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/dropdown-item.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/dropdown-menu.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/dropdown-menu.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/fonts/element-icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/fonts/element-icons.ttf -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/fonts/element-icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/fonts/element-icons.woff -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/footer.css: -------------------------------------------------------------------------------- 1 | .el-footer{padding:0 20px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/form-item.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/form-item.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/header.css: -------------------------------------------------------------------------------- 1 | .el-header{padding:0 20px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/main.css: -------------------------------------------------------------------------------- 1 | .el-main{-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box;padding:20px} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/menu-item-group.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/menu-item-group.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/menu-item.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/menu-item.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/option-group.css: -------------------------------------------------------------------------------- 1 | .el-select-group{margin:0;padding:0}.el-select-group__wrap{position:relative;list-style:none;margin:0;padding:0}.el-select-group__wrap:not(:last-of-type){padding-bottom:24px}.el-select-group__wrap:not(:last-of-type)::after{content:'';position:absolute;display:block;left:20px;right:20px;bottom:12px;height:1px;background:#e4e7ed}.el-select-group__title{padding-left:20px;font-size:12px;color:#909399;line-height:30px}.el-select-group .el-select-dropdown__item{padding-left:20px} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/option.css: -------------------------------------------------------------------------------- 1 | .el-select-dropdown__item{font-size:14px;padding:0 20px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#606266;height:34px;line-height:34px;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer}.el-select-dropdown__item.is-disabled{color:#c0c4cc;cursor:not-allowed}.el-select-dropdown__item.is-disabled:hover{background-color:#fff}.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{background-color:#f5f7fa}.el-select-dropdown__item.selected{color:#409EFF;font-weight:700}.el-select-dropdown__item span{line-height:34px!important} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/popper.css: -------------------------------------------------------------------------------- 1 | .el-popper .popper__arrow,.el-popper .popper__arrow::after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.el-popper .popper__arrow{border-width:6px;-webkit-filter:drop-shadow(0 2px 12px rgba(0, 0, 0, .03));filter:drop-shadow(0 2px 12px rgba(0, 0, 0, .03))}.el-popper .popper__arrow::after{content:" ";border-width:6px}.el-popper[x-placement^=top]{margin-bottom:12px}.el-popper[x-placement^=top] .popper__arrow{bottom:-6px;left:50%;margin-right:3px;border-top-color:#ebeef5;border-bottom-width:0}.el-popper[x-placement^=top] .popper__arrow::after{bottom:1px;margin-left:-6px;border-top-color:#fff;border-bottom-width:0}.el-popper[x-placement^=bottom]{margin-top:12px}.el-popper[x-placement^=bottom] .popper__arrow{top:-6px;left:50%;margin-right:3px;border-top-width:0;border-bottom-color:#ebeef5}.el-popper[x-placement^=bottom] .popper__arrow::after{top:1px;margin-left:-6px;border-top-width:0;border-bottom-color:#fff}.el-popper[x-placement^=right]{margin-left:12px}.el-popper[x-placement^=right] .popper__arrow{top:50%;left:-6px;margin-bottom:3px;border-right-color:#ebeef5;border-left-width:0}.el-popper[x-placement^=right] .popper__arrow::after{bottom:-6px;left:1px;border-right-color:#fff;border-left-width:0}.el-popper[x-placement^=left]{margin-right:12px}.el-popper[x-placement^=left] .popper__arrow{top:50%;right:-6px;margin-bottom:3px;border-right-width:0;border-left-color:#ebeef5}.el-popper[x-placement^=left] .popper__arrow::after{right:1px;bottom:-6px;margin-left:-6px;border-right-width:0;border-left-color:#fff} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/radio-group.css: -------------------------------------------------------------------------------- 1 | .el-radio-group{display:inline-block;line-height:1;vertical-align:middle;font-size:0} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/rate.css: -------------------------------------------------------------------------------- 1 | .el-rate__icon,.el-rate__item{position:relative;display:inline-block}.el-rate{height:20px;line-height:1}.el-rate:active,.el-rate:focus{outline-width:0}.el-rate__item{font-size:0;vertical-align:middle}.el-rate__icon{font-size:18px;margin-right:6px;color:#c0c4cc;-webkit-transition:.3s;transition:.3s}.el-rate__decimal,.el-rate__icon .path2{position:absolute;top:0;left:0}.el-rate__icon.hover{-webkit-transform:scale(1.15);transform:scale(1.15)}.el-rate__decimal{display:inline-block;overflow:hidden}.el-rate__text{font-size:14px;vertical-align:middle} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/reset.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";body{font-family:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","微软雅黑",Arial,sans-serif;font-weight:400;font-size:14px;color:#000;-webkit-font-smoothing:antialiased}a{color:#409EFF;text-decoration:none}a:focus,a:hover{color:#66b1ff}a:active{color:#3a8ee6}h1,h2,h3,h4,h5,h6{color:#606266;font-weight:inherit}h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child,p:first-child{margin-top:0}h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child,p:last-child{margin-bottom:0}h1{font-size:20px}h2{font-size:18px}h3{font-size:16px}h4,h5,h6,p{font-size:inherit}p{line-height:1.8}sub,sup{font-size:13px}small{font-size:12px}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/row.css: -------------------------------------------------------------------------------- 1 | .el-row{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box}.el-row::after,.el-row::before{display:table;content:""}.el-row::after{clear:both}.el-row--flex{display:-webkit-box;display:-ms-flexbox;display:flex}.el-row--flex:after,.el-row--flex:before{display:none}.el-row--flex.is-justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-row--flex.is-justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.el-row--flex.is-justify-space-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-row--flex.is-justify-space-around{-ms-flex-pack:distribute;justify-content:space-around}.el-row--flex.is-align-middle{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-row--flex.is-align-bottom{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/scrollbar.css: -------------------------------------------------------------------------------- 1 | .el-scrollbar{overflow:hidden;position:relative}.el-scrollbar:active>.el-scrollbar__bar,.el-scrollbar:focus>.el-scrollbar__bar,.el-scrollbar:hover>.el-scrollbar__bar{opacity:1;-webkit-transition:opacity 340ms ease-out;transition:opacity 340ms ease-out}.el-scrollbar__wrap{overflow:scroll;height:100%}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{width:0;height:0}.el-scrollbar__thumb{position:relative;display:block;width:0;height:0;cursor:pointer;border-radius:inherit;background-color:rgba(144,147,153,.3);-webkit-transition:.3s background-color;transition:.3s background-color}.el-scrollbar__thumb:hover{background-color:rgba(144,147,153,.5)}.el-scrollbar__bar{position:absolute;right:2px;bottom:2px;z-index:1;border-radius:4px;opacity:0;-webkit-transition:opacity 120ms ease-out;transition:opacity 120ms ease-out}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/spinner.css: -------------------------------------------------------------------------------- 1 | .el-time-spinner{width:100%;white-space:nowrap}.el-spinner{display:inline-block;vertical-align:middle}.el-spinner-inner{-webkit-animation:rotate 2s linear infinite;animation:rotate 2s linear infinite;width:50px;height:50px}.el-spinner-inner .path{stroke:#ececec;stroke-linecap:round;-webkit-animation:dash 1.5s ease-in-out infinite;animation:dash 1.5s ease-in-out infinite}@-webkit-keyframes rotate{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rotate{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/steps.css: -------------------------------------------------------------------------------- 1 | .el-steps{display:-webkit-box;display:-ms-flexbox;display:flex}.el-steps--simple{padding:13px 8%;border-radius:4px;background:#f5f7fa}.el-steps--horizontal{white-space:nowrap}.el-steps--vertical{height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/submenu.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/submenu.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/theme-chalk/tab-pane.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/lib/theme-chalk/tab-pane.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/utils/after-leave.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | 5 | exports.default = function (instance, callback) { 6 | var speed = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 300; 7 | var once = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; 8 | 9 | if (!instance || !callback) throw new Error('instance & callback is required'); 10 | var called = false; 11 | var afterLeaveCallback = function afterLeaveCallback() { 12 | if (called) return; 13 | called = true; 14 | if (callback) { 15 | callback.apply(null, arguments); 16 | } 17 | }; 18 | if (once) { 19 | instance.$once('after-leave', afterLeaveCallback); 20 | } else { 21 | instance.$on('after-leave', afterLeaveCallback); 22 | } 23 | setTimeout(function () { 24 | afterLeaveCallback(); 25 | }, speed + 100); 26 | }; 27 | 28 | ; /** 29 | * Bind after-leave event for vue instance. Make sure after-leave is called in any browsers. 30 | * 31 | * @param {Vue} instance Vue instance. 32 | * @param {Function} callback callback of after-leave event 33 | * @param {Number} speed the speed of transition, default value is 300ms 34 | * @param {Boolean} once weather bind after-leave once. default value is false. 35 | */ -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/utils/menu/aria-menubar.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | 5 | var _ariaMenuitem = require('./aria-menuitem'); 6 | 7 | var _ariaMenuitem2 = _interopRequireDefault(_ariaMenuitem); 8 | 9 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 10 | 11 | var Menu = function Menu(domNode) { 12 | this.domNode = domNode; 13 | this.init(); 14 | }; 15 | 16 | Menu.prototype.init = function () { 17 | var menuChildren = this.domNode.childNodes; 18 | [].filter.call(menuChildren, function (child) { 19 | return child.nodeType === 1; 20 | }).forEach(function (child) { 21 | new _ariaMenuitem2.default(child); // eslint-disable-line 22 | }); 23 | }; 24 | exports.default = Menu; -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/utils/merge.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | exports.__esModule = true; 4 | 5 | exports.default = function (target) { 6 | for (var i = 1, j = arguments.length; i < j; i++) { 7 | var source = arguments[i] || {}; 8 | for (var prop in source) { 9 | if (source.hasOwnProperty(prop)) { 10 | var value = source[prop]; 11 | if (value !== undefined) { 12 | target[prop] = value; 13 | } 14 | } 15 | } 16 | } 17 | 18 | return target; 19 | }; 20 | 21 | ; -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/utils/scroll-into-view.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | exports.default = scrollIntoView; 5 | 6 | var _vue = require('vue'); 7 | 8 | var _vue2 = _interopRequireDefault(_vue); 9 | 10 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 11 | 12 | function scrollIntoView(container, selected) { 13 | if (_vue2.default.prototype.$isServer) return; 14 | 15 | if (!selected) { 16 | container.scrollTop = 0; 17 | return; 18 | } 19 | 20 | var offsetParents = []; 21 | var pointer = selected.offsetParent; 22 | while (pointer && container !== pointer && container.contains(pointer)) { 23 | offsetParents.push(pointer); 24 | pointer = pointer.offsetParent; 25 | } 26 | var top = selected.offsetTop + offsetParents.reduce(function (prev, curr) { 27 | return prev + curr.offsetTop; 28 | }, 0); 29 | var bottom = top + selected.offsetHeight; 30 | var viewRectTop = container.scrollTop; 31 | var viewRectBottom = viewRectTop + container.clientHeight; 32 | 33 | if (top < viewRectTop) { 34 | container.scrollTop = top; 35 | } else if (bottom > viewRectBottom) { 36 | container.scrollTop = bottom - container.clientHeight; 37 | } 38 | } -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/utils/scrollbar-width.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | 5 | exports.default = function () { 6 | if (_vue2.default.prototype.$isServer) return 0; 7 | if (scrollBarWidth !== undefined) return scrollBarWidth; 8 | 9 | var outer = document.createElement('div'); 10 | outer.className = 'el-scrollbar__wrap'; 11 | outer.style.visibility = 'hidden'; 12 | outer.style.width = '100px'; 13 | outer.style.position = 'absolute'; 14 | outer.style.top = '-9999px'; 15 | document.body.appendChild(outer); 16 | 17 | var widthNoScroll = outer.offsetWidth; 18 | outer.style.overflow = 'scroll'; 19 | 20 | var inner = document.createElement('div'); 21 | inner.style.width = '100%'; 22 | outer.appendChild(inner); 23 | 24 | var widthWithScroll = inner.offsetWidth; 25 | outer.parentNode.removeChild(outer); 26 | scrollBarWidth = widthNoScroll - widthWithScroll; 27 | 28 | return scrollBarWidth; 29 | }; 30 | 31 | var _vue = require('vue'); 32 | 33 | var _vue2 = _interopRequireDefault(_vue); 34 | 35 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 36 | 37 | var scrollBarWidth = void 0; 38 | 39 | ; -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/utils/shared.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | exports.__esModule = true; 4 | exports.isDef = isDef; 5 | exports.isKorean = isKorean; 6 | function isDef(val) { 7 | return val !== undefined && val !== null; 8 | } 9 | function isKorean(text) { 10 | var reg = /([(\uAC00-\uD7AF)|(\u3130-\u318F)])+/gi; 11 | return reg.test(text); 12 | } -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/lib/utils/vdom.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | 5 | 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; }; 6 | 7 | exports.isVNode = isVNode; 8 | exports.getFirstComponentChild = getFirstComponentChild; 9 | 10 | var _util = require('element-ui/lib/utils/util'); 11 | 12 | function isVNode(node) { 13 | return node !== null && (typeof node === 'undefined' ? 'undefined' : _typeof(node)) === 'object' && (0, _util.hasOwn)(node, 'componentOptions'); 14 | }; 15 | 16 | function getFirstComponentChild(children) { 17 | return children && children.filter(function (c) { 18 | return c && c.tag; 19 | })[0]; 20 | }; -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/alert/index.js: -------------------------------------------------------------------------------- 1 | import Alert from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Alert.install = function(Vue) { 5 | Vue.component(Alert.name, Alert); 6 | }; 7 | 8 | export default Alert; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/aside/index.js: -------------------------------------------------------------------------------- 1 | import Aside from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Aside.install = function(Vue) { 5 | Vue.component(Aside.name, Aside); 6 | }; 7 | 8 | export default Aside; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/aside/src/main.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 21 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/autocomplete/index.js: -------------------------------------------------------------------------------- 1 | import ElAutocomplete from './src/autocomplete'; 2 | 3 | /* istanbul ignore next */ 4 | ElAutocomplete.install = function(Vue) { 5 | Vue.component(ElAutocomplete.name, ElAutocomplete); 6 | }; 7 | 8 | export default ElAutocomplete; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/badge/index.js: -------------------------------------------------------------------------------- 1 | import Badge from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Badge.install = function(Vue) { 5 | Vue.component(Badge.name, Badge); 6 | }; 7 | 8 | export default Badge; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/badge/src/main.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 42 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/breadcrumb-item/index.js: -------------------------------------------------------------------------------- 1 | import ElBreadcrumbItem from '../breadcrumb/src/breadcrumb-item'; 2 | 3 | /* istanbul ignore next */ 4 | ElBreadcrumbItem.install = function(Vue) { 5 | Vue.component(ElBreadcrumbItem.name, ElBreadcrumbItem); 6 | }; 7 | 8 | export default ElBreadcrumbItem; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/breadcrumb/index.js: -------------------------------------------------------------------------------- 1 | import ElBreadcrumb from './src/breadcrumb'; 2 | 3 | /* istanbul ignore next */ 4 | ElBreadcrumb.install = function(Vue) { 5 | Vue.component(ElBreadcrumb.name, ElBreadcrumb); 6 | }; 7 | 8 | export default ElBreadcrumb; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/breadcrumb/src/breadcrumb-item.vue: -------------------------------------------------------------------------------- 1 | 13 | 42 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/breadcrumb/src/breadcrumb.vue: -------------------------------------------------------------------------------- 1 | 6 | 35 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/button-group/index.js: -------------------------------------------------------------------------------- 1 | import ElButtonGroup from '../button/src/button-group'; 2 | 3 | /* istanbul ignore next */ 4 | ElButtonGroup.install = function(Vue) { 5 | Vue.component(ElButtonGroup.name, ElButtonGroup); 6 | }; 7 | 8 | export default ElButtonGroup; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/button/index.js: -------------------------------------------------------------------------------- 1 | import ElButton from './src/button'; 2 | 3 | /* istanbul ignore next */ 4 | ElButton.install = function(Vue) { 5 | Vue.component(ElButton.name, ElButton); 6 | }; 7 | 8 | export default ElButton; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/button/src/button-group.vue: -------------------------------------------------------------------------------- 1 | 6 | 11 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/card/index.js: -------------------------------------------------------------------------------- 1 | import Card from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Card.install = function(Vue) { 5 | Vue.component(Card.name, Card); 6 | }; 7 | 8 | export default Card; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/card/src/main.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 24 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/carousel-item/index.js: -------------------------------------------------------------------------------- 1 | import ElCarouselItem from '../carousel/src/item'; 2 | 3 | /* istanbul ignore next */ 4 | ElCarouselItem.install = function(Vue) { 5 | Vue.component(ElCarouselItem.name, ElCarouselItem); 6 | }; 7 | 8 | export default ElCarouselItem; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/carousel/index.js: -------------------------------------------------------------------------------- 1 | import Carousel from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Carousel.install = function(Vue) { 5 | Vue.component(Carousel.name, Carousel); 6 | }; 7 | 8 | export default Carousel; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/cascader/index.js: -------------------------------------------------------------------------------- 1 | import Cascader from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Cascader.install = function(Vue) { 5 | Vue.component(Cascader.name, Cascader); 6 | }; 7 | 8 | export default Cascader; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/checkbox-button/index.js: -------------------------------------------------------------------------------- 1 | import ElCheckboxButton from '../checkbox/src/checkbox-button.vue'; 2 | 3 | /* istanbul ignore next */ 4 | ElCheckboxButton.install = function(Vue) { 5 | Vue.component(ElCheckboxButton.name, ElCheckboxButton); 6 | }; 7 | 8 | export default ElCheckboxButton; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/checkbox-group/index.js: -------------------------------------------------------------------------------- 1 | import ElCheckboxGroup from '../checkbox/src/checkbox-group.vue'; 2 | 3 | /* istanbul ignore next */ 4 | ElCheckboxGroup.install = function(Vue) { 5 | Vue.component(ElCheckboxGroup.name, ElCheckboxGroup); 6 | }; 7 | 8 | export default ElCheckboxGroup; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/checkbox/index.js: -------------------------------------------------------------------------------- 1 | import ElCheckbox from './src/checkbox'; 2 | 3 | /* istanbul ignore next */ 4 | ElCheckbox.install = function(Vue) { 5 | Vue.component(ElCheckbox.name, ElCheckbox); 6 | }; 7 | 8 | export default ElCheckbox; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/checkbox/src/checkbox-group.vue: -------------------------------------------------------------------------------- 1 | 43 | 44 | 49 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/col/index.js: -------------------------------------------------------------------------------- 1 | import ElCol from './src/col'; 2 | 3 | /* istanbul ignore next */ 4 | ElCol.install = function(Vue) { 5 | Vue.component(ElCol.name, ElCol); 6 | }; 7 | 8 | export default ElCol; 9 | 10 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/collapse-item/index.js: -------------------------------------------------------------------------------- 1 | import ElCollapseItem from '../collapse/src/collapse-item.vue'; 2 | 3 | /* istanbul ignore next */ 4 | ElCollapseItem.install = function(Vue) { 5 | Vue.component(ElCollapseItem.name, ElCollapseItem); 6 | }; 7 | 8 | export default ElCollapseItem; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/collapse/index.js: -------------------------------------------------------------------------------- 1 | import ElCollapse from './src/collapse'; 2 | 3 | /* istanbul ignore next */ 4 | ElCollapse.install = function(Vue) { 5 | Vue.component(ElCollapse.name, ElCollapse); 6 | }; 7 | 8 | export default ElCollapse; 9 | 10 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/color-picker/index.js: -------------------------------------------------------------------------------- 1 | import ColorPicker from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | ColorPicker.install = function(Vue) { 5 | Vue.component(ColorPicker.name, ColorPicker); 6 | }; 7 | 8 | export default ColorPicker; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/color-picker/src/draggable.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | let isDragging = false; 3 | 4 | export default function(element, options) { 5 | if (Vue.prototype.$isServer) return; 6 | const moveFn = function(event) { 7 | if (options.drag) { 8 | options.drag(event); 9 | } 10 | }; 11 | const upFn = function(event) { 12 | document.removeEventListener('mousemove', moveFn); 13 | document.removeEventListener('mouseup', upFn); 14 | document.onselectstart = null; 15 | document.ondragstart = null; 16 | 17 | isDragging = false; 18 | 19 | if (options.end) { 20 | options.end(event); 21 | } 22 | }; 23 | element.addEventListener('mousedown', function(event) { 24 | if (isDragging) return; 25 | document.onselectstart = function() { return false; }; 26 | document.ondragstart = function() { return false; }; 27 | 28 | document.addEventListener('mousemove', moveFn); 29 | document.addEventListener('mouseup', upFn); 30 | isDragging = true; 31 | 32 | if (options.start) { 33 | options.start(event); 34 | } 35 | }); 36 | } 37 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/container/index.js: -------------------------------------------------------------------------------- 1 | import Container from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Container.install = function(Vue) { 5 | Vue.component(Container.name, Container); 6 | }; 7 | 8 | export default Container; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/container/src/main.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 34 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/date-picker/index.js: -------------------------------------------------------------------------------- 1 | import DatePicker from './src/picker/date-picker'; 2 | 3 | /* istanbul ignore next */ 4 | DatePicker.install = function install(Vue) { 5 | Vue.component(DatePicker.name, DatePicker); 6 | }; 7 | 8 | export default DatePicker; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/date-picker/src/picker/date-picker.js: -------------------------------------------------------------------------------- 1 | import Picker from '../picker'; 2 | import DatePanel from '../panel/date'; 3 | import DateRangePanel from '../panel/date-range'; 4 | 5 | const getPanel = function(type) { 6 | if (type === 'daterange' || type === 'datetimerange') { 7 | return DateRangePanel; 8 | } 9 | return DatePanel; 10 | }; 11 | 12 | export default { 13 | mixins: [Picker], 14 | 15 | name: 'ElDatePicker', 16 | 17 | props: { 18 | type: { 19 | type: String, 20 | default: 'date' 21 | }, 22 | timeArrowControl: Boolean 23 | }, 24 | 25 | watch: { 26 | type(type) { 27 | if (this.picker) { 28 | this.unmountPicker(); 29 | this.panel = getPanel(type); 30 | this.mountPicker(); 31 | } else { 32 | this.panel = getPanel(type); 33 | } 34 | } 35 | }, 36 | 37 | created() { 38 | this.panel = getPanel(this.type); 39 | } 40 | }; 41 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/date-picker/src/picker/time-picker.js: -------------------------------------------------------------------------------- 1 | import Picker from '../picker'; 2 | import TimePanel from '../panel/time'; 3 | import TimeRangePanel from '../panel/time-range'; 4 | 5 | export default { 6 | mixins: [Picker], 7 | 8 | name: 'ElTimePicker', 9 | 10 | props: { 11 | isRange: Boolean, 12 | arrowControl: Boolean 13 | }, 14 | 15 | data() { 16 | return { 17 | type: '' 18 | }; 19 | }, 20 | 21 | watch: { 22 | isRange(isRange) { 23 | if (this.picker) { 24 | this.unmountPicker(); 25 | this.type = isRange ? 'timerange' : 'time'; 26 | this.panel = isRange ? TimeRangePanel : TimePanel; 27 | this.mountPicker(); 28 | } else { 29 | this.type = isRange ? 'timerange' : 'time'; 30 | this.panel = isRange ? TimeRangePanel : TimePanel; 31 | } 32 | } 33 | }, 34 | 35 | created() { 36 | this.type = this.isRange ? 'timerange' : 'time'; 37 | this.panel = this.isRange ? TimeRangePanel : TimePanel; 38 | } 39 | }; 40 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/date-picker/src/picker/time-select.js: -------------------------------------------------------------------------------- 1 | import Picker from '../picker'; 2 | import Panel from '../panel/time-select'; 3 | 4 | export default { 5 | mixins: [Picker], 6 | 7 | name: 'ElTimeSelect', 8 | 9 | componentName: 'ElTimeSelect', 10 | 11 | props: { 12 | type: { 13 | type: String, 14 | default: 'time-select' 15 | } 16 | }, 17 | 18 | beforeCreate() { 19 | this.panel = Panel; 20 | } 21 | }; 22 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/dialog/index.js: -------------------------------------------------------------------------------- 1 | import ElDialog from './src/component'; 2 | 3 | /* istanbul ignore next */ 4 | ElDialog.install = function(Vue) { 5 | Vue.component(ElDialog.name, ElDialog); 6 | }; 7 | 8 | export default ElDialog; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/dropdown-item/index.js: -------------------------------------------------------------------------------- 1 | import ElDropdownItem from '../dropdown/src/dropdown-item'; 2 | 3 | /* istanbul ignore next */ 4 | ElDropdownItem.install = function(Vue) { 5 | Vue.component(ElDropdownItem.name, ElDropdownItem); 6 | }; 7 | 8 | export default ElDropdownItem; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/dropdown-menu/index.js: -------------------------------------------------------------------------------- 1 | import ElDropdownMenu from '../dropdown/src/dropdown-menu'; 2 | 3 | /* istanbul ignore next */ 4 | ElDropdownMenu.install = function(Vue) { 5 | Vue.component(ElDropdownMenu.name, ElDropdownMenu); 6 | }; 7 | 8 | export default ElDropdownMenu; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/dropdown/index.js: -------------------------------------------------------------------------------- 1 | import ElDropdown from './src/dropdown'; 2 | 3 | /* istanbul ignore next */ 4 | ElDropdown.install = function(Vue) { 5 | Vue.component(ElDropdown.name, ElDropdown); 6 | }; 7 | 8 | export default ElDropdown; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/dropdown/src/dropdown-item.vue: -------------------------------------------------------------------------------- 1 | 15 | 36 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/dropdown/src/dropdown-menu.vue: -------------------------------------------------------------------------------- 1 | 8 | 61 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/footer/index.js: -------------------------------------------------------------------------------- 1 | import Footer from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Footer.install = function(Vue) { 5 | Vue.component(Footer.name, Footer); 6 | }; 7 | 8 | export default Footer; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/footer/src/main.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 21 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/form-item/index.js: -------------------------------------------------------------------------------- 1 | import ElFormItem from '../form/src/form-item'; 2 | 3 | /* istanbul ignore next */ 4 | ElFormItem.install = function(Vue) { 5 | Vue.component(ElFormItem.name, ElFormItem); 6 | }; 7 | 8 | export default ElFormItem; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/form/index.js: -------------------------------------------------------------------------------- 1 | import ElForm from './src/form'; 2 | 3 | /* istanbul ignore next */ 4 | ElForm.install = function(Vue) { 5 | Vue.component(ElForm.name, ElForm); 6 | }; 7 | 8 | export default ElForm; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/header/index.js: -------------------------------------------------------------------------------- 1 | import Header from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Header.install = function(Vue) { 5 | Vue.component(Header.name, Header); 6 | }; 7 | 8 | export default Header; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/header/src/main.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 21 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/icon/index.js: -------------------------------------------------------------------------------- 1 | import ElIcon from './src/icon.vue'; 2 | 3 | /* istanbul ignore next */ 4 | ElIcon.install = function(Vue) { 5 | Vue.component(ElIcon.name, ElIcon); 6 | }; 7 | 8 | export default ElIcon; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/icon/src/icon.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 14 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/input-number/index.js: -------------------------------------------------------------------------------- 1 | import ElInputNumber from './src/input-number'; 2 | 3 | /* istanbul ignore next */ 4 | ElInputNumber.install = function(Vue) { 5 | Vue.component(ElInputNumber.name, ElInputNumber); 6 | }; 7 | 8 | export default ElInputNumber; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/input/index.js: -------------------------------------------------------------------------------- 1 | import ElInput from './src/input'; 2 | 3 | /* istanbul ignore next */ 4 | ElInput.install = function(Vue) { 5 | Vue.component(ElInput.name, ElInput); 6 | }; 7 | 8 | export default ElInput; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/loading/index.js: -------------------------------------------------------------------------------- 1 | import directive from './src/directive'; 2 | import service from './src/index'; 3 | 4 | export default { 5 | install(Vue) { 6 | Vue.use(directive); 7 | Vue.prototype.$loading = service; 8 | }, 9 | directive, 10 | service 11 | }; 12 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/loading/src/loading.vue: -------------------------------------------------------------------------------- 1 | 18 | 19 | 42 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/main/index.js: -------------------------------------------------------------------------------- 1 | import Main from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Main.install = function(Vue) { 5 | Vue.component(Main.name, Main); 6 | }; 7 | 8 | export default Main; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/main/src/main.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/menu-item-group/index.js: -------------------------------------------------------------------------------- 1 | import ElMenuItemGroup from '../menu/src/menu-item-group'; 2 | 3 | /* istanbul ignore next */ 4 | ElMenuItemGroup.install = function(Vue) { 5 | Vue.component(ElMenuItemGroup.name, ElMenuItemGroup); 6 | }; 7 | 8 | export default ElMenuItemGroup; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/menu-item/index.js: -------------------------------------------------------------------------------- 1 | import ElMenuItem from '../menu/src/menu-item'; 2 | 3 | /* istanbul ignore next */ 4 | ElMenuItem.install = function(Vue) { 5 | Vue.component(ElMenuItem.name, ElMenuItem); 6 | }; 7 | 8 | export default ElMenuItem; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/menu/index.js: -------------------------------------------------------------------------------- 1 | import ElMenu from './src/menu'; 2 | 3 | /* istanbul ignore next */ 4 | ElMenu.install = function(Vue) { 5 | Vue.component(ElMenu.name, ElMenu); 6 | }; 7 | 8 | export default ElMenu; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/menu/src/menu-item-group.vue: -------------------------------------------------------------------------------- 1 | 12 | 45 | 46 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/menu/src/menu-mixin.js: -------------------------------------------------------------------------------- 1 | export default { 2 | inject: ['rootMenu'], 3 | computed: { 4 | indexPath() { 5 | const path = [this.index]; 6 | let parent = this.$parent; 7 | while (parent.$options.componentName !== 'ElMenu') { 8 | if (parent.index) { 9 | path.unshift(parent.index); 10 | } 11 | parent = parent.$parent; 12 | } 13 | return path; 14 | }, 15 | parentMenu() { 16 | let parent = this.$parent; 17 | while ( 18 | parent && 19 | ['ElMenu', 'ElSubmenu'].indexOf(parent.$options.componentName) === -1 20 | ) { 21 | parent = parent.$parent; 22 | } 23 | return parent; 24 | }, 25 | paddingStyle() { 26 | if (this.rootMenu.mode !== 'vertical') return {}; 27 | 28 | let padding = 20; 29 | let parent = this.$parent; 30 | 31 | if (this.rootMenu.collapse) { 32 | padding = 20; 33 | } else { 34 | while (parent && parent.$options.componentName !== 'ElMenu') { 35 | if (parent.$options.componentName === 'ElSubmenu') { 36 | padding += 20; 37 | } 38 | parent = parent.$parent; 39 | } 40 | } 41 | return {paddingLeft: padding + 'px'}; 42 | } 43 | } 44 | }; 45 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/message-box/index.js: -------------------------------------------------------------------------------- 1 | import MessageBox from './src/main.js'; 2 | export default MessageBox; 3 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/message/index.js: -------------------------------------------------------------------------------- 1 | import Message from './src/main.js'; 2 | export default Message; 3 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/notification/index.js: -------------------------------------------------------------------------------- 1 | import Notification from './src/main.js'; 2 | export default Notification; 3 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/option-group/index.js: -------------------------------------------------------------------------------- 1 | import ElOptionGroup from '../select/src/option-group'; 2 | 3 | /* istanbul ignore next */ 4 | ElOptionGroup.install = function(Vue) { 5 | Vue.component(ElOptionGroup.name, ElOptionGroup); 6 | }; 7 | 8 | export default ElOptionGroup; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/option/index.js: -------------------------------------------------------------------------------- 1 | import ElOption from '../select/src/option'; 2 | 3 | /* istanbul ignore next */ 4 | ElOption.install = function(Vue) { 5 | Vue.component(ElOption.name, ElOption); 6 | }; 7 | 8 | export default ElOption; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/pagination/index.js: -------------------------------------------------------------------------------- 1 | import Pagination from './src/pagination'; 2 | 3 | /* istanbul ignore next */ 4 | Pagination.install = function(Vue) { 5 | Vue.component(Pagination.name, Pagination); 6 | }; 7 | 8 | export default Pagination; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/popover/index.js: -------------------------------------------------------------------------------- 1 | import Popover from './src/main'; 2 | import directive from './src/directive'; 3 | import Vue from 'vue'; 4 | 5 | Vue.directive('popover', directive); 6 | 7 | /* istanbul ignore next */ 8 | Popover.install = function(Vue) { 9 | Vue.directive('popover', directive); 10 | Vue.component(Popover.name, Popover); 11 | }; 12 | Popover.directive = directive; 13 | 14 | export default Popover; 15 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/popover/src/directive.js: -------------------------------------------------------------------------------- 1 | const getReference = (el, binding, vnode) => { 2 | const _ref = binding.expression ? binding.value : binding.arg; 3 | const popper = vnode.context.$refs[_ref]; 4 | if (popper) { 5 | if (Array.isArray(popper)) { 6 | popper[0].$refs.reference = el; 7 | } else { 8 | popper.$refs.reference = el; 9 | } 10 | } 11 | }; 12 | 13 | export default { 14 | bind(el, binding, vnode) { 15 | getReference(el, binding, vnode); 16 | }, 17 | inserted(el, binding, vnode) { 18 | getReference(el, binding, vnode); 19 | } 20 | }; 21 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/progress/index.js: -------------------------------------------------------------------------------- 1 | import ElProgress from './src/progress'; 2 | 3 | /* istanbul ignore next */ 4 | ElProgress.install = function(Vue) { 5 | Vue.component(ElProgress.name, ElProgress); 6 | }; 7 | 8 | export default ElProgress; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/radio-button/index.js: -------------------------------------------------------------------------------- 1 | import RadioButton from '../radio/src/radio-button.vue'; 2 | 3 | /* istanbul ignore next */ 4 | RadioButton.install = function(Vue) { 5 | Vue.component(RadioButton.name, RadioButton); 6 | }; 7 | 8 | export default RadioButton; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/radio-group/index.js: -------------------------------------------------------------------------------- 1 | import RadioGroup from '../radio/src/radio-group.vue'; 2 | 3 | /* istanbul ignore next */ 4 | RadioGroup.install = function(Vue) { 5 | Vue.component(RadioGroup.name, RadioGroup); 6 | }; 7 | 8 | export default RadioGroup; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/radio/index.js: -------------------------------------------------------------------------------- 1 | import Radio from './src/radio'; 2 | 3 | /* istanbul ignore next */ 4 | Radio.install = function(Vue) { 5 | Vue.component(Radio.name, Radio); 6 | }; 7 | 8 | export default Radio; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/rate/index.js: -------------------------------------------------------------------------------- 1 | import Rate from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Rate.install = function(Vue) { 5 | Vue.component(Rate.name, Rate); 6 | }; 7 | 8 | export default Rate; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/row/index.js: -------------------------------------------------------------------------------- 1 | import Row from './src/row'; 2 | 3 | /* istanbul ignore next */ 4 | Row.install = function(Vue) { 5 | Vue.component(Row.name, Row); 6 | }; 7 | 8 | export default Row; 9 | 10 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/row/src/row.js: -------------------------------------------------------------------------------- 1 | export default { 2 | name: 'ElRow', 3 | 4 | componentName: 'ElRow', 5 | 6 | props: { 7 | tag: { 8 | type: String, 9 | default: 'div' 10 | }, 11 | gutter: Number, 12 | type: String, 13 | justify: { 14 | type: String, 15 | default: 'start' 16 | }, 17 | align: { 18 | type: String, 19 | default: 'top' 20 | } 21 | }, 22 | 23 | computed: { 24 | style() { 25 | const ret = {}; 26 | 27 | if (this.gutter) { 28 | ret.marginLeft = `-${this.gutter / 2}px`; 29 | ret.marginRight = ret.marginLeft; 30 | } 31 | 32 | return ret; 33 | } 34 | }, 35 | 36 | render(h) { 37 | return h(this.tag, { 38 | class: [ 39 | 'el-row', 40 | this.justify !== 'start' ? `is-justify-${this.justify}` : '', 41 | this.align !== 'top' ? `is-align-${this.align}` : '', 42 | { 'el-row--flex': this.type === 'flex' } 43 | ], 44 | style: this.style 45 | }, this.$slots.default); 46 | } 47 | }; 48 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/scrollbar/index.js: -------------------------------------------------------------------------------- 1 | import Scrollbar from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Scrollbar.install = function(Vue) { 5 | Vue.component(Scrollbar.name, Scrollbar); 6 | }; 7 | 8 | export default Scrollbar; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/scrollbar/src/util.js: -------------------------------------------------------------------------------- 1 | export const BAR_MAP = { 2 | vertical: { 3 | offset: 'offsetHeight', 4 | scroll: 'scrollTop', 5 | scrollSize: 'scrollHeight', 6 | size: 'height', 7 | key: 'vertical', 8 | axis: 'Y', 9 | client: 'clientY', 10 | direction: 'top' 11 | }, 12 | horizontal: { 13 | offset: 'offsetWidth', 14 | scroll: 'scrollLeft', 15 | scrollSize: 'scrollWidth', 16 | size: 'width', 17 | key: 'horizontal', 18 | axis: 'X', 19 | client: 'clientX', 20 | direction: 'left' 21 | } 22 | }; 23 | 24 | export function renderThumbStyle({ move, size, bar }) { 25 | const style = {}; 26 | const translate = `translate${bar.axis}(${ move }%)`; 27 | 28 | style[bar.size] = size; 29 | style.transform = translate; 30 | style.msTransform = translate; 31 | style.webkitTransform = translate; 32 | 33 | return style; 34 | }; 35 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/select/index.js: -------------------------------------------------------------------------------- 1 | import Select from './src/select'; 2 | 3 | /* istanbul ignore next */ 4 | Select.install = function(Vue) { 5 | Vue.component(Select.name, Select); 6 | }; 7 | 8 | export default Select; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/select/src/option-group.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 61 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/slider/index.js: -------------------------------------------------------------------------------- 1 | import Slider from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Slider.install = function(Vue) { 5 | Vue.component(Slider.name, Slider); 6 | }; 7 | 8 | export default Slider; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/spinner/index.js: -------------------------------------------------------------------------------- 1 | import Spinner from './src/spinner'; 2 | 3 | /* istanbul ignore next */ 4 | Spinner.install = function(Vue) { 5 | Vue.component(Spinner.name, Spinner); 6 | }; 7 | 8 | export default Spinner; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/spinner/src/spinner.vue: -------------------------------------------------------------------------------- 1 | 8 | 28 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/step/index.js: -------------------------------------------------------------------------------- 1 | import Step from '../steps/src/step'; 2 | 3 | /* istanbul ignore next */ 4 | Step.install = function(Vue) { 5 | Vue.component(Step.name, Step); 6 | }; 7 | 8 | export default Step; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/steps/index.js: -------------------------------------------------------------------------------- 1 | import Steps from './src/steps'; 2 | 3 | /* istanbul ignore next */ 4 | Steps.install = function(Vue) { 5 | Vue.component(Steps.name, Steps); 6 | }; 7 | 8 | export default Steps; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/steps/src/steps.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 69 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/submenu/index.js: -------------------------------------------------------------------------------- 1 | import ElSubmenu from '../menu/src/submenu'; 2 | 3 | /* istanbul ignore next */ 4 | ElSubmenu.install = function(Vue) { 5 | Vue.component(ElSubmenu.name, ElSubmenu); 6 | }; 7 | 8 | export default ElSubmenu; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/switch/index.js: -------------------------------------------------------------------------------- 1 | import Switch from './src/component'; 2 | 3 | /* istanbul ignore next */ 4 | Switch.install = function(Vue) { 5 | Vue.component(Switch.name, Switch); 6 | }; 7 | 8 | export default Switch; 9 | 10 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/tab-pane/index.js: -------------------------------------------------------------------------------- 1 | import TabPane from '../tabs/src/tab-pane.vue'; 2 | 3 | /* istanbul ignore next */ 4 | TabPane.install = function(Vue) { 5 | Vue.component(TabPane.name, TabPane); 6 | }; 7 | 8 | export default TabPane; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/table-column/index.js: -------------------------------------------------------------------------------- 1 | import ElTableColumn from '../table/src/table-column'; 2 | 3 | /* istanbul ignore next */ 4 | ElTableColumn.install = function(Vue) { 5 | Vue.component(ElTableColumn.name, ElTableColumn); 6 | }; 7 | 8 | export default ElTableColumn; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/table/index.js: -------------------------------------------------------------------------------- 1 | import ElTable from './src/table'; 2 | 3 | /* istanbul ignore next */ 4 | ElTable.install = function(Vue) { 5 | Vue.component(ElTable.name, ElTable); 6 | }; 7 | 8 | export default ElTable; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/table/src/dropdown.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | var dropdowns = []; 3 | 4 | !Vue.prototype.$isServer && document.addEventListener('click', function(event) { 5 | dropdowns.forEach(function(dropdown) { 6 | var target = event.target; 7 | if (!dropdown || !dropdown.$el) return; 8 | if (target === dropdown.$el || dropdown.$el.contains(target)) { 9 | return; 10 | } 11 | dropdown.handleOutsideClick && dropdown.handleOutsideClick(event); 12 | }); 13 | }); 14 | 15 | export default { 16 | open(instance) { 17 | if (instance) { 18 | dropdowns.push(instance); 19 | } 20 | }, 21 | 22 | close(instance) { 23 | var index = dropdowns.indexOf(instance); 24 | if (index !== -1) { 25 | dropdowns.splice(instance, 1); 26 | } 27 | } 28 | }; 29 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/tabs/index.js: -------------------------------------------------------------------------------- 1 | import ElTabs from './src/tabs'; 2 | 3 | /* istanbul ignore next */ 4 | ElTabs.install = function(Vue) { 5 | Vue.component(ElTabs.name, ElTabs); 6 | }; 7 | 8 | export default ElTabs; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/tag/index.js: -------------------------------------------------------------------------------- 1 | import ElTag from './src/tag'; 2 | 3 | /* istanbul ignore next */ 4 | ElTag.install = function(Vue) { 5 | Vue.component(ElTag.name, ElTag); 6 | }; 7 | 8 | export default ElTag; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/tag/src/tag.vue: -------------------------------------------------------------------------------- 1 | 18 | 42 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/README.md: -------------------------------------------------------------------------------- 1 | # element-theme-chalk 2 | > element component chalk theme. 3 | 4 | 5 | ## Installation 6 | ```shell 7 | npm i element-theme-chalk -S 8 | ``` 9 | 10 | ## Usage 11 | 12 | Use Sass import 13 | ```css 14 | @import 'element-theme-chalk'; 15 | ``` 16 | 17 | Or Use webpack 18 | ```javascript 19 | import 'element-theme-chalk'; 20 | ``` 21 | 22 | Or 23 | ```html 24 | 25 | ``` 26 | 27 | ## Import on demand 28 | ```javascript 29 | import 'element-theme-chalk/lib/input.css'; 30 | import 'element-theme-chalk/lib/select.css'; 31 | 32 | // ... 33 | ``` 34 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/alert.css: -------------------------------------------------------------------------------- 1 | .el-alert{width:100%;padding:8px 16px;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:4px;position:relative;background-color:#fff;overflow:hidden;opacity:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:opacity .2s;transition:opacity .2s}.el-alert.is-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-alert--success{background-color:#f0f9eb;color:#67c23a}.el-alert--success .el-alert__description{color:#67c23a}.el-alert--info{background-color:#f4f4f5;color:#909399}.el-alert--info .el-alert__description{color:#909399}.el-alert--warning{background-color:#fdf6ec;color:#e6a23c}.el-alert--warning .el-alert__description{color:#e6a23c}.el-alert--error{background-color:#fef0f0;color:#f56c6c}.el-alert--error .el-alert__description{color:#f56c6c}.el-alert__content{display:table-cell;padding:0 8px}.el-alert__icon{font-size:16px;width:16px}.el-alert__icon.is-big{font-size:28px;width:28px}.el-alert__title{font-size:13px;line-height:18px}.el-alert__title.is-bold{font-weight:700}.el-alert .el-alert__description{font-size:12px;margin:5px 0 0}.el-alert__closebtn{font-size:12px;color:#c0c4cc;opacity:1;position:absolute;top:12px;right:15px;cursor:pointer}.el-alert__closebtn.is-customed{font-style:normal;font-size:13px;top:9px}.el-alert-fade-enter,.el-alert-fade-leave-active{opacity:0} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/aside.css: -------------------------------------------------------------------------------- 1 | .el-aside{overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/badge.css: -------------------------------------------------------------------------------- 1 | .el-badge{position:relative;vertical-align:middle;display:inline-block}.el-badge__content{background-color:#f56c6c;border-radius:10px;color:#fff;display:inline-block;font-size:12px;height:18px;line-height:18px;padding:0 6px;text-align:center;white-space:nowrap;border:1px solid #fff}.el-badge__content.is-fixed{position:absolute;top:0;right:10px;-webkit-transform:translateY(-50%) translateX(100%);transform:translateY(-50%) translateX(100%)}.el-badge__content.is-fixed.is-dot{right:5px}.el-badge__content.is-dot{height:8px;width:8px;padding:0;right:0;border-radius:50%} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/breadcrumb-item.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/breadcrumb-item.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/breadcrumb.css: -------------------------------------------------------------------------------- 1 | .el-breadcrumb{font-size:14px;line-height:1}.el-breadcrumb::after,.el-breadcrumb::before{display:table;content:""}.el-breadcrumb::after{clear:both}.el-breadcrumb__separator{margin:0 9px;font-weight:700;color:#c0c4cc}.el-breadcrumb__separator[class*=icon]{margin:0 6px;font-weight:400}.el-breadcrumb__item{float:left}.el-breadcrumb__inner{color:#606266}.el-breadcrumb__inner a,.el-breadcrumb__inner.is-link{font-weight:700;text-decoration:none;-webkit-transition:color .2s cubic-bezier(.645,.045,.355,1);transition:color .2s cubic-bezier(.645,.045,.355,1);color:#303133}.el-breadcrumb__inner a:hover,.el-breadcrumb__inner.is-link:hover{color:#409EFF;cursor:pointer}.el-breadcrumb__item:last-child .el-breadcrumb__inner,.el-breadcrumb__item:last-child .el-breadcrumb__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover,.el-breadcrumb__item:last-child .el-breadcrumb__inner:hover{font-weight:400;color:#606266;cursor:text}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/button-group.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/button-group.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/card.css: -------------------------------------------------------------------------------- 1 | .el-card{border-radius:4px;border:1px solid #ebeef5;background-color:#fff;overflow:hidden;color:#303133;-webkit-transition:.3s;transition:.3s}.el-card.is-always-shadow,.el-card.is-hover-shadow:focus,.el-card.is-hover-shadow:hover{-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-card__header{padding:18px 20px;border-bottom:1px solid #ebeef5;-webkit-box-sizing:border-box;box-sizing:border-box}.el-card__body{padding:20px} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/carousel-item.css: -------------------------------------------------------------------------------- 1 | .el-carousel__item,.el-carousel__mask{position:absolute;height:100%;top:0;left:0}.el-carousel__item{width:100%;display:inline-block;overflow:hidden;z-index:0}.el-carousel__item.is-active{z-index:2}.el-carousel__item.is-animating{-webkit-transition:-webkit-transform .4s ease-in-out;transition:-webkit-transform .4s ease-in-out;transition:transform .4s ease-in-out;transition:transform .4s ease-in-out,-webkit-transform .4s ease-in-out}.el-carousel__item--card{width:50%;-webkit-transition:-webkit-transform .4s ease-in-out;transition:-webkit-transform .4s ease-in-out;transition:transform .4s ease-in-out;transition:transform .4s ease-in-out,-webkit-transform .4s ease-in-out}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:1}.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask,.el-carousel__item--card.is-in-stage:hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:2}.el-carousel__mask{width:100%;background-color:#fff;opacity:.24;-webkit-transition:.2s;transition:.2s} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/checkbox-button.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/checkbox-button.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/checkbox-group.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/checkbox-group.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/collapse-item.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/collapse-item.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/container.css: -------------------------------------------------------------------------------- 1 | .el-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;-webkit-box-sizing:border-box;box-sizing:border-box;min-width:0}.el-container.is-vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/display.css: -------------------------------------------------------------------------------- 1 | @media only screen and (max-width:767px){.hidden-xs-only{display:none!important}}@media only screen and (min-width:768px){.hidden-sm-and-up{display:none!important}}@media only screen and (min-width:768px) and (max-width:991px){.hidden-sm-only{display:none!important}}@media only screen and (max-width:991px){.hidden-sm-and-down{display:none!important}}@media only screen and (min-width:992px){.hidden-md-and-up{display:none!important}}@media only screen and (min-width:992px) and (max-width:1199px){.hidden-md-only{display:none!important}}@media only screen and (max-width:1199px){.hidden-md-and-down{display:none!important}}@media only screen and (min-width:1200px){.hidden-lg-and-up{display:none!important}}@media only screen and (min-width:1200px) and (max-width:1919px){.hidden-lg-only{display:none!important}}@media only screen and (max-width:1919px){.hidden-lg-and-down{display:none!important}}@media only screen and (min-width:1920px){.hidden-xl-only{display:none!important}} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/dropdown-item.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/dropdown-item.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/dropdown-menu.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/dropdown-menu.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/fonts/element-icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/fonts/element-icons.ttf -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/fonts/element-icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/fonts/element-icons.woff -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/footer.css: -------------------------------------------------------------------------------- 1 | .el-footer{padding:0 20px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/form-item.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/form-item.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/header.css: -------------------------------------------------------------------------------- 1 | .el-header{padding:0 20px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/main.css: -------------------------------------------------------------------------------- 1 | .el-main{-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box;padding:20px} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/menu-item-group.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/menu-item-group.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/menu-item.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/menu-item.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/option-group.css: -------------------------------------------------------------------------------- 1 | .el-select-group{margin:0;padding:0}.el-select-group__wrap{position:relative;list-style:none;margin:0;padding:0}.el-select-group__wrap:not(:last-of-type){padding-bottom:24px}.el-select-group__wrap:not(:last-of-type)::after{content:'';position:absolute;display:block;left:20px;right:20px;bottom:12px;height:1px;background:#e4e7ed}.el-select-group__title{padding-left:20px;font-size:12px;color:#909399;line-height:30px}.el-select-group .el-select-dropdown__item{padding-left:20px} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/option.css: -------------------------------------------------------------------------------- 1 | .el-select-dropdown__item{font-size:14px;padding:0 20px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#606266;height:34px;line-height:34px;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer}.el-select-dropdown__item.is-disabled{color:#c0c4cc;cursor:not-allowed}.el-select-dropdown__item.is-disabled:hover{background-color:#fff}.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{background-color:#f5f7fa}.el-select-dropdown__item.selected{color:#409EFF;font-weight:700}.el-select-dropdown__item span{line-height:34px!important} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/radio-group.css: -------------------------------------------------------------------------------- 1 | .el-radio-group{display:inline-block;line-height:1;vertical-align:middle;font-size:0} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/rate.css: -------------------------------------------------------------------------------- 1 | .el-rate__icon,.el-rate__item{position:relative;display:inline-block}.el-rate{height:20px;line-height:1}.el-rate:active,.el-rate:focus{outline-width:0}.el-rate__item{font-size:0;vertical-align:middle}.el-rate__icon{font-size:18px;margin-right:6px;color:#c0c4cc;-webkit-transition:.3s;transition:.3s}.el-rate__decimal,.el-rate__icon .path2{position:absolute;top:0;left:0}.el-rate__icon.hover{-webkit-transform:scale(1.15);transform:scale(1.15)}.el-rate__decimal{display:inline-block;overflow:hidden}.el-rate__text{font-size:14px;vertical-align:middle} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/reset.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";body{font-family:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","微软雅黑",Arial,sans-serif;font-weight:400;font-size:14px;color:#000;-webkit-font-smoothing:antialiased}a{color:#409EFF;text-decoration:none}a:focus,a:hover{color:#66b1ff}a:active{color:#3a8ee6}h1,h2,h3,h4,h5,h6{color:#606266;font-weight:inherit}h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child,p:first-child{margin-top:0}h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child,p:last-child{margin-bottom:0}h1{font-size:20px}h2{font-size:18px}h3{font-size:16px}h4,h5,h6,p{font-size:inherit}p{line-height:1.8}sub,sup{font-size:13px}small{font-size:12px}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/row.css: -------------------------------------------------------------------------------- 1 | .el-row{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box}.el-row::after,.el-row::before{display:table;content:""}.el-row::after{clear:both}.el-row--flex{display:-webkit-box;display:-ms-flexbox;display:flex}.el-row--flex:after,.el-row--flex:before{display:none}.el-row--flex.is-justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-row--flex.is-justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.el-row--flex.is-justify-space-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-row--flex.is-justify-space-around{-ms-flex-pack:distribute;justify-content:space-around}.el-row--flex.is-align-middle{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-row--flex.is-align-bottom{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/scrollbar.css: -------------------------------------------------------------------------------- 1 | .el-scrollbar{overflow:hidden;position:relative}.el-scrollbar:active>.el-scrollbar__bar,.el-scrollbar:focus>.el-scrollbar__bar,.el-scrollbar:hover>.el-scrollbar__bar{opacity:1;-webkit-transition:opacity 340ms ease-out;transition:opacity 340ms ease-out}.el-scrollbar__wrap{overflow:scroll;height:100%}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{width:0;height:0}.el-scrollbar__thumb{position:relative;display:block;width:0;height:0;cursor:pointer;border-radius:inherit;background-color:rgba(144,147,153,.3);-webkit-transition:.3s background-color;transition:.3s background-color}.el-scrollbar__thumb:hover{background-color:rgba(144,147,153,.5)}.el-scrollbar__bar{position:absolute;right:2px;bottom:2px;z-index:1;border-radius:4px;opacity:0;-webkit-transition:opacity 120ms ease-out;transition:opacity 120ms ease-out}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/spinner.css: -------------------------------------------------------------------------------- 1 | .el-time-spinner{width:100%;white-space:nowrap}.el-spinner{display:inline-block;vertical-align:middle}.el-spinner-inner{-webkit-animation:rotate 2s linear infinite;animation:rotate 2s linear infinite;width:50px;height:50px}.el-spinner-inner .path{stroke:#ececec;stroke-linecap:round;-webkit-animation:dash 1.5s ease-in-out infinite;animation:dash 1.5s ease-in-out infinite}@-webkit-keyframes rotate{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rotate{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/steps.css: -------------------------------------------------------------------------------- 1 | .el-steps{display:-webkit-box;display:-ms-flexbox;display:flex}.el-steps--simple{padding:13px 8%;border-radius:4px;background:#f5f7fa}.el-steps--horizontal{white-space:nowrap}.el-steps--vertical{height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column} -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/submenu.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/submenu.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/tab-pane.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/lib/tab-pane.css -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/aside.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | 3 | @include b(aside) { 4 | overflow: auto; 5 | box-sizing: border-box; 6 | flex-shrink: 0; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/badge.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(badge) { 5 | position: relative; 6 | vertical-align: middle; 7 | display: inline-block; 8 | 9 | @include e(content) { 10 | background-color: $--badge-fill; 11 | border-radius: $--badge-radius; 12 | color: $--color-white; 13 | display: inline-block; 14 | font-size: $--badge-font-size; 15 | height: $--badge-size; 16 | line-height: $--badge-size; 17 | padding: 0 $--badge-padding; 18 | text-align: center; 19 | white-space: nowrap; 20 | border: 1px solid $--color-white; 21 | 22 | @include when(fixed) { 23 | position: absolute; 24 | top: 0; 25 | right: #{1 + $--badge-size / 2}; 26 | transform: translateY(-50%) translateX(100%); 27 | 28 | @include when(dot) { 29 | right: 5px; 30 | } 31 | } 32 | 33 | @include when(dot) { 34 | height: 8px; 35 | width: 8px; 36 | padding: 0; 37 | right: 0; 38 | border-radius: 50%; 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/base.scss: -------------------------------------------------------------------------------- 1 | @import "common/transition"; 2 | @import "icon"; 3 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/breadcrumb-item.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/breadcrumb-item.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/breadcrumb.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "mixins/utils"; 3 | @import "common/var"; 4 | 5 | @include b(breadcrumb) { 6 | font-size: 14px; 7 | line-height: 1; 8 | @include utils-clearfix; 9 | 10 | @include e(separator) { 11 | margin: 0 9px; 12 | font-weight: bold; 13 | color: $--color-text-placeholder; 14 | 15 | &[class*=icon] { 16 | margin: 0 6px; 17 | font-weight: normal; 18 | } 19 | } 20 | 21 | @include e(item) { 22 | float: left; 23 | 24 | @include e(inner) { 25 | color: $--color-text-regular; 26 | 27 | &.is-link, & a { 28 | font-weight: bold; 29 | text-decoration: none; 30 | transition: $--color-transition-base; 31 | color: $--color-text-primary; 32 | 33 | &:hover { 34 | color: $--color-primary; 35 | cursor: pointer; 36 | } 37 | } 38 | } 39 | 40 | &:last-child { 41 | .el-breadcrumb__inner, 42 | .el-breadcrumb__inner a { 43 | &, &:hover { 44 | font-weight: normal; 45 | color: $--color-text-regular; 46 | cursor: text; 47 | } 48 | } 49 | 50 | .el-breadcrumb__separator { 51 | display: none; 52 | } 53 | } 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/button-group.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/button-group.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/card.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(card) { 5 | border-radius: $--card-border-radius; 6 | border: 1px solid $--card-border-color; 7 | background-color: $--color-white; 8 | overflow: hidden; 9 | color: $--color-text-primary; 10 | transition: 0.3s; 11 | 12 | @include when(always-shadow) { 13 | box-shadow: $--box-shadow-light; 14 | } 15 | 16 | @include when(hover-shadow) { 17 | &:hover, 18 | &:focus { 19 | box-shadow: $--box-shadow-light; 20 | } 21 | } 22 | 23 | @include e(header) { 24 | padding: #{$--card-padding - 2 $--card-padding}; 25 | border-bottom: 1px solid $--card-border-color; 26 | box-sizing: border-box; 27 | } 28 | 29 | @include e(body) { 30 | padding: $--card-padding; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/carousel-item.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(carousel) { 5 | @include e(item) { 6 | position: absolute; 7 | top: 0; 8 | left: 0; 9 | width: 100%; 10 | height: 100%; 11 | display: inline-block; 12 | overflow: hidden; 13 | z-index: #{$--index-normal - 1}; 14 | 15 | @include when(active) { 16 | z-index: #{$--index-normal + 1}; 17 | } 18 | 19 | @include when(animating) { 20 | transition: transform .4s ease-in-out; 21 | } 22 | 23 | @include m(card) { 24 | width: 50%; 25 | transition: transform .4s ease-in-out; 26 | &.is-in-stage { 27 | cursor: pointer; 28 | z-index: $--index-normal; 29 | &:hover .el-carousel__mask, 30 | &.is-hover .el-carousel__mask { 31 | opacity: 0.12; 32 | } 33 | } 34 | &.is-active { 35 | z-index: #{$--index-normal + 1}; 36 | } 37 | } 38 | } 39 | 40 | @include e(mask) { 41 | position: absolute; 42 | width: 100%; 43 | height: 100%; 44 | top: 0; 45 | left: 0; 46 | background-color: $--color-white; 47 | opacity: 0.24; 48 | transition: .2s; 49 | } 50 | } -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/checkbox-button.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/checkbox-button.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/checkbox-group.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/checkbox-group.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/collapse-item.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/collapse-item.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/common/popup.scss: -------------------------------------------------------------------------------- 1 | @import "../mixins/mixins"; 2 | 3 | .v-modal-enter { 4 | animation: v-modal-in .2s ease; 5 | } 6 | 7 | .v-modal-leave { 8 | animation: v-modal-out .2s ease forwards; 9 | } 10 | 11 | @keyframes v-modal-in { 12 | 0% { 13 | opacity: 0; 14 | } 15 | 100% { 16 | } 17 | } 18 | 19 | @keyframes v-modal-out { 20 | 0% { 21 | } 22 | 100% { 23 | opacity: 0; 24 | } 25 | } 26 | 27 | .v-modal { 28 | position: fixed; 29 | left: 0; 30 | top: 0; 31 | width: 100%; 32 | height: 100%; 33 | opacity: 0.5; 34 | background: #000; 35 | } 36 | 37 | @include b(popup-parent) { 38 | @include m(hidden) { 39 | overflow: hidden; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/container.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | 3 | @include b(container) { 4 | display: flex; 5 | flex-direction: row; 6 | flex: 1; 7 | flex-basis: auto; 8 | box-sizing: border-box; 9 | min-width: 0; 10 | 11 | @include when(vertical) { 12 | flex-direction: column; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/date-picker.scss: -------------------------------------------------------------------------------- 1 | @import "date-picker/date-table"; 2 | @import "date-picker/month-table"; 3 | @import "date-picker/year-table"; 4 | @import "date-picker/time-spinner"; 5 | @import "date-picker/picker"; 6 | @import "date-picker/date-picker"; 7 | @import "date-picker/date-range-picker"; 8 | @import "date-picker/time-range-picker"; 9 | @import "date-picker/time-picker"; 10 | @import "input"; 11 | @import "scrollbar"; 12 | @import "popper"; -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/date-picker/month-table.scss: -------------------------------------------------------------------------------- 1 | @import "../common/var"; 2 | 3 | @include b(month-table) { 4 | font-size: 12px; 5 | margin: -1px; 6 | border-collapse: collapse; 7 | 8 | td { 9 | text-align: center; 10 | padding: 20px 3px; 11 | cursor: pointer; 12 | 13 | &.disabled .cell { 14 | background-color: $--background-color-base; 15 | cursor: not-allowed; 16 | color: $--color-text-placeholder; 17 | 18 | &:hover { 19 | color: $--color-text-placeholder; 20 | } 21 | } 22 | 23 | .cell { 24 | width: 48px; 25 | height: 32px; 26 | display: block; 27 | line-height: 32px; 28 | color: $--datepicker-color; 29 | margin: 0 auto; 30 | 31 | &:hover { 32 | color: $--datepicker-text-hover-color; 33 | } 34 | } 35 | 36 | &.current:not(.disabled) .cell { 37 | color: $--datepicker-active-color; 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/date-picker/time-range-picker.scss: -------------------------------------------------------------------------------- 1 | @import "../common/var"; 2 | 3 | @include b(time-range-picker) { 4 | width: 354px; 5 | overflow: visible; 6 | 7 | @include e(content) { 8 | position: relative; 9 | text-align: center; 10 | padding: 10px; 11 | } 12 | 13 | @include e(cell) { 14 | box-sizing: border-box; 15 | margin: 0; 16 | padding: 4px 7px 7px; 17 | width: 50%; 18 | display: inline-block; 19 | } 20 | 21 | @include e(header) { 22 | margin-bottom: 5px; 23 | text-align: center; 24 | font-size: 14px; 25 | } 26 | 27 | @include e(body) { 28 | border-radius:2px; 29 | border: 1px solid $--datepicker-border-color; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/date-picker/year-table.scss: -------------------------------------------------------------------------------- 1 | @import "../common/var"; 2 | 3 | @include b(year-table) { 4 | font-size: 12px; 5 | margin: -1px; 6 | border-collapse: collapse; 7 | 8 | .el-icon { 9 | color: $--datepicker-icon-color; 10 | } 11 | 12 | td { 13 | text-align: center; 14 | padding: 20px 3px; 15 | cursor: pointer; 16 | 17 | &.disabled .cell { 18 | background-color: $--background-color-base; 19 | cursor: not-allowed; 20 | color: $--color-text-placeholder; 21 | 22 | &:hover { 23 | color: $--color-text-placeholder; 24 | } 25 | } 26 | 27 | .cell { 28 | width: 48px; 29 | height: 32px; 30 | display: block; 31 | line-height: 32px; 32 | color: $--datepicker-color; 33 | margin: 0 auto; 34 | 35 | &:hover { 36 | color: $--datepicker-text-hover-color; 37 | } 38 | } 39 | 40 | &.current:not(.disabled) .cell { 41 | color: $--datepicker-active-color; 42 | } 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/display.scss: -------------------------------------------------------------------------------- 1 | @import "common/var"; 2 | @import "mixins/mixins"; 3 | 4 | .hidden { 5 | @each $break-point-name, $value in $--breakpoints-spec { 6 | &-#{$break-point-name} { 7 | @include res($break-point-name, $--breakpoints-spec) { 8 | display: none !important; 9 | } 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/dropdown-item.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/dropdown-item.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/dropdown-menu.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/dropdown-menu.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/fonts/element-icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/fonts/element-icons.ttf -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/fonts/element-icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/fonts/element-icons.woff -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/footer.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(footer) { 5 | padding: $--footer-padding; 6 | box-sizing: border-box; 7 | flex-shrink: 0; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/form-item.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/form-item.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/header.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(header) { 5 | padding: $--header-padding; 6 | box-sizing: border-box; 7 | flex-shrink: 0; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/main.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(main) { 5 | flex: 1; 6 | flex-basis: auto; 7 | overflow: auto; 8 | box-sizing: border-box; 9 | padding: $--main-padding; 10 | } 11 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/menu-item-group.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/menu-item-group.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/menu-item.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/menu-item.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/mixins/config.scss: -------------------------------------------------------------------------------- 1 | $namespace: 'el'; 2 | $element-separator: '__'; 3 | $modifier-separator: '--'; 4 | $state-prefix: 'is-'; 5 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/mixins/function.scss: -------------------------------------------------------------------------------- 1 | @import "config"; 2 | 3 | /* BEM support Func 4 | -------------------------- */ 5 | @function selectorToString($selector) { 6 | $selector: inspect($selector); 7 | $selector: str-slice($selector, 2, -2); 8 | @return $selector; 9 | } 10 | 11 | @function containsModifier($selector) { 12 | $selector: selectorToString($selector); 13 | 14 | @if str-index($selector, $modifier-separator) { 15 | @return true; 16 | } @else { 17 | @return false; 18 | } 19 | } 20 | 21 | @function containWhenFlag($selector) { 22 | $selector: selectorToString($selector); 23 | 24 | @if str-index($selector, '.' + $state-prefix) { 25 | @return true 26 | } @else { 27 | @return false 28 | } 29 | } 30 | 31 | @function containPseudoClass($selector) { 32 | $selector: selectorToString($selector); 33 | 34 | @if str-index($selector, ':') { 35 | @return true 36 | } @else { 37 | @return false 38 | } 39 | } 40 | 41 | @function hitAllSpecialNestRule($selector) { 42 | 43 | @return containsModifier($selector) or containWhenFlag($selector) or containPseudoClass($selector); 44 | } 45 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/mixins/utils.scss: -------------------------------------------------------------------------------- 1 | @mixin utils-user-select($value) { 2 | -moz-user-select: $value; 3 | -webkit-user-select: $value; 4 | -ms-user-select: $value; 5 | } 6 | 7 | @mixin utils-clearfix { 8 | $selector: &; 9 | 10 | @at-root { 11 | #{$selector}::before, 12 | #{$selector}::after { 13 | display: table; 14 | content: ""; 15 | } 16 | #{$selector}::after { 17 | clear: both 18 | } 19 | } 20 | } 21 | 22 | @mixin utils-vertical-center { 23 | $selector: &; 24 | 25 | @at-root { 26 | #{$selector}::after { 27 | display: inline-block; 28 | content: ""; 29 | height: 100%; 30 | vertical-align: middle 31 | } 32 | } 33 | } 34 | 35 | @mixin utils-ellipsis { 36 | overflow: hidden; 37 | text-overflow: ellipsis; 38 | white-space: nowrap; 39 | } -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/option-group.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(select-group) { 5 | $gap: 20px; 6 | 7 | margin: 0; 8 | padding: 0; 9 | 10 | @include e(wrap) { 11 | position: relative; 12 | list-style: none; 13 | margin: 0; 14 | padding: 0; 15 | 16 | &:not(:last-of-type) { 17 | padding-bottom: 24px; 18 | 19 | &::after { 20 | content: ''; 21 | position: absolute; 22 | display: block; 23 | left: $gap; 24 | right: $gap; 25 | bottom: 12px; 26 | height: 1px; 27 | background: $--border-color-light; 28 | } 29 | } 30 | } 31 | 32 | @include e(title) { 33 | padding-left: $gap; 34 | font-size: $--select-group-font-size; 35 | color: $--select-group-color; 36 | line-height: $--select-group-height; 37 | } 38 | 39 | & .el-select-dropdown__item { 40 | padding-left: $gap; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/option.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(select-dropdown) { 5 | @include e(item) { 6 | font-size: $--select-font-size; 7 | padding: 0 20px; 8 | position: relative; 9 | white-space: nowrap; 10 | overflow: hidden; 11 | text-overflow: ellipsis; 12 | color: $--select-option-color; 13 | height: $--select-option-height; 14 | line-height: $--select-option-height; 15 | box-sizing: border-box; 16 | cursor: pointer; 17 | 18 | @include when(disabled) { 19 | color: $--select-option-disabled-color; 20 | cursor: not-allowed; 21 | 22 | &:hover { 23 | background-color: $--color-white; 24 | } 25 | } 26 | 27 | &.hover, &:hover { 28 | background-color: $--select-option-hover-background; 29 | } 30 | 31 | &.selected { 32 | color: $--select-option-selected; 33 | font-weight: bold; 34 | } 35 | 36 | & span { 37 | line-height: 34px !important; 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/popover.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | @import "popper"; 4 | 5 | @include b(popover) { 6 | position: absolute; 7 | background: $--popover-fill; 8 | min-width: 150px; 9 | border-radius: 4px; 10 | border: 1px solid $--popover-border-color; 11 | padding: $--popover-padding; 12 | z-index: $--index-popper; 13 | color: $--color-text-regular; 14 | line-height: 1.4; 15 | text-align: justify; 16 | font-size: $--popover-font-size; 17 | box-shadow: $--box-shadow-light; 18 | 19 | @include m(plain) { 20 | padding: $--popover-padding-large; 21 | } 22 | 23 | @include e(title) { 24 | color: $--popover-title-color; 25 | font-size: $--popover-title-font-size; 26 | line-height: 1; 27 | margin-bottom: 12px; 28 | } 29 | 30 | @include e(reference) { 31 | &:focus:not(.focusing), &:focus:hover { 32 | outline-width: 0; 33 | } 34 | } 35 | 36 | &:focus:active, &:focus { 37 | outline-width: 0; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/radio-group.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(radio-group) { 5 | display: inline-block; 6 | line-height: 1; 7 | vertical-align: middle; 8 | font-size: 0; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/rate.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(rate) { 5 | height: $--rate-height; 6 | line-height: 1; 7 | 8 | &:focus, &:active { 9 | outline-width: 0; 10 | } 11 | 12 | @include e(item) { 13 | display: inline-block; 14 | position: relative; 15 | font-size: 0; 16 | vertical-align: middle; 17 | } 18 | 19 | @include e(icon) { 20 | position: relative; 21 | display: inline-block; 22 | font-size: $--rate-icon-size; 23 | margin-right: $--rate-icon-margin; 24 | color: $--rate-icon-color; 25 | transition: .3s; 26 | &.hover { 27 | transform: scale(1.15); 28 | } 29 | 30 | .path2 { 31 | position: absolute; 32 | left: 0; 33 | top: 0; 34 | } 35 | } 36 | 37 | @include e(decimal) { 38 | position: absolute; 39 | top: 0; 40 | left: 0; 41 | display: inline-block; 42 | overflow: hidden; 43 | } 44 | 45 | @include e(text) { 46 | font-size: $--rate-font-size; 47 | vertical-align: middle; 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/row.scss: -------------------------------------------------------------------------------- 1 | @import "common/var"; 2 | @import "mixins/mixins"; 3 | @import "mixins/utils"; 4 | 5 | @include b(row) { 6 | position: relative; 7 | box-sizing: border-box; 8 | @include utils-clearfix; 9 | 10 | @include m(flex) { 11 | display: flex; 12 | &:before, 13 | &:after { 14 | display: none; 15 | } 16 | 17 | @include when(justify-center) { 18 | justify-content: center; 19 | } 20 | @include when(justify-end) { 21 | justify-content: flex-end; 22 | } 23 | @include when(justify-space-between) { 24 | justify-content: space-between; 25 | } 26 | @include when(justify-space-around) { 27 | justify-content: space-around; 28 | } 29 | 30 | @include when(align-middle) { 31 | align-items: center; 32 | } 33 | @include when(align-bottom) { 34 | align-items: flex-end; 35 | } 36 | } 37 | 38 | } 39 | 40 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/scrollbar.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | @import "common/var"; 3 | 4 | @include b(scrollbar) { 5 | overflow: hidden; 6 | position: relative; 7 | 8 | &:hover, 9 | &:active, 10 | &:focus { 11 | > .el-scrollbar__bar { 12 | opacity: 1; 13 | transition: opacity 340ms ease-out; 14 | } 15 | } 16 | 17 | @include e(wrap) { 18 | overflow: scroll; 19 | height: 100%; 20 | 21 | @include m(hidden-default) { 22 | &::-webkit-scrollbar { 23 | width: 0; 24 | height: 0; 25 | } 26 | } 27 | } 28 | 29 | @include e(thumb) { 30 | position: relative; 31 | display: block; 32 | width: 0; 33 | height: 0; 34 | cursor: pointer; 35 | border-radius: inherit; 36 | background-color: $--scrollbar-background-color; 37 | transition: .3s background-color; 38 | 39 | &:hover { 40 | background-color: $--scrollbar-hover-background-color; 41 | } 42 | } 43 | 44 | @include e(bar) { 45 | position: absolute; 46 | right: 2px; 47 | bottom: 2px; 48 | z-index: 1; 49 | border-radius: 4px; 50 | opacity: 0; 51 | transition: opacity 120ms ease-out; 52 | 53 | @include when(vertical) { 54 | width: 6px; 55 | top: 2px; 56 | 57 | > div { 58 | width: 100%; 59 | } 60 | } 61 | 62 | @include when(horizontal) { 63 | height: 6px; 64 | left: 2px; 65 | 66 | > div { 67 | height: 100%; 68 | } 69 | } 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/spinner.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | 3 | @include b(time-spinner) { 4 | width: 100%; 5 | white-space: nowrap; 6 | } 7 | 8 | @include b(spinner) { 9 | display: inline-block; 10 | vertical-align: middle; 11 | } 12 | @include b(spinner-inner) { 13 | animation: rotate 2s linear infinite; 14 | width: 50px; 15 | height: 50px; 16 | 17 | & .path { 18 | stroke: #ececec; 19 | stroke-linecap: round; 20 | animation: dash 1.5s ease-in-out infinite; 21 | } 22 | 23 | } 24 | 25 | @keyframes rotate { 26 | 100% { 27 | transform: rotate(360deg); 28 | } 29 | } 30 | 31 | @keyframes dash { 32 | 0% { 33 | stroke-dasharray: 1, 150; 34 | stroke-dashoffset: 0; 35 | } 36 | 50% { 37 | stroke-dasharray: 90, 150; 38 | stroke-dashoffset: -35; 39 | } 40 | 100% { 41 | stroke-dasharray: 90, 150; 42 | stroke-dashoffset: -124; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/steps.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/mixins"; 2 | 3 | @include b(steps) { 4 | display: flex; 5 | 6 | @include m(simple) { 7 | padding: 13px 8%; 8 | border-radius: 4px; 9 | background: $--background-color-base; 10 | } 11 | 12 | @include m(horizontal) { 13 | white-space: nowrap; 14 | } 15 | 16 | @include m(vertical) { 17 | height: 100%; 18 | flex-flow: column; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/submenu.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/submenu.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/tab-pane.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/element-ui/packages/theme-chalk/src/tab-pane.scss -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/time-picker.scss: -------------------------------------------------------------------------------- 1 | @import "date-picker/picker"; 2 | @import "date-picker/picker-panel"; 3 | @import "date-picker/time-spinner"; 4 | @import "date-picker/time-picker"; 5 | @import "date-picker/time-range-picker"; 6 | @import "input"; 7 | @import "scrollbar"; 8 | @import "popper"; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/theme-chalk/src/time-select.scss: -------------------------------------------------------------------------------- 1 | @import "common/var"; 2 | @import "date-picker/picker"; 3 | @import "date-picker/date-picker"; 4 | @import "scrollbar"; 5 | @import "popper"; 6 | 7 | .time-select { 8 | margin: 5px 0; 9 | min-width: 0; 10 | } 11 | 12 | .time-select .el-picker-panel__content { 13 | max-height: 200px; 14 | margin: 0; 15 | } 16 | 17 | .time-select-item { 18 | padding: 8px 10px; 19 | font-size: 14px; 20 | line-height: 20px; 21 | } 22 | 23 | .time-select-item.selected:not(.disabled) { 24 | color: $--color-primary; 25 | font-weight: bold; 26 | } 27 | 28 | .time-select-item.disabled { 29 | color: $--datepicker-border-color; 30 | cursor: not-allowed; 31 | } 32 | 33 | .time-select-item:hover { 34 | background-color: $--background-color-base; 35 | font-weight: bold; 36 | cursor: pointer; 37 | } 38 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/time-picker/index.js: -------------------------------------------------------------------------------- 1 | import TimePicker from '../date-picker/src/picker/time-picker'; 2 | 3 | /* istanbul ignore next */ 4 | TimePicker.install = function(Vue) { 5 | Vue.component(TimePicker.name, TimePicker); 6 | }; 7 | 8 | export default TimePicker; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/time-select/index.js: -------------------------------------------------------------------------------- 1 | import TimeSelect from '../date-picker/src/picker/time-select'; 2 | 3 | /* istanbul ignore next */ 4 | TimeSelect.install = function(Vue) { 5 | Vue.component(TimeSelect.name, TimeSelect); 6 | }; 7 | 8 | export default TimeSelect; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/tooltip/index.js: -------------------------------------------------------------------------------- 1 | import Tooltip from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Tooltip.install = function(Vue) { 5 | Vue.component(Tooltip.name, Tooltip); 6 | }; 7 | 8 | export default Tooltip; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/transfer/index.js: -------------------------------------------------------------------------------- 1 | import Transfer from './src/main'; 2 | 3 | /* istanbul ignore next */ 4 | Transfer.install = function(Vue) { 5 | Vue.component(Transfer.name, Transfer); 6 | }; 7 | 8 | export default Transfer; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/tree/index.js: -------------------------------------------------------------------------------- 1 | import Tree from './src/tree.vue'; 2 | 3 | /* istanbul ignore next */ 4 | Tree.install = function(Vue) { 5 | Vue.component(Tree.name, Tree); 6 | }; 7 | 8 | export default Tree; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/tree/src/model/util.js: -------------------------------------------------------------------------------- 1 | export const NODE_KEY = '$treeNodeId'; 2 | 3 | export const markNodeData = function(node, data) { 4 | if (!data || data[NODE_KEY]) return; 5 | Object.defineProperty(data, NODE_KEY, { 6 | value: node.id, 7 | enumerable: false, 8 | configurable: false, 9 | writable: false 10 | }); 11 | }; 12 | 13 | export const getNodeKey = function(key, data) { 14 | if (!key) return data[NODE_KEY]; 15 | return data[key]; 16 | }; 17 | 18 | export const findNearestComponent = (element, componentName) => { 19 | let target = element; 20 | while (target && target.tagName !== 'BODY') { 21 | if (target.__vue__ && target.__vue__.$options.name === componentName) { 22 | return target.__vue__; 23 | } 24 | target = target.parentNode; 25 | } 26 | return null; 27 | }; 28 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/packages/upload/index.js: -------------------------------------------------------------------------------- 1 | import Upload from './src/index'; 2 | 3 | /* istanbul ignore next */ 4 | Upload.install = function(Vue) { 5 | Vue.component(Upload.name, Upload); 6 | }; 7 | 8 | export default Upload; 9 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/directives/mousewheel.js: -------------------------------------------------------------------------------- 1 | import normalizeWheel from 'normalize-wheel'; 2 | 3 | const isFirefox = typeof navigator !== 'undefined' && navigator.userAgent.toLowerCase().indexOf('firefox') > -1; 4 | 5 | const mousewheel = function(element, callback) { 6 | if (element && element.addEventListener) { 7 | element.addEventListener(isFirefox ? 'DOMMouseScroll' : 'mousewheel', function(event) { 8 | const normalized = normalizeWheel(event); 9 | callback && callback.apply(this, [event, normalized]); 10 | }); 11 | } 12 | }; 13 | 14 | export default { 15 | bind(el, binding) { 16 | mousewheel(el, binding.value); 17 | } 18 | }; 19 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/directives/repeat-click.js: -------------------------------------------------------------------------------- 1 | import { once, on } from 'element-ui/src/utils/dom'; 2 | 3 | export default { 4 | bind(el, binding, vnode) { 5 | let interval = null; 6 | let startTime; 7 | const handler = () => vnode.context[binding.expression].apply(); 8 | const clear = () => { 9 | if (new Date() - startTime < 100) { 10 | handler(); 11 | } 12 | clearInterval(interval); 13 | interval = null; 14 | }; 15 | 16 | on(el, 'mousedown', (e) => { 17 | if (e.button !== 0) return; 18 | startTime = new Date(); 19 | once(document, 'mouseup', clear); 20 | clearInterval(interval); 21 | interval = setInterval(handler, 100); 22 | }); 23 | } 24 | }; 25 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/locale/format.js: -------------------------------------------------------------------------------- 1 | import { hasOwn } from 'element-ui/src/utils/util'; 2 | 3 | const RE_NARGS = /(%|)\{([0-9a-zA-Z_]+)\}/g; 4 | /** 5 | * String format template 6 | * - Inspired: 7 | * https://github.com/Matt-Esch/string-template/index.js 8 | */ 9 | export default function(Vue) { 10 | 11 | /** 12 | * template 13 | * 14 | * @param {String} string 15 | * @param {Array} ...args 16 | * @return {String} 17 | */ 18 | 19 | function template(string, ...args) { 20 | if (args.length === 1 && typeof args[0] === 'object') { 21 | args = args[0]; 22 | } 23 | 24 | if (!args || !args.hasOwnProperty) { 25 | args = {}; 26 | } 27 | 28 | return string.replace(RE_NARGS, (match, prefix, i, index) => { 29 | let result; 30 | 31 | if (string[index - 1] === '{' && 32 | string[index + match.length] === '}') { 33 | return i; 34 | } else { 35 | result = hasOwn(args, i) ? args[i] : null; 36 | if (result === null || result === undefined) { 37 | return ''; 38 | } 39 | 40 | return result; 41 | } 42 | }); 43 | } 44 | 45 | return template; 46 | } 47 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/locale/index.js: -------------------------------------------------------------------------------- 1 | import defaultLang from 'element-ui/src/locale/lang/zh-CN'; 2 | import Vue from 'vue'; 3 | import deepmerge from 'deepmerge'; 4 | import Format from './format'; 5 | 6 | const format = Format(Vue); 7 | let lang = defaultLang; 8 | let merged = false; 9 | let i18nHandler = function() { 10 | const vuei18n = Object.getPrototypeOf(this || Vue).$t; 11 | if (typeof vuei18n === 'function' && !!Vue.locale) { 12 | if (!merged) { 13 | merged = true; 14 | Vue.locale( 15 | Vue.config.lang, 16 | deepmerge(lang, Vue.locale(Vue.config.lang) || {}, { clone: true }) 17 | ); 18 | } 19 | return vuei18n.apply(this, arguments); 20 | } 21 | }; 22 | 23 | export const t = function(path, options) { 24 | let value = i18nHandler.apply(this, arguments); 25 | if (value !== null && value !== undefined) return value; 26 | 27 | const array = path.split('.'); 28 | let current = lang; 29 | 30 | for (let i = 0, j = array.length; i < j; i++) { 31 | const property = array[i]; 32 | value = current[property]; 33 | if (i === j - 1) return format(value, options); 34 | if (!value) return ''; 35 | current = value; 36 | } 37 | return ''; 38 | }; 39 | 40 | export const use = function(l) { 41 | lang = l || lang; 42 | }; 43 | 44 | export const i18n = function(fn) { 45 | i18nHandler = fn || i18nHandler; 46 | }; 47 | 48 | export default { use, t, i18n }; 49 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/mixins/emitter.js: -------------------------------------------------------------------------------- 1 | function broadcast(componentName, eventName, params) { 2 | this.$children.forEach(child => { 3 | var name = child.$options.componentName; 4 | 5 | if (name === componentName) { 6 | child.$emit.apply(child, [eventName].concat(params)); 7 | } else { 8 | broadcast.apply(child, [componentName, eventName].concat([params])); 9 | } 10 | }); 11 | } 12 | export default { 13 | methods: { 14 | dispatch(componentName, eventName, params) { 15 | var parent = this.$parent || this.$root; 16 | var name = parent.$options.componentName; 17 | 18 | while (parent && (!name || name !== componentName)) { 19 | parent = parent.$parent; 20 | 21 | if (parent) { 22 | name = parent.$options.componentName; 23 | } 24 | } 25 | if (parent) { 26 | parent.$emit.apply(parent, [eventName].concat(params)); 27 | } 28 | }, 29 | broadcast(componentName, eventName, params) { 30 | broadcast.call(this, componentName, eventName, params); 31 | } 32 | } 33 | }; 34 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/mixins/focus.js: -------------------------------------------------------------------------------- 1 | export default function(ref) { 2 | return { 3 | methods: { 4 | focus() { 5 | this.$refs[ref].focus(); 6 | } 7 | } 8 | }; 9 | }; 10 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/mixins/locale.js: -------------------------------------------------------------------------------- 1 | import { t } from 'element-ui/src/locale'; 2 | 3 | export default { 4 | methods: { 5 | t(...args) { 6 | return t.apply(this, args); 7 | } 8 | } 9 | }; 10 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/utils/after-leave.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Bind after-leave event for vue instance. Make sure after-leave is called in any browsers. 3 | * 4 | * @param {Vue} instance Vue instance. 5 | * @param {Function} callback callback of after-leave event 6 | * @param {Number} speed the speed of transition, default value is 300ms 7 | * @param {Boolean} once weather bind after-leave once. default value is false. 8 | */ 9 | export default function(instance, callback, speed = 300, once = false) { 10 | if (!instance || !callback) throw new Error('instance & callback is required'); 11 | let called = false; 12 | const afterLeaveCallback = function() { 13 | if (called) return; 14 | called = true; 15 | if (callback) { 16 | callback.apply(null, arguments); 17 | } 18 | }; 19 | if (once) { 20 | instance.$once('after-leave', afterLeaveCallback); 21 | } else { 22 | instance.$on('after-leave', afterLeaveCallback); 23 | } 24 | setTimeout(() => { 25 | afterLeaveCallback(); 26 | }, speed + 100); 27 | }; 28 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/utils/menu/aria-menubar.js: -------------------------------------------------------------------------------- 1 | import MenuItem from './aria-menuitem'; 2 | 3 | const Menu = function(domNode) { 4 | this.domNode = domNode; 5 | this.init(); 6 | }; 7 | 8 | Menu.prototype.init = function() { 9 | let menuChildren = this.domNode.childNodes; 10 | [].filter.call(menuChildren, child => child.nodeType === 1).forEach(child => { 11 | new MenuItem(child); // eslint-disable-line 12 | }); 13 | }; 14 | export default Menu; 15 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/utils/menu/aria-menuitem.js: -------------------------------------------------------------------------------- 1 | import Utils from '../aria-utils'; 2 | import SubMenu from './aria-submenu'; 3 | 4 | const MenuItem = function(domNode) { 5 | this.domNode = domNode; 6 | this.submenu = null; 7 | this.init(); 8 | }; 9 | 10 | MenuItem.prototype.init = function() { 11 | this.domNode.setAttribute('tabindex', '0'); 12 | let menuChild = this.domNode.querySelector('.el-menu'); 13 | if (menuChild) { 14 | this.submenu = new SubMenu(this, menuChild); 15 | } 16 | this.addListeners(); 17 | }; 18 | 19 | MenuItem.prototype.addListeners = function() { 20 | const keys = Utils.keys; 21 | this.domNode.addEventListener('keydown', event => { 22 | let prevDef = false; 23 | switch (event.keyCode) { 24 | case keys.down: 25 | Utils.triggerEvent(event.currentTarget, 'mouseenter'); 26 | this.submenu && this.submenu.gotoSubIndex(0); 27 | prevDef = true; 28 | break; 29 | case keys.up: 30 | Utils.triggerEvent(event.currentTarget, 'mouseenter'); 31 | this.submenu && this.submenu.gotoSubIndex(this.submenu.subMenuItems.length - 1); 32 | prevDef = true; 33 | break; 34 | case keys.tab: 35 | Utils.triggerEvent(event.currentTarget, 'mouseleave'); 36 | break; 37 | case keys.enter: 38 | case keys.space: 39 | prevDef = true; 40 | event.currentTarget.click(); 41 | break; 42 | } 43 | if (prevDef) { 44 | event.preventDefault(); 45 | } 46 | }); 47 | }; 48 | 49 | export default MenuItem; 50 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/utils/merge.js: -------------------------------------------------------------------------------- 1 | export default function(target) { 2 | for (let i = 1, j = arguments.length; i < j; i++) { 3 | let source = arguments[i] || {}; 4 | for (let prop in source) { 5 | if (source.hasOwnProperty(prop)) { 6 | let value = source[prop]; 7 | if (value !== undefined) { 8 | target[prop] = value; 9 | } 10 | } 11 | } 12 | } 13 | 14 | return target; 15 | }; 16 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/utils/resize-event.js: -------------------------------------------------------------------------------- 1 | import ResizeObserver from 'resize-observer-polyfill'; 2 | 3 | const isServer = typeof window === 'undefined'; 4 | 5 | /* istanbul ignore next */ 6 | const resizeHandler = function(entries) { 7 | for (let entry of entries) { 8 | const listeners = entry.target.__resizeListeners__ || []; 9 | if (listeners.length) { 10 | listeners.forEach(fn => { 11 | fn(); 12 | }); 13 | } 14 | } 15 | }; 16 | 17 | /* istanbul ignore next */ 18 | export const addResizeListener = function(element, fn) { 19 | if (isServer) return; 20 | if (!element.__resizeListeners__) { 21 | element.__resizeListeners__ = []; 22 | element.__ro__ = new ResizeObserver(resizeHandler); 23 | element.__ro__.observe(element); 24 | } 25 | element.__resizeListeners__.push(fn); 26 | }; 27 | 28 | /* istanbul ignore next */ 29 | export const removeResizeListener = function(element, fn) { 30 | if (!element || !element.__resizeListeners__) return; 31 | element.__resizeListeners__.splice(element.__resizeListeners__.indexOf(fn), 1); 32 | if (!element.__resizeListeners__.length) { 33 | element.__ro__.disconnect(); 34 | } 35 | }; 36 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/utils/scroll-into-view.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | 3 | export default function scrollIntoView(container, selected) { 4 | if (Vue.prototype.$isServer) return; 5 | 6 | if (!selected) { 7 | container.scrollTop = 0; 8 | return; 9 | } 10 | 11 | const offsetParents = []; 12 | let pointer = selected.offsetParent; 13 | while (pointer && container !== pointer && container.contains(pointer)) { 14 | offsetParents.push(pointer); 15 | pointer = pointer.offsetParent; 16 | } 17 | const top = selected.offsetTop + offsetParents.reduce((prev, curr) => (prev + curr.offsetTop), 0); 18 | const bottom = top + selected.offsetHeight; 19 | const viewRectTop = container.scrollTop; 20 | const viewRectBottom = viewRectTop + container.clientHeight; 21 | 22 | if (top < viewRectTop) { 23 | container.scrollTop = top; 24 | } else if (bottom > viewRectBottom) { 25 | container.scrollTop = bottom - container.clientHeight; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/utils/scrollbar-width.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | 3 | let scrollBarWidth; 4 | 5 | export default function() { 6 | if (Vue.prototype.$isServer) return 0; 7 | if (scrollBarWidth !== undefined) return scrollBarWidth; 8 | 9 | const outer = document.createElement('div'); 10 | outer.className = 'el-scrollbar__wrap'; 11 | outer.style.visibility = 'hidden'; 12 | outer.style.width = '100px'; 13 | outer.style.position = 'absolute'; 14 | outer.style.top = '-9999px'; 15 | document.body.appendChild(outer); 16 | 17 | const widthNoScroll = outer.offsetWidth; 18 | outer.style.overflow = 'scroll'; 19 | 20 | const inner = document.createElement('div'); 21 | inner.style.width = '100%'; 22 | outer.appendChild(inner); 23 | 24 | const widthWithScroll = inner.offsetWidth; 25 | outer.parentNode.removeChild(outer); 26 | scrollBarWidth = widthNoScroll - widthWithScroll; 27 | 28 | return scrollBarWidth; 29 | }; 30 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/utils/shared.js: -------------------------------------------------------------------------------- 1 | export function isDef(val) { 2 | return val !== undefined && val !== null; 3 | } 4 | export function isKorean(text) { 5 | const reg = /([(\uAC00-\uD7AF)|(\u3130-\u318F)])+/gi; 6 | return reg.test(text); 7 | } 8 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/src/utils/vdom.js: -------------------------------------------------------------------------------- 1 | import { hasOwn } from 'element-ui/src/utils/util'; 2 | 3 | export function isVNode(node) { 4 | return node !== null && typeof node === 'object' && hasOwn(node, 'componentOptions'); 5 | }; 6 | 7 | export function getFirstComponentChild(children) { 8 | return children && children.filter(c => c && c.tag)[0]; 9 | }; 10 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/alert.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | export type AlertType = 'success' | 'warning' | 'info' | 'error' 4 | 5 | /** Alert Component */ 6 | export declare class ElAlert extends ElementUIComponent { 7 | /** Title */ 8 | title: string 9 | 10 | /** Component type */ 11 | type: AlertType 12 | 13 | /** Descriptive text. Can also be passed with the default slot */ 14 | description: string 15 | 16 | /** If closable or not */ 17 | closable: boolean 18 | 19 | /** whether to center the text */ 20 | center: boolean 21 | 22 | /** Customized close button text */ 23 | closeText: string 24 | 25 | /** If a type icon is displayed */ 26 | showIcon: boolean 27 | } 28 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/aside.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Aside Component */ 4 | export declare class ElAside extends ElementUIComponent { 5 | /** Width of the side section */ 6 | width: string 7 | } 8 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/badge.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Badge Component */ 4 | export declare class ElBadge extends ElementUIComponent { 5 | /** Display value */ 6 | value: string | number 7 | 8 | /** Maximum value, shows '{max}+' when exceeded. Only works if `value` is a number */ 9 | max: number 10 | 11 | /** If a little dot is displayed */ 12 | isDot: boolean 13 | 14 | /** Hidden badge */ 15 | hidden: boolean 16 | } 17 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/breadcrumb-item.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Breadcrumb Item Component */ 4 | export declare class ElBreadcrumbItem extends ElementUIComponent { 5 | /** Target route of the link, same as to of vue-router */ 6 | to: string | object 7 | 8 | /** If true, the navigation will not leave a history record */ 9 | replace: boolean 10 | } 11 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/breadcrumb.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Displays the location of the current page, making it easier to browser back */ 4 | export declare class ElBreadcrumb extends ElementUIComponent { 5 | /** Separator character */ 6 | separator: string 7 | 8 | /** Class name of the icon separator */ 9 | separatorClass: string 10 | } 11 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/button-group.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Button Group Component */ 4 | export declare class ElButtonGroup extends ElementUIComponent {} 5 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/button.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent, ElementUIComponentSize } from './component' 2 | 3 | /** Button type */ 4 | export type ButtonType = 'primary' | 'success' | 'warning' | 'danger' | 'info' | 'text' 5 | 6 | /** Same as native button's type */ 7 | export type ButtonNativeType = 'button' | 'submit' | 'reset' | 'menu' 8 | 9 | /** Button Component */ 10 | export declare class ElButton extends ElementUIComponent { 11 | /** Button size */ 12 | size: ElementUIComponentSize 13 | 14 | /** Button type */ 15 | type: ButtonType 16 | 17 | /** Determine whether it's a plain button */ 18 | plain: boolean 19 | 20 | /** Determine whether it's a round button */ 21 | round: boolean 22 | 23 | /** Determine whether it's loading */ 24 | loading: boolean 25 | 26 | /** Disable the button */ 27 | disabled: boolean 28 | 29 | /** Button icon, accepts an icon name of Element icon component */ 30 | icon: string 31 | 32 | /** Same as native button's autofocus */ 33 | autofocus: boolean 34 | 35 | /** Same as native button's type */ 36 | nativeType: ButtonNativeType 37 | } 38 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/card.d.ts: -------------------------------------------------------------------------------- 1 | import { VNode, VNodeDirective } from 'vue' 2 | import { ElementUIComponent } from './component' 3 | 4 | export interface CardSlots { 5 | /** Content of the card */ 6 | default: VNode[], 7 | 8 | /** Title of the card */ 9 | header: VNode[] 10 | 11 | [key: string]: VNode[] 12 | } 13 | 14 | /** Integrate information in a card container */ 15 | export declare class ElCard extends ElementUIComponent { 16 | /** Title of the card */ 17 | header: string 18 | 19 | /** CSS style of body */ 20 | bodyStyle: object 21 | 22 | /** When to show card shadows */ 23 | shadow: string 24 | 25 | $slots: CardSlots 26 | } 27 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/carousel-item.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Carousel Item Component */ 4 | export declare class ElCarouselItem extends ElementUIComponent { 5 | /** Name of the item, can be used in setActiveItem */ 6 | name: string 7 | 8 | /** Text content for the corresponding indicator */ 9 | label: string 10 | } 11 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/checkbox-button.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Checkbox Button Component */ 4 | export declare class ElCheckboxButton extends ElementUIComponent { 5 | /** Value of the checkbox when used inside a checkbox-group */ 6 | label: string | number | boolean 7 | 8 | /** Value of the checkbox if it's checked */ 9 | trueLabel: string | number 10 | 11 | /** Value of the checkbox if it's not checked */ 12 | falseLabel: string | number 13 | 14 | /** Native 'name' attribute */ 15 | name: string 16 | 17 | /** If the checkbox is disabled */ 18 | disabled: boolean 19 | 20 | /** If the checkbox is checked */ 21 | checked: boolean 22 | } 23 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/checkbox-group.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent, ElementUIComponentSize } from './component' 2 | 3 | /** Checkbox Group Component */ 4 | export declare class ElCheckboxGroup extends ElementUIComponent { 5 | /** Size of checkbox buttons or bordered checkboxes */ 6 | size: ElementUIComponentSize 7 | 8 | /** Whether the nesting checkboxes are disabled */ 9 | disabled: boolean 10 | 11 | /** Minimum number of checkbox checked */ 12 | min: number 13 | 14 | /** Maximum number of checkbox checked */ 15 | max: number 16 | 17 | /** Font color when button is active */ 18 | textColor: string 19 | 20 | /** Border and background color when button is active */ 21 | fill: string 22 | } 23 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/checkbox.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent, ElementUIComponentSize } from './component' 2 | 3 | /** Checkbox Component */ 4 | export declare class ElCheckbox extends ElementUIComponent { 5 | /** The form input value */ 6 | value: string | string[] 7 | 8 | /** Value of the checkbox when used inside a checkbox-group */ 9 | label: string | number | boolean 10 | 11 | /** Value of the checkbox if it's checked */ 12 | trueLabel: string | number 13 | 14 | /** Value of the checkbox if it's not checked */ 15 | falseLabel: string | number 16 | 17 | /** Native 'name' attribute */ 18 | name: string 19 | 20 | /** Whether to add a border around Checkbox */ 21 | border: boolean 22 | 23 | /** Size of the Checkbox, only works when border is true */ 24 | size: ElementUIComponentSize 25 | 26 | /** If the checkbox is disabled */ 27 | disabled: boolean 28 | 29 | /** If the checkbox is checked */ 30 | checked: boolean 31 | 32 | /** Same as indeterminate in native checkbox */ 33 | indeterminate: boolean 34 | } 35 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/col.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Responsive column props */ 4 | export interface ResponsiveColumnProperties { 5 | /** Number of column the grid spans */ 6 | span: number, 7 | 8 | /** Number of spacing on the left side of the grid */ 9 | offset: number 10 | } 11 | 12 | /** Responsive column property */ 13 | export type ResponsiveColumn = number | ResponsiveColumnProperties 14 | 15 | /** Colunm Layout Component */ 16 | export declare class ElCol extends ElementUIComponent { 17 | /** Number of column the grid spans */ 18 | span: number 19 | 20 | /** Number of spacing on the left side of the grid */ 21 | offset: number 22 | 23 | /** Number of columns that grid moves to the right */ 24 | push: number 25 | 26 | /** Number of columns that grid moves to the left */ 27 | pull: number 28 | 29 | /** <768px Responsive columns or column props object */ 30 | xs: ResponsiveColumn 31 | 32 | /** ≥768px Responsive columns or column props object */ 33 | sm: ResponsiveColumn 34 | 35 | /** ≥992px Responsive columns or column props object */ 36 | md: ResponsiveColumn 37 | 38 | /** ≥1200px Responsive columns or column props object */ 39 | lg: ResponsiveColumn 40 | 41 | /** ≥1920px Responsive columns or column props object */ 42 | xl: ResponsiveColumn 43 | 44 | /** custom element tag */ 45 | tag: string 46 | } 47 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/collapse-item.d.ts: -------------------------------------------------------------------------------- 1 | import { VNode } from 'vue' 2 | import { ElementUIComponent } from './component' 3 | 4 | export interface CollapseItemSlots { 5 | /** Content of the collapse item */ 6 | default: VNode[], 7 | 8 | /** Title of the collapse item */ 9 | title: VNode[] 10 | 11 | [key: string]: VNode[] 12 | } 13 | 14 | /** Collapse Item Component */ 15 | export declare class ElCollapseItem extends ElementUIComponent { 16 | /** Unique identification of the panel */ 17 | name: string | number 18 | 19 | /** Title of the panel */ 20 | title: string 21 | 22 | $slots: CollapseItemSlots 23 | } 24 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/collapse.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Use Collapse to store contents. */ 4 | export declare class ElCollapse extends ElementUIComponent { 5 | /** Whether to activate accordion mode */ 6 | accordion: boolean 7 | 8 | /** Currently active panel */ 9 | value: string | number | string[] | number[] 10 | } 11 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/color-picker.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent, ElementUIComponentSize } from './component' 2 | 3 | export type ColorFormat = 'hsl' | 'hsv' | 'hex' | 'rgb' 4 | 5 | /** ColorPicker Component */ 6 | export declare class ElColorPicker extends ElementUIComponent { 7 | /** Whether to display the alpha slider */ 8 | showAlpha: boolean 9 | 10 | /** Whether to disable the ColorPicker */ 11 | disabled: boolean 12 | 13 | /** Size of ColorPicker */ 14 | size: ElementUIComponentSize 15 | 16 | /** Whether to display the alpha slider */ 17 | popperClass: string 18 | 19 | /** Custom class name for ColorPicker's dropdown */ 20 | colorFormat: ColorFormat 21 | } 22 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/component.d.ts: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | 3 | /** ElementUI component common definition */ 4 | export declare class ElementUIComponent extends Vue { 5 | /** Install component into Vue */ 6 | static install (vue: typeof Vue): void 7 | } 8 | 9 | /** Component size definition for button, input, etc */ 10 | export type ElementUIComponentSize = 'large' | 'medium' | 'small' | 'mini' 11 | 12 | /** Horizontal alignment */ 13 | export type ElementUIHorizontalAlignment = 'left' | 'center' | 'right' 14 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/container.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Container Component */ 4 | export declare class ElContainer extends ElementUIComponent { 5 | /** Layout direction for child elements */ 6 | direction: 'horizontal' | 'vertical' 7 | } 8 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/dropdown-item.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Toggleable menu for displaying lists of links and actions. */ 4 | export declare class ElDropdownItem extends ElementUIComponent { 5 | /** A command to be dispatched to Dropdown's command callback */ 6 | command: string | number | object 7 | 8 | /** Whether the item is disabled */ 9 | disabled: boolean 10 | 11 | /** Whether a divider is displayed */ 12 | divided: boolean 13 | } 14 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/dropdown-menu.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Dropdown Menu Component */ 4 | export declare class ElDropdownMenu extends ElementUIComponent {} 5 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/dropdown.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent, ElementUIComponentSize } from './component' 2 | import { ButtonType } from './button' 3 | 4 | export type DropdownMenuAlignment = 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' 5 | export type DropdownMenuTrigger = 'hover' | 'click' 6 | 7 | /** Toggleable menu for displaying lists of links and actions */ 8 | export declare class ElDropdown extends ElementUIComponent { 9 | /** Menu button type. only works when split-button is true */ 10 | type: ButtonType 11 | 12 | /** Whether a button group is displayed */ 13 | splitButton: boolean 14 | 15 | /** menu size, also works on the split button */ 16 | size: ElementUIComponentSize 17 | 18 | /** Placement of the menu */ 19 | placement: DropdownMenuAlignment 20 | 21 | /** How to trigger */ 22 | trigger: DropdownMenuTrigger 23 | 24 | /** Whether to hide menu after clicking menu-item */ 25 | hideOnClick: boolean 26 | } 27 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/footer.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Footer Component */ 4 | export declare class ElFooter extends ElementUIComponent { 5 | /** Height of the footer */ 6 | height: string 7 | } 8 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/form-item.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent, ElementUIComponentSize } from './component' 2 | 3 | /** FormItem Component */ 4 | export declare class ElFormItem extends ElementUIComponent { 5 | /** A key of `model` of the enclosing `el-form` component */ 6 | prop: string 7 | 8 | /** Label */ 9 | label: string 10 | 11 | /** Width of label, e.g. '50px' */ 12 | labelWidth: string 13 | 14 | /** Whether the field is required or not, will be determined by validation rules if omitted */ 15 | required: boolean 16 | 17 | /** Validation rules of form */ 18 | rules: object 19 | 20 | /** Field error message, set its value and the field will validate error and show this message immediately */ 21 | error: string 22 | 23 | /** Whether to show the error message */ 24 | showMessage: boolean 25 | 26 | /** Whether to display the error message inline with the form item */ 27 | inlineMessage: boolean 28 | 29 | /** Controls the size of components in this form */ 30 | size: ElementUIComponentSize 31 | 32 | /** Reset current field and remove validation result */ 33 | resetField (): void 34 | 35 | /** Remove validation status of the field */ 36 | clearValidate (): void 37 | } 38 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/header.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Header Component */ 4 | export declare class ElHeader extends ElementUIComponent { 5 | /** Height of the header */ 6 | height: string 7 | } 8 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from './element-ui' 2 | 3 | import * as ElementUI from './element-ui' 4 | export default ElementUI 5 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/input-number.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | export type InputNumberSize = 'large' | 'small' 4 | 5 | /** InputNumber Component */ 6 | export declare class ElInputNumber extends ElementUIComponent { 7 | /** Binding value */ 8 | value: number 9 | 10 | /** The minimum allowed value */ 11 | min: number 12 | 13 | /** The maximum allowed value */ 14 | max: number 15 | 16 | /** Incremental step */ 17 | step: number 18 | 19 | /** Size of the component */ 20 | size: InputNumberSize 21 | 22 | /** Whether the component is disabled */ 23 | disabled: boolean 24 | 25 | /** Whether to enable the control buttons */ 26 | controls: boolean 27 | 28 | /** Debounce delay when typing, in milliseconds */ 29 | debounce: number 30 | 31 | /** Position of the control buttons */ 32 | controlsPosition: string 33 | 34 | /** Same as name in native input */ 35 | name: string 36 | 37 | /** Precision of input value */ 38 | precision: Number 39 | 40 | /** 41 | * Focus the Input component 42 | */ 43 | focus (): void 44 | } 45 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/main.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Main Component */ 4 | export declare class ElMain extends ElementUIComponent {} 5 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/menu-item-group.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Menu Item Group Component */ 4 | export declare class ElMenuItemGroup extends ElementUIComponent { 5 | /** Group title */ 6 | title: string 7 | } 8 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/menu-item.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Menu Item Component */ 4 | export declare class ElMenuItem extends ElementUIComponent { 5 | /** Unique identification */ 6 | index: string 7 | 8 | /** Vue Router object */ 9 | route: object 10 | } 11 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/menu.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | export type MenuDisplayMode = 'horizontal' | 'vertical' 4 | export type MenuTheme = 'light' | 'dark' 5 | 6 | /** Menu that provides navigation for your website */ 7 | export declare class ElMenu extends ElementUIComponent { 8 | /** Menu display mode */ 9 | mode: MenuDisplayMode 10 | 11 | /** Whether the menu is collapsed (available only in vertical mode) */ 12 | collapse: boolean 13 | 14 | /** Background color of Menu (hex format) */ 15 | backgroundColor: string 16 | 17 | /** Text color of Menu (hex format) */ 18 | textColor: string 19 | 20 | /** Text color of currently active menu item (hex format) */ 21 | activeTextColor: string 22 | 23 | /** Index of currently active menu */ 24 | defaultActive: string 25 | 26 | /** Array that contains keys of currently active sub-menus */ 27 | defaultOpeneds: string[] 28 | 29 | /** Whether only one sub-menu can be active */ 30 | uniqueOpened: boolean 31 | 32 | /** How sub-menus are triggered, only works when mode is 'horizontal' */ 33 | menuTrigger: string 34 | 35 | /** Whether vue-router mode is activated. If true, index will be used as 'path' to activate the route action */ 36 | router: boolean 37 | 38 | /** Whether the menu collapse transition is active */ 39 | collapseTransition: boolean 40 | 41 | /** Open the specified sub-menu */ 42 | open (index: string): void 43 | 44 | /** Close the specified sub-menu */ 45 | close (index: string): void 46 | } 47 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/option-group.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Dropdown Select Option Group Component */ 4 | export declare class ElOptionGroup extends ElementUIComponent { 5 | /** Name of the group */ 6 | label: string 7 | 8 | /** Whether to disable all options in this group */ 9 | disabled: boolean 10 | } 11 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/option.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Dropdown Select Option Component */ 4 | export declare class ElOption extends ElementUIComponent { 5 | /** Value of option */ 6 | value: any 7 | 8 | /** Label of option, same as value if omitted */ 9 | label: string 10 | 11 | /** Whether option is disabled */ 12 | disabled: boolean 13 | } 14 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/pagination.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Pagination Component */ 4 | export declare class ElPagination extends ElementUIComponent { 5 | /** Whether to use small pagination */ 6 | small: boolean 7 | 8 | /** Item count of each page */ 9 | pageSize: number 10 | 11 | /** Total item count */ 12 | total: number 13 | 14 | /** Total page count. Set either total or page-count and pages will be displayed; if you need page-sizes, total is required */ 15 | pageCount: number 16 | 17 | /** Number of pagers */ 18 | pagerCount: number 19 | 20 | /** Current page number */ 21 | currentPage: number 22 | 23 | /** 24 | * Layout of Pagination. Elements separated with a comma. 25 | * Accepted values: `sizes`, `prev`, `pager`, `next`, `jumper`, `->`, `total`, `slot` 26 | */ 27 | layout: string 28 | 29 | /** Options of item count per page */ 30 | pageSizes: number[] 31 | 32 | /** Custom class name for the page size Select's dropdown */ 33 | popperClass: string 34 | 35 | /** Text for the prev button */ 36 | prevText: string 37 | 38 | /** Text for the prev button */ 39 | nextText: string 40 | } 41 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/progress.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | export type ProgressType = 'line' | 'circle' 4 | export type ProgressStatus = 'success' | 'exception' 5 | 6 | /** Progress Component */ 7 | export declare class ElProgress extends ElementUIComponent { 8 | /** Percentage, required */ 9 | percentage: number 10 | 11 | /** The type of progress bar */ 12 | type: ProgressType 13 | 14 | /** The width of progress bar */ 15 | strokeWidth: number 16 | 17 | /** Whether to place the percentage inside progress bar, only works when type is 'line' */ 18 | textInside: boolean 19 | 20 | /** The current status of progress bar */ 21 | status: ProgressStatus 22 | 23 | /** Background color of progress bar. Overrides `status` prop */ 24 | color: string 25 | 26 | /** The canvas width of circle progress bar */ 27 | width: number 28 | 29 | /** Whether to show percentage */ 30 | showText: boolean 31 | } 32 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/radio-button.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Radio Button Component */ 4 | export declare class ElRadioButton extends ElementUIComponent { 5 | /** The form input value */ 6 | value: string 7 | 8 | /** The value of radio */ 9 | label: string | number 10 | 11 | /** Whether radio is disabled */ 12 | disabled: boolean 13 | 14 | /** Native 'name' attribute */ 15 | name: string 16 | } 17 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/radio-group.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | export type RadioGroupSize = 'large' | 'small' 4 | 5 | /** Radio Group Component */ 6 | export declare class ElRadioGroup extends ElementUIComponent { 7 | /** The size of radio buttons */ 8 | size: RadioGroupSize 9 | 10 | /** Border and background color when button is active */ 11 | fill: string 12 | 13 | /** Whether the nesting radios are disabled */ 14 | disabled: boolean 15 | 16 | /** Font color when button is active */ 17 | textColor: string 18 | } 19 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/radio.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Radio Component */ 4 | export declare class ElRadio extends ElementUIComponent { 5 | /** The form input value */ 6 | value: string 7 | 8 | /** The value of radio */ 9 | label: string | number | boolean 10 | 11 | /** Whether radio is disabled */ 12 | disabled: boolean 13 | 14 | /** Whether to add a border around Radio */ 15 | border: boolean 16 | 17 | /** Native 'name' attribute */ 18 | name: string 19 | } 20 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/row.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Horizontal alignment of flex layout */ 4 | export type HorizontalAlignment = 'start' | 'end' | 'center' | 'space-around' | 'space-between' 5 | 6 | /** vertical alignment of flex layout */ 7 | export type VertialAlignment = 'top' | 'middle' | 'bottom' 8 | 9 | /** Row Layout Component */ 10 | export declare class ElRow extends ElementUIComponent { 11 | /** Grid spacing */ 12 | gutter: number 13 | 14 | /** Layout mode. You can use flex. Works in modern browsers */ 15 | type: string 16 | 17 | /** Horizontal alignment of flex layout */ 18 | justify: HorizontalAlignment 19 | 20 | /** Vertical alignment of flex layout */ 21 | align: VertialAlignment 22 | 23 | /** Custom element tag */ 24 | tag: string 25 | } 26 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/step.d.ts: -------------------------------------------------------------------------------- 1 | import { VNode } from 'vue' 2 | import { ElementUIComponent } from './component' 3 | 4 | export type StepStatus = 'wait' | 'process' | 'finish' | 'error' | 'success' 5 | 6 | export interface StepRenderSlots { 7 | /** Custom icon */ 8 | icon: VNode[], 9 | 10 | /** Step title */ 11 | title: VNode[], 12 | 13 | /** Step description */ 14 | description: VNode[], 15 | 16 | [key: string]: VNode[] 17 | } 18 | 19 | /** Step Component */ 20 | export declare class ElStep extends ElementUIComponent { 21 | /** Step title */ 22 | title: string 23 | 24 | /** Step description */ 25 | description: string 26 | 27 | /** Step icon */ 28 | icon: string 29 | 30 | /** Current status. It will be automatically set by Steps if not configured. */ 31 | status: StepStatus 32 | 33 | readonly $slots: StepRenderSlots 34 | } 35 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/steps.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | import { StepStatus } from './step' 3 | 4 | export type StepsDirection = 'vertical' | 'horizontal' 5 | 6 | /** Guide the user to complete tasks in accordance with the process. Its steps can be set according to the actual application scenario and the number of the steps can't be less than 2. */ 7 | export declare class ElSteps extends ElementUIComponent { 8 | /** The spacing of each step, will be responsive if omitted. Support percentage. */ 9 | space: number | string 10 | 11 | /** Display direction */ 12 | direction: StepsDirection 13 | 14 | /** Current activation step */ 15 | active: number 16 | 17 | /** Status of current step */ 18 | processStatus: StepStatus 19 | 20 | /** Status of end step */ 21 | finishStatus: StepStatus 22 | 23 | /** Whether step description is centered */ 24 | alignCenter: boolean 25 | 26 | /** Whether to apply simple theme */ 27 | simple: boolean 28 | } 29 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/submenu.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Submenu Component */ 4 | export declare class ElSubmenu extends ElementUIComponent { 5 | /** Unique identification */ 6 | index: string 7 | 8 | /** Delay time before showing a sub-menu */ 9 | showTimeout: number 10 | 11 | /** Delay time before hiding a sub-menu */ 12 | hideTimeout: number 13 | 14 | /** Custom class name for the popup menu */ 15 | popperClass: string 16 | 17 | /** Whether the sub-menu is disabled */ 18 | disabled: boolean 19 | 20 | /** Whether to append the popper menu to body */ 21 | popperAppendToBody: boolean 22 | } 23 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/switch.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Switch Component */ 4 | export declare class ElSwitch extends ElementUIComponent { 5 | /** Whether Switch is on */ 6 | value: boolean 7 | 8 | /** Whether Switch is disabled */ 9 | disabled: boolean 10 | 11 | /** Width of Switch */ 12 | width: number 13 | 14 | /** Class name of the icon displayed when in on state, overrides on-text */ 15 | activeIconClass: string 16 | 17 | /** Class name of the icon displayed when in off state, overrides off-text */ 18 | inactiveIconClass: string 19 | 20 | /** Text displayed when in on state */ 21 | activeText: string 22 | 23 | /** Text displayed when in off state */ 24 | inactiveText: string 25 | 26 | /** Background color when in on state */ 27 | activeColor: string 28 | 29 | /** Background color when in off state */ 30 | inactiveColor: string 31 | 32 | /** Switch value when in on state */ 33 | activeValue: string | boolean | number 34 | 35 | /** Switch value when in off state */ 36 | inactiveValue: string | boolean | number 37 | 38 | /** Input name of Switch */ 39 | name: string 40 | } 41 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/tab-pane.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | /** Tab Pane Component */ 4 | export declare class ElTabPane extends ElementUIComponent { 5 | /** Title of the tab */ 6 | label: string 7 | 8 | /** Whether Tab is disabled */ 9 | disabled: boolean 10 | 11 | /** Identifier corresponding to the activeName of Tabs, representing the alias of the tab-pane */ 12 | name: string 13 | 14 | /** Whether Tab is closable */ 15 | closable: boolean 16 | 17 | /** Whether Tab is lazily rendered */ 18 | lazy: boolean 19 | } 20 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/tabs.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | 3 | export type TabType = 'card' | 'border-card' 4 | export type TabPosition = 'top' | 'right' | 'bottom' | 'left' 5 | 6 | /** Divide data collections which are related yet belong to different types */ 7 | export declare class ElTabs extends ElementUIComponent { 8 | /** Type of Tab */ 9 | type: TabType 10 | 11 | /** Whether Tab is closable */ 12 | closable: boolean 13 | 14 | /** Whether Tab is addable */ 15 | addable: boolean 16 | 17 | /** Whether Tab is addable and closable */ 18 | editable: boolean 19 | 20 | /** Name of the selected tab */ 21 | value: string 22 | 23 | /** Position of tabs */ 24 | tabPosition: TabPosition 25 | 26 | /** Whether width of tab automatically fits its container */ 27 | stretch: Boolean 28 | 29 | /** Hook function before switching tab. If false or a Promise is returned and then is rejected, switching will be prevented */ 30 | beforeLeave: (activeName: string, oldActiveName: string) => boolean | Promise 31 | } 32 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/tag.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent, ElementUIComponentSize } from './component' 2 | 3 | export type TagType = 'primary' | 'gray' | 'success' | 'warning' | 'danger' 4 | 5 | /** Tag Component */ 6 | export declare class ElTag extends ElementUIComponent { 7 | /** Theme */ 8 | type: TagType 9 | 10 | /** Whether Tab can be removed */ 11 | closable: boolean 12 | 13 | /** Whether the removal animation is disabled */ 14 | disableTransitions: boolean 15 | 16 | /** Whether Tag has a highlighted border */ 17 | hit: boolean 18 | 19 | /** Background color of the tag */ 20 | color: string 21 | 22 | /** Tag size */ 23 | size: ElementUIComponentSize 24 | } 25 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/time-select.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent, ElementUIComponentSize, ElementUIHorizontalAlignment } from './component' 2 | 3 | export interface TimeSelectOptions { 4 | /** Start time */ 5 | start?: string, 6 | 7 | /** End time */ 8 | end?: string, 9 | 10 | /** Time step */ 11 | step?: string, 12 | 13 | /** Minimum time, any time before this time will be disabled */ 14 | minTime?: string, 15 | 16 | /** Maximum time, any time after this time will be disabled */ 17 | maxTime?: string 18 | } 19 | 20 | /** TimeSelect Component */ 21 | export declare class ElTimeSelect extends ElementUIComponent { 22 | /** Whether DatePicker is read only */ 23 | readonly: boolean 24 | 25 | /** Whether DatePicker is disabled */ 26 | disabled: boolean 27 | 28 | /** Whether the input is editable */ 29 | editable: boolean 30 | 31 | /** Whether to show clear button */ 32 | clearable: boolean 33 | 34 | /** Size of Input */ 35 | size: ElementUIComponentSize 36 | 37 | /** Placeholder */ 38 | placeholder: string 39 | 40 | /** Value of the picker */ 41 | value: string | Date 42 | 43 | /** Alignment */ 44 | align: ElementUIHorizontalAlignment 45 | 46 | /** Custom class name for TimePicker's dropdown */ 47 | popperClass: string 48 | 49 | /** Additional options, check the table below */ 50 | pickerOptions: TimeSelectOptions 51 | 52 | /** 53 | * Focus the Input component 54 | */ 55 | focus (): void 56 | } 57 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/element-ui/types/tooltip.d.ts: -------------------------------------------------------------------------------- 1 | import { ElementUIComponent } from './component' 2 | import { PopoverPlacement } from './popover' 3 | 4 | export type TooltipEffect = 'dark' | 'light' 5 | 6 | /** Tooltip Component */ 7 | export declare class ElTooltip extends ElementUIComponent { 8 | /** Tooltip theme */ 9 | effect: TooltipEffect 10 | 11 | /** Display content, can be overridden by slot#content */ 12 | content: String 13 | 14 | /** Position of Tooltip */ 15 | placement: PopoverPlacement 16 | 17 | /** Visibility of Tooltip */ 18 | value: boolean 19 | 20 | /** Whether Tooltip is disabled */ 21 | disabled: boolean 22 | 23 | /** Offset of the Tooltip */ 24 | offset: number 25 | 26 | /** Animation name */ 27 | transition: string 28 | 29 | /** Whether an arrow is displayed. For more information, check Vue-popper page */ 30 | visibleArrow: boolean 31 | 32 | /** Popper.js parameters */ 33 | popperOptions: object 34 | 35 | /** Delay of appearance, in millisecond */ 36 | openDelay: number 37 | 38 | /** Whether to control Tooltip manually. mouseenter and mouseleave won't have effects if set to true */ 39 | manual: boolean 40 | 41 | /** Custom class name for Tooltip's popper */ 42 | popperClass: string 43 | 44 | /** Whether the mouse can enter the tooltip */ 45 | enterable: string 46 | 47 | /** Timeout in milliseconds to hide tooltip */ 48 | hideAfter: string 49 | } 50 | -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/icon/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/icon/iconfont.eot -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/icon/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/icon/iconfont.ttf -------------------------------------------------------------------------------- /src/main/resources/static/lib/font/icon/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TyCoding/spring-boot/db97af48a926190f918ea59eff1a5934912f2eca/src/main/resources/static/lib/font/icon/iconfont.woff -------------------------------------------------------------------------------- /src/main/resources/static/store/store.js: -------------------------------------------------------------------------------- 1 | export default new Vuex.Store({ 2 | 3 | //定义状态 4 | state: { 5 | isLogin: false, 6 | token: '' 7 | } 8 | }); 9 | 10 | -------------------------------------------------------------------------------- /src/test/java/cn/tycoding/springboot/SpringbootApplicationTests.java: -------------------------------------------------------------------------------- 1 | package cn.tycoding.springboot; 2 | 3 | import org.junit.Test; 4 | import org.junit.runner.RunWith; 5 | import org.springframework.boot.test.context.SpringBootTest; 6 | import org.springframework.test.context.junit4.SpringRunner; 7 | 8 | @RunWith(SpringRunner.class) 9 | @SpringBootTest 10 | public class SpringbootApplicationTests { 11 | 12 | @Test 13 | public void contextLoads() { 14 | } 15 | 16 | } 17 | --------------------------------------------------------------------------------