@esri/solutions-components 0.7.23 → 0.7.25

Sign up to get free protection for your applications and to get access to all the features.
Files changed (438) hide show
  1. package/dist/assets/t9n/crowdsource-manager/resources.json +1 -3
  2. package/dist/assets/t9n/crowdsource-manager/resources_en.json +1 -3
  3. package/dist/assets/t9n/crowdsource-reporter/resources.json +18 -1
  4. package/dist/assets/t9n/crowdsource-reporter/resources_en.json +18 -1
  5. package/dist/assets/t9n/delete-button/resources.json +8 -0
  6. package/dist/assets/t9n/delete-button/resources_en.json +8 -0
  7. package/dist/assets/t9n/feature-list/resources.json +4 -0
  8. package/dist/assets/t9n/feature-list/resources_en.json +4 -0
  9. package/dist/assets/t9n/info-card/resources.json +1 -1
  10. package/dist/assets/t9n/info-card/resources_en.json +1 -1
  11. package/dist/assets/t9n/layer-list/resources.json +4 -0
  12. package/dist/assets/t9n/layer-list/resources_en.json +4 -0
  13. package/dist/assets/t9n/layer-table/resources.json +0 -9
  14. package/dist/assets/t9n/layer-table/resources_en.json +0 -9
  15. package/dist/cjs/basemap-gallery_7.cjs.entry.js +7 -8
  16. package/dist/cjs/buffer-tools_3.cjs.entry.js +3 -4
  17. package/dist/cjs/calcite-action-bar.cjs.entry.js +255 -0
  18. package/dist/cjs/{calcite-alert_3.cjs.entry.js → calcite-alert_4.cjs.entry.js} +187 -115
  19. package/dist/cjs/calcite-combobox_6.cjs.entry.js +1 -1
  20. package/dist/cjs/{calcite-action-bar_3.cjs.entry.js → calcite-filter_5.cjs.entry.js} +333 -172
  21. package/dist/cjs/calcite-flow_4.cjs.entry.js +657 -0
  22. package/dist/cjs/calcite-input-date-picker_3.cjs.entry.js +22 -11
  23. package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +1 -1
  24. package/dist/cjs/card-manager_3.cjs.entry.js +50 -93
  25. package/dist/cjs/crowdsource-manager.cjs.entry.js +17 -3
  26. package/dist/cjs/crowdsource-reporter.cjs.entry.js +156 -35
  27. package/dist/cjs/{downloadUtils-401356b5.js → downloadUtils-83c6d3c3.js} +6 -6
  28. package/dist/cjs/{index.es-a9a4ff08.js → index.es-bd1a93b2.js} +2 -2
  29. package/dist/cjs/instant-apps-export.cjs.entry.js +1 -1
  30. package/dist/cjs/instant-apps-language-translator.cjs.entry.js +41 -1
  31. package/dist/cjs/layout-manager.cjs.entry.js +1 -1
  32. package/dist/cjs/loader.cjs.js +1 -1
  33. package/dist/cjs/{locale-9db09b63.js → locale-a476e15d.js} +40 -1
  34. package/dist/cjs/map-select-tools_3.cjs.entry.js +4 -5
  35. package/dist/cjs/popupUtils-a73902a6.js +99 -0
  36. package/dist/cjs/public-notification.cjs.entry.js +3 -4
  37. package/dist/cjs/solution-configuration.cjs.entry.js +1 -1
  38. package/dist/cjs/solution-contents_3.cjs.entry.js +15 -2
  39. package/dist/cjs/solutions-components.cjs.js +1 -1
  40. package/dist/cjs/spatial-ref.cjs.entry.js +1 -1
  41. package/dist/collection/collection-manifest.json +3 -0
  42. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +23 -2
  43. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.css +51 -0
  44. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +302 -35
  45. package/dist/{solutions-components/p-48ff9cea.js → collection/components/delete-button/delete-button.css} +19 -21
  46. package/dist/collection/components/delete-button/delete-button.js +299 -0
  47. package/dist/{cjs/loadModules-46d14e81.js → collection/components/delete-button/test/delete-button.e2e.js} +9 -10
  48. package/dist/{esm/loadModules-cea493da.js → collection/components/delete-button/test/delete-button.spec.js} +17 -8
  49. package/dist/collection/components/feature-list/feature-list.css +38 -0
  50. package/dist/collection/components/feature-list/feature-list.js +303 -0
  51. package/dist/collection/components/info-card/info-card.js +65 -21
  52. package/dist/collection/components/layer-list/layer-list.css +28 -0
  53. package/dist/collection/components/layer-list/layer-list.js +288 -0
  54. package/dist/collection/components/layer-table/layer-table.js +63 -116
  55. package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js +31 -1
  56. package/dist/collection/demos/crowdsource-reporter.html +61 -38
  57. package/dist/collection/demos/feature-list.html +43 -0
  58. package/dist/collection/demos/layer-list.html +43 -0
  59. package/dist/collection/utils/interfaces.ts +4 -0
  60. package/dist/components/calcite-flow-item.js +1 -261
  61. package/dist/components/calcite-flow.js +1 -165
  62. package/dist/components/card-manager2.js +38 -26
  63. package/dist/components/crowdsource-manager.js +110 -89
  64. package/dist/components/crowdsource-reporter.js +346 -39
  65. package/dist/components/delete-button.d.ts +11 -0
  66. package/dist/components/delete-button.js +11 -0
  67. package/dist/components/delete-button2.js +209 -0
  68. package/dist/components/feature-list.d.ts +11 -0
  69. package/dist/components/feature-list.js +11 -0
  70. package/dist/components/feature-list2.js +281 -0
  71. package/dist/{esm/calcite-flow-item.entry.js → components/flow-item.js} +94 -19
  72. package/dist/{esm/calcite-flow.entry.js → components/flow.js} +33 -10
  73. package/dist/components/info-card2.js +87 -136
  74. package/dist/components/instant-apps-export.js +1 -1
  75. package/dist/components/instant-apps-filter-list2.js +22 -11
  76. package/dist/components/instant-apps-language-translator2.js +48 -4
  77. package/dist/components/layer-list.d.ts +11 -0
  78. package/dist/components/layer-list.js +11 -0
  79. package/dist/components/layer-list2.js +268 -0
  80. package/dist/components/layer-table2.js +126 -165
  81. package/dist/components/locale.js +19 -2
  82. package/dist/components/popupUtils.js +97 -0
  83. package/dist/components/queryUtils.js +1 -1
  84. package/dist/components/solution-spatial-ref2.js +17 -2
  85. package/dist/esm/{ExpandToggle-540998b5.js → ExpandToggle-96688cda.js} +1 -1
  86. package/dist/esm/{ar-35006b74.js → ar-29711364.js} +8 -8
  87. package/dist/esm/basemap-gallery_7.entry.js +1 -2
  88. package/dist/esm/{bg-c289978f.js → bg-c0f5033b.js} +8 -8
  89. package/dist/esm/{bs-6f9fb44a.js → bs-60479ce5.js} +8 -8
  90. package/dist/esm/buffer-tools_3.entry.js +3 -4
  91. package/dist/esm/{ca-7962c8b7.js → ca-4317b986.js} +8 -8
  92. package/dist/esm/calcite-accordion-item.entry.js +1 -1
  93. package/dist/esm/calcite-action-bar.entry.js +251 -0
  94. package/dist/esm/calcite-action-group.entry.js +3 -3
  95. package/dist/esm/calcite-action-menu_2.entry.js +5 -5
  96. package/dist/esm/calcite-action-pad_2.entry.js +4 -4
  97. package/dist/esm/calcite-action_2.entry.js +3 -3
  98. package/dist/esm/{calcite-alert_3.entry.js → calcite-alert_4.entry.js} +189 -118
  99. package/dist/esm/calcite-avatar.entry.js +1 -1
  100. package/dist/esm/calcite-block-section.entry.js +3 -3
  101. package/dist/esm/calcite-block_2.entry.js +5 -5
  102. package/dist/esm/calcite-button.entry.js +5 -5
  103. package/dist/esm/calcite-card.entry.js +3 -3
  104. package/dist/esm/calcite-checkbox.entry.js +3 -3
  105. package/dist/esm/calcite-chip-group.entry.js +1 -1
  106. package/dist/esm/calcite-chip.entry.js +3 -3
  107. package/dist/esm/calcite-color-picker-hex-input_2.entry.js +1 -1
  108. package/dist/esm/calcite-color-picker.entry.js +3 -3
  109. package/dist/esm/calcite-combobox-item-group.entry.js +2 -2
  110. package/dist/esm/calcite-combobox_6.entry.js +10 -10
  111. package/dist/esm/calcite-date-picker-day_3.entry.js +3 -3
  112. package/dist/esm/calcite-fab.entry.js +1 -1
  113. package/dist/esm/{calcite-action-bar_3.entry.js → calcite-filter_5.entry.js} +363 -204
  114. package/dist/esm/calcite-flow_4.entry.js +650 -0
  115. package/dist/esm/calcite-graph_2.entry.js +4 -4
  116. package/dist/esm/calcite-icon.entry.js +1 -1
  117. package/dist/esm/calcite-inline-editable.entry.js +4 -4
  118. package/dist/esm/calcite-input-date-picker_3.entry.js +31 -20
  119. package/dist/esm/calcite-input-number.entry.js +5 -5
  120. package/dist/esm/calcite-input-text.entry.js +5 -5
  121. package/dist/esm/{calcite-input-time-picker-63439178.js → calcite-input-time-picker-2e1b2157.js} +55 -55
  122. package/dist/esm/calcite-input-time-picker.entry.js +8 -8
  123. package/dist/esm/calcite-input-time-zone.entry.js +5 -5
  124. package/dist/esm/calcite-input_2.entry.js +5 -5
  125. package/dist/esm/calcite-label.entry.js +2 -2
  126. package/dist/esm/calcite-link.entry.js +1 -1
  127. package/dist/esm/calcite-menu-item.entry.js +3 -3
  128. package/dist/esm/calcite-menu.entry.js +3 -3
  129. package/dist/esm/calcite-meter.entry.js +3 -3
  130. package/dist/esm/calcite-modal.entry.js +4 -4
  131. package/dist/esm/calcite-navigation.entry.js +1 -1
  132. package/dist/esm/calcite-notice.entry.js +3 -3
  133. package/dist/esm/calcite-option_2.entry.js +3 -3
  134. package/dist/esm/calcite-pagination.entry.js +3 -3
  135. package/dist/esm/calcite-panel_2.entry.js +3 -3
  136. package/dist/esm/calcite-pick-list-group.entry.js +1 -1
  137. package/dist/esm/calcite-pick-list-item.entry.js +3 -3
  138. package/dist/esm/calcite-pick-list.entry.js +2 -2
  139. package/dist/esm/calcite-radio-button.entry.js +3 -3
  140. package/dist/esm/calcite-rating.entry.js +5 -5
  141. package/dist/esm/calcite-scrim.entry.js +3 -3
  142. package/dist/esm/calcite-segmented-control_2.entry.js +3 -3
  143. package/dist/esm/calcite-sheet.entry.js +2 -2
  144. package/dist/esm/calcite-shell-center-row.entry.js +1 -1
  145. package/dist/esm/calcite-shell-panel_14.entry.js +7 -7
  146. package/dist/esm/calcite-sortable-list.entry.js +1 -1
  147. package/dist/esm/calcite-stepper-item.entry.js +3 -3
  148. package/dist/esm/calcite-stepper.entry.js +3 -3
  149. package/dist/esm/calcite-switch.entry.js +3 -3
  150. package/dist/esm/calcite-table-cell_2.entry.js +3 -3
  151. package/dist/esm/calcite-table-row.entry.js +1 -1
  152. package/dist/esm/calcite-table.entry.js +3 -3
  153. package/dist/esm/calcite-text-area.entry.js +5 -5
  154. package/dist/esm/calcite-tile.entry.js +1 -1
  155. package/dist/esm/calcite-time-picker.entry.js +4 -4
  156. package/dist/esm/calcite-tip-manager.entry.js +3 -3
  157. package/dist/esm/calcite-tip.entry.js +3 -3
  158. package/dist/esm/calcite-tooltip.entry.js +2 -2
  159. package/dist/esm/calcite-tree_2.entry.js +1 -1
  160. package/dist/esm/card-manager_3.entry.js +50 -93
  161. package/dist/esm/{common-2cf42ac2.js → common-d04ccc0d.js} +1 -1
  162. package/dist/esm/crowdsource-manager.entry.js +18 -4
  163. package/dist/esm/crowdsource-reporter.entry.js +156 -35
  164. package/dist/esm/{cs-6d13069b.js → cs-da404a04.js} +8 -8
  165. package/dist/esm/{da-14097e6c.js → da-1afac3fa.js} +8 -8
  166. package/dist/esm/{date-1743b515.js → date-8b4a8f33.js} +1 -1
  167. package/dist/esm/{de-dff2571b.js → de-98f3129e.js} +8 -8
  168. package/dist/esm/{de-at-b733db65.js → de-at-ed4817af.js} +8 -8
  169. package/dist/esm/{de-ch-5ad0cb74.js → de-ch-556c82c8.js} +8 -8
  170. package/dist/esm/{dom-492b1b24.js → dom-8f926f33.js} +1 -1
  171. package/dist/esm/{downloadUtils-13579d93.js → downloadUtils-a301c193.js} +3 -3
  172. package/dist/esm/{el-688e05ba.js → el-394dfd74.js} +8 -8
  173. package/dist/esm/{en-au-357e70d8.js → en-au-6dde1e7e.js} +8 -8
  174. package/dist/esm/{en-ca-1e0b6b47.js → en-ca-420be416.js} +8 -8
  175. package/dist/esm/{en-gb-861a17f2.js → en-gb-0a7caa85.js} +8 -8
  176. package/dist/esm/{es-291ab4bd.js → es-2e1beb99.js} +8 -8
  177. package/dist/esm/{es-mx-0a7283a7.js → es-mx-ef132a24.js} +8 -8
  178. package/dist/esm/{et-addd2617.js → et-83d139c1.js} +8 -8
  179. package/dist/esm/{fi-469884d5.js → fi-8b81ed94.js} +8 -8
  180. package/dist/esm/{floating-ui-03eb4c82.js → floating-ui-c397f653.js} +1 -1
  181. package/dist/esm/{focusTrapComponent-2e7de651.js → focusTrapComponent-14368766.js} +1 -1
  182. package/dist/esm/{form-9bccaf85.js → form-133b00c7.js} +1 -1
  183. package/dist/esm/{fr-f5cb34ca.js → fr-c47c114a.js} +8 -8
  184. package/dist/esm/{fr-ch-115d3fda.js → fr-ch-97635343.js} +8 -8
  185. package/dist/esm/{he-6e5f5c56.js → he-ed2a12b9.js} +8 -8
  186. package/dist/esm/{hi-503240c2.js → hi-a05727ac.js} +8 -8
  187. package/dist/esm/{hr-cc08d6fc.js → hr-d01671ca.js} +8 -8
  188. package/dist/esm/{hu-69ac240d.js → hu-16506ca7.js} +8 -8
  189. package/dist/esm/{id-99547746.js → id-e9367e87.js} +8 -8
  190. package/dist/esm/{index.es-04d2e63e.js → index.es-37a9907e.js} +4 -4
  191. package/dist/esm/instant-apps-export.entry.js +1 -1
  192. package/dist/esm/instant-apps-language-translator.entry.js +42 -2
  193. package/dist/esm/{interfaces-341e3ab3.js → interfaces-586e863c.js} +1 -1
  194. package/dist/esm/{it-dbb6ea7d.js → it-14246b4a.js} +8 -8
  195. package/dist/esm/{it-ch-a83801f6.js → it-ch-a877e111.js} +8 -8
  196. package/dist/esm/{ja-79dbb02f.js → ja-67a0cfa0.js} +8 -8
  197. package/dist/esm/{ko-31ebe067.js → ko-35b0b83a.js} +8 -8
  198. package/dist/esm/{label-14301f4d.js → label-cd393c81.js} +1 -1
  199. package/dist/esm/layout-manager.entry.js +2 -2
  200. package/dist/esm/loader.js +1 -1
  201. package/dist/esm/{locale-8cfa3086.js → locale-6107ef11.js} +1 -1
  202. package/dist/esm/{locale-834c52c6.js → locale-731e75a8.js} +39 -2
  203. package/dist/esm/{lt-94d3f4b8.js → lt-71014faf.js} +8 -8
  204. package/dist/esm/{lv-d770ed0d.js → lv-def9df38.js} +8 -8
  205. package/dist/esm/map-select-tools_3.entry.js +4 -5
  206. package/dist/esm/{mapViewUtils-8fe70944.js → mapViewUtils-6daedef8.js} +2 -2
  207. package/dist/esm/{mk-1046d60a.js → mk-bfeac49e.js} +8 -8
  208. package/dist/esm/{nb-dad0b4b9.js → nb-0723b461.js} +8 -8
  209. package/dist/esm/{nl-a968c4b7.js → nl-89663165.js} +8 -8
  210. package/dist/esm/{pl-a0037bd3.js → pl-0157c37c.js} +8 -8
  211. package/dist/esm/popupUtils-a593bd78.js +97 -0
  212. package/dist/esm/{pt-e3d9370c.js → pt-80d1520c.js} +8 -8
  213. package/dist/esm/{pt-br-44c11565.js → pt-br-ee5003c7.js} +8 -8
  214. package/dist/esm/public-notification.entry.js +4 -5
  215. package/dist/esm/{ro-290e025d.js → ro-eff987f8.js} +8 -8
  216. package/dist/esm/{ru-38ff91f1.js → ru-62839398.js} +8 -8
  217. package/dist/esm/{shared-list-render-89e4bcff.js → shared-list-render-a2ab63e8.js} +1 -1
  218. package/dist/esm/{sk-9622a24b.js → sk-c2f4bd58.js} +8 -8
  219. package/dist/esm/{sl-6bc83a24.js → sl-328ff1db.js} +8 -8
  220. package/dist/esm/solution-configuration.entry.js +3 -3
  221. package/dist/esm/solution-contents_3.entry.js +18 -5
  222. package/dist/esm/{solution-store-b08696f7.js → solution-store-19f7825b.js} +1 -1
  223. package/dist/esm/solutions-components.js +1 -1
  224. package/dist/esm/spatial-ref.entry.js +3 -3
  225. package/dist/esm/{sr-35e575d8.js → sr-75a3ad46.js} +8 -8
  226. package/dist/esm/{sv-d80fa359.js → sv-10da5ef2.js} +8 -8
  227. package/dist/esm/{t9n-3c5e55ab.js → t9n-f16911e7.js} +1 -1
  228. package/dist/esm/{th-23e71d40.js → th-aa112042.js} +8 -8
  229. package/dist/esm/{time-d956a7c8.js → time-855b3426.js} +1 -1
  230. package/dist/esm/{tr-961fd2f3.js → tr-5925a2f5.js} +8 -8
  231. package/dist/esm/{uk-4e8a425a.js → uk-c40eeb9f.js} +8 -8
  232. package/dist/esm/{utils-56206ec2.js → utils-93fd55c4.js} +2 -2
  233. package/dist/esm/{utils-8287806a.js → utils-c3509713.js} +1 -1
  234. package/dist/esm/{vi-ad983882.js → vi-27922b93.js} +8 -8
  235. package/dist/esm/{zh-cn-5b6fd039.js → zh-cn-38a2e1d3.js} +8 -8
  236. package/dist/esm/{zh-hk-7439b11d.js → zh-hk-e0217bd1.js} +8 -8
  237. package/dist/esm/{zh-tw-cf384663.js → zh-tw-31f0447c.js} +8 -8
  238. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-filter-list/instant-apps-filter-list.css +0 -1
  239. package/dist/solutions-components/demos/crowdsource-reporter.html +61 -38
  240. package/dist/solutions-components/demos/feature-list.html +43 -0
  241. package/dist/solutions-components/demos/layer-list.html +43 -0
  242. package/dist/solutions-components/{p-e7951fcb.js → p-0392679d.js} +1 -1
  243. package/dist/solutions-components/{p-c68a6d4f.js → p-0587972d.js} +1 -1
  244. package/dist/solutions-components/{p-3022da2d.js → p-05f702ae.js} +1 -1
  245. package/dist/solutions-components/{p-4da72ee8.entry.js → p-068f5a8c.entry.js} +1 -1
  246. package/dist/solutions-components/{p-2ddd9cf8.entry.js → p-0b4f4b0e.entry.js} +1 -1
  247. package/dist/solutions-components/p-0b619197.entry.js +17 -0
  248. package/dist/solutions-components/{p-4f71a1a0.js → p-0d774e41.js} +1 -1
  249. package/dist/solutions-components/{p-0e723ffc.js → p-0f6b58b2.js} +1 -1
  250. package/dist/solutions-components/{p-ec8f042e.entry.js → p-10410f92.entry.js} +1 -1
  251. package/dist/solutions-components/{p-6a4b1e48.entry.js → p-10f2d6b0.entry.js} +2 -2
  252. package/dist/solutions-components/{p-5d2ccc75.entry.js → p-13be5cf5.entry.js} +1 -1
  253. package/dist/solutions-components/{p-58054bc2.js → p-14548a83.js} +1 -1
  254. package/dist/solutions-components/{p-026b1345.js → p-17668cb7.js} +3 -3
  255. package/dist/solutions-components/{p-5e530f8c.js → p-1c75bb3d.js} +1 -1
  256. package/dist/solutions-components/p-1f7046e9.entry.js +6 -0
  257. package/dist/solutions-components/{p-121a5dac.entry.js → p-234a8293.entry.js} +1 -1
  258. package/dist/solutions-components/{p-355249fc.js → p-2447b332.js} +1 -1
  259. package/dist/solutions-components/{p-48828002.entry.js → p-24c699b0.entry.js} +1 -1
  260. package/dist/solutions-components/{p-9bcbc1cc.js → p-2592e0dd.js} +1 -1
  261. package/dist/solutions-components/{p-48a5ae32.entry.js → p-2656c6e4.entry.js} +1 -1
  262. package/dist/solutions-components/p-284cc5cd.entry.js +6 -0
  263. package/dist/solutions-components/{p-b78a1c21.js → p-28b33708.js} +1 -1
  264. package/dist/solutions-components/p-29f661f5.entry.js +11 -0
  265. package/dist/solutions-components/{p-fa6ef970.js → p-2d68a6fd.js} +1 -1
  266. package/dist/solutions-components/{p-6437fee1.entry.js → p-2e2d01de.entry.js} +1 -1
  267. package/dist/solutions-components/{p-5e9b05c0.entry.js → p-2f425700.entry.js} +1 -1
  268. package/dist/solutions-components/{p-6c3cdd09.entry.js → p-364486d1.entry.js} +1 -1
  269. package/dist/solutions-components/{p-85a89f1d.entry.js → p-368cbb2c.entry.js} +1 -1
  270. package/dist/solutions-components/{p-52ad6ff9.entry.js → p-36f247db.entry.js} +1 -1
  271. package/dist/solutions-components/{p-080249de.js → p-38544b17.js} +1 -1
  272. package/dist/solutions-components/{p-a0be72b6.entry.js → p-3a73ee38.entry.js} +1 -1
  273. package/dist/solutions-components/{p-532b7378.entry.js → p-3ad4426b.entry.js} +1 -1
  274. package/dist/solutions-components/{p-5752785e.entry.js → p-3c10901a.entry.js} +1 -1
  275. package/dist/solutions-components/{p-6e406a7b.js → p-3c7d0eb9.js} +1 -1
  276. package/dist/solutions-components/{p-bf23173c.js → p-411b73a7.js} +1 -1
  277. package/dist/solutions-components/{p-76d60881.entry.js → p-429e1284.entry.js} +1 -1
  278. package/dist/solutions-components/{p-f3d277c2.entry.js → p-42f0e1fa.entry.js} +1 -1
  279. package/dist/solutions-components/{p-1fc220c7.js → p-4416d288.js} +1 -1
  280. package/dist/solutions-components/{p-663a433a.entry.js → p-451b16b3.entry.js} +2 -2
  281. package/dist/solutions-components/{p-b5d1b979.js → p-4566438a.js} +3 -3
  282. package/dist/solutions-components/{p-7a06dcdf.js → p-4647b2a6.js} +1 -1
  283. package/dist/solutions-components/{p-75fbe76c.js → p-480d0789.js} +1 -1
  284. package/dist/solutions-components/p-49b02dda.entry.js +6 -0
  285. package/dist/solutions-components/{p-722ae773.js → p-49fb1bfa.js} +2 -2
  286. package/dist/solutions-components/{p-17183100.js → p-4abf1c34.js} +1 -1
  287. package/dist/solutions-components/p-4ae36626.js +6 -0
  288. package/dist/solutions-components/{p-5c3fd315.entry.js → p-4bff69aa.entry.js} +1 -1
  289. package/dist/solutions-components/{p-f8f18a94.entry.js → p-4ccdac24.entry.js} +1 -1
  290. package/dist/solutions-components/{p-a3a64af2.entry.js → p-4d402bcf.entry.js} +1 -1
  291. package/dist/solutions-components/{p-7e82a730.js → p-4d8fc031.js} +1 -1
  292. package/dist/solutions-components/{p-1c720ed5.entry.js → p-4d99cb49.entry.js} +1 -1
  293. package/dist/solutions-components/p-4fbadb84.entry.js +6 -0
  294. package/dist/solutions-components/{p-e0276e26.entry.js → p-5268d845.entry.js} +2 -2
  295. package/dist/solutions-components/p-5af99fd8.entry.js +6 -0
  296. package/dist/solutions-components/{p-f3f09834.js → p-5e12026e.js} +1 -1
  297. package/dist/solutions-components/{p-ffee4847.entry.js → p-5fe99315.entry.js} +1 -1
  298. package/dist/solutions-components/{p-d6208a47.js → p-6105d57c.js} +1 -1
  299. package/dist/solutions-components/{p-f3dfb34f.entry.js → p-613315a7.entry.js} +1 -1
  300. package/dist/solutions-components/{p-0d97c2c5.entry.js → p-62eba559.entry.js} +1 -1
  301. package/dist/solutions-components/{p-40235cb7.entry.js → p-63fa7791.entry.js} +1 -1
  302. package/dist/solutions-components/{p-cfccae7c.js → p-6604ac77.js} +1 -1
  303. package/dist/solutions-components/{p-9b1766ef.entry.js → p-674be06c.entry.js} +1 -1
  304. package/dist/solutions-components/{p-a4aef40c.entry.js → p-67ff8e9a.entry.js} +1 -1
  305. package/dist/solutions-components/{p-4647c429.js → p-68e0adcf.js} +1 -1
  306. package/dist/solutions-components/{p-fc8338c6.entry.js → p-68e84199.entry.js} +1 -1
  307. package/dist/solutions-components/{p-aa3092cf.js → p-69763854.js} +1 -1
  308. package/dist/solutions-components/{p-e31754c8.js → p-6ae45648.js} +1 -1
  309. package/dist/solutions-components/{p-98013072.entry.js → p-6cce7009.entry.js} +1 -1
  310. package/dist/solutions-components/{p-34cacf32.js → p-6d511162.js} +1 -1
  311. package/dist/solutions-components/{p-5953ebe8.entry.js → p-7116f96d.entry.js} +1 -1
  312. package/dist/solutions-components/{p-337acb3c.js → p-727596e6.js} +1 -1
  313. package/dist/solutions-components/{p-b170916e.js → p-73100e79.js} +2 -2
  314. package/dist/solutions-components/{p-23662977.entry.js → p-734bc1b0.entry.js} +2 -2
  315. package/dist/solutions-components/{p-f3626331.entry.js → p-752ece4a.entry.js} +2 -2
  316. package/dist/solutions-components/{p-ecdd587c.entry.js → p-75e2a322.entry.js} +3 -3
  317. package/dist/solutions-components/{p-ca33fa09.entry.js → p-787203af.entry.js} +1 -1
  318. package/dist/solutions-components/{p-a9fc934d.js → p-79110824.js} +1 -1
  319. package/dist/solutions-components/{p-b82179c0.js → p-793cad54.js} +1 -1
  320. package/dist/solutions-components/{p-0250dec5.js → p-797aa505.js} +1 -1
  321. package/dist/solutions-components/{p-166d5bcc.entry.js → p-7c13406e.entry.js} +1 -1
  322. package/dist/solutions-components/{p-16df3a9e.entry.js → p-7dbccc10.entry.js} +1 -1
  323. package/dist/solutions-components/{p-133de052.entry.js → p-7ebd34df.entry.js} +1 -1
  324. package/dist/solutions-components/{p-8934e858.entry.js → p-809b7e47.entry.js} +2 -2
  325. package/dist/solutions-components/p-8308f64c.entry.js +6 -0
  326. package/dist/solutions-components/{p-ca97465b.js → p-83fd31d5.js} +1 -1
  327. package/dist/solutions-components/{p-2e1f7c0e.entry.js → p-84378c8d.entry.js} +2 -2
  328. package/dist/solutions-components/p-864b1d72.entry.js +6 -0
  329. package/dist/solutions-components/{p-d8b3d156.entry.js → p-891682da.entry.js} +1 -1
  330. package/dist/solutions-components/{p-50ea26de.entry.js → p-8b47b607.entry.js} +1 -1
  331. package/dist/solutions-components/{p-f4e91113.js → p-8d49a084.js} +1 -1
  332. package/dist/solutions-components/{p-f84848b0.entry.js → p-8fabb8a4.entry.js} +1 -1
  333. package/dist/solutions-components/{p-29602eff.entry.js → p-96c2ed64.entry.js} +1 -1
  334. package/dist/solutions-components/{p-b42bde59.entry.js → p-978d936a.entry.js} +1 -1
  335. package/dist/solutions-components/{p-79ba73cb.js → p-981e9549.js} +1 -1
  336. package/dist/solutions-components/{p-02714171.entry.js → p-98308b13.entry.js} +2 -2
  337. package/dist/solutions-components/p-99c5701d.entry.js +6 -0
  338. package/dist/solutions-components/{p-fe68d502.js → p-9cbfd8cd.js} +1 -1
  339. package/dist/solutions-components/{p-8f8fe5d0.entry.js → p-a09c8edf.entry.js} +1 -1
  340. package/dist/solutions-components/{p-ac6a3e13.js → p-a5272d7e.js} +1 -1
  341. package/dist/solutions-components/p-a5c5b24d.js +6 -0
  342. package/dist/solutions-components/{p-5d9ad152.entry.js → p-a5e93c7e.entry.js} +1 -1
  343. package/dist/solutions-components/{p-c9f87acb.js → p-a603e673.js} +2 -2
  344. package/dist/solutions-components/{p-07b31dc9.js → p-a6bb4148.js} +1 -1
  345. package/dist/solutions-components/{p-11b59592.entry.js → p-a8c9ac0b.entry.js} +2 -2
  346. package/dist/solutions-components/{p-41f7bc94.entry.js → p-a9bd945b.entry.js} +1 -1
  347. package/dist/solutions-components/{p-634835fe.js → p-abdd289e.js} +1 -1
  348. package/dist/solutions-components/{p-43e67b3c.entry.js → p-aca29f67.entry.js} +2 -2
  349. package/dist/solutions-components/{p-8118146c.entry.js → p-ad96cd8b.entry.js} +1 -1
  350. package/dist/solutions-components/{p-8772a573.js → p-af1bb992.js} +1 -1
  351. package/dist/solutions-components/{p-36eb8399.js → p-b1b768f7.js} +4 -4
  352. package/dist/solutions-components/{p-dd37c504.js → p-b29677ca.js} +1 -1
  353. package/dist/solutions-components/{p-82b4ab94.js → p-b2c5e62b.js} +1 -1
  354. package/dist/solutions-components/{p-db436a77.entry.js → p-b326b592.entry.js} +1 -1
  355. package/dist/solutions-components/p-b37ec1f3.entry.js +6 -0
  356. package/dist/solutions-components/{p-a4772574.js → p-b7285bd5.js} +1 -1
  357. package/dist/solutions-components/{p-8b5b4662.js → p-b8959537.js} +1 -1
  358. package/dist/solutions-components/{p-c21f578f.js → p-baf4cb37.js} +1 -1
  359. package/dist/solutions-components/{p-799c3f19.js → p-bfebff0e.js} +1 -1
  360. package/dist/solutions-components/p-c0f97ed2.entry.js +6 -0
  361. package/dist/solutions-components/{p-4af32c75.js → p-c1cf3ebc.js} +1 -1
  362. package/dist/solutions-components/{p-cfb83693.js → p-c3190f85.js} +1 -1
  363. package/dist/solutions-components/{p-0511c98c.js → p-c4ebb5d1.js} +1 -1
  364. package/dist/solutions-components/p-c56fd16c.entry.js +11 -0
  365. package/dist/solutions-components/{p-2d1b8cfa.js → p-c6b9a129.js} +1 -1
  366. package/dist/solutions-components/{p-1cb4c542.entry.js → p-c7e7da9a.entry.js} +1 -1
  367. package/dist/solutions-components/p-cb1d29d4.entry.js +17 -0
  368. package/dist/solutions-components/{p-034d43fb.js → p-cdee3846.js} +1 -1
  369. package/dist/solutions-components/{p-c5cb8804.js → p-cfb3d66a.js} +1 -1
  370. package/dist/solutions-components/{p-ebbeec9f.entry.js → p-d2d7d6b4.entry.js} +2 -2
  371. package/dist/solutions-components/{p-dd071507.js → p-d44e2fd7.js} +1 -1
  372. package/dist/solutions-components/{p-414240b2.js → p-d9a59fcc.js} +1 -1
  373. package/dist/solutions-components/p-db868283.js +21 -0
  374. package/dist/solutions-components/{p-fdb1ace8.entry.js → p-dded59a7.entry.js} +2 -2
  375. package/dist/solutions-components/{p-ede84883.js → p-de281b08.js} +2 -2
  376. package/dist/solutions-components/{p-a11fca14.js → p-df118036.js} +1 -1
  377. package/dist/solutions-components/p-e274f3b0.entry.js +23 -0
  378. package/dist/solutions-components/{p-4613e205.js → p-e6d4bdce.js} +1 -1
  379. package/dist/solutions-components/{p-3c5d3b4a.js → p-e6dfc80f.js} +1 -1
  380. package/dist/solutions-components/{p-92ea9e81.js → p-e834d132.js} +1 -1
  381. package/dist/solutions-components/p-e88a64be.entry.js +6 -0
  382. package/dist/solutions-components/p-e902ba19.js +36 -0
  383. package/dist/solutions-components/{p-f9eb2f2d.js → p-ee4e5212.js} +1 -1
  384. package/dist/solutions-components/{p-efce2e85.js → p-ef05dea5.js} +1 -1
  385. package/dist/solutions-components/{p-5fd1eb64.js → p-f0d68a3f.js} +2 -2
  386. package/dist/solutions-components/p-f17941f1.entry.js +6 -0
  387. package/dist/solutions-components/{p-9e3b8632.entry.js → p-f1e6ce96.entry.js} +1 -1
  388. package/dist/solutions-components/p-fe295e9d.entry.js +6 -0
  389. package/dist/solutions-components/{p-50764143.entry.js → p-ff460d05.entry.js} +3 -3
  390. package/dist/solutions-components/{p-d1ca57f3.entry.js → p-ff7c9bc3.entry.js} +1 -1
  391. package/dist/solutions-components/{p-0b47b407.js → p-ffa2c430.js} +1 -1
  392. package/dist/solutions-components/{p-89520d31.entry.js → p-ffbed9b2.entry.js} +1 -1
  393. package/dist/solutions-components/solutions-components.esm.js +1 -1
  394. package/dist/solutions-components/utils/interfaces.ts +4 -0
  395. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +8 -0
  396. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +141 -7
  397. package/dist/types/components/delete-button/delete-button.d.ts +120 -0
  398. package/dist/types/components/feature-list/feature-list.d.ts +128 -0
  399. package/dist/types/components/info-card/info-card.d.ts +19 -0
  400. package/dist/types/components/layer-list/layer-list.d.ts +133 -0
  401. package/dist/types/components/layer-table/layer-table.d.ts +12 -40
  402. package/dist/types/components/solution-spatial-ref/solution-spatial-ref.d.ts +5 -1
  403. package/dist/types/components.d.ts +281 -7
  404. package/dist/types/preact.d.ts +15 -1
  405. package/dist/types/utils/interfaces.d.ts +2 -0
  406. package/package.json +2 -2
  407. package/dist/cjs/calcite-filter_2.cjs.entry.js +0 -237
  408. package/dist/cjs/calcite-flow-item.cjs.entry.js +0 -197
  409. package/dist/cjs/calcite-flow.cjs.entry.js +0 -153
  410. package/dist/cjs/calcite-handle.cjs.entry.js +0 -184
  411. package/dist/cjs/resources-55ba2752.js +0 -29
  412. package/dist/esm/calcite-filter_2.entry.js +0 -232
  413. package/dist/esm/calcite-handle.entry.js +0 -180
  414. package/dist/esm/resources-221791b0.js +0 -26
  415. package/dist/solutions-components/p-0200864c.entry.js +0 -11
  416. package/dist/solutions-components/p-02fad071.entry.js +0 -6
  417. package/dist/solutions-components/p-04f05bc5.entry.js +0 -6
  418. package/dist/solutions-components/p-1711c535.entry.js +0 -6
  419. package/dist/solutions-components/p-1f88a556.entry.js +0 -6
  420. package/dist/solutions-components/p-24286e8c.entry.js +0 -6
  421. package/dist/solutions-components/p-3cf20613.entry.js +0 -17
  422. package/dist/solutions-components/p-43546966.entry.js +0 -6
  423. package/dist/solutions-components/p-6b943f52.js +0 -21
  424. package/dist/solutions-components/p-79f95735.entry.js +0 -11
  425. package/dist/solutions-components/p-7f333e23.js +0 -11
  426. package/dist/solutions-components/p-897037f0.entry.js +0 -6
  427. package/dist/solutions-components/p-8c7fc78f.entry.js +0 -11
  428. package/dist/solutions-components/p-941ab8c0.js +0 -6
  429. package/dist/solutions-components/p-96974e5f.js +0 -6
  430. package/dist/solutions-components/p-a32b61ee.entry.js +0 -6
  431. package/dist/solutions-components/p-ad9fbb2a.entry.js +0 -6
  432. package/dist/solutions-components/p-bacc9b0d.entry.js +0 -6
  433. package/dist/solutions-components/p-c252997f.entry.js +0 -17
  434. package/dist/solutions-components/p-c5db42ad.entry.js +0 -6
  435. package/dist/solutions-components/p-c634d047.entry.js +0 -27
  436. package/dist/solutions-components/p-e89c5860.entry.js +0 -6
  437. package/dist/solutions-components/p-eb9b003a.entry.js +0 -11
  438. package/dist/solutions-components/p-eff7f407.entry.js +0 -6
