import { ReactNode } from 'react';
import { BlockContext, useBlock } from '../Provider';
import {
BlocksDependenciesContext,
useBlocks,
} from '../Provider/blocksContext';
import { BaseBlock } from './BaseBlock';
import { BaseBlockConfig } from './types';
export interface ActionConfig extends BaseBlockConfig {
type: 'external' | 'internal' | 'inside' | 'event';
value: string;
text: ReactNode;
payload?: any;
}
export interface ActionProps extends ActionConfig {
events: BlockContext['events'];
Link: BlocksDependenciesContext['components']['Link'];
onClick?: () => void;
}
export const Action = ({
type,
value,
text,
payload,
className,
Link,
events,
onClick,
}: ActionProps) => {
switch (type) {
case 'event':
return (
);
case 'external':
case 'internal':
return (