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:
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"extends": ["../../../../.eslintrc.json"],
|
||||
"ignorePatterns": ["!**/*"],
|
||||
"overrides": [
|
||||
{
|
||||
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
|
||||
"rules": {}
|
||||
},
|
||||
{
|
||||
"files": ["*.ts", "*.tsx"],
|
||||
"rules": {}
|
||||
},
|
||||
{
|
||||
"files": ["*.js", "*.jsx"],
|
||||
"rules": {}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
# pieces-xml
|
||||
|
||||
This library was generated with [Nx](https://nx.dev).
|
||||
|
||||
## Running lint
|
||||
|
||||
Run `nx lint pieces-xml` to execute the lint via [ESLint](https://eslint.org/).
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"name": "@activepieces/piece-xml",
|
||||
"version": "0.1.10",
|
||||
"dependencies": {
|
||||
"json2xml": "0.1.3"
|
||||
}
|
||||
}
|
||||
51
activepieces-fork/packages/pieces/community/xml/project.json
Normal file
51
activepieces-fork/packages/pieces/community/xml/project.json
Normal file
@@ -0,0 +1,51 @@
|
||||
{
|
||||
"name": "pieces-xml",
|
||||
"$schema": "../../../../node_modules/nx/schemas/project-schema.json",
|
||||
"sourceRoot": "packages/pieces/community/xml/src",
|
||||
"projectType": "library",
|
||||
"targets": {
|
||||
"build": {
|
||||
"executor": "@nx/js:tsc",
|
||||
"outputs": [
|
||||
"{options.outputPath}"
|
||||
],
|
||||
"options": {
|
||||
"outputPath": "dist/packages/pieces/community/xml",
|
||||
"tsConfig": "packages/pieces/community/xml/tsconfig.lib.json",
|
||||
"packageJson": "packages/pieces/community/xml/package.json",
|
||||
"main": "packages/pieces/community/xml/src/index.ts",
|
||||
"assets": [
|
||||
"packages/pieces/community/xml/*.md",
|
||||
{
|
||||
"input": "packages/pieces/community/xml/src/i18n",
|
||||
"output": "./src/i18n",
|
||||
"glob": "**/!(i18n.json)"
|
||||
}
|
||||
],
|
||||
"buildableProjectDepsInPackageJsonType": "dependencies",
|
||||
"updateBuildableProjectDepsInPackageJson": true
|
||||
},
|
||||
"dependsOn": [
|
||||
"^build",
|
||||
"prebuild"
|
||||
]
|
||||
},
|
||||
"lint": {
|
||||
"executor": "@nx/eslint:lint",
|
||||
"outputs": [
|
||||
"{options.outputFile}"
|
||||
]
|
||||
},
|
||||
"prebuild": {
|
||||
"executor": "nx:run-commands",
|
||||
"options": {
|
||||
"cwd": "packages/pieces/community/xml",
|
||||
"command": "bun install --no-save --silent"
|
||||
},
|
||||
"dependsOn": [
|
||||
"^build"
|
||||
]
|
||||
}
|
||||
},
|
||||
"tags": []
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Extensible Markup Language for storing and transporting data": "Erweiterbare Markup Sprache für die Speicherung und Übertragung von Daten",
|
||||
"Convert JSON to XML": "JSON in XML konvertieren",
|
||||
"JSON": "JSON",
|
||||
"Attribute field": "Attributfeld",
|
||||
"Header": "Kopfzeile",
|
||||
"Field to add your tag's attributes": "Feld, um die Attribute des Tags hinzuzufügen",
|
||||
"Add XML header": "XML-Header hinzufügen"
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Extensible Markup Language for storing and transporting data": "Lenguaje de marcado extensible para almacenar y transportar datos",
|
||||
"Convert JSON to XML": "Convertir JSON a XML",
|
||||
"JSON": "JSON",
|
||||
"Attribute field": "Campo de atributo",
|
||||
"Header": "Cabecera",
|
||||
"Field to add your tag's attributes": "Campo para agregar los atributos de la etiqueta",
|
||||
"Add XML header": "Añadir encabezado XML"
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Extensible Markup Language for storing and transporting data": "Langue de balisage extensible pour le stockage et le transport des données",
|
||||
"Convert JSON to XML": "Convertir JSON en XML",
|
||||
"JSON": "JSON",
|
||||
"Attribute field": "Champ d'attribut",
|
||||
"Header": "En-tête",
|
||||
"Field to add your tag's attributes": "Champ pour ajouter les attributs de votre tag",
|
||||
"Add XML header": "Ajouter un en-tête XML"
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Extensible Markup Language for storing and transporting data": "データの保存と転送のための拡張可能なマークアップ言語",
|
||||
"Convert JSON to XML": "JSONをXMLに変換する",
|
||||
"JSON": "JSON",
|
||||
"Attribute field": "属性フィールド",
|
||||
"Header": "ヘッダー",
|
||||
"Field to add your tag's attributes": "タグの属性を追加するフィールド",
|
||||
"Add XML header": "XML ヘッダーを追加"
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Extensible Markup Language for storing and transporting data": "Extensible Markup Language voor het opslaan en transporteren van gegevens",
|
||||
"Convert JSON to XML": "JSON converteren naar XML",
|
||||
"JSON": "JSON",
|
||||
"Attribute field": "Attribuut veld",
|
||||
"Header": "Koptekst",
|
||||
"Field to add your tag's attributes": "Veld om attributen van uw tag toe te voegen",
|
||||
"Add XML header": "XML koptekst toevoegen"
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Extensible Markup Language for storing and transporting data": "Linguagem de Marcação Estendida para armazenar e transportar dados",
|
||||
"Convert JSON to XML": "Converter JSON para XML",
|
||||
"JSON": "JSON",
|
||||
"Attribute field": "Campo atributo",
|
||||
"Header": "Cabeçalho",
|
||||
"Field to add your tag's attributes": "Campo para adicionar atributos da sua etiqueta",
|
||||
"Add XML header": "Adicionar cabeçalho XML"
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"XML": "XML",
|
||||
"Extensible Markup Language for storing and transporting data": "Расширенный язык разметки для хранения и переноса данных",
|
||||
"Convert JSON to XML": "Конвертировать JSON в XML",
|
||||
"JSON": "JSON",
|
||||
"Attribute field": "Поле атрибута",
|
||||
"Header": "Заголовок",
|
||||
"Field to add your tag's attributes": "Поле для добавления атрибутов тэга",
|
||||
"Add XML header": "Добавить XML заголовок"
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Extensible Markup Language for storing and transporting data": "Extensible Markup Language for storing and transporting data",
|
||||
"Convert JSON to XML": "Convert JSON to XML",
|
||||
"JSON": "JSON",
|
||||
"Attribute field": "Attribute field",
|
||||
"Header": "Header",
|
||||
"Field to add your tag's attributes": "Field to add your tag's attributes",
|
||||
"Add XML header": "Add XML header"
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"XML": "XML",
|
||||
"Extensible Markup Language for storing and transporting data": "Extensible Markup Language for storing and transporting data",
|
||||
"Convert JSON to XML": "Convert JSON to XML",
|
||||
"JSON": "JSON",
|
||||
"Attribute field": "Attribute field",
|
||||
"Header": "Header",
|
||||
"Field to add your tag's attributes": "Field to add your tag's attributes",
|
||||
"Add XML header": "Add XML header"
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"Extensible Markup Language for storing and transporting data": "Extensible Markup Language for storing and transporting data",
|
||||
"Convert JSON to XML": "Convert JSON to XML",
|
||||
"JSON": "JSON",
|
||||
"Attribute field": "Attribute field",
|
||||
"Header": "Header",
|
||||
"Field to add your tag's attributes": "Field to add your tag's attributes",
|
||||
"Add XML header": "Add XML header"
|
||||
}
|
||||
16
activepieces-fork/packages/pieces/community/xml/src/index.ts
Normal file
16
activepieces-fork/packages/pieces/community/xml/src/index.ts
Normal file
@@ -0,0 +1,16 @@
|
||||
import { PieceAuth, createPiece } from '@activepieces/pieces-framework';
|
||||
import { PieceCategory } from '@activepieces/shared';
|
||||
import { convertJsonToXml } from './lib/actions/convert-json-to-xml';
|
||||
|
||||
export const xml = createPiece({
|
||||
displayName: 'XML',
|
||||
description: 'Extensible Markup Language for storing and transporting data',
|
||||
|
||||
minimumSupportedRelease: '0.30.0',
|
||||
logoUrl: 'https://cdn.activepieces.com/pieces/xml.png',
|
||||
categories: [PieceCategory.CORE],
|
||||
auth: PieceAuth.None(),
|
||||
authors: ["Willianwg","kishanprmr","AbdulTheActivePiecer","khaledmashaly","abuaboud"],
|
||||
actions: [convertJsonToXml],
|
||||
triggers: [],
|
||||
});
|
||||
@@ -0,0 +1,36 @@
|
||||
import { createAction, Property } from '@activepieces/pieces-framework';
|
||||
import js2xml from 'json2xml';
|
||||
|
||||
export const convertJsonToXml = createAction({
|
||||
name: 'convert-json-to-xml',
|
||||
displayName: 'Convert JSON to XML',
|
||||
description: 'Convert JSON to XML',
|
||||
props: {
|
||||
json: Property.Json({
|
||||
displayName: 'JSON',
|
||||
required: true,
|
||||
}),
|
||||
attributes_key: Property.ShortText({
|
||||
displayName: 'Attribute field',
|
||||
description: "Field to add your tag's attributes",
|
||||
required: false,
|
||||
}),
|
||||
header: Property.Checkbox({
|
||||
displayName: 'Header',
|
||||
description: 'Add XML header',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run(context) {
|
||||
const { json } = context.propsValue;
|
||||
|
||||
const attributes_key = context.propsValue.attributes_key
|
||||
? context.propsValue.attributes_key
|
||||
: 'attr';
|
||||
const header = context.propsValue.header
|
||||
? context.propsValue.header
|
||||
: false;
|
||||
|
||||
return js2xml(JSON.parse(JSON.stringify(json)), { attributes_key, header });
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"extends": "../../../../tsconfig.base.json",
|
||||
"files": [],
|
||||
"include": [],
|
||||
"references": [
|
||||
{
|
||||
"path": "./tsconfig.lib.json"
|
||||
}
|
||||
],
|
||||
"compilerOptions": {
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"strict": true,
|
||||
"noImplicitReturns": true,
|
||||
"noFallthroughCasesInSwitch": true
|
||||
}
|
||||
}
|
||||
@@ -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"]
|
||||
}
|
||||
Reference in New Issue
Block a user