@@ -4,13 +4,12 @@
4
4
  * http://www.apache.org/licenses/LICENSE-2.0
5
5
  */
6
6
  import { r as registerInstance, h, H as Host, g as getElement, c as createEvent } from './index-7183ce4a.js';
7
- import { g as getLocaleComponentStrings } from './locale-834c52c6.js';
8
- import { q as queryFeaturesByID, a as getLayerOrTable, g as goToSelection, b as queryFeatureIds, c as queryAllIds, d as queryFeaturesByGlobalID } from './mapViewUtils-8fe70944.js';
9
- import { l as loadModules } from './loadModules-cea493da.js';
10
- import { d as downloadCSV } from './downloadUtils-13579d93.js';
7
+ import { g as getLocaleComponentStrings, l as loadModules } from './locale-731e75a8.js';
8
+ import { q as queryFeaturesByID, g as getLayerOrTable, a as goToSelection, e as queryAllIds, f as queryFeatureIds, i as queryFeaturesByGlobalID } from './mapViewUtils-6daedef8.js';
9
+ import { d as downloadCSV } from './downloadUtils-a301c193.js';
11
10
  import './esri-loader-eda07632.js';
12
11
  import './_commonjsHelpers-d5f9d613.js';
13
- import './interfaces-341e3ab3.js';
12
+ import './interfaces-586e863c.js';
14
13
  import './solution-resource-7b8d302d.js';
