function enableSsm()

in frontend/src/pages/Configure/HeadNode.js [118:137]


function enableSsm(enable) {
  const iamPolicies = getState([...headNodePath, 'Iam', 'AdditionalIamPolicies']);
  if(enable) {
    if(iamPolicies && findFirst(iamPolicies, isSsmPolicy))
      return;
    updateState([...headNodePath, 'Iam', 'AdditionalIamPolicies'], (existing) =>
      {return [...(existing || []), {Policy: ssmPolicy}]}
    )
  } else {
    if(!iamPolicies || (iamPolicies && !findFirst(iamPolicies, isSsmPolicy)))
      return;
    if(iamPolicies.length === 1)
      clearState([...headNodePath, 'Iam'])
    else {
      updateState([...headNodePath, 'Iam', 'AdditionalIamPolicies'], (existing) =>
        existing.filter(p => {return !isSsmPolicy(p)})
      )
    }
  }
}