@openinc/parse-server-opendash
Version:
Parse Server Cloud Code for open.INC Stack.
536 lines (535 loc) • 17.2 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.customoptions = void 0;
exports.customoptions = {
ADDITIONAL_PACKAGES: {
env: "OPENINC_PARSE_ADDITIONAL_PACKAGES",
type: "string",
required: false,
secret: false,
public: false,
description: "Additional packages to load. This is a comma separated list of package names.",
},
APP_URL: {
env: "OPENINC_PARSE_APP_URL",
type: "string",
required: true,
secret: false,
public: true,
description: "This is not the Parse Server URL, but the URL of the web app.",
},
ENFORCE_APP_URL: {
env: "OPENINC_PARSE_ENFORCE_APP_URL",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "If this setting is enabled, the app will redirect to the APP_URL if the request is not coming from this URL.",
},
APP_TITLE: {
env: "OPENINC_PARSE_APP_TITLE",
type: "string",
required: false,
secret: false,
public: true,
default: "open.DASH",
description: "Title of the application.",
},
APP_COPYRIGHT_TEXT: {
env: "OPENINC_PARSE_APP_COPYRIGHT_TEXT",
type: "string",
required: false,
secret: false,
public: true,
default: "Powered by open.INC",
description: "Text which is displayed in the footer of the application.",
},
APP_COPYRIGHT_LINK: {
env: "OPENINC_PARSE_APP_COPYRIGHT_LINK",
type: "string",
required: false,
secret: false,
public: true,
default: "https://openinc.de/",
description: "Link which is used for the copyright in the footer of the application.",
},
APP_IMPRINT_URL: {
env: "OPENINC_PARSE_APP_IMPRINT_URL",
type: "string",
required: false,
secret: false,
public: true,
description: "Link to the imprint of the application.",
},
APP_DATA_PROTECTION_URL: {
env: "OPENINC_PARSE_APP_DATA_PROTECTION_URL",
type: "string",
required: false,
secret: false,
public: true,
description: "Link to the data protection policy of the application.",
},
APP_TOS_URL: {
env: "OPENINC_PARSE_APP_TOS_URL",
type: "string",
required: false,
secret: false,
public: true,
description: "Link to the terms of service of the application.",
},
APP_NOTIFICATIONS_PER_EMAIL: {
env: "OPENINC_PARSE_APP_NOTIFICATIONS_PER_EMAIL",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Whether to send notifications via e-mail or not.",
dependencies: ["SMTP_ENABLED"],
},
AUTH_SIGNUP_ENABLED: {
env: "OPENINC_PARSE_AUTH_SIGNUP_ENABLED",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "If set to false, users will not be able to sign up - users must be created by an admin.",
},
AUTH_SIGNUP_REQUIRE_TENANT: {
env: "OPENINC_PARSE_AUTH_SIGNUP_REQUIRE_TENANT",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "If set to true, users must have a tenant when signing up.",
},
AUTH_VERIFY_EMAIL: {
env: "OPENINC_PARSE_AUTH_VERIFY_EMAIL",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "If set to true, users must verify their e-mail address before they can log in.",
dependencies: ["SMTP_ENABLED"],
},
AUTH_VERIFY_TENANT: {
env: "OPENINC_PARSE_AUTH_VERIFY_TENANT",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "If set to true, users must be verified by a tenant admin before they can log in.",
},
AUTH_ALLOW_USERNAME: {
env: "OPENINC_PARSE_AUTH_ALLOW_USERNAME",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "If set to true, users can sign up and login using a username. If set to false, the email will be used as the username.",
},
AUTH_ALLOW_PASSWORDLESS_LOGIN: {
env: "OPENINC_PARSE_AUTH_ALLOW_PASSWORDLESS_LOGIN",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "If set to true, users will be able to login without a password, for example using a magic link sent to their email address.",
},
AUTH_ALLOW_PASSWORDLESS_SIGNUP: {
env: "OPENINC_PARSE_AUTH_ALLOW_PASSWORDLESS_SIGNUP",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "If set to true, users will be able to sign up without a password, for example using a magic link sent to their email address.",
},
AUTH_PASSWORD_MIN_LENGTH: {
env: "OPENINC_PARSE_AUTH_PASSWORD_MIN_LENGTH",
type: "int",
required: false,
secret: false,
public: true,
default: "8",
description: "Minimum length of the password.",
},
AUTOLOAD_DIR: {
env: "OPENINC_PARSE_CLOUDCODE_AUTOLOAD_DIR",
type: "string",
required: false,
secret: false,
public: false,
description: "Autoload every .js file in the given directory as Parse Server Cloud Code. Just export a async init() function in every file and it will be called.",
},
FEATURE_CORE: {
env: "OPENINC_PARSE_FEATURE_CORE",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Parse Classes and Cloud Code for core features.",
},
FEATURE_MONITORING: {
env: "OPENINC_PARSE_FEATURE_MONITORING",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Parse Classes and Cloud Code for the Monitoring plugin.",
},
FEATURE_BDE: {
env: "OPENINC_PARSE_FEATURE_BDE",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Parse Classes and Cloud Code for the BDE plugin.",
},
FEATURE_GTFS: {
env: "OPENINC_PARSE_FEATURE_GTFS",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Parse Classes and Cloud Code for the GTFS plugin.",
},
FEATURE_KNOWLEDGE: {
env: "OPENINC_PARSE_FEATURE_KNOWLEDGE",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Parse Classes and Cloud Code for the open.KNOWLEDGE plugin.",
},
FEATURE_MAINTENANCE: {
env: "OPENINC_PARSE_FEATURE_MAINTENANCE",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Parse Classes and Cloud Code for the open.SERVICE plugin.",
},
FEATURE_MIAAS: {
env: "OPENINC_PARSE_FEATURE_MIAAS",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Parse Classes and Cloud Code for the MIAAS plugin.",
},
FEATURE_DOCUMENTATION: {
env: "OPENINC_PARSE_FEATURE_DOCUMENTATION",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Parse Classes and Cloud Code for the Documentation plugin.",
},
FORCE_SCHEMA: {
env: "OPENINC_PARSE_FORCE_SCHEMA",
type: "boolean",
required: false,
secret: false,
public: false,
default: "false",
description: "This will force the schema to be updated on startup including removing fields and classes, which is a destructive operation and can result in data loss.",
},
FORCE_DELETE_CLASS: {
env: "OPENINC_PARSE_FORCE_DELETE_CLASS",
type: "boolean",
required: false,
secret: false,
public: false,
default: "false",
description: "This will work as FORCE_SCHEMA and will also delete entries in non-empty classes. Just a safety hook.",
},
EMAIL_TEMPLATE_DIR: {
env: "OPENINC_PARSE_EMAIL_TEMPLATE_DIR",
type: "string",
required: false,
secret: false,
public: false,
description: "The directory where the email templates are stored. The default is 'views/emails'.",
default: "views/emails",
},
SMTP_ENABLED: {
env: "OPENINC_PARSE_SMTP_ENABLED",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable SMTP for sending e-mails.",
dependencies: [
"SMTP_HOST",
"SMTP_PORT",
"SMTP_USER",
"SMTP_PASS",
"SMTP_FROM",
"SMTP_SECURE",
],
},
SMTP_HOST: {
env: "OPENINC_PARSE_SMTP_HOST",
type: "string",
required: false,
secret: false,
public: false,
description: "E-Mail host",
},
SMTP_PORT: {
env: "OPENINC_PARSE_SMTP_PORT",
type: "int",
required: false,
secret: false,
public: false,
description: "E-Mail port",
},
SMTP_USER: {
env: "OPENINC_PARSE_SMTP_USER",
type: "string",
required: false,
secret: false,
public: false,
description: "E-Mail user",
},
SMTP_PASS: {
env: "OPENINC_PARSE_SMTP_PASS",
type: "string",
required: false,
secret: true,
public: false,
description: "E-Mail password",
},
SMTP_FROM: {
env: "OPENINC_PARSE_SMTP_FROM",
type: "string",
required: false,
secret: false,
public: true,
description: "E-Mail from/sender E-Mail",
},
SMTP_SECURE: {
env: "OPENINC_PARSE_SMTP_SECURE",
type: "boolean",
required: false,
secret: false,
public: false,
default: "false",
description: "E-Mail from/sender E-Mail",
},
SMTP_IGNORE_TLS: {
env: "OPENINC_PARSE_SMTP_IGNORE_TLS",
type: "boolean",
required: false,
secret: false,
public: false,
default: "false",
description: "E-Mail from/sender E-Mail",
},
WEB_PUSH_ENABLED: {
env: "OPENINC_PARSE_WEB_PUSH_ENABLED",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Web Push Notifications.",
dependencies: [
"WEB_PUSH_HOST",
"WEB_PUSH_ICON",
"WEB_PUSH_VAPID_PUBLIC_KEY",
"WEB_PUSH_VAPID_PRIVATE_KEY",
"WEB_PUSH_FCM_KEY",
],
},
WEB_PUSH_HOST: {
env: "OPENINC_PARSE_WEB_PUSH_HOST",
type: "string",
required: false,
secret: false,
public: false,
description: "First/subject paramter of setVapidDetails() from https://www.npmjs.com/package/web-push",
},
WEB_PUSH_ICON: {
env: "OPENINC_PARSE_WEB_PUSH_ICON",
type: "string",
required: false,
secret: false,
public: false,
description: "Icon URL for the push notifications.",
},
WEB_PUSH_VAPID_PUBLIC_KEY: {
env: "OPENINC_PARSE_WEB_PUSH_VAPID_PUBLIC_KEY",
type: "string",
required: false,
secret: true,
public: false,
description: "Second paramter of setVapidDetails() from https://www.npmjs.com/package/web-push",
},
WEB_PUSH_VAPID_PRIVATE_KEY: {
env: "OPENINC_PARSE_WEB_PUSH_VAPID_PRIVATE_KEY",
type: "string",
required: false,
secret: true,
public: false,
description: "Third paramter of setVapidDetails() from https://www.npmjs.com/package/web-push",
},
WEB_PUSH_FCM_KEY: {
env: "OPENINC_PARSE_WEB_PUSH_FCM_KEY",
type: "string",
required: false,
secret: true,
public: false,
description: "First paramter of setGCMAPIKey() from https://www.npmjs.com/package/web-push",
},
GEO_VECTOR_STYLE: {
env: "OPENINC_PARSE_GEO_VECTOR_STYLE",
type: "string",
required: false,
secret: false,
public: true,
description: "URL to the vector style file for mapgl.",
},
GEO_GOOGLE_ENABLED: {
env: "OPENINC_PARSE_GEO_GOOGLE_ENABLED",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Google Maps for geocoding and routing.",
dependencies: ["GEO_GOOGLE_API_KEY"],
},
GEO_GOOGLE_API_KEY: {
env: "OPENINC_PARSE_GEO_GOOGLE_API_KEY",
type: "string",
required: false,
secret: true,
public: false,
description: "Google Maps API Key. Needs places, autocomplate, geocoding and routing permissions.",
},
GEO_GRAPHHOPPER_ENABLED: {
env: "OPENINC_PARSE_GEO_GRAPHHOPPER_ENABLED",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable Graphhopper for geocding and routing.",
dependencies: ["GEO_GRAPHHOPPER_HOST", "GEO_GRAPHHOPPER_API_KEY"],
},
GEO_GRAPHHOPPER_HOST: {
env: "OPENINC_PARSE_GEO_GRAPHHOPPER_HOST",
type: "string",
required: false,
secret: false,
public: false,
description: "Host of the Graphhopper API. The hosted service URL is https://graphhopper.com/api/1/",
},
GEO_GRAPHHOPPER_API_KEY: {
env: "OPENINC_PARSE_GEO_GRAPHHOPPER_API_KEY",
type: "string",
required: false,
secret: true,
public: false,
description: "Graphhopper API Key.",
},
OPENWARE: {
env: "PARSE_SERVER_OPENWARE",
type: "boolean",
required: false,
secret: false,
public: true,
default: "false",
description: "Enable open.WARE Cloud Code features.",
},
OPENWARE_BASEURL: {
env: "PARSE_SERVER_OPENWARE_BASEURL",
type: "string",
required: false,
secret: false,
public: false,
description: "Base URL of the open.WARE API.",
},
OPENWARE_JWT_SECRET: {
env: "PARSE_SERVER_OPENWARE_JWT_SECRET",
type: "string",
required: false,
secret: false,
public: false,
description: "Secret for the JWT tokens for open.WARE.",
},
OPENWARE_JWT_ISS: {
env: "PARSE_SERVER_OPENWARE_JWT_ISS",
type: "string",
required: false,
secret: false,
public: false,
description: "Issuer of the JWT tokens for open.WARE.",
},
OPENWARE_JWT_ADMIN_EMAIL: {
env: "PARSE_SERVER_OPENWARE_JWT_ADMIN_EMAIL",
type: "string",
required: false,
secret: false,
public: false,
description: "E-Mail of the admin user for open.WARE.",
},
OPENWARE_JWT_TOKEN: {
env: "PARSE_SERVER_OPENWARE_JWT_TOKEN",
type: "string",
required: false,
secret: false,
public: false,
description: "Use the given JWT token instead of creating a new one.",
},
MICROSOFT_CLIENT_ID: {
env: "OI_MICROSOFT_CLIENT_ID",
type: "string",
required: false,
secret: false,
public: false,
description: "Client ID for Microsoft authentication. This is the Application (client) ID from the Azure portal.",
},
MICROSOFT_CLIENT_SECRET: {
env: "OI_MICROSOFT_CLIENT_SECRET",
type: "string",
required: false,
secret: false,
public: false,
description: "Client Secret for Microsoft authentication. This is the Client Secret from the Azure portal.",
},
MICROSOFT_TENANT_ID: {
env: "OI_MICROSOFT_TENANT_ID",
type: "string",
required: false,
secret: false,
public: false,
description: "Tenant ID for Microsoft authentication. This is the Directory (tenant) ID from the Azure portal.",
},
MICROSOFT_APP_ID: {
env: "OI_MICROSOFT_APP_ID",
type: "string",
required: false,
secret: false,
public: false,
description: "Application ID for Microsoft authentication. This is the Application (client) ID from the Azure portal.",
},
};