@esri/solutions-components 0.11.17 → 0.11.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (333) hide show
  1. package/dist/cjs/{asyncToGenerator-c7fc3ee4.js → asyncToGenerator-f169429a.js} +1 -1
  2. package/dist/cjs/basemap-gallery_7.cjs.entry.js +50 -259
  3. package/dist/cjs/buffer-tools_2.cjs.entry.js +29 -123
  4. package/dist/cjs/card-manager_3.cjs.entry.js +215 -565
  5. package/dist/cjs/consent-manager.cjs.entry.js +15 -57
  6. package/dist/cjs/create-feature_4.cjs.entry.js +102 -256
  7. package/dist/cjs/create-related-feature_3.cjs.entry.js +38 -172
  8. package/dist/cjs/crowdsource-manager.cjs.entry.js +89 -267
  9. package/dist/cjs/crowdsource-reporter.cjs.entry.js +55 -219
  10. package/dist/cjs/deduct-calculator.cjs.entry.js +1 -1
  11. package/dist/cjs/delete-dialog.cjs.entry.js +9 -38
  12. package/dist/cjs/{downloadUtils-88ec0e88.js → downloadUtils-b269c7a1.js} +5 -5
  13. package/dist/cjs/{effects-3607d1ba.js → effects-2f75069e.js} +1 -1
  14. package/dist/cjs/feature-list.cjs.entry.js +30 -110
  15. package/dist/cjs/{helpers-a65cb83a.js → helpers-69e520bd.js} +3 -3
  16. package/dist/cjs/{index-2c21082d.js → index-af14245a.js} +346 -428
  17. package/dist/cjs/{index-90ef3c01.js → index-ffd12cb0.js} +1 -1
  18. package/dist/cjs/{index.es-3c2404c3.js → index.es-644259ff.js} +2 -2
  19. package/dist/cjs/instant-apps-app-guide.cjs.entry.js +5 -5
  20. package/dist/cjs/instant-apps-ckeditor-wrapper_3.cjs.entry.js +7 -7
  21. package/dist/cjs/instant-apps-control-panel.cjs.entry.js +3 -3
  22. package/dist/cjs/instant-apps-create.cjs.entry.js +5 -5
  23. package/dist/cjs/instant-apps-export-views.cjs.entry.js +5 -5
  24. package/dist/cjs/instant-apps-export.cjs.entry.js +5 -5
  25. package/dist/cjs/instant-apps-filter-list_2.cjs.entry.js +5 -5
  26. package/dist/cjs/instant-apps-header.cjs.entry.js +3 -3
  27. package/dist/cjs/instant-apps-interactive-legend-classic.cjs.entry.js +6 -6
  28. package/dist/cjs/instant-apps-interactive-legend-count_2.cjs.entry.js +6 -6
  29. package/dist/cjs/instant-apps-interactive-legend-group-legend-element-caption.cjs.entry.js +6 -6
  30. package/dist/cjs/instant-apps-interactive-legend-group-legend-element_5.cjs.entry.js +6 -6
  31. package/dist/cjs/instant-apps-interactive-legend.cjs.entry.js +8 -8
  32. package/dist/cjs/instant-apps-keyboard-shortcuts.cjs.entry.js +5 -5
  33. package/dist/cjs/instant-apps-landing-page.cjs.entry.js +1 -1
  34. package/dist/cjs/instant-apps-language-switcher.cjs.entry.js +8 -8
  35. package/dist/cjs/instant-apps-language-translator.cjs.entry.js +8 -8
  36. package/dist/cjs/instant-apps-measurement-tool.cjs.entry.js +3 -3
  37. package/dist/cjs/instant-apps-measurement.cjs.entry.js +5 -5
  38. package/dist/cjs/instant-apps-popover.cjs.entry.js +5 -5
  39. package/dist/cjs/instant-apps-popovers.cjs.entry.js +1 -1
  40. package/dist/cjs/instant-apps-scoreboard.cjs.entry.js +5 -5
  41. package/dist/cjs/instant-apps-sign-in.cjs.entry.js +5 -5
  42. package/dist/cjs/instant-apps-splash.cjs.entry.js +5 -5
  43. package/dist/cjs/instant-apps-time-filter.cjs.entry.js +7 -7
  44. package/dist/cjs/json-editor_7.cjs.entry.js +50 -228
  45. package/dist/cjs/{languageSwitcher-19a22439.js → languageSwitcher-c8e62594.js} +1 -1
  46. package/dist/cjs/{languageUtil-a3e1eafd.js → languageUtil-bd49af69.js} +1 -1
  47. package/dist/cjs/{loadModules-e9d8977c.js → loadModules-3b29fa24.js} +1 -1
  48. package/dist/cjs/loader.cjs.js +2 -2
  49. package/dist/cjs/{locale-c09e93fb.js → locale-905e6063.js} +2 -2
  50. package/dist/cjs/{locale-0a273172.js → locale-c923d7b6.js} +3 -3
  51. package/dist/cjs/map-layer-picker.cjs.entry.js +29 -114
  52. package/dist/cjs/map-select-tools_3.cjs.entry.js +53 -232
  53. package/dist/cjs/{mapViewUtils-319df9ec.js → mapViewUtils-4ea7216c.js} +0 -44
  54. package/dist/cjs/pci-calculator.cjs.entry.js +2 -15
  55. package/dist/cjs/{popupUtils-ca1127aa.js → popupUtils-5378e04a.js} +2 -2
  56. package/dist/cjs/public-notification.cjs.entry.js +47 -197
  57. package/dist/cjs/{publicNotificationStore-ee00411f.js → publicNotificationStore-beb782de.js} +1 -1
  58. package/dist/cjs/solution-configuration.cjs.entry.js +18 -53
  59. package/dist/cjs/solution-contents_3.cjs.entry.js +19 -85
  60. package/dist/cjs/solution-item-accordion.cjs.entry.js +15 -42
  61. package/dist/cjs/solution-item-icon.cjs.entry.js +4 -18
  62. package/dist/cjs/{solution-store-6208ce28.js → solution-store-3cf25b71.js} +1 -1
  63. package/dist/cjs/solutions-components.cjs.js +3 -3
  64. package/dist/cjs/spatial-ref.cjs.entry.js +11 -46
  65. package/dist/cjs/store-manager.cjs.entry.js +6 -21
  66. package/dist/cjs/{utils-30344ce0.js → utils-3739960f.js} +2 -2
  67. package/dist/collection/assets/t9n/crowdsource-manager/resources.json +4 -1
  68. package/dist/collection/assets/t9n/crowdsource-manager/resources_en.json +4 -1
  69. package/dist/collection/assets/t9n/solution-item-accordion/resources.json +1 -1
  70. package/dist/collection/assets/t9n/solution-item-accordion/resources_en.json +1 -1
  71. package/dist/collection/collection-manifest.json +1 -1
  72. package/dist/collection/components/basemap-gallery/basemap-gallery.js +5 -19
  73. package/dist/collection/components/buffer-tools/buffer-tools.js +13 -52
  74. package/dist/collection/components/card-manager/card-manager.js +18 -72
  75. package/dist/collection/components/consent-manager/consent-manager.js +12 -52
  76. package/dist/collection/components/create-feature/create-feature.js +16 -68
  77. package/dist/collection/components/create-related-feature/create-related-feature.js +10 -44
  78. package/dist/collection/components/crowdsource-manager/crowdsource-manager.css +23 -0
  79. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +88 -263
  80. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +53 -215
  81. package/dist/collection/components/delete-button/delete-button.js +13 -55
  82. package/dist/collection/components/delete-dialog/delete-dialog.js +8 -35
  83. package/dist/collection/components/edit-card/edit-card.js +10 -43
  84. package/dist/collection/components/feature-details/feature-details.js +18 -74
  85. package/dist/collection/components/feature-list/feature-list.js +25 -103
  86. package/dist/collection/components/floor-filter/floor-filter.js +5 -19
  87. package/dist/collection/components/info-card/info-card.js +100 -84
  88. package/dist/collection/components/json-editor/json-editor.js +7 -28
  89. package/dist/collection/components/layer-list/layer-list.js +12 -50
  90. package/dist/collection/components/layer-table/layer-table.js +188 -308
  91. package/dist/collection/components/map-card/map-card.js +43 -182
  92. package/dist/collection/components/map-draw-tools/map-draw-tools.js +15 -66
  93. package/dist/collection/components/map-fullscreen/map-fullscreen.js +4 -18
  94. package/dist/collection/components/map-layer-picker/map-layer-picker.js +25 -108
  95. package/dist/collection/components/map-legend/map-legend.js +4 -15
  96. package/dist/collection/components/map-picker/map-picker.js +8 -35
  97. package/dist/collection/components/map-search/map-search.js +8 -35
  98. package/dist/collection/components/map-select-tools/map-select-tools.js +32 -138
  99. package/dist/collection/components/map-tools/map-tools.js +27 -115
  100. package/dist/collection/components/pci-calculator/pci-calculator.js +3 -14
  101. package/dist/collection/components/pdf-download/pdf-download.js +6 -27
  102. package/dist/collection/components/public-notification/public-notification.js +41 -189
  103. package/dist/collection/components/refine-selection/refine-selection.js +13 -59
  104. package/dist/collection/components/solution-configuration/solution-configuration.js +13 -48
  105. package/dist/collection/components/solution-contents/solution-contents.js +4 -13
  106. package/dist/collection/components/solution-item/solution-item.js +9 -36
  107. package/dist/collection/components/solution-item-accordion/solution-item-accordion.js +19 -40
  108. package/dist/collection/components/solution-item-details/solution-item-details.js +16 -35
  109. package/dist/collection/components/solution-item-icon/solution-item-icon.js +5 -17
  110. package/dist/collection/components/solution-item-sharing/solution-item-sharing.js +6 -27
  111. package/dist/collection/components/solution-organization-variables/solution-organization-variables.js +6 -24
  112. package/dist/collection/components/solution-resource-item/solution-resource-item.js +8 -36
  113. package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js +7 -31
  114. package/dist/collection/components/solution-template-data/solution-template-data.js +8 -49
  115. package/dist/collection/components/solution-variables/solution-variables.js +6 -24
  116. package/dist/collection/components/spatial-ref/spatial-ref.js +8 -43
  117. package/dist/collection/components/store-manager/store-manager.js +5 -18
  118. package/dist/components/basemap-gallery2.js +3 -19
  119. package/dist/components/buffer-tools2.js +11 -52
  120. package/dist/components/card-manager2.js +16 -72
  121. package/dist/components/consent-manager.js +10 -52
  122. package/dist/components/create-feature2.js +14 -68
  123. package/dist/components/create-related-feature2.js +8 -44
  124. package/dist/components/crowdsource-manager.js +87 -264
  125. package/dist/components/crowdsource-reporter.js +51 -215
  126. package/dist/components/delete-button2.js +11 -55
  127. package/dist/components/delete-dialog2.js +6 -35
  128. package/dist/components/edit-card2.js +8 -43
  129. package/dist/components/feature-details2.js +16 -74
  130. package/dist/components/feature-list2.js +23 -103
  131. package/dist/components/floor-filter2.js +3 -19
  132. package/dist/components/info-card2.js +64 -83
  133. package/dist/components/json-editor2.js +5 -28
  134. package/dist/components/layer-list2.js +10 -50
  135. package/dist/components/layer-table2.js +155 -307
  136. package/dist/components/map-card2.js +41 -182
  137. package/dist/components/map-draw-tools2.js +13 -66
  138. package/dist/components/map-fullscreen2.js +2 -18
  139. package/dist/components/map-layer-picker2.js +23 -108
  140. package/dist/components/map-legend2.js +2 -15
  141. package/dist/components/map-picker2.js +6 -35
  142. package/dist/components/map-search2.js +6 -35
  143. package/dist/components/map-select-tools2.js +31 -139
  144. package/dist/components/map-tools2.js +25 -115
  145. package/dist/components/pci-calculator.js +1 -14
  146. package/dist/components/pdf-download2.js +4 -27
  147. package/dist/components/public-notification.js +39 -189
  148. package/dist/components/queryUtils.js +1 -43
  149. package/dist/components/refine-selection2.js +12 -60
  150. package/dist/components/solution-configuration.js +13 -48
  151. package/dist/components/solution-contents2.js +2 -13
  152. package/dist/components/solution-item-accordion.js +12 -39
  153. package/dist/components/solution-item-details2.js +14 -35
  154. package/dist/components/solution-item-icon2.js +3 -17
  155. package/dist/components/solution-item-sharing2.js +4 -27
  156. package/dist/components/solution-item2.js +7 -36
  157. package/dist/components/solution-organization-variables2.js +4 -24
  158. package/dist/components/solution-resource-item2.js +6 -36
  159. package/dist/components/solution-spatial-ref2.js +5 -31
  160. package/dist/components/solution-template-data2.js +8 -49
  161. package/dist/components/solution-variables2.js +4 -24
  162. package/dist/components/spatial-ref.js +8 -43
  163. package/dist/components/store-manager.js +3 -18
  164. package/dist/esm/{asyncToGenerator-96b2368d.js → asyncToGenerator-e51717ed.js} +1 -1
  165. package/dist/esm/basemap-gallery_7.entry.js +50 -259
  166. package/dist/esm/buffer-tools_2.entry.js +29 -123
  167. package/dist/esm/card-manager_3.entry.js +215 -565
  168. package/dist/esm/consent-manager.entry.js +15 -57
  169. package/dist/esm/create-feature_4.entry.js +102 -256
  170. package/dist/esm/create-related-feature_3.entry.js +38 -172
  171. package/dist/esm/crowdsource-manager.entry.js +89 -267
  172. package/dist/esm/crowdsource-reporter.entry.js +55 -219
  173. package/dist/esm/deduct-calculator.entry.js +1 -1
  174. package/dist/esm/delete-dialog.entry.js +9 -38
  175. package/dist/esm/{downloadUtils-22a8f2d8.js → downloadUtils-d04d4095.js} +5 -5
  176. package/dist/esm/{effects-38bc1195.js → effects-602e7b51.js} +1 -1
  177. package/dist/esm/feature-list.entry.js +30 -110
  178. package/dist/esm/{helpers-77bdd30e.js → helpers-520f100c.js} +3 -3
  179. package/dist/esm/{index-6de7c296.js → index-c247b62b.js} +1 -1
  180. package/dist/esm/{index-3702583a.js → index-df5db8e9.js} +346 -428
  181. package/dist/esm/{index.es-87662946.js → index.es-ca80d0c5.js} +2 -2
  182. package/dist/esm/instant-apps-app-guide.entry.js +5 -5
  183. package/dist/esm/instant-apps-ckeditor-wrapper_3.entry.js +7 -7
  184. package/dist/esm/instant-apps-control-panel.entry.js +3 -3
  185. package/dist/esm/instant-apps-create.entry.js +5 -5
  186. package/dist/esm/instant-apps-export-views.entry.js +5 -5
  187. package/dist/esm/instant-apps-export.entry.js +5 -5
  188. package/dist/esm/instant-apps-filter-list_2.entry.js +5 -5
  189. package/dist/esm/instant-apps-header.entry.js +3 -3
  190. package/dist/esm/instant-apps-interactive-legend-classic.entry.js +6 -6
  191. package/dist/esm/instant-apps-interactive-legend-count_2.entry.js +6 -6
  192. package/dist/esm/instant-apps-interactive-legend-group-legend-element-caption.entry.js +6 -6
  193. package/dist/esm/instant-apps-interactive-legend-group-legend-element_5.entry.js +6 -6
  194. package/dist/esm/instant-apps-interactive-legend.entry.js +8 -8
  195. package/dist/esm/instant-apps-keyboard-shortcuts.entry.js +5 -5
  196. package/dist/esm/instant-apps-landing-page.entry.js +1 -1
  197. package/dist/esm/instant-apps-language-switcher.entry.js +8 -8
  198. package/dist/esm/instant-apps-language-translator.entry.js +8 -8
  199. package/dist/esm/instant-apps-measurement-tool.entry.js +3 -3
  200. package/dist/esm/instant-apps-measurement.entry.js +5 -5
  201. package/dist/esm/instant-apps-popover.entry.js +5 -5
  202. package/dist/esm/instant-apps-popovers.entry.js +1 -1
  203. package/dist/esm/instant-apps-scoreboard.entry.js +5 -5
  204. package/dist/esm/instant-apps-sign-in.entry.js +5 -5
  205. package/dist/esm/instant-apps-splash.entry.js +5 -5
  206. package/dist/esm/instant-apps-time-filter.entry.js +7 -7
  207. package/dist/esm/json-editor_7.entry.js +50 -228
  208. package/dist/esm/{languageSwitcher-49bad3f4.js → languageSwitcher-ccdf79d4.js} +1 -1
  209. package/dist/esm/{languageUtil-2b6e191a.js → languageUtil-2bac3910.js} +1 -1
  210. package/dist/esm/{loadModules-947ccfd4.js → loadModules-1b0b108c.js} +1 -1
  211. package/dist/esm/loader.js +3 -3
  212. package/dist/esm/{locale-aa656a2c.js → locale-15e42305.js} +2 -2
  213. package/dist/esm/{locale-b0016f8e.js → locale-29d08ded.js} +3 -3
  214. package/dist/esm/map-layer-picker.entry.js +29 -114
  215. package/dist/esm/map-select-tools_3.entry.js +53 -232
  216. package/dist/esm/{mapViewUtils-a854e298.js → mapViewUtils-9da9be1c.js} +1 -43
  217. package/dist/esm/pci-calculator.entry.js +2 -15
  218. package/dist/esm/{popupUtils-1314cb13.js → popupUtils-b71abb01.js} +2 -2
  219. package/dist/esm/public-notification.entry.js +47 -197
  220. package/dist/esm/{publicNotificationStore-70219049.js → publicNotificationStore-9ec5e22a.js} +1 -1
  221. package/dist/esm/solution-configuration.entry.js +18 -53
  222. package/dist/esm/solution-contents_3.entry.js +19 -85
  223. package/dist/esm/solution-item-accordion.entry.js +15 -42
  224. package/dist/esm/solution-item-icon.entry.js +4 -18
  225. package/dist/esm/{solution-store-2493275a.js → solution-store-4c39c654.js} +1 -1
  226. package/dist/esm/solutions-components.js +4 -4
  227. package/dist/esm/spatial-ref.entry.js +11 -46
  228. package/dist/esm/store-manager.entry.js +6 -21
  229. package/dist/esm/{utils-68015f9d.js → utils-89be1743.js} +2 -2
  230. package/dist/solutions-components/assets/t9n/crowdsource-manager/resources.json +4 -1
  231. package/dist/solutions-components/assets/t9n/crowdsource-manager/resources_en.json +4 -1
  232. package/dist/solutions-components/assets/t9n/solution-item-accordion/resources.json +1 -1
  233. package/dist/solutions-components/assets/t9n/solution-item-accordion/resources_en.json +1 -1
  234. package/dist/solutions-components/{p-68d49e1a.entry.js → p-0132213f.entry.js} +2 -2
  235. package/dist/solutions-components/{p-dc188d13.js → p-039ab075.js} +1 -1
  236. package/dist/solutions-components/p-04277d48.entry.js +6 -0
  237. package/dist/solutions-components/p-04546ef6.js +6 -0
  238. package/dist/solutions-components/{p-174fa218.js → p-0607044f.js} +1 -1
  239. package/dist/solutions-components/p-099379e6.entry.js +6 -0
  240. package/dist/solutions-components/{p-300ff31e.entry.js → p-0b1c830a.entry.js} +1 -1
  241. package/dist/solutions-components/{p-ff5db601.entry.js → p-0ea99464.entry.js} +1 -1
  242. package/dist/solutions-components/p-1054e10a.entry.js +6 -0
  243. package/dist/solutions-components/p-1adc6874.entry.js +6 -0
  244. package/dist/solutions-components/{p-3c3aecdd.js → p-258aa58e.js} +1 -1
  245. package/dist/solutions-components/p-29baf8a2.entry.js +6 -0
  246. package/dist/solutions-components/{p-eb97b5ad.entry.js → p-2a1ed83a.entry.js} +1 -1
  247. package/dist/solutions-components/{p-8107be38.entry.js → p-2a7f23fc.entry.js} +1 -1
  248. package/dist/solutions-components/{p-6da8fe2d.entry.js → p-2cb8c175.entry.js} +1 -1
  249. package/dist/solutions-components/p-2d3b8412.entry.js +6 -0
  250. package/dist/solutions-components/p-2d8300ba.entry.js +6 -0
  251. package/dist/solutions-components/{p-ac122d9e.js → p-3423b5ef.js} +1 -1
  252. package/dist/solutions-components/{p-fa09caf3.entry.js → p-34338938.entry.js} +1 -1
  253. package/dist/solutions-components/{p-4f514c6d.js → p-36e3b39c.js} +2 -2
  254. package/dist/solutions-components/{p-ea64b72e.entry.js → p-37cc79c6.entry.js} +1 -1
  255. package/dist/solutions-components/p-38814554.entry.js +6 -0
  256. package/dist/solutions-components/{p-ee863ffb.entry.js → p-3f8b1062.entry.js} +1 -1
  257. package/dist/solutions-components/p-436b869c.entry.js +6 -0
  258. package/dist/solutions-components/{p-08ad0b7a.js → p-438fdc33.js} +1 -1
  259. package/dist/solutions-components/{p-335a630e.entry.js → p-4454af38.entry.js} +1 -1
  260. package/dist/solutions-components/p-532ed572.entry.js +6 -0
  261. package/dist/solutions-components/{p-959cb673.entry.js → p-552fb1c0.entry.js} +1 -1
  262. package/dist/solutions-components/{p-b560498c.entry.js → p-59a1c5a9.entry.js} +1 -1
  263. package/dist/solutions-components/p-5e4e0f84.entry.js +6 -0
  264. package/dist/solutions-components/{p-2b556610.entry.js → p-64a6162f.entry.js} +1 -1
  265. package/dist/solutions-components/{p-e85da876.entry.js → p-6ac03d17.entry.js} +1 -1
  266. package/dist/solutions-components/p-6e879de9.entry.js +6 -0
  267. package/dist/solutions-components/{p-8f7957a2.js → p-7bf7d67b.js} +1 -1
  268. package/dist/solutions-components/{p-81ae30bd.entry.js → p-86b6f918.entry.js} +1 -1
  269. package/dist/solutions-components/{p-e23b4193.js → p-8717729a.js} +1 -1
  270. package/dist/solutions-components/{p-e81e2d83.entry.js → p-8db12ee9.entry.js} +2 -2
  271. package/dist/solutions-components/{p-173d5fce.js → p-8f973b3d.js} +1 -1
  272. package/dist/solutions-components/{p-1ddd7128.entry.js → p-97abbf8f.entry.js} +1 -1
  273. package/dist/solutions-components/{p-ee2cbba0.js → p-a397e773.js} +1 -1
  274. package/dist/solutions-components/p-b636a8b4.entry.js +6 -0
  275. package/dist/solutions-components/{p-1890b884.entry.js → p-b6a6fdcf.entry.js} +2 -2
  276. package/dist/solutions-components/p-b8f29a99.entry.js +6 -0
  277. package/dist/solutions-components/p-ba472e45.entry.js +6 -0
  278. package/dist/solutions-components/{p-1dffcc22.entry.js → p-c3aac15b.entry.js} +1 -1
  279. package/dist/solutions-components/{p-3d20e307.js → p-cd38fc53.js} +1 -1
  280. package/dist/solutions-components/p-d45b0400.entry.js +6 -0
  281. package/dist/solutions-components/p-d885880a.entry.js +6 -0
  282. package/dist/solutions-components/{p-8b218ba7.js → p-da1e098c.js} +1 -1
  283. package/dist/solutions-components/{p-b40b5be5.entry.js → p-da1e4ff1.entry.js} +1 -1
  284. package/dist/solutions-components/p-dbf2c455.entry.js +6 -0
  285. package/dist/solutions-components/{p-952da957.js → p-dcd2f00b.js} +2 -2
  286. package/dist/solutions-components/{p-2c8360b4.entry.js → p-dda0aa41.entry.js} +1 -1
  287. package/dist/solutions-components/{p-70e8be5c.entry.js → p-e3e35c14.entry.js} +1 -1
  288. package/dist/solutions-components/{p-48942eb8.js → p-e6859850.js} +2 -2
  289. package/dist/solutions-components/{p-699a9557.entry.js → p-e79b69e6.entry.js} +1 -1
  290. package/dist/solutions-components/p-e996c38f.js +7 -0
  291. package/dist/solutions-components/{p-f07a02e2.entry.js → p-edfcce2c.entry.js} +1 -1
  292. package/dist/solutions-components/{p-2dcf8f00.entry.js → p-f292f56e.entry.js} +1 -1
  293. package/dist/solutions-components/{p-4bdd4009.entry.js → p-f36b4778.entry.js} +1 -1
  294. package/dist/solutions-components/{p-579628d9.entry.js → p-f457e8be.entry.js} +1 -1
  295. package/dist/solutions-components/{p-d65f8b73.js → p-f93a9d92.js} +1 -1
  296. package/dist/solutions-components/p-f99a78f1.entry.js +6 -0
  297. package/dist/solutions-components/{p-7f6cbe61.entry.js → p-fdf0d66f.entry.js} +1 -1
  298. package/dist/solutions-components/solutions-components.esm.js +1 -1
  299. package/dist/solutions-components_commit.txt +7 -7
  300. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +11 -7
  301. package/dist/types/components/info-card/info-card.d.ts +16 -0
  302. package/dist/types/components/layer-table/layer-table.d.ts +32 -21
  303. package/dist/types/components/solution-item-accordion/solution-item-accordion.d.ts +1 -1
  304. package/dist/types/components.d.ts +19 -2
  305. package/dist/types/preact.d.ts +2 -1
  306. package/package.json +2 -2
  307. package/dist/solutions-components/p-032d4411.entry.js +0 -6
  308. package/dist/solutions-components/p-1b0588d2.js +0 -7
  309. package/dist/solutions-components/p-1fe3577a.entry.js +0 -6
  310. package/dist/solutions-components/p-265f5dc4.entry.js +0 -6
  311. package/dist/solutions-components/p-43d9bb7d.entry.js +0 -6
  312. package/dist/solutions-components/p-4426901e.entry.js +0 -6
  313. package/dist/solutions-components/p-4ebc471b.entry.js +0 -6
  314. package/dist/solutions-components/p-5ea1e18b.entry.js +0 -6
  315. package/dist/solutions-components/p-6d62a4fa.entry.js +0 -6
  316. package/dist/solutions-components/p-70036eb6.entry.js +0 -6
  317. package/dist/solutions-components/p-87919d6d.entry.js +0 -6
  318. package/dist/solutions-components/p-89fbc318.js +0 -6
  319. package/dist/solutions-components/p-8ea0a36a.entry.js +0 -6
  320. package/dist/solutions-components/p-9d953313.entry.js +0 -6
  321. package/dist/solutions-components/p-a003600b.entry.js +0 -6
  322. package/dist/solutions-components/p-acd2699e.entry.js +0 -6
  323. package/dist/solutions-components/p-afc3ac6d.entry.js +0 -6
  324. package/dist/solutions-components/p-b37be371.entry.js +0 -6
  325. package/dist/solutions-components/p-bc2548ba.entry.js +0 -6
  326. package/dist/solutions-components/p-bf2598f8.entry.js +0 -6
  327. package/dist/solutions-components/p-ce8377c6.entry.js +0 -6
  328. /package/dist/cjs/{esri-loader-08dc41bd.js → esri-loader-1e8cc247.js} +0 -0
  329. /package/dist/cjs/{typeof-2a7e2dec.js → typeof-eba0a941.js} +0 -0
  330. /package/dist/esm/{esri-loader-c6842c6b.js → esri-loader-d10d860d.js} +0 -0
  331. /package/dist/esm/{typeof-ef2a007d.js → typeof-a3e780e1.js} +0 -0
  332. /package/dist/solutions-components/{p-4fe489cf.js → p-19bce2cc.js} +0 -0
  333. /package/dist/solutions-components/{p-0a24ad5f.js → p-3b3f77bc.js} +0 -0
