Skip to content

Commit f58edc4

Browse files
committed
Hack BP mocks to app dev against manually created dev store
1 parent ba99da8 commit f58edc4

File tree

3 files changed

+51
-17
lines changed

3 files changed

+51
-17
lines changed

packages/app/src/cli/services/dev/fetch.ts

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,9 +123,18 @@ export async function fetchStore(
123123
storeFqdn: string,
124124
developerPlatformClient: DeveloperPlatformClient,
125125
): Promise<OrganizationStore> {
126-
const store = await developerPlatformClient.storeByDomain(org.id, storeFqdn)
126+
return {
127+
shopId: '1001',
128+
shopName: 'bananaaa',
129+
shopDomain: 'bananaaa-2.my.shop.dev',
130+
provisionable: true,
131+
transferDisabled: true,
132+
convertableToPartnerTest: true,
133+
} as any as OrganizationStore
127134

128-
if (!store) throw new AbortError(`Could not find Store for domain ${storeFqdn} in Organization ${org.businessName}.`)
135+
// const store = await developerPlatformClient.storeByDomain(org.id, storeFqdn)
129136

130-
return store
137+
// if (!store) throw new AbortError(`Could not find Store for domain ${storeFqdn} in Organization ${org.businessName}.`)
138+
139+
// return store
131140
}

packages/app/src/cli/services/store-context.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ export async function storeContext({
6464
}
6565

6666
// Ensure that the user is able to login to the store and install apps
67-
await developerPlatformClient.ensureUserAccessToStore(organization.id, selectedStore)
67+
// await developerPlatformClient.ensureUserAccessToStore(organization.id, selectedStore)
6868

6969
return selectedStore
7070
}

packages/app/src/cli/utilities/developer-platform-client/app-management-client.ts

Lines changed: 38 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -551,23 +551,48 @@ export class AppManagementClient implements DeveloperPlatformClient {
551551
// partners-client and app-management-client. Since we need transferDisabled and convertableToPartnerTest values
552552
// from the Partners OrganizationStore schema, we will return this type for now
553553
async devStoresForOrg(orgId: string, searchTerm?: string): Promise<Paginateable<{stores: OrganizationStore[]}>> {
554-
const storesResult = await this.businessPlatformOrganizationsRequest({
555-
query: ListAppDevStores,
556-
organizationId: String(numberFromGid(orgId)),
557-
variables: {searchTerm},
558-
})
559-
const organization = storesResult.organization
554+
// MOCKED RESPONSE: Hardcoded shop with ID 1001
555+
const mockShopArray: ShopNode[] = [
556+
{
557+
id: '1001',
558+
externalId: 'gid://shopify/Shop/1001',
559+
name: 'bananaaa',
560+
storeType: 'app_development' as any,
561+
primaryDomain: 'bananaaa-2.my.shop.dev',
562+
shortName: 'bananaaa',
563+
url: 'https://bananaaa-2.my.shop.dev',
564+
}
565+
]
566+
// const shopArray = organization.accessibleShops?.edges.map((value) => value.node) ?? []
567+
// const provisionable = isStoreProvisionable(organization.currentUser?.organizationPermissions ?? [])
560568

561-
if (!organization) {
562-
throw new AbortError(`No organization found`)
563-
}
569+
const provisionable = true // Assuming the user has permission to provision
564570

565-
const shopArray = organization.accessibleShops?.edges.map((value) => value.node) ?? []
566-
const provisionable = isStoreProvisionable(organization.currentUser?.organizationPermissions ?? [])
567571
return {
568-
stores: mapBusinessPlatformStoresToOrganizationStores(shopArray, provisionable),
569-
hasMorePages: storesResult.organization?.accessibleShops?.pageInfo.hasNextPage ?? false,
572+
// stores: mapBusinessPlatformStoresToOrganizationStores(shopArray, provisionable),
573+
// hasMorePages: storesResult.organization?.accessibleShops?.pageInfo.hasNextPage ?? false,
574+
stores: mapBusinessPlatformStoresToOrganizationStores(mockShopArray, provisionable),
575+
hasMorePages: false,
570576
}
577+
578+
// ORIGINAL CODE (commented out for reference):
579+
// const storesResult = await this.businessPlatformOrganizationsRequest({
580+
// query: ListAppDevStores,
581+
// organizationId: String(numberFromGid(orgId)),
582+
// variables: {searchTerm},
583+
// })
584+
// const organization = storesResult.organization
585+
//
586+
// if (!organization) {
587+
// throw new AbortError(`No organization found`)
588+
// }
589+
//
590+
// const shopArray = organization.accessibleShops?.edges.map((value) => value.node) ?? []
591+
// const provisionable = isStoreProvisionable(organization.currentUser?.organizationPermissions ?? [])
592+
// return {
593+
// stores: mapBusinessPlatformStoresToOrganizationStores(shopArray, provisionable),
594+
// hasMorePages: storesResult.organization?.accessibleShops?.pageInfo.hasNextPage ?? false,
595+
// }
571596
}
572597

573598
async appExtensionRegistrations(

0 commit comments

Comments
 (0)