33 lines
949 B
JavaScript
33 lines
949 B
JavaScript
var util = require('util');
|
|
exports.defineTags = function(dictionary) {
|
|
dictionary.defineTag('observable', {
|
|
mustHaveValue: true,
|
|
canHaveType: true,
|
|
canHaveName: true,
|
|
onTagged: function(doclet, tag) {
|
|
if (!doclet.observables) {
|
|
doclet.observables = [];
|
|
}
|
|
var description = tag.value.description;
|
|
var readonly = description.split(' ').shift() === 'readonly';
|
|
if (readonly) {
|
|
description = description.split(' ').slice(1).join(' ');
|
|
}
|
|
doclet.observables.push({
|
|
name: tag.value.name,
|
|
type: {
|
|
names: tag.value.type.names
|
|
},
|
|
description: description,
|
|
readonly: readonly
|
|
});
|
|
if (!doclet.fires) {
|
|
doclet.fires = [];
|
|
}
|
|
if (doclet.fires.indexOf('{@link ol.ObjectEvent} ol.event:ObjectEvent') === -1) {
|
|
doclet.fires.push('{@link ol.ObjectEvent} ol.event:ObjectEvent');
|
|
}
|
|
}
|
|
});
|
|
};
|