Welcome to mirror list, hosted at ThFree Co, Russian Federation.

resolvers.js « graphql « terraform « javascripts « assets « app - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: d27379bdd9fd22fd6ab235062f6db278715c3398 (plain)
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
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,
          },
        });
      }
    },
  },
};