ember-legacy-class-transform
Version:
The default blueprint for ember-cli addons.
40 lines (39 loc) • 3.64 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getAttrNamespace = getAttrNamespace;
// There is a small whitelist of namespaced attributes specially
// enumerated in
// https://www.w3.org/TR/html/syntax.html#attributes-0
//
// > When a foreign element has one of the namespaced attributes given by
// > the local name and namespace of the first and second cells of a row
// > from the following table, it must be written using the name given by
// > the third cell from the same row.
//
// In all other cases, colons are interpreted as a regular character
// with no special meaning:
//
// > No other namespaced attribute can be expressed in the HTML syntax.
var XLINK = 'http://www.w3.org/1999/xlink';
var XML = 'http://www.w3.org/XML/1998/namespace';
var XMLNS = 'http://www.w3.org/2000/xmlns/';
var WHITELIST = {
'xlink:actuate': XLINK,
'xlink:arcrole': XLINK,
'xlink:href': XLINK,
'xlink:role': XLINK,
'xlink:show': XLINK,
'xlink:title': XLINK,
'xlink:type': XLINK,
'xml:base': XML,
'xml:lang': XML,
'xml:space': XML,
'xmlns': XMLNS,
'xmlns:xlink': XMLNS
};
function getAttrNamespace(attrName) {
return WHITELIST[attrName] || null;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9uYW1lc3BhY2VzLmpzIl0sIm5hbWVzIjpbIlhMSU5LIiwiWE1MIiwiWE1MTlMiLCJXSElURUxJU1QiLCJnZXRBdHRyTmFtZXNwYWNlIiwiYXR0ck5hbWUiXSwibWFwcGluZ3MiOiI7Ozs7O1FBOEJPLEFBQVM7QUE5QmhCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBTSxRQUFOLEFBQWM7QUFDZCxJQUFNLE1BQU4sQUFBWTtBQUNaLElBQU0sUUFBTixBQUFjO0FBQ2QsSUFBTTtxQkFBWSxBQUNHLEFBQ2pCO3FCQUZjLEFBRUcsQUFDakI7a0JBSGMsQUFHQSxBQUNkO2tCQUpjLEFBSUEsQUFDZDtrQkFMYyxBQUtBLEFBQ2Q7bUJBTmMsQUFNQyxBQUNmO2tCQVBjLEFBT0EsQUFDZDtnQkFSYyxBQVFGLEFBQ1o7Z0JBVGMsQUFTRixBQUNaO2lCQVZjLEFBVUQsQUFDYjthQVhjLEFBV0wsQUFDVDttQkFaSixBQUFrQixBQVlDLEFBRW5CO0FBZGtCLEFBQ2Q7QUFhRywwQkFBQSxBQUEwQixVQUFVLEFBQ3ZDO1dBQU8sVUFBQSxBQUFVLGFBQWpCLEFBQThCLEFBQ2pDIiwiZmlsZSI6ImxpYi9uYW1lc3BhY2VzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVGhlcmUgaXMgYSBzbWFsbCB3aGl0ZWxpc3Qgb2YgbmFtZXNwYWNlZCBhdHRyaWJ1dGVzIHNwZWNpYWxseVxuLy8gZW51bWVyYXRlZCBpblxuLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL2h0bWwvc3ludGF4Lmh0bWwjYXR0cmlidXRlcy0wXG4vL1xuLy8gPiBXaGVuIGEgZm9yZWlnbiBlbGVtZW50IGhhcyBvbmUgb2YgdGhlIG5hbWVzcGFjZWQgYXR0cmlidXRlcyBnaXZlbiBieVxuLy8gPiB0aGUgbG9jYWwgbmFtZSBhbmQgbmFtZXNwYWNlIG9mIHRoZSBmaXJzdCBhbmQgc2Vjb25kIGNlbGxzIG9mIGEgcm93XG4vLyA+IGZyb20gdGhlIGZvbGxvd2luZyB0YWJsZSwgaXQgbXVzdCBiZSB3cml0dGVuIHVzaW5nIHRoZSBuYW1lIGdpdmVuIGJ5XG4vLyA+IHRoZSB0aGlyZCBjZWxsIGZyb20gdGhlIHNhbWUgcm93LlxuLy9cbi8vIEluIGFsbCBvdGhlciBjYXNlcywgY29sb25zIGFyZSBpbnRlcnByZXRlZCBhcyBhIHJlZ3VsYXIgY2hhcmFjdGVyXG4vLyB3aXRoIG5vIHNwZWNpYWwgbWVhbmluZzpcbi8vXG4vLyA+IE5vIG90aGVyIG5hbWVzcGFjZWQgYXR0cmlidXRlIGNhbiBiZSBleHByZXNzZWQgaW4gdGhlIEhUTUwgc3ludGF4LlxuY29uc3QgWExJTksgPSAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayc7XG5jb25zdCBYTUwgPSAnaHR0cDovL3d3dy53My5vcmcvWE1MLzE5OTgvbmFtZXNwYWNlJztcbmNvbnN0IFhNTE5TID0gJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAveG1sbnMvJztcbmNvbnN0IFdISVRFTElTVCA9IHtcbiAgICAneGxpbms6YWN0dWF0ZSc6IFhMSU5LLFxuICAgICd4bGluazphcmNyb2xlJzogWExJTkssXG4gICAgJ3hsaW5rOmhyZWYnOiBYTElOSyxcbiAgICAneGxpbms6cm9sZSc6IFhMSU5LLFxuICAgICd4bGluazpzaG93JzogWExJTkssXG4gICAgJ3hsaW5rOnRpdGxlJzogWExJTkssXG4gICAgJ3hsaW5rOnR5cGUnOiBYTElOSyxcbiAgICAneG1sOmJhc2UnOiBYTUwsXG4gICAgJ3htbDpsYW5nJzogWE1MLFxuICAgICd4bWw6c3BhY2UnOiBYTUwsXG4gICAgJ3htbG5zJzogWE1MTlMsXG4gICAgJ3htbG5zOnhsaW5rJzogWE1MTlNcbn07XG5leHBvcnQgZnVuY3Rpb24gZ2V0QXR0ck5hbWVzcGFjZShhdHRyTmFtZSkge1xuICAgIHJldHVybiBXSElURUxJU1RbYXR0ck5hbWVdIHx8IG51bGw7XG59Il19