@jdcfe/yep-react
Version:
一套移动端的React组件库
86 lines (77 loc) • 3.81 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _uid = _interopRequireDefault(require("./uid"));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var Wrap = function Wrap(_ref) {
var uniquekey = _ref.uniquekey,
width = _ref.width,
height = _ref.height,
style = _ref.style,
className = _ref.className,
children = _ref.children,
primaryColor = _ref.primaryColor,
primaryOpacity = _ref.primaryOpacity,
secondaryColor = _ref.secondaryColor,
secondaryOpacity = _ref.secondaryOpacity,
speed = _ref.speed,
animate = _ref.animate,
preserveAspectRatio = _ref.preserveAspectRatio;
var idClip = uniquekey ? "".concat(uniquekey, "-idClip") : (0, _uid.default)();
var idGradient = uniquekey ? "".concat(uniquekey, "-idGradient") : (0, _uid.default)();
return /*#__PURE__*/React.createElement("svg", {
viewBox: "0 0 ".concat(width, " ").concat(height),
version: "1.1",
style: style,
preserveAspectRatio: preserveAspectRatio,
className: className
}, /*#__PURE__*/React.createElement("rect", {
style: {
fill: "url(#".concat(idGradient, ")")
},
clipPath: "url(#".concat(idClip, ")"),
x: "0",
y: "0",
width: width,
height: height
}), /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
id: idClip
}, children), /*#__PURE__*/React.createElement("linearGradient", {
id: idGradient
}, /*#__PURE__*/React.createElement("stop", {
offset: "0%",
stopColor: primaryColor,
stopOpacity: primaryOpacity
}, animate ? /*#__PURE__*/React.createElement("animate", {
attributeName: "offset",
values: "-2; 1",
dur: "".concat(speed, "s"),
repeatCount: "indefinite"
}) : null), /*#__PURE__*/React.createElement("stop", {
offset: "50%",
stopColor: secondaryColor,
stopOpacity: secondaryOpacity
}, animate ? /*#__PURE__*/React.createElement("animate", {
attributeName: "offset",
values: "-1.5; 1.5",
dur: "".concat(speed, "s"),
repeatCount: "indefinite"
}) : null), /*#__PURE__*/React.createElement("stop", {
offset: "100%",
stopColor: primaryColor,
stopOpacity: primaryOpacity
}, animate ? /*#__PURE__*/React.createElement("animate", {
attributeName: "offset",
values: "-1; 2",
dur: "".concat(speed, "s"),
repeatCount: "indefinite"
}) : null))));
};
var _default = Wrap;
exports.default = _default;