primer_view_components 0.0.116 → 0.0.118

Sign up to get free protection for your applications and to get access to all the features.
Files changed (162) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +52 -0
  3. data/app/assets/javascripts/primer_view_components.js +1 -1
  4. data/app/assets/javascripts/primer_view_components.js.map +1 -1
  5. data/app/assets/styles/primer_view_components.css +2 -2
  6. data/app/assets/styles/primer_view_components.css.map +1 -1
  7. data/app/components/primer/alpha/action_list/item.rb +2 -2
  8. data/app/components/primer/alpha/action_list.css +1 -1
  9. data/app/components/primer/alpha/action_list.css.json +1 -1
  10. data/app/components/primer/alpha/action_list.css.map +1 -1
  11. data/app/components/primer/alpha/auto_complete/item.rb +4 -4
  12. data/app/components/primer/alpha/auto_complete.rb +6 -6
  13. data/app/components/primer/alpha/dialog.rb +4 -5
  14. data/app/components/primer/alpha/dropdown.rb +53 -53
  15. data/app/components/primer/alpha/hellip_button.rb +41 -0
  16. data/app/components/primer/alpha/hidden_text_expander.rb +1 -1
  17. data/app/components/primer/alpha/layout.rb +48 -48
  18. data/app/components/primer/alpha/menu.css +1 -1
  19. data/app/components/primer/alpha/menu.css.json +1 -1
  20. data/app/components/primer/alpha/menu.css.map +1 -1
  21. data/app/components/primer/alpha/menu.rb +5 -5
  22. data/app/components/primer/alpha/modal_dialog.js +24 -12
  23. data/app/components/primer/alpha/modal_dialog.ts +29 -15
  24. data/app/components/primer/alpha/segmented_control.rb +20 -20
  25. data/app/components/primer/{tab_container_component.d.ts → alpha/tab_container.d.ts} +0 -0
  26. data/app/components/primer/{tab_container_component.js → alpha/tab_container.js} +0 -0
  27. data/app/components/primer/alpha/tab_container.rb +43 -0
  28. data/app/components/primer/{tab_container_component.ts → alpha/tab_container.ts} +0 -0
  29. data/app/components/primer/alpha/tab_nav.css +1 -1
  30. data/app/components/primer/alpha/tab_nav.css.json +1 -1
  31. data/app/components/primer/alpha/tab_nav.css.map +1 -1
  32. data/app/components/primer/alpha/tab_nav.rb +32 -32
  33. data/app/components/primer/alpha/tool_tip.js +3 -7
  34. data/app/components/primer/alpha/tool_tip.ts +3 -7
  35. data/app/components/primer/alpha/tooltip.rb +18 -18
  36. data/app/components/primer/alpha/underline_nav.css +1 -1
  37. data/app/components/primer/alpha/underline_nav.css.json +1 -1
  38. data/app/components/primer/alpha/underline_nav.css.map +1 -1
  39. data/app/components/primer/alpha/underline_nav.rb +18 -18
  40. data/app/components/primer/beta/auto_complete/item.rb +2 -3
  41. data/app/components/primer/beta/auto_complete.rb +14 -16
  42. data/app/components/primer/beta/avatar_stack.rb +12 -14
  43. data/app/components/primer/beta/blankslate.rb +0 -1
  44. data/app/components/primer/beta/border_box/header.rb +0 -2
  45. data/app/components/primer/beta/border_box.rb +0 -2
  46. data/app/components/primer/beta/breadcrumbs.css +1 -1
  47. data/app/components/primer/beta/breadcrumbs.css.json +1 -1
  48. data/app/components/primer/beta/breadcrumbs.css.map +1 -1
  49. data/app/components/primer/beta/breadcrumbs.rb +0 -1
  50. data/app/components/primer/beta/button.css +1 -1
  51. data/app/components/primer/beta/button.css.map +1 -1
  52. data/app/components/primer/beta/button.pcss +1 -1
  53. data/app/components/primer/beta/button.rb +9 -10
  54. data/app/components/primer/beta/button_group.rb +0 -1
  55. data/app/components/primer/beta/details.rb +0 -1
  56. data/app/components/primer/beta/flash.rb +0 -1
  57. data/app/components/primer/beta/link.rb +2 -3
  58. data/app/components/primer/beta/octicon.rb +0 -1
  59. data/app/components/primer/beta/popover.rb +0 -1
  60. data/app/components/primer/beta/relative_time.rb +6 -0
  61. data/app/components/primer/{state_component.css → beta/state.css} +0 -0
  62. data/app/components/primer/beta/state.css.json +1 -0
  63. data/app/components/primer/beta/state.css.map +1 -0
  64. data/app/components/primer/{state_component.pcss → beta/state.pcss} +0 -0
  65. data/app/components/primer/beta/state.rb +76 -0
  66. data/app/components/primer/{subhead_component.css → beta/subhead.css} +0 -0
  67. data/app/components/primer/beta/subhead.css.json +1 -0
  68. data/app/components/primer/beta/subhead.css.map +1 -0
  69. data/app/components/primer/{subhead_component.html.erb → beta/subhead.html.erb} +0 -0
  70. data/app/components/primer/{subhead_component.pcss → beta/subhead.pcss} +0 -0
  71. data/app/components/primer/beta/subhead.rb +135 -0
  72. data/app/components/primer/{timeline_item_component.css → beta/timeline_item.css} +0 -0
  73. data/app/components/primer/beta/timeline_item.css.json +1 -0
  74. data/app/components/primer/beta/timeline_item.css.map +1 -0
  75. data/app/components/primer/{timeline_item_component.html.erb → beta/timeline_item.html.erb} +0 -0
  76. data/app/components/primer/{timeline_item_component.pcss → beta/timeline_item.pcss} +0 -0
  77. data/app/components/primer/beta/timeline_item.rb +90 -0
  78. data/app/components/primer/beta/truncate.css +1 -1
  79. data/app/components/primer/beta/truncate.css.json +1 -1
  80. data/app/components/primer/beta/truncate.css.map +1 -1
  81. data/app/components/primer/beta/truncate.rb +0 -1
  82. data/app/components/primer/button_component.rb +9 -9
  83. data/app/components/primer/component.rb +0 -1
  84. data/app/components/primer/hellip_button.rb +2 -34
  85. data/app/components/primer/navigation/tab_component.rb +16 -16
  86. data/app/components/primer/primer.d.ts +1 -1
  87. data/app/components/primer/primer.js +1 -1
  88. data/app/components/primer/primer.pcss +3 -3
  89. data/app/components/primer/primer.ts +1 -1
  90. data/app/components/primer/state_component.rb +2 -69
  91. data/app/components/primer/subhead_component.rb +2 -128
  92. data/app/components/primer/tab_container_component.rb +2 -36
  93. data/app/components/primer/timeline_item_component.rb +5 -78
  94. data/app/forms/example_toggle_switch_form/example_field_caption.html.erb +1 -0
  95. data/app/forms/example_toggle_switch_form.rb +8 -0
  96. data/app/forms/submit_button_form.rb +4 -4
  97. data/app/lib/primer/tabbed_component_helper.rb +1 -1
  98. data/lib/primer/deprecations.rb +7 -13
  99. data/lib/primer/deprecations.yml +24 -0
  100. data/lib/primer/forms/button.html.erb +2 -2
  101. data/lib/primer/forms/dsl/toggle_switch_input.rb +35 -0
  102. data/lib/primer/forms/toggle_switch.html.erb +17 -0
  103. data/lib/primer/forms/toggle_switch.rb +19 -0
  104. data/lib/primer/forms/toggle_switch_form.rb +74 -0
  105. data/lib/primer/view_components/linters/subhead_component_migration_counter.rb +1 -1
  106. data/lib/primer/view_components/version.rb +1 -1
  107. data/lib/rubocop/cop/primer/component_name_migration.rb +2 -1
  108. data/lib/tasks/docs.rake +7 -7
  109. data/previews/primer/alpha/action_list_preview.rb +44 -44
  110. data/previews/primer/alpha/dialog_preview/with_text_input.html.erb +10 -0
  111. data/previews/primer/alpha/dialog_preview.rb +15 -0
  112. data/previews/primer/alpha/dropdown_preview.rb +97 -97
  113. data/previews/primer/alpha/hellip_button_preview.rb +24 -0
  114. data/previews/primer/alpha/layout_preview.rb +63 -63
  115. data/previews/primer/alpha/menu_preview/default.html.erb +5 -5
  116. data/previews/primer/alpha/menu_preview/playground.html.erb +5 -5
  117. data/previews/primer/alpha/segmented_control_preview.rb +60 -60
  118. data/previews/primer/alpha/tab_nav_preview.rb +22 -22
  119. data/previews/primer/alpha/tab_panels_preview.rb +2 -2
  120. data/previews/primer/alpha/tooltip_preview/with_multiple_on_a_page.html.erb +6 -6
  121. data/previews/primer/alpha/tooltip_preview.rb +12 -12
  122. data/previews/primer/alpha/underline_nav_preview.rb +4 -4
  123. data/previews/primer/alpha/underline_panels_preview.rb +8 -8
  124. data/previews/primer/beta/auto_complete_item_preview/default.html.erb +2 -2
  125. data/previews/primer/beta/auto_complete_item_preview/playground.html.erb +2 -2
  126. data/previews/primer/beta/auto_complete_item_preview/with_description.html.erb +3 -3
  127. data/previews/primer/beta/auto_complete_preview/with_submit_button.html.erb +2 -2
  128. data/previews/primer/beta/auto_complete_preview.rb +18 -18
  129. data/previews/primer/beta/avatar_stack_preview.rb +32 -32
  130. data/previews/primer/beta/blankslate_preview.rb +40 -40
  131. data/previews/primer/beta/border_box_preview.rb +38 -38
  132. data/previews/primer/beta/breadcrumbs_preview.rb +2 -2
  133. data/previews/primer/beta/button_group_preview.rb +10 -10
  134. data/previews/primer/beta/button_preview/all_schemes.html.erb +4 -4
  135. data/previews/primer/beta/button_preview/invisible_all_visuals.html.erb +16 -16
  136. data/previews/primer/beta/button_preview/leading_visual.html.erb +2 -2
  137. data/previews/primer/beta/button_preview/trailing_action.html.erb +2 -2
  138. data/previews/primer/beta/button_preview/trailing_visual.html.erb +2 -2
  139. data/previews/primer/beta/button_preview/with_tooltip.html.erb +2 -2
  140. data/previews/primer/beta/details_preview.rb +6 -6
  141. data/previews/primer/beta/relative_time_preview.rb +15 -0
  142. data/previews/primer/beta/state_preview.rb +66 -0
  143. data/previews/primer/beta/subhead_preview/actions.html.erb +14 -0
  144. data/previews/primer/beta/subhead_preview.rb +99 -0
  145. data/previews/primer/beta/timeline_item_preview.rb +30 -0
  146. data/previews/primer/forms/forms_preview/example_toggle_switch_form.html.erb +1 -0
  147. data/previews/primer/forms/forms_preview.rb +2 -0
  148. data/static/arguments.json +189 -183
  149. data/static/audited_at.json +6 -0
  150. data/static/constants.json +78 -56
  151. data/static/statuses.json +12 -6
  152. metadata +39 -25
  153. data/app/components/primer/state_component.css.json +0 -1
  154. data/app/components/primer/state_component.css.map +0 -1
  155. data/app/components/primer/subhead_component.css.json +0 -1
  156. data/app/components/primer/subhead_component.css.map +0 -1
  157. data/app/components/primer/timeline_item_component.css.json +0 -1
  158. data/app/components/primer/timeline_item_component.css.map +0 -1
  159. data/previews/primer/hellip_button_preview.rb +0 -22
  160. data/previews/primer/state_component_preview.rb +0 -26
  161. data/previews/primer/subhead_component_preview.rb +0 -40
  162. data/previews/primer/timeline_item_component_preview.rb +0 -28
