openproject-primer_view_components 0.9.0 → 0.9.1
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 +9 -1
- data/app/assets/styles/primer_view_components.css +1 -1
- data/app/assets/styles/primer_view_components.css.map +1 -1
- data/app/components/primer/open_project/page_header.css +1 -1
- data/app/components/primer/open_project/page_header.css.json +1 -0
- data/app/components/primer/open_project/page_header.css.map +1 -1
- data/app/components/primer/open_project/page_header.pcss +6 -1
- data/app/components/primer/open_project/page_header.rb +13 -3
- data/lib/primer/view_components/version.rb +1 -1
- data/previews/primer/open_project/page_header_preview.rb +13 -4
- data/static/arguments.json +11 -0
- data/static/audited_at.json +1 -0
- data/static/classes.json +3 -0
- data/static/constants.json +16 -0
- data/static/info_arch.json +116 -0
- data/static/previews.json +20 -7
- data/static/statuses.json +1 -0
- metadata +2 -2
@@ -1 +1 @@
|
|
1
|
-
.PageHeader{border-bottom:var(--borderWidth-thin,max(1px,.0625rem)) solid var(--borderColor-muted,var(--color-border-muted));display:flex;flex-flow:row wrap;justify-content:flex-end;margin-bottom:var(--stack-gap-normal,1rem);padding-bottom:var(--stack-padding-condensed,.5rem)}.PageHeader-title{flex:1 1 auto;order:0}.PageHeader-description{color:var(--fgColor-muted,var(--color-fg-muted));flex:1 100%;font-size:var(--text-body-size-medium,.875rem);order:2}.PageHeader-actions{align-self:center;justify-content:flex-end;margin:var(--base-size-4,.25rem) 0 var(--base-size-4,.25rem) var(--base-size-4,.25rem);order:1}.PageHeader-actions+.PageHeader-description{margin-top:var(--base-size-4,.25rem)}
|
1
|
+
.PageHeader{border-bottom:var(--borderWidth-thin,max(1px,.0625rem)) solid var(--borderColor-muted,var(--color-border-muted));display:flex;flex-flow:row wrap;justify-content:flex-end;margin-bottom:var(--stack-gap-normal,1rem);padding-bottom:var(--stack-padding-condensed,.5rem)}.PageHeader-title{flex:1 1 auto;font-size:24px;font-weight:var(--base-text-weight-normal,400);order:0}.PageHeader-title--large{font-size:var(--text-title-size-large,2rem)}.PageHeader-description{color:var(--fgColor-muted,var(--color-fg-muted));flex:1 100%;font-size:var(--text-body-size-medium,.875rem);order:2}.PageHeader-actions{align-self:center;justify-content:flex-end;margin:var(--base-size-4,.25rem) 0 var(--base-size-4,.25rem) var(--base-size-4,.25rem);order:1}.PageHeader-actions+.PageHeader-description{margin-top:var(--base-size-4,.25rem)}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["page_header.pcss"],"names":[],"mappings":"AAEA,YAIE,gHAAqE,CAHrE,YAAa,CAIb,kBAAmB,CACnB,wBAAyB,CAHzB,0CAAsC,CADtC,mDAKF,
|
1
|
+
{"version":3,"sources":["page_header.pcss"],"names":[],"mappings":"AAEA,YAIE,gHAAqE,CAHrE,YAAa,CAIb,kBAAmB,CACnB,wBAAyB,CAHzB,0CAAsC,CADtC,mDAKF,CAEA,kBAGE,aAAc,CAFd,cAAe,CACf,8CAA2C,CAE3C,OACF,CAEA,yBACE,2CACF,CAGA,wBAEE,gDAA2B,CAC3B,WAAY,CAFZ,8CAAuC,CAGvC,OACF,CAGA,oBAEE,iBAAkB,CAClB,wBAAyB,CAFzB,sFAAkE,CAGlE,OAKF,CAHE,4CACE,oCACF","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: row wrap;\n justify-content: flex-end; /* Keep actions right aligned. */\n}\n\n.PageHeader-title {\n font-size: 24px;\n font-weight: var(--base-text-weight-normal);\n flex: 1 1 auto;\n order: 0;\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 order: 2;\n}\n\n/* Add 1 or 2 buttons to the right of the heading */\n.PageHeader-actions {\n margin: var(--base-size-4) 0 var(--base-size-4) var(--base-size-4);\n align-self: center;\n justify-content: flex-end;\n order: 1;\n\n & + .PageHeader-description {\n margin-top: var(--base-size-4);\n }\n}\n"]}
|
@@ -9,12 +9,17 @@
|
|
9
9
|
justify-content: flex-end; /* Keep actions right aligned. */
|
10
10
|
}
|
11
11
|
|
12
|
-
/* <h2> sized heading with normal font weight */
|
13
12
|
.PageHeader-title {
|
13
|
+
font-size: 24px;
|
14
|
+
font-weight: var(--base-text-weight-normal);
|
14
15
|
flex: 1 1 auto;
|
15
16
|
order: 0;
|
16
17
|
}
|
17
18
|
|
19
|
+
.PageHeader-title--large {
|
20
|
+
font-size: var(--text-title-size-large);
|
21
|
+
}
|
22
|
+
|
18
23
|
/* One-liner of supporting text */
|
19
24
|
.PageHeader-description {
|
20
25
|
font-size: var(--text-body-size-medium);
|
@@ -5,7 +5,13 @@ module Primer
|
|
5
5
|
# A ViewComponent PageHeader inspired by the primer react variant
|
6
6
|
class PageHeader < Primer::Component
|
7
7
|
HEADING_TAG_OPTIONS = [:h1, :h2, :h3, :h4, :h5, :h6].freeze
|
8
|
-
HEADING_TAG_FALLBACK = :
|
8
|
+
HEADING_TAG_FALLBACK = :h2
|
9
|
+
|
10
|
+
DEFAULT_HEADER_VARIANT = :medium
|
11
|
+
HEADER_VARIANT_OPTIONS = [
|
12
|
+
:large,
|
13
|
+
DEFAULT_HEADER_VARIANT
|
14
|
+
].freeze
|
9
15
|
|
10
16
|
status :open_project
|
11
17
|
|
@@ -13,9 +19,13 @@ module Primer
|
|
13
19
|
#
|
14
20
|
# @param tag [Symbol] <%= one_of(Primer::Beta::Heading::TAG_OPTIONS) %>
|
15
21
|
# @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
|
16
|
-
renders_one :title, lambda { |tag: :
|
22
|
+
renders_one :title, lambda { |tag: HEADING_TAG_FALLBACK, variant: DEFAULT_HEADER_VARIANT, **system_arguments|
|
17
23
|
system_arguments[:tag] = fetch_or_fallback(HEADING_TAG_OPTIONS, tag, HEADING_TAG_FALLBACK)
|
18
|
-
system_arguments[:classes] = class_names(
|
24
|
+
system_arguments[:classes] = class_names(
|
25
|
+
system_arguments[:classes],
|
26
|
+
"PageHeader-title",
|
27
|
+
"PageHeader-title--#{variant}"
|
28
|
+
)
|
19
29
|
|
20
30
|
Primer::BaseComponent.new(**system_arguments)
|
21
31
|
}
|
@@ -14,12 +14,21 @@ module Primer
|
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
|
-
|
18
17
|
# @label Playground
|
19
|
-
#
|
20
|
-
|
18
|
+
# @param variant [Symbol] select [medium, large]
|
19
|
+
# @param title [String] text
|
20
|
+
# @param description [String] text
|
21
|
+
def playground(variant: :medium, title: "Hello", description: "Last updated 5 minutes ago by XYZ.")
|
21
22
|
render(Primer::OpenProject::PageHeader.new) do |header|
|
22
|
-
header.with_title {
|
23
|
+
header.with_title(variant: variant) { title }
|
24
|
+
header.with_description { description }
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
# @label Large
|
29
|
+
def large_title
|
30
|
+
render(Primer::OpenProject::PageHeader.new) do |header|
|
31
|
+
header.with_title(variant: :large) { "Hello" }
|
23
32
|
header.with_description { "Last updated 5 minutes ago by XYZ." }
|
24
33
|
end
|
25
34
|
end
|
data/static/arguments.json
CHANGED
@@ -4423,6 +4423,17 @@
|
|
4423
4423
|
}
|
4424
4424
|
]
|
4425
4425
|
},
|
4426
|
+
{
|
4427
|
+
"component": "OpenProject::PageHeader",
|
4428
|
+
"status": "open_project",
|
4429
|
+
"a11y_reviewed": false,
|
4430
|
+
"short_name": "OpenProjectPageHeader",
|
4431
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/page_header.rb",
|
4432
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/page_header/default/",
|
4433
|
+
"parameters": [
|
4434
|
+
|
4435
|
+
]
|
4436
|
+
},
|
4426
4437
|
{
|
4427
4438
|
"component": "Tooltip",
|
4428
4439
|
"status": "deprecated",
|
data/static/audited_at.json
CHANGED
data/static/classes.json
CHANGED
data/static/constants.json
CHANGED
@@ -1300,6 +1300,22 @@
|
|
1300
1300
|
},
|
1301
1301
|
"Primer::Navigation::TabComponent": {
|
1302
1302
|
},
|
1303
|
+
"Primer::OpenProject::PageHeader": {
|
1304
|
+
"DEFAULT_HEADER_VARIANT": "medium",
|
1305
|
+
"HEADER_VARIANT_OPTIONS": [
|
1306
|
+
"large",
|
1307
|
+
"medium"
|
1308
|
+
],
|
1309
|
+
"HEADING_TAG_FALLBACK": "h2",
|
1310
|
+
"HEADING_TAG_OPTIONS": [
|
1311
|
+
"h1",
|
1312
|
+
"h2",
|
1313
|
+
"h3",
|
1314
|
+
"h4",
|
1315
|
+
"h5",
|
1316
|
+
"h6"
|
1317
|
+
]
|
1318
|
+
},
|
1303
1319
|
"Primer::Tooltip": {
|
1304
1320
|
"ALIGN_DEFAULT": "default",
|
1305
1321
|
"ALIGN_MAPPING": {
|
data/static/info_arch.json
CHANGED
@@ -14364,6 +14364,122 @@
|
|
14364
14364
|
|
14365
14365
|
]
|
14366
14366
|
},
|
14367
|
+
{
|
14368
|
+
"fully_qualified_name": "Primer::OpenProject::PageHeader",
|
14369
|
+
"description": "A ViewComponent PageHeader inspired by the primer react variant",
|
14370
|
+
"accessibility_docs": null,
|
14371
|
+
"is_form_component": false,
|
14372
|
+
"is_published": true,
|
14373
|
+
"requires_js": false,
|
14374
|
+
"component": "OpenProject::PageHeader",
|
14375
|
+
"status": "open_project",
|
14376
|
+
"a11y_reviewed": false,
|
14377
|
+
"short_name": "OpenProjectPageHeader",
|
14378
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/page_header.rb",
|
14379
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/page_header/default/",
|
14380
|
+
"parameters": [
|
14381
|
+
|
14382
|
+
],
|
14383
|
+
"slots": [
|
14384
|
+
{
|
14385
|
+
"name": "title",
|
14386
|
+
"description": "The title of the page header",
|
14387
|
+
"parameters": [
|
14388
|
+
{
|
14389
|
+
"name": "tag",
|
14390
|
+
"type": "Symbol",
|
14391
|
+
"default": "N/A",
|
14392
|
+
"description": "One of `:h1`, `:h2`, `:h3`, `:h4`, `:h5`, or `:h6`."
|
14393
|
+
},
|
14394
|
+
{
|
14395
|
+
"name": "system_arguments",
|
14396
|
+
"type": "Hash",
|
14397
|
+
"default": "N/A",
|
14398
|
+
"description": "{{link_to_system_arguments_docs}}"
|
14399
|
+
}
|
14400
|
+
]
|
14401
|
+
},
|
14402
|
+
{
|
14403
|
+
"name": "description",
|
14404
|
+
"description": "Optional description below the title row",
|
14405
|
+
"parameters": [
|
14406
|
+
|
14407
|
+
]
|
14408
|
+
},
|
14409
|
+
{
|
14410
|
+
"name": "actions",
|
14411
|
+
"description": "Actions",
|
14412
|
+
"parameters": [
|
14413
|
+
{
|
14414
|
+
"name": "system_arguments",
|
14415
|
+
"type": "Hash",
|
14416
|
+
"default": "N/A",
|
14417
|
+
"description": "{{link_to_system_arguments_docs}}"
|
14418
|
+
}
|
14419
|
+
]
|
14420
|
+
}
|
14421
|
+
],
|
14422
|
+
"methods": [
|
14423
|
+
|
14424
|
+
],
|
14425
|
+
"previews": [
|
14426
|
+
{
|
14427
|
+
"preview_path": "primer/open_project/page_header/default",
|
14428
|
+
"name": "default",
|
14429
|
+
"snapshot": "true",
|
14430
|
+
"skip_rules": {
|
14431
|
+
"wont_fix": [
|
14432
|
+
"region"
|
14433
|
+
],
|
14434
|
+
"will_fix": [
|
14435
|
+
"color-contrast"
|
14436
|
+
]
|
14437
|
+
}
|
14438
|
+
},
|
14439
|
+
{
|
14440
|
+
"preview_path": "primer/open_project/page_header/playground",
|
14441
|
+
"name": "playground",
|
14442
|
+
"snapshot": "false",
|
14443
|
+
"skip_rules": {
|
14444
|
+
"wont_fix": [
|
14445
|
+
"region"
|
14446
|
+
],
|
14447
|
+
"will_fix": [
|
14448
|
+
"color-contrast"
|
14449
|
+
]
|
14450
|
+
}
|
14451
|
+
},
|
14452
|
+
{
|
14453
|
+
"preview_path": "primer/open_project/page_header/large_title",
|
14454
|
+
"name": "large_title",
|
14455
|
+
"snapshot": "false",
|
14456
|
+
"skip_rules": {
|
14457
|
+
"wont_fix": [
|
14458
|
+
"region"
|
14459
|
+
],
|
14460
|
+
"will_fix": [
|
14461
|
+
"color-contrast"
|
14462
|
+
]
|
14463
|
+
}
|
14464
|
+
},
|
14465
|
+
{
|
14466
|
+
"preview_path": "primer/open_project/page_header/actions",
|
14467
|
+
"name": "actions",
|
14468
|
+
"snapshot": "false",
|
14469
|
+
"skip_rules": {
|
14470
|
+
"wont_fix": [
|
14471
|
+
"region"
|
14472
|
+
],
|
14473
|
+
"will_fix": [
|
14474
|
+
"color-contrast"
|
14475
|
+
]
|
14476
|
+
}
|
14477
|
+
}
|
14478
|
+
],
|
14479
|
+
"subcomponents": [
|
14480
|
+
|
14481
|
+
]
|
14482
|
+
},
|
14367
14483
|
{
|
14368
14484
|
"fully_qualified_name": "Primer::Tooltip",
|
14369
14485
|
"description": "`Tooltip` is a wrapper component that will apply a tooltip to the provided content.",
|
data/static/previews.json
CHANGED
@@ -4434,14 +4434,27 @@
|
|
4434
4434
|
},
|
4435
4435
|
{
|
4436
4436
|
"name": "page_header",
|
4437
|
-
"component": "PageHeader",
|
4438
|
-
"status": "
|
4437
|
+
"component": "OpenProject::PageHeader",
|
4438
|
+
"status": "open_project",
|
4439
4439
|
"lookup_path": "primer/open_project/page_header",
|
4440
4440
|
"examples": [
|
4441
|
+
{
|
4442
|
+
"preview_path": "primer/open_project/page_header/default",
|
4443
|
+
"name": "default",
|
4444
|
+
"snapshot": "true",
|
4445
|
+
"skip_rules": {
|
4446
|
+
"wont_fix": [
|
4447
|
+
"region"
|
4448
|
+
],
|
4449
|
+
"will_fix": [
|
4450
|
+
"color-contrast"
|
4451
|
+
]
|
4452
|
+
}
|
4453
|
+
},
|
4441
4454
|
{
|
4442
4455
|
"preview_path": "primer/open_project/page_header/playground",
|
4443
4456
|
"name": "playground",
|
4444
|
-
"snapshot": "
|
4457
|
+
"snapshot": "false",
|
4445
4458
|
"skip_rules": {
|
4446
4459
|
"wont_fix": [
|
4447
4460
|
"region"
|
@@ -4452,9 +4465,9 @@
|
|
4452
4465
|
}
|
4453
4466
|
},
|
4454
4467
|
{
|
4455
|
-
"preview_path": "primer/open_project/page_header/
|
4456
|
-
"name": "
|
4457
|
-
"snapshot": "
|
4468
|
+
"preview_path": "primer/open_project/page_header/large_title",
|
4469
|
+
"name": "large_title",
|
4470
|
+
"snapshot": "false",
|
4458
4471
|
"skip_rules": {
|
4459
4472
|
"wont_fix": [
|
4460
4473
|
"region"
|
@@ -4467,7 +4480,7 @@
|
|
4467
4480
|
{
|
4468
4481
|
"preview_path": "primer/open_project/page_header/actions",
|
4469
4482
|
"name": "actions",
|
4470
|
-
"snapshot": "
|
4483
|
+
"snapshot": "false",
|
4471
4484
|
"skip_rules": {
|
4472
4485
|
"wont_fix": [
|
4473
4486
|
"region"
|
data/static/statuses.json
CHANGED
@@ -102,6 +102,7 @@
|
|
102
102
|
"Primer::IconButton": "deprecated",
|
103
103
|
"Primer::LayoutComponent": "deprecated",
|
104
104
|
"Primer::Navigation::TabComponent": "deprecated",
|
105
|
+
"Primer::OpenProject::PageHeader": "open_project",
|
105
106
|
"Primer::Tooltip": "deprecated",
|
106
107
|
"Primer::Truncate": "deprecated"
|
107
108
|
}
|
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.9.
|
4
|
+
version: 0.9.1
|
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: 2023-09-
|
12
|
+
date: 2023-09-08 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: actionview
|