POST
|
Is the arcpy module in ArcGIS Pro v3.3 the same as the arcpy module in ArcGIS Enterprise v11.3?
... View more
07-25-2024
03:39 PM
|
0
|
1
|
188
|
IDEA
|
Some elements have padding around them so setting offsets of for example 10px on the left will not necessarily align all the elements so the addition of guides will definitely help! Great idea @Kara_Shindle !
... View more
05-16-2024
08:27 AM
|
0
|
0
|
221
|
POST
|
My pop-up is set to be docked with the position set to the "bottom-left". By default the "pagination action bar" and "Select feature menu" buttons to navigate through the stack of popups appear in a 'footer' on the bottom of the pop-up panel. When the position is set to "top-(left or right)" these buttons appear on the top of the panel in an "esri-features_header" (see pictures below). I want to dock the pop-up on the "bottom-left" but have the pagination and feature menu buttons appear at the top. I was able to move the buttons using CSS but this broke the event listener and clicking on the buttons did nothing. I am using a modified version of the OOTB 'arcgis-map' widget. Thanks in advance for any advice! buttons appear in a 'header' at top of panel buttons appear in 'footer' at the bottom
... View more
04-19-2024
09:35 PM
|
0
|
3
|
443
|
POST
|
We were able to override the 'document.title' property from reverting to the default 'page title| app title' by modifying the '\dist\cdn\0\jimu-core\index.js' file in the downloaded app. As we have a separate custom widget that sets the 'document.title' property in an app page to a desired value, we set the variable "document.title" from 'r' to 'our desired value.
... View more
04-11-2024
01:28 PM
|
0
|
0
|
471
|
POST
|
I have an Experience Builder Developer (v1.13) app with several pages. By default, the browser's document.title property for the published app's page is "<title of page> | <header title >" and the app's page name appears in the URL as follows: "https://<domain>/<app id>/?page=<page name>. My goal is to override the 'document.title' property so that I can set the URL parameters and the browser tab title independently of each other. In other words, I want to keep the URL as simple as possible, while setting a very detailed browser tab title. e.g. "This is my long browser title" which I do not want in my app page's URL: 'https://experience.arcgis.com/experience/appid/?page=simple' rather than 'https://experience.arcgis.com/experience/appid/?page=this%20is%the%20page%20name' I know we can set the browser title for the app in the builder as shown in the screenshot above, but I want to be able to set different titles for different pages and would like to avoid creating a separate app for each page. I have tried a couple of different methods to set the 'document.title' property and have successfully been able to implement it in a couple of custom widget .tsx files however the document title element gets overridden once the user interacts with the map and triggers pop-ups. Has anyone been able to successfully customize this property?
... View more
04-03-2024
01:36 PM
|
0
|
1
|
631
|
POST
|
Yes, this appears to be a recurring issue with versions going way back, but I didn't encounter this until fairly recently with a Windows update a few weeks ago. You can download the app via command line as per this video 40:50 mark (and my brilliant colleague @JoeRogan). Rename the '0' to your app id. The app will be downloaded to the folder from which you ran the script. node -e "require('./server/src/middlewares/dev/apps/app-download.js').zipApp('0', 'app.zip');" There appears to be some conflicting permissions issues with writing to the temp directory which we haven't yet sorted out.
... View more
02-07-2024
10:31 AM
|
4
|
0
|
806
|
POST
|
Thanks so much for the heads up re: ExB Dev roadmap! The pagination action bar appears on top of the pop-up window when there are multiple records clicked on the map, allowing the user to identify the number of records within the click radius and cycle through each feature's pop-up details. There is also a fair bit of pop-up styling via custom HTML so I'm not sure the Feature widget would work for this application, but I'll look into this example! Thanks so much.
... View more
02-05-2024
06:16 PM
|
0
|
1
|
803
|
POST
|
I would like to trigger pop-ups to open when features are selected interactively from the map's 'Select' tool. The Builder provides the option to 'Show pop-up upon feature selection', but as the more info button states: a "Selection made interactively from the map is excluded". I have a custom copy of the COTS 'arcgis-map' widget that I can modify to enable this behaviour. Has anyone implemented this? In general steps, I think I need to listen for a selection change event, get the selected features, and then display the pop-ups.
... View more
02-01-2024
10:53 AM
|
0
|
3
|
987
|
BLOG
|
Thanks @JeffreyThompson2 ! Unfortunately, in Developer Edition v1.13, it notes that 'Selection made interactively from the map is excluded'. Can you suggest how I might modify my custom 'arcgis-map' widget to enable pop-ups for selections made with the map's 'Select' tool? I have posted this question here: https://community.esri.com/t5/arcgis-experience-builder-questions/trigger-pop-up-with-map-widget-s-interactive/td-p/1377202
... View more
02-01-2024
10:34 AM
|
1
|
0
|
561
|
POST
|
I was able to modify my copy of the 'arcgis-map' widget to dock the popup by default by updating the 'onJimuMapViewCreated' function in v1.13. To change the location of the docked popup update the "position" attribute. onJimuMapViewCreated = (jimuMapView: JimuMapView) => {
jimuMapView.setMapWidgetState(this.props.state)
this.setShowPopupUponSelectionForJimuMapView(jimuMapView)
// START CUSTOM CODE
console.log('onJimuMapViewCreated function loaded')
if (jimuMapView.view && jimuMapView.view.popup) {
// Modify the popup property to dock the popup by default
jimuMapView.view.popup.dockEnabled = true;
jimuMapView.view.popup.dockOptions = {
breakpoint: false,
position: "top-right"
};
} else {
console.error('MapView or Popup is not initialized');
}
// END CUSTOM CODE
}
... View more
01-17-2024
10:20 AM
|
1
|
0
|
1055
|
POST
|
The short answer is yes, this can all be done with the Python API. From the generalized workflow you describe: Preconfigure the data and app resources to create generic templates: e.g. a web map and Experience Builder app. Pull the data (e.g. Check a shared repository for new files or collect data using Survey123) Clone the templates and update the project data according to your customer preferences Republish as necessary (embed the iframe in a website) HTH
... View more
01-16-2024
11:08 AM
|
1
|
1
|
799
|
POST
|
I need to modify the popup to include a new element (could be a styled HTML table row) between the existing pagination action bar and the Title (see mockup with red/blue banner below). Can I modify the default popup's HTML container to include a new <div> element to display the banner incorporating JS and CSS? I am working in Experience Builder Developer v1.13 which incorporates extensive Calcite integration making access to custom styling of specific elements more challenging. Thanks!
... View more
01-15-2024
02:04 PM
|
1
|
0
|
505
|
POST
|
ExB Dev 1.13. Here is the widget.tsx code for a custom widget that restricts the map view /**
Licensing
Copyright 2022 Esri
Modified from 'map-view' sample code widget (JR, YH)
Map view widget that will restrict the map view to the minZoomScale specified and restrict panning to the original extent of the map
*/
import { React, jimuHistory, DataSourceComponent, type AllWidgetProps, type IMState, type IMUrlParameters } from 'jimu-core'
import MapView from 'esri/views/MapView'
import type WebMap from 'esri/WebMap'
import Extent from 'esri/geometry/Extent'
import Point from "@arcgis/core/geometry/Point.js";
import { MapViewManager, type WebMapDataSource } from 'jimu-arcgis'
// Bring the 'Home' and 'Scalebar' properties into the map
import Home from '@arcgis/core/widgets/Home';
import ScaleBar from '@arcgis/core/widgets/ScaleBar';
import Popup from "@arcgis/core/widgets/Popup.js";
// Alert component state
interface State {
isValidCenter: boolean;
}
// Not sure what the following does from the sample 'map-view' widget from which this code was modified queries the URL REST parameters for a mapview extent
interface ExtraProps {
queryObject: IMUrlParameters
}
// Set a minimum zoom scale to prevent user from zooming out beyond the valid extent
const minZoomScale = 6
export default class Widget extends React.PureComponent<AllWidgetProps<unknown> & ExtraProps, State> {
mapContainer = React.createRef<HTMLDivElement>()
mapView: MapView
webMap: WebMap
extentWatch: __esri.WatchHandle
mvManager: MapViewManager = MapViewManager.getInstance();
constructor(props) {
super(props);
this.state = {
isValidCenter: true, // Initialize state with default value
};
}
static mapExtraStateProps = (state: IMState): ExtraProps => {
return {
queryObject: state.queryObject
}
}
onDsCreated = (webmapDs: WebMapDataSource) => {
console.log("Webmap loaded")
if (!webmapDs) {
console.log("Webmap not initialized")
return
}
if (!this.mvManager.getJimuMapViewById(this.props.id)) {
const options: __esri.MapViewProperties = {
map: webmapDs.map,
container: this.mapContainer.current,
constraints:{
minZoom: minZoomScale,
snapToZoom: false
}
}
console.log("minZoom set:", minZoomScale)
this.mvManager.createJimuMapView({
mapWidgetId: this.props.id,
view: new MapView(options),
dataSourceId: webmapDs.id,
isActive: true,
mapViewManager: this.mvManager
}).then(jimuMapView => {
// Create and add the Home widget to the map view
const homeWidget = new Home({ view: jimuMapView.view });
jimuMapView.view.ui.add(homeWidget, 'top-left');
// Need to explictly cast the view to --esri.MapViewProperties
// to ensure type compatibility with the scalebar
const mapView = jimuMapView.view as __esri.MapViewProperties;
// Create and add the Scalebar widget to the map view
const scaleBarWidget = new ScaleBar({ view: mapView });
jimuMapView.view.ui.add(scaleBarWidget,'bottom-left')
//console.log(mapView.extent)
const view = jimuMapView.view as __esri.MapView;
const extentLimit = view.extent.clone();
view.constraints.geometry = extentLimit
})
}
}
mapNode = <div className="widget-map" style={{ width: '100%', height: '100%' }} ref={this.mapContainer}></div>
render () {
if (!this.props.useDataSources || this.props.useDataSources.length === 0) {
return 'Select a webmap in the settings panel'
}
return <DataSourceComponent useDataSource={this.props.useDataSources[0]} onDataSourceCreated={this.onDsCreated}>
{this.mapNode}
</DataSourceComponent>
}
}
... View more
12-14-2023
09:05 AM
|
0
|
0
|
603
|
POST
|
Note, in ExB Dev v1.13 there is extensive application of the Calcite Design Framework that encapsulates a lot of the UI elements which improves the integration but also makes it more challenging to access specific elements. e.g. the above solution doesn't work.
... View more
12-14-2023
08:36 AM
|
0
|
2
|
802
|
POST
|
There are two approaches: In ArcGIS Pro, publish the web map setting a Map frame constraint In ExB Dev there is a custom 'map-view' widget in the Sample Code repository. With the ArcGIS API for JavaScript you can modify the map view property (code example) to the intial default extent of the web map and set a minZoomScale property. This video provides a great demo: https://www.youtube.com/watch?v=aVjtFKkF9q8
... View more
11-23-2023
09:36 AM
|
0
|
1
|
661
|
Title | Kudos | Posted |
---|---|---|
1 | 01-17-2024 10:20 AM | |
1 | 09-09-2021 09:10 AM | |
4 | 02-07-2024 10:31 AM | |
1 | 02-01-2024 10:34 AM | |
1 | 01-16-2024 11:08 AM |
Online Status |
Offline
|
Date Last Visited |
Saturday
|