Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
91 lines
4.0 KiB
Plaintext
91 lines
4.0 KiB
Plaintext
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.radialGradient = exports.CONTAIN = exports.COVER = exports.ELLIPSE = exports.CIRCLE = exports.FARTHEST_CORNER = exports.CLOSEST_CORNER = exports.FARTHEST_SIDE = exports.CLOSEST_SIDE = void 0;
|
|
var parser_1 = require("../../syntax/parser");
|
|
var gradient_1 = require("./gradient");
|
|
var length_percentage_1 = require("../length-percentage");
|
|
var length_1 = require("../length");
|
|
exports.CLOSEST_SIDE = 'closest-side';
|
|
exports.FARTHEST_SIDE = 'farthest-side';
|
|
exports.CLOSEST_CORNER = 'closest-corner';
|
|
exports.FARTHEST_CORNER = 'farthest-corner';
|
|
exports.CIRCLE = 'circle';
|
|
exports.ELLIPSE = 'ellipse';
|
|
exports.COVER = 'cover';
|
|
exports.CONTAIN = 'contain';
|
|
var radialGradient = function (context, tokens) {
|
|
var shape = 0 /* CIRCLE */;
|
|
var size = 3 /* FARTHEST_CORNER */;
|
|
var stops = [];
|
|
var position = [];
|
|
parser_1.parseFunctionArgs(tokens).forEach(function (arg, i) {
|
|
var isColorStop = true;
|
|
if (i === 0) {
|
|
var isAtPosition_1 = false;
|
|
isColorStop = arg.reduce(function (acc, token) {
|
|
if (isAtPosition_1) {
|
|
if (parser_1.isIdentToken(token)) {
|
|
switch (token.value) {
|
|
case 'center':
|
|
position.push(length_percentage_1.FIFTY_PERCENT);
|
|
return acc;
|
|
case 'top':
|
|
case 'left':
|
|
position.push(length_percentage_1.ZERO_LENGTH);
|
|
return acc;
|
|
case 'right':
|
|
case 'bottom':
|
|
position.push(length_percentage_1.HUNDRED_PERCENT);
|
|
return acc;
|
|
}
|
|
}
|
|
else if (length_percentage_1.isLengthPercentage(token) || length_1.isLength(token)) {
|
|
position.push(token);
|
|
}
|
|
}
|
|
else if (parser_1.isIdentToken(token)) {
|
|
switch (token.value) {
|
|
case exports.CIRCLE:
|
|
shape = 0 /* CIRCLE */;
|
|
return false;
|
|
case exports.ELLIPSE:
|
|
shape = 1 /* ELLIPSE */;
|
|
return false;
|
|
case 'at':
|
|
isAtPosition_1 = true;
|
|
return false;
|
|
case exports.CLOSEST_SIDE:
|
|
size = 0 /* CLOSEST_SIDE */;
|
|
return false;
|
|
case exports.COVER:
|
|
case exports.FARTHEST_SIDE:
|
|
size = 1 /* FARTHEST_SIDE */;
|
|
return false;
|
|
case exports.CONTAIN:
|
|
case exports.CLOSEST_CORNER:
|
|
size = 2 /* CLOSEST_CORNER */;
|
|
return false;
|
|
case exports.FARTHEST_CORNER:
|
|
size = 3 /* FARTHEST_CORNER */;
|
|
return false;
|
|
}
|
|
}
|
|
else if (length_1.isLength(token) || length_percentage_1.isLengthPercentage(token)) {
|
|
if (!Array.isArray(size)) {
|
|
size = [];
|
|
}
|
|
size.push(token);
|
|
return false;
|
|
}
|
|
return acc;
|
|
}, isColorStop);
|
|
}
|
|
if (isColorStop) {
|
|
var colorStop = gradient_1.parseColorStop(context, arg);
|
|
stops.push(colorStop);
|
|
}
|
|
});
|
|
return { size: size, shape: shape, stops: stops, position: position, type: 2 /* RADIAL_GRADIENT */ };
|
|
};
|
|
exports.radialGradient = radialGradient;
|
|
//# sourceMappingURL=radial-gradient.js.map |