neft
Version:
Universal Platform
29 lines (20 loc) • 630 B
text/coffeescript
'use strict'
utils = require 'src/utils'
module.exports = (File) -> (file) ->
uses = []
forNode = (node) ->
unless node instanceof File.Element.Tag
return
node.children.forEach forNode
if file.components[node.name]
component = node.name
node.name = 'use'
node.props['component'] = component
if node.name is 'use'
node.name = 'blank'
uses.push new File.Use file, node
forNode file.node
unless utils.isEmpty(uses)
file.uses = uses