UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

3 lines (2 loc) 1.84 kB
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.8/LICENSE.txt */ import{equals as n,sliceEquals as r}from"../../../core/arrayUtils.js";function t(n){return"curveRings"in n&&!!n.curveRings?.length||"curvePaths"in n&&!!n.curvePaths?.length}function u(n){return"curveRings"in n?n.curveRings:n.curvePaths}function i(n){return"b"in n}function c(n){return"c"in n}function e(n){return Array.isArray(n)}function a(n){return"a"in n}function o(n){return"a"in n&&4===n.a.length}function s(n){return"a"in n&&7===n.a.length}function f(n,r){return u(n).flat().some(n=>b(n,r))}function b(n,r){return!e(n)&&(i(n)?!r.has("cubic-bezier"):c(n)?!r.has("circular-arc"):!(!o(n)&&!s(n))&&!r.has("elliptic-arc"))}function g(n){return!(!n||!t(n))&&u(n).some(n=>n.some(n=>c(n)))}function h(n,r){return e(n)?e(r):i(n)?i(r):c(n)?c(r):o(n)?o(r):!!s(n)&&s(r)}function v(n){return e(n)?n:i(n)?n.b[0]:c(n)?n.c[0]:n.a[0]}function l(n){if(i(n)){const[r,t,u]=n.b;return{b:[[...r],[...t],[...u]]}}if(c(n)){const[r,t]=n.c;return{c:[[...r],[...t]]}}if(e(n))return[...n];if(o(n)){const[r,t,u,i]=n.a;return{a:[[...r],[...t],u,i]}}if(s(n)){const[r,t,u,i,c,e,a]=n.a;return{a:[[...r],[...t],u,i,c,e,a]}}return n}function m(n){return t(n)?"curveRings"in n?n.curveRings:n.curvePaths:"rings"in n?n.rings:n.paths}function R(n){return n.some(n=>!e(n))}function p(t,u){return e(t)&&e(u)?n(t,u):c(t)&&c(u)?n(t.c[0],u.c[0])&&n(t.c[1],u.c[1]):i(t)&&i(u)?n(t.b[0],u.b[0])&&n(t.b[1],u.b[1])&&n(t.b[2],u.b[2]):!(!a(t)||!a(u))&&(n(t.a[0],u.a[0])&&n(t.a[1],u.a[1])&&r(t.a,2,-1,u.a,2,-1))}export{l as cloneCurve,p as curveEquals,h as curvesAreSameType,u as getCurves,v as getEndpoint,m as getPaths,g as hasCircularArc,f as hasUnsupportedCurve,i as isBezierCurve,c as isCircularArc,e as isCoordinate,t as isCurvedGeometry,a as isEllipticArc,o as isEllipticArc4,s as isEllipticArc7,R as pathHasCurves};