playbook_ui 6.0.1.pre.alpha3 → 6.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (205) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/_playbook.scss +3 -2
  3. data/app/pb_kits/playbook/data/menu.yml +4 -3
  4. data/app/pb_kits/playbook/index.js +2 -2
  5. data/app/pb_kits/playbook/packs/examples.js +5 -2
  6. data/app/pb_kits/playbook/pb_avatar/_avatar.jsx +2 -2
  7. data/app/pb_kits/playbook/pb_badge/_badge.jsx +2 -5
  8. data/app/pb_kits/playbook/pb_badge/_badge.scss +1 -1
  9. data/app/pb_kits/playbook/pb_badge/badge.rb +1 -6
  10. data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.jsx +2 -2
  11. data/app/pb_kits/playbook/pb_body/_body.jsx +3 -6
  12. data/app/pb_kits/playbook/pb_body/_body.scss +6 -0
  13. data/app/pb_kits/playbook/pb_body/body.rb +2 -8
  14. data/app/pb_kits/playbook/pb_button/_button.jsx +2 -5
  15. data/app/pb_kits/playbook/pb_button/_button.scss +1 -1
  16. data/app/pb_kits/playbook/pb_button/button.rb +1 -7
  17. data/app/pb_kits/playbook/pb_button/docs/_button_default.jsx +2 -0
  18. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.html.erb +7 -0
  19. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.jsx +52 -0
  20. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.scss +101 -0
  21. data/app/pb_kits/playbook/pb_button_toolbar/button_toolbar.rb +29 -0
  22. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_default.html.erb +7 -0
  23. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_default.jsx +29 -0
  24. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_secondary.html.erb +7 -0
  25. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_secondary.jsx +34 -0
  26. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical.html.erb +11 -0
  27. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical.jsx +29 -0
  28. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical_secondary.html.erb +11 -0
  29. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_vertical_secondary.jsx +34 -0
  30. data/app/pb_kits/playbook/pb_button_toolbar/docs/_description.md +1 -0
  31. data/app/pb_kits/playbook/pb_button_toolbar/docs/example.yml +15 -0
  32. data/app/pb_kits/playbook/pb_button_toolbar/docs/index.js +4 -0
  33. data/app/pb_kits/playbook/pb_caption/_caption.jsx +3 -7
  34. data/app/pb_kits/playbook/pb_caption/_caption.scss +0 -4
  35. data/app/pb_kits/playbook/pb_caption/caption.rb +1 -8
  36. data/app/pb_kits/playbook/pb_card/_card.jsx +17 -14
  37. data/app/pb_kits/playbook/pb_card/_card.scss +4 -1
  38. data/app/pb_kits/playbook/pb_card/card.rb +2 -9
  39. data/app/pb_kits/playbook/pb_card/docs/_card_dark.html.erb +1 -1
  40. data/app/pb_kits/playbook/pb_checkbox/_checkbox.jsx +2 -2
  41. data/app/pb_kits/playbook/pb_checkbox/checkbox.rb +1 -8
  42. data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.jsx +2 -2
  43. data/app/pb_kits/playbook/pb_circle_icon_button/circle_icon_button.rb +0 -2
  44. data/app/pb_kits/playbook/pb_contact/_contact.jsx +2 -2
  45. data/app/pb_kits/playbook/pb_currency/_currency.jsx +2 -2
  46. data/app/pb_kits/playbook/pb_dashboard/pbChartsLightTheme.js +26 -0
  47. data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.jsx +2 -2
  48. data/app/pb_kits/playbook/pb_date/_date.jsx +4 -4
  49. data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.jsx +2 -2
  50. data/app/pb_kits/playbook/pb_date_range_stacked/_date_range_stacked.jsx +2 -2
  51. data/app/pb_kits/playbook/pb_date_stacked/_date_stacked.jsx +2 -2
  52. data/app/pb_kits/playbook/pb_date_time_stacked/_date_time_stacked.jsx +2 -2
  53. data/app/pb_kits/playbook/pb_date_year_stacked/_date_year_stacked.jsx +2 -2
  54. data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.jsx +2 -2
  55. data/app/pb_kits/playbook/pb_file_upload/_file_upload.jsx +2 -2
  56. data/app/pb_kits/playbook/pb_filter/Filter/FilterBackground.jsx +2 -2
  57. data/app/pb_kits/playbook/pb_filter/docs/_filter_default.html.erb +0 -1
  58. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.jsx +2 -2
  59. data/app/pb_kits/playbook/pb_flex/_flex.jsx +2 -2
  60. data/app/pb_kits/playbook/pb_flex/_flex_item.jsx +2 -2
  61. data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +0 -1
  62. data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +0 -1
  63. data/app/pb_kits/playbook/pb_form/docs/_form_simple_form.html.erb +1 -3
  64. data/app/pb_kits/playbook/pb_form/docs/_form_simple_form_validate.html.erb +1 -3
  65. data/app/pb_kits/playbook/pb_form/form_builder.rb +0 -1
  66. data/app/pb_kits/playbook/pb_form_pill/_form_pill.jsx +2 -2
  67. data/app/pb_kits/playbook/pb_gauge/_gauge.html.erb +12 -0
  68. data/app/pb_kits/playbook/pb_gauge/_gauge.jsx +110 -0
  69. data/app/pb_kits/playbook/pb_gauge/_gauge.scss +11 -0
  70. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_default.html.erb +11 -0
  71. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_default.jsx +17 -0
  72. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_disable_animation.html.erb +12 -0
  73. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_disable_animation.jsx +18 -0
  74. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_full_circle.html.erb +14 -0
  75. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_full_circle.jsx +20 -0
  76. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_height.html.erb +15 -0
  77. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_height.jsx +23 -0
  78. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_live_data.jsx +40 -0
  79. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.html.erb +15 -0
  80. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.jsx +21 -0
  81. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.md +1 -0
  82. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.html.erb +26 -0
  83. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.jsx +37 -0
  84. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.md +1 -0
  85. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_title.html.erb +14 -0
  86. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_title.jsx +20 -0
  87. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_units.html.erb +29 -0
  88. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_units.jsx +29 -0
  89. data/app/pb_kits/playbook/pb_gauge/docs/example.yml +24 -0
  90. data/app/pb_kits/playbook/pb_gauge/docs/index.js +9 -0
  91. data/app/pb_kits/playbook/pb_gauge/gauge.rb +57 -0
  92. data/app/pb_kits/playbook/pb_hashtag/_hashtag.jsx +2 -2
  93. data/app/pb_kits/playbook/pb_highlight/_highlight.jsx +2 -2
  94. data/app/pb_kits/playbook/pb_home_address_street/_home_address_street.jsx +2 -2
  95. data/app/pb_kits/playbook/pb_icon/_icon.jsx +2 -2
  96. data/app/pb_kits/playbook/pb_icon_circle/_icon_circle.jsx +2 -2
  97. data/app/pb_kits/playbook/pb_icon_value/_icon_value.jsx +2 -2
  98. data/app/pb_kits/playbook/pb_image/_image.jsx +2 -2
  99. data/app/pb_kits/playbook/pb_kit/dateTime.js +5 -1
  100. data/app/pb_kits/playbook/pb_label_pill/_label_pill.jsx +2 -2
  101. data/app/pb_kits/playbook/pb_label_value/_label_value.jsx +2 -2
  102. data/app/pb_kits/playbook/pb_layout/_layout.jsx +6 -6
  103. data/app/pb_kits/playbook/pb_legend/_legend.jsx +2 -2
  104. data/app/pb_kits/playbook/pb_line_graph/_line_graph.jsx +2 -2
  105. data/app/pb_kits/playbook/pb_list/_list.jsx +2 -2
  106. data/app/pb_kits/playbook/pb_list/_list_item.jsx +2 -2
  107. data/app/pb_kits/playbook/pb_loading_inline/_loading_inline.jsx +2 -2
  108. data/app/pb_kits/playbook/pb_logistic/_logistic.jsx +111 -0
  109. data/app/pb_kits/playbook/pb_message/_message.jsx +2 -2
  110. data/app/pb_kits/playbook/pb_multiple_users/_multiple_users.jsx +2 -2
  111. data/app/pb_kits/playbook/pb_multiple_users_stacked/_multiple_users_stacked.jsx +2 -2
  112. data/app/pb_kits/playbook/pb_nav/_nav.jsx +2 -2
  113. data/app/pb_kits/playbook/pb_online_status/_online_status.jsx +2 -2
  114. data/app/pb_kits/playbook/pb_person/_person.jsx +2 -2
  115. data/app/pb_kits/playbook/pb_person_contact/_person_contact.jsx +2 -2
  116. data/app/pb_kits/playbook/pb_pill/_pill.jsx +2 -2
  117. data/app/pb_kits/playbook/pb_popover/_popover.jsx +2 -2
  118. data/app/pb_kits/playbook/pb_popover/docs/_popover_list.jsx +5 -5
  119. data/app/pb_kits/playbook/pb_progress_pills/_progress_pills.jsx +2 -2
  120. data/app/pb_kits/playbook/pb_progress_simple/_progress_simple.jsx +2 -2
  121. data/app/pb_kits/playbook/pb_progress_step/_progress_step.jsx +2 -2
  122. data/app/pb_kits/playbook/pb_radio/_radio.jsx +2 -2
  123. data/app/pb_kits/playbook/pb_section_separator/_section_separator.jsx +2 -2
  124. data/app/pb_kits/playbook/pb_select/_select.jsx +2 -2
  125. data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.jsx +12 -16
  126. data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.scss +1 -1
  127. data/app/pb_kits/playbook/pb_selectable_card/selectable_card.rb +1 -7
  128. data/app/pb_kits/playbook/pb_selectable_card_icon/_selectable_card_icon.jsx +26 -26
  129. data/app/pb_kits/playbook/pb_selectable_card_icon/_selectable_card_icon.scss +1 -1
  130. data/app/pb_kits/playbook/pb_selectable_card_icon/selectable_card_icon.rb +1 -8
  131. data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.jsx +8 -10
  132. data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.scss +1 -1
  133. data/app/pb_kits/playbook/pb_selectable_icon/selectable_icon.rb +1 -7
  134. data/app/pb_kits/playbook/pb_stat_change/_stat_change.jsx +2 -2
  135. data/app/pb_kits/playbook/pb_stat_value/_stat_value.jsx +2 -2
  136. data/app/pb_kits/playbook/pb_table/_table.jsx +2 -2
  137. data/app/pb_kits/playbook/pb_table/_table_row.jsx +2 -2
  138. data/app/pb_kits/playbook/pb_text_input/_text_input.jsx +2 -2
  139. data/app/pb_kits/playbook/pb_textarea/_textarea.html.erb +1 -1
  140. data/app/pb_kits/playbook/pb_textarea/_textarea.jsx +2 -2
  141. data/app/pb_kits/playbook/pb_textarea/_textarea.scss +2 -1
  142. data/app/pb_kits/playbook/pb_time/_time.jsx +57 -14
  143. data/app/pb_kits/playbook/pb_time/_time.scss +17 -0
  144. data/app/pb_kits/playbook/pb_time/docs/_time_align.jsx +27 -0
  145. data/app/pb_kits/playbook/pb_time/docs/_time_dark.jsx +28 -0
  146. data/app/pb_kits/playbook/pb_time/docs/_time_default.jsx +28 -0
  147. data/app/pb_kits/playbook/pb_time/docs/_time_timestamp.jsx +32 -0
  148. data/app/pb_kits/playbook/pb_time/docs/example.yml +4 -0
  149. data/app/pb_kits/playbook/pb_time/docs/index.js +4 -0
  150. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.jsx +2 -2
  151. data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.jsx +2 -2
  152. data/app/pb_kits/playbook/pb_timestamp/_timestamp.jsx +2 -2
  153. data/app/pb_kits/playbook/pb_title/_title.jsx +3 -6
  154. data/app/pb_kits/playbook/pb_title/_title.scss +1 -1
  155. data/app/pb_kits/playbook/pb_title/title.rb +1 -9
  156. data/app/pb_kits/playbook/pb_title_count/_title_count.jsx +2 -2
  157. data/app/pb_kits/playbook/pb_title_detail/_title_detail.jsx +2 -2
  158. data/app/pb_kits/playbook/pb_toggle/_toggle.jsx +39 -31
  159. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_custom.jsx +31 -0
  160. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_custom_radio.html.erb +6 -6
  161. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_custom_radio.jsx +72 -0
  162. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_default.html.erb +1 -3
  163. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_default.jsx +6 -19
  164. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_name.jsx +57 -0
  165. data/app/pb_kits/playbook/pb_toggle/docs/{_toggle_checked.html.erb → _toggle_size.html.erb} +2 -2
  166. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_size.jsx +44 -0
  167. data/app/pb_kits/playbook/pb_toggle/docs/example.yml +8 -5
  168. data/app/pb_kits/playbook/pb_toggle/docs/index.js +4 -2
  169. data/app/pb_kits/playbook/pb_user/_user.jsx +2 -2
  170. data/app/pb_kits/playbook/pb_user_badge/_user_badge.jsx +2 -2
  171. data/app/pb_kits/playbook/pb_weekday_stacked/_weekday_stacked.jsx +2 -2
  172. data/app/pb_kits/playbook/plugins/pb_chart.js +74 -0
  173. data/app/pb_kits/playbook/props.rb +6 -0
  174. data/app/pb_kits/playbook/utilities/{spacing.js → globalProps.js} +14 -1
  175. data/app/pb_kits/playbook/utilities/props.js +1 -0
  176. data/app/pb_kits/playbook/vendor.js +0 -6
  177. data/lib/generators/kit/templates/kit_jsx.erb.tt +2 -2
  178. data/lib/playbook/version.rb +1 -1
  179. metadata +56 -34
  180. data/app/pb_kits/playbook/pb_date_picker/_date_picker.html.erb +0 -38
  181. data/app/pb_kits/playbook/pb_date_picker/_date_picker.jsx +0 -101
  182. data/app/pb_kits/playbook/pb_date_picker/_date_picker.scss +0 -846
  183. data/app/pb_kits/playbook/pb_date_picker/date_picker.rb +0 -41
  184. data/app/pb_kits/playbook/pb_date_picker/date_picker_helper.js +0 -91
  185. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default.html.erb +0 -1
  186. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default.jsx +0 -12
  187. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default_date.html.erb +0 -24
  188. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default_date.jsx +0 -30
  189. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_disabled.html.erb +0 -43
  190. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_disabled.jsx +0 -48
  191. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_error.html.erb +0 -4
  192. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_error.jsx +0 -13
  193. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_format.html.erb +0 -19
  194. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_format.jsx +0 -25
  195. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_label.html.erb +0 -4
  196. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_label.jsx +0 -13
  197. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_min_max.html.erb +0 -14
  198. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_min_max.jsx +0 -22
  199. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range.html.erb +0 -4
  200. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range.jsx +0 -13
  201. data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +0 -23
  202. data/app/pb_kits/playbook/pb_date_picker/docs/index.js +0 -8
  203. data/app/pb_kits/playbook/pb_form/form_builder/date_picker_field.rb +0 -34
  204. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_accessibility.jsx +0 -12
  205. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_data.jsx +0 -15
