playbook_ui 7.0.0 → 7.0.1.pre.alpha1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (442) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -4
  3. data/app/controllers/playbook/application_controller.rb +2 -2
  4. data/app/controllers/playbook/guides_controller.rb +11 -0
  5. data/app/controllers/playbook/pages_controller.rb +109 -0
  6. data/app/controllers/playbook/samples_controller.rb +40 -0
  7. data/app/helpers/playbook/application_helper.rb +0 -19
  8. data/app/helpers/playbook/pb_doc_helper.rb +1 -0
  9. data/app/helpers/playbook/pb_kit_helper.rb +14 -12
  10. data/app/pb_kits/playbook/_playbook.scss +0 -2
  11. data/app/pb_kits/playbook/config/_kit_ui.html.erb +1 -1
  12. data/app/pb_kits/playbook/data/menu.yml +0 -1
  13. data/app/pb_kits/playbook/index.js +0 -8
  14. data/app/pb_kits/playbook/packs/application.js +55 -0
  15. data/app/pb_kits/playbook/packs/examples.js +175 -0
  16. data/app/pb_kits/playbook/packs/main.scss +12 -0
  17. data/app/pb_kits/playbook/packs/samples.js +21 -0
  18. data/app/pb_kits/playbook/packs/site_styles/_samples.scss +72 -0
  19. data/app/pb_kits/playbook/packs/site_styles/_scaffold.scss +43 -0
  20. data/app/pb_kits/playbook/packs/site_styles/_site-style.scss +146 -0
  21. data/app/pb_kits/playbook/packs/site_styles/docs/_all.scss +10 -0
  22. data/app/pb_kits/playbook/packs/site_styles/docs/_bg_light_doc_example.scss +7 -0
  23. data/app/pb_kits/playbook/packs/site_styles/docs/_code_snippet.scss +531 -0
  24. data/app/pb_kits/playbook/packs/site_styles/docs/_color_utilities.scss +92 -0
  25. data/app/pb_kits/playbook/packs/site_styles/docs/_flex_examples.scss +15 -0
  26. data/app/pb_kits/playbook/packs/site_styles/docs/_kit_doc.scss +133 -0
  27. data/app/pb_kits/playbook/packs/site_styles/docs/_kits_examples.scss +15 -0
  28. data/app/pb_kits/playbook/packs/site_styles/docs/_markdown.scss +88 -0
  29. data/app/pb_kits/playbook/packs/site_styles/docs/_spacing_tokens.scss +72 -0
  30. data/app/pb_kits/playbook/pb_avatar/_avatar.jsx +1 -5
  31. data/app/pb_kits/playbook/pb_badge/_badge.jsx +2 -4
  32. data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.html.erb +12 -1
  33. data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.jsx +1 -1
  34. data/app/pb_kits/playbook/pb_bar_graph/bar_graph.rb +1 -1
  35. data/app/pb_kits/playbook/pb_body/_body.jsx +1 -1
  36. data/app/pb_kits/playbook/pb_body/_body.scss +1 -17
  37. data/app/pb_kits/playbook/pb_body/body.rb +1 -1
  38. data/app/pb_kits/playbook/pb_button/_button.jsx +1 -6
  39. data/app/pb_kits/playbook/pb_button/_button_mixins.scss +18 -32
  40. data/app/pb_kits/playbook/pb_button/docs/_button_default.jsx +0 -2
  41. data/app/pb_kits/playbook/pb_button/docs/_button_link.jsx +0 -2
  42. data/app/pb_kits/playbook/pb_button/docs/_button_loading.jsx +0 -2
  43. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.jsx +1 -5
  44. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.scss +8 -16
  45. data/app/pb_kits/playbook/pb_caption/_caption.jsx +3 -5
  46. data/app/pb_kits/playbook/pb_caption/_caption.scss +0 -3
  47. data/app/pb_kits/playbook/pb_caption/caption.rb +1 -4
  48. data/app/pb_kits/playbook/pb_caption/docs/index.js +0 -1
  49. data/app/pb_kits/playbook/pb_card/_card_mixin.scss +0 -1
  50. data/app/pb_kits/playbook/pb_checkbox/_checkbox.jsx +2 -5
  51. data/app/pb_kits/playbook/pb_checkbox/_checkbox.scss +6 -12
  52. data/app/pb_kits/playbook/pb_checkbox/checkbox.rb +1 -3
  53. data/app/pb_kits/playbook/pb_checkbox/docs/example.yml +0 -1
  54. data/app/pb_kits/playbook/pb_circle_chart/_circle_chart.html.erb +1 -1
  55. data/app/pb_kits/playbook/pb_circle_chart/_circle_chart.scss +1 -1
  56. data/app/pb_kits/playbook/pb_circle_chart/docs/example.yml +0 -11
  57. data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.jsx +1 -5
  58. data/app/pb_kits/playbook/pb_circle_icon_button/docs/_circle_icon_button_link.html.erb +1 -2
  59. data/app/pb_kits/playbook/pb_contact/_contact.jsx +1 -5
  60. data/app/pb_kits/playbook/pb_currency/_currency.jsx +1 -5
  61. data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.jsx +1 -5
  62. data/app/pb_kits/playbook/pb_date/date.rb +1 -2
  63. data/app/pb_kits/playbook/pb_date/docs/_date_default.html.erb +1 -8
  64. data/app/pb_kits/playbook/pb_date/docs/_description.md +0 -2
  65. data/app/pb_kits/playbook/pb_date/docs/example.yml +0 -1
  66. data/app/pb_kits/playbook/pb_date_range_stacked/_date_range_stacked.jsx +1 -5
  67. data/app/pb_kits/playbook/pb_date_stacked/_date_stacked.jsx +2 -2
  68. data/app/pb_kits/playbook/pb_date_time_stacked/docs/_date_time_stacked_dark.jsx +1 -1
  69. data/app/pb_kits/playbook/pb_date_time_stacked/docs/_date_time_stacked_default.jsx +1 -1
  70. data/app/pb_kits/playbook/pb_date_year_stacked/_date_year_stacked.jsx +1 -5
  71. data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.html.erb +8 -1
  72. data/app/pb_kits/playbook/pb_distribution_bar/distribution_bar.rb +0 -7
  73. data/app/pb_kits/playbook/pb_file_upload/_file_upload.jsx +1 -1
  74. data/app/pb_kits/playbook/pb_filter/_filter.scss +1 -1
  75. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.jsx +2 -2
  76. data/app/pb_kits/playbook/pb_flex/_flex.jsx +2 -2
  77. data/app/pb_kits/playbook/pb_flex/_flex_item.jsx +1 -1
  78. data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +1 -10
  79. data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +0 -1
  80. data/app/pb_kits/playbook/pb_form/docs/_form_simple_form.html.erb +0 -2
  81. data/app/pb_kits/playbook/pb_form/docs/_form_simple_form_validate.html.erb +0 -2
  82. data/app/pb_kits/playbook/pb_form/form_builder.rb +0 -1
  83. data/app/pb_kits/playbook/pb_form/form_builder/checkbox_field.rb +2 -7
  84. data/app/pb_kits/playbook/pb_form_pill/_form_pill.jsx +2 -3
  85. data/app/pb_kits/playbook/pb_form_pill/_form_pill.scss +2 -5
  86. data/app/pb_kits/playbook/pb_gauge/_gauge.jsx +1 -1
  87. data/app/pb_kits/playbook/pb_highlight/_highlight.jsx +1 -1
  88. data/app/pb_kits/playbook/pb_home_address_street/_home_address_street.jsx +2 -2
  89. data/app/pb_kits/playbook/pb_icon/_icon.jsx +2 -2
  90. data/app/pb_kits/playbook/pb_icon/docs/_icon_default_dark.html.erb +1 -3
  91. data/app/pb_kits/playbook/pb_icon/docs/_icon_default_dark.jsx +5 -7
  92. data/app/pb_kits/playbook/pb_icon_value/_icon_value.jsx +1 -5
  93. data/app/pb_kits/playbook/pb_image/_image.jsx +1 -5
  94. data/app/pb_kits/playbook/pb_label_pill/_label_pill.jsx +1 -5
  95. data/app/pb_kits/playbook/pb_label_value/docs/_label_value_dark.html.erb +24 -0
  96. data/app/pb_kits/playbook/pb_label_value/docs/_label_value_dark.jsx +35 -0
  97. data/app/pb_kits/playbook/pb_label_value/docs/_label_value_details_dark.html.erb +43 -0
  98. data/app/pb_kits/playbook/pb_label_value/docs/_label_value_details_dark.jsx +54 -0
  99. data/app/pb_kits/playbook/pb_label_value/docs/_label_value_details_examples_dark.html.erb +80 -0
  100. data/app/pb_kits/playbook/pb_label_value/docs/_label_value_details_examples_dark.jsx +101 -0
  101. data/app/pb_kits/playbook/pb_label_value/docs/example.yml +7 -1
  102. data/app/pb_kits/playbook/pb_label_value/docs/index.js +4 -0
  103. data/app/pb_kits/playbook/pb_layout/_layout.jsx +4 -4
  104. data/app/pb_kits/playbook/pb_legend/docs/_legend_dark.html.erb +5 -0
  105. data/app/pb_kits/playbook/pb_legend/docs/_legend_dark.jsx +21 -0
  106. data/app/pb_kits/playbook/pb_legend/docs/_legend_dark_prefix.html.erb +1 -0
  107. data/app/pb_kits/playbook/pb_legend/docs/_legend_dark_prefix.jsx +15 -0
  108. data/app/pb_kits/playbook/pb_legend/docs/example.yml +5 -1
  109. data/app/pb_kits/playbook/pb_legend/docs/index.js +2 -0
  110. data/app/pb_kits/playbook/pb_line_graph/_line_graph.html.erb +13 -1
  111. data/app/pb_kits/playbook/pb_line_graph/_line_graph.jsx +1 -1
  112. data/app/pb_kits/playbook/pb_line_graph/line_graph.rb +1 -1
  113. data/app/pb_kits/playbook/pb_list/_list.jsx +2 -3
  114. data/app/pb_kits/playbook/pb_list/_list_item.jsx +2 -3
  115. data/app/pb_kits/playbook/pb_list/docs/_list_dark.html.erb +7 -0
  116. data/app/pb_kits/playbook/pb_list/docs/_list_dark.jsx +19 -0
  117. data/app/pb_kits/playbook/pb_list/docs/_list_dark_borderless.html.erb +7 -0
  118. data/app/pb_kits/playbook/pb_list/docs/_list_dark_borderless.jsx +22 -0
  119. data/app/pb_kits/playbook/pb_list/docs/_list_dark_lg.html.erb +7 -0
  120. data/app/pb_kits/playbook/pb_list/docs/_list_dark_lg.jsx +22 -0
  121. data/app/pb_kits/playbook/pb_list/docs/_list_dark_ordered.html.erb +7 -0
  122. data/app/pb_kits/playbook/pb_list/docs/_list_dark_ordered.jsx +22 -0
  123. data/app/pb_kits/playbook/pb_list/docs/_list_dark_xpadding.html.erb +7 -0
  124. data/app/pb_kits/playbook/pb_list/docs/_list_dark_xpadding.jsx +22 -0
  125. data/app/pb_kits/playbook/pb_list/docs/example.yml +11 -1
  126. data/app/pb_kits/playbook/pb_list/docs/index.js +6 -0
  127. data/app/pb_kits/playbook/pb_loading_inline/docs/_loading_inline_dark.html.erb +13 -0
  128. data/app/pb_kits/playbook/pb_loading_inline/docs/_loading_inline_dark.jsx +20 -0
  129. data/app/pb_kits/playbook/pb_loading_inline/docs/example.yml +3 -1
  130. data/app/pb_kits/playbook/pb_loading_inline/docs/index.js +1 -0
  131. data/app/pb_kits/playbook/pb_logistic/_logistic.jsx +1 -5
  132. data/app/pb_kits/playbook/pb_message/_message.jsx +1 -5
  133. data/app/pb_kits/playbook/pb_multiple_users/_multiple_users.jsx +2 -5
  134. data/app/pb_kits/playbook/pb_multiple_users/docs/_multiple_users_dark.html.erb +41 -0
  135. data/app/pb_kits/playbook/pb_multiple_users/docs/_multiple_users_dark.jsx +52 -0
  136. data/app/pb_kits/playbook/pb_multiple_users/docs/example.yml +2 -1
  137. data/app/pb_kits/playbook/pb_multiple_users/docs/index.js +1 -0
  138. data/app/pb_kits/playbook/pb_multiple_users_stacked/docs/_multiple_users_stacked_dark.html.erb +53 -0
  139. data/app/pb_kits/playbook/pb_multiple_users_stacked/docs/_multiple_users_stacked_dark.jsx +62 -0
  140. data/app/pb_kits/playbook/pb_multiple_users_stacked/docs/example.yml +2 -1
  141. data/app/pb_kits/playbook/pb_multiple_users_stacked/docs/index.js +1 -0
  142. data/app/pb_kits/playbook/pb_nav/_horizontal_nav.scss +4 -6
  143. data/app/pb_kits/playbook/pb_nav/_nav.jsx +2 -7
  144. data/app/pb_kits/playbook/pb_nav/_vertical_nav.scss +14 -18
  145. data/app/pb_kits/playbook/pb_person/_person.jsx +1 -5
  146. data/app/pb_kits/playbook/pb_person_contact/_person_contact.jsx +7 -12
  147. data/app/pb_kits/playbook/pb_person_contact/docs/_person_contact_with_wrong_numbers.jsx +0 -1
  148. data/app/pb_kits/playbook/pb_pill/docs/_pill_dark.html.erb +52 -0
  149. data/app/pb_kits/playbook/pb_pill/docs/_pill_dark.jsx +69 -0
  150. data/app/pb_kits/playbook/pb_pill/docs/example.yml +3 -1
  151. data/app/pb_kits/playbook/pb_pill/docs/index.js +1 -0
  152. data/app/pb_kits/playbook/pb_popover/_popover.jsx +1 -5
  153. data/app/pb_kits/playbook/pb_progress_pills/docs/_progress_pills_dark.html.erb +1 -0
  154. data/app/pb_kits/playbook/pb_progress_pills/docs/_progress_pills_dark.jsx +20 -0
  155. data/app/pb_kits/playbook/pb_progress_pills/docs/_progress_pills_status_dark.html.erb +1 -0
  156. data/app/pb_kits/playbook/pb_progress_pills/docs/_progress_pills_status_dark.jsx +19 -0
  157. data/app/pb_kits/playbook/pb_progress_pills/docs/example.yml +4 -1
  158. data/app/pb_kits/playbook/pb_progress_pills/docs/index.js +2 -0
  159. data/app/pb_kits/playbook/pb_progress_simple/_progress_simple.jsx +4 -4
  160. data/app/pb_kits/playbook/pb_progress_step/_progress_step.jsx +1 -1
  161. data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_dark.html.erb +34 -0
  162. data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_dark.jsx +18 -0
  163. data/app/pb_kits/playbook/pb_progress_step/docs/example.yml +2 -0
  164. data/app/pb_kits/playbook/pb_progress_step/docs/index.js +1 -0
  165. data/app/pb_kits/playbook/pb_progress_step/progress_step.rb +2 -2
  166. data/app/pb_kits/playbook/pb_progress_step/progress_step_item.rb +1 -0
  167. data/app/pb_kits/playbook/pb_radio/_radio.html.erb +1 -1
  168. data/app/pb_kits/playbook/pb_radio/_radio.scss +4 -9
  169. data/app/pb_kits/playbook/pb_radio/docs/_radio_dark.html.erb +25 -0
  170. data/app/pb_kits/playbook/pb_radio/docs/_radio_dark.jsx +33 -0
  171. data/app/pb_kits/playbook/pb_radio/docs/_radio_dark_error.html.erb +7 -0
  172. data/app/pb_kits/playbook/pb_radio/docs/_radio_dark_error.jsx +17 -0
  173. data/app/pb_kits/playbook/pb_radio/docs/example.yml +4 -1
  174. data/app/pb_kits/playbook/pb_radio/docs/index.js +3 -0
  175. data/app/pb_kits/playbook/pb_radio/radio.rb +4 -2
  176. data/app/pb_kits/playbook/pb_section_separator/_section_separator.jsx +1 -1
  177. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_dark.html.erb +1 -0
  178. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_dark.jsx +14 -0
  179. data/app/pb_kits/playbook/pb_section_separator/docs/example.yml +2 -1
  180. data/app/pb_kits/playbook/pb_section_separator/docs/index.js +1 -0
  181. data/app/pb_kits/playbook/pb_select/_select.scss +5 -9
  182. data/app/pb_kits/playbook/pb_select/docs/_select_dark.html.erb +24 -0
  183. data/app/pb_kits/playbook/pb_select/docs/_select_dark.jsx +33 -0
  184. data/app/pb_kits/playbook/pb_select/docs/_select_dark_error.html.erb +25 -0
  185. data/app/pb_kits/playbook/pb_select/docs/_select_dark_error.jsx +39 -0
  186. data/app/pb_kits/playbook/pb_select/docs/example.yml +4 -1
  187. data/app/pb_kits/playbook/pb_select/docs/index.js +2 -0
  188. data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.scss +3 -6
  189. data/app/pb_kits/playbook/pb_selectable_card/docs/_selectable_card_dark.html.erb +45 -0
  190. data/app/pb_kits/playbook/pb_selectable_card/docs/_selectable_card_dark.jsx +72 -0
  191. data/app/pb_kits/playbook/pb_selectable_card/docs/example.yml +2 -1
  192. data/app/pb_kits/playbook/pb_selectable_card/docs/index.js +1 -0
  193. data/app/pb_kits/playbook/pb_selectable_card_icon/_selectable_card_icon.jsx +5 -9
  194. data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_selectable_card_icon_dark.html.erb +30 -0
  195. data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_selectable_card_icon_dark.jsx +40 -0
  196. data/app/pb_kits/playbook/pb_selectable_card_icon/docs/example.yml +4 -1
  197. data/app/pb_kits/playbook/pb_selectable_card_icon/docs/index.js +1 -0
  198. data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.jsx +5 -9
  199. data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.scss +37 -35
  200. data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_dark.html.erb +26 -0
  201. data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_dark.jsx +43 -0
  202. data/app/pb_kits/playbook/pb_selectable_icon/docs/example.yml +3 -1
  203. data/app/pb_kits/playbook/pb_selectable_icon/docs/index.js +1 -0
  204. data/app/pb_kits/playbook/pb_stat_change/_stat_change.jsx +2 -2
  205. data/app/pb_kits/playbook/pb_stat_value/_stat_value.jsx +3 -3
  206. data/app/pb_kits/playbook/pb_stat_value/docs/_stat_value_default.jsx +1 -6
  207. data/app/pb_kits/playbook/pb_table/_table.jsx +2 -2
  208. data/app/pb_kits/playbook/pb_table/docs/_table_container_dark.html.erb +34 -0
  209. data/app/pb_kits/playbook/pb_table/docs/_table_container_dark.jsx +47 -0
  210. data/app/pb_kits/playbook/pb_table/docs/_table_dark.html.erb +34 -0
  211. data/app/pb_kits/playbook/pb_table/docs/_table_dark.jsx +46 -0
  212. data/app/pb_kits/playbook/pb_table/docs/example.yml +4 -1
  213. data/app/pb_kits/playbook/pb_table/docs/index.js +2 -0
  214. data/app/pb_kits/playbook/pb_table/styles/_hover.scss +12 -15
  215. data/app/pb_kits/playbook/pb_table/styles/_mobile.scss +4 -6
  216. data/app/pb_kits/playbook/pb_table/styles/_table-dark.scss +4 -6
  217. data/app/pb_kits/playbook/pb_table/table.rb +3 -3
  218. data/app/pb_kits/playbook/pb_text_input/_text_input.html.erb +0 -1
  219. data/app/pb_kits/playbook/pb_text_input/_text_input.jsx +18 -22
  220. data/app/pb_kits/playbook/pb_text_input/_text_input.scss +8 -17
  221. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_dark.html.erb +5 -0
  222. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_dark.jsx +78 -0
  223. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_dark_error.html.erb +14 -0
  224. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_dark_error.jsx +18 -0
  225. data/app/pb_kits/playbook/pb_text_input/docs/example.yml +5 -0
  226. data/app/pb_kits/playbook/pb_text_input/docs/index.js +2 -0
  227. data/app/pb_kits/playbook/pb_text_input/text_input.rb +0 -2
  228. data/app/pb_kits/playbook/pb_textarea/_textarea.jsx +1 -1
  229. data/app/pb_kits/playbook/pb_textarea/docs/_textarea_dark.html.erb +9 -0
  230. data/app/pb_kits/playbook/pb_textarea/docs/_textarea_dark.jsx +34 -0
  231. data/app/pb_kits/playbook/pb_textarea/docs/_textarea_dark_error.html.erb +6 -0
  232. data/app/pb_kits/playbook/pb_textarea/docs/_textarea_dark_error.jsx +19 -0
  233. data/app/pb_kits/playbook/pb_textarea/docs/example.yml +4 -1
  234. data/app/pb_kits/playbook/pb_textarea/docs/index.js +2 -0
  235. data/app/pb_kits/playbook/pb_time/_time.html.erb +17 -23
  236. data/app/pb_kits/playbook/pb_time/_time.jsx +17 -28
  237. data/app/pb_kits/playbook/pb_time/_time.scss +8 -16
  238. data/app/pb_kits/playbook/pb_time/docs/_time_align.jsx +3 -3
  239. data/app/pb_kits/playbook/pb_time/docs/_time_dark.jsx +28 -0
  240. data/app/pb_kits/playbook/pb_time/docs/_time_default.html.erb +3 -47
  241. data/app/pb_kits/playbook/pb_time/docs/_time_default.jsx +7 -34
  242. data/app/pb_kits/playbook/pb_time/docs/_time_timestamp.html.erb +1 -3
  243. data/app/pb_kits/playbook/pb_time/docs/_time_timestamp.jsx +10 -0
  244. data/app/pb_kits/playbook/pb_time/docs/example.yml +3 -7
  245. data/app/pb_kits/playbook/pb_time/docs/index.js +1 -2
  246. data/app/pb_kits/playbook/pb_time/time.rb +2 -14
  247. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.jsx +1 -1
  248. data/app/pb_kits/playbook/pb_time_range_inline/docs/_time_range_inline_dark.html.erb +72 -0
  249. data/app/pb_kits/playbook/pb_time_range_inline/docs/_time_range_inline_dark.jsx +81 -0
  250. data/app/pb_kits/playbook/pb_time_range_inline/docs/example.yml +3 -0
  251. data/app/pb_kits/playbook/pb_time_range_inline/docs/index.js +1 -0
  252. data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.jsx +3 -3
  253. data/app/pb_kits/playbook/pb_time_stacked/docs/_time_stacked_dark.html.erb +1 -0
  254. data/app/pb_kits/playbook/pb_time_stacked/docs/_time_stacked_dark.jsx +15 -0
  255. data/app/pb_kits/playbook/pb_time_stacked/docs/example.yml +3 -1
  256. data/app/pb_kits/playbook/pb_time_stacked/docs/index.js +1 -0
  257. data/app/pb_kits/playbook/pb_timestamp/_timestamp.jsx +1 -1
  258. data/app/pb_kits/playbook/pb_title/_title.jsx +2 -6
  259. data/app/pb_kits/playbook/pb_title/_title.scss +5 -5
  260. data/app/pb_kits/playbook/pb_title/docs/_title_dark.html.erb +8 -0
  261. data/app/pb_kits/playbook/pb_title/docs/_title_dark.jsx +35 -0
  262. data/app/pb_kits/playbook/pb_title/docs/example.yml +2 -3
  263. data/app/pb_kits/playbook/pb_title/docs/index.js +1 -1
  264. data/app/pb_kits/playbook/pb_title_count/_title_count.jsx +1 -5
  265. data/app/pb_kits/playbook/pb_title_count/docs/_title_count_align_dark.html.erb +23 -0
  266. data/app/pb_kits/playbook/pb_title_count/docs/_title_count_align_dark.jsx +34 -0
  267. data/app/pb_kits/playbook/pb_title_count/docs/_title_count_dark.html.erb +23 -0
  268. data/app/pb_kits/playbook/pb_title_count/docs/_title_count_dark.jsx +34 -0
  269. data/app/pb_kits/playbook/pb_title_count/docs/example.yml +4 -0
  270. data/app/pb_kits/playbook/pb_title_count/docs/index.js +2 -0
  271. data/app/pb_kits/playbook/pb_title_detail/_title_detail.jsx +5 -5
  272. data/app/pb_kits/playbook/pb_title_detail/docs/_title_detail_dark.html.erb +19 -0
  273. data/app/pb_kits/playbook/pb_title_detail/docs/_title_detail_dark.jsx +29 -0
  274. data/app/pb_kits/playbook/pb_toggle/_toggle.jsx +3 -3
  275. data/app/pb_kits/playbook/pb_toggle/_toggle.scss +43 -41
  276. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_size.html.erb +11 -0
  277. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_size.jsx +44 -0
  278. data/app/pb_kits/playbook/pb_toggle/docs/example.yml +2 -0
  279. data/app/pb_kits/playbook/pb_toggle/docs/index.js +1 -0
  280. data/app/pb_kits/playbook/pb_toggle/toggle.rb +1 -1
  281. data/app/pb_kits/playbook/pb_typeahead/_typeahead.scss +5 -24
  282. data/app/pb_kits/playbook/pb_typeahead/docs/example.yml +2 -8
  283. data/app/pb_kits/playbook/pb_user/docs/_user_dark.html.erb +42 -0
  284. data/app/pb_kits/playbook/pb_user/docs/_user_dark.jsx +55 -0
  285. data/app/pb_kits/playbook/pb_user/docs/_user_text_only_dark.html.erb +19 -0
  286. data/app/pb_kits/playbook/pb_user/docs/_user_text_only_dark.jsx +26 -0
  287. data/app/pb_kits/playbook/pb_user/docs/example.yml +4 -1
  288. data/app/pb_kits/playbook/pb_user/docs/index.js +3 -0
  289. data/app/pb_kits/playbook/pb_user_badge/_user_badge.jsx +2 -5
  290. data/app/pb_kits/playbook/pb_user_badge/docs/_user_badge_dark.html.erb +13 -0
  291. data/app/pb_kits/playbook/pb_user_badge/docs/_user_badge_dark.jsx +27 -0
  292. data/app/pb_kits/playbook/pb_user_badge/docs/example.yml +5 -0
  293. data/app/pb_kits/playbook/pb_user_badge/docs/index.js +1 -0
  294. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_weekday_stacked_dark.html.erb +1 -0
  295. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_weekday_stacked_dark.jsx +14 -0
  296. data/app/pb_kits/playbook/pb_weekday_stacked/docs/example.yml +3 -0
  297. data/app/pb_kits/playbook/pb_weekday_stacked/docs/index.js +1 -0
  298. data/app/pb_kits/playbook/plugins/pb_chart.js +1 -1
  299. data/app/pb_kits/playbook/tokens/_colors.scss +23 -22
  300. data/app/pb_kits/playbook/tokens/_typography.scss +7 -7
  301. data/app/pb_kits/playbook/vendor.js +0 -11
  302. data/app/views/layouts/playbook/_mobile_hamburger.html.erb +2 -0
  303. data/app/views/layouts/playbook/_nav.html.erb +33 -0
  304. data/app/views/layouts/playbook/_sidebar.html.erb +51 -0
  305. data/app/views/layouts/playbook/application.html.erb +26 -0
  306. data/app/views/layouts/playbook/fullscreen.html.slim +10 -0
  307. data/app/views/layouts/playbook/grid.html.slim +10 -0
  308. data/app/views/layouts/playbook/samples.html.erb +19 -0
  309. data/app/views/playbook/guides/create_kit.html.slim +16 -0
  310. data/app/views/playbook/guides/create_kit/_file_naming.html.md +2 -0
  311. data/app/views/playbook/guides/create_kit/_generator.html.md +6 -0
  312. data/app/views/playbook/guides/create_kit/_kit_examples.html.md +2 -0
  313. data/app/views/playbook/guides/create_kit/_kit_rails.html.md +2 -0
  314. data/app/views/playbook/guides/create_kit/_kit_react.html.md +2 -0
  315. data/app/views/playbook/guides/create_kit/_layout.html.md +2 -0
  316. data/app/views/playbook/guides/create_kit/_view_objects.html.md +2 -0
  317. data/app/views/playbook/guides/create_kit/_writing_sass.md +10 -0
  318. data/app/views/playbook/guides/use_nitro.html.slim +6 -0
  319. data/app/views/playbook/guides/use_nitro/_local.html.md +2 -0
  320. data/app/views/playbook/guides/use_nitro/_nitro_components.html.md +2 -0
  321. data/app/views/playbook/guides/use_nitro/_versions.html.md +2 -0
  322. data/app/views/playbook/pages/fullscreen.html.slim +10 -0
  323. data/app/views/playbook/pages/grid.html.slim +2 -0
  324. data/app/views/playbook/pages/home.html.slim +4 -0
  325. data/app/views/playbook/pages/kit_category_show.html.erb +14 -0
  326. data/app/views/playbook/pages/kit_show.html.erb +33 -0
  327. data/app/views/playbook/pages/kits.html.erb +12 -0
  328. data/app/views/playbook/pages/principals/_getting_started.html.md +30 -0
  329. data/app/views/playbook/pages/principles.html.slim +3 -0
  330. data/app/views/playbook/pages/tokens.html.slim +15 -0
  331. data/app/views/playbook/pages/tokens/_pb_doc_spacing.html.slim +61 -0
  332. data/app/views/playbook/pages/utilities.html.slim +116 -0
  333. data/app/views/playbook/pages/utilities/_pb_doc_color.html.slim +15 -0
  334. data/app/views/playbook/samples/collection_detail/index.html.erb +169 -0
  335. data/app/views/playbook/samples/collection_detail/index.jsx +372 -0
  336. data/app/views/playbook/samples/dashboards/index.html.erb +81 -0
  337. data/app/views/playbook/samples/dashboards/index.jsx +130 -0
  338. data/app/views/playbook/samples/filter_table/index.html.erb +348 -0
  339. data/app/views/playbook/samples/filter_table/index.jsx +433 -0
  340. data/app/views/playbook/samples/registration/index.html.erb +316 -0
  341. data/app/views/playbook/samples/registration/index.jsx +476 -0
  342. data/app/views/playbook/samples/sample_show.html.erb +36 -0
  343. data/lib/generators/kit/kit_generator.rb +1 -1
  344. data/lib/generators/kit/templates/kit_jsx.erb.tt +1 -1
  345. data/lib/playbook/engine.rb +0 -1
  346. data/lib/playbook/version.rb +2 -1
  347. data/lib/tasks/pb_release.rake +3 -14
  348. metadata +150 -100
  349. data/app/pb_kits/playbook/pb_caption/docs/_caption_variants.html.erb +0 -1
  350. data/app/pb_kits/playbook/pb_caption/docs/_caption_variants.jsx +0 -16
  351. data/app/pb_kits/playbook/pb_caption/docs/_caption_variants.md +0 -3
  352. data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_options.html.erb +0 -10
  353. data/app/pb_kits/playbook/pb_circle_chart/_circle_chart.jsx +0 -130
  354. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_block.jsx +0 -39
  355. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_colors.jsx +0 -29
  356. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_default.jsx +0 -28
  357. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_inner_sizes.jsx +0 -117
  358. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_live_data.jsx +0 -53
  359. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_rounded.jsx +0 -30
  360. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_with_labels.jsx +0 -45
  361. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_with_legend_kit.jsx +0 -30
  362. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_with_title.jsx +0 -45
  363. data/app/pb_kits/playbook/pb_circle_chart/docs/index.js +0 -9
  364. data/app/pb_kits/playbook/pb_date/docs/_date_timezone.html.erb +0 -51
  365. data/app/pb_kits/playbook/pb_date/docs/_date_timezone.md +0 -6
  366. data/app/pb_kits/playbook/pb_date_picker/_date_picker.html.erb +0 -39
  367. data/app/pb_kits/playbook/pb_date_picker/_date_picker.jsx +0 -149
  368. data/app/pb_kits/playbook/pb_date_picker/_date_picker.scss +0 -33
  369. data/app/pb_kits/playbook/pb_date_picker/date_picker.rb +0 -85
  370. data/app/pb_kits/playbook/pb_date_picker/date_picker_helper.js +0 -169
  371. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_allow_input.html.erb +0 -4
  372. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_allow_input.jsx +0 -13
  373. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_allow_input.md +0 -1
  374. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_dark.html.erb +0 -4
  375. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_dark.jsx +0 -13
  376. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default.html.erb +0 -1
  377. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default.jsx +0 -12
  378. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default_date.html.erb +0 -24
  379. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_default_date.jsx +0 -30
  380. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_disabled.html.erb +0 -43
  381. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_disabled.jsx +0 -48
  382. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_error.html.erb +0 -4
  383. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_error.jsx +0 -13
  384. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_format.html.erb +0 -19
  385. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_format.jsx +0 -25
  386. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_format.md +0 -1
  387. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_hide_icon.html.erb +0 -4
  388. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_hide_icon.jsx +0 -13
  389. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_hooks.html.erb +0 -37
  390. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_hooks.jsx +0 -37
  391. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_hooks.md +0 -1
  392. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_input.html.erb +0 -26
  393. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_input.jsx +0 -32
  394. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_input.md +0 -3
  395. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_label.html.erb +0 -9
  396. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_label.jsx +0 -17
  397. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_label.md +0 -1
  398. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_min_max.html.erb +0 -14
  399. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_min_max.jsx +0 -22
  400. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_change.jsx +0 -34
  401. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_change.md +0 -3
  402. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range.html.erb +0 -4
  403. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range.jsx +0 -13
  404. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_year_range.html.erb +0 -7
  405. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_year_range.jsx +0 -16
  406. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_year_range.md +0 -1
  407. data/app/pb_kits/playbook/pb_date_picker/docs/_description.md +0 -7
  408. data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +0 -36
  409. data/app/pb_kits/playbook/pb_date_picker/docs/index.js +0 -15
  410. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_calendar_input_icon.scss +0 -33
  411. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_day_styles.scss +0 -53
  412. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_flatpickr_styles.scss +0 -785
  413. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_header_styles.scss +0 -108
  414. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_overrides.scss +0 -44
  415. data/app/pb_kits/playbook/pb_form/form_builder/date_picker_field.rb +0 -20
  416. data/app/pb_kits/playbook/pb_radio/docs/_radio_options.html.erb +0 -9
  417. data/app/pb_kits/playbook/pb_time/docs/_time_align.html.erb +0 -18
  418. data/app/pb_kits/playbook/pb_time/docs/_time_sizes.html.erb +0 -11
  419. data/app/pb_kits/playbook/pb_time/docs/_time_sizes.jsx +0 -19
  420. data/app/pb_kits/playbook/pb_time/docs/_time_timezone.html.erb +0 -38
  421. data/app/pb_kits/playbook/pb_time/docs/_time_timezone.jsx +0 -57
  422. data/app/pb_kits/playbook/pb_time/docs/_time_timezone.md +0 -11
  423. data/app/pb_kits/playbook/pb_title/docs/_title_variants.html.erb +0 -1
  424. data/app/pb_kits/playbook/pb_title/docs/_title_variants.jsx +0 -17
  425. data/app/pb_kits/playbook/pb_title/docs/_title_variants.md +0 -3
  426. data/app/pb_kits/playbook/pb_typeahead/_typeahead.jsx +0 -60
  427. data/app/pb_kits/playbook/pb_typeahead/components/Control.jsx +0 -30
  428. data/app/pb_kits/playbook/pb_typeahead/components/IndicatorsContainer.jsx +0 -13
  429. data/app/pb_kits/playbook/pb_typeahead/components/MenuList.jsx +0 -12
  430. data/app/pb_kits/playbook/pb_typeahead/components/MultiValue.jsx +0 -51
  431. data/app/pb_kits/playbook/pb_typeahead/components/Option.jsx +0 -34
  432. data/app/pb_kits/playbook/pb_typeahead/components/Placeholder.jsx +0 -13
  433. data/app/pb_kits/playbook/pb_typeahead/components/ValueContainer.jsx +0 -13
  434. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_default.jsx +0 -22
  435. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.jsx +0 -29
  436. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async.jsx +0 -84
  437. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_summary.jsx +0 -45
  438. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_users.jsx +0 -101
  439. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_summary.jsx +0 -27
  440. data/app/pb_kits/playbook/pb_typeahead/docs/index.js +0 -4
  441. data/app/pb_kits/playbook/react_rails_kits.js +0 -5
  442. data/app/pb_kits/playbook/tokens/index.scss +0 -11
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bb42b349eaada511eb34ad28e5941b0de5f2e491b979450744340b94dcce6d14
4
- data.tar.gz: 74810184318871129e9ece088f516143a74db76a0f69f9d5a327d1c872f43fc1
3
+ metadata.gz: 7b4dce5edb2e04ee4933fa937457a2b942afb7d96ba6241db9326ac567e02262
4
+ data.tar.gz: a742f3a03fdf9d7cc773cf3c39a3e8453a925f79f90a25649f4c1b63a942aaab
5
5
  SHA512:
