Add removing metadata in CRM app (#507)
* Add dev app-sdk and rewrite undefined metadata to removing it * Implement metadata manager delete method * Update app-sdk to 0.39.1 in all packages * Update swift-boxes-drop.md
This commit is contained in:
parent
8e0b08523b
commit
6e69f4f9f0
24 changed files with 167 additions and 114 deletions
16
.changeset/happy-rocks-draw.md
Normal file
16
.changeset/happy-rocks-draw.md
Normal file
|
@ -0,0 +1,16 @@
|
|||
---
|
||||
"saleor-app-emails-and-messages": patch
|
||||
"saleor-app-data-importer": patch
|
||||
"saleor-app-products-feed": patch
|
||||
"saleor-app-monitoring": patch
|
||||
"@saleor/apps-shared": patch
|
||||
"saleor-app-invoices": patch
|
||||
"saleor-app-klaviyo": patch
|
||||
"saleor-app-search": patch
|
||||
"saleor-app-slack": patch
|
||||
"saleor-app-taxes": patch
|
||||
"saleor-app-cms": patch
|
||||
"saleor-app-crm": patch
|
||||
---
|
||||
|
||||
Update app-sdk to 0.39.1
|
5
.changeset/swift-boxes-drop.md
Normal file
5
.changeset/swift-boxes-drop.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
"saleor-app-crm": minor
|
||||
---
|
||||
|
||||
Implemented app-sdk@0.39.1 and used its MetadataManager's "delete" method. Now, app will remove config from metadata using "removePrivateMetadata" mutation, instead of setting it to undefined. Previous behaviour was caused by app-sdk not having "delete" method yet
|
|
@ -21,7 +21,7 @@
|
|||
"@material-ui/core": "^4.12.4",
|
||||
"@material-ui/icons": "^4.11.3",
|
||||
"@material-ui/lab": "4.0.0-alpha.61",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/macaw-ui": "^0.7.2",
|
||||
"@sentry/nextjs": "^7.43.0",
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
},
|
||||
"dependencies": {
|
||||
"@mailchimp/mailchimp_marketing": "^3.0.80",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/macaw-ui": "0.8.0-pre.84",
|
||||
"@sentry/nextjs": "^7.52.1",
|
||||
|
@ -67,6 +67,6 @@
|
|||
"eslint-config-saleor": "workspace:*",
|
||||
"node-mocks-http": "^1.12.2",
|
||||
"prettier": "^2.8.2",
|
||||
"typescript": "4.9.4"
|
||||
"typescript": "5.0.4"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@ import { Client, gql } from "urql";
|
|||
import {
|
||||
FetchAppDetailsDocument,
|
||||
FetchAppDetailsQuery,
|
||||
RemovePrivateMetadataDocument,
|
||||
UpdateAppMetadataDocument,
|
||||
} from "../../generated/graphql";
|
||||
|
||||
|
@ -35,6 +36,16 @@ gql`
|
|||
}
|
||||
`;
|
||||
|
||||
gql`
|
||||
mutation RemovePrivateMetadata($id: ID!, $keys: [String!]!) {
|
||||
deletePrivateMetadata(id: $id, keys: $keys) {
|
||||
errors {
|
||||
message
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
|
||||
export async function fetchAllMetadata(client: Pick<Client, "query">): Promise<MetadataEntry[]> {
|
||||
const { error, data } = await client
|
||||
.query<FetchAppDetailsQuery>(FetchAppDetailsDocument, {})
|
||||
|
@ -88,7 +99,8 @@ export async function mutateMetadata(
|
|||
}
|
||||
|
||||
export const createSettingsManager = (
|
||||
client: Pick<Client, "query" | "mutation">
|
||||
client: Pick<Client, "query" | "mutation">,
|
||||
appId: string
|
||||
): SettingsManager => {
|
||||
/*
|
||||
* EncryptedMetadataManager gives you interface to manipulate metadata and cache values in memory.
|
||||
|
@ -100,5 +112,11 @@ export const createSettingsManager = (
|
|||
encryptionKey: process.env.SECRET_KEY!,
|
||||
fetchMetadata: () => fetchAllMetadata(client),
|
||||
mutateMetadata: (metadata) => mutateMetadata(client, metadata),
|
||||
async deleteMetadata(keys) {
|
||||
await client.mutation(RemovePrivateMetadataDocument, {
|
||||
id: appId,
|
||||
keys: keys,
|
||||
});
|
||||
},
|
||||
});
|
||||
};
|
||||
|
|
|
@ -28,7 +28,7 @@ const BulkAddContactsSchema = z.object({
|
|||
|
||||
const mailchimpAudienceRouter = router({
|
||||
getLists: protectedClientProcedure.query(async ({ ctx }) => {
|
||||
const config = await new MailchimpConfigSettingsManager(ctx.apiClient).getConfig();
|
||||
const config = await new MailchimpConfigSettingsManager(ctx.apiClient, ctx.appId!).getConfig();
|
||||
|
||||
/**
|
||||
* TODO extract mailchimp API readiness shared class
|
||||
|
@ -70,7 +70,10 @@ const mailchimpAudienceRouter = router({
|
|||
saleorApiUrl: ctx.saleorApiUrl,
|
||||
});
|
||||
|
||||
const config = await new MailchimpConfigSettingsManager(ctx.apiClient).getConfig();
|
||||
const config = await new MailchimpConfigSettingsManager(
|
||||
ctx.apiClient,
|
||||
ctx.appId!
|
||||
).getConfig();
|
||||
|
||||
logger.debug("Fetched config from metadata");
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@ describe("MailchimpConfigSettingsManagerV1", () => {
|
|||
let mockSettingsManager: SettingsManager = {
|
||||
set: vi.fn(),
|
||||
get: vi.fn(),
|
||||
delete: vi.fn(),
|
||||
};
|
||||
|
||||
let service: MailchimpConfigSettingsManagerV1;
|
||||
|
@ -15,9 +16,10 @@ describe("MailchimpConfigSettingsManagerV1", () => {
|
|||
mockSettingsManager = {
|
||||
set: vi.fn(),
|
||||
get: vi.fn(),
|
||||
delete: vi.fn(),
|
||||
};
|
||||
|
||||
service = new MailchimpConfigSettingsManagerV1(null as unknown as Client, () => {
|
||||
service = new MailchimpConfigSettingsManagerV1(null as unknown as Client, "appID", () => {
|
||||
return mockSettingsManager;
|
||||
});
|
||||
});
|
||||
|
@ -107,14 +109,9 @@ describe("MailchimpConfigSettingsManagerV1", () => {
|
|||
await expect(service.getConfig()).resolves.toBeNull();
|
||||
});
|
||||
|
||||
it('.removeConfig method sets value to be "undefined" string', async () => {
|
||||
it(".removeConfig method calls metadata manager DELETE method with a key", async () => {
|
||||
await service.removeConfig();
|
||||
|
||||
return expect(mockSettingsManager.set).toHaveBeenCalledWith(
|
||||
expect.objectContaining({
|
||||
key: expect.any(String),
|
||||
value: "undefined",
|
||||
})
|
||||
);
|
||||
return expect(mockSettingsManager.delete).toHaveBeenCalledWith("mailchimp_config_v1");
|
||||
});
|
||||
});
|
||||
|
|
|
@ -34,7 +34,6 @@ export interface IMailchimpConfigSettingsManagerV1 {
|
|||
* V1 config. In case of changing config, create another instance and perform migration
|
||||
*
|
||||
* todo save domain?
|
||||
* todo add test
|
||||
*/
|
||||
export class MailchimpConfigSettingsManagerV1 implements IMailchimpConfigSettingsManagerV1 {
|
||||
private settingsManager: SettingsManager;
|
||||
|
@ -45,15 +44,12 @@ export class MailchimpConfigSettingsManagerV1 implements IMailchimpConfigSetting
|
|||
|
||||
constructor(
|
||||
private apiClient: Pick<Client, "query" | "mutation">,
|
||||
private appId: string,
|
||||
metadataManagerFactory = createSettingsManager
|
||||
) {
|
||||
this.settingsManager = metadataManagerFactory(apiClient);
|
||||
this.settingsManager = metadataManagerFactory(apiClient, appId);
|
||||
}
|
||||
|
||||
private parseEmptyResponse = (value?: string) => {
|
||||
return value === "undefined" ? undefined : value;
|
||||
};
|
||||
|
||||
setConfig(config: z.infer<typeof ConfigV1>) {
|
||||
const configSchema = MetadataSchemaV1.parse({
|
||||
config,
|
||||
|
@ -76,18 +72,13 @@ export class MailchimpConfigSettingsManagerV1 implements IMailchimpConfigSetting
|
|||
|
||||
async getConfig(): Promise<z.infer<typeof ConfigV1> | null> {
|
||||
this.logger.debug(`Will fetch metadata key: ${this.metadataKey}`);
|
||||
const rawMetadata = await this.settingsManager
|
||||
.get(this.metadataKey)
|
||||
.then(this.parseEmptyResponse);
|
||||
|
||||
const rawMetadata = await this.settingsManager.get(this.metadataKey);
|
||||
|
||||
this.logger.debug({ rawMetadata }, "Received raw metadata");
|
||||
|
||||
/**
|
||||
* Check for "undefined" string because after config is deleted, its actually set to "undefined" instead removing
|
||||
* TODO remove config instead setting it to "undefined"
|
||||
*/
|
||||
if (!rawMetadata) {
|
||||
this.logger.debug("Raw metadata is nullable");
|
||||
this.logger.debug("Fetched metadata does not exist, will return null");
|
||||
|
||||
return null;
|
||||
}
|
||||
|
@ -103,14 +94,14 @@ export class MailchimpConfigSettingsManagerV1 implements IMailchimpConfigSetting
|
|||
|
||||
return parsedMetadata.config;
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
this.logger.error(e);
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
async removeConfig() {
|
||||
// todo = implement settingsManager.delete
|
||||
return this.settingsManager.set({ key: this.metadataKey, value: "undefined" });
|
||||
return this.settingsManager.delete(this.metadataKey);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -37,7 +37,7 @@ const mailchimpConfigRouter = router({
|
|||
|
||||
logger.info("Saving Mailchimp token");
|
||||
|
||||
return new MailchimpConfigSettingsManager(ctx.apiClient).setConfig(input);
|
||||
return new MailchimpConfigSettingsManager(ctx.apiClient, ctx.appId!).setConfig(input);
|
||||
}),
|
||||
setWebhookConfig: protectedClientProcedure
|
||||
.meta({ requiredClientPermissions: ["MANAGE_APPS"] })
|
||||
|
@ -50,7 +50,7 @@ const mailchimpConfigRouter = router({
|
|||
|
||||
logger.info("Saving Mailchimp token");
|
||||
|
||||
const mm = new MailchimpConfigSettingsManager(ctx.apiClient);
|
||||
const mm = new MailchimpConfigSettingsManager(ctx.apiClient, ctx.appId!);
|
||||
|
||||
const currentConfig = await mm.getConfig();
|
||||
|
||||
|
@ -69,7 +69,10 @@ const mailchimpConfigRouter = router({
|
|||
saleorApiUrl: ctx.saleorApiUrl,
|
||||
});
|
||||
|
||||
const config = await new MailchimpConfigSettingsManager(ctx.apiClient).getConfig();
|
||||
const config = await new MailchimpConfigSettingsManager(
|
||||
ctx.apiClient,
|
||||
ctx.appId!
|
||||
).getConfig();
|
||||
|
||||
logger.debug(config, "Received config from metadata");
|
||||
|
||||
|
@ -110,7 +113,7 @@ const mailchimpConfigRouter = router({
|
|||
removeToken: protectedClientProcedure
|
||||
.meta({ requiredClientPermissions: ["MANAGE_APPS"] })
|
||||
.mutation(({ ctx }) => {
|
||||
return new MailchimpConfigSettingsManager(ctx.apiClient).removeConfig();
|
||||
return new MailchimpConfigSettingsManager(ctx.apiClient, ctx.appId!).removeConfig();
|
||||
}),
|
||||
});
|
||||
|
||||
|
|
|
@ -44,7 +44,7 @@ export const customerCreatedHandler: NextWebhookApiHandler<CustomerCreatedPayloa
|
|||
Promise.resolve({ token: authData.token })
|
||||
);
|
||||
|
||||
const settingsManager = new MailchimpConfigSettingsManager(client);
|
||||
const settingsManager = new MailchimpConfigSettingsManager(client, authData.appId);
|
||||
|
||||
const config = await settingsManager.getConfig();
|
||||
|
||||
|
|
|
@ -45,7 +45,7 @@ const handler: NextWebhookApiHandler<CustomerUpdatedPayloadFragment> = async (
|
|||
Promise.resolve({ token: authData.token })
|
||||
);
|
||||
|
||||
const settingsManager = new MailchimpConfigSettingsManager(client);
|
||||
const settingsManager = new MailchimpConfigSettingsManager(client, authData.appId);
|
||||
|
||||
const config = await settingsManager.getConfig();
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
"@material-ui/core": "^4.12.4",
|
||||
"@material-ui/icons": "^4.11.3",
|
||||
"@material-ui/lab": "4.0.0-alpha.61",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/macaw-ui": "^0.7.2",
|
||||
"@sentry/nextjs": "^7.39.0",
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
"@material-ui/icons": "^4.11.3",
|
||||
"@material-ui/lab": "4.0.0-alpha.61",
|
||||
"@monaco-editor/react": "^4.4.6",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/macaw-ui": "^0.7.2",
|
||||
"@sendgrid/client": "^7.7.0",
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
},
|
||||
"dependencies": {
|
||||
"@hookform/resolvers": "^3.1.0",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/macaw-ui": "0.8.0-pre.84",
|
||||
"@sentry/nextjs": "^7.36.0",
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
"@material-ui/core": "^4.12.4",
|
||||
"@material-ui/icons": "^4.11.3",
|
||||
"@material-ui/lab": "4.0.0-alpha.61",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/macaw-ui": "^0.7.2",
|
||||
"@sentry/nextjs": "^7.36.0",
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
"@material-ui/core": "^4.12.4",
|
||||
"@material-ui/icons": "^4.11.3",
|
||||
"@material-ui/lab": "4.0.0-alpha.61",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/macaw-ui": "^0.7.2",
|
||||
"@urql/exchange-auth": "^1.0.0",
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
"@material-ui/core": "^4.12.4",
|
||||
"@material-ui/icons": "^4.11.3",
|
||||
"@material-ui/lab": "4.0.0-alpha.61",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/macaw-ui": "^0.7.2",
|
||||
"@sentry/nextjs": "^7.52.1",
|
||||
|
|
|
@ -17,11 +17,11 @@
|
|||
},
|
||||
"dependencies": {
|
||||
"@hookform/resolvers": "^3.1.0",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/apps-ui": "workspace:*",
|
||||
"@saleor/react-hook-form-macaw": "workspace:*",
|
||||
"@saleor/macaw-ui": "^0.8.0-pre.84",
|
||||
"@saleor/react-hook-form-macaw": "workspace:*",
|
||||
"@sentry/nextjs": "^7.46.0",
|
||||
"@types/debug": "^4.1.7",
|
||||
"@urql/exchange-auth": "^1.0.0",
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
"@material-ui/core": "^4.12.4",
|
||||
"@material-ui/icons": "^4.11.3",
|
||||
"@material-ui/lab": "4.0.0-alpha.61",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/macaw-ui": "^0.7.2",
|
||||
"@sentry/nextjs": "^7.30.0",
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
"@material-ui/core": "^4.12.4",
|
||||
"@material-ui/icons": "^4.11.3",
|
||||
"@material-ui/lab": "4.0.0-alpha.61",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/apps-shared": "workspace:*",
|
||||
"@saleor/apps-ui": "workspace:*",
|
||||
"@saleor/macaw-ui": "^0.7.2",
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
"main": "index.js",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@saleor/app-sdk": "0.37.3",
|
||||
"eslint": "^8.33.0",
|
||||
"eslint-config-next": "^13.3.0",
|
||||
"eslint-config-prettier": "^8.6.0",
|
||||
|
|
|
@ -10,25 +10,26 @@
|
|||
"@material-ui/core": "^4.12.4",
|
||||
"@material-ui/icons": "^4.11.3",
|
||||
"@material-ui/lab": "4.0.0-alpha.61",
|
||||
"@saleor/app-sdk": "0.38.0",
|
||||
"@saleor/app-sdk": "0.39.1",
|
||||
"@saleor/macaw-ui": "^0.7.2",
|
||||
"@types/react": "^18.0.27",
|
||||
"@types/react-dom": "^18.0.10",
|
||||
"@types/semver": "^7.5.0",
|
||||
"clsx": "^1.2.1",
|
||||
"eslint-config-saleor": "workspace:*",
|
||||
"next": "^13.3.0",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"vite": "^4.3.1",
|
||||
"vitest": "^0.30.1",
|
||||
"@types/semver": "^7.5.0"
|
||||
"vitest": "^0.30.1"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"next": "^13.3.0",
|
||||
"pino": "^8.14.1",
|
||||
"pino-pretty": "^10.0.0",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0"
|
||||
"react-dom": "^18.2.0",
|
||||
"@saleor/app-sdk": "0.39.1"
|
||||
},
|
||||
"scripts": {
|
||||
"lint:fix": "eslint --fix ."
|
||||
|
|
|
@ -9,13 +9,13 @@
|
|||
"next": "^13.3.0",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"@saleor/app-sdk": "^0.38.0"
|
||||
"@saleor/app-sdk": "^0.39.1"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@saleor/app-sdk": "^0.39.1",
|
||||
"next": "^13.3.0",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"@saleor/app-sdk": "^0.38.0"
|
||||
"react-dom": "^18.2.0"
|
||||
},
|
||||
"scripts": {
|
||||
"lint:fix": "eslint --fix ."
|
||||
|
|
138
pnpm-lock.yaml
138
pnpm-lock.yaml
|
@ -47,8 +47,8 @@ importers:
|
|||
specifier: 4.0.0-alpha.61
|
||||
version: 4.0.0-alpha.61(@material-ui/core@4.12.4)(@types/react@18.0.27)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -177,8 +177,8 @@ importers:
|
|||
specifier: ^3.0.80
|
||||
version: 3.0.80
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -308,7 +308,7 @@ importers:
|
|||
version: 8.31.0
|
||||
eslint-config-next:
|
||||
specifier: 13.1.2
|
||||
version: 13.1.2(eslint@8.31.0)(typescript@4.9.4)
|
||||
version: 13.1.2(eslint@8.31.0)(typescript@5.0.4)
|
||||
eslint-config-prettier:
|
||||
specifier: ^8.6.0
|
||||
version: 8.6.0(eslint@8.31.0)
|
||||
|
@ -322,8 +322,8 @@ importers:
|
|||
specifier: ^2.8.2
|
||||
version: 2.8.4
|
||||
typescript:
|
||||
specifier: 4.9.4
|
||||
version: 4.9.4
|
||||
specifier: 5.0.4
|
||||
version: 5.0.4
|
||||
|
||||
apps/data-importer:
|
||||
dependencies:
|
||||
|
@ -337,8 +337,8 @@ importers:
|
|||
specifier: 4.0.0-alpha.61
|
||||
version: 4.0.0-alpha.61(@material-ui/core@4.12.4)(@types/react@18.0.27)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -479,8 +479,8 @@ importers:
|
|||
specifier: ^4.4.6
|
||||
version: 4.4.6(monaco-editor@0.38.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -660,8 +660,8 @@ importers:
|
|||
specifier: ^3.1.0
|
||||
version: 3.1.0(react-hook-form@7.43.1)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -817,8 +817,8 @@ importers:
|
|||
specifier: 4.0.0-alpha.61
|
||||
version: 4.0.0-alpha.61(@material-ui/core@4.12.4)(@types/react@18.0.14)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -947,8 +947,8 @@ importers:
|
|||
specifier: 4.0.0-alpha.61
|
||||
version: 4.0.0-alpha.61(@material-ui/core@4.12.4)(@types/react@18.0.27)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -1080,8 +1080,8 @@ importers:
|
|||
specifier: 4.0.0-alpha.61
|
||||
version: 4.0.0-alpha.61(@material-ui/core@4.12.4)(@types/react@18.0.27)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -1234,8 +1234,8 @@ importers:
|
|||
specifier: ^3.1.0
|
||||
version: 3.1.0(react-hook-form@7.43.9)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -1385,8 +1385,8 @@ importers:
|
|||
specifier: 4.0.0-alpha.61
|
||||
version: 4.0.0-alpha.61(@material-ui/core@4.12.4)(@types/react@18.0.27)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -1518,8 +1518,8 @@ importers:
|
|||
specifier: 4.0.0-alpha.61
|
||||
version: 4.0.0-alpha.61(@material-ui/core@4.12.4)(@types/react@18.0.27)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/apps-shared':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/shared
|
||||
|
@ -1674,9 +1674,6 @@ importers:
|
|||
|
||||
packages/eslint-config-saleor:
|
||||
dependencies:
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.37.3
|
||||
version: 0.37.3(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
eslint:
|
||||
specifier: ^8.33.0
|
||||
version: 8.33.0
|
||||
|
@ -1788,8 +1785,8 @@ importers:
|
|||
specifier: 4.0.0-alpha.61
|
||||
version: 4.0.0-alpha.61(@material-ui/core@4.12.4)(@types/react@18.0.27)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/app-sdk':
|
||||
specifier: 0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/macaw-ui':
|
||||
specifier: ^0.7.2
|
||||
version: 0.7.2(@material-ui/core@4.12.4)(@material-ui/icons@4.11.3)(@material-ui/lab@4.0.0-alpha.61)(@types/react@18.0.27)(react-dom@18.2.0)(react-helmet@6.1.0)(react@18.2.0)
|
||||
|
@ -1827,8 +1824,8 @@ importers:
|
|||
packages/ui:
|
||||
devDependencies:
|
||||
'@saleor/app-sdk':
|
||||
specifier: ^0.38.0
|
||||
version: 0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: ^0.39.1
|
||||
version: 0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@saleor/macaw-ui':
|
||||
specifier: 0.8.0-pre.84
|
||||
version: 0.8.0-pre.84(@types/react@18.0.38)(react-dom@18.2.0)(react@18.2.0)
|
||||
|
@ -7662,30 +7659,8 @@ packages:
|
|||
/@rushstack/eslint-patch@1.2.0:
|
||||
resolution: {integrity: sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==}
|
||||
|
||||
/@saleor/app-sdk@0.37.3(next@13.3.0)(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-DFAjiEFBFIDWDqZvaXar8860zDgSZih2n7gT3e+aOpLIfnmMZ0nL6+aNS3A7ym2IStx8oUoPI1RFZBIeuF9+hg==}
|
||||
peerDependencies:
|
||||
next: '>=12'
|
||||
react: '>=17'
|
||||
react-dom: '>=17'
|
||||
dependencies:
|
||||
'@changesets/cli': 2.26.0
|
||||
debug: 4.3.4
|
||||
fast-glob: 3.2.12
|
||||
graphql: 16.6.0
|
||||
jose: 4.11.4
|
||||
next: 13.3.0(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
raw-body: 2.5.1
|
||||
react: 18.2.0
|
||||
react-dom: 18.2.0(react@18.2.0)
|
||||
retes: 0.33.0
|
||||
uuid: 8.3.2
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: false
|
||||
|
||||
/@saleor/app-sdk@0.38.0(next@13.3.0)(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-JS/E3YODFHc+1DI+PczbV8jB09nLwzdQcwNs681RlwvR3JUC892hdBYYRdBKG5lauAcr4IxKw1IbrsxJKngtWA==}
|
||||
/@saleor/app-sdk@0.39.1(next@13.3.0)(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-PBREZWwkk+DHCBhOZzsuFdp7/vLItxfAqKD+gcZ5QxzSAt82S0/FS6ii7igpW3H+bEiK4oBUjMxgUyhJMOXQHw==}
|
||||
peerDependencies:
|
||||
next: '>=12'
|
||||
react: '>=17'
|
||||
|
@ -9078,7 +9053,7 @@ packages:
|
|||
prompts: 2.4.2
|
||||
puppeteer-core: 2.1.1
|
||||
read-pkg-up: 7.0.1
|
||||
semver: 7.3.8
|
||||
semver: 7.5.1
|
||||
shelljs: 0.8.5
|
||||
simple-update-notifier: 1.1.0
|
||||
strip-json-comments: 3.1.1
|
||||
|
@ -9211,7 +9186,7 @@ packages:
|
|||
pretty-hrtime: 1.0.3
|
||||
prompts: 2.4.2
|
||||
read-pkg-up: 7.0.1
|
||||
semver: 7.3.8
|
||||
semver: 7.5.1
|
||||
serve-favicon: 2.5.0
|
||||
telejson: 7.1.0
|
||||
ts-dedent: 2.2.0
|
||||
|
@ -9307,7 +9282,7 @@ packages:
|
|||
memoizerific: 1.11.3
|
||||
react: 18.2.0
|
||||
react-dom: 18.2.0(react@18.2.0)
|
||||
semver: 7.3.8
|
||||
semver: 7.5.1
|
||||
store2: 2.14.2
|
||||
telejson: 7.1.0
|
||||
ts-dedent: 2.2.0
|
||||
|
@ -10421,6 +10396,26 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@typescript-eslint/parser@5.51.0(eslint@8.31.0)(typescript@5.0.4):
|
||||
resolution: {integrity: sha512-fEV0R9gGmfpDeRzJXn+fGQKcl0inIeYobmmUWijZh9zA7bxJ8clPhV9up2ZQzATxAiFAECqPQyMDB4o4B81AaA==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||
typescript: '*'
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@typescript-eslint/scope-manager': 5.51.0
|
||||
'@typescript-eslint/types': 5.51.0
|
||||
'@typescript-eslint/typescript-estree': 5.51.0(typescript@5.0.4)
|
||||
debug: 4.3.4
|
||||
eslint: 8.31.0
|
||||
typescript: 5.0.4
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@typescript-eslint/parser@5.51.0(eslint@8.33.0)(typescript@4.9.5):
|
||||
resolution: {integrity: sha512-fEV0R9gGmfpDeRzJXn+fGQKcl0inIeYobmmUWijZh9zA7bxJ8clPhV9up2ZQzATxAiFAECqPQyMDB4o4B81AaA==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
|
@ -13619,6 +13614,31 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-config-next@13.1.2(eslint@8.31.0)(typescript@5.0.4):
|
||||
resolution: {integrity: sha512-zdRAQOr8v69ZwJRtBrGqAqm160ONqKxU/pV1FB1KlgfyqveGsLZmlQ7l31otwtw763901J7xdiTVkj2y3YxXZA==}
|
||||
peerDependencies:
|
||||
eslint: ^7.23.0 || ^8.0.0
|
||||
typescript: '>=3.3.1'
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@next/eslint-plugin-next': 13.1.2
|
||||
'@rushstack/eslint-patch': 1.2.0
|
||||
'@typescript-eslint/parser': 5.51.0(eslint@8.31.0)(typescript@5.0.4)
|
||||
eslint: 8.31.0
|
||||
eslint-import-resolver-node: 0.3.7
|
||||
eslint-import-resolver-typescript: 3.5.3(eslint-plugin-import@2.27.5)(eslint@8.31.0)
|
||||
eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.51.0)(eslint-import-resolver-typescript@3.5.3)(eslint@8.33.0)
|
||||
eslint-plugin-jsx-a11y: 6.7.1(eslint@8.31.0)
|
||||
eslint-plugin-react: 7.32.2(eslint@8.31.0)
|
||||
eslint-plugin-react-hooks: 4.6.0(eslint@8.31.0)
|
||||
typescript: 5.0.4
|
||||
transitivePeerDependencies:
|
||||
- eslint-import-resolver-webpack
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-config-next@13.3.0(eslint@8.33.0)(typescript@4.9.5):
|
||||
resolution: {integrity: sha512-6YEwmFBX0VjBd3ODGW9df0Is0FLaRFdMN8eAahQG9CN6LjQ28J8AFr19ngxqMSg7Qv6Uca/3VeeBosJh1bzu0w==}
|
||||
peerDependencies:
|
||||
|
|
Loading…
Reference in a new issue