@@ -0,0 +1,31 @@
1
+ // @flow
2
+
3
+ import React, { useState } from 'react'
4
+ import { Toggle } from '../..'
5
+
6
+ const ToggleCustom = () => {
7
+ const [choice, setChoice] = useState(false)
8
+
9
+ const handleOnChange = ({ target }) => {
10
+ setChoice(target.value = !choice)
11
+ }
12
+
13
+ return (
14
+ <>
15
+ <Toggle
16
+ checked={choice}
17
+ size="sm"
18
+ >
19
+ <input
20
+ className="my custom checkbox"
21
+ name="custom checkbox"
22
+ onChange={handleOnChange}
23
+ type="checkbox"
24
+ value="ABC"
25
+ />
26
+ </Toggle>
27
+ </>
28
+ )
29
+ }
30
+
31
+ export default ToggleCustom
@@ -2,21 +2,21 @@
2
2
 
3
3
  <br>
4
4
 
5
- <%= pb_rails("caption", props: { text: "Male" }) %>
5
+ <%= pb_rails("caption", props: { text: "Walk" }) %>
6
6
  <%= pb_rails("toggle", props: { size: "sm" }) do %>
7
- <input type="radio" name="gender" value="male">
7
+ <input type="radio" name="modes of transportation" value="walk">
8
8
  <% end %>
