Loading lib/jsduck/app.rb +2 −1 Original line number Diff line number Diff line Loading @@ -180,10 +180,11 @@ module JsDuck filename = @opts.output_dir+"/output/" + cls[:name] + (@opts.export ? ".json" : ".js") Logger.instance.log("Writing to #{filename} ...") data = exporter.export(cls) data[:html] = renderer.render(data) if @opts.export JsonDuck.write_json(filename, data) else data[:html] = renderer.render(data) data = exporter.compact(data) JsonDuck.write_jsonp(filename, cls[:name].gsub(/\./, "_"), data) end end Loading lib/jsduck/exporter.rb +23 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,29 @@ module JsDuck h end # removes extra data from export def compact(cls) cls.delete(:doc) cls[:members] = compact_members_group(cls[:members]) cls[:statics] = compact_members_group(cls[:statics]) cls end def compact_members_group(group) c_group = {} group.each_pair do |type, members| c_group[type] = members.map {|m| compact_member(m) } end c_group end def compact_member(m) m_copy = {} [:name, :tagname, :owner, :protected, :static, :deprecated, :required].each do |key| m_copy[key] = m[key] end m_copy end end end Loading
lib/jsduck/app.rb +2 −1 Original line number Diff line number Diff line Loading @@ -180,10 +180,11 @@ module JsDuck filename = @opts.output_dir+"/output/" + cls[:name] + (@opts.export ? ".json" : ".js") Logger.instance.log("Writing to #{filename} ...") data = exporter.export(cls) data[:html] = renderer.render(data) if @opts.export JsonDuck.write_json(filename, data) else data[:html] = renderer.render(data) data = exporter.compact(data) JsonDuck.write_jsonp(filename, cls[:name].gsub(/\./, "_"), data) end end Loading
lib/jsduck/exporter.rb +23 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,29 @@ module JsDuck h end # removes extra data from export def compact(cls) cls.delete(:doc) cls[:members] = compact_members_group(cls[:members]) cls[:statics] = compact_members_group(cls[:statics]) cls end def compact_members_group(group) c_group = {} group.each_pair do |type, members| c_group[type] = members.map {|m| compact_member(m) } end c_group end def compact_member(m) m_copy = {} [:name, :tagname, :owner, :protected, :static, :deprecated, :required].each do |key| m_copy[key] = m[key] end m_copy end end end