- 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>
171 lines
6.1 KiB
JSON
171 lines
6.1 KiB
JSON
{
|
|
"name": "server-api",
|
|
"$schema": "../../../node_modules/nx/schemas/project-schema.json",
|
|
"sourceRoot": "packages/server/api/src",
|
|
"projectType": "application",
|
|
"tags": [],
|
|
"implicitDependencies": ["engine"],
|
|
"targets": {
|
|
"build": {
|
|
"executor": "@nx/esbuild:esbuild",
|
|
"outputs": ["{options.outputPath}"],
|
|
"defaultConfiguration": "production",
|
|
"options": {
|
|
"external": ["@electric-sql/pglite"],
|
|
"main": "packages/server/api/src/main.ts",
|
|
"outputPath": "dist/packages/server/api",
|
|
"outputFileName": "main.js",
|
|
"tsConfig": "packages/server/api/tsconfig.app.json",
|
|
"platform": "node",
|
|
"format": ["cjs"],
|
|
"bundle": true,
|
|
"sourcemap": true,
|
|
"generatePackageJson": true,
|
|
"assets": [
|
|
{
|
|
"glob": "packages/server/api/README.md",
|
|
"input": ".",
|
|
"output": "."
|
|
},
|
|
"packages/server/api/src/assets"
|
|
]
|
|
},
|
|
"configurations": {
|
|
"development": {
|
|
"minify": false
|
|
},
|
|
"production": {
|
|
"minify": false
|
|
}
|
|
}
|
|
},
|
|
"serve": {
|
|
"executor": "@nx/js:node",
|
|
"options": {
|
|
"buildTarget": "server-api:build",
|
|
"host": "0.0.0.0"
|
|
},
|
|
"configurations": {
|
|
"production": {
|
|
"buildTarget": "server-api:build:production"
|
|
}
|
|
}
|
|
},
|
|
"lint": {
|
|
"executor": "@nx/eslint:lint",
|
|
"outputs": ["{options.outputFile}"],
|
|
"options": {
|
|
"lintFilePatterns": ["packages/server/api/**/*.ts"]
|
|
}
|
|
},
|
|
"test-unit": {
|
|
"executor": "@nx/jest:jest",
|
|
"outputs": ["{workspaceRoot}/coverage/{projectRoot}"],
|
|
"options": {
|
|
"jestConfig": "packages/server/api/jest.config.ts",
|
|
"passWithNoTests": false,
|
|
"bail": true,
|
|
"testPathPatterns": ["packages/server/api/test/unit"]
|
|
}
|
|
},
|
|
"test-ce-command": {
|
|
"executor": "@nx/jest:jest",
|
|
"outputs": ["{workspaceRoot}/coverage/{projectRoot}"],
|
|
"options": {
|
|
"jestConfig": "packages/server/api/jest.config.ts",
|
|
"passWithNoTests": false,
|
|
"bail": true,
|
|
"testPathPatterns": ["packages/server/api/test/integration/ce"]
|
|
}
|
|
},
|
|
"test-cloud-command": {
|
|
"executor": "@nx/jest:jest",
|
|
"outputs": ["{workspaceRoot}/coverage/{projectRoot}"],
|
|
"options": {
|
|
"jestConfig": "packages/server/api/jest.config.ts",
|
|
"passWithNoTests": false,
|
|
"bail": true,
|
|
"testPathPatterns": ["packages/server/api/test/integration/cloud"]
|
|
}
|
|
},
|
|
"test-ee-command": {
|
|
"executor": "@nx/jest:jest",
|
|
"outputs": ["{workspaceRoot}/coverage/{projectRoot}"],
|
|
"options": {
|
|
"jestConfig": "packages/server/api/jest.config.ts",
|
|
"passWithNoTests": false,
|
|
"bail": true,
|
|
"testPathPatterns": ["packages/server/api/test/integration/ee"]
|
|
}
|
|
},
|
|
"test-ee": {
|
|
"executor": "nx:run-commands",
|
|
"options": {
|
|
"commands": [
|
|
"export $(cat packages/server/api/.env.tests | xargs) && NODE_OPTIONS='--experimental-vm-modules' AP_EDITION=ee nx test-ee-command server-api --output-style stream-without-prefixes"
|
|
],
|
|
"parallel": false
|
|
}
|
|
},
|
|
"test-ce": {
|
|
"executor": "nx:run-commands",
|
|
"options": {
|
|
"commands": [
|
|
"nx build server-api",
|
|
"export $(cat packages/server/api/.env.tests | xargs) && NODE_OPTIONS='--experimental-vm-modules' AP_EDITION=ce nx test-ce-command server-api --output-style stream-without-prefixes"
|
|
],
|
|
"parallel": false
|
|
}
|
|
},
|
|
"test-cloud": {
|
|
"executor": "nx:run-commands",
|
|
"options": {
|
|
"commands": [
|
|
"nx build server-api",
|
|
"export $(cat packages/server/api/.env.tests | xargs) && NODE_OPTIONS='--experimental-vm-modules' AP_EDITION=cloud nx test-cloud-command server-api --output-style stream-without-prefixes"
|
|
],
|
|
"parallel": false
|
|
}
|
|
},
|
|
"test": {
|
|
"executor": "nx:run-commands",
|
|
"options": {
|
|
"commands": [
|
|
"nx test-ee server-api",
|
|
"nx test-ce server-api",
|
|
"nx test-cloud server-api"
|
|
],
|
|
"parallel": true
|
|
}
|
|
},
|
|
"test:docker": {
|
|
"command": "UID=\"$(id -u)\" GID=\"$(id -g)\" docker compose --profile full -f docker-compose.test.yml up --exit-code-from app --attach app"
|
|
},
|
|
"db": {
|
|
"executor": "nx:run-commands",
|
|
"options": {
|
|
"command": "ts-node -r tsconfig-paths/register -P packages/server/api/tsconfig.app.json ./node_modules/typeorm/cli.js"
|
|
}
|
|
},
|
|
"db-migration": {
|
|
"executor": "nx:run-commands",
|
|
"options": {
|
|
"command": "nx db server-api -- migration:generate -p -d packages/server/api/src/app/database/migration-data-source.ts packages/server/api/src/app/database/migration/postgres/{args.name} {args.flags}"
|
|
}
|
|
},
|
|
"check-migrations": {
|
|
"executor": "nx:run-commands",
|
|
"options": {
|
|
"commands": [
|
|
"echo '🔍 Checking for schema changes without migrations...'",
|
|
"export $(cat packages/server/api/.env.tests | xargs) && export AP_DEV_PIECES='' && export AP_ENVIRONMENT=dev && AP_EDITION=ce && nx db server-api -- migration:run -d packages/server/api/src/app/database/migration-data-source.ts > /dev/null 2>&1",
|
|
"echo 'Checking for schema drift...'",
|
|
"export $(cat packages/server/api/.env.tests | xargs) && export AP_DEV_PIECES='' && export AP_ENVIRONMENT=dev && AP_EDITION=ce && nx db-migration server-api --flags='--dryrun --check' || (echo '' && echo '❌ ERROR: Schema changes detected without corresponding migration!' && echo '' && echo 'The PR contains database schema changes without corresponding migration.' && echo 'Please generate a migration using:' && echo ' nx db-migration server-api --name=<DESCRIPTIVE_NAME>' && echo '' && echo 'For more information, see: docs/handbook/engineering/playbooks/database-migration.mdx' && echo '' && exit 1)",
|
|
"echo '✅ No missing migrations detected'"
|
|
],
|
|
"parallel": false
|
|
}
|
|
}
|
|
}
|
|
}
|