1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
// A file extension! Or the default, if provided when calling this.
import {input, templateCompositeFrom} from '#composite';
import {isFileExtension} from '#validators';
export default templateCompositeFrom({
annotation: 'name',
compose: false,
inputs: {
default: input({validate: isFileExtension, acceptsNull: true}),
},
update: {
validate: isFileExtension,
},
steps: () => [
{
dependencies: [input('default')],
transform: (value, {[input('default')]: defaultValue}) =>
value ?? defaultValue,
},
],
});
|