mirror of
https://github.com/Qortal/qortal-mobile.git
synced 2025-04-18 17:35:53 +00:00
cases
This commit is contained in:
parent
8afc3789c9
commit
797da47763
@ -6,6 +6,8 @@ import {
|
||||
getLTCBalance,
|
||||
getNameInfo,
|
||||
getUserInfo,
|
||||
inviteToGroup,
|
||||
saveTempPublish,
|
||||
sendCoin,
|
||||
walletVersion,
|
||||
} from "./background";
|
||||
@ -230,4 +232,58 @@ export async function balanceCase(request, event) {
|
||||
event.origin
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export async function inviteToGroupCase(request, event) {
|
||||
try {
|
||||
const { groupId, qortalAddress, inviteTime } = request.payload;
|
||||
const response = await inviteToGroup({groupId, qortalAddress, inviteTime});
|
||||
|
||||
event.source.postMessage(
|
||||
{
|
||||
requestId: request.requestId,
|
||||
action: "inviteToGroup",
|
||||
payload: response,
|
||||
type: "backgroundMessageResponse",
|
||||
},
|
||||
event.origin
|
||||
);
|
||||
} catch (error) {
|
||||
event.source.postMessage(
|
||||
{
|
||||
requestId: request.requestId,
|
||||
action: "inviteToGroup",
|
||||
error: error?.message,
|
||||
type: "backgroundMessageResponse",
|
||||
},
|
||||
event.origin
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export async function saveTempPublishCase(request, event) {
|
||||
try {
|
||||
const { data, key } = request.payload;
|
||||
const response = await saveTempPublish({data, key});
|
||||
|
||||
event.source.postMessage(
|
||||
{
|
||||
requestId: request.requestId,
|
||||
action: "saveTempPublish",
|
||||
payload: response,
|
||||
type: "backgroundMessageResponse",
|
||||
},
|
||||
event.origin
|
||||
);
|
||||
} catch (error) {
|
||||
event.source.postMessage(
|
||||
{
|
||||
requestId: request.requestId,
|
||||
action: "saveTempPublish",
|
||||
error: error?.message,
|
||||
type: "backgroundMessageResponse",
|
||||
},
|
||||
event.origin
|
||||
);
|
||||
}
|
||||
}
|
@ -28,7 +28,7 @@ import { validateAddress } from "./utils/validateAddress";
|
||||
import { Sha256 } from "asmcrypto.js";
|
||||
import { TradeBotRespondMultipleRequest } from "./transactions/TradeBotRespondMultipleRequest";
|
||||
import { RESOURCE_TYPE_NUMBER_GROUP_CHAT_REACTIONS } from "./constants/resourceTypes";
|
||||
import { balanceCase, decryptWalletCase, getWalletInfoCase, ltcBalanceCase, nameCase, sendCoinCase, userInfoCase, validApiCase, versionCase } from './background-cases';
|
||||
import { balanceCase, decryptWalletCase, getWalletInfoCase, inviteToGroupCase, ltcBalanceCase, nameCase, saveTempPublishCase, sendCoinCase, userInfoCase, validApiCase, versionCase } from './background-cases';
|
||||
|
||||
export function cleanUrl(url) {
|
||||
return url?.replace(/^(https?:\/\/)?(www\.)?/, '');
|
||||
@ -2274,7 +2274,7 @@ async function createGroup({
|
||||
throw new Error("Transaction was not able to be processed");
|
||||
return res;
|
||||
}
|
||||
async function inviteToGroup({ groupId, qortalAddress, inviteTime }) {
|
||||
export async function inviteToGroup({ groupId, qortalAddress, inviteTime }) {
|
||||
const address = await getNameOrAddress(qortalAddress);
|
||||
if (!address) throw new Error("Cannot find user");
|
||||
const lastReference = await getLastRef();
|
||||
@ -2616,7 +2616,7 @@ async function getTempPublish() {
|
||||
}
|
||||
}
|
||||
|
||||
async function saveTempPublish({ data, key }) {
|
||||
export async function saveTempPublish({ data, key }) {
|
||||
const existingTemp = await getTempPublish();
|
||||
const wallet = await getSaveWallet();
|
||||
const address = wallet.address0;
|
||||
@ -2870,10 +2870,15 @@ function setupMessageListener() {
|
||||
case "ltcBalance":
|
||||
ltcBalanceCase(request, event)
|
||||
break;
|
||||
case "sendCoin":
|
||||
sendCoinCase(request, event)
|
||||
case "sendCoin":
|
||||
sendCoinCase(request, event)
|
||||
break;
|
||||
|
||||
case "inviteToGroup":
|
||||
inviteToGroupCase(request, event)
|
||||
break;
|
||||
case "saveTempPublish":
|
||||
saveTempPublishCase(request, event)
|
||||
break;
|
||||
default:
|
||||
console.error("Unknown action:", request.action);
|
||||
}
|
||||
|
@ -48,22 +48,21 @@ export const requestQueuePublishedAccouncements = new RequestQueueWithPromise(
|
||||
|
||||
export const saveTempPublish = async ({ data, key }: any) => {
|
||||
return new Promise((res, rej) => {
|
||||
chrome?.runtime?.sendMessage(
|
||||
{
|
||||
action: "saveTempPublish",
|
||||
payload: {
|
||||
data,
|
||||
key,
|
||||
},
|
||||
},
|
||||
(response) => {
|
||||
window.sendMessage("saveTempPublish", {
|
||||
data,
|
||||
key,
|
||||
})
|
||||
.then((response) => {
|
||||
if (!response?.error) {
|
||||
res(response);
|
||||
return;
|
||||
}
|
||||
rej(response.error);
|
||||
}
|
||||
);
|
||||
})
|
||||
.catch((error) => {
|
||||
rej(error.message || "An error occurred");
|
||||
});
|
||||
|
||||
});
|
||||
};
|
||||
|
||||
|
@ -26,17 +26,12 @@ export const InviteMember = ({ groupId, setInfoSnack, setOpenSnack, show }) => {
|
||||
setIsLoadingInvite(true)
|
||||
if (!expiryTime || !value) return;
|
||||
new Promise((res, rej) => {
|
||||
chrome?.runtime?.sendMessage(
|
||||
{
|
||||
action: "inviteToGroup",
|
||||
payload: {
|
||||
groupId,
|
||||
qortalAddress: value,
|
||||
inviteTime: +expiryTime,
|
||||
},
|
||||
},
|
||||
(response) => {
|
||||
|
||||
window.sendMessage("inviteToGroup", {
|
||||
groupId,
|
||||
qortalAddress: value,
|
||||
inviteTime: +expiryTime,
|
||||
})
|
||||
.then((response) => {
|
||||
if (!response?.error) {
|
||||
setInfoSnack({
|
||||
type: "success",
|
||||
@ -44,9 +39,9 @@ export const InviteMember = ({ groupId, setInfoSnack, setOpenSnack, show }) => {
|
||||
});
|
||||
setOpenSnack(true);
|
||||
res(response);
|
||||
|
||||
|
||||
setValue("");
|
||||
return
|
||||
return;
|
||||
}
|
||||
setInfoSnack({
|
||||
type: "error",
|
||||
@ -54,8 +49,16 @@ export const InviteMember = ({ groupId, setInfoSnack, setOpenSnack, show }) => {
|
||||
});
|
||||
setOpenSnack(true);
|
||||
rej(response.error);
|
||||
}
|
||||
);
|
||||
})
|
||||
.catch((error) => {
|
||||
setInfoSnack({
|
||||
type: "error",
|
||||
message: error?.message || "An error occurred",
|
||||
});
|
||||
setOpenSnack(true);
|
||||
rej(error);
|
||||
});
|
||||
|
||||
});
|
||||
} catch (error) {} finally {
|
||||
setIsLoadingInvite(false)
|
||||
|
@ -76,40 +76,54 @@ export const ListOfJoinRequests = ({ groupId, setInfoSnack, setOpenSnack, show }
|
||||
})
|
||||
setIsLoadingAccept(true)
|
||||
await new Promise((res, rej)=> {
|
||||
chrome?.runtime?.sendMessage({ action: "inviteToGroup", payload: {
|
||||
groupId,
|
||||
qortalAddress: address,
|
||||
inviteTime: 10800,
|
||||
}}, (response) => {
|
||||
|
||||
window.sendMessage("inviteToGroup", {
|
||||
groupId,
|
||||
qortalAddress: address,
|
||||
inviteTime: 10800,
|
||||
})
|
||||
.then((response) => {
|
||||
if (!response?.error) {
|
||||
setIsLoadingAccept(false)
|
||||
setIsLoadingAccept(false);
|
||||
setInfoSnack({
|
||||
type: "success",
|
||||
message: "Successfully accepted join request. It may take a couple of minutes for the changes to propagate",
|
||||
});
|
||||
setOpenSnack(true);
|
||||
handlePopoverClose();
|
||||
res(response)
|
||||
setTxList((prev)=> [{
|
||||
...response,
|
||||
type: 'join-request-accept',
|
||||
label: `Accepted join request: awaiting confirmation`,
|
||||
labelDone: `User successfully joined!`,
|
||||
done: false,
|
||||
groupId,
|
||||
qortalAddress: address
|
||||
|
||||
}, ...prev])
|
||||
return
|
||||
res(response);
|
||||
|
||||
setTxList((prev) => [
|
||||
{
|
||||
...response,
|
||||
type: 'join-request-accept',
|
||||
label: `Accepted join request: awaiting confirmation`,
|
||||
labelDone: `User successfully joined!`,
|
||||
done: false,
|
||||
groupId,
|
||||
qortalAddress: address,
|
||||
},
|
||||
...prev,
|
||||
]);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
setInfoSnack({
|
||||
type: "error",
|
||||
message: response?.error,
|
||||
});
|
||||
setOpenSnack(true);
|
||||
rej(response.error)
|
||||
rej(response.error);
|
||||
})
|
||||
.catch((error) => {
|
||||
setInfoSnack({
|
||||
type: "error",
|
||||
message: error?.message || "An error occurred",
|
||||
});
|
||||
setOpenSnack(true);
|
||||
rej(error);
|
||||
});
|
||||
|
||||
})
|
||||
} catch (error) {
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user