playbook_ui 2.8.7 → 2.8.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (91) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/packs/examples.js +3 -0
  3. data/app/pb_kits/playbook/packs/kits.js +1 -0
  4. data/app/pb_kits/playbook/pb_avatar/_avatar.jsx +25 -36
  5. data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.jsx +54 -14
  6. data/app/pb_kits/playbook/pb_bar_graph/barGraphSettings.js +17 -17
  7. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_default.html.erb +8 -1
  8. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_default.jsx +30 -8
  9. data/app/pb_kits/playbook/pb_body/_body.jsx +46 -33
  10. data/app/pb_kits/playbook/pb_body/docs/_body_dark.jsx +3 -0
  11. data/app/pb_kits/playbook/pb_body/docs/_body_light.jsx +3 -0
  12. data/app/pb_kits/playbook/pb_button/_button.jsx +106 -37
  13. data/app/pb_kits/playbook/pb_button/docs/_button_accessibility.jsx +15 -0
  14. data/app/pb_kits/playbook/pb_button/docs/_button_block_content.jsx +14 -0
  15. data/app/pb_kits/playbook/pb_button/docs/_button_default.jsx +22 -0
  16. data/app/pb_kits/playbook/pb_button/docs/_button_default_dark.jsx +22 -0
  17. data/app/pb_kits/playbook/pb_button/docs/_button_full_width.jsx +13 -0
  18. data/app/pb_kits/playbook/pb_button/docs/_button_link.jsx +23 -0
  19. data/app/pb_kits/playbook/pb_button/docs/_button_loading.jsx +23 -0
  20. data/app/pb_kits/playbook/pb_button/docs/example.yml +8 -4
  21. data/app/pb_kits/playbook/pb_button/docs/index.js +7 -3
  22. data/app/pb_kits/playbook/pb_caption/_caption.jsx +31 -34
  23. data/app/pb_kits/playbook/pb_card/_card.jsx +35 -20
  24. data/app/pb_kits/playbook/pb_card/docs/_card_content.jsx +17 -0
  25. data/app/pb_kits/playbook/pb_card/docs/_card_padding.jsx +23 -0
  26. data/app/pb_kits/playbook/pb_card/docs/_card_selected.jsx +14 -0
  27. data/app/pb_kits/playbook/pb_card/docs/_card_shadow.jsx +23 -0
  28. data/app/pb_kits/playbook/pb_card/docs/example.yml +4 -0
  29. data/app/pb_kits/playbook/pb_card/docs/index.js +4 -0
  30. data/app/pb_kits/playbook/pb_currency/_currency.jsx +67 -18
  31. data/app/pb_kits/playbook/pb_currency/docs/_currency_default.jsx +14 -1
  32. data/app/pb_kits/playbook/pb_currency/docs/_currency_large.jsx +28 -0
  33. data/app/pb_kits/playbook/pb_currency/docs/example.yml +2 -3
  34. data/app/pb_kits/playbook/pb_currency/docs/index.js +1 -0
  35. data/app/pb_kits/playbook/pb_dashboard_value/docs/_dashboard_value_default.jsx +1 -3
  36. data/app/pb_kits/playbook/pb_dashboard_value/docs/example.yml +0 -2
  37. data/app/pb_kits/playbook/pb_date/docs/_date_default.jsx +1 -1
  38. data/app/pb_kits/playbook/pb_icon/docs/_icon_default.jsx +1 -1
  39. data/app/pb_kits/playbook/pb_icon_circle/_icon_circle.jsx +1 -3
  40. data/app/pb_kits/playbook/pb_icon_value/docs/_icon_value_default.jsx +1 -3
  41. data/app/pb_kits/playbook/pb_label_pill/docs/_label_pill_default.jsx +1 -3
  42. data/app/pb_kits/playbook/pb_label_value/docs/_label_value_default.jsx +1 -3
  43. data/app/pb_kits/playbook/pb_line_graph/_line_graph.jsx +57 -25
  44. data/app/pb_kits/playbook/pb_line_graph/docs/{_rails.html.erb → _line_graph_default.html.erb} +0 -0
  45. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_default.jsx +34 -0
  46. data/app/pb_kits/playbook/pb_line_graph/docs/example.yml +5 -2
  47. data/app/pb_kits/playbook/pb_line_graph/docs/index.js +1 -0
  48. data/app/pb_kits/playbook/pb_line_graph/lineGraphSettings.js +9 -9
  49. data/app/pb_kits/playbook/pb_list/docs/_list_default.jsx +1 -5
  50. data/app/pb_kits/playbook/pb_message/docs/_message_default.jsx +1 -3
  51. data/app/pb_kits/playbook/pb_online_status/docs/_online_status_default.jsx +1 -3
  52. data/app/pb_kits/playbook/pb_owner/docs/_owner_default.jsx +1 -3
  53. data/app/pb_kits/playbook/pb_owner_phone/docs/_owner_phone_default.jsx +1 -3
  54. data/app/pb_kits/playbook/pb_phone/docs/_phone_default.jsx +1 -3
  55. data/app/pb_kits/playbook/pb_pill/_pill.jsx +22 -16
  56. data/app/pb_kits/playbook/pb_pill/docs/_pill_default.jsx +21 -1
  57. data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_default.jsx +1 -3
  58. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_default.jsx +1 -3
  59. data/app/pb_kits/playbook/pb_source/docs/_source_default.jsx +1 -3
  60. data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_default.jsx +1 -3
  61. data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_default.jsx +1 -3
  62. data/app/pb_kits/playbook/pb_stat_value/docs/_stat_value_default.jsx +1 -3
  63. data/app/pb_kits/playbook/pb_table/docs/example.yml +10 -10
  64. data/app/pb_kits/playbook/pb_time/docs/_time_default.html.erb +4 -9
  65. data/app/pb_kits/playbook/pb_time/docs/_time_default.jsx +1 -3
  66. data/app/pb_kits/playbook/pb_time/docs/_time_timestamp.html.erb +16 -0
  67. data/app/pb_kits/playbook/pb_time/docs/example.yml +4 -5
  68. data/app/pb_kits/playbook/pb_time/time.rb +19 -7
  69. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default.jsx +1 -3
  70. data/app/pb_kits/playbook/pb_title/_title.jsx +41 -30
  71. data/app/pb_kits/playbook/pb_title/docs/_title_light.jsx +1 -0
  72. data/app/pb_kits/playbook/pb_title_count/_title_count.scss +2 -2
  73. data/app/pb_kits/playbook/pb_title_count/docs/_title_count_default.jsx +1 -3
  74. data/app/pb_kits/playbook/pb_title_count/title_count.rb +1 -1
  75. data/app/pb_kits/playbook/pb_title_detail/docs/_title_detail_default.jsx +1 -3
  76. data/app/pb_kits/playbook/pb_toggle/_toggle.html.erb +2 -2
  77. data/app/pb_kits/playbook/pb_toggle/_toggle.scss +1 -0
  78. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_default.jsx +1 -4
  79. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_name.html.erb +25 -0
  80. data/app/pb_kits/playbook/pb_toggle/docs/example.yml +1 -1
  81. data/app/pb_kits/playbook/pb_toggle/toggle.rb +28 -11
  82. data/app/pb_kits/playbook/pb_user/docs/_user_default.jsx +1 -3
  83. data/app/pb_kits/playbook/pb_user_badge/docs/_user_badge_default.jsx +1 -3
  84. data/app/pb_kits/playbook/pb_vertical_nav/docs/_default_nav.jsx +1 -5
  85. data/lib/generators/kit/templates/kit_jsx.erb.tt +7 -29
  86. data/lib/playbook/version.rb +1 -1
  87. metadata +19 -7
  88. data/app/pb_kits/playbook/pb_button/docs/_button_dark.jsx +0 -14
  89. data/app/pb_kits/playbook/pb_button/docs/_button_light.jsx +0 -14
  90. data/app/pb_kits/playbook/pb_button/docs/_button_sizes.jsx +0 -14
  91. data/app/pb_kits/playbook/pb_line_graph/docs/_react.html.erb +0 -2
