playbook_ui 18.1.0 → 18.2.0.pre.alpha.PLAY3330requiredtypeaheadvalidationbug20501

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 (259) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_advanced_table/Components/RegularTableView.tsx +1 -4
  3. data/app/pb_kits/playbook/pb_advanced_table/Components/TableHeaderCell.tsx +9 -5
  4. data/app/pb_kits/playbook/pb_advanced_table/Components/TablePagination.tsx +28 -6
  5. data/app/pb_kits/playbook/pb_advanced_table/Components/VirtualizedTableView.tsx +6 -1
  6. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +26 -9
  7. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.tsx +2 -0
  8. data/app/pb_kits/playbook/pb_advanced_table/advanced_table.test.jsx +137 -1
  9. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pagination_section_separator.jsx +90 -0
  10. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pagination_section_separator.md +5 -0
  11. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pagination_with_props.md +2 -1
  12. data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +1 -0
  13. data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +1 -0
  14. data/app/pb_kits/playbook/pb_advanced_table/table_body.rb +4 -4
  15. data/app/pb_kits/playbook/pb_advanced_table/table_header.html.erb +8 -3
  16. data/app/pb_kits/playbook/pb_advanced_table/table_header.rb +19 -6
  17. data/app/pb_kits/playbook/pb_advanced_table/table_row.rb +1 -1
  18. data/app/pb_kits/playbook/pb_background/_background.tsx +3 -1
  19. data/app/pb_kits/playbook/pb_background/kit.schema.json +1 -0
  20. data/app/pb_kits/playbook/pb_caption/_caption.tsx +3 -1
  21. data/app/pb_kits/playbook/pb_caption/kit.schema.json +1 -0
  22. data/app/pb_kits/playbook/pb_container/_container.tsx +3 -1
  23. data/app/pb_kits/playbook/pb_container/kit.schema.json +1 -0
  24. data/app/pb_kits/playbook/pb_currency/_currency.tsx +3 -1
  25. data/app/pb_kits/playbook/pb_currency/kit.schema.json +1 -0
  26. data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.tsx +3 -1
  27. data/app/pb_kits/playbook/pb_dashboard_value/kit.schema.json +1 -0
  28. data/app/pb_kits/playbook/pb_date_picker/_date_picker.scss +4 -0
  29. data/app/pb_kits/playbook/pb_date_picker/_date_picker.tsx +51 -49
  30. data/app/pb_kits/playbook/pb_date_picker/date_picker.html.erb +56 -56
  31. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_calendar_input_icon.scss +1 -1
  32. data/app/pb_kits/playbook/pb_detail/_detail.tsx +3 -1
  33. data/app/pb_kits/playbook/pb_detail/kit.schema.json +1 -0
  34. data/app/pb_kits/playbook/pb_dropdown/_dropdown.scss +16 -0
  35. data/app/pb_kits/playbook/pb_dropdown/_dropdown.tsx +190 -29
  36. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_custom_content.html.erb +58 -0
  37. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_custom_content.md +10 -0
  38. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_initial_options.jsx +45 -0
  39. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_initial_options.md +9 -0
  40. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_loading.jsx +43 -0
  41. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_loading.md +9 -0
  42. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_multi_select.jsx +44 -0
  43. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_multi_select.md +5 -0
  44. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_multi_select_rails.html.erb +44 -0
  45. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_multi_select_rails.md +5 -0
  46. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_rich_results.jsx +64 -0
  47. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_rich_results.md +5 -0
  48. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_search.html.erb +43 -0
  49. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_async_search.md +55 -0
  50. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_controlled_selection.jsx +42 -0
  51. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_controlled_selection.md +5 -0
  52. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_external_search.jsx +58 -0
  53. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_external_search.md +9 -0
  54. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_no_options_text.html.erb +9 -0
  55. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_no_options_text.jsx +35 -0
  56. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_no_options_text_rails.md +3 -0
  57. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_no_options_text_react.md +3 -0
  58. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_custom.md +7 -2
  59. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_custom_rails.md +7 -2
  60. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_enable_time.html.erb +33 -0
  61. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_enable_time.jsx +42 -0
  62. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_quickpick_enable_time.md +24 -0
  63. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_highlight.jsx +101 -0
  64. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_highlight.md +3 -0
  65. data/app/pb_kits/playbook/pb_dropdown/docs/_playground.json +174 -3
  66. data/app/pb_kits/playbook/pb_dropdown/docs/_playground.overrides.json +154 -2
  67. data/app/pb_kits/playbook/pb_dropdown/docs/example.yml +14 -0
  68. data/app/pb_kits/playbook/pb_dropdown/docs/index.js +9 -0
  69. data/app/pb_kits/playbook/pb_dropdown/dropdown.html.erb +4 -1
  70. data/app/pb_kits/playbook/pb_dropdown/dropdown.rb +14 -0
  71. data/app/pb_kits/playbook/pb_dropdown/dropdown.test.jsx +1344 -0
  72. data/app/pb_kits/playbook/pb_dropdown/dropdown_container.html.erb +1 -1
  73. data/app/pb_kits/playbook/pb_dropdown/dropdown_container.rb +1 -0
  74. data/app/pb_kits/playbook/pb_dropdown/dropdown_index.test.js +1153 -0
  75. data/app/pb_kits/playbook/pb_dropdown/hooks/useAsyncOptions.ts +179 -0
  76. data/app/pb_kits/playbook/pb_dropdown/hooks/useHandleOnKeydown.tsx +21 -19
  77. data/app/pb_kits/playbook/pb_dropdown/index.js +518 -79
  78. data/app/pb_kits/playbook/pb_dropdown/keyboard_accessibility.js +5 -3
  79. data/app/pb_kits/playbook/pb_dropdown/kit.schema.json +78 -1
  80. data/app/pb_kits/playbook/pb_dropdown/quickpick/index.ts +60 -18
  81. data/app/pb_kits/playbook/pb_dropdown/quickpick_helper.rb +92 -3
  82. data/app/pb_kits/playbook/pb_dropdown/subcomponents/DropdownContainer.tsx +17 -3
  83. data/app/pb_kits/playbook/pb_dropdown/subcomponents/DropdownOption.tsx +21 -7
  84. data/app/pb_kits/playbook/pb_dropdown/subcomponents/DropdownTrigger.tsx +5 -2
  85. data/app/pb_kits/playbook/pb_dropdown/subcomponents/MultiSelectTriggerDisplay.tsx +9 -3
  86. data/app/pb_kits/playbook/pb_dropdown/utilities/index.ts +8 -1
  87. data/app/pb_kits/playbook/pb_dropdown/utilities/quickpickDateSync.ts +137 -0
  88. data/app/pb_kits/playbook/pb_filter/Filter/InteractiveFilter.tsx +1 -1
  89. data/app/pb_kits/playbook/pb_form/docs/_description_react.md +3 -0
  90. data/app/pb_kits/playbook/pb_form/docs/_form_default_values.jsx +898 -0
  91. data/app/pb_kits/playbook/pb_form/docs/_form_default_values_react.md +3 -0
  92. data/app/pb_kits/playbook/pb_form/docs/_form_defaults.jsx +879 -0
  93. data/app/pb_kits/playbook/pb_form/docs/_form_defaults_react.md +29 -0
  94. data/app/pb_kits/playbook/pb_form/docs/_form_loading.jsx +75 -0
  95. data/app/pb_kits/playbook/pb_form/docs/{_form_loading.md → _form_loading_rails.md} +1 -0
  96. data/app/pb_kits/playbook/pb_form/docs/_form_loading_react.md +1 -0
  97. data/app/pb_kits/playbook/pb_form/docs/_form_model_values.jsx +147 -0
  98. data/app/pb_kits/playbook/pb_form/docs/_form_model_values_react.md +16 -0
  99. data/app/pb_kits/playbook/pb_form/docs/_form_multi_column.jsx +164 -0
  100. data/app/pb_kits/playbook/pb_form/docs/_form_multi_column_react.md +3 -0
  101. data/app/pb_kits/playbook/pb_form/docs/_form_validation.html.erb +27 -4
  102. data/app/pb_kits/playbook/pb_form/docs/_form_validation.jsx +1057 -0
  103. data/app/pb_kits/playbook/pb_form/docs/{_form_validation.md → _form_validation_rails.md} +4 -4
  104. data/app/pb_kits/playbook/pb_form/docs/_form_validation_react.md +26 -0
  105. data/app/pb_kits/playbook/pb_form/docs/example.yml +7 -0
  106. data/app/pb_kits/playbook/pb_form/docs/snippets/validation_checkbox.txt +6 -1
  107. data/app/pb_kits/playbook/pb_form/docs/snippets/validation_dropdown.txt +6 -1
  108. data/app/pb_kits/playbook/pb_form/docs/snippets/validation_multi_level_select.txt +1 -0
  109. data/app/pb_kits/playbook/pb_form/docs/snippets/validation_multi_select.txt +1 -0
  110. data/app/pb_kits/playbook/pb_form/docs/snippets/validation_phone_number.txt +1 -0
  111. data/app/pb_kits/playbook/pb_form/docs/snippets/validation_star_rating.txt +6 -1
  112. data/app/pb_kits/playbook/pb_form/docs/snippets/validation_textarea.txt +5 -1
  113. data/app/pb_kits/playbook/pb_form/docs/snippets/validation_time_zone_select.txt +1 -0
  114. data/app/pb_kits/playbook/pb_form/pb_form_validation.js +52 -34
  115. data/app/pb_kits/playbook/pb_full_screen/_full_screen.scss +6 -1
  116. data/app/pb_kits/playbook/pb_full_screen/full_screen.test.jsx +19 -7
  117. data/app/pb_kits/playbook/pb_highlight/_highlight.tsx +3 -1
  118. data/app/pb_kits/playbook/pb_highlight/kit.schema.json +1 -0
  119. data/app/pb_kits/playbook/pb_icon_stat_value/_icon_stat_value.tsx +3 -1
  120. data/app/pb_kits/playbook/pb_icon_stat_value/kit.schema.json +1 -0
  121. data/app/pb_kits/playbook/pb_icon_value/_icon_value.tsx +3 -1
  122. data/app/pb_kits/playbook/pb_icon_value/kit.schema.json +1 -0
  123. data/app/pb_kits/playbook/pb_label_value/_label_value.tsx +3 -1
  124. data/app/pb_kits/playbook/pb_label_value/kit.schema.json +1 -0
  125. data/app/pb_kits/playbook/pb_legend/_legend.tsx +3 -1
  126. data/app/pb_kits/playbook/pb_legend/kit.schema.json +1 -0
  127. data/app/pb_kits/playbook/pb_lightbox/Header/_lightbox_header.tsx +1 -1
  128. data/app/pb_kits/playbook/pb_lightbox/lightbox.test.jsx +1 -1
  129. data/app/pb_kits/playbook/pb_map/docs/_map_default.jsx +1 -1
  130. data/app/pb_kits/playbook/pb_map/docs/_map_default.md +3 -3
  131. data/app/pb_kits/playbook/pb_map/docs/_map_with_custom_button.jsx +1 -1
  132. data/app/pb_kits/playbook/pb_map/docs/_map_with_plugin.jsx +1 -1
  133. data/app/pb_kits/playbook/pb_map/docs/_playground.json +3 -3
  134. data/app/pb_kits/playbook/pb_map/docs/_playground.overrides.json +3 -3
  135. data/app/pb_kits/playbook/pb_message/_message.tsx +3 -1
  136. data/app/pb_kits/playbook/pb_message/kit.schema.json +1 -0
  137. data/app/pb_kits/playbook/pb_multi_level_select/_multi_level_select.tsx +1 -0
  138. data/app/pb_kits/playbook/pb_multi_level_select/index.js +19 -4
  139. data/app/pb_kits/playbook/pb_multi_level_select/kit.schema.json +7 -0
  140. data/app/pb_kits/playbook/pb_multi_level_select/multi_level_select.html.erb +4 -1
  141. data/app/pb_kits/playbook/pb_multi_level_select/multi_level_select.rb +7 -3
  142. data/app/pb_kits/playbook/pb_multiple_users/_multiple_users.tsx +3 -1
  143. data/app/pb_kits/playbook/pb_multiple_users/kit.schema.json +1 -0
  144. data/app/pb_kits/playbook/pb_multiple_users_stacked/_multiple_users_stacked.tsx +4 -2
  145. data/app/pb_kits/playbook/pb_multiple_users_stacked/kit.schema.json +1 -0
  146. data/app/pb_kits/playbook/pb_phone_number_input/_phone_number_input.tsx +10 -7
  147. data/app/pb_kits/playbook/pb_phone_number_input/docs/_playground.json +1 -0
  148. data/app/pb_kits/playbook/pb_phone_number_input/index.ts +7 -2
  149. data/app/pb_kits/playbook/pb_phone_number_input/kit.schema.json +8 -0
  150. data/app/pb_kits/playbook/pb_phone_number_input/phone_number_input.rb +5 -1
  151. data/app/pb_kits/playbook/pb_phone_number_input/phone_number_input.test.js +12 -0
  152. data/app/pb_kits/playbook/pb_progress_step/_progress_step_item.tsx +3 -1
  153. data/app/pb_kits/playbook/pb_rich_text_editor/TipTap/MoreExtensionsDropdown.tsx +10 -3
  154. data/app/pb_kits/playbook/pb_rich_text_editor/TipTap/Toolbar.tsx +16 -1
  155. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_playground.json +2 -3
  156. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_playground.overrides.json +2 -3
  157. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_attributes.jsx +1 -5
  158. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_default.jsx +1 -5
  159. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_default.md +2 -3
  160. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_focus.jsx +1 -5
  161. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_height.jsx +3 -13
  162. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_inline.jsx +1 -5
  163. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_label.jsx +2 -3
  164. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_markdown_support.jsx +1 -2
  165. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_min_height.jsx +3 -13
  166. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_preview.jsx +1 -5
  167. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_required_indicator.jsx +1 -5
  168. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_simple.jsx +1 -5
  169. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_sticky.jsx +1 -5
  170. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_templates.jsx +1 -5
  171. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_more_extensions.jsx +3 -8
  172. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_more_extensions.md +1 -1
  173. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_rails_default.md +2 -2
  174. data/app/pb_kits/playbook/pb_rich_text_editor/rich_text_editor.test.js +2 -1
  175. data/app/pb_kits/playbook/pb_rich_text_editor/rich_text_editor_advanced.test.js +7 -5
  176. data/app/pb_kits/playbook/pb_rich_text_editor/rich_text_editor_rails.js +15 -4
  177. data/app/pb_kits/playbook/pb_select/_select.scss +2 -2
  178. data/app/pb_kits/playbook/pb_star_rating/index.js +8 -4
  179. data/app/pb_kits/playbook/pb_star_rating/kit.schema.json +7 -0
  180. data/app/pb_kits/playbook/pb_star_rating/star_rating.rb +6 -1
  181. data/app/pb_kits/playbook/pb_stat_value/_stat_value.tsx +3 -1
  182. data/app/pb_kits/playbook/pb_stat_value/kit.schema.json +1 -0
  183. data/app/pb_kits/playbook/pb_table/_table.tsx +70 -197
  184. data/app/pb_kits/playbook/pb_table/index.ts +53 -122
  185. data/app/pb_kits/playbook/pb_table/styles/_sticky_columns.scss +26 -3
  186. data/app/pb_kits/playbook/pb_table/styles/_vertical_border.scss +27 -8
  187. data/app/pb_kits/playbook/pb_table/utilities/stickyColumns.test.ts +266 -0
  188. data/app/pb_kits/playbook/pb_table/utilities/stickyColumns.ts +145 -0
  189. data/app/pb_kits/playbook/pb_text_input/_text_input.tsx +1 -1
  190. data/app/pb_kits/playbook/pb_text_input/add_on.html.erb +2 -2
  191. data/app/pb_kits/playbook/pb_timeline/_item.tsx +3 -1
  192. data/app/pb_kits/playbook/pb_title_count/_title_count.tsx +3 -1
  193. data/app/pb_kits/playbook/pb_title_count/kit.schema.json +1 -0
  194. data/app/pb_kits/playbook/pb_title_detail/_title_detail.tsx +3 -1
  195. data/app/pb_kits/playbook/pb_title_detail/kit.schema.json +1 -0
  196. data/app/pb_kits/playbook/utilities/test/globalProps/onClick.test.js +327 -0
  197. data/dist/ai/all-schemas.json +277 -55
  198. data/dist/ai/forms.json +26 -20
  199. data/dist/ai/index.json +2 -2
  200. data/dist/ai/kits/background.schema.json +1 -0
  201. data/dist/ai/kits/button.schema.json +1 -1
  202. data/dist/ai/kits/caption.schema.json +1 -0
  203. data/dist/ai/kits/checkbox.schema.json +7 -5
  204. data/dist/ai/kits/container.schema.json +1 -0
  205. data/dist/ai/kits/currency.schema.json +1 -0
  206. data/dist/ai/kits/dashboard_value.schema.json +1 -0
  207. data/dist/ai/kits/date_picker.schema.json +4 -3
  208. data/dist/ai/kits/detail.schema.json +1 -0
  209. data/dist/ai/kits/dropdown.schema.json +160 -10
  210. data/dist/ai/kits/highlight.schema.json +1 -0
  211. data/dist/ai/kits/icon_stat_value.schema.json +1 -0
  212. data/dist/ai/kits/icon_value.schema.json +1 -0
  213. data/dist/ai/kits/label_value.schema.json +1 -0
  214. data/dist/ai/kits/legend.schema.json +1 -0
  215. data/dist/ai/kits/message.schema.json +1 -0
  216. data/dist/ai/kits/multi_level_select.schema.json +15 -6
  217. data/dist/ai/kits/multiple_users.schema.json +1 -0
  218. data/dist/ai/kits/multiple_users_stacked.schema.json +1 -0
  219. data/dist/ai/kits/phone_number_input.schema.json +18 -7
  220. data/dist/ai/kits/select.schema.json +25 -6
  221. data/dist/ai/kits/star_rating.schema.json +14 -5
  222. data/dist/ai/kits/stat_value.schema.json +1 -0
  223. data/dist/ai/kits/text_input.schema.json +4 -3
  224. data/dist/ai/kits/textarea.schema.json +4 -3
  225. data/dist/ai/kits/time_picker.schema.json +4 -3
  226. data/dist/ai/kits/title_count.schema.json +1 -0
  227. data/dist/ai/kits/title_detail.schema.json +1 -0
  228. data/dist/ai/kits/typeahead.schema.json +4 -3
  229. data/dist/ai/playgrounds/dropdown.json +1 -1
  230. data/dist/ai/playgrounds/index.json +1 -1
  231. data/dist/ai/playgrounds/map.json +1 -1
  232. data/dist/ai/playgrounds/rich_text_editor.json +1 -1
  233. data/dist/chunks/_pagination-BStnaG2D.js +1 -0
  234. data/dist/chunks/{_pb_line_graph-CUJ7NJIr.js → _pb_line_graph-DAoYQIoh.js} +1 -1
  235. data/dist/chunks/_tooltip-WptzLsCF.js +5 -0
  236. data/dist/chunks/_typeahead-DNfFwTns.js +1 -0
  237. data/dist/chunks/{globalProps-DDcpyjvz.js → globalProps-wXibGgWr.js} +1 -1
  238. data/dist/chunks/lib-BDUQ3wt0.js +29 -0
  239. data/dist/chunks/quickpickDateSync-DLDx4zce.js +1 -0
  240. data/dist/chunks/{time_picker_helper-B_FN8E9Y.js → time_picker_helper-Dc38LjqW.js} +1 -1
  241. data/dist/chunks/vendor.js +2 -2
  242. data/dist/menu.yml +1 -1
  243. data/dist/playbook-rails-react-bindings.js +1 -1
  244. data/dist/playbook-rails.js +1 -1
  245. data/dist/playbook.css +1 -1
  246. data/lib/playbook/forms/builder/checkbox_field.rb +1 -0
  247. data/lib/playbook/forms/builder/collection_select_field.rb +5 -1
  248. data/lib/playbook/forms/builder/select_field.rb +5 -1
  249. data/lib/playbook/version.rb +2 -2
  250. metadata +63 -16
  251. data/dist/chunks/_detail-CDUjsRrc.js +0 -5
  252. data/dist/chunks/_table-C9KHGQhb.js +0 -1
  253. data/dist/chunks/_typeahead-CfxZLhd3.js +0 -1
  254. data/dist/chunks/lib-D57mygNT.js +0 -29
  255. /data/app/pb_kits/playbook/pb_form/docs/{_description.md → _description_rails.md} +0 -0
  256. /data/app/pb_kits/playbook/pb_form/docs/{_form_default_values.md → _form_default_values_rails.md} +0 -0
  257. /data/app/pb_kits/playbook/pb_form/docs/{_form_defaults.md → _form_defaults_rails.md} +0 -0
  258. /data/app/pb_kits/playbook/pb_form/docs/{_form_model_values.md → _form_model_values_rails.md} +0 -0
  259. /data/app/pb_kits/playbook/pb_form/docs/{_form_multi_column.md → _form_multi_column_rails.md} +0 -0
