@esri/solutions-components 0.10.35 → 0.10.37
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/cjs/basemap-gallery_7.cjs.entry.js +1 -0
- package/dist/cjs/calcite-action-pad_2.cjs.entry.js +2 -2
- package/dist/cjs/calcite-alert_5.cjs.entry.js +3 -3
- package/dist/cjs/calcite-block_5.cjs.entry.js +2 -2
- package/dist/cjs/card-manager_3.cjs.entry.js +2 -2
- package/dist/cjs/{constants-0a4fc296.js → constants-51cf394f.js} +57 -1
- package/dist/cjs/crowdsource-manager.cjs.entry.js +25 -29
- package/dist/cjs/{downloadUtils-20637f89.js → downloadUtils-76bc7e30.js} +6 -5
- package/dist/cjs/feature-list.cjs.entry.js +3 -3
- package/dist/cjs/{helpers-415179ad.js → helpers-afcac967.js} +1 -1
- package/dist/cjs/{index.es-a242cb45.js → index.es-8336efed.js} +2 -2
- package/dist/cjs/instant-apps-app-guide.cjs.entry.js +26 -13
- package/dist/cjs/instant-apps-export.cjs.entry.js +1086 -59
- package/dist/cjs/instant-apps-interactive-legend-classic.cjs.entry.js +8 -4
- package/dist/cjs/instant-apps-interactive-legend-count_2.cjs.entry.js +10 -5
- package/dist/cjs/instant-apps-interactive-legend-group-legend-element-caption.cjs.entry.js +1 -1
- package/dist/cjs/instant-apps-interactive-legend-group-legend-element_5.cjs.entry.js +52 -12
- package/dist/cjs/instant-apps-interactive-legend.cjs.entry.js +9 -3
- package/dist/cjs/instant-apps-landing-page.cjs.entry.js +19 -13
- package/dist/cjs/instant-apps-language-switcher.cjs.entry.js +3 -2
- package/dist/cjs/instant-apps-language-translator.cjs.entry.js +1 -1
- package/dist/cjs/instant-apps-measurement.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-popover.cjs.entry.js +1 -1
- package/dist/cjs/instant-apps-scoreboard.cjs.entry.js +1 -1
- package/dist/cjs/instant-apps-sign-in.cjs.entry.js +13 -9
- package/dist/cjs/instant-apps-splash.cjs.entry.js +1 -1
- package/dist/cjs/instant-apps-time-filter.cjs.entry.js +11 -9
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/map-select-tools_3.cjs.entry.js +2 -2
- package/dist/cjs/{popupUtils-d477705b.js → popupUtils-bc762034.js} +1 -1
- package/dist/cjs/public-notification.cjs.entry.js +2 -2
- package/dist/cjs/solution-item-accordion.cjs.entry.js +7 -3
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +27 -29
- package/dist/collection/components/map-legend/map-legend.js +1 -0
- package/dist/collection/components/solution-item-accordion/solution-item-accordion.js +7 -3
- package/dist/collection/demos/solution-item-accordion.html +32 -0
- package/dist/collection/utils/downloadUtils.js +5 -3
- package/dist/collection/utils/downloadUtils.ts +6 -3
- package/dist/collection/utils/test/downloadUtils.spec.tsx +10 -12
- package/dist/components/crowdsource-manager.js +26 -29
- package/dist/components/downloadUtils.js +5 -4
- package/dist/components/instant-apps-app-guide.js +28 -14
- package/dist/components/instant-apps-export.js +1119 -76
- package/dist/components/instant-apps-interactive-legend-classic2.js +8 -4
- package/dist/components/instant-apps-interactive-legend-count2.js +6 -3
- package/dist/components/instant-apps-interactive-legend-layer-element-caption2.js +5 -2
- package/dist/components/instant-apps-interactive-legend-legend-element-caption2.js +52 -12
- package/dist/components/instant-apps-interactive-legend.js +13 -4
- package/dist/components/instant-apps-landing-page.js +19 -13
- package/dist/components/instant-apps-language-switcher.js +3 -1
- package/dist/components/instant-apps-language-translator2.js +57 -1
- package/dist/components/instant-apps-measurement-tool2.js +2 -2
- package/dist/components/instant-apps-measurement.js +2 -2
- package/dist/components/instant-apps-popover.js +1 -1
- package/dist/components/instant-apps-scoreboard.js +1 -1
- package/dist/components/instant-apps-sign-in2.js +14 -9
- package/dist/components/instant-apps-social-share2.js +2 -2
- package/dist/components/instant-apps-splash.js +1 -1
- package/dist/components/instant-apps-time-filter.js +11 -9
- package/dist/components/map-legend2.js +1 -0
- package/dist/components/solution-item-accordion.js +7 -3
- package/dist/components/store.js +1 -1
- package/dist/esm/basemap-gallery_7.entry.js +1 -0
- package/dist/esm/calcite-action-pad_2.entry.js +2 -2
- package/dist/esm/calcite-alert_5.entry.js +3 -3
- package/dist/esm/calcite-block_5.entry.js +2 -2
- package/dist/esm/card-manager_3.entry.js +2 -2
- package/dist/esm/{constants-045d6a1b.js → constants-886c7c2c.js} +57 -1
- package/dist/esm/crowdsource-manager.entry.js +25 -29
- package/dist/esm/{downloadUtils-e266e98d.js → downloadUtils-bc7a4ba1.js} +6 -5
- package/dist/esm/feature-list.entry.js +3 -3
- package/dist/esm/{helpers-f9bf9c0b.js → helpers-91087955.js} +1 -1
- package/dist/esm/{index.es-c5f258e2.js → index.es-0d189a34.js} +2 -2
- package/dist/esm/instant-apps-app-guide.entry.js +26 -13
- package/dist/esm/instant-apps-export.entry.js +1086 -59
- package/dist/esm/instant-apps-interactive-legend-classic.entry.js +8 -4
- package/dist/esm/instant-apps-interactive-legend-count_2.entry.js +10 -5
- package/dist/esm/instant-apps-interactive-legend-group-legend-element-caption.entry.js +1 -1
- package/dist/esm/instant-apps-interactive-legend-group-legend-element_5.entry.js +52 -12
- package/dist/esm/instant-apps-interactive-legend.entry.js +9 -3
- package/dist/esm/instant-apps-landing-page.entry.js +19 -13
- package/dist/esm/instant-apps-language-switcher.entry.js +3 -2
- package/dist/esm/instant-apps-language-translator.entry.js +1 -1
- package/dist/esm/instant-apps-measurement.entry.js +2 -2
- package/dist/esm/instant-apps-popover.entry.js +1 -1
- package/dist/esm/instant-apps-scoreboard.entry.js +1 -1
- package/dist/esm/instant-apps-sign-in.entry.js +13 -9
- package/dist/esm/instant-apps-splash.entry.js +1 -1
- package/dist/esm/instant-apps-time-filter.entry.js +11 -9
- package/dist/esm/loader.js +1 -1
- package/dist/esm/map-select-tools_3.entry.js +2 -2
- package/dist/esm/{popupUtils-4570096e.js → popupUtils-03dc398a.js} +1 -1
- package/dist/esm/public-notification.entry.js +2 -2
- package/dist/esm/solution-item-accordion.entry.js +7 -3
- package/dist/esm/solutions-components.js +1 -1
- package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-app-guide/instant-apps-app-guide.css +0 -5
- package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-export/instant-apps-export.css +4 -0
- package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-interactive-legend/instant-apps-interactive-legend-classic/instant-apps-interactive-legend-classic.css +14 -0
- package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-interactive-legend/instant-apps-interactive-legend-count/instant-apps-interactive-legend-count.css +9 -0
- package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-interactive-legend/instant-apps-interactive-legend-layer-element-caption/instant-apps-interactive-legend-layer-element-caption.css +5 -3
- package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-interactive-legend/instant-apps-interactive-legend-legend-element-caption/instant-apps-interactive-legend-legend-element-caption.css +29 -0
- package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-landing-page/instant-apps-landing-page.css +8 -0
- package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-sign-in/instant-apps-sign-in.css +22 -0
- package/dist/solutions-components/demos/solution-item-accordion.html +32 -0
- package/dist/solutions-components/{p-cb3199f9.entry.js → p-04ab956c.entry.js} +1 -1
- package/dist/solutions-components/p-1e14b3d0.entry.js +6 -0
- package/dist/solutions-components/p-2542d5c9.entry.js +6 -0
- package/dist/solutions-components/{p-70ecc979.entry.js → p-374ddead.entry.js} +1 -1
- package/dist/solutions-components/{p-146acd9a.entry.js → p-3fc18283.entry.js} +1 -1
- package/dist/solutions-components/p-43699470.entry.js +6 -0
- package/dist/solutions-components/p-5585dcd3.entry.js +6 -0
- package/dist/solutions-components/{p-3a513c67.entry.js → p-5b3c0418.entry.js} +1 -1
- package/dist/solutions-components/{p-f7e7b830.entry.js → p-6438d1ea.entry.js} +1 -1
- package/dist/solutions-components/{p-a568af9f.js → p-6f606cdb.js} +1 -1
- package/dist/solutions-components/p-720de4db.entry.js +6 -0
- package/dist/solutions-components/p-750b3277.entry.js +6 -0
- package/dist/solutions-components/p-8779ee41.entry.js +6 -0
- package/dist/solutions-components/p-90fc786f.entry.js +6 -0
- package/dist/solutions-components/p-97fe6ec5.entry.js +6 -0
- package/dist/solutions-components/{p-43165ebd.entry.js → p-9c170b30.entry.js} +1 -1
- package/dist/solutions-components/{p-b4c49411.entry.js → p-9c4fef09.entry.js} +1 -1
- package/dist/solutions-components/p-a5b751e2.entry.js +6 -0
- package/dist/solutions-components/{p-89046451.entry.js → p-aac0c89c.entry.js} +1 -1
- package/dist/solutions-components/p-af573e0d.js +6 -0
- package/dist/solutions-components/p-bb8b1ee2.entry.js +6 -0
- package/dist/solutions-components/{p-b79f296d.entry.js → p-c48be45f.entry.js} +2 -2
- package/dist/solutions-components/p-ca3cbd29.entry.js +6 -0
- package/dist/solutions-components/p-cd482a33.js +21 -0
- package/dist/solutions-components/p-ceb1030b.js +6 -0
- package/dist/solutions-components/{p-b86b2664.entry.js → p-d2612c30.entry.js} +1 -1
- package/dist/solutions-components/{p-29047e77.entry.js → p-e1391389.entry.js} +1 -1
- package/dist/solutions-components/{p-588adf13.entry.js → p-e345f9c4.entry.js} +1 -1
- package/dist/solutions-components/p-f3b71784.entry.js +6 -0
- package/dist/solutions-components/{p-759d0beb.entry.js → p-f728af86.entry.js} +1 -1
- package/dist/solutions-components/{p-46c8015c.js → p-ff9e28d1.js} +30 -30
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/downloadUtils.ts +6 -3
- package/dist/solutions-components/utils/test/downloadUtils.spec.tsx +10 -12
- package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +4 -7
- package/package.json +8 -7
- package/dist/solutions-components/p-07a194e6.entry.js +0 -6
- package/dist/solutions-components/p-14d78748.entry.js +0 -6
- package/dist/solutions-components/p-2360802a.js +0 -21
- package/dist/solutions-components/p-24e3f09f.entry.js +0 -6
- package/dist/solutions-components/p-3a33ef72.entry.js +0 -6
- package/dist/solutions-components/p-402301cb.js +0 -6
- package/dist/solutions-components/p-41a6f03d.entry.js +0 -6
- package/dist/solutions-components/p-4db86c5e.entry.js +0 -6
- package/dist/solutions-components/p-5eb9a413.entry.js +0 -6
- package/dist/solutions-components/p-750f234e.entry.js +0 -6
- package/dist/solutions-components/p-7e97d4d6.entry.js +0 -6
- package/dist/solutions-components/p-7eb5d31a.js +0 -6
- package/dist/solutions-components/p-90d2aadc.entry.js +0 -6
- package/dist/solutions-components/p-b78a4ce7.entry.js +0 -6
- package/dist/solutions-components/p-ecf642c2.entry.js +0 -6
- package/dist/solutions-components/p-efb4cb43.entry.js +0 -6
@@ -142,6 +142,22 @@ export class CrowdsourceManager {
|
|
142
142
|
// Watch handlers
|
143
143
|
//
|
144
144
|
//--------------------------------------------------------------------------
|
145
|
+
/**
|
146
|
+
* Adjust layout based on current appLayout value
|
147
|
+
*/
|
148
|
+
appLayoutWatchHandler(newAppLayout, oldAppLayout) {
|
149
|
+
if (newAppLayout !== oldAppLayout) {
|
150
|
+
this._setActiveLayout(newAppLayout);
|
151
|
+
// update the layer if table selected while switching to map view
|
152
|
+
if (this.appLayout === "mapView" && this._layer.isTable) {
|
153
|
+
void this._mapCard.updateLayer();
|
154
|
+
}
|
155
|
+
if (this._isMapViewOnLoad) {
|
156
|
+
void this._layerTable.refresh();
|
157
|
+
this._isMapViewOnLoad = false;
|
158
|
+
}
|
159
|
+
}
|
160
|
+
}
|
145
161
|
/**
|
146
162
|
* When true the map zoom tools will be available
|
147
163
|
*/
|
@@ -210,7 +226,7 @@ export class CrowdsourceManager {
|
|
210
226
|
layer && await layer.when(() => {
|
211
227
|
// on render if no layer is present and only one table is present in map and app is in map view layer then change it to split layout
|
212
228
|
if (this._layerIds.length === 0 && this.appLayout === 'mapView' && layer.isTable) {
|
213
|
-
this.
|
229
|
+
this.appLayout = "splitView";
|
214
230
|
}
|
215
231
|
this._layer = layer;
|
216
232
|
this._initLayerExpressions();
|
@@ -243,7 +259,7 @@ export class CrowdsourceManager {
|
|
243
259
|
render() {
|
244
260
|
// only avoid border when we have a header color that is not white
|
245
261
|
const borderClass = this.popupHeaderColor && this.popupHeaderColor !== "#FFFFFF" ? "border-width-0" : "";
|
246
|
-
return (h(Host, { key: '
|
262
|
+
return (h(Host, { key: 'ace73bfa1aa7d460f1cba60d13e94c4f47f77bd0' }, h("calcite-shell", { key: 'f14e70be762bf236be566111b45e40a42f0997f7', class: "position-relative" }, h("calcite-panel", { key: '0dde9426295a780b6a12cd98513f655914c0dab5', class: `width-full height-full ${borderClass}`, loading: this._isLoading }, this._getBody(this._layoutMode, this._panelOpen, this._hideTable)), this._getFooter()), this._filterModal()));
|
247
263
|
}
|
248
264
|
/**
|
249
265
|
* Called after each render
|
@@ -476,10 +492,9 @@ export class CrowdsourceManager {
|
|
476
492
|
const cardManagerHeight = isTableLayout && this.mapInfos?.length > 1 ? "adjusted-height-100-51" : isMapLayout || isTableLayout ? "height-full" : (this._numSelected > 0 && !this._isMobile) ? "height-50" : !this._showInformationHeader ? "adjusted-height-50_25" : !this._isPortraitMobile ? "height-50" : "height-full";
|
477
493
|
const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light";
|
478
494
|
return (h("div", { class: `width-50 height-full ${themeClass}` }, h("card-manager", { class: `${cardManagerHeight} width-full`, customInfoText: this.customInfoText, enableCreateFeatures: this._enableCreateFeatures && !this._isMobile, enableEditGeometry: this?._mapInfo?.enableEditGeometry, isMobile: this._isPortraitMobile, layer: this._layer, mapView: this?._mapView, onBackFromCreateWorkFlow: () => {
|
479
|
-
this._changeLayout(this.appLayout);
|
480
495
|
this._showInformationHeader = true;
|
481
496
|
}, onCreateWorkFlowStarted: () => {
|
482
|
-
this.
|
497
|
+
this.appLayout = this._layer.isTable ? "tableView" : "mapView";
|
483
498
|
this._showInformationHeader = false;
|
484
499
|
}, onFeatureOrRecordSubmitted: () => void this._layerTable.refresh(), selectedFeaturesIds: this._layerTable?.selectedIds, selectingFeatureFromMap: this.appLayout === "mapView", zoomAndScrollToSelected: this.zoomAndScrollToSelected })));
|
485
500
|
}
|
@@ -517,7 +532,7 @@ export class CrowdsourceManager {
|
|
517
532
|
const icon = this._getDividerIcon(layoutMode, panelOpen);
|
518
533
|
const tooltip = panelOpen ? this._translations.close : this._translations.open;
|
519
534
|
const id = "toggle-layout";
|
520
|
-
return (h(Fragment, null, h("calcite-action", { active: this.appLayout === 'splitView', class: "toggle-node", icon: "browser", id: "browser-action", onClick: () => { this.
|
535
|
+
return (h(Fragment, null, h("calcite-action", { active: this.appLayout === 'splitView', class: "toggle-node", icon: "browser", id: "browser-action", onClick: () => { this.appLayout = "splitView"; }, text: "" }), h("calcite-tooltip", { placement: "right", "reference-element": "browser-action" }, h("span", null, this._translations.splitView)), h("calcite-action", { active: this.appLayout === 'tableView', class: "toggle-node", icon: "dock-left", id: "dock-left-action", onClick: () => { this.appLayout = "tableView"; }, text: "" }), h("calcite-tooltip", { placement: "right", "reference-element": "dock-left-action" }, h("span", null, this._translations.tableView)), h("calcite-action", { active: this.appLayout === 'mapView', class: "toggle-node", disabled: this._layerIds?.length === 0, icon: "browser-map", id: "browser-map-action", onClick: () => { this.appLayout = "mapView"; }, text: "" }), h("calcite-tooltip", { placement: "right", "reference-element": "browser-map-action" }, h("span", null, this._translations.mapView)), h("calcite-action", { class: "toggle-node", icon: icon, id: id, onClick: () => this._toggleLayout(), slot: "actions-end", text: "" }), h("calcite-tooltip", { placement: "bottom", "reference-element": id }, h("span", null, tooltip))));
|
521
536
|
}
|
522
537
|
/**
|
523
538
|
* Show filter component in modal
|
@@ -590,7 +605,7 @@ export class CrowdsourceManager {
|
|
590
605
|
if (this._isMobile) {
|
591
606
|
this.showHideMapPopupAndTable(!this._isMobile);
|
592
607
|
this._isPortraitMobile = !!window.matchMedia("(orientation: portrait)").matches;
|
593
|
-
this.
|
608
|
+
this.appLayout = "splitView";
|
594
609
|
}
|
595
610
|
else {
|
596
611
|
this._isPortraitMobile = false;
|
@@ -606,34 +621,14 @@ export class CrowdsourceManager {
|
|
606
621
|
_toggleLayout() {
|
607
622
|
this._panelOpen = !this._panelOpen;
|
608
623
|
}
|
609
|
-
/**
|
610
|
-
* Changes the layout mode
|
611
|
-
* @param appLayout selected active app layout
|
612
|
-
*
|
613
|
-
* @protected
|
614
|
-
*/
|
615
|
-
_changeLayout(appLayout) {
|
616
|
-
if (this.appLayout !== appLayout) {
|
617
|
-
this._setActiveLayout(appLayout);
|
618
|
-
this.appLayout = appLayout;
|
619
|
-
// update the layer if table selected while switching to map view
|
620
|
-
if (this.appLayout === "mapView" && this._layer.isTable) {
|
621
|
-
void this._mapCard.updateLayer();
|
622
|
-
}
|
623
|
-
if (this._isMapViewOnLoad) {
|
624
|
-
void this._layerTable.refresh();
|
625
|
-
this._isMapViewOnLoad = false;
|
626
|
-
}
|
627
|
-
}
|
628
|
-
}
|
629
624
|
/**
|
630
625
|
* shows the map in card view
|
631
626
|
*
|
632
627
|
* @protected
|
633
628
|
*/
|
634
629
|
_showMapInCardView() {
|
635
|
-
if (this.appLayout
|
636
|
-
const fullMapView = document.getElementById('full-map-view')
|
630
|
+
if (this.appLayout !== "mapView") {
|
631
|
+
const fullMapView = document.getElementById('full-map-view')?.childNodes[0];
|
637
632
|
const splitMapClass = document.getElementById('card-mapView');
|
638
633
|
if (fullMapView) {
|
639
634
|
splitMapClass.appendChild(fullMapView);
|
@@ -646,7 +641,7 @@ export class CrowdsourceManager {
|
|
646
641
|
* @protected
|
647
642
|
*/
|
648
643
|
_showMapInFullView() {
|
649
|
-
const splitMap = document.getElementById('card-mapView')
|
644
|
+
const splitMap = document.getElementById('card-mapView')?.childNodes[0];
|
650
645
|
const fullMapViewClass = document.getElementById('full-map-view');
|
651
646
|
if (splitMap) {
|
652
647
|
fullMapViewClass.appendChild(splitMap);
|
@@ -1501,6 +1496,9 @@ export class CrowdsourceManager {
|
|
1501
1496
|
static get elementRef() { return "el"; }
|
1502
1497
|
static get watchers() {
|
1503
1498
|
return [{
|
1499
|
+
"propName": "appLayout",
|
1500
|
+
"methodName": "appLayoutWatchHandler"
|
1501
|
+
}, {
|
1504
1502
|
"propName": "enableZoom",
|
1505
1503
|
"methodName": "enableZoomWatchHandler"
|
1506
1504
|
}, {
|
@@ -64,6 +64,8 @@ export class SolutionItemAccordion {
|
|
64
64
|
"Web Scene",
|
65
65
|
"Feature Layer (hosted, view)",
|
66
66
|
"Feature Layer (hosted)",
|
67
|
+
"Table (hosted, view)",
|
68
|
+
"Table (hosted)",
|
67
69
|
"Tile Layer",
|
68
70
|
"CSV",
|
69
71
|
"Microsoft Excel",
|
@@ -119,7 +121,7 @@ export class SolutionItemAccordion {
|
|
119
121
|
* Renders the component.
|
120
122
|
*/
|
121
123
|
render() {
|
122
|
-
return (h(Host, { key: '
|
124
|
+
return (h(Host, { key: 'bf7f34f247fd1936435394aa8740bfc1136325ed' }, this._getAccordion()));
|
123
125
|
}
|
124
126
|
//--------------------------------------------------------------------------
|
125
127
|
//
|
@@ -251,8 +253,10 @@ export class SolutionItemAccordion {
|
|
251
253
|
_getTypeForDisplay(type, typeKeywords) {
|
252
254
|
let _type = type;
|
253
255
|
if (type === "Feature Service") {
|
254
|
-
|
255
|
-
|
256
|
+
const isView = typeKeywords.indexOf("View Service") > -1;
|
257
|
+
const isTable = typeKeywords.indexOf("Table") > -1;
|
258
|
+
_type = isView && isTable ? "Table (hosted, view)" : isTable ? "Table (hosted)" :
|
259
|
+
isView ? "Feature Layer (hosted, view)" : "Feature Layer (hosted)";
|
256
260
|
}
|
257
261
|
if (type === "Web Mapping Application") {
|
258
262
|
_type = typeKeywords.indexOf("configurableApp") > -1 ?
|
@@ -135,6 +135,38 @@
|
|
135
135
|
],
|
136
136
|
"snippet": "A feature layer view used to share volunteers and clearing activities with the Adopt-A-Catch Basin site."
|
137
137
|
},
|
138
|
+
{
|
139
|
+
"id": "aa2a7f901eb9492a829ab918cd38318d",
|
140
|
+
"type": "Feature Service",
|
141
|
+
"title": "CatchBasinVolunteers_public_table",
|
142
|
+
"typeKeywords": [
|
143
|
+
"ArcGIS Server",
|
144
|
+
"Data",
|
145
|
+
"Feature Access",
|
146
|
+
"Feature Service",
|
147
|
+
"Multilayer",
|
148
|
+
"Service",
|
149
|
+
"Hosted Service",
|
150
|
+
"View Service",
|
151
|
+
"Table"
|
152
|
+
],
|
153
|
+
"snippet": "A feature table view"
|
154
|
+
},
|
155
|
+
{
|
156
|
+
"id": "bb2a7f901eb9492a829ab918cd38318d",
|
157
|
+
"type": "Feature Service",
|
158
|
+
"title": "CatchBasinVolunteers_table",
|
159
|
+
"typeKeywords": [
|
160
|
+
"ArcGIS Server",
|
161
|
+
"Data",
|
162
|
+
"Feature Access",
|
163
|
+
"Feature Service",
|
164
|
+
"Multilayer",
|
165
|
+
"Service",
|
166
|
+
"Table"
|
167
|
+
],
|
168
|
+
"snippet": "A feature table"
|
169
|
+
},
|
138
170
|
{
|
139
171
|
"id": "cb7f74af39c64abfbe7c7fc5b69587b1",
|
140
172
|
"type": "Feature Service",
|
@@ -23,6 +23,7 @@ import { exportCSV } from "./csvUtils";
|
|
23
23
|
import { exportPDF } from "./pdfUtils";
|
24
24
|
import { loadModules } from "./loadModules";
|
25
25
|
import { queryFeaturesByID } from "./queryUtils";
|
26
|
+
import { Sanitizer } from "@esri/arcgis-html-sanitizer";
|
26
27
|
import * as common from "@esri/solution-common";
|
27
28
|
const lineSeparatorChar = "|";
|
28
29
|
import { queryRelated } from "@esri/arcgis-rest-feature-layer";
|
@@ -145,12 +146,13 @@ export function _cleanupLabel(labelText) {
|
|
145
146
|
labelText = labelText.replace(/<\/p>/gi, "");
|
146
147
|
// Replace \n with the line separator character
|
147
148
|
labelText = labelText.replace(/\n/gi, "|");
|
148
|
-
// Remove
|
149
|
+
// Remove tricky stuff
|
150
|
+
const sanitizer = new Sanitizer();
|
151
|
+
labelText = sanitizer.sanitize(labelText);
|
152
|
+
// Remove remaining HTML tags, replace 0xA0 that popup uses for spaces, and replace
|
149
153
|
labelText = labelText
|
150
154
|
.replace(/<[\s.]*[^<>]*\/?>/gi, "")
|
151
155
|
.replace(/\xA0/gi, " ")
|
152
|
-
.replace(/</gi, "<")
|
153
|
-
.replace(/>/gi, ">")
|
154
156
|
.replace(/ /gi, " ");
|
155
157
|
// Trim each line
|
156
158
|
labelText = labelText.replace(/\s*\|\s*/g, "|");
|
@@ -21,6 +21,7 @@ import { ILabel, exportPDF } from "./pdfUtils";
|
|
21
21
|
import { loadModules } from "./loadModules";
|
22
22
|
import { queryFeaturesByID } from "./queryUtils";
|
23
23
|
import { IExportInfo, IExportInfos } from "../utils/interfaces";
|
24
|
+
import { Sanitizer } from "@esri/arcgis-html-sanitizer";
|
24
25
|
import * as common from "@esri/solution-common";
|
25
26
|
|
26
27
|
export { ILabel } from "./pdfUtils";
|
@@ -277,12 +278,14 @@ export function _cleanupLabel(
|
|
277
278
|
// Replace \n with the line separator character
|
278
279
|
labelText = labelText.replace(/\n/gi, "|");
|
279
280
|
|
280
|
-
// Remove
|
281
|
+
// Remove tricky stuff
|
282
|
+
const sanitizer = new Sanitizer();
|
283
|
+
labelText = sanitizer.sanitize(labelText);
|
284
|
+
|
285
|
+
// Remove remaining HTML tags, replace 0xA0 that popup uses for spaces, and replace
|
281
286
|
labelText = labelText
|
282
287
|
.replace(/<[\s.]*[^<>]*\/?>/gi, "")
|
283
288
|
.replace(/\xA0/gi, " ")
|
284
|
-
.replace(/</gi, "<")
|
285
|
-
.replace(/>/gi, ">")
|
286
289
|
.replace(/ /gi, " ");
|
287
290
|
|
288
291
|
// Trim each line
|
@@ -93,8 +93,16 @@ describe("downloadUtils", () => {
|
|
93
93
|
|
94
94
|
it("handles some special characters", () => {
|
95
95
|
const labelText =
|
96
|
-
"<div style='text-align: left;'><{NAME}><br />{STREET}<br/>{CITY}, {STATE}
|
97
|
-
const expectedCleanedText = "
|
96
|
+
"<div style='text-align: left;'><{NAME}><br />{STREET}<br/>{CITY}, {STATE}\xA0{ZIP}<br></div>";
|
97
|
+
const expectedCleanedText = "<{NAME}>|{STREET}|{CITY}, {STATE} {ZIP}";
|
98
|
+
|
99
|
+
const result: string = downloadUtils._cleanupLabel(labelText);
|
100
|
+
expect(result).toEqual(expectedCleanedText);
|
101
|
+
});
|
102
|
+
|
103
|
+
it("handles embedded script tag", () => {
|
104
|
+
const labelText = "<scrip<script>is removed</script>t>alert(123)</script>";
|
105
|
+
const expectedCleanedText = "<scrip<script>is removed</script>t>alert(123)</script>";
|
98
106
|
|
99
107
|
const result: string = downloadUtils._cleanupLabel(labelText);
|
100
108
|
expect(result).toEqual(expectedCleanedText);
|
@@ -188,16 +196,6 @@ describe("downloadUtils", () => {
|
|
188
196
|
expect(result.format).toEqual(expectedLabelSpec);
|
189
197
|
});
|
190
198
|
|
191
|
-
it("handles some special characters", () => {
|
192
|
-
const popupInfo =
|
193
|
-
"<div style='text-align: left;'><{NAME}><br />{STREET}<br/>{CITY}, {STATE} {ZIP}<br></div>";
|
194
|
-
const expectedLabelSpec = "<{NAME}>|{STREET}|{CITY}, {STATE} {ZIP}";
|
195
|
-
|
196
|
-
const result: downloadUtils.ILabelFormat = downloadUtils._convertPopupTextToLabelSpec(popupInfo);
|
197
|
-
expect(result.type).toEqual("pattern");
|
198
|
-
expect(result.format).toEqual(expectedLabelSpec);
|
199
|
-
});
|
200
|
-
|
201
199
|
});
|
202
200
|
|
203
201
|
describe("_convertPopupArcadeToLabelSpec", () => {
|
@@ -190,6 +190,22 @@ const CrowdsourceManager$1 = /*@__PURE__*/ proxyCustomElement(class CrowdsourceM
|
|
190
190
|
// Watch handlers
|
191
191
|
//
|
192
192
|
//--------------------------------------------------------------------------
|
193
|
+
/**
|
194
|
+
* Adjust layout based on current appLayout value
|
195
|
+
*/
|
196
|
+
appLayoutWatchHandler(newAppLayout, oldAppLayout) {
|
197
|
+
if (newAppLayout !== oldAppLayout) {
|
198
|
+
this._setActiveLayout(newAppLayout);
|
199
|
+
// update the layer if table selected while switching to map view
|
200
|
+
if (this.appLayout === "mapView" && this._layer.isTable) {
|
201
|
+
void this._mapCard.updateLayer();
|
202
|
+
}
|
203
|
+
if (this._isMapViewOnLoad) {
|
204
|
+
void this._layerTable.refresh();
|
205
|
+
this._isMapViewOnLoad = false;
|
206
|
+
}
|
207
|
+
}
|
208
|
+
}
|
193
209
|
/**
|
194
210
|
* When true the map zoom tools will be available
|
195
211
|
*/
|
@@ -258,7 +274,7 @@ const CrowdsourceManager$1 = /*@__PURE__*/ proxyCustomElement(class CrowdsourceM
|
|
258
274
|
layer && await layer.when(() => {
|
259
275
|
// on render if no layer is present and only one table is present in map and app is in map view layer then change it to split layout
|
260
276
|
if (this._layerIds.length === 0 && this.appLayout === 'mapView' && layer.isTable) {
|
261
|
-
this.
|
277
|
+
this.appLayout = "splitView";
|
262
278
|
}
|
263
279
|
this._layer = layer;
|
264
280
|
this._initLayerExpressions();
|
@@ -291,7 +307,7 @@ const CrowdsourceManager$1 = /*@__PURE__*/ proxyCustomElement(class CrowdsourceM
|
|
291
307
|
render() {
|
292
308
|
// only avoid border when we have a header color that is not white
|
293
309
|
const borderClass = this.popupHeaderColor && this.popupHeaderColor !== "#FFFFFF" ? "border-width-0" : "";
|
294
|
-
return (h(Host, { key: '
|
310
|
+
return (h(Host, { key: 'ace73bfa1aa7d460f1cba60d13e94c4f47f77bd0' }, h("calcite-shell", { key: 'f14e70be762bf236be566111b45e40a42f0997f7', class: "position-relative" }, h("calcite-panel", { key: '0dde9426295a780b6a12cd98513f655914c0dab5', class: `width-full height-full ${borderClass}`, loading: this._isLoading }, this._getBody(this._layoutMode, this._panelOpen, this._hideTable)), this._getFooter()), this._filterModal()));
|
295
311
|
}
|
296
312
|
/**
|
297
313
|
* Called after each render
|
@@ -524,10 +540,9 @@ const CrowdsourceManager$1 = /*@__PURE__*/ proxyCustomElement(class CrowdsourceM
|
|
524
540
|
const cardManagerHeight = isTableLayout && this.mapInfos?.length > 1 ? "adjusted-height-100-51" : isMapLayout || isTableLayout ? "height-full" : (this._numSelected > 0 && !this._isMobile) ? "height-50" : !this._showInformationHeader ? "adjusted-height-50_25" : !this._isPortraitMobile ? "height-50" : "height-full";
|
525
541
|
const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light";
|
526
542
|
return (h("div", { class: `width-50 height-full ${themeClass}` }, h("card-manager", { class: `${cardManagerHeight} width-full`, customInfoText: this.customInfoText, enableCreateFeatures: this._enableCreateFeatures && !this._isMobile, enableEditGeometry: this?._mapInfo?.enableEditGeometry, isMobile: this._isPortraitMobile, layer: this._layer, mapView: this?._mapView, onBackFromCreateWorkFlow: () => {
|
527
|
-
this._changeLayout(this.appLayout);
|
528
543
|
this._showInformationHeader = true;
|
529
544
|
}, onCreateWorkFlowStarted: () => {
|
530
|
-
this.
|
545
|
+
this.appLayout = this._layer.isTable ? "tableView" : "mapView";
|
531
546
|
this._showInformationHeader = false;
|
532
547
|
}, onFeatureOrRecordSubmitted: () => void this._layerTable.refresh(), selectedFeaturesIds: this._layerTable?.selectedIds, selectingFeatureFromMap: this.appLayout === "mapView", zoomAndScrollToSelected: this.zoomAndScrollToSelected })));
|
533
548
|
}
|
@@ -565,7 +580,7 @@ const CrowdsourceManager$1 = /*@__PURE__*/ proxyCustomElement(class CrowdsourceM
|
|
565
580
|
const icon = this._getDividerIcon(layoutMode, panelOpen);
|
566
581
|
const tooltip = panelOpen ? this._translations.close : this._translations.open;
|
567
582
|
const id = "toggle-layout";
|
568
|
-
return (h(Fragment, null, h("calcite-action", { active: this.appLayout === 'splitView', class: "toggle-node", icon: "browser", id: "browser-action", onClick: () => { this.
|
583
|
+
return (h(Fragment, null, h("calcite-action", { active: this.appLayout === 'splitView', class: "toggle-node", icon: "browser", id: "browser-action", onClick: () => { this.appLayout = "splitView"; }, text: "" }), h("calcite-tooltip", { placement: "right", "reference-element": "browser-action" }, h("span", null, this._translations.splitView)), h("calcite-action", { active: this.appLayout === 'tableView', class: "toggle-node", icon: "dock-left", id: "dock-left-action", onClick: () => { this.appLayout = "tableView"; }, text: "" }), h("calcite-tooltip", { placement: "right", "reference-element": "dock-left-action" }, h("span", null, this._translations.tableView)), h("calcite-action", { active: this.appLayout === 'mapView', class: "toggle-node", disabled: this._layerIds?.length === 0, icon: "browser-map", id: "browser-map-action", onClick: () => { this.appLayout = "mapView"; }, text: "" }), h("calcite-tooltip", { placement: "right", "reference-element": "browser-map-action" }, h("span", null, this._translations.mapView)), h("calcite-action", { class: "toggle-node", icon: icon, id: id, onClick: () => this._toggleLayout(), slot: "actions-end", text: "" }), h("calcite-tooltip", { placement: "bottom", "reference-element": id }, h("span", null, tooltip))));
|
569
584
|
}
|
570
585
|
/**
|
571
586
|
* Show filter component in modal
|
@@ -638,7 +653,7 @@ const CrowdsourceManager$1 = /*@__PURE__*/ proxyCustomElement(class CrowdsourceM
|
|
638
653
|
if (this._isMobile) {
|
639
654
|
this.showHideMapPopupAndTable(!this._isMobile);
|
640
655
|
this._isPortraitMobile = !!window.matchMedia("(orientation: portrait)").matches;
|
641
|
-
this.
|
656
|
+
this.appLayout = "splitView";
|
642
657
|
}
|
643
658
|
else {
|
644
659
|
this._isPortraitMobile = false;
|
@@ -654,34 +669,14 @@ const CrowdsourceManager$1 = /*@__PURE__*/ proxyCustomElement(class CrowdsourceM
|
|
654
669
|
_toggleLayout() {
|
655
670
|
this._panelOpen = !this._panelOpen;
|
656
671
|
}
|
657
|
-
/**
|
658
|
-
* Changes the layout mode
|
659
|
-
* @param appLayout selected active app layout
|
660
|
-
*
|
661
|
-
* @protected
|
662
|
-
*/
|
663
|
-
_changeLayout(appLayout) {
|
664
|
-
if (this.appLayout !== appLayout) {
|
665
|
-
this._setActiveLayout(appLayout);
|
666
|
-
this.appLayout = appLayout;
|
667
|
-
// update the layer if table selected while switching to map view
|
668
|
-
if (this.appLayout === "mapView" && this._layer.isTable) {
|
669
|
-
void this._mapCard.updateLayer();
|
670
|
-
}
|
671
|
-
if (this._isMapViewOnLoad) {
|
672
|
-
void this._layerTable.refresh();
|
673
|
-
this._isMapViewOnLoad = false;
|
674
|
-
}
|
675
|
-
}
|
676
|
-
}
|
677
672
|
/**
|
678
673
|
* shows the map in card view
|
679
674
|
*
|
680
675
|
* @protected
|
681
676
|
*/
|
682
677
|
_showMapInCardView() {
|
683
|
-
if (this.appLayout
|
684
|
-
const fullMapView = document.getElementById('full-map-view')
|
678
|
+
if (this.appLayout !== "mapView") {
|
679
|
+
const fullMapView = document.getElementById('full-map-view')?.childNodes[0];
|
685
680
|
const splitMapClass = document.getElementById('card-mapView');
|
686
681
|
if (fullMapView) {
|
687
682
|
splitMapClass.appendChild(fullMapView);
|
@@ -694,7 +689,7 @@ const CrowdsourceManager$1 = /*@__PURE__*/ proxyCustomElement(class CrowdsourceM
|
|
694
689
|
* @protected
|
695
690
|
*/
|
696
691
|
_showMapInFullView() {
|
697
|
-
const splitMap = document.getElementById('card-mapView')
|
692
|
+
const splitMap = document.getElementById('card-mapView')?.childNodes[0];
|
698
693
|
const fullMapViewClass = document.getElementById('full-map-view');
|
699
694
|
if (splitMap) {
|
700
695
|
fullMapViewClass.appendChild(splitMap);
|
@@ -779,6 +774,7 @@ const CrowdsourceManager$1 = /*@__PURE__*/ proxyCustomElement(class CrowdsourceM
|
|
779
774
|
this._translations = messages[0];
|
780
775
|
}
|
781
776
|
static get watchers() { return {
|
777
|
+
"appLayout": ["appLayoutWatchHandler"],
|
782
778
|
"enableZoom": ["enableZoomWatchHandler"],
|
783
779
|
"hideMapOnLoad": ["hideMapOnLoadWatchHandler"]
|
784
780
|
}; }
|
@@ -839,6 +835,7 @@ const CrowdsourceManager$1 = /*@__PURE__*/ proxyCustomElement(class CrowdsourceM
|
|
839
835
|
"_layerIds": [32],
|
840
836
|
"_isLoading": [32]
|
841
837
|
}, [[8, "featureSelectionChange", "featureSelectionChange"], [8, "popupClosed", "popupClosed"], [8, "layoutChanged", "layoutChanged"], [8, "mapChanged", "mapChanged"], [8, "layerSelectionChange", "layerSelectionChange"], [8, "idsFound", "idsFound"]], {
|
838
|
+
"appLayout": ["appLayoutWatchHandler"],
|
842
839
|
"enableZoom": ["enableZoomWatchHandler"],
|
843
840
|
"hideMapOnLoad": ["hideMapOnLoadWatchHandler"]
|
844
841
|
}]);
|
@@ -7,8 +7,8 @@ import { g as getDefaultExportFromCjs } from './_commonjsHelpers.js';
|
|
7
7
|
import { getAssetPath } from '@stencil/core/internal/client';
|
8
8
|
import { l as loadModules } from './loadModules.js';
|
9
9
|
import { q as queryFeaturesByID } from './queryUtils.js';
|
10
|
+
import { S as Sanitizer } from './index2.js';
|
10
11
|
import './solution-resource.js';
|
11
|
-
import './index2.js';
|
12
12
|
import { _ as __assign$1, r as request, c as cleanUrl, g as getJson } from './restHelpersGet.js';
|
13
13
|
|
14
14
|
/** @license
|
@@ -2541,12 +2541,13 @@ function _cleanupLabel(labelText) {
|
|
2541
2541
|
labelText = labelText.replace(/<\/p>/gi, "");
|
2542
2542
|
// Replace \n with the line separator character
|
2543
2543
|
labelText = labelText.replace(/\n/gi, "|");
|
2544
|
-
// Remove
|
2544
|
+
// Remove tricky stuff
|
2545
|
+
const sanitizer = new Sanitizer();
|
2546
|
+
labelText = sanitizer.sanitize(labelText);
|
2547
|
+
// Remove remaining HTML tags, replace 0xA0 that popup uses for spaces, and replace
|
2545
2548
|
labelText = labelText
|
2546
2549
|
.replace(/<[\s.]*[^<>]*\/?>/gi, "")
|
2547
2550
|
.replace(/\xA0/gi, " ")
|
2548
|
-
.replace(/</gi, "<")
|
2549
|
-
.replace(/>/gi, ">")
|
2550
2551
|
.replace(/ /gi, " ");
|
2551
2552
|
// Trim each line
|
2552
2553
|
labelText = labelText.replace(/\s*\|\s*/g, "|");
|
@@ -19,16 +19,19 @@ import { d as defineCustomElement$2 } from './scrim.js';
|
|
19
19
|
class AppGuideViewModel {
|
20
20
|
constructor() {
|
21
21
|
this.pages = [];
|
22
|
+
this.headerText = '';
|
23
|
+
this.pages = [];
|
22
24
|
}
|
23
|
-
|
24
|
-
this.pages =
|
25
|
+
setPages(pages) {
|
26
|
+
this.pages = pages;
|
27
|
+
this.setDefaultHeaderText();
|
25
28
|
}
|
26
|
-
|
27
|
-
this.
|
29
|
+
setDefaultHeaderText() {
|
30
|
+
this.headerText = !!this.pages.length ? this.pages[0].title : '';
|
28
31
|
}
|
29
32
|
}
|
30
33
|
|
31
|
-
const instantAppsAppGuideCss = ":host{--instant-apps-app-guide-width:300px;--instant-apps-app-guide-height:400px;--instant-apps-app-guide-list-item-bubble-size:22px;width:var(--instant-apps-app-guide-width);height:var(--instant-apps-app-guide-height);display:block}:host calcite-panel{max-width:var(--instant-apps-app-guide-width);max-height:var(--instant-apps-app-guide-height);display:flex}:host calcite-carousel{flex:1;overflow:scroll;height:-moz-fit-content;height:fit-content;background-color:var(--calcite-color-foreground-1)}:host [slot=header-content]{display:flex;gap:var(--calcite-spacing-sm);padding-inline-start:0.25rem
|
34
|
+
const instantAppsAppGuideCss = ":host{--instant-apps-app-guide-width:300px;--instant-apps-app-guide-height:400px;--instant-apps-app-guide-list-item-bubble-size:22px;width:var(--instant-apps-app-guide-width);height:var(--instant-apps-app-guide-height);display:block}:host calcite-panel{max-width:var(--instant-apps-app-guide-width);max-height:var(--instant-apps-app-guide-height);display:flex}:host calcite-carousel{flex:1;overflow:scroll;height:-moz-fit-content;height:fit-content;background-color:var(--calcite-color-foreground-1)}:host [slot=header-content]{display:flex;gap:var(--calcite-spacing-sm);padding-inline-start:0.25rem;font-weight:var(--calcite-font-weight-bold)}:host calcite-carousel-item{flex-grow:1;display:flex;flex-direction:column}:host .instant-apps-app-guide__content-wrapper{padding-block-start:0.5rem;padding-inline:0.5rem;flex-shrink:1;flex-grow:0}:host calcite-icon{--calcite-ui-icon-color:var(--calcite-color-brand)}:host .instant-apps-app-guide__content-list{counter-set:item-counter;margin-inline:0;padding-inline-start:var(--calcite-spacing-xxxl);padding-inline-end:var(--calcite-spacing-lg);position:relative}:host .instant-apps-app-guide__content-list .instant-apps-app-guide__content-list--item{counter-increment:item-counter;margin-block-start:var(--calcite-spacing-lg);display:flex;align-items:flex-start}:host .instant-apps-app-guide__content-list .instant-apps-app-guide__content-list--item::before{content:counter(item-counter);background-color:var(--calcite-color-text-2);color:var(--calcite-color-text-inverse);line-height:var(--calcite-font-line-height-fixed-xl);width:var(--instant-apps-app-guide-list-item-bubble-size);left:0;border-radius:var(--calcite-corner-radius-pill);display:flex;justify-content:center;font-size:var(--calcite-font-size-sm);position:absolute;max-height:var(--instant-apps-app-guide-list-item-bubble-size)}:host .instant-apps-app-guide__content-list .instant-apps-app-guide__content-list--item::marker{color:var(--calcite-color-transparent)}";
|
32
35
|
const InstantAppsAppGuideStyle0 = instantAppsAppGuideCss;
|
33
36
|
|
34
37
|
const CSS = {
|
@@ -41,6 +44,9 @@ const InstantAppsAppGuide$1 = /*@__PURE__*/ proxyCustomElement(class InstantApps
|
|
41
44
|
super();
|
42
45
|
this.__registerHost();
|
43
46
|
this.__attachShadow();
|
47
|
+
/**
|
48
|
+
* Private Variables
|
49
|
+
*/
|
44
50
|
this._viewModel = new AppGuideViewModel();
|
45
51
|
this.header = true;
|
46
52
|
this.data = undefined;
|
@@ -48,19 +54,25 @@ const InstantAppsAppGuide$1 = /*@__PURE__*/ proxyCustomElement(class InstantApps
|
|
48
54
|
this.headerText = undefined;
|
49
55
|
}
|
50
56
|
watchPropHandler(newValue) {
|
51
|
-
this.
|
52
|
-
|
57
|
+
this._setContent(newValue);
|
58
|
+
}
|
59
|
+
watchStateHandler(newValue) {
|
60
|
+
this._viewModel.headerText = newValue;
|
53
61
|
}
|
54
|
-
|
55
|
-
|
56
|
-
this._viewModel.pages = (this === null || this === void 0 ? void 0 : this.data) || [];
|
57
|
-
this.headerText = (_c = (_b = (_a = this === null || this === void 0 ? void 0 : this.data) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.title) !== null && _c !== void 0 ? _c : (_d = this === null || this === void 0 ? void 0 : this.messages) === null || _d === void 0 ? void 0 : _d.headerText;
|
62
|
+
componentWillLoad() {
|
63
|
+
this._setContent(this === null || this === void 0 ? void 0 : this.data);
|
58
64
|
}
|
59
65
|
componentDidLoad() {
|
60
66
|
getMessages(this);
|
61
67
|
}
|
62
68
|
render() {
|
63
|
-
|
69
|
+
const pages = this._renderAppGuidePages(this._viewModel.pages);
|
70
|
+
const header = this._renderAppGuideHeader();
|
71
|
+
return (h(Host, { key: 'a6969274bbb9e917869c4c09910ef04b2d40c49a' }, h("calcite-panel", { key: 'f203f430978eed0db5aa0058ae53bd811ba0fdfe', scale: "s" }, header, h("calcite-carousel", { key: 'afd572b169f27b03616e568b9146cb2e52f04cae', onCalciteCarouselChange: () => this._updateHeaderText(), ref: el => this._carouselRef = el, "arrow-type": this._getArrowType() }, pages))));
|
72
|
+
}
|
73
|
+
_setContent(content) {
|
74
|
+
this._viewModel.setPages(content);
|
75
|
+
this.headerText = this._viewModel.headerText;
|
64
76
|
}
|
65
77
|
_updateHeaderText() {
|
66
78
|
var _a;
|
@@ -102,7 +114,8 @@ const InstantAppsAppGuide$1 = /*@__PURE__*/ proxyCustomElement(class InstantApps
|
|
102
114
|
}
|
103
115
|
get el() { return this; }
|
104
116
|
static get watchers() { return {
|
105
|
-
"data": ["watchPropHandler"]
|
117
|
+
"data": ["watchPropHandler"],
|
118
|
+
"headerText": ["watchStateHandler"]
|
106
119
|
}; }
|
107
120
|
static get style() { return InstantAppsAppGuideStyle0; }
|
108
121
|
}, [1, "instant-apps-app-guide", {
|
@@ -111,7 +124,8 @@ const InstantAppsAppGuide$1 = /*@__PURE__*/ proxyCustomElement(class InstantApps
|
|
111
124
|
"messages": [32],
|
112
125
|
"headerText": [32]
|
113
126
|
}, undefined, {
|
114
|
-
"data": ["watchPropHandler"]
|
127
|
+
"data": ["watchPropHandler"],
|
128
|
+
"headerText": ["watchStateHandler"]
|
115
129
|
}]);
|
116
130
|
function defineCustomElement$1() {
|
117
131
|
if (typeof customElements === "undefined") {
|