MCPcopy Create free account
hub / github.com/bytebase/bytebase / mapTreeOptions

Function mapTreeOptions

frontend/src/utils/v1/databaseResource.ts:34–70  ·  view source on GitHub ↗
({
  databaseList,
  filterValueList,
  includeColumn,
}: {
  databaseList: Database[];
  filterValueList?: string[];
  includeColumn: boolean;
})

Source from the content-addressed store, hash-verified

32}
33
34export const mapTreeOptions = ({
35 databaseList,
36 filterValueList,
37 includeColumn,
38}: {
39 databaseList: Database[];
40 filterValueList?: string[];
41 includeColumn: boolean;
42}) => {
43 const databaseNodes: DatabaseTreeOption<"databases">[] = [];
44 const filteredDatabaseList = filterValueList
45 ? databaseList.filter((database) =>
46 filterValueList.some(
47 (value) => value.split("/schemas/")[0] === database.name
48 )
49 )
50 : databaseList;
51 for (const database of filteredDatabaseList) {
52 const databaseNode: DatabaseTreeOption<"databases"> = {
53 level: "databases",
54 value: database.name,
55 label: extractDatabaseResourceName(database.name).databaseName,
56 isLeaf: false,
57 children: getSchemaOrTableTreeOptions({
58 database,
59 filterValueList,
60 includeColumn,
61 }),
62 };
63 if (!isUndefined(databaseNode.children)) {
64 databaseNode.isLeaf = databaseNode.children.length === 0;
65 }
66
67 databaseNodes.push(databaseNode);
68 }
69 return databaseNodes;
70};
71
72const getTableTreeOptions = ({
73 prefix,

Callers

nothing calls this directly

Calls 2

Tested by

no test coverage detected