Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | 12x 247x 247x 12x 163x 12x 198x 12x 179x 198x 179x | // @flow import type { ListNodeType, GeneratedCodeType, NodeType, CollectionCoreValueType, CollectionCoreSegmentType, SimpleListSegmentType } from '../types' const CompileListSegmentItem = (item: NodeType): GeneratedCodeType => { const Generator = require('./generator').default return Generator(item) } const CompileSimpleListSegment = ( segment: SimpleListSegmentType ): GeneratedCodeType => `[${segment.value.map(CompileListSegmentItem).join(', ')}]` const CompileListSegment = ( segment: CollectionCoreSegmentType ): GeneratedCodeType => segment.name === 'simpleList' ? CompileSimpleListSegment(segment) : CompileListSegmentItem(segment.value) const CompileListSegments = ( segments: CollectionCoreValueType ): GeneratedCodeType => segments.reduce( (a: GeneratedCodeType, b: CollectionCoreSegmentType): GeneratedCodeType => `${a}.concat(_.__spread__(${CompileListSegment(b)}))`, '' ) export default ({ value }: ListNodeType): GeneratedCodeType => `[]${CompileListSegments(value)}` |