Make DB name non-optional.
This commit is contained in:
parent
7672993eae
commit
47292b8ab4
|
@ -276,6 +276,9 @@ export function getAuditLogsDB(): Database {
|
|||
*/
|
||||
export function getAppDB(opts?: any): Database {
|
||||
const appId = getAppId()
|
||||
if (!appId) {
|
||||
throw new Error("Unable to retrieve app DB - no app ID.")
|
||||
}
|
||||
return getDB(appId, opts)
|
||||
}
|
||||
|
||||
|
|
|
@ -48,10 +48,7 @@ export class DatabaseImpl implements Database {
|
|||
|
||||
private readonly couchInfo = getCouchInfo()
|
||||
|
||||
constructor(dbName?: string, opts?: DatabaseOpts, connection?: string) {
|
||||
if (dbName == null) {
|
||||
throw new Error("Database name cannot be undefined.")
|
||||
}
|
||||
constructor(dbName: string, opts?: DatabaseOpts, connection?: string) {
|
||||
this.name = dbName
|
||||
this.pouchOpts = opts || {}
|
||||
if (connection) {
|
||||
|
|
|
@ -1,10 +1,7 @@
|
|||
import env from "../environment"
|
||||
import { directCouchQuery, DatabaseImpl } from "./couch"
|
||||
import { CouchFindOptions, Database } from "@budibase/types"
|
||||
|
||||
const dbList = new Set()
|
||||
|
||||
export function getDB(dbName?: string, opts?: any): Database {
|
||||
export function getDB(dbName: string, opts?: any): Database {
|
||||
return new DatabaseImpl(dbName, opts)
|
||||
}
|
||||
|
||||
|
@ -22,13 +19,6 @@ export async function doWithDB<T>(
|
|||
return await cb(db)
|
||||
}
|
||||
|
||||
export function allDbs() {
|
||||
if (!env.isTest()) {
|
||||
throw new Error("Cannot be used outside test environment.")
|
||||
}
|
||||
return [...dbList]
|
||||
}
|
||||
|
||||
export async function directCouchAllDbs(queryString?: string) {
|
||||
let couchPath = "/_all_dbs"
|
||||
if (queryString) {
|
||||
|
|
|
@ -337,7 +337,7 @@ export async function destroy(ctx: UserCtx) {
|
|||
if (datasource.type === dbCore.BUDIBASE_DATASOURCE_TYPE) {
|
||||
await destroyInternalTablesBySourceId(datasourceId)
|
||||
} else {
|
||||
const queries = await db.allDocs(getQueryParams(datasourceId, null))
|
||||
const queries = await db.allDocs(getQueryParams(datasourceId))
|
||||
await db.bulkDocs(
|
||||
queries.rows.map((row: any) => ({
|
||||
_id: row.id,
|
||||
|
|
|
@ -6,6 +6,7 @@ import {
|
|||
RelationshipFieldMetadata,
|
||||
VirtualDocumentType,
|
||||
INTERNAL_TABLE_SOURCE_ID,
|
||||
DatabaseQueryOpts,
|
||||
} from "@budibase/types"
|
||||
import { FieldTypes } from "../constants"
|
||||
export { DocumentType, VirtualDocumentType } from "@budibase/types"
|
||||
|
@ -229,7 +230,10 @@ export function getAutomationMetadataParams(otherProps: any = {}) {
|
|||
/**
|
||||
* Gets parameters for retrieving a query, this is a utility function for the getDocParams function.
|
||||
*/
|
||||
export function getQueryParams(datasourceId?: Optional, otherProps: any = {}) {
|
||||
export function getQueryParams(
|
||||
datasourceId?: Optional,
|
||||
otherProps: Partial<DatabaseQueryOpts> = {}
|
||||
) {
|
||||
if (datasourceId == null) {
|
||||
return getDocParams(DocumentType.QUERY, null, otherProps)
|
||||
}
|
||||
|
@ -256,7 +260,7 @@ export function generateMetadataID(type: string, entityId: string) {
|
|||
export function getMetadataParams(
|
||||
type: string,
|
||||
entityId?: Optional,
|
||||
otherProps: any = {}
|
||||
otherProps: Partial<DatabaseQueryOpts> = {}
|
||||
) {
|
||||
let docId = `${type}${SEPARATOR}`
|
||||
if (entityId != null) {
|
||||
|
@ -269,7 +273,9 @@ export function generateMemoryViewID(viewName: string) {
|
|||
return `${DocumentType.MEM_VIEW}${SEPARATOR}${viewName}`
|
||||
}
|
||||
|
||||
export function getMemoryViewParams(otherProps: any = {}) {
|
||||
export function getMemoryViewParams(
|
||||
otherProps: Partial<DatabaseQueryOpts> = {}
|
||||
) {
|
||||
return getDocParams(DocumentType.MEM_VIEW, null, otherProps)
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue