@esri/solutions-components 0.7.30 → 0.7.31

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. package/dist/assets/t9n/crowdsource-reporter/resources.json +7 -5
  2. package/dist/assets/t9n/crowdsource-reporter/resources_en.json +7 -5
  3. package/dist/assets/t9n/feature-list/resources.json +1 -1
  4. package/dist/assets/t9n/feature-list/resources_en.json +1 -1
  5. package/dist/assets/t9n/layer-list/resources.json +1 -1
  6. package/dist/assets/t9n/layer-list/resources_en.json +1 -1
  7. package/dist/cjs/{calcite-flow_4.cjs.entry.js → calcite-flow_5.cjs.entry.js} +235 -19
  8. package/dist/cjs/card-manager_3.cjs.entry.js +1 -1
  9. package/dist/cjs/crowdsource-reporter.cjs.entry.js +221 -32
  10. package/dist/cjs/{downloadUtils-83c6d3c3.js → downloadUtils-10e0de31.js} +2 -2
  11. package/dist/cjs/{index.es-bd1a93b2.js → index.es-72dc7ab9.js} +1 -1
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/map-select-tools_3.cjs.entry.js +1 -1
  14. package/dist/cjs/public-notification.cjs.entry.js +1 -1
  15. package/dist/cjs/solutions-components.cjs.js +1 -1
  16. package/dist/collection/collection-manifest.json +1 -0
  17. package/dist/collection/components/create-feature/create-feature.css +23 -0
  18. package/dist/collection/components/create-feature/create-feature.js +361 -0
  19. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.css +10 -1
  20. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +260 -33
  21. package/dist/collection/components/feature-list/feature-list.js +1 -0
  22. package/dist/collection/components/layer-list/layer-list.js +60 -16
  23. package/dist/collection/demos/crowdsource-reporter.html +26 -11
  24. package/dist/collection/utils/downloadUtils.js +1 -1
  25. package/dist/collection/utils/downloadUtils.ts +1 -1
  26. package/dist/components/create-feature.d.ts +11 -0
  27. package/dist/components/create-feature.js +11 -0
  28. package/dist/components/create-feature2.js +226 -0
  29. package/dist/components/crowdsource-reporter.js +297 -90
  30. package/dist/components/downloadUtils.js +1 -1
  31. package/dist/components/feature-list2.js +1 -0
  32. package/dist/components/layer-list2.js +38 -17
  33. package/dist/esm/{calcite-flow_4.entry.js → calcite-flow_5.entry.js} +235 -20
  34. package/dist/esm/card-manager_3.entry.js +1 -1
  35. package/dist/esm/crowdsource-reporter.entry.js +222 -33
  36. package/dist/esm/{downloadUtils-d070a467.js → downloadUtils-d297078f.js} +2 -2
  37. package/dist/esm/{index.es-d48535a2.js → index.es-3b4fa9d0.js} +1 -1
  38. package/dist/esm/loader.js +1 -1
  39. package/dist/esm/map-select-tools_3.entry.js +1 -1
  40. package/dist/esm/public-notification.entry.js +1 -1
  41. package/dist/esm/solutions-components.js +1 -1
  42. package/dist/solutions-components/demos/crowdsource-reporter.html +26 -11
  43. package/dist/solutions-components/{p-f120ff40.entry.js → p-09ec8c8f.entry.js} +1 -1
  44. package/dist/solutions-components/{p-55b835a1.js → p-103c5318.js} +2 -2
  45. package/dist/solutions-components/{p-309cdea1.entry.js → p-57d49d15.entry.js} +1 -1
  46. package/dist/solutions-components/{p-b913a4fd.js → p-8ec25bf4.js} +1 -1
  47. package/dist/solutions-components/{p-f22ff57e.entry.js → p-921f21d5.entry.js} +1 -1
  48. package/dist/solutions-components/p-b4e2cac4.entry.js +17 -0
  49. package/dist/solutions-components/p-bb6562ab.entry.js +6 -0
  50. package/dist/solutions-components/solutions-components.esm.js +1 -1
  51. package/dist/solutions-components/utils/downloadUtils.ts +1 -1
  52. package/dist/types/components/create-feature/create-feature.d.ts +107 -0
  53. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +132 -12
  54. package/dist/types/components/feature-list/feature-list.d.ts +1 -0
  55. package/dist/types/components/layer-list/layer-list.d.ts +6 -0
  56. package/dist/types/components.d.ts +89 -0
  57. package/dist/types/preact.d.ts +6 -0
  58. package/package.json +1 -1
  59. package/dist/solutions-components/p-2f162664.entry.js +0 -6
  60. package/dist/solutions-components/p-94ee3ef7.entry.js +0 -17
