├── .editorconfig ├── .github ├── CODE_OF_CONDUCT.md ├── COMMIT_CONVENTION.md ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE │ ├── BUG_REPORT.md │ └── FEATURE_REQUEST.md └── PULL_REQUEST_TEMPLATE.md ├── .gitignore ├── .travis.yml ├── LICENSE ├── README.md ├── dist └── vue-infinite-loading.js ├── docs ├── .vuepress │ ├── config.js │ ├── public │ │ └── favicon.ico │ ├── styles │ │ └── palette.styl │ └── theme │ │ ├── assets │ │ └── images │ │ │ ├── 16th-mockup.png │ │ │ ├── icon-box.png │ │ │ ├── icon-dir.png │ │ │ ├── icon-msg.png │ │ │ └── logo.png │ │ ├── components │ │ ├── Intro.vue │ │ └── Previewer.vue │ │ ├── layouts │ │ └── Layout.vue │ │ └── styles │ │ ├── button.styl │ │ └── config.styl ├── README.md ├── api │ └── README.md ├── assets │ └── schema.png ├── guide │ ├── README.md │ ├── configure-load-msg.md │ ├── configure-plugin-opts.md │ ├── start-with-hn.md │ ├── top-dir-scroll.md │ ├── use-with-el-table.md │ └── use-with-filter-or-tabs.md └── zh │ ├── README.md │ ├── api │ └── README.md │ └── guide │ ├── README.md │ ├── configure-load-msg.md │ ├── configure-plugin-opts.md │ ├── start-with-hn.md │ ├── top-dir-scroll.md │ ├── use-with-el-table.md │ └── use-with-filter-or-tabs.md ├── package.json ├── scripts ├── deploy_docs.sh ├── dev_template.js ├── karma.conf.js ├── release.sh ├── ssr_vue_loader.js └── webpack.config.js ├── src ├── components │ ├── InfiniteLoading.vue │ └── Spinner.vue ├── config.js ├── index.js ├── styles │ ├── bubbles.less │ ├── circles.less │ ├── spinner.less │ └── wave-dots.less └── utils.js ├── test └── unit │ ├── .eslintrc.yml │ ├── index.js │ ├── specs │ ├── InfiniteLoading.spec.js │ └── index.spec.js │ └── utils.js └── types └── index.d.ts /.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_size = 2 6 | indent_style = space 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | 11 | [*.md] 12 | trim_trailing_whitespace = false 13 | -------------------------------------------------------------------------------- /.github/CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | In the interest of fostering an open and welcoming environment, we as 6 | contributors and maintainers pledge to making participation in our project and 7 | our community a harassment-free experience for everyone, regardless of age, body 8 | size, disability, ethnicity, sex characteristics, gender identity and expression, 9 | level of experience, education, socio-economic status, nationality, personal 10 | appearance, race, religion, or sexual identity and orientation. 11 | 12 | ## Our Standards 13 | 14 | Examples of behavior that contributes to creating a positive environment 15 | include: 16 | 17 | * Using welcoming and inclusive language 18 | * Being respectful of differing viewpoints and experiences 19 | * Gracefully accepting constructive criticism 20 | * Focusing on what is best for the community 21 | * Showing empathy towards other community members 22 | 23 | Examples of unacceptable behavior by participants include: 24 | 25 | * The use of sexualized language or imagery and unwelcome sexual attention or 26 | advances 27 | * Trolling, insulting/derogatory comments, and personal or political attacks 28 | * Public or private harassment 29 | * Publishing others' private information, such as a physical or electronic 30 | address, without explicit permission 31 | * Other conduct which could reasonably be considered inappropriate in a 32 | professional setting 33 | 34 | ## Our Responsibilities 35 | 36 | Project maintainers are responsible for clarifying the standards of acceptable 37 | behavior and are expected to take appropriate and fair corrective action in 38 | response to any instances of unacceptable behavior. 39 | 40 | Project maintainers have the right and responsibility to remove, edit, or 41 | reject comments, commits, code, wiki edits, issues, and other contributions 42 | that are not aligned to this Code of Conduct, or to ban temporarily or 43 | permanently any contributor for other behaviors that they deem inappropriate, 44 | threatening, offensive, or harmful. 45 | 46 | ## Scope 47 | 48 | This Code of Conduct applies both within project spaces and in public spaces 49 | when an individual is representing the project or its community. Examples of 50 | representing a project or community include using an official project e-mail 51 | address, posting via an official social media account, or acting as an appointed 52 | representative at an online or offline event. Representation of a project may be 53 | further defined and clarified by project maintainers. 54 | 55 | ## Enforcement 56 | 57 | Instances of abusive, harassing, or otherwise unacceptable behavior may be 58 | reported by contacting the project team at [scdzwyxst@gmail.com](mailto:scdzwyxst@gmail.com). All 59 | complaints will be reviewed and investigated and will result in a response that 60 | is deemed necessary and appropriate to the circumstances. The project team is 61 | obligated to maintain confidentiality with regard to the reporter of an incident. 62 | Further details of specific enforcement policies may be posted separately. 63 | 64 | Project maintainers who do not follow or enforce the Code of Conduct in good 65 | faith may face temporary or permanent repercussions as determined by other 66 | members of the project's leadership. 67 | 68 | ## Attribution 69 | 70 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, 71 | available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html 72 | 73 | [homepage]: https://www.contributor-covenant.org 74 | -------------------------------------------------------------------------------- /.github/COMMIT_CONVENTION.md: -------------------------------------------------------------------------------- 1 | ## Git Commit Message Convention 2 | 3 | > This is adapted from [Angular's commit convention](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular). 4 | 5 | #### TL;DR: 6 | 7 | Messages must be matched by the following regex: 8 | 9 | ``` js 10 | /^(revert: )?(build|chore|ci|docs|feat|fix|perf|refactor|style|test)(\((core|config|spinner|deps)\))?: .{1,72}$/ 11 | ``` 12 | 13 | #### Examples 14 | 15 | Appears under "Features" header, `core` subheader: 16 | 17 | ``` 18 | feat(core): support top direction 19 | ``` 20 | 21 | Appears under "Bug Fixes" header, `spinner` subheader, with a link to issue #28: 22 | 23 | ``` 24 | fix(spinner): animation compatibility 25 | 26 | close #28 27 | ``` 28 | 29 | Appears under "Performance Improvements" header, and under "Breaking Changes" with the breaking change explanation: 30 | 31 | ``` 32 | perf(core): use @infinite event instead of on-infinite property 33 | 34 | BREAKING CHANGE: The 'on-infinite' property has been removed. 35 | ``` 36 | 37 | The following commit and commit `a88ffb7` do not appear in the changelog if they are under the same release. If not, the revert commit appears under the "Reverts" header. 38 | 39 | ``` 40 | revert: feat(core): support top direction 41 | 42 | This reverts commit a88ffb776878a07cb2f349bc3dd8cce59932b7e1. 43 | ``` 44 | 45 | ### Full Message Format 46 | 47 | A commit message consists of a **header**, **body** and **footer**. The header has a **type**, **scope** and **subject**: 48 | 49 | ``` 50 | (): 51 | 52 | 53 | 54 |