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.
39 lines
1.3 KiB
39 lines
1.3 KiB
'use strict'; |
|
|
|
/** |
|
* Copyright (c) 2013-present, Facebook, Inc. |
|
* |
|
* This source code is licensed under the MIT license found in the |
|
* LICENSE file in the root directory of this source tree. |
|
* |
|
*/ |
|
|
|
/** |
|
* This function is used to mark string literals representing CSS class names |
|
* so that they can be transformed statically. This allows for modularization |
|
* and minification of CSS class names. |
|
* |
|
* In static_upstream, this function is actually implemented, but it should |
|
* eventually be replaced with something more descriptive, and the transform |
|
* that is used in the main stack should be ported for use elsewhere. |
|
* |
|
* @param string|object className to modularize, or an object of key/values. |
|
* In the object case, the values are conditions that |
|
* determine if the className keys should be included. |
|
* @param [string ...] Variable list of classNames in the string case. |
|
* @return string Renderable space-separated CSS className. |
|
*/ |
|
function cx(classNames) { |
|
if (typeof classNames == 'object') { |
|
return Object.keys(classNames).filter(function (className) { |
|
return classNames[className]; |
|
}).map(replace).join(' '); |
|
} |
|
return Array.prototype.map.call(arguments, replace).join(' '); |
|
} |
|
|
|
function replace(str) { |
|
return str.replace(/\//g, '-'); |
|
} |
|
|
|
module.exports = cx; |