@@ -14,6 +14,7 @@
14
14
  "Primer::Alpha::Dropdown": "",
15
15
  "Primer::Alpha::Dropdown::Menu": "",
16
16
  "Primer::Alpha::Dropdown::Menu::Item": "",
17
+ "Primer::Alpha::HellipButton": "",
17
18
  "Primer::Alpha::HiddenTextExpander": "",
18
19
  "Primer::Alpha::Image": "",
19
20
  "Primer::Alpha::ImageCrop": "",
@@ -27,6 +28,7 @@
27
28
  "Primer::Alpha::OcticonSymbols": "",
28
29
  "Primer::Alpha::SegmentedControl": "",
29
30
  "Primer::Alpha::SegmentedControl::Item": "",
31
+ "Primer::Alpha::TabContainer": "",
30
32
  "Primer::Alpha::TabNav": "",
31
33
  "Primer::Alpha::TabPanels": "",
32
34
  "Primer::Alpha::TextField": "",
@@ -62,7 +64,11 @@
62
64
  "Primer::Beta::ProgressBar": "",
63
65
  "Primer::Beta::RelativeTime": "",
64
66
  "Primer::Beta::Spinner": "",
67
+ "Primer::Beta::State": "",
68
+ "Primer::Beta::Subhead": "",
65
69
  "Primer::Beta::Text": "",
