1.0.2 • Published 7 years ago

@senzil/angular-datetime-range v1.0.2

Weekly downloads
2
License
MIT
Repository
github
Last release
7 years ago

Datetime range and Time range input UI element

This directive is designed to provide easy and intuitive input of moment-range.js datetime range objects.

Typically this can be used to represent a moment range with start and an end datetime objects.
Desgined to be as simple as possible to afford intuitive interactions, including scrolling.

Converted into an angular directive for your convenience :)

This work was based over the angular-date-time directive but forked to use an moment-range.js as ng-model

Demo

Click here for a live demo.

Installation

#####1) Install '@senzil/angular-datetime-range'

npm install @senzil/angular-datetime-range
yarn add @senzil/angular-datetime-range
    
https://cdn.rawgit.com/senzil/angular-datetime-range/v1.0.0/dist/datetime-range.min.js
https://cdn.rawgit.com/senzil/angular-datetime-range/v1.0.0/dist/datetime-range.min.css

#####2) Prerequisites

You must set up these dependencies 1. angular.js 1. moment.js 1. moment-range.js 1. moment-timezone.js

######NPM or YARN if you use npm or yarn, the dependencies will download with the directive.

######In Browser In the browser you must add the scripts

<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.5/angular.min.js" charset="utf-8"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment-with-locales.min.js" charset="utf-8"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.13/moment-timezone-with-data.min.js" charset="utf-8"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-range/3.0.3/moment-range.js" charset="utf-8"></script>

#####3) Add 'senzil.datetime-range' module to your app config

angular.module('myApp', ['senzil.datetime-range'])

3) Use directives in a view

<datetime-range ng-model="myDatetimeRange"></datetime-range>

<time-range ng-model="myTimeRange"></time-range>

Attributes

PropertyUsageDefaultRequired
ng-modelDateRange (moment-range.js) object to bind from controllernoneyes
limits-rangeDateRange (moment-range.js) object with bounds limits for the componentmoment.range(null, null) - all timeno
timezoneTimezone string name (only datetime-range)moment.tz.guess()no
includeSecondsBoolean - Show seconds in directive to set themfalseno
showCloseBoolean - Show close button in directivefalseno
on-changeHandler function that is fired on change of range objectnoneno
on-change-startHandler function that is fired on change of range.start moment objectnoneno
on-change-endHandler function that is fired on change of range.end moment objectnoneno
on-closeHandler function that is fired on close of edit popovernoneno

Dependencies