@vertigis/arcgis-extensions 35.3.1 → 35.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/data/convert.js CHANGED
@@ -1 +1 @@
1
- import Point from"@arcgis/core/geometry/Point";import SpatialReference from"@arcgis/core/geometry/SpatialReference";import{translate}from"../locale/language.js";import{toEsriApiGeometry,toPortalGeometry}from"../portal/Geometry.js";import{checkArg,assertNever}from"../utilities/checkArg.js";import{parse as parseDate,format as formatDate,DEFAULT_PARSING_FORMATS,DateFormat,INVALID_DATE}from"../utilities/date.js";import{esriToWKT,esriToGeoJSON,geoJSONToEsri,wktToEsri,esriWkidToWkt,esriWktToWkid,project,isPoint,isMultipoint,isPolyline,isPolygon,isExtent}from"../utilities/geometry.js";import{getLogger}from"../utilities/log.js";import{parse as parseNumber,format as formatNumber,NumberFormat,isNumeric}from"../utilities/number.js";import{Feature}from"./Feature.js";import{FeatureSet}from"./FeatureSet.js";const FORMULA_TRIGGER_CHARS=["=","-","+","@"],QUOTE='"',FIELD_NAME_REGEX=/[^a-zA-Z\d_]/g,DEFAULT_WINDOWS_ROW_DELIMITER="\r\n",DEFAULT_UNIX_ROW_DELIMITER="\n",DEFAULT_SHEET_NAME="sheet1",DEFAULT_EXCEL_DATE_FORMATS=[...DEFAULT_PARSING_FORMATS.map(_convertToExcelDateFormatString),"M/d/yy"],shapefileNameRegex=/(\w+)_(point|multipoint|polyline|polygon)z?/;var DBaseTypes;function _getConvertLogger(){return getLogger("geocortex.api.data.convert")}!function(e){e.DATE="D",e.NUMBER="N",e.STRING="C",e.BOOLEAN="L"}(DBaseTypes||(DBaseTypes={}));export var GeometryFormat;!function(e){e.NONE="NONE",e.WKT="WKT",e.XY="XY",e.XYZ="XYZ",e.LAT_LON="LAT_LONG",e.GEO_JSON="GEO_JSON",e.ARCGIS_JSON="ARCGIS_JSON"}(GeometryFormat||(GeometryFormat={}));export async function toCsv(e,t){checkArg("featureSet",e).isNotMissing();const r=Array.from(e),o={...{useFormattedValues:!1,alwaysQuote:!1,escapeFormulaChars:!0,delimiter:",",dateFormat:DateFormat.ROUND_TRIP,geometryFormat:r.some((e=>void 0!==e.geometry&&null!==e.geometry))?GeometryFormat.WKT:GeometryFormat.NONE,includeByteOrderMark:!0,outSpatialReference:SpatialReference.WGS84,includeHeaderRow:!0,outFields:_getDefaultOutFields(e.source),rowDelimiter:navigator.platform.startsWith("Win")?"\r\n":"\n"},...t},{includeByteOrderMark:a,includeHeaderRow:n,delimiter:s,outFields:i,rowDelimiter:m}=o,u=[];a&&u.push("\ufeff");const l=_getGeometryColumns(r,o),c=_getAttributeColumns(r,i,e.schema,!0),f=_getAttributeColumns(r,i,e.schema,!1);if(n){const e=[];for(const t of l)e.push(_quotify(t,o));for(const t of c)e.push(_quotify(t,o));for(const t of f)e.push(_quotify(t,o));const t=e.join(s)+m;u.push(t)}await Promise.all(r.map((async e=>{const t=[],r=(t,r)=>_quotify(_stringify(_getAttributeValue(e,t,r),r),r);t.push(...await _getCSVGeometry(e.geometry,o)),t.push(...c.map((e=>r(e,o)))),t.push(...f.map((e=>r(e,o))));const a=`${t.join(s)}${m}`;u.push(a)})));return new Blob(u,{type:"text/plain",endings:"\n"===m||"\r\n"===m?"transparent":"native"})}export async function csvToFeatureSet(e,t){let r;if(checkArg("csvData",e).isNotMissing(),e instanceof Blob){const t=new Promise(((t,r)=>{const o=new FileReader;o.onload=()=>{t(o.result)},o.onerror=()=>{r(o.error)},o.readAsText(e)}));r=await t}else r=e;const o={...{delimiter:",",escapeFormulaChars:!0,includeHeaderRow:!0,outFields:["*"],inSpatialReference:SpatialReference.WGS84,generatePrimaryKey:!0,primaryKeyField:"OBJECTID"},...t,detectOid:!t?.primaryKeyField},a=_parseCSV(r,o.rowDelimiter||_parseRowDelimiter(r),o.delimiter),n=_parseGeometries(a,o),s=_parseSchema(a,n,o),i=await _parseFeatures(a,n,s,o);return new FeatureSet({features:i,schema:s})}export async function toXLSX(e,t){checkArg("featureSet",e).isNotMissing();const r=Array.from(e),o={...{useFormattedValues:!1,includeHeaderRow:!0,escapeFormulaChars:!0,geometryFormat:r.some((e=>void 0!==e.geometry&&null!==e.geometry))?GeometryFormat.WKT:GeometryFormat.NONE,outFields:_getDefaultOutFields(e.source),outSpatialReference:SpatialReference.WGS84,dateFormat:DateFormat.DEFAULT,numberFormat:NumberFormat.DEFAULT,sheetName:"sheet1"},...t},{outFields:a,includeHeaderRow:n,numberFormat:s}=o,i=[],m=_getGeometryColumns(r,o),u=_getAttributeColumns(r,a,e.schema,!0),l=_getAttributeColumns(r,a,e.schema,!1);if(n){const t=m.concat(u).concat(_getXlsxColumnName(l,e.source));i.push(t)}await Promise.all(r.map((async e=>{const t=[];t.push(...await _getGeometry(e.geometry,o));for(const r of u){const a=_toXLSXValue(e.attributes.get(r),o);t.push(a)}for(const r of l){const a=_toXLSXValue(_getAttributeValue(e,r,o),o);t.push(a)}t.every((e=>"string"!=typeof e||e.length<=32767))?i.push(t):_getConvertLogger().warn(`toXLSX cell limit exceeded, feature (${e.primaryKey??e.id}) omitted.`)})));const c=await import("xlsx"),f={SheetNames:[],Sheets:{}},p=c.utils.aoa_to_sheet(i,{cellDates:!0});for(const e of Object.keys(p).filter((e=>!e.startsWith("!")))){const t=p[e];"d"===t.t?t.z=_convertToExcelDateFormatString(o.dateFormat??DateFormat.ROUND_TRIP):"n"===t.t&&(t.z=_convertToExcelNumberFormatString(s))}f.SheetNames.push(o.sheetName),f.Sheets[o.sheetName]=p;const y=c.write(f,{type:"binary",bookType:"xlsx",compression:!0,bookSST:!0,cellDates:!0}),d=new Uint8Array(y.length);for(let e=0;e<y.length;e++)d[e]=y.charCodeAt(e);return new Blob([d.buffer],{type:"text/plain"})}export async function xlsxToFeatureSet(e,t){checkArg("xlsxData",e).isNotMissing();const r={...{includeHeaderRow:!0,escapeFormulaChars:!0,outFields:["*"],inSpatialReference:SpatialReference.WGS84,generatePrimaryKey:!0,primaryKeyField:"OBJECTID"},...t,detectOid:!t?.primaryKeyField},o=await _parseXLSX(e,r),a=_parseGeometries(o,r),n=_parseSchema(o,a,r),s=await _parseFeatures(o,a,n,r);return new FeatureSet({features:s,schema:n})}export async function toShapefile(e,t){checkArg("featureSet",e).isNotMissing();const[{default:r},o]=await Promise.all([import("jszip"),import("../forked-libs/shp-write/index.js")]),a=Array.from(e),n={...{useFormattedValues:!1,outFields:_getDefaultOutFields(e.source),fileName:e.title||"export"},...t},{outFields:s,outSpatialReference:i,fileName:m}=n,u=e=>e.geometry.hasZ||e.geometry.hasM,l=new Map,c=a.filter((e=>isPoint(e.geometry)));l.set("POINTZ",c.filter(u)),l.set("POINT",c.filter((e=>!u(e))));const f=a.filter((e=>isMultipoint(e.geometry)));l.set("MULTIPOINTZ",f.filter(u)),l.set("MULTIPOINT",f.filter((e=>!u(e))));const p=a.filter((e=>isPolyline(e.geometry)));l.set("POLYLINEZ",p.filter(u)),l.set("POLYLINE",p.filter((e=>!u(e))));const y=a.filter((e=>isPolygon(e.geometry)||isExtent(e.geometry)));l.set("POLYGONZ",y.filter(u)),l.set("POLYGON",y.filter((e=>!u(e))));const d=_getAttributeColumns(a,s,e.schema,!0);let g=_getAttributeColumns(a,s,e.schema,!1);g=d.concat(g);const h=new r,F=Array.from(l.keys()).filter((e=>l.get(e).length>0));await Promise.all(F.map((async t=>{const r=l.get(t),a=await Promise.all(r.map((e=>_projectGeometry(e.geometry,i)))),s=await _getDBaseSpatialReferenceWKT(a),u=n.useFormattedValues?Object.assign({},...g.map((e=>({[e]:DBaseTypes.STRING})))):_getDBaseColumnTypes(r,g,e.schema,"timestamp"===n.dateFormat),c=_getDBaseGeometries(a),f=_getDbaseValues(r,g,u,n);o.write(f,t,c,((e,r)=>{const o=F.length>1?`${m}_${t.toLowerCase()}`:m;h.file(`${o}.shp`,r.shp.buffer,{binary:!0}),h.file(`${o}.shx`,r.shx.buffer,{binary:!0}),h.file(`${o}.dbf`,r.dbf.buffer,{binary:!0}),h.file(`${o}.prj`,s)}))})));const _=await h.generateAsync({type:"uint8array"});return new Blob([_.buffer],{type:"text/plain"})}export async function shapefileToFeatureSet(e,t){checkArg("shapefileData",e).isNotMissing();const r={outFields:["*"],includeHeaderRow:!0,generatePrimaryKey:!0,primaryKeyField:"OBJECTID",...t,detectOid:!t?.primaryKeyField},o=new Promise(((t,r)=>{const o=new FileReader;o.onload=()=>{t(o.result)},o.onerror=()=>{r(o.error)},o.readAsArrayBuffer(e)})),[{default:a},n]=await Promise.all([import("jszip"),import("shpjs")]),s=await o,i=await a.loadAsync(new Uint8Array(s)),m=i.filter((()=>!0)).map((e=>e.name));let u,l=m.filter((e=>e.endsWith(".shp"))).map((e=>e.substring(0,e.length-4)));if(l=_parseShapefileNames(l),m.some((e=>e.endsWith(".prj")))&&!l.every((e=>m.includes(`${e}.prj`))))throw new Error("Shapefile zip must contain the same prj file for each separate shapefile");await Promise.all(m.filter((e=>e.endsWith(".prj"))).map((async e=>{const t=await i.file(e).async("string");if(u){if(t!==u)throw new Error("Shapefile zip must contain the same prj file for each separate shapefile")}else u=t})));const c={geometries:[],columnCount:0,columnIndex:0};let f=[];for(const e of l){if(!m.includes(`${e}.shx`)||!m.includes(`${e}.dbf`))throw new Error("Shapefile must contain shp, shx, and dbf files.");const t=await i.file(`${e}.shp`).async("uint8array"),r=n.parseShp(t),o=await i.file(`${e}.dbf`).async("uint8array"),a=n.parseDbf(o);if(a.length!==r.length)throw new Error("Shapefile must contain shp, shx, and dbf files.");const s=await Promise.all(r.map((e=>_parseShpGeometry(e,u))));c.geometries=c.geometries.concat(s),f=f.concat(a)}const p=_parseDBaseData(f),y=_parseSchema(p,c,r),d=await _parseFeatures(p,c,y,r);return new FeatureSet({features:d,schema:y})}function _getGeometryColumns(e,t){return t.geometryFormat===GeometryFormat.XYZ?["x","y","z"]:t.geometryFormat===GeometryFormat.XY?["x","y"]:t.geometryFormat===GeometryFormat.LAT_LON?["latitude","longitude"]:t.geometryFormat===GeometryFormat.NONE?[]:["geometry"]}function _getAttributeColumns(e,t,r,o){const a=r.fields.filter((e=>"oid"===e.type)).map((e=>e.name)).toArray();if(o)return a;if(t&&!t.includes("*"))return t.filter((e=>!a.includes(e)));{const t=r.fields.filter((e=>"oid"!==e.type)).map((e=>e.name)).toArray();let o=[];for(const r of e)for(const e of r.attributes.keys())t.includes(e)||a.includes(e)||o.includes(e)||o.push(e);return o=o.sort(),t.concat(o)}}function _getXlsxColumnName(e,t){const r=t?.schema?.fieldExtensions.initializedItems.map((e=>e.field));return e.map((e=>r?.find((t=>t.name===e))?.alias??e))}function _getDefaultOutFields(e){if(!e)return["*"];const t=e.featureSettings.popupTemplate?.content;return(Array.isArray(t)?t.find((e=>"fields"===e.type))?.fieldInfos?.filter((e=>e.visible))?.map((e=>e.fieldName)):void 0)??e.featureSettings.popupTemplate?.fieldInfos?.filter((e=>e.visible))?.map((e=>e.fieldName))??["*"]}async function _getCSVGeometry(e,t){let r=await _getGeometry(e,t);return t.geometryFormat!==GeometryFormat.XYZ&&t.geometryFormat!==GeometryFormat.XY&&t.geometryFormat!==GeometryFormat.LAT_LON||(r=r.map((e=>void 0===e?"":_stringify(e,t)))),r.map((e=>""===e?"":_quotify(e,t)))}async function _getGeometry(e,t){const r=await _projectGeometry(e,t.outSpatialReference);if(t.geometryFormat===GeometryFormat.XYZ){if(!r)return["","",""];if(!isPoint(r))throw new Error("Cannot use geometry format XYZ with non-point geometry");return[r.x,r.y,r.z]}if(t.geometryFormat===GeometryFormat.XY){if(!r)return["",""];if(!isPoint(r))throw new Error("Cannot use geometry format XY with non-point geometry");return[r.x,r.y]}if(t.geometryFormat===GeometryFormat.LAT_LON){if(!r)return["",""];if(!isPoint(r))throw new Error("Cannot use geometry format LAT_LONG with non-point geometry");return[r.y,r.x]}return t.geometryFormat===GeometryFormat.ARCGIS_JSON?r?[JSON.stringify(toPortalGeometry(r))]:[""]:t.geometryFormat===GeometryFormat.WKT?r?[esriToWKT(r)]:[""]:t.geometryFormat===GeometryFormat.GEO_JSON?r?[JSON.stringify(esriToGeoJSON(r))]:[""]:[]}async function _projectGeometry(e,t){return e?.spatialReference&&!e.spatialReference.equals(t)&&t?(await project([e],t))[0]:e}function _quotify(e,t){const r=[t.delimiter,'"',"\r","\n",t.rowDelimiter];if(t.alwaysQuote||r.some((t=>e.includes(t)))){return`"${e.replace(new RegExp('"',"g"),'""')}"`}return e}function _stringify(e,t){if(null==e)return"";if(!t.useFormattedValues){if("number"==typeof e){const r=t.numberFormat||NumberFormat.ROUND_TRIP;return formatNumber(r,e)}if(e instanceof Date)return"timestamp"===t.dateFormat?e.getTime().toString():formatDate({format:t.dateFormat,timeZone:"UTC"},e)}let r=e.toString();return t.escapeFormulaChars&&(r=escapeFormulaChars(r)),r}function _getAttributeValue(e,t,r){if(r.useFormattedValues||_hasCodedDomain(e,t))return e.presentableAttributes.get(t)??e.attributes.get(t);if("date"===e.schema.findFieldByName(t)?.type){const r=parseDate(e.attributes.get(t));if(!isNaN(r.getTime()))return r}return e.attributes.get(t)??e.presentableAttributes.get(t)}function _hasCodedDomain(e,t){return t===e.schema.typeIdField||("coded-value"===e.type?.domains?.[t]?.type||"coded-value"===e.schema.findFieldByName(t)?.domain?.type)}function escapeFormulaChars(e){for(const t of FORMULA_TRIGGER_CHARS)if(e.startsWith(t))return`\t${e}`;return e}function _parseRowDelimiter(e){let t="\n";return _forDelimiter(e,"\r\n",((r,o)=>(0===r&&o===e.length||(t="\r\n"),!1))),t}function _parseCSV(e,t,r){const o=[];if(_forDelimiter(e,t,((t,a)=>{const n=e.substring(t,a);return n.length>0&&o.push(((e,t)=>{const o=[];return _forDelimiter(e,r,((r,a)=>{const n=e.substring(r,a);return o.push({raw:_parseQuotes(n,t,o.length)}),!0})),o})(n,o.length)),!0})),o.length){const e=o[0].length;o.forEach(((t,r)=>{if(t.length!==e)throw new Error(`Detected invalid CSV: Row ${r} does not have expected number of columns: ${e}`)}))}return o}function _parseQuotes(e,t,r){const o=e.startsWith('"'),a=e.endsWith('"');if(o&&!a||!o&&a)throw new Error(`Detected invalid CSV: Missing opening or closing quote for value at row:${t} column:${r}`);const n=o?e.substring('"'.length,e.length-'"'.length):e;let s=-1;return _forDelimiter(n,'"',((e,o)=>{if(o===n.length)return!0;if(s<0){if(o!==n.length)return s=o,!0}else if(o===s+'"'.length)return s=-1,!0;throw new Error(`Detected invalid CSV: Non-escaped quote for value at row:${t} column:${r}`)})),n.replace(new RegExp('""',"g"),'"')}function _forDelimiter(e,t,r){let o,a=!1,n=0,s=0;for(;o=e.indexOf(t,n),!(o<0);){for(let t=n;t<o;)e.substring(t).startsWith('"')?(a=!a,t+='"'.length):t++;const i=o+t.length;if(!a){const e=r(s,o);if(s=i,!e)break}n=i}r(s,e.length)}const geometryTypeHeaders={[GeometryFormat.XYZ]:[["x","y","z"]],[GeometryFormat.XY]:[["x","y"]],[GeometryFormat.LAT_LON]:[["lat","lon"],["lat","long"],["latitude","longitude"]],[GeometryFormat.ARCGIS_JSON]:[["geometry"]],[GeometryFormat.GEO_JSON]:[["geometry"]],[GeometryFormat.WKT]:[["geometry"]]};function _parseArcGisJson(e,t){const r=JSON.parse(e),o=toEsriApiGeometry(r);return r.spatialReference||(o.spatialReference=t),o}function _parseGeoJson(e,t){const r=geoJSONToEsri(JSON.parse(e));return r.spatialReference=t,r}function _parseWkt(e,t){const r=wktToEsri(e);return r.spatialReference=t,r}function _findGeometryFormatIndex(e,t){const r=geometryTypeHeaders[t];for(const t of r){const r=e.findIndex(((r,o)=>!(o+t.length>e.length)&&t.every(((t,r)=>e[o+r].raw.toString().toLowerCase()===t))));if(-1!==r)return r}}function _detectGeometry(e,t){return e.map(((e,r)=>{const o=e?.raw;if("string"==typeof o&&""!==o)try{return t(o,void 0),r}catch{return}})).find((e=>void 0!==e))}function _parseGeometries(e,t){const r=t.includeHeaderRow?e.slice(1):e;if(t.geometryFormat===GeometryFormat.NONE)return{columnCount:0,columnIndex:0};const o=(e,o)=>{const a=o===GeometryFormat.XYZ,n=o===GeometryFormat.LAT_LON,s=a?3:2;return{columnCount:s,columnIndex:e,geometries:r.map((r=>{if(r.length>=e+s&&isNumeric(r[e+0].raw)&&isNumeric(r[e+1].raw)&&(!a||isNumeric(r[e+2].raw)))return new Point({x:parseNumber(n?r[e+1].raw:r[e+0].raw),y:parseNumber(n?r[e+0].raw:r[e+1].raw),z:a?parseNumber(r[e+2].raw):0,spatialReference:t.inSpatialReference})}))}},a=(e,o)=>({columnCount:1,columnIndex:e,geometries:r.map((t=>t[e])).map((e=>{if(""!==e.raw)return o(e.raw.toString(),t.inSpatialReference)}))});if(t.geometryFormat){const r=_findGeometryFormatIndex(e[0],t.geometryFormat);if(t.includeHeaderRow&&void 0===r)throw new Error(`Error parsing CSV: Expected geometry columns ${geometryTypeHeaders[t.geometryFormat][0].join(",")} are missing for GeometryType.${t.geometryFormat}`);return((e,t)=>{switch(t){case GeometryFormat.NONE:return{columnCount:0,columnIndex:0};case GeometryFormat.LAT_LON:case GeometryFormat.XYZ:case GeometryFormat.XY:return o(e,t);case GeometryFormat.ARCGIS_JSON:return a(e,_parseArcGisJson);case GeometryFormat.GEO_JSON:return a(e,_parseGeoJson);case GeometryFormat.WKT:return a(e,_parseWkt);default:return assertNever(t,new Error(`Unknown geometry format "${t}".`))}})(r??0,t.geometryFormat)}if(t.includeHeaderRow){const t=_findGeometryFormatIndex(e[0],GeometryFormat.ARCGIS_JSON);if(void 0!==t)for(const e of[_parseArcGisJson,_parseGeoJson,_parseWkt])try{return a(t,e)}catch(e){}const r=[GeometryFormat.XYZ,GeometryFormat.XY,GeometryFormat.LAT_LON];for(const t of r){const r=_findGeometryFormatIndex(e[0],t);if(void 0!==r)return o(r,t)}}for(const e of[_parseArcGisJson,_parseGeoJson,_parseWkt])try{const t=_detectGeometry(r[0],e);return a(t,e)}catch(e){}return{columnCount:0,columnIndex:0}}function _parseSchema(e,t,r){const o={fields:[]};let a=0;for(let s=t.columnCount;s<e[0].length;s++){if(n=s,0!==t.columnCount&&n>=t.columnIndex&&n<t.columnIndex+t.columnCount)continue;const i=_parseFieldType(e,s,r);let m=e[0][s].raw.toString(),u=m.replace(FIELD_NAME_REGEX,"_");if(r.includeHeaderRow||(u="field"+ ++a,m=translate("gcx.api.data.convert.import-field-alias",a)),!u)throw new Error("Error parsing CSV or XLSX: Header cannot contain blank values");o.fields.push({alias:m,name:u,type:i})}var n;if(o.spatialReference=r.outSpatialReference,t.geometries?.length){const e=t.geometries.filter((e=>void 0!==e)).map((e=>e.type)),r=e[0];o.geometryType=e.every((e=>e===r))?r:void 0}if(r.generatePrimaryKey&&!o.fields.find((e=>"esriFieldTypeOID"===e.type))){const e=o.fields.length+1,t=!!o.fields.find((e=>"id"===e.name.toLowerCase()));o.fields.push({name:t?`field${e}`:"id",alias:t?translate("gcx.api.data.convert.import-field-alias",e):"id",type:"esriFieldTypeOID"})}return o}function _parseFieldType(e,t,r){let o=!1,a=!0,n=!0,s=!0;const i=new Set,m=r.includeHeaderRow?e[0]:[],u=r.includeHeaderRow?e.slice(1):e;for(const e of u){const m=e[t];""!==m.raw&&(i.add(m.raw),o=!0,a&&(a=isNumeric(m.raw)||Number.isNaN(m.raw)),n&&(n=m.raw instanceof Date||parseDate(r.dateFormat||DEFAULT_PARSING_FORMATS,m.raw)!==INVALID_DATE),s&&(s=parseDate(r.dateFormat||DEFAULT_EXCEL_DATE_FORMATS,m.formatted)!==INVALID_DATE))}const l=i.size===u.length;return r.primaryKeyField&&m[t]?.raw===r.primaryKeyField||r.detectOid&&o&&l&&a?(r.detectOid=!1,"esriFieldTypeOID"):o&&s?"esriFieldTypeDate":o&&a?"esriFieldTypeDouble":o&&n?"esriFieldTypeDate":"esriFieldTypeString"}async function _parseFeatures(e,t,r,o){const a=[],n=o.includeHeaderRow?e.slice(1):e,s=(e,r)=>0===t.columnCount||(r<t.columnIndex||r>=t.columnIndex+t.columnCount);return await Promise.all(n.map((async(e,n)=>{const i=new Feature;for(let t=0;t<r.fields.length;t++){const a=r.fields[t],m=e.filter(s);if(o.outFields.includes("*")||o.outFields.includes(a.name)){let e=await _parseValue(m[t]?.raw,a,o);"esriFieldTypeOID"===a.type&&null===e&&(e=n),i.attributes.set(a.name,e)}}t.geometries&&(i.geometry=await _projectGeometry(t.geometries[n],o.outSpatialReference)),a.push(i)}))),a}async function _parseValue(e,t,r){if("esriFieldTypeDouble"===t.type||"esriFieldTypeOID"===t.type)return"number"==typeof e?e:e?parseNumber(e):null;if("esriFieldTypeDate"===t.type){if(e instanceof Date)return e.getTime();if("number"==typeof e){const t=(await import("xlsx")).SSF.parse_date_code(e);return t?new Date(t.y,t.m-1,t.d,t.H,t.M,t.S).getTime():void 0}return""===e?null:parseDate(e).getTime()}const o=e.toString();if(r.escapeFormulaChars&&o.startsWith("\t"))for(const e of FORMULA_TRIGGER_CHARS)if(o.length>1&&o.charAt(1)===e)return o.substring(1);return o}function _convertToExcelDateFormatString(e){switch(e){case DateFormat.DATE_SHORT:return"dd/MM/yyyy";case DateFormat.DATE_LONG:return"MMMM d, yyyy";case DateFormat.TIME_SHORT:return"h:mm AM/PM";case DateFormat.TIME_LONG:return"h:mm:ss AM/PM";case DateFormat.DATE_TIME_SHORT:case DateFormat.DEFAULT:return"MMM d yyyy h:mm AM/PM";case DateFormat.DATE_TIME_LONG:return"MMMM d yyyy h:mm AM/PM";case DateFormat.FULL:return"dddd, MMMM d yyyy h:mm AM/PM";case DateFormat.ISO_8601:case DateFormat.ROUND_TRIP:return'yyyy-MM-dd"T"HH:mm:ss';default:{const t=e.replace(/tt/g,"AM/PM");return t.includes("z")&&_getConvertLogger().warn("Warning: Excel will not recognize timezone format 'z', 'zz', or 'zzz'"),t.includes("h")&&!t.includes("AM/PM")&&_getConvertLogger().warn("Warning: Excel will interpret 'h' as 'H' if the format does not have an AM/PM designator"),t}}}function _convertToExcelNumberFormatString(e){switch(e){case NumberFormat.ACCOUNTING:return'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)';case NumberFormat.CURRENCY:return'"$"#,##0.00';case NumberFormat.FIXED_POINT:case NumberFormat.DEFAULT:return"0.0000";case NumberFormat.NUMBER:return"#,##0.0000";case NumberFormat.PERCENT:return"0%";case NumberFormat.ROUND_TRIP:return"0.00000";default:return e}}function _toXLSXValue(e,t){if(null==e)return"";if(!t.useFormattedValues){if("number"==typeof e)return e;if(e instanceof Date)return"timestamp"===t.dateFormat?e.getTime():e}let r=e.toString();return t.escapeFormulaChars&&(r=escapeFormulaChars(r)),r}async function _parseXLSX(e,t){const r=await import("xlsx"),o=new Promise(((o,a)=>{const n=new FileReader;n.onload=()=>{const e=new Uint8Array(n.result);let a="";for(const t of e)a+=String.fromCharCode(t);const s=r.read(a,{type:"binary",cellDates:!0}),i=t.sheetName||s.SheetNames[0],m=s.Sheets[i];o(m)},n.onerror=()=>{a(n.error)},n.readAsArrayBuffer(e)})),a=await o,n=r.utils.decode_range(a["!ref"]),s=[];for(let e=n.s.r;e<=n.e.r;e++){const t=[];for(let o=n.s.c;o<=n.e.c;o++){const n=a[`${r.utils.encode_cell({r:e,c:o})}`];t.push(n?{raw:n.v,formatted:"s"===n.t?void 0:n.w}:{raw:""})}s.push(t)}return s}async function _getDBaseSpatialReferenceWKT(e){const{wkid:t,wkt:r}=e[0].spatialReference;if(!e.every((e=>e.spatialReference.wkid===t&&e.spatialReference.wkt===r)))throw new Error("Cannot create shapefile that contains geometries with different spatial references.");return r??esriWkidToWkt(t??SpatialReference.WGS84.wkid)}function _getDBaseColumnTypes(e,t,r,o){const a={};for(const n of t){if(e.some((e=>_hasCodedDomain(e,n)))){a[n]=DBaseTypes.STRING;continue}const t=r?r.fields.find((e=>e.name===n)):void 0;if(t){switch(t.type){case"oid":case"double":case"integer":case"single":case"small-integer":a[n]=DBaseTypes.NUMBER;break;case"date":a[n]=o?DBaseTypes.NUMBER:DBaseTypes.DATE;break;default:a[n]=DBaseTypes.STRING}continue}const s=(e,t)=>e.attributes.get(t)??e.presentableAttributes.get(t);e.every((e=>s(e,n)instanceof Date||void 0===s(e,n)))&&e.some((e=>s(e,n)instanceof Date))?a[n]=o?DBaseTypes.NUMBER:DBaseTypes.DATE:e.every((e=>"number"==typeof s(e,n)||void 0===s(e,n)))&&e.some((e=>"number"==typeof s(e,n)))?a[n]=DBaseTypes.NUMBER:e.every((e=>"boolean"==typeof s(e,n)||void 0===s(e,n)))&&e.some((e=>"boolean"==typeof s(e,n)))?a[n]=DBaseTypes.BOOLEAN:a[n]=DBaseTypes.STRING}return a}function _getDBaseGeometries(e){return e.map((e=>{if(isPoint(e)){const{x:t,y:r,z:o,m:a}=e,n=[t,r];return e.hasZ&&n.push(o),e.hasM&&n.push(a),_padZValues(n,e)}if(isMultipoint(e))return _padZValuesArray(e.points,e);if(isPolyline(e))return _padZValues2DArray(e.paths,e);if(isPolygon(e))return _padZValues2DArray(e.rings,e);if(isExtent(e)){const t=[e.xmin,e.ymax];return[[t,[e.xmax,e.ymax],[e.xmax,e.ymin],[e.xmin,e.ymin],t]]}throw new Error("Unsupported geometry type.")}))}function _padZValues(e,t){return 3===e.length&&!t.hasZ&&t.hasM?[e[0],e[1],void 0,e[2]]:e}function _padZValuesArray(e,t){return e.map((e=>_padZValues(e,t)))}function _padZValues2DArray(e,t){return e.map((e=>_padZValuesArray(e,t)))}function _getDbaseValues(e,t,r,o){const a=[];for(const n of e){const e={};for(const a of t){let t=_getAttributeValue(n,a,o);if(null==t&&(t=""),o.useFormattedValues)t=t.toString();else{t=getDbaseValue(t,r[a],o)}e[a]=t}a.push(e)}return a}function getDbaseValue(e,t,r){switch(t){case DBaseTypes.NUMBER:return e instanceof Date?e.getTime():parseNumber(e);case DBaseTypes.STRING:return e instanceof Date?formatDate({format:r.dateFormat??DateFormat.ROUND_TRIP,timeZone:"UTC"},e):"number"==typeof e?formatNumber(r.numberFormat??NumberFormat.DEFAULT,e):e.toString();case DBaseTypes.BOOLEAN:return!!e;case DBaseTypes.DATE:return parseDate(e);default:return e.toString()}}function _parseShapefileNames(e){if(!e.length)return[];let t=e[0];const r=t.match(shapefileNameRegex);return r?(t=r[1],e.filter((e=>{const r=e.match(shapefileNameRegex);return r&&r[1]===t}))):[t]}function _parseDBaseData(e){const t=e.map((e=>Object.keys(e))).reduce(((e,t)=>e.concat(t.filter((t=>!e.includes(t))))),[]);return[t.map((e=>({raw:e}))),...e.map((e=>t.map((t=>({raw:e[t]})))))]}function _parseShpPointGeometry(e){checkArg("geometry.coordinates",e.type).matches("Point"),checkArg("geometry.coordinates",e.coordinates).satisfies((e=>"number"==typeof e||Array.isArray(e)));const[t,r,o]=e.coordinates,a=new Point({x:t,y:r,spatialReference:SpatialReference.WGS84});if(Array.isArray(o)){const[e,t]=o;!e&&!t||e?a.z=e:a.m=t}return a}async function _parseShpGeometry(e,t){const r=isPoint(e)?_parseShpPointGeometry(e):geoJSONToEsri(e);if(t){let e;try{const r=await esriWktToWkid(t);e=new SpatialReference({wkid:parseNumber(r)})}catch{}e||(e=new SpatialReference({wkt:t})),r.spatialReference=e}return r}
1
+ import Point from"@arcgis/core/geometry/Point";import SpatialReference from"@arcgis/core/geometry/SpatialReference";import{translate}from"../locale/language.js";import{toEsriApiGeometry,toPortalGeometry}from"../portal/Geometry.js";import{checkArg,assertNever}from"../utilities/checkArg.js";import{parse as parseDate,format as formatDate,DEFAULT_PARSING_FORMATS,DateFormat,INVALID_DATE}from"../utilities/date.js";import{esriToWKT,esriToGeoJSON,geoJSONToEsri,wktToEsri,esriWkidToWkt,esriWktToWkid,project,isPoint,isMultipoint,isPolyline,isPolygon,isExtent}from"../utilities/geometry.js";import{getLogger}from"../utilities/log.js";import{parse as parseNumber,format as formatNumber,NumberFormat,isNumeric}from"../utilities/number.js";import{Feature}from"./Feature.js";import{FeatureSet}from"./FeatureSet.js";const FORMULA_TRIGGER_CHARS=["=","-","+","@"],QUOTE='"',FIELD_NAME_REGEX=/[^a-zA-Z\d_]/g,DEFAULT_WINDOWS_ROW_DELIMITER="\r\n",DEFAULT_UNIX_ROW_DELIMITER="\n",DEFAULT_SHEET_NAME="sheet1",DEFAULT_EXCEL_DATE_FORMATS=[...DEFAULT_PARSING_FORMATS.map(_convertToExcelDateFormatString),"M/d/yy"],shapefileNameRegex=/(\w+)_(point|multipoint|polyline|polygon)z?/;var DBaseTypes;function _getConvertLogger(){return getLogger("geocortex.api.data.convert")}!function(e){e.DATE="D",e.NUMBER="N",e.STRING="C",e.BOOLEAN="L"}(DBaseTypes||(DBaseTypes={}));export var GeometryFormat;!function(e){e.NONE="NONE",e.WKT="WKT",e.XY="XY",e.XYZ="XYZ",e.LAT_LON="LAT_LONG",e.GEO_JSON="GEO_JSON",e.ARCGIS_JSON="ARCGIS_JSON"}(GeometryFormat||(GeometryFormat={}));export async function toCsv(e,t){checkArg("featureSet",e).isNotMissing();const r=Array.from(e),o={...{useFormattedValues:!1,alwaysQuote:!1,escapeFormulaChars:!0,delimiter:",",dateFormat:DateFormat.ROUND_TRIP,geometryFormat:r.some((e=>void 0!==e.geometry&&null!==e.geometry))?GeometryFormat.WKT:GeometryFormat.NONE,includeByteOrderMark:!0,outSpatialReference:SpatialReference.WGS84,includeHeaderRow:!0,outFields:_getDefaultOutFields(e.source),rowDelimiter:navigator.platform.startsWith("Win")?"\r\n":"\n"},...t},{includeByteOrderMark:a,includeHeaderRow:n,delimiter:s,outFields:i,rowDelimiter:m}=o,u=[];a&&u.push("\ufeff");const l=_getGeometryColumns(r,o),c=_getAttributeColumns(r,i,e.schema,!0),f=_getAttributeColumns(r,i,e.schema,!1);if(n){const e=[];for(const t of l)e.push(_quotify(t,o));for(const t of c)e.push(_quotify(t,o));for(const t of f)e.push(_quotify(t,o));const t=e.join(s)+m;u.push(t)}await Promise.all(r.map((async e=>{const t=[],r=(t,r)=>_quotify(_stringify(_getAttributeValue(e,t,r),r),r);t.push(...await _getCSVGeometry(e.geometry,o)),t.push(...c.map((e=>r(e,o)))),t.push(...f.map((e=>r(e,o))));const a=`${t.join(s)}${m}`;u.push(a)})));return new Blob(u,{type:"text/plain",endings:"\n"===m||"\r\n"===m?"transparent":"native"})}export async function csvToFeatureSet(e,t){let r;if(checkArg("csvData",e).isNotMissing(),e instanceof Blob){const t=new Promise(((t,r)=>{const o=new FileReader;o.onload=()=>{t(o.result)},o.onerror=()=>{r(o.error)},o.readAsText(e)}));r=await t}else r=e;const o={...{delimiter:",",escapeFormulaChars:!0,includeHeaderRow:!0,outFields:["*"],inSpatialReference:SpatialReference.WGS84,generatePrimaryKey:!0,primaryKeyField:"OBJECTID"},...t,detectOid:!t?.primaryKeyField},a=_parseCSV(r,o.rowDelimiter||_parseRowDelimiter(r),o.delimiter),n=_parseGeometries(a,o),s=_parseSchema(a,n,o),i=await _parseFeatures(a,n,s,o);return new FeatureSet({features:i,schema:s})}export async function toXLSX(e,t){checkArg("featureSet",e).isNotMissing();const r=Array.from(e),o={...{useFormattedValues:!1,includeHeaderRow:!0,escapeFormulaChars:!0,geometryFormat:r.some((e=>void 0!==e.geometry&&null!==e.geometry))?GeometryFormat.WKT:GeometryFormat.NONE,outFields:_getDefaultOutFields(e.source),outSpatialReference:SpatialReference.WGS84,dateFormat:DateFormat.DEFAULT,numberFormat:NumberFormat.DEFAULT,sheetName:"sheet1"},...t},{outFields:a,includeHeaderRow:n,numberFormat:s}=o,i=[],m=_getGeometryColumns(r,o),u=_getAttributeColumns(r,a,e.schema,!0),l=_getAttributeColumns(r,a,e.schema,!1);if(n){const t=m.concat(u).concat(_getXlsxColumnName(l,e.source));i.push(t)}await Promise.all(r.map((async e=>{const t=[];t.push(...await _getGeometry(e.geometry,o));for(const r of u){const a=_toXLSXValue(e.attributes.get(r),o);t.push(a)}for(const r of l){const a=_toXLSXValue(_getAttributeValue(e,r,o),o);t.push(a)}t.every((e=>"string"!=typeof e||e.length<=32767))?i.push(t):_getConvertLogger().warn(`toXLSX cell limit exceeded, feature (${e.primaryKey??e.id}) omitted.`)})));const c=await import("xlsx"),f={SheetNames:[],Sheets:{}},p=c.utils.aoa_to_sheet(i,{cellDates:!0});for(const e of Object.keys(p).filter((e=>!e.startsWith("!")))){const t=p[e];"d"===t.t?t.z=_convertToExcelDateFormatString(o.dateFormat??DateFormat.ROUND_TRIP):"n"===t.t&&(t.z=_convertToExcelNumberFormatString(s))}f.SheetNames.push(o.sheetName),f.Sheets[o.sheetName]=p;const y=c.write(f,{type:"binary",bookType:"xlsx",compression:!0,bookSST:!0,cellDates:!0}),d=new Uint8Array(y.length);for(let e=0;e<y.length;e++)d[e]=y.charCodeAt(e);return new Blob([d.buffer],{type:"text/plain"})}export async function xlsxToFeatureSet(e,t){checkArg("xlsxData",e).isNotMissing();const r={...{includeHeaderRow:!0,escapeFormulaChars:!0,outFields:["*"],inSpatialReference:SpatialReference.WGS84,generatePrimaryKey:!0,primaryKeyField:"OBJECTID"},...t,detectOid:!t?.primaryKeyField},o=await _parseXLSX(e,r),a=_parseGeometries(o,r),n=_parseSchema(o,a,r),s=await _parseFeatures(o,a,n,r);return new FeatureSet({features:s,schema:n})}export async function toShapefile(e,t){checkArg("featureSet",e).isNotMissing();const[{default:r},o]=await Promise.all([import("jszip"),import("../forked-libs/shp-write/index.js")]),a=Array.from(e),n={...{useFormattedValues:!1,outFields:_getDefaultOutFields(e.source),fileName:e.title||"export"},...t},{outFields:s,outSpatialReference:i,fileName:m}=n,u=e=>e.geometry.hasZ||e.geometry.hasM,l=new Map,c=a.filter((e=>isPoint(e.geometry)));l.set("POINTZ",c.filter(u)),l.set("POINT",c.filter((e=>!u(e))));const f=a.filter((e=>isMultipoint(e.geometry)));l.set("MULTIPOINTZ",f.filter(u)),l.set("MULTIPOINT",f.filter((e=>!u(e))));const p=a.filter((e=>isPolyline(e.geometry)));l.set("POLYLINEZ",p.filter(u)),l.set("POLYLINE",p.filter((e=>!u(e))));const y=a.filter((e=>isPolygon(e.geometry)||isExtent(e.geometry)));l.set("POLYGONZ",y.filter(u)),l.set("POLYGON",y.filter((e=>!u(e))));const d=_getAttributeColumns(a,s,e.schema,!0);let g=_getAttributeColumns(a,s,e.schema,!1);g=d.concat(g);const h=new r,F=Array.from(l.keys()).filter((e=>l.get(e).length>0));await Promise.all(F.map((async t=>{const r=l.get(t),a=await Promise.all(r.map((e=>_projectGeometry(e.geometry,i)))),s=await _getDBaseSpatialReferenceWKT(a),u=n.useFormattedValues?Object.assign({},...g.map((e=>({[e]:DBaseTypes.STRING})))):_getDBaseColumnTypes(r,g,e.schema,"timestamp"===n.dateFormat),c=_getDBaseGeometries(a),f=_getDbaseValues(r,g,u,n);o.write(f,t,c,((e,r)=>{const o=F.length>1?`${m}_${t.toLowerCase()}`:m;h.file(`${o}.shp`,r.shp.buffer,{binary:!0}),h.file(`${o}.shx`,r.shx.buffer,{binary:!0}),h.file(`${o}.dbf`,r.dbf.buffer,{binary:!0}),h.file(`${o}.prj`,s)}))})));const _=await h.generateAsync({type:"uint8array"});return new Blob([_.buffer],{type:"text/plain"})}export async function shapefileToFeatureSet(e,t){checkArg("shapefileData",e).isNotMissing();const r={outFields:["*"],includeHeaderRow:!0,generatePrimaryKey:!0,primaryKeyField:"OBJECTID",...t,detectOid:!t?.primaryKeyField},o=new Promise(((t,r)=>{const o=new FileReader;o.onload=()=>{t(o.result)},o.onerror=()=>{r(o.error)},o.readAsArrayBuffer(e)})),[{default:a},{default:n}]=await Promise.all([import("jszip"),import("shpjs")]),s=await o,i=await a.loadAsync(new Uint8Array(s)),m=i.filter((()=>!0)).map((e=>e.name));let u,l=m.filter((e=>e.endsWith(".shp"))).map((e=>e.substring(0,e.length-4)));if(l=_parseShapefileNames(l),m.some((e=>e.endsWith(".prj")))&&!l.every((e=>m.includes(`${e}.prj`))))throw new Error("Shapefile zip must contain the same prj file for each separate shapefile");await Promise.all(m.filter((e=>e.endsWith(".prj"))).map((async e=>{const t=await i.file(e).async("string");if(u){if(t!==u)throw new Error("Shapefile zip must contain the same prj file for each separate shapefile")}else u=t})));const c={geometries:[],columnCount:0,columnIndex:0};let f=[];for(const e of l){if(!m.includes(`${e}.shx`)||!m.includes(`${e}.dbf`))throw new Error("Shapefile must contain shp, shx, and dbf files.");const t=await i.file(`${e}.shp`).async("uint8array"),r=n.parseShp(t),o=await i.file(`${e}.dbf`).async("uint8array"),a=n.parseDbf(o);if(a.length!==r.length)throw new Error("Shapefile must contain shp, shx, and dbf files.");const s=await Promise.all(r.map((e=>_parseShpGeometry(e,u))));c.geometries=c.geometries.concat(s),f=f.concat(a)}const p=_parseDBaseData(f),y=_parseSchema(p,c,r),d=await _parseFeatures(p,c,y,r);return new FeatureSet({features:d,schema:y})}function _getGeometryColumns(e,t){return t.geometryFormat===GeometryFormat.XYZ?["x","y","z"]:t.geometryFormat===GeometryFormat.XY?["x","y"]:t.geometryFormat===GeometryFormat.LAT_LON?["latitude","longitude"]:t.geometryFormat===GeometryFormat.NONE?[]:["geometry"]}function _getAttributeColumns(e,t,r,o){const a=r.fields.filter((e=>"oid"===e.type)).map((e=>e.name)).toArray();if(o)return a;if(t&&!t.includes("*"))return t.filter((e=>!a.includes(e)));{const t=r.fields.filter((e=>"oid"!==e.type)).map((e=>e.name)).toArray();let o=[];for(const r of e)for(const e of r.attributes.keys())t.includes(e)||a.includes(e)||o.includes(e)||o.push(e);return o=o.sort(),t.concat(o)}}function _getXlsxColumnName(e,t){const r=t?.schema?.fieldExtensions.initializedItems.map((e=>e.field));return e.map((e=>r?.find((t=>t.name===e))?.alias??e))}function _getDefaultOutFields(e){if(!e)return["*"];const t=e.featureSettings.popupTemplate?.content;return(Array.isArray(t)?t.find((e=>"fields"===e.type))?.fieldInfos?.filter((e=>e.visible))?.map((e=>e.fieldName)):void 0)??e.featureSettings.popupTemplate?.fieldInfos?.filter((e=>e.visible))?.map((e=>e.fieldName))??["*"]}async function _getCSVGeometry(e,t){let r=await _getGeometry(e,t);return t.geometryFormat!==GeometryFormat.XYZ&&t.geometryFormat!==GeometryFormat.XY&&t.geometryFormat!==GeometryFormat.LAT_LON||(r=r.map((e=>void 0===e?"":_stringify(e,t)))),r.map((e=>""===e?"":_quotify(e,t)))}async function _getGeometry(e,t){const r=await _projectGeometry(e,t.outSpatialReference);if(t.geometryFormat===GeometryFormat.XYZ){if(!r)return["","",""];if(!isPoint(r))throw new Error("Cannot use geometry format XYZ with non-point geometry");return[r.x,r.y,r.z]}if(t.geometryFormat===GeometryFormat.XY){if(!r)return["",""];if(!isPoint(r))throw new Error("Cannot use geometry format XY with non-point geometry");return[r.x,r.y]}if(t.geometryFormat===GeometryFormat.LAT_LON){if(!r)return["",""];if(!isPoint(r))throw new Error("Cannot use geometry format LAT_LONG with non-point geometry");return[r.y,r.x]}return t.geometryFormat===GeometryFormat.ARCGIS_JSON?r?[JSON.stringify(toPortalGeometry(r))]:[""]:t.geometryFormat===GeometryFormat.WKT?r?[esriToWKT(r)]:[""]:t.geometryFormat===GeometryFormat.GEO_JSON?r?[JSON.stringify(esriToGeoJSON(r))]:[""]:[]}async function _projectGeometry(e,t){return e?.spatialReference&&!e.spatialReference.equals(t)&&t?(await project([e],t))[0]:e}function _quotify(e,t){const r=[t.delimiter,'"',"\r","\n",t.rowDelimiter];if(t.alwaysQuote||r.some((t=>e.includes(t)))){return`"${e.replace(new RegExp('"',"g"),'""')}"`}return e}function _stringify(e,t){if(null==e)return"";if(!t.useFormattedValues){if("number"==typeof e){const r=t.numberFormat||NumberFormat.ROUND_TRIP;return formatNumber(r,e)}if(e instanceof Date)return"timestamp"===t.dateFormat?e.getTime().toString():formatDate({format:t.dateFormat,timeZone:"UTC"},e)}let r=e.toString();return t.escapeFormulaChars&&(r=escapeFormulaChars(r)),r}function _getAttributeValue(e,t,r){if(r.useFormattedValues||_hasCodedDomain(e,t))return e.presentableAttributes.get(t)??e.attributes.get(t);if("date"===e.schema.findFieldByName(t)?.type){const r=parseDate(e.attributes.get(t));if(!isNaN(r.getTime()))return r}return e.attributes.get(t)??e.presentableAttributes.get(t)}function _hasCodedDomain(e,t){return t===e.schema.typeIdField||("coded-value"===e.type?.domains?.[t]?.type||"coded-value"===e.schema.findFieldByName(t)?.domain?.type)}function escapeFormulaChars(e){for(const t of FORMULA_TRIGGER_CHARS)if(e.startsWith(t))return`\t${e}`;return e}function _parseRowDelimiter(e){let t="\n";return _forDelimiter(e,"\r\n",((r,o)=>(0===r&&o===e.length||(t="\r\n"),!1))),t}function _parseCSV(e,t,r){const o=[];if(_forDelimiter(e,t,((t,a)=>{const n=e.substring(t,a);return n.length>0&&o.push(((e,t)=>{const o=[];return _forDelimiter(e,r,((r,a)=>{const n=e.substring(r,a);return o.push({raw:_parseQuotes(n,t,o.length)}),!0})),o})(n,o.length)),!0})),o.length){const e=o[0].length;o.forEach(((t,r)=>{if(t.length!==e)throw new Error(`Detected invalid CSV: Row ${r} does not have expected number of columns: ${e}`)}))}return o}function _parseQuotes(e,t,r){const o=e.startsWith('"'),a=e.endsWith('"');if(o&&!a||!o&&a)throw new Error(`Detected invalid CSV: Missing opening or closing quote for value at row:${t} column:${r}`);const n=o?e.substring('"'.length,e.length-'"'.length):e;let s=-1;return _forDelimiter(n,'"',((e,o)=>{if(o===n.length)return!0;if(s<0){if(o!==n.length)return s=o,!0}else if(o===s+'"'.length)return s=-1,!0;throw new Error(`Detected invalid CSV: Non-escaped quote for value at row:${t} column:${r}`)})),n.replace(new RegExp('""',"g"),'"')}function _forDelimiter(e,t,r){let o,a=!1,n=0,s=0;for(;o=e.indexOf(t,n),!(o<0);){for(let t=n;t<o;)e.substring(t).startsWith('"')?(a=!a,t+='"'.length):t++;const i=o+t.length;if(!a){const e=r(s,o);if(s=i,!e)break}n=i}r(s,e.length)}const geometryTypeHeaders={[GeometryFormat.XYZ]:[["x","y","z"]],[GeometryFormat.XY]:[["x","y"]],[GeometryFormat.LAT_LON]:[["lat","lon"],["lat","long"],["latitude","longitude"]],[GeometryFormat.ARCGIS_JSON]:[["geometry"]],[GeometryFormat.GEO_JSON]:[["geometry"]],[GeometryFormat.WKT]:[["geometry"]]};function _parseArcGisJson(e,t){const r=JSON.parse(e),o=toEsriApiGeometry(r);return r.spatialReference||(o.spatialReference=t),o}function _parseGeoJson(e,t){const r=geoJSONToEsri(JSON.parse(e));return r.spatialReference=t,r}function _parseWkt(e,t){const r=wktToEsri(e);return r.spatialReference=t,r}function _findGeometryFormatIndex(e,t){const r=geometryTypeHeaders[t];for(const t of r){const r=e.findIndex(((r,o)=>!(o+t.length>e.length)&&t.every(((t,r)=>e[o+r].raw.toString().toLowerCase()===t))));if(-1!==r)return r}}function _detectGeometry(e,t){return e.map(((e,r)=>{const o=e?.raw;if("string"==typeof o&&""!==o)try{return t(o,void 0),r}catch{return}})).find((e=>void 0!==e))}function _parseGeometries(e,t){const r=t.includeHeaderRow?e.slice(1):e;if(t.geometryFormat===GeometryFormat.NONE)return{columnCount:0,columnIndex:0};const o=(e,o)=>{const a=o===GeometryFormat.XYZ,n=o===GeometryFormat.LAT_LON,s=a?3:2;return{columnCount:s,columnIndex:e,geometries:r.map((r=>{if(r.length>=e+s&&isNumeric(r[e+0].raw)&&isNumeric(r[e+1].raw)&&(!a||isNumeric(r[e+2].raw)))return new Point({x:parseNumber(n?r[e+1].raw:r[e+0].raw),y:parseNumber(n?r[e+0].raw:r[e+1].raw),z:a?parseNumber(r[e+2].raw):0,spatialReference:t.inSpatialReference})}))}},a=(e,o)=>({columnCount:1,columnIndex:e,geometries:r.map((t=>t[e])).map((e=>{if(""!==e.raw)return o(e.raw.toString(),t.inSpatialReference)}))});if(t.geometryFormat){const r=_findGeometryFormatIndex(e[0],t.geometryFormat);if(t.includeHeaderRow&&void 0===r)throw new Error(`Error parsing CSV: Expected geometry columns ${geometryTypeHeaders[t.geometryFormat][0].join(",")} are missing for GeometryType.${t.geometryFormat}`);return((e,t)=>{switch(t){case GeometryFormat.NONE:return{columnCount:0,columnIndex:0};case GeometryFormat.LAT_LON:case GeometryFormat.XYZ:case GeometryFormat.XY:return o(e,t);case GeometryFormat.ARCGIS_JSON:return a(e,_parseArcGisJson);case GeometryFormat.GEO_JSON:return a(e,_parseGeoJson);case GeometryFormat.WKT:return a(e,_parseWkt);default:return assertNever(t,new Error(`Unknown geometry format "${t}".`))}})(r??0,t.geometryFormat)}if(t.includeHeaderRow){const t=_findGeometryFormatIndex(e[0],GeometryFormat.ARCGIS_JSON);if(void 0!==t)for(const e of[_parseArcGisJson,_parseGeoJson,_parseWkt])try{return a(t,e)}catch(e){}const r=[GeometryFormat.XYZ,GeometryFormat.XY,GeometryFormat.LAT_LON];for(const t of r){const r=_findGeometryFormatIndex(e[0],t);if(void 0!==r)return o(r,t)}}for(const e of[_parseArcGisJson,_parseGeoJson,_parseWkt])try{const t=_detectGeometry(r[0],e);return a(t,e)}catch(e){}return{columnCount:0,columnIndex:0}}function _parseSchema(e,t,r){const o={fields:[]};let a=0;for(let s=t.columnCount;s<e[0].length;s++){if(n=s,0!==t.columnCount&&n>=t.columnIndex&&n<t.columnIndex+t.columnCount)continue;const i=_parseFieldType(e,s,r);let m=e[0][s].raw.toString(),u=m.replace(FIELD_NAME_REGEX,"_");if(r.includeHeaderRow||(u="field"+ ++a,m=translate("gcx.api.data.convert.import-field-alias",a)),!u)throw new Error("Error parsing CSV or XLSX: Header cannot contain blank values");o.fields.push({alias:m,name:u,type:i})}var n;if(o.spatialReference=r.outSpatialReference,t.geometries?.length){const e=t.geometries.filter((e=>void 0!==e)).map((e=>e.type)),r=e[0];o.geometryType=e.every((e=>e===r))?r:void 0}if(r.generatePrimaryKey&&!o.fields.find((e=>"esriFieldTypeOID"===e.type))){const e=o.fields.length+1,t=!!o.fields.find((e=>"id"===e.name.toLowerCase()));o.fields.push({name:t?`field${e}`:"id",alias:t?translate("gcx.api.data.convert.import-field-alias",e):"id",type:"esriFieldTypeOID"})}return o}function _parseFieldType(e,t,r){let o=!1,a=!0,n=!0,s=!0;const i=new Set,m=r.includeHeaderRow?e[0]:[],u=r.includeHeaderRow?e.slice(1):e;for(const e of u){const m=e[t];""!==m.raw&&(i.add(m.raw),o=!0,a&&(a=isNumeric(m.raw)||Number.isNaN(m.raw)),n&&(n=m.raw instanceof Date||parseDate(r.dateFormat||DEFAULT_PARSING_FORMATS,m.raw)!==INVALID_DATE),s&&(s=parseDate(r.dateFormat||DEFAULT_EXCEL_DATE_FORMATS,m.formatted)!==INVALID_DATE))}const l=i.size===u.length;return r.primaryKeyField&&m[t]?.raw===r.primaryKeyField||r.detectOid&&o&&l&&a?(r.detectOid=!1,"esriFieldTypeOID"):o&&s?"esriFieldTypeDate":o&&a?"esriFieldTypeDouble":o&&n?"esriFieldTypeDate":"esriFieldTypeString"}async function _parseFeatures(e,t,r,o){const a=[],n=o.includeHeaderRow?e.slice(1):e,s=(e,r)=>0===t.columnCount||(r<t.columnIndex||r>=t.columnIndex+t.columnCount);return await Promise.all(n.map((async(e,n)=>{const i=new Feature;for(let t=0;t<r.fields.length;t++){const a=r.fields[t],m=e.filter(s);if(o.outFields.includes("*")||o.outFields.includes(a.name)){let e=await _parseValue(m[t]?.raw,a,o);"esriFieldTypeOID"===a.type&&null===e&&(e=n),i.attributes.set(a.name,e)}}t.geometries&&(i.geometry=await _projectGeometry(t.geometries[n],o.outSpatialReference)),a.push(i)}))),a}async function _parseValue(e,t,r){if("esriFieldTypeDouble"===t.type||"esriFieldTypeOID"===t.type)return"number"==typeof e?e:e?parseNumber(e):null;if("esriFieldTypeDate"===t.type){if(e instanceof Date)return e.getTime();if("number"==typeof e){const t=(await import("xlsx")).SSF.parse_date_code(e);return t?new Date(t.y,t.m-1,t.d,t.H,t.M,t.S).getTime():void 0}return""===e?null:parseDate(e).getTime()}const o=e.toString();if(r.escapeFormulaChars&&o.startsWith("\t"))for(const e of FORMULA_TRIGGER_CHARS)if(o.length>1&&o.charAt(1)===e)return o.substring(1);return o}function _convertToExcelDateFormatString(e){switch(e){case DateFormat.DATE_SHORT:return"dd/MM/yyyy";case DateFormat.DATE_LONG:return"MMMM d, yyyy";case DateFormat.TIME_SHORT:return"h:mm AM/PM";case DateFormat.TIME_LONG:return"h:mm:ss AM/PM";case DateFormat.DATE_TIME_SHORT:case DateFormat.DEFAULT:return"MMM d yyyy h:mm AM/PM";case DateFormat.DATE_TIME_LONG:return"MMMM d yyyy h:mm AM/PM";case DateFormat.FULL:return"dddd, MMMM d yyyy h:mm AM/PM";case DateFormat.ISO_8601:case DateFormat.ROUND_TRIP:return'yyyy-MM-dd"T"HH:mm:ss';default:{const t=e.replace(/tt/g,"AM/PM");return t.includes("z")&&_getConvertLogger().warn("Warning: Excel will not recognize timezone format 'z', 'zz', or 'zzz'"),t.includes("h")&&!t.includes("AM/PM")&&_getConvertLogger().warn("Warning: Excel will interpret 'h' as 'H' if the format does not have an AM/PM designator"),t}}}function _convertToExcelNumberFormatString(e){switch(e){case NumberFormat.ACCOUNTING:return'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)';case NumberFormat.CURRENCY:return'"$"#,##0.00';case NumberFormat.FIXED_POINT:case NumberFormat.DEFAULT:return"0.0000";case NumberFormat.NUMBER:return"#,##0.0000";case NumberFormat.PERCENT:return"0%";case NumberFormat.ROUND_TRIP:return"0.00000";default:return e}}function _toXLSXValue(e,t){if(null==e)return"";if(!t.useFormattedValues){if("number"==typeof e)return e;if(e instanceof Date)return"timestamp"===t.dateFormat?e.getTime():e}let r=e.toString();return t.escapeFormulaChars&&(r=escapeFormulaChars(r)),r}async function _parseXLSX(e,t){const r=await import("xlsx"),o=new Promise(((o,a)=>{const n=new FileReader;n.onload=()=>{const e=new Uint8Array(n.result);let a="";for(const t of e)a+=String.fromCharCode(t);const s=r.read(a,{type:"binary",cellDates:!0}),i=t.sheetName||s.SheetNames[0],m=s.Sheets[i];o(m)},n.onerror=()=>{a(n.error)},n.readAsArrayBuffer(e)})),a=await o,n=r.utils.decode_range(a["!ref"]),s=[];for(let e=n.s.r;e<=n.e.r;e++){const t=[];for(let o=n.s.c;o<=n.e.c;o++){const n=a[`${r.utils.encode_cell({r:e,c:o})}`];t.push(n?{raw:n.v,formatted:"s"===n.t?void 0:n.w}:{raw:""})}s.push(t)}return s}async function _getDBaseSpatialReferenceWKT(e){const{wkid:t,wkt:r}=e[0].spatialReference;if(!e.every((e=>e.spatialReference.wkid===t&&e.spatialReference.wkt===r)))throw new Error("Cannot create shapefile that contains geometries with different spatial references.");return r??esriWkidToWkt(t??SpatialReference.WGS84.wkid)}function _getDBaseColumnTypes(e,t,r,o){const a={};for(const n of t){if(e.some((e=>_hasCodedDomain(e,n)))){a[n]=DBaseTypes.STRING;continue}const t=r?r.fields.find((e=>e.name===n)):void 0;if(t){switch(t.type){case"oid":case"double":case"integer":case"single":case"small-integer":a[n]=DBaseTypes.NUMBER;break;case"date":a[n]=o?DBaseTypes.NUMBER:DBaseTypes.DATE;break;default:a[n]=DBaseTypes.STRING}continue}const s=(e,t)=>e.attributes.get(t)??e.presentableAttributes.get(t);e.every((e=>s(e,n)instanceof Date||void 0===s(e,n)))&&e.some((e=>s(e,n)instanceof Date))?a[n]=o?DBaseTypes.NUMBER:DBaseTypes.DATE:e.every((e=>"number"==typeof s(e,n)||void 0===s(e,n)))&&e.some((e=>"number"==typeof s(e,n)))?a[n]=DBaseTypes.NUMBER:e.every((e=>"boolean"==typeof s(e,n)||void 0===s(e,n)))&&e.some((e=>"boolean"==typeof s(e,n)))?a[n]=DBaseTypes.BOOLEAN:a[n]=DBaseTypes.STRING}return a}function _getDBaseGeometries(e){return e.map((e=>{if(isPoint(e)){const{x:t,y:r,z:o,m:a}=e,n=[t,r];return e.hasZ&&n.push(o),e.hasM&&n.push(a),_padZValues(n,e)}if(isMultipoint(e))return _padZValuesArray(e.points,e);if(isPolyline(e))return _padZValues2DArray(e.paths,e);if(isPolygon(e))return _padZValues2DArray(e.rings,e);if(isExtent(e)){const t=[e.xmin,e.ymax];return[[t,[e.xmax,e.ymax],[e.xmax,e.ymin],[e.xmin,e.ymin],t]]}throw new Error("Unsupported geometry type.")}))}function _padZValues(e,t){return 3===e.length&&!t.hasZ&&t.hasM?[e[0],e[1],void 0,e[2]]:e}function _padZValuesArray(e,t){return e.map((e=>_padZValues(e,t)))}function _padZValues2DArray(e,t){return e.map((e=>_padZValuesArray(e,t)))}function _getDbaseValues(e,t,r,o){const a=[];for(const n of e){const e={};for(const a of t){let t=_getAttributeValue(n,a,o);if(null==t&&(t=""),o.useFormattedValues)t=t.toString();else{t=getDbaseValue(t,r[a],o)}e[a]=t}a.push(e)}return a}function getDbaseValue(e,t,r){switch(t){case DBaseTypes.NUMBER:return e instanceof Date?e.getTime():parseNumber(e);case DBaseTypes.STRING:return e instanceof Date?formatDate({format:r.dateFormat??DateFormat.ROUND_TRIP,timeZone:"UTC"},e):"number"==typeof e?formatNumber(r.numberFormat??NumberFormat.DEFAULT,e):e.toString();case DBaseTypes.BOOLEAN:return!!e;case DBaseTypes.DATE:return parseDate(e);default:return e.toString()}}function _parseShapefileNames(e){if(!e.length)return[];let t=e[0];const r=t.match(shapefileNameRegex);return r?(t=r[1],e.filter((e=>{const r=e.match(shapefileNameRegex);return r&&r[1]===t}))):[t]}function _parseDBaseData(e){const t=e.map((e=>Object.keys(e))).reduce(((e,t)=>e.concat(t.filter((t=>!e.includes(t))))),[]);return[t.map((e=>({raw:e}))),...e.map((e=>t.map((t=>({raw:e[t]})))))]}function _parseShpPointGeometry(e){checkArg("geometry.coordinates",e.type).matches("Point"),checkArg("geometry.coordinates",e.coordinates).satisfies((e=>"number"==typeof e||Array.isArray(e)));const[t,r,o]=e.coordinates,a=new Point({x:t,y:r,spatialReference:SpatialReference.WGS84});if(Array.isArray(o)){const[e,t]=o;!e&&!t||e?a.z=e:a.m=t}return a}async function _parseShpGeometry(e,t){const r=isPoint(e)?_parseShpPointGeometry(e):geoJSONToEsri(e);if(t){let e;try{const r=await esriWktToWkid(t);e=new SpatialReference({wkid:parseNumber(r)})}catch{}e||(e=new SpatialReference({wkt:t})),r.spatialReference=e}return r}
@@ -1,19 +1,19 @@
1
1
  <!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>GeometryFormat | @vertigis/arcgis-extensions</title><meta name="description" content="Documentation for @vertigis/arcgis-extensions"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script async src="../assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">@vertigis/arcgis-extensions</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../modules.html">@vertigis/arcgis-extensions</a></li><li><a href="../modules/data_convert.html">data/convert</a></li><li><a href="data_convert.GeometryFormat.html">GeometryFormat</a></li></ul><h1>Enumeration GeometryFormat </h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><div class="lead">
