@arcgis/map-components 5.1.0-next.109 → 5.1.0-next.111

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.
Files changed (126) hide show
  1. package/dist/cdn/2SFQKFYO.js +2 -0
  2. package/dist/cdn/{X3YFIQGW.js → 3J457ML6.js} +1 -1
  3. package/dist/cdn/4SNOTPCF.js +2 -0
  4. package/dist/cdn/6QQ4WA4M.js +2 -0
  5. package/dist/cdn/{R4VSDUYE.js → KYVT2WTY.js} +1 -1
  6. package/dist/cdn/PFVM4TPN.js +2 -0
  7. package/dist/cdn/TBKV4QZ6.js +2 -0
  8. package/dist/cdn/TFFF4SV3.js +2 -0
  9. package/dist/cdn/YUQI6BEG.js +2 -0
  10. package/dist/cdn/assets/print/t9n/messages.ar.json +1 -1
  11. package/dist/cdn/assets/print/t9n/messages.bg.json +1 -1
  12. package/dist/cdn/assets/print/t9n/messages.bs.json +1 -1
  13. package/dist/cdn/assets/print/t9n/messages.ca.json +1 -1
  14. package/dist/cdn/assets/print/t9n/messages.cs.json +1 -1
  15. package/dist/cdn/assets/print/t9n/messages.da.json +1 -1
  16. package/dist/cdn/assets/print/t9n/messages.de.json +1 -1
  17. package/dist/cdn/assets/print/t9n/messages.el.json +1 -1
  18. package/dist/cdn/assets/print/t9n/messages.en.json +1 -1
  19. package/dist/cdn/assets/print/t9n/messages.es.json +1 -1
  20. package/dist/cdn/assets/print/t9n/messages.et.json +1 -1
  21. package/dist/cdn/assets/print/t9n/messages.fi.json +1 -1
  22. package/dist/cdn/assets/print/t9n/messages.fr.json +1 -1
  23. package/dist/cdn/assets/print/t9n/messages.he.json +1 -1
  24. package/dist/cdn/assets/print/t9n/messages.hr.json +1 -1
  25. package/dist/cdn/assets/print/t9n/messages.hu.json +1 -1
  26. package/dist/cdn/assets/print/t9n/messages.id.json +1 -1
  27. package/dist/cdn/assets/print/t9n/messages.it.json +1 -1
  28. package/dist/cdn/assets/print/t9n/messages.ja.json +1 -1
  29. package/dist/cdn/assets/print/t9n/messages.ko.json +1 -1
  30. package/dist/cdn/assets/print/t9n/messages.lt.json +1 -1
  31. package/dist/cdn/assets/print/t9n/messages.lv.json +1 -1
  32. package/dist/cdn/assets/print/t9n/messages.nl.json +1 -1
  33. package/dist/cdn/assets/print/t9n/messages.no.json +1 -1
  34. package/dist/cdn/assets/print/t9n/messages.pl.json +1 -1
  35. package/dist/cdn/assets/print/t9n/messages.pt-BR.json +1 -1
  36. package/dist/cdn/assets/print/t9n/messages.pt-PT.json +1 -1
  37. package/dist/cdn/assets/print/t9n/messages.ro.json +1 -1
  38. package/dist/cdn/assets/print/t9n/messages.ru.json +1 -1
  39. package/dist/cdn/assets/print/t9n/messages.sk.json +1 -1
  40. package/dist/cdn/assets/print/t9n/messages.sl.json +1 -1
  41. package/dist/cdn/assets/print/t9n/messages.sr.json +1 -1
  42. package/dist/cdn/assets/print/t9n/messages.sv.json +1 -1
  43. package/dist/cdn/assets/print/t9n/messages.th.json +1 -1
  44. package/dist/cdn/assets/print/t9n/messages.tr.json +1 -1
  45. package/dist/cdn/assets/print/t9n/messages.uk.json +1 -1
  46. package/dist/cdn/assets/print/t9n/messages.vi.json +1 -1
  47. package/dist/cdn/assets/print/t9n/messages.zh-CN.json +1 -1
  48. package/dist/cdn/assets/print/t9n/messages.zh-HK.json +1 -1
  49. package/dist/cdn/assets/print/t9n/messages.zh-TW.json +1 -1
  50. package/dist/cdn/assets/shadow-cast/t9n/messages.ar.json +1 -1
  51. package/dist/cdn/assets/shadow-cast/t9n/messages.bg.json +1 -1
  52. package/dist/cdn/assets/shadow-cast/t9n/messages.bs.json +1 -1
  53. package/dist/cdn/assets/shadow-cast/t9n/messages.ca.json +1 -1
  54. package/dist/cdn/assets/shadow-cast/t9n/messages.cs.json +1 -1
  55. package/dist/cdn/assets/shadow-cast/t9n/messages.da.json +1 -1
  56. package/dist/cdn/assets/shadow-cast/t9n/messages.de.json +1 -1
  57. package/dist/cdn/assets/shadow-cast/t9n/messages.el.json +1 -1
  58. package/dist/cdn/assets/shadow-cast/t9n/messages.en.json +1 -1
  59. package/dist/cdn/assets/shadow-cast/t9n/messages.es.json +1 -1
  60. package/dist/cdn/assets/shadow-cast/t9n/messages.et.json +1 -1
  61. package/dist/cdn/assets/shadow-cast/t9n/messages.fi.json +1 -1
  62. package/dist/cdn/assets/shadow-cast/t9n/messages.fr.json +1 -1
  63. package/dist/cdn/assets/shadow-cast/t9n/messages.he.json +1 -1
  64. package/dist/cdn/assets/shadow-cast/t9n/messages.hr.json +1 -1
  65. package/dist/cdn/assets/shadow-cast/t9n/messages.hu.json +1 -1
  66. package/dist/cdn/assets/shadow-cast/t9n/messages.id.json +1 -1
  67. package/dist/cdn/assets/shadow-cast/t9n/messages.it.json +1 -1
  68. package/dist/cdn/assets/shadow-cast/t9n/messages.ja.json +1 -1
  69. package/dist/cdn/assets/shadow-cast/t9n/messages.ko.json +1 -1
  70. package/dist/cdn/assets/shadow-cast/t9n/messages.lt.json +1 -1
  71. package/dist/cdn/assets/shadow-cast/t9n/messages.lv.json +1 -1
  72. package/dist/cdn/assets/shadow-cast/t9n/messages.nl.json +1 -1
  73. package/dist/cdn/assets/shadow-cast/t9n/messages.no.json +1 -1
  74. package/dist/cdn/assets/shadow-cast/t9n/messages.pl.json +1 -1
  75. package/dist/cdn/assets/shadow-cast/t9n/messages.pt-BR.json +1 -1
  76. package/dist/cdn/assets/shadow-cast/t9n/messages.pt-PT.json +1 -1
  77. package/dist/cdn/assets/shadow-cast/t9n/messages.ro.json +1 -1
  78. package/dist/cdn/assets/shadow-cast/t9n/messages.ru.json +1 -1
  79. package/dist/cdn/assets/shadow-cast/t9n/messages.sk.json +1 -1
  80. package/dist/cdn/assets/shadow-cast/t9n/messages.sl.json +1 -1
  81. package/dist/cdn/assets/shadow-cast/t9n/messages.sr.json +1 -1
  82. package/dist/cdn/assets/shadow-cast/t9n/messages.sv.json +1 -1
  83. package/dist/cdn/assets/shadow-cast/t9n/messages.th.json +1 -1
  84. package/dist/cdn/assets/shadow-cast/t9n/messages.tr.json +1 -1
  85. package/dist/cdn/assets/shadow-cast/t9n/messages.uk.json +1 -1
  86. package/dist/cdn/assets/shadow-cast/t9n/messages.vi.json +1 -1
  87. package/dist/cdn/assets/shadow-cast/t9n/messages.zh-CN.json +1 -1
  88. package/dist/cdn/assets/shadow-cast/t9n/messages.zh-HK.json +1 -1
  89. package/dist/cdn/assets/shadow-cast/t9n/messages.zh-TW.json +1 -1
  90. package/dist/cdn/assets/sketch/t9n/messages.en.json +1 -0
  91. package/dist/cdn/index.js +1 -1
  92. package/dist/chunks/layer-list-item-indicator.js +24 -27
  93. package/dist/components/arcgis-coordinate-conversion/customElement.d.ts +8 -0
  94. package/dist/components/arcgis-coordinate-conversion/customElement.js +118 -120
  95. package/dist/components/arcgis-coordinate-conversion/index.js +2 -1
  96. package/dist/components/arcgis-features/customElement.d.ts +9 -1
  97. package/dist/components/arcgis-features/customElement.js +76 -64
  98. package/dist/components/arcgis-layer-list-new/customElement.js +1 -1
  99. package/dist/components/arcgis-layer-list-new/layer-list-item/customElement.js +24 -24
  100. package/dist/components/arcgis-link-chart/customElement.d.ts +1 -1
  101. package/dist/components/arcgis-map/customElement.d.ts +1 -1
  102. package/dist/components/arcgis-presentation/customElement.js +12 -11
  103. package/dist/components/arcgis-print/customElement.d.ts +30 -3
  104. package/dist/components/arcgis-print-export-button/customElement.js +13 -8
  105. package/dist/components/arcgis-print-export-button/index.js +1 -0
  106. package/dist/components/arcgis-print-template-selector/customElement.js +4 -4
  107. package/dist/components/arcgis-scene/customElement.d.ts +1 -1
  108. package/dist/components/arcgis-shadow-cast/customElement.d.ts +141 -78
  109. package/dist/components/arcgis-shadow-cast/customElement.js +111 -90
  110. package/dist/docs/api.json +1 -1
  111. package/dist/docs/docs.json +1 -1
  112. package/dist/docs/vscode.html-custom-data.json +1 -1
  113. package/dist/docs/web-types.json +1 -1
  114. package/dist/loader.js +3 -3
  115. package/dist/types/lumina.d.ts +2 -2
  116. package/dist/types/preact.d.ts +2 -2
  117. package/dist/types/react.d.ts +2 -2
  118. package/dist/types/stencil.d.ts +2 -2
  119. package/package.json +5 -5
  120. package/dist/cdn/2FEX7FAZ.js +0 -2
  121. package/dist/cdn/2SZ3WJGX.js +0 -2
  122. package/dist/cdn/KOBC25QZ.js +0 -2
  123. package/dist/cdn/O2ECQYMW.js +0 -2
  124. package/dist/cdn/R6JH26DC.js +0 -2
  125. package/dist/cdn/RED6TO3K.js +0 -2
  126. package/dist/cdn/XVWZZS5G.js +0 -2
