@jbrowse/core
Version:
JBrowse 2 core libraries used by plugins
54 lines (53 loc) • 2.02 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const configuration_1 = require("../configuration");
function assemblyConfigSchema(pluginManager) {
return (0, configuration_1.ConfigurationSchema)('BaseAssembly', {
aliases: {
type: 'stringArray',
defaultValue: [],
description: 'Other possible names for the assembly',
},
sequence: pluginManager.getTrackType('ReferenceSequenceTrack')
.configSchema,
refNameColors: {
type: 'stringArray',
defaultValue: [],
description: 'Define custom colors for each reference sequence. Will cycle through this list if there are not enough colors for every sequence.',
},
refNameAliases: (0, configuration_1.ConfigurationSchema)('RefNameAliases', {
adapter: pluginManager.pluggableConfigSchemaType('adapter'),
}, {
preProcessSnapshot: snap => {
return !snap.adapter
? {
adapter: {
type: 'RefNameAliasAdapter',
},
}
: snap;
},
}),
cytobands: (0, configuration_1.ConfigurationSchema)('Cytoband', {
adapter: pluginManager.pluggableConfigSchemaType('adapter'),
}, {
preProcessSnapshot: snap => {
return !snap.adapter
? {
adapter: {
type: 'CytobandAdapter',
},
}
: snap;
},
}),
displayName: {
type: 'string',
defaultValue: '',
description: 'A human readable display name for the assembly e.g. "Homo sapiens (hg38)" while the assembly name may just be "hg38"',
},
}, {
explicitIdentifier: 'name',
});
}
exports.default = assemblyConfigSchema;