All files / app/assets/javascripts/terraform/graphql resolvers.js

0% Statements 0/8
0% Branches 0/10
0% Functions 0/5
0% Lines 0/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46                                                                                           
import TerraformState from './fragments/state.fragment.graphql';
 
export default {
  TerraformState: {
    _showDetails: (state) => {
      // eslint-disable-next-line no-underscore-dangle
      return state._showDetails || false;
    },
    errorMessages: (state) => {
      return state.errorMessages || [];
    },
    loadingLock: (state) => {
      return state.loadingLock || false;
    },
    loadingRemove: (state) => {
      return state.loadingRemove || false;
    },
  },
  Mutation: {
    addDataToTerraformState: (_, { terraformState }, { client }) => {
      const fragmentData = {
        id: terraformState.id,
        fragment: TerraformState,
        // eslint-disable-next-line @gitlab/require-i18n-strings
        fragmentName: 'State',
      };
 
      const previousTerraformState = client.readFragment(fragmentData);
 
      if (previousTerraformState) {
        client.writeFragment({
          ...fragmentData,
          data: {
            ...previousTerraformState,
            // eslint-disable-next-line no-underscore-dangle
            _showDetails: terraformState._showDetails,
            errorMessages: terraformState.errorMessages,
            loadingLock: terraformState.loadingLock,
            loadingRemove: terraformState.loadingRemove,
          },
        });
      }
    },
  },
};