Sha256: 233bcd1050ab28e6d5958464a384f10aad29e06c720da3676a5ec792802529f2

Contents?: true

Size: 1 KB

Versions: 69

Compression:

Stored size: 1 KB

Contents

<%
break_lines = lambda do |list, spaces = 2, separator = ","|
  list.join("#{separator}\n#{" " * spaces}") + separator
end

type_name = "#{@kit_name_pascal}Props"

props_types = @kit_props.map do |key, val|
  prop_name = key == "classname" ? "className" : key.camelize(:lower)
  prop_type = case val
              when "enum", "one_of" then "'option_1' | 'option_2'"
              when "boolean", "bool" then "Boolean"
              else "String"
              end

  "#{prop_name}?: #{prop_type}"
end
puts props_types.inspect

props_names = @kit_props.map { |key,| key == "classname" ? "className" : key.camelize(:lower) }

props_and_values = props_names.map { |prop| "<p>{`#{prop}: ${#{prop}}`}</p>" }
-%>
/* @flow */

import React from 'react'

type <%= type_name %> = {
  <%= break_lines.call(props_types) %>
}

const <%= @kit_name_pascal %> = ({
  <%= break_lines.call(props_names) %>
}: <%= type_name %>) => (
  <div>
    <%= break_lines.call(props_and_values, 4, "") %>
  </div>
)

export default <%= @kit_name_pascal %>

Version data entries

69 entries across 69 versions & 1 rubygems

Version Path
playbook_ui-5.2.0.pre.alpha15 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha14 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha13 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha12 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha11 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha10 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha9 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha8 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha7 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.3.0.pre.alpha1 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha6 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha5 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.3.0 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha4 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha3 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0.pre.alpha2 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.2.0 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.1.0 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.0.3 lib/generators/kit/templates/kit_jsx.erb.tt
playbook_ui-5.0.2 lib/generators/kit/templates/kit_jsx.erb.tt