openproject-primer_view_components 0.53.0 → 0.54.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.
@@ -63,12 +63,14 @@ module Primer
63
63
 
64
64
  # @param form_arguments [Hash] Allows the dialog to submit a form. Pass EITHER the `builder:` option to this hash to reuse an existing Rails form, or `action:` if you prefer the component to render the form tag itself. `builder:` should be an instance of `ActionView::Helpers::FormBuilder`, which is created by the standard Rails `#form_with` and `#form_for` helpers. The `name:` option is the desired name of the field that will be included in the params sent to the server on form submission.
65
65
  # @param id [String] The id of the dialog.
66
+ # @param title [String] The title of the dialog. Although visually hidden, a label is rendered for assistive technologies.
66
67
  # @param confirm_button_text [String] The text of the confirm button. Will default to `I18n.t("button_delete")`, or `I18n.t("button_delete_permanently")` if `confirmation_check_box` slot has been passed to the component.
67
68
  # @param cancel_button_text [String] The text of the cancel button. Will default to `I18n.t("button_cancel")`.
68
69
  # @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
69
70
  def initialize(
70
71
  form_arguments: {},
71
72
  id: self.class.generate_id,
73
+ title:,
72
74
  confirm_button_text: nil,
73
75
  cancel_button_text: nil,
74
76
  **system_arguments
@@ -77,6 +79,9 @@ module Primer
77
79
  @form_wrapper = FormWrapper.new(**form_arguments)
78
80
  @dialog_id = id.to_s
79
81
 
82
+ @confirm_button_text = confirm_button_text
83
+ @cancel_button_text = cancel_button_text
84
+
80
85
  @system_arguments = system_arguments
81
86
  @system_arguments[:id] = @dialog_id
82
87
  @system_arguments[:classes] = class_names(
@@ -84,7 +89,7 @@ module Primer
84
89
  "DangerDialog"
85
90
  )
86
91
 
87
- @dialog = Primer::Alpha::Dialog.new(title: @system_arguments[:title], subtitle: nil, visually_hide_title: true, **@system_arguments)
92
+ @dialog = Primer::Alpha::Dialog.new(title: title, subtitle: nil, visually_hide_title: true, **@system_arguments)
88
93
  end
89
94
 
90
95
  delegate :labelledby, :header?, :header, :with_header, :with_header_content,
@@ -40,8 +40,9 @@ module Primer
40
40
 
41
41
  renders_one :footer
42
42
 
43
+ # @param title [String] The title of the dialog. Although visually hidden, a label is rendered for assistive technologies.
43
44
  # @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
44
- def initialize(**system_arguments)
45
+ def initialize(title:, **system_arguments)
45
46
  @system_arguments = system_arguments
46
47
  @system_arguments[:classes] = class_names(
47
48
  system_arguments[:classes],
@@ -49,7 +50,7 @@ module Primer
49
50
  )
50
51
  @system_arguments[:id] ||= self.class.generate_id
51
52
 
52
- @dialog = Primer::Alpha::Dialog.new(title: @system_arguments[:title], subtitle: nil, visually_hide_title: true, **@system_arguments)
53
+ @dialog = Primer::Alpha::Dialog.new(title: title, subtitle: nil, visually_hide_title: true, **@system_arguments)
53
54
  end
54
55
 
55
56
  delegate :header?, :header, :with_header, :with_header_content,
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Primer
4
+ module OpenProject
5
+ # This is a generic Heading component specifically for the use in the OpenProject context
6
+ # Use it for any Heading you need **inside** the page context.
7
+ # Do not use for a page header, we have Primer::OpenProject::PageHeader for that
8
+ class Heading < Primer::Component
9
+ status :open_project
10
+
11
+ # @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
12
+ def initialize(**system_arguments)
13
+ @system_arguments = system_arguments
14
+
15
+ # Override because of Primer::OpenProject::PageHeader which should be the
16
+ # most prominent element in the hierarchical structure
17
+ @system_arguments[:font_weight] ||= :normal
18
+ end
19
+
20
+ def call
21
+ render(Primer::Beta::Heading.new(**@system_arguments)) { content }
22
+ end
23
+ end
24
+ end
25
+ end
@@ -1 +1 @@
1
- .PageHeader{border-bottom:var(--borderWidth-thin) solid var(--borderColor-muted);display:flex;flex-flow:column;margin-bottom:var(--stack-gap-normal);padding-bottom:var(--stack-padding-condensed)}.PageHeader--withTabNav{border-bottom:none;margin-bottom:0;padding-bottom:0}.PageHeader-contextBar,.PageHeader-titleBar{align-items:center;display:flex;flex-flow:row;justify-content:flex-end;margin-bottom:var(--base-size-8)}.PageHeader-title{flex:1 1 auto;font-size:var(--text-title-size-medium);font-weight:var(--base-text-weight-normal)}.PageHeader-title--large{font-size:var(--text-title-size-large)}.PageHeader-description{color:var(--fgColor-muted);flex:1 100%;font-size:var(--text-body-size-medium)}.PageHeader-tabNavBar{overflow:auto}.PageHeader-tabNavBar .PageHeader-tabNav{min-width:max-content}.PageHeader--withTabNav .PageHeader-description{margin-bottom:var(--base-size-16)}.PageHeader-actions{align-items:center;display:flex;justify-content:flex-end}.PageHeader-breadcrumbs{display:block;width:100%}.PageHeader-leadingAction{margin-right:var(--base-size-4);margin-top:2px}.PageHeader-parentLink{flex:1 1 auto}
1
+ .PageHeader{border-bottom:var(--borderWidth-thin) solid var(--borderColor-muted);display:flex;flex-flow:column;margin-bottom:var(--stack-gap-normal);padding-bottom:var(--stack-padding-condensed)}.PageHeader--withTabNav{border-bottom:none;margin-bottom:0;padding-bottom:0}.PageHeader-contextBar,.PageHeader-titleBar{align-items:center;display:flex;flex-flow:row;justify-content:flex-end;margin-bottom:var(--base-size-8)}.PageHeader-title{flex:1 1 auto;font-size:var(--text-title-size-medium)}.PageHeader-title--large{font-size:var(--text-title-size-large)}.PageHeader-description{color:var(--fgColor-muted);flex:1 100%;font-size:var(--text-body-size-medium)}.PageHeader-tabNavBar{overflow:auto}.PageHeader-tabNavBar .PageHeader-tabNav{min-width:max-content}.PageHeader--withTabNav .PageHeader-description{margin-bottom:var(--base-size-16)}.PageHeader-actions{align-items:center;display:flex;justify-content:flex-end}.PageHeader-breadcrumbs{display:block;width:100%}.PageHeader-leadingAction{margin-right:var(--base-size-4);margin-top:2px}.PageHeader-parentLink{flex:1 1 auto}
@@ -1 +1 @@
1
- {"version":3,"sources":["page_header.pcss"],"names":[],"mappings":"AAEA,YAIE,oEAAqE,CAHrE,YAAa,CAIb,gBAAiB,CAFjB,qCAAsC,CADtC,6CAIF,CAEA,wBACE,kBAAmB,CAEnB,eAAgB,CADhB,gBAEF,CAUA,4CAIE,kBAAmB,CAHnB,YAAa,CACb,aAAc,CACd,wBAAyB,CAEzB,gCACF,CAEA,kBAGE,aAAc,CAFd,uCAAwC,CACxC,0CAEF,CAEA,yBACE,sCACF,CAGA,wBAEE,0BAA2B,CAC3B,WAAY,CAFZ,sCAGF,CAEA,sBACE,aACF,CAEA,yCACE,qBACF,CAEA,gDACE,iCACF,CAEA,oBAGE,kBAAmB,CADnB,YAAa,CADb,wBAGF,CAEA,wBACE,aAAc,CACd,UACF,CAEA,0BAEE,+BAAgC,CADhC,cAEF,CAEA,uBACE,aACF","file":"page_header.css","sourcesContent":["/* OP PageHeader */\n\n.PageHeader {\n display: flex;\n padding-bottom: var(--stack-padding-condensed);\n margin-bottom: var(--stack-gap-normal);\n border-bottom: var(--borderWidth-thin) solid var(--borderColor-muted);\n flex-flow: column;\n}\n\n.PageHeader--withTabNav {\n border-bottom: none;\n padding-bottom: 0;\n margin-bottom: 0;\n}\n\n.PageHeader-contextBar {\n display: flex;\n flex-flow: row;\n justify-content: flex-end;\n align-items: center;\n margin-bottom: var(--base-size-8);\n}\n\n.PageHeader-titleBar {\n display: flex;\n flex-flow: row;\n justify-content: flex-end;\n align-items: center; /* Keep back button vertically aligned. */\n margin-bottom: var(--base-size-8);\n}\n\n.PageHeader-title {\n font-size: var(--text-title-size-medium);\n font-weight: var(--base-text-weight-normal);\n flex: 1 1 auto;\n}\n\n.PageHeader-title--large {\n font-size: var(--text-title-size-large);\n}\n\n/* One-liner of supporting text */\n.PageHeader-description {\n font-size: var(--text-body-size-medium);\n color: var(--fgColor-muted);\n flex: 1 100%;\n}\n\n.PageHeader-tabNavBar {\n overflow: auto;\n}\n\n.PageHeader-tabNavBar .PageHeader-tabNav {\n min-width: max-content;\n}\n\n.PageHeader--withTabNav .PageHeader-description {\n margin-bottom: var(--base-size-16);\n}\n\n.PageHeader-actions {\n justify-content: flex-end;\n display: flex;\n align-items: center;\n}\n\n.PageHeader-breadcrumbs {\n display: block;\n width: 100%;\n}\n\n.PageHeader-leadingAction {\n margin-top: 2px; /* to center align with label */\n margin-right: var(--base-size-4);\n}\n\n.PageHeader-parentLink {\n flex: 1 1 auto;\n}\n"]}
1
+ {"version":3,"sources":["page_header.pcss"],"names":[],"mappings":"AAEA,YAIE,oEAAqE,CAHrE,YAAa,CAIb,gBAAiB,CAFjB,qCAAsC,CADtC,6CAIF,CAEA,wBACE,kBAAmB,CAEnB,eAAgB,CADhB,gBAEF,CAUA,4CAIE,kBAAmB,CAHnB,YAAa,CACb,aAAc,CACd,wBAAyB,CAEzB,gCACF,CAEA,kBAEE,aAAc,CADd,uCAEF,CAEA,yBACE,sCACF,CAGA,wBAEE,0BAA2B,CAC3B,WAAY,CAFZ,sCAGF,CAEA,sBACE,aACF,CAEA,yCACE,qBACF,CAEA,gDACE,iCACF,CAEA,oBAGE,kBAAmB,CADnB,YAAa,CADb,wBAGF,CAEA,wBACE,aAAc,CACd,UACF,CAEA,0BAEE,+BAAgC,CADhC,cAEF,CAEA,uBACE,aACF","file":"page_header.css","sourcesContent":["/* OP PageHeader */\n\n.PageHeader {\n display: flex;\n padding-bottom: var(--stack-padding-condensed);\n margin-bottom: var(--stack-gap-normal);\n border-bottom: var(--borderWidth-thin) solid var(--borderColor-muted);\n flex-flow: column;\n}\n\n.PageHeader--withTabNav {\n border-bottom: none;\n padding-bottom: 0;\n margin-bottom: 0;\n}\n\n.PageHeader-contextBar {\n display: flex;\n flex-flow: row;\n justify-content: flex-end;\n align-items: center;\n margin-bottom: var(--base-size-8);\n}\n\n.PageHeader-titleBar {\n display: flex;\n flex-flow: row;\n justify-content: flex-end;\n align-items: center; /* Keep back button vertically aligned. */\n margin-bottom: var(--base-size-8);\n}\n\n.PageHeader-title {\n font-size: var(--text-title-size-medium);\n flex: 1 1 auto;\n}\n\n.PageHeader-title--large {\n font-size: var(--text-title-size-large);\n}\n\n/* One-liner of supporting text */\n.PageHeader-description {\n font-size: var(--text-body-size-medium);\n color: var(--fgColor-muted);\n flex: 1 100%;\n}\n\n.PageHeader-tabNavBar {\n overflow: auto;\n}\n\n.PageHeader-tabNavBar .PageHeader-tabNav {\n min-width: max-content;\n}\n\n.PageHeader--withTabNav .PageHeader-description {\n margin-bottom: var(--base-size-16);\n}\n\n.PageHeader-actions {\n justify-content: flex-end;\n display: flex;\n align-items: center;\n}\n\n.PageHeader-breadcrumbs {\n display: block;\n width: 100%;\n}\n\n.PageHeader-leadingAction {\n margin-top: 2px; /* to center align with label */\n margin-right: var(--base-size-4);\n}\n\n.PageHeader-parentLink {\n flex: 1 1 auto;\n}\n"]}
@@ -32,7 +32,6 @@
32
32
 
33
33
  .PageHeader-title {
34
34
  font-size: var(--text-title-size-medium);
35
- font-weight: var(--base-text-weight-normal);
36
35
  flex: 1 1 auto;
37
36
  }
38
37
 
@@ -5,7 +5,7 @@ module Primer
5
5
  module ViewComponents
6
6
  module VERSION
7
7
  MAJOR = 0
8
- MINOR = 53
8
+ MINOR = 54
9
9
  PATCH = 0
10
10
 
11
11
  STRING = [MAJOR, MINOR, PATCH].join(".")
@@ -1,4 +1,5 @@
1
1
  <%= render(Primer::OpenProject::DangerDialog.new(id: "my-dialog",
2
+ title: "My dialog",
2
3
  confirm_button_text: confirm_button_text,
3
4
  cancel_button_text: cancel_button_text)) do |dialog| %>
4
5
  <% dialog.with_show_button { "Click me" } %>
@@ -1,4 +1,4 @@
1
- <%= render(Primer::OpenProject::DangerDialog.new) do |dialog| %>
1
+ <%= render(Primer::OpenProject::DangerDialog.new(title: "Delete work packages")) do |dialog| %>
2
2
  <% dialog.with_show_button { "Click me" } %>
3
3
  <% dialog.with_confirmation_message do |message| %>
4
4
  <% message.with_heading(tag: :h2).with_content("Delete 5 work packages?") %>
@@ -1,4 +1,4 @@
1
- <%= render(Primer::OpenProject::FeedbackDialog.new(id: "my-dialog")) do |dialog| %>
1
+ <%= render(Primer::OpenProject::FeedbackDialog.new(id: "my-dialog", title: "My dialog")) do |dialog| %>
2
2
  <% dialog.with_show_button { "Click me" } %>
3
3
  <% dialog.with_feedback_message(icon_arguments: { icon: icon, color: icon_color }, loading: loading_state) do |message| %>
4
4
  <% message.with_heading(tag: :h2).with_content("Awesome!") %>
@@ -1,4 +1,4 @@
1
- <%= render(Primer::OpenProject::FeedbackDialog.new) do |dialog| %>
1
+ <%= render(Primer::OpenProject::FeedbackDialog.new(title: "Success message")) do |dialog| %>
2
2
  <% dialog.with_show_button { "Click me" } %>
3
3
  <% dialog.with_feedback_message do |message| %>
4
4
  <% message.with_heading(tag: :h2).with_content("Action successful") %>
@@ -1,4 +1,4 @@
1
- <%= render(Primer::OpenProject::FeedbackDialog.new(id: "my-dialog")) do |dialog| %>
1
+ <%= render(Primer::OpenProject::FeedbackDialog.new(id: "my-dialog", title: "Custom footer")) do |dialog| %>
2
2
  <% dialog.with_show_button { "Click me" } %>
3
3
  <% dialog.with_feedback_message do |message| %>
4
4
  <% message.with_heading(tag: :h2).with_content("Action successful") %>
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Setup Playground to use all available component props
4
+ # Setup Features to use individual component props and combinations
5
+
6
+ module Primer
7
+ module OpenProject
8
+ # @label Heading
9
+ class HeadingPreview < ViewComponent::Preview
10
+ # @label Playground
11
+ # @param tag [Symbol] select [h1, h2, h3, h4, h5, h6]
12
+ # @param content [String] text
13
+ def playground(tag: :h2, content: "Heading")
14
+ render(Primer::OpenProject::Heading.new(tag: tag)) { content }
15
+ end
16
+
17
+ # @label Default options
18
+ #
19
+ # @param tag [Symbol] select [h1, h2, h3, h4, h5, h6]
20
+ # @param content [String] text
21
+ # @snapshot
22
+ def default(tag: :h2, content: "Heading")
23
+ render(Primer::OpenProject::Heading.new(tag: tag)) { content }
24
+ end
25
+ end
26
+ end
27
+ end
@@ -5131,6 +5131,12 @@
5131
5131
  "default": "`self.class.generate_id`",
5132
5132
  "description": "The id of the dialog."
5133
5133
  },
