@saschabrunnerch/arcgis-maps-sdk-js-ai-context 0.0.1 → 0.1.0

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 (50) hide show
  1. package/README.md +163 -201
  2. package/bin/cli.js +157 -173
  3. package/contexts/4.34/{claude → skills}/arcgis-3d-advanced/SKILL.md +586 -586
  4. package/contexts/4.34/{claude → skills}/arcgis-advanced-layers/SKILL.md +431 -431
  5. package/contexts/4.34/{claude → skills}/arcgis-analysis-services/SKILL.md +607 -607
  6. package/contexts/4.34/{claude → skills}/arcgis-authentication/SKILL.md +301 -301
  7. package/contexts/4.34/{claude → skills}/arcgis-cim-symbols/SKILL.md +486 -486
  8. package/contexts/4.34/{claude → skills}/arcgis-coordinates-projection/SKILL.md +406 -406
  9. package/contexts/4.34/{claude → skills}/arcgis-core-maps/SKILL.md +739 -739
  10. package/contexts/4.34/{claude → skills}/arcgis-core-utilities/SKILL.md +732 -732
  11. package/contexts/4.34/{claude → skills}/arcgis-custom-rendering/SKILL.md +445 -445
  12. package/contexts/4.34/{claude → skills}/arcgis-editing-advanced/SKILL.md +702 -702
  13. package/contexts/4.34/{claude → skills}/arcgis-feature-effects/SKILL.md +393 -393
  14. package/contexts/4.34/{claude → skills}/arcgis-geometry-operations/SKILL.md +489 -489
  15. package/contexts/4.34/{claude → skills}/arcgis-imagery/SKILL.md +307 -307
  16. package/contexts/4.34/{claude → skills}/arcgis-interaction/SKILL.md +572 -572
  17. package/contexts/4.34/{claude → skills}/arcgis-knowledge-graphs/SKILL.md +582 -582
  18. package/contexts/4.34/{claude → skills}/arcgis-layers/SKILL.md +601 -601
  19. package/contexts/4.34/{claude → skills}/arcgis-map-tools/SKILL.md +668 -668
  20. package/contexts/4.34/{claude → skills}/arcgis-media-layers/SKILL.md +290 -290
  21. package/contexts/4.34/{claude → skills}/arcgis-portal-content/SKILL.md +679 -679
  22. package/contexts/4.34/{claude → skills}/arcgis-scene-effects/SKILL.md +512 -512
  23. package/contexts/4.34/{claude → skills}/arcgis-smart-mapping/SKILL.md +686 -686
  24. package/contexts/4.34/skills/arcgis-starter-app/SKILL.md +273 -0
  25. package/contexts/4.34/skills/arcgis-starter-app-extended/SKILL.md +649 -0
  26. package/contexts/4.34/{claude → skills}/arcgis-tables-forms/SKILL.md +877 -877
  27. package/contexts/4.34/{claude → skills}/arcgis-time-animation/SKILL.md +722 -722
  28. package/contexts/4.34/{claude → skills}/arcgis-utility-networks/SKILL.md +301 -301
  29. package/contexts/4.34/{claude → skills}/arcgis-visualization/SKILL.md +580 -580
  30. package/contexts/4.34/{claude → skills}/arcgis-widgets-ui/SKILL.md +574 -574
  31. package/lib/installer.js +294 -379
  32. package/package.json +45 -45
  33. package/contexts/4.34/copilot/arcgis-3d.instructions.md +0 -267
  34. package/contexts/4.34/copilot/arcgis-analysis.instructions.md +0 -294
  35. package/contexts/4.34/copilot/arcgis-arcade.instructions.md +0 -234
  36. package/contexts/4.34/copilot/arcgis-authentication.instructions.md +0 -187
  37. package/contexts/4.34/copilot/arcgis-cim-symbols.instructions.md +0 -177
  38. package/contexts/4.34/copilot/arcgis-core-maps.instructions.md +0 -246
  39. package/contexts/4.34/copilot/arcgis-core-utilities.instructions.md +0 -247
  40. package/contexts/4.34/copilot/arcgis-editing.instructions.md +0 -262
  41. package/contexts/4.34/copilot/arcgis-geometry.instructions.md +0 -225
  42. package/contexts/4.34/copilot/arcgis-layers.instructions.md +0 -278
  43. package/contexts/4.34/copilot/arcgis-popup-templates.instructions.md +0 -266
  44. package/contexts/4.34/copilot/arcgis-portal-advanced.instructions.md +0 -275
  45. package/contexts/4.34/copilot/arcgis-smart-mapping.instructions.md +0 -184
  46. package/contexts/4.34/copilot/arcgis-time-animation.instructions.md +0 -112
  47. package/contexts/4.34/copilot/arcgis-visualization.instructions.md +0 -321
  48. package/contexts/4.34/copilot/arcgis-widgets-ui.instructions.md +0 -277
  49. /package/contexts/4.34/{claude → skills}/arcgis-arcade/SKILL.md +0 -0
  50. /package/contexts/4.34/{claude → skills}/arcgis-popup-templates/SKILL.md +0 -0
