md-date-time-picker
Share the ❤️ !
❤️ the package? Then ⭐ it!
An implementation of Material Design Picker components in vanilla CSS, JS, and HTML
##Documentation
The Documentation is at https://puranjayjain.github.io/md-date-time-picker
Browser Support
Supported evergreen browsers:
- Chrome (and Chrome for Android)
- Edge
- Firefox
- Opera
Supported versioned browsers:
- Internet Explorer 8+
- Safari 8+
- Mobile Safari 8+
- Android Browser 4.3+
Dependency
Moment
Why? because parsing dates correctly is not every browser's cup of 🍵 and also according to ISO 8601 standard
Moreover, it makes dealing with timezones easier.
ok. Not satisfied with the answer?
Let's take an example:
new Date('1/10/2016')
What should it output? ... well it is interpreted as 1st October 2016 in some browsers and 10th January 2016 in some.
For more information refer link.
Draggabilly
This is an optional dependency if you want to make the dial draggable in time picker in minute which makes it useful there to select values which are not a divisor of 5 (e.g 3, 6) or in layman terms the values which come between 5, 10, 15, etc.
What's included
In the repo you'll find the following directories and files.
File/Folder | Provides |
---|---|
.github | Contains CONTRIBUTING.md, ISSUE_TEMPLATE.md and PULL_REQUEST_TEMPLATE.md |
gulpfile.js | gulp configuration. |
LICENSE.md | Project license information. |
package.json | npm package information. |
bower.json | bower package information. |
README.md | Details for quickly understanding the project. |
src | Source code. |
dist | Distributable code. |
test | Project test files. |
Build
To get started modifying the components or the docs, first install the necessary dependencies, from the root of the project:
npm install
After successfully installing the above components
./node_modules/gulp default
Most changes made to files inside the src
directory will cause the page to reload. This page can also be loaded up on physical devices thanks to BrowserSync.
Tests
$ npm run cs:scss //lint all scss files
$ npm run cs:js //lint and fix all js files
$ npm run cs //run both cs jobs
Versioning
For transparency into our release cycle and in striving to maintain backward compatibility, this project is maintained under the Semantic Versioning guidelines. Sometimes we screw up, but we'll adhere to those rules whenever possible.
License
© Puranjay Jain, 2016. Licensed under an MIT License.
Custom build
To allow only "sharp" time (e.g. 1 sharp, 2 sharp...etc) to be picked in time picker, see: https://github.com/XcrossD/md-date-time-picker/tree/time-only-sharp-code