git ssb

16+

Dominic / patchbay



Tree: 5c866da4bc329c8a371cb24ee975d3c8eeab9c3c

Files: 5c866da4bc329c8a371cb24ee975d3c8eeab9c3c / app / html / settings / default-tabs.js

1090 bytesRaw
1const nest = require('depnest')
2const { h, computed } = require('mutant')
3
4exports.gives = nest({
5 'app.html.settings': true
6})
7
8exports.needs = nest({
9 'app.html.settings': 'map',
10 'settings.obs.get': 'first',
11 'settings.sync.set': 'first'
12})
13
14exports.create = function (api) {
15 return nest({
16 'app.html.settings': defaultTabs
17 })
18
19 function defaultTabs () {
20 const defaultTabs = api.settings.obs.get('patchbay.defaultTabs', '')
21 const setDefaultTabs = (ev) => {
22 const tabs = ev.target.value.split(',').map(s => s.trim()).filter(Boolean)
23 api.settings.sync.set({ patchbay: { defaultTabs: tabs } })
24 }
25
26 return {
27 group: 'general',
28 title: 'Default Tabs',
29 body: h('DefaultTabs', [
30 h('p', 'Comma-seperated list of tabs which will open on startup.'),
31 h('p', [
32 h('i', 'e.g. /public, #new-people, %9psz2xPwGhGG7mIkTIgCEy/xX7r6uQDNQyjl0Nopiw4=.sha256')
33 ]),
34 h('input', {
35 value: computed(defaultTabs, tabs => tabs.join(', ')),
36 'ev-input': setDefaultTabs
37 })
38 ])
39 }
40 }
41}
42

Built with git-ssb-web