Add Activepieces integration for workflow automation

- Add Activepieces fork with SmoothSchedule custom piece
- Create integrations app with Activepieces service layer
- Add embed token endpoint for iframe integration
- Create Automations page with embedded workflow builder
- Add sidebar visibility fix for embed mode
- Add list inactive customers endpoint to Public API
- Include SmoothSchedule triggers: event created/updated/cancelled
- Include SmoothSchedule actions: create/update/cancel events, list resources/services/customers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
poduck
2025-12-18 22:59:37 -05:00
parent 9848268d34
commit 3aa7199503
16292 changed files with 1284892 additions and 4708 deletions

View File

@@ -0,0 +1,33 @@
{
"extends": [
"../../../../.eslintrc.base.json"
],
"ignorePatterns": [
"!**/*"
],
"overrides": [
{
"files": [
"*.ts",
"*.tsx",
"*.js",
"*.jsx"
],
"rules": {}
},
{
"files": [
"*.ts",
"*.tsx"
],
"rules": {}
},
{
"files": [
"*.js",
"*.jsx"
],
"rules": {}
}
]
}

View File

@@ -0,0 +1,7 @@
# pieces-extracta-ai
This library was generated with [Nx](https://nx.dev).
## Building
Run `nx build pieces-extracta-ai` to build the library.

View File

@@ -0,0 +1,10 @@
{
"name": "@activepieces/piece-extracta-ai",
"version": "0.0.3",
"type": "commonjs",
"main": "./src/index.js",
"types": "./src/index.d.ts",
"dependencies": {
"tslib": "^2.3.0"
}
}

View File

@@ -0,0 +1,65 @@
{
"name": "pieces-extracta-ai",
"$schema": "../../../../node_modules/nx/schemas/project-schema.json",
"sourceRoot": "packages/pieces/community/extracta-ai/src",
"projectType": "library",
"release": {
"version": {
"manifestRootsToUpdate": [
"dist/{projectRoot}"
],
"currentVersionResolver": "git-tag",
"fallbackCurrentVersionResolver": "disk"
}
},
"tags": [],
"targets": {
"build": {
"executor": "@nx/js:tsc",
"outputs": [
"{options.outputPath}"
],
"options": {
"outputPath": "dist/packages/pieces/community/extracta-ai",
"tsConfig": "packages/pieces/community/extracta-ai/tsconfig.lib.json",
"packageJson": "packages/pieces/community/extracta-ai/package.json",
"main": "packages/pieces/community/extracta-ai/src/index.ts",
"assets": [
"packages/pieces/community/extracta-ai/*.md",
{
"input": "packages/pieces/community/extracta-ai/src/i18n",
"output": "./src/i18n",
"glob": "**/!(i18n.json)"
}
],
"buildableProjectDepsInPackageJsonType": "dependencies",
"updateBuildableProjectDepsInPackageJson": true
},
"dependsOn": [
"^build",
"prebuild"
]
},
"nx-release-publish": {
"options": {
"packageRoot": "dist/{projectRoot}"
}
},
"lint": {
"executor": "@nx/eslint:lint",
"outputs": [
"{options.outputFile}"
]
},
"prebuild": {
"executor": "nx:run-commands",
"options": {
"cwd": "packages/pieces/community/extracta-ai",
"command": "bun install --no-save --silent"
},
"dependsOn": [
"^build"
]
}
}
}

View File

@@ -0,0 +1,77 @@
{
"An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.": "Eine Plattform für Dokumentenextraktion und Inhaltsanalyse, die unstrukturierte Dateien (PDFs, Bilder, URLs, etc.) in strukturierte Daten umwandelt.",
"Enter your Extracta-ai API key": "Geben Sie Ihren Extracta-ai API Schlüssel ein",
"Extract File Data": "Datei-Daten extrahieren",
"Upload File": "Datei hochladen",
"Get Extraction Results": "Extraktionsergebnisse abrufen",
"Upload a file and immediately receive extracted content": "Datei hochladen und entpackte Inhalte sofort erhalten",
"Uploads document for extraction": "Dokument zur Extraktion hochladen",
"Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.": "Ruft erfolgreiche Daten aus dem Extrahieren ab. Hinweis: Die API empfiehlt eine 2-Sekunden-Verzögerung zwischen den Anfragen, um eine Preisbegrenzung zu vermeiden.",
"File": "Datei",
"Extraction Name": "Name der Extraktion",
"Language": "Sprache",
"Fields to Extract": "Zu extrahierende Felder",
"Description": "Beschreibung",
"Has Table": "Hat Tisch",
"Has Visuals": "Hat Visuelle",
"Handwritten Text Recognition": "Handgeschriebene Texterkennung",
"Checkbox Recognition": "Checkbox-Erkennung",
"Long Document": "Langes Dokument",
"Split PDF Pages": "PDF-Seiten teilen",
"Specific Page Processing": "Spezifische Seitenbearbeitung",
"Page From": "Seite von",
"Page To": "Seite an",
"Extraction ID": "Extraktions-ID",
"Batch ID": "Batch-ID",
"File ID": "Datei-ID",
"The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)": "Die hochzuladende Datei. Unterstützt: PDF, Bilder (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), Textdateien (TXT)",
"A descriptive name for the extraction": "Ein beschreibender Name für die Extraktion",
"Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.": "Extracta.ai unterstützt mehrere Sprachen mit fortgeschrittenen KI-Algorithmen, um Sprachnuancen zu analysieren.",
"Define the data fields you want to extract from documents": "Definieren Sie die Datenfelder, die Sie aus Dokumenten extrahieren möchten",
"A description for the extraction": "Eine Beschreibung für die Extraktion",
"Whether the document contains tables": "Gibt an, ob das Dokument Tabellen enthält",
"Whether the document contains charts, graphs, or diagrams": "Ob das Dokument Diagramme, Grafiken oder Diagramme enthält",
"Whether to recognize handwritten text": "Ob handgeschriebenen Text erkannt werden soll",
"Whether to recognize checkboxes and their states": "Gibt an, ob Kontrollkästchen und deren Status erkannt werden sollen",
"Enable for very large or complex documents": "Für sehr große oder komplexe Dokumente aktivieren",
"Treat each PDF page as a separate extraction unit": "Jede PDF-Seite als separate Extraktionseinheit behandeln",
"Extract only a specified range of pages": "Nur einen bestimmten Seitenbereich extrahieren",
"Starting page number (required if Specific Page Processing is enabled)": "Startseitennummer (erforderlich, wenn bestimmte Seitenbearbeitung aktiviert ist)",
"Ending page number (required if Specific Page Processing is enabled)": "Endseitennummer (erforderlich, wenn bestimmte Seitenbearbeitung aktiviert ist)",
"Unique identifier for the extraction": "Eindeutiger Bezeichner für die Extraktion",
"Document file to upload (PDF, images, etc.)": "Datei zum Hochladen (PDF, Bilder, etc.)",
"The ID of the batch to add files to (optional). If not provided, a new batch will be created.": "Die ID des Batchs, zu dem Dateien hinzugefügt werden sollen (optional). Falls nicht angegeben, wird ein neuer Batch erstellt.",
"The ID of the extraction": "Die ID der Extraktion",
"The ID of the batch": "Die ID des Batches",
"The ID of the file (optional). If provided, filters results to only that file.": "Die ID der Datei (optional). Wenn vorhanden, werden Ergebnisse nur in diese Datei gefiltert.",
"Multi-Lingual": "Multi-Lingual",
"Arabic": "Arabisch",
"Bangla": "Bangla",
"Bulgarian": "Bulgarisch",
"Croatian": "Kroatisch",
"Czech": "Tschechisch",
"English": "Englisch",
"Filipino": "Philippinisch",
"French": "Französisch",
"German": "Deutsch",
"Hindi": "Hannah",
"Hungarian": "Ungarisch",
"Italian": "Italienisch",
"Nepali": "Nepali",
"Polish": "Polnisch",
"Portuguese": "Portugiesisch",
"Romanian": "Rumänisch",
"Russian": "Russisch",
"Serbian": "Serbisch",
"Spanish": "Spanisch",
"Turkish": "Türkisch",
"Ukrainian": "Ukrainische",
"Urdu": "Urdu",
"Vietnamese": "Vietnamese",
"New Document Processed": "Neues Dokument verarbeitet",
"Extraction Failed": "Extraktion fehlgeschlagen",
"Triggers when a document extraction is successfully processed.": "Wird ausgelöst, wenn eine Dokumentextraktion erfolgreich verarbeitet wird.",
"Triggers when a document extraction fails.": "Wird ausgelöst, wenn eine Dokumentextraktion fehlschlägt.",
"Markdown": "Markdown",
"\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click *": "\nUm diesen Trigger zu verwenden, müssen Sie einen einzelnen Webhook-Endpunkt in Ihrer Extracta manuell einrichten. i Konto. Dieser Endpunkt wird alle Ereignisse empfangen und Activepieces filtern nach dem korrekten.\n\n. **Login** auf Ihrem Extracta.ai Dashboard.\n2. Navigiere zum Abschnitt **API** vom Seitenmenü.\n3. Scrolle nach unten zu **Webhook Einstellungen**.\n4. Klicke **\"Erstelle einen neuen Webhook\"** (oder bearbeite einen existierenden).\nFügen Sie die folgende URL in das Feld **Endpoint URL** ein:\n ```text\n {{webhookUrl}}\n ```\n6. Klicke **Speichern**. \n\n Dieser einzelne Webhook sendet nun alle Ereignisse an Activepieces. Dieser Trigger wird nur für das **'extraction.failed'** Event aktiviert.\n "
}

View File

@@ -0,0 +1,77 @@
{
"An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.": "Una plataforma de extracción de documentos y análisis de contenido de IA que transforma archivos no estructurados (PDFs, imágenes, URLs, etc.) en datos estructurados.",
"Enter your Extracta-ai API key": "Introduzca su clave API Extracta-ai",
"Extract File Data": "Extraer datos de archivo",
"Upload File": "Subir archivo",
"Get Extraction Results": "Obtener resultados de extracción",
"Upload a file and immediately receive extracted content": "Subir un archivo y recibir inmediatamente contenido extraído",
"Uploads document for extraction": "Subir documento para la extracción",
"Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.": "Obtiene datos exitosos de la extracción. Nota: La API recomienda un retardo de 2 segundos entre las solicitudes para evitar limitación de velocidad.",
"File": "Archivo",
"Extraction Name": "Nombre de la extracción",
"Language": "Idioma",
"Fields to Extract": "Campos a extraer",
"Description": "Descripción",
"Has Table": "Tiene Tabla",
"Has Visuals": "Tiene Visuales",
"Handwritten Text Recognition": "Reconocimiento de texto escrito",
"Checkbox Recognition": "Reconocimiento de casilla",
"Long Document": "Documento largo",
"Split PDF Pages": "Dividir páginas PDF",
"Specific Page Processing": "Procesamiento Específico de Página",
"Page From": "Página de",
"Page To": "Página a",
"Extraction ID": "ID de extracción",
"Batch ID": "ID de Lote",
"File ID": "ID de archivo",
"The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)": "El archivo a subir para la extracción. Soportado: PDF, imágenes (JPEG, PNG, TIFF, BMP), documentos Word (DOC, DOCX), archivos de texto (TXT)",
"A descriptive name for the extraction": "Un nombre descriptivo para la extracción",
"Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.": "El lenguaje de documento para una extracción precisa. Extracta.ai soporta múltiples idiomas con algoritmos de IA avanzados diseñados para analizar matices lingüísticos.",
"Define the data fields you want to extract from documents": "Definir los campos de datos que desea extraer de los documentos",
"A description for the extraction": "Una descripción para la extracción",
"Whether the document contains tables": "Si el documento contiene tablas",
"Whether the document contains charts, graphs, or diagrams": "Si el documento contiene gráficos, gráficos o diagramas",
"Whether to recognize handwritten text": "Reconocer texto manuscrito",
"Whether to recognize checkboxes and their states": "Si se reconocen las casillas de verificación y sus estados",
"Enable for very large or complex documents": "Habilitar para documentos muy grandes o complejos",
"Treat each PDF page as a separate extraction unit": "Tratar cada página PDF como una unidad de extracción separada",
"Extract only a specified range of pages": "Extraer sólo un rango de páginas especificado",
"Starting page number (required if Specific Page Processing is enabled)": "Número de página inicial (obligatorio si el procesamiento específico de página está habilitado)",
"Ending page number (required if Specific Page Processing is enabled)": "Número de página final (obligatorio si está habilitado el procesamiento específico de página)",
"Unique identifier for the extraction": "Identificador único para la extracción",
"Document file to upload (PDF, images, etc.)": "Archivo de documento a subir (PDF, imágenes, etc.)",
"The ID of the batch to add files to (optional). If not provided, a new batch will be created.": "El ID del lote al que añadir archivos (opcional). Si no se proporciona, se creará un nuevo lote de archivos.",
"The ID of the extraction": "El ID de la extracción",
"The ID of the batch": "El ID del lote",
"The ID of the file (optional). If provided, filters results to only that file.": "El ID del archivo (opcional). Si se proporciona, los filtros sólo resultarán en ese archivo.",
"Multi-Lingual": "Multi-Lingual",
"Arabic": "Árabe",
"Bangla": "Bangla",
"Bulgarian": "Búlgaro",
"Croatian": "Croata",
"Czech": "Checo",
"English": "Inglés",
"Filipino": "Filipino",
"French": "Francés",
"German": "Alemán",
"Hindi": "Hindú",
"Hungarian": "Húngaro",
"Italian": "Italiano",
"Nepali": "Nepali",
"Polish": "Polaco",
"Portuguese": "Portugués",
"Romanian": "Rumano",
"Russian": "Ruso",
"Serbian": "Serbio",
"Spanish": "Español",
"Turkish": "Turco",
"Ukrainian": "Ucraniano",
"Urdu": "Urdu",
"Vietnamese": "Vietnamese",
"New Document Processed": "Nuevo documento procesado",
"Extraction Failed": "Extracción fallida",
"Triggers when a document extraction is successfully processed.": "Activa cuando se procesa con éxito una extracción de documentos.",
"Triggers when a document extraction fails.": "Dispara cuando un documento de extracción falla.",
"Markdown": "Markdown",
"\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click *": "\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click **Save**.\n\nThis single webhook will now send all events to Activepieces. This trigger will only activate for the **'extraction.failed'** event.\n "
}

View File

@@ -0,0 +1,77 @@
{
"An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.": "Une plate-forme d'extraction de documents AI et d'analyse de contenu qui transforme les fichiers non structurés (PDFs, images, URLs, etc.) en données structurées.",
"Enter your Extracta-ai API key": "Entrez votre clé API Extracta-ai",
"Extract File Data": "Extraire les données du fichier",
"Upload File": "Charger un fichier",
"Get Extraction Results": "Obtenir les résultats d'extraction",
"Upload a file and immediately receive extracted content": "Téléchargez un fichier et recevez immédiatement du contenu extrait",
"Uploads document for extraction": "Téléversements de document pour l'extraction",
"Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.": "Récupère les données réussies de l'extraction. Note : L'API recommande un délai de 2 secondes entre les requêtes pour éviter une limitation de débit.",
"File": "Ficher",
"Extraction Name": "Nom de l'extraction",
"Language": "Langue",
"Fields to Extract": "Champs à extraire",
"Description": "Libellé",
"Has Table": "A une table",
"Has Visuals": "A des visuels",
"Handwritten Text Recognition": "Reconnaissance du texte manuscrit",
"Checkbox Recognition": "Reconnaissance de la case à cocher",
"Long Document": "Document long",
"Split PDF Pages": "Diviser les pages PDF",
"Specific Page Processing": "Traitement de la page spécifique",
"Page From": "Page de",
"Page To": "Page vers",
"Extraction ID": "ID d'extraction",
"Batch ID": "ID de lot",
"File ID": "ID du fichier",
"The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)": "Le fichier à télécharger pour extraction. Pris en charge : PDF, images (JPEG, PNG, TIFF, BMP), docs Word (DOC, DOCX), fichiers texte (TXT)",
"A descriptive name for the extraction": "Un nom descriptif pour l'extraction",
"Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.": "Le langage du document pour une extraction précise. Extracta.ai prend en charge plusieurs langages avec des algorithmes IA avancés conçus pour analyser les nuances linguistiques.",
"Define the data fields you want to extract from documents": "Définir les champs de données que vous souhaitez extraire des documents",
"A description for the extraction": "Une description pour l'extraction",
"Whether the document contains tables": "Si le document contient des tables",
"Whether the document contains charts, graphs, or diagrams": "Si le document contient des graphiques, des graphiques ou des diagrammes",
"Whether to recognize handwritten text": "S'il faut reconnaître le texte manuscrit",
"Whether to recognize checkboxes and their states": "S'il faut reconnaître les cases à cocher et leurs états",
"Enable for very large or complex documents": "Activer pour les documents très volumineux ou complexes",
"Treat each PDF page as a separate extraction unit": "Traiter chaque page PDF comme une unité d'extraction séparée",
"Extract only a specified range of pages": "Extraire seulement une plage de pages spécifiée",
"Starting page number (required if Specific Page Processing is enabled)": "Numéro de page de départ (requis si le traitement de page spécifique est activé)",
"Ending page number (required if Specific Page Processing is enabled)": "Numéro de page de fin (requis si le traitement de page spécifique est activé)",
"Unique identifier for the extraction": "Identifiant unique pour l'extraction",
"Document file to upload (PDF, images, etc.)": "Fichier de document à télécharger (PDF, images, etc.)",
"The ID of the batch to add files to (optional). If not provided, a new batch will be created.": "L'ID du lot à ajouter aux fichiers (optionnel). Si non fourni, un nouveau lot sera créé.",
"The ID of the extraction": "L'ID de l'extraction",
"The ID of the batch": "L'ID du lot",
"The ID of the file (optional). If provided, filters results to only that file.": "L'ID du fichier (optionnel). Si fourni, filtre uniquement ce fichier.",
"Multi-Lingual": "Multi-Lingual",
"Arabic": "Arabe",
"Bangla": "Bangla",
"Bulgarian": "Bulgare",
"Croatian": "Croate",
"Czech": "Tchèque",
"English": "Anglais",
"Filipino": "Philippin",
"French": "Français",
"German": "Allemand",
"Hindi": "Hindi",
"Hungarian": "Hongrois",
"Italian": "Italien",
"Nepali": "Nepali",
"Polish": "Polonais",
"Portuguese": "Portugais",
"Romanian": "Roumain",
"Russian": "Russe",
"Serbian": "Serbe",
"Spanish": "Espagnol",
"Turkish": "Turc",
"Ukrainian": "Ukrainien",
"Urdu": "Ourdou",
"Vietnamese": "Vietnamese",
"New Document Processed": "Nouveau document traité",
"Extraction Failed": "Échec de l'extraction",
"Triggers when a document extraction is successfully processed.": "Déclenche lorsqu'un document est extrait avec succès.",
"Triggers when a document extraction fails.": "Déclenche quand l'extraction d'un document échoue.",
"Markdown": "Markdown",
"\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click *": "\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click **Save**.\n\nThis single webhook will now send all events to Activepieces. This trigger will only activate for the **'extraction.failed'** event.\n "
}

View File

@@ -0,0 +1,77 @@
{
"An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.": "構造化されていないファイル(PDF、画像、URLなど)を構造化データに変換するAIドキュメント抽出およびコンテンツ分析プラットフォーム。",
"Enter your Extracta-ai API key": "Extracta-ai API キーを入力してください",
"Extract File Data": "ファイルデータを抽出",
"Upload File": "ファイルをアップロード",
"Get Extraction Results": "抽出結果を取得",
"Upload a file and immediately receive extracted content": "ファイルをアップロードし、抽出されたコンテンツをすぐに受信します",
"Uploads document for extraction": "抽出用のドキュメントをアップロードする",
"Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.": "抽出に成功したデータを取得します。注:リクエスト間でレート制限を避けるために、2 秒の遅延を推奨します。",
"File": "ファイル",
"Extraction Name": "抽出名",
"Language": "言語",
"Fields to Extract": "抽出するフィールド",
"Description": "説明",
"Has Table": "テーブルあり",
"Has Visuals": "ビジュアルあり",
"Handwritten Text Recognition": "手書きテキスト認識",
"Checkbox Recognition": "チェックボックスの認識",
"Long Document": "長いドキュメント",
"Split PDF Pages": "PDF ページを分割",
"Specific Page Processing": "特定のページの処理",
"Page From": "ページから",
"Page To": "ページまで",
"Extraction ID": "抽出ID",
"Batch ID": "バッチID",
"File ID": "ファイルID",
"The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)": "アップロードするファイルを抽出します。サポートされている: PDF, 画像 (JPEG, PNG, TIFF, BMP), Word ドキュメント (DOC, DOCX), テキスト ファイル (TXT)",
"A descriptive name for the extraction": "抽出の説明的な名前",
"Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.": "正確な抽出のためのドキュメントの言語 Extracta.aiは、言語のニュアンスを解析するように設計された高度なAIアルゴリズムを備えた複数の言語をサポートします。",
"Define the data fields you want to extract from documents": "ドキュメントから抽出するデータフィールドを定義します",
"A description for the extraction": "抽出の説明",
"Whether the document contains tables": "ドキュメントに表が含まれているかどうか",
"Whether the document contains charts, graphs, or diagrams": "ドキュメントにグラフ、グラフ、ダイアグラムが含まれているかどうか",
"Whether to recognize handwritten text": "手書きのテキストを認識するかどうか",
"Whether to recognize checkboxes and their states": "チェックボックスとその状態を認識するかどうか",
"Enable for very large or complex documents": "非常に大きい文書または複雑な文書を有効にする",
"Treat each PDF page as a separate extraction unit": "各PDFページを別の抽出ユニットとして扱います。",
"Extract only a specified range of pages": "指定された範囲のページのみを抽出",
"Starting page number (required if Specific Page Processing is enabled)": "開始ページ番号(特定のページ処理が有効な場合は必須)",
"Ending page number (required if Specific Page Processing is enabled)": "終了ページ番号 (特定のページ処理が有効な場合は必須)",
"Unique identifier for the extraction": "抽出のための一意の識別子",
"Document file to upload (PDF, images, etc.)": "アップロードするドキュメントファイルPDF、画像など",
"The ID of the batch to add files to (optional). If not provided, a new batch will be created.": "ファイルを追加するバッチIDオプション。指定されていない場合は、新しいバッチが作成されます。",
"The ID of the extraction": "抽出の ID",
"The ID of the batch": "バッチの ID",
"The ID of the file (optional). If provided, filters results to only that file.": "ファイルのID任意。指定された場合、フィルタはそのファイルのみになります。",
"Multi-Lingual": "Multi-Lingual",
"Arabic": "アラビア文字",
"Bangla": "バングラ語",
"Bulgarian": "ブルガリア語",
"Croatian": "クロアチア語",
"Czech": "チェコ語",
"English": "日本語",
"Filipino": "フィリピノ語",
"French": "フランス語",
"German": "ドイツ語",
"Hindi": "ヒンディー語",
"Hungarian": "ハンガリー語",
"Italian": "イタリア語",
"Nepali": "Nepali",
"Polish": "ポーランド語",
"Portuguese": "ポルトガル語",
"Romanian": "ルーマニア語",
"Russian": "ロシア語",
"Serbian": "セルビア語",
"Spanish": "スペイン語",
"Turkish": "トルコ語",
"Ukrainian": "ウクライナ語",
"Urdu": "ウルドゥー語",
"Vietnamese": "Vietnamese",
"New Document Processed": "新しいドキュメントが処理されました",
"Extraction Failed": "抽出に失敗しました",
"Triggers when a document extraction is successfully processed.": "ドキュメントの抽出が正常に処理されたときにトリガーします。",
"Triggers when a document extraction fails.": "ドキュメントの抽出に失敗したときにトリガーします。",
"Markdown": "Markdown",
"\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click *": "\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click **Save**.\n\nThis single webhook will now send all events to Activepieces. This trigger will only activate for the **'extraction.failed'** event.\n "
}

View File

@@ -0,0 +1,77 @@
{
"An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.": "Een AI document extractie & content analyse platform dat ongestructureerde bestanden (PDF's, afbeeldingen, URL's, etc.) in gestructureerde gegevens converteert.",
"Enter your Extracta-ai API key": "Voer je Extracta-ai API-sleutel in",
"Extract File Data": "Bestandsgegevens uitpakken",
"Upload File": "Bestand uploaden",
"Get Extraction Results": "Krijg Extractie Resultaten",
"Upload a file and immediately receive extracted content": "Upload een bestand en ontvang onmiddellijk uitgepakte inhoud",
"Uploads document for extraction": "Uploads document voor extractie",
"Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.": "Haalt gegevens uit extractie met succesvol. Let op: de API beveelt een vertraging van 2 seconden aan tussen verzoeken om beperking van tarieven te voorkomen.",
"File": "Bestand",
"Extraction Name": "Extractie naam",
"Language": "Taal",
"Fields to Extract": "Velden om uit te pakken",
"Description": "Beschrijving",
"Has Table": "Heeft tabel",
"Has Visuals": "Heeft Visuals",
"Handwritten Text Recognition": "Handgeschreven tekst herkenning",
"Checkbox Recognition": "Selectievakje herkenning",
"Long Document": "Lang Document",
"Split PDF Pages": "Deel PDF-pagina's",
"Specific Page Processing": "Specifieke paginaverwerking",
"Page From": "Pagina van",
"Page To": "Pagina naar",
"Extraction ID": "Extractie ID",
"Batch ID": "Batch ID",
"File ID": "Bestand ID",
"The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)": "Het te uploaden bestand voor extractie. Ondersteund: PDF, afbeeldingen (JPEG, PNG, TIFF, BMP), Word-docs (DOC, DOCX), tekstbestanden (TXT)",
"A descriptive name for the extraction": "Een beschrijvende naam voor de extractie",
"Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.": "Documenttaal voor nauwkeurige extractie. Extracta.ai ondersteunt meerdere talen met geavanceerde AI-algoritmes ontworpen om taalkundige nuances te verwerken.",
"Define the data fields you want to extract from documents": "Definieer de gegevensvelden die u uit documenten wilt extraheren",
"A description for the extraction": "Een beschrijving voor de extractie",
"Whether the document contains tables": "Of het document tabellen bevat",
"Whether the document contains charts, graphs, or diagrams": "Of het document grafieken, grafieken of diagrammen bevat",
"Whether to recognize handwritten text": "Of handgeschreven tekst herkennen",
"Whether to recognize checkboxes and their states": "Selectievakjes en hun staten herkennen",
"Enable for very large or complex documents": "Inschakelen voor zeer grote of complexe documenten",
"Treat each PDF page as a separate extraction unit": "Behandel elke PDF-pagina als een afzonderlijke extractie-eenheid",
"Extract only a specified range of pages": "Pak alleen een bepaald bereik van pagina's uit",
"Starting page number (required if Specific Page Processing is enabled)": "Start paginanummer (vereist als specifieke paginaverwerking is ingeschakeld)",
"Ending page number (required if Specific Page Processing is enabled)": "Eindig paginanummer (vereist als specifieke paginaverwerking is ingeschakeld)",
"Unique identifier for the extraction": "Unieke identifier voor de extractie",
"Document file to upload (PDF, images, etc.)": "Te uploaden documentbestand (PDF, afbeeldingen, etc.)",
"The ID of the batch to add files to (optional). If not provided, a new batch will be created.": "De batch om bestanden toe te voegen (optioneel). Indien niet opgegeven, zal er een nieuwe batch worden gemaakt.",
"The ID of the extraction": "Het ID van de extractie",
"The ID of the batch": "Het ID van de batch",
"The ID of the file (optional). If provided, filters results to only that file.": "De ID van het bestand (optioneel). Indien opgegeven, filtert de resultaten op alleen dat bestand.",
"Multi-Lingual": "Multi-Lingual",
"Arabic": "Arabisch",
"Bangla": "Bangla",
"Bulgarian": "Bulgaars",
"Croatian": "Kroatisch",
"Czech": "Tsjechisch",
"English": "Nederlands",
"Filipino": "Filippijnen",
"French": "Frans",
"German": "Duits",
"Hindi": "Hindoestani",
"Hungarian": "Hongaars",
"Italian": "Italiaans",
"Nepali": "Nepali",
"Polish": "Pools",
"Portuguese": "Portugees",
"Romanian": "Roemeens",
"Russian": "Russisch",
"Serbian": "Servisch",
"Spanish": "Spaans",
"Turkish": "Turks",
"Ukrainian": "Oekraïens",
"Urdu": "Urdu",
"Vietnamese": "Vietnamese",
"New Document Processed": "Nieuw document verwerkt",
"Extraction Failed": "Uitpakken mislukt",
"Triggers when a document extraction is successfully processed.": "Triggers wanneer een document extractie succesvol wordt verwerkt.",
"Triggers when a document extraction fails.": "Triggert wanneer een documentextractie mislukt.",
"Markdown": "Markdown",
"\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click *": "\nOm deze trigger te gebruiken, moet je handmatig een enkele webhook eindpunt in je Extracta instellen. i account. Dit eindpunt ontvangt alle gebeurtenissen, en de Activepieces filteren op de juiste.\n\n. **Log in** op je Extracta.ai dashboard.\n2. Navigeer naar de **API** sectie in het zijmenu.\n3. Scroll naar beneden naar **Webhook Instellingen**.\n4. Klik op **\"Maak een nieuwe webhook\"** (of bewerk een bestaande).\n5. Plak de volgende URL in het **Eindpunt URL** veld:\n ```text\n {{webhookUrl}}\n ```\n6. Klik **Opslaan**. \n\n Deze webhook stuurt nu alle evenementen naar de Activepiëfficiënten. Deze trigger wordt alleen geactiveerd voor het **'extraction.failed'** evenement.\n "
}

View File

@@ -0,0 +1,77 @@
{
"An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.": "Uma plataforma de extração de documentos AI e análise de conteúdo que transforma arquivos não estruturados (PDFs, imagens, URLs, etc.) em dados estruturados.",
"Enter your Extracta-ai API key": "Digite sua chave da API Extracta-ai",
"Extract File Data": "Extrair Dados do Arquivo",
"Upload File": "Enviar Arquivo",
"Get Extraction Results": "Obter resultados de extração",
"Upload a file and immediately receive extracted content": "Enviar um arquivo e receber conteúdo extraído imediatamente",
"Uploads document for extraction": "Carregamento do documento para extração",
"Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.": "Busca dados bem-sucedidos da extração. Nota: A API recomenda um atraso de 2 segundos entre solicitações para evitar a limitação de taxas.",
"File": "Arquivo",
"Extraction Name": "Nome da extração",
"Language": "IDIOMA",
"Fields to Extract": "Campos para Extrair",
"Description": "Descrição",
"Has Table": "Possui tabela",
"Has Visuals": "Possui Visuais",
"Handwritten Text Recognition": "Reconhecimento de texto escrito",
"Checkbox Recognition": "Reconhecimento de Checkbox",
"Long Document": "Documento longo",
"Split PDF Pages": "Dividir páginas PDF",
"Specific Page Processing": "Processamento de página específica",
"Page From": "Página de",
"Page To": "Página para",
"Extraction ID": "ID de extração",
"Batch ID": "ID do Lote",
"File ID": "ID do arquivo",
"The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)": "O arquivo a ser enviado para extração. Suportado: PDF, imagens (JPEG, PNG, TIFF, BMP), Documentos Word (DOC, DOCX), arquivos de texto (TXT)",
"A descriptive name for the extraction": "Um nome descritivo para a extração",
"Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.": "O idioma do documento para extração precisa. Extracta.ai suporta vários idiomas com algoritmos de IA avançados projetados para analisar nuances linguísticas.",
"Define the data fields you want to extract from documents": "Defina os campos de dados que você deseja extrair dos documentos",
"A description for the extraction": "Uma descrição para a extração",
"Whether the document contains tables": "Se o documento contém tabelas",
"Whether the document contains charts, graphs, or diagrams": "Se o documento contém gráficos, gráficos ou diagramas",
"Whether to recognize handwritten text": "Se reconhecer texto manuscrito",
"Whether to recognize checkboxes and their states": "Se reconhecer as caixas de seleção e seus estados",
"Enable for very large or complex documents": "Habilitar para documentos muito grandes ou complexos",
"Treat each PDF page as a separate extraction unit": "Tratar cada página de PDF como uma unidade de extração separada",
"Extract only a specified range of pages": "Extrair apenas um intervalo específico de páginas",
"Starting page number (required if Specific Page Processing is enabled)": "Número da página inicial (necessário se o Processamento de Página Específica estiver habilitado)",
"Ending page number (required if Specific Page Processing is enabled)": "Número da página final (necessário se o processamento de página específica estiver ativado)",
"Unique identifier for the extraction": "Identificador exclusivo para a extração",
"Document file to upload (PDF, images, etc.)": "Arquivo de documento para upload (PDF, imagens, etc.)",
"The ID of the batch to add files to (optional). If not provided, a new batch will be created.": "O ID do lote para adicionar arquivos (opcional). Se não for fornecido, um novo lote será criado.",
"The ID of the extraction": "O ID da extração",
"The ID of the batch": "O ID do lote",
"The ID of the file (optional). If provided, filters results to only that file.": "O ID do arquivo (opcional). Se fornecido, filtra somente para esse arquivo.",
"Multi-Lingual": "Multi-Lingual",
"Arabic": "Arábico",
"Bangla": "Bengala",
"Bulgarian": "búlgaro",
"Croatian": "croata",
"Czech": "tcheco",
"English": "Portuguese-Brazil",
"Filipino": "filipino",
"French": "francês",
"German": "alemão",
"Hindi": "hindi",
"Hungarian": "Húngaro",
"Italian": "italiano",
"Nepali": "Nepali",
"Polish": "Polonês",
"Portuguese": "Português",
"Romanian": "romeno",
"Russian": "Russo",
"Serbian": "Sérvio",
"Spanish": "espanhol",
"Turkish": "Turco",
"Ukrainian": "ucraniano",
"Urdu": "urdu",
"Vietnamese": "Vietnamese",
"New Document Processed": "Novo documento processado",
"Extraction Failed": "Falha na extração",
"Triggers when a document extraction is successfully processed.": "Aciona quando uma extração de documento é processada com sucesso.",
"Triggers when a document extraction fails.": "Aciona quando a extração de documentos falha.",
"Markdown": "Markdown",
"\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click *": "\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click **Save**.\n\nThis single webhook will now send all events to Activepieces. This trigger will only activate for the **'extraction.failed'** event.\n "
}

View File

@@ -0,0 +1,77 @@
{
"An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.": "An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.",
"Enter your Extracta-ai API key": "Enter your Extracta-ai API key",
"Extract File Data": "Extract File Data",
"Upload File": "Upload File",
"Get Extraction Results": "Get Extraction Results",
"Upload a file and immediately receive extracted content": "Upload a file and immediately receive extracted content",
"Uploads document for extraction": "Uploads document for extraction",
"Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.": "Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.",
"File": "File",
"Extraction Name": "Extraction Name",
"Language": "Language",
"Fields to Extract": "Fields to Extract",
"Description": "Description",
"Has Table": "Has Table",
"Has Visuals": "Has Visuals",
"Handwritten Text Recognition": "Handwritten Text Recognition",
"Checkbox Recognition": "Checkbox Recognition",
"Long Document": "Long Document",
"Split PDF Pages": "Split PDF Pages",
"Specific Page Processing": "Specific Page Processing",
"Page From": "Page From",
"Page To": "Page To",
"Extraction ID": "Extraction ID",
"Batch ID": "Batch ID",
"File ID": "File ID",
"The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)": "The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)",
"A descriptive name for the extraction": "A descriptive name for the extraction",
"Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.": "Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.",
"Define the data fields you want to extract from documents": "Define the data fields you want to extract from documents",
"A description for the extraction": "A description for the extraction",
"Whether the document contains tables": "Whether the document contains tables",
"Whether the document contains charts, graphs, or diagrams": "Whether the document contains charts, graphs, or diagrams",
"Whether to recognize handwritten text": "Whether to recognize handwritten text",
"Whether to recognize checkboxes and their states": "Whether to recognize checkboxes and their states",
"Enable for very large or complex documents": "Enable for very large or complex documents",
"Treat each PDF page as a separate extraction unit": "Treat each PDF page as a separate extraction unit",
"Extract only a specified range of pages": "Extract only a specified range of pages",
"Starting page number (required if Specific Page Processing is enabled)": "Starting page number (required if Specific Page Processing is enabled)",
"Ending page number (required if Specific Page Processing is enabled)": "Ending page number (required if Specific Page Processing is enabled)",
"Unique identifier for the extraction": "Unique identifier for the extraction",
"Document file to upload (PDF, images, etc.)": "Document file to upload (PDF, images, etc.)",
"The ID of the batch to add files to (optional). If not provided, a new batch will be created.": "The ID of the batch to add files to (optional). If not provided, a new batch will be created.",
"The ID of the extraction": "The ID of the extraction",
"The ID of the batch": "The ID of the batch",
"The ID of the file (optional). If provided, filters results to only that file.": "The ID of the file (optional). If provided, filters results to only that file.",
"Multi-Lingual": "Multi-Lingual",
"Arabic": "Arabic",
"Bangla": "Bangla",
"Bulgarian": "Bulgarian",
"Croatian": "Croatian",
"Czech": "Czech",
"English": "English",
"Filipino": "Filipino",
"French": "French",
"German": "German",
"Hindi": "Hindi",
"Hungarian": "Hungarian",
"Italian": "Italian",
"Nepali": "Nepali",
"Polish": "Polish",
"Portuguese": "Portuguese",
"Romanian": "Romanian",
"Russian": "Russian",
"Serbian": "Serbian",
"Spanish": "Spanish",
"Turkish": "Turkish",
"Ukrainian": "Ukrainian",
"Urdu": "Urdu",
"Vietnamese": "Vietnamese",
"New Document Processed": "New Document Processed",
"Extraction Failed": "Extraction Failed",
"Triggers when a document extraction is successfully processed.": "Triggers when a document extraction is successfully processed.",
"Triggers when a document extraction fails.": "Triggers when a document extraction fails.",
"Markdown": "Markdown",
"\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click *": "\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click **Save**.\n\nThis single webhook will now send all events to Activepieces. This trigger will only activate for the **'extraction.failed'** event.\n "
}

View File

@@ -0,0 +1,77 @@
{
"An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.": "An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.",
"Enter your Extracta-ai API key": "Enter your Extracta-ai API key",
"Extract File Data": "Extract File Data",
"Upload File": "Upload File",
"Get Extraction Results": "Get Extraction Results",
"Upload a file and immediately receive extracted content": "Upload a file and immediately receive extracted content",
"Uploads document for extraction": "Uploads document for extraction",
"Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.": "Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.",
"File": "文件",
"Extraction Name": "Extraction Name",
"Language": "Language",
"Fields to Extract": "Fields to Extract",
"Description": "描述",
"Has Table": "Has Table",
"Has Visuals": "Has Visuals",
"Handwritten Text Recognition": "Handwritten Text Recognition",
"Checkbox Recognition": "Checkbox Recognition",
"Long Document": "Long Document",
"Split PDF Pages": "Split PDF Pages",
"Specific Page Processing": "Specific Page Processing",
"Page From": "Page From",
"Page To": "Page To",
"Extraction ID": "Extraction ID",
"Batch ID": "Batch ID",
"File ID": "File ID",
"The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)": "The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)",
"A descriptive name for the extraction": "A descriptive name for the extraction",
"Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.": "Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.",
"Define the data fields you want to extract from documents": "Define the data fields you want to extract from documents",
"A description for the extraction": "A description for the extraction",
"Whether the document contains tables": "Whether the document contains tables",
"Whether the document contains charts, graphs, or diagrams": "Whether the document contains charts, graphs, or diagrams",
"Whether to recognize handwritten text": "Whether to recognize handwritten text",
"Whether to recognize checkboxes and their states": "Whether to recognize checkboxes and their states",
"Enable for very large or complex documents": "Enable for very large or complex documents",
"Treat each PDF page as a separate extraction unit": "Treat each PDF page as a separate extraction unit",
"Extract only a specified range of pages": "Extract only a specified range of pages",
"Starting page number (required if Specific Page Processing is enabled)": "Starting page number (required if Specific Page Processing is enabled)",
"Ending page number (required if Specific Page Processing is enabled)": "Ending page number (required if Specific Page Processing is enabled)",
"Unique identifier for the extraction": "Unique identifier for the extraction",
"Document file to upload (PDF, images, etc.)": "Document file to upload (PDF, images, etc.)",
"The ID of the batch to add files to (optional). If not provided, a new batch will be created.": "The ID of the batch to add files to (optional). If not provided, a new batch will be created.",
"The ID of the extraction": "The ID of the extraction",
"The ID of the batch": "The ID of the batch",
"The ID of the file (optional). If provided, filters results to only that file.": "The ID of the file (optional). If provided, filters results to only that file.",
"Multi-Lingual": "Multi-Lingual",
"Arabic": "Arabic",
"Bangla": "Bangla",
"Bulgarian": "Bulgarian",
"Croatian": "Croatian",
"Czech": "Czech",
"English": "English",
"Filipino": "Filipino",
"French": "French",
"German": "German",
"Hindi": "Hindi",
"Hungarian": "Hungarian",
"Italian": "Italian",
"Nepali": "Nepali",
"Polish": "Polish",
"Portuguese": "Portuguese",
"Romanian": "Romanian",
"Russian": "Russian",
"Serbian": "Serbian",
"Spanish": "Spanish",
"Turkish": "Turkish",
"Ukrainian": "Ukrainian",
"Urdu": "Urdu",
"Vietnamese": "Vietnamese",
"New Document Processed": "New Document Processed",
"Extraction Failed": "Extraction Failed",
"Triggers when a document extraction is successfully processed.": "Triggers when a document extraction is successfully processed.",
"Triggers when a document extraction fails.": "Triggers when a document extraction fails.",
"Markdown": "Markdown",
"\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click *": "\nTo use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.\n\n1. **Login** to your Extracta.ai dashboard.\n2. Navigate to the **API** section from the side menu.\n3. Scroll down to **Webhook Settings**.\n4. Click **\"Create a new webhook\"** (or edit an existing one).\n5. Paste the following URL into the **Endpoint URL** field:\n ```text\n {{webhookUrl}}\n ```\n6. Click **Save**.\n\nThis single webhook will now send all events to Activepieces. This trigger will only activate for the **'extraction.failed'** event.\n "
}

View File

@@ -0,0 +1,23 @@
import { createPiece } from "@activepieces/pieces-framework";
import { extractaAiAuth } from "./lib/common";
import { extractFileData } from "./lib/actions/extract-file-data";
import { uploadFile } from "./lib/actions/upload-file";
import { getExtractionResults } from "./lib/actions/get-extraction-results";
import { newDocumentProcessed } from "./lib/triggers/new-document-processed";
import { extractionFailed } from "./lib/triggers/extraction-failed";
import { PieceCategory } from "@activepieces/shared";
export const extractaAi = createPiece({
displayName: "Extracta.ai",
description: "An AI document extraction & content analysis platform that transforms unstructured files (PDFs, images, URLs, etc.) into structured data.",
auth: extractaAiAuth,
minimumSupportedRelease: '0.36.1',
categories: [PieceCategory.ARTIFICIAL_INTELLIGENCE],
logoUrl: "https://cdn.activepieces.com/pieces/extracta-ai.png",
authors: ['fortunamide', 'onyedikachi-david'],
actions: [extractFileData, uploadFile, getExtractionResults],
triggers: [newDocumentProcessed, extractionFailed],
});

View File

@@ -0,0 +1,348 @@
import { createAction, Property } from '@activepieces/pieces-framework';
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
import { extractaAiAuth } from '../common/auth';
const SUPPORTED_FILE_TYPES = ['pdf', 'docx', 'doc', 'txt', 'jpeg', 'jpg', 'png', 'tiff', 'bmp'];
interface ExtractionOptions {
hasTable: boolean;
hasVisuals: boolean;
handwrittenTextRecognition: boolean;
checkboxRecognition: boolean;
longDocument: boolean;
splitPdfPages: boolean;
specificPageProcessing: boolean;
specificPageProcessingOptions?: {
from: number;
to: number;
};
}
export const extractFileData = createAction({
auth: extractaAiAuth,
name: 'extract_file_data',
displayName: 'Extract File Data',
description: 'Upload a file and immediately receive extracted content',
props: {
file: Property.File({
displayName: 'File',
description: 'The file to upload for extraction. Supported: PDF, images (JPEG, PNG, TIFF, BMP), Word docs (DOC, DOCX), text files (TXT)',
required: true
}),
name: Property.ShortText({
displayName: 'Extraction Name',
description: 'A descriptive name for the extraction',
required: true
}),
language: Property.StaticDropdown({
displayName: 'Language',
description:
"Document's language for accurate extraction. Extracta.ai supports multiple languages with advanced AI algorithms designed to parse linguistic nuances.",
required: true,
defaultValue: 'English',
options: {
options: [
{ label: 'Multi-Lingual', value: 'Multi-Lingual' },
{ label: 'Arabic', value: 'Arabic' },
{ label: 'Bangla', value: 'Bangla' },
{ label: 'Bulgarian', value: 'Bulgarian' },
{ label: 'Croatian', value: 'Croatian' },
{ label: 'Czech', value: 'Czech' },
{ label: 'English', value: 'English' },
{ label: 'Filipino', value: 'Filipino' },
{ label: 'French', value: 'French' },
{ label: 'German', value: 'German' },
{ label: 'Hindi', value: 'Hindi' },
{ label: 'Hungarian', value: 'Hungarian' },
{ label: 'Italian', value: 'Italian' },
{ label: 'Nepali', value: 'Nepali' },
{ label: 'Polish', value: 'Polish' },
{ label: 'Portuguese', value: 'Portuguese' },
{ label: 'Romanian', value: 'Romanian' },
{ label: 'Russian', value: 'Russian' },
{ label: 'Serbian', value: 'Serbian' },
{ label: 'Spanish', value: 'Spanish' },
{ label: 'Turkish', value: 'Turkish' },
{ label: 'Ukrainian', value: 'Ukrainian' },
{ label: 'Urdu', value: 'Urdu' },
{ label: 'Vietnamese', value: 'Vietnamese' }
]
}
}),
fields: Property.Array({
displayName: 'Fields to Extract',
description: 'Define the data fields you want to extract from documents',
required: true,
properties: {
key: Property.ShortText({
displayName: 'Field Key',
description:
'Unique identifier for this field (e.g., "name", "email")',
required: true
}),
type: Property.StaticDropdown({
displayName: 'Field Type',
description: 'Type of data to extract',
required: true,
defaultValue: 'string',
options: {
options: [
{ label: 'String', value: 'string' },
{ label: 'Object', value: 'object' },
{ label: 'Array of Strings', value: 'array_string' },
{ label: 'Array of Objects', value: 'array_object' }
]
}
}),
description: Property.LongText({
displayName: 'Description',
description: 'Describe what this field represents',
required: true
}),
example: Property.ShortText({
displayName: 'Example (Optional)',
description:
'Sample value to help the AI understand the expected format',
required: false
}),
objectProperties: Property.Json({
displayName: 'Object Properties',
description:
'For object types: Define nested fields as an array. Example: [{"key":"name","type":"string","description":"Full name","example":"John Doe"}]',
required: false
}),
arrayItemProperties: Property.Json({
displayName: 'Array Item Properties',
description:
'For array of objects: Define the structure of each array item as an array. Example: [{"key":"company","type":"string","description":"Company name","example":"Tech Corp"}]',
required: false
})
}
}),
description: Property.LongText({
displayName: 'Description',
description: 'A description for the extraction',
required: false
}),
hasTable: Property.Checkbox({
displayName: 'Has Table',
description: 'Whether the document contains tables',
required: false,
defaultValue: false
}),
hasVisuals: Property.Checkbox({
displayName: 'Has Visuals',
description: 'Whether the document contains charts, graphs, or diagrams',
required: false,
defaultValue: false
}),
handwrittenTextRecognition: Property.Checkbox({
displayName: 'Handwritten Text Recognition',
description: 'Whether to recognize handwritten text',
required: false,
defaultValue: false
}),
checkboxRecognition: Property.Checkbox({
displayName: 'Checkbox Recognition',
description: 'Whether to recognize checkboxes and their states',
required: false,
defaultValue: false
}),
longDocument: Property.Checkbox({
displayName: 'Long Document',
description: 'Enable for very large or complex documents',
required: false,
defaultValue: false
}),
splitPdfPages: Property.Checkbox({
displayName: 'Split PDF Pages',
description: 'Treat each PDF page as a separate extraction unit',
required: false,
defaultValue: false
}),
specificPageProcessing: Property.Checkbox({
displayName: 'Specific Page Processing',
description: 'Extract only a specified range of pages',
required: false,
defaultValue: false
}),
pageFrom: Property.Number({
displayName: 'Page From',
description:
'Starting page number (required if Specific Page Processing is enabled)',
required: false
}),
pageTo: Property.Number({
displayName: 'Page To',
description:
'Ending page number (required if Specific Page Processing is enabled)',
required: false
})
},
async run(context) {
const apiKey = context.auth;
const file = context.propsValue.file;
const fileExtension = file.filename.split('.').pop()?.toLowerCase();
if (!fileExtension || !SUPPORTED_FILE_TYPES.includes(fileExtension)) {
throw new Error(
`File type not supported. Supported types: ${SUPPORTED_FILE_TYPES.join(', ')}`
);
}
if (context.propsValue.specificPageProcessing) {
if (!context.propsValue.pageFrom || !context.propsValue.pageTo) {
throw new Error(
'Page From and Page To are required when Specific Page Processing is enabled'
);
}
if (context.propsValue.pageFrom > context.propsValue.pageTo) {
throw new Error('Page From must be less than or equal to Page To');
}
}
const options: ExtractionOptions = {
hasTable: context.propsValue.hasTable ?? false,
hasVisuals: context.propsValue.hasVisuals ?? false,
handwrittenTextRecognition:
context.propsValue.handwrittenTextRecognition ?? false,
checkboxRecognition: context.propsValue.checkboxRecognition ?? false,
longDocument: context.propsValue.longDocument ?? false,
splitPdfPages: context.propsValue.splitPdfPages ?? false,
specificPageProcessing: context.propsValue.specificPageProcessing ?? false
};
if (
context.propsValue.specificPageProcessing &&
context.propsValue.pageFrom &&
context.propsValue.pageTo
) {
options.specificPageProcessingOptions = {
from: context.propsValue.pageFrom,
to: context.propsValue.pageTo
};
}
if (!context.propsValue.fields || context.propsValue.fields.length === 0) {
throw new Error('At least one field must be defined');
}
const fieldKeys = context.propsValue.fields.map((f: any) => f.key);
const duplicates = fieldKeys.filter(
(key: string, index: number) => fieldKeys.indexOf(key) !== index
);
if (duplicates.length > 0) {
throw new Error(`Duplicate field keys found: ${duplicates.join(', ')}`);
}
const apiFields = (context.propsValue.fields || []).map((field: any) => {
const baseField: any = {
key: field.key,
description: field.description,
type:
field.type === 'array_string' || field.type === 'array_object'
? 'array'
: field.type
};
if (field.example) {
baseField.example = field.example;
}
if (field.type === 'object' && field.objectProperties) {
baseField.properties = field.objectProperties;
}
if (field.type === 'array_string') {
baseField.items = {
type: 'string',
example: field.example || 'example'
};
}
if (field.type === 'array_object' && field.arrayItemProperties) {
baseField.items = {
type: 'object',
properties: field.arrayItemProperties
};
}
return baseField;
});
const extractionDetails: any = {
name: context.propsValue.name,
language: context.propsValue.language,
fields: apiFields,
options
};
if (context.propsValue.description) {
extractionDetails.description = context.propsValue.description;
}
try {
const createResponse = await httpClient.sendRequest({
method: HttpMethod.POST,
url: 'https://api.extracta.ai/api/v1/createExtraction',
headers: {
'Content-Type': 'application/json',
Authorization: `Bearer ${apiKey.secret_text}`
},
body: { extractionDetails }
});
const extractionId = createResponse.body.extractionId;
if (!extractionId) {
throw new Error('No extractionId returned from createExtraction');
}
const formData = new FormData();
formData.append('extractionId', extractionId);
const blob = new Blob([Buffer.from(file.base64, 'base64')], {
type: file.extension ? `application/${file.extension}` : 'application/octet-stream'
});
formData.append('files', blob, file.filename);
const uploadResponse = await httpClient.sendRequest({
method: HttpMethod.POST,
url: 'https://api.extracta.ai/api/v1/uploadFiles',
headers: {
Authorization: `Bearer ${apiKey.secret_text}`
},
body: formData
});
return {
extractionId,
uploadResult: uploadResponse.body
};
} catch (error: any) {
if (error.response) {
const status = error.response.status;
const body = error.response.body;
switch (status) {
case 401:
throw new Error('Authentication failed. Please check your API key.');
case 403:
throw new Error(
'Access denied. Your API key may not have permission for this operation.'
);
case 429:
throw new Error('Rate limit exceeded. Please try again later.');
case 400:
throw new Error(
`Invalid request: ${body.message || JSON.stringify(body)}`
);
default:
throw new Error(
`API error (${status}): ${body.message || 'Unknown error'}`
);
}
}
throw new Error(`Request failed: ${error.message}`);
}
}
});

View File

@@ -0,0 +1,84 @@
import { createAction, Property } from '@activepieces/pieces-framework';
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
import { extractaAiAuth } from '../common/auth';
interface GetResultsBody {
extractionId: string;
batchId: string;
fileId?: string;
}
export const getExtractionResults = createAction({
auth: extractaAiAuth,
name: 'get_extraction_results',
displayName: 'Get Extraction Results',
description: 'Fetches successful data from extraction. Note: The API recommends a 2-second delay between requests to avoid rate-limiting.',
props: {
extractionId: Property.ShortText({
displayName: 'Extraction ID',
description: 'The ID of the extraction',
required: true,
}),
batchId: Property.ShortText({
displayName: 'Batch ID',
description: 'The ID of the batch',
required: true,
}),
fileId: Property.ShortText({
displayName: 'File ID',
description: 'The ID of the file (optional). If provided, filters results to only that file.',
required: false,
}),
},
async run(context) {
const apiKey = context.auth.secret_text;
const requestBody: GetResultsBody = {
extractionId: context.propsValue.extractionId,
batchId: context.propsValue.batchId,
};
if (context.propsValue.fileId) {
requestBody.fileId = context.propsValue.fileId;
}
try {
const response = await httpClient.sendRequest({
method: HttpMethod.POST,
url: 'https://api.extracta.ai/api/v1/getBatchResults',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${apiKey}`,
},
body: requestBody,
});
return response.body;
} catch (error: any) {
if (error.response) {
const status = error.response.status;
const body = error.response.body;
switch (status) {
case 401:
throw new Error('Authentication failed. Please check your API key.');
case 403:
throw new Error(
'Access denied. Your API key may not have permission for this operation.'
);
case 429:
throw new Error('Rate limit exceeded. Please try again later.');
case 400:
throw new Error(
`Invalid request: ${body.message || JSON.stringify(body)}`
);
default:
throw new Error(
`API error (${status}): ${body.message || 'Unknown error'}`
);
}
}
throw new Error(`Request failed: ${error.message}`);
}
},
});

View File

@@ -0,0 +1,92 @@
import { createAction, Property } from '@activepieces/pieces-framework';
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
import { extractaAiAuth } from '../common/auth';
const SUPPORTED_FILE_TYPES = ['pdf', 'docx', 'doc', 'txt', 'jpeg', 'jpg', 'png', 'tiff', 'bmp'];
export const uploadFile = createAction({
auth: extractaAiAuth,
name: 'upload_file',
displayName: 'Upload File',
description: 'Uploads document for extraction',
props: {
extractionId: Property.ShortText({
displayName: 'Extraction ID',
description: 'Unique identifier for the extraction',
required: true
}),
file: Property.File({
displayName: 'File',
description: 'Document file to upload (PDF, images, etc.)',
required: true
}),
batchId: Property.ShortText({
displayName: 'Batch ID',
description:
'The ID of the batch to add files to (optional). If not provided, a new batch will be created.',
required: false
})
},
async run(context) {
const apiKey = context.auth.secret_text;
const { file, extractionId, batchId } = context.propsValue;
const fileExtension = file.filename.split('.').pop()?.toLowerCase();
if (!fileExtension || !SUPPORTED_FILE_TYPES.includes(fileExtension)) {
throw new Error(
`File type not supported. Supported types: ${SUPPORTED_FILE_TYPES.join(', ')}`
);
}
const formData = new FormData();
formData.append('extractionId', extractionId);
if (batchId) {
formData.append('batchId', batchId);
}
const blob = new Blob([Buffer.from(file.base64, 'base64')], {
type: file.extension ? `application/${file.extension}` : 'application/octet-stream'
});
formData.append('files', blob, file.filename);
try {
const response = await httpClient.sendRequest({
method: HttpMethod.POST,
url: 'https://api.extracta.ai/api/v1/uploadFiles',
headers: {
Authorization: `Bearer ${apiKey}`
},
body: formData
});
return response.body;
} catch (error: any) {
if (error.response) {
const status = error.response.status;
const body = error.response.body;
switch (status) {
case 401:
throw new Error('Authentication failed. Please check your API key.');
case 403:
throw new Error(
'Access denied. Your API key may not have permission for this operation.'
);
case 429:
throw new Error('Rate limit exceeded. Please try again later.');
case 400:
throw new Error(
`Invalid request: ${body.message || JSON.stringify(body)}`
);
default:
throw new Error(
`API error (${status}): ${body.message || 'Unknown error'}`
);
}
}
throw new Error(`Request failed: ${error.message}`);
}
}
});

View File

@@ -0,0 +1,9 @@
import { PieceAuth } from '@activepieces/pieces-framework';
export const extractaAiAuth = PieceAuth.SecretText({
displayName: 'API Key',
required: true,
description: 'Enter your Extracta-ai API key',
});
export type ExtractaAiAuth = string;

View File

@@ -0,0 +1 @@
export * from './auth';

View File

@@ -0,0 +1,80 @@
import { createTrigger, Property, TriggerStrategy } from '@activepieces/pieces-framework';
import { extractaAiAuth } from '../common/auth';
import crypto from 'crypto';
export const extractionFailed = createTrigger({
auth: extractaAiAuth,
name: 'extraction_failed',
displayName: 'Extraction Failed',
description: 'Triggers when a document extraction fails.',
props: {
webhookInstructions: Property.MarkDown({
value: `
To use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.
1. **Login** to your Extracta.ai dashboard.
2. Navigate to the **API** section from the side menu.
3. Scroll down to **Webhook Settings**.
4. Click **"Create a new webhook"** (or edit an existing one).
5. Paste the following URL into the **Endpoint URL** field:
\`\`\`text
{{webhookUrl}}
\`\`\`
6. Click **Save**.
This single webhook will now send all events to Activepieces. This trigger will only activate for the **'extraction.failed'** event.
`,
}),
},
sampleData: {
event: 'extraction.failed',
result: [
{
extractionId: 'extraction_123',
batchId: 'batch_456',
fileId: 'file_789',
fileName: 'document.pdf',
status: 'failed',
error: 'Processing error occurred',
url: 'https://example.com/file.pdf',
},
],
},
type: TriggerStrategy.WEBHOOK,
async onEnable(context) {
// Does nothing
},
async onDisable(context) {
// Does nothing
},
async run(context) {
const apiKey = context.auth.secret_text;
const signatureHeader = context.payload.headers['x-webhook-signature'];
const body = context.payload.body as any;
if (signatureHeader && body.result) {
try {
const resultString = JSON.stringify(body.result);
const secretKey = apiKey.replace('E_AI_K_', '');
const expectedSignature = crypto
.createHmac('sha256', secretKey)
.update(resultString)
.digest('base64');
if (expectedSignature !== signatureHeader) {
console.warn('Extracta.ai webhook signature verification failed');
return [];
}
} catch (error) {
console.warn('Error verifying webhook signature:', error);
return [];
}
}
if (body.event === 'extraction.failed' && body.result) {
return [body.result];
}
return [];
},
});

View File

@@ -0,0 +1,83 @@
import { createTrigger, Property, TriggerStrategy } from '@activepieces/pieces-framework';
import { extractaAiAuth } from '../common/auth';
import crypto from 'crypto';
export const newDocumentProcessed = createTrigger({
auth: extractaAiAuth,
name: 'new_document_processed',
displayName: 'New Document Processed',
description: 'Triggers when a document extraction is successfully processed.',
props: {
webhookInstructions: Property.MarkDown({
value: `
To use this trigger, you need to manually set up a single webhook endpoint in your Extracta.ai account. This endpoint will receive all events, and Activepieces will filter for the correct one.
1. **Login** to your Extracta.ai dashboard.
2. Navigate to the **API** section from the side menu.
3. Scroll down to **Webhook Settings**.
4. Click **"Create a new webhook"** (or edit an existing one).
5. Paste the following URL into the **Endpoint URL** field:
\`\`\`text
{{webhookUrl}}
\`\`\`
6. Click **Save**.
This single webhook will now send all events to Activepieces. This trigger will only activate for the **'extraction.processed'** event.
`,
}),
},
sampleData: {
event: 'extraction.processed',
result: [
{
extractionId: 'extraction_123',
batchId: 'batch_456',
fileId: 'file_789',
fileName: 'document.pdf',
status: 'processed',
result: {
field1: 'value1',
field2: 'value2',
},
url: 'https://example.com/file.pdf',
},
],
},
type: TriggerStrategy.WEBHOOK,
async onEnable(context) {
// Does nothing
},
async onDisable(context) {
// Does nothing
},
async run(context) {
const apiKey = context.auth.secret_text;
const signatureHeader = context.payload.headers['x-webhook-signature'];
const body = context.payload.body as any;
if (signatureHeader && body.result) {
try {
const resultString = JSON.stringify(body.result);
const secretKey = apiKey.replace('E_AI_K_', '');
const expectedSignature = crypto
.createHmac('sha256', secretKey)
.update(resultString)
.digest('base64');
if (expectedSignature !== signatureHeader) {
console.warn('Extracta.ai webhook signature verification failed');
return [];
}
} catch (error) {
console.warn('Error verifying webhook signature:', error);
return [];
}
}
if (body.event === 'extraction.processed' && body.result) {
return [body.result];
}
return [];
},
});

View File

@@ -0,0 +1,20 @@
{
"extends": "../../../../tsconfig.base.json",
"compilerOptions": {
"module": "commonjs",
"forceConsistentCasingInFileNames": true,
"strict": true,
"importHelpers": true,
"noImplicitOverride": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true,
"noPropertyAccessFromIndexSignature": true
},
"files": [],
"include": [],
"references": [
{
"path": "./tsconfig.lib.json"
}
]
}

View File

@@ -0,0 +1,9 @@
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "../../../../dist/out-tsc",
"declaration": true,
"types": ["node"]
},
"include": ["src/**/*.ts"]
}