@esri/solutions-components 0.8.32 → 0.8.34

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. package/dist/cjs/basemap-gallery_7.cjs.entry.js +23 -7
  2. package/dist/cjs/calcite-flow_6.cjs.entry.js +22 -19
  3. package/dist/cjs/crowdsource-manager.cjs.entry.js +3 -1
  4. package/dist/cjs/crowdsource-reporter.cjs.entry.js +29 -6
  5. package/dist/collection/components/create-feature/create-feature.js +13 -12
  6. package/dist/collection/components/create-related-feature/create-related-feature.js +23 -3
  7. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +3 -1
  8. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +31 -8
  9. package/dist/collection/components/feature-details/feature-details.js +0 -4
  10. package/dist/collection/components/floor-filter/floor-filter.js +23 -7
  11. package/dist/collection/demos/crowdsource-reporter.html +32 -8
  12. package/dist/components/create-feature2.js +13 -12
  13. package/dist/components/create-related-feature2.js +9 -3
  14. package/dist/components/crowdsource-manager.js +3 -1
  15. package/dist/components/crowdsource-reporter.js +29 -6
  16. package/dist/components/feature-details2.js +0 -4
  17. package/dist/components/floor-filter2.js +23 -7
  18. package/dist/esm/basemap-gallery_7.entry.js +23 -7
  19. package/dist/esm/calcite-flow_6.entry.js +22 -19
  20. package/dist/esm/crowdsource-manager.entry.js +3 -1
  21. package/dist/esm/crowdsource-reporter.entry.js +29 -6
  22. package/dist/solutions-components/demos/crowdsource-reporter.html +32 -8
  23. package/dist/solutions-components/p-0ce36a4a.entry.js +17 -0
  24. package/dist/solutions-components/p-21cbb55d.entry.js +6 -0
  25. package/dist/solutions-components/p-5c5e3745.entry.js +6 -0
  26. package/dist/solutions-components/p-c91b2153.entry.js +6 -0
  27. package/dist/solutions-components/solutions-components.esm.js +1 -1
  28. package/dist/types/components/create-related-feature/create-related-feature.d.ts +4 -0
  29. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +16 -3
  30. package/dist/types/components.d.ts +7 -2
  31. package/dist/types/preact.d.ts +2 -1
  32. package/package.json +1 -1
  33. package/dist/solutions-components/p-1b096a8b.entry.js +0 -6
  34. package/dist/solutions-components/p-4ae34862.entry.js +0 -17
  35. package/dist/solutions-components/p-90c3bc54.entry.js +0 -6
  36. package/dist/solutions-components/p-a0616647.entry.js +0 -6
