// eslint-disable-next-line @typescript-eslint/no-unused-vars import { IPublicTypeComponentMetadata, IPublicTypeSnippet } from '@alilc/lowcode-types'; import pakageJson from '../../package.json'; const ContainerMeta: IPublicTypeComponentMetadata = { componentName: 'IframeContainer', title: 'IframeContainer', docUrl: '', screenshot: '', devMode: 'proCode', npm: { package: 'web-sdk-editor-material', version: pakageJson.version, exportName: 'IframeContainer', main: '', destructuring: true, subName: '', }, category: '布局', configure: { props: [ { title: 'iframe 地址', name: 'src', setter: { componentName: 'StringSetter', props: { placeholder: '请输入iframe地址', }, }, }, { title: '宽度', name: 'width', setter: { componentName: 'StringSetter', props: { placeholder: '请输入宽度', }, }, }, { title: '高度', name: 'height', setter: { componentName: 'StringSetter', props: { placeholder: '请输入高度', }, }, }, { title: 'url需要拼接参数', name: 'joinParams', setter: { componentName: 'RadioGroupSetter', props: { options: [ { label: '是', value: true, }, { label: '否', value: false, }, ], }, defaultValue: false, }, }, { title: { label: '是否soubi拼接token', tip: 'soubi报表默认将token拼接到url的#前', }, name: 'isSoubi', setter: { componentName: 'RadioGroupSetter', props: { options: [ { label: '是', value: true, }, { label: '否', value: false, }, ], }, defaultValue: false, }, condition: (target) => { return !!target.getProps().getPropValue('joinParams'); }, }, { name: 'params', title: { label: '拼接参数', tip: '参数直接拼接到url最后面' }, setter: { componentName: 'ArraySetter', props: { itemSetter: { componentName: 'ObjectSetter', props: { config: { items: [ { name: 'key', title: '参数名', setter: 'StringSetter', isRequired: true, defaultValue: 'key', }, { name: 'value', title: '参数值', setter: 'StringSetter', isRequired: true, defaultValue: 'value', }, ], }, }, }, }, }, condition: (target) => { return ( !!target.getProps().getPropValue('joinParams') && !target.getProps().getPropValue('isSoubi') ); }, }, ], supports: { style: true, }, component: {}, }, }; const snippets: IPublicTypeSnippet[] = [ { title: 'IframeContainer', screenshot: 'https://assets.souche.com/assets/sccimg/auctionSass/ec_iframe.png', schema: { componentName: 'IframeContainer', props: {}, }, }, ]; export default { ...ContainerMeta, snippets, };