MCPcopy
hub / github.com/antonycourtney/tad / mkColValsLoader

Function mkColValsLoader

packages/tadviewer/src/components/FilterEditorRow.tsx:28–50  ·  view source on GitHub ↗
(
  viewState: ViewState,
  columnId: string
)

Source from the content-addressed store, hash-verified

26};
27
28const mkColValsLoader = (
29 viewState: ViewState,
30 columnId: string
31): OptionsLoader => {
32 const dbc = viewState.dbc;
33 const baseQuery = viewState.baseQuery;
34 return async (input: string): Promise<OptionsRet> => {
35 let dq = baseQuery.distinct(columnId);
36 if (input.length > 0) {
37 dq = dq.filter(reltab.and().contains(col(columnId), constVal(input)));
38 }
39 const qres = await dbc.evalQuery(dq, 0, 50);
40 const colData = qres.rowData
41 .map((r) => r[columnId])
42 .filter((v) => v != null);
43 const options: Option[] = colData.map((cv) => ({
44 value: cv as string,
45 label: cv as string,
46 }));
47 console.log('colValsLoader: input: "', input, '", returning: ', options);
48 return options;
49 };
50};
51
52const mkRelExp = (
53 columnId: string,

Callers 1

FilterEditorRowFunction · 0.85

Calls 6

colFunction · 0.85
constValFunction · 0.85
distinctMethod · 0.80
filterMethod · 0.80
containsMethod · 0.80
evalQueryMethod · 0.65

Tested by

no test coverage detected