70
+ "Primer::Beta::TimelineItem": "",
71
+ "Primer::Beta::TimelineItem::Badge": "",
66
72
  "Primer::Beta::Truncate": "",
67
73
  "Primer::Beta::Truncate::TruncateText": "",
68
74
  "Primer::BlankslateComponent": "",
@@ -163,14 +163,16 @@
163
163
  "medium_portrait": "Overlay--size-medium-portrait",
164
164
  "medium": "Overlay--size-medium",
165
165
  "large": "Overlay--size-large",
166
- "xlarge": "Overlay--size-xlarge"
166
+ "xlarge": "Overlay--size-xlarge",
167
+ "auto": "Overlay--size-auto"
167
168
  },
168
169
  "SIZE_OPTIONS": [
169
170
  "small",
170
171
  "medium_portrait",
171
172
  "medium",
172
173
  "large",
173
- "xlarge"
174
+ "xlarge",
175
+ "auto"
174
176
  ]
175
177
  },
176
178
  "Primer::Alpha::Dialog::Body": {
@@ -216,6 +218,8 @@
216
218
  "summary"
217
219
  ]
218
220
  },
221
+ "Primer::Alpha::HellipButton": {
222
+ },
219
223
  "Primer::Alpha::HiddenTextExpander": {
220
224
  },
221
225
  "Primer::Alpha::Image": {
@@ -328,6 +332,8 @@
328
332
  },
329
333
  "Primer::Alpha::SegmentedControl::Item": {
330
334
  },
335
+ "Primer::Alpha::TabContainer": {
336
+ },
331
337
  "Primer::Alpha::TabNav": {
332
338
  "BODY_TAG_DEFAULT": "ul",
333
339
  "TAG_DEFAULT": "nav",
@@ -794,6 +800,13 @@
794
800
  "micro",
795
801
  "elapsed"
796
802
  ],
803
+ "FORMAT_STYLE_DEFAULT": null,
804
+ "FORMAT_STYLE_OPTIONS": [
805
+ null,
806
+ "long",
807
+ "short",
808
+ "narrow"
809
+ ],
797
810
  "HOUR_DEFAULT": null,
798
811
  "HOUR_MAPPINGS": {
799
812
  "": null,
@@ -912,9 +925,72 @@
912
925
  "large"
913
926
  ]
914
927
  },
928
+ "Primer::Beta::State": {
929
+ "DEPRECATED_SCHEME_MAPPINGS": {
930
+ "default": "",
931
+ "green": "State--open",
932
+ "red": "State--closed",
933
+ "purple": "State--merged"
934
+ },
935
+ "NEW_SCHEME_MAPPINGS": {
936
+ "open": "State--open",
937
+ "closed": "State--closed",
938
+ "merged": "State--merged"
939
+ },
940
+ "SCHEME_DEFAULT": "default",
941
+ "SCHEME_MAPPINGS": {
942
+ "open": "State--open",
943
+ "closed": "State--closed",
944
+ "merged": "State--merged",
945
+ "default": "",
946
+ "green": "State--open",
947
+ "red": "State--closed",
948
+ "purple": "State--merged"
949
+ },
950
+ "SCHEME_OPTIONS": [
951
+ "open",
952
+ "closed",
953
+ "merged",
954
+ "default",
955
+ "green",
956
+ "red",
957
+ "purple"
958
+ ],
959
+ "SIZE_DEFAULT": "default",
960
+ "SIZE_MAPPINGS": {
961
+ "default": "",
962
+ "small": "State--small"
963
+ },
964
+ "SIZE_OPTIONS": [
965
+ "default",
966
+ "small"
967
+ ],
968
+ "TAG_DEFAULT": "span",
969
+ "TAG_OPTIONS": [
970
+ "span",
971
+ "div"
972
+ ]
973
+ },
974
+ "Primer::Beta::Subhead": {
975
+ "DEFAULT_HEADING_TAG": "div",
976
+ "HEADING_TAG_OPTIONS": [
977
+ "div",
978
+ "h1",
979
+ "h2",
980
+ "h3",
981
+ "h4",
982
+ "h5",
983
+ "h6"
984
+ ]
985
+ },
915
986
  "Primer::Beta::Text": {
916
987
  "DEFAULT_TAG": "span"
917
988
  },