@@ -2,6 +2,7 @@ import React from 'react'
2
2
  import classnames from 'classnames'
3
3
  import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
4
4
  import { globalProps, GlobalProps } from '../utilities/globalProps'
5
+ import { GlobalEventProps, globalEventProps } from '../utilities/globalEventProps'
5
6
 
6
7
  type ContainerProps = {
7
8
  aria?: { [key: string]: string },
@@ -11,7 +12,7 @@ type ContainerProps = {
11
12
  htmlOptions?: { [key: string]: string | number | boolean | (() => void) | ((event: any) => void) | any },
12
13
  tag?: "div" | "span" | "a" | "button" | "option" | "table" | "tbody" | "thead" | "tfoot" | "tr" | "td" | "th" | "img" | "section" | "article" | "main" | "header" | "footer" | "nav" | "aside"
13
14
  id?: string,
14
- } & GlobalProps
15
+ } & GlobalProps & GlobalEventProps
15
16
 
16
17
  const Container = (props: ContainerProps): React.ReactElement => {
17
18
  const {
@@ -36,6 +37,7 @@ const Container = (props: ContainerProps): React.ReactElement => {
36
37
  {...ariaProps}
37
38
  {...dataProps}
38
39
  {...htmlProps}
40
+ {...globalEventProps(props)}
39
41
  className={classes}
40
42
  id={id}
41
43
  >
@@ -39,6 +39,7 @@
39
39
  }
40
40
  },
41
41
  "globalProps": true,
42
+ "globalEventProps": true,
42
43
  "usage": {
43
44
  "react": {
44
45
  "import": "import { Container } from 'playbook-ui'",
@@ -2,6 +2,7 @@ import React from 'react'
2
2
  import classnames from 'classnames'
3
3
 
4
4
  import { globalProps } from '../utilities/globalProps'
5
+ import { GlobalEventProps, globalEventProps } from '../utilities/globalEventProps'
5
6
  import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
6
7
 
7
8
  import Body from '../pb_body/_body'
@@ -28,7 +29,7 @@ type CurrencyProps = {
28
29
  unit?: string,
29
30
  unstyled?: boolean,
30
31
  commaSeparator?: boolean,
31
- }
32
+ } & GlobalEventProps
32
33
 
33
34
  const sizes: {lg: 1, md: 3, sm: 4} = {
34
35
  lg: 1,
@@ -132,6 +133,7 @@ const Currency = (props: CurrencyProps): React.ReactElement => {
132
133
  {...ariaProps}
133
134
  {...dataProps}
134
135
  {...htmlProps}
136
+ {...globalEventProps(props)}
135
137
  className={classes}
136
138
  id={id}
137
139
  >
@@ -137,6 +137,7 @@
137
137
  }
138
138
  },
139
139
  "globalProps": true,
140
+ "globalEventProps": true,
140
141
  "usage": {
141
142
  "react": {
142
143
  "import": "import { Currency } from 'playbook-ui'",
@@ -2,6 +2,7 @@ import React from 'react'
2
2
  import classnames from 'classnames'
3
3
  import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
4
4
  import { globalProps } from '../utilities/globalProps'
5
+ import { GlobalEventProps, globalEventProps } from '../utilities/globalEventProps'
5
6
 
6
7
  import Body from '../pb_body/_body'
7
8
  import StatChange from '../pb_stat_change/_stat_change'
@@ -23,7 +24,7 @@ type DashboardValueProps = {
23
24
  unit?: string,
24
25
  value?: string | number
25
26
  }
26
- }
27
+ } & GlobalEventProps
27
28
 
28
29
  const DashboardValue = (props: DashboardValueProps): React.ReactElement => {
29
30
  const {
@@ -52,6 +53,7 @@ const DashboardValue = (props: DashboardValueProps): React.ReactElement => {
52
53
  {...ariaProps}
53
54
  {...dataProps}
54
55
  {...htmlProps}
56
+ {...globalEventProps(props)}
55
57
  className={classes}
56
58
  id={id}
57
59
  >
@@ -43,6 +43,7 @@
43
43
  }
44
44
  },
45
45
  "globalProps": true,
46
+ "globalEventProps": true,
46
47
  "usage": {
47
48
  "react": {
48
49
  "import": "import { DashboardValue } from 'playbook-ui'",
@@ -16,6 +16,10 @@
16
16
  display: block;
17
17
  }
18
18
 
19
+ .date_picker_input_container {
20
+ position: relative;
21
+ }
22
+
19
23
  @import "./sass_partials/calendar_input_icon";
20
24
  }
21
25
 
@@ -297,19 +297,57 @@ const DatePicker = (props: DatePickerProps): React.ReactElement => {
297
297
  )}
298
298
  <>
299
299
  <div className="date_picker_input_wrapper">
300
- <input
301
- aria-describedby={errorId}
302
- aria-invalid={!!error}
303
- autoComplete="off"
304
- className="date_picker_input"
305
- disabled={disableInput}
306
- id={pickerId}
307
- name={name}
308
- onChange={inputOnChange}
309
- placeholder={placeholder}
310
- style={{ cursor: getCursorStyle(filteredProps.cursor) }}
311
- value={inputValue}
312
- />
300
+ <div className="date_picker_input_container">
301
+ <input
302
+ aria-describedby={errorId}
303
+ aria-invalid={!!error}
304
+ autoComplete="off"
305
+ className="date_picker_input"
306
+ disabled={disableInput}
307
+ id={pickerId}
308
+ name={name}
309
+ onChange={inputOnChange}
310
+ placeholder={placeholder}
311
+ style={{ cursor: getCursorStyle(filteredProps.cursor) }}
312
+ value={inputValue}
313
+ />
314
+
315
+ {!hideIcon && !inLine &&
316
+ <div
317
+ className={iconWrapperClass()}
318
+ id={`cal-icon-${pickerId}`}
319
+ >
320
+ <Icon
321
+ className="cal_icon"
322
+ icon="calendar-alt"
323
+ />
324
+ </div>
325
+ }
326
+
327
+ {inLine ?
328
+ <div>
329
+ <div
330
+ className={`${iconWrapperClass()} date-picker-inline-icon-plus`}
331
+ id={`${pickerId}-icon-plus`}
332
+ >
333
+ <Icon
334
+ className="date-picker-plus-icon"
335
+ icon="plus"
336
+ />
337
+ </div>
338
+ <div
339
+ className={`${iconWrapperClass()} date-picker-inline-angle-down`}
340
+ id={`${pickerId}-angle-down`}
341
+ >
342
+ <Icon
343
+ className="angle_down_icon svg-inline--fa"
344
+ customIcon={angleDown}
345
+ />
346
+ </div>
347
+ </div>
348
+ : null
349
+ }
350
+ </div>
313
351
 
314
352
  {error &&
315
353
  <Body
@@ -322,42 +360,6 @@ const DatePicker = (props: DatePickerProps): React.ReactElement => {
322
360
  />
323
361
  }
324
362
  </div>
325
-
326
- {!hideIcon && !inLine &&
327
- <div
328
- className={iconWrapperClass()}
329
- id={`cal-icon-${pickerId}`}
330
- >
331
- <Icon
332
- className="cal_icon"
333
- icon="calendar-alt"
334
- />
335
- </div>
336
- }
337
-
338
- {inLine ?
339
- <div>
340
- <div
341
- className={`${iconWrapperClass()} date-picker-inline-icon-plus`}
342
- id={`${pickerId}-icon-plus`}
343
- >
344
- <Icon
345
- className="date-picker-plus-icon"
346
- icon="plus"
347
- />
348
- </div>
349
- <div
350
- className={`${iconWrapperClass()} date-picker-inline-angle-down`}
351
- id={`${pickerId}-angle-down`}
352
- >
353
- <Icon
354
- className="angle_down_icon svg-inline--fa"
355
- customIcon={angleDown}
356
- />
357
- </div>
358
- </div>
359
- : null
360
- }
361
363
  </>
362
364
  </div>
363
365
  </div>
@@ -18,66 +18,66 @@
18
18
  <% end %>
19
19
  </label>
20
20
  <% end %>
21
- <% if content.present? %>
22
- <%= content %>
23
- <% else %>
24
- <%= pb_rails("text_input", props: {
25
- aria: object.input_aria,
26
- autocomplete: false,
27
- cursor: object.cursor,
28
- dark: object.dark,
29
- data: object.input_data,
30
- disabled: object.disable_input,
31
- error: object.error,
32
- id: object.picker_id,
33
- margin_bottom: "none",
34
- name: object.name,
35
- placeholder: object.placeholder,
36
- required: object.required,
37
- validation: object.validation_message.present? ? { message: object.validation_message } : {},
38
- }) %>
39
- <% end %>
21
+ <div class="date_picker_input_container">
22
+ <% if content.present? %>
23
+ <%= content %>
24
+ <% else %>
25
+ <%= pb_rails("text_input", props: {
26
+ aria: object.input_aria,
27
+ autocomplete: false,
28
+ cursor: object.cursor,
29
+ dark: object.dark,
30
+ data: object.input_data,
31
+ disabled: object.disable_input,
32
+ error: object.error,
33
+ id: object.picker_id,
34
+ margin_bottom: "none",
35
+ name: object.name,
36
+ placeholder: object.placeholder,
37
+ required: object.required,
38
+ validation: object.validation_message.present? ? { message: object.validation_message } : {},
39
+ }) %>
40
+ <% end %>
41
+ <% if !object.hide_icon && !object.inline %>
42
+ <div
43
+ class="<%= object.icon_wrapper_class %>"
44
+ id="cal-icon-<%= object.picker_id %>"
45
+ >
46
+ <%= pb_rails("icon", props: {
47
+ classname: "cal_icon",
48
+ icon: "calendar-alt"
49
+ }) %>
50
+ </div>
51
+ <% end %>
52
+ <!-- Inline -->
53
+ <% if object.inline %>
54
+ <!-- Plus Icon -->
55
+ <div
56
+ class="<%= object.icon_wrapper_class %> date-picker-inline-icon-plus"
57
+ id="<%= object.picker_id %>-icon-plus"
58
+ >
59
+ <%= pb_rails("icon", props: {
60
+ classname: "plus-icon",
61
+ icon: "plus"
62
+ }) %>
63
+ </div>
64
+
65
+ <!-- Angle Down Icon -->
66
+ <div
67
+ class="<%= object.icon_wrapper_class %> date-picker-inline-angle-down"
68
+ id="<%= object.picker_id %>-angle-down"
69
+ >
70
+ <%= pb_rails("icon", props: {
71
+ classname: "angle_down_icon",
72
+ custom_icon: Playbook::Engine::root.join(angle_down_path)
73
+ }) %>
74
+ </div>
75
+ <% end %>
76
+ </div>
40
77
  <% if object.selection_type == "quickpick" %>
41
78
  <input type="hidden" id="<%= "#{object.start_date_id}" %>" name="<%= "#{object.start_date_name}" %>">
42
79
  <input type="hidden" id="<%= "#{object.end_date_id}" %>" name="<%= "#{object.end_date_name}" %>">
43
80
  <% end %>
44
-
45
- <% if !object.hide_icon && !object.inline %>
46
- <div
47
- class="<%= object.icon_wrapper_class %>"
48
- id="cal-icon-<%= object.picker_id %>"
49
- >
50
- <%= pb_rails("icon", props: {
51
- classname: "cal_icon",
52
- icon: "calendar-alt"
53
- }) %>
54
- </div>
55
- <% end %>
56
-
57
- <!-- Inline -->
58
- <% if object.inline %>
59
- <!-- Plus Icon -->
60
- <div
61
- class="<%= object.icon_wrapper_class %> date-picker-inline-icon-plus"
62
- id="<%= object.picker_id %>-icon-plus"
63
- >
64
- <%= pb_rails("icon", props: {
65
- classname: "plus-icon",
66
- icon: "plus"
67
- }) %>
68
- </div>
69
-
70
- <!-- Angle Down Icon -->
71
- <div
72
- class="<%= object.icon_wrapper_class %> date-picker-inline-angle-down"
73
- id="<%= object.picker_id %>-angle-down"
74
- >
75
- <%= pb_rails("icon", props: {
76
- classname: "angle_down_icon",
77
- custom_icon: Playbook::Engine::root.join(angle_down_path)
78
- }) %>
79
- </div>
80
- <% end %>
81
81
  </div>
82
82
 
83
83
  <%= javascript_tag do %>
@@ -3,7 +3,7 @@
3
3
  .cal_icon_wrapper {
4
4
  pointer-events: none;
5
5
  position: absolute;
6
- top: $space_md + 2;
6
+ top: 0;
7
7
  right: 0;
8
8
  border-left: 1px solid $input_border_default;
9
9
  width: $space_xl + $space_xs;
@@ -2,6 +2,7 @@ import React from 'react'
2
2
  import classnames from 'classnames'
3
3
  import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
4
4
  import { globalProps, GlobalProps } from '../utilities/globalProps'
5
+ import { globalEventProps, GlobalEventProps } from '../utilities/globalEventProps'
5
6
 
6
7
  type DetailProps = {
7
8
  aria?: { [key: string]: string },
@@ -15,7 +16,7 @@ type DetailProps = {
15
16
  id?: string,
16
17
  tag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'div',
17
18
  text?: string,
18
- } & GlobalProps
19
+ } & GlobalProps & GlobalEventProps
19
20
 
20
21
  const Detail = (props: DetailProps): React.ReactElement => {
21
22
  const {
@@ -48,6 +49,7 @@ const Detail = (props: DetailProps): React.ReactElement => {
48
49
  {...ariaProps}
49
50
  {...dataProps}
50
51
  {...htmlProps}
52
+ {...globalEventProps(props)}
51
53
  className={classes}
52
54
  id={id}
53
55
  >
@@ -65,6 +65,7 @@
65
65
  }
66
66
  },
67
67
  "globalProps": true,
68
+ "globalEventProps": true,
68
69
  "usage": {
69
70
  "react": {
70
71
  "import": "import { Detail } from 'playbook-ui'",
@@ -106,6 +106,22 @@
106
106
  }
107
107
  }
108
108
 
109
+ // Let Rails autocomplete use the trigger space left by its action icons.
110
+ > :has([data-dropdown-autocomplete]) {
111
+ flex: 1;
112
+ min-width: 0;
113
+
114
+ .pb_flex_kit:has([data-dropdown-autocomplete]) {
115
+ min-width: 0;
116
+ width: 100%;
117
+ }
118
+
119
+ [data-dropdown-autocomplete] {
120
+ min-width: 0;
121
+ width: 100%;
122
+ }
123
+ }
124
+
109
125
  .dropdown_input:disabled {
110
126
  background-color: $input_background_disabled;
111
127
  color: $input_text_disabled;