on c136ea7 help sign in
elk/core/Native/Date.js
34 lines 1.0 kB history raw
1/**
2module Native.Color where
4import Maybe
5import JavaScript
6**/
8(function() {
9'use strict';
11 function dateNow() { return new window.Date; }
12 function readDate(str) {
13 var d = new window.Date(Elm.JavaScript.castStringToJSString(str));
14 if (isNaN(d.getTime())) return Elm.Maybe.Nothing;
15 return Elm.Maybe.Just(d);
16 }
18 var dayTable = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
19 var monthTable = ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
20 "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
22 Elm.Native.Date = {
23 read : readDate,
24 year : function(d) { return d.getFullYear(); },
25 month : function(d) { return { ctor:monthTable[d.getMonth()] }; },
26 day : function(d) { return d.getDate(); },
27 hour : function(d) { return d.getHours(); },
28 minute : function(d) { return d.getMinutes(); },
29 second : function(d) { return d.getSeconds(); },
30 toTime : function(d) { return d.getTime(); }
31 dayOfWeek : function(d) { return { ctor:dayTable[d.getDay()] }; },
32 };
34}());