From fd8883f3faf7e6f4c13325b19299e5be65252433 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Tue, 3 Dec 2024 17:16:06 -0500
Subject: [PATCH 01/23] Move file; add branding shape
---
.../Banner/SiteBanner/BrandingShape.js | 27 +++++++++++++++++++
.../{SiteBanner.js => SiteBanner/index.js} | 14 +++++-----
2 files changed, 34 insertions(+), 7 deletions(-)
create mode 100644 src/components/Banner/SiteBanner/BrandingShape.js
rename src/components/Banner/{SiteBanner.js => SiteBanner/index.js} (81%)
diff --git a/src/components/Banner/SiteBanner/BrandingShape.js b/src/components/Banner/SiteBanner/BrandingShape.js
new file mode 100644
index 000000000..4467d9c01
--- /dev/null
+++ b/src/components/Banner/SiteBanner/BrandingShape.js
@@ -0,0 +1,27 @@
+import React from 'react';
+
+const BrandingShape = ({ size }) => {
+ let width = 0;
+ let height = 0;
+
+ if (size === 'desktop') {
+ width = 109;
+ height = 40;
+ } else if (['tablet', 'mobile'].includes(size)) {
+ width = 119;
+ height = 56;
+ }
+
+ const viewBox = `0 0 ${width} ${height}`;
+
+ return (
+
+ );
+};
+
+export default BrandingShape;
diff --git a/src/components/Banner/SiteBanner.js b/src/components/Banner/SiteBanner/index.js
similarity index 81%
rename from src/components/Banner/SiteBanner.js
rename to src/components/Banner/SiteBanner/index.js
index f2c2efe41..952be9f29 100644
--- a/src/components/Banner/SiteBanner.js
+++ b/src/components/Banner/SiteBanner/index.js
@@ -1,12 +1,12 @@
import React, { useContext, useEffect } from 'react';
import styled from '@emotion/styled';
-import { HeaderContext } from '../Header/header-context';
-import { SNOOTY_REALM_APP_ID } from '../../build-constants';
-import { useSiteMetadata } from '../../hooks/use-site-metadata';
-import { theme } from '../../theme/docsTheme';
-import { isBrowser } from '../../utils/is-browser';
-import { normalizePath } from '../../utils/normalize-path';
-import { fetchBanner } from '../../utils/realm';
+import { HeaderContext } from '../../Header/header-context';
+import { SNOOTY_REALM_APP_ID } from '../../../build-constants';
+import { useSiteMetadata } from '../../../hooks/use-site-metadata';
+import { theme } from '../../../theme/docsTheme';
+import { isBrowser } from '../../../utils/is-browser';
+import { normalizePath } from '../../../utils/normalize-path';
+import { fetchBanner } from '../../../utils/realm';
const getBannerSource = (src) => {
if (src == null || src === '') return null;
From 37afd9c7f3f769083904be68a66e540d87e01d27 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Tue, 3 Dec 2024 17:17:43 -0500
Subject: [PATCH 02/23] Banner by text
---
src/components/Banner/SiteBanner/index.js | 72 ++++++++++++++++++++++-
1 file changed, 71 insertions(+), 1 deletion(-)
diff --git a/src/components/Banner/SiteBanner/index.js b/src/components/Banner/SiteBanner/index.js
index 952be9f29..d41e62b97 100644
--- a/src/components/Banner/SiteBanner/index.js
+++ b/src/components/Banner/SiteBanner/index.js
@@ -1,5 +1,7 @@
import React, { useContext, useEffect } from 'react';
import styled from '@emotion/styled';
+import { palette } from '@leafygreen-ui/palette';
+import { css } from '@leafygreen-ui/emotion';
import { HeaderContext } from '../../Header/header-context';
import { SNOOTY_REALM_APP_ID } from '../../../build-constants';
import { useSiteMetadata } from '../../../hooks/use-site-metadata';
@@ -7,6 +9,7 @@ import { theme } from '../../../theme/docsTheme';
import { isBrowser } from '../../../utils/is-browser';
import { normalizePath } from '../../../utils/normalize-path';
import { fetchBanner } from '../../../utils/realm';
+import BrandingShape from './BrandingShape';
const getBannerSource = (src) => {
if (src == null || src === '') return null;
@@ -20,6 +23,8 @@ const StyledBannerContainer = styled.a`
width: 100%;
position: absolute;
z-index: ${theme.zIndexes.header};
+ color: white;
+ text-decoration: none;
`;
const StyledBannerContent = styled.div(
@@ -27,7 +32,12 @@ const StyledBannerContent = styled.div(
background-image: url(${getBannerSource(props.imgPath)});
background-position: center;
background-size: cover;
+ background-color: ${props.bgColor};
height: 100%;
+ display: flex;
+ justify-content: center;
+ gap: 20px;
+ padding: 0 11px;
@media ${theme.screenSize.upToMedium} {
background-image: url(${getBannerSource(props.tabletImgPath)});
@@ -39,6 +49,44 @@ const StyledBannerContent = styled.div(
`
);
+const bannerTextStyle = css`
+ align-self: center;
+`;
+
+const pillContainer = css`
+ display: grid;
+ justify-items: center;
+ align-items: center;
+`;
+
+// Forces components to be in the same cell to create an overlap
+const gridCell = css`
+ grid-row: 1;
+ grid-column: 1;
+`;
+
+const brandingContainer = css`
+ ${gridCell}
+ height: 40px;
+`;
+
+const pillStyle = css`
+ ${gridCell}
+ color: ${palette.green.dark3};
+ font-weight: 600;
+ line-height: 16px;
+ font-size: 12px;
+ background-color: ${palette.green.base};
+ border: 1px solid ${palette.green.dark2};
+ border-radius: 6px;
+ height: 22px;
+ padding: 3px 8px;
+ z-index: 1;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+`;
+
const SiteBanner = () => {
const { bannerContent, setBannerContent } = useContext(HeaderContext);
const { snootyEnv } = useSiteMetadata();
@@ -47,6 +95,15 @@ const SiteBanner = () => {
const fetchBannerContent = async () => {
try {
setBannerContent(await fetchBanner(snootyEnv));
+ // TODO-5132: Remove and test with App Services when done
+ const bannerContentMock = {
+ text: 'Join us at AWS re:Invent 2024! Learn how to use MongoDB for AI use cases.',
+ altText: 'Hello World!',
+ pillText: 'LEARN MORE',
+ bgColor: palette.green.dark3,
+ url: 'https://www.mongodb.com/docs/',
+ };
+ setBannerContent(bannerContentMock);
} catch (err) {
console.error(err);
}
@@ -66,7 +123,20 @@ const SiteBanner = () => {
imgPath={bannerContent.imgPath}
tabletImgPath={bannerContent.tabletImgPath ?? bannerContent.mobileImgPath}
mobileImgPath={bannerContent.mobileImgPath}
- />
+ bgColor={bannerContent.bgColor}
+ >
+ {bannerContent.text && (
+ <>
+ {bannerContent.text}
+
+
+
+
+ {bannerContent.pillText &&
{bannerContent.pillText}}
+
+ >
+ )}
+
);
};
From c6577424b69d7333882aff5dc9fa95aa8ae93359 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Tue, 3 Dec 2024 18:55:09 -0500
Subject: [PATCH 03/23] Adjust for screen sizes
---
src/components/Banner/SiteBanner/index.js | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/components/Banner/SiteBanner/index.js b/src/components/Banner/SiteBanner/index.js
index d41e62b97..9cfafac49 100644
--- a/src/components/Banner/SiteBanner/index.js
+++ b/src/components/Banner/SiteBanner/index.js
@@ -38,19 +38,25 @@ const StyledBannerContent = styled.div(
justify-content: center;
gap: 20px;
padding: 0 11px;
+ font-size: 13px;
+ line-height: 20px;
@media ${theme.screenSize.upToMedium} {
background-image: url(${getBannerSource(props.tabletImgPath)});
+ gap: 104px;
}
@media ${theme.screenSize.upToSmall} {
background-image: url(${getBannerSource(props.mobileImgPath)});
+ gap: 28px;
+ font-size: 11px;
}
`
);
const bannerTextStyle = css`
align-self: center;
+ max-height: 40px;
`;
const pillContainer = css`
From 4a93fe8b5a78eda8aba41a0ddf654f2983563109 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 15:30:53 -0500
Subject: [PATCH 04/23] Remove customization of branding shape
---
src/components/Banner/SiteBanner/BrandingShape.js | 15 +++------------
src/components/Banner/SiteBanner/index.js | 2 +-
2 files changed, 4 insertions(+), 13 deletions(-)
diff --git a/src/components/Banner/SiteBanner/BrandingShape.js b/src/components/Banner/SiteBanner/BrandingShape.js
index 4467d9c01..d7d0915ea 100644
--- a/src/components/Banner/SiteBanner/BrandingShape.js
+++ b/src/components/Banner/SiteBanner/BrandingShape.js
@@ -1,17 +1,8 @@
import React from 'react';
-const BrandingShape = ({ size }) => {
- let width = 0;
- let height = 0;
-
- if (size === 'desktop') {
- width = 109;
- height = 40;
- } else if (['tablet', 'mobile'].includes(size)) {
- width = 119;
- height = 56;
- }
-
+const BrandingShape = () => {
+ const width = 109;
+ const height = 40;
const viewBox = `0 0 ${width} ${height}`;
return (
diff --git a/src/components/Banner/SiteBanner/index.js b/src/components/Banner/SiteBanner/index.js
index 9cfafac49..7efa86b06 100644
--- a/src/components/Banner/SiteBanner/index.js
+++ b/src/components/Banner/SiteBanner/index.js
@@ -136,7 +136,7 @@ const SiteBanner = () => {
{bannerContent.text}
-
+
{bannerContent.pillText &&
{bannerContent.pillText}}
From 2cfda8b7a1be9b45616a2d987cf23fb897575839 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 15:48:24 -0500
Subject: [PATCH 05/23] Remove test code; guard against translations
---
src/components/Banner/SiteBanner/index.js | 11 ++---------
1 file changed, 2 insertions(+), 9 deletions(-)
diff --git a/src/components/Banner/SiteBanner/index.js b/src/components/Banner/SiteBanner/index.js
index 7efa86b06..c6ddf18f6 100644
--- a/src/components/Banner/SiteBanner/index.js
+++ b/src/components/Banner/SiteBanner/index.js
@@ -101,15 +101,6 @@ const SiteBanner = () => {
const fetchBannerContent = async () => {
try {
setBannerContent(await fetchBanner(snootyEnv));
- // TODO-5132: Remove and test with App Services when done
- const bannerContentMock = {
- text: 'Join us at AWS re:Invent 2024! Learn how to use MongoDB for AI use cases.',
- altText: 'Hello World!',
- pillText: 'LEARN MORE',
- bgColor: palette.green.dark3,
- url: 'https://www.mongodb.com/docs/',
- };
- setBannerContent(bannerContentMock);
} catch (err) {
console.error(err);
}
@@ -126,6 +117,8 @@ const SiteBanner = () => {
return (
Date: Wed, 4 Dec 2024 15:49:05 -0500
Subject: [PATCH 06/23] Move classnames
---
src/components/Banner/SiteBanner/index.js | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/components/Banner/SiteBanner/index.js b/src/components/Banner/SiteBanner/index.js
index c6ddf18f6..764a85355 100644
--- a/src/components/Banner/SiteBanner/index.js
+++ b/src/components/Banner/SiteBanner/index.js
@@ -115,10 +115,13 @@ const SiteBanner = () => {
}
return (
-
+
Date: Wed, 4 Dec 2024 16:04:14 -0500
Subject: [PATCH 07/23] More safeguarding. Remove styled
---
src/components/Banner/SiteBanner/index.js | 87 ++++++++++++-----------
1 file changed, 46 insertions(+), 41 deletions(-)
diff --git a/src/components/Banner/SiteBanner/index.js b/src/components/Banner/SiteBanner/index.js
index 764a85355..c95c36ca3 100644
--- a/src/components/Banner/SiteBanner/index.js
+++ b/src/components/Banner/SiteBanner/index.js
@@ -1,7 +1,6 @@
import React, { useContext, useEffect } from 'react';
-import styled from '@emotion/styled';
import { palette } from '@leafygreen-ui/palette';
-import { css } from '@leafygreen-ui/emotion';
+import { css, cx } from '@leafygreen-ui/emotion';
import { HeaderContext } from '../../Header/header-context';
import { SNOOTY_REALM_APP_ID } from '../../../build-constants';
import { useSiteMetadata } from '../../../hooks/use-site-metadata';
@@ -17,7 +16,7 @@ const getBannerSource = (src) => {
return `https://${normalizePath(srcUrl)}`;
};
-const StyledBannerContainer = styled.a`
+const bannerContainerStyle = css`
display: block;
height: ${theme.header.bannerHeight};
width: 100%;
@@ -27,32 +26,30 @@ const StyledBannerContainer = styled.a`
text-decoration: none;
`;
-const StyledBannerContent = styled.div(
- (props) => `
- background-image: url(${getBannerSource(props.imgPath)});
- background-position: center;
- background-size: cover;
- background-color: ${props.bgColor};
- height: 100%;
- display: flex;
- justify-content: center;
- gap: 20px;
- padding: 0 11px;
- font-size: 13px;
- line-height: 20px;
-
- @media ${theme.screenSize.upToMedium} {
- background-image: url(${getBannerSource(props.tabletImgPath)});
- gap: 104px;
- }
+const bannerContentStyle = (props) => css`
+ background-image: url(${getBannerSource(props.imgPath)});
+ background-position: center;
+ background-size: cover;
+ background-color: ${props.bgColor};
+ height: 100%;
+ display: flex;
+ justify-content: center;
+ gap: 20px;
+ padding: 0 11px;
+ font-size: 13px;
+ line-height: 20px;
- @media ${theme.screenSize.upToSmall} {
- background-image: url(${getBannerSource(props.mobileImgPath)});
- gap: 28px;
- font-size: 11px;
- }
- `
-);
+ @media ${theme.screenSize.upToMedium} {
+ background-image: url(${getBannerSource(props.tabletImgPath)});
+ gap: 104px;
+ }
+
+ @media ${theme.screenSize.upToSmall} {
+ background-image: url(${getBannerSource(props.mobileImgPath)});
+ gap: 28px;
+ font-size: 11px;
+ }
+`;
const bannerTextStyle = css`
align-self: center;
@@ -110,36 +107,44 @@ const SiteBanner = () => {
}
}, [setBannerContent, snootyEnv]);
- if (bannerContent == null) {
+ if (bannerContent === null) {
return null;
}
+ // Ensure Smartling doesn't translate the banner or rewrite anything
+ const smartlingClassNames = 'sl_opaque notranslate';
+ // Backup class name in case Smartling needs to target the whole element
+ const bannerClassName = 'site-banner';
+
return (
-
-
{bannerContent.text && (
<>
- {bannerContent.text}
+ {bannerContent.text}
- {bannerContent.pillText &&
{bannerContent.pillText}}
+ {bannerContent.pillText && (
+
{bannerContent.pillText}
+ )}
>
)}
-
-
+
+
);
};
From a282fe1308a3d44565f9851620ae268c1e436b11 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 16:11:40 -0500
Subject: [PATCH 08/23] Guard against missing banner content
---
src/components/Banner/SiteBanner/index.js | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/components/Banner/SiteBanner/index.js b/src/components/Banner/SiteBanner/index.js
index c95c36ca3..615d8432f 100644
--- a/src/components/Banner/SiteBanner/index.js
+++ b/src/components/Banner/SiteBanner/index.js
@@ -97,7 +97,11 @@ const SiteBanner = () => {
useEffect(() => {
const fetchBannerContent = async () => {
try {
- setBannerContent(await fetchBanner(snootyEnv));
+ const res = await fetchBanner(snootyEnv);
+ // Guard against missing banner content
+ if (res && (res.imgPath || res.text)) {
+ setBannerContent(res);
+ }
} catch (err) {
console.error(err);
}
@@ -107,7 +111,7 @@ const SiteBanner = () => {
}
}, [setBannerContent, snootyEnv]);
- if (bannerContent === null) {
+ if (!bannerContent) {
return null;
}
From a5a5c730bdc2bb5a63aa9910f7acbe4d717f9f76 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 16:22:28 -0500
Subject: [PATCH 09/23] Start setting up TS
---
package-lock.json | 75 ++++++++++++++++++++++++++--------
package.json | 4 ++
tsconfig.json | 102 ++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 163 insertions(+), 18 deletions(-)
create mode 100644 tsconfig.json
diff --git a/package-lock.json b/package-lock.json
index 081f250f7..8d1f0d5e7 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -114,6 +114,9 @@
"@testing-library/jest-dom": "^5.16.1",
"@testing-library/react": "^13.0.0",
"@testing-library/user-event": "^13.5.0",
+ "@types/node": "^22.10.1",
+ "@types/react": "^18.3.13",
+ "@types/react-dom": "^18.3.1",
"auto-changelog": "^2.2.1",
"babel-jest": "^29.5.0",
"babel-plugin-emotion": "^11.0.0",
@@ -129,6 +132,7 @@
"jest-environment-jsdom": "^29.5.0",
"lint-staged": "^10.5.4",
"prettier": "^2.2.1",
+ "typescript": "^5.7.2",
"xmlhttprequest-ssl": ">=1.6.2"
},
"engines": {
@@ -10943,8 +10947,12 @@
"integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA=="
},
"node_modules/@types/node": {
- "version": "18.14.1",
- "license": "MIT"
+ "version": "22.10.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/node/-/node-22.10.1.tgz",
+ "integrity": "sha512-qKgsUwfHZV2WCWLAnVP1JqnpE6Im6h3Y0+fYgMTasNQ7V++CBX5OT1as0g0f+OyubbFqhf6XVNIsmN4IIhEgGQ==",
+ "dependencies": {
+ "undici-types": "~6.20.0"
+ }
},
"node_modules/@types/node-fetch": {
"version": "2.6.2",
@@ -10975,18 +10983,19 @@
}
},
"node_modules/@types/react": {
- "version": "18.0.28",
- "license": "MIT",
+ "version": "18.3.13",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/react/-/react-18.3.13.tgz",
+ "integrity": "sha512-ii/gswMmOievxAJed4PAHT949bpYjPKXvXo1v6cRB/kqc2ZR4n+SgyCyvyc5Fec5ez8VnUumI1Vk7j6fRyRogg==",
"dependencies": {
"@types/prop-types": "*",
- "@types/scheduler": "*",
"csstype": "^3.0.2"
}
},
"node_modules/@types/react-dom": {
- "version": "18.0.11",
+ "version": "18.3.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/react-dom/-/react-dom-18.3.1.tgz",
+ "integrity": "sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==",
"dev": true,
- "license": "MIT",
"dependencies": {
"@types/react": "*"
}
@@ -11028,10 +11037,6 @@
"@types/node": "*"
}
},
- "node_modules/@types/scheduler": {
- "version": "0.16.2",
- "license": "MIT"
- },
"node_modules/@types/semver": {
"version": "7.5.7",
"resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/semver/-/semver-7.5.7.tgz",
@@ -30443,6 +30448,19 @@
"is-typedarray": "^1.0.0"
}
},
+ "node_modules/typescript": {
+ "version": "5.7.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/typescript/-/typescript-5.7.2.tgz",
+ "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==",
+ "dev": true,
+ "bin": {
+ "tsc": "bin/tsc",
+ "tsserver": "bin/tsserver"
+ },
+ "engines": {
+ "node": ">=14.17"
+ }
+ },
"node_modules/ua-parser-js": {
"version": "0.7.33",
"funding": [
@@ -30501,6 +30519,11 @@
"version": "1.13.6",
"license": "MIT"
},
+ "node_modules/undici-types": {
+ "version": "6.20.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/undici-types/-/undici-types-6.20.0.tgz",
+ "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="
+ },
"node_modules/unicode-canonical-property-names-ecmascript": {
"version": "2.0.0",
"license": "MIT",
@@ -39382,7 +39405,12 @@
"integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA=="
},
"@types/node": {
- "version": "18.14.1"
+ "version": "22.10.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/node/-/node-22.10.1.tgz",
+ "integrity": "sha512-qKgsUwfHZV2WCWLAnVP1JqnpE6Im6h3Y0+fYgMTasNQ7V++CBX5OT1as0g0f+OyubbFqhf6XVNIsmN4IIhEgGQ==",
+ "requires": {
+ "undici-types": "~6.20.0"
+ }
},
"@types/node-fetch": {
"version": "2.6.2",
@@ -39408,15 +39436,18 @@
}
},
"@types/react": {
- "version": "18.0.28",
+ "version": "18.3.13",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/react/-/react-18.3.13.tgz",
+ "integrity": "sha512-ii/gswMmOievxAJed4PAHT949bpYjPKXvXo1v6cRB/kqc2ZR4n+SgyCyvyc5Fec5ez8VnUumI1Vk7j6fRyRogg==",
"requires": {
"@types/prop-types": "*",
- "@types/scheduler": "*",
"csstype": "^3.0.2"
}
},
"@types/react-dom": {
- "version": "18.0.11",
+ "version": "18.3.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/react-dom/-/react-dom-18.3.1.tgz",
+ "integrity": "sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==",
"dev": true,
"requires": {
"@types/react": "*"
@@ -39455,9 +39486,6 @@
"@types/node": "*"
}
},
- "@types/scheduler": {
- "version": "0.16.2"
- },
"@types/semver": {
"version": "7.5.7",
"resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/semver/-/semver-7.5.7.tgz",
@@ -51940,6 +51968,12 @@
"is-typedarray": "^1.0.0"
}
},
+ "typescript": {
+ "version": "5.7.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/typescript/-/typescript-5.7.2.tgz",
+ "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==",
+ "dev": true
+ },
"ua-parser-js": {
"version": "0.7.33"
},
@@ -51968,6 +52002,11 @@
"underscore": {
"version": "1.13.6"
},
+ "undici-types": {
+ "version": "6.20.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/undici-types/-/undici-types-6.20.0.tgz",
+ "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg=="
+ },
"unicode-canonical-property-names-ecmascript": {
"version": "2.0.0"
},
diff --git a/package.json b/package.json
index e069123ff..2c1e724cf 100644
--- a/package.json
+++ b/package.json
@@ -19,6 +19,9 @@
"@testing-library/jest-dom": "^5.16.1",
"@testing-library/react": "^13.0.0",
"@testing-library/user-event": "^13.5.0",
+ "@types/node": "^22.10.1",
+ "@types/react": "^18.3.13",
+ "@types/react-dom": "^18.3.1",
"auto-changelog": "^2.2.1",
"babel-jest": "^29.5.0",
"babel-plugin-emotion": "^11.0.0",
@@ -34,6 +37,7 @@
"jest-environment-jsdom": "^29.5.0",
"lint-staged": "^10.5.4",
"prettier": "^2.2.1",
+ "typescript": "^5.7.2",
"xmlhttprequest-ssl": ">=1.6.2"
},
"scripts": {
diff --git a/tsconfig.json b/tsconfig.json
new file mode 100644
index 000000000..5d3fec04c
--- /dev/null
+++ b/tsconfig.json
@@ -0,0 +1,102 @@
+{
+ "compilerOptions": {
+ /* Visit https://aka.ms/tsconfig.json to read more about this file */
+
+ /* Projects */
+ // "incremental": true, /* Enable incremental compilation */
+ // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */
+ // "tsBuildInfoFile": "./", /* Specify the folder for .tsbuildinfo incremental compilation files. */
+ // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects */
+ // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */
+ // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */
+
+ /* Language and Environment */
+ "target": "esnext", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
+ "lib": ["dom", "esnext"], /* Specify a set of bundled library declaration files that describe the target runtime environment. */
+ "jsx": "react", /* Specify what JSX code is generated. */
+ // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */
+ // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
+ // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h' */
+ // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */
+ // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using `jsx: react-jsx*`.` */
+ // "reactNamespace": "", /* Specify the object invoked for `createElement`. This only applies when targeting `react` JSX emit. */
+ // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */
+ // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */
+
+ /* Modules */
+ "module": "esnext", /* Specify what module code is generated. */
+ // "rootDir": "./", /* Specify the root folder within your source files. */
+ "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */
+ // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */
+ // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
+ // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
+ // "typeRoots": [], /* Specify multiple folders that act like `./node_modules/@types`. */
+ // "types": [], /* Specify type package names to be included without being referenced in a source file. */
+ // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
+ // "resolveJsonModule": true, /* Enable importing .json files */
+ // "noResolve": true, /* Disallow `import`s, `require`s or ``s from expanding the number of files TypeScript should add to a project. */
+
+ /* JavaScript Support */
+ // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */
+ // "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */
+ // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from `node_modules`. Only applicable with `allowJs`. */
+
+ /* Emit */
+ // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */
+ // "declarationMap": true, /* Create sourcemaps for d.ts files. */
+ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */
+ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */
+ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If `declaration` is true, also designates a file that bundles all .d.ts output. */
+ // "outDir": "./", /* Specify an output folder for all emitted files. */
+ // "removeComments": true, /* Disable emitting comments. */
+ // "noEmit": true, /* Disable emitting files from a compilation. */
+ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */
+ // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types */
+ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */
+ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */
+ // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
+ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */
+ // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */
+ // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */
+ // "newLine": "crlf", /* Set the newline character for emitting files. */
+ // "stripInternal": true, /* Disable emitting declarations that have `@internal` in their JSDoc comments. */
+ // "noEmitHelpers": true, /* Disable generating custom helper functions like `__extends` in compiled output. */
+ // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */
+ // "preserveConstEnums": true, /* Disable erasing `const enum` declarations in generated code. */
+ // "declarationDir": "./", /* Specify the output directory for generated declaration files. */
+ // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */
+
+ /* Interop Constraints */
+ // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */
+ // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */
+ "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */
+ // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */
+ "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
+
+ /* Type Checking */
+ "strict": true, /* Enable all strict type-checking options. */
+ // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied `any` type.. */
+ // "strictNullChecks": true, /* When type checking, take into account `null` and `undefined`. */
+ // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
+ // "strictBindCallApply": true, /* Check that the arguments for `bind`, `call`, and `apply` methods match the original function. */
+ // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */
+ // "noImplicitThis": true, /* Enable error reporting when `this` is given the type `any`. */
+ // "useUnknownInCatchVariables": true, /* Type catch clause variables as 'unknown' instead of 'any'. */
+ // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */
+ // "noUnusedLocals": true, /* Enable error reporting when a local variables aren't read. */
+ // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read */
+ // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */
+ // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */
+ // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */
+ // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */
+ // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */
+ // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type */
+ // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */
+ // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */
+
+ /* Completeness */
+ // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
+ "skipLibCheck": true /* Skip type checking all .d.ts files. */
+ },
+ "include": ["./src/**/*", "./gatsby-node.ts", "./gatsby-config.ts", "./plugins/**/*"]
+}
\ No newline at end of file
From 1634ed083e658af9cba74b90db094a4985a21e73 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 16:36:17 -0500
Subject: [PATCH 10/23] First few TS components
---
.../Banner/SiteBanner/{index.js => index.tsx} | 13 +++++++------
.../{header-context.js => header-context.tsx} | 13 ++++++++++---
src/types.ts | 11 +++++++++++
tsconfig.json | 2 +-
4 files changed, 29 insertions(+), 10 deletions(-)
rename src/components/Banner/SiteBanner/{index.js => index.tsx} (89%)
rename src/components/Header/{header-context.js => header-context.tsx} (65%)
create mode 100644 src/types.ts
diff --git a/src/components/Banner/SiteBanner/index.js b/src/components/Banner/SiteBanner/index.tsx
similarity index 89%
rename from src/components/Banner/SiteBanner/index.js
rename to src/components/Banner/SiteBanner/index.tsx
index 615d8432f..d446ef2a1 100644
--- a/src/components/Banner/SiteBanner/index.js
+++ b/src/components/Banner/SiteBanner/index.tsx
@@ -9,8 +9,9 @@ import { isBrowser } from '../../../utils/is-browser';
import { normalizePath } from '../../../utils/normalize-path';
import { fetchBanner } from '../../../utils/realm';
import BrandingShape from './BrandingShape';
+import { SiteBannerContent } from '../../../types';
-const getBannerSource = (src) => {
+const getBannerSource = (src?: string) => {
if (src == null || src === '') return null;
const srcUrl = `${SNOOTY_REALM_APP_ID}.mongodbstitch.com/${src}`;
return `https://${normalizePath(srcUrl)}`;
@@ -26,11 +27,11 @@ const bannerContainerStyle = css`
text-decoration: none;
`;
-const bannerContentStyle = (props) => css`
- background-image: url(${getBannerSource(props.imgPath)});
+const bannerContentStyle = (bannerContent: Partial) => css`
+ background-image: url(${getBannerSource(bannerContent.imgPath)});
background-position: center;
background-size: cover;
- background-color: ${props.bgColor};
+ background-color: ${bannerContent.bgColor};
height: 100%;
display: flex;
justify-content: center;
@@ -40,12 +41,12 @@ const bannerContentStyle = (props) => css`
line-height: 20px;
@media ${theme.screenSize.upToMedium} {
- background-image: url(${getBannerSource(props.tabletImgPath)});
+ background-image: url(${getBannerSource(bannerContent.tabletImgPath)});
gap: 104px;
}
@media ${theme.screenSize.upToSmall} {
- background-image: url(${getBannerSource(props.mobileImgPath)});
+ background-image: url(${getBannerSource(bannerContent.mobileImgPath)});
gap: 28px;
font-size: 11px;
}
diff --git a/src/components/Header/header-context.js b/src/components/Header/header-context.tsx
similarity index 65%
rename from src/components/Header/header-context.js
rename to src/components/Header/header-context.tsx
index 454c94f9b..f15c0b0e5 100644
--- a/src/components/Header/header-context.js
+++ b/src/components/Header/header-context.tsx
@@ -1,13 +1,20 @@
-import React, { createContext, useEffect, useState } from 'react';
+import React, { createContext, PropsWithChildren, useEffect, useState } from 'react';
import { theme } from '../../theme/docsTheme';
+import { SiteBannerContent } from '../../types';
-const HeaderContext = createContext({
+interface HeaderContextType {
+ bannerContent: SiteBannerContent | null;
+ setBannerContent: Function;
+ totalHeaderHeight: string;
+};
+
+const HeaderContext = createContext({
bannerContent: null,
setBannerContent: () => {},
totalHeaderHeight: theme.header.navbarHeight,
});
-const HeaderContextProvider = ({ children }) => {
+const HeaderContextProvider: React.FC = ({ children }) => {
const [bannerContent, setBannerContent] = useState(null);
const [totalHeaderHeight, setTotalHeaderHeight] = useState(theme.header.navbarHeight);
diff --git a/src/types.ts b/src/types.ts
new file mode 100644
index 000000000..6d3ce8df4
--- /dev/null
+++ b/src/types.ts
@@ -0,0 +1,11 @@
+export interface SiteBannerContent {
+ isEnabled: boolean;
+ altText: string;
+ imgPath: string;
+ tabletImgPath?: string;
+ mobileImgPath: string;
+ bgColor: string;
+ text: string;
+ pillText: string;
+ url: string;
+}
diff --git a/tsconfig.json b/tsconfig.json
index 5d3fec04c..173b2fedc 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -37,7 +37,7 @@
// "noResolve": true, /* Disallow `import`s, `require`s or ``s from expanding the number of files TypeScript should add to a project. */
/* JavaScript Support */
- // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */
+ "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */
// "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */
// "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from `node_modules`. Only applicable with `allowJs`. */
From 6e6f45e640cb069267ec5135dd5a3cd031f7459b Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 16:39:30 -0500
Subject: [PATCH 11/23] More TS-ification
---
.../Banner/SiteBanner/{BrandingShape.js => BrandingShape.tsx} | 0
src/components/Banner/SiteBanner/index.tsx | 2 +-
2 files changed, 1 insertion(+), 1 deletion(-)
rename src/components/Banner/SiteBanner/{BrandingShape.js => BrandingShape.tsx} (100%)
diff --git a/src/components/Banner/SiteBanner/BrandingShape.js b/src/components/Banner/SiteBanner/BrandingShape.tsx
similarity index 100%
rename from src/components/Banner/SiteBanner/BrandingShape.js
rename to src/components/Banner/SiteBanner/BrandingShape.tsx
diff --git a/src/components/Banner/SiteBanner/index.tsx b/src/components/Banner/SiteBanner/index.tsx
index d446ef2a1..4c4bbaf0f 100644
--- a/src/components/Banner/SiteBanner/index.tsx
+++ b/src/components/Banner/SiteBanner/index.tsx
@@ -98,7 +98,7 @@ const SiteBanner = () => {
useEffect(() => {
const fetchBannerContent = async () => {
try {
- const res = await fetchBanner(snootyEnv);
+ const res: SiteBannerContent = await fetchBanner(snootyEnv);
// Guard against missing banner content
if (res && (res.imgPath || res.text)) {
setBannerContent(res);
From 211a3d2dee87deaff3482525a61183e14ec068d6 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 17:24:13 -0500
Subject: [PATCH 12/23] Testing and linting
---
.eslintrc.js | 1 +
jest.config.js | 2 +
package-lock.json | 1138 +++++++++++------
package.json | 2 +
src/components/Banner/SiteBanner/index.tsx | 2 +-
src/types.ts | 10 +-
...SiteBanner.test.js => SiteBanner.test.tsx} | 29 +-
.../__snapshots__/SiteBanner.test.js.snap | 170 ++-
8 files changed, 973 insertions(+), 381 deletions(-)
rename tests/unit/{SiteBanner.test.js => SiteBanner.test.tsx} (58%)
diff --git a/.eslintrc.js b/.eslintrc.js
index 1e5a4fd47..d880df5ca 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -21,6 +21,7 @@ module.exports = {
'import/resolver': {
node: {
moduleDirectory: ['node_modules', '.'],
+ extensions: ['.js', '.jsx', '.ts', '.tsx'],
},
},
},
diff --git a/jest.config.js b/jest.config.js
index 32dd9dfcc..47cccfd6e 100644
--- a/jest.config.js
+++ b/jest.config.js
@@ -7,6 +7,7 @@ module.exports = {
projects: [
{
displayName: 'unit',
+ preset: 'ts-jest',
globals: {
__PATH_PREFIX__: '',
},
@@ -19,6 +20,7 @@ module.exports = {
testMatch: ['/tests/unit/**/*.test.js'],
transform: {
'^.+\\.jsx?$': `/jest-preprocess.js`,
+ '^.+\\.(ts|tsx)$': 'ts-jest',
},
},
{
diff --git a/package-lock.json b/package-lock.json
index 8d1f0d5e7..e7a9cac64 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -114,6 +114,7 @@
"@testing-library/jest-dom": "^5.16.1",
"@testing-library/react": "^13.0.0",
"@testing-library/user-event": "^13.5.0",
+ "@types/jest": "^29.5.14",
"@types/node": "^22.10.1",
"@types/react": "^18.3.13",
"@types/react-dom": "^18.3.1",
@@ -132,6 +133,7 @@
"jest-environment-jsdom": "^29.5.0",
"lint-staged": "^10.5.4",
"prettier": "^2.2.1",
+ "ts-jest": "^29.2.5",
"typescript": "^5.7.2",
"xmlhttprequest-ssl": ">=1.6.2"
},
@@ -244,10 +246,13 @@
}
},
"node_modules/@babel/code-frame": {
- "version": "7.18.6",
- "license": "MIT",
+ "version": "7.26.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/code-frame/-/code-frame-7.26.2.tgz",
+ "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==",
"dependencies": {
- "@babel/highlight": "^7.18.6"
+ "@babel/helper-validator-identifier": "^7.25.9",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.0.0"
},
"engines": {
"node": ">=6.9.0"
@@ -312,35 +317,39 @@
}
},
"node_modules/@babel/generator": {
- "version": "7.21.1",
- "license": "MIT",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/generator/-/generator-7.26.3.tgz",
+ "integrity": "sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==",
"dependencies": {
- "@babel/types": "^7.21.0",
- "@jridgewell/gen-mapping": "^0.3.2",
- "@jridgewell/trace-mapping": "^0.3.17",
- "jsesc": "^2.5.1"
+ "@babel/parser": "^7.26.3",
+ "@babel/types": "^7.26.3",
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25",
+ "jsesc": "^3.0.2"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.2",
- "license": "MIT",
+ "version": "0.3.5",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
"dependencies": {
- "@jridgewell/set-array": "^1.0.1",
+ "@jridgewell/set-array": "^1.2.1",
"@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
+ "@jridgewell/trace-mapping": "^0.3.24"
},
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/@babel/helper-annotate-as-pure": {
- "version": "7.18.6",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz",
+ "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==",
"dependencies": {
- "@babel/types": "^7.18.6"
+ "@babel/types": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
@@ -375,17 +384,17 @@
}
},
"node_modules/@babel/helper-create-class-features-plugin": {
- "version": "7.21.0",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz",
+ "integrity": "sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==",
"dependencies": {
- "@babel/helper-annotate-as-pure": "^7.18.6",
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-function-name": "^7.21.0",
- "@babel/helper-member-expression-to-functions": "^7.21.0",
- "@babel/helper-optimise-call-expression": "^7.18.6",
- "@babel/helper-replace-supers": "^7.20.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0",
- "@babel/helper-split-export-declaration": "^7.18.6"
+ "@babel/helper-annotate-as-pure": "^7.25.9",
+ "@babel/helper-member-expression-to-functions": "^7.25.9",
+ "@babel/helper-optimise-call-expression": "^7.25.9",
+ "@babel/helper-replace-supers": "^7.25.9",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9",
+ "@babel/traverse": "^7.25.9",
+ "semver": "^6.3.1"
},
"engines": {
"node": ">=6.9.0"
@@ -462,55 +471,60 @@
}
},
"node_modules/@babel/helper-member-expression-to-functions": {
- "version": "7.21.0",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz",
+ "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==",
"dependencies": {
- "@babel/types": "^7.21.0"
+ "@babel/traverse": "^7.25.9",
+ "@babel/types": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-module-imports": {
- "version": "7.18.6",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz",
+ "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==",
"dependencies": {
- "@babel/types": "^7.18.6"
+ "@babel/traverse": "^7.25.9",
+ "@babel/types": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-module-transforms": {
- "version": "7.21.2",
- "license": "MIT",
+ "version": "7.26.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz",
+ "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==",
"dependencies": {
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-module-imports": "^7.18.6",
- "@babel/helper-simple-access": "^7.20.2",
- "@babel/helper-split-export-declaration": "^7.18.6",
- "@babel/helper-validator-identifier": "^7.19.1",
- "@babel/template": "^7.20.7",
- "@babel/traverse": "^7.21.2",
- "@babel/types": "^7.21.2"
+ "@babel/helper-module-imports": "^7.25.9",
+ "@babel/helper-validator-identifier": "^7.25.9",
+ "@babel/traverse": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
"node_modules/@babel/helper-optimise-call-expression": {
- "version": "7.18.6",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz",
+ "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==",
"dependencies": {
- "@babel/types": "^7.18.6"
+ "@babel/types": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-plugin-utils": {
- "version": "7.20.2",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz",
+ "integrity": "sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==",
"engines": {
"node": ">=6.9.0"
}
@@ -532,35 +546,28 @@
}
},
"node_modules/@babel/helper-replace-supers": {
- "version": "7.20.7",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz",
+ "integrity": "sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==",
"dependencies": {
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-member-expression-to-functions": "^7.20.7",
- "@babel/helper-optimise-call-expression": "^7.18.6",
- "@babel/template": "^7.20.7",
- "@babel/traverse": "^7.20.7",
- "@babel/types": "^7.20.7"
+ "@babel/helper-member-expression-to-functions": "^7.25.9",
+ "@babel/helper-optimise-call-expression": "^7.25.9",
+ "@babel/traverse": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-simple-access": {
- "version": "7.20.2",
- "license": "MIT",
- "dependencies": {
- "@babel/types": "^7.20.2"
},
- "engines": {
- "node": ">=6.9.0"
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
"node_modules/@babel/helper-skip-transparent-expression-wrappers": {
- "version": "7.20.0",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz",
+ "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==",
"dependencies": {
- "@babel/types": "^7.20.0"
+ "@babel/traverse": "^7.25.9",
+ "@babel/types": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
@@ -577,22 +584,25 @@
}
},
"node_modules/@babel/helper-string-parser": {
- "version": "7.19.4",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz",
+ "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-validator-identifier": {
- "version": "7.19.1",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
+ "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-validator-option": {
- "version": "7.21.0",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz",
+ "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==",
"engines": {
"node": ">=6.9.0"
}
@@ -635,8 +645,12 @@
}
},
"node_modules/@babel/parser": {
- "version": "7.21.2",
- "license": "MIT",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/parser/-/parser-7.26.3.tgz",
+ "integrity": "sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==",
+ "dependencies": {
+ "@babel/types": "^7.26.3"
+ },
"bin": {
"parser": "bin/babel-parser.js"
},
@@ -1003,10 +1017,11 @@
}
},
"node_modules/@babel/plugin-syntax-jsx": {
- "version": "7.18.6",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz",
+ "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.18.6"
+ "@babel/helper-plugin-utils": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
@@ -1102,10 +1117,11 @@
}
},
"node_modules/@babel/plugin-syntax-typescript": {
- "version": "7.20.0",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz",
+ "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.19.0"
+ "@babel/helper-plugin-utils": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
@@ -1340,12 +1356,12 @@
}
},
"node_modules/@babel/plugin-transform-modules-commonjs": {
- "version": "7.21.2",
- "license": "MIT",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz",
+ "integrity": "sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==",
"dependencies": {
- "@babel/helper-module-transforms": "^7.21.2",
- "@babel/helper-plugin-utils": "^7.20.2",
- "@babel/helper-simple-access": "^7.20.2"
+ "@babel/helper-module-transforms": "^7.26.0",
+ "@babel/helper-plugin-utils": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
@@ -1620,12 +1636,15 @@
}
},
"node_modules/@babel/plugin-transform-typescript": {
- "version": "7.21.0",
- "license": "MIT",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.3.tgz",
+ "integrity": "sha512-6+5hpdr6mETwSKjmJUdYw0EIkATiQhnELWlE3kJFBwSg/BGIVwVaVbX+gOXBCdc7Ln1RXZxyWGecIXhUfnl7oA==",
"dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.21.0",
- "@babel/helper-plugin-utils": "^7.20.2",
- "@babel/plugin-syntax-typescript": "^7.20.0"
+ "@babel/helper-annotate-as-pure": "^7.25.9",
+ "@babel/helper-create-class-features-plugin": "^7.25.9",
+ "@babel/helper-plugin-utils": "^7.25.9",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9",
+ "@babel/plugin-syntax-typescript": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
@@ -1781,12 +1800,15 @@
}
},
"node_modules/@babel/preset-typescript": {
- "version": "7.21.0",
- "license": "MIT",
+ "version": "7.26.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/preset-typescript/-/preset-typescript-7.26.0.tgz",
+ "integrity": "sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.20.2",
- "@babel/helper-validator-option": "^7.21.0",
- "@babel/plugin-transform-typescript": "^7.21.0"
+ "@babel/helper-plugin-utils": "^7.25.9",
+ "@babel/helper-validator-option": "^7.25.9",
+ "@babel/plugin-syntax-jsx": "^7.25.9",
+ "@babel/plugin-transform-modules-commonjs": "^7.25.9",
+ "@babel/plugin-transform-typescript": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
@@ -1816,30 +1838,29 @@
"integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw=="
},
"node_modules/@babel/template": {
- "version": "7.20.7",
- "license": "MIT",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/template/-/template-7.25.9.tgz",
+ "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==",
"dependencies": {
- "@babel/code-frame": "^7.18.6",
- "@babel/parser": "^7.20.7",
- "@babel/types": "^7.20.7"
+ "@babel/code-frame": "^7.25.9",
+ "@babel/parser": "^7.25.9",
+ "@babel/types": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/traverse": {
- "version": "7.21.2",
- "license": "MIT",
- "dependencies": {
- "@babel/code-frame": "^7.18.6",
- "@babel/generator": "^7.21.1",
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-function-name": "^7.21.0",
- "@babel/helper-hoist-variables": "^7.18.6",
- "@babel/helper-split-export-declaration": "^7.18.6",
- "@babel/parser": "^7.21.2",
- "@babel/types": "^7.21.2",
- "debug": "^4.1.0",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/traverse/-/traverse-7.26.3.tgz",
+ "integrity": "sha512-yTmc8J+Sj8yLzwr4PD5Xb/WF3bOYu2C2OoSZPzbuqRm4n98XirsbzaX+GloeO376UnSYIYJ4NCanwV5/ugZkwA==",
+ "dependencies": {
+ "@babel/code-frame": "^7.26.2",
+ "@babel/generator": "^7.26.3",
+ "@babel/parser": "^7.26.3",
+ "@babel/template": "^7.25.9",
+ "@babel/types": "^7.26.3",
+ "debug": "^4.3.1",
"globals": "^11.1.0"
},
"engines": {
@@ -1847,12 +1868,12 @@
}
},
"node_modules/@babel/types": {
- "version": "7.21.2",
- "license": "MIT",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/types/-/types-7.26.3.tgz",
+ "integrity": "sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==",
"dependencies": {
- "@babel/helper-string-parser": "^7.19.4",
- "@babel/helper-validator-identifier": "^7.19.1",
- "to-fast-properties": "^2.0.0"
+ "@babel/helper-string-parser": "^7.25.9",
+ "@babel/helper-validator-identifier": "^7.25.9"
},
"engines": {
"node": ">=6.9.0"
@@ -3734,8 +3755,9 @@
}
},
"node_modules/@jridgewell/set-array": {
- "version": "1.1.2",
- "license": "MIT",
+ "version": "1.2.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
"engines": {
"node": ">=6.0.0"
}
@@ -3765,11 +3787,12 @@
"license": "MIT"
},
"node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.17",
- "license": "MIT",
+ "version": "0.3.25",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
"dependencies": {
- "@jridgewell/resolve-uri": "3.1.0",
- "@jridgewell/sourcemap-codec": "1.4.14"
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
}
},
"node_modules/@juggle/resize-observer": {
@@ -10852,9 +10875,10 @@
}
},
"node_modules/@types/jest": {
- "version": "29.4.0",
+ "version": "29.5.14",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/jest/-/jest-29.5.14.tgz",
+ "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==",
"dev": true,
- "license": "MIT",
"dependencies": {
"expect": "^29.0.0",
"pretty-format": "^29.0.0"
@@ -11110,63 +11134,6 @@
"version": "1.9.2",
"license": "MIT"
},
- "node_modules/@typescript-eslint/eslint-plugin": {
- "version": "4.33.0",
- "license": "MIT",
- "dependencies": {
- "@typescript-eslint/experimental-utils": "4.33.0",
- "@typescript-eslint/scope-manager": "4.33.0",
- "debug": "^4.3.1",
- "functional-red-black-tree": "^1.0.1",
- "ignore": "^5.1.8",
- "regexpp": "^3.1.0",
- "semver": "^7.3.5",
- "tsutils": "^3.21.0"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "@typescript-eslint/parser": "^4.0.0",
- "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": {
- "version": "6.0.0",
- "license": "ISC",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": {
- "version": "7.3.8",
- "license": "ISC",
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": {
- "version": "4.0.0",
- "license": "ISC"
- },
"node_modules/@typescript-eslint/experimental-utils": {
"version": "4.33.0",
"license": "MIT",
@@ -11189,31 +11156,6 @@
"eslint": "*"
}
},
- "node_modules/@typescript-eslint/parser": {
- "version": "4.33.0",
- "license": "BSD-2-Clause",
- "dependencies": {
- "@typescript-eslint/scope-manager": "4.33.0",
- "@typescript-eslint/types": "4.33.0",
- "@typescript-eslint/typescript-estree": "4.33.0",
- "debug": "^4.3.1"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
"node_modules/@typescript-eslint/scope-manager": {
"version": "4.33.0",
"license": "MIT",
@@ -12140,7 +12082,9 @@
},
"node_modules/babel-eslint": {
"version": "10.1.0",
- "license": "MIT",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/babel-eslint/-/babel-eslint-10.1.0.tgz",
+ "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==",
+ "deprecated": "babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.",
"dependencies": {
"@babel/code-frame": "^7.0.0",
"@babel/parser": "^7.7.0",
@@ -13019,6 +12963,18 @@
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
}
},
+ "node_modules/bs-logger": {
+ "version": "0.2.6",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/bs-logger/-/bs-logger-0.2.6.tgz",
+ "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==",
+ "dev": true,
+ "dependencies": {
+ "fast-json-stable-stringify": "2.x"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
"node_modules/bser": {
"version": "2.1.1",
"license": "Apache-2.0",
@@ -14976,6 +14932,21 @@
"version": "1.1.1",
"license": "MIT"
},
+ "node_modules/ejs": {
+ "version": "3.1.10",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ejs/-/ejs-3.1.10.tgz",
+ "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==",
+ "dev": true,
+ "dependencies": {
+ "jake": "^10.8.5"
+ },
+ "bin": {
+ "ejs": "bin/cli.js"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/electron-to-chromium": {
"version": "1.4.311",
"license": "ISC"
@@ -16370,8 +16341,9 @@
"integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ=="
},
"node_modules/fast-glob": {
- "version": "3.2.12",
- "license": "MIT",
+ "version": "3.3.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/fast-glob/-/fast-glob-3.3.2.tgz",
+ "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
"dependencies": {
"@nodelib/fs.stat": "^2.0.2",
"@nodelib/fs.walk": "^1.2.3",
@@ -16520,6 +16492,36 @@
"url": "https://github.com/sindresorhus/file-type?sponsor=1"
}
},
+ "node_modules/filelist": {
+ "version": "1.0.4",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/filelist/-/filelist-1.0.4.tgz",
+ "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==",
+ "dev": true,
+ "dependencies": {
+ "minimatch": "^5.0.1"
+ }
+ },
+ "node_modules/filelist/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/filelist/node_modules/minimatch": {
+ "version": "5.1.6",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/minimatch/-/minimatch-5.1.6.tgz",
+ "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
"node_modules/filename-reserved-regex": {
"version": "2.0.0",
"resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz",
@@ -17961,6 +17963,55 @@
"node": ">=18.0.0"
}
},
+ "node_modules/gatsby/node_modules/@typescript-eslint/eslint-plugin": {
+ "version": "4.33.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz",
+ "integrity": "sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==",
+ "dependencies": {
+ "@typescript-eslint/experimental-utils": "4.33.0",
+ "@typescript-eslint/scope-manager": "4.33.0",
+ "debug": "^4.3.1",
+ "functional-red-black-tree": "^1.0.1",
+ "ignore": "^5.1.8",
+ "regexpp": "^3.1.0",
+ "semver": "^7.3.5",
+ "tsutils": "^3.21.0"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ },
+ "peerDependencies": {
+ "@typescript-eslint/parser": "^4.0.0",
+ "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/gatsby/node_modules/@typescript-eslint/parser": {
+ "version": "4.33.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/parser/-/parser-4.33.0.tgz",
+ "integrity": "sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==",
+ "dependencies": {
+ "@typescript-eslint/scope-manager": "4.33.0",
+ "@typescript-eslint/types": "4.33.0",
+ "@typescript-eslint/typescript-estree": "4.33.0",
+ "debug": "^4.3.1"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
"node_modules/gatsby/node_modules/ansi-styles": {
"version": "4.3.0",
"license": "MIT",
@@ -18786,8 +18837,9 @@
"license": "BSD-3-Clause"
},
"node_modules/ignore": {
- "version": "5.2.4",
- "license": "MIT",
+ "version": "5.3.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ignore/-/ignore-5.3.2.tgz",
+ "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
"engines": {
"node": ">= 4"
}
@@ -19672,6 +19724,94 @@
"@pkgjs/parseargs": "^0.11.0"
}
},
+ "node_modules/jake": {
+ "version": "10.9.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/jake/-/jake-10.9.2.tgz",
+ "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==",
+ "dev": true,
+ "dependencies": {
+ "async": "^3.2.3",
+ "chalk": "^4.0.2",
+ "filelist": "^1.0.4",
+ "minimatch": "^3.1.2"
+ },
+ "bin": {
+ "jake": "bin/cli.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/jake/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jake/node_modules/async": {
+ "version": "3.2.6",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/async/-/async-3.2.6.tgz",
+ "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==",
+ "dev": true
+ },
+ "node_modules/jake/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/jake/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jake/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jake/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jake/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/javascript-stringify": {
"version": "2.1.0",
"license": "MIT"
@@ -21681,13 +21821,14 @@
}
},
"node_modules/jsesc": {
- "version": "2.5.2",
- "license": "MIT",
+ "version": "3.0.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/jsesc/-/jsesc-3.0.2.tgz",
+ "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==",
"bin": {
"jsesc": "bin/jsesc"
},
"engines": {
- "node": ">=4"
+ "node": ">=6"
}
},
"node_modules/json-buffer": {
@@ -22350,6 +22491,12 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/make-error": {
+ "version": "1.3.6",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/make-error/-/make-error-1.3.6.tgz",
+ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==",
+ "dev": true
+ },
"node_modules/make-fetch-happen": {
"version": "13.0.0",
"resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz",
@@ -28482,8 +28629,9 @@
"license": "MIT"
},
"node_modules/semver": {
- "version": "6.3.0",
- "license": "ISC",
+ "version": "6.3.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"bin": {
"semver": "bin/semver.js"
}
@@ -30206,13 +30354,6 @@
"dev": true,
"license": "BSD-3-Clause"
},
- "node_modules/to-fast-properties": {
- "version": "2.0.0",
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/to-regex-range": {
"version": "5.0.1",
"license": "MIT",
@@ -30320,6 +30461,75 @@
"version": "2.2.1",
"license": "Apache-2.0"
},
+ "node_modules/ts-jest": {
+ "version": "29.2.5",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ts-jest/-/ts-jest-29.2.5.tgz",
+ "integrity": "sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA==",
+ "dev": true,
+ "dependencies": {
+ "bs-logger": "^0.2.6",
+ "ejs": "^3.1.10",
+ "fast-json-stable-stringify": "^2.1.0",
+ "jest-util": "^29.0.0",
+ "json5": "^2.2.3",
+ "lodash.memoize": "^4.1.2",
+ "make-error": "^1.3.6",
+ "semver": "^7.6.3",
+ "yargs-parser": "^21.1.1"
+ },
+ "bin": {
+ "ts-jest": "cli.js"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0"
+ },
+ "peerDependencies": {
+ "@babel/core": ">=7.0.0-beta.0 <8",
+ "@jest/transform": "^29.0.0",
+ "@jest/types": "^29.0.0",
+ "babel-jest": "^29.0.0",
+ "jest": "^29.0.0",
+ "typescript": ">=4.3 <6"
+ },
+ "peerDependenciesMeta": {
+ "@babel/core": {
+ "optional": true
+ },
+ "@jest/transform": {
+ "optional": true
+ },
+ "@jest/types": {
+ "optional": true
+ },
+ "babel-jest": {
+ "optional": true
+ },
+ "esbuild": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/ts-jest/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/ts-jest/node_modules/yargs-parser": {
+ "version": "21.1.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/yargs-parser/-/yargs-parser-21.1.1.tgz",
+ "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ }
+ },
"node_modules/tsconfig-paths": {
"version": "3.14.1",
"license": "MIT",
@@ -31727,9 +31937,13 @@
}
},
"@babel/code-frame": {
- "version": "7.18.6",
+ "version": "7.26.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/code-frame/-/code-frame-7.26.2.tgz",
+ "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==",
"requires": {
- "@babel/highlight": "^7.18.6"
+ "@babel/helper-validator-identifier": "^7.25.9",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.0.0"
}
},
"@babel/compat-data": {
@@ -31769,28 +31983,35 @@
}
},
"@babel/generator": {
- "version": "7.21.1",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/generator/-/generator-7.26.3.tgz",
+ "integrity": "sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==",
"requires": {
- "@babel/types": "^7.21.0",
- "@jridgewell/gen-mapping": "^0.3.2",
- "@jridgewell/trace-mapping": "^0.3.17",
- "jsesc": "^2.5.1"
+ "@babel/parser": "^7.26.3",
+ "@babel/types": "^7.26.3",
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25",
+ "jsesc": "^3.0.2"
},
"dependencies": {
"@jridgewell/gen-mapping": {
- "version": "0.3.2",
+ "version": "0.3.5",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
"requires": {
- "@jridgewell/set-array": "^1.0.1",
+ "@jridgewell/set-array": "^1.2.1",
"@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
+ "@jridgewell/trace-mapping": "^0.3.24"
}
}
}
},
"@babel/helper-annotate-as-pure": {
- "version": "7.18.6",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz",
+ "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==",
"requires": {
- "@babel/types": "^7.18.6"
+ "@babel/types": "^7.25.9"
}
},
"@babel/helper-builder-binary-assignment-operator-visitor": {
@@ -31811,16 +32032,17 @@
}
},
"@babel/helper-create-class-features-plugin": {
- "version": "7.21.0",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz",
+ "integrity": "sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==",
"requires": {
- "@babel/helper-annotate-as-pure": "^7.18.6",
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-function-name": "^7.21.0",
- "@babel/helper-member-expression-to-functions": "^7.21.0",
- "@babel/helper-optimise-call-expression": "^7.18.6",
- "@babel/helper-replace-supers": "^7.20.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0",
- "@babel/helper-split-export-declaration": "^7.18.6"
+ "@babel/helper-annotate-as-pure": "^7.25.9",
+ "@babel/helper-member-expression-to-functions": "^7.25.9",
+ "@babel/helper-optimise-call-expression": "^7.25.9",
+ "@babel/helper-replace-supers": "^7.25.9",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9",
+ "@babel/traverse": "^7.25.9",
+ "semver": "^6.3.1"
}
},
"@babel/helper-create-regexp-features-plugin": {
@@ -31864,38 +32086,45 @@
}
},
"@babel/helper-member-expression-to-functions": {
- "version": "7.21.0",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz",
+ "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==",
"requires": {
- "@babel/types": "^7.21.0"
+ "@babel/traverse": "^7.25.9",
+ "@babel/types": "^7.25.9"
}
},
"@babel/helper-module-imports": {
- "version": "7.18.6",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz",
+ "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==",
"requires": {
- "@babel/types": "^7.18.6"
+ "@babel/traverse": "^7.25.9",
+ "@babel/types": "^7.25.9"
}
},
"@babel/helper-module-transforms": {
- "version": "7.21.2",
+ "version": "7.26.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz",
+ "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==",
"requires": {
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-module-imports": "^7.18.6",
- "@babel/helper-simple-access": "^7.20.2",
- "@babel/helper-split-export-declaration": "^7.18.6",
- "@babel/helper-validator-identifier": "^7.19.1",
- "@babel/template": "^7.20.7",
- "@babel/traverse": "^7.21.2",
- "@babel/types": "^7.21.2"
+ "@babel/helper-module-imports": "^7.25.9",
+ "@babel/helper-validator-identifier": "^7.25.9",
+ "@babel/traverse": "^7.25.9"
}
},
"@babel/helper-optimise-call-expression": {
- "version": "7.18.6",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz",
+ "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==",
"requires": {
- "@babel/types": "^7.18.6"
+ "@babel/types": "^7.25.9"
}
},
"@babel/helper-plugin-utils": {
- "version": "7.20.2"
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz",
+ "integrity": "sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw=="
},
"@babel/helper-remap-async-to-generator": {
"version": "7.18.9",
@@ -31907,26 +32136,22 @@
}
},
"@babel/helper-replace-supers": {
- "version": "7.20.7",
- "requires": {
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-member-expression-to-functions": "^7.20.7",
- "@babel/helper-optimise-call-expression": "^7.18.6",
- "@babel/template": "^7.20.7",
- "@babel/traverse": "^7.20.7",
- "@babel/types": "^7.20.7"
- }
- },
- "@babel/helper-simple-access": {
- "version": "7.20.2",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz",
+ "integrity": "sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==",
"requires": {
- "@babel/types": "^7.20.2"
+ "@babel/helper-member-expression-to-functions": "^7.25.9",
+ "@babel/helper-optimise-call-expression": "^7.25.9",
+ "@babel/traverse": "^7.25.9"
}
},
"@babel/helper-skip-transparent-expression-wrappers": {
- "version": "7.20.0",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz",
+ "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==",
"requires": {
- "@babel/types": "^7.20.0"
+ "@babel/traverse": "^7.25.9",
+ "@babel/types": "^7.25.9"
}
},
"@babel/helper-split-export-declaration": {
@@ -31936,13 +32161,19 @@
}
},
"@babel/helper-string-parser": {
- "version": "7.19.4"
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz",
+ "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA=="
},
"@babel/helper-validator-identifier": {
- "version": "7.19.1"
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
+ "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ=="
},
"@babel/helper-validator-option": {
- "version": "7.21.0"
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz",
+ "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw=="
},
"@babel/helper-wrap-function": {
"version": "7.20.5",
@@ -31970,7 +32201,12 @@
}
},
"@babel/parser": {
- "version": "7.21.2"
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/parser/-/parser-7.26.3.tgz",
+ "integrity": "sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==",
+ "requires": {
+ "@babel/types": "^7.26.3"
+ }
},
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
"version": "7.18.6",
@@ -32163,9 +32399,11 @@
}
},
"@babel/plugin-syntax-jsx": {
- "version": "7.18.6",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz",
+ "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==",
"requires": {
- "@babel/helper-plugin-utils": "^7.18.6"
+ "@babel/helper-plugin-utils": "^7.25.9"
}
},
"@babel/plugin-syntax-logical-assignment-operators": {
@@ -32217,9 +32455,11 @@
}
},
"@babel/plugin-syntax-typescript": {
- "version": "7.20.0",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz",
+ "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==",
"requires": {
- "@babel/helper-plugin-utils": "^7.19.0"
+ "@babel/helper-plugin-utils": "^7.25.9"
}
},
"@babel/plugin-transform-arrow-functions": {
@@ -32336,11 +32576,12 @@
}
},
"@babel/plugin-transform-modules-commonjs": {
- "version": "7.21.2",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz",
+ "integrity": "sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==",
"requires": {
- "@babel/helper-module-transforms": "^7.21.2",
- "@babel/helper-plugin-utils": "^7.20.2",
- "@babel/helper-simple-access": "^7.20.2"
+ "@babel/helper-module-transforms": "^7.26.0",
+ "@babel/helper-plugin-utils": "^7.25.9"
}
},
"@babel/plugin-transform-modules-systemjs": {
@@ -32476,11 +32717,15 @@
}
},
"@babel/plugin-transform-typescript": {
- "version": "7.21.0",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.3.tgz",
+ "integrity": "sha512-6+5hpdr6mETwSKjmJUdYw0EIkATiQhnELWlE3kJFBwSg/BGIVwVaVbX+gOXBCdc7Ln1RXZxyWGecIXhUfnl7oA==",
"requires": {
- "@babel/helper-create-class-features-plugin": "^7.21.0",
- "@babel/helper-plugin-utils": "^7.20.2",
- "@babel/plugin-syntax-typescript": "^7.20.0"
+ "@babel/helper-annotate-as-pure": "^7.25.9",
+ "@babel/helper-create-class-features-plugin": "^7.25.9",
+ "@babel/helper-plugin-utils": "^7.25.9",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9",
+ "@babel/plugin-syntax-typescript": "^7.25.9"
}
},
"@babel/plugin-transform-unicode-escapes": {
@@ -32598,11 +32843,15 @@
}
},
"@babel/preset-typescript": {
- "version": "7.21.0",
+ "version": "7.26.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/preset-typescript/-/preset-typescript-7.26.0.tgz",
+ "integrity": "sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==",
"requires": {
- "@babel/helper-plugin-utils": "^7.20.2",
- "@babel/helper-validator-option": "^7.21.0",
- "@babel/plugin-transform-typescript": "^7.21.0"
+ "@babel/helper-plugin-utils": "^7.25.9",
+ "@babel/helper-validator-option": "^7.25.9",
+ "@babel/plugin-syntax-jsx": "^7.25.9",
+ "@babel/plugin-transform-modules-commonjs": "^7.25.9",
+ "@babel/plugin-transform-typescript": "^7.25.9"
}
},
"@babel/regjsgen": {
@@ -32624,34 +32873,36 @@
}
},
"@babel/template": {
- "version": "7.20.7",
+ "version": "7.25.9",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/template/-/template-7.25.9.tgz",
+ "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==",
"requires": {
- "@babel/code-frame": "^7.18.6",
- "@babel/parser": "^7.20.7",
- "@babel/types": "^7.20.7"
+ "@babel/code-frame": "^7.25.9",
+ "@babel/parser": "^7.25.9",
+ "@babel/types": "^7.25.9"
}
},
"@babel/traverse": {
- "version": "7.21.2",
- "requires": {
- "@babel/code-frame": "^7.18.6",
- "@babel/generator": "^7.21.1",
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-function-name": "^7.21.0",
- "@babel/helper-hoist-variables": "^7.18.6",
- "@babel/helper-split-export-declaration": "^7.18.6",
- "@babel/parser": "^7.21.2",
- "@babel/types": "^7.21.2",
- "debug": "^4.1.0",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/traverse/-/traverse-7.26.3.tgz",
+ "integrity": "sha512-yTmc8J+Sj8yLzwr4PD5Xb/WF3bOYu2C2OoSZPzbuqRm4n98XirsbzaX+GloeO376UnSYIYJ4NCanwV5/ugZkwA==",
+ "requires": {
+ "@babel/code-frame": "^7.26.2",
+ "@babel/generator": "^7.26.3",
+ "@babel/parser": "^7.26.3",
+ "@babel/template": "^7.25.9",
+ "@babel/types": "^7.26.3",
+ "debug": "^4.3.1",
"globals": "^11.1.0"
}
},
"@babel/types": {
- "version": "7.21.2",
+ "version": "7.26.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@babel/types/-/types-7.26.3.tgz",
+ "integrity": "sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==",
"requires": {
- "@babel/helper-string-parser": "^7.19.4",
- "@babel/helper-validator-identifier": "^7.19.1",
- "to-fast-properties": "^2.0.0"
+ "@babel/helper-string-parser": "^7.25.9",
+ "@babel/helper-validator-identifier": "^7.25.9"
}
},
"@bcoe/v8-coverage": {
@@ -33965,7 +34216,9 @@
"version": "3.1.0"
},
"@jridgewell/set-array": {
- "version": "1.1.2"
+ "version": "1.2.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A=="
},
"@jridgewell/source-map": {
"version": "0.3.2",
@@ -33988,10 +34241,12 @@
"version": "1.4.14"
},
"@jridgewell/trace-mapping": {
- "version": "0.3.17",
+ "version": "0.3.25",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
"requires": {
- "@jridgewell/resolve-uri": "3.1.0",
- "@jridgewell/sourcemap-codec": "1.4.14"
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
}
},
"@juggle/resize-observer": {
@@ -39329,7 +39584,9 @@
}
},
"@types/jest": {
- "version": "29.4.0",
+ "version": "29.5.14",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/jest/-/jest-29.5.14.tgz",
+ "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==",
"dev": true,
"requires": {
"expect": "^29.0.0",
@@ -39549,36 +39806,6 @@
"@types/yoga-layout": {
"version": "1.9.2"
},
- "@typescript-eslint/eslint-plugin": {
- "version": "4.33.0",
- "requires": {
- "@typescript-eslint/experimental-utils": "4.33.0",
- "@typescript-eslint/scope-manager": "4.33.0",
- "debug": "^4.3.1",
- "functional-red-black-tree": "^1.0.1",
- "ignore": "^5.1.8",
- "regexpp": "^3.1.0",
- "semver": "^7.3.5",
- "tsutils": "^3.21.0"
- },
- "dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "semver": {
- "version": "7.3.8",
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0"
- }
- }
- },
"@typescript-eslint/experimental-utils": {
"version": "4.33.0",
"requires": {
@@ -39590,15 +39817,6 @@
"eslint-utils": "^3.0.0"
}
},
- "@typescript-eslint/parser": {
- "version": "4.33.0",
- "requires": {
- "@typescript-eslint/scope-manager": "4.33.0",
- "@typescript-eslint/types": "4.33.0",
- "@typescript-eslint/typescript-estree": "4.33.0",
- "debug": "^4.3.1"
- }
- },
"@typescript-eslint/scope-manager": {
"version": "4.33.0",
"requires": {
@@ -40189,6 +40407,8 @@
},
"babel-eslint": {
"version": "10.1.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/babel-eslint/-/babel-eslint-10.1.0.tgz",
+ "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==",
"requires": {
"@babel/code-frame": "^7.0.0",
"@babel/parser": "^7.7.0",
@@ -40781,6 +41001,15 @@
"update-browserslist-db": "^1.0.10"
}
},
+ "bs-logger": {
+ "version": "0.2.6",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/bs-logger/-/bs-logger-0.2.6.tgz",
+ "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==",
+ "dev": true,
+ "requires": {
+ "fast-json-stable-stringify": "2.x"
+ }
+ },
"bser": {
"version": "2.1.1",
"requires": {
@@ -42053,6 +42282,15 @@
"ee-first": {
"version": "1.1.1"
},
+ "ejs": {
+ "version": "3.1.10",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ejs/-/ejs-3.1.10.tgz",
+ "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==",
+ "dev": true,
+ "requires": {
+ "jake": "^10.8.5"
+ }
+ },
"electron-to-chromium": {
"version": "1.4.311"
},
@@ -42956,7 +43194,9 @@
"integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ=="
},
"fast-glob": {
- "version": "3.2.12",
+ "version": "3.3.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/fast-glob/-/fast-glob-3.3.2.tgz",
+ "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
"requires": {
"@nodelib/fs.stat": "^2.0.2",
"@nodelib/fs.walk": "^1.2.3",
@@ -43055,6 +43295,35 @@
"token-types": "^4.1.1"
}
},
+ "filelist": {
+ "version": "1.0.4",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/filelist/-/filelist-1.0.4.tgz",
+ "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==",
+ "dev": true,
+ "requires": {
+ "minimatch": "^5.0.1"
+ },
+ "dependencies": {
+ "brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "minimatch": {
+ "version": "5.1.6",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/minimatch/-/minimatch-5.1.6.tgz",
+ "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^2.0.1"
+ }
+ }
+ }
+ },
"filename-reserved-regex": {
"version": "2.0.0",
"resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz",
@@ -43543,6 +43812,32 @@
"yaml-loader": "^0.8.0"
},
"dependencies": {
+ "@typescript-eslint/eslint-plugin": {
+ "version": "4.33.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz",
+ "integrity": "sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==",
+ "requires": {
+ "@typescript-eslint/experimental-utils": "4.33.0",
+ "@typescript-eslint/scope-manager": "4.33.0",
+ "debug": "^4.3.1",
+ "functional-red-black-tree": "^1.0.1",
+ "ignore": "^5.1.8",
+ "regexpp": "^3.1.0",
+ "semver": "^7.3.5",
+ "tsutils": "^3.21.0"
+ }
+ },
+ "@typescript-eslint/parser": {
+ "version": "4.33.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/parser/-/parser-4.33.0.tgz",
+ "integrity": "sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==",
+ "requires": {
+ "@typescript-eslint/scope-manager": "4.33.0",
+ "@typescript-eslint/types": "4.33.0",
+ "@typescript-eslint/typescript-estree": "4.33.0",
+ "debug": "^4.3.1"
+ }
+ },
"ansi-styles": {
"version": "4.3.0",
"requires": {
@@ -44498,7 +44793,9 @@
"version": "1.2.1"
},
"ignore": {
- "version": "5.2.4"
+ "version": "5.3.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ignore/-/ignore-5.3.2.tgz",
+ "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g=="
},
"image-size": {
"version": "1.0.2",
@@ -45013,6 +45310,75 @@
"@pkgjs/parseargs": "^0.11.0"
}
},
+ "jake": {
+ "version": "10.9.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/jake/-/jake-10.9.2.tgz",
+ "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==",
+ "dev": true,
+ "requires": {
+ "async": "^3.2.3",
+ "chalk": "^4.0.2",
+ "filelist": "^1.0.4",
+ "minimatch": "^3.1.2"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "async": {
+ "version": "3.2.6",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/async/-/async-3.2.6.tgz",
+ "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==",
+ "dev": true
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
+ }
+ },
"javascript-stringify": {
"version": "2.1.0"
},
@@ -46308,7 +46674,9 @@
}
},
"jsesc": {
- "version": "2.5.2"
+ "version": "3.0.2",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/jsesc/-/jsesc-3.0.2.tgz",
+ "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g=="
},
"json-buffer": {
"version": "3.0.1"
@@ -46736,6 +47104,12 @@
"semver": "^6.0.0"
}
},
+ "make-error": {
+ "version": "1.3.6",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/make-error/-/make-error-1.3.6.tgz",
+ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==",
+ "dev": true
+ },
"make-fetch-happen": {
"version": "13.0.0",
"resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz",
@@ -50616,7 +50990,9 @@
"version": "1.1.2"
},
"semver": {
- "version": "6.3.0"
+ "version": "6.3.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="
},
"semver-compare": {
"version": "1.0.0",
@@ -51809,9 +52185,6 @@
"version": "1.0.5",
"dev": true
},
- "to-fast-properties": {
- "version": "2.0.0"
- },
"to-regex-range": {
"version": "5.0.1",
"requires": {
@@ -51885,6 +52258,37 @@
"true-case-path": {
"version": "2.2.1"
},
+ "ts-jest": {
+ "version": "29.2.5",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ts-jest/-/ts-jest-29.2.5.tgz",
+ "integrity": "sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA==",
+ "dev": true,
+ "requires": {
+ "bs-logger": "^0.2.6",
+ "ejs": "^3.1.10",
+ "fast-json-stable-stringify": "^2.1.0",
+ "jest-util": "^29.0.0",
+ "json5": "^2.2.3",
+ "lodash.memoize": "^4.1.2",
+ "make-error": "^1.3.6",
+ "semver": "^7.6.3",
+ "yargs-parser": "^21.1.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "7.6.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "dev": true
+ },
+ "yargs-parser": {
+ "version": "21.1.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/yargs-parser/-/yargs-parser-21.1.1.tgz",
+ "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
+ "dev": true
+ }
+ }
+ },
"tsconfig-paths": {
"version": "3.14.1",
"requires": {
diff --git a/package.json b/package.json
index 2c1e724cf..d8330628c 100644
--- a/package.json
+++ b/package.json
@@ -19,6 +19,7 @@
"@testing-library/jest-dom": "^5.16.1",
"@testing-library/react": "^13.0.0",
"@testing-library/user-event": "^13.5.0",
+ "@types/jest": "^29.5.14",
"@types/node": "^22.10.1",
"@types/react": "^18.3.13",
"@types/react-dom": "^18.3.1",
@@ -37,6 +38,7 @@
"jest-environment-jsdom": "^29.5.0",
"lint-staged": "^10.5.4",
"prettier": "^2.2.1",
+ "ts-jest": "^29.2.5",
"typescript": "^5.7.2",
"xmlhttprequest-ssl": ">=1.6.2"
},
diff --git a/src/components/Banner/SiteBanner/index.tsx b/src/components/Banner/SiteBanner/index.tsx
index 4c4bbaf0f..454d0eb5b 100644
--- a/src/components/Banner/SiteBanner/index.tsx
+++ b/src/components/Banner/SiteBanner/index.tsx
@@ -31,7 +31,7 @@ const bannerContentStyle = (bannerContent: Partial) => css`
background-image: url(${getBannerSource(bannerContent.imgPath)});
background-position: center;
background-size: cover;
- background-color: ${bannerContent.bgColor};
+ ${bannerContent.bgColor && `background-color: ${bannerContent.bgColor};`}
height: 100%;
display: flex;
justify-content: center;
diff --git a/src/types.ts b/src/types.ts
index 6d3ce8df4..ef06f935d 100644
--- a/src/types.ts
+++ b/src/types.ts
@@ -1,11 +1,11 @@
export interface SiteBannerContent {
isEnabled: boolean;
altText: string;
- imgPath: string;
+ imgPath?: string;
tabletImgPath?: string;
- mobileImgPath: string;
- bgColor: string;
- text: string;
- pillText: string;
+ mobileImgPath?: string;
+ bgColor?: string;
+ text?: string;
+ pillText?: string;
url: string;
}
diff --git a/tests/unit/SiteBanner.test.js b/tests/unit/SiteBanner.test.tsx
similarity index 58%
rename from tests/unit/SiteBanner.test.js
rename to tests/unit/SiteBanner.test.tsx
index 7d3ea7527..703bed3cc 100644
--- a/tests/unit/SiteBanner.test.js
+++ b/tests/unit/SiteBanner.test.tsx
@@ -5,9 +5,10 @@ import * as RealmUtil from '../../src/utils/realm';
import SiteBanner from '../../src/components/Banner/SiteBanner';
import { HeaderContext } from '../../src/components/Header/header-context';
import { tick } from '../utils';
+import { palette } from '@leafygreen-ui/palette';
const useStaticQuery = jest.spyOn(Gatsby, 'useStaticQuery');
-const mockSnootyEnv = (snootyEnv) => {
+const mockSnootyEnv = (snootyEnv: string) => {
useStaticQuery.mockImplementation(() => ({
site: {
siteMetadata: {
@@ -18,6 +19,7 @@ const mockSnootyEnv = (snootyEnv) => {
};
const mockBannerContent = {
+ isEnabled: true,
altText: 'Test',
imgPath: '/banners/test.png',
tabletImgPath: '/banners/test-tablet.png',
@@ -38,10 +40,31 @@ describe('Banner component', () => {
it('renders with a banner image', async () => {
jest.useFakeTimers();
- jest.spyOn(RealmUtil, 'fetchBanner').mockImplementation(() => mockBannerContent);
+ jest.spyOn(RealmUtil, 'fetchBanner').mockResolvedValueOnce(() => mockBannerContent);
const setBannerContent = jest.fn();
const wrapper = render(
-
+
+
+
+ );
+ await tick();
+ expect(wrapper.asFragment()).toMatchSnapshot();
+ });
+
+ it('renders with custom text', async () => {
+ jest.useFakeTimers();
+ const bannerContent = {
+ isEnabled: true,
+ altText: mockBannerContent.altText,
+ bgColor: palette.green.dark3,
+ text: 'This is custom banner text',
+ pillText: 'DOP',
+ url: mockBannerContent.url,
+ };
+ jest.spyOn(RealmUtil, 'fetchBanner').mockResolvedValueOnce(() => bannerContent);
+ const setBannerContent = jest.fn();
+ const wrapper = render(
+
);
diff --git a/tests/unit/__snapshots__/SiteBanner.test.js.snap b/tests/unit/__snapshots__/SiteBanner.test.js.snap
index 8f337cde4..a57fcc4ba 100644
--- a/tests/unit/__snapshots__/SiteBanner.test.js.snap
+++ b/tests/unit/__snapshots__/SiteBanner.test.js.snap
@@ -8,37 +8,197 @@ exports[`Banner component renders with a banner image 1`] = `
width: 100%;
position: absolute;
z-index: 1000;
+ color: white;
+ -webkit-text-decoration: none;
+ text-decoration: none;
}
-.emotion-2 {
+.emotion-1 {
background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test.png);
-webkit-background-position: center;
background-position: center;
-webkit-background-size: cover;
background-size: cover;
height: 100%;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ -webkit-justify-content: center;
+ justify-content: center;
+ gap: 20px;
+ padding: 0 11px;
+ font-size: 13px;
+ line-height: 20px;
}
@media only screen and (max-width: 767px) {
- .emotion-2 {
+ .emotion-1 {
background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test-tablet.png);
+ gap: 104px;
}
}
@media only screen and (max-width: 480px) {
- .emotion-2 {
+ .emotion-1 {
background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test-mobile.png);
+ gap: 28px;
+ font-size: 11px;
}
}
`;
+
+exports[`Banner component renders with custom text 1`] = `
+
+ .emotion-0 {
+ display: block;
+ height: 40px;
+ width: 100%;
+ position: absolute;
+ z-index: 1000;
+ color: white;
+ -webkit-text-decoration: none;
+ text-decoration: none;
+}
+
+.emotion-1 {
+ background-image: url();
+ -webkit-background-position: center;
+ background-position: center;
+ -webkit-background-size: cover;
+ background-size: cover;
+ background-color: #023430;
+ height: 100%;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ -webkit-justify-content: center;
+ justify-content: center;
+ gap: 20px;
+ padding: 0 11px;
+ font-size: 13px;
+ line-height: 20px;
+}
+
+@media only screen and (max-width: 767px) {
+ .emotion-1 {
+ background-image: url();
+ gap: 104px;
+ }
+}
+
+@media only screen and (max-width: 480px) {
+ .emotion-1 {
+ background-image: url();
+ gap: 28px;
+ font-size: 11px;
+ }
+}
+
+.emotion-2 {
+ -webkit-align-self: center;
+ -ms-flex-item-align: center;
+ align-self: center;
+ max-height: 40px;
+}
+
+.emotion-3 {
+ display: grid;
+ justify-items: center;
+ -webkit-align-items: center;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+}
+
+.emotion-4 {
+ grid-row: 1;
+ grid-column: 1;
+ height: 40px;
+}
+
+.emotion-5 {
+ grid-row: 1;
+ grid-column: 1;
+ color: #023430;
+ font-weight: 600;
+ line-height: 16px;
+ font-size: 12px;
+ background-color: #00ED64;
+ border: 1px solid #00684A;
+ border-radius: 6px;
+ height: 22px;
+ padding: 3px 8px;
+ z-index: 1;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-align-items: center;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ -webkit-justify-content: center;
+ justify-content: center;
+}
+
+
+
+
+ This is custom banner text
+
+
+
+
+
+`;
From 6c7c7f1373aae8eb2f7234bf0e72f533685a3be3 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 17:28:08 -0500
Subject: [PATCH 13/23] Format
---
package.json | 2 +-
src/components/Header/header-context.tsx | 2 +-
tests/unit/SiteBanner.test.tsx | 4 +++-
tsconfig.json | 25 +++++++++++++-----------
4 files changed, 19 insertions(+), 14 deletions(-)
diff --git a/package.json b/package.json
index d8330628c..a4c38b9af 100644
--- a/package.json
+++ b/package.json
@@ -59,7 +59,7 @@
"percy": "npm run build:clean && npm exec -- percy snapshot ./public -c .percy.yml",
"prepare": "node -e \"if (process.env.NODE_ENV !== 'production'){process.exit(1)} \" || husky install",
"postversion": "git push origin v$npm_package_version && git push origin main",
- "prettier": "prettier '**/*.{js,jsx,json,md}'",
+ "prettier": "prettier '**/*.{js,jsx,ts,tsx,json,md}'",
"preversion": "npm run ensure-main && npm run format && npm run lint && npm run test",
"serve": "gatsby serve --prefix-paths",
"test": "jest",
diff --git a/src/components/Header/header-context.tsx b/src/components/Header/header-context.tsx
index f15c0b0e5..f6e0c07a9 100644
--- a/src/components/Header/header-context.tsx
+++ b/src/components/Header/header-context.tsx
@@ -6,7 +6,7 @@ interface HeaderContextType {
bannerContent: SiteBannerContent | null;
setBannerContent: Function;
totalHeaderHeight: string;
-};
+}
const HeaderContext = createContext({
bannerContent: null,
diff --git a/tests/unit/SiteBanner.test.tsx b/tests/unit/SiteBanner.test.tsx
index 703bed3cc..1ed4bf843 100644
--- a/tests/unit/SiteBanner.test.tsx
+++ b/tests/unit/SiteBanner.test.tsx
@@ -43,7 +43,9 @@ describe('Banner component', () => {
jest.spyOn(RealmUtil, 'fetchBanner').mockResolvedValueOnce(() => mockBannerContent);
const setBannerContent = jest.fn();
const wrapper = render(
-
+
);
diff --git a/tsconfig.json b/tsconfig.json
index 173b2fedc..95818c32b 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -11,9 +11,12 @@
// "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */
/* Language and Environment */
- "target": "esnext", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
- "lib": ["dom", "esnext"], /* Specify a set of bundled library declaration files that describe the target runtime environment. */
- "jsx": "react", /* Specify what JSX code is generated. */
+ "target": "esnext" /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */,
+ "lib": [
+ "dom",
+ "esnext"
+ ] /* Specify a set of bundled library declaration files that describe the target runtime environment. */,
+ "jsx": "react" /* Specify what JSX code is generated. */,
// "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */
// "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
// "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h' */
@@ -24,9 +27,9 @@
// "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */
/* Modules */
- "module": "esnext", /* Specify what module code is generated. */
+ "module": "esnext" /* Specify what module code is generated. */,
// "rootDir": "./", /* Specify the root folder within your source files. */
- "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */
+ "moduleResolution": "node" /* Specify how TypeScript looks up a file from a given module specifier. */,
// "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */
// "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
// "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
@@ -37,7 +40,7 @@
// "noResolve": true, /* Disallow `import`s, `require`s or ``s from expanding the number of files TypeScript should add to a project. */
/* JavaScript Support */
- "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */
+ "allowJs": true /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */,
// "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */
// "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from `node_modules`. Only applicable with `allowJs`. */
@@ -69,12 +72,12 @@
/* Interop Constraints */
// "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */
// "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */
- "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */
+ "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */,
// "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */
- "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
+ "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */,
/* Type Checking */
- "strict": true, /* Enable all strict type-checking options. */
+ "strict": true /* Enable all strict type-checking options. */,
// "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied `any` type.. */
// "strictNullChecks": true, /* When type checking, take into account `null` and `undefined`. */
// "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
@@ -96,7 +99,7 @@
/* Completeness */
// "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
- "skipLibCheck": true /* Skip type checking all .d.ts files. */
+ "skipLibCheck": true /* Skip type checking all .d.ts files. */
},
"include": ["./src/**/*", "./gatsby-node.ts", "./gatsby-config.ts", "./plugins/**/*"]
-}
\ No newline at end of file
+}
From 71fa90e32e9349e8098153ddff846a5e8b6fb180 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 17:37:32 -0500
Subject: [PATCH 14/23] Fix linting issues
---
.eslintrc.js | 6 +
package-lock.json | 789 ++++++++++++++++++++-
package.json | 6 +-
src/components/Banner/SiteBanner/index.tsx | 2 +-
tests/unit/SiteBanner.test.tsx | 2 +-
5 files changed, 791 insertions(+), 14 deletions(-)
diff --git a/.eslintrc.js b/.eslintrc.js
index d880df5ca..81ecbd86e 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -25,4 +25,10 @@ module.exports = {
},
},
},
+ overrides: [
+ {
+ files: ['*.ts', '*.tsx'],
+ parser: '@typescript-eslint/parser',
+ },
+ ],
};
diff --git a/package-lock.json b/package-lock.json
index e7a9cac64..beeb0865f 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -118,6 +118,8 @@
"@types/node": "^22.10.1",
"@types/react": "^18.3.13",
"@types/react-dom": "^18.3.1",
+ "@typescript-eslint/eslint-plugin": "^6.21.0",
+ "@typescript-eslint/parser": "^6.21.0",
"auto-changelog": "^2.2.1",
"babel-jest": "^29.5.0",
"babel-plugin-emotion": "^11.0.0",
@@ -134,7 +136,7 @@
"lint-staged": "^10.5.4",
"prettier": "^2.2.1",
"ts-jest": "^29.2.5",
- "typescript": "^5.7.2",
+ "typescript": "<5.4.0",
"xmlhttprequest-ssl": ">=1.6.2"
},
"engines": {
@@ -2425,6 +2427,15 @@
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
}
},
+ "node_modules/@eslint-community/regexpp": {
+ "version": "4.12.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@eslint-community/regexpp/-/regexpp-4.12.1.tgz",
+ "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==",
+ "dev": true,
+ "engines": {
+ "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
+ }
+ },
"node_modules/@eslint/eslintrc": {
"version": "0.4.3",
"license": "MIT",
@@ -10924,8 +10935,9 @@
}
},
"node_modules/@types/json-schema": {
- "version": "7.0.11",
- "license": "MIT"
+ "version": "7.0.15",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/json-schema/-/json-schema-7.0.15.tgz",
+ "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="
},
"node_modules/@types/json5": {
"version": "0.0.29",
@@ -11134,6 +11146,159 @@
"version": "1.9.2",
"license": "MIT"
},
+ "node_modules/@typescript-eslint/eslint-plugin": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz",
+ "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==",
+ "dev": true,
+ "dependencies": {
+ "@eslint-community/regexpp": "^4.5.1",
+ "@typescript-eslint/scope-manager": "6.21.0",
+ "@typescript-eslint/type-utils": "6.21.0",
+ "@typescript-eslint/utils": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0",
+ "debug": "^4.3.4",
+ "graphemer": "^1.4.0",
+ "ignore": "^5.2.4",
+ "natural-compare": "^1.4.0",
+ "semver": "^7.5.4",
+ "ts-api-utils": "^1.0.1"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha",
+ "eslint": "^7.0.0 || ^8.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz",
+ "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/types/-/types-6.21.0.tgz",
+ "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==",
+ "dev": true,
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz",
+ "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0",
+ "debug": "^4.3.4",
+ "globby": "^11.1.0",
+ "is-glob": "^4.0.3",
+ "minimatch": "9.0.3",
+ "semver": "^7.5.4",
+ "ts-api-utils": "^1.0.1"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/utils/-/utils-6.21.0.tgz",
+ "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==",
+ "dev": true,
+ "dependencies": {
+ "@eslint-community/eslint-utils": "^4.4.0",
+ "@types/json-schema": "^7.0.12",
+ "@types/semver": "^7.5.0",
+ "@typescript-eslint/scope-manager": "6.21.0",
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/typescript-estree": "6.21.0",
+ "semver": "^7.5.4"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^7.0.0 || ^8.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz",
+ "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "6.21.0",
+ "eslint-visitor-keys": "^3.4.1"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-visitor-keys": {
+ "version": "3.4.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
+ "dev": true,
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/minimatch": {
+ "version": "9.0.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/minimatch/-/minimatch-9.0.3.tgz",
+ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
"node_modules/@typescript-eslint/experimental-utils": {
"version": "4.33.0",
"license": "MIT",
@@ -11156,6 +11321,131 @@
"eslint": "*"
}
},
+ "node_modules/@typescript-eslint/parser": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/parser/-/parser-6.21.0.tgz",
+ "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/scope-manager": "6.21.0",
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/typescript-estree": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0",
+ "debug": "^4.3.4"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^7.0.0 || ^8.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz",
+ "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/types/-/types-6.21.0.tgz",
+ "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==",
+ "dev": true,
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz",
+ "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0",
+ "debug": "^4.3.4",
+ "globby": "^11.1.0",
+ "is-glob": "^4.0.3",
+ "minimatch": "9.0.3",
+ "semver": "^7.5.4",
+ "ts-api-utils": "^1.0.1"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz",
+ "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "6.21.0",
+ "eslint-visitor-keys": "^3.4.1"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": {
+ "version": "3.4.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
+ "dev": true,
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/minimatch": {
+ "version": "9.0.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/minimatch/-/minimatch-9.0.3.tgz",
+ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ }
+ },
+ "node_modules/@typescript-eslint/parser/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
"node_modules/@typescript-eslint/scope-manager": {
"version": "4.33.0",
"license": "MIT",
@@ -11171,6 +11461,151 @@
"url": "https://opencollective.com/typescript-eslint"
}
},
+ "node_modules/@typescript-eslint/type-utils": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz",
+ "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/typescript-estree": "6.21.0",
+ "@typescript-eslint/utils": "6.21.0",
+ "debug": "^4.3.4",
+ "ts-api-utils": "^1.0.1"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^7.0.0 || ^8.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz",
+ "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/types/-/types-6.21.0.tgz",
+ "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==",
+ "dev": true,
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz",
+ "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0",
+ "debug": "^4.3.4",
+ "globby": "^11.1.0",
+ "is-glob": "^4.0.3",
+ "minimatch": "9.0.3",
+ "semver": "^7.5.4",
+ "ts-api-utils": "^1.0.1"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/utils/-/utils-6.21.0.tgz",
+ "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==",
+ "dev": true,
+ "dependencies": {
+ "@eslint-community/eslint-utils": "^4.4.0",
+ "@types/json-schema": "^7.0.12",
+ "@types/semver": "^7.5.0",
+ "@typescript-eslint/scope-manager": "6.21.0",
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/typescript-estree": "6.21.0",
+ "semver": "^7.5.4"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^7.0.0 || ^8.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz",
+ "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "6.21.0",
+ "eslint-visitor-keys": "^3.4.1"
+ },
+ "engines": {
+ "node": "^16.0.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils/node_modules/eslint-visitor-keys": {
+ "version": "3.4.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
+ "dev": true,
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils/node_modules/minimatch": {
+ "version": "9.0.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/minimatch/-/minimatch-9.0.3.tgz",
+ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
"node_modules/@typescript-eslint/types": {
"version": "4.33.0",
"license": "MIT",
@@ -18370,6 +18805,12 @@
"version": "4.2.10",
"license": "ISC"
},
+ "node_modules/graphemer": {
+ "version": "1.4.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/graphemer/-/graphemer-1.4.0.tgz",
+ "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
+ "dev": true
+ },
"node_modules/graphql": {
"version": "16.6.0",
"license": "MIT",
@@ -30461,6 +30902,18 @@
"version": "2.2.1",
"license": "Apache-2.0"
},
+ "node_modules/ts-api-utils": {
+ "version": "1.4.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ts-api-utils/-/ts-api-utils-1.4.3.tgz",
+ "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==",
+ "dev": true,
+ "engines": {
+ "node": ">=16"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.2.0"
+ }
+ },
"node_modules/ts-jest": {
"version": "29.2.5",
"resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ts-jest/-/ts-jest-29.2.5.tgz",
@@ -30659,9 +31112,9 @@
}
},
"node_modules/typescript": {
- "version": "5.7.2",
- "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/typescript/-/typescript-5.7.2.tgz",
- "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==",
+ "version": "5.3.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/typescript/-/typescript-5.3.3.tgz",
+ "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==",
"dev": true,
"bin": {
"tsc": "bin/tsc",
@@ -33286,6 +33739,12 @@
}
}
},
+ "@eslint-community/regexpp": {
+ "version": "4.12.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@eslint-community/regexpp/-/regexpp-4.12.1.tgz",
+ "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==",
+ "dev": true
+ },
"@eslint/eslintrc": {
"version": "0.4.3",
"requires": {
@@ -39622,7 +40081,9 @@
}
},
"@types/json-schema": {
- "version": "7.0.11"
+ "version": "7.0.15",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@types/json-schema/-/json-schema-7.0.15.tgz",
+ "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="
},
"@types/json5": {
"version": "0.0.29"
@@ -39806,6 +40267,114 @@
"@types/yoga-layout": {
"version": "1.9.2"
},
+ "@typescript-eslint/eslint-plugin": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz",
+ "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==",
+ "dev": true,
+ "requires": {
+ "@eslint-community/regexpp": "^4.5.1",
+ "@typescript-eslint/scope-manager": "6.21.0",
+ "@typescript-eslint/type-utils": "6.21.0",
+ "@typescript-eslint/utils": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0",
+ "debug": "^4.3.4",
+ "graphemer": "^1.4.0",
+ "ignore": "^5.2.4",
+ "natural-compare": "^1.4.0",
+ "semver": "^7.5.4",
+ "ts-api-utils": "^1.0.1"
+ },
+ "dependencies": {
+ "@typescript-eslint/scope-manager": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz",
+ "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0"
+ }
+ },
+ "@typescript-eslint/types": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/types/-/types-6.21.0.tgz",
+ "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==",
+ "dev": true
+ },
+ "@typescript-eslint/typescript-estree": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz",
+ "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0",
+ "debug": "^4.3.4",
+ "globby": "^11.1.0",
+ "is-glob": "^4.0.3",
+ "minimatch": "9.0.3",
+ "semver": "^7.5.4",
+ "ts-api-utils": "^1.0.1"
+ }
+ },
+ "@typescript-eslint/utils": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/utils/-/utils-6.21.0.tgz",
+ "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==",
+ "dev": true,
+ "requires": {
+ "@eslint-community/eslint-utils": "^4.4.0",
+ "@types/json-schema": "^7.0.12",
+ "@types/semver": "^7.5.0",
+ "@typescript-eslint/scope-manager": "6.21.0",
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/typescript-estree": "6.21.0",
+ "semver": "^7.5.4"
+ }
+ },
+ "@typescript-eslint/visitor-keys": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz",
+ "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "6.21.0",
+ "eslint-visitor-keys": "^3.4.1"
+ }
+ },
+ "brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "eslint-visitor-keys": {
+ "version": "3.4.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
+ "dev": true
+ },
+ "minimatch": {
+ "version": "9.0.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/minimatch/-/minimatch-9.0.3.tgz",
+ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^2.0.1"
+ }
+ },
+ "semver": {
+ "version": "7.6.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "dev": true
+ }
+ }
+ },
"@typescript-eslint/experimental-utils": {
"version": "4.33.0",
"requires": {
@@ -39817,6 +40386,93 @@
"eslint-utils": "^3.0.0"
}
},
+ "@typescript-eslint/parser": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/parser/-/parser-6.21.0.tgz",
+ "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/scope-manager": "6.21.0",
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/typescript-estree": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0",
+ "debug": "^4.3.4"
+ },
+ "dependencies": {
+ "@typescript-eslint/scope-manager": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz",
+ "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0"
+ }
+ },
+ "@typescript-eslint/types": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/types/-/types-6.21.0.tgz",
+ "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==",
+ "dev": true
+ },
+ "@typescript-eslint/typescript-estree": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz",
+ "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0",
+ "debug": "^4.3.4",
+ "globby": "^11.1.0",
+ "is-glob": "^4.0.3",
+ "minimatch": "9.0.3",
+ "semver": "^7.5.4",
+ "ts-api-utils": "^1.0.1"
+ }
+ },
+ "@typescript-eslint/visitor-keys": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz",
+ "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "6.21.0",
+ "eslint-visitor-keys": "^3.4.1"
+ }
+ },
+ "brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "eslint-visitor-keys": {
+ "version": "3.4.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
+ "dev": true
+ },
+ "minimatch": {
+ "version": "9.0.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/minimatch/-/minimatch-9.0.3.tgz",
+ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^2.0.1"
+ }
+ },
+ "semver": {
+ "version": "7.6.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "dev": true
+ }
+ }
+ },
"@typescript-eslint/scope-manager": {
"version": "4.33.0",
"requires": {
@@ -39824,6 +40480,107 @@
"@typescript-eslint/visitor-keys": "4.33.0"
}
},
+ "@typescript-eslint/type-utils": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz",
+ "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/typescript-estree": "6.21.0",
+ "@typescript-eslint/utils": "6.21.0",
+ "debug": "^4.3.4",
+ "ts-api-utils": "^1.0.1"
+ },
+ "dependencies": {
+ "@typescript-eslint/scope-manager": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz",
+ "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0"
+ }
+ },
+ "@typescript-eslint/types": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/types/-/types-6.21.0.tgz",
+ "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==",
+ "dev": true
+ },
+ "@typescript-eslint/typescript-estree": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz",
+ "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/visitor-keys": "6.21.0",
+ "debug": "^4.3.4",
+ "globby": "^11.1.0",
+ "is-glob": "^4.0.3",
+ "minimatch": "9.0.3",
+ "semver": "^7.5.4",
+ "ts-api-utils": "^1.0.1"
+ }
+ },
+ "@typescript-eslint/utils": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/utils/-/utils-6.21.0.tgz",
+ "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==",
+ "dev": true,
+ "requires": {
+ "@eslint-community/eslint-utils": "^4.4.0",
+ "@types/json-schema": "^7.0.12",
+ "@types/semver": "^7.5.0",
+ "@typescript-eslint/scope-manager": "6.21.0",
+ "@typescript-eslint/types": "6.21.0",
+ "@typescript-eslint/typescript-estree": "6.21.0",
+ "semver": "^7.5.4"
+ }
+ },
+ "@typescript-eslint/visitor-keys": {
+ "version": "6.21.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz",
+ "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "6.21.0",
+ "eslint-visitor-keys": "^3.4.1"
+ }
+ },
+ "brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "eslint-visitor-keys": {
+ "version": "3.4.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
+ "dev": true
+ },
+ "minimatch": {
+ "version": "9.0.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/minimatch/-/minimatch-9.0.3.tgz",
+ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^2.0.1"
+ }
+ },
+ "semver": {
+ "version": "7.6.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "dev": true
+ }
+ }
+ },
"@typescript-eslint/types": {
"version": "4.33.0"
},
@@ -44525,6 +45282,12 @@
"graceful-fs": {
"version": "4.2.10"
},
+ "graphemer": {
+ "version": "1.4.0",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/graphemer/-/graphemer-1.4.0.tgz",
+ "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
+ "dev": true
+ },
"graphql": {
"version": "16.6.0"
},
@@ -52258,6 +53021,12 @@
"true-case-path": {
"version": "2.2.1"
},
+ "ts-api-utils": {
+ "version": "1.4.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ts-api-utils/-/ts-api-utils-1.4.3.tgz",
+ "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==",
+ "dev": true
+ },
"ts-jest": {
"version": "29.2.5",
"resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/ts-jest/-/ts-jest-29.2.5.tgz",
@@ -52373,9 +53142,9 @@
}
},
"typescript": {
- "version": "5.7.2",
- "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/typescript/-/typescript-5.7.2.tgz",
- "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==",
+ "version": "5.3.3",
+ "resolved": "https://artifactory.corp.mongodb.com/artifactory/api/npm/npm/typescript/-/typescript-5.3.3.tgz",
+ "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==",
"dev": true
},
"ua-parser-js": {
diff --git a/package.json b/package.json
index a4c38b9af..b317a5471 100644
--- a/package.json
+++ b/package.json
@@ -23,6 +23,8 @@
"@types/node": "^22.10.1",
"@types/react": "^18.3.13",
"@types/react-dom": "^18.3.1",
+ "@typescript-eslint/eslint-plugin": "^6.21.0",
+ "@typescript-eslint/parser": "^6.21.0",
"auto-changelog": "^2.2.1",
"babel-jest": "^29.5.0",
"babel-plugin-emotion": "^11.0.0",
@@ -39,7 +41,7 @@
"lint-staged": "^10.5.4",
"prettier": "^2.2.1",
"ts-jest": "^29.2.5",
- "typescript": "^5.7.2",
+ "typescript": "<5.4.0",
"xmlhttprequest-ssl": ">=1.6.2"
},
"scripts": {
@@ -54,7 +56,7 @@
"ensure-main": "node scripts/ensure-main.js",
"format": "npm run prettier -- --check",
"format:fix": "npm run prettier -- --write",
- "lint": "eslint --ext .js,.jsx .",
+ "lint": "eslint --ext .js,.jsx,.ts,.tsx .",
"lint:fix": "npm run lint -- --fix --max-warnings 0",
"percy": "npm run build:clean && npm exec -- percy snapshot ./public -c .percy.yml",
"prepare": "node -e \"if (process.env.NODE_ENV !== 'production'){process.exit(1)} \" || husky install",
diff --git a/src/components/Banner/SiteBanner/index.tsx b/src/components/Banner/SiteBanner/index.tsx
index 454d0eb5b..4d0ada5aa 100644
--- a/src/components/Banner/SiteBanner/index.tsx
+++ b/src/components/Banner/SiteBanner/index.tsx
@@ -8,8 +8,8 @@ import { theme } from '../../../theme/docsTheme';
import { isBrowser } from '../../../utils/is-browser';
import { normalizePath } from '../../../utils/normalize-path';
import { fetchBanner } from '../../../utils/realm';
-import BrandingShape from './BrandingShape';
import { SiteBannerContent } from '../../../types';
+import BrandingShape from './BrandingShape';
const getBannerSource = (src?: string) => {
if (src == null || src === '') return null;
diff --git a/tests/unit/SiteBanner.test.tsx b/tests/unit/SiteBanner.test.tsx
index 1ed4bf843..0cafa97a0 100644
--- a/tests/unit/SiteBanner.test.tsx
+++ b/tests/unit/SiteBanner.test.tsx
@@ -1,11 +1,11 @@
import React from 'react';
import { render } from '@testing-library/react';
import * as Gatsby from 'gatsby';
+import { palette } from '@leafygreen-ui/palette';
import * as RealmUtil from '../../src/utils/realm';
import SiteBanner from '../../src/components/Banner/SiteBanner';
import { HeaderContext } from '../../src/components/Header/header-context';
import { tick } from '../utils';
-import { palette } from '@leafygreen-ui/palette';
const useStaticQuery = jest.spyOn(Gatsby, 'useStaticQuery');
const mockSnootyEnv = (snootyEnv: string) => {
From 5550554a5a91d3e6caaf6a5d30de2393692df292 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 17:52:35 -0500
Subject: [PATCH 15/23] Deleted old JS snap?
---
.../__snapshots__/SiteBanner.test.js.snap | 204 ------------------
1 file changed, 204 deletions(-)
delete mode 100644 tests/unit/__snapshots__/SiteBanner.test.js.snap
diff --git a/tests/unit/__snapshots__/SiteBanner.test.js.snap b/tests/unit/__snapshots__/SiteBanner.test.js.snap
deleted file mode 100644
index a57fcc4ba..000000000
--- a/tests/unit/__snapshots__/SiteBanner.test.js.snap
+++ /dev/null
@@ -1,204 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`Banner component renders with a banner image 1`] = `
-
- .emotion-0 {
- display: block;
- height: 40px;
- width: 100%;
- position: absolute;
- z-index: 1000;
- color: white;
- -webkit-text-decoration: none;
- text-decoration: none;
-}
-
-.emotion-1 {
- background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test.png);
- -webkit-background-position: center;
- background-position: center;
- -webkit-background-size: cover;
- background-size: cover;
- height: 100%;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-pack: center;
- -ms-flex-pack: center;
- -webkit-justify-content: center;
- justify-content: center;
- gap: 20px;
- padding: 0 11px;
- font-size: 13px;
- line-height: 20px;
-}
-
-@media only screen and (max-width: 767px) {
- .emotion-1 {
- background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test-tablet.png);
- gap: 104px;
- }
-}
-
-@media only screen and (max-width: 480px) {
- .emotion-1 {
- background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test-mobile.png);
- gap: 28px;
- font-size: 11px;
- }
-}
-
-
-
-
-
-`;
-
-exports[`Banner component renders with custom text 1`] = `
-
- .emotion-0 {
- display: block;
- height: 40px;
- width: 100%;
- position: absolute;
- z-index: 1000;
- color: white;
- -webkit-text-decoration: none;
- text-decoration: none;
-}
-
-.emotion-1 {
- background-image: url();
- -webkit-background-position: center;
- background-position: center;
- -webkit-background-size: cover;
- background-size: cover;
- background-color: #023430;
- height: 100%;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-pack: center;
- -ms-flex-pack: center;
- -webkit-justify-content: center;
- justify-content: center;
- gap: 20px;
- padding: 0 11px;
- font-size: 13px;
- line-height: 20px;
-}
-
-@media only screen and (max-width: 767px) {
- .emotion-1 {
- background-image: url();
- gap: 104px;
- }
-}
-
-@media only screen and (max-width: 480px) {
- .emotion-1 {
- background-image: url();
- gap: 28px;
- font-size: 11px;
- }
-}
-
-.emotion-2 {
- -webkit-align-self: center;
- -ms-flex-item-align: center;
- align-self: center;
- max-height: 40px;
-}
-
-.emotion-3 {
- display: grid;
- justify-items: center;
- -webkit-align-items: center;
- -webkit-box-align: center;
- -ms-flex-align: center;
- align-items: center;
-}
-
-.emotion-4 {
- grid-row: 1;
- grid-column: 1;
- height: 40px;
-}
-
-.emotion-5 {
- grid-row: 1;
- grid-column: 1;
- color: #023430;
- font-weight: 600;
- line-height: 16px;
- font-size: 12px;
- background-color: #00ED64;
- border: 1px solid #00684A;
- border-radius: 6px;
- height: 22px;
- padding: 3px 8px;
- z-index: 1;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-align-items: center;
- -webkit-box-align: center;
- -ms-flex-align: center;
- align-items: center;
- -webkit-box-pack: center;
- -ms-flex-pack: center;
- -webkit-justify-content: center;
- justify-content: center;
-}
-
-
-
-
- This is custom banner text
-
-
-
-
-
-`;
From 6f3f879b8730e67026e12d1bed049f3e4430a488 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Wed, 4 Dec 2024 17:55:56 -0500
Subject: [PATCH 16/23] Fix test configuration
---
jest.config.js | 2 +-
.../__snapshots__/SiteBanner.test.tsx.snap | 204 ++++++++++++++++++
2 files changed, 205 insertions(+), 1 deletion(-)
create mode 100644 tests/unit/__snapshots__/SiteBanner.test.tsx.snap
diff --git a/jest.config.js b/jest.config.js
index 47cccfd6e..83e49f58b 100644
--- a/jest.config.js
+++ b/jest.config.js
@@ -17,7 +17,7 @@ module.exports = {
setupFilesAfterEnv: ['/tests/testSetup.js'],
snapshotSerializers: ['@emotion/jest/serializer'],
testEnvironment: 'jest-environment-jsdom',
- testMatch: ['/tests/unit/**/*.test.js'],
+ testMatch: ['/tests/unit/**/*.test.js', '/tests/unit/**/*.test.tsx'],
transform: {
'^.+\\.jsx?$': `/jest-preprocess.js`,
'^.+\\.(ts|tsx)$': 'ts-jest',
diff --git a/tests/unit/__snapshots__/SiteBanner.test.tsx.snap b/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
new file mode 100644
index 000000000..a57fcc4ba
--- /dev/null
+++ b/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
@@ -0,0 +1,204 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Banner component renders with a banner image 1`] = `
+
+ .emotion-0 {
+ display: block;
+ height: 40px;
+ width: 100%;
+ position: absolute;
+ z-index: 1000;
+ color: white;
+ -webkit-text-decoration: none;
+ text-decoration: none;
+}
+
+.emotion-1 {
+ background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test.png);
+ -webkit-background-position: center;
+ background-position: center;
+ -webkit-background-size: cover;
+ background-size: cover;
+ height: 100%;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ -webkit-justify-content: center;
+ justify-content: center;
+ gap: 20px;
+ padding: 0 11px;
+ font-size: 13px;
+ line-height: 20px;
+}
+
+@media only screen and (max-width: 767px) {
+ .emotion-1 {
+ background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test-tablet.png);
+ gap: 104px;
+ }
+}
+
+@media only screen and (max-width: 480px) {
+ .emotion-1 {
+ background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test-mobile.png);
+ gap: 28px;
+ font-size: 11px;
+ }
+}
+
+
+
+
+
+`;
+
+exports[`Banner component renders with custom text 1`] = `
+
+ .emotion-0 {
+ display: block;
+ height: 40px;
+ width: 100%;
+ position: absolute;
+ z-index: 1000;
+ color: white;
+ -webkit-text-decoration: none;
+ text-decoration: none;
+}
+
+.emotion-1 {
+ background-image: url();
+ -webkit-background-position: center;
+ background-position: center;
+ -webkit-background-size: cover;
+ background-size: cover;
+ background-color: #023430;
+ height: 100%;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ -webkit-justify-content: center;
+ justify-content: center;
+ gap: 20px;
+ padding: 0 11px;
+ font-size: 13px;
+ line-height: 20px;
+}
+
+@media only screen and (max-width: 767px) {
+ .emotion-1 {
+ background-image: url();
+ gap: 104px;
+ }
+}
+
+@media only screen and (max-width: 480px) {
+ .emotion-1 {
+ background-image: url();
+ gap: 28px;
+ font-size: 11px;
+ }
+}
+
+.emotion-2 {
+ -webkit-align-self: center;
+ -ms-flex-item-align: center;
+ align-self: center;
+ max-height: 40px;
+}
+
+.emotion-3 {
+ display: grid;
+ justify-items: center;
+ -webkit-align-items: center;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+}
+
+.emotion-4 {
+ grid-row: 1;
+ grid-column: 1;
+ height: 40px;
+}
+
+.emotion-5 {
+ grid-row: 1;
+ grid-column: 1;
+ color: #023430;
+ font-weight: 600;
+ line-height: 16px;
+ font-size: 12px;
+ background-color: #00ED64;
+ border: 1px solid #00684A;
+ border-radius: 6px;
+ height: 22px;
+ padding: 3px 8px;
+ z-index: 1;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-align-items: center;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ -webkit-justify-content: center;
+ justify-content: center;
+}
+
+
+
+
+ This is custom banner text
+
+
+
+
+
+`;
From 6103727fc6bb5e2535f05227b7fc4c23b8664da9 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Thu, 5 Dec 2024 10:08:17 -0500
Subject: [PATCH 17/23] Make css more flexible
---
src/components/Banner/SiteBanner/index.tsx | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/src/components/Banner/SiteBanner/index.tsx b/src/components/Banner/SiteBanner/index.tsx
index 4d0ada5aa..90e14c281 100644
--- a/src/components/Banner/SiteBanner/index.tsx
+++ b/src/components/Banner/SiteBanner/index.tsx
@@ -42,19 +42,28 @@ const bannerContentStyle = (bannerContent: Partial) => css`
@media ${theme.screenSize.upToMedium} {
background-image: url(${getBannerSource(bannerContent.tabletImgPath)});
- gap: 104px;
+ justify-content: space-between;
}
@media ${theme.screenSize.upToSmall} {
background-image: url(${getBannerSource(bannerContent.mobileImgPath)});
gap: 28px;
font-size: 11px;
+ justify-content: space-between;
}
`;
const bannerTextStyle = css`
align-self: center;
max-height: 40px;
+
+ @media ${theme.screenSize.upToMedium} {
+ max-width: 543px;
+ }
+
+ @media ${theme.screenSize.upToSmall} {
+ max-width: 200px;
+ }
`;
const pillContainer = css`
@@ -98,9 +107,9 @@ const SiteBanner = () => {
useEffect(() => {
const fetchBannerContent = async () => {
try {
- const res: SiteBannerContent = await fetchBanner(snootyEnv);
+ const res: SiteBannerContent | null = await fetchBanner(snootyEnv);
// Guard against missing banner content
- if (res && (res.imgPath || res.text)) {
+ if (res && res.url && (res.imgPath || res.text)) {
setBannerContent(res);
}
} catch (err) {
From 63bdd7459e001867ee3ec7ec82e4273670a10638 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Thu, 5 Dec 2024 10:08:58 -0500
Subject: [PATCH 18/23] Update snapshots
---
.../__snapshots__/SiteBanner.test.tsx.snap | 26 +++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
diff --git a/tests/unit/__snapshots__/SiteBanner.test.tsx.snap b/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
index a57fcc4ba..bf0acbbe9 100644
--- a/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
+++ b/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
@@ -37,7 +37,9 @@ exports[`Banner component renders with a banner image 1`] = `
@media only screen and (max-width: 767px) {
.emotion-1 {
background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test-tablet.png);
- gap: 104px;
+ -webkit-box-pack: justify;
+ -webkit-justify-content: space-between;
+ justify-content: space-between;
}
}
@@ -46,6 +48,9 @@ exports[`Banner component renders with a banner image 1`] = `
background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test-mobile.png);
gap: 28px;
font-size: 11px;
+ -webkit-box-pack: justify;
+ -webkit-justify-content: space-between;
+ justify-content: space-between;
}
}
@@ -99,7 +104,9 @@ exports[`Banner component renders with custom text 1`] = `
@media only screen and (max-width: 767px) {
.emotion-1 {
background-image: url();
- gap: 104px;
+ -webkit-box-pack: justify;
+ -webkit-justify-content: space-between;
+ justify-content: space-between;
}
}
@@ -108,6 +115,9 @@ exports[`Banner component renders with custom text 1`] = `
background-image: url();
gap: 28px;
font-size: 11px;
+ -webkit-box-pack: justify;
+ -webkit-justify-content: space-between;
+ justify-content: space-between;
}
}
@@ -118,6 +128,18 @@ exports[`Banner component renders with custom text 1`] = `
max-height: 40px;
}
+@media only screen and (max-width: 767px) {
+ .emotion-2 {
+ max-width: 543px;
+ }
+}
+
+@media only screen and (max-width: 480px) {
+ .emotion-2 {
+ max-width: 200px;
+ }
+}
+
.emotion-3 {
display: grid;
justify-items: center;
From 0fa177a6d55ce8e17b9318bf8c24f71cd3afbae4 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Thu, 5 Dec 2024 10:47:24 -0500
Subject: [PATCH 19/23] Move types
---
src/components/Banner/SiteBanner/index.tsx | 2 +-
src/{ => components/Banner/SiteBanner}/types.ts | 0
src/components/Header/header-context.tsx | 2 +-
3 files changed, 2 insertions(+), 2 deletions(-)
rename src/{ => components/Banner/SiteBanner}/types.ts (100%)
diff --git a/src/components/Banner/SiteBanner/index.tsx b/src/components/Banner/SiteBanner/index.tsx
index 90e14c281..e690d6320 100644
--- a/src/components/Banner/SiteBanner/index.tsx
+++ b/src/components/Banner/SiteBanner/index.tsx
@@ -8,7 +8,7 @@ import { theme } from '../../../theme/docsTheme';
import { isBrowser } from '../../../utils/is-browser';
import { normalizePath } from '../../../utils/normalize-path';
import { fetchBanner } from '../../../utils/realm';
-import { SiteBannerContent } from '../../../types';
+import { SiteBannerContent } from './types';
import BrandingShape from './BrandingShape';
const getBannerSource = (src?: string) => {
diff --git a/src/types.ts b/src/components/Banner/SiteBanner/types.ts
similarity index 100%
rename from src/types.ts
rename to src/components/Banner/SiteBanner/types.ts
diff --git a/src/components/Header/header-context.tsx b/src/components/Header/header-context.tsx
index f6e0c07a9..e195779d4 100644
--- a/src/components/Header/header-context.tsx
+++ b/src/components/Header/header-context.tsx
@@ -1,6 +1,6 @@
import React, { createContext, PropsWithChildren, useEffect, useState } from 'react';
import { theme } from '../../theme/docsTheme';
-import { SiteBannerContent } from '../../types';
+import { SiteBannerContent } from '../Banner/SiteBanner/types';
interface HeaderContextType {
bannerContent: SiteBannerContent | null;
From bb3e67bd74e648a296521c5793002267449794d0 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Thu, 5 Dec 2024 11:01:43 -0500
Subject: [PATCH 20/23] Font theme
---
src/components/Banner/SiteBanner/index.tsx | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/src/components/Banner/SiteBanner/index.tsx b/src/components/Banner/SiteBanner/index.tsx
index e690d6320..1a79a30ec 100644
--- a/src/components/Banner/SiteBanner/index.tsx
+++ b/src/components/Banner/SiteBanner/index.tsx
@@ -37,7 +37,7 @@ const bannerContentStyle = (bannerContent: Partial) => css`
justify-content: center;
gap: 20px;
padding: 0 11px;
- font-size: 13px;
+ font-size: ${theme.fontSize.small};
line-height: 20px;
@media ${theme.screenSize.upToMedium} {
@@ -47,9 +47,7 @@ const bannerContentStyle = (bannerContent: Partial) => css`
@media ${theme.screenSize.upToSmall} {
background-image: url(${getBannerSource(bannerContent.mobileImgPath)});
- gap: 28px;
- font-size: 11px;
- justify-content: space-between;
+ font-size: ${theme.fontSize.xsmall};
}
`;
@@ -88,7 +86,7 @@ const pillStyle = css`
color: ${palette.green.dark3};
font-weight: 600;
line-height: 16px;
- font-size: 12px;
+ font-size: ${theme.fontSize.tiny};
background-color: ${palette.green.base};
border: 1px solid ${palette.green.dark2};
border-radius: 6px;
From d3c4fe09afdc63d876f96f48898e45d5a312efd7 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Thu, 5 Dec 2024 11:06:42 -0500
Subject: [PATCH 21/23] Snapshot
---
tests/unit/__snapshots__/SiteBanner.test.tsx.snap | 8 --------
1 file changed, 8 deletions(-)
diff --git a/tests/unit/__snapshots__/SiteBanner.test.tsx.snap b/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
index bf0acbbe9..5ed936449 100644
--- a/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
+++ b/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
@@ -46,11 +46,7 @@ exports[`Banner component renders with a banner image 1`] = `
@media only screen and (max-width: 480px) {
.emotion-1 {
background-image: url(https://snooty-koueq.mongodbstitch.com/banners/test-mobile.png);
- gap: 28px;
font-size: 11px;
- -webkit-box-pack: justify;
- -webkit-justify-content: space-between;
- justify-content: space-between;
}
}
@@ -113,11 +109,7 @@ exports[`Banner component renders with custom text 1`] = `
@media only screen and (max-width: 480px) {
.emotion-1 {
background-image: url();
- gap: 28px;
font-size: 11px;
- -webkit-box-pack: justify;
- -webkit-justify-content: space-between;
- justify-content: space-between;
}
}
From 2fd85b5eb1925c3f2b3e9b64c08c630d5a265be0 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Thu, 5 Dec 2024 11:34:42 -0500
Subject: [PATCH 22/23] Remove max-width
---
src/components/Banner/SiteBanner/index.tsx | 8 --------
1 file changed, 8 deletions(-)
diff --git a/src/components/Banner/SiteBanner/index.tsx b/src/components/Banner/SiteBanner/index.tsx
index 1a79a30ec..d975200f4 100644
--- a/src/components/Banner/SiteBanner/index.tsx
+++ b/src/components/Banner/SiteBanner/index.tsx
@@ -54,14 +54,6 @@ const bannerContentStyle = (bannerContent: Partial) => css`
const bannerTextStyle = css`
align-self: center;
max-height: 40px;
-
- @media ${theme.screenSize.upToMedium} {
- max-width: 543px;
- }
-
- @media ${theme.screenSize.upToSmall} {
- max-width: 200px;
- }
`;
const pillContainer = css`
From ddc4f4d7a78ff3856059c35724c94a271812c742 Mon Sep 17 00:00:00 2001
From: rayangler <27821750+rayangler@users.noreply.github.com>
Date: Thu, 5 Dec 2024 11:39:03 -0500
Subject: [PATCH 23/23] Snap
---
tests/unit/__snapshots__/SiteBanner.test.tsx.snap | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/tests/unit/__snapshots__/SiteBanner.test.tsx.snap b/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
index 5ed936449..c967410d9 100644
--- a/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
+++ b/tests/unit/__snapshots__/SiteBanner.test.tsx.snap
@@ -120,18 +120,6 @@ exports[`Banner component renders with custom text 1`] = `
max-height: 40px;
}
-@media only screen and (max-width: 767px) {
- .emotion-2 {
- max-width: 543px;
- }
-}
-
-@media only screen and (max-width: 480px) {
- .emotion-2 {
- max-width: 200px;
- }
-}
-
.emotion-3 {
display: grid;
justify-items: center;