@itwin/core-common 5.0.0-dev.67 → 5.0.0-dev.69

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.
@@ -51,6 +51,7 @@ export declare enum GeoCoordStatus {
51
51
  /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend
52
52
  * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).
53
53
  * At the completion of the conversion promise no coordinates should have this status.
54
+ * @deprecated in 5.0. Pending is no longer returned as a status for coordinate conversions.
54
55
  */
55
56
  Pending = -41556
56
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GeoCoordinateServices.d.ts","sourceRoot":"","sources":["../../src/GeoCoordinateServices.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E;;;;;;GAMG;AACH,oBAAY,cAAc;IACxB,kDAAkD;IAClD,OAAO,IAAI;IACX,sIAAsI;IACtI,YAAY,MAAM;IAClB;;;;;;;;;;OAUG;IACH,gBAAgB,IAAI;IACpB;;;;OAIG;IACH,uBAAuB,IAAI;IAC3B;;;;OAIG;IACH,gBAAgB,KAAK;IACrB;;;;OAIG;IACH,yBAAyB,KAAK;IAC9B,sGAAsG;IACtG,UAAU,OAAO;IACjB;;;OAGG;IACH,OAAO,SAAS;CACjB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,cAAc,GAAG,gBAAgB,CAazE;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,CAAC,EAAE,QAAQ,CAAC;IACZ,0FAA0F;IAC1F,CAAC,EAAE,cAAc,CAAC;CACnB;AAED,YAAY;AACZ,MAAM,WAAW,8BAA8B;IAC7C,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,QAAQ,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,kCAAkC;IACjD,6FAA6F;IAC7F,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB;;;;;MAKE;IACF,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD;;;MAGE;IACF,MAAM,EAAE,MAAM,CAAC;IACf,+FAA+F;IAC/F,aAAa,CAAC,EAAE,kBAAkB,CAAC;CACpC"}
1
+ {"version":3,"file":"GeoCoordinateServices.d.ts","sourceRoot":"","sources":["../../src/GeoCoordinateServices.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E;;;;;;GAMG;AACH,oBAAY,cAAc;IACxB,kDAAkD;IAClD,OAAO,IAAI;IACX,sIAAsI;IACtI,YAAY,MAAM;IAClB;;;;;;;;;;OAUG;IACH,gBAAgB,IAAI;IACpB;;;;OAIG;IACH,uBAAuB,IAAI;IAC3B;;;;OAIG;IACH,gBAAgB,KAAK;IACrB;;;;OAIG;IACH,yBAAyB,KAAK;IAC9B,sGAAsG;IACtG,UAAU,OAAO;IACjB;;;;OAIG;IACH,OAAO,SAAS;CACjB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,cAAc,GAAG,gBAAgB,CAazE;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,CAAC,EAAE,QAAQ,CAAC;IACZ,0FAA0F;IAC1F,CAAC,EAAE,cAAc,CAAC;CACnB;AAED,YAAY;AACZ,MAAM,WAAW,8BAA8B;IAC7C,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,QAAQ,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,kCAAkC;IACjD,6FAA6F;IAC7F,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB;;;;;MAKE;IACF,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD;;;MAGE;IACF,MAAM,EAAE,MAAM,CAAC;IACf,+FAA+F;IAC/F,aAAa,CAAC,EAAE,kBAAkB,CAAC;CACpC"}
@@ -59,6 +59,7 @@ var GeoCoordStatus;
59
59
  /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend
60
60
  * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).
61
61
  * At the completion of the conversion promise no coordinates should have this status.
62
+ * @deprecated in 5.0. Pending is no longer returned as a status for coordinate conversions.
62
63
  */
63
64
  GeoCoordStatus[GeoCoordStatus["Pending"] = -41556] = "Pending";
64
65
  })(GeoCoordStatus || (exports.GeoCoordStatus = GeoCoordStatus = {}));