@@ -7,7 +7,7 @@ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/
7
7
  import { l as loadModules } from './loadModules.js';
8
8
  import { g as getLocaleComponentStrings } from './locale.js';
9
9
  import { b as goToSelection, c as getFeatureLayerView, g as getLayerOrTable } from './mapViewUtils.js';
10
- import { b as queryAllIds, c as queryAllOidsWithQueryFeatures, d as queryFeaturesByGlobalID } from './queryUtils.js';
10
+ import { b as queryFeaturesByGlobalID } from './queryUtils.js';
11
11
  import { d as downloadCSV } from './downloadUtils.js';
12
12
  import { d as defineCustomElement$3 } from './instant-apps-filter-list2.js';
13
13
  import { d as defineCustomElement$2 } from './instant-apps-social-share2.js';
@@ -23,181 +23,49 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
23
23
  this.featureSelectionChange = createEvent(this, "featureSelectionChange", 7);
24
24
  this.toggleFilter = createEvent(this, "toggleFilter", 7);
25
25
  this.showDelete = createEvent(this, "showDelete", 7);
26
+ this.appLayout = undefined;
27
+ this.defaultGlobalId = undefined;
28
+ this.defaultLayerId = undefined;
29
+ this.defaultOid = undefined;
30
+ this.enableAutoRefresh = undefined;
31
+ this.enableColumnReorder = true;
32
+ this.enableCSV = undefined;
33
+ this.enableInlineEdit = undefined;
34
+ this.enableShare = undefined;
35
+ this.honorMapFieldSettings = undefined;
36
+ this.isMobile = undefined;
37
+ this.locale = undefined;
38
+ this.mapHidden = undefined;
39
+ this.mapInfo = undefined;
40
+ this.mapView = undefined;
41
+ this.onlyShowUpdatableLayers = undefined;
42
+ this.selectedIds = [];
43
+ this.shareIncludeEmbed = undefined;
44
+ this.shareIncludeSocial = undefined;
45
+ this.showNewestFirst = undefined;
46
+ this.zoomAndScrollToSelected = undefined;
47
+ this.zoomToScale = undefined;
48
+ this.createFilterModal = true;
49
+ this._allIds = [];
50
+ this._controlsThatFit = undefined;
51
+ this._csvExporting = false;
52
+ this._fetchingData = false;
53
+ this._filterActive = false;
54
+ this._filterOpen = false;
55
+ this._layer = undefined;
56
+ this._selectAllActive = false;
57
+ this._showHideOpen = false;
58
+ this._showOnlySelected = false;
59
+ this._toolInfos = undefined;
60
+ this._translations = undefined;
61
+ this._fullTextSearchInfo = undefined;
62
+ this._searchPlaceHolder = '';
63
+ this._size = 0;
64
+ this._queryingData = false;
26
65
  }
