This app provides monitoring and information features for the common freifunk user and the technical stuff of a freifunk community.
Code base is taken from a TUM Practical Course project and added here to see if Freifunk Altdorf can use it.
https://www.freifunk-altdorf.de
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.4 KiB
40 lines
1.4 KiB
'use strict'; |
|
|
|
var TYPES = require('../parsers').TYPES; |
|
var valueType = require('../parsers').valueType; |
|
var shorthandParser = require('../parsers').shorthandParser; |
|
var shorthandSetter = require('../parsers').shorthandSetter; |
|
var shorthandGetter = require('../parsers').shorthandGetter; |
|
|
|
var shorthand_for = { |
|
'font-family': require('./fontFamily'), |
|
'font-size': require('./fontSize'), |
|
'font-style': require('./fontStyle'), |
|
'font-variant': require('./fontVariant'), |
|
'font-weight': require('./fontWeight'), |
|
'line-height': require('./lineHeight') |
|
}; |
|
|
|
var static_fonts = ['caption', 'icon', 'menu', 'message-box', 'small-caption', 'status-bar', 'inherit']; |
|
|
|
module.exports.isValid = function isValid(v) { |
|
return (shorthandParser(v, shorthand_for) !== undefined) || |
|
(valueType(v) === TYPES.KEYWORD && static_fonts.indexOf(v.toLowerCase()) !== -1); |
|
}; |
|
|
|
var setter = shorthandSetter('font', shorthand_for); |
|
|
|
module.exports.definition = { |
|
set: function (v) { |
|
var short = shorthandParser(v, shorthand_for); |
|
if (short !== undefined) { |
|
return setter.call(this, v); |
|
} |
|
if (valueType(v) === TYPES.KEYWORD && static_fonts.indexOf(v.toLowerCase()) !== -1) { |
|
this._setProperty('font', v); |
|
} |
|
}, |
|
get: shorthandGetter('font', shorthand_for), |
|
enumerable: true, |
|
configurable: true |
|
};
|
|
|