# General Translation Platform: formatRelativeTime
URL: https://generaltranslation.com/es/docs/platform/core/reference/gt-class-methods/formatting/format-relative-time.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Da formato a valores de tiempo relativo, como hace unos minutos o dentro de unos días. Referencia de API para formatRelativeTime.

Da formato a un valor de tiempo relativo con una unidad explícita según las convenciones específicas de la configuración regional, en una instancia de [GT](/docs/platform/core/reference/gt-class/constructor). General Translation usa la API integrada `Intl.RelativeTimeFormat` para generar frases como &quot;hace 2 horas&quot; o &quot;dentro de 3 días&quot;.

## Descripción general [#overview]

Llama a `formatRelativeTime` en una instancia de [`GT`](/docs/platform/core/reference/gt-class/constructor) con un valor numérico, una unidad de tiempo y un objeto de opciones opcional. Un valor negativo indica el pasado; un valor positivo, el futuro. Devuelve la cadena con el formato aplicado.

```typescript
const gt = new GT();

const formatted = gt.formatRelativeTime(-1, 'day', {
  locales: 'en-US',
  numeric: 'auto',
});
// "ayer"
```

Firma:

```typescript
formatRelativeTime(
  value: number,
  unit: Intl.RelativeTimeFormatUnit,
  options?: { locales?: string | string[] } & Omit<Intl.RelativeTimeFormatOptions, 'locales'>
): string
```

*Nota: `formatRelativeTime` se ejecuta de forma local con `Intl.RelativeTimeFormat` y no requiere una clave de API. Usa de forma predeterminada la configuración regional de destino de la instancia y, luego, recurre a la configuración regional de origen y a `en`. Para formatear sin una instancia de `GT`, consulta [`formatRelativeTime`](/docs/platform/core/reference/utility-functions/formatting/format-relative-time) en su versión independiente.*

## Cómo funciona [#how-it-works]

* **Resolución de la configuración regional.** Cuando se omite `locales`, el método usa la configuración regional de destino de la instancia, seguida de la configuración regional de origen y `en`.
* **Basado en Intl.** El formato se delega en [`Intl.RelativeTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat), nativo del navegador.
* **Valores predeterminados.** `numeric` usa `'auto'` de forma predeterminada (por lo que `-1 day` pasa a ser &quot;ayer&quot; en lugar de &quot;hace 1 día&quot;) y `style` usa `'long'` de forma predeterminada.

## Parámetros [#parameters]

| Parámetro             | Descripción                                                                      | Tipo                          | Opcional | Predeterminado |
| --------------------- | -------------------------------------------------------------------------------- | ----------------------------- | -------- | -------------- |
| [`value`](#value)     | El valor de tiempo relativo (negativo para el pasado y positivo para el futuro). | `number`                      | No       | —              |
| [`unit`](#unit)       | La unidad de tiempo.                                                             | `Intl.RelativeTimeFormatUnit` | No       | —              |
| [`options`](#options) | Configuración de formato.                                                        | `object`                      | Sí       | —              |

### `value` [#value]

**Tipo** `number` · **Obligatorio**

El valor de tiempo relativo. Los valores negativos corresponden al pasado; los positivos, al futuro.

### `unit` [#unit]

**Tipo** `Intl.RelativeTimeFormatUnit` · **Obligatorio**

La unidad de tiempo. Se aceptan formas singulares y plurales: `'second'`/`'seconds'`, `'minute'`/`'minutes'`, `'hour'`/`'hours'`, `'day'`/`'days'`, `'week'`/`'weeks'`, `'month'`/`'months'`, `'quarter'`/`'quarters'` y `'year'`/`'years'`.

### `options` [#options]

**Tipo** `{ locales?: string | string[] } & Omit<Intl.RelativeTimeFormatOptions, 'locales'>` · **Opcional**

Configuración de formato. La tabla enumera las opciones comunes expuestas por los tipos publicados de Core y sus valores predeterminados efectivos en Core. (Consulta las [opciones del constructor `Intl.RelativeTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#options) para obtener detalles complementarios del estándar y específicos del runtime).

| Nombre          | Descripción                                                          | Tipo                            | Opcional | Predeterminado                         |
| --------------- | -------------------------------------------------------------------- | ------------------------------- | -------- | -------------------------------------- |
| `locales`       | Configuraciones regionales para el formato.                          | `string \| string[]`            | Sí       | `targetLocale` → `sourceLocale` → `en` |
| `numeric`       | Indica si siempre debe usarse una salida numérica.                   | `'always' \| 'auto'`            | Sí       | `'auto'`                               |
| `style`         | La longitud de la salida.                                            | `'long' \| 'short' \| 'narrow'` | Sí       | `'long'`                               |
| `localeMatcher` | El algoritmo de coincidencia de configuración regional que se usará. | `'best fit' \| 'lookup'`        | Sí       | `'best fit'`                           |

Core cambia el valor predeterminado de `numeric` de `'always'` a `'auto'`; los demás valores predeterminados estándar provienen de `Intl.RelativeTimeFormat`.

## Devuelve [#returns]

**Tipo** `string`

La cadena formateada que representa el tiempo relativo.

## Ejemplos [#examples]

```typescript
import { GT } from 'generaltranslation';

const gt = new GT();

// Tiempo pasado
gt.formatRelativeTime(-2, 'hour', { locales: 'en-US' });
// Devuelve: "2 hours ago"

// Tiempo futuro
gt.formatRelativeTime(3, 'day', { locales: 'fr-FR' });
// Devuelve: "dans 3 jours"

// Con numeric: 'auto' (predeterminado)
gt.formatRelativeTime(-1, 'day', { locales: 'en-US' });
// Devuelve: "yesterday"
```

## Notas [#notes]

* El valor predeterminado es `numeric: 'auto'` y `style: 'long'`.
* Usa `Intl.RelativeTimeFormat` internamente.
* Para seleccionar automáticamente la unidad a partir de un `Date`, usa [`formatRelativeTimeFromDate`](/docs/platform/core/reference/gt-class-methods/formatting/format-relative-time-from-date).

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
