{"ast":null,"code":"import { isValid } from \"./isValid.mjs\";\nimport { toDate } from \"./toDate.mjs\";\nimport { addLeadingZeros } from \"./_lib/addLeadingZeros.mjs\";\n\n/**\n * The {@link formatRFC3339} function options.\n */\n\n/**\n * @name formatRFC3339\n * @category Common Helpers\n * @summary Format the date according to the RFC 3339 standard (https://tools.ietf.org/html/rfc3339#section-5.6).\n *\n * @description\n * Return the formatted date string in RFC 3339 format. Options may be passed to control the parts and notations of the date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n * @param options - An object with options.\n *\n * @returns The formatted date string\n *\n * @throws `date` must not be Invalid Date\n *\n * @example\n * // Represent 18 September 2019 in RFC 3339 format:\n * formatRFC3339(new Date(2019, 8, 18, 19, 0, 52))\n * //=> '2019-09-18T19:00:52Z'\n *\n * @example\n * // Represent 18 September 2019 in RFC 3339 format, 3 digits of second fraction\n * formatRFC3339(new Date(2019, 8, 18, 19, 0, 52, 234), {\n *   fractionDigits: 3\n * })\n * //=> '2019-09-18T19:00:52.234Z'\n */\nexport function formatRFC3339(date, options) {\n  const _date = toDate(date);\n  if (!isValid(_date)) {\n    throw new RangeError(\"Invalid time value\");\n  }\n  const fractionDigits = options?.fractionDigits ?? 0;\n  const day = addLeadingZeros(_date.getDate(), 2);\n  const month = addLeadingZeros(_date.getMonth() + 1, 2);\n  const year = _date.getFullYear();\n  const hour = addLeadingZeros(_date.getHours(), 2);\n  const minute = addLeadingZeros(_date.getMinutes(), 2);\n  const second = addLeadingZeros(_date.getSeconds(), 2);\n  let fractionalSecond = \"\";\n  if (fractionDigits > 0) {\n    const milliseconds = _date.getMilliseconds();\n    const fractionalSeconds = Math.trunc(milliseconds * Math.pow(10, fractionDigits - 3));\n    fractionalSecond = \".\" + addLeadingZeros(fractionalSeconds, fractionDigits);\n  }\n  let offset = \"\";\n  const tzOffset = _date.getTimezoneOffset();\n  if (tzOffset !== 0) {\n    const absoluteOffset = Math.abs(tzOffset);\n    const hourOffset = addLeadingZeros(Math.trunc(absoluteOffset / 60), 2);\n    const minuteOffset = addLeadingZeros(absoluteOffset % 60, 2);\n    // If less than 0, the sign is +, because it is ahead of time.\n    const sign = tzOffset < 0 ? \"+\" : \"-\";\n    offset = `${sign}${hourOffset}:${minuteOffset}`;\n  } else {\n    offset = \"Z\";\n  }\n  return `${year}-${month}-${day}T${hour}:${minute}:${second}${fractionalSecond}${offset}`;\n}\n\n// Fallback for modularized imports:\nexport default formatRFC3339;","map":{"version":3,"names":["isValid","toDate","addLeadingZeros","formatRFC3339","date","options","_date","RangeError","fractionDigits","day","getDate","month","getMonth","year","getFullYear","hour","getHours","minute","getMinutes","second","getSeconds","fractionalSecond","milliseconds","getMilliseconds","fractionalSeconds","Math","trunc","pow","offset","tzOffset","getTimezoneOffset","absoluteOffset","abs","hourOffset","minuteOffset","sign"],"sources":["/root/rfcontavagas_hom/12.-Servidor-local-Docker/Front-Parking-Angular/node_modules/date-fns/formatRFC3339.mjs"],"sourcesContent":["import { isValid } from \"./isValid.mjs\";\nimport { toDate } from \"./toDate.mjs\";\nimport { addLeadingZeros } from \"./_lib/addLeadingZeros.mjs\";\n\n/**\n * The {@link formatRFC3339} function options.\n */\n\n/**\n * @name formatRFC3339\n * @category Common Helpers\n * @summary Format the date according to the RFC 3339 standard (https://tools.ietf.org/html/rfc3339#section-5.6).\n *\n * @description\n * Return the formatted date string in RFC 3339 format. Options may be passed to control the parts and notations of the date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n * @param options - An object with options.\n *\n * @returns The formatted date string\n *\n * @throws `date` must not be Invalid Date\n *\n * @example\n * // Represent 18 September 2019 in RFC 3339 format:\n * formatRFC3339(new Date(2019, 8, 18, 19, 0, 52))\n * //=> '2019-09-18T19:00:52Z'\n *\n * @example\n * // Represent 18 September 2019 in RFC 3339 format, 3 digits of second fraction\n * formatRFC3339(new Date(2019, 8, 18, 19, 0, 52, 234), {\n *   fractionDigits: 3\n * })\n * //=> '2019-09-18T19:00:52.234Z'\n */\nexport function formatRFC3339(date, options) {\n  const _date = toDate(date);\n\n  if (!isValid(_date)) {\n    throw new RangeError(\"Invalid time value\");\n  }\n\n  const fractionDigits = options?.fractionDigits ?? 0;\n\n  const day = addLeadingZeros(_date.getDate(), 2);\n  const month = addLeadingZeros(_date.getMonth() + 1, 2);\n  const year = _date.getFullYear();\n\n  const hour = addLeadingZeros(_date.getHours(), 2);\n  const minute = addLeadingZeros(_date.getMinutes(), 2);\n  const second = addLeadingZeros(_date.getSeconds(), 2);\n\n  let fractionalSecond = \"\";\n  if (fractionDigits > 0) {\n    const milliseconds = _date.getMilliseconds();\n    const fractionalSeconds = Math.trunc(\n      milliseconds * Math.pow(10, fractionDigits - 3),\n    );\n    fractionalSecond = \".\" + addLeadingZeros(fractionalSeconds, fractionDigits);\n  }\n\n  let offset = \"\";\n  const tzOffset = _date.getTimezoneOffset();\n\n  if (tzOffset !== 0) {\n    const absoluteOffset = Math.abs(tzOffset);\n    const hourOffset = addLeadingZeros(Math.trunc(absoluteOffset / 60), 2);\n    const minuteOffset = addLeadingZeros(absoluteOffset % 60, 2);\n    // If less than 0, the sign is +, because it is ahead of time.\n    const sign = tzOffset < 0 ? \"+\" : \"-\";\n\n    offset = `${sign}${hourOffset}:${minuteOffset}`;\n  } else {\n    offset = \"Z\";\n  }\n\n  return `${year}-${month}-${day}T${hour}:${minute}:${second}${fractionalSecond}${offset}`;\n}\n\n// Fallback for modularized imports:\nexport default formatRFC3339;\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,eAAe;AACvC,SAASC,MAAM,QAAQ,cAAc;AACrC,SAASC,eAAe,QAAQ,4BAA4B;;AAE5D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAACC,IAAI,EAAEC,OAAO,EAAE;EAC3C,MAAMC,KAAK,GAAGL,MAAM,CAACG,IAAI,CAAC;EAE1B,IAAI,CAACJ,OAAO,CAACM,KAAK,CAAC,EAAE;IACnB,MAAM,IAAIC,UAAU,CAAC,oBAAoB,CAAC;EAC5C;EAEA,MAAMC,cAAc,GAAGH,OAAO,EAAEG,cAAc,IAAI,CAAC;EAEnD,MAAMC,GAAG,GAAGP,eAAe,CAACI,KAAK,CAACI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;EAC/C,MAAMC,KAAK,GAAGT,eAAe,CAACI,KAAK,CAACM,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;EACtD,MAAMC,IAAI,GAAGP,KAAK,CAACQ,WAAW,CAAC,CAAC;EAEhC,MAAMC,IAAI,GAAGb,eAAe,CAACI,KAAK,CAACU,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;EACjD,MAAMC,MAAM,GAAGf,eAAe,CAACI,KAAK,CAACY,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;EACrD,MAAMC,MAAM,GAAGjB,eAAe,CAACI,KAAK,CAACc,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;EAErD,IAAIC,gBAAgB,GAAG,EAAE;EACzB,IAAIb,cAAc,GAAG,CAAC,EAAE;IACtB,MAAMc,YAAY,GAAGhB,KAAK,CAACiB,eAAe,CAAC,CAAC;IAC5C,MAAMC,iBAAiB,GAAGC,IAAI,CAACC,KAAK,CAClCJ,YAAY,GAAGG,IAAI,CAACE,GAAG,CAAC,EAAE,EAAEnB,cAAc,GAAG,CAAC,CAChD,CAAC;IACDa,gBAAgB,GAAG,GAAG,GAAGnB,eAAe,CAACsB,iBAAiB,EAAEhB,cAAc,CAAC;EAC7E;EAEA,IAAIoB,MAAM,GAAG,EAAE;EACf,MAAMC,QAAQ,GAAGvB,KAAK,CAACwB,iBAAiB,CAAC,CAAC;EAE1C,IAAID,QAAQ,KAAK,CAAC,EAAE;IAClB,MAAME,cAAc,GAAGN,IAAI,CAACO,GAAG,CAACH,QAAQ,CAAC;IACzC,MAAMI,UAAU,GAAG/B,eAAe,CAACuB,IAAI,CAACC,KAAK,CAACK,cAAc,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACtE,MAAMG,YAAY,GAAGhC,eAAe,CAAC6B,cAAc,GAAG,EAAE,EAAE,CAAC,CAAC;IAC5D;IACA,MAAMI,IAAI,GAAGN,QAAQ,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG;IAErCD,MAAM,GAAI,GAAEO,IAAK,GAAEF,UAAW,IAAGC,YAAa,EAAC;EACjD,CAAC,MAAM;IACLN,MAAM,GAAG,GAAG;EACd;EAEA,OAAQ,GAAEf,IAAK,IAAGF,KAAM,IAAGF,GAAI,IAAGM,IAAK,IAAGE,MAAO,IAAGE,MAAO,GAAEE,gBAAiB,GAAEO,MAAO,EAAC;AAC1F;;AAEA;AACA,eAAezB,aAAa","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}