(key)
| 117 | } |
| 118 | |
| 119 | function parser(key) { |
| 120 | if (arguments.length === 0) { |
| 121 | return BaseParser; |
| 122 | } else if (typeof key === 'string' && arguments.length === 1) { |
| 123 | return parsers[toCase(key)]; |
| 124 | } |
| 125 | const data = nameProp(...arguments); |
| 126 | if (!data.id || !data.prop) return BaseParser; |
| 127 | const name = toCase(data.id); |
| 128 | const parser = data.prop; |
| 129 | const base = parser.merge === true ? parsers[name] : undefined; |
| 130 | parsers[name] = setPrototypeOf(parser, base || BaseParser); |
| 131 | maker[name] = creatorFactory(name); |
| 132 | parser.maker && extend(maker, parser.maker); |
| 133 | } |
| 134 | |
| 135 | function component(id, component) { |
| 136 | let name; |
no test coverage detected