diff -r 000000000000 -r 40c8f766c9b8 src/cm/media/js/lib/yui/yui_3.0.0b1/build/classnamemanager/classnamemanager-debug.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/cm/media/js/lib/yui/yui_3.0.0b1/build/classnamemanager/classnamemanager-debug.js Mon Nov 23 15:14:29 2009 +0100 @@ -0,0 +1,87 @@ +/* +Copyright (c) 2009, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 3.0.0b1 +build: 1163 +*/ +YUI.add('classnamemanager', function(Y) { + +/** +* Contains a singleton (ClassNameManager) that enables easy creation and caching of +* prefixed class names. +* @module classnamemanager +*/ + +/** + * A singleton class providing: + * + * + * + * @class ClassNameManager + * @static + */ + +// String constants +var CLASS_NAME_PREFIX = 'classNamePrefix', + CLASS_NAME_DELIMITER = 'classNameDelimiter', + CONFIG = Y.config; + +// Global config + +/** + * Configuration property indicating the prefix for all CSS class names in this YUI instance. + * + * @property Y.config.classNamePrefix + * @type {String} + * @default "yui" + * @static + */ +CONFIG[CLASS_NAME_PREFIX] = CONFIG[CLASS_NAME_PREFIX] || 'yui'; + +/** + * Configuration property indicating the delimiter used to compose all CSS class names in + * this YUI instance. + * + * @property Y.config.classNameDelimiter + * @type {String} + * @default "-" + * @static + */ +CONFIG[CLASS_NAME_DELIMITER] = CONFIG[CLASS_NAME_DELIMITER] || '-'; + +Y.ClassNameManager = function () { + + var sPrefix = CONFIG[CLASS_NAME_PREFIX], + sDelimiter = CONFIG[CLASS_NAME_DELIMITER]; + + return { + + /** + * Returns a class name prefixed with the the value of the + * Y.config.classNamePrefix attribute + the provided strings. + * Uses the Y.config.classNameDelimiter attribute to delimit the + * provided strings. E.g. Y.ClassNameManager.getClassName('foo','bar'); // yui-foo-bar + * + * @method getClassName + * @param {String}+ one or more classname bits to be joined and prefixed + */ + getClassName: Y.cached(function (c, x) { + + var sClass = sPrefix + sDelimiter + + // ((x) ? Y.Array(arguments, 0, true).join(sDelimiter) : c); + ((x) ? Array.prototype.join.call(arguments, sDelimiter) : c); + + return sClass.replace(/\s/g, ''); + + }) + + }; + +}(); + + +}, '3.0.0b1' );