2
2
  <p>Geometry format when exporting geometry to CSV.</p>
3
- </div></div></section><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Enumeration members</h3><ul class="tsd-index-list"><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#ARCGIS_JSON" class="tsd-kind-icon">ARCGIS_<wbr/>JSON</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#GEO_JSON" class="tsd-kind-icon">GEO_<wbr/>JSON</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#LAT_LON" class="tsd-kind-icon">LAT_<wbr/>LON</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#NONE" class="tsd-kind-icon">NONE</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#WKT" class="tsd-kind-icon">WKT</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#XY" class="tsd-kind-icon">XY</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#XYZ" class="tsd-kind-icon">XYZ</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Enumeration members</h2><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="ARCGIS_JSON" class="tsd-anchor"></a><h3 class="tsd-anchor-link">ARCGIS_<wbr/>JSON<a href="#ARCGIS_JSON" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">ARCGIS_<wbr/>JSON<span class="tsd-signature-symbol"> = &quot;ARCGIS_JSON&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:338</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
3
+ </div></div></section><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Enumeration members</h3><ul class="tsd-index-list"><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#ARCGIS_JSON" class="tsd-kind-icon">ARCGIS_<wbr/>JSON</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#GEO_JSON" class="tsd-kind-icon">GEO_<wbr/>JSON</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#LAT_LON" class="tsd-kind-icon">LAT_<wbr/>LON</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#NONE" class="tsd-kind-icon">NONE</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#WKT" class="tsd-kind-icon">WKT</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#XY" class="tsd-kind-icon">XY</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#XYZ" class="tsd-kind-icon">XYZ</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Enumeration members</h2><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="ARCGIS_JSON" class="tsd-anchor"></a><h3 class="tsd-anchor-link">ARCGIS_<wbr/>JSON<a href="#ARCGIS_JSON" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">ARCGIS_<wbr/>JSON<span class="tsd-signature-symbol"> = &quot;ARCGIS_JSON&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:342</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
4
4
  <p>Geometry will be in ArcGIS Portal/REST JSON format (see
5
5
  <a href="https://developers.arcgis.com/web-map-specification/objects/geometry/">https://developers.arcgis.com/web-map-specification/objects/geometry/</a>).</p>
6
- </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="GEO_JSON" class="tsd-anchor"></a><h3 class="tsd-anchor-link">GEO_<wbr/>JSON<a href="#GEO_JSON" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">GEO_<wbr/>JSON<span class="tsd-signature-symbol"> = &quot;GEO_JSON&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:332</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
6
+ </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="GEO_JSON" class="tsd-anchor"></a><h3 class="tsd-anchor-link">GEO_<wbr/>JSON<a href="#GEO_JSON" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">GEO_<wbr/>JSON<span class="tsd-signature-symbol"> = &quot;GEO_JSON&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:336</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
7
7
  <p>Geometry will be in GeoJSON format (see <a href="http://geojson.org">http://geojson.org</a>).</p>
8
- </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="LAT_LON" class="tsd-anchor"></a><h3 class="tsd-anchor-link">LAT_<wbr/>LON<a href="#LAT_LON" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">LAT_<wbr/>LON<span class="tsd-signature-symbol"> = &quot;LAT_LONG&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:327</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
8
+ </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="LAT_LON" class="tsd-anchor"></a><h3 class="tsd-anchor-link">LAT_<wbr/>LON<a href="#LAT_LON" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">LAT_<wbr/>LON<span class="tsd-signature-symbol"> = &quot;LAT_LONG&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:331</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
9
9
  <p>Points only. Coordinates are in separate &quot;latitude&quot; and &quot;longitude&quot; columns.</p>
10
- </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="NONE" class="tsd-anchor"></a><h3 class="tsd-anchor-link">NONE<a href="#NONE" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">NONE<span class="tsd-signature-symbol"> = &quot;NONE&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:306</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
10
+ </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="NONE" class="tsd-anchor"></a><h3 class="tsd-anchor-link">NONE<a href="#NONE" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">NONE<span class="tsd-signature-symbol"> = &quot;NONE&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:310</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
11
11
  <p>Geometry will not be included.</p>
12
- </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="WKT" class="tsd-anchor"></a><h3 class="tsd-anchor-link">WKT<a href="#WKT" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">WKT<span class="tsd-signature-symbol"> = &quot;WKT&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:312</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
12
+ </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="WKT" class="tsd-anchor"></a><h3 class="tsd-anchor-link">WKT<a href="#WKT" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">WKT<span class="tsd-signature-symbol"> = &quot;WKT&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:316</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
13
13
  <p>Geometry will be in OGC WKT format (see
14
14
  <a href="https://en.wikipedia.org/wiki/Well-known_text">https://en.wikipedia.org/wiki/Well-known_text</a>).</p>
15
- </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="XY" class="tsd-anchor"></a><h3 class="tsd-anchor-link">XY<a href="#XY" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">XY<span class="tsd-signature-symbol"> = &quot;XY&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:317</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
15
+ </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="XY" class="tsd-anchor"></a><h3 class="tsd-anchor-link">XY<a href="#XY" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">XY<span class="tsd-signature-symbol"> = &quot;XY&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:321</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
16
16
  <p>Points only. Coordinates are in separate &quot;x&quot; and &quot;y&quot; columns.</p>
17
- </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="XYZ" class="tsd-anchor"></a><h3 class="tsd-anchor-link">XYZ<a href="#XYZ" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">XYZ<span class="tsd-signature-symbol"> = &quot;XYZ&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:322</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
17
+ </div></div></section><section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum"><a id="XYZ" class="tsd-anchor"></a><h3 class="tsd-anchor-link">XYZ<a href="#XYZ" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">XYZ<span class="tsd-signature-symbol"> = &quot;XYZ&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in src/data/convert.ts:326</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
18
18
  <p>Points only. Coordinates are in separate &quot;x&quot;, &quot;y&quot;, and &quot;z&quot; columns.</p>
19
19
  </div></div></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../modules.html">Modules</a></li><li class=" tsd-kind-module"><a href="../modules/AccessDeniedError.html">Access<wbr/>Denied<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/ArgumentError.html">Argument<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/ArgumentMissingError.html">Argument<wbr/>Missing<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/ArgumentOutOfRangeError.html">Argument<wbr/>Out<wbr/>Of<wbr/>Range<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/Entity.html">Entity</a></li><li class=" tsd-kind-module"><a href="../modules/ErrorBase.html">Error<wbr/>Base</a></li><li class=" tsd-kind-module"><a href="../modules/FailureMode.html">Failure<wbr/>Mode</a></li><li class=" tsd-kind-module"><a href="../modules/Hyperlink.html">Hyperlink</a></li><li class=" tsd-kind-module"><a href="../modules/InvalidOperationError.html">Invalid<wbr/>Operation<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/ItemType.html">Item<wbr/>Type</a></li><li class=" tsd-kind-module"><a href="../modules/LanguageResources.html">Language<wbr/>Resources</a></li><li class=" tsd-kind-module"><a href="../modules/NotFoundError.html">Not<wbr/>Found<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/PortalUri.html">Portal<wbr/>Uri</a></li><li class=" tsd-kind-module"><a href="../modules/config.html">config</a></li><li class=" tsd-kind-module"><a href="../modules/data_ArcGISServiceTableExtension.html">data/<wbr/>ArcGISService<wbr/>Table<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/data_Attachment.html">data/<wbr/>Attachment</a></li><li class=" tsd-kind-module"><a href="../modules/data_Capabilities.html">data/<wbr/>Capabilities</a></li><li class=" tsd-kind-module"><a href="../modules/data_Feature.html">data/<wbr/>Feature</a></li><li class=" tsd-kind-module"><a href="../modules/data_FeatureList.html">data/<wbr/>Feature<wbr/>List</a></li><li class=" tsd-kind-module"><a href="../modules/data_FeatureSaveError.html">data/<wbr/>Feature<wbr/>Save<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/data_FeatureSet.html">data/<wbr/>Feature<wbr/>Set</a></li><li class=" tsd-kind-module"><a href="../modules/data_FeatureSettings.html">data/<wbr/>Feature<wbr/>Settings</a></li><li class=" tsd-kind-module"><a href="../modules/data_FeatureSource.html">data/<wbr/>Feature<wbr/>Source</a></li><li class=" tsd-kind-module"><a href="../modules/data_FeatureSourceBase.html">data/<wbr/>Feature<wbr/>Source<wbr/>Base</a></li><li class=" tsd-kind-module"><a href="../modules/data_FeatureStream.html">data/<wbr/>Feature<wbr/>Stream</a></li><li class=" tsd-kind-module"><a href="../modules/data_FieldExtension.html">data/<wbr/>Field<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/data_QuerySourceCapabilities.html">data/<wbr/>Query<wbr/>Source<wbr/>Capabilities</a></li><li class=" tsd-kind-module"><a href="../modules/data_Relationship.html">data/<wbr/>Relationship</a></li><li class=" tsd-kind-module"><a href="../modules/data_RelationshipBase.html">data/<wbr/>Relationship<wbr/>Base</a></li><li class=" tsd-kind-module"><a href="../modules/data_Schema.html">data/<wbr/>Schema</a></li><li class=" tsd-kind-module"><a href="../modules/data_Table.html">data/<wbr/>Table</a></li><li class=" tsd-kind-module"><a href="../modules/data_TableExtension.html">data/<wbr/>Table<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/data_TaskSettings.html">data/<wbr/>Task<wbr/>Settings</a></li><li class=" tsd-kind-module"><a href="../modules/data__Relationship.html">data/_<wbr/>Relationship</a></li><li class=" tsd-kind-module"><a href="../modules/data__TableExtension.html">data/_<wbr/>Table<wbr/>Extension</a></li><li class="current tsd-kind-module"><a href="../modules/data_convert.html">data/convert</a></li><li class=" tsd-kind-module"><a href="../modules/data_support_DefaultRelationshipFactory.html">data/support/<wbr/>Default<wbr/>Relationship<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/data_support_DefaultTableExtensionFactory.html">data/support/<wbr/>Default<wbr/>Table<wbr/>Extension<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/data_support_RelationshipFactory.html">data/support/<wbr/>Relationship<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/data_support_TableExtensionFactory.html">data/support/<wbr/>Table<wbr/>Extension<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/data_support_attachments.html">data/support/attachments</a></li><li class=" tsd-kind-module"><a href="../modules/layer_preset_LayerPreset.html">layer-<wbr/>preset/<wbr/>Layer<wbr/>Preset</a></li><li class=" tsd-kind-module"><a href="../modules/layer_preset_LayerPresetSettings.html">layer-<wbr/>preset/<wbr/>Layer<wbr/>Preset<wbr/>Settings</a></li><li class=" tsd-kind-module"><a href="../modules/locale.html">locale</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_ArcGISSublayerExtension.html">mapping/<wbr/>ArcGISSublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_BasemapExtension.html">mapping/<wbr/>Basemap<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_Bookmark.html">mapping/<wbr/>Bookmark</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_BuildingComponentSublayerExtension.html">mapping/<wbr/>Building<wbr/>Component<wbr/>Sublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_BuildingGroupSublayerExtension.html">mapping/<wbr/>Building<wbr/>Group<wbr/>Sublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_BuildingSceneLayerExtension.html">mapping/<wbr/>Building<wbr/>Scene<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_BuildingSublayerExtension.html">mapping/<wbr/>Building<wbr/>Sublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_CSVLayerExtension.html">mapping/CSVLayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_ElevationLayerExtension.html">mapping/<wbr/>Elevation<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_FeatureCollectionLayerExtension.html">mapping/<wbr/>Feature<wbr/>Collection<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_FeatureLayerExtension.html">mapping/<wbr/>Feature<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_FeatureLayerExtensionBase.html">mapping/<wbr/>Feature<wbr/>Layer<wbr/>Extension<wbr/>Base</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_GeoRSSLayerExtension.html">mapping/<wbr/>GeoRSSLayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_GraphicsLayerExtension.html">mapping/<wbr/>Graphics<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_GroundExtension.html">mapping/<wbr/>Ground<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_GroupLayerExtension.html">mapping/<wbr/>Group<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_ImageryLayerExtension.html">mapping/<wbr/>Imagery<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_ImageryTileLayerExtension.html">mapping/<wbr/>Imagery<wbr/>Tile<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_IntegratedMeshLayerExtension.html">mapping/<wbr/>Integrated<wbr/>Mesh<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_KMLLayerExtension.html">mapping/KMLLayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_KMLSublayerExtension.html">mapping/KMLSublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_LayerExtension.html">mapping/<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_MapConstraints.html">mapping/<wbr/>Map<wbr/>Constraints</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_MapExtension.html">mapping/<wbr/>Map<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_MapImageLayerExtension.html">mapping/<wbr/>Map<wbr/>Image<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_MapImageSublayerExtension.html">mapping/<wbr/>Map<wbr/>Image<wbr/>Sublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_OpenStreetMapLayerExtension.html">mapping/<wbr/>Open<wbr/>Street<wbr/>Map<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_PointCloudLayerExtension.html">mapping/<wbr/>Point<wbr/>Cloud<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_SceneLayerExtension.html">mapping/<wbr/>Scene<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_StreamLayerExtension.html">mapping/<wbr/>Stream<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_SublayerExtension.html">mapping/<wbr/>Sublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_TileLayerExtension.html">mapping/<wbr/>Tile<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_TileSublayerExtension.html">mapping/<wbr/>Tile<wbr/>Sublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_UnsupportedLayerExtension.html">mapping/<wbr/>Unsupported<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_VectorTileLayerExtension.html">mapping/<wbr/>Vector<wbr/>Tile<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_WMSLayerExtension.html">mapping/WMSLayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_WMSSublayerExtension.html">mapping/WMSSublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_WMTSLayerExtension.html">mapping/WMTSLayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_WMTSSublayerExtension.html">mapping/WMTSSublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_WebTileLayerExtension.html">mapping/<wbr/>Web<wbr/>Tile<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping__LayerExtension.html">mapping/_<wbr/>Layer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping__SublayerExtension.html">mapping/_<wbr/>Sublayer<wbr/>Extension</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_convert.html">mapping/convert</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_BasemapExtensionFactory.html">mapping/support/<wbr/>Basemap<wbr/>Extension<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_DefaultLayerExtensionFactory.html">mapping/support/<wbr/>Default<wbr/>Layer<wbr/>Extension<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_DefaultSublayerExtensionFactory.html">mapping/support/<wbr/>Default<wbr/>Sublayer<wbr/>Extension<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_LayerExtensionFactory.html">mapping/support/<wbr/>Layer<wbr/>Extension<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_LayerListSettings.html">mapping/support/<wbr/>Layer<wbr/>List<wbr/>Settings</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_PopupTemplateFeatureSettings.html">mapping/support/<wbr/>Popup<wbr/>Template<wbr/>Feature<wbr/>Settings</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_SublayerExtensionFactory.html">mapping/support/<wbr/>Sublayer<wbr/>Extension<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_WfsCapabilities.html">mapping/support/<wbr/>Wfs<wbr/>Capabilities</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_WfsFeatureType.html">mapping/support/<wbr/>Wfs<wbr/>Feature<wbr/>Type</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support__LayerExtensionCollection.html">mapping/support/_<wbr/>Layer<wbr/>Extension<wbr/>Collection</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support__SublayerExtensionCollection.html">mapping/support/_<wbr/>Sublayer<wbr/>Extension<wbr/>Collection</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support__kml.html">mapping/support/_<wbr/>kml</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_layers.html">mapping/support/layers</a></li><li class=" tsd-kind-module"><a href="../modules/mapping_support_ogc.html">mapping/support/ogc</a></li><li class=" tsd-kind-module"><a href="../modules/menus_Menu.html">menus/<wbr/>Menu</a></li><li class=" tsd-kind-module"><a href="../modules/menus_MenuItem.html">menus/<wbr/>Menu<wbr/>Item</a></li><li class=" tsd-kind-module"><a href="../modules/menus_MenuItemState.html">menus/<wbr/>Menu<wbr/>Item<wbr/>State</a></li><li class=" tsd-kind-module"><a href="../modules/menus_support_MenuFactory.html">menus/support/<wbr/>Menu<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/menus_support_MenuItemFactory.html">menus/support/<wbr/>Menu<wbr/>Item<wbr/>Factory</a></li><li class=" tsd-kind-module"><a href="../modules/portal_ApplicationProperties.html">portal/<wbr/>Application<wbr/>Properties</a></li><li class=" tsd-kind-module"><a href="../modules/portal_BaseMap.html">portal/<wbr/>Base<wbr/>Map</a></li><li class=" tsd-kind-module"><a href="../modules/portal_BaseMapLayer.html">portal/<wbr/>Base<wbr/>Map<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_BingLayer.html">portal/<wbr/>Bing<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Bookmark.html">portal/<wbr/>Bookmark</a></li><li class=" tsd-kind-module"><a href="../modules/portal_BuildingSceneLayer.html">portal/<wbr/>Building<wbr/>Scene<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_BuildingSceneSublayer.html">portal/<wbr/>Building<wbr/>Scene<wbr/>Sublayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_CIMSymbol.html">portal/CIMSymbol</a></li><li class=" tsd-kind-module"><a href="../modules/portal_CSVLayer.html">portal/CSVLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Callout.html">portal/<wbr/>Callout</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Camera.html">portal/<wbr/>Camera</a></li><li class=" tsd-kind-module"><a href="../modules/portal_ClassBreaksRenderer.html">portal/<wbr/>Class<wbr/>Breaks<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_CodedValueDomain.html">portal/<wbr/>Coded<wbr/>Value<wbr/>Domain</a></li><li class=" tsd-kind-module"><a href="../modules/portal_ColorClassBreakInfo.html">portal/<wbr/>Color<wbr/>Class<wbr/>Break<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_ColorUniqueValueInfos.html">portal/<wbr/>Color<wbr/>Unique<wbr/>Value<wbr/>Infos</a></li><li class=" tsd-kind-module"><a href="../modules/portal_DataSource.html">portal/<wbr/>Data<wbr/>Source</a></li><li class=" tsd-kind-module"><a href="../modules/portal_DefinitionEditor.html">portal/<wbr/>Definition<wbr/>Editor</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Domain.html">portal/<wbr/>Domain</a></li><li class=" tsd-kind-module"><a href="../modules/portal_DrawingInfo.html">portal/<wbr/>Drawing<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_DynamicDataLayer.html">portal/<wbr/>Dynamic<wbr/>Data<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_DynamicMapLayer.html">portal/<wbr/>Dynamic<wbr/>Map<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Edges.html">portal/<wbr/>Edges</a></li><li class=" tsd-kind-module"><a href="../modules/portal_ElevationInfo.html">portal/<wbr/>Elevation<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_ElevationLayer.html">portal/<wbr/>Elevation<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Environment.html">portal/<wbr/>Environment</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Extent.html">portal/<wbr/>Extent</a></li><li class=" tsd-kind-module"><a href="../modules/portal_ExtrudeSymbol3DLayer.html">portal/<wbr/>Extrude<wbr/>Symbol3DLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Feature.html">portal/<wbr/>Feature</a></li><li class=" tsd-kind-module"><a href="../modules/portal_FeatureCollection.html">portal/<wbr/>Feature<wbr/>Collection</a></li><li class=" tsd-kind-module"><a href="../modules/portal_FeatureLayer.html">portal/<wbr/>Feature<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_FeatureReduction.html">portal/<wbr/>Feature<wbr/>Reduction</a></li><li class=" tsd-kind-module"><a href="../modules/portal_FeatureSet.html">portal/<wbr/>Feature<wbr/>Set</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Field.html">portal/<wbr/>Field</a></li><li class=" tsd-kind-module"><a href="../modules/portal_FieldInfo.html">portal/<wbr/>Field<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_FillSymbol3DLayer.html">portal/<wbr/>Fill<wbr/>Symbol3DLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_FormInfo.html">portal/<wbr/>Form<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Format.html">portal/<wbr/>Format</a></li><li class=" tsd-kind-module"><a href="../modules/portal_GeoRSSLayer.html">portal/<wbr/>GeoRSSLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Geometry.html">portal/<wbr/>Geometry</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Ground.html">portal/<wbr/>Ground</a></li><li class=" tsd-kind-module"><a href="../modules/portal_GroupLayer.html">portal/<wbr/>Group<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_HeatmapRenderer.html">portal/<wbr/>Heatmap<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_HeightModelInfo.html">portal/<wbr/>Height<wbr/>Model<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_IconSymbol3DLayer.html">portal/<wbr/>Icon<wbr/>Symbol3DLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_ImageServiceLayer.html">portal/<wbr/>Image<wbr/>Service<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_ImageServiceVectorLayer.html">portal/<wbr/>Image<wbr/>Service<wbr/>Vector<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_InheritedDomain.html">portal/<wbr/>Inherited<wbr/>Domain</a></li><li class=" tsd-kind-module"><a href="../modules/portal_InitialState.html">portal/<wbr/>Initial<wbr/>State</a></li><li class=" tsd-kind-module"><a href="../modules/portal_IntegratedMeshLayer.html">portal/<wbr/>Integrated<wbr/>Mesh<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Item.html">portal/<wbr/>Item</a></li><li class=" tsd-kind-module"><a href="../modules/portal_JoinTableDataSource.html">portal/<wbr/>Join<wbr/>Table<wbr/>Data<wbr/>Source</a></li><li class=" tsd-kind-module"><a href="../modules/portal_KMLLayer.html">portal/KMLLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_LabelSymbol3D.html">portal/<wbr/>Label<wbr/>Symbol3D</a></li><li class=" tsd-kind-module"><a href="../modules/portal_LabelingInfo.html">portal/<wbr/>Labeling<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Layer.html">portal/<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_LayerBase.html">portal/<wbr/>Layer<wbr/>Base</a></li><li class=" tsd-kind-module"><a href="../modules/portal_LayerDefinition.html">portal/<wbr/>Layer<wbr/>Definition</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Lighting.html">portal/<wbr/>Lighting</a></li><li class=" tsd-kind-module"><a href="../modules/portal_LineSymbol3D.html">portal/<wbr/>Line<wbr/>Symbol3D</a></li><li class=" tsd-kind-module"><a href="../modules/portal_LineSymbol3DLayer.html">portal/<wbr/>Line<wbr/>Symbol3DLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_LocationInfo.html">portal/<wbr/>Location<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_MapFloorInfo.html">portal/<wbr/>Map<wbr/>Floor<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_MapRangeInfo.html">portal/<wbr/>Map<wbr/>Range<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_MapServiceLayer.html">portal/<wbr/>Map<wbr/>Service<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_MediaInfo.html">portal/<wbr/>Media<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_MeshSymbol3D.html">portal/<wbr/>Mesh<wbr/>Symbol3D</a></li><li class=" tsd-kind-module"><a href="../modules/portal_MosaicRule.html">portal/<wbr/>Mosaic<wbr/>Rule</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Multipoint.html">portal/<wbr/>Multipoint</a></li><li class=" tsd-kind-module"><a href="../modules/portal_ObjectSymbol3DLayer.html">portal/<wbr/>Object<wbr/>Symbol3DLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_OpenStreetMapLayer.html">portal/<wbr/>Open<wbr/>Street<wbr/>Map<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_OperationalLayer.html">portal/<wbr/>Operational<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PathSymbol3DLayer.html">portal/<wbr/>Path<wbr/>Symbol3DLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PictureFillSymbol.html">portal/<wbr/>Picture<wbr/>Fill<wbr/>Symbol</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PictureMarkerSymbol.html">portal/<wbr/>Picture<wbr/>Marker<wbr/>Symbol</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Point.html">portal/<wbr/>Point</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudBitfieldFilter.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Bitfield<wbr/>Filter</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudClassBreaksRenderer.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Class<wbr/>Breaks<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudFilter.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Filter</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudFixedSizeAlgorithm.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Fixed<wbr/>Size<wbr/>Algorithm</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudLayer.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudRGBRenderer.html">portal/<wbr/>Point<wbr/>CloudRGBRenderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudRenderer.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudReturnFilter.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Return<wbr/>Filter</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudSplatAlgorithm.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Splat<wbr/>Algorithm</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudStretchRenderer.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Stretch<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudUniqueValueRenderer.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Unique<wbr/>Value<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointCloudValueFilter.html">portal/<wbr/>Point<wbr/>Cloud<wbr/>Value<wbr/>Filter</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PointSymbol3D.html">portal/<wbr/>Point<wbr/>Symbol3D</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Polygon.html">portal/<wbr/>Polygon</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PolygonSymbol3D.html">portal/<wbr/>Polygon<wbr/>Symbol3D</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Polyline.html">portal/<wbr/>Polyline</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PopupExpressionInfo.html">portal/<wbr/>Popup<wbr/>Expression<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PopupInfo.html">portal/<wbr/>Popup<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_PredominanceRenderer.html">portal/<wbr/>Predominance<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Presentation.html">portal/<wbr/>Presentation</a></li><li class=" tsd-kind-module"><a href="../modules/portal_QueryTableDataSource.html">portal/<wbr/>Query<wbr/>Table<wbr/>Data<wbr/>Source</a></li><li class=" tsd-kind-module"><a href="../modules/portal_RangeDomain.html">portal/<wbr/>Range<wbr/>Domain</a></li><li class=" tsd-kind-module"><a href="../modules/portal_RangeInfo.html">portal/<wbr/>Range<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_RasterDataSource.html">portal/<wbr/>Raster<wbr/>Data<wbr/>Source</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Renderer.html">portal/<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_RenderingRule.html">portal/<wbr/>Rendering<wbr/>Rule</a></li><li class=" tsd-kind-module"><a href="../modules/portal_SceneLayer.html">portal/<wbr/>Scene<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_SimpleFillSymbol.html">portal/<wbr/>Simple<wbr/>Fill<wbr/>Symbol</a></li><li class=" tsd-kind-module"><a href="../modules/portal_SimpleLineSymbol.html">portal/<wbr/>Simple<wbr/>Line<wbr/>Symbol</a></li><li class=" tsd-kind-module"><a href="../modules/portal_SimpleMarkerSymbol.html">portal/<wbr/>Simple<wbr/>Marker<wbr/>Symbol</a></li><li class=" tsd-kind-module"><a href="../modules/portal_SimpleRenderer.html">portal/<wbr/>Simple<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Slide.html">portal/<wbr/>Slide</a></li><li class=" tsd-kind-module"><a href="../modules/portal_SpatialReference.html">portal/<wbr/>Spatial<wbr/>Reference</a></li><li class=" tsd-kind-module"><a href="../modules/portal_StreamLayer.html">portal/<wbr/>Stream<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_StyleSymbolReference.html">portal/<wbr/>Style<wbr/>Symbol<wbr/>Reference</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Symbol.html">portal/<wbr/>Symbol</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Symbol3D.html">portal/<wbr/>Symbol3D</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Table.html">portal/<wbr/>Table</a></li><li class=" tsd-kind-module"><a href="../modules/portal_TableDataSource.html">portal/<wbr/>Table<wbr/>Data<wbr/>Source</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Template.html">portal/<wbr/>Template</a></li><li class=" tsd-kind-module"><a href="../modules/portal_TemporalRenderer.html">portal/<wbr/>Temporal<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_TextSymbol.html">portal/<wbr/>Text<wbr/>Symbol</a></li><li class=" tsd-kind-module"><a href="../modules/portal_TextSymbol3DLayer.html">portal/<wbr/>Text<wbr/>Symbol3DLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_TileInfo.html">portal/<wbr/>Tile<wbr/>Info</a></li><li class=" tsd-kind-module"><a href="../modules/portal_TiledImageServiceLayer.html">portal/<wbr/>Tiled<wbr/>Image<wbr/>Service<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_TiledMapServiceLayer.html">portal/<wbr/>Tiled<wbr/>Map<wbr/>Service<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Type.html">portal/<wbr/>Type</a></li><li class=" tsd-kind-module"><a href="../modules/portal_UniqueValueFromStyle.html">portal/<wbr/>Unique<wbr/>Value<wbr/>From<wbr/>Style</a></li><li class=" tsd-kind-module"><a href="../modules/portal_UniqueValueRenderer.html">portal/<wbr/>Unique<wbr/>Value<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_UtilityNetwork.html">portal/<wbr/>Utility<wbr/>Network</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Value.html">portal/<wbr/>Value</a></li><li class=" tsd-kind-module"><a href="../modules/portal_VectorFieldRenderer.html">portal/<wbr/>Vector<wbr/>Field<wbr/>Renderer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_VectorTileLayer.html">portal/<wbr/>Vector<wbr/>Tile<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_VerticalOffset.html">portal/<wbr/>Vertical<wbr/>Offset</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Viewpoint.html">portal/<wbr/>Viewpoint</a></li><li class=" tsd-kind-module"><a href="../modules/portal_VisualVariable.html">portal/<wbr/>Visual<wbr/>Variable</a></li><li class=" tsd-kind-module"><a href="../modules/portal_WMSLayer.html">portal/WMSLayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_WMSSublayer.html">portal/WMSSublayer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_WMTSInfo.html">portal/WMTSInfo</a></li><li class=" tsd-kind-module"><a href="../modules/portal_WebMap.html">portal/<wbr/>Web<wbr/>Map</a></li><li class=" tsd-kind-module"><a href="../modules/portal_WebScene.html">portal/<wbr/>Web<wbr/>Scene</a></li><li class=" tsd-kind-module"><a href="../modules/portal_WebSceneBaseMap.html">portal/<wbr/>Web<wbr/>Scene<wbr/>Base<wbr/>Map</a></li><li class=" tsd-kind-module"><a href="../modules/portal_WebTileLayer.html">portal/<wbr/>Web<wbr/>Tile<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal_Widgets.html">portal/<wbr/>Widgets</a></li><li class=" tsd-kind-module"><a href="../modules/portal__FeatureLayer.html">portal/_<wbr/>Feature<wbr/>Layer</a></li><li class=" tsd-kind-module"><a href="../modules/portal__LayerBase.html">portal/_<wbr/>Layer<wbr/>Base</a></li><li class=" tsd-kind-module"><a href="../modules/portal__layerHelper.html">portal/_<wbr/>layer<wbr/>Helper</a></li><li class=" tsd-kind-module"><a href="../modules/portal__utils.html">portal/_<wbr/>utils</a></li><li class=" tsd-kind-module"><a href="../modules/support_Action.html">support/<wbr/>Action</a></li><li class=" tsd-kind-module"><a href="../modules/support_ArcGISRequestHelper.html">support/<wbr/>ArcGISRequest<wbr/>Helper</a></li><li class=" tsd-kind-module"><a href="../modules/support_Cancellable.html">support/<wbr/>Cancellable</a></li><li class=" tsd-kind-module"><a href="../modules/support_FormatSettings.html">support/<wbr/>Format<wbr/>Settings</a></li><li class=" tsd-kind-module"><a href="../modules/support_InitializableBase.html">support/<wbr/>Initializable<wbr/>Base</a></li><li class=" tsd-kind-module"><a href="../modules/support_InitializableCollectionProxy.html">support/<wbr/>Initializable<wbr/>Collection<wbr/>Proxy</a></li><li class=" tsd-kind-module"><a href="../modules/support_InitializeError.html">support/<wbr/>Initialize<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/support_Observable.html">support/<wbr/>Observable</a></li><li class=" tsd-kind-module"><a href="../modules/support_ReadOnlyInitializableCollection.html">support/<wbr/>Read<wbr/>Only<wbr/>Initializable<wbr/>Collection</a></li><li class=" tsd-kind-module"><a href="../modules/support_Serializable.html">support/<wbr/>Serializable</a></li><li class=" tsd-kind-module"><a href="../modules/support_Settings.html">support/<wbr/>Settings</a></li><li class=" tsd-kind-module"><a href="../modules/support__ArcGISRelationshipCollection.html">support/_<wbr/>ArcGISRelationship<wbr/>Collection</a></li><li class=" tsd-kind-module"><a href="../modules/support__esriInternal.html">support/_<wbr/>esri<wbr/>Internal</a></li><li class=" tsd-kind-module"><a href="../modules/support__graphicsQuery.html">support/_<wbr/>graphics<wbr/>Query</a></li><li class=" tsd-kind-module"><a href="../modules/support__query.html">support/_<wbr/>query</a></li><li class=" tsd-kind-module"><a href="../modules/support__requestCache.html">support/_<wbr/>request<wbr/>Cache</a></li><li class=" tsd-kind-module"><a href="../modules/support__restApiJson.html">support/_<wbr/>rest<wbr/>Api<wbr/>Json</a></li><li class=" tsd-kind-module"><a href="../modules/support_esri.html">support/esri</a></li><li class=" tsd-kind-module"><a href="../modules/support_utilities.html">support/utilities</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_CountResult.html">tasks/<wbr/>Count<wbr/>Result</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_geocoding_ArcGISGeocoder.html">tasks/geocoding/<wbr/>ArcGISGeocoder</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_geocoding_Geocoder.html">tasks/geocoding/<wbr/>Geocoder</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_geocoding_utilities.html">tasks/geocoding/utilities</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_ArcGISSublayerQueryIdentifyProvider.html">tasks/identify/<wbr/>ArcGISSublayer<wbr/>Query<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_BuildingComponentSublayerClientSideIdentifyProvider.html">tasks/identify/<wbr/>Building<wbr/>Component<wbr/>Sublayer<wbr/>Client<wbr/>Side<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_BuildingComponentSublayerHitTestIdentifyProvider.html">tasks/identify/<wbr/>Building<wbr/>Component<wbr/>Sublayer<wbr/>Hit<wbr/>Test<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_CSVLayer3DHitTestIdentifyProvider.html">tasks/identify/CSVLayer3DHit<wbr/>Test<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_CSVLayerClientSideQueryIdentifyProvider.html">tasks/identify/CSVLayer<wbr/>Client<wbr/>Side<wbr/>Query<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_ClientSideIdentifyProvider.html">tasks/identify/<wbr/>Client<wbr/>Side<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_FeatureLayer3DHitTestIdentifyProvider.html">tasks/identify/<wbr/>Feature<wbr/>Layer3DHit<wbr/>Test<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_FeatureLayerClientSideIdentifyProvider.html">tasks/identify/<wbr/>Feature<wbr/>Layer<wbr/>Client<wbr/>Side<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_FeatureLayerQueryIdentifyProvider.html">tasks/identify/<wbr/>Feature<wbr/>Layer<wbr/>Query<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_GeoRSSLayerIdentifyProvider.html">tasks/identify/<wbr/>GeoRSSLayer<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_GraphicsLayerQueryIdentifyProvider.html">tasks/identify/<wbr/>Graphics<wbr/>Layer<wbr/>Query<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_HitTestIdentifyProvider.html">tasks/identify/<wbr/>Hit<wbr/>Test<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_IdentifyError.html">tasks/identify/<wbr/>Identify<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_IdentifyOptions.html">tasks/identify/<wbr/>Identify<wbr/>Options</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_IdentifyProvider.html">tasks/identify/<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_IdentifyProviderBase.html">tasks/identify/<wbr/>Identify<wbr/>Provider<wbr/>Base</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_IdentifyService.html">tasks/identify/<wbr/>Identify<wbr/>Service</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_ImageryLayerIdentifyProvider.html">tasks/identify/<wbr/>Imagery<wbr/>Layer<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_KMLLayerQueryIdentifyProvider.html">tasks/identify/KMLLayer<wbr/>Query<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_PointCloudLayerHitTestIdentifyProvider.html">tasks/identify/<wbr/>Point<wbr/>Cloud<wbr/>Layer<wbr/>Hit<wbr/>Test<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_SceneLayerClientSideIdentifyProvider.html">tasks/identify/<wbr/>Scene<wbr/>Layer<wbr/>Client<wbr/>Side<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_SceneLayerHitTestIdentifyProvider.html">tasks/identify/<wbr/>Scene<wbr/>Layer<wbr/>Hit<wbr/>Test<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_SceneLayerQueryIdentifyProvider.html">tasks/identify/<wbr/>Scene<wbr/>Layer<wbr/>Query<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_StreamLayerClientSideQueryIdentifyProvider.html">tasks/identify/<wbr/>Stream<wbr/>Layer<wbr/>Client<wbr/>Side<wbr/>Query<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_StreamLayerQueryIdentifyProvider.html">tasks/identify/<wbr/>Stream<wbr/>Layer<wbr/>Query<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify_WMSSublayerIdentifyProvider.html">tasks/identify/WMSSublayer<wbr/>Identify<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_identify__utilities.html">tasks/identify/_<wbr/>utilities</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_ArcGISRelationship.html">tasks/query/<wbr/>ArcGISRelationship</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_ArcGISServiceTableQueryProvider.html">tasks/query/<wbr/>ArcGISService<wbr/>Table<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_ArcGISSublayerQueryProvider.html">tasks/query/<wbr/>ArcGISSublayer<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_BuildingComponentSublayerClientSideQueryProvider.html">tasks/query/<wbr/>Building<wbr/>Component<wbr/>Sublayer<wbr/>Client<wbr/>Side<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_CSVLayerClientSideQueryProvider.html">tasks/query/CSVLayer<wbr/>Client<wbr/>Side<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_CSVLayerQueryProvider.html">tasks/query/CSVLayer<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_ClientSideQueryProvider.html">tasks/query/<wbr/>Client<wbr/>Side<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_FeatureLayerQueryProvider.html">tasks/query/<wbr/>Feature<wbr/>Layer<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_GeoRSSLayerQueryProvider.html">tasks/query/<wbr/>GeoRSSLayer<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_GraphicsLayerQueryProvider.html">tasks/query/<wbr/>Graphics<wbr/>Layer<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_ImageryLayerQueryProvider.html">tasks/query/<wbr/>Imagery<wbr/>Layer<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_KMLLayerQueryProvider.html">tasks/query/KMLLayer<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_QueryBasedRelationship.html">tasks/query/<wbr/>Query<wbr/>Based<wbr/>Relationship</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_QueryError.html">tasks/query/<wbr/>Query<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_QueryOptions.html">tasks/query/<wbr/>Query<wbr/>Options</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_QueryProvider.html">tasks/query/<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_QueryProviderBase.html">tasks/query/<wbr/>Query<wbr/>Provider<wbr/>Base</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_QueryService.html">tasks/query/<wbr/>Query<wbr/>Service</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_SceneLayerClientSideQueryProvider.html">tasks/query/<wbr/>Scene<wbr/>Layer<wbr/>Client<wbr/>Side<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_SceneLayerQueryProvider.html">tasks/query/<wbr/>Scene<wbr/>Layer<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_StreamLayerClientSideQueryProvider.html">tasks/query/<wbr/>Stream<wbr/>Layer<wbr/>Client<wbr/>Side<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_query_StreamLayerQueryProvider.html">tasks/query/<wbr/>Stream<wbr/>Layer<wbr/>Query<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_search_ArcGISGeocoderSearchProvider.html">tasks/search/<wbr/>ArcGISGeocoder<wbr/>Search<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_search_GeocoderSearchProvider.html">tasks/search/<wbr/>Geocoder<wbr/>Search<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_search_QuerySearchProvider.html">tasks/search/<wbr/>Query<wbr/>Search<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_search_SearchError.html">tasks/search/<wbr/>Search<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_search_SearchOptions.html">tasks/search/<wbr/>Search<wbr/>Options</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_search_SearchProvider.html">tasks/search/<wbr/>Search<wbr/>Provider</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_search_SearchProviderBase.html">tasks/search/<wbr/>Search<wbr/>Provider<wbr/>Base</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_search_SearchService.html">tasks/search/<wbr/>Search<wbr/>Service</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_search_SearchSuggestion.html">tasks/search/<wbr/>Search<wbr/>Suggestion</a></li><li class=" tsd-kind-module"><a href="../modules/tasks_search__utilities.html">tasks/search/_<wbr/>utilities</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_CollectionProxy.html">utilities/<wbr/>Collection<wbr/>Proxy</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_CopyOnWriteCollection.html">utilities/<wbr/>Copy<wbr/>On<wbr/>Write<wbr/>Collection</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_FormatSettings.html">utilities/<wbr/>Format<wbr/>Settings</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_GeometryServiceError.html">utilities/<wbr/>Geometry<wbr/>Service<wbr/>Error</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_MapTransformCollection.html">utilities/<wbr/>Map<wbr/>Transform<wbr/>Collection</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_ObservableMap.html">utilities/<wbr/>Observable<wbr/>Map</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_ObservableSet.html">utilities/<wbr/>Observable<wbr/>Set</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_ObservableWeakSet.html">utilities/<wbr/>Observable<wbr/>Weak<wbr/>Set</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_ReadOnlyCollection.html">utilities/<wbr/>Read<wbr/>Only<wbr/>Collection</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_ReadOnlyMap.html">utilities/<wbr/>Read<wbr/>Only<wbr/>Map</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_RequestHelper.html">utilities/<wbr/>Request<wbr/>Helper</a></li><li class=" tsd-kind-module"><a href="../modules/utilities__layers.html">utilities/_<wbr/>layers</a></li><li class=" tsd-kind-module"><a href="../modules/utilities__number.html">utilities/_<wbr/>number</a></li><li class=" tsd-kind-module"><a href="../modules/utilities__ogc.html">utilities/_<wbr/>ogc</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_arcade.html">utilities/arcade</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_array.html">utilities/array</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_asyncIterable.html">utilities/async<wbr/>Iterable</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_basemaps.html">utilities/basemaps</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_checkArg.html">utilities/check<wbr/>Arg</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_collection.html">utilities/collection</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_date.html">utilities/date</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_enum.html">utilities/enum</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_esri.html">utilities/esri</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_extensions.html">utilities/extensions</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_field.html">utilities/field</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_geometry.html">utilities/geometry</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_iterable.html">utilities/iterable</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_layers.html">utilities/layers</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_log.html">utilities/log</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_mapping.html">utilities/mapping</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_math.html">utilities/math</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_number.html">utilities/number</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_object.html">utilities/object</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_portal.html">utilities/portal</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_promise.html">utilities/promise</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_query.html">utilities/query</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_relationships.html">utilities/relationships</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_renderers.html">utilities/renderers</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_scaleRanges.html">utilities/scale<wbr/>Ranges</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_set.html">utilities/set</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_string.html">utilities/string</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_symbol.html">utilities/symbol</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_transformation.html">utilities/transformation</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_uri.html">utilities/uri</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_uuid.html">utilities/uuid</a></li><li class=" tsd-kind-module"><a href="../modules/utilities_watch.html">utilities/watch</a></li><li class=" tsd-kind-module"><a href="../modules/version.html">version</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="current tsd-kind-enum tsd-parent-kind-module"><a href="data_convert.GeometryFormat.html" class="tsd-kind-icon">Geometry<wbr/>Format</a><ul><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#ARCGIS_JSON" class="tsd-kind-icon">ARCGIS_<wbr/>JSON</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#GEO_JSON" class="tsd-kind-icon">GEO_<wbr/>JSON</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#LAT_LON" class="tsd-kind-icon">LAT_<wbr/>LON</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#NONE" class="tsd-kind-icon">NONE</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#WKT" class="tsd-kind-icon">WKT</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#XY" class="tsd-kind-icon">XY</a></li><li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="data_convert.GeometryFormat.html#XYZ" class="tsd-kind-icon">XYZ</a></li></ul></li></ul></nav></div></div></div><footer class=""><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-namespace"><span class="tsd-kind-icon">Namespace</span></li><li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li><li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li><li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li><li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li><li class="tsd-kind-type-alias tsd-has-type-parameter"><span class="tsd-kind-icon">Type alias with type parameter</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li><li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li><li class="tsd-kind-class tsd-has-type-parameter"><span class="tsd-kind-icon">Class with type parameter</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-enum"><span class="tsd-kind-icon">Enumeration</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="overlay"></div><script src="../assets/main.js"></script></body></html>