playbook_ui_docs 16.6.0 → 16.7.0.pre.alpha.PLAY2868datadefaultvalues16201

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 (225) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_grouped_headers_composition.jsx +15 -1
  3. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_infinite_scroll.jsx +2 -2
  4. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_row_loading.jsx +2 -2
  5. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pinned_rows.jsx +2 -2
  6. data/app/pb_kits/playbook/pb_advanced_table/docs/_playground.json +8970 -0
  7. data/app/pb_kits/playbook/pb_advanced_table/docs/_playground.overrides.json +403 -0
  8. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_column_definitions_grouped_simple.json +41 -0
  9. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_column_definitions_grouped_triple.json +56 -0
  10. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_column_definitions_standard.json +31 -0
  11. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_column_definitions_standard_sort.json +37 -0
  12. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_column_definitions_styling.json +44 -0
  13. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_column_definitions_with_ids.json +38 -0
  14. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_mock_data_inline_loading.json +199 -0
  15. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_mock_data_inline_loading_empty_children.json +41 -0
  16. data/app/pb_kits/playbook/pb_avatar/docs/_playground.json +136 -0
  17. data/app/pb_kits/playbook/pb_avatar/docs/_playground.overrides.json +94 -0
  18. data/app/pb_kits/playbook/pb_background/docs/_playground.json +107 -0
  19. data/app/pb_kits/playbook/pb_background/docs/_playground.overrides.json +72 -0
  20. data/app/pb_kits/playbook/pb_badge/docs/_playground.json +112 -0
  21. data/app/pb_kits/playbook/pb_badge/docs/_playground.overrides.json +63 -0
  22. data/app/pb_kits/playbook/pb_body/docs/_playground.json +78 -0
  23. data/app/pb_kits/playbook/pb_body/docs/_playground.overrides.json +47 -0
  24. data/app/pb_kits/playbook/pb_bread_crumbs/docs/_bread_crumbs_default.jsx +5 -5
  25. data/app/pb_kits/playbook/pb_bread_crumbs/docs/_playground.json +54 -0
  26. data/app/pb_kits/playbook/pb_bread_crumbs/docs/_playground.overrides.json +44 -0
  27. data/app/pb_kits/playbook/pb_button/docs/_playground.json +164 -0
  28. data/app/pb_kits/playbook/pb_button/docs/_playground.overrides.json +45 -0
  29. data/app/pb_kits/playbook/pb_button_toolbar/docs/_playground.json +81 -0
  30. data/app/pb_kits/playbook/pb_button_toolbar/docs/_playground.overrides.json +54 -0
  31. data/app/pb_kits/playbook/pb_caption/docs/_playground.json +64 -0
  32. data/app/pb_kits/playbook/pb_caption/docs/_playground.overrides.json +39 -0
  33. data/app/pb_kits/playbook/pb_card/docs/_playground.json +157 -0
  34. data/app/pb_kits/playbook/pb_card/docs/_playground.overrides.json +119 -0
  35. data/app/pb_kits/playbook/pb_checkbox/docs/_playground.json +80 -0
  36. data/app/pb_kits/playbook/pb_checkbox/docs/_playground.overrides.json +58 -0
  37. data/app/pb_kits/playbook/pb_circle_icon_button/docs/_playground.json +113 -0
  38. data/app/pb_kits/playbook/pb_circle_icon_button/docs/_playground.overrides.json +62 -0
  39. data/app/pb_kits/playbook/pb_collapsible/docs/_playground.json +91 -0
  40. data/app/pb_kits/playbook/pb_collapsible/docs/_playground.overrides.json +65 -0
  41. data/app/pb_kits/playbook/pb_contact/docs/_playground.json +69 -0
  42. data/app/pb_kits/playbook/pb_contact/docs/_playground.overrides.json +60 -0
  43. data/app/pb_kits/playbook/pb_copy_button/docs/_playground.json +120 -0
  44. data/app/pb_kits/playbook/pb_copy_button/docs/_playground.overrides.json +96 -0
  45. data/app/pb_kits/playbook/pb_currency/docs/_playground.json +117 -0
  46. data/app/pb_kits/playbook/pb_currency/docs/_playground.overrides.json +98 -0
  47. data/app/pb_kits/playbook/pb_dashboard_value/docs/_playground.json +87 -0
  48. data/app/pb_kits/playbook/pb_dashboard_value/docs/_playground.overrides.json +19 -0
  49. data/app/pb_kits/playbook/pb_date/docs/_playground.json +69 -0
  50. data/app/pb_kits/playbook/pb_date/docs/_playground.overrides.json +51 -0
  51. data/app/pb_kits/playbook/pb_date_picker/docs/_playground.json +274 -0
  52. data/app/pb_kits/playbook/pb_date_picker/docs/_playground.overrides.json +226 -0
  53. data/app/pb_kits/playbook/pb_date_range_inline/docs/_playground.json +73 -0
  54. data/app/pb_kits/playbook/pb_date_range_inline/docs/_playground.overrides.json +57 -0
  55. data/app/pb_kits/playbook/pb_date_range_stacked/docs/_playground.json +46 -0
  56. data/app/pb_kits/playbook/pb_date_range_stacked/docs/_playground.overrides.json +38 -0
  57. data/app/pb_kits/playbook/pb_date_stacked/docs/_playground.json +68 -0
  58. data/app/pb_kits/playbook/pb_date_stacked/docs/_playground.overrides.json +51 -0
  59. data/app/pb_kits/playbook/pb_date_time/docs/_playground.json +89 -0
  60. data/app/pb_kits/playbook/pb_date_time/docs/_playground.overrides.json +71 -0
  61. data/app/pb_kits/playbook/pb_date_time_stacked/docs/_playground.json +53 -0
  62. data/app/pb_kits/playbook/pb_date_time_stacked/docs/_playground.overrides.json +42 -0
  63. data/app/pb_kits/playbook/pb_date_year_stacked/docs/_playground.json +45 -0
  64. data/app/pb_kits/playbook/pb_date_year_stacked/docs/_playground.overrides.json +36 -0
  65. data/app/pb_kits/playbook/pb_detail/docs/_playground.json +69 -0
  66. data/app/pb_kits/playbook/pb_detail/docs/_playground.overrides.json +45 -0
  67. data/app/pb_kits/playbook/pb_dialog/docs/_playground.json +187 -0
  68. data/app/pb_kits/playbook/pb_dialog/docs/_playground.overrides.json +143 -0
  69. data/app/pb_kits/playbook/pb_distribution_bar/docs/_playground.json +83 -0
  70. data/app/pb_kits/playbook/pb_distribution_bar/docs/_playground.overrides.json +45 -0
  71. data/app/pb_kits/playbook/pb_draggable/docs/_playground.json +54 -0
  72. data/app/pb_kits/playbook/pb_draggable/docs/_playground.overrides.json +34 -0
  73. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_constrain_height.jsx +18 -0
  74. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_constrain_height_rails.html.erb +11 -0
  75. data/app/pb_kits/playbook/pb_dropdown/docs/_playground.json +533 -0
  76. data/app/pb_kits/playbook/pb_dropdown/docs/_playground.overrides.json +310 -0
  77. data/app/pb_kits/playbook/pb_empty_state/docs/_playground.json +99 -0
  78. data/app/pb_kits/playbook/pb_empty_state/docs/_playground.overrides.json +79 -0
  79. data/app/pb_kits/playbook/pb_file_upload/docs/_playground.json +119 -0
  80. data/app/pb_kits/playbook/pb_file_upload/docs/_playground.overrides.json +99 -0
  81. data/app/pb_kits/playbook/pb_filter/docs/_playground.json +13 -0
  82. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_playground.json +37 -0
  83. data/app/pb_kits/playbook/pb_flex/docs/_playground.json +133 -0
  84. data/app/pb_kits/playbook/pb_flex/docs/_playground.overrides.json +105 -0
  85. data/app/pb_kits/playbook/pb_form/docs/_playground.json +13 -0
  86. data/app/pb_kits/playbook/pb_form_group/docs/_playground.json +23 -0
  87. data/app/pb_kits/playbook/pb_form_pill/docs/_playground.json +36 -0
  88. data/app/pb_kits/playbook/pb_hashtag/docs/_playground.json +30 -0
  89. data/app/pb_kits/playbook/pb_highlight/docs/_playground.json +22 -0
  90. data/app/pb_kits/playbook/pb_home_address_street/docs/_playground.json +38 -0
  91. data/app/pb_kits/playbook/pb_icon/docs/_playground.json +115 -0
  92. data/app/pb_kits/playbook/pb_icon/docs/_playground.overrides.json +60 -0
  93. data/app/pb_kits/playbook/pb_icon_button/docs/_playground.json +33 -0
  94. data/app/pb_kits/playbook/pb_icon_circle/docs/_playground.json +27 -0
  95. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_playground.json +89 -0
  96. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_playground.overrides.json +29 -0
  97. data/app/pb_kits/playbook/pb_icon_value/docs/_playground.json +60 -0
  98. data/app/pb_kits/playbook/pb_icon_value/docs/_playground.overrides.json +19 -0
  99. data/app/pb_kits/playbook/pb_image/docs/_playground.json +101 -0
  100. data/app/pb_kits/playbook/pb_image/docs/_playground.overrides.json +89 -0
  101. data/app/pb_kits/playbook/pb_label_pill/docs/_playground.json +25 -0
  102. data/app/pb_kits/playbook/pb_label_value/docs/_playground.json +126 -0
  103. data/app/pb_kits/playbook/pb_label_value/docs/_playground.overrides.json +52 -0
  104. data/app/pb_kits/playbook/pb_layout/docs/_playground.json +40 -0
  105. data/app/pb_kits/playbook/pb_legend/docs/_playground.json +26 -0
  106. data/app/pb_kits/playbook/pb_link/docs/_playground.json +171 -0
  107. data/app/pb_kits/playbook/pb_link/docs/_playground.overrides.json +139 -0
  108. data/app/pb_kits/playbook/pb_list/docs/_playground.json +45 -0
  109. data/app/pb_kits/playbook/pb_loading_inline/docs/_playground.json +66 -0
  110. data/app/pb_kits/playbook/pb_loading_inline/docs/_playground.overrides.json +25 -0
  111. data/app/pb_kits/playbook/pb_map/docs/_map_default.md +2 -2
  112. data/app/pb_kits/playbook/pb_map/docs/_map_with_plugin.jsx +6 -0
  113. data/app/pb_kits/playbook/pb_map/docs/_playground.json +25 -0
  114. data/app/pb_kits/playbook/pb_message/docs/_playground.json +39 -0
  115. data/app/pb_kits/playbook/pb_multi_level_select/docs/_playground.json +162 -0
  116. data/app/pb_kits/playbook/pb_multi_level_select/docs/_playground.overrides.json +126 -0
  117. data/app/pb_kits/playbook/pb_multiple_users/docs/_playground.json +182 -0
  118. data/app/pb_kits/playbook/pb_multiple_users/docs/_playground.overrides.json +167 -0
  119. data/app/pb_kits/playbook/pb_multiple_users_stacked/docs/_playground.json +145 -0
  120. data/app/pb_kits/playbook/pb_multiple_users_stacked/docs/_playground.overrides.json +131 -0
  121. data/app/pb_kits/playbook/pb_nav/docs/_playground.json +65 -0
  122. data/app/pb_kits/playbook/pb_nav/docs/_playground.overrides.json +45 -0
  123. data/app/pb_kits/playbook/pb_online_status/docs/_playground.json +71 -0
  124. data/app/pb_kits/playbook/pb_online_status/docs/_playground.overrides.json +40 -0
  125. data/app/pb_kits/playbook/pb_overlay/docs/_playground.json +38 -0
  126. data/app/pb_kits/playbook/pb_pagination/docs/_pagination_default.html.erb +1 -1
  127. data/app/pb_kits/playbook/pb_pagination/docs/_pagination_external_control.jsx +22 -1
  128. data/app/pb_kits/playbook/pb_pagination/docs/_pagination_page_change.jsx +22 -2
  129. data/app/pb_kits/playbook/pb_pagination/docs/_playground.json +69 -0
  130. data/app/pb_kits/playbook/pb_pagination/docs/_playground.overrides.json +61 -0
  131. data/app/pb_kits/playbook/pb_passphrase/docs/_playground.json +34 -0
  132. data/app/pb_kits/playbook/pb_pb_bar_graph/docs/_playground.json +21 -0
  133. data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_playground.json +21 -0
  134. data/app/pb_kits/playbook/pb_pb_gauge_chart/docs/_playground.json +21 -0
  135. data/app/pb_kits/playbook/pb_pb_line_graph/docs/_playground.json +21 -0
  136. data/app/pb_kits/playbook/pb_person/docs/_playground.json +42 -0
  137. data/app/pb_kits/playbook/pb_person/docs/_playground.overrides.json +28 -0
  138. data/app/pb_kits/playbook/pb_person_contact/docs/_playground.json +98 -0
  139. data/app/pb_kits/playbook/pb_person_contact/docs/_playground.overrides.json +92 -0
  140. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_show_placeholder.html.erb +5 -0
  141. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_show_placeholder.jsx +14 -0
  142. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_show_placeholder.md +3 -0
  143. data/app/pb_kits/playbook/pb_phone_number_input/docs/_playground.json +54 -0
  144. data/app/pb_kits/playbook/pb_phone_number_input/docs/example.yml +2 -0
  145. data/app/pb_kits/playbook/pb_phone_number_input/docs/index.js +1 -0
  146. data/app/pb_kits/playbook/pb_pill/docs/_playground.json +106 -0
  147. data/app/pb_kits/playbook/pb_pill/docs/_playground.overrides.json +56 -0
  148. data/app/pb_kits/playbook/pb_popover/docs/_playground.json +104 -0
  149. data/app/pb_kits/playbook/pb_popover/docs/_playground.overrides.json +67 -0
  150. data/app/pb_kits/playbook/pb_progress_pills/docs/_playground.json +90 -0
  151. data/app/pb_kits/playbook/pb_progress_pills/docs/_playground.overrides.json +51 -0
  152. data/app/pb_kits/playbook/pb_progress_simple/docs/_playground.json +87 -0
  153. data/app/pb_kits/playbook/pb_progress_simple/docs/_playground.overrides.json +28 -0
  154. data/app/pb_kits/playbook/pb_progress_step/docs/_playground.json +31 -0
  155. data/app/pb_kits/playbook/pb_radio/docs/_playground.json +83 -0
  156. data/app/pb_kits/playbook/pb_radio/docs/_playground.overrides.json +59 -0
  157. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_playground.json +41 -0
  158. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_templates.jsx +76 -1
  159. data/app/pb_kits/playbook/pb_section_separator/docs/_playground.json +128 -0
  160. data/app/pb_kits/playbook/pb_section_separator/docs/_playground.overrides.json +109 -0
  161. data/app/pb_kits/playbook/pb_select/docs/_playground.json +149 -0
  162. data/app/pb_kits/playbook/pb_select/docs/_playground.overrides.json +80 -0
  163. data/app/pb_kits/playbook/pb_select/docs/_select_error.jsx +1 -1
  164. data/app/pb_kits/playbook/pb_select/docs/_select_inline.jsx +1 -1
  165. data/app/pb_kits/playbook/pb_select/docs/_select_inline_compact.jsx +1 -1
  166. data/app/pb_kits/playbook/pb_select/docs/_select_inline_show_arrow.jsx +1 -1
  167. data/app/pb_kits/playbook/pb_select/docs/_select_multiple.html.erb +3 -3
  168. data/app/pb_kits/playbook/pb_select/docs/_select_multiple.jsx +5 -5
  169. data/app/pb_kits/playbook/pb_select/docs/_select_react_hook.jsx +5 -5
  170. data/app/pb_kits/playbook/pb_select/docs/_select_required_indicator.jsx +1 -1
  171. data/app/pb_kits/playbook/pb_selectable_card/docs/_playground.json +145 -0
  172. data/app/pb_kits/playbook/pb_selectable_card/docs/_playground.overrides.json +115 -0
  173. data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_playground.json +38 -0
  174. data/app/pb_kits/playbook/pb_selectable_icon/docs/_playground.json +113 -0
  175. data/app/pb_kits/playbook/pb_selectable_icon/docs/_playground.overrides.json +92 -0
  176. data/app/pb_kits/playbook/pb_selectable_list/docs/_playground.json +53 -0
  177. data/app/pb_kits/playbook/pb_selectable_list/docs/_playground.overrides.json +34 -0
  178. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_playground.json +30 -0
  179. data/app/pb_kits/playbook/pb_source/docs/_playground.json +27 -0
  180. data/app/pb_kits/playbook/pb_star_rating/docs/_playground.json +128 -0
  181. data/app/pb_kits/playbook/pb_star_rating/docs/_playground.overrides.json +87 -0
  182. data/app/pb_kits/playbook/pb_stat_change/docs/_playground.json +71 -0
  183. data/app/pb_kits/playbook/pb_stat_change/docs/_playground.overrides.json +29 -0
  184. data/app/pb_kits/playbook/pb_stat_value/docs/_playground.json +56 -0
  185. data/app/pb_kits/playbook/pb_stat_value/docs/_playground.overrides.json +23 -0
  186. data/app/pb_kits/playbook/pb_table/docs/_playground.json +57 -0
  187. data/app/pb_kits/playbook/pb_text_input/docs/_playground.json +90 -0
  188. data/app/pb_kits/playbook/pb_text_input/docs/_playground.overrides.json +62 -0
  189. data/app/pb_kits/playbook/pb_textarea/docs/_playground.json +89 -0
  190. data/app/pb_kits/playbook/pb_textarea/docs/_playground.overrides.json +62 -0
  191. data/app/pb_kits/playbook/pb_time/docs/_playground.json +74 -0
  192. data/app/pb_kits/playbook/pb_time/docs/_playground.overrides.json +54 -0
  193. data/app/pb_kits/playbook/pb_time_picker/docs/_playground.json +119 -0
  194. data/app/pb_kits/playbook/pb_time_picker/docs/_playground.overrides.json +96 -0
  195. data/app/pb_kits/playbook/pb_time_range_inline/docs/_playground.json +32 -0
  196. data/app/pb_kits/playbook/pb_time_stacked/docs/_playground.json +54 -0
  197. data/app/pb_kits/playbook/pb_time_stacked/docs/_playground.overrides.json +43 -0
  198. data/app/pb_kits/playbook/pb_timeline/docs/_playground.json +27 -0
  199. data/app/pb_kits/playbook/pb_timestamp/docs/_playground.json +104 -0
  200. data/app/pb_kits/playbook/pb_timestamp/docs/_playground.overrides.json +84 -0
  201. data/app/pb_kits/playbook/pb_title/docs/_playground.json +129 -0
  202. data/app/pb_kits/playbook/pb_title/docs/_playground.overrides.json +108 -0
  203. data/app/pb_kits/playbook/pb_title_count/docs/_playground.json +66 -0
  204. data/app/pb_kits/playbook/pb_title_count/docs/_playground.overrides.json +20 -0
  205. data/app/pb_kits/playbook/pb_title_detail/docs/_playground.json +60 -0
  206. data/app/pb_kits/playbook/pb_title_detail/docs/_playground.overrides.json +19 -0
  207. data/app/pb_kits/playbook/pb_toggle/docs/_playground.json +68 -0
  208. data/app/pb_kits/playbook/pb_toggle/docs/_playground.overrides.json +53 -0
  209. data/app/pb_kits/playbook/pb_tooltip/docs/_playground.json +91 -0
  210. data/app/pb_kits/playbook/pb_tooltip/docs/_playground.overrides.json +53 -0
  211. data/app/pb_kits/playbook/pb_typeahead/docs/_playground.json +205 -0
  212. data/app/pb_kits/playbook/pb_typeahead/docs/_playground.overrides.json +115 -0
  213. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_react_hook.jsx +2 -2
  214. data/app/pb_kits/playbook/pb_user/docs/_playground.json +110 -0
  215. data/app/pb_kits/playbook/pb_user/docs/_playground.overrides.json +89 -0
  216. data/app/pb_kits/playbook/pb_user_badge/docs/_playground.json +61 -0
  217. data/app/pb_kits/playbook/pb_user_badge/docs/_playground.overrides.json +36 -0
  218. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_playground.json +64 -0
  219. data/app/pb_kits/playbook/pb_weekday_stacked/docs/_playground.overrides.json +51 -0
  220. metadata +196 -7
  221. data/app/pb_kits/playbook/pb_advanced_table/docs/_mock_data_inline_loading.js +0 -200
  222. data/app/pb_kits/playbook/pb_advanced_table/docs/_mock_data_inline_loading_empty_children.js +0 -42
  223. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_grouped_headers_composition_mock_data.json +0 -98
  224. data/app/pb_kits/playbook/pb_pagination/docs/data.js +0 -23
  225. data/app/pb_kits/playbook/pb_rich_text_editor/docs/templates.js +0 -75
