From ee2b856a3ec0a8eb0b548c0f11aa94eff5235b27 Mon Sep 17 00:00:00 2001 From: Tobias Bieniek Date: Sun, 7 Feb 2021 14:16:58 +0100 Subject: [PATCH 1/4] Extract `CrateHeader` component --- app/components/crate-header.hbs | 31 +++++++++++++++ app/components/crate-header.js | 6 +++ app/components/crate-header.module.css | 52 +++++++++++++++++++++++++ app/styles/crate/version.module.css | 53 -------------------------- app/templates/crate/version.hbs | 35 +---------------- 5 files changed, 90 insertions(+), 87 deletions(-) create mode 100644 app/components/crate-header.hbs create mode 100644 app/components/crate-header.js create mode 100644 app/components/crate-header.module.css diff --git a/app/components/crate-header.hbs b/app/components/crate-header.hbs new file mode 100644 index 00000000000..1e65819a5fd --- /dev/null +++ b/app/components/crate-header.hbs @@ -0,0 +1,31 @@ + +
+
+ {{svg-jar "crate" local-class="crate-icon"}} +

{{@crate.name}}

+

{{@version.num}}

+
+ + {{#if this.session.currentUser}} + + {{/if}} +
+ + +
\ No newline at end of file diff --git a/app/components/crate-header.js b/app/components/crate-header.js new file mode 100644 index 00000000000..31ade95919b --- /dev/null +++ b/app/components/crate-header.js @@ -0,0 +1,6 @@ +import { inject as service } from '@ember/service'; +import Component from '@glimmer/component'; + +export default class CrateHeader extends Component { + @service session; +} diff --git a/app/components/crate-header.module.css b/app/components/crate-header.module.css new file mode 100644 index 00000000000..e176b73eeb0 --- /dev/null +++ b/app/components/crate-header.module.css @@ -0,0 +1,52 @@ +.header { + padding-top: 30px; + padding-bottom: 30px; +} + +.header-row { + display: flex; + justify-content: space-between; + padding-bottom: 10px; +} + +.heading { + display: flex; + align-items: center; + + h1, h2 { + margin: 0; + padding: 0; + } + + h2 { + color: var(--main-color-light); + margin-left: 10px; + } +} + +.crate-icon { + flex-shrink: 0; + margin-right: 10px; + width: 32px; + height: 32px; +} + +.quick-links { + display: flex; + flex-direction: row; + flex-wrap: wrap; + + font-size: 80%; + list-style-type: none; + margin: 1em 0 0 0; + padding: 0; + + + li { + margin-right: 1em; + + &:last-child { + margin-right: 0; + } + } +} diff --git a/app/styles/crate/version.module.css b/app/styles/crate/version.module.css index 4f344e1ac05..ce3e022ff78 100644 --- a/app/styles/crate/version.module.css +++ b/app/styles/crate/version.module.css @@ -1,56 +1,3 @@ -div.header { - padding-top: 30px; - padding-bottom: 30px; -} - -.header-row { - display: flex; - justify-content: space-between; - padding-bottom: 10px; -} - -.heading { - display: flex; - align-items: center; - - h1, h2 { - margin: 0; - padding: 0; - } - - h2 { - color: var(--main-color-light); - margin-left: 10px; - } -} - -.crate-icon { - flex-shrink: 0; - margin-right: 10px; - width: 32px; - height: 32px; -} - -.quick-links { - display: flex; - flex-direction: row; - flex-wrap: wrap; - - font-size: 80%; - list-style-type: none; - margin: 1em 0 0 0; - padding: 0; - - - li { - margin-right: 1em; - - &:last-child { - margin-right: 0; - } - } -} - .crate-info { display: flex; flex-direction: column; diff --git a/app/templates/crate/version.hbs b/app/templates/crate/version.hbs index be2b7625550..66d058b9fbf 100644 --- a/app/templates/crate/version.hbs +++ b/app/templates/crate/version.hbs @@ -1,39 +1,6 @@ {{page-title this.crate.name}} - -
-
- {{svg-jar "crate" local-class='crate-icon'}} -

{{ this.crate.name }}

-

{{ this.currentVersion.num }}

- {{#if this.isOwner }} - {{!-- --}} - {{/if}} -
- - {{#if this.session.currentUser}} - - {{/if}} -
- - -
+
From b9507a9bdc026d360e1ceef9e1abd61a9b56962b Mon Sep 17 00:00:00 2001 From: Tobias Bieniek Date: Sun, 7 Feb 2021 14:19:13 +0100 Subject: [PATCH 2/4] CrateHeader: Allow `@version` to be undefined --- app/components/crate-header.hbs | 8 +++++--- app/components/crate-header.js | 4 ++++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/app/components/crate-header.hbs b/app/components/crate-header.hbs index 1e65819a5fd..031961595bd 100644 --- a/app/components/crate-header.hbs +++ b/app/components/crate-header.hbs @@ -3,7 +3,9 @@
{{svg-jar "crate" local-class="crate-icon"}}

{{@crate.name}}

-

{{@version.num}}

+ {{#if @version}} +

{{@version.num}}

+ {{/if}}
{{#if this.session.currentUser}} @@ -21,8 +23,8 @@ {{#if @crate.mailing_list}}
  • Mailing list
  • {{/if}} - {{#if @version.documentationLink}} -
  • Documentation
  • + {{#if this.documentationLink}} +
  • Documentation
  • {{/if}} {{#if @crate.repository}}
  • Repository
  • diff --git a/app/components/crate-header.js b/app/components/crate-header.js index 31ade95919b..c9b6e530489 100644 --- a/app/components/crate-header.js +++ b/app/components/crate-header.js @@ -3,4 +3,8 @@ import Component from '@glimmer/component'; export default class CrateHeader extends Component { @service session; + + get documentationLink() { + return this.args.version?.documentationLink ?? this.args.crate.documentation; + } } From 3d53de40d65af2aec5942226ea0cb5cb5c6a32ec Mon Sep 17 00:00:00 2001 From: Tobias Bieniek Date: Sun, 7 Feb 2021 14:21:32 +0100 Subject: [PATCH 3/4] crate.version: Add `CrateHeader` component --- app/templates/crate/versions.hbs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/templates/crate/versions.hbs b/app/templates/crate/versions.hbs index d404d932d79..c0964e7df50 100644 --- a/app/templates/crate/versions.hbs +++ b/app/templates/crate/versions.hbs @@ -1,3 +1,5 @@ + + ⬅ Back to Main Page From e34f77293ab592f62c9289f8cd437c408eb62f9d Mon Sep 17 00:00:00 2001 From: Tobias Bieniek Date: Sun, 7 Feb 2021 14:21:43 +0100 Subject: [PATCH 4/4] crate.reverse-dependencies: Add `CrateHeader` component --- app/templates/crate/reverse-dependencies.hbs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/templates/crate/reverse-dependencies.hbs b/app/templates/crate/reverse-dependencies.hbs index 4566ccc639f..9fb77dfcd29 100644 --- a/app/templates/crate/reverse-dependencies.hbs +++ b/app/templates/crate/reverse-dependencies.hbs @@ -1,3 +1,5 @@ + +
    ⬅ Back to {{ this.crate.name }}