mirror of
https://github.com/coder/coder.git
synced 2025-07-13 21:36:50 +00:00
make -B fmt lint
This commit is contained in:
@ -61,6 +61,7 @@ func (api *API) templateVersionPresetParameters(rw http.ResponseWriter, r *http.
|
|||||||
Message: "Internal error fetching template version presets.",
|
Message: "Internal error fetching template version presets.",
|
||||||
Detail: err.Error(),
|
Detail: err.Error(),
|
||||||
})
|
})
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
var res []codersdk.PresetParameter
|
var res []codersdk.PresetParameter
|
||||||
|
@ -376,6 +376,7 @@ func (b *Builder) buildTx(authFunc func(action policy.Action, object rbac.Object
|
|||||||
Reason: b.reason,
|
Reason: b.reason,
|
||||||
Deadline: time.Time{}, // set by provisioner upon completion
|
Deadline: time.Time{}, // set by provisioner upon completion
|
||||||
MaxDeadline: 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 {
|
if err != nil {
|
||||||
code := http.StatusInternalServerError
|
code := http.StatusInternalServerError
|
||||||
|
@ -64,8 +64,8 @@ const CreateWorkspacePage: FC = () => {
|
|||||||
: { enabled: false },
|
: { enabled: false },
|
||||||
);
|
);
|
||||||
const templateVersionPresetParametersQuery = useQuery(
|
const templateVersionPresetParametersQuery = useQuery(
|
||||||
templateVersionPresetsQuery.data
|
templateQuery.data
|
||||||
? templateVersionPresetParameters(templateVersionPresetsQuery.data)
|
? templateVersionPresetParameters(templateQuery.data.active_version_id)
|
||||||
: { enabled: false },
|
: { enabled: false },
|
||||||
);
|
);
|
||||||
const permissionsQuery = useQuery(
|
const permissionsQuery = useQuery(
|
||||||
|
@ -6,6 +6,7 @@ import { Alert } from "components/Alert/Alert";
|
|||||||
import { ErrorAlert } from "components/Alert/ErrorAlert";
|
import { ErrorAlert } from "components/Alert/ErrorAlert";
|
||||||
import { Avatar } from "components/Avatar/Avatar";
|
import { Avatar } from "components/Avatar/Avatar";
|
||||||
import { Button } from "components/Button/Button";
|
import { Button } from "components/Button/Button";
|
||||||
|
import { SelectFilter } from "components/Filter/SelectFilter";
|
||||||
import {
|
import {
|
||||||
FormFields,
|
FormFields,
|
||||||
FormFooter,
|
FormFooter,
|
||||||
@ -43,7 +44,6 @@ import type {
|
|||||||
} from "./CreateWorkspacePage";
|
} from "./CreateWorkspacePage";
|
||||||
import { ExternalAuthButton } from "./ExternalAuthButton";
|
import { ExternalAuthButton } from "./ExternalAuthButton";
|
||||||
import type { CreateWSPermissions } from "./permissions";
|
import type { CreateWSPermissions } from "./permissions";
|
||||||
import { SelectFilter } from "components/Filter/SelectFilter";
|
|
||||||
|
|
||||||
export const Language = {
|
export const Language = {
|
||||||
duplicationWarning:
|
duplicationWarning:
|
||||||
@ -150,28 +150,19 @@ export const CreateWorkspacePageView: FC<CreateWorkspacePageViewProps> = ({
|
|||||||
[autofillParameters],
|
[autofillParameters],
|
||||||
);
|
);
|
||||||
|
|
||||||
const presetOptions = [
|
const presetOptions = useMemo(() => {
|
||||||
|
return [
|
||||||
{ label: "None", value: "" },
|
{ label: "None", value: "" },
|
||||||
...presets.map((preset) => ({
|
...presets.map((preset) => ({
|
||||||
label: preset.Name,
|
label: preset.Name,
|
||||||
value: preset.ID,
|
value: preset.ID,
|
||||||
})),
|
})),
|
||||||
];
|
];
|
||||||
|
}, [presets]);
|
||||||
|
|
||||||
const [selectedPresetIndex, setSelectedPresetIndex] = useState(0);
|
const [selectedPresetIndex, setSelectedPresetIndex] = useState(0);
|
||||||
|
|
||||||
useEffect(() => {
|
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 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 presets are defined for a template version with no params?
|
||||||
// TODO (sasswart): test case: what if a non active version is selected?
|
// 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?
|
// 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 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) {
|
for (const param of selectedPresetParameters) {
|
||||||
const paramIndex = parameters.findIndex((p) => p.name === param.Name);
|
const paramIndex = parameters.findIndex((p) => p.name === param.Name);
|
||||||
if (paramIndex !== -1) {
|
if (paramIndex !== -1) {
|
||||||
form.setFieldValue(`rich_parameter_values.${paramIndex}`, {
|
form.setFieldValue(`rich_parameter_values.${paramIndex}`, {
|
||||||
name: param.Name,
|
name: param.Name,
|
||||||
value: param.Value
|
value: param.Value,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, [selectedPresetIndex, presetParameters]);
|
}, [selectedPresetIndex, presetParameters, presetOptions, parameters, form]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Margins size="medium">
|
<Margins size="medium">
|
||||||
|
Reference in New Issue
Block a user