@@ -1,71 +1,64 @@
1
1
  /// <reference path="../../index.d.ts" />
2
- import type Point from "@arcgis/core/geometry/Point.js";
3
2
  import type ShadowCastAnalysis from "@arcgis/core/analysis/ShadowCastAnalysis.js";
4
3
  import type SceneView from "@arcgis/core/views/SceneView.js";
5
4
  import type Color from "@arcgis/core/Color.js";
6
5
  import type { PublicLitElement as LitElement } from "@arcgis/lumina";
7
6
  import type { ArcgisReferenceElement, HeadingLevel } from "../types.js";
8
7
  import type { ShadowCastMode, ShadowCastTotalDurationMode } from "@arcgis/core/analysis/ShadowCast/types.js";
8
+ import type { ScreenPoint } from "@arcgis/core/core/types.js";
9
9
  import type { T9nMeta } from "@arcgis/lumina/controllers";
10
10
  import type { Icon as Icon } from "@esri/calcite-components/components/calcite-icon";
11
11
 
12
12
  /**
13
- * The Shadow Cast component displays the cumulative shadows of 3D features in a
14
- * [arcgis-scene](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-scene/).
15
- * This type of analysis is helpful in urban development, where new projects have to satisfy certain shadow duration constraints.
13
+ * The Shadow Cast component visualizes shadows cast by 3D features or sunlight exposure in an
14
+ * [arcgis-scene](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-scene/). This is helpful in urban development, where projects may need to satisfy shadow or
15
+ * sunlight exposure requirements for a selected day and time range.
16
16
  *
17
- * The component calculates the cumulative shadows for a time range during a single day. The user can
18
- * configure the time range and select a calendar date. This time range and calendar date are only used
19
- * for the shadow analysis and are not connected to the lighting in the scene.
20
- * To control the lighting in the scene, use the
21
- * [arcgis-daylight](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-daylight/) component.
22
- * Changing the timezone in the component updates the visualization by interpreting the time range as being
23
- * in that timezone. This behavior is different from the
24
- * [arcgis-daylight](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-daylight/) component,
25
- * where selecting a timezone updates the
26
- * [arcgis-scene.environment](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-scene/#environment)
27
- * date and time according to the camera position.
17
+ * [![shadow cast component](https://developers.arcgis.com/javascript/latest/assets/references/core/analysis/shadow-cast-analysis-duration.avif)](https://developers.arcgis.com/javascript/latest/sample-code/shadow-cast/)
28
18
  *
29
- * The component provides three [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode): minimum duration, total duration, and discrete mode.
19
+ * By default, the component visualizes shadows. When [visualizeSunlight](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#visualizeSunlight) is `true`,
20
+ * it visualizes sunlight exposure instead.
30
21
  *
31
- * **Minimum duration** mode displays shadows only in areas where shading accumulates for longer than a specified duration
32
- * within the selected time range. Areas that receive less shading than the minimum show no shadow. In the image below,
33
- * on May 1, 2021, shadows are displayed only where shading exceeds 4 hours between 10AM and 4PM.
22
+ * The component provides controls for the date, time range, timezone, visualization mode, colors, intervals, and whether
23
+ * to visualize shadows or sunlight.
34
24
  *
35
- * [![minimum-duration mode](https://developers.arcgis.com/javascript/latest/assets/references/core/widgets/shadow-cast/shadow-cast-threshold.avif)](https://developers.arcgis.com/javascript/latest/sample-code/shadow-cast/)
25
+ * The [date](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#date), [startTimeOfDay](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#startTimeOfDay),
26
+ * [endTimeOfDay](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#endTimeOfDay), and [utcOffset](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#utcOffset) properties
27
+ * define the date, time range, and UTC offset used to compute the analysis overlay. They do not change the lighting in
28
+ * the scene. To control scene lighting, use the [arcgis-daylight](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-daylight/) component.
36
29
  *
37
- * **Total shadow duration** mode displays the cumulative duration of shadow within the selected time range using opacity:
38
- * areas that receive no shadow remain fully transparent, while areas receiving the highest accumulated shadow duration
39
- * use a default opacity of 0.7. Intermediate values are interpolated. This mode can visualize shadows continuously or
40
- * in 1-hour intervals.
30
+ * The [utcOffset](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#utcOffset) property determines which timezone the selected date and time range
31
+ * are interpreted in for the analysis. This differs from the Daylight component, where selecting a timezone updates the
32
+ * [arcgis-scene.environment](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-scene/#environment) date and time according to the camera position.
41
33
  *
42
- * [![total-duration mode](https://developers.arcgis.com/javascript/latest/assets/references/core/widgets/shadow-cast/shadow-cast-duration.avif)](https://developers.arcgis.com/javascript/latest/sample-code/shadow-cast/)
34
+ * The [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode) property controls how shadow or sunlight exposure is visualized:
43
35
  *
44
- * **Discrete shadows** mode displays individual shadows at regular intervals within the selected time range.
45
- * For example, with a time range from 10AM to 11AM and an interval set to 30 minutes, the shadows at 10AM, 10:30AM and
46
- * 11:00AM will be displayed.
36
+ * | Mode | Use for | Details |
37
+ * | --- | --- | --- |
38
+ * | `min-duration` | Highlighting areas that meet or exceed a minimum shadow or sunlight duration. | The threshold is defined by [minDuration](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#minDuration). |
39
+ * | `total-duration` | Showing cumulative shadow or sunlight duration across the analysis area. | Supports continuous visualization or 1-hour intervals. Areas with no duration remain transparent, intermediate values are interpolated, and the highest duration uses the opacity from [totalDurationColor](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#totalDurationColor). |
40
+ * | `discrete` | Displaying individual shadow or sunlight samples at regular intervals. | The interval is defined by [discreteInterval](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#discreteInterval). For example, a one-hour range with a 30-minute interval displays samples at the start, middle, and end of the range. |
47
41
  *
48
- * [![discrete mode](https://developers.arcgis.com/javascript/latest/assets/references/core/widgets/shadow-cast/shadow-cast-discrete.avif)](https://developers.arcgis.com/javascript/latest/sample-code/shadow-cast/)
49
- *
50
- * Hovering over the Scene will display a tooltip showing the amount of time that location is in shadow, rounded to 15-minute intervals.
51
- *
52
- * The defaults for the time range and visualization settings can be changed using the [startTimeOfDay](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#startTimeOfDay),
53
- * [endTimeOfDay](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#endTimeOfDay), and [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode) properties.
42
+ * Hovering over the scene displays a tooltip showing the shadow or sunlight duration at that location, rounded to
43
+ * 15-minute intervals. To disable this tooltip, set
44
+ * [hideShadowDurationTooltip](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#hideShadowDurationTooltip) to `true`.
54
45
  *
55
46
  * **Known limitations**
56
47
  *
57
48
  * * Shadow Cast is only supported in a 3D [arcgis-scene](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-scene/) component.
58
- * * Terrain does not cast shadows in this analysis. As a result, to avoid incorrect shadow visualization, `startTimeOfDay`
59
- * should be set after local sunrise and `endTimeOfDay` before local sunset. If these times fall outside daylight hours,
60
- * shadows may be missing in areas where terrain would normally block sunlight.
61
- * * The analysis does not take daylight savings into account. Use the timezone dropdown to adjust the offset from the
62
- * Coordinated Universal Time (UTC) and account for the daylight saving time.
63
- * * The timezone is automatically detected by the component based on the camera location. In some situations, this might not be accurate.
64
- * In case of an inaccurate timezone, users can set it manually using the timezone dropdown.
49
+ * * Terrain does not cast shadows in this analysis.
50
+ * * As a result, shadow duration may be underestimated and sunlight duration may be overestimated in areas where terrain
51
+ * would normally block sunlight. To avoid incorrect visualization, `startTimeOfDay` should be set after local sunrise
52
+ * and `endTimeOfDay` before local sunset.
53
+ * * The analysis does not take daylight savings into account. Use the timezone picker to adjust the offset from the
54
+ * Coordinated Universal Time (UTC) and account for daylight saving time.
55
+ * * The timezone is automatically detected by the component based on the camera location. In some situations, this might
56
+ * not be accurate. In case of an inaccurate timezone, users can set it manually using the timezone picker.
65
57
  *
66
58
  * **See also**
67
59
  *
68
- * - [Sample - Shadow cast component](https://developers.arcgis.com/javascript/latest/sample-code/shadow-cast/)
60
+ * - [Sample - Shadow Cast component](https://developers.arcgis.com/javascript/latest/sample-code/shadow-cast/)
61
+ * - [ShadowCastAnalysis](https://developers.arcgis.com/javascript/latest/references/core/analysis/ShadowCastAnalysis/)
69
62
  *
70
63
  * @since 4.28
71
64
  */
