saleor-apps-redis_apl/apps/invoices/scripts/migrations/migration-utils.ts
Krzysztof Wolski a1ad70e879
Unify urql version, use shared util to create client (#657)
* Add createGraphQLClient util to shared package

* Update urql version and use createGraphQLClient from shared package

* Update urql version and use createGraphQLClient from shared package - data importer

* Update urql version and use createGraphQLClient from shared package - cms

* Update CRM

* Update invoices

* Update klaviyo

* Update slack

* Update products feed

* Update search

* Remove unused urql next

* Update monitoring

* Update taxes

* Remove multipart since no longer used

* Update the lockfile

* Removed urql introspection since none of our apps used it

* Add changeset
2023-06-19 15:59:27 +02:00

41 lines
1.1 KiB
TypeScript

/* eslint-disable turbo/no-undeclared-env-vars */
import { createGraphQLClient } from "@saleor/apps-shared";
import { createSettingsManager } from "../../src/modules/app-configuration/metadata-manager";
import { SaleorCloudAPL } from "@saleor/app-sdk/APL";
export const getMetadataManagerForEnv = (apiUrl: string, appToken: string) => {
const client = createGraphQLClient({
saleorApiUrl: apiUrl,
token: appToken,
});
return createSettingsManager(client);
};
export const safeParse = (json?: string) => {
if (!json) return null;
try {
return JSON.parse(json);
} catch (e) {
return null;
}
};
export const verifyRequiredEnvs = () => {
const requiredEnvs = ["SALEOR_CLOUD_TOKEN", "SALEOR_CLOUD_RESOURCE_URL", "SECRET_KEY"];
if (!requiredEnvs.every((env) => process.env[env])) {
throw new Error(`Missing envs: ${requiredEnvs.join(" | ")}`);
}
};
export const fetchCloudAplEnvs = () => {
const saleorAPL = new SaleorCloudAPL({
token: process.env.SALEOR_CLOUD_TOKEN!,
resourceUrl: process.env.SALEOR_CLOUD_RESOURCE_URL!,
});
return saleorAPL.getAll();
};