make -B fmt lint

This commit is contained in:
Sas Swart
2025-01-24 08:07:24 +00:00
parent bf9e0a4749
commit 8d2a8f1527
4 changed files with 39 additions and 36 deletions

View File

@ -61,6 +61,7 @@ func (api *API) templateVersionPresetParameters(rw http.ResponseWriter, r *http.
Message: "Internal error fetching template version presets.",
Detail: err.Error(),
})
return
}
var res []codersdk.PresetParameter

View File

@ -376,6 +376,7 @@ func (b *Builder) buildTx(authFunc func(action policy.Action, object rbac.Object
Reason: b.reason,
Deadline: time.Time{}, // set by provisioner upon completion
MaxDeadline: time.Time{}, // set by provisioner upon completion
TemplateVersionPresetID: uuid.NullUUID{}, // TODO (sasswart): add this in from the caller
})
if err != nil {
code := http.StatusInternalServerError

View File

@ -64,8 +64,8 @@ const CreateWorkspacePage: FC = () => {
: { enabled: false },
);
const templateVersionPresetParametersQuery = useQuery(
templateVersionPresetsQuery.data
? templateVersionPresetParameters(templateVersionPresetsQuery.data)
templateQuery.data
? templateVersionPresetParameters(templateQuery.data.active_version_id)
: { enabled: false },
);
const permissionsQuery = useQuery(

View File

@ -6,6 +6,7 @@ import { Alert } from "components/Alert/Alert";
import { ErrorAlert } from "components/Alert/ErrorAlert";
import { Avatar } from "components/Avatar/Avatar";
import { Button } from "components/Button/Button";
import { SelectFilter } from "components/Filter/SelectFilter";
import {
FormFields,
FormFooter,
@ -43,7 +44,6 @@ import type {
} from "./CreateWorkspacePage";
import { ExternalAuthButton } from "./ExternalAuthButton";
import type { CreateWSPermissions } from "./permissions";
import { SelectFilter } from "components/Filter/SelectFilter";
export const Language = {
duplicationWarning:
@ -150,28 +150,19 @@ export const CreateWorkspacePageView: FC<CreateWorkspacePageViewProps> = ({
[autofillParameters],
);
const presetOptions = [
const presetOptions = useMemo(() => {
return [
{ label: "None", value: "" },
...presets.map((preset) => ({
label: preset.Name,
value: preset.ID,
})),
];
}, [presets]);
const [selectedPresetIndex, setSelectedPresetIndex] = useState(0);
useEffect(() => {
if (!presetParameters) {
return;
}
const selectedPreset = presetOptions[selectedPresetIndex];
console.log("selectedPreset", selectedPreset);
const selectedPresetParameters = presetParameters.filter(
(param) => param.PresetID === selectedPreset.value,
);
console.log("selectedPresetParameters", selectedPresetParameters);
// TODO (sasswart): test case: what if immutable parameters are used in the preset?
// TODO (sasswart): test case: what if presets are defined for a template version with no params?
// TODO (sasswart): test case: what if a non active version is selected?
@ -180,16 +171,26 @@ export const CreateWorkspacePageView: FC<CreateWorkspacePageViewProps> = ({
// TODO (sasswart): test case: if we move from preset to no preset, do we reset the params?
// If so, how should it behave? Reset to initial value? reset to last set value?
if (!presetParameters) {
return;
}
const selectedPreset = presetOptions[selectedPresetIndex];
const selectedPresetParameters = presetParameters.filter(
(param) => param.PresetID === selectedPreset.value,
);
for (const param of selectedPresetParameters) {
const paramIndex = parameters.findIndex((p) => p.name === param.Name);
if (paramIndex !== -1) {
form.setFieldValue(`rich_parameter_values.${paramIndex}`, {
name: param.Name,
value: param.Value
value: param.Value,
});
}
}
}, [selectedPresetIndex, presetParameters]);
}, [selectedPresetIndex, presetParameters, presetOptions, parameters, form]);
return (
<Margins size="medium">