budibase/packages/server/src/integrations/index.ts

60 lines
2.1 KiB
TypeScript
Raw Normal View History

2020-11-26 15:43:56 +01:00
const postgres = require("./postgres")
2020-11-26 17:46:36 +01:00
const dynamodb = require("./dynamodb")
const mongodb = require("./mongodb")
2020-11-26 18:03:18 +01:00
const elasticsearch = require("./elasticsearch")
const couchdb = require("./couchdb")
2020-12-12 22:48:51 +01:00
const sqlServer = require("./microsoftSqlServer")
const s3 = require("./s3")
2021-01-11 18:18:22 +01:00
const airtable = require("./airtable")
const mysql = require("./mysql")
2021-01-28 14:42:40 +01:00
const arangodb = require("./arangodb")
2021-02-15 18:05:53 +01:00
const rest = require("./rest")
2021-11-25 18:12:12 +01:00
const googlesheets = require("./googlesheets")
const { SourceNames } = require("../definitions/datasource")
2022-02-10 11:34:50 +01:00
const environment = require("../environment")
2020-11-26 15:43:56 +01:00
const DEFINITIONS = {
[SourceNames.POSTGRES]: postgres.schema,
[SourceNames.DYNAMODB]: dynamodb.schema,
[SourceNames.MONGODB]: mongodb.schema,
[SourceNames.ELASTICSEARCH]: elasticsearch.schema,
[SourceNames.COUCHDB]: couchdb.schema,
[SourceNames.SQL_SERVER]: sqlServer.schema,
[SourceNames.S3]: s3.schema,
[SourceNames.AIRTABLE]: airtable.schema,
[SourceNames.MYSQL]: mysql.schema,
[SourceNames.ARANGODB]: arangodb.schema,
[SourceNames.REST]: rest.schema,
2020-11-26 15:43:56 +01:00
}
const INTEGRATIONS = {
[SourceNames.POSTGRES]: postgres.integration,
[SourceNames.DYNAMODB]: dynamodb.integration,
[SourceNames.MONGODB]: mongodb.integration,
[SourceNames.ELASTICSEARCH]: elasticsearch.integration,
[SourceNames.COUCHDB]: couchdb.integration,
2021-08-05 23:15:40 +02:00
[SourceNames.SQL_SERVER]: sqlServer.integration,
[SourceNames.S3]: s3.integration,
[SourceNames.AIRTABLE]: airtable.integration,
[SourceNames.MYSQL]: mysql.integration,
[SourceNames.ARANGODB]: arangodb.integration,
[SourceNames.REST]: rest.integration,
}
// optionally add oracle integration if the oracle binary can be installed
if (!(process.arch === "arm64" && process.platform === "darwin")) {
const oracle = require("./oracle")
DEFINITIONS[SourceNames.ORACLE] = oracle.schema
INTEGRATIONS[SourceNames.ORACLE] = oracle.integration
2020-11-26 15:43:56 +01:00
}
2022-02-10 11:34:50 +01:00
if (environment.SELF_HOSTED) {
DEFINITIONS[SourceNames.GOOGLE_SHEETS] = googlesheets.schema
INTEGRATIONS[SourceNames.GOOGLE_SHEETS] = googlesheets.integration
}
2020-11-26 15:43:56 +01:00
module.exports = {
definitions: DEFINITIONS,
integrations: INTEGRATIONS,
}