mirror of
https://github.com/coder/coder.git
synced 2026-11-01 04:33:58 +08:00
26 lines
720 B
TypeScript
26 lines
720 B
TypeScript
import { API } from "#/api/api";
|
|
import { type Experiment, Experiments } from "#/api/typesGenerated";
|
|
import type { MetadataState } from "#/hooks/useEmbeddedMetadata";
|
|
import { cachedQuery } from "./util";
|
|
|
|
const experimentsKey = ["experiments"] as const;
|
|
|
|
export const experiments = (metadata: MetadataState<Experiment[]>) => {
|
|
return cachedQuery({
|
|
metadata,
|
|
queryKey: experimentsKey,
|
|
queryFn: () => API.getExperiments(),
|
|
});
|
|
};
|
|
|
|
export const availableExperiments = () => {
|
|
return {
|
|
queryKey: ["availableExperiments"],
|
|
queryFn: async () => API.getAvailableExperiments(),
|
|
};
|
|
};
|
|
|
|
export const isKnownExperiment = (experiment: string): boolean => {
|
|
return Experiments.includes(experiment as Experiment);
|
|
};
|