Index: third_party/polymer/v0_8/components/polymer/src/lib/case-map.html |
diff --git a/third_party/polymer/v0_8/components/polymer/src/lib/case-map.html b/third_party/polymer/v0_8/components/polymer/src/lib/case-map.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..396edbeae53f9cf2db00b39b74f625195570d686 |
--- /dev/null |
+++ b/third_party/polymer/v0_8/components/polymer/src/lib/case-map.html |
@@ -0,0 +1,46 @@ |
+<!-- |
+@license |
+Copyright (c) 2014 The Polymer Project Authors. All rights reserved. |
+This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt |
+The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt |
+The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt |
+Code distributed by Google as part of the polymer project is also |
+subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt |
+--> |
+<script> |
+ |
+ Polymer.CaseMap = { |
+ |
+ _caseMap: {}, |
+ |
+ dashToCamelCase: function(dash) { |
+ var mapped = Polymer.CaseMap._caseMap[dash]; |
+ if (mapped) { |
+ return mapped; |
+ } |
+ // TODO(sjmiles): is rejection test actually helping perf? |
+ if (dash.indexOf('-') < 0) { |
+ return Polymer.CaseMap._caseMap[dash] = dash; |
+ } |
+ return Polymer.CaseMap._caseMap[dash] = dash.replace(/-([a-z])/g, |
+ function(m) { |
+ return m[1].toUpperCase(); |
+ } |
+ ); |
+ }, |
+ |
+ camelToDashCase: function(camel) { |
+ var mapped = Polymer.CaseMap._caseMap[camel]; |
+ if (mapped) { |
+ return mapped; |
+ } |
+ return Polymer.CaseMap._caseMap[camel] = camel.replace(/([a-z][A-Z])/g, |
+ function (g) { |
+ return g[0] + '-' + g[1].toLowerCase() |
+ } |
+ ); |
+ } |
+ |
+ }; |
+ |
+</script> |