playbook_ui 13.34.1 → 14.0.0.pre.alpha.PBNTR415starratingform3493

Sign up to get free protection for your applications and to get access to all the features.
Files changed (462) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/_playbook.scss +17 -17
  3. data/app/pb_kits/playbook/pb_advanced_table/Components/TableHeaderCell.tsx +5 -2
  4. data/app/pb_kits/playbook/pb_advanced_table/SubKits/TableBody.tsx +24 -20
  5. data/app/pb_kits/playbook/pb_advanced_table/SubKits/TableHeader.tsx +17 -12
  6. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +86 -1
  7. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.tsx +5 -1
  8. data/app/pb_kits/playbook/pb_advanced_table/advanced_table.test.jsx +31 -1
  9. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_collapsible_trail.jsx +1 -1
  10. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_default.jsx +1 -1
  11. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_expanded_control.jsx +1 -1
  12. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_row_loading.jsx +1 -1
  13. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_loading.jsx +2 -2
  14. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_responsive.jsx +67 -0
  15. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_responsive.md +1 -0
  16. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sort.jsx +1 -1
  17. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sort_control.jsx +1 -1
  18. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_subrow_headers.jsx +1 -1
  19. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_options.jsx +1 -1
  20. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props.jsx +1 -1
  21. data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +1 -0
  22. data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +2 -1
  23. data/app/pb_kits/playbook/pb_avatar/_avatar.scss +0 -30
  24. data/app/pb_kits/playbook/pb_avatar/_avatar.tsx +19 -1
  25. data/app/pb_kits/playbook/pb_avatar/avatar.rb +44 -1
  26. data/app/pb_kits/playbook/pb_avatar/avatar.test.js +17 -0
  27. data/app/pb_kits/playbook/pb_avatar/docs/_avatar_badge_component_overlay.jsx +1 -1
  28. data/app/pb_kits/playbook/pb_avatar/docs/_avatar_circle_icon_component_overlay.jsx +1 -1
  29. data/app/pb_kits/playbook/pb_avatar/docs/_avatar_default.jsx +1 -1
  30. data/app/pb_kits/playbook/pb_avatar/docs/_avatar_monogram.jsx +1 -1
  31. data/app/pb_kits/playbook/pb_avatar/docs/_avatar_no_image.jsx +1 -1
  32. data/app/pb_kits/playbook/pb_avatar/docs/_avatar_status.jsx +1 -1
  33. data/app/pb_kits/playbook/pb_avatar_action_button/_avatar_action_button.scss +3 -3
  34. data/app/pb_kits/playbook/pb_avatar_action_button/_avatar_action_button.tsx +0 -2
  35. data/app/pb_kits/playbook/pb_background/_background.tsx +13 -7
  36. data/app/pb_kits/playbook/pb_background/docs/_background_category.jsx +2 -2
  37. data/app/pb_kits/playbook/pb_background/docs/_background_gradient.jsx +1 -1
  38. data/app/pb_kits/playbook/pb_background/docs/_background_image.jsx +2 -2
  39. data/app/pb_kits/playbook/pb_background/docs/_background_light.jsx +1 -1
  40. data/app/pb_kits/playbook/pb_background/docs/_background_size.jsx +1 -1
  41. data/app/pb_kits/playbook/pb_background/docs/_background_status.jsx +2 -2
  42. data/app/pb_kits/playbook/pb_background/docs/_background_status_subtle.jsx +2 -2
  43. data/app/pb_kits/playbook/pb_background/docs/_background_white.jsx +1 -1
  44. data/app/pb_kits/playbook/pb_badge/_badge.scss +2 -2
  45. data/app/pb_kits/playbook/pb_bar_graph/barGraphSettings.js +1 -1
  46. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend.jsx +1 -1
  47. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend_non_clickable.jsx +1 -1
  48. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend_position.jsx +1 -1
  49. data/app/pb_kits/playbook/pb_body/_body.scss +1 -1
  50. data/app/pb_kits/playbook/pb_body/docs/_body_articles.jsx +1 -1
  51. data/app/pb_kits/playbook/pb_body/docs/_body_block.jsx +1 -1
  52. data/app/pb_kits/playbook/pb_body/docs/_body_light.jsx +1 -1
  53. data/app/pb_kits/playbook/pb_body/docs/_body_styled.jsx +1 -1
  54. data/app/pb_kits/playbook/pb_bread_crumbs/_bread_crumb_item.tsx +0 -2
  55. data/app/pb_kits/playbook/pb_bread_crumbs/_bread_crumbs.scss +1 -1
  56. data/app/pb_kits/playbook/pb_bread_crumbs/bread_crumbs.test.js +1 -1
  57. data/app/pb_kits/playbook/pb_bread_crumbs/docs/_bread_crumbs_default.jsx +1 -1
  58. data/app/pb_kits/playbook/pb_button/docs/_button_accessibility.jsx +1 -1
  59. data/app/pb_kits/playbook/pb_button/docs/_button_block_content.jsx +1 -1
  60. data/app/pb_kits/playbook/pb_button/docs/_button_default.jsx +1 -1
  61. data/app/pb_kits/playbook/pb_button/docs/_button_form.jsx +1 -1
  62. data/app/pb_kits/playbook/pb_button/docs/_button_full_width.jsx +1 -1
  63. data/app/pb_kits/playbook/pb_button/docs/_button_hover.jsx +1 -1
  64. data/app/pb_kits/playbook/pb_button/docs/_button_icon_options.jsx +1 -1
  65. data/app/pb_kits/playbook/pb_button/docs/_button_link.jsx +1 -1
  66. data/app/pb_kits/playbook/pb_button/docs/_button_loading.jsx +1 -1
  67. data/app/pb_kits/playbook/pb_button/docs/_button_reaction.jsx +1 -1
  68. data/app/pb_kits/playbook/pb_button/docs/_button_size.jsx +1 -1
  69. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx +0 -2
  70. data/app/pb_kits/playbook/pb_button_toolbar/button_toolbar.test.js +1 -1
  71. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_default.jsx +1 -1
  72. data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_secondary.jsx +1 -1
  73. data/app/pb_kits/playbook/pb_caption/docs/_caption_block.jsx +1 -1
  74. data/app/pb_kits/playbook/pb_caption/docs/_caption_colors.jsx +1 -1
  75. data/app/pb_kits/playbook/pb_caption/docs/_caption_light.jsx +1 -1
  76. data/app/pb_kits/playbook/pb_card/_card.scss +1 -1
  77. data/app/pb_kits/playbook/pb_card/docs/_card_background.jsx +1 -1
  78. data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_error.jsx +1 -1
  79. data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_indeterminate.jsx +1 -1
  80. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_legend_position.jsx +1 -1
  81. data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.scss +3 -3
  82. data/app/pb_kits/playbook/pb_circle_icon_button/docs/_circle_icon_button_click.jsx +1 -1
  83. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_color.jsx +1 -1
  84. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main.jsx +1 -1
  85. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main_with_icon.jsx +1 -1
  86. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_default.jsx +1 -1
  87. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_icons.jsx +1 -1
  88. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_size.jsx +1 -1
  89. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_state.jsx +1 -1
  90. data/app/pb_kits/playbook/pb_contact/docs/_contact_default.jsx +1 -1
  91. data/app/pb_kits/playbook/pb_contact/docs/_contact_with_detail.jsx +1 -1
  92. data/app/pb_kits/playbook/pb_currency/docs/_currency_unstyled.jsx +1 -1
  93. data/app/pb_kits/playbook/pb_dashboard/commonSettings.js +2 -2
  94. data/app/pb_kits/playbook/pb_dashboard/pbChartsColorsHelper.ts +1 -1
  95. data/app/pb_kits/playbook/pb_dashboard/pbChartsDarkTheme.ts +2 -2
  96. data/app/pb_kits/playbook/pb_dashboard/pbChartsLightTheme.ts +2 -2
  97. data/app/pb_kits/playbook/pb_dashboard_value/dashboardValueSettings.ts +2 -2
  98. data/app/pb_kits/playbook/pb_date/docs/_date_alignment.jsx +1 -1
  99. data/app/pb_kits/playbook/pb_date/docs/_date_default.jsx +2 -2
  100. data/app/pb_kits/playbook/pb_date/docs/_date_unstyled.jsx +1 -1
  101. data/app/pb_kits/playbook/pb_date/docs/_date_variants.jsx +1 -1
  102. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_change.jsx +1 -1
  103. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_close.jsx +1 -1
  104. data/app/pb_kits/playbook/pb_date_picker/docs/_description.md +3 -1
  105. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_input_styles.scss +1 -1
  106. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_overrides.scss +2 -4
  107. data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.scss +4 -4
  108. data/app/pb_kits/playbook/pb_date_range_stacked/docs/_date_range_stacked_default.jsx +1 -1
  109. data/app/pb_kits/playbook/pb_date_time_stacked/_date_time_stacked.scss +4 -4
  110. data/app/pb_kits/playbook/pb_date_time_stacked/date_time_stacked.test.js +1 -2
  111. data/app/pb_kits/playbook/pb_date_year_stacked/docs/_date_year_stacked_default.jsx +1 -1
  112. data/app/pb_kits/playbook/pb_detail/docs/_detail_bold.jsx +1 -1
  113. data/app/pb_kits/playbook/pb_detail/docs/_detail_colors.jsx +1 -1
  114. data/app/pb_kits/playbook/pb_detail/docs/_detail_default.jsx +1 -1
  115. data/app/pb_kits/playbook/pb_detail/docs/_detail_styled.jsx +1 -1
  116. data/app/pb_kits/playbook/pb_dialog/dialog.test.jsx +1 -1
  117. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_compound_components.jsx +1 -1
  118. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_default.jsx +1 -1
  119. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_full_height.jsx +1 -1
  120. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_full_height_placement.jsx +1 -1
  121. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_scrollable.jsx +1 -1
  122. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_separators.jsx +1 -3
  123. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_should_close_on_overlay.jsx +1 -1
  124. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_sizes.jsx +1 -2
  125. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_stacked_alert.jsx +1 -1
  126. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_status.jsx +30 -29
  127. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_default.jsx +1 -1
  128. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers.jsx +1 -1
  129. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_cards.jsx +1 -1
  130. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_list.jsx +1 -1
  131. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_selectable_list.jsx +1 -1
  132. data/app/pb_kits/playbook/pb_draggable/draggable.test.jsx +1 -1
  133. data/app/pb_kits/playbook/pb_dropdown/_dropdown.scss +1 -1
  134. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_blank_selection.jsx +1 -1
  135. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_default.jsx +1 -1
  136. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_default_value.jsx +1 -1
  137. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_error.jsx +1 -1
  138. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_subcomponent_structure.jsx +1 -1
  139. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete.jsx +1 -1
  140. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete_and_custom_display.jsx +1 -1
  141. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display.jsx +1 -1
  142. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_options.jsx +1 -1
  143. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_padding.jsx +1 -1
  144. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_trigger.jsx +1 -1
  145. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_external_control.jsx +1 -1
  146. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_hook.jsx +1 -1
  147. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_label.jsx +1 -1
  148. data/app/pb_kits/playbook/pb_dropdown/dropdown.test.jsx +1 -1
  149. data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_accept.jsx +2 -3
  150. data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_custom_description.jsx +2 -3
  151. data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_custom_message.jsx +2 -3
  152. data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_default.jsx +2 -3
  153. data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_max_size.jsx +3 -4
  154. data/app/pb_kits/playbook/pb_filter/docs/_filter_default.jsx +1 -1
  155. data/app/pb_kits/playbook/pb_filter/docs/_filter_max_height.jsx +1 -1
  156. data/app/pb_kits/playbook/pb_filter/docs/_filter_max_width.jsx +1 -1
  157. data/app/pb_kits/playbook/pb_filter/docs/_filter_no_background.jsx +1 -1
  158. data/app/pb_kits/playbook/pb_filter/docs/_filter_no_sort.jsx +1 -1
  159. data/app/pb_kits/playbook/pb_filter/docs/_filter_only.jsx +1 -1
  160. data/app/pb_kits/playbook/pb_filter/docs/_filter_placement.jsx +1 -1
  161. data/app/pb_kits/playbook/pb_filter/filter.test.js +1 -1
  162. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.scss +1 -1
  163. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/fixed_confirmation_toast.test.js +1 -1
  164. data/app/pb_kits/playbook/pb_flex/docs/_flex_align.jsx +1 -1
  165. data/app/pb_kits/playbook/pb_flex/docs/_flex_default.jsx +1 -1
  166. data/app/pb_kits/playbook/pb_flex/docs/_flex_gap.jsx +1 -1
  167. data/app/pb_kits/playbook/pb_flex/docs/_flex_inline.jsx +1 -1
  168. data/app/pb_kits/playbook/pb_flex/docs/_flex_item_align_self.jsx +1 -1
  169. data/app/pb_kits/playbook/pb_flex/docs/_flex_item_example.jsx +1 -1
  170. data/app/pb_kits/playbook/pb_flex/docs/_flex_justify.jsx +1 -1
  171. data/app/pb_kits/playbook/pb_flex/docs/_flex_reverse.jsx +1 -1
  172. data/app/pb_kits/playbook/pb_flex/docs/_flex_spacing.jsx +1 -1
  173. data/app/pb_kits/playbook/pb_flex/docs/_flex_wrap.jsx +1 -1
  174. data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +1 -0
  175. data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +1 -0
  176. data/app/pb_kits/playbook/pb_form_group/form_group.test.js +1 -1
  177. data/app/pb_kits/playbook/pb_form_pill/_form_pill.scss +5 -5
  178. data/app/pb_kits/playbook/pb_form_pill/_form_pill.tsx +0 -1
  179. data/app/pb_kits/playbook/pb_gauge/_gauge.tsx +2 -2
  180. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_colors.jsx +1 -1
  181. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_complex.jsx +1 -1
  182. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_default.jsx +1 -1
  183. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_disable_animation.jsx +1 -1
  184. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_full_circle.jsx +1 -1
  185. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_height.jsx +1 -1
  186. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_live_data.jsx +1 -1
  187. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.jsx +1 -1
  188. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.jsx +1 -1
  189. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_title.jsx +1 -1
  190. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_units.jsx +1 -1
  191. data/app/pb_kits/playbook/pb_hashtag/docs/_hashtag_default.jsx +1 -1
  192. data/app/pb_kits/playbook/pb_hashtag/docs/_hashtag_link.jsx +1 -1
  193. data/app/pb_kits/playbook/pb_hashtag/hashtag.test.js +1 -1
  194. data/app/pb_kits/playbook/pb_home_address_street/home_adress_street.test.js +1 -1
  195. data/app/pb_kits/playbook/pb_icon/_icon.tsx +3 -0
  196. data/app/pb_kits/playbook/pb_icon/docs/_icon_custom.jsx +1 -1
  197. data/app/pb_kits/playbook/pb_icon/icon.rb +2 -0
  198. data/app/pb_kits/playbook/pb_icon_circle/_icon_circle.scss +2 -2
  199. data/app/pb_kits/playbook/pb_icon_circle/_icon_circle.tsx +2 -1
  200. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_sizes.jsx +1 -1
  201. data/app/pb_kits/playbook/pb_icon_circle/icon_circle.rb +2 -2
  202. data/app/pb_kits/playbook/pb_icon_stat_value/_icon_stat_value.scss +0 -11
  203. data/app/pb_kits/playbook/pb_icon_stat_value/_icon_stat_value.tsx +3 -2
  204. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_color.html.erb +1 -0
  205. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_color.jsx +1 -1
  206. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_default.jsx +1 -1
  207. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_sizes.jsx +1 -1
  208. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_vertical.jsx +1 -1
  209. data/app/pb_kits/playbook/pb_icon_stat_value/icon_stat_value.rb +2 -2
  210. data/app/pb_kits/playbook/pb_icon_stat_value/icon_stat_value.test.js +5 -4
  211. data/app/pb_kits/playbook/pb_label_value/_label_value.scss +1 -1
  212. data/app/pb_kits/playbook/pb_label_value/docs/_label_value_default.jsx +1 -1
  213. data/app/pb_kits/playbook/pb_label_value/docs/_label_value_details.jsx +1 -1
  214. data/app/pb_kits/playbook/pb_label_value/docs/_label_value_details_examples.jsx +1 -1
  215. data/app/pb_kits/playbook/pb_layout/layout.test.js +1 -1
  216. data/app/pb_kits/playbook/pb_legend/docs/_legend_colors.jsx +1 -1
  217. data/app/pb_kits/playbook/pb_legend/docs/_legend_custom_colors.jsx +1 -1
  218. data/app/pb_kits/playbook/pb_legend/docs/_legend_prefix.jsx +1 -1
  219. data/app/pb_kits/playbook/pb_lightbox/Carousel/Slide.tsx +0 -2
  220. data/app/pb_kits/playbook/pb_lightbox/Carousel/Slides.tsx +0 -2
  221. data/app/pb_kits/playbook/pb_lightbox/Carousel/index.tsx +0 -1
  222. data/app/pb_kits/playbook/pb_lightbox/Header/_lightbox_header.tsx +0 -1
  223. data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_compound_component.jsx +1 -3
  224. data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_current_photo.jsx +1 -3
  225. data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_custom_header.jsx +1 -3
  226. data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_default.jsx +1 -3
  227. data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_multiple.jsx +1 -3
  228. data/app/pb_kits/playbook/pb_lightbox/lightbox.test.jsx +1 -1
  229. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend.jsx +1 -1
  230. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend_nonclickable.jsx +1 -1
  231. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend_position.jsx +1 -1
  232. data/app/pb_kits/playbook/pb_line_graph/lineGraphSettings.js +1 -1
  233. data/app/pb_kits/playbook/pb_map/docs/_map_default.jsx +1 -1
  234. data/app/pb_kits/playbook/pb_map/docs/_map_with_custom_button.jsx +1 -1
  235. data/app/pb_kits/playbook/pb_map/docs/_map_with_plugin.jsx +1 -1
  236. data/app/pb_kits/playbook/pb_map/map.test.jsx +1 -1
  237. data/app/pb_kits/playbook/pb_map/pbMapTheme.ts +1 -1
  238. data/app/pb_kits/playbook/pb_message/_message.tsx +0 -2
  239. data/app/pb_kits/playbook/pb_message/_message_mixins.scss +1 -1
  240. data/app/pb_kits/playbook/pb_message/docs/_message_timestamp.jsx +1 -1
  241. data/app/pb_kits/playbook/pb_multi_level_select/multi_level_select.test.jsx +1 -1
  242. data/app/pb_kits/playbook/pb_multiple_users/_multiple_users.scss +1 -1
  243. data/app/pb_kits/playbook/pb_multiple_users/_multiple_users.tsx +0 -2
  244. data/app/pb_kits/playbook/pb_multiple_users/docs/_multiple_users_default.jsx +1 -1
  245. data/app/pb_kits/playbook/pb_multiple_users/docs/_multiple_users_reverse.jsx +1 -1
  246. data/app/pb_kits/playbook/pb_multiple_users/docs/_multiple_users_size.jsx +1 -1
  247. data/app/pb_kits/playbook/pb_nav/_horizontal_nav.scss +1 -1
  248. data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav.jsx +1 -1
  249. data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav_custom.jsx +1 -1
  250. data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav_item_spacing.jsx +1 -1
  251. data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav_with_all_options.jsx +1 -1
  252. data/app/pb_kits/playbook/pb_nav/docs/_nav_with_font_control.jsx +1 -1
  253. data/app/pb_kits/playbook/pb_online_status/_online_status.scss +52 -5
  254. data/app/pb_kits/playbook/pb_online_status/_online_status.tsx +6 -1
  255. data/app/pb_kits/playbook/pb_online_status/docs/_online_status_no_border.html.erb +1 -0
  256. data/app/pb_kits/playbook/pb_online_status/docs/_online_status_no_border.jsx +14 -0
  257. data/app/pb_kits/playbook/pb_online_status/docs/_online_status_size.html.erb +3 -0
  258. data/app/pb_kits/playbook/pb_online_status/docs/_online_status_size.jsx +25 -0
  259. data/app/pb_kits/playbook/pb_online_status/docs/example.yml +6 -2
  260. data/app/pb_kits/playbook/pb_online_status/docs/index.js +2 -0
  261. data/app/pb_kits/playbook/pb_online_status/online_status.rb +11 -1
  262. data/app/pb_kits/playbook/pb_online_status/online_status.test.js +31 -0
  263. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_default.jsx +1 -1
  264. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_multi_directional.jsx +1 -1
  265. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_toggle.html.erb +61 -0
  266. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_toggle.jsx +70 -0
  267. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_toggle.md +1 -0
  268. data/app/pb_kits/playbook/pb_overlay/docs/example.yml +4 -2
  269. data/app/pb_kits/playbook/pb_overlay/docs/index.js +1 -0
  270. data/app/pb_kits/playbook/pb_overlay/overlay.test.jsx +1 -1
  271. data/app/pb_kits/playbook/pb_overlay/subcomponents/_overlay_percentage.tsx +1 -1
  272. data/app/pb_kits/playbook/pb_passphrase/_passphrase.scss +3 -3
  273. data/app/pb_kits/playbook/pb_passphrase/_passphrase.tsx +0 -2
  274. data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_breached.jsx +1 -1
  275. data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_common.jsx +1 -1
  276. data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_confirmation.jsx +1 -1
  277. data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_meter_settings.jsx +1 -1
  278. data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_strength_change.jsx +1 -1
  279. data/app/pb_kits/playbook/pb_passphrase/passphrase.test.jsx +1 -1
  280. data/app/pb_kits/playbook/pb_phone_number_input/_phone_number_input.scss +2 -1
  281. data/app/pb_kits/playbook/pb_phone_number_input/_phone_number_input.tsx +0 -1
  282. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_access_input_element.jsx +1 -1
  283. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_clear_field.jsx +1 -1
  284. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_default.jsx +1 -1
  285. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_initial_country.jsx +1 -1
  286. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_only_countries.jsx +1 -1
  287. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_preferred_countries.jsx +1 -1
  288. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_validation.jsx +1 -1
  289. data/app/pb_kits/playbook/pb_pill/_pill.scss +2 -2
  290. data/app/pb_kits/playbook/pb_popover/_popover.tsx +2 -2
  291. data/app/pb_kits/playbook/pb_popover/docs/_popover_actionable_content.jsx +1 -1
  292. data/app/pb_kits/playbook/pb_popover/docs/_popover_close.jsx +1 -1
  293. data/app/pb_kits/playbook/pb_popover/docs/_popover_default.jsx +1 -1
  294. data/app/pb_kits/playbook/pb_popover/docs/_popover_list.jsx +1 -1
  295. data/app/pb_kits/playbook/pb_popover/docs/_popover_scroll_height.jsx +1 -1
  296. data/app/pb_kits/playbook/pb_popover/docs/_popover_z_index.jsx +1 -1
  297. data/app/pb_kits/playbook/pb_popover/popover.test.js +1 -1
  298. data/app/pb_kits/playbook/pb_progress_simple/_progress_simple.scss +2 -2
  299. data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_align.jsx +1 -1
  300. data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_default.jsx +1 -1
  301. data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_flex.jsx +1 -1
  302. data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_muted.jsx +1 -1
  303. data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_value.jsx +1 -1
  304. data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_variants.jsx +1 -1
  305. data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_width.jsx +1 -1
  306. data/app/pb_kits/playbook/pb_radio/docs/_radio_alignment.jsx +1 -1
  307. data/app/pb_kits/playbook/pb_radio/docs/_radio_error.jsx +1 -1
  308. data/app/pb_kits/playbook/pb_rich_text_editor/_dedupe_trix_toolbar.js +6 -0
  309. data/app/pb_kits/playbook/pb_rich_text_editor/_rich_text_editor.scss +2 -2
  310. data/app/pb_kits/playbook/pb_rich_text_editor/_rich_text_editor.tsx +9 -8
  311. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_default.jsx +1 -1
  312. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_attributes.jsx +1 -1
  313. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_default.jsx +1 -1
  314. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_focus.jsx +1 -1
  315. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_inline.jsx +1 -1
  316. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_more_extensions.jsx +1 -1
  317. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_preview.jsx +5 -4
  318. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_simple.jsx +1 -1
  319. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_sticky.jsx +1 -1
  320. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_templates.jsx +1 -1
  321. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_toolbar_bottom.jsx +1 -1
  322. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_toolbar_disabled.jsx +1 -1
  323. data/app/pb_kits/playbook/pb_rich_text_editor/types.d.ts +1 -0
  324. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_children.jsx +1 -1
  325. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_dashed.jsx +1 -1
  326. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_line.jsx +1 -1
  327. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_text.jsx +1 -1
  328. data/app/pb_kits/playbook/pb_select/_select.scss +1 -1
  329. data/app/pb_kits/playbook/pb_select/docs/_select_error.jsx +1 -1
  330. data/app/pb_kits/playbook/pb_select/docs/_select_inline.jsx +1 -1
  331. data/app/pb_kits/playbook/pb_select/docs/_select_inline_compact.jsx +1 -1
  332. data/app/pb_kits/playbook/pb_select/docs/_select_inline_show_arrow.jsx +1 -1
  333. data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.scss +4 -4
  334. data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.tsx +0 -2
  335. data/app/pb_kits/playbook/pb_selectable_card/docs/_selectable_card_error.jsx +1 -1
  336. data/app/pb_kits/playbook/pb_selectable_card/selectable_card.test.js +1 -1
  337. data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.tsx +0 -1
  338. data/app/pb_kits/playbook/pb_selectable_list/docs/_selectable_list_checkbox.jsx +1 -1
  339. data/app/pb_kits/playbook/pb_selectable_list/docs/_selectable_list_radio.jsx +1 -1
  340. data/app/pb_kits/playbook/pb_star_rating/_star_rating.scss +83 -6
  341. data/app/pb_kits/playbook/pb_star_rating/docs/example.yml +3 -1
  342. data/app/pb_kits/playbook/pb_star_rating/index.js +128 -22
  343. data/app/pb_kits/playbook/pb_star_rating/star_rating.html.erb +5 -3
  344. data/app/pb_kits/playbook/pb_star_rating/star_rating.rb +19 -2
  345. data/app/pb_kits/playbook/pb_star_rating/stars/utils.tsx +5 -1
  346. data/app/pb_kits/playbook/pb_star_rating/subcomponents/_star_rating_interactive.tsx +50 -21
  347. data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_default.jsx +1 -1
  348. data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_unit.jsx +1 -1
  349. data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_unit_two.jsx +1 -1
  350. data/app/pb_kits/playbook/pb_table/_table.tsx +1 -1
  351. data/app/pb_kits/playbook/pb_table/index.ts +4 -4
  352. data/app/pb_kits/playbook/pb_table/subcomponents/_table_body.tsx +1 -1
  353. data/app/pb_kits/playbook/pb_table/subcomponents/_table_cell.tsx +1 -1
  354. data/app/pb_kits/playbook/pb_table/subcomponents/_table_head.tsx +1 -1
  355. data/app/pb_kits/playbook/pb_table/subcomponents/_table_header.tsx +1 -1
  356. data/app/pb_kits/playbook/pb_table/subcomponents/_table_row.tsx +1 -1
  357. data/app/pb_kits/playbook/pb_table/table.test.js +2 -0
  358. data/app/pb_kits/playbook/pb_text_input/_text_input.scss +1 -1
  359. data/app/pb_kits/playbook/pb_text_input/_text_input.tsx +1 -1
  360. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_default.jsx +4 -4
  361. data/app/pb_kits/playbook/pb_textarea/_textarea.scss +1 -1
  362. data/app/pb_kits/playbook/pb_textarea/_textarea.tsx +45 -27
  363. data/app/pb_kits/playbook/pb_textarea/docs/_textarea_error.jsx +1 -1
  364. data/app/pb_kits/playbook/pb_textarea/{index.tsx → index.ts} +3 -3
  365. data/app/pb_kits/playbook/pb_time/_time.tsx +3 -3
  366. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.scss +4 -4
  367. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.tsx +1 -1
  368. data/app/pb_kits/playbook/pb_time_range_inline/docs/_time_range_inline_default.jsx +1 -1
  369. data/app/pb_kits/playbook/pb_timeline/_item.tsx +1 -1
  370. data/app/pb_kits/playbook/pb_timeline/_timeline.scss +2 -2
  371. data/app/pb_kits/playbook/pb_timeline/_timeline.tsx +1 -1
  372. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_unstyled.jsx +1 -1
  373. data/app/pb_kits/playbook/pb_title_count/_title_count.tsx +0 -1
  374. data/app/pb_kits/playbook/pb_title_detail/_title_detail.tsx +10 -10
  375. data/app/pb_kits/playbook/pb_toggle/_toggle.scss +5 -5
  376. data/app/pb_kits/playbook/pb_toggle/_toggle.tsx +1 -1
  377. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_custom.jsx +1 -3
  378. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_custom_radio.jsx +1 -3
  379. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_default.jsx +1 -3
  380. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_disabled.jsx +1 -3
  381. data/app/pb_kits/playbook/pb_toggle/docs/_toggle_name.jsx +1 -3
  382. data/app/pb_kits/playbook/pb_tooltip/_tooltip.tsx +2 -2
  383. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_default_react.jsx +1 -3
  384. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_delay.jsx +1 -3
  385. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_icon.jsx +1 -3
  386. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_interaction.jsx +1 -3
  387. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_margin.jsx +1 -3
  388. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_show_tooltip_react.jsx +1 -3
  389. data/app/pb_kits/playbook/pb_tooltip/tooltip.test.jsx +1 -1
  390. data/app/pb_kits/playbook/pb_treemap_chart/_treemap_chart.tsx +1 -2
  391. data/app/pb_kits/playbook/pb_treemap_chart/treemapChart.test.js +2 -0
  392. data/app/pb_kits/playbook/pb_typeahead/_typeahead.tsx +2 -2
  393. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_async_createable.jsx +1 -3
  394. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_createable.jsx +1 -3
  395. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_custom_menu_list.jsx +1 -1
  396. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_default.jsx +0 -2
  397. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_error_state.jsx +0 -2
  398. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_inline.jsx +0 -2
  399. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_multi_kit.html.erb +1 -1
  400. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_multi_kit.jsx +0 -2
  401. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_highlight.jsx +4 -5
  402. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.jsx +1 -3
  403. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async.jsx +18 -21
  404. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_custom_options.jsx +21 -31
  405. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_users.jsx +20 -23
  406. data/app/pb_kits/playbook/pb_typeahead/typeahead.rb +1 -0
  407. data/app/pb_kits/playbook/pb_user/_user.tsx +1 -1
  408. data/app/pb_kits/playbook/pb_user/docs/_user_block_content_subtitle_react.jsx +1 -1
  409. data/app/pb_kits/playbook/pb_user/docs/_user_default.jsx +1 -1
  410. data/app/pb_kits/playbook/pb_user/docs/_user_size.jsx +1 -1
  411. data/app/pb_kits/playbook/pb_user/docs/_user_subtitle.jsx +1 -1
  412. data/app/pb_kits/playbook/pb_user/docs/_user_text_only.jsx +1 -1
  413. data/app/pb_kits/playbook/pb_user/docs/_user_vertical_size.jsx +1 -1
  414. data/app/pb_kits/playbook/pb_user/docs/_user_with_territory.jsx +1 -1
  415. data/app/pb_kits/playbook/pb_user_badge/_user_badge.tsx +6 -6
  416. data/app/pb_kits/playbook/pb_user_badge/badges/million-dollar.tsx +236 -235
  417. data/app/pb_kits/playbook/pb_user_badge/badges/veteran.tsx +1 -1
  418. data/app/pb_kits/playbook/pb_walkthrough/_walkthrough.tsx +68 -63
  419. data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_continuous.jsx +1 -1
  420. data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_default.jsx +1 -1
  421. data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_multi_beacon.jsx +1 -1
  422. data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_no_beacon.jsx +1 -1
  423. data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_no_overlay.jsx +1 -1
  424. data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_styled.jsx +1 -1
  425. data/app/pb_kits/playbook/pb_walkthrough/walkthrough.test.jsx +1 -1
  426. data/app/pb_kits/playbook/pb_weekday_stacked/_weekday_stacked.tsx +3 -4
  427. data/app/pb_kits/playbook/tokens/exports/{_border_radius.scss → _border_radius.module.scss} +0 -0
  428. data/app/pb_kits/playbook/tokens/exports/{_colors.scss → _colors.module.scss} +1 -1
  429. data/app/pb_kits/playbook/tokens/exports/{_line_height.scss → _line_height.module.scss} +0 -0
  430. data/app/pb_kits/playbook/tokens/exports/{_opacity.scss → _opacity.module.scss} +0 -0
  431. data/app/pb_kits/playbook/tokens/exports/{_positioning.scss → _positioning.module.scss} +0 -0
  432. data/app/pb_kits/playbook/tokens/exports/{_screen_sizes.scss → _screen_sizes.module.scss} +0 -0
  433. data/app/pb_kits/playbook/tokens/exports/{_shadows.scss → _shadows.module.scss} +0 -0
  434. data/app/pb_kits/playbook/tokens/exports/{_spacing.scss → _spacing.module.scss} +0 -0
  435. data/app/pb_kits/playbook/tokens/exports/{_typography.scss → _typography.module.scss} +0 -0
  436. data/app/pb_kits/playbook/tokens/exports/exports.d.ts +1 -0
  437. data/app/pb_kits/playbook/utilities/_hover.scss +5 -5
  438. data/app/pb_kits/playbook/utilities/_line_height.scss +1 -1
  439. data/app/pb_kits/playbook/utilities/_positioning.scss +26 -15
  440. data/app/pb_kits/playbook/utilities/_shadow.scss +1 -1
  441. data/app/pb_kits/playbook/utilities/globalPropNames.mjs +50 -0
  442. data/app/pb_kits/playbook/utilities/text.ts +3 -1
  443. data/dist/chunks/_typeahead-D6PRvP-1.js +22 -0
  444. data/dist/chunks/_weekday_stacked-Dzgi_IL5.js +45 -0
  445. data/dist/chunks/lazysizes-B7xYodB-.js +1 -0
  446. data/dist/chunks/lib-BE0Z3F7x.js +16 -0
  447. data/dist/chunks/pb_form_validation-TzZQ0Flx.js +1 -0
  448. data/dist/chunks/vendor.js +1 -0
  449. data/dist/playbook-doc.js +1 -0
  450. data/dist/playbook-rails-react-bindings.js +1 -0
  451. data/dist/playbook-rails.js +1 -59
  452. data/dist/playbook.css +4 -0
  453. data/dist/reset.css +1 -1
  454. data/lib/playbook/engine.rb +2 -0
  455. data/lib/playbook/version.rb +2 -2
  456. metadata +38 -21
  457. data/app/pb_kits/playbook/index.js +0 -151
  458. data/app/pb_kits/playbook/pb_online_status/_online_status_mixins.scss +0 -32
  459. data/app/pb_kits/playbook/playbook-doc.js +0 -215
  460. data/app/pb_kits/playbook/playbook-rails-react-bindings.js +0 -45
  461. data/app/pb_kits/playbook/playbook-rails.js +0 -51
  462. /data/app/pb_kits/playbook/tokens/exports/{_scale.scss → _scale.module.scss} +0 -0
