github.com/easysoft/zendata@v0.0.0-20240513203326-705bd5a7fd67/ui/src/store/modules/mock.js (about)

     1  import {CURR_MOCK_ITEM, CURR_DATA_SRC, CURR_MOCK_SRCS} from "@/store/mutation-types";
     2  import {getMockDataSrc, getMockSataSrc, getPreviewData, listSampleSrc, saveMock} from "@/api/mock";
     3  
     4  const mock = {
     5    state: {
     6      mockItem: {},
     7      mockSrcs: [],
     8      dataSrc: {}
     9    },
    10    mutations: {
    11      [CURR_MOCK_ITEM]: (state, item = {}) => {
    12        state.mockItem = item
    13      },
    14      [CURR_MOCK_SRCS]: (state, item = {}) => {
    15        state.mockSrcs = item
    16      },
    17      [CURR_DATA_SRC]: (state, data = {}) => {
    18        state.dataSrc = data
    19      },
    20    },
    21    actions: {
    22      saveMockItem ({ commit }, item) {
    23        return new Promise((resolve, reject) => {
    24          saveMock(item).then((json) => {
    25              resolve(json)
    26            }).catch(e => {
    27              reject(e)
    28            })
    29        })
    30      },
    31  
    32      previewMockItem ({ commit }, item) {
    33        return new Promise((resolve, reject) => {
    34          if (!item) {
    35            commit(CURR_MOCK_ITEM, null)
    36            resolve()
    37            return
    38          }
    39  
    40          listSampleSrc(item.id).then((json) => {
    41            commit(CURR_MOCK_SRCS, json.data)
    42          })
    43  
    44          getPreviewData(item.id).then((json) => {
    45            commit(CURR_MOCK_ITEM, json.data)
    46  
    47            const dataSrc = getMockDataSrc(json.data.item.paths)
    48            commit(CURR_DATA_SRC, dataSrc)
    49  
    50            resolve()
    51          }).catch(e => {
    52            reject(e)
    53          })
    54  
    55        })
    56      },
    57    }
    58  }
    59  
    60  export default mock