9
9
 
10
10
  <br/>
11
11
 
12
- <%= pb_rails("caption", props: { text: "Female" }) %>
12
+ <%= pb_rails("caption", props: { text: "Bike" }) %>
13
13
  <%= pb_rails("toggle", props: { size: "sm" }) do %>
14
- <input type="radio" name="gender" value="female">
14
+ <input type="radio" name="modes of transportation" value="bike">
15
15
  <% end %>
16
16
 
17
17
  <br/>
18
18
 
19
- <%= pb_rails("caption", props: { text: "Other" }) %>
19
+ <%= pb_rails("caption", props: { text: "Ride" }) %>
20
20
  <%= pb_rails("toggle", props: { size: "sm" }) do %>
21
- <input type="radio" name="gender" value="other">
21
+ <input type="radio" name="modes of transportation" value="ride">
22
22
  <% end %>
@@ -0,0 +1,72 @@
1
+ // @flow
2
+
3
+ import React, { useState } from 'react'
4
+ import { Caption, Title, Toggle } from '../..'
5
+
6
+ const ToggleCustomRadio = () => {
7
+ const [choice, setChoice] = useState('walk')
8
+
9
+ const handleOnChange = ({ target }) => {
10
+ setChoice(target.value)
11
+ }
12
+
13
+ return (
14
+ <>
15
+ <Title
16
+ size={4}
17
+ text="Select one option:"
18
+ />
19
+
20
+ <br />
21
+
22
+ <Caption
23
+ text="Walk"
24
+ />
25
+ <Toggle
26
+ checked={choice}
27
+ size="sm"
28
+ >
29
+ <input
30
+ name="modes of transportation"
31
+ onChange={handleOnChange}
32
+ type="radio"
33
+ value="walk"
34
+ />
35
+ </Toggle>
36
+
37
+ <br />
38
+
39
+ <Caption
40
+ text="Bike"
41
+ />
42
+ <Toggle
43
+ size="sm"
44
+ >
45
+ <input
46
+ name="modes of transportation"
47
+ onChange={handleOnChange}
48
+ type="radio"
49
+ value="bike"
50
+ />
51
+ </Toggle>
52
+
53
+ <br />
54
+
55
+ <Caption
56
+ text="Ride"
57
+ />
58
+ <Toggle
59
+ size="sm"
60
+ >
61
+ <input
62
+ name="modes of transportation"
63
+ onChange={handleOnChange}
64
+ type="radio"
65
+ value="ride"
66
+ />
67
+ </Toggle>
68
+ </>
69
+ )
70
+ }
71
+
72
+ export default ToggleCustomRadio
@@ -1,11 +1,9 @@
1
1
  <%= pb_rails("toggle", props: {
2
- size: "sm",
3
- checked: false
2
+ checked: true
4
3
  }) %>
