{"ast":null,"code":"import { createSlice } from '@reduxjs/toolkit';\nvar initialState = {\n  projects: [],\n  loading: false,\n  error: null\n};\nexport var projectsSlice = createSlice({\n  name: 'projects',\n  initialState: initialState,\n  reducers: {\n    addProject: function addProject(state, action) {\n      state.projects.push(action.payload);\n    },\n    updateProject: function updateProject(state, action) {\n      var index = state.projects.findIndex(function (p) {\n        return p.id === action.payload.id;\n      });\n      if (index !== -1) {\n        state.projects[index] = action.payload;\n      }\n    },\n    removeProject: function removeProject(state, action) {\n      state.projects = state.projects.filter(function (p) {\n        return p.id !== action.payload;\n      });\n    },\n    setLoading: function setLoading(state, action) {\n      state.loading = action.payload;\n    },\n    setError: function setError(state, action) {\n      state.error = action.payload;\n    }\n  }\n});\nvar _projectsSlice$action = projectsSlice.actions,\n  addProject = _projectsSlice$action.addProject,\n  updateProject = _projectsSlice$action.updateProject,\n  removeProject = _projectsSlice$action.removeProject,\n  setLoading = _projectsSlice$action.setLoading,\n  setError = _projectsSlice$action.setError;\nexport { addProject, updateProject, removeProject, setLoading, setError };","map":{"version":3,"names":["createSlice","initialState","projects","loading","error","projectsSlice","name","reducers","addProject","state","action","push","payload","updateProject","index","findIndex","p","id","removeProject","filter","setLoading","setError","_projectsSlice$action","actions"],"sources":["/Users/pmouli/Documents/GitHub.nosync/boots-strapper/mobile/src/store/projectsSlice.ts"],"sourcesContent":["import { createSlice, PayloadAction } from '@reduxjs/toolkit';\nimport { MobileRepositoryConfig } from '../types';\n\ninterface ProjectsState {\n  projects: MobileRepositoryConfig[];\n  loading: boolean;\n  error: string | null;\n}\n\nconst initialState: ProjectsState = {\n  projects: [],\n  loading: false,\n  error: null,\n};\n\nexport const projectsSlice = createSlice({\n  name: 'projects',\n  initialState,\n  reducers: {\n    addProject: (state, action: PayloadAction<MobileRepositoryConfig>) => {\n      state.projects.push(action.payload);\n    },\n    updateProject: (state, action: PayloadAction<MobileRepositoryConfig>) => {\n      const index = state.projects.findIndex(p => p.id === action.payload.id);\n      if (index !== -1) {\n        state.projects[index] = action.payload;\n      }\n    },\n    removeProject: (state, action: PayloadAction<string>) => {\n      state.projects = state.projects.filter(p => p.id !== action.payload);\n    },\n    setLoading: (state, action: PayloadAction<boolean>) => {\n      state.loading = action.payload;\n    },\n    setError: (state, action: PayloadAction<string | null>) => {\n      state.error = action.payload;\n    },\n  },\n});\n\nexport const { addProject, updateProject, removeProject, setLoading, setError } = projectsSlice.actions;"],"mappings":"AAAA,SAASA,WAAW,QAAuB,kBAAkB;AAS7D,IAAMC,YAA2B,GAAG;EAClCC,QAAQ,EAAE,EAAE;EACZC,OAAO,EAAE,KAAK;EACdC,KAAK,EAAE;AACT,CAAC;AAED,OAAO,IAAMC,aAAa,GAAGL,WAAW,CAAC;EACvCM,IAAI,EAAE,UAAU;EAChBL,YAAY,EAAZA,YAAY;EACZM,QAAQ,EAAE;IACRC,UAAU,EAAE,SAAZA,UAAUA,CAAGC,KAAK,EAAEC,MAA6C,EAAK;MACpED,KAAK,CAACP,QAAQ,CAACS,IAAI,CAACD,MAAM,CAACE,OAAO,CAAC;IACrC,CAAC;IACDC,aAAa,EAAE,SAAfA,aAAaA,CAAGJ,KAAK,EAAEC,MAA6C,EAAK;MACvE,IAAMI,KAAK,GAAGL,KAAK,CAACP,QAAQ,CAACa,SAAS,CAAC,UAAAC,CAAC;QAAA,OAAIA,CAAC,CAACC,EAAE,KAAKP,MAAM,CAACE,OAAO,CAACK,EAAE;MAAA,EAAC;MACvE,IAAIH,KAAK,KAAK,CAAC,CAAC,EAAE;QAChBL,KAAK,CAACP,QAAQ,CAACY,KAAK,CAAC,GAAGJ,MAAM,CAACE,OAAO;MACxC;IACF,CAAC;IACDM,aAAa,EAAE,SAAfA,aAAaA,CAAGT,KAAK,EAAEC,MAA6B,EAAK;MACvDD,KAAK,CAACP,QAAQ,GAAGO,KAAK,CAACP,QAAQ,CAACiB,MAAM,CAAC,UAAAH,CAAC;QAAA,OAAIA,CAAC,CAACC,EAAE,KAAKP,MAAM,CAACE,OAAO;MAAA,EAAC;IACtE,CAAC;IACDQ,UAAU,EAAE,SAAZA,UAAUA,CAAGX,KAAK,EAAEC,MAA8B,EAAK;MACrDD,KAAK,CAACN,OAAO,GAAGO,MAAM,CAACE,OAAO;IAChC,CAAC;IACDS,QAAQ,EAAE,SAAVA,QAAQA,CAAGZ,KAAK,EAAEC,MAAoC,EAAK;MACzDD,KAAK,CAACL,KAAK,GAAGM,MAAM,CAACE,OAAO;IAC9B;EACF;AACF,CAAC,CAAC;AAEK,IAAAU,qBAAA,GAA2EjB,aAAa,CAACkB,OAAO;EAAxFf,UAAU,GAAAc,qBAAA,CAAVd,UAAU;EAAEK,aAAa,GAAAS,qBAAA,CAAbT,aAAa;EAAEK,aAAa,GAAAI,qBAAA,CAAbJ,aAAa;EAAEE,UAAU,GAAAE,qBAAA,CAAVF,UAAU;EAAEC,QAAQ,GAAAC,qBAAA,CAARD,QAAQ;AAA2B,SAAAb,UAAA,EAAAK,aAAA,EAAAK,aAAA,EAAAE,UAAA,EAAAC,QAAA","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}