@@ -74,7 +75,7 @@ function mapToGeoServiceStatus(s) {
74
75
  case GeoCoordStatus.NoDatumConverter: return core_bentley_1.GeoServiceStatus.NoDatumConverter;
75
76
  case GeoCoordStatus.VerticalDatumConvertError: return core_bentley_1.GeoServiceStatus.VerticalDatumConvertError;
76
77
  case GeoCoordStatus.CSMapError: return core_bentley_1.GeoServiceStatus.CSMapError;
77
- case GeoCoordStatus.Pending: return core_bentley_1.GeoServiceStatus.Pending;
78
+ case GeoCoordStatus.Pending: return core_bentley_1.GeoServiceStatus.Pending; // eslint-disable-line @typescript-eslint/no-deprecated
78
79
  default:
79
80
  throw new Error("GeoCoordStatus -> GeoServiceStatus - Missing enum conversion");
80
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GeoCoordinateServices.js","sourceRoot":"","sources":["../../src/GeoCoordinateServices.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AA8DH,sDAaC;AAzED,qDAAqD;AAErD,sDAAuD;AAIvD;;;;;;GAMG;AACH,IAAY,cA0CX;AA1CD,WAAY,cAAc;IACxB,kDAAkD;IAClD,yDAAW,CAAA;IACX,sIAAsI;IACtI,qEAAkB,CAAA;IAClB;;;;;;;;;;OAUG;IACH,2EAAoB,CAAA;IACpB;;;;OAIG;IACH,yFAA2B,CAAA;IAC3B;;;;OAIG;IACH,4EAAqB,CAAA;IACrB;;;;OAIG;IACH,8FAA8B,CAAA;IAC9B,sGAAsG;IACtG,kEAAiB,CAAA;IACjB;;;OAGG;IACH,8DAAgB,CAAA;AAClB,CAAC,EA1CW,cAAc,8BAAd,cAAc,QA0CzB;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,CAAiB;IACrD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,+BAAgB,CAAC,OAAO,CAAC;QAC7D,KAAK,cAAc,CAAC,YAAY,CAAC,CAAC,OAAO,+BAAgB,CAAC,aAAa,CAAC;QACxE,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,+BAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO,+BAAgB,CAAC,uBAAuB,CAAC;QAC7F,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,+BAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,yBAAyB,CAAC,CAAC,OAAO,+BAAgB,CAAC,yBAAyB,CAAC;QACjG,KAAK,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,+BAAgB,CAAC,UAAU,CAAC;QACnE,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,+BAAgB,CAAC,OAAO,CAAC;QAC7D;YACE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACpF,CAAC;AACH,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module iModels\n */\n\n// cspell:ignore NGVD, NAVD, COMPD_CS, PROJCS, GEOGCS\n\nimport { GeoServiceStatus } from \"@itwin/core-bentley\";\nimport { XYZProps } from \"@itwin/core-geometry\";\nimport { GeographicCRSProps } from \"./geometry/CoordinateReferenceSystem\";\n\n/** This enumeration lists all possible status as returned from a coordinate conversion to or from a\n * [[GeographicCRS]] and either another [[GeographicCRS]] or a [[GeodeticDatum]].\n * @see [[GeoConverter]] to perform coordinate conversions.\n * @see [[PointWithStatus]] for the result of a coordinate conversion, including its status code.\n * @public\n * @extensions\n */\nexport enum GeoCoordStatus {\n /** Indicates successful coordinate conversion. */\n Success = 0,\n /** Indicates that the source or target of the conversion is not defined, usually the iModel Geographic Coordinate Reference System.*/\n NoGCSDefined = 100,\n /** This value indicates that the conversion was performed outside of the normal use of application of either Geographic Coordinate Reference Systems.\n * This return value can often be treated as a warning in specific cases. For example, global imagery extent spans the whole globe and\n * may extend far beyond the normal area of the iModel project extents and the extent of normal use of its Geographic Coordinate Reference System.\n * In such cases this value can be considered a warning as accuracy and precision is not expected in this specific case and approximate localization\n * of global imagery or other low accuracy context data is not essential far from the project.\n * If this status is returned for high accuracy data then it indicates that either Geographic Coordinate Reference Systems were inappropriately selected\n * for the iModel or other geolocated data. If this is the case the status should be somehow reported so action\n * can be performed to verify used geolocation parameters.\n * In either case the returned coordinates are to be considered valid though they may be inaccurate or result in some unexpected distortion of graphical\n * elements.\n */\n OutOfUsefulRange = 1,\n /** Indicates a hard error where conversions were requested outside of the area of the mathematical capacity of the conversion process for either\n * Geographic Coordinate Reference Systems involved. An example could be to attempt a conversion involving a Transverse Mercator more than 60 degrees\n * East or West of the projection central meridian.\n * The values returned may or may not be valid and should be discarded.\n */\n OutOfMathematicalDomain = 2,\n /** Indicates that datum transformation between the two Geographic Coordinate Reference Systems could not be performed.\n * This error is usually the result of a datum transformation path requiring use of latitude/longitude grid shift files that could not be obtained\n * or installed. In this case the latitude/longitude transformation is bypassed but the remainder of the conversion process is completed.\n * This error can be ignored for low accuracy data but should be somehow reported so actions can be performed to provide the missing files.\n */\n NoDatumConverter = 25,\n /** Indicates that a problem occurred during vertical datum conversion. This may the result of the inability to access the\n * Geoid separation data or vertical datum differential data (such as used by NGVD29 to NAVD88 conversion).\n * The horizontal coordinates returned are valid but the elevation ordinate will be returned unchanged or partially changed.\n * This status should be somehow reported so actions can be performed to provide the missing information.\n */\n VerticalDatumConvertError = 26,\n /** General inner conversion engine error. Coordinates returned are invalid and should be discarded */\n CSMapError = 4096,\n /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend\n * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).\n * At the completion of the conversion promise no coordinates should have this status.\n */\n Pending = -41556,\n}\n\n/** Maps a GeoCoordStatus to the equivalent GeoServiceStatus.\n * @public\n */\nexport function mapToGeoServiceStatus(s: GeoCoordStatus): GeoServiceStatus {\n switch (s) {\n case GeoCoordStatus.Success: return GeoServiceStatus.Success;\n case GeoCoordStatus.NoGCSDefined: return GeoServiceStatus.NoGeoLocation;\n case GeoCoordStatus.OutOfUsefulRange: return GeoServiceStatus.OutOfUsefulRange;\n case GeoCoordStatus.OutOfMathematicalDomain: return GeoServiceStatus.OutOfMathematicalDomain;\n case GeoCoordStatus.NoDatumConverter: return GeoServiceStatus.NoDatumConverter;\n case GeoCoordStatus.VerticalDatumConvertError: return GeoServiceStatus.VerticalDatumConvertError;\n case GeoCoordStatus.CSMapError: return GeoServiceStatus.CSMapError;\n case GeoCoordStatus.Pending: return GeoServiceStatus.Pending;\n default:\n throw new Error(\"GeoCoordStatus -> GeoServiceStatus - Missing enum conversion\");\n }\n}\n\n/** Information required to request conversion of an array of Geographic coordinates (Longitude/Latitude) to iModel coordinates\n * @beta\n */\nexport interface IModelCoordinatesRequestProps {\n source: string;\n geoCoords: XYZProps[];\n}\n\n/** A point converted to iModel coordinates to geographic coordinates or vice-versa by a [[GeoConverter]].\n * The status [[s]] indicates the converted point [[p]]'s degree of accuracy.\n * @public\n */\nexport interface PointWithStatus {\n /** A JSON representation of the converted point. */\n p: XYZProps;\n /** A status code indicating the degree of accuracy with the point [[p]] was converted. */\n s: GeoCoordStatus;\n}\n\n/** @beta */\nexport interface IModelCoordinatesResponseProps {\n iModelCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to request conversion of an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesRequestProps {\n target: string;\n iModelCoords: XYZProps[];\n}\n\n/** Information returned from a request to convert an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesResponseProps {\n geoCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to interpret or complete a Geographic CRS in the specified format.\n * The only currently supported formats are JSON (for completion) and WKT (OGC Well Known Text)\n * @beta\n */\nexport interface GeographicCRSInterpretRequestProps {\n /** The format of the geographic CRS definition provided in the geographicCRSDef property. */\n format: \"WKT\" | \"JSON\";\n /** The geographic CRS definition in the format specified in the format property.\n * Note that when the WKT is used the WKT fragment provided can start with a COMPD_CS clause\n * which should then contain both the horizontal CRS definition as well as the vertical CRS specification.\n * WKT fragments starting with PROJCS or GEOGCS are also supported but the vertical CRS will be assigned a\n * default value.\n */\n geographicCRSDef: string;\n}\n\n/** Information returned from a request to interpret or complete a Geographic CRS\n * @beta\n */\nexport interface GeographicCRSInterpretResponseProps {\n /** The result status of the interpret operation. A value of zero indicates successful interpretation.\n * Any value other than zero is to be considered a hard error and no valid result will\n * be returned in the geographicCRS property.\n */\n status: number;\n /** The property that receives the interpreted geographic CRS if the process was successful. */\n geographicCRS?: GeographicCRSProps;\n}\n"]}
1
+ {"version":3,"file":"GeoCoordinateServices.js","sourceRoot":"","sources":["../../src/GeoCoordinateServices.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AA+DH,sDAaC;AA1ED,qDAAqD;AAErD,sDAAuD;AAIvD;;;;;;GAMG;AACH,IAAY,cA2CX;AA3CD,WAAY,cAAc;IACxB,kDAAkD;IAClD,yDAAW,CAAA;IACX,sIAAsI;IACtI,qEAAkB,CAAA;IAClB;;;;;;;;;;OAUG;IACH,2EAAoB,CAAA;IACpB;;;;OAIG;IACH,yFAA2B,CAAA;IAC3B;;;;OAIG;IACH,4EAAqB,CAAA;IACrB;;;;OAIG;IACH,8FAA8B,CAAA;IAC9B,sGAAsG;IACtG,kEAAiB,CAAA;IACjB;;;;OAIG;IACH,8DAAgB,CAAA;AAClB,CAAC,EA3CW,cAAc,8BAAd,cAAc,QA2CzB;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,CAAiB;IACrD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,+BAAgB,CAAC,OAAO,CAAC;QAC7D,KAAK,cAAc,CAAC,YAAY,CAAC,CAAC,OAAO,+BAAgB,CAAC,aAAa,CAAC;QACxE,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,+BAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO,+BAAgB,CAAC,uBAAuB,CAAC;QAC7F,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,+BAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,yBAAyB,CAAC,CAAC,OAAO,+BAAgB,CAAC,yBAAyB,CAAC;QACjG,KAAK,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,+BAAgB,CAAC,UAAU,CAAC;QACnE,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,+BAAgB,CAAC,OAAO,CAAC,CAAC,uDAAuD;QACrH;YACE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACpF,CAAC;AACH,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module iModels\n */\n\n// cspell:ignore NGVD, NAVD, COMPD_CS, PROJCS, GEOGCS\n\nimport { GeoServiceStatus } from \"@itwin/core-bentley\";\nimport { XYZProps } from \"@itwin/core-geometry\";\nimport { GeographicCRSProps } from \"./geometry/CoordinateReferenceSystem\";\n\n/** This enumeration lists all possible status as returned from a coordinate conversion to or from a\n * [[GeographicCRS]] and either another [[GeographicCRS]] or a [[GeodeticDatum]].\n * @see [[GeoConverter]] to perform coordinate conversions.\n * @see [[PointWithStatus]] for the result of a coordinate conversion, including its status code.\n * @public\n * @extensions\n */\nexport enum GeoCoordStatus {\n /** Indicates successful coordinate conversion. */\n Success = 0,\n /** Indicates that the source or target of the conversion is not defined, usually the iModel Geographic Coordinate Reference System.*/\n NoGCSDefined = 100,\n /** This value indicates that the conversion was performed outside of the normal use of application of either Geographic Coordinate Reference Systems.\n * This return value can often be treated as a warning in specific cases. For example, global imagery extent spans the whole globe and\n * may extend far beyond the normal area of the iModel project extents and the extent of normal use of its Geographic Coordinate Reference System.\n * In such cases this value can be considered a warning as accuracy and precision is not expected in this specific case and approximate localization\n * of global imagery or other low accuracy context data is not essential far from the project.\n * If this status is returned for high accuracy data then it indicates that either Geographic Coordinate Reference Systems were inappropriately selected\n * for the iModel or other geolocated data. If this is the case the status should be somehow reported so action\n * can be performed to verify used geolocation parameters.\n * In either case the returned coordinates are to be considered valid though they may be inaccurate or result in some unexpected distortion of graphical\n * elements.\n */\n OutOfUsefulRange = 1,\n /** Indicates a hard error where conversions were requested outside of the area of the mathematical capacity of the conversion process for either\n * Geographic Coordinate Reference Systems involved. An example could be to attempt a conversion involving a Transverse Mercator more than 60 degrees\n * East or West of the projection central meridian.\n * The values returned may or may not be valid and should be discarded.\n */\n OutOfMathematicalDomain = 2,\n /** Indicates that datum transformation between the two Geographic Coordinate Reference Systems could not be performed.\n * This error is usually the result of a datum transformation path requiring use of latitude/longitude grid shift files that could not be obtained\n * or installed. In this case the latitude/longitude transformation is bypassed but the remainder of the conversion process is completed.\n * This error can be ignored for low accuracy data but should be somehow reported so actions can be performed to provide the missing files.\n */\n NoDatumConverter = 25,\n /** Indicates that a problem occurred during vertical datum conversion. This may the result of the inability to access the\n * Geoid separation data or vertical datum differential data (such as used by NGVD29 to NAVD88 conversion).\n * The horizontal coordinates returned are valid but the elevation ordinate will be returned unchanged or partially changed.\n * This status should be somehow reported so actions can be performed to provide the missing information.\n */\n VerticalDatumConvertError = 26,\n /** General inner conversion engine error. Coordinates returned are invalid and should be discarded */\n CSMapError = 4096,\n /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend\n * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).\n * At the completion of the conversion promise no coordinates should have this status.\n * @deprecated in 5.0. Pending is no longer returned as a status for coordinate conversions.\n */\n Pending = -41556,\n}\n\n/** Maps a GeoCoordStatus to the equivalent GeoServiceStatus.\n * @public\n */\nexport function mapToGeoServiceStatus(s: GeoCoordStatus): GeoServiceStatus {\n switch (s) {\n case GeoCoordStatus.Success: return GeoServiceStatus.Success;\n case GeoCoordStatus.NoGCSDefined: return GeoServiceStatus.NoGeoLocation;\n case GeoCoordStatus.OutOfUsefulRange: return GeoServiceStatus.OutOfUsefulRange;\n case GeoCoordStatus.OutOfMathematicalDomain: return GeoServiceStatus.OutOfMathematicalDomain;\n case GeoCoordStatus.NoDatumConverter: return GeoServiceStatus.NoDatumConverter;\n case GeoCoordStatus.VerticalDatumConvertError: return GeoServiceStatus.VerticalDatumConvertError;\n case GeoCoordStatus.CSMapError: return GeoServiceStatus.CSMapError;\n case GeoCoordStatus.Pending: return GeoServiceStatus.Pending; // eslint-disable-line @typescript-eslint/no-deprecated\n default:\n throw new Error(\"GeoCoordStatus -> GeoServiceStatus - Missing enum conversion\");\n }\n}\n\n/** Information required to request conversion of an array of Geographic coordinates (Longitude/Latitude) to iModel coordinates\n * @beta\n */\nexport interface IModelCoordinatesRequestProps {\n source: string;\n geoCoords: XYZProps[];\n}\n\n/** A point converted to iModel coordinates to geographic coordinates or vice-versa by a [[GeoConverter]].\n * The status [[s]] indicates the converted point [[p]]'s degree of accuracy.\n * @public\n */\nexport interface PointWithStatus {\n /** A JSON representation of the converted point. */\n p: XYZProps;\n /** A status code indicating the degree of accuracy with the point [[p]] was converted. */\n s: GeoCoordStatus;\n}\n\n/** @beta */\nexport interface IModelCoordinatesResponseProps {\n iModelCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to request conversion of an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesRequestProps {\n target: string;\n iModelCoords: XYZProps[];\n}\n\n/** Information returned from a request to convert an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesResponseProps {\n geoCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to interpret or complete a Geographic CRS in the specified format.\n * The only currently supported formats are JSON (for completion) and WKT (OGC Well Known Text)\n * @beta\n */\nexport interface GeographicCRSInterpretRequestProps {\n /** The format of the geographic CRS definition provided in the geographicCRSDef property. */\n format: \"WKT\" | \"JSON\";\n /** The geographic CRS definition in the format specified in the format property.\n * Note that when the WKT is used the WKT fragment provided can start with a COMPD_CS clause\n * which should then contain both the horizontal CRS definition as well as the vertical CRS specification.\n * WKT fragments starting with PROJCS or GEOGCS are also supported but the vertical CRS will be assigned a\n * default value.\n */\n geographicCRSDef: string;\n}\n\n/** Information returned from a request to interpret or complete a Geographic CRS\n * @beta\n */\nexport interface GeographicCRSInterpretResponseProps {\n /** The result status of the interpret operation. A value of zero indicates successful interpretation.\n * Any value other than zero is to be considered a hard error and no valid result will\n * be returned in the geographicCRS property.\n */\n status: number;\n /** The property that receives the interpreted geographic CRS if the process was successful. */\n geographicCRS?: GeographicCRSProps;\n}\n"]}
@@ -136,6 +136,8 @@ export interface IpcAppFunctions {
136
136
  closeIModel: (key: string) => Promise<void>;
137
137
  /** see BriefcaseConnection.saveChanges */
138
138
  saveChanges: (key: string, description?: string) => Promise<void>;
139
+ /** see BriefcaseConnection.abandonChanges */
140
+ abandonChanges: (key: string) => Promise<void>;
139
141
  /** see BriefcaseTxns.hasPendingTxns */
140
142
  hasPendingTxns: (key: string) => Promise<boolean>;
141
143
  /** see BriefcaseTxns.isUndoPossible */
@@ -1 +1 @@
1
- {"version":3,"file":"IpcAppProps.d.ts","sourceRoot":"","sources":["../../src/IpcAppProps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IpcAppProps.d.ts","sourceRoot":"","sources":["../../src/IpcAppProps.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"IpcAppProps.js","sourceRoot":"","sources":["../../src/IpcAppProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAuBH;;GAEG;AACI,MAAM,wBAAwB,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,GAAG,sBAAc,CAAC,SAAS,gBAAgB,QAAQ,EAAE,CAAC;AAAvG,QAAA,wBAAwB,4BAA+E;AAwBpH,gBAAgB;AACH,QAAA,cAAc,GAAG;IAC5B,SAAS,EAAE,sBAAsB;IACjC,SAAS,EAAE,4BAA4B;IACvC,IAAI,EAAE,mBAAmB;IACzB,YAAY,EAAE,4BAA4B;CAClC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module NativeApp\n */\n\nimport { GuidString, Id64String, IModelStatus, LogLevel, OpenMode } from \"@itwin/core-bentley\";\nimport { Range3dProps, XYZProps } from \"@itwin/core-geometry\";\nimport { OpenBriefcaseProps, OpenCheckpointArgs } from \"./BriefcaseTypes\";\nimport { ChangedEntities } from \"./ChangedEntities\";\nimport { ChangesetIndex, ChangesetIndexAndId } from \"./ChangesetProps\";\nimport { GeographicCRSProps } from \"./geometry/CoordinateReferenceSystem\";\nimport { EcefLocationProps, IModelConnectionProps, IModelRpcProps, RootSubjectProps, SnapshotOpenOptions, StandaloneOpenOptions } from \"./IModel\";\nimport { ModelGeometryChangesProps } from \"./ModelGeometryChanges\";\n\n/** Options for pulling changes into iModel.\n * @internal\n */\nexport interface PullChangesOptions {\n /** Enables progress reporting. */\n reportProgress?: boolean;\n /** Interval for reporting progress (in milliseconds). */\n progressInterval?: number;\n /** Enables checks for abort. */\n enableCancellation?: boolean;\n}\n\n/** Get IPC channel name used for reporting progress of pulling changes into iModel.\n * @internal\n */\nexport const getPullChangesIpcChannel = (iModelId: string) => `${ipcAppChannels.functions}/pullChanges/${iModelId}`;\n\n/** Identifies a list of tile content Ids belonging to a single tile tree.\n * @internal\n */\nexport interface TileTreeContentIds {\n treeId: string;\n contentIds: string[];\n}\n\n/** Specifies a [GeometricModel]($backend)'s Id and a Guid identifying the current state of the geometry contained within the model.\n * @see [TxnManager.onModelGeometryChanged]($backend) and [BriefcaseTxns.onModelGeometryChanged]($frontend).\n * @public\n * @extensions\n */\nexport interface ModelIdAndGeometryGuid {\n /** The model's Id. */\n id: Id64String;\n /** A unique identifier for the current state of the model's geometry. If the guid differs between two revisions of the same iModel, it indicates that the geometry differs.\n * This is primarily an implementation detail used to determine whether [Tile]($frontend)s produced for one revision are compatible with another revision.\n */\n guid: GuidString;\n}\n\n/** @internal */\nexport const ipcAppChannels = {\n functions: \"itwinjs-core/ipc-app\",\n appNotify: \"itwinjs-core/ipcApp-notify\",\n txns: \"itwinjs-core/txns\",\n editingScope: \"itwinjs-core/editing-scope\",\n} as const;\n\n/**\n * Interface implemented by the frontend [NotificationHandler]($common) to be notified of events from IpcApp backend.\n * @internal\n */\nexport interface IpcAppNotifications {\n notifyApp: () => void;\n}\n\n/** @internal */\nexport interface NotifyEntitiesChangedMetadata {\n /** Class full name (\"Schema:Class\") */\n name: string;\n /** The indices in [[NotifyEntitiesChangedArgs.meta]] of each of this class's **direct** base classes. */\n bases: number[];\n}\n\n/** Arguments supplied to [[TxnNotifications.notifyElementsChanged]] and [[TxnNotifications.notifyModelsChanged]].\n * @internal\n */\nexport interface NotifyEntitiesChangedArgs extends ChangedEntities {\n /** An array of the same length as [[ChangedEntities.inserted]] (or empty if that array is undefined), containing the index in the [[meta]] array at which the\n * metadata for each entity's class is located.\n */\n insertedMeta: number[];\n /** See insertedMeta. */\n updatedMeta: number[];\n /** See insertedMeta. */\n deletedMeta: number[];\n\n /** Metadata describing each unique class of entity in this set of changes, followed by each unique direct or indirect base class of those classes. */\n meta: NotifyEntitiesChangedMetadata[];\n}\n\n/** Interface implemented by the frontend [NotificationHandler]($common) to be notified of changes to an iModel.\n * @see [TxnManager]($backend) for the source of these events.\n * @see [BriefcaseTxns]($frontend) for the frontend implementation.\n * @internal\n */\nexport interface TxnNotifications {\n notifyElementsChanged: (changes: NotifyEntitiesChangedArgs) => void;\n notifyModelsChanged: (changes: NotifyEntitiesChangedArgs) => void;\n notifyGeometryGuidsChanged: (changes: ModelIdAndGeometryGuid[]) => void;\n notifyCommit: () => void;\n notifyCommitted: (hasPendingTxns: boolean, time: number) => void;\n notifyReplayExternalTxns: () => void;\n notifyReplayedExternalTxns: () => void;\n notifyChangesApplied: () => void;\n notifyBeforeUndoRedo: (isUndo: boolean) => void;\n notifyAfterUndoRedo: (isUndo: boolean) => void;\n notifyPulledChanges: (parentChangeSetId: ChangesetIndexAndId) => void;\n notifyPushedChanges: (parentChangeSetId: ChangesetIndexAndId) => void;\n\n notifyIModelNameChanged: (name: string) => void;\n notifyRootSubjectChanged: (subject: RootSubjectProps) => void;\n notifyProjectExtentsChanged: (extents: Range3dProps) => void;\n notifyGlobalOriginChanged: (origin: XYZProps) => void;\n notifyEcefLocationChanged: (ecef: EcefLocationProps | undefined) => void;\n notifyGeographicCoordinateSystemChanged: (gcs: GeographicCRSProps | undefined) => void;\n}\n\n/**\n * Interface registered by the frontend [NotificationHandler]($common) to be notified of changes to an iModel during an [GraphicalEditingScope]($frontend).\n * @internal\n */\nexport interface EditingScopeNotifications {\n notifyGeometryChanged: (modelProps: ModelGeometryChangesProps[]) => void;\n}\n\n/**\n * The methods that may be invoked via Ipc from the frontend of an IpcApp and are implemented on its backend.\n * @internal\n */\nexport interface IpcAppFunctions {\n /** Send frontend log to backend.\n * @param _level Specify log level.\n * @param _category Specify log category.\n * @param _message Specify log message.\n * @param _metaData metaData if any.\n */\n log: (_timestamp: number, _level: LogLevel, _category: string, _message: string, _metaData?: any) => Promise<void>;\n\n /** see BriefcaseConnection.openFile */\n openBriefcase: (args: OpenBriefcaseProps) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.openStandalone */\n openCheckpoint: (args: OpenCheckpointArgs) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.openStandalone */\n openStandalone: (filePath: string, openMode: OpenMode, opts?: StandaloneOpenOptions) => Promise<IModelConnectionProps>;\n /** see SnapshotConnection.openFile */\n openSnapshot: (filePath: string, opts?: SnapshotOpenOptions) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.close */\n closeIModel: (key: string) => Promise<void>;\n /** see BriefcaseConnection.saveChanges */\n saveChanges: (key: string, description?: string) => Promise<void>;\n /** see BriefcaseTxns.hasPendingTxns */\n hasPendingTxns: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.isUndoPossible */\n isUndoPossible: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.isRedoPossible */\n isRedoPossible: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.getUndoString */\n getUndoString: (key: string) => Promise<string>;\n /** see BriefcaseTxns.getRedoString */\n getRedoString: (key: string) => Promise<string>;\n\n /** see BriefcaseConnection.pullChanges */\n pullChanges: (key: string, toIndex?: ChangesetIndex, options?: PullChangesOptions) => Promise<ChangesetIndexAndId>;\n /** Cancels pull of changes. */\n cancelPullChangesRequest: (key: string) => Promise<void>;\n /** see BriefcaseConnection.pushChanges */\n pushChanges: (key: string, description: string) => Promise<ChangesetIndexAndId>;\n /** Cancels currently pending or active generation of tile content. */\n cancelTileContentRequests: (tokenProps: IModelRpcProps, _contentIds: TileTreeContentIds[]) => Promise<void>;\n\n /** Cancel element graphics requests.\n * @see [[IModelTileRpcInterface.requestElementGraphics]].\n */\n cancelElementGraphicsRequests: (key: string, _requestIds: string[]) => Promise<void>;\n\n toggleGraphicalEditingScope: (key: string, _startSession: boolean) => Promise<boolean>;\n isGraphicalEditingSupported: (key: string) => Promise<boolean>;\n\n reverseTxns: (key: string, numOperations: number) => Promise<IModelStatus>;\n reverseAllTxn: (key: string) => Promise<IModelStatus>;\n reinstateTxn: (key: string) => Promise<IModelStatus>;\n restartTxnSession: (key: string) => Promise<void>;\n\n /** Query the number of concurrent threads supported by the host's IO or CPU thread pool. */\n queryConcurrency: (pool: \"io\" | \"cpu\") => Promise<number>;\n}\n\n"]}
1
+ {"version":3,"file":"IpcAppProps.js","sourceRoot":"","sources":["../../src/IpcAppProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAuBH;;GAEG;AACI,MAAM,wBAAwB,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,GAAG,sBAAc,CAAC,SAAS,gBAAgB,QAAQ,EAAE,CAAC;AAAvG,QAAA,wBAAwB,4BAA+E;AAwBpH,gBAAgB;AACH,QAAA,cAAc,GAAG;IAC5B,SAAS,EAAE,sBAAsB;IACjC,SAAS,EAAE,4BAA4B;IACvC,IAAI,EAAE,mBAAmB;IACzB,YAAY,EAAE,4BAA4B;CAClC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module NativeApp\n */\n\nimport { GuidString, Id64String, IModelStatus, LogLevel, OpenMode } from \"@itwin/core-bentley\";\nimport { Range3dProps, XYZProps } from \"@itwin/core-geometry\";\nimport { OpenBriefcaseProps, OpenCheckpointArgs } from \"./BriefcaseTypes\";\nimport { ChangedEntities } from \"./ChangedEntities\";\nimport { ChangesetIndex, ChangesetIndexAndId } from \"./ChangesetProps\";\nimport { GeographicCRSProps } from \"./geometry/CoordinateReferenceSystem\";\nimport { EcefLocationProps, IModelConnectionProps, IModelRpcProps, RootSubjectProps, SnapshotOpenOptions, StandaloneOpenOptions } from \"./IModel\";\nimport { ModelGeometryChangesProps } from \"./ModelGeometryChanges\";\n\n/** Options for pulling changes into iModel.\n * @internal\n */\nexport interface PullChangesOptions {\n /** Enables progress reporting. */\n reportProgress?: boolean;\n /** Interval for reporting progress (in milliseconds). */\n progressInterval?: number;\n /** Enables checks for abort. */\n enableCancellation?: boolean;\n}\n\n/** Get IPC channel name used for reporting progress of pulling changes into iModel.\n * @internal\n */\nexport const getPullChangesIpcChannel = (iModelId: string) => `${ipcAppChannels.functions}/pullChanges/${iModelId}`;\n\n/** Identifies a list of tile content Ids belonging to a single tile tree.\n * @internal\n */\nexport interface TileTreeContentIds {\n treeId: string;\n contentIds: string[];\n}\n\n/** Specifies a [GeometricModel]($backend)'s Id and a Guid identifying the current state of the geometry contained within the model.\n * @see [TxnManager.onModelGeometryChanged]($backend) and [BriefcaseTxns.onModelGeometryChanged]($frontend).\n * @public\n * @extensions\n */\nexport interface ModelIdAndGeometryGuid {\n /** The model's Id. */\n id: Id64String;\n /** A unique identifier for the current state of the model's geometry. If the guid differs between two revisions of the same iModel, it indicates that the geometry differs.\n * This is primarily an implementation detail used to determine whether [Tile]($frontend)s produced for one revision are compatible with another revision.\n */\n guid: GuidString;\n}\n\n/** @internal */\nexport const ipcAppChannels = {\n functions: \"itwinjs-core/ipc-app\",\n appNotify: \"itwinjs-core/ipcApp-notify\",\n txns: \"itwinjs-core/txns\",\n editingScope: \"itwinjs-core/editing-scope\",\n} as const;\n\n/**\n * Interface implemented by the frontend [NotificationHandler]($common) to be notified of events from IpcApp backend.\n * @internal\n */\nexport interface IpcAppNotifications {\n notifyApp: () => void;\n}\n\n/** @internal */\nexport interface NotifyEntitiesChangedMetadata {\n /** Class full name (\"Schema:Class\") */\n name: string;\n /** The indices in [[NotifyEntitiesChangedArgs.meta]] of each of this class's **direct** base classes. */\n bases: number[];\n}\n\n/** Arguments supplied to [[TxnNotifications.notifyElementsChanged]] and [[TxnNotifications.notifyModelsChanged]].\n * @internal\n */\nexport interface NotifyEntitiesChangedArgs extends ChangedEntities {\n /** An array of the same length as [[ChangedEntities.inserted]] (or empty if that array is undefined), containing the index in the [[meta]] array at which the\n * metadata for each entity's class is located.\n */\n insertedMeta: number[];\n /** See insertedMeta. */\n updatedMeta: number[];\n /** See insertedMeta. */\n deletedMeta: number[];\n\n /** Metadata describing each unique class of entity in this set of changes, followed by each unique direct or indirect base class of those classes. */\n meta: NotifyEntitiesChangedMetadata[];\n}\n\n/** Interface implemented by the frontend [NotificationHandler]($common) to be notified of changes to an iModel.\n * @see [TxnManager]($backend) for the source of these events.\n * @see [BriefcaseTxns]($frontend) for the frontend implementation.\n * @internal\n */\nexport interface TxnNotifications {\n notifyElementsChanged: (changes: NotifyEntitiesChangedArgs) => void;\n notifyModelsChanged: (changes: NotifyEntitiesChangedArgs) => void;\n notifyGeometryGuidsChanged: (changes: ModelIdAndGeometryGuid[]) => void;\n notifyCommit: () => void;\n notifyCommitted: (hasPendingTxns: boolean, time: number) => void;\n notifyReplayExternalTxns: () => void;\n notifyReplayedExternalTxns: () => void;\n notifyChangesApplied: () => void;\n notifyBeforeUndoRedo: (isUndo: boolean) => void;\n notifyAfterUndoRedo: (isUndo: boolean) => void;\n notifyPulledChanges: (parentChangeSetId: ChangesetIndexAndId) => void;\n notifyPushedChanges: (parentChangeSetId: ChangesetIndexAndId) => void;\n\n notifyIModelNameChanged: (name: string) => void;\n notifyRootSubjectChanged: (subject: RootSubjectProps) => void;\n notifyProjectExtentsChanged: (extents: Range3dProps) => void;\n notifyGlobalOriginChanged: (origin: XYZProps) => void;\n notifyEcefLocationChanged: (ecef: EcefLocationProps | undefined) => void;\n notifyGeographicCoordinateSystemChanged: (gcs: GeographicCRSProps | undefined) => void;\n}\n\n/**\n * Interface registered by the frontend [NotificationHandler]($common) to be notified of changes to an iModel during an [GraphicalEditingScope]($frontend).\n * @internal\n */\nexport interface EditingScopeNotifications {\n notifyGeometryChanged: (modelProps: ModelGeometryChangesProps[]) => void;\n}\n\n/**\n * The methods that may be invoked via Ipc from the frontend of an IpcApp and are implemented on its backend.\n * @internal\n */\nexport interface IpcAppFunctions {\n /** Send frontend log to backend.\n * @param _level Specify log level.\n * @param _category Specify log category.\n * @param _message Specify log message.\n * @param _metaData metaData if any.\n */\n log: (_timestamp: number, _level: LogLevel, _category: string, _message: string, _metaData?: any) => Promise<void>;\n\n /** see BriefcaseConnection.openFile */\n openBriefcase: (args: OpenBriefcaseProps) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.openStandalone */\n openCheckpoint: (args: OpenCheckpointArgs) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.openStandalone */\n openStandalone: (filePath: string, openMode: OpenMode, opts?: StandaloneOpenOptions) => Promise<IModelConnectionProps>;\n /** see SnapshotConnection.openFile */\n openSnapshot: (filePath: string, opts?: SnapshotOpenOptions) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.close */\n closeIModel: (key: string) => Promise<void>;\n /** see BriefcaseConnection.saveChanges */\n saveChanges: (key: string, description?: string) => Promise<void>;\n /** see BriefcaseConnection.abandonChanges */\n abandonChanges: (key: string) => Promise<void>;\n /** see BriefcaseTxns.hasPendingTxns */\n hasPendingTxns: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.isUndoPossible */\n isUndoPossible: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.isRedoPossible */\n isRedoPossible: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.getUndoString */\n getUndoString: (key: string) => Promise<string>;\n /** see BriefcaseTxns.getRedoString */\n getRedoString: (key: string) => Promise<string>;\n\n /** see BriefcaseConnection.pullChanges */\n pullChanges: (key: string, toIndex?: ChangesetIndex, options?: PullChangesOptions) => Promise<ChangesetIndexAndId>;\n /** Cancels pull of changes. */\n cancelPullChangesRequest: (key: string) => Promise<void>;\n /** see BriefcaseConnection.pushChanges */\n pushChanges: (key: string, description: string) => Promise<ChangesetIndexAndId>;\n /** Cancels currently pending or active generation of tile content. */\n cancelTileContentRequests: (tokenProps: IModelRpcProps, _contentIds: TileTreeContentIds[]) => Promise<void>;\n\n /** Cancel element graphics requests.\n * @see [[IModelTileRpcInterface.requestElementGraphics]].\n */\n cancelElementGraphicsRequests: (key: string, _requestIds: string[]) => Promise<void>;\n\n toggleGraphicalEditingScope: (key: string, _startSession: boolean) => Promise<boolean>;\n isGraphicalEditingSupported: (key: string) => Promise<boolean>;\n\n reverseTxns: (key: string, numOperations: number) => Promise<IModelStatus>;\n reverseAllTxn: (key: string) => Promise<IModelStatus>;\n reinstateTxn: (key: string) => Promise<IModelStatus>;\n restartTxnSession: (key: string) => Promise<void>;\n\n /** Query the number of concurrent threads supported by the host's IO or CPU thread pool. */\n queryConcurrency: (pool: \"io\" | \"cpu\") => Promise<number>;\n}\n\n"]}
@@ -11,6 +11,18 @@ import { DeprecatedBackgroundMapProps } from "./BackgroundMapSettings";
11
11
  export type ImageryMapLayerFormatId = "ArcGIS" | "BingMaps" | "MapboxImagery" | "TileURL" | "WMS" | "WMTS";
12
12
  /** @public */
13
13
  export type SubLayerId = string | number;
14
+ /**
15
+ * Type for map layer provider array property.
16
+ * @beta
17
+ */
18
+ export type MapLayerProviderArrayProperty = number[] | string[] | boolean[];
19
+ /**
20
+ * Type for map layer provider properties.
21
+ * @beta
22
+ */
23
+ export interface MapLayerProviderProperties {
24
+ [key: string]: number | string | boolean | MapLayerProviderArrayProperty;
25
+ }
14
26
  /** JSON representation of the settings associated with a map sublayer included within a [[MapLayerProps]].
15
27
  * A map sub layer represents a set of objects within the layer that can be controlled separately. These
16
28
  * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.
@@ -107,6 +119,10 @@ export interface ImageMapLayerProps extends CommonMapLayerProps {
107
119
  queryParams?: {
108
120
  [key: string]: string;
109
121
  };
122
+ /** Properties specific to the map layer provider.
123
+ * @beta
124
+ */
125
+ properties?: MapLayerProviderProperties;
110
126
  }
111
127
  /** JSON representation of a [[ModelMapLayerSettings]].
112
128
  * @see [[MapImagerySettings]].
@@ -192,6 +208,10 @@ export declare class ImageMapLayerSettings extends MapLayerSettings {
192
208
  unsavedQueryParams?: {
193
209
  [key: string]: string;
194
210
  };
211
+ /** Properties specific to the map layer provider.
212
+ * @beta
213
+ */
214
+ readonly properties?: MapLayerProviderProperties;
195
215
  readonly subLayers: MapSubLayerSettings[];
196
216
  get source(): string;
197
217
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"MapLayerSettings.d.ts","sourceRoot":"","sources":["../../src/MapLayerSettings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MapLayerSettings.d.ts","sourceRoot":"","sources":["../../src/MapLayerSettings.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAU,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC/G,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAEvE;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAI,QAAQ,GAAG,UAAU,GAAG,eAAe,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,CAAC;AAE5G,cAAc;AACd,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAEzC;;;GAGG;AACH,MAAM,MAAM,6BAA6B,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;AAE5E;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,6BAA6B,CAAA;CAAE;AAExH;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;CACzB;AAED;;;;;;;GAOG;AACH,qBAAa,mBAAmB;IAC9B,mIAAmI;IACnI,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,aAAa;IACb,SAAgB,KAAK,CAAC,EAAE,MAAM,CAAC;IAC/B,gIAAgI;IAChI,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,oFAAoF;IACpF,SAAgB,EAAE,EAAE,UAAU,CAAC;IAC/B,oCAAoC;IACpC,SAAgB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IACxC,uBAAuB;IACvB,SAAgB,MAAM,CAAC,EAAE,UAAU,CAAC;gBAExB,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,UAAU,EAAE;IAS1H,mGAAmG;WACrF,QAAQ,CAAC,IAAI,EAAE,gBAAgB,GAAG,mBAAmB;IAI5D,MAAM,IAAI,gBAAgB;IAkBjC,uFAAuF;IAChF,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,mBAAmB;IAe1E,gBAAgB;IACT,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO;IAI1D,6CAA6C;IAC7C,IAAW,OAAO,IAAI,OAAO,CAAiC;IAE9D,+DAA+D;IAC/D,IAAW,MAAM,IAAI,OAAO,CAAsE;IAElG,uDAAuD;IACvD,IAAW,cAAc,IAAI,OAAO,CAA0C;IAE9E,sGAAsG;IACtG,IAAW,QAAQ,IAAI,MAAM,CAA2E;CACzG;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,wDAAwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IAEH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC7D,UAAU;IACV,GAAG,EAAE,MAAM,CAAC;IACZ,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B;;OAEG;IACH,gBAAgB;IAChB,SAAS,CAAC,EAAE,WAAW,CAAC;IAExB,gBAAgB;IAChB,OAAO,CAAC,EAAE,KAAK,CAAC;IAEhB;;MAEE;IACF,WAAW,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAExC;;MAEE;IACF,UAAU,CAAC,EAAE,0BAA0B,CAAC;CAEzC;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC7D,iGAAiG;IACjG,OAAO,EAAE,UAAU,CAAC;IAEpB,gBAAgB;IAChB,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ,gBAAgB;IAChB,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,gBAAgB;IAChB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,gBAAgB;IAChB,SAAS,CAAC,EAAE,KAAK,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;AAEpE;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,8BAAsB,gBAAgB;IACpC,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,qBAAqB,EAAE,OAAO,CAAC;IAC/C,aAAoB,qBAAqB,IAAI,OAAO,CAAC;aACrC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,gBAAgB;aAC7D,MAAM,IAAI,aAAa;IAEvC,gBAAgB;IAChB,SAAS,aAAa,IAAI,EAAE,MAAM,EAAE,OAAO,UAAO,EAAE,YAAY,GAAE,MAAU,EAAE,qBAAqB,UAAO;IAO1G,gEAAgE;WAClD,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,gBAAgB;IAI9D,gBAAgB;IAChB,SAAS,CAAC,OAAO,IAAI,mBAAmB;IAexC,gBAAgB;IAChB,SAAS,CAAC,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,mBAAmB;IAS/E,gBAAgB;IACT,cAAc,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO;IAIvD,kHAAkH;IAClH,aAAoB,MAAM,IAAI,MAAM,CAAC;IAErC,gBAAgB;IACT,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;CAGnE;AAED;;;;;;GAMG;AACH,qBAAa,qBAAsB,SAAQ,gBAAgB;IACzD,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,WAAW,CAAC;IAE/B;;;MAGE;IACK,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAEpD;;MAEE;IACK,kBAAkB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAEtD;;MAEE;IACF,SAAgB,UAAU,CAAC,EAAE,0BAA0B,CAAC;IAExD,SAAgB,SAAS,EAAE,mBAAmB,EAAE,CAAC;IACjD,IAAoB,MAAM,IAAI,MAAM,CAAqB;IAEzD,gBAAgB;IAChB,SAAS,aAAa,KAAK,EAAE,kBAAkB;WA0BxB,QAAQ,CAAC,KAAK,EAAE,kBAAkB,GAAG,qBAAqB;IAIjF,iEAAiE;IACjD,MAAM,IAAI,kBAAkB;IAkB5C;;;OAGG;IACI,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,qBAAqB;IAc9E,gBAAgB;cACG,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB;IAqB5F,gBAAgB;IACA,cAAc,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO;IAehE,iEAAiE;IAC1D,YAAY,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,mBAAmB,GAAG,SAAS;IAIrE,OAAO,CAAC,qBAAqB;IAa7B,4FAA4F;IACrF,iBAAiB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,OAAO;IAOhE,kDAAkD;IAClD,IAAW,qBAAqB,IAAI,OAAO,CAK1C;IAED,yCAAyC;IAClC,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,mBAAmB,EAAE,GAAG,SAAS;IAc5F,gBAAgB;IAChB,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,iBAAiB;IAY7C,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAK1D;;KAEC;IACM,kBAAkB;;;CAU1B;AAED;;;;;;GAMG;AACH,qBAAa,qBAAsB,SAAQ,gBAAgB;IACzD,SAAgB,OAAO,EAAE,UAAU,CAAC;IACpC,IAAoB,MAAM,IAAI,MAAM,CAAyB;IAE7D,gBAAgB;IAChB,SAAS,aAAa,OAAO,EAAE,UAAU,EAAG,IAAI,EAAE,MAAM,EAAE,OAAO,UAAO,EACtE,YAAY,GAAE,MAAU,EAAE,qBAAqB,UAAO;IAKxD,mGAAmG;WAC5E,QAAQ,CAAC,IAAI,EAAE,kBAAkB,GAAG,qBAAqB;IAKhF,iEAAiE;IACjD,MAAM,IAAI,kBAAkB;IAM5C;;;OAGG;IACI,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,qBAAqB;IAI9E,gBAAgB;cACG,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB;IAM5F,gBAAgB;IACA,cAAc,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO;IAOhE,0GAA0G;IAC1G,IAAW,qBAAqB,IAAI,OAAO,CAE1C;CACF;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D,QAAQ,CAAC,EAAE,0BAA0B,CAAC;CACvC;AAED;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,qBAAqB;IAC7D,OAAO,CAAC,SAAS,CAAC,CAAwB;IAE1C,sEAAsE;IACtE,IAAW,QAAQ,IAAI,qBAAqB,GAAG,SAAS,CAA2B;IAEnF;;;;OAIG;WACoB,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,oBAAoB;IAS/E,qDAAqD;IACrC,MAAM,IAAI,iBAAiB;IAQ3C,gBAAgB;IACA,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,iBAAiB;IAWvF,mCAAmC;IACnB,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,oBAAoB;IAUrF,wDAAwD;WAC1C,YAAY,CAAC,QAAQ,EAAE,qBAAqB,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,oBAAoB;IA2D3I,gBAAgB;WACF,sBAAsB,CAAC,KAAK,EAAE,4BAA4B,GAAG,oBAAoB;IAI/F,aAAa;IACN,iBAAiB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,oBAAoB;CAGhF"}
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.BaseMapLayerSettings = exports.ModelMapLayerSettings = exports.ImageMapLayerSettings = exports.MapLayerSettings = exports.MapSubLayerSettings = void 0;
11
11
  const core_bentley_1 = require("@itwin/core-bentley");
12
12
  const BackgroundMapProvider_1 = require("./BackgroundMapProvider");
13
+ ;
13
14
  /** Normalized representation of a [[MapSubLayerProps]] for which values
14
15
  * have been validated and default values have been applied where explicit values not defined.
15
16
  * A map sub layer represents a set of objects within the layer that can be controlled separately. These
@@ -158,6 +159,10 @@ class ImageMapLayerSettings extends MapLayerSettings {
158
159
  * @beta
159
160
  */
160
161
  unsavedQueryParams;
162
+ /** Properties specific to the map layer provider.
163
+ * @beta
164
+ */
165
+ properties;
161
166
  subLayers;
162
167
  get source() { return this.url; }
163
168
  /** @internal */
@@ -170,6 +175,9 @@ class ImageMapLayerSettings extends MapLayerSettings {
170
175
  if (props.queryParams) {
171
176
  this.savedQueryParams = { ...props.queryParams };
172
177
  }
178
+ if (props.properties) {
179
+ this.properties = { ...props.properties };
180
+ }
173
181
  this.subLayers = [];
174
182
  if (!props.subLayers)
175
183
  return;
@@ -191,6 +199,9 @@ class ImageMapLayerSettings extends MapLayerSettings {
191
199
  props.subLayers = this.subLayers.map((x) => x.toJSON());
192
200
  if (this.savedQueryParams)
193
201
  props.queryParams = { ...this.savedQueryParams };
202
+ if (this.properties) {
203
+ props.properties = structuredClone(this.properties);
204
+ }
194
205
  return props;
195
206
  }
196
207
  /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.
@@ -202,7 +213,6 @@ class ImageMapLayerSettings extends MapLayerSettings {
202
213
  // Clone members not part of MapLayerProps
203
214
  clone.userName = this.userName;
204
215
  clone.password = this.password;
205
- clone.accessKey = this.accessKey;
206
216
  if (this.unsavedQueryParams)
207
217
  clone.unsavedQueryParams = { ...this.unsavedQueryParams };
208
218
  if (this.savedQueryParams)
@@ -222,6 +232,12 @@ class ImageMapLayerSettings extends MapLayerSettings {
222
232
  else if (this.savedQueryParams) {
223
233
  props.queryParams = { ...this.savedQueryParams };
224
234
  }
235
+ if (changedProps.properties) {
236
+ props.properties = { ...changedProps.properties };
237
+ }
238
+ else if (this.properties) {
239
+ props.properties = { ...this.properties };
240
+ }
225
241
  return props;
226
242
  }
227
243
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"MapLayerSettings.js","sourceRoot":"","sources":["../../src/MapLayerSettings.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module MapLayers\n */\n\nimport { assert, Id64String } from \"@itwin/core-bentley\";\nimport { BackgroundMapProvider, BackgroundMapProviderProps, BackgroundMapType } from \"./BackgroundMapProvider\";\nimport { DeprecatedBackgroundMapProps } from \"./BackgroundMapSettings\";\n\n/** The current set of supported map layer formats.\n * In order to be displayed, a corresponding format must have been registered in the [MapLayerFormatRegistry]($frontend)\n * @public\n */\nexport type ImageryMapLayerFormatId = \"ArcGIS\" | \"BingMaps\" | \"MapboxImagery\" | \"TileURL\" | \"WMS\" | \"WMTS\";\n\n/** @public */\nexport type SubLayerId = string | number;\n\n/** JSON representation of the settings associated with a map sublayer included within a [[MapLayerProps]].\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\n * @see [[MapLayerProps]]\n * @public\n */\nexport interface MapSubLayerProps {\n name: string;\n title?: string;\n visible?: boolean;\n id?: SubLayerId;\n parent?: SubLayerId;\n children?: SubLayerId[];\n}\n\n/** Normalized representation of a [[MapSubLayerProps]] for which values\n * have been validated and default values have been applied where explicit values not defined.\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\n * This class can represent a hierarchy, in this case a sub layer is visible only if all its ancestors are also visible.\n * @see [[MapLayerSettings]]\n * @public\n */\nexport class MapSubLayerSettings {\n /** Typically Name is a single word used for machine-to-machine communication while the Title is for the benefit of humans (WMS) */\n public readonly name: string;\n /** Title. */\n public readonly title?: string;\n /** If true the sub layer is visible. If part of a hierarchy, a sub layer is visible only if its ancestors are also visible. */\n public readonly visible: boolean;\n /** A unique string or number that may be used to identify the sub layer (ArcGIS) */\n public readonly id: SubLayerId;\n /** One or more sublayer children */\n public readonly children?: SubLayerId[];\n /** sublayer parent. */\n public readonly parent?: SubLayerId;\n\n constructor(name: string, title?: string, visible?: boolean, id?: SubLayerId, parent?: SubLayerId, children?: SubLayerId[]) {\n this.name = name;\n this.title = title;\n this.visible = visible !== undefined && visible;\n this.id = (id === undefined) ? this.name : id;\n this.parent = parent;\n this.children = children;\n }\n\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\n public static fromJSON(json: MapSubLayerProps): MapSubLayerSettings {\n return new MapSubLayerSettings(json.name, json.title, json.visible, (json.id === json.name) ? undefined : json.id, json.parent, json.children);\n }\n\n public toJSON(): MapSubLayerProps {\n const props: MapSubLayerProps = { name: this.name, visible: this.visible };\n\n if (undefined !== this.id && this.id !== this.name)\n props.id = this.id;\n\n if (undefined !== this.title)\n props.title = this.title;\n\n if (this.children)\n props.children = [...this.children];\n\n if (undefined !== this.parent)\n props.parent = this.parent;\n\n return props;\n }\n\n /** Creating a copy of this MapSubLayer, optionally modifying some if its properties */\n public clone(changedProps: Partial<MapSubLayerProps>): MapSubLayerSettings {\n if (undefined === changedProps)\n return this;\n\n const props = {\n name: undefined !== changedProps.name ? changedProps.name : this.name,\n id: undefined !== changedProps.id ? changedProps.id : this.id,\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\n parent: undefined !== changedProps.parent ? changedProps.parent : this.parent,\n children: undefined !== changedProps.children ? changedProps.children.slice() : this.children?.slice(),\n title: undefined !== changedProps.title ? changedProps.title : this.title,\n };\n return MapSubLayerSettings.fromJSON(props);\n }\n\n /** @internal */\n public displayMatches(other: MapSubLayerSettings): boolean {\n return this.name === other.name && this.visible === other.visible;\n }\n\n /** return true if this sublayer is named. */\n public get isNamed(): boolean { return this.name.length > 0; }\n\n /** return true if this sublayer is a leaf (has no children) */\n public get isLeaf(): boolean { return this.children === undefined || this.children.length === 0; }\n\n /** return true if this sublayer is an unnamed group */\n public get isUnnamedGroup(): boolean { return !this.isLeaf && !this.isNamed; }\n\n /** return a string representing this sublayer id (converting to string if underlying id is number) */\n public get idString(): string { return (typeof this.id === \"number\") ? this.id.toString(10) : this.id; }\n}\n\n/** JSON representation of properties common to both [[ImageMapLayerProps]] and [[ModelMapLayerProps]].\n * @see [[MapImageryProps]]\n * @public\n */\nexport interface CommonMapLayerProps {\n /** Controls visibility of layer. Defaults to 'true'. */\n visible?: boolean;\n\n /** A user-friendly name for the layer. */\n name: string;\n /** A transparency value from 0.0 (fully opaque) to 1.0 (fully transparent) to apply to map graphics when drawing,\n * or false to indicate the transparency should not be overridden.\n * Default value: 0.\n */\n transparency?: number;\n /** True to indicate background is transparent.\n * Default: true.\n */\n transparentBackground?: boolean;\n}\n\n/** JSON representation of an [[ImageMapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @see [[ImageryMapLayerFormatId]].\n * @public\n */\nexport interface ImageMapLayerProps extends CommonMapLayerProps {\n /** URL */\n url: string;\n /** Identifies the map layers source.*/\n formatId: string;\n /** Source layers. If undefined all layers are displayed. */\n subLayers?: MapSubLayerProps[];\n /** Access Key for the Layer, like a subscription key or access token.\n * ###TODO This does not belong in the props object. It should never be persisted.\n */\n /** @internal */\n accessKey?: MapLayerKey;\n\n /** @internal */\n modelId?: never;\n\n /** List of query parameters that will get appended to the source.\n * @beta\n */\n queryParams?: { [key: string]: string };\n\n}\n\n/** JSON representation of a [[ModelMapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @public\n */\nexport interface ModelMapLayerProps extends CommonMapLayerProps {\n /** The Id of the [GeometricModel]($backend) containing the geometry to be drawn by the layer. */\n modelId: Id64String;\n\n /** @internal */\n url?: never;\n /** @internal */\n formatId?: never;\n /** @internal */\n subLayers?: never;\n /** @internal */\n accessKey?: never;\n}\n\n/** JSON representation of a [[MapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @public\n */\nexport type MapLayerProps = ImageMapLayerProps | ModelMapLayerProps;\n\n/**\n * stores key-value pair to be added to all requests made involving map layer.\n * @public\n */\nexport interface MapLayerKey {\n key: string;\n value: string;\n}\n\n/** Abstract base class for normalized representation of a [[MapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * This class is extended by [[ImageMapLayerSettings]] and [ModelMapLayerSettings]] to create the settings for image and model based layers.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @public\n */\nexport abstract class MapLayerSettings {\n public readonly visible: boolean;\n\n public readonly name: string;\n public readonly transparency: number;\n public readonly transparentBackground: boolean;\n public abstract get allSubLayersInvisible(): boolean;\n public abstract clone(changedProps: Partial<MapLayerProps>): MapLayerSettings;\n public abstract toJSON(): MapLayerProps;\n\n /** @internal */\n protected constructor(name: string, visible = true, transparency: number = 0, transparentBackground = true) {\n this.name = name;\n this.visible = visible;\n this.transparentBackground = transparentBackground;\n this.transparency = transparency;\n }\n\n /** Create a map layer settings from its JSON representation. */\n public static fromJSON(props: MapLayerProps): MapLayerSettings {\n return undefined !== props.modelId ? ModelMapLayerSettings.fromJSON(props) : ImageMapLayerSettings.fromJSON(props);\n }\n\n /** @internal */\n protected _toJSON(): CommonMapLayerProps {\n const props: CommonMapLayerProps = {\n name: this.name,\n visible: this.visible,\n };\n\n if (0 !== this.transparency)\n props.transparency = this.transparency;\n\n if (this.transparentBackground === false)\n props.transparentBackground = this.transparentBackground;\n\n return props;\n }\n\n /** @internal */\n protected cloneProps(changedProps: Partial<MapLayerProps>): CommonMapLayerProps {\n return {\n name: undefined !== changedProps.name ? changedProps.name : this.name,\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\n transparency: undefined !== changedProps.transparency ? changedProps.transparency : this.transparency,\n transparentBackground: undefined !== changedProps.transparentBackground ? changedProps.transparentBackground : this.transparentBackground,\n };\n }\n\n /** @internal */\n public displayMatches(other: MapLayerSettings): boolean {\n return this.name === other.name && this.visible === other.visible && this.transparency === other.transparency && this.transparentBackground === other.transparentBackground;\n }\n\n /** Return a unique string identifying the layers source... The URL for image layer or modelID for model layer */\n public abstract get source(): string;\n\n /** @internal */\n public matchesNameAndSource(name: string, source: string): boolean {\n return this.name === name && this.source === source;\n }\n}\n\n/** Normalized representation of a [[ImageMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * Image map layers are created from servers that produce images that represent map tiles. Map layers map also be represented by models.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @see [[ModelMapLayerSettings]] for model based map layer settings.\n * @public\n */\nexport class ImageMapLayerSettings extends MapLayerSettings {\n public readonly formatId: string;\n public readonly url: string;\n public userName?: string;\n public password?: string;\n public accessKey?: MapLayerKey;\n\n /** List of query parameters to append to the settings URL and persisted as part of the JSON representation.\n * @note Sensitive information like user credentials should be provided in [[unsavedQueryParams]] to ensure it is never persisted.\n * @beta\n */\n public savedQueryParams?: { [key: string]: string };\n\n /** List of query parameters that will get appended to the settings URL that should *not* be be persisted part of the JSON representation.\n * @beta\n */\n public unsavedQueryParams?: { [key: string]: string };\n public readonly subLayers: MapSubLayerSettings[];\n public override get source(): string { return this.url; }\n\n /** @internal */\n protected constructor(props: ImageMapLayerProps) {\n const transparentBackground = props.transparentBackground ?? true;\n super(props.name, props.visible, props.transparency, transparentBackground);\n\n this.formatId = props.formatId;\n this.url = props.url;\n this.accessKey = props.accessKey;\n if (props.queryParams) {\n this.savedQueryParams = {...props.queryParams};\n }\n this.subLayers = [];\n if (!props.subLayers)\n return;\n\n for (const subLayerProps of props.subLayers) {\n const subLayer = MapSubLayerSettings.fromJSON(subLayerProps);\n if (subLayer)\n this.subLayers.push(subLayer);\n }\n }\n\n public static override fromJSON(props: ImageMapLayerProps): ImageMapLayerSettings {\n return new this(props);\n }\n\n /** return JSON representation of this MapLayerSettings object */\n public override toJSON(): ImageMapLayerProps {\n const props = super._toJSON() as ImageMapLayerProps;\n props.url = this.url;\n props.formatId = this.formatId;\n\n if (this.subLayers.length > 0)\n props.subLayers = this.subLayers.map((x) => x.toJSON());\n\n if (this.savedQueryParams)\n props.queryParams = {...this.savedQueryParams};\n\n return props;\n }\n\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\n * @param changedProps JSON representation of the properties to change.\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\n */\n public clone(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerSettings {\n const clone = ImageMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n\n // Clone members not part of MapLayerProps\n clone.userName = this.userName;\n clone.password = this.password;\n clone.accessKey = this.accessKey;\n if (this.unsavedQueryParams)\n clone.unsavedQueryParams = {...this.unsavedQueryParams};\n if (this.savedQueryParams)\n clone.savedQueryParams = {...this.savedQueryParams};\n\n return clone;\n }\n\n /** @internal */\n protected override cloneProps(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerProps {\n const props = super.cloneProps(changedProps) as ImageMapLayerProps;\n\n props.formatId = changedProps.formatId ?? this.formatId;\n props.url = changedProps.url ?? this.url;\n props.accessKey = changedProps.accessKey ?? this.accessKey;\n props.subLayers = changedProps.subLayers ?? this.subLayers;\n if (changedProps.queryParams) {\n props.queryParams = {...changedProps.queryParams};\n } else if (this.savedQueryParams) {\n props.queryParams = {...this.savedQueryParams};\n }\n\n return props;\n }\n\n /** @internal */\n public override displayMatches(other: MapLayerSettings): boolean {\n if (! (other instanceof ImageMapLayerSettings) || !super.displayMatches(other))\n return false;\n\n if (this.userName !== other.userName || this.password !== other.password || this.subLayers.length !== other.subLayers.length) {\n return false;\n }\n\n for (let i = 0; i < this.subLayers.length; i++)\n if (!this.subLayers[i].displayMatches(other.subLayers[i]))\n return false;\n\n return true;\n }\n\n /** Return a sublayer matching id -- or undefined if not found */\n public subLayerById(id?: SubLayerId): MapSubLayerSettings | undefined {\n return id === undefined ? undefined : this.subLayers.find((subLayer) => subLayer.id === id);\n }\n\n private hasInvisibleAncestors(subLayer?: MapSubLayerSettings): boolean {\n if (!subLayer || !subLayer.parent)\n return false;\n\n const parent = this.subLayerById(subLayer.parent);\n if (!parent)\n return false;\n\n // Visibility of named group has no impact on the visibility of children (only unnamed group does)\n // i.e For WMS, its should be possible to request a child layer when its parent is not visible (if the parent is also named)\n return (!parent.visible && !parent.isNamed) || this.hasInvisibleAncestors(parent);\n }\n\n /** Return true if sublayer is visible -- testing ancestors for visibility if they exist. */\n public isSubLayerVisible(subLayer: MapSubLayerSettings): boolean {\n if (!subLayer.visible)\n return false;\n\n return !this.hasInvisibleAncestors(subLayer);\n }\n\n /** Return true if all sublayers are invisible. */\n public get allSubLayersInvisible(): boolean {\n if (this.subLayers.length === 0)\n return false;\n\n return this.subLayers.every((subLayer) => (subLayer.isUnnamedGroup || !this.isSubLayerVisible(subLayer)));\n }\n\n /** Return the children for a sublayer */\n public getSubLayerChildren(subLayer: MapSubLayerSettings): MapSubLayerSettings[] | undefined {\n if (!subLayer.children)\n return undefined;\n\n const children = new Array<MapSubLayerSettings>();\n subLayer.children.forEach((childId) => {\n const child = this.subLayerById(childId);\n if (child !== undefined)\n children.push(child);\n });\n\n return children;\n }\n\n /** @internal */\n protected static mapTypeName(type: BackgroundMapType) { // TBD.. Localization.\n switch (type) {\n case BackgroundMapType.Aerial:\n return \"Aerial Imagery\";\n default:\n case BackgroundMapType.Hybrid:\n return \"Aerial Imagery with labels\";\n case BackgroundMapType.Street:\n return \"Streets\";\n }\n }\n\n public setCredentials(userName?: string, password?: string) {\n this.userName = userName;\n this.password = password;\n }\n\n /** Collect all query parameters\n * @beta\n */\n public collectQueryParams() {\n let queryParams: {[key: string]: string} = {};\n if (this.savedQueryParams)\n queryParams = {...this.savedQueryParams};\n\n if (this.unsavedQueryParams)\n queryParams = {...queryParams, ...this.unsavedQueryParams};\n\n return queryParams;\n }\n}\n\n/** Normalized representation of a [[ModelMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * Model map layers are produced from models, typically from two dimensional geometry that may originate in a GIS system.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @see [[ImageMapLayerSettings]] for image based map layer settings.\n * @public\n */\nexport class ModelMapLayerSettings extends MapLayerSettings {\n public readonly modelId: Id64String;\n public override get source(): string { return this.modelId; }\n\n /** @internal */\n protected constructor(modelId: Id64String, name: string, visible = true,\n transparency: number = 0, transparentBackground = true) {\n super(name, visible, transparency, transparentBackground);\n this.modelId = modelId;\n }\n\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\n public static override fromJSON(json: ModelMapLayerProps): ModelMapLayerSettings {\n const transparentBackground = (json.transparentBackground === undefined) ? true : json.transparentBackground;\n return new this(json.modelId, json.name, json.visible, json.transparency, transparentBackground);\n }\n\n /** return JSON representation of this MapLayerSettings object */\n public override toJSON(): ModelMapLayerProps {\n const props = super._toJSON() as ModelMapLayerProps;\n props.modelId = this.modelId;\n return props;\n }\n\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\n * @param changedProps JSON representation of the properties to change.\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\n */\n public clone(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerSettings {\n return ModelMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n }\n\n /** @internal */\n protected override cloneProps(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerProps {\n const props = super.cloneProps(changedProps) as ModelMapLayerProps;\n props.modelId = changedProps.modelId ?? this.modelId;\n return props;\n }\n\n /** @internal */\n public override displayMatches(other: MapLayerSettings): boolean {\n if (!(other instanceof ModelMapLayerSettings) || !super.displayMatches(other))\n return false;\n\n return this.modelId === other.modelId;\n }\n\n /** Return true if all sublayers are invisible (always false as model layers do not include sublayers). */\n public get allSubLayersInvisible(): boolean {\n return false;\n }\n}\n\n/** JSON representation of a [[BaseMapLayerSettings]].\n * @public\n */\nexport interface BaseMapLayerProps extends ImageMapLayerProps {\n provider?: BackgroundMapProviderProps;\n}\n\n/** A [[ImageMapLayerSettings]] that can serve as the base layer for a [[MapImagerySettings]].\n * The base layer supports all of the same options as any other layer, but also allows for simplified configuration based\n * on a small set of known supported [[BackgroundMapProvider]]s like [Bing Maps](https://www.microsoft.com/en-us/maps).\n * If the base layer was configured from such a provider, that information will be preserved and can be queried; this allows\n * the imagery provider and/or type to be easily modified.\n * @see [[MapImagerySettings.backgroundBase]].\n * @public\n */\nexport class BaseMapLayerSettings extends ImageMapLayerSettings {\n private _provider?: BackgroundMapProvider;\n\n /** The provider from which this base layer was configured, if any. */\n public get provider(): BackgroundMapProvider | undefined { return this._provider; }\n\n /** Create a base layer from its JSON representation.\n * TODO: This, MapLayerSettings.fromJSON, and MapSubLayerSettings.fromJSON should never return undefined.\n * That means they should not accept undefined for props and should define props such that it fully describes the\n * layer - e.g., url and name must be defined.\n */\n public static override fromJSON(props: BaseMapLayerProps): BaseMapLayerSettings {\n const settings = super.fromJSON(props);\n assert(settings instanceof BaseMapLayerSettings);\n if (props.provider)\n settings._provider = BackgroundMapProvider.fromJSON(props.provider);\n\n return settings;\n }\n\n /** Convert this layer to its JSON representation. */\n public override toJSON(): BaseMapLayerProps {\n const props = super.toJSON() as BaseMapLayerProps;\n if (this.provider)\n props.provider = this.provider.toJSON();\n\n return props;\n }\n\n /** @internal */\n public override cloneProps(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerProps {\n const props = super.cloneProps(changedProps) as BaseMapLayerProps;\n\n if (changedProps.provider)\n props.provider = changedProps.provider;\n else if (this.provider)\n props.provider = this.provider.toJSON();\n\n return props;\n }\n\n /** Create a copy of this layer. */\n public override clone(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerSettings {\n const prevUrl = this.url;\n const clone = BaseMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n\n if (this.provider && prevUrl !== this.url)\n clone._provider = undefined;\n\n return clone;\n }\n\n /** Create a base layer from a BackgroundMapProvider. */\n public static fromProvider(provider: BackgroundMapProvider, options?: { invisible?: boolean, transparency?: number }): BaseMapLayerSettings {\n let formatId: string, url: string, name: string;\n switch (provider.name) {\n case \"BingProvider\":\n default:\n formatId = \"BingMaps\";\n\n let imagerySet;\n switch (provider.type) {\n case BackgroundMapType.Street:\n imagerySet = \"Road\";\n break;\n case BackgroundMapType.Aerial:\n imagerySet = \"Aerial\";\n break;\n case BackgroundMapType.Hybrid:\n default:\n imagerySet = \"AerialWithLabels\";\n break;\n }\n\n name = `Bing Maps: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\n url = `https://dev.virtualearth.net/REST/v1/Imagery/Metadata/${imagerySet}?o=json&incl=ImageryProviders&key={bingKey}`;\n break;\n\n case \"MapBoxProvider\":\n formatId = \"MapboxImagery\";\n name = `MapBox: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\n switch (provider.type) {\n case BackgroundMapType.Street:\n url = \"https://api.mapbox.com/styles/v1/mapbox/streets-v11/tiles/\";\n break;\n case BackgroundMapType.Aerial:\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-v9/tiles/\";\n break;\n case BackgroundMapType.Hybrid:\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-streets-v11/tiles/\";\n break;\n }\n\n break;\n }\n\n const settings = super.fromJSON({\n name,\n formatId,\n url,\n transparentBackground: false,\n visible: !options?.invisible,\n transparency: options?.transparency,\n });\n\n assert(undefined !== settings);\n assert(settings instanceof BaseMapLayerSettings);\n\n settings._provider = provider;\n return settings;\n }\n\n /** @internal */\n public static fromBackgroundMapProps(props: DeprecatedBackgroundMapProps): BaseMapLayerSettings {\n return this.fromProvider(BackgroundMapProvider.fromBackgroundMapProps(props));\n }\n\n /** @alpha */\n public cloneWithProvider(provider: BackgroundMapProvider): BaseMapLayerSettings {\n return BaseMapLayerSettings.fromProvider(provider, { invisible: !this.visible, transparency: this.transparency });\n }\n}\n"]}
1
+ {"version":3,"file":"MapLayerSettings.js","sourceRoot":"","sources":["../../src/MapLayerSettings.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module MapLayers\n */\n\nimport { assert, Id64String } from \"@itwin/core-bentley\";\nimport { BackgroundMapProvider, BackgroundMapProviderProps, BackgroundMapType } from \"./BackgroundMapProvider\";\nimport { DeprecatedBackgroundMapProps } from \"./BackgroundMapSettings\";\n\n/** The current set of supported map layer formats.\n * In order to be displayed, a corresponding format must have been registered in the [MapLayerFormatRegistry]($frontend)\n * @public\n */\nexport type ImageryMapLayerFormatId = \"ArcGIS\" | \"BingMaps\" | \"MapboxImagery\" | \"TileURL\" | \"WMS\" | \"WMTS\";\n\n/** @public */\nexport type SubLayerId = string | number;\n\n/**\n * Type for map layer provider array property.\n * @beta\n */\nexport type MapLayerProviderArrayProperty = number[] | string[] | boolean[];\n\n/**\n * Type for map layer provider properties.\n * @beta\n */\nexport interface MapLayerProviderProperties { [key: string]: number | string | boolean | MapLayerProviderArrayProperty };\n\n/** JSON representation of the settings associated with a map sublayer included within a [[MapLayerProps]].\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\n * @see [[MapLayerProps]]\n * @public\n */\nexport interface MapSubLayerProps {\n name: string;\n title?: string;\n visible?: boolean;\n id?: SubLayerId;\n parent?: SubLayerId;\n children?: SubLayerId[];\n}\n\n/** Normalized representation of a [[MapSubLayerProps]] for which values\n * have been validated and default values have been applied where explicit values not defined.\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\n * This class can represent a hierarchy, in this case a sub layer is visible only if all its ancestors are also visible.\n * @see [[MapLayerSettings]]\n * @public\n */\nexport class MapSubLayerSettings {\n /** Typically Name is a single word used for machine-to-machine communication while the Title is for the benefit of humans (WMS) */\n public readonly name: string;\n /** Title. */\n public readonly title?: string;\n /** If true the sub layer is visible. If part of a hierarchy, a sub layer is visible only if its ancestors are also visible. */\n public readonly visible: boolean;\n /** A unique string or number that may be used to identify the sub layer (ArcGIS) */\n public readonly id: SubLayerId;\n /** One or more sublayer children */\n public readonly children?: SubLayerId[];\n /** sublayer parent. */\n public readonly parent?: SubLayerId;\n\n constructor(name: string, title?: string, visible?: boolean, id?: SubLayerId, parent?: SubLayerId, children?: SubLayerId[]) {\n this.name = name;\n this.title = title;\n this.visible = visible !== undefined && visible;\n this.id = (id === undefined) ? this.name : id;\n this.parent = parent;\n this.children = children;\n }\n\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\n public static fromJSON(json: MapSubLayerProps): MapSubLayerSettings {\n return new MapSubLayerSettings(json.name, json.title, json.visible, (json.id === json.name) ? undefined : json.id, json.parent, json.children);\n }\n\n public toJSON(): MapSubLayerProps {\n const props: MapSubLayerProps = { name: this.name, visible: this.visible };\n\n if (undefined !== this.id && this.id !== this.name)\n props.id = this.id;\n\n if (undefined !== this.title)\n props.title = this.title;\n\n if (this.children)\n props.children = [...this.children];\n\n if (undefined !== this.parent)\n props.parent = this.parent;\n\n return props;\n }\n\n /** Creating a copy of this MapSubLayer, optionally modifying some if its properties */\n public clone(changedProps: Partial<MapSubLayerProps>): MapSubLayerSettings {\n if (undefined === changedProps)\n return this;\n\n const props = {\n name: undefined !== changedProps.name ? changedProps.name : this.name,\n id: undefined !== changedProps.id ? changedProps.id : this.id,\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\n parent: undefined !== changedProps.parent ? changedProps.parent : this.parent,\n children: undefined !== changedProps.children ? changedProps.children.slice() : this.children?.slice(),\n title: undefined !== changedProps.title ? changedProps.title : this.title,\n };\n return MapSubLayerSettings.fromJSON(props);\n }\n\n /** @internal */\n public displayMatches(other: MapSubLayerSettings): boolean {\n return this.name === other.name && this.visible === other.visible;\n }\n\n /** return true if this sublayer is named. */\n public get isNamed(): boolean { return this.name.length > 0; }\n\n /** return true if this sublayer is a leaf (has no children) */\n public get isLeaf(): boolean { return this.children === undefined || this.children.length === 0; }\n\n /** return true if this sublayer is an unnamed group */\n public get isUnnamedGroup(): boolean { return !this.isLeaf && !this.isNamed; }\n\n /** return a string representing this sublayer id (converting to string if underlying id is number) */\n public get idString(): string { return (typeof this.id === \"number\") ? this.id.toString(10) : this.id; }\n}\n\n/** JSON representation of properties common to both [[ImageMapLayerProps]] and [[ModelMapLayerProps]].\n * @see [[MapImageryProps]]\n * @public\n */\nexport interface CommonMapLayerProps {\n /** Controls visibility of layer. Defaults to 'true'. */\n visible?: boolean;\n\n /** A user-friendly name for the layer. */\n name: string;\n\n /** A transparency value from 0.0 (fully opaque) to 1.0 (fully transparent) to apply to map graphics when drawing,\n * or false to indicate the transparency should not be overridden.\n * Default value: 0.\n */\n\n transparency?: number;\n /** True to indicate background is transparent.\n * Default: true.\n */\n transparentBackground?: boolean;\n}\n\n/** JSON representation of an [[ImageMapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @see [[ImageryMapLayerFormatId]].\n * @public\n */\nexport interface ImageMapLayerProps extends CommonMapLayerProps {\n /** URL */\n url: string;\n /** Identifies the map layers source.*/\n formatId: string;\n /** Source layers. If undefined all layers are displayed. */\n subLayers?: MapSubLayerProps[];\n /** Access Key for the Layer, like a subscription key or access token.\n * ###TODO This does not belong in the props object. It should never be persisted.\n */\n /** @internal */\n accessKey?: MapLayerKey;\n\n /** @internal */\n modelId?: never;\n\n /** List of query parameters that will get appended to the source.\n * @beta\n */\n queryParams?: { [key: string]: string };\n\n /** Properties specific to the map layer provider.\n * @beta\n */\n properties?: MapLayerProviderProperties;\n\n}\n\n/** JSON representation of a [[ModelMapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @public\n */\nexport interface ModelMapLayerProps extends CommonMapLayerProps {\n /** The Id of the [GeometricModel]($backend) containing the geometry to be drawn by the layer. */\n modelId: Id64String;\n\n /** @internal */\n url?: never;\n /** @internal */\n formatId?: never;\n /** @internal */\n subLayers?: never;\n /** @internal */\n accessKey?: never;\n}\n\n/** JSON representation of a [[MapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @public\n */\nexport type MapLayerProps = ImageMapLayerProps | ModelMapLayerProps;\n\n/**\n * stores key-value pair to be added to all requests made involving map layer.\n * @public\n */\nexport interface MapLayerKey {\n key: string;\n value: string;\n}\n\n/** Abstract base class for normalized representation of a [[MapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * This class is extended by [[ImageMapLayerSettings]] and [ModelMapLayerSettings]] to create the settings for image and model based layers.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @public\n */\nexport abstract class MapLayerSettings {\n public readonly visible: boolean;\n\n public readonly name: string;\n public readonly transparency: number;\n public readonly transparentBackground: boolean;\n public abstract get allSubLayersInvisible(): boolean;\n public abstract clone(changedProps: Partial<MapLayerProps>): MapLayerSettings;\n public abstract toJSON(): MapLayerProps;\n\n /** @internal */\n protected constructor(name: string, visible = true, transparency: number = 0, transparentBackground = true) {\n this.name = name;\n this.visible = visible;\n this.transparentBackground = transparentBackground;\n this.transparency = transparency;\n }\n\n /** Create a map layer settings from its JSON representation. */\n public static fromJSON(props: MapLayerProps): MapLayerSettings {\n return undefined !== props.modelId ? ModelMapLayerSettings.fromJSON(props) : ImageMapLayerSettings.fromJSON(props);\n }\n\n /** @internal */\n protected _toJSON(): CommonMapLayerProps {\n const props: CommonMapLayerProps = {\n name: this.name,\n visible: this.visible,\n };\n\n if (0 !== this.transparency)\n props.transparency = this.transparency;\n\n if (this.transparentBackground === false)\n props.transparentBackground = this.transparentBackground;\n\n return props;\n }\n\n /** @internal */\n protected cloneProps(changedProps: Partial<MapLayerProps>): CommonMapLayerProps {\n return {\n name: undefined !== changedProps.name ? changedProps.name : this.name,\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\n transparency: undefined !== changedProps.transparency ? changedProps.transparency : this.transparency,\n transparentBackground: undefined !== changedProps.transparentBackground ? changedProps.transparentBackground : this.transparentBackground,\n };\n }\n\n /** @internal */\n public displayMatches(other: MapLayerSettings): boolean {\n return this.name === other.name && this.visible === other.visible && this.transparency === other.transparency && this.transparentBackground === other.transparentBackground;\n }\n\n /** Return a unique string identifying the layers source... The URL for image layer or modelID for model layer */\n public abstract get source(): string;\n\n /** @internal */\n public matchesNameAndSource(name: string, source: string): boolean {\n return this.name === name && this.source === source;\n }\n}\n\n/** Normalized representation of a [[ImageMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * Image map layers are created from servers that produce images that represent map tiles. Map layers map also be represented by models.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @see [[ModelMapLayerSettings]] for model based map layer settings.\n * @public\n */\nexport class ImageMapLayerSettings extends MapLayerSettings {\n public readonly formatId: string;\n public readonly url: string;\n public userName?: string;\n public password?: string;\n public accessKey?: MapLayerKey;\n\n /** List of query parameters to append to the settings URL and persisted as part of the JSON representation.\n * @note Sensitive information like user credentials should be provided in [[unsavedQueryParams]] to ensure it is never persisted.\n * @beta\n */\n public savedQueryParams?: { [key: string]: string };\n\n /** List of query parameters that will get appended to the settings URL that should *not* be be persisted part of the JSON representation.\n * @beta\n */\n public unsavedQueryParams?: { [key: string]: string };\n\n /** Properties specific to the map layer provider.\n * @beta\n */\n public readonly properties?: MapLayerProviderProperties;\n\n public readonly subLayers: MapSubLayerSettings[];\n public override get source(): string { return this.url; }\n\n /** @internal */\n protected constructor(props: ImageMapLayerProps) {\n const transparentBackground = props.transparentBackground ?? true;\n super(props.name, props.visible, props.transparency, transparentBackground);\n\n this.formatId = props.formatId;\n this.url = props.url;\n this.accessKey = props.accessKey;\n if (props.queryParams) {\n this.savedQueryParams = {...props.queryParams};\n }\n\n if (props.properties) {\n this.properties = {...props.properties}\n }\n\n this.subLayers = [];\n if (!props.subLayers)\n return;\n\n for (const subLayerProps of props.subLayers) {\n const subLayer = MapSubLayerSettings.fromJSON(subLayerProps);\n if (subLayer)\n this.subLayers.push(subLayer);\n }\n }\n\n public static override fromJSON(props: ImageMapLayerProps): ImageMapLayerSettings {\n return new this(props);\n }\n\n /** return JSON representation of this MapLayerSettings object */\n public override toJSON(): ImageMapLayerProps {\n const props = super._toJSON() as ImageMapLayerProps;\n props.url = this.url;\n props.formatId = this.formatId;\n\n if (this.subLayers.length > 0)\n props.subLayers = this.subLayers.map((x) => x.toJSON());\n\n if (this.savedQueryParams)\n props.queryParams = {...this.savedQueryParams};\n\n if (this.properties) {\n props.properties = structuredClone(this.properties);\n }\n\n return props;\n }\n\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\n * @param changedProps JSON representation of the properties to change.\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\n */\n public clone(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerSettings {\n const clone = ImageMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n\n // Clone members not part of MapLayerProps\n clone.userName = this.userName;\n clone.password = this.password;\n if (this.unsavedQueryParams)\n clone.unsavedQueryParams = {...this.unsavedQueryParams};\n if (this.savedQueryParams)\n clone.savedQueryParams = {...this.savedQueryParams};\n\n return clone;\n }\n\n /** @internal */\n protected override cloneProps(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerProps {\n const props = super.cloneProps(changedProps) as ImageMapLayerProps;\n\n props.formatId = changedProps.formatId ?? this.formatId;\n props.url = changedProps.url ?? this.url;\n props.accessKey = changedProps.accessKey ?? this.accessKey;\n props.subLayers = changedProps.subLayers ?? this.subLayers;\n if (changedProps.queryParams) {\n props.queryParams = {...changedProps.queryParams};\n } else if (this.savedQueryParams) {\n props.queryParams = {...this.savedQueryParams};\n }\n\n if (changedProps.properties) {\n props.properties = {...changedProps.properties}\n } else if (this.properties) {\n props.properties = {...this.properties}\n }\n return props;\n }\n\n /** @internal */\n public override displayMatches(other: MapLayerSettings): boolean {\n if (! (other instanceof ImageMapLayerSettings) || !super.displayMatches(other))\n return false;\n\n if (this.userName !== other.userName || this.password !== other.password || this.subLayers.length !== other.subLayers.length) {\n return false;\n }\n\n for (let i = 0; i < this.subLayers.length; i++)\n if (!this.subLayers[i].displayMatches(other.subLayers[i]))\n return false;\n\n return true;\n }\n\n /** Return a sublayer matching id -- or undefined if not found */\n public subLayerById(id?: SubLayerId): MapSubLayerSettings | undefined {\n return id === undefined ? undefined : this.subLayers.find((subLayer) => subLayer.id === id);\n }\n\n private hasInvisibleAncestors(subLayer?: MapSubLayerSettings): boolean {\n if (!subLayer || !subLayer.parent)\n return false;\n\n const parent = this.subLayerById(subLayer.parent);\n if (!parent)\n return false;\n\n // Visibility of named group has no impact on the visibility of children (only unnamed group does)\n // i.e For WMS, its should be possible to request a child layer when its parent is not visible (if the parent is also named)\n return (!parent.visible && !parent.isNamed) || this.hasInvisibleAncestors(parent);\n }\n\n /** Return true if sublayer is visible -- testing ancestors for visibility if they exist. */\n public isSubLayerVisible(subLayer: MapSubLayerSettings): boolean {\n if (!subLayer.visible)\n return false;\n\n return !this.hasInvisibleAncestors(subLayer);\n }\n\n /** Return true if all sublayers are invisible. */\n public get allSubLayersInvisible(): boolean {\n if (this.subLayers.length === 0)\n return false;\n\n return this.subLayers.every((subLayer) => (subLayer.isUnnamedGroup || !this.isSubLayerVisible(subLayer)));\n }\n\n /** Return the children for a sublayer */\n public getSubLayerChildren(subLayer: MapSubLayerSettings): MapSubLayerSettings[] | undefined {\n if (!subLayer.children)\n return undefined;\n\n const children = new Array<MapSubLayerSettings>();\n subLayer.children.forEach((childId) => {\n const child = this.subLayerById(childId);\n if (child !== undefined)\n children.push(child);\n });\n\n return children;\n }\n\n /** @internal */\n protected static mapTypeName(type: BackgroundMapType) { // TBD.. Localization.\n switch (type) {\n case BackgroundMapType.Aerial:\n return \"Aerial Imagery\";\n default:\n case BackgroundMapType.Hybrid:\n return \"Aerial Imagery with labels\";\n case BackgroundMapType.Street:\n return \"Streets\";\n }\n }\n\n public setCredentials(userName?: string, password?: string) {\n this.userName = userName;\n this.password = password;\n }\n\n /** Collect all query parameters\n * @beta\n */\n public collectQueryParams() {\n let queryParams: {[key: string]: string} = {};\n if (this.savedQueryParams)\n queryParams = {...this.savedQueryParams};\n\n if (this.unsavedQueryParams)\n queryParams = {...queryParams, ...this.unsavedQueryParams};\n\n return queryParams;\n }\n}\n\n/** Normalized representation of a [[ModelMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * Model map layers are produced from models, typically from two dimensional geometry that may originate in a GIS system.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @see [[ImageMapLayerSettings]] for image based map layer settings.\n * @public\n */\nexport class ModelMapLayerSettings extends MapLayerSettings {\n public readonly modelId: Id64String;\n public override get source(): string { return this.modelId; }\n\n /** @internal */\n protected constructor(modelId: Id64String, name: string, visible = true,\n transparency: number = 0, transparentBackground = true) {\n super(name, visible, transparency, transparentBackground);\n this.modelId = modelId;\n }\n\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\n public static override fromJSON(json: ModelMapLayerProps): ModelMapLayerSettings {\n const transparentBackground = (json.transparentBackground === undefined) ? true : json.transparentBackground;\n return new this(json.modelId, json.name, json.visible, json.transparency, transparentBackground);\n }\n\n /** return JSON representation of this MapLayerSettings object */\n public override toJSON(): ModelMapLayerProps {\n const props = super._toJSON() as ModelMapLayerProps;\n props.modelId = this.modelId;\n return props;\n }\n\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\n * @param changedProps JSON representation of the properties to change.\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\n */\n public clone(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerSettings {\n return ModelMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n }\n\n /** @internal */\n protected override cloneProps(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerProps {\n const props = super.cloneProps(changedProps) as ModelMapLayerProps;\n props.modelId = changedProps.modelId ?? this.modelId;\n return props;\n }\n\n /** @internal */\n public override displayMatches(other: MapLayerSettings): boolean {\n if (!(other instanceof ModelMapLayerSettings) || !super.displayMatches(other))\n return false;\n\n return this.modelId === other.modelId;\n }\n\n /** Return true if all sublayers are invisible (always false as model layers do not include sublayers). */\n public get allSubLayersInvisible(): boolean {\n return false;\n }\n}\n\n/** JSON representation of a [[BaseMapLayerSettings]].\n * @public\n */\nexport interface BaseMapLayerProps extends ImageMapLayerProps {\n provider?: BackgroundMapProviderProps;\n}\n\n/** A [[ImageMapLayerSettings]] that can serve as the base layer for a [[MapImagerySettings]].\n * The base layer supports all of the same options as any other layer, but also allows for simplified configuration based\n * on a small set of known supported [[BackgroundMapProvider]]s like [Bing Maps](https://www.microsoft.com/en-us/maps).\n * If the base layer was configured from such a provider, that information will be preserved and can be queried; this allows\n * the imagery provider and/or type to be easily modified.\n * @see [[MapImagerySettings.backgroundBase]].\n * @public\n */\nexport class BaseMapLayerSettings extends ImageMapLayerSettings {\n private _provider?: BackgroundMapProvider;\n\n /** The provider from which this base layer was configured, if any. */\n public get provider(): BackgroundMapProvider | undefined { return this._provider; }\n\n /** Create a base layer from its JSON representation.\n * TODO: This, MapLayerSettings.fromJSON, and MapSubLayerSettings.fromJSON should never return undefined.\n * That means they should not accept undefined for props and should define props such that it fully describes the\n * layer - e.g., url and name must be defined.\n */\n public static override fromJSON(props: BaseMapLayerProps): BaseMapLayerSettings {\n const settings = super.fromJSON(props);\n assert(settings instanceof BaseMapLayerSettings);\n if (props.provider)\n settings._provider = BackgroundMapProvider.fromJSON(props.provider);\n\n return settings;\n }\n\n /** Convert this layer to its JSON representation. */\n public override toJSON(): BaseMapLayerProps {\n const props = super.toJSON() as BaseMapLayerProps;\n if (this.provider)\n props.provider = this.provider.toJSON();\n\n return props;\n }\n\n /** @internal */\n public override cloneProps(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerProps {\n const props = super.cloneProps(changedProps) as BaseMapLayerProps;\n\n if (changedProps.provider)\n props.provider = changedProps.provider;\n else if (this.provider)\n props.provider = this.provider.toJSON();\n\n return props;\n }\n\n /** Create a copy of this layer. */\n public override clone(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerSettings {\n const prevUrl = this.url;\n const clone = BaseMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n\n if (this.provider && prevUrl !== this.url)\n clone._provider = undefined;\n\n return clone;\n }\n\n /** Create a base layer from a BackgroundMapProvider. */\n public static fromProvider(provider: BackgroundMapProvider, options?: { invisible?: boolean, transparency?: number }): BaseMapLayerSettings {\n let formatId: string, url: string, name: string;\n switch (provider.name) {\n case \"BingProvider\":\n default:\n formatId = \"BingMaps\";\n\n let imagerySet;\n switch (provider.type) {\n case BackgroundMapType.Street:\n imagerySet = \"Road\";\n break;\n case BackgroundMapType.Aerial:\n imagerySet = \"Aerial\";\n break;\n case BackgroundMapType.Hybrid:\n default:\n imagerySet = \"AerialWithLabels\";\n break;\n }\n\n name = `Bing Maps: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\n url = `https://dev.virtualearth.net/REST/v1/Imagery/Metadata/${imagerySet}?o=json&incl=ImageryProviders&key={bingKey}`;\n break;\n\n case \"MapBoxProvider\":\n formatId = \"MapboxImagery\";\n name = `MapBox: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\n switch (provider.type) {\n case BackgroundMapType.Street:\n url = \"https://api.mapbox.com/styles/v1/mapbox/streets-v11/tiles/\";\n break;\n case BackgroundMapType.Aerial:\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-v9/tiles/\";\n break;\n case BackgroundMapType.Hybrid:\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-streets-v11/tiles/\";\n break;\n }\n\n break;\n }\n\n const settings = super.fromJSON({\n name,\n formatId,\n url,\n transparentBackground: false,\n visible: !options?.invisible,\n transparency: options?.transparency,\n });\n\n assert(undefined !== settings);\n assert(settings instanceof BaseMapLayerSettings);\n\n settings._provider = provider;\n return settings;\n }\n\n /** @internal */\n public static fromBackgroundMapProps(props: DeprecatedBackgroundMapProps): BaseMapLayerSettings {\n return this.fromProvider(BackgroundMapProvider.fromBackgroundMapProps(props));\n }\n\n /** @alpha */\n public cloneWithProvider(provider: BackgroundMapProvider): BaseMapLayerSettings {\n return BaseMapLayerSettings.fromProvider(provider, { invisible: !this.visible, transparency: this.transparency });\n }\n}\n"]}
@@ -51,6 +51,7 @@ export declare enum GeoCoordStatus {
51
51
  /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend
52
52
  * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).
53
53
  * At the completion of the conversion promise no coordinates should have this status.
54
+ * @deprecated in 5.0. Pending is no longer returned as a status for coordinate conversions.
54
55
  */
55
56
  Pending = -41556
56
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GeoCoordinateServices.d.ts","sourceRoot":"","sources":["../../src/GeoCoordinateServices.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E;;;;;;GAMG;AACH,oBAAY,cAAc;IACxB,kDAAkD;IAClD,OAAO,IAAI;IACX,sIAAsI;IACtI,YAAY,MAAM;IAClB;;;;;;;;;;OAUG;IACH,gBAAgB,IAAI;IACpB;;;;OAIG;IACH,uBAAuB,IAAI;IAC3B;;;;OAIG;IACH,gBAAgB,KAAK;IACrB;;;;OAIG;IACH,yBAAyB,KAAK;IAC9B,sGAAsG;IACtG,UAAU,OAAO;IACjB;;;OAGG;IACH,OAAO,SAAS;CACjB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,cAAc,GAAG,gBAAgB,CAazE;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,CAAC,EAAE,QAAQ,CAAC;IACZ,0FAA0F;IAC1F,CAAC,EAAE,cAAc,CAAC;CACnB;AAED,YAAY;AACZ,MAAM,WAAW,8BAA8B;IAC7C,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,QAAQ,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,kCAAkC;IACjD,6FAA6F;IAC7F,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB;;;;;MAKE;IACF,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD;;;MAGE;IACF,MAAM,EAAE,MAAM,CAAC;IACf,+FAA+F;IAC/F,aAAa,CAAC,EAAE,kBAAkB,CAAC;CACpC"}
1
+ {"version":3,"file":"GeoCoordinateServices.d.ts","sourceRoot":"","sources":["../../src/GeoCoordinateServices.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E;;;;;;GAMG;AACH,oBAAY,cAAc;IACxB,kDAAkD;IAClD,OAAO,IAAI;IACX,sIAAsI;IACtI,YAAY,MAAM;IAClB;;;;;;;;;;OAUG;IACH,gBAAgB,IAAI;IACpB;;;;OAIG;IACH,uBAAuB,IAAI;IAC3B;;;;OAIG;IACH,gBAAgB,KAAK;IACrB;;;;OAIG;IACH,yBAAyB,KAAK;IAC9B,sGAAsG;IACtG,UAAU,OAAO;IACjB;;;;OAIG;IACH,OAAO,SAAS;CACjB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,cAAc,GAAG,gBAAgB,CAazE;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,CAAC,EAAE,QAAQ,CAAC;IACZ,0FAA0F;IAC1F,CAAC,EAAE,cAAc,CAAC;CACnB;AAED,YAAY;AACZ,MAAM,WAAW,8BAA8B;IAC7C,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,QAAQ,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,kCAAkC;IACjD,6FAA6F;IAC7F,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB;;;;;MAKE;IACF,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD;;;MAGE;IACF,MAAM,EAAE,MAAM,CAAC;IACf,+FAA+F;IAC/F,aAAa,CAAC,EAAE,kBAAkB,CAAC;CACpC"}
@@ -55,6 +55,7 @@ export var GeoCoordStatus;
55
55
  /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend
56
56
  * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).
57
57
  * At the completion of the conversion promise no coordinates should have this status.
58
+ * @deprecated in 5.0. Pending is no longer returned as a status for coordinate conversions.
58
59
  */
59
60
  GeoCoordStatus[GeoCoordStatus["Pending"] = -41556] = "Pending";
60
61
  })(GeoCoordStatus || (GeoCoordStatus = {}));
@@ -70,7 +71,7 @@ export function mapToGeoServiceStatus(s) {
70
71
  case GeoCoordStatus.NoDatumConverter: return GeoServiceStatus.NoDatumConverter;
71
72
  case GeoCoordStatus.VerticalDatumConvertError: return GeoServiceStatus.VerticalDatumConvertError;
72
73
  case GeoCoordStatus.CSMapError: return GeoServiceStatus.CSMapError;
73
- case GeoCoordStatus.Pending: return GeoServiceStatus.Pending;
74
+ case GeoCoordStatus.Pending: return GeoServiceStatus.Pending; // eslint-disable-line @typescript-eslint/no-deprecated
74
75
  default:
75
76
  throw new Error("GeoCoordStatus -> GeoServiceStatus - Missing enum conversion");
76
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GeoCoordinateServices.js","sourceRoot":"","sources":["../../src/GeoCoordinateServices.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,qDAAqD;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAIvD;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,cA0CX;AA1CD,WAAY,cAAc;IACxB,kDAAkD;IAClD,yDAAW,CAAA;IACX,sIAAsI;IACtI,qEAAkB,CAAA;IAClB;;;;;;;;;;OAUG;IACH,2EAAoB,CAAA;IACpB;;;;OAIG;IACH,yFAA2B,CAAA;IAC3B;;;;OAIG;IACH,4EAAqB,CAAA;IACrB;;;;OAIG;IACH,8FAA8B,CAAA;IAC9B,sGAAsG;IACtG,kEAAiB,CAAA;IACjB;;;OAGG;IACH,8DAAgB,CAAA;AAClB,CAAC,EA1CW,cAAc,KAAd,cAAc,QA0CzB;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,CAAiB;IACrD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC;QAC7D,KAAK,cAAc,CAAC,YAAY,CAAC,CAAC,OAAO,gBAAgB,CAAC,aAAa,CAAC;QACxE,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,gBAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO,gBAAgB,CAAC,uBAAuB,CAAC;QAC7F,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,gBAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,yBAAyB,CAAC,CAAC,OAAO,gBAAgB,CAAC,yBAAyB,CAAC;QACjG,KAAK,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,gBAAgB,CAAC,UAAU,CAAC;QACnE,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC;QAC7D;YACE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACpF,CAAC;AACH,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module iModels\n */\n\n// cspell:ignore NGVD, NAVD, COMPD_CS, PROJCS, GEOGCS\n\nimport { GeoServiceStatus } from \"@itwin/core-bentley\";\nimport { XYZProps } from \"@itwin/core-geometry\";\nimport { GeographicCRSProps } from \"./geometry/CoordinateReferenceSystem\";\n\n/** This enumeration lists all possible status as returned from a coordinate conversion to or from a\n * [[GeographicCRS]] and either another [[GeographicCRS]] or a [[GeodeticDatum]].\n * @see [[GeoConverter]] to perform coordinate conversions.\n * @see [[PointWithStatus]] for the result of a coordinate conversion, including its status code.\n * @public\n * @extensions\n */\nexport enum GeoCoordStatus {\n /** Indicates successful coordinate conversion. */\n Success = 0,\n /** Indicates that the source or target of the conversion is not defined, usually the iModel Geographic Coordinate Reference System.*/\n NoGCSDefined = 100,\n /** This value indicates that the conversion was performed outside of the normal use of application of either Geographic Coordinate Reference Systems.\n * This return value can often be treated as a warning in specific cases. For example, global imagery extent spans the whole globe and\n * may extend far beyond the normal area of the iModel project extents and the extent of normal use of its Geographic Coordinate Reference System.\n * In such cases this value can be considered a warning as accuracy and precision is not expected in this specific case and approximate localization\n * of global imagery or other low accuracy context data is not essential far from the project.\n * If this status is returned for high accuracy data then it indicates that either Geographic Coordinate Reference Systems were inappropriately selected\n * for the iModel or other geolocated data. If this is the case the status should be somehow reported so action\n * can be performed to verify used geolocation parameters.\n * In either case the returned coordinates are to be considered valid though they may be inaccurate or result in some unexpected distortion of graphical\n * elements.\n */\n OutOfUsefulRange = 1,\n /** Indicates a hard error where conversions were requested outside of the area of the mathematical capacity of the conversion process for either\n * Geographic Coordinate Reference Systems involved. An example could be to attempt a conversion involving a Transverse Mercator more than 60 degrees\n * East or West of the projection central meridian.\n * The values returned may or may not be valid and should be discarded.\n */\n OutOfMathematicalDomain = 2,\n /** Indicates that datum transformation between the two Geographic Coordinate Reference Systems could not be performed.\n * This error is usually the result of a datum transformation path requiring use of latitude/longitude grid shift files that could not be obtained\n * or installed. In this case the latitude/longitude transformation is bypassed but the remainder of the conversion process is completed.\n * This error can be ignored for low accuracy data but should be somehow reported so actions can be performed to provide the missing files.\n */\n NoDatumConverter = 25,\n /** Indicates that a problem occurred during vertical datum conversion. This may the result of the inability to access the\n * Geoid separation data or vertical datum differential data (such as used by NGVD29 to NAVD88 conversion).\n * The horizontal coordinates returned are valid but the elevation ordinate will be returned unchanged or partially changed.\n * This status should be somehow reported so actions can be performed to provide the missing information.\n */\n VerticalDatumConvertError = 26,\n /** General inner conversion engine error. Coordinates returned are invalid and should be discarded */\n CSMapError = 4096,\n /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend\n * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).\n * At the completion of the conversion promise no coordinates should have this status.\n */\n Pending = -41556,\n}\n\n/** Maps a GeoCoordStatus to the equivalent GeoServiceStatus.\n * @public\n */\nexport function mapToGeoServiceStatus(s: GeoCoordStatus): GeoServiceStatus {\n switch (s) {\n case GeoCoordStatus.Success: return GeoServiceStatus.Success;\n case GeoCoordStatus.NoGCSDefined: return GeoServiceStatus.NoGeoLocation;\n case GeoCoordStatus.OutOfUsefulRange: return GeoServiceStatus.OutOfUsefulRange;\n case GeoCoordStatus.OutOfMathematicalDomain: return GeoServiceStatus.OutOfMathematicalDomain;\n case GeoCoordStatus.NoDatumConverter: return GeoServiceStatus.NoDatumConverter;\n case GeoCoordStatus.VerticalDatumConvertError: return GeoServiceStatus.VerticalDatumConvertError;\n case GeoCoordStatus.CSMapError: return GeoServiceStatus.CSMapError;\n case GeoCoordStatus.Pending: return GeoServiceStatus.Pending;\n default:\n throw new Error(\"GeoCoordStatus -> GeoServiceStatus - Missing enum conversion\");\n }\n}\n\n/** Information required to request conversion of an array of Geographic coordinates (Longitude/Latitude) to iModel coordinates\n * @beta\n */\nexport interface IModelCoordinatesRequestProps {\n source: string;\n geoCoords: XYZProps[];\n}\n\n/** A point converted to iModel coordinates to geographic coordinates or vice-versa by a [[GeoConverter]].\n * The status [[s]] indicates the converted point [[p]]'s degree of accuracy.\n * @public\n */\nexport interface PointWithStatus {\n /** A JSON representation of the converted point. */\n p: XYZProps;\n /** A status code indicating the degree of accuracy with the point [[p]] was converted. */\n s: GeoCoordStatus;\n}\n\n/** @beta */\nexport interface IModelCoordinatesResponseProps {\n iModelCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to request conversion of an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesRequestProps {\n target: string;\n iModelCoords: XYZProps[];\n}\n\n/** Information returned from a request to convert an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesResponseProps {\n geoCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to interpret or complete a Geographic CRS in the specified format.\n * The only currently supported formats are JSON (for completion) and WKT (OGC Well Known Text)\n * @beta\n */\nexport interface GeographicCRSInterpretRequestProps {\n /** The format of the geographic CRS definition provided in the geographicCRSDef property. */\n format: \"WKT\" | \"JSON\";\n /** The geographic CRS definition in the format specified in the format property.\n * Note that when the WKT is used the WKT fragment provided can start with a COMPD_CS clause\n * which should then contain both the horizontal CRS definition as well as the vertical CRS specification.\n * WKT fragments starting with PROJCS or GEOGCS are also supported but the vertical CRS will be assigned a\n * default value.\n */\n geographicCRSDef: string;\n}\n\n/** Information returned from a request to interpret or complete a Geographic CRS\n * @beta\n */\nexport interface GeographicCRSInterpretResponseProps {\n /** The result status of the interpret operation. A value of zero indicates successful interpretation.\n * Any value other than zero is to be considered a hard error and no valid result will\n * be returned in the geographicCRS property.\n */\n status: number;\n /** The property that receives the interpreted geographic CRS if the process was successful. */\n geographicCRS?: GeographicCRSProps;\n}\n"]}
1
+ {"version":3,"file":"GeoCoordinateServices.js","sourceRoot":"","sources":["../../src/GeoCoordinateServices.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,qDAAqD;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAIvD;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,cA2CX;AA3CD,WAAY,cAAc;IACxB,kDAAkD;IAClD,yDAAW,CAAA;IACX,sIAAsI;IACtI,qEAAkB,CAAA;IAClB;;;;;;;;;;OAUG;IACH,2EAAoB,CAAA;IACpB;;;;OAIG;IACH,yFAA2B,CAAA;IAC3B;;;;OAIG;IACH,4EAAqB,CAAA;IACrB;;;;OAIG;IACH,8FAA8B,CAAA;IAC9B,sGAAsG;IACtG,kEAAiB,CAAA;IACjB;;;;OAIG;IACH,8DAAgB,CAAA;AAClB,CAAC,EA3CW,cAAc,KAAd,cAAc,QA2CzB;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,CAAiB;IACrD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC;QAC7D,KAAK,cAAc,CAAC,YAAY,CAAC,CAAC,OAAO,gBAAgB,CAAC,aAAa,CAAC;QACxE,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,gBAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO,gBAAgB,CAAC,uBAAuB,CAAC;QAC7F,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,gBAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,yBAAyB,CAAC,CAAC,OAAO,gBAAgB,CAAC,yBAAyB,CAAC;QACjG,KAAK,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,gBAAgB,CAAC,UAAU,CAAC;QACnE,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC,uDAAuD;QACrH;YACE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACpF,CAAC;AACH,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module iModels\n */\n\n// cspell:ignore NGVD, NAVD, COMPD_CS, PROJCS, GEOGCS\n\nimport { GeoServiceStatus } from \"@itwin/core-bentley\";\nimport { XYZProps } from \"@itwin/core-geometry\";\nimport { GeographicCRSProps } from \"./geometry/CoordinateReferenceSystem\";\n\n/** This enumeration lists all possible status as returned from a coordinate conversion to or from a\n * [[GeographicCRS]] and either another [[GeographicCRS]] or a [[GeodeticDatum]].\n * @see [[GeoConverter]] to perform coordinate conversions.\n * @see [[PointWithStatus]] for the result of a coordinate conversion, including its status code.\n * @public\n * @extensions\n */\nexport enum GeoCoordStatus {\n /** Indicates successful coordinate conversion. */\n Success = 0,\n /** Indicates that the source or target of the conversion is not defined, usually the iModel Geographic Coordinate Reference System.*/\n NoGCSDefined = 100,\n /** This value indicates that the conversion was performed outside of the normal use of application of either Geographic Coordinate Reference Systems.\n * This return value can often be treated as a warning in specific cases. For example, global imagery extent spans the whole globe and\n * may extend far beyond the normal area of the iModel project extents and the extent of normal use of its Geographic Coordinate Reference System.\n * In such cases this value can be considered a warning as accuracy and precision is not expected in this specific case and approximate localization\n * of global imagery or other low accuracy context data is not essential far from the project.\n * If this status is returned for high accuracy data then it indicates that either Geographic Coordinate Reference Systems were inappropriately selected\n * for the iModel or other geolocated data. If this is the case the status should be somehow reported so action\n * can be performed to verify used geolocation parameters.\n * In either case the returned coordinates are to be considered valid though they may be inaccurate or result in some unexpected distortion of graphical\n * elements.\n */\n OutOfUsefulRange = 1,\n /** Indicates a hard error where conversions were requested outside of the area of the mathematical capacity of the conversion process for either\n * Geographic Coordinate Reference Systems involved. An example could be to attempt a conversion involving a Transverse Mercator more than 60 degrees\n * East or West of the projection central meridian.\n * The values returned may or may not be valid and should be discarded.\n */\n OutOfMathematicalDomain = 2,\n /** Indicates that datum transformation between the two Geographic Coordinate Reference Systems could not be performed.\n * This error is usually the result of a datum transformation path requiring use of latitude/longitude grid shift files that could not be obtained\n * or installed. In this case the latitude/longitude transformation is bypassed but the remainder of the conversion process is completed.\n * This error can be ignored for low accuracy data but should be somehow reported so actions can be performed to provide the missing files.\n */\n NoDatumConverter = 25,\n /** Indicates that a problem occurred during vertical datum conversion. This may the result of the inability to access the\n * Geoid separation data or vertical datum differential data (such as used by NGVD29 to NAVD88 conversion).\n * The horizontal coordinates returned are valid but the elevation ordinate will be returned unchanged or partially changed.\n * This status should be somehow reported so actions can be performed to provide the missing information.\n */\n VerticalDatumConvertError = 26,\n /** General inner conversion engine error. Coordinates returned are invalid and should be discarded */\n CSMapError = 4096,\n /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend\n * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).\n * At the completion of the conversion promise no coordinates should have this status.\n * @deprecated in 5.0. Pending is no longer returned as a status for coordinate conversions.\n */\n Pending = -41556,\n}\n\n/** Maps a GeoCoordStatus to the equivalent GeoServiceStatus.\n * @public\n */\nexport function mapToGeoServiceStatus(s: GeoCoordStatus): GeoServiceStatus {\n switch (s) {\n case GeoCoordStatus.Success: return GeoServiceStatus.Success;\n case GeoCoordStatus.NoGCSDefined: return GeoServiceStatus.NoGeoLocation;\n case GeoCoordStatus.OutOfUsefulRange: return GeoServiceStatus.OutOfUsefulRange;\n case GeoCoordStatus.OutOfMathematicalDomain: return GeoServiceStatus.OutOfMathematicalDomain;\n case GeoCoordStatus.NoDatumConverter: return GeoServiceStatus.NoDatumConverter;\n case GeoCoordStatus.VerticalDatumConvertError: return GeoServiceStatus.VerticalDatumConvertError;\n case GeoCoordStatus.CSMapError: return GeoServiceStatus.CSMapError;\n case GeoCoordStatus.Pending: return GeoServiceStatus.Pending; // eslint-disable-line @typescript-eslint/no-deprecated\n default:\n throw new Error(\"GeoCoordStatus -> GeoServiceStatus - Missing enum conversion\");\n }\n}\n\n/** Information required to request conversion of an array of Geographic coordinates (Longitude/Latitude) to iModel coordinates\n * @beta\n */\nexport interface IModelCoordinatesRequestProps {\n source: string;\n geoCoords: XYZProps[];\n}\n\n/** A point converted to iModel coordinates to geographic coordinates or vice-versa by a [[GeoConverter]].\n * The status [[s]] indicates the converted point [[p]]'s degree of accuracy.\n * @public\n */\nexport interface PointWithStatus {\n /** A JSON representation of the converted point. */\n p: XYZProps;\n /** A status code indicating the degree of accuracy with the point [[p]] was converted. */\n s: GeoCoordStatus;\n}\n\n/** @beta */\nexport interface IModelCoordinatesResponseProps {\n iModelCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to request conversion of an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesRequestProps {\n target: string;\n iModelCoords: XYZProps[];\n}\n\n/** Information returned from a request to convert an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesResponseProps {\n geoCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to interpret or complete a Geographic CRS in the specified format.\n * The only currently supported formats are JSON (for completion) and WKT (OGC Well Known Text)\n * @beta\n */\nexport interface GeographicCRSInterpretRequestProps {\n /** The format of the geographic CRS definition provided in the geographicCRSDef property. */\n format: \"WKT\" | \"JSON\";\n /** The geographic CRS definition in the format specified in the format property.\n * Note that when the WKT is used the WKT fragment provided can start with a COMPD_CS clause\n * which should then contain both the horizontal CRS definition as well as the vertical CRS specification.\n * WKT fragments starting with PROJCS or GEOGCS are also supported but the vertical CRS will be assigned a\n * default value.\n */\n geographicCRSDef: string;\n}\n\n/** Information returned from a request to interpret or complete a Geographic CRS\n * @beta\n */\nexport interface GeographicCRSInterpretResponseProps {\n /** The result status of the interpret operation. A value of zero indicates successful interpretation.\n * Any value other than zero is to be considered a hard error and no valid result will\n * be returned in the geographicCRS property.\n */\n status: number;\n /** The property that receives the interpreted geographic CRS if the process was successful. */\n geographicCRS?: GeographicCRSProps;\n}\n"]}
@@ -136,6 +136,8 @@ export interface IpcAppFunctions {
136
136
  closeIModel: (key: string) => Promise<void>;
137
137
  /** see BriefcaseConnection.saveChanges */
138
138
  saveChanges: (key: string, description?: string) => Promise<void>;
139
+ /** see BriefcaseConnection.abandonChanges */
140
+ abandonChanges: (key: string) => Promise<void>;
139
141
  /** see BriefcaseTxns.hasPendingTxns */
140
142
  hasPendingTxns: (key: string) => Promise<boolean>;
141
143
  /** see BriefcaseTxns.isUndoPossible */
@@ -1 +1 @@
1
- {"version":3,"file":"IpcAppProps.d.ts","sourceRoot":"","sources":["../../src/IpcAppProps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IpcAppProps.d.ts","sourceRoot":"","sources":["../../src/IpcAppProps.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"IpcAppProps.js","sourceRoot":"","sources":["../../src/IpcAppProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAuBH;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,GAAG,cAAc,CAAC,SAAS,gBAAgB,QAAQ,EAAE,CAAC;AAwBpH,gBAAgB;AAChB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,SAAS,EAAE,sBAAsB;IACjC,SAAS,EAAE,4BAA4B;IACvC,IAAI,EAAE,mBAAmB;IACzB,YAAY,EAAE,4BAA4B;CAClC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module NativeApp\n */\n\nimport { GuidString, Id64String, IModelStatus, LogLevel, OpenMode } from \"@itwin/core-bentley\";\nimport { Range3dProps, XYZProps } from \"@itwin/core-geometry\";\nimport { OpenBriefcaseProps, OpenCheckpointArgs } from \"./BriefcaseTypes\";\nimport { ChangedEntities } from \"./ChangedEntities\";\nimport { ChangesetIndex, ChangesetIndexAndId } from \"./ChangesetProps\";\nimport { GeographicCRSProps } from \"./geometry/CoordinateReferenceSystem\";\nimport { EcefLocationProps, IModelConnectionProps, IModelRpcProps, RootSubjectProps, SnapshotOpenOptions, StandaloneOpenOptions } from \"./IModel\";\nimport { ModelGeometryChangesProps } from \"./ModelGeometryChanges\";\n\n/** Options for pulling changes into iModel.\n * @internal\n */\nexport interface PullChangesOptions {\n /** Enables progress reporting. */\n reportProgress?: boolean;\n /** Interval for reporting progress (in milliseconds). */\n progressInterval?: number;\n /** Enables checks for abort. */\n enableCancellation?: boolean;\n}\n\n/** Get IPC channel name used for reporting progress of pulling changes into iModel.\n * @internal\n */\nexport const getPullChangesIpcChannel = (iModelId: string) => `${ipcAppChannels.functions}/pullChanges/${iModelId}`;\n\n/** Identifies a list of tile content Ids belonging to a single tile tree.\n * @internal\n */\nexport interface TileTreeContentIds {\n treeId: string;\n contentIds: string[];\n}\n\n/** Specifies a [GeometricModel]($backend)'s Id and a Guid identifying the current state of the geometry contained within the model.\n * @see [TxnManager.onModelGeometryChanged]($backend) and [BriefcaseTxns.onModelGeometryChanged]($frontend).\n * @public\n * @extensions\n */\nexport interface ModelIdAndGeometryGuid {\n /** The model's Id. */\n id: Id64String;\n /** A unique identifier for the current state of the model's geometry. If the guid differs between two revisions of the same iModel, it indicates that the geometry differs.\n * This is primarily an implementation detail used to determine whether [Tile]($frontend)s produced for one revision are compatible with another revision.\n */\n guid: GuidString;\n}\n\n/** @internal */\nexport const ipcAppChannels = {\n functions: \"itwinjs-core/ipc-app\",\n appNotify: \"itwinjs-core/ipcApp-notify\",\n txns: \"itwinjs-core/txns\",\n editingScope: \"itwinjs-core/editing-scope\",\n} as const;\n\n/**\n * Interface implemented by the frontend [NotificationHandler]($common) to be notified of events from IpcApp backend.\n * @internal\n */\nexport interface IpcAppNotifications {\n notifyApp: () => void;\n}\n\n/** @internal */\nexport interface NotifyEntitiesChangedMetadata {\n /** Class full name (\"Schema:Class\") */\n name: string;\n /** The indices in [[NotifyEntitiesChangedArgs.meta]] of each of this class's **direct** base classes. */\n bases: number[];\n}\n\n/** Arguments supplied to [[TxnNotifications.notifyElementsChanged]] and [[TxnNotifications.notifyModelsChanged]].\n * @internal\n */\nexport interface NotifyEntitiesChangedArgs extends ChangedEntities {\n /** An array of the same length as [[ChangedEntities.inserted]] (or empty if that array is undefined), containing the index in the [[meta]] array at which the\n * metadata for each entity's class is located.\n */\n insertedMeta: number[];\n /** See insertedMeta. */\n updatedMeta: number[];\n /** See insertedMeta. */\n deletedMeta: number[];\n\n /** Metadata describing each unique class of entity in this set of changes, followed by each unique direct or indirect base class of those classes. */\n meta: NotifyEntitiesChangedMetadata[];\n}\n\n/** Interface implemented by the frontend [NotificationHandler]($common) to be notified of changes to an iModel.\n * @see [TxnManager]($backend) for the source of these events.\n * @see [BriefcaseTxns]($frontend) for the frontend implementation.\n * @internal\n */\nexport interface TxnNotifications {\n notifyElementsChanged: (changes: NotifyEntitiesChangedArgs) => void;\n notifyModelsChanged: (changes: NotifyEntitiesChangedArgs) => void;\n notifyGeometryGuidsChanged: (changes: ModelIdAndGeometryGuid[]) => void;\n notifyCommit: () => void;\n notifyCommitted: (hasPendingTxns: boolean, time: number) => void;\n notifyReplayExternalTxns: () => void;\n notifyReplayedExternalTxns: () => void;\n notifyChangesApplied: () => void;\n notifyBeforeUndoRedo: (isUndo: boolean) => void;\n notifyAfterUndoRedo: (isUndo: boolean) => void;\n notifyPulledChanges: (parentChangeSetId: ChangesetIndexAndId) => void;\n notifyPushedChanges: (parentChangeSetId: ChangesetIndexAndId) => void;\n\n notifyIModelNameChanged: (name: string) => void;\n notifyRootSubjectChanged: (subject: RootSubjectProps) => void;\n notifyProjectExtentsChanged: (extents: Range3dProps) => void;\n notifyGlobalOriginChanged: (origin: XYZProps) => void;\n notifyEcefLocationChanged: (ecef: EcefLocationProps | undefined) => void;\n notifyGeographicCoordinateSystemChanged: (gcs: GeographicCRSProps | undefined) => void;\n}\n\n/**\n * Interface registered by the frontend [NotificationHandler]($common) to be notified of changes to an iModel during an [GraphicalEditingScope]($frontend).\n * @internal\n */\nexport interface EditingScopeNotifications {\n notifyGeometryChanged: (modelProps: ModelGeometryChangesProps[]) => void;\n}\n\n/**\n * The methods that may be invoked via Ipc from the frontend of an IpcApp and are implemented on its backend.\n * @internal\n */\nexport interface IpcAppFunctions {\n /** Send frontend log to backend.\n * @param _level Specify log level.\n * @param _category Specify log category.\n * @param _message Specify log message.\n * @param _metaData metaData if any.\n */\n log: (_timestamp: number, _level: LogLevel, _category: string, _message: string, _metaData?: any) => Promise<void>;\n\n /** see BriefcaseConnection.openFile */\n openBriefcase: (args: OpenBriefcaseProps) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.openStandalone */\n openCheckpoint: (args: OpenCheckpointArgs) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.openStandalone */\n openStandalone: (filePath: string, openMode: OpenMode, opts?: StandaloneOpenOptions) => Promise<IModelConnectionProps>;\n /** see SnapshotConnection.openFile */\n openSnapshot: (filePath: string, opts?: SnapshotOpenOptions) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.close */\n closeIModel: (key: string) => Promise<void>;\n /** see BriefcaseConnection.saveChanges */\n saveChanges: (key: string, description?: string) => Promise<void>;\n /** see BriefcaseTxns.hasPendingTxns */\n hasPendingTxns: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.isUndoPossible */\n isUndoPossible: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.isRedoPossible */\n isRedoPossible: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.getUndoString */\n getUndoString: (key: string) => Promise<string>;\n /** see BriefcaseTxns.getRedoString */\n getRedoString: (key: string) => Promise<string>;\n\n /** see BriefcaseConnection.pullChanges */\n pullChanges: (key: string, toIndex?: ChangesetIndex, options?: PullChangesOptions) => Promise<ChangesetIndexAndId>;\n /** Cancels pull of changes. */\n cancelPullChangesRequest: (key: string) => Promise<void>;\n /** see BriefcaseConnection.pushChanges */\n pushChanges: (key: string, description: string) => Promise<ChangesetIndexAndId>;\n /** Cancels currently pending or active generation of tile content. */\n cancelTileContentRequests: (tokenProps: IModelRpcProps, _contentIds: TileTreeContentIds[]) => Promise<void>;\n\n /** Cancel element graphics requests.\n * @see [[IModelTileRpcInterface.requestElementGraphics]].\n */\n cancelElementGraphicsRequests: (key: string, _requestIds: string[]) => Promise<void>;\n\n toggleGraphicalEditingScope: (key: string, _startSession: boolean) => Promise<boolean>;\n isGraphicalEditingSupported: (key: string) => Promise<boolean>;\n\n reverseTxns: (key: string, numOperations: number) => Promise<IModelStatus>;\n reverseAllTxn: (key: string) => Promise<IModelStatus>;\n reinstateTxn: (key: string) => Promise<IModelStatus>;\n restartTxnSession: (key: string) => Promise<void>;\n\n /** Query the number of concurrent threads supported by the host's IO or CPU thread pool. */\n queryConcurrency: (pool: \"io\" | \"cpu\") => Promise<number>;\n}\n\n"]}
1
+ {"version":3,"file":"IpcAppProps.js","sourceRoot":"","sources":["../../src/IpcAppProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAuBH;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,GAAG,cAAc,CAAC,SAAS,gBAAgB,QAAQ,EAAE,CAAC;AAwBpH,gBAAgB;AAChB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,SAAS,EAAE,sBAAsB;IACjC,SAAS,EAAE,4BAA4B;IACvC,IAAI,EAAE,mBAAmB;IACzB,YAAY,EAAE,4BAA4B;CAClC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module NativeApp\n */\n\nimport { GuidString, Id64String, IModelStatus, LogLevel, OpenMode } from \"@itwin/core-bentley\";\nimport { Range3dProps, XYZProps } from \"@itwin/core-geometry\";\nimport { OpenBriefcaseProps, OpenCheckpointArgs } from \"./BriefcaseTypes\";\nimport { ChangedEntities } from \"./ChangedEntities\";\nimport { ChangesetIndex, ChangesetIndexAndId } from \"./ChangesetProps\";\nimport { GeographicCRSProps } from \"./geometry/CoordinateReferenceSystem\";\nimport { EcefLocationProps, IModelConnectionProps, IModelRpcProps, RootSubjectProps, SnapshotOpenOptions, StandaloneOpenOptions } from \"./IModel\";\nimport { ModelGeometryChangesProps } from \"./ModelGeometryChanges\";\n\n/** Options for pulling changes into iModel.\n * @internal\n */\nexport interface PullChangesOptions {\n /** Enables progress reporting. */\n reportProgress?: boolean;\n /** Interval for reporting progress (in milliseconds). */\n progressInterval?: number;\n /** Enables checks for abort. */\n enableCancellation?: boolean;\n}\n\n/** Get IPC channel name used for reporting progress of pulling changes into iModel.\n * @internal\n */\nexport const getPullChangesIpcChannel = (iModelId: string) => `${ipcAppChannels.functions}/pullChanges/${iModelId}`;\n\n/** Identifies a list of tile content Ids belonging to a single tile tree.\n * @internal\n */\nexport interface TileTreeContentIds {\n treeId: string;\n contentIds: string[];\n}\n\n/** Specifies a [GeometricModel]($backend)'s Id and a Guid identifying the current state of the geometry contained within the model.\n * @see [TxnManager.onModelGeometryChanged]($backend) and [BriefcaseTxns.onModelGeometryChanged]($frontend).\n * @public\n * @extensions\n */\nexport interface ModelIdAndGeometryGuid {\n /** The model's Id. */\n id: Id64String;\n /** A unique identifier for the current state of the model's geometry. If the guid differs between two revisions of the same iModel, it indicates that the geometry differs.\n * This is primarily an implementation detail used to determine whether [Tile]($frontend)s produced for one revision are compatible with another revision.\n */\n guid: GuidString;\n}\n\n/** @internal */\nexport const ipcAppChannels = {\n functions: \"itwinjs-core/ipc-app\",\n appNotify: \"itwinjs-core/ipcApp-notify\",\n txns: \"itwinjs-core/txns\",\n editingScope: \"itwinjs-core/editing-scope\",\n} as const;\n\n/**\n * Interface implemented by the frontend [NotificationHandler]($common) to be notified of events from IpcApp backend.\n * @internal\n */\nexport interface IpcAppNotifications {\n notifyApp: () => void;\n}\n\n/** @internal */\nexport interface NotifyEntitiesChangedMetadata {\n /** Class full name (\"Schema:Class\") */\n name: string;\n /** The indices in [[NotifyEntitiesChangedArgs.meta]] of each of this class's **direct** base classes. */\n bases: number[];\n}\n\n/** Arguments supplied to [[TxnNotifications.notifyElementsChanged]] and [[TxnNotifications.notifyModelsChanged]].\n * @internal\n */\nexport interface NotifyEntitiesChangedArgs extends ChangedEntities {\n /** An array of the same length as [[ChangedEntities.inserted]] (or empty if that array is undefined), containing the index in the [[meta]] array at which the\n * metadata for each entity's class is located.\n */\n insertedMeta: number[];\n /** See insertedMeta. */\n updatedMeta: number[];\n /** See insertedMeta. */\n deletedMeta: number[];\n\n /** Metadata describing each unique class of entity in this set of changes, followed by each unique direct or indirect base class of those classes. */\n meta: NotifyEntitiesChangedMetadata[];\n}\n\n/** Interface implemented by the frontend [NotificationHandler]($common) to be notified of changes to an iModel.\n * @see [TxnManager]($backend) for the source of these events.\n * @see [BriefcaseTxns]($frontend) for the frontend implementation.\n * @internal\n */\nexport interface TxnNotifications {\n notifyElementsChanged: (changes: NotifyEntitiesChangedArgs) => void;\n notifyModelsChanged: (changes: NotifyEntitiesChangedArgs) => void;\n notifyGeometryGuidsChanged: (changes: ModelIdAndGeometryGuid[]) => void;\n notifyCommit: () => void;\n notifyCommitted: (hasPendingTxns: boolean, time: number) => void;\n notifyReplayExternalTxns: () => void;\n notifyReplayedExternalTxns: () => void;\n notifyChangesApplied: () => void;\n notifyBeforeUndoRedo: (isUndo: boolean) => void;\n notifyAfterUndoRedo: (isUndo: boolean) => void;\n notifyPulledChanges: (parentChangeSetId: ChangesetIndexAndId) => void;\n notifyPushedChanges: (parentChangeSetId: ChangesetIndexAndId) => void;\n\n notifyIModelNameChanged: (name: string) => void;\n notifyRootSubjectChanged: (subject: RootSubjectProps) => void;\n notifyProjectExtentsChanged: (extents: Range3dProps) => void;\n notifyGlobalOriginChanged: (origin: XYZProps) => void;\n notifyEcefLocationChanged: (ecef: EcefLocationProps | undefined) => void;\n notifyGeographicCoordinateSystemChanged: (gcs: GeographicCRSProps | undefined) => void;\n}\n\n/**\n * Interface registered by the frontend [NotificationHandler]($common) to be notified of changes to an iModel during an [GraphicalEditingScope]($frontend).\n * @internal\n */\nexport interface EditingScopeNotifications {\n notifyGeometryChanged: (modelProps: ModelGeometryChangesProps[]) => void;\n}\n\n/**\n * The methods that may be invoked via Ipc from the frontend of an IpcApp and are implemented on its backend.\n * @internal\n */\nexport interface IpcAppFunctions {\n /** Send frontend log to backend.\n * @param _level Specify log level.\n * @param _category Specify log category.\n * @param _message Specify log message.\n * @param _metaData metaData if any.\n */\n log: (_timestamp: number, _level: LogLevel, _category: string, _message: string, _metaData?: any) => Promise<void>;\n\n /** see BriefcaseConnection.openFile */\n openBriefcase: (args: OpenBriefcaseProps) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.openStandalone */\n openCheckpoint: (args: OpenCheckpointArgs) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.openStandalone */\n openStandalone: (filePath: string, openMode: OpenMode, opts?: StandaloneOpenOptions) => Promise<IModelConnectionProps>;\n /** see SnapshotConnection.openFile */\n openSnapshot: (filePath: string, opts?: SnapshotOpenOptions) => Promise<IModelConnectionProps>;\n /** see BriefcaseConnection.close */\n closeIModel: (key: string) => Promise<void>;\n /** see BriefcaseConnection.saveChanges */\n saveChanges: (key: string, description?: string) => Promise<void>;\n /** see BriefcaseConnection.abandonChanges */\n abandonChanges: (key: string) => Promise<void>;\n /** see BriefcaseTxns.hasPendingTxns */\n hasPendingTxns: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.isUndoPossible */\n isUndoPossible: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.isRedoPossible */\n isRedoPossible: (key: string) => Promise<boolean>;\n /** see BriefcaseTxns.getUndoString */\n getUndoString: (key: string) => Promise<string>;\n /** see BriefcaseTxns.getRedoString */\n getRedoString: (key: string) => Promise<string>;\n\n /** see BriefcaseConnection.pullChanges */\n pullChanges: (key: string, toIndex?: ChangesetIndex, options?: PullChangesOptions) => Promise<ChangesetIndexAndId>;\n /** Cancels pull of changes. */\n cancelPullChangesRequest: (key: string) => Promise<void>;\n /** see BriefcaseConnection.pushChanges */\n pushChanges: (key: string, description: string) => Promise<ChangesetIndexAndId>;\n /** Cancels currently pending or active generation of tile content. */\n cancelTileContentRequests: (tokenProps: IModelRpcProps, _contentIds: TileTreeContentIds[]) => Promise<void>;\n\n /** Cancel element graphics requests.\n * @see [[IModelTileRpcInterface.requestElementGraphics]].\n */\n cancelElementGraphicsRequests: (key: string, _requestIds: string[]) => Promise<void>;\n\n toggleGraphicalEditingScope: (key: string, _startSession: boolean) => Promise<boolean>;\n isGraphicalEditingSupported: (key: string) => Promise<boolean>;\n\n reverseTxns: (key: string, numOperations: number) => Promise<IModelStatus>;\n reverseAllTxn: (key: string) => Promise<IModelStatus>;\n reinstateTxn: (key: string) => Promise<IModelStatus>;\n restartTxnSession: (key: string) => Promise<void>;\n\n /** Query the number of concurrent threads supported by the host's IO or CPU thread pool. */\n queryConcurrency: (pool: \"io\" | \"cpu\") => Promise<number>;\n}\n\n"]}
@@ -11,6 +11,18 @@ import { DeprecatedBackgroundMapProps } from "./BackgroundMapSettings";
11
11
  export type ImageryMapLayerFormatId = "ArcGIS" | "BingMaps" | "MapboxImagery" | "TileURL" | "WMS" | "WMTS";
12
12
  /** @public */
13
13
  export type SubLayerId = string | number;
14
+ /**
15
+ * Type for map layer provider array property.
16
+ * @beta
17
+ */
18
+ export type MapLayerProviderArrayProperty = number[] | string[] | boolean[];
19
+ /**
20
+ * Type for map layer provider properties.
21
+ * @beta
22
+ */
23
+ export interface MapLayerProviderProperties {
24
+ [key: string]: number | string | boolean | MapLayerProviderArrayProperty;
25
+ }
14
26
  /** JSON representation of the settings associated with a map sublayer included within a [[MapLayerProps]].
15
27
  * A map sub layer represents a set of objects within the layer that can be controlled separately. These
16
28
  * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.
@@ -107,6 +119,10 @@ export interface ImageMapLayerProps extends CommonMapLayerProps {
107
119
  queryParams?: {
108
120
  [key: string]: string;
109
121
  };
122
+ /** Properties specific to the map layer provider.
123
+ * @beta
124
+ */
125
+ properties?: MapLayerProviderProperties;
110
126
  }
111
127
  /** JSON representation of a [[ModelMapLayerSettings]].
112
128
  * @see [[MapImagerySettings]].
@@ -192,6 +208,10 @@ export declare class ImageMapLayerSettings extends MapLayerSettings {
192
208
  unsavedQueryParams?: {
193
209
  [key: string]: string;
194
210
  };
211
+ /** Properties specific to the map layer provider.
212
+ * @beta
213
+ */
214
+ readonly properties?: MapLayerProviderProperties;
195
215
  readonly subLayers: MapSubLayerSettings[];
196
216
  get source(): string;
197
217
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"MapLayerSettings.d.ts","sourceRoot":"","sources":["../../src/MapLayerSettings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MapLayerSettings.d.ts","sourceRoot":"","sources":["../../src/MapLayerSettings.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@
7
7
  */
8
8
  import { assert } from "@itwin/core-bentley";
9
9
  import { BackgroundMapProvider, BackgroundMapType } from "./BackgroundMapProvider";
10
+ ;
10
11
  /** Normalized representation of a [[MapSubLayerProps]] for which values
11
12
  * have been validated and default values have been applied where explicit values not defined.
12
13
  * A map sub layer represents a set of objects within the layer that can be controlled separately. These
@@ -153,6 +154,10 @@ export class ImageMapLayerSettings extends MapLayerSettings {
153
154
  * @beta
154
155
  */
155
156
  unsavedQueryParams;
157
+ /** Properties specific to the map layer provider.
158
+ * @beta
159
+ */
160
+ properties;
156
161
  subLayers;
157
162
  get source() { return this.url; }
158
163
  /** @internal */
@@ -165,6 +170,9 @@ export class ImageMapLayerSettings extends MapLayerSettings {
165
170
  if (props.queryParams) {
166
171
  this.savedQueryParams = { ...props.queryParams };
167
172
  }
173
+ if (props.properties) {
174
+ this.properties = { ...props.properties };
175
+ }
168
176
  this.subLayers = [];
169
177
  if (!props.subLayers)
170
178
  return;
@@ -186,6 +194,9 @@ export class ImageMapLayerSettings extends MapLayerSettings {
186
194
  props.subLayers = this.subLayers.map((x) => x.toJSON());
187
195
  if (this.savedQueryParams)
188
196
  props.queryParams = { ...this.savedQueryParams };
197
+ if (this.properties) {
198
+ props.properties = structuredClone(this.properties);
199
+ }
189
200
  return props;
190
201
  }
191
202
  /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.
@@ -197,7 +208,6 @@ export class ImageMapLayerSettings extends MapLayerSettings {
197
208
  // Clone members not part of MapLayerProps
198
209
  clone.userName = this.userName;
199
210
  clone.password = this.password;
200
- clone.accessKey = this.accessKey;
201
211
  if (this.unsavedQueryParams)
202
212
  clone.unsavedQueryParams = { ...this.unsavedQueryParams };
203
213
  if (this.savedQueryParams)
@@ -217,6 +227,12 @@ export class ImageMapLayerSettings extends MapLayerSettings {
217
227
  else if (this.savedQueryParams) {
218
228
  props.queryParams = { ...this.savedQueryParams };
219
229
  }
230
+ if (changedProps.properties) {
231
+ props.properties = { ...changedProps.properties };
232
+ }
233
+ else if (this.properties) {
234
+ props.properties = { ...this.properties };
235
+ }
220
236
  return props;
221
237
  }
222
238
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"MapLayerSettings.js","sourceRoot":"","sources":["../../src/MapLayerSettings.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAc,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAA8B,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AA2B/G;;;;;;;GAOG;AACH,MAAM,OAAO,mBAAmB;IAC9B,mIAAmI;IACnH,IAAI,CAAS;IAC7B,aAAa;IACG,KAAK,CAAU;IAC/B,gIAAgI;IAChH,OAAO,CAAU;IACjC,oFAAoF;IACpE,EAAE,CAAa;IAC/B,oCAAoC;IACpB,QAAQ,CAAgB;IACxC,uBAAuB;IACP,MAAM,CAAc;IAEpC,YAAY,IAAY,EAAE,KAAc,EAAE,OAAiB,EAAE,EAAe,EAAE,MAAmB,EAAE,QAAuB;QACxH,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC;QAChD,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,mGAAmG;IAC5F,MAAM,CAAC,QAAQ,CAAC,IAAsB;QAC3C,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjJ,CAAC;IAEM,MAAM;QACX,MAAM,KAAK,GAAqB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QAE3E,IAAI,SAAS,KAAK,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,IAAI;YAChD,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QAErB,IAAI,SAAS,KAAK,IAAI,CAAC,KAAK;YAC1B,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAE3B,IAAI,IAAI,CAAC,QAAQ;YACf,KAAK,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEtC,IAAI,SAAS,KAAK,IAAI,CAAC,MAAM;YAC3B,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE7B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uFAAuF;IAChF,KAAK,CAAC,YAAuC;QAClD,IAAI,SAAS,KAAK,YAAY;YAC5B,OAAO,IAAI,CAAC;QAEd,MAAM,KAAK,GAAG;YACZ,IAAI,EAAE,SAAS,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;YACrE,EAAE,EAAE,SAAS,KAAK,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;YAC7D,OAAO,EAAE,SAAS,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO;YACjF,MAAM,EAAE,SAAS,KAAK,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM;YAC7E,QAAQ,EAAE,SAAS,KAAK,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE;YACtG,KAAK,EAAE,SAAS,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK;SAC1E,CAAC;QACF,OAAO,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,gBAAgB;IACT,cAAc,CAAC,KAA0B;QAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC;IACpE,CAAC;IAED,6CAA6C;IAC7C,IAAW,OAAO,KAAc,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAE9D,+DAA+D;IAC/D,IAAW,MAAM,KAAc,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;IAElG,uDAAuD;IACvD,IAAW,cAAc,KAAc,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAE9E,sGAAsG;IACtG,IAAW,QAAQ,KAAa,OAAO,CAAC,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;CACzG;AAoFD;;;;;GAKG;AACH,MAAM,OAAgB,gBAAgB;IACpB,OAAO,CAAU;IAEjB,IAAI,CAAS;IACb,YAAY,CAAS;IACrB,qBAAqB,CAAU;IAK/C,gBAAgB;IAChB,YAAsB,IAAY,EAAE,OAAO,GAAG,IAAI,EAAE,eAAuB,CAAC,EAAE,qBAAqB,GAAG,IAAI;QACxG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;QACnD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED,gEAAgE;IACzD,MAAM,CAAC,QAAQ,CAAC,KAAoB;QACzC,OAAO,SAAS,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrH,CAAC;IAED,gBAAgB;IACN,OAAO;QACf,MAAM,KAAK,GAAwB;YACjC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;QAEF,IAAI,CAAC,KAAK,IAAI,CAAC,YAAY;YACzB,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAEzC,IAAI,IAAI,CAAC,qBAAqB,KAAK,KAAK;YACtC,KAAK,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAE3D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB;IACN,UAAU,CAAC,YAAoC;QACvD,OAAO;YACL,IAAI,EAAE,SAAS,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;YACrE,OAAO,EAAE,SAAS,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO;YACjF,YAAY,EAAE,SAAS,KAAK,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY;YACrG,qBAAqB,EAAE,SAAS,KAAK,YAAY,CAAC,qBAAqB,CAAC,CAAC,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB;SAC1I,CAAC;IACJ,CAAC;IAED,gBAAgB;IACT,cAAc,CAAC,KAAuB;QAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,qBAAqB,KAAK,KAAK,CAAC,qBAAqB,CAAC;IAC9K,CAAC;IAKD,gBAAgB;IACT,oBAAoB,CAAC,IAAY,EAAE,MAAc;QACtD,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC;IACtD,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,OAAO,qBAAsB,SAAQ,gBAAgB;IACzC,QAAQ,CAAS;IACjB,GAAG,CAAS;IACrB,QAAQ,CAAU;IAClB,QAAQ,CAAU;IAClB,SAAS,CAAe;IAE/B;;;MAGE;IACK,gBAAgB,CAA6B;IAEpD;;MAEE;IACK,kBAAkB,CAA6B;IACtC,SAAS,CAAwB;IACjD,IAAoB,MAAM,KAAa,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAEzD,gBAAgB;IAChB,YAAsB,KAAyB;QAC7C,MAAM,qBAAqB,GAAG,KAAK,CAAC,qBAAqB,IAAI,IAAI,CAAC;QAClE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;QAE5E,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,gBAAgB,GAAG,EAAC,GAAG,KAAK,CAAC,WAAW,EAAC,CAAC;QACjD,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,SAAS;YAClB,OAAO;QAET,KAAK,MAAM,aAAa,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC7D,IAAI,QAAQ;gBACV,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAEM,MAAM,CAAU,QAAQ,CAAC,KAAyB;QACvD,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,iEAAiE;IACjD,MAAM;QACpB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAwB,CAAC;QACpD,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACrB,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAE/B,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAC3B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAE1D,IAAI,IAAI,CAAC,gBAAgB;YACvB,KAAK,CAAC,WAAW,GAAG,EAAC,GAAG,IAAI,CAAC,gBAAgB,EAAC,CAAC;QAEjD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,YAAyC;QACpD,MAAM,KAAK,GAAG,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;QAE5E,0CAA0C;QAC1C,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,IAAI,IAAI,CAAC,kBAAkB;YACzB,KAAK,CAAC,kBAAkB,GAAG,EAAC,GAAG,IAAI,CAAC,kBAAkB,EAAC,CAAC;QAC1D,IAAI,IAAI,CAAC,gBAAgB;YACvB,KAAK,CAAC,gBAAgB,GAAG,EAAC,GAAG,IAAI,CAAC,gBAAgB,EAAC,CAAC;QAEtD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB;IACG,UAAU,CAAC,YAAyC;QACrE,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAuB,CAAC;QAEnE,KAAK,CAAC,QAAQ,GAAG,YAAY,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QACxD,KAAK,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QACzC,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QAC3D,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QAC3D,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;YAC7B,KAAK,CAAC,WAAW,GAAG,EAAC,GAAG,YAAY,CAAC,WAAW,EAAC,CAAC;QACpD,CAAC;aAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACjC,KAAK,CAAC,WAAW,GAAG,EAAC,GAAG,IAAI,CAAC,gBAAgB,EAAC,CAAC;QACjD,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB;IACA,cAAc,CAAC,KAAuB;QACpD,IAAI,CAAE,CAAC,KAAK,YAAY,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;YAC5E,OAAO,KAAK,CAAC;QAEf,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YAC7H,OAAO,KAAK,CAAC;QACf,CAAC;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAC5C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACvD,OAAO,KAAK,CAAC;QAEjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iEAAiE;IAC1D,YAAY,CAAC,EAAe;QACjC,OAAO,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9F,CAAC;IAEO,qBAAqB,CAAC,QAA8B;QAC1D,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC/B,OAAO,KAAK,CAAC;QAEf,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM;YACT,OAAO,KAAK,CAAC;QAEf,kGAAkG;QAClG,4HAA4H;QAC5H,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACpF,CAAC;IAED,4FAA4F;IACrF,iBAAiB,CAAC,QAA6B;QACpD,IAAI,CAAC,QAAQ,CAAC,OAAO;YACnB,OAAO,KAAK,CAAC;QAEf,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED,kDAAkD;IAClD,IAAW,qBAAqB;QAC9B,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YAC7B,OAAO,KAAK,CAAC;QAEf,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5G,CAAC;IAED,yCAAyC;IAClC,mBAAmB,CAAC,QAA6B;QACtD,IAAI,CAAC,QAAQ,CAAC,QAAQ;YACpB,OAAO,SAAS,CAAC;QAEnB,MAAM,QAAQ,GAAG,IAAI,KAAK,EAAuB,CAAC;QAClD,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACpC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACzC,IAAI,KAAK,KAAK,SAAS;gBACrB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,gBAAgB;IACN,MAAM,CAAC,WAAW,CAAC,IAAuB;QAClD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,iBAAiB,CAAC,MAAM;gBAC3B,OAAO,gBAAgB,CAAC;YAC1B,QAAQ;YACR,KAAK,iBAAiB,CAAC,MAAM;gBAC3B,OAAO,4BAA4B,CAAC;YACtC,KAAK,iBAAiB,CAAC,MAAM;gBAC3B,OAAO,SAAS,CAAC;QACrB,CAAC;IACH,CAAC;IAEM,cAAc,CAAC,QAAiB,EAAE,QAAiB;QACxD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;KAEC;IACM,kBAAkB;QACvB,IAAI,WAAW,GAA4B,EAAE,CAAC;QAC9C,IAAI,IAAI,CAAC,gBAAgB;YACvB,WAAW,GAAG,EAAC,GAAG,IAAI,CAAC,gBAAgB,EAAC,CAAC;QAE3C,IAAI,IAAI,CAAC,kBAAkB;YACzB,WAAW,GAAG,EAAC,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,kBAAkB,EAAC,CAAC;QAE7D,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,OAAO,qBAAsB,SAAQ,gBAAgB;IACzC,OAAO,CAAa;IACpC,IAAoB,MAAM,KAAa,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAE7D,gBAAgB;IAChB,YAAsB,OAAmB,EAAG,IAAY,EAAE,OAAO,GAAG,IAAI,EACtE,eAAuB,CAAC,EAAE,qBAAqB,GAAG,IAAI;QACtD,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,qBAAqB,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,mGAAmG;IAC5F,MAAM,CAAU,QAAQ,CAAC,IAAwB;QACtD,MAAM,qBAAqB,GAAG,CAAC,IAAI,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;QAC7G,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;IACnG,CAAC;IAED,iEAAiE;IACjD,MAAM;QACpB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAwB,CAAC;QACpD,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,YAAyC;QACpD,OAAO,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,gBAAgB;IACG,UAAU,CAAC,YAAyC;QACrE,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAuB,CAAC;QACnE,KAAK,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB;IACA,cAAc,CAAC,KAAuB;QACpD,IAAI,CAAC,CAAC,KAAK,YAAY,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;YAC3E,OAAO,KAAK,CAAC;QAEf,OAAO,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC;IACxC,CAAC;IAED,0GAA0G;IAC1G,IAAW,qBAAqB;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AASD;;;;;;;GAOG;AACH,MAAM,OAAO,oBAAqB,SAAQ,qBAAqB;IACrD,SAAS,CAAyB;IAE1C,sEAAsE;IACtE,IAAW,QAAQ,KAAwC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAEnF;;;;OAIG;IACI,MAAM,CAAU,QAAQ,CAAC,KAAwB;QACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,CAAC,QAAQ,YAAY,oBAAoB,CAAC,CAAC;QACjD,IAAI,KAAK,CAAC,QAAQ;YAChB,QAAQ,CAAC,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEtE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,qDAAqD;IACrC,MAAM;QACpB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAuB,CAAC;QAClD,IAAI,IAAI,CAAC,QAAQ;YACf,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAE1C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB;IACA,UAAU,CAAC,YAAwC;QACjE,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAsB,CAAC;QAElE,IAAI,YAAY,CAAC,QAAQ;YACvB,KAAK,CAAC,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;aACpC,IAAI,IAAI,CAAC,QAAQ;YACpB,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAE1C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,mCAAmC;IACnB,KAAK,CAAC,YAAwC;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;QACzB,MAAM,KAAK,GAAG,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;QAE3E,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,KAAK,IAAI,CAAC,GAAG;YACvC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QAE9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wDAAwD;IACjD,MAAM,CAAC,YAAY,CAAC,QAA+B,EAAE,OAAwD;QAClH,IAAI,QAAgB,EAAE,GAAW,EAAE,IAAY,CAAC;QAChD,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,cAAc,CAAC;YACpB;gBACE,QAAQ,GAAG,UAAU,CAAC;gBAEtB,IAAI,UAAU,CAAC;gBACf,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACtB,KAAK,iBAAiB,CAAC,MAAM;wBAC3B,UAAU,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR,KAAK,iBAAiB,CAAC,MAAM;wBAC3B,UAAU,GAAG,QAAQ,CAAC;wBACtB,MAAM;oBACR,KAAK,iBAAiB,CAAC,MAAM,CAAC;oBAC9B;wBACE,UAAU,GAAG,kBAAkB,CAAC;wBAChC,MAAM;gBACV,CAAC;gBAED,IAAI,GAAG,cAAc,qBAAqB,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxE,GAAG,GAAG,yDAAyD,UAAU,6CAA6C,CAAC;gBACvH,MAAM;YAER,KAAK,gBAAgB;gBACnB,QAAQ,GAAG,eAAe,CAAC;gBAC3B,IAAI,GAAG,WAAW,qBAAqB,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrE,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACtB,KAAK,iBAAiB,CAAC,MAAM;wBAC3B,GAAG,GAAG,4DAA4D,CAAC;wBACnE,MAAM;oBACR,KAAK,iBAAiB,CAAC,MAAM;wBAC3B,GAAG,GAAG,6DAA6D,CAAC;wBACpE,MAAM;oBACR,KAAK,iBAAiB,CAAC,MAAM;wBAC3B,GAAG,GAAG,sEAAsE,CAAC;wBAC7E,MAAM;gBACV,CAAC;gBAED,MAAM;QACV,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;YAC9B,IAAI;YACJ,QAAQ;YACR,GAAG;YACH,qBAAqB,EAAE,KAAK;YAC5B,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS;YAC5B,YAAY,EAAE,OAAO,EAAE,YAAY;SACpC,CAAC,CAAC;QAEH,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC;QAC/B,MAAM,CAAC,QAAQ,YAAY,oBAAoB,CAAC,CAAC;QAEjD,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC9B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,sBAAsB,CAAC,KAAmC;QACtE,OAAO,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,aAAa;IACN,iBAAiB,CAAC,QAA+B;QACtD,OAAO,oBAAoB,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;IACpH,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module MapLayers\n */\n\nimport { assert, Id64String } from \"@itwin/core-bentley\";\nimport { BackgroundMapProvider, BackgroundMapProviderProps, BackgroundMapType } from \"./BackgroundMapProvider\";\nimport { DeprecatedBackgroundMapProps } from \"./BackgroundMapSettings\";\n\n/** The current set of supported map layer formats.\n * In order to be displayed, a corresponding format must have been registered in the [MapLayerFormatRegistry]($frontend)\n * @public\n */\nexport type ImageryMapLayerFormatId = \"ArcGIS\" | \"BingMaps\" | \"MapboxImagery\" | \"TileURL\" | \"WMS\" | \"WMTS\";\n\n/** @public */\nexport type SubLayerId = string | number;\n\n/** JSON representation of the settings associated with a map sublayer included within a [[MapLayerProps]].\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\n * @see [[MapLayerProps]]\n * @public\n */\nexport interface MapSubLayerProps {\n name: string;\n title?: string;\n visible?: boolean;\n id?: SubLayerId;\n parent?: SubLayerId;\n children?: SubLayerId[];\n}\n\n/** Normalized representation of a [[MapSubLayerProps]] for which values\n * have been validated and default values have been applied where explicit values not defined.\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\n * This class can represent a hierarchy, in this case a sub layer is visible only if all its ancestors are also visible.\n * @see [[MapLayerSettings]]\n * @public\n */\nexport class MapSubLayerSettings {\n /** Typically Name is a single word used for machine-to-machine communication while the Title is for the benefit of humans (WMS) */\n public readonly name: string;\n /** Title. */\n public readonly title?: string;\n /** If true the sub layer is visible. If part of a hierarchy, a sub layer is visible only if its ancestors are also visible. */\n public readonly visible: boolean;\n /** A unique string or number that may be used to identify the sub layer (ArcGIS) */\n public readonly id: SubLayerId;\n /** One or more sublayer children */\n public readonly children?: SubLayerId[];\n /** sublayer parent. */\n public readonly parent?: SubLayerId;\n\n constructor(name: string, title?: string, visible?: boolean, id?: SubLayerId, parent?: SubLayerId, children?: SubLayerId[]) {\n this.name = name;\n this.title = title;\n this.visible = visible !== undefined && visible;\n this.id = (id === undefined) ? this.name : id;\n this.parent = parent;\n this.children = children;\n }\n\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\n public static fromJSON(json: MapSubLayerProps): MapSubLayerSettings {\n return new MapSubLayerSettings(json.name, json.title, json.visible, (json.id === json.name) ? undefined : json.id, json.parent, json.children);\n }\n\n public toJSON(): MapSubLayerProps {\n const props: MapSubLayerProps = { name: this.name, visible: this.visible };\n\n if (undefined !== this.id && this.id !== this.name)\n props.id = this.id;\n\n if (undefined !== this.title)\n props.title = this.title;\n\n if (this.children)\n props.children = [...this.children];\n\n if (undefined !== this.parent)\n props.parent = this.parent;\n\n return props;\n }\n\n /** Creating a copy of this MapSubLayer, optionally modifying some if its properties */\n public clone(changedProps: Partial<MapSubLayerProps>): MapSubLayerSettings {\n if (undefined === changedProps)\n return this;\n\n const props = {\n name: undefined !== changedProps.name ? changedProps.name : this.name,\n id: undefined !== changedProps.id ? changedProps.id : this.id,\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\n parent: undefined !== changedProps.parent ? changedProps.parent : this.parent,\n children: undefined !== changedProps.children ? changedProps.children.slice() : this.children?.slice(),\n title: undefined !== changedProps.title ? changedProps.title : this.title,\n };\n return MapSubLayerSettings.fromJSON(props);\n }\n\n /** @internal */\n public displayMatches(other: MapSubLayerSettings): boolean {\n return this.name === other.name && this.visible === other.visible;\n }\n\n /** return true if this sublayer is named. */\n public get isNamed(): boolean { return this.name.length > 0; }\n\n /** return true if this sublayer is a leaf (has no children) */\n public get isLeaf(): boolean { return this.children === undefined || this.children.length === 0; }\n\n /** return true if this sublayer is an unnamed group */\n public get isUnnamedGroup(): boolean { return !this.isLeaf && !this.isNamed; }\n\n /** return a string representing this sublayer id (converting to string if underlying id is number) */\n public get idString(): string { return (typeof this.id === \"number\") ? this.id.toString(10) : this.id; }\n}\n\n/** JSON representation of properties common to both [[ImageMapLayerProps]] and [[ModelMapLayerProps]].\n * @see [[MapImageryProps]]\n * @public\n */\nexport interface CommonMapLayerProps {\n /** Controls visibility of layer. Defaults to 'true'. */\n visible?: boolean;\n\n /** A user-friendly name for the layer. */\n name: string;\n /** A transparency value from 0.0 (fully opaque) to 1.0 (fully transparent) to apply to map graphics when drawing,\n * or false to indicate the transparency should not be overridden.\n * Default value: 0.\n */\n transparency?: number;\n /** True to indicate background is transparent.\n * Default: true.\n */\n transparentBackground?: boolean;\n}\n\n/** JSON representation of an [[ImageMapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @see [[ImageryMapLayerFormatId]].\n * @public\n */\nexport interface ImageMapLayerProps extends CommonMapLayerProps {\n /** URL */\n url: string;\n /** Identifies the map layers source.*/\n formatId: string;\n /** Source layers. If undefined all layers are displayed. */\n subLayers?: MapSubLayerProps[];\n /** Access Key for the Layer, like a subscription key or access token.\n * ###TODO This does not belong in the props object. It should never be persisted.\n */\n /** @internal */\n accessKey?: MapLayerKey;\n\n /** @internal */\n modelId?: never;\n\n /** List of query parameters that will get appended to the source.\n * @beta\n */\n queryParams?: { [key: string]: string };\n\n}\n\n/** JSON representation of a [[ModelMapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @public\n */\nexport interface ModelMapLayerProps extends CommonMapLayerProps {\n /** The Id of the [GeometricModel]($backend) containing the geometry to be drawn by the layer. */\n modelId: Id64String;\n\n /** @internal */\n url?: never;\n /** @internal */\n formatId?: never;\n /** @internal */\n subLayers?: never;\n /** @internal */\n accessKey?: never;\n}\n\n/** JSON representation of a [[MapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @public\n */\nexport type MapLayerProps = ImageMapLayerProps | ModelMapLayerProps;\n\n/**\n * stores key-value pair to be added to all requests made involving map layer.\n * @public\n */\nexport interface MapLayerKey {\n key: string;\n value: string;\n}\n\n/** Abstract base class for normalized representation of a [[MapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * This class is extended by [[ImageMapLayerSettings]] and [ModelMapLayerSettings]] to create the settings for image and model based layers.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @public\n */\nexport abstract class MapLayerSettings {\n public readonly visible: boolean;\n\n public readonly name: string;\n public readonly transparency: number;\n public readonly transparentBackground: boolean;\n public abstract get allSubLayersInvisible(): boolean;\n public abstract clone(changedProps: Partial<MapLayerProps>): MapLayerSettings;\n public abstract toJSON(): MapLayerProps;\n\n /** @internal */\n protected constructor(name: string, visible = true, transparency: number = 0, transparentBackground = true) {\n this.name = name;\n this.visible = visible;\n this.transparentBackground = transparentBackground;\n this.transparency = transparency;\n }\n\n /** Create a map layer settings from its JSON representation. */\n public static fromJSON(props: MapLayerProps): MapLayerSettings {\n return undefined !== props.modelId ? ModelMapLayerSettings.fromJSON(props) : ImageMapLayerSettings.fromJSON(props);\n }\n\n /** @internal */\n protected _toJSON(): CommonMapLayerProps {\n const props: CommonMapLayerProps = {\n name: this.name,\n visible: this.visible,\n };\n\n if (0 !== this.transparency)\n props.transparency = this.transparency;\n\n if (this.transparentBackground === false)\n props.transparentBackground = this.transparentBackground;\n\n return props;\n }\n\n /** @internal */\n protected cloneProps(changedProps: Partial<MapLayerProps>): CommonMapLayerProps {\n return {\n name: undefined !== changedProps.name ? changedProps.name : this.name,\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\n transparency: undefined !== changedProps.transparency ? changedProps.transparency : this.transparency,\n transparentBackground: undefined !== changedProps.transparentBackground ? changedProps.transparentBackground : this.transparentBackground,\n };\n }\n\n /** @internal */\n public displayMatches(other: MapLayerSettings): boolean {\n return this.name === other.name && this.visible === other.visible && this.transparency === other.transparency && this.transparentBackground === other.transparentBackground;\n }\n\n /** Return a unique string identifying the layers source... The URL for image layer or modelID for model layer */\n public abstract get source(): string;\n\n /** @internal */\n public matchesNameAndSource(name: string, source: string): boolean {\n return this.name === name && this.source === source;\n }\n}\n\n/** Normalized representation of a [[ImageMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * Image map layers are created from servers that produce images that represent map tiles. Map layers map also be represented by models.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @see [[ModelMapLayerSettings]] for model based map layer settings.\n * @public\n */\nexport class ImageMapLayerSettings extends MapLayerSettings {\n public readonly formatId: string;\n public readonly url: string;\n public userName?: string;\n public password?: string;\n public accessKey?: MapLayerKey;\n\n /** List of query parameters to append to the settings URL and persisted as part of the JSON representation.\n * @note Sensitive information like user credentials should be provided in [[unsavedQueryParams]] to ensure it is never persisted.\n * @beta\n */\n public savedQueryParams?: { [key: string]: string };\n\n /** List of query parameters that will get appended to the settings URL that should *not* be be persisted part of the JSON representation.\n * @beta\n */\n public unsavedQueryParams?: { [key: string]: string };\n public readonly subLayers: MapSubLayerSettings[];\n public override get source(): string { return this.url; }\n\n /** @internal */\n protected constructor(props: ImageMapLayerProps) {\n const transparentBackground = props.transparentBackground ?? true;\n super(props.name, props.visible, props.transparency, transparentBackground);\n\n this.formatId = props.formatId;\n this.url = props.url;\n this.accessKey = props.accessKey;\n if (props.queryParams) {\n this.savedQueryParams = {...props.queryParams};\n }\n this.subLayers = [];\n if (!props.subLayers)\n return;\n\n for (const subLayerProps of props.subLayers) {\n const subLayer = MapSubLayerSettings.fromJSON(subLayerProps);\n if (subLayer)\n this.subLayers.push(subLayer);\n }\n }\n\n public static override fromJSON(props: ImageMapLayerProps): ImageMapLayerSettings {\n return new this(props);\n }\n\n /** return JSON representation of this MapLayerSettings object */\n public override toJSON(): ImageMapLayerProps {\n const props = super._toJSON() as ImageMapLayerProps;\n props.url = this.url;\n props.formatId = this.formatId;\n\n if (this.subLayers.length > 0)\n props.subLayers = this.subLayers.map((x) => x.toJSON());\n\n if (this.savedQueryParams)\n props.queryParams = {...this.savedQueryParams};\n\n return props;\n }\n\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\n * @param changedProps JSON representation of the properties to change.\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\n */\n public clone(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerSettings {\n const clone = ImageMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n\n // Clone members not part of MapLayerProps\n clone.userName = this.userName;\n clone.password = this.password;\n clone.accessKey = this.accessKey;\n if (this.unsavedQueryParams)\n clone.unsavedQueryParams = {...this.unsavedQueryParams};\n if (this.savedQueryParams)\n clone.savedQueryParams = {...this.savedQueryParams};\n\n return clone;\n }\n\n /** @internal */\n protected override cloneProps(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerProps {\n const props = super.cloneProps(changedProps) as ImageMapLayerProps;\n\n props.formatId = changedProps.formatId ?? this.formatId;\n props.url = changedProps.url ?? this.url;\n props.accessKey = changedProps.accessKey ?? this.accessKey;\n props.subLayers = changedProps.subLayers ?? this.subLayers;\n if (changedProps.queryParams) {\n props.queryParams = {...changedProps.queryParams};\n } else if (this.savedQueryParams) {\n props.queryParams = {...this.savedQueryParams};\n }\n\n return props;\n }\n\n /** @internal */\n public override displayMatches(other: MapLayerSettings): boolean {\n if (! (other instanceof ImageMapLayerSettings) || !super.displayMatches(other))\n return false;\n\n if (this.userName !== other.userName || this.password !== other.password || this.subLayers.length !== other.subLayers.length) {\n return false;\n }\n\n for (let i = 0; i < this.subLayers.length; i++)\n if (!this.subLayers[i].displayMatches(other.subLayers[i]))\n return false;\n\n return true;\n }\n\n /** Return a sublayer matching id -- or undefined if not found */\n public subLayerById(id?: SubLayerId): MapSubLayerSettings | undefined {\n return id === undefined ? undefined : this.subLayers.find((subLayer) => subLayer.id === id);\n }\n\n private hasInvisibleAncestors(subLayer?: MapSubLayerSettings): boolean {\n if (!subLayer || !subLayer.parent)\n return false;\n\n const parent = this.subLayerById(subLayer.parent);\n if (!parent)\n return false;\n\n // Visibility of named group has no impact on the visibility of children (only unnamed group does)\n // i.e For WMS, its should be possible to request a child layer when its parent is not visible (if the parent is also named)\n return (!parent.visible && !parent.isNamed) || this.hasInvisibleAncestors(parent);\n }\n\n /** Return true if sublayer is visible -- testing ancestors for visibility if they exist. */\n public isSubLayerVisible(subLayer: MapSubLayerSettings): boolean {\n if (!subLayer.visible)\n return false;\n\n return !this.hasInvisibleAncestors(subLayer);\n }\n\n /** Return true if all sublayers are invisible. */\n public get allSubLayersInvisible(): boolean {\n if (this.subLayers.length === 0)\n return false;\n\n return this.subLayers.every((subLayer) => (subLayer.isUnnamedGroup || !this.isSubLayerVisible(subLayer)));\n }\n\n /** Return the children for a sublayer */\n public getSubLayerChildren(subLayer: MapSubLayerSettings): MapSubLayerSettings[] | undefined {\n if (!subLayer.children)\n return undefined;\n\n const children = new Array<MapSubLayerSettings>();\n subLayer.children.forEach((childId) => {\n const child = this.subLayerById(childId);\n if (child !== undefined)\n children.push(child);\n });\n\n return children;\n }\n\n /** @internal */\n protected static mapTypeName(type: BackgroundMapType) { // TBD.. Localization.\n switch (type) {\n case BackgroundMapType.Aerial:\n return \"Aerial Imagery\";\n default:\n case BackgroundMapType.Hybrid:\n return \"Aerial Imagery with labels\";\n case BackgroundMapType.Street:\n return \"Streets\";\n }\n }\n\n public setCredentials(userName?: string, password?: string) {\n this.userName = userName;\n this.password = password;\n }\n\n /** Collect all query parameters\n * @beta\n */\n public collectQueryParams() {\n let queryParams: {[key: string]: string} = {};\n if (this.savedQueryParams)\n queryParams = {...this.savedQueryParams};\n\n if (this.unsavedQueryParams)\n queryParams = {...queryParams, ...this.unsavedQueryParams};\n\n return queryParams;\n }\n}\n\n/** Normalized representation of a [[ModelMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * Model map layers are produced from models, typically from two dimensional geometry that may originate in a GIS system.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @see [[ImageMapLayerSettings]] for image based map layer settings.\n * @public\n */\nexport class ModelMapLayerSettings extends MapLayerSettings {\n public readonly modelId: Id64String;\n public override get source(): string { return this.modelId; }\n\n /** @internal */\n protected constructor(modelId: Id64String, name: string, visible = true,\n transparency: number = 0, transparentBackground = true) {\n super(name, visible, transparency, transparentBackground);\n this.modelId = modelId;\n }\n\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\n public static override fromJSON(json: ModelMapLayerProps): ModelMapLayerSettings {\n const transparentBackground = (json.transparentBackground === undefined) ? true : json.transparentBackground;\n return new this(json.modelId, json.name, json.visible, json.transparency, transparentBackground);\n }\n\n /** return JSON representation of this MapLayerSettings object */\n public override toJSON(): ModelMapLayerProps {\n const props = super._toJSON() as ModelMapLayerProps;\n props.modelId = this.modelId;\n return props;\n }\n\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\n * @param changedProps JSON representation of the properties to change.\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\n */\n public clone(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerSettings {\n return ModelMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n }\n\n /** @internal */\n protected override cloneProps(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerProps {\n const props = super.cloneProps(changedProps) as ModelMapLayerProps;\n props.modelId = changedProps.modelId ?? this.modelId;\n return props;\n }\n\n /** @internal */\n public override displayMatches(other: MapLayerSettings): boolean {\n if (!(other instanceof ModelMapLayerSettings) || !super.displayMatches(other))\n return false;\n\n return this.modelId === other.modelId;\n }\n\n /** Return true if all sublayers are invisible (always false as model layers do not include sublayers). */\n public get allSubLayersInvisible(): boolean {\n return false;\n }\n}\n\n/** JSON representation of a [[BaseMapLayerSettings]].\n * @public\n */\nexport interface BaseMapLayerProps extends ImageMapLayerProps {\n provider?: BackgroundMapProviderProps;\n}\n\n/** A [[ImageMapLayerSettings]] that can serve as the base layer for a [[MapImagerySettings]].\n * The base layer supports all of the same options as any other layer, but also allows for simplified configuration based\n * on a small set of known supported [[BackgroundMapProvider]]s like [Bing Maps](https://www.microsoft.com/en-us/maps).\n * If the base layer was configured from such a provider, that information will be preserved and can be queried; this allows\n * the imagery provider and/or type to be easily modified.\n * @see [[MapImagerySettings.backgroundBase]].\n * @public\n */\nexport class BaseMapLayerSettings extends ImageMapLayerSettings {\n private _provider?: BackgroundMapProvider;\n\n /** The provider from which this base layer was configured, if any. */\n public get provider(): BackgroundMapProvider | undefined { return this._provider; }\n\n /** Create a base layer from its JSON representation.\n * TODO: This, MapLayerSettings.fromJSON, and MapSubLayerSettings.fromJSON should never return undefined.\n * That means they should not accept undefined for props and should define props such that it fully describes the\n * layer - e.g., url and name must be defined.\n */\n public static override fromJSON(props: BaseMapLayerProps): BaseMapLayerSettings {\n const settings = super.fromJSON(props);\n assert(settings instanceof BaseMapLayerSettings);\n if (props.provider)\n settings._provider = BackgroundMapProvider.fromJSON(props.provider);\n\n return settings;\n }\n\n /** Convert this layer to its JSON representation. */\n public override toJSON(): BaseMapLayerProps {\n const props = super.toJSON() as BaseMapLayerProps;\n if (this.provider)\n props.provider = this.provider.toJSON();\n\n return props;\n }\n\n /** @internal */\n public override cloneProps(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerProps {\n const props = super.cloneProps(changedProps) as BaseMapLayerProps;\n\n if (changedProps.provider)\n props.provider = changedProps.provider;\n else if (this.provider)\n props.provider = this.provider.toJSON();\n\n return props;\n }\n\n /** Create a copy of this layer. */\n public override clone(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerSettings {\n const prevUrl = this.url;\n const clone = BaseMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n\n if (this.provider && prevUrl !== this.url)\n clone._provider = undefined;\n\n return clone;\n }\n\n /** Create a base layer from a BackgroundMapProvider. */\n public static fromProvider(provider: BackgroundMapProvider, options?: { invisible?: boolean, transparency?: number }): BaseMapLayerSettings {\n let formatId: string, url: string, name: string;\n switch (provider.name) {\n case \"BingProvider\":\n default:\n formatId = \"BingMaps\";\n\n let imagerySet;\n switch (provider.type) {\n case BackgroundMapType.Street:\n imagerySet = \"Road\";\n break;\n case BackgroundMapType.Aerial:\n imagerySet = \"Aerial\";\n break;\n case BackgroundMapType.Hybrid:\n default:\n imagerySet = \"AerialWithLabels\";\n break;\n }\n\n name = `Bing Maps: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\n url = `https://dev.virtualearth.net/REST/v1/Imagery/Metadata/${imagerySet}?o=json&incl=ImageryProviders&key={bingKey}`;\n break;\n\n case \"MapBoxProvider\":\n formatId = \"MapboxImagery\";\n name = `MapBox: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\n switch (provider.type) {\n case BackgroundMapType.Street:\n url = \"https://api.mapbox.com/styles/v1/mapbox/streets-v11/tiles/\";\n break;\n case BackgroundMapType.Aerial:\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-v9/tiles/\";\n break;\n case BackgroundMapType.Hybrid:\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-streets-v11/tiles/\";\n break;\n }\n\n break;\n }\n\n const settings = super.fromJSON({\n name,\n formatId,\n url,\n transparentBackground: false,\n visible: !options?.invisible,\n transparency: options?.transparency,\n });\n\n assert(undefined !== settings);\n assert(settings instanceof BaseMapLayerSettings);\n\n settings._provider = provider;\n return settings;\n }\n\n /** @internal */\n public static fromBackgroundMapProps(props: DeprecatedBackgroundMapProps): BaseMapLayerSettings {\n return this.fromProvider(BackgroundMapProvider.fromBackgroundMapProps(props));\n }\n\n /** @alpha */\n public cloneWithProvider(provider: BackgroundMapProvider): BaseMapLayerSettings {\n return BaseMapLayerSettings.fromProvider(provider, { invisible: !this.visible, transparency: this.transparency });\n }\n}\n"]}
1
+ {"version":3,"file":"MapLayerSettings.js","sourceRoot":"","sources":["../../src/MapLayerSettings.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module MapLayers\n */\n\nimport { assert, Id64String } from \"@itwin/core-bentley\";\nimport { BackgroundMapProvider, BackgroundMapProviderProps, BackgroundMapType } from \"./BackgroundMapProvider\";\nimport { DeprecatedBackgroundMapProps } from \"./BackgroundMapSettings\";\n\n/** The current set of supported map layer formats.\n * In order to be displayed, a corresponding format must have been registered in the [MapLayerFormatRegistry]($frontend)\n * @public\n */\nexport type ImageryMapLayerFormatId = \"ArcGIS\" | \"BingMaps\" | \"MapboxImagery\" | \"TileURL\" | \"WMS\" | \"WMTS\";\n\n/** @public */\nexport type SubLayerId = string | number;\n\n/**\n * Type for map layer provider array property.\n * @beta\n */\nexport type MapLayerProviderArrayProperty = number[] | string[] | boolean[];\n\n/**\n * Type for map layer provider properties.\n * @beta\n */\nexport interface MapLayerProviderProperties { [key: string]: number | string | boolean | MapLayerProviderArrayProperty };\n\n/** JSON representation of the settings associated with a map sublayer included within a [[MapLayerProps]].\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\n * @see [[MapLayerProps]]\n * @public\n */\nexport interface MapSubLayerProps {\n name: string;\n title?: string;\n visible?: boolean;\n id?: SubLayerId;\n parent?: SubLayerId;\n children?: SubLayerId[];\n}\n\n/** Normalized representation of a [[MapSubLayerProps]] for which values\n * have been validated and default values have been applied where explicit values not defined.\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\n * This class can represent a hierarchy, in this case a sub layer is visible only if all its ancestors are also visible.\n * @see [[MapLayerSettings]]\n * @public\n */\nexport class MapSubLayerSettings {\n /** Typically Name is a single word used for machine-to-machine communication while the Title is for the benefit of humans (WMS) */\n public readonly name: string;\n /** Title. */\n public readonly title?: string;\n /** If true the sub layer is visible. If part of a hierarchy, a sub layer is visible only if its ancestors are also visible. */\n public readonly visible: boolean;\n /** A unique string or number that may be used to identify the sub layer (ArcGIS) */\n public readonly id: SubLayerId;\n /** One or more sublayer children */\n public readonly children?: SubLayerId[];\n /** sublayer parent. */\n public readonly parent?: SubLayerId;\n\n constructor(name: string, title?: string, visible?: boolean, id?: SubLayerId, parent?: SubLayerId, children?: SubLayerId[]) {\n this.name = name;\n this.title = title;\n this.visible = visible !== undefined && visible;\n this.id = (id === undefined) ? this.name : id;\n this.parent = parent;\n this.children = children;\n }\n\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\n public static fromJSON(json: MapSubLayerProps): MapSubLayerSettings {\n return new MapSubLayerSettings(json.name, json.title, json.visible, (json.id === json.name) ? undefined : json.id, json.parent, json.children);\n }\n\n public toJSON(): MapSubLayerProps {\n const props: MapSubLayerProps = { name: this.name, visible: this.visible };\n\n if (undefined !== this.id && this.id !== this.name)\n props.id = this.id;\n\n if (undefined !== this.title)\n props.title = this.title;\n\n if (this.children)\n props.children = [...this.children];\n\n if (undefined !== this.parent)\n props.parent = this.parent;\n\n return props;\n }\n\n /** Creating a copy of this MapSubLayer, optionally modifying some if its properties */\n public clone(changedProps: Partial<MapSubLayerProps>): MapSubLayerSettings {\n if (undefined === changedProps)\n return this;\n\n const props = {\n name: undefined !== changedProps.name ? changedProps.name : this.name,\n id: undefined !== changedProps.id ? changedProps.id : this.id,\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\n parent: undefined !== changedProps.parent ? changedProps.parent : this.parent,\n children: undefined !== changedProps.children ? changedProps.children.slice() : this.children?.slice(),\n title: undefined !== changedProps.title ? changedProps.title : this.title,\n };\n return MapSubLayerSettings.fromJSON(props);\n }\n\n /** @internal */\n public displayMatches(other: MapSubLayerSettings): boolean {\n return this.name === other.name && this.visible === other.visible;\n }\n\n /** return true if this sublayer is named. */\n public get isNamed(): boolean { return this.name.length > 0; }\n\n /** return true if this sublayer is a leaf (has no children) */\n public get isLeaf(): boolean { return this.children === undefined || this.children.length === 0; }\n\n /** return true if this sublayer is an unnamed group */\n public get isUnnamedGroup(): boolean { return !this.isLeaf && !this.isNamed; }\n\n /** return a string representing this sublayer id (converting to string if underlying id is number) */\n public get idString(): string { return (typeof this.id === \"number\") ? this.id.toString(10) : this.id; }\n}\n\n/** JSON representation of properties common to both [[ImageMapLayerProps]] and [[ModelMapLayerProps]].\n * @see [[MapImageryProps]]\n * @public\n */\nexport interface CommonMapLayerProps {\n /** Controls visibility of layer. Defaults to 'true'. */\n visible?: boolean;\n\n /** A user-friendly name for the layer. */\n name: string;\n\n /** A transparency value from 0.0 (fully opaque) to 1.0 (fully transparent) to apply to map graphics when drawing,\n * or false to indicate the transparency should not be overridden.\n * Default value: 0.\n */\n\n transparency?: number;\n /** True to indicate background is transparent.\n * Default: true.\n */\n transparentBackground?: boolean;\n}\n\n/** JSON representation of an [[ImageMapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @see [[ImageryMapLayerFormatId]].\n * @public\n */\nexport interface ImageMapLayerProps extends CommonMapLayerProps {\n /** URL */\n url: string;\n /** Identifies the map layers source.*/\n formatId: string;\n /** Source layers. If undefined all layers are displayed. */\n subLayers?: MapSubLayerProps[];\n /** Access Key for the Layer, like a subscription key or access token.\n * ###TODO This does not belong in the props object. It should never be persisted.\n */\n /** @internal */\n accessKey?: MapLayerKey;\n\n /** @internal */\n modelId?: never;\n\n /** List of query parameters that will get appended to the source.\n * @beta\n */\n queryParams?: { [key: string]: string };\n\n /** Properties specific to the map layer provider.\n * @beta\n */\n properties?: MapLayerProviderProperties;\n\n}\n\n/** JSON representation of a [[ModelMapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @public\n */\nexport interface ModelMapLayerProps extends CommonMapLayerProps {\n /** The Id of the [GeometricModel]($backend) containing the geometry to be drawn by the layer. */\n modelId: Id64String;\n\n /** @internal */\n url?: never;\n /** @internal */\n formatId?: never;\n /** @internal */\n subLayers?: never;\n /** @internal */\n accessKey?: never;\n}\n\n/** JSON representation of a [[MapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @public\n */\nexport type MapLayerProps = ImageMapLayerProps | ModelMapLayerProps;\n\n/**\n * stores key-value pair to be added to all requests made involving map layer.\n * @public\n */\nexport interface MapLayerKey {\n key: string;\n value: string;\n}\n\n/** Abstract base class for normalized representation of a [[MapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * This class is extended by [[ImageMapLayerSettings]] and [ModelMapLayerSettings]] to create the settings for image and model based layers.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @public\n */\nexport abstract class MapLayerSettings {\n public readonly visible: boolean;\n\n public readonly name: string;\n public readonly transparency: number;\n public readonly transparentBackground: boolean;\n public abstract get allSubLayersInvisible(): boolean;\n public abstract clone(changedProps: Partial<MapLayerProps>): MapLayerSettings;\n public abstract toJSON(): MapLayerProps;\n\n /** @internal */\n protected constructor(name: string, visible = true, transparency: number = 0, transparentBackground = true) {\n this.name = name;\n this.visible = visible;\n this.transparentBackground = transparentBackground;\n this.transparency = transparency;\n }\n\n /** Create a map layer settings from its JSON representation. */\n public static fromJSON(props: MapLayerProps): MapLayerSettings {\n return undefined !== props.modelId ? ModelMapLayerSettings.fromJSON(props) : ImageMapLayerSettings.fromJSON(props);\n }\n\n /** @internal */\n protected _toJSON(): CommonMapLayerProps {\n const props: CommonMapLayerProps = {\n name: this.name,\n visible: this.visible,\n };\n\n if (0 !== this.transparency)\n props.transparency = this.transparency;\n\n if (this.transparentBackground === false)\n props.transparentBackground = this.transparentBackground;\n\n return props;\n }\n\n /** @internal */\n protected cloneProps(changedProps: Partial<MapLayerProps>): CommonMapLayerProps {\n return {\n name: undefined !== changedProps.name ? changedProps.name : this.name,\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\n transparency: undefined !== changedProps.transparency ? changedProps.transparency : this.transparency,\n transparentBackground: undefined !== changedProps.transparentBackground ? changedProps.transparentBackground : this.transparentBackground,\n };\n }\n\n /** @internal */\n public displayMatches(other: MapLayerSettings): boolean {\n return this.name === other.name && this.visible === other.visible && this.transparency === other.transparency && this.transparentBackground === other.transparentBackground;\n }\n\n /** Return a unique string identifying the layers source... The URL for image layer or modelID for model layer */\n public abstract get source(): string;\n\n /** @internal */\n public matchesNameAndSource(name: string, source: string): boolean {\n return this.name === name && this.source === source;\n }\n}\n\n/** Normalized representation of a [[ImageMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * Image map layers are created from servers that produce images that represent map tiles. Map layers map also be represented by models.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @see [[ModelMapLayerSettings]] for model based map layer settings.\n * @public\n */\nexport class ImageMapLayerSettings extends MapLayerSettings {\n public readonly formatId: string;\n public readonly url: string;\n public userName?: string;\n public password?: string;\n public accessKey?: MapLayerKey;\n\n /** List of query parameters to append to the settings URL and persisted as part of the JSON representation.\n * @note Sensitive information like user credentials should be provided in [[unsavedQueryParams]] to ensure it is never persisted.\n * @beta\n */\n public savedQueryParams?: { [key: string]: string };\n\n /** List of query parameters that will get appended to the settings URL that should *not* be be persisted part of the JSON representation.\n * @beta\n */\n public unsavedQueryParams?: { [key: string]: string };\n\n /** Properties specific to the map layer provider.\n * @beta\n */\n public readonly properties?: MapLayerProviderProperties;\n\n public readonly subLayers: MapSubLayerSettings[];\n public override get source(): string { return this.url; }\n\n /** @internal */\n protected constructor(props: ImageMapLayerProps) {\n const transparentBackground = props.transparentBackground ?? true;\n super(props.name, props.visible, props.transparency, transparentBackground);\n\n this.formatId = props.formatId;\n this.url = props.url;\n this.accessKey = props.accessKey;\n if (props.queryParams) {\n this.savedQueryParams = {...props.queryParams};\n }\n\n if (props.properties) {\n this.properties = {...props.properties}\n }\n\n this.subLayers = [];\n if (!props.subLayers)\n return;\n\n for (const subLayerProps of props.subLayers) {\n const subLayer = MapSubLayerSettings.fromJSON(subLayerProps);\n if (subLayer)\n this.subLayers.push(subLayer);\n }\n }\n\n public static override fromJSON(props: ImageMapLayerProps): ImageMapLayerSettings {\n return new this(props);\n }\n\n /** return JSON representation of this MapLayerSettings object */\n public override toJSON(): ImageMapLayerProps {\n const props = super._toJSON() as ImageMapLayerProps;\n props.url = this.url;\n props.formatId = this.formatId;\n\n if (this.subLayers.length > 0)\n props.subLayers = this.subLayers.map((x) => x.toJSON());\n\n if (this.savedQueryParams)\n props.queryParams = {...this.savedQueryParams};\n\n if (this.properties) {\n props.properties = structuredClone(this.properties);\n }\n\n return props;\n }\n\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\n * @param changedProps JSON representation of the properties to change.\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\n */\n public clone(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerSettings {\n const clone = ImageMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n\n // Clone members not part of MapLayerProps\n clone.userName = this.userName;\n clone.password = this.password;\n if (this.unsavedQueryParams)\n clone.unsavedQueryParams = {...this.unsavedQueryParams};\n if (this.savedQueryParams)\n clone.savedQueryParams = {...this.savedQueryParams};\n\n return clone;\n }\n\n /** @internal */\n protected override cloneProps(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerProps {\n const props = super.cloneProps(changedProps) as ImageMapLayerProps;\n\n props.formatId = changedProps.formatId ?? this.formatId;\n props.url = changedProps.url ?? this.url;\n props.accessKey = changedProps.accessKey ?? this.accessKey;\n props.subLayers = changedProps.subLayers ?? this.subLayers;\n if (changedProps.queryParams) {\n props.queryParams = {...changedProps.queryParams};\n } else if (this.savedQueryParams) {\n props.queryParams = {...this.savedQueryParams};\n }\n\n if (changedProps.properties) {\n props.properties = {...changedProps.properties}\n } else if (this.properties) {\n props.properties = {...this.properties}\n }\n return props;\n }\n\n /** @internal */\n public override displayMatches(other: MapLayerSettings): boolean {\n if (! (other instanceof ImageMapLayerSettings) || !super.displayMatches(other))\n return false;\n\n if (this.userName !== other.userName || this.password !== other.password || this.subLayers.length !== other.subLayers.length) {\n return false;\n }\n\n for (let i = 0; i < this.subLayers.length; i++)\n if (!this.subLayers[i].displayMatches(other.subLayers[i]))\n return false;\n\n return true;\n }\n\n /** Return a sublayer matching id -- or undefined if not found */\n public subLayerById(id?: SubLayerId): MapSubLayerSettings | undefined {\n return id === undefined ? undefined : this.subLayers.find((subLayer) => subLayer.id === id);\n }\n\n private hasInvisibleAncestors(subLayer?: MapSubLayerSettings): boolean {\n if (!subLayer || !subLayer.parent)\n return false;\n\n const parent = this.subLayerById(subLayer.parent);\n if (!parent)\n return false;\n\n // Visibility of named group has no impact on the visibility of children (only unnamed group does)\n // i.e For WMS, its should be possible to request a child layer when its parent is not visible (if the parent is also named)\n return (!parent.visible && !parent.isNamed) || this.hasInvisibleAncestors(parent);\n }\n\n /** Return true if sublayer is visible -- testing ancestors for visibility if they exist. */\n public isSubLayerVisible(subLayer: MapSubLayerSettings): boolean {\n if (!subLayer.visible)\n return false;\n\n return !this.hasInvisibleAncestors(subLayer);\n }\n\n /** Return true if all sublayers are invisible. */\n public get allSubLayersInvisible(): boolean {\n if (this.subLayers.length === 0)\n return false;\n\n return this.subLayers.every((subLayer) => (subLayer.isUnnamedGroup || !this.isSubLayerVisible(subLayer)));\n }\n\n /** Return the children for a sublayer */\n public getSubLayerChildren(subLayer: MapSubLayerSettings): MapSubLayerSettings[] | undefined {\n if (!subLayer.children)\n return undefined;\n\n const children = new Array<MapSubLayerSettings>();\n subLayer.children.forEach((childId) => {\n const child = this.subLayerById(childId);\n if (child !== undefined)\n children.push(child);\n });\n\n return children;\n }\n\n /** @internal */\n protected static mapTypeName(type: BackgroundMapType) { // TBD.. Localization.\n switch (type) {\n case BackgroundMapType.Aerial:\n return \"Aerial Imagery\";\n default:\n case BackgroundMapType.Hybrid:\n return \"Aerial Imagery with labels\";\n case BackgroundMapType.Street:\n return \"Streets\";\n }\n }\n\n public setCredentials(userName?: string, password?: string) {\n this.userName = userName;\n this.password = password;\n }\n\n /** Collect all query parameters\n * @beta\n */\n public collectQueryParams() {\n let queryParams: {[key: string]: string} = {};\n if (this.savedQueryParams)\n queryParams = {...this.savedQueryParams};\n\n if (this.unsavedQueryParams)\n queryParams = {...queryParams, ...this.unsavedQueryParams};\n\n return queryParams;\n }\n}\n\n/** Normalized representation of a [[ModelMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * Model map layers are produced from models, typically from two dimensional geometry that may originate in a GIS system.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @see [[ImageMapLayerSettings]] for image based map layer settings.\n * @public\n */\nexport class ModelMapLayerSettings extends MapLayerSettings {\n public readonly modelId: Id64String;\n public override get source(): string { return this.modelId; }\n\n /** @internal */\n protected constructor(modelId: Id64String, name: string, visible = true,\n transparency: number = 0, transparentBackground = true) {\n super(name, visible, transparency, transparentBackground);\n this.modelId = modelId;\n }\n\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\n public static override fromJSON(json: ModelMapLayerProps): ModelMapLayerSettings {\n const transparentBackground = (json.transparentBackground === undefined) ? true : json.transparentBackground;\n return new this(json.modelId, json.name, json.visible, json.transparency, transparentBackground);\n }\n\n /** return JSON representation of this MapLayerSettings object */\n public override toJSON(): ModelMapLayerProps {\n const props = super._toJSON() as ModelMapLayerProps;\n props.modelId = this.modelId;\n return props;\n }\n\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\n * @param changedProps JSON representation of the properties to change.\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\n */\n public clone(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerSettings {\n return ModelMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n }\n\n /** @internal */\n protected override cloneProps(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerProps {\n const props = super.cloneProps(changedProps) as ModelMapLayerProps;\n props.modelId = changedProps.modelId ?? this.modelId;\n return props;\n }\n\n /** @internal */\n public override displayMatches(other: MapLayerSettings): boolean {\n if (!(other instanceof ModelMapLayerSettings) || !super.displayMatches(other))\n return false;\n\n return this.modelId === other.modelId;\n }\n\n /** Return true if all sublayers are invisible (always false as model layers do not include sublayers). */\n public get allSubLayersInvisible(): boolean {\n return false;\n }\n}\n\n/** JSON representation of a [[BaseMapLayerSettings]].\n * @public\n */\nexport interface BaseMapLayerProps extends ImageMapLayerProps {\n provider?: BackgroundMapProviderProps;\n}\n\n/** A [[ImageMapLayerSettings]] that can serve as the base layer for a [[MapImagerySettings]].\n * The base layer supports all of the same options as any other layer, but also allows for simplified configuration based\n * on a small set of known supported [[BackgroundMapProvider]]s like [Bing Maps](https://www.microsoft.com/en-us/maps).\n * If the base layer was configured from such a provider, that information will be preserved and can be queried; this allows\n * the imagery provider and/or type to be easily modified.\n * @see [[MapImagerySettings.backgroundBase]].\n * @public\n */\nexport class BaseMapLayerSettings extends ImageMapLayerSettings {\n private _provider?: BackgroundMapProvider;\n\n /** The provider from which this base layer was configured, if any. */\n public get provider(): BackgroundMapProvider | undefined { return this._provider; }\n\n /** Create a base layer from its JSON representation.\n * TODO: This, MapLayerSettings.fromJSON, and MapSubLayerSettings.fromJSON should never return undefined.\n * That means they should not accept undefined for props and should define props such that it fully describes the\n * layer - e.g., url and name must be defined.\n */\n public static override fromJSON(props: BaseMapLayerProps): BaseMapLayerSettings {\n const settings = super.fromJSON(props);\n assert(settings instanceof BaseMapLayerSettings);\n if (props.provider)\n settings._provider = BackgroundMapProvider.fromJSON(props.provider);\n\n return settings;\n }\n\n /** Convert this layer to its JSON representation. */\n public override toJSON(): BaseMapLayerProps {\n const props = super.toJSON() as BaseMapLayerProps;\n if (this.provider)\n props.provider = this.provider.toJSON();\n\n return props;\n }\n\n /** @internal */\n public override cloneProps(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerProps {\n const props = super.cloneProps(changedProps) as BaseMapLayerProps;\n\n if (changedProps.provider)\n props.provider = changedProps.provider;\n else if (this.provider)\n props.provider = this.provider.toJSON();\n\n return props;\n }\n\n /** Create a copy of this layer. */\n public override clone(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerSettings {\n const prevUrl = this.url;\n const clone = BaseMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n\n if (this.provider && prevUrl !== this.url)\n clone._provider = undefined;\n\n return clone;\n }\n\n /** Create a base layer from a BackgroundMapProvider. */\n public static fromProvider(provider: BackgroundMapProvider, options?: { invisible?: boolean, transparency?: number }): BaseMapLayerSettings {\n let formatId: string, url: string, name: string;\n switch (provider.name) {\n case \"BingProvider\":\n default:\n formatId = \"BingMaps\";\n\n let imagerySet;\n switch (provider.type) {\n case BackgroundMapType.Street:\n imagerySet = \"Road\";\n break;\n case BackgroundMapType.Aerial:\n imagerySet = \"Aerial\";\n break;\n case BackgroundMapType.Hybrid:\n default:\n imagerySet = \"AerialWithLabels\";\n break;\n }\n\n name = `Bing Maps: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\n url = `https://dev.virtualearth.net/REST/v1/Imagery/Metadata/${imagerySet}?o=json&incl=ImageryProviders&key={bingKey}`;\n break;\n\n case \"MapBoxProvider\":\n formatId = \"MapboxImagery\";\n name = `MapBox: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\n switch (provider.type) {\n case BackgroundMapType.Street:\n url = \"https://api.mapbox.com/styles/v1/mapbox/streets-v11/tiles/\";\n break;\n case BackgroundMapType.Aerial:\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-v9/tiles/\";\n break;\n case BackgroundMapType.Hybrid:\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-streets-v11/tiles/\";\n break;\n }\n\n break;\n }\n\n const settings = super.fromJSON({\n name,\n formatId,\n url,\n transparentBackground: false,\n visible: !options?.invisible,\n transparency: options?.transparency,\n });\n\n assert(undefined !== settings);\n assert(settings instanceof BaseMapLayerSettings);\n\n settings._provider = provider;\n return settings;\n }\n\n /** @internal */\n public static fromBackgroundMapProps(props: DeprecatedBackgroundMapProps): BaseMapLayerSettings {\n return this.fromProvider(BackgroundMapProvider.fromBackgroundMapProps(props));\n }\n\n /** @alpha */\n public cloneWithProvider(provider: BackgroundMapProvider): BaseMapLayerSettings {\n return BaseMapLayerSettings.fromProvider(provider, { invisible: !this.visible, transparency: this.transparency });\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@itwin/core-common",
3
- "version": "5.0.0-dev.67",
3
+ "version": "5.0.0-dev.69",
4
4
  "description": "iTwin.js components common to frontend and backend",
5
5
  "main": "lib/cjs/core-common.js",
6
6
  "module": "lib/esm/core-common.js",
@@ -27,8 +27,8 @@
27
27
  "js-base64": "^3.6.1"
28
28
  },
29
29
  "peerDependencies": {
30
- "@itwin/core-bentley": "5.0.0-dev.67",
31
- "@itwin/core-geometry": "5.0.0-dev.67"
30
+ "@itwin/core-bentley": "5.0.0-dev.69",
31
+ "@itwin/core-geometry": "5.0.0-dev.69"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@itwin/eslint-plugin": "5.0.0-dev.1",
@@ -36,15 +36,15 @@
36
36
  "@types/chai": "4.3.1",
37
37
  "@types/flatbuffers": "~1.10.0",
38
38
  "@types/node": "~20.17.0",
39
- "@vitest/coverage-v8": "^3.0.5",
39
+ "@vitest/coverage-v8": "^3.0.6",
40
40
  "eslint": "^9.13.0",
41
41
  "nyc": "^15.1.0",
42
42
  "rimraf": "^3.0.2",
43
43
  "typescript": "~5.6.2",
44
- "vitest": "^3.0.5",
45
- "@itwin/build-tools": "5.0.0-dev.67",
46
- "@itwin/core-bentley": "5.0.0-dev.67",
47
- "@itwin/core-geometry": "5.0.0-dev.67"
44
+ "vitest": "^3.0.6",
45
+ "@itwin/build-tools": "5.0.0-dev.69",
46
+ "@itwin/core-bentley": "5.0.0-dev.69",
47
+ "@itwin/core-geometry": "5.0.0-dev.69"
48
48
  },
49
49
  "nyc": {
50
50
  "extends": "./node_modules/@itwin/build-tools/.nycrc",