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,18 @@
{
"extends": ["../../../../.eslintrc.json"],
"ignorePatterns": ["!**/*"],
"overrides": [
{
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
"rules": {}
},
{
"files": ["*.ts", "*.tsx"],
"rules": {}
},
{
"files": ["*.js", "*.jsx"],
"rules": {}
}
]
}

View File

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

View File

@@ -0,0 +1,4 @@
{
"name": "@activepieces/piece-simplepdf",
"version": "1.0.10"
}

View File

@@ -0,0 +1,57 @@
{
"name": "pieces-simplepdf",
"$schema": "../../../../node_modules/nx/schemas/project-schema.json",
"sourceRoot": "packages/pieces/community/simplepdf/src",
"projectType": "library",
"targets": {
"build": {
"executor": "@nx/js:tsc",
"outputs": [
"{options.outputPath}"
],
"options": {
"outputPath": "dist/packages/pieces/community/simplepdf",
"tsConfig": "packages/pieces/community/simplepdf/tsconfig.lib.json",
"packageJson": "packages/pieces/community/simplepdf/package.json",
"main": "packages/pieces/community/simplepdf/src/index.ts",
"assets": [
"packages/pieces/community/simplepdf/*.md",
{
"input": "packages/pieces/community/simplepdf/src/i18n",
"output": "./src/i18n",
"glob": "**/!(i18n.json)"
}
],
"buildableProjectDepsInPackageJsonType": "dependencies",
"updateBuildableProjectDepsInPackageJson": true
},
"dependsOn": [
"^build",
"prebuild"
]
},
"publish": {
"command": "node tools/scripts/publish.mjs pieces-simplepdf {args.ver} {args.tag}",
"dependsOn": [
"build"
]
},
"lint": {
"executor": "@nx/eslint:lint",
"outputs": [
"{options.outputFile}"
]
},
"prebuild": {
"executor": "nx:run-commands",
"options": {
"cwd": "packages/pieces/community/simplepdf",
"command": "bun install --no-save --silent"
},
"dependsOn": [
"^build"
]
}
},
"tags": []
}

View File

@@ -0,0 +1,7 @@
{
"PDF editing and generation tool": "PDF-Bearbeitung und Generierung",
"New Submission": "Neue Einreichung",
"Triggers when a form receives a new submission": "Wird ausgelöst, wenn ein Formular eine neue Einreichung erhält",
"Markdown": "Markdown",
"\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n": "\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n"
}

View File

@@ -0,0 +1,7 @@
{
"PDF editing and generation tool": "Herramienta de edición y generación de PDF",
"New Submission": "Nuevo envío",
"Triggers when a form receives a new submission": "Dispara cuando un formulario recibe un nuevo envío",
"Markdown": "Markdown",
"\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n": "\n- Pegar esta URL en el punto final de integración de webhook:\n```text\n{{webhookUrl}}\n```\n- Haga clic en actualizar (mantener otros ajustes sin cambios)\n<br>\n<br>\n\n_[Leer más sobre la configuración de webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n"
}

View File

@@ -0,0 +1,7 @@
{
"PDF editing and generation tool": "Outil d'édition et de génération de PDF",
"New Submission": "Nouvelle soumission",
"Triggers when a form receives a new submission": "Déclenche lorsqu'un formulaire reçoit une nouvelle soumission",
"Markdown": "Markdown",
"\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n": "\n- Coller cette URL dans la fin d'intégration du webhook :\n```text\n{{webhookUrl}}\n```\n- Cliquer sur mettre à jour (garder les autres paramètres inchangés)\n<br>\n<br>\n\n_[En savoir plus sur la configuration des webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n"
}

View File

@@ -0,0 +1,7 @@
{
"PDF editing and generation tool": "PDF編集と生成ツール",
"New Submission": "新しい提出",
"Triggers when a form receives a new submission": "フォームが新しい提出物を受け取ったときにトリガーします",
"Markdown": "Markdown",
"\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n": "\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n"
}

View File

@@ -0,0 +1,7 @@
{
"PDF editing and generation tool": "PDF bewerken en generatietool",
"New Submission": "Nieuwe inzending",
"Triggers when a form receives a new submission": "Triggert wanneer een formulier een nieuwe uitwerking ontvangt",
"Markdown": "Markdown",
"\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n": "\n- Plak deze URL in het webhook integratie eindpunt:\n```text\n{{webhookUrl}}\n``\n- Klik op update (behoud andere instellingen ongewijzigd)\n<br>\n<br>\n\n_[Lees meer over het configureren van webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n"
}

View File

