Get rid of promisify, ssb is already promisified

This commit is contained in:
Rogerio Chaves 2020-04-06 21:19:02 +02:00
parent 9f0992c592
commit 929a46d8cb
No known key found for this signature in database
GPG Key ID: E6AF5440509B1D94
3 changed files with 49 additions and 48 deletions

View File

@ -5,7 +5,7 @@ const bodyParser = require("body-parser");
const Client = require("ssb-client");
const ssbKeys = require("ssb-keys");
const ssbConfig = require("./ssb-config");
const { promisify, asyncRouter } = require("./utils");
const { asyncRouter } = require("./utils");
const queries = require("./queries");
const serveBlobs = require("./serve-blobs");
@ -19,7 +19,7 @@ let ssbSecret = ssbKeys.loadOrCreateSync(
);
Client(ssbSecret, ssbConfig, async (err, server) => {
if (err) throw err;
const whoami = await promisify(server.whoami);
const whoami = await server.whoami();
context.profile = await queries.getProfile(server, whoami.id);
ssbServer = server;
@ -90,7 +90,7 @@ router.get("/profile/:id", async (req, res) => {
});
router.post("/publish", async (req, res) => {
await promisify(ssbServer.publish, {
await ssbServer.publish({
type: "post",
text: req.body.message,
root: context.profile.id,
@ -102,7 +102,7 @@ router.post("/publish", async (req, res) => {
router.post("/profile/:id/publish", async (req, res) => {
const id = req.params.id;
await promisify(ssbServer.publish, {
await ssbServer.publish({
type: "post",
text: req.body.message,
root: id,
@ -112,8 +112,8 @@ router.post("/profile/:id/publish", async (req, res) => {
});
router.get("/pubs", async (_req, res) => {
const invite = await promisify(ssbServer.invite.create, { uses: 10 });
const peers = await promisify(ssbServer.gossip.peers);
const invite = await ssbServer.invite.create({ uses: 10 });
const peers = await ssbServer.gossip.peers();
res.render("pubs", { invite, peers });
});
@ -121,7 +121,7 @@ router.get("/pubs", async (_req, res) => {
router.post("/pubs/add", async (req, res) => {
const inviteCode = req.body.invite_code;
await promisify(ssbServer.invite.accept, inviteCode);
await ssbServer.invite.accept(inviteCode);
res.redirect("/");
});
@ -134,7 +134,7 @@ router.post("/about", async (req, res) => {
const name = req.body.name;
if (name != context.profile.name) {
await promisify(ssbServer.publish, {
await ssbServer.publish({
type: "about",
about: context.profile.id,
name: name,

View File

@ -1,48 +1,51 @@
const { promisify } = require("./utils");
const pull = require("pull-stream");
const cat = require("pull-cat");
const debug = require("debug")("queries");
const paramap = require("pull-paramap");
const latestOwnerValue = (ssbServer) => ({ key, dest }, cb) => {
let value = null;
pull(
ssbServer.query.read({
reverse: true,
query: [
{
$filter: {
value: {
author: dest,
content: { type: "about", about: dest },
const latestOwnerValue = (ssbServer, { key, dest }) =>
new Promise((resolve, reject) => {
let value = null;
pull(
ssbServer.query.read({
reverse: true,
query: [
{
$filter: {
value: {
author: dest,
content: { type: "about", about: dest },
},
},
},
],
}),
pull.filter((msg) => {
return (
msg.value.content &&
key in msg.value.content &&
!(msg.value.content[key] && msg.value.content[key].remove)
);
}),
pull.take(1),
pull.drain(
(msg) => {
value = msg.value.content[key];
},
],
}),
pull.filter((msg) => {
return (
msg.value.content &&
key in msg.value.content &&
!(msg.value.content[key] && msg.value.content[key].remove)
);
}),
pull.take(1),
pull.drain(
(msg) => {
value = msg.value.content[key];
},
(err) => {
if (err) return cb(err);
if (!value) {
ssbServer.about.latestValue({ key, dest }, cb);
} else {
cb(null, value);
(err) => {
if (err) return reject(err);
if (!value) {
ssbServer.about
.latestValue({ key, dest })
.then(resolve)
.catch(reject);
} else {
resolve(value);
}
}
}
)
);
};
)
);
});
const mapProfiles = (ssbServer) => (data, callback) => {
const authorPromise = getProfile(ssbServer, data.value.author);
@ -211,8 +214,7 @@ let profileCache = {};
const getProfile = async (ssbServer, id) => {
if (profileCache[id]) return profileCache[id];
let getKey = (key) =>
promisify(latestOwnerValue(ssbServer), { key, dest: id });
let getKey = (key) => latestOwnerValue(ssbServer, { key, dest: id });
let [name, image, description] = await Promise.all([
getKey("name"),

View File

@ -66,7 +66,7 @@ h1 {
text-transform: uppercase;
font-weight: bold;
line-height: 1.3em;
margin: 0;
margin: 10px 0 0 0;
}
.wall {
@ -105,5 +105,4 @@ h1 {
.profile-pic {
width: 300px;
padding-bottom: 10px;
}