Merge pull request #23880 from Ali-Dalal/scaffolder-login-fix

fix: don't show login prompt if token is defined in state
This commit is contained in:
Ben Lambert
2024-04-05 17:42:07 +02:00
committed by GitHub
6 changed files with 103 additions and 7 deletions
+3 -1
View File
@@ -455,7 +455,9 @@ export interface ScaffolderUseTemplateSecrets {
// @public
export const SecretsContextProvider: (
props: PropsWithChildren<{}>,
props: PropsWithChildren<{
initialSecrets?: Record<string, string>;
}>,
) => React_2.JSX.Element;
// @public
@@ -35,4 +35,20 @@ describe('SecretsContext', () => {
expect(result.current.hook?.secrets.foo).toEqual('bar');
});
it('should create SecretsContextProvider with initial secrets', async () => {
const { result } = renderHook(
() => ({
hook: useTemplateSecrets(),
}),
{
wrapper: ({ children }: React.PropsWithChildren<{}>) => (
<SecretsContextProvider initialSecrets={{ foo: 'bar' }}>
{children}
</SecretsContextProvider>
),
},
);
expect(result.current.hook?.secrets.foo).toEqual('bar');
});
});
@@ -43,8 +43,13 @@ const SecretsContext = createVersionedContext<{
* The Context Provider that holds the state for the secrets.
* @public
*/
export const SecretsContextProvider = (props: PropsWithChildren<{}>) => {
const [secrets, setSecrets] = useState<Record<string, string>>({});
export const SecretsContextProvider = (
props: PropsWithChildren<{ initialSecrets?: Record<string, string> }>,
) => {
const { initialSecrets = {} } = props;
const [secrets, setSecrets] = useState<Record<string, string>>({
...initialSecrets,
});
return (
<SecretsContext.Provider