{"version":3,"file":"savedDesign-CMChA5Nm.js","sources":["../../../app/javascript/api/savedDesign.js"],"sourcesContent":["import api from \"./index\";\n\nwindow.lastPhotobookSaveTimestamp = null;\n\nconst allowSavePhotobook = parameters => {\n  const now = Date.now();\n  const allow =\n    parameters.add_to_cart ||\n    !window.lastPhotobookSaveTimestamp ||\n    now - window.lastPhotobookSaveTimestamp > 5000;\n  if (allow) {\n    window.lastPhotobookSaveTimestamp = now;\n  }\n\n  return allow;\n};\n\nexport default {\n  async createOrUpdate(\n    id,\n    design,\n    productId,\n    justSave,\n    postcardAddressId,\n    templatedPreviewImage\n  ) {\n    try {\n      if (id) {\n        const response = await api.put(`/saved_designs/${id}`, {\n          design,\n          just_save: justSave,\n          product_id: productId,\n          postcard_address_id: postcardAddressId,\n          templated_preview_image: templatedPreviewImage\n        });\n        return response;\n      }\n      const response = await api.post(\"/saved_designs/\", {\n        design,\n        just_save: justSave,\n        product_id: productId,\n        postcard_address_id: postcardAddressId,\n        templated_preview_image: templatedPreviewImage\n      });\n      return response;\n    } catch (error) {\n      return false;\n    }\n  },\n  async addCardToCart(id, parameters) {\n    try {\n      return await api.post(`/saved_designs/${id}/add_to_cart`, parameters);\n    } catch (error) {\n      return false;\n    }\n  },\n  async savePhotobook(id, parameters) {\n    try {\n      if (allowSavePhotobook(parameters)) {\n        return await api.post(\n          `/saved_designs/${id}/save_photobook`,\n          parameters\n        );\n      }\n\n      return false;\n    } catch (error) {\n      return false;\n    }\n  },\n  async index(page) {\n    try {\n      return await api.get(`/account/api/saved_designs?page=${page}`);\n    } catch (error) {\n      return false;\n    }\n  },\n  async duplicate(id) {\n    try {\n      return await api.post(`/account/api/saved_designs/${id}/duplicate`);\n    } catch (error) {\n      return false;\n    }\n  },\n  async delete(id) {\n    try {\n      return await api.delete(`/account/api/saved_designs/${id}`);\n    } catch (error) {\n      return false;\n    }\n  },\n  async updateName(id, name) {\n    try {\n      return await api.patch(`/account/api/saved_designs/${id}/update_name`, {\n        name\n      });\n    } catch (error) {\n      return false;\n    }\n  },\n  async addSample(id) {\n    try {\n      return await api.post(`/saved_designs/${id}/add_sample`);\n    } catch (error) {\n      return false;\n    }\n  },\n  async quickAddToCart(productId, design) {\n    try {\n      const response = await api.post(`/quick_add/${productId}`, {\n        design\n      });\n      return response;\n    } catch (error) {\n      return false;\n    }\n  },\n  async weddingAddOnReview(designId, quickAddIds = null) {\n    try {\n      let url;\n\n      if (quickAddIds && quickAddIds.length > 0) {\n        const queryString = quickAddIds\n          .map(id => {\n            return `quick_add_ids[]=${id}`;\n          })\n          .join(\"&\");\n\n        window.location = `${window.countryCode}/saved_designs/${designId}/review?${queryString}`;\n      } else {\n        url = `/saved_designs/${designId}/review.json`;\n      }\n\n      const response = await api.get(url);\n      return response;\n    } catch (error) {\n      return false;\n    }\n  }\n};\n"],"names":["allowSavePhotobook","parameters","now","allow","api","id","design","productId","justSave","postcardAddressId","templatedPreviewImage","page","name","designId","quickAddIds","url","queryString"],"mappings":"wCAEA,OAAO,2BAA6B,KAEpC,MAAMA,EAAqBC,GAAc,CACvC,MAAMC,EAAM,KAAK,IAAK,EAChBC,EACJF,EAAW,aACX,CAAC,OAAO,4BACRC,EAAM,OAAO,2BAA6B,IAC5C,OAAIC,IACF,OAAO,2BAA6BD,GAG/BC,CACT,EAEeC,EAAA,CACb,MAAM,eACJC,EACAC,EACAC,EACAC,EACAC,EACAC,EACA,CACA,GAAI,CACF,OAAIL,EACe,MAAMD,EAAI,IAAI,kBAAkBC,CAAE,GAAI,CACrD,OAAAC,EACA,UAAWE,EACX,WAAYD,EACZ,oBAAqBE,EACrB,wBAAyBC,CACnC,CAAS,EAGc,MAAMN,EAAI,KAAK,kBAAmB,CACjD,OAAAE,EACA,UAAWE,EACX,WAAYD,EACZ,oBAAqBE,EACrB,wBAAyBC,CACjC,CAAO,CAEF,MAAe,CACd,MAAO,EACb,CACG,EACD,MAAM,cAAcL,EAAIJ,EAAY,CAClC,GAAI,CACF,OAAO,MAAMG,EAAI,KAAK,kBAAkBC,CAAE,eAAgBJ,CAAU,CACrE,MAAe,CACd,MAAO,EACb,CACG,EACD,MAAM,cAAcI,EAAIJ,EAAY,CAClC,GAAI,CACF,OAAID,EAAmBC,CAAU,EACxB,MAAMG,EAAI,KACf,kBAAkBC,CAAE,kBACpBJ,CACD,EAGI,EACR,MAAe,CACd,MAAO,EACb,CACG,EACD,MAAM,MAAMU,EAAM,CAChB,GAAI,CACF,OAAO,MAAMP,EAAI,IAAI,mCAAmCO,CAAI,EAAE,CAC/D,MAAe,CACd,MAAO,EACb,CACG,EACD,MAAM,UAAUN,EAAI,CAClB,GAAI,CACF,OAAO,MAAMD,EAAI,KAAK,8BAA8BC,CAAE,YAAY,CACnE,MAAe,CACd,MAAO,EACb,CACG,EACD,MAAM,OAAOA,EAAI,CACf,GAAI,CACF,OAAO,MAAMD,EAAI,OAAO,8BAA8BC,CAAE,EAAE,CAC3D,MAAe,CACd,MAAO,EACb,CACG,EACD,MAAM,WAAWA,EAAIO,EAAM,CACzB,GAAI,CACF,OAAO,MAAMR,EAAI,MAAM,8BAA8BC,CAAE,eAAgB,CACrE,KAAAO,CACR,CAAO,CACF,MAAe,CACd,MAAO,EACb,CACG,EACD,MAAM,UAAUP,EAAI,CAClB,GAAI,CACF,OAAO,MAAMD,EAAI,KAAK,kBAAkBC,CAAE,aAAa,CACxD,MAAe,CACd,MAAO,EACb,CACG,EACD,MAAM,eAAeE,EAAWD,EAAQ,CACtC,GAAI,CAIF,OAHiB,MAAMF,EAAI,KAAK,cAAcG,CAAS,GAAI,CACzD,OAAAD,CACR,CAAO,CAEF,MAAe,CACd,MAAO,EACb,CACG,EACD,MAAM,mBAAmBO,EAAUC,EAAc,KAAM,CACrD,GAAI,CACF,IAAIC,EAEJ,GAAID,GAAeA,EAAY,OAAS,EAAG,CACzC,MAAME,EAAcF,EACjB,IAAIT,GACI,mBAAmBA,CAAE,EAC7B,EACA,KAAK,GAAG,EAEX,OAAO,SAAW,GAAG,OAAO,WAAW,kBAAkBQ,CAAQ,WAAWG,CAAW,EAC/F,MACQD,EAAM,kBAAkBF,CAAQ,eAIlC,OADiB,MAAMT,EAAI,IAAIW,CAAG,CAEnC,MAAe,CACd,MAAO,EACb,CACA,CACA"}