@@ -4,7 +4,27 @@ import Pill from "../_pill.jsx"
4
4
  function PillDefault() {
5
5
  return (
6
6
  <div>
7
- <Pill />
7
+ <Pill text="default" />
8
+
9
+ <br/><br/>
10
+
11
+ <Pill text="success" variant="success" />
12
+
13
+ <br/><br/>
14
+
15
+ <Pill text="error" variant="error" />
16
+
17
+ <br/><br/>
18
+
19
+ <Pill text="warning" variant="warning" />
20
+
21
+ <br/><br/>
22
+
23
+ <Pill text="info" variant="info" />
24
+
25
+ <br/><br/>
26
+
27
+ <Pill text="neutral" variant="neutral" />
8
28
  </div>
9
29
  )
10
30
  }
@@ -3,9 +3,7 @@ import ProgressSimple from "../_progress_simple.jsx"
3
3
 
4
4
  function ProgressSimpleDefault() {
5
5
  return (
6
- <div>
7
- <ProgressSimple />
8
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
9
7
  )
10
8
  }
11
9
 
@@ -3,9 +3,7 @@ import SectionSeparator from "../_section_separator.jsx"
3
3
 
4
4
  function SectionSeparatorDefault() {
5
5
  return (
6
- <div>
7
- <SectionSeparator />
8
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
9
7
  )
10
8
  }
