Skip to content

Extractor: PalamedesExtractor

Functions, types, and exports for Extractor: PalamedesExtractor.

Page outline

Native extractor for Palamedes-compatible message syntax.

Supports:

  • JSX: <Trans>, <Plural>, <Select>, <SelectOrdinal>
  • JS: t..., t({...}), plural(), select(), selectOrdinal()
  • MDX: semantic Markdown blocks, rich inline markup, expressions, and JSX
  • Vue: inline script and script setup blocks, preserving SFC source origins
  • Svelte: inline instance and module scripts, preserving component source origins
import type { PalamedesExtractor } from "@palamedes/extractor"

type PalamedesExtractor = {
    match(filename: string): boolean;
    extract(filename: string, code: string, onMessageExtracted: (msg: ExtractedMessageInfo) => void): Promise<void>;
};

match

match(filename: string): boolean

Parameters

NameTypeRequired
filenamestringYes

Returns

boolean

extract

extract(filename: string, code: string, onMessageExtracted: (msg: ExtractedMessageInfo) => void): Promise<void>

Parameters

NameTypeRequired
filenamestringYes
codestringYes
onMessageExtracted(msg: ExtractedMessageInfo) => voidYes

Returns

Promise<void>

Example

import { extractor } from "@palamedes/extractor"

if (extractor.match("app.tsx")) {
  await extractor.extract("app.tsx", source, (message) => {
    console.log(message)
  })
}

Source entry on GitHub

Last updated: November 1, 2026