989
+ "Primer::Beta::TimelineItem": {
990
+ "Badge": "Primer::Beta::TimelineItem::Badge"
991
+ },
992
+ "Primer::Beta::TimelineItem::Badge": {
993
+ },
918
994
  "Primer::Beta::Truncate": {
919
995
  "TruncateText": "Primer::Beta::Truncate::TruncateText"
920
996
  },
@@ -1056,62 +1132,8 @@
1056
1132
  "Primer::SpinnerComponent": {
1057
1133
  },
1058
1134
  "Primer::StateComponent": {
1059
- "DEPRECATED_SCHEME_MAPPINGS": {
1060
- "default": "",
1061
- "green": "State--open",
1062
- "red": "State--closed",
1063
- "purple": "State--merged"
1064
- },
1065
- "NEW_SCHEME_MAPPINGS": {
1066
- "open": "State--open",
1067
- "closed": "State--closed",
1068
- "merged": "State--merged"
1069
- },
1070
- "SCHEME_DEFAULT": "default",
1071
- "SCHEME_MAPPINGS": {
1072
- "open": "State--open",
1073
- "closed": "State--closed",
1074
- "merged": "State--merged",
1075
- "default": "",
1076
- "green": "State--open",
1077
- "red": "State--closed",
1078
- "purple": "State--merged"
1079
- },
1080
- "SCHEME_OPTIONS": [
1081
- "open",
1082
- "closed",
1083
- "merged",
1084
- "default",
1085
- "green",
1086
- "red",
1087
- "purple"
1088
- ],
1089
- "SIZE_DEFAULT": "default",
1090
- "SIZE_MAPPINGS": {
1091
- "default": "",
1092
- "small": "State--small"
1093
- },
1094
- "SIZE_OPTIONS": [
1095
- "default",
1096
- "small"
1097
- ],
1098
- "TAG_DEFAULT": "span",
1099
- "TAG_OPTIONS": [
1100
- "span",
1101
- "div"
1102
- ]
1103
1135
  },
1104
1136
  "Primer::SubheadComponent": {
1105
- "DEFAULT_HEADING_TAG": "div",
1106
- "HEADING_TAG_OPTIONS": [
1107
- "div",
1108
- "h1",
1109
- "h2",
1110
- "h3",
1111
- "h4",
1112
- "h5",
1113
- "h6"
1114
- ]
1115
1137
  },
1116
1138
  "Primer::TabContainerComponent": {
1117
1139
  },
data/static/statuses.json CHANGED
@@ -14,6 +14,7 @@
14
14
  "Primer::Alpha::Dropdown": "alpha",
15
15
  "Primer::Alpha::Dropdown::Menu": "alpha",
16
16
  "Primer::Alpha::Dropdown::Menu::Item": "alpha",
17
+ "Primer::Alpha::HellipButton": "alpha",
17
18
  "Primer::Alpha::HiddenTextExpander": "alpha",
18
19
  "Primer::Alpha::Image": "alpha",
19
20
  "Primer::Alpha::ImageCrop": "alpha",
@@ -27,6 +28,7 @@
27
28
  "Primer::Alpha::OcticonSymbols": "alpha",
28
29
  "Primer::Alpha::SegmentedControl": "alpha",
29
30
  "Primer::Alpha::SegmentedControl::Item": "alpha",
31
+ "Primer::Alpha::TabContainer": "alpha",
30
32
  "Primer::Alpha::TabNav": "alpha",
31
33
  "Primer::Alpha::TabPanels": "alpha",
32
34
  "Primer::Alpha::TextField": "alpha",
@@ -62,7 +64,11 @@
62
64
  "Primer::Beta::ProgressBar": "beta",
63
65
  "Primer::Beta::RelativeTime": "beta",
64
66
  "Primer::Beta::Spinner": "beta",
67
+ "Primer::Beta::State": "beta",
68
+ "Primer::Beta::Subhead": "beta",
65
69
  "Primer::Beta::Text": "beta",
70
+ "Primer::Beta::TimelineItem": "beta",
71
+ "Primer::Beta::TimelineItem::Badge": "beta",
66
72
  "Primer::Beta::Truncate": "beta",
67
73
  "Primer::Beta::Truncate::TruncateText": "alpha",
68
74
  "Primer::BlankslateComponent": "deprecated",
@@ -76,7 +82,7 @@
76
82
  "Primer::Dropdown::Menu": "deprecated",
77
83
  "Primer::Dropdown::Menu::Item": "deprecated",
78
84
  "Primer::DropdownMenuComponent": "deprecated",
79
- "Primer::HellipButton": "alpha",
85
+ "Primer::HellipButton": "deprecated",
80
86
  "Primer::IconButton": "deprecated",
81
87
  "Primer::LabelComponent": "deprecated",
82
88
  "Primer::LayoutComponent": "alpha",
@@ -89,12 +95,12 @@
89
95
  "Primer::OcticonSymbolsComponent": "deprecated",
90
96
  "Primer::PopoverComponent": "deprecated",
91
97
  "Primer::SpinnerComponent": "deprecated",
92
- "Primer::StateComponent": "beta",
93
- "Primer::SubheadComponent": "beta",
94
- "Primer::TabContainerComponent": "alpha",
98
+ "Primer::StateComponent": "deprecated",
99
+ "Primer::SubheadComponent": "deprecated",
100
+ "Primer::TabContainerComponent": "deprecated",
95
101
  "Primer::TimeAgoComponent": "deprecated",
96
- "Primer::TimelineItemComponent": "beta",
97
- "Primer::TimelineItemComponent::BadgeComponent": "alpha",
102
+ "Primer::TimelineItemComponent": "deprecated",
103
+ "Primer::TimelineItemComponent::BadgeComponent": "deprecated",
98
104
  "Primer::Tooltip": "deprecated",
99
105
  "Primer::Truncate": "beta"
100
106
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: primer_view_components
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.116
4
+ version: 0.0.118
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitHub Open Source
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-15 00:00:00.000000000 Z
11
+ date: 2023-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actionview
@@ -58,7 +58,7 @@ dependencies:
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: 2.57.0
61
+ version: 2.81.0
62
62
  - - "<"
