@esri/solutions-components 0.8.7 → 0.8.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/t9n/crowdsource-reporter/resources.json +3 -1
- package/dist/assets/t9n/crowdsource-reporter/resources_en.json +3 -1
- package/dist/cjs/{calcite-action-menu_2.cjs.entry.js → calcite-action-menu_3.cjs.entry.js} +114 -7
- package/dist/cjs/calcite-alert_4.cjs.entry.js +46 -5
- package/dist/cjs/{calcite-input-date-picker_3.cjs.entry.js → calcite-block_5.cjs.entry.js} +691 -13
- package/dist/cjs/{calcite-combobox_5.cjs.entry.js → calcite-combobox_3.cjs.entry.js} +876 -844
- package/dist/cjs/calcite-dropdown_4.cjs.entry.js +1023 -0
- package/dist/cjs/{calcite-flow_5.cjs.entry.js → calcite-flow_6.cjs.entry.js} +327 -2
- package/dist/cjs/card-manager_3.cjs.entry.js +5 -5
- package/dist/cjs/crowdsource-manager.cjs.entry.js +5 -1
- package/dist/cjs/crowdsource-reporter.cjs.entry.js +122 -23
- package/dist/cjs/{downloadUtils-8b05d7cc.js → downloadUtils-dc349b1a.js} +2 -2
- package/dist/cjs/{index.es-e7587227.js → index.es-1830a1e6.js} +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/map-select-tools_3.cjs.entry.js +8 -8
- package/dist/cjs/{mapViewUtils-3e0fa457.js → mapViewUtils-9dc05308.js} +11 -5
- package/dist/cjs/public-notification.cjs.entry.js +2 -2
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/create-feature/create-feature.js +18 -0
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +72 -0
- package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.css +16 -0
- package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +155 -71
- package/dist/collection/components/feature-details/feature-details.css +18 -0
- package/dist/collection/components/feature-details/feature-details.js +500 -0
- package/dist/collection/components/feature-details/test/feature-details.e2e.js +14 -0
- package/dist/collection/components/feature-details/test/feature-details.spec.js +22 -0
- package/dist/collection/components/feature-list/feature-list.js +14 -1
- package/dist/collection/components/info-card/info-card.css +15 -5
- package/dist/collection/components/info-card/info-card.js +178 -5
- package/dist/collection/components/layer-table/layer-table.js +2 -2
- package/dist/collection/components/map-card/map-card.js +1 -1
- package/dist/collection/components/map-select-tools/map-select-tools.js +5 -5
- package/dist/collection/components/refine-selection/refine-selection.js +1 -1
- package/dist/collection/demos/crowdsource-reporter.html +115 -1
- package/dist/collection/utils/interfaces.ts +4 -4
- package/dist/collection/utils/mapViewUtils.js +11 -5
- package/dist/collection/utils/mapViewUtils.ts +13 -5
- package/dist/components/create-feature2.js +4 -0
- package/dist/components/crowdsource-manager.js +8 -0
- package/dist/components/crowdsource-reporter.js +270 -85
- package/dist/components/feature-details.d.ts +11 -0
- package/dist/components/feature-details.js +11 -0
- package/dist/components/feature-details2.js +449 -0
- package/dist/components/feature-list2.js +14 -1
- package/dist/components/info-card2.js +53 -5
- package/dist/components/layer-table2.js +2 -2
- package/dist/components/map-card2.js +1 -1
- package/dist/components/map-select-tools2.js +5 -5
- package/dist/components/mapViewUtils.js +11 -5
- package/dist/components/refine-selection2.js +1 -1
- package/dist/esm/{calcite-action-menu_2.entry.js → calcite-action-menu_3.entry.js} +118 -12
- package/dist/esm/calcite-alert_4.entry.js +46 -5
- package/dist/esm/{calcite-input-date-picker_3.entry.js → calcite-block_5.entry.js} +688 -12
- package/dist/esm/{calcite-combobox_5.entry.js → calcite-combobox_3.entry.js} +878 -844
- package/dist/esm/calcite-date-picker-day_3.entry.js +1 -1
- package/dist/esm/calcite-dropdown_4.entry.js +1016 -0
- package/dist/esm/{calcite-flow_5.entry.js → calcite-flow_6.entry.js} +327 -3
- package/dist/esm/card-manager_3.entry.js +5 -5
- package/dist/esm/crowdsource-manager.entry.js +5 -1
- package/dist/esm/crowdsource-reporter.entry.js +122 -23
- package/dist/esm/{date-5630530d.js → date-0c026a8b.js} +1 -1
- package/dist/esm/{downloadUtils-0c1e4d7b.js → downloadUtils-df4f21f6.js} +2 -2
- package/dist/esm/{index.es-286e3cfa.js → index.es-904fb846.js} +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/map-select-tools_3.entry.js +8 -8
- package/dist/esm/{mapViewUtils-253178f1.js → mapViewUtils-2ec19fb0.js} +11 -5
- package/dist/esm/public-notification.entry.js +2 -2
- package/dist/esm/solutions-components.js +1 -1
- package/dist/solutions-components/demos/crowdsource-reporter.html +115 -1
- package/dist/solutions-components/{p-813fd8a4.entry.js → p-29f518fd.entry.js} +2 -2
- package/dist/solutions-components/p-452fd697.entry.js +6 -0
- package/dist/solutions-components/p-511b1c91.entry.js +23 -0
- package/dist/solutions-components/p-577efb16.js +36 -0
- package/dist/solutions-components/{p-94de9279.js → p-5817d78c.js} +1 -1
- package/dist/solutions-components/p-602cd811.entry.js +17 -0
- package/dist/solutions-components/{p-15f9624a.entry.js → p-6557b703.entry.js} +1 -1
- package/dist/solutions-components/p-7269c49b.entry.js +6 -0
- package/dist/solutions-components/p-760bd17e.entry.js +6 -0
- package/dist/solutions-components/p-95fea07a.entry.js +17 -0
- package/dist/solutions-components/{p-212b02e7.js → p-ae4d86e8.js} +1 -1
- package/dist/solutions-components/{p-038fcd93.entry.js → p-c273ab7a.entry.js} +1 -1
- package/dist/solutions-components/p-d742b915.entry.js +29 -0
- package/dist/solutions-components/p-dfad61a8.entry.js +24 -0
- package/dist/solutions-components/{p-331b5d1e.js → p-fca434c8.js} +2 -2
- package/dist/solutions-components/p-fd82a00f.entry.js +6 -0
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/interfaces.ts +4 -4
- package/dist/solutions-components/utils/mapViewUtils.ts +13 -5
- package/dist/types/components/create-feature/create-feature.d.ts +4 -4
- package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +16 -0
- package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +91 -18
- package/dist/types/components/feature-details/feature-details.d.ts +151 -0
- package/dist/types/components/feature-list/feature-list.d.ts +6 -0
- package/dist/types/components/info-card/info-card.d.ts +33 -1
- package/dist/types/components.d.ts +161 -28
- package/dist/types/preact.d.ts +6 -1
- package/dist/types/utils/interfaces.d.ts +4 -4
- package/dist/types/utils/mapViewUtils.d.ts +5 -3
- package/package.json +1 -1
- package/dist/cjs/calcite-block_2.cjs.entry.js +0 -652
- package/dist/cjs/calcite-graph_2.cjs.entry.js +0 -1055
- package/dist/cjs/calcite-scrim.cjs.entry.js +0 -125
- package/dist/cjs/utils-7bc7f595.js +0 -64
- package/dist/esm/calcite-block_2.entry.js +0 -647
- package/dist/esm/calcite-graph_2.entry.js +0 -1050
- package/dist/esm/calcite-scrim.entry.js +0 -121
- package/dist/esm/utils-9fb4104a.js +0 -61
- package/dist/solutions-components/p-04c37d69.entry.js +0 -17
- package/dist/solutions-components/p-0b92e4b1.entry.js +0 -11
- package/dist/solutions-components/p-238d3b5f.entry.js +0 -6
- package/dist/solutions-components/p-3af79063.js +0 -36
- package/dist/solutions-components/p-6db185bf.entry.js +0 -6
- package/dist/solutions-components/p-80b11ec1.entry.js +0 -17
- package/dist/solutions-components/p-aec06ce4.entry.js +0 -18
- package/dist/solutions-components/p-bfdf89c2.js +0 -11
- package/dist/solutions-components/p-c4ff3b52.entry.js +0 -17
- package/dist/solutions-components/p-ced067bd.entry.js +0 -17
- package/dist/solutions-components/p-d136eab0.entry.js +0 -23
- package/dist/solutions-components/p-e0446d5b.entry.js +0 -6
- package/dist/solutions-components/p-e8f13354.entry.js +0 -6
|
@@ -207,7 +207,7 @@ const MapSelectTools = /*@__PURE__*/ proxyCustomElement(class MapSelectTools ext
|
|
|
207
207
|
* Renders the component.
|
|
208
208
|
*/
|
|
209
209
|
render() {
|
|
210
|
-
return (h(Host, null, this._getMapLayerPicker(), h("div", { class: "border-bottom" }), h("div", { class: "padding-top-sides-1" }, h("div", { class: "search-widget", ref: (el) => { this._searchElement = el; } }), h("div", { class: "padding-top-1" }, h("map-draw-tools", { active: true, editGraphicsEnabled: !this._useLayerFeaturesEnabled, graphics: this._graphics, mapView: this.mapView, onSketchGraphicsChange: (evt) => this._sketchGraphicsChanged(evt), pointSymbol: this.sketchPointSymbol, polygonSymbol: this.sketchPolygonSymbol, polylineSymbol: this.sketchLineSymbol, ref: (el) => { this._drawTools = el; } })), this._getBufferOptions(), this._getUseLayerFeaturesOptions(), this._getNumSelected()), h("div", { class: "border-bottom" }), this._getNameInput()));
|
|
210
|
+
return (h(Host, null, this._getMapLayerPicker(), h("div", { class: "border-bottom" }), h("div", { class: "padding-top-sides-1" }, h("div", { class: "search-widget", ref: (el) => { this._searchElement = el; } }), h("div", { class: "padding-top-1" }, h("map-draw-tools", { active: true, editGraphicsEnabled: !this._useLayerFeaturesEnabled, graphics: this._graphics, mapView: this.mapView, onSketchGraphicsChange: (evt) => void this._sketchGraphicsChanged(evt), pointSymbol: this.sketchPointSymbol, polygonSymbol: this.sketchPolygonSymbol, polylineSymbol: this.sketchLineSymbol, ref: (el) => { this._drawTools = el; } })), this._getBufferOptions(), this._getUseLayerFeaturesOptions(), this._getNumSelected()), h("div", { class: "border-bottom" }), this._getNameInput()));
|
|
211
211
|
}
|
|
212
212
|
/**
|
|
213
213
|
* Renders the buffer tools component.
|
|
@@ -216,7 +216,7 @@ const MapSelectTools = /*@__PURE__*/ proxyCustomElement(class MapSelectTools ext
|
|
|
216
216
|
var _a, _b;
|
|
217
217
|
const showBufferToolsClass = this._searchDistanceEnabled ? "search-distance" : "div-not-visible";
|
|
218
218
|
const bufferDistance = typeof ((_a = this.selectionSet) === null || _a === void 0 ? void 0 : _a.distance) === "number" ? this.selectionSet.distance : this.defaultBufferDistance;
|
|
219
|
-
return (h("div", null, h("div", { class: "padding-top-1 display-flex" }, h("calcite-label", { class: "label-margin-0 w-100", layout: "inline-space-between" }, h("div", { class: "tooltip-container" }, this._translations.searchDistance, h("calcite-icon", { class: "padding-start-1-2 icon", icon: "question", id: "search-distance-icon", scale: "s" }))), h("calcite-popover", { closable: true, label: "", referenceElement: "search-distance-icon" }, h("span", { class: "tooltip-message" }, this._translations.useSearchDistanceTootip)), h("calcite-switch", { checked: this._searchDistanceEnabled, onCalciteSwitchChange: () => this._searchDistanceEnabled = !this._searchDistanceEnabled })), h("div", { class: showBufferToolsClass }, h("buffer-tools", { disabled: !this._searchDistanceEnabled, distance: bufferDistance, geometries: this.geometries, onBufferComplete: (evt) => this._bufferComplete(evt), ref: (el) => this._bufferTools = el, unit: ((_b = this.selectionSet) === null || _b === void 0 ? void 0 : _b.unit) || this.defaultBufferUnit }))));
|
|
219
|
+
return (h("div", null, h("div", { class: "padding-top-1 display-flex" }, h("calcite-label", { class: "label-margin-0 w-100", layout: "inline-space-between" }, h("div", { class: "tooltip-container" }, this._translations.searchDistance, h("calcite-icon", { class: "padding-start-1-2 icon", icon: "question", id: "search-distance-icon", scale: "s" }))), h("calcite-popover", { closable: true, label: "", referenceElement: "search-distance-icon" }, h("span", { class: "tooltip-message" }, this._translations.useSearchDistanceTootip)), h("calcite-switch", { checked: this._searchDistanceEnabled, onCalciteSwitchChange: () => this._searchDistanceEnabled = !this._searchDistanceEnabled })), h("div", { class: showBufferToolsClass }, h("buffer-tools", { disabled: !this._searchDistanceEnabled, distance: bufferDistance, geometries: this.geometries, onBufferComplete: (evt) => void this._bufferComplete(evt), ref: (el) => this._bufferTools = el, unit: ((_b = this.selectionSet) === null || _b === void 0 ? void 0 : _b.unit) || this.defaultBufferUnit }))));
|
|
220
220
|
}
|
|
221
221
|
/**
|
|
222
222
|
* Renders the map layer picker component.
|
|
@@ -252,7 +252,7 @@ const MapSelectTools = /*@__PURE__*/ proxyCustomElement(class MapSelectTools ext
|
|
|
252
252
|
* @protected
|
|
253
253
|
*/
|
|
254
254
|
_getMapLayerPicker() {
|
|
255
|
-
return (h("div", { class: "display-flex padding-sides-1 padding-bottom-1" }, h("calcite-label", { class: "font-bold width-full label-margin-0" }, this._translations.inputLayer, h("map-layer-picker", { enabledLayerIds: this.enabledLayerIds, mapView: this.mapView, onLayerSelectionChange: (evt) => this._inputLayerSelectionChange(evt), selectedIds: this.selectLayerView ? [this.selectLayerView.layer.id] : this.selectionSet ? [this.selectionSet.layerView.layer.id] : [], showTables: false }))));
|
|
255
|
+
return (h("div", { class: "display-flex padding-sides-1 padding-bottom-1" }, h("calcite-label", { class: "font-bold width-full label-margin-0" }, this._translations.inputLayer, h("map-layer-picker", { enabledLayerIds: this.enabledLayerIds, mapView: this.mapView, onLayerSelectionChange: (evt) => void this._inputLayerSelectionChange(evt), selectedIds: this.selectLayerView ? [this.selectLayerView.layer.id] : this.selectionSet ? [this.selectionSet.layerView.layer.id] : [], showTables: false }))));
|
|
256
256
|
}
|
|
257
257
|
//--------------------------------------------------------------------------
|
|
258
258
|
//
|
|
@@ -324,7 +324,7 @@ const MapSelectTools = /*@__PURE__*/ proxyCustomElement(class MapSelectTools ext
|
|
|
324
324
|
});
|
|
325
325
|
this._selectionLabel = (_c = this.selectionSet) === null || _c === void 0 ? void 0 : _c.label;
|
|
326
326
|
if (!this._useLayerFeaturesEnabled) {
|
|
327
|
-
(_d = this._drawTools) === null || _d === void 0 ? void 0 : _d.updateGraphics();
|
|
327
|
+
await ((_d = this._drawTools) === null || _d === void 0 ? void 0 : _d.updateGraphics());
|
|
328
328
|
}
|
|
329
329
|
await goToSelection(this.selectionSet.selectedIds, this.selectionSet.layerView, this.mapView, false);
|
|
330
330
|
}
|
|
@@ -470,7 +470,7 @@ const MapSelectTools = /*@__PURE__*/ proxyCustomElement(class MapSelectTools ext
|
|
|
470
470
|
}
|
|
471
471
|
this._workflowType = this._useLayerFeaturesEnabled ? EWorkflowType.SELECT : EWorkflowType.SKETCH;
|
|
472
472
|
if (this._workflowType === EWorkflowType.SKETCH) {
|
|
473
|
-
this._drawTools.updateGraphics();
|
|
473
|
+
await this._drawTools.updateGraphics();
|
|
474
474
|
}
|
|
475
475
|
await this._updateLabel();
|
|
476
476
|
this._clearSearchWidget();
|
|
@@ -155,12 +155,13 @@ async function getAllLayers(mapView) {
|
|
|
155
155
|
* @param layerView the layer view to highlight
|
|
156
156
|
* @param mapView the map view used if updateExtent is true
|
|
157
157
|
* @param updateExtent optional (default false) boolean to indicate if we should zoom to the extent
|
|
158
|
+
* @param zoomToScale optional (default 0) zoomScale that individual points will use when zoomed to
|
|
158
159
|
*
|
|
159
160
|
* @returns Promise resolving with the highlight handle
|
|
160
161
|
*/
|
|
161
|
-
async function highlightFeatures(ids, layerView, mapView, updateExtent = false) {
|
|
162
|
+
async function highlightFeatures(ids, layerView, mapView, updateExtent = false, zoomToScale = 0) {
|
|
162
163
|
if (updateExtent) {
|
|
163
|
-
await goToSelection(ids, layerView, mapView, false);
|
|
164
|
+
await goToSelection(ids, layerView, mapView, false, undefined, zoomToScale);
|
|
164
165
|
//wait for sometime to load the feature in layerView then only the highlight will work
|
|
165
166
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
166
167
|
}
|
|
@@ -246,13 +247,18 @@ async function flashSelection(ids, layerView, featureEffect) {
|
|
|
246
247
|
* @param layerView the layer view that contains the OIDs
|
|
247
248
|
* @param mapView the map view to show the extent change
|
|
248
249
|
* @param flashFeatures optional (default true) boolean to indicate if we should flash the features
|
|
249
|
-
*
|
|
250
|
+
* @param featureEffect optional (default undefined) feature effect when flashing the features
|
|
251
|
+
* @param zoomToScale optional (default to 0) zoomScale that individual points will use when zoomed to
|
|
250
252
|
* @returns Promise resolving when the operation is complete
|
|
251
253
|
*
|
|
252
254
|
*/
|
|
253
|
-
async function goToSelection(ids, layerView, mapView, flashFeatures = true, featureEffect = undefined) {
|
|
255
|
+
async function goToSelection(ids, layerView, mapView, flashFeatures = true, featureEffect = undefined, zoomToScale = 0) {
|
|
254
256
|
const result = await queryExtent(ids, layerView.layer);
|
|
255
|
-
|
|
257
|
+
const goToParams = { target: result.extent };
|
|
258
|
+
if (result.count === 1 && layerView.layer.geometryType === 'point' && zoomToScale) {
|
|
259
|
+
goToParams.scale = zoomToScale;
|
|
260
|
+
}
|
|
261
|
+
await mapView.goTo(goToParams);
|
|
256
262
|
if (flashFeatures) {
|
|
257
263
|
await flashSelection(ids, layerView, featureEffect);
|
|
258
264
|
}
|
|
@@ -313,7 +313,7 @@ const RefineSelection = /*@__PURE__*/ proxyCustomElement(class RefineSelection e
|
|
|
313
313
|
});
|
|
314
314
|
const oids = Array.isArray(graphics) ? graphics.map(g => { var _a; return g.attributes[(_a = g === null || g === void 0 ? void 0 : g.layer) === null || _a === void 0 ? void 0 : _a.objectIdField]; }) : [];
|
|
315
315
|
await this._updateIds(oids, this._selectionMode, this._refineSelectionSet.undoStack, this._refineLayer);
|
|
316
|
-
this._drawTools.clear();
|
|
316
|
+
void this._drawTools.clear();
|
|
317
317
|
}
|
|
318
318
|
/**
|
|
319
319
|
* Highlight any selected features in the map
|
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { r as registerInstance, c as createEvent, h, F as Fragment, g as getElement, f as forceUpdate, H as Host } from './index-164d485a.js';
|
|
7
7
|
import { g as getRoundRobinIndex } from './array-396bdf3c.js';
|
|
8
|
-
import { t as toAriaBoolean, i as isPrimaryPointerButton, e as focusElement, f as focusFirstTabbable, q as queryElementRoots } from './dom-38c6f027.js';
|
|
8
|
+
import { t as toAriaBoolean, i as isPrimaryPointerButton, e as focusElement, f as focusFirstTabbable, q as queryElementRoots, D as slotChangeHasContent } from './dom-38c6f027.js';
|
|
9
9
|
import { g as guid } from './guid-b75a5f7b.js';
|
|
10
10
|
import { i as isActivationKey } from './key-c83d835f.js';
|
|
11
11
|
import { s as setUpLoadableComponent, a as setComponentLoaded, c as componentFocusable } from './loadable-37e7fbd6.js';
|
|
12
|
-
import { a as activeAttr, C as CSS$
|
|
12
|
+
import { a as activeAttr, C as CSS$2, I as ICONS, S as SLOTS } from './resources-20074cb1.js';
|
|
13
13
|
import { f as filterComputedPlacements, c as connectFloatingUI, b as defaultOffsetDistance, a as disconnectFloatingUI, r as reposition, F as FloatingCSS } from './floating-ui-41dfe3f1.js';
|
|
14
14
|
import { d as deactivateFocusTrap, a as activateFocusTrap, c as connectFocusTrap, u as updateFocusTrapElements } from './focusTrapComponent-47ddce58.js';
|
|
15
15
|
import { o as onToggleOpenCloseComponent } from './openCloseComponent-9f90f493.js';
|
|
@@ -272,7 +272,7 @@ const ActionMenu = class {
|
|
|
272
272
|
}
|
|
273
273
|
renderMenuButton() {
|
|
274
274
|
const { appearance, label, scale, expanded } = this;
|
|
275
|
-
const menuButtonSlot = (h("slot", { name: SLOTS.trigger, onSlotchange: this.setMenuButtonEl }, h("calcite-action", { appearance: appearance, class: CSS$
|
|
275
|
+
const menuButtonSlot = (h("slot", { name: SLOTS.trigger, onSlotchange: this.setMenuButtonEl }, h("calcite-action", { appearance: appearance, class: CSS$2.defaultTrigger, icon: ICONS.menu, scale: scale, text: label, textEnabled: expanded,
|
|
276
276
|
// eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)
|
|
277
277
|
ref: this.setDefaultMenuButtonEl })));
|
|
278
278
|
return menuButtonSlot;
|
|
@@ -281,7 +281,7 @@ const ActionMenu = class {
|
|
|
281
281
|
const { actionElements, activeMenuItemIndex, open, menuId, menuButtonEl, label, placement, overlayPositioning, flipPlacements, } = this;
|
|
282
282
|
const activeAction = actionElements[activeMenuItemIndex];
|
|
283
283
|
const activeDescendantId = (activeAction === null || activeAction === void 0 ? void 0 : activeAction.id) || null;
|
|
284
|
-
return (h("calcite-popover", { autoClose: true, flipPlacements: flipPlacements, focusTrapDisabled: true, label: label, offsetDistance: 0, onCalcitePopoverClose: this.handlePopoverClose, onCalcitePopoverOpen: this.handlePopoverOpen, open: open, overlayPositioning: overlayPositioning, placement: placement, pointerDisabled: true, referenceElement: menuButtonEl }, h("div", { "aria-activedescendant": activeDescendantId, "aria-labelledby": menuButtonEl === null || menuButtonEl === void 0 ? void 0 : menuButtonEl.id, class: CSS$
|
|
284
|
+
return (h("calcite-popover", { autoClose: true, flipPlacements: flipPlacements, focusTrapDisabled: true, label: label, offsetDistance: 0, onCalcitePopoverClose: this.handlePopoverClose, onCalcitePopoverOpen: this.handlePopoverOpen, open: open, overlayPositioning: overlayPositioning, placement: placement, pointerDisabled: true, referenceElement: menuButtonEl }, h("div", { "aria-activedescendant": activeDescendantId, "aria-labelledby": menuButtonEl === null || menuButtonEl === void 0 ? void 0 : menuButtonEl.id, class: CSS$2.menu, id: menuId, onClick: this.handleCalciteActionClick, role: "menu", tabIndex: -1 }, h("slot", { onSlotchange: this.handleDefaultSlotChange }))));
|
|
285
285
|
}
|
|
286
286
|
render() {
|
|
287
287
|
return (h(Fragment, null, this.renderMenuButton(), this.renderMenuItems(), h("slot", { name: SLOTS.tooltip, onSlotchange: this.updateTooltip })));
|
|
@@ -303,7 +303,7 @@ ActionMenu.style = actionMenuCss;
|
|
|
303
303
|
* See https://github.com/Esri/calcite-design-system/blob/main/LICENSE.md for details.
|
|
304
304
|
* v2.4.0
|
|
305
305
|
*/
|
|
306
|
-
const CSS = {
|
|
306
|
+
const CSS$1 = {
|
|
307
307
|
container: "container",
|
|
308
308
|
imageContainer: "image-container",
|
|
309
309
|
closeButtonContainer: "close-button-container",
|
|
@@ -646,14 +646,14 @@ const Popover = class {
|
|
|
646
646
|
// --------------------------------------------------------------------------
|
|
647
647
|
renderCloseButton() {
|
|
648
648
|
const { messages, closable } = this;
|
|
649
|
-
return closable ? (h("div", { class: CSS.closeButtonContainer, key: CSS.closeButtonContainer }, h("calcite-action", { appearance: "transparent", class: CSS.closeButton, onClick: this.hide, scale: this.scale, text: messages.close,
|
|
649
|
+
return closable ? (h("div", { class: CSS$1.closeButtonContainer, key: CSS$1.closeButtonContainer }, h("calcite-action", { appearance: "transparent", class: CSS$1.closeButton, onClick: this.hide, scale: this.scale, text: messages.close,
|
|
650
650
|
// eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)
|
|
651
651
|
ref: (closeButtonEl) => (this.closeButtonEl = closeButtonEl) }, h("calcite-icon", { icon: "x", scale: getIconScale(this.scale) })))) : null;
|
|
652
652
|
}
|
|
653
653
|
renderHeader() {
|
|
654
654
|
const { heading, headingLevel } = this;
|
|
655
|
-
const headingNode = heading ? (h(Heading, { class: CSS.heading, level: headingLevel }, heading)) : null;
|
|
656
|
-
return headingNode ? (h("div", { class: CSS.header, key: CSS.header }, headingNode, this.renderCloseButton())) : null;
|
|
655
|
+
const headingNode = heading ? (h(Heading, { class: CSS$1.heading, level: headingLevel }, heading)) : null;
|
|
656
|
+
return headingNode ? (h("div", { class: CSS$1.header, key: CSS$1.header }, headingNode, this.renderCloseButton())) : null;
|
|
657
657
|
}
|
|
658
658
|
render() {
|
|
659
659
|
const { effectiveReferenceElement, heading, label, open, pointerDisabled, floatingLayout } = this;
|
|
@@ -668,9 +668,9 @@ const Popover = class {
|
|
|
668
668
|
},
|
|
669
669
|
// eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)
|
|
670
670
|
ref: this.setTransitionEl }, arrowNode, h("div", { class: {
|
|
671
|
-
[CSS.hasHeader]: !!heading,
|
|
672
|
-
[CSS.container]: true,
|
|
673
|
-
} }, this.renderHeader(), h("div", { class: CSS.content }, h("slot", null)), !heading ? this.renderCloseButton() : null))));
|
|
671
|
+
[CSS$1.hasHeader]: !!heading,
|
|
672
|
+
[CSS$1.container]: true,
|
|
673
|
+
} }, this.renderHeader(), h("div", { class: CSS$1.content }, h("slot", null)), !heading ? this.renderCloseButton() : null))));
|
|
674
674
|
}
|
|
675
675
|
static get assetsDirs() { return ["assets"]; }
|
|
676
676
|
get el() { return getElement(this); }
|
|
@@ -689,4 +689,110 @@ const Popover = class {
|
|
|
689
689
|
};
|
|
690
690
|
Popover.style = popoverCss;
|
|
691
691
|
|
|
692
|
-
|
|
692
|
+
/*!
|
|
693
|
+
* All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
694
|
+
* See https://github.com/Esri/calcite-design-system/blob/main/LICENSE.md for details.
|
|
695
|
+
* v2.4.0
|
|
696
|
+
*/
|
|
697
|
+
const CSS = {
|
|
698
|
+
scrim: "scrim",
|
|
699
|
+
content: "content",
|
|
700
|
+
};
|
|
701
|
+
const BREAKPOINTS = {
|
|
702
|
+
s: 72,
|
|
703
|
+
// medium is assumed default.
|
|
704
|
+
l: 480, // Greater than or equal to 480px.
|
|
705
|
+
};
|
|
706
|
+
|
|
707
|
+
const scrimCss = ":host{--calcite-scrim-background:var(--calcite-color-transparent-scrim);position:absolute;inset:0px;z-index:var(--calcite-z-index-overlay);display:flex;block-size:100%;inline-size:100%;flex-direction:column;align-items:stretch}@keyframes calcite-scrim-fade-in{0%{--tw-bg-opacity:0}100%{--tw-text-opacity:1}}.scrim{position:absolute;inset:0px;display:flex;flex-direction:column;align-content:center;align-items:center;justify-content:center;overflow:hidden;animation:calcite-scrim-fade-in var(--calcite-internal-animation-timing-medium) ease-in-out;background-color:var(--calcite-scrim-background, var(--calcite-color-transparent-scrim))}.content{padding:1rem}:host([hidden]){display:none}[hidden]{display:none}";
|
|
708
|
+
|
|
709
|
+
const Scrim = class {
|
|
710
|
+
constructor(hostRef) {
|
|
711
|
+
registerInstance(this, hostRef);
|
|
712
|
+
this.resizeObserver = createObserver("resize", () => this.handleResize());
|
|
713
|
+
// --------------------------------------------------------------------------
|
|
714
|
+
//
|
|
715
|
+
// Private Methods
|
|
716
|
+
//
|
|
717
|
+
// --------------------------------------------------------------------------
|
|
718
|
+
this.handleDefaultSlotChange = (event) => {
|
|
719
|
+
this.hasContent = slotChangeHasContent(event);
|
|
720
|
+
};
|
|
721
|
+
this.storeLoaderEl = (el) => {
|
|
722
|
+
this.loaderEl = el;
|
|
723
|
+
this.handleResize();
|
|
724
|
+
};
|
|
725
|
+
this.loading = false;
|
|
726
|
+
this.messages = undefined;
|
|
727
|
+
this.messageOverrides = undefined;
|
|
728
|
+
this.loaderScale = undefined;
|
|
729
|
+
this.defaultMessages = undefined;
|
|
730
|
+
this.effectiveLocale = "";
|
|
731
|
+
this.hasContent = false;
|
|
732
|
+
}
|
|
733
|
+
onMessagesChange() {
|
|
734
|
+
/* wired up by t9n util */
|
|
735
|
+
}
|
|
736
|
+
effectiveLocaleChange() {
|
|
737
|
+
updateMessages(this, this.effectiveLocale);
|
|
738
|
+
}
|
|
739
|
+
//--------------------------------------------------------------------------
|
|
740
|
+
//
|
|
741
|
+
// Lifecycle
|
|
742
|
+
//
|
|
743
|
+
//--------------------------------------------------------------------------
|
|
744
|
+
connectedCallback() {
|
|
745
|
+
var _a;
|
|
746
|
+
connectLocalized(this);
|
|
747
|
+
connectMessages(this);
|
|
748
|
+
(_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.observe(this.el);
|
|
749
|
+
}
|
|
750
|
+
async componentWillLoad() {
|
|
751
|
+
await setUpMessages(this);
|
|
752
|
+
}
|
|
753
|
+
disconnectedCallback() {
|
|
754
|
+
var _a;
|
|
755
|
+
disconnectLocalized(this);
|
|
756
|
+
disconnectMessages(this);
|
|
757
|
+
(_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
758
|
+
}
|
|
759
|
+
// --------------------------------------------------------------------------
|
|
760
|
+
//
|
|
761
|
+
// Render Method
|
|
762
|
+
//
|
|
763
|
+
// --------------------------------------------------------------------------
|
|
764
|
+
render() {
|
|
765
|
+
const { hasContent, loading, messages } = this;
|
|
766
|
+
return (h("div", { class: CSS.scrim }, loading ? (h("calcite-loader", { label: messages.loading, scale: this.loaderScale,
|
|
767
|
+
// eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)
|
|
768
|
+
ref: this.storeLoaderEl })) : null, h("div", { class: CSS.content, hidden: !hasContent }, h("slot", { onSlotchange: this.handleDefaultSlotChange }))));
|
|
769
|
+
}
|
|
770
|
+
getScale(size) {
|
|
771
|
+
if (size < BREAKPOINTS.s) {
|
|
772
|
+
return "s";
|
|
773
|
+
}
|
|
774
|
+
else if (size >= BREAKPOINTS.l) {
|
|
775
|
+
return "l";
|
|
776
|
+
}
|
|
777
|
+
else {
|
|
778
|
+
return "m";
|
|
779
|
+
}
|
|
780
|
+
}
|
|
781
|
+
handleResize() {
|
|
782
|
+
var _a;
|
|
783
|
+
const { loaderEl, el } = this;
|
|
784
|
+
if (!loaderEl) {
|
|
785
|
+
return;
|
|
786
|
+
}
|
|
787
|
+
this.loaderScale = this.getScale((_a = Math.min(el.clientHeight, el.clientWidth)) !== null && _a !== void 0 ? _a : 0);
|
|
788
|
+
}
|
|
789
|
+
static get assetsDirs() { return ["assets"]; }
|
|
790
|
+
get el() { return getElement(this); }
|
|
791
|
+
static get watchers() { return {
|
|
792
|
+
"messageOverrides": ["onMessagesChange"],
|
|
793
|
+
"effectiveLocale": ["effectiveLocaleChange"]
|
|
794
|
+
}; }
|
|
795
|
+
};
|
|
796
|
+
Scrim.style = scrimCss;
|
|
797
|
+
|
|
798
|
+
export { ActionMenu as calcite_action_menu, Popover as calcite_popover, Scrim as calcite_scrim };
|
|
@@ -12,7 +12,7 @@ import { o as onToggleOpenCloseComponent } from './openCloseComponent-9f90f493.j
|
|
|
12
12
|
import { c as connectMessages, s as setUpMessages, d as disconnectMessages, u as updateMessages } from './t9n-436fb2b1.js';
|
|
13
13
|
import { K as KindIcons } from './resources-88a48c5c.js';
|
|
14
14
|
import { g as getLocaleComponentStrings, l as loadModules } from './locale-bcbea4ef.js';
|
|
15
|
-
import { a as getAllLayers } from './mapViewUtils-
|
|
15
|
+
import { a as getAllLayers } from './mapViewUtils-2ec19fb0.js';
|
|
16
16
|
import { P as PopupUtils } from './popupUtils-af124b47.js';
|
|
17
17
|
import './guid-b75a5f7b.js';
|
|
18
18
|
import './resources-8834f920.js';
|
|
@@ -664,7 +664,7 @@ const EditCard = class {
|
|
|
664
664
|
};
|
|
665
665
|
EditCard.style = editCardCss;
|
|
666
666
|
|
|
667
|
-
const infoCardCss = ":host{display:block;--calcite-label-margin-bottom:0}.padding-1-2{padding:0.5rem}.display-none{display:none !important}.display-flex{display:flex}.position-absolute{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto}.feature-node .esri-features__footer{display:none !important}.button-container{justify-content:
|
|
667
|
+
const infoCardCss = ":host{display:block;--calcite-label-margin-bottom:0}.padding-1-2{padding:0.5rem}.display-none{display:none !important}.display-flex{display:flex}.position-absolute{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto}.feature-node{position:relative !important}.feature-node .esri-features__footer{display:none !important}.button-container{justify-content:center;align-items:center}.top-border{border-top:1px solid var(--calcite-color-border-1)}.width-100{width:100%}.esri-features__container{padding:0.5rem !important;background-color:var(--calcite-color-foreground-1) !important;height:100% !important}.overflow-hidden{overflow:hidden}.height-40{height:40px}.end-border{border-inline-end:1px solid var(--calcite-color-border-1)}.font-bold{font-weight:bold}.visibility-hidden{visibility:hidden;height:0px}.padding-inline-start-1{padding-inline-start:1rem}.border-width-0{border-width:0px}.pagination-action{position:relative;left:3px}.pagination-count{color:var(--calcite-color-brand);border-bottom:1px solid var(--calcite-color-brand)}";
|
|
668
668
|
|
|
669
669
|
const InfoCard = class {
|
|
670
670
|
constructor(hostRef) {
|
|
@@ -678,6 +678,8 @@ const InfoCard = class {
|
|
|
678
678
|
this.zoomAndScrollToSelected = undefined;
|
|
679
679
|
this.allowEditing = true;
|
|
680
680
|
this.highlightEnabled = true;
|
|
681
|
+
this.paginationEnabled = true;
|
|
682
|
+
this.position = 'absolute';
|
|
681
683
|
this._alertOpen = false;
|
|
682
684
|
this._count = "";
|
|
683
685
|
this._editRecordOpen = false;
|
|
@@ -723,6 +725,45 @@ const InfoCard = class {
|
|
|
723
725
|
async getSelectedFeature() {
|
|
724
726
|
return this._features.selectedFeature;
|
|
725
727
|
}
|
|
728
|
+
/**
|
|
729
|
+
* Get the current selected feature from the Features widget
|
|
730
|
+
* @returns Promise resolving with the current feature
|
|
731
|
+
*/
|
|
732
|
+
async refresh() {
|
|
733
|
+
await this.setGraphics();
|
|
734
|
+
}
|
|
735
|
+
/**
|
|
736
|
+
* Go to the previous feature in the features widget
|
|
737
|
+
*/
|
|
738
|
+
async back() {
|
|
739
|
+
this._features.previous();
|
|
740
|
+
this._count = this._getCount();
|
|
741
|
+
}
|
|
742
|
+
/**
|
|
743
|
+
* Go to the next feature in the features widget
|
|
744
|
+
*/
|
|
745
|
+
async next() {
|
|
746
|
+
this._features.next();
|
|
747
|
+
this._count = this._getCount();
|
|
748
|
+
}
|
|
749
|
+
/**
|
|
750
|
+
* Toggle the visibility of the features list view
|
|
751
|
+
*/
|
|
752
|
+
async toggleListView() {
|
|
753
|
+
this._showListView = !this._showListView;
|
|
754
|
+
const i = this._features.selectedFeatureIndex;
|
|
755
|
+
this._features.open({
|
|
756
|
+
features: this.graphics,
|
|
757
|
+
featureMenuOpen: this._showListView
|
|
758
|
+
});
|
|
759
|
+
this._features.selectedFeatureIndex = i;
|
|
760
|
+
}
|
|
761
|
+
/**
|
|
762
|
+
* update the current graphics to the features widget
|
|
763
|
+
*/
|
|
764
|
+
async updateCurrentGraphic(selectedGraphic) {
|
|
765
|
+
this._features.selectedFeatureWidget.graphic = selectedGraphic;
|
|
766
|
+
}
|
|
726
767
|
/**
|
|
727
768
|
* Respond to and close the edit record display
|
|
728
769
|
*
|
|
@@ -787,8 +828,8 @@ const InfoCard = class {
|
|
|
787
828
|
const id = (_d = (_c = this._features) === null || _c === void 0 ? void 0 : _c.selectedFeature) === null || _d === void 0 ? void 0 : _d.getObjectId();
|
|
788
829
|
const ids = parseInt(id === null || id === void 0 ? void 0 : id.toString(), 10) > -1 ? [id] : [];
|
|
789
830
|
const deleteEnabled = ((_e = this._layer) === null || _e === void 0 ? void 0 : _e.editingEnabled) && ((_h = (_g = (_f = this._layer) === null || _f === void 0 ? void 0 : _f.capabilities) === null || _g === void 0 ? void 0 : _g.operations) === null || _h === void 0 ? void 0 : _h.supportsDelete);
|
|
790
|
-
return (h(Host, null, h("calcite-shell",
|
|
791
|
-
h("div", { class: "display-flex top-border padding-1-2" }, h("calcite-button", { appearance: "solid", id: "solutions-edit", onClick: () => this._openEditRecord(), width: "full" }, this._translations.edit), this.isMobile && deleteEnabled ? (h("delete-button", { class: "padding-inline-start-1 width-100", id: "solutions-delete", ids: ids, layer: this._layer, onEditsComplete: () => this._closePopup() })) : undefined, h("calcite-tooltip", {
|
|
831
|
+
return (h(Host, null, h("calcite-shell", { style: { position: this.position } }, this._getHeader(), h("calcite-loader", { class: loadingClass, label: this._translations.fetchingData }), h("div", { class: "esri-widget feature-node " + featureNodeClass, id: "features-node" }), h("div", { class: `${editButtonClass} width-100`, slot: "footer" }, this.allowEditing &&
|
|
832
|
+
h("div", { class: "display-flex top-border padding-1-2" }, h("calcite-button", { appearance: "solid", id: "solutions-edit", onClick: () => this._openEditRecord(), width: "full" }, this._translations.edit), this.isMobile && deleteEnabled ? (h("delete-button", { class: "padding-inline-start-1 width-100", id: "solutions-delete", ids: ids, layer: this._layer, onEditsComplete: () => this._closePopup() })) : undefined, h("calcite-tooltip", { placement: "bottom", "reference-element": "solutions-edit" }, h("span", null, this._translations.edit)), this.isMobile ? (h("calcite-tooltip", { placement: "bottom", "reference-element": "solutions-delete" }, h("span", null, this._translations.delete))) : undefined), this.paginationEnabled && !nextBackDisabled && h("div", { class: `display-flex padding-1-2 button-container top-border ${nextBackClass}` }, h("div", null, h("calcite-button", { appearance: 'transparent', disabled: nextBackDisabled, iconStart: "chevron-left", id: "solutions-back", onClick: () => this._back(), width: "full" }), h("calcite-tooltip", { placement: "top", "reference-element": "solutions-back" }, h("span", null, this._translations.back))), h("calcite-action", { class: 'pagination-action', onClick: () => this._toggleListView(), scale: "s", text: "", textEnabled: true }, h("span", { class: "pagination-count" }, this._count)), h("div", null, h("calcite-button", { appearance: "transparent", disabled: nextBackDisabled, iconStart: "chevron-right", id: "solutions-next", onClick: () => this._next(), width: "full" }), h("calcite-tooltip", { placement: "top", "reference-element": "solutions-next" }, h("span", null, this._translations.next))))), h("edit-card", { class: editClass, graphicIndex: (_j = this._features) === null || _j === void 0 ? void 0 : _j.selectedFeatureIndex, graphics: this.graphics, mapView: this.mapView, open: this._editRecordOpen }), h("calcite-alert", { icon: "layer-broken", kind: "warning", label: "", onCalciteAlertClose: () => this._alertClosed(), open: this._alertOpen, placement: "top" }, h("div", { slot: "title" }, this._translations.editDisabled), h("div", { slot: "message" }, this._translations.enableEditing)))));
|
|
792
833
|
}
|
|
793
834
|
//--------------------------------------------------------------------------
|
|
794
835
|
//
|
|
@@ -863,7 +904,7 @@ const InfoCard = class {
|
|
|
863
904
|
if (this.zoomAndScrollToSelected) {
|
|
864
905
|
this.reactiveUtils.watch(() => this._features.selectedFeatureIndex, (i) => {
|
|
865
906
|
if (i > -1) {
|
|
866
|
-
this.selectionChanged.emit([this._features.selectedFeature]);
|
|
907
|
+
this.selectionChanged.emit({ selectedFeature: [this._features.selectedFeature], selectedFeatureIndex: this._features.selectedFeatureIndex });
|
|
867
908
|
}
|
|
868
909
|
});
|
|
869
910
|
}
|