11
9
 
@@ -3,9 +3,7 @@ import Source from "../_source.jsx"
3
3
 
4
4
  function SourceDefault() {
5
5
  return (
6
- <div>
7
- <Source />
8
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
9
7
  )
10
8
  }
11
9
 
@@ -3,9 +3,7 @@ import StarRating from "../_star_rating.jsx"
3
3
 
4
4
  function StarRatingDefault() {
5
5
  return (
6
- <div>
7
- <StarRating />
8
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
9
7
  )
10
8
  }
11
9
 
@@ -3,9 +3,7 @@ import StatChange from "../_stat_change.jsx"
3
3
 
4
4
  function StatChangeDefault() {
5
5
  return (
6
- <div>
7
- <StatChange />
8
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
9
7
  )
10
8
  }
11
9
 
@@ -3,9 +3,7 @@ import StatValue from "../_stat_value.jsx"
3
3
 
4
4
  function StatValueDefault() {
5
5
  return (
6
- <div>
7
- <StatValue />
8
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
9
7
  )
10
8
  }
11
9
 
@@ -9,13 +9,13 @@ examples:
9
9
  - table_single_line: Force Single Line
10
10
  - table_dark: Table Dark
11
11
  - table_container_dark: Table Container Dark
12
- react:
13
- - table_sm: Small
14
- - table_md: Medium
15
- - table_lg: Large
16
- - table_container: Table Container
17
- - table_disable_hover: Disable Hover
18
- - table_multiline: Multi-line
19
- - table_single_line: Force Single Line
20
- - table_dark: Table Dark
21
- - table_container_dark: Table Container Dark
12
+ # react:
13
+ # - table_sm: Small
14
+ # - table_md: Medium
15
+ # - table_lg: Large
16
+ # - table_container: Table Container
17
+ # - table_disable_hover: Disable Hover
18
+ # - table_multiline: Multi-line
19
+ # - table_single_line: Force Single Line
20
+ # - table_dark: Table Dark
21
+ # - table_container_dark: Table Container Dark
@@ -6,18 +6,13 @@
6
6
  <br>
7
7
 
8
8
  <%= pb_rails("time", props: {
9
- timestamp: "2012-08-02T15:49:29Z"
10
- }) %>
11
-
12
- <br>
13
-
14
- <%= pb_rails("time", props: {
15
- timestamp: DateTime.now
9
+ timestamp: "2012-08-02T15:49:29Z",
10
+ size: "sm"
16
11
  }) %>
17
12
 
18
13
  <br>
19
14
 
20
15
  <%= pb_rails("time", props: {
21
- timestamp: DateTime.now,
22
- timezone: "America/Chicago"
16
+ timestamp: "2012-08-02T15:49:29Z",
17
+ size: "xs"
23
18
  }) %>
@@ -3,9 +3,7 @@ import Time from "../_time.jsx"
3
3
 
4
4
  function TimeDefault() {
5
5
  return (
6
- <div>
7
- <Time />
8
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
9
7
  )
10
8
  }
11
9
 
@@ -0,0 +1,16 @@
1
+ <%= pb_rails("time", props: {
2
+ timestamp: "2012-08-02T15:49:29Z"
3
+ }) %>
4
+
5
+ <br>
6
+
7
+ <%= pb_rails("time", props: {
8
+ timestamp: DateTime.now
9
+ }) %>
10
+
11
+ <br>
12
+
13
+ <%= pb_rails("time", props: {
14
+ timestamp: DateTime.now,
15
+ timezone: "America/Chicago"
16
+ }) %>
@@ -1,9 +1,8 @@
1
1
  examples:
