289 lines
		
	
	
		
			8.5 KiB
		
	
	
	
		
			Haxe
		
	
	
	
	
	
		
		
			
		
	
	
			289 lines
		
	
	
		
			8.5 KiB
		
	
	
	
		
			Haxe
		
	
	
	
	
	
|  | /* | ||
|  |  * Copyright (C)2005-2019 Haxe Foundation | ||
|  |  * | ||
|  |  * Permission is hereby granted, free of charge, to any person obtaining a | ||
|  |  * copy of this software and associated documentation files (the "Software"), | ||
|  |  * to deal in the Software without restriction, including without limitation | ||
|  |  * the rights to use, copy, modify, merge, publish, distribute, sublicense, | ||
|  |  * and/or sell copies of the Software, and to permit persons to whom the | ||
|  |  * Software is furnished to do so, subject to the following conditions: | ||
|  |  * | ||
|  |  * The above copyright notice and this permission notice shall be included in | ||
|  |  * all copies or substantial portions of the Software. | ||
|  |  * | ||
|  |  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
|  |  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
|  |  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
|  |  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
|  |  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
|  |  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | ||
|  |  * DEALINGS IN THE SOFTWARE. | ||
|  |  */ | ||
|  | 
 | ||
|  | package js.lib; | ||
|  | 
 | ||
|  | import Date in HaxeDate; | ||
|  | 
 | ||
