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

Unified Diff: third_party/web-animations-js/sources/src/normalize-keyframes.js

Issue 1214573003: Fix Polymer licensing issues (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix web-animations-js path Created 5 years, 6 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: third_party/web-animations-js/sources/src/normalize-keyframes.js
diff --git a/third_party/web-animations-js/sources/src/normalize-keyframes.js b/third_party/web-animations-js/sources/src/normalize-keyframes.js
deleted file mode 100644
index 58b9f04115dacfc54ac3852decde9e857fc55e76..0000000000000000000000000000000000000000
--- a/third_party/web-animations-js/sources/src/normalize-keyframes.js
+++ /dev/null
@@ -1,259 +0,0 @@
-// 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(shared, testing) {
- var shorthandToLonghand = {
- background: [
- 'backgroundImage',
- 'backgroundPosition',
- 'backgroundSize',
- 'backgroundRepeat',
- 'backgroundAttachment',
- 'backgroundOrigin',
- 'backgroundClip',
- 'backgroundColor'
- ],
- border: [
- 'borderTopColor',
- 'borderTopStyle',
- 'borderTopWidth',
- 'borderRightColor',
- 'borderRightStyle',
- 'borderRightWidth',
- 'borderBottomColor',
- 'borderBottomStyle',
- 'borderBottomWidth',
- 'borderLeftColor',
- 'borderLeftStyle',
- 'borderLeftWidth'
- ],
- borderBottom: [
- 'borderBottomWidth',
- 'borderBottomStyle',
- 'borderBottomColor'
- ],
- borderColor: [
- 'borderTopColor',
- 'borderRightColor',
- 'borderBottomColor',
- 'borderLeftColor'
- ],
- borderLeft: [
- 'borderLeftWidth',
- 'borderLeftStyle',
- 'borderLeftColor'
- ],
- borderRadius: [
- 'borderTopLeftRadius',
- 'borderTopRightRadius',
- 'borderBottomRightRadius',
- 'borderBottomLeftRadius'
- ],
- borderRight: [
- 'borderRightWidth',
- 'borderRightStyle',
- 'borderRightColor'
- ],
- borderTop: [
- 'borderTopWidth',
- 'borderTopStyle',
- 'borderTopColor'
- ],
- borderWidth: [
- 'borderTopWidth',
- 'borderRightWidth',
- 'borderBottomWidth',
- 'borderLeftWidth'
- ],
- flex: [
- 'flexGrow',
- 'flexShrink',
- 'flexBasis'
- ],
- font: [
- 'fontFamily',
- 'fontSize',
- 'fontStyle',
- 'fontVariant',
- 'fontWeight',
- 'lineHeight'
- ],
- margin: [
- 'marginTop',
- 'marginRight',
- 'marginBottom',
- 'marginLeft'
- ],
- outline: [
- 'outlineColor',
- 'outlineStyle',
- 'outlineWidth'
- ],
- padding: [
- 'paddingTop',
- 'paddingRight',
- 'paddingBottom',
- 'paddingLeft'
- ]
- };
-
- var shorthandExpanderElem = document.createElementNS('http://www.w3.org/1999/xhtml', 'div');
-
- var borderWidthAliases = {
- thin: '1px',
- medium: '3px',
- thick: '5px'
- };
-
- var aliases = {
- borderBottomWidth: borderWidthAliases,
- borderLeftWidth: borderWidthAliases,
- borderRightWidth: borderWidthAliases,
- borderTopWidth: borderWidthAliases,
- fontSize: {
- 'xx-small': '60%',
- 'x-small': '75%',
- 'small': '89%',
- 'medium': '100%',
- 'large': '120%',
- 'x-large': '150%',
- 'xx-large': '200%'
- },
- fontWeight: {
- normal: '400',
- bold: '700'
- },
- outlineWidth: borderWidthAliases,
- textShadow: {
- none: '0px 0px 0px transparent'
- },
- boxShadow: {
- none: '0px 0px 0px 0px transparent'
- }
- };
-
- function antiAlias(property, value) {
- if (property in aliases) {
- return aliases[property][value] || value;
- }
- return value;
- }
-
- // This delegates parsing shorthand value syntax to the browser.
- function expandShorthandAndAntiAlias(property, value, result) {
- var longProperties = shorthandToLonghand[property];
- if (longProperties) {
- shorthandExpanderElem.style[property] = value;
- for (var i in longProperties) {
- var longProperty = longProperties[i];
- var longhandValue = shorthandExpanderElem.style[longProperty];
- result[longProperty] = antiAlias(longProperty, longhandValue);
- }
- } else {
- result[property] = antiAlias(property, value);
- }
- };
-
- function normalizeKeyframes(effectInput) {
- if (!Array.isArray(effectInput) && effectInput !== null)
- throw new TypeError('Keyframe effect must be null or an array of keyframes');
-
- if (effectInput == null)
- return [];
-
- var keyframeEffect = effectInput.map(function(originalKeyframe) {
- var keyframe = {};
- for (var member in originalKeyframe) {
- var memberValue = originalKeyframe[member];
- if (member == 'offset') {
- if (memberValue != null) {
- memberValue = Number(memberValue);
- if (!isFinite(memberValue))
- throw new TypeError('keyframe offsets must be numbers.');
- }
- } else if (member == 'composite') {
- throw {
- type: DOMException.NOT_SUPPORTED_ERR,
- name: 'NotSupportedError',
- message: 'add compositing is not supported'
- };
- } else if (member == 'easing') {
- memberValue = shared.toTimingFunction(memberValue);
- } else {
- memberValue = '' + memberValue;
- }
- expandShorthandAndAntiAlias(member, memberValue, keyframe);
- }
- if (keyframe.offset == undefined)
- keyframe.offset = null;
- if (keyframe.easing == undefined)
- keyframe.easing = shared.toTimingFunction('linear');
- return keyframe;
- });
-
- var everyFrameHasOffset = true;
- var looselySortedByOffset = true;
- var previousOffset = -Infinity;
- for (var i = 0; i < keyframeEffect.length; i++) {
- var offset = keyframeEffect[i].offset;
- if (offset != null) {
- if (offset < previousOffset) {
- throw {
- code: DOMException.INVALID_MODIFICATION_ERR,
- name: 'InvalidModificationError',
- message: 'Keyframes are not loosely sorted by offset. Sort or specify offsets.'
- };
- }
- previousOffset = offset;
- } else {
- everyFrameHasOffset = false;
- }
- }
-
- keyframeEffect = keyframeEffect.filter(function(keyframe) {
- return keyframe.offset >= 0 && keyframe.offset <= 1;
- });
-
- function spaceKeyframes() {
- var length = keyframeEffect.length;
- if (keyframeEffect[length - 1].offset == null)
- keyframeEffect[length - 1].offset = 1;
- if (length > 1 && keyframeEffect[0].offset == null)
- keyframeEffect[0].offset = 0;
-
- var previousIndex = 0;
- var previousOffset = keyframeEffect[0].offset;
- for (var i = 1; i < length; i++) {
- var offset = keyframeEffect[i].offset;
- if (offset != null) {
- for (var j = 1; j < i - previousIndex; j++)
- keyframeEffect[previousIndex + j].offset = previousOffset + (offset - previousOffset) * j / (i - previousIndex);
- previousIndex = i;
- previousOffset = offset;
- }
- }
- }
- if (!everyFrameHasOffset)
- spaceKeyframes();
-
- return keyframeEffect;
- }
-
- shared.normalizeKeyframes = normalizeKeyframes;
-
- if (WEB_ANIMATIONS_TESTING) {
- testing.normalizeKeyframes = normalizeKeyframes;
- }
-
-})(webAnimationsShared, webAnimationsTesting);

Powered by Google App Engine
This is Rietveld 408576698