Index: polymer_0.5.0/bower_components/web-animations-js/src/box-handler.js |
diff --git a/polymer_0.5.0/bower_components/web-animations-js/src/box-handler.js b/polymer_0.5.0/bower_components/web-animations-js/src/box-handler.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..5aedd13c93e5de45a5ea98048ec8961da7fcae9e |
--- /dev/null |
+++ b/polymer_0.5.0/bower_components/web-animations-js/src/box-handler.js |
@@ -0,0 +1,57 @@ |
+// Copyright 2014 Google Inc. All rights reserved. |
+// |
+// Licensed under the Apache License, Version 2.0 (the "License"); |
+// you may not use this file except in compliance with the License. |
+// You may obtain a copy of the License at |
+// |
+// http://www.apache.org/licenses/LICENSE-2.0 |
+// |
+// Unless required by applicable law or agreed to in writing, software |
+// distributed under the License is distributed on an "AS IS" BASIS, |
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
+// See the License for the specific language governing permissions and |
+// limitations under the License. |
+ |
+(function(scope, testing) { |
+ function consumeLengthPercentOrAuto(string) { |
+ return scope.consumeLengthOrPercent(string) || scope.consumeToken(/^auto/, string); |
+ } |
+ function parseBox(string) { |
+ var result = scope.consumeList([ |
+ scope.ignore(scope.consumeToken.bind(null, /^rect/)), |
+ scope.ignore(scope.consumeToken.bind(null, /^\(/)), |
+ scope.consumeRepeated.bind(null, consumeLengthPercentOrAuto, /^,/), |
+ scope.ignore(scope.consumeToken.bind(null, /^\)/)), |
+ ], string); |
+ if (result && result[0].length == 4) { |
+ return result[0]; |
+ } |
+ } |
+ |
+ function mergeComponent(left, right) { |
+ if (left == 'auto' || right == 'auto') { |
+ return [true, false, function(t) { |
+ var result = t ? left : right; |
+ if (result == 'auto') { |
+ return 'auto'; |
+ } |
+ // FIXME: There's probably a better way to turn a dimension back into a string. |
+ var merged = scope.mergeDimensions(result, result); |
+ return merged[2](merged[0]); |
+ }]; |
+ } |
+ return scope.mergeDimensions(left, right); |
+ } |
+ |
+ function wrap(result) { |
+ return 'rect(' + result + ')'; |
+ } |
+ |
+ var mergeBoxes = scope.mergeWrappedNestedRepeated.bind(null, wrap, mergeComponent, ', '); |
+ |
+ scope.parseBox = parseBox; |
+ scope.mergeBoxes = mergeBoxes; |
+ |
+ scope.addPropertiesHandler(parseBox, mergeBoxes, ['clip']); |
+ |
+})(webAnimationsMinifill, webAnimationsTesting); |