|  | /** | ||
|  | 	Creates a JavaScript Date instance that represents a single moment in time. Date objects are based on a time value that is the number of milliseconds since 1 January 1970 UTC. | ||
|  | **/ | ||
|  | @:native("Date") | ||
|  | extern class Date { | ||
|  | 	@:overload(function(value:Float):Void {}) | ||
|  | 	@:overload(function(dateString:String):Void {}) | ||
|  | 	@:overload(function(year:Int, month:Int, ?day:Int, ?hours:Int, ?minutes:Int, ?seconds:Int, ?milliseconds:Int):Void {}) | ||
|  | 	function new():Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Cast Haxe's Date to js.lib.Date.
 | ||
|  | 	**/ | ||
|  | 	static public inline function fromHaxeDate(date:HaxeDate):js.lib.Date { | ||
|  | 		return cast date; | ||
|  | 	} | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Cast js.lib.Date to Haxe's Date.
 | ||
|  | 	**/ | ||
|  | 	static public inline function toHaxeDate(date:Date):HaxeDate { | ||
|  | 		return cast date; | ||
|  | 	} | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the numeric value corresponding to the current time - the number of milliseconds elapsed since January 1, 1970 00:00:00 UTC, with leap seconds ignored | ||
|  | 	**/ | ||
|  | 	static function now():Float; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Parses a string representation of a date and returns the number of milliseconds since 1 January, 1970, 00:00:00, UTC, with leap seconds ignored. | ||
|  | 	**/ | ||
|  | 	static function parse(str:String):Float; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the number of milliseconds since January 1, 1970, 00:00:00 UTC, with leap seconds ignored. | ||
|  | 	**/ | ||
|  | 	static function UTC(year:Int, month:Int, ?day:Int, ?hours:Int, ?minutes:Int, ?seconds:Int, ?milliseconds:Int):Float; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the day of the month (1-31) for the specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function getDate():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the day of the week (0-6) for the specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function getDay():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the year (4 digits for 4-digit years) of the specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function getFullYear():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the hour (0-23) in the specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function getHours():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the milliseconds (0-999) in the specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function getMilliseconds():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the minutes (0-59) in the specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function getMinutes():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the month (0-11) in the specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function getMonth():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the seconds (0-59) in the specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function getSeconds():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the numeric value of the specified date as the number of milliseconds since January 1, 1970, 00:00:00 UTC (negative for prior times). | ||
|  | 	**/ | ||
|  | 	function getTime():Float; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the time-zone offset in minutes for the current locale. | ||
|  | 	**/ | ||
|  | 	function getTimezoneOffset():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the day (date) of the month (1-31) in the specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function getUTCDate():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the day of the week (0-6) in the specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function getUTCDay():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the year (4 digits for 4-digit years) in the specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function getUTCFullYear():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the hours (0-23) in the specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function getUTCHours():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the milliseconds (0-999) in the specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function getUTCMilliseconds():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the minutes (0-59) in the specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function getUTCMinutes():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the month (0-11) in the specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function getUTCMonth():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the seconds (0-59) in the specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function getUTCSeconds():Int; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the day of the month for a specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function setDate(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the full year (e.g. 4 digits for 4-digit years) for a specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function setFullYear(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the hours for a specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function setHours(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the milliseconds for a specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function setMilliseconds(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the minutes for a specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function setMinutes(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the month for a specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function setMonth(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the seconds for a specified date according to local time. | ||
|  | 	**/ | ||
|  | 	function setSeconds(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the Date object to the time represented by a number of milliseconds since January 1, 1970, 00:00:00 UTC, allowing for negative numbers for times prior. | ||
|  | 	**/ | ||
|  | 	function setTime(value:Float):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the day of the month for a specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function setUTCDate(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the full year (e.g. 4 digits for 4-digit years) for a specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function setUTCFullYear(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the hour for a specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function setUTCHours(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the milliseconds for a specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function setUTCMilliseconds(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the minutes for a specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function setUTCMinutes(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the month for a specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function setUTCMonth(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Sets the seconds for a specified date according to universal time. | ||
|  | 	**/ | ||
|  | 	function setUTCSeconds(value:Int):Void; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the "date" portion of the Date as a human-readable string. | ||
|  | 	**/ | ||
|  | 	function toDateString():String; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Converts a date to a string following the ISO 8601 Extended Format. | ||
|  | 	**/ | ||
|  | 	function toISOString():String; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns a string representing the Date using toISOString(). Intended for use by JSON.stringify(). | ||
|  | 	**/ | ||
|  | 	function toJSON():String; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns a string with a locality sensitive representation of the date portion of this date based on system settings. | ||
|  | 	**/ | ||
|  | 	@:overload(function(?locales:Array<String>, ?options:Dynamic<Dynamic>):String {}) | ||
|  | 	function toLocaleDateString(?locales:String, ?options:Dynamic<Dynamic>):String; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Converts a date to a string, using a format string. | ||
|  | 	**/ | ||
|  | 	function toLocaleFormat(format:String):String; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns a string with a locality sensitive representation of this date. Overrides the Object.prototype.toLocaleString() method. | ||
|  | 	**/ | ||
|  | 	@:overload(function(?locales:Array<String>, ?options:Dynamic<Dynamic>):String {}) | ||
|  | 	function toLocaleString(?locales:String, ?options:Dynamic<Dynamic>):String; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns a string with a locality sensitive representation of the time portion of this date based on system settings. | ||
|  | 	**/ | ||
|  | 	@:overload(function(?locales:Array<String>, ?options:Dynamic<Dynamic>):String {}) | ||
|  | 	function toLocaleTimeString(?locales:String, ?options:Dynamic<Dynamic>):String; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns a string representing the source for an equivalent Date object; you can use this value to create a new object. Overrides the Object.prototype.toSource() method. | ||
|  | 	**/ | ||
|  | 	function toSource():String; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns a string representing the specified Date object. Overrides the Object.prototype.toString() method. | ||
|  | 	**/ | ||
|  | 	function toString():String; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Returns the "time" portion of the Date as a human-readable string. | ||
|  | 	**/ | ||
|  | 	function toTimeString():String; | ||
|  | 
 | ||
|  | 	/** | ||
|  | 		Converts a date to a string using the UTC timezone. | ||
|  | 	**/ | ||
|  | 	function toUTCString():String; | ||
|  | } |