-
Notifications
You must be signed in to change notification settings - Fork 125
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Themes] Console - Make storefront password storage sticky #4295
Conversation
Thanks for your contribution! Depending on what you are working on, you may want to request a review from a Shopify team:
|
Coverage report
Test suite run success1804 tests passing in 822 suites. Report generated by 🧪jest coverage report action from 528b38d |
Differences in type declarationsWe detected differences in the type declarations generated by Typescript for this branch compared to the baseline ('main' branch). Please, review them to ensure they are backward-compatible. Here are some important things to keep in mind:
New type declarationsWe found no new type declarations in this PR Existing type declarationspackages/cli-kit/dist/public/node/http.d.ts@@ -7,7 +7,7 @@ export { FetchError, Request } from 'node-fetch';
* @returns A FormData object.
*/
export declare function formData(): FormData;
-export type Response = ReturnType<typeof nodeFetch>;
+export type Response = Awaited<ReturnType<typeof nodeFetch>>;
/**
* An interface that abstracts way node-fetch. When Node has built-in
* support for "fetch" in the standard library, we can drop the node-fetch
@@ -20,7 +20,7 @@ export type Response = ReturnType<typeof nodeFetch>;
* @param init - An object containing any custom settings that you want to apply to the request.
* @returns A promise that resolves with the response.
*/
-export declare function fetch(url: RequestInfo, init?: RequestInit): Response;
+export declare function fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
/**
* A fetch function to use with Shopify services. The function ensures the right
* TLS configuragion is used based on the environment in which the service is running
@@ -30,7 +30,7 @@ export declare function fetch(url: RequestInfo, init?: RequestInit): Response;
* @param init - An object containing any custom settings that you want to apply to the request.
* @returns A promise that resolves with the response.
*/
-export declare function shopifyFetch(url: RequestInfo, init?: RequestInit): Response;
+export declare function shopifyFetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
/**
* Download a file from a URL to a local path.
*
packages/cli-kit/dist/public/node/ui.d.ts@@ -7,7 +7,7 @@ import { AlertOptions } from '../../private/node/ui/alert.js';
import { CustomSection } from '../../private/node/ui/components/Alert.js';
import ScalarDict from '../../private/node/ui/components/Table/ScalarDict.js';
import { TableColumn, TableProps } from '../../private/node/ui/components/Table/Table.js';
-import { Token, InlineToken, LinkToken, ListToken, TokenItem } from '../../private/node/ui/components/TokenizedText.js';
+import { InlineToken, LinkToken, ListToken, TokenItem } from '../../private/node/ui/components/TokenizedText.js';
import { DangerousConfirmationPromptProps } from '../../private/node/ui/components/DangerousConfirmationPrompt.js';
import { SelectPromptProps } from '../../private/node/ui/components/SelectPrompt.js';
import { Task } from '../../private/node/ui/components/Tasks.js';
@@ -394,4 +394,4 @@ interface IsTTYOptions {
export declare function isTTY({ stdin, uiDebugOptions }?: IsTTYOptions): boolean;
export type Key = InkKey;
export type InfoMessage = InfoMessageProps['message'];
-export { Token, Task, TokenItem, InlineToken, LinkToken, TableColumn, InfoTableSection, ListToken, render, handleCtrlC };
\ No newline at end of file
+export { Task, TokenItem, InlineToken, LinkToken, TableColumn, InfoTableSection, ListToken, render, handleCtrlC };
\ No newline at end of file
packages/cli-kit/dist/public/node/api/business-platform.d.ts@@ -24,20 +24,10 @@ export declare function businessPlatformRequestDoc<TResult, TVariables extends V
*
* @param query - GraphQL query to execute.
* @param token - Business Platform token.
- * @param organizationId - Organization ID as a numeric (non-GID) value.
- * @param variables - GraphQL variables to pass to the query.
- * @returns The response of the query of generic type <T>.
- */
-export declare function businessPlatformOrganizationsRequest<T>(query: string, token: string, organizationId: string, variables?: GraphQLVariables): Promise<T>;
-/**
- * Executes a GraphQL query against the Business Platform Organizations API. Uses typed documents.
- *
- * @param query - GraphQL query to execute.
- * @param token - Business Platform token.
* @param organizationId - Organization ID as a numeric value.
* @param variables - GraphQL variables to pass to the query.
* @returns The response of the query of generic type <T>.
*/
-export declare function businessPlatformOrganizationsRequestDoc<TResult>(query: TypedDocumentNode<TResult, GraphQLVariables> | TypedDocumentNode<TResult, Exact<{
+export declare function businessPlatformOrganizationsRequest<TResult>(query: TypedDocumentNode<TResult, GraphQLVariables> | TypedDocumentNode<TResult, Exact<{
[key: string]: never;
}>>, token: string, organizationId: string, variables?: GraphQLVariables): Promise<TResult>;
\ No newline at end of file
|
We detected some changes at either packages/*/src or packages/cli-kit/assets/cli-ruby/** and there are no updates in the .changeset. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you, @jamesmengo! Great stuff 🔥🚀 LGTM and works as expected as well :)
WHY are these changes introduced?
WHAT is this pull request doing?
This includes
--store-password flag
asdf.mp4
How to test your changes?
Basic Usage:
Override Capability:
3) Override the stored password by using the
--store-password
flag with an incorrect value4) You should be prompted to input another password again
Incorrect Password Handling:
5) Provide incorrect password
6) Terminate the session
ctrl + c
7) Run the command again and verify that you're prompted to provide the password
Notes
p build
Measuring impact
How do we know this change was effective? Please choose one:
Checklist