20 lines
612 B
JavaScript
20 lines
612 B
JavaScript
export default function(visitable, attribute, submitable, deletable, cancelable) {
|
|
return {
|
|
visit: visitable(['/:dc/kv/:kv/edit', '/:dc/kv/create'], function(str) {
|
|
// this will encode the parts of the key path but means you can no longer
|
|
// visit with path parts containing slashes
|
|
return str
|
|
.split('/')
|
|
.map(encodeURIComponent)
|
|
.join('/');
|
|
}),
|
|
...submitable({}, 'main'),
|
|
...cancelable(),
|
|
...deletable(),
|
|
session: {
|
|
ID: attribute('data-test-session', '[data-test-session]'),
|
|
...deletable({}, '[data-test-session]'),
|
|
},
|
|
};
|
|
}
|