27
66
  get el() { return this; }
28
67
  //--------------------------------------------------------------------------
29
68
  //
30
- // Properties (public)
31
- //
32
- //--------------------------------------------------------------------------
33
- /**
34
- * AppLayout: the current app layout
35
- */
36
- appLayout;
37
- /**
38
- * string: Global ID of the feature to select
39
- */
40
- defaultGlobalId;
41
- /**
42
- * string: when provided this layer ID will be used when the app loads
43
- */
44
- defaultLayerId;
45
- /**
46
- * number: when provided this will be used to select a feature in the table by default
47
- */
48
- defaultOid;
49
- /**
50
- * boolean: when true the layer table will auto refresh the data
51
- */
52
- enableAutoRefresh;
53
- /**
54
- * boolean: when true the layer table will support drag/drop of columns to adjust order
55
- */
56
- enableColumnReorder = true;
57
- /**
58
- * boolean: when true the export to csv button will be available
59
- */
60
- enableCSV;
61
- /**
62
- * boolean: when true edits can be applied directly within the table
63
- */
64
- enableInlineEdit;
65
- /**
66
- * boolean: when true the share widget will be available
67
- */
68
- enableShare;
69
- /**
70
- * boolean: when true we will honor field order and visibility that may have been defined
71
- * in the map viewer if no field order is defined in the mapInfo.
72
- *
73
- * Field order defined in the mapInfo as would be the case for Instant App configurations
74
- * will always override this map level setting.
75
- */
76
- honorMapFieldSettings;
77
- /**
78
- * When true the component will render an optimized view for mobile devices
79
- */
80
- isMobile;
81
- /**
82
- * string: Locale to use for translation of stings in the UI
83
- */
84
- locale;
85
- /**
86
- * boolean: when true the map is hidden and map specific controls should be hidden
87
- */
88
- mapHidden;
89
- /**
90
- * IMapInfo: key configuration details about the current map
91
- */
92
- mapInfo;
93
- /**
94
- * esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html
95
- */
96
- mapView;
97
- /**
98
- * boolean: When true only editable layers that support the update capability will be available
99
- */
100
- onlyShowUpdatableLayers;
101
- /**
102
- * number[]: A list of ids that are currently selected
103
- */
104
- selectedIds = [];
105
- /**
106
- * boolean: When true the share options will include embed option
107
- */
108
- shareIncludeEmbed;
109
- /**
110
- * boolean: When true the share options will include social media sharing
111
- */
112
- shareIncludeSocial;
113
- /**
114
- * boolean: when true the table will be sorted by objectid in descending order by default
115
- */
116
- showNewestFirst;
117
- /**
118
- * boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table
119
- */
120
- zoomAndScrollToSelected;
121
- /**
122
- * number: default scale to zoom to when zooming to a single point feature
123
- */
124
- zoomToScale;
125
- /**
126
- * boolean: create filter modal optional (default true) boolean value to create filter modal in layer table
127
- */
128
- createFilterModal = true;
129
- //--------------------------------------------------------------------------
130
- //
131
- // State (internal)
132
- //
133
- //--------------------------------------------------------------------------
134
- /**
135
- * number[]: A list of all IDs for the current layer
136
- */
137
- _allIds = [];
138
- /**
139
- * IToolSizeInfo[]: The controls that currently fit based on toolbar size
140
- */
141
- _controlsThatFit;
142
- /**
143
- * boolean: When true a loading indicator will be shown beside the button text
144
- */
145
- _csvExporting = false;
146
- /**
147
- * boolean: When true a loading indicator will be shown in place of the layer table
148
- */
149
- _fetchingData = false;
150
- /**
151
- * boolean: When true an indicator will be shown on the action
152
- */
153
- _filterActive = false;
154
- /**
155
- * boolean: When true the filter component will be displayed
156
- */
157
- _filterOpen = false;
158
- /**
159
- * esri/views/layers/FeatureLayer: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html
160
- */
161
- _layer;
162
- /**
163
- * boolean: When true the select all will be displayed in an active state
164
- */
165
- _selectAllActive = false;
166
- /**
167
- * boolean: When true the show/hide fields list is forced open
168
- */
169
- _showHideOpen = false;
170
- /**
171
- * boolean: When true only selected records will be shown in the table
172
- */
173
- _showOnlySelected = false;
174
- /**
175
- * IToolInfo[]: Key details used for creating the tools
176
- */
177
- _toolInfos;
178
- /**
179
- * Contains the translations for this component.
180
- * All UI strings should be defined here.
181
- */
182
- _translations;
183
- /**
184
- * any[] Contains full text search info object
185
- */
186
- _fullTextSearchInfo;
187
- /**
188
- * string Placeholder string to show fields included in full text search
189
- */
190
- _searchPlaceHolder = '';
191
- /**
192
- * number Total number of records currently displayed in the table. This takes into account all active filters.
193
- */
194
- _size = 0;
195
- /**
196
- * boolean: When true a loading indicator will be shown in place of the layer table
197
- */
198
- _queryingData = false;
199
- //--------------------------------------------------------------------------
200
- //
201
69
  // Properties (protected)