63
63
  - !ruby/object:Gem::Version
64
64
  version: '3.0'
@@ -68,7 +68,7 @@ dependencies:
68
68
  requirements:
69
69
  - - ">="
70
70
  - !ruby/object:Gem::Version
71
- version: 2.57.0
71
+ version: 2.81.0
72
72
  - - "<"
73
73
  - !ruby/object:Gem::Version
74
74
  version: '3.0'
@@ -461,6 +461,7 @@ files:
461
461
  - app/components/primer/alpha/dropdown/menu.js
462
462
  - app/components/primer/alpha/dropdown/menu.rb
463
463
  - app/components/primer/alpha/dropdown/menu.ts
464
+ - app/components/primer/alpha/hellip_button.rb
464
465
  - app/components/primer/alpha/hidden_text_expander.rb
465
466
  - app/components/primer/alpha/image.rb
466
467
  - app/components/primer/alpha/image_crop.d.ts
@@ -505,6 +506,10 @@ files:
505
506
  - app/components/primer/alpha/segmented_control.ts
506
507
  - app/components/primer/alpha/segmented_control/item.html.erb
507
508
  - app/components/primer/alpha/segmented_control/item.rb
509
+ - app/components/primer/alpha/tab_container.d.ts
510
+ - app/components/primer/alpha/tab_container.js
511
+ - app/components/primer/alpha/tab_container.rb
512
+ - app/components/primer/alpha/tab_container.ts
508
513
  - app/components/primer/alpha/tab_nav.css
509
514
  - app/components/primer/alpha/tab_nav.css.json
510
515
  - app/components/primer/alpha/tab_nav.css.map
@@ -640,7 +645,24 @@ files:
640
645
  - app/components/primer/beta/relative_time.rb
641
646
  - app/components/primer/beta/spinner.html.erb
642
647
  - app/components/primer/beta/spinner.rb
648
+ - app/components/primer/beta/state.css
649
+ - app/components/primer/beta/state.css.json
650
+ - app/components/primer/beta/state.css.map
651
+ - app/components/primer/beta/state.pcss
652
+ - app/components/primer/beta/state.rb
653
+ - app/components/primer/beta/subhead.css
654
+ - app/components/primer/beta/subhead.css.json
655
+ - app/components/primer/beta/subhead.css.map
656
+ - app/components/primer/beta/subhead.html.erb
657
+ - app/components/primer/beta/subhead.pcss
658
+ - app/components/primer/beta/subhead.rb
643
659
  - app/components/primer/beta/text.rb
660
+ - app/components/primer/beta/timeline_item.css
661
+ - app/components/primer/beta/timeline_item.css.json
662
+ - app/components/primer/beta/timeline_item.css.map
663
+ - app/components/primer/beta/timeline_item.html.erb
664
+ - app/components/primer/beta/timeline_item.pcss
665
+ - app/components/primer/beta/timeline_item.rb
644
666
  - app/components/primer/beta/truncate.css
645
667
  - app/components/primer/beta/truncate.css.json
646
668
  - app/components/primer/beta/truncate.css.map
@@ -684,30 +706,13 @@ files:
684
706
  - app/components/primer/primer.pcss
685
707
  - app/components/primer/primer.ts
686
708
  - app/components/primer/spinner_component.rb
687
- - app/components/primer/state_component.css
688
- - app/components/primer/state_component.css.json
689
- - app/components/primer/state_component.css.map
690
- - app/components/primer/state_component.pcss
691
709
  - app/components/primer/state_component.rb
692
- - app/components/primer/subhead_component.css
693
- - app/components/primer/subhead_component.css.json
694
- - app/components/primer/subhead_component.css.map
695
- - app/components/primer/subhead_component.html.erb
696
- - app/components/primer/subhead_component.pcss
697
710
  - app/components/primer/subhead_component.rb
698
- - app/components/primer/tab_container_component.d.ts
699
- - app/components/primer/tab_container_component.js
700
711
  - app/components/primer/tab_container_component.rb
701
- - app/components/primer/tab_container_component.ts
702
712
  - app/components/primer/time_ago_component.d.ts
703
713
  - app/components/primer/time_ago_component.js
704
714
  - app/components/primer/time_ago_component.rb
705
715
  - app/components/primer/time_ago_component.ts
706
- - app/components/primer/timeline_item_component.css
707
- - app/components/primer/timeline_item_component.css.json
708
- - app/components/primer/timeline_item_component.css.map
709
- - app/components/primer/timeline_item_component.html.erb
710
- - app/components/primer/timeline_item_component.pcss
711
716
  - app/components/primer/timeline_item_component.rb
712
717
  - app/components/primer/tooltip.rb
713
718
  - app/components/primer/truncate.css
@@ -730,6 +735,8 @@ files:
730
735
  - app/forms/check_box_group_form.rb
731
736
  - app/forms/check_box_with_nested_form.rb
732
737
  - app/forms/composed_form.rb
738
+ - app/forms/example_toggle_switch_form.rb
739
+ - app/forms/example_toggle_switch_form/example_field_caption.html.erb
733
740
  - app/forms/first_name_form.rb
734
741
  - app/forms/horizontal_form.rb
735
742
  - app/forms/immediate_validation_form.rb
@@ -806,6 +813,7 @@ files:
806
813
  - lib/primer/forms/dsl/submit_button_input.rb
807
814
  - lib/primer/forms/dsl/text_area_input.rb
808
815
  - lib/primer/forms/dsl/text_field_input.rb
816
+ - lib/primer/forms/dsl/toggle_switch_input.rb
809
817
  - lib/primer/forms/form_control.html.erb
810
818
  - lib/primer/forms/form_control.rb
811
819
  - lib/primer/forms/form_list.html.erb
@@ -840,6 +848,9 @@ files:
840
848
  - lib/primer/forms/text_area.rb
841
849
  - lib/primer/forms/text_field.html.erb