2
-
2
+
3
3
  rails:
4
- - time_default: Default
5
-
6
-
4
+ - time_default: Sizes
5
+ - time_timestamp: Timestamp Values
6
+
7
7
  react:
8
8
  - time_default: Default
9
-
@@ -28,7 +28,14 @@ module Playbook
28
28
  end
29
29
 
30
30
  def display_value
31
- size == "lg" ? display_value_lg : display_value_sm
31
+ case size
32
+ when "lg"
33
+ display_value_lg
34
+ when "sm"
35
+ display_value_sm
36
+ else
37
+ display_value_xs
38
+ end
32
39
  end
33
40
 
34
41
  def kit_class
@@ -85,7 +92,7 @@ module Playbook
85
92
  end
86
93
 
87
94
  def size
88
- size_options = %w[lg sm]
95
+ size_options = %w[lg sm xs]
89
96
  one_of_value(configured_size, size_options, "sm")
90
97
  end
91
98
 
@@ -103,6 +110,15 @@ module Playbook
103
110
  end
104
111
  end
105
112
 
113
+ def display_value_xs
114
+ if is_set? configured_timestamp
115
+ pb_value = Playbook::PbBody::Body.new(color: "default") do
116
+ text
117
+ end
118
+ ApplicationController.renderer.render(partial: pb_value, as: :object)
119
+ end
120
+ end
121
+
106
122
  def display_value_sm
107
123
  if is_set? configured_timestamp
108
124
  pb_value = Playbook::PbBody::Body.new(color: "default") do
@@ -115,11 +131,7 @@ module Playbook
115
131
 
116
132
  def display_value_lg
117
133
  if is_set? configured_timestamp
118
- title_props = {
119
- size: 3,
120
- text: text,
121
- }
122
- pb_value_lg = Playbook::PbTitle::Title.new(title_props)
134
+ pb_value_lg = Playbook::PbTitle::Title.new(size: 3, text: text)
123
135
  ApplicationController.renderer.render(partial: pb_value_lg, as: :object)
124
136
  end
125
137
  end
@@ -3,9 +3,7 @@ import Timestamp from "../_timestamp.jsx"
3
3
 
4
4
  function TimestampDefault() {
5
5
  return (
6
- <div>
7
- <Timestamp />
8
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
9
7
  )
10
8
  }
11
9
 
