Initial Commit

Co-authored-by: Subin <subinthattaparambil@gmail.com>
Co-authored-by: Manoj <manojmj92@gmail.com>
Co-authored-by: Nithin <webofnithin@gmail.com>
This commit is contained in:
Pranav Raj Sreepuram
2019-08-14 15:18:44 +05:30
commit 2a34255e0b
537 changed files with 27318 additions and 0 deletions

View File

@@ -0,0 +1,99 @@
/* eslint no-console: 0 */
/* global axios */
/* eslint no-undef: "error" */
/* eslint no-unused-expressions: ["error", { "allowShortCircuit": true }] */
import endPoints from '../endPoints';
export default {
fetchConversation(id) {
const urlData = endPoints('conversations')(id);
const fetchPromise = new Promise((resolve, reject) => {
axios.get(urlData.url)
.then((response) => {
resolve(response);
})
.catch((error) => {
reject(Error(error));
});
});
return fetchPromise;
},
toggleStatus(id) {
const urlData = endPoints('resolveConversation')(id);
const fetchPromise = new Promise((resolve, reject) => {
axios.post(urlData.url)
.then((response) => {
resolve(response);
})
.catch((error) => {
reject(Error(error));
});
});
return fetchPromise;
},
assignAgent([id, agentId]) {
const urlData = endPoints('assignAgent')(id, agentId);
const fetchPromise = new Promise((resolve, reject) => {
axios.post(urlData.url)
.then((response) => {
resolve(response);
})
.catch((error) => {
reject(Error(error));
});
});
return fetchPromise;
},
markSeen({ inboxId, senderId }) {
const urlData = endPoints('fbMarkSeen');
const fetchPromise = new Promise((resolve, reject) => {
axios.post(urlData.url, {
inbox_id: inboxId,
sender_id: senderId,
})
.then((response) => {
resolve(response);
})
.catch((error) => {
reject(Error(error));
});
});
return fetchPromise;
},
fbTyping({ flag, inboxId, senderId }) {
const urlData = endPoints('fbTyping')(flag);
const fetchPromise = new Promise((resolve, reject) => {
axios.post(urlData.url, {
inbox_id: inboxId,
sender_id: senderId,
})
.then((response) => {
resolve(response);
})
.catch((error) => {
reject(Error(error));
});
});
return fetchPromise;
},
markMessageRead({ id, lastSeen }) {
const urlData = endPoints('markMessageRead')(id);
urlData.params.agent_last_seen_at = lastSeen;
const fetchPromise = new Promise((resolve, reject) => {
axios.post(urlData.url, urlData.params)
.then((response) => {
resolve(response);
})
.catch((error) => {
reject(Error(error));
});
});
return fetchPromise;
},
};

View File

@@ -0,0 +1,33 @@
/* eslint no-console: 0 */
/* global axios */
/* eslint no-undef: "error" */
/* eslint no-unused-expressions: ["error", { "allowShortCircuit": true }] */
import endPoints from '../endPoints';
export default {
fetchAllConversations(params, callback) {
const urlData = endPoints('getInbox');
if (params.inbox !== 0) {
urlData.params.inbox_id = params.inbox;
} else {
urlData.params.inbox_id = null;
}
urlData.params = {
...urlData.params,
conversation_status_id: params.convStatus,
assignee_type_id: params.assigneeStatus,
};
axios.get(urlData.url, {
params: urlData.params,
})
.then((response) => {
callback(response);
})
.catch((error) => {
console.log(error);
});
},
};

View File

@@ -0,0 +1,54 @@
/* eslint no-console: 0 */
/* global axios */
/* eslint no-undef: "error" */
/* eslint no-unused-expressions: ["error", { "allowShortCircuit": true }] */
import endPoints from '../endPoints';
export default {
sendMessage([conversationId, message]) {
const urlData = endPoints('sendMessage')(conversationId, message);
const fetchPromise = new Promise((resolve, reject) => {
axios.post(urlData.url, urlData.params)
.then((response) => {
resolve(response);
})
.catch((error) => {
reject(Error(error));
});
});
return fetchPromise;
},
addPrivateNote([conversationId, message]) {
const urlData = endPoints('addPrivateNote')(conversationId, message);
const fetchPromise = new Promise((resolve, reject) => {
axios.post(urlData.url, urlData.params)
.then((response) => {
resolve(response);
})
.catch((error) => {
reject(Error(error));
});
});
return fetchPromise;
},
fetchPreviousMessages({ id, before }) {
const urlData = endPoints('conversations')(id);
urlData.params.before = before;
const fetchPromise = new Promise((resolve, reject) => {
axios.get(urlData.url, {
params: urlData.params,
})
.then((response) => {
resolve(response);
})
.catch((error) => {
reject(Error(error));
});
});
return fetchPromise;
},
};