@@ -0,0 +1,113 @@
1
+ {
2
+ "template": "<CircleIconButton{{props}} />",
3
+ "propTargets": {},
4
+ "defaults": {
5
+ "disabled": false,
6
+ "loading": false,
7
+ "newWindow": false,
8
+ "type": "button",
9
+ "variant": "primary",
10
+ "size": "default"
11
+ },
12
+ "groups": [
13
+ {
14
+ "name": "Appearance",
15
+ "props": [
16
+ "variant",
17
+ "size",
18
+ "disabled",
19
+ "loading"
20
+ ]
21
+ },
22
+ {
23
+ "name": "Content",
24
+ "props": [
25
+ "icon"
26
+ ]
27
+ },
28
+ {
29
+ "name": "Link",
30
+ "props": [
31
+ "link",
32
+ "target",
33
+ "newWindow"
34
+ ]
35
+ },
36
+ {
37
+ "name": "Form",
38
+ "props": [
39
+ "type",
40
+ "onClick"
41
+ ]
42
+ }
43
+ ],
44
+ "presets": [
45
+ {
46
+ "name": "Default",
47
+ "props": {
48
+ "icon": "plus",
49
+ "variant": "primary"
50
+ }
51
+ },
52
+ {
53
+ "name": "Secondary",
54
+ "props": {
55
+ "icon": "pen",
56
+ "variant": "secondary"
57
+ }
58
+ },
59
+ {
60
+ "name": "Link style",
61
+ "props": {
62
+ "icon": "arrow-right",
63
+ "variant": "link"
64
+ }
65
+ },
66
+ {
67
+ "name": "Small",
68
+ "props": {
69
+ "icon": "times",
70
+ "variant": "primary",
71
+ "size": "sm"
72
+ }
73
+ },
74
+ {
75
+ "name": "Disabled",
76
+ "props": {
77
+ "icon": "lock",
78
+ "variant": "primary",
79
+ "disabled": true
80
+ }
81
+ },
82
+ {
83
+ "name": "Loading",
84
+ "props": {
85
+ "icon": "refresh",
86
+ "variant": "primary",
87
+ "loading": true
88
+ }
89
+ }
90
+ ],
91
+ "conditionals": {
92
+ "target": {
93
+ "requires": "link"
94
+ },
95
+ "newWindow": {
96
+ "requires": "link"
97
+ }
98
+ },
99
+ "hints": {
100
+ "icon_required": {
101
+ "when": {},
102
+ "message": "The icon prop is required for CircleIconButton.",
103
+ "type": "info"
104
+ },
105
+ "link_mode": {
106
+ "when": {
107
+ "link": true
108
+ },
109
+ "message": "When link is set, the button renders as an anchor tag.",
110
+ "type": "info"
111
+ }
112
+ }
113
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "groups": [
3
+ {
4
+ "name": "Appearance",
5
+ "props": ["variant", "size", "disabled", "loading"]
6
+ },
7
+ {
8
+ "name": "Content",
9
+ "props": ["icon"]
10
+ },
11
+ {
12
+ "name": "Link",
13
+ "props": ["link", "target", "newWindow"]
14
+ },
15
+ {
16
+ "name": "Form",
17
+ "props": ["type", "onClick"]
18
+ }
19
+ ],
20
+ "presets": [
21
+ {
22
+ "name": "Default",
23
+ "props": { "icon": "plus", "variant": "primary" }
24
+ },
25
+ {
26
+ "name": "Secondary",
27
+ "props": { "icon": "pen", "variant": "secondary" }
28
+ },
29
+ {
30
+ "name": "Link style",
31
+ "props": { "icon": "arrow-right", "variant": "link" }
32
+ },
33
+ {
34
+ "name": "Small",
35
+ "props": { "icon": "times", "variant": "primary", "size": "sm" }
36
+ },
37
+ {
38
+ "name": "Disabled",
39
+ "props": { "icon": "lock", "variant": "primary", "disabled": true }
40
+ },
41
+ {
42
+ "name": "Loading",
43
+ "props": { "icon": "refresh", "variant": "primary", "loading": true }
44
+ }
45
+ ],
46
+ "conditionals": {
47
+ "target": { "requires": "link" },
48
+ "newWindow": { "requires": "link" }
49
+ },
50
+ "hints": {
51
+ "icon_required": {
52
+ "when": {},
53
+ "message": "The icon prop is required for CircleIconButton.",
54
+ "type": "info"
55
+ },
56
+ "link_mode": {
57
+ "when": { "link": true },
58
+ "message": "When link is set, the button renders as an anchor tag.",
59
+ "type": "info"
60
+ }
61
+ }
62
+ }
@@ -0,0 +1,91 @@
1
+ {
2
+ "template": "<Collapsible{{props}}>{{children}}</Collapsible>",
3
+ "propTargets": {},
4
+ "defaults": {
5
+ "tag": "div"
6
+ },
7
+ "children": {
8
+ "editable": true,
9
+ "default": "Expandable content goes here. This section is hidden when collapsed."
10
+ },
11
+ "groups": [
12
+ {
13
+ "name": "Appearance",
14
+ "props": [
15
+ "icon",
16
+ "iconColor",
17
+ "iconSize"
18
+ ]
19
+ },
20
+ {
21
+ "name": "Layout",
22
+ "props": [
23
+ "tag"
24
+ ]
25
+ },
26
+ {
27
+ "name": "Callbacks",
28
+ "props": [
29
+ "onClick",
30
+ "onIconClick"
31
+ ]
32
+ },
33
+ {
34
+ "name": "State",
35
+ "props": [
36
+ "collapsed"
37
+ ]
38
+ }
39
+ ],
40
+ "presets": [
41
+ {
42
+ "name": "Default",
43
+ "props": {},
44
+ "children": "Expandable content goes here."
45
+ },
46
+ {
47
+ "name": "Expanded",
48
+ "props": {
49
+ "collapsed": false
50
+ },
51
+ "children": "This content is visible initially."
52
+ },
53
+ {
54
+ "name": "Custom icon",
55
+ "props": {
56
+ "icon": "plus",
57
+ "iconColor": "link"
58
+ },
59
+ "children": "Custom icon and color."
60
+ }
61
+ ],
62
+ "conditionals": {},
63
+ "hints": {
64
+ "expanded_state": {
65
+ "when": {
66
+ "collapsed": false
67
+ },
68
+ "message": "Set collapsed to false to render as open on first render. Use useCollapsible hook or state to control this for complex UI.",
69
+ "type": "info"
70
+ }
71
+ },
72
+ "structureModes": {
73
+ "default": "subcomponents",
74
+ "modes": {
75
+ "subcomponents": {
76
+ "label": "With Subcomponents",
77
+ "template": "<Collapsible{{props}}>\n <Collapsible.Main>\n Main Section\n </Collapsible.Main>\n <Collapsible.Content>\n {{children}}\n </Collapsible.Content>\n</Collapsible>",
78
+ "children": "Expandable content goes here."
79
+ },
80
+ "with_hook": {
81
+ "label": "With useCollapsible Hook",
82
+ "template": "<Collapsible collapsed={collapsed}{{props}}>\n <Collapsible.Main>\n Main Section\n </Collapsible.Main>\n <Collapsible.Content>\n {{children}}\n </Collapsible.Content>\n</Collapsible>",
83
+ "children": "Content controlled by the useCollapsible hook.",
84
+ "imports": [
85
+ "useCollapsible"
86
+ ],
87
+ "wrapper": "const CollapsibleExample = () => {\n const [collapsed, toggle] = useCollapsible(true)\n\n return (\n <>\n <Button onClick={toggle} marginBottom=\"sm\">\n {collapsed ? 'Expand' : 'Collapse'}\n </Button>\n {{component}}\n </>\n )\n}\n\n<CollapsibleExample />"
88
+ }
89
+ }
90
+ }
91
+ }
@@ -0,0 +1,65 @@
1
+ {
2
+ "children": {
3
+ "default": "Expandable content goes here. This section is hidden when collapsed."
4
+ },
5
+ "structureModes": {
6
+ "default": "subcomponents",
7
+ "modes": {
8
+ "subcomponents": {
9
+ "label": "With Subcomponents",
10
+ "template": "<Collapsible{{props}}>\n <Collapsible.Main>\n Main Section\n </Collapsible.Main>\n <Collapsible.Content>\n {{children}}\n </Collapsible.Content>\n</Collapsible>",
11
+ "children": "Expandable content goes here."
12
+ },
13
+ "with_hook": {
14
+ "label": "With useCollapsible Hook",
15
+ "template": "<Collapsible collapsed={collapsed}{{props}}>\n <Collapsible.Main>\n Main Section\n </Collapsible.Main>\n <Collapsible.Content>\n {{children}}\n </Collapsible.Content>\n</Collapsible>",
16
+ "children": "Content controlled by the useCollapsible hook.",
17
+ "imports": ["useCollapsible"],
18
+ "wrapper": "const CollapsibleExample = () => {\n const [collapsed, toggle] = useCollapsible(true)\n\n return (\n <>\n <Button onClick={toggle} marginBottom=\"sm\">\n {collapsed ? 'Expand' : 'Collapse'}\n </Button>\n {{component}}\n </>\n )\n}\n\n<CollapsibleExample />"
19
+ }
20
+ }
21
+ },
22
+ "groups": [
23
+ {
24
+ "name": "Appearance",
25
+ "props": ["icon", "iconColor", "iconSize"]
26
+ },
27
+ {
28
+ "name": "Layout",
29
+ "props": ["tag"]
30
+ },
31
+ {
32
+ "name": "Callbacks",
33
+ "props": ["onClick", "onIconClick"]
34
+ },
35
+ {
36
+ "name": "State",
37
+ "props": ["collapsed"]
38
+ }
39
+ ],
40
+ "presets": [
41
+ {
42
+ "name": "Default",
43
+ "props": {},
44
+ "children": "Expandable content goes here."
45
+ },
46
+ {
47
+ "name": "Expanded",
48
+ "props": { "collapsed": false },
49
+ "children": "This content is visible initially."
50
+ },
51
+ {
52
+ "name": "Custom icon",
53
+ "props": { "icon": "plus", "iconColor": "link" },
54
+ "children": "Custom icon and color."
55
+ }
56
+ ],
57
+ "conditionals": {},
58
+ "hints": {
59
+ "expanded_state": {
60
+ "when": { "collapsed": false },
61
+ "message": "Set collapsed to false to render as open on first render. Use useCollapsible hook or state to control this for complex UI.",
62
+ "type": "info"
63
+ }
64
+ }
65
+ }
@@ -0,0 +1,69 @@
1
+ {
2
+ "template": "<Contact{{props}} />",
3
+ "propTargets": {},
4
+ "defaults": {
5
+ "iconEnabled": true,
6
+ "unstyled": false,
7
+ "contactType": "email",
8
+ "contactValue": "anna.black@example.com"
9
+ },
10
+ "groups": [
11
+ {
12
+ "name": "Contact Info",
13
+ "props": [
14
+ "contactType",
15
+ "contactValue",
16
+ "contactDetail"
17
+ ]
18
+ },
19
+ {
20
+ "name": "Appearance",
21
+ "props": [
22
+ "iconEnabled",
23
+ "unstyled"
24
+ ]
25
+ }
26
+ ],
27
+ "presets": [
28
+ {
29
+ "name": "Email",
30
+ "props": {
31
+ "contactType": "email",
32
+ "contactValue": "anna.black@example.com"
33
+ }
34
+ },
35
+ {
36
+ "name": "Cell with detail",
37
+ "props": {
38
+ "contactType": "cell",
39
+ "contactValue": "2155550100",
40
+ "contactDetail": "mobile"
41
+ }
42
+ },
43
+ {
44
+ "name": "Work phone",
45
+ "props": {
46
+ "contactType": "work",
47
+ "contactValue": "2155550199"
48
+ }
49
+ },
50
+ {
51
+ "name": "Unstyled",
52
+ "props": {
53
+ "contactType": "email",
54
+ "contactValue": "anna.black@example.com",
55
+ "unstyled": true
56
+ }
57
+ },
58
+ {
59
+ "name": "No icon",
60
+ "props": {
61
+ "contactType": "cell",
62
+ "contactValue": "2155550100",
63
+ "iconEnabled": false
64
+ }
65
+ }
66
+ ],
67
+ "conditionals": {},
68
+ "hints": {}
69
+ }
@@ -0,0 +1,60 @@
1
+ {
2
+ "defaults": {
3
+ "contactType": "email",
4
+ "contactValue": "anna.black@example.com",
5
+ "iconEnabled": true,
6
+ "unstyled": false
7
+ },
8
+ "groups": [
9
+ {
10
+ "name": "Contact Info",
11
+ "props": ["contactType", "contactValue", "contactDetail"]
12
+ },
13
+ {
14
+ "name": "Appearance",
15
+ "props": ["iconEnabled", "unstyled"]
16
+ }
17
+ ],
18
+ "presets": [
19
+ {
20
+ "name": "Email",
21
+ "props": {
22
+ "contactType": "email",
23
+ "contactValue": "anna.black@example.com"
24
+ }
25
+ },
26
+ {
27
+ "name": "Cell with detail",
28
+ "props": {
29
+ "contactType": "cell",
30
+ "contactValue": "2155550100",
31
+ "contactDetail": "mobile"
32
+ }
33
+ },
34
+ {
35
+ "name": "Work phone",
36
+ "props": {
37
+ "contactType": "work",
38
+ "contactValue": "2155550199"
39
+ }
40
+ },
41
+ {
42
+ "name": "Unstyled",
43
+ "props": {
44
+ "contactType": "email",
45
+ "contactValue": "anna.black@example.com",
46
+ "unstyled": true
47
+ }
48
+ },
49
+ {
50
+ "name": "No icon",
51
+ "props": {
52
+ "contactType": "cell",
53
+ "contactValue": "2155550100",
54
+ "iconEnabled": false
55
+ }
56
+ }
57
+ ],
58
+ "conditionals": {},
59
+ "hints": {}
60
+ }
@@ -0,0 +1,120 @@
1
+ {
2
+ "template": "<CopyButton{{props}} />",
3
+ "propTargets": {},
4
+ "defaults": {
5
+ "tooltipText": "Copied!",
6
+ "variant": "icon",
7
+ "value": "Boo from Ghost Crew!"
8
+ },
9
+ "groups": [
10
+ {
11
+ "name": "Tooltip",
12
+ "props": [
13
+ "tooltipPlacement",
14
+ "tooltipText"
15
+ ]
16
+ },
17
+ {
18
+ "name": "Copy configs",
19
+ "props": [
20
+ "value",
21
+ "from"
22
+ ]
23
+ },
24
+ {
25
+ "name": "Appearance",
26
+ "props": [
27
+ "variant",
28
+ "timeout"
29
+ ]
30
+ }
31
+ ],
32
+ "presets": [
33
+ {
34
+ "name": "Default",
35
+ "props": {
36
+ "tooltipText": "Copied!",
37
+ "value": "Boo from Ghost Crew!"
38
+ }
39
+ },
40
+ {
41
+ "name": "Button variant",
42
+ "structureMode": "with_textarea",
43
+ "props": {
44
+ "variant": "button"
45
+ }
46
+ },
47
+ {
48
+ "name": "Copy from body",
49
+ "structureMode": "copy_from_body",
50
+ "props": {
51
+ "from": "body",
52
+ "marginBottom": "sm",
53
+ "text": "Copy Body text",
54
+ "tooltipPlacement": "right",
55
+ "tooltipText": "Body text copied!",
56
+ "variant": "button",
57
+ "value": ""
58
+ }
59
+ },
60
+ {
61
+ "name": "With Hook",
62
+ "props": {},
63
+ "structureMode": "use_pbcopy_hook"
64
+ }
65
+ ],
66
+ "conditionals": {},
67
+ "hints": {
68
+ "default_preset_info": {
69
+ "presetName": "Default",
70
+ "message": "Use CopyButton + paste area for the kit. Switch structure to usePBCopy hook for the docs example (Body + Tooltip + Textarea, copy via from: hookbody).",
71
+ "type": "info"
72
+ },
73
+ "copy_configs_info": {
74
+ "presetName": "Copy from body",
75
+ "message": "Body has id=\"body\"; CopyButton uses from=\"body\" to copy that element’s text (value is cleared so from is used).",
76
+ "type": "info"
77
+ },
78
+ "hook_info": {
79
+ "presetName": "With Hook",
80
+ "message": "Use the usePBCopy hook to copy text to the clipboard. This is a headless hook that you can use to copy text to the clipboard. It returns a boolean value that indicates if the text has been copied and a function to copy the text.",
81
+ "type": "info"
82
+ }
83
+ },
84
+ "structureModes": {
85
+ "default": "with_textarea",
86
+ "modes": {
87
+ "with_textarea": {
88
+ "label": "CopyButton + paste area",
89
+ "template": "<Flex flexDirection=\"column\" gap=\"sm\"><CopyButton{{props}} /><Textarea marginTop=\"sm\" placeholder=\"Paste copied text here\" rows={3} /></Flex>",
90
+ "children": "",
91
+ "imports": [
92
+ "Flex",
93
+ "Textarea"
94
+ ]
95
+ },
96
+ "copy_from_body": {
97
+ "label": "Copy from element (from)",
98
+ "template": "<Flex flexDirection=\"column\" gap=\"sm\"><Body id=\"body\">Copy this body text!</Body><CopyButton{{props}} /><Textarea marginTop=\"sm\" placeholder=\"Paste copied text here\" rows={3} /></Flex>",
99
+ "children": "",
100
+ "imports": [
101
+ "Flex",
102
+ "Body",
103
+ "Textarea"
104
+ ]
105
+ },
106
+ "use_pbcopy_hook": {
107
+ "label": "usePBCopy hook",
108
+ "template": "<></>",
109
+ "children": "",
110
+ "imports": [
111
+ "usePBCopy",
112
+ "Tooltip",
113
+ "Body",
114
+ "Textarea"
115
+ ],
116
+ "wrapper": "const CopyButtonHook = ({...props}) => {\n // This is how you can use the copy button hook to copy text to the clipboard\n // eslint-disable-next-line no-unused-vars\n const [copied, copyToClipboard] = usePBCopy({ from: 'hookbody' })\n // I added a tooltip so it looks better in the ui\n const [showTooltip, setShowTooltip] = useState(false)\n\n const handleCopy = () => {\n copyToClipboard()\n setShowTooltip(true)\n setTimeout(() => setShowTooltip(false), 1500)\n }\n\n useEffect(() => {\n const el = document.getElementById('hookbody')\n if (!el) return\n\n el.addEventListener('click', handleCopy)\n return () => {\n el.removeEventListener('click', handleCopy)\n }\n }, [copyToClipboard])\n\n return (\n <div>\n <Tooltip\n delay={{ close: 1000 }}\n forceOpenTooltip={showTooltip}\n placement=\"top\"\n showTooltip={false}\n text=\"Copied!\"\n >\n <Body\n cursor=\"pointer\"\n id=\"hookbody\"\n text=\"I'm a custom copy hook! Click this body to copy this text!\"\n />\n </Tooltip>\n\n <Textarea\n placeholder=\"Paste here\"\n />\n </div>\n )\n}"
117
+ }
118
+ }
119
+ }
120
+ }
@@ -0,0 +1,96 @@
1
+ {
2
+ "structureModes": {
3
+ "default": "with_textarea",
4
+ "modes": {
5
+ "with_textarea": {
6
+ "label": "CopyButton + paste area",
7
+ "template": "<Flex flexDirection=\"column\" gap=\"sm\"><CopyButton{{props}} /><Textarea marginTop=\"sm\" placeholder=\"Paste copied text here\" rows={3} /></Flex>",
8
+ "children": "",
9
+ "imports": ["Flex", "Textarea"]
10
+ },
11
+ "copy_from_body": {
12
+ "label": "Copy from element (from)",
13
+ "template": "<Flex flexDirection=\"column\" gap=\"sm\"><Body id=\"body\">Copy this body text!</Body><CopyButton{{props}} /><Textarea marginTop=\"sm\" placeholder=\"Paste copied text here\" rows={3} /></Flex>",
14
+ "children": "",
15
+ "imports": ["Flex", "Body", "Textarea"]
16
+ },
17
+ "use_pbcopy_hook": {
18
+ "label": "usePBCopy hook",
19
+ "template": "<></>",
20
+ "children": "",
21
+ "imports": ["usePBCopy", "Tooltip", "Body", "Textarea"],
22
+ "wrapper": "const CopyButtonHook = ({...props}) => {\n // This is how you can use the copy button hook to copy text to the clipboard\n // eslint-disable-next-line no-unused-vars\n const [copied, copyToClipboard] = usePBCopy({ from: 'hookbody' })\n // I added a tooltip so it looks better in the ui\n const [showTooltip, setShowTooltip] = useState(false)\n\n const handleCopy = () => {\n copyToClipboard()\n setShowTooltip(true)\n setTimeout(() => setShowTooltip(false), 1500)\n }\n\n useEffect(() => {\n const el = document.getElementById('hookbody')\n if (!el) return\n\n el.addEventListener('click', handleCopy)\n return () => {\n el.removeEventListener('click', handleCopy)\n }\n }, [copyToClipboard])\n\n return (\n <div>\n <Tooltip\n delay={{ close: 1000 }}\n forceOpenTooltip={showTooltip}\n placement=\"top\"\n showTooltip={false}\n text=\"Copied!\"\n >\n <Body\n cursor=\"pointer\"\n id=\"hookbody\"\n text=\"I'm a custom copy hook! Click this body to copy this text!\"\n />\n </Tooltip>\n\n <Textarea\n placeholder=\"Paste here\"\n />\n </div>\n )\n}"
23
+ }
24
+ }
25
+ },
26
+ "defaults": {
27
+ "tooltipText": "Copied!",
28
+ "value": "Boo from Ghost Crew!"
29
+ },
30
+ "groups": [
31
+ {
32
+ "name": "Tooltip",
33
+ "props": ["tooltipPlacement", "tooltipText"]
34
+ },
35
+ {
36
+ "name": "Copy configs",
37
+ "props": ["value", "from"]
38
+ },
39
+ {
40
+ "name": "Appearance",
41
+ "props": ["variant", "timeout"]
42
+ }
43
+ ],
44
+ "presets": [
45
+ {
46
+ "name": "Default",
47
+ "props": {
48
+ "tooltipText": "Copied!",
49
+ "value": "Boo from Ghost Crew!"
50
+ }
51
+ },
52
+ {
53
+ "name": "Button variant",
54
+ "structureMode": "with_textarea",
55
+ "props": {
56
+ "variant": "button"
57
+ }
58
+ },
59
+ {
60
+ "name": "Copy from body",
61
+ "structureMode": "copy_from_body",
62
+ "props": {
63
+ "from": "body",
64
+ "marginBottom": "sm",
65
+ "text": "Copy Body text",
66
+ "tooltipPlacement": "right",
67
+ "tooltipText": "Body text copied!",
68
+ "variant": "button",
69
+ "value": ""
70
+ }
71
+ },
72
+ {
73
+ "name": "With Hook",
74
+ "props": {},
75
+ "structureMode": "use_pbcopy_hook"
76
+ }
77
+ ],
78
+ "conditionals": {},
79
+ "hints": {
80
+ "default_preset_info": {
81
+ "presetName": "Default",
82
+ "message": "Use CopyButton + paste area for the kit. Switch structure to usePBCopy hook for the docs example (Body + Tooltip + Textarea, copy via from: hookbody).",
83
+ "type": "info"
84
+ },
85
+ "copy_configs_info": {
86
+ "presetName": "Copy from body",
87
+ "message": "Body has id=\"body\"; CopyButton uses from=\"body\" to copy that element’s text (value is cleared so from is used).",
88
+ "type": "info"
89
+ },
90
+ "hook_info": {
91
+ "presetName": "With Hook",
92
+ "message": "Use the usePBCopy hook to copy text to the clipboard. This is a headless hook that you can use to copy text to the clipboard. It returns a boolean value that indicates if the text has been copied and a function to copy the text.",
93
+ "type": "info"
94
+ }
95
+ }
96
+ }