Files: 2b05be8ee023fdd9580d6a845ba074a425756685 / app / sync / location-id.js
586 bytesRaw
1 | const nest = require('depnest') |
2 | const get = require('lodash/get') |
3 | const { isMsg } = require('ssb-ref') |
4 | |
5 | exports.gives = nest({ 'app.sync.locationId': true }) |
6 | |
7 | exports.create = function (api) { |
8 | return nest('app.sync.locationId', locationId) |
9 | |
10 | function locationId (location) { |
11 | if (typeof location === 'string') return location |
12 | |
13 | if (isMsg(location.key)) { |
14 | // for all messages make the thread root key the 'locationId' |
15 | const key = get(location, 'value.content.root', location.key) |
16 | return JSON.stringify({ key }) |
17 | } |
18 | |
19 | return JSON.stringify(location) |
20 | } |
21 | } |
22 |
Built with git-ssb-web