202
70
  //
203
71
  //--------------------------------------------------------------------------
@@ -213,10 +81,6 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
213
81
  * IColumnsInfo: Key/value pair with fieldname/(visible in table)
214
82
  */
215
83
  _columnsInfo;
216
- /**
217
- * boolean: When true the ctrl key is currently pressed
218
- */
219
- _ctrlIsPressed = false;
220
84
  /**
221
85
  * number: The id of the most recently selected row from the table
222
86
  */
@@ -322,18 +186,10 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
322
186
  * HTMLInstantAppsSocialShareElement: Element to support app sharing to social media
323
187
  */
324
188
  _shareNode;
325
- /**
326
- * boolean: When true the shift key is currently pressed
327
- */
328
- _shiftIsPressed = false;
329
189
  /**
330
190
  * HTMLCalciteDropdownElement: Dropdown the will support show/hide of table columns
331
191
  */
332
192
  _showHideDropdown;
333
- /**
334
- * boolean: When true any onChange handeling will be skipped
335
- */
336
- _skipOnChange = false;
337
193
  /**
338
194
  * HTMLCalciteDropdownElement: Dropdown the will support overflow tools that won't fit in the current display
339
195
  */
@@ -366,10 +222,22 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
366
222
  * boolean: When true we will not evaluate if the editor has any pending edits
