import type {
ContentKitDescendantElement,
ContentKitInlineElement,
ContentKitRootElement,
} from '@gitbook/api';
import React from 'react';
import { ElementBlock } from './ElementBlock';
import { ElementBox } from './ElementBox';
import { ElementButton } from './ElementButton';
import { ElementCard } from './ElementCard';
import { ElementCodeBlock } from './ElementCodeBlock';
import { ElementDivider } from './ElementDivider';
import { ElementIcon } from './ElementIcon';
import { ElementImage } from './ElementImage';
import { ElementInput } from './ElementInput';
import { ElementMarkdown } from './ElementMarkdown';
import { ElementModal } from './ElementModal';
import { ElementStack } from './ElementStack';
import { ElementText } from './ElementText';
import { ElementTextInput } from './ElementTextInput';
import { ElementWebframe } from './ElementWebframe';
import type { ContentKitServerContext } from './types';
export function Element(props: {
element: ContentKitDescendantElement | ContentKitRootElement | ContentKitInlineElement;
context: ContentKitServerContext;
state: object;
}) {
const { element, context, state } = props;
switch (element.type) {
case 'text':
return (
ContentKit element not implemented "{element.type}":{' '}
{JSON.stringify(element, null, 2)}
);
}
}
function Elements(props: {
elements: string | Array