| | |
| | | title: cell.label, |
| | | }) |
| | | }) |
| | | card.backElements && card.backElements.forEach(cell => { |
| | | if (cell.eleType !== 'button') return |
| | | this.checkBtn(cell) |
| | | m.children.push({ |
| | | key: cell.uuid, |
| | | title: cell.label, |
| | | }) |
| | | }) |
| | | }) |
| | | } else if (item.type === 'carousel' || item.type === 'timeline') { |
| | | item.subcards.forEach(card => { |
| | |
| | | } |
| | | |
| | | getMiniStyle = (config) => { |
| | | console.log(config) |
| | | config.miniStyle = this.transferStyle(config.style) |
| | | |
| | | let traversal = (components) => { |
| | | return components.map(item => { |
| | | if (item.style) { |
| | | item.miniStyle = this.transferStyle(item.style) |
| | | } |
| | | if (item.headerStyle) { |
| | | item.miniHeaderStyle = this.transferStyle(item.headerStyle) |
| | | } |
| | | |
| | | if (item.action && item.action.length > 0) { |
| | | item.action = item.action.map(btn => { |
| | | btn.miniStyle = this.transferStyle(btn.style) |
| | | return btn |
| | | }) |
| | | } |
| | | |
| | | if (item.type === 'tabs') { |
| | | item.subtabs.forEach(tab => { |
| | | tab.components = traversal(tab.components) |
| | | }) |
| | | } else if (item.type === 'group') { |
| | | item.components = traversal(item.components) |
| | | } else if (['card', 'carousel', 'timeline'].includes(item.type) || (item.type === 'table' && item.subtype === 'tablecard')) { |
| | | item.subcards.forEach(card => { |
| | | card.miniStyle = this.transferStyle(card.style) |
| | | card.elements = card.elements.map(cell => { |
| | | cell.miniStyle = this.transferStyle(cell.style) |
| | | return cell |
| | | }) |
| | | }) |
| | | } else if (item.type === 'balcony') { |
| | | item.elements && item.elements.forEach(cell => { |
| | | cell.miniStyle = this.transferStyle(cell.style) |
| | | }) |
| | | } else if (item.type === 'menubar') { |
| | | item.subMenus = item.subMenus.map(menu => { |
| | | menu.miniStyle = this.transferStyle(menu.style) |
| | | return menu |
| | | }) |
| | | } else if (item.type === 'table' && item.subtype === 'normaltable') { |
| | | let getCols = (cols) => { |
| | | return cols.map(col => { |
| | | if (col.type === 'colspan') { |
| | | col.subcols = getCols(col.subcols || []) |
| | | } else if (col.type === 'custom' || col.type === 'action') { |
| | | col.elements = col.elements.map(cell => { |
| | | cell.miniStyle = this.transferStyle(cell.style) |
| | | return cell |
| | | }) |
| | | } |
| | | |
| | | return col |
| | | }) |
| | | } |
| | | |
| | | item.cols = getCols(item.cols) |
| | | } |
| | | |
| | | return item |
| | | }) |
| | | } |
| | | |
| | | config.components = traversal(config.components) |
| | | |
| | | return config |
| | | } |
| | | |
| | | transferStyle = (style = {}) => { |
| | | let _style = '' |
| | | Object.keys(style).forEach(key => { |
| | | if (['hShadow', 'vShadow', 'shadowBlur', 'shadowColor'].includes(key)) return |
| | | if (!style[key]) return |
| | | _style += `${key.replace(/[A-Z]/g, m => '-' + m.toLowerCase())}:${style[key]};` |
| | | }) |
| | | |
| | | return _style |
| | | } |
| | | |
| | | submitConfig = () => { |
| | | let config = fromJS(this.state.config).toJS() |
| | | |