@@ -2859,7 +2859,7 @@ function _prepareAttributeValue(attributeValue, attributeType, attributeDomain,
2859
2859
  if (attributeDomain && attributeDomain.type === "coded-value") {
2860
2860
  // "coded-value" domain field
2861
2861
  const value = attributeDomain.getName(attributeValue);
2862
- return value.toString();
2862
+ return value === null || value === void 0 ? void 0 : value.toString();
2863
2863
  }
2864
2864
  else {
2865
2865
  // Non-domain field or unsupported domain type
@@ -91,6 +91,7 @@ const FeatureList = /*@__PURE__*/ proxyCustomElement(class FeatureList extends H
91
91
  //--------------------------------------------------------------------------
92
92
  /**
93
93
  * Initialize the features list using the selected layer
94
+ * @protected
94
95
  */
95
96
  async initializeFeatureItems() {
96
97
  if (this._selectedLayer) {
@@ -39,6 +39,23 @@ const LayerList = /*@__PURE__*/ proxyCustomElement(class LayerList extends HTMLE
39
39
  }
40
40
  //--------------------------------------------------------------------------
41
41
  //
42
+ // Watch handlers
43
+ //
44
+ //--------------------------------------------------------------------------
45
+ //--------------------------------------------------------------------------
46
+ //
47
+ // Methods (public)
48
+ //
49
+ //--------------------------------------------------------------------------
50
+ /**
51
+ * Refresh the layer list which will fetch the latest layer count and update the list
52
+ * @returns Promise that resolves when the operation is complete
53
+ */
54
+ async refresh() {
55
+ await this.setLayers();
56
+ }
57
+ //--------------------------------------------------------------------------
58
+ //
42
59
  // Functions (lifecycle)
43
60
  //
44
61
  //--------------------------------------------------------------------------
@@ -63,7 +80,7 @@ const LayerList = /*@__PURE__*/ proxyCustomElement(class LayerList extends HTMLE
63
80
  render() {
64
81
  return (h(Fragment, null, this._isLoading && h("calcite-loader", { scale: "m" }), !this._isLoading && this.mapView && this._noLayersToDisplay &&
65
82
  h("calcite-notice", { class: "error-msg", icon: "layers-reference", kind: "danger", open: true }, h("div", { slot: "title" }, this._translations.error), h("div", { slot: "message" }, this.noLayerErrorMsg ? this.noLayerErrorMsg : this._translations.noLayerToDisplayErrorMsg)), !this._isLoading && this.mapView &&
66
- h("calcite-list", { "selection-appearance": "border", "selection-mode": this.showNextIcon ? "none" : "single" }, this.renderLayerList())));
83
+ h("calcite-list", { "selection-appearance": "border", "selection-mode": this.showNextIcon ? "none" : "single-persist" }, this.renderLayerList())));
67
84
  }
68
85
  //--------------------------------------------------------------------------
69
86
  //
@@ -90,21 +107,24 @@ const LayerList = /*@__PURE__*/ proxyCustomElement(class LayerList extends HTMLE
90
107
  this._layerItemsHash = await getMapLayerHash(this.mapView, true);
91
108
  const allMapLayers = await getAllLayers(this.mapView);
92
109
  // eslint-disable-next-line @typescript-eslint/no-misused-promises
93
- this.showFeatureCount && allMapLayers.forEach(async (eachLayer) => {
110
+ allMapLayers.forEach(async (eachLayer) => {
94
111
  var _a, _b;
95
112
  //TODO: checking editable condition could be configurable
96
- if ((eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.type) === "feature" && (eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.editingEnabled) && ((_b = (_a = eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.capabilities) === null || _a === void 0 ? void 0 : _a.operations) === null || _b === void 0 ? void 0 : _b.supportsUpdate)) {
97
- const q = eachLayer.createQuery();
98
- const result = eachLayer.queryFeatureCount(q);
99
- def.push(result);
100
- void result.then(async (resCount) => {
101
- const formattedCount = !isNaN(resCount) ? await formatNumber(resCount, {
102
- places: 0,
103
- api: 4,
104
- type: "decimal"
105
- }) : "";
106
- this._layerItemsHash[eachLayer.id].formattedFeatureCount = formattedCount;
107
- });
113
+ if ((eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.type) === "feature" && (eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.editingEnabled) && ((_b = (_a = eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.capabilities) === null || _a === void 0 ? void 0 : _a.operations) === null || _b === void 0 ? void 0 : _b.supportsAdd)) {
114
+ this._layerItemsHash[eachLayer.id].supportsAdd = true;
115
+ if (this.showFeatureCount) {
116
+ const q = eachLayer.createQuery();
117
+ const result = eachLayer.queryFeatureCount(q);
118
+ def.push(result);
119
+ void result.then(async (resCount) => {
120
+ const formattedCount = !isNaN(resCount) ? await formatNumber(resCount, {
121
+ places: 0,
122
+ api: 4,
123
+ type: "decimal"
124
+ }) : "";
125
+ this._layerItemsHash[eachLayer.id].formattedFeatureCount = formattedCount;
126
+ });
127
+ }
108
128
  }
109
129
  });
110
130
  await Promise.all(def).then(() => {
@@ -132,9 +152,9 @@ const LayerList = /*@__PURE__*/ proxyCustomElement(class LayerList extends HTMLE
132
152
  var _a;
133
153
  const configuredLayers = ((_a = this.layers) === null || _a === void 0 ? void 0 : _a.length) > 0 ? this.layers : [];
134
154
  return Object.keys(hash).reduce((prev, cur) => {
135
- let showLayer = hash[cur].supportsUpdate;
155
+ let showLayer = hash[cur].supportsAdd;
136
156
  if ((configuredLayers === null || configuredLayers === void 0 ? void 0 : configuredLayers.length) > 0) {
137
- showLayer = configuredLayers.indexOf(cur) > -1 ? hash[cur].supportsUpdate : false;
157
+ showLayer = configuredLayers.indexOf(cur) > -1 ? hash[cur].supportsAdd : false;
138
158
  }
139
159
  if (showLayer) {
140
160
  prev.push(cur);
@@ -193,7 +213,8 @@ const LayerList = /*@__PURE__*/ proxyCustomElement(class LayerList extends HTMLE
193
213
  "_noLayersToDisplay": [32],
194
214
  "_mapLayerIds": [32],
195
215
  "_isLoading": [32],
196
- "_translations": [32]
216
+ "_translations": [32],
217
+ "refresh": [64]
197
218
  }]);
198
219
  function defineCustomElement() {
199
220
  if (typeof customElements === "undefined") {
@@ -11,16 +11,16 @@ import { c as connectInteractive, u as updateHostInteraction, d as disconnectInt
11
11
  import { c as connectLocalized, d as disconnectLocalized } from './locale-6107ef11.js';
12
12
  import { c as connectMessages, s as setUpMessages, d as disconnectMessages, u as updateMessages } from './t9n-f16911e7.js';
13
13
  import { S as SLOTS$1 } from './resources-649a0f91.js';
14
- import { P as PopupUtils } from './popupUtils-d75edf93.js';
14
+ import { l as loadModules, g as getLocaleComponentStrings, f as formatNumber } from './locale-731e75a8.js';
15
15
  import { g as getLayerOrTable, c as getFeatureLayerView, h as highlightFeatures, d as getMapLayerHash, a as getAllLayers } from './mapViewUtils-cf05e880.js';
16
- import { g as getLocaleComponentStrings, f as formatNumber } from './locale-731e75a8.js';
16
+ import { P as PopupUtils } from './popupUtils-d75edf93.js';
17
17
  import './guid-36c6c6a5.js';
18
18
  import './resources-cdc36705.js';
19
19
  import './browser-b4c16201.js';
20
20
  import './key-af303047.js';
21
- import './interfaces-586e863c.js';
22
21
  import './esri-loader-eda07632.js';
23
22
  import './_commonjsHelpers-d5f9d613.js';
23
+ import './interfaces-586e863c.js';
24
24
 
25
25
  /*!
26
26
  * All material copyright ESRI, All Rights Reserved, unless otherwise specified.
@@ -335,6 +335,200 @@ const FlowItem = class {
335
335
  };
336
336
  FlowItem.style = flowItemCss;
337
337
 
338
+ const createFeatureCss = ":host{display:block}.esri-editor__panel-toolbar{display:none !important}";
339
+
340
+ const CreateFeature = class {
341
+ constructor(hostRef) {
342
+ registerInstance(this, hostRef);
343
+ this.success = createEvent(this, "success", 7);
344
+ this.fail = createEvent(this, "fail", 7);
345
+ this.drawComplete = createEvent(this, "drawComplete", 7);
346
+ this.mapView = undefined;
347
+ this.selectedLayerId = undefined;
348
+ }
349
+ //--------------------------------------------------------------------------
350
+ //
351
+ // Watch handlers
352
+ //
353
+ //--------------------------------------------------------------------------
354
+ /**
355
+ * Called each time the mapView prop is changed.
356
+ */
357
+ async mapViewWatchHandler() {
358
+ await this.mapView.when(async () => {
359
+ await this.init();
360
+ });
361
+ }
362
+ //--------------------------------------------------------------------------
363
+ //
364
+ // Methods (public)
365
+ //
366
+ //--------------------------------------------------------------------------
367
+ /**
368
+ * Destroy the Editor widget instance
369
+ * @returns Promise that resolves when the operation is complete
370
+ */
371
+ async close() {
372
+ if (this._editor) {
373
+ this._editor.destroy();
374
+ }
375
+ }
376
+ /**
377
+ * Submit the created feature
378
+ * @returns Promise that resolves when the operation is complete
379
+ */
380
+ async submit() {
381
+ if (this._editor) {
382
+ this._editor.viewModel.featureFormViewModel.submit();
383
+ }
384
+ }
385
+ //--------------------------------------------------------------------------
386
+ //
387
+ // Functions (lifecycle)
388
+ //
389
+ //--------------------------------------------------------------------------
390
+ /**
391
+ * StencilJS: Called once just after the component is first connected to the DOM.
392
+ * @returns Promise when complete
393
+ */
394
+ async componentWillLoad() {
395
+ await this.initModules();
396
+ }
397
+ /**
398
+ * StencilJS: Called once just after the component is fully loaded and the first render() occurs.
399
+ */
400
+ async componentDidLoad() {
401
+ await this.init();
402
+ }
403
+ /**
404
+ * Renders the component.
405
+ */
406
+ render() {
407
+ return (h(Host, { id: "feature-form" }));
408
+ }
409
+ //--------------------------------------------------------------------------
410
+ //
411
+ // Functions (protected)
412
+ //
413
+ //--------------------------------------------------------------------------
414
+ /**
415
+ * Init Editor widget and starts the create workflow
416
+ */
417
+ async init() {
418
+ if (this.mapView) {
419
+ if (this.mapView && this.selectedLayerId) {
420
+ await getLayerOrTable(this.mapView, this.selectedLayerId);
421
+ await this.createEditorWidget();
422
+ await this.startCreate();
423
+ this._editor.viewModel.featureFormViewModel.on('submit', this.submitted.bind(this));
424
+ setTimeout(() => {
425
+ var _a, _b;
426
+ this.el.querySelector('.esri-editor').querySelectorAll('calcite-flow-item')[1].shadowRoot.querySelector('calcite-panel').shadowRoot.querySelector('article').querySelector('header').setAttribute('style', 'display: none');
427
+ (_b = (_a = this.el.querySelector('.esri-editor').querySelectorAll('calcite-flow-item')[1].shadowRoot.querySelector('calcite-panel').shadowRoot.querySelector('article')) === null || _a === void 0 ? void 0 : _a.querySelector('footer')) === null || _b === void 0 ? void 0 : _b.setAttribute('style', 'display: none');
428
+ }, 700);
429
+ }
430
+ }
431
+ }
432
+ /**
433
+ * Load esri javascript api modules
434
+ * @returns Promise resolving when function is done
435
+ * @protected
436
+ */
437
+ async initModules() {
438
+ const [Editor] = await loadModules([
439
+ "esri/widgets/Editor"
440
+ ]);
441
+ this.Editor = Editor;
442
+ }
443
+ /**
444
+ * Display editor widget to create the new feature
445
+ * @protected
446
+ */
447
+ async createEditorWidget() {
448
+ if (this._editor) {
449
+ this._editor.destroy();
450
+ }
451
+ const container = document.createElement("div");
452
+ const layer = await getLayerOrTable(this.mapView, this.selectedLayerId);
453
+ const selectedLayer = {
454
+ layer: layer
455
+ };
456
+ this._editor = new this.Editor({
457
+ allowedWorkflows: "create-features",
458
+ view: this.mapView,
459
+ layerInfos: [selectedLayer],
460
+ visibleElements: {
461
+ snappingControls: false,
462
+ snappingControlsElements: {
463
+ featureEnabledToggle: false,
464
+ layerList: false,
465
+ enabledToggle: false
466
+ }
467
+ },
468
+ container,
469
+ });
470
+ this.el.appendChild(container);
471
+ }
472
+ /**
473
+ * Start creating the feature
474
+ * @protected
475
+ */
476
+ async startCreate() {
477
+ var _a, _b;
478
+ const layer = await getLayerOrTable(this.mapView, this.selectedLayerId);
479
+ if (layer) {
480
+ let template = layer.templates && layer.templates.length ? layer.templates[0] : {};
481
+ if (((_a = layer.sourceJSON) === null || _a === void 0 ? void 0 : _a.types.length) && ((_b = layer.sourceJSON.types[0].templates) === null || _b === void 0 ? void 0 : _b.length)) {
482
+ template = layer.sourceJSON.types[0].templates[0];
483
+ }
484
+ const creationInfo = {
485
+ layer: layer,
486
+ template: template
487
+ };
488
+ await this._editor.startCreateFeaturesWorkflowAtFeatureCreation(creationInfo);
489
+ this._editor.viewModel.sketchViewModel.on("create", (evt) => {
490
+ if (evt.state === "complete") {
491
+ this.drawComplete.emit();
492
+ }
493
+ });
494
+ }
495
+ }
496
+ /**
497
+ * On creation of feature emit the event that the feature is created
498
+ * @param evt feature submit event
499
+ * @protected
500
+ */
501
+ async submitted(evt) {
502
+ var _a;
503
+ if (evt.invalid.length) {
504
+ return;
505
+ }
506
+ if (evt.valid.length) {
507
+ try {
508
+ await this._editor.activeWorkflow.commit();
509
+ //throw errors if any failures
510
+ if ((_a = this._editor.viewModel.failures) === null || _a === void 0 ? void 0 : _a.length) {
511
+ this._editor.viewModel.failures.some((failure) => {
512
+ if (failure.error) {
513
+ throw (failure.error);
514
+ }
515
+ });
516
+ }
517
+ }
518
+ catch (e) {
519
+ this.fail.emit(e);
520
+ return;
521
+ }
522
+ this.success.emit();
523
+ }
524
+ }
525
+ get el() { return getElement(this); }
526
+ static get watchers() { return {
527
+ "mapView": ["mapViewWatchHandler"]
528
+ }; }
529
+ };
530
+ CreateFeature.style = createFeatureCss;
531
+
338
532
  const featureListCss = ":host{display:block}.width-full{width:100%}.pagination{display:flex;justify-content:center}.error-msg{padding:10px;width:calc(100% - 20px)}.popup-title{font-weight:500;padding:10px 12px}";
339
533
 
340
534
  const FeatureList = class {
@@ -401,6 +595,7 @@ const FeatureList = class {
401
595
  //--------------------------------------------------------------------------
402
596
  /**
403
597
  * Initialize the features list using the selected layer
598
+ * @protected
404
599
  */
405
600
  async initializeFeatureItems() {
406
601
  if (this._selectedLayer) {
@@ -534,6 +729,23 @@ const LayerList = class {
534
729
  }
535
730
  //--------------------------------------------------------------------------
536
731
  //
732
+ // Watch handlers
733
+ //
734
+ //--------------------------------------------------------------------------
735
+ //--------------------------------------------------------------------------
736
+ //
737
+ // Methods (public)
738
+ //
739
+ //--------------------------------------------------------------------------
740
+ /**
741
+ * Refresh the layer list which will fetch the latest layer count and update the list
742
+ * @returns Promise that resolves when the operation is complete
743
+ */
744
+ async refresh() {
745
+ await this.setLayers();
746
+ }
747
+ //--------------------------------------------------------------------------
748
+ //
537
749
  // Functions (lifecycle)
538
750
  //
539
751
  //--------------------------------------------------------------------------
@@ -558,7 +770,7 @@ const LayerList = class {
558
770
  render() {
559
771
  return (h(Fragment, null, this._isLoading && h("calcite-loader", { scale: "m" }), !this._isLoading && this.mapView && this._noLayersToDisplay &&
560
772
  h("calcite-notice", { class: "error-msg", icon: "layers-reference", kind: "danger", open: true }, h("div", { slot: "title" }, this._translations.error), h("div", { slot: "message" }, this.noLayerErrorMsg ? this.noLayerErrorMsg : this._translations.noLayerToDisplayErrorMsg)), !this._isLoading && this.mapView &&
561
- h("calcite-list", { "selection-appearance": "border", "selection-mode": this.showNextIcon ? "none" : "single" }, this.renderLayerList())));
773
+ h("calcite-list", { "selection-appearance": "border", "selection-mode": this.showNextIcon ? "none" : "single-persist" }, this.renderLayerList())));
562
774
  }
563
775
  //--------------------------------------------------------------------------
564
776
  //
@@ -585,21 +797,24 @@ const LayerList = class {
585
797
  this._layerItemsHash = await getMapLayerHash(this.mapView, true);
586
798
  const allMapLayers = await getAllLayers(this.mapView);
587
799
  // eslint-disable-next-line @typescript-eslint/no-misused-promises
588
- this.showFeatureCount && allMapLayers.forEach(async (eachLayer) => {
800
+ allMapLayers.forEach(async (eachLayer) => {
589
801
  var _a, _b;
590
802
  //TODO: checking editable condition could be configurable
591
- if ((eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.type) === "feature" && (eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.editingEnabled) && ((_b = (_a = eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.capabilities) === null || _a === void 0 ? void 0 : _a.operations) === null || _b === void 0 ? void 0 : _b.supportsUpdate)) {
592
- const q = eachLayer.createQuery();
593
- const result = eachLayer.queryFeatureCount(q);
594
- def.push(result);
595
- void result.then(async (resCount) => {
596
- const formattedCount = !isNaN(resCount) ? await formatNumber(resCount, {
597
- places: 0,
598
- api: 4,
599
- type: "decimal"
600
- }) : "";
601
- this._layerItemsHash[eachLayer.id].formattedFeatureCount = formattedCount;
602
- });
803
+ if ((eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.type) === "feature" && (eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.editingEnabled) && ((_b = (_a = eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.capabilities) === null || _a === void 0 ? void 0 : _a.operations) === null || _b === void 0 ? void 0 : _b.supportsAdd)) {
804
+ this._layerItemsHash[eachLayer.id].supportsAdd = true;
805
+ if (this.showFeatureCount) {
806
+ const q = eachLayer.createQuery();
807
+ const result = eachLayer.queryFeatureCount(q);
808
+ def.push(result);
809
+ void result.then(async (resCount) => {
810
+ const formattedCount = !isNaN(resCount) ? await formatNumber(resCount, {
811
+ places: 0,
812
+ api: 4,
813
+ type: "decimal"
814
+ }) : "";
815
+ this._layerItemsHash[eachLayer.id].formattedFeatureCount = formattedCount;
816
+ });
817
+ }
603
818
  }
604
819
  });
605
820
  await Promise.all(def).then(() => {
@@ -627,9 +842,9 @@ const LayerList = class {
627
842
  var _a;
628
843
  const configuredLayers = ((_a = this.layers) === null || _a === void 0 ? void 0 : _a.length) > 0 ? this.layers : [];
629
844
  return Object.keys(hash).reduce((prev, cur) => {
630
- let showLayer = hash[cur].supportsUpdate;
845
+ let showLayer = hash[cur].supportsAdd;
631
846
  if ((configuredLayers === null || configuredLayers === void 0 ? void 0 : configuredLayers.length) > 0) {
632
- showLayer = configuredLayers.indexOf(cur) > -1 ? hash[cur].supportsUpdate : false;
847
+ showLayer = configuredLayers.indexOf(cur) > -1 ? hash[cur].supportsAdd : false;
633
848
  }
634
849
  if (showLayer) {
635
850
  prev.push(cur);
@@ -681,4 +896,4 @@ const LayerList = class {
681
896
  };
682
897
  LayerList.style = layerListCss;
683
898
 
684
- export { Flow as calcite_flow, FlowItem as calcite_flow_item, FeatureList as feature_list, LayerList as layer_list };
899
+ export { Flow as calcite_flow, FlowItem as calcite_flow_item, CreateFeature as create_feature, FeatureList as feature_list, LayerList as layer_list };
@@ -6,7 +6,7 @@
6
6
  import { r as registerInstance, h, H as Host, g as getElement, c as createEvent } from './index-7183ce4a.js';
7
7
  import { g as getLocaleComponentStrings, l as loadModules } from './locale-731e75a8.js';
8
8
  import { q as queryFeaturesByID, g as getLayerOrTable, b as goToSelection, e as queryAllIds, f as queryFeatureIds, i as queryFeaturesByGlobalID } from './mapViewUtils-cf05e880.js';
9
- import { d as downloadCSV } from './downloadUtils-d070a467.js';
9
+ import { d as downloadCSV } from './downloadUtils-d297078f.js';
10
10
  import './esri-loader-eda07632.js';
11
11
  import './_commonjsHelpers-d5f9d613.js';
12
12
  import './interfaces-586e863c.js';