@@ -93,14 +86,17 @@ export abstract class ArcgisShadowCast extends LitElement {
93
86
  * // Get the ShadowCastAnalysisView3D.
94
87
  * const analysisView = await viewElement.whenAnalysisView(analysis);
95
88
  *
96
- * // Click in the Scene and get the shadow duration in that specific point.
89
+ * // Click in the Scene and get the shadow or sunlight duration at that specific point.
97
90
  * viewElement.addEventListener("arcgisViewClick", async (event) => {
98
91
  * const screenPoint = { x: event.detail.x, y: event.detail.y };
99
92
  * const duration = await analysisView.getDurationAtScreen(screenPoint);
100
- * console.log("Shadow duration (minutes):", duration);
93
+ * console.log("Duration (milliseconds):", duration);
101
94
  * });
102
95
  * ```
103
96
  * Whenever the component is destroyed, the analysis is automatically removed from the collection.
97
+ * Use this property to configure analysis options that are not exposed by the component UI. For example, the component
98
+ * does not provide UI controls for setting a polygonal analysis area or custom color stops; configure those directly
99
+ * on the analysis.
104
100
  *
105
101
  * Alternatively, a programmatically created [ShadowCastAnalysis](https://developers.arcgis.com/javascript/latest/references/core/analysis/ShadowCastAnalysis/)
106
102
  * can be provided to the component.
@@ -137,7 +133,7 @@ export abstract class ArcgisShadowCast extends LitElement {
137
133
  */
138
134
  accessor autoDestroyDisabled: boolean;
139
135
  /**
140
- * The calendar date used to calculate the shadow cast. This date excludes the time. If a date with a time is set, the time value will be set to midnight (`00:00:00`) of that date in local system time.
136
+ * The calendar date used to calculate the shadow or sunlight visualization. This date excludes the time. If a date with a time is set, the time value will be set to midnight (`00:00:00`) of that date in local system time.
141
137
  * If no date is set, then it defaults to the current date in local system time.
142
138
  *
143
139
  * _See also_
@@ -147,23 +143,24 @@ export abstract class ArcgisShadowCast extends LitElement {
147
143
  get date(): Date;
148
144
  set date(value: Date | number | string);
149
145
  /**
150
- * Color of the shadow visualization in "discrete" [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode). The opacity of the visualization is mapped to the
151
- * number of overlapping shadows. No shadow corresponds to opacity 0 and maximum number of shadows corresponds to the
152
- * opacity set in this color value.
146
+ * Color of the visualization in `"discrete"` [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode). The opacity of the
147
+ * visualization is mapped to the number of overlapping shadow or sunlight samples. No duration corresponds to opacity
148
+ * 0 and the maximum sample count corresponds to the opacity set in this color value. The component UI exposes a single
149
+ * color for this mode.
153
150
  *
154
151
  * @since 5.0
155
152
  */
156
153
  accessor discreteColor: Color;
157
154
  /**
158
- * Individual shadows are displayed at this time interval in "discrete" [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode), starting with the start time of
159
- * day. The interval is expressed in milliseconds. If set to 0, we'll use the smallest possible interval, up to a
160
- * maximum of 255 samples.
155
+ * Individual shadow or sunlight samples are displayed at this time interval in `"discrete"`
156
+ * [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode), starting with the start time of day. The interval is expressed in
157
+ * milliseconds. If set to 0, the analysis uses the smallest possible interval, up to a maximum of 255 samples.
161
158
  *
162
159
  * @since 5.0
163
160
  */
164
161
  accessor discreteInterval: number;
165
162
  /**
166
- * Time (in milliseconds from midnight of the [date](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#date)) when the shadow cast computation should stop.
163
+ * Time (in milliseconds from midnight of the [date](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#date)) when the shadow or sunlight computation should stop.
167
164
  *
168
165
  * [Read more](https://developers.arcgis.com/javascript/latest/references/core/analysis/ShadowCastAnalysis/#endTimeOfDay)
169
166
  */
@@ -251,7 +248,7 @@ export abstract class ArcgisShadowCast extends LitElement {
251
248
  */
252
249
  accessor hideMinDurationSlider: boolean;
253
250
  /**
254
- * If true, the tooltip which displays the amount of shadow at a certain location will be hidden.
251
+ * If true, the tooltip which displays the shadow or sunlight duration at a certain location will be hidden.
255
252
  *
256
253
  * @default false
257
254
  * @since 5.0
@@ -343,7 +340,29 @@ export abstract class ArcgisShadowCast extends LitElement {
343
340
  continuousLabel: string;
344
341
  hourlyLabel: string;
345
342
  };
343
+ sunlight: {
344
+ discrete: {
345
+ optionLabel: string;
346
+ colorLabel: string;
347
+ intervalLabel: string;
348
+ };
349
+ minDuration: {
350
+ optionLabel: string;
351
+ colorLabel: string;
352
+ minDurationLabel: string;
353
+ discreteLabel: string;
354
+ discreteColorLabel: string;
355
+ };
356
+ totalDuration: {
357
+ optionLabel: string;
358
+ colorLabel: string;
359
+ modeLabel: string;
360
+ continuousLabel: string;
361
+ hourlyLabel: string;
362
+ };
363
+ };
346
364
  timeInShadow: string;
365
+ timeInSunlight: string;
347
366
  timeRangeHeading: string;
348
367
  timeRangeSliderLabel: string;
349
368
  timezoneLabel: string;
@@ -370,45 +389,72 @@ export abstract class ArcgisShadowCast extends LitElement {
370
389
  continuousLabel: string;
371
390
  hourlyLabel: string;
372
391
  };
392
+ sunlight: {
393
+ discrete: {
394
+ optionLabel: string;
395
+ colorLabel: string;
396
+ intervalLabel: string;
397
+ };
398
+ minDuration: {
399
+ optionLabel: string;
400
+ colorLabel: string;
401
+ minDurationLabel: string;
402
+ discreteLabel: string;
403
+ discreteColorLabel: string;
404
+ };
405
+ totalDuration: {
406
+ optionLabel: string;
407
+ colorLabel: string;
408
+ modeLabel: string;
409
+ continuousLabel: string;
410
+ hourlyLabel: string;
411
+ };
412
+ };
373
413
  timeInShadow: string;
414
+ timeInSunlight: string;
374
415
  timeRangeHeading: string;
375
416
  timeRangeSliderLabel: string;
376
417
  timezoneLabel: string;
377
418
  visualizationLabel: string;
378
419
  }>;
379
420
  /**
380
- * The minimum duration (in milliseconds) used in "min-duration" [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode) to determine which shadow areas are displayed.
421
+ * The minimum duration (in milliseconds) used in `"min-duration"` [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode) to
422
+ * determine which shadowed or sunlit areas are displayed.
381
423
  *
382
424
  * @since 5.0
383
425
  */
384
426
  accessor minDuration: number;
385
427
  /**
386
- * Color of the shadow visualization in "min-duration" [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode). The areas with cumulative shadow time longer than
387
- * the minimum duration value are displayed with this color.
428
+ * Color of the visualization in `"min-duration"` [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode). Areas with cumulative
429
+ * shadow or sunlight time longer than the minimum duration value are displayed with this color.
388
430
  *
389
431
  * @since 5.0
390
432
  */
391
433
  accessor minDurationColor: Color;
392
434
  /**
393
- * The color used when showing additional context in "min-duration" [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode) when
394
- * [minDurationContextEnabled](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#minDurationContextEnabled) is true.
435
+ * The color used when showing additional context in `"min-duration"` [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode) when
436
+ * [minDurationContextEnabled](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#minDurationContextEnabled) is true. This context applies to shadow
437
+ * visualization and is not used when [visualizeSunlight](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#visualizeSunlight) is `true`.
395
438
  *
396
439
  * @since 5.0
397
440
  */
398
441
  accessor minDurationContextColor: Color;
399
442
  /**
400
443
  * Whether to enable additional context showing discrete shadows at the same time as displaying shadows above a
401
- * minimum duration when in the "min-duration" [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode). The [minDurationContextColor](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#minDurationContextColor)
444
+ * minimum duration when in `"min-duration"` [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode). The [minDurationContextColor](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#minDurationContextColor)
402
445
  * and [minDurationContextInterval](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#minDurationContextInterval) properties are used to configure the visualization of the
403
- * discrete shadows when context is enabled.
446
+ * discrete shadows when context is enabled. This context is hidden when
447
+ * [visualizeSunlight](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#visualizeSunlight) is `true` because the equivalent sunlight context would show
448
+ * broad areas not in shadow at each sample and can obscure the threshold result.
404
449
  *
405
450
  * @default false
406
451
  * @since 5.0
407
452
  */
408
453
  accessor minDurationContextEnabled: boolean;
409
454
  /**
410
- * The interval in milliseconds used when showing additional context in "min-duration" [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode) when
411
- * [minDurationContextEnabled](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#minDurationContextEnabled) is true.
455
+ * The interval in milliseconds used when showing additional context in `"min-duration"` [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode) when
456
+ * [minDurationContextEnabled](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#minDurationContextEnabled) is true. This context applies to shadow
457
+ * visualization and is not used when [visualizeSunlight](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#visualizeSunlight) is `true`.
412
458
  *
413
459
  * @since 5.0
414
460
  */
@@ -421,12 +467,11 @@ export abstract class ArcgisShadowCast extends LitElement {
421
467
  */
422
468
  accessor minMinDuration: number;
423
469
  /**
424
- * Mode of analysis to use when computing and displaying the shadows. There are 3 types:
425
- * - "discrete": Displays individual shadow snapshots at regular time intervals within the selected time range.
426
- * - "min-duration": Displays shadows only in areas where accumulated shading exceeds a user‑defined minimum duration
427
- * within the selected time range. Optional discrete shadow overlays can provide additional context.
428
- * - "total-duration": Displays total shadow accumulation within the selected time range using opacity: areas with
429
- * longer shadow duration appear more opaque. Supports continuous or 1‑hour aggregated modes.
470
+ * Mode of analysis to use when computing and displaying shadows or sunlight.
471
+ *
472
+ * - `"discrete"`: Displays individual shadow or sunlight snapshots at regular time intervals within the selected time range.
473
+ * - `"min-duration"`: Displays areas where accumulated shadow or sunlight exceeds a user-defined minimum duration within the selected time range. When visualizing shadows, optional discrete shadow overlays can provide additional context.
474
+ * - `"total-duration"`: Displays total shadow or sunlight accumulation within the selected time range. Supports continuous or 1-hour aggregated modes.
430
475
  *
431
476
  * @since 5.0
432
477
  */
@@ -438,7 +483,7 @@ export abstract class ArcgisShadowCast extends LitElement {
438
483
  */
439
484
  accessor referenceElement: ArcgisReferenceElement | string | undefined;
440
485
  /**
441
- * Time (in milliseconds from midnight of the [date](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#date)) when the shadow cast computation should start.
486
+ * Time (in milliseconds from midnight of the [date](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#date)) when the shadow or sunlight computation should start.
442
487
  *
443
488
  * [Read more](https://developers.arcgis.com/javascript/latest/references/core/analysis/ShadowCastAnalysis/#startTimeOfDay)
444
489
  */
@@ -451,27 +496,43 @@ export abstract class ArcgisShadowCast extends LitElement {
451
496
  */
452
497
  get state(): "disabled" | "ready";
453
498
  /**
454
- * Color of the shadow visualization in "total-duration" [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode). The opacity is mapped to the time spent in shadow.
455
- * Areas that don't receive any shadow are displayed with zero opacity and areas that receive shadows for the entire
456
- * time range are displayed with the opacity specified in this property.
499
+ * Color of the visualization in `"total-duration"` [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode). The opacity is mapped
500
+ * to the time spent in shadow or sunlight. Areas with no duration are displayed with zero opacity and areas with the
501
+ * maximum duration use the opacity specified in this property. The component UI exposes a single color for this mode.
457
502
  *
458
503
  * @since 5.0
459
504
  */
460
505
  accessor totalDurationColor: Color;
461
506
  /**
462
- * Mode in which the cumulative shadow duration should be displayed in "total-duration" [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode): as a continuous
463
- * surface or as an hourly aggregation of values.
507
+ * Mode in which the cumulative shadow or sunlight duration should be displayed in `"total-duration"`
508
+ * [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode): as a continuous surface or as an hourly aggregation of values.
464
509
  *
465
510
  * @since 5.0
466
511
  */
467
512
  accessor totalDurationMode: ShadowCastTotalDurationMode;
468
- /** The difference in hours between UTC time and the times displayed in the component. */
513
+ /**
514
+ * The UTC offset in hours used to interpret the selected date and time range for the analysis. If not specified, the
515
+ * component automatically determines an approximate UTC offset based on the camera location.
516
+ */
469
517
  accessor utcOffset: number | null | undefined;
470
518
  /**
471
519
  * The view associated with the component.
472
520
  * > **Note:** The recommended approach is to fully migrate applications to use map and scene components and avoid using MapView and SceneView directly. However, if you are migrating a large application from widgets to components, you might prefer a more gradual transition. To support this use case, the SDK includes this `view` property which connects a component to a MapView or SceneView. Ultimately, once migration is complete, the arcgis-shadow-cast component will be associated with a map or scene component rather than using the `view` property.
473
521
  */
474
522
  accessor view: SceneView | undefined;
523
+ /**
524
+ * When `true`, the component visualizes sunlight duration instead of shadow duration. This applies to all modes,
525
+ * their respective options, and the duration returned by
526
+ * [getDurationAtScreen()](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#getDurationAtScreen). In sunlight mode, the discrete context controls in the
527
+ * `"min-duration"` [mode](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#mode) are hidden because the equivalent sunlight context
528
+ * would show broad areas not in shadow at each sample and can obscure the threshold result.
529
+ *
530
+ * [Read more](https://developers.arcgis.com/javascript/latest/references/core/analysis/ShadowCastAnalysis/#visualizeSunlight)
531
+ *
532
+ * @default false
533
+ * @since 5.1
534
+ */
535
+ accessor visualizeSunlight: boolean;
475
536
  /**
476
537
  * Specifies the size of the component.
477
538
  *
@@ -483,14 +544,16 @@ export abstract class ArcgisShadowCast extends LitElement {
483
544
  /** Permanently destroy the component. */
484
545
  destroy(): Promise<void>;
485
546
  /**
486
- * Returns the time (in milliseconds) spent in shadow for a certain point on the screen.
547
+ * Returns the duration (in milliseconds) for a certain point on the screen based on the current analysis settings.
548
+ * By default, this method returns the time spent in shadow. When
549
+ * [visualizeSunlight](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-shadow-cast/#visualizeSunlight) is `true`, this method returns the time spent in sunlight.
487
550
  *
488
- * [Read more](https://developers.arcgis.com/javascript/latest/references/core/views/3d/analysis/ShadowCast/ShadowCastAnalysisView3D/#getDurationAtScreen)
551
+ * [Read more](https://developers.arcgis.com/javascript/latest/references/core/views/3d/analysis/ShadowCastAnalysisView3D/#getDurationAtScreen)
489
552
  *
490
553
  * @param point
491
554
  * @since 5.0
492
555
  */
493
- getDurationAtScreen(point: Point): Promise<number>;
556
+ getDurationAtScreen(point: ScreenPoint): Promise<number>;
494
557
  "@setterTypes": {
495
558
  date?: Date | number | string;
496
559
  };