saleor-apps-redis_apl/apps/invoices/src/saleor-app.ts
Lukasz Ostrowski 1fef68b49e
Improves how Saleor version is validated during installation (Invoices) (#390)
* Extract SaleorVersionCompatibilityValidator + tests

* Use SaleorVersionCompatibilityValidtor in register handler

* Replace coerce with includePrerelease in saleor version matching

* Changelogs
2023-04-17 12:39:13 +02:00

37 lines
835 B
TypeScript

import { APL, FileAPL, SaleorCloudAPL, UpstashAPL } from "@saleor/app-sdk/APL";
import { SaleorApp } from "@saleor/app-sdk/saleor-app";
const aplType = process.env.APL ?? "file";
let apl: APL;
switch (aplType) {
case "upstash":
apl = new UpstashAPL();
break;
case "file":
apl = new FileAPL();
break;
case "rest": {
if (!process.env.REST_APL_ENDPOINT || !process.env.REST_APL_TOKEN) {
throw new Error("Rest APL is not configured - missing env variables. Check saleor-app.ts");
}
apl = new SaleorCloudAPL({
resourceUrl: process.env.REST_APL_ENDPOINT,
token: process.env.REST_APL_TOKEN,
});
break;
}
default: {
throw new Error("Invalid APL config, ");
}
}
export const saleorApp = new SaleorApp({
apl,
});
export const REQUIRED_SALEOR_VERSION = ">=3.10 <4";