367
223
  */
368
224
  _skipEditCheck = false;
225
+ /**
226
+ * __esri.Handle: handle for the filter by extent
227
+ */
228
+ _filterByExtentHandle;
369
229
  /**
370
230
  * number[]: selected features from table
371
231
  */
372
232
  _tempSelectedIds;
233
+ /**
234
+ * number[]: out of extent oids which are selected but now out of extent
235
+ */
236
+ _outOFExtentOids = [];
237
+ /**
238
+ * boolean: When true allow table to update the records
239
+ */
240
+ _shouldUpdateTableOnExtentChange = true;
373
241
  //--------------------------------------------------------------------------
374
242
  //
375
243
  // Watch handlers
@@ -533,13 +401,35 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
533
401
  * Reset the filter
534
402
  */
535
403
  async filterReset() {
404
+ if (this._filterByExtentHandle) {
405
+ this._table.filterGeometry = undefined;
406
+ this._filterByExtentHandle.remove();
407
+ this._filterByExtentHandle = undefined;
408
+ }
536
409
  await this._handleFilterListReset();
537
410
  }
538
411
  /**
539
412
  * Updates the filter
540
413
  */
541
- async filterUpdate(active) {
542
- await this._handleFilterUpdate(active);
414
+ async filterUpdate(filterActive, keepTableUpdatingOnMapExtentChange) {
415
+ await this._handleFilterUpdate(filterActive);
416
+ if (keepTableUpdatingOnMapExtentChange) {
417
+ this._shouldUpdateTableOnExtentChange = true;
418
+ this._handleTableOnMapExtent();
419
+ }
420
+ else if (keepTableUpdatingOnMapExtentChange === false) {
421
+ this._table.filterGeometry = undefined;
422
+ this._filterByExtentHandle.remove();
423
+ this._filterByExtentHandle = undefined;
424
+ // update all the ids when filter is unchecked or toggled off
425
+ await this._updateAllIds();
426
+ }
427
+ }
428
+ /**
429
+ * Validate if the table should update
430
+ */
431
+ async validateTableUpdate(shouldUpdateTableOnExtentChange) {
432
+ this._shouldUpdateTableOnExtentChange = shouldUpdateTableOnExtentChange;
543
433
  }
544
434
  /**
545
435
  * Validate if the editor has any pending edits
@@ -593,8 +483,20 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
593
483
  * @returns a promise when the operation has completed
594
484
  */
595
485
  async editorInitialized(evt) {
486
+ this._shouldUpdateTableOnExtentChange = false;
596
487
  this._editor = evt.detail;
597
488
  }
489
+ /**
490
+ * Respond to and close the edit record display
491
+ *
492
+ * @returns a promise when the operation has completed
493
+ */
494
+ async closeEdit() {
495
+ this._shouldUpdateTableOnExtentChange = true;
496
+ if (this._filterByExtentHandle) {
497
+ this._handleTableOnMapExtent();
498
+ }
499
+ }
598
500
  /**
599
501
  * Scroll and zoom to the selected feature from the Features widget.
600
502
  *
@@ -655,7 +557,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
655
557
  async editsComplete(evt) {
656
558
  const editType = evt.detail;
657
559
  if (editType === "delete" || editType === "add") {
658
- this._allIds = await queryAllIds(this._layer);
560
+ this._allIds = await this.queryAllIds();
659
561
  }
660
562
  await this._refresh();
661
563
  }
@@ -727,8 +629,8 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
727
629
  const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
728
630
  const showSearch = this._canShowFullTextSearch();
729
631
  this._validateActiveActions();
730
- return (h(Host, { key: '68d6d57fbc9122b15340e0be3426ad00d398c7b2' }, h("div", { key: 'c4839ef8df0c5d3937b68c444264ce3bbb5c808d' }, h("calcite-scrim", { key: 'd4fa1a66ddcc5d0e83ee4ee43b2a3230e7f0298f', class: scrimClass, loading: this._queryingData }), h("calcite-shell", { key: '2ae1aee8a242902f3fbc9a1a19b62a8b721e5de7' }, this._getTableControlRow("header"), h("div", { key: '73d424f4bb07f56245c2c0858544d6cb7d9fcc74', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: 'a2404478e2daf5ebac1ff3ac10378a98c868bcb2', class: "height-full width-full" }, showSearch &&
731
- h("div", { key: 'e18c71ccab7853438c51fe7168b7a98087d215e2', class: "search-container" }, h("calcite-input", { key: '39ecb52bacd4560a94310a56faf084941aa44a2a', class: "search", clearable: true, icon: "search", onCalciteInputChange: (evt) => void this._searchTextChanged(evt), placeholder: this._searchPlaceHolder, title: this._searchPlaceHolder, type: "search" })), h("calcite-loader", { key: 'ce2aeb5e108b1d76da8694a071dcd46098e6bb28', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '78e596cb45427bb9d21a11368361f67e1ed306a5', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
632
+ return (h(Host, { key: 'a0a998de3a1b29c311a9fdfa87f3bd836481ba5a' }, h("div", { key: 'aafaf9f925ed7321e1ca7f15fc7db369212dc1dc' }, h("calcite-scrim", { key: '86459aed994823dbf1d774aad01e8207a7df5f4f', class: scrimClass, loading: this._queryingData }), h("calcite-shell", { key: 'b29896a197cba444d2ac377779670394e29ecaf6' }, this._getTableControlRow("header"), h("div", { key: '0456651ac46f399eb04253387d7aae76995f4683', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: '9ba484159832fea630bbb653bc2fc4e99e602674', class: "height-full width-full" }, showSearch &&
633
+ h("div", { key: 'bd4b72db51f44c2954e893e8ef7ec2a30efc4c45', class: "search-container" }, h("calcite-input", { key: '8811ff1dd71408fda37a0d7d2403671df24b5b7b', class: "search", clearable: true, icon: "search", onCalciteInputChange: (evt) => void this._searchTextChanged(evt), placeholder: this._searchPlaceHolder, title: this._searchPlaceHolder, type: "search" })), h("calcite-loader", { key: '44a419089cf1e207f52ce19015c2870ce956e261', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '096f4fc7f5cc9500e7982bbfaceb2fcc4c82a1dd', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
732
634
  .replace("{{total}}", total)
733
635
  .replace("{{selected}}", selected))) : undefined), this.createFilterModal && this._filterModal())));
734
636
  }
@@ -748,8 +650,6 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
748
650
  componentDidRender() {
749
651
  // need to be called after each render to get the clicked mouseEvent
750
652
  document.onclick = (e) => this._handleDocumentClick(e);
751
- document.onkeydown = (e) => this._handleKeyDown(e);
752
- document.onkeyup = (e) => this._handleKeyUp(e);
753
653
  this._updateToolbar();
754
654
  }
755
655
  //--------------------------------------------------------------------------
@@ -1010,6 +910,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1010
910
  }
1011
911
  if (ti.icon === "selected-items-filter") {
1012
912
  ti.active = this._showOnlySelected;
913
+ ti.label = this._showOnlySelected ? this._translations.showAll : this._translations.showSelected;
1013
914
  }
1014
915
  }
1015
916
  });
@@ -1024,7 +925,6 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1024
925
  // hide multiple edits for R03
1025
926
  const showMultipleEdits = this.selectedIds.length > 1 && this._layer?.capabilities?.operations?.supportsUpdate && false;
1026
927
  const featuresEmpty = this._featuresEmpty();
1027
- const hasFilterExpressions = this._hasFilterExpressions();
1028
928
  if (this._translations) {
1029
929
  this._toolInfos = [
1030
930
  !this.mapHidden ? {
@@ -1036,7 +936,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1036
936
  disabled: !featuresSelected,
1037
937
  isOverflow: false
1038
938
  } : undefined,
1039
- hasFilterExpressions ? {
939
+ {
1040
940
  active: false,
1041
941
  icon: "filter",
1042
942
  indicator: false,
@@ -1044,7 +944,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1044
944
  func: () => this.createFilterModal ? this._toggleFilter() : this.toggleFilter.emit(),
1045
945
  disabled: false,
1046
946
  isOverflow: false
1047
- } : undefined,
947
+ },
1048
948
  showMultipleEdits ? {
1049
949
  active: false,
1050
950
  icon: "pencil",
@@ -1446,6 +1346,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1446
1346
  editingEnabled: this._editEnabled && this.enableInlineEdit,
1447
1347
  highlightEnabled: true,
1448
1348
  multiSortEnabled: false,
1349
+ attachmentsEnabled: true,
1449
1350
  visibleElements: {
1450
1351
  columnDescriptions: false,
1451
1352
  header: false,
@@ -1477,88 +1378,9 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1477
1378
  return;
1478
1379
  }
1479
1380
  const ids = [...this._getIds()];
1480
- if (!this._skipOnChange) {
1481
- if ((!this._ctrlIsPressed && !this._shiftIsPressed) || (this._selectionFromMap && this._shiftIsPressed)) {
1482
- if (this.selectedIds.length > 0) {
1483
- this._skipOnChange = true;
1484
- // only readd in specific case where we have multiple selected and then click one of the currently selected
1485
- const reAdd = this.selectedIds.length > 1 && evt.removed.length === 1;
1486
- const newIds = reAdd ? evt.removed : ids.filter(id => this.selectedIds.indexOf(id) < 0);
1487
- this._tempSelectedIds = newIds.length ? [...newIds] : [...this.selectedIds];
1488
- this._clearSelection();
1489
- this.selectedIds = [...newIds];
1490
- if (newIds.length > 0) {
1491
- this._table.highlightIds.add(newIds[0]);
1492
- }
1493
- else {
1494
- this._skipOnChange = false;
1495
- }
1496
- }
1497
- else {
1498
- // https://github.com/Esri/solutions-components/issues/365
1499
- this.selectedIds = ids.reverse();
1500
- this._tempSelectedIds = [...this.selectedIds];
1501
- }
1502
- }
1503
- else if (this._ctrlIsPressed) {
1504
- this.selectedIds = ids.reverse();
1505
- this._tempSelectedIds = [...this.selectedIds];
1506
- }
1507
- else if (this._shiftIsPressed && ids?.length > 0) {
1508
- this._skipOnChange = true;
1509
- this._previousCurrentId = this._currentId;
1510
- this._currentId = [...ids].reverse()[0];
1511
- if (ids.length === 1) {
1512
- this._skipOnChange = false;
1513
- }
1514
- else if (this._previousCurrentId !== this._currentId) {
1515
- // query the layer based on current sort and filters then grab between the current id and previous id
1516
- const orderBy = this._table.activeSortOrders.reduce((prev, cur) => {
1517
- prev.push(`${cur.fieldName} ${cur.direction}`);
1518
- return prev;
1519
- }, []);
1520
- // when dealing with a feature layer with many features shift-select can take a very long time.
1521
- // don't allow the user to make additional interactions with the table if it takes more than 500 miliseconds
1522
- let queryComplete = false;
1523
- setTimeout(() => {
1524
- if (!queryComplete) {
1525
- this._queryingData = true;
1526
- }
1527
- }, 500);
1528
- const oids = await queryAllOidsWithQueryFeatures(0, this._layer, [], orderBy);
1529
- queryComplete = true;
1530
- this._queryingData = false;
1531
- let isBetween = false;
1532
- const _start = this._table.viewModel.getObjectIdIndex(this._previousCurrentId);
1533
- const _end = this._table.viewModel.getObjectIdIndex(this._currentId);
1534
- const startIndex = _start < _end ? _start : _end;
1535
- const endIndex = _end > _start ? _end : _start;
1536
- this._skipOnChange = startIndex + 1 !== endIndex;
1537
- const idsInRange = oids.reduce((prev, cur) => {
1538
- const id = cur;
1539
- if ((id === this._currentId || id === this._previousCurrentId)) {
1540
- isBetween = !isBetween;
1541
- if (prev.indexOf(id) < 0) {
1542
- prev.push(id);
1543
- }
1544
- }
1545
- else if (isBetween && prev.indexOf(id) < 0) {
1546
- prev.push(id);
1547
- }
1548
- return prev;
1549
- }, []);
1550
- const selectedIds = _start < _end ? idsInRange.reverse() : idsInRange;
1551
- this.selectedIds = [...new Set([...selectedIds, ...this.selectedIds])];
1552
- this._tempSelectedIds = [...this.selectedIds];
1553
- this._table.highlightIds.addMany(this.selectedIds.filter(i => ids.indexOf(i) < 0));
1554
- }
1555
- }
1556
- this._finishOnChange();
1557
- }
1558
- else {
1559
- this._skipOnChange = false;
1560
- }
1561
- this._currentId = [...this._getIds()].reverse()[0];
1381
+ this.selectedIds = ids.reverse();
1382
+ this._tempSelectedIds = [...this.selectedIds];
1383
+ this._finishOnChange();
1562
1384
  this._selectionFromMap = false;
1563
1385
  }
1564
1386
  /**
@@ -1597,6 +1419,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1597
1419
  handleOnChange = !this._skipEditCheck;
1598
1420
  this._skipEditCheck = false;
1599
1421
  }
1422
+ this._shouldUpdateTableOnExtentChange = handleOnChange;
1600
1423
  return handleOnChange;
1601
1424
  }
1602
1425
  /**
@@ -1613,7 +1436,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1613
1436
  _finishOnChange() {
1614
1437
  if (this._showOnlySelected) {
1615
1438
  if (this._featuresSelected()) {
1616
- this._table.filterBySelection();
1439
+ this._table.filterBySelectionEnabled = true;
1617
1440
  }
1618
1441
  else {
1619
1442
  this._toggleShowSelected();
@@ -1651,7 +1474,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1651
1474
  async _resetTable() {
1652
1475
  this._loaded = false;
1653
1476
  this._clearSelection();
1654
- this._allIds = await queryAllIds(this._layer);
1477
+ this._allIds = await this.queryAllIds();
1655
1478
  if (!this._table) {
1656
1479
  const columnTemplates = this._getColumnTemplates(this._layer.id, this._layer?.fields);
1657
1480
  await this._getTable(this._tableNode, columnTemplates);
@@ -1705,7 +1528,6 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1705
1528
  }
1706
1529
  this._refreshHandle = this._layer.on("refresh", (evt) => {
1707
1530
  if (evt.dataChanged) {
1708
- this._skipOnChange = true;
1709
1531
  void this._updateAllIds();
1710
1532
  }
1711
1533
  });
@@ -1714,7 +1536,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1714
1536
  * Reset _allIds when the layers data has changed and refresh the selection ids and table
1715
1537
  */
1716
1538
  async _updateAllIds() {
1717
- this._allIds = await queryAllIds(this._layer);
1539
+ this._allIds = await this.queryAllIds();
1718
1540
  this.selectedIds = this.selectedIds.filter(id => this._allIds.indexOf(id) > -1);
1719
1541
  await this._refresh();
1720
1542
  }
@@ -1854,20 +1676,6 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1854
1676
  }