@@ -0,0 +1,7 @@
{
"PDF editing and generation tool": "Ferramenta de edição e geração de PDF",
"New Submission": "Nova Submissão",
"Triggers when a form receives a new submission": "Aciona quando um formulário recebe uma nova submissão",
"Markdown": "Markdown",
"\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n": "\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n"
}

View File

@@ -0,0 +1,8 @@
{
"SimplePDF": "SimplePDF",
"PDF editing and generation tool": "Инструмент для редактирования и генерации PDF",
"New Submission": "Новая заявка",
"Triggers when a form receives a new submission": "Срабатывает при получении формы",
"Markdown": "Markdown",
"\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n": "\n- Вставьте этот URL в конечную точку интеграции webhook:\n```text\n{{webhookUrl}}\n```\n- нажмите на обновление (сохранить другие настройки)\n<br>\n<br>\n\n_[Подробнее о настройке webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n"
}

View File

@@ -0,0 +1,7 @@
{
"PDF editing and generation tool": "PDF editing and generation tool",
"New Submission": "New Submission",
"Triggers when a form receives a new submission": "Triggers when a form receives a new submission",
"Markdown": "Markdown",
"\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n": "\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n"
}

View File

@@ -0,0 +1,8 @@
{
"SimplePDF": "SimplePDF",
"PDF editing and generation tool": "PDF editing and generation tool",
"New Submission": "New Submission",
"Triggers when a form receives a new submission": "Triggers when a form receives a new submission",
"Markdown": "Markdown",
"\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n": "\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n"
}

View File

@@ -0,0 +1,7 @@
{
"PDF editing and generation tool": "PDF editing and generation tool",
"New Submission": "New Submission",
"Triggers when a form receives a new submission": "Triggers when a form receives a new submission",
"Markdown": "Markdown",
"\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n": "\n- Paste this URL in the webhook integration endpoint:\n```text\n{{webhookUrl}}\n```\n- Click update (keep other settings unchanged)\n<br>\n<br>\n\n_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_\n"
}

View File

@@ -0,0 +1,15 @@
import { createPiece, PieceAuth } from '@activepieces/pieces-framework';
import { PieceCategory } from '@activepieces/shared';
import { simplePDFNewSubmission } from './lib/triggers/new-submission';
export const simplepdf = createPiece({
displayName: 'SimplePDF',
description: 'PDF editing and generation tool',
auth: PieceAuth.None(),
minimumSupportedRelease: '0.30.0',
logoUrl: 'https://cdn.activepieces.com/pieces/simplepdf.png',
authors: ["bendersej","kishanprmr","khaledmashaly","abuaboud"],
categories: [PieceCategory.CONTENT_AND_FILES],
actions: [],
triggers: [simplePDFNewSubmission],
});

View File

@@ -0,0 +1,58 @@
import {
createTrigger,
PieceAuth,
Property,
TriggerStrategy,
} from '@activepieces/pieces-framework';
const markdown = `
- Paste this URL in the webhook integration endpoint:
\`\`\`text
{{webhookUrl}}
\`\`\`
- Click update (keep other settings unchanged)
<br>
<br>
_[Read more about configuring webhooks](https://simplepdf.eu/help/how-to/configure-webhooks-pdf-form-submissions)_
`;
export const simplePDFNewSubmission = createTrigger({
name: 'new-submission',
displayName: 'New Submission',
auth: PieceAuth.None(),
description: 'Triggers when a form receives a new submission',
props: {
md: Property.MarkDown({
value: markdown,
}),
},
type: TriggerStrategy.WEBHOOK,
sampleData: {
document: {
id: 'b7615a68-9e1f-4eac-bd20-5e80632a4d9e',
name: 'your_document.pdf',
},
submission: {
id: '80146d5b-a068-490f-8eb9-fe393ba11396',
submitted_at: '2023-06-04T11:54:58.995Z',
url: 'https://cdn.simplepdf.eu/simple-pdf/assets/webhooks-playground.pdf',
},
context: {
environment: 'production',
customer_id: '123',
},
},
async onEnable(context) {
// Empty
},
async onDisable(context) {
// Empty
},
async run(context) {
const payloadBody = context.payload.body as
| Record<string, unknown>
| undefined;
return [payloadBody?.['data'] ?? {}];
},
});

View File

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

View File

@@ -0,0 +1,11 @@
{
"extends": "./tsconfig.json",
"compilerOptions": {
"module": "commonjs",
"outDir": "../../../../dist/out-tsc",
"declaration": true,
"types": ["node"]
},
"exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"],
"include": ["src/**/*.ts"]
}