5134
+ {
5135
+ "name": "title",
5136
+ "type": "String",
5137
+ "default": "N/A",
5138
+ "description": "The title of the dialog. Although visually hidden, a label is rendered for assistive technologies."
5139
+ },
5134
5140
  {
5135
5141
  "name": "confirm_button_text",
5136
5142
  "type": "String",
@@ -5214,6 +5220,12 @@
5214
5220
  "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/feedback_dialog.rb",
5215
5221
  "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/feedback_dialog/default/",
5216
5222
  "parameters": [
5223
+ {
5224
+ "name": "title",
5225
+ "type": "String",
5226
+ "default": "N/A",
5227
+ "description": "The title of the dialog. Although visually hidden, a label is rendered for assistive technologies."
5228
+ },
5217
5229
  {
5218
5230
  "name": "system_arguments",
5219
5231
  "type": "Hash",
@@ -5328,6 +5340,22 @@
5328
5340
  }
5329
5341
  ]
5330
5342
  },
5343
+ {
5344
+ "component": "OpenProject::Heading",
5345
+ "status": "open_project",
5346
+ "a11y_reviewed": false,
5347
+ "short_name": "OpenProjectHeading",
5348
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/heading.rb",
5349
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/heading/default/",
5350
+ "parameters": [
5351
+ {
5352
+ "name": "system_arguments",
5353
+ "type": "Hash",
5354
+ "default": "N/A",
5355
+ "description": "[System arguments](/system-arguments)"
5356
+ }
5357
+ ]
5358
+ },
5331
5359
  {
5332
5360
  "component": "OpenProject::InputGroup",
5333
5361
  "status": "open_project",
@@ -127,6 +127,7 @@
127
127
  "Primer::OpenProject::FlexLayout": "",
128
128
  "Primer::OpenProject::GridLayout": "",
129
129
  "Primer::OpenProject::GridLayout::Area": "",
130
+ "Primer::OpenProject::Heading": "",
130
131
  "Primer::OpenProject::InputGroup": "",
131
132
  "Primer::OpenProject::PageHeader": "",
132
133
  "Primer::OpenProject::PageHeader::Dialog": "",
@@ -1602,6 +1602,9 @@
1602
1602
  "span"
1603
1603
  ]
