-
-
- Welcome to the INTERNAL BETA for
- HashiCorp Boundary! This is a confidential internal only beta. No
- details should be shared externally.
-
-
{title}
-
-
{description}
-
- {links.map((link, index) => {
- const brand = index === 0 ? 'hashicorp' : 'neutral'
- const variant = index === 0 ? 'primary' : 'secondary'
- return (
-
- )
- })}
-
-
-
+
+
)
}
diff --git a/website/components/homepage-hero/style.module.css b/website/components/homepage-hero/style.module.css
deleted file mode 100644
index 3b1f45fe33..0000000000
--- a/website/components/homepage-hero/style.module.css
+++ /dev/null
@@ -1,62 +0,0 @@
-.root {
- /* 100% height - nav - footer */
- min-height: calc(100vh - (64px + 77px));
- width: 100%;
- padding: 150px 0;
- background-repeat: no-repeat;
- background-color: var(--gray-7);
- background-image: url(/img/hero-pattern.svg);
- background-size: contain;
-
- @media (max-width: 758px) {
- padding: 64px 0;
- }
-
- & .eyebrow {
- font-family: var(--font-body);
- text-align: center;
- display: block;
- font-weight: var(--font-weight-bold);
- font-size: 1.1rem;
-
- & .red {
- color: #ba2226;
- }
- }
-
- @media (max-width: 758px) {
- background-image: url(/img/mobile-hero-pattern.svg);
- }
-
- & h1 {
- text-align: center;
- white-space: pre-wrap;
- }
-
- & p {
- margin: 0 auto 0 auto;
- text-align: center;
- max-width: 40em;
- }
-
- & :global(.g-grid-container) {
- max-width: 700px;
- }
-
- & .links {
- display: flex;
- flex-wrap: wrap;
- justify-content: center;
- margin-top: calc(32px - 8px);
- margin-bottom: -8px;
-
- & a {
- margin: 8px;
-
- &:global(.variant-primary) {
- border-color: var(--boundary);
- background-color: var(--boundary);
- }
- }
- }
-}
diff --git a/website/components/how-it-works/feature/feature.module.css b/website/components/how-it-works/feature/feature.module.css
new file mode 100644
index 0000000000..a3edf3dd76
--- /dev/null
+++ b/website/components/how-it-works/feature/feature.module.css
@@ -0,0 +1,9 @@
+.root {
+ & > h4 {
+ margin-top: 0;
+ }
+
+ & > p {
+ margin-bottom: 32px;
+ }
+}
diff --git a/website/components/how-it-works/feature/index.jsx b/website/components/how-it-works/feature/index.jsx
new file mode 100644
index 0000000000..43b0d195d5
--- /dev/null
+++ b/website/components/how-it-works/feature/index.jsx
@@ -0,0 +1,26 @@
+import LogoList from './logo-list'
+import s from './feature.module.css'
+import { useInView } from 'react-intersection-observer'
+import { useState } from 'react'
+
+export default function Feature({
+ title,
+ description,
+ logos,
+ onInViewStatusChanged,
+}) {
+ const [ref, inView] = useInView({ threshold: 0.8 })
+ const [inViewStatus, setInViewStatus] = useState(false)
+ if (inView != inViewStatus) {
+ setInViewStatus(inView)
+ onInViewStatusChanged(inView)
+ }
+
+ return (
+
+
{title}
+
{description}
+ {logos ?
: null}
+
+ )
+}
diff --git a/website/components/how-it-works/feature/logo-list/index.jsx b/website/components/how-it-works/feature/logo-list/index.jsx
new file mode 100644
index 0000000000..5d354906c7
--- /dev/null
+++ b/website/components/how-it-works/feature/logo-list/index.jsx
@@ -0,0 +1,22 @@
+import s from './logo-list.module.css'
+
+export default function LogoList({ logos }) {
+ return (
+
+
+ {logos.map((logo, stableIdx) => (
+
+
+
+ ))}
+
+
+
+ Integrations coming soon
+
+
+ )
+}
diff --git a/website/components/how-it-works/feature/logo-list/logo-list.module.css b/website/components/how-it-works/feature/logo-list/logo-list.module.css
new file mode 100644
index 0000000000..84ccc79961
--- /dev/null
+++ b/website/components/how-it-works/feature/logo-list/logo-list.module.css
@@ -0,0 +1,16 @@
+.logos {
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ max-width: 440px;
+ flex-wrap: wrap;
+
+ & > div {
+ margin-right: 30px;
+ margin-bottom: 20px;
+ }
+}
+
+.footerText {
+ color: var(--gray-5);
+}
diff --git a/website/components/how-it-works/how-boundary-works-diagram/how-boundary-works-diagram.module.css b/website/components/how-it-works/how-boundary-works-diagram/how-boundary-works-diagram.module.css
new file mode 100644
index 0000000000..7357db0eb5
--- /dev/null
+++ b/website/components/how-it-works/how-boundary-works-diagram/how-boundary-works-diagram.module.css
@@ -0,0 +1,190 @@
+.root {
+ --transition-time: 0.7s;
+
+ @media (--medium-up) {
+ position: sticky;
+ top: calc(50vh - (249px));
+ }
+
+ & > svg {
+ width: 100%;
+ }
+
+ & .boundaryLetter,
+ & .spacer,
+ & .iconBg {
+ fill: var(--white);
+ }
+
+ & .iconLines,
+ & .iconBg {
+ stroke-linecap: round;
+ stroke-width: 1.5px;
+ stroke-linejoin: round;
+ }
+
+ & .boundaryFill,
+ & .arrowHead {
+ fill: #f04e54;
+ }
+
+ & .arrowHead,
+ & .arrowSegment,
+ & .spacer {
+ transition: var(--transition-time) ease;
+ transition-property: opacity;
+ }
+
+ & .arrowSegment {
+ stroke-width: 2px;
+ stroke: #f04e54;
+ stroke-miterlimit: 10;
+ stroke-linecap: round;
+ fill: none;
+ }
+
+ & .dropShadow {
+ opacity: 0.08;
+ mix-blend-mode: multiply;
+ }
+
+ & .iconLines {
+ stroke: var(--white);
+ fill: none;
+ transition: var(--transition-time) ease;
+ transition-property: stroke;
+ }
+
+ & .subtitle {
+ fill: #b6b8c3;
+ }
+
+ & .iconBg {
+ stroke: #e5e6ec;
+ stroke-width: 1px;
+ transition: var(--transition-time) ease;
+ transition-property: fill, stroke;
+ }
+
+ & .authenticate {
+ & .iconBg {
+ fill: var(--white);
+ }
+
+ & .iconLines {
+ stroke: #e5e6ec;
+ stroke-width: 1px;
+ }
+ }
+
+ & .authorize {
+ & .spacer {
+ opacity: 0;
+ }
+
+ & .iconBg {
+ fill: var(--black);
+ stroke: var(--black);
+ }
+
+ & .iconLines {
+ stroke: #e5e6ec;
+ }
+ }
+
+ & .access {
+ & .spacer {
+ opacity: 0;
+ }
+
+ & .iconBg {
+ fill: var(--black);
+ stroke: var(--black);
+ }
+
+ & .vaultIcon {
+ fill: var(--white);
+ }
+ }
+
+ & .hostsAndServices {
+ opacity: 1;
+ transform: translate(0, 0);
+ transition: var(--transition-time) ease;
+ transition-property: opacity, transform;
+
+ & .leadingLine {
+ fill: none;
+ stroke-linecap: round;
+ stroke-miterlimit: 10;
+ stroke-width: 1.5px;
+ stroke: var(--black);
+ }
+ }
+
+ & .arrowOne .arrowHead,
+ & .arrowTwo .arrowHead {
+ @media (--small) {
+ opacity: 0;
+ }
+ }
+
+ & .inactive {
+ & .arrowHead,
+ & .arrowSegment,
+ & .spacer {
+ @media (--medium-up) {
+ opacity: 0;
+ }
+ }
+
+ &.authorize {
+ & .spacer {
+ @media (--medium-up) {
+ opacity: 1;
+ }
+ }
+
+ & .iconBg {
+ @media (--medium-up) {
+ fill: var(--white);
+ stroke: #e5e6ec;
+ }
+ }
+
+ & .iconLines {
+ @media (--medium-up) {
+ stroke: #b6b8c3;
+ }
+ }
+ }
+
+ &.access {
+ & .spacer {
+ @media (--medium-up) {
+ opacity: 1;
+ }
+ }
+
+ & .iconBg {
+ @media (--medium-up) {
+ fill: var(--white);
+ stroke: var(--white);
+ }
+ }
+
+ & .vaultIcon {
+ @media (--medium-up) {
+ fill: var(--black);
+ }
+ }
+ }
+
+ &.hostsAndServices {
+ @media (--medium-up) {
+ opacity: 0;
+ transform: translate(0, 10px);
+ }
+ }
+ }
+}
diff --git a/website/components/how-it-works/how-boundary-works-diagram/index.jsx b/website/components/how-it-works/how-boundary-works-diagram/index.jsx
new file mode 100644
index 0000000000..2dbb1ef27e
--- /dev/null
+++ b/website/components/how-it-works/how-boundary-works-diagram/index.jsx
@@ -0,0 +1,294 @@
+import s from './how-boundary-works-diagram.module.css'
+import classnames from 'classnames'
+
+export default function HowBoundaryWorksDiagram({ activeExampleIndex }) {
+ return (
+
+
+
+
+
+
+ {/* Hosts & Services */}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {/* Top-right arrow segment, always active */}
+
+
+ {/* Arrow (Example 1) */}
+
+
+
+
+
+
+ {/* Arrow (Example 2) */}
+
+
+
+
+
+
+
+ {/* Arrow (Example 3) */}
+
+
+
+
+
+
+
+ {/* Boundary logo */}
+
+
+
+
+
+
+
+ {/* Users */}
+
+
+
+
+
+
+
+
+
+ {/* Authenticate */}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {/* Authorize */}
+
+
+
+
+
+
+
+
+
+
+ {/* Access */}
+
+
+
+
+
+
+
+
+
+
+
+
+ )
+}
diff --git a/website/components/how-it-works/how-it-works.module.css b/website/components/how-it-works/how-it-works.module.css
new file mode 100644
index 0000000000..15dfb812d8
--- /dev/null
+++ b/website/components/how-it-works/how-it-works.module.css
@@ -0,0 +1,87 @@
+.root {
+ padding: 88px 0;
+
+ & .headerWrapper {
+ & h2 {
+ text-align: center;
+ margin-top: 0;
+ margin-bottom: 32px;
+ @media (--small) {
+ margin-bottom: 0;
+ }
+ }
+
+ & p {
+ max-width: 818px;
+ text-align: center;
+ margin-left: auto;
+ margin-right: auto;
+ }
+ }
+}
+
+.contentContainer {
+ display: flex;
+ justify-content: space-between;
+ position: relative;
+
+ @media (--small) {
+ flex-direction: column;
+ }
+
+ & > ul {
+ max-width: 470px;
+ margin-left: 128px;
+ padding: 0;
+
+ @media (width < 1120px) {
+ margin-left: 64px;
+ }
+
+ @media (width < 1024px) {
+ margin-left: 40px;
+ }
+
+ @media (--small) {
+ margin-left: 0;
+ }
+ }
+}
+
+.diagram {
+ width: 591px;
+ max-width: 100%;
+}
+
+.features {
+ & > li {
+ list-style: none;
+
+ & > div {
+ list-style: none;
+ padding-bottom: 285px;
+
+ @media (--small) {
+ padding-top: 0;
+ margin-bottom: 0;
+ padding-bottom: 100px;
+ }
+ }
+
+ &:last-child {
+ & > div {
+ padding-bottom: 355px;
+ margin-bottom: -200px;
+ }
+ }
+
+ &:first-child {
+ & > div {
+ padding-top: 108px;
+ @media (width < 1120px) {
+ padding-top: 64px;
+ }
+ }
+ }
+ }
+}
diff --git a/website/components/how-it-works/index.jsx b/website/components/how-it-works/index.jsx
new file mode 100644
index 0000000000..8ca3c736bb
--- /dev/null
+++ b/website/components/how-it-works/index.jsx
@@ -0,0 +1,50 @@
+import s from './how-it-works.module.css'
+import classNames from 'classnames'
+import HowBoundaryWorksDiagram from './how-boundary-works-diagram'
+import Feature from './feature'
+import { useState } from 'react'
+
+export default function HowItWorks({ title, description, features }) {
+ const [activeExampleIndex, setActiveExampleIndex] = useState(0)
+ const [viewportStatus, setViewportStatus] = useState(
+ new Array(features.length).fill(false)
+ )
+
+ return (
+
+
+
{title}
+
{description}
+
+
+
+
+
+
+ {features.map((feature, index) => (
+
+ {
+ const newStatusArray = [...viewportStatus]
+ newStatusArray[index] = state
+ setViewportStatus(newStatusArray)
+ // Calculate the first element in focus, set that as
+ // our new activeExampleIndex. If it's been updated
+ // notify the subscriber.
+ const newExampleIndex = newStatusArray.lastIndexOf(true)
+ if (
+ activeExampleIndex != newExampleIndex &&
+ newExampleIndex != -1
+ ) {
+ setActiveExampleIndex(newExampleIndex)
+ }
+ }}
+ />
+
+ ))}
+
+
+
+ )
+}
diff --git a/website/components/section-break-cta/index.jsx b/website/components/section-break-cta/index.jsx
new file mode 100644
index 0000000000..8402b0f21b
--- /dev/null
+++ b/website/components/section-break-cta/index.jsx
@@ -0,0 +1,22 @@
+import styles from './section-break-cta.module.css'
+import Button from '@hashicorp/react-button'
+
+export default function SectionBreakCta({ heading, content, link }) {
+ return (
+
+
+
{heading}
+
{content}
+
+
+ )
+}
diff --git a/website/components/section-break-cta/section-break-cta.module.css b/website/components/section-break-cta/section-break-cta.module.css
new file mode 100644
index 0000000000..3e1e842851
--- /dev/null
+++ b/website/components/section-break-cta/section-break-cta.module.css
@@ -0,0 +1,31 @@
+.sectionBreakCta {
+ padding: 60px 30px;
+ max-width: 800px;
+ display: flex;
+ flex-direction: column;
+ text-align: center;
+ box-shadow: 0 8px 12px rgba(37, 38, 45, 0.08);
+ margin: 0 auto;
+ background-color: var(--white);
+
+ @media (width <= 880px) {
+ margin: 0 40px;
+ }
+
+ & > h4 {
+ margin-top: 0;
+ margin-bottom: 8px;
+ }
+
+ & > p {
+ margin-top: 0;
+ margin-bottom: 40px;
+ }
+
+ & hr {
+ width: 64px;
+ background-color: var(--red);
+ margin-top: 0;
+ margin-bottom: 24px;
+ }
+}
diff --git a/website/components/signin-error-page/index.jsx b/website/components/signin-error-page/index.jsx
deleted file mode 100644
index 14d93965d3..0000000000
--- a/website/components/signin-error-page/index.jsx
+++ /dev/null
@@ -1,33 +0,0 @@
-import styles from './signin-error.module.css'
-import Button from '@hashicorp/react-button'
-import { useAuthProviders } from 'components/auth-gate'
-
-export default function SigninErrorPage() {
- const authProviders = useAuthProviders()
- return (
-
-
- Sorry!
- It seems you do not have appropriate permissions to view this content.
-
- {authProviders && (
-
-
-
{`If you'd like to try again with another Okta account, please log out of Okta`}
- {process.env.NEXT_PUBLIC_OKTA_DOMAIN && (
-
- )}
-
-
-
{`If you'd like to try again with another Auth0 account, please go back`}
-
-
- )
-
- )}
-
- )
-}
diff --git a/website/components/signin-error-page/signin-error.module.css b/website/components/signin-error-page/signin-error.module.css
deleted file mode 100644
index 437ac92577..0000000000
--- a/website/components/signin-error-page/signin-error.module.css
+++ /dev/null
@@ -1,29 +0,0 @@
-.signinErrorWrapper {
- display: flex;
- justify-content: center;
- align-items: center;
- text-align: center;
- flex-direction: column;
- width: 100vw;
- height: 100vh;
-}
-
-.logoutCard {
- margin-top: 3rem;
- display: flex;
- justify-content: center;
- flex-wrap: wrap;
- align-items: center;
- text-align: center;
- padding: 2rem;
- border: 1px solid var(--gray-6);
-}
-
-.authProviderGoBack {
- display: flex;
- flex: 0 1 600px;
- justify-content: center;
- align-items: center;
- text-align: center;
- flex-direction: column;
-}
diff --git a/website/components/subnav/index.jsx b/website/components/subnav/index.jsx
index 6d6c14cf4b..b8d2dd4f86 100644
--- a/website/components/subnav/index.jsx
+++ b/website/components/subnav/index.jsx
@@ -19,7 +19,7 @@ export default function ProductSubnav() {
},
{
text: 'Download',
- url: 'https://github.com/hashicorp/boundary/releases',
+ url: '/downloads',
},
]}
currentPath={router.asPath}
diff --git a/website/data/alert-banner.js b/website/data/alert-banner.js
new file mode 100644
index 0000000000..8704f4db0f
--- /dev/null
+++ b/website/data/alert-banner.js
@@ -0,0 +1,7 @@
+export const ALERT_BANNER_ACTIVE = false
+
+export default {
+ tag: 'ANNOUNCING',
+ text: 'Some details about an announcement here',
+ url: 'https://hashicorp.com',
+}
diff --git a/website/data/downloads.js b/website/data/downloads.js
new file mode 100644
index 0000000000..614a54c4b1
--- /dev/null
+++ b/website/data/downloads.js
@@ -0,0 +1,66 @@
+export const packageManagers = {
+ homebrew: {
+ label: 'Homebrew',
+ url: '',
+ commands: ['brew tap hashicorp/tap', 'brew install hashicorp/tap/boundary'],
+ },
+ ubuntu: {
+ label: 'Ubuntu/Debian',
+ commands: [
+ 'curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -',
+ 'sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"',
+ 'sudo apt-get update && sudo apt-get install boundary',
+ ],
+ },
+ centos: {
+ label: 'CentOS/RHEL',
+ commands: [
+ 'sudo yum install -y yum-utils',
+ 'sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo',
+ 'sudo yum -y install boundary',
+ ],
+ },
+ fedora: {
+ label: 'Fedora',
+ commands: [
+ 'sudo dnf install -y dnf-plugins-core',
+ 'sudo dnf config-manager --add-repo https://rpm.releases.hashicorp.com/fedora/hashicorp.repo',
+ 'sudo dnf -y install boundary',
+ ],
+ },
+ amazonLinux: {
+ label: 'Amazon Linux',
+ commands: [
+ 'sudo yum install -y yum-utils',
+ 'sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/AmazonLinux/hashicorp.repo',
+ 'sudo yum -y install boundary',
+ ],
+ },
+}
+
+export const packageManagersByOs = {
+ darwin: packageManagers.homebrew,
+ linux: [
+ packageManagers.ubuntu,
+ packageManagers.centos,
+ packageManagers.fedora,
+ packageManagers.amazonLinux,
+ ],
+}
+
+export const getStartedLinks = [
+ {
+ label: 'Install Boundary',
+ href:
+ 'https://learn.hashicorp.com/tutorials/boundary/getting-started-install',
+ },
+ {
+ label: 'Introduction to Boundary',
+ href:
+ 'https://learn.hashicorp.com/tutorials/boundary/getting-started-intro',
+ },
+ {
+ label: 'Start a Development Environment',
+ href: 'https://learn.hashicorp.com/tutorials/boundary/getting-started-dev',
+ },
+]
diff --git a/website/data/navigation.js b/website/data/navigation.js
index 1eb1a6e8dd..ee5e1782be 100644
--- a/website/data/navigation.js
+++ b/website/data/navigation.js
@@ -1,10 +1,28 @@
export default [
+ {
+ text: 'Overview',
+ url: '/',
+ type: 'inbound',
+ },
+ 'divider',
+ {
+ text: 'Tutorials',
+ url: 'https://learn.hashicorp.com/boundary',
+ type: 'inbound',
+ },
{
text: 'Docs',
- url: '/docs/getting-started',
+ url: '/docs',
+ type: 'inbound',
},
{
text: 'API',
url: '/api-docs',
+ type: 'inbound',
+ },
+ {
+ text: 'Community',
+ url: '/community',
+ type: 'inbound',
},
]
diff --git a/website/lib/next-auth-utils/config.js b/website/lib/next-auth-utils/config.js
deleted file mode 100644
index e56a10d2ef..0000000000
--- a/website/lib/next-auth-utils/config.js
+++ /dev/null
@@ -1,19 +0,0 @@
-import NextAuth from 'next-auth'
-import NextAuthProviders from 'next-auth/providers'
-
-function formatProviderConfig(ap) {
- const apName = ap.toUpperCase()
- const config = {
- clientId: process.env[`${apName}_CLIENT_ID`],
- clientSecret: process.env[`${apName}_CLIENT_SECRET`],
- domain: process.env[`${apName}_DOMAIN`],
- }
- return NextAuthProviders[ap](config)
-}
-
-export default (req, res) => ({ environments, pages }) =>
- NextAuth(req, res, {
- providers:
- environments[process.env.HASHI_ENV]?.map(formatProviderConfig) || [],
- pages,
- })
diff --git a/website/next.config.js b/website/next.config.js
index 44d063af40..60832a4c05 100644
--- a/website/next.config.js
+++ b/website/next.config.js
@@ -5,25 +5,21 @@ const redirects = require('./redirects.js')
// log out our primary environment variables for clarity in build logs
console.log(`HASHI_ENV: ${process.env.HASHI_ENV}`)
console.log(`NODE_ENV: ${process.env.NODE_ENV}`)
-console.log(`NEXTAUTH_URL: ${process.env.NEXTAUTH_URL}`)
-console.log(`OKTA_DOMAIN: ${process.env.OKTA_DOMAIN}`)
-console.log(`AUTH0_DOMAIN: ${process.env.AUTH0_DOMAIN}`)
module.exports = withHashicorp({
defaultLayout: true,
- transpileModules: ['is-absolute-url', '@hashicorp/react-mega-nav'],
+ transpileModules: ['is-absolute-url', '@hashicorp/react-.*'],
mdx: { resolveIncludes: path.join(__dirname, 'pages/partials') },
})({
async redirects() {
return await redirects
},
+ svgo: { plugins: [{ removeViewBox: false }] },
experimental: { modern: true },
env: {
HASHI_ENV: process.env.HASHI_ENV || 'development',
SEGMENT_WRITE_KEY: 'JkNZiSgwVRAAFrkqqdHLxf0xfcZuhYYc',
BUGSNAG_CLIENT_KEY: '635db43e199cb02419379291d573205b',
BUGSNAG_SERVER_KEY: 'f85278a46e1b5565a9e91974cdc2843b',
- NEXT_PUBLIC_OKTA_DOMAIN: process.env.OKTA_DOMAIN,
- NEXT_PUBLIC_AUTH0_DOMAIN: process.env.AUTH0_DOMAIN,
},
})
diff --git a/website/package-lock.json b/website/package-lock.json
index 679e781574..57e0470869 100644
--- a/website/package-lock.json
+++ b/website/package-lock.json
@@ -1429,6 +1429,16 @@
"resolved": "https://registry.npmjs.org/@hashicorp/js-utils/-/js-utils-1.0.10.tgz",
"integrity": "sha512-59AS4kK3EURCTU9ibJmk8MVT8i3qc5tEHv985dxECZrWTL4+3kKr45u/13OPpcRlpUSIKeWEsN9FL1f5/ztHww=="
},
+ "@hashicorp/localstorage-polyfill": {
+ "version": "1.0.14",
+ "resolved": "https://registry.npmjs.org/@hashicorp/localstorage-polyfill/-/localstorage-polyfill-1.0.14.tgz",
+ "integrity": "sha512-xyrD15VTKcmOQhMsZbWIoi1REVAHspBfYY3qxuI4Rxsx7S7mcsOjf7lxvlHfVzivkrBfpYfUP54f7Yji/FUv8Q=="
+ },
+ "@hashicorp/mktg-assets": {
+ "version": "1.0.0-alpha.20",
+ "resolved": "https://registry.npmjs.org/@hashicorp/mktg-assets/-/mktg-assets-1.0.0-alpha.20.tgz",
+ "integrity": "sha512-ajCBCcxDpiwfxsh8wMGHu9GuKcNRmuiFyfgUiRXipvLqHFnNLZwZfBwaFxgCT8EK1jxdkfUWJTFkPY3rXmIo2A=="
+ },
"@hashicorp/nextjs-scripts": {
"version": "13.0.0-canary.1",
"resolved": "https://registry.npmjs.org/@hashicorp/nextjs-scripts/-/nextjs-scripts-13.0.0-canary.1.tgz",
@@ -1482,25 +1492,60 @@
"stylelint-use-nesting": "^3.0.0",
"stylelint-value-no-unknown-custom-properties": "^3.0.0",
"typescript": "4.0.2"
- }
- },
- "@hashicorp/react-button": {
- "version": "2.2.6",
- "resolved": "https://registry.npmjs.org/@hashicorp/react-button/-/react-button-2.2.6.tgz",
- "integrity": "sha512-pFpI7PRDA4fi4BBWIBUDn4Ye6OThpuJTWG2fZHblJD8sw7gZfNNtAoadmQjJuMjJV7/T8OemL0k2iW7smpl08A==",
- "requires": {
- "@hashicorp/react-global-styles": "^4.5.0",
- "@hashicorp/react-inline-svg": "^1.0.2",
- "slugify": "^1.3.6"
},
"dependencies": {
"@hashicorp/react-inline-svg": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz",
"integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw=="
+ },
+ "@hashicorp/react-tabs": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-tabs/-/react-tabs-0.4.2.tgz",
+ "integrity": "sha512-sPW1zBdlAbDU7uK57U1/TUKhQbkqcLrxO6mwQLfybuEI1pRmljGK1h9hTXOfHRy9bBxGQeJ1FtmbqcvKspP/Kg==",
+ "requires": {
+ "@hashicorp/react-global-styles": "^4.4.2",
+ "@hashicorp/react-inline-svg": "^1.0.2",
+ "@tippy.js/react": "^3.1.1"
+ }
+ }
+ }
+ },
+ "@hashicorp/react-alert": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-alert/-/react-alert-2.0.3.tgz",
+ "integrity": "sha512-03qWTvECGrG2Z0cm/w71J/KmSBJrUem1QTdRuGFHLTPGgAdIgI90xWpYWmUjGw7gXrxJ/q1yY2JwbfpHwRrpPg=="
+ },
+ "@hashicorp/react-alert-banner": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-alert-banner/-/react-alert-banner-4.1.0.tgz",
+ "integrity": "sha512-PyUZwKqOqN5GuB14dMxgYMq5HMTtm7y2fArsjhOnS8TK+OsjT6hTwKZSEYazCOMXYW8ps5x5MV1RFExwYrwQvQ==",
+ "requires": {
+ "js-cookie": "2.2.0",
+ "slugify": "1.3.4"
+ },
+ "dependencies": {
+ "js-cookie": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.0.tgz",
+ "integrity": "sha1-Gywnmm7s44ChIWi5JIUmWzWx7/s="
+ },
+ "slugify": {
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.3.4.tgz",
+ "integrity": "sha512-KP0ZYk5hJNBS8/eIjGkFDCzGQIoZ1mnfQRYS5WM3273z+fxGWXeN0fkwf2ebEweydv9tioZIHGZKoF21U07/nw=="
}
}
},
+ "@hashicorp/react-button": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-button/-/react-button-3.0.1.tgz",
+ "integrity": "sha512-kuG6migHYysTH9GZlA9sHFrlgcJrnB46i1UjXUlZ9duVT3P4JzjM57K1sU+LNXlr3qDUENkcABqFhluEGg8TXg==",
+ "requires": {
+ "@hashicorp/react-inline-svg": "^1.0.0",
+ "slugify": "1.3.6"
+ }
+ },
"@hashicorp/react-consent-manager": {
"version": "2.1.6",
"resolved": "https://registry.npmjs.org/@hashicorp/react-consent-manager/-/react-consent-manager-2.1.6.tgz",
@@ -1512,20 +1557,31 @@
"js-cookie": "^2.2.0",
"object-assign": "^4.1.1",
"unfetch": "^4.1.0"
+ },
+ "dependencies": {
+ "@hashicorp/react-button": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-button/-/react-button-2.3.0.tgz",
+ "integrity": "sha512-1C6V8OxadkdDAkwgItDfNxx7ns9EB6znK39V94RBiPvElmsNLCEG7zujcQX71V2n+HMSv1JPgDvXp4WLICzK+Q==",
+ "requires": {
+ "@hashicorp/react-inline-svg": "^1.0.0",
+ "slugify": "^1.3.6"
+ }
+ }
}
},
"@hashicorp/react-content": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@hashicorp/react-content/-/react-content-4.0.2.tgz",
- "integrity": "sha512-wVrjV2yad+Y41drxsXeDGkfRXNbhQiup7T5yt9tqoF94d1mBgSDD005M9+DOOpAaJL+4WdCdwmwGoBCHSSF91g=="
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-content/-/react-content-5.1.0.tgz",
+ "integrity": "sha512-9odUq0SSxvQbCTGnqKQe9GWenBee4Wnp3RwjDNHLKZa/NULRD4PqkIskeIJbVqTvNqqUuR5xfq/VBGXMYyBRnw=="
},
"@hashicorp/react-docs-page": {
- "version": "5.0.3",
- "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-page/-/react-docs-page-5.0.3.tgz",
- "integrity": "sha512-5yginb72ZWYjbFOAcOv7adJps/UiWws/H/tRdJIx2MMhIfiYjjjybZXe9TOmhS1+T7xXokvPMleJ2JgVN1NU2Q==",
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-page/-/react-docs-page-6.2.0.tgz",
+ "integrity": "sha512-tQAaukpfF3wZKNoogVTlSVPvEUyRfbRNv6RDIavzV6nF3KwmPndbvtqEsZD4NrHQ1ZpZkXnLvHlR+fcPgvIIDA==",
"requires": {
- "@hashicorp/react-content": "^4.0.2",
- "@hashicorp/react-docs-sidenav": "^4.0.1",
+ "@hashicorp/react-content": "^5.1.0",
+ "@hashicorp/react-docs-sidenav": "^5.1.0",
"@hashicorp/react-head": "^1.1.3",
"@hashicorp/react-inline-svg": "^1.0.2"
},
@@ -1538,12 +1594,12 @@
}
},
"@hashicorp/react-docs-sidenav": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-sidenav/-/react-docs-sidenav-4.0.1.tgz",
- "integrity": "sha512-a8iv+H+kt56dKLhqcMh+RWnzOp9Lo21h4hOHtFPRQWCu7x0PIxKSAKlDJxLr5k3mYEYo66jofItqvCBvWHc3tw==",
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-sidenav/-/react-docs-sidenav-5.1.0.tgz",
+ "integrity": "sha512-JnIV2tDLxlTJtrwFMAoKKloIJi/xclNSr37sTZTTAdiHM/m0ko+TcsB7gb1ISZlRoIpMOvM6YQHn5M+Niii4bA==",
"requires": {
"@hashicorp/react-link-wrap": "^0.0.3",
- "fuzzysearch": "^1.0.3"
+ "fuzzysearch": "1.0.3"
}
},
"@hashicorp/react-enterprise-alert": {
@@ -1559,17 +1615,91 @@
"resolved": "https://registry.npmjs.org/@hashicorp/react-global-styles/-/react-global-styles-4.5.0.tgz",
"integrity": "sha512-CBLEL2PnjMHaT2XT7rLs/QvkamcIKD3ckvUWcCf9mSiYHTuTNbb8gJpQvVSEenN+ISFxAt1FVRQ7aJnnBYjVWg=="
},
+ "@hashicorp/react-hashi-stack-menu": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-hashi-stack-menu/-/react-hashi-stack-menu-1.0.3.tgz",
+ "integrity": "sha512-bzO6fBodh61OrunYIMQKfGSJQUKIq70TQ74dt2trBPjBsgURHMCIkiMmKffjuSdJjhCxx2nb+y0/B/PwxxHxmg==",
+ "requires": {
+ "@hashicorp/react-inline-svg": "^1.0.2",
+ "slugify": "1.3.4"
+ },
+ "dependencies": {
+ "@hashicorp/react-inline-svg": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz",
+ "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw=="
+ },
+ "slugify": {
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.3.4.tgz",
+ "integrity": "sha512-KP0ZYk5hJNBS8/eIjGkFDCzGQIoZ1mnfQRYS5WM3273z+fxGWXeN0fkwf2ebEweydv9tioZIHGZKoF21U07/nw=="
+ }
+ }
+ },
"@hashicorp/react-head": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/@hashicorp/react-head/-/react-head-1.1.3.tgz",
"integrity": "sha512-66Iz5cmHLEh7m0mWCbCiG3t+LM6RJaX7M72FQDyWWbUHm24WheDTpII4KYTpLgK9HM+UlaHW2pqFAwBzfAboCA=="
},
+ "@hashicorp/react-hero": {
+ "version": "3.1.9",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-hero/-/react-hero-3.1.9.tgz",
+ "integrity": "sha512-SbIDp5GUc5B5mYa6wj9JZJDaQcInEcumb2HA2eq3jDaoW3hmwWGyr49S1RNIVukEUze8TF+bHvSDem8B5MLuxw==",
+ "requires": {
+ "@hashicorp/js-utils": "^1.0.8-alpha.0",
+ "@hashicorp/localstorage-polyfill": "^1.0.14",
+ "@hashicorp/react-alert": "^2.0.3",
+ "@hashicorp/react-button": "^2.2.8",
+ "@hashicorp/react-image": "^2.0.3",
+ "@hashicorp/react-text-input": "^2.0.3",
+ "formik": "^1.5.8",
+ "marked": "^0.7.0",
+ "promise-polyfill": "^8.1.0",
+ "query-string": "^5.1.1"
+ },
+ "dependencies": {
+ "@hashicorp/js-utils": {
+ "version": "1.0.8-alpha.0",
+ "resolved": "https://registry.npmjs.org/@hashicorp/js-utils/-/js-utils-1.0.8-alpha.0.tgz",
+ "integrity": "sha512-Sa51DV8GPlvmrcRP9t7HlOysqEZeZ4xrCC2Jga7olONKaDfw+Jip1+ihJFeBszMaa9nvu2uB0Kxpxn0W9w9s2w=="
+ },
+ "@hashicorp/react-button": {
+ "version": "2.2.8",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-button/-/react-button-2.2.8.tgz",
+ "integrity": "sha512-dEn1L/q4OEB35ttc/MmfewXm/SWSD8S3lVTum67GHoaQdxxIU5DFI1GzE+7soQJuIkAqoqMk6s5BvBUW966ksQ==",
+ "requires": {
+ "@hashicorp/react-global-styles": "^4.6.1",
+ "@hashicorp/react-inline-svg": "^1.0.2",
+ "slugify": "^1.3.6"
+ }
+ },
+ "@hashicorp/react-global-styles": {
+ "version": "4.6.1",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-global-styles/-/react-global-styles-4.6.1.tgz",
+ "integrity": "sha512-a2eWgjLwGAC2LjUHE7Xt6sRGGjyTWfrc4N+qVxsyZw4eE0EiNhMIKDYHWjmtb+tGh8r8j+ca3tSjsuOUePVPUw=="
+ },
+ "@hashicorp/react-image": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-image/-/react-image-2.0.4.tgz",
+ "integrity": "sha512-rJCx74lxQE9l9LpFhlxSjQ0yjrzjce5uzEGmMgPvMsNiQtgetjNyeg1p5N8k7xRGYXNapt8uY2kZiE69OyL9cQ==",
+ "requires": {
+ "object-assign": "^4.1.1",
+ "query-string": "5.1.1"
+ }
+ },
+ "@hashicorp/react-inline-svg": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz",
+ "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw=="
+ }
+ }
+ },
"@hashicorp/react-image": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/@hashicorp/react-image/-/react-image-2.0.4.tgz",
- "integrity": "sha512-rJCx74lxQE9l9LpFhlxSjQ0yjrzjce5uzEGmMgPvMsNiQtgetjNyeg1p5N8k7xRGYXNapt8uY2kZiE69OyL9cQ==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-image/-/react-image-3.0.1.tgz",
+ "integrity": "sha512-6NXEBKWmKdmBeN+f9jy8J6k62mCDNrPxsH2glYqyDL8nWhvHGsoB9ODtPWjoNky1AM9KKS3E5nd1lFnQclp+Ew==",
"requires": {
- "object-assign": "^4.1.1",
+ "object-assign": "4.1.1",
"query-string": "5.1.1"
}
},
@@ -1586,20 +1716,43 @@
"is-absolute-url": "^3.0.3"
}
},
- "@hashicorp/react-mega-nav": {
- "version": "4.0.1-2",
- "resolved": "https://registry.npmjs.org/@hashicorp/react-mega-nav/-/react-mega-nav-4.0.1-2.tgz",
- "integrity": "sha512-uDw+vk6YBDSR9sZoZa3oYd0N15UzYpuGLV1/2lofM6O4/IhEkWlGlsyWpzWABV+pcHBB4KOqnCUxpvmS9Ar61g==",
- "requires": {
- "@hashicorp/react-inline-svg": "^1.0.0"
- }
- },
"@hashicorp/react-product-downloader": {
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/@hashicorp/react-product-downloader/-/react-product-downloader-4.1.3.tgz",
"integrity": "sha512-r8yQV0awvxsa382aDhXcEqsyrRy9ThR84TWXISWj7gYENmxCV5bzHvle/Pqpm7BpRhpK7O9mUwoKMo4jAid1gg==",
"requires": {
"@hashicorp/react-button": "^2.2.6"
+ },
+ "dependencies": {
+ "@hashicorp/react-button": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-button/-/react-button-2.3.0.tgz",
+ "integrity": "sha512-1C6V8OxadkdDAkwgItDfNxx7ns9EB6znK39V94RBiPvElmsNLCEG7zujcQX71V2n+HMSv1JPgDvXp4WLICzK+Q==",
+ "requires": {
+ "@hashicorp/react-inline-svg": "^1.0.0",
+ "slugify": "^1.3.6"
+ }
+ }
+ }
+ },
+ "@hashicorp/react-product-features-list": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-product-features-list/-/react-product-features-list-2.1.0.tgz",
+ "integrity": "sha512-M5KSuxswCC1kqOGksX1OtCfmAed+ArbLnEdaFkFOyTI8ldnSCAO9iaME0TwFDP7du2vlWay4EDEhib/L51zxMg==",
+ "requires": {
+ "@hashicorp/react-button": "^3.0.1",
+ "@hashicorp/react-image": "^2.0.3"
+ },
+ "dependencies": {
+ "@hashicorp/react-image": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-image/-/react-image-2.0.4.tgz",
+ "integrity": "sha512-rJCx74lxQE9l9LpFhlxSjQ0yjrzjce5uzEGmMgPvMsNiQtgetjNyeg1p5N8k7xRGYXNapt8uY2kZiE69OyL9cQ==",
+ "requires": {
+ "object-assign": "^4.1.1",
+ "query-string": "5.1.1"
+ }
+ }
}
},
"@hashicorp/react-section-header": {
@@ -1623,6 +1776,15 @@
"isomorphic-unfetch": "^3.0.0"
},
"dependencies": {
+ "@hashicorp/react-button": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-button/-/react-button-2.3.0.tgz",
+ "integrity": "sha512-1C6V8OxadkdDAkwgItDfNxx7ns9EB6znK39V94RBiPvElmsNLCEG7zujcQX71V2n+HMSv1JPgDvXp4WLICzK+Q==",
+ "requires": {
+ "@hashicorp/react-inline-svg": "^1.0.0",
+ "slugify": "^1.3.6"
+ }
+ },
"@hashicorp/react-inline-svg": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz",
@@ -1636,11 +1798,11 @@
}
},
"@hashicorp/react-tabs": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/@hashicorp/react-tabs/-/react-tabs-0.4.2.tgz",
- "integrity": "sha512-sPW1zBdlAbDU7uK57U1/TUKhQbkqcLrxO6mwQLfybuEI1pRmljGK1h9hTXOfHRy9bBxGQeJ1FtmbqcvKspP/Kg==",
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-tabs/-/react-tabs-0.6.1.tgz",
+ "integrity": "sha512-8WvgqkrfIHnD7Xj6ucjxs8p2cpb2moR+xl//5Jarjcv2BgafvWNluM00HtusvgfOwNpB7xNZunBlajHXOMe58g==",
"requires": {
- "@hashicorp/react-global-styles": "^4.4.2",
+ "@hashicorp/react-global-styles": "^4.5.0",
"@hashicorp/react-inline-svg": "^1.0.2",
"@tippy.js/react": "^3.1.1"
},
@@ -1652,11 +1814,39 @@
}
}
},
+ "@hashicorp/react-text-input": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-text-input/-/react-text-input-2.0.3.tgz",
+ "integrity": "sha512-Vd4rEGSwOFl6lkeBlaPNWn8KePDdV+2uIFDYKUDOVVLhi/6GetUpxJEvxeo1S2MymTjlzQsAh6IXrZnQy+FT3Q==",
+ "requires": {
+ "uuid": "^3.3.2"
+ }
+ },
"@hashicorp/react-toggle": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/@hashicorp/react-toggle/-/react-toggle-1.0.3.tgz",
"integrity": "sha512-8RImlv34csyEh9hbPPZxFOHKtoHGvZJj8yQshafeggm8AOM8C5BOnx9nz/l6OBUOngn/2wOPulxOVB8AtcvaKA=="
},
+ "@hashicorp/react-use-cases": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-use-cases/-/react-use-cases-2.0.1.tgz",
+ "integrity": "sha512-w+uRvOmqZxwXY/46dan97lBfYKh4Lf2ESbb8HmsBqIyu4KvYQ6P6Vuyu7VDDr/ZJ8iefccWiO/o4VAvR1OsgEQ==",
+ "requires": {
+ "@hashicorp/react-image": "^2.0.3",
+ "marked": "^0.7.0"
+ },
+ "dependencies": {
+ "@hashicorp/react-image": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-image/-/react-image-2.0.4.tgz",
+ "integrity": "sha512-rJCx74lxQE9l9LpFhlxSjQ0yjrzjce5uzEGmMgPvMsNiQtgetjNyeg1p5N8k7xRGYXNapt8uY2kZiE69OyL9cQ==",
+ "requires": {
+ "object-assign": "^4.1.1",
+ "query-string": "5.1.1"
+ }
+ }
+ }
+ },
"@hashicorp/react-vertical-text-block-list": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@hashicorp/react-vertical-text-block-list/-/react-vertical-text-block-list-2.0.3.tgz",
@@ -1665,6 +1855,17 @@
"@hashicorp/react-image": "^2.0.3",
"@hashicorp/react-link-wrap": "^0.0.3",
"marked": "^0.7.0"
+ },
+ "dependencies": {
+ "@hashicorp/react-image": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/@hashicorp/react-image/-/react-image-2.0.4.tgz",
+ "integrity": "sha512-rJCx74lxQE9l9LpFhlxSjQ0yjrzjce5uzEGmMgPvMsNiQtgetjNyeg1p5N8k7xRGYXNapt8uY2kZiE69OyL9cQ==",
+ "requires": {
+ "object-assign": "^4.1.1",
+ "query-string": "5.1.1"
+ }
+ }
}
},
"@hashicorp/remark-plugins": {
@@ -1912,11 +2113,6 @@
"fastq": "^1.6.0"
}
},
- "@panva/asn1.js": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/@panva/asn1.js/-/asn1.js-1.0.0.tgz",
- "integrity": "sha512-UdkG3mLEqXgnlKsWanWcgb6dOjUzJ+XC5f+aWw30qrtjxeNUSfKX1cd5FBzOaXQumoe9nIqeZUvrRJS03HCCtw=="
- },
"@segment/in-eu": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/@segment/in-eu/-/in-eu-0.2.1.tgz",
@@ -2535,11 +2731,6 @@
"color-convert": "^1.9.0"
}
},
- "any-promise": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
- "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8="
- },
"anymatch": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
@@ -2678,11 +2869,6 @@
}
}
},
- "app-root-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-3.0.0.tgz",
- "integrity": "sha512-qMcx+Gy2UZynHjOHOIXPNvpf+9cjvk3cWrBBK7zg4gH9+clobJRb9NGzcT7mQTcV/6Gm/1WelUtqxVXnNlrwcw=="
- },
"aproba": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
@@ -2795,6 +2981,11 @@
"resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
"integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0="
},
+ "asap": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
+ "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY="
+ },
"asn1.js": {
"version": "5.4.1",
"resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
@@ -3642,11 +3833,6 @@
"resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
"integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI="
},
- "buffer-equal-constant-time": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
- "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk="
- },
"buffer-fill": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
@@ -4158,156 +4344,6 @@
"restore-cursor": "^3.1.0"
}
},
- "cli-highlight": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/cli-highlight/-/cli-highlight-2.1.4.tgz",
- "integrity": "sha512-s7Zofobm20qriqDoU9sXptQx0t2R9PEgac92mENNm7xaEe1hn71IIMsXMK+6encA6WRCWWxIGQbipr3q998tlQ==",
- "requires": {
- "chalk": "^3.0.0",
- "highlight.js": "^9.6.0",
- "mz": "^2.4.0",
- "parse5": "^5.1.1",
- "parse5-htmlparser2-tree-adapter": "^5.1.1",
- "yargs": "^15.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
- "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
- "requires": {
- "@types/color-name": "^1.1.1",
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
- "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "cliui": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
- "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
- "requires": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^6.2.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
- },
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "requires": {
- "p-limit": "^2.2.0"
- }
- },
- "p-try": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
- "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
- },
- "path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
- },
- "string-width": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
- "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
- "requires": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.0"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
- "yargs": {
- "version": "15.4.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
- "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
- "requires": {
- "cliui": "^6.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^4.1.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^4.2.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^18.1.2"
- }
- }
- }
- },
"cli-truncate": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz",
@@ -4392,41 +4428,6 @@
"tiny-emitter": "^2.0.0"
}
},
- "cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "requires": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg=="
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- },
- "wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
- "requires": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
- }
- }
- }
- },
"clone-deep": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
@@ -4655,6 +4656,11 @@
"resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
"integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40="
},
+ "core-js": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
+ "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY="
+ },
"core-js-compat": {
"version": "3.6.5",
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz",
@@ -4747,6 +4753,15 @@
"sha.js": "^2.4.8"
}
},
+ "create-react-context": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.2.3.tgz",
+ "integrity": "sha512-CQBmD0+QGgTaxDL3OX1IDXYqjkp2It4RIbcb99jS6AEg27Ga+a9G3JtK6SIu0HBwPLZlmwt9F7UwWA4Bn92Rag==",
+ "requires": {
+ "fbjs": "^0.8.0",
+ "gud": "^1.0.0"
+ }
+ },
"cross-fetch": {
"version": "3.0.6",
"resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.0.6.tgz",
@@ -4783,11 +4798,6 @@
"randomfill": "^1.0.3"
}
},
- "crypto-js": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.0.0.tgz",
- "integrity": "sha512-bzHZN8Pn+gS7DQA6n+iUmBfl0hO5DJq++QP3U6uTucDtk/0iGpXd/Gg7CGR0p8tJhofJyaKoWBuJI4eAO00BBg=="
- },
"css": {
"version": "2.2.4",
"resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz",
@@ -5192,6 +5202,11 @@
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ="
},
+ "deepmerge": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
+ "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg=="
+ },
"define-properties": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
@@ -5360,11 +5375,6 @@
"tslib": "^1.10.0"
}
},
- "dotenv": {
- "version": "8.2.0",
- "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz",
- "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw=="
- },
"download": {
"version": "6.2.5",
"resolved": "https://registry.npmjs.org/download/-/download-6.2.5.tgz",
@@ -5416,14 +5426,6 @@
"stream-shift": "^1.0.0"
}
},
- "ecdsa-sig-formatter": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
- "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
- "requires": {
- "safe-buffer": "^5.0.1"
- }
- },
"ee-first": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
@@ -5478,6 +5480,24 @@
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
},
+ "encoding": {
+ "version": "0.1.13",
+ "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
+ "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
+ "requires": {
+ "iconv-lite": "^0.6.2"
+ },
+ "dependencies": {
+ "iconv-lite": {
+ "version": "0.6.2",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz",
+ "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==",
+ "requires": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ }
+ }
+ }
+ },
"end-of-stream": {
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
@@ -6201,6 +6221,20 @@
"reusify": "^1.0.4"
}
},
+ "fbjs": {
+ "version": "0.8.17",
+ "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.17.tgz",
+ "integrity": "sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=",
+ "requires": {
+ "core-js": "^1.0.0",
+ "isomorphic-fetch": "^2.1.1",
+ "loose-envify": "^1.0.0",
+ "object-assign": "^4.1.0",
+ "promise": "^7.1.1",
+ "setimmediate": "^1.0.5",
+ "ua-parser-js": "^0.7.18"
+ }
+ },
"fd-slicer": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
@@ -6214,11 +6248,6 @@
"resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz",
"integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw=="
},
- "figlet": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/figlet/-/figlet-1.5.0.tgz",
- "integrity": "sha512-ZQJM4aifMpz6H19AW1VqvZ7l4pOE9p7i/3LyxgO2kp+PO/VcDYNqIHEMtkccqIhTXMKci4kjueJr/iCQEaT/Ww=="
- },
"figures": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
@@ -6402,6 +6431,34 @@
"mime-types": "^2.1.12"
}
},
+ "formik": {
+ "version": "1.5.8",
+ "resolved": "https://registry.npmjs.org/formik/-/formik-1.5.8.tgz",
+ "integrity": "sha512-fNvPe+ddbh+7xiByT25vuso2p2hseG/Yvuj211fV1DbCjljUEG9OpgRpcb7g7O3kxHX/q31cbZDzMxJXPWSNwA==",
+ "requires": {
+ "create-react-context": "^0.2.2",
+ "deepmerge": "^2.1.1",
+ "hoist-non-react-statics": "^3.3.0",
+ "lodash": "^4.17.14",
+ "lodash-es": "^4.17.14",
+ "prop-types": "^15.6.1",
+ "react-fast-compare": "^2.0.1",
+ "tiny-warning": "^1.0.2",
+ "tslib": "^1.9.3"
+ },
+ "dependencies": {
+ "deepmerge": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz",
+ "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA=="
+ },
+ "react-fast-compare": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz",
+ "integrity": "sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw=="
+ }
+ }
+ },
"forwarded": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
@@ -6494,11 +6551,6 @@
"resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
"integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc="
},
- "futoin-hkdf": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/futoin-hkdf/-/futoin-hkdf-1.3.2.tgz",
- "integrity": "sha512-3EVi3ETTyJg5PSXlxLCaUVVn0pSbDf62L3Gwxne7Uq+d8adOSNWQAad4gg7WToHkcgnCJb3Wlb1P8r4Evj4GPw=="
- },
"fuzzysearch": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/fuzzysearch/-/fuzzysearch-1.0.3.tgz",
@@ -6509,11 +6561,6 @@
"resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz",
"integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg=="
},
- "get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
- },
"get-own-enumerable-property-symbols": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz",
@@ -6723,6 +6770,11 @@
"strip-bom-string": "^1.0.0"
}
},
+ "gud": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/gud/-/gud-1.0.0.tgz",
+ "integrity": "sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw=="
+ },
"gzip-size": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz",
@@ -6984,11 +7036,6 @@
"tslib": "^1.10.0"
}
},
- "highlight.js": {
- "version": "9.18.3",
- "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.18.3.tgz",
- "integrity": "sha512-zBZAmhSupHIl5sITeMqIJnYCDfAEc3Gdkqj65wC1lpI468MMQeeQkhcIAvk+RylAkxrCcI9xy9piHiXeQ1BdzQ=="
- },
"hmac-drbg": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
@@ -6999,6 +7046,14 @@
"minimalistic-crypto-utils": "^1.0.1"
}
},
+ "hoist-non-react-statics": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
+ "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
+ "requires": {
+ "react-is": "^16.7.0"
+ }
+ },
"hoopy": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz",
@@ -7881,6 +7936,31 @@
"resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
"integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
},
+ "isomorphic-fetch": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz",
+ "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=",
+ "requires": {
+ "node-fetch": "^1.0.1",
+ "whatwg-fetch": ">=0.10.0"
+ },
+ "dependencies": {
+ "is-stream": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
+ },
+ "node-fetch": {
+ "version": "1.7.3",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz",
+ "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==",
+ "requires": {
+ "encoding": "^0.1.11",
+ "is-stream": "^1.0.1"
+ }
+ }
+ }
+ },
"isomorphic-unfetch": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/isomorphic-unfetch/-/isomorphic-unfetch-3.0.0.tgz",
@@ -7941,14 +8021,6 @@
}
}
},
- "jose": {
- "version": "1.28.0",
- "resolved": "https://registry.npmjs.org/jose/-/jose-1.28.0.tgz",
- "integrity": "sha512-JmfDRzt/HSj8ipd9TsDtEHoLUnLYavG+7e8F6s1mx2jfVSfXOTaFQsJUydbjJpTnTDHP1+yKL9Ke7ktS/a0Eiw==",
- "requires": {
- "@panva/asn1.js": "^1.0.0"
- }
- },
"js-cookie": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz",
@@ -8015,35 +8087,6 @@
"universalify": "^1.0.0"
}
},
- "jsonwebtoken": {
- "version": "8.5.1",
- "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz",
- "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==",
- "requires": {
- "jws": "^3.2.2",
- "lodash.includes": "^4.3.0",
- "lodash.isboolean": "^3.0.3",
- "lodash.isinteger": "^4.0.4",
- "lodash.isnumber": "^3.0.3",
- "lodash.isplainobject": "^4.0.6",
- "lodash.isstring": "^4.0.1",
- "lodash.once": "^4.0.0",
- "ms": "^2.1.1",
- "semver": "^5.6.0"
- },
- "dependencies": {
- "ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
- },
- "semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ=="
- }
- }
- },
"jstz": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/jstz/-/jstz-2.1.1.tgz",
@@ -8058,30 +8101,6 @@
"object.assign": "^4.1.0"
}
},
- "jwa": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz",
- "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==",
- "requires": {
- "buffer-equal-constant-time": "1.0.1",
- "ecdsa-sig-formatter": "1.0.11",
- "safe-buffer": "^5.0.1"
- }
- },
- "jws": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz",
- "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==",
- "requires": {
- "jwa": "^1.4.1",
- "safe-buffer": "^5.0.1"
- }
- },
- "jwt-decode": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-2.2.0.tgz",
- "integrity": "sha1-fYa9VmefWM5qhHBKZX3TkruoGnk="
- },
"katex": {
"version": "0.12.0",
"resolved": "https://registry.npmjs.org/katex/-/katex-0.12.0.tgz",
@@ -8231,6 +8250,11 @@
}
}
},
+ "load-script": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/load-script/-/load-script-1.0.0.tgz",
+ "integrity": "sha1-BJGTngvuVkPuSUp+PaPSuscMbKQ="
+ },
"loader-runner": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz",
@@ -8267,46 +8291,16 @@
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
"integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA=="
},
+ "lodash-es": {
+ "version": "4.17.15",
+ "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.15.tgz",
+ "integrity": "sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ=="
+ },
"lodash._reinterpolate": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
"integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0="
},
- "lodash.includes": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz",
- "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8="
- },
- "lodash.isboolean": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz",
- "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY="
- },
- "lodash.isinteger": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz",
- "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M="
- },
- "lodash.isnumber": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz",
- "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w="
- },
- "lodash.isplainobject": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
- "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs="
- },
- "lodash.isstring": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz",
- "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE="
- },
- "lodash.once": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz",
- "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w="
- },
"lodash.sortby": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
@@ -8600,6 +8594,11 @@
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
},
+ "memoize-one": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.1.1.tgz",
+ "integrity": "sha512-HKeeBpWvqiVJD57ZUAsJNm71eHTykffzcLZVYWiVfQeI1rJtuEaS7hQiEpWfVVk18donPwJEcFKIkCmPJNOhHA=="
+ },
"memory-fs": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz",
@@ -8860,16 +8859,6 @@
"resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
"integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA=="
},
- "mz": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz",
- "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==",
- "requires": {
- "any-promise": "^1.0.0",
- "object-assign": "^4.0.1",
- "thenify-all": "^1.0.0"
- }
- },
"nan": {
"version": "2.14.1",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz",
@@ -9121,25 +9110,6 @@
}
}
},
- "next-auth": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/next-auth/-/next-auth-3.1.0.tgz",
- "integrity": "sha512-e+s6hjPZpqbnjla9WOi0VuLkDlLMU3cJmS0jTBBvsvSGsOPvMbaCCAMBEoNV3nWSgPrq6zLG2dixmCCxzG7fXA==",
- "requires": {
- "crypto-js": "^4.0.0",
- "futoin-hkdf": "^1.3.2",
- "jose": "^1.27.2",
- "jsonwebtoken": "^8.5.1",
- "jwt-decode": "^2.2.0",
- "nodemailer": "^6.4.6",
- "oauth": "^0.9.15",
- "preact": "^10.4.1",
- "preact-render-to-string": "^5.1.7",
- "querystring": "^0.2.0",
- "require_optional": "^1.0.1",
- "typeorm": "^0.2.24"
- }
- },
"next-mdx-remote": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/next-mdx-remote/-/next-mdx-remote-1.0.0.tgz",
@@ -9308,11 +9278,6 @@
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.61.tgz",
"integrity": "sha512-DD5vebQLg8jLCOzwupn954fbIiZht05DAZs0k2u8NStSe6h9XdsuIQL8hSRKYiU8WUQRznmSDrKGbv3ObOmC7g=="
},
- "nodemailer": {
- "version": "6.4.11",
- "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.4.11.tgz",
- "integrity": "sha512-BVZBDi+aJV4O38rxsUh164Dk1NCqgh6Cm0rQSb9SK/DHGll/DrCMnycVDD7msJgZCnmVa8ASo8EZzR7jsgTukQ=="
- },
"normalize-html-whitespace": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/normalize-html-whitespace/-/normalize-html-whitespace-1.0.0.tgz",
@@ -9423,11 +9388,6 @@
"resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz",
"integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4="
},
- "oauth": {
- "version": "0.9.15",
- "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz",
- "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE="
- },
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
@@ -9765,11 +9725,6 @@
"callsites": "^3.0.0"
}
},
- "parent-require": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/parent-require/-/parent-require-1.0.0.tgz",
- "integrity": "sha1-dGoWdjgIOoYLDu9nMssn7UbDKXc="
- },
"parse-asn1": {
"version": "5.1.6",
"resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz",
@@ -9803,19 +9758,6 @@
"error-ex": "^1.2.0"
}
},
- "parse5": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz",
- "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug=="
- },
- "parse5-htmlparser2-tree-adapter": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-5.1.1.tgz",
- "integrity": "sha512-CF+TKjXqoqyDwHqBhFQ+3l5t83xYi6fVT1tQNg+Ye0JRLnTxWvIroCjEp1A0k4lneHNBGnICUf0cfYVYGEazqw==",
- "requires": {
- "parse5": "^5.1.1"
- }
- },
"parseurl": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
@@ -10616,19 +10558,6 @@
"uniq": "^1.0.1"
}
},
- "preact": {
- "version": "10.5.2",
- "resolved": "https://registry.npmjs.org/preact/-/preact-10.5.2.tgz",
- "integrity": "sha512-4y2Q6kMiJtMONMJR7z+o8P5tGkMzVItyy77AXGrUdusv+dk4jwoS3KrpCBkFloY2xsScRJYwZQZrx89tTjDkOw=="
- },
- "preact-render-to-string": {
- "version": "5.1.10",
- "resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-5.1.10.tgz",
- "integrity": "sha512-40svy7NDe5Qe0ymdsIC11f0hZb05MeTSUqqIaWJ5DEFCh/sF86KcpRW0kN/ymGYDVVUCfv9qFrVuLCXR7aQxgQ==",
- "requires": {
- "pretty-format": "^3.8.0"
- }
- },
"prelude-ls": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
@@ -10653,11 +10582,6 @@
"fast-diff": "^1.1.2"
}
},
- "pretty-format": {
- "version": "3.8.0",
- "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-3.8.0.tgz",
- "integrity": "sha1-v77VbV6ad2ZF9LH/eqGjrE+jw4U="
- },
"prismjs": {
"version": "1.21.0",
"resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.21.0.tgz",
@@ -10681,11 +10605,24 @@
"resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
"integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA=="
},
+ "promise": {
+ "version": "7.3.1",
+ "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz",
+ "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==",
+ "requires": {
+ "asap": "~2.0.3"
+ }
+ },
"promise-inflight": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz",
"integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM="
},
+ "promise-polyfill": {
+ "version": "8.1.3",
+ "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-8.1.3.tgz",
+ "integrity": "sha512-MG5r82wBzh7pSKDRa9y+vllNHz3e3d4CNj1PQE4BQYxLme0gKYYBm9YENq+UkEikyZ0XbiGWxYlVw3Rl9O/U8g=="
+ },
"prop-types": {
"version": "15.7.2",
"resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz",
@@ -10892,11 +10829,33 @@
}
}
},
+ "react-fast-compare": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz",
+ "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA=="
+ },
+ "react-intersection-observer": {
+ "version": "8.29.0",
+ "resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-8.29.0.tgz",
+ "integrity": "sha512-Bqp7GBa5Aieo8C33Bz0e5WuUnFUKN3WOayKMT/2f0ujfW+YpzOEdNE4MK/TnaHp+cisK7n1At3qcFaNPfhHbqw=="
+ },
"react-is": {
"version": "16.13.1",
"resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
"integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
},
+ "react-player": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/react-player/-/react-player-2.6.2.tgz",
+ "integrity": "sha512-Wi9DynNSVgddKxac5OzsH0Upk6VRYssvLLGgCRw6vsjzqMX6S5N26WDRNYnLaHykxFNtpPSDc53fXDe52hMaCg==",
+ "requires": {
+ "deepmerge": "^4.0.0",
+ "load-script": "^1.0.0",
+ "memoize-one": "^5.1.1",
+ "prop-types": "^15.7.2",
+ "react-fast-compare": "^3.0.1"
+ }
+ },
"react-refresh": {
"version": "0.8.3",
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.8.3.tgz",
@@ -10969,11 +10928,6 @@
"strip-indent": "^1.0.1"
}
},
- "reflect-metadata": {
- "version": "0.1.13",
- "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz",
- "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg=="
- },
"refractor": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/refractor/-/refractor-3.1.0.tgz",
@@ -11327,37 +11281,6 @@
"resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz",
"integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs="
},
- "require-directory": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I="
- },
- "require-main-filename": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
- "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
- },
- "require_optional": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz",
- "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==",
- "requires": {
- "resolve-from": "^2.0.0",
- "semver": "^5.1.0"
- },
- "dependencies": {
- "resolve-from": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz",
- "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c="
- },
- "semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ=="
- }
- }
- },
"resolve": {
"version": "1.17.0",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
@@ -11749,11 +11672,6 @@
"send": "0.17.1"
}
},
- "set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc="
- },
"set-value": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
@@ -11891,9 +11809,9 @@
}
},
"slugify": {
- "version": "1.4.5",
- "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.5.tgz",
- "integrity": "sha512-WpECLAgYaxHoEAJ8Q1Lo8HOs1ngn7LN7QjXgOLbmmfkcWvosyk4ZTXkTzKyhngK640USTZUlgoQJfED1kz5fnQ=="
+ "version": "1.3.6",
+ "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.3.6.tgz",
+ "integrity": "sha512-wA9XS475ZmGNlEnYYLPReSfuz/c3VQsEMoU43mi6OnKMCdbnFXd4/Yg7J0lBv8jkPolacMpOrWEaoYxuE1+hoQ=="
},
"snake-case": {
"version": "3.0.3",
@@ -13243,22 +13161,6 @@
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
"integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ="
},
- "thenify": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz",
- "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==",
- "requires": {
- "any-promise": "^1.0.0"
- }
- },
- "thenify-all": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz",
- "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=",
- "requires": {
- "thenify": ">= 3.1.0 < 4"
- }
- },
"through": {
"version": "2.3.8",
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
@@ -13292,6 +13194,11 @@
"integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==",
"optional": true
},
+ "tiny-warning": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz",
+ "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA=="
+ },
"tippy.js": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-5.2.1.tgz",
@@ -13520,50 +13427,16 @@
"is-typedarray": "^1.0.0"
}
},
- "typeorm": {
- "version": "0.2.26",
- "resolved": "https://registry.npmjs.org/typeorm/-/typeorm-0.2.26.tgz",
- "integrity": "sha512-sbKxK6K9sXZPCVF0weEb74UA/z1UW0sRWfI7EoOOtQaRZaLvSEwtgHPqle9t8asxEtD+gzkUdd+NqF7yH7HtIQ==",
- "requires": {
- "app-root-path": "^3.0.0",
- "buffer": "^5.1.0",
- "chalk": "^2.4.2",
- "cli-highlight": "^2.0.0",
- "debug": "^4.1.1",
- "dotenv": "^8.2.0",
- "glob": "^7.1.2",
- "js-yaml": "^3.13.1",
- "mkdirp": "^1.0.3",
- "reflect-metadata": "^0.1.13",
- "sha.js": "^2.4.11",
- "tslib": "^1.9.0",
- "xml2js": "^0.4.17",
- "yargonaut": "^1.1.2",
- "yargs": "^13.2.1"
- },
- "dependencies": {
- "chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "requires": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- }
- },
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="
- }
- }
- },
"typescript": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.0.2.tgz",
"integrity": "sha512-e4ERvRV2wb+rRZ/IQeb3jm2VxBsirQLpQhdxplZ2MEzGvDkkMmPglecnNDfSUBivMjP93vRbngYYDQqQ/78bcQ=="
},
+ "ua-parser-js": {
+ "version": "0.7.22",
+ "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.22.tgz",
+ "integrity": "sha512-YUxzMjJ5T71w6a8WWVcMGM6YWOTX27rCoIQgLXiWaxqXSx9D7DNjiGWn1aJIRSQ5qr0xuhra77bSIh6voR/46Q=="
+ },
"unbzip2-stream": {
"version": "1.4.3",
"resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz",
@@ -14370,6 +14243,11 @@
}
}
},
+ "whatwg-fetch": {
+ "version": "3.4.1",
+ "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.4.1.tgz",
+ "integrity": "sha512-sofZVzE1wKwO+EYPbWfiwzaKovWiZXf4coEzjGP9b2GBVgQRLQUZ2QcuPpQExGDAW5GItpEm6Tl4OU5mywnAoQ=="
+ },
"whatwg-url": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz",
@@ -14388,11 +14266,6 @@
"isexe": "^2.0.0"
}
},
- "which-module": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
- "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho="
- },
"which-pm-runs": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz",
@@ -14498,20 +14371,6 @@
"async-limiter": "~1.0.0"
}
},
- "xml2js": {
- "version": "0.4.23",
- "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz",
- "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==",
- "requires": {
- "sax": ">=0.6.0",
- "xmlbuilder": "~11.0.0"
- }
- },
- "xmlbuilder": {
- "version": "11.0.1",
- "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz",
- "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA=="
- },
"xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
@@ -14532,129 +14391,6 @@
"resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz",
"integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg=="
},
- "yargonaut": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/yargonaut/-/yargonaut-1.1.4.tgz",
- "integrity": "sha512-rHgFmbgXAAzl+1nngqOcwEljqHGG9uUZoPjsdZEs1w5JW9RXYzrSvH/u70C1JE5qFi0qjsdhnUX/dJRpWqitSA==",
- "requires": {
- "chalk": "^1.1.1",
- "figlet": "^1.1.1",
- "parent-require": "^1.0.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
- },
- "ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4="
- },
- "chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
- "requires": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
- }
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "requires": {
- "ansi-regex": "^2.0.0"
- }
- },
- "supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc="
- }
- }
- },
- "yargs": {
- "version": "13.3.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
- "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
- "requires": {
- "cliui": "^5.0.0",
- "find-up": "^3.0.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^13.1.2"
- },
- "dependencies": {
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
- },
- "find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "requires": {
- "locate-path": "^3.0.0"
- }
- },
- "locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "requires": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "requires": {
- "p-limit": "^2.0.0"
- }
- },
- "p-try": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
- "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU="
- },
- "yargs-parser": {
- "version": "13.1.2",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
- "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
- }
- }
- },
"yargs-parser": {
"version": "18.1.3",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
diff --git a/website/package.json b/website/package.json
index cb673aef3b..672cf8e647 100644
--- a/website/package.json
+++ b/website/package.json
@@ -5,29 +5,39 @@
"author": "HashiCorp",
"dependencies": {
"@apidevtools/json-schema-ref-parser": "^9.0.6",
+ "@hashicorp/mktg-assets": "^1.0.0-alpha.20",
"@hashicorp/nextjs-scripts": "13.0.0-canary.1",
- "@hashicorp/react-content": "4.0.2",
- "@hashicorp/react-docs-page": "5.0.3",
+ "@hashicorp/react-alert-banner": "^4.1.0",
+ "@hashicorp/react-button": "^3.0.1",
+ "@hashicorp/react-content": "5.1.0",
+ "@hashicorp/react-docs-page": "6.2.0",
"@hashicorp/react-global-styles": "4.5.0",
+ "@hashicorp/react-hashi-stack-menu": "^1.0.3",
"@hashicorp/react-head": "1.1.3",
- "@hashicorp/react-image": "2.0.4",
- "@hashicorp/react-mega-nav": "4.0.1-2",
+ "@hashicorp/react-hero": "^3.1.9",
+ "@hashicorp/react-image": "3.0.1",
"@hashicorp/react-product-downloader": "4.1.3",
+ "@hashicorp/react-product-features-list": "^2.1.0",
"@hashicorp/react-section-header": "2.0.2",
"@hashicorp/react-subnav": "3.3.1",
+ "@hashicorp/react-tabs": "^0.6.1",
+ "@hashicorp/react-use-cases": "2.0.1",
"@hashicorp/react-vertical-text-block-list": "2.0.3",
"babel-plugin-import-glob-array": "0.2.0",
"change-case": "^4.1.1",
+ "classnames": "^2.2.6",
"fs-exists-sync": "0.1.0",
"gray-matter": "4.0.2",
"js-yaml": "3.14.0",
"line-reader": "0.4.0",
"next": "9.5.3",
- "next-auth": "^3.1.0",
"next-mdx-remote": "1.0.0",
"react": "16.13.1",
"react-dom": "16.13.1",
- "readdirp": "3.4.0"
+ "react-intersection-observer": "^8.29.0",
+ "react-player": "^2.6.2",
+ "readdirp": "3.4.0",
+ "semver": "^7.3.2"
},
"devDependencies": {
"dart-linkcheck": "2.0.15",
@@ -52,7 +62,6 @@
"generate:readme": "next-hashicorp markdown-blocks README.md",
"lint": "next-hashicorp lint",
"start": "next dev",
- "dev:auth": "HASHI_ENV=preview npm start",
"static": "npm run build && npm run export && cp _redirects out/.",
"linkcheck": "linkcheck
"
}
diff --git a/website/pages/_app.js b/website/pages/_app.js
index 52bc794646..ffe853a00f 100644
--- a/website/pages/_app.js
+++ b/website/pages/_app.js
@@ -3,16 +3,17 @@ import '@hashicorp/nextjs-scripts/lib/nprogress/style.css'
import NProgress from '@hashicorp/nextjs-scripts/lib/nprogress'
import createConsentManager from '@hashicorp/nextjs-scripts/lib/consent-manager'
import useAnchorLinkAnalytics from '@hashicorp/nextjs-scripts/lib/anchor-link-analytics'
+import HashiStackMenu from '@hashicorp/react-hashi-stack-menu'
import Router from 'next/router'
import HashiHead from '@hashicorp/react-head'
import Head from 'next/head'
import { ErrorBoundary } from '@hashicorp/nextjs-scripts/lib/bugsnag'
-import ConditionalAuthProvider from 'components/conditional-auth-provider'
-import MegaNav from '@hashicorp/react-mega-nav'
import ProductSubnav from '../components/subnav'
import Footer from 'components/footer'
import Error from './_error'
import { productName } from '../data/metadata'
+import AlertBanner from '@hashicorp/react-alert-banner'
+import alertBannerData, { ALERT_BANNER_ACTIVE } from 'data/alert-banner'
NProgress({ Router })
const { ConsentManager, openConsentManager } = createConsentManager({
@@ -24,23 +25,22 @@ function App({ Component, pageProps }) {
return (
-
-
-
-
-
-
-
-
-
-
+
+ {ALERT_BANNER_ACTIVE && }
+
+
+
+
+
+
+
)
}
diff --git a/website/pages/api/auth/[...nextauth].js b/website/pages/api/auth/[...nextauth].js
deleted file mode 100644
index f1a5a7fe68..0000000000
--- a/website/pages/api/auth/[...nextauth].js
+++ /dev/null
@@ -1,12 +0,0 @@
-import nextAuthApiRoute from 'lib/next-auth-utils/config'
-
-export default (req, res) =>
- nextAuthApiRoute(
- req,
- res
- )({
- environments: { production: ['Okta', 'Auth0'], preview: ['Okta', 'Auth0'] },
- pages: {
- error: '/signin-error', // Error code passed in query string as ?error=
- },
- })
diff --git a/website/pages/community/index.jsx b/website/pages/community/index.jsx
new file mode 100644
index 0000000000..d1375b0f2b
--- /dev/null
+++ b/website/pages/community/index.jsx
@@ -0,0 +1,32 @@
+import VerticalTextBlockList from '@hashicorp/react-vertical-text-block-list'
+import SectionHeader from '@hashicorp/react-section-header'
+import Head from 'next/head'
+
+export default function CommunityPage() {
+ return (
+
+ )
+}
diff --git a/website/pages/community/style.css b/website/pages/community/style.css
new file mode 100644
index 0000000000..6a94fc27bc
--- /dev/null
+++ b/website/pages/community/style.css
@@ -0,0 +1,21 @@
+#p-community {
+ max-width: var(--site-max-width);
+ margin: 72px auto;
+
+ & .g-section-header {
+ margin-bottom: 100px;
+ }
+
+ & .g-vertical-text-block-list {
+ & .list {
+ & .body-text {
+ & a {
+ color: var(--red);
+ &::after {
+ background-color: var(--red);
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/website/pages/docs/[[...page]].jsx b/website/pages/docs/[[...page]].jsx
index 7e333e89b8..ffed7e1087 100644
--- a/website/pages/docs/[[...page]].jsx
+++ b/website/pages/docs/[[...page]].jsx
@@ -12,7 +12,7 @@ function DocsLayout(props) {
return (
\ No newline at end of file
diff --git a/website/pages/downloads/index.jsx b/website/pages/downloads/index.jsx
index 9285c3e3cc..043429fed3 100644
--- a/website/pages/downloads/index.jsx
+++ b/website/pages/downloads/index.jsx
@@ -1,17 +1,75 @@
+import { useMemo, useState, useEffect } from 'react'
import VERSION from 'data/version.js'
-import ProductDownloader from '@hashicorp/react-product-downloader'
import Head from 'next/head'
import HashiHead from '@hashicorp/react-head'
+
import { productName, productSlug } from 'data/metadata'
+import { packageManagersByOs, getStartedLinks } from 'data/downloads'
+import ReleaseInformation from 'components/downloader/release-information'
+import { sortPlatforms, detectOs } from 'components/downloader/utils/downloader'
+import DownloadCards from 'components/downloader/cards'
+import styles from './style.module.css'
+
+export default function DownloadsPage({ releaseData, previousVersions }) {
+ const sortedDownloads = useMemo(() => sortPlatforms(releaseData), [
+ releaseData,
+ ])
+ const osKeys = Object.keys(sortedDownloads)
+ const [osIndex, setSelectedOsIndex] = useState()
+
+ const tabData = Object.keys(sortedDownloads).map((osKey) => ({
+ os: osKey,
+ packageManagers: packageManagersByOs[osKey] || null,
+ }))
+
+ useEffect(() => {
+ // if we're on the client side, detect the default platform only on initial render
+ const index = osKeys.indexOf(detectOs(window.navigator.platform))
+ setSelectedOsIndex(index)
+ }, [])
-export default function DownloadsPage({ releaseData }) {
return (
-
+
+
Download {productName}
-
+ }
+ tutorialLink={{
+ label: 'View Tutorial on HashiCorp Learn',
+ href:
+ 'https://learn.hashicorp.com/tutorials/boundary/getting-started-install',
+ }}
+ />
+
+
+
+
)
diff --git a/website/pages/downloads/style.css b/website/pages/downloads/style.css
deleted file mode 100644
index 812de6d11a..0000000000
--- a/website/pages/downloads/style.css
+++ /dev/null
@@ -1,4 +0,0 @@
-#p-downloads {
- margin-top: 72px;
- margin-bottom: 72px;
-}
diff --git a/website/pages/downloads/style.module.css b/website/pages/downloads/style.module.css
new file mode 100644
index 0000000000..448aa3cb39
--- /dev/null
+++ b/website/pages/downloads/style.module.css
@@ -0,0 +1,61 @@
+.root {
+ margin-top: 72px;
+
+ & a {
+ text-decoration: underline;
+ }
+
+ & h1 {
+ text-align: center;
+ }
+
+ --brand: var(--red);
+ --brand-d1: #c03e43;
+}
+
+.logo {
+ max-width: 140px;
+}
+
+.hosting {
+ border: 1px solid var(--gray-6);
+ padding: 16px;
+ text-align: center;
+ color: var(--gray-2);
+}
+
+.gettingStarted {
+ max-width: 680px;
+ margin: 40px auto 64px;
+ text-align: center;
+
+ & p {
+ color: var(--gray-3);
+ }
+
+ & a {
+ color: var(--black);
+ }
+
+ & h2 {
+ text-align: center;
+ margin: 16px 0;
+ }
+
+ @media (--medium-up) {
+ margin: 88px auto 128px;
+ }
+}
+
+.links {
+ margin-top: 32px;
+ & a {
+ text-align: center;
+ display: block;
+ margin: 8px 0;
+ }
+}
+
+.signUpButton {
+ margin-left: 26px;
+}
diff --git a/website/pages/home/img/features/config-as-code.svg b/website/pages/home/img/features/config-as-code.svg
new file mode 100644
index 0000000000..a9b63c3312
--- /dev/null
+++ b/website/pages/home/img/features/config-as-code.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/features/identity-based-access.svg b/website/pages/home/img/features/identity-based-access.svg
new file mode 100644
index 0000000000..0ad8b0ed2f
--- /dev/null
+++ b/website/pages/home/img/features/identity-based-access.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/features/managing-dynamic-environments.svg b/website/pages/home/img/features/managing-dynamic-environments.svg
new file mode 100644
index 0000000000..4d23c8d9c6
--- /dev/null
+++ b/website/pages/home/img/features/managing-dynamic-environments.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/features/platform-agnosticity.svg b/website/pages/home/img/features/platform-agnosticity.svg
new file mode 100644
index 0000000000..2b440ff922
--- /dev/null
+++ b/website/pages/home/img/features/platform-agnosticity.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/features/session-management.svg b/website/pages/home/img/features/session-management.svg
new file mode 100644
index 0000000000..15a784f9df
--- /dev/null
+++ b/website/pages/home/img/features/session-management.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/features/session-visibility.svg b/website/pages/home/img/features/session-visibility.svg
new file mode 100644
index 0000000000..9ed48b3bde
--- /dev/null
+++ b/website/pages/home/img/features/session-visibility.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/logos/aws.svg b/website/pages/home/img/logos/aws.svg
new file mode 100644
index 0000000000..e16fd2bc38
--- /dev/null
+++ b/website/pages/home/img/logos/aws.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/logos/azure.svg b/website/pages/home/img/logos/azure.svg
new file mode 100644
index 0000000000..6a66def0bc
--- /dev/null
+++ b/website/pages/home/img/logos/azure.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/logos/consul.svg b/website/pages/home/img/logos/consul.svg
new file mode 100644
index 0000000000..72042ef74d
--- /dev/null
+++ b/website/pages/home/img/logos/consul.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/logos/gcp.svg b/website/pages/home/img/logos/gcp.svg
new file mode 100644
index 0000000000..e5258fa097
--- /dev/null
+++ b/website/pages/home/img/logos/gcp.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/logos/github.svg b/website/pages/home/img/logos/github.svg
new file mode 100644
index 0000000000..c08e599656
--- /dev/null
+++ b/website/pages/home/img/logos/github.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/logos/kubernetes.svg b/website/pages/home/img/logos/kubernetes.svg
new file mode 100644
index 0000000000..3510419e57
--- /dev/null
+++ b/website/pages/home/img/logos/kubernetes.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/logos/more.svg b/website/pages/home/img/logos/more.svg
new file mode 100644
index 0000000000..f0efe435c6
--- /dev/null
+++ b/website/pages/home/img/logos/more.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/logos/okta.svg b/website/pages/home/img/logos/okta.svg
new file mode 100644
index 0000000000..2be0404563
--- /dev/null
+++ b/website/pages/home/img/logos/okta.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/logos/ping.svg b/website/pages/home/img/logos/ping.svg
new file mode 100644
index 0000000000..ff46c57195
--- /dev/null
+++ b/website/pages/home/img/logos/ping.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/logos/terraform.svg b/website/pages/home/img/logos/terraform.svg
new file mode 100644
index 0000000000..92054335a6
--- /dev/null
+++ b/website/pages/home/img/logos/terraform.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/website/pages/home/img/red-usecase-accessmgmt.png b/website/pages/home/img/red-usecase-accessmgmt.png
new file mode 100644
index 0000000000..82dfbf67d2
Binary files /dev/null and b/website/pages/home/img/red-usecase-accessmgmt.png differ
diff --git a/website/pages/home/img/red-usecase-accessprivileges.png b/website/pages/home/img/red-usecase-accessprivileges.png
new file mode 100644
index 0000000000..511292dfe7
Binary files /dev/null and b/website/pages/home/img/red-usecase-accessprivileges.png differ
diff --git a/website/pages/home/img/red-usecase-sessionvisibility.png b/website/pages/home/img/red-usecase-sessionvisibility.png
new file mode 100644
index 0000000000..a0cba5f6fe
Binary files /dev/null and b/website/pages/home/img/red-usecase-sessionvisibility.png differ
diff --git a/website/pages/home/index.jsx b/website/pages/home/index.jsx
index 1e75402347..015c169c95 100644
--- a/website/pages/home/index.jsx
+++ b/website/pages/home/index.jsx
@@ -1,22 +1,231 @@
+import BrandedCta from 'components/branded-cta'
import HomepageHero from 'components/homepage-hero'
+import HowItWorks from 'components/how-it-works'
+import SectionBreakCta from 'components/section-break-cta'
+import ProductFeaturesList from '@hashicorp/react-product-features-list'
+import UseCases from '@hashicorp/react-use-cases'
export default function HomePage() {
return (
diff --git a/website/pages/home/style.css b/website/pages/home/style.css
index 939ffb08cb..89a3a751b5 100644
--- a/website/pages/home/style.css
+++ b/website/pages/home/style.css
@@ -1,3 +1,49 @@
-p {
- color: black;
+.p-home {
+ & .break-section {
+ background: linear-gradient(
+ var(--gray-7) 0%,
+ var(--gray-7) 50%,
+ var(--white) 50%,
+ var(--white) 100%
+ );
+ }
+
+ & .features-section {
+ padding: 128px 0;
+
+ @media (max-width: 800px) {
+ padding: 88px 0;
+ }
+
+ & > * {
+ padding-top: 0;
+ padding-bottom: 0;
+ }
+ }
+
+ & .use-cases-section {
+ padding-top: 128px;
+ padding-bottom: 128px;
+ background-color: var(--gray-7);
+
+ @media (max-width: 800px) {
+ padding-top: 88px;
+ }
+
+ & .g-use-cases {
+ & .icon {
+ min-height: 140px;
+ margin-bottom: 25px;
+ }
+ }
+
+ & h2 {
+ margin: 0;
+ text-align: center;
+ margin-bottom: 64px;
+ @media (max-width: 800px) {
+ margin-bottom: 48px;
+ }
+ }
+ }
}
diff --git a/website/pages/security/index.jsx b/website/pages/security/index.jsx
new file mode 100644
index 0000000000..91fb493b17
--- /dev/null
+++ b/website/pages/security/index.jsx
@@ -0,0 +1,37 @@
+import styles from './styles.module.css'
+
+export default function SecurityPage() {
+ return (
+
+
+
+
Security
+
+ We understand that many users place a high level of trust in
+ HashiCorp and the tools we build. We apply best practices and focus
+ on security to make sure we can maintain the trust of the community.
+
+
+ We deeply appreciate any effort to disclose vulnerabilities
+ responsibly.
+
+
+ If you would like to report a vulnerability, please see the{' '}
+
+ HashiCorp security page
+ {' '}
+ which has the proper email to communicate with as well as our PGP
+ key.
+
+
+ {' '}
+ If you aren't reporting a security sensitive vulnerability,
+ please open an issue on the standard{' '}
+ GitHub {' '}
+ repository.
+
+
+
+
+ )
+}
diff --git a/website/pages/security/styles.module.css b/website/pages/security/styles.module.css
new file mode 100644
index 0000000000..a597eae328
--- /dev/null
+++ b/website/pages/security/styles.module.css
@@ -0,0 +1,15 @@
+.securityPage {
+ & .longformWrapper {
+ @media (min-width: 800px) {
+ margin-top: 80px;
+ margin-bottom: 80px;
+ max-width: 70%;
+ margin-left: auto;
+ margin-right: auto;
+ }
+
+ & a {
+ color: var(--red);
+ }
+ }
+}
diff --git a/website/pages/signin-error/index.jsx b/website/pages/signin-error/index.jsx
deleted file mode 100644
index 7908fa40af..0000000000
--- a/website/pages/signin-error/index.jsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import PageComponent from 'components/signin-error-page'
-
-export default function SigninErrorPage() {
- return
-}
diff --git a/website/pages/style.css b/website/pages/style.css
index df246a923a..eeb2da2e73 100644
--- a/website/pages/style.css
+++ b/website/pages/style.css
@@ -6,35 +6,33 @@
@import '~@hashicorp/react-global-styles/_temporary-to-remove/layout.css';
@import '~@hashicorp/react-global-styles/_temporary-to-remove/tables.css';
-@import '~@hashicorp/react-button/dist/style.css';
+@import '~@hashicorp/react-hero/dist/style.css';
+@import '~@hashicorp/react-button/styles/index.css';
@import '~@hashicorp/react-consent-manager/dist/style.css';
@import '~@hashicorp/react-toggle/dist/style.css';
@import '~@hashicorp/react-section-header/dist/style.css';
@import '~@hashicorp/react-product-downloader/dist/style.css';
@import '~@hashicorp/react-vertical-text-block-list/dist/style.css';
-@import '~@hashicorp/react-docs-sidenav/dist/style.css';
-@import '~@hashicorp/react-content/dist/style.css';
+@import '~@hashicorp/react-docs-sidenav/style.css';
+@import '~@hashicorp/react-content/style.css';
@import '~@hashicorp/react-subnav/dist/style.css';
@import '~@hashicorp/react-tabs/dist/style.css';
@import '~@hashicorp/react-enterprise-alert/dist/style.css';
-@import '~@hashicorp/react-mega-nav/style.css';
@import '~@hashicorp/react-docs-page/style.css';
+@import '~@hashicorp/react-product-features-list/style.css';
+@import '~@hashicorp/react-use-cases/dist/style.css';
+@import '~@hashicorp/react-alert-banner/style.css';
/* Local Components */
@import '../components/footer/style.css';
/* Local Pages */
-@import './downloads/style.css';
+@import './community/style.css';
@import './home/style.css';
/* Print Styles */
@import './print.css';
-/* Expand content so footer is always at the bottom */
-.__next > .content {
- min-height: calc(100vh - 260px);
-}
-
/*
* About this selector:
* `.g-subnav ~ *` finds all elements after the navigation.
@@ -52,14 +50,6 @@
scroll-margin-top: calc(64px + 0.5em);
}
-/* Sticky Footer */
-.content {
- overflow-y: auto;
-
- /* 100% height - nav - footer */
- min-height: calc(100vh - (64px + 77px));
-}
-
/* Web Fonts */
@font-face {
font-family: 'klavika-web';
@@ -148,36 +138,19 @@
* TODO, eventually remove:
* Temporary Boundary Branding
*/
-:root {
- --boundary: #f04e54;
-}
.g-docs-sidenav {
- --highlight-color: var(--boundary);
+ --highlight-color: var(--red);
}
.g-subnav {
& a.variant-primary {
- border-color: var(--boundary);
- background-color: var(--boundary);
+ border-color: var(--red);
+ background-color: var(--red);
}
& .g-subnav-inner {
& .style-menu-item {
& .text::after {
- background: var(--boundary);
- }
- }
- }
-}
-
-.g-content {
- --highlight-color: var(--boundary);
-}
-
-.g-vertical-text-block-list {
- & .list {
- & .body-text {
- & a {
- color: var(--boundary) !important;
+ background: var(--red);
}
}
}
diff --git a/website/public/favicon.ico b/website/public/favicon.ico
new file mode 100644
index 0000000000..67b066518b
Binary files /dev/null and b/website/public/favicon.ico differ
diff --git a/website/public/files/press-kit.zip b/website/public/files/press-kit.zip
new file mode 100644
index 0000000000..e037e16ab0
Binary files /dev/null and b/website/public/files/press-kit.zip differ
diff --git a/website/public/img/hero-pattern.svg b/website/public/img/hero-pattern.svg
index 01b6103b82..2fadb6b292 100644
--- a/website/public/img/hero-pattern.svg
+++ b/website/public/img/hero-pattern.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/website/public/img/og-image.png b/website/public/img/og-image.png
index 427a1f4046..a849d190a5 100644
Binary files a/website/public/img/og-image.png and b/website/public/img/og-image.png differ
diff --git a/website/public/videos/hero-cli.mp4 b/website/public/videos/hero-cli.mp4
new file mode 100644
index 0000000000..8bdaac0ee3
Binary files /dev/null and b/website/public/videos/hero-cli.mp4 differ
diff --git a/website/public/videos/hero-ui.mp4 b/website/public/videos/hero-ui.mp4
new file mode 100644
index 0000000000..a6d9e2893a
Binary files /dev/null and b/website/public/videos/hero-ui.mp4 differ