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,47 @@
import { t } from 'i18next';
import { ApMarkdown } from '@/components/custom/markdown';
import { ScrollArea } from '@/components/ui/scroll-area';
import { PieceIconList } from '@/features/pieces/components/piece-icon-list';
import { Template, MarkdownVariant } from '@activepieces/shared';
type TemplateDetailsViewProps = {
template: Template;
};
export const TemplateDetailsView = ({ template }: TemplateDetailsViewProps) => {
return (
<div className="px-2">
<div className="mb-4 p-8 flex items-center justify-center gap-2 width-full bg-green-300 rounded-lg">
<PieceIconList
size="xxl"
trigger={template.flows![0].trigger}
maxNumberOfIconsToShow={3}
/>
</div>
<ScrollArea className="px-2 min-h-[156px] h-[calc(70vh-144px)] max-h-[536px]">
<div className="mb-4 text-lg font-medium font-black">
{template?.name}
</div>
<ApMarkdown
markdown={template?.description}
variant={MarkdownVariant.BORDERLESS}
/>
{template.blogUrl && (
<div className="mt-4">
{t('Read more about this template in')}{' '}
<a
href={template.blogUrl}
target="_blank"
className="text-primary underline underline-offset-4"
rel="noreferrer"
>
{t('this blog!')}
</a>
</div>
)}
</ScrollArea>
</div>
);
};