mirror of
https://github.com/fleetdm/fleet
synced 2026-05-08 09:40:49 +00:00
* Query Edit/Run page renders based on user role * Original UI for global admin/ global maintainer * New UI for global observer / team maintainer / team observer * New create new query UI for team maintainer * Styling matches Figma * Tests modified accordingly Styling Closes #859 Co-authored by: Sarah Gillespie @gillespi314 Tests co-authored by: @ghernandez345
49 lines
1.2 KiB
JavaScript
49 lines
1.2 KiB
JavaScript
const formChanged = (fields, query) => {
|
|
return (
|
|
query.name !== fields.name.value ||
|
|
query.description !== fields.description.value ||
|
|
query.query !== fields.query.value ||
|
|
// added 5/17
|
|
query.observer_can_run !== fields.observer_can_run.value
|
|
);
|
|
};
|
|
|
|
const canSaveAsNew = (fields, query = {}) => {
|
|
if (!fields.name.value && !fields.description.value) {
|
|
return true;
|
|
}
|
|
|
|
if (fields.name.value !== query.name) {
|
|
return true;
|
|
}
|
|
|
|
// added 5/17 canSaveAsNew returns true or false based on if observer can run has changed
|
|
if (fields.observer_can_run.value !== query.observer_can_run) {
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
};
|
|
|
|
const canSaveChanges = (fields, query = {}) => {
|
|
if (!query.name && !query.description) {
|
|
return false;
|
|
}
|
|
|
|
if (formChanged(fields, query)) {
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
};
|
|
|
|
const allPlatforms = { label: "All Platforms", value: "" };
|
|
const platformOptions = [
|
|
allPlatforms,
|
|
{ label: "macOS", value: "darwin" },
|
|
{ label: "Windows", value: "windows" },
|
|
{ label: "Ubuntu", value: "ubuntu" },
|
|
{ label: "Centos", value: "centos" },
|
|
];
|
|
|
|
export default { allPlatforms, canSaveAsNew, canSaveChanges, platformOptions };
|