1604
1604
  },
1605
+ "Primer::OpenProject::Heading": {
1606
+ "GeneratedSlotMethods": "Primer::OpenProject::Heading::GeneratedSlotMethods"
1607
+ },
1605
1608
  "Primer::OpenProject::InputGroup": {
1606
1609
  "DEFAULT_INPUT_WIDTH": "auto",
1607
1610
  "GeneratedSlotMethods": "Primer::OpenProject::InputGroup::GeneratedSlotMethods",
@@ -17532,6 +17532,12 @@
17532
17532
  "default": "`self.class.generate_id`",
17533
17533
  "description": "The id of the dialog."
17534
17534
  },
17535
+ {
17536
+ "name": "title",
17537
+ "type": "String",
17538
+ "default": "N/A",
17539
+ "description": "The title of the dialog. Although visually hidden, a label is rendered for assistive technologies."
17540
+ },
17535
17541
  {
17536
17542
  "name": "confirm_button_text",
17537
17543
  "type": "String",
@@ -17878,6 +17884,12 @@
17878
17884
  "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/feedback_dialog.rb",
17879
17885
  "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/feedback_dialog/default/",
17880
17886
  "parameters": [
17887
+ {
17888
+ "name": "title",
17889
+ "type": "String",
17890
+ "default": "N/A",
17891
+ "description": "The title of the dialog. Although visually hidden, a label is rendered for assistive technologies."
17892
+ },
17881
17893
  {
17882
17894
  "name": "system_arguments",
17883
17895
  "type": "Hash",
@@ -18390,6 +18402,65 @@
18390
18402
 
18391
18403
  ]
18392
18404
  },
18405
+ {
18406
+ "fully_qualified_name": "Primer::OpenProject::Heading",
18407
+ "description": "This is a generic Heading component specifically for the use in the OpenProject context\nUse it for any Heading you need **inside** the page context.\nDo not use for a page header, we have Primer::OpenProject::PageHeader for that",
18408
+ "accessibility_docs": null,
18409
+ "is_form_component": false,
18410
+ "is_published": true,
18411
+ "requires_js": false,
18412
+ "component": "OpenProject::Heading",
18413
+ "status": "open_project",
18414
+ "a11y_reviewed": false,
18415
+ "short_name": "OpenProjectHeading",
18416
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/heading.rb",
18417
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/heading/default/",
18418
+ "parameters": [
18419
+ {
18420
+ "name": "system_arguments",
18421
+ "type": "Hash",
18422
+ "default": "N/A",
18423
+ "description": "{{link_to_system_arguments_docs}}"
18424
+ }
18425
+ ],
18426
+ "slots": [
18427
+
18428
+ ],
18429
+ "methods": [
18430
+
18431
+ ],
18432
+ "previews": [
18433
+ {
18434
+ "preview_path": "primer/open_project/heading/playground",
18435
+ "name": "playground",
18436
+ "snapshot": "false",
18437
+ "skip_rules": {
18438
+ "wont_fix": [
18439
+ "region"
18440
+ ],
18441
+ "will_fix": [
18442
+ "color-contrast"
18443
+ ]
18444
+ }
18445
+ },
18446
+ {
18447
+ "preview_path": "primer/open_project/heading/default",
18448
+ "name": "default",
18449
+ "snapshot": "true",
18450
+ "skip_rules": {
18451
+ "wont_fix": [
18452
+ "region"
18453
+ ],
18454
+ "will_fix": [
18455
+ "color-contrast"
18456
+ ]
18457
+ }
18458
+ }
18459
+ ],
18460
+ "subcomponents": [
18461
+
18462
+ ]
18463
+ },
18393
18464
  {
18394
18465
  "fully_qualified_name": "Primer::OpenProject::InputGroup",
18395
18466
  "description": "`InputGroup` is composed of a text field input with a trailing action",
data/static/previews.json CHANGED
@@ -4296,6 +4296,40 @@
4296
4296
  }
4297
4297
  ]
