31 lines
1.1 KiB
JavaScript
31 lines
1.1 KiB
JavaScript
|
"use strict";
|
||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||
|
exports.keyframes = void 0;
|
||
|
var StyleOptionsState_1 = require("./StyleOptionsState");
|
||
|
var Stylesheet_1 = require("./Stylesheet");
|
||
|
var styleToClassName_1 = require("./styleToClassName");
|
||
|
/**
|
||
|
* Registers keyframe definitions.
|
||
|
*
|
||
|
* @public
|
||
|
*/
|
||
|
function keyframes(timeline) {
|
||
|
var stylesheet = Stylesheet_1.Stylesheet.getInstance();
|
||
|
var rulesArray = [];
|
||
|
for (var prop in timeline) {
|
||
|
if (timeline.hasOwnProperty(prop)) {
|
||
|
rulesArray.push(prop, '{', (0, styleToClassName_1.serializeRuleEntries)((0, StyleOptionsState_1.getStyleOptions)(), timeline[prop]), '}');
|
||
|
}
|
||
|
}
|
||
|
var rules = rulesArray.join('');
|
||
|
var className = stylesheet.classNameFromKey(rules);
|
||
|
if (className) {
|
||
|
return className;
|
||
|
}
|
||
|
var name = stylesheet.getClassName();
|
||
|
stylesheet.insertRule("@keyframes ".concat(name, "{").concat(rules, "}"), true);
|
||
|
stylesheet.cacheClassName(name, rules, [], ['keyframes', rules]);
|
||
|
return name;
|
||
|
}
|
||
|
exports.keyframes = keyframes;
|
||
|
//# sourceMappingURL=keyframes.js.map
|