| 18344 | return [M("clipPath", { id: l2, "clip-path": t ? `url(#${t})` : void 0 }, M(r, { x: i, y: o, width: s, height: a, d: n || void 0 })), l2]; |
| 18345 | } |
| 18346 | function Ur({ left: e, top: t, width: n, height: r, props: i, asContentMask: o, maskBorderOnly: s }, a) { |
| 18347 | let u2 = ["borderTop", "borderRight", "borderBottom", "borderLeft"]; |
| 18348 | if (!o && !u2.some((m2) => a[m2 + "Width"])) |
| 18349 | return ""; |
| 18350 | let f = "", l2 = 0; |
| 18351 | for (; l2 > 0 && su(u2[l2], u2[(l2 + 3) % 4], a); ) |
| 18352 | l2 = (l2 + 3) % 4; |
| 18353 | let p = [false, false, false, false], h2 = []; |
| 18354 | for (let m2 = 0; m2 < 4; m2++) { |
| 18355 | let b = (l2 + m2) % 4, y = (l2 + m2 + 1) % 4, T = u2[b], k = u2[y]; |
| 18356 | if (p[b] = true, h2 = [a[T + "Width"], a[T + "Style"], a[T + "Color"], T], !su(T, k, a)) { |
| 18357 | let P2 = (h2[0] || 0) + (o && !s && a[T.replace("border", "padding")] || 0); |
| 18358 | P2 && (f += M("path", { width: n, height: r, ...i, fill: "none", stroke: o ? "#000" : h2[2], "stroke-width": P2 * 2, "stroke-dasharray": !o && h2[1] === "dashed" ? P2 * 2 + " " + P2 : void 0, d: jt({ left: e, top: t, width: n, height: r }, a, p) })), p = [false, false, false, false]; |
| 18359 | } |
| 18360 | } |
| 18361 | if (p.some(Boolean)) { |
| 18362 | let m2 = (h2[0] || 0) + (o && !s && a[h2[3].replace("border", "padding")] || 0); |
| 18363 | m2 && (f += M("path", { width: n, height: r, ...i, fill: "none", stroke: o ? "#000" : h2[2], "stroke-width": m2 * 2, "stroke-dasharray": !o && h2[1] === "dashed" ? m2 * 2 + " " + m2 : void 0, d: jt({ left: e, top: t, width: n, height: r }, a, p) })); |
| 18364 | } |
| 18365 | return f; |
| 18366 | } |
| 18367 | function to({ id: e, left: t, top: n, width: r, height: i, matrix: o, borderOnly: s }, a) { |
| 18368 | let u2 = (a.borderLeftWidth || 0) + (s ? 0 : a.paddingLeft || 0), f = (a.borderTopWidth || 0) + (s ? 0 : a.paddingTop || 0), l2 = (a.borderRightWidth || 0) + (s ? 0 : a.paddingRight || 0), p = (a.borderBottomWidth || 0) + (s ? 0 : a.paddingBottom || 0), h2 = { x: t + u2, y: n + f, width: r - u2 - l2, height: i - f - p }; |
| 18369 | return M("mask", { id: e }, M("rect", { ...h2, fill: "#fff", transform: a.overflow === "hidden" && a.transform && o ? o : void 0, mask: a._inheritedMaskId ? `url(#${a._inheritedMaskId})` : void 0 }) + Ur({ left: t, top: n, width: r, height: i, props: { transform: o || void 0 }, asContentMask: true, maskBorderOnly: s }, a)); |