-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
62 lines (60 loc) · 1.28 KB
/
index.js
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
module.exports = {
extend: '@apostrophecms/piece-type',
options: {
label: 'aposSvgs:label',
pluralLabel: 'aposSvgs:pluralLabel',
i18n: {
ns: 'aposSvgs',
browser: true
},
// Opt out of open graph, SEO, search, and quick create
openGraph: false,
seoFields: false,
searchable: false,
quickCreate: false,
// Auto-publish (no draft state, but you can localize them)
autopublish: true
},
fields (self) {
const mapChoices = (self.options.maps || []).map(map => {
return {
label: map.label,
value: map.name
};
});
return {
add: {
svgId: {
label: 'SVG symbol ID',
type: 'string',
help: 'ID of the <symbol> element in the sprite map',
required: true,
readOnly: true
},
map: {
label: 'Sprite Map',
type: 'select',
choices: mapChoices,
required: true,
readOnly: true
}
},
group: {
basics: {
fields: [ 'svgId', 'map' ]
}
}
};
},
tasks (self) {
const {
importTask
} = require('./lib/import')(self);
return {
import: {
usage: 'aposSvgs:taskUsage',
task: importTask
}
};
}
};