6
- metadata.gz: 3843d81864f1d56428a211a5f8c9baedc06aee0bb7674a9c513b1297deb36786e76714acad0996a07748b6dc34e3a846473373a57cc853f1cd3d52fba34c6644
7
- data.tar.gz: '03822a87e908c2cd21c6911592a26120ace405f613edef75780060bde453ba911f678d33a90063bc0d01f5c06b6f5ef0c9a661d1b1502da18ba767019b343aae'
6
+ metadata.gz: fd8d5c695dace05fd3967e9664943b318a160d7edbd327cdd54ce2de9540740fccc98dc14a794285f66152a6422d1311cc1defe06b8436aa66bb2b3d1f184a45
7
+ data.tar.gz: 6fbcb798e3208c4f53630766d061c1040176717a99d2eaf860b2a9754ecf0584777fc541ae0b1248c856d2417c70004ad237ee01e6940d49e74a64a6daa0e6d3
data/README.md CHANGED
@@ -9,7 +9,8 @@ Playbook is the first design system built for both Rails & React interfaces. Ins
9
9
 
10
10
  ## Getting started
11
11
 
12
- 1. Run `make it`
12
+ 1. Run `make install`
13
+ 1. Run `make start`
13
14
  1. Install overcommit hooks `bin/overcommit`
