From 63c549d651144fa02ebb16ec2c2fef9a3561b109 Mon Sep 17 00:00:00 2001 From: cookfront Date: Wed, 19 Apr 2017 17:33:44 +0800 Subject: [PATCH] vant components --- .babelrc | 9 + .editorconfig | 23 + .eslintignore | 4 + .eslintrc.js | 148 + CHANGELOG.md | 0 Makefile | 18 + README.md | 61 + build/bin/build-all.js | 25 + build/bin/build-entry.js | 75 + build/bin/init.js | 48 + build/genExamples.js | 114 + build/release.sh | 35 + build/strip-tags.js | 34 + build/utils/postcss_pipe.js | 28 + build/webpack.build.js | 43 + build/webpack.build.min.js | 18 + build/webpack.components.js | 19 + build/webpack.config.js | 195 + components.json | 39 + docs/assets/docs.css | 210 + docs/examples-dist/actionsheet.vue | 81 + docs/examples-dist/badge.vue | 50 + docs/examples-dist/button.vue | 89 + docs/examples-dist/card.vue | 23 + docs/examples-dist/cell.vue | 47 + docs/examples-dist/checkbox.vue | 80 + docs/examples-dist/datetime-picker.vue | 34 + docs/examples-dist/dialog.vue | 60 + docs/examples-dist/field.vue | 52 + docs/examples-dist/icon.vue | 156 + docs/examples-dist/image-preview.vue | 34 + docs/examples-dist/layout.vue | 71 + docs/examples-dist/lazyload.vue | 78 + docs/examples-dist/loading.vue | 36 + docs/examples-dist/panel.vue | 65 + docs/examples-dist/picker.vue | 49 + docs/examples-dist/popup.vue | 112 + docs/examples-dist/progress.vue | 46 + docs/examples-dist/quantity.vue | 36 + docs/examples-dist/radio.vue | 63 + docs/examples-dist/search.vue | 28 + docs/examples-dist/steps.vue | 50 + docs/examples-dist/swipe.vue | 55 + docs/examples-dist/switch.vue | 79 + docs/examples-dist/tab.vue | 123 + docs/examples-dist/tag.vue | 40 + docs/examples-dist/toast.vue | 86 + docs/examples-dist/uploader.vue | 23 + docs/examples-dist/waterfall.vue | 58 + docs/examples-docs/actionsheet.md | 226 + docs/examples-docs/badge.md | 113 + docs/examples-docs/button.md | 174 + docs/examples-docs/card.md | 88 + docs/examples-docs/cell.md | 130 + docs/examples-docs/checkbox.md | 230 + docs/examples-docs/datetime-picker.md | 159 + docs/examples-docs/dialog.md | 145 + docs/examples-docs/field.md | 147 + docs/examples-docs/icon.md | 200 + docs/examples-docs/image-preview.md | 74 + docs/examples-docs/install.md | 7 + docs/examples-docs/layout.md | 134 + docs/examples-docs/lazyload.md | 169 + docs/examples-docs/loading.md | 89 + docs/examples-docs/panel.md | 130 + docs/examples-docs/picker.md | 186 + docs/examples-docs/popup.md | 204 + docs/examples-docs/progress.md | 112 + docs/examples-docs/quantity.md | 99 + docs/examples-docs/quickstart.md | 23 + docs/examples-docs/radio.md | 176 + docs/examples-docs/search.md | 109 + docs/examples-docs/steps.md | 130 + docs/examples-docs/swipe.md | 143 + docs/examples-docs/switch.md | 192 + docs/examples-docs/tab.md | 253 + docs/examples-docs/tag.md | 99 + docs/examples-docs/toast.md | 229 + docs/examples-docs/uploader.md | 76 + docs/examples-docs/waterfall.md | 113 + docs/src/ExamplesApp.vue | 104 + docs/src/ExamplesDocsApp.vue | 40 + docs/src/components/demo-block.vue | 66 + docs/src/components/demo-list.vue | 64 + docs/src/components/example-block.vue | 14 + docs/src/components/footer-nav.vue | 130 + docs/src/components/mobile-computed.js | 23 + docs/src/components/mobile-nav.vue | 119 + docs/src/components/mobile-popup.vue | 51 + docs/src/components/page-footer.vue | 59 + docs/src/components/page-header.vue | 146 + docs/src/components/side-nav.vue | 123 + docs/src/examples.js | 52 + docs/src/index.js | 59 + docs/src/index.tpl | 15 + docs/src/nav.config.js | 159 + docs/src/router.config.js | 39 + lerna.json | 4 + package.json | 134 + packages/actionsheet/CHANGELOG.md | 8 + packages/actionsheet/README.md | 26 + packages/actionsheet/index.js | 3 + packages/actionsheet/package.json | 10 + packages/actionsheet/src/actionsheet.vue | 99 + packages/badge-group/index.js | 3 + packages/badge/CHANGELOG.md | 8 + packages/badge/README.md | 26 + packages/badge/index.js | 3 + packages/badge/package.json | 10 + packages/badge/src/badge-group.vue | 25 + packages/badge/src/badge.vue | 50 + packages/button/CHANGELOG.md | 8 + packages/button/README.md | 26 + packages/button/index.js | 3 + packages/button/package.json | 10 + packages/button/src/button.js | 93 + packages/card/CHANGELOG.md | 8 + packages/card/README.md | 26 + packages/card/index.js | 3 + packages/card/package.json | 10 + packages/card/src/card.vue | 31 + packages/cell-group/index.js | 3 + packages/cell/CHANGELOG.md | 8 + packages/cell/README.md | 26 + packages/cell/index.js | 3 + packages/cell/package.json | 10 + packages/cell/src/cell-group.vue | 11 + packages/cell/src/cell.vue | 51 + packages/checkbox-group/index.js | 3 + packages/checkbox/CHANGELOG.md | 8 + packages/checkbox/README.md | 26 + packages/checkbox/index.js | 3 + packages/checkbox/package.json | 10 + packages/checkbox/src/checkbox-group.vue | 22 + packages/checkbox/src/checkbox.vue | 104 + packages/col/CHANGELOG.md | 8 + packages/col/README.md | 26 + packages/col/index.js | 3 + packages/col/package.json | 10 + packages/col/src/col.vue | 38 + packages/datetime-picker/CHANGELOG.md | 8 + packages/datetime-picker/README.md | 26 + packages/datetime-picker/index.js | 3 + packages/datetime-picker/package.json | 10 + .../datetime-picker/src/datetime-picker.vue | 291 + packages/dialog/CHANGELOG.md | 8 + packages/dialog/README.md | 26 + packages/dialog/index.js | 3 + packages/dialog/package.json | 10 + packages/dialog/src/dialog.js | 102 + packages/dialog/src/dialog.vue | 83 + packages/field/CHANGELOG.md | 8 + packages/field/README.md | 26 + packages/field/index.js | 3 + packages/field/package.json | 10 + packages/field/src/field.vue | 113 + packages/icon/CHANGELOG.md | 8 + packages/icon/README.md | 26 + packages/icon/index.js | 3 + packages/icon/package.json | 9 + packages/icon/src/icon.vue | 22 + packages/image-preview/CHANGELOG.md | 8 + packages/image-preview/README.md | 26 + packages/image-preview/index.js | 3 + packages/image-preview/package.json | 10 + packages/image-preview/src/image-preview.js | 30 + packages/image-preview/src/image-preview.vue | 91 + packages/lazyload/CHANGELOG.md | 8 + packages/lazyload/README.md | 26 + packages/lazyload/index.js | 3 + packages/lazyload/package.json | 10 + packages/loading/CHANGELOG.md | 8 + packages/loading/README.md | 26 + packages/loading/index.js | 3 + packages/loading/package.json | 10 + packages/loading/src/loading.vue | 30 + packages/panel/CHANGELOG.md | 8 + packages/panel/README.md | 26 + packages/panel/index.js | 3 + packages/panel/package.json | 10 + packages/panel/src/panel.vue | 28 + packages/picker/CHANGELOG.md | 8 + packages/picker/README.md | 26 + packages/picker/index.js | 3 + packages/picker/package.json | 10 + packages/picker/src/draggable.js | 51 + packages/picker/src/picker-column.vue | 239 + packages/picker/src/picker.vue | 159 + packages/popup/CHANGELOG.md | 8 + packages/popup/README.md | 26 + packages/popup/index.js | 3 + packages/popup/package.json | 10 + packages/popup/src/popup.vue | 71 + packages/progress/README.md | 26 + packages/progress/index.js | 3 + packages/progress/package.json | 10 + packages/progress/src/progress.vue | 83 + packages/quantity/CHANGELOG.md | 8 + packages/quantity/README.md | 26 + packages/quantity/index.js | 3 + packages/quantity/package.json | 10 + packages/quantity/src/quantity.vue | 115 + packages/radio-group/index.js | 3 + packages/radio/CHANGELOG.md | 8 + packages/radio/README.md | 26 + packages/radio/index.js | 3 + packages/radio/package.json | 10 + packages/radio/src/radio-group.vue | 22 + packages/radio/src/radio.vue | 80 + packages/row/CHANGELOG.md | 8 + packages/row/README.md | 26 + packages/row/index.js | 3 + packages/row/package.json | 10 + packages/row/src/row.vue | 29 + packages/search/CHANGELOG.md | 8 + packages/search/README.md | 26 + packages/search/index.js | 3 + packages/search/package.json | 10 + packages/search/src/search.vue | 91 + packages/step/index.js | 3 + packages/steps/CHANGELOG.md | 8 + packages/steps/README.md | 26 + packages/steps/index.js | 3 + packages/steps/package.json | 10 + packages/steps/src/step.vue | 39 + packages/steps/src/steps.vue | 53 + packages/swipe-item/index.js | 3 + packages/swipe/CHANGELOG.md | 8 + packages/swipe/README.md | 26 + packages/swipe/index.js | 3 + packages/swipe/package.json | 10 + packages/swipe/src/input.js | 115 + packages/swipe/src/scroll.js | 148 + packages/swipe/src/spring_dummy.js | 145 + packages/swipe/src/swipe-item.vue | 15 + packages/swipe/src/swipe.vue | 77 + packages/swipe/src/utils.js | 70 + packages/switch/README.md | 26 + packages/switch/index.js | 3 + packages/switch/package.json | 10 + packages/switch/src/switch.vue | 73 + packages/tab/CHANGELOG.md | 8 + packages/tab/README.md | 26 + packages/tab/index.js | 2 + packages/tab/package.json | 10 + packages/tab/src/tab.vue | 27 + packages/tab/src/tabs.vue | 100 + packages/tabs/index.js | 3 + packages/tag/CHANGELOG.md | 8 + packages/tag/README.md | 26 + packages/tag/index.js | 3 + packages/tag/package.json | 10 + packages/tag/src/main.vue | 16 + packages/toast/README.md | 26 + packages/toast/index.js | 3 + packages/toast/package.json | 10 + packages/toast/src/toast.js | 75 + packages/toast/src/toast.vue | 77 + packages/uploader/index.js | 3 + packages/uploader/src/main.vue | 59 + packages/vant-css/README.md | 1 + packages/vant-css/assets/icons.sketch | Bin 0 -> 174324 bytes packages/vant-css/gulpfile.js | 13 + packages/vant-css/package.json | 23 + packages/vant-css/salad.config.json | 16 + packages/vant-css/scripts/build.sh | 83 + packages/vant-css/scripts/extract-icons.sh | 6 + packages/vant-css/scripts/fount-config.js | 164 + packages/vant-css/scripts/generate-font.sh | 5 + packages/vant-css/src/actionsheet.css | 82 + packages/vant-css/src/badge.css | 77 + packages/vant-css/src/button.css | 122 + packages/vant-css/src/card.css | 93 + packages/vant-css/src/cell.css | 88 + packages/vant-css/src/checkbox.css | 49 + packages/vant-css/src/col.css | 52 + packages/vant-css/src/common/var.css | 40 + packages/vant-css/src/dialog.css | 101 + packages/vant-css/src/field.css | 89 + packages/vant-css/src/icon.css | 78 + packages/vant-css/src/image_preview.css | 36 + packages/vant-css/src/index.css | 30 + packages/vant-css/src/loading.css | 68 + .../vant-css/src/mixins/border_retina.css | 20 + packages/vant-css/src/mixins/clearfix.css | 7 + packages/vant-css/src/mixins/ellipsis.css | 7 + packages/vant-css/src/panel.css | 36 + packages/vant-css/src/picker.css | 143 + packages/vant-css/src/popup.css | 78 + packages/vant-css/src/progress.css | 33 + packages/vant-css/src/quantity.css | 79 + packages/vant-css/src/radio.css | 48 + packages/vant-css/src/row.css | 8 + packages/vant-css/src/search.css | 61 + packages/vant-css/src/steps.css | 159 + packages/vant-css/src/swipe.css | 56 + packages/vant-css/src/switch.css | 59 + packages/vant-css/src/tab.css | 122 + packages/vant-css/src/tag.css | 69 + packages/vant-css/src/toast.css | 56 + packages/vant-css/src/uploader.css | 23 + packages/waterfall/CHANGELOG.md | 8 + packages/waterfall/README.md | 26 + packages/waterfall/index.js | 3 + packages/waterfall/package.json | 10 + packages/waterfall/src/directive.js | 116 + packages/waterfall/src/main.js | 14 + src/index.js | 121 + src/mixins/findParent.js | 22 + src/mixins/popup/index.js | 146 + src/mixins/popup/popup-context.js | 35 + src/mixins/popup/popup-manager.js | 128 + src/utils/dom.js | 57 + src/utils/merge.js | 15 + src/utils/scroll.js | 75 + src/utils/transition.js | 100 + test/unit/components/badge.vue | 22 + test/unit/components/checkbox.vue | 29 + test/unit/components/radio.vue | 24 + test/unit/components/steps.vue | 26 + test/unit/components/tabs.vue | 21 + test/unit/components/waterfall.vue | 49 + test/unit/get-webpack-conf.js | 136 + test/unit/index.js | 11 + test/unit/karma.conf.js | 31 + test/unit/specs/actionsheet.spec.js | 118 + test/unit/specs/badge.spec.js | 29 + test/unit/specs/button.spec.js | 135 + test/unit/specs/card.spec.js | 19 + test/unit/specs/cell.spec.js | 52 + test/unit/specs/checkbox.spec.js | 131 + test/unit/specs/field.spec.js | 118 + test/unit/specs/icon.spec.js | 35 + test/unit/specs/loading.spec.js | 67 + test/unit/specs/popup.spec.js | 49 + test/unit/specs/progress.spec.js | 82 + test/unit/specs/quantity.spec.js | 116 + test/unit/specs/radio.spec.js | 139 + test/unit/specs/search.spec.js | 95 + test/unit/specs/steps.spec.js | 28 + test/unit/specs/switch.spec.js | 130 + test/unit/specs/tabs.spec.js | 41 + test/unit/specs/toast.spec.js | 36 + test/unit/specs/uploader.spec.js | 117 + test/unit/specs/waterfall.spec.js | 72 + yarn.lock | 7129 +++++++++++++++++ 346 files changed, 25710 insertions(+) create mode 100644 .babelrc create mode 100644 .editorconfig create mode 100644 .eslintignore create mode 100644 .eslintrc.js create mode 100644 CHANGELOG.md create mode 100644 Makefile create mode 100644 README.md create mode 100644 build/bin/build-all.js create mode 100644 build/bin/build-entry.js create mode 100644 build/bin/init.js create mode 100644 build/genExamples.js create mode 100644 build/release.sh create mode 100644 build/strip-tags.js create mode 100644 build/utils/postcss_pipe.js create mode 100644 build/webpack.build.js create mode 100644 build/webpack.build.min.js create mode 100644 build/webpack.components.js create mode 100644 build/webpack.config.js create mode 100644 components.json create mode 100644 docs/assets/docs.css create mode 100644 docs/examples-dist/actionsheet.vue create mode 100644 docs/examples-dist/badge.vue create mode 100644 docs/examples-dist/button.vue create mode 100644 docs/examples-dist/card.vue create mode 100644 docs/examples-dist/cell.vue create mode 100644 docs/examples-dist/checkbox.vue create mode 100644 docs/examples-dist/datetime-picker.vue create mode 100644 docs/examples-dist/dialog.vue create mode 100644 docs/examples-dist/field.vue create mode 100644 docs/examples-dist/icon.vue create mode 100644 docs/examples-dist/image-preview.vue create mode 100644 docs/examples-dist/layout.vue create mode 100644 docs/examples-dist/lazyload.vue create mode 100644 docs/examples-dist/loading.vue create mode 100644 docs/examples-dist/panel.vue create mode 100644 docs/examples-dist/picker.vue create mode 100644 docs/examples-dist/popup.vue create mode 100644 docs/examples-dist/progress.vue create mode 100644 docs/examples-dist/quantity.vue create mode 100644 docs/examples-dist/radio.vue create mode 100644 docs/examples-dist/search.vue create mode 100644 docs/examples-dist/steps.vue create mode 100644 docs/examples-dist/swipe.vue create mode 100644 docs/examples-dist/switch.vue create mode 100644 docs/examples-dist/tab.vue create mode 100644 docs/examples-dist/tag.vue create mode 100644 docs/examples-dist/toast.vue create mode 100644 docs/examples-dist/uploader.vue create mode 100644 docs/examples-dist/waterfall.vue create mode 100644 docs/examples-docs/actionsheet.md create mode 100644 docs/examples-docs/badge.md create mode 100644 docs/examples-docs/button.md create mode 100644 docs/examples-docs/card.md create mode 100644 docs/examples-docs/cell.md create mode 100644 docs/examples-docs/checkbox.md create mode 100644 docs/examples-docs/datetime-picker.md create mode 100644 docs/examples-docs/dialog.md create mode 100644 docs/examples-docs/field.md create mode 100644 docs/examples-docs/icon.md create mode 100644 docs/examples-docs/image-preview.md create mode 100644 docs/examples-docs/install.md create mode 100644 docs/examples-docs/layout.md create mode 100644 docs/examples-docs/lazyload.md create mode 100644 docs/examples-docs/loading.md create mode 100644 docs/examples-docs/panel.md create mode 100644 docs/examples-docs/picker.md create mode 100644 docs/examples-docs/popup.md create mode 100644 docs/examples-docs/progress.md create mode 100644 docs/examples-docs/quantity.md create mode 100644 docs/examples-docs/quickstart.md create mode 100644 docs/examples-docs/radio.md create mode 100644 docs/examples-docs/search.md create mode 100644 docs/examples-docs/steps.md create mode 100644 docs/examples-docs/swipe.md create mode 100644 docs/examples-docs/switch.md create mode 100644 docs/examples-docs/tab.md create mode 100644 docs/examples-docs/tag.md create mode 100644 docs/examples-docs/toast.md create mode 100644 docs/examples-docs/uploader.md create mode 100644 docs/examples-docs/waterfall.md create mode 100644 docs/src/ExamplesApp.vue create mode 100644 docs/src/ExamplesDocsApp.vue create mode 100644 docs/src/components/demo-block.vue create mode 100644 docs/src/components/demo-list.vue create mode 100644 docs/src/components/example-block.vue create mode 100644 docs/src/components/footer-nav.vue create mode 100644 docs/src/components/mobile-computed.js create mode 100644 docs/src/components/mobile-nav.vue create mode 100644 docs/src/components/mobile-popup.vue create mode 100644 docs/src/components/page-footer.vue create mode 100644 docs/src/components/page-header.vue create mode 100644 docs/src/components/side-nav.vue create mode 100644 docs/src/examples.js create mode 100644 docs/src/index.js create mode 100644 docs/src/index.tpl create mode 100644 docs/src/nav.config.js create mode 100644 docs/src/router.config.js create mode 100644 lerna.json create mode 100644 package.json create mode 100644 packages/actionsheet/CHANGELOG.md create mode 100644 packages/actionsheet/README.md create mode 100644 packages/actionsheet/index.js create mode 100644 packages/actionsheet/package.json create mode 100644 packages/actionsheet/src/actionsheet.vue create mode 100644 packages/badge-group/index.js create mode 100644 packages/badge/CHANGELOG.md create mode 100644 packages/badge/README.md create mode 100644 packages/badge/index.js create mode 100644 packages/badge/package.json create mode 100644 packages/badge/src/badge-group.vue create mode 100644 packages/badge/src/badge.vue create mode 100644 packages/button/CHANGELOG.md create mode 100644 packages/button/README.md create mode 100644 packages/button/index.js create mode 100644 packages/button/package.json create mode 100644 packages/button/src/button.js create mode 100644 packages/card/CHANGELOG.md create mode 100644 packages/card/README.md create mode 100644 packages/card/index.js create mode 100644 packages/card/package.json create mode 100644 packages/card/src/card.vue create mode 100644 packages/cell-group/index.js create mode 100644 packages/cell/CHANGELOG.md create mode 100644 packages/cell/README.md create mode 100644 packages/cell/index.js create mode 100644 packages/cell/package.json create mode 100644 packages/cell/src/cell-group.vue create mode 100644 packages/cell/src/cell.vue create mode 100644 packages/checkbox-group/index.js create mode 100644 packages/checkbox/CHANGELOG.md create mode 100644 packages/checkbox/README.md create mode 100644 packages/checkbox/index.js create mode 100644 packages/checkbox/package.json create mode 100644 packages/checkbox/src/checkbox-group.vue create mode 100644 packages/checkbox/src/checkbox.vue create mode 100644 packages/col/CHANGELOG.md create mode 100644 packages/col/README.md create mode 100644 packages/col/index.js create mode 100644 packages/col/package.json create mode 100644 packages/col/src/col.vue create mode 100644 packages/datetime-picker/CHANGELOG.md create mode 100644 packages/datetime-picker/README.md create mode 100644 packages/datetime-picker/index.js create mode 100644 packages/datetime-picker/package.json create mode 100644 packages/datetime-picker/src/datetime-picker.vue create mode 100644 packages/dialog/CHANGELOG.md create mode 100644 packages/dialog/README.md create mode 100644 packages/dialog/index.js create mode 100644 packages/dialog/package.json create mode 100644 packages/dialog/src/dialog.js create mode 100644 packages/dialog/src/dialog.vue create mode 100644 packages/field/CHANGELOG.md create mode 100644 packages/field/README.md create mode 100644 packages/field/index.js create mode 100644 packages/field/package.json create mode 100644 packages/field/src/field.vue create mode 100644 packages/icon/CHANGELOG.md create mode 100644 packages/icon/README.md create mode 100644 packages/icon/index.js create mode 100644 packages/icon/package.json create mode 100644 packages/icon/src/icon.vue create mode 100644 packages/image-preview/CHANGELOG.md create mode 100644 packages/image-preview/README.md create mode 100644 packages/image-preview/index.js create mode 100644 packages/image-preview/package.json create mode 100644 packages/image-preview/src/image-preview.js create mode 100644 packages/image-preview/src/image-preview.vue create mode 100644 packages/lazyload/CHANGELOG.md create mode 100644 packages/lazyload/README.md create mode 100644 packages/lazyload/index.js create mode 100644 packages/lazyload/package.json create mode 100644 packages/loading/CHANGELOG.md create mode 100644 packages/loading/README.md create mode 100644 packages/loading/index.js create mode 100644 packages/loading/package.json create mode 100644 packages/loading/src/loading.vue create mode 100644 packages/panel/CHANGELOG.md create mode 100644 packages/panel/README.md create mode 100644 packages/panel/index.js create mode 100644 packages/panel/package.json create mode 100644 packages/panel/src/panel.vue create mode 100644 packages/picker/CHANGELOG.md create mode 100644 packages/picker/README.md create mode 100644 packages/picker/index.js create mode 100644 packages/picker/package.json create mode 100644 packages/picker/src/draggable.js create mode 100644 packages/picker/src/picker-column.vue create mode 100644 packages/picker/src/picker.vue create mode 100644 packages/popup/CHANGELOG.md create mode 100644 packages/popup/README.md create mode 100644 packages/popup/index.js create mode 100644 packages/popup/package.json create mode 100644 packages/popup/src/popup.vue create mode 100644 packages/progress/README.md create mode 100644 packages/progress/index.js create mode 100644 packages/progress/package.json create mode 100644 packages/progress/src/progress.vue create mode 100644 packages/quantity/CHANGELOG.md create mode 100644 packages/quantity/README.md create mode 100644 packages/quantity/index.js create mode 100644 packages/quantity/package.json create mode 100644 packages/quantity/src/quantity.vue create mode 100644 packages/radio-group/index.js create mode 100644 packages/radio/CHANGELOG.md create mode 100644 packages/radio/README.md create mode 100644 packages/radio/index.js create mode 100644 packages/radio/package.json create mode 100644 packages/radio/src/radio-group.vue create mode 100644 packages/radio/src/radio.vue create mode 100644 packages/row/CHANGELOG.md create mode 100644 packages/row/README.md create mode 100644 packages/row/index.js create mode 100644 packages/row/package.json create mode 100644 packages/row/src/row.vue create mode 100644 packages/search/CHANGELOG.md create mode 100644 packages/search/README.md create mode 100644 packages/search/index.js create mode 100644 packages/search/package.json create mode 100644 packages/search/src/search.vue create mode 100644 packages/step/index.js create mode 100644 packages/steps/CHANGELOG.md create mode 100644 packages/steps/README.md create mode 100644 packages/steps/index.js create mode 100644 packages/steps/package.json create mode 100644 packages/steps/src/step.vue create mode 100644 packages/steps/src/steps.vue create mode 100644 packages/swipe-item/index.js create mode 100644 packages/swipe/CHANGELOG.md create mode 100644 packages/swipe/README.md create mode 100644 packages/swipe/index.js create mode 100644 packages/swipe/package.json create mode 100755 packages/swipe/src/input.js create mode 100755 packages/swipe/src/scroll.js create mode 100755 packages/swipe/src/spring_dummy.js create mode 100644 packages/swipe/src/swipe-item.vue create mode 100644 packages/swipe/src/swipe.vue create mode 100755 packages/swipe/src/utils.js create mode 100644 packages/switch/README.md create mode 100644 packages/switch/index.js create mode 100644 packages/switch/package.json create mode 100644 packages/switch/src/switch.vue create mode 100644 packages/tab/CHANGELOG.md create mode 100644 packages/tab/README.md create mode 100644 packages/tab/index.js create mode 100644 packages/tab/package.json create mode 100644 packages/tab/src/tab.vue create mode 100644 packages/tab/src/tabs.vue create mode 100644 packages/tabs/index.js create mode 100644 packages/tag/CHANGELOG.md create mode 100644 packages/tag/README.md create mode 100644 packages/tag/index.js create mode 100644 packages/tag/package.json create mode 100644 packages/tag/src/main.vue create mode 100644 packages/toast/README.md create mode 100644 packages/toast/index.js create mode 100644 packages/toast/package.json create mode 100644 packages/toast/src/toast.js create mode 100644 packages/toast/src/toast.vue create mode 100644 packages/uploader/index.js create mode 100644 packages/uploader/src/main.vue create mode 100644 packages/vant-css/README.md create mode 100644 packages/vant-css/assets/icons.sketch create mode 100644 packages/vant-css/gulpfile.js create mode 100644 packages/vant-css/package.json create mode 100644 packages/vant-css/salad.config.json create mode 100644 packages/vant-css/scripts/build.sh create mode 100755 packages/vant-css/scripts/extract-icons.sh create mode 100644 packages/vant-css/scripts/fount-config.js create mode 100755 packages/vant-css/scripts/generate-font.sh create mode 100644 packages/vant-css/src/actionsheet.css create mode 100644 packages/vant-css/src/badge.css create mode 100644 packages/vant-css/src/button.css create mode 100644 packages/vant-css/src/card.css create mode 100644 packages/vant-css/src/cell.css create mode 100644 packages/vant-css/src/checkbox.css create mode 100644 packages/vant-css/src/col.css create mode 100644 packages/vant-css/src/common/var.css create mode 100644 packages/vant-css/src/dialog.css create mode 100644 packages/vant-css/src/field.css create mode 100644 packages/vant-css/src/icon.css create mode 100644 packages/vant-css/src/image_preview.css create mode 100644 packages/vant-css/src/index.css create mode 100644 packages/vant-css/src/loading.css create mode 100644 packages/vant-css/src/mixins/border_retina.css create mode 100644 packages/vant-css/src/mixins/clearfix.css create mode 100644 packages/vant-css/src/mixins/ellipsis.css create mode 100644 packages/vant-css/src/panel.css create mode 100644 packages/vant-css/src/picker.css create mode 100644 packages/vant-css/src/popup.css create mode 100644 packages/vant-css/src/progress.css create mode 100644 packages/vant-css/src/quantity.css create mode 100644 packages/vant-css/src/radio.css create mode 100644 packages/vant-css/src/row.css create mode 100644 packages/vant-css/src/search.css create mode 100644 packages/vant-css/src/steps.css create mode 100644 packages/vant-css/src/swipe.css create mode 100644 packages/vant-css/src/switch.css create mode 100644 packages/vant-css/src/tab.css create mode 100644 packages/vant-css/src/tag.css create mode 100644 packages/vant-css/src/toast.css create mode 100644 packages/vant-css/src/uploader.css create mode 100644 packages/waterfall/CHANGELOG.md create mode 100644 packages/waterfall/README.md create mode 100644 packages/waterfall/index.js create mode 100644 packages/waterfall/package.json create mode 100644 packages/waterfall/src/directive.js create mode 100644 packages/waterfall/src/main.js create mode 100644 src/index.js create mode 100644 src/mixins/findParent.js create mode 100644 src/mixins/popup/index.js create mode 100644 src/mixins/popup/popup-context.js create mode 100644 src/mixins/popup/popup-manager.js create mode 100644 src/utils/dom.js create mode 100644 src/utils/merge.js create mode 100644 src/utils/scroll.js create mode 100644 src/utils/transition.js create mode 100644 test/unit/components/badge.vue create mode 100644 test/unit/components/checkbox.vue create mode 100644 test/unit/components/radio.vue create mode 100644 test/unit/components/steps.vue create mode 100644 test/unit/components/tabs.vue create mode 100644 test/unit/components/waterfall.vue create mode 100644 test/unit/get-webpack-conf.js create mode 100644 test/unit/index.js create mode 100644 test/unit/karma.conf.js create mode 100644 test/unit/specs/actionsheet.spec.js create mode 100644 test/unit/specs/badge.spec.js create mode 100644 test/unit/specs/button.spec.js create mode 100644 test/unit/specs/card.spec.js create mode 100644 test/unit/specs/cell.spec.js create mode 100644 test/unit/specs/checkbox.spec.js create mode 100644 test/unit/specs/field.spec.js create mode 100644 test/unit/specs/icon.spec.js create mode 100644 test/unit/specs/loading.spec.js create mode 100644 test/unit/specs/popup.spec.js create mode 100644 test/unit/specs/progress.spec.js create mode 100644 test/unit/specs/quantity.spec.js create mode 100644 test/unit/specs/radio.spec.js create mode 100644 test/unit/specs/search.spec.js create mode 100644 test/unit/specs/steps.spec.js create mode 100644 test/unit/specs/switch.spec.js create mode 100644 test/unit/specs/tabs.spec.js create mode 100644 test/unit/specs/toast.spec.js create mode 100644 test/unit/specs/uploader.spec.js create mode 100644 test/unit/specs/waterfall.spec.js create mode 100644 yarn.lock diff --git a/.babelrc b/.babelrc new file mode 100644 index 000000000..b061392b0 --- /dev/null +++ b/.babelrc @@ -0,0 +1,9 @@ +{ + "presets": [ + "es2015" + ], + "plugins": [ + "transform-runtime", + "transform-vue-jsx" + ] +} diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 000000000..39cb692c8 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,23 @@ +root = true + +[*] +indent_style = space +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[*.md] +trim_trailing_whitespace = false + +[*.js] +indent_size = 2 + +[*.vue] +indent_size = 2 + +[*.css] +indent_size = 2 + +[Makefile] +indent_style = tab diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 000000000..6e89e4d38 --- /dev/null +++ b/.eslintignore @@ -0,0 +1,4 @@ +lib/ +dist/ +node_modules/ +build/**/*.js diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 000000000..eaf52949a --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,148 @@ +module.exports = { + parserOptions: { + ecmaVersion: 6, + ecmaFeatures: { + experimentalObjectRestSpread: true, + jsx: true + }, + sourceType: 'module' + }, + + env: { + es6: true, + node: true, + mocha: true + }, + + plugins: ['vue'], + + globals: { + expect: true, + sinon: true, + zanui: true, + document: false, + navigator: false, + window: false, + require: true, + FileReader: true, + File: true + }, + + rules: { + 'accessor-pairs': 2, + 'arrow-spacing': [2, { 'before': true, 'after': true }], + 'block-spacing': [2, 'always'], + 'brace-style': [2, '1tbs', { 'allowSingleLine': true }], + 'camelcase': [2, { 'properties': 'always' }], + 'comma-dangle': [2, 'never'], + 'comma-spacing': [2, { 'before': false, 'after': true }], + 'comma-style': [2, 'last'], + 'constructor-super': 2, + 'curly': [2, 'multi-line'], + 'dot-location': [2, 'property'], + 'eol-last': 2, + 'eqeqeq': [2, 'allow-null'], + 'generator-star-spacing': [2, { 'before': true, 'after': true }], + 'handle-callback-err': [2, '^(err|error)$' ], + 'indent': [2, 2, { 'SwitchCase': 1 }], + 'jsx-quotes': [2, 'prefer-double'], + 'key-spacing': [2, { 'beforeColon': false, 'afterColon': true }], + 'keyword-spacing': [2, { 'before': true, 'after': true }], + 'new-cap': [2, { 'newIsCap': true, 'capIsNew': false }], + 'new-parens': 2, + 'no-array-constructor': 2, + 'no-caller': 2, + 'no-class-assign': 2, + 'no-cond-assign': 2, + 'no-const-assign': 2, + 'no-control-regex': 2, + 'no-delete-var': 2, + 'no-dupe-args': 2, + 'no-dupe-class-members': 2, + 'no-dupe-keys': 2, + 'no-duplicate-case': 2, + 'no-empty-character-class': 2, + 'no-empty-pattern': 2, + 'no-eval': 2, + 'no-ex-assign': 2, + 'no-extend-native': 2, + 'no-extra-bind': 2, + 'no-extra-boolean-cast': 2, + 'no-extra-parens': [2, 'functions'], + 'no-fallthrough': 2, + 'no-floating-decimal': 2, + 'no-func-assign': 2, + 'no-implied-eval': 2, + 'no-inner-declarations': [2, 'functions'], + 'no-invalid-regexp': 2, + 'no-irregular-whitespace': 2, + 'no-iterator': 2, + 'no-label-var': 2, + 'no-labels': [2, { 'allowLoop': false, 'allowSwitch': false }], + 'no-lone-blocks': 2, + 'no-mixed-spaces-and-tabs': 2, + 'no-multi-spaces': 2, + 'no-multi-str': 2, + 'no-multiple-empty-lines': [2, { 'max': 1 }], + 'no-native-reassign': 2, + 'no-negated-in-lhs': 2, + 'no-new-object': 2, + 'no-new-require': 2, + 'no-new-symbol': 2, + 'no-new-wrappers': 2, + 'no-obj-calls': 2, + 'no-octal': 2, + 'no-octal-escape': 2, + 'no-path-concat': 2, + 'no-proto': 2, + 'no-redeclare': 2, + 'no-regex-spaces': 2, + 'no-return-assign': [2, 'except-parens'], + 'no-self-assign': 2, + 'no-self-compare': 2, + 'no-sequences': 2, + 'no-shadow-restricted-names': 2, + 'no-spaced-func': 2, + 'no-sparse-arrays': 2, + 'no-this-before-super': 2, + 'no-throw-literal': 2, + 'no-trailing-spaces': 2, + 'no-undef': 2, + 'no-undef-init': 2, + 'no-unexpected-multiline': 2, + 'no-unmodified-loop-condition': 2, + 'no-unneeded-ternary': [2, { 'defaultAssignment': false }], + 'no-unreachable': 2, + 'no-unsafe-finally': 2, + 'no-unused-vars': [2, { 'vars': 'all', 'args': 'none' }], + 'no-useless-call': 2, + 'no-useless-computed-key': 2, + 'no-useless-constructor': 2, + 'no-useless-escape': 0, + 'no-whitespace-before-property': 2, + 'no-with': 2, + 'one-var': [2, { 'initialized': 'never' }], + 'operator-linebreak': [2, 'after', { 'overrides': { '?': 'before', ':': 'before' } }], + 'padded-blocks': [2, 'never'], + 'quotes': [2, 'single', { 'avoidEscape': true, 'allowTemplateLiterals': true }], + 'semi': [2, 'always'], + 'semi-spacing': [2, { 'before': false, 'after': true }], + 'space-before-blocks': [2, 'always'], + 'space-before-function-paren': [2, 'never'], + 'space-in-parens': [2, 'never'], + 'space-infix-ops': 2, + 'space-unary-ops': [2, { 'words': true, 'nonwords': false }], + 'spaced-comment': [2, 'always', { 'markers': ['global', 'globals', 'eslint', 'eslint-disable', '*package', '!', ','] }], + 'template-curly-spacing': [2, 'never'], + 'use-isnan': 2, + 'valid-typeof': 2, + 'wrap-iife': [2, 'any'], + 'yield-star-spacing': [2, 'both'], + 'yoda': [2, 'never'], + 'prefer-const': 2, + 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0, + 'object-curly-spacing': [2, 'always', { objectsInObjects: false }], + 'array-bracket-spacing': [2, 'never'], + 'vue/jsx-uses-vars': 2 + } +} diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 000000000..e69de29bb diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..1a6b62bb1 --- /dev/null +++ b/Makefile @@ -0,0 +1,18 @@ +.PHONY: test +usage = "\ +Usage: make