-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathelement.js
56 lines (55 loc) · 1011 Bytes
/
element.js
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
module.exports = {
name: "element",
ns: "react",
description: "Create a ReactElement",
phrases: {
active: "Creating ReactElement {input.tag}"
},
dependencies: {
npm: {
react: require('react')
}
},
ports: {
input: {
tag: {
title: "Tag",
type: "string"
},
props: {
title: "Props",
type: "object",
"default": {}
},
children: {
title: "Children",
type: "array",
required: false
}
},
output: {
component: {
title: "React Component",
type: "ReactElement"
}
}
},
fn: function element(input, $, output, state, done, cb, on, react) {
var r = function() {
var element = react.createElement(
$.tag,
$.props,
$.children
);
output({
component: $.create(element)
});
}.call(this);
return {
output: output,
state: state,
on: on,
return: r
};
}
}