Files: 3ad00d6029fdc254261c83d438be1fe0dd4977bf / app / sync / initialize / clickHandler.js
546 bytesRaw
1 | const nest = require('depnest') |
2 | const openExternal = require('open-external') |
3 | |
4 | exports.gives = nest('app.sync.initialize') |
5 | |
6 | exports.needs = nest({ |
7 | 'app.async.catchLinkClick': 'first', |
8 | 'history.sync.push': 'first' |
9 | }) |
10 | |
11 | exports.create = (api) => { |
12 | return nest({ |
13 | 'app.sync.initialize': function initializeClickHandling () { |
14 | const target = document.body |
15 | |
16 | api.app.async.catchLinkClick(target, (link, { isExternal }) => { |
17 | if (isExternal) return openExternal(link) |
18 | |
19 | api.history.sync.push(link) |
20 | }) |
21 | } |
22 | }) |
23 | } |
24 |
Built with git-ssb-web