noflo-swiss
Version:
Swiss Army Knife for NoFlo Programming
27 lines (18 loc) • 599 B
text/coffeescript
noflo = require("noflo")
owl = require("owl-deepcopy")
class DeepCopy extends noflo.Component
description: "deep (recursive) copy all values an object"
constructor: ->
=
in: new noflo.Port
=
out: new noflo.Port
.in.on "begingroup", (group) =>
.out.beginGroup(group)
.in.on "data", (data) =>
.out.send(owl.deepCopy(data))
.in.on "endgroup", =>
.out.endGroup()
.in.on "disconnect", =>
.out.disconnect()
exports.getComponent = -> new DeepCopy