playbook_ui 7.0.1 → 7.1.0.pre.alpha1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/pb_kits/playbook/data/menu.yml +4 -3
- data/app/pb_kits/playbook/pb_bar_graph/bar_graph.rb +0 -1
- data/app/pb_kits/playbook/pb_button/_button_mixins.scss +1 -0
- data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.jsx +3 -3
- data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.scss +82 -90
- data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar_dark.scss +57 -0
- data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar_mixins.scss +27 -0
- data/app/pb_kits/playbook/pb_button_toolbar/button_toolbar.rb +4 -2
- data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_default.html.erb +17 -7
- data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_default.jsx +32 -9
- data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_secondary.html.erb +18 -7
- data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_secondary.jsx +37 -9
- data/app/pb_kits/playbook/pb_button_toolbar/docs/example.yml +3 -7
- data/app/pb_kits/playbook/pb_button_toolbar/docs/index.js +0 -2
- data/app/pb_kits/playbook/pb_date_picker/_date_picker.html.erb +1 -2
- data/app/pb_kits/playbook/pb_date_picker/_date_picker.jsx +1 -3
- data/app/pb_kits/playbook/pb_date_picker/date_picker.rb +3 -2
- data/app/pb_kits/playbook/pb_date_picker/date_picker_helper.js +34 -32
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default_date.html.erb +1 -2
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default_date.jsx +1 -2
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default_date.md +1 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_format.html.erb +4 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_format.jsx +4 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_input.html.erb +9 -9
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_input.jsx +8 -8
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_input.md +3 -1
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range.html.erb +1 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range.jsx +1 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +0 -4
- data/app/pb_kits/playbook/pb_date_picker/docs/index.js +0 -2
- data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.html.erb +8 -14
- data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.jsx +122 -39
- data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.scss +33 -2
- data/app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb +44 -9
- data/app/pb_kits/playbook/pb_date_range_inline/docs/_date_range_inline_default.html.erb +14 -1
- data/app/pb_kits/playbook/pb_date_range_inline/docs/_date_range_inline_default.jsx +45 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.html.erb +3 -2
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.jsx +29 -15
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.scss +10 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_close.html.erb +21 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_close.jsx +38 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_default.html.erb +2 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_default.jsx +1 -2
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_multi_line.html.erb +1 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_multi_line.jsx +1 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_multi_line_dark.html.erb +1 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_multi_line_dark.jsx +1 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/fixed_confirmation_toast.rb +7 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/index.js +18 -0
- data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +1 -1
- data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +1 -1
- data/app/pb_kits/playbook/pb_form/docs/_form_simple_form.html.erb +3 -3
- data/app/pb_kits/playbook/pb_form/docs/_form_simple_form_validate.html.erb +3 -3
- data/app/pb_kits/playbook/pb_form/form_builder/date_picker_field.rb +1 -0
- data/app/pb_kits/playbook/pb_line_graph/line_graph.rb +0 -1
- data/app/pb_kits/playbook/pb_popover/_popover.scss +6 -4
- data/app/pb_kits/playbook/pb_popover/index.js +3 -1
- data/app/pb_kits/playbook/pb_progress_step/_progress_step.jsx +3 -0
- data/app/pb_kits/playbook/pb_progress_step/_progress_step.scss +168 -33
- data/app/pb_kits/playbook/pb_progress_step/_progress_step_item.html.erb +3 -1
- data/app/pb_kits/playbook/pb_progress_step/_progress_step_item.jsx +10 -8
- data/app/pb_kits/playbook/pb_progress_step/docs/_description.md +1 -1
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_default.html.erb +14 -16
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_default.jsx +6 -3
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_tracker.html.erb +17 -1
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_tracker.jsx +17 -1
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_vertical.jsx +10 -3
- data/app/pb_kits/playbook/pb_progress_step/progress_step.rb +11 -1
- data/app/pb_kits/playbook/pb_progress_step/progress_step_item.rb +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_action_middle.html.erb +34 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_action_middle.jsx +68 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_action_middle.md +2 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_icon_buttons.html.erb +61 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_icon_buttons.jsx +89 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_icon_buttons.md +1 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_one_action.html.erb +34 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_one_action.jsx +68 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_one_action.md +2 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_two_actions.html.erb +43 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_two_actions.jsx +80 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_two_actions.md +1 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_two_plus_actions.html.erb +34 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_two_plus_actions.jsx +63 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_two_plus_actions.md +1 -0
- data/app/pb_kits/playbook/pb_table/docs/example.yml +12 -0
- data/app/pb_kits/playbook/pb_table/docs/index.js +6 -0
- data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.scss +5 -5
- data/app/pb_kits/playbook/pb_toggle/docs/_toggle_options.html.erb +10 -0
- data/app/pb_kits/playbook/pb_toggle/docs/example.yml +1 -0
- data/app/pb_kits/playbook/pb_toggle/toggle.rb +4 -1
- data/app/pb_kits/playbook/pb_typeahead/_typeahead.html.erb +24 -20
- data/app/pb_kits/playbook/pb_typeahead/_typeahead.jsx +19 -1
- data/app/pb_kits/playbook/pb_typeahead/components/MultiValue.jsx +8 -1
- data/app/pb_kits/playbook/pb_typeahead/components/Option.jsx +21 -13
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_default.html.erb +1 -1
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_context_dark.html.erb +1 -1
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.html.erb +25 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.jsx +0 -3
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.md +8 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async.html.erb +30 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async.md +11 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_users.html.erb +25 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_users.jsx +0 -3
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_users.md +1 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/example.yml +3 -0
- data/app/pb_kits/playbook/pb_typeahead/typeahead.rb +24 -1
- data/app/pb_kits/playbook/react_rails_kits.js +1 -0
- data/app/pb_kits/playbook/vendor.js +3 -0
- data/lib/playbook/version.rb +1 -1
- metadata +32 -28
- data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical.html.erb +0 -11
- data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical.jsx +0 -29
- data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical_secondary.html.erb +0 -11
- data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical_secondary.jsx +0 -34
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_allow_input.html.erb +0 -4
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_allow_input.jsx +0 -13
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_allow_input.md +0 -1
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_dark.html.erb +0 -4
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_dark.jsx +0 -13
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_summary.jsx +0 -45
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_summary.jsx +0 -27
- data/lib/generators/kit/USAGE +0 -5
- data/lib/generators/kit/kit_generator.rb +0 -95
- data/lib/generators/kit/templates/kit_example_rails.erb.tt +0 -1
- data/lib/generators/kit/templates/kit_example_react.erb.tt +0 -10
- data/lib/generators/kit/templates/kit_example_yml.erb.tt +0 -9
- data/lib/generators/kit/templates/kit_html.erb.tt +0 -7
- data/lib/generators/kit/templates/kit_js.erb.tt +0 -1
- data/lib/generators/kit/templates/kit_jsx.erb.tt +0 -68
- data/lib/generators/kit/templates/kit_ruby.erb.tt +0 -11
- data/lib/generators/kit/templates/kit_ruby_spec.erb.tt +0 -11
- data/lib/generators/kit/templates/kit_scss.erb +0 -3
- data/lib/tasks/pb_release.rake +0 -88
- data/lib/tasks/playbook_tasks.rake +0 -26
@@ -1,11 +0,0 @@
|
|
1
|
-
<div class="pb--doc-demo-row">
|
2
|
-
<div>
|
3
|
-
<%= pb_rails("button_toolbar", props: { orientation: "vertical", connected: true }) do %>
|
4
|
-
<%= pb_rails("button", props: { text: "Field" }) %>
|
5
|
-
<%= pb_rails("button", props: { text: "Retail"}) %>
|
6
|
-
<%= pb_rails("button", props: { text: "Event"}) %>
|
7
|
-
<%= pb_rails("button", props: { text: "Training"}) %>
|
8
|
-
<%= pb_rails("button", props: { text: "Not Working"}) %>
|
9
|
-
<% end %>
|
10
|
-
</div>
|
11
|
-
</div>
|
@@ -1,29 +0,0 @@
|
|
1
|
-
import React from 'react'
|
2
|
-
import { Button, ButtonToolbar } from '../..'
|
3
|
-
|
4
|
-
const ButtonToolbarVertical = () => (
|
5
|
-
<div>
|
6
|
-
<ButtonToolbar
|
7
|
-
connected
|
8
|
-
orientation="vertical"
|
9
|
-
>
|
10
|
-
<Button
|
11
|
-
text="Field"
|
12
|
-
/>
|
13
|
-
<Button
|
14
|
-
text="Retail"
|
15
|
-
/>
|
16
|
-
<Button
|
17
|
-
text="Event"
|
18
|
-
/>
|
19
|
-
<Button
|
20
|
-
text="Training"
|
21
|
-
/>
|
22
|
-
<Button
|
23
|
-
text="Not Working"
|
24
|
-
/>
|
25
|
-
</ButtonToolbar>
|
26
|
-
</div>
|
27
|
-
)
|
28
|
-
|
29
|
-
export default ButtonToolbarVertical
|
data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical_secondary.html.erb
DELETED
@@ -1,11 +0,0 @@
|
|
1
|
-
<div class="pb--doc-demo-row">
|
2
|
-
<div>
|
3
|
-
<%= pb_rails("button_toolbar", props: { orientation: "vertical", connected: true }) do %>
|
4
|
-
<%= pb_rails("button", props: { text: "Field", variant: "secondary" }) %>
|
5
|
-
<%= pb_rails("button", props: { text: "Retail", variant: "secondary" }) %>
|
6
|
-
<%= pb_rails("button", props: { text: "Event", variant: "secondary" }) %>
|
7
|
-
<%= pb_rails("button", props: { text: "Training", variant: "secondary" }) %>
|
8
|
-
<%= pb_rails("button", props: { text: "Not Working", variant: "secondary" }) %>
|
9
|
-
<% end %>
|
10
|
-
</div>
|
11
|
-
</div>
|
@@ -1,34 +0,0 @@
|
|
1
|
-
import React from 'react'
|
2
|
-
import { Button, ButtonToolbar } from '../..'
|
3
|
-
|
4
|
-
const ButtonToolbarVerticalSecondary = () => (
|
5
|
-
<div>
|
6
|
-
<ButtonToolbar
|
7
|
-
connected
|
8
|
-
orientation="vertical"
|
9
|
-
>
|
10
|
-
<Button
|
11
|
-
text="Field"
|
12
|
-
variant="secondary"
|
13
|
-
/>
|
14
|
-
<Button
|
15
|
-
text="Retail"
|
16
|
-
variant="secondary"
|
17
|
-
/>
|
18
|
-
<Button
|
19
|
-
text="Event"
|
20
|
-
variant="secondary"
|
21
|
-
/>
|
22
|
-
<Button
|
23
|
-
text="Training"
|
24
|
-
variant="secondary"
|
25
|
-
/>
|
26
|
-
<Button
|
27
|
-
text="Not Working"
|
28
|
-
variant="secondary"
|
29
|
-
/>
|
30
|
-
</ButtonToolbar>
|
31
|
-
</div>
|
32
|
-
)
|
33
|
-
|
34
|
-
export default ButtonToolbarVerticalSecondary
|
@@ -1 +0,0 @@
|
|
1
|
-
By default the date picker input can only be modified by picking a date on the calendar. This prop allows your users to manually type in the date.
|
@@ -1,45 +0,0 @@
|
|
1
|
-
/* @flow */
|
2
|
-
|
3
|
-
import React from 'react'
|
4
|
-
import { Body, Flex, FlexItem, Icon } from '../..'
|
5
|
-
|
6
|
-
const TypeaheadWithPillsAsyncSummary = () => {
|
7
|
-
return (
|
8
|
-
<>
|
9
|
-
<Flex
|
10
|
-
marginBottom="lg"
|
11
|
-
vertical="center"
|
12
|
-
>
|
13
|
-
<FlexItem>
|
14
|
-
<Body
|
15
|
-
color="light"
|
16
|
-
>
|
17
|
-
<Icon
|
18
|
-
icon="info-circle"
|
19
|
-
marginRight="xs"
|
20
|
-
/>
|
21
|
-
</Body>
|
22
|
-
</FlexItem>
|
23
|
-
<FlexItem>
|
24
|
-
<Body
|
25
|
-
color="light"
|
26
|
-
>
|
27
|
-
{'If the data field '}
|
28
|
-
<code>{'imageUrl'}</code>
|
29
|
-
{' is present, '}
|
30
|
-
<code>{'FormPill'}</code>
|
31
|
-
{' will receive that field as a prop and display the image. '}
|
32
|
-
<br />
|
33
|
-
{'Additionally, you can also leverage the callback prop: '}
|
34
|
-
<code>{'onMultiValueClick'}</code>
|
35
|
-
{' to perform custom work when a '}
|
36
|
-
<code>{'MultiValue'}</code>
|
37
|
-
{' item is clicked.'}
|
38
|
-
</Body>
|
39
|
-
</FlexItem>
|
40
|
-
</Flex>
|
41
|
-
</>
|
42
|
-
)
|
43
|
-
}
|
44
|
-
|
45
|
-
export default TypeaheadWithPillsAsyncSummary
|
@@ -1,27 +0,0 @@
|
|
1
|
-
// @flow
|
2
|
-
|
3
|
-
import React from 'react'
|
4
|
-
import { Body, Icon } from '../..'
|
5
|
-
|
6
|
-
const TypeaheadWithPillsSummary = () => {
|
7
|
-
return (
|
8
|
-
<>
|
9
|
-
<Body
|
10
|
-
color="light"
|
11
|
-
marginBottom="lg"
|
12
|
-
>
|
13
|
-
<Icon
|
14
|
-
icon="info-circle"
|
15
|
-
marginRight="xs"
|
16
|
-
/>
|
17
|
-
{'Typeahead kit is data-driven. The minimum default fields are '}
|
18
|
-
<code>{'label'}</code>
|
19
|
-
{' and '}
|
20
|
-
<code>{'value'}</code>
|
21
|
-
{'.'}
|
22
|
-
</Body>
|
23
|
-
</>
|
24
|
-
)
|
25
|
-
}
|
26
|
-
|
27
|
-
export default TypeaheadWithPillsSummary
|
data/lib/generators/kit/USAGE
DELETED
@@ -1,95 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
class KitGenerator < Rails::Generators::NamedBase
|
4
|
-
desc "This generator creates a new Playbook Kit"
|
5
|
-
source_root File.expand_path("templates", __dir__)
|
6
|
-
class_option :props, type: :array, default: []
|
7
|
-
|
8
|
-
def create_templates
|
9
|
-
kit_name = name.strip.downcase
|
10
|
-
@kit_name_uppercase = kit_name.upcase
|
11
|
-
@kit_name_lowercase = kit_name
|
12
|
-
@kit_name_capitalize = kit_name.capitalize
|
13
|
-
@kit_name_underscore = kit_name.parameterize.underscore
|
14
|
-
@kit_name_pascal = kit_name.titleize.gsub(/\s+/, "")
|
15
|
-
|
16
|
-
kit_props = options[:props].concat(%w[id:string classname:string data:object aria:object])
|
17
|
-
@kit_props = kit_props.map { |hash| [hash.partition(":").first, hash.partition(":").last] }.to_h
|
18
|
-
@kit_props = @kit_props.sort.to_h
|
19
|
-
@unique_props = @kit_props.symbolize_keys.without(:id, :classname, :data, :aria)
|
20
|
-
|
21
|
-
@kit_class_init = []
|
22
|
-
@kit_props.each do |key, _val|
|
23
|
-
@kit_class_init.push("#{key.parameterize.underscore}: default_configuration".to_sym)
|
24
|
-
end
|
25
|
-
|
26
|
-
@kit_class_val = []
|
27
|
-
@kit_props.each do |key, _value|
|
28
|
-
@kit_class_val.push("self.configured_#{key.parameterize.underscore} = #{key.parameterize.underscore}")
|
29
|
-
end
|
30
|
-
|
31
|
-
full_kit_directory = "app/pb_kits/playbook/pb_#{@kit_name_underscore}"
|
32
|
-
|
33
|
-
# Check if kit already exists =======================
|
34
|
-
if File.directory?(full_kit_directory)
|
35
|
-
say_status "#{@kit_name_capitalize} kit already exists.",
|
36
|
-
"Please choose another name or manually make changes to the existing kit.",
|
37
|
-
:red
|
38
|
-
return
|
39
|
-
else
|
40
|
-
# Add kit to Playbook menu ==========================
|
41
|
-
open("app/pb_kits/playbook/data/menu.yml", "a") do |f|
|
42
|
-
f.puts " - #{@kit_name_underscore}"
|
43
|
-
end
|
44
|
-
say_status "complete",
|
45
|
-
"#{@kit_name_capitalize} kit added to Playbook menu.",
|
46
|
-
:green
|
47
|
-
|
48
|
-
# Generate SCSS files ==============================
|
49
|
-
template "kit_scss.erb", "#{full_kit_directory}/_#{@kit_name_underscore}.scss"
|
50
|
-
open("app/pb_kits/playbook/_playbook.scss", "a") do |f|
|
51
|
-
f.puts "\n@" + "import " + "\'" + "pb_#{@kit_name_underscore}/#{@kit_name_underscore}" + "\';"
|
52
|
-
end
|
53
|
-
say_status "complete",
|
54
|
-
"#{@kit_name_capitalize} kit stylesheet successfully created and imported.",
|
55
|
-
:green
|
56
|
-
|
57
|
-
# Ask user if Rails version should be generated ======
|
58
|
-
if yes?("Create RAILS #{@kit_name_underscore} kit? (y/N)")
|
59
|
-
@rails_kit = true
|
60
|
-
template "kit_ruby.erb", "#{full_kit_directory}/#{@kit_name_underscore}.rb"
|
61
|
-
template "kit_html.erb", "#{full_kit_directory}/_#{@kit_name_underscore}.html.erb"
|
62
|
-
template "kit_example_rails.erb", "#{full_kit_directory}/docs/_#{@kit_name_underscore}_default.html.erb"
|
63
|
-
template "kit_ruby_spec.erb", "spec/pb_kits/playbook/kits/#{@kit_name_underscore}_spec.rb"
|
64
|
-
say_status "complete",
|
65
|
-
"#{@kit_name_capitalize} rails kit successfully created.",
|
66
|
-
:green
|
67
|
-
end
|
68
|
-
|
69
|
-
# Ask user if React version should be generated ======
|
70
|
-
if yes?("Create REACT #{@kit_name_pascal} kit? (y/N)")
|
71
|
-
@react_kit = true
|
72
|
-
template "kit_jsx.erb", "#{full_kit_directory}/_#{@kit_name_underscore}.jsx"
|
73
|
-
template "kit_example_react.erb", "#{full_kit_directory}/docs/_#{@kit_name_underscore}_default.jsx"
|
74
|
-
template "kit_js.erb", "#{full_kit_directory}/docs/index.js"
|
75
|
-
|
76
|
-
# Import kit examples ===========================
|
77
|
-
append_to_file("app/pb_kits/playbook/packs/react-examples.js") do
|
78
|
-
"import * as #{@kit_name_pascal} from 'pb_#{@kit_name_underscore}/docs'\nWebpackerReact.setup(#{@kit_name_pascal})\n"
|
79
|
-
end
|
80
|
-
append_to_file("app/pb_kits/playbook/index.js") do
|
81
|
-
"\nexport #{@kit_name_pascal} from 'pb_#{@kit_name_underscore}/_#{@kit_name_underscore}.jsx'"
|
82
|
-
end
|
83
|
-
|
84
|
-
say_status "complete",
|
85
|
-
"#{@kit_name_capitalize} react kit successfully created.",
|
86
|
-
:green
|
87
|
-
end
|
88
|
-
|
89
|
-
# Create kit example.yml
|
90
|
-
template "kit_example_yml.erb", "#{full_kit_directory}/docs/example.yml"
|
91
|
-
|
92
|
-
`rubocop --safe-auto-correct #{full_kit_directory}`
|
93
|
-
end
|
94
|
-
end
|
95
|
-
end
|
@@ -1 +0,0 @@
|
|
1
|
-
<%%= pb_rails("<%= @kit_name_underscore %>") %>
|
@@ -1 +0,0 @@
|
|
1
|
-
export { default as <%= @kit_name_pascal %>Default } from './_<%= @kit_name_underscore %>_default.jsx'
|
@@ -1,68 +0,0 @@
|
|
1
|
-
<%
|
2
|
-
break_lines = lambda do |list, spaces = 2, separator = ","|
|
3
|
-
list.join("#{separator}\n#{" " * spaces}") + separator
|
4
|
-
end
|
5
|
-
|
6
|
-
type_name = "#{@kit_name_pascal}Props"
|
7
|
-
|
8
|
-
props_types = @kit_props.map do |key, val|
|
9
|
-
prop_name = key == "classname" ? "className" : key.camelize(:lower)
|
10
|
-
prop_type = case val
|
11
|
-
when "enum", "one_of" then "'option_1' | 'option_2'"
|
12
|
-
when "boolean", "bool" then "boolean"
|
13
|
-
when "object", "obj" then "object"
|
14
|
-
else "string"
|
15
|
-
end
|
16
|
-
|
17
|
-
"#{prop_name}?: #{prop_type}"
|
18
|
-
end
|
19
|
-
puts props_types.inspect
|
20
|
-
|
21
|
-
props_names = @kit_props.keys.map do |key|
|
22
|
-
case key
|
23
|
-
when "classname" || "className"
|
24
|
-
"className"
|
25
|
-
when "aria"
|
26
|
-
"aria = {}"
|
27
|
-
when "data"
|
28
|
-
"data = {}"
|
29
|
-
else
|
30
|
-
key
|
31
|
-
end
|
32
|
-
end
|
33
|
-
|
34
|
-
%>
|
35
|
-
|
36
|
-
/* @flow */
|
37
|
-
|
38
|
-
import React from 'react'
|
39
|
-
import classnames from 'classnames'
|
40
|
-
import { buildAriaProps, buildCss, buildDataProps } from '../utilities/props'
|
41
|
-
import { globalProps } from '../utilities/globalProps.js'
|
42
|
-
|
43
|
-
type <%= type_name %> = {
|
44
|
-
<%= break_lines.call(props_types) %>
|
45
|
-
}
|
46
|
-
|
47
|
-
const <%= @kit_name_pascal %> = (props: <%= type_name %>) => {
|
48
|
-
const {
|
49
|
-
<%= break_lines.call(props_names) %>
|
50
|
-
} = props
|
51
|
-
|
52
|
-
const ariaProps = buildAriaProps(aria)
|
53
|
-
const dataProps = buildDataProps(data)
|
54
|
-
const classes = classnames(buildCss('pb_<%= @kit_name_underscore %>'), globalProps(props), className)
|
55
|
-
|
56
|
-
return (
|
57
|
-
<div
|
58
|
-
{...ariaProps}
|
59
|
-
{...dataProps}
|
60
|
-
className={classes}
|
61
|
-
id={id}
|
62
|
-
>
|
63
|
-
{className}
|
64
|
-
</div>
|
65
|
-
)
|
66
|
-
}
|
67
|
-
|
68
|
-
export default <%= @kit_name_pascal %>
|
@@ -1,11 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require_relative "../../../../app/pb_kits/playbook/pb_<%= @kit_name_underscore %>/<%= @kit_name_underscore %>"
|
4
|
-
|
5
|
-
RSpec.describe Playbook::Pb<%= @kit_name_capitalize %>::<%= @kit_name_capitalize %> do
|
6
|
-
subject { Playbook::Pb<%= @kit_name_capitalize %>::<%= @kit_name_capitalize %> }
|
7
|
-
|
8
|
-
it { is_expected.to define_partial }
|
9
|
-
|
10
|
-
# Do not leave this file blank. Use other spec files for example tests.
|
11
|
-
end
|