primer_view_components 0.1.8 → 0.2.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +79 -0
- data/README.md +1 -1
- data/app/assets/javascripts/primer_view_components.js +1 -1
- data/app/assets/javascripts/primer_view_components.js.map +1 -1
- data/app/assets/styles/primer_view_components.css +1 -3
- data/app/assets/styles/primer_view_components.css.map +1 -1
- data/app/components/primer/alpha/action_list/item.rb +3 -5
- data/app/components/primer/alpha/action_list.css +1 -1
- data/app/components/primer/alpha/action_list.css.json +16 -16
- data/app/components/primer/alpha/action_list.css.map +1 -1
- data/app/components/primer/alpha/action_list.pcss +145 -145
- data/app/components/primer/alpha/action_list.rb +30 -15
- data/app/components/primer/alpha/action_menu/action_menu_element.d.ts +2 -1
- data/app/components/primer/alpha/action_menu/action_menu_element.js +44 -34
- data/app/components/primer/alpha/action_menu/action_menu_element.ts +32 -30
- data/app/components/primer/alpha/action_menu/list.rb +6 -1
- data/app/components/primer/alpha/action_menu.rb +1 -1
- data/app/components/primer/alpha/auto_complete.css +1 -1
- data/app/components/primer/alpha/auto_complete.css.map +1 -1
- data/app/components/primer/alpha/auto_complete.pcss +3 -3
- data/app/components/primer/alpha/banner.css +1 -1
- data/app/components/primer/alpha/banner.css.map +1 -1
- data/app/components/primer/alpha/banner.pcss +11 -11
- data/app/components/primer/alpha/button_marketing.css.map +1 -1
- data/app/components/primer/alpha/button_marketing.pcss +5 -12
- data/app/components/primer/alpha/button_marketing.rb +3 -0
- data/app/components/primer/alpha/dialog.css +1 -1
- data/app/components/primer/alpha/dialog.css.map +1 -1
- data/app/components/primer/alpha/dialog.pcss +36 -36
- data/app/components/primer/alpha/dropdown.css +1 -1
- data/app/components/primer/alpha/dropdown.css.map +1 -1
- data/app/components/primer/alpha/dropdown.pcss +12 -12
- data/app/components/primer/alpha/form_control.html.erb +1 -1
- data/app/components/primer/alpha/hellip_button.rb +3 -1
- data/app/components/primer/alpha/layout.css +1 -1
- data/app/components/primer/alpha/layout.css.map +1 -1
- data/app/components/primer/alpha/layout.pcss +4 -4
- data/app/components/primer/alpha/menu.css +1 -1
- data/app/components/primer/alpha/menu.css.map +1 -1
- data/app/components/primer/alpha/menu.pcss +21 -21
- data/app/components/primer/alpha/modal_dialog.js +17 -4
- data/app/components/primer/alpha/modal_dialog.ts +17 -4
- data/app/components/primer/alpha/nav_list/item.rb +2 -0
- data/app/components/primer/alpha/nav_list.js +6 -0
- data/app/components/primer/alpha/nav_list.rb +55 -36
- data/app/components/primer/alpha/nav_list.ts +8 -0
- data/app/components/primer/alpha/octicon_symbols.html.erb +1 -1
- data/app/components/primer/alpha/overlay/header.html.erb +5 -3
- data/app/components/primer/alpha/overlay/header.rb +4 -1
- data/app/components/primer/alpha/overlay.css +1 -1
- data/app/components/primer/alpha/overlay.css.json +1 -2
- data/app/components/primer/alpha/overlay.css.map +1 -1
- data/app/components/primer/alpha/overlay.pcss +14 -4
- data/app/components/primer/alpha/overlay.rb +1 -0
- data/app/components/primer/alpha/segmented_control.css +1 -1
- data/app/components/primer/alpha/segmented_control.css.map +1 -1
- data/app/components/primer/alpha/segmented_control.pcss +24 -33
- data/app/components/primer/alpha/tab_nav.css +1 -1
- data/app/components/primer/alpha/tab_nav.css.map +1 -1
- data/app/components/primer/alpha/tab_nav.pcss +12 -12
- data/app/components/primer/alpha/text_field.css +1 -3
- data/app/components/primer/alpha/text_field.css.json +1 -0
- data/app/components/primer/alpha/text_field.css.map +1 -1
- data/app/components/primer/alpha/text_field.pcss +87 -83
- data/app/components/primer/alpha/toggle_switch.css +1 -1
- data/app/components/primer/alpha/toggle_switch.css.json +11 -11
- data/app/components/primer/alpha/toggle_switch.css.map +1 -1
- data/app/components/primer/alpha/toggle_switch.d.ts +1 -1
- data/app/components/primer/alpha/toggle_switch.html.erb +2 -2
- data/app/components/primer/alpha/toggle_switch.js +44 -42
- data/app/components/primer/alpha/toggle_switch.pcss +16 -16
- data/app/components/primer/alpha/toggle_switch.rb +7 -0
- data/app/components/primer/alpha/toggle_switch.ts +50 -41
- data/app/components/primer/alpha/underline_nav.css +1 -1
- data/app/components/primer/alpha/underline_nav.css.map +1 -1
- data/app/components/primer/alpha/underline_nav.pcss +11 -11
- data/app/components/primer/beta/auto_complete.rb +1 -1
- data/app/components/primer/beta/avatar.css +1 -1
- data/app/components/primer/beta/avatar.css.map +1 -1
- data/app/components/primer/beta/avatar.pcss +18 -18
- data/app/components/primer/beta/avatar_stack.css +1 -1
- data/app/components/primer/beta/avatar_stack.css.map +1 -1
- data/app/components/primer/beta/avatar_stack.pcss +5 -5
- data/app/components/primer/beta/base_button.rb +11 -0
- data/app/components/primer/beta/blankslate.css +1 -1
- data/app/components/primer/beta/blankslate.css.map +1 -1
- data/app/components/primer/beta/blankslate.pcss +16 -16
- data/app/components/primer/beta/border_box.css +1 -1
- data/app/components/primer/beta/border_box.css.json +1 -1
- data/app/components/primer/beta/border_box.css.map +1 -1
- data/app/components/primer/beta/border_box.pcss +40 -42
- data/app/components/primer/beta/button.css +1 -1
- data/app/components/primer/beta/button.css.json +4 -0
- data/app/components/primer/beta/button.css.map +1 -1
- data/app/components/primer/beta/button.pcss +39 -24
- data/app/components/primer/beta/button.rb +3 -0
- data/app/components/primer/beta/button_group.css +1 -0
- data/app/components/primer/beta/button_group.css.json +14 -0
- data/app/components/primer/beta/button_group.css.map +1 -0
- data/app/components/primer/beta/button_group.pcss +27 -0
- data/app/components/primer/beta/button_group.rb +19 -19
- data/app/components/primer/beta/close_button.rb +3 -1
- data/app/components/primer/beta/counter.css +1 -1
- data/app/components/primer/beta/counter.css.map +1 -1
- data/app/components/primer/beta/counter.pcss +5 -5
- data/app/components/primer/beta/details.html.erb +6 -2
- data/app/components/primer/beta/details.rb +18 -10
- data/app/components/primer/beta/flash.css +1 -1
- data/app/components/primer/beta/flash.css.map +1 -1
- data/app/components/primer/beta/flash.pcss +12 -12
- data/app/components/primer/beta/icon_button.rb +7 -3
- data/app/components/primer/beta/label.css +1 -1
- data/app/components/primer/beta/label.css.map +1 -1
- data/app/components/primer/beta/label.pcss +3 -3
- data/app/components/primer/beta/popover.css +1 -1
- data/app/components/primer/beta/popover.css.map +1 -1
- data/app/components/primer/beta/popover.pcss +4 -4
- data/app/components/primer/beta/state.css +1 -1
- data/app/components/primer/beta/state.css.map +1 -1
- data/app/components/primer/beta/state.pcss +7 -7
- data/app/components/primer/beta/subhead.css +1 -1
- data/app/components/primer/beta/subhead.css.map +1 -1
- data/app/components/primer/beta/subhead.pcss +9 -9
- data/app/components/primer/beta/timeline_item.css +1 -1
- data/app/components/primer/beta/timeline_item.css.map +1 -1
- data/app/components/primer/beta/timeline_item.pcss +18 -18
- data/app/components/primer/beta/truncate.css +1 -1
- data/app/components/primer/beta/truncate.css.map +1 -1
- data/app/components/primer/beta/truncate.pcss +1 -1
- data/app/components/primer/focus_group.js +8 -13
- data/app/components/primer/focus_group.ts +8 -12
- data/app/components/primer/primer.d.ts +1 -0
- data/app/components/primer/primer.js +1 -0
- data/app/components/primer/primer.pcss +1 -0
- data/app/components/primer/primer.ts +1 -0
- data/lib/postcss_mixins/activeIndicatorLine.pcss +4 -4
- data/lib/primer/accessibility.rb +74 -0
- data/lib/primer/forms/dsl/input.rb +4 -8
- data/lib/primer/forms/dsl/text_field_input.rb +0 -4
- data/lib/primer/forms/dsl/toggle_switch_input.rb +4 -0
- data/lib/primer/forms/form_control.html.erb +3 -5
- data/lib/primer/forms/primer_base_component_wrapper.html.erb +3 -0
- data/lib/primer/forms/primer_base_component_wrapper.rb +24 -0
- data/lib/primer/forms/toggle_switch.html.erb +3 -3
- data/lib/primer/forms/toggle_switch.rb +6 -2
- data/lib/primer/forms/toggle_switch_input.js +7 -2
- data/lib/primer/forms/toggle_switch_input.ts +9 -2
- data/lib/primer/static/generate_info_arch.rb +3 -0
- data/lib/primer/static/generate_previews.rb +15 -8
- data/lib/primer/view_components/linters/deprecated_components_counter.rb +37 -13
- data/lib/primer/view_components/version.rb +2 -2
- data/lib/primer/yard/component_manifest.rb +1 -1
- data/lib/primer/yard/lookbook_pages_backend.rb +8 -2
- data/lib/primer/yard/registry.rb +4 -0
- data/previews/pages/forms/03_caption_templates.md.erb +1 -1
- data/previews/pages/forms/04_after_content.md.erb +1 -1
- data/previews/pages/forms/06_miscellaneous_inputs.md.erb +1 -1
- data/previews/pages/forms/07_toggle_switch_forms.md.erb +1 -1
- data/previews/primer/alpha/action_menu_preview/two_menus.html.erb +13 -0
- data/previews/primer/alpha/action_menu_preview/with_actions.html.erb +21 -0
- data/previews/primer/alpha/action_menu_preview.rb +5 -13
- data/previews/primer/alpha/button_marketing_preview.rb +3 -2
- data/previews/primer/alpha/dialog_preview.rb +4 -3
- data/previews/primer/alpha/hellip_button_preview.rb +3 -2
- data/previews/primer/alpha/nav_list_preview.rb +1 -1
- data/previews/primer/alpha/overlay_preview/middle_of_page_with_relative_container.html.erb +19 -0
- data/previews/primer/alpha/overlay_preview.rb +31 -0
- data/previews/primer/beta/base_button_preview.rb +9 -2
- data/previews/primer/beta/button_group_preview/action_menus.html.erb +8 -0
- data/previews/primer/beta/button_group_preview.rb +49 -11
- data/previews/primer/beta/button_preview/trailing_counter.html.erb +1 -1
- data/previews/primer/beta/button_preview.rb +5 -2
- data/previews/primer/beta/close_button_preview.rb +3 -2
- data/previews/primer/beta/details_preview.rb +11 -8
- data/previews/primer/forms_preview.rb +44 -0
- data/static/arguments.json +11 -5
- data/static/classes.json +378 -372
- data/static/constants.json +0 -1
- data/static/info_arch.json +5457 -1364
- data/static/previews.json +5197 -1428
- metadata +40 -36
- data/lib/tasks/docs.rake +0 -185
- data/lib/tasks/helpers/ast_processor.rb +0 -44
- data/lib/tasks/helpers/ast_traverser.rb +0 -77
- data/lib/tasks/primer_view_components.rake +0 -47
- data/lib/tasks/static.rake +0 -29
- data/lib/tasks/test.rake +0 -83
- data/lib/tasks/utilities.rake +0 -109
- data/previews/primer/forms/forms_preview.rb +0 -48
- /data/previews/primer/{forms/forms_preview → forms_preview}/after_content_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/array_check_box_group_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/caption_template_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/check_box_group_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/check_box_with_nested_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/composed_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/example_toggle_switch_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/horizontal_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/immediate_validation_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/invalid_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/multi_input_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/multi_text_field_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/name_with_question_mark_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/radio_button_group_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/radio_button_with_nested_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/select_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/single_text_field_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/submit_button_form.html.erb +0 -0
- /data/previews/primer/{forms/forms_preview → forms_preview}/text_field_and_checkbox_form.html.erb +0 -0
data/lib/tasks/utilities.rake
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
namespace :utilities do
|
|
4
|
-
task :build do
|
|
5
|
-
require "yaml"
|
|
6
|
-
require "json"
|
|
7
|
-
ENV["RAILS_ENV"] = "test"
|
|
8
|
-
require File.expand_path("./../../demo/config/environment.rb", __dir__)
|
|
9
|
-
require "primer/classify/utilities"
|
|
10
|
-
|
|
11
|
-
# Keys that are looked for to be included in the utilities.yml file
|
|
12
|
-
# rubocop:disable Lint/ConstantDefinitionInBlock
|
|
13
|
-
SUPPORTED_KEYS = [
|
|
14
|
-
/^anim\b/,
|
|
15
|
-
/^color-bg\b/,
|
|
16
|
-
/^color-border\b/,
|
|
17
|
-
/^color-fg\b/,
|
|
18
|
-
/^col\b/,
|
|
19
|
-
/^container\b/,
|
|
20
|
-
/^clearfix\b/,
|
|
21
|
-
/^d\b/,
|
|
22
|
-
/^float\b/,
|
|
23
|
-
/^height\b/,
|
|
24
|
-
/^hide\b/,
|
|
25
|
-
/^m[trblxy]?\b/,
|
|
26
|
-
/^p[trblxy]?\b/,
|
|
27
|
-
/^position\b/,
|
|
28
|
-
/^wb\b/,
|
|
29
|
-
/^width\b/,
|
|
30
|
-
/^v\b/
|
|
31
|
-
].freeze
|
|
32
|
-
|
|
33
|
-
BREAKPOINTS = [nil, "sm", "md", "lg", "xl"].freeze
|
|
34
|
-
# rubocop:enable Lint/ConstantDefinitionInBlock
|
|
35
|
-
|
|
36
|
-
utility_data = JSON.parse(File.read("app/lib/primer/css/utilities.css.json"))["selectors"]
|
|
37
|
-
layout_data = JSON.parse(File.read("app/lib/primer/css/layout.css.json"))["selectors"]
|
|
38
|
-
css_data = utility_data + layout_data
|
|
39
|
-
|
|
40
|
-
output = {}
|
|
41
|
-
|
|
42
|
-
css_data.each do |selector|
|
|
43
|
-
selector.sub!(/^./, "")
|
|
44
|
-
selector.sub!(/:[^\s]*$/, "")
|
|
45
|
-
|
|
46
|
-
# Next if selector has ancestors or sibling selectors
|
|
47
|
-
next if selector.match?(/[:><~\[.]/)
|
|
48
|
-
next unless SUPPORTED_KEYS.any? { |key| selector =~ key }
|
|
49
|
-
|
|
50
|
-
# Dupe so we still have the selector at the end of slicing it up
|
|
51
|
-
classname = selector.dup
|
|
52
|
-
key = ""
|
|
53
|
-
|
|
54
|
-
# Look for a replacement key
|
|
55
|
-
Primer::Classify::Utilities::REPLACEMENT_KEYS.each do |k, v|
|
|
56
|
-
next unless classname.match?(Regexp.new(k))
|
|
57
|
-
|
|
58
|
-
key = v
|
|
59
|
-
classname.sub!(Regexp.new("#{k}-"), "")
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
# If we didn't find a replacement, grab the first text before hyphen
|
|
63
|
-
if classname == selector
|
|
64
|
-
key = classname.split("-").first
|
|
65
|
-
classname.sub!(/^[^-]+-/, "")
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
# Check if the next bit of the classname is a breakpoint
|
|
69
|
-
if classname.match?(/^(sm-|md-|lg-|xl-)/)
|
|
70
|
-
breakpoint = classname.split("-").first
|
|
71
|
-
classname.sub!(/^[^-]+-/, "")
|
|
72
|
-
end
|
|
73
|
-
|
|
74
|
-
# Change the rest from hyphens to underscores
|
|
75
|
-
classname.sub!(/-/, "_")
|
|
76
|
-
|
|
77
|
-
# convert padding/margin negative values ie n7 to -7
|
|
78
|
-
classname.sub!(/^n/, "-") if classname.match?(/^n[0-9]/)
|
|
79
|
-
|
|
80
|
-
# If key and classname are equal, then classname is boolean
|
|
81
|
-
classname = true if key == classname
|
|
82
|
-
|
|
83
|
-
key = key.to_sym
|
|
84
|
-
|
|
85
|
-
if classname.is_a?(String)
|
|
86
|
-
classname = classname.match?(/\A[-+]?[0-9]+\z/) ? classname.to_i : classname.to_sym
|
|
87
|
-
end
|
|
88
|
-
|
|
89
|
-
if output[key].nil?
|
|
90
|
-
output[key] = { classname => Array.new(5, nil) }
|
|
91
|
-
elsif output[key][classname].nil?
|
|
92
|
-
output[key][classname] = Array.new(5, nil)
|
|
93
|
-
end
|
|
94
|
-
|
|
95
|
-
output[key][classname][BREAKPOINTS.index(breakpoint)] = selector
|
|
96
|
-
end
|
|
97
|
-
|
|
98
|
-
output.transform_values! do |x|
|
|
99
|
-
x.transform_values { |y| y.reverse.drop_while(&:nil?).reverse }
|
|
100
|
-
end
|
|
101
|
-
|
|
102
|
-
custom_utility_data = YAML.load_file("lib/tasks/custom_utilities.yml")
|
|
103
|
-
output.merge!(custom_utility_data)
|
|
104
|
-
|
|
105
|
-
File.open("lib/primer/classify/utilities.yml", "w") do |f|
|
|
106
|
-
f.puts YAML.dump(output)
|
|
107
|
-
end
|
|
108
|
-
end
|
|
109
|
-
end
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Primer
|
|
4
|
-
module Forms
|
|
5
|
-
# :nodoc:
|
|
6
|
-
#
|
|
7
|
-
# @logical_path primer/
|
|
8
|
-
class FormsPreview < ViewComponent::Preview
|
|
9
|
-
def single_text_field_form; end
|
|
10
|
-
|
|
11
|
-
def multi_text_field_form; end
|
|
12
|
-
|
|
13
|
-
def text_field_and_checkbox_form; end
|
|
14
|
-
|
|
15
|
-
def horizontal_form; end
|
|
16
|
-
|
|
17
|
-
def composed_form; end
|
|
18
|
-
|
|
19
|
-
def submit_button_form; end
|
|
20
|
-
|
|
21
|
-
def radio_button_group_form; end
|
|
22
|
-
|
|
23
|
-
def check_box_group_form; end
|
|
24
|
-
|
|
25
|
-
def array_check_box_group_form; end
|
|
26
|
-
|
|
27
|
-
def select_form; end
|
|
28
|
-
|
|
29
|
-
def radio_button_with_nested_form; end
|
|
30
|
-
|
|
31
|
-
def check_box_with_nested_form; end
|
|
32
|
-
|
|
33
|
-
def caption_template_form; end
|
|
34
|
-
|
|
35
|
-
def after_content_form; end
|
|
36
|
-
|
|
37
|
-
def invalid_form; end
|
|
38
|
-
|
|
39
|
-
def multi_input_form; end
|
|
40
|
-
|
|
41
|
-
def name_with_question_mark_form; end
|
|
42
|
-
|
|
43
|
-
def immediate_validation_form; end
|
|
44
|
-
|
|
45
|
-
def example_toggle_switch_form; end
|
|
46
|
-
end
|
|
47
|
-
end
|
|
48
|
-
end
|
|
File without changes
|
/data/previews/primer/{forms/forms_preview → forms_preview}/array_check_box_group_form.html.erb
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/data/previews/primer/{forms/forms_preview → forms_preview}/check_box_with_nested_form.html.erb
RENAMED
|
File without changes
|
|
File without changes
|
/data/previews/primer/{forms/forms_preview → forms_preview}/example_toggle_switch_form.html.erb
RENAMED
|
File without changes
|
|
File without changes
|
/data/previews/primer/{forms/forms_preview → forms_preview}/immediate_validation_form.html.erb
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/data/previews/primer/{forms/forms_preview → forms_preview}/name_with_question_mark_form.html.erb
RENAMED
|
File without changes
|
/data/previews/primer/{forms/forms_preview → forms_preview}/radio_button_group_form.html.erb
RENAMED
|
File without changes
|
/data/previews/primer/{forms/forms_preview → forms_preview}/radio_button_with_nested_form.html.erb
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/data/previews/primer/{forms/forms_preview → forms_preview}/text_field_and_checkbox_form.html.erb
RENAMED
|
File without changes
|