1855
1677
  }
1856
1678
  }
1857
- /**
1858
- * Keep track of key down for ctrl and shift
1859
- */
1860
- _handleKeyDown(e) {
1861
- this._ctrlIsPressed = e.ctrlKey;
1862
- this._shiftIsPressed = e.shiftKey;
1863
- }
1864
- /**
1865
- * Keep track of key up for ctrl and shift
1866
- */
1867
- _handleKeyUp(e) {
1868
- this._ctrlIsPressed = e.ctrlKey;
1869
- this._shiftIsPressed = e.shiftKey;
1870
- }
1871
1679
  /**
1872
1680
  * Show filter component in modal
1873
1681
  *
@@ -1903,6 +1711,40 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1903
1711
  this._updateShareUrl();
1904
1712
  await this._searchFullText();
1905
1713
  }
1714
+ /**
1715
+ * Update the table when extent is changed
1716
+ */
1717
+ _handleTableOnMapExtent() {
1718
+ if (this._table) {
1719
+ this._filterByExtentHandle = this.reactiveUtils.when(() => this.mapView.stationary,
1720
+ // eslint-disable-next-line @typescript-eslint/no-misused-promises
1721
+ async () => {
1722
+ if (this._shouldUpdateTableOnExtentChange) {
1723
+ //Added timeout while updating table records to avoid the issue in which we see empty table records when extent is changed
1724
+ await new Promise(resolve => setTimeout(resolve, 800));
1725
+ this._table.filterGeometry = this.mapView.extent;
1726
+ const query = {
1727
+ geometry: this.mapView.extent
1728
+ };
1729
+ const objectIdsInExtent = await this._layer.queryObjectIds(query);
1730
+ // remove the highlight of features which are not in the map extent
1731
+ const outOids = this.selectedIds.filter(id => !objectIdsInExtent.includes(id));
1732
+ const restoreOids = this._outOFExtentOids.filter(id => objectIdsInExtent.includes(id));
1733
+ if (outOids.length > 0) {
1734
+ this._table.highlightIds.removeMany(outOids);
1735
+ this._outOFExtentOids = [...this._outOFExtentOids, ...outOids];
1736
+ }
1737
+ if (restoreOids.length > 0) {
1738
+ this._table.highlightIds.addMany(restoreOids);
1739
+ this._outOFExtentOids = this._outOFExtentOids.filter(oid => !restoreOids.includes(oid));
1740
+ }
1741
+ }
1742
+ this._allIds = await this.queryAllIds();
1743
+ }, {
1744
+ initial: true
1745
+ });
1746
+ }
1747
+ }
1906
1748
  /**
1907
1749
  * Close the filter modal
1908
1750
  * @protected
@@ -1910,10 +1752,20 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1910
1752
  async _closeFilter() {
1911
1753
  if (this._filterOpen) {
1912
1754
  // reset allIds
1913
- this._allIds = await queryAllIds(this._layer);
1755
+ this._allIds = await this.queryAllIds();
1914
1756
  this._filterOpen = false;
1915
1757
  }
1916
1758
  }
1759
+ /**
1760
+ * Query the layer for applied filter
1761
+ * @returns Promise with the featureSet from the layer that match the provided ids
1762
+ */
1763
+ async queryAllIds() {
1764
+ const query = this._layer.createQuery();
1765
+ query.geometry = this._filterByExtentHandle ? this.mapView.extent : null;
1766
+ query.where = this._layer.definitionExpression || "1=1";
1767
+ return await this._layer.queryObjectIds(query);
1768
+ }
1917
1769
  /**
1918
1770
  * Handle map click events to keep table and map click selection in sync
1919
1771
  *
@@ -1935,7 +1787,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1935
1787
  }
1936
1788
  });
1937
1789
  if (this._showOnlySelected) {
1938
- this._table.filterBySelection();
1790
+ this._table.filterBySelectionEnabled = true;
1939
1791
  }
1940
1792
  }
1941
1793
  else {
@@ -1952,7 +1804,6 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1952
1804
  const editsDiscarded = await this._validateActiveEdits(addedIds, this.selectedIds);
1953
1805
  if (editsDiscarded) {
1954
1806
  this._table.highlightIds.removeAll();
1955
- this._skipOnChange = true;
1956
1807
  this._table.highlightIds.addMany(ids);
1957
1808
  this.selectedIds = ids;
1958
1809
  this._finishOnChange();
@@ -1969,12 +1820,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1969
1820
  */
