{ "version": 3, "sources": ["src/utils/consts/const-methods.ts"], "sourcesContent": ["import { UserFunctionsEnum } from \"../../app/models/enums/enums\";\nimport { UserModel } from \"../../app/models/interfaces/user-model\";\n\n//method to prepare date param for our PHP API\nexport function removeMillisecondsFromDateString(dateStr: string): string {\n let dateWithoutMillis = dateStr.split('.')[0];\n let lastChar = dateStr.charAt(dateStr.length - 1);\n return dateWithoutMillis + lastChar;\n}\n\nexport function prepareUserFunctionsArray(user: UserModel): UserFunctionsEnum[] {\n let functions = user?.userFunctions || [];\n if (user?.isQuasiUser) {\n functions = [UserFunctionsEnum.QUASI];\n }\n if (user?.hasLearningMaterials) {\n functions = [...functions, UserFunctionsEnum.LEARNING_MATERIALS];\n }\n return functions;\n}\n\nexport function prepareUrlDateParameter(date: Date): string {\n const dateString = date.toLocaleString('sv-SE', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour12: false,\n }).replace(' ', 'T').replace('kl. ', '');\n\n return `${dateString}`;\n}\n\nexport function prepareDateWithHourParameter(date: Date): string {\n const dateString = date.toLocaleString('sv-SE', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n hour12: false,\n }).replace(' ', 'T').replace('kl. ', '');\n\n return `${dateString}`;\n}\n\nfunction formatDateWithTimezone(date: Date): string {\n const MINUTES_IN_HOUR = 60;\n const dateString = prepareDateWithHourParameter(date);\n // Get the timezone offset in hours and minutes\n const timezoneOffset = -date.getTimezoneOffset();\n const offsetHours = String(Math.floor(Math.abs(timezoneOffset) / MINUTES_IN_HOUR)).padStart(2, '0');\n const offsetMinutes = String(Math.abs(timezoneOffset) % MINUTES_IN_HOUR).padStart(2, '0');\n const offsetSign = timezoneOffset >= 0 ? '+' : '-';\n const formattedOffset = `${offsetSign}${offsetHours}:${offsetMinutes}`;\n\n return `${dateString}${formattedOffset}`;\n}\n\n// Main function: prepares the date parameter without changing the date\nexport function prepareDateApiParameter(date: Date): string {\n return formatDateWithTimezone(date);\n}\n\n// Main function: prepares the date parameter by setting the date to the previous day at 23:59\nexport function prepareDateToApiParameter(date: Date): string {\n const previousDay = new Date(date);\n previousDay.setDate(date.getDate() - 1);\n previousDay.setHours(23, 59, 59, 0); // Set hours to 23, minutes to 59, and seconds to 0\n return formatDateWithTimezone(previousDay);\n}\n"], "mappings": "wCAUM,SAAUA,EAA0BC,EAAe,CACrD,IAAIC,GAAYD,GAAAA,YAAAA,EAAME,gBAAiB,CAAA,EACvC,OAAIF,GAAAA,MAAAA,EAAMG,cACNF,EAAY,CAACG,EAAkBC,KAAK,GAEpCL,GAAAA,MAAAA,EAAMM,uBACNL,EAAY,CAAC,GAAGA,EAAWG,EAAkBG,kBAAkB,GAE5DN,CACX,CAEM,SAAUO,EAAwBC,EAAU,CAQ9C,MAAO,GAPYA,EAAKC,eAAe,QAAS,CAC5CC,KAAM,UACNC,MAAO,UACPC,IAAK,UACLC,OAAQ,GACX,EAAEC,QAAQ,IAAK,GAAG,EAAEA,QAAQ,OAAQ,EAAE,CAEnB,EACxB,CAEM,SAAUC,EAA6BP,EAAU,CAWnD,MAAO,GAVYA,EAAKC,eAAe,QAAS,CAC5CC,KAAM,UACNC,MAAO,UACPC,IAAK,UACLI,KAAM,UACNC,OAAQ,UACRC,OAAQ,UACRL,OAAQ,GACX,EAAEC,QAAQ,IAAK,GAAG,EAAEA,QAAQ,OAAQ,EAAE,CAEnB,EACxB,CAEA,SAASK,EAAuBX,EAAU,CAEtC,IAAMY,EAAaL,EAA6BP,CAAI,EAE9Ca,EAAiB,CAACb,EAAKc,kBAAiB,EACxCC,EAAcC,OAAOC,KAAKC,MAAMD,KAAKE,IAAIN,CAAc,EAAIO,EAAe,CAAC,EAAEC,SAAS,EAAG,GAAG,EAC5FC,EAAgBN,OAAOC,KAAKE,IAAIN,CAAc,EAAIO,EAAe,EAAEC,SAAS,EAAG,GAAG,EAElFE,EAAkB,GADLV,GAAkB,EAAI,IAAM,GACV,GAAGE,CAAW,IAAIO,CAAa,GAEpE,MAAO,GAAGV,CAAU,GAAGW,CAAe,EAC1C,CAGM,SAAUC,EAAwBxB,EAAU,CAC9C,OAAOW,EAAuBX,CAAI,CACtC,CAGM,SAAUyB,EAA0BzB,EAAU,CAChD,IAAM0B,EAAc,IAAIC,KAAK3B,CAAI,EACjC0B,OAAAA,EAAYE,QAAQ5B,EAAK6B,QAAO,EAAK,CAAC,EACtCH,EAAYI,SAAS,GAAI,GAAI,GAAI,CAAC,EAC3BnB,EAAuBe,CAAW,CAC7C", "names": ["prepareUserFunctionsArray", "user", "functions", "userFunctions", "isQuasiUser", "UserFunctionsEnum", "QUASI", "hasLearningMaterials", "LEARNING_MATERIALS", "prepareUrlDateParameter", "date", "toLocaleString", "year", "month", "day", "hour12", "replace", "prepareDateWithHourParameter", "hour", "minute", "second", "formatDateWithTimezone", "dateString", "timezoneOffset", "getTimezoneOffset", "offsetHours", "String", "Math", "floor", "abs", "MINUTES_IN_HOUR", "padStart", "offsetMinutes", "formattedOffset", "prepareDateApiParameter", "prepareDateToApiParameter", "previousDay", "Date", "setDate", "getDate", "setHours"] }