@@ -1,33 +1,44 @@
1
- import React, { Component } from "react";
2
- import PropTypes from "prop-types";
3
-
4
- const propTypes = {
5
- text: PropTypes.string.isRequired,
6
- tag: PropTypes.string.isRequired,
7
- size: PropTypes.oneOf([1, 2, 3, 4]).isRequired,
8
- dark: PropTypes.bool
9
- };
10
-
11
- const defaultProps = {
12
- text: "Hello World",
13
- tag: "h1",
14
- size: 1,
15
- dark: false
16
- };
17
-
18
- class Title extends Component {
19
- render() {
20
- const Tag = `${this.props.tag}`;
21
- const { size, dark, text } = this.props;
22
- return (
23
- <Tag className={`heading_${size}` + (dark === true ? "_dark" : "")}>
24
- {text}
25
- </Tag>
26
- );
27
- }
1
+ /* @flow */
2
+
3
+ import React from 'react'
4
+ import classnames from 'classnames'
5
+
6
+ type TitleProps = {
7
+ className?: String,
8
+ children?: Array<React.ReactNode> | React.ReactNode,
9
+ dark?: Boolean,
10
+ size?: 1 | 2 | 3 | 4,
11
+ text?: String,
12
+ tag?: 'h1' | 'h2' | 'h3',
13
+ }
14
+
15
+ const tagCSS = ({
16
+ dark=false,
17
+ size=3,
18
+ }) => {
19
+ let css = ''
20
+
21
+ css += `_${size}`
22
+ css += dark === true ? '_dark' : ''
23
+
24
+ return css
28
25
  }
29
26
 
30
- Title.propTypes = propTypes;
31
- Title.defaultProps = defaultProps;
27
+ const Title = (props: TitleProps) => {
28
+ const {
29
+ className,
30
+ children,
31
+ text,
32
+ tag='h3',
33
+ } = props
34
+
35
+ const Tag = `${tag}`
36
+
37
+ return (
38
+ <Tag className={classnames(`pb_title_kit${tagCSS(props)}`, className)}>
39
+ { text || children }
40
+ </Tag>
41
+ )
42
+ }
32
43
 
33
- export default Title;
44
+ export default Title
@@ -4,6 +4,7 @@ import Title from "../_title.jsx"
4
4
  function TitleLight() {
5
5
  return (
6
6
  <div>
7
+ <Title text="Default Title"/><br/>
7
8
  <Title size={4} tag="h4" text="Title 1" />
8
9
  <Title size={3} tag="h3" text="Title 2" />
9
10
  <Title size={2} tag="h2" text="Title 3" />
@@ -6,8 +6,8 @@
6
6
  justify-content: flex-start;
7
7
  align-items: baseline;
8
8
 
9
- & > [class^=pb_title_kit] {
10
- margin-right: $space-xs;
9
+ & > .pb_title_count_text {
10
+ padding-right: $space-xs;
11
11
  }
12
12
 
13
13
  &[class*=_center] {
@@ -3,9 +3,7 @@ import TitleCount from "../_title_count.jsx"
3
3
 
4
4
  function TitleCountDefault() {
5
5
  return (
6
- <div>
7
- <TitleCount />
8
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
9
7
  )
10
8
  }
11
9
 
@@ -43,7 +43,7 @@ module Playbook
43
43
 
44
44
  def title
45
45
  if is_set? configured_title
46
- pb_title = Playbook::PbTitle::Title.new(size: title_size, text: configured_title)
46
+ pb_title = Playbook::PbTitle::Title.new(size: title_size, text: configured_title, classname: "pb_title_count_text")
47
47
  ApplicationController.renderer.render(partial: pb_title, as: :object)
48
48
  end
49
49
  end
@@ -3,9 +3,7 @@ import TitleDetail from "../_title_detail.jsx"
3
3
 
4
4
  function TitleDetailDefault() {
5
5
  return (
6
- <div>
7
- <TitleDetail />
8
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
9
7
  )
10
8
  }
11
9
 
@@ -1,12 +1,12 @@
1
1
  <%= content_tag(:div,
2
2
  id: object.id,
3
3
  data: object.data,
4
+ aria: object.aria,
4
5
  class: object.classname(object.kit_class),
5
6
  ) do %>
6
7
 
7
8
  <label class="pb_toggle_wrapper">
8
- <input type="checkbox" <%= object.checked %> />
9
+ <input type="checkbox" <%= object.name %> <%= object.value %> <%= object.checked %> />
9
10
  <div class="pb_toggle_control"></div>
10
11
  </label>
11
-
12
12
  <% end %>
@@ -19,6 +19,7 @@ $toggle_sizes: (
19
19
 
20
20
  .pb_toggle_wrapper {
21
21
  .pb_toggle_control {
22
+ cursor: pointer;
22
23
  transition: $transition;
23
24
  width: $width;
24
25
  height: $height;
@@ -3,10 +3,7 @@ import Toggle from "../_toggle.jsx"
3
3
 
4
4
  function ToggleDefault() {
5
5
  return (
6
- <div>
7
- <Toggle size="sm"/>
8
- <Toggle size="md"/>
9
- </div>
6
+ <h1>{`Coming Soon...`}</h1>
10
7
  )
11
8
  }
12
9
 
@@ -0,0 +1,25 @@
1
+ <%= pb_rails("title", props: { size: 4, text: "Which of the following vehicles do you own?" }) %>
2
+
3
+ <br>
4
+
5
+ <label>
6
+ <%= pb_rails("caption", props: { text: "Car" }) %>
7
+ <%= pb_rails("toggle", props: {
8
+ size: "sm",
9
+ checked: false,
10
+ name: "vehicle",
11
+ value: "car"
12
+ }) %>
13
+ </label>
14
+
15
+ <br>
16
+
17
+ <label>
18
+ <%= pb_rails("caption", props: { text: "Bike" }) %>
19
+ <%= pb_rails("toggle", props: {
20
+ size: "sm",
21
+ checked: false,
22
+ name: "vehicle",
23
+ value: "bike"
24
+ }) %>
25
+ </label>