4298
4298
  },
4299
+ {
4300
+ "name": "heading",
4301
+ "component": "OpenProject::Heading",
4302
+ "status": "open_project",
4303
+ "lookup_path": "primer/open_project/heading",
4304
+ "examples": [
4305
+ {
4306
+ "preview_path": "primer/open_project/heading/playground",
4307
+ "name": "playground",
4308
+ "snapshot": "false",
4309
+ "skip_rules": {
4310
+ "wont_fix": [
4311
+ "region"
4312
+ ],
4313
+ "will_fix": [
4314
+ "color-contrast"
4315
+ ]
4316
+ }
4317
+ },
4318
+ {
4319
+ "preview_path": "primer/open_project/heading/default",
4320
+ "name": "default",
4321
+ "snapshot": "true",
4322
+ "skip_rules": {
4323
+ "wont_fix": [
4324
+ "region"
4325
+ ],
4326
+ "will_fix": [
4327
+ "color-contrast"
4328
+ ]
4329
+ }
4330
+ }
4331
+ ]
4332
+ },
4299
4333
  {
4300
4334
  "name": "hellip_button",
4301
4335
  "component": "HellipButton",
data/static/statuses.json CHANGED
@@ -127,6 +127,7 @@
127
127
  "Primer::OpenProject::FlexLayout": "open_project",
128
128
  "Primer::OpenProject::GridLayout": "open_project",
129
129
  "Primer::OpenProject::GridLayout::Area": "open_project",
130
+ "Primer::OpenProject::Heading": "open_project",
130
131
  "Primer::OpenProject::InputGroup": "open_project",
131
132
  "Primer::OpenProject::PageHeader": "open_project",
132
133
  "Primer::OpenProject::PageHeader::Dialog": "open_project",
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openproject-primer_view_components
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.53.0
4
+ version: 0.54.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitHub Open Source
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2025-02-04 00:00:00.000000000 Z
12
+ date: 2025-02-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: actionview
@@ -516,6 +516,7 @@ files:
516
516
  - app/components/primer/open_project/grid_layout.html.erb
517
517
  - app/components/primer/open_project/grid_layout.rb
518
518
  - app/components/primer/open_project/grid_layout/area.rb
519
+ - app/components/primer/open_project/heading.rb
519
520
  - app/components/primer/open_project/input_group.css
520
521
  - app/components/primer/open_project/input_group.css.json
521
522
  - app/components/primer/open_project/input_group.css.map
@@ -1043,6 +1044,7 @@ files:
1043
1044
  - previews/primer/open_project/feedback_message_preview.rb
1044
1045
  - previews/primer/open_project/flex_layout_preview.rb
1045
1046
  - previews/primer/open_project/grid_layout_preview.rb
1047
+ - previews/primer/open_project/heading_preview.rb
1046
1048
  - previews/primer/open_project/input_group_preview.rb
1047
1049
  - previews/primer/open_project/page_header_preview.rb
1048
1050
  - previews/primer/open_project/page_header_preview/actions.html.erb