@@ -140,12 +140,17 @@ const FloorFilter = class {
140
140
  * Watch for changes to the mapView and re-init the floor filter
141
141
  */
142
142
  async mapViewWatchHandler() {
143
+ console.log("mapViewWatchHandler");
144
+ console.log(`this.mapView: ${this.mapView}`);
143
145
  await this._initFloorFilter(this.mapView);
144
146
  }
145
147
  /**
146
148
  * Watch for changes to the enabled property and re-init or destroy the floor filter
147
149
  */
148
150
  async enabledWatchHandler() {
151
+ console.log("enabledWatchHandler");
152
+ console.log(`this.enabled: ${this.enabled}`);
153
+ console.log(`this.mapView: ${this.mapView}`);
149
154
  if (this.enabled) {
150
155
  await this._initFloorFilter(this.mapView);
151
156
  }
@@ -168,7 +173,9 @@ const FloorFilter = class {
168
173
  * Renders the component.
169
174
  */
170
175
  render() {
171
- return (index.h(index.Host, { key: 'c80a8d46fb48f3789d9fa09c2400faad49e2e236' }, index.h("div", { key: '82919a3ba061a17c8aeaa0d2f6f4f13bc428b519', ref: (el) => { this._floorFilterElement = el; } })));
176
+ console.log("render");
177
+ console.log(`this._floorFilterElement: ${this._floorFilterElement}`);
178
+ return (index.h(index.Host, { key: '01b71c71af2a183b85c8620c338512fd338f19ef' }, index.h("div", { key: '752d397c6e3b6a2257d0a8a05051ed821eca4b94', ref: (el) => { this._floorFilterElement = el; } })));
172
179
  }
173
180
  //--------------------------------------------------------------------------
174
181
  //
@@ -196,6 +203,7 @@ const FloorFilter = class {
196
203
  * @protected
197
204
  */
198
205
  _destroyWidget() {
206
+ console.log("_destroyWidget");
199
207
  if (this.floorFilterWidget) {
200
208
  this.floorFilterWidget.destroy();
201
209
  this.floorFilterWidget = undefined;
@@ -210,6 +218,7 @@ const FloorFilter = class {
210
218
  * @protected
211
219
  */
212
220
  _initContainer() {
221
+ console.log("_initContainer");
213
222
  this._destroyWidget();
214
223
  this._floorFilterElement = document.createElement("div");
215
224
  }
@@ -217,11 +226,18 @@ const FloorFilter = class {
217
226
  * Initialize the floor filter or reset the current view if it already exists
218
227
  */
219
228
  async _initFloorFilter(view) {
229
+ console.log("_initFloorFilter");
220
230
  const webMap = view === null || view === void 0 ? void 0 : view.map;
221
- if (view && this.enabled && this.FloorFilter && (webMap === null || webMap === void 0 ? void 0 : webMap.floorInfo)) {
222
- this._initContainer();
223
- await webMap.when(() => {
224
- var _a, _b, _c;
231
+ await webMap.when(() => {
232
+ var _a, _b, _c;
233
+ console.log("webMap.when");
234
+ console.log("_initFloorFilter");
235
+ console.log(`view: ${view}`);
236
+ console.log(`this.enabled: ${this.enabled}`);
237
+ console.log(`this.FloorFilter: ${this.FloorFilter}`);
238
+ console.log(`webMap?.floorInfo: ${webMap === null || webMap === void 0 ? void 0 : webMap.floorInfo}`);
239
+ if (view && this.enabled && this.FloorFilter && (webMap === null || webMap === void 0 ? void 0 : webMap.floorInfo)) {
240
+ this._initContainer();
225
241
  this.floorFilterWidget = new this.FloorFilter({
226
242
  container: this._floorFilterElement,
227
243
  view
@@ -238,8 +254,8 @@ const FloorFilter = class {
238
254
  this._siteHandle = this.reactiveUtils.watch(() => this.floorFilterWidget.site, (site) => {
239
255
  this.siteChanged.emit(site);
240
256
  });
241
- });
242
- }
257
+ }
258
+ });
243
259
  }
244
260
  get el() { return index.getElement(this); }
245
261
  static get watchers() { return {
@@ -522,14 +522,23 @@ const CreateFeature = class {
522
522
  }
523
523
  });
524
524
  this._editor.viewModel.addHandles(handle);
525
+ //Add handle to watch featureFormViewModel ready state
526
+ const formHandle = this.reactiveUtils.watch(() => { var _a; return (_a = this._editor.viewModel.featureFormViewModel) === null || _a === void 0 ? void 0 : _a.state; }, (state) => {
527
+ if (state === 'ready') {
528
+ this._showSearchWidget = false;
529
+ this.progressStatus.emit(1);
530
+ this.drawComplete.emit();
531
+ }
532
+ });
533
+ this._editor.viewModel.addHandles(formHandle);
525
534
  //Add handle to watch editor viewmodel state and then show the search widget
526
- const formHandle = this.reactiveUtils.watch(() => this._editor.viewModel.state, (state) => {
535
+ const createFeatureHandle = this.reactiveUtils.watch(() => this._editor.viewModel.state, (state) => {
527
536
  if (state === 'creating-features') {
528
537
  this._editorLoading = true;
529
538
  this._showSearchWidget = true;
530
539
  }
531
540
  });
532
- this._editor.viewModel.addHandles(formHandle);
541
+ this._editor.viewModel.addHandles(createFeatureHandle);
533
542
  }
534
543
  /**
535
544
  * Start creating the feature
@@ -547,14 +556,6 @@ const CreateFeature = class {
547
556
  setTimeout(() => {
548
557
  //on form submit
549
558
  this._editor.viewModel.featureFormViewModel.on('submit', this.submitted.bind(this));
550
- //on sketch complete emit the event
551
- this._editor.viewModel.sketchViewModel.on("create", (evt) => {
552
- if (evt.state === "complete") {
553
- this._showSearchWidget = false;
554
- this.progressStatus.emit(1);
555
- this.drawComplete.emit();
556
- }
557
- });
558
559
  //hides the header and footer elements in editor widget
559
560
  this.hideEditorsElements().then(() => {
560
561
  resolve({});
@@ -668,13 +669,13 @@ const CreateFeature = class {
668
669
  * @protected
669
670
  */
670
671
  async hideEditorsElements() {
671
- var _a;
672
+ var _a, _b;
672
673
  if (!this.customizeSubmit) {
673
674
  return;
674
675
  }
675
676
  await this.timeout(700);
676
677
  //hides the header and footer on the featureForm
677
- (_a = this.el.querySelector('.esri-editor').querySelectorAll('calcite-flow-item')) === null || _a === void 0 ? void 0 : _a.forEach((flowItem) => {
678
+ (_b = (_a = this.el.querySelector('.esri-editor')) === null || _a === void 0 ? void 0 : _a.querySelectorAll('calcite-flow-item')) === null || _b === void 0 ? void 0 : _b.forEach((flowItem) => {
678
679
  var _a, _b, _c, _d, _e;
679
680
  const article = (_c = (_b = (_a = flowItem.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('calcite-panel')) === null || _b === void 0 ? void 0 : _b.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('article');
680
681
  //hide the header
@@ -742,6 +743,7 @@ const CreateRelatedFeature = class {
742
743
  this.success = index.createEvent(this, "success", 7);
743
744
  this.fail = index.createEvent(this, "fail", 7);
744
745
  this.isActionPending = index.createEvent(this, "isActionPending", 7);
746
+ this.formReady = index.createEvent(this, "formReady", 7);
745
747
  /**
746
748
  * boolean: Flag to maintain form submission using submit button
747
749
  */
@@ -834,7 +836,7 @@ const CreateRelatedFeature = class {
834
836
  }
835
837
  render() {
836
838
  const loaderClass = this._editorLoading ? "" : "display-none";
837
- return (index.h("calcite-loader", { key: 'a8fd1e83a4a9614779be19a11e6028b3a402cbd2', class: loaderClass, label: "", scale: "s" }));
839
+ return (index.h("calcite-loader", { key: '5302b1166a175b0605604792cd40b9d3fbfabd02', class: loaderClass, label: "", scale: "s" }));
838
840
  }
839
841
  /**
840
842
  * StencilJS: Called once just after the component is fully loaded and the first render() occurs.
@@ -882,6 +884,13 @@ const CreateRelatedFeature = class {
882
884
  }
883
885
  });
884
886
  this._editor.viewModel.addHandles(attachmentHandle);
887
+ //Add handle to watch featureFormViewModel ready state
888
+ const formHandle = this.reactiveUtils.watch(() => { var _a; return (_a = this._editor.viewModel.featureFormViewModel) === null || _a === void 0 ? void 0 : _a.state; }, (state) => {
889
+ if (state === 'ready') {
890
+ this.formReady.emit();
891
+ }
892
+ });
893
+ this._editor.viewModel.addHandles(formHandle);
885
894
  }
886
895
  /**
887
896
  * Start creating the feature feature form
@@ -907,8 +916,6 @@ const CreateRelatedFeature = class {
907
916
  await this._editor.startCreateFeaturesWorkflowAtFeatureCreation(creationInfo);
908
917
  //hides the header and footer elements in editor widget
909
918
  await this.hideEditorsElements();
910
- // Emit an event to show submit cancel buttons
911
- this.isActionPending.emit(false);
912
919
  this._editor.viewModel.featureFormViewModel.on('submit', this.submitted.bind(this));
913
920
  }
914
921
  /**
@@ -1316,10 +1323,6 @@ const FeatureDetails = class {
1316
1323
  const param = { updateFeatures: [newGraphicInstance] };
1317
1324
  await selectedLayer.applyEdits(param).then(() => {
1318
1325
  this._selectedGraphic = selectFeatureAttr;
1319
- //update the current graphics in info card so that, the updated values are reflected in popup content
1320
- if (this._infoCard) {
1321
- void this._infoCard.updateCurrentGraphic(this._selectedGraphic);
1322
- }
1323
1326
  //store the like dislike value for the current selected graphic in local storage
1324
1327
  this.setInLocalStorage();
1325
1328
  this._updating = false;
@@ -208,7 +208,9 @@ const CrowdsourceManager = class {
208
208
  async componentDidRender() {
209
209
  if (this._shouldSetMapView) {
210
210
  this._shouldSetMapView = false;
211
- await this._setMapView();
211
+ if (this._mapChange) {
212
+ await this._setMapView();
213
+ }
212
214
  }
213
215
  }
214
216
  /**
@@ -113,7 +113,7 @@ const CrowdsourceReporter = class {
113
113
  */
114
114
  render() {
115
115
  const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light";
116
- return (index.h(index.Host, { key: '119bb8b1c9115dca4e15c45ddd8e7fbed500b4d7' }, this._reportSubmitted && index.h("calcite-alert", { key: 'ef85c61fb5c9eaac9391c1e37494ef5e4244dadb', "auto-close": true, class: themeClass + " report-submitted-msg", icon: "check-circle", kind: "success", label: "", onCalciteAlertClose: () => { this._reportSubmitted = false; }, open: true, placement: "top" }, index.h("div", { key: '616a75103a227cf1b50d9e43fea129afc3fee4f9', slot: "message" }, this.reportSubmittedMessage ? this.reportSubmittedMessage : this._translations.submitMsg)), this._featureCreationFailedErrorMsg && index.h("calcite-alert", { key: '2faf9a9729bf90b87e044bfe8958571735f2cbf5', "auto-close": true, class: themeClass, icon: "x-octagon", kind: "danger", label: "", onCalciteAlertClose: () => { this._featureCreationFailedErrorMsg = ""; }, open: true, placement: "top" }, index.h("div", { key: '66cdf81166042ff4efddd4cc5801d790463d75fc', slot: "title" }, this._translations.error), index.h("div", { key: 'ad289b06742d2159d6fcfbdc42ecc9fb6d81f362', slot: "message" }, this._featureCreationFailedErrorMsg)), this._commentSubmitted && index.h("calcite-alert", { key: '27aee542bfd2cae8972035d17167407b35b5eb76', "auto-close": true, class: 'report-submitted ' + themeClass, icon: "check-circle", kind: "success", label: "", onCalciteAlertClose: () => { this._commentSubmitted = false; }, open: true, placement: "top" }, index.h("div", { key: '70a8a21de05b00d409adb226d6393817f7514930', slot: "message" }, this._translations.commentSubmittedMsg)), this._addingCommentFailed && index.h("calcite-alert", { key: '107ab01eca03500faeb4db5a2ac0e9dc7261e6fc', "auto-close": true, class: themeClass, icon: "x-octagon", kind: "danger", label: "", onCalciteAlertClose: () => { this._addingCommentFailed = false; }, open: true, placement: "top" }, index.h("div", { key: '31e6fba8c28489f87897a13ebb4e7b8956452191', slot: "title" }, this._translations.error), index.h("div", { key: '6f0868946ef6e04490ba1e0806a03e26c756760b', slot: "message" }, this._translations.addingCommentFailedMsg)), index.h("div", { key: 'e169b7b466023010d45151ca9b7dfb900d8d7f9f' }, index.h("calcite-shell", { key: '72899b8eff6622233224df91223ee5d59539905b', "content-behind": true }, this._getReporter())), this.filterModal()));
116
+ return (index.h(index.Host, { key: 'e512e2693a586f8a6da7bcfa171feb60da26aee3' }, this._reportSubmitted && index.h("calcite-alert", { key: 'e5805ba948f1dc43eba2a78716af452cf71a8222', "auto-close": true, class: themeClass + " report-submitted-msg", icon: "check-circle", kind: "success", label: "", onCalciteAlertClose: () => { this._reportSubmitted = false; }, open: true, placement: "top" }, index.h("div", { key: '95b9accf1f09186c09c81cfb02a8939c4869ae8d', slot: "message" }, this.reportSubmittedMessage ? this.reportSubmittedMessage : this._translations.submitMsg)), this._featureCreationFailedErrorMsg && index.h("calcite-alert", { key: 'cab7f0e0f0d882612b4fa6f00799be9870aea6c5', "auto-close": true, class: themeClass, icon: "x-octagon", kind: "danger", label: "", onCalciteAlertClose: () => { this._featureCreationFailedErrorMsg = ""; }, open: true, placement: "top" }, index.h("div", { key: 'b9453672d85e26cf7bdeae0923cd36020d259d49', slot: "title" }, this._translations.error), index.h("div", { key: '5084315857bc88b8f80aaa411ac3fd5e4493e918', slot: "message" }, this._featureCreationFailedErrorMsg)), this._commentSubmitted && index.h("calcite-alert", { key: '62b7d9818913c3331ca9c8e4ed23c7f0c48a7946', "auto-close": true, class: 'report-submitted ' + themeClass, icon: "check-circle", kind: "success", label: "", onCalciteAlertClose: () => { this._commentSubmitted = false; }, open: true, placement: "top" }, index.h("div", { key: '5f18444fd375657db0c2a403cb453ead75536181', slot: "message" }, this._translations.commentSubmittedMsg)), this._addingCommentFailed && index.h("calcite-alert", { key: '732f08960095fc9fefcc79fc8df387a5a4c3f781', "auto-close": true, class: themeClass, icon: "x-octagon", kind: "danger", label: "", onCalciteAlertClose: () => { this._addingCommentFailed = false; }, open: true, placement: "top" }, index.h("div", { key: '16415430cf33ce53c0d49cab19dce2c3e34257d6', slot: "title" }, this._translations.error), index.h("div", { key: '83e5918e00902bd49512165f4aa62813cecb4619', slot: "message" }, this._translations.addingCommentFailedMsg)), index.h("div", { key: '3e9dadd880319708e64e717ba7e7adaddf97b935' }, index.h("calcite-shell", { key: 'c72664d361b3904bc191668207c3ad31ff1f98c9', "content-behind": true }, this._getReporter())), this.filterModal()));
117
117
  }
118
118
  //--------------------------------------------------------------------------
119
119
  //
@@ -290,7 +290,7 @@ const CrowdsourceReporter = class {
290
290
  * @protected
291
291
  */
292
292
  getFeatureCreateFlowItem() {
293
- return (index.h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._selectedLayerName, onCalciteFlowItemBack: this.backFromCreateFeaturePanel.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), this._showSubmitCancelButton && index.h("div", { class: "width-full", slot: "footer" }, index.h("calcite-button", { appearance: "solid", class: "footer-top-button footer-button", onClick: this.onCreateFeatureSubmitButtonClick.bind(this), width: "full" }, this._translations.submit), index.h("calcite-button", { appearance: "outline", class: "footer-button", onClick: this.backFromCreateFeaturePanel.bind(this), width: "full" }, this._translations.cancel)), index.h("calcite-panel", { "full-height": true, "full-width": true }, index.h("div", { class: "progress-bar" }, index.h("calcite-progress", { type: "determinate", value: this._updatedProgressBarStatus })), index.h("calcite-notice", { class: "notice-msg", icon: "lightbulb", kind: "success", open: true }, index.h("div", { slot: "message" }, this._translations.featureEditFormInfoMsg)), index.h("create-feature", { customizeSubmit: true, mapView: this.mapView, onDrawComplete: this.onDrawComplete.bind(this), onEditingAttachment: this.showSubmitCancelButton.bind(this), onFail: this.createFeatureFailed.bind(this), onProgressStatus: this.updatedProgressStatus.bind(this), onSuccess: this.onReportSubmitted.bind(this), ref: el => this._createFeature = el, searchConfiguration: this.searchConfiguration, selectedLayerId: this._selectedLayerId }))));
293
+ return (index.h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._selectedLayerName, onCalciteFlowItemBack: this.backFromCreateFeaturePanel.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), this._showSubmitCancelButton && index.h("div", { class: "width-full", slot: "footer" }, index.h("calcite-button", { appearance: "solid", class: "footer-top-button footer-button", onClick: this.onCreateFeatureSubmitButtonClick.bind(this), width: "full" }, this._translations.submit), index.h("calcite-button", { appearance: "outline", class: "footer-button", onClick: this.backFromCreateFeaturePanel.bind(this), width: "full" }, this._translations.cancel)), index.h("calcite-panel", { "full-height": true, "full-width": true }, index.h("div", { class: "progress-bar" }, index.h("calcite-progress", { type: "determinate", value: this._updatedProgressBarStatus })), index.h("calcite-notice", { class: "notice-msg", icon: "lightbulb", kind: "success", open: true }, index.h("div", { slot: "message" }, this._translations.featureEditFormInfoMsg)), index.h("create-feature", { customizeSubmit: true, mapView: this.mapView, onDrawComplete: this.onFormReady.bind(this), onEditingAttachment: this.showSubmitCancelButton.bind(this), onFail: this.createFeatureFailed.bind(this), onProgressStatus: this.updatedProgressStatus.bind(this), onSuccess: this.onReportSubmitted.bind(this), ref: el => this._createFeature = el, searchConfiguration: this.searchConfiguration, selectedLayerId: this._selectedLayerId }))));
294
294
  }
295
295
  /**
296
296
  * Update the progress bar status when editor panel changes
@@ -301,10 +301,12 @@ const CrowdsourceReporter = class {
301
301
  this._updatedProgressBarStatus = evt.detail;
302
302
  }
303
303
  /**
304
- * When drawing of incident location completed on map show the submit and cancel button
304
+ * When form is ready then show submit and cancel button
305
305
  * @protected
306
306
  */
307
- onDrawComplete() {
307
+ onFormReady() {
308
+ // update the form state when form is ready
309
+ this.updateFormState(true);
308
310
  this._showSubmitCancelButton = true;
309
311
  }
310
312
  /**
@@ -331,6 +333,10 @@ const CrowdsourceReporter = class {
331
333
  if (this._createFeature) {
332
334
  void this._createFeature.close();
333
335
  }
336
+ //on back form will be closed, so update the form state
337
+ if (this.isFormOpen) {
338
+ this.updateFormState(false);
339
+ }
334
340
  this.backFromSelectedPanel();
335
341
  }
336
342
  /**
@@ -351,6 +357,10 @@ const CrowdsourceReporter = class {
351
357
  void this._createRelatedFeature.close();
352
358
  this._showSubmitCancelButton = false;
353
359
  }
360
+ //on back form will be closed, so update the form state
361
+ if (this.isFormOpen) {
362
+ this.updateFormState(false);
363
+ }
354
364
  this.backFromSelectedPanel();
355
365
  }
356
366
  /**
@@ -367,6 +377,10 @@ const CrowdsourceReporter = class {
367
377
  * @protected
368
378
  */
369
379
  onReportSubmitted() {
380
+ //on report submit form will be closed, so update the form state
381
+ if (this.isFormOpen) {
382
+ this.updateFormState(false);
383
+ }
370
384
  this._reportSubmitted = true;
371
385
  void this.navigateToHomePage();
372
386
  }
@@ -503,7 +517,16 @@ const CrowdsourceReporter = class {
503
517
  */
504
518
  toggleSidePanel() {
505
519
  this._sidePanelCollapsed = !this._sidePanelCollapsed;
506
- this.togglePanel.emit(this._sidePanelCollapsed);
520
+ this.togglePanel.emit({ panelState: this._sidePanelCollapsed, isFormOpen: this.isFormOpen });
521
+ }
522
+ /**
523
+ * Hide map when form open in case of mobile
524
+ * @param isFormOpen updated form state
525
+ * @protected
526
+ */
527
+ updateFormState(isFormOpen) {
528
+ this.isFormOpen = isFormOpen;
529
+ this.togglePanel.emit({ panelState: this._sidePanelCollapsed, isFormOpen: this.isFormOpen });
507
530
  }
508
531
  /**
509
532
  * When feature is selected from list store that and show feature details
@@ -598,7 +621,7 @@ const CrowdsourceReporter = class {
598
621
  * @returns Node
599
622
  */
600
623
  getAddCommentFlowItem() {
601
- return (index.h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._relatedTable.title, onCalciteFlowItemBack: this.backFromCreateRelatedFeaturePanel.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), index.h("div", { class: "width-full", slot: "footer" }, this._showSubmitCancelButton && index.h("div", { class: "width-full", slot: "footer" }, index.h("calcite-button", { appearance: "solid", class: "footer-top-button footer-button", onClick: this.onCreateRelatedFeatureSubmitButtonClick.bind(this), width: "full" }, this._translations.submit), index.h("calcite-button", { appearance: "outline", class: "footer-button", onClick: this.backFromCreateRelatedFeaturePanel.bind(this), width: "full" }, this._translations.cancel))), index.h("calcite-panel", null, index.h("create-related-feature", { customizeSubmit: true, mapView: this.mapView, onFail: this.addCommentFailed.bind(this), onIsActionPending: this.showSubmitCancelButton.bind(this), onSuccess: this.onCommentSubmitted.bind(this), ref: el => this._createRelatedFeature = el, selectedFeature: this._currentFeature, table: this._relatedTable }))));
624
+ return (index.h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._relatedTable.title, onCalciteFlowItemBack: this.backFromCreateRelatedFeaturePanel.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), index.h("div", { class: "width-full", slot: "footer" }, this._showSubmitCancelButton && index.h("div", { class: "width-full", slot: "footer" }, index.h("calcite-button", { appearance: "solid", class: "footer-top-button footer-button", onClick: this.onCreateRelatedFeatureSubmitButtonClick.bind(this), width: "full" }, this._translations.submit), index.h("calcite-button", { appearance: "outline", class: "footer-button", onClick: this.backFromCreateRelatedFeaturePanel.bind(this), width: "full" }, this._translations.cancel))), index.h("calcite-panel", null, index.h("create-related-feature", { customizeSubmit: true, mapView: this.mapView, onFail: this.addCommentFailed.bind(this), onFormReady: this.onFormReady.bind(this), onIsActionPending: this.showSubmitCancelButton.bind(this), onSuccess: this.onCommentSubmitted.bind(this), ref: el => this._createRelatedFeature = el, selectedFeature: this._currentFeature, table: this._relatedTable }))));
602
625
  }
603
626
  /**
604
627
  * Sets the selected features and updates the first feature as the current selected feature
@@ -194,14 +194,23 @@ export class CreateFeature {
194
194
  }
195
195
  });
196
196
  this._editor.viewModel.addHandles(handle);
197
+ //Add handle to watch featureFormViewModel ready state
198
+ const formHandle = this.reactiveUtils.watch(() => { var _a; return (_a = this._editor.viewModel.featureFormViewModel) === null || _a === void 0 ? void 0 : _a.state; }, (state) => {
199
+ if (state === 'ready') {
200
+ this._showSearchWidget = false;
201
+ this.progressStatus.emit(1);
202
+ this.drawComplete.emit();
203
+ }
204
+ });
205
+ this._editor.viewModel.addHandles(formHandle);
197
206
  //Add handle to watch editor viewmodel state and then show the search widget
198
- const formHandle = this.reactiveUtils.watch(() => this._editor.viewModel.state, (state) => {
207
+ const createFeatureHandle = this.reactiveUtils.watch(() => this._editor.viewModel.state, (state) => {
199
208
  if (state === 'creating-features') {
200
209
  this._editorLoading = true;
201
210
  this._showSearchWidget = true;
202
211
  }
203
212
  });
204
- this._editor.viewModel.addHandles(formHandle);
213
+ this._editor.viewModel.addHandles(createFeatureHandle);
205
214
  }
206
215
  /**
207
216
  * Start creating the feature
@@ -219,14 +228,6 @@ export class CreateFeature {
219
228
  setTimeout(() => {
220
229
  //on form submit
221
230
  this._editor.viewModel.featureFormViewModel.on('submit', this.submitted.bind(this));
222
- //on sketch complete emit the event
223
- this._editor.viewModel.sketchViewModel.on("create", (evt) => {
224
- if (evt.state === "complete") {
225
- this._showSearchWidget = false;
226
- this.progressStatus.emit(1);
227
- this.drawComplete.emit();
228
- }
229
- });
230
231
  //hides the header and footer elements in editor widget
231
232
  this.hideEditorsElements().then(() => {
232
233
  resolve({});
@@ -340,13 +341,13 @@ export class CreateFeature {
340
341
  * @protected
341
342
  */
342
343
  async hideEditorsElements() {
343
- var _a;
344
+ var _a, _b;
344
345
  if (!this.customizeSubmit) {
345
346
  return;
346
347
  }
347
348
  await this.timeout(700);
348
349
  //hides the header and footer on the featureForm
349
- (_a = this.el.querySelector('.esri-editor').querySelectorAll('calcite-flow-item')) === null || _a === void 0 ? void 0 : _a.forEach((flowItem) => {
350
+ (_b = (_a = this.el.querySelector('.esri-editor')) === null || _a === void 0 ? void 0 : _a.querySelectorAll('calcite-flow-item')) === null || _b === void 0 ? void 0 : _b.forEach((flowItem) => {
350
351
  var _a, _b, _c, _d, _e;
351
352
  const article = (_c = (_b = (_a = flowItem.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('calcite-panel')) === null || _b === void 0 ? void 0 : _b.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('article');
352
353
  //hide the header
@@ -114,7 +114,7 @@ export class CreateRelatedFeature {
114
114
  }
115
115
  render() {
116
116
  const loaderClass = this._editorLoading ? "" : "display-none";
117
- return (h("calcite-loader", { key: 'a8fd1e83a4a9614779be19a11e6028b3a402cbd2', class: loaderClass, label: "", scale: "s" }));
117
+ return (h("calcite-loader", { key: '5302b1166a175b0605604792cd40b9d3fbfabd02', class: loaderClass, label: "", scale: "s" }));
118
118
  }
119
119
  /**
120
120
  * StencilJS: Called once just after the component is fully loaded and the first render() occurs.
@@ -162,6 +162,13 @@ export class CreateRelatedFeature {
162
162
  }
163
163
  });
164
164
  this._editor.viewModel.addHandles(attachmentHandle);
165
+ //Add handle to watch featureFormViewModel ready state
166
+ const formHandle = this.reactiveUtils.watch(() => { var _a; return (_a = this._editor.viewModel.featureFormViewModel) === null || _a === void 0 ? void 0 : _a.state; }, (state) => {
167
+ if (state === 'ready') {
168
+ this.formReady.emit();
169
+ }
170
+ });
171
+ this._editor.viewModel.addHandles(formHandle);
165
172
  }
166
173
  /**
167
174
  * Start creating the feature feature form
@@ -187,8 +194,6 @@ export class CreateRelatedFeature {
187
194
  await this._editor.startCreateFeaturesWorkflowAtFeatureCreation(creationInfo);
188
195
  //hides the header and footer elements in editor widget
189
196
  await this.hideEditorsElements();
190
- // Emit an event to show submit cancel buttons
191
- this.isActionPending.emit(false);
192
197
  this._editor.viewModel.featureFormViewModel.on('submit', this.submitted.bind(this));
193
198
  }
194
199
  /**
@@ -422,6 +427,21 @@ export class CreateRelatedFeature {
422
427
  "resolved": "boolean",
423
428
  "references": {}
424
429
  }
430
+ }, {
431
+ "method": "formReady",
432
+ "name": "formReady",
433
+ "bubbles": true,
434
+ "cancelable": true,
435
+ "composed": true,
436
+ "docs": {
437
+ "tags": [],
438
+ "text": "Emitted on demand when form is ready"
439
+ },
440
+ "complexType": {
441
+ "original": "void",
442
+ "resolved": "void",
443
+ "references": {}
444
+ }
425
445
  }];
426
446
  }
427
447
  static get methods() {
@@ -211,7 +211,9 @@ export class CrowdsourceManager {
211
211
  async componentDidRender() {
212
212
  if (this._shouldSetMapView) {
213
213
  this._shouldSetMapView = false;
214
- await this._setMapView();
214
+ if (this._mapChange) {
215
+ await this._setMapView();
216
+ }
215
217
  }
216
218
  }
217
219
  /**
@@ -118,7 +118,7 @@ export class CrowdsourceReporter {
118
118
  */
119
119
  render() {
120
120
  const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light";
121
- return (h(Host, { key: '119bb8b1c9115dca4e15c45ddd8e7fbed500b4d7' }, this._reportSubmitted && h("calcite-alert", { key: 'ef85c61fb5c9eaac9391c1e37494ef5e4244dadb', "auto-close": true, class: themeClass + " report-submitted-msg", icon: "check-circle", kind: "success", label: "", onCalciteAlertClose: () => { this._reportSubmitted = false; }, open: true, placement: "top" }, h("div", { key: '616a75103a227cf1b50d9e43fea129afc3fee4f9', slot: "message" }, this.reportSubmittedMessage ? this.reportSubmittedMessage : this._translations.submitMsg)), this._featureCreationFailedErrorMsg && h("calcite-alert", { key: '2faf9a9729bf90b87e044bfe8958571735f2cbf5', "auto-close": true, class: themeClass, icon: "x-octagon", kind: "danger", label: "", onCalciteAlertClose: () => { this._featureCreationFailedErrorMsg = ""; }, open: true, placement: "top" }, h("div", { key: '66cdf81166042ff4efddd4cc5801d790463d75fc', slot: "title" }, this._translations.error), h("div", { key: 'ad289b06742d2159d6fcfbdc42ecc9fb6d81f362', slot: "message" }, this._featureCreationFailedErrorMsg)), this._commentSubmitted && h("calcite-alert", { key: '27aee542bfd2cae8972035d17167407b35b5eb76', "auto-close": true, class: 'report-submitted ' + themeClass, icon: "check-circle", kind: "success", label: "", onCalciteAlertClose: () => { this._commentSubmitted = false; }, open: true, placement: "top" }, h("div", { key: '70a8a21de05b00d409adb226d6393817f7514930', slot: "message" }, this._translations.commentSubmittedMsg)), this._addingCommentFailed && h("calcite-alert", { key: '107ab01eca03500faeb4db5a2ac0e9dc7261e6fc', "auto-close": true, class: themeClass, icon: "x-octagon", kind: "danger", label: "", onCalciteAlertClose: () => { this._addingCommentFailed = false; }, open: true, placement: "top" }, h("div", { key: '31e6fba8c28489f87897a13ebb4e7b8956452191', slot: "title" }, this._translations.error), h("div", { key: '6f0868946ef6e04490ba1e0806a03e26c756760b', slot: "message" }, this._translations.addingCommentFailedMsg)), h("div", { key: 'e169b7b466023010d45151ca9b7dfb900d8d7f9f' }, h("calcite-shell", { key: '72899b8eff6622233224df91223ee5d59539905b', "content-behind": true }, this._getReporter())), this.filterModal()));
121
+ return (h(Host, { key: 'e512e2693a586f8a6da7bcfa171feb60da26aee3' }, this._reportSubmitted && h("calcite-alert", { key: 'e5805ba948f1dc43eba2a78716af452cf71a8222', "auto-close": true, class: themeClass + " report-submitted-msg", icon: "check-circle", kind: "success", label: "", onCalciteAlertClose: () => { this._reportSubmitted = false; }, open: true, placement: "top" }, h("div", { key: '95b9accf1f09186c09c81cfb02a8939c4869ae8d', slot: "message" }, this.reportSubmittedMessage ? this.reportSubmittedMessage : this._translations.submitMsg)), this._featureCreationFailedErrorMsg && h("calcite-alert", { key: 'cab7f0e0f0d882612b4fa6f00799be9870aea6c5', "auto-close": true, class: themeClass, icon: "x-octagon", kind: "danger", label: "", onCalciteAlertClose: () => { this._featureCreationFailedErrorMsg = ""; }, open: true, placement: "top" }, h("div", { key: 'b9453672d85e26cf7bdeae0923cd36020d259d49', slot: "title" }, this._translations.error), h("div", { key: '5084315857bc88b8f80aaa411ac3fd5e4493e918', slot: "message" }, this._featureCreationFailedErrorMsg)), this._commentSubmitted && h("calcite-alert", { key: '62b7d9818913c3331ca9c8e4ed23c7f0c48a7946', "auto-close": true, class: 'report-submitted ' + themeClass, icon: "check-circle", kind: "success", label: "", onCalciteAlertClose: () => { this._commentSubmitted = false; }, open: true, placement: "top" }, h("div", { key: '5f18444fd375657db0c2a403cb453ead75536181', slot: "message" }, this._translations.commentSubmittedMsg)), this._addingCommentFailed && h("calcite-alert", { key: '732f08960095fc9fefcc79fc8df387a5a4c3f781', "auto-close": true, class: themeClass, icon: "x-octagon", kind: "danger", label: "", onCalciteAlertClose: () => { this._addingCommentFailed = false; }, open: true, placement: "top" }, h("div", { key: '16415430cf33ce53c0d49cab19dce2c3e34257d6', slot: "title" }, this._translations.error), h("div", { key: '83e5918e00902bd49512165f4aa62813cecb4619', slot: "message" }, this._translations.addingCommentFailedMsg)), h("div", { key: '3e9dadd880319708e64e717ba7e7adaddf97b935' }, h("calcite-shell", { key: 'c72664d361b3904bc191668207c3ad31ff1f98c9', "content-behind": true }, this._getReporter())), this.filterModal()));
122
122
  }
123
123
  //--------------------------------------------------------------------------
124
124
  //
@@ -295,7 +295,7 @@ export class CrowdsourceReporter {
295
295
  * @protected
296
296
  */
297
297
  getFeatureCreateFlowItem() {
298
- return (h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._selectedLayerName, onCalciteFlowItemBack: this.backFromCreateFeaturePanel.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), this._showSubmitCancelButton && h("div", { class: "width-full", slot: "footer" }, h("calcite-button", { appearance: "solid", class: "footer-top-button footer-button", onClick: this.onCreateFeatureSubmitButtonClick.bind(this), width: "full" }, this._translations.submit), h("calcite-button", { appearance: "outline", class: "footer-button", onClick: this.backFromCreateFeaturePanel.bind(this), width: "full" }, this._translations.cancel)), h("calcite-panel", { "full-height": true, "full-width": true }, h("div", { class: "progress-bar" }, h("calcite-progress", { type: "determinate", value: this._updatedProgressBarStatus })), h("calcite-notice", { class: "notice-msg", icon: "lightbulb", kind: "success", open: true }, h("div", { slot: "message" }, this._translations.featureEditFormInfoMsg)), h("create-feature", { customizeSubmit: true, mapView: this.mapView, onDrawComplete: this.onDrawComplete.bind(this), onEditingAttachment: this.showSubmitCancelButton.bind(this), onFail: this.createFeatureFailed.bind(this), onProgressStatus: this.updatedProgressStatus.bind(this), onSuccess: this.onReportSubmitted.bind(this), ref: el => this._createFeature = el, searchConfiguration: this.searchConfiguration, selectedLayerId: this._selectedLayerId }))));
298
+ return (h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._selectedLayerName, onCalciteFlowItemBack: this.backFromCreateFeaturePanel.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), this._showSubmitCancelButton && h("div", { class: "width-full", slot: "footer" }, h("calcite-button", { appearance: "solid", class: "footer-top-button footer-button", onClick: this.onCreateFeatureSubmitButtonClick.bind(this), width: "full" }, this._translations.submit), h("calcite-button", { appearance: "outline", class: "footer-button", onClick: this.backFromCreateFeaturePanel.bind(this), width: "full" }, this._translations.cancel)), h("calcite-panel", { "full-height": true, "full-width": true }, h("div", { class: "progress-bar" }, h("calcite-progress", { type: "determinate", value: this._updatedProgressBarStatus })), h("calcite-notice", { class: "notice-msg", icon: "lightbulb", kind: "success", open: true }, h("div", { slot: "message" }, this._translations.featureEditFormInfoMsg)), h("create-feature", { customizeSubmit: true, mapView: this.mapView, onDrawComplete: this.onFormReady.bind(this), onEditingAttachment: this.showSubmitCancelButton.bind(this), onFail: this.createFeatureFailed.bind(this), onProgressStatus: this.updatedProgressStatus.bind(this), onSuccess: this.onReportSubmitted.bind(this), ref: el => this._createFeature = el, searchConfiguration: this.searchConfiguration, selectedLayerId: this._selectedLayerId }))));
299
299
  }
300
300
  /**
301
301
  * Update the progress bar status when editor panel changes
@@ -306,10 +306,12 @@ export class CrowdsourceReporter {
306
306
  this._updatedProgressBarStatus = evt.detail;
307
307
  }
308
308
  /**
309
- * When drawing of incident location completed on map show the submit and cancel button
309
+ * When form is ready then show submit and cancel button
310
310
  * @protected
311
311
  */
312
- onDrawComplete() {
312
+ onFormReady() {
313
+ // update the form state when form is ready
314
+ this.updateFormState(true);
313
315
  this._showSubmitCancelButton = true;
314
316
  }
315
317
  /**
@@ -336,6 +338,10 @@ export class CrowdsourceReporter {
336
338
  if (this._createFeature) {
337
339
  void this._createFeature.close();
338
340
  }
341
+ //on back form will be closed, so update the form state
342
+ if (this.isFormOpen) {
343
+ this.updateFormState(false);
344
+ }
339
345
  this.backFromSelectedPanel();
340
346
  }
341
347
  /**
@@ -356,6 +362,10 @@ export class CrowdsourceReporter {
356
362
  void this._createRelatedFeature.close();
357
363
  this._showSubmitCancelButton = false;
358
364
  }
365
+ //on back form will be closed, so update the form state
366
+ if (this.isFormOpen) {
367
+ this.updateFormState(false);
368
+ }
359
369
  this.backFromSelectedPanel();
360
370
  }
361
371
  /**
@@ -372,6 +382,10 @@ export class CrowdsourceReporter {
372
382
  * @protected
373
383
  */
374
384
  onReportSubmitted() {
385
+ //on report submit form will be closed, so update the form state
386
+ if (this.isFormOpen) {
387
+ this.updateFormState(false);
388
+ }
375
389
  this._reportSubmitted = true;
376
390
  void this.navigateToHomePage();
377
391
  }
@@ -508,7 +522,16 @@ export class CrowdsourceReporter {
508
522
  */
509
523
  toggleSidePanel() {
510
524
  this._sidePanelCollapsed = !this._sidePanelCollapsed;
511
- this.togglePanel.emit(this._sidePanelCollapsed);
525
+ this.togglePanel.emit({ panelState: this._sidePanelCollapsed, isFormOpen: this.isFormOpen });
526
+ }
527
+ /**
528
+ * Hide map when form open in case of mobile
529
+ * @param isFormOpen updated form state
530
+ * @protected
531
+ */
532
+ updateFormState(isFormOpen) {
533
+ this.isFormOpen = isFormOpen;
534
+ this.togglePanel.emit({ panelState: this._sidePanelCollapsed, isFormOpen: this.isFormOpen });
512
535
  }
513
536
  /**
514
537
  * When feature is selected from list store that and show feature details
@@ -603,7 +626,7 @@ export class CrowdsourceReporter {
603
626
  * @returns Node
604
627
  */
605
628
  getAddCommentFlowItem() {
606
- return (h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._relatedTable.title, onCalciteFlowItemBack: this.backFromCreateRelatedFeaturePanel.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), h("div", { class: "width-full", slot: "footer" }, this._showSubmitCancelButton && h("div", { class: "width-full", slot: "footer" }, h("calcite-button", { appearance: "solid", class: "footer-top-button footer-button", onClick: this.onCreateRelatedFeatureSubmitButtonClick.bind(this), width: "full" }, this._translations.submit), h("calcite-button", { appearance: "outline", class: "footer-button", onClick: this.backFromCreateRelatedFeaturePanel.bind(this), width: "full" }, this._translations.cancel))), h("calcite-panel", null, h("create-related-feature", { customizeSubmit: true, mapView: this.mapView, onFail: this.addCommentFailed.bind(this), onIsActionPending: this.showSubmitCancelButton.bind(this), onSuccess: this.onCommentSubmitted.bind(this), ref: el => this._createRelatedFeature = el, selectedFeature: this._currentFeature, table: this._relatedTable }))));
629
+ return (h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._relatedTable.title, onCalciteFlowItemBack: this.backFromCreateRelatedFeaturePanel.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), h("div", { class: "width-full", slot: "footer" }, this._showSubmitCancelButton && h("div", { class: "width-full", slot: "footer" }, h("calcite-button", { appearance: "solid", class: "footer-top-button footer-button", onClick: this.onCreateRelatedFeatureSubmitButtonClick.bind(this), width: "full" }, this._translations.submit), h("calcite-button", { appearance: "outline", class: "footer-button", onClick: this.backFromCreateRelatedFeaturePanel.bind(this), width: "full" }, this._translations.cancel))), h("calcite-panel", null, h("create-related-feature", { customizeSubmit: true, mapView: this.mapView, onFail: this.addCommentFailed.bind(this), onFormReady: this.onFormReady.bind(this), onIsActionPending: this.showSubmitCancelButton.bind(this), onSuccess: this.onCommentSubmitted.bind(this), ref: el => this._createRelatedFeature = el, selectedFeature: this._currentFeature, table: this._relatedTable }))));
607
630
  }
608
631
  /**
609
632
  * Sets the selected features and updates the first feature as the current selected feature
@@ -1425,8 +1448,8 @@ export class CrowdsourceReporter {
1425
1448
  "text": "Emitted when toggle panel button is clicked in reporter"
1426
1449
  },
1427
1450
  "complexType": {
1428
- "original": "boolean",
1429
- "resolved": "boolean",
1451
+ "original": "{panelState: boolean, isFormOpen: boolean}",
1452
+ "resolved": "{ panelState: boolean; isFormOpen: boolean; }",
1430
1453
  "references": {}
1431
1454
  }
1432
1455
  }];
@@ -329,10 +329,6 @@ export class FeatureDetails {
329
329
  const param = { updateFeatures: [newGraphicInstance] };
330
330
  await selectedLayer.applyEdits(param).then(() => {
331
331
  this._selectedGraphic = selectFeatureAttr;
332
- //update the current graphics in info card so that, the updated values are reflected in popup content
333
- if (this._infoCard) {
334
- void this._infoCard.updateCurrentGraphic(this._selectedGraphic);
335
- }
336
332
  //store the like dislike value for the current selected graphic in local storage
337
333
  this.setInLocalStorage();
338
334
  this._updating = false;
@@ -35,12 +35,17 @@ export class FloorFilter {
35
35
  * Watch for changes to the mapView and re-init the floor filter
36
36
  */
37
37
  async mapViewWatchHandler() {
38
+ console.log("mapViewWatchHandler");
39
+ console.log(`this.mapView: ${this.mapView}`);
38
40
  await this._initFloorFilter(this.mapView);
39
41
  }
40
42
  /**
41
43
  * Watch for changes to the enabled property and re-init or destroy the floor filter
42
44
  */
43
45
  async enabledWatchHandler() {
46
+ console.log("enabledWatchHandler");
47
+ console.log(`this.enabled: ${this.enabled}`);
48
+ console.log(`this.mapView: ${this.mapView}`);
44
49
  if (this.enabled) {
45
50
  await this._initFloorFilter(this.mapView);
46
51
  }
@@ -63,7 +68,9 @@ export class FloorFilter {
63
68
  * Renders the component.
64
69
  */
65
70
  render() {
66
- return (h(Host, { key: 'c80a8d46fb48f3789d9fa09c2400faad49e2e236' }, h("div", { key: '82919a3ba061a17c8aeaa0d2f6f4f13bc428b519', ref: (el) => { this._floorFilterElement = el; } })));
71
+ console.log("render");
72
+ console.log(`this._floorFilterElement: ${this._floorFilterElement}`);
73
+ return (h(Host, { key: '01b71c71af2a183b85c8620c338512fd338f19ef' }, h("div", { key: '752d397c6e3b6a2257d0a8a05051ed821eca4b94', ref: (el) => { this._floorFilterElement = el; } })));
67
74
  }
68
75
  //--------------------------------------------------------------------------
69
76
  //
@@ -91,6 +98,7 @@ export class FloorFilter {
91
98
  * @protected
92
99
  */
93
100
  _destroyWidget() {
101
+ console.log("_destroyWidget");
94
102
  if (this.floorFilterWidget) {
95
103
  this.floorFilterWidget.destroy();
96
104
  this.floorFilterWidget = undefined;
@@ -105,6 +113,7 @@ export class FloorFilter {
105
113
  * @protected
106
114
  */
107
115
  _initContainer() {
116
+ console.log("_initContainer");
108
117
  this._destroyWidget();
109
118
  this._floorFilterElement = document.createElement("div");
110
119
  }
@@ -112,11 +121,18 @@ export class FloorFilter {
112
121
  * Initialize the floor filter or reset the current view if it already exists
113
122
  */
114
123
  async _initFloorFilter(view) {
124
+ console.log("_initFloorFilter");
115
125
  const webMap = view === null || view === void 0 ? void 0 : view.map;
116
- if (view && this.enabled && this.FloorFilter && (webMap === null || webMap === void 0 ? void 0 : webMap.floorInfo)) {
117
- this._initContainer();
118
- await webMap.when(() => {
119
- var _a, _b, _c;
126
+ await webMap.when(() => {
127
+ var _a, _b, _c;
128
+ console.log("webMap.when");
129
+ console.log("_initFloorFilter");
130
+ console.log(`view: ${view}`);
131
+ console.log(`this.enabled: ${this.enabled}`);
132
+ console.log(`this.FloorFilter: ${this.FloorFilter}`);
133
+ console.log(`webMap?.floorInfo: ${webMap === null || webMap === void 0 ? void 0 : webMap.floorInfo}`);
134
+ if (view && this.enabled && this.FloorFilter && (webMap === null || webMap === void 0 ? void 0 : webMap.floorInfo)) {
135
+ this._initContainer();
120
136
  this.floorFilterWidget = new this.FloorFilter({
121
137
  container: this._floorFilterElement,
122
138
  view
@@ -133,8 +149,8 @@ export class FloorFilter {
133
149
  this._siteHandle = this.reactiveUtils.watch(() => this.floorFilterWidget.site, (site) => {
134
150
  this.siteChanged.emit(site);
135
151
  });
136
- });
137
- }
152
+ }
153
+ });
138
154
  }
139
155
  static get is() { return "floor-filter"; }
140
156
  static get encapsulation() { return "shadow"; }