primer_view_components 0.0.12 → 0.0.13
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 +7 -1
- data/app/components/primer/avatar_component.rb +11 -11
- data/app/components/primer/base_component.rb +55 -7
- data/app/components/primer/blankslate_component.html.erb +1 -1
- data/app/components/primer/blankslate_component.rb +6 -6
- data/app/components/primer/border_box_component.html.erb +5 -5
- data/app/components/primer/border_box_component.rb +34 -34
- data/app/components/primer/box_component.rb +5 -5
- data/app/components/primer/breadcrumb_component.html.erb +2 -2
- data/app/components/primer/breadcrumb_component.rb +12 -12
- data/app/components/primer/button_component.rb +9 -9
- data/app/components/primer/counter_component.rb +9 -9
- data/app/components/primer/details_component.html.erb +1 -1
- data/app/components/primer/details_component.rb +15 -15
- data/app/components/primer/dropdown_menu_component.html.erb +1 -1
- data/app/components/primer/dropdown_menu_component.rb +6 -6
- data/app/components/primer/flash_component.html.erb +2 -2
- data/app/components/primer/flash_component.rb +13 -13
- data/app/components/primer/flex_component.rb +5 -5
- data/app/components/primer/flex_item_component.rb +5 -5
- data/app/components/primer/heading_component.rb +4 -4
- data/app/components/primer/label_component.rb +9 -9
- data/app/components/primer/layout_component.html.erb +1 -1
- data/app/components/primer/layout_component.rb +6 -6
- data/app/components/primer/link_component.rb +8 -8
- data/app/components/primer/octicon_component.rb +10 -10
- data/app/components/primer/popover_component.html.erb +1 -1
- data/app/components/primer/popover_component.rb +26 -26
- data/app/components/primer/progress_bar_component.html.erb +2 -2
- data/app/components/primer/progress_bar_component.rb +14 -14
- data/app/components/primer/spinner_component.html.erb +1 -1
- data/app/components/primer/spinner_component.rb +9 -9
- data/app/components/primer/state_component.rb +8 -8
- data/app/components/primer/subhead_component.html.erb +4 -4
- data/app/components/primer/subhead_component.rb +26 -26
- data/app/components/primer/text_component.rb +5 -5
- data/app/components/primer/timeline_item_component.html.erb +4 -4
- data/app/components/primer/timeline_item_component.rb +28 -28
- data/app/components/primer/underline_nav_component.html.erb +1 -1
- data/app/components/primer/underline_nav_component.rb +5 -5
- data/lib/primer/classify.rb +2 -4
- data/lib/primer/view_components/version.rb +1 -1
- metadata +2 -2
@@ -39,15 +39,15 @@ module Primer
|
|
39
39
|
# <% end %>
|
40
40
|
#
|
41
41
|
# @param size [Symbol] <%= one_of(Primer::ProgressBarComponent::SIZE_OPTIONS) %> Increases height.
|
42
|
-
# @param
|
43
|
-
def initialize(size: SIZE_DEFAULT, **
|
44
|
-
@
|
45
|
-
@
|
46
|
-
@
|
42
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
43
|
+
def initialize(size: SIZE_DEFAULT, **system_arguments)
|
44
|
+
@system_arguments = system_arguments
|
45
|
+
@system_arguments[:classes] = class_names(
|
46
|
+
@system_arguments[:classes],
|
47
47
|
"Progress",
|
48
48
|
SIZE_MAPPINGS[fetch_or_fallback(SIZE_OPTIONS, size, SIZE_DEFAULT)]
|
49
49
|
)
|
50
|
-
@
|
50
|
+
@system_arguments[:tag] = :span
|
51
51
|
|
52
52
|
end
|
53
53
|
|
@@ -57,19 +57,19 @@ module Primer
|
|
57
57
|
|
58
58
|
class Item < ViewComponent::Slot
|
59
59
|
include ClassNameHelper
|
60
|
-
attr_reader :
|
60
|
+
attr_reader :system_arguments
|
61
61
|
|
62
62
|
# @param percentage [Integer] Percentage completion of item.
|
63
63
|
# @param bg [Symbol] Color of item.
|
64
|
-
# @param
|
65
|
-
def initialize(percentage: 0, bg: :green, **
|
64
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
65
|
+
def initialize(percentage: 0, bg: :green, **system_arguments)
|
66
66
|
@percentage = percentage
|
67
|
-
@
|
67
|
+
@system_arguments = system_arguments
|
68
68
|
|
69
|
-
@
|
70
|
-
@
|
71
|
-
@
|
72
|
-
@
|
69
|
+
@system_arguments[:tag] = :span
|
70
|
+
@system_arguments[:bg] = bg
|
71
|
+
@system_arguments[:style] = "width: #{@percentage}%;"
|
72
|
+
@system_arguments[:classes] = class_names("Progress-item", @system_arguments[:classes])
|
73
73
|
end
|
74
74
|
end
|
75
75
|
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<%= render Primer::BaseComponent.new(**@
|
1
|
+
<%= render Primer::BaseComponent.new(**@system_arguments) do %>
|
2
2
|
<circle cx="8" cy="8" r="7" stroke="currentColor" stroke-opacity="0.25" stroke-width="2" vector-effect="non-scaling-stroke" />
|
3
3
|
<path d="M15 8a7.002 7.002 0 00-7-7" stroke="currentColor" stroke-width="2" stroke-linecap="round" vector-effect="non-scaling-stroke">
|
4
4
|
<animateTransform attributeName="transform" type="rotate" from="0 8 8" to="360 8 8" dur="1s" repeatCount="indefinite" />
|
@@ -25,15 +25,15 @@ module Primer
|
|
25
25
|
# @example 80|Large
|
26
26
|
# <%= render(Primer::SpinnerComponent.new(size: :large)) %>
|
27
27
|
#
|
28
|
-
# @param size [Symbol] <%= one_of(Primer::SpinnerComponent::
|
29
|
-
def initialize(size: DEFAULT_SIZE, style: DEFAULT_STYLE, **
|
30
|
-
@
|
31
|
-
@
|
32
|
-
@
|
33
|
-
@
|
34
|
-
@
|
35
|
-
@
|
36
|
-
@
|
28
|
+
# @param size [Symbol] <%= one_of(Primer::SpinnerComponent::SIZE_MAPPINGS) %>
|
29
|
+
def initialize(size: DEFAULT_SIZE, style: DEFAULT_STYLE, **system_arguments)
|
30
|
+
@system_arguments = system_arguments
|
31
|
+
@system_arguments[:tag] = :svg
|
32
|
+
@system_arguments[:width] = SIZE_MAPPINGS[fetch_or_fallback(SIZE_OPTIONS, size, DEFAULT_SIZE)]
|
33
|
+
@system_arguments[:height] = SIZE_MAPPINGS[fetch_or_fallback(SIZE_OPTIONS, size, DEFAULT_SIZE)]
|
34
|
+
@system_arguments[:viewBox] = "0 0 16 16"
|
35
|
+
@system_arguments[:fill] = :none
|
36
|
+
@system_arguments[:style] = DEFAULT_STYLE unless style.nil?
|
37
37
|
end
|
38
38
|
end
|
39
39
|
end
|
@@ -39,19 +39,19 @@ module Primer
|
|
39
39
|
# @param color [Symbol] Background color. <%= one_of(Primer::StateComponent::COLOR_OPTIONS) %>
|
40
40
|
# @param tag [Symbol] HTML tag for element. <%= one_of(Primer::StateComponent::TAG_OPTIONS) %>
|
41
41
|
# @param size [Symbol] <%= one_of(Primer::StateComponent::SIZE_OPTIONS) %>
|
42
|
-
# @param
|
42
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
43
43
|
def initialize(
|
44
44
|
title:,
|
45
45
|
color: COLOR_DEFAULT,
|
46
46
|
tag: TAG_DEFAULT,
|
47
47
|
size: SIZE_DEFAULT,
|
48
|
-
**
|
48
|
+
**system_arguments
|
49
49
|
)
|
50
|
-
@
|
51
|
-
@
|
52
|
-
@
|
53
|
-
@
|
54
|
-
@
|
50
|
+
@system_arguments = system_arguments
|
51
|
+
@system_arguments[:title] = title
|
52
|
+
@system_arguments[:tag] = fetch_or_fallback(TAG_OPTIONS, tag, TAG_DEFAULT)
|
53
|
+
@system_arguments[:classes] = class_names(
|
54
|
+
@system_arguments[:classes],
|
55
55
|
"State",
|
56
56
|
COLOR_MAPPINGS[fetch_or_fallback(COLOR_OPTIONS, color, COLOR_DEFAULT)],
|
57
57
|
SIZE_MAPPINGS[fetch_or_fallback(SIZE_OPTIONS, size, SIZE_DEFAULT)]
|
@@ -59,7 +59,7 @@ module Primer
|
|
59
59
|
end
|
60
60
|
|
61
61
|
def call
|
62
|
-
render(Primer::BaseComponent.new(**@
|
62
|
+
render(Primer::BaseComponent.new(**@system_arguments)) { content }
|
63
63
|
end
|
64
64
|
end
|
65
65
|
end
|
@@ -1,16 +1,16 @@
|
|
1
|
-
<%= render Primer::BaseComponent.new(**@
|
1
|
+
<%= render Primer::BaseComponent.new(**@system_arguments) do %>
|
2
2
|
<% if heading.present? %>
|
3
|
-
<%= render Primer::BaseComponent.new(**heading.
|
3
|
+
<%= render Primer::BaseComponent.new(**heading.system_arguments) do %>
|
4
4
|
<%= heading.content %>
|
5
5
|
<% end %>
|
6
6
|
<% end %>
|
7
7
|
<% if actions.present? %>
|
8
|
-
<%= render Primer::BaseComponent.new(**actions.
|
8
|
+
<%= render Primer::BaseComponent.new(**actions.system_arguments) do %>
|
9
9
|
<%= actions.content %>
|
10
10
|
<% end %>
|
11
11
|
<% end %>
|
12
12
|
<% if description.present? %>
|
13
|
-
<%= render Primer::BaseComponent.new(**description.
|
13
|
+
<%= render Primer::BaseComponent.new(**description.system_arguments) do %>
|
14
14
|
<%= description.content %>
|
15
15
|
<% end %>
|
16
16
|
<% end %>
|
@@ -48,19 +48,19 @@ module Primer
|
|
48
48
|
#
|
49
49
|
# @param spacious [Boolean] Whether to add spacing to the Subhead.
|
50
50
|
# @param hide_border [Boolean] Whether to hide the border under the heading.
|
51
|
-
# @param
|
52
|
-
def initialize(spacious: false, hide_border: false, **
|
53
|
-
@
|
51
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
52
|
+
def initialize(spacious: false, hide_border: false, **system_arguments)
|
53
|
+
@system_arguments = system_arguments
|
54
54
|
|
55
|
-
@
|
56
|
-
@
|
55
|
+
@system_arguments[:tag] = :div
|
56
|
+
@system_arguments[:classes] =
|
57
57
|
class_names(
|
58
|
-
@
|
58
|
+
@system_arguments[:classes],
|
59
59
|
"Subhead hx_Subhead--responsive",
|
60
60
|
"Subhead--spacious": spacious,
|
61
61
|
"border-bottom-0": hide_border
|
62
62
|
)
|
63
|
-
@
|
63
|
+
@system_arguments[:mb] ||= hide_border ? 0 : nil
|
64
64
|
end
|
65
65
|
|
66
66
|
def render?
|
@@ -70,15 +70,15 @@ module Primer
|
|
70
70
|
class Heading < ViewComponent::Slot
|
71
71
|
include ClassNameHelper
|
72
72
|
|
73
|
-
attr_reader :
|
73
|
+
attr_reader :system_arguments
|
74
74
|
|
75
75
|
# @param danger [Boolean] Whether to style the heading as dangerous.
|
76
|
-
# @param
|
77
|
-
def initialize(danger: false, **
|
78
|
-
@
|
79
|
-
@
|
80
|
-
@
|
81
|
-
@
|
76
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
77
|
+
def initialize(danger: false, **system_arguments)
|
78
|
+
@system_arguments = system_arguments
|
79
|
+
@system_arguments[:tag] ||= :div
|
80
|
+
@system_arguments[:classes] = class_names(
|
81
|
+
@system_arguments[:classes],
|
82
82
|
"Subhead-heading",
|
83
83
|
"Subhead-heading--danger": danger
|
84
84
|
)
|
@@ -88,26 +88,26 @@ module Primer
|
|
88
88
|
class Actions < ViewComponent::Slot
|
89
89
|
include ClassNameHelper
|
90
90
|
|
91
|
-
attr_reader :
|
91
|
+
attr_reader :system_arguments
|
92
92
|
|
93
|
-
# @param
|
94
|
-
def initialize(**
|
95
|
-
@
|
96
|
-
@
|
97
|
-
@
|
93
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
94
|
+
def initialize(**system_arguments)
|
95
|
+
@system_arguments = system_arguments
|
96
|
+
@system_arguments[:tag] = :div
|
97
|
+
@system_arguments[:classes] = class_names(@system_arguments[:classes], "Subhead-actions")
|
98
98
|
end
|
99
99
|
end
|
100
100
|
|
101
101
|
class Description < ViewComponent::Slot
|
102
102
|
include ClassNameHelper
|
103
103
|
|
104
|
-
attr_reader :
|
104
|
+
attr_reader :system_arguments
|
105
105
|
|
106
|
-
# @param
|
107
|
-
def initialize(**
|
108
|
-
@
|
109
|
-
@
|
110
|
-
@
|
106
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
107
|
+
def initialize(**system_arguments)
|
108
|
+
@system_arguments = system_arguments
|
109
|
+
@system_arguments[:tag] = :div
|
110
|
+
@system_arguments[:classes] = class_names(@system_arguments[:classes], "Subhead-description")
|
111
111
|
end
|
112
112
|
end
|
113
113
|
end
|
@@ -7,14 +7,14 @@ module Primer
|
|
7
7
|
# <%= render(Primer::TextComponent.new(tag: :p, font_weight: :bold)) { "Bold Text" } %>
|
8
8
|
# <%= render(Primer::TextComponent.new(tag: :p, color: :red_5)) { "Red Text" } %>
|
9
9
|
#
|
10
|
-
# @param
|
11
|
-
def initialize(**
|
12
|
-
@
|
13
|
-
@
|
10
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
11
|
+
def initialize(**system_arguments)
|
12
|
+
@system_arguments = system_arguments
|
13
|
+
@system_arguments[:tag] ||= :span
|
14
14
|
end
|
15
15
|
|
16
16
|
def call
|
17
|
-
render(Primer::BaseComponent.new(**@
|
17
|
+
render(Primer::BaseComponent.new(**@system_arguments)) { content }
|
18
18
|
end
|
19
19
|
end
|
20
20
|
end
|
@@ -1,16 +1,16 @@
|
|
1
|
-
<%= render Primer::BaseComponent.new(**
|
1
|
+
<%= render Primer::BaseComponent.new(**system_arguments) do %>
|
2
2
|
<% if avatar %>
|
3
|
-
<%= render Primer::AvatarComponent.new(alt: avatar.alt, src: avatar.src, size: avatar.size, square: avatar.square, **avatar.
|
3
|
+
<%= render Primer::AvatarComponent.new(alt: avatar.alt, src: avatar.src, size: avatar.size, square: avatar.square, **avatar.system_arguments) %>
|
4
4
|
<% end %>
|
5
5
|
|
6
6
|
<% if badge %>
|
7
|
-
<%= render Primer::BaseComponent.new(**badge.
|
7
|
+
<%= render Primer::BaseComponent.new(**badge.system_arguments) do %>
|
8
8
|
<%= octicon badge.icon %>
|
9
9
|
<% end %>
|
10
10
|
<% end %>
|
11
11
|
|
12
12
|
<% if body %>
|
13
|
-
<%= render Primer::BaseComponent.new(**body.
|
13
|
+
<%= render Primer::BaseComponent.new(**body.system_arguments) do %>
|
14
14
|
<%= body.content %>
|
15
15
|
<% end %>
|
16
16
|
<% end %>
|
@@ -9,7 +9,7 @@ module Primer
|
|
9
9
|
with_slot :badge, class_name: "Badge"
|
10
10
|
with_slot :body, class_name: "Body"
|
11
11
|
|
12
|
-
attr_reader :
|
12
|
+
attr_reader :system_arguments
|
13
13
|
|
14
14
|
# @example 75|Default
|
15
15
|
# <div style="padding-left: 60px">
|
@@ -21,14 +21,14 @@ module Primer
|
|
21
21
|
# </div>
|
22
22
|
#
|
23
23
|
# @param condensed [Boolean] Reduce the vertical padding and remove the background from the badge item. Most commonly used in commits.
|
24
|
-
# @param
|
25
|
-
def initialize(condensed: false, **
|
26
|
-
@
|
27
|
-
@
|
28
|
-
@
|
24
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
25
|
+
def initialize(condensed: false, **system_arguments)
|
26
|
+
@system_arguments = system_arguments
|
27
|
+
@system_arguments[:tag] = :div
|
28
|
+
@system_arguments[:classes] = class_names(
|
29
29
|
"TimelineItem",
|
30
30
|
condensed ? "TimelineItem--condensed" : "",
|
31
|
-
|
31
|
+
system_arguments[:classes]
|
32
32
|
)
|
33
33
|
end
|
34
34
|
|
@@ -37,55 +37,55 @@ module Primer
|
|
37
37
|
end
|
38
38
|
|
39
39
|
class Avatar < Primer::Slot
|
40
|
-
attr_reader :
|
40
|
+
attr_reader :system_arguments, :alt, :src, :size, :square
|
41
41
|
|
42
42
|
# @param alt [String] Alt text for avatar image.
|
43
43
|
# @param src [String] Src attribute for avatar image.
|
44
44
|
# @param size [Integer] Image size.
|
45
45
|
# @param square [Boolean] Whether to round the edges of the image.
|
46
|
-
# @param
|
47
|
-
def initialize(alt: nil, src: nil, size: 40, square: true, **
|
46
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
47
|
+
def initialize(alt: nil, src: nil, size: 40, square: true, **system_arguments)
|
48
48
|
@alt = alt
|
49
49
|
@src = src
|
50
50
|
@size = size
|
51
51
|
@square = square
|
52
52
|
|
53
|
-
@
|
54
|
-
@
|
55
|
-
@
|
53
|
+
@system_arguments = system_arguments
|
54
|
+
@system_arguments[:tag] = :div
|
55
|
+
@system_arguments[:classes] = class_names(
|
56
56
|
"TimelineItem-avatar",
|
57
|
-
|
57
|
+
system_arguments[:classes]
|
58
58
|
)
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
62
62
|
class Badge < Primer::Slot
|
63
|
-
attr_reader :
|
63
|
+
attr_reader :system_arguments, :icon
|
64
64
|
|
65
65
|
# @param icon [String] Name of [Octicon](https://primer.style/octicons/) to use.
|
66
|
-
# @param
|
67
|
-
def initialize(icon: nil, **
|
66
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
67
|
+
def initialize(icon: nil, **system_arguments)
|
68
68
|
@icon = icon
|
69
69
|
|
70
|
-
@
|
71
|
-
@
|
72
|
-
@
|
70
|
+
@system_arguments = system_arguments
|
71
|
+
@system_arguments[:tag] = :div
|
72
|
+
@system_arguments[:classes] = class_names(
|
73
73
|
"TimelineItem-badge",
|
74
|
-
|
74
|
+
system_arguments[:classes]
|
75
75
|
)
|
76
76
|
end
|
77
77
|
end
|
78
78
|
|
79
79
|
class Body < Primer::Slot
|
80
|
-
attr_reader :
|
80
|
+
attr_reader :system_arguments
|
81
81
|
|
82
|
-
# @param
|
83
|
-
def initialize(**
|
84
|
-
@
|
85
|
-
@
|
86
|
-
@
|
82
|
+
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
83
|
+
def initialize(**system_arguments)
|
84
|
+
@system_arguments = system_arguments
|
85
|
+
@system_arguments[:tag] = :div
|
86
|
+
@system_arguments[:classes] = class_names(
|
87
87
|
"TimelineItem-body",
|
88
|
-
|
88
|
+
system_arguments[:classes]
|
89
89
|
)
|
90
90
|
end
|
91
91
|
end
|
@@ -7,13 +7,13 @@ module Primer
|
|
7
7
|
|
8
8
|
with_content_areas :body, :actions
|
9
9
|
|
10
|
-
def initialize(align: ALIGN_DEFAULT, **
|
10
|
+
def initialize(align: ALIGN_DEFAULT, **system_arguments)
|
11
11
|
@align = fetch_or_fallback(ALIGN_OPTIONS, align, ALIGN_DEFAULT)
|
12
12
|
|
13
|
-
@
|
14
|
-
@
|
15
|
-
@
|
16
|
-
@
|
13
|
+
@system_arguments = system_arguments
|
14
|
+
@system_arguments[:tag] = :nav
|
15
|
+
@system_arguments[:classes] = class_names(
|
16
|
+
@system_arguments[:classes],
|
17
17
|
"UnderlineNav",
|
18
18
|
"UnderlineNav--right" => @align == :right
|
19
19
|
)
|
data/lib/primer/classify.rb
CHANGED
@@ -9,7 +9,7 @@ module Primer
|
|
9
9
|
ALIGN_ITEMS_KEY = :align_items
|
10
10
|
DISPLAY_KEY = :display
|
11
11
|
RESPONSIVE_KEYS = ([DISPLAY_KEY, DIRECTION_KEY, JUSTIFY_CONTENT_KEY, ALIGN_ITEMS_KEY, :col, :float] + SPACING_KEYS).freeze
|
12
|
-
BREAKPOINTS = ["", "-sm", "-md", "-lg"]
|
12
|
+
BREAKPOINTS = ["", "-sm", "-md", "-lg", "-xl"]
|
13
13
|
|
14
14
|
# Keys where we can simply translate { key: value } into ".key-value"
|
15
15
|
CONCAT_KEYS = SPACING_KEYS + [:hide, :position, :v, :float, :col, :text, :box_shadow].freeze
|
@@ -131,9 +131,7 @@ module Primer
|
|
131
131
|
|
132
132
|
if invalid_class_names.any?
|
133
133
|
raise ArgumentError.new(
|
134
|
-
"Primer CSS class #{'name'.pluralize(invalid_class_names.length)}
|
135
|
-
#{invalid_class_names.to_sentence} #{'is'.pluralize(invalid_class_names.length)} \
|
136
|
-
not allowed, use style arguments instead (https://github.com/primer/view_components#built-in-styling-arguments). This warning will not be raised in production.",
|
134
|
+
"Use System Arguments (https://primer.style/view-components/system-arguments) instead of Primer CSS class #{'name'.pluralize(invalid_class_names.length)} #{invalid_class_names.to_sentence}. This warning will not be raised in production.",
|
137
135
|
)
|
138
136
|
end
|
139
137
|
end
|
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.
|
4
|
+
version: 0.0.13
|
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: 2020-10
|
11
|
+
date: 2020-11-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|