@hashicorp/react-components 0.0.0-nightly.ad81ac2 → 0.0.0-nightly.b154bf4
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.
- package/.eslintrc.js +1 -2
- package/.stylelintrc.js +1 -1
- package/README.md +1 -1
- package/package.json +3 -8
- package/postcss.config.js +1 -1
- package/src/components/nav-panel/components/flight-icon/index.tsx +51 -0
- package/src/components/nav-panel/components/flight-icon/style.module.css +3 -0
- package/src/components/nav-panel/components/link/index.tsx +127 -0
- package/src/components/nav-panel/components/link/style.module.css +64 -0
- package/src/components/nav-panel/components/link-list/index.tsx +13 -65
- package/src/components/nav-panel/components/link-list/style.module.css +1 -50
- package/src/components/nav-panel/components/panel/column/style.module.css +2 -2
- package/src/components/nav-panel/components/panel/root/style.module.css +5 -5
- package/src/components/nav-panel/components/promo/index.tsx +31 -11
- package/src/components/nav-panel/components/promo/style.module.css +26 -12
- package/src/components/nav-panel/components/text/index.tsx +34 -0
- package/src/components/nav-panel/product-panel/index.tsx +54 -17
- package/src/components/nav-panel/product-panel/style.module.css +116 -36
- package/src/components/nav-panel/standard-panel/index.tsx +3 -0
- package/src/components/nav-panel/standard-panel/style.module.css +2 -2
- package/src/lib/get-localized-link-props/index.test.ts +30 -0
- package/src/lib/get-localized-link-props/index.ts +45 -0
- package/src/lib/parse-url/index.ts +0 -2
- package/src/lib/send-posthog-event/index.ts +22 -0
- package/src/lib/supported-locales/index.ts +10 -0
- package/src/lib/track-nav-click-event/index.ts +4 -4
- package/src/components/actions/index.tsx +0 -107
- package/src/components/actions/style.module.css +0 -28
- package/src/components/actions/types.ts +0 -73
- package/src/components/call-to-action/index.tsx +0 -205
- package/src/components/call-to-action/styles/variant-centered.module.css +0 -93
- package/src/components/call-to-action/styles/variant-compact-grid.module.css +0 -88
- package/src/components/call-to-action/styles/variant-compact.module.css +0 -91
- package/src/components/call-to-action/styles/variant-links.module.css +0 -85
- package/src/components/card/README.md +0 -11
- package/src/components/card/card.tsx +0 -45
- package/src/components/card/index.test.tsx +0 -69
- package/src/components/card/index.tsx +0 -14
- package/src/components/card/newsroom-card/index.test.tsx +0 -39
- package/src/components/card/newsroom-card/index.tsx +0 -37
- package/src/components/card/newsroom-card/style.module.css +0 -12
- package/src/components/card/partner-card/index.test.tsx +0 -57
- package/src/components/card/partner-card/index.tsx +0 -69
- package/src/components/card/partner-card/style.module.css +0 -24
- package/src/components/card/person-card/index.test.tsx +0 -71
- package/src/components/card/person-card/index.tsx +0 -93
- package/src/components/card/person-card/style.module.css +0 -33
- package/src/components/card/primitives.tsx +0 -177
- package/src/components/card/promo-card/index.tsx +0 -51
- package/src/components/card/resource-card/index.test.tsx +0 -48
- package/src/components/card/resource-card/index.tsx +0 -40
- package/src/components/card/style.module.css +0 -145
- package/src/components/card/types.ts +0 -66
- package/src/components/card/unified-card/index.spec.tsx +0 -40
- package/src/components/card/unified-card/index.tsx +0 -58
- package/src/components/intro/index.tsx +0 -82
- package/src/components/intro/style.module.css +0 -67
- package/src/components/intro/types.ts +0 -44
- package/src/components/marketo-form/CHANGELOG.md +0 -122
- package/src/components/marketo-form/README.md +0 -1
- package/src/components/marketo-form/contexts/FormMetadata.ts +0 -13
- package/src/components/marketo-form/docs.mdx +0 -197
- package/src/components/marketo-form/fixtures/index.ts +0 -185
- package/src/components/marketo-form/form/index.tsx +0 -371
- package/src/components/marketo-form/index.test.tsx +0 -320
- package/src/components/marketo-form/index.ts +0 -11
- package/src/components/marketo-form/package.original.json +0 -30
- package/src/components/marketo-form/partials/error-message/index.tsx +0 -12
- package/src/components/marketo-form/partials/error-message/style.module.css +0 -13
- package/src/components/marketo-form/partials/field/index.tsx +0 -90
- package/src/components/marketo-form/partials/field-wrapper/index.tsx +0 -26
- package/src/components/marketo-form/partials/fields/checkbox-field/index.tsx +0 -32
- package/src/components/marketo-form/partials/fields/email-field/index.tsx +0 -35
- package/src/components/marketo-form/partials/fields/form-page-url-field/index.tsx +0 -23
- package/src/components/marketo-form/partials/fields/hidden-field/index.tsx +0 -38
- package/src/components/marketo-form/partials/fields/htmltext-field/index.tsx +0 -21
- package/src/components/marketo-form/partials/fields/htmltext-field/style.module.css +0 -18
- package/src/components/marketo-form/partials/fields/name-field/index.tsx +0 -19
- package/src/components/marketo-form/partials/fields/name-field/style.module.css +0 -13
- package/src/components/marketo-form/partials/fields/radio-buttons-field/index.tsx +0 -48
- package/src/components/marketo-form/partials/fields/select-field/index.tsx +0 -39
- package/src/components/marketo-form/partials/fields/select-field/style.module.css +0 -5
- package/src/components/marketo-form/partials/fields/telephone-field/index.tsx +0 -30
- package/src/components/marketo-form/partials/fields/text-field/index.tsx +0 -30
- package/src/components/marketo-form/partials/fields/textarea-field/index.tsx +0 -29
- package/src/components/marketo-form/partials/label/index.tsx +0 -24
- package/src/components/marketo-form/partials/label/style.module.css +0 -12
- package/src/components/marketo-form/partials/visibility-rule/index.tsx +0 -84
- package/src/components/marketo-form/props.js +0 -66
- package/src/components/marketo-form/server/api-routes.ts +0 -109
- package/src/components/marketo-form/server/client.ts +0 -98
- package/src/components/marketo-form/server/index.ts +0 -8
- package/src/components/marketo-form/types.ts +0 -267
- package/src/components/marketo-form/utils.test.tsx +0 -103
- package/src/components/marketo-form/utils.ts +0 -449
- package/src/components/next-steps/index.tsx +0 -138
- package/src/components/next-steps/style.module.css +0 -270
- package/src/components/next-steps/types.ts +0 -63
- package/src/components/product-badge/index.test.tsx +0 -11
- package/src/components/product-badge/index.tsx +0 -42
- package/src/components/product-badge/style.module.css +0 -76
- package/src/components/products-used/index.tsx +0 -84
- package/src/components/products-used/style.module.css +0 -87
- package/src/components/products-used/types.ts +0 -31
- package/src/components/related-content/index.test.tsx +0 -74
- package/src/components/related-content/index.tsx +0 -56
- package/src/components/related-content/style.module.css +0 -89
- package/src/components/related-content/types.ts +0 -21
- package/src/components/subnav/helpers/areBasePathsMatching.ts +0 -13
- package/src/components/subnav/helpers/traverse/index.ts +0 -42
- package/src/components/subnav/helpers/useHeightRef.ts +0 -42
- package/src/components/subnav/helpers/useNavRef.ts +0 -30
- package/src/components/subnav/helpers/useOverflowRef.ts +0 -85
- package/src/components/subnav/helpers/useStuckRef.ts +0 -51
- package/src/components/subnav/index.tsx +0 -204
- package/src/components/subnav/partials/CtaLinks/github-stars-link/formatStarCount/index.test.ts +0 -26
- package/src/components/subnav/partials/CtaLinks/github-stars-link/formatStarCount/index.ts +0 -22
- package/src/components/subnav/partials/CtaLinks/github-stars-link/index.tsx +0 -87
- package/src/components/subnav/partials/CtaLinks/github-stars-link/parseGithubUrl/index.test.ts +0 -29
- package/src/components/subnav/partials/CtaLinks/github-stars-link/parseGithubUrl/index.ts +0 -32
- package/src/components/subnav/partials/CtaLinks/github-stars-link/style.module.css +0 -81
- package/src/components/subnav/partials/CtaLinks/icons/github-logo.js +0 -20
- package/src/components/subnav/partials/CtaLinks/icons/github.svg.js +0 -7
- package/src/components/subnav/partials/CtaLinks/icons/star.js +0 -20
- package/src/components/subnav/partials/CtaLinks/index.tsx +0 -131
- package/src/components/subnav/partials/CtaLinks/style.module.css +0 -45
- package/src/components/subnav/partials/DropdownTrigger/index.tsx +0 -35
- package/src/components/subnav/partials/DropdownTrigger/style.module.css +0 -39
- package/src/components/subnav/partials/MenuItemsDefault/index.tsx +0 -158
- package/src/components/subnav/partials/MenuItemsDefault/style.module.css +0 -104
- package/src/components/subnav/partials/MenuItemsOverflow/index.tsx +0 -143
- package/src/components/subnav/partials/MenuItemsOverflow/style.module.css +0 -88
- package/src/components/subnav/partials/TitleLink/index.tsx +0 -113
- package/src/components/subnav/partials/TitleLink/mktg-logos/all-community-product-logos_on-dark.ts +0 -10
- package/src/components/subnav/partials/TitleLink/mktg-logos/all-community-product-logos_on-light.ts +0 -10
- package/src/components/subnav/partials/TitleLink/mktg-logos/all-primary-logos_on-dark.ts +0 -23
- package/src/components/subnav/partials/TitleLink/mktg-logos/all-primary-logos_on-light.ts +0 -23
- package/src/components/subnav/partials/TitleLink/style.module.css +0 -43
- package/src/components/subnav/partials/nav-item-text/index.tsx +0 -37
- package/src/components/subnav/partials/nav-item-text/style.module.css +0 -13
- package/src/components/subnav/style.module.css +0 -66
- package/src/components/subnav/subnav-consts.ts +0 -1
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) HashiCorp, Inc.
|
|
3
|
-
* SPDX-License-Identifier: MPL-2.0
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import { forwardRef } from 'react'
|
|
7
|
-
import { camelCase } from 'camel-case'
|
|
8
|
-
import Link from 'next/link'
|
|
9
|
-
import Image from 'next/image'
|
|
10
|
-
import { vercelSplit } from '../../../../lib/v'
|
|
11
|
-
import classNames from 'classnames'
|
|
12
|
-
import * as CommunityProductLogosOnDark from './mktg-logos/all-community-product-logos_on-dark'
|
|
13
|
-
import * as CommunityProductLogosOnLight from './mktg-logos/all-community-product-logos_on-light'
|
|
14
|
-
import * as PrimaryLogosOnDark from './mktg-logos/all-primary-logos_on-dark'
|
|
15
|
-
import * as PrimaryLogosOnLight from './mktg-logos/all-primary-logos_on-light'
|
|
16
|
-
import HashiCorpLogoOnLight from '@hashicorp/web-mktg-logos/src/hashicorp/hashicorp-horizontal_on-light.svg'
|
|
17
|
-
import HashiCorpLogoOnDark from '@hashicorp/web-mktg-logos/src/hashicorp/hashicorp-horizontal_on-dark.svg'
|
|
18
|
-
import HCPLogoOnLight from '@hashicorp/web-mktg-logos/src/hcp/hcp-horizontal_on-light.svg'
|
|
19
|
-
import HCPLogoOnDark from '@hashicorp/web-mktg-logos/src/hcp/hcp-horizontal_on-dark.svg'
|
|
20
|
-
import WaypointLogoAttrOnLight from '@hashicorp/web-mktg-logos/src/waypoint/hashicorp-waypoint-attributed/hashicorp-waypoint_on-light.svg'
|
|
21
|
-
import WaypointLogoAttrOnDark from '@hashicorp/web-mktg-logos/src/waypoint/hashicorp-waypoint-attributed/hashicorp-waypoint_on-dark.svg'
|
|
22
|
-
import HCPTerraformLogoOnLight from '@hashicorp/web-mktg-logos/src/terraform/hcp-terraform/hcp-terraform_on-light.svg'
|
|
23
|
-
import HCPTerraformLogoOnDark from '@hashicorp/web-mktg-logos/src/terraform/hcp-terraform/hcp-terraform_on-dark.svg'
|
|
24
|
-
import s from './style.module.css'
|
|
25
|
-
|
|
26
|
-
const logoDict = {
|
|
27
|
-
light: {
|
|
28
|
-
hashicorp: HashiCorpLogoOnLight,
|
|
29
|
-
hcp: HCPLogoOnLight,
|
|
30
|
-
tfc: HCPTerraformLogoOnLight,
|
|
31
|
-
'hashicorp tfc': HCPTerraformLogoOnLight,
|
|
32
|
-
'hashicorp waypoint': WaypointLogoAttrOnLight,
|
|
33
|
-
},
|
|
34
|
-
dark: {
|
|
35
|
-
hashicorp: HashiCorpLogoOnDark,
|
|
36
|
-
hcp: HCPLogoOnDark,
|
|
37
|
-
tfc: HCPTerraformLogoOnDark,
|
|
38
|
-
'hashicorp tfc': HCPTerraformLogoOnDark,
|
|
39
|
-
'hashicorp waypoint': WaypointLogoAttrOnDark,
|
|
40
|
-
},
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
interface TitleLinkProps {
|
|
44
|
-
text: string
|
|
45
|
-
url: string
|
|
46
|
-
product?: string
|
|
47
|
-
theme: 'light' | 'dark'
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
function getLogo(
|
|
51
|
-
text: string,
|
|
52
|
-
theme: 'light' | 'dark'
|
|
53
|
-
): {
|
|
54
|
-
src: string
|
|
55
|
-
alt: string
|
|
56
|
-
width: number
|
|
57
|
-
height: number
|
|
58
|
-
} {
|
|
59
|
-
const lowerText = text.toLowerCase()
|
|
60
|
-
const themeLogos = logoDict[theme]
|
|
61
|
-
|
|
62
|
-
if (themeLogos[lowerText]) {
|
|
63
|
-
return themeLogos[lowerText]
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
const isCommunityLogo =
|
|
67
|
-
lowerText.startsWith('hashicorp') && lowerText !== 'hashicorp'
|
|
68
|
-
|
|
69
|
-
if (isCommunityLogo) {
|
|
70
|
-
if (theme === 'light') {
|
|
71
|
-
return CommunityProductLogosOnLight[lowerText.split(' ')[1]]
|
|
72
|
-
}
|
|
73
|
-
return CommunityProductLogosOnDark[lowerText.split(' ')[1]]
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
if (theme === 'light') {
|
|
77
|
-
return PrimaryLogosOnLight[lowerText]
|
|
78
|
-
}
|
|
79
|
-
return PrimaryLogosOnDark[lowerText]
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
const TitleLink = forwardRef<HTMLAnchorElement, TitleLinkProps>(
|
|
83
|
-
({ text, url, product, theme }, ref) => {
|
|
84
|
-
const parsedText = vercelSplit(text)
|
|
85
|
-
const Logo = getLogo(parsedText, theme)
|
|
86
|
-
|
|
87
|
-
return (
|
|
88
|
-
<Link
|
|
89
|
-
className={classNames(
|
|
90
|
-
s.root,
|
|
91
|
-
s[`brand-${product}`],
|
|
92
|
-
s[camelCase(parsedText)]
|
|
93
|
-
)}
|
|
94
|
-
href={url}
|
|
95
|
-
title={parsedText}
|
|
96
|
-
ref={ref}
|
|
97
|
-
>
|
|
98
|
-
{Logo ? (
|
|
99
|
-
<Image
|
|
100
|
-
{...Logo}
|
|
101
|
-
alt={Logo.alt ? Logo.alt : `${product} logo`}
|
|
102
|
-
className={s.logo}
|
|
103
|
-
/>
|
|
104
|
-
) : (
|
|
105
|
-
parsedText
|
|
106
|
-
)}
|
|
107
|
-
</Link>
|
|
108
|
-
)
|
|
109
|
-
}
|
|
110
|
-
)
|
|
111
|
-
TitleLink.displayName = 'TitleLink'
|
|
112
|
-
|
|
113
|
-
export default TitleLink
|
package/src/components/subnav/partials/TitleLink/mktg-logos/all-community-product-logos_on-dark.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import boundary from '@hashicorp/web-mktg-logos/src/boundary/boundary-community/boundary-community_on-dark.svg'
|
|
2
|
-
import consul from '@hashicorp/web-mktg-logos/src/consul/consul-community/consul-community_on-dark.svg'
|
|
3
|
-
import nomad from '@hashicorp/web-mktg-logos/src/nomad/nomad-community/nomad-community_on-dark.svg'
|
|
4
|
-
import packer from '@hashicorp/web-mktg-logos/src/packer/packer-community/packer-community_on-dark.svg'
|
|
5
|
-
import terraform from '@hashicorp/web-mktg-logos/src/terraform/terraform-community/terraform-community_on-dark.svg'
|
|
6
|
-
import vagrant from '@hashicorp/web-mktg-logos/src/vagrant/vagrant-community/vagrant-community_on-dark.svg'
|
|
7
|
-
import vault from '@hashicorp/web-mktg-logos/src/vault/vault-community/vault-community_on-dark.svg'
|
|
8
|
-
import waypoint from '@hashicorp/web-mktg-logos/src/waypoint/hashicorp-waypoint-attributed/hashicorp-waypoint_on-dark.svg'
|
|
9
|
-
|
|
10
|
-
export { boundary, consul, nomad, packer, terraform, vagrant, vault, waypoint }
|
package/src/components/subnav/partials/TitleLink/mktg-logos/all-community-product-logos_on-light.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import boundary from '@hashicorp/web-mktg-logos/src/boundary/boundary-community/boundary-community_on-light.svg'
|
|
2
|
-
import consul from '@hashicorp/web-mktg-logos/src/consul/consul-community/consul-community_on-light.svg'
|
|
3
|
-
import nomad from '@hashicorp/web-mktg-logos/src/nomad/nomad-community/nomad-community_on-light.svg'
|
|
4
|
-
import packer from '@hashicorp/web-mktg-logos/src/packer/packer-community/packer-community_on-light.svg'
|
|
5
|
-
import terraform from '@hashicorp/web-mktg-logos/src/terraform/terraform-community/terraform-community_on-light.svg'
|
|
6
|
-
import vagrant from '@hashicorp/web-mktg-logos/src/vagrant/vagrant-community/vagrant-community_on-light.svg'
|
|
7
|
-
import vault from '@hashicorp/web-mktg-logos/src/vault/vault-community/vault-community_on-light.svg'
|
|
8
|
-
import waypoint from '@hashicorp/web-mktg-logos/src/waypoint/hashicorp-waypoint-attributed/hashicorp-waypoint_on-light.svg'
|
|
9
|
-
|
|
10
|
-
export { boundary, consul, nomad, packer, terraform, vagrant, vault, waypoint }
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import boundary from '@hashicorp/web-mktg-logos/src/boundary/boundary/boundary_on-dark.svg'
|
|
2
|
-
import consul from '@hashicorp/web-mktg-logos/src/consul/consul/consul_on-dark.svg'
|
|
3
|
-
import nomad from '@hashicorp/web-mktg-logos/src/nomad/nomad/nomad_on-dark.svg'
|
|
4
|
-
import packer from '@hashicorp/web-mktg-logos/src/packer/packer/packer_on-dark.svg'
|
|
5
|
-
import terraform from '@hashicorp/web-mktg-logos/src/terraform/terraform/terraform_on-dark.svg'
|
|
6
|
-
import vagrant from '@hashicorp/web-mktg-logos/src/vagrant/vagrant/vagrant_on-dark.svg'
|
|
7
|
-
import vault from '@hashicorp/web-mktg-logos/src/vault/vault/vault_on-dark.svg'
|
|
8
|
-
import waypoint from '@hashicorp/web-mktg-logos/src/waypoint/waypoint/waypoint_on-dark.svg'
|
|
9
|
-
import hashiconf from '@hashicorp/web-mktg-logos/src/conferences/hashiconf_on-dark.svg'
|
|
10
|
-
import hashidays from '@hashicorp/web-mktg-logos/src/conferences/hashidays_on-dark.svg'
|
|
11
|
-
|
|
12
|
-
export {
|
|
13
|
-
boundary,
|
|
14
|
-
consul,
|
|
15
|
-
nomad,
|
|
16
|
-
packer,
|
|
17
|
-
terraform,
|
|
18
|
-
vagrant,
|
|
19
|
-
vault,
|
|
20
|
-
waypoint,
|
|
21
|
-
hashiconf,
|
|
22
|
-
hashidays,
|
|
23
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import boundary from '@hashicorp/web-mktg-logos/src/boundary/boundary/boundary_on-light.svg'
|
|
2
|
-
import consul from '@hashicorp/web-mktg-logos/src/consul/consul/consul_on-light.svg'
|
|
3
|
-
import nomad from '@hashicorp/web-mktg-logos/src/nomad/nomad/nomad_on-light.svg'
|
|
4
|
-
import packer from '@hashicorp/web-mktg-logos/src/packer/packer/packer_on-light.svg'
|
|
5
|
-
import terraform from '@hashicorp/web-mktg-logos/src/terraform/terraform/terraform_on-light.svg'
|
|
6
|
-
import vagrant from '@hashicorp/web-mktg-logos/src/vagrant/vagrant/vagrant_on-light.svg'
|
|
7
|
-
import vault from '@hashicorp/web-mktg-logos/src/vault/vault/vault_on-light.svg'
|
|
8
|
-
import waypoint from '@hashicorp/web-mktg-logos/src/waypoint/waypoint/waypoint_on-light.svg'
|
|
9
|
-
import hashiconf from '@hashicorp/web-mktg-logos/src/conferences/hashiconf_on-light.svg'
|
|
10
|
-
import hashidays from '@hashicorp/web-mktg-logos/src/conferences/hashidays_on-light.svg'
|
|
11
|
-
|
|
12
|
-
export {
|
|
13
|
-
boundary,
|
|
14
|
-
consul,
|
|
15
|
-
nomad,
|
|
16
|
-
packer,
|
|
17
|
-
terraform,
|
|
18
|
-
vagrant,
|
|
19
|
-
vault,
|
|
20
|
-
waypoint,
|
|
21
|
-
hashiconf,
|
|
22
|
-
hashidays,
|
|
23
|
-
}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) HashiCorp, Inc.
|
|
3
|
-
* SPDX-License-Identifier: MPL-2.0
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
/* Note: consumes from theme.module.css, as marked */
|
|
7
|
-
|
|
8
|
-
.root {
|
|
9
|
-
position: relative;
|
|
10
|
-
display: inline-flex;
|
|
11
|
-
padding-block: var(--hdsplus-spacing-04);
|
|
12
|
-
font-weight: var(--font-weight-bold);
|
|
13
|
-
color: var(--token-color-foreground-primary); /* from theme.module.css */
|
|
14
|
-
font-size: 1.25rem;
|
|
15
|
-
line-height: 1.35rem;
|
|
16
|
-
|
|
17
|
-
& img {
|
|
18
|
-
max-height: 34px;
|
|
19
|
-
width: auto;
|
|
20
|
-
display: block;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
&.brand-hcp img {
|
|
24
|
-
height: 26px;
|
|
25
|
-
|
|
26
|
-
@media (min-width: 360px) {
|
|
27
|
-
height: 29px;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
&:focus {
|
|
32
|
-
outline: 2px solid var(--token-color-focus-action-internal);
|
|
33
|
-
outline-style: auto;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
.hashiConf, .hashiDays {
|
|
38
|
-
display: flex;
|
|
39
|
-
|
|
40
|
-
& img {
|
|
41
|
-
height: 24px;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) HashiCorp, Inc.
|
|
3
|
-
* SPDX-License-Identifier: MPL-2.0
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import classNames from 'classnames'
|
|
7
|
-
import React from 'react'
|
|
8
|
-
import s from './style.module.css'
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
*
|
|
12
|
-
* A span of styled text with
|
|
13
|
-
* an active state that adds a thick
|
|
14
|
-
* bottom border.
|
|
15
|
-
*
|
|
16
|
-
*/
|
|
17
|
-
function NavItemText({
|
|
18
|
-
isActive,
|
|
19
|
-
text,
|
|
20
|
-
}: {
|
|
21
|
-
/** If true, item will be rendered with a thick bottom border below the text. */
|
|
22
|
-
isActive?: boolean
|
|
23
|
-
/** Plain text to render within the styled <span /> */
|
|
24
|
-
text: string
|
|
25
|
-
}): React.ReactElement {
|
|
26
|
-
return (
|
|
27
|
-
<span
|
|
28
|
-
className={classNames(s.root, {
|
|
29
|
-
[s.isActive]: isActive,
|
|
30
|
-
})}
|
|
31
|
-
>
|
|
32
|
-
{text}
|
|
33
|
-
</span>
|
|
34
|
-
)
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export default NavItemText
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) HashiCorp, Inc.
|
|
3
|
-
* SPDX-License-Identifier: MPL-2.0
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
.root {
|
|
7
|
-
position: sticky;
|
|
8
|
-
top: -1px;
|
|
9
|
-
z-index: 900;
|
|
10
|
-
background: var(--token-color-surface-primary);
|
|
11
|
-
border-top: 1px solid var(--token-color-border-faint);
|
|
12
|
-
border-bottom: 1px solid transparent;
|
|
13
|
-
transition: border-bottom-color 0.8s;
|
|
14
|
-
|
|
15
|
-
&.isSticky {
|
|
16
|
-
border-bottom-color: var(--token-color-border-faint);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
/*
|
|
20
|
-
* About this selector:
|
|
21
|
-
* `& ~ *` finds all elements after the navigation.
|
|
22
|
-
* `:target` finds the active permalink on the page.
|
|
23
|
-
*
|
|
24
|
-
* About this style:
|
|
25
|
-
* `var(--subnav-height, 64px)` adjusts the scroll to account for the
|
|
26
|
-
* navigation. `0.5em` further adjusts the scroll to give the permalink
|
|
27
|
-
* breathing room.
|
|
28
|
-
*
|
|
29
|
-
* See: https://developer.mozilla.org/en-US/docs/Web/CSS/:target
|
|
30
|
-
* See: https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-margin-top
|
|
31
|
-
*/
|
|
32
|
-
& ~ * :target {
|
|
33
|
-
scroll-margin-top: calc(var(--subnav-height, 64px) + 0.5em);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
@media print {
|
|
37
|
-
display: none;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
.subnavInnerRoot {
|
|
42
|
-
display: grid;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
.subnavInner {
|
|
46
|
-
display: grid;
|
|
47
|
-
grid-template-columns: max-content min-content;
|
|
48
|
-
align-items: center;
|
|
49
|
-
justify-content: space-between;
|
|
50
|
-
min-height: 62px;
|
|
51
|
-
list-style: none;
|
|
52
|
-
|
|
53
|
-
&.hasOverflow {
|
|
54
|
-
display: flex;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
&.notConstrained {
|
|
58
|
-
/* This padding should always match the horizontal padding of the main nav */
|
|
59
|
-
padding: 0 var(--hdsplus-spacing-05);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
.subNavRight {
|
|
64
|
-
display: flex;
|
|
65
|
-
align-items: center;
|
|
66
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export const THEMES = ['light', 'dark'] as const
|