14
15
  1. open [http://localhost:8089](http://localhost:8089)
15
16
 
@@ -34,9 +35,10 @@ To run the tests, do `bin/test`. To launch a shell in the container run `make sh
34
35
 
35
36
  See [docs/upgrade-guide](./docs/upgrade-guide)
36
37
 
37
- ### Releases
38
+ ### Nitro & Releases
38
39
 
39
- * [Playbook Releases](https://github.com/powerhome/playbook/wiki/Playbook-Releases)
40
+ * [Integrating Playbook Kits into Nitro Components](https://github.com/powerhome/playbook/wiki/Integrating-Playbook-Kits-into-Nitro-Components)
41
+ * [Creating Releases](https://github.com/powerhome/playbook/wiki/Releasing-a-New-Version)
40
42
 
41
43
  ### Development Environment
42
44
 
@@ -61,4 +63,4 @@ See [docs/upgrade-guide](./docs/upgrade-guide)
61
63
  5. When finished, inside of the directory you want to test with playbook, run `yarn unlink playbook-ui`.
62
64
  6. Inside of your Playbook repository, run `yarn unlink`.
63
65
 
64
- Keep in mind: Styles are brought in from playbook through the rails gem, so you will not be able to test scss updates with yarn linking.
66
+ Keep in mind: Styles are brought in from playbook through the rails gem, so you will not be able to test scss updates with yarn linking.
@@ -2,12 +2,12 @@
2
2
 
3
3
  module Playbook
4
4
  class ApplicationController < ActionController::Base
5
+ protect_from_forgery with: :exception
6
+
5
7
  helper Webpacker::Helper
6
8
  helper Playbook::PbKitHelper
7
9
  helper Playbook::PbDocHelper
8
10
  helper Playbook::PbSampleHelper
9
11
  append_view_path Playbook::Engine.root + "app/pb_kits"
10
12
  end
11
-
12
-
13
13
  end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_dependency "playbook/application_controller"
4
+
5
+ module Playbook
6
+ class GuidesController < ApplicationController
7
+ def create_kit; end
8
+
9
+ def use_nitro; end
10
+ end
11
+ end
@@ -0,0 +1,109 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_dependency "playbook/application_controller"
4
+ require "yaml"
5
+
6
+ module Playbook
7
+ class PagesController < ApplicationController
8
+ before_action :set_kit, only: %i[kit_show_rails kit_show_react]
9
+ before_action :ensure_kit_type_exists, only: %i[kit_show_rails kit_show_react]
10
+ before_action :set_category, only: %i[kit_category_show_rails kit_category_show_react]
11
+
12
+
13
+
14
+ def enable_dark_mode
15
+ cookies[:dark_mode] = {
16
+ value: "true",
17
+ path: "/",
18
+ }
19
+ @dark_mode = true
20
+ redirect_back(fallback_location: root_path)
21
+ end
22
+
23
+ def disable_dark_mode
24
+ cookies[:dark_mode] = {
25
+ value: "false",
26
+ path: "/",
27
+ }
28
+ @dark_mode = false
29
+ redirect_back(fallback_location: root_path)
30
+ end
31
+
32
+
33
+ def home; end
34
+
35
+ def utilities; end
36
+
37
+ def tokens; end
38
+
39
+ def kits
40
+ @dark = dark_mode
41
+ params[:type] ||= "react"
42
+ @type = params[:type]
43
+ end
44
+
45
+ def principles; end
46
+
47
+ def grid
48
+ render layout: "layouts/playbook/grid"
49
+ end
50
+
51
+ def kit_show_rails
52
+ @dark = cookies[:dark_mode]
53
+ render "playbook/pages/kit_show"
54
+ end
55
+
56
+ def kit_show_react
57
+ render template: "playbook/pages/kit_show"
58
+ end
59
+
60
+ def kit_category_show_rails
61
+ params[:type] ||= "rails"
62
+ @type = params[:type]
63
+ render template: "playbook/pages/kit_category_show"
64
+ end
65
+
66
+ def kit_category_show_react
67
+ render template: "playbook/pages/kit_category_show"
68
+ end
69
+
70
+ private
71
+ def dark_mode
72
+ if @dark_mode == "true"
73
+ true
74
+ else
75
+ false
76
+ end
77
+ end
78
+
79
+ def set_category
80
+ categories = MENU["kits"].map { |link| link.first.first if link.is_a?(Hash) }.compact
81
+ @category = params[:name]
82
+ if categories.flatten.include?(@category)
83
+ @category_kits = MENU["kits"].map { |link| link.first.last if link.is_a?(Hash) && link.first.first == @category }.compact.flatten
84
+ @kits = params[:name]
85
+ else
86
+ redirect_to root_path, flash: { error: "That kit does not exist" }
87
+ end
88
+ end
89
+
90
+ def set_kit
91
+ menu = MENU["kits"].map { |link| link.is_a?(Hash) ? link.first.last : link }
92
+ if menu.flatten.include?(params[:name])
93
+ @kit = params[:name]
94
+ else
95
+ redirect_to root_path, flash: { error: "That kit does not exist" }
96
+ end
97
+ end
98
+
99
+ def ensure_kit_type_exists
100
+ # TODO: unsure why we cannot simply use the helpers that are included in ApplicationController - fix this
101
+ is_rails_kit = action_name == "kit_show_rails"
102
+ files = is_rails_kit ? File.join("**", "*.erb") : File.join("**", "*.jsx")
103
+ kit_files = Dir.glob(files, base: "#{Playbook::Engine.root}/app/pb_kits/playbook/pb_#{@kit}/docs").present?
104
+ if !kit_files.present?
105
+ redirect_to action: is_rails_kit ? "kit_show_react" : "kit_show_rails"
106
+ end
107
+ end
108
+ end
109
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_dependency "playbook/application_controller"
4
+ require "yaml"
5
+
6
+ module Playbook
7
+ class SamplesController < ApplicationController
8
+ before_action :set_sample, only: %i[sample_show_rails sample_show_react]
9
+
10
+ layout "playbook/samples"
11
+
12
+ def samples
13
+ params[:type] ||= "rails"
14
+ @type = params[:type]
15
+ end
16
+
17
+ def sample_show_rails
18
+ params[:type] ||= "rails"
19
+ @type = params[:type]
20
+ render template: "playbook/samples/sample_show"
21
+ end
22
+
23
+ def sample_show_react
24
+ params[:type] ||= "react"
25
+ @type = params[:type]
26
+ render template: "playbook/samples/sample_show"
27
+ end
28
+
29
+ private
30
+
31
+ def set_sample
32
+ menu = MENU["samples"].map { |link| link.is_a?(Hash) ? link.first.last : link }
33
+ if menu.flatten.include?(params[:name])
34
+ @sample = params[:name]
35
+ else
36
+ redirect_to root_path, flash: { error: "That kit does not exist" }
37
+ end
38
+ end
39
+ end
40
+ end
@@ -13,24 +13,5 @@ module Playbook
13
13
  def current_webpacker_instance
14
14
  Playbook.webpacker
15
15
  end
16
-
17
- def dark_mode
18
- if cookies[:dark_mode] == "true"
19
- true
20
- else
21
- false
22
- end
23
- end
24
-
25
- def dark_mode_props(props)
26
- if cookies[:dark_mode] == "true"
27
- props.merge(dark: dark_mode)
28
- elsif cookies[:dark_mode] == "false"
29
- props.merge(dark: dark_mode)
30
- else
31
- props
32
- end
33
- end
34
-
35
16
  end
36
17
  end
@@ -45,6 +45,7 @@ module Playbook
45
45
  end
46
46
 
47
47
  def pb_kit(kit: "", type: "rails", show_code: true)
48
+ @dark = cookies[:dark_mode]
48
49
  @type = type
49
50
  @kit_examples = get_kit_examples(kit, type)
50
51
  @show_code = show_code
@@ -10,32 +10,34 @@ module Playbook
10
10
  def pb_rails(kit, props: {}, &block)
11
11
  previous = prefix_partial_path_with_controller_namespace
12
12
  self.prefix_partial_path_with_controller_namespace = false
13
- kit = build_view_model(kit.to_s, rails_props(props), &block)
13
+ kit = build_view_model(kit.to_s, dark_mode_props(props), &block)
14
14
  render(partial: kit, as: :object)
15
15
  ensure
16
16
  self.prefix_partial_path_with_controller_namespace = previous
17
17
  end
18
18
 
19
- def pb_react(kit, props:{dark: react_props}, options: {})
19
+ def pb_react(kit, props:{dark: dark_mode}, options: {})
20
20
  ::Webpacker::React::Component.new(kit.camelize).render(props, options)
21
21
  end
22
22
 
23
23
  private
24
- def rails_props(props)
25
- if @playbook.nil?
26
- props
24
+ def dark_mode
25
+ if cookies[:dark_mode] == "true"
26
+ true
27
27
  else
28
- dark_mode_props(props)
28
+ false
29
29
  end
30
- end
30
+ end
31
31
 
32
- def react_props
33
- if @playbook.nil?
34
- false
32
+ def dark_mode_props(props)
33
+ if cookies[:dark_mode] == "true"
34
+ props.merge(dark: dark_mode)
35
+ elsif cookies[:dark_mode] == "false"
36
+ props.merge(dark: dark_mode)
35
37
  else
36
- dark_mode
38
+ props
37
39
  end
38
- end
40
+ end
39
41
 
40
42
  def is_subkit?(kit)
41
43
  kit.match(%r{[/\\]})
@@ -1,4 +1,3 @@
1
- @import "tokens/fonts";
2
1
  @import "pb_body/body";
3
2
  @import "pb_button/button";
4
3
  @import 'pb_button_toolbar/button_toolbar';
@@ -16,7 +15,6 @@
16
15
  @import 'pb_currency/currency';
17
16
  @import 'pb_dashboard_value/dashboard_value';
18
17
  @import 'pb_date/date';
19
- @import 'pb_date_picker/date_picker';
20
18
  @import 'pb_date_range_inline/date_range_inline';
21
19
  @import 'pb_date_range_stacked/date_range_stacked';
22
20
  @import 'pb_date_stacked/date_stacked';
@@ -19,7 +19,7 @@
19
19
  </div>
20
20
 
21
21
  <% if @show_code%>
22
- <div class="markdown pb--kit-example-markdown <%= cookies[:dark_mode] == "true" ? "dark" : "" %>">
22
+ <div class="markdown pb--kit-example-markdown <%=cookies[:dark_mode] == "true" ? "dark" : "" %>">
23
23
  <%= markdown(get_per_sample_descriptions(@kit_examples[:kit], key)) %>
24
24
  </div>
25
25
  <div class="pb--codeControls">
@@ -25,7 +25,6 @@ kits:
25
25
  - fixed_confirmation_toast
26
26
  - flex
27
27
  - forms:
28
- - date_picker
29
28
  - file_upload
30
29
  - form
31
30
  - form_pill
@@ -1,7 +1,3 @@
1
- import './_playbook.scss'
2
- import 'lazysizes/plugins/attrchange/ls.attrchange'
3
- import 'lazysizes'
4
-
5
1
  // React Component JSX Imports from the React Kits
6
2
  export Avatar from './pb_avatar/_avatar.jsx'
7
3
  export AvatarActionButton from './pb_avatar_action_button/_avatar_action_button.jsx'
@@ -13,13 +9,11 @@ export ButtonToolbar from './pb_button_toolbar/_button_toolbar.jsx'
13
9
  export Caption from './pb_caption/_caption.jsx'
14
10
  export Card from './pb_card/_card.jsx'
15
11
  export Checkbox from './pb_checkbox/_checkbox.jsx'
16
- export CircleChart from './pb_circle_chart/_circle_chart.jsx'
17
12
  export CircleIconButton from './pb_circle_icon_button/_circle_icon_button.jsx'
18
13
  export Contact from './pb_contact/_contact.jsx'
19
14
  export Currency from './pb_currency/_currency.jsx'
20
15
  export DashboardValue from './pb_dashboard_value/_dashboard_value.jsx'
21
16
  export Date from './pb_date/_date.jsx'
22
- export DatePicker from './pb_date_picker/_date_picker.jsx'
23
17
  export DateRangeInline from './pb_date_range_inline/_date_range_inline.jsx'
24
18
  export DateRangeStacked from './pb_date_range_stacked/_date_range_stacked.jsx'
25
19
  export DateStacked from './pb_date_stacked/_date_stacked.jsx'
@@ -85,7 +79,6 @@ export Title from './pb_title/_title.jsx'
85
79
  export TitleCount from './pb_title_count/_title_count.jsx'
86
80
  export TitleDetail from './pb_title_detail/_title_detail.jsx'
87
81
  export Toggle from './pb_toggle/_toggle.jsx'
88
- export Typeahead from './pb_typeahead/_typeahead.jsx'
89
82
  export User from './pb_user/_user.jsx'
90
83
  export UserBadge from './pb_user_badge/_user_badge.jsx'
91
84
  export WeekdayStacked from './pb_weekday_stacked/_weekday_stacked.jsx'
@@ -98,7 +91,6 @@ export dashboardValueSettings from './pb_dashboard_value/dashboardValueSettings'
98
91
 
99
92
  // Other JS/Plugins
100
93
  export pbChart from './plugins/pb_chart.js'
101
- export datePickerHelper from './pb_date_picker/date_picker_helper.js'
102
94
  export PbTypeahead from './pb_typeahead'
103
95
  export PbPopover from './pb_popover'
104
96
  export PbTable from './pb_table'
@@ -0,0 +1,55 @@
1
+ import '../../../../fonts/fontawesome-min.js'
2
+ import '../../../../fonts/regular-min.js'
3
+ import './main.scss'
4
+ import '../vendor.js'
5
+
6
+ // Move to separate file
7
+ window.$(document).on('click', '[data-toggle]', function(e) {
8
+ e.preventDefault()
9
+
10
+ var kitContainer = window.$(this).closest('.pb--doc')
11
+ var toggleTarget = window.$(this).data('toggle')
12
+
13
+ window
14
+ .$(kitContainer)
15
+ .find('[data-action="toggle"]')
16
+ .hide()
17
+ window
18
+ .$(kitContainer)
19
+ .find('[data-togglable="' + toggleTarget + '"]')
20
+ .show()
21
+ })
22
+
23
+ window.$(document).ready(() => {
24
+ $('.compress').hide()
25
+
26
+ window.$(document).on('click', '.toggle-button', (e) => {
27
+ e.preventDefault()
28
+ $('.pb--codeCopy').toggleClass('close')
29
+ })
30
+
31
+ $('.expand').click(() => {
32
+ $('.sample-nav').hide()
33
+ $('.compress').show()
34
+ })
35
+
36
+ $('.compress').click(() => {
37
+ $('.sample-nav').show()
38
+ $('.compress').hide()
39
+ })
40
+
41
+ const setClipboard = (value) => {
42
+ var tempInput = document.createElement('textarea')
43
+ tempInput.style = 'position: absolute; left: -1000px; top: -1000px'
44
+ tempInput.value = value
45
+ document.body.appendChild(tempInput)
46
+ tempInput.select()
47
+ document.execCommand('copy')
48
+ document.body.removeChild(tempInput)
49
+ }
50
+
51
+ $('.copy-clipboard').click(() => {
52
+ var copyText = document.querySelector('.hiddenCodeforCopy').textContent
53
+ setClipboard(copyText)
54
+ })
55
+ })
@@ -0,0 +1,175 @@
1
+ // ===========================================
2
+ // Generated file from kit generator.
3
+ //
4
+ // KIT EXAMPLES
5
+ // ===========================================
6
+
7
+ import WebpackerReact from 'webpacker-react'
8
+
9
+ //
10
+ // ===========================================
11
+ // ===========================================
12
+ // Generated file from kit generator.
13
+ // KIT EXAMPLES
14
+
15
+ import '../pb_form/pb_form_validation'
16
+ import * as Avatar from 'pb_avatar/docs'
17
+ import * as AvatarActionButton from 'pb_avatar_action_button/docs'
18
+ import * as Badge from 'pb_badge/docs'
19
+ import * as BarGraph from 'pb_bar_graph/docs'
20
+ import * as Body from 'pb_body/docs'
21
+ import * as Button from 'pb_button/docs'
22
+ import * as ButtonToolbar from 'pb_button_toolbar/docs'
23
+ import * as Caption from 'pb_caption/docs'
24
+ import * as Card from 'pb_card/docs'
25
+ import * as Checkbox from 'pb_checkbox/docs'
26
+ import * as CircleIconButton from 'pb_circle_icon_button/docs'
27
+ import * as Contact from 'pb_contact/docs'
28
+ import * as Currency from 'pb_currency/docs'
29
+ import * as DashboardValue from 'pb_dashboard_value/docs'
30
+ import * as Date from 'pb_date/docs'
31
+ import * as DateRangeInline from 'pb_date_range_inline/docs'
32
+ import * as DateRangeStacked from 'pb_date_range_stacked/docs'
33
+ import * as DateStacked from 'pb_date_stacked/docs'
34
+ import * as DateTimeStacked from 'pb_date_time_stacked/docs'
35
+ import * as DateYearStacked from 'pb_date_year_stacked/docs'
36
+ import * as DistributionBar from 'pb_distribution_bar/docs'
37
+ import * as FileUpload from 'pb_file_upload/docs'
38
+ import * as Filter from 'pb_filter/docs'
39
+ import * as FixedConfirmationToast from 'pb_fixed_confirmation_toast/docs'
40
+ import * as Flex from 'pb_flex/docs'
41
+ import * as FormPill from 'pb_form_pill/docs'
42
+ import * as Gauge from 'pb_gauge/docs'
43
+ import * as Hashtag from 'pb_hashtag/docs'
44
+ import * as Highlight from 'pb_highlight/docs'
45
+ import * as HomeAddressStreet from 'pb_home_address_street/docs'
46
+ import * as Icon from 'pb_icon/docs'
47
+ import * as IconCircle from 'pb_icon_circle/docs'
48
+ import * as IconValue from 'pb_icon_value/docs'
49
+ import * as Image from 'pb_image/docs'
50
+ import * as LabelPill from 'pb_label_pill/docs'
51
+ import * as LabelValue from 'pb_label_value/docs'
52
+ import * as Layout from 'pb_layout/docs'
53
+ import * as Legend from 'pb_legend/docs'
54
+ import * as LineGraph from 'pb_line_graph/docs'
55
+ import * as List from 'pb_list/docs'
56
+ import * as LoadingInline from 'pb_loading_inline/docs'
57
+ import * as Message from 'pb_message/docs'
58
+ import * as MultipleUsers from 'pb_multiple_users/docs'
59
+ import * as MultipleUsersStacked from 'pb_multiple_users_stacked/docs'
60
+ import * as Nav from 'pb_nav/docs'
61
+ import * as OnlineStatus from 'pb_online_status/docs'
62
+ import * as PbReactPopover from 'pb_popover/docs'
63
+ import * as Person from 'pb_person/docs'
64
+ import * as PersonContact from 'pb_person_contact/docs'
65
+ import * as Pill from 'pb_pill/docs'
66
+ import * as ProgressPills from 'pb_progress_pills/docs'
67
+ import * as ProgressSimple from 'pb_progress_simple/docs'
68
+ import * as ProgressStep from 'pb_progress_step/docs'
69
+ import * as Radio from 'pb_radio/docs'
70
+ import * as SectionSeparator from 'pb_section_separator/docs'
71
+ import * as Select from 'pb_select/docs'
72
+ import * as SelectableCard from 'pb_selectable_card/docs'
73
+ import * as SelectableCardIcon from 'pb_selectable_card_icon/docs'
74
+ import * as SelectableIcon from 'pb_selectable_icon/docs'
75
+ import * as Source from 'pb_source/docs'
76
+ import * as StarRating from 'pb_star_rating/docs'
77
+ import * as StatChange from 'pb_stat_change/docs'
78
+ import * as StatValue from 'pb_stat_value/docs'
79
+ import * as Table from 'pb_table/docs'
80
+ import * as Textarea from 'pb_textarea/docs'
81
+ import * as TextInput from 'pb_text_input/docs'
82
+ import * as Time from 'pb_time/docs'
83
+ import * as Timeline from 'pb_timeline/docs'
84
+ import * as TimeStacked from 'pb_time_stacked/docs'
85
+ import * as Timestamp from 'pb_timestamp/docs'
86
+ import * as TimeRangeInline from 'pb_time_range_inline/docs'
87
+ import * as Title from 'pb_title/docs'
88
+ import * as TitleCount from 'pb_title_count/docs'
89
+ import * as TitleDetail from 'pb_title_detail/docs'
90
+ import * as Toggle from 'pb_toggle/docs'
91
+ import * as User from 'pb_user/docs'
92
+ import * as UserBadge from 'pb_user_badge/docs'
93
+ import * as WeekdayStacked from 'pb_weekday_stacked/docs'
94
+
95
+ WebpackerReact.setup({
96
+ ...Avatar,
97
+ ...AvatarActionButton,
98
+ ...Badge,
99
+ ...BarGraph,
100
+ ...Body,
101
+ ...Button,
102
+ ...ButtonToolbar,
103
+ ...Caption,
104
+ ...Card,
105
+ ...Checkbox,
106
+ ...CircleIconButton,
107
+ ...Contact,
108
+ ...Currency,
109
+ ...DashboardValue,
110
+ ...Date,
111
+ ...DateRangeInline,
112
+ ...DateRangeStacked,
113
+ ...DateStacked,
114
+ ...DateTimeStacked,
115
+ ...DateYearStacked,
116
+ ...DistributionBar,
117
+ ...FileUpload,
118
+ ...Filter,
119
+ ...FixedConfirmationToast,
120
+ ...Flex,
121
+ ...FormPill,
122
+ ...Gauge,
123
+ ...Hashtag,
124
+ ...Highlight,
125
+ ...HomeAddressStreet,
126
+ ...Icon,
127
+ ...IconCircle,
128
+ ...IconValue,
129
+ ...Image,
130
+ ...LabelPill,
131
+ ...LabelValue,
132
+ ...Layout,
133
+ ...Legend,
134
+ ...LineGraph,
135
+ ...List,
136
+ ...LoadingInline,
137
+ ...Message,
138
+ ...MultipleUsers,
139
+ ...MultipleUsersStacked,
140
+ ...Nav,
141
+ ...OnlineStatus,
142
+ ...PbReactPopover,
143
+ ...Person,
144
+ ...PersonContact,
145
+ ...Pill,
146
+ ...ProgressPills,
147
+ ...ProgressSimple,
148
+ ...ProgressStep,
149
+ ...Radio,
150
+ ...SectionSeparator,
151
+ ...Select,
152
+ ...SelectableCard,
153
+ ...SelectableIcon,
154
+ ...SelectableCardIcon,
155
+ ...Source,
156
+ ...StarRating,
157
+ ...StatChange,
158
+ ...StatValue,
159
+ ...Table,
160
+ ...Textarea,
161
+ ...TextInput,
162
+ ...Time,
163
+ ...Timeline,
164
+ ...TimeStacked,
165
+ ...Timestamp,
166
+ ...TimeRangeInline,
167
+ ...Title,
168
+ ...TitleCount,
169
+ ...TitleDetail,
170
+ ...Toggle,
171
+ ...User,
172
+ ...UserBadge,
173
+ ...WeekdayStacked,
174
+ })
175
+