842
850
  - lib/primer/forms/text_field.rb
851
+ - lib/primer/forms/toggle_switch.html.erb
852
+ - lib/primer/forms/toggle_switch.rb
853
+ - lib/primer/forms/toggle_switch_form.rb
843
854
  - lib/primer/forms/utils.rb
844
855
  - lib/primer/view_components.rb
845
856
  - lib/primer/view_components/audited.rb
@@ -914,7 +925,9 @@ files:
914
925
  - previews/primer/alpha/dialog_preview/test.html.erb
915
926
  - previews/primer/alpha/dialog_preview/with_footer.html.erb
916
927
  - previews/primer/alpha/dialog_preview/with_form.html.erb
928
+ - previews/primer/alpha/dialog_preview/with_text_input.html.erb
917
929
  - previews/primer/alpha/dropdown_preview.rb
930
+ - previews/primer/alpha/hellip_button_preview.rb
918
931
  - previews/primer/alpha/hidden_text_expander_preview.rb
919
932
  - previews/primer/alpha/image_crop_preview.rb
920
933
  - previews/primer/alpha/layout_preview.rb
@@ -970,7 +983,11 @@ files:
970
983
  - previews/primer/beta/progress_bar_preview.rb
971
984
  - previews/primer/beta/relative_time_preview.rb
972
985
  - previews/primer/beta/spinner_preview.rb
986
+ - previews/primer/beta/state_preview.rb
987
+ - previews/primer/beta/subhead_preview.rb
988
+ - previews/primer/beta/subhead_preview/actions.html.erb
973
989
  - previews/primer/beta/text_preview.rb
990
+ - previews/primer/beta/timeline_item_preview.rb
974
991
  - previews/primer/beta/truncate_preview.rb
975
992
  - previews/primer/forms/forms_preview.rb
976
993
  - previews/primer/forms/forms_preview/after_content_form.html.erb
@@ -979,6 +996,7 @@ files:
979
996
  - previews/primer/forms/forms_preview/check_box_group_form.html.erb
980
997
  - previews/primer/forms/forms_preview/check_box_with_nested_form.html.erb
981
998
  - previews/primer/forms/forms_preview/composed_form.html.erb
999
+ - previews/primer/forms/forms_preview/example_toggle_switch_form.html.erb
982
1000
  - previews/primer/forms/forms_preview/horizontal_form.html.erb
983
1001
  - previews/primer/forms/forms_preview/immediate_validation_form.html.erb
984
1002
  - previews/primer/forms/forms_preview/invalid_form.html.erb
@@ -991,13 +1009,9 @@ files:
991
1009
  - previews/primer/forms/forms_preview/single_text_field_form.html.erb
992
1010
  - previews/primer/forms/forms_preview/submit_button_form.html.erb
993
1011
  - previews/primer/forms/forms_preview/text_field_and_checkbox_form.html.erb
994
- - previews/primer/hellip_button_preview.rb
995
1012
  - previews/primer/layout_component_preview.rb
996
1013
  - previews/primer/local_time_component_preview.rb
997
- - previews/primer/state_component_preview.rb
998
- - previews/primer/subhead_component_preview.rb
999
1014
  - previews/primer/time_ago_component_preview.rb
1000
- - previews/primer/timeline_item_component_preview.rb
1001
1015
  - previews/primer/url_helpers.rb
1002
1016
  - static/arguments.json
1003
1017
  - static/assets/view-components.svg
