define(["datetime","globalize"],function(datetime,globalize){"use strict";function humane_date(date_str){for(var unit,elapsedMs=datetime.parseISO8601Date(date_str).getTime()-(new Date).getTime(),elapsedMsAbs=Math.abs(elapsedMs),i=0,length=units.length;i<length&&(unit=units[i],!(elapsedMsAbs>=unit[1]));i++);var elapsedInUnit=Math.round(elapsedMs/unit[1]);return new Intl.RelativeTimeFormat(globalize.getCurrentLocales()).format(elapsedInUnit,unit[0])}function humane_date_legacy(date_str){var format,time_formats=[[90,"a minute"],[3600,"minutes",60],[5400,"an hour"],[86400,"hours",3600],[129600,"a day"],[604800,"days",86400],[907200,"a week"],[2628e3,"weeks",604800],[3942e3,"a month"],[31536e3,"months",2628e3],[47304e3,"a year"],[31536e5,"years",31536e3]],dt=new Date,date=datetime.parseISO8601Date(date_str,!0),seconds=(dt-date)/1e3,i=0;for(seconds<0&&(seconds=Math.abs(seconds));null!=(format=time_formats[i++]);)if(seconds<format[0])return 2===format.length?format[1]+" ago":Math.round(seconds/format[2])+" "+format[1]+" ago";return seconds>47304e5?Math.round(seconds/47304e5)+" centuries ago":date_str}var fn,units=[["year",31536e6],["month",2592e6],["week",6048e5],["day",864e5],["hour",36e5],["minute",6e4],["second",1e3]];return fn=window.Intl&&window.Intl.RelativeTimeFormat?humane_date:humane_date_legacy,window.humane_date=fn,fn});