34 lines
1.0 KiB
JavaScript
34 lines
1.0 KiB
JavaScript
// Metro module 8544 (f8545).
|
|
let c5474_2;
|
|
let c5474_0 = {
|
|
meet: 0,
|
|
slice: 1,
|
|
none: 2
|
|
};
|
|
let c5474_1 = ["xMinYMin", "xMidYMin", "xMaxYMin", "xMinYMid", "xMidYMid", "xMaxYMid", "xMinYMax", "xMidYMax", "xMaxYMax", "none"].reduce((acc, item) => {
|
|
acc[item] = item;
|
|
return acc;
|
|
}, {});
|
|
c5474_2 = /\s+/;
|
|
export default function extractViewBox({ viewBox, preserveAspectRatio }) {
|
|
if (viewBox) {
|
|
const r21 = (Array.isArray(viewBox) ? viewBox : viewBox.trim().replace(/,/g, " ").split(c5474_2)).map(Number);
|
|
if (r21.length === 4 && !r21.some(isNaN)) {
|
|
const r26 = preserveAspectRatio ? preserveAspectRatio.trim().split(c5474_2) : [];
|
|
return {
|
|
minX: r21[0],
|
|
minY: r21[1],
|
|
vbWidth: r21[2],
|
|
vbHeight: r21[3],
|
|
align: c5474_1[r26[0]] || "xMidYMid",
|
|
meetOrSlice: c5474_0[r26[1]] || 0
|
|
};
|
|
}
|
|
console.warn("Invalid `viewBox` prop:" + viewBox);
|
|
return null;
|
|
}
|
|
return null;
|
|
};
|
|
export { c5474_0 as meetOrSliceTypes };
|
|
export { c5474_1 as alignEnum };
|