@@ -1 +0,0 @@
1
- {"name":"state_component","selectors":[".State",".state",".State--draft",".State--open",".State--merged",".State--closed",".State--small",".State--small .octicon"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["state_component.pcss"],"names":[],"mappings":"AAIA,cASE,iBAAkB,CAPlB,oBAAqB,CAErB,kDAAoD,CACpD,8CAAgD,CAChD,2DAA6D,CAH7D,kEAAoE,CAIpE,iBAAkB,CAClB,kBAEF,CAEA,4BAIE,8CAA+C,CAC/C,qDAA6D,CAF7D,iCAGF,CAEA,aAEE,2CACF,CAEA,4BAJE,iCAOF,CAHA,eAEE,2CACF,CAEA,eAEE,6CAA8C,CAD9C,iCAEF,CAIA,cAEE,iDAAmD,CACnD,oCAAsC,CAFtC,cAOF,CAHE,uBACE,SACF","file":"state_component.css","sourcesContent":["/* State */\n\n/* Default 32px */\n\n.state, /* TODO: Deprecate */\n.State {\n display: inline-block;\n padding: 5px var(--primer-control-medium-paddingInline-normal, 12px);\n font-size: var(--primer-text-body-size-medium, 14px);\n font-weight: var(--base-text-weight-medium, 500);\n line-height: var(--primer-control-medium-lineBoxHeight, 20px);\n text-align: center;\n white-space: nowrap;\n border-radius: 2em;\n}\n\n.state, /* TODO: Deprecate */\n.State,\n.State--draft {\n color: var(--color-fg-on-emphasis);\n background-color: var(--color-neutral-emphasis);\n border: var(--primer-borderWidth-thin, 1px) solid transparent;\n}\n\n.State--open {\n color: var(--color-fg-on-emphasis);\n background-color: var(--color-open-emphasis);\n}\n\n.State--merged {\n color: var(--color-fg-on-emphasis);\n background-color: var(--color-done-emphasis);\n}\n\n.State--closed {\n color: var(--color-fg-on-emphasis);\n background-color: var(--color-closed-emphasis);\n}\n\n/* Small 24px */\n\n.State--small {\n padding: 0 10px;\n font-size: var(--primer-text-body-size-small, 12px);\n line-height: var(--base-size-24, 24px);\n\n & .octicon {\n width: 1em; /* Ensures different icons don't change State indicator width */\n }\n}\n"]}
@@ -1 +0,0 @@
1
- {"name":"subhead_component","selectors":[".Subhead",".Subhead--spacious",".Subhead-heading",".Subhead-heading--danger",".Subhead-description",".Subhead-actions",".Subhead-actions+.Subhead-description"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["subhead_component.pcss"],"names":[],"mappings":"AAEA,SAIE,gFAAkF,CAHlF,YAAa,CAIb,kBAAmB,CACnB,wBAAyB,CAHzB,iDAAmD,CADnD,wDAKF,CAGA,mBACE,mCACF,CAGA,iBAGE,aAAc,CAFd,cAAe,CACf,8CAAgD,CAEhD,OACF,CAGA,yBAEE,4BAA6B,CAD7B,gDAEF,CAGA,qBAEE,2BAA4B,CAC5B,WAAY,CAFZ,kDAAoD,CAGpD,OACF,CAGA,iBAEE,iBAAkB,CAClB,wBAAyB,CAFzB,6EAAiF,CAGjF,OAKF,CAHE,sCACE,iCACF","file":"subhead_component.css","sourcesContent":["/* Subhead */\n\n.Subhead {\n display: flex;\n padding-bottom: var(--primer-stack-padding-condensed, 8px);\n margin-bottom: var(--primer-stack-gap-normal, 16px);\n border-bottom: var(--primer-borderWidth-thin, 1px) solid var(--color-border-muted);\n flex-flow: row wrap;\n justify-content: flex-end; /* Keep actions right aligned. */\n}\n\n/* Modifier class to give a lot of breathing room between sections of content. */\n.Subhead--spacious {\n margin-top: var(--base-size-40, 40px);\n}\n\n/* <h2> sized heading with normal font weight */\n.Subhead-heading {\n font-size: 24px;\n font-weight: var(--base-text-weight-normal, 400);\n flex: 1 1 auto;\n order: 0;\n}\n\n/* Make the text bold and red for dangerous content */\n.Subhead-heading--danger {\n font-weight: var(--base-text-weight-semibold, 600);\n color: var(--color-danger-fg);\n}\n\n/* One-liner of supporting text */\n.Subhead-description {\n font-size: var(--primer-text-body-size-medium, 14px);\n color: var(--color-fg-muted);\n flex: 1 100%;\n order: 2;\n}\n\n/* Add 1 or 2 buttons to the right of the heading */\n.Subhead-actions {\n margin: var(--base-size-4, 4px) 0 var(--base-size-4, 4px) var(--base-size-4, 4px);\n align-self: center;\n justify-content: flex-end;\n order: 1;\n\n & + .Subhead-description {\n margin-top: var(--base-size-4, 4px);\n }\n}\n"]}
@@ -1 +0,0 @@
1
- {"name":"timeline_item_component","selectors":[".TimelineItem",".TimelineItem:before",".TimelineItem:target .TimelineItem-badge",".TimelineItem-badge",".TimelineItem-badge--success",".TimelineItem-body",".TimelineItem-avatar",".TimelineItem-break",".TimelineItem--condensed",".TimelineItem--condensed:last-child",".TimelineItem--condensed .TimelineItem-badge"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["timeline_item_component.pcss"],"names":[],"mappings":"AAEA,cAEE,YAAa,CAEb,+CAAiD,CADjD,iDAAmD,CAFnD,iBAqBF,CAfE,qBAQE,0CAA2C,CAL3C,QAAS,CAIT,UAAW,CAFX,aAAc,CADd,MAAO,CAHP,iBAAkB,CAClB,KAAM,CAIN,yCAGF,CAEA,yCACE,yCAA0C,CAC1C,6CACF,CAGF,oBASE,kBAAmB,CACnB,+CAAgD,CAChD,4EAA8E,CAC9E,iBAAkB,CAJlB,2BAA4B,CAL5B,YAAa,CAWb,aAAc,CATd,6CAA+C,CAQ/C,sBAAuB,CANvB,kEAAqE,CADrE,gEAAkE,CALlE,iBAAkB,CAGlB,4CAA8C,CAF9C,SAaF,CAEA,6BAEE,8CAA+C,CAC/C,qDAA6D,CAF7D,iCAGF,CAEA,mBAIE,2BAA4B,CAC5B,SAAU,CAFV,iCAAmC,CADnC,cAAe,CADf,WAKF,CAEA,qBAEE,UAAW,CADX,iBAAkB,CAElB,SACF,CAEA,oBAOE,4CAA6C,CAC7C,QAAS,CACT,kFAAoF,CANpF,4CAA8C,CAC9C,QAAS,CACT,2DAA8D,CAC9D,iBAAkB,CALlB,iBAAkB,CAClB,SAQF,CAEA,yBAEE,gBAAiB,CADjB,kCAgBF,CAZE,oCACE,kDACF,CAEA,6CAKE,4CAA6C,CAC7C,QAAS,CAFT,2BAA4B,CAH5B,+BAAiC,CAEjC,oCAAsC,CADtC,iCAKF","file":"timeline_item_component.css","sourcesContent":["/* TimelineItem */\n\n.TimelineItem {\n position: relative;\n display: flex;\n padding: var(--primer-stack-padding-normal, 16px) 0;\n margin-left: var(--primer-stack-gap-normal, 16px);\n\n /* The Timeline */\n &::before {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n display: block;\n width: var(--primer-borderWidth-thick, 2px);\n content: '';\n background-color: var(--color-border-muted);\n }\n\n &:target .TimelineItem-badge {\n border-color: var(--color-accent-emphasis);\n box-shadow: 0 0 0.2em var(--color-accent-muted);\n }\n}\n\n.TimelineItem-badge {\n position: relative;\n z-index: 1;\n display: flex;\n width: var(--primer-control-medium-size, 32px);\n height: var(--primer-control-medium-size, 32px);\n margin-right: var(--primer-controlStack-medium-gap-condensed, 8px);\n margin-left: calc(var(--primer-control-medium-size, 32px) / -2 + 1px);\n color: var(--color-fg-muted);\n align-items: center;\n background-color: var(--color-timeline-badge-bg);\n border: var(--primer-borderWidth-thick, 2px) solid var(--color-canvas-default);\n border-radius: 50%;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.TimelineItem-badge--success {\n color: var(--color-fg-on-emphasis);\n background-color: var(--color-success-emphasis);\n border: var(--primer-borderWidth-thin, 1px) solid transparent;\n}\n\n.TimelineItem-body {\n min-width: 0;\n max-width: 100%;\n margin-top: var(--base-size-4, 4px);\n color: var(--color-fg-muted);\n flex: auto;\n}\n\n.TimelineItem-avatar {\n position: absolute;\n left: -72px;\n z-index: 1;\n}\n\n.TimelineItem-break {\n position: relative;\n z-index: 1;\n height: var(--primer-stack-gap-spacious, 24px);\n margin: 0;\n margin-bottom: calc(var(--primer-stack-gap-normal, 16px) * -1);\n margin-left: -56px;\n background-color: var(--color-canvas-default);\n border: 0;\n border-top: var(--primer-borderWidth-thicker, 4px) solid var(--color-border-default);\n}\n\n.TimelineItem--condensed {\n padding-top: var(--base-size-4, 4px);\n padding-bottom: 0;\n\n /* TimelineItem--condensed is often grouped. (commits) */\n &:last-child {\n padding-bottom: var(--primer-stack-gap-normal, 16px);\n }\n\n & .TimelineItem-badge {\n height: var(--base-size-16, 16px);\n margin-top: var(--base-size-8, 8px);\n margin-bottom: var(--base-size-8, 8px);\n color: var(--color-fg-muted);\n background-color: var(--color-canvas-default);\n border: 0;\n }\n}\n"]}
@@ -1,22 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Primer
4
- # @label HellipButton
5
- class HellipButtonPreview < ViewComponent::Preview
6
- # @label Default Options
7
- #
8
- # @param aria_label [String]
9
- # @param inline [Boolean]
10
- def default(inline: false, aria_label: "No effect")
11
- render(Primer::HellipButton.new(inline: inline, "aria-label": aria_label))
12
- end
13
-
14
- # @label Playground
15
- #
16
- # @param aria_label [String]
17
- # @param inline [Boolean]
18
- def playground(inline: false, aria_label: "No effect")
19
- render(Primer::HellipButton.new(inline: inline, "aria-label": aria_label))
20
- end
21
- end
22
- end
@@ -1,26 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Primer
4
- # @label StateComponent
5
- class StateComponentPreview < ViewComponent::Preview
6
- # @label Playground
7
- #
8
- # @param title [String]
9
- # @param tag [Symbol] select [span, div]
10
- # @param size [Symbol] select [default, small]
11
- # @param scheme [Symbol] select [default, open, closed, merged]
12
- def playground(title: "State", scheme: :default, size: :default, tag: :span)
13
- render(Primer::StateComponent.new(title: title, scheme: scheme, size: size, tag: tag)) { "State" }
14
- end
15
-
16
- # @label Default
17
- #
18
- # @param title [String]
19
- # @param tag [Symbol] select [span, div]
20
- # @param size [Symbol] select [default, small]
21
- # @param scheme [Symbol] select [default, open, closed, merged]
22
- def default(title: "State", scheme: :default, size: :default, tag: :span)
23
- render(Primer::StateComponent.new(title: title, scheme: scheme, size: size, tag: tag)) { "State" }
24
- end
25
- end
26
- end
@@ -1,40 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Primer
4
- # @label SubheadComponent
5
- class SubheadComponentPreview < ViewComponent::Preview
6
- # @label Playground
7
- #
8
- # @param spacious [Boolean]
9
- # @param hide_border [Boolean]
10
- # @param heading_danger [Boolean]
11
- # @param heading_tag [Symbol] select [div, h1, h2, h3, h4, h5, h6]
12
- def playground(spacious: false, hide_border: false, heading_tag: :div, heading_danger: false)
13
- render(Primer::SubheadComponent.new(spacious: spacious, hide_border: hide_border)) do |component|
14
- component.with_heading(tag: heading_tag, danger: heading_danger) do
15
- "My Heading"
16
- end
17
- component.with_description do
18
- "My Description"
19
- end
20
- end
21
- end
22
-
23
- # @label Default Options
24
- #
25
- # @param spacious [Boolean]
26
- # @param hide_border [Boolean]
27
- # @param heading_danger [Boolean]
28
- # @param heading_tag [Symbol] select [div, h1, h2, h3, h4, h5, h6]
29
- def default(spacious: false, hide_border: false, heading_tag: :div, heading_danger: false)
30
- render(Primer::SubheadComponent.new(spacious: spacious, hide_border: hide_border)) do |component|
31
- component.with_heading(tag: heading_tag, danger: heading_danger) do
32
- "My Heading"
33
- end
34
- component.with_description do
35
- "My Description"
36
- end
37
- end
38
- end
39
- end
40
- end
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Primer
4
- # @label TimelineItemComponent
5
- class TimelineItemComponentPreview < ViewComponent::Preview
6
- # @label Playground
7
- #
8
- # @param condensed [Boolean]
9
- def playground(condensed: false)
10
- render(Primer::TimelineItemComponent.new(condensed: condensed)) do |component|
11
- component.with_avatar(src: Primer::ExampleImage::BASE64_SRC, alt: "octocat")
12
- component.with_badge(bg: :success_emphasis, color: :on_emphasis, icon: :check)
13
- component.with_body { "Success!" }
14
- end
15
- end
16
-
17
- # @label Default
18
- #
19
- # @param condensed [Boolean]
20
- def default(condensed: false)
21
- render(Primer::TimelineItemComponent.new(condensed: condensed)) do |component|
22
- component.with_avatar(src: Primer::ExampleImage::BASE64_SRC, alt: "octocat")
23
- component.with_badge(bg: :success_emphasis, color: :on_emphasis, icon: :check)
24
- component.with_body { "Success!" }
25
- end
26
- end
27
- end
28
- end