@@ -106,7 +106,7 @@
106
106
  .trix-button--icon {
107
107
  height: $space_lg;
108
108
  width: $space_lg;
109
- margin: $space_xs / 2;
109
+ margin: calc($space_xs / 2);
110
110
  border-radius: $border_rad_heavier;
111
111
  &::before {
112
112
  background-size: auto;
@@ -116,7 +116,7 @@
116
116
  background: $white;
117
117
  border: 1px solid #E4E8F0;
118
118
  border-bottom: none;
119
- padding: $space_xs / 2;
119
+ padding: calc($space_xs / 2);
120
120
  border-top-left-radius: $border_rad_heavier;
121
121
  border-top-right-radius: $border_rad_heavier;
122
122
  .trix-button-group {
@@ -1,19 +1,20 @@
1
1
  import React, { useEffect, useState } from 'react'
2
2
  import classnames from 'classnames'
3
+ import { TrixEditor } from 'react-trix'
4
+
3
5
  import inlineFocus from './inlineFocus'
4
6
  import useFocus from './useFocus'
5
7
  import { globalProps, GlobalProps } from '../utilities/globalProps'
6
8
  import { buildAriaProps, buildDataProps, noop, buildHtmlProps } from '../utilities/props'
7
9
 
8
- try {
9
- const Trix = require('trix')
10
- Trix.config.textAttributes.inlineCode = {
11
- tagName: 'code',
12
- inheritable: true,
13
- }
14
- } catch (_e) { /* do nothing */ }
10
+ import Trix from 'trix'
11
+ import './_dedupe_trix_toolbar'
12
+
13
+ Trix.config.textAttributes.inlineCode = {
14
+ tagName: 'code',
15
+ inheritable: true,
16
+ }
15
17
 
16
- import { TrixEditor } from "react-trix"
17
18
  import EditorToolbar from './TipTap/Toolbar'
18
19
 
19
20
  type Editor = {
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { RichTextEditor } from '../..'
2
+ import { RichTextEditor } from 'playbook-ui'
3
3
  import { useEditor, EditorContent } from "@tiptap/react"
4
4
  import StarterKit from "@tiptap/starter-kit"
5
5
  import Link from '@tiptap/extension-link'
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { RichTextEditor } from '../../'
2
+ import { RichTextEditor } from 'playbook-ui'
3
3
 
4
4
  const RichTextEditorAttributes = (props) => (
5
5
  <div>
@@ -1,5 +1,5 @@
1
1
  import React, { useState } from 'react'
2
- import { RichTextEditor } from '../../'
2
+ import { RichTextEditor } from 'playbook-ui'
3
3
 
4
4
  const RichTextEditorDefault = (props) => {
5
5
  const [value, setValue] = useState('Add your text here. You can format your text, add links, quotes, and bullets.'),
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { RichTextEditor } from '../../'
2
+ import { RichTextEditor } from 'playbook-ui'
3
3
 
4
4
  const RichTextEditorFocus = (props) => (
5
5
  <>
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { RichTextEditor } from '../../'
2
+ import { RichTextEditor } from 'playbook-ui'
3
3
 
4
4
  const RichTextEditorInline = (props) => (
5
5
  <div>
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { RichTextEditor } from '../..'
2
+ import { RichTextEditor } from 'playbook-ui'
3
3
  import { useEditor, EditorContent } from "@tiptap/react"
4
4
  import StarterKit from "@tiptap/starter-kit"
5
5
  import Link from '@tiptap/extension-link'
@@ -3,7 +3,7 @@ import {
3
3
  Button,
4
4
  Card,
5
5
  RichTextEditor,
6
- } from '../../'
6
+ } from 'playbook-ui'
7
7
 
8
8
  const RichTextEditorPreview = (props) => {
9
9
  const [showPreview, setShowPreview] = useState(false)
@@ -21,7 +21,7 @@ const RichTextEditorPreview = (props) => {
21
21
  onChange={handleChange}
22
22
  {...props}
23
23
  />
24
- <If condition={showPreview}>
24
+ {showPreview && (
25
25
  <Card marginTop="md">
26
26
  <div
27
27
  className="trix-content"
@@ -30,9 +30,10 @@ const RichTextEditorPreview = (props) => {
30
30
  id="preview-content"
31
31
  />
32
32
  </Card>
33
- <Else />
33
+ )}
34
+ {!showPreview && (
34
35
  <div />
35
- </If>
36
+ )}
36
37
  <Button
37
38
  id="preview-button"
38
39
  marginTop="md"
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { RichTextEditor } from '../../'
2
+ import { RichTextEditor } from 'playbook-ui'
3
3
 
4
4
  const RichTextEditorSimple = (props) => (
5
5
  <div>
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { RichTextEditor } from '../../'
2
+ import { RichTextEditor } from 'playbook-ui'
3
3
 
4
4
  const RichTextEditorSticky = (props) => (
5
5
  <div>
@@ -1,5 +1,5 @@
1
1
  import React, { useState } from 'react'
2
- import { RichTextEditor, Select } from '../../'
2
+ import { RichTextEditor, Select } from 'playbook-ui'
3
3
  import { changelog, release } from './templates.js'
4
4
 
5
5
  const RichTextEditorTemplates = (props) => {
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { RichTextEditor } from '../../'
2
+ import { RichTextEditor } from 'playbook-ui'
3
3
 
4
4
  const RichTextEditorToolbarBottom = (props) => (
5
5
  <div>
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
2
  import { useEditor, EditorContent } from "@tiptap/react";
3
3
 
4
- import { RichTextEditor } from "../..";
4
+ import { RichTextEditor } from "playbook-ui";
5
5
 
6
6
  import Document from "@tiptap/extension-document";
7
7
  import Paragraph from "@tiptap/extension-paragraph";
@@ -0,0 +1 @@
1
+ declare module '@haxtheweb/deduping-fix';
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { SectionSeparator, Card, Caption } from '../../'
2
+ import { SectionSeparator, Card, Caption } from 'playbook-ui'
3
3
 
4
4
  const children = (
5
5
  <Card
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { SectionSeparator } from '../../'
2
+ import { SectionSeparator } from 'playbook-ui'
3
3
 
4
4
  const SectionSeparatorDashed = (props) => {
5
5
  return (
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { SectionSeparator } from '../../'
2
+ import { SectionSeparator } from 'playbook-ui'
3
3
 
4
4
  const SectionSeparatorLine = (props) => {
5
5
  return (
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { SectionSeparator } from '../../'
2
+ import { SectionSeparator } from 'playbook-ui'
3
3
 
4
4
  const SectionSeparatorText = (props) => {
5
5
  return (
@@ -81,7 +81,7 @@
81
81
  display: block;
82
82
  &.error {
83
83
  [class*=pb_body_kit] {
84
- margin-top: $space_xs / 2;
84
+ margin-top: calc($space_xs / 2);
85
85
  }
86
86
  > select:first-child {
87
87
  border-color: $error;
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { Body, Select } from '../..'
2
+ import { Body, Select } from 'playbook-ui'
3
3
 
4
4
  const SelectError = (props) => {
5
5
  const options = [
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { Body, Select } from '../..'
2
+ import { Body, Select } from 'playbook-ui'
3
3
 
4
4
  const SelectInline = (props) => {
5
5
  const options = [
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { Body, Select } from '../..'
2
+ import { Body, Select } from 'playbook-ui'
3
3
 
4
4
  const SelectInlineCompact = (props) => {
5
5
  const options = [
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { Body, Select } from '../..'
2
+ import { Body, Select } from 'playbook-ui'
3
3
 
4
4
  const SelectInlineShowArrow = (props) => {
5
5
  const options = [
@@ -28,7 +28,7 @@ $pb_selectable_card_border: 2px;
28
28
  padding: $space_sm;
29
29
  margin-bottom: $space_sm;
30
30
  cursor: pointer;
31
- outline: 1px solid transparent;
31
+ outline: 1px solid transparent;
32
32
 
33
33
  @media (hover:hover) {
34
34
  &:hover {
@@ -43,7 +43,7 @@ $pb_selectable_card_border: 2px;
43
43
  align-items: center;
44
44
  height: $pb_selectable_card_indicator_size;
45
45
  width: $pb_selectable_card_indicator_size;
46
- border-radius: ($pb_selectable_card_indicator_size/2) + ($pb_selectable_card_border/2);
46
+ border-radius: calc($pb_selectable_card_indicator_size/2) + calc($pb_selectable_card_border/2);
47
47
  border-width: $pb_selectable_card_border;
48
48
  border-style: solid;
49
49
  border-color: $white;
@@ -52,8 +52,8 @@ $pb_selectable_card_border: 2px;
52
52
  font-size: $font_smaller;
53
53
  text-align: center;
54
54
  position: absolute;
55
- top: -($pb_selectable_card_indicator_size/2);
56
- right: -($pb_selectable_card_indicator_size/2);
55
+ top: -(calc($pb_selectable_card_indicator_size/2));
56
+ right: -(calc($pb_selectable_card_indicator_size/2));
57
57
  opacity: 0;
58
58
  }
59
59
  }
@@ -1,5 +1,3 @@
1
- /* @flow */
2
-
3
1
  import React, {useRef} from 'react'
4
2
  import classnames from 'classnames'
5
3
 
@@ -1,5 +1,5 @@
1
1
  import React, { useState } from 'react'
2
- import { Body, SelectableCard, Title } from '../..'
2
+ import { Body, SelectableCard, Title } from 'playbook-ui'
3
3
 
4
4
  const SelectableCardError = (props) => {
5
5
  const [football, setFootball] = useState(false)
@@ -1,7 +1,7 @@
1
1
  import React, { useState } from 'react'
2
2
  import { render, screen } from '../utilities/test-utils'
3
3
  import SelectableCard from './_selectable_card'
4
- import { Body, Title, Image } from '../'
4
+ import { Body, Title, Image } from 'playbook-ui'
5
5
 
6
6
  const SelectableCardMultiSelect = () => {
7
7
  const [selected, setSelected] = useState(true)
@@ -1,4 +1,3 @@
1
- /* @flow */
2
1
  import React from 'react'
3
2
  import classnames from 'classnames'
4
3
  import { globalProps } from '../utilities/globalProps'
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { SelectableList } from '../..'
2
+ import { SelectableList } from 'playbook-ui'
3
3
 
4
4
  const SelectableListDefault = (props) => {
5
5
  return (
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { SelectableList } from '../..'
2
+ import { SelectableList } from 'playbook-ui'
3
3
 
4
4
  const SelectableListDefault = (props) => {
5
5
  return (
@@ -9,10 +9,10 @@
9
9
  justify-content: flex-start;
10
10
 
11
11
  path {
12
- &.suble_star_dark {
12
+ &.subtle_star_dark {
13
13
  fill: $text_dk_default;
14
14
  }
15
- &.suble_star_light {
15
+ &.subtle_star_light {
16
16
  fill: $text_lt_default;
17
17
  }
18
18
  &.outline_star_dark {
@@ -49,9 +49,10 @@
49
49
 
50
50
  $star-styles: (
51
51
  yellow_star: (color: $yellow),
52
- primary_star: (color: $royal),
53
- suble_star_light: (color: $text_lt_default),
54
- suble_star_dark: (color: $text_dk_default),
52
+ primary_star_light: (color: $royal),
53
+ primary_star_dark: (color: $active_dark),
54
+ subtle_star_light: (color: $text_lt_default),
55
+ subtle_star_dark: (color: $text_dk_default),
55
56
  empty_star_dark: (color: $border_dark),
56
57
  empty_star_light: (color: $border_light),
57
58
  outline_empty_star_dark: (color: transparent),
@@ -111,13 +112,89 @@
111
112
  }
112
113
  }
113
114
  }
115
+
116
+ // Interactivity
117
+ path {
118
+ transition: fill 0.2s
119
+ }
120
+ // Rails selected styles
121
+ .interactive-star-icon {
122
+ cursor: pointer;
123
+ }
114
124
  .yellow-star-selected {
115
125
  color: $yellow;
116
126
  }
117
127
  .primary-star-selected {
118
128
  color: $royal
119
129
  }
120
- .suble-star-selected {
130
+ .subtle-star-selected {
121
131
  color: $text_lt_default;
122
132
  }
133
+ &.dark {
134
+ .primary-star-selected {
135
+ color: $active_dark;
136
+ }
137
+ .subtle-star-selected {
138
+ color: $text_dk_default;
139
+ }
140
+ }
141
+ // React selected styles
142
+ &.star-selected {
143
+ path {
144
+ animation: growColor 0.3s forwards;
145
+ }
146
+ .yellow-star-selected {
147
+ color: $yellow;
148
+ }
149
+ .primary-star-selected {
150
+ color: $royal;
151
+ }
152
+ .subtle-star-selected {
153
+ color: $text_lt_default;
154
+ }
155
+ &.dark {
156
+ .primary-star-selected {
157
+ color: $active_dark;
158
+ }
159
+ .subtle-star-selected {
160
+ color: $text_dk_default;
161
+ }
162
+ }
163
+ }
164
+ // Hover styles
165
+ .star-hovered {
166
+ path {
167
+ fill: mix($primary, $white, 20%);
168
+ }
169
+ }
170
+ &.dark{
171
+ .star-hovered {
172
+ path {
173
+ fill: mix($active_dark, $bg_dark, 50%);
174
+ }
175
+ }
176
+ }
177
+ // Focus styles
178
+ .pb_custom_icon {
179
+ &:focus {
180
+ outline: none;
181
+ }
182
+ &:focus-visible {
183
+ border-radius: 2px;
184
+ outline: 1px solid $primary;
185
+ outline-offset: 2px;
186
+ }
187
+ }
188
+ &.dark {
189
+ .pb_custom_icon {
190
+ &:focus {
191
+ outline: none;
192
+ }
193
+ &:focus-visible {
194
+ border-radius: 2px;
195
+ outline: 1px solid $active_dark;
196
+ outline-offset: 2px;
197
+ }
198
+ }
199
+ }
123
200
  }
@@ -6,6 +6,7 @@ examples:
6
6
  - star_rating_hide: Layout Options
7
7
  - star_rating_number_config: Number Config
8
8
  - star_rating_size_options: Size Options
9
+ - star_rating_interactive: Interactive
9
10
 
10
11
  react:
11
12
  - star_rating_default: Default
@@ -13,4 +14,5 @@ examples:
13
14
  - star_rating_background_options: Background Options
14
15
  - star_rating_hide: Layout Options
15
16
  - star_rating_number_config: Number Config
16
- - star_rating_size_options: Size Options
17
+ - star_rating_size_options: Size Options
18
+ - star_rating_interactive: Interactive
@@ -1,50 +1,156 @@
1
- import PbEnhancedElement from "../pb_enhanced_element";
1
+ import PbEnhancedElement from "../pb_enhanced_element"
2
2
 
3
- const STAR_RATING_SELECTOR = "[data-pb-star-rating]";
4
- const STAR_RATING_INPUT_ID = "star-rating-input";
3
+ const STAR_RATING_WRAPPER_SELECTOR = "[data-pb-star-rating-wrapper]"
4
+ const STAR_RATING_SELECTOR = "[data-pb-star-rating]"
5
+ const STAR_RATING_INPUT_DATA_SELECTOR = "[data-pb-star-rating-input]"
5
6
 
6
7
  export default class PbStarRating extends PbEnhancedElement {
7
8
  static get selector() {
8
- return STAR_RATING_SELECTOR;
9
+ return STAR_RATING_WRAPPER_SELECTOR
9
10
  }
10
11
 
11
12
  connect() {
12
- this.element.addEventListener("click", (event) => {
13
- const clickedStarId = event.currentTarget.id;
14
- this.updateStarColors(clickedStarId);
15
- this.updateHiddenInputValue(clickedStarId);
16
- });
13
+ this.addEventListeners()
14
+ this.handleFormReset()
15
+ }
16
+
17
+ addEventListeners() {
18
+ this.element.querySelectorAll(STAR_RATING_SELECTOR).forEach(star => {
19
+ star.addEventListener("click", (event) => {
20
+ const clickedStarId = event.currentTarget.id
21
+ this.updateStarColors(clickedStarId)
22
+ this.updateHiddenInputValue(clickedStarId)
23
+ this.clearFormValidation()
24
+ })
25
+
26
+ star.addEventListener("mouseenter", (event) => {
27
+ const hoveredStarId = event.currentTarget.id
28
+ this.updateStarHoverColors(hoveredStarId)
29
+ })
30
+
31
+ star.addEventListener("mouseleave", () => {
32
+ this.removeStarHoverColors()
33
+ })
34
+
35
+ star.addEventListener("keydown", (event) => {
36
+ if (event.key === 'Enter' || event.key === ' ') {
37
+ event.preventDefault()
38
+ this.handleStarClick(star.id)
39
+ }
40
+ })
41
+ })
42
+ }
43
+
44
+ handleStarClick(starId) {
45
+ this.updateStarColors(starId)
46
+ this.updateHiddenInputValue(starId)
17
47
  }
18
48
 
19
49
  updateStarColors(clickedStarId) {
20
- const allStars = document.querySelectorAll(STAR_RATING_SELECTOR);
50
+ const allStars = this.element.querySelectorAll(STAR_RATING_SELECTOR)
21
51
 
22
52
  allStars.forEach(star => {
23
- const starId = star.id;
24
- const icon = star.querySelector(".interactive-star-icon");
53
+ const starId = star.id
54
+ const icon = star.querySelector(".interactive-star-icon")
25
55
 
26
56
  if (icon) {
27
57
  if (starId <= clickedStarId) {
28
58
  if (star.classList.contains("yellow_star")) {
29
- icon.classList.add("yellow-star-selected");
30
- } else if (star.classList.contains("primary_star")) {
31
- icon.classList.add("primary-star-selected");
32
- } else if (star.classList.contains("suble_star_light")) {
33
- icon.classList.add("suble-star-selected");
59
+ icon.classList.add("yellow-star-selected")
60
+ } else if (star.classList.contains("primary_star_light")) {
61
+ icon.classList.add("primary-star-selected")
62
+ } else if (star.classList.contains("primary_star_dark")) {
63
+ icon.classList.add("primary-star-selected")
64
+ } else if (star.classList.contains("subtle_star_light")) {
65
+ icon.classList.add("subtle-star-selected")
66
+ } else if (star.classList.contains("subtle_star_dark")) {
67
+ icon.classList.add("subtle-star-selected")
34
68
  } else {
35
- icon.classList.add("yellow-star-selected");
69
+ icon.classList.add("yellow-star-selected")
36
70
  }
37
71
  } else {
38
- icon.classList.remove("yellow-star-selected", "primary-star-selected", "suble-star-selected");
72
+ icon.classList.remove("yellow-star-selected", "primary-star-selected", "subtle-star-selected")
39
73
  }
74
+ icon.classList.remove("star-hovered")
40
75
  }
41
- });
76
+ })
42
77
  }
43
78
 
44
79
  updateHiddenInputValue(value) {
45
- const hiddenInput = document.getElementById(STAR_RATING_INPUT_ID);
80
+ const hiddenInput = this.element.querySelector(STAR_RATING_INPUT_DATA_SELECTOR)
46
81
  if (hiddenInput) {
47
- hiddenInput.value = value;
82
+ hiddenInput.value = value
83
+ }
84
+ }
85
+
86
+ updateStarHoverColors(hoveredStarId) {
87
+ const allStars = this.element.querySelectorAll(STAR_RATING_SELECTOR)
88
+
89
+ allStars.forEach(star => {
90
+ const starId = star.id
91
+ const icon = star.querySelector(".interactive-star-icon")
92
+
93
+ if (icon) {
94
+ if (starId <= hoveredStarId) {
95
+ if (!icon.classList.contains("yellow-star-selected") &&
96
+ !icon.classList.contains("primary-star-selected") &&
97
+ !icon.classList.contains("subtle-star-selected")) {
98
+ icon.classList.add("star-hovered")
99
+ }
100
+ } else {
101
+ icon.classList.remove("star-hovered")
102
+ }
103
+ }
104
+ })
105
+ }
106
+
107
+
108
+ removeStarHoverColors() {
109
+ const allStars = this.element.querySelectorAll(STAR_RATING_SELECTOR)
110
+
111
+ allStars.forEach(star => {
112
+ const icon = star.querySelector(".interactive-star-icon")
113
+ if (icon) {
114
+ if (!icon.classList.contains("yellow-star-selected") &&
115
+ !icon.classList.contains("primary-star-selected") &&
116
+ !icon.classList.contains("subtle-star-selected")) {
117
+ icon.classList.remove("star-hovered")
118
+ }
119
+ }
120
+ })
121
+ }
122
+
123
+ isStarSelected() {
124
+ return this.element.querySelectorAll(".yellow-star-selected, .primary-star-selected, .subtle-star-selected").length > 0
125
+ }
126
+
127
+ handleFormReset() {
128
+ const form = this.element.closest("form")
129
+ if (form) {
130
+ form.addEventListener("reset", () => {
131
+ this.updateHiddenInputValue("")
132
+ this.resetStarRatingValues()
133
+ })
134
+ }
135
+ }
136
+
137
+ resetStarRatingValues() {
138
+ const allStars = this.element.querySelectorAll(STAR_RATING_SELECTOR)
139
+ allStars.forEach(star => {
140
+ const icon = star.querySelector(".interactive-star-icon")
141
+ if (icon) {
142
+ icon.classList.remove("yellow-star-selected", "primary-star-selected", "subtle-star-selected")
143
+ }
144
+ })
145
+ }
146
+
147
+ clearFormValidation() {
148
+ const hiddenInput = this.element.querySelector(STAR_RATING_INPUT_DATA_SELECTOR)
149
+ if (hiddenInput.checkValidity()) {
150
+ const errorLabelElement = this.element.querySelector(".pb_body_kit_negative")
151
+ if (errorLabelElement) {
152
+ errorLabelElement.remove()
153
+ }
48
154
  }
49
155
  }
50
156
  }
@@ -39,15 +39,17 @@
39
39
  <% end %>
40
40
 
41
41
  <% else %>
42
- <%= pb_rails("flex", props: { orientation: "column" }) do %>
42
+ <%= pb_rails("flex", props: { data: {"pb-star-rating-wrapper": "true" }, orientation: "column" }) do %>
43
43
  <% if object.label.present? %>
44
44
  <%= pb_rails("caption", props: {text: object.label, margin_bottom:"xs"}) %>
45
45
  <% end %>
46
- <input type="hidden" id="star-rating-input" value="" name="<%= object.name %>"/>
46
+
47
+ <%= hidden_input_tag %>
48
+
47
49
  <%= pb_rails("flex", props: { orientation: "row" }) do %>
48
50
  <% object.denominator.times do |index| %>
49
51
  <div data-pb-star-rating id="<%= index + 1 %>" class="<%= star_color %>">
50
- <%= pb_rails("icon", props: { classname: "#{background_star_color} pb_star_#{size} interactive-star-icon", custom_icon: Playbook::Engine.root.join(background_star_path)} ) %>
52
+ <%= pb_rails("icon", props: { classname: "#{background_star_color} pb_star_#{size} interactive-star-icon", custom_icon: Playbook::Engine.root.join(background_star_path), tabindex: 0 } ) %>
51
53
  </div>
52
54
  <% end %>
53
55
  <% end %>