{"version":3,"file":"convert-to.js","sourceRoot":"","sources":["../../../Scripts/commons/convert-to.ts"],"names":[],"mappings":"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","sourcesContent":["/// \r\n\r\nnamespace Seac.Commons {\r\n\t/** Utility di conversione dei dati */\r\n\texport class ConvertTo {\r\n\t\tpublic static shortDatePattern\t: string;\r\n\t\tpublic static longTimePattern\t: string;\r\n\r\n\t\tprivate static _monthNameList : Array = [\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_gennaio,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_febbraio,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_marzo,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_aprile,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_maggio,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_giugno,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_luglio,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_agosto,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_settembre,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_ottobre,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_novembre,\r\n\t\t\tSeac.Resources.Common.enum_mese_anno_dicembre\r\n\t\t];\r\n\r\n\t\tprivate static _monthMeseAnnoFiltroDocumentiNameList: Array = [\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_gennaio,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_febbraio,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_marzo,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_aprile,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_maggio,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_giugno,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_luglio,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_agosto,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_settembre,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_ottobre,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_novembre,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_dicembre,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_tredicesima,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_quattordicesima,\r\n\t\t\tSeac.Resources.Documento.enum_mese_anno_filtro_documenti_annuale\r\n\t\t];\r\n\r\n\t\tprivate static _dayNameList : Array = [\r\n\t\t\tSeac.Resources.Common.enum_giorno_settimana_domenica,\r\n\t\t\tSeac.Resources.Common.enum_giorno_settimana_lunedi,\r\n\t\t\tSeac.Resources.Common.enum_giorno_settimana_martedi,\r\n\t\t\tSeac.Resources.Common.enum_giorno_settimana_mercoledi,\r\n\t\t\tSeac.Resources.Common.enum_giorno_settimana_giovedi,\r\n\t\t\tSeac.Resources.Common.enum_giorno_settimana_venerdi,\r\n\t\t\tSeac.Resources.Common.enum_giorno_settimana_sabato\r\n\t\t];\r\n\r\n\t\t/**\r\n\t\t * Converte una stinga in formato ISO ISO8601 in un oggetto Date.\r\n\t\t * Il formato ISO8601 è così composto:\r\n\t\t * aaaa-mm-ggThh:mi:ss.mmm (senza spazi)\r\n\t\t */\r\n\t\tpublic static stringIsoToDate(stringDate: string): Date {\r\n\t\t\t// 0 1 2\r\n\t\t\t// 01234567890123456789012\r\n\t\t\t// aaaa-mm-ggThh:mi:ss.mmm\r\n\t\t\treturn new Date(\r\n\t\t\t\t+stringDate.substr(0, 4),\r\n\t\t\t\t(+stringDate.substr(5, 2)) - 1,\r\n\t\t\t\t+stringDate.substr(8, 2),\r\n\r\n\t\t\t\t+stringDate.substr(11, 2),\r\n\t\t\t\t+stringDate.substr(14, 2),\r\n\t\t\t\t+stringDate.substr(17, 2),\r\n\r\n\t\t\t\t(stringDate.length > 19 && !isNaN(stringDate.substr(20)) ? +stringDate.substr(20) : 0)\r\n\t\t\t);\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Converte la data in una stringa secondo il formato richiesto\r\n\t\t * @param format Formato compatibile com la libreria Moment.js\r\n\t\t */\r\n\t\tpublic static dateToString(date: Date, format: string): string {\r\n\t\t\tif (!date) {\r\n\t\t\t\treturn null;\r\n\t\t\t}\r\n\t\t\t// TODO: Inserire moment per TypeScript\r\n\t\t\treturn (window).moment(date).format(format);\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Converte una stinga in formato ISO ISO8601 in una stringa formattata secondo il formato richiesto\r\n\t\t * @param format Formato compatibile com la libreria Moment.js\r\n\t\t */\r\n\t\tpublic static stringIsoToString(stringDate: string, format: string): string {\r\n\t\t\tconst date: Date = ConvertTo.stringIsoToDate(stringDate);\r\n\t\t\treturn ConvertTo.dateToString(date, format);\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Converte una stringa proveniente dal server in un oggetto data\r\n\t\t * @param stringDate Stringa rappresentante la data da convertire\r\n\t\t */\r\n\t\tpublic static stringToDate(stringDate: string): Date {\r\n\t\t\tconst momentDate = (window).moment(stringDate, `${this.shortDatePattern.toUpperCase()} ${this.longTimePattern}`);\r\n\t\t\tif (momentDate.isValid()) {\r\n\t\t\t\treturn momentDate.toDate();\r\n\t\t\t}else {\r\n\t\t\t\treturn null;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Converte un valore numerico in una stringa formattata.\r\n\t\t * Alcuni tipi di template supportati\r\n\t\t * format( \"#,##0.####\", 1234567.890 ); // output: \"1,234,567.89\"\r\n\t\t * format( \"$ #,###.00\", -1234567.890 ); // output: \"$ -1,234,567.89\"\r\n\t\t * @param number Valore numerico da convertire\r\n\t\t * @param template Template o maschera compatibile con Number Formatter ( https://github.com/Mottie/javascript-number-formatter/ ), se null verrà autilizzato il templete \"#.#####\"\r\n\t\t * @param emptyIfZero Se true ed il valore è zero o nullo ritorna stringa vuota\r\n\t\t */\r\n\t\tpublic static numberToString(number: number, template: string, emptyIfZero: boolean = false, emptyValue = ''): string {\r\n\t\t\ttry {\r\n\t\t\t\tif (isNaN(number)) {\r\n\t\t\t\t\tnumber = 0;\r\n\t\t\t\t}\r\n\t\t\t\tif (emptyIfZero && !number) {\r\n\t\t\t\t\treturn emptyValue;\r\n\t\t\t\t}\r\n\t\t\t\treturn Seac.Commons.FormatNumber.format(template || '#.#####', number);\r\n\t\t\t}catch(ex) {\r\n\t\t\t\tconsole.error(ex);\r\n\t\t\t\treturn number;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Restituisce il mese in stringa in base al suo valore numerico (in base 0)\r\n\t\t * @param monthNumber Numero del mese (in base 0)\r\n\t\t */\r\n\t\tpublic static numberToMonthString(monthNumber: number): string {\r\n\t\t\treturn this._monthNameList[monthNumber];\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Restituisce il mese in stringa in base al suo valore numerico (in base 0), considera anche\r\n\t\t * tredicesima, quattordicesima e annuale\r\n\t\t * @param monthNumber Numero del mese (in base 0)\r\n\t\t */\r\n\t\tpublic static numberToMeseAnnoFiltroDocumentiString(monthNumber: number): string {\r\n\t\t\treturn this._monthMeseAnnoFiltroDocumentiNameList[monthNumber];\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Restituisce il giorno in stringa in base al suo valore numerico (in base 0)\r\n\t\t * @param dayNumber Numero del giorno (in base 0)\r\n\t\t */\r\n\t\tpublic static numberToDayString(dayNumber: number): string {\r\n\t\t\treturn this._dayNameList[dayNumber];\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Imposta l'orario di una data alla mezzanotte\r\n\t\t * @param date Data di input (non verrà variata)\r\n\t\t */\r\n\t\tpublic static dateToMidnight(date: Date): Date {\r\n\t\t\tconst clonedDate: Date = new Date(date.getTime());\r\n\t\t\tclonedDate.setHours(0);\r\n\t\t\tclonedDate.setMinutes(0);\r\n\t\t\tclonedDate.setSeconds(0);\r\n\t\t\tclonedDate.setMilliseconds(0);\r\n\t\t\treturn clonedDate;\r\n\t\t}\r\n\t}\r\n}\r\n"]}