@@ -1,275 +0,0 @@
1
- ---
2
- applyTo: "**/*.{js,ts,jsx,tsx,html}"
3
- ---
4
-
5
- # ArcGIS Maps SDK - Portal, Imagery & Advanced Features
6
-
7
- ## Portal Operations
8
-
9
- ### Load Portal
10
- ```javascript
11
- import Portal from "@arcgis/core/portal/Portal.js";
12
-
13
- const portal = new Portal({ authMode: "immediate" });
14
- await portal.load();
15
-
16
- console.log("User:", portal.user.username);
17
- console.log("Org:", portal.name);
18
- ```
19
-
20
- ### Query Portal Items
21
- ```javascript
22
- import PortalQueryParams from "@arcgis/core/portal/PortalQueryParams.js";
23
-
24
- const queryParams = new PortalQueryParams({
25
- query: `owner:${portal.user.username} type:"Web Map"`,
26
- sortField: "modified",
27
- sortOrder: "desc",
28
- num: 20
29
- });
30
-
31
- const result = await portal.queryItems(queryParams);
32
- result.results.forEach(item => console.log(item.title, item.id));
33
- ```
34
-
35
- ### Create/Save WebMap
36
- ```javascript
37
- import WebMap from "@arcgis/core/WebMap.js";
38
-
39
- const webmap = new WebMap({ basemap: "topo-vector" });
40
- webmap.add(layer);
41
-
42
- await webmap.save({
43
- title: "My WebMap",
44
- description: "Description",
45
- tags: ["tag1", "tag2"]
46
- });
47
- ```
48
-
49
- ### PortalItem Operations
50
- ```javascript
51
- import PortalItem from "@arcgis/core/portal/PortalItem.js";
52
-
53
- const item = new PortalItem({ id: "ITEM_ID" });
54
- await item.load();
55
-
56
- console.log(item.title, item.type, item.owner);
57
-
58
- // Update item
59
- item.title = "New Title";
60
- await item.update();
61
- ```
62
-
63
- ## Imagery Layers
64
-
65
- ### ImageryLayer
66
- ```javascript
67
- import ImageryLayer from "@arcgis/core/layers/ImageryLayer.js";
68
-
69
- const imageryLayer = new ImageryLayer({
70
- url: "https://services.arcgis.com/.../ImageServer",
71
- format: "jpgpng",
72
- renderingRule: {
73
- functionName: "NDVI" // or "Hillshade", "Stretch", etc.
74
- }
75
- });
76
- ```
77
-
78
- ### ImageryTileLayer
79
- ```javascript
80
- import ImageryTileLayer from "@arcgis/core/layers/ImageryTileLayer.js";
81
-
82
- const tileLayer = new ImageryTileLayer({
83
- url: "https://services.arcgis.com/.../ImageServer"
84
- });
85
- ```
86
-
87
- ### Multidimensional Imagery
88
- ```javascript
89
- const imageryLayer = new ImageryLayer({
90
- url: "...",
91
- multidimensionalDefinition: [{
92
- variableName: "temperature",
93
- dimensionName: "StdTime",
94
- values: [1609459200000]
95
- }]
96
- });
97
- ```
98
-
99
- ### Raster Functions
100
- ```javascript
101
- imageryLayer.renderingRule = {
102
- functionName: "Stretch",
103
- functionArguments: {
104
- StretchType: 5, // Standard deviation
105
- NumberOfStandardDeviations: 2
106
- }
107
- };
108
- ```
109
-
110
- ## Media Layers
111
-
112
- ### MediaLayer
113
- ```javascript
114
- import MediaLayer from "@arcgis/core/layers/MediaLayer.js";
115
- import ImageElement from "@arcgis/core/layers/support/ImageElement.js";
116
-
117
- const mediaLayer = new MediaLayer({
118
- source: [
119
- new ImageElement({
120
- image: "https://example.com/image.png",
121
- georeference: {
122
- type: "corners",
123
- topLeft: { x: -118.5, y: 34.5 },
124
- topRight: { x: -117.5, y: 34.5 },
125
- bottomRight: { x: -117.5, y: 33.5 },
126
- bottomLeft: { x: -118.5, y: 33.5 }
127
- }
128
- })
129
- ]
130
- });
131
- ```
132
-
133
- ### VideoElement
134
- ```javascript
135
- import VideoElement from "@arcgis/core/layers/support/VideoElement.js";
136
-
137
- const videoElement = new VideoElement({
138
- video: videoUrl,
139
- georeference: { /* extent */ }
140
- });
141
- ```
142
-
143
- ## Advanced Layer Types
144
-
145
- ### SubtypeGroupLayer
146
- ```javascript
147
- import SubtypeGroupLayer from "@arcgis/core/layers/SubtypeGroupLayer.js";
148
-
149
- const subtypeLayer = new SubtypeGroupLayer({
150
- url: "https://services.arcgis.com/.../FeatureServer/0"
151
- });
152
-
153
- await subtypeLayer.load();
154
- subtypeLayer.sublayers.forEach(sublayer => {
155
- console.log("Subtype:", sublayer.subtypeCode, sublayer.title);
156
- });
157
- ```
158
-
159
- ### GroupLayer
160
- ```javascript
161
- import GroupLayer from "@arcgis/core/layers/GroupLayer.js";
162
-
163
- const groupLayer = new GroupLayer({
164
- title: "My Group",
165
- layers: [layer1, layer2, layer3],
166
- visibilityMode: "independent" // independent, inherited, exclusive
167
- });
168
- ```
169
-
170
- ### WMSLayer
171
- ```javascript
172
- import WMSLayer from "@arcgis/core/layers/WMSLayer.js";
173
-
174
- const wmsLayer = new WMSLayer({
175
- url: "https://services.example.com/wms",
176
- sublayers: [{ name: "layer_name" }]
177
- });
178
- ```
179
-
180
- ### WFSLayer
181
- ```javascript
182
- import WFSLayer from "@arcgis/core/layers/WFSLayer.js";
183
-
184
- const wfsLayer = new WFSLayer({
185
- url: "https://services.example.com/wfs",
186
- name: "feature_type_name"
187
- });
188
- ```
189
-
190
- ### OGCFeatureLayer
191
- ```javascript
192
- import OGCFeatureLayer from "@arcgis/core/layers/OGCFeatureLayer.js";
193
-
194
- const ogcLayer = new OGCFeatureLayer({
195
- url: "https://services.example.com/ogcapi/collections/features"
196
- });
197
- ```
198
-
199
- ## Knowledge Graphs
200
-
201
- ```javascript
202
- import KnowledgeGraphLayer from "@arcgis/core/layers/KnowledgeGraphLayer.js";
203
-
204
- const kgLayer = new KnowledgeGraphLayer({
205
- url: "https://services.arcgis.com/.../knowledgeGraphServer"
206
- });
207
-
208
- // Query knowledge graph
209
- const query = {
210
- openCypherQuery: "MATCH (n:Person) RETURN n LIMIT 10"
211
- };
212
- const results = await kgLayer.queryKnowledge(query);
213
- ```
214
-
215
- ## Utility Networks
216
-
217
- ```javascript
218
- import UtilityNetwork from "@arcgis/core/networks/UtilityNetwork.js";
219
-
220
- const utilityNetwork = new UtilityNetwork({
221
- url: "https://services.arcgis.com/.../FeatureServer"
222
- });
223
-
224
- await utilityNetwork.load();
225
-
226
- // Trace
227
- const traceResult = await utilityNetwork.trace({
228
- traceType: "upstream",
229
- traceLocations: [{ /* start point */ }]
230
- });
231
- ```
232
-
233
- ## Feature Effects
234
-
235
- ```javascript
236
- import FeatureEffect from "@arcgis/core/layers/support/FeatureEffect.js";
237
-
238
- layerView.featureEffect = new FeatureEffect({
239
- filter: { where: "population > 100000" },
240
- includedEffect: "bloom(1, 0.5px, 0.2)",
241
- excludedEffect: "grayscale(100%) opacity(30%)"
242
- });
243
- ```
244
-
245
- ## Custom WebGL Rendering
246
-
247
- ```javascript
248
- import CustomRenderer from "@arcgis/core/renderers/experimental/CustomRenderer.js";
249
-
250
- const customRenderer = {
251
- type: "custom",
252
- setup: (context) => { /* WebGL setup */ },
253
- draw: (context) => { /* WebGL draw calls */ }
254
- };
255
- ```
256
-
257
- ## Layer Effects
258
-
259
- ```javascript
260
- // CSS-like effects
261
- layer.effect = "drop-shadow(2px 2px 3px gray)";
262
- layer.effect = "blur(2px)";
263
- layer.effect = "grayscale(100%)";
264
- layer.effect = "brightness(150%) contrast(120%)";
265
-
266
- // Blend modes
267
- layer.blendMode = "multiply"; // normal, multiply, screen, overlay, darken, lighten
268
- ```
269
-
270
- ## Common Pitfalls
271
-
272
- 1. **Portal auth** - Set `authMode: "immediate"` for user content
273
- 2. **Imagery rendering rules** - Check available functions
274
- 3. **Knowledge graphs** - Requires ArcGIS Enterprise
275
- 4. **Utility networks** - Requires proper network configuration
@@ -1,184 +0,0 @@
1
- ---
2
- applyTo: "**/*.{js,ts,jsx,tsx,html}"
3
- ---
4
-
5
- # ArcGIS Maps SDK - Smart Mapping
6
-
7
- Auto-generate renderers based on data, calculate statistics, and create data-driven visualizations.
8
-
9
- ## Renderer Creators
10
-
11
- ### Color Renderer (Continuous)
12
- ```javascript
13
- import colorRendererCreator from "@arcgis/core/smartMapping/renderers/color.js";
14
-
15
- const { renderer } = await colorRendererCreator.createContinuousRenderer({
16
- layer: featureLayer,
17
- view: view,
18
- field: "population",
19
- theme: "high-to-low" // high-to-low, above, below, centered-on, extremes
20
- });
21
-
22
- featureLayer.renderer = renderer;
23
- ```
24
-
25
- ### Color Renderer (Class Breaks)
26
- ```javascript
27
- const { renderer } = await colorRendererCreator.createClassBreaksRenderer({
28
- layer: featureLayer,
29
- view: view,
30
- field: "income",
31
- classificationMethod: "natural-breaks", // equal-interval, quantile, standard-deviation
32
- numClasses: 5
33
- });
34
- ```
35
-
36
- ### Size Renderer
37
- ```javascript
38
- import sizeRendererCreator from "@arcgis/core/smartMapping/renderers/size.js";
39
-
40
- const { renderer } = await sizeRendererCreator.createContinuousRenderer({
41
- layer: featureLayer,
42
- view: view,
43
- field: "magnitude"
44
- });
45
- ```
46
-
47
- ### Type (Unique Values) Renderer
48
- ```javascript
49
- import typeRendererCreator from "@arcgis/core/smartMapping/renderers/type.js";
50
-
51
- const { renderer } = await typeRendererCreator.createRenderer({
52
- layer: featureLayer,
53
- view: view,
54
- field: "landuse",
55
- numTypes: 10
56
- });
57
- ```
58
-
59
- ### Heatmap Renderer
60
- ```javascript
61
- import heatmapRendererCreator from "@arcgis/core/smartMapping/renderers/heatmap.js";
62
-
63
- const { renderer } = await heatmapRendererCreator.createRenderer({
64
- layer: featureLayer,
65
- view: view,
66
- field: "magnitude"
67
- });
68
- ```
69
-
70
- ### Dot Density Renderer
71
- ```javascript
72
- import dotDensityRendererCreator from "@arcgis/core/smartMapping/renderers/dotDensity.js";
73
-
74
- const { renderer } = await dotDensityRendererCreator.createRenderer({
75
- layer: featureLayer,
76
- view: view,
77
- attributes: [
78
- { field: "dem_votes", color: "blue", label: "Democrat" },
79
- { field: "rep_votes", color: "red", label: "Republican" }
80
- ],
81
- dotValue: 1000
82
- });
83
- ```
84
-
85
- ### Relationship Renderer
86
- ```javascript
87
- import relationshipRendererCreator from "@arcgis/core/smartMapping/renderers/relationship.js";
88
-
89
- const { renderer } = await relationshipRendererCreator.createRenderer({
90
- layer: featureLayer,
91
- view: view,
92
- field1: { field: "population" },
93
- field2: { field: "income" },
94
- numClasses: 3
95
- });
96
- ```
97
-
98
- ### Pie Chart Renderer
99
- ```javascript
100
- import pieChartRendererCreator from "@arcgis/core/smartMapping/renderers/pieChart.js";
101
-
102
- const { renderer } = await pieChartRendererCreator.createRenderer({
103
- layer: featureLayer,
104
- view: view,
105
- attributes: [
106
- { field: "asian", label: "Asian" },
107
- { field: "black", label: "Black" },
108
- { field: "white", label: "White" }
109
- ]
110
- });
111
- ```
112
-
113
- ## Statistics Functions
114
-
115
- ### Class Breaks
116
- ```javascript
117
- import classBreaksStats from "@arcgis/core/smartMapping/statistics/classBreaks.js";
118
-
119
- const result = await classBreaksStats({
120
- layer: featureLayer,
121
- field: "population",
122
- classificationMethod: "natural-breaks",
123
- numClasses: 5
124
- });
125
- ```
126
-
127
- ### Histogram
128
- ```javascript
129
- import histogram from "@arcgis/core/smartMapping/statistics/histogram.js";
130
-
131
- const result = await histogram({
132
- layer: featureLayer,
133
- field: "income",
134
- numBins: 20
135
- });
136
-
137
- console.log(result.bins);
138
- ```
139
-
140
- ### Summary Statistics
141
- ```javascript
142
- import summaryStatistics from "@arcgis/core/smartMapping/statistics/summaryStatistics.js";
143
-
144
- const result = await summaryStatistics({
145
- layer: featureLayer,
146
- field: "temperature"
147
- });
148
-
149
- console.log(result.avg, result.min, result.max, result.stddev);
150
- ```
151
-
152
- ### Unique Values
153
- ```javascript
154
- import uniqueValues from "@arcgis/core/smartMapping/statistics/uniqueValues.js";
155
-
156
- const result = await uniqueValues({
157
- layer: featureLayer,
158
- field: "category"
159
- });
160
- ```
161
-
162
- ## Color Schemes
163
-
164
- ```javascript
165
- import symbologyColor from "@arcgis/core/smartMapping/symbology/color.js";
166
-
167
- const schemes = symbologyColor.getSchemes({
168
- geometryType: "polygon",
169
- theme: "high-to-low"
170
- });
171
-
172
- const scheme = symbologyColor.getSchemeByName({
173
- geometryType: "polygon",
174
- name: "Blue 5",
175
- theme: "high-to-low"
176
- });
177
- ```
178
-
179
- ## Common Pitfalls
180
-
181
- 1. **View required** - Most functions need view for scale calculations
182
- 2. **Async operations** - Always await results
183
- 3. **Layer must be loaded** - Load layer before using smart mapping
184
- 4. **Field type match** - Numeric fields for continuous, string for unique values
@@ -1,112 +0,0 @@
1
- ---
2
- applyTo: "**/*.{js,ts,jsx,tsx,html}"
3
- ---
4
-
5
- # ArcGIS Maps SDK - Time & Animation
6
-
7
- Work with temporal data, time-aware layers, and animation controls.
8
-
9
- ## TimeExtent
10
-
11
- ```javascript
12
- import TimeExtent from "@arcgis/core/TimeExtent.js";
13
-
14
- const timeExtent = new TimeExtent({
15
- start: new Date("2024-01-01"),
16
- end: new Date("2024-12-31")
17
- });
18
-
19
- view.timeExtent = timeExtent;
20
- ```
21
-
22
- ## TimeSlider Component
23
-
24
- ```html
25
- <arcgis-map item-id="YOUR_WEBMAP_ID">
26
- <arcgis-time-slider slot="bottom-left" mode="time-window" loop></arcgis-time-slider>
27
- </arcgis-map>
28
- ```
29
-
30
- ## TimeSlider Widget (Core API)
31
-
32
- ```javascript
33
- import TimeSlider from "@arcgis/core/widgets/TimeSlider.js";
34
-
35
- const timeSlider = new TimeSlider({
36
- container: "timeSliderDiv",
37
- view: view,
38
- fullTimeExtent: {
39
- start: new Date("2020-01-01"),
40
- end: new Date("2024-12-31")
41
- },
42
- mode: "time-window", // instant, time-window, cumulative-from-start, cumulative-from-end
43
- playRate: 1000,
44
- loop: true,
45
- stops: {
46
- interval: { value: 1, unit: "months" }
47
- }
48
- });
49
-
50
- // Playback controls
51
- timeSlider.play();
52
- timeSlider.stop();
53
-
54
- // Watch for changes
55
- timeSlider.watch("timeExtent", (timeExtent) => {
56
- console.log("Time:", timeExtent.start, timeExtent.end);
57
- });
58
- ```
59
-
60
- ## Time-Aware Layers
61
-
62
- ```javascript
63
- const layer = new FeatureLayer({
64
- url: "https://services.arcgis.com/.../FeatureServer/0",
65
- timeInfo: {
66
- startField: "event_date",
67
- endField: "end_date",
68
- interval: { value: 1, unit: "days" }
69
- }
70
- });
71
-
72
- await layer.load();
73
- if (layer.timeInfo) {
74
- timeSlider.fullTimeExtent = layer.timeInfo.fullTimeExtent;
75
- }
76
- ```
77
-
78
- ## Query with Time
79
-
80
- ```javascript
81
- const query = layer.createQuery();
82
- query.timeExtent = new TimeExtent({
83
- start: new Date("2024-01-01"),
84
- end: new Date("2024-12-31")
85
- });
86
-
87
- const results = await layer.queryFeatures(query);
88
- ```
89
-
90
- ## Custom Stops
91
-
92
- ```javascript
93
- // Interval-based
94
- stops: { interval: { value: 1, unit: "weeks" } }
95
-
96
- // Specific dates
97
- stops: { dates: [new Date("2024-01-01"), new Date("2024-04-01")] }
98
-
99
- // Even count
100
- stops: { count: 12 }
101
- ```
102
-
103
- ## TimeInterval Units
104
-
105
- `milliseconds`, `seconds`, `minutes`, `hours`, `days`, `weeks`, `months`, `years`
106
-
107
- ## Common Pitfalls
108
-
109
- 1. **Time zone issues** - Use UTC for consistency
110
- 2. **Layer must be loaded** - TimeInfo available after load()
111
- 3. **Null for all data** - Set `view.timeExtent = null` to show all
112
- 4. **Performance** - Large time ranges can be slow