markdown-flow-ui
Version: 
A React UI library for rendering markdown with interactive flow components, typewriter effects, and plugin support
1 lines • 17.1 kB
Source Map (JSON)
{"version":3,"file":"arc-LQ-GT-Oa.mjs","sources":["../node_modules/d3-shape/src/arc.js"],"sourcesContent":["import constant from \"./constant.js\";\nimport {abs, acos, asin, atan2, cos, epsilon, halfPi, max, min, pi, sin, sqrt, tau} from \"./math.js\";\nimport {withPath} from \"./path.js\";\n\nfunction arcInnerRadius(d) {\n  return d.innerRadius;\n}\n\nfunction arcOuterRadius(d) {\n  return d.outerRadius;\n}\n\nfunction arcStartAngle(d) {\n  return d.startAngle;\n}\n\nfunction arcEndAngle(d) {\n  return d.endAngle;\n}\n\nfunction arcPadAngle(d) {\n  return d && d.padAngle; // Note: optional!\n}\n\nfunction intersect(x0, y0, x1, y1, x2, y2, x3, y3) {\n  var x10 = x1 - x0, y10 = y1 - y0,\n      x32 = x3 - x2, y32 = y3 - y2,\n      t = y32 * x10 - x32 * y10;\n  if (t * t < epsilon) return;\n  t = (x32 * (y0 - y2) - y32 * (x0 - x2)) / t;\n  return [x0 + t * x10, y0 + t * y10];\n}\n\n// Compute perpendicular offset line of length rc.\n// http://mathworld.wolfram.com/Circle-LineIntersection.html\nfunction cornerTangents(x0, y0, x1, y1, r1, rc, cw) {\n  var x01 = x0 - x1,\n      y01 = y0 - y1,\n      lo = (cw ? rc : -rc) / sqrt(x01 * x01 + y01 * y01),\n      ox = lo * y01,\n      oy = -lo * x01,\n      x11 = x0 + ox,\n      y11 = y0 + oy,\n      x10 = x1 + ox,\n      y10 = y1 + oy,\n      x00 = (x11 + x10) / 2,\n      y00 = (y11 + y10) / 2,\n      dx = x10 - x11,\n      dy = y10 - y11,\n      d2 = dx * dx + dy * dy,\n      r = r1 - rc,\n      D = x11 * y10 - x10 * y11,\n      d = (dy < 0 ? -1 : 1) * sqrt(max(0, r * r * d2 - D * D)),\n      cx0 = (D * dy - dx * d) / d2,\n      cy0 = (-D * dx - dy * d) / d2,\n      cx1 = (D * dy + dx * d) / d2,\n      cy1 = (-D * dx + dy * d) / d2,\n      dx0 = cx0 - x00,\n      dy0 = cy0 - y00,\n      dx1 = cx1 - x00,\n      dy1 = cy1 - y00;\n\n  // Pick the closer of the two intersection points.\n  // TODO Is there a faster way to determine which intersection to use?\n  if (dx0 * dx0 + dy0 * dy0 > dx1 * dx1 + dy1 * dy1) cx0 = cx1, cy0 = cy1;\n\n  return {\n    cx: cx0,\n    cy: cy0,\n    x01: -ox,\n    y01: -oy,\n    x11: cx0 * (r1 / r - 1),\n    y11: cy0 * (r1 / r - 1)\n  };\n}\n\nexport default function() {\n  var innerRadius = arcInnerRadius,\n      outerRadius = arcOuterRadius,\n      cornerRadius = constant(0),\n      padRadius = null,\n      startAngle = arcStartAngle,\n      endAngle = arcEndAngle,\n      padAngle = arcPadAngle,\n      context = null,\n      path = withPath(arc);\n\n  function arc() {\n    var buffer,\n        r,\n        r0 = +innerRadius.apply(this, arguments),\n        r1 = +outerRadius.apply(this, arguments),\n        a0 = startAngle.apply(this, arguments) - halfPi,\n        a1 = endAngle.apply(this, arguments) - halfPi,\n        da = abs(a1 - a0),\n        cw = a1 > a0;\n\n    if (!context) context = buffer = path();\n\n    // Ensure that the outer radius is always larger than the inner radius.\n    if (r1 < r0) r = r1, r1 = r0, r0 = r;\n\n    // Is it a point?\n    if (!(r1 > epsilon)) context.moveTo(0, 0);\n\n    // Or is it a circle or annulus?\n    else if (da > tau - epsilon) {\n      context.moveTo(r1 * cos(a0), r1 * sin(a0));\n      context.arc(0, 0, r1, a0, a1, !cw);\n      if (r0 > epsilon) {\n        context.moveTo(r0 * cos(a1), r0 * sin(a1));\n        context.arc(0, 0, r0, a1, a0, cw);\n      }\n    }\n\n    // Or is it a circular or annular sector?\n    else {\n      var a01 = a0,\n          a11 = a1,\n          a00 = a0,\n          a10 = a1,\n          da0 = da,\n          da1 = da,\n          ap = padAngle.apply(this, arguments) / 2,\n          rp = (ap > epsilon) && (padRadius ? +padRadius.apply(this, arguments) : sqrt(r0 * r0 + r1 * r1)),\n          rc = min(abs(r1 - r0) / 2, +cornerRadius.apply(this, arguments)),\n          rc0 = rc,\n          rc1 = rc,\n          t0,\n          t1;\n\n      // Apply padding? Note that since r1 ≥ r0, da1 ≥ da0.\n      if (rp > epsilon) {\n        var p0 = asin(rp / r0 * sin(ap)),\n            p1 = asin(rp / r1 * sin(ap));\n        if ((da0 -= p0 * 2) > epsilon) p0 *= (cw ? 1 : -1), a00 += p0, a10 -= p0;\n        else da0 = 0, a00 = a10 = (a0 + a1) / 2;\n        if ((da1 -= p1 * 2) > epsilon) p1 *= (cw ? 1 : -1), a01 += p1, a11 -= p1;\n        else da1 = 0, a01 = a11 = (a0 + a1) / 2;\n      }\n\n      var x01 = r1 * cos(a01),\n          y01 = r1 * sin(a01),\n          x10 = r0 * cos(a10),\n          y10 = r0 * sin(a10);\n\n      // Apply rounded corners?\n      if (rc > epsilon) {\n        var x11 = r1 * cos(a11),\n            y11 = r1 * sin(a11),\n            x00 = r0 * cos(a00),\n            y00 = r0 * sin(a00),\n            oc;\n\n        // Restrict the corner radius according to the sector angle. If this\n        // intersection fails, it’s probably because the arc is too small, so\n        // disable the corner radius entirely.\n        if (da < pi) {\n          if (oc = intersect(x01, y01, x00, y00, x11, y11, x10, y10)) {\n            var ax = x01 - oc[0],\n                ay = y01 - oc[1],\n                bx = x11 - oc[0],\n                by = y11 - oc[1],\n                kc = 1 / sin(acos((ax * bx + ay * by) / (sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by))) / 2),\n                lc = sqrt(oc[0] * oc[0] + oc[1] * oc[1]);\n            rc0 = min(rc, (r0 - lc) / (kc - 1));\n            rc1 = min(rc, (r1 - lc) / (kc + 1));\n          } else {\n            rc0 = rc1 = 0;\n          }\n        }\n      }\n\n      // Is the sector collapsed to a line?\n      if (!(da1 > epsilon)) context.moveTo(x01, y01);\n\n      // Does the sector’s outer ring have rounded corners?\n      else if (rc1 > epsilon) {\n        t0 = cornerTangents(x00, y00, x01, y01, r1, rc1, cw);\n        t1 = cornerTangents(x11, y11, x10, y10, r1, rc1, cw);\n\n        context.moveTo(t0.cx + t0.x01, t0.cy + t0.y01);\n\n        // Have the corners merged?\n        if (rc1 < rc) context.arc(t0.cx, t0.cy, rc1, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !cw);\n\n        // Otherwise, draw the two corners and the ring.\n        else {\n          context.arc(t0.cx, t0.cy, rc1, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !cw);\n          context.arc(0, 0, r1, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), !cw);\n          context.arc(t1.cx, t1.cy, rc1, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !cw);\n        }\n      }\n\n      // Or is the outer ring just a circular arc?\n      else context.moveTo(x01, y01), context.arc(0, 0, r1, a01, a11, !cw);\n\n      // Is there no inner ring, and it’s a circular sector?\n      // Or perhaps it’s an annular sector collapsed due to padding?\n      if (!(r0 > epsilon) || !(da0 > epsilon)) context.lineTo(x10, y10);\n\n      // Does the sector’s inner ring (or point) have rounded corners?\n      else if (rc0 > epsilon) {\n        t0 = cornerTangents(x10, y10, x11, y11, r0, -rc0, cw);\n        t1 = cornerTangents(x01, y01, x00, y00, r0, -rc0, cw);\n\n        context.lineTo(t0.cx + t0.x01, t0.cy + t0.y01);\n\n        // Have the corners merged?\n        if (rc0 < rc) context.arc(t0.cx, t0.cy, rc0, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !cw);\n\n        // Otherwise, draw the two corners and the ring.\n        else {\n          context.arc(t0.cx, t0.cy, rc0, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !cw);\n          context.arc(0, 0, r0, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), cw);\n          context.arc(t1.cx, t1.cy, rc0, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !cw);\n        }\n      }\n\n      // Or is the inner ring just a circular arc?\n      else context.arc(0, 0, r0, a10, a00, cw);\n    }\n\n    context.closePath();\n\n    if (buffer) return context = null, buffer + \"\" || null;\n  }\n\n  arc.centroid = function() {\n    var r = (+innerRadius.apply(this, arguments) + +outerRadius.apply(this, arguments)) / 2,\n        a = (+startAngle.apply(this, arguments) + +endAngle.apply(this, arguments)) / 2 - pi / 2;\n    return [cos(a) * r, sin(a) * r];\n  };\n\n  arc.innerRadius = function(_) {\n    return arguments.length ? (innerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : innerRadius;\n  };\n\n  arc.outerRadius = function(_) {\n    return arguments.length ? (outerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : outerRadius;\n  };\n\n  arc.cornerRadius = function(_) {\n    return arguments.length ? (cornerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : cornerRadius;\n  };\n\n  arc.padRadius = function(_) {\n    return arguments.length ? (padRadius = _ == null ? null : typeof _ === \"function\" ? _ : constant(+_), arc) : padRadius;\n  };\n\n  arc.startAngle = function(_) {\n    return arguments.length ? (startAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : startAngle;\n  };\n\n  arc.endAngle = function(_) {\n    return arguments.length ? (endAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : endAngle;\n  };\n\n  arc.padAngle = function(_) {\n    return arguments.length ? (padAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : padAngle;\n  };\n\n  arc.context = function(_) {\n    return arguments.length ? ((context = _ == null ? null : _), arc) : context;\n  };\n\n  return arc;\n}\n"],"names":["arcInnerRadius","d","arcOuterRadius","arcStartAngle","arcEndAngle","arcPadAngle","intersect","x0","y0","x1","y1","x2","y2","x3","y3","x10","y10","x32","y32","t","epsilon","cornerTangents","r1","rc","cw","x01","y01","lo","sqrt","ox","oy","x11","y11","x00","y00","dx","dy","d2","r","D","max","cx0","cy0","cx1","cy1","dx0","dy0","dx1","dy1","d3arc","innerRadius","outerRadius","cornerRadius","constant","padRadius","startAngle","endAngle","padAngle","context","path","withPath","arc","buffer","r0","a0","halfPi","a1","da","abs","tau","cos","sin","a01","a11","a00","a10","da0","da1","ap","rp","min","rc0","rc1","t0","t1","p0","asin","p1","oc","pi","ax","ay","bx","by","kc","acos","lc","atan2","a","_"],"mappings":"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","x_google_ignoreList":[0]}