5
4
 
6
5
  <br>
7
6
 
8
7
  <%= pb_rails("toggle", props: {
9
- size: "md",
10
8
  checked: false
11
9
  }) %>
@@ -1,33 +1,20 @@
1
1
  // @flow
2
2
 
3
- import React, { useState } from 'react'
4
- import { Toggle } from '../../'
5
-
6
- const Example = () => {
7
- const [toggle1, setToggle1] = useState(false)
8
- const [toggle2, setToggle2] = useState(false)
3
+ import React from 'react'
4
+ import { Toggle } from '../..'
9
5
 
6
+ const ToggleDefault = () => {
10
7
  return (
11
8
  <>
12
9
  <Toggle
13
- checked={toggle1}
14
- name="toggle1"
15
- onChange={(event) => setToggle1(event.target.value)}
16
- onCheck={(event) => alert(`${event.target.name} checked!`)}
17
- onUncheck={(event) => alert(`${event.target.name} unchecked!`)}
10
+ checked
18
11
  />
19
12
 
20
13
  <br />
21
14
 
22
- <Toggle
23
- checked={toggle2}
24
- name="toggle2"
25
- onChange={(event) => setToggle2(event.target.value)}
26
- onCheck={(event) => alert(`${event.target.name} checked!`)}
27
- onUncheck={(event) => alert(`${event.target.name} unchecked!`)}
28
- />
15
+ <Toggle />
29
16
  </>
30
17
  )
31
18
  }
32
19
 
33
- export default Example
20
+ export default ToggleDefault
@@ -0,0 +1,57 @@
1
+ // @flow
2
+
3
+ import React, { useState } from 'react'
4
+ import { Caption, Title, Toggle } from '../..'
5
+
6
+ const ToggleName = () => {
7
+ const [choice, setChoice] = useState(false)
8
+
9
+ const handleOnChange = ({ target }) => {
10
+ setChoice(target.value = !choice)
11
+ }
12
+
13
+ return (
14
+ <>
15
+ <Title
16
+ size={4}
17
+ text="Which of the following vehicles do you own?"
18
+ />
19
+
20
+ <br />
21
+
22
+ <Caption
23
+ text="Car"
24
+ />
25
+ <Toggle
26
+ checked={choice}
27
+ size="sm"
28
+ >
29
+ <input
30
+ name="vehicle"
31
+ onChange={handleOnChange}
32
+ type="checkbox"
33
+ value="car"
34
+ />
35
+ </Toggle>
36
+
37
+ <br />
38
+ <Caption
39
+ text="Bike"
40
+ />
41
+ <Toggle
42
+ checked={choice}
43
+ size="sm"
44
+ >
45
+ <input
46
+ name="vehicle"
47
+ onChange={handleOnChange}
48
+ type="checkbox"
49
+ value="bike"
50
+ />
51
+ </Toggle>
52
+
53
+ </>
54
+ )
55
+ }
56
+
57
+ export default ToggleName
@@ -1,6 +1,6 @@
1
1
  <%= pb_rails("toggle", props: {
2
- size: "md",
3
- checked: true
2
+ size: "sm",
3
+ checked: false
4
4
  }) %>
5
5
 
6
6
  <br>
@@ -0,0 +1,44 @@
1
+ // @flow
2
+
3
+ import React, { useState } from 'react'
4
+ import { Toggle } from '../..'
5
+
6
+ const ToggleSize = () => {
7
+ const [choice, setChoice] = useState(false)
8
+
9
+ const handleOnChange = ({ target }) => {
10
+ setChoice(target.value = !choice)
11
+ }
12
+
13
+ return (
14
+ <>
15
+ <Toggle
16
+ checked={choice}
17
+ size="sm"
18
+ >
19
+ <input
20
+ name="toggleSmall"
21
+ onChange={handleOnChange}
22
+ type="checkbox"
23
+ value="toggleSmall"
24
+ />
25
+ </Toggle>
26
+
27
+ <br />
28
+
29
+ <Toggle
30
+ checked={choice}
31
+ size="md"
32
+ >
33
+ <input
34
+ name="toggleMedium"
35
+ onChange={handleOnChange}
36
+ type="checkbox"
37
+ value="toggleMedium"
38
+ />
39
+ </Toggle>
40
+ </>
41
+ )
42
+ }
43
+
44
+ export default ToggleSize
@@ -1,13 +1,16 @@
1
1
  examples:
2
2
 
3
3
  rails:
4
- - toggle_default: Sizes
5
- - toggle_checked: Default State
4
+ - toggle_default: Default State
5
+ - toggle_size: Sizes
6
6
  - toggle_name: Name and Value
7
7
  - toggle_custom: Custom checkbox input
8
8
  - toggle_custom_radio: Custom radio inputs
9
9
 
10
10
  react:
11
- - toggle_default: Default
12
- - toggle_accessibility: Toggle Accessibility
13
- - toggle_data: Toggle Data Props
11
+ - toggle_default: Default State
12
+ - toggle_size: Sizes
13
+ - toggle_name: Name and Value
14
+ - toggle_custom: Custom checkbox input
15
+ - toggle_custom_radio: Custom radio inputs
16
+
@@ -1,3 +1,5 @@
1
1
  export { default as ToggleDefault } from './_toggle_default'
2
- export { default as ToggleAccessibility } from './_toggle_accessibility'
3
- export { default as ToggleData } from './_toggle_data'
2
+ export { default as ToggleSize } from './_toggle_size'
3
+ export { default as ToggleCustom } from './_toggle_custom'
4
+ export { default as ToggleName } from './_toggle_name'
5
+ export { default as ToggleCustomRadio } from './_toggle_custom_radio'
@@ -3,7 +3,7 @@
3
3
  import React from 'react'
4
4
  import classnames from 'classnames'
5
5
  import { Avatar, Body, Title } from '../'
6
- import { spacing } from '../utilities/spacing.js'
6
+ import { globalProps } from '../utilities/globalProps.js'
7
7
 
8
8
  type UserProps = {
9
9
  className?: String,
@@ -30,7 +30,7 @@ const User = (props: UserProps) => {
30
30
  avatarUrl,
31
31
  } = props
32
32
  return (
33
- <div className={classnames(`pb_user_kit_${align}_${orientation}_${size}`, spacing(props))}>
33
+ <div className={classnames(`pb_user_kit_${align}_${orientation}_${size}`, globalProps(props))}>
34
34
  <If condition={avatar || avatarUrl}>
35
35
  <Avatar
36
36
  imageUrl={avatarUrl}
@@ -1,7 +1,7 @@
1
1
  /* @flow */
2
2
  import React from 'react'
3
3
  import classnames from 'classnames'
4
- import { spacing } from '../utilities/spacing.js'
4
+ import { globalProps } from '../utilities/globalProps.js'
5
5
 
6
6
  type UserBadgeProps = {
7
7
  className?: String,
@@ -15,7 +15,7 @@ const UserBadge = (props: UserBadgeProps) => {
15
15
  const image = require(`./badges/_${badge}.svg`)
16
16
 
17
17
  return (
18
- <div className={classnames(`pb_user_badge_kit_${size}`, spacing(props))}>
18
+ <div className={classnames(`pb_user_badge_kit_${size}`, globalProps(props))}>
19
19
  <div className="pb_user_badge_wrapper">
20
20
  <img src={image} />
21
21
  </div>
@@ -2,7 +2,7 @@
2
2
 
3
3
  import React from 'react'
4
4
  import classnames from 'classnames'
5
- import { spacing } from '../utilities/spacing.js'
5
+ import { globalProps } from '../utilities/globalProps.js'
6
6
  import { buildCss } from '../utilities/props'
7
7
 
8
8
  import { Caption, Title } from '../'
@@ -52,7 +52,7 @@ const WeekdayStacked = (props: WeekdayStackedProps) => {
52
52
  className={classnames(
53
53
  buildCss('pb_weekday_stacked_kit', align),
54
54
  className,
55
- spacing(props)
55
+ globalProps(props)
56
56
  )}
57
57
  >
58
58
  <Caption dark={dark}>{getDayOfWeek(date, compact)}</Caption>
@@ -4,6 +4,8 @@ import { highchartsTheme } from '../pb_dashboard/pbChartsLightTheme.js'
4
4
  import colors from '../tokens/_colors.scss'
5
5
 
6
6
  require('highcharts/modules/variable-pie')(Highcharts)
7
+ import highchartsMore from 'highcharts/highcharts-more.js'
8
+ import solidGauge from 'highcharts/modules/solid-gauge.js'
7
9
 
8
10
  // Map Data Color String Props to our SCSS Variables
9
11
  const mapColors = (array) => {
@@ -67,11 +69,83 @@ class pbChart {
67
69
 
68
70
  if (this.options.type == 'variablepie' || this.options.type == 'pie'){
69
71
  this.setupPieChart(options)
72
+ } else if (this.options.type == 'gauge') {
73
+ this.setupGauge()
70
74
  } else {
71
75
  this.setupChart()
72
76
  }
73
77
  }
74
78
 
79
+ setupGauge() {
80
+ highchartsMore(Highcharts)
81
+ solidGauge(Highcharts)
82
+ Highcharts.setOptions(highchartsTheme)
83
+
84
+ Highcharts.chart(this.defaults.id, {
85
+ chart: {
86
+ type: this.defaults.style,
87
+ height: this.defaults.height,
88
+ },
89
+ title: {
90
+ text: this.defaults.title,
91
+ },
92
+ yAxis: {
93
+ min: this.defaults.min,
94
+ max: this.defaults.max,
95
+ lineWidth: 0,
96
+ tickWidth: 0,
97
+ minorTickInterval: null,
98
+ tickAmount: 2,
99
+ tickPositions: [this.defaults.min, this.defaults.max],
100
+ labels: {
101
+ y: 26,
102
+ enabled: this.defaults.showLabels,
103
+ },
104
+ },
105
+ credits: false,
106
+ series: [
107
+ {
108
+ data: this.defaults.chartData,
109
+ },
110
+ ],
111
+ pane: {
112
+ center: ['50%', '50%'],
113
+ size: '90%',
114
+ startAngle: this.defaults.circumference[0],
115
+ endAngle: this.defaults.circumference[1],
116
+ background: {
117
+ borderWidth: 20,
118
+ innerRadius: '90%',
119
+ outerRadius: '90%',
120
+ shape: 'arc',
121
+ className: 'gauge-pane',
122
+ },
123
+ },
124
+ tooltip: {
125
+ headerFormat: '',
126
+ pointFormat: this.defaults.tooltipHtml,
127
+ followPointer: true,
128
+ },
129
+ plotOptions: {
130
+ series: {
131
+ animation: !this.defaults.disableAnimation,
132
+ },
133
+ solidgauge: {
134
+ dataLabels: {
135
+ format: `<span class="prefix">${this.defaults.prefix}</span>` +
136
+ '<span class="fix">{y:,f}</span>' +
137
+ `<span class="suffix">${this.defaults.suffix}</span>`,
138
+ },
139
+ },
140
+ },
141
+ })
142
+ document.querySelectorAll('.gauge-pane').forEach((pane) => pane.setAttribute('stroke-linejoin', 'round'))
143
+ if (document.querySelector('.prefix')) {
144
+ document.querySelectorAll('.prefix').forEach((prefix) => prefix.setAttribute('y', '28'))
145
+ document.querySelectorAll('.fix').forEach((fix) => fix.setAttribute('y', '38'))
146
+ }
147
+ }
148
+
75
149
  setupPieChart(options) {
76
150
  Highcharts.setOptions(highchartsTheme)
77
151
  Highcharts.chart(this.defaults.id, {