1970
1821
  _toggleShowSelected() {
1971
1822
  this._showOnlySelected = !this._showOnlySelected;
1972
- if (this._showOnlySelected) {
1973
- this._table.filterBySelection();
1974
- }
1975
- else {
1976
- this._table.objectIds.removeAll();
1977
- }
1823
+ this._table.filterBySelectionEnabled = this._showOnlySelected;
1978
1824
  }
1979
1825
  /**
1980
1826
  * Clears the selected indexes
@@ -1982,6 +1828,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1982
1828
  */
1983
1829
  _clearSelection() {
1984
1830
  this.selectedIds = [];
1831
+ this._outOFExtentOids = [];
1985
1832
  this._table?.highlightIds.removeAll();
1986
1833
  this._table?.rowHighlightIds.removeAll();
1987
1834
  this._finishOnChange();
@@ -2021,7 +1868,6 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
2021
1868
  const editsDiscarded = await this._validateActiveEdits(ids, currentIndexes);
2022
1869
  if (editsDiscarded) {
2023
1870
  this._table.highlightIds.removeAll();
2024
- this._skipOnChange = true;
2025
1871
  this._table.highlightIds.addMany(ids);
2026
1872
  this.selectedIds = ids;
2027
1873
  this._finishOnChange();
@@ -2079,8 +1925,8 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
2079
1925
  async _refresh() {
2080
1926
  const editsDiscarded = await this._validateActiveEdits([], this.selectedIds);
2081
1927
  if (editsDiscarded) {
2082
- await this._table.refresh();
2083
- this._allIds = await queryAllIds(this._layer);
1928
+ await this._table?.refresh();
1929
+ this._allIds = await this.queryAllIds();
2084
1930
  this.featureSelectionChange.emit(this.selectedIds);
2085
1931
  }
2086
1932
  }
@@ -2110,6 +1956,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
2110
1956
  this._fetchingData = true;
2111
1957
  const layer = await getLayerOrTable(this.mapView, id);
2112
1958
  layer && await layer.when(() => {
1959
+ this._shouldUpdateTableOnExtentChange = true;
2113
1960
  this._layer = layer;
2114
1961
  this._getFullTextSearchInfo();
2115
1962
  });
@@ -2275,9 +2122,10 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
2275
2122
  "closeFilter": [64],
2276
2123
  "filterReset": [64],
2277
2124
  "filterUpdate": [64],
2125
+ "validateTableUpdate": [64],
2278
2126
  "validateActiveEdits": [64],
2279
2127
  "refresh": [64]
2280
- }, [[10, "beforeMapInfoChange", "beforeMapInfoChange"], [8, "editorInitialized", "editorInitialized"], [8, "selectionChanged", "selectionChanged"], [8, "beforeLayerSelectionChange", "beforeLayerSelectionChange"], [8, "layerSelectionChange", "layerSelectionChange"], [8, "editsComplete", "editsComplete"], [8, "facilityChanged", "facilityChanged"], [8, "levelChanged", "levelChanged"], [8, "siteChanged", "siteChanged"], [8, "noLayersFound", "noLayersFound"], [8, "clearSelection", "clearSelection"]], {
2128
+ }, [[10, "beforeMapInfoChange", "beforeMapInfoChange"], [8, "editorInitialized", "editorInitialized"], [8, "closeEdit", "closeEdit"], [8, "selectionChanged", "selectionChanged"], [8, "beforeLayerSelectionChange", "beforeLayerSelectionChange"], [8, "layerSelectionChange", "layerSelectionChange"], [8, "editsComplete", "editsComplete"], [8, "facilityChanged", "facilityChanged"], [8, "levelChanged", "levelChanged"], [8, "siteChanged", "siteChanged"], [8, "noLayersFound", "noLayersFound"], [8, "clearSelection", "clearSelection"]], {
2281
2129
  "appLayout": ["appLayoutWatchHandler"],
2282
2130
  "defaultOid": ["defaultOidWatchHandler"],
2283
2131
  "defaultGlobalId": ["defaultGlobalIdWatchHandler"],