Skip to content

Commit 321a339

Browse files
committed
Merge remote-tracking branch 'origin/main' into 1.31-releases
2 parents e25c375 + ef5cec7 commit 321a339

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+7825
-426
lines changed

THIRD-PARTY-NOTICES.md

Lines changed: 7024 additions & 221 deletions
Large diffs are not rendered by default.

package-lock.json

Lines changed: 143 additions & 72 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import React from 'react';
2+
import LeafyGreenToggle from '@leafygreen-ui/toggle';
3+
4+
import { Theme, useTheme } from '../hooks/use-theme';
5+
6+
function Toggle(
7+
props: React.ComponentProps<typeof LeafyGreenToggle>
8+
): ReturnType<typeof LeafyGreenToggle> {
9+
const theme = useTheme();
10+
11+
return <LeafyGreenToggle darkMode={theme?.theme === Theme.Dark} {...props} />;
12+
}
13+
14+
export { Toggle };
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
import React, { createContext, useContext } from 'react';
2+
3+
export enum Theme {
4+
Light = 'Light',
5+
Dark = 'Dark',
6+
}
7+
8+
type ThemeState = {
9+
theme: Theme;
10+
};
11+
12+
const ThemeContext = createContext<ThemeState>({
13+
theme: Theme.Light,
14+
});
15+
16+
const ThemeProvider = ({
17+
children,
18+
theme,
19+
}: {
20+
children: React.ReactChildren;
21+
theme: ThemeState;
22+
}): React.ReactElement => {
23+
return (
24+
<ThemeContext.Provider value={theme}>{children}</ThemeContext.Provider>
25+
);
26+
};
27+
28+
function useTheme(): ThemeState {
29+
return useContext(ThemeContext);
30+
}
31+
32+
export { useTheme, ThemeProvider };

packages/compass-components/src/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,8 @@ export {
6161
default as Toast,
6262
Variant as ToastVariant,
6363
} from '@leafygreen-ui/toast';
64-
export { default as Toggle } from '@leafygreen-ui/toggle';
64+
export { Toggle } from './components/toggle';
65+
6566
export { breakpoints, spacing } from '@leafygreen-ui/tokens';
6667
export { Tooltip } from './components/tooltip';
6768
export {
@@ -92,6 +93,7 @@ export {
9293
useHoverState,
9394
FocusState,
9495
} from './hooks/use-focus-hover';
96+
export { useTheme, Theme, ThemeProvider } from './hooks/use-theme';
9597
export {
9698
ContentWithFallback,
9799
FadeInPlaceholder,

packages/compass-e2e-tests/helpers/commands/set-ace-value.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,12 @@ export async function setAceValue(
3939
// For whatever reason it is shift-insert and not cmd-v ¯\_(ツ)_/¯
4040
// https://twitter.com/webdriverio/status/812034986341789696?lang=en
4141
// https://bugs.chromium.org/p/chromedriver/issues/detail?id=30
42-
await browser.keys(['Shift', 'Insert']);
43-
await browser.keys(['Shift']); // shift a second time to release it
42+
// https://support.google.com/chrome/thread/15776362/is-shift-insert-to-paste-disabled-when-copying-from-outside-of-chrome?hl=en
43+
if (process.platform === 'darwin') {
44+
await browser.keys(['Shift', 'Insert']);
45+
await browser.keys(['Shift']); // shift a second time to release it
46+
} else {
47+
await browser.keys(['Control', 'v']);
48+
await browser.keys(['Control']); // control a second time to release it
49+
}
4450
}

packages/compass-e2e-tests/helpers/compass.ts

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,7 @@ async function startCompass(
308308

309309
// https://webdriver.io/docs/options/#webdriverio
310310
const wdioOptions = {
311-
waitforTimeout: 5000, // default is 3000ms
311+
waitforTimeout: 10000, // default is 3000ms
312312
waitforInterval: 100, // default is 500ms
313313
};
314314

@@ -554,12 +554,20 @@ export async function beforeTests(): Promise<Compass> {
554554
return compass;
555555
}
556556

557-
export async function afterTests(compass?: Compass): Promise<void> {
557+
export async function afterTests(
558+
compass?: Compass,
559+
test?: Mocha.Hook | Mocha.Test
560+
): Promise<void> {
558561
if (!compass) {
559-
console.log('compas is falsey in afterTests');
560562
return;
561563
}
562564

565+
if (test && test.state === undefined) {
566+
// if there's no state, then it is probably because the before() hook failed
567+
const filename = screenshotPathName(`${test.fullTitle()}-hook`);
568+
await compass.capturePage(filename);
569+
}
570+
563571
try {
564572
await compass.stop();
565573
} catch (err) {
@@ -595,7 +603,7 @@ export async function afterTest(
595603
compass: Compass,
596604
test?: Mocha.Hook | Mocha.Test
597605
): Promise<void> {
598-
if (test && test.state == 'failed') {
606+
if (test && test.state === 'failed') {
599607
await compass.capturePage(screenshotPathName(test.fullTitle()));
600608
}
601609
}

packages/compass-e2e-tests/tests/collection-aggregations-tab.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ describe('Collection aggregations tab', function () {
2121
});
2222

2323
after(async function () {
24-
await afterTests(compass);
24+
await afterTests(compass, this.currentTest);
2525
});
2626

2727
afterEach(async function () {

packages/compass-e2e-tests/tests/collection-documents-tab.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ describe('Collection documents tab', function () {
2424
});
2525

2626
after(async function () {
27-
await afterTests(compass);
27+
await afterTests(compass, this.currentTest);
2828
await telemetry.stop();
2929
});
3030

packages/compass-e2e-tests/tests/collection-explain-plan-tab.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ describe('Collection explain plan tab', function () {
2020
});
2121

2222
after(async function () {
23-
await afterTests(compass);
23+
await afterTests(compass, this.currentTest);
2424
});
2525

2626
afterEach(async function () {

0 commit comments

Comments
 (0)