Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Unified Diff: polymer_0.5.0/bower_components/web-animations-js/src/shape-handler.js

Issue 786953007: npm_modules: Fork bower_components into Polymer 0.4.0 and 0.5.0 versions (Closed) Base URL: https://chromium.googlesource.com/infra/third_party/npm_modules.git@master
Patch Set: Created 5 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: polymer_0.5.0/bower_components/web-animations-js/src/shape-handler.js
diff --git a/polymer_0.5.0/bower_components/web-animations-js/src/shape-handler.js b/polymer_0.5.0/bower_components/web-animations-js/src/shape-handler.js
new file mode 100644
index 0000000000000000000000000000000000000000..48b288c961e47bf4cdab975153b3bc6912f2f304
--- /dev/null
+++ b/polymer_0.5.0/bower_components/web-animations-js/src/shape-handler.js
@@ -0,0 +1,85 @@
+// 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) {
+
+ var consumeLengthOrPercent = scope.consumeParenthesised.bind(null, scope.parseLengthOrPercent);
+ var consumeLengthOrPercentPair = scope.consumeRepeated.bind(undefined, consumeLengthOrPercent, /^/);
+
+ var mergeSizePair = scope.mergeNestedRepeated.bind(undefined, scope.mergeDimensions, ' ');
+ var mergeSizePairList = scope.mergeNestedRepeated.bind(undefined, mergeSizePair, ',');
+
+ function parseShape(input) {
+ var circle = scope.consumeToken(/^circle/, input);
+ if (circle && circle[0]) {
+ return ['circle'].concat(scope.consumeList([
+ scope.ignore(scope.consumeToken.bind(undefined, /^\(/)),
+ consumeLengthOrPercent,
+ scope.ignore(scope.consumeToken.bind(undefined, /^at/)),
+ scope.consumePosition,
+ scope.ignore(scope.consumeToken.bind(undefined, /^\)/))
+ ], circle[1]));
+ }
+ var ellipse = scope.consumeToken(/^ellipse/, input);
+ if (ellipse && ellipse[0]) {
+ return ['ellipse'].concat(scope.consumeList([
+ scope.ignore(scope.consumeToken.bind(undefined, /^\(/)),
+ consumeLengthOrPercentPair,
+ scope.ignore(scope.consumeToken.bind(undefined, /^at/)),
+ scope.consumePosition,
+ scope.ignore(scope.consumeToken.bind(undefined, /^\)/))
+ ], ellipse[1]));
+ }
+ var polygon = scope.consumeToken(/^polygon/, input);
+ if (polygon && polygon[0]) {
+ return ['polygon'].concat(scope.consumeList([
+ scope.ignore(scope.consumeToken.bind(undefined, /^\(/)),
+ scope.optional(scope.consumeToken.bind(undefined, /^nonzero\s*,|^evenodd\s*,/), 'nonzero,'),
+ scope.consumeSizePairList,
+ scope.ignore(scope.consumeToken.bind(undefined, /^\)/))
+ ], polygon[1]));
+ }
+ }
+
+ function mergeShapes(left, right) {
+ if (left[0] !== right[0])
+ return;
+ if (left[0] == 'circle') {
+ return scope.mergeList(left.slice(1), right.slice(1), [
+ 'circle(',
+ scope.mergeDimensions,
+ ' at ',
+ scope.mergeOffsetList,
+ ')']);
+ }
+ if (left[0] == 'ellipse') {
+ return scope.mergeList(left.slice(1), right.slice(1), [
+ 'ellipse(',
+ scope.mergeNonNegativeSizePair,
+ ' at ',
+ scope.mergeOffsetList,
+ ')']);
+ }
+ if (left[0] == 'polygon' && left[1] == right[1]) {
+ return scope.mergeList(left.slice(2), right.slice(2), [
+ 'polygon(',
+ left[1],
+ mergeSizePairList,
+ ')']);
+ }
+ }
+
+ scope.addPropertiesHandler(parseShape, mergeShapes, ['shape-outside']);
+
+})(webAnimationsMinifill);

Powered by Google App Engine
This is Rietveld 408576698