# core/converters/target.converter.ts

> 13 lines of code and 3 definitions.

Tree: GovLab Quality
Language: typescript
Layer: processing
Canonical: https://banes-lab.com/anatomy/quality#file-quality-core-converters-target-converter-ts
Source text: https://banes-lab.com/source/quality/core/converters/target.converter.ts.txt

Listed in [core/converters](https://banes-lab.com/api/source/quality/core/converters.md), after [core/converters/surface.converter.ts](https://banes-lab.com/source/quality/core/converters/surface.converter.ts.md).

## Definitions

- `bumpEsTokens` (lexical_declaration, line 3, exported)
- `stale` (lexical_declaration, line 8, exported)
- `next` (lexical_declaration, line 9, exported)

## Contained in

- [core/converters](https://banes-lab.com/anatomy/quality/folder-quality-core-converters.md)

## Source

```typescript
import { findStaleEsTokens } from "#core/matchers/target.matcher";

export const bumpEsTokens = function bumpEsTokens(
    text: string,
    minYear: number,
    replacement: string,
): { text: string; changed: boolean } {
    const stale = findStaleEsTokens(text, minYear);
    const next = stale.reduceRight(
        (acc, span) => acc.slice(0, span.open + 1) + replacement + acc.slice(span.close),
        text,
    );
    return { changed: stale.length > 0, text: next };
};
```