15
14
  import './index-a1e91462.js';
16
15
  import './restHelpersGet-af032ab2.js';
@@ -167,19 +166,17 @@ const LayerTable = class {
167
166
  this.mapInfo = undefined;
168
167
  this.mapView = undefined;
169
168
  this.onlyShowUpdatableLayers = undefined;
169
+ this.selectedIds = [];
170
170
  this.shareIncludeEmbed = undefined;
171
171
  this.shareIncludeSocial = undefined;
172
172
  this.showNewestFirst = undefined;
173
173
  this.zoomAndScrollToSelected = undefined;
174
- this._confirmDelete = false;
175
174
  this._controlsThatFit = undefined;
176
175
  this._fetchingData = false;
177
176
  this._filterActive = false;
178
177
  this._filterOpen = false;
179
- this._isDeleting = false;
180
178
  this._layer = undefined;
181
179
  this._selectAllActive = false;
182
- this._selectedIndexes = [];
183
180
  this._showHideOpen = false;
184
181
  this._showOnlySelected = false;
185
182
  this._sortActive = false;
@@ -272,10 +269,10 @@ const LayerTable = class {
272
269
  /**
273
270
  * watch for selection changes
274
271
  */
275
- async _selectedIndexesWatchHandler() {
272
+ async _selectedIdsWatchHandler() {
276
273
  this._updateShareUrl();
277
274
  this._validateEnabledActions();
278
- if (this._selectAllActive && this._selectedIndexes.length !== this._allIds.length) {
275
+ if (this._selectAllActive && this.selectedIds.length !== this._allIds.length) {
279
276
  this._selectAllActive = false;
280
277
  }
281
278
  }
@@ -287,19 +284,6 @@ const LayerTable = class {
287
284
  await this._sortTable();
288
285
  }
289
286
  }
290
- //--------------------------------------------------------------------------
291
- //
292
- // Methods (public)
293
- //
294
- //--------------------------------------------------------------------------
295
- /**
296
- * Delete currently selected features
297
- *
298
- * @returns Promise resolving when the process is complete
299
- */
300
- async deleteFeatures() {
301
- return this._delete();
302
- }
303
287
  /**
304
288
  * Scroll and zoom to the selected feature from the Features widget.
305
289
  *
@@ -328,7 +312,11 @@ const LayerTable = class {
328
312
  /**
329
313
  * Refresh the table when edits are completed
330
314
  */
331
- async editsComplete() {
315
+ async editsComplete(evt) {
316
+ const editType = evt.detail;
317
+ if (editType === "delete" || editType === "add") {
318
+ this._allIds = await queryAllIds(this._layer);
319
+ }
332
320
  await this._refresh();
333
321
  }
334
322
  /**
@@ -371,12 +359,12 @@ const LayerTable = class {
371
359
  const tableNodeClass = this._fetchingData ? "display-none" : "";
372
360
  const loadingClass = this._fetchingData ? "" : "display-none";
373
361
  const total = this._allIds.length.toString();
374
- const selected = this._selectedIndexes.length.toString();
362
+ const selected = this.selectedIds.length.toString();
375
363
  const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
376
364
  this._validateActiveActions();
377
365
  return (h(Host, null, h("calcite-shell", null, this._getTableControlRow("header"), h("div", { class: `width-full ${tableHeightClass}` }, h("calcite-panel", { class: "height-full width-full" }, h("calcite-loader", { class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { class: tableNodeClass, ref: this.onTableNodeCreate })), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
378
366
  .replace("{{total}}", total)
379
- .replace("{{selected}}", selected))) : undefined)), this._deleteMessage(), this._filterModal()));
367
+ .replace("{{selected}}", selected))) : undefined)), this._filterModal()));
380
368
  }
381
369
  /**
382
370
  * Called once after the component is loaded
@@ -554,11 +542,11 @@ const LayerTable = class {
554
542
  isOverflow: false
555
543
  } : undefined,
556
544
  this._deleteEnabled ? {
557
- active: false,
545
+ active: undefined,
558
546
  icon: "trash",
559
- indicator: false,
560
- label: this._translations.delete,
561
- func: () => this._delete(),
547
+ indicator: undefined,
548
+ label: undefined,
549
+ func: undefined,
562
550
  disabled: !featuresSelected,
563
551
  isDanger: true,
564
552
  isOverflow: false
@@ -640,7 +628,7 @@ const LayerTable = class {
640
628
  * @returns boolean
641
629
  */
642
630
  _featuresSelected() {
643
- return this._selectedIndexes.length > 0;
631
+ return this.selectedIds.length > 0;
644
632
  }
645
633
  /**
646
634
  * Return true when we have no features
@@ -852,8 +840,8 @@ const LayerTable = class {
852
840
  else {
853
841
  urlObj.searchParams.delete("layer");
854
842
  }
855
- if (((_d = this._selectedIndexes) === null || _d === void 0 ? void 0 : _d.length) > 0) {
856
- urlObj.searchParams.set("oid", this._selectedIndexes.join(","));
843
+ if (((_d = this.selectedIds) === null || _d === void 0 ? void 0 : _d.length) > 0) {
844
+ urlObj.searchParams.set("oid", this.selectedIds.join(","));
857
845
  }
858
846
  else {
859
847
  urlObj.searchParams.delete("oid");
@@ -875,7 +863,6 @@ const LayerTable = class {
875
863
  urlObj.searchParams.delete("filter");
876
864
  }
877
865
  this._shareNode.shareUrl = urlObj.href;
878
- history.pushState(history.state, document.title, urlObj.href);
879
866
  }
880
867
  /**
881
868
  * Get a tooltip
@@ -912,7 +899,15 @@ const LayerTable = class {
912
899
  */
913
900
  _getDangerAction(icon, label, func, disabled) {
914
901
  const _disabled = this._layer === undefined ? true : disabled;
915
- return (h("div", { class: "display-flex", id: this._getId(icon) }, h("calcite-action", { appearance: "solid", disabled: _disabled, id: icon, onClick: func, text: "" }, h("calcite-button", { appearance: "transparent", iconStart: icon, kind: "danger" }, label)), this._getToolTip("bottom", icon, label)));
902
+ return (h("div", { class: "display-flex", id: this._getId(icon) }, icon === "trash" ? (h("delete-button", { buttonType: "action", class: "display-flex", disabled: _disabled, icon: icon, ids: this._getIds(), layer: this._layer })) : (h("calcite-action", { appearance: "solid", disabled: _disabled, id: icon, onClick: func, text: "" }, h("calcite-button", { appearance: "transparent", iconStart: icon, kind: "danger" }, label))), this._getToolTip("bottom", icon, label)));
903
+ }
904
+ /**
905
+ * Return all currently selected IDs from the table
906
+ *
907
+ * @param number[] the selected ids
908
+ */
909
+ _getIds() {
910
+ return this._table.highlightIds.toArray();
916
911
  }
917
912
  /**
918
913
  * Initialize the FeatureTable
@@ -958,15 +953,15 @@ const LayerTable = class {
958
953
  const ids = [...this._table.highlightIds.toArray()];
959
954
  if (!this._skipOnChange) {
960
955
  if (!this._ctrlIsPressed && !this._shiftIsPressed) {
961
- if (this._selectedIndexes.length > 0) {
956
+ if (this.selectedIds.length > 0) {
962
957
  this._skipOnChange = true;
963
958
  // only readd in specific case where we have multiple selected and then click one of the currently selected
964
- const reAdd = this._selectedIndexes.length > 1 && evt.removed.length === 1;
965
- const newIndexes = reAdd ? evt.removed : ids.filter(id => this._selectedIndexes.indexOf(id) < 0);
959
+ const reAdd = this.selectedIds.length > 1 && evt.removed.length === 1;
960
+ const newIds = reAdd ? evt.removed : ids.filter(id => this.selectedIds.indexOf(id) < 0);
966
961
  this._clearSelection();
967
- this._selectedIndexes = [...newIndexes];
968
- if (newIndexes.length > 0) {
969
- this._table.highlightIds.add(newIndexes[0]);
962
+ this.selectedIds = [...newIds];
963
+ if (newIds.length > 0) {
964
+ this._table.highlightIds.add(newIds[0]);
970
965
  }
971
966
  else {
972
967
  this._skipOnChange = false;
@@ -974,11 +969,11 @@ const LayerTable = class {
974
969
  }
975
970
  else {
976
971
  // https://github.com/Esri/solutions-components/issues/365
977
- this._selectedIndexes = ids.reverse();
972
+ this.selectedIds = ids.reverse();
978
973
  }
979
974
  }
980
975
  else if (this._ctrlIsPressed) {
981
- this._selectedIndexes = ids.reverse();
976
+ this.selectedIds = ids.reverse();
982
977
  }
983
978
  else if (this._shiftIsPressed) {
984
979
  this._skipOnChange = true;
@@ -997,7 +992,7 @@ const LayerTable = class {
997
992
  const startIndex = _start < _end ? _start : _end;
998
993
  const endIndex = _end > _start ? _end : _start;
999
994
  this._skipOnChange = startIndex + 1 !== endIndex;
1000
- const selectedIndexes = oids.reduce((prev, cur) => {
995
+ const selectedIds = oids.reduce((prev, cur) => {
1001
996
  const id = cur;
1002
997
  const index = this._table.viewModel.getObjectIdIndex(id);
1003
998
  if ((id === this._currentId || id === this._previousCurrentId)) {
@@ -1014,13 +1009,13 @@ const LayerTable = class {
1014
1009
  }
1015
1010
  // Also add index based check.
1016
1011
  // In some cases the FeatureTable and Layer query will have differences in how null/undefined field values are sorted
1017
- if ((this._selectedIndexes.indexOf(id) > -1 || (index >= startIndex && index <= endIndex)) && prev.indexOf(id) < 0 && index > -1) {
1012
+ if ((this.selectedIds.indexOf(id) > -1 || (index >= startIndex && index <= endIndex)) && prev.indexOf(id) < 0 && index > -1) {
1018
1013
  prev.push(id);
1019
1014
  }
1020
1015
  return prev;
1021
1016
  }, []);
1022
- this._selectedIndexes = _start < _end ? selectedIndexes.reverse() : selectedIndexes;
1023
- this._table.highlightIds.addMany(this._selectedIndexes.filter(i => ids.indexOf(i) < 0));
1017
+ this.selectedIds = _start < _end ? selectedIds.reverse() : selectedIds;
1018
+ this._table.highlightIds.addMany(this.selectedIds.filter(i => ids.indexOf(i) < 0));
1024
1019
  }
1025
1020
  }
1026
1021
  this._finishOnChange();
@@ -1042,7 +1037,7 @@ const LayerTable = class {
1042
1037
  this._toggleShowSelected();
1043
1038
  }
1044
1039
  }
1045
- this.featureSelectionChange.emit(this._selectedIndexes);
1040
+ this.featureSelectionChange.emit(this.selectedIds);
1046
1041
  }
1047
1042
  /**
1048
1043
  * Reset basic table props
@@ -1051,7 +1046,7 @@ const LayerTable = class {
1051
1046
  var _a;
1052
1047
  this._clearSelection();
1053
1048
  this._allIds = [];
1054
- this.featureSelectionChange.emit(this._selectedIndexes);
1049
+ this.featureSelectionChange.emit(this.selectedIds);
1055
1050
  const columnTemplates = this._getColumnTemplates(this._layer.id, (_a = this._layer) === null || _a === void 0 ? void 0 : _a.fields);
1056
1051
  this._allIds = await queryAllIds(this._layer);
1057
1052
  if (!this._table) {
@@ -1221,30 +1216,6 @@ const LayerTable = class {
1221
1216
  this._filterOpen = false;
1222
1217
  }
1223
1218
  }
1224
- /**
1225
- * Show delete confirmation message
1226
- *
1227
- * @returns node to confirm or deny the delete operation
1228
- */
1229
- _deleteMessage() {
1230
- return (h("calcite-modal", { "aria-labelledby": "modal-title", kind: "danger", onCalciteModalClose: () => this._deleteClosed(), open: this._confirmDelete }, h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, this._translations.deleteFeature), h("div", { slot: "content" }, this._translations.confirm), h("calcite-button", { appearance: "outline", kind: "danger", onClick: () => this._deleteClosed(), slot: "secondary", width: "full" }, this._translations.cancel), h("calcite-button", { kind: "danger", loading: this._isDeleting, onClick: () => void this._deleteFeatures(), slot: "primary", width: "full" }, this._translations.delete)));
1231
- }
1232
- /**
1233
- * Delete the currently selected features
1234
- */
1235
- async _deleteFeatures() {
1236
- this._isDeleting = true;
1237
- const deleteFeatures = this._table.highlightIds.toArray().map((objectId) => {
1238
- return { objectId };
1239
- });
1240
- await this._layer.applyEdits({
1241
- deleteFeatures
1242
- });
1243
- await this._table.refresh();
1244
- this._allIds = await queryAllIds(this._layer);
1245
- this._isDeleting = false;
1246
- this._deleteClosed();
1247
- }
1248
1219
  /**
1249
1220
  * Handle map click events to keep table and map click selection in sync
1250
1221
  *
@@ -1272,12 +1243,6 @@ const LayerTable = class {
1272
1243
  }
1273
1244
  }
1274
1245
  }
1275
- /**
1276
- * Set the alertOpen member to false when the alert is closed
1277
- */
1278
- _deleteClosed() {
1279
- this._confirmDelete = false;
1280
- }
1281
1246
  /**
1282
1247
  * Select or deselect all rows
1283
1248
  */
@@ -1286,7 +1251,7 @@ const LayerTable = class {
1286
1251
  this._table.highlightIds.removeAll();
1287
1252
  this._skipOnChange = true;
1288
1253
  this._table.highlightIds.addMany(ids);
1289
- this._selectedIndexes = ids;
1254
+ this.selectedIds = ids;
1290
1255
  this._finishOnChange();
1291
1256
  this._selectAllActive = true;
1292
1257
  }
@@ -1308,7 +1273,7 @@ const LayerTable = class {
1308
1273
  */
1309
1274
  _clearSelection() {
1310
1275
  var _a;
1311
- this._selectedIndexes = [];
1276
+ this.selectedIds = [];
1312
1277
  (_a = this._table) === null || _a === void 0 ? void 0 : _a.highlightIds.removeAll();
1313
1278
  this._finishOnChange();
1314
1279
  }
@@ -1331,7 +1296,7 @@ const LayerTable = class {
1331
1296
  * Select all rows that are not currently selectd
1332
1297
  */
1333
1298
  _switchSelected() {
1334
- const currentIndexes = [...this._selectedIndexes];
1299
+ const currentIndexes = [...this.selectedIds];
1335
1300
  this._table.highlightIds.removeAll();
1336
1301
  const ids = this._allIds.reduce((prev, _cur) => {
1337
1302
  if (currentIndexes.indexOf(_cur) < 0) {
@@ -1341,7 +1306,7 @@ const LayerTable = class {
1341
1306
  }, []).sort((a, b) => a - b);
1342
1307
  this._skipOnChange = true;
1343
1308
  this._table.highlightIds.addMany(ids);
1344
- this._selectedIndexes = ids;
1309
+ this.selectedIds = ids;
1345
1310
  this._finishOnChange();
1346
1311
  }
1347
1312
  /**
@@ -1374,7 +1339,7 @@ const LayerTable = class {
1374
1339
  */
1375
1340
  async _refresh() {
1376
1341
  await this._table.refresh();
1377
- this.featureSelectionChange.emit(this._selectedIndexes);
1342
+ this.featureSelectionChange.emit(this.selectedIds);
1378
1343
  }
1379
1344
  /**
1380
1345
  * Zoom to all selected features
@@ -1384,14 +1349,6 @@ const LayerTable = class {
1384
1349
  _zoom() {
1385
1350
  this._table.zoomToSelection();
1386
1351
  }
1387
- /**
1388
- * Delete all selected records or shows an alert if the layer does not have editing enabled
1389
- *
1390
- * @returns a promise that will resolve when the operation is complete
1391
- */
1392
- _delete() {
1393
- this._confirmDelete = true;
1394
- }
1395
1352
  /**
1396
1353
  * Handles layer selection change to show new table
1397
1354
  *
@@ -1497,7 +1454,7 @@ const LayerTable = class {
1497
1454
  "mapInfo": ["mapInfoWatchHandler"],
1498
1455
  "mapView": ["mapViewWatchHandler"],
1499
1456
  "_layer": ["_layerWatchHandler"],
1500
- "_selectedIndexes": ["_selectedIndexesWatchHandler"],
1457
+ "_selectedIds": ["_selectedIdsWatchHandler"],
1501
1458
  "_sortActive": ["_sortActiveWatchHandler"]
1502
1459
  }; }
1503
1460
  };
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import './solution-resource-7b8d302d.js';
7
7
  import './index-a1e91462.js';
8
- import './interfaces-341e3ab3.js';
8
+ import './interfaces-586e863c.js';
9
9
 
10
10
  /** @license
11
11
  * Copyright 2022 Esri
@@ -4,8 +4,9 @@
4
4
  * http://www.apache.org/licenses/LICENSE-2.0
5
5
  */
6
6
  import { r as registerInstance, h, H as Host, g as getElement } from './index-7183ce4a.js';
7
- import { g as getLocaleComponentStrings } from './locale-834c52c6.js';
8
- import { E as ELayoutMode } from './interfaces-341e3ab3.js';
7
+ import { g as getLocaleComponentStrings } from './locale-731e75a8.js';
8
+ import { E as ELayoutMode } from './interfaces-586e863c.js';
9
+ import { g as getLayerOrTable } from './mapViewUtils-6daedef8.js';
9
10
  import './esri-loader-eda07632.js';
10
11
  import './_commonjsHelpers-d5f9d613.js';
11
12
 
@@ -52,6 +53,7 @@ const CrowdsourceManager = class {
52
53
  this._hideTable = false;
53
54
  this._isMobile = undefined;
54
55
  this._translations = undefined;
56
+ this._layer = undefined;
55
57
  this._layoutMode = ELayoutMode.GRID;
56
58
  this._mapInfo = undefined;
57
59
  this._mapView = undefined;
@@ -162,6 +164,16 @@ const CrowdsourceManager = class {
162
164
  this._expandPopup = false;
163
165
  }
164
166
  }
167
+ /**
168
+ * Get the layer for the provided layer id
169
+ */
170
+ async layerSelectionChange(evt) {
171
+ const id = evt.detail[0];
172
+ const layer = await getLayerOrTable(this._mapView, id);
173
+ await layer.when(() => {
174
+ this._layer = layer;
175
+ });
176
+ }
165
177
  //--------------------------------------------------------------------------
166
178
  //
167
179
  // Functions (lifecycle)
@@ -210,8 +222,10 @@ const CrowdsourceManager = class {
210
222
  * @protected
211
223
  */
212
224
  _getFooter() {
225
+ var _a, _b, _c, _d;
213
226
  const hasSelectedFeatures = this._numSelected > 0;
214
- return this._isMobile && hasSelectedFeatures && !this._hideFooter ? (h("div", { class: `width-100`, slot: "footer" }, h("div", { class: "display-flex padding-1-2" }, h("calcite-button", { appearance: "solid", id: "solutions-show", onClick: () => this.showHideMapPopupAndTable(true), width: "full" }, this._translations.view.replace("{{n}}", this._numSelected.toString())), h("calcite-button", { appearance: "outline", class: "padding-inline-start-1", id: "solutions-delete", kind: "danger", onClick: () => this._layerTable.deleteFeatures(), width: "full" }, this._translations.delete.replace("{{n}}", this._numSelected.toString()))))) : undefined;
227
+ const deleteEnabled = ((_a = this._layer) === null || _a === void 0 ? void 0 : _a.editingEnabled) && ((_d = (_c = (_b = this._layer) === null || _b === void 0 ? void 0 : _b.capabilities) === null || _c === void 0 ? void 0 : _c.operations) === null || _d === void 0 ? void 0 : _d.supportsDelete);
228
+ return this._isMobile && hasSelectedFeatures && !this._hideFooter ? (h("div", { class: `width-100`, slot: "footer" }, h("div", { class: "display-flex padding-1-2" }, h("calcite-button", { appearance: "solid", id: "solutions-show", onClick: () => this.showHideMapPopupAndTable(true), width: "full" }, this._translations.view.replace("{{n}}", this._numSelected.toString())), deleteEnabled ? (h("delete-button", { class: "padding-inline-start-1 width-full", id: "solutions-delete", ids: this._layerTable.selectedIds, layer: this._layer })) : undefined))) : undefined;
215
229
  }
216
230
  /**
217
231
  * Get the icon name to use for the divider icon based on the current layout
@@ -373,7 +387,7 @@ const CrowdsourceManager = class {
373
387
  * @protected
374
388
  */
375
389
  _getTable(layoutMode, panelOpen, hideTable) {
376
- const tableClass = hideTable ? "visibility-hidden" : "";
390
+ const tableClass = hideTable && this._isMobile ? "visibility-hidden" : "";
377
391
  const tableSizeClass = this._getTableSizeClass(layoutMode, panelOpen);
378
392
  const icon = this._getDividerIcon(layoutMode, panelOpen);
379
393
  const tooltip = panelOpen ? this._translations.close : this._translations.open;
@@ -4,13 +4,17 @@
4
4
  * http://www.apache.org/licenses/LICENSE-2.0
5
5
  */
6
6
  import { r as registerInstance, h, H as Host, g as getElement } from './index-7183ce4a.js';
7
+ import { g as getLocaleComponentStrings } from './locale-731e75a8.js';
8
+ import './esri-loader-eda07632.js';
9
+ import './_commonjsHelpers-d5f9d613.js';
7
10
 
8
- const crowdsourceReporterCss = ":host{display:block}";
11
+ const crowdsourceReporterCss = ":host{display:block;--calcite-label-margin-bottom:0px;--solutions-theme-foreground-color:var(--calcite-color-foreground-1)}.width-full{width:100% !important}.width-0{width:0}.height-full{height:100% !important}.height-0{height:0}.overflow-hidden{overflow:hidden}.border{border:1px solid var(--calcite-color-border-3)}.map-container{position:absolute;width:calc(100% - 390px);left:390px}.side-panel{padding:2px;width:390px;height:100%;position:absolute;top:0;left:0;z-index:60}.error-msg{padding:10px}.collapsed-side-panel{top:calc(100% - 55px);height:54px}";
9
12
 
10
13
  const CrowdsourceReporter = class {
11
14
  constructor(hostRef) {
12
15
  registerInstance(this, hostRef);
13
16
  this.description = undefined;
17
+ this.isMobile = undefined;
14
18
  this.enableAnonymousAccess = undefined;
15
19
  this.enableAnonymousComments = undefined;
16
20
  this.enableComments = undefined;
@@ -24,22 +28,39 @@ const CrowdsourceReporter = class {
24
28
  this.reportSubmittedMessage = undefined;
25
29
  this.searchConfiguration = undefined;
26
30
  this.showComments = undefined;
31
+ this.defaultWebmap = "";
32
+ this.enableSearch = true;
33
+ this.enableHome = true;
34
+ this.mapInfos = [];
35
+ this.theme = "light";
36
+ this.enableZoom = true;
37
+ this._mapInfo = undefined;
38
+ this._flowItems = ["layer-list"];
39
+ this._sidePanelCollapsed = false;
40
+ this._translations = undefined;
41
+ this._hasValidLayers = false;
27
42
  }
28
43
  //--------------------------------------------------------------------------
29
44
  //
30
- // State (internal)
31
- //
32
- //--------------------------------------------------------------------------
33
- //--------------------------------------------------------------------------
34
- //
35
- // Properties (protected)
36
- //
37
- //--------------------------------------------------------------------------
38
- //--------------------------------------------------------------------------
39
- //
40
45
  // Watch handlers
41
46
  //
42
47
  //--------------------------------------------------------------------------
48
+ /**
49
+ * Called each time the mapView prop is changed.
50
+ */
51
+ async isMobileWatchHandler() {
52
+ if (this.isMobile) {
53
+ this._sidePanelCollapsed = false;
54
+ }
55
+ }
56
+ /**
57
+ * Called each time the mapView prop is changed.
58
+ */
59
+ async mapViewWatchHandler() {
60
+ await this.mapView.when(async () => {
61
+ await this.setMapView();
62
+ });
63
+ }
43
64
  //--------------------------------------------------------------------------
44
65
  //
45
66
  // Methods (public)
@@ -57,18 +78,17 @@ const CrowdsourceReporter = class {
57
78
  //--------------------------------------------------------------------------
58
79
  /**
59
80
  * StencilJS: Called once just after the component is first connected to the DOM.
60
- *
81
+ * Create component translations and monitor the mediaQuery change to detect mobile/desktop mode
61
82
  * @returns Promise when complete
62
83
  */
63
- // async componentWillLoad(): Promise<void> {
64
- // await this._getTranslations();
65
- // await this._initModules();
66
- // }
84
+ async componentWillLoad() {
85
+ await this._getTranslations();
86
+ }
67
87
  /**
68
88
  * Renders the component.
69
89
  */
70
90
  render() {
71
- return (h(Host, null, h("slot", null, this.loginTitle + this.description)));
91
+ return (h(Host, null, h("div", null, h("calcite-shell", { "content-behind": true }, this._getReporter()))));
72
92
  }
73
93
  //--------------------------------------------------------------------------
74
94
  //
@@ -76,34 +96,135 @@ const CrowdsourceReporter = class {
76
96
  //
77
97
  //--------------------------------------------------------------------------
78
98
  /**
79
- * Load esri javascript api modules
80
- *
81
- * @returns Promise resolving when function is done
82
- *
99
+ * Get the reporter app functionality
100
+ * @protected
101
+ */
102
+ _getReporter() {
103
+ const renderLists = [];
104
+ this._flowItems.forEach((item) => {
105
+ switch (item) {
106
+ case "layer-list":
107
+ renderLists.push(this.getLayerListFlowItem());
108
+ break;
109
+ case "feature-list":
110
+ renderLists.push(this.getFeatureListFlowItem(this._selectedLayerId, this._selectedLayerName));
111
+ break;
112
+ case "feature-details":
113
+ renderLists.push(this.getFeatureDetailsFlowItem());
114
+ break;
115
+ }
116
+ });
117
+ let sidePanelClass = "side-panel";
118
+ //in case of mobile handle for collapsed styles of the panel
119
+ if (this.isMobile && this._sidePanelCollapsed) {
120
+ sidePanelClass += " collapsed-side-panel";
121
+ }
122
+ const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light";
123
+ return (h("calcite-panel", { class: sidePanelClass + " width-full " + themeClass }, this.mapView
124
+ ? h("calcite-flow", null, (renderLists === null || renderLists === void 0 ? void 0 : renderLists.length) > 0 && renderLists)
125
+ : h("calcite-loader", { scale: "m" })));
126
+ }
127
+ /**
128
+ * Get the feature layer list
129
+ * @returns the layer list items
130
+ * @protected
131
+ */
132
+ getLayerListFlowItem() {
133
+ return (h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this.reportsHeader }, this._hasValidLayers && h("calcite-action", { icon: "sort-ascending-arrow", slot: this.isMobile ? "header-menu-actions" : "header-actions-end", text: this._translations.sort, "text-enabled": this.isMobile }), this._hasValidLayers && h("calcite-action", { icon: "filter", slot: this.isMobile ? "header-menu-actions" : "header-actions-end", text: this._translations.filter, "text-enabled": this.isMobile }), this.isMobile && this.getActionToExpandCollapsePanel(), this._hasValidLayers && this.enableNewReports && h("calcite-button", { appearance: "secondary", slot: "footer", width: "full" }, this.reportButtonText), h("calcite-panel", { "full-height": true, "full-width": true }, h("layer-list", { class: "height-full", layers: this.layers, mapView: this.mapView, noLayerErrorMsg: this._translations.noLayerToDisplayErrorMsg, onLayerSelect: this.displayFeaturesList.bind(this), onLayersListLoaded: this.layerListLoaded.bind(this) }))));
134
+ }
135
+ /**
136
+ * When layer list is loaded, we will receive the list of layers, if its means we don't have any valid layer to be listed
137
+ * @param evt Event which has list of layers
138
+ * @protected
139
+ */
140
+ layerListLoaded(evt) {
141
+ const layersListed = evt.detail;
142
+ this._hasValidLayers = layersListed.length > 0;
143
+ }
144
+ /**On click of layer list item show feature list
145
+ * @param evt Event which has details of selected layerId and layerName
146
+ * @protected
147
+ */
148
+ displayFeaturesList(evt) {
149
+ this._selectedLayerId = evt.detail.layerId;
150
+ this._selectedLayerName = evt.detail.layerName;
151
+ this._flowItems = [...this._flowItems, "feature-list"];
152
+ }
153
+ /**
154
+ * On back from feature list navigate to the Layer list panel
155
+ * @protected
156
+ */
157
+ backFromFeatureList() {
158
+ const updatedFlowItems = [...this._flowItems];
159
+ updatedFlowItems.pop();
160
+ this._flowItems = [...updatedFlowItems];
161
+ }
162
+ /**
163
+ * Toggle side panel in case of mobile mode
164
+ * @protected
165
+ */
166
+ toggleSidePanel() {
167
+ this._sidePanelCollapsed = !this._sidePanelCollapsed;
168
+ }
169
+ /**
170
+ * When feature is selected from list store that and show feature details
171
+ * @param evt Event which has details of selected feature
172
+ */
173
+ async onFeatureSelectFromList(evt) {
174
+ this._selectedFeature = [evt.detail];
175
+ this._flowItems = [...this._flowItems, "feature-details"];
176
+ }
177
+ /**
178
+ * Get feature list of the selected feature layer
179
+ * @param layerId Layer id
180
+ * @returns feature list node
83
181
  * @protected
84
182
  */
85
- // protected async _initModules(): Promise<void> {
86
- // const [geometryEngine, jsonUtils]: [
87
- // __esri.geometryEngine,
88
- // __esri.symbolsSupportJsonUtils
89
- // ] = await loadModules([
90
- // "esri/geometry/geometryEngine",
91
- // "esri/symbols/support/jsonUtils"
92
- // ]);
93
- // this._geometryEngine = geometryEngine;
94
- // this._jsonUtils = jsonUtils;
95
- // }
183
+ getFeatureListFlowItem(layerId, layerName) {
184
+ return (h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: layerName, onCalciteFlowItemBack: this.backFromFeatureList.bind(this) }, h("calcite-action", { icon: "sort-ascending-arrow", slot: this.isMobile ? "header-menu-actions" : "header-actions-end", text: this._translations.sort, "text-enabled": this.isMobile }), h("calcite-action", { icon: "filter", slot: this.isMobile ? "header-menu-actions" : "header-actions-end", text: this._translations.filter, "text-enabled": this.isMobile }), this.isMobile && this.getActionToExpandCollapsePanel(), this.enableNewReports && h("calcite-button", { appearance: "secondary", slot: "footer", width: "full" }, this.reportButtonText), h("calcite-panel", { "full-height": true }, h("feature-list", { class: "height-full", highlightOnMap: true, mapView: this.mapView, noFeaturesFoundMsg: this._translations.featureErrorMsg, onFeatureSelect: this.onFeatureSelectFromList.bind(this), pageSize: 100, selectedLayerId: layerId }))));
185
+ }
186
+ /**
187
+ * Returns the calcite-flow item for feature details
188
+ * @returns Node
189
+ */
190
+ getFeatureDetailsFlowItem() {
191
+ return (h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._selectedLayerName, onCalciteFlowItemBack: this.backFromFeatureList.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), h("calcite-action", { icon: "share", slot: "header-actions-end", text: this._translations.share }), h("calcite-panel", { "full-height": true }, h("info-card", { allowEditing: false, graphics: this._selectedFeature, isLoading: false, isMobile: false, mapView: this.mapView, zoomAndScrollToSelected: true }))));
192
+ }
193
+ /**
194
+ * Returns the action button to Expand/Collapse side panel in mobile mode
195
+ */
196
+ getActionToExpandCollapsePanel() {
197
+ return (h("calcite-action", { icon: this._sidePanelCollapsed ? "chevrons-up" : "chevrons-down", onClick: this.toggleSidePanel.bind(this), slot: "header-actions-end", text: this._sidePanelCollapsed ? this._translations.expand : this._translations.collapse }));
198
+ }
199
+ /**
200
+ * Set the current map info when maps change
201
+ * @protected
202
+ */
203
+ async setMapView() {
204
+ this.mapView.popupEnabled = false;
205
+ if (this._defaultCenter && this._defaultLevel) {
206
+ await this.mapView.goTo({
207
+ center: this._defaultCenter,
208
+ zoom: this._defaultLevel
209
+ });
210
+ this._defaultCenter = undefined;
211
+ this._defaultLevel = undefined;
212
+ }
213
+ }
96
214
  /**
97
215
  * Fetches the component's translations
98
- *
99
216
  * @returns Promise when complete
100
217
  * @protected
101
218
  */
102
219
  async _getTranslations() {
103
- // const messages = await getLocaleComponentStrings(this.el);
104
- // this._translations = messages[0] as typeof BufferTools_T9n;
220
+ const messages = await getLocaleComponentStrings(this.el);
221
+ this._translations = messages[0];
105
222
  }
106
223
  get el() { return getElement(this); }
224
+ static get watchers() { return {
225
+ "isMobile": ["isMobileWatchHandler"],
226
+ "mapView": ["mapViewWatchHandler"]
227
+ }; }
107
228
  };
108
